summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex')
-rw-r--r--Master/texmf-dist/tex/latex/abraces/abraces.sty7
-rw-r--r--Master/texmf-dist/tex/latex/acmart/acmart-tagged.cls3492
-rw-r--r--Master/texmf-dist/tex/latex/acmart/acmart.cls74
-rw-r--r--Master/texmf-dist/tex/latex/acronym/acronym.sty72
-rw-r--r--Master/texmf-dist/tex/latex/adforn/adforn.sty104
-rw-r--r--Master/texmf-dist/tex/latex/adforn/uornementsadf.fd78
-rw-r--r--Master/texmf-dist/tex/latex/aiplans/tikzlibraryaiplans.code.tex121
-rw-r--r--Master/texmf-dist/tex/latex/animate/animate.sty9
-rw-r--r--Master/texmf-dist/tex/latex/argumentation/argumentation.sty182
-rw-r--r--Master/texmf-dist/tex/latex/asmeconf/asmeconf.cls462
-rw-r--r--Master/texmf-dist/tex/latex/asmejour/asmejour.cls458
-rw-r--r--Master/texmf-dist/tex/latex/baskervald/baskervald.sty24
-rw-r--r--Master/texmf-dist/tex/latex/baskervaldadf/baskervald.sty70
-rw-r--r--Master/texmf-dist/tex/latex/baskervaldadf/t1ybv.fd (renamed from Master/texmf-dist/tex/latex/baskervald/t1ybv.fd)21
-rw-r--r--Master/texmf-dist/tex/latex/baskervaldadf/t1ybvw.fd (renamed from Master/texmf-dist/tex/latex/baskervald/t1ybvw.fd)21
-rw-r--r--Master/texmf-dist/tex/latex/baskervaldadf/ts1ybv.fd (renamed from Master/texmf-dist/tex/latex/baskervald/ts1ybv.fd)21
-rw-r--r--Master/texmf-dist/tex/latex/baskervaldadf/ts1ybvw.fd (renamed from Master/texmf-dist/tex/latex/baskervald/ts1ybvw.fd)21
-rw-r--r--Master/texmf-dist/tex/latex/beamertheme-gotham/beamercolorthemegotham.sty328
-rw-r--r--Master/texmf-dist/tex/latex/beamertheme-gotham/beamerfontthemegotham.sty580
-rw-r--r--Master/texmf-dist/tex/latex/beamertheme-gotham/beamerinnerthemegotham.sty1949
-rw-r--r--Master/texmf-dist/tex/latex/beamertheme-gotham/beamerouterthemegotham.sty2173
-rw-r--r--Master/texmf-dist/tex/latex/beamertheme-gotham/beamerthemegotham.sty173
-rw-r--r--Master/texmf-dist/tex/latex/beamertheme-rainbow/beamertheme-rainbow-doc-settings.sty199
-rw-r--r--Master/texmf-dist/tex/latex/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty12
-rw-r--r--Master/texmf-dist/tex/latex/beautybook/beautybook-EN.cls1197
-rw-r--r--Master/texmf-dist/tex/latex/beautybook/beautybook.cls (renamed from Master/texmf-dist/tex/latex/beautybook/beautybook-CN.cls)359
-rw-r--r--Master/texmf-dist/tex/latex/beautybook/stys/beautybook-bottompage.sty8
-rw-r--r--Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-birkar.sty195
-rw-r--r--Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-cn.sty107
-rw-r--r--Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-en.sty82
-rw-r--r--Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-enfig.sty56
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/berenis.sty350
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ly1ybd.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ly1ybd0.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ly1ybd1.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ly1ybd2.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ly1ybd2j.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ly1ybd2jw.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ly1ybd2w.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ly1ybdj.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ly1ybdjw.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ly1ybdw.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/t1ybd.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/t1ybd0.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/t1ybd1.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/t1ybd2.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/t1ybd2j.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/t1ybdj.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ts1ybd.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ts1ybd0.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ts1ybd1.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ts1ybd2.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ts1ybd2j.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ts1ybd2jw.fd87
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ts1ybd2w.fd87
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ts1ybdj.fd64
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ts1ybdjw.fd87
-rw-r--r--Master/texmf-dist/tex/latex/berenisadf/ts1ybdw.fd87
-rw-r--r--Master/texmf-dist/tex/latex/bib2qr/bib2qr.sty107
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-ieee/ieee-alphabetic.bbx8
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-ieee/ieee-alphabetic.cbx8
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-ieee/ieee.bbx24
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-ieee/ieee.cbx12
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-ieee/magyar-ieee.lbx6
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/american-oxref.lbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/british-oxref.lbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/english-oxref.lbx116
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxalph.bbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxalph.cbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxalph.dbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-ibid.bbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-ibid.cbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-ibid.dbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-inote.bbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-inote.cbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-inote.dbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-note.bbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-note.cbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-note.dbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad1.bbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad1.cbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad1.dbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad2.bbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad2.cbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad2.dbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad3.bbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad3.cbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad3.dbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes.bbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes.cbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes.dbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnum.bbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnum.cbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxnum.dbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxref.bbx176
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxyear.bbx7
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxyear.cbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/oxyear.dbx2
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/polish-oxref.lbx311
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-oxref/spanish-oxref.lbx166
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-phys/phys.bbx25
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-phys/phys.cbx8
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-phys/phys.dbx8
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-publist/lbx/UKenglish-publist.lbx37
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-publist/lbx/USenglish-publist.lbx37
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-publist/lbx/american-publist.lbx37
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-publist/lbx/australian-publist.lbx37
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-publist/lbx/austrian-publist.lbx58
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-publist/lbx/british-publist.lbx58
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-publist/lbx/canadian-publist.lbx37
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-publist/lbx/english-publist.lbx58
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-publist/lbx/french-publist.lbx58
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-publist/lbx/german-publist.lbx58
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-publist/lbx/naustrian-publist.lbx37
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-publist/lbx/newzealand-publist.lbx58
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-publist/lbx/ngerman-publist.lbx37
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-publist/lbx/nswissgerman-publist.lbx37
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-publist/lbx/swissgerman-publist.lbx58
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-publist/publist.bbx227
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-publist/publist.cbx26
-rw-r--r--Master/texmf-dist/tex/latex/biblatex-publist/publist.dbx4
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/16-IU8-references.sty18
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/BMSTU-IU8.cls46
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-01-base.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/01-IU8-base.sty)2
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-02-construction.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/02-IU8-construction.sty)13
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-03-numbering.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/03-IU8-numbering.sty)2
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-04-section-numbering.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/04-IU8-section-numbering.sty)4
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-05-figures.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/05-IU8-figures.sty)2
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-06-tables.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/06-IU8-tables.sty)2
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-07-footnotes.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/07-IU8-footnotes.sty)2
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-08-formulas.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/08-IU8-formulas.sty)2
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-09-cites.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/09-IU8-cites.sty)2
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-10-titlepage.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/10-IU8-titlepage.sty)2
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-11-performers.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/11-IU8-performers.sty)2
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-12-abstract.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/12-IU8-abstract.sty)2
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-13-contents.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/13-IU8-contents.sty)9
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-14-terms-and-definitions.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/14-IU8-terms-and-definitions.sty)2
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-15-list-of-abbreviations.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/15-IU8-list-of-abbreviations.sty)2
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-16-references.sty39
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-17-appendices.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/17-IU8-appendices.sty)2
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-18-extra.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/18-IU8-extra.sty)17
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-19-counters.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/19-IU8-counters.sty)2
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-20-listing.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/20-IU8-listing.sty)26
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-21-math.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/21-IU8-math.sty)2
-rw-r--r--Master/texmf-dist/tex/latex/bmstu-iu8/IU8-22-algorithms.sty (renamed from Master/texmf-dist/tex/latex/bmstu-iu8/22-IU8-algorithms.sty)2
-rw-r--r--Master/texmf-dist/tex/latex/bxjatoucs/bxjatoucs.sty80
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls8
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls13
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty2
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty2
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def2
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def2
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def2
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def14
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty2
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls13
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls8
-rw-r--r--Master/texmf-dist/tex/latex/bxpdfver/bxpdfver.sty206
-rw-r--r--Master/texmf-dist/tex/latex/catppuccinpalette/catppuccinpalette.sty300
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/cfr-lm.sty449
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clm.fd5
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clm2.fd5
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clm2d.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clm2dj.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clm2j.fd5
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clm2jqs.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clm2js.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clm2jt.fd5
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clm2jv.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clm2qs.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clm2s.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clm2t.fd5
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clm2v.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clmd.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clmdj.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clmj.fd5
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clmjqs.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clmjs.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clmjt.fd5
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clmjv.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clmqs.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clms.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clmt.fd5
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/t1clmv.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clm.fd9
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clm2.fd9
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clm2d.fd6
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clm2dj.fd6
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clm2j.fd9
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clm2jqs.fd6
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clm2js.fd6
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clm2jt.fd9
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clm2jv.fd6
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clm2qs.fd6
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clm2s.fd6
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clm2t.fd9
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clm2v.fd6
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clmd.fd6
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clmdj.fd6
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clmj.fd9
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clmjqs.fd6
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clmjs.fd6
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clmjt.fd9
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clmjv.fd6
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clmqs.fd6
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clms.fd6
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clmt.fd9
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/ts1clmv.fd6
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclm.fd5
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclm2.fd5
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclm2d.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclm2dj.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclm2j.fd5
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclm2jqs.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclm2js.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclm2jt.fd5
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclm2jv.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclm2qs.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclm2s.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclm2t.fd5
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclm2v.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclmd.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclmdj.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclmj.fd5
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclmjqs.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclmjs.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclmjt.fd5
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclmjv.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclmqs.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclms.fd2
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclmt.fd5
-rw-r--r--Master/texmf-dist/tex/latex/cfr-lm/uclmv.fd2
-rw-r--r--Master/texmf-dist/tex/latex/changebar/changebar.sty34
-rw-r--r--Master/texmf-dist/tex/latex/changelog/changelog.sty32
-rw-r--r--Master/texmf-dist/tex/latex/chemformula-ru/chemformula-ru.sty24
-rw-r--r--Master/texmf-dist/tex/latex/circledtext/circledtext.sty324
-rw-r--r--Master/texmf-dist/tex/latex/circuitikz/circuitikz.sty4
-rw-r--r--Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-bib.sty137
-rw-r--r--Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-cite.sty378
-rw-r--r--Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-compatible.sty61
-rw-r--r--Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-init.sty191
-rw-r--r--Master/texmf-dist/tex/latex/citation-style-language/citation-style-language.sty58
-rw-r--r--Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-de-AT.xml4
-rw-r--r--Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-de-CH.xml4
-rw-r--r--Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-de-DE.xml4
-rw-r--r--Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-en-US.xml3
-rw-r--r--Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-zh-TW.xml5
-rw-r--r--Master/texmf-dist/tex/latex/citation-style-language/styles/american-medical-association.csl6
-rw-r--r--Master/texmf-dist/tex/latex/citation-style-language/styles/apa.csl993
-rw-r--r--Master/texmf-dist/tex/latex/citation-style-language/styles/ieee.csl50
-rw-r--r--Master/texmf-dist/tex/latex/cjs-rcs-article/cjs-rcs-article.cls132
-rw-r--r--Master/texmf-dist/tex/latex/coloredtheorem/coloredtheorem.sty10
-rw-r--r--Master/texmf-dist/tex/latex/colortbl/colortbl.sty26
-rw-r--r--Master/texmf-dist/tex/latex/commalists-tools/commalists-tools.sty188
-rw-r--r--Master/texmf-dist/tex/latex/cs-techrep/cs-techrep.cls41
-rw-r--r--Master/texmf-dist/tex/latex/csthm/csthm.sty146
-rw-r--r--Master/texmf-dist/tex/latex/csvsimple/csvsimple-l3.sty36
-rw-r--r--Master/texmf-dist/tex/latex/csvsimple/csvsimple-legacy.sty4
-rw-r--r--Master/texmf-dist/tex/latex/csvsimple/csvsimple.sty4
-rw-r--r--Master/texmf-dist/tex/latex/customenvs/customenvs.sty1162
-rw-r--r--Master/texmf-dist/tex/latex/dashrulex/dashrulex.sty4
-rw-r--r--Master/texmf-dist/tex/latex/dccpaper/dccpaper-base.sty4
-rw-r--r--Master/texmf-dist/tex/latex/dccpaper/idcc.cls12
-rw-r--r--Master/texmf-dist/tex/latex/dccpaper/ijdc-v14.cls4
-rw-r--r--Master/texmf-dist/tex/latex/dccpaper/ijdc-v9.cls4
-rw-r--r--Master/texmf-dist/tex/latex/delimset/delimset.sty262
-rw-r--r--Master/texmf-dist/tex/latex/doibanner/doibanner.sty98
-rw-r--r--Master/texmf-dist/tex/latex/dtk/dtk-url.sty6
-rw-r--r--Master/texmf-dist/tex/latex/dtk/dtk.cls4
-rw-r--r--Master/texmf-dist/tex/latex/dynkin-diagrams/dynkin-diagrams.sty219
-rw-r--r--Master/texmf-dist/tex/latex/easybook/easybase.sty674
-rw-r--r--Master/texmf-dist/tex/latex/easybook/easybook.cls2
-rw-r--r--Master/texmf-dist/tex/latex/easybook/eb-tcolorbox.cfg4
-rw-r--r--Master/texmf-dist/tex/latex/edmaths/edmaths.sty258
-rw-r--r--Master/texmf-dist/tex/latex/electrum/electrum.sty35
-rw-r--r--Master/texmf-dist/tex/latex/electrum/t1yes.fd91
-rw-r--r--Master/texmf-dist/tex/latex/electrum/t1yesj.fd91
-rw-r--r--Master/texmf-dist/tex/latex/electrum/t1yesjw.fd91
-rw-r--r--Master/texmf-dist/tex/latex/electrum/t1yesw.fd91
-rw-r--r--Master/texmf-dist/tex/latex/electrum/ts1yes.fd67
-rw-r--r--Master/texmf-dist/tex/latex/electrum/ts1yesj.fd67
-rw-r--r--Master/texmf-dist/tex/latex/electrum/ts1yesjw.fd67
-rw-r--r--Master/texmf-dist/tex/latex/electrum/ts1yesw.fd67
-rw-r--r--Master/texmf-dist/tex/latex/electrumadf/electrum.sty100
-rw-r--r--Master/texmf-dist/tex/latex/electrumadf/t1yes.fd103
-rw-r--r--Master/texmf-dist/tex/latex/electrumadf/t1yes0.fd (renamed from Master/texmf-dist/tex/latex/electrum/t1yes0.fd)35
-rw-r--r--Master/texmf-dist/tex/latex/electrumadf/t1yes1.fd (renamed from Master/texmf-dist/tex/latex/electrum/t1yes1.fd)35
-rw-r--r--Master/texmf-dist/tex/latex/electrumadf/t1yesj.fd103
-rw-r--r--Master/texmf-dist/tex/latex/electrumadf/t1yesjw.fd103
-rw-r--r--Master/texmf-dist/tex/latex/electrumadf/t1yesw.fd103
-rw-r--r--Master/texmf-dist/tex/latex/electrumadf/ts1yes.fd103
-rw-r--r--Master/texmf-dist/tex/latex/electrumadf/ts1yes0.fd (renamed from Master/texmf-dist/tex/latex/electrum/ts1yes0.fd)35
-rw-r--r--Master/texmf-dist/tex/latex/electrumadf/ts1yes1.fd (renamed from Master/texmf-dist/tex/latex/electrum/ts1yes1.fd)35
-rw-r--r--Master/texmf-dist/tex/latex/electrumadf/ts1yesj.fd103
-rw-r--r--Master/texmf-dist/tex/latex/electrumadf/ts1yesjw.fd103
-rw-r--r--Master/texmf-dist/tex/latex/electrumadf/ts1yesw.fd103
-rw-r--r--Master/texmf-dist/tex/latex/enverb/enverb.sty380
-rw-r--r--Master/texmf-dist/tex/latex/esami/esami.sty1
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-100euro.pdfbin0 -> 955673 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-100eurosimple.pdfbin0 -> 62058 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-100eurosimplebw.pdfbin0 -> 62345 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-10cent.pdfbin0 -> 27497 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-10centsimple.pdfbin0 -> 11617 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-10centsimplebw.pdfbin0 -> 11163 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-10euro.pdfbin0 -> 160214 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-10eurosimple.pdfbin0 -> 22792 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-10eurosimplebw.pdfbin0 -> 22996 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-1cent.pdfbin0 -> 46257 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-1centsimple.pdfbin0 -> 2172 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-1centsimplebw.pdfbin0 -> 2164 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-1euro.pdfbin0 -> 19980 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-1eurosimple.pdfbin0 -> 5894 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-1eurosimplebw.pdfbin0 -> 5910 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-200euro.pdfbin0 -> 354898 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-200eurosimple.pdfbin0 -> 22825 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-200eurosimplebw.pdfbin0 -> 23006 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-20cent.pdfbin0 -> 26569 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-20centsimple.pdfbin0 -> 10164 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-20centsimplebw.pdfbin0 -> 9960 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-20euro.pdfbin0 -> 78801 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-20eurosimple.pdfbin0 -> 22382 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-20eurosimplebw.pdfbin0 -> 22394 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-2cent.pdfbin0 -> 45967 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-2centsimple.pdfbin0 -> 2130 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-2centsimplebw.pdfbin0 -> 2122 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-2euro.pdfbin0 -> 23244 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-2eurosimple.pdfbin0 -> 5941 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-2eurosimplebw.pdfbin0 -> 5897 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-500euro.pdfbin0 -> 231203 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-500eurosimple.pdfbin0 -> 22885 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-500eurosimplebw.pdfbin0 -> 23168 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-50cent.pdfbin0 -> 27558 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-50centsimple.pdfbin0 -> 11748 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-50centsimplebw.pdfbin0 -> 11303 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-50euro.pdfbin0 -> 235259 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-50eurosimple.pdfbin0 -> 17891 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-50eurosimplebw.pdfbin0 -> 18128 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-5cent.pdfbin0 -> 45981 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-5centsimple.pdfbin0 -> 2200 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-5centsimplebw.pdfbin0 -> 2181 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-5euro.pdfbin0 -> 424391 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-5eurosimple.pdfbin0 -> 60083 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney-5eurosimplebw.pdfbin0 -> 60042 bytes
-rw-r--r--Master/texmf-dist/tex/latex/euromoney/euromoney.sty549
-rw-r--r--Master/texmf-dist/tex/latex/ezedits/ezedits.sty221
-rw-r--r--Master/texmf-dist/tex/latex/fancyhdr/extramarks.sty2
-rw-r--r--Master/texmf-dist/tex/latex/fancyhdr/fancyhdr.sty52
-rw-r--r--Master/texmf-dist/tex/latex/fillwith/fillwith.sty349
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fc-UKenglish.def6
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fc-USenglish.def6
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fc-american.def6
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fc-brazilian.def6
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fc-british.def6
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fc-dutch.def (renamed from Master/texmf-dist/tex/latex/regulatory/fc-dutch.def)96
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fc-english.def6
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fc-francais.def6
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fc-french.def8
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fc-frenchb.def6
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fc-german.def46
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fc-germanb.def6
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fc-italian.def59
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fc-ngerman.def6
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fc-ngermanb.def6
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fc-portuges.def6
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fc-portuguese.def6
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fc-spanish.def226
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fcnumparser.sty6
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fcprefix.sty6
-rw-r--r--Master/texmf-dist/tex/latex/fmtcount/fmtcount.sty13
-rw-r--r--Master/texmf-dist/tex/latex/fontscale/fontscale.sty1273
-rw-r--r--Master/texmf-dist/tex/latex/fontsetup/fontsetup.sty10
-rw-r--r--Master/texmf-dist/tex/latex/fontsetup/fspdefault.tex7
-rw-r--r--Master/texmf-dist/tex/latex/fontsetup/fspebgaramondot.tex11
-rw-r--r--Master/texmf-dist/tex/latex/fontsetup/fspolddefault.tex7
-rw-r--r--Master/texmf-dist/tex/latex/fourier/fourier-orns.sty14
-rw-r--r--Master/texmf-dist/tex/latex/fourier/fourier.sty5
-rw-r--r--Master/texmf-dist/tex/latex/fourier/ufuts.fd4
-rw-r--r--Master/texmf-dist/tex/latex/framedsyntax/FramedSyntax.sty257
-rw-r--r--Master/texmf-dist/tex/latex/fvextra/fvextra.sty426
-rw-r--r--Master/texmf-dist/tex/latex/gelasiomath/gelasiomath.sty295
-rw-r--r--Master/texmf-dist/tex/latex/gelasiomath/ly1mingelasio.fd91
-rw-r--r--Master/texmf-dist/tex/latex/gelasiomath/omlzgelmi.fd30
-rw-r--r--Master/texmf-dist/tex/latex/gelasiomath/ot1mingelasio.fd78
-rw-r--r--Master/texmf-dist/tex/latex/gelasiomath/t1mingelasio.fd51
-rw-r--r--Master/texmf-dist/tex/latex/gelasiomath/untxmia.fd139
-rw-r--r--Master/texmf-dist/tex/latex/gridset/gridset.sty6
-rw-r--r--Master/texmf-dist/tex/latex/harmony/harmony.sty186
-rw-r--r--Master/texmf-dist/tex/latex/hebdomon/hebdomon.cls412
-rw-r--r--Master/texmf-dist/tex/latex/heria/heria.cls45
-rw-r--r--Master/texmf-dist/tex/latex/heria/hi-methodology.tex2
-rw-r--r--Master/texmf-dist/tex/latex/heria/hi-workplan.tex21
-rw-r--r--Master/texmf-dist/tex/latex/heria/hi-wp-description.tex6
-rw-r--r--Master/texmf-dist/tex/latex/homework/homework.cls35
-rw-r--r--Master/texmf-dist/tex/latex/hypcap/hypcap.sty (renamed from Master/texmf-dist/tex/latex/oberdiek/hypcap.sty)11
-rw-r--r--Master/texmf-dist/tex/latex/hypdestopt/hypdestopt.sty18
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/hdvipdfm.def2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/hdvips.def2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/hdvipson.def2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/hdviwind.def2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/hluatex.def4
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/hpdftex.def2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/htex4ht.cfg2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/htex4ht.def2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/htexture.def2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/hvtex.def2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/hvtexhtm.def2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/hvtexmrk.def2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/hxetex.def2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/hyperref.sty7
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/hypertex.def2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/nohyperref.sty2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/pd1enc.def2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/pdfmark.def2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/psdextra.def2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/puarenc.def2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/puenc-extra.def2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/puenc.def2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/puvnenc.def2
-rw-r--r--Master/texmf-dist/tex/latex/hyperref/xr-hyper.sty2
-rw-r--r--Master/texmf-dist/tex/latex/iaria-lite/iaria-lite.cls26
-rw-r--r--Master/texmf-dist/tex/latex/iaria/iaria.cls36
-rw-r--r--Master/texmf-dist/tex/latex/interlinear/interlinear.sty1176
-rw-r--r--Master/texmf-dist/tex/latex/iran-bibtex/iran-bibtex.sty14
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV003.pdfbin0 -> 1123 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV004.pdfbin0 -> 1861 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV009.pdfbin0 -> 1530 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV010.pdfbin0 -> 1307 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV011.pdfbin0 -> 4364 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV012.pdfbin0 -> 4636 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV013.pdfbin0 -> 1736 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV027.pdfbin0 -> 4901 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV028.pdfbin0 -> 6703 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV029.pdfbin0 -> 9946 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV064.pdfbin0 -> 1729 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV067.pdfbin0 -> 2733 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E001.pdfbin0 -> 1828 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E002.pdfbin0 -> 1824 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E003.pdfbin0 -> 972 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E004.pdfbin0 -> 1762 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E007.pdfbin0 -> 2068 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E008.pdfbin0 -> 1657 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E009.pdf69
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E010.pdfbin0 -> 1203 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E011.pdfbin0 -> 4272 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E012.pdfbin0 -> 4612 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E013.pdf71
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E014.pdfbin0 -> 4467 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E015.pdfbin0 -> 2117 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E016.pdfbin0 -> 1897 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E017.pdfbin0 -> 2562 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E018.pdfbin0 -> 1288 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E019.pdfbin0 -> 1281 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E020.pdfbin0 -> 1943 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E021.pdfbin0 -> 2852 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E022.pdfbin0 -> 1177 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E023.pdfbin0 -> 1172 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E024.pdfbin0 -> 1674 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E025.pdfbin0 -> 4345 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E026.pdfbin0 -> 1489 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E027.pdfbin0 -> 4814 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E028.pdfbin0 -> 6617 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E029.pdfbin0 -> 9864 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E030.pdfbin0 -> 1495 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E031.pdfbin0 -> 1721 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E032.pdfbin0 -> 3770 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E033.pdf69
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E034.pdf69
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E035.pdfbin0 -> 3820 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E036.pdfbin0 -> 4287 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E037.pdfbin0 -> 1959 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E038.pdfbin0 -> 4687 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E039.pdfbin0 -> 3955 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E040.pdfbin0 -> 1572 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E041.pdfbin0 -> 3792 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E042.pdfbin0 -> 3390 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E043.pdfbin0 -> 5583 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E044.pdfbin0 -> 3280 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E045.pdfbin0 -> 4814 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E046.pdfbin0 -> 4015 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E047.pdfbin0 -> 2346 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E048.pdfbin0 -> 2534 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E049.pdfbin0 -> 2423 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E050.pdfbin0 -> 4458 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E051.pdfbin0 -> 3907 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E052.pdfbin0 -> 2204 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E053.pdfbin0 -> 1886 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E054.pdfbin0 -> 3880 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E055.pdfbin0 -> 3269 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E056.pdfbin0 -> 2379 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E057.pdfbin0 -> 1169 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E058.pdf68
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E059.pdfbin0 -> 1136 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E060.pdfbin0 -> 2474 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E061.pdfbin0 -> 4273 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E062.pdfbin0 -> 1760 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E063.pdfbin0 -> 1878 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E064.pdfbin0 -> 1605 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E065.pdfbin0 -> 1808 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E067.pdfbin0 -> 2617 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E068.pdfbin0 -> 6730 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E069.pdfbin0 -> 3345 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E070.pdfbin0 -> 1621 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F001.pdfbin0 -> 1567 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F002.pdfbin0 -> 2714 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F003.pdfbin0 -> 1780 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F004.pdfbin0 -> 2131 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F005.pdfbin0 -> 2289 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F006.pdfbin0 -> 2183 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F007.pdfbin0 -> 3380 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F008.pdfbin0 -> 3755 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F009.pdfbin0 -> 2238 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F010.pdfbin0 -> 1862 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F011.pdfbin0 -> 4254 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F012.pdfbin0 -> 1792 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F013.pdfbin0 -> 1813 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F014.pdfbin0 -> 1735 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F015.pdfbin0 -> 1925 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F016.pdfbin0 -> 2653 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F017.pdfbin0 -> 2724 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F018.pdfbin0 -> 1943 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F019.pdfbin0 -> 2100 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M001.pdf69
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M002.pdfbin0 -> 1499 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M003.pdfbin0 -> 1608 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M004.pdfbin0 -> 2358 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M005.pdfbin0 -> 1110 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M006.pdfbin0 -> 2002 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M007.pdfbin0 -> 2092 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M008.pdfbin0 -> 1673 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M009.pdfbin0 -> 2297 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M010.pdfbin0 -> 1301 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M011.pdfbin0 -> 3054 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M012.pdf71
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M013.pdfbin0 -> 1849 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M014.pdf72
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M015.pdfbin0 -> 1271 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M016.pdfbin0 -> 1790 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M017.pdfbin0 -> 3757 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M018.pdfbin0 -> 2225 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M019.pdfbin0 -> 1772 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M020.pdfbin0 -> 1519 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M021.pdfbin0 -> 1351 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M022.pdfbin0 -> 1760 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M023.pdfbin0 -> 1596 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M024.pdfbin0 -> 1498 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M025.pdfbin0 -> 3246 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M026.pdfbin0 -> 1851 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M027.pdfbin0 -> 6227 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M028.pdfbin0 -> 2649 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M029.pdfbin0 -> 1879 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M030.pdfbin0 -> 6119 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M031.pdfbin0 -> 8180 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M032.pdfbin0 -> 5413 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M033.pdfbin0 -> 5446 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M034.pdfbin0 -> 5112 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M035.pdfbin0 -> 4825 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M036.pdfbin0 -> 3857 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M037.pdfbin0 -> 5183 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M038.pdfbin0 -> 11904 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M039.pdfbin0 -> 15091 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M040.pdfbin0 -> 16077 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M041.pdfbin0 -> 7136 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M042.pdfbin0 -> 5538 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M043.pdfbin0 -> 13741 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M044.pdfbin0 -> 3064 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M045.pdfbin0 -> 8883 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M046.pdfbin0 -> 6530 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M047.pdfbin0 -> 7106 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M048.pdfbin0 -> 15525 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M049.pdfbin0 -> 6205 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M050.pdfbin0 -> 3548 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M051.pdfbin0 -> 3544 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M052.pdfbin0 -> 4020 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M053.pdfbin0 -> 2284 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M054.pdfbin0 -> 4966 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M055.pdfbin0 -> 2010 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M056.pdfbin0 -> 1607 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M057.pdfbin0 -> 1246 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M058.pdfbin0 -> 2414 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M059.pdfbin0 -> 1469 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M060.pdfbin0 -> 2420 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P001.pdfbin0 -> 1197 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P002.pdfbin0 -> 1698 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P003.pdfbin0 -> 1972 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P004.pdfbin0 -> 1811 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P005.pdfbin0 -> 1768 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P006.pdfbin0 -> 2253 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P007.pdfbin0 -> 1676 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P008.pdf72
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P009.pdfbin0 -> 1869 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P010.pdfbin0 -> 1775 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P011.pdfbin0 -> 4499 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P012.pdfbin0 -> 1497 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P013.pdfbin0 -> 3162 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P014.pdfbin0 -> 2354 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P015.pdfbin0 -> 1812 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P016.pdfbin0 -> 8652 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P017.pdf73
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P018.pdfbin0 -> 1542 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P019.pdfbin0 -> 1772 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P020.pdfbin0 -> 2595 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P021.pdfbin0 -> 1562 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P022.pdf71
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P023.pdfbin0 -> 1576 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P024.pdfbin0 -> 1684 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P025.pdfbin0 -> 2175 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P026.pdfbin0 -> 3995 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P027.pdf74
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P028.pdfbin0 -> 2847 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P029.pdf73
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P030.pdfbin0 -> 2978 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P031.pdfbin0 -> 1582 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P032.pdfbin0 -> 1812 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P033.pdfbin0 -> 15245 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P034.pdfbin0 -> 13872 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P035.pdfbin0 -> 8281 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P036.pdfbin0 -> 2524 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P037.pdfbin0 -> 2542 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P038.pdfbin0 -> 2576 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P039.pdfbin0 -> 6372 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P040.pdfbin0 -> 3697 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P041.pdfbin0 -> 1640 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P042.pdfbin0 -> 1674 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P043.pdfbin0 -> 5266 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P044.pdfbin0 -> 3478 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P045.pdfbin0 -> 1783 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P046.pdfbin0 -> 2063 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P047.pdfbin0 -> 2517 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P048.pdfbin0 -> 1789 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P049.pdfbin0 -> 2190 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P050.pdfbin0 -> 1936 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P051.pdfbin0 -> 2248 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P052.pdfbin0 -> 2184 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P053.pdfbin0 -> 2191 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P054.pdfbin0 -> 2405 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P055.pdfbin0 -> 2247 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P056.pdfbin0 -> 1914 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P057.pdfbin0 -> 2349 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P058.pdfbin0 -> 2302 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P059.pdfbin0 -> 2945 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P060.pdfbin0 -> 1340 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P061.pdfbin0 -> 2408 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P062.pdfbin0 -> 3032 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P063.pdfbin0 -> 2419 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P064.pdfbin0 -> 2879 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P065.pdfbin0 -> 3193 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P066.pdfbin0 -> 2490 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P067.pdfbin0 -> 1517 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P068.pdfbin0 -> 2240 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P069.pdfbin0 -> 1825 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P070.pdfbin0 -> 5310 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P071.pdfbin0 -> 1913 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P072.pdfbin0 -> 1844 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P073.pdfbin0 -> 2703 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P074.pdfbin0 -> 2906 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P075.pdfbin0 -> 1702 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W001.pdf69
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W002.pdfbin0 -> 10194 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W003.pdf69
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W004.pdfbin0 -> 1684 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W005.pdfbin0 -> 2585 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W006.pdfbin0 -> 1768 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W007.pdfbin0 -> 2221 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W008.pdfbin0 -> 2179 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W009.pdfbin0 -> 2430 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W010.pdfbin0 -> 1731 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W011.pdfbin0 -> 1851 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W012.pdfbin0 -> 1064 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W013.pdfbin0 -> 3018 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W014.pdfbin0 -> 2159 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W015.pdfbin0 -> 1933 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W016.pdfbin0 -> 2628 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W017.pdfbin0 -> 1280 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W018.pdfbin0 -> 2619 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W019.pdfbin0 -> 1803 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W020.pdfbin0 -> 1611 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W021.pdfbin0 -> 2127 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W022.pdfbin0 -> 1671 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W023.pdfbin0 -> 2778 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W024.pdfbin0 -> 1398 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W025.pdfbin0 -> 3060 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W026.pdfbin0 -> 1754 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W027.pdfbin0 -> 1525 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W028.pdfbin0 -> 2278 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W029.pdfbin0 -> 4426 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W030.pdfbin0 -> 2473 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W031.pdfbin0 -> 2764 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W032.pdfbin0 -> 2952 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W033.pdfbin0 -> 3108 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W034.pdfbin0 -> 3383 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W035.pdfbin0 -> 2962 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W036.pdfbin0 -> 23961 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W037.pdfbin0 -> 8525 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W038.pdfbin0 -> 7126 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W039.pdfbin0 -> 1690 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W040.pdfbin0 -> 12232 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W041.pdfbin0 -> 42519 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W042.pdfbin0 -> 1485 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W043.pdfbin0 -> 3520 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W044.pdfbin0 -> 2163 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W045.pdfbin0 -> 4400 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W046.pdfbin0 -> 5475 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W047.pdfbin0 -> 3771 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W048.pdfbin0 -> 3758 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W049.pdfbin0 -> 5523 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W050.pdfbin0 -> 3742 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W051.pdfbin0 -> 2539 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W052.pdfbin0 -> 4373 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W053.pdfbin0 -> 4771 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W054.pdfbin0 -> 2853 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W055.pdfbin0 -> 2162 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W056.pdfbin0 -> 2291 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W057.pdfbin0 -> 3440 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W058.pdfbin0 -> 5427 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W059.pdfbin0 -> 1685 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W060.pdfbin0 -> 4166 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W061.pdfbin0 -> 2533 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W062.pdfbin0 -> 7282 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W063.pdfbin0 -> 5035 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W064.pdfbin0 -> 1691 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W065.pdfbin0 -> 7289 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W066.pdfbin0 -> 6096 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W067.pdfbin0 -> 3205 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W068.pdfbin0 -> 2524 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W069.pdfbin0 -> 2964 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W070.pdfbin0 -> 1961 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W071.pdfbin0 -> 6626 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W072.pdfbin0 -> 1612 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W073.pdfbin0 -> 2727 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W074.pdfbin0 -> 2440 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W075.pdfbin0 -> 3039 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W076.pdfbin0 -> 2006 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W077.pdfbin0 -> 2607 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W078.pdfbin0 -> 1523 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W079.pdfbin0 -> 1778 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W080.pdfbin0 -> 1798 bytes
-rw-r--r--Master/texmf-dist/tex/latex/isosafety/isosafety.sty31
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/iwonamath.sty3
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/omliwonamath.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/omliwonamathc.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/omliwonamathl.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/omliwonamathlc.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/omsiwonamath.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/omsiwonamathc.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/omsiwonamathcmsy.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/omsiwonamathl.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/omsiwonamathlc.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/omxiwonamath.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/omxiwonamathc.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/omxiwonamathl.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/omxiwonamathlc.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/ot1iwonamath.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathc.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathcm.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathl.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathlc.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathlcm.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathlm.fd2
-rw-r--r--Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathm.fd2
-rw-r--r--Master/texmf-dist/tex/latex/jigsaw/jigsaw-doc-settings.sty196
-rw-r--r--Master/texmf-dist/tex/latex/jlreq/jlreq-complements.sty14
-rw-r--r--Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty17
-rw-r--r--Master/texmf-dist/tex/latex/jlreq/jlreq.cls324
-rw-r--r--Master/texmf-dist/tex/latex/jnuexam/jnuexam.cls8
-rw-r--r--Master/texmf-dist/tex/latex/joinbox/joinbox.sty94
-rw-r--r--Master/texmf-dist/tex/latex/jsonparse/jsonparse.sty683
-rw-r--r--Master/texmf-dist/tex/latex/junicode/LGRJunicode-Inf.fd442
-rw-r--r--Master/texmf-dist/tex/latex/junicode/LGRJunicode-LF.fd844
-rw-r--r--Master/texmf-dist/tex/latex/junicode/LGRJunicode-OsF.fd806
-rw-r--r--Master/texmf-dist/tex/latex/junicode/LGRJunicode-Sup.fd374
-rw-r--r--Master/texmf-dist/tex/latex/junicode/LGRJunicode-TLF.fd836
-rw-r--r--Master/texmf-dist/tex/latex/junicode/LGRJunicode-TOsF.fd796
-rw-r--r--Master/texmf-dist/tex/latex/junicode/LY1Junicode-Inf.fd420
-rw-r--r--Master/texmf-dist/tex/latex/junicode/LY1Junicode-LF.fd832
-rw-r--r--Master/texmf-dist/tex/latex/junicode/LY1Junicode-OsF.fd854
-rw-r--r--Master/texmf-dist/tex/latex/junicode/LY1Junicode-Sup.fd394
-rw-r--r--Master/texmf-dist/tex/latex/junicode/LY1Junicode-TLF.fd852
-rw-r--r--Master/texmf-dist/tex/latex/junicode/LY1Junicode-TOsF.fd836
-rw-r--r--Master/texmf-dist/tex/latex/junicode/OT1Junicode-Inf.fd414
-rw-r--r--Master/texmf-dist/tex/latex/junicode/OT1Junicode-LF.fd794
-rw-r--r--Master/texmf-dist/tex/latex/junicode/OT1Junicode-OsF.fd798
-rw-r--r--Master/texmf-dist/tex/latex/junicode/OT1Junicode-Sup.fd440
-rw-r--r--Master/texmf-dist/tex/latex/junicode/OT1Junicode-TLF.fd804
-rw-r--r--Master/texmf-dist/tex/latex/junicode/OT1Junicode-TOsF.fd814
-rw-r--r--Master/texmf-dist/tex/latex/junicode/T1Junicode-Inf.fd456
-rw-r--r--Master/texmf-dist/tex/latex/junicode/T1Junicode-LF.fd832
-rw-r--r--Master/texmf-dist/tex/latex/junicode/T1Junicode-OsF.fd856
-rw-r--r--Master/texmf-dist/tex/latex/junicode/T1Junicode-Sup.fd404
-rw-r--r--Master/texmf-dist/tex/latex/junicode/T1Junicode-TLF.fd844
-rw-r--r--Master/texmf-dist/tex/latex/junicode/T1Junicode-TOsF.fd862
-rw-r--r--Master/texmf-dist/tex/latex/junicode/TS1Junicode-LF.fd398
-rw-r--r--Master/texmf-dist/tex/latex/junicode/TS1Junicode-OsF.fd422
-rw-r--r--Master/texmf-dist/tex/latex/junicode/TS1Junicode-TLF.fd446
-rw-r--r--Master/texmf-dist/tex/latex/junicode/TS1Junicode-TOsF.fd392
-rw-r--r--Master/texmf-dist/tex/latex/jupynotex/jupynotex.py331
-rw-r--r--Master/texmf-dist/tex/latex/jupynotex/jupynotex.sty18
-rw-r--r--Master/texmf-dist/tex/latex/jwjournal/jwjournal.cls26
-rw-r--r--Master/texmf-dist/tex/latex/keytheorems/class-support/keythms-amsart-support.tex49
-rw-r--r--Master/texmf-dist/tex/latex/keytheorems/class-support/keythms-amsbook-support.tex23
-rw-r--r--Master/texmf-dist/tex/latex/keytheorems/class-support/keythms-amsproc-support.tex23
-rw-r--r--Master/texmf-dist/tex/latex/keytheorems/class-support/keythms-memoir-support.tex49
-rw-r--r--Master/texmf-dist/tex/latex/keytheorems/keytheorems.sty2395
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex49
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex2
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/expl3.ltx2
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/expl3.sty2
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3debug.def2
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3doc.cls23
-rw-r--r--Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty2
-rw-r--r--Master/texmf-dist/tex/latex/l3packages/xfp/xfp.sty2
-rw-r--r--Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty19
-rw-r--r--Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty2
-rw-r--r--Master/texmf-dist/tex/latex/lastpage/lastpage.sty11
-rw-r--r--Master/texmf-dist/tex/latex/lastpage/lastpage209.sty9
-rw-r--r--Master/texmf-dist/tex/latex/lastpage/lastpage2e.sty11
-rw-r--r--Master/texmf-dist/tex/latex/lastpage/lastpageclassic.sty11
-rw-r--r--Master/texmf-dist/tex/latex/lastpage/lastpagemodern.sty54
-rw-r--r--Master/texmf-dist/tex/latex/lete-sans-math/lete-sans-math.sty10
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusMono-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-LF.fd110
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-OsF.fd100
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-Sup.fd28
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-TLF.fd112
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-TOsF.fd96
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-LF.fd144
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-OsF.fd160
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-Sup.fd80
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-TLF.fd160
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-TOsF.fd164
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-LF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-OsF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-Sup.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-TOsF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifInitials-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusMono-TLF.fd59
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-LF.fd80
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-OsF.fd110
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-Sup.fd44
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-TLF.fd72
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-TOsF.fd80
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-LF.fd170
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-OsF.fd174
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-Sup.fd76
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-TLF.fd144
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-TOsF.fd166
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-LF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-OsF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-Sup.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-TOsF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifInitials-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusMono-TLF.fd59
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-LF.fd102
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-OsF.fd96
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-Sup.fd60
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-TLF.fd72
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-TOsF.fd80
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-LF.fd152
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-OsF.fd114
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-Sup.fd80
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-TLF.fd166
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-TOsF.fd160
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-LF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-OsF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-Sup.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-TOsF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifInitials-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusMono-TLF.fd59
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-LF.fd110
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-OsF.fd80
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-Sup.fd42
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-TLF.fd106
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-TOsF.fd88
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-LF.fd158
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-OsF.fd174
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-Sup.fd28
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-TLF.fd114
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-TOsF.fd174
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-LF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-OsF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-Sup.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-TOsF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifInitials-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusMono-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-LF.fd98
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-OsF.fd110
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-Sup.fd58
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-TLF.fd80
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-TOsF.fd106
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-LF.fd160
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-OsF.fd170
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-Sup.fd80
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-TLF.fd164
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-TOsF.fd160
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-LF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-OsF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-Sup.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-TOsF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifInitials-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusMono-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-LF.fd96
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-OsF.fd108
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-Sup.fd28
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-TLF.fd100
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-TOsF.fd76
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-LF.fd128
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-OsF.fd170
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-Sup.fd80
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-TLF.fd136
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-TOsF.fd172
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-LF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-OsF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-Sup.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-TOsF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifInitials-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusMono-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-LF.fd84
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-OsF.fd100
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-Sup.fd28
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-TLF.fd108
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-TOsF.fd102
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-LF.fd160
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-OsF.fd166
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-Sup.fd64
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-TLF.fd170
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-TOsF.fd170
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-LF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-OsF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-Sup.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-TOsF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifInitials-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusMono-TLF.fd59
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-LF.fd54
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-OsF.fd44
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-TLF.fd44
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-TOsF.fd48
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-LF.fd28
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-OsF.fd82
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-TLF.fd64
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-TOsF.fd44
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifDisplay-LF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifDisplay-OsF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifDisplay-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifDisplay-TOsF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifInitials-TLF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/libertinus-type1/libertinus-type1.sty7
-rw-r--r--Master/texmf-dist/tex/latex/libris/libris.sty69
-rw-r--r--Master/texmf-dist/tex/latex/libris/t1yly.fd33
-rw-r--r--Master/texmf-dist/tex/latex/libris/t1ylyw.fd33
-rw-r--r--Master/texmf-dist/tex/latex/libris/ts1yly.fd33
-rw-r--r--Master/texmf-dist/tex/latex/libris/ts1ylyw.fd33
-rw-r--r--Master/texmf-dist/tex/latex/lie-hasse/lie-hasse.sty976
-rw-r--r--Master/texmf-dist/tex/latex/listings/listings-acm.prf2
-rw-r--r--Master/texmf-dist/tex/latex/listings/listings-bash.prf2
-rw-r--r--Master/texmf-dist/tex/latex/listings/listings-fortran.prf2
-rw-r--r--Master/texmf-dist/tex/latex/listings/listings-hansl.prf2
-rw-r--r--Master/texmf-dist/tex/latex/listings/listings-lua.prf2
-rw-r--r--Master/texmf-dist/tex/latex/listings/listings-python.prf2
-rw-r--r--Master/texmf-dist/tex/latex/listings/listings-rexx.prf2
-rw-r--r--Master/texmf-dist/tex/latex/listings/listings.cfg2
-rw-r--r--Master/texmf-dist/tex/latex/listings/listings.sty46
-rw-r--r--Master/texmf-dist/tex/latex/listings/lstdoc.sty6
-rw-r--r--Master/texmf-dist/tex/latex/listings/lstlang1.sty2
-rw-r--r--Master/texmf-dist/tex/latex/listings/lstlang2.sty2
-rw-r--r--Master/texmf-dist/tex/latex/listings/lstlang3.sty2
-rw-r--r--Master/texmf-dist/tex/latex/listings/lstmisc.sty12
-rw-r--r--Master/texmf-dist/tex/latex/litesolution/litesolution.cls167
-rw-r--r--Master/texmf-dist/tex/latex/litetable/litetable.cls710
-rw-r--r--Master/texmf-dist/tex/latex/lni/lni.cls9
-rw-r--r--Master/texmf-dist/tex/latex/lstaddons/lstautogobble.sty2
-rw-r--r--Master/texmf-dist/tex/latex/lstaddons/lstlinebgrd.sty12
-rw-r--r--Master/texmf-dist/tex/latex/luwiantype/luwiantype.sty1035
-rw-r--r--Master/texmf-dist/tex/latex/magicwatermark/magicwatermark.sty653
-rw-r--r--Master/texmf-dist/tex/latex/mailing/mailing.sty14
-rw-r--r--Master/texmf-dist/tex/latex/markdown/markdown.sty32
-rw-r--r--Master/texmf-dist/tex/latex/markdown/markdownthemewitiko_dot.sty5
-rw-r--r--Master/texmf-dist/tex/latex/markdown/markdownthemewitiko_graphicx_http.sty2
-rw-r--r--Master/texmf-dist/tex/latex/markdown/markdownthemewitiko_markdown_defaults.sty78
-rw-r--r--Master/texmf-dist/tex/latex/mathastext/mathastext.sty1326
-rw-r--r--Master/texmf-dist/tex/latex/media9/media9.sty13
-rw-r--r--Master/texmf-dist/tex/latex/media9/pdfbase.sty144
-rw-r--r--Master/texmf-dist/tex/latex/mercatormap/mercatormap.sty922
-rw-r--r--Master/texmf-dist/tex/latex/mercatormap/mercatorpy.def16
-rw-r--r--Master/texmf-dist/tex/latex/mercatormap/mercatorsupplier.def221
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-Dnom.fd67
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-Inf.fd67
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-LF.fd75
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-Numr.fd67
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-OsF.fd44
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-Sup.fd67
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-TLF.fd75
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-TOsF.fd44
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-Dnom.fd67
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-Inf.fd67
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-LF.fd75
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-Numr.fd67
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-OsF.fd44
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-Sup.fd67
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-TLF.fd75
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-TOsF.fd44
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-Dnom.fd67
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-Inf.fd67
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-LF.fd75
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-Numr.fd67
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-OsF.fd44
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-Sup.fd67
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-TLF.fd75
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-TOsF.fd44
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-Dnom.fd67
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-Inf.fd67
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-LF.fd75
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-Numr.fd67
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-OsF.fd44
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-Sup.fd67
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-TLF.fd75
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-TOsF.fd44
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/TS1MFBOldstyle-LF.fd67
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/TS1MFBOldstyle-OsF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/TS1MFBOldstyle-TLF.fd67
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/TS1MFBOldstyle-TOsF.fd36
-rw-r--r--Master/texmf-dist/tex/latex/mfb-oldstyle/mfb-oldstyle.sty93
-rw-r--r--Master/texmf-dist/tex/latex/minted/minted.sty2720
-rw-r--r--Master/texmf-dist/tex/latex/minted/minted2.sty1285
-rw-r--r--Master/texmf-dist/tex/latex/mitthesis/mitthesis.cls104
-rw-r--r--Master/texmf-dist/tex/latex/mlacls/mla.cls21
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncv.cls142
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvbodyi.sty45
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvbodyii.sty45
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvbodyiii.sty50
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvbodyiv.sty39
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvbodyv.sty48
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvbodyvi.sty203
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvcollection.sty4
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvcolorblack.sty12
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvcolorblue.sty12
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvcolorburgundy.sty12
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvcolorcerulean.sty32
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvcolorgreen.sty12
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvcolorgrey.sty12
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvcolororange.sty12
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvcolorpurple.sty12
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvcolorred.sty12
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvcolors.tex35
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvcompatibility.sty4
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvdebugtools.sty8
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvfooti.sty14
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvheadi.sty54
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvheadii.sty40
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvheadiii.sty60
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvheadiv.sty30
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvheadv.sty57
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvheadvi.sty29
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvheadvii.sty226
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncviconsacademic.sty26
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncviconsawesome.sty91
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncviconsletters.sty17
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncviconsmarvosym.sty4
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncviconssymbols.sty4
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncviconstikz.sty29
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvskillmatrix.sty408
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvstylebanking.sty42
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvstylecasual.sty44
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvstyleclassic.sty42
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvstylecontemporary.sty63
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvstyleempty.sty29
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvstylefancy.sty47
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvstyleoldstyle.sty47
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/moderncvverticaltimeline.sty79
-rw-r--r--Master/texmf-dist/tex/latex/moderncv/tweaklist.sty2
-rw-r--r--Master/texmf-dist/tex/latex/moloch/beamercolorthememoloch.sty2
-rw-r--r--Master/texmf-dist/tex/latex/moloch/beamerfontthememoloch.sty128
-rw-r--r--Master/texmf-dist/tex/latex/moloch/beamerinnerthememoloch.sty19
-rw-r--r--Master/texmf-dist/tex/latex/moloch/beamerouterthememoloch.sty42
-rw-r--r--Master/texmf-dist/tex/latex/moloch/beamerthememoloch.sty38
-rw-r--r--Master/texmf-dist/tex/latex/moremath/moremath.sty1245
-rw-r--r--Master/texmf-dist/tex/latex/msu-thesis/msu-thesis.cls8
-rw-r--r--Master/texmf-dist/tex/latex/naive-ebnf/naive-ebnf.sty5
-rw-r--r--Master/texmf-dist/tex/latex/newcomputermodern/newcomputermodern.sty2
-rw-r--r--Master/texmf-dist/tex/latex/newtx/newtx.sty2
-rw-r--r--Master/texmf-dist/tex/latex/newtx/newtxmath.sty10
-rw-r--r--Master/texmf-dist/tex/latex/nfssext-cfr/nfssext-cfr-nfss.sty554
-rw-r--r--Master/texmf-dist/tex/latex/nfssext-cfr/nfssext-cfr-nnfss.sty721
-rw-r--r--Master/texmf-dist/tex/latex/nfssext-cfr/nfssext-cfr.sty768
-rw-r--r--Master/texmf-dist/tex/latex/nicematrix/nicematrix.sty312
-rw-r--r--Master/texmf-dist/tex/latex/ocgx2/ocgbase.sty275
-rw-r--r--Master/texmf-dist/tex/latex/ocgx2/ocgx2.sty255
-rw-r--r--Master/texmf-dist/tex/latex/outilsgeomtikz/OutilsGeomTikz.sty141
-rw-r--r--Master/texmf-dist/tex/latex/overarrows/overarrows.sty456
-rw-r--r--Master/texmf-dist/tex/latex/pagelayout/pagelayout.cls10
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Indication/PanneauRouteC24a.pdfbin0 -> 1345 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB14_80.pdfbin0 -> 2775 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB1j.pdfbin0 -> 1506 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB30_30.pdfbin0 -> 4929 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b1.pdfbin0 -> 1761 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b2.pdfbin0 -> 3914 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b3.pdfbin0 -> 1919 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b4.pdfbin0 -> 1957 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b5.pdfbin0 -> 4093 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB49VL.pdfbin0 -> 4986 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50a.pdfbin0 -> 1642 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50b.pdfbin0 -> 3758 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50c.pdfbin0 -> 1797 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50d.pdfbin0 -> 2031 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50e.pdfbin0 -> 3932 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB51_30.pdfbin0 -> 4867 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB52.pdfbin0 -> 5184 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB53.pdfbin0 -> 5314 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB54.pdfbin0 -> 3128 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB55.pdfbin0 -> 3255 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB56.pdfbin0 -> 2954 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB57.pdfbin0 -> 2892 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB58.pdfbin0 -> 19271 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB59.pdfbin0 -> 11639 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/PanneauxRoute.sty18
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK14.pdfbin0 -> 1651 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK17.pdfbin0 -> 1724 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK2.pdfbin0 -> 1695 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK22.pdfbin0 -> 2921 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK3.pdfbin0 -> 1514 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK30.pdfbin0 -> 3705 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK31.pdfbin0 -> 1903 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK32.pdfbin0 -> 1719 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK4.pdfbin0 -> 2265 bytes
-rw-r--r--Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK5.pdfbin0 -> 2191 bytes
-rw-r--r--Master/texmf-dist/tex/latex/pas-tableur/pas-tableur.sty91
-rw-r--r--Master/texmf-dist/tex/latex/passopt/passopt.sty56
-rw-r--r--Master/texmf-dist/tex/latex/pdfmanagement-testphase/color-ltx.sty4
-rw-r--r--Master/texmf-dist/tex/latex/pdfmanagement-testphase/colorspace-patches-tmp-ltx.sty7
-rw-r--r--Master/texmf-dist/tex/latex/pdfmanagement-testphase/hgeneric-testphase.def47
-rw-r--r--Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvipdfmx.def2
-rw-r--r--Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvips.def2
-rw-r--r--Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvisvgm.def2
-rw-r--r--Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-luatex.def2
-rw-r--r--Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-pdftex.def2
-rw-r--r--Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-xetex.def2
-rw-r--r--Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3pdffield-testphase.sty4
-rw-r--r--Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-firstaid.sty2
-rw-r--r--Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-testphase.ltx142
-rw-r--r--Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-testphase.sty2
-rw-r--r--Master/texmf-dist/tex/latex/pdfmanagement-testphase/xcolor-patches-tmp-ltx.sty2
-rw-r--r--Master/texmf-dist/tex/latex/pdfpages/pdfpages.sty6
-rw-r--r--Master/texmf-dist/tex/latex/pdfpages/ppdvipdfmx.def6
-rw-r--r--Master/texmf-dist/tex/latex/pdfpages/ppdvips.def6
-rw-r--r--Master/texmf-dist/tex/latex/pdfpages/ppluatex.def6
-rw-r--r--Master/texmf-dist/tex/latex/pdfpages/ppnull.def6
-rw-r--r--Master/texmf-dist/tex/latex/pdfpages/pppdftex.def6
-rw-r--r--Master/texmf-dist/tex/latex/pdfpages/ppvtex.def6
-rw-r--r--Master/texmf-dist/tex/latex/pdfpages/ppxetex.def16
-rw-r--r--Master/texmf-dist/tex/latex/pgf-periodictable/pgf-PeriodicTable.sty97
-rw-r--r--Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.backcolors.keys.tex51
-rw-r--r--Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.buildcell.tex23
-rw-r--r--Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.data.tex236
-rw-r--r--Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.drawing.keys.tex39
-rw-r--r--Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.names.tex18
-rw-r--r--Master/texmf-dist/tex/latex/pgf-spectra/pgf-spectra.data.LSE.tex20
-rw-r--r--Master/texmf-dist/tex/latex/pgf-spectra/pgf-spectra.sty13
-rw-r--r--Master/texmf-dist/tex/latex/pgfornament-han/beamerthemeTianQing.sty20
-rw-r--r--Master/texmf-dist/tex/latex/pgfornament/pgfornament.sty13
-rw-r--r--Master/texmf-dist/tex/latex/pgfplotsthemebeamer/pgfplotsthemebeamer.sty37
-rw-r--r--Master/texmf-dist/tex/latex/photobook/photobook.cls92
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/arabicnumbers.sty23
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/cal-util.def2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-acadian.ldf (renamed from Master/texmf-dist/tex/latex/polyglossia/gloss-acadien.ldf)4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-aeb.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-af.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-afb.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-afrikaans.ldf21
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-albanian.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-am.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-american.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-amharic.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-apd.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ar-IQ.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ar-JO.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ar-LB.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ar-MR.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ar-PS.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ar-SY.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ar-YE.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ar.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-arabic.ldf320
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-armenian.ldf70
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-arq.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ary.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-arz.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ast.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-asturian.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-australian.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-austrian.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ayl.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-bahasa.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-bahasai.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-bahasam.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-basque.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-be-tarask.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-be.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-belarusian.ldf101
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-bengali.ldf44
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-bg.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-bn.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-bo.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-bosnian.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-br.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-brazil.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-breton.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-british.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-bs.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-bulgarian.ldf10
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ca.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-canadian.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-canadien.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-catalan.ldf20
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-chinese.ldf163
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ckb-Arab.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ckb-Latn.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ckb.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-classiclatin.ldf9
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-cop.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-coptic.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-croatian.ldf54
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-cy.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-cz.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-czech.ldf28
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-da.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-danish.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de-AT-1901.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de-AT-1996.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de-AT.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de-CH-1901.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de-CH-1996.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de-CH.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de-DE-1901.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de-DE-1996.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de-DE.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-AT-1901.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-AT-1996.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-AT.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-CH-1901.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-CH-1996.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-CH.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-DE-1901.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-DE-1996.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-DE.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-de.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-divehi.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-dsb.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-dutch.ldf24
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-dv.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ecclesiasticlatin.ldf9
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-el-monoton.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-el-polyton.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-el.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-en-AU.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-en-CA.ldf6
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-en-GB.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-en-NZ.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-en-US.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-en.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-english.ldf74
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-eo.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-es-ES.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-es-MX.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-es.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-esperanto.ldf6
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-estonian.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-et.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-eu.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-fa.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-farsi.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-fi.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-finnish.ldf85
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-fr-CA-u-sd-canb.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-fr-CA.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-fr-CH.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-fr-FR.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-fr.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-french.ldf324
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-friulan.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-friulian.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-fur.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ga.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-gaelic.ldf37
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-galician.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-gd.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-georgian.ldf47
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-german.ldf184
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-germanb.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-gl.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-grc.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-greek.ldf144
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-he.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-hebrew.ldf69
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-hi.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-hindi.ldf40
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-hr.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-hsb.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-hu.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-hungarian.ldf364
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-hy.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ia.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-icelandic.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-id.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-interlingua.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-irish.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-is.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-it.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-italian.ldf24
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ja.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-japanese.ldf62
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ka.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-kannada.ldf22
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-khmer.ldf30
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-km.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-kmr-Arab.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-kmr-Latn.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-kmr.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-kn.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ko.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-korean.ldf425
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ku-Arab.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ku-Latn.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ku.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-kurdish.ldf160
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-kurmanji.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-la-x-classic.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-la-x-ecclesia.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-la-x-medieval.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-la.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-lao.ldf23
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-latex.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-latin.ldf238
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-latinclassic.ldf9
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-latinecclesiastic.ldf9
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-latinmedieval.ldf9
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-latvian.ldf8
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-lithuanian.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-lo.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-lowersorbian.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-lsorbian.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-lt.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-lv.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-macedonian.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-magyar.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-malay.ldf85
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-malayalam.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-marathi.ldf32
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-medievallatin.ldf9
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-mk.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ml.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-mn.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-mongolian.ldf67
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-mr.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-naustrian.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-nb.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-newzealand.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ngerman.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-nko.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-norsk.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-norwegian.ldf38
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-nswissgerman.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-nynorsk.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-occitan.ldf20
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-odia.ldf49
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-or.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-pa.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-persian.ldf96
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-piedmontese.ldf20
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-polish.ldf28
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-polutonikogreek.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-portuges.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-portuguese.ldf57
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-punjabi.ldf35
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-romanian.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-romansh.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-russian.ldf130
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-sami.ldf8
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-samin.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-sanskrit.ldf73
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-scottish.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-serbian.ldf138
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-serbianc.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-slovak.ldf30
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-slovene.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-slovenian.ldf10
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-sorbian.ldf80
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-spanish.ldf84
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-spanishmx.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-swedish.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-swissgerman.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-syriac.ldf97
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-tamil.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-telugu.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-thai.ldf30
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-tibetan.ldf26
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-turkish.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-turkmen.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ug.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-ukrainian.ldf79
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-uppersorbian.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-urdu.ldf116
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-usorbian.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-uyghur.ldf423
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-vietnamese.ldf2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-welsh.ldf31
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-zh-CN.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-zh-TW.ldf4
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/hebrewcal.sty2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/hijrical.sty2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/polyglossia-cjk-spacing.lua (renamed from Master/texmf-dist/tex/latex/polyglossia/polyglossia-korean.lua)198
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/polyglossia-french.lua2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/polyglossia-latin.lua2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/polyglossia-punct.lua18
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/polyglossia-sanskrit.lua2
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/polyglossia-tibt.lua31
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/polyglossia.lua13
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/polyglossia.sty1986
-rw-r--r--Master/texmf-dist/tex/latex/polyomino/polyomino.sty286
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCAllumettes.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCArbreCalcul.tex546
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCArbreChiffre.tex3
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCAssemblagesSolides.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCAutomatismes.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCAutonomie.tex8
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCBarreNiveaux.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCBarresCalculs.tex3
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCBillard.tex17
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCBonSortie.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCBonbon.tex6
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCCAN.tex7
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCCalculatrice.tex3
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCCalculsCroises.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCCalculsDetailles.tex147
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCCalculsFractions.tex27
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCCalisson.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCCartesJeux.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCCartesMentales.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCCartographie.tex64
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCCheque.tex125
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCCible.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCCibleQOp.tex7
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCColorilude.tex8
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCCompteBon.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCConversion.tex7
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCCritere.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCCryptarithme.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCDecDeci.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCDecompFracDeci.tex15
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCDecomposerNombrePremier.tex147
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCDefiCalc.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCDefiTables.tex5
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCDessinAlgo.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCDessinGradue.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCDessinerRatio.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCDiagrammeRadar.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCDistributivite.tex3
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCDobble.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCDomino.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCDontCountDots.tex6
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCEcrireunQCM.tex296
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCEcritureLettres.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCEcritureUnites.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCEngrenagesBase.tex28
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCEnigmeAire.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCEnquete.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCEratosthene.tex7
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCFactorisation.tex7
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCFicheMemo.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCFonctionAffine.tex22
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCFractionAireCarre.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCFractionNombre.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCFrise.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCFubuki.tex7
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCFutoshiki.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCGaram.tex12
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCGeometrie.tex10
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCGrades.tex8
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCGrimuku.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCHiddenMessage.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCHorloge.tex31
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCInfixRPN.sty538
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCJeton.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCJeuRangement.tex7
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCKakurasu.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCKakuro.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCKenKen.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCLabyrintheJeu.tex8
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCLabyrintheNombre.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCLego.tex10
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCMentalo.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCMidpoint.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCModeleBarre.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCMosaique.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCMotsCodes.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCMotsCroises.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCMotsEmpiles.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCMulArt.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCMulJal.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCMulJap.tex5
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCMulPiecesPuzzle.tex14
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCNombreAstral.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCNonogramme.tex7
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCNotionFonction.tex58
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCNumberHive.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCNumerationsAnciennes.tex7
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCOperationsTrou.tex8
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCPapiers.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCPatronPaves.tex505
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCPattern.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCPavage.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCPixelArt.tex216
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCPourcentage.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCProbaFrequence.tex189
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCProbabilites.tex14
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCProgrammeCalcul.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCPropor.tex50
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCProprietesDroites.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCPuissanceQuatre.tex82
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCPuzzleSommePyramide.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCPyraVoca.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCPyramideCalculs.tex307
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCPythagore.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCQuestionsFlash.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCQuestionsRelier.tex66
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCQuiSuisJe.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCRLE.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCRangementNombres.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCRapido.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCRappelsFormules.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCRecyclage.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCReperage.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCRepresentationGraphique.tex19
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCRepresenterEntier.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCRepresenterFraction.tex575
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCRepresenterTableur.tex15
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCReseauxSociaux.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCResoudreEquation.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCRondeInfernale.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCRose.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCScratch.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCSerpent.tex211
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCShikaku.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCSimplifierFraction.tex10
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCSolides.tex126
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCSommeAngles.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCSquaro.tex76
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCStatistiques.tex12
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCTableauDoubleEntree.tex62
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCTableauxUnites.tex11
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCTablesOperations.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCTectonic.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCThales.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCTicketCaisse.tex163
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCTortueBase.tex10
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCTrigonometrie.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCTrio.tex7
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCTriominos.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCUrneProba.tex932
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCVisualisationMulDeci.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCVueCubes.tex15
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/PfCYohaku.tex4
-rw-r--r--Master/texmf-dist/tex/latex/profcollege/ProfCollege.sty81
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty34
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-bronze-cup.pdfbin0 -> 2781 bytes
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-bronze-medal-flat.pdfbin0 -> 1857 bytes
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-bronze-medal.pdfbin0 -> 154573 bytes
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-checked.pdfbin0 -> 1480 bytes
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-crossed.pdfbin0 -> 1484 bytes
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-gold-cup.pdfbin0 -> 2764 bytes
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-gold-medal-flat.pdfbin0 -> 1713 bytes
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-gold-medal.pdfbin0 -> 119155 bytes
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-mouse-center.pdfbin0 -> 8987 bytes
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-mouse-left.pdfbin0 -> 8987 bytes
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-mouse-right.pdfbin0 -> 8988 bytes
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-mouse.pdfbin0 -> 8348 bytes
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-notok.pdfbin0 -> 3347 bytes
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-ok.pdfbin0 -> 3291 bytes
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-silver-cup.pdfbin0 -> 2759 bytes
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-silver-medal-flat.pdfbin0 -> 1763 bytes
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-silver-medal.pdfbin0 -> 98514 bytes
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/proflycee-tools-arithm.tex61
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/proflycee-tools-cliparts.tex126
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/proflycee-tools-ecritures.tex33
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/proflycee-tools-minted.tex1
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/proflycee-tools-piton.tex165
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/proflycee-tools-probas.tex26
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/proflycee-tools-stats.tex63
-rw-r--r--Master/texmf-dist/tex/latex/proflycee/proflycee-tools-trigo.tex25
-rw-r--r--Master/texmf-dist/tex/latex/profmaquette/ProfMaquette.sty1569
-rw-r--r--Master/texmf-dist/tex/latex/prtec/prtec.cls204
-rw-r--r--Master/texmf-dist/tex/latex/pst-coil/pst-coil.sty2
-rw-r--r--Master/texmf-dist/tex/latex/pst-node/pst-node.sty11
-rw-r--r--Master/texmf-dist/tex/latex/quizztex/quizztex.sty11
-rw-r--r--Master/texmf-dist/tex/latex/quran/quran-transde.def4
-rw-r--r--Master/texmf-dist/tex/latex/quran/quran-transen.def4
-rw-r--r--Master/texmf-dist/tex/latex/quran/quran-transfa.def4
-rw-r--r--Master/texmf-dist/tex/latex/quran/quran-transfr.def4
-rw-r--r--Master/texmf-dist/tex/latex/quran/quran-translt.def4
-rw-r--r--Master/texmf-dist/tex/latex/quran/quran.sty8
-rw-r--r--Master/texmf-dist/tex/latex/quran/qurantext-de.translation.def4
-rw-r--r--Master/texmf-dist/tex/latex/quran/qurantext-en.translation.def4
-rw-r--r--Master/texmf-dist/tex/latex/quran/qurantext-en.transliteration.def4
-rw-r--r--Master/texmf-dist/tex/latex/quran/qurantext-fa.translation.def4
-rw-r--r--Master/texmf-dist/tex/latex/quran/qurantext-fr.translation.def4
-rw-r--r--Master/texmf-dist/tex/latex/quran/qurantext-simple.def4
-rw-r--r--Master/texmf-dist/tex/latex/quran/qurantext-uthmani-min.def4
-rw-r--r--Master/texmf-dist/tex/latex/quran/qurantext-uthmani.def4
-rw-r--r--Master/texmf-dist/tex/latex/randexam/randexam.cls13
-rw-r--r--Master/texmf-dist/tex/latex/randintlist/randintlist.sty246
-rw-r--r--Master/texmf-dist/tex/latex/regulatory/regulatory.sty4
-rw-r--r--Master/texmf-dist/tex/latex/reledmac/reledpar.sty38
-rw-r--r--Master/texmf-dist/tex/latex/reptheorem/reptheorem.sty71
-rw-r--r--Master/texmf-dist/tex/latex/resolsysteme/ResolSysteme.sty3
-rw-r--r--Master/texmf-dist/tex/latex/responsive/responsive.sty12
-rw-r--r--Master/texmf-dist/tex/latex/romande/romande.sty21
-rw-r--r--Master/texmf-dist/tex/latex/romandeadf/romande.sty64
-rw-r--r--Master/texmf-dist/tex/latex/romandeadf/t1yrd.fd (renamed from Master/texmf-dist/tex/latex/romande/t1yrd.fd)35
-rw-r--r--Master/texmf-dist/tex/latex/romandeadf/t1yrda.fd (renamed from Master/texmf-dist/tex/latex/romande/t1yrda.fd)31
-rw-r--r--Master/texmf-dist/tex/latex/romandeadf/t1yrdaw.fd (renamed from Master/texmf-dist/tex/latex/romande/t1yrdaw.fd)25
-rw-r--r--Master/texmf-dist/tex/latex/romandeadf/t1yrdw.fd (renamed from Master/texmf-dist/tex/latex/romande/t1yrdw.fd)25
-rw-r--r--Master/texmf-dist/tex/latex/romandeadf/ts1yrd.fd (renamed from Master/texmf-dist/tex/latex/romande/ts1yrd.fd)31
-rw-r--r--Master/texmf-dist/tex/latex/romandeadf/ts1yrda.fd (renamed from Master/texmf-dist/tex/latex/romande/ts1yrda.fd)31
-rw-r--r--Master/texmf-dist/tex/latex/romandeadf/ts1yrdaw.fd (renamed from Master/texmf-dist/tex/latex/romande/ts1yrdaw.fd)25
-rw-r--r--Master/texmf-dist/tex/latex/romandeadf/ts1yrdw.fd (renamed from Master/texmf-dist/tex/latex/romande/ts1yrdw.fd)25
-rw-r--r--Master/texmf-dist/tex/latex/rpgicons/rpgicons-l3.sty40
-rw-r--r--Master/texmf-dist/tex/latex/rpgicons/rpgicons-pgf.sty2
-rw-r--r--Master/texmf-dist/tex/latex/rpgicons/rpgicons.sty4
-rw-r--r--Master/texmf-dist/tex/latex/rub-kunstgeschichte/rub-kunstgeschichte.cls46
-rw-r--r--Master/texmf-dist/tex/latex/scrhack/scrhack-2023-07-07.sty190
-rw-r--r--Master/texmf-dist/tex/latex/scrhack/scrhack.sty390
-rw-r--r--Master/texmf-dist/tex/latex/se2thesis/se2colors.sty2
-rw-r--r--Master/texmf-dist/tex/latex/se2thesis/se2fonts.sty3
-rw-r--r--Master/texmf-dist/tex/latex/se2thesis/se2packages.sty2
-rw-r--r--Master/texmf-dist/tex/latex/se2thesis/se2thesis.cls12
-rw-r--r--Master/texmf-dist/tex/latex/se2thesis/se2translations-english.trsl10
-rw-r--r--Master/texmf-dist/tex/latex/se2thesis/se2translations-german.trsl2
-rw-r--r--Master/texmf-dist/tex/latex/sepfootnotes/sepfootnotes.sty132
-rw-r--r--Master/texmf-dist/tex/latex/sidenotes/caesar_book.cls44
-rw-r--r--Master/texmf-dist/tex/latex/sidenotes/sidenotes.sty16
-rw-r--r--Master/texmf-dist/tex/latex/sillypage/sillypage.sty30
-rw-r--r--Master/texmf-dist/tex/latex/sim-os-menus/sim-os-menus.sty180
-rw-r--r--Master/texmf-dist/tex/latex/simpleicons/simpleicons.sty2
-rw-r--r--Master/texmf-dist/tex/latex/simpleicons/simpleiconsglyphs-pdftex.tex5959
-rw-r--r--Master/texmf-dist/tex/latex/simpleicons/simpleiconsglyphs-xeluatex.tex5959
-rw-r--r--Master/texmf-dist/tex/latex/simpleicons/usimpleiconseight.fd2
-rw-r--r--Master/texmf-dist/tex/latex/simpleicons/usimpleiconsfive.fd2
-rw-r--r--Master/texmf-dist/tex/latex/simpleicons/usimpleiconsfour.fd2
-rw-r--r--Master/texmf-dist/tex/latex/simpleicons/usimpleiconsnine.fd2
-rw-r--r--Master/texmf-dist/tex/latex/simpleicons/usimpleiconsone.fd2
-rw-r--r--Master/texmf-dist/tex/latex/simpleicons/usimpleiconsoneone.fd2
-rw-r--r--Master/texmf-dist/tex/latex/simpleicons/usimpleiconsonethree.fd2
-rw-r--r--Master/texmf-dist/tex/latex/simpleicons/usimpleiconsonetwo.fd2
-rw-r--r--Master/texmf-dist/tex/latex/simpleicons/usimpleiconsonezero.fd2
-rw-r--r--Master/texmf-dist/tex/latex/simpleicons/usimpleiconsseven.fd2
-rw-r--r--Master/texmf-dist/tex/latex/simpleicons/usimpleiconssix.fd2
-rw-r--r--Master/texmf-dist/tex/latex/simpleicons/usimpleiconsthree.fd2
-rw-r--r--Master/texmf-dist/tex/latex/simpleicons/usimpleiconstwo.fd2
-rw-r--r--Master/texmf-dist/tex/latex/siunitx/siunitx.sty178
-rw-r--r--Master/texmf-dist/tex/latex/spbmark/spbmark.sty21
-rw-r--r--Master/texmf-dist/tex/latex/spelatex/spelatex.sty105
-rw-r--r--Master/texmf-dist/tex/latex/stickstoo/ly1minstickstootext.fd84
-rw-r--r--Master/texmf-dist/tex/latex/stickstoo/ot1minstickstootext.fd84
-rw-r--r--Master/texmf-dist/tex/latex/stickstoo/stickstootext.sty10
-rw-r--r--Master/texmf-dist/tex/latex/stickstoo/t1minstickstootext.fd90
-rw-r--r--Master/texmf-dist/tex/latex/suanpan-l3/suanpan-l3.sty1401
-rw-r--r--Master/texmf-dist/tex/latex/subeqn/subeqn.sty18
-rw-r--r--Master/texmf-dist/tex/latex/subeqnarray/subeqnarray.sty17
-rw-r--r--Master/texmf-dist/tex/latex/supertabular/supertabular.sty130
-rw-r--r--Master/texmf-dist/tex/latex/synthslant/synthslant.sty41
-rw-r--r--Master/texmf-dist/tex/latex/tableof/tableof.sty27
-rw-r--r--Master/texmf-dist/tex/latex/tablvar/tablvar.sty118
-rw-r--r--Master/texmf-dist/tex/latex/tagpdf/tagpdf-base.sty29
-rw-r--r--Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-generic.sty2
-rw-r--r--Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-lua.sty2
-rw-r--r--Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug.sty94
-rw-r--r--Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def10
-rw-r--r--Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-generic.sty6
-rw-r--r--Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-lua.sty2
-rw-r--r--Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-book.def2
-rw-r--r--Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex.def2
-rw-r--r--Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-mathml.def2
-rw-r--r--Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf.def2
-rw-r--r--Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf2.def2
-rw-r--r--Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child-2.csv2
-rw-r--r--Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child.csv2
-rw-r--r--Master/texmf-dist/tex/latex/tagpdf/tagpdf.lua57
-rw-r--r--Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty352
-rw-r--r--Master/texmf-dist/tex/latex/tagpdf/tagpdfdocu-patches.sty167
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcbbreakable.code.tex23
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex71
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcbexternal.code.tex8
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcbfitting.code.tex4
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcbhooks.code.tex4
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcblistings.code.tex4
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcblistingscore.code.tex4
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcblistingsutf8.code.tex4
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcbmagazine.code.tex4
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcbminted.code.tex8
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcbposter.code.tex4
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcbprocessing.code.tex4
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcbraster.code.tex4
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcbskins.code.tex21
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcbskinsjigsaw.code.tex4
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcbtheorems.code.tex36
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcbvignette.code.tex4
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcbxparse.code.tex4
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty200
-rw-r--r--Master/texmf-dist/tex/latex/telprint/telprint.sty258
-rw-r--r--Master/texmf-dist/tex/latex/texvc/texvc.sty4
-rw-r--r--Master/texmf-dist/tex/latex/tikz3d-fr/tikz3d-fr.sty259
-rw-r--r--Master/texmf-dist/tex/latex/tikzbricks/tikzbricks-doc-settings.sty199
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz-elements.sty29
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_circle.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_class.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_ellipse.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_circles.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_intersections.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_lines.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_maths.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_matrices.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_points.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_regular.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_triangles.lua13
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_line.lua20
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_main.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_matrices.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_misc.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_parallelogram.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_point.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_quadrilateral.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_rectangle.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_regular.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_square.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_triangle.lua49
-rw-r--r--Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_vector.lua4
-rw-r--r--Master/texmf-dist/tex/latex/tkz-grapheur/tkz-grapheur.sty546
-rw-r--r--Master/texmf-dist/tex/latex/tramlines/tramlines.sty6
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/beamercolorthemeTUDa.sty2
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/beamercolorthemeTUDa2008.sty2
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/beamerfontthemeTUDa.sty2
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/beamerfontthemeTUDa2008.sty2
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/beamerinnerthemeTUDa.sty2
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/beamerinnerthemeTUDa2008.sty2
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/beamerinnerthemeTUDa2023.sty2
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/beamerouterthemeTUDa.sty2
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/beamerouterthemeTUDa2008.sty2
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa-mecheng.sty6
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa.sty2
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa2008.sty6
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa2023.sty2
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tuda-a0paper.clo20
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tuda-a1paper.clo20
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tuda-a2paper.clo18
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tuda-a3paper.clo20
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tuda-a4paper.clo20
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tuda-a5paper.clo20
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tuda-pgfplots.sty6
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tudabeamer.cls23
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tudacolors.def6
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tudacolors.sty6
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tudaexercise.cls6
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tudafonts.sty6
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tudaleaflet.cls8
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tudaletter.cls84
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tudalettersize10pt.clo84
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tudamecheng.cfg6
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tudaposter.cls6
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tudapub.cls118
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tudarules.sty6
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tudasciposter.cls42
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tudasize9pt.clo2
-rw-r--r--Master/texmf-dist/tex/latex/tuda-ci/tudathesis.cfg19
-rw-r--r--Master/texmf-dist/tex/latex/tutodoc/tutodoc-locale-main-english.cfg.sty8
-rw-r--r--Master/texmf-dist/tex/latex/tutodoc/tutodoc-locale-main-french.cfg.sty10
-rw-r--r--Master/texmf-dist/tex/latex/tutodoc/tutodoc.sty582
-rw-r--r--Master/texmf-dist/tex/latex/typog/typog.sty484
-rw-r--r--Master/texmf-dist/tex/latex/uantwerpendocs/beamerthemeuantwerpen.sty2
-rw-r--r--Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenbamathesis.cls2
-rw-r--r--Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpencolorlogoscheme.sty2
-rw-r--r--Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpencoursetext.cls2
-rw-r--r--Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpendocs-en.data4
-rw-r--r--Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenexam.cls2
-rw-r--r--Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenletter.cls2
-rw-r--r--Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenphdthesis.cls2
-rw-r--r--Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenreport.cls2
-rw-r--r--Master/texmf-dist/tex/latex/ucph-revy/ucph-revy.cls5
-rw-r--r--Master/texmf-dist/tex/latex/udiss/udiss.cls1868
-rw-r--r--Master/texmf-dist/tex/latex/ulthese/ulthese.cls75
-rw-r--r--Master/texmf-dist/tex/latex/unbtex/unbtex.cls85
-rw-r--r--Master/texmf-dist/tex/latex/univie-ling/univie-ling-expose.cls25
-rw-r--r--Master/texmf-dist/tex/latex/univie-ling/univie-ling-handout.cls25
-rw-r--r--Master/texmf-dist/tex/latex/univie-ling/univie-ling-paper.cls25
-rw-r--r--Master/texmf-dist/tex/latex/univie-ling/univie-ling-poster.cls8
-rw-r--r--Master/texmf-dist/tex/latex/univie-ling/univie-ling-thesis.cls119
-rw-r--r--Master/texmf-dist/tex/latex/univie-ling/univie-ling-wlg.cls38
-rw-r--r--Master/texmf-dist/tex/latex/univie-ling/univie-ling.bbx50
-rw-r--r--Master/texmf-dist/tex/latex/univie-ling/univie-ling.cbx2
-rw-r--r--Master/texmf-dist/tex/latex/ut-thesis/ut-thesis.cls21
-rw-r--r--Master/texmf-dist/tex/latex/venturis/t1yvt.fd97
-rw-r--r--Master/texmf-dist/tex/latex/venturis/t1yvtajw.fd86
-rw-r--r--Master/texmf-dist/tex/latex/venturis/t1yvtaw.fd86
-rw-r--r--Master/texmf-dist/tex/latex/venturis/t1yvtd.fd82
-rw-r--r--Master/texmf-dist/tex/latex/venturis/t1yvtj.fd86
-rw-r--r--Master/texmf-dist/tex/latex/venturis/t1yvtjw.fd86
-rw-r--r--Master/texmf-dist/tex/latex/venturis/t1yvtw.fd86
-rw-r--r--Master/texmf-dist/tex/latex/venturis/ts1yvt.fd97
-rw-r--r--Master/texmf-dist/tex/latex/venturis/ts1yvtajw.fd86
-rw-r--r--Master/texmf-dist/tex/latex/venturis/ts1yvtaw.fd86
-rw-r--r--Master/texmf-dist/tex/latex/venturis/ts1yvtd.fd78
-rw-r--r--Master/texmf-dist/tex/latex/venturis/ts1yvtj.fd86
-rw-r--r--Master/texmf-dist/tex/latex/venturis/ts1yvtjw.fd86
-rw-r--r--Master/texmf-dist/tex/latex/venturis/ts1yvtw.fd86
-rw-r--r--Master/texmf-dist/tex/latex/venturis2/t1yv2.fd84
-rw-r--r--Master/texmf-dist/tex/latex/venturis2/ts1yv2.fd84
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/t1yv1.fd163
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/t1yv1d.fd135
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/t1yv2.fd105
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/t1yv3.fd98
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/t1yvo.fd (renamed from Master/texmf-dist/tex/latex/venturisold/t1yvo.fd)27
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/t1yvoa.fd (renamed from Master/texmf-dist/tex/latex/venturisold/t1yvoa.fd)27
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/t1yvoad.fd46
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/t1yvod.fd46
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/t1yvt.fd116
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/t1yvtajw.fd103
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/t1yvtaw.fd103
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/t1yvtd.fd101
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/t1yvtj.fd103
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/t1yvtjw.fd103
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/t1yvtw.fd103
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/ts1yv1.fd163
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/ts1yv1d.fd135
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/ts1yv2.fd105
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/ts1yv3.fd98
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/ts1yvo.fd (renamed from Master/texmf-dist/tex/latex/venturisold/ts1yvo.fd)27
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/ts1yvoa.fd (renamed from Master/texmf-dist/tex/latex/venturisold/ts1yvoa.fd)27
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/ts1yvoad.fd46
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/ts1yvod.fd46
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/ts1yvt.fd116
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/ts1yvtajw.fd103
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/ts1yvtaw.fd103
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/ts1yvtd.fd97
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/ts1yvtj.fd103
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/ts1yvtjw.fd103
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/ts1yvtw.fd103
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/venturis.sty164
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/venturis2.sty121
-rw-r--r--Master/texmf-dist/tex/latex/venturisadf/venturisold.sty78
-rw-r--r--Master/texmf-dist/tex/latex/venturisold/t1yvoad.fd31
-rw-r--r--Master/texmf-dist/tex/latex/venturisold/t1yvod.fd31
-rw-r--r--Master/texmf-dist/tex/latex/venturisold/ts1yvoad.fd31
-rw-r--r--Master/texmf-dist/tex/latex/venturisold/ts1yvod.fd31
-rw-r--r--Master/texmf-dist/tex/latex/venturissans/t1yv1.fd134
-rw-r--r--Master/texmf-dist/tex/latex/venturissans/t1yv1d.fd106
-rw-r--r--Master/texmf-dist/tex/latex/venturissans/ts1yv1.fd134
-rw-r--r--Master/texmf-dist/tex/latex/venturissans/ts1yv1d.fd106
-rw-r--r--Master/texmf-dist/tex/latex/venturissans2/t1yv3.fd79
-rw-r--r--Master/texmf-dist/tex/latex/venturissans2/ts1yv3.fd79
-rw-r--r--Master/texmf-dist/tex/latex/verifycommand/verifycommand.sty194
-rw-r--r--Master/texmf-dist/tex/latex/wheelchart/wheelchart.sty330
-rw-r--r--Master/texmf-dist/tex/latex/wordle/wordle.sty864
-rw-r--r--Master/texmf-dist/tex/latex/writeongrid/WriteOnGrid.sty54
-rw-r--r--Master/texmf-dist/tex/latex/xcharter-math/xcharter-otf.sty4
-rw-r--r--Master/texmf-dist/tex/latex/xcolor/svgnam.def4
-rw-r--r--Master/texmf-dist/tex/latex/xcolor/x11nam.def4
-rw-r--r--Master/texmf-dist/tex/latex/xcolor/xcolor.sty23
-rw-r--r--Master/texmf-dist/tex/latex/xindex/xindex.sty2
-rw-r--r--Master/texmf-dist/tex/latex/xreview/xreview.sty135
-rw-r--r--Master/texmf-dist/tex/latex/zref-clever/zref-clever.sty433
-rw-r--r--Master/texmf-dist/tex/latex/zugferd/zugferd-invoice.sty193
-rw-r--r--Master/texmf-dist/tex/latex/zugferd/zugferd.sty1132
1876 files changed, 91720 insertions, 44925 deletions
diff --git a/Master/texmf-dist/tex/latex/abraces/abraces.sty b/Master/texmf-dist/tex/latex/abraces/abraces.sty
index af146826ce5..3b096e7ab77 100644
--- a/Master/texmf-dist/tex/latex/abraces/abraces.sty
+++ b/Master/texmf-dist/tex/latex/abraces/abraces.sty
@@ -1,5 +1,5 @@
%% abraces.sty
-%% Copyright 2021 Werner Grundlingh
+%% Copyright 2024 Werner Grundlingh
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
@@ -16,9 +16,12 @@
% This work consists of the file abraces.sty.
\ProvidesPackage{abraces}% http://ctan.org/pkg/abraces
- [2022/11/06 v2.1 Arbitrary and asymmetric braces]
+ [2024/08/02 v2.2 Arbitrary and asymmetric braces]
+% xparse definitions now form part of the LaTeX core. However, keeping this in for those using older versions.
\RequirePackage{xparse}
+% Since abraces defines \bracecolor, add xcolor as dependency
+\RequirePackage{xcolor}
\newif\if@overload
\DeclareOption{overload}{\@overloadtrue}
diff --git a/Master/texmf-dist/tex/latex/acmart/acmart-tagged.cls b/Master/texmf-dist/tex/latex/acmart/acmart-tagged.cls
new file mode 100644
index 00000000000..4a264e00c9d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/acmart/acmart-tagged.cls
@@ -0,0 +1,3492 @@
+%%
+%% This is file `acmart-tagged.cls',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% acmart.dtx (with options: `class,tagged')
+%%
+%% IMPORTANT NOTICE:
+%%
+%% For the copyright see the source file.
+%%
+%% Any modified versions of this file must be renamed
+%% with new filenames distinct from acmart-tagged.cls.
+%%
+%% For distribution of the original source see the terms
+%% for copying and modification in the file acmart.dtx.
+%%
+%% This generated file may be distributed as long as the
+%% original source files, as listed above, are part of the
+%% same distribution. (The sources need not necessarily be
+%% in the same archive or directory.)
+%% \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 \~}
+
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesClass{acmart-tagged}
+[2024/08/25 v2.09 Typesetting articles for the Association for Computing Machinery]
+\def\@classname{acmart-tagged}
+\InputIfFileExists{acmart-preload-hook.tex}{%
+ \ClassWarning{\@classname}{%
+ I am loading acmart-preload-hook.tex. You are fully responsible
+ for any problems from now on.}}{}
+\RequirePackage{xkeyval}
+\RequirePackage{xstring}
+\RequirePackage{iftex}
+\define@choicekey*+{\@classname.cls}{format}[\ACM@format\ACM@format@nr]{%
+ manuscript, acmsmall, acmlarge, acmtog, sigconf, siggraph,
+ sigplan, sigchi, sigchi-a, acmengage, acmcp}[manuscript]{}{%
+ \ClassError{\@classname}{The option format must be manuscript,
+ acmsmall, acmlarge, acmtog, sigconf, siggraph,
+ sigplan, sigchi or sigchi-a}}
+\def\@DeclareACMFormat#1{\DeclareOptionX{#1}{\setkeys{\@classname.cls}{format=#1}}}
+\@DeclareACMFormat{manuscript}
+\@DeclareACMFormat{acmsmall}
+\@DeclareACMFormat{acmlarge}
+\@DeclareACMFormat{acmtog}
+\@DeclareACMFormat{sigconf}
+\@DeclareACMFormat{siggraph}
+\@DeclareACMFormat{sigplan}
+\@DeclareACMFormat{sigchi}
+\@DeclareACMFormat{sigchi-a}
+\@DeclareACMFormat{acmengage}
+\@DeclareACMFormat{acmcp}
+\ExecuteOptionsX{format}
+\define@boolkey+{\@classname.cls}[@ACM@]{screen}[true]{%
+ \if@ACM@screen
+ \PackageInfo{\@classname}{Using screen mode}%
+ \else
+ \PackageInfo{\@classname}{Not using screen mode}%
+ \fi}{\PackageError{\@classname}{The option screen can be either true or
+ false}}
+\ExecuteOptionsX{screen=false}
+\define@boolkey+{\@classname.cls}[@ACM@]{urlbreakonhyphens}[true]{%
+ \if@ACM@urlbreakonhyphens
+ \PackageInfo{\@classname}{Using breaking urls on hyphens}%
+ \else
+ \PackageInfo{\@classname}{Not breaking urls on hyphens}%
+ \fi}{\PackageError{\@classname}{The option urlbreakonhyphens can be either true or
+ false}}
+\ExecuteOptionsX{urlbreakonhyphens=true}
+\define@boolkey+{\@classname.cls}[@ACM@]{acmthm}[true]{%
+ \if@ACM@acmthm
+ \PackageInfo{\@classname}{Requiring acmthm}%
+ \else
+ \PackageInfo{\@classname}{Suppressing acmthm}%
+ \fi}{\PackageError{\@classname}{The option acmthm can be either true or
+ false}}
+\ExecuteOptionsX{acmthm=true}
+\define@boolkey+{\@classname.cls}[@ACM@]{review}[true]{%
+ \if@ACM@review
+ \PackageInfo{\@classname}{Using review mode}%
+ \AtBeginDocument{\@ACM@printfoliostrue}%
+ \else
+ \PackageInfo{\@classname}{Not using review mode}%
+ \fi}{\PackageError{\@classname}{The option review can be either true or
+ false}}
+\ExecuteOptionsX{review=false}
+\define@boolkey+{\@classname.cls}[@ACM@]{authorversion}[true]{%
+ \if@ACM@authorversion
+ \PackageInfo{\@classname}{Using authorversion mode}%
+ \else
+ \PackageInfo{\@classname}{Not using authorversion mode}%
+ \fi}{\PackageError{\@classname}{The option authorversion can be either true or
+ false}}
+\ExecuteOptionsX{authorversion=false}
+\define@boolkey+{\@classname.cls}[@ACM@]{nonacm}[true]{%
+ \if@ACM@nonacm
+ \PackageInfo{\@classname}{Using nonacm mode}%
+ \AtBeginDocument{\@ACM@printacmreffalse}%
+ % in 'nonacm' mode we disable the "ACM Reference Format"
+ % printing by default, but this can be re-enabled by the
+ % user using \settopmatter{printacmref=true}
+ \else
+ \PackageInfo{\@classname}{Not using nonacm mode}%
+ \fi}{\PackageError{\@classname}{The option nonacm can be either true or
+ false}}
+\ExecuteOptionsX{nonacm=false}
+\define@boolkey+{\@classname.cls}[@ACM@]{balance}[true]{}{%
+ \PackageError{\@classname}{The option balance can be either true or
+ false}}
+\ExecuteOptionsX{balance}
+\define@boolkey+{\@classname.cls}[@ACM@]{pbalance}[true]{}{%
+ \PackageError{\@classname}{The option pbalance can be either true or
+ false}}
+\ExecuteOptionsX{pbalance=false}
+\define@boolkey+{\@classname.cls}[@ACM@]{natbib}[true]{%
+ \if@ACM@natbib
+ \PackageInfo{\@classname}{Explicitly selecting natbib mode}%
+ \else
+ \PackageInfo{\@classname}{Explicitly deselecting natbib mode}%
+ \fi}{\PackageError{\@classname}{The option natbib can be either true or
+ false}}
+\ExecuteOptionsX{natbib=true}
+\define@boolkey+{\@classname.cls}[@ACM@]{anonymous}[true]{%
+ \if@ACM@anonymous
+ \PackageInfo{\@classname}{Using anonymous mode}%
+ \else
+ \PackageInfo{\@classname}{Not using anonymous mode}%
+ \fi}{\PackageError{\@classname}{The option anonymous can be either true or
+ false}}
+\ExecuteOptionsX{anonymous=false}
+\define@boolkey+{\@classname.cls}[@ACM@]{timestamp}[true]{%
+ \if@ACM@timestamp
+ \PackageInfo{\@classname}{Using timestamp mode}%
+ \else
+ \PackageInfo{\@classname}{Not using timestamp mode}%
+ \fi}{\PackageError{\@classname}{The option timestamp can be either true or
+ false}}
+\ExecuteOptionsX{timestamp=false}
+\define@boolkey+{\@classname.cls}[@ACM@]{authordraft}[true]{%
+ \if@ACM@authordraft
+ \PackageInfo{\@classname}{Using authordraft mode}%
+ \@ACM@timestamptrue
+ \@ACM@reviewtrue
+ \else
+ \PackageInfo{\@classname}{Not using authordraft mode}%
+ \fi}{\PackageError{\@classname}{The option authordraft can be either true or
+ false}}
+\ExecuteOptionsX{authordraft=false}
+\def\ACM@fontsize{}
+\DeclareOptionX{8pt}{\edef\ACM@fontsize{\CurrentOption}}
+\DeclareOptionX{9pt}{\edef\ACM@fontsize{\CurrentOption}}
+\DeclareOptionX{10pt}{\edef\ACM@fontsize{\CurrentOption}}
+\DeclareOptionX{11pt}{\edef\ACM@fontsize{\CurrentOption}}
+\DeclareOptionX{12pt}{\edef\ACM@fontsize{\CurrentOption}}
+\def\ACM@languages{}
+\DeclareOptionX{language}{%
+ \ifx\ACM@languages\@empty
+ \gdef\ACM@languages{english}\fi
+ \g@addto@macro\ACM@languages{, #1}}
+\DeclareOptionX{draft}{\PassOptionsToClass{\CurrentOption}{amsart}}
+\DeclareOptionX{*}{\PassOptionsToClass{\CurrentOption}{amsart}}
+\ProcessOptionsX
+\ClassInfo{\@classname}{Using format \ACM@format, number \ACM@format@nr}
+\newif\if@ACM@manuscript
+\newif\if@ACM@journal
+\newif\if@ACM@journal@bibstrip
+\newif\if@ACM@journal@bibstrip@or@tog
+\newif\if@ACM@sigchiamode
+\newif\if@ACM@engage
+\@ACM@engagefalse
+\newif\if@ACM@acmcp
+\@ACM@acmcpfalse
+\ifnum\ACM@format@nr=5\relax % siggraph
+\ClassWarning{\@classname}{%
+ The format siggraph is now obsolete.\MessageBreak
+ I am switching to sigconf.}
+ \setkeys{\@classname.cls}{format=sigconf}
+\fi
+\ifnum\ACM@format@nr=7\relax % sigchi
+\ClassWarning{\@classname}{%
+ The format sigchi is now obsolete.\MessageBreak
+ I am switching to sigconf.}
+ \setkeys{\@classname.cls}{format=sigconf}
+\fi
+\ifnum\ACM@format@nr=8\relax % sigchi
+\ClassWarning{\@classname}{%
+ ACM SIGCHI has retired the SIGCHI-A template\MessageBreak
+ effective immediately. ACM is keeping this template\MessageBreak
+ option available to authors who are working on legacy\MessageBreak
+ documents only. ACM will not, under any circumstances,\MessageBreak
+ accept documents in this format for publication and\MessageBreak
+ will not offer technical support to the authors who use\MessageBreak
+ this template.\MessageBreak
+ ACM SIGCHI is directing Conference leaders and\MessageBreak
+ authors to publish their articles using the SIGCONF\MessageBreak
+ template call.}
+\fi
+\ifnum\ACM@format@nr=0\relax
+ \@ACM@manuscripttrue
+\else
+ \@ACM@manuscriptfalse
+\fi
+\@ACM@sigchiamodefalse
+\ifcase\ACM@format@nr
+\relax % manuscript
+ \@ACM@journaltrue
+\or % acmsmall
+ \@ACM@journaltrue
+\or % acmlarge
+ \@ACM@journaltrue
+\or % acmtog
+ \@ACM@journaltrue
+ \@ACM@journal@bibstrip@or@togtrue
+\or % sigconf
+ \@ACM@journalfalse
+\or % siggraph
+ \@ACM@journalfalse
+ \or % sigplan
+ \@ACM@journalfalse
+ \or % sigchi
+ \@ACM@journalfalse
+\or % sigchi-a
+ \@ACM@journalfalse
+ \@ACM@sigchiamodetrue
+\or % acmengage
+ \@ACM@journalfalse
+ \@ACM@engagetrue
+\or % acmcp
+ \@ACM@journaltrue
+ \@ACM@acmcptrue
+ \AtBeginDocument{\@ACM@printacmreffalse}%
+\fi
+\if@ACM@journal
+ \@ACM@journal@bibstriptrue
+ \@ACM@journal@bibstrip@or@togtrue
+\else
+ \@ACM@journal@bibstripfalse
+\fi
+\let\@startsection@kernel\@startsection
+\let\@xsect@kernel\@xsect
+\let\@sect@kernel\@sect
+\let\@ssect@kernel\@ssect
+\ifx\ACM@fontsize\@empty
+ \ifcase\ACM@format@nr
+ \relax % manuscript
+ \def\ACM@fontsize{9pt}%
+ \or % acmsmall
+ \def\ACM@fontsize{10pt}%
+ \or % acmlarge
+ \def\ACM@fontsize{10pt}%
+ \or % acmtog
+ \def\ACM@fontsize{9pt}%
+ \or % sigconf
+ \def\ACM@fontsize{9pt}%
+ \or % siggraph
+ \def\ACM@fontsize{9pt}%
+ \or % sigplan
+ \def\ACM@fontsize{10pt}%
+ \or % sigchi
+ \def\ACM@fontsize{9pt}%
+ \or % sigchi-a
+ \def\ACM@fontsize{10pt}%
+ \or % acmengage
+ \def\ACM@fontsize{10pt}%
+ \or % acmcp
+ \def\ACM@fontsize{9pt}%
+ \fi
+\fi
+\ClassInfo{\@classname}{Using fontsize \ACM@fontsize}
+\LoadClass[\ACM@fontsize, reqno]{amsart}
+\RequirePackage{microtype}
+\RequirePackage{etoolbox}
+\RequirePackage{booktabs}
+\RequirePackage{refcount}
+\RequirePackage{totpages}
+\RequirePackage{environ}
+\if@ACM@manuscript
+\RequirePackage{setspace}
+\onehalfspacing
+\fi
+\RequirePackage{textcase}
+\if@ACM@acmcp
+\RequirePackage{framed}
+\RequirePackage{zref-savepos, zref-user}
+\fi
+\newdimen\@ACM@acmcp@delta
+\@ACM@acmcp@delta=0pt\relax
+\if@ACM@natbib
+ \RequirePackage{natbib}
+ \renewcommand{\bibsection}{%
+ \section*{\refname}%
+ \phantomsection\addcontentsline{toc}{section}{\refname}%
+ }
+ \renewcommand{\bibfont}{\bibliofont}
+ \renewcommand\setcitestyle[1]{
+ \@for\@tempa:=#1\do
+ {\def\@tempb{round}\ifx\@tempa\@tempb
+ \renewcommand\NAT@open{(}\renewcommand\NAT@close{)}\fi
+ \def\@tempb{square}\ifx\@tempa\@tempb
+ \renewcommand\NAT@open{[}\renewcommand\NAT@close{]}\fi
+ \def\@tempb{angle}\ifx\@tempa\@tempb
+ \renewcommand\NAT@open{$<$}\renewcommand\NAT@close{$>$}\fi
+ \def\@tempb{curly}\ifx\@tempa\@tempb
+ \renewcommand\NAT@open{\{}\renewcommand\NAT@close{\}}\fi
+ \def\@tempb{semicolon}\ifx\@tempa\@tempb
+ \renewcommand\NAT@sep{;}\fi
+ \def\@tempb{colon}\ifx\@tempa\@tempb
+ \renewcommand\NAT@sep{;}\fi
+ \def\@tempb{comma}\ifx\@tempa\@tempb
+ \renewcommand\NAT@sep{,}\fi
+ \def\@tempb{authoryear}\ifx\@tempa\@tempb
+ \NAT@numbersfalse\fi
+ \def\@tempb{numbers}\ifx\@tempa\@tempb
+ \NAT@numberstrue\NAT@superfalse\fi
+ \def\@tempb{super}\ifx\@tempa\@tempb
+ \NAT@numberstrue\NAT@supertrue\fi
+ \def\@tempb{nobibstyle}\ifx\@tempa\@tempb
+ \let\bibstyle=\@gobble\fi
+ \def\@tempb{bibstyle}\ifx\@tempa\@tempb
+ \let\bibstyle=\@citestyle\fi
+ \def\@tempb{sort}\ifx\@tempa\@tempb
+ \def\NAT@sort{\@ne}\fi
+ \def\@tempb{nosort}\ifx\@tempa\@tempb
+ \def\NAT@sort{\z@}\fi
+ \def\@tempb{compress}\ifx\@tempa\@tempb
+ \def\NAT@cmprs{\@ne}\fi
+ \def\@tempb{nocompress}\ifx\@tempa\@tempb
+ \def\NAT@cmprs{\z@}\fi
+ \def\@tempb{sort&compress}\ifx\@tempa\@tempb
+ \def\NAT@sort{\@ne}\def\NAT@cmprs{\@ne}\fi
+ \def\@tempb{mcite}\ifx\@tempa\@tempb
+ \let\NAT@merge\@ne\fi
+ \def\@tempb{merge}\ifx\@tempa\@tempb
+ \@ifnum{\NAT@merge<\tw@}{\let\NAT@merge\tw@}{}\fi
+ \def\@tempb{elide}\ifx\@tempa\@tempb
+ \@ifnum{\NAT@merge<\thr@@}{\let\NAT@merge\thr@@}{}\fi
+ \def\@tempb{longnamesfirst}\ifx\@tempa\@tempb
+ \NAT@longnamestrue\fi
+ \def\@tempb{nonamebreak}\ifx\@tempa\@tempb
+ \def\NAT@nmfmt#1{\mbox{\NAT@up#1}}\fi
+ \expandafter\NAT@find@eq\@tempa=\relax\@nil
+ \if\@tempc\relax\else
+ \expandafter\NAT@rem@eq\@tempc
+ \def\@tempb{open}\ifx\@tempa\@tempb
+ \xdef\NAT@open{\@tempc}\fi
+ \def\@tempb{close}\ifx\@tempa\@tempb
+ \xdef\NAT@close{\@tempc}\fi
+ \def\@tempb{aysep}\ifx\@tempa\@tempb
+ \xdef\NAT@aysep{\@tempc}\fi
+ \def\@tempb{yysep}\ifx\@tempa\@tempb
+ \xdef\NAT@yrsep{\@tempc}\fi
+ \def\@tempb{notesep}\ifx\@tempa\@tempb
+ \xdef\NAT@cmt{\@tempc}\fi
+ \def\@tempb{citesep}\ifx\@tempa\@tempb
+ \xdef\NAT@sep{\@tempc}\fi
+ \fi
+ }%
+ \NAT@@setcites
+ }
+ \renewcommand\citestyle[1]{%
+ \ifcsname bibstyle@#1\endcsname%
+ \csname bibstyle@#1\endcsname\let\bibstyle\@gobble%
+ \else%
+ \@latex@error{Undefined `#1' citestyle}%
+ \fi
+ }%
+\fi
+\newcommand{\bibstyle@acmauthoryear}{%
+ \setcitestyle{%
+ authoryear,%
+ open={[},close={]},citesep={;},%
+ aysep={},yysep={,},%
+ notesep={, }}}
+\newcommand{\bibstyle@acmnumeric}{%
+ \setcitestyle{%
+ numbers,sort&compress,%
+ open={[},close={]},citesep={,},%
+ notesep={, }}}
+\if@ACM@natbib
+\citestyle{acmnumeric}
+\fi
+\if@ACM@journal
+ \renewcommand\keywordsname{Additional Key Words and Phrases}%
+\else
+ \renewcommand\keywordsname{Keywords}%
+\fi
+\if@ACM@engage
+ \renewcommand\abstractname{Synopsis}%
+\fi
+\ifx\ACM@languages\@empty
+\else
+ \RequirePackage[\ACM@languages]{babel}%
+ \addto\captionsenglish{%
+ \if@ACM@journal
+ \renewcommand\keywordsname{Additional Key Words and Phrases}%
+ \else
+ \renewcommand\keywordsname{Keywords}%
+ \fi
+ \renewcommand\acksname{Acknowledgements}%
+ \if@ACM@engage
+ \renewcommand\abstractname{Synopsis}%
+ \fi
+ }%
+ \addto\captionsfrench{%
+ \if@ACM@journal
+ \renewcommand\keywordsname{Mots Clés et Phrases Supplémentaires}%
+ \else
+ \renewcommand\keywordsname{Mots clés}%
+ \fi
+ \renewcommand\acksname{Remerciements}%
+ }%
+ \addto\captionsgerman{%
+ \if@ACM@journal
+ \renewcommand\keywordsname{Zusätzliche Schlagwörter und Phrasen}%
+ \else
+ \renewcommand\keywordsname{Schlagwörter}%
+ \fi
+ \renewcommand\acksname{Danksagungen}%
+ }%
+ \addto\captionsspanish{%
+ \if@ACM@journal
+ \renewcommand\keywordsname{Palabras y Frases Claves Adicionales}%
+ \else
+ \renewcommand\keywordsname{Palabras claves}%
+ \fi
+ \renewcommand\acksname{Expresiones de gratitud}%
+ }%
+\fi
+\newcommand\ACM@lang@check[1]{%
+ \ifx\ACM@languages\@empty\relax
+ \ClassError{\@classname}{%
+ Command \string#1 \MessageBreak is used in monlingual document}{%
+ You used a command (\string#1) \MessageBreak
+ that does not have a meaning \MessageBreak
+ unless are languages are defined. \MessageBreak
+ Please choose the languages in \string\documentclass
+ \MessageBreak
+ (e.g. \string\documentclass[languages={french, english}]{acmart}),
+ \MessageBreak
+ or delete the command.}%
+ \fi}
+\def\@translatedtitle{}
+\newcommand\translatedtitle[2]{\ACM@lang@check{\translatedtitle}%
+\g@addto@macro\@translatedtitle{\par\foreignlanguage{#1}{#2}}}
+\def\@translatedsubtitle{}
+\newcommand\translatedsubtitle[2]{\ACM@lang@check{\translatedsubtitle}%
+\g@addto@macro\@translatedsubtitle{\par\foreignlanguage{#1}{#2}}}
+\def\@translatedkeywords{}
+\newcommand\translatedkeywords[2]{\ACM@lang@check{\translatedkeywords}%
+\g@addto@macro\@translatedkeywords{\@mktranslatedkeywords{#1}{#2}}}
+\def\@translatedabstracts{}
+\newenvironment{translatedabstract}[1]{\Collect@Body
+ \@savetranslatedabstract\@mktranslatedabstract{#1}}{}
+\long\def\@savetranslatedabstract#1{\if@ACM@maketitle@typeset
+ \ClassError{\@classname}{Abstract must be defined before maketitle
+ command. Please move it!}\fi
+ \ACM@lang@check{translatedabstract}%
+ \g@addto@macro\@translatedabstracts{\bgroup#1\egroup}}
+\let\@startsection\@startsection@kernel
+\let\@sect\@sect@kernel
+\let\@ssect\@ssect@kernel
+\let\@xsect\@xsect@kernel
+\def\@seccntformat#1{\csname the#1\endcsname\quad}
+\def\@starttoc#1#2{\begingroup\makeatletter
+ \setTrue{#1}%
+ \par\removelastskip\vskip\z@skip
+ \@startsection{section}\@M\z@{\linespacing\@plus\linespacing}%
+ {.5\linespacing}{\centering\contentsnamefont}{#2}%
+\@starttoc@cfgpoint@before{#1}%NEW<<<<<<<<<< (name will change)
+ \@input{\jobname.#1}%
+\@starttoc@cfgpoint@after{#1}%NEW<<<<<<<<<<<< (name will change)
+ \if@filesw
+ \@xp\newwrite\csname tf@#1\endcsname
+ \immediate\@xp\openout\csname tf@#1\endcsname \jobname.#1\relax
+ \fi
+ \global\@nobreakfalse \endgroup
+ \addvspace{32\p@\@plus14\p@}%
+}
+\def\l@section{\@tocline{1}{0pt}{1pc}{2pc}{}}
+\def\l@subsection{\@tocline{2}{0pt}{1pc}{3pc}{}}
+\def\l@subsubsection{\@tocline{3}{0pt}{1pc}{5pc}{}}
+\def\@makefntext{\noindent\@makefnmark}
+\if@ACM@sigchiamode
+\long\def\@footnotetext#1{\marginpar{%
+ \reset@font\small
+ \interlinepenalty\interfootnotelinepenalty
+ \protected@edef\@currentlabel{%
+ \csname p@footnote\endcsname\@thefnmark
+ }%
+ \color@begingroup
+ \@makefntext{%
+ \rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox}%
+ \color@endgroup}}%
+\fi
+\long\def\@mpfootnotetext#1{%
+ \global\setbox\@mpfootins\vbox{%
+ \unvbox\@mpfootins
+ \reset@font\footnotesize
+ \hsize\columnwidth
+ \@parboxrestore
+ \protected@edef\@currentlabel
+ {\csname p@mpfootnote\endcsname\@thefnmark}%
+ \color@begingroup\centering
+ \@makefntext{%
+ \rule\z@\footnotesep\ignorespaces#1\@finalstrut\strutbox}%
+ \color@endgroup}}
+\def\@makefnmark{\hbox{\@textsuperscript{\normalfont\@thefnmark}}}
+\let\@footnotemark@nolink\@footnotemark
+\let\@footnotetext@nolink\@footnotetext
+\RequirePackage[bookmarksnumbered,unicode]{hyperref}
+\RequirePackage{hyperxmp}
+\pdfstringdefDisableCommands{%
+ \def\addtocounter#1#2{}%
+ \def\unskip{}%
+ \def\textbullet{- }%
+ \def\textrightarrow{ -> }%
+ \def\footnotemark{}%
+}
+\urlstyle{rm}
+\ifcase\ACM@format@nr
+\relax % manuscript
+\or % acmsmall
+\or % acmlarge
+\or % acmtog
+\or % sigconf
+\or % siggraph
+\or % sigplan
+ \urlstyle{sf}
+\or % sigchi
+\or % sigchi-a
+ \urlstyle{sf}
+\or % acmengage
+\or % acmcp
+\fi
+\AtEndPreamble{%
+ \if@ACM@urlbreakonhyphens
+ \def\do@url@hyp{\do\-}%
+ \fi
+ \if@ACM@screen
+ \hypersetup{colorlinks,
+ linkcolor=ACMPurple,
+ citecolor=ACMPurple,
+ urlcolor=ACMDarkBlue,
+ filecolor=ACMDarkBlue}
+ \else
+ \hypersetup{hidelinks}
+ \fi
+ \hypersetup{pdflang={en},
+ pdfdisplaydoctitle}}
+\if@ACM@natbib
+ \let\citeN\cite
+ \let\cite\citep
+ \let\citeANP\citeauthor
+ \let\citeNN\citeyearpar
+ \let\citeyearNP\citeyear
+ \let\citeNP\citealt
+ \DeclareRobustCommand\citeA
+ {\begingroup\NAT@swafalse
+ \let\NAT@ctype\@ne\NAT@partrue\NAT@fullfalse\NAT@open\NAT@citetp}%
+ \providecommand\newblock{}%
+\else
+ \AtBeginDocument{%
+ \let\shortcite\cite%
+ \providecommand\citename[1]{#1}}
+\fi
+\newcommand\shortcite[2][]{%
+ \ifNAT@numbers\cite[#1]{#2}\else\citeyearpar[#1]{#2}\fi}
+\def\bibliographystyle#1{%
+ \ifx\@begindocumenthook\@undefined\else
+ \expandafter\AtBeginDocument
+ \fi
+ {\if@filesw
+ \immediate\write\@auxout{\string\bibstyle{#1}}%
+ \fi}}
+\RequirePackage{graphicx}
+\RequirePackage[prologue]{xcolor}
+\definecolor[named]{ACMBlue}{cmyk}{1,0.1,0,0.1}
+\definecolor[named]{ACMYellow}{cmyk}{0,0.16,1,0}
+\definecolor[named]{ACMOrange}{cmyk}{0,0.42,1,0.01}
+\definecolor[named]{ACMRed}{cmyk}{0,0.90,0.86,0}
+\definecolor[named]{ACMLightBlue}{cmyk}{0.49,0.01,0,0}
+\definecolor[named]{ACMGreen}{cmyk}{0.20,0,1,0.19}
+\definecolor[named]{ACMPurple}{cmyk}{0.55,1,0,0.15}
+\definecolor[named]{ACMDarkBlue}{cmyk}{1,0.58,0,0.21}
+\if@ACM@authordraft
+ \RequirePackage{draftwatermark}
+ \SetWatermarkFontSize{0.5in}
+ \SetWatermarkColor[gray]{.9}
+ \SetWatermarkText{\parbox{12em}{\centering
+ Unpublished working draft.\\
+ Not for distribution.}}
+\else
+ \if@ACM@sigchiamode
+ \if@ACM@nonacm\else
+ \RequirePackage{draftwatermark}
+ \SetWatermarkFontSize{0.5in}
+ \SetWatermarkColor[gray]{.9}
+ \SetWatermarkText{\parbox{12em}{\centering
+ Legacy document. \\
+ Not for publication in an ACM venue}}
+ \fi
+ \fi
+\fi
+\RequirePackage{geometry}
+\ifcase\ACM@format@nr
+\relax % manuscript
+ \geometry{letterpaper,head=13pt,
+ marginparwidth=6pc,heightrounded}%
+\or % acmsmall
+ \geometry{twoside=true,
+ includeheadfoot, head=13pt, foot=2pc,
+ paperwidth=6.75in, paperheight=10in,
+ top=58pt, bottom=44pt, inner=46pt, outer=46pt,
+ marginparwidth=2pc,heightrounded
+ }%
+\or % acmlarge
+ \geometry{twoside=true, head=13pt, foot=2pc,
+ paperwidth=8.5in, paperheight=11in,
+ includeheadfoot,
+ top=78pt, bottom=114pt, inner=81pt, outer=81pt,
+ marginparwidth=4pc,heightrounded
+ }%
+\or % acmtog
+ \geometry{twoside=true, head=13pt, foot=2pc,
+ paperwidth=8.5in, paperheight=11in,
+ includeheadfoot, columnsep=24pt,
+ top=52pt, bottom=75pt, inner=52pt, outer=52pt,
+ marginparwidth=2pc,heightrounded
+ }%
+\or % sigconf
+ \geometry{twoside=true, head=13pt,
+ paperwidth=8.5in, paperheight=11in,
+ includeheadfoot, columnsep=2pc,
+ top=57pt, bottom=73pt, inner=54pt, outer=54pt,
+ marginparwidth=2pc,heightrounded
+ }%
+\or % siggraph
+ \geometry{twoside=true, head=13pt,
+ paperwidth=8.5in, paperheight=11in,
+ includeheadfoot, columnsep=2pc,
+ top=57pt, bottom=73pt, inner=54pt, outer=54pt,
+ marginparwidth=2pc,heightrounded
+ }%
+\or % sigplan
+ \geometry{twoside=true, head=13pt,
+ paperwidth=8.5in, paperheight=11in,
+ includeheadfoot=false, columnsep=2pc,
+ top=1in, bottom=1in, inner=0.75in, outer=0.75in,
+ marginparwidth=2pc,heightrounded
+ }%
+\or % sigchi
+ \geometry{twoside=true, head=13pt,
+ paperwidth=8.5in, paperheight=11in,
+ includeheadfoot, columnsep=2pc,
+ top=66pt, bottom=73pt, inner=54pt, outer=54pt,
+ marginparwidth=2pc,heightrounded
+ }%
+\or % sigchi-a
+ \geometry{twoside=false, head=13pt,
+ paperwidth=11in, paperheight=8.5in,
+ includeheadfoot, marginparsep=72pt,
+ marginparwidth=170pt, columnsep=20pt,
+ top=72pt, bottom=72pt, left=314pt, right=72pt
+ }%
+ \@mparswitchfalse
+ \reversemarginpar
+\or % acmengage
+ \geometry{twoside=true, head=13pt,
+ paperwidth=8.5in, paperheight=11in,
+ includeheadfoot, columnsep=2pc,
+ top=57pt, bottom=73pt, inner=54pt, outer=54pt,
+ marginparwidth=2pc,heightrounded
+ }%
+\or % acmcp
+ \geometry{twoside=true,
+ includeheadfoot, head=13pt, foot=2pc,
+ paperwidth=6.75in, paperheight=10in,
+ top=58pt, bottom=44pt, inner=46pt, outer=46pt,
+ marginparwidth=2pc,heightrounded
+ }%
+\fi
+\setlength\parindent{10\p@}
+\setlength\parskip{\z@}
+\ifcase\ACM@format@nr
+\relax % manuscript
+\or % acmsmall
+\or % acmlarge
+\or % acmtog
+ \setlength\parindent{9\p@}%
+\or % sigconf
+\or % siggraph
+\or % sigplan
+\or % sigchi
+\or % sigchi-a
+\or % acmengage
+\or % acmcp
+\fi
+\setlength\normalparindent{\parindent}
+\def\copyrightpermissionfootnoterule{\kern-3\p@
+ \hrule \@width \columnwidth \kern 2.6\p@}
+\RequirePackage{manyfoot}
+\SelectFootnoteRule[2]{copyrightpermission}
+\DeclareNewFootnote{authorsaddresses}
+\SelectFootnoteRule[2]{copyrightpermission}
+\DeclareNewFootnote{copyrightpermission}
+\def\footnoterule{\kern-3\p@
+ \hrule \@width 4pc \kern 2.6\p@}
+\def\endminipage{%
+ \par
+ \unskip
+ \ifvoid\@mpfootins\else
+ \vskip\skip\@mpfootins
+ \normalcolor
+ \unvbox\@mpfootins
+ \fi
+ \@minipagefalse
+ \color@endgroup
+ \egroup
+ \expandafter\@iiiparbox\@mpargs{\unvbox\@tempboxa}}
+\def\@textbottom{\vskip \z@ \@plus 1pt}
+\let\@texttop\relax
+\ifcase\ACM@format@nr
+\relax % manuscript
+\or % acmsmall
+\or % acmlarge
+\or % acmtog
+ \flushbottom
+\or % sigconf
+ \flushbottom
+\or % siggraph
+ \flushbottom
+\or % sigplan
+ \flushbottom
+\or % sigchi
+ \flushbottom
+\or % sigchi-a
+\or % acmengage
+ \flushbottom
+\or % acmcp
+ \flushbottom
+\fi
+\ifPDFTeX
+\input{glyphtounicode}
+\pdfglyphtounicode{f_f}{FB00}
+\pdfglyphtounicode{f_f_i}{FB03}
+\pdfglyphtounicode{f_f_l}{FB04}
+\pdfglyphtounicode{f_i}{FB01}
+\pdfglyphtounicode{t_t}{0074 0074}
+\pdfglyphtounicode{f_t}{0066 0074}
+\pdfglyphtounicode{T_h}{0054 0068}
+\pdfgentounicode=1
+\RequirePackage{cmap}
+\fi
+\newif\if@ACM@newfonts
+\@ACM@newfontstrue
+\IfFileExists{libertine.sty}{}{\ClassWarning{\@classname}{You do not
+ have the libertine package installed. Please upgrade your
+ TeX}\@ACM@newfontsfalse}
+\IfFileExists{zi4.sty}{}{\ClassWarning{\@classname}{You do not
+ have the inconsolata (zi4.sty) package installed. Please upgrade your
+ TeX}\@ACM@newfontsfalse}
+\IfFileExists{newtxmath.sty}{}{\ClassWarning{\@classname}{You do not
+ have the newtxmath package installed. Please upgrade your
+ TeX}\@ACM@newfontsfalse}
+\if@ACM@newfonts
+ \RequirePackage[T1]{fontenc}
+ % Note that the order in which packages are loaded matters,
+ % and the correct order depends on the LaTeX engine used.
+ % See https://github.com/borisveytsman/acmart/issues/402
+ % and https://github.com/borisveytsman/acmart/issues/410
+ \ifxetex
+ \RequirePackage[libertine]{newtxmath}
+ \RequirePackage[tt=false]{libertine}
+ \setmonofont[StylisticSet=3]{inconsolata}
+ \else
+ \ifluatex
+ \RequirePackage[libertine]{newtxmath}
+ \RequirePackage[tt=false]{libertine}
+ \setmonofont[StylisticSet=3]{inconsolata}
+ \else
+ \RequirePackage[tt=false, type1=true]{libertine}
+ \RequirePackage[varqu]{zi4}
+ \RequirePackage[libertine]{newtxmath}
+ \fi
+ \fi
+\fi
+\let\liningnums\@undefined
+\AtEndPreamble{%
+ \DeclareTextFontCommand{\liningnums}{\libertineLF}}
+\if@ACM@sigchiamode
+ \renewcommand{\familydefault}{\sfdefault}
+\fi
+\newif\if@Description@present
+\@Description@presenttrue
+\newif\if@undescribed@images
+\@undescribed@imagesfalse
+\newcommand\Description[2][]{\global\@Description@presenttrue\ignorespaces}
+\AtEndDocument{\if@undescribed@images
+ \ClassWarningNoLine{\@classname}{Some images may lack descriptions}\fi}
+\AtBeginEnvironment{figure}{\@Description@presentfalse
+ \let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig}
+\AtBeginEnvironment{figure*}{\@Description@presentfalse
+ \let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig}
+\AtEndEnvironment{figure}{\if@Description@present\else
+ \global\@undescribed@imagestrue
+ \ClassWarning{\@classname}{A possible image without description}\fi}
+\AtEndEnvironment{figure*}{\if@Description@present\else
+ \global\@undescribed@imagestrue
+ \ClassWarning{\@classname}{A possible image without description}\fi}
+\AtBeginEnvironment{table}{\let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig}
+\AtBeginEnvironment{table*}{\let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig}
+\AtBeginEnvironment{algorithm}{\let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig}
+\AtBeginEnvironment{algorithm*}{\let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig}
+\AtBeginEnvironment{lstlisting}{\let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig}
+\AtBeginEnvironment{lstlisting*}{\let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig}
+\AtBeginEnvironment{minted}{\let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig}
+\AtBeginEnvironment{minted*}{\let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig}
+\AtBeginEnvironment{listing}{\let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig}
+\AtBeginEnvironment{listing*}{\let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig}
+
+\RequirePackage{caption, float}
+\captionsetup[table]{position=top}
+\if@ACM@journal
+ \captionsetup{labelfont={sf, small},
+ textfont={sf, small}, margin=\z@}
+ \captionsetup[figure]{name={Fig.}}
+\else
+ \captionsetup{labelfont={bf},
+ textfont={bf}, labelsep=colon, margin=\z@}
+ \ifcase\ACM@format@nr
+ \relax % manuscript
+ \or % acmsmall
+ \or % acmlarge
+ \or % acmtog
+ \or % sigconf
+ \or % siggraph
+ \captionsetup{textfont={it}}
+ \or % sigplan
+ \captionsetup{labelfont={bf},
+ textfont={normalfont}, labelsep=period, margin=\z@}
+ \or % sigchi
+ \captionsetup[figure]{labelfont={bf, small},
+ textfont={bf, small}}
+ \captionsetup[table]{labelfont={bf, small},
+ textfont={bf, small}}
+ \or % sigchi-a
+ \captionsetup[figure]{labelfont={bf, small},
+ textfont={bf, small}}
+ \captionsetup[table]{labelfont={bf, small},
+ textfont={bf, small}}
+ \or % acmengage
+ \or % acmcp
+ \fi
+\fi
+\newfloat{sidebar}{}{sbar}
+\floatname{sidebar}{Sidebar}
+\renewenvironment{sidebar}{\Collect@Body\@sidebar}{}
+\long\def\@sidebar#1{\bgroup\let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig\captionsetup{type=sidebar}%
+ \marginpar{\small#1}\egroup}
+\newenvironment{marginfigure}{\Collect@Body\@marginfigure}{}
+\long\def\@marginfigure#1{\bgroup
+ \let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig
+ \captionsetup{type=figure}%
+ \marginpar{\@Description@presentfalse\centering
+ \small#1\if@Description@present\else
+ \global\@undescribed@imagestrue
+ \ClassWarning{\@classname}{A possible image without description}
+ \fi}%
+ \egroup}
+\newenvironment{margintable}{\Collect@Body\@margintable}{}
+\long\def\@margintable#1{\bgroup\let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig\captionsetup{type=table}%
+ \marginpar{\centering\small#1}\egroup}
+\newdimen\fulltextwidth
+\fulltextwidth=\dimexpr(\textwidth+\marginparwidth+\marginparsep)
+\if@ACM@sigchiamode
+\def\@dblfloat{\bgroup\let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig\columnwidth=\fulltextwidth
+ \let\@endfloatbox\@endwidefloatbox
+ \def\@fpsadddefault{\def\@fps{tp}}%
+ \@float}
+\fi
+\if@ACM@sigchiamode
+\def\end@dblfloat{%
+ \end@float\egroup}
+\fi
+\def\@endwidefloatbox{%
+ \par\vskip\z@skip
+ \@minipagefalse
+ \outer@nobreak
+ \egroup
+ \color@endbox
+ \global\setbox\@currbox=\vbox{\moveleft
+ \dimexpr(\fulltextwidth-\textwidth)\box\@currbox}%
+ \wd\@currbox=\textwidth
+}
+\ifcase\ACM@format@nr
+\relax % manuscript
+\or % acmsmall
+\or % acmlarge
+\or % acmtog
+\or % sigconf
+\or % siggraph
+\or % sigplan
+\def\labelenumi{\theenumi.}
+\def\labelenumii{\theenumii.}
+\def\labelenumiii{\theenumiii.}
+\def\labelenumiv{\theenumiv.}
+\or % sigchi
+\or % sigchi-a
+\or % acmengage
+\or % acmcp
+\fi
+\newdimen\@ACM@labelwidth
+\AtBeginDocument{%
+ \setlength\labelsep{4pt}
+ \setlength{\@ACM@labelwidth}{6.5pt}
+
+ %% First-level list: when beginning after the first line of an
+ %% indented paragraph or ending before an indented paragraph, labels
+ %% should not hang to the left of the preceding/following text.
+ \setlength\leftmargini{\z@}
+ \addtolength\leftmargini{\parindent}
+ \addtolength\leftmargini{2\labelsep}
+ \addtolength\leftmargini{\@ACM@labelwidth}
+
+ %% Second-level and higher lists.
+ \setlength\leftmarginii{\z@}
+ \addtolength\leftmarginii{0.5\labelsep}
+ \addtolength\leftmarginii{\@ACM@labelwidth}
+ \setlength\leftmarginiii{\leftmarginii}
+ \setlength\leftmarginiv{\leftmarginiii}
+ \setlength\leftmarginv{\leftmarginiv}
+ \setlength\leftmarginvi{\leftmarginv}
+ \@listi}
+\newskip\listisep
+\listisep\smallskipamount
+\def\@listI{\leftmargin\leftmargini
+ \labelwidth\leftmargini \advance\labelwidth-\labelsep
+ \listparindent\z@
+ \topsep\listisep}
+\let\@listi\@listI
+\def\@listii{\leftmargin\leftmarginii
+ \labelwidth\leftmarginii \advance\labelwidth-\labelsep
+ \topsep\z@skip}
+\def\@listiii{\leftmargin\leftmarginiii
+ \labelwidth\leftmarginiii \advance\labelwidth-\labelsep}
+\def\@listiv{\leftmargin\leftmarginiv
+ \labelwidth\leftmarginiv \advance\labelwidth-\labelsep}
+\def\@listv{\leftmargin\leftmarginv
+ \labelwidth\leftmarginv \advance\labelwidth-\labelsep}
+\def\@listvi{\leftmargin\leftmarginvi
+ \labelwidth\leftmarginvi \advance\labelwidth-\labelsep}
+\renewcommand{\descriptionlabel}[1]{\upshape\bfseries #1}
+\renewenvironment{description}{\list{}{%
+ \labelwidth\@ACM@labelwidth
+ \let\makelabel\descriptionlabel}%
+}{
+ \endlist
+}
+\let\enddescription=\endlist % for efficiency
+\newif\if@ACM@maketitle@typeset
+\@ACM@maketitle@typesetfalse
+\define@choicekey*+{ACM}{acmJournal}[\@journalCode\@journalCode@nr]{%
+ ACMJCSS,%
+ CIE,%
+ CSUR,%
+ DGOV,%
+ DLT,%
+ DTRAP,%
+ FAC,%
+ GAMES,%
+ HEALTH,%
+ IMWUT,%
+ JACM,%
+ JATS,%
+ JDIQ,%
+ JDS,%
+ JEA,%
+ JERIC,%
+ JETC,%
+ JOCCH,%
+ JRC,%
+ PACMCGIT,%
+ PACMHCI,%
+ PACMMOD,%
+ PACMNET,%
+ PACMPL,%
+ PACMSE,%
+ POMACS,%
+ TAAS,%
+ TACCESS,%
+ TACO,%
+ TALG,%
+ TALLIP,%
+ TAP,%
+ TCPS,%
+ TDS,%
+ TEAC,%
+ TECS,%
+ TELO,%
+ THRI,%
+ TIIS,%
+ TIOT,%
+ TISSEC,%
+ TIST,%
+ TKDD,%
+ TMIS,%
+ TOCE,%
+ TOCHI,%
+ TOCL,%
+ TOCS,%
+ TOCT,%
+ TODAES,%
+ TODS,%
+ TOG,%
+ TOIS,%
+ TOIT,%
+ TOMACS,%
+ TOMM,%
+ TOMPECS,%
+ TOMS,%
+ TOPC,%
+ TOPLAS,%
+ TOPML,%
+ TOPS,%
+ TORS,%
+ TOS,%
+ TOSEM,%
+ TOSN,%
+ TQC,%
+ TRETS,%
+ TSAS,%
+ TSC,%
+ TSLP,%
+ TWEB,%
+ FACMP%
+}{%
+\ifcase\@journalCode@nr
+\relax % ACMJCSS
+ \def\@journalName{ACM Journal on Computing and Sustainable Societies}%
+ \def\@journalNameShort{ACM J. Comput. Sustain. Soc.}%
+ \def\@permissionCodeOne{2834-5533}%
+ \def\@permissionCodeTwo{2834-5533}%
+\or % CIE
+ \def\@journalName{ACM Computers in Entertainment}%
+ \def\@journalNameShort{ACM Comput. Entertain.}%
+ \def\@permissionCodeOne{1544-3574}%
+\or % CSUR
+ \def\@journalName{ACM Computing Surveys}%
+ \def\@journalNameShort{ACM Comput. Surv.}%
+ \def\@permissionCodeOne{0360-0300}%
+ \def\@permissionCodeTwo{1557-7341}%
+\or % DGOV
+ \def\@journalName{Digital Government: Research and Practice}%
+ \def\@journalNameShort{Digit. Gov. Res. Pract.}%
+ \def\@permissionCodeOne{2639-0175}%
+ \def\@permissionCodeTwo{2639-0175}%
+\or % DLT
+ \def\@journalName{Distributed Ledger Technologies: Research and Practice}%
+ \def\@journalNameShort{Distrib. Ledger Technol.}%
+ \def\@permissionCodeOne{2769-6472}%
+ \def\@permissionCodeTwo{2769-6480}%
+\or % DTRAP
+ \def\@journalName{Digital Threats: Research and Practice}%
+ \def\@journalNameShort{Digit. Threat. Res. Pract.}%
+ \def\@permissionCodeOne{2576-5337}%
+ \def\@permissionCodeTwo{2576-5337}%
+\or % FAC
+ \def\@journalName{Formal Aspects of Computing}%
+ \def\@journalNameShort{Form. Asp. Comput.}%
+ \def\@permissionCodeOne{0934-5043}%
+ \def\@permissionCodeTwo{1433-299X}%
+\or % GAMES
+ \def\@journalName{ACM Games: Research and Practice}%
+ \def\@journalNameShort{ACM Games}%
+ \def\@permissionCodeOne{2832-5516}%
+ \def\@permissionCodeTwo{2832-5516}%
+\or % HEALTH
+ \def\@journalName{ACM Transactions on Computing for Healthcare}%
+ \def\@journalNameShort{ACM Trans. Comput. Healthcare}%
+ \def\@permissionCodeOne{2637-8051}%
+ \def\@permissionCodeTwo{2637-8051}%
+\or % IMWUT
+ \def\@journalName{Proceedings of the ACM on Interactive, Mobile,
+ Wearable and Ubiquitous Technologies}%
+ \def\@journalNameShort{Proc. ACM Interact. Mob. Wearable Ubiquitous Technol.}%
+ \def\@permissionCodeOne{2474-9567}%
+ \def\@permissionCodeTwo{2474-9567}%
+ \@ACM@screentrue
+ \PackageInfo{\@classname}{Using screen mode due to \@journalCode}%
+\or % JACM
+ \def\@journalName{Journal of the ACM}%
+ \def\@journalNameShort{J. ACM}%
+ \def\@permissionCodeOne{0004-5411}%
+ \def\@permissionCodeTwo{1557-735X}%
+\or % JATS
+ \def\@journalName{Journal on Autonomous Transportation Systems}%
+ \def\@journalNameShort{ACM J. Auton. Transport. Syst.}%
+ \def\@permissionCodeOne{2833-0528}%
+ \def\@permissionCodeTwo{2833-0528}%
+\or % JDIQ
+ \def\@journalName{ACM Journal of Data and Information Quality}%
+ \def\@journalNameShort{ACM J. Data Inform. Quality}%
+ \def\@permissionCodeOne{1936-1955}%
+ \def\@permissionCodeTwo{1936-1963}%
+\or % JDS
+ \def\@journalName{ACM/IMS Journal of Data Science}%
+ \def\@journalNameShort{ACM/IMS J. Data Sci.}%
+ \def\@permissionCodeOne{2831-3194}%
+ \def\@permissionCodeTwo{2831-3194}%
+\or % JEA
+ \def\@journalName{ACM Journal of Experimental Algorithmics}%
+ \def\@journalNameShort{ACM J. Exp. Algor.}%
+ \def\@permissionCodeOne{1084-6654}%
+ \def\@permissionCodeTwo{1084-6654}%
+\or % JERIC
+ \def\@journalName{ACM Journal of Educational Resources in Computing}%
+ \def\@journalNameShort{ACM J. Edu. Resources in Comput.}%
+ \def\@permissionCodeOne{1073-0516}%
+\or % JETC
+ \def\@journalName{ACM Journal on Emerging Technologies in Computing Systems}%
+ \def\@journalNameShort{ACM J. Emerg. Technol. Comput. Syst.}%
+ \def\@permissionCodeOne{1550-4832}%
+ \def\@permissionCodeTwo{1550-4840}%
+\or % JOCCH
+ \def\@journalName{ACM Journal on Computing and Cultural Heritage}%
+ \def\@journalNameShort{ACM J. Comput. Cult. Herit.}%
+ \def\@permissionCodeOne{1556-4673}%
+ \def\@permissionCodeTwo{1556-4711}%
+\or % JRC
+ \def\@journalName{ACM Journal on Responsible Computing}%
+ \def\@journalNameShort{ACM J. Responsib. Comput.}%
+ \def\@permissionCodeOne{2832-0565}%
+ \def\@permissionCodeTwo{2832-0565}%
+\or % PACMCGIT
+ \def\@journalName{Proceedings of the ACM on Computer Graphics and Interactive Techniques}%
+ \def\@journalNameShort{Proc. ACM Comput. Graph. Interact. Tech.}%
+ \def\@permissionCodeOne{2577-6193}%
+ \def\@permissionCodeTwo{2577-6193}%
+ \@ACM@screentrue
+ \PackageInfo{\@classname}{Using screen mode due to \@journalCode}%
+\or % PACMHCI
+ \def\@journalName{Proceedings of the ACM on Human-Computer Interaction}%
+ \def\@journalNameShort{Proc. ACM Hum.-Comput. Interact.}%
+ \def\@permissionCodeOne{2573-0142}%
+ \def\@permissionCodeTwo{2573-0142}%
+ \@ACM@screentrue
+ \PackageInfo{\@classname}{Using screen mode due to \@journalCode}%
+\or % PACMMOD
+ \def\@journalName{Proceedings of the ACM on Management of Data}%
+ \def\@journalNameShort{Proc. ACM Manag. Data}%
+ \def\@permissionCodeOne{2836-6573}%
+ \def\@permissionCodeTwo{2836-6573}%
+\or % PACMNET
+ \def\@journalName{Proceedings of the ACM on Networkng}%
+ \def\@journalNameShort{Proc. ACM Netw.}%
+ \def\@permissionCodeOne{2834-5509}%
+ \def\@permissionCodeTwo{2834-5509}%
+\or % PACMPL
+ \def\@journalName{Proceedings of the ACM on Programming Languages}%
+ \def\@journalNameShort{Proc. ACM Program. Lang.}%
+ \def\@permissionCodeOne{2475-1421}%
+ \def\@permissionCodeTwo{2475-1421}%
+ \@ACM@screentrue
+ \PackageInfo{\@classname}{Using screen mode due to \@journalCode}%
+\or % PACMSE
+ \def\@journalName{Proceedings of the ACM on Software Engineering}%
+ \def\@journalNameShort{Proc. ACM Softw. Eng.}%
+ \def\@permissionCodeOne{2994-970X}%
+ \def\@permissionCodeTwo{2994-970X}%
+ \@ACM@screentrue
+ \PackageInfo{\@classname}{Using screen mode due to \@journalCode}%
+\or % POMACS
+ \def\@journalName{Proceedings of the ACM on Measurement and Analysis of Computing Systems}%
+ \def\@journalNameShort{Proc. ACM Meas. Anal. Comput. Syst.}%
+ \def\@permissionCodeOne{2476-1249}%
+ \def\@permissionCodeTwo{2476-1249}%
+ \@ACM@screentrue
+ \PackageInfo{\@classname}{Using screen mode due to \@journalCode}%
+\or % TAAS
+ \def\@journalName{ACM Transactions on Autonomous and Adaptive Systems}%
+ \def\@journalNameShort{ACM Trans. Autonom. Adapt. Syst.}%
+ \def\@permissionCodeOne{1556-4665}%
+ \def\@permissionCodeTwo{1556-4703}%
+\or % TACCESS
+ \def\@journalName{ACM Transactions on Accessible Computing}%
+ \def\@journalNameShort{ACM Trans. Access. Comput.}%
+ \def\@permissionCodeOne{1936-7228}%
+ \def\@permissionCodeTwo{1936-7236}%
+\or % TACO
+ \def\@journalName{ACM Transactions on Architecture and Code Optimization}%
+ \def\@journalNameShort{ACM Trans. Arch. Code Optim.}%
+ \def\@permissionCodeOne{1544-3566}%
+ \def\@permissionCodeTwo{1544-3973}%
+\or % TALG
+ \def\@journalName{ACM Transactions on Algorithms}%
+ \def\@journalNameShort{ACM Trans. Algor.}%
+ \def\@permissionCodeOne{1549-6325}%
+ \def\@permissionCodeTwo{1549-6333}%
+\or % TALLIP
+ \def\@journalName{ACM Transactions on Asian and Low-Resource Language Information Processing}%
+ \def\@journalNameShort{ACM Trans. Asian Low-Resour. Lang. Inf. Process.}%
+ \def\@permissionCodeOne{2375-4699}%
+ \def\@permissionCodeTwo{2375-4702}%
+\or % TAP
+ \def\@journalName{ACM Transactions on Applied Perception}%
+ \def\@journalNameShort{ACM Trans. Appl. Percept.}%
+ \def\@permissionCodeOne{1544-3558}%
+ \def\@permissionCodeTwo{1544-3965}%
+\or % TCPS
+ \def\@journalName{ACM Transactions on Cyber-Physical Systems}%
+ \def\@journalNameShort{ACM Trans. Cyber-Phys. Syst.}%
+ \def\@permissionCodeOne{2378-962X}%
+ \def\@permissionCodeTwo{2378-9638}%
+\or % TDS
+ \def\@journalName{ACM/IMS Transactions on Data Science}%
+ \def\@journalNameShort{ACM/IMS Trans. Data Sci.}%
+ \def\@permissionCodeOne{2577-3224}%
+\or % TEAC
+ \def\@journalName{ACM Transactions on Economics and Computation}%
+ \def\@journalNameShort{ACM Trans. Econ. Comput.}%
+ \def\@permissionCodeOne{2167-8375}%
+ \def\@permissionCodeTwo{2167-8383}%
+\or % TECS
+ \def\@journalName{ACM Transactions on Embedded Computing Systems}%
+ \def\@journalNameShort{ACM Trans. Embedd. Comput. Syst.}%
+ \def\@permissionCodeOne{1539-9087}%
+ \def\@permissionCodeTwo{1558-3465}%
+\or % TELO
+ \def\@journalName{ACM Transactions on Evolutionary Learning and Optimization}%
+ \def\@journalNameShort{ACM Trans. Evol. Learn. Optim.}%
+ \def\@permissionCodeOne{2688-299X}%
+ \def\@permissionCodeTwo{2688-3007}%
+\or % THRI
+ \def\@journalName{ACM Transactions on Human-Robot Interaction}%
+ \def\@journalNameShort{ACM Trans. Hum.-Robot Interact.}%
+ \def\@permissionCodeOne{2573-9522}%
+ \def\@permissionCodeTwo{2573-9522}%
+\or % TIIS
+ \def\@journalName{ACM Transactions on Interactive Intelligent Systems}%
+ \def\@journalNameShort{ACM Trans. Interact. Intell. Syst.}%
+ \def\@permissionCodeOne{2160-6455}%
+ \def\@permissionCodeTwo{2160-6463}%
+\or % TIOT
+ \def\@journalName{ACM Transactions on Internet of Things}%
+ \def\@journalNameShort{ACM Trans. Internet Things}%
+ \def\@permissionCodeOne{2577-6207}%
+ \def\@permissionCodeTwo{2577-6207}%
+\or % TISSEC
+ \def\@journalName{ACM Transactions on Information and System Security}%
+ \def\@journalNameShort{ACM Trans. Info. Syst. Sec.}%
+ \def\@permissionCodeOne{1094-9224}%
+\or % TIST
+ \def\@journalName{ACM Transactions on Intelligent Systems and Technology}%
+ \def\@journalNameShort{ACM Trans. Intell. Syst. Technol.}%
+ \def\@permissionCodeOne{2157-6904}%
+ \def\@permissionCodeTwo{2157-6912}%
+\or % TKDD
+ \def\@journalName{ACM Transactions on Knowledge Discovery from Data}%
+ \def\@journalNameShort{ACM Trans. Knowl. Discov. Data.}%
+ \def\@permissionCodeOne{1556-4681}%
+ \def\@permissionCodeTwo{1556-472X}%
+\or % TMIS
+ \def\@journalName{ACM Transactions on Management Information Systems}%
+ \def\@journalNameShort{ACM Trans. Manag. Inform. Syst.}%
+ \def\@permissionCodeOne{2158-656X}%
+ \def\@permissionCodeTwo{2158-6578}%
+\or % TOCE
+ \def\@journalName{ACM Transactions on Computing Education}%
+ \def\@journalNameShort{ACM Trans. Comput. Educ.}%
+ \def\@permissionCodeOne{1946-6226}%
+ \def\@permissionCodeTwo{1946-6226}%
+\or % TOCHI
+ \def\@journalName{ACM Transactions on Computer-Human Interaction}%
+ \def\@journalNameShort{ACM Trans. Comput.-Hum. Interact.}%
+ \def\@permissionCodeOne{1073-0516}%
+ \def\@permissionCodeTwo{1557-7325}%
+\or % TOCL
+ \def\@journalName{ACM Transactions on Computational Logic}%
+ \def\@journalNameShort{ACM Trans. Comput. Logic}%
+ \def\@permissionCodeOne{1529-3785}%
+ \def\@permissionCodeTwo{1557-945X}%
+\or % TOCS
+ \def\@journalName{ACM Transactions on Computer Systems}%
+ \def\@journalNameShort{ACM Trans. Comput. Syst.}%
+ \def\@permissionCodeOne{0734-2071}%
+ \def\@permissionCodeTwo{1557-7333}%
+\or % TOCT
+ \def\@journalName{ACM Transactions on Computation Theory}%
+ \def\@journalNameShort{ACM Trans. Comput. Theory}%
+ \def\@permissionCodeOne{1942-3454}%
+ \def\@permissionCodeTwo{1942-3462}%
+\or % TODAES
+ \def\@journalName{ACM Transactions on Design Automation of Electronic Systems}%
+ \def\@journalNameShort{ACM Trans. Des. Autom. Electron. Syst.}%
+ \def\@permissionCodeOne{1084-4309}%
+ \def\@permissionCodeTwo{1557-7309}%
+\or % TODS
+ \def\@journalName{ACM Transactions on Database Systems}%
+ \def\@journalNameShort{ACM Trans. Datab. Syst.}%
+ \def\@permissionCodeOne{0362-5915}%
+ \def\@permissionCodeTwo{1557-4644}%
+\or % TOG
+ \def\@journalName{ACM Transactions on Graphics}%
+ \def\@journalNameShort{ACM Trans. Graph.}%
+ \def\@permissionCodeOne{0730-0301}%
+ \def\@permissionCodeTwo{1557-7368}%
+\or % TOIS
+ \def\@journalName{ACM Transactions on Information Systems}%
+ \def\@journalNameShort{ACM Trans. Inf. Syst.}%
+ \def\@permissionCodeOne{1046-8188}%
+ \def\@permissionCodeTwo{1558-2868}%
+\or % TOIT
+ \def\@journalName{ACM Transactions on Internet Technology}%
+ \def\@journalNameShort{ACM Trans. Internet Technol.}%
+ \def\@permissionCodeOne{1533-5399}%
+ \def\@permissionCodeTwo{1557-6051}%
+\or % TOMACS
+ \def\@journalName{ACM Transactions on Modeling and Computer Simulation}%
+ \def\@journalNameShort{ACM Trans. Model. Comput. Simul.}%
+ \def\@permissionCodeOne{1049-3301}%
+ \def\@permissionCodeTwo{1558-1195}%
+\or % TOMM
+ \def\@journalName{ACM Transactions on Multimedia Computing, Communications and Applications}%
+ \def\@journalNameShort{ACM Trans. Multimedia Comput. Commun. Appl.}%
+ \def\@permissionCodeOne{1551-6857}%
+ \def\@permissionCodeTwo{1551-6865}%
+\or % TOMPECS
+ \def\@journalName{ACM Transactions on Modeling and Performance Evaluation of Computing Systems}%
+ \def\@journalNameShort{ACM Trans. Model. Perform. Eval. Comput. Syst.}%
+ \def\@permissionCodeOne{2376-3639}%
+ \def\@permissionCodeTwo{2376-3647}%
+\or % TOMS
+ \def\@journalName{ACM Transactions on Mathematical Software}%
+ \def\@journalNameShort{ACM Trans. Math. Softw.}%
+ \def\@permissionCodeOne{0098-3500}%
+ \def\@permissionCodeTwo{1557-7295}%
+\or % TOPC
+ \def\@journalName{ACM Transactions on Parallel Computing}%
+ \def\@journalNameShort{ACM Trans. Parallel Comput.}%
+ \def\@permissionCodeOne{2329-4949}%
+ \def\@permissionCodeTwo{2329-4957}%
+\or % TOPLAS
+ \def\@journalName{ACM Transactions on Programming Languages and Systems}%
+ \def\@journalNameShort{ACM Trans. Program. Lang. Syst.}%
+ \def\@permissionCodeOne{0164-0925}%
+ \def\@permissionCodeTwo{1558-4593}%
+\or % TOPML
+ \def\@journalName{ACM Transactions on Probabilistic Machine Learning}%
+ \def\@journalNameShort{ACM Trans. Probab. Mach. Learn.}%
+ \def\@permissionCodeOne{2836-8924}%
+ \def\@permissionCodeTwo{2836-8924}%
+\or % TOPS
+ \def\@journalName{ACM Transactions on Privacy and Security}%
+ \def\@journalNameShort{ACM Trans. Priv. Sec.}%
+ \def\@permissionCodeOne{2471-2566}%
+ \def\@permissionCodeTwo{2471-2574}%
+\or % TORS
+ \def\@journalName{ACM Transactions on Recommender Systems}%
+ \def\@journalNameShort{ACM Trans. Recomm. Syst.}%
+ \def\@permissionCodeOne{2770-6699}%
+ \def\@permissionCodeTwo{2770-6699}%
+\or % TOS
+ \def\@journalName{ACM Transactions on Storage}%
+ \def\@journalNameShort{ACM Trans. Storage}%
+ \def\@permissionCodeOne{1553-3077}%
+ \def\@permissionCodeTwo{1553-3093}%
+\or % TOSEM
+ \def\@journalName{ACM Transactions on Software Engineering and Methodology}%
+ \def\@journalNameShort{ACM Trans. Softw. Eng. Methodol.}%
+ \def\@permissionCodeOne{1049-331X}%
+ \def\@permissionCodeTwo{1557-7392}%
+\or % TOSN
+ \def\@journalName{ACM Transactions on Sensor Networks}%
+ \def\@journalNameShort{ACM Trans. Sensor Netw.}%
+ \def\@permissionCodeOne{1550-4859}%
+ \def\@permissionCodeTwo{1550-4867}%
+\or % TQC
+ \def\@journalName{ACM Transactions on Quantum Computing}%
+ \def\@journalNameShort{ACM Trans. Quantum Comput.}%
+ \def\@permissionCodeOne{2643-6817}%
+ \def\@permissionCodeTwo{2643-6817}%
+\or % TRETS
+ \def\@journalName{ACM Transactions on Reconfigurable Technology and Systems}%
+ \def\@journalNameShort{ACM Trans. Reconfig. Technol. Syst.}%
+ \def\@permissionCodeOne{1936-7406}%
+ \def\@permissionCodeTwo{1936-7414}%
+\or % TSAS
+ \def\@journalName{ACM Transactions on Spatial Algorithms and Systems}%
+ \def\@journalNameShort{ACM Trans. Spatial Algorithms Syst.}%
+ \def\@permissionCodeOne{2374-0353}%
+ \def\@permissionCodeTwo{2374-0361}%
+\or % TSC
+ \def\@journalName{ACM Transactions on Social Computing}%
+ \def\@journalNameShort{ACM Trans. Soc. Comput.}%
+ \def\@permissionCodeOne{2469-7818}%
+ \def\@permissionCodeTwo{2469-7826}%
+\or % TSLP
+ \def\@journalName{ACM Transactions on Speech and Language Processing}%
+ \def\@journalNameShort{ACM Trans. Speech Lang. Process.}%
+ \def\@permissionCodeOne{1550-4875}%
+ \def\@permissionCodeTwo{2329-9304}%
+\or % TWEB
+ \def\@journalName{ACM Transactions on the Web}%
+ \def\@journalNameShort{ACM Trans. Web}%
+ \def\@permissionCodeOne{1559-1131}%
+ \def\@permissionCodeTwo{1559-114X}%
+\else % FACMP, a dummy journal
+ \def\@journalName{ACM Just Accepted}%
+ \def\@journalNameShort{ACM Accepted}%
+ \def\@permissionCodeOne{XXXX-XXXX}%
+\fi
+\ClassInfo{\@classname}{Using journal code \@journalCode}%
+}{%
+ \ClassError{\@classname}{Incorrect journal #1}%
+}%
+\def\acmJournal#1{\setkeys{ACM}{acmJournal=#1}%
+ \global\@ACM@journal@bibstriptrue
+ \global\@ACM@journal@bibstrip@or@togtrue}
+\def\@journalCode@nr{0}
+\def\@journalName{}%
+\def\@journalNameShort{\@journalName}%
+\def\@permissionCodeOne{XXXX-XXXX}%
+\def\@permissionCodeTwo{\@permissionCodeOne}%
+\newcommand\acmConference[4][]{%
+ \gdef\acmConference@shortname{#1}%
+ \gdef\acmConference@name{#2}%
+ \gdef\acmConference@date{#3}%
+ \gdef\acmConference@venue{#4}%
+ \ifx\acmConference@shortname\@empty
+ \gdef\acmConference@shortname{#2}%
+ \fi
+ \global\@ACM@journal@bibstripfalse
+ \ifx\@acmBooktitle\@empty\relax
+ \acmBooktitle{Proceedings of \acmConference@name
+ \ifx\acmConference@name\acmConference@shortname\else
+ \ (\acmConference@shortname)\fi}%
+ \fi
+}
+\if@ACM@journal\else
+\acmConference[Conference'17]{ACM Conference}{July 2017}{Washington,
+ DC, USA}%
+\fi
+\def\acmBooktitle#1{\gdef\@acmBooktitle{#1}}
+\acmBooktitle{}
+\def\@editorsAbbrev{(Ed.)}
+\def\@acmEditors{}
+\def\editor#1{\ifx\@acmEditors\@empty
+ \gdef\@acmEditors{#1}%
+ \else
+ \gdef\@editorsAbbrev{(Eds.)}%
+ \g@addto@macro\@acmEditors{\and#1}%
+\fi}
+\def\subtitle#1{\def\@subtitle{#1}}
+\subtitle{}
+\newcount\num@authorgroups
+\num@authorgroups=0\relax
+\newcount\num@authors
+\num@authors=0\relax
+\newif\if@insideauthorgroup
+\@insideauthorgroupfalse
+\renewcommand\author[2][]{%
+ \IfSubStr{\detokenize{#2}}{,}{\ClassWarning{\@classname}{Do not put several
+ authors in the same \string\author\space macro!}}{}%
+ \global\advance\num@authors by 1\relax
+ \if@insideauthorgroup\else
+ \global\advance\num@authorgroups by 1\relax
+ \global\@insideauthorgrouptrue
+ \fi
+ \ifx\addresses\@empty
+ \if@ACM@anonymous
+ \gdef\addresses{\@author{Anonymous Author(s)%
+ \ifx\@acmSubmissionID\@empty\else\\Submission Id:
+ \@acmSubmissionID\fi}}%
+ \gdef\authors{Anonymous Author(s)}%
+ \else
+ \expandafter\gdef\expandafter\addresses\expandafter{%
+ \expandafter\@author\expandafter{%
+ \csname typeset@author\the\num@authors\endcsname{#2}}}%
+ \gdef\authors{#2}%
+ \fi
+ \else
+ \if@ACM@anonymous\else
+ \expandafter\g@addto@macro\expandafter\addresses\expandafter{%
+ \expandafter\and\expandafter\@author\expandafter{%
+ \csname typeset@author\the\num@authors\endcsname{#2}}}%
+ \g@addto@macro\authors{\and#2}%
+ \fi
+ \fi
+ \if@ACM@anonymous
+ \ifx\shortauthors\@empty
+ \gdef\shortauthors{Anon.
+ \ifx\@acmSubmissionID\@empty\else Submission Id:
+ \@acmSubmissionID\fi}%
+ \fi
+ \else
+ \def\@tempa{#1}%
+ \ifx\@tempa\@empty
+ \ifx\shortauthors\@empty
+ \gdef\shortauthors{#2}%
+ \else
+ \g@addto@macro\shortauthors{\and#2}%
+ \fi
+ \else
+ \ifx\shortauthors\@empty
+ \gdef\shortauthors{#1}%
+ \else
+ \g@addto@macro\shortauthors{\and#1}%
+ \fi
+ \fi
+ \fi}
+\newcommand{\affiliation}[2][]{%
+ \global\@insideauthorgroupfalse
+ \if@ACM@anonymous\else
+ \g@addto@macro\addresses{\affiliation{#1}{#2}}%
+ \fi}
+\define@boolkey+{@ACM@affiliation@}[@ACM@affiliation@]{obeypunctuation}%
+[true]{}{\ClassError{\@classname}{The option obeypunctuation can be either true or false}}
+\def\additionalaffiliation#1{\authornote{\@additionalaffiliation{#1}}}
+\def\@additionalaffiliation#1{\bgroup
+ \def\position##1{\ignorespaces}%
+ \def\institution##1{##1\ignorespaces}%
+ \def\department{\@ifnextchar[{\@department}{\@department[]}}%
+ \def\@department[##1]##2{\unskip, ##2\ignorespaces}%
+ \let\city\position
+ \let\state\position
+ \let\country\position
+ Also with #1\unskip.\egroup}
+\renewcommand{\email}[2][]{%
+ \IfSubStr{#2}{,}{\ClassWarning{\@classname}{Do not put several
+ addresses in the same \string\email\space macro!}}{}%
+ \if@ACM@anonymous\else
+ \g@addto@macro\addresses{\email{#1}{#2}}%
+ \fi}
+\def\orcid#1{\unskip\ignorespaces%
+ \IfBeginWith{#1}{http}{%
+ \expandafter\gdef\csname
+ typeset@author\the\num@authors\endcsname##1{%
+ \href{#1}{##1}}}{%
+ \expandafter\gdef\csname
+ typeset@author\the\num@authors\endcsname##1{%
+ \href{https://orcid.org/#1}{##1}}}}
+\def\authorsaddresses#1{\def\@authorsaddresses{#1}}
+\authorsaddresses{\@mkauthorsaddresses}
+\newcommand\@mktranslatedkeywords[2]{\bgroup
+ \selectlanguage{#1}%
+ {\@specialsection{\keywordsname}%
+ \noindent#2\par}\egroup}
+\def\@titlenotes{}
+\def\titlenote#1{%
+ \g@addto@macro\@title{\footnotemark}%
+ \if@ACM@anonymous
+ \g@addto@macro\@titlenotes{%
+ \stepcounter{footnote}\footnotetext{Title note}}%
+ \else
+ \g@addto@macro\@titlenotes{\stepcounter{footnote}\footnotetext{#1}}%
+ \fi}
+\def\@subtitlenotes{}
+\def\subtitlenote#1{%
+ \g@addto@macro\@subtitle{\footnotemark}%
+ \if@ACM@anonymous
+ \g@addto@macro\@subtitlenotes{%
+ \stepcounter{footnote}\footnotetext{Subtitle note}}%
+ \else
+ \g@addto@macro\@subtitlenotes{%
+ \stepcounter{footnote}\footnotetext{#1}}%
+ \fi}
+\def\@authornotes{}
+\def\authornote#1{%
+ \if@ACM@anonymous\else
+ \g@addto@macro\addresses{\@authornotemark}%
+ \g@addto@macro\@authornotes{%
+ \stepcounter{footnote}\footnotetext{#1}}%
+ \fi}
+\newcommand\authornotemark[1][\relax]{%
+ \ifx#1\relax\relax\relax
+ \g@addto@macro\addresses{\@authornotemark}%
+ \else
+ \g@addto@macro\addresses{\@@authornotemark{#1}}%
+ \fi}
+\def\acmVolume#1{\def\@acmVolume{#1}}
+\acmVolume{1}
+\def\acmNumber#1{\def\@acmNumber{#1}}
+\acmNumber{1}
+\def\acmArticle#1{\def\@acmArticle{#1}}
+\acmArticle{}
+\def\acmArticleSeq#1{\def\@acmArticleSeq{#1}}
+\acmArticleSeq{\@acmArticle}
+\def\acmYear#1{\def\@acmYear{#1}}
+\acmYear{\the\year}
+\def\acmMonth#1{\def\@acmMonth{#1}}
+\acmMonth{\the\month}
+\def\@acmPubDate{\ifcase\@acmMonth\or
+ January\or February\or March\or April\or May\or June\or
+ July\or August\or September\or October\or November\or
+ December\fi~\@acmYear}
+\def\acmPrice#1{\ClassWarning{\@classname}{The macro \string\acmPrice
+ is obsolete. ACM no longer prints the price in bibstrip.}}
+\def\acmSubmissionID#1{\def\@acmSubmissionID{#1}}
+\acmSubmissionID{}
+\def\acmISBN#1{\def\@acmISBN{#1}}
+\acmISBN{978-x-xxxx-xxxx-x/YY/MM}
+\def\acmDOI#1{\def\@acmDOI{#1}}
+\acmDOI{10.1145/nnnnnnn.nnnnnnn}
+\newlength\@ACM@badge@width
+\setlength\@ACM@badge@width{3pc}
+\newlength\@ACM@title@width
+\newlength\@ACM@badge@skip
+\setlength\@ACM@badge@skip{1pt}
+\def\@acmBadgeR{}
+\def\@acmBadgeL{}
+\newcommand\acmBadgeR[2][]{%
+ \ifx\@acmBadgeR\@empty
+ \gdef\@acmBadgeR{%
+ \smash{%
+ \raisebox{0.5\height}{%
+ \href{#1}{\includegraphics[width=\@ACM@badge@width]{#2}}}}}%
+ \else
+ \g@addto@macro{\@acmBadgeR}{%
+ \hspace{\@ACM@badge@skip}%
+ \smash{%
+ \raisebox{0.5\height}{%
+ \href{#1}{\includegraphics[width=\@ACM@badge@width]{#2}}}}}%
+ \fi}
+\newcommand\acmBadgeL[2][]{%
+ \ifx\@acmBadgeL\@empty
+ \gdef\@acmBadgeL{%
+ \smash{%
+ \raisebox{0.5\height}{%
+ \href{#1}{\includegraphics[width=\@ACM@badge@width]{#2}}}}}%
+ \else
+ \g@addto@macro{\@acmBadgeL}{%
+ \hspace{\@ACM@badge@skip}%
+ \smash{%
+ \raisebox{0.5\height}{%
+ \href{#1}{\includegraphics[width=\@ACM@badge@width]{#2}}}}}%
+ \fi}
+\let\acmBadge=\acmBadgeR
+\def\startPage#1{\def\@startPage{#1}}
+\startPage{}
+\def\terms#1{\ClassWarning{\@classname}{The command \string\terms{} is
+ obsolete. I am going to ignore it}}
+\def\keywords#1{\def\@keywords{#1}}
+\let\@keywords\@empty
+\AtEndDocument{\if@ACM@nonacm\else\ifx\@keywords\@empty
+ \ifnum\getrefnumber{TotPages}>2\relax
+ \ClassWarningNoLine{\@classname}{ACM keywords are mandatory
+ for papers over two pages}%
+ \fi\fi\fi}
+\renewenvironment{abstract}{\Collect@Body\@saveabstract}{}
+\long\def\@saveabstract#1{\if@ACM@maketitle@typeset
+ \ClassError{\@classname}{Abstract must be defined before maketitle
+ command. Please move it!}\fi
+ \long\gdef\@abstract{#1}}
+\@saveabstract{}
+\long\def\@lempty{}
+\define@boolkey+{@ACM@topmatter@}[@ACM@]{printccs}[true]{%
+ \if@ACM@printccs
+ \ClassInfo{\@classname}{Printing CCS}%
+ \else
+ \ClassInfo{\@classname}{Suppressing CCS}%
+ \fi}{\ClassError{\@classname}{The option printccs can be either true or false}}
+\define@boolkey+{@ACM@topmatter@}[@ACM@]{printacmref}[true]{%
+ \if@ACM@printacmref
+ \ClassInfo{\@classname}{Printing bibformat}%
+ \else
+ \ClassInfo{\@classname}{Suppressing bibformat}%
+ \fi}{\ClassError{\@classname}{The option printacmref can be either true or false}}
+\AtEndDocument{\if@ACM@nonacm\else\if@ACM@printacmref\else
+ \ifnum\getrefnumber{TotPages}>1\relax
+ \ClassWarningNoLine{\@classname}{%
+ ACM reference format is mandatory \MessageBreak
+ for papers over one page. \MessageBreak
+ Please add printacmref=true to the \MessageBreak
+ \string\settopmatter\space command.}%
+ \fi\fi\fi}
+\define@boolkey+{@ACM@topmatter@}[@ACM@]{printfolios}[true]{%
+ \if@ACM@printfolios
+ \ClassInfo{\@classname}{Printing folios}%
+ \else
+ \ClassInfo{\@classname}{Suppressing folios}%
+ \fi}{\ClassError{\@classname}{The option printfolios can be either true or false}}
+\define@cmdkey{@ACM@topmatter@}[@ACM@]{authorsperrow}[0]{%
+ \IfInteger{#1}{\ClassInfo{\@classname}{Setting authorsperrow to
+ #1}}{\ClassWarning{\@classname}{The parameter authorsperrow must be
+ numerical. Ignoring the input #1}\gdef\@ACM@authorsperrow{0}}}
+\def\settopmatter#1{\setkeys{@ACM@topmatter@}{#1}}
+\settopmatter{printccs=true, printacmref=true}
+\if@ACM@manuscript
+ \settopmatter{printfolios=true}
+\else
+ \if@ACM@journal
+ \settopmatter{printfolios=true}
+ \else
+ \settopmatter{printfolios=false}
+ \fi
+\fi
+\settopmatter{authorsperrow=0}
+\def\@received{}
+\newcommand\received[2][]{\def\@tempa{#1}%
+ \ifx\@tempa\@empty
+ \ifx\@received\@empty
+ \gdef\@received{Received #2}%
+ \else
+ \g@addto@macro{\@received}{; revised #2}%
+ \fi
+ \else
+ \ifx\@received\@empty
+ \gdef\@received{#1 #2}%
+ \else
+ \g@addto@macro{\@received}{; #1 #2}%
+ \fi
+ \fi}
+\AtEndDocument{%
+ \ifx\@received\@empty\else
+ \par\bigskip\noindent\small\normalfont\@received\par
+ \fi}
+\define@choicekey+{ACM}{articletype}[\ACM@ArticleType\ACM@ArticleType@nr]{%
+ Research,Review,Discussion,Invited,Position}[Review]{%
+ \ifcase\ACM@ArticleType@nr
+ \relax % Research
+ \colorlet{@ACM@Article@color}{ACMBlue}%
+ \or % Review
+ \colorlet{@ACM@Article@color}{ACMOrange}%
+ \or % Discussion
+ \colorlet{@ACM@Article@color}{ACMGreen}%
+ \or % Invited
+ \colorlet{@ACM@Article@color}{ACMPurple}%
+ \or % Position
+ \colorlet{@ACM@Article@color}{ACMRed}%
+ \fi
+}{%
+ \ClassError{\@classname}{Article Type must be Research, Review,\MessageBreak
+ Discussion, Invited, or Position}}
+\def\acmArticleType#1{\setkeys{ACM}{articletype=#1}}
+\if@ACM@acmcp
+\acmArticleType{Research}%
+\fi
+ % \end{macrocode}
+\newenvironment{@ACM@color@frame}{%
+ \def\FrameCommand{\hspace*{-6.5pc}%
+ \colorbox{@ACM@Article@color!10!white}}%
+ \MakeFramed {\advance\hsize
+ -6.5pc\relax\FrameRestore}}{\zsaveposy{@ACM@acmcpframe@y}%
+ \endMakeFramed}
+\def\acmCodeLink#1{%
+ \ifx\@acmCodeDataLink\@empty
+ \gdef\@acmCodeDataLink{\url{#1}}%
+ \else
+ \g@addto@macro{\@acmCodeDataLink}{\\ \url{#1}}%
+ \fi}
+\def\@acmCodeDataLink{}
+\def\acmContributions#1{\gdef\@acmContributions{#1}}
+\acmContributions{}
+\let\acmDataLink\acmCodeLink
+\RequirePackage{comment}
+\excludecomment{CCSXML}
+\let\@concepts\@empty
+\newcounter{@concepts}
+\newcommand\ccsdesc[2][100]{%
+ \ccsdesc@parse#1~#2~~\ccsdesc@parse@end}
+\def\textrightarrow{$\rightarrow$}
+\def\ccsdesc@parse#1~#2~#3~{%
+ \stepcounter{@concepts}%
+ \expandafter\ifx\csname CCS@General@#2\endcsname\relax
+ \expandafter\gdef\csname CCS@General@#2\endcsname{\textbullet\
+ \textbf{#2}}%
+ \expandafter\gdef\csname CCS@Punctuation@#2\endcsname{; }%
+ \expandafter\gdef\csname CCS@Specific@#2\endcsname{}%
+ \g@addto@macro{\@concepts}{\csname CCS@General@#2\endcsname
+ \csname CCS@Punctuation@#2\endcsname
+ \csname CCS@Specific@#2\endcsname}%
+ \fi
+ \ifx#3\relax\relax\else
+ \expandafter\gdef\csname CCS@Punctuation@#2\endcsname{
+ \textrightarrow\ }%
+ \expandafter\g@addto@macro\expandafter{\csname CCS@Specific@#2\endcsname}{%
+ \addtocounter{@concepts}{-1}%
+ \ifnum#1>499\textbf{#3}\else
+ \ifnum#1>299\textit{#3}\else
+ #3\fi\fi\ifnum\value{@concepts}=0.\else; \fi}%
+ \fi
+\ccsdesc@parse@finish}
+\AtEndDocument{\if@ACM@nonacm\else\ifx\@concepts\@empty\relax
+ \ifnum\getrefnumber{TotPages}>2\relax
+ \ClassWarningNoLine{\@classname}{CCS concepts are mandatory
+ for papers over two pages}%
+ \fi\fi\fi}
+\def\ccsdesc@parse@finish#1\ccsdesc@parse@end{}
+\newif\if@printcopyright
+\@printcopyrighttrue
+\newif\if@printpermission
+\@printpermissiontrue
+\newif\if@acmowned
+\@acmownedtrue
+\define@choicekey*{ACM@}{acmcopyrightmode}[%
+ \acm@copyrightinput\acm@copyrightmode]{none,%
+ acmcopyright,acmlicensed,rightsretained,%
+ usgov,usgovmixed,cagov,cagovmixed,licensedusgovmixed,%
+ licensedcagov,licensedcagovmixed,othergov,licensedothergov,%
+ iw3c2w3,iw3c2w3g,cc}{%
+ \@printpermissiontrue
+ \@printcopyrighttrue
+ \@acmownedtrue
+ \ifnum\acm@copyrightmode=0\relax % none
+ \@printpermissionfalse
+ \@printcopyrightfalse
+ \@acmownedfalse
+ \fi
+ \ifnum\acm@copyrightmode=2\relax % acmlicensed
+ \@acmownedfalse
+ \fi
+ \ifnum\acm@copyrightmode=3\relax % rightsretained
+ \@acmownedfalse
+ \fi
+ \ifnum\acm@copyrightmode=4\relax % usgov
+ \@printpermissiontrue
+ \@printcopyrightfalse
+ \@acmownedfalse
+ \fi
+ \ifnum\acm@copyrightmode=6\relax % cagov
+ \@acmownedfalse
+ \fi
+ \ifnum\acm@copyrightmode=8\relax % licensedusgovmixed
+ \@acmownedfalse
+ \fi
+ \ifnum\acm@copyrightmode=9\relax % licensedcagov
+ \@acmownedfalse
+ \fi
+ \ifnum\acm@copyrightmode=10\relax % licensedcagovmixed
+ \@acmownedfalse
+ \fi
+ \ifnum\acm@copyrightmode=11\relax % othergov
+ \@acmownedtrue
+ \fi
+ \ifnum\acm@copyrightmode=12\relax % licensedothergov
+ \@acmownedfalse
+ \fi
+ \ifnum\acm@copyrightmode=13\relax % iw3c2w3
+ \@acmownedfalse
+ \fi
+ \ifnum\acm@copyrightmode=14\relax % iw3c2w3g
+ \@acmownedfalse
+ \fi
+ \ifnum\acm@copyrightmode=15\relax % cc
+ \@acmownedfalse
+ \fi}
+\def\setcopyright#1{\setkeys{ACM@}{acmcopyrightmode=#1}}
+\setcopyright{acmlicensed}
+\newcommand\setcctype[2][4.0]{%
+ \def\ACM@cc@version{#1}%
+ \def\ACM@cc@type{#2}}
+\setcctype{by}
+\def\@copyrightowner{%
+ \ifcase\acm@copyrightmode\relax % none
+ \or % acmcopyright
+ ACM\@.
+ \or % acmlicensed
+ Copyright held by the owner/author(s). Publication rights licensed to
+ ACM\@.
+ \or % rightsretained
+ Copyright held by the owner/author(s).
+ \or % usgov
+ \or % usgovmixed
+ Copyright held by the owner/author(s).
+ \or % cagov
+ Copyright Crown in Right of Canada.
+ \or %cagovmixed
+ Copyright held by the owner/author(s).
+ \or %licensedusgovmixed
+ Copyright held by the owner/author(s). Publication rights licensed to
+ ACM\@.
+ \or % licensedcagov
+ Copyright held by the owner/author(s).
+ \or %licensedcagovmixed
+ Copyright held by the owner/author(s). Publication rights licensed to
+ ACM\@.
+ \or % othergov
+ Copyright held by the owner/author(s).
+ \or % licensedothergov
+ Copyright held by the owner/author(s). Publication rights licensed to
+ ACM\@.
+ \or % ic2w3www
+ IW3C2 (International World Wide Web Conference Committee), published
+ under Creative Commons CC-BY~4.0 License.
+ \or % ic2w3wwwgoogle
+ IW3C2 (International World Wide Web Conference Committee), published
+ under Creative Commons CC-BY-NC-ND~4.0 License.
+ \or % cc
+ Copyright held by the owner/author(s).
+ \fi}
+\def\@formatdoi#1{\url{https://doi.org/#1}}
+\def\@copyrightpermission{%
+ \ifcase\acm@copyrightmode\relax % none
+ \or % acmcopyright
+ Permission to make digital or hard copies of all or part of this
+ work for personal or classroom use is granted without fee provided
+ that copies are not made or distributed for profit or commercial
+ advantage and that copies bear this notice and the full citation on
+ the first page. Copyrights for components of this work owned by
+ others than ACM must be honored. Abstracting with credit is
+ permitted. To copy otherwise, or republish, to post on servers or
+ to redistribute to lists, requires prior specific permission
+ and\hspace*{.5pt}/or
+ a fee. Request permissions from permissions@acm.org.
+ \or % acmlicensed
+ Permission to make digital or hard copies of all or part of this
+ work for personal or classroom use is granted without fee provided
+ that copies are not made or distributed for profit or commercial
+ advantage and that copies bear this notice and the full citation on
+ the first page. Copyrights for components of this work owned by
+ others than the author(s) must be honored. Abstracting with credit
+ is permitted. To copy otherwise, or republish, to post on servers
+ or to redistribute to lists, requires prior specific permission
+ and\hspace*{.5pt}/or a fee. Request permissions from
+ permissions@acm.org.
+ \or % rightsretained
+ Permission to make digital or hard copies of all or part of this
+ work for personal or classroom use is granted without fee provided
+ that copies are not made or distributed for profit or commercial
+ advantage and that copies bear this notice and the full citation on
+ the first page. Copyrights for third-party components of this work
+ must be honored. For all other uses, contact the
+ owner\hspace*{.5pt}/author(s).
+ \or % usgov
+ This paper is authored by an employee(s) of the United States
+ Government and is in the public domain. Non-exclusive copying or
+ redistribution is allowed, provided that the article citation is
+ given and the authors and agency are clearly identified as its
+ source. All others Request permissions from
+ owner\hspace*{.5pt}/author(s).
+ \or % usgovmixed
+ ACM acknowledges that this contribution was authored or co-authored
+ by an employee, contractor, or affiliate of the United States
+ government. As such, the United States government retains a
+ nonexclusive, royalty-free right to publish or reproduce this
+ article, or to allow others to do so, for government purposes
+ only. Request permissions from owner\hspace*{.5pt}/author(s).
+ \or % cagov
+ This article was authored by employees of the Government of
+ Canada. As such, the Canadian government retains all interest in
+ the copyright to this work and grants to ACM a nonexclusive,
+ royalty-free right to publish or reproduce this article, or to
+ allow others to do so, provided that clear attribution is given
+ both to the authors and the Canadian government agency employing
+ them. Permission to make digital or hard copies for personal or
+ classroom use is granted. Copies must bear this notice and the full
+ citation on the first page. Copyrights for components of this work
+ owned by others than the Canadian Government must be honored. To
+ copy otherwise, distribute, republish, or post, requires prior
+ specific permission and/or a fee. Request permissions from
+ owner\hspace*{.5pt}/author(s).
+ \or % cagovmixed
+ ACM acknowledges that this contribution was co-authored by an
+ affiliate of the national government of Canada. As such, the Crown
+ in Right of Canada retains an equal interest in the
+ copyright. Reprints must include clear attribution to ACM and the
+ author’s government agency affiliation. Permission to make digital
+ or hard copies for personal or classroom use is granted. Copies
+ must bear this notice and the full citation on the first
+ page. Copyrights for components of this work owned by others than
+ ACM must be honored. To copy otherwise, distribute, republish, or
+ post, requires prior specific permission and/or a fee. Request
+ permissions from owner\hspace*{.5pt}/author(s).
+ \or % licensedusgovmixed
+ Publication rights licensed to ACM\@. ACM acknowledges that this
+ contribution was authored or co-authored by an employee, contractor
+ or affiliate of the United States government. As such, the
+ Government retains a nonexclusive, royalty-free right to publish or
+ reproduce this article, or to allow others to do so, for Government
+ purposes only. Request permissions from
+ owner\hspace*{.5pt}/author(s).
+ \or % licensedcagov
+ This article was authored by employees of the Government of
+ Canada. As such, the Canadian government retains all interest in
+ the copyright to this work and grants to ACM a nonexclusive,
+ royalty-free right to publish or reproduce this article, or to
+ allow others to do so, provided that clear attribution is given
+ both to the authors and the Canadian government agency employing
+ them. Permission to make digital or hard copies for personal or
+ classroom use is granted. Copies must bear this notice and the full
+ citation on the first page. Copyrights for components of this work
+ owned by others than the Canadian Government must be honored. To
+ copy otherwise, distribute, republish, or post, requires prior
+ specific permission and/or a fee. Request permissions from
+ owner\hspace*{.5pt}/author(s).
+ \or % licensedcagovmixed
+ Publication rights licensed to ACM. ACM acknowledges that this
+ contribution was authored or co-authored by an employee, contractor
+ or affiliate of the national government of Canada. As such, the
+ Government retains a nonexclusive, royalty-free right to publish or
+ reproduce this article, or to allow others to do so, for Government
+ purposes only. Request permissions from
+ owner\hspace*{.5pt}/author(s).
+ \or % othergov
+ ACM acknowledges that this contribution was authored or co-authored
+ by an employee, contractor or affiliate of a national
+ government. As such, the Government retains a nonexclusive,
+ royalty-free right to publish or reproduce this article, or to
+ allow others to do so, for Government purposes only. Request
+ permissions from owner\hspace*{.5pt}/author(s).
+ \or % licensedothergov
+ Publication rights licensed to ACM\@. ACM acknowledges that this
+ contribution was authored or co-authored by an employee, contractor
+ or affiliate of a national government. As such, the Government
+ retains a nonexclusive, royalty-free right to publish or reproduce
+ this article, or to allow others to do so, for Government purposes
+ only. Request permissions from owner\hspace*{.5pt}/author(s).
+ \or % iw3c2w3
+ This paper is published under the Creative Commons Attribution~4.0
+ International (CC-BY~4.0) license. Authors reserve their rights to
+ disseminate the work on their personal and corporate Web sites with
+ the appropriate attribution.
+ \or % iw3c2w3g
+ This paper is published under the Creative Commons
+ Attribution-NonCommercial-NoDerivs~4.0 International
+ (CC-BY-NC-ND~4.0) license. Authors reserve their rights to
+ disseminate the work on their personal and corporate Web sites with
+ the appropriate attribution.
+ \or % CC
+ \IfEq{\ACM@cc@type}{zero}{%
+ \def\ACM@CC@Url{https://creativecommons.org/publicdomain/zero/1.0/legalcode}}{%
+ \edef\ACM@CC@Url{https://creativecommons.org/licenses/\ACM@cc@type/\ACM@cc@version/legalcode}}%
+ \href{\ACM@CC@Url}{\includegraphics[height=5ex]{doclicense-CC-\ACM@cc@type-88x31}}\\
+ \href{\ACM@CC@Url}{%
+ This work is licensed under a Creative Commons
+ \IfEq{\ACM@cc@type}{zero}{CC0 1.0 Universal}{%
+ \IfEq{\ACM@cc@type}{by}{Attribution}{}%
+ \IfEq{\ACM@cc@type}{by-sa}{Attribution-ShareAlike}{}%
+ \IfEq{\ACM@cc@type}{by-nd}{Attribution-NoDerivatives}{}%
+ \IfEq{\ACM@cc@type}{by-nc}{Attribution-NonCommercial}{}%
+ \IfEq{\ACM@cc@type}{by-nc-sa}{Attribution-NonCommercial-ShareAlike}{}%
+ \IfEq{\ACM@cc@type}{by-nc-nd}{Attribution-NonCommercial-NoDerivatives}{}%
+ ~\IfEq{\ACM@cc@version}{4.0}{4.0 International}{3.0 Unported}%
+ }
+ License.}%
+ \fi}
+%%
+\def\copyrightyear#1{\def\@copyrightyear{#1}}
+\copyrightyear{\@acmYear}
+\def\@teaserfigures{}
+\newenvironment{teaserfigure}{\Collect@Body\@saveteaser}{}
+\long\def\@saveteaser#1{\g@addto@macro\@teaserfigures{\@teaser{#1}}}
+\renewcommand{\thanks}[1]{%
+ \@ifnotempty{#1}{%
+ \if@ACM@anonymous
+ \g@addto@macro\thankses{\thanks{A note}}%
+ \else
+ \g@addto@macro\thankses{\thanks{#1}}%
+ \fi}}
+\newcommand{\anon}[2][ANONYMIZED]{%
+ \if@ACM@anonymous%
+ {\color{ACMOrange}#1}%
+ \else%
+ #2%
+ \fi}
+\ifx\@beginmaketitlehook\@undefined
+ \let\@beginmaketitlehook\@empty
+\fi
+\def\AtBeginMaketitle{\g@addto@macro\@beginmaketitlehook}
+\def\@acmengagemetadata{}
+\def\setengagemetadata#1#2{%
+ \g@addto@macro{\@acmengagemetadata}{%
+ \@setengagemetadata{#1}{#2}}}
+\newbox\mktitle@bx
+\def\maketitle{\@beginmaketitlehook
+ \@ACM@maketitle@typesettrue
+ \if@ACM@anonymous
+ % Anonymize omission of \author-s
+ \ifnum\num@authorgroups=0\author{}\fi
+ \fi
+ \begingroup
+ \let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig
+ \let\@footnotemark\@footnotemark@nolink
+ \let\@footnotetext\@footnotetext@nolink
+ \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
+ \hsize=\textwidth
+ \def\@makefnmark{\hbox{\@textsuperscript{\@thefnmark}}}%
+ \@mktitle\if@ACM@sigchiamode\else\@mkauthors\fi\@mkteasers
+ \@printtopmatter
+ \if@ACM@sigchiamode\@mkauthors\fi
+ \setcounter{footnote}{0}%
+ \def\@makefnmark{\hbox{\@textsuperscript{\normalfont\@thefnmark}}}%
+ \@titlenotes
+ \@subtitlenotes
+ \@authornotes
+ \let\@makefnmark\relax
+ \let\@thefnmark\relax
+ \let\@makefntext\noindent
+ \ifx\@empty\thankses\else
+ \footnotetextauthorsaddresses{%
+ \def\par{\let\par\@par}\parindent\z@\@setthanks}%
+ \fi
+ \if@ACM@acmcp\else
+ \ifx\@empty\@authorsaddresses\else
+ \if@ACM@anonymous\else
+ \if@ACM@journal@bibstrip@or@tog
+ \footnotetextauthorsaddresses{%
+ \def\par{\let\par\@par}\parindent\z@\@setauthorsaddresses}%
+ \fi
+ \fi
+ \fi
+ \fi
+ \if@ACM@nonacm
+ \ifnum\acm@copyrightmode=15\relax % cc
+ \footnotetextcopyrightpermission{\@copyrightpermission}%
+ \fi
+ \else
+ \if@ACM@acmcp\else
+ \footnotetextcopyrightpermission{%
+ \if@ACM@authordraft
+ \raisebox{-2ex}[\z@][\z@]{\makebox[0pt][l]{\large\bfseries
+ Unpublished working draft. Not for distribution.}}%
+ \color[gray]{0.9}%
+ \fi
+ \parindent\z@\parskip0.1\baselineskip
+ \if@ACM@authorversion\else
+ \if@printpermission\@copyrightpermission\par\fi
+ \fi
+ \if@ACM@manuscript\else
+ \if@ACM@journal@bibstrip\else % Print the conference information
+ \if@ACM@engage
+ {\itshape \@acmBooktitle, \@acmYear.}\par
+ \else
+ {\itshape \acmConference@shortname, \acmConference@date, \acmConference@venue}\par
+ \fi
+ \fi
+ \fi
+ \if@printcopyright
+ \copyright\ \@copyrightyear\ \@copyrightowner\\
+ \else
+ \@copyrightyear.\
+ \fi
+ \if@ACM@manuscript
+ Manuscript submitted to ACM\\
+ \else
+ \if@ACM@authorversion
+ This is the author's version of the work. It is posted here for
+ your personal use. Not for redistribution. The definitive Version
+ of Record was published in
+ \if@ACM@journal@bibstrip
+ \emph{\@journalName}%
+ \else
+ \emph{\@acmBooktitle}%
+ \fi
+ \ifx\@acmDOI\@empty
+ .
+ \else
+ , \@formatdoi{\@acmDOI}.
+ \fi\\
+ \else
+ \if@ACM@nonacm\else
+ \if@ACM@journal@bibstrip
+ ACM~\@permissionCodeTwo/\@acmYear/\@acmMonth-ART\@acmArticle\\
+ \@formatdoi{\@acmDOI}%
+ \else % Conference
+ \ifx\@acmISBN\@empty\else ACM~ISBN~\@acmISBN\\\fi
+ \ifx\@acmDOI\@empty\else\@formatdoi{\@acmDOI}\fi%
+ \fi
+ \fi
+ \fi
+ \fi}%
+ \fi
+ \fi
+ \endgroup
+ \if@ACM@engage\@typesetengagemetadata\fi
+ \setcounter{footnote}{0}%
+ \@mkabstract
+ \ifx\@translatedabstracts\@empty\else
+ \@translatedabstracts\fi
+ \if@ACM@printccs
+ \ifx\@concepts\@empty\else\bgroup
+ {\@specialsection{CCS Concepts}%
+ \noindent\@concepts\par}\egroup
+ \fi
+ \fi
+ \if@ACM@acmcp\else
+ \ifx\@keywords\@empty\else\bgroup
+ {\@specialsection{\keywordsname}%
+ \noindent\@keywords\par}\egroup
+ \fi
+ \ifx\@translatedkeywords\@empty\else
+ \@translatedkeywords
+ \fi
+ \fi
+ \let\metadata@authors=\authors
+ \nxandlist{, }{, }{, }\metadata@authors
+ \def\@ACM@checkaffil{}%
+ \hypersetup{%
+ pdfauthor={\metadata@authors},
+ pdftitle={\@title},
+ pdfsubject={\@concepts},
+ pdfkeywords={\@keywords},
+ pdfcreator={LaTeX with acmart
+ \csname ver@\@classname.cls\endcsname\space
+ and hyperref
+ \csname ver@hyperref.sty\endcsname}}%
+ \andify\authors
+ \andify\shortauthors
+ \global\let\authors=\authors
+ \global\let\shortauthors=\shortauthors
+ \if@ACM@printacmref
+ \@mkbibcitation
+ \fi
+ \global\@topnum\z@ % this prevents floats from falling
+ % at the top of page 1
+ \global\@botnum\z@ % we do not want them to be on the bottom either
+ \@printendtopmatter
+ \@afterindentfalse
+ \@afterheading
+ \if@ACM@acmcp
+ \set@ACM@acmcpbox
+ \AtEndDocument{\end@ACM@color@frame}%
+ \@ACM@color@frame
+ \fi
+}
+\newbox\@ACM@acmcpbox
+\def\set@ACM@acmcpbox{%
+ \bgroup
+ \hsize=5pc
+ \global\setbox\@ACM@acmcpbox=\vbox{%
+ \setlength{\parindent}{\z@}%
+ {\includegraphics[width=\hsize]{acm-jdslogo}\par}%
+ \scriptsize
+ \ifnum\getrefnumber{TotPages}>1\else
+ \zrefused{@ACM@acmcpbox@y}%
+ \zrefused{@ACM@acmcpframe@y}%
+ \@tempdima=\dimexpr\zposy{@ACM@acmcpbox@y}sp -
+ \zposy{@ACM@acmcpframe@y}sp+0.3\FrameSep+
+ \@ACM@acmcp@delta\relax
+ \ifdim\@tempdima>0pt\relax
+ \vspace*{\@tempdima}%
+ \protected@write\@auxout{}%
+ {\string\global\@ACM@acmcp@delta=\the\@tempdima\relax}%
+ \fi
+ \fi
+ \ifx\@acmCodeDataLink\@empty\else\bigskip
+ Code and data links:\\ \@acmCodeDataLink\par\bigskip
+ \fi
+ \ifx\@keywords\@empty\else\bigskip
+ Keywords: \@keywords\par
+ \fi
+ \ifx\@acmContributions\@empty\else\bigskip
+ \@acmContributions\par
+ \fi
+ \ifx\@empty\@authorsaddresses\else\bigskip\@setauthorsaddresses\fi
+ \zsaveposy{@ACM@acmcpbox@y}%
+ }
+\egroup}
+\def\@specialsection#1{%
+ \let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig
+ \ifcase\ACM@format@nr
+ \relax % manuscript
+ \par\medskip\small\noindent#1: %
+ \or % acmsmall
+ \par\medskip\small\noindent#1: %
+ \or % acmlarge
+ \par\medskip\small\noindent#1: %
+ \or % acmtog
+ \par\medskip\small\noindent#1: %
+ \or % sigconf
+ \section*{#1}%
+ \or % siggraph
+ \section*{#1}%
+ \or % sigplan
+ \noindentparagraph*{#1:~}%
+ \or % sigchi
+ \section*{#1}%
+ \or % sigchi-a
+ \section*{#1}%
+ \or % acmengage
+ \section*{#1}%
+ \or % acmcp
+ \section*{#1}%
+ \fi
+ \let\@vspace\@vspace@acm
+ \let\@vspacer\@vspacer@acm
+}
+\def\@printtopmatter{%
+ \ifx\@startPage\@empty
+ \gdef\@startPage{1}%
+ \else
+ \setcounter{page}{\@startPage}%
+ \fi
+ \@tempdima=\ht\mktitle@bx
+ \advance\@tempdima by \dp\mktitle@bx
+ \ifdim\@tempdima>0.9\textheight
+ \loop
+ \setbox\@tempboxa=\vsplit \mktitle@bx to 0.9\textheight
+ \thispagestyle{firstpagestyle}%
+ \noindent\unvbox\@tempboxa
+ \clearpage
+ \@tempdima=\ht\mktitle@bx
+ \advance\@tempdima by \dp\mktitle@bx
+ \ifdim\@tempdima>0.9\textheight\repeat
+ \fi
+ \thispagestyle{firstpagestyle}%
+ \noindent
+ \ifcase\ACM@format@nr
+ \relax % manuscript
+ \box\mktitle@bx\par
+ \or % acmsmall
+ \box\mktitle@bx\par
+ \or % acmlarge
+ \box\mktitle@bx\par
+ \or % acmtog
+ \twocolumn[\box\mktitle@bx]%
+ \or % sigconf
+ \twocolumn[\box\mktitle@bx]%
+ \or % siggraph
+ \twocolumn[\box\mktitle@bx]%
+ \or % sigplan
+ \twocolumn[\box\mktitle@bx]%
+ \or % sigchi
+ \twocolumn[\box\mktitle@bx]%
+ \or % sigchi-a
+ \par\box\mktitle@bx\par\bigskip
+ \or % acmengage
+ \twocolumn[\box\mktitle@bx]%
+ \or % acmcp
+ \box\mktitle@bx\par
+ \fi
+}
+\def\@mktitle{%
+ \ifcase\ACM@format@nr
+ \relax % manuscript
+ \@mktitle@i
+ \or % acmsmall
+ \@mktitle@i
+ \or % acmlarge
+ \@mktitle@i
+ \or % acmtog
+ \@mktitle@i
+ \or % sigconf
+ \@mktitle@iii
+ \or % siggraph
+ \@mktitle@iii
+ \or % sigplan
+ \@mktitle@iii
+ \or % sigchi
+ \@mktitle@iii
+ \or % sigchi-a
+ \@mktitle@iv
+ \or % acmengage
+ \@mktitle@iii
+ \or % acmcp
+ \@mktitle@i
+ \fi
+}
+\def\@titlefont{%
+ \ifcase\ACM@format@nr
+ \relax % manuscript
+ \LARGE\sffamily\bfseries
+ \or % acmsmall
+ \LARGE\sffamily\bfseries
+ \or % acmlarge
+ \LARGE\sffamily\bfseries
+ \or % acmtog
+ \Huge\sffamily
+ \or % sigconf
+ \Huge\sffamily\bfseries
+ \or % siggraph
+ \Huge\sffamily\bfseries
+ \or % sigplan
+ \Huge\bfseries
+ \or % sigchi
+ \Huge\sffamily\bfseries
+ \or % sigchi-a
+ \Huge\bfseries
+ \or % acmengage
+ \Huge\sffamily\bfseries
+ \or % acmcp
+ \LARGE\sffamily\bfseries
+ \fi}
+\def\@subtitlefont{\normalsize
+ \ifcase\ACM@format@nr
+ \relax % manuscript
+ \mdseries
+ \or % acmsmall
+ \mdseries
+ \or % acmlarge
+ \mdseries
+ \or % acmtog
+ \LARGE
+ \or % sigconf
+ \LARGE\mdseries
+ \or % siggraph
+ \LARGE\mdseries
+ \or % sigplan
+ \LARGE\mdseries
+ \or % sigchi
+ \LARGE\mdseries
+ \or % sigchi-a
+ \mdseries
+ \or % acmengage
+ \LARGE\mdseries
+ \or % acmcp
+ \mdseries
+ \fi}
+\def\@mktitle@i{\hsize=\textwidth
+ \if@ACM@acmcp
+ \advance\hsize by -6pc%
+ \fi
+ \@ACM@title@width=\hsize
+ \setbox\mktitle@bx=\vbox{\noindent\@titlefont
+ \parbox[t]{\@ACM@title@width}{\raggedright
+ \@titlefont\noindent
+ \@title\@translatedtitle%
+ \ifx\@subtitle\@empty\else
+ \par\noindent{\@subtitlefont\@subtitle\@translatedsubtitle}%
+ \fi}%
+ \par\bigskip}}%
+\def\@mktitle@iii{\hsize=\textwidth
+ \setbox\mktitle@bx=\vbox{\@titlefont\centering
+ \@ACM@title@width=\hsize
+ \parbox[t]{\@ACM@title@width}{\centering\@titlefont
+ \@title\@translatedtitle%
+ \ifx\@subtitle\@empty\else
+ \par\noindent{\@subtitlefont\@subtitle\@translatedsubtitle}
+ \fi
+ }%
+ \par\bigskip}}%
+\def\@mktitle@iv{\hsize=\textwidth
+ \setbox\mktitle@bx=\vbox{\raggedright\leftskip5pc\@titlefont
+ \noindent\leavevmode\leaders\hrule height 2pt\hfill\kern0pt\par
+ \noindent\@title\@translatedtitle%
+ \ifx\@subtitle\@empty\else
+ \par\noindent\@subtitlefont\@subtitle\@translatedsubtitle%
+ \fi
+ \par\bigskip}}%
+\newbox\@ACM@commabox
+\def\@ACM@addtoaddress#1{%
+ \ifvmode\else
+ \if@ACM@affiliation@obeypunctuation\else
+ \setbox\@ACM@commabox=\hbox{, }%
+ \unskip\cleaders\copy\@ACM@commabox\hskip\wd\@ACM@commabox
+ \fi\fi
+ #1}
+\def\streetaddress#1{\ClassWarning{\@classname}{ACM no longer collects
+ authors' postal addresses. I am ignoring your street
+ address}\unskip\ignorespaces}
+\def\postcode#1{\ClassWarning{\@classname}{ACM no longer collects
+ authors' postal addresses. I am ignoring your postal
+ code}\unskip\ignorespaces}
+\if@ACM@journal
+ \def\position#1{\unskip\ignorespaces}
+ \def\institution#1{\global\@ACM@instpresenttrue
+ \unskip~#1\ignorespaces}
+ \def\city#1{\global\@ACM@citypresenttrue\unskip\ignorespaces}
+ \def\state#1{\unskip\ignorespaces}
+ \newcommand\department[2][0]{\unskip\ignorespaces}
+ \def\country#1{\StrDel{#1}{ }[\@tempa]%
+ \ifx\@tempa\@empty\else
+ \global\@ACM@countrypresenttrue\fi
+ \if@ACM@affiliation@obeypunctuation\else, \fi#1\ignorespaces}
+\else
+ \def\position#1{\if@ACM@affiliation@obeypunctuation#1\else#1\par\fi}%
+ \def\institution#1{\global\@ACM@instpresenttrue
+ \if@ACM@affiliation@obeypunctuation#1\else#1\par\fi}%
+ \newcommand\department[2][0]{\if@ACM@affiliation@obeypunctuation
+ #2\else#2\par\fi}%
+ \def\city#1{\global\@ACM@citypresenttrue\@ACM@addtoaddress{#1}}%
+ \let\state\@ACM@addtoaddress
+ \def\country#1{\global\@ACM@countrypresenttrue\@ACM@addtoaddress{#1}}%
+\fi
+\def\@mkauthors{\begingroup
+ \hsize=\textwidth
+ \ifcase\ACM@format@nr
+ \relax % manuscript
+ \@mkauthors@i
+ \or % acmsmall
+ \@mkauthors@i
+ \or % acmlarge
+ \@mkauthors@i
+ \or % acmtog
+ \@mkauthors@i
+ \or % sigconf
+ \@mkauthors@iii
+ \or % siggraph
+ \@mkauthors@iii
+ \or % sigplan
+ \@mkauthors@iii
+ \or % sigchi
+ \@mkauthors@iii
+ \or % sigchi-a
+ \@mkauthors@iv
+ \or % acmengage
+ \@mkauthors@iii
+ \or % acmcp
+ \@mkauthors@i
+ \fi
+ \endgroup
+}
+\def\@authorfont{\Large\sffamily}
+\def\@affiliationfont{\normalsize\normalfont}
+\ifcase\ACM@format@nr
+\relax % manuscript
+\or % acmsmall
+ \def\@authorfont{\large\sffamily}
+ \def\@affiliationfont{\small\normalfont}
+\or % acmlarge
+\or % acmtog
+ \def\@authorfont{\LARGE\sffamily}
+ \def\@affiliationfont{\large}
+\or % sigconf
+ \def\@authorfont{\LARGE}
+ \def\@affiliationfont{\large}
+\or % siggraph
+ \def\@authorfont{\normalsize\normalfont}
+ \def\@affiliationfont{\normalsize\normalfont}
+\or % sigplan
+ \def\@authorfont{\Large\normalfont}
+ \def\@affiliationfont{\normalsize\normalfont}
+\or % sigchi
+ \def\@authorfont{\bfseries}
+ \def\@affiliationfont{\mdseries}
+\or % sigchi-a
+ \def\@authorfont{\bfseries}
+ \def\@affiliationfont{\mdseries}
+\or % acmengage
+ \def\@authorfont{\LARGE}
+ \def\@affiliationfont{\large}
+\or % acmcp
+ \def\@authorfont{\large\sffamily}
+ \def\@affiliationfont{\small\normalfont}
+\fi
+\def\@typeset@author@line{%
+ \andify\@currentauthors\par\noindent
+ \@currentauthors\def\@currentauthors{}%
+ \ifx\@currentaffiliations\@empty\else
+ \andify\@currentaffiliations
+ \unskip, {\@currentaffiliations}\par
+ \fi
+ \def\@currentaffiliations{}}
+\newif\if@ACM@instpresent
+\@ACM@instpresenttrue
+\newif\if@ACM@citypresent
+\@ACM@citypresenttrue
+\newif\if@ACM@countrypresent
+\@ACM@countrypresenttrue
+\def\@ACM@resetaffil{%
+ \global\@ACM@instpresentfalse
+ \global\@ACM@citypresentfalse
+ \global\@ACM@countrypresentfalse
+}
+\def\@ACM@checkaffil{%
+ \if@ACM@instpresent\else
+ \ClassWarningNoLine{\@classname}{No institution present for an affiliation}%
+ \fi
+ \if@ACM@citypresent\else
+ \ClassWarningNoLine{\@classname}{No city present for an affiliation}%
+ \fi
+ \if@ACM@countrypresent\else
+ \ClassError{\@classname}{No country present for an affiliation}{ACM
+ requires each author to indicate their country using country macro.}%
+ \fi
+}
+\def\@mkauthors@i{%
+ \def\@currentauthors{}%
+ \def\@currentaffiliations{}%
+ \global\let\and\@typeset@author@line
+ \def\@author##1{%
+ \ifx\@currentauthors\@empty
+ \gdef\@currentauthors{\@authorfont\MakeTextUppercase{##1}}%
+ \else
+ \g@addto@macro{\@currentauthors}{\and\MakeTextUppercase{##1}}%
+ \fi
+ \gdef\and{}}%
+ \def\email##1##2{}%
+ \def\affiliation##1##2{%
+ \def\@tempa{##2}\ifx\@tempa\@empty\else
+ \ifx\@currentaffiliations\@empty
+ \gdef\@currentaffiliations{%
+ \setkeys{@ACM@affiliation@}{obeypunctuation=false}%
+ \setkeys{@ACM@affiliation@}{##1}%
+ \@ACM@resetaffil
+ \@affiliationfont##2\@ACM@checkaffil}%
+ \else
+ \g@addto@macro{\@currentaffiliations}{\and
+ \setkeys{@ACM@affiliation@}{obeypunctuation=false}%
+ \setkeys{@ACM@affiliation@}{##1}\@ACM@resetaffil
+ ##2\@ACM@checkaffil}%
+ \fi
+ \fi
+ \global\let\and\@typeset@author@line}%
+ \if@ACM@acmcp
+ \advance\hsize by -6pc%
+ \fi
+ \global\setbox\mktitle@bx=\vbox{\noindent\unvbox\mktitle@bx\par\medskip
+ \noindent\addresses\@typeset@author@line
+ \par\medskip}%
+}
+\newbox\author@bx
+\newdimen\author@bx@wd
+\newskip\author@bx@sep
+\author@bx@sep=1pc\relax
+\def\@typeset@author@bx{\bgroup\hsize=\author@bx@wd
+ \def\and{\par}\normalbaselines
+ \global\setbox\author@bx=\vtop{\if@ACM@sigchiamode\else\centering\fi
+ \@authorfont\@currentauthors\par\@affiliationfont
+ \@currentaffiliation}\egroup
+ \box\author@bx\hspace{\author@bx@sep}%
+ \gdef\@currentauthors{}%
+ \gdef\@currentaffiliation{}}
+\def\@mkauthors@iii{%
+ \author@bx@wd=\textwidth\relax
+ \advance\author@bx@wd by -\author@bx@sep\relax
+ \ifnum\@ACM@authorsperrow>0\relax
+ \divide\author@bx@wd by \@ACM@authorsperrow\relax
+ \else
+ \ifcase\num@authorgroups
+ \relax % 0?
+ \or % 1=one author per row
+ \or % 2=two authors per row
+ \divide\author@bx@wd by \num@authorgroups\relax
+ \or % 3=three authors per row
+ \divide\author@bx@wd by \num@authorgroups\relax
+ \or % 4=two authors per row (!)
+ \divide\author@bx@wd by 2\relax
+ \else % three authors per row
+ \divide\author@bx@wd by 3\relax
+ \fi
+ \fi
+ \advance\author@bx@wd by -\author@bx@sep\relax
+ \gdef\@currentauthors{}%
+ \gdef\@currentaffiliation{}%
+ \def\@author##1{\ifx\@currentauthors\@empty
+ \gdef\@currentauthors{\par##1}%
+ \else
+ \g@addto@macro\@currentauthors{\par##1}%
+ \fi
+ \gdef\and{}}%
+ \def\email##1##2{\ifx\@currentaffiliation\@empty
+ \gdef\@currentaffiliation{\bgroup
+ \mathchardef\UrlBreakPenalty=10000\nolinkurl{##2}\egroup}%
+ \else
+ \g@addto@macro\@currentaffiliation{\par\bgroup
+ \mathchardef\UrlBreakPenalty=10000\nolinkurl{##2}\egroup}%
+ \fi}%
+ \def\affiliation##1##2{\ifx\@currentaffiliation\@empty
+ \gdef\@currentaffiliation{%
+ \setkeys{@ACM@affiliation@}{obeypunctuation=false}%
+ \setkeys{@ACM@affiliation@}{##1}\@ACM@resetaffil
+ ##2\@ACM@checkaffil}%
+ \else
+ \g@addto@macro\@currentaffiliation{\par
+ \setkeys{@ACM@affiliation@}{obeypunctuation=false}%
+ \setkeys{@ACM@affiliation@}{##1}\@ACM@resetaffil
+ ##2\@ACM@checkaffil}%
+ \fi
+ \global\let\and\@typeset@author@bx
+}%
+ \hsize=\textwidth
+ \global\setbox\mktitle@bx=\vbox{\noindent
+ \unvbox\mktitle@bx\par\medskip\leavevmode
+ \lineskip=1pc\relax\centering\hspace*{-1em}%
+ \addresses\let\and\@typeset@author@bx\and\par\bigskip}}
+\def\@mkauthors@iv{%
+ \author@bx@wd=\columnwidth\relax
+ \advance\author@bx@wd by -\author@bx@sep\relax
+ \ifnum\@ACM@authorsperrow>0\relax
+ \divide\author@bx@wd by \@ACM@authorsperrow\relax
+ \else
+ \ifcase\num@authorgroups
+ \relax % 0?
+ \or % 1=one author per row
+ \else % 2=two authors per row
+ \divide\author@bx@wd by 2\relax
+ \fi
+ \fi
+ \advance\author@bx@wd by -\author@bx@sep\relax
+ \gdef\@currentauthors{}%
+ \gdef\@currentaffiliation{}%
+ \def\@author##1{\ifx\@currentauthors\@empty
+ \gdef\@currentauthors{\par##1}%
+ \else
+ \g@addto@macro\@currentauthors{\par##1}%
+ \fi
+ \gdef\and{}}%
+ \def\email##1##2{\ifx\@currentaffiliation\@empty
+ \gdef\@currentaffiliation{\nolinkurl{##2}}%
+ \else
+ \g@addto@macro\@currentaffiliation{\par\nolinkurl{##2}}%
+ \fi}%
+ \def\affiliation##1##2{\ifx\@currentaffiliation\@empty
+ \gdef\@currentaffiliation{%
+ \setkeys{@ACM@affiliation@}{obeypunctuation=false}%
+ \setkeys{@ACM@affiliation@}{##1}\@ACM@resetaffil
+ ##2\@ACM@checkaffil}%
+ \else
+ \g@addto@macro\@currentaffiliation{\par
+ \setkeys{@ACM@affiliation@}{obeypunctuation=false}%
+ \setkeys{@ACM@affiliation@}{##1}\@ACM@resetaffil
+ ##2\@ACM@checkaffil}%
+ \fi
+ \global\let\and\@typeset@author@bx}%
+ \bgroup\hsize=\columnwidth
+ \par\raggedright\leftskip=\z@
+ \lineskip=1pc\noindent
+ \addresses\let\and\@typeset@author@bx\and\par\bigskip\egroup}
+\def\@mkauthorsaddresses{%
+ \ifnum\num@authors>1\relax
+ Authors' \else Author's \fi
+ Contact Information:
+ \bgroup
+ \def\streetaddress##1{\ClassWarning{\@classname}{ACM no longer collects
+ authors' postal addresses. I am ignoring your street
+ address}\unskip\ignorespaces}%
+ \def\postcode##1{\ClassWarning{\@classname}{ACM no longer collects
+ authors' postal addresses. I am ignoring your postal
+ code}\unskip\ignorespaces}%
+ \def\position##1{\unskip\ignorespaces}%
+ \gdef\@ACM@institution@separator{, }%
+ \def\institution##1{\unskip\@ACM@institution@separator ##1\gdef\@ACM@institution@separator{ and }}%
+ \def\city##1{\unskip, ##1}%
+ \def\state##1{\unskip, ##1}%
+ \renewcommand\department[2][0]{\unskip\@addpunct, ##2}%
+ \def\country##1{\unskip, ##1}%
+ \def\and{\unskip; \gdef\@ACM@institution@separator{, }}%
+ \def\@author##1{##1}%
+ \def\email##1##2{\unskip, \nolinkurl{##2}}%
+ \addresses
+ \egroup}
+\AtEndDocument{\if@ACM@nonacm\else\if@ACM@journal
+ \ifx\@authorsaddresses\@empty
+ \ClassWarningNoLine{\@classname}{Authors'
+ addresses are mandatory for ACM journals}%
+ \fi\fi\fi}
+\def\@setaddresses{}
+\def\@authornotemark{\g@addto@macro\@currentauthors{\footnotemark\relax}}
+\def\@@authornotemark#1{\g@addto@macro\@currentauthors{\footnotemark[#1]}}
+\def\@mkteasers{%
+ \ifx\@teaserfigures\@empty\else
+ \def\@teaser##1{\par\bigskip\bgroup
+ \captionsetup{type=figure}##1\egroup\par}
+ \global\setbox\mktitle@bx=\vbox{\noindent\unvbox\mktitle@bx\par
+ \noindent\@Description@presentfalse
+ \@teaserfigures\par\if@Description@present\else
+ \global\@undescribed@imagestrue
+ \ClassWarning{\@classname}{A possible image without
+ description}\fi
+ \medskip}%
+ \fi}
+\def\@mkabstract{\bgroup
+ \ifx\@abstract\@lempty\else
+ {\phantomsection\addcontentsline{toc}{section}{\abstractname}%
+ \if@ACM@journal
+ \everypar{\setbox\z@\lastbox\everypar{}}\small
+ \else
+ \section*{\abstractname}%
+ \fi
+ \ignorespaces\@abstract\par}%
+ \fi\egroup}
+\def\@mktranslatedabstract#1{\selectlanguage{#1}%
+ \if@ACM@journal
+ \everypar{\setbox\z@\lastbox\everypar{}}\small
+ \else
+ \section*{\abstractname}%
+ \fi
+ \ignorespaces}
+\def\@mkbibcitation{\bgroup
+ \let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig
+ \def\@pages@word{\ifnum\getrefnumber{TotPages}=1\relax page\else pages\fi}%
+ \def\footnotemark{}%
+ \def\\{\unskip{} \ignorespaces}%
+ \def\footnote{\ClassError{\@classname}{Please do not use footnotes
+ inside a \string\title{} or \string\author{} command! Use
+ \string\titlenote{} or \string\authornote{} instead!}}%
+ \def\@article@string{\ifx\@acmArticle\@empty{\ }\else,
+ Article~\@acmArticle\ \fi}%
+ \par\medskip\small\noindent{\bfseries ACM Reference Format:}\par\nobreak
+ \noindent\bgroup
+ \def\\{\unskip{}, \ignorespaces}\authors\egroup. \@acmYear. \@title
+ \ifx\@subtitle\@empty. \else: \@subtitle. \fi
+ \if@ACM@nonacm\else
+ % The 'nonacm' option disables 'printacmref' by default,
+ % and the present \@mkbibcitation definition is never used
+ % in this case. The conditional remains useful if the user
+ % explicitly sets \settopmatter{printacmref=true}.
+ \if@ACM@journal@bibstrip
+ \textit{\@journalNameShort}
+ \@acmVolume, \@acmNumber \@article@string (\@acmPubDate),
+ \ref{TotPages}~\@pages@word.
+ \else
+ In \textit{\@acmBooktitle}%
+ \ifx\@acmEditors\@empty\textit{.}\else
+ \andify\@acmEditors\textit{, }\@acmEditors~\@editorsAbbrev.%
+ \fi\
+ ACM, New York, NY, USA%
+ \@article@string\unskip, \ref{TotPages}~\@pages@word.
+ \fi
+ \fi
+ \ifx\@acmDOI\@empty\else\@formatdoi{\@acmDOI}\fi
+\par\egroup}
+\def\@printendtopmatter{%
+ \let\@vspace\@vspace@orig
+ \let\@vspacer\@vspacer@orig
+ \par\bigskip
+ \let\@vspace\@vspace@acm
+ \let\@vspacer\@vspacer@acm
+ }
+\def\@setthanks{\long\def\thanks##1{\par##1\@addpunct.}\thankses}
+\def\@setauthorsaddresses{\@authorsaddresses\unskip\@addpunct.}
+\def\@typesetengagemetadata{%
+ \def\@setengagemetadata##1##2{\par\noindent\textbf{##1} ##2\par}%
+ \@acmengagemetadata}
+\ExplSyntaxOn
+\AddToHook{cmd/maketitle/before}
+ {\tagstructbegin{tag=Title}\tagmcbegin{} \tag_stop:}
+\AddToHook{cmd/maketitle/after}
+ {\tag_start:\tagmcend\tagstructend }
+\ExplSyntaxOff
+\RequirePackage{fancyhdr}
+\let\ACM@ps@plain\ps@plain
+\let\ACM@ps@myheadings\ps@myheadings
+\let\ACM@ps@headings\ps@headings
+\def\ACM@restore@pagestyle{%
+ \let\ps@plain\ACM@ps@plain
+ \let\ps@myheadings\ACM@ps@myheadings
+ \let\ps@headings\ACM@ps@headings}
+\AtBeginDocument{\ACM@restore@pagestyle}
+\if@ACM@review
+ \newsavebox{\ACM@linecount@bx}
+ \newlength\ACM@linecount@bxht
+ \newcount\ACM@linecount
+ \ACM@linecount\@ne\relax
+ \def\ACM@mk@linecount{%
+ \savebox{\ACM@linecount@bx}[4em][t]{\parbox[t]{4em}{\normalfont
+ \normalsize
+ \setlength{\ACM@linecount@bxht}{0pt}%
+ \loop{\color{red}\scriptsize\the\ACM@linecount}\\
+ \global\advance\ACM@linecount by \@ne
+ \addtolength{\ACM@linecount@bxht}{\baselineskip}%
+ \ifdim\ACM@linecount@bxht<\textheight\repeat
+ {\color{red}\scriptsize\the\ACM@linecount}\hfill
+ \global\advance\ACM@linecount by \@ne}}}
+\fi
+\def\ACM@linecountL{%
+ \if@ACM@review
+ \ACM@mk@linecount
+ \begin{picture}(0,0)%
+ \put(-26,-22){\usebox{\ACM@linecount@bx}}%
+ \end{picture}%
+ \fi}
+\def\ACM@linecountR{%
+ \if@ACM@review
+ \ifcase\ACM@format@nr
+ \relax % manuscript
+ \relax
+ \or % acmsmall
+ \relax
+ \or % acmlarge
+ \relax
+ \or % acmtog
+ \ACM@mk@linecount
+ \or % sigconf
+ \ACM@mk@linecount
+ \or % siggraph
+ \ACM@mk@linecount
+ \or % sigplan
+ \ACM@mk@linecount
+ \or % sigchi
+ \ACM@mk@linecount
+ \or % sigchi-a
+ \ACM@mk@linecount
+ \or % acmengage
+ \ACM@mk@linecount
+ \or % acmcp
+ \relax
+ \fi
+ \begin{picture}(0,0)%
+ \put(20,-22){\usebox{\ACM@linecount@bx}}%
+ \end{picture}%
+ \fi}
+\if@ACM@timestamp
+ % Subtracting 30 from \time gives us the effect of rounding down despite
+ % \numexpr rounding to nearest
+ \newcounter{ACM@time@hours}
+ \setcounter{ACM@time@hours}{\numexpr (\time - 30) / 60 \relax}
+ \newcounter{ACM@time@minutes}
+ \setcounter{ACM@time@minutes}{\numexpr \time - \theACM@time@hours * 60 \relax}
+ \newcommand\ACM@timestamp{%
+ \footnotesize%
+ \ifx\@acmSubmissionID\@empty\relax\else
+ Submission ID: \@acmSubmissionID.{ }%
+ \fi
+ \the\year-\two@digits{\the\month}-\two@digits{\the\day}{ }%
+ \two@digits{\theACM@time@hours}:\two@digits{\theACM@time@minutes}{. }%
+ Page \thepage\ of \@startPage--\pageref*{TotPages}.%
+ }
+\fi
+\def\@shortauthors{%
+ \if@ACM@anonymous
+ Anon.
+ \ifx\@acmSubmissionID\@empty\else Submission Id: \@acmSubmissionID\fi
+ \else\shortauthors\fi}
+\def\@headfootfont{\sffamily\footnotesize}
+\AtBeginDocument{%
+\fancypagestyle{standardpagestyle}{%
+ \fancyhf{}%
+ \renewcommand{\headrulewidth}{\z@}%
+ \renewcommand{\footrulewidth}{\z@}%
+ \def\@acmArticlePage{%
+ \ifx\@acmArticle\empty%
+ \if@ACM@printfolios\thepage\fi%
+ \else%
+ \@acmArticle\if@ACM@printfolios:\thepage\fi%
+ \fi%
+ }%
+ \if@ACM@journal@bibstrip@or@tog
+ \ifcase\ACM@format@nr
+ \relax % manuscript
+ \fancyhead[LE]{\ACM@linecountL\if@ACM@printfolios\thepage\fi}%
+ \fancyhead[RO]{\if@ACM@printfolios\thepage\fi}%
+ \fancyhead[RE]{\@shortauthors}%
+ \fancyhead[LO]{\ACM@linecountL\shorttitle}%
+ \if@ACM@nonacm\else%
+ \fancyfoot[RO,LE]{\footnotesize Manuscript submitted to ACM}
+ \fi%
+ \or % acmsmall
+ \fancyhead[LE]{\ACM@linecountL\@headfootfont\@acmArticlePage}%
+ \fancyhead[RO]{\@headfootfont\@acmArticlePage}%
+ \fancyhead[RE]{\@headfootfont\@shortauthors}%
+ \fancyhead[LO]{\ACM@linecountL\@headfootfont\shorttitle}%
+ \if@ACM@nonacm\else%
+ \fancyfoot[RO,LE]{\footnotesize \@journalNameShort, Vol. \@acmVolume, No.
+ \@acmNumber, Article \@acmArticle. Publication date: \@acmPubDate.}%
+ \fi
+ \or % acmlarge
+ \fancyhead[LE]{\ACM@linecountL\@headfootfont
+ \@acmArticlePage\quad\textbullet\quad\@shortauthors}%
+ \fancyhead[LO]{\ACM@linecountL}%
+ \fancyhead[RO]{\@headfootfont
+ \shorttitle\quad\textbullet\quad\@acmArticlePage}%
+ \if@ACM@nonacm\else%
+ \fancyfoot[RO,LE]{\footnotesize \@journalNameShort, Vol. \@acmVolume, No.
+ \@acmNumber, Article \@acmArticle. Publication date: \@acmPubDate.}%
+ \fi
+ \or % acmtog
+ \fancyhead[LE]{\ACM@linecountL\@headfootfont
+ \@acmArticlePage\quad\textbullet\quad\@shortauthors}%
+ \fancyhead[LO]{\ACM@linecountL}%
+ \fancyhead[RE]{\ACM@linecountR}%
+ \fancyhead[RO]{\@headfootfont
+ \shorttitle\quad\textbullet\quad\@acmArticlePage\ACM@linecountR}%
+ \if@ACM@nonacm\else
+ \if@ACM@journal@bibstrip
+ \fancyfoot[RO,LE]{\footnotesize \@journalNameShort,
+ Vol. \@acmVolume, No.~\@acmNumber, Article \@acmArticle.
+ Publication date: \@acmPubDate.}%
+ \else
+ \fancyfoot[RO,LE]{\footnotesize \acmConference@shortname,
+ \acmConference@date, \acmConference@venue.}%
+ \fi
+ \fi
+ \else % Proceedings
+ \fancyfoot[C]{\if@ACM@printfolios\footnotesize\thepage\fi}%
+ \fancyhead[LO]{\ACM@linecountL\@headfootfont\shorttitle}%
+ \fancyhead[RE]{\@headfootfont\@shortauthors\ACM@linecountR}%
+ \if@ACM@nonacm
+ \fancyhead[LE]{\ACM@linecountL}%
+ \fancyhead[RO]{\ACM@linecountR}%
+ \else%
+ \if@ACM@engage
+ \fancyhead[LE]{\ACM@linecountL\@headfootfont\footnotesize
+ EngageCSEdu. \ifx\@acmDOI\@empty\else\@formatdoi{\@acmDOI}\fi}%
+ \fancyhead[RO]{\@headfootfont
+ EngageCSEdu. \ifx\@acmDOI\@empty\else\@formatdoi{\@acmDOI}\fi
+ \ACM@linecountR}%
+ \else
+ \fancyhead[LE]{\ACM@linecountL\@headfootfont\footnotesize
+ \acmConference@shortname,
+ \acmConference@date, \acmConference@venue}%
+ \fancyhead[RO]{\@headfootfont
+ \acmConference@shortname,
+ \acmConference@date, \acmConference@venue\ACM@linecountR}%
+ \fi
+ \fi
+ \fi
+ \else % Proceedings
+ \fancyfoot[C]{\if@ACM@printfolios\footnotesize\thepage\fi}%
+ \fancyhead[LO]{\ACM@linecountL\@headfootfont\shorttitle}%
+ \fancyhead[RE]{\@headfootfont\@shortauthors\ACM@linecountR}%
+ \if@ACM@nonacm
+ \fancyhead[LE]{\ACM@linecountL}%
+ \fancyhead[RO]{\ACM@linecountR}%
+ \else%
+ \if@ACM@engage
+ \fancyhead[LE]{\ACM@linecountL\@headfootfont
+ EngageCSEdu. \ifx\@acmDOI\@empty\else\@formatdoi{\@acmDOI}\fi}%
+ \fancyhead[RO]{\@headfootfont
+ EngageCSEdu. \ifx\@acmDOI\@empty\else\@formatdoi{\@acmDOI}\fi
+ \ACM@linecountR}%
+ \else
+ \fancyhead[LE]{\ACM@linecountL\@headfootfont
+ \acmConference@shortname,
+ \acmConference@date, \acmConference@venue}%
+ \fancyhead[RO]{\@headfootfont
+ \acmConference@shortname,
+ \acmConference@date, \acmConference@venue\ACM@linecountR}%
+ \fi
+ \fi
+ \fi
+ \if@ACM@sigchiamode
+ \fancyheadoffset[L]{\dimexpr(\marginparsep+\marginparwidth)}%
+ \fi
+ \if@ACM@timestamp
+ \fancyfoot[LO,RE]{\ACM@timestamp}
+ \fi
+ \if@ACM@acmcp
+ \renewcommand{\footrulewidth}{0.1\p@}%
+ \fancyheadoffset[L]{46pt}%
+ \fancyhead[L]{\makebox[\z@][l]{%
+ \raisebox{-\dimexpr(0.2\textheight*(\ACM@ArticleType@nr-2))}{%
+ \rotatebox{90}{\colorbox{@ACM@Article@color}{\color{white}%
+ \strut\ACM@ArticleType~Article}}}}%
+ \ACM@linecountL}%
+ \fancyhead[R]{\makebox[\z@][r]{\box\@ACM@acmcpbox}}%
+ \fancyfoot[L,C]{}%
+ \fancyfoot[R]{\footnotesize
+ \@journalName, Volume~\@acmVolume, Issue~\@acmNumber,
+ \ifx\@acmArticle\@empty\else Article~\@acmArticle\fi\space
+ (\@acmPubDate)\ifx\@acmDOI\@empty\else\\\@formatdoi{\@acmDOI}\fi}
+ \fi
+}%
+\pagestyle{standardpagestyle}
+}
+\AtBeginDocument{%
+\fancypagestyle{firstpagestyle}{%
+ \fancyhf{}%
+ \renewcommand{\headrulewidth}{\z@}%
+ \renewcommand{\footrulewidth}{\z@}%
+ \if@ACM@journal@bibstrip@or@tog
+ \ifcase\ACM@format@nr
+ \relax % manuscript
+ \fancyhead[L]{\ACM@linecountL\@acmBadgeL}%
+ \fancyhead[R]{\@acmBadgeR}%
+ \fancyfoot[RO,LE]{\if@ACM@printfolios\small\thepage\fi}%
+ \if@ACM@nonacm\else%
+ \fancyfoot[RE,LO]{\footnotesize Manuscript submitted to ACM}%
+ \fi%
+ \or % acmsmall
+ \if@ACM@nonacm\else%
+ \fancyfoot[RO,LE]{\footnotesize \@journalNameShort, Vol. \@acmVolume, No.
+ \@acmNumber, Article \@acmArticle. Publication date:
+ \@acmPubDate.}%
+ \fi%
+ \fancyhead[LE]{\ACM@linecountL\@acmBadgeL}%
+ \fancyhead[LO]{\ACM@linecountL\@acmBadgeL}%
+ \fancyhead[RO]{\@acmBadgeR}%
+ \fancyhead[RE]{\@acmBadgeR}%
+ \or % acmlarge
+ \if@ACM@nonacm\else%
+ \fancyfoot[RO,LE]{\footnotesize \@journalNameShort, Vol. \@acmVolume, No.
+ \@acmNumber, Article \@acmArticle. Publication date:
+ \@acmPubDate.}%
+ \fi%
+ \fancyhead[RO]{\@acmBadgeR}%
+ \fancyhead[RE]{\@acmBadgeR}%
+ \fancyhead[LE]{\ACM@linecountL\@acmBadgeL}%
+ \fancyhead[LO]{\ACM@linecountL\@acmBadgeL}%
+ \or % acmtog
+ \if@ACM@nonacm\else%
+ \if@ACM@journal@bibstrip
+ \fancyfoot[RO,LE]{\footnotesize \@journalNameShort,
+ Vol. \@acmVolume, No.~\@acmNumber, Article \@acmArticle.
+ Publication date: \@acmPubDate.}%
+ \else
+ \fancyfoot[RO,LE]{\footnotesize \acmConference@shortname,
+ \acmConference@date, \acmConference@venue.}%
+ \fi
+ \fi%
+ \fancyhead[L]{\ACM@linecountL\@acmBadgeL}%
+ \fancyhead[R]{\@acmBadgeR\ACM@linecountR}%
+ \else % Conference proceedings
+ \fancyhead[L]{\ACM@linecountL\@acmBadgeL}%
+ \fancyhead[R]{\@acmBadgeR\ACM@linecountR}%
+ \fancyfoot[C]{\if@ACM@printfolios\footnotesize\thepage\fi}%
+ \fi
+ \else
+ \fancyhead[L]{\ACM@linecountL\@acmBadgeL}%
+ \fancyhead[R]{\@acmBadgeR\ACM@linecountR}%
+ \fancyfoot[C]{\if@ACM@printfolios\footnotesize\thepage\fi}%
+ \fi
+ \if@ACM@timestamp
+ \ifnum\ACM@format@nr=0\relax % Manuscript
+ \fancyfoot[LO,RE]{\ACM@timestamp\quad
+ \if@ACM@nonacm\else
+ \footnotesize Manuscript submitted to ACM
+ \fi}
+ \else
+ \fancyfoot[LO,RE]{\ACM@timestamp}
+ \fi
+ \fi
+ \if@ACM@acmcp
+ \renewcommand{\footrulewidth}{0.1\p@}%
+ \fancyheadoffset[L]{46pt}%
+ \fancyhead[L]{\makebox[\z@][l]{%
+ \raisebox{-\dimexpr(0.2\textheight*(\ACM@ArticleType@nr-2))}{%
+ \rotatebox{90}{\colorbox{@ACM@Article@color}{\color{white}%
+ \strut\ACM@ArticleType~Article}}}}%
+ \ACM@linecountL\@acmBadgeL}%
+ \fancyhead[R]{\@acmBadgeR\makebox[\z@][r]{\box\@ACM@acmcpbox}}%
+ \fancyfoot[L,C]{}%
+ \fancyfoot[R]{\footnotesize
+ \@journalName, Volume~\@acmVolume, Issue~\@acmNumber,
+ \ifx\@acmArticle\@empty\else Article~\@acmArticle\fi\space
+ (\@acmPubDate)\ifx\@acmDOI\@empty\else\\\@formatdoi{\@acmDOI}\fi}
+ \fi
+}}
+\def\ACM@NRadjust#1{%
+ \begingroup
+ \expandafter\ifx\csname Sectionformat\endcsname\relax
+ % do nothing when \Sectionformat is unknown
+ \def\next{\endgroup #1}%
+ \else
+ \def\next{\endgroup
+ \let\realSectionformat\Sectionformat
+ \def\ACM@sect@format@{#1}%
+ \let\Sectionformat\ACM@NR@adjustedSectionformat
+ %% next lines added 2018-06-17 to ensure section number is styled
+ \let\real@adddotafter\@adddotafter
+ \let\@adddotafter\ACM@adddotafter
+ #1{}% imposes the styles, but nullifies \MakeUppercase
+ \let\@adddotafter\real@adddotafter
+ }%
+ \fi \next
+}
+\def\ACM@NR@adjustedSectionformat#1#2{%
+ \realSectionformat{\ACM@sect@format{#1}}{#2}%
+ \let\Sectionformat\realSectionformat}
+\DeclareRobustCommand{\ACM@sect@format}{\ACM@sect@format@}
+\def\ACM@sect@format@null#1{#1}
+\let\ACM@sect@format@\ACM@sect@format@null
+\AtBeginDocument{%
+ \expandafter\ifx\csname LTX@adddotafter\endcsname\relax
+ \let\LTX@adddotafter\@adddotafter
+ \fi
+}
+\def\ACM@adddotafter#1{\ifx\relax#1\relax\else\LTX@adddotafter{#1}\fi}
+\renewcommand\section{\def\@toclevel{1}%
+ \@startsection{section}{1}{\z@}%
+ {-.75\baselineskip \@plus -2\p@ \@minus -.2\p@}%
+ {.25\baselineskip}%
+ {\ACM@NRadjust\@secfont}}
+\renewcommand\subsection{\def\@toclevel{2}%
+ \@startsection{subsection}{2}{\z@}%
+ {-.75\baselineskip \@plus -2\p@ \@minus -.2\p@}%
+ {.25\baselineskip}%
+ {\ACM@NRadjust\@subsecfont}}
+\renewcommand\subsubsection{\def\@toclevel{3}%
+ \@startsection{subsubsection}{3}{\z@}%
+ {-.5\baselineskip \@plus -2\p@ \@minus -.2\p@}%
+ {-3.5\p@}%
+ {\ACM@NRadjust{\@subsubsecfont\@adddotafter}}}
+\renewcommand\paragraph{\def\@toclevel{4}%
+ \@startsection{paragraph}{4}{\parindent}%
+ {-.5\baselineskip \@plus -2\p@ \@minus -.2\p@}%
+ {-3.5\p@}%
+ {\ACM@NRadjust{\@parfont\@adddotafter}}}
+\newcommand\noindentparagraph{\def\@toclevel{4}%
+ \@startsection{paragraph}{4}{\z@}%
+ {-.5\baselineskip \@plus -2\p@ \@minus -.2\p@}%
+ {-3.5\p@}%
+ {\ACM@NRadjust{\@parfont}}}
+\renewcommand\part{\def\@toclevel{9}%
+ \@startsection{part}{9}{\z@}%
+ {-10\p@ \@plus -4\p@ \@minus -2\p@}%
+ {4\p@}%
+ {\ACM@NRadjust\@parfont}}
+\def\section@raggedright{\@rightskip\@flushglue
+ \rightskip\@rightskip
+ \leftskip\z@skip
+ \parindent\z@}
+\def\@secfont{\sffamily\bfseries\section@raggedright}
+\def\@subsecfont{\sffamily\bfseries\section@raggedright}
+\def\@subsubsecfont{\sffamily\itshape}
+\def\@parfont{\itshape}
+\setcounter{secnumdepth}{3}
+\ifcase\ACM@format@nr
+\relax % manuscript
+\or % acmsmall
+\or % acmlarge
+ \def\@secfont{\sffamily\large\section@raggedright}
+ \def\@subsecfont{\sffamily\large\section@raggedright}
+\or % acmtog
+ \def\@secfont{\sffamily\large\section@raggedright}
+ \def\@subsecfont{\sffamily\large\section@raggedright}
+\or % sigconf
+ \def\@secfont{\bfseries\Large\section@raggedright}
+ \def\@subsecfont{\bfseries\Large\section@raggedright}
+\or % siggraph
+ \def\@secfont{\sffamily\bfseries\Large\section@raggedright}
+ \def\@subsecfont{\sffamily\bfseries\Large\section@raggedright}
+\or % sigplan
+ \def\@secfont{\bfseries\Large\section@raggedright}
+ \def\@subsecfont{\bfseries\section@raggedright}
+ \def\@subsubsecfont{\bfseries\section@raggedright}
+ \def\@parfont{\bfseries\itshape}
+ \def\@subparfont{\itshape}
+\or % sigchi
+ \setcounter{secnumdepth}{1}
+ \def\@secfont{\sffamily\bfseries\section@raggedright}
+ \def\@subsecfont{\sffamily\bfseries\section@raggedright}
+\or % sigchi-a
+ \setcounter{secnumdepth}{0}
+ \def\@secfont{\sffamily\bfseries\section@raggedright}
+ \def\@subsecfont{\sffamily\bfseries\section@raggedright}
+\or % acmengage
+ \def\@secfont{\bfseries\Large\section@raggedright}
+ \def\@subsecfont{\bfseries\Large\section@raggedright}
+\or %acmcp
+\fi
+\def\@adddotafter#1{#1\@addpunct{.}}
+\def\@addspaceafter#1{#1\@addpunct{\enspace}}
+\if@ACM@acmcp
+ \setcounter{secnumdepth}{-1}%
+\fi
+\providecommand*\@dotsep{4.5}
+\def\@acmplainbodyfont{\itshape}
+\def\@acmplainindent{\parindent}
+\def\@acmplainheadfont{\scshape}
+\def\@acmplainnotefont{\@empty}
+\ifcase\ACM@format@nr
+\relax % manuscript
+\or % acmsmall
+\or % acmlarge
+\or % acmtog
+\or % sigconf
+\or % siggraph
+\or % sigplan
+ \def\@acmplainbodyfont{\itshape}
+ \def\@acmplainindent{\z@}
+ \def\@acmplainheadfont{\bfseries}
+ \def\@acmplainnotefont{\normalfont}
+\or % sigchi
+\or % sigchi-a
+\or % acmengage
+\or % acmcp
+\fi
+\newtheoremstyle{acmplain}%
+ {.5\baselineskip\@plus.2\baselineskip
+ \@minus.2\baselineskip}% space above
+ {.5\baselineskip\@plus.2\baselineskip
+ \@minus.2\baselineskip}% space below
+ {\@acmplainbodyfont}% body font
+ {\@acmplainindent}% indent amount
+ {\@acmplainheadfont}% head font
+ {.}% punctuation after head
+ {.5em}% spacing after head
+ {\thmname{#1}\thmnumber{ #2}\thmnote{ {\@acmplainnotefont(#3)}}}% head spec
+\def\@acmdefinitionbodyfont{\normalfont}
+\def\@acmdefinitionindent{\parindent}
+\def\@acmdefinitionheadfont{\itshape}
+\def\@acmdefinitionnotefont{\@empty}
+\ifcase\ACM@format@nr
+\relax % manuscript
+\or % acmsmall
+\or % acmlarge
+\or % acmtog
+\or % sigconf
+\or % siggraph
+\or % sigplan
+ \def\@acmdefinitionbodyfont{\normalfont}
+ \def\@acmdefinitionindent{\z@}
+ \def\@acmdefinitionheadfont{\bfseries}
+ \def\@acmdefinitionnotefont{\normalfont}
+\or % sigchi
+\or % sigchi-a
+\or % acmengage
+\or % acmcp
+\fi
+\newtheoremstyle{acmdefinition}%
+ {.5\baselineskip\@plus.2\baselineskip
+ \@minus.2\baselineskip}% space above
+ {.5\baselineskip\@plus.2\baselineskip
+ \@minus.2\baselineskip}% space below
+ {\@acmdefinitionbodyfont}% body font
+ {\@acmdefinitionindent}% indent amount
+ {\@acmdefinitionheadfont}% head font
+ {.}% punctuation after head
+ {.5em}% spacing after head
+ {\thmname{#1}\thmnumber{ #2}\thmnote{ {\@acmdefinitionnotefont(#3)}}}% head spec
+\theoremstyle{acmplain}
+\AtEndPreamble{%
+ \if@ACM@acmthm
+ \theoremstyle{acmplain}
+ \@ifundefined{theorem}{%
+ \newtheorem{theorem}{Theorem}[section]
+ }{}
+ \@ifundefined{conjecture}{%
+ \newtheorem{conjecture}[theorem]{Conjecture}
+ }{}
+ \@ifundefined{proposition}{%
+ \newtheorem{proposition}[theorem]{Proposition}
+ }{}
+ \@ifundefined{lemma}{%
+ \newtheorem{lemma}[theorem]{Lemma}
+ }{}
+ \@ifundefined{corollary}{%
+ \newtheorem{corollary}[theorem]{Corollary}
+ }{}
+ \theoremstyle{acmdefinition}
+ \@ifundefined{example}{%
+ \newtheorem{example}[theorem]{Example}
+ }{}
+ \@ifundefined{definition}{%
+ \newtheorem{definition}[theorem]{Definition}
+ }{}
+ \fi
+ \theoremstyle{acmplain}
+}
+\def\@proofnamefont{\scshape}
+\def\@proofindent{\indent}
+\ifcase\ACM@format@nr
+\relax % manuscript
+\or % acmsmall
+\or % acmlarge
+\or % acmtog
+\or % sigconf
+\or % siggraph
+\or % sigplan
+ \def\@proofnamefont{\itshape}
+ \def\@proofindent{\noindent}
+\or % sigchi
+\or % sigchi-a
+\or % acmengage
+\or % acmcp
+\fi
+\renewenvironment{proof}[1][\proofname]{\par
+ \pushQED{\qed}%
+ \normalfont \topsep6\p@\@plus6\p@\relax
+ \trivlist
+ \item[\@proofindent\hskip\labelsep
+ {\@proofnamefont #1\@addpunct{.}}]\ignorespaces
+}{%
+ \popQED\endtrivlist\@endpefalse
+}
+\AtEndPreamble{%
+ \if@ACM@pbalance
+ \global\@ACM@balancefalse
+ \ifcase\ACM@format@nr
+ \relax % manuscript
+ \or % acmsmall
+ \or % acmlarge
+ \or % acmtog
+ \RequirePackage{pbalance}%
+ \or % sigconf
+ \RequirePackage{pbalance}%
+ \or % siggraph
+ \RequirePackage{pbalance}%
+ \or % sigplan
+ \RequirePackage{pbalance}%
+ \or % sigchi
+ \RequirePackage{pbalance}%
+ \or % sigchi-a
+ \or % acmengage
+ \RequirePackage{pbalance}%
+ \or % acmcp
+ \fi
+ \fi
+ \if@ACM@balance
+ \ifcase\ACM@format@nr
+ \relax % manuscript
+ \global\@ACM@balancefalse
+ \or % acmsmall
+ \global\@ACM@balancefalse
+ \or % acmlarge
+ \global\@ACM@balancefalse
+ \or % acmtog
+ \RequirePackage{balance}%
+ \or % sigconf
+ \RequirePackage{balance}%
+ \or % siggraph
+ \RequirePackage{balance}%
+ \or % sigplan
+ \RequirePackage{balance}%
+ \or % sigchi
+ \RequirePackage{balance}%
+ \or % sigchi-a
+ \global\@ACM@balancefalse
+ \or % acmengage
+ \RequirePackage{balance}%
+ \or % acmcp
+ \global\@ACM@balancefalse
+ \fi
+ \fi
+}
+\AtEndDocument{%
+ \if@ACM@balance
+ \if@twocolumn
+ \balance
+ \fi\fi}
+\newcommand\acksname{Acknowledgments}
+\specialcomment{acks}{%
+ \begingroup
+ \section*{\acksname}
+ \phantomsection\addcontentsline{toc}{section}{\acksname}
+}{%
+ \endgroup
+}
+\def\grantsponsor#1#2#3{#2}
+\newcommand\grantnum[3][]{#3%
+ \def\@tempa{#1}\ifx\@tempa\@empty\else\space(\url{#1})\fi}
+\AtEndPreamble{%
+\if@ACM@screen
+ \includecomment{screenonly}
+ \excludecomment{printonly}
+\else
+ \excludecomment{screenonly}
+ \includecomment{printonly}
+\fi
+\if@ACM@anonymous
+ \excludecomment{anonsuppress}
+ \excludecomment{acks}
+\else
+ \includecomment{anonsuppress}
+\fi}
+\newcommand\showeprint[2][arxiv]{%
+ \def\@tempa{#1}%
+ \ifx\@tempa\@empty\def\@tempa{arxiv}\fi
+ \def\@tempb{arxiv}%
+ \ifx\@tempa\@tempb\relax
+ arXiv:\href{https://arxiv.org/abs/#2}{#2}%
+ \else
+ \def\@tempb{arXiv}%
+ \ifx\@tempa\@tempb\relax
+ arXiv:\href{https://arxiv.org/abs/#2}{#2}%
+ \else
+ #1:#2%
+ \fi
+ \fi}
+\def\theindex{\@restonecoltrue\if@twocolumn\@restonecolfalse\fi
+ \columnseprule\z@ \columnsep 35\p@
+ \@indextitlestyle
+ \let\item\@idxitem
+ \parindent\z@ \parskip\z@\@plus.3\p@\relax
+ \raggedright
+ \hyphenpenalty\@M
+ \footnotesize}
+\let\@vspace@orig=\@vspace
+\let\@vspacer@orig=\@vspacer
+\apptocmd{\@vspace}{\ClassWarning{\@classname}{\string\vspace\space should
+ only be used to provide space above/below surrounding
+ objects}}{}{}
+\apptocmd{\@vspacer}{\ClassWarning{\@classname}{\string\vspace\space should
+ only be used to provide space above/below surrounding
+ objects}}{}{}
+\let\@vspace@acm=\@vspace
+\let\@vspacer@acm=\@vspacer
+\let\ACM@origbaselinestretch\baselinestretch
+\AtEndDocument{\ifx\baselinestretch\ACM@origbaselinestretch\else
+ \ClassError{\@classname}{An attempt to redefine
+ \string\baselinestretch\space detected. Please do not do this for
+ ACM submissions!}\fi}
+\normalsize\normalfont\frenchspacing
+\endinput
+%%
+%% End of file `acmart-tagged.cls'.
diff --git a/Master/texmf-dist/tex/latex/acmart/acmart.cls b/Master/texmf-dist/tex/latex/acmart/acmart.cls
index d0bbde47afb..b6ea2e7f9c4 100644
--- a/Master/texmf-dist/tex/latex/acmart/acmart.cls
+++ b/Master/texmf-dist/tex/latex/acmart/acmart.cls
@@ -38,7 +38,7 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{acmart}
-[2024/05/27 v2.08 Typesetting articles for the Association for Computing Machinery]
+[2024/08/25 v2.09 Typesetting articles for the Association for Computing Machinery]
\def\@classname{acmart}
\InputIfFileExists{acmart-preload-hook.tex}{%
\ClassWarning{\@classname}{%
@@ -47,13 +47,13 @@
\RequirePackage{xkeyval}
\RequirePackage{xstring}
\RequirePackage{iftex}
-\define@choicekey*+{acmart.cls}{format}[\ACM@format\ACM@format@nr]{%
+\define@choicekey*+{\@classname.cls}{format}[\ACM@format\ACM@format@nr]{%
manuscript, acmsmall, acmlarge, acmtog, sigconf, siggraph,
sigplan, sigchi, sigchi-a, acmengage, acmcp}[manuscript]{}{%
\ClassError{\@classname}{The option format must be manuscript,
acmsmall, acmlarge, acmtog, sigconf, siggraph,
sigplan, sigchi or sigchi-a}}
-\def\@DeclareACMFormat#1{\DeclareOptionX{#1}{\setkeys{acmart.cls}{format=#1}}}
+\def\@DeclareACMFormat#1{\DeclareOptionX{#1}{\setkeys{\@classname.cls}{format=#1}}}
\@DeclareACMFormat{manuscript}
\@DeclareACMFormat{acmsmall}
\@DeclareACMFormat{acmlarge}
@@ -66,7 +66,7 @@
\@DeclareACMFormat{acmengage}
\@DeclareACMFormat{acmcp}
\ExecuteOptionsX{format}
-\define@boolkey+{acmart.cls}[@ACM@]{screen}[true]{%
+\define@boolkey+{\@classname.cls}[@ACM@]{screen}[true]{%
\if@ACM@screen
\PackageInfo{\@classname}{Using screen mode}%
\else
@@ -74,7 +74,7 @@
\fi}{\PackageError{\@classname}{The option screen can be either true or
false}}
\ExecuteOptionsX{screen=false}
-\define@boolkey+{acmart.cls}[@ACM@]{urlbreakonhyphens}[true]{%
+\define@boolkey+{\@classname.cls}[@ACM@]{urlbreakonhyphens}[true]{%
\if@ACM@urlbreakonhyphens
\PackageInfo{\@classname}{Using breaking urls on hyphens}%
\else
@@ -82,7 +82,7 @@
\fi}{\PackageError{\@classname}{The option urlbreakonhyphens can be either true or
false}}
\ExecuteOptionsX{urlbreakonhyphens=true}
-\define@boolkey+{acmart.cls}[@ACM@]{acmthm}[true]{%
+\define@boolkey+{\@classname.cls}[@ACM@]{acmthm}[true]{%
\if@ACM@acmthm
\PackageInfo{\@classname}{Requiring acmthm}%
\else
@@ -90,7 +90,7 @@
\fi}{\PackageError{\@classname}{The option acmthm can be either true or
false}}
\ExecuteOptionsX{acmthm=true}
-\define@boolkey+{acmart.cls}[@ACM@]{review}[true]{%
+\define@boolkey+{\@classname.cls}[@ACM@]{review}[true]{%
\if@ACM@review
\PackageInfo{\@classname}{Using review mode}%
\AtBeginDocument{\@ACM@printfoliostrue}%
@@ -99,7 +99,7 @@
\fi}{\PackageError{\@classname}{The option review can be either true or
false}}
\ExecuteOptionsX{review=false}
-\define@boolkey+{acmart.cls}[@ACM@]{authorversion}[true]{%
+\define@boolkey+{\@classname.cls}[@ACM@]{authorversion}[true]{%
\if@ACM@authorversion
\PackageInfo{\@classname}{Using authorversion mode}%
\else
@@ -107,7 +107,7 @@
\fi}{\PackageError{\@classname}{The option authorversion can be either true or
false}}
\ExecuteOptionsX{authorversion=false}
-\define@boolkey+{acmart.cls}[@ACM@]{nonacm}[true]{%
+\define@boolkey+{\@classname.cls}[@ACM@]{nonacm}[true]{%
\if@ACM@nonacm
\PackageInfo{\@classname}{Using nonacm mode}%
\AtBeginDocument{\@ACM@printacmreffalse}%
@@ -119,15 +119,15 @@
\fi}{\PackageError{\@classname}{The option nonacm can be either true or
false}}
\ExecuteOptionsX{nonacm=false}
-\define@boolkey+{acmart.cls}[@ACM@]{balance}[true]{}{%
+\define@boolkey+{\@classname.cls}[@ACM@]{balance}[true]{}{%
\PackageError{\@classname}{The option balance can be either true or
false}}
\ExecuteOptionsX{balance}
-\define@boolkey+{acmart.cls}[@ACM@]{pbalance}[true]{}{%
+\define@boolkey+{\@classname.cls}[@ACM@]{pbalance}[true]{}{%
\PackageError{\@classname}{The option pbalance can be either true or
false}}
\ExecuteOptionsX{pbalance=false}
-\define@boolkey+{acmart.cls}[@ACM@]{natbib}[true]{%
+\define@boolkey+{\@classname.cls}[@ACM@]{natbib}[true]{%
\if@ACM@natbib
\PackageInfo{\@classname}{Explicitly selecting natbib mode}%
\else
@@ -135,7 +135,7 @@
\fi}{\PackageError{\@classname}{The option natbib can be either true or
false}}
\ExecuteOptionsX{natbib=true}
-\define@boolkey+{acmart.cls}[@ACM@]{anonymous}[true]{%
+\define@boolkey+{\@classname.cls}[@ACM@]{anonymous}[true]{%
\if@ACM@anonymous
\PackageInfo{\@classname}{Using anonymous mode}%
\else
@@ -143,7 +143,7 @@
\fi}{\PackageError{\@classname}{The option anonymous can be either true or
false}}
\ExecuteOptionsX{anonymous=false}
-\define@boolkey+{acmart.cls}[@ACM@]{timestamp}[true]{%
+\define@boolkey+{\@classname.cls}[@ACM@]{timestamp}[true]{%
\if@ACM@timestamp
\PackageInfo{\@classname}{Using timestamp mode}%
\else
@@ -151,7 +151,7 @@
\fi}{\PackageError{\@classname}{The option timestamp can be either true or
false}}
\ExecuteOptionsX{timestamp=false}
-\define@boolkey+{acmart.cls}[@ACM@]{authordraft}[true]{%
+\define@boolkey+{\@classname.cls}[@ACM@]{authordraft}[true]{%
\if@ACM@authordraft
\PackageInfo{\@classname}{Using authordraft mode}%
\@ACM@timestamptrue
@@ -189,13 +189,13 @@
\ClassWarning{\@classname}{%
The format siggraph is now obsolete.\MessageBreak
I am switching to sigconf.}
- \setkeys{acmart.cls}{format=sigconf}
+ \setkeys{\@classname.cls}{format=sigconf}
\fi
\ifnum\ACM@format@nr=7\relax % sigchi
\ClassWarning{\@classname}{%
The format sigchi is now obsolete.\MessageBreak
I am switching to sigconf.}
- \setkeys{acmart.cls}{format=sigconf}
+ \setkeys{\@classname.cls}{format=sigconf}
\fi
\ifnum\ACM@format@nr=8\relax % sigchi
\ClassWarning{\@classname}{%
@@ -546,7 +546,6 @@
\fi}%
\fi
\ignorespaces}
-\def\@seccntformat#1{\csname the#1\endcsname\quad}
\def\@ssect#1#2#3#4#5{%
\@tempskipa #3\relax
\ifdim \@tempskipa>\z@
@@ -559,6 +558,7 @@
\def\@svsechd{#4{\hskip #1\relax #5}}%
\fi
\@xsect{#3}}
+\def\@seccntformat#1{\csname the#1\endcsname\quad}
\def\@starttoc#1#2{\begingroup\makeatletter
\setTrue{#1}%
\par\removelastskip\vskip\z@skip
@@ -2001,22 +2001,6 @@
Copyright held by the owner/author(s).
\fi}
\def\@formatdoi#1{\url{https://doi.org/#1}}
-\def\@ACM@copyright@check@cc{%
- \if@ACM@nonacm
- \ClassInfo{\@classname}{Using CC license with a non-acm
- material}%
- \else
- \if@ACM@engage
- \ClassInfo{\@classname}{Using CC license with ACM Enage
- material}%
- \else
- \ClassWarning{\@classname}{%
- Sorry, Creative Commons licenses are\MessageBreak
- currently not used with ACM publications\MessageBreak
- typeset by the authors}{Please use nonacm
- option or ACM Engage class to enable CC licenses}%
- \fi
- \fi}
\def\@copyrightpermission{%
\ifcase\acm@copyrightmode\relax % none
\or % acmcopyright
@@ -2145,7 +2129,6 @@
disseminate the work on their personal and corporate Web sites with
the appropriate attribution.
\or % CC
- \@ACM@copyright@check@cc
\IfEq{\ACM@cc@type}{zero}{%
\def\ACM@CC@Url{https://creativecommons.org/publicdomain/zero/1.0/legalcode}}{%
\edef\ACM@CC@Url{https://creativecommons.org/licenses/\ACM@cc@type/\ACM@cc@version/legalcode}}%
@@ -2321,7 +2304,7 @@
pdfsubject={\@concepts},
pdfkeywords={\@keywords},
pdfcreator={LaTeX with acmart
- \csname ver@acmart.cls\endcsname\space
+ \csname ver@\@classname.cls\endcsname\space
and hyperref
\csname ver@hyperref.sty\endcsname}}%
\andify\authors
@@ -3263,28 +3246,33 @@
\fi
}
\def\ACM@adddotafter#1{\ifx\relax#1\relax\else\LTX@adddotafter{#1}\fi}
-\renewcommand\section{\@startsection{section}{1}{\z@}%
+\renewcommand\section{\def\@toclevel{1}%
+ \@startsection{section}{1}{\z@}%
{-.75\baselineskip \@plus -2\p@ \@minus -.2\p@}%
{.25\baselineskip}%
{\ACM@NRadjust\@secfont}}
-\renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
+\renewcommand\subsection{\def\@toclevel{2}%
+ \@startsection{subsection}{2}{\z@}%
{-.75\baselineskip \@plus -2\p@ \@minus -.2\p@}%
{.25\baselineskip}%
{\ACM@NRadjust\@subsecfont}}
-\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
+\renewcommand\subsubsection{\def\@toclevel{3}%
+ \@startsection{subsubsection}{3}{\z@}%
{-.5\baselineskip \@plus -2\p@ \@minus -.2\p@}%
{-3.5\p@}%
{\ACM@NRadjust{\@subsubsecfont\@adddotafter}}}
-\renewcommand\paragraph{\@startsection{paragraph}{4}{\parindent}%
+\renewcommand\paragraph{\def\@toclevel{4}%
+ \@startsection{paragraph}{4}{\parindent}%
{-.5\baselineskip \@plus -2\p@ \@minus -.2\p@}%
{-3.5\p@}%
{\ACM@NRadjust{\@parfont\@adddotafter}}}
-\newcommand\noindentparagraph{\@startsection{paragraph}{4}{\z@}%
+\newcommand\noindentparagraph{\def\@toclevel{4}%
+ \@startsection{paragraph}{4}{\z@}%
{-.5\baselineskip \@plus -2\p@ \@minus -.2\p@}%
{-3.5\p@}%
{\ACM@NRadjust{\@parfont}}}
-
-\renewcommand\part{\@startsection{part}{9}{\z@}%
+\renewcommand\part{\def\@toclevel{9}%
+ \@startsection{part}{9}{\z@}%
{-10\p@ \@plus -4\p@ \@minus -2\p@}%
{4\p@}%
{\ACM@NRadjust\@parfont}}
diff --git a/Master/texmf-dist/tex/latex/acronym/acronym.sty b/Master/texmf-dist/tex/latex/acronym/acronym.sty
index cd6f1cf2921..26054b1c25e 100644
--- a/Master/texmf-dist/tex/latex/acronym/acronym.sty
+++ b/Master/texmf-dist/tex/latex/acronym/acronym.sty
@@ -5,7 +5,7 @@
%% The original source files were:
%%
%% acronym.dtx (with options: `acronym')
-%% Copyright 1995--2020 by Tobias Oetiker (tobi@oetiker.ch)
+%% Copyright 1995--2021 by Tobias Oetiker (tobi@oetiker.ch)
%% and individual authors listed elsewhere.
%% All rights reserved.
%%
@@ -40,8 +40,8 @@
%%
%%
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
-\ProvidesPackage{acronym}[2020/04/17
- v1.47
+\ProvidesPackage{acronym}[2024/03/30
+ v1.49
Support for acronyms (Tobias Oetiker)]
\RequirePackage{suffix,xstring}
\newif\ifAC@footnote
@@ -50,6 +50,9 @@
\newif\ifAC@nohyperlinks
\AC@nohyperlinksfalse
\DeclareOption{nohyperlinks}{\AC@nohyperlinkstrue}
+\newif\ifAC@noforwardlinks
+\AC@noforwardlinksfalse
+\DeclareOption{noforwardlinks}{\AC@noforwardlinkstrue}
\newif\ifAC@noacroprefix
\AC@noacroprefixfalse
\DeclareOption{noacroprefix}{\AC@noacroprefixtrue}
@@ -97,7 +100,7 @@
\AtBeginDocument{%
\@ifpackageloaded{hyperref}
{\let\AC@hyperlink=\hyperlink
- \let\AC@hyperref=\hyperref
+ \ifAC@noforwardlinks\else\let\AC@hyperref=\hyperref\fi
\newcommand*\AC@raisedhypertarget[2]{%
\Hy@raisedlink{\hypertarget{#1}{}}#2}%
\let\AC@hypertarget=\AC@raisedhypertarget
@@ -152,6 +155,8 @@
\def\Acp#1{\AChy@call{#1}\@Acp}%
\def\acfi#1{\AChy@call{#1}\AChy@acf}%
\def\Acfi#1{\AChy@call{#1}\AChy@Acf}%
+ \def\acfip#1{\AChy@call{#1}\AChy@acfp}%
+ \def\Acfip#1{\AChy@call{#1}\AChy@Acfp}%
\let\acsu\acs
\let\aclu\acl
\let\Aclu\Acl
@@ -201,6 +206,13 @@
\StrSplit{#1}{1}{\head}{\tail}%
\MakeUppercase\head\tail%
}
+\newcommand{\@firstupper@maybe}{%
+ \ifAC@upper
+ \expandafter\@firstupper
+ \else
+ \expandafter\@firstofone
+ \fi
+}
\ifAC@noacroprefix
\newcommand*\AC@prefix{}
\else
@@ -391,7 +403,7 @@
}
\newcommand*\AC@aclp[1]{%
\ifcsname fn@#1@PL\endcsname
- \csname fn@#1@PL\endcsname
+ \@firstupper@maybe{\csname fn@#1@PL\endcsname}%
\else
\AC@acl{#1}s%
\fi
@@ -415,11 +427,7 @@
\PackageWarning{acronym}{Acronym `#3' is not defined}%
\textbf{#3!}%
\else
- \ifAC@upper
- \@firstupper{\expandafter#2#1}%
- \else
- \expandafter#2#1%
- \fi
+ \@firstupper@maybe{\expandafter#2#1}%
\fi
}
\newcommand*\AC@acs[1]{%
@@ -436,7 +444,7 @@
\newcommand*{\acsa}[1]{%
\texorpdfstring{\protect\@acs{#1}}{#1}}
\newcommand*{\@acs}[1]{%
- \acsfont{\AC@acs{#1}}%
+ \acsfont{\AC@placelabel@part{#1}\AC@acs{#1}}%
%% having a footnote on acs sort of defeats the purpose
%% \ifAC@footnote
%% \footnote{\AC@acl{#1}{}}%
@@ -447,10 +455,10 @@
\newcommand*{\Acl}{\AC@starredfalse\protect\@Acl}%
\WithSuffix\newcommand\Acl*{\AC@starredtrue\protect\@Acl}%
\newcommand*{\@acl}[1]{%
- \AC@acl{#1}%
+ \AC@placelabel@part{#1}\AC@acl{#1}%
\ifAC@starred\else\AC@logged{#1}\fi}
\newcommand*{\@Acl}[1]{%
- \AC@Acl{#1}%
+ \AC@placelabel@part{#1}\AC@Acl{#1}%
\ifAC@starred\else\AC@logged{#1}\fi}
\newcommand*\@verridelabel[1]{%
\@bsphack
@@ -518,6 +526,12 @@
\let\AC@undonewlabel\@gobble
\fi
}%
+\newcommand*\AC@placelabel@part[1]{%
+ \expandafter\ifx\csname AC@\AC@prefix#1\endcsname\AC@used
+ \else
+ {\AC@phantomsection\@verridelabel{acro:#1}}%
+ \fi
+}%
\newcommand*\AC@placelabel[1]{%
\expandafter\ifx\csname AC@\AC@prefix#1\endcsname\AC@used
\else
@@ -591,12 +605,12 @@
\newcommand*{\@iaci}[1]{%
\ifcsname fn@#1@IL\endcsname
\ifAC@dua
- \csname fn@#1@IL\endcsname%
+ \@firstupper@maybe{\csname fn@#1@IL\endcsname}%
\else
\expandafter\ifx\csname AC@\AC@prefix#1\endcsname\AC@used%
\csname fn@#1@IS\endcsname%
\else
- \csname fn@#1@IL\endcsname%
+ \@firstupper@maybe{\csname fn@#1@IL\endcsname}%
\fi
\fi
\else
@@ -615,17 +629,17 @@
\newcommand*{\acspa}[1]{%
\texorpdfstring{\protect\@acsp{#1}}{\AC@acsp{#1}}}
\newcommand*{\@acsp}[1]{%
- \acsfont{\AC@acsp{#1}}%
+ \acsfont{\AC@placelabel@part{#1}\AC@acsp{#1}}%
\ifAC@starred\else\AC@logged{#1}\fi}
\newcommand*{\aclp}{\AC@starredfalse\protect\@aclp}%
\WithSuffix\newcommand\aclp*{\AC@starredtrue\protect\@aclp}%
\newcommand*{\Aclp}{\AC@starredfalse\protect\@Aclp}%
\WithSuffix\newcommand\Aclp*{\AC@starredtrue\protect\@Aclp}%
\newcommand*{\@aclp}[1]{%
- \AC@aclp{#1}%
+ \AC@placelabel@part{#1}\AC@aclp{#1}%
\ifAC@starred\else\AC@logged{#1}\fi}
\newcommand*{\@Aclp}[1]{%
- \AC@Aclp{#1}%
+ \AC@placelabel@part{#1}\AC@Aclp{#1}%
\ifAC@starred\else\AC@logged{#1}\fi}
\newcommand*{\acfp}{\AC@starredfalse\protect\acfpa}%
\WithSuffix\newcommand\acfp*{\AC@starredtrue\protect\acfpa}%
@@ -705,6 +719,28 @@
\acfsfont{(\acsfont{\AC@acs{#2}})}%
}%
\ifAC@starred\else\AC@logged{#2}\fi}
+\newcommand*{\acfip}{\AC@starredfalse\protect\acfipa}%
+\WithSuffix\newcommand\acfip*{\AC@starredtrue\protect\acfipa}%
+\newcommand*{\Acfip}{\AC@starredfalse\protect\Acfipa}%
+\WithSuffix\newcommand\Acfip*{\AC@starredtrue\protect\Acfipa}%
+\newcommand{\acfipa}[2][\AC@linebreakpenalty]{%
+ \texorpdfstring{\protect\@acfip[#1]{#2}}{{\AC@aclp{#2}} (#2)}}
+\newcommand{\Acfipa}[2][\AC@linebreakpenalty]{%
+ \texorpdfstring{\protect\@Acfip[#1]{#2}}{{\AC@Aclp{#2}} (#2)}}
+\newcommand*{\@acfip}[2][\AC@linebreakpenalty]{%
+ \acffont{%
+ \AC@placelabel{#2}{\itshape\AC@aclp{#2}}%
+ \nolinebreak[#1] %
+ \acfsfont{(\acsfont{\AC@acsp{#2}})}%
+ }%
+ \ifAC@starred\else\AC@logged{#2}\fi}
+\newcommand*{\@Acfip}[2][\AC@linebreakpenalty]{%
+ \acffont{%
+ \AC@placelabel{#2}{\itshape\AC@Aclp{#2}}%
+ \nolinebreak[#1] %
+ \acfsfont{(\acsfont{\AC@acsp{#2}})}%
+ }%
+ \ifAC@starred\else\AC@logged{#2}\fi}
\newcommand{\acused}[1]{%
\global\expandafter\let\csname AC@\AC@prefix#1\endcsname\AC@used%
\AC@addtoAC@clearlist{#1}}
diff --git a/Master/texmf-dist/tex/latex/adforn/adforn.sty b/Master/texmf-dist/tex/latex/adforn/adforn.sty
index b52f55068c5..d9634438e26 100644
--- a/Master/texmf-dist/tex/latex/adforn/adforn.sty
+++ b/Master/texmf-dist/tex/latex/adforn/adforn.sty
@@ -1,26 +1,86 @@
+%%
+%% This is file `adforn.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% adforn.dtx (with options: `sty')
+%%
+%% Copyright (C) 2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% fontscripts. You may however distribute the package fontscripts without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{adforn}[2019/10/13 v1.1b adforn CFR]
-\RequirePackage{pifont}
-{\Pifont{OrnementsADF}}
-
-\newcommand*{\adforn}[1]{%
- \Pisymbol{OrnementsADF}{#1}}
-
+\RequirePackage{svn-prov}
+\ProvidesPackageSVN[\filebase.sty]{$Id: adforn.dtx 10442 2024-09-29 18:25:09Z cfrees $}[v1.2 \revinfo]
+\DefineFileInfoSVN[adforn]
+\newif\if@adforn@digonnew
+\@ifundefined{ExplLoaderFileDate}{%
+ \IfFileExists{expl3.sty}{%
+ \RequirePackage{expl3}%
+ }{%
+ \@adforn@digonnewfalse
+ }%
+}{\@adforn@digonnewtrue}
+\if@adforn@digonnew
+\ExplSyntaxOn
+\keys_define:nn { adforn }
+{
+ scale .tl_set:N = \adforn@scale,
+ scale .initial:V = \@empty,
+}
+\else
+ \let\adforn@scale\@empty
+\fi
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\providecommand \IfFormatAtLeastTF { \@ifl@t@r \fmtversion }
+\IfFormatAtLeastTF { 2022-06-01 }
+{
+ \ProcessKeyOptions [ adforn ]
+}{
+ \RequirePackage { l3keys2e }
+ \ProcessKeysOptions { adforn }
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ExplSyntaxOff
+\DeclareRobustCommand{\adforn@style}{%% do NOT break line below!
+ \not@math@alphabet\adforn@style\relax
+ \fontencoding{U}\fontfamily{OrnementsADF}\fontseries{m}\fontshape{n}\selectfont
+}
+\newcommand*\adforn[1]{{\adforn@style\char#1}}
\newcommand*{\adfhalfleftarrowhead}{\adforn{1}}
\newcommand*{\adfhalfrightarrowhead}{\adforn{2}}
\gdef\adfast#1{%
- \ifcase #1 \relax
- \or \adforn{3}%
- \or \adforn{4}%
- \or \adforn{5}%
- \or \adforn{6}%
- \or \adforn{7}%
- \or \adforn{8}%
- \or \adforn{9}%
- \or \adforn{10}%
- \or \adforn{11}%
- \or \adforn{12}%
- \fi}
+\ifcase #1 \relax
+\or \adforn{3}%
+\or \adforn{4}%
+\or \adforn{5}%
+\or \adforn{6}%
+\or \adforn{7}%
+\or \adforn{8}%
+\or \adforn{9}%
+\or \adforn{10}%
+\or \adforn{11}%
+\or \adforn{12}%
+\fi}
\newcommand*{\adfhalfleafleft}{\adforn{13}}
\newcommand*{\adfdiamond}{\adforn{14}}
\newcommand*{\adfhalfleafright}{\adforn{15}}
@@ -84,7 +144,7 @@
\newcommand*{\adfbullet}{\adforn{73}}
\newcommand*{\adfS}{\adforn{74}}
\newcommand*{\adfgee}{\adforn{75}}
-
-\endinput
%% end adforn.sty
-
+\endinput
+%%
+%% End of file `adforn.sty'.
diff --git a/Master/texmf-dist/tex/latex/adforn/uornementsadf.fd b/Master/texmf-dist/tex/latex/adforn/uornementsadf.fd
index 1e0d4a6748c..3a6be26a167 100644
--- a/Master/texmf-dist/tex/latex/adforn/uornementsadf.fd
+++ b/Master/texmf-dist/tex/latex/adforn/uornementsadf.fd
@@ -1,17 +1,63 @@
-% Font declarations for OrnementsADF font
+%%
+%% This is file `uornementsadf.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% adforn.dtx (with options: `fd')
+%%
+%% Copyright (C) 2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% fontscripts. You may however distribute the package fontscripts without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ProvidesFile{uornements.fd}[v1.2 2024/09/29 font definitions for U/OrnementsADF.]
+ \expandafter\ifx\csname adforn@scale\endcsname\relax
+ \let\adforn@@scale\@empty
+ \else
+ \edef\adforn@@scale{s*[\csname adforn@scale\endcsname]}%
+ \fi
\DeclareFontFamily{U}{OrnementsADF}{}
-\DeclareFontShape{U}{OrnementsADF}{m}{n}{<-> OrnementsADF}{}
-\DeclareFontShape{U}{OrnementsADF}{m}{sc}{<-> OrnementsADF}{}
-\DeclareFontShape{U}{OrnementsADF}{m}{it}{<-> OrnementsADF}{}
-\DeclareFontShape{U}{OrnementsADF}{m}{sl}{<-> OrnementsADF}{}
-\DeclareFontShape{U}{OrnementsADF}{m}{si}{<-> OrnementsADF}{}
-\DeclareFontShape{U}{OrnementsADF}{b}{n}{<-> OrnementsADF}{}
-\DeclareFontShape{U}{OrnementsADF}{b}{sc}{<-> OrnementsADF}{}
-\DeclareFontShape{U}{OrnementsADF}{b}{it}{<-> OrnementsADF}{}
-\DeclareFontShape{U}{OrnementsADF}{b}{sl}{<-> OrnementsADF}{}
-\DeclareFontShape{U}{OrnementsADF}{b}{si}{<-> OrnementsADF}{}
-\DeclareFontShape{U}{OrnementsADF}{bx}{n}{<-> OrnementsADF}{}
-\DeclareFontShape{U}{OrnementsADF}{bx}{sc}{<-> OrnementsADF}{}
-\DeclareFontShape{U}{OrnementsADF}{bx}{it}{<-> OrnementsADF}{}
-\DeclareFontShape{U}{OrnementsADF}{bx}{sl}{<-> OrnementsADF}{}
-\DeclareFontShape{U}{OrnementsADF}{bx}{si}{<-> OrnementsADF}{}
+\DeclareFontShape{U}{OrnementsADF}{m}{n}{
+ <-> \adforn@@scale OrnementsADF
+}{}
+\DeclareFontShape{U}{OrnementsADF}{m}{sc}{<->ssub * OrnementsADF/m/n}{}
+\DeclareFontShape{U}{OrnementsADF}{m}{it}{<->ssub * OrnementsADF/m/sc}{}
+\DeclareFontShape{U}{OrnementsADF}{m}{sl}{<->ssub * OrnementsADF/m/it}{}
+\DeclareFontShape{U}{OrnementsADF}{m}{si}{<->ssub * OrnementsADF/m/sl}{}
+\DeclareFontShape{U}{OrnementsADF}{m}{scit}{<->ssub * OrnementsADF/m/si}{}
+\DeclareFontShape{U}{OrnementsADF}{m}{scsl}{<->ssub * OrnementsADF/m/scit}{}
+\DeclareFontShape{U}{OrnementsADF}{b}{n}{<->ssub * OrnementsADF/m/scsl}{}
+\DeclareFontShape{U}{OrnementsADF}{b}{sc}{<->ssub * OrnementsADF/b/n}{}
+\DeclareFontShape{U}{OrnementsADF}{b}{it}{<->ssub * OrnementsADF/b/sc}{}
+\DeclareFontShape{U}{OrnementsADF}{b}{sl}{<->ssub * OrnementsADF/b/it}{}
+\DeclareFontShape{U}{OrnementsADF}{b}{si}{<->ssub * OrnementsADF/b/sl}{}
+\DeclareFontShape{U}{OrnementsADF}{b}{scit}{<->ssub * OrnementsADF/b/si}{}
+\DeclareFontShape{U}{OrnementsADF}{b}{scsl}{<->ssub * OrnementsADF/b/scit}{}
+\DeclareFontShape{U}{OrnementsADF}{bx}{n}{<->ssub * OrnementsADF/b/scsl}{}
+\DeclareFontShape{U}{OrnementsADF}{bx}{sc}{<->ssub * OrnementsADF/bx/n}{}
+\DeclareFontShape{U}{OrnementsADF}{bx}{it}{<->ssub * OrnementsADF/bx/sc}{}
+\DeclareFontShape{U}{OrnementsADF}{bx}{sl}{<->ssub * OrnementsADF/bx/it}{}
+\DeclareFontShape{U}{OrnementsADF}{bx}{si}{<->ssub * OrnementsADF/bx/sl}{}
+\DeclareFontShape{U}{OrnementsADF}{bx}{scit}{<->ssub * OrnementsADF/bx/si}{}
+\DeclareFontShape{U}{OrnementsADF}{bx}{scsl}{<->ssub * OrnementsADF/bx/scit}{}
+\endinput
+%%
+%% End of file `uornementsadf.fd'.
diff --git a/Master/texmf-dist/tex/latex/aiplans/tikzlibraryaiplans.code.tex b/Master/texmf-dist/tex/latex/aiplans/tikzlibraryaiplans.code.tex
new file mode 100644
index 00000000000..5b6d23860c6
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/aiplans/tikzlibraryaiplans.code.tex
@@ -0,0 +1,121 @@
+\ProvidesPackage{aiplan}
+\RequirePackage{tikz}
+\RequirePackage{listofitems}
+\usetikzlibrary{calc}
+\usetikzlibrary{decorations.pathreplacing, decorations.markings}
+
+
+\tikzset{
+ action/.style n args={8}{
+ draw,
+ minimum width=3cm,
+ fill=blue,
+ rounded corners,
+ minimum height={max(#1,#2)*\baseHeight cm + 0.5*\baseHeight cm},
+ label={center:#7},
+ append after command={
+ \pgfextra{
+ % Define the node name
+ \edef\nodename{\tikzlastnode}
+ \ifx#3\empty % Check if label list is empty
+ \else % Process only if not empty
+ % Read the label content
+ \setsepchar{,}
+ \readlist\nameparts{\nodename}
+ \setsepchar{,}
+
+ \ifnum#8=0\relax
+ % Define positions for preconditions and effects relative to the node with shifts
+ \ifnum#1>0
+ \readlist\labellist{#3}
+ \foreach \i in {1,...,#1} {
+ % Precondition coordinates and lines
+ \coordinate (\nodename-pre-\i) at ([xshift=-#5cm, yshift=(-\i + (#1)/2+0.25) * \baseHeight cm] \nodename.west);
+ \draw (\nodename.west |- \nodename-pre-\i) -- +(-#5,0) node [midway, above, sloped, font=\scriptsize] {\labellist[\i]};
+ }
+ \fi;
+ \readlist\labellist{#4}
+ \ifnum#2>0
+ \foreach \j in {1,...,#2} {
+ % Effect coordinates and lines
+ \coordinate (\nodename-eff-\j) at ([xshift=#6cm, yshift=(-\j + (#2)/2+0.25) * \baseHeight cm] \nodename.east);
+ \draw (\nodename.east |- \nodename-eff-\j) -- +(#6,0) node [midway, above, sloped, font=\scriptsize] {\labellist[\j]};
+ }
+ \fi;
+ \else
+ \ifnum#1>0
+ \readlist\labellist{#3}
+ \foreach \i in {1,...,#1} {
+ % Precondition coordinates and lines
+ \coordinate (\nodename-pre-\i) at ([xshift=-#5 cm, yshift=(-\i + (#1)/2+0.25) * \baseHeight cm] \nodename.west);
+ \draw (\nodename.west |- \nodename-pre-\i) -- +(-#5,0) node [midway, anchor=east, xshift=-0.5 cm, sloped, font=\scriptsize]{\labellist[\i]};
+ }
+ \fi;
+ \readlist\labellist{#4}
+ \ifnum#2>0
+ \foreach \j in {1,...,#2} {
+ % Effect coordinates and lines
+ \coordinate (\nodename-eff-\j) at ([xshift=#6 cm, yshift=(-\j + (#2)/2+0.25) * \baseHeight cm] \nodename.east);
+ \draw (\nodename.east |- \nodename-eff-\j) -- +(#6,0) node [midway,anchor=west, xshift=0.5 cm, font=\scriptsize] {\labellist[\j]};
+ }
+ \fi;
+ \fi;
+ \fi;
+ }
+ },
+ label content/.initial={#3}
+ }
+}
+
+
+% Common base style for nodes
+\tikzset{
+ % COMMENT MISSING
+ base/.style n args={5}{
+ draw,
+ minimum width=0.05cm,
+ fill=black,
+ minimum height={#1*\baseHeight cm},
+ append after command={
+ \pgfextra{
+ \edef\nodename{\tikzlastnode}
+ \setsepchar{,}
+ \readlist\labellist{#2}
+ \foreach \i in {1,...,#1} {
+ \coordinate (\nodename-#5-\i) at ([xshift=#3 cm, yshift=(-\i + (#1)/2+0.25) * \baseHeight cm] \nodename.#4);
+ \draw (\nodename.#4 |- \nodename-#5-\i) -- +(#3,0)
+ node [midway, above, sloped, font=\scriptsize] {\labellist[\i]};
+ }
+ }
+ }
+ }
+}
+
+\tikzset{
+ % Init style
+ init/.style n args={3}{
+ base={#1}{#2}{#3}{east}{eff}
+ }
+}
+
+\tikzset{
+ % Goal style
+ goal/.style n args={3}{
+ base={#1}{#2}{-#3}{west}{pre}
+ }
+}
+
+
+
+\tikzset{
+ dot/.style={
+ circle,fill,inner sep=0.1em
+ }
+}
+
+\tikzset{
+ causallink/.style={
+ ->, shorten <= 0.2cm, shorten >= 0.1cm
+ }
+}
+
diff --git a/Master/texmf-dist/tex/latex/animate/animate.sty b/Master/texmf-dist/tex/latex/animate/animate.sty
index fc126ce70ad..08dbf8a8810 100644
--- a/Master/texmf-dist/tex/latex/animate/animate.sty
+++ b/Master/texmf-dist/tex/latex/animate/animate.sty
@@ -13,7 +13,7 @@
\NeedsTeXFormat{LaTeX2e}[2022-06-01]
-\def\@anim@version{2023/06/18}
+\def\@anim@version{2024/09/17}
\ProvidesPackage{animate}
[\@anim@version\space PDF & SVG animations from files and inline graphics]
@@ -530,6 +530,7 @@
/Subtype/Widget%
/F 2%
/FT/Btn/Ff 65537%
+ /A <</S/ResetForm>>% to make pdf.js happy
/BS <</W 0>>%
/AP <</N \@anim@framexform>>%
/MK <</TP 1/I \@anim@framexform%
@@ -562,6 +563,7 @@
/Subtype/Widget%
\@anim@annotflag%
/FT/Btn/Ff 65537%
+ /A <</S/ResetForm>>%
/BS <</W 0>>%
/AP <</N \@anim@framexform>>%
/MK <</TP 1/I \@anim@framexform%
@@ -2072,6 +2074,8 @@
\@anim@tooltip%
\if@anim@js%
/AA <</D <</S/JavaScript/JS (\@anim@btnJS{#1}{\@anim@arg})>>>>%
+ \else%
+ /A <</S/ResetForm>>%
\fi%
}%
\if@anim@js%
@@ -3347,7 +3351,8 @@
\setboolean{@anim@@draft}{false}%
}
\newboolean{@anim@@nomouse}
-\def\@anim@@method{\z@}%default animation method is `icon'
+%\def\@anim@@method{\z@}%default animation method is `icon'
+\def\@anim@@method{\@ne}%default animation method is `widget'
\def\@anim@@ftype{}% file type (extension) of graphics
\ExplSyntaxOn
diff --git a/Master/texmf-dist/tex/latex/argumentation/argumentation.sty b/Master/texmf-dist/tex/latex/argumentation/argumentation.sty
index f247cd959a3..18ab4dc2582 100644
--- a/Master/texmf-dist/tex/latex/argumentation/argumentation.sty
+++ b/Master/texmf-dist/tex/latex/argumentation/argumentation.sty
@@ -1,78 +1,89 @@
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{argumentation}[2024/05/03 Argumentation]
+\ProvidesPackage{argumentation}[2024/09/25 Argumentation]
% Author: Lars Bengel
% E-Mail: lars.bengel@fernuni-hagen.de
-% Version: 1.1
-% Date: 2023/12/03
+% Version: 1.3
+% Date: 2024/09/25
% License: LaTeX Project Public License 1.3c
-%%%%%%%%%%% Package Requirements %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\RequirePackage{amsbsy,amsmath} % For proper bold letters in math mode
-\RequirePackage{pgfopts} % For managing package options
-\RequirePackage{tikz} % For drawing the argumentation frameworks
-\usetikzlibrary{positioning} % For relative node positioning
-\usetikzlibrary{arrows.meta} % For directed edges / attack arrows
-\usetikzlibrary{arrows} % For directed edges / attack arrows
-\usetikzlibrary{decorations.markings} % For creating the support edge markings
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-%%%%%%%%%%% Package Tikz Style Definitions %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcounter{argument}
-%\newcommand{\argument}{\relax}
-\newcommand{\argstyle}[1]{#1} % Defines the font style in which argument names are displayed
+%%%%%%%%%%% Package Requirements %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\RequirePackage{amsbsy,amsmath} % Proper bold letters in math mode
+\RequirePackage{pgfopts} % Managing package options
+\RequirePackage{xspace} % Dynamic spaces after math commands
+\RequirePackage{xcolor} % Defining colors
+\RequirePackage{tikz} % Drawing the argumentation frameworks
+\usetikzlibrary{positioning} % Relative node positioning
+\usetikzlibrary{arrows.meta} % Directed edges / attack arrows
+\usetikzlibrary{arrows} % Directed edges / attack arrows
+\usetikzlibrary{decorations.markings} % Creating the support edge markings
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+
+%%%%%%%%%%% Package Style Definitions %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newcounter{argument} % Counter for arguments in the af-environment
+\newcommand{\argstyle}[1]{#1} % Defines the font style in which argument names are displayed
+\definecolor{aigyellow}{RGB}{210,149,81} % Highlight color
+\definecolor{aigblue}{RGB}{0,76,151} % Node color
%%% Argument Style Definitions
\tikzset{ % global base styles
- argument size/.style={minimum size=0.7cm}, % Standard size of argument nodes
- argument/.style={}, % Base style for argument nodes
- argument standard/.style={circle,draw=black,inner sep=0,outer sep=0, argument size},
- argument large/.style={circle,draw=black,inner sep=0,outer sep=0, argument size, font=\large},
- argument thick/.style={circle,draw=black,inner sep=0,outer sep=0, argument size, thick},
+ argument size/.style={}, % Size of argument nodes
+ argument/.style={}, % Base style for argument nodes
+ argument standard/.style={circle,draw=black,inner sep=0,outer sep=0},
+ argument large/.style={circle,draw=black,inner sep=0,outer sep=0, font=\large},
+ argument thick/.style={circle,draw=black,inner sep=0,outer sep=0, line width=0.1em},
+ argument gray/.style={argument thick,fill=gray!30,draw=gray!65,text=black!80},
+ argument colored/.style={argument thick,fill=aigblue!40,draw=aigblue!80,text=black!80},
}
%%% Attack/Support Edge Definitions
\tikzset{ % global base styles
- attack/.style={}, % Base style for attack arrow
+ attack width/.style={}, % Width of attack arrows
+ attack/.style={}, % Base style for attack arrow
attack standard/.style={-{stealth'}}, % Standard attack arrow
attack large/.style={-{Stealth[scale=1.25]}}, % Larger arrow tip
- attack modern/.style={-{To[sharp,length=0.9mm,line width=0.7pt]}}, % Mordern rightarrow style tip
+ attack modern/.style={-{To[sharp,length=0.65ex,line width=0.05em]}}, % Mordern rightarrow style tip
support/.style={},
- support standard/.style = {attack, postaction = {decorate,decoration={markings,mark=at position 0.36 with {\draw[-] (0,-0.1) -- (0.1,0.1);}}}}, % Standard support arrow
- support dashed/.style={attack,densely dashed},
- support double/.style={-{Classical TikZ Rightarrow},double},
+ support standard/.style = {attack, postaction = {decorate,decoration={markings,mark=at position 0.36 with {\draw[-] (0,-0.1) -- (0.1,0.1);}}}}, % Standard support arrow
+ support dashed/.style={attack,densely dashed}, % Dashed Support arrow
+ support double/.style={-{Classical TikZ Rightarrow},double}, % double-line support arrow
}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%%%%%%%% Package Options %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%% Package Options %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% Options for style of the argument node itself
\pgfkeys{/tikz/.cd,
argumentstyle/.is choice,
- argumentstyle/standard/.code={\tikzset{argument/.style={argument standard}}},
- argumentstyle/large/.code={\tikzset{argument/.style={argument large}}},
- argumentstyle/thick/.code={\tikzset{argument/.style={argument thick}}},
+ argumentstyle/standard/.code={\tikzset{argument/.style={argument standard,argument size}}},
+ argumentstyle/large/.code={\tikzset{argument/.style={argument large,argument size}}},
+ argumentstyle/thick/.code={\tikzset{argument/.style={argument thick,argument size}}},
+ argumentstyle/gray/.code={\tikzset{argument/.style={argument gray,argument size}}},
+ argumentstyle/colored/.code={\tikzset{argument/.style={argument colored,argument size}}},
}
\pgfkeys{/argumentation/.cd,
.unknown/.code={},
argumentstyle/.is choice,
- argumentstyle/standard/.code={\tikzset{argument/.style={argument standard}}},
- argumentstyle/large/.code={\tikzset{argument/.style={argument large}}},
- argumentstyle/thick/.code={\tikzset{argument/.style={argument thick}}},
+ argumentstyle/standard/.code={\tikzset{argument/.style={argument standard,argument size}}},
+ argumentstyle/large/.code={\tikzset{argument/.style={argument large,argument size}}},
+ argumentstyle/thick/.code={\tikzset{argument/.style={argument thick,argument size}}},
+ argumentstyle/gray/.code={\tikzset{argument/.style={argument gray,argument size}}},
+ argumentstyle/colored/.code={\tikzset{argument/.style={argument colored,argument size}}},
argumentstyle=standard,
}
%%% Options for the style of the attack edges
\pgfkeys{/tikz/.cd,
attackstyle/.is choice,
- attackstyle/standard/.code={\tikzset{attack/.style={attack standard}}},
- attackstyle/large/.code={\tikzset{attack/.style={attack large}}},
- attackstyle/modern/.code={\tikzset{attack/.style={attack modern}}},
+ attackstyle/standard/.code={\tikzset{attack/.style={attack width,attack standard}}},
+ attackstyle/large/.code={\tikzset{attack/.style={attack width,attack large}}},
+ attackstyle/modern/.code={\tikzset{attack/.style={attack width,attack modern}}},
attackstyle=standard,
}
\pgfkeys{/argumentation/.cd,
attackstyle/.is choice,
- attackstyle/standard/.code={\tikzset{attack/.style={attack standard}}},
- attackstyle/large/.code={\tikzset{attack/.style={attack large}}},
- attackstyle/modern/.code={\tikzset{attack/.style={attack modern}}},
+ attackstyle/standard/.code={\tikzset{attack/.style={attack width,attack standard}}},
+ attackstyle/large/.code={\tikzset{attack/.style={attack width,attack large}}},
+ attackstyle/modern/.code={\tikzset{attack/.style={attack width,attack modern}}},
attackstyle=standard,
}
@@ -97,18 +108,18 @@
namestyle/.is choice,
namestyle/none/.code={\renewcommand{\argstyle}[1]{##1}},
namestyle/math/.code={\renewcommand{\argstyle}[1]{\ensuremath{##1}}},
- namestyle/italics/.code={\renewcommand{\argstyle}[1]{\ensuremath{\mathit{\text{##1}}}}},
- namestyle/bold/.code={\renewcommand{\argstyle}[1]{\ensuremath{\boldsymbol{\text{##1}}}}},
- namestyle/monospace/.code={\renewcommand{\argstyle}[1]{\ensuremath{\mathtt{\text{##1}}}}},
+ namestyle/bold/.code={\renewcommand{\argstyle}[1]{\ensuremath{\boldsymbol{##1}}}},
+ namestyle/monospace/.code={\renewcommand{\argstyle}[1]{{\ttfamily##1}}},
+ namestyle/monoemph/.code={\renewcommand{\argstyle}[1]{{\ttfamily\itshape##1}}},
namestyle=none,
}
\pgfkeys{/argumentation/.cd,
namestyle/.is choice,
namestyle/none/.code={\renewcommand{\argstyle}[1]{##1}},
namestyle/math/.code={\renewcommand{\argstyle}[1]{\ensuremath{##1}}},
- namestyle/italics/.code={\renewcommand{\argstyle}[1]{\ensuremath{\mathit{##1}}}},
- namestyle/bold/.code={\renewcommand{\argstyle}[1]{\ensuremath{\boldsymbol{\text{##1}}}}},
- namestyle/monospace/.code={\renewcommand{\argstyle}[1]{\ensuremath{\mathtt{##1}}}},
+ namestyle/bold/.code={\renewcommand{\argstyle}[1]{\ensuremath{\boldsymbol{##1}}}},
+ namestyle/monospace/.code={\renewcommand{\argstyle}[1]{{\ttfamily##1}}},
+ namestyle/monoemph/.code={\renewcommand{\argstyle}[1]{{\ttfamily\itshape##1}}},
namestyle=none,
}
@@ -116,7 +127,7 @@
\NewDocumentCommand { \argument } {} {\relax}
\pgfkeys{/argumentation/.cd,
indexing/.is choice,
- indexing/none/.code={
+ indexing/none/.code={ % No auto-indexing, node identifier required
\RenewDocumentCommand { \argument } {O{} r() m dat d()} {
\IfNoValueTF {##5}{%
\node[argument size,argument,##1](##2) {\argstyle{##3}};
@@ -125,7 +136,7 @@
}
}
},
- indexing/numeric/.code={
+ indexing/numeric/.code={ % Numeric auto-indexing: a1,a2,...
\RenewDocumentCommand { \argument } {O{} d() m dat d()} {
\stepcounter{argument}
\IfNoValueTF {##2}{%
@@ -143,7 +154,7 @@
}
}
},
- indexing/alphabetic/.code={
+ indexing/alphabetic/.code={ % Alphabetic auto-indexing: a,b,...
\RenewDocumentCommand { \argument } {O{} d() m dat d()} {
\stepcounter{argument}
\IfNoValueTF {##2}{%
@@ -165,43 +176,70 @@
indexing=numeric,
}
+\newif\ifmacros
+\pgfkeys{/argumentation/.cd,
+ macros/.is choice,
+ macros/true/.code={
+ \macrostrue
+ },
+ macros/false/.code={
+ \macrosfalse
+ },
+ macros/.default=true,
+ macros=false,
+}
+
\ProcessPgfPackageOptions{/argumentation}
-%%%%%%%%%%%%%%% AF Environment %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%% AF Environment %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% Additional AF Style Parameters
\tikzset{ % global predefined tikz-styles
- selfattack/.style={loop,min distance=2mm,in=0,out=60,looseness=5}, % Standard style for self-attacks
- inactive/.style={draw=black!30,text=black!40}, % Make a node or edge inactive, i.e., greyed out
- incomplete/.style={densely dashed}, % Style for displaying incomplete nodes or attacks
- accepted/.style={fill=green}, % Color an argument that is labelled in
- rejected/.style={fill=red}, % Color an argument that is labelled out
- undecided/.style={fill=cyan}, % Color an argument that is labelled undecided
- caption/.style={draw=none}, % Style for displaying AF name in Figure
- invisible/.style={draw=none,text=black!0}, % Make a node or edge invisible
- annotation/.style={font=\small}, % text annotation style
+ selfattack/.style={loop,min distance=0.4em,in=0,out=60,looseness=4.5}, % Self-attack
+ inactive/.style={fill=none,draw=gray!50,text=gray!60}, % Inactive argument or edge (reduct)
+ incomplete/.style={densely dashed}, % incomplete argument or edge
+ accepted/.style={fill=green!40}, % Accepted argument (in)
+ rejected/.style={fill=red!40}, % Rejected argument (out)
+ undecided/.style={fill=cyan!40}, % Undecided Argument (undec)
+ highlight/.style={fill=aigyellow!60}, % Highlighted argument
+ caption/.style={draw=none}, % Caption or text
+ invisible/.style={draw=none,text=black!0,fill=none}, % Invisible argument or edge
+ annotation/.style={font=\small}, % Argument annotation
argin/.style={accepted},
argout/.style={rejected},
argundec/.style={undecided},
}
-%%% Options for af environment
+%%% Style-Options for af environment
\pgfkeys{/tikz/.cd,
- small/.style = {node distance=0.55cm,argument size/.style={minimum size=0.55cm},caption/.append style={font=\small}},
- tiny/.style = {node distance=0.35cm,argument size/.style={minimum size=0.4cm,font=\small},caption/.append style={font=\small}},
+ standard/.style={node distance=6.6ex,argument size/.style={minimum size=4.5ex},attack width/.style={line width=0.05em},},
+ small/.style={node distance=3.5ex,argument size/.style={minimum size=3.4ex},attack width/.style={line width=0.045em},caption/.append style={font=\small}},
+ tiny/.style={node distance=2.3ex,argument size/.style={minimum size=2.6ex,font=\small},attack width/.style={line width=0.03em},caption/.append style={font=\small}},
}
+
+\ifmacros
+%%% Definitions for referencing
+\providecommand{\AF}{\ensuremath{F}\xspace} % AF abbreviation
+\providecommand{\arguments}{\ensuremath{A}\xspace} % Set of arguments
+\providecommand{\attacks}{\ensuremath{R}\xspace} % Set of attacks
+\providecommand{\AFcomplete}{\ensuremath{\AF = (\arguments, \attacks)}\xspace} % Full AF
+\newcommand{\afref}[1]{\ensuremath{\AF_{\ref{#1}}}\xspace} % Reference an AF
+\newcommand{\fullafref}[1]{\ensuremath{\afref{#1} = (\arguments_{\ref{#1}}, \attacks_{\ref{#1}})}\xspace} % Full AF with reference
+\else\relax
+\fi
+
%%% Initializing the af environment
\newcounter{af}
\newenvironment{af}[1][]{
\refstepcounter{af}
\setcounter{argument}{0}
\pgfkeys{/argumentation/.cd, #1}
- \tikzpicture[#1]
+ \tikzpicture[standard,#1]
}{%
\endtikzpicture
}
-%%%%%%%%%%%%%%%% Commands %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%% Additional Commands %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Creates a node displaying the name of the AF
\NewDocumentCommand { \afname } { O{} D(){caption} m dat d()} {
@@ -215,24 +253,24 @@
\newcommand{\annotation}[3][]{\node[annotation,above of=#2,#1](an_#2){#3};}
-% Creates an attack edge
+% Basic attack edge
\newcommand{\attack}[3][]{\path(#2) edge [attack,#1] (#3);}
-% Creates a self-attack
+% Self-attack edge
\newcommand{\selfattack}[2][]{\path(#2) edge [attack,selfattack,#1] (#2);}
-% Creates two symmetric attack edges between two arguments
+% Symmetric attack edges between two arguments
\newcommand{\dualattack}[3][]{\path(#2) edge [attack, bend right,#1] (#3);\path(#3) edge [attack, bend right,#1] (#2);}
-% Creates a weighted attack
+% Attack edge with value
\newcommand{\annotatedattack}[4][]{\path(#2) edge [attack,#1] node[annotation](p_#2_#3){#4} (#3);}
-% Creates a support edge between two arguments
+% Support edge
\newcommand{\support}[3][]{\path(#2) edge [support=0.35,#1] (#3);}
%%% Commands for setting custom tikz-style parameters
-\newcommand{\setargumentstyle}[1]{\tikzset{argument/.style={#1}}}
-\newcommand{\setattackstyle}[1]{\tikzset{attack/.style={#1}}}
+\newcommand{\setargumentstyle}[1]{\tikzset{argument/.style={argument size,#1}}}
+\newcommand{\setattackstyle}[1]{\tikzset{attack/.style={attack width,#1}}}
\newcommand{\setsupportstyle}[1]{\tikzset{support/.style={#1}}}
\newcommand{\setannotationstyle}[1]{\tikzset{annotation/.style={#1}}}
diff --git a/Master/texmf-dist/tex/latex/asmeconf/asmeconf.cls b/Master/texmf-dist/tex/latex/asmeconf/asmeconf.cls
index 186e5d49415..82ccbc2614e 100644
--- a/Master/texmf-dist/tex/latex/asmeconf/asmeconf.cls
+++ b/Master/texmf-dist/tex/latex/asmeconf/asmeconf.cls
@@ -5,8 +5,8 @@
%% ASME conference requirements as represented on ASME's conference web pages in 2024.
%%
%% This file's version and date:
- \def\versionno{1.37}
- \def\versiondate{2024/02/06\space}
+ \def\versionno{1.38}
+ \def\versiondate{2024/08/01\space}
%%
%% Author: John H. Lienhard, V
%% Department of Mechanical Engineering
@@ -23,7 +23,7 @@
%% 6. Provide line numbers for editing and review
%% 7. Support balancing length of columns on last page
%% 8. Provide copyright footer for federal employees and contractors
-%% 9. Support the archival PDF/A standards 1b, 2b, 2u, 3b, and 3u
+%% 9. Support archival PDF/A standards
%% 10. Enable various math and text features from the newtxmath and newtxtext packages
%% 11. Support inclusion of passages in languages other than English
%%
@@ -66,74 +66,76 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{asmeconf}[\versiondate ASME Conference Paper LaTeX Template (JHL)]
-\LoadClass[twoside,twocolumn,10pt]{article}
+\LoadClass[twoside,10pt]{article}% twocolumn is initiated in \MakeTitle
% Even/odd page layout is not used in ASME's specs, although the papers are printed in two-sided format.
\RequirePackage{iftex}% provides \ifpdftex (many) & \ifluatex (once)
\RequirePackage{ifthen}% ifthenelse (many) & \whiledo (once)
-\RequirePackage{etoolbox}% using patchcmd in 4 places
+\RequirePackage{etoolbox}% using patchcmd in 4 or 5 places
+\ExplSyntaxOn
+ \str_const:Nn \ClassName {asmeconf}
+\ExplSyntaxOff
+
+%%%%%%%%%%%%% Compatibility codes for older distributions %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%%%%%%%%%%% Test compatibility of older distributions %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion}% compare version to date; \If... added to latex 2020/10/01
+\providecommand\IfPackageAtLeastTF{\@ifpackagelater}% compare version to date; \If... added to latex 2020/10/01
+\providecommand\IfPDFManagementActiveTF{\@secondoftwo}% \If... added to latex 2021/07/23
+\providecommand\IfPackageLoadedTF{\@ifpackageloaded}% \If...added to latex 2021/11/15
+\providecommand\ClassNoteNoLine[2]{\typeout{^^JClass Note #1: #2.^^J}}% log & terminal note... added to latex 2021/11/15
-\providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion}% compare version to date; \If... added to latex 2020/10/01
-\providecommand\IfPackageAtLeastTF{\@ifpackagelater}% compare version to date; \If... added to latex 2020/10/01
-\providecommand\IfPackageLoadedTF{\@ifpackageloaded}% \If...added to latex 2021/11/15
+\IfFormatAtLeastTF{2020/10/01}{\relax}{%
+ \ClassError{\ClassName}{Your LaTeX format is dated \fmtversion. Formats dated 2020/10/01 or later are recommended for the asmejour class. Older formats and packages may generate errors or fail entirely!}{Please UPDATE your LaTeX distribution to obtain best results. TeX Live is available for download at no charge: \string https://www.tug.org/texlive/. You can try to click past the errors for now.}%
+}
+
+% check whether pdfmanagement (\DocumentMetadata) has been loaded (else fall back to hyperxmp and bookmark packages after loading hyperref)
+\newif\ifasme@pdfmanagement
+\IfPDFManagementActiveTF{
+ \asme@pdfmanagementtrue
+}{
+ \asme@pdfmanagementfalse
+ \ClassWarningNoLine{\ClassName}{pdfmanagement is not active. Will load hyperxmp and bookmark packages instead}
+}
-\IfFormatAtLeastTF{2020/10/01}{%
- \ClassInfo{asmeconf}{Your LaTeX format is dated \fmtversion. LaTeX distributions 2020/10/01 or later are strongly recommended for best results}
- }{%
- \ClassError{asmeconf}{Your LaTeX format is dated \fmtversion. Formats dated 2020/10/01 or later are recommended for the asmejour class. Older formats and packages may generate errors or fail entirely!}{Please UPDATE your LaTeX distribution to obtain best results. TeX Live is available for download at no charge: \string https://www.tug.org/texlive/. You can try to click past the errors for now.}%
+% Allow pre 2021/11/15 formats to see the graphicx alt key without causing an error
+\IfFormatAtLeastTF{2021/11/15}{
+ \relax
+}{
+ \AtBeginDocument{
+ \IfPackageLoadedTF{graphicx}{\define@key{Gin}{alt}{}}{\relax}
+ }
}
+% Enable pre-2020/10 formats to access essential macros later moved into LaTeX kernel
\ifdefined\NewDocumentCommand\else
\RequirePackage{xparse}% enable older installations to access features in LaTeX kernel since 2020/10/01; but need at least 2018/04...
\fi
-\DeclareDocumentCommand\LogNote{m}{%
- \IfFormatAtLeastTF{2021/11/15}{%
- \ClassNoteNoLine{asmeconf}{#1}% Added to LaTeX in Nov. 2021
- }{%
- \ClassWarningNoLine{asmeconf}{#1}%
- }
+% Provide pre-2020/10 installations with basic unicode character mappings
+\IfFormatAtLeastTF{2020/10/01}{\relax}{%
+\ifpdftex
+ \pdfgentounicode=1 %% enable CMaps; was moved into the latex kernel Oct 2020
+ \input glyphtounicode.tex %% lists of mappings; was moved into the latex kernel Oct 2020
+\fi
}
\IfPackageAtLeastTF{iftex}{2019/11/07}{\relax}{%
- \ClassError{asemconf}{Package iftex is too old. Go to \string https://ctan.org and download an up-to-date version.}%
+ \ClassError{\ClassName}{Package iftex is too old. Go to \string https://ctan.org and download an up-to-date version.}{%
+ Your latex installation does not have an up-to-date version of the package iftex. You can get it at CTAN: \string https://ctan.org.}
}
-%% Test whether \DocumentMetadata has been loaded (Thank you Ulrike Fischer)
-\newif\if@asme@pdfmanagement
-% \IfPDFManagementActiveTF{\@asme@pdfmanagementtrue}{\@asme@pdfmanagementfalse}% New 2021/07/23, don't implement yet
-\ExplSyntaxOn
- \IfFormatAtLeastTF{2020/02/02}{%
- \bool_if:nTF
- {
- \bool_lazy_and_p:nn
- {\cs_if_exist_p:N \pdfmanagement_if_active_p:}
- { \pdfmanagement_if_active_p: }
- }
- {
- \@asme@pdfmanagementtrue
- }
- {
- \@asme@pdfmanagementfalse
- }
- }{\@asme@pdfmanagementfalse}
-\ExplSyntaxOff
-
-
%%%%%%%%%%%%%% Options for the class %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\RequirePackage{kvoptions}
\SetupKeyvalOptions{
- family=asmeconf,
+ family=\ClassName,
prefix=asmeconf@,
setkeys=\kvsetkeys,
}
%%% set key [colorlinks] to have colored hyperlinks, rather than black links (use a key with new pdfmanagement, 2021/12/01)
-\define@key{asmeconf}{colorlinks}[colorlinks]{%
+\define@key{\ClassName}{colorlinks}[colorlinks]{%
\PassOptionsToPackage{#1}{hyperref}%
}
@@ -182,12 +184,11 @@
\ifthenelse{\equal{#1}{\ac@main}}{\ac@cyrillictrue\def\ac@TtwoA{T2A}}{\relax}% comparing strings
}
-\define@key{asmeconf}{main}[english]{%
+\define@key{\ClassName}{main}{% remove default 2024/07/26, to avoid conflict with subsequent logic
\PassOptionsToPackage{main=#1,#1}{babel}% added #1 resolves conflict of russianb.ldf & ukrainianb.ldf under "main=".
\ac@mainsettrue
\ifthenelse{\equal{#1}{english}}{%
- \PassOptionsToPackage{pdflang=en}{hyperref}}{%
- \LogNote{Selecting #1 as the primary language}%
+ \ClassNoteNoLine{\ClassName}{Selecting #1 as the primary language}%
\ifthenelse{\equal{#1}{greek}}{%
\ac@greektrue
\def\ac@LGR{LGR}%
@@ -201,7 +202,7 @@
\@FindCyr{russian;belarusian;bulgarian;macedonian;serbianc;ukrainian}
}%
}
-\define@key{asmeconf}{vietnamese}[]{%
+\define@key{\ClassName}{vietnamese}[]{%
\RequirePackage[vietnamese=nohyphenation]{hyphsubst}% using key, not option, to allow loading package w/o babel warning.
\PassOptionsToPackage{vietnamese.noencoding}{babel}% modified.noencoding suppresses unnecessary warning about inputenc
\ac@vietnamesetrue
@@ -209,21 +210,20 @@
}
\DeclareDefaultOption{}% suppress warnings about unused options
-\ProcessKeyvalOptions{asmeconf}
+\ProcessKeyvalOptions{\ClassName}
-%% if main language was not chosen explicitly, default to English
+%% if main language was not chosen explicitly, ensure default to English
\ifac@mainset\relax\else
\PassOptionsToPackage{main=english}{babel}%
- \PassOptionsToPackage{pdflang=en}{hyperref}
- \ClassInfo{asmeconf}{Selecting English as the primary language, since main= not set}%
+ \ClassInfo{\ClassName}{Selecting English as the primary language, since main= not set}%
\fi
%% Turn off these keys now that we're done with them
-\def\@KeyFamily{asmeconf}
+\def\@KeyFamily{\ClassName}
\NewDocumentCommand\ac@DisableOption{m}{%
\DisableKeyvalOption[%
action=ignore,%
- class=asmeconf%
+ class=\ClassName%
]{#1}{\@KeyFamily}%
}
\NewDocumentCommand\@DisableKeys{>{\SplitList{;}}m}{\ProcessList{#1}{\ac@DisableOption}}
@@ -249,7 +249,7 @@
\ifpdftex
\PassOptionsToPackage{largesc=true}{newtxtext}% largesc is a boolean key in newtxtext
\else
- \ClassWarningNoLine{asmeconf}{largesc option is not available under luaLateX. It will be ignored}%
+ \ClassWarningNoLine{\ClassName}{largesc option is not available under luaLateX. It will be ignored}%
\fi
}
@@ -261,21 +261,23 @@
%% option to hyphenate the inconsolata typewriter font [hyphenate] and to issue a warning when that's done.
\DeclareOption{hyphenate}{%
\ifac@fontspec
- \ClassWarningNoLine{asmeconf}{hyphenate option is not supported by fontspec, will be ignored}%
+ \ClassWarningNoLine{\ClassName}{hyphenate option is not supported by fontspec. It will be ignored}%
\else
\PassOptionsToPackage{hyphenate}{inconsolata}% hyphenate is a key via xkeyval in inconsolata
- \LogNote{Allowing hyphenation of typewriter font}%
+ \ClassNoteNoLine{\ClassName}{Allowing hyphenation of typewriter font}%
\fi
}
%% option for monospacing in inconsolata typewriter font [mono].
+\def\MonoNotMono{WordSpace={1,1,1}}% rescaled tt font to match pdf, 2024/07/28
\DeclareOption{mono}{%
\ifac@fontspec
- \def\MonoNotMono{}%
+ \def\MonoNotMono{WordSpace={1,0,0},PunctuationSpace={3}}% NB: these are the default WordSpace values. 20204/07/30
\else
\PassOptionsToPackage{mono}{inconsolata}% mono is a key via xkeyval in inconsolata
\fi
}
%% option for unslashed zero in inconsolata typewriter font [var0].
+\def\ssztwo{}% for Inconsolatazi4; default uses slashed zero, +ss02 uses regular zero
\DeclareOption{var0}{%
\ifac@fontspec
\def\ssztwo{+ss02}% stylistic alternate for regular zero
@@ -296,7 +298,7 @@
\newif\ifac@setpdfa\ac@setpdfafalse
\newif\ifac@pdfaone\ac@pdfaonefalse
-\if@asme@pdfmanagement\else
+\ifasme@pdfmanagement\else
\SetupKeyvalOptions{
family=pdfaopt,
@@ -308,7 +310,7 @@
%%% set key [pdfa] to activate pdf/a compliance (default is pdf/A-3u)
\define@key{pdfaopt}{pdf-a}[true]{%
\IfFormatAtLeastTF{2018/12/01}{\relax}{%
- \ClassError{asmeconf}{Your LaTeX format is dated \fmtversion. Formats dated 2018/12/01 or later are necessary for the [pdf-a] option. Older formats may generate errors}{Please UPDATE your LaTeX distribution to obtain best results. TeX Live is available for download at no charge: \string https://www.tug.org/texlive/. Meanwhile, you can remove the [pdf-a] option and try again}%
+ \ClassError{\ClassName}{Your LaTeX format is dated \fmtversion. Formats dated 2018/12/01 or later are necessary for the [pdf-a] option. Older formats may generate errors}{Please UPDATE your LaTeX distribution to obtain best results. TeX Live is available for download at no charge: \string https://www.tug.org/texlive/. Meanwhile, you can remove the [pdf-a] option and try again}%
}
\ac@setpdfatrue
\PassOptionsToPackage{pdfa}{hyperref}
@@ -344,7 +346,7 @@
%%%%%%%%%%%% PDF/A compliance related %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\if@asme@pdfmanagement\else
+\ifasme@pdfmanagement\else
\ifpdftex
\ifac@pdfaone
\pdfminorversion=4 % for pdf/a-1 need version 4, not 7
@@ -353,7 +355,7 @@
\fi
\else
\ifluatex
- \ifac@setpdfa\ClassWarningNoLine{asmeconf}{pdf-a option requires pdfLaTeX engine. Under LuaLaTeX, use %
+ \ifac@setpdfa\ClassWarningNoLine{\ClassName}{pdf-a option requires pdfLaTeX engine. Under LuaLaTeX, use %
\protect\DocumentMetadata{pdfstandard=A-3b} before \protect\documentclass[..]{asmeconf}}%
\fi
\directlua{
@@ -367,7 +369,7 @@
end
}
\else
- \ClassError{asmeconf}{Please use either pdfLaTeX or LuaLaTeX}{This class has NOT been configured to support other engines, and the results will be unpredictable. Exit and rerun using either pdfLaTeX or LuaLaTeX.}%
+ \ClassError{\ClassName}{Please use either pdfLaTeX or LuaLaTeX}{This class has NOT been configured to support other engines, and the results will be unpredictable. Exit and rerun using either pdfLaTeX or LuaLaTeX.}%
\fi
\fi
\fi
@@ -381,19 +383,17 @@
\ifpdftex
\ifasmeconf@nofontspec
- \ClassWarningNoLine{asmeconf}{The [nofontspec] option requires LuaLaTeX. It will be ignored under pdfLaTeX}%
+ \ClassWarningNoLine{\ClassName}{The [nofontspec] option requires LuaLaTeX. It will be ignored under pdfLaTeX}%
\fi
\else
\ifasmeconf@nofontspec
- \ClassWarningNoLine{asmeconf}{The [nofontspec] option has been issued. LuaLaTeX will run without font support}%
+ \ClassWarningNoLine{\ClassName}{The [nofontspec] option has been issued. LuaLaTeX will run without font support}%
\else
\IfFormatAtLeastTF{2020/10/01}{%
\ac@fontspectrue
\fontspecloadedtrue
- \def\ssztwo{}% for Inconsolatazi4; default uses slashed zero, +ss02 uses regular zero
- \def\MonoNotMono{WordSpace={1,1.33,1.67}}% for Inconsolatazi4; default allows word spacing (is not mono)
}{%
- \ClassError{asmeconf}{Your LaTeX format is dated \fmtversion. LaTeX installations dated 2020/10/01 or later are needed to run LuaLaTeX with the fontspec package. Fontspec will NOT be loaded. Language support will be minimal}{Please UPDATE your LaTeX distribution to obtain best results. TeX Live is available for download at no charge: \string https://www.tug.org/texlive/. You may alternatively choose the [nofontspec] option.}%
+ \ClassError{\ClassName}{Your LaTeX format is dated \fmtversion. LaTeX installations dated 2020/10/01 or later are needed to run LuaLaTeX with the fontspec package. Fontspec will NOT be loaded. Language support will be minimal}{Please UPDATE your LaTeX distribution to obtain best results. TeX Live is available for download at no charge: \string https://www.tug.org/texlive/. You may alternatively choose the [nofontspec] option.}%
}
\fi
\fi
@@ -403,7 +403,7 @@
\PassOptionsToPackage{japanese}{babel}%
\ac@japanesetrue
\else
- \ClassWarningNoLine{asmeconf}{[japanese] option is supported only under LuaLaTeX with fontspec. It will be ignored}%
+ \ClassWarningNoLine{\ClassName}{[japanese] option is supported only under LuaLaTeX with fontspec. It will be ignored}%
\fi
}
@@ -426,23 +426,23 @@
% Several languages do not have .ldf files to load. Babel will call these on demand.
%
-\DeclareOption{arabic}{\ClassError{asmeconf}{Do not specify "arabic" as a class option}{Instead, give the option [bidi=basic] and specify "arabic" when you call the language within your document.}}
+\DeclareOption{arabic}{\ClassError{\ClassName}{Do not specify "arabic" as a class option}{Instead, give the option [bidi=basic] and specify "arabic" when you call the language within your document.}}
%
-\DeclareOption{bengali}{\ClassError{asmeconf}{Do not specify "bengali" as a class option}{Babel does not have an ldf file for Bengali. Instead, specify "bengali" when you call the language within your document. No class option is needed.}}
+\DeclareOption{bengali}{\ClassError{\ClassName}{Do not specify "bengali" as a class option}{Babel does not have an ldf file for Bengali. Instead, specify "bengali" when you call the language within your document. No class option is needed.}}
%
-\DeclareOption{chinese-simplified}{\ClassError{asmeconf}{Do not specify "chinese-simplified" as class option}{Babel does not have an ldf file for simplified Chinese. Instead, specify "chinese-simplified" when you call the language within your document. No class option is needed.}}
+\DeclareOption{chinese-simplified}{\ClassError{\ClassName}{Do not specify "chinese-simplified" as class option}{Babel does not have an ldf file for simplified Chinese. Instead, specify "chinese-simplified" when you call the language within your document. No class option is needed.}}
%
-\DeclareOption{chinese-traditional}{\ClassError{asmeconf}{Do not specify "chinese-traditional" as class option}{Babel does not have an ldf file for traditional Chinese. Instead, specify "chinese-traditional" when you call the language within your document. No class option is needed.}}
+\DeclareOption{chinese-traditional}{\ClassError{\ClassName}{Do not specify "chinese-traditional" as class option}{Babel does not have an ldf file for traditional Chinese. Instead, specify "chinese-traditional" when you call the language within your document. No class option is needed.}}
%
-\DeclareOption{chinese}{\ClassError{asmeconf}{Do not specify "chinese" as a class option}{Instead, specify either "chinese-simplified" or "chinese-traditional" when you call the language within your document. No class option is needed.}}
+\DeclareOption{chinese}{\ClassError{\ClassName}{Do not specify "chinese" as a class option}{Instead, specify either "chinese-simplified" or "chinese-traditional" when you call the language within your document. No class option is needed.}}
%
-\DeclareOption{hindi}{\ClassError{asmeconf}{Do not specify "hindi" as a class option}{Babel does not have an ldf file for Hindi. Instead, specify "hindi" when you call the language within your document. No class option is needed.}}
+\DeclareOption{hindi}{\ClassError{\ClassName}{Do not specify "hindi" as a class option}{Babel does not have an ldf file for Hindi. Instead, specify "hindi" when you call the language within your document. No class option is needed.}}
%
-\DeclareOption{marathi}{\ClassError{asmeconf}{Do not specify "marathi" as a class option}{Babel does not have an ldf file for Marathi. Instead, specify "marathi" when you call the language within your document. No class option is needed.}}
+\DeclareOption{marathi}{\ClassError{\ClassName}{Do not specify "marathi" as a class option}{Babel does not have an ldf file for Marathi. Instead, specify "marathi" when you call the language within your document. No class option is needed.}}
%
-\DeclareOption{korean}{\ClassError{asmeconf}{Do not specify "korean" as class option}{Babel does not have an ldf file for Korean. Instead, specify "korean"when you call the language within your document. No class option is needed.}}
+\DeclareOption{korean}{\ClassError{\ClassName}{Do not specify "korean" as class option}{Babel does not have an ldf file for Korean. Instead, specify "korean"when you call the language within your document. No class option is needed.}}
%
-\DeclareOption{tamil}{\ClassError{asmeconf}{Do not specify "tamil" as a class option}{Babel does not have an ldf file for Tamil. Instead, specify "tamil" when you call the language within your document. No class option is needed.}}
+\DeclareOption{tamil}{\ClassError{\ClassName}{Do not specify "tamil" as a class option}{Babel does not have an ldf file for Tamil. Instead, specify "tamil" when you call the language within your document. No class option is needed.}}
%% Suppress warnings about unused global options
\DeclareOption*{}
@@ -462,23 +462,18 @@
\RequirePackage{graphicx} % removed obsolete options, 2023/11/19
\RequirePackage[dvipsnames,svgnames,x11names]{xcolor}
-% Allow pre 2021/11/15 formats to see the graphicx alt key without causing an error, in preparation for tagged pdf
-\IfFormatAtLeastTF{2021/11/15}{
- \relax
-}{
- \AtBeginDocument{
- \IfPackageLoadedTF{graphicx}{\define@key{Gin}{alt}{}}{\relax}
- }
-}
%%%%%%%%%%%% Table related %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\RequirePackage{booktabs}
\RequirePackage{array}
-\RequirePackage{dcolumn}% alignment on decimal places
-\newcolumntype{d}[1]{D{.}{.}{#1}}% NB: This conflicts with babel's Spanish language option which makes "." an active character.
- % To use "," separator, put this command in your preamble: \newcolumntype{d}[1]{D{,}{,}{#1}}
+\RequirePackage{dcolumn}% alignment on decimal places
+% use d{x.y} to center on "." as in "12.234"
+\newcolumntype{d}[1]{D{.}{.}{#1}}
+% NB: The above conflicts with babel's Spanish language option which makes "." an active character.
+% Instead, to use "," as the decimal separator, choose columntype "," (as in "12,234")
+\newcolumntype{,}[1]{D{,}{,}{#1}}
%%%%%%%%% Caption related %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -507,7 +502,7 @@
\captionsetup[table]{labelformat=uppercase,labelfont={sf,bf,small},textfont={sf,bf,small},textformat=boldmath,labelsep=colon,skip=0.5\baselineskip} %name=TABLE,
\fi
-%% This construction avoids a failure of hyperref in relation to uppercase caption
+%% This construction avoids a failure of hyperref in relation to uppercase captions
%% Discussion: https://tex.stackexchange.com/questions/375695/maketextuppercase-inside-table-captions
\AtBeginDocument{
\let\scaption\caption
@@ -542,8 +537,17 @@
\RequirePackage[no-math]{fontspec}
\defaultfontfeatures{Ligatures=TeX,}
%
- \setmainfont{TeXGyreTermesX}[% Presumes these are system fonts! Available at: http://www.gust.org.pl/projects/e-foundry/tex-gyre
- WordSpace = {1,1.4,1},%% This stretch matches newtxtext a little better. 1.4
+ \def\FontWarning{For luaLaTeX, you MUST have these OpenType fonts installed as system fonts on your computer: TeX Gyre Termes and TeX Gyre Heros (from \string http://www.gust.org.pl/projects/e-foundry/tex-gyre) and Inconsolatazi4 (\string https://ctan.org/tex-archive/fonts/inconsolata/opentype). If you DON'T have these fonts, you will see ERROR messages!}
+%
+ \IfFontExistsTF{TeX Gyre Termes}{}{\ClassWarningNoLine{\ClassName}{\FontWarning} }
+ \IfFontExistsTF{texgyreheros}{}{ \ClassWarningNoLine{\ClassName}{\FontWarning} }
+ \IfFontExistsTF{Inconsolatazi4}{}{ \ClassWarningNoLine{\ClassName}{\FontWarning} }
+%
+ % The newtx package includes a modified version of TeXGyreTermes called TexGyreTermesX, which is loaded here.
+ % Can fall back to TeXGyreTermes if desired, available at: http://www.gust.org.pl/projects/e-foundry/tex-gyre
+ \setmainfont{TeXGyreTermesX}[
+ WordSpace = {1,1.6,1.2},%% This stretch matches newtxtext a little better; rescaled 2024/07/28
+ PunctuationSpace = 1.332,%% match fontdimen7 to newtxtext, 2024/07/28
Extension = .otf,
UprightFont = *-Regular,
ItalicFont = *-Italic,
@@ -552,7 +556,7 @@
Numbers = Lining,
]
\setsansfont{texgyreheros}[% Presumes these are system fonts! Available at: http://www.gust.org.pl/projects/e-foundry/tex-gyre
- WordSpace = {1,1.4,1},
+ WordSpace = {1,1,1},% These spacings match newtxtext; rescaled to unity 2024/07/28
Extension = .otf,
UprightFont = *-regular,
ItalicFont = *-italic,
@@ -562,7 +566,6 @@
Scale=0.91,% same as for newtx; former value 0.9 too small 2022/01/15
]
\setmonofont{Inconsolatazi4}[% This otf font ships with the LaTeX Inconsolata package (it's in TeX Live)
- \MonoNotMono,% match newtxtext if we enable wordspacing
Scale=1.05,% rescaled from 1, 22/03/10
Extension = .otf,
UprightFont = *-Regular,
@@ -570,20 +573,22 @@
BoldFont = *-Bold,
BoldItalicFont = *-Bold,% has no italic face
RawFeature = {+ss01,\ssztwo,+ss03},
- ]
+ \MonoNotMono,% match newtxtext if we enable wordspacing; note wordspace def'd in option above.
+ ]
%
% For many languages, using babel commands helps font loading.
+ % Switched Harbbuzz to OpenType throughout, 2024/07/28
% Noto fonts are available at https://github.com/googlefonts
\def\Noto@scale{0.92}
\def\Ara@scale{0.91}% For the serif font only
\def\NotoBan@scale{0.92}% 1.} should probably stay consistent within the Noto family.
\def\NotoDev@scale{0.92}% 1.} should probably stay consistent within the Noto family.
\def\NotoTam@scale{0.92}
- \def\Noto@color{black}
+ \def\Noto@color{Color=black}% 2024/07/28. Changed this diagnostic command to by-pass a bug in luatexja-fontspec.
%
\babelprovide[import, language=Default]{arabic}
\babelfont [arabic]{rm}[Scale=\Ara@scale,
- Renderer=HarfBuzz,
+ %Renderer=OpenType,
Extension = .ttf,
UprightFont = *-Regular,
ItalicFont = *-Regular,% don't use italic face, I am told
@@ -591,7 +596,7 @@
BoldItalicFont = *-Bold,% don't use italic face, I am told
]{Amiri}% NotoNaskhArabic}% Some readers prefer Amiri font
\babelfont [arabic]{sf}[Scale=\Noto@scale,
- Renderer=HarfBuzz,
+ %Renderer=OpenType,
Extension =.ttf,
UprightFont = *-Regular,
ItalicFont = *-Regular,% font has no italic face
@@ -599,7 +604,7 @@
BoldItalicFont = *-SemiBold,% font has no italic face
]{NotoSansArabic}%DejaVuSans}%NotoKufiArabic}% .otf,%
\babelfont [arabic]{tt}[%
- Renderer=HarfBuzz,
+ %Renderer=OpenType,
Extension =.ttf,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -610,9 +615,9 @@
%
\babelprovide[import,language=Default,script=Bangla]{bengali}
\babelfont [bengali]{rm}[%
- Renderer=HarfBuzz,
+ %Renderer=OpenType,
Scale=\NotoBan@scale,% same as Devanagari
- Color=\Noto@color,
+ \Noto@color,
Extension = .ttf,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -620,9 +625,9 @@
BoldItalicFont = *-Bold,% has no italic face
]{NotoSerifBengali}
\babelfont [bengali]{sf}[%
- Renderer=HarfBuzz,
+ %Renderer=OpenType,
Scale=\NotoBan@scale,
- Color=\Noto@color,
+ \Noto@color,
Extension = .ttf,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -630,9 +635,9 @@
BoldItalicFont = *-Bold,% has no italic face
]{NotoSansBengali}
\babelfont [bengali]{tt}[
- Renderer=HarfBuzz,
+ %Renderer=OpenType,
Scale=\NotoBan@scale,
- Color=\Noto@color,
+ \Noto@color,
Extension = .ttf,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -646,7 +651,7 @@
\babelprovide[import,language=Default,script=Cyrillic]{#1}
\babelfont [#1]{rm}[%
Scale=\Noto@scale,
- Color=\Noto@color,
+ \Noto@color,
Extension = .ttf,
UprightFont = *-Regular,
ItalicFont = *-Italic,
@@ -655,7 +660,7 @@
]{NotoSerif}
\babelfont [#1]{sf}[%
Scale=\Noto@scale,
- Color=\Noto@color,
+ \Noto@color,
Extension = .ttf,
UprightFont = *-Regular,
ItalicFont = *-Italic,
@@ -664,7 +669,7 @@
]{NotoSans}
\babelfont [#1]{tt}[%
Scale=\Noto@scale,
- Color=\Noto@color,
+ \Noto@color,
Extension = .ttf,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -676,14 +681,14 @@
\setlocalecaption{serbian-cyrillic}{abstract}{Сажетак}% NB: utf-8
%
% Devanagari languages
- \newfontscript{Devanagari}{deva}% HarfBuzz has some problems in Hindi, see babel manual Sect. 1.13 (main issue is ra)
+ \newfontscript{Devanagari}{deva}% OpenType has some problems in Hindi, see babel manual Sect. 1.13 (main issue is ra)
\NewDocumentCommand\@LoadBabelDev{>{\SplitList{;}}m}{\ProcessList{#1}{\@DevBabel}}
\NewDocumentCommand\@DevBabel{m}{%
\babelprovide[import,language=Default]{#1}
\babelfont [#1]{rm}[%
-% Renderer=HarfBuzz,% works for Marathi, throws errors in Hindi...
+% %Renderer=OpenType,% Marathi and Hindi may respond differently...
Scale=\NotoDev@scale,
- Color=\Noto@color,
+ \Noto@color,
Extension = .ttf,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -691,9 +696,9 @@
BoldItalicFont = *-Bold,% has no italic face
]{NotoSerifDevanagari}
\babelfont [#1]{sf}[%
-% Renderer=HarfBuzz,% works for Marathi, throws errors in Hindi...
+% %Renderer=OpenType,% % Marathi and Hindi may respond differently...
Scale=\NotoDev@scale,
- Color=\Noto@color,
+ \Noto@color,
Extension = .ttf,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -701,9 +706,9 @@
BoldItalicFont = *-Bold,% has no italic face
]{NotoSansDevanagari}
\babelfont [#1]{tt}[
-% Renderer=HarfBuzz,% works for Marathi, throws errors in Hindi...
+% %Renderer=OpenType,% % Marathi and Hindi may respond differently...
Scale=\NotoDev@scale,
- Color=\Noto@color,
+ \Noto@color,
Extension = .ttf,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -719,7 +724,7 @@
\babelfont [greek]{rm}[%
Scale=\Noto@scale,
WordSpace={1.1},% increase word spacing slightly
- Color=\Noto@color,
+ \Noto@color,
Extension = .ttf,
UprightFont = *-Regular,
ItalicFont = *-Italic,
@@ -729,7 +734,7 @@
\babelfont [greek]{sf}[%
Scale=\Noto@scale,
WordSpace={1.1},% increase word spacing slightly
- Color=\Noto@color,
+ \Noto@color,
Extension = .ttf,
UprightFont = *-Regular,
ItalicFont = *-Italic,
@@ -738,7 +743,7 @@
]{NotoSans}
\babelfont [greek]{tt}[%
Scale=\Noto@scale,
- Color=\Noto@color,
+ \Noto@color,
Extension = .ttf,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -747,11 +752,14 @@
]{NotoSansMono}
%
% Japanese
+ % luatexja-fontspec seems to want lc "color" now, rather than normal "Color", as before. Commenting out.
+ % NB: luatexja-fontspec color breakage appears to be global.
\ifac@japanese
- \RequirePackage[match]{luatexja-fontspec}% japanese typesets *much* better with this loaded
+ \def\Noto@color{}% by-pass bug in luatexja-fontspec, 2024/07/28.
+ \RequirePackage[no-math]{luatexja-fontspec}% japanese typesets *much* better with this loaded
\setmainjfont{NotoSerifCJKjp}[%
Scale=\Noto@scale,
- Color=\Noto@color,
+ \Noto@color,
% Extension = .otf,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -760,7 +768,7 @@
]
\setsansjfont{NotoSansCJKjp}[%
Scale=\Noto@scale,
- Color=\Noto@color,
+ \Noto@color,
% Extension = .ttc,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -769,7 +777,7 @@
]
\setmonojfont{NotoSansMonoCJKjp}[%
Scale=\Noto@scale,
- Color=\Noto@color,
+ \Noto@color,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
BoldFont = *-Bold,
@@ -780,7 +788,7 @@
% Need at least one of the following to load the Japanese dictionary.
\babelfont [japanese]{rm}[%
Scale=\Noto@scale,
- Color=\Noto@color,
+ \Noto@color,
Extension = .otf,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -789,7 +797,7 @@
]{NotoSerifCJKjp}% Scale estimated
\babelfont [japanese]{sf}[%
Scale=\Noto@scale,
- Color=\Noto@color,
+ \Noto@color,
% Extension = .ttc,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -798,7 +806,7 @@
]{NotoSansCJKjp}
\babelfont [japanese]{tt}[%
Scale=\Noto@scale,
- Color=\Noto@color,
+ \Noto@color,
% Extension = .ttc,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -812,7 +820,7 @@
\babelprovide[import,language=Default]{korean}
\babelfont [korean]{rm}[%
Scale=\Noto@scale,
- Color=\Noto@color,
+ \Noto@color,
Extension = .otf,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -821,7 +829,7 @@
]{NotoSerifCJKkr}
\babelfont [korean]{sf}[%
Scale=\Noto@scale,
- Color=\Noto@color,
+ \Noto@color,
Extension = .ttc,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -830,7 +838,7 @@
]{NotoSansCJK}
\babelfont [korean]{tt}[%
Scale=\Noto@scale,
- Color=\Noto@color,
+ \Noto@color,
% Extension = .ttc,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -843,7 +851,7 @@
\babelprovide[import,language=Default]{chinese-simplified}
\babelfont [chinese-simplified]{rm}[%
Scale=\Noto@scale,
- Color=\Noto@color,
+ \Noto@color,
Extension = .otf,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -852,7 +860,7 @@
]{NotoSerifCJKsc}
\babelfont [chinese-simplified]{sf}[%
Scale=\Noto@scale,
- Color=\Noto@color,
+ \Noto@color,
Extension = .ttc,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -861,7 +869,7 @@
]{NotoSansCJK}
\babelfont [chinese-simplified]{tt}[%
Scale=\Noto@scale,
- Color=\Noto@color,
+ \Noto@color,
% Extension = .ttc,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -871,9 +879,9 @@
%
% Traditional Chinese (includes characters for Cantonese also)
\babelprovide[import,language=Default]{chinese-traditional}
- \babelfont [chinese-tradiational]{rm}[%
+ \babelfont [chinese-traditional]{rm}[% fixed 2024/07/28
Scale=\Noto@scale,
- Color=\Noto@color,
+ \Noto@color,
Extension = .otf,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -882,20 +890,20 @@
]{NotoSerifCJKtc}
\babelfont [chinese-traditional]{sf}[%
Scale=\Noto@scale,
- Color=\Noto@color,
+ \Noto@color,
Extension = .ttc,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
BoldFont = *-Bold,
BoldItalicFont = *-Bold,% has no italic face
]{NotoSansCJK}
- \babelfont [chinese-traditional]{tt}[Scale=\Noto@scale,Color=\Noto@color]{NotoSansMonoCJKtc}
+ \babelfont [chinese-traditional]{tt}[Scale=\Noto@scale,\Noto@color]{NotoSansMonoCJKtc}
%
\babelprovide[import,language=Default]{tamil}
\babelfont [tamil]{rm}[%
- Renderer=HarfBuzz,
+ %Renderer=OpenType,
Scale=\NotoTam@scale,
- Color=\Noto@color,
+ \Noto@color,
Extension = .ttf,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -903,9 +911,9 @@
BoldItalicFont = *-Bold,% has no italic face
]{NotoSerifTamil}
\babelfont [tamil]{sf}[%
- Renderer=HarfBuzz,
+ %Renderer=OpenType,
Scale=\NotoTam@scale,
- Color=\Noto@color,
+ \Noto@color,
Extension = .ttf,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -913,9 +921,9 @@
BoldItalicFont = *-Bold,% has no italic face
]{NotoSansTamil}
\babelfont [tamil]{tt}[
- Renderer=HarfBuzz,
+ %Renderer=OpenType,
Scale=\NotoTam@scale,
- Color=\Noto@color,
+ \Noto@color,
Extension = .ttf,
UprightFont = *-Regular,
ItalicFont = *-Regular,% has no italic face
@@ -949,8 +957,13 @@
\RequirePackage{bm}% load after all math to give further access to bold math
-%% Ensure that the current font is used for equation tags, not \normalfont as set by amsmath
-\def\maketag@@@#1{\hbox{\m@th#1}}
+% To free \eqref from the normal font (e.g., for use in section headings or captions). Revised 2024/07/28
+\renewcommand{\eqref}[1]{\textup{\hbox{\m@th{(\ignorespaces\ref{#1}\unskip\@@italiccorr)}}}}
+%
+% amsmath def: \newcommand{\eqref}[1]{\textup{\tagform@{\ref{#1}}}}
+% \def\tagform@#1{\maketag@@@{(\ignorespaces#1\unskip\@@italiccorr)}}
+% \def\maketag@@@#1{\hbox{\m@th\normalfont#1}}
+
% The article class calls \sloppy in two-column mode (\tolerance 9999, \emergencystretch 3em)
% The following adjustments affect line breaking; the values below are intended to produce
@@ -1000,11 +1013,11 @@
\SetMathAlphabet{\mathsf}{sans}{\encodingdefault}{\sfdefault}{m}{n}% \mathsf is upright.
-% Nice solution from DPC to prevent aux file errors (due to active characters from babel) when switching from pdflatex to lualatex.
-\ifx\directlua\undefined
- \AtBeginDocument{\immediate\write\@auxout{\detokenize{%
- \ifx\directlua\undefined\else\endinput\fi}}}
-\fi
+%% Nice solution from DPC to prevent aux file errors (due to active characters from babel) when switching from pdflatex to lualatex. Disabled, 2024/07/28
+%\ifx\directlua\undefined
+% \AtBeginDocument{\immediate\write\@auxout{\detokenize{%
+% \ifx\directlua\undefined\else\endinput\fi}}}
+%\fi
%%%%%%%% Footers and Footnotes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -1034,7 +1047,6 @@
\fancyfoot[CE,CO]{\@SetFont\thepage\\[1ex]\footnotesize The United States Government retains, and by accepting the article for publication, the publisher acknowledges that the United States Government retains, a non-exclusive, paid-up, irrevocable, worldwide license to publish or reproduce the published form of this work, or allow others to do so, for United States Government purposes.}
\fi
-% was missing from earlier versions...?
\ifasmeconf@govtsome
\newgeometry{left=0.5in, right=0.5in, top=0.5in, bottom = 1.in, footskip = 0.3in, columnsep = 0.38in}
\fancyfoot[RO,RE]{}
@@ -1088,39 +1100,36 @@
\titlespacing\subsubsection{\parindent}{6pt plus 3pt minus 2pt}{0pt plus 2pt minus 1pt} % from 12 4 3, 2019/7/7
%% Special handling of the appendices
-%% Assumes that appendices are the last content in paper
-\RenewDocumentCommand{\appendix}{}{%
- \setcounter{section}{0}
- \pdfbookmark[0]{\appendicesname}{appendices}
- \renewcommand\thesection{\Alph{section}}
- \titleformat{\section}{\mathversion{sansbold}\bfseries\sffamily\raggedright}{\MakeTextUppercase{\appendixname}\ \thesection.}{0.5em}{\MakeTextUppercase}
-}
-
-%% This patches titlesec's unprotected re-definition of \footnote.
-%% See discussion here: https://github.com/jbezos/titlesec/issues/48
+%% Assumes that appendices are the last content in paper
+%% Code revised to better support tagged pdf, 2024/07/26.
+\patchcmd{\appendix}{%
+ \setcounter{subsection}{0}%
+}{%
+ \setcounter{subsection}{0}\pdfbookmark[1]{\appendicesname}{appendices}%
+}{}{}
+\apptocmd{\appendix}{\titleformat{\section}[block]{\mathversion{sansbold}\bfseries\sffamily\raggedright}{\MakeTextUppercase{\appendixname}\ \thesection.}{0.5em}{\MakeTextUppercase}}{}{}
+% Changed to block layout (rather than default hanging) whilst retaining \raggedright, since "Appendix X." is a very wide hanging indent. 2024/07/26
+
+%% This patches titlesec's unprotected re-definition of \footnote. See discussion here: https://github.com/jbezos/titlesec/issues/48
%% Without this patch, recent versions of LaTeX will require \protect\footnote in section headings.
-%% This issue may be corrected in titlesec, but keeping the patch anyway.
+%% This issue may be corrected in titlesec, but keeping the patch for backward compatibility.
\patchcmd{\ttl@select}{\def\footnote}{\protected\def\footnote}{\typeout{Asmeconf.sty patched titlesec to have protected def of footnote}}{}
%%%%%%%%%% Hyperref, bookmarks, and PDF/A %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% new pdf management in LaTeX, with \DocumentMetaData{..}, is preferred to this *legacy* approach.
\ifpdftex
- %%% to assist with unicode glyph mapping, following M. Sharpe's recommendation in the newtx documentation.
- \IfFormatAtLeastTF{2020/10/01}{\relax}{%
- \pdfgentounicode=1 %% enable CMaps; has moved into the latex kernel Oct 2020
- \input glyphtounicode.tex %% lists of mappings; has moved into the latex kernel Oct 2020
- }
+ %%% to assist with unicode glyph mapping, following M. Sharpe's recommendation in the newtx documentation.
+ %%% as of 2024/07/28, these are still necessary with \DocumentMetadata{pdfstandard=A-3u}. Note: glyphtounicode-cmex.tex is now in latex-lab.
\InputIfFileExists{glyphtounicode-cmr.tex}{}{} %% additional mappings
\InputIfFileExists{glyphtounicode-ntx.tex}{}{} %% additional mappings
\ifac@setpdfa
- %%%% pdfmanagement options, from Ulrike Fischer 2021/06/12
- \if@asme@pdfmanagement
- \ClassInfo{asmeconf}{pdfmanagement is defined. Class file will not load a color profile}
+ %% new pdf management in LaTeX, with \DocumentMetaData{..}, is preferred to this *legacy* approach.
+ \ifasme@pdfmanagement
+ \ClassInfo{\ClassName}{pdfmanagement is defined. Class file will not load a color profile}
\else
- \ClassInfo{asmeconf}{NOTE: pdfmanagement not defined. Class file will load a color profile}%
+ \ClassInfo{\ClassName}{NOTE: pdfmanagement not defined. Class file will load a color profile}%
%%% a fairly generic RGB color profile, aimed at on-screen rendering (not print production)
\immediate\pdfobj stream attr{/N 3} file{sRGB.icc}
\pdfcatalog{%
@@ -1158,20 +1167,20 @@
\urlstyle{same} % don't switch to typewriter font for urls
\RequirePackage{doi} % supports the nasty characters in some doi's
\renewcommand{\doitext}{DOI } % change to this from default value, {doi:}, per ASME specification
-\RequirePackage{bookmark} % improves handling of pdf bookmarks
\providecommand*{\toclevel@subfigure}{1}% <== to address unknown bookmark level of subfigure. 2021/12/24
\providecommand\hrefurl[2]{\href{#1}{#2}}% to address certain issues around URL recognition with new pdf management code, 2021/12/02
-\if@asme@pdfmanagement
- \ClassInfo{asmejour}{pdfmanagement is defined. Class file will not load hyperxmp}
+\ifasme@pdfmanagement
+ \ClassInfo{asmejour}{pdfmanagement is defined. Class file will not load hyperxmp and bookmark packages}
\else
+ \RequirePackage{bookmark}% improves handling of pdf bookmarks
\RequirePackage{hyperxmp}% improve transfer of metadata to pdf
% Patch bug in hyperxmp, unless a more recent version is used.
\ifdefined\hyxmp@no@bad@parts% \hyxmp@no@bad@parts is not def'd in TeX Live 2019 or older
- \@ifpackagelater{hyperxmp}{2022/10/15}{% v5.11 or later
+ \IfPackageAtLeastTF{hyperxmp}{2022/10/15}{% v5.11 or later
\relax
}{%
\newcount\hypxmp@tempcnt
@@ -1180,13 +1189,11 @@
\hyxmp@pdfstringdef\@pdfapart{\the\hypxmp@tempcnt}%
}
}
- \else
- \relax
\fi
\fi
-%%% ==> recent and evolving development of \pdfstring removes all robust commands from bookmarks, so
-%%% by early 2024, errors are not present; however, these commands serve to still suppress warnings.
+%%% ==> recent development of \pdfstring removes all robust commands from bookmarks, so that
+%%% by early 2024, errors are not present; these commands serve to still suppress warnings, however.
%% Since \bm may be useful in headings, this fix will reduce frequency with which
%% alternate pdfstrings must be given in revised section command as \section[pdfstring]{texstring}
@@ -1212,7 +1219,7 @@
%% Ensure that tag color does not follow \eqref into bookmarks, 2020/02/28
\pdfstringdefDisableCommands{%
- \def\eqref#1{(\ref{#1})}%
+ \def\eqref#1{(\ref*{#1})}% \ref* is from hyperref
}
% Let's make sure footnotes in section headings don't break pdf bookmarks.
@@ -1222,7 +1229,6 @@
}
-
%% Let's also add \footnote to the \TextUppercase exception list, so that footnote text won't be capitalized
%% if given in section headings. Ditto for \eqref
%
@@ -1244,13 +1250,12 @@
\renewcommand{\linenumberfont}{\normalfont\footnotesize\color{red}}
\AtBeginDocument{\linenumbers}
\ifasmeconf@balance
- \ClassWarningNoLine{asmeconf}{Package lineno loaded, so final column balancing will be disabled}%
+ \ClassWarningNoLine{\ClassName}{Package lineno loaded, so final column balancing will be disabled}%
\fi
%%% Patch to allow line numbering in AMS math environments.
%%% This patch is for lineno versions earlier than v5.2 [2023/05/19]. As of mid-2023, the lineno package
- %%% has been corrected to account for the AMS math environments. Retaining temporarily for backward compatibility.
+ %%% has been corrected to account for the AMS math environments. Retaining for backward compatibility.
%%% postdisplaypenalty adjusted to avoid extra line number at end, see: https://tex.stackexchange.com/a/461192/
- %%% multline has some additional problem that puts an extra line number above it.
\IfPackageAtLeastTF{lineno}{2023/05/19}{\relax}{
\NewDocumentCommand{\ac@losepostpenalty}{}{\patchcmd{\linenomathWithnumbers}{\advance\postdisplaypenalty\linenopenalty}{}{}{}}
%
@@ -1270,7 +1275,7 @@
\ifasmeconf@balance
\RequirePackage{flushend}% flushend package is NOT compatible with lineno
\AtEndDocument{\flushcolsend}%
- \LogNote{Calling flushend package to balance column height on last page}%
+ \ClassNoteNoLine{\ClassName}{Calling flushend package to balance column height on last page}%
\fi%
\fi
\providecommand{\@LN@col}[1]{\relax}% Enable dropping lineno option without trashing .aux file
@@ -1364,7 +1369,10 @@
\NewDocumentCommand\PaperNo{m}{\gdef\@PaperNo{#1}}
\providecommand\@PaperNo{\protect\phantom{NO.}}
-\NewDocumentCommand\PaperTitle{m}{\gdef\@PaperTitle{#1}}
+\NewDocumentCommand\PaperTitle{m}{%
+ \gdef\@PaperTitle{#1}%
+ \gdef\@title{#1}% added 2024/07/28
+}
\providecommand\@PaperTitle{\hbox{ }}
\NewDocumentCommand\@HeaderTitle{}{%
@@ -1419,7 +1427,7 @@
%%%% option to use the traditional grid layout of authors or the inline style
\ifasmeconf@grid
- \LogNote{Selected option for a grid of author blocks}%
+ \ClassNoteNoLine{\ClassName}{Selected option for a grid of author blocks}%
%%%%%%%%%%%%%%%%%%%% Gridded author layout %%%%%%%%%%%%%%%%%%%%%%%%%
@@ -1463,7 +1471,7 @@
\ifblank{#1}{%
\expandafter\xdef\csname aut@\theauthorcnt\endcsname{}%
\expandafter\xdef\csname autaffil@\theauthorcnt\endcsname{-1}
- \ClassWarning{asmeconf}{Missing author name, check for extra comma}%
+ \ClassWarning{\ClassName}{Missing author name, check for extra comma}%
}{\expandafter\xdef\csname aut@\theauthorcnt\endcsname{#1}%
}%
}% defines \aut@authorcnt as Name #1
@@ -1547,12 +1555,18 @@
\fi
\fi
\ifnum\value{authorno}>15
- \ClassWarningNoLine{asmeconf}{The class is programmed for up to 15 author blocks. If some of your authors are at the same institution, %
+ \ClassWarningNoLine{\ClassName}{The class is programmed for up to 15 author blocks. If some of your authors are at the same institution, %
you may put more than one name above a single address. If you need more than 15 author blocks, try using the in-line author style %
instead of the [grid] option}
\fi
}% end whiledo
}
+ \ExplSyntaxOn
+ % next three are for backward compatibility
+ \cs_if_exist:NF \cs_gset:Npe { \cs_generate_variant:Nn \cs_gset:Npn {Npe} }
+ \cs_if_exist:NF \tl_set:Ne { \cs_generate_variant:Nn \tl_set:Nn {Ne} }
+ \cs_if_exist:NF \tl_put_right:Ne { \cs_generate_variant:Nn \tl_put_right:Nn {Ne} }
+
\NewDocumentCommand\@ConstructAuthorBlock{}{%
\ifnum\value{authorno}>3
\JoinCoffins\firstrowauthorblock[hc,b]\secondrowauthorblock[hc,t](0pt, -1.5\baselineskip)
@@ -1566,8 +1580,34 @@
\ifnum\value{authorno}>12
\JoinCoffins\firstrowauthorblock[hc,b]\fifthrowauthorblock[hc,t](0pt, -1.5\baselineskip)
\fi
- \centerline{\TypesetCoffin\firstrowauthorblock}%% in this instance, \centerline is better than \centering
+ \centerline{\TypesetCoffin\firstrowauthorblock}% in this instance, \centerline is better than \centering
+ \__asmeconf_concataut:
+ \cs_gset:Npe \@author { \tl_use:N \g_asmeconf_authors_tl }
+ %\iow_term:e { \tl_use:N \g_asmeconf_authors_tl }% diagnostic only
}
+ % build comma-separated list of author names
+ \cs_new_protected:Nn \__asmeconf_concataut: {
+ \tl_new:N \g_asmeconf_authors_tl
+ \int_set:Nn \l_tmpa_int {1}
+ \int_new:N \l__asmeconf_noauts
+ \int_set:Nn \l__asmeconf_noauts { \value{authorcnt} }
+ \int_do_until:nNnn { \l_tmpa_int } > { \l__asmeconf_noauts }
+ {
+ \tl_set:Ne \l_tmpa_tl {\use:c { aut@ \int_use:N \l_tmpa_int } }
+ \tl_replace_all:Nnn \l_tmpa_tl {\unhbox \voidb@x \protect \penalty \@M \ } {~}
+ % If tex unbreakable space character "~" has expanded, replace by a simple space, which is "~" in Expl3 syntax
+ \tl_remove_all:Nn \l_tmpa_tl { \JointFirstAuthor }
+ \tl_replace_all:Nnn \l_tmpa_tl { \CorrespondingAuthor } { \use_none:n }
+ \tl_replace_all:Nnn \l_tmpa_tl { \affil } { \use_none:n }
+ \tl_replace_all:Nnn \l_tmpa_tl { \xdef } { \use_none:nn }
+ \tl_put_right:Ne \g_asmeconf_authors_tl \l_tmpa_tl
+ \int_compare:nNnT { \l_tmpa_int } < { \l__asmeconf_noauts} {
+ \tl_put_right:Ne \g_asmeconf_authors_tl { ,~ }
+ }
+ \int_incr:N \l_tmpa_int
+ }
+ }
+ \ExplSyntaxOff
%%% otherwise use the new compact layout of authors
\else
@@ -1576,13 +1616,35 @@
\NewCoffin{\AffiliationBlock}
\NewCoffin{\AffiliationsBlock}
\AtBeginDocument{\SetHorizontalCoffin\AffiliationsBlock{}}% corrected 2021/12/01
-
+
+ \ExplSyntaxOn
+ \cs_if_exist:NF \cs_gset:Npe { \cs_generate_variant:Nn \cs_gset:Npn {Npe} }
+ \cs_if_exist:NF \tl_gset:Ne { \cs_generate_variant:Nn \tl_gset:Nn {Ne} }
+
%% NB: \parbox width to \textwidth (full page) not \linewidth (single column)
\NewDocumentCommand\SetAuthors{m}{%
- \SetHorizontalCoffin\AuthorBlock{%
+ \SetHorizontalCoffin\AuthorBlock{% ignoring the bug in testphase tagging
\parbox{\textwidth}{\centering\sffamily\bfseries\ignorespaces#1\ignorespaces}%
+ % NB: in vertical mode \parbox needs \noindent ahead of it, _inside_ vertical coffin
+ % \SetVerticalCoffin\AuthorBlock{\textwidth}{% 2024/07/30, test a vertical coffin alternative
+ % \centering\sffamily\bfseries\ignorespaces#1\ignorespaces%
+ \__asmeconf_striptokens:n {#1}
+ \cs_gset:Npe \@author { \tl_use:N \g_asmeconf_authors_tl }% set \@author = list of authors, 2024/07/31
}
}
+ % strip \affil{..}, \JointFirstAuthor, \CorrespondingAuthor{...} from argument
+ \cs_new_protected:Nn \__asmeconf_striptokens:n {
+ \tl_set:Nn \l_tmpa_tl {#1}
+ \regex_replace_all:nnN { \cA\~ } {\ } \l_tmpa_tl % replace ~ by space in author list
+ %\tl_replace_all:Nnn \l__asmeconf_authors_tl {\ } {~}% change "\ " to space (but why? for text we would want this)
+ \tl_remove_all:Nn \l_tmpa_tl { \JointFirstAuthor }
+ \tl_replace_all:Nnn \l_tmpa_tl { \affil } { \use_none:n }
+ \tl_replace_all:Nnn \l_tmpa_tl { \CorrespondingAuthor } { \use_none:n }
+ \tl_new:N \g_asmeconf_authors_tl
+ \tl_gset:Ne \g_asmeconf_authors_tl \l_tmpa_tl
+ \iow_term:e { \tl_use:N \g_asmeconf_authors_tl }% diagnostic only
+ }
+ \ExplSyntaxOff
\def\@makefnmark{\hbox{\@textsuperscript{\sffamily\@thefnmark}}}%
@@ -1598,14 +1660,14 @@
%%% Affiliation mark
\NewDocumentCommand{\affil}{m}{%
\ifblank{#1}{%
- \ClassWarning{asmeconf}{Empty affiliation tag}%
+ \ClassWarning{\ClassName}{Empty affiliation tag}%
\@gobble% 9 Dec 2021, addresses modification for commas
}{\bfseries\footnotemark[#1]}%
}
%%% to deal with sequential notes as, e.g., "1,*", or "1,2,*" %%%%%%%%%%
\ExplSyntaxOn
- \cs_new:Npn \__asmecome_OtherNoteComma:n {
+ \cs_new:Npn \__asmeconf_OtherNoteComma:n {
\peek_meaning:NTF \affil
{ \textsuperscript{\mdseries,} }
{ \peek_meaning:NTF \CorrespondingAuthor
@@ -1614,11 +1676,11 @@
}
}
\cs_new_eq:NN \__saveAF \affil
- \cs_gset_protected:Npn \affil #1 { \__saveAF{#1} \__asmecome_OtherNoteComma:n }
+ \cs_gset_protected:Npn \affil #1 { \__saveAF{#1} \__asmeconf_OtherNoteComma:n }
\cs_new_eq:NN \__saveCA \CorrespondingAuthor
- \cs_gset_protected:Npn \CorrespondingAuthor #1 { \__saveCA{#1} \__asmecome_OtherNoteComma:n }
+ \cs_gset_protected:Npn \CorrespondingAuthor #1 { \__saveCA{#1} \__asmeconf_OtherNoteComma:n }
\cs_new_eq:NN \__saveJA \JointFirstAuthor
- \cs_gset_protected:Npn \JointFirstAuthor { \__saveJA \__asmecome_OtherNoteComma:n }
+ \cs_gset_protected:Npn \JointFirstAuthor { \__saveJA \__asmeconf_OtherNoteComma:n }
\ExplSyntaxOff
%%%
@@ -1633,7 +1695,6 @@
%%%% Make the title and author section
\NewDocumentCommand\MakeTitlePage{}{%
\twocolumn[
- \begin{@twocolumnfalse}
\@HeaderTitle
\vspace*{2\baselineskip}
\ifasmeconf@grid
@@ -1642,7 +1703,6 @@
\@SetAuthorBlock
\fi
\vspace*{3\baselineskip}
- \end{@twocolumnfalse}
]
\let\@makefnmark\savemakefnmark% restore footnote mark font
\renewcommand*{\thefootnote}{\fnsymbol{footnote}}
@@ -1767,12 +1827,12 @@
%%%%%%%%%%%%%%%%%% Times-like fonts for specific languages %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifpdftex % Under lualatex, babel has problems with the following approach, which assumes that fontspec has not been loaded.
- % Recommend not to choose the [nofontspec] option.
+ % Recommend not to choose the [nofontspec] option.
% Several modifications made in response to newtx v1.71, 2022/03/14
\ifac@vietnamese
%
\IfFormatAtLeastTF{2020/02/02}{\relax}{%
- \ClassError{asmeconf}{Your LaTeX format is dated \fmtversion. LaTeX distributions 2020 are necessary to use the fonts of the [vietnamese] option with pdflatex}{Please UPDATE your LaTeX distribution: TeX Live is available for download at no charge: \string https://www.tug.org/texlive/. Alternatively, delete the class option [vietnamese].}%
+ \ClassError{\ClassName}{Your LaTeX format is dated \fmtversion. LaTeX distributions 2020 are necessary to use the fonts of the [vietnamese] option with pdflatex}{Please UPDATE your LaTeX distribution: TeX Live is available for download at no charge: \string https://www.tug.org/texlive/. Alternatively, delete the class option [vietnamese].}%
}
%
\AtBeginDocument{%
@@ -1831,7 +1891,7 @@
\ifac@greek
%
\IfFormatAtLeastTF{2020/02/02}{\relax}{%
- \ClassError{asmeconf}{Your LaTeX format is dated \fmtversion. LaTeX distributions 2020 are necessary to use the fonts of the [greek] option with pdflatex}{Please UPDATE your LaTeX distribution: TeX Live is available for download at no charge: \string https://www.tug.org/texlive/. Alternatively, delete the class option [greek].}%
+ \ClassError{\ClassName}{Your LaTeX format is dated \fmtversion. LaTeX distributions 2020 are necessary to use the fonts of the [greek] option with pdflatex}{Please UPDATE your LaTeX distribution: TeX Live is available for download at no charge: \string https://www.tug.org/texlive/. Alternatively, delete the class option [greek].}%
}
%
\AtBeginDocument{%
@@ -1906,7 +1966,7 @@
\ifac@cyrillic
%
\IfFormatAtLeastTF{2020/02/02}{\relax}{%
- \ClassError{asmeconf}{Your LaTeX format is dated \fmtversion. LaTeX distributions 2020 are necessary to use the fonts of the cyrillic language option with pdflatex, e.g., [russian]}{Please UPDATE your LaTeX distribution: TeX Live is available for download at no charge: \string https://www.tug.org/texlive/. Alternatively, delete the class option calling a cyrillic-alphabet language.}%
+ \ClassError{\ClassName}{Your LaTeX format is dated \fmtversion. LaTeX distributions 2020 are necessary to use the fonts of the cyrillic language option with pdflatex, e.g., [russian]}{Please UPDATE your LaTeX distribution: TeX Live is available for download at no charge: \string https://www.tug.org/texlive/. Alternatively, delete the class option calling a cyrillic-alphabet language.}%
}
%
\AtBeginDocument{%
diff --git a/Master/texmf-dist/tex/latex/asmejour/asmejour.cls b/Master/texmf-dist/tex/latex/asmejour/asmejour.cls
index 095964ffc7b..a8cd43eae27 100644
--- a/Master/texmf-dist/tex/latex/asmejour/asmejour.cls
+++ b/Master/texmf-dist/tex/latex/asmejour/asmejour.cls
@@ -4,10 +4,9 @@
%%
%% The asmejour.cls file should be used with the files asmejour.bst (for citations) and asmejour-template.tex.
%%
-%%
%% This file's version and date are:
- \def\versionno{1.22}
- \def\versiondate{2024/01/30\space}
+ \def\versionno{1.23}
+ \def\versiondate{2024/07/24\space}
%%
%% Author: John H. Lienhard V
%% Department of Mechanical Engineering
@@ -22,14 +21,14 @@
%% 4. Support citations, footnotes, and bold face math in section headings
%% 5. Provide optional line numbers for editing and review
%% 6. Support balancing height of columns on the last page
-%% 7. Support the archival PDF/A standards 1b, 2b, 2u, 3b, and 3u
+%% 7. Support archival PDF/A standards
%% 8. Provide copyright notices for government employees and government contractors
%% 9. Enable various math and text features from the newtxmath, mathalfa, and newtxtext packages
%% 10. Support inclusion of passages in languages other than English
%%
%% This class is compatible with both pdfLaTeX and LuaLaTeX. All packages required by the class
-%% are in standard distributions, such as TeXLive, and are also available at CTAN (https://ctan.org/).
-%% The use of an up-to-date (Feb. 2020 or later) and complete LaTeX distribution is strongly recommended.
+%% are in standard distributions, such as TeX Live, and are also available at CTAN (https://ctan.org/).
+%% The use of an up-to-date (Nov. 2022 or later) and complete LaTeX distribution is strongly recommended.
%%
%% The title block is set by specific commands that are described in the asmejour-template.tex file.
%%
@@ -57,72 +56,79 @@
%% whether in an action of contract, tort or otherwise, arising from, out of or in connection with the
%% software or the use or other dealings in the software.
%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{asmejour}[\versiondate asmejour paper format]
-\LoadClass[twoside,9pt,twocolumn]{extarticle}
-
-\ifdefined\NewDocumentCommand\else
- \RequirePackage{xparse}[2020/02/25]
-\fi
+\LoadClass[twoside,9pt]{extarticle}% twocolumn format initiated in \MakeTitle command 2024/07/20
\RequirePackage{iftex}% provides \ifpdftex, etc.
\RequirePackage{ifthen}
-%%%%%%%%%%%%% Test compatibility of older distributions %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ExplSyntaxOn
+ \str_const:Nn \ClassName {asmejour}
+\ExplSyntaxOff
-\providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion}% compare version to date; \If... added to latex 2020/10/01
-\providecommand\IfPackageAtLeastTF{\@ifpackagelater}% compare version to date; \If... added to latex 2020/10/01
-\providecommand\IfPackageLoadedTF{\@ifpackageloaded}% \If...added to latex 2021/11/15
+%%%%%%%%%%%%% Some compatibility for older distributions %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\IfFormatAtLeastTF{2020/02/25}{%
- \ClassInfo{asmeconf}{Your LaTeX format is dated \fmtversion. LaTeX distributions 2020/10/01 or later are strongly recommended, for best results}
- }{%
- \ClassError{asmeconf}{Your LaTeX format is dated \fmtversion. Formats dated 2020/10/01 or later are recommended for the asmejour class. Older formats may generate errors or fail entirely!}{Please UPDATE your LaTeX distribution to obtain best results. TeX Live is available for download at no charge: \string https://www.tug.org/texlive/. You can try to click past the errors for now, but your abstract will probably not compile properly if you lack the xparse package [2020/02/25], and the code will crash entirely if you lack the iftex package [2019/11/07].}%
+\providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion}% compare version to date; \If... added to latex 2020/10/01
+\providecommand\IfPackageAtLeastTF{\@ifpackagelater}% compare version to date; \If... added to latex 2020/10/01
+\providecommand\IfPDFManagementActiveTF{\@secondoftwo}% \If... added to latex 2021/07/23
+\providecommand\IfPackageLoadedTF{\@ifpackageloaded}% \If...added to latex 2021/11/15
+\providecommand\ClassNoteNoLine[2]{\typeout{^^JClass Note #1: #2.^^J}}% log & terminal note... added to latex 2021/11/15
+
+\IfFormatAtLeastTF{2020/10/01}{\relax}{%
+ \ClassError{\ClassName}{Your LaTeX format is dated \fmtversion. Formats dated 2020/10/01 or later are recommended for the asmejour class. Older formats may generate errors or fail entirely!}{Please UPDATE your LaTeX distribution to obtain best results. TeX Live is available for download at no charge: \string https://www.tug.org/texlive/. You can try to click past any errors for now, but your abstract will not compile properly if you lack the xparse package [2020/02/25], and the code will crash entirely if you lack the iftex package [2019/11/07].}%
}
-
-\DeclareDocumentCommand\LogNote{m}{%
- \IfFormatAtLeastTF{2021/11/15}{%
- \ClassNoteNoLine{asmejour}{#1}% Added to LaTeX in Nov. 2021
- }{%
- \ClassWarningNoLine{asmejour}{#1}%
+
+% check whether pdfmanagement (\DocumentMetadata) has been loaded (else fall back to hyperxmp and bookmark packages after loading hyperref)
+\newif\ifasme@pdfmanagement
+\IfPDFManagementActiveTF{
+ \asme@pdfmanagementtrue
+}{
+ \asme@pdfmanagementfalse
+ \ClassWarningNoLine{\ClassName}{pdfmanagement is not active. Will load hyperxmp and bookmark packages instead}
+}
+
+% Allow pre 2021/11/15 formats to see the graphicx alt key without causing an error
+\IfFormatAtLeastTF{2021/11/15}{
+ \relax
+}{
+ \AtBeginDocument{
+ \IfPackageLoadedTF{graphicx}{\define@key{Gin}{alt}{}}{\relax}
}
}
-%% Test whether \DocumentMetadata has been loaded (Thank you Ulrike Fischer)
-\newif\if@asme@pdfmanagement
-\ExplSyntaxOn
-\bool_if:nTF
- {
- \bool_lazy_and_p:nn
- {\cs_if_exist_p:N \pdfmanagement_if_active_p:}
- { \pdfmanagement_if_active_p: }
- }
- {
- \@asme@pdfmanagementtrue
- }
- {
- \@asme@pdfmanagementfalse
- }
-\ExplSyntaxOff
+% Enable pre-2020/10 formats to access essential macros later moved into LaTeX kernel
+\ifdefined\NewDocumentCommand\else
+ \RequirePackage{xparse}[2020/02/25]
+\fi
+
+% Provide pre-2020/10 installations with basic unicode character mappings
+\IfFormatAtLeastTF{2020/10/01}{\relax}{%
+ \pdfgentounicode=1 %% enable CMaps; was moved into the latex kernel Oct 2020
+ \input glyphtounicode.tex %% lists of mappings; was moved into the latex kernel Oct 2020
+}
-%%%%%%%%%%%%%% Options for the class %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%% Options for the class %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\RequirePackage{kvoptions}% this package calls kvsetkeys
\SetupKeyvalOptions{
- family=asmejour,
+ family=\ClassName,
prefix=asmejour@,
setkeys=\kvsetkeys,
}
%% for mathalfa, so we may pass options in this format: mathalfa=cal=euler, mathalfa=frak=boondox
-\define@key{asmejour}{mathalfa}{%
+\define@key{\ClassName}{mathalfa}{%
\PassOptionsToPackage{#1}{mathalfa}%
}
+%% Option to obtain line numbers [singlecolumn], 2024/07/20
+\DeclareBoolOption{singlecolumn}
+
%% Option to obtain line numbers [lineno]
\DeclareBoolOption{lineno}
@@ -132,6 +138,12 @@
%% Option to omit lists of figures and tables
\DeclareBoolOption{nolists}
+%% Option to omit ASME copyright notice [nocopyright]
+\DeclareBoolOption{nocopyright}
+
+%% Option to omit ASME footers [nofoot]
+\DeclareBoolOption{nofoot}
+
%% Option for copyright notice if all authors are government employees [govt]
\DeclareBoolOption{govt}
@@ -141,57 +153,54 @@
%% Option for government contractor copyright notice [contractor]
\DeclareBoolOption{contractor}
-%% set [barcolor=] to a color name defined by xcolor package
+%% set key [barcolor=] to pass a color name defined by xcolor package
\DeclareStringOption[black]{barcolor}
-%% the key main= passes the choice of main language to babel
+%% the key [main= ] to pass the choice of main language to babel
\newif\ifaj@mainset\aj@mainsetfalse
-\define@key{asmejour}{main}[english]{%
+\define@key{\ClassName}{main}{%
\PassOptionsToPackage{main=#1,#1}{babel}% added #1 resolves conflicts between certain .ldf files under "main=".
\aj@mainsettrue
- \ifthenelse{\equal{#1}{english}}{%
- \PassOptionsToPackage{pdflang=en}{hyperref}}{%
- \LogNote{Selecting #1 as the primary language}
- }%
+ \ClassNoteNoLine{\ClassName}{Selecting #1 as the primary language}
}
-%% if main language was not chosen explicitly, default to English
-\ifaj@mainset\relax\else
- \PassOptionsToPackage{main=english}{babel}%
- \PassOptionsToPackage{pdflang=en}{hyperref}
- \ClassInfo{Selecting English as the primary language, since main= not set}%
-\fi
-
%% Suppress warnings about unused global options, 2021/12/01
-\DeclareDefaultOption{}% suppress warning about unused mathalfa option
+\DeclareDefaultOption{}
-\ProcessKeyvalOptions{asmejour}
+\ProcessKeyvalOptions{\ClassName}
%% Turn off these keys now that we're done with them
\NewDocumentCommand\aj@DisableOption{m}{%
\DisableKeyvalOption[%
action=ignore,%
- class=asmejour%
+ class=\ClassName%
]{#1}{\@KeyFamily}%
}
\NewDocumentCommand\@DisableKeys{>{\SplitList{;}}m}{\ProcessList{#1}{\aj@DisableOption}}
-\def\@KeyFamily{asmejour}
-\@DisableKeys{mathalfa;barcolor;lineno;balance;nolists;govt;govtsome;contractor;main}
+\def\@KeyFamily{\ClassName}
+\@DisableKeys{mathalfa;singlecolumn;lineno;balance;nolists;nocopyright;nofoot;govt;govtsome;contractor;barcolor;main}
+
+
+%% if main language was not was chosen explicitly, default to English
+\ifaj@mainset\relax\else
+ \PassOptionsToPackage{main=english}{babel}%
+ \ClassNoteNoLine{\ClassName}{Selecting English as the primary language, since main= not set}%
+\fi
-%%%%%%% PDF/A Compliance Keys %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%% PDF/A Compliance Keys %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% new pdf management in LaTeX, with \DocumentMetaData{..}, is preferred to this approach.
\newif\ifaj@setpdfa\aj@setpdfafalse
\newif\ifaj@pdfaone\aj@pdfaonefalse
-\if@asme@pdfmanagement\else
+\ifasme@pdfmanagement\else
\SetupKeyvalOptions{
family=pdfaopt,
- prefix=pdafopt@,
+ prefix=pdfaopt@,
setkeys=\kvsetkeys,
}
@@ -201,7 +210,7 @@
\define@key{pdfaopt}{pdf-a}[true]{%
\aj@setpdfatrue
\PassOptionsToPackage{pdfa}{hyperref}
- \AtBeginDocument{\hypersetup{pdfapart=3,pdfaconformance=u}}% note: hyperref takes these options if hyperxmp is loaded
+ \AtBeginDocument{\hypersetup{pdfapart=3,pdfaconformance=u}}% hyperref takes these options if hyperxmp is loaded
}
%%% to select part 1, 2 or 3
\define@key{pdfaopt}{pdfapart}[3]{%
@@ -209,7 +218,7 @@
\AtBeginDocument{\hypersetup{pdfapart=\asmejour@tempa}}
\ifthenelse{\equal{#1}{1}}{\aj@pdfaonetrue}{\relax}%
}
- %% to select conformance b or u. NB: a is not possible with pdfLaTeX, and u is not possible with 1.
+ %% to select conformance b or u. NB: a is not currently possible with pdfLaTeX; u not possible with 1.
\ExplSyntaxOn
\define@key{pdfaopt}{pdfaconformance}[u]{%
\str_set:Ne \l_tmp_str { \str_uppercase:n {#1} }
@@ -236,9 +245,10 @@
\pdfminorversion=7 % this selection is not required
\fi
\else
- \ifaj@setpdfa\ClassWarningNoLine{asmejour}{pdf-a option requires pdfLaTeX engine. Under LuaLaTeX, use %
- \protect\DocumentMetadata{pdfstandard=A-3b} before \protect\documentclass[..]{asmeconf}}\fi%
- \ifx\directlua\undefined\else
+ \ifaj@setpdfa\ClassWarningNoLine{\ClassName}{pdf-a option requires pdfLaTeX. Under LuaLaTeX, use %
+ \protect\DocumentMetadata{pdfstandard=A-3b} before \protect\documentclass[..]{\ClassName}}%
+ \fi
+ \ifx\directlua\undefined\else % default under lualatex is 1.4
\directlua{
if pdf.getminorversion() \string~= 7 then
if (status.pdf_gone and status.pdf_gone > 0)
@@ -248,58 +258,28 @@
pdf.setminorversion(7)
end
end
+ }
\fi
- }% will lose some accented characters this way... better to use fontspec, if the system fonts exist.
\fi
\fi
-%%%%%%%%%% Further class options %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-%% Option to omit ASME footer
-\DeclareOption{nofoot}{%
- \AtBeginDocument{\pagestyle{plain}%
- \fancypagestyle{title}{%
- \fancyhf{}
- \fancyfoot[CE,CO]{\thepage}
- }
- }
-}
-
-%% Option to omit ASME copyright
-\DeclareOption{nocopyright}{%
- \AtBeginDocument{\fancypagestyle{title}{%
- \fancyhf{}
- \fancyfoot[RO]{\large\sffamily \@PreprintStringR\space\space\bfseries/\space\space\@PaperNumber\thepage}
- \fancyfoot[LO]{\large\bfseries\sffamily Journal of \@JourName}
- \fancyfoot[CO]{}
- }
- }
-}
+%%%%%%%%% Various font-related options %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Option for slightly larger small capitals font [largesc], corrected 2021/01/29
\DeclareOption{largesc}{\PassOptionsToPackage{largesc=true}{newtxtext}}% largesc is a boolean key in newtxtext
-%% ASME word separation is greater than newtxtext defaults so change these parameters.
-\PassOptionsToPackage{spacing=0.3em, stretch=0.18em, shrink=0.10em}{newtxtext}% increased shrink from 0.08, 2021/01/30
-
%% Disable newtxtext osf option, which is not appropriate for documents in this class
\DeclareOption{osf}{%
\PassOptionsToPackage{lining}{newtxtext}%
}
-%% Option to hyphenate the typewriter font [hyphenate]
-\DeclareOption{hyphenate}{%
- \PassOptionsToPackage{hyphenate}{inconsolata}%
- \LogNote{Allowing hyphenation of typewriter font}%
-}
-
\DeclareOption{hyphenate}{%
\ifpdftex
\PassOptionsToPackage{hyphenate}{inconsolata}% hyphenate is a key via xkeyval in inconsolata
- \LogNote{Allowing hyphenation of typewriter font}%
+ \ClassNoteNoLine{\ClassName}{Allowing hyphenation of typewriter font}%
\else
- \ClassWarningNoLine{asmejour}{The [hyphenate] option is only supported with pdftex. It will be ignored}%
+ \ClassWarningNoLine{\ClassName}{The [hyphenate] option is only supported with pdftex. It will be ignored}%
\fi
}
@@ -329,7 +309,7 @@
\ProcessOptions \relax
-%%%%%%%%%%%% Page size, bibliography, graphics, color, etc. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%% Page size, bibliography, graphics, color %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\RequirePackage[paperheight=285.7mm, paperwidth=215.900mm, left=21.100mm, right=21.100mm, top=15.9mm, bottom = 24mm, footskip=8mm]{geometry}
\setlength\columnsep{4.5mm}
@@ -342,22 +322,8 @@
\renewcommand*{\bibfont}{\footnotesize}
\RequirePackage{graphicx}
-\RequirePackage[dvipsnames,svgnames,x11names]{xcolor}% remove obsolete options, 2023/10/23
+\RequirePackage[dvipsnames,svgnames,x11names]{xcolor}% removed obsolete options, 2023/10/23
-% Allow pre 2021/11/15 formats to see the graphicx alt key without causing an error, in preparation for tagged pdf
-\IfFormatAtLeastTF{2021/11/15}{
- \relax
-}{
- \AtBeginDocument{
- \IfPackageLoadedTF{graphicx}{\define@key{Gin}{alt}{}}{\relax}
- }
-}
-
-% Nice solution from DPC to prevent aux file errors when switching from pdflatex to lualatex
-\ifx\directlua\undefined
- \AtBeginDocument{\immediate\write\@auxout{\detokenize{%
- \ifx\directlua\undefined\else\endinput\fi}}}
-\fi
%%%%%%%%%%%%% Table related %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -383,7 +349,9 @@
\ifpdftex
\RequirePackage[T1]{fontenc}
\RequirePackage[utf8]{inputenc}% for backward compatibility with pre-2018 LaTeX distributions
- \RequirePackage[helvratio=0.91]{newtxtext}% add this scaling 2022/06/26
+ %% ASME word separation is greater than newtxtext defaults so change these parameters.
+ %% increased shrink from 0.08, 2021/01/30; add this helvetica scaling 2022/06/26
+ \RequirePackage[helvratio=0.91, spacing=0.3em, stretch=0.18em, shrink=0.10em]{newtxtext}% default {0.25em,0.2em,0.1em}
\RequirePackage[varl,varqu]{inconsolata}% sans typewriter font; restored varl, varqu 2020/08/10
\RequirePackage[]{newtxmath}
\else % use lualatex with newtxmath and fontspec for text primary fonts. Revised 2023/10/21.
@@ -396,20 +364,20 @@
%
\RequirePackage[varqu,varl]{inconsolata} % typewriter font for math
\renewcommand\rmdefault{ntxtlf} % roman font for math
- \DeclareFontFamily{T1}{\sfdefault}{} % sf for math
+ \DeclareFontFamily{T1}{\sfdefault}{} % sf for math
\DeclareFontShape{T1}{\sfdefault}{m}{n}{<-> s*[0.94] ec-qhvr}{} %% see t1qhv.fd; 0.9-->0.94 2022/01/15
\RequirePackage[]{newtxmath} % newtxmath still handles mathematics
\RequirePackage[no-math]{fontspec}
\defaultfontfeatures{Ligatures=TeX,}
%
- \def\FontWarning{For luaLaTeX, you MUST have these OpenType fonts installed as system fonts on your computer: TeX Gyre Termes and TeX Gyre Heros (from \string http://www.gust.org.pl/projects/e-foundry/tex-gyre) and Inconsolatazi4 (\string https://ctan.org/tex-archive/fonts/inconsolata/opentype). If DON'T have these fonts, you will see ERROR messages!}
+ \def\FontWarning{For luaLaTeX, you MUST have these OpenType fonts installed as system fonts on your computer: TeX Gyre Termes and TeX Gyre Heros (from \string http://www.gust.org.pl/projects/e-foundry/tex-gyre) and Inconsolatazi4 (\string https://ctan.org/tex-archive/fonts/inconsolata/opentype). If you DON'T have these fonts, you will see ERROR messages!}
%
- \IfFontExistsTF{TeXGyreTermesX}{}{\ClassWarning{asmeconf}{\FontWarning} }
- \IfFontExistsTF{texgyreheros}{}{ \ClassWarning{asmeconf}{\FontWarning} }
- \IfFontExistsTF{Inconsolatazi4}{}{\ClassWarning{asmeconf}{\FontWarning} }
+ \IfFontExistsTF{TeX Gyre Termes}{}{\ClassWarningNoLine{\ClassName}{\FontWarning} }
+ \IfFontExistsTF{texgyreheros}{}{ \ClassWarningNoLine{\ClassName}{\FontWarning} }
+ \IfFontExistsTF{Inconsolatazi4}{}{\ClassWarningNoLine{\ClassName}{\FontWarning} }
%
- \setmainfont{TeXGyreTermesX}[% Presumes these are system fonts! Available at: http://www.gust.org.pl/projects/e-foundry/tex-gyre
- WordSpace = {1,1.4,1},%% This stretch matches newtxtext a little better. 1.4
+ \setmainfont{TeXGyreTermes}[% Presumes these are system fonts! Available at: http://www.gust.org.pl/projects/e-foundry/tex-gyre
+ WordSpace = {1.20,1.43,1.2},%% This stretch matches newtxtext a little better (reset 2024/07/23)
Extension = .otf,
UprightFont = *-Regular,
ItalicFont = *-Italic,
@@ -418,7 +386,8 @@
Numbers = Lining,
]
\setsansfont{texgyreheros}[% Presumes these are system fonts! Available at: http://www.gust.org.pl/projects/e-foundry/tex-gyre
- WordSpace = {1,1.4,1},
+ WordSpace = {1.20,1.43,1.2},%% This stretch matches newtxtext a little better (reset 2024/07/23)
+% WordSpace = {1,1.4,1},
Extension = .otf,
UprightFont = *-regular,
ItalicFont = *-italic,
@@ -443,7 +412,7 @@
\RequirePackage{bm}% load after all math for expanded access to bold math
-%% In addition to the word spacing options declared in line 235...
+%% In addition to the word spacing options declared in line 371...
%% Relative to size9.clo: leading reduced to 10 pt; displayskips made greater
\renewcommand\normalsize{%
\@setfontsize\normalsize\@ixpt{10\p@}% % <== was \@xipt
@@ -464,13 +433,12 @@
\newcommand*{\CondSans}{\fontencoding{T1}\fontfamily{qhvc}\selectfont}% remove extra \selectfont, 2023/10/21
\renewcommand\huge{\@setfontsize\huge{14}{14}} %... for author names only
\newcommand*{\CondSansBold}{\renewcommand\bfdefault{b}\fontencoding{T1}\fontfamily{qhvc}\selectfont\bfseries}
-\renewcommand\Huge{\@setfontsize\Huge{26.5}{26.5}} %... for title font only
+\renewcommand\Huge{\@setfontsize\Huge{26.5}{26.5}} %... for title only
\RequirePackage{metalogo,hologo}% Access to various LaTeX logos (for use in the documentation)
-%% This provides sans serif italic and sans serif bold italic math.
-%% It's intended for use in the figure and table captions.
-%% Fonts are from newtxsf package.
+%% This provides sans serif italic and sans serif bold italic math, against with fonts from newtxsf.
+%% For use in the figure and table captions.
\DeclareMathVersion{sansbold}
\SetSymbolFont{letters}{sansbold}{OML}{ntxsfmi}{b}{it}
\SetSymbolFont{lettersA}{sansbold}{U}{ntxsfmia}{b}{it}
@@ -480,8 +448,8 @@
\SetSymbolFont{operators}{sansbold}{\encodingdefault}{\sfdefault}{\bfdefault}{n}
\SetMathAlphabet{\mathsf}{sansbold}{\encodingdefault}{\sfdefault}{b}{n}% \mathsf is upright
-%% These lines are to provide math accents for the sans and sansbold math versions.
-%% The accents from ntxsfmi work normally with regular times fonts. Added 2021/01/27
+%% Provide math accents for the sans and sansbold math versions. Accents from ntxsfmi work normally
+%% with regular times fonts. 2021/01/27
\DeclareSymbolFont{lettersAB}{U}{ntxsfmia}{m}{it}
\SetSymbolFont{lettersAB}{normal}{U}{ntxsfmia}{m}{it}
\SetSymbolFont{lettersAB}{bold}{U}{ntxsfmia}{b}{it}
@@ -556,8 +524,7 @@
\DeclareMathSymbol{\sfhslash}{\mathalpha}{lettersAB}{52}% this is not upright
\DeclareMathSymbol{\sfhbar}{\mathalpha}{lettersAB}{53}% this is not upright
-%%% sans math version, potential value with PGFPlots, and provisionally called in subfigure captions.
-%%% this is experimental, still needs stress testing. 2021/01/30
+%%% sans math version, potential value with PGFPlots, called in subfigure captions. 2021/01/30
\DeclareMathVersion{sans}
\SetSymbolFont{letters}{sans}{OML}{ntxsfmi}{m}{it}
\SetSymbolFont{lettersA}{sans}{U}{ntxsfmia}{m}{it}
@@ -569,7 +536,7 @@
\SetMathAlphabet{\mathsf}{sans}{\encodingdefault}{\sfdefault}{m}{n}
-%%%%%%%%%%%%%%%%% Some adjustments to math layout %%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%% Some adjustments to math layout %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\setlength{\jot}{10pt}% <== default is 3pt
@@ -580,7 +547,7 @@
\allowdisplaybreaks % ASME allows these breaks
-%%%%%%%%%%%%%%%%% Equation and Line Numbering %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%% Equation and Line Numbering %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\RequirePackage{etoolbox}% patching amsmath
@@ -598,37 +565,36 @@
\ifasmejour@lineno
\RequirePackage[switch,mathlines]{lineno}%
- \renewcommand{\linenumberfont}{\normalfont\footnotesize\color{red}}%
+ \renewcommand{\linenumberfont}{\normalfont\scriptsize\color{red}}%
\AtBeginDocument{\linenumbers}%
\ifasmejour@balance
- \ClassWarningNoLine{asmejour}{Package lineno loaded, so final column balancing will be disabled}%
+ \ClassWarningNoLine{\ClassName}{Package lineno loaded, so final column balancing will be disabled}%
\fi
%%% Patch to allow line numbering in AMS math environments.
%%% This patch is for lineno versions earlier than v5.2 [2023/05/19]. As of mid-2023, the lineno package
%%% has been corrected to account for the AMS math environments. Retaining temporarily for backward compatibility.
%%% postdisplaypenalty adjusted to avoid extra line number at end, see: https://tex.stackexchange.com/a/461192/
- %%% multline has some additional problem that puts an extra line number above it.
\IfPackageAtLeastTF{lineno}{2023/05/19}{\relax}{
- \NewDocumentCommand{\ac@losepostpenalty}{}{\patchcmd{\linenomathWithnumbers}{\advance\postdisplaypenalty\linenopenalty}{}{}{}}
+ \NewDocumentCommand{\aj@losepostpenalty}{}{\patchcmd{\linenomathWithnumbers}{\advance\postdisplaypenalty\linenopenalty}{}{}{}}
%
- \NewDocumentCommand{\ac@FixAMSMath}{m}{%
- \AtBeginEnvironment{#1}{\ac@losepostpenalty\linenomath}%
+ \NewDocumentCommand{\aj@FixAMSMath}{m}{%
+ \AtBeginEnvironment{#1}{\aj@losepostpenalty\linenomath}%
\AtEndEnvironment{#1}{\endlinenomath}%
- \AtBeginEnvironment{#1*}{\ac@losepostpenalty\linenomath}%
+ \AtBeginEnvironment{#1*}{\aj@losepostpenalty\linenomath}%
\AtEndEnvironment{#1*}{\endlinenomath}%
}
%
- \NewDocumentCommand{\ac@FixAll}{>{\SplitList{;}}m}{\ProcessList{#1}{\ac@FixAMSMath}}
+ \NewDocumentCommand{\aj@FixAll}{>{\SplitList{;}}m}{\ProcessList{#1}{\aj@FixAMSMath}}
%
- \ac@FixAll{align;alignat;gather;flalign;multline}
+ \aj@FixAll{align;alignat;gather;flalign;multline}
}
%
\else
\ProvideDocumentEnvironment{linenomath}{}{}{}%
- \ifasmejour@balance % balancing through flushend can produce weird errors
- \RequirePackage{flushend}% flushend package is NOT compatible with lineno
+ \ifasmejour@balance % balancing through flushend can produce weird errors.
+ \RequirePackage{flushend}% flushend package is NOT compatible with lineno.
\AtEndDocument{\flushcolsend}%
- \LogNote{Calling flushend package to balance column height on last page}%
+ \ClassNoteNoLine{\ClassName}{Calling flushend package to balance column height on last page}%
\fi%
\fi
@@ -638,9 +604,9 @@
%% ASME page proofs seem to align the number at top of the line, rather than bottom as done here.
-%%%%%%%%%%%%%%%%% Footer Set Up %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%% Footer Set Up %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%%%%%%%%%%%%%%% footer text names %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%% footer text names %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcommand{\JourName}[1]{\gdef\@JourName{#1}}
\providecommand\@JourName{\hbox{ }}
@@ -650,8 +616,8 @@
}
\providecommand\@PaperYear{\the\year}
-\def\@PreprintStringL{PREPRINT FOR REVIEW}
-\def\@PreprintStringR{PREPRINT FOR REVIEW}
+\def\@PreprintStringL{PREPRINT}% updated 2024/07/24
+\def\@PreprintStringR{PREPRINT}
\NewDocumentCommand{\PreprintString}{m o}{%
\IfNoValueTF{#2}{%
@@ -668,32 +634,53 @@
%%%%%% Fancyhdr %%%%%%%%%%%%%%%%%%%%%%%%%
-\RequirePackage{fancyhdr}
+\RequirePackage{fancyhdr}% options revised 2024/07/23
\pagestyle{fancy}
\fancyhf{}% clear all header and footer fields
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
-\fancyfoot[RE]{\large\bfseries\sffamily Transactions of the ASME}
-\fancyfoot[LO]{\large\bfseries\sffamily Journal of \@JourName}
-\fancyfoot[RO]{\large\sffamily \@PreprintStringR\space\space\bfseries/\space\space\@PaperNumber\thepage}
-\fancyfoot[LE]{\large\sffamily {\bfseries \@PaperNumber\thepage\space\space/}\space\space\@PreprintStringL\ }
+\ifasmejour@nofoot
+ \fancyfoot[CE,CO]{\thepage}
+\else
+ \fancyfoot[RE]{\large\bfseries\sffamily Transactions of the ASME}
+ \fancyfoot[LO]{\large\bfseries\sffamily Journal of \@JourName}
+ \fancyfoot[RO]{\large\sffamily \@PreprintStringR\space\space\bfseries/\space\space\@PaperNumber\thepage}
+ \fancyfoot[LE]{\large\sffamily {\bfseries \@PaperNumber\thepage\space\space/}\space\space\@PreprintStringL\ }
+\fi
-\fancypagestyle{title}{%
+\fancypagestyle{title}{% is an odd page
\fancyhf{}% clear all header and footer fields
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
- \fancyfoot[RO]{\large\sffamily \@PreprintStringR\space\space\bfseries/\space\space\@PaperNumber\thepage}
- \fancyfoot[LO]{\large\bfseries\sffamily Journal of \@JourName}
- \fancyfoot[CO]{\large\bfseries\sffamily Copyright \textcopyright\ \@PaperYear\ by ASME}
+ \ifasmejour@nofoot
+ \fancyfoot[CO]{\thepage}
+ \else
+ \fancyfoot[RO]{\large\sffamily \@PreprintStringR\space\space\bfseries/\space\space\@PaperNumber\thepage}
+ \fancyfoot[LO]{\large\bfseries\sffamily Journal of \@JourName}
+ \ifasmejour@nocopyright
+ \fancyfoot[CO]{}
+ \else
+ \fancyfoot[CO]{\large\bfseries\sffamily Copyright \textcopyright\ \@PaperYear\ by ASME}
+ \fi
+ \fi
}
+
%%%%%% Footnotes %%%%%%%%%%%%%%%%%%%%%%%%%%%
\RequirePackage{fnpos}
\makeFNbottom
\makeFNbelow
+\RequirePackage{footmisc}%
+\IfPackageAtLeastTF{footmisc}{2022/02/05}{
+ \PassOptionsToPackage{belowfloats}{footmisc}%
+ }{ \RequirePackage{fnpos}
+ \makeFNbottom
+ \makeFNbelow
+ }%
+\setlength\footnotemargin{4mm}% reduce indentation of footnotes, from footmisc
\setlength{\skip\footins}{12pt plus 2pt minus 1pt}
\renewcommand{\footnoterule}{%
@@ -702,10 +689,6 @@
\kern 2pt
}
-%% reduce indentation of footnotes
-\renewcommand\@makefntext[1]{%
- \noindent\makebox[4mm][r]{\@makefnmark}\hyphenpenalty=300\exhyphenpenalty=300 #1}% <== suppress hyphenation
-
%% Produces an unmarked footnote about the revision date.
%% This command is invoked by \date as part of \MakeTitlePage below.
%% Text can be anything given as the argument to \date{..}.
@@ -717,13 +700,13 @@
%% include a comma for sequential footnotes
\ExplSyntaxOn
- \cs_new:Npn \__asmejour_NoteComma:n { \peek_meaning:NT \footnote { \textsu{\mdseries,} } }
+ \cs_new:Npn \__asmejour_NoteComma:n { \peek_meaning:NT \footnote { \textsuperscript{\mdseries,} } }
\cs_new_eq:NN \__savefootnote \footnote
\cs_gset_protected:Npn \footnote #1 { \__savefootnote{#1}\__asmejour_NoteComma:n }
\ExplSyntaxOff
-%%%%%%%%% Caption Related %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%% Caption Related %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\addto{\captionsenglish}{%
\renewcommand{\figurename}{Fig.}
@@ -739,7 +722,7 @@
\captionsetup[figure]{labelfont={sf,bf},textfont={sf,bf},textformat=boldmath,labelsep=quad}
\captionsetup[table]{labelfont={sf,bf},textfont={sf,bf},textformat=boldmath,labelsep=quad,skip=0.5\baselineskip}
-%% 30 January 2021. ASME only labels subfigures with a sans serif, italic (a), (b),... no caption text, no bold face.
+%% 2021/01/30: ASME only labels subfigures with a sans serif, italic (a), (b),... no caption text, no bold face.
\captionsetup[subfigure]{labelfont={sf},textfont={sf},textformat=sansmath,labelformat=simple}% default: =parens
\renewcommand\thesubfigure{(\textit{\alph{subfigure}})}
@@ -747,7 +730,7 @@
\renewcommand\thesubtable{(\textit{\alph{subtable}})}
-%%%%%%%%%%%% Section Headings %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%% Section Headings %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\RequirePackage[raggedright,indentafter]{titlesec}
@@ -760,28 +743,28 @@
\titlespacing{\subsubsection}{\parindent}{12pt plus 3pt minus 2pt}{0.5em}
%% ASME style does not seem to go lower than third level heading, so ...
-%% ....putting \paragraph into \subsubsection settings.
+%% ...put \paragraph into \subsubsection settings.
\titleformat{\paragraph}[runin]{\itshape}{\thesubsubsection}{0.5em}{}[.]
\titlespacing{\paragraph}{\parindent}{14pt plus 3pt minus 2pt}{0.5em}
%% Special handling of the appendices
%% Assumes that appendices are the last technical content in paper
-\providecommand{\appendicesname}{Appendices}
-
-\RenewDocumentCommand{\appendix}{}{%
- \pdfbookmark[1]{\appendicesname}{appendices}
- \setcounter{section}{0}
- \renewcommand\thesection{\Alph{section}}
- \setcounter{equation}{0}
- \renewcommand\theequation{\Alph{section}\arabic{equation}}
- \titleformat{\section}[block]{\mathversion{bold}\bfseries\large\raggedright}{\appendixname\ \thesection:}{0.5em}{}[\setcounter{equation}{0}]
-}
+\providecommand*{\appendicesname}{Appendices}
+\newcounter{appeqn}%% Code revised to better support tagged pdf, 2024/07/24
+\patchcmd{\appendix}{%
+ \setcounter{subsection}{0}}{%
+ \setcounter{subsection}{0}%
+ \pdfbookmark[1]{\appendicesname}{appendices}%
+ \@addtoreset{equation}{appeqn}\stepcounter{appeqn}%
+ \gdef\theequation{\@Alph\c@section\@arabic\c@equation}%
+}{}{}
+\apptocmd{\appendix}{\titleformat{\section}[block]{\mathversion{bold}\bfseries\large\raggedright}{\appendixname\ \thesection:}{0.5em}{}}
%% natbib's \bibsection controls section heading for References.
-%%%%%%%%%%%%%%%%% List environments %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%% List environments %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\RequirePackage{enumitem}
@@ -789,24 +772,20 @@
%% I have no examples of sublists...
-%%%%%%%%%%%%%%%%% Hyperref %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%% Hyperref %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% new pdf management in LaTeX, with \DocumentMetaData{..}, is preferred to this approach.
\ifpdftex
- %%% to assist with unicode glyph mapping, following M. Sharpe's recommendation in the newtx documentation.
- \IfFormatAtLeastTF{2020/10/01}{\relax}{%
- \pdfgentounicode=1 %% enable CMaps; has moved into the latex kernel Oct 2020
- \input glyphtounicode.tex %% lists of mappings; has moved into the latex kernel Oct 2020
- }
+ %%% to assist with unicode glyph mapping in pdf/a, per M. Sharpe's recommendation in newtx documentation
\InputIfFileExists{glyphtounicode-cmr.tex}{}{} %% additional mappings
\InputIfFileExists{glyphtounicode-ntx.tex}{}{} %% additional mappings
+ %% new pdf management in LaTeX, with \DocumentMetaData{..}, is preferred to this approach.
\ifaj@setpdfa
- %%%% the pdfmanagement options are experimental, from Ulrike Fischer 2021/06/12
- \if@asme@pdfmanagement
- \ClassInfo{asmejour}{pdfmanagement is defined. Class file will not load a color profile}
+ %%%% the pdfmanagement options from Ulrike Fischer 2021/06/12
+ \ifasme@pdfmanagement
+ \ClassInfo{\ClassName}{pdfmanagement is defined. Class file will not load a color profile}
\else
- \ClassInfo{asmejour}{pdfmanagement not defined. Class file will load a color profile}%
+ \ClassInfo{\ClassName}{pdfmanagement not defined. Class file will load a color profile}%
%%% a fairly generic RGB color profile, aimed at on-screen rendering (not print production)
\immediate\pdfobj stream attr{/N 3} file{sRGB.icc}
\pdfcatalog{%
@@ -826,41 +805,41 @@
%%%
-\RequirePackage[psdextra]{hyperref} % recent kernel transition suggests providing most hyperref options via \hypersetup,
- % but setting psdextra here (for additional math support in bookmarks) 2021/12/23
+\RequirePackage[psdextra]{hyperref} % provide most hyperref options via \hypersetup, but per documentation
+ % set [psdextra] here (for additional math support in bookmarks) 2021/12/23
\hypersetup{%
- pdfborder={0 0 0},%
- bookmarksnumbered=true,%
- bookmarksopen=true,%
- bookmarksopenlevel=1,%
- colorlinks=true,%
- linkcolor=blue, %
- citecolor=blue, %
- urlcolor=blue, %
- filecolor=red, % added 2021/12/23, to make certain broken links more apparent
- pdfnewwindow=true,%
- pdfpagelayout=SinglePage, %TwoPageRight,% changed 2020/08/12
- pdfdisplaydoctitle=true%
+ pdfborder={0 0 0},
+ bookmarksnumbered=true,
+ bookmarksopen=true,
+ bookmarksopenlevel=1,
+ colorlinks=true,
+ linkcolor=blue,
+ citecolor=blue,
+ urlcolor=blue,
+ filecolor=red, % added 2021/12/23, to make certain broken links more apparent
+ pdfnewwindow=true,
+ pdfpagelayout=SinglePage, % was TwoPageRight, changed 2020/08/12
+ pdfdisplaydoctitle=true,
}
\urlstyle{same} % don't switch to typewriter font
\RequirePackage{doi} % supports nasty characters in some doi's
\renewcommand{\doitext}{doi:~} % change the default, {doi:}, to this for ASME specification
-\RequirePackage{bookmark} % improves handling of pdf bookmarks
\providecommand*{\toclevel@subfigure}{1}% <== to address unknown bookmark level of subfigure. 2021/12/24
\providecommand\hrefurl[2]{\href{#1}{#2}}% to address certain issues around URL recognition with new pdf management code, 2021/12/22
%% This alias is also incorporated into asmejour.bst
-\if@asme@pdfmanagement
- \ClassInfo{asmejour}{pdfmanagement is defined. Class file will not load hyperxmp}
+\ifasme@pdfmanagement
+ \ClassInfo{\ClassName}{pdfmanagement is defined. Class file will not load hyperxmp}
\else
+ \RequirePackage{bookmark} %% improves handling of pdf bookmarks
\RequirePackage{hyperxmp} %% to fix transfer of metadata to Acrobat pdf
% Patch bug in hyperxmp, unless a more recent version is used.
\@ifpackagelater{hyperxmp}{2022/10/15}{% v5.11 or later
\relax
- % \ClassInfo{asmeconf}{hyperxmp v5.11 or later is in use}
+ % \ClassInfo{\ClassName}{hyperxmp v5.11 or later is in use}
}{%
\ifx\undefined\hyxmp@no@bad@parts\relax\else
\newcount\hypxmp@tempcnt
@@ -872,10 +851,11 @@
}
\fi
-%%%%%% Adjustments to accommodate hyperref bookmarks %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%% Adjustments to accommodate hyperref bookmarks %%%%%%%%%%%%%%%%%%%%%%
-%%% ==> recent and evolving development of \pdfstring removes all robust commands from bookmarks, so
-%%% the following interventions may become unnecessary over time (2021/12/23).
+%%% Recent development of \pdfstring has removed all robust commands from bookmarks (2021/12/23).
+%%% By mid-2024, no errors are thrown except for \bm; however, these commands serve to still suppress warnings.
+%%% Math shift by $..$ still creates a warning, but I am leaving that in place. To avoid, use \( .. \) instead.
%% Since \bm is useful in headings, this fix will reduce frequency with which
%% alternate pdfstrings must be given in section command as \section[pdfstring]{texstring}
@@ -896,7 +876,7 @@
%% Ensure that tag color does not follow \eqref into bookmarks, 2020/02/28
\pdfstringdefDisableCommands{%
- \def\eqref#1{(\ref{#1})}%
+ \def\eqref#1{(\ref*{#1})}%
}
%% Let's make sure footnotes in section headings don't break pdf bookmarks.
@@ -906,13 +886,13 @@
}
-%%%%%%%%%%%%% Define some section and other names for special environments %%%%%%%
+%%%%%%%%%%%%% Define some section and other names for special environments %%%%%%%%%%%%%%%%%%%%%%%%
\providecommand{\nomname}{Nomenclature}
\providecommand{\keywordname}{Keywords}
\providecommand{\CAwords}{Corresponding Author.}
-%%%%%%%%%%%%% Nomenclature Environment %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%% Nomenclature Environment %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Nomenclature environment in ASME Journal Style.
%% Run twice to get proper label width.
@@ -926,7 +906,7 @@
\NewDocumentCommand{\entry}{m m}{%
\ifblank{#2}{%
- \ClassError{asmejour}{The command \protect\entry should have two arguments. For subheadings, use \protect\EntryHeading}{It appears that you gave only one argument for \protect\entry. You need to include a second argument.}
+ \ClassError{\ClassName}{The command \protect\entry should have two arguments. For subheadings, use \protect\EntryHeading}{It appears that you gave only one argument for \protect\entry. You need to include a second argument.}
}{%
\item[\hfill#1${} = {}$]#2%
\@itempenalty=-\@lowpenalty%
@@ -938,7 +918,7 @@
%% A separate command command for nomenclature subheadings
\NewDocumentCommand\EntryHeading{m}{%
- \itemsep12\p@ plus 4\p@ minus 4\p@% \bigskip
+ \itemsep12\p@ plus 4\p@ minus 4\p@
\goodbreak\item[\bfseries#1\hfill]\mbox{}\itemsep3\p@ plus 1\p@ minus 1\p@\@itempenalty=1000% add \mbox for tagged pdf, 2023/10/20
}
@@ -966,28 +946,25 @@
}%
}{%
\setcounter{savedlength}{\widest}%
- \end{list}%
+ \end{list}\ignorespacesafterend
}
-%%%%%%%%%%%%%%%% List of figures and list of tables %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%% List of figures and list of tables %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% ASME requires these lists for production.
\ifasmejour@nolists
- \LogNote{Omitting lists of figures and tables}%
+ \ClassNoteNoLine{\ClassName}{Omitting lists of figures and tables}%
\else
\AtEndDocument{%
- \clearpage
\twocolumn[%
- \begin{@twocolumnfalse}
\listoffigures
\listoftables
- \end{@twocolumnfalse}
]%
}%
\fi
-%%%%%%%%%%%%%%%% Author/Title/Abstract block %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%% Author/Title/Abstract block %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\RequirePackage{xcoffins}
@@ -1028,12 +1005,12 @@
\fi
}
-
\NewDocumentCommand\SetTitle{m}{%
\SetVerticalCoffin{\Title}{114mm}{%
\vspace*{0.5mm}% <== ASME doesn't align bar and text
\noindent\Huge\CondSansBold\raggedright%
#1%
+ %\gdef\@title{#1}% for tagging, etc. 2024/07/24. pdf metadata will probably override.
\par
}
}
@@ -1086,7 +1063,7 @@
\addtocounter{footnote}{-1}% in case of more than one CA
}
-%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newlength{\@AbstractSep}%% <== separation of author/abstract coffin from main two-column text.
\setlength{\@AbstractSep}{12.5mm}
@@ -1094,12 +1071,15 @@
\NewDocumentCommand{\MakeTitlePage}{}{%
\thispagestyle{title}%
- \twocolumn[
- \begin{@twocolumnfalse}
+ \ifasmejour@singlecolumn % 2024/07/20
\@ConstructAuthorBlock
\vspace*{\@AbstractSep}
- \end{@twocolumnfalse}
- ]
+ \else
+ \twocolumn[
+ \@ConstructAuthorBlock
+ \vspace*{\@AbstractSep}
+ ]
+ \fi
\ifaj@CA
\addtocounter{footnote}{1}
\footnotetext{\CAwords}
@@ -1113,7 +1093,7 @@
\fi
}
-%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Provide compatibility with titling commands from standard LaTeX article class
@@ -1143,7 +1123,7 @@
\RenewDocumentCommand{\thanks}{m}{\relax}%% disabling this standard command, as it is inconsistent with this format
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\endinput
%%
diff --git a/Master/texmf-dist/tex/latex/baskervald/baskervald.sty b/Master/texmf-dist/tex/latex/baskervald/baskervald.sty
deleted file mode 100644
index d104cca143e..00000000000
--- a/Master/texmf-dist/tex/latex/baskervald/baskervald.sty
+++ /dev/null
@@ -1,24 +0,0 @@
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{baskervald}[2010/07/13 v1.0 baskervald]
-\RequirePackage{xkeyval}
-\RequirePackage[T1]{fontenc}
-\RequirePackage{textcomp}
-\RequirePackage{nfssext-cfr}
-%:boolkey for alternative encoding as default
-\define@boolkey{baskervald.sty}[baskervald@]{lig}[true]{%
- \relax}
-%:defaults to ensure everything is defined to something
-\ExecuteOptionsX{lig=false}
-%:options override defaults
-\ProcessOptionsX
-%:make BaskervaldADF default roman font, implementing option for alternative encoding as applicable
-\ifbaskervald@lig
- \renewcommand{\rmdefault}{ybvw}%
-\else
- \renewcommand{\rmdefault}{ybv}%
-\fi
-\renewcommand{\rmdefault}{ybv}
-\DeclareTextSymbol{\zeroslash}{TS1}{225}
-\DeclareTextSymbolDefault{\zeroslash}{TS1}
-\endinput
-%% end baskervald.sty
diff --git a/Master/texmf-dist/tex/latex/baskervaldadf/baskervald.sty b/Master/texmf-dist/tex/latex/baskervaldadf/baskervald.sty
new file mode 100644
index 00000000000..4bfcc4b5269
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/baskervaldadf/baskervald.sty
@@ -0,0 +1,70 @@
+%%
+%% This is file `baskervald.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% baskervaldadf.dtx (with options: `sty')
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% baskervaldadf. You may however distribute the package baskervaldadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\NeedsTeXFormat{LaTeX2e}
+\RequirePackage{svn-prov}
+\ProvidesPackageSVN[baskervald.sty]{$Id: baskervaldadf.dtx 10395 2024-09-26 23:52:22Z cfrees $}[v1.1 \revinfo]
+\DefineFileInfoSVN[baskervald]
+\RequirePackage[T1]{fontenc}
+\RequirePackage{nfssext-cfr}[2024/01/01]
+\IfFormatAtLeastTF {2020-02-02}{%
+ \DeclareEncodingSubset{TS1}{ybv}{1}%
+ \DeclareEncodingSubset{TS1}{ybvw}{1}%
+}{%
+ \RequirePackage{textcomp}}
+\ExplSyntaxOn
+\keys_define:nn { baskervald }
+{
+ lig .bool_set:N = \g__baskervald_lig_bool,
+ lig .default:n = true,
+ lig .initial:n = false,
+ scale .tl_set:N = \ybv@scale,
+ scale .initial:V = \@empty,
+}
+\ProcessKeyOptions[baskervald]
+\tl_new:N \g__baskervald_rm_tl
+\tl_gset:Nn \g__baskervald_rm_tl {ybv}
+\bool_if:NT \g__baskervald_lig_bool
+{
+ \tl_gput_right:Nn \g__baskervald_rm_tl {w}
+}
+\renewcommand{\rmdefault}{\g__baskervald_rm_tl}
+\ExplSyntaxOff
+\DeclareTextSymbol{\zeroslash}{TS1}{225}
+\DeclareTextSymbolDefault{\zeroslash}{TS1}
+\AddToHook {begindocument}[.]
+{%
+ \@ifpackageloaded{hyperref}{%
+ \DeclareTextCommand{\zeroslash}{PU}{0}% U+0030
+ \DeclareTextCommand{\zeroslash}{PD1}{0}% U+0030
+ }{}%
+}
+%% end baskervald.sty
+\endinput
+%%
+%% End of file `baskervald.sty'.
diff --git a/Master/texmf-dist/tex/latex/baskervald/t1ybv.fd b/Master/texmf-dist/tex/latex/baskervaldadf/t1ybv.fd
index 91383bc0cd7..d9fcf7222ea 100644
--- a/Master/texmf-dist/tex/latex/baskervald/t1ybv.fd
+++ b/Master/texmf-dist/tex/latex/baskervaldadf/t1ybv.fd
@@ -5,32 +5,39 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1ybv.fd}
- [2010/07/13 Fontinst v1.933 font definitions for T1/ybv.]
+ [2024/07/24 Fontinst v1.933 font definitions for T1/ybv.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname ybv@scale\endcsname\relax
+ \let\ybv@@scale\@empty
+\else
+ \edef\ybv@@scale{s*[\csname ybv@scale\endcsname]}%
+\fi
\DeclareFontFamily{T1}{ybv}{}
\DeclareFontShape{T1}{ybv}{m}{n}{
- <-> ybvr8t
+ <-> \ybv@@scale ybvr8t
}{}
\DeclareFontShape{T1}{ybv}{m}{it}{
- <-> ybvri8t
+ <-> \ybv@@scale ybvri8t
}{}
\DeclareFontShape{T1}{ybv}{b}{n}{
- <-> ybvb8t
+ <-> \ybv@@scale ybvb8t
}{}
\DeclareFontShape{T1}{ybv}{b}{it}{
- <-> ybvbi8t
+ <-> \ybv@@scale ybvbi8t
}{}
\DeclareFontShape{T1}{ybv}{eb}{n}{
- <-> ybvh8t
+ <-> \ybv@@scale ybvh8t
}{}
\DeclareFontShape{T1}{ybv}{eb}{sl}{
- <-> ybvho8t
+ <-> \ybv@@scale ybvho8t
}{}
\DeclareFontShape{T1}{ybv}{m}{sc}{<->ssub * ybv/m/n}{}
diff --git a/Master/texmf-dist/tex/latex/baskervald/t1ybvw.fd b/Master/texmf-dist/tex/latex/baskervaldadf/t1ybvw.fd
index 09de2c0c99b..6b3e6467e02 100644
--- a/Master/texmf-dist/tex/latex/baskervald/t1ybvw.fd
+++ b/Master/texmf-dist/tex/latex/baskervaldadf/t1ybvw.fd
@@ -5,32 +5,39 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1ybvw.fd}
- [2010/07/13 Fontinst v1.933 font definitions for T1/ybvw.]
+ [2024/07/24 Fontinst v1.933 font definitions for T1/ybvw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname ybv@scale\endcsname\relax
+ \let\ybv@@scale\@empty
+\else
+ \edef\ybv@@scale{s*[\csname ybv@scale\endcsname]}%
+\fi
\DeclareFontFamily{T1}{ybvw}{}
\DeclareFontShape{T1}{ybvw}{m}{n}{
- <-> ybvrw8t
+ <-> \ybv@@scale ybvrw8t
}{}
\DeclareFontShape{T1}{ybvw}{m}{it}{
- <-> ybvriw8t
+ <-> \ybv@@scale ybvriw8t
}{}
\DeclareFontShape{T1}{ybvw}{b}{n}{
- <-> ybvbw8t
+ <-> \ybv@@scale ybvbw8t
}{}
\DeclareFontShape{T1}{ybvw}{b}{it}{
- <-> ybvbiw8t
+ <-> \ybv@@scale ybvbiw8t
}{}
\DeclareFontShape{T1}{ybvw}{eb}{n}{
- <-> ybvhw8t
+ <-> \ybv@@scale ybvhw8t
}{}
\DeclareFontShape{T1}{ybvw}{eb}{sl}{
- <-> ybvhow8t
+ <-> \ybv@@scale ybvhow8t
}{}
\DeclareFontShape{T1}{ybvw}{m}{sc}{<->ssub * ybvw/m/n}{}
diff --git a/Master/texmf-dist/tex/latex/baskervald/ts1ybv.fd b/Master/texmf-dist/tex/latex/baskervaldadf/ts1ybv.fd
index d3a17cb96c9..e986d57f671 100644
--- a/Master/texmf-dist/tex/latex/baskervald/ts1ybv.fd
+++ b/Master/texmf-dist/tex/latex/baskervaldadf/ts1ybv.fd
@@ -5,32 +5,39 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1ybv.fd}
- [2010/07/13 Fontinst v1.933 font definitions for TS1/ybv.]
+ [2024/07/24 Fontinst v1.933 font definitions for TS1/ybv.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname ybv@scale\endcsname\relax
+ \let\ybv@@scale\@empty
+\else
+ \edef\ybv@@scale{s*[\csname ybv@scale\endcsname]}%
+\fi
\DeclareFontFamily{TS1}{ybv}{}
\DeclareFontShape{TS1}{ybv}{m}{n}{
- <-> ybvr8c
+ <-> \ybv@@scale ybvr8c
}{}
\DeclareFontShape{TS1}{ybv}{m}{it}{
- <-> ybvri8c
+ <-> \ybv@@scale ybvri8c
}{}
\DeclareFontShape{TS1}{ybv}{b}{n}{
- <-> ybvb8c
+ <-> \ybv@@scale ybvb8c
}{}
\DeclareFontShape{TS1}{ybv}{b}{it}{
- <-> ybvbi8c
+ <-> \ybv@@scale ybvbi8c
}{}
\DeclareFontShape{TS1}{ybv}{eb}{n}{
- <-> ybvh8c
+ <-> \ybv@@scale ybvh8c
}{}
\DeclareFontShape{TS1}{ybv}{eb}{sl}{
- <-> ybvho8c
+ <-> \ybv@@scale ybvho8c
}{}
\DeclareFontShape{TS1}{ybv}{m}{sc}{<->ssub * ybv/m/n}{}
diff --git a/Master/texmf-dist/tex/latex/baskervald/ts1ybvw.fd b/Master/texmf-dist/tex/latex/baskervaldadf/ts1ybvw.fd
index 23205ea9789..b4bed39a528 100644
--- a/Master/texmf-dist/tex/latex/baskervald/ts1ybvw.fd
+++ b/Master/texmf-dist/tex/latex/baskervaldadf/ts1ybvw.fd
@@ -5,32 +5,39 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1ybvw.fd}
- [2010/07/13 Fontinst v1.933 font definitions for TS1/ybvw.]
+ [2024/07/24 Fontinst v1.933 font definitions for TS1/ybvw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname ybv@scale\endcsname\relax
+ \let\ybv@@scale\@empty
+\else
+ \edef\ybv@@scale{s*[\csname ybv@scale\endcsname]}%
+\fi
\DeclareFontFamily{TS1}{ybvw}{}
\DeclareFontShape{TS1}{ybvw}{m}{n}{
- <-> ybvr8c
+ <-> \ybv@@scale ybvr8c
}{}
\DeclareFontShape{TS1}{ybvw}{m}{it}{
- <-> ybvri8c
+ <-> \ybv@@scale ybvri8c
}{}
\DeclareFontShape{TS1}{ybvw}{b}{n}{
- <-> ybvb8c
+ <-> \ybv@@scale ybvb8c
}{}
\DeclareFontShape{TS1}{ybvw}{b}{it}{
- <-> ybvbi8c
+ <-> \ybv@@scale ybvbi8c
}{}
\DeclareFontShape{TS1}{ybvw}{eb}{n}{
- <-> ybvh8c
+ <-> \ybv@@scale ybvh8c
}{}
\DeclareFontShape{TS1}{ybvw}{eb}{sl}{
- <-> ybvho8c
+ <-> \ybv@@scale ybvho8c
}{}
\DeclareFontShape{TS1}{ybvw}{m}{sc}{<->ssub * ybvw/m/n}{}
diff --git a/Master/texmf-dist/tex/latex/beamertheme-gotham/beamercolorthemegotham.sty b/Master/texmf-dist/tex/latex/beamertheme-gotham/beamercolorthemegotham.sty
new file mode 100644
index 00000000000..db9e5c713dc
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/beamertheme-gotham/beamercolorthemegotham.sty
@@ -0,0 +1,328 @@
+%%
+%% This is file `beamercolorthemegotham.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% gotham.dtx (with options: `color')
+%%
+%% Copyright (C) 2023-20** by Romain NOËL <romainoel@free.fr>
+%%
+%% 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 Romain NOËL.
+%% Contributors: Romain NOËL (2023-20**)
+%%
+\ProvidesExplPackage{beamercolorthemegotham}{2024/09/20}{1.1.0.b}{Gotham color theme}
+\RequirePackage{expl3}
+\RequirePackage{xparse}
+\RequirePackage{xcolor}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%% COLOR %%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\definecolor[named]{gLightOrange}{HTML}{EB811B}
+\definecolor[named]{gLightGreen}{HTML}{14B03D}
+\definecolor[named]{gDeepBlue}{RGB}{42, 42, 255}
+\definecolor[named]{gDeepYellOr}{RGB}{255, 204, 0}
+\definecolor[named]{gAnthracite}{HTML}{2d3e50}
+\definecolor[named]{gLightTeal}{RGB}{172, 195, 210}
+\definecolor[named]{gPaleYell}{RGB}{255, 255, 240}
+\definecolor[named]{gDarkBlack}{gray}{0.1}
+\definecolor[named]{gDarkGrey}{gray}{0.25}
+\definecolor[named]{gMidGrey}{gray}{0.5}
+\definecolor[named]{gLightGrey}{gray}{0.9}
+
+%%%%%%
+\@ifundefined{\string\color@colorAreversed}{
+\colorlet{colorPale}{gPaleYell} % BG in light/normal mode
+\colorlet{colorDark}{gDarkBlack} % FG in light/normal mode
+\colorlet{colorA}{gAnthracite} % frametitle, standin.out,
+\colorlet{colorAreversed}{gLightTeal} % frametitle, standin.in,
+\colorlet{colorB}{gMidGrey} % gray BG : progress bar, blocks
+\colorlet{colorC}{gDeepYellOr} % progress bar
+\colorlet{colorD}{gLightOrange} % alert
+\colorlet{colorE}{gLightGreen} % example
+}{
+}
+
+\cs_new_protected:Nn \__gotham_color_set_style_anthracite:{
+\colorlet{colorPale}{gPaleYell} % BG in light/normal mode
+\colorlet{colorDark}{gDarkBlack} % FG in light/normal mode
+\colorlet{colorA}{gAnthracite} % frametitle, standin.out,
+\colorlet{colorAreversed}{gLightTeal} % frametitle, standin.in,
+\colorlet{colorB}{gMidGrey} % gray BG : progress bar, blocks
+\colorlet{colorC}{gDeepYellOr} % progress bar
+\colorlet{colorD}{gLightOrange} % alert
+\colorlet{colorE}{gLightGreen} % example
+}
+
+\cs_new_protected:Nn \__gotham_color_set_style_red:{
+\colorlet{colorPale}{gPaleYell} % BG in light/normal mode
+\colorlet{colorDark}{gDarkBlack} % FG in light/normal mode
+\colorlet{colorA}{red} % frametitle, standin.out,
+\colorlet{colorAreversed}{gLightTeal} % frametitle, standin.in,
+\colorlet{colorB}{gMidGrey} % gray BG : progress bar, blocks
+\colorlet{colorC}{gDeepYellOr} % progress bar
+\colorlet{colorD}{gLightOrange} % alert
+\colorlet{colorE}{gLightGreen} % example
+}
+
+%%%%%%
+\colorlet{colorBG}{colorPale}
+\colorlet{colorFG}{colorDark}
+\colorlet{colorFrametitle}{colorA}
+\colorlet{colorStandout}{colorA}
+\colorlet{colorStandin}{colorPale}
+\colorlet{colorTitlepage}{colorA}
+\colorlet{colorFiligrane}{colorB}
+\colorlet{colorBackElement}{colorB}
+\colorlet{colorProgBar}{colorC}
+\colorlet{colorAlert}{colorD}
+\colorlet{colorExample}{colorE}
+
+\providebool{darkBG}
+\boolfalse{darkBG}
+\providebool{transparentBG}
+\booltrue{transparentBG}
+
+\cs_new_protected:Nn \__gotham_color_set_darkBG:{
+\setbeamercolor{normal~text}{%
+fg=colorBG,
+bg=colorFG,
+}%
+\usebeamercolor[fg]{normal~text}%
+\booltrue{darkBG}%
+\boolfalse{transparentBG}
+\colorlet{colorFrametitle}{colorAreversed}
+\colorlet{colorStandout}{colorAreversed}
+\colorlet{colorStandin}{colorFG}
+\colorlet{colorTitlepage}{colorAreversed}
+\setbeamercolor{palette~primary}{% reversed color compared to normal text
+use=normal~text,
+fg=normal~text.bg,
+bg=normal~text.fg
+}
+}
+
+\cs_new_protected:Nn \__gotham_color_set_lightBG:{
+\setbeamercolor{normal~text}{
+fg=colorFG,
+bg=colorBG
+}
+\usebeamercolor[fg]{normal~text}
+\boolfalse{darkBG}
+\boolfalse{transparentBG}
+\colorlet{colorFrametitle}{colorA}
+\colorlet{colorStandout}{colorA}
+\colorlet{colorStandin}{colorBG}
+\colorlet{colorTitlepage}{colorA}
+\setbeamercolor{palette~primary}{
+use=normal~text,
+fg=normal~text.bg,
+bg=normal~text.fg
+}
+}
+
+\cs_new_protected:Nn \__gotham_color_set_transparentBG:{
+\setbeamercolor{normal~text}{
+fg=colorFG,
+bg=,
+}
+\usebeamercolor[fg]{normal~text}
+\boolfalse{darkBG}
+\booltrue{transparentBG}
+\colorlet{colorFrametitle}{colorA}
+\colorlet{colorStandout}{colorA}
+{\usebeamercolor[bg]{normal~text}\colorlet{colorStandin}{bg}}% this is not working because the colorlet is not kept outside of the {} environment...
+\colorlet{colorStandin}{colorBG} % since the two previous lines are not working, let define it like light-bg
+\colorlet{colorTitlepage}{colorA}
+\setbeamercolor{palette~primary}{
+use=normal~text,
+fg=colorBG,
+bg=normal~text.fg
+}
+}
+
+\cs_new_protected:Nn \__gotham_color_set_transparent_block:{
+\setbeamercolor{block~title}{
+use=normal~text,
+fg=normal~text.fg,
+bg=
+}
+\setbeamercolor{block~body}{
+bg=
+}
+\setbeamercolor{alerted~text}{
+fg=colorAlert
+}
+\setbeamercolor{example~text}{
+fg=colorExample
+}
+\setbeamercolor{block~title~example}{
+use={block~title, example~text},
+bg=block~title.bg,
+fg=example~text.fg
+}
+\setbeamercolor{block~title~alerted}{
+use={block~title, alerted~text},
+bg=block~title.bg,
+fg=alerted~text.fg
+}
+}
+
+\cs_new_protected:Nn \__gotham_color_set_fill_block:{
+\setbeamercolor{block~title}{
+fg=colorBackElement!10!normal~text.fg,
+bg=colorBackElement!135!fg
+}
+\setbeamercolor{block~body}{
+use={block~title, normal~text},
+bg=block~title.bg!50!normal~text.bg
+}
+\setbeamercolor{alerted~text}{
+fg=colorAlert
+}
+\setbeamercolor{example~text}{
+fg=colorExample
+}
+\setbeamercolor{block~title~example}{
+use={block~title, example~text},
+bg=block~title.bg,
+fg=example~text.fg
+}
+\setbeamercolor{block~title~alerted}{
+use={block~title, alerted~text},
+bg=block~title.bg,
+fg=alerted~text.fg
+}
+}% \end{macrocode}
+
+\cs_new_protected:Nn \__gotham_color_set_native_block:{
+\setbeamercolor{block~title}{
+fg=colorPale,
+bg=colorBackElement!90!fg
+}
+\setbeamercolor{block~body}{
+use={block~title, normal~text},
+bg=block~title.bg!50!normal~text.bg
+}
+\setbeamercolor{alerted~text}{
+fg=colorAlert
+}
+\setbeamercolor{alertedBlock~text}{
+fg=colorPale
+}
+\setbeamercolor{example~text}{
+fg=colorPale
+}
+\setbeamercolor{block~title~alerted}{
+use={block~title, alertedBlock~text},
+bg=colorAlert,
+fg=alertedBlock~text.fg
+}
+\setbeamercolor{block~title~example}{
+use={block~title, example~text},
+bg=colorExample,
+fg=example~text.fg
+}
+}
+
+\setbeamercolor{structure}{use=normal~text, fg=normal~text.fg}
+\setbeamercolor{progress~bar}{
+use=alerted~text,
+fg=colorProgBar,
+bg=alerted~text.fg!50!black!30
+}
+
+\setbeamercolor{titlelike}{use=normal~text, parent=normal~text}
+\setbeamercolor{author}{use=normal~text, parent=normal~text}
+\setbeamercolor{date}{use=normal~text, parent=normal~text}
+\setbeamercolor{institute}{use=normal~text, parent=normal~text}
+\setbeamercolor{frametitle}{
+use=palette~primary,
+parent=palette~primary,
+bg=colorFrametitle
+}
+\setbeamercolor{title~separator}{
+use=progress~bar,
+parent=progress~bar
+}
+\setbeamercolor{progress~bar~in~head/foot}{%
+use=progress~bar,
+parent=progress~bar
+}
+\setbeamercolor{progress~bar~in~part~page}{
+use=progress~bar,
+parent=progress~bar
+}
+\setbeamercolor{progress~bar~in~section~page}{
+use=progress~bar,
+parent=progress~bar
+}
+\setbeamercolor{progress~bar~in~splitvert}{
+use=progress~bar,
+parent=progress~bar
+}
+\setbeamercolor{block~body~alerted}{use=block~body, parent=block~body}
+\setbeamercolor{block~body~example}{use=block~body, parent=block~body}
+\setbeamercolor{footnote}{fg=normal~text.fg!90}
+\setbeamercolor{footnote~mark}{fg=.}
+
+\setbeamercolor{frametitleSection}{use=primary~palette, bg=, fg=primary~palette.bg}
+\setbeamercolor{standout}{use=primary~palette, bg=colorStandout, fg=primary~palette.bg}
+\setbeamercolor{standin}{use=normal~text, bg=colorStandin, fg=normal~text.fg}
+
+\setbeamercolor{section~in~toc}{use=normal~text, parent=normal~text,}
+\setbeamercolor{subsection~in~toc}{use=normal~text, parent=normal~text,}
+\setbeamercolor{subsubsection~in~toc}{use=normal~text, parent=normal~text,}
+
+%%%%
+\keys_define:nn { gotham / color }
+{
+block .choice:,
+block .usage:n = { general },
+block .default:n = { native },
+block / native .code:n = { \__gotham_color_set_native_block: },
+block / transparent .code:n = { \__gotham_color_set_transparent_block: },
+block / fill .code:n = { \__gotham_color_set_fill_block: },
+block / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'\l_keys_value_tl'~is~unknown~for~the~(known)~option~'\l_keys_key_tl',~so~being~ignored. }{helping~message: block / unknown} },
+}
+
+\keys_define:nn { gotham / color }
+{
+background .choice:,
+background .usage:n = { general },
+background .default:n = { transparent },
+background / transparent .code:n = { \__gotham_color_set_transparentBG: },
+background / light .code:n = { \__gotham_color_set_lightBG: },
+background / dark .code:n = { \__gotham_color_set_darkBG: },
+background / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'\l_keys_value_tl'~is~unknown~for~the~(known)~option~'\l_keys_key_tl',~so~being~ignored. }{helping~message: background / unknown} },
+}
+
+\keys_define:nn { gotham / color }
+{
+colorset .choice:,
+colorset .usage:n = { general },
+colorset .default:n = { anthracite },
+colorset / anthracite .code:n = { \__gotham_color_set_style_anthracite: },
+colorset / red .code:n = { \__gotham_color_set_style_red: },
+colorset / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'\l_keys_value_tl'~is~unknown~for~the~(known)~option~'\l_keys_key_tl',~so~being~ignored. }{helping~message: colorset / unknown} },
+}
+
+\keys_set:nn { gotham / color } { background, block, colorset }
+
+\ProcessKeyOptions[ gotham / color ]
+\mode<all>
+%%
+%% Adapted from classic "A model .dtx file" by Joseph Wright
+%% https://www.texdev.net/2009/10/06/a-model-dtx-file/
+%%
+%% End of file `beamercolorthemegotham.sty'.
diff --git a/Master/texmf-dist/tex/latex/beamertheme-gotham/beamerfontthemegotham.sty b/Master/texmf-dist/tex/latex/beamertheme-gotham/beamerfontthemegotham.sty
new file mode 100644
index 00000000000..74d2cc4151a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/beamertheme-gotham/beamerfontthemegotham.sty
@@ -0,0 +1,580 @@
+%%
+%% This is file `beamerfontthemegotham.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% gotham.dtx (with options: `font')
+%%
+%% Copyright (C) 2023-20** by Romain NOËL <romainoel@free.fr>
+%%
+%% 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 Romain NOËL.
+%% Contributors: Romain NOËL (2023-20**)
+%%
+\ProvidesExplPackage{beamerfontthemegotham}{2024/09/20}{1.1.0.b}{gotham font theme}
+\RequirePackage{expl3}
+\RequirePackage{xparse}
+\RequirePackage{etoolbox}
+\RequirePackage{ifxetex}
+\RequirePackage{ifluatex}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%% FONT %%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\msg_new:nnn { gotham } { font-not-found }
+{
+ Could~not~find~font~'#1'.\c_space_tl
+}
+
+\msg_new:nnn { gotham } { fonts-not-available }
+{
+ No~suitable~fonts~found.~Using~fallback~fonts.
+}
+
+\msg_new:nnn { gotham } { compiler-xe-or-lua }
+{
+ You~need~to~compile~with~XeLaTeX~or~LuaLaTeX~to~use~the~Fira~fonts.
+}
+
+\int_new:N \g_gotham_fontsnotfound_int
+
+\cs_new_protected:Nn \checkfont:n
+{
+\fontspec_font_if_exist:nF { #1 }
+{
+\fontspec_font_if_exist:nF { #1~Regular }
+{
+\int_incr:N \g_gotham_fontsnotfound_int
+\msg_warning:nnn { gotham } { font-not-found } { #1 }
+}
+}
+}
+
+\newcommand{\iffontsavailable}[3]
+{
+\int_zero:N \g_gotham_fontsnotfound_int
+\clist_map_function:nN { #1 } \checkfont:n
+\int_compare:nTF { \g_gotham_fontsnotfound_int = 0 }
+{% True
+#2
+}{% False
+#3
+}
+}
+
+\ifboolexpr{bool~{xetex}~or~bool~{luatex}}{
+\@ifpackageloaded{fontspec}{
+\PassOptionsToPackage{no-math}{fontspec}
+}{
+\RequirePackage[no-math]{fontspec}
+}
+\iffontsavailable{FiraSans-Light.otf,
+FiraSans-LightItalic.otf,
+FiraSans-Regular.otf,
+FiraSans-Italic.otf}
+{
+\setsansfont[ItalicFont={FiraSans-LightItalic.otf},
+BoldFont={FiraSans-Regular.otf},
+BoldItalicFont={FiraSans-Italic.otf}]
+{FiraSans-Light.otf}
+}{
+\iffontsavailable{FiraSans~Light~OT,
+FiraSans~LightItalic~OT,
+FiraSans~Regular~OT,
+FiraSans~Italic~OT}
+{
+\setsansfont[ItalicFont={Fira~Sans~LightItalic~OT},
+BoldFont={Fira~Sans~Regular~OT},
+BoldItalicFont={Fira~Sans~Italic~OT}]
+{Fira~Sans~Light~OT}
+}{
+\msg_warning:nn { gotham } { fonts-not-available }%
+}
+}
+\iffontsavailable{FiraMono-Medium.otf, FiraMono-Bold.otf}{
+\setmonofont[BoldFont={FiraMono-Medium.otf}]{FiraMono-Bold.otf}
+}{
+\iffontsavailable{Fira~Mono~Medium~OT, Fira~Mono~Bold~OT}{
+\setmonofont[BoldFont={Fira~Mono~Medium~OT}]{Fira~Mono~Bold~OT}
+}{
+\msg_warning:nn { gotham } { fonts-not-available }
+}
+}
+\AtBeginEnvironment{tabular}{
+\addfontfeature{Numbers={Monospaced}}
+}
+}{
+\msg_warning:nn { gotham } { compiler-xe-or-lua }
+\DeclareFontShape{OT1}{cmss}{bx}{sc}{<-> cmbcsc10}{}
+\DeclareFontShape{OT1}{cmss}{bx}{it}{<->sub*cmss/m/sl}{}
+}
+
+\setbeamerfont{title}{size=\Large, series=\bfseries}
+\setbeamerfont*{subtitle}{size=\large}
+\setbeamerfont{author}{size=\small}
+\setbeamerfont{date}{size=\small}
+
+\setbeamerfont{section~title}{size=\Large, series=\bfseries}
+\setbeamerfont{subsection~title}{size=\large, series=\bfseries}
+\setbeamerfont{subsubsection~title}{size=\normalsize, series=\bfseries}
+
+\setbeamerfont{frametitle}{size=\large, series=\bfseries}
+\setbeamerfont{frametitleToc}{size=\LARGE, series=\bfseries}
+\setbeamerfont{frametitleSection}{size*={60}{1}, series=\bfseries}
+
+\setbeamerfont{block~title}{size=\normalsize, series=\bfseries}
+\setbeamerfont{block~title~alerted}{size=\normalsize, series=\bfseries}
+\setbeamerfont{caption}{size=\small}
+\setbeamerfont{caption~name}{series=\bfseries}
+\setbeamerfont{description~item}{series=\bfseries}
+\setbeamerfont{page~number~in~head/foot}{size=\scriptsize}
+
+\setbeamerfont{bibliography~entry~author}{size=\normalsize, series=\normalfont}
+\setbeamerfont{bibliography~entry~title}{size=\normalsize, series=\bfseries}
+\setbeamerfont{bibliography~entry~location}{size=\normalsize, series=\normalfont}
+\setbeamerfont{bibliography~entry~note}{size=\small, series=\normalfont}
+\setbeamerfont{standout}{size=\Large, series=\bfseries}
+
+\def\gotham@titleformat#1{#1}
+\def\gotham@subtitleformat#1{#1}
+\def\gotham@parttitleformat#1{#1}
+\def\gotham@sectiontitleformat#1{#1}
+\def\gotham@subsectiontitleformat#1{#1}
+\def\gotham@frametitleformat#1{#1}
+\def\gotham@framesubtitleformat#1{#1}
+
+\ExplSyntaxOff
+\patchcmd{\beamer@title}
+{\def\inserttitle{#2}}
+{\def\inserttitle{\gotham@titleformat{#2}}}
+{}
+{\PackageError{beamerfontthemegotham}{Patching~title~failed}\@ehc}
+\patchcmd{\beamer@subtitle}
+{\def\insertsubtitle{#2}}
+{\def\insertsubtitle{{\gotham@subtitleformat{#2}}}}
+{}
+{\PackageError{beamerfontthemegotham}{Patching~subtitle~failed}\@ehc}
+\patchcmd{\sectionentry} % beamerbasenavigation.sty l.335
+{\def\insertsectionhead{#2}}
+{\def\insertsectionhead{\gotham@sectiontitleformat{#2}}}
+{}
+{\PackageError{beamerfontthemegotham}{Patching~section~title~failed}\@ehc}%
+%% NOT WORKING YET!
+%% \patchcmd{\subsectionentry} % beamerbasenavigation.sty l.384
+%% {\def\insertsubsectionhead{##5}}
+%% {\def\insertsubsectionhead{\gotham@subsectiontitleformat{##5}}}
+%% {}
+%% {\PackageError{beamerfontthemegotham}{Patching~subsection~title~failed}\@ehc}%
+\@tempswafalse
+\patchcmd{\beamer@section} % beamerbasesection.sty l. 209
+{\def\insertsectionhead{\hyperlink{Navigation\the\c@page}{#1}}}
+{\def\insertsectionhead{\hyperlink{Navigation\the\c@page}{\gotham@sectiontitleformat{#1}}}}
+{\@tempswatrue}
+{}
+\patchcmd{\beamer@section} % beamerbasesection.sty l. 209
+{\edef\insertsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{\unexpanded{#1}}}}
+{\edef\insertsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{\noexpand\gotham@sectiontitleformat{\unexpanded{#1}}}}}
+{\@tempswatrue}
+{}
+\if@tempswa\else
+{\PackageError{beamerfontthemegotham}{Patching~section~title~failed}\@ehc}
+\fi
+\@tempswafalse
+%% NOT WORKING YET !
+%% \patchcmd{\beamer@subsection} % beamerbasesection.sty l. 209
+%% {\def\insertsubsectionhead{\hyperlink{Navigation\the\c@page}{#1}}}
+%% {\def\insertsubsectionhead{\hyperlink{Navigation\the\c@page}\gotham@subsectiontitleformat{#1}}}
+%% % \__gotham_subsection_title_format:n{#2}
+%% {\@tempswatrue}
+%% {}
+%% \patchcmd{\beamer@subsection} % beamerbasesection.sty l. 209
+%% {\protected@edef\insertsubsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{#1}}}
+%% {\protected@edef\insertsubsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{\noexpand\gotham@subsectiontitleformat{#1}}}}
+%% % \exp_not:N \__gotham_subsection_title_format:n {#1}
+%% {\@tempswatrue}
+%% {}
+%% \if@tempswa\else
+%% {\PackageError{beamerfontthemegotham}{Patching~subsection~title~failed}\@ehc}
+%% \fi%
+%% \@tempswafalse
+\providecommand{\beamer@insertframetitlecontinuation}{
+\usebeamertemplate*{frametitle~continuation}
+}
+\patchcmd{\beamer@@frametitle} % beamerbaselocalstructure.sty l. 32
+{\gdef\insertframetitle{{%
+#2%
+\ifnum\beamer@autobreakcount>0
+\relax{}\space%
+\beamer@insertframetitlecontinuation%
+\fi%
+}}%
+}
+{\gdef\insertframetitle{{%
+\gotham@frametitleformat{#2}%
+\ifnum\beamer@autobreakcount>0
+\relax{}\space%
+\beamer@insertframetitlecontinuation%
+\fi%
+}}%
+}
+{}
+{\PackageWarning{beamerfontthemegotham}{Patching~frametitle~failed}\@ehc}
+%% NOT WORKING YET !
+%% \patchcmd{\framesubtitle} % beamerbaselocalstructure.sty l.55
+%% {\only#2{\ifblank{#1}{}{\gdef\insertframesubtitle{{#1}}\beamer@aftersubtitle}}}
+%% {\only{#2}{\ifblank{#1}{}{\gdef\insertframesubtitle{{#1}}\beamer@aftersubtitle}}}
+%% {}
+%% {\PackageWarning{beamerfontthemegotham}{Patching~framesubtitle~failed}\@ehc}
+\ExplSyntaxOn
+
+%%%%
+\keys_define:nn { gotham / font }
+{
+format~title .choice:,
+format~title .usage:n = { general },
+format~title .default:n = { regular },
+format~title / regular .code:n =
+{
+\let\gotham@titleformat\@empty
+},
+format~title / lower .code:n =
+{
+\let\gotham@titleformat \text_lowercase:n %\lowercase
+\PackageWarning{ gotham } { Be~aware~that~format~title=lower~can~lead~to~problems. }
+},
+format~title / upper .code:n =
+{
+\let\gotham@titleformat \text_uppercase:n %\uppercase
+\PackageWarning{ gotham } { Be~aware~that~format~title=upper~can~lead~to~problems. }
+},
+format~title / titlecase .code:n =
+{
+\let\gotham@titleformat \text_titlecase_all:n %\MakeTitlecase
+\PackageWarning{ gotham } { Be~aware~that~format~title=titlecase~can~lead~to~problems. }
+},
+format~title / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'\l_keys_value_tl'~is~unknown~for~the~(known)~option~'\l_keys_key_tl',~so~being~ignored. }{helping~message: format~title / unknown } },
+}
+\keys_define:nn { gotham / font }
+{
+shape~title .choice:,
+shape~title .usage:n = { general },
+shape~title .default:n = { regular },
+shape~title / regular .code:n =
+{
+\setbeamerfont{title}{shape=\normalfont}
+},
+shape~title / smallcaps .code:n =
+{
+\setbeamerfont{title}{shape=\scshape}
+},
+shape~title / italic .code:n =
+{
+\setbeamerfont{title}{shape=\itshape}
+},
+shape~title / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'\l_keys_value_tl'~is~unknown~for~the~(known)~option~'\l_keys_key_tl',~so~being~ignored. }{helping~message: shape~title / unknown} },
+}
+
+\keys_define:nn { gotham / font }
+{
+format~subtitle .choice:,
+format~subtitle .usage:n = { general },
+format~subtitle .default:n = { regular },
+format~subtitle / regular .code:n =
+{
+\let\gotham@subtitleformat\@empty
+},
+format~subtitle / lower .code:n =
+{
+\let\gotham@subtitleformat \text_lowercase:n %\lowercase
+\PackageWarning{ gotham } { Be~aware~that~format~subtitle=lower~can~lead~to~problems. }
+},
+format~subtitle / upper .code:n =
+{
+\let\gotham@subtitleformat \text_uppercase:n %\uppercase
+\cs_set_eq:NN \__gotham_subtitle_format:n \text_uppercase:n
+\PackageWarning{ gotham } { Be~aware~that~format~subtitle=upper~can~lead~to~problems. }
+},
+format~subtitle / titlecase .code:n =
+{
+\let\gotham@subtitleformat \text_titlecase_all:n %\MakeTitlecase
+\PackageWarning{ gotham } { Be~aware~that~format~subtitle=titlecase~can~lead~to~problems. }
+},
+format~subtitle / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'\l_keys_value_tl'~is~unknown~for~the~(known)~option~'\l_keys_key_tl',~so~being~ignored. }{helping~message: format~subtitle / unknown} },
+}
+\keys_define:nn { gotham / font }
+{
+shape~subtitle .choice:,
+shape~subtitle .usage:n = { general },
+shape~subtitle .default:n = { regular },
+shape~subtitle / regular .code:n =
+{
+\setbeamerfont{subtitle}{shape=\normalfont}
+},
+shape~subtitle / smallcaps .code:n =
+{
+\setbeamerfont{subtitle}{shape=\scshape}
+},
+shape~subtitle / italic .code:n =
+{
+\setbeamerfont{subtitle}{shape=\itshape}
+},
+shape~subtitle / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'\l_keys_value_tl'~is~unknown~for~the~(known)~option~'\l_keys_key_tl',~so~being~ignored. }{helping~message: shape~subtitle / unknown} },
+}
+
+\keys_define:nn { gotham / font }
+{
+format~frametitle .choice:,
+format~frametitle .usage:n = { general },
+format~frametitle .default:n = { regular },
+format~frametitle / regular .code:n =
+{
+\let\gotham@frametitleformat\@empty
+},
+format~frametitle / lower .code:n =
+{
+\let\gotham@frametitleformat \text_lowercase:n %\lowercase
+\PackageWarning{ gotham } { Be~aware~that~format~frametitle=lower~can~lead~to~problems. }
+},
+format~frametitle / upper .code:n =
+{
+\let\gotham@frametitleformat \text_uppercase:n %\uppercase
+\PackageWarning{ gotham } { Be~aware~that~format~frametitle=upper~can~lead~to~problems. }
+},
+format~frametitle / titlecase .code:n =
+{
+\let\gotham@frametitleformat \text_titlecase_all:n %\Maketitlecase
+\PackageWarning{ gotham } { Be~aware~that~format~frametitle=titlecase~can~lead~to~problems. }
+},
+format~frametitle / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'\l_keys_value_tl'~is~unknown~for~the~(known)~option~'\l_keys_key_tl',~so~being~ignored. }{helping~message: format~frametitle / unknown} },
+}
+\keys_define:nn { gotham / font }
+{
+shape~frametitle .choice:,
+shape~frametitle .usage:n = { general },
+shape~frametitle .default:n = { regular },
+shape~frametitle / regular .code:n =
+{
+\setbeamerfont{frametitle}{shape=\normalfont}
+},
+shape~frametitle / smallcaps .code:n =
+{
+\setbeamerfont{frametitle}{shape=\scshape}
+},
+shape~frametitle / italic .code:n =
+{
+\setbeamerfont{frametitle}{shape=\itshape}
+},
+shape~frametitle / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'\l_keys_value_tl'~is~unknown~for~the~(known)~option~'\l_keys_key_tl',~so~being~ignored. }{helping~message: shape~frametitle / unknown} },
+}
+
+\keys_define:nn { gotham / font }
+{
+format~framesubtitle .choice:,
+format~framesubtitle .usage:n = { general },
+format~framesubtitle .default:n = { regular },
+format~framesubtitle / regular .code:n =
+{
+\let\gotham@framesubtitleformat\@empty
+},
+format~framesubtitle / lower .code:n =
+{
+\let\gotham@framesubtitleformat \text_lowercase:n %\lowercase
+\PackageWarning{ gotham } { Be~aware~that~format~framesubtitle=lower~can~lead~to~problems. }
+},
+format~framesubtitle / upper .code:n =
+{
+\let\gotham@framesubtitleformat \text_uppercase:n %\uppercase
+\PackageWarning{ gotham } { Be~aware~that~format~framesubtitle=upper~can~lead~to~problems. }
+},
+format~framesubtitle / titlecase .code:n =
+{
+\let\gotham@framesubtitleformat \text_titlecase_all:n %\Maketitlecase
+\PackageWarning{ gotham } { Be~aware~that~format~framesubtitle=titlecase~can~lead~to~problems. }
+},
+format~framesubtitle / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'\l_keys_value_tl'~is~unknown~for~the~(known)~option~'\l_keys_key_tl',~so~being~ignored. }{helping~message: format~framesubtitle / unknown} },
+}
+\keys_define:nn { gotham / font }
+{
+shape~framesubtitle .choice:,
+shape~framesubtitle .usage:n = { general },
+shape~framesubtitle .default:n = { regular },
+shape~framesubtitle / regular .code:n =
+{
+\setbeamerfont{framesubtitle}{shape=\normalfont}
+},
+shape~framesubtitle / smallcaps .code:n =
+{
+\setbeamerfont{framesubtitle}{shape=\scshape}
+},
+shape~framesubtitle / italic .code:n =
+{
+\setbeamerfont{framesubtitle}{shape=\itshape}
+},
+shape~framesubtitle / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'\l_keys_value_tl'~is~unknown~for~the~(known)~option~'\l_keys_key_tl',~so~being~ignored. }{helping~message: shape~framesubtitle / unknown} },
+}
+
+\keys_define:nn { gotham / font }
+{
+format~part .choice:,
+format~part .usage:n = { general },
+format~part .default:n = { regular },
+format~part / regular .code:n =
+{
+\let\gotham@parttitleformat\@empty
+},
+format~part / lower .code:n =
+{
+\let\gotham@parttitleformat \text_lowercase:n %\lowercase
+\PackageWarning{ gotham } { Be~aware~that~format~part=lower~can~lead~to~problems. }
+},
+format~part / upper .code:n =
+{
+\let\gotham@parttitleformat \text_uppercase:n %\uppercase
+\PackageWarning{ gotham } { Be~aware~that~format~part=upper~can~lead~to~problems. }
+},
+format~part / titlecase .code:n =
+{
+\let\gotham@parttitleformat\text_titlecase_all:n %\Maketitlecase
+\PackageWarning{ gotham } { Be~aware~that~format~part=titlecase~can~lead~to~problems. }
+},
+format~part / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'\l_keys_value_tl'~is~unknown~for~the~(known)~option~'\l_keys_key_tl',~so~being~ignored. }{helping~message: format~part / unknown} },
+}
+\keys_define:nn { gotham / font }
+{
+shape~part .choice:,
+shape~part .usage:n = { general },
+shape~part .default:n = { regular },
+shape~part / regular .code:n =
+{
+\setbeamerfont{part~title}{shape=\normalfont}
+},
+shape~part / smallcaps .code:n =
+{
+\setbeamerfont{part~title}{shape=\scshape}
+},
+shape~part / italic .code:n =
+{
+\setbeamerfont{part~title}{shape=\itshape}
+},
+shape~part / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'\l_keys_value_tl'~is~unknown~for~the~(known)~option~'\l_keys_key_tl',~so~being~ignored. }{helping~message: shape~part / unknown} },
+}
+
+\keys_define:nn { gotham / font }
+{
+format~section .choice:,
+format~section .usage:n = { general },
+format~section .default:n = { regular },
+format~section / regular .code:n =
+{
+\let\gotham@sectiontitleformat\@empty
+},
+format~section / lower .code:n =
+{
+\let\gotham@sectiontitleformat \text_lowercase:n %\lowercase
+\PackageWarning{ gotham } { Be~aware~that~format~section=lower~can~lead~to~problems. }
+},
+format~section / upper .code:n =
+{
+\let\gotham@sectiontitleformat \text_uppercase:n %\uppercase
+\PackageWarning{ gotham } { Be~aware~that~format~section=upper~can~lead~to~problems. }
+},
+format~section / titlecase .code:n =
+{
+\let\gotham@sectiontitleformat \text_titlecase_all:n %\Maketitlecase
+\PackageWarning{ gotham } { Be~aware~that~format~section=titlecase~can~lead~to~problems. }
+},
+format~section / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'\l_keys_value_tl'~is~unknown~for~the~(known)~option~'\l_keys_key_tl',~so~being~ignored. }{helping~message: format~section / unknown} },
+}
+\keys_define:nn { gotham / font }
+{
+shape~section .choice:,
+shape~section .usage:n = { general },
+shape~section .default:n = { regular },
+shape~section / regular .code:n =
+{
+\setbeamerfont{section~title}{shape=\normalfont}
+},
+shape~section / smallcaps .code:n =
+{
+\setbeamerfont{section~title}{shape=\scshape}
+},
+shape~section / italic .code:n =
+{
+\setbeamerfont{section~title}{shape=\itshape}
+},
+shape~section / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'\l_keys_value_tl'~is~unknown~for~the~(known)~option~'\l_keys_key_tl',~so~being~ignored. }{helping~message: shape~section / unknown} },
+}
+
+\keys_define:nn { gotham / font }
+{
+format~subsection .choice:,
+format~subsection .usage:n = { general },
+format~subsection .default:n = { regular },
+format~subsection / regular .code:n =
+{
+\let\gotham@subsectiontitleformat\@empty
+},
+format~subsection / lower .code:n =
+{
+\let\gotham@subsectiontitleformat \text_lowercase:n %\lowercase
+\PackageWarning{ gotham } { Be~aware~that~format~subsection=lower~can~lead~to~problems. }
+},
+format~subsection / upper .code:n =
+{
+\let\gotham@subsectiontitleformat \text_uppercase:n %\uppercase
+\PackageWarning{ gotham } { Be~aware~that~format~subsection=upper~can~lead~to~problems. }
+},
+format~subsection / titlecase .code:n =
+{
+\let\gotham@subsectiontitleformat\text_titlecase_all:n %\Maketitlecase
+\PackageWarning{ gotham } { Be~aware~that~format~subsection=titlecase~can~lead~to~problems. }
+},
+format~subsection / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'\l_keys_value_tl'~is~unknown~for~the~(known)~option~'\l_keys_key_tl',~so~being~ignored. }{helping~message: format~subsection / unknown} },
+}
+\keys_define:nn { gotham / font }
+{
+shape~subsection .choice:,
+shape~subsection .usage:n = { general },
+shape~subsection .default:n = { regular },
+shape~subsection / regular .code:n =
+{
+\setbeamerfont{subsection~title}{shape=\normalfont}
+},
+shape~subsection / smallcaps .code:n =
+{
+\setbeamerfont{subsection~title}{shape=\scshape}
+},
+shape~subsection / italic .code:n =
+{
+\setbeamerfont{subsection~title}{shape=\itshape}
+},
+shape~subsection / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'\l_keys_value_tl'~is~unknown~for~the~(known)~option~'\l_keys_key_tl',~so~being~ignored. }{helping~message: shape~subsection / unknown} },
+}
+
+\keys_set:nn { gotham / font } {
+format~title, shape~title,
+format~subtitle, shape~subtitle,
+format~frametitle, shape~frametitle,
+format~framesubtitle, shape~framesubtitle,
+format~part, shape~part,
+format~section, shape~section,
+format~subsection, shape~subsection,
+}
+
+\ProcessKeyOptions[ gotham / font ]
+%%
+%% Adapted from classic "A model .dtx file" by Joseph Wright
+%% https://www.texdev.net/2009/10/06/a-model-dtx-file/
+%%
+%% End of file `beamerfontthemegotham.sty'.
diff --git a/Master/texmf-dist/tex/latex/beamertheme-gotham/beamerinnerthemegotham.sty b/Master/texmf-dist/tex/latex/beamertheme-gotham/beamerinnerthemegotham.sty
new file mode 100644
index 00000000000..5d67edabad3
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/beamertheme-gotham/beamerinnerthemegotham.sty
@@ -0,0 +1,1949 @@
+%%
+%% This is file `beamerinnerthemegotham.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% gotham.dtx (with options: `inner')
+%%
+%% Copyright (C) 2023-20** by Romain NOËL <romainoel@free.fr>
+%%
+%% 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 Romain NOËL.
+%% Contributors: Romain NOËL (2023-20**)
+%%
+\ProvidesExplPackage{beamerinnerthemegotham}{2024/09/20}{1.1.0.b}{gotham inner theme}
+\RequirePackage{expl3}
+\RequirePackage{xparse}
+\RequirePackage{calc}
+\RequirePackage{tikz}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%% INNER %%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%% Titlepage %%%
+%%%%%%%%%%%%%%%%%%%
+\@ifundefined{\string\color@colorProgBar}{
+\providebool{darkBG} \boolfalse{darkBG}
+\providebool{transparentBG} \booltrue{transparentBG}
+\colorlet{colorBG}{white}
+\colorlet{colorFG}{black}
+\colorlet{colorFrametitle}{purple}
+\colorlet{colorStandout}{purple}
+\colorlet{colorStandin}{purple}
+\colorlet{colorTitlepage}{purple}
+\colorlet{colorFiligrane}{gray}
+\colorlet{colorBackElement}{gray}
+\colorlet{colorProgBar}{orange}
+\colorlet{colorAlert}{red}
+\colorlet{colorExample}{green}
+\colorlet{colorFrametitle}{purple}
+\colorlet{colorTitlepage}{purple}
+\setbeamercolor{progress~bar}{
+use=alerted~text,
+fg=colorProgBar,
+bg=alerted~text.fg!50!black!30
+}
+\setbeamercolor{progress~bar~in~head/foot}{%
+use=progress~bar,
+parent=progress~bar
+}
+\setbeamercolor{progress~bar~in~part~page}{
+use=progress~bar,
+parent=progress~bar
+}
+\setbeamercolor{progress~bar~in~section~page}{
+use=progress~bar,
+parent=progress~bar
+}
+\setbeamercolor{progress~bar~in~splitvert}{
+use=progress~bar,
+parent=progress~bar
+}
+\setbeamercolor{frametitleSection}{use=primary~palette, bg=, fg=primary~palette.bg}
+\setbeamercolor{standout}{use=primary~palette, bg=colorStandout, fg=primary~palette.bg}
+\setbeamercolor{standin}{use=normal~text, bg=colorStandin, fg=normal~text.fg}
+\setbeamercolor{section~in~toc}{use=normal~text, parent=normal~text,}
+\setbeamercolor{subsection~in~toc}{use=normal~text, parent=normal~text,}
+\setbeamercolor{subsubsection~in~toc}{use=normal~text, parent=normal~text,}
+}{
+}
+
+\def\maketitle{
+\ifbeamer@inframe
+\titlepage
+\else
+\frame[plain, noframenumbering]{\titlepage}
+\fi
+}
+\def\titlepage{
+\usebeamertemplate{title~page}
+}
+
+\defbeamertemplate*{title~graphic}{gotham}{
+\vbox{
+\inserttitlegraphic
+}
+\nointerlineskip
+}
+\defbeamertemplate*{title}{gotham}{
+\linespread{1.0}
+\inserttitle
+\par
+\vspace*{0.5em}
+}
+\defbeamertemplate*{subtitle}{gotham}{
+\insertsubtitle
+\par
+\vspace*{0.5em}
+}
+\defbeamertemplate*{author}{gotham}{
+\vspace*{1.em}
+\insertauthor
+\par
+\vspace*{0.25em}
+}
+\defbeamertemplate*{date}{gotham}{
+\insertdate
+\par
+}
+\defbeamertemplate*{institute}{gotham}{
+\vspace*{3mm}
+\insertinstitute
+\par
+}
+
+\dim_new:N \l__gotham_titleseparator_width_dim
+\dim_set:Nn \l__gotham_titleseparator_width_dim {\textwidth}
+\dim_new:N \l__gotham_titleseparator_height_dim
+\dim_set:Nn \l__gotham_titleseparator_height_dim {2pt}
+\dim_new:N \l__gotham_title_width_dim
+\dim_new:N \l__gotham_subtitle_width_dim
+\dim_new:N \l__gotham_title_max_width_dim
+
+\defbeamertemplate*{title~separator}{gotham}{
+\begin{tikzpicture}
+\fill[fg] (0,0) rectangle
+(\dim_use:N \l__gotham_titleseparator_width_dim,
+\dim_use:N \l__gotham_titleseparator_height_dim);
+\end{tikzpicture}
+\par
+}
+
+%%%%
+\providecommand{\gothamtitlepagelogo}{}
+
+%%%%%
+\providecommand{\gothamtitlepagebg}{}
+
+
+
+\defbeamertemplate{title~page}{gotham~normal}{
+\ifx\insertframetitle\@empty\else\vspace*{-3em}\fi
+\begin{picture}(0,0)
+\put(-30,-125){\noindent
+\fcolorbox{normal~text.bg}{normal~text.bg}{
+\begin{minipage}[b][\paperheight]{\paperwidth}
+\parbox[c][0pt][c]{0pt}{\gothamtitlepagebg}
+\centering
+\vfill
+\ifx\inserttitle\@empty\else\usebeamertemplate*{title}\fi
+\ifx\insertsubtitle\@empty\else\usebeamertemplate*{subtitle}\fi
+\usebeamertemplate*{title~separator}
+\expandafter\ifblank\expandafter{\beamer@andstripped}{
+\vspace*{1.em}
+}{
+\usebeamertemplate*{author}
+}
+\ifx\insertdate\@empty\else\usebeamertemplate*{date}\fi
+\ifx\insertinstitute\@empty\else{\parbox{0.9\textwidth}{\raggedright\usebeamertemplate*{institute}} }\fi
+\vfill
+\vbox{}
+\end{minipage}
+}
+}
+
+\put(234,-120){
+\gothamtitlepagelogo
+}
+
+\put(-27,-123){
+\noindent\vbox{
+\begin{minipage}[b][0.96\paperheight]{0.899\textwidth}
+\ifx\inserttitlegraphic\@empty\else\usebeamertemplate*{title~graphic}\fi
+\end{minipage}
+}
+}
+\end{picture}
+}
+
+\defbeamertemplate{title~page}{gotham~reversed}{
+\begin{picture}(0,0)
+\put(-28,-128){\gothamtitlepagebg}
+
+\put(-4,-125){\noindent
+\ifbool{darkBG}{
+\setbeamercolor{normal~text}{fg=colorFG, }
+\fcolorbox{colorPale}{colorPale}% reversed
+}{
+\setbeamercolor{normal~text}{fg=colorBG, }
+\fcolorbox{colorTitlepage}{colorTitlepage}% reversed
+}% end if
+{
+\begin{minipage}[b][\paperheight]{\textwidth}
+\centering
+\vfill
+\ifx\inserttitle\@empty\else\usebeamertemplate*{title}\fi
+\ifx\insertsubtitle\@empty\else\usebeamertemplate*{subtitle}\fi
+\usebeamertemplate*{title~separator}
+\expandafter\ifblank\expandafter{\beamer@andstripped}{
+\vspace*{1.em}
+}{
+\usebeamertemplate*{author}
+}
+\ifx\insertdate\@empty\else\usebeamertemplate*{date}\fi
+\ifx\insertinstitute\@empty\else{\parbox{0.9\textwidth}{\raggedright\usebeamertemplate*{institute}} }\fi
+\vfill
+\vbox{}
+\end{minipage}
+}
+}
+
+\put(234,-120){
+\gothamtitlepagelogo
+}
+
+\put(-27,-123){
+\noindent\vbox{
+\begin{minipage}[b][0.96\paperheight]{0.899\textwidth}
+\ifx\inserttitlegraphic\@empty\else\usebeamertemplate*{title~graphic}\fi
+\end{minipage}
+}
+}
+\end{picture}
+}
+
+\defbeamertemplate{title~page}{gotham~dividedpic}{
+\long\def\tmpEmpty{}
+\def\titlecontent{\usebeamerfont{title}\usebeamercolor[fg]{title}\inserttitle}
+\def\subtitlecontent{\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle}\insertsubtitle}
+\settowidth\l__gotham_title_width_dim\titlecontent
+\settowidth\l__gotham_subtitle_width_dim\subtitlecontent
+\setlength\l__gotham_title_max_width_dim{\ifdim\l__gotham_title_width_dim>\l__gotham_subtitle_width_dim\l__gotham_title_width_dim\else\l__gotham_subtitle_width_dim\fi}
+\begin{minipage}{.55\textwidth}
+\raggedright
+\titlecontent\\
+\subtitlecontent\\
+\textcolor{colorProgBar}{\rule{\ifdim\l__gotham_title_max_width_dim<.55\textwidth\l__gotham_title_max_width_dim\else.55\textwidth\fi}{\dim_use:N \l__gotham_titleseparator_height_dim}}\\[2em]
+\usebeamerfont{author}\usebeamercolor[fg]{author}
+\insertauthor\\
+\expandafter\ifblank\expandafter{\beamer@andstripped}{
+\vspace*{1.em}
+}{
+\usebeamerfont{author}\usebeamercolor[fg]{author}
+\insertshortauthor
+\vspace{2em}
+}
+\ifx\insertinstitute\@empty\else{
+\usebeamertemplate*{institute}\vspace{2em}
+}\fi
+\insertdate
+\end{minipage}
+
+\begin{tikzpicture}[remember~picture, overlay]
+\clip (current~page.south~east)
+-- (current~page.north~east)
+-- ++(-5.1, 0)
+-- ++(-3, -\paperheight)
+-- cycle;
+
+\ifx\gothamtitlepagebg\tmpEmpty
+\fill[
+right~color=colorTitlepage!100,%\ifbool{darkBG}{colorPale!100}{colorDark!100},
+]
+(current~page.south~east)
+rectangle
+++(\dimexpr-0.55\paperwidth, \dimexpr\paperheight+1cm);
+\else
+\node[
+anchor=south~east,
+inner~sep=0,
+outer~sep=0
+] at (current~page.south~east) {
+\gothamtitlepagebg
+};
+\fi
+\end{tikzpicture}
+}
+
+\defbeamertemplate{title~page}{gotham~splitvert}{
+\ifx\beamer@frametitle\@empty
+\vspace*{-0.5\paperheight}
+\else %}{
+\vspace*{-0.63\paperheight}
+\fi %}
+{
+\usebeamercolor{frametitle}\colorlet{gotham@@tempColor}{bg}%
+\begin{tikzpicture}[overlay, remember~picture]
+\fill[color=gotham@@tempColor] (current~page.north~west) rectangle ([shift = {(0, -0.45\paperheight)}] current~page.north~east);
+\end{tikzpicture}
+}
+
+\begin{minipage}[b][0.35\paperheight]{\textwidth}
+\usebeamerfont{title}
+\usebeamercolor[fg]{frametitle}
+\inserttitle
+\end{minipage}
+
+\newline
+\begin{minipage}[t][0.1\paperheight]{\textwidth}
+\usebeamerfont{subtitle}
+\usebeamercolor[fg]{frametitle}
+\insertsubtitle
+\end{minipage}
+
+\ifx\inserttitlegraphic\@empty\else
+\newline
+\vspace*{-1.65\baselineskip}
+{\parbox[c][0pt][c]{\textwidth}{
+\raggedleft
+\inserttitlegraphic
+}}
+\fi
+
+\expandafter\ifblank\expandafter{\beamer@andstripped}{
+\vspace*{1.em}
+}{
+\newline
+\begin{minipage}[t]{\textwidth}
+\vspace*{-1.5\baselineskip}
+\usebeamertemplate*{author}
+\end{minipage}
+}
+
+\ifx\insertinstitute\@empty\else
+\newline
+\vspace*{-1.65\baselineskip}
+\begin{minipage}[t]{\textwidth}
+\usebeamertemplate*{institute}
+\end{minipage}
+\fi
+
+\ifx\insertdate\@empty\else
+\newline
+\begin{minipage}[t]{\textwidth}
+\vspace*{2.65\baselineskip}
+\usebeamertemplate*{date}
+\end{minipage}
+\vspace*{-3.15\baselineskip}
+\fi
+}
+
+%%%%%%
+\cs_if_exist:NTF \__gotham_set_template:nn {}{
+
+\cs_new_protected:Nn \__gotham_set_template:nn
+{
+\cs_if_exist:cTF {beamer@@tmpop@#1@#2} {
+\setbeamertemplate{#1}[#2]
+}{
+\PackageError{beamerinnerthemegotham}
+{The~beamer~template~named~'#1'~with~the~option~'#2'~does~not~exist}
+{helping~message unknown setbeamertemplate option}
+}
+}
+}
+
+%%%%
+\keys_define:nn { gotham / inner }
+{
+title~page .usage:n = { general },
+title~page .default:n = { gotham~normal },
+title~page .code:n = { \__gotham_set_template:nn{title~page}{#1} },
+}
+
+%% Backgrounds %%%
+%%%%%%%%%%%%%%%%%%
+
+
+%%%%%%
+\prop_if_exist:NTF \l__gotham_template_name_prop
+{}{
+\prop_new:N \l__gotham_template_name_prop
+}
+
+%%%%%%
+\defbeamertemplate{background~canvas}{empty}{% empty background style has a color.
+\hspace*{28pt}
+\begin{beamercolorbox}[wd=\paperwidth,
+ ht=\paperheight,
+ ]{background}
+ % nothing to write, only a background color
+ \end{beamercolorbox}
+}%
+\defbeamertemplate{background}{empty}{}%
+
+\defbeamertemplate{background}{watermark/gotham~draft}{
+\begin{tikzpicture}[overlay,remember~picture]
+\node[color=red, opacity=0.3, scale=5, rotate=45] at ([shift={(0,0)}]current~page.center) {DRAFT};
+\end{tikzpicture}
+}
+\prop_put:Nnn \l__gotham_template_name_prop {background/watermark} {gotham~draft}
+
+\seq_if_exist:NTF \l__gotham_frameoption_tmp_seq {}{
+\seq_new:N \l__gotham_frameoption_tmp_seq
+}
+
+\cs_if_exist:NTF \__gotham_add_beamerframe_key:n {}{
+
+\cs_new_protected:Nn \__gotham_add_beamerframe_key:n {
+\define@key{beamerframe}{ #1 }[true]{
+\begin{#1env}
+\seq_put_left:Nn \l__gotham_frameoption_tmp_seq { \end{#1env} }
+}
+}
+
+\apptocmd{\beamer@reseteecodes}{
+\seq_use:Nn \l__gotham_frameoption_tmp_seq {}
+\seq_clear:N \l__gotham_frameoption_tmp_seq
+}{}{}
+}
+
+%%%%%%
+
+\newenvironment{noBGCenv}{
+\setbeamertemplate{background~canvas}[empty]
+}{}
+\__gotham_add_beamerframe_key:n {noBGC}
+
+%%%%%%
+\bool_new:N \l_gotham_defaultWatermark
+\bool_set_false:N \l_gotham_defaultWatermark
+\BeforeBeginEnvironment{frame}{
+\bool_if:NTF \l_gotham_defaultWatermark {
+\setbeamertemplate{background}[watermark/\prop_item:Nn \l__gotham_template_name_prop {background/watermark}]
+}{% false
+\setbeamertemplate{background}[empty]
+}
+}
+
+%%%%%%
+\newenvironment{watermarkenv}{
+\setbeamertemplate{background}[
+watermark/\prop_item:Nn \l__gotham_template_name_prop {background/watermark}
+]
+}{}
+\__gotham_add_beamerframe_key:n {watermark}
+
+%%%%%%
+\newenvironment{nowatermarkenv}{
+\setbeamertemplate{background}[empty]
+}{}
+\__gotham_add_beamerframe_key:n {nowatermark}
+
+\seq_if_exist:NTF \l__gotham_tmpa_seq
+{}{
+\seq_new:N \l__gotham_tmpa_seq
+}
+\tl_if_exist:NTF \l__gotham_tmpa_tl
+{}{
+\tl_new:N \l__gotham_tmpa_tl
+}
+\tl_if_exist:NTF \l__gotham_tmpb_tl
+{}{
+\tl_new:N \l__gotham_tmpb_tl
+}
+
+\cs_if_exist:NTF \__gotham_set_prop_template:nn {}{
+\cs_new_protected:Nn \__gotham_set_prop_template:nn
+{
+\tl_if_in:nnTF { #1 } { / }
+{
+\seq_set_split:Nnn \l__gotham_tmpa_seq { / } { #1 }
+\tl_set:Nn \l__gotham_tmpa_tl { \seq_item:Nn \l__gotham_tmpa_seq { 1 } }
+\tl_set:Nn \l__gotham_tmpb_tl { \seq_item:Nn \l__gotham_tmpa_seq { 2 } }
+\cs_if_exist:cTF {beamer@@tmpop@\exp_not:V \l__gotham_tmpa_tl @\exp_not:V \l__gotham_tmpb_tl /#2} {
+\prop_put:Nnn \l__gotham_template_name_prop {#1} {#2}
+}{
+\PackageError{beamerthemegotham}
+{The~beamer~template~named~'\l__gotham_tmpa_tl'~with~the~option~'\l__gotham_tmpb_tl/#2'~does~not~exist}
+{helping~message}
+}
+}{% false -> error
+\PackageError{beamerthemegotham}
+{%
+When~using~'\c_backslash_str\cs_to_str:N \__gotham_set_prop_template'~the~first~argument~should~contain~a~'/'~to~respect~the~naming~convention~used~(Template/what/Who~name),~but~you~gave~'#1'.~
+As~example:~if~'\c_backslash_str defbeamertemplate{background}{watermark/gotham~draft}'...,~then~use~'\c_backslash_str\cs_to_str:N \__gotham_set_prop_template{background/watermark}{gotham~draft}'
+}{helping~message}
+}
+}
+}
+
+%%%%
+\keys_define:nn { gotham / inner }{
+watermark~template .usage:n = { general },
+watermark~template .default:n = { gotham~draft },
+watermark~template .code:n = { \__gotham_set_prop_template:nn{background/watermark}{#1} },
+}
+\keys_define:nn { gotham / inner }{
+watermark~default .choice:,
+watermark~default .usage:n = { general },
+watermark~default .default:n = { false },
+
+watermark~default / true .code:n = { \bool_set_true:N \l_gotham_defaultWatermark },
+watermark~default / on .code:n = { \bool_set_true:N \l_gotham_defaultWatermark },
+watermark~default / enable .code:n = { \bool_set_true:N \l_gotham_defaultWatermark },
+
+watermark~default / false .code:n = { \bool_set_false:N \l_gotham_defaultWatermark },
+watermark~default / off .code:n = { \bool_set_false:N \l_gotham_defaultWatermark },
+watermark~default / disable .code:n = { \bool_set_false:N \l_gotham_defaultWatermark },
+
+watermark~default / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'#1'~is~unknown~for~the~(known)~option~'watermark~default',~so~being~ignored. }{helping~message: watermark~default / unknown} },
+}
+
+%%%% Stand IN/OUT %%%%
+%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%
+\define@key{beamerframe}{c}[true]{
+\beamer@frametopskip=0pt~plus~1fill\relax
+\beamer@framebottomskip=0pt~plus~1fill\relax
+\beamer@frametopskipautobreak=0pt~plus~.4\paperheight\relax
+\beamer@framebottomskipautobreak=0pt~plus~.6\paperheight\relax
+\def\beamer@initfirstlineunskip{}
+}
+
+\defbeamertemplate{background~canvas}{standout/gotham}{
+\ifbeamercolorempty[bg]{standout}{
+}{
+\usebeamercolor[bg]{standout}\color{bg}
+\vrule~width\paperwidth~height\paperheight
+}
+}
+\prop_put:Nnn \l__gotham_template_name_prop {background~canvas/standout} {gotham}
+
+\defbeamertemplate*{standout}{gotham}{%
+
+\setbeamertemplate{background~canvas}[standout/\prop_item:Nn \l__gotham_template_name_prop {background~canvas/standout}]
+\usebeamerfont{standout}
+\ifbeamercolorempty[bg]{palette~primary}{
+\setbeamercolor{background~canvas}{
+use=palette~primary,
+bg=palette~primary.fg
+}
+}{
+\setbeamercolor{background~canvas}{
+use=palette~primary,
+bg=palette~primary.bg
+}
+}
+\setbeamercolor{local~structure}{
+fg=palette~primary.bg
+}
+\usebeamercolor[fg]{palette~primary}
+}
+
+%%%%%%
+\newenvironment{standoutenv}{
+\usebeamertemplate{standout}
+}{}
+\__gotham_add_beamerframe_key:n {standout}
+
+\defbeamertemplate{background~canvas}{standin/gotham}{
+\ifbeamercolorempty[bg]{standin}{
+}{
+\ifbool{transparentBG}{
+}{
+\usebeamercolor[bg]{standin}\color{bg}
+\vrule~width\paperwidth~height\paperheight
+}
+}
+}
+\prop_put:Nnn \l__gotham_template_name_prop {background~canvas/standin} {gotham}
+
+\defbeamertemplate*{standin}{gotham}{
+\setbeamertemplate{background~canvas}[standin/\prop_item:Nn \l__gotham_template_name_prop {background~canvas/standin}]
+\usebeamerfont{standin}
+\setbeamercolor{frametitle}{
+use=normal~text,
+bg=normal~text.bg,
+fg=normal~text.fg
+}
+}
+
+%%%%%%
+\newenvironment{standinenv}{
+\usebeamertemplate{standin}
+}{}
+\__gotham_add_beamerframe_key:n {standin}
+
+%%%%
+\keys_define:nn { gotham / inner }
+{
+standout~template .usage:n = { general },
+standout~template .default:n = { gotham },
+standout~template .code:n = { \__gotham_set_prop_template:nn{background~canvas/standout}{#1} },
+}
+\keys_define:nn { gotham / inner }
+{
+standin~template .usage:n = { general },
+standin~template .default:n = { gotham },
+standin~template .code:n = { \__gotham_set_prop_template:nn{background~canvas/standin}{#1} },
+}
+
+%%%% Sections %%%%
+%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%
+\bool_new:N \l_gotham_partframe
+\bool_set_false:N \l_gotham_partframe
+\define@key{beamerframe}{part}[true]{
+\bool_set_true:N \l_gotham_partframe
+\begingroup
+\usebeamertemplate{part~frame}
+}
+\apptocmd{\beamer@reseteecodes}{
+\bool_if:NTF \l_gotham_partframe {
+\endgroup
+\bool_set_false:N \l_gotham_partframe
+}{}
+}{}{}
+
+%%%%%%
+\bool_new:N \l_gotham_sectionframe
+\bool_set_false:N \l_gotham_sectionframe
+\define@key{beamerframe}{section}[true]{
+\bool_set_true:N \l_gotham_sectionframe
+\begingroup
+\usebeamertemplate{section~frame}
+}
+\apptocmd{\beamer@reseteecodes}{
+\bool_if:NTF \l_gotham_sectionframe {
+\endgroup
+\bool_set_false:N \l_gotham_sectionframe
+}{}
+}{}{}
+
+%%%%%%
+\bool_new:N \l_gotham_subsectionframe
+\bool_set_false:N \l_gotham_subsectionframe
+\define@key{beamerframe}{subsec}[true]{
+\bool_set_true:N \l_gotham_subsectionframe
+\begingroup
+\usebeamertemplate{subsection~frame}
+}
+\apptocmd{\beamer@reseteecodes}{
+\bool_if:NTF \l_gotham_subsectionframe {
+\endgroup
+\bool_set_false:N \l_gotham_subsectionframe
+}{}
+}{}{}
+
+%%%%%%
+\bool_new:N \l_gotham_subsubsectionframe
+\bool_set_false:N \l_gotham_subsubsectionframe
+\define@key{beamerframe}{subsubsec}[true]{
+\bool_set_true:N \l_gotham_subsubsectionframe
+\begingroup
+\usebeamertemplate{subsubsection~frame}
+}
+\apptocmd{\beamer@reseteecodes}{
+\bool_if:NTF \l_gotham_subsubsectionframe {
+\endgroup
+\bool_set_false:N \l_gotham_subsubsectionframe
+}{}
+}{}{}
+
+%%%%%%
+\providebool{partContent}
+\booltrue{partContent}
+\providecommand{\partContentName}{Part~content}
+\providebool{sectionContent}
+\booltrue{sectionContent}
+\providecommand{\secContentName}{Section~content}
+\providebool{subsectionContent}
+\booltrue{subsectionContent}
+\providecommand{\subsecContentName}{Subsection~content}
+
+\def\partname{\translate{Part}}
+\defbeamertemplate*{part~title}{gotham}{
+\usebeamercolor[fg]{part~title}
+\usebeamerfont{part~title}
+\partname \ \insertromanpartnumber
+\\[1.75ex]
+\insertpart
+}
+\defbeamertemplate*{section~title}{gotham}{
+\usebeamercolor[fg]{section~title}
+\usebeamerfont{section~title}
+\insertsectionnumber.~
+\insertsectionhead
+}
+\defbeamertemplate*{subsection~title}{gotham}{
+\usebeamercolor[fg]{subsection~title}
+\usebeamerfont{subsection~title}
+\insertsectionnumber.\insertsubsectionnumber.~
+\insertsubsectionhead
+}
+\def\subsubsectionname{\translate{Subsubsection}}
+\def\insertsubsubsectionnumber{\arabic{subsubsection}}
+\def\subsubsectionpage{\usebeamertemplate*{subsubsection~page}}
+\defbeamertemplate*{subsubsection~title}{gotham}{
+\usebeamercolor[fg]{subsubsection~title}
+\usebeamerfont{subsubsection~title}
+\insertsectionnumber.\insertsubsectionnumber.\insertsubsubsectionnumber.~
+\insertsubsubsectionhead
+}
+
+\cs_new_protected:Nn \__gotham_inner_disable_partpage:
+{
+\AtBeginPart{
+}
+}
+
+\cs_new_protected:Nn \__gotham_inner_enable_partpage:
+{
+\AtBeginPart{
+\ifbeamer@inframe
+\partpage
+\else
+\frame[c, noframenumbering, part]{\partpage}
+\fi
+
+\ifbool{partContent}{
+\begin{frame}[noframenumbering, tocpart]
+\frametitle{\partContentName}
+\tableofcontents[part=\thepart]
+\end{frame}
+}{
+}
+}
+}
+
+\cs_new_protected:Nn \__gotham_inner_disable_sectionpage:
+{
+\AtBeginSection{
+}
+}
+
+\cs_new_protected:Nn \__gotham_inner_enable_sectionpage:
+{
+\AtBeginSection{
+\ifbeamer@inframe
+\sectionpage
+\else
+\frame[c, noframenumbering, section]{\sectionpage}
+\fi
+
+\ifbool{sectionContent}{
+\begin{frame}[noframenumbering, tocsec]
+\frametitle{\secContentName}
+{\tableofcontents[currentsection, currentsubsection,
+hideothersubsections,
+sectionstyle=show/shaded,
+]
+}
+\end{frame}
+}{
+}
+}
+}
+
+\cs_new_protected:Nn \__gotham_inner_disable_subsectionpage:
+{
+ \AtBeginSubsection{
+ % intentionally empty
+ }
+}
+
+\cs_new_protected:Nn \__gotham_inner_enable_subsectionpage:
+{
+\AtBeginSubsection{
+\ifbeamer@inframe
+\subsectionpage
+\else
+\frame[c, noframenumbering, subsec]{\subsectionpage}
+\fi
+
+\ifbool{subsectionContent}{
+\begin{frame}[noframenumbering, tocsubsec]
+\frametitle{\subsecContentName}
+{\tableofcontents[currentsection, currentsubsection,
+hideothersubsections,
+sectionstyle=show/shaded,
+subsectionstyle=show/shaded/hide,
+subsubsectionstyle=show/show/hide,
+]
+}
+\end{frame}
+}{
+}
+}
+}
+
+\cs_new_protected:Nn \__gotham_inner_disable_subsubsectionpage:
+{
+ \AtBeginSubsubsection{
+ % intentionally empty
+ }
+}
+
+\cs_new_protected:Nn \__gotham_inner_enable_subsubsectionpage:
+{
+\AtBeginSubsubsection{
+\ifbeamer@inframe
+\subsubsectionpage
+\else
+\frame[c, noframenumbering, subsubsec]{\subsubsectionpage}
+\fi
+}
+}
+
+%%%%%%
+\newlength{\gotham@progressonsectionpage}
+\newlength{\gotham@progressonsectionpage@linewidth}
+\setlength{\gotham@progressonsectionpage@linewidth}{3pt}
+
+\defbeamertemplate{progress~bar~in~section~page}{empty}{
+\vspace{\gotham@progressonsectionpage@linewidth+1ex}
+}
+
+\def\inserttotalframenumber{100}
+\defbeamertemplate{progress~bar~in~section~page}{display}{
+\setlength{\gotham@progressonsectionpage}{
+\textwidth * \ratio{\insertframenumber~pt}{\inserttotalframenumber~pt}
+}
+\begin{tikzpicture}
+\fill[bg] (0,0) rectangle (\textwidth, \gotham@progressonsectionpage@linewidth);
+\fill[fg] (0,0) rectangle (\gotham@progressonsectionpage, \gotham@progressonsectionpage@linewidth);
+\end{tikzpicture}
+}
+
+%%%%%%
+\newlength{\sectionhoffset}
+\setlength{\sectionhoffset}{0pt}
+
+\defbeamertemplate{part~page}{progressbar/simple}{
+\centering
+\hspace*{\sectionhoffset}
+\begin{minipage}{22em}
+\centering
+\usebeamertemplate*{part~title}\\[-1ex]
+\usebeamertemplate*{progress~bar~in~section~page}
+\par
+\end{minipage}
+\par
+\vspace{\baselineskip}
+}
+\defbeamertemplate{section~page}{progressbar/simple}{
+\centering
+\hspace*{\sectionhoffset}
+\begin{minipage}{22em}
+\raggedright
+\usebeamertemplate*{section~title}\\[-1ex]
+\usebeamertemplate*{progress~bar~in~section~page}
+\par
+\end{minipage}
+\par
+\vspace{\baselineskip}
+}
+\defbeamertemplate{subsection~page}{progressbar/simple}{
+\centering
+\hspace*{\sectionhoffset}
+\begin{minipage}{22em}
+\raggedright
+\usebeamertemplate*{section~title}\\[-1ex]
+\usebeamertemplate*{progress~bar~in~section~page}
+\par
+\usebeamertemplate*{subsection~title}
+\end{minipage}
+\par
+\vspace{\baselineskip}
+}
+\defbeamertemplate{subsubsection~page}{progressbar/simple}{
+\centering
+\hspace*{\sectionhoffset}
+\begin{minipage}{22em}
+\raggedright
+\usebeamertemplate*{section~title}\\[-1ex]
+\usebeamertemplate*{progress~bar~in~section~page}
+\par
+\usebeamertemplate*{subsection~title}
+\par
+\usebeamertemplate*{subsubsection~title}
+\end{minipage}
+\par
+\vspace{\baselineskip}
+}
+
+\defbeamertemplate{background~canvas}{part/gotham}{
+\ifbeamercolorempty[bg]{normal~text}{}{\color{bg}\vrule width\paperwidth height\paperheight}
+}
+\defbeamertemplate{background~canvas}{section/gotham}{
+\setbeamertemplate{background~canvas}[part/gotham]
+\usebeamertemplate{background~canvas}
+}
+\defbeamertemplate{background~canvas}{subsection/gotham}{
+\setbeamertemplate{background~canvas}[part/gotham]
+\usebeamertemplate{background~canvas}
+}
+\defbeamertemplate{background~canvas}{subsubsection/gotham}{
+\setbeamertemplate{background~canvas}[part/gotham]
+\usebeamertemplate{background~canvas}
+}
+
+\defbeamertemplate{part~frame}{gotham~simple}{
+\setbeamertemplate{background~canvas}[part/gotham]
+\setbeamercolor{frametitle}{
+use={frametitleSection, normal~text},
+bg=frametitleSection.fg,
+fg=normal~text.fg
+}
+\setbeamertemplate{progress~bar~in~section~page}[empty]
+\setbeamertemplate{part~page}[progressbar/simple]
+ % \usebeamertemplate*{part~page}% activated automatically
+}
+
+\defbeamertemplate{section~frame}{gotham~simple}{
+\setbeamertemplate{background~canvas}[section/gotham]
+\setbeamercolor{frametitle}{
+use={frametitleSection, normal~text},
+bg=frametitleSection.fg,
+fg=normal~text.fg
+}
+\setbeamertemplate{progress~bar~in~section~page}[empty]
+\setbeamertemplate{section~page}[progressbar/simple]
+ % \usebeamertemplate*{section~page}% activated automatically
+}
+
+\defbeamertemplate{subsection~frame}{gotham~simple}{
+\setbeamertemplate{background~canvas}[subsection/gotham]
+\setbeamercolor{frametitle}{
+use={frametitleSection, normal~text},
+bg=frametitleSection.fg,
+fg=normal~text.fg
+}
+\setbeamertemplate{progress~bar~in~section~page}[empty]
+\setbeamertemplate{subsection~page}[progressbar/simple]
+ % \usebeamertemplate*{subsection~page}% activated automatically
+}
+
+\defbeamertemplate{subsubsection~frame}{gotham~simple}{
+\setbeamertemplate{background~canvas}[subsubsection/gotham]
+\setbeamercolor{frametitle}{
+use={frametitleSection, normal~text},
+bg=frametitleSection.fg,
+fg=normal~text.fg
+}
+\setbeamertemplate{progress~bar~in~section~page}[empty]
+\setbeamertemplate{subsubsection~page}[progressbar/simple]
+ % \usebeamertemplate*{subsubsection~page}% activated automatically
+}
+
+\defbeamertemplate{part~frame}{gotham~progressbar}{
+\setbeamertemplate{background~canvas}[part/gotham]
+\setbeamercolor{frametitle}{
+use={frametitleSection, normal~text},
+bg=frametitleSection.fg,
+fg=normal~text.fg
+}
+\setbeamertemplate{progress~bar~in~section~page}[display]
+\setbeamertemplate{part~page}[progressbar/simple]
+ % \usebeamertemplate*{part~page}% activated automatically
+}
+
+\defbeamertemplate{section~frame}{gotham~progressbar}{
+\setbeamertemplate{background~canvas}[section/gotham]
+\setbeamercolor{frametitle}{
+use={frametitleSection, normal~text},
+bg=frametitleSection.fg,
+fg=normal~text.fg
+}
+\setbeamertemplate{progress~bar~in~section~page}[display]
+\setbeamertemplate{section~page}[progressbar/simple]
+ % \usebeamertemplate*{section~page}% activated automatically
+}
+
+\defbeamertemplate{subsection~frame}{gotham~progressbar}{
+\setbeamertemplate{background~canvas}[subsection/gotham]
+\setbeamercolor{frametitle}{
+use={frametitleSection, normal~text},
+bg=frametitleSection.fg,
+fg=normal~text.fg
+}
+\setbeamertemplate{progress~bar~in~section~page}[display]
+\setbeamertemplate{subsection~page}[progressbar/simple]
+ % \usebeamertemplate*{subsection~page}% activated automatically
+}
+
+\defbeamertemplate{subsubsection~frame}{gotham~progressbar}{
+\setbeamertemplate{background~canvas}[subsubsection/gotham]
+\setbeamercolor{frametitle}{
+use={frametitleSection, normal~text},
+bg=frametitleSection.fg,
+fg=normal~text.fg
+}
+\setbeamertemplate{progress~bar~in~section~page}[display]
+\setbeamertemplate{subsubsection~page}[progressbar/simple]
+ % \usebeamertemplate*{subsubsection~page}% activated automatically
+}
+
+\defbeamertemplate{progress~bar~in~splitvert}{empty}{
+\vspace{-0.5ex}
+}
+
+\defbeamertemplate*{progress~bar~in~splitvert}{display}{
+\setlength{\gotham@progressonsectionpage}{
+\paperwidth * \ratio{\insertframenumber pt}{\inserttotalframenumber pt}
+}
+\begin{tikzpicture}
+\fill[bg] (0,0) rectangle (\paperwidth, \gotham@progressonsectionpage@linewidth);
+\fill[fg] (0,0) rectangle (\gotham@progressonsectionpage, \gotham@progressonsectionpage@linewidth);
+\end{tikzpicture}
+}
+
+\defbeamertemplate{part~page}{gotham~splitvert~progressbar/simple}{
+\ifx\beamer@frametitle\@empty
+\vspace*{-0.05\paperheight}
+\else %}{
+\vspace*{-0.165\paperheight}
+\fi %}
+{
+\usebeamercolor{frametitle}\colorlet{gotham@@tempColor}{bg}
+\begin{tikzpicture}[overlay, remember~picture]
+\fill[color=gotham@@tempColor] (current~page.north~west) rectangle ([shift = {(0, -0.45\paperheight)}] current~page.north~east);
+\end{tikzpicture}
+}
+
+\begin{minipage}[b][0.45\paperheight]{\textwidth}
+\centering
+\usebeamertemplate*{part~title}
+\end{minipage}
+\\[-0.1\baselineskip]
+\hspace*{-1.0cm}\noindent
+\usebeamertemplate*{progress~bar~in~splitvert}
+
+\newline
+\begin{minipage}[t][0.5\paperheight]{\textwidth}
+\end{minipage}
+}
+\defbeamertemplate{part~frame}{gotham~splitvert~progressbar}{
+\setbeamertemplate{background~canvas}[part/gotham]
+\setbeamercolor{part~title}{use=frametitle, fg=frametitle.fg}
+\setbeamertemplate{progress~bar~in~splitvert}[display]
+\setbeamertemplate{part~page}[gotham~splitvert~progressbar/simple]
+ % \usebeamertemplate*{part~page}% activated automatically
+}
+\defbeamertemplate{part~frame}{gotham~splitvert~simple}{
+\setbeamertemplate{background~canvas}[part/gotham]
+\setbeamercolor{part~title}{use=frametitle, fg=frametitle.fg}
+\setbeamertemplate{progress~bar~in~splitvert}[empty]
+\setbeamertemplate{part~page}[gotham~splitvert~progressbar/simple]
+ % \usebeamertemplate*{part~page}% activated automatically
+}
+
+\defbeamertemplate{section~page}{gotham~splitvert~progressbar/simple}{
+\ifx\beamer@frametitle\@empty
+\vspace*{-0.05\paperheight}
+\else %}{
+\vspace*{-0.165\paperheight}
+\fi %}
+{
+\usebeamercolor{frametitle}\colorlet{gotham@@tempColor}{bg}
+\begin{tikzpicture}[overlay, remember~picture]
+\fill[color=gotham@@tempColor] (current~page.north~west) rectangle ([shift = {(0, -0.45\paperheight)}] current~page.north~east);
+\end{tikzpicture}
+}
+
+\hspace*{\sectionhoffset}
+\begin{minipage}[b][0.45\paperheight]{\textwidth}
+\usebeamertemplate*{section~title}
+\end{minipage}
+\\[-0.1\baselineskip]
+\hspace*{-1.0cm}\noindent
+\usebeamertemplate*{progress~bar~in~splitvert}
+
+\newline
+\hspace*{\sectionhoffset}
+\begin{minipage}[t][0.5\paperheight]{\textwidth}
+\usebeamerfont{subsection~title}
+\usebeamercolor[bg]{frametitle}
+\end{minipage}
+}
+\defbeamertemplate{section~frame}{gotham~splitvert~progressbar}{
+\setbeamertemplate{background~canvas}[section/gotham]
+\setlength{\sectionhoffset}{1cm}
+\setbeamercolor{section~title}{use=frametitle, fg=frametitle.fg}
+\setbeamertemplate{progress~bar~in~splitvert}[display]
+\setbeamertemplate{section~page}[gotham~splitvert~progressbar/simple]
+ % \usebeamertemplate*{section~page}% activated automatically
+}
+\defbeamertemplate{section~frame}{gotham~splitvert~simple}{
+\setbeamertemplate{background~canvas}[section/gotham]
+\setlength{\sectionhoffset}{1cm}
+\setbeamercolor{section~title}{use=frametitle, fg=frametitle.fg}
+\setbeamertemplate{progress~bar~in~splitvert}[empty]
+\setbeamertemplate{section~page}[gotham~splitvert~progressbar/simple]
+ % \usebeamertemplate*{section~page}% activated automatically
+}
+
+\defbeamertemplate{subsection~page}{gotham~splitvert~progressbar/simple}{
+\ifx\beamer@frametitle\@empty
+\vspace*{-0.05\paperheight}
+\else %}{
+\vspace*{-0.165\paperheight}
+\fi %}
+{
+\usebeamercolor{frametitle}\colorlet{gotham@@tempColor}{bg}
+\begin{tikzpicture}[overlay, remember~picture]
+\fill[color=gotham@@tempColor] (current~page.north~west) rectangle ([shift = {(0, -0.45\paperheight)}] current~page.north~east);
+\end{tikzpicture}
+}
+
+\hspace*{\sectionhoffset}
+\begin{minipage}[b][0.45\paperheight]{\textwidth}
+\usebeamertemplate*{section~title}
+\end{minipage}
+\\[-0.1\baselineskip]
+\hspace*{-1.0cm}\noindent
+\usebeamertemplate*{progress~bar~in~splitvert}
+
+\newline
+\hspace*{\sectionhoffset}
+\begin{minipage}[t][0.5\paperheight]{\textwidth}
+\usebeamerfont{subsection~title}
+\usebeamercolor[bg]{frametitle}
+\usebeamertemplate*{subsection~title}
+\end{minipage}
+}
+\defbeamertemplate{subsection~frame}{gotham~splitvert~progressbar}{
+\setbeamertemplate{background~canvas}[subsection/gotham]
+\setlength{\sectionhoffset}{1cm}
+\setbeamercolor{section~title}{use=frametitle, fg=frametitle.fg}
+\setbeamercolor{subsection~title}{use=frametitle, fg=frametitle.bg}
+\setbeamertemplate{progress~bar~in~splitvert}[display]
+\setbeamertemplate{subsection~page}[gotham~splitvert~progressbar/simple]
+ % \usebeamertemplate*{subsection~page}% activated automatically
+}
+\defbeamertemplate{subsection~frame}{gotham~splitvert~simple}{
+\setbeamertemplate{background~canvas}[subsection/gotham]
+\setlength{\sectionhoffset}{1cm}
+\setbeamercolor{section~title}{use=frametitle, fg=frametitle.fg}
+\setbeamercolor{subsection~title}{use=frametitle, fg=frametitle.bg}
+\setbeamertemplate{progress~bar~in~splitvert}[empty]
+\setbeamertemplate{subsection~page}[gotham~splitvert~progressbar/simple]
+ % \usebeamertemplate*{subsection~page}% activated automatically
+}
+
+\defbeamertemplate{subsubsection~page}{gotham~splitvert~progressbar/simple}{
+\ifx\beamer@frametitle\@empty
+\vspace*{-0.05\paperheight}
+\else %}{
+\vspace*{-0.165\paperheight}
+\fi %}
+{
+\usebeamercolor{frametitle}\colorlet{gotham@@tempColor}{bg}
+\begin{tikzpicture}[overlay, remember~picture]
+\fill[color=gotham@@tempColor] (current~page.north~west) rectangle ([shift = {(0, -0.45\paperheight)}] current~page.north~east);
+\end{tikzpicture}
+}
+
+\hspace*{\sectionhoffset}
+\begin{minipage}[b][0.45\paperheight]{\textwidth}
+\usebeamertemplate*{section~title}
+\end{minipage}
+\\[-0.1\baselineskip]
+\hspace*{-1.0cm}\noindent
+\usebeamertemplate*{progress~bar~in~splitvert}
+
+\newline
+\hspace*{\sectionhoffset}
+\begin{minipage}[t][0.5\paperheight]{\textwidth}
+\usebeamerfont{subsubsection~title}
+\usebeamercolor[bg]{frametitle}
+\usebeamertemplate*{subsection~title}
+\par
+\usebeamertemplate*{subsubsection~title}
+\end{minipage}
+}
+\defbeamertemplate{subsubsection~frame}{gotham~splitvert~progressbar}{
+\setbeamertemplate{background~canvas}[subsubsection/gotham]
+\setlength{\sectionhoffset}{1cm}
+\setbeamercolor{section~title}{use=frametitle, fg=frametitle.fg}
+\setbeamercolor{subsection~title}{use=frametitle, fg=frametitle.bg}
+\setbeamercolor{subsubsection~title}{use=frametitle, fg=frametitle.bg}
+\setbeamertemplate{progress~bar~in~splitvert}[display]
+\setbeamertemplate{subsubsection~page}[gotham~splitvert~progressbar/simple]
+ % \usebeamertemplate*{subsubsection~page}% activated automatically
+}
+\defbeamertemplate{subsubsection~frame}{gotham~splitvert~simple}{
+\setbeamertemplate{background~canvas}[subsubsection/gotham]
+\setlength{\sectionhoffset}{1cm}
+\setbeamercolor{section~title}{use=frametitle, fg=frametitle.fg}
+\setbeamercolor{subsection~title}{use=frametitle, fg=frametitle.bg}
+\setbeamercolor{subsubsection~title}{use=frametitle, fg=frametitle.bg}
+\setbeamertemplate{progress~bar~in~splitvert}[empty]
+\setbeamertemplate{subsubsection~page}[gotham~splitvert~progressbar/simple]
+ % \usebeamertemplate*{subsubsection~page}% activated automatically
+}
+
+
+\defbeamertemplate{part~page}{gotham~progressvert}{
+\ifx\beamer@frametitle\@empty
+\vspace*{-0.05\paperheight}
+\else %}{
+\vspace*{-0.165\paperheight}
+\fi %}
+\setlength{\gotham@progressonsectionpage}{
+\paperheight * \ratio{\insertframenumber pt}{\inserttotalframenumber pt}
+}
+{
+\usebeamercolor{frametitle}\colorlet{gotham@@tempColor}{bg}
+\colorlet{gotham@@tempColorB}{fg}
+\begin{tikzpicture}[overlay, remember~picture]
+\fill[color=gotham@@tempColor]
+([shift={(0,0)}] current~page.north~west) --
+([shift={(0,-\gotham@progressonsectionpage)}] current~page.north~west) --
+([shift={(0,-\gotham@progressonsectionpage)}] current~page.north~east) --
+([shift={(0,0)}] current~page.north~east)
+--cycle;
+\node[color=gotham@@tempColorB, align=left, text~width=0.8\textwidth] at ([shift={(\sectionhoffset,0)}] current~page.center) {
+{\usebeamerfont{part~title}
+\partname \ \insertromanpartnumber
+\\[1.75ex]
+\insertpart
+}
+};
+
+\clip
+([shift={(0,0)}] current~page.south~west) --
+([shift={(0,\paperheight-\gotham@progressonsectionpage)}] current~page.south~west) --
+([shift={(0,\paperheight-\gotham@progressonsectionpage)}] current~page.south~east) --
+([shift={(0,0)}] current~page.south~east)
+--cycle;
+
+\fill[color=gotham@@tempColorB]
+([shift={(0,0)}]current~page.south~west) --
+([shift={(0,\paperheight-\gotham@progressonsectionpage)}] current~page.south~west) --
+([shift={(0,\paperheight-\gotham@progressonsectionpage)}] current~page.south~east) --
+([shift={(0,0)}] current~page.south~east)
+--cycle;
+\node[color=gotham@@tempColor, align=left, text~width=0.8\textwidth] at ([shift={(\sectionhoffset,0)}] current~page.center) {
+{\usebeamerfont{part~title}
+\partname \ \insertromanpartnumber
+\\
+\insertpart
+}
+};
+\end{tikzpicture}
+}
+}
+\defbeamertemplate{part~frame}{gotham~progressvert}{
+\setbeamertemplate{background~canvas}[part/gotham]
+\setlength{\sectionhoffset}{1cm}
+\setbeamertemplate{part~page}[gotham~progressvert]
+ % \usebeamertemplate*{section~page}% activated automatically
+}
+
+\defbeamertemplate{section~page}{gotham~progressvert}{
+\ifx\beamer@frametitle\@empty
+\vspace*{-0.05\paperheight}
+\else %}{
+\vspace*{-0.165\paperheight}
+\fi %}
+\setlength{\gotham@progressonsectionpage}{
+\paperheight * \ratio{\insertframenumber pt}{\inserttotalframenumber pt}
+}
+{
+\usebeamercolor{frametitle}\colorlet{gotham@@tempColor}{bg}
+\colorlet{gotham@@tempColorB}{fg}
+\begin{tikzpicture}[overlay, remember~picture]
+\fill[color=gotham@@tempColor]
+([shift={(0,0)}] current~page.north~west) --
+([shift={(0,-\gotham@progressonsectionpage)}] current~page.north~west) --
+([shift={(0,-\gotham@progressonsectionpage)}] current~page.north~east) --
+([shift={(0,0)}] current~page.north~east)
+--cycle;
+\node[color=gotham@@tempColorB, align=left, text~width=0.8\textwidth] at ([shift={(\sectionhoffset,0)}] current~page.center) {
+{\usebeamerfont{section~title}
+\insertsectionnumber.~
+\insertsectionhead}
+};
+
+\clip
+([shift={(0,0)}] current~page.south~west) --
+([shift={(0,\paperheight-\gotham@progressonsectionpage)}] current~page.south~west) --
+([shift={(0,\paperheight-\gotham@progressonsectionpage)}] current~page.south~east) --
+([shift={(0,0)}] current~page.south~east)
+--cycle;
+
+\fill[color=gotham@@tempColorB]
+([shift={(0,0)}]current~page.south~west) --
+([shift={(0,\paperheight-\gotham@progressonsectionpage)}] current~page.south~west) --
+([shift={(0,\paperheight-\gotham@progressonsectionpage)}] current~page.south~east) --
+([shift={(0,0)}] current~page.south~east)
+--cycle;
+\node[color=gotham@@tempColor, align=left, text~width=0.8\textwidth] at ([shift={(\sectionhoffset,0)}] current~page.center) {
+{\usebeamerfont{section~title}
+\insertsectionnumber.~
+\insertsectionhead}
+};
+\end{tikzpicture}
+}
+}
+\defbeamertemplate{section~frame}{gotham~progressvert}{
+\setbeamertemplate{background~canvas}[section/gotham]
+\setlength{\sectionhoffset}{1cm}
+\setbeamertemplate{section~page}[gotham~progressvert]
+ % \usebeamertemplate*{section~page}% activated automatically
+}
+
+\defbeamertemplate{subsection~page}{gotham~progressvert}{
+\ifx\beamer@frametitle\@empty
+\vspace*{-0.05\paperheight}
+\else %}{
+\vspace*{-0.165\paperheight}
+\fi %}
+\setlength{\gotham@progressonsectionpage}{
+\paperheight * \ratio{\insertframenumber pt}{\inserttotalframenumber pt}
+}
+{
+\usebeamercolor{frametitle}\colorlet{gotham@@tempColor}{bg}
+\colorlet{gotham@@tempColorB}{fg}
+\begin{tikzpicture}[overlay, remember~picture]
+\fill[color=gotham@@tempColor]
+([shift={(0,0)}] current~page.north~west) --
+([shift={(0,-\gotham@progressonsectionpage)}] current~page.north~west) --
+([shift={(0,-\gotham@progressonsectionpage)}] current~page.north~east) --
+([shift={(0,0)}] current~page.north~east)
+--cycle;
+\node[color=gotham@@tempColorB, align=left, text~width=0.8\textwidth] at ([shift={(\sectionhoffset,0)}] current~page.center) {
+{\usebeamerfont{section~title}
+\insertsectionnumber.~
+\insertsectionhead}
+\\
+{\usebeamerfont{subsection~title}
+\insertsectionnumber.\insertsubsectionnumber.~
+\insertsubsectionhead}
+};
+
+\clip
+([shift={(0,0)}] current~page.south~west) --
+([shift={(0,\paperheight-\gotham@progressonsectionpage)}] current~page.south~west) --
+([shift={(0,\paperheight-\gotham@progressonsectionpage)}] current~page.south~east) --
+([shift={(0,0)}] current~page.south~east)
+--cycle;
+
+\fill[color=gotham@@tempColorB]
+([shift={(0,0)}]current~page.south~west) --
+([shift={(0,\paperheight-\gotham@progressonsectionpage)}] current~page.south~west) --
+([shift={(0,\paperheight-\gotham@progressonsectionpage)}] current~page.south~east) --
+([shift={(0,0)}] current~page.south~east)
+--cycle;
+\node[color=gotham@@tempColor, align=left, text~width=0.8\textwidth] at ([shift={(\sectionhoffset,0)}] current~page.center) {
+{\usebeamerfont{section~title}
+\insertsectionnumber.~
+\insertsectionhead}
+\\
+{\usebeamerfont{subsection~title}
+\insertsectionnumber.\insertsubsectionnumber.~
+\insertsubsectionhead}
+};
+\end{tikzpicture}
+}
+}
+\defbeamertemplate{subsection~frame}{gotham~progressvert}{
+\setbeamertemplate{background~canvas}[subsection/gotham]
+\setlength{\sectionhoffset}{1cm}
+\setbeamertemplate{subsection~page}[gotham~progressvert]
+ % \usebeamertemplate*{subsection~page}% activated automatically
+}
+
+\defbeamertemplate{subsubsection~page}{gotham~progressvert}{
+\ifx\beamer@frametitle\@empty
+\vspace*{-0.05\paperheight}
+\else %}{
+\vspace*{-0.165\paperheight}
+\fi %}
+\setlength{\gotham@progressonsectionpage}{
+\paperheight * \ratio{\insertframenumber pt}{\inserttotalframenumber pt}
+}
+{
+\usebeamercolor{frametitle}\colorlet{gotham@@tempColor}{bg}
+\colorlet{gotham@@tempColorB}{fg}
+\begin{tikzpicture}[overlay, remember~picture]
+\fill[color=gotham@@tempColor]
+([shift={(0,0)}] current~page.north~west) --
+([shift={(0,-\gotham@progressonsectionpage)}] current~page.north~west) --
+([shift={(0,-\gotham@progressonsectionpage)}] current~page.north~east) --
+([shift={(0,0)}] current~page.north~east)
+--cycle;
+\node[color=gotham@@tempColorB, align=left, text~width=0.8\textwidth] at ([shift={(\sectionhoffset,0)}] current~page.center) {
+{\usebeamerfont{section~title}
+\insertsectionnumber.~
+\insertsectionhead}
+\\
+{\usebeamerfont{subsection~title}
+\insertsectionnumber.\insertsubsectionnumber.~
+\insertsubsectionhead}
+\\
+{\usebeamerfont{subsubsection~title}
+\insertsectionnumber.\insertsubsectionnumber.\insertsubsubsectionnumber.~
+\insertsubsubsectionhead}
+};
+
+\clip
+([shift={(0,0)}] current~page.south~west) --
+([shift={(0,\paperheight-\gotham@progressonsectionpage)}] current~page.south~west) --
+([shift={(0,\paperheight-\gotham@progressonsectionpage)}] current~page.south~east) --
+([shift={(0,0)}] current~page.south~east)
+--cycle;
+
+\fill[color=gotham@@tempColorB]
+([shift={(0,0)}]current~page.south~west) --
+([shift={(0,\paperheight-\gotham@progressonsectionpage)}] current~page.south~west) --
+([shift={(0,\paperheight-\gotham@progressonsectionpage)}] current~page.south~east) --
+([shift={(0,0)}] current~page.south~east)
+--cycle;
+\node[color=gotham@@tempColor, align=left, text~width=0.8\textwidth] at ([shift={(\sectionhoffset,0)}] current~page.center) {
+{\usebeamerfont{section~title}
+\insertsectionnumber.~
+\insertsectionhead}
+\\
+{\usebeamerfont{subsection~title}
+\insertsectionnumber.\insertsubsectionnumber.~
+\insertsubsectionhead}
+\\
+{\usebeamerfont{subsubsection~title}
+\insertsectionnumber.\insertsubsectionnumber.\insertsubsubsectionnumber.~
+\insertsubsubsectionhead}
+};
+\end{tikzpicture}
+}
+}
+\defbeamertemplate{subsubsection~frame}{gotham~progressvert}{
+\setbeamertemplate{background~canvas}[subsubsection/gotham]
+\setlength{\sectionhoffset}{1cm}
+\setbeamertemplate{subsubsection~page}[gotham~progressvert]
+ % \usebeamertemplate*{subsubsection~page}% activated automatically
+}
+
+%%%%
+\keys_define:nn { gotham / inner }{
+partframe~template .usage:n = { general },
+partframe~template .default:n = { gotham~progressbar },
+partframe~template .code:n = { \__gotham_set_template:nn{part~frame}{#1} }
+}
+\keys_define:nn { gotham / inner }
+{
+partframe~default .choice:,
+partframe~default .usage:n = { general },
+partframe~default .default:n = { true },
+
+partframe~default / true .code:n = { \__gotham_inner_enable_partpage: },
+partframe~default / on .code:n = { \__gotham_inner_enable_partpage: },
+partframe~default / enable .code:n = { \__gotham_inner_enable_partpage: },
+
+partframe~default / false .code:n = { \__gotham_inner_disable_partpage: },
+partframe~default / off .code:n = { \__gotham_inner_disable_partpage: },
+partframe~default / disable .code:n = { \__gotham_inner_disable_partpage: },
+
+partframe~default / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'#1'~is~unknown~for~the~(known)~option~'partframe~default',~so~being~ignored. }{helping~message: partframe~default / unknown} },
+}
+
+\keys_define:nn { gotham / inner }{
+sectionframe~template .usage:n = { general },
+sectionframe~template .default:n = { gotham~progressbar },
+sectionframe~template .code:n = { \__gotham_set_template:nn{section~frame}{#1} }
+}
+\keys_define:nn { gotham / inner }
+{
+sectionframe~default .choice:,
+sectionframe~default .usage:n = { general },
+sectionframe~default .default:n = { true },
+
+sectionframe~default / true .code:n = { \__gotham_inner_enable_sectionpage: },
+sectionframe~default / on .code:n = { \__gotham_inner_enable_sectionpage: },
+sectionframe~default / enable .code:n = { \__gotham_inner_enable_sectionpage: },
+
+sectionframe~default / false .code:n = { \__gotham_inner_disable_sectionpage: },
+sectionframe~default / off .code:n = { \__gotham_inner_disable_sectionpage: },
+sectionframe~default / disable .code:n = { \__gotham_inner_disable_sectionpage: },
+
+sectionframe~default / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'#1'~is~unknown~for~the~(known)~option~'sectionframe~default',~so~being~ignored. }{helping~message: sectionframe~default / unknown} },
+}
+
+\keys_define:nn { gotham / inner }{
+subsectionframe~template .usage:n = { general },
+subsectionframe~template .default:n = { gotham~progressbar },
+subsectionframe~template .code:n = { \__gotham_set_template:nn{subsection~frame}{#1} }
+}
+\keys_define:nn { gotham / inner }
+{
+subsectionframe~default .choice:,
+subsectionframe~default .usage:n = { general },
+subsectionframe~default .default:n = { true },
+
+subsectionframe~default / true .code:n = { \__gotham_inner_enable_subsectionpage: },
+subsectionframe~default / on .code:n = { \__gotham_inner_enable_subsectionpage: },
+subsectionframe~default / enable .code:n = { \__gotham_inner_enable_subsectionpage: },
+
+subsectionframe~default / false .code:n = { \__gotham_inner_disable_subsectionpage: },
+subsectionframe~default / off .code:n = { \__gotham_inner_disable_subsectionpage: },
+subsectionframe~default / disable .code:n = { \__gotham_inner_disable_subsectionpage: },
+
+subsectionframe~default / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'#1'~is~unknown~for~the~(known)~option~'subsectionframe~default',~so~being~ignored. }{helping~message: subsectionframe~default / unknown} },
+}
+
+\keys_define:nn { gotham / inner }{
+subsubsectionframe~template .usage:n = { general },
+subsubsectionframe~template .default:n = { gotham~progressbar },
+subsubsectionframe~template .code:n = { \__gotham_set_template:nn{subsubsection~frame}{#1} }
+}
+\keys_define:nn { gotham / inner }
+{
+subsubsectionframe~default .choice:,
+subsubsectionframe~default .usage:n = { general },
+subsubsectionframe~default .default:n = { true },
+
+subsubsectionframe~default / true .code:n = { \__gotham_inner_enable_subsubsectionpage: },
+subsubsectionframe~default / on .code:n = { \__gotham_inner_enable_subsubsectionpage: },
+subsubsectionframe~default / enable .code:n = { \__gotham_inner_enable_subsubsectionpage: },
+
+subsubsectionframe~default / false .code:n = { \__gotham_inner_disable_subsubsectionpage: },
+subsubsectionframe~default / off .code:n = { \__gotham_inner_disable_subsubsectionpage: },
+subsubsectionframe~default / disable .code:n = { \__gotham_inner_disable_subsubsectionpage: },
+
+subsubsectionframe~default / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'#1'~is~unknown~for~the~(known)~option~'subsubsectionframe~default',~so~being~ignored. }{helping~message: subsubsectionframe~default / unknown} },
+}
+
+%%%% Table of Content %%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\tikzset{section~number/.style={
+circle,
+fill=colorAlert,
+minimum~size=0.4em,
+text=colorAlert!10,
+inner~sep=1.5pt,
+},
+section/.style={
+draw=none,
+rectangle,
+minimum~height=1em,
+minimum~width=0.8\textwidth,
+text~width=0.8\textwidth,
+text=fg,
+align=left
+},
+subsection~number/.style={
+circle,
+fill=colorBackElement!50,
+inner~sep=0pt,
+minimum~size=0.15cm,
+},
+subsection/.style={
+draw=none,
+rectangle,
+minimum~height=1em,
+minimum~width=0.8\textwidth,
+text~width=0.8\textwidth,
+text=fg!80,
+align=left
+},
+subsubsection~number/.style={
+circle,
+fill=colorBackElement!50,
+inner~sep=0pt,
+minimum~size=0.06cm,
+},
+subsubsection/.style={
+draw=none,
+rectangle,
+minimum~height=1em,
+minimum~width=0.8\textwidth,
+text~width=0.8\textwidth,
+text=fg!80,
+align=left
+},
+}
+
+\defbeamertemplate{section~in~toc}{gotham~bullet}{
+\hspace*{0.4cm}\tikz[baseline=-0.5ex]\node[section~number]{\textbf{\small\inserttocsectionnumber}};
+\ \tikz[baseline=-0.5ex]\node[section]{\usebeamerfont*{toc~title} \inserttocsection};\\[-0.35cm]
+\hspace*{1.13cm}{\usebeamercolor*[fg]{footer} \rule{0.6\paperwidth}{0.2pt}\\\nointerlineskip}
+}
+\defbeamertemplate{subsection~in~toc}{gotham~bullet}{
+\hspace*{0.53cm}\tikz[baseline=-0.5ex]\node[subsection~number]{};
+\hspace*{0.5cm}\tikz[baseline=-0.5ex]\node[subsection]{\usebeamerfont*{toc~subtitle}\inserttocsubsection};\\[-0.2cm]
+}
+\defbeamertemplate{subsubsection~in~toc}{gotham~bullet}{
+\hspace*{0.58cm}\tikz[baseline=-0.5ex]\node[subsubsection~number]{};
+\hspace*{0.69cm}\tikz[baseline=-0.5ex]\node[subsubsection]{\usebeamerfont*{toc~subtitle}\inserttocsubsubsection};\\[-0.2cm]
+}
+\defbeamertemplate{section~in~toc~shaded}{gotham~bullet}{
+\hspace*{0.4cm}\tikz[baseline=-0.5ex]\node[section~number, fill=colorBackElement!40, text=background]{\usebeamerfont*{toc~subtitle}\textbf{\inserttocsectionnumber}};
+\ \tikz[baseline=-0.5ex]\node[section, text=colorExample!20]{\usebeamerfont*{toc~title} \inserttocsection};\\[-0.35cm]
+\hspace*{1.3cm}{\usebeamercolor*[fg]{footer} \rule{0.6\paperwidth}{0.2pt}\\\nointerlineskip}
+}
+\defbeamertemplate{subsection~in~toc~shaded}{gotham~bullet}{
+\hspace*{0.55cm}\tikz[baseline=-0.5ex]\node[subsection~number,fill=colorBackElement!20]{};
+\hspace*{0.5cm}\tikz[baseline=-0.5ex]\node[subsection, text=colorBackElement!20]{};\\[-0.2cm]
+}
+\defbeamertemplate{subsubsection~in~toc~shaded}{gotham~bullet}{
+\hspace*{0.58cm}\tikz[baseline=-0.5ex]\node[subsubsection~number,fill=colorBackElement!20]{};
+\hspace*{0.69cm}\tikz[baseline=-0.5ex]\node[subsubsection,text=colorBackElement!20]{\usebeamerfont*{toc~subtitle}\inserttocsubsubsection};\\[-0.2cm]
+}
+
+\defbeamertemplate{part~in~toc}{gotham~simple}{
+{{\inserttocpartnumber}.}~\inserttocpart
+\\
+}
+\defbeamertemplate{section~in~toc}{gotham~simple}{
+{{\inserttocsectionnumber}.}~\inserttocsection
+\\
+}
+\defbeamertemplate{subsection~in~toc}{gotham~simple}{
+\quad{{\inserttocsectionnumber}.\inserttocsubsectionnumber.}~\inserttocsubsection%
+\\
+}
+\defbeamertemplate{subsubsection~in~toc}{gotham~simple}{
+\qquad{{\inserttocsectionnumber}.\inserttocsubsectionnumber.\inserttocsubsubsectionnumber.}~\inserttocsubsubsection
+\\
+}
+
+\defbeamertemplate{background~canvas}{toc/gotham~simple}{
+\ifbeamercolorempty[bg]{standin}{}{
+\color{bg}\vrule width\paperwidth height\paperheight
+}
+}
+\defbeamertemplate{toc~page}{gotham~simple}{
+\setbeamertemplate{part~in~toc}[gotham~simple]
+\setbeamertemplate{section~in~toc}[gotham~simple]
+\setbeamertemplate{subsection~in~toc}[gotham~simple]
+\setbeamertemplate{subsubsection~in~toc}[gotham~simple]
+\setbeamertemplate{background~canvas}[toc/gotham~simple]
+}
+\defbeamertemplate{toc~page}{gotham~bullet}{
+\setbeamertemplate{part~in~toc}[gotham~bullet]
+\setbeamertemplate{section~in~toc}[gotham~bullet]
+\setbeamertemplate{subsection~in~toc}[gotham~bullet]
+\setbeamertemplate{subsubsection~in~toc}[gotham~bullet]
+\setbeamertemplate{background~canvas}[toc/gotham~simple]
+}
+
+%%%%%%
+\newenvironment{tocenv}{
+\usebeamertemplate{toc~page}
+}{}
+\__gotham_add_beamerframe_key:n {toc}
+
+\defbeamertemplate{background~canvas}{toc~part~gotham}{
+\ifbeamercolorempty[bg]{normal~text}{}{\color{bg}\vrule width\paperwidth height\paperheight}
+}
+\defbeamertemplate{background~canvas}{toc~section~gotham}{
+\ifbeamercolorempty[bg]{normal~text}{}{\color{bg}\vrule width\paperwidth height\paperheight}
+}
+\defbeamertemplate{background~canvas}{toc~subsection~gotham}{
+\ifbeamercolorempty[bg]{normal~text}{}{\color{bg}\vrule width\paperwidth height\paperheight}
+}
+
+\defbeamertemplate{toc~part~frame}{gotham~simple}{
+\setbeamertemplate{part~in~toc}[gotham~simple]
+\setbeamertemplate{section~in~toc}[gotham~simple]
+\setbeamertemplate{subsection~in~toc}[gotham~simple]
+\setbeamertemplate{subsubsection~in~toc}[gotham~simple]
+\setbeamertemplate{background~canvas}[toc~part~gotham]
+\setbeamertemplate{frametitle}[toc~gotham]
+}
+\defbeamertemplate{toc~section~frame}{gotham~simple}{
+\setbeamertemplate{part~in~toc}[gotham~simple]
+\setbeamertemplate{section~in~toc}[gotham~simple]
+\setbeamertemplate{subsection~in~toc}[gotham~simple]
+\setbeamertemplate{subsubsection~in~toc}[gotham~simple]
+\setbeamertemplate{background~canvas}[toc~section~gotham]
+\setbeamertemplate{frametitle}[toc~gotham]%
+}
+\defbeamertemplate{toc~subsection~frame}{gotham~simple}{
+\setbeamertemplate{part~in~toc}[gotham~simple]
+\setbeamertemplate{section~in~toc}[gotham~simple]
+\setbeamertemplate{subsection~in~toc}[gotham~simple]
+\setbeamertemplate{subsubsection~in~toc}[gotham~simple]
+\setbeamertemplate{background~canvas}[toc~subsection~gotham]
+\setbeamertemplate{frametitle}[toc~gotham]
+}
+
+\defbeamertemplate{toc~part~frame}{gotham~bullet}{
+\setbeamertemplate{part~in~toc}[gotham~bullet]
+\setbeamertemplate{section~in~toc}[gotham~bullet]
+\setbeamertemplate{subsection~in~toc}[gotham~bullet]
+\setbeamertemplate{subsubsection~in~toc}[gotham~bullet]
+\setbeamertemplate{background~canvas}[toc~part~gotham]
+\setbeamertemplate{frametitle}[toc~gotham]
+}
+\defbeamertemplate{toc~section~frame}{gotham~bullet}{
+\setbeamertemplate{part~in~toc}[gotham~bullet]
+\setbeamertemplate{section~in~toc}[gotham~bullet]
+\setbeamertemplate{subsection~in~toc}[gotham~bullet]
+\setbeamertemplate{subsubsection~in~toc}[gotham~bullet]
+\setbeamertemplate{background~canvas}[toc~section~gotham]
+\setbeamertemplate{frametitle}[toc~gotham]%
+}
+\defbeamertemplate{toc~subsection~frame}{gotham~bullet}{
+\setbeamertemplate{part~in~toc}[gotham~bullet]
+\setbeamertemplate{section~in~toc}[gotham~bullet]
+\setbeamertemplate{subsection~in~toc}[gotham~bullet]
+\setbeamertemplate{subsubsection~in~toc}[gotham~bullet]
+\setbeamertemplate{background~canvas}[toc~subsection~gotham]
+\setbeamertemplate{frametitle}[toc~gotham]
+}
+
+%%%%%%
+\bool_new:N \l_gotham_tocpartframe
+\bool_set_false:N \l_gotham_tocpartframe
+\define@key{beamerframe}{tocpart}[true]{
+\bool_set_true:N \l_gotham_tocpartframe
+\begingroup
+\usebeamertemplate{toc~part~frame}
+}
+\apptocmd{\beamer@reseteecodes}{
+\bool_if:NTF \l_gotham_tocpartframe {
+\endgroup
+\bool_set_false:N \l_gotham_tocpartframe
+}{}
+}{}{}
+
+%%%%%%
+\bool_new:N \l_gotham_tocsectionframe
+\bool_set_false:N \l_gotham_tocsectionframe
+\define@key{beamerframe}{tocsec}[true]{
+\bool_set_true:N \l_gotham_tocsectionframe
+\begingroup
+\usebeamertemplate{toc~section~frame}
+}
+\apptocmd{\beamer@reseteecodes}{
+\bool_if:NTF \l_gotham_tocsectionframe {
+\endgroup
+\bool_set_false:N \l_gotham_tocsectionframe
+}{}
+}{}{}
+
+%%%%%%
+\bool_new:N \l_gotham_tocsubsectionframe
+\bool_set_false:N \l_gotham_tocsubsectionframe
+\define@key{beamerframe}{tocsubsec}[true]{
+\bool_set_true:N \l_gotham_tocsubsectionframe
+\begingroup
+\usebeamertemplate{toc~subsection~frame}
+}
+\apptocmd{\beamer@reseteecodes}{
+\bool_if:NTF \l_gotham_tocsubsectionframe {
+\endgroup
+\bool_set_false:N \l_gotham_tocsubsectionframe
+}{}
+}{}{}
+
+%%%%%%
+\bool_new:N \l_gotham_tocsubsubsectionframe
+\bool_set_false:N \l_gotham_tocsubsubsectionframe
+\define@key{beamerframe}{tocsubsubsec}[true]{
+\bool_set_true:N \l_gotham_tocsubsubsectionframe
+\begingroup
+\usebeamertemplate{toc~subsubsection~frame}
+}
+\apptocmd{\beamer@reseteecodes}{
+\bool_if:NTF \l_gotham_tocsubsubsectionframe {
+\endgroup
+\bool_set_false:N \l_gotham_tocsubsubsectionframe
+}{}
+}{}{}
+
+%%%%
+\keys_define:nn { gotham / inner }
+{
+tocframe~template .usage:n = { general },
+tocframe~template .default:n = { gotham~bullet },
+tocframe~template .code:n = { \__gotham_set_template:nn{toc~page}{#1} }
+}
+
+\keys_define:nn { gotham / inner }{
+parttocframe~template .usage:n = { general },
+parttocframe~template .default:n = { gotham~simple },
+parttocframe~template .code:n = { \__gotham_set_template:nn{toc~part~frame}{#1} }
+}
+\keys_define:nn { gotham / inner }
+{
+parttocframe~default .choice:,
+parttocframe~default .usage:n = { general },
+parttocframe~default .default:n = { true },
+
+parttocframe~default / true .code:n = { \booltrue{partContent} },
+parttocframe~default / on .code:n = { \booltrue{partContent} },
+parttocframe~default / enable .code:n = { \booltrue{partContent} },
+
+parttocframe~default / false .code:n = { \boolfalse{partContent} },
+parttocframe~default / off .code:n = { \boolfalse{partContent} },
+parttocframe~default / disable .code:n = { \boolfalse{partContent} },
+
+parttocframe~default / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'#1'~is~unknown~for~the~(known)~option~'parttocframe~default',~so~being~ignored. }{helping~message: parttocframe~default / unknown} },
+}
+
+\keys_define:nn { gotham / inner }{
+sectiontocframe~template .usage:n = { general },
+sectiontocframe~template .default:n = { gotham~simple },
+sectiontocframe~template .code:n = { \__gotham_set_template:nn{toc~section~frame}{#1} }
+}
+\keys_define:nn { gotham / inner }
+{
+sectiontocframe~default .choice:,
+sectiontocframe~default .usage:n = { general },
+sectiontocframe~default .default:n = { true },
+
+sectiontocframe~default / true .code:n = { \booltrue{sectionContent} },
+sectiontocframe~default / on .code:n = { \booltrue{sectionContent} },
+sectiontocframe~default / enable .code:n = { \booltrue{sectionContent} },
+
+sectiontocframe~default / false .code:n = { \boolfalse{sectionContent} },
+sectiontocframe~default / off .code:n = { \boolfalse{sectionContent} },
+sectiontocframe~default / disable .code:n = { \boolfalse{sectionContent} },
+
+sectiontocframe~default / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'#1'~is~unknown~for~the~(known)~option~'sectiontocframe~default',~so~being~ignored. }{helping~message: sectiontocframe~default / unknown} },
+}
+
+\keys_define:nn { gotham / inner }{
+subsectiontocframe~template .usage:n = { general },
+subsectiontocframe~template .default:n = { gotham~simple },
+subsectiontocframe~template .code:n = { \__gotham_set_template:nn{toc~subsection~frame}{#1} }
+}
+\keys_define:nn { gotham / inner }
+{
+subsectiontocframe~default .choice:,
+subsectiontocframe~default .usage:n = { general },
+subsectiontocframe~default .default:n = { true },
+
+subsectiontocframe~default / true .code:n = { \booltrue{subsectionContent} },
+subsectiontocframe~default / on .code:n = { \booltrue{subsectionContent} },
+subsectiontocframe~default / enable .code:n = { \booltrue{subsectionContent} },
+
+subsectiontocframe~default / false .code:n = { \boolfalse{subsectionContent} },
+subsectiontocframe~default / off .code:n = { \boolfalse{subsectionContent} },
+subsectiontocframe~default / disable .code:n = { \boolfalse{subsectionContent} },
+
+subsectiontocframe~default / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'#1'~is~unknown~for~the~(known)~option~'subsectiontocframe~default',~so~being~ignored. }{helping~message: subsectiontocframe~default / unknown} },
+}
+
+%% Environments styles %%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newlength{\gotham@blocksep}
+\newlength{\gotham@blockadjust}
+\setlength{\gotham@blocksep}{0.75ex}
+\setlength{\gotham@blockadjust}{0.25ex}
+\providecommand{\gotham@strut}{
+\vphantom{ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz (/)}
+}
+
+\newlength{\gotham@parskip}
+\setlength{\gotham@parskip}{0.5em}
+\setlength{\parskip}{\gotham@parskip}
+\linespread{1.15}
+
+\newcommand{\gotham@block}[1]{
+\par\vskip\medskipamount
+\setlength{\parskip}{0pt}
+
+\ifbeamercolorempty[bg]{block~title#1}{%
+\begin{beamercolorbox}[rightskip=0pt~plus~4em]{block~title#1}
+}{
+\ifbeamercolorempty[bg]{block~title}{
+\begin{beamercolorbox}[rightskip=0pt~plus~4em]{block~title#1}
+}
+{
+\begin{beamercolorbox}[
+sep=\dimexpr\gotham@blocksep-\gotham@blockadjust\relax,
+leftskip=\gotham@blockadjust,
+rightskip=\dimexpr\gotham@blockadjust~plus~4em\relax,
+]{block~title#1}
+}
+}
+\usebeamerfont*{block~title#1}
+\gotham@strut
+\insertblocktitle
+\gotham@strut
+\end{beamercolorbox}
+\nointerlineskip
+\ifbeamercolorempty[bg]{block~body#1}{
+\begin{beamercolorbox}[vmode]{block~body#1}
+}{
+\ifbeamercolorempty[bg]{block~body}{
+\begin{beamercolorbox}[vmode]{block~body#1}
+}{
+\begin{beamercolorbox}[sep=\gotham@blocksep, vmode]{block~body#1}
+\vspace{-\gotham@parskip}
+}
+}
+\usebeamerfont{block~body#1}
+\setlength{\parskip}{\gotham@parskip}
+}
+
+%%%%
+
+%%%%
+\defbeamertemplate*{itemize~item}{gotham}{%\textbullet}
+\Large
+\setbeamertemplate{itemize~item}[circle]
+\usebeamertemplate{itemize~item}
+}
+\defbeamertemplate*{itemize~subitem}{gotham}{%$\blacktriangleright$
+\scriptsize
+\setbeamertemplate{itemize~subitem}[triangle]
+\usebeamertemplate{itemize~subitem}
+}
+\defbeamertemplate*{itemize~subsubitem}{gotham}{%square or -
+\Tiny
+$\blacksquare$ % \textbf{-}
+}
+
+%% TRY: enumitem package, enumitem and beamer are incompatible.
+%% I tried to redefine everything to make them compatible, but it breaks the [alert] environment... So, I gave up.
+
+
+%%%%%%
+\defbeamertemplate*{caption~label~separator}{gotham}{:~}
+\setbeamertemplate{caption}[numbered]
+\defbeamertemplate*{footnote}{gotham}{
+\parindent~0em\noindent
+\raggedright
+\usebeamercolor{footnote}\hbox~to~0.8em{\hfil\insertfootnotemark}\insertfootnotetext\par
+}
+
+\keys_set:nn { gotham / inner } {
+title~page,
+watermark~template, watermark~default,
+standout~template, standin~template,
+partframe~template, partframe~default,
+sectionframe~template, sectionframe~default,
+subsectionframe~template, subsectionframe~default,
+subsubsectionframe~template, subsubsectionframe~default,
+tocframe~template,
+parttocframe~template, parttocframe~default,
+sectiontocframe~template, sectiontocframe~default,
+subsectiontocframe~template, subsectiontocframe~default,
+}
+
+\ProcessKeyOptions[ gotham / inner ]
+
+%%
+%% Adapted from classic "A model .dtx file" by Joseph Wright
+%% https://www.texdev.net/2009/10/06/a-model-dtx-file/
+%%
+%% End of file `beamerinnerthemegotham.sty'.
diff --git a/Master/texmf-dist/tex/latex/beamertheme-gotham/beamerouterthemegotham.sty b/Master/texmf-dist/tex/latex/beamertheme-gotham/beamerouterthemegotham.sty
new file mode 100644
index 00000000000..c391be96919
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/beamertheme-gotham/beamerouterthemegotham.sty
@@ -0,0 +1,2173 @@
+%%
+%% This is file `beamerouterthemegotham.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% gotham.dtx (with options: `outer')
+%%
+%% Copyright (C) 2023-20** by Romain NOËL <romainoel@free.fr>
+%%
+%% 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 Romain NOËL.
+%% Contributors: Romain NOËL (2023-20**)
+%%
+\ProvidesExplPackage{beamerouterthemegotham}{2024/09/20}{1.1.0.b}{gotham outer theme}
+\RequirePackage{expl3}
+\RequirePackage{xfp}
+\RequirePackage{calc}
+\RequirePackage{tikz}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%% OUTER %%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\@ifundefined{\string\color@colorProgBar}{
+\providebool{darkBG} \boolfalse{darkBG}
+\providebool{transparentBG} \booltrue{transparentBG}
+\colorlet{colorBG}{white}
+\colorlet{colorFG}{black}
+\colorlet{colorFrametitle}{purple}
+\colorlet{colorStandout}{purple}
+\colorlet{colorStandin}{purple}
+\colorlet{colorTitlepage}{purple}
+\colorlet{colorFiligrane}{gray}
+\colorlet{colorBackElement}{gray}
+\colorlet{colorProgBar}{orange}
+\colorlet{colorAlert}{red}
+\colorlet{colorExample}{green}
+\colorlet{colorFrametitle}{purple}
+\colorlet{colorTitlepage}{purple}
+\setbeamercolor{progress~bar}{
+use=alerted~text,
+fg=colorProgBar,
+bg=alerted~text.fg!50!black!30
+}
+\setbeamercolor{progress~bar~in~head/foot}{%
+use=progress~bar,
+parent=progress~bar
+}
+\setbeamercolor{progress~bar~in~part~page}{
+use=progress~bar,
+parent=progress~bar
+}
+\setbeamercolor{progress~bar~in~section~page}{
+use=progress~bar,
+parent=progress~bar
+}
+\setbeamercolor{progress~bar~in~splitvert}{
+use=progress~bar,
+parent=progress~bar
+}
+\setbeamercolor{frametitleSection}{use=primary~palette, bg=, fg=primary~palette.bg}
+\setbeamercolor{standout}{use=primary~palette, bg=colorStandout, fg=primary~palette.bg}
+\setbeamercolor{standin}{use=normal~text, bg=colorStandin, fg=normal~text.fg}
+\setbeamercolor{section~in~toc}{use=normal~text, parent=normal~text,}
+\setbeamercolor{subsection~in~toc}{use=normal~text, parent=normal~text,}
+\setbeamercolor{subsubsection~in~toc}{use=normal~text, parent=normal~text,}
+}{
+}
+
+%%%%%%
+\prop_if_exist:NTF \l__gotham_template_name_prop
+{}{
+\prop_new:N \l__gotham_template_name_prop
+}
+
+\seq_if_exist:NTF \l__gotham_tmpa_seq
+{}{
+\seq_new:N \l__gotham_tmpa_seq
+}
+\tl_if_exist:NTF \l__gotham_tmpa_tl
+{}{
+\tl_new:N \l__gotham_tmpa_tl
+}
+\tl_if_exist:NTF \l__gotham_tmpb_tl
+{}{
+\tl_new:N \l__gotham_tmpb_tl
+}
+
+\cs_if_exist:NTF \__gotham_set_prop_template:nn {}{
+\cs_new_protected:Nn \__gotham_set_prop_template:nn
+{
+\tl_if_in:nnTF { #1 } { / }
+{
+\seq_set_split:Nnn \l__gotham_tmpa_seq { / } { #1 }
+\tl_set:Nn \l__gotham_tmpa_tl { \seq_item:Nn \l__gotham_tmpa_seq { 1 } }
+\tl_set:Nn \l__gotham_tmpb_tl { \seq_item:Nn \l__gotham_tmpa_seq { 2 } }
+\cs_if_exist:cTF {beamer@@tmpop@\exp_not:V \l__gotham_tmpa_tl @\exp_not:V \l__gotham_tmpb_tl /#2} {
+\prop_put:Nnn \l__gotham_template_name_prop {#1} {#2}
+}{
+\PackageError{beamerthemegotham}
+{The~beamer~template~named~'\l__gotham_tmpa_tl'~with~the~option~'\l__gotham_tmpb_tl/#2'~does~not~exist}
+{helping~message}
+}
+}{% false -> error
+\PackageError{beamerthemegotham}
+{
+When~using~'\c_backslash_str\cs_to_str:N \__gotham_set_prop_template'~the~first~argument~should~contain~a~'/'~to~respect~the~naming~convention~used~(Template/what/Who~name),~but~you~gave~'#1'.~
+As~example:~if~'\c_backslash_str defbeamertemplate{background}{watermark/gotham~draft}'...,~then~use~'\c_backslash_str\cs_to_str:N \__gotham_set_prop_template{background/watermark}{gotham~draft}'
+}{helping~message}
+}
+}
+}
+
+\seq_if_exist:NTF \l__gotham_frameoption_tmp_seq {}{
+\seq_new:N \l__gotham_frameoption_tmp_seq
+}
+
+\cs_if_exist:NTF \__gotham_add_beamerframe_key:n {}{
+
+\cs_new_protected:Nn \__gotham_add_beamerframe_key:n {
+\define@key{beamerframe}{ #1 }[true]{
+\begin{#1env}
+\seq_put_left:Nn \l__gotham_frameoption_tmp_seq { \end{#1env} }
+}
+}
+
+\apptocmd{\beamer@reseteecodes}{
+\seq_use:Nn \l__gotham_frameoption_tmp_seq {}
+\seq_clear:N \l__gotham_frameoption_tmp_seq
+}{}{}
+}
+
+%%%%%%
+\cs_if_exist:NTF \__gotham_set_template:nn {}{
+
+\cs_new_protected:Nn \__gotham_set_template:nn
+{
+\cs_if_exist:cTF {beamer@@tmpop@#1@#2} {
+\setbeamertemplate{#1}[#2]
+}{
+\PackageError{beamerinnerthemegotham}
+{The~beamer~template~named~'#1'~with~the~option~'#2'~does~not~exist}
+{helping~message unknown setbeamertemplate option}
+}
+}
+}
+
+%%% Sidebars %%%
+%%%%%%%%%%%%%%%%
+
+%%%%%%
+\newlength{\sidebarRightHOffset}
+\setlength{\sidebarRightHOffset}{-2.5ex}
+\newlength{\sidebarLeftHOffset}
+\setlength{\sidebarLeftHOffset}{+0.5ex}
+
+%%%%%%
+\newcommand{\gothamRightFiligrane}{
+
+}
+\newcommand{\gothamLeftFiligrane}{
+}
+
+\defbeamertemplate{sidebar~right}{default/beamer}{
+\vfill
+\llap{\insertlogo\hskip0.1cm}
+\vskip2pt
+\llap{\usebeamertemplate***{navigation~symbols}\hskip0.1cm}
+\vskip2pt
+}
+\defbeamertemplate{sidebar~right}{default/empty}{}
+\defbeamertemplate{sidebar~canvas~right}{default/empty}{}
+\defbeamertemplate{sidebar~canvas~right}{default/gotham~filigrane}{
+\hspace*{\sidebarRightHOffset}
+\gothamRightFiligrane
+}
+\defbeamertemplate{sidebar~left}{default/empty}{}
+\defbeamertemplate{sidebar~canvas~left}{default/empty}{}
+\defbeamertemplate{sidebar~canvas~left}{default/gotham~filigrane}{
+\hspace*{\sidebarLeftHOffset}
+\gothamLeftFiligrane
+}
+\prop_put:Nnn \l__gotham_template_name_prop {sidebar~canvas~left/default} {gotham~filigrane}
+\prop_put:Nnn \l__gotham_template_name_prop {sidebar~canvas~right/default} {gotham~filigrane}
+\prop_put:Nnn \l__gotham_template_name_prop {sidebar~left/default} {empty}
+\prop_put:Nnn \l__gotham_template_name_prop {sidebar~right/default} {beamer}
+
+%%%%%%
+\bool_new:N \l_gotham_defaultEdging
+\bool_set_false:N \l_gotham_defaultEdging
+\BeforeBeginEnvironment{frame}{
+\bool_if:NTF \l_gotham_defaultEdging {
+\setbeamertemplate{sidebar~canvas~left}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~canvas~left/default}]
+\setbeamertemplate{sidebar~canvas~right}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~canvas~right/default}]
+}{
+\setbeamertemplate{sidebar~canvas~left}[default/empty]
+\setbeamertemplate{sidebar~canvas~right}[default/empty]
+}
+}
+
+%%%%%%
+\newenvironment{edgingenv}{
+\setbeamertemplate{sidebar~canvas~left}[
+default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~canvas~left/default}
+]
+\setbeamertemplate{sidebar~canvas~right}[
+default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~canvas~right/default}
+]
+}{}
+\__gotham_add_beamerframe_key:n {edging}
+
+%%%%%%
+\newenvironment{noedgingenv}{
+\setbeamertemplate{sidebar~canvas~left}[default/empty]
+\setbeamertemplate{sidebar~canvas~right}[default/empty]
+}{}
+\__gotham_add_beamerframe_key:n {noedging}
+
+%%%%
+\keys_define:nn { gotham / outer }
+{
+sidebar~canvas~right~template .usage:n = { general },
+sidebar~canvas~right~template .default:n = { gotham~filigrane },
+sidebar~canvas~right~template .code:n = { \__gotham_set_prop_template:nn{sidebar~canvas~right/default}{#1} },
+}
+\keys_define:nn { gotham / outer }
+{
+sidebar~canvas~left~template .usage:n = { general },
+sidebar~canvas~left~template .default:n = { gotham~filigrane },
+sidebar~canvas~left~template .code:n = { \__gotham_set_prop_template:nn{sidebar~canvas~left/default}{#1} },
+}
+\keys_define:nn { gotham / outer }{
+edging~default .choice:,
+edging~default .usage:n = { general },
+edging~default .default:n = { false },
+
+edging~default / true .code:n = { \bool_set_true:N \l_gotham_defaultEdging },
+edging~default / on .code:n = { \bool_set_true:N \l_gotham_defaultEdging },
+edging~default / enable .code:n = { \bool_set_true:N \l_gotham_defaultEdging },
+
+edging~default / false .code:n = { \bool_set_false:N \l_gotham_defaultEdging },
+edging~default / off .code:n = { \bool_set_false:N \l_gotham_defaultEdging },
+edging~default / disable .code:n = { \bool_set_false:N \l_gotham_defaultEdging },
+
+edging~default / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'#1'~is~unknown~for~the~(known)~option~'edging~default',~so~being~ignored. }{helping~message: edging~default / unknown} },
+}
+
+%%% Navigation \& Logo %%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%
+\defbeamertemplate*{navigation~symbols}{empty}{}
+
+%%%%%%
+
+\defbeamertemplate{logo}{empty}{}
+
+%%%%%%
+\newenvironment{nologoenv}{
+\setbeamertemplate{logo}[empty]
+}{}
+\__gotham_add_beamerframe_key:n {nologo}
+
+%%% Headline \& Frametitle %%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%% Headline %%%
+
+\defbeamertemplate{headline}{default/gotham}{}
+\prop_put:Nnn \l__gotham_template_name_prop {headline/default} {gotham}
+
+\defbeamertemplate{headline}{default/gotham~section}{
+\begin{beamercolorbox}[wd=1.0\paperwidth, ht=2.5ex, dp=1.4ex, left]{headfoot}
+\usebeamerfont{section~in~head/foot}\hspace*{3.5ex}
+\usebeamertemplate{section~in~head/foot}
+\end{beamercolorbox}
+}
+
+%%% Frametitle %%%
+
+%%%%%%
+\newlength{\gotham@frametitle@toppadding}
+\setlength{\gotham@frametitle@toppadding}{2.2ex}
+\newlength{\gotham@frametitle@bottompadding}
+\setlength{\gotham@frametitle@bottompadding}{2.2ex}
+\newlength{\gotham@frametitle@leftpadding}
+\setlength{\gotham@frametitle@leftpadding}{2.2ex}
+\newlength{\gotham@frametitle@rightpadding}
+\setlength{\gotham@frametitle@rightpadding}{2.2ex}
+\providecommand{\gotham@strut}{
+\vphantom{ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz (/)}
+}
+
+\newcommand{\gotham@frametitlestrut@start}{
+\rule{0pt}{\gotham@frametitle@toppadding +
+\totalheightof{
+\ifcsdef{gotham@frametitleformat}{\gotham@frametitleformat{X}}{X}
+}
+}
+}
+\newcommand{\gotham@frametitlestrut@end}{
+\rule[-\gotham@frametitle@bottompadding]{0pt}{\gotham@frametitle@bottompadding}
+}
+
+%%%%%%
+\newcommand{\gothamInstituteLogoSquare}[1][4ex]{
+}
+\defbeamertemplate{includeLogo}{default/gotham~square}{
+\gothamInstituteLogoSquare
+}
+\prop_put:Nnn \l__gotham_template_name_prop {includeLogo/default} {gotham~square}
+
+\defbeamertemplate{includeLogo}{default/gotham~circle}{
+\gothamProgressCircle
+}
+
+\defbeamertemplate{instituteLogo}{default/gotham}{
+\raisebox{0pt}[0pt][0pt]{
+\raisebox{.5\fontcharht\font`E-0.5\height}{
+\setbeamertemplate{includeLogo}[default/\prop_item:Nn \l__gotham_template_name_prop {includeLogo/default}]
+\usebeamertemplate{includeLogo}
+}
+}
+}
+\prop_put:Nnn \l__gotham_template_name_prop {instituteLogo/default} {gotham}
+
+%%%%%%
+\newcommand{\gothamFrameSubtitleSep}{
+\ ---~
+}
+
+%%%%%%
+\newlength{\gothamFramesubtitleStrutend}
+\setlength{\gothamFramesubtitleStrutend}{0pt}
+
+\defbeamertemplate{frametitle}{default/gotham~subsameline}{
+\nointerlineskip
+\begin{beamercolorbox}[
+wd=\paperwidth,
+sep=0pt,
+leftskip=\gotham@frametitle@leftpadding,
+rightskip=\gotham@frametitle@rightpadding,
+]{frametitle}
+\gotham@frametitlestrut@start
+\insertframetitle
+\ifx\insertframesubtitle\@empty
+%% if subtitle to the frame is empty
+\else
+%% if not empty: add subtitle
+{\usebeamerfont{framesubtitle}\usebeamercolor[fg]{framesubtitle}\gothamFrameSubtitleSep \insertframesubtitle}
+\vspace*{\gothamFramesubtitleStrutend}
+\fi
+\nolinebreak
+%% Add logo
+\hfill{
+\setbeamertemplate{instituteLogo}[default/\prop_item:Nn \l__gotham_template_name_prop {instituteLogo/default}]
+\usebeamertemplate{instituteLogo}
+}
+\gotham@frametitlestrut@end
+\end{beamercolorbox}
+}
+\prop_put:Nnn \l__gotham_template_name_prop {frametitle/default} {gotham~subsameline}
+
+\dim_new:N \l__gotham_framesubtitle_subnewline_strutend_dim
+\defbeamertemplate{framesubtitle}{default/gotham~subnewline}{
+\nointerlineskip
+\begin{beamercolorbox}[
+wd=\paperwidth,
+sep=0pt,
+leftskip=\gotham@frametitle@leftpadding,
+rightskip=\gotham@frametitle@rightpadding,
+]{frametitle}
+\raisebox{0pt}[0pt][0pt]{
+\raisebox{-0.3ex}{
+{ \usebeamerfont{framesubtitle}\usebeamercolor[fg]{framesubtitle}\insertframesubtitle}
+}
+}
+\dim_set:Nn \l__gotham_framesubtitle_subnewline_strutend_dim {1.ex+\gothamFramesubtitleStrutend}
+\vspace{\l__gotham_framesubtitle_subnewline_strutend_dim}
+\end{beamercolorbox}
+}
+\prop_put:Nnn \l__gotham_template_name_prop {framesubtitle/default} {gotham~subnewline}
+
+\defbeamertemplate{frametitle}{default/gotham~subnewline}{
+\nointerlineskip
+\begin{beamercolorbox}[
+wd=\paperwidth,
+sep=0pt,
+leftskip=\gotham@frametitle@leftpadding,
+rightskip=\gotham@frametitle@rightpadding,
+]{frametitle}
+\gotham@frametitlestrut@start
+\insertframetitle
+\nolinebreak
+\hfill{
+\setbeamertemplate{instituteLogo}[default/\prop_item:Nn \l__gotham_template_name_prop {instituteLogo/default}]
+\usebeamertemplate{instituteLogo}
+}
+\gotham@frametitlestrut@end
+\end{beamercolorbox}
+%% End of the frametitle box, start then use the subtitle template if needed.
+\ifx\insertframesubtitle\@empty
+%% if subtitle to the frame is not empty
+\else
+\vspace*{-1pt}
+\setbeamertemplate{framesubtitle}[default/\prop_item:Nn \l__gotham_template_name_prop {framesubtitle/default}]
+\usebeamertemplate{framesubtitle}
+\fi
+}
+
+%%%%
+\keys_define:nn { gotham / outer }{
+frametitle~template .usage:n = { general },
+frametitle~template .default:n = { gotham~subsameline },
+frametitle~template .code:n = {
+\__gotham_set_prop_template:nn{frametitle/default}{#1}
+\setbeamertemplate{frametitle}[default/\prop_item:Nn \l__gotham_template_name_prop {frametitle/default}]
+}
+}
+\keys_define:nn { gotham / outer }{
+framesubtitle~template .usage:n = { general },
+framesubtitle~template .default:n = { gotham~subnewline },
+framesubtitle~template .code:n = {
+\__gotham_set_prop_template:nn{framesubtitle/default}{#1}
+\setbeamertemplate{framesubtitle}[default/\prop_item:Nn \l__gotham_template_name_prop {framesubtitle/default}]
+}
+}
+
+%%% Continuation %%%
+
+\defbeamertemplate{frametitle~continuation}{default/beamer}{
+\usebeamerfont{frametitle}
+{
+\MakeUppercase{\romannumeral \insertcontinuationcount}
+}
+}
+
+\defbeamertemplate{frametitle~continuation}{default/tot}{
+\usebeamerfont{frametitle}
+{
+\textmd{%
+[\insertcontinuationcount
+\,/\,%
+\the\numexpr\beamer@endpageofframe+1-\beamer@startpageofframe
+]%
+}%
+}
+}
+
+\defbeamertemplate{frametitle~continuation}{default/gotham}{
+\usebeamerfont{frametitle}
+{
+(\romannumeral \insertcontinuationcount)
+}
+}
+\prop_put:Nnn \l__gotham_template_name_prop {frametitle~continuation/default} {gotham}
+
+%%%%
+\keys_define:nn { gotham / outer }{
+frametitle~continuation~template .usage:n = { general },
+frametitle~continuation~template .default:n = { gotham },
+frametitle~continuation~template .code:n = {
+\__gotham_set_prop_template:nn{frametitle~continuation/default}{#1}
+\setbeamertemplate{frametitle~continuation}[default/\prop_item:Nn \l__gotham_template_name_prop {frametitle~continuation/default}]
+}
+}
+
+%%% Footer \& Footline %%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%% Footline %%%
+
+\defbeamertemplate{footline}{empty}{}
+
+%%%%%%
+\newenvironment{nofootlineenv}{
+\setbeamertemplate{footline}[empty]
+}{}
+\__gotham_add_beamerframe_key:n {nofootline}
+
+%%%%%%
+\newlength{\gothamFootlineOffset}
+\setlength{\gothamFootlineOffset}{-0.5ex}
+
+\newlength{\gothamFootlineHeight}
+\setlength{\gothamFootlineHeight}{1.5ex}
+\newlength{\gothamFootlineDepth}
+\setlength{\gothamFootlineDepth}{0.1ex}
+
+\defbeamertemplate*{footline}{default/gotham}{
+\vspace*{\gothamFootlineOffset}
+\begin{beamercolorbox}[
+wd=\textwidth,
+sep=0pt,
+leftskip=3ex,
+rightskip=3ex,
+ht={\gothamFootlineHeight},
+dp={\gothamFootlineDepth},
+]{footline}
+\usebeamerfont{page number in head/foot}
+\ifbeamertemplateempty{frame~footer}{
+\hfill \ \gotham@strut
+}{
+\usebeamertemplate*{frame~footer}
+}
+\hspace{\gothamRightFooterPadding}
+{\usebeamertemplate{page~number~in~head/foot}}~
+\end{beamercolorbox}
+}
+\prop_put:Nnn \l__gotham_template_name_prop {footline/default} {gotham}
+
+%%% Footer %%%
+
+%%%%%%
+\newlength{\gothamLeftFooterPadding}
+\setlength{\gothamLeftFooterPadding}{2.0ex}
+\newlength{\gothamRightFooterPadding}
+\setlength{\gothamRightFooterPadding}{3.5ex}
+\newlength{\gothamFooterHOffset}
+\setlength{\gothamFooterHOffset}{0pt}
+
+\defbeamertemplate{frame~footer}{none}{}
+
+\defbeamertemplate{frame~footer}{empty}{
+\hspace{\gothamLeftFooterPadding}
+\hfill \
+\gotham@strut
+\vspace*{\gothamFooterHOffset}
+}
+
+%%%%%%
+\newenvironment{nofooterenv}{
+\setbeamertemplate{frame~footer}[empty]
+}{}
+\__gotham_add_beamerframe_key:n {nofooter}
+
+%%%%%%
+\bool_new:N \l_gotham_defaultRotateFooter
+\bool_set_false:N \l_gotham_defaultRotateFooter
+\bool_new:N \l_gotham_RotateFooter
+\bool_set_false:N \l_gotham_RotateFooter
+\BeforeBeginEnvironment{frame}{
+\bool_if:NTF \l_gotham_defaultRotateFooter {
+\bool_set_true:N \l_gotham_RotateFooter
+}{% false
+\bool_set_false:N \l_gotham_RotateFooter
+}
+}
+
+%%%%%%
+\define@key{beamerframe}{rotateFooter}[true]{
+\bool_set_true:N \l_gotham_RotateFooter
+}
+
+%%%%%%
+\define@key{beamerframe}{noRotateFooter}[true]{
+\bool_set_false:N \l_gotham_RotateFooter
+}
+
+%%%%
+\keys_define:nn { gotham / outer }{
+rotateFooter~default .choice:,
+rotateFooter~default .usage:n = { general },
+rotateFooter~default .default:n = { false },
+
+rotateFooter~default / true .code:n = { \bool_set_true:N \l_gotham_defaultRotateFooter },
+rotateFooter~default / on .code:n = { \bool_set_true:N \l_gotham_defaultRotateFooter },
+rotateFooter~default / enable .code:n = { \bool_set_true:N \l_gotham_defaultRotateFooter },
+
+rotateFooter~default / false .code:n = { \bool_set_false:N \l_gotham_defaultRotateFooter },
+rotateFooter~default / off .code:n = { \bool_set_false:N \l_gotham_defaultRotateFooter },
+rotateFooter~default / disable .code:n = { \bool_set_false:N \l_gotham_defaultRotateFooter },
+
+rotateFooter~default / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'#1'~is~unknown~for~the~(known)~option~'rotateFooter~default',~so~being~ignored. }{helping~message: rotateFooter~default / unknown} },
+}
+
+%%%%%%
+\newlength{\gothamFootlineRuleLeftPadding}
+\newlength{\gothamFootlineRuleHeight}
+\newlength{\gothamFootlineRuleLength}
+\setlength{\gothamFootlineRuleLeftPadding}{7mm}
+\setlength{\gothamFootlineRuleHeight}{0.0pt}
+\setlength{\gothamFootlineRuleLength}{15mm}
+
+\newlength{\gothamHposLeftRotFooter}
+\newlength{\gothamHposRightRotFooter}
+\newlength{\gothamVposLeftRotFooter}
+\newlength{\gothamVposRightRotFooter}
+
+\setlength{\gothamHposLeftRotFooter}{-7pt}
+\setlength{\gothamHposRightRotFooter}{2pt}
+\setlength{\gothamVposLeftRotFooter}{15pt}
+\setlength{\gothamVposRightRotFooter}{15pt}
+
+\newlength{\hlenRightRotFooter}
+\newlength{\hlenLeftRotFooter}
+
+\defbeamertemplate{frame~footer}{default/gotham}{
+\vbox to 0pt{
+\vss
+\hbox to 0pt{
+\hspace*{\gothamFootlineRuleLeftPadding}
+\usebeamercolor{frametitle}
+\color{frametitle.bg}
+\rule{\gothamFootlineRuleLength}{\gothamFootlineRuleHeight}
+\vspace*{
+\dimexpr \gothamFootlineHeight -0.25em\relax
+}
+\hss
+}
+}
+\hspace{\gothamLeftFooterPadding}
+\settowidth{\hlenLeftRotFooter}{\hspace{-\gothamLeftFooterPadding}}
+\addtolength{\hlenLeftRotFooter}{\gothamHposLeftRotFooter}
+\bool_if:NTF \l_gotham_RotateFooter {
+\begin{picture}(0,0)(0,0)
+\put(\hlenLeftRotFooter,\gothamVposLeftRotFooter){\rotatebox{90}{\insertshortdate}}
+\end{picture}
+}{
+\insertshortdate
+}
+\hfill \
+\hfill \ \insertshorttitle
+\gotham@strut
+\hfill \
+\hfill \
+\bool_if:NTF \l_gotham_RotateFooter {
+\settowidth{\hlenRightRotFooter}{\hspace{\gothamRightFooterPadding}\usebeamertemplate{page~number~in~head/foot}}
+\addtolength{\hlenRightRotFooter}{\gothamHposRightRotFooter}
+\begin{picture}(0,0)(0,0)
+\put(\hlenRightRotFooter,\gothamVposRightRotFooter){\rotatebox{90}{\insertshortauthor}}
+\end{picture}
+}{
+\insertshortauthor
+}
+\vspace*{\gothamFooterHOffset}
+}
+\prop_put:Nnn \l__gotham_template_name_prop {frame~footer/default} {gotham}
+
+%%%%
+\keys_define:nn { gotham / outer }{
+footer~template .usage:n = { general },
+footer~template .default:n = { gotham },
+footer~template .code:n = {
+\__gotham_set_prop_template:nn{frame~footer/default}{#1}
+\setbeamertemplate{frame~footer}[
+default/\prop_item:Nn \l__gotham_template_name_prop {frame~footer/default}
+]
+}
+}
+
+%%% Numbering %%%
+%%%%%%%%%%%%%%%%%
+
+\def\inserttotalframenumber{100}
+
+\defbeamertemplate{page~number~in~head/foot}{none}{ }
+
+%%%%
+\newlength{\gothamCircleNumberingVshift}
+\setlength{\gothamCircleNumberingVshift}{1.4mm}
+\newlength{\gothamCircleNumberingHshift}
+\setlength{\gothamCircleNumberingHshift}{2.6mm}
+
+\defbeamertemplate{page~number~in~head/foot}{circle}{
+\hspace{+2em}
+\raisebox{\gothamCircleNumberingVshift}[0pt][0pt]{
+\begin{tikzpicture}[remember~picture, overlay]
+\coordinate (circleCenter);
+
+\usebeamercolor{frametitle}
+
+\draw[fill, color=frametitle.bg] (circleCenter) circle (6mm);
+\draw[fill, color=frametitle.fg] (circleCenter) circle (5mm);
+\node[color=frametitle.bg] at (circleCenter)
+{\small$^{\insertframenumber}\negmedspace/\negthinspace\sb{\inserttotalframenumber}$}
+;
+\end{tikzpicture}
+\hspace{\gothamCircleNumberingHshift}
+}
+}
+
+%%%%
+\keys_define:nn { gotham / outer }{
+numbering .choice:,
+numbering .usage:n = { general },
+numbering .default:n = { none },
+
+numbering / none .code:n = { \setbeamertemplate{page~number~in~head/foot}[none] },
+numbering / framenumber .code:n = { \setbeamertemplate{page~number~in~head/foot}[framenumber] },
+numbering / totalframenumber .code:n = {\setbeamertemplate{page~number~in~head/foot}[totalframenumber] },
+numbering / appendixframenumber .code:n = {\setbeamertemplate{page~number~in~head/foot}[appendixframenumber] },
+numbering / pagenumber .code:n = { \setbeamertemplate{page~number~in~head/foot}[pagenumber] },
+numbering / totalpagenumber .code:n = {\setbeamertemplate{page~number~in~head/foot}[totalpagenumber] },
+numbering / circle .code:n = {\setbeamertemplate{page~number~in~head/foot}[circle] },
+
+numbering / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'#1'~is~unknown~for~the~(known)~option~'numbering',~so~being~ignored. }{helping~message} },
+}
+
+%%% MiniFrames \& Progress bar %%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%% MiniFrames %%%
+
+\defbeamertemplate{section~in~head/foot}{default/beamer}{
+\insertsectionhead
+}
+\defbeamertemplate{section~in~head/foot~shaded}{default/beamer}{
+\color{fg!50!bg}\usebeamertemplate{section~in~head/foot}
+}
+
+\prop_put:Nnn \l__gotham_template_name_prop {section~in~head/foot~shaded/default} {beamer}
+\prop_put:Nnn \l__gotham_template_name_prop {section~in~head/foot/default} {beamer}
+
+\defbeamertemplate{section~in~head/foot}{default/gotham~secSubsec}{
+\insertsectionhead
+\ifx\insertsubsection\empty\else
+\ifdefempty{\subsecname}{\relax}{
+\ \textbar\ \insertsubsectionhead
+}
+\fi
+}
+\defbeamertemplate{section~in~head/foot~shaded}{default/gotham~secSubsec}{
+\insertsectionhead
+}
+
+\defbeamertemplate{section~in~head/foot}{default/empty}{
+\vspace{3.875ex}
+}
+\defbeamertemplate{section~in~head/foot~shaded}{default/empty}{
+\vspace{3.875ex}
+}
+
+\newlength{\gotham@temp@heightFrametitle}
+\newlength{\gotham@temp@PaperheightFrametitle}
+
+\defbeamertemplate*{mini~nav~progress~head/foot}{gotham~miniframes~theme}
+{
+\begin{beamercolorbox}[ignorebg]{section~in~head/foot}
+\hfuzz=\paperwidth
+\insertnavigation{\paperwidth}
+\vspace{0.05cm}
+\end{beamercolorbox}
+}
+\defbeamertemplate*{mini~nav~progress~left}{gotham~miniframes~theme}
+{
+\settoheight{\gotham@temp@heightFrametitle}{\gotham@strut}
+\addtolength{\gotham@temp@heightFrametitle}{\gotham@frametitle@toppadding+\gotham@frametitle@bottompadding+\gothamProgressHeadFootLineheight}
+
+\setlength{\gotham@temp@PaperheightFrametitle}{\paperheight-\gotham@temp@heightFrametitle-\gothamFootlineHeight-\gothamFootlineDepth-\gothamProgressHeadFootLineheight}
+
+\vspace{-0.6\paperheight}
+\rotatebox{90}{
+\begin{beamercolorbox}[ignorebg]{section~in~head/foot}
+\hfuzz=\gotham@temp@PaperheightFrametitle
+\insertnavigation{\gotham@temp@PaperheightFrametitle}
+\end{beamercolorbox}
+}
+}
+\defbeamertemplate*{mini~nav~progress~right}{gotham~miniframes~theme}
+{
+\settoheight{\gotham@temp@heightFrametitle}{\gotham@strut}
+\addtolength{\gotham@temp@heightFrametitle}{\gotham@frametitle@toppadding+\gotham@frametitle@bottompadding+\gothamProgressHeadFootLineheight}
+
+\setlength{\gotham@temp@PaperheightFrametitle}{\paperheight-\gotham@temp@heightFrametitle-\gothamFootlineHeight-\gothamFootlineDepth-\gothamProgressHeadFootLineheight}
+
+\vspace{\gotham@temp@heightFrametitle}
+\hspace{-2.3em}
+\rotatebox{-90}{
+\begin{beamercolorbox}[ignorebg]{section~in~head/foot}
+\hfuzz=\gotham@temp@PaperheightFrametitle
+\insertnavigation{\gotham@temp@PaperheightFrametitle}
+\end{beamercolorbox}
+}
+}
+
+%% Select the bullets shape
+\defbeamertemplate{mini~frame}{gotham~box}
+{
+\begin{pgfpicture}{0pt}{0pt}{.1cm}{.1cm}
+\pgfpathrectangle{\pgfpointorigin}{\pgfpoint{0.1cm}{0.1cm}}
+\pgfusepath{fill,stroke}
+\end{pgfpicture}
+}[action]{
+\setbeamersize{mini~frame~size=.14cm, mini~frame~offset=.05cm}
+}
+\defbeamertemplate{mini~frame~in~current~subsection}{gotham~box}
+{
+\begin{pgfpicture}{0pt}{0pt}{.1cm}{.1cm}
+\pgfpathrectangle{\pgfpointorigin}{\pgfpoint{0.1cm}{0.1cm}}
+\pgfusepath{stroke}
+\end{pgfpicture}
+}
+
+\defbeamertemplate{mini~frame}{gotham~minibox}
+{
+\begin{pgfpicture}{0pt}{0pt}{.05cm}{.05cm}
+\pgfpathrectangle{\pgfpointorigin}{\pgfpoint{0.05cm}{0.05cm}}
+\pgfusepath{fill,stroke}
+\end{pgfpicture}
+}[action]{
+\setbeamersize{mini~frame~size=.08cm, mini~frame~offset=.05cm}
+}
+\defbeamertemplate{mini~frame~in~current~subsection}{gotham~minibox}
+{
+\begin{pgfpicture}{0pt}{0pt}{.05cm}{.05cm}
+\pgfpathrectangle{\pgfpointorigin}{\pgfpoint{0.05cm}{0.05cm}}
+\pgfusepath{stroke}
+\end{pgfpicture}
+}
+
+\defbeamertemplate{mini~frame}{gotham~minibullet}
+{
+\beamer@xelatex@fixminiframes
+\begin{pgfpicture}{0pt}{0pt}{0.05cm}{0.05cm}
+\pgfpathcircle{\pgfpoint{0.03cm}{0.03cm}}{0.03cm}
+\pgfusepath{fill,stroke}
+\end{pgfpicture}
+}[action]{
+\setbeamersize{mini~frame~size=.09cm, mini~frame~offset=.05cm}
+}
+\defbeamertemplate{mini~frame~in~current~subsection}{gotham~minibullet}
+{
+\beamer@xelatex@fixminiframes
+\begin{pgfpicture}{0pt}{0pt}{0.05cm}{0.05cm}
+\pgfpathcircle{\pgfpoint{0.03cm}{0.03cm}}{0.03cm}
+\pgfusepath{stroke}
+\end{pgfpicture}
+}
+
+%%%%
+\keys_define:nn { gotham / outer }{
+%% mini~frames~shape
+mini~frames~shape .usage:n = { general },
+mini~frames~shape .default:n = { gotham~minibullet },
+mini~frames~shape .code:n = {
+\setbeamertemplate{mini~frames}[#1]
+},
+}
+
+\defbeamertemplate*{miniframe~home}{beamer}{
+}
+\defbeamertemplate*{miniframe~current~slide}{beamer}{
+\usebeamertemplate{mini~frame}
+}
+\defbeamertemplate*{miniframe~done~current~section}{beamer}{
+\usebeamertemplate{mini~frame~in~current~subsection}
+}
+\defbeamertemplate*{miniframe~todo~current~section}{beamer}{
+\usebeamertemplate{mini~frame~in~current~subsection}
+}
+\defbeamertemplate*{miniframe~done~other~section}{beamer}{
+\usebeamertemplate{mini~frame~in~other~subsection}
+}
+\defbeamertemplate*{miniframe~todo~other~section}{beamer}{
+\usebeamertemplate{mini~frame~in~other~subsection}
+}
+\defbeamertemplate*{miniframe~section~current}{beamer}{}
+\defbeamertemplate*{miniframe~section~done}{beamer}{}
+\defbeamertemplate*{miniframe~section~todo}{beamer}{}
+\defbeamertemplate*{miniframe~subsection~current}{beamer}{}
+\defbeamertemplate*{miniframe~subsection~todo}{beamer}{}
+\defbeamertemplate*{miniframe~subsection~done}{beamer}{}
+\defbeamertemplate*{miniframe~section~done~in~other~section}{default}[1][50]
+{
+\color{fg!#1!bg}\usebeamertemplate{miniframe~section~done}
+}
+\defbeamertemplate*{miniframe~section~todo~in~other~section}{default}[1][50]
+{
+\color{fg!#1!bg}\usebeamertemplate{miniframe~section~todo}
+}
+\defbeamertemplate*{miniframe~subsection~done~in~other~section}{default}[1][50]
+{
+\color{fg!#1!bg}\usebeamertemplate{miniframe~subsection~done}
+}
+\defbeamertemplate*{miniframe~subsection~todo~in~other~section}{default}[1][50]
+{
+\color{fg!#1!bg}\usebeamertemplate{miniframe~subsection~todo}
+}
+
+\defbeamertemplate{miniframe~home}{gotham~mini}{
+\resizebox{0.85\beamer@boxsize}{\beamer@boxsize}{$\equiv$}
+}
+\defbeamertemplate{miniframe~current~slide}{gotham~mini}{
+\usebeamercolor[fg]{alerted~text}
+\usebeamertemplate{mini~frame}
+}
+\defbeamertemplate{miniframe~done~current~section}{gotham~mini}{
+\usebeamertemplate{mini~frame}
+}
+\defbeamertemplate{miniframe~todo~current~section}{gotham~mini}{
+\usebeamertemplate{mini~frame~in~current~subsection}
+}
+\defbeamertemplate{miniframe~done~other~section}{gotham~mini}[1][50]{
+\color{fg!#1!bg}\usebeamertemplate{mini~frame}
+}
+\defbeamertemplate{miniframe~todo~other~section}{gotham~mini}[1][50]{
+\color{fg!#1!bg}\usebeamertemplate{mini~frame~in~other~subsection}
+}
+\defbeamertemplate{miniframe~section~current}{gotham~mini}{
+\fontsize{3pt}{0pt}\selectfont
+\tl_use:N \l__gotham_minif_tmpa_tl
+\hspace{1.pt}
+}
+\defbeamertemplate{miniframe~section~done}{gotham~mini}{
+\fontsize{3pt}{0pt}\selectfont
+\tl_use:N \l__gotham_minif_tmpa_tl
+\hspace{1.pt}
+}
+\defbeamertemplate{miniframe~section~todo}{gotham~mini}{
+\fontsize{3pt}{0pt}\selectfont
+\tl_use:N \l__gotham_minif_tmpa_tl
+\hspace{1.pt}
+}
+\defbeamertemplate{miniframe~subsection~current}{gotham~mini}{
+\usebeamercolor[fg]{alerted~text}
+\hspace{-0.15pt}
+\resizebox{\beamer@boxsize}{!}{\hspace{-0.75pt}$\blacklozenge$}
+}
+\defbeamertemplate{miniframe~subsection~todo}{gotham~mini}{
+\hspace{-0.15pt}
+\resizebox{\beamer@boxsize}{!}{\hspace{-0.75pt}$\lozenge$}
+}
+\defbeamertemplate{miniframe~subsection~done}{gotham~mini}{
+\hspace{-0.15pt}
+\resizebox{\beamer@boxsize}{!}{\hspace{-0.75pt}$\blacklozenge$}
+}
+
+\defbeamertemplate{miniframe~home}{gotham~nano}{
+\scalebox{0.5}[0.95]{$\equiv$}
+}
+\defbeamertemplate{miniframe~current~slide}{gotham~nano}{
+o
+}
+\defbeamertemplate{miniframe~done~current~section}{gotham~nano}{
+x
+}
+\defbeamertemplate{miniframe~todo~current~section}{gotham~nano}{
+$\cdot$
+}
+\defbeamertemplate{miniframe~done~other~section}{gotham~nano}{
+x
+}
+\defbeamertemplate{miniframe~todo~other~section}{gotham~nano}{
+$\cdot$
+}
+\defbeamertemplate{miniframe~section~current}{gotham~nano}{
+\tl_use:N \l__gotham_minif_tmpa_tl
+}
+\defbeamertemplate{miniframe~section~done}{gotham~nano}{
+\tl_use:N \l__gotham_minif_tmpa_tl
+}
+\defbeamertemplate{miniframe~section~todo}{gotham~nano}{
+\tl_use:N \l__gotham_minif_tmpa_tl
+}
+\defbeamertemplate{miniframe~subsection~current}{gotham~nano}{
+\usebeamercolor[fg]{alerted~text}$\diamond$
+}
+\defbeamertemplate{miniframe~subsection~todo}{gotham~nano}{
+$\diamond$
+}
+\defbeamertemplate{miniframe~subsection~done}{gotham~nano}{
+$\diamond$
+}
+
+\defbeamertemplateparent{mini~frames~bundle}
+{ miniframe~home, miniframe~current~slide,
+miniframe~done~current~section, miniframe~todo~current~section, miniframe~done~other~section, miniframe~todo~other~section,
+miniframe~section~current, miniframe~section~done, miniframe~section~todo,
+miniframe~subsection~current, miniframe~subsection~done, miniframe~subsection~todo,
+}{}
+
+%%%%
+\keys_define:nn { gotham / outer }{
+%% mini~frames~bundle
+mini~frames~bundle .usage:n = { general },
+mini~frames~bundle .default:n = { gotham~mini },
+mini~frames~bundle .code:n = {
+\setbeamertemplate{mini~frames~bundle}[#1]
+},
+}
+
+%%% MiniFrames Navigation %%%
+
+%%%%
+\keys_define:nn { gotham / outer }{
+mini~frames~compress .choice:,
+mini~frames~compress .usage:n = { general },
+mini~frames~compress .default:n = { true },
+
+mini~frames~compress / true .code:n = { \beamer@compresstrue },
+mini~frames~compress / on .code:n = { \beamer@compresstrue },
+mini~frames~compress / enable .code:n = { \beamer@compresstrue },
+
+mini~frames~compress / false .code:n = { \beamer@compressfalse },
+mini~frames~compress / off .code:n = { \beamer@compressfalse },
+mini~frames~compress / disable .code:n = { \beamer@compressfalse },
+
+mini~frames~compress / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'#1'~is~unknown~for~the~(known)~option~'mini~frames~compress',~so~being~ignored. }{helping~message: mini~frames~compress / unknown} },
+}
+
+\newlength{\gotham@temp@MiniframeSubsecDim}
+\newlength{\gotham@temp@MiniframeSecDim}
+\def\gotham@temp@lastSec{-1}
+\tl_new:N \l__gotham_minif_tmpa_tl
+\tl_new:N \l__gotham_minif_tmpb_tl
+
+\renewcommand{\slideentry}[6]{%
+ %section number, subsection number, slide number, first/last frame, page number, part number
+\ifnum#6=\c@part\ifnum#3>0%\ifnum#6=\c@part\ifnum#1>0\ifnum#3>0 MODIF
+\ifbeamer@compress%
+\advance\beamer@xpos by1\relax%
+\else%
+\ifnum#2=0%
+\beamer@ypos@offset=1\relax%
+\fi%
+\beamer@xpos=#3\relax%
+\beamer@ypos=#2\relax%
+\advance\beamer@ypos by \beamer@ypos@offset\relax%
+\fi%
+%% Add section number and subsection symbol to miniframes.
+%% MODIF below, inspired from https://tex.stackexchange.com/questions/722523
+\ifnum#3=1%\c@subsectionslide=#3 % if =1, so it has been reset => new section or subsection
+\ifnum#1>0\ifnum#2<2% => there no subsection in this section.
+\ifnum\gotham@temp@lastSec=#1%
+\else%
+\tl_set:Nn \l__gotham_minif_tmpa_tl {#1}
+\settowidth{\gotham@temp@MiniframeSecDim}{\usebeamertemplate{miniframe~section~current}}%
+\hbox to 0pt{%
+\beamer@tempdim=-\beamer@vboxoffset%
+\advance\beamer@tempdim by-\beamer@boxsize%
+\multiply\beamer@tempdim by\beamer@ypos%
+\advance\beamer@tempdim by -.05cm%
+\raise\beamer@tempdim\hbox{%
+\beamer@tempdim=\beamer@boxsize%
+\multiply\beamer@tempdim by\beamer@xpos%
+\advance\beamer@tempdim by -\beamer@boxsize%
+\advance\beamer@tempdim by -\gotham@temp@MiniframeSecDim% NEW
+\advance\beamer@tempdim by 1pt%
+\kern\beamer@tempdim%
+\global\beamer@section@min@dim\beamer@tempdim%
+\hbox{\beamer@link(#4){%
+\ifnum\c@section=#1%
+\ifnum\c@subsectionslide=#3%
+\usebeamertemplate{miniframe~section~current}
+\else%
+\ifnum\c@subsectionslide<#3
+\usebeamertemplate{miniframe~section~todo}
+\else%
+\usebeamertemplate{miniframe~section~done}
+\fi%
+\fi%
+\else% \ifnum\c@section=#1%
+\ifnum\c@section<#1
+\usebeamertemplate{miniframe~section~todo~in~other~section}
+\else%
+\usebeamertemplate{miniframe~section~done~in~other~section}
+\fi%
+\fi% \ifnum\c@section=#1
+}}%
+}%
+}%
+\def\gotham@temp@lastSec{#1}%
+\fi%
+\fi\fi%
+\ifnum#2>0%
+\ifbeamertemplateempty{miniframe~subsection~current}{
+}{
+\tl_set:Nn \l__gotham_minif_tmpb_tl {#2}
+\settowidth{\gotham@temp@MiniframeSubsecDim}{}%\usebeamertemplate{miniframe~subsection~current}}%
+\addtolength{\gotham@temp@MiniframeSubsecDim}{+1.\beamer@boxsize}%
+\advance\beamer@xpos by1\relax%
+\hbox to 0pt{%
+\beamer@tempdim=-\beamer@vboxoffset%
+\advance\beamer@tempdim by-\beamer@boxsize%
+\multiply\beamer@tempdim by\beamer@ypos%
+\advance\beamer@tempdim by -.05cm%
+\raise\beamer@tempdim\hbox{%
+\beamer@tempdim=\beamer@boxsize%
+\multiply\beamer@tempdim by\beamer@xpos%
+\advance\beamer@tempdim by -\beamer@boxsize%
+\advance\beamer@tempdim by -\gotham@temp@MiniframeSubsecDim% NEW
+\advance\beamer@tempdim by 1pt%
+\kern\beamer@tempdim%
+\global\beamer@section@min@dim\beamer@tempdim%
+\hbox{\beamer@link(#4){%
+\ifnum\c@section=#1%
+\ifnum\c@subsection=#2%
+\ifnum\c@subsectionslide=#3%
+\usebeamertemplate{miniframe~subsection~current}
+\else%
+\ifnum\c@subsectionslide<#3
+\usebeamertemplate{miniframe~subsection~todo}
+\else%
+\usebeamertemplate{miniframe~subsection~done}
+\fi%
+\fi%
+\else% \ifnum\c@subsection=#2%
+\ifnum\c@subsection<#2
+\usebeamertemplate{miniframe~subsection~todo}
+\else%
+\usebeamertemplate{miniframe~subsection~done}
+\fi%
+\fi% \ifnum\c@subsection=#2%
+\else% \ifnum\c@section=#1%
+\ifnum\c@section<#1
+\usebeamertemplate{miniframe~subsection~todo~in~other~section}
+\else%
+\usebeamertemplate{miniframe~subsection~done~in~other~section}
+\fi%
+\fi% \ifnum\c@section=#1
+}}% \hbox{\beamer@link
+}% raisebox
+}% hbox
+}% end if template empty
+\fi% \ifnum#2>0
+\else
+\ifbeamer@compress%
+\else%
+\ifbeamertemplateempty{miniframe~subsection~current}{
+}{
+\advance\beamer@xpos by 1\relax%
+}
+\fi%
+\fi% \ifnum#3=1
+
+%% end of modif to add section number and subsection symbol.
+\hbox to 0pt{%
+\beamer@tempdim=-\beamer@vboxoffset%
+\advance\beamer@tempdim by-\beamer@boxsize%
+\multiply\beamer@tempdim by\beamer@ypos%
+\advance\beamer@tempdim by -.05cm%
+\raise\beamer@tempdim\hbox{%
+\beamer@tempdim=\beamer@boxsize%
+\multiply\beamer@tempdim by\beamer@xpos%
+\advance\beamer@tempdim by -\beamer@boxsize%
+\advance\beamer@tempdim by 1pt%
+\kern\beamer@tempdim
+\global\beamer@section@min@dim\beamer@tempdim
+\hbox{\beamer@link(#4){%
+\usebeamerfont{mini~frame}%
+%%
+%% CHANGE FROM HERE: I rewrote this part.
+\def\gotham@temp@i{1/1}
+\def\gotham@temp@ii{#4}
+\ifx\gotham@temp@i\gotham@temp@ii
+\usebeamertemplate{miniframe~home}
+\else
+\ifnum\c@section=#1%
+\ifnum\c@subsection=#2%
+\usebeamercolor[fg]{mini~frame}%
+\ifnum\c@subsectionslide=#3%
+\usebeamertemplate{miniframe~current~slide}
+\else%
+\ifnum\c@subsectionslide<#3
+\usebeamertemplate{miniframe~todo~current~section}
+\else%
+\usebeamertemplate{miniframe~done~current~section}
+\fi%
+\fi%
+\else% \ifnum\c@subsection=#2%
+\usebeamercolor{mini~frame}%
+\ifnum\c@subsection<#2
+\usebeamertemplate{miniframe~todo~other~section}
+\else%
+\usebeamertemplate{miniframe~done~other~section}
+\fi%
+\fi% \ifnum\c@subsection=#2%
+\else% \ifnum\c@section=#1%
+\usebeamercolor{mini~frame}%
+\ifnum\c@section<#1
+\usebeamertemplate{miniframe~todo~other~section}
+\else%
+\usebeamertemplate{miniframe~done~other~section}
+\fi%
+\fi% \ifnum\c@section=#1
+\fi% \ifx\gotham@temp@i\gotham@temp@ii
+}}}\hskip-10cm plus 1fil%
+}\fi% \ifnum#1>0\ifnum#3>0%
+\else% \ifnum#6=\c@part
+\fakeslideentry{#1}{#2}{#3}{#4}{#5}{#6}%
+\fi\ignorespaces%
+}%
+
+%%%%
+\providebool{gothamZerosectionframes}
+\boolfalse{gothamZerosectionframes}
+
+\providecommand{\gothamInsertNavlength}{
+\ifbool{gothamZerosectionframes}{
+\hskip-0.5ex~plus~1fill
+}{
+\hskip-1.875ex~plus-1fill
+}%
+}
+\providecommand{\gothamPatchInsertNav}{
+\box\beamer@sectionbox\hfil\hskip.3cm
+}
+\providecommand{\gothamPatchSectionentry}{
+\hskip1.875ex~plus~1fill
+}
+\providecommand{\gothamPatchSectionbox}{
+\ht\beamer@sectionbox=1.875ex
+\dp\beamer@sectionbox=0.75ex
+}
+\ExplSyntaxOff
+\patchcmd{\insertnavigation}{\hskip-1.875ex plus-1fill}{%
+\ifnum\value{section}=0%
+\ifnum\value{framenumber}>0%
+\hskip-0ex%
+\global\booltrue{gothamZerosectionframes}%
+\fi\fi%
+\gothamInsertNavlength%
+}{}{}
+%% Remove hfill between sections => flush right bullet bar, if not corrected.
+\patchcmd{\sectionentry}{\hskip1.875ex plus 1fill}{\gothamPatchSectionentry}{}{}
+%% Centering the bullet bar
+\patchcmd{\insertnavigation}{\box\beamer@sectionbox\hfil\hskip.3cm}{\gothamPatchInsertNav}{}{}
+\patchcmd{\insertnavigation}{\ht\beamer@sectionbox=1.875ex%
+\dp\beamer@sectionbox=0.75ex%
+}{
+\gothamPatchSectionbox
+}{}{}
+\patchcmd{\sectionentry}{\ht\beamer@sectionbox=1.875ex%
+\dp\beamer@sectionbox=0.75ex%
+}{
+\gothamPatchSectionbox
+}{}{}
+\ExplSyntaxOn
+
+%%%%
+\keys_define:nn { gotham / outer }{
+mini~frames~nav~spreading .choice:,
+mini~frames~nav~spreading .usage:n = { general },
+mini~frames~nav~spreading .default:n = { spreading },
+
+mini~frames~nav~spreading / spreading .code:n = {
+\renewcommand{\gothamInsertNavlength}{
+\ifbool{gothamZerosectionframes}{
+\hskip-0.5ex
+}{
+\hskip-1.875ex~plus-1fill
+}%
+}
+\renewcommand{\gothamPatchInsertNav}{
+\box\beamer@sectionbox\hfil\hskip.3cm
+}
+\renewcommand{\gothamPatchSectionentry}{
+\hskip1.875ex~plus~1fill
+}
+},
+mini~frames~nav~spreading / centering .code:n = {
+\renewcommand{\gothamInsertNavlength}{
+\ifbool{gothamZerosectionframes}{
+\hskip-0.5ex~plus~1fill
+}{
+\hfill
+}%
+}
+\renewcommand{\gothamPatchInsertNav}{
+\box\beamer@sectionbox\hfill\hskip.3cm
+}
+%% Remove hfill between sections => flush right bullet bar, if not corrected.
+\renewcommand{\gothamPatchSectionentry}{
+\hskip~3.5ex
+}
+},
+mini~frames~nav~spreading / left .code:n = {
+\renewcommand{\gothamInsertNavlength}{
+\ifbool{gothamZerosectionframes}{
+\hskip-0.5ex
+}{
+\hskip-1.875ex plus-1fill
+}%
+}
+\renewcommand{\gothamPatchInsertNav}{
+\box\beamer@sectionbox\hfil\hskip.3cm
+}
+%% Remove hfill between sections => flush right bullet bar, if not corrected.
+\renewcommand{\gothamPatchSectionentry}{
+\hskip~3.5ex
+}
+},
+mini~frames~nav~spreading / right .code:n = {
+\renewcommand{\gothamInsertNavlength}{
+\ifbool{gothamZerosectionframes}{
+\hskip-0.5ex~plus~1fill
+}{
+\hskip-1.875ex plus-1fill
+}%
+}
+\renewcommand{\gothamPatchInsertNav}{
+\box\beamer@sectionbox\hfil\hskip.3cm
+}
+%% Remove hfill between sections => flush right bullet bar, if not corrected.
+\renewcommand{\gothamPatchSectionentry}{
+\hskip~3.5ex
+}
+},
+mini~frames~nav~spreading / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'#1'~is~unknown~for~the~(known)~option~'mini~frames~nav~spreading',~so~being~ignored. }{helping~message: mini~frames~nav~spreading / unknown} },
+}
+
+%%%%
+\keys_define:nn { gotham / outer }{
+mini~frames~nav~sectioning .choice:,
+mini~frames~nav~sectioning .usage:n = { general },
+mini~frames~nav~sectioning .default:n = { secsubsection },
+
+mini~frames~nav~sectioning / none .code:n = {
+\__gotham_set_template:nn{section~in~head/foot~shaded}{default/empty}
+\__gotham_set_template:nn{section~in~head/foot}{default/empty}
+\renewcommand{\gothamPatchSectionbox}{
+\ht\beamer@sectionbox=0pt
+\dp\beamer@sectionbox=0pt
+}
+},
+mini~frames~nav~sectioning / section .code:n = {
+\__gotham_set_template:nn{section~in~head/foot~shaded}{default} %from Beamer
+\__gotham_set_template:nn{section~in~head/foot}{default} %from Beamer
+},
+mini~frames~nav~sectioning / secsubsection .code:n = {
+\__gotham_set_template:nn{section~in~head/foot~shaded}{default/gotham~secSubsec}
+\__gotham_set_template:nn{section~in~head/foot}{default/gotham~secSubsec}
+},
+
+mini~frames~nav~sectioning / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'#1'~is~unknown~for~the~(known)~option~'mini~frames~nav~sectioning',~so~being~ignored. }{helping~message: mini~frames~nav~sectioning / unknown} },
+}
+
+%%%%
+\tl_new:N \l__gotham_out_tmp_mfnposi_tl
+\keys_define:nn { gotham / outer }{
+mini~frames~nav~position .choice:,
+mini~frames~nav~position .usage:n = { general },
+mini~frames~nav~position .default:n = { none },
+
+mini~frames~nav~position / none .code:n = {
+\tl_set:Nn \l__gotham_out_tmp_mfnposi_tl {none}
+
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {head} {
+}{
+\setbeamertemplate{headline}[default/\prop_item:Nn \l__gotham_template_name_prop {headline/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {footline} {
+}{
+\setbeamertemplate{footline}[default/\prop_item:Nn \l__gotham_template_name_prop {footline/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {left} {
+}{
+\setbeamertemplate{sidebar~left}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~left/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {right} {
+}{
+\setbeamertemplate{sidebar~right}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~right/default}]
+}
+},
+mini~frames~nav~position / head .code:n = {
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {head} {
+}{
+\tl_set:Nn \l__gotham_out_tmp_mfnposi_tl {head}
+
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {head} {
+}{
+\setbeamertemplate{headline}[default/\prop_item:Nn \l__gotham_template_name_prop {headline/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {footline} {
+}{
+\setbeamertemplate{footline}[default/\prop_item:Nn \l__gotham_template_name_prop {footline/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {left} {
+}{
+\setbeamertemplate{sidebar~left}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~left/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {right} {
+}{
+\setbeamertemplate{sidebar~right}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~right/default}]
+}
+
+\addtobeamertemplate{headline}{}{
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {head} {
+\usebeamertemplate*{mini~nav~progress~head/foot}
+}{}
+}
+}
+},
+mini~frames~nav~position / foot .code:n = {
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {foot} {
+}{
+\tl_set:Nn \l__gotham_out_tmp_mfnposi_tl {foot}
+
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {head} {
+}{
+\setbeamertemplate{headline}[default/\prop_item:Nn \l__gotham_template_name_prop {headline/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {footline} {
+}{
+\setbeamertemplate{footline}[default/\prop_item:Nn \l__gotham_template_name_prop {footline/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {left} {
+}{
+\setbeamertemplate{sidebar~left}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~left/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {right} {
+}{
+\setbeamertemplate{sidebar~right}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~right/default}]
+}
+
+\addtobeamertemplate{footline}{}{
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {foot} {
+\usebeamertemplate*{mini~nav~progress~head/foot}
+}{}
+}
+}
+},
+mini~frames~nav~position / left .code:n = {
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {left} {
+}{
+\tl_set:Nn \l__gotham_out_tmp_mfnposi_tl {left}
+
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {head} {
+}{
+\setbeamertemplate{headline}[default/\prop_item:Nn \l__gotham_template_name_prop {headline/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {footline} {
+}{
+\setbeamertemplate{footline}[default/\prop_item:Nn \l__gotham_template_name_prop {footline/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {left} {
+}{
+\setbeamertemplate{sidebar~left}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~left/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {right} {
+}{
+\setbeamertemplate{sidebar~right}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~right/default}]
+}
+
+\addtobeamertemplate{sidebar~left}{}{
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {left} {
+\usebeamertemplate*{mini~nav~progress~left}
+}{}
+}
+}
+},
+mini~frames~nav~position / right .code:n = {
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {right} {
+}{
+\tl_set:Nn \l__gotham_out_tmp_mfnposi_tl {right}
+
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {head} {
+}{
+\setbeamertemplate{headline}[default/\prop_item:Nn \l__gotham_template_name_prop {headline/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {footline} {
+}{
+\setbeamertemplate{footline}[default/\prop_item:Nn \l__gotham_template_name_prop {footline/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {left} {
+}{
+\setbeamertemplate{sidebar~left}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~left/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {right} {
+}{
+\setbeamertemplate{sidebar~right}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~right/default}]
+}
+
+\addtobeamertemplate{sidebar~right}{}{
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {right} {
+\usebeamertemplate*{mini~nav~progress~right}
+}{}
+}
+}
+},
+
+mini~frames~nav~position / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'#1'~is~unknown~for~the~(known)~option~'mini~frames~nav~position',~so~being~ignored. }{helping~message: mini~frames~nav~position / unknown} },
+}
+
+%%% Progress bar %%%
+
+%%%%%%
+\newlength{\gotham@progressinheadfoot}
+\newlength{\gothamProgressHeadFootLineheight}
+\setlength{\gothamProgressHeadFootLineheight}{1.2ex}
+
+%%%%%%
+\bool_new:N \l_gotham_ProgCircleMoving_bool
+\bool_set_true:N \l_gotham_ProgCircleMoving_bool
+
+\bool_new:N \l_gotham_progbar_advancement_tlbr_bool
+\bool_set_true:N \l_gotham_progbar_advancement_tlbr_bool
+
+\bool_new:N \l_gotham_pmfn_bool
+\bool_set_false:N \l_gotham_pmfn_bool
+
+\cs_new_protected:Npn \__gotham_rectangle_box_progressbar:n #1
+{
+\setlength{\gotham@progressinheadfoot}{
+#1 * \ratio{\insertframenumber pt}{\inserttotalframenumber pt}
+}
+
+\begin{beamercolorbox}[wd=#1]{progress~bar~in~head/foot}
+\begin{tikzpicture}
+\usebeamercolor{progress~bar~in~head/foot}
+
+\fill[color=progress~bar~in~head/foot.bg]
+(0pt, 0pt) rectangle ++ (#1, \gothamProgressHeadFootLineheight)
+;
+
+\bool_if:NTF \l_gotham_progbar_advancement_tlbr_bool {
+\fill[color=progress~bar~in~head/foot.fg]
+(0pt, 0pt) rectangle ++ (\gotham@progressinheadfoot, \gothamProgressHeadFootLineheight)
+;
+}{
+\fill[color=progress~bar~in~head/foot.fg]
+(#1, \gothamProgressHeadFootLineheight) rectangle ++ (-\gotham@progressinheadfoot, -\gothamProgressHeadFootLineheight)
+;
+}
+
+\bool_if:NTF \l_gotham_pmfn_bool {
+\node at (#1/2, \gothamProgressHeadFootLineheight/2)
+[text~height=0.1pt, text~depth=0.05pt, inner~sep=0pt] %draw=red,
+{
+\usebeamercolor[fg]{normal~text}
+\raisebox{0.5\gothamProgressHeadFootLineheight+1.4pt}[0pt][0pt]{
+\hfuzz=#1
+\insertnavigation{#1}
+}
+}
+;
+}{
+}
+\end{tikzpicture}
+\end{beamercolorbox}
+}
+
+\defbeamertemplate{progress~bar~in~head/foot}{gotham~rectangle}{
+\nointerlineskip
+\__gotham_rectangle_box_progressbar:n {\paperwidth}
+}
+
+\defbeamertemplate{progress~bar~in~left}{gotham~rectangle}{
+\nointerlineskip
+
+\settoheight{\gotham@temp@heightFrametitle}{\gotham@strut}
+\addtolength{\gotham@temp@heightFrametitle}{\gotham@frametitle@toppadding+\gotham@frametitle@bottompadding+\gothamProgressHeadFootLineheight}
+
+\setlength{\gotham@temp@PaperheightFrametitle}{\paperheight-\gotham@temp@heightFrametitle-\gothamFootlineHeight-\gothamFootlineDepth-0.25\baselineskip}
+
+\vspace{0.12275\paperheight}
+\rotatebox{90}{
+\__gotham_rectangle_box_progressbar:n {\gotham@temp@PaperheightFrametitle}
+}
+}
+\defbeamertemplate{progress~bar~in~right}{gotham~rectangle}{
+\nointerlineskip
+
+\settoheight{\gotham@temp@heightFrametitle}{\gotham@strut}
+\addtolength{\gotham@temp@heightFrametitle}{\gotham@frametitle@toppadding+\gotham@frametitle@bottompadding+\gothamProgressHeadFootLineheight}
+
+\setlength{\gotham@temp@PaperheightFrametitle}{\paperheight-\gotham@temp@heightFrametitle-\gothamFootlineHeight-\gothamFootlineDepth-0.25\baselineskip}
+
+\hspace{-\gothamProgressHeadFootLineheight}
+\vspace{\gotham@temp@heightFrametitle-27.75pt}
+\rotatebox{-90}{
+\__gotham_rectangle_box_progressbar:n {\gotham@temp@PaperheightFrametitle}
+}
+}
+
+\cs_new_protected:Npn \__gotham_rounded_box_progressbar:nnnn #1#2#3#4
+{
+\setlength{\gotham@progressinheadfoot}{
+#2#1 * \ratio{\insertframenumber pt}{\inserttotalframenumber pt}
+}
+
+\begin{beamercolorbox}[wd=#1, ht=1.035\gothamProgressHeadFootLineheight]{#3}
+\;\hfill
+\begin{tikzpicture}[rounded~corners=0.5\gothamProgressHeadFootLineheight, very~thin]
+\usebeamercolor{progress~bar~in~head/foot}
+
+\shade[top~color=progress~bar~in~head/foot.bg!65, bottom~color=progress~bar~in~head/foot.bg!65, middle~color=progress~bar~in~head/foot.bg]
+(0pt, 0pt) rectangle ++ (#2#1, \gothamProgressHeadFootLineheight)
+;
+
+\bool_if:NTF \l_gotham_progbar_advancement_tlbr_bool {
+\shade[draw=progress~bar~in~head/foot.fg, top~color=progress~bar~in~head/foot.fg!70, bottom~color=progress~bar~in~head/foot.fg!70, middle~color=progress~bar~in~head/foot.fg]
+(0pt, 0pt) rectangle ++ (\gotham@progressinheadfoot, \gothamProgressHeadFootLineheight)
+;
+}{
+\shade[draw=progress~bar~in~head/foot.fg, top~color=progress~bar~in~head/foot.fg!70, bottom~color=progress~bar~in~head/foot.fg!70, middle~color=progress~bar~in~head/foot.fg]
+(#2#1, \gothamProgressHeadFootLineheight) rectangle ++ (-\gotham@progressinheadfoot, -\gothamProgressHeadFootLineheight)
+;
+}
+
+\bool_if:NTF \l_gotham_pmfn_bool {
+\node at (#2#1/2, \gothamProgressHeadFootLineheight/2)
+[text~height=0.1pt, text~depth=0.05pt, inner~sep=0pt] %draw=red,
+{
+\usebeamercolor[fg]{normal~text}
+\raisebox{0.5\gothamProgressHeadFootLineheight+1.4pt}[0pt][0pt]{
+\hfuzz=#2#1
+\insertnavigation{#2#1}
+}
+}
+;
+}{
+}
+\end{tikzpicture}
+#4
+\hfill \;
+\end{beamercolorbox}
+}
+
+\defbeamertemplate{progress~bar~in~head/foot}{gotham~rounded~box}{
+\nointerlineskip
+\__gotham_rounded_box_progressbar:nnnn {\paperwidth}{0.93}{footline}{
+\hfill
+\raisebox{0.5\gothamProgressHeadFootLineheight-1.75pt}[0pt][0pt]{
+\fontsize{5pt}{0pt}\selectfont
+\usebeamercolor[fg]{normal~text}
+\fp_eval:n {round(\insertframenumber*100/\inserttotalframenumber,0)}\,\%
+}
+}
+}
+
+\defbeamertemplate{progress~bar~in~left}{gotham~rounded~box}{
+\nointerlineskip
+
+\settoheight{\gotham@temp@heightFrametitle}{\gotham@strut}
+\addtolength{\gotham@temp@heightFrametitle}{\gotham@frametitle@toppadding+\gotham@frametitle@bottompadding+\gothamProgressHeadFootLineheight}
+
+\setlength{\gotham@temp@PaperheightFrametitle}{\paperheight-\gotham@temp@heightFrametitle-\gothamFootlineHeight-\gothamFootlineDepth-0.25\baselineskip}
+
+\vspace{0.12275\paperheight}
+\rotatebox{90}{
+\__gotham_rounded_box_progressbar:nnnn {\gotham@temp@PaperheightFrametitle}{0.89}{footline}{
+\hfill
+\raisebox{0.5\gothamProgressHeadFootLineheight-1.75pt}[0pt][0pt]{
+\fontsize{5pt}{0pt}\selectfont
+\fp_eval:n {round(\insertframenumber*100/\inserttotalframenumber,0)}\,\%
+}
+}
+}
+}
+\defbeamertemplate{progress~bar~in~right}{gotham~rounded~box}{
+\nointerlineskip
+
+\settoheight{\gotham@temp@heightFrametitle}{\gotham@strut}
+\addtolength{\gotham@temp@heightFrametitle}{\gotham@frametitle@toppadding+\gotham@frametitle@bottompadding+\gothamProgressHeadFootLineheight}
+
+\setlength{\gotham@temp@PaperheightFrametitle}{\paperheight-\gotham@temp@heightFrametitle-\gothamFootlineHeight-\gothamFootlineDepth-0.25\baselineskip}
+
+\hspace{-\gothamProgressHeadFootLineheight-0.2pt}
+\vspace{\gotham@temp@heightFrametitle-27.75pt}
+\rotatebox{-90}{
+\__gotham_rounded_box_progressbar:nnnn {\gotham@temp@PaperheightFrametitle}{0.89}{footline}{
+\hfill
+\raisebox{0.5\gothamProgressHeadFootLineheight-1.75pt}[0pt][0pt]{
+\fontsize{5pt}{0pt}\selectfont
+\fp_eval:n {round(\insertframenumber*100/\inserttotalframenumber,0)}\,\%
+}
+}
+}
+}
+
+%%%%%%
+\newlength{\gothamProgressCircHeight}
+\setlength{\gothamProgressCircHeight}{1.8\baselineskip}
+\newlength{\gothamCounterCircleRadius}
+\setlength{\gothamCounterCircleRadius}{1.12ex}
+\newlength{\gothamProgressCircBorderWidth}
+\setlength{\gothamProgressCircBorderWidth}{1.65mm}
+
+%% Induced length used internally, but can still be tuned manually by inspired people.
+\newlength{\gothamProgressCircLogoRadius}
+\setlength{\gothamProgressCircLogoRadius}{1.2\gothamProgressCircHeight/2}
+\newlength{\gothamProgressCircLogoInnerRadius}
+\setlength{\gothamProgressCircLogoInnerRadius}{1.1\gothamProgressCircLogoRadius}
+\newlength{\gothamProgressCircLogoOuterRadius}
+\setlength{\gothamProgressCircLogoOuterRadius}{\gothamProgressCircLogoInnerRadius+\gothamProgressCircBorderWidth}
+\newlength{\gothamCounterRadius}
+\setlength{\gothamCounterRadius}{\gothamProgressCircLogoInnerRadius/2+\gothamProgressCircLogoOuterRadius/2}
+
+\fp_new:N \l_gotham_ratio_progresscircle_fp
+\fp_new:N \l_gotham_angle_counterradius_fp
+\fp_set:Nn \l_gotham_angle_counterradius_fp {
+\fpeval{ 2* asind (\gothamCounterCircleRadius / (2*\gothamCounterRadius)) }
+}
+
+%%%%%%
+\newcommand{\gothamInstituteLogoCircle}[1][4ex]{
+\includegraphics[height=#1]{gotham-logo.pdf}
+}
+
+\newcommand{\gothamProgressCircle}{
+\begin{tikzpicture}[remember~picture,overlay]
+\usebeamercolor{standin}
+\usebeamercolor{frametitle}
+\usebeamercolor{progress~bar~in~head/foot}
+
+\coordinate (localCenter);
+ \fill[fill=progress~bar~in~head/foot.bg] (localCenter) circle (\gothamProgressCircLogoOuterRadius);
+ % draw the inner circle
+ \fill[fill=frametitle.bg] (localCenter) circle (\gothamProgressCircLogoInnerRadius);
+\node at (localCenter) {\gothamInstituteLogoCircle[1.9\gothamProgressCircLogoRadius]};
+
+%% draw progress circle/bar
+\bool_if:NTF \l_gotham_ProgCircleMoving_bool {
+
+%% compute the angle for the progress circle
+\bool_if:NTF \l_gotham_progbar_advancement_tlbr_bool {
+\fp_set:Nn \l_gotham_ratio_progresscircle_fp {-(360)*\insertframenumber/\inserttotalframenumber }
+}{
+\fp_set:Nn \l_gotham_ratio_progresscircle_fp {(360)*(\insertframenumber/\inserttotalframenumber)}
+}
+
+\draw[
+color=progress~bar~in~head/foot.fg,
+line~width=0.6*\gothamProgressCircBorderWidth
+]
+(localCenter)
+++
+([
+xshift=\gothamCounterRadius
+]localCenter)
+arc[
+radius=\gothamCounterRadius,
+start~angle=0,
+end~angle={\fp_eval:n \l_gotham_ratio_progresscircle_fp}
+]
+;
+
+\fill[fill=frametitle.bg]
+([
+xshift={\gothamCounterRadius}
+]localCenter.center)
+circle (0.3*\gothamProgressCircBorderWidth)
+;
+\node[
+]
+(pagenumframe) at (
+[rotate=
+{\fp_eval:n {\l_gotham_ratio_progresscircle_fp}},
+xshift=\gothamCounterRadius
+]localCenter) {}
+;
+\filldraw[
+draw=progress~bar~in~head/foot.bg,
+fill=standin.bg,
+thick,
+]
+(pagenumframe) circle (\gothamCounterCircleRadius)
+;
+\node[at=(pagenumframe.center), anchor=center] {
+{\usebeamercolor[fg]{standin}\tiny\insertframenumber}
+};
+}{
+
+%% compute the angle for the progress circle
+\bool_if:NTF \l_gotham_progbar_advancement_tlbr_bool {
+\fp_set:Nn \l_gotham_ratio_progresscircle_fp {-(360-2\l_gotham_angle_counterradius_fp)*\insertframenumber/\inserttotalframenumber -\l_gotham_angle_counterradius_fp}
+}{
+\fp_set:Nn \l_gotham_ratio_progresscircle_fp {(360-2\l_gotham_angle_counterradius_fp)*(\insertframenumber/\inserttotalframenumber) +\l_gotham_angle_counterradius_fp}
+}
+
+\draw[
+color=progress~bar~in~head/foot.fg,
+line~width=0.6*\gothamProgressCircBorderWidth
+]
+(localCenter)
+++
+([rotate={\fp_eval:n {\l_gotham_angle_counterradius_fp}},
+xshift=\gothamCounterRadius
+]localCenter)
+arc[
+radius=\gothamCounterRadius,
+start~angle={\fp_eval:n \l_gotham_angle_counterradius_fp},
+end~angle={\fp_eval:n \l_gotham_ratio_progresscircle_fp}
+]
+;
+
+\fill[fill=frametitle.bg]
+([
+rotate={\fp_eval:n {\l_gotham_ratio_progresscircle_fp}}, xshift={\gothamCounterRadius}
+]localCenter.center)
+circle (0.3*\gothamProgressCircBorderWidth)
+;
+\node[] (leftick)
+at ([xshift={\gothamProgressCircLogoOuterRadius+1.25ex}]localCenter) {}
+;
+%% draw a line ticks
+\draw[
+color=frametitle.fg,
+fill=frametitle.fg,
+]
+([xshift=\gothamProgressCircLogoOuterRadius,yshift={-0.05ex}] localCenter)
+rectangle ([yshift={0.05ex}] leftick)
+;
+\node[ at=(leftick), anchor=west, inner~sep = 1pt,]
+{\usebeamercolor[fg]{frametitle}\tiny\inserttotalframenumber}
+;
+\node[
+]
+(pagenumframe) at ([xshift=\gothamCounterRadius]localCenter) {}
+;
+\filldraw[
+draw=progress~bar~in~head/foot.bg,
+fill=standin.bg,
+thick,
+]
+(pagenumframe) circle (\gothamCounterCircleRadius)
+;
+\node[at=(pagenumframe.center), anchor=center] {
+{\usebeamercolor[fg]{standin}\tiny\insertframenumber}
+};
+}
+\end{tikzpicture}
+\bool_if:NTF \l_gotham_ProgCircleMoving_bool {
+\hspace{\gothamProgressCircLogoOuterRadius+0.75ex}
+}{
+\hspace{\gothamProgressCircLogoOuterRadius+3ex}
+}
+ % \tikzexternalenable
+}
+
+%%%%
+\tl_new:N \l__gotham_out_tmp_pbar_tl
+\keys_define:nn { gotham / outer }{
+progressbar~position .choice:,
+progressbar~position .usage:n = { general },
+progressbar~position .default:n = { none },
+
+progressbar~position / none .code:n = {
+\tl_set:Nn \l__gotham_out_tmp_pbar_tl {none}
+
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {head} {
+}{
+\setbeamertemplate{headline}[default/\prop_item:Nn \l__gotham_template_name_prop {headline/default}]
+}
+\setbeamertemplate{frametitle}[default/\prop_item:Nn \l__gotham_template_name_prop {frametitle/default}]
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {foot} {
+}{
+\setbeamertemplate{footline}[default/\prop_item:Nn \l__gotham_template_name_prop {footline/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {left} {
+}{
+\setbeamertemplate{sidebar~left}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~left/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {right} {
+}{
+\setbeamertemplate{sidebar~right}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~right/default}]
+}
+
+\__gotham_set_prop_template:nn{includeLogo/default}{gotham~square}
+\setbeamertemplate{section~in~head/foot~shaded}[default/\prop_item:Nn \l__gotham_template_name_prop {section~in~head/foot~shaded/default}]
+\setbeamertemplate{section~in~head/foot}[default/\prop_item:Nn \l__gotham_template_name_prop {section~in~head/foot/default}]
+},
+progressbar~position / head .code:n = {
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {head} {
+} {
+\tl_set:Nn \l__gotham_out_tmp_pbar_tl {head}
+
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {head} {
+}{
+\setbeamertemplate{headline}[default/\prop_item:Nn \l__gotham_template_name_prop {headline/default}]
+}
+\setbeamertemplate{frametitle}[default/\prop_item:Nn \l__gotham_template_name_prop {frametitle/default}]
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {foot} {
+}{
+\setbeamertemplate{footline}[default/\prop_item:Nn \l__gotham_template_name_prop {footline/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {left} {
+}{
+\setbeamertemplate{sidebar~left}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~left/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {right} {
+}{
+\setbeamertemplate{sidebar~right}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~right/default}]
+}
+
+\addtobeamertemplate{headline}{}{
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {head} {
+\usebeamertemplate*{progress~bar~in~head/foot}
+}{}
+}
+}
+},
+progressbar~position / frametitle .code:n = {
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {frametitle} {
+} {
+\tl_set:Nn \l__gotham_out_tmp_pbar_tl {frametitle}
+
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {head} {
+}{
+\setbeamertemplate{headline}[default/\prop_item:Nn \l__gotham_template_name_prop {headline/default}]
+}
+\setbeamertemplate{frametitle}[default/\prop_item:Nn \l__gotham_template_name_prop {frametitle/default}]
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {foot} {
+}{
+\setbeamertemplate{footline}[default/\prop_item:Nn \l__gotham_template_name_prop {footline/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {left} {
+}{
+\setbeamertemplate{sidebar~left}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~left/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {right} {
+}{
+\setbeamertemplate{sidebar~right}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~right/default}]
+}
+
+\addtobeamertemplate{frametitle}{}{
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {frametitle} {
+\usebeamertemplate*{progress~bar~in~head/foot}
+}{}
+}
+}
+},
+progressbar~position / foot .code:n = {
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {footline} {
+} {
+\tl_set:Nn \l__gotham_out_tmp_pbar_tl {footline}
+
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {head} {
+}{
+\setbeamertemplate{headline}[default/\prop_item:Nn \l__gotham_template_name_prop {headline/default}]
+}
+\setbeamertemplate{frametitle}[default/\prop_item:Nn \l__gotham_template_name_prop {frametitle/default}]
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {foot} {
+}{
+\setbeamertemplate{footline}[default/\prop_item:Nn \l__gotham_template_name_prop {footline/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {left} {
+}{
+\setbeamertemplate{sidebar~left}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~left/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {right} {
+}{
+\setbeamertemplate{sidebar~right}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~right/default}]
+}
+
+\addtobeamertemplate{footline}{}{
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {footline} {
+\usebeamertemplate*{progress~bar~in~head/foot}
+}{}
+}
+}
+},
+progressbar~position / circlehead .code:n = {
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {circlehead} {
+} {
+\tl_set:Nn \l__gotham_out_tmp_pbar_tl {circlehead}
+
+%%%\prop_put:Nnn \l__gotham_template_name_SAVE_prop {includeLogo/default} {gotham~square} % not needed after all.
+\__gotham_set_prop_template:nn{includeLogo/default}{gotham~circle}
+\__gotham_set_template:nn{section~in~head/foot~shaded}{default/gotham~secSubsec}
+\__gotham_set_template:nn{section~in~head/foot}{default/gotham~secSubsec}
+
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {head} {
+\addtobeamertemplate{headline}{}{
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {circlehead} {
+\begin{beamercolorbox}[wd=1.0\paperwidth, ht=2.5ex, dp=1.4ex, left]{headfoot}
+\usebeamerfont{section~in~head/foot}\hspace*{3.5ex}
+\usebeamertemplate{section~in~head/foot}
+\end{beamercolorbox}
+}{}
+}
+}{
+\__gotham_set_template:nn{headline}{default/gotham~section}
+}
+\setbeamertemplate{frametitle}[default/\prop_item:Nn \l__gotham_template_name_prop {frametitle/default}]
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {foot} {
+}{
+\setbeamertemplate{footline}[default/\prop_item:Nn \l__gotham_template_name_prop {footline/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {left} {
+}{
+\setbeamertemplate{sidebar~left}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~left/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {right} {
+}{
+\setbeamertemplate{sidebar~right}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~right/default}]
+}
+}
+},
+progressbar~position / left .code:n = {
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {left} {
+} {
+\tl_set:Nn \l__gotham_out_tmp_pbar_tl {left}
+
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {head} {
+}{
+\setbeamertemplate{headline}[default/\prop_item:Nn \l__gotham_template_name_prop {headline/default}]
+}
+\setbeamertemplate{frametitle}[default/\prop_item:Nn \l__gotham_template_name_prop {frametitle/default}]
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {foot} {
+}{
+\setbeamertemplate{footline}[default/\prop_item:Nn \l__gotham_template_name_prop {footline/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {left} {
+}{
+\setbeamertemplate{sidebar~left}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~left/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {right} {
+}{
+\setbeamertemplate{sidebar~right}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~right/default}]
+}
+
+\addtobeamertemplate{sidebar~left}{}{
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {left} {
+\usebeamertemplate*{progress~bar~in~left}
+}{}
+}
+}
+},
+progressbar~position / right .code:n = {
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {right} {
+} {
+\tl_set:Nn \l__gotham_out_tmp_pbar_tl {right}
+
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {head} {
+}{
+\setbeamertemplate{headline}[default/\prop_item:Nn \l__gotham_template_name_prop {headline/default}]
+}
+\setbeamertemplate{frametitle}[default/\prop_item:Nn \l__gotham_template_name_prop {frametitle/default}]
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {foot} {
+}{
+\setbeamertemplate{footline}[default/\prop_item:Nn \l__gotham_template_name_prop {footline/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {left} {
+}{
+\setbeamertemplate{sidebar~left}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~left/default}]
+}
+\tl_if_eq:VnTF \l__gotham_out_tmp_mfnposi_tl {right} {
+}{
+\setbeamertemplate{sidebar~right}[default/\prop_item:Nn \l__gotham_template_name_prop {sidebar~right/default}]
+}
+
+\addtobeamertemplate{sidebar~right}{}{
+\tl_if_eq:VnTF \l__gotham_out_tmp_pbar_tl {right} {
+\usebeamertemplate*{progress~bar~in~right}
+}{}
+}
+}
+},
+
+progressbar~position / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'#1'~is~unknown~for~the~(known)~option~'progressbar~position',~so~being~ignored. }{helping~message: progressbar~position / unknown} },
+}
+
+%%%%
+\keys_define:nn { gotham / outer }{
+progressbar~style .choice:,
+progressbar~style .usage:n = { general },
+progressbar~style .default:n = { rectangle },
+
+progressbar~style / rectangle .code:n = {
+\__gotham_set_template:nn{progress~bar~in~head/foot}{gotham~rectangle}
+\__gotham_set_template:nn{progress~bar~in~left}{gotham~rectangle}
+\__gotham_set_template:nn{progress~bar~in~right}{gotham~rectangle}
+},
+
+progressbar~style / rounded~box .code:n = {
+\__gotham_set_template:nn{progress~bar~in~head/foot}{gotham~rounded~box}
+\__gotham_set_template:nn{progress~bar~in~left}{gotham~rounded~box}
+\__gotham_set_template:nn{progress~bar~in~right}{gotham~rounded~box}
+},
+
+progressbar~style / moving~circle .code:n = {
+\bool_set_true:N \l_gotham_ProgCircleMoving_bool
+},
+
+progressbar~style / fixed~circle .code:n = {
+\bool_set_false:N \l_gotham_ProgCircleMoving_bool
+},
+
+progressbar~style / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'#1'~is~unknown~for~the~(known)~option~'progressbar~style',~so~being~ignored. }{helping~message: progressbar~style / unknown} },
+}
+
+%%%%
+\keys_define:nn { gotham / outer }{
+progressbar~advancement .choice:,
+progressbar~advancement .usage:n = { general },
+progressbar~advancement .default:n = { tlbr },
+
+progressbar~advancement / tlbr .code:n = {
+\bool_set_true:N \l_gotham_progbar_advancement_tlbr_bool
+},
+progressbar~advancement / TLBR .code:n = {
+\bool_set_true:N \l_gotham_progbar_advancement_tlbr_bool
+},
+
+progressbar~advancement / brlt .code:n = {
+\bool_set_false:N \l_gotham_progbar_advancement_tlbr_bool
+},
+progressbar~advancement / BRLT .code:n = {
+\bool_set_false:N \l_gotham_progbar_advancement_tlbr_bool
+},
+
+progressbar~advancement / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'#1'~is~unknown~for~the~(known)~option~'progressbar~advancement',~so~being~ignored. }{helping~message: progressbar~advancement / unknown} },
+}
+
+%%%%
+\keys_define:nn { gotham / outer }{
+progressbar~mfn .choice:,
+progressbar~mfn .usage:n = { general },
+progressbar~mfn .default:n = { off },
+
+progressbar~mfn / true .code:n = {
+\bool_set_true:N \l_gotham_pmfn_bool
+
+\__gotham_set_template:nn{section~in~head/foot~shaded}{default/empty}
+\__gotham_set_template:nn{section~in~head/foot}{default/empty}
+\renewcommand{\gothamPatchSectionbox}{
+\ht\beamer@sectionbox=0.ex
+\dp\beamer@sectionbox=0.ex
+}
+},
+progressbar~mfn / on .code:n = {
+\bool_set_true:N \l_gotham_pmfn_bool
+
+\__gotham_set_template:nn{section~in~head/foot~shaded}{default/empty}
+\__gotham_set_template:nn{section~in~head/foot}{default/empty}
+\renewcommand{\gothamPatchSectionbox}{
+\ht\beamer@sectionbox=0.ex
+\dp\beamer@sectionbox=0.ex
+}
+},
+progressbar~mfn / enable .code:n = {
+\bool_set_true:N \l_gotham_pmfn_bool
+
+\__gotham_set_template:nn{section~in~head/foot~shaded}{default/empty}
+\__gotham_set_template:nn{section~in~head/foot}{default/empty}
+\renewcommand{\gothamPatchSectionbox}{
+\ht\beamer@sectionbox=0.ex
+\dp\beamer@sectionbox=0.ex
+}
+},
+
+progressbar~mfn / false .code:n = { \bool_set_false:N \l_gotham_pmfn_bool },
+progressbar~mfn / off .code:n = { \bool_set_false:N \l_gotham_pmfn_bool },
+progressbar~mfn / disable .code:n = { \bool_set_false:N \l_gotham_pmfn_bool },
+
+progressbar~mfn / unknown .code:n = { \PackageWarning{ gotham } { The~choice~'#1'~is~unknown~for~the~(known)~option~'progressbar~mfn',~so~being~ignored. }{helping~message: progressbar~mfn / unknown} },
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\keys_set:nn { gotham / outer } {
+sidebar~canvas~right~template, sidebar~canvas~left~template,
+edging~default,
+frametitle~template, framesubtitle~template, frametitle~continuation~template,
+numbering,
+rotateFooter~default,
+footer~template,
+mini~frames~shape, mini~frames~bundle,
+mini~frames~compress,
+mini~frames~nav~spreading,
+mini~frames~nav~sectioning,
+mini~frames~nav~position,
+progressbar~position, progressbar~style, progressbar~advancement, progressbar~mfn,
+}
+
+\ProcessKeyOptions[ gotham / outer ]
+
+%%
+%% Adapted from classic "A model .dtx file" by Joseph Wright
+%% https://www.texdev.net/2009/10/06/a-model-dtx-file/
+%%
+%% End of file `beamerouterthemegotham.sty'.
diff --git a/Master/texmf-dist/tex/latex/beamertheme-gotham/beamerthemegotham.sty b/Master/texmf-dist/tex/latex/beamertheme-gotham/beamerthemegotham.sty
new file mode 100644
index 00000000000..d430da2c568
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/beamertheme-gotham/beamerthemegotham.sty
@@ -0,0 +1,173 @@
+%%
+%% This is file `beamerthemegotham.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% gotham.dtx (with options: `package')
+%%
+%% Copyright (C) 2023-20** by Romain NOËL <romainoel@free.fr>
+%%
+%% 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 Romain NOËL.
+%% Contributors: Romain NOËL (2023-20**)
+%%
+\ProvidesExplPackage{beamerthemegotham}{2024/09/20}{1.1.0.b}{A modern, minimal-ish, versatile and extendable yet robust theme for Beamer}
+\RequirePackage{expl3}
+\RequirePackage{xparse}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%% PACKAGE %%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\providecommand\ifratio[3]{%
+\ifnum#1=169%
+\ifdim\beamer@paperwidth=16.00cm\relax%
+\ifdim\beamer@paperheight=9.00cm\relax%
+#2%
+\else%
+#3%
+\fi%
+\else%
+#3%
+\fi%
+\else%
+\ifnum#1=43%
+\ifdim\beamer@paperwidth=12.80cm\relax%
+\ifdim\beamer@paperheight=9.60cm\relax%
+#2%
+\else%
+#3%
+\fi%
+\else%
+#3%
+\fi%
+\fi%
+\fi%
+}
+\providecommand\ifscreenratio[2]{%
+\ifdim\beamer@paperwidth=16.00cm\relax%
+\ifdim\beamer@paperheight=9.00cm\relax%
+#1%
+\fi%
+\fi%
+\ifdim\beamer@paperwidth=12.80cm\relax%
+\ifdim\beamer@paperheight=9.60cm\relax%
+#2%
+\fi%
+\fi%
+}
+
+\usefonttheme{gotham}
+\usecolortheme{gotham}
+\useinnertheme{gotham}
+\useoutertheme{gotham}
+
+%%%%% Setting keys %%%%%
+
+\int_new:N \l_gotham_lookup_cnt
+\int_set:Nn \l_gotham_lookup_cnt {0}
+
+\seq_const_from_clist:Nn \c__gotham_load_submodules_seq { font, color, inner, outer }
+
+\cs_new_protected:Npn \__gotham_lookup_keymodules:nn #1#2
+{
+\int_incr:N \l_gotham_lookup_cnt
+
+\if_int_compare:w \l_gotham_lookup_cnt < 2
+\else:
+\seq_map_inline:Nn \c__gotham_load_submodules_seq
+{
+\keys_if_exist:nnT { gotham / ##1 } {#1}
+{
+\tl_if_empty:nTF {#2}
+{ \keys_set:nn { gotham / ##1 } { #1 } }
+{ \keys_set:nn { gotham / ##1 } { #1 = {#2} } }
+\prg_break:
+}
+}
+\msg_error:nnn { gotham } { unknown-key } {#1}
+\prg_break_point:
+\fi:
+}
+\cs_generate_variant:Nn \__gotham_lookup_keymodules:nn { Vn }
+\msg_new:nnn { gotham } { unknown-key } { Unknown~ key~ #1~ encountered. }
+
+\prop_new:N \l__gotham_all_all_user_keys_prop
+\prop_const_from_keyval:Nn \c__gotham_all_pkg_keys_prop {}
+
+\keys_define:nn { gotham / all / all }
+{
+unknown .code:n =
+{\__gotham_lookup_keymodules:Vn \l_keys_key_str {#1}}
+}
+
+\cs_new_protected:Npn \__gotham_set_default_from_keyval:nnn #1 #2 #3
+{ %%
+\tl_if_novalue:nTF {#2}
+{ % no user keys given so _user_keys_prop is taking pkg prop
+\prop_set_eq:cc { l__gotham_#3_#1_user_keys_prop } { c__gotham_#3_pkg_keys_prop }
+}{ % user key given and put it in prop
+\prop_put_from_keyval:cn { l__gotham_#3_#1_user_keys_prop } {#2}
+}% end if
+\__gotham_set_default_auxi:cnn { l__gotham_#3_#1_user_keys_prop } {#1} {#3}
+\keys_set:nn { gotham/#3/#1 } { default }
+}
+\cs_new_protected:Npn \__gotham_set_default_auxi:Nnn #1 #2 #3
+{
+\__gotham_set_default_auxii:fnn { \prop_to_keyval:N #1 } {#2} {#3}
+}
+\cs_generate_variant:Nn \__gotham_set_default_auxi:Nnn { c }
+\cs_new_protected:Npn \__gotham_set_default_auxii:nnn #1 #2 #3
+{
+\keys_define:nn { gotham/#3/#2 } { default .meta:n = {#1} }
+}
+\cs_generate_variant:Nn \__gotham_set_default_auxii:nnn { f }
+\DeclareDocumentCommand{\gothamset}{ m }
+{
+\__gotham_set_default_from_keyval:nnn { all } {#1} { all }
+\keys_set:nn { gotham/all/all } { default }
+}
+
+\def\gotham@plaintitleformat#1{#1}
+\newcommand{\mreducelistspacing}{\vspace{-\topsep}}
+
+\ProcessOptionsBeamer
+\keys_define:nn { gotham / font }
+{
+unknown .code:n =
+{\__gotham_lookup_keymodules:Vn \l_keys_key_str {#1}}
+}
+\keys_define:nn { gotham / color }
+{
+unknown .code:n =
+{\__gotham_lookup_keymodules:Vn \l_keys_key_str {#1}}
+}
+\keys_define:nn { gotham / inner }
+{
+unknown .code:n =
+{\__gotham_lookup_keymodules:Vn \l_keys_key_str {#1}}
+}
+\keys_define:nn { gotham / outer }
+{
+unknown .code:n =
+{\__gotham_lookup_keymodules:Vn \l_keys_key_str {#1}}
+}
+
+\ProcessKeyOptions[ gotham / font ]
+\ProcessKeyOptions[ gotham / color ]
+\ProcessKeyOptions[ gotham / inner ]
+\ProcessKeyOptions[ gotham / outer ]
+
+%%
+%% Adapted from classic "A model .dtx file" by Joseph Wright
+%% https://www.texdev.net/2009/10/06/a-model-dtx-file/
+%%
+%% End of file `beamerthemegotham.sty'.
diff --git a/Master/texmf-dist/tex/latex/beamertheme-rainbow/beamertheme-rainbow-doc-settings.sty b/Master/texmf-dist/tex/latex/beamertheme-rainbow/beamertheme-rainbow-doc-settings.sty
deleted file mode 100644
index 777cedba6ef..00000000000
--- a/Master/texmf-dist/tex/latex/beamertheme-rainbow/beamertheme-rainbow-doc-settings.sty
+++ /dev/null
@@ -1,199 +0,0 @@
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Personal helper theme for package documentations
-% Copyright samcarter
-%
-% This file may be distributed and/or modified
-% under the LaTeX Project Public License 1.3c or later
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-% Usage:
-% ln ~/Life/latex/beamertheme-sam/themesam.sty package-doc-settings.sty
-% \usepackage[
-% themecolor=samdblue
-% ]{\jobname-settings}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Colours
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\RequirePackage{xcolor}
-\definecolor{samyellow}{RGB}{246,193,65}
-\definecolor{samorange}{RGB}{241,147,45}
-\definecolor{samred}{RGB}{191,26,46}% TikZbricks
-\definecolor{sammagenta}{RGB}{170,42,104}% TikZmarmots
-\definecolor{samviolet}{RGB}{136,46,114}% TikZlings
-\definecolor{samlila}{RGB}{101,67,159}% Rainbow beamer theme
-\definecolor{samdblue}{RGB}{0,51,134}% beamer theme
-\definecolor{samlblue}{RGB}{22,89,155}% TikZducks
-\definecolor{samteal}{RGB}{25,143,157}% Tcolorbox beamer theme
-\definecolor{samlgreen}{RGB}{68,170,153}% Jigsaw
-\definecolor{samdgreen}{RGB}{78,178,125}
-\definecolor{samlgray}{RGB}{160,160,185}
-\definecolor{samdgray}{RGB}{60,60,85}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Package options
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\RequirePackage{xkeyval}
-\DeclareOptionX{themecolor}[samdblue]{\colorlet{themecolor}{#1}}
-\DeclareOptionX{listingcolor}[samlblue]{\colorlet{listingcolor}{#1}}
-\ExecuteOptionsX{themecolor,listingcolor}
-\ProcessOptionsX
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Packages
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\@ifclassloaded{beamer}{}{%
- \RequirePackage[english]{babel}
- \RequirePackage[paper=a4paper,margin=2.9cm]{geometry}
- \RequirePackage{scrlayer-scrpage}
- \let\hrulefillx\hrulefill
- \RequirePackage[bitstream-charter]{mathdesign}
- \let\hrulefill\hrulefillx
- \RequirePackage[hang,flushmargin,bottom]{footmisc}
- \RequirePackage{footnotehyper}
- \makesavenoteenv{tcolorbox}
- \RequirePackage[all]{nowidow}
- \RequirePackage[colorlinks=true,breaklinks=true,allcolors=themecolor,hyperfootnotes=false]{hyperref}
-}
-\RequirePackage[T1]{fontenc}
-\RequirePackage{xspace}
-\RequirePackage{inconsolata}% mono font with bold, but italic is missing
-% \RequirePackage[scale=0.85]{cascadia-code}
-% \AddToHook{cmd/ttfamily/before}{\fontseries{sl}}
-\RequirePackage{iexec}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Listings
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\RequirePackage[
- cachedir=$TMPDIR/minted/
-]{minted}
-
-% smuggling custom pygmentize style in cache folder
-% (a real pygmentise style would need installtion in some python folder)
-\begin{filecontents*}[noheader]{./sam.pygstyle}
-\makeatletter
-\def\PYG@reset{\let\PYG@it=\relax \let\PYG@bf=\relax%
- \let\PYG@ul=\relax \let\PYG@tc=\relax%
- \let\PYG@bc=\relax \let\PYG@ff=\relax}
-\def\PYG@tok#1{\csname PYG@tok@#1\endcsname}
-\def\PYG@toks#1+{\ifx\relax#1\empty\else%
- \PYG@tok{#1}\expandafter\PYG@toks\fi}
-\def\PYG@do#1{\PYG@bc{\PYG@tc{\PYG@ul{%
- \PYG@it{\PYG@bf{\PYG@ff{#1}}}}}}}
-\def\PYG#1#2{\PYG@reset\PYG@toks#1+\relax+\PYG@do{#2}}
-
-% optional arguments
-\expandafter\def\csname PYG@tok@na\endcsname{\def\PYG@tc##1{\textcolor{black}{##1}}}
-
-% macros
-\expandafter\def\csname PYG@tok@k\endcsname{\def\PYG@tc##1{\textcolor{listingcolor}{\bfseries ##1}}}
-% curly brakets
-\expandafter\def\csname PYG@tok@nb\endcsname{\def\PYG@tc##1{\textcolor{listingcolor}{\bfseries ##1}}}
-
-% comments (italics won't work with the inconsolata font)
-\expandafter\def\csname PYG@tok@c\endcsname{\def\PYG@tc##1{\textcolor{gray}{##1}}}
-
-\def\PYGZbs{\char`\\}
-\def\PYGZus{\char`\_}
-\def\PYGZob{\char`\{}
-\def\PYGZcb{\char`\}}
-\def\PYGZca{\char`\^}
-\def\PYGZam{\char`\&}
-\def\PYGZlt{\char`\<}
-\def\PYGZgt{\char`\>}
-\def\PYGZsh{\char`\#}
-\def\PYGZpc{\char`\%}
-\def\PYGZdl{\char`\$}
-\def\PYGZhy{\char`\-}
-\def\PYGZsq{\char`\'}
-\def\PYGZdq{\char`\"}
-\def\PYGZti{\char`\~}
-% for compatibility with earlier versions
-\def\PYGZat{@}
-\def\PYGZlb{[}
-\def\PYGZrb{]}
-\makeatother
-\end{filecontents*}
-
-\iexec{mkdir -p $TMPDIR/minted && mv sam.pygstyle $TMPDIR/minted/.}
-
-\usemintedstyle{sam}
-\setminted{
- breaksymbolleft={},
- tabsize=2,
- breaklines=true,
-}
-\newminted[samcode]{latex}{}
-\newmintinline[saminline]{latex}{}
-
-% use non-bold and all coloured for inline code in articles
-\ifdefined\insertaspectratio\else
- \patchcmd{\minted@inputpyg@inline}{\minted@input}{\color{listingcolor}\renewcommand\textcolor[3][]{##3}\renewcommand\bfseries{}\minted@input}{}{}
-\fi
-
-\RequirePackage[most]{tcolorbox}
-\tcbuselibrary{minted}
-\tcbset{%
- colframe=themecolor,
- fonttitle=\bfseries,
- sidebyside,
- center lower,
- righthand width=5.7cm,
- bottom=2pt,
- top=2pt,
- left=3pt,
- right=3pt,
- sidebyside gap=10pt,
- lower separated=false,
- listing engine=minted,
- minted language=latex,
- colback=themecolor!10,
- sharp corners,
- boxrule=0pt,
- before title={\strut}
-}
-
-% avoid page breaks right in front of the tcolorbox
-\@ifclassloaded{beamer}{}{
- \tcbuselibrary{hooks}
- \tcbset{before pre={\nopagebreak[4]}}
-}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% document settings
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\@ifclassloaded{scrartcl}{%
- \KOMAoptions{parskip=half}
- \addtokomafont{sectioning}{\color{themecolor}}
- \addtokomafont{date}{\normalsize}
- \addtokomafont{author}{\normalsize}
- \setlength{\footnotemargin}{0.7em}
-}{}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Custom macros
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\providecommand*{\CTAN}{\textsc{CTAN}\xspace}
-\providecommand*{\TikZ}{Ti\emph{k}Z\xspace}
-\providecommand*{\miktex}{MiK\TeX\xspace}
-\providecommand*{\texlive}{\TeX{}Live\xspace}
-\providecommand*{\tikzbrick}{Ti\emph{k}Zbrick\xspace}
-\providecommand*{\tikzducks}{Ti\emph{k}Zducks\xspace}
-\providecommand*{\tikzlings}{Ti\emph{k}Zlings\xspace}
-\providecommand*{\tikzmarmots}{Ti\emph{k}Zmarmots\xspace}
-\providecommand*{\ConTeXt}{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt} \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty b/Master/texmf-dist/tex/latex/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty
index 9469f0591ef..1a2af1a6d84 100644
--- a/Master/texmf-dist/tex/latex/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty
+++ b/Master/texmf-dist/tex/latex/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty
@@ -1,4 +1,4 @@
-% !TeX root = test.tex
+% !TeX root = ./testing/test.tex
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% The tcolorbox inner theme
@@ -9,10 +9,10 @@
% https://github.com/samcarter/beamertheme-tcolorbox
%
% Released under the LaTeX Project Public License v1.3c or later
-% See http://www.latex-project.org/lppl.txt
+% See https://www.latex-project.org/lppl.txt
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{beamerinnerthemetcolorbox}[2024/04/29 version v0.7 Beamer blocks with tcolorboxes]
+\ProvidesPackage{beamerinnerthemetcolorbox}[2024/09/23 version v0.8 Beamer blocks with tcolorboxes]
\RequirePackage{tcolorbox}
\tcbuselibrary{skins,hooks}
@@ -197,11 +197,11 @@
\ifbeamer@tcb@blocks
\setbeamertemplate{block begin}{\begin{beamer@tcb@block}}
- \setbeamertemplate{block end}{\end{beamer@tcb@block}}
+ \setbeamertemplate{block end}{\onslide<1->\end{beamer@tcb@block}}
\setbeamertemplate{block alerted begin}{\begin{beamer@tcb@block}[ alerted]}
- \setbeamertemplate{block alerted end}{\end{beamer@tcb@block}}
+ \setbeamertemplate{block alerted end}{\onslide<1->\end{beamer@tcb@block}}
\setbeamertemplate{block example begin}{\begin{beamer@tcb@block}[ example]}
- \setbeamertemplate{block example end}{\end{beamer@tcb@block}}
+ \setbeamertemplate{block example end}{\onslide<1->\end{beamer@tcb@block}}
\fi
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/Master/texmf-dist/tex/latex/beautybook/beautybook-EN.cls b/Master/texmf-dist/tex/latex/beautybook/beautybook-EN.cls
deleted file mode 100644
index 1aa67be4a39..00000000000
--- a/Master/texmf-dist/tex/latex/beautybook/beautybook-EN.cls
+++ /dev/null
@@ -1,1197 +0,0 @@
-%This Class is based on the default book class and options will be passed
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{beautybook-EN}[30-06-2024 V10.0 beautybook Class]
-\DeclareOption*{\PassOptionsToClass{\CurrentOption}{book}}
-\ProcessOptions\relax
-\LoadClass[twoside]{book}
-\RequirePackage[dvipsnames,svgnames,x11names,table]{xcolor}
-\RequirePackage{cncolours}
-\RequirePackage[utf8]{inputenc} % UTF-8编码
-\RequirePackage{times} % Times New Roman Font
-\RequirePackage[T1]{fontenc}
-\RequirePackage{microtype} % 字体间距调整
-\colorlet{outermarginfgcolor}{DarkCyan} % foregroundcolor 较深
-\colorlet{outermarginbgcolor}{DarkCyan!30} % backgroundcolor 较浅
-\RequirePackage{bropd} % math 自适应数学括号命令 \br{} !!!
-\RequirePackage{tikz-imagelabels} % tikz图像标注
-\RequirePackage{epigraph-keys} % 名言引用
-\RequirePackage{fitbox} % 图像自适应
-\RequirePackage{pgfornament-han}
-\RequirePackage{tikz}
-\usetikzlibrary{calc,shadows,hobby,intersections, decorations.markings, decorations.pathreplacing,spy,arrows,shapes,fadings,trees,mindmap,patterns,shapes.arrows,shapes.symbols,tikzmark,shapes.geometric,graphs, quotes, angles,decorations.pathmorphing,through,shadings,backgrounds,positioning,fit,arrows.meta,shapes.misc,decorations.shapes}
-\RequirePackage{pgfplots} %画图 %%页面样式设计核心包 %提供\pgfonlayer命令以及下列图层指令
-\pgfplotsset{compat=1.18}
-%
-\ExplSyntaxOn
-% 封面切换程序 (LaTeX3)!
-\keys_define:nn {beautybook/coverstyle}
- {
- cover-choose.choice:,
- cover-choose.value_required:n = true,
- cover-choose/cn.code:n = {\RequirePackage{stys/beautybook-cover-cn}},
- cover-choose/en.code:n = {\RequirePackage{stys/beautybook-cover-en}},
- cover-choose/enfig.code:n = {\RequirePackage{stys/beautybook-cover-enfig}},
- cover-choose/birkar.code:n = {\RequirePackage{stys/beautybook-cover-birkar}},
- %cover-choose .initial:n = en , % 设置 en 为初始值
- }
-\newtoks \l__beautybook_tmpa_toks
-\cs_new_protected:Npn \coverstyle
- {
- \tex_afterassignment:D \__beautybook_set_coverstyle:
- \l__beautybook_tmpa_toks
- }
-\cs_new:Npn \__beautybook_set_coverstyle:
- { \keys_set:nV { beautybook / coverstyle } \l__beautybook_tmpa_toks }
-% Math fonts
-\keys_define:nn {beautybook/mathstyle}
- {
- math-font.choice:,
- math-font.value_required:n = true,
- math-font/plain.code:n={},
- math-font/stix.code:n={
- \RequirePackage{stix}
- },
- math-font/mtpro2.code:n = {
- \RequirePackage{mtpro2}
- \RequirePackage{bm}
- \DeclareFontFamily{U}{nxlmi}{}
- \DeclareFontSubstitution{U}{nxlmi}{m}{it}
- \DeclareFontShape{U}{nxlmi}{m}{it}{
- <-6.3> nxlmi05
- <6.3-8.6> nxlmi07
- <8.6-> nxlmi0
- }{}
-
- \DeclareFontShape{U}{nxlmi}{b}{it}{
- <-6.3> nxlbmi05
- <6.3-8.6> nxlbmi07
- <8.6-> nxlbmi0
- }{}
- \renewcommand{\partial}{{\text{\usefont{U}{nxlmi}{m}{it}\symbol{64}}\mspace{1mu}}}
- },
- %cover-choose .initial:n = plain , % 设置 en 为初始值
- }
-\cs_new_protected:Npn \mathstyle
- {
- \tex_afterassignment:D \__beautybook_set_mathstyle:
- \l__beautybook_tmpa_toks
- }
-\cs_new:Npn \__beautybook_set_mathstyle:
- { \keys_set:nV { beautybook / mathstyle } \l__beautybook_tmpa_toks }
-\ExplSyntaxOff
-\RequirePackage{stys/beautybook-bottompage} %封底
-\RequirePackage{rotating}
-\tikzset{>=Stealth}
-\setlist{font=\upshape} % 取消所有列表默认距离 nosep,
-% 浮动环境设置
-% 默认情况下, \LaTeX{} 要求每页的文字至少占据 20%,否则该页就只单独放置一个浮动环境,
-% 而这通常不是我们想要的, 我们将这个要求降低到 5%.
-\renewcommand*{\textfraction}{0.05}
-% 有时如果多个浮动环境连续放在一起,
-% 会将它们分在几个不同页,即使它们可在同一页放
-% 得下. 我们可以通过修改 |\topfraction| 和 |\bottomfraction| 分别设置顶端和底端的浮
-% 动环境的最大比例.
-\renewcommand*{\topfraction}{0.9}
-\renewcommand*{\bottomfraction}{0.8}
-% 有时\LaTeX{}会把一个浮动环境单独放在一页,
-% 我们要求这个环境至少要占据 85% 才能单独放在一页.
-% 注意: |\floatpagefraction| 的数值必须小于 |\topfraction|.
-\renewcommand*{\floatpagefraction}{0.85}
-% 关于图片 graphicx
-% 如果图片没有指定后缀, 依次按下列顺序搜索
-\DeclareGraphicsExtensions{.pdf,.eps,.jpg,.png}
-% 设置图表搜索路径, 可以给图表文件夹取如下名字
-\graphicspath{{inner_pics/}{inner_pics/titleimages/}{figures/}{figure/}{pictures/}{picture/}{pic/}{pics/}{image/}{images/}}
-% \RequirePackage[physics]{stys/physicx}
-% \RequirePackage{stys/Symbols}
-\RequirePackage{extarrows}
-\usetikzlibrary{tikzmark}
-% \arrowname{super-script}
-% \arrowname[sub-script]{super-script}
-\RequirePackage{appendix} % 附录
-% \RequirePackage{stys/symbols}
-%
-\RequirePackage{amssymb,amsfonts,upgreek}
-\RequirePackage{makeidx}
-\RequirePackage{etoolbox} % 判断函数
-\RequirePackage{paracol}
-\RequirePackage{tikz-cd}
-\RequirePackage{imakeidx}
-\RequirePackage{anyfontsize}
-\RequirePackage{calc}
-\RequirePackage{xkeyval,ifthen}
-\RequirePackage[backgroundcolor=yellow!40!cyan!20,bordercolor=yellow!40!cyan!20,linecolor=DarkCyan]{todonotes}
-\RequirePackage{varwidth}
-\RequirePackage[colorlinks,linkcolor = purple, %%修改此处为你想要的颜色
-anchorcolor = purple, %%修改此处为你想要的颜色
-urlcolor = purple, %%修改此处为你想要的颜色
-citecolor = purple, %%修改此处为你想要的颜色
-]{hyperref}
-\setcounter{tocdepth}{3}
-\setcounter{secnumdepth}{3}%增加编号深度
-\RequirePackage{dashrule}
-\newlength\outermarginwidth
-\setlength\outermarginwidth{1.5cm}
-\newlength\covershift
-\setlength\covershift{5cm}
-\RequirePackage{caption}
-% 图注与表注格式
-\colorlet{captioncolor}{outermarginfgcolor} % 图片和表格题注文字颜色
-\makeatletter
-%%----------------------------------封面信息定义--------------------------------------------------------%%
-\newcommand\bookseries[1]{\def\@bookseries{#1}}
-\newcommand\subtitle[1]{\def\@subtitle{#1}}
-\newcommand\edition[1]{\def\@edition{#1}}
-\newcommand\presslogo[1]{\def\@presslogo{#1}}
-\newcommand\pressname[1]{\def\@pressname{#1}}
-\newcommand\coverimage[1]{\def\@coverimage{#1}}
-\newcommand\chapimage[1]{\def\@chapimage{#1}}
-%%----------------------------------封面信息定义--------------------------------------------------------%%
-\makeatother
-\RequirePackage{indentfirst}
-\RequirePackage{amsmath}
-\RequirePackage[left=2cm,right=2cm,top=.6cm,bottom=2.2cm]{geometry}
-\RequirePackage{xpatch}%修正章节编号
-\RequirePackage[automark]{scrlayer-scrpage}%页面设置宏包,隶属于koma-script文档类
-\RequirePackage{fontawesome5}
-\RequirePackage{mathrsfs}
-\RequirePackage[most]{tcolorbox}
-\tcbuselibrary{breakable, skins,theorems}%TcolorBox Library
-\RequirePackage{tabularx}
-\RequirePackage{lastpage}
-%\RequirePackage{twemojis}
-\RequirePackage{ninecolors}
-\RequirePackage{colortbl} %彩色表格
-\RequirePackage{tabularray}
-\UseTblrLibrary{amsmath}
-% 定义 +array, +matrix, +bmatrix, +Bmatrix, +pmatrix, +vmatrix, +Vmatrix 和 +cases 环境。其
-% 中,每一个环境都类似于不带 + 前缀的环境,但是就像 tblr 环境一样,使用 rowsep=2pt 默认值。
-% 除了+array 环境外,其余的每个环境都可以带一个可选项,通过该可选项,可能为环境设置内部
-% 参数。
-\UseTblrLibrary{booktabs} % 定义 \toprule、 \midrule、\bottomrule 和 \cmidrule 命令,这些命令可以直接用于 tblr环境中
-\UseTblrLibrary{diagbox} % 在tblr 环境中使用 \diagbox 和\diagboxthree 命令排版斜线表头
-\UseTblrLibrary{varwidth} % 为表格添加 measure 内部参数。当设置了 measure=vbox 后,则会使用 \vbox 测量单元格宽度。%可以使用stretch=-1 移除列表环境上下的间距, 注意,stretch=-1 选项也会移除单元格中的支架
-\RequirePackage{pgfornament}
-\RequirePackage{zhnumber}
-\RequirePackage{dashrule}
-\RequirePackage{adjustbox}
-\RequirePackage{enumitem}
-\RequirePackage{multicol}
-\RequirePackage{amsthm}
-\RequirePackage{thmtools,thm-restate}%定理环境 %定理的重写
-\RequirePackage{bclogo}
-\RequirePackage[normalem]{ulem}
-\RequirePackage{pgfplots} %画图 %%页面样式设计核心包 %提供\pgfonlayer命令以及下列图层指令
-\pgfplotsset{compat=1.18}
-\RequirePackage{graphicx}%修正minipage顶部对齐问题
-\pgfdeclarelayer{background} %背景%底层
-\pgfdeclarelayer{foreground} %上层
-\pgfdeclarelayer{top} %顶部
-\pgfdeclarelayer{bottom} %底部
-\pgfsetlayers{bottom,background,main,foreground,top}
-\newcommand{\tikzoverlay}[1]{\begin{tikzpicture}[remember picture,overlay] #1 \end{tikzpicture}}
-\RequirePackage[explicit]{titlesec}
-\RequirePackage{titletoc}
-
-\newcommand\boxednum[1]
-{
-\tcbsidebyside[sidebyside adapt=left,
-nobeforeafter,fontupper=\sffamily\large\bfseries,fontlower=\large,colframe=white,colupper=white,colback=outermarginfgcolor!90,colbacklower=gray!10,frame hidden,width =\textwidth,
-top=0mm,bottom=0mm,right=0mm,left=2mm,before skip balanced=0em,after skip balanced=0em,arc=0pt,outer arc=0pt,bicolor,sidebyside gap=6mm,boxrule=0pt,sidebyside align=center,halign=center,halign lower=left,fuzzy shadow={-0.4mm}{0.4mm}{0mm}{0.2mm}{white!50!gray},% 上
-fuzzy shadow={0.4mm}{-0.4mm}{0mm}{0.2mm}{fill=white!40!gray},%下
-]{% left hand side % adjust from this side
-\thecontentslabel
-}{% right hand side
-\textbf{#1} \hfill \thecontentspage
-}% end
-}
-
-\newcommand\boxednonum[1]
-{
-\begin{tcolorbox}[nobeforeafter,fontupper=\large,fontlower=\large,colframe=white,fontupper=\sffamily\bfseries,colupper=white,colback=outermarginfgcolor!90,colbacklower=gray!10,frame hidden,width = \textwidth,sidebyside gap=6mm,
-top=0mm,bottom=0mm,right=0cm,left=2mm,before skip balanced=0em,after skip balanced=0em,arc=0pt,outer arc=0pt,bicolor,sidebyside,boxrule=0pt,sidebyside align=center,halign=center,halign lower=left,lefthand width=3mm,fuzzy shadow={-0.4mm}{0.4mm}{0mm}{0.2mm}{white!50!gray},% 上
-fuzzy shadow={0.4mm}{-0.4mm}{0mm}{0.2mm}{fill=white!40!gray},%下
-]
-\tcblower \textbf{#1}\hfill \thecontentspage
-\end{tcolorbox}
-}
-%
-\titlecontents{chapter}[0mm]
- {\addvspace{-.5em}}
- {\contentsmargin{0pt}\boxednum}
- {\contentsmargin{0pt}\boxednonum}
- {}
- [\addvspace{-.5em}]
-%
- \titlecontents{section}
- [4.5em] % ie, 1.5em (chapter) + 2.3em
- {}
- {\hyperlink{section.\thecontentslabel}{\contentslabel{2.2em}}}
- {\hspace*{-2.2em}}
- {\titlerule*[1pc]{.}\contentspage\hspace*{1.5mm}}
-%
- \titlecontents{subsection}
- [7.3em] % ie, 1.5em (chapter) + 2.3em
- {}
- {\hyperlink{subsection.\thecontentslabel}{\contentslabel{2.7em}}}
- {\hspace*{-2.7em}}
- {\titlerule*[1pc]{.}\contentspage\hspace*{1.5mm}}
-%
- \titlecontents{subsubsection}
- [10.7em] % ie, 1.5em (chapter) + 2.3em
- {}
- {\hyperlink{subsubsection.\thecontentslabel}{\contentslabel{3.3em}}}
- {\hspace*{-3.3em}}
- {\titlerule*[1pc]{.}\contentspage\hspace*{1.5mm}}
-
-% tcolorbox中插入图片或者tikz绘图方法
-\newcommand\Figure[4]{%
- \begin{center}
- \captionsetup{type=figure} %消除 Package caption Warning: The option `hypcap=true' will be ignored for this
-%(caption) particular \caption on input line XX.警告信息
- \includegraphics[#1]{#2}
- \captionof{figure}{#3}\label{#4}
- \end{center}
-}%用法 : 用于tcolorbox中插入图片
-\newcommand\Tikz[3]{%
- \begin{center}
- \captionsetup{type=figure} %消除 Package caption Warning: The option `hypcap=true' will be ignored for this(caption) particular \caption on input line XX.警告信息
- #3 %最后一个参数为Tikz画图代码窗口
- \captionof{figure}{#1}\label{#2} %第一与第二个参数是Tikz画图的名称与标签
- \end{center}
-} %用法 : 用于tcolorbox中插入Tikz绘图
-%特殊注释矩阵
-\newcommand\coolover[2]{\mathrlap{\smash{\overbrace{\phantom{%
- \begin{matrix} #2 \end{matrix}}}^{\mbox{$#1$}}}}#2}
-
-\newcommand\coolunder[2]{\mathrlap{\smash{\underbrace{\phantom{%
- \begin{matrix} #2 \end{matrix}}}_{\mbox{$#1$}}}}#2}
-
-\newcommand\coolleftbrace[2]{%
- #1\left\{\vphantom{\begin{matrix} #2 \end{matrix}}\right.}
-
-\newcommand\coolrightbrace[2]{%
- \left.\vphantom{\begin{matrix} #1 \end{matrix}}\right\}#2}
-\definecolor{lightergray}{gray}{0.99}
-
-\newcommand*{\circled}[1]{\lower.7ex\hbox{\tikz\draw (0pt, 0pt)%
- circle (.5em) node {\makebox[1em][c]{\small #1}};}}
-\newcommand{\twicecircle}{\raisebox{.7ex}{
- \begin{tikzpicture}[remember picture,overlay]
- \draw[line width=0.6pt,black!60] (0,0) circle (3pt);
- \fill[black] (0,0) circle (1.6pt) ;
- \end{tikzpicture}}
-}
-\newcommand{\exercise}[2][\bcicosaedre]{\bigskip
-\begin{tikzpicture}[remember picture,overlay]
-\draw[line width=2pt,loosely dotted,teal] (0,0)--node[pos=0.4,rectangle,minimum height=1.5em,font=\sffamily\Large,text=black,fill=black!2,drop shadow={opacity=.3, shadow xshift=0.1cm},anchor=center,
- inner sep=1.5mm,
- anchor=west,] {$#1$ ~ #2} (\linewidth,0);
-\end{tikzpicture}\bigskip\smallskip
-}
-\RequirePackage{extarrows}
-\newcommand{\R}{\mathbb{R}}
-\newcommand{\F}{\mathcal{F}}
-\newcommand{\lan}[1]{\langle #1 \rangle}
-\newenvironment{eq}[1]{\begin{equation}\begin{aligned}#1}{\end{aligned}\end{equation}} %有编号
-\newenvironment{eq*}[1]{\begin{equation*}\begin{aligned}#1}{\end{aligned}\end{equation*}} %无编号
-% \everymath{\displaystyle}
-
-%% -------- 章节样式
-\makeatletter
-% titleimage
-\ExplSyntaxOn
-\seq_new:N \g__beautybook_chapter_oimage_seq % odd
-\seq_new:N \g__beautybook_chapter_eimage_seq % even
-\seq_new:N \g__beautybook_part_oimage_seq % odd
-\seq_new:N \g__beautybook_part_eimage_seq % even
-%
-\keys_define:nn { beautybook/titleimage }
- {
- chapteroddimage .code:n =
- \seq_gset_from_clist:Nn \g__beautybook_chapter_oimage_seq {#1} ,
- chapterevenimage .code:n =
- \seq_gset_from_clist:Nn \g__beautybook_chapter_eimage_seq {#1} ,
- partoddimage .code:n =
- \seq_gset_from_clist:Nn \g__beautybook_part_oimage_seq {#1} ,
- partevenimage .code:n =
- \seq_gset_from_clist:Nn \g__beautybook_part_eimage_seq {#1} ,
- }
-\cs_new:Npn \__beautybook_title_image:Nn #1#2 % image seq, number
- { \seq_item:Nn #1 { \int_mod:nn {#2} { \seq_count:N #1 } + 1 } } %对照表-对录入的字符串进行编号
-\cs_new:Npn \beautybook@chapterimagename %生成索契表 : 判断奇偶数页并按(章节编号)!!读取相应的列表组中的字符串
- {
- \int_if_odd:nTF { \value{page} }
- { \__beautybook_title_image:Nn \g__beautybook_chapter_oimage_seq { \value{chapter} } }
- { \__beautybook_title_image:Nn \g__beautybook_chapter_eimage_seq { \value{chapter} } }
- }
-\cs_new:Npn \beautybook@partimagename
- {
- \int_if_odd:nTF { \value{page} }
- { \__beautybook_title_image:Nn \g__beautybook_part_oimage_seq { \value{part} } }
- { \__beautybook_title_image:Nn \g__beautybook_part_eimage_seq { \value{part} } }
- }
-\cs_new_protected:Npn \titleimage #1
- { \keys_set:nn { beautybook/titleimage } {#1} }
-\ExplSyntaxOff
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\titleformat{\chapter}{\huge\bfseries\filcenter}{}{1em}{
- \makebox[0pt][l]{\def\rad{7pt}%
- \begin{tikzpicture}[remember picture, overlay]%
- \begin{pgfonlayer}{bottom}
- \ifodd\value{page}
- \shade[right color=outermarginbgcolor!30,middle color=outermarginbgcolor!50,left color=outermarginfgcolor!30] (current page.north west) rectangle ++(\paperwidth,-.2\paperheight); % background odd
- \else
- \shade[left color=outermarginbgcolor!30,middle color=outermarginbgcolor!50,right color=outermarginfgcolor!30] (current page.north west) rectangle ++(\paperwidth,-.2\paperheight); % background even
- \fi
- \fill[outermarginfgcolor,opacity=.5]([shift={(0,-4.45cm)}]current page.north west) rectangle ++(\paperwidth,-2mm); % line
- \end{pgfonlayer}
- \path[fill=outermarginfgcolor]node[append after command={
- ([xshift=-3*\rad]chapinfoofpart.north west) to[out=0,in=-180,looseness=1] ([xshift=\rad]chapinfoofpart.south west) --([xshift=-\rad]chapinfoofpart.south east) to[out=0,in=180,looseness=1] ([xshift=3*\rad]chapinfoofpart.north east) --cycle},
- text=white,font=\sffamily\large\bfseries,align=center,minimum height=1cm] (chapinfoofpart) at ([shift={(.6\linewidth,-4.95cm)}]current page.north west) {Part\ \thepart};
- \begin{pgfonlayer}{bottom}
- \fill[outermarginfgcolor!90,opacity=0.5] ([shift={(-3*\rad,0)}]chapinfoofpart.north west) to[out=180,in=0,looseness=1] +(-4*\rad,-1.2cm)--([shift={(7*\rad,-1.2cm)}]chapinfoofpart.north east) to[out=-180,in=0,looseness=1] +(-4*\rad,1.2cm); % partnumber shade
- \end{pgfonlayer}
- \ifodd\value{page}
- \begin{pgfonlayer}{top}
- \fill[outermarginfgcolor,opacity=0.7,rounded corners=5pt]node[append after command={([yshift=2cm]chapnum.north west) rectangle (chapnum.south east)},right,text=white,minimum width=2cm,align=center,font=\sffamily\bfseries] (chapnum) at ([shift={(1.5cm,-2.5cm)}]current page.north west) {\scalebox{3}{\thechapter}};
- \begin{pgfonlayer}{foreground}
- \pattern[pattern=sixpointed stars,pattern color=white,opacity=1.0,rounded corners=5pt]
- ([yshift=2cm]chapnum.north west) rectangle (chapnum.south east);
- \end{pgfonlayer}
- \fill [outermarginfgcolor,path fading=fade up,rounded corners=5pt]%
- ([yshift=2cm]chapnum.north west) rectangle (chapnum.south east);
- \node[above left,font=\sc\fontsize{22pt}{22pt}\selectfont,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north east) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}};
- \end{pgfonlayer}
- \begin{pgfonlayer}{bottom}
- \node[right] (image) at ([shift={(-0.5cm,-2.8cm)}]current page.north west) {\includegraphics[width=7cm]{\@chapimage}};
- \end{pgfonlayer}
- \else
- \begin{pgfonlayer}{top}
- \fill[outermarginfgcolor,opacity=0.7,rounded corners=5pt]node[append after command={([yshift=2cm]chapnum.north west) rectangle (chapnum.south east)},left,text=white,minimum width=2cm,align=center,font=\sffamily\bfseries] (chapnum) at ([shift={(-1.5cm,-2.5cm)}]current page.north east) {\scalebox{3}{\thechapter}};
- \begin{pgfonlayer}{foreground}
- \pattern[pattern=sixpointed stars,pattern color=white,opacity=1.0,rounded corners=5pt]
- ([yshift=2cm]chapnum.north west) rectangle (chapnum.south east);
- \end{pgfonlayer}
- \fill [outermarginfgcolor,path fading=fade up,rounded corners=5pt]%
- ([yshift=2cm]chapnum.north west) rectangle (chapnum.south east);
- \node[above right,font=\sc\fontsize{22pt}{22pt}\selectfont,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north west) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}};
- \end{pgfonlayer}
- \begin{pgfonlayer}{background}
- \node[left] (image) at ([shift={(0.5cm,-2.8cm)}]current page.north east) {\includegraphics[width=7cm]{\@chapimage}};
- \end{pgfonlayer}
- \fi
- \path[fill=outermarginbgcolor]node[append after command={
- ([xshift=-2*\rad]pagenumber.south west) to[out=0,in=180,looseness=1] ([xshift=\rad]pagenumber.north west) --([xshift=-\rad]pagenumber.north east) to[out=0,in=-180,looseness=1] ([xshift=2*\rad]pagenumber.south east) --cycle},
- text=outermarginfgcolor,font=\sffamily\fontsize{15}{15}\selectfont\bfseries,align=center,minimum height=0.4cm,minimum width=1.3cm,inner sep=1.5mm] (pagenumber) at ([shift={(0,0.3cm)}]current page.south) {\thepage};
- \end{tikzpicture}}
- }
-\titleformat{name=\chapter,numberless}{\bfseries\huge\filcenter}{}{1em}{
- \makebox[0pt][l]{\def\rad{7pt}%
- \begin{tikzpicture}[remember picture, overlay]%
- \begin{pgfonlayer}{bottom}
- \ifodd\value{page}
- \shade[right color=outermarginbgcolor!30,middle color=outermarginbgcolor!50,left color=outermarginfgcolor!30] (current page.north west) rectangle ++(\paperwidth,-.2\paperheight); % background odd
- \else
- \shade[left color=outermarginbgcolor!30,middle color=outermarginbgcolor!50,right color=outermarginfgcolor!30] (current page.north west) rectangle ++(\paperwidth,-.2\paperheight); % background even
- \fi
- \fill[outermarginfgcolor,opacity=.5]([shift={(0,-4.45cm)}]current page.north west) rectangle ++(\paperwidth,-2mm); % line
- \end{pgfonlayer}
- \ifodd\value{page}
- \begin{pgfonlayer}{top}
- \node[above left,font=\sc\fontsize{25pt}{25pt}\selectfont,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north east) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}};
- \end{pgfonlayer}
- \begin{pgfonlayer}{bottom}
- \node[right] (image) at ([shift={(-0.5cm,-2.8cm)}]current page.north west) {\includegraphics[width=7cm]{\@chapimage}};
- \end{pgfonlayer}
- \else
- \begin{pgfonlayer}{top}
- \node[above right,font=\sc\fontsize{25pt}{25pt}\selectfont,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north west) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}};
- \end{pgfonlayer}
- \begin{pgfonlayer}{background}
- \node[left] (image) at ([shift={(0.5cm,-2.8cm)}]current page.north east) {\includegraphics[width=7cm]{\@chapimage}};
- \end{pgfonlayer}
- \fi
- \path[fill=outermarginbgcolor]node[append after command={
- ([xshift=-2*\rad]pagenumber.south west) to[out=0,in=180,looseness=1] ([xshift=\rad]pagenumber.north west) --([xshift=-\rad]pagenumber.north east) to[out=0,in=-180,looseness=1] ([xshift=2*\rad]pagenumber.south east) --cycle},
- text=outermarginfgcolor,font=\sffamily\fontsize{15}{15}\selectfont\bfseries,align=center,minimum height=0.4cm,minimum width=1.3cm,inner sep=1.5mm] (pagenumber) at ([shift={(0,0.3cm)}]current page.south) {\thepage};
- \end{tikzpicture}}
-}
-\titlespacing{\chapter}{0pt}{0pt}{80pt}
-\makeatother
-% -------- Part定制
-%%定义标题文字长度%%
-\newlength{\partstarlen}
-%%设置临界长度%%
-\newlength{\criticstarlen}
-\setlength{\criticstarlen}{\textwidth}
-% 定义垂直方向的渐变
-\tikzfading[name=fade bottom to top,
- bottom color=transparent!0, % 底部完全透明
- top color=transparent!100] % 顶部不透明
-\tikzfading[name=middle, top color=transparent!90, bottom
-color=transparent!90, middle color=transparent!20]
-\makeatletter
-\newcommand\partabstract[1]{\def\@partabstract{#1}}
-\newcommand\partimage[1]{\def\@partimage{#1}}
-\titleformat{\part}
-{\normalfont\huge\filcenter}
-{}
-{20pt}
-{\settowidth{\partstarlen}{\sc\huge #1} % 计算\partabstract的长度并写入到\partstarlen中
- \begin{tikzpicture}[remember picture,overlay]
- \def\barwidth{2cm}
- \fill[outermarginbgcolor,opacity=0.6]
- (current page.north west) rectangle (current page.south east);
- \ifodd\value{page}
- \fill [outermarginfgcolor!20]%
- (current page.north east) rectangle ++(-\outermarginwidth,-\paperheight);
- \pattern [pattern=north east lines,pattern color=outermarginfgcolor!50]%
- (current page.north east) rectangle ++(-\outermarginwidth,-\paperheight);
- \fill [outermarginbgcolor!90,path fading=fade south]%
- ([yshift=1mm]current page.north east) rectangle ++(-\outermarginwidth,-.8\paperheight);
- \fill [outermarginbgcolor,path fading=fade north]%
- (current page.south east) rectangle ++(-\outermarginwidth,.8\paperheight);%
- % lines
- \fill[outermarginfgcolor,rounded corners=2pt] (current page.north east) --++(-5pt,-0.15cm)--++(-\outermarginwidth+10pt,0) --++(-5pt,0.15cm)--cycle;
- \coordinate (anchor of headmark) at ([shift={(-1.2\outermarginwidth,-0.2cm)}]current page.north east);
- \node[below ,text=outermarginfgcolor,font=\sffamily\bfseries\fontsize{15}{20}\selectfont] (partpagenum) at ([shift={(-.5\outermarginwidth,0)}]current page.north east) {\thepage};
- \fill[outermarginfgcolor,rounded corners=2pt] (current page.south east) --++(-5pt,0.15cm)--++(-\outermarginwidth+10pt,0) --++(-5pt,-0.15cm)--cycle; % 页码横线
- \node[] (hbar) at ($(current page.north)!0.33!(current page.south)$) {
- \begin{tikzpicture}
- %%--------------- Horizontal Line --------------------%%
- \fill[outermarginbgcolor!70]
- (0,0) rectangle ++(\paperwidth,-1cm);
- %%--------------- Horizontal Line -------------------%%
- \fill[outermarginbgcolor]
- (0,-.25cm) rectangle ++(\paperwidth,-.5cm);
- \fill[outermarginfgcolor]
- (.67\paperwidth,-.25cm) rectangle ++(4.5cm,-.5cm);
- \fill[outermarginfgcolor!20!white]
- (.67\paperwidth-1mm,-.25cm) rectangle ++(1mm,-.5cm);
- \fill[outermarginfgcolor!20!white]
- (.67\paperwidth+4.4cm,-.25cm) rectangle ++(1mm,-.5cm);
- \end{tikzpicture}
- };
- \node[above,font=\sc\huge,shift={(.33\linewidth,.5\barwidth)}] (partname) at (hbar) {Part\ \thepart};
- \node[below left,font=\sc\huge,shift={(.146\linewidth,-\barwidth)}] (partcontents) at (partname) {\begin{varwidth}{.9\linewidth}\raggedright\baselineskip=25pt #1 \end{varwidth}}; % 标题名称
- \begin{pgfonlayer}{background}
- \node[above,shift={(-.4\linewidth,-4*\barwidth)}] at (partname) {\ifdefvoid{\@partimage}{}{\includegraphics[width=1.2\linewidth]{\@partimage}}}; % 图片位置调整
- % % 应用渐变效果
-\fill[path fading=fade bottom to top, fill=nuanbai] (current page.north west) rectangle ([xshift=-\outermarginwidth]current page.south east);
- \end{pgfonlayer}
-%判断标题文字长度与临界长度的关系
-\ifdim\partstarlen<\criticstarlen
-%如果标题长度小于临界长度则使用(hbar)定位
-\node[below,font=\itshape\fontsize{13}{13}\selectfont,shift={(0,-1.2*\barwidth)}] at (hbar) {\ifdefvoid{\@partabstract}{}{\begin{varwidth}{.9\linewidth}\baselineskip=3ex \@partabstract\end{varwidth}}}; % 简介文字调整
-\else
-\node[below,font=\itshape\fontsize{13}{13}\selectfont,shift={(0,-1.2*\barwidth)}] at (partcontents) {\ifdefvoid{\@partabstract}{}{\begin{varwidth}{.9\linewidth}\baselineskip=3ex \@partabstract\end{varwidth}}}; % 简介文字调整
-\fi
- \else
- \fill [outermarginfgcolor!20]%
- (current page.north west) rectangle ++(\outermarginwidth,-\paperheight);
- \pattern [pattern=north west lines,pattern color=outermarginfgcolor!50]%
- (current page.north west) rectangle ++(\outermarginwidth,-\paperheight);
- \fill [outermarginbgcolor!90,path fading=fade south]%
- ([yshift=1mm]current page.north west) rectangle ++(\outermarginwidth,-.8\paperheight);
- \fill [outermarginbgcolor,path fading=fade north]%
- (current page.south west) rectangle ++(\outermarginwidth,.8\paperheight);%
- % lines
- \fill[outermarginfgcolor,rounded corners=2pt] (current page.north west) --++(5pt,-0.15cm)--++(\outermarginwidth-10pt,0) --++(5pt,0.15cm)--cycle;
- \coordinate (anchor of headmark) at ([shift={(1.2\outermarginwidth,-0.2cm)}]current page.north west);
- \node[below ,text=outermarginfgcolor,font=\sffamily\bfseries\fontsize{15}{20}\selectfont] (partpagenum) at ([shift={(.5\outermarginwidth,0)}]current page.north west) {\thepage};
- \fill[outermarginfgcolor,rounded corners=2pt] (current page.south west) --++(5pt,0.15cm)--++(\outermarginwidth-10pt,0) --++(5pt,-0.15cm)--cycle; % 页码横线
- \node[] (hbar) at ($(current page.north)!0.33!(current page.south)$) {
- \begin{tikzpicture}
- %%--------------- Horizontal Line --------------------%%
- \fill[outermarginbgcolor!70]
- (0,0) rectangle ++(\paperwidth,-1cm);
- %%--------------- Horizontal Line -------------------%%
- \fill[outermarginbgcolor]
- (0,-.25cm) rectangle ++(\paperwidth,-.5cm);
- \fill[outermarginfgcolor]
- (.15\paperwidth,-.25cm) rectangle ++(4.5cm,-.5cm);
- \fill[outermarginfgcolor!20!white]
- (.15\paperwidth-1mm,-.25cm) rectangle ++(1mm,-.5cm);
- \fill[outermarginfgcolor!20!white]
- (.15\paperwidth+4.5cm,-.25cm) rectangle ++(1mm,-.5cm);
- \end{tikzpicture}
- };
- \node[above,font=\sc\huge,shift={(-.31\linewidth,.5\barwidth)}] (partname) at (hbar) {Part\ \thepart};
- \node[below right,font=\sc\huge,shift={(-.125\linewidth,-\barwidth)}] (partcontents) at (partname) {\begin{varwidth}{.9\linewidth}\raggedright\baselineskip=25pt #1 \end{varwidth}}; % 标题名称
- \begin{pgfonlayer}{background}
- \node[above,shift={(.35\linewidth,-4*\barwidth)}] at (partname) {\ifdefvoid{\@partimage}{}{\includegraphics[width=1.2\linewidth]{\@partimage}}}; % 图片位置调整
- % % 应用渐变效果
- \fill[path fading=fade bottom to top, fill=nuanbai] (current page.north east) rectangle ([xshift=\outermarginwidth]current page.south west);
- \end{pgfonlayer}
-%判断标题文字长度与临界长度的关系
-\ifdim\partstarlen<\criticstarlen
-%如果标题长度小于临界长度则使用(hbar)定位
-\node[below,font=\itshape\fontsize{13}{13}\selectfont,shift={(0,-1.2*\barwidth)}] at (hbar) {\ifdefvoid{\@partabstract}{}{\begin{varwidth}{.9\linewidth}\baselineskip=3ex \@partabstract\end{varwidth}}}; % 简介文字调整
-\else
-\node[below,font=\itshape\fontsize{13}{13}\selectfont,shift={(0,-1.2*\barwidth)}] at (partcontents) {\ifdefvoid{\@partabstract}{}{\begin{varwidth}{.9\linewidth}\baselineskip=3ex \@partabstract\end{varwidth}}}; % 简介文字调整
-\fi
- \fi
- \end{tikzpicture}}
-\makeatother
-\assignpagestyle{\part}{empty}
-\assignpagestyle{\chapter}{empty}
-
-
-%% -- Section
-\titleformat{\section}
-{}
-{}
-{-.5em} %左右移动\thesection标签位置
-{\mysectionformat{#1}}
-
-\titleformat{name=\section,numberless}{}{}{-.5em}{\mysectionnonumformat{#1}}
-
-\newcommand{\mysectionformat}[1]{%
-\makebox[0pt][l]{\def\rad{7pt}%
-\begin{tikzpicture}[remember picture]
- \path[fill=outermarginfgcolor,drop shadow={opacity=0.3,shadow xshift=.05cm,shadow yshift=-.05cm}]node[append after command={
- ([xshift=\rad]sec.north west) to[out=180,in=0,looseness=1] ([xshift=-3*\rad]sec.south west) --([xshift=-\rad]sec.south east) to[out=0,in=180,looseness=1] ([xshift=3*\rad]sec.north east) --cycle},
- text=white,font=\sffamily\large\bfseries,align=center,inner ysep=2mm] (sec) at (0,0) {Sec\ \thesection};
- \node[text=black,font=\large,below right] (secnum) at ([shift={(0,-1mm)}]sec.north east) {\begin{varwidth}{.85\linewidth}\setlength\baselineskip{18pt}\hspace{.5cm}#1\end{varwidth}};
-\end{tikzpicture}}}%最后一个选项为 [<after code>]
-
-\newcommand{\mysectionnonumformat}[1]{%
-\makebox[0pt][l]{\def\rad{7pt}%
-\begin{tikzpicture}[remember picture]
- \path[fill=outermarginfgcolor,drop shadow={opacity=0.3,shadow xshift=.05cm,shadow yshift=-.05cm}]node[append after command={
- ([xshift=\rad]sec.north west) to[out=180,in=0,looseness=1] ([xshift=-3*\rad]sec.south west) --([xshift=-\rad]sec.south east) to[out=0,in=180,looseness=1] ([xshift=3*\rad]sec.north east) --cycle},
- text=white,font=\sffamily\large\bfseries,align=center,inner ysep=2mm] (sec) at (0,0) {Sec};
- \node[text=black,font=\large,below right] (secnum) at ([shift={(0,-1mm)}]sec.north east) {\begin{varwidth}{.85\linewidth}\setlength\baselineskip{18pt}\hspace{.5cm}#1\end{varwidth}};
-\end{tikzpicture}}}%最后一个选项为 [<after code>]
-
-\titlespacing*{\section}{0pt}{3.5ex plus 1ex minus .2ex}{2.3ex plus .2ex}
-
-%%-------------------------------- SCRLAYER-SCRPAGE -------------------------------------%%
-%% SIDE-BAR
-\newlength\chapternumbersize
-\setlength\chapternumbersize{36pt}
-\setlength{\headheight}{40pt} % 页眉高度
-\renewcommand\chaptermarkformat{}
-% define a new mark for the chapter number
-\newmarks\chapternum
-\xapptocmd\chaptermark{\marks\chapternum{\thechapter}}{}{\PatchFailed}
-\newmarks\secnum
-\xapptocmd\sectionmark{\marks\secnum{\thesection}}{}{\PatchFailed}
-
-\newcommand*\outermarginpagemark{%
-\tikzoverlay{
- \begin{pgfonlayer}{top}
- \ifodd\value{page}
- \fill[outermarginfgcolor,rounded corners=2pt] (current page.north east) --++(-5pt,-0.15cm)--++(-\outermarginwidth+10pt,0) --++(-5pt,0.15cm)--cycle;
- \coordinate (anchor of headmark) at ([shift={(-1.2\outermarginwidth,-0.2cm)}]current page.north east);
- \node[below ,text=outermarginfgcolor,font=\sffamily\bfseries\fontsize{15}{15}\selectfont] at ([shift={(-.5\outermarginwidth,-0.15cm)}]current page.north east) {\thepage};
- \fill[outermarginfgcolor!50,rounded corners=1pt] ([shift={(0.2\outermarginwidth,0.2cm)}]anchor of headmark) --++(-5pt,-0.15cm)--++(-.45\linewidth,0) --++(-5pt,0.15cm)--cycle; % 页眉横线
- \node[below left,font=\upshape,text=outermarginfgcolor] at ([yshift=0.05cm]anchor of headmark) {\begin{varwidth}{\linewidth}\rightmark\end{varwidth}};
- \fill[outermarginfgcolor,rounded corners=2pt] (current page.south east) --++(-5pt,0.15cm)--++(-\outermarginwidth+10pt,0) --++(-5pt,-0.15cm)--cycle; % 页码横线
- \else
- \fill[outermarginfgcolor,rounded corners=2pt] (current page.north west) --++(5pt,-0.15cm)--++(\outermarginwidth-10pt,0) --++(5pt,0.15cm)--cycle;
- \coordinate (anchor of headmark) at ([shift={(1.2\outermarginwidth,-0.2cm)}]current page.north west);
- \node[below ,text=outermarginfgcolor,font=\sffamily\bfseries\fontsize{15}{15}\selectfont] at ([shift={(.5\outermarginwidth,-0.15cm)}]current page.north west) {\thepage};
- \fill[outermarginfgcolor!50,rounded corners=1pt] ([shift={(-0.2\outermarginwidth,0.2cm)}]anchor of headmark) --++(5pt,-0.15cm)--++(.45\linewidth,0) --++(5pt,0.15cm)--cycle; % 页眉横线
- \node[below right,font=\upshape,text=outermarginfgcolor] at ([yshift=0.05cm]anchor of headmark) {\begin{varwidth}{\linewidth}\rightmark\end{varwidth}};
- \fill[outermarginfgcolor,rounded corners=2pt] (current page.south west) --++(5pt,0.15cm)--++(\outermarginwidth-10pt,0) --++(5pt,-0.15cm)--cycle; % 页码横线
- \fi
- \end{pgfonlayer}}
-}
-\newlength\baryshift
-\setlength\baryshift{-2.5\outermarginwidth}
-\makeatletter
-% Add A Side-Bar Box For The Chapter Number
-\newcommand*\outermarginchapternumberbox{%
- \if@mainmatter
- \tikzoverlay{
- \shade[top color=outermarginfgcolor!90,bottom color=outermarginbgcolor]
- (\outermarginwidth,-.5\outermarginwidth+2mm) rectangle (0,-1.5\outermarginwidth+2mm);
- \node[anchor=center,text=white,font=\sffamily\bfseries] at (1/2*\outermarginwidth,-\outermarginwidth+2mm) {\usekomafont{chapternumber}{\botmarks\chapternum}};%
- }
- \fi
- \vfill
-}
-\makeatother
-
-\newkomafont{chapternumber}{%页边章节编号字体
- \fontsize{\chapternumbersize}{\chapternumbersize}\selectfont
-}%
-\makeatletter
-\newcommand\outermarginmark{
- \ifodd\value{page}\hfill\else\hspace*{\dimexpr\outermarginwidth*3/8\relax}\fi
- \rotatebox{90}{\parbox{\layerheight}{
- \raggedleft
- \usekomafont{outermargin}{%
- \MakeMarkcase{\ifodd\value{page}\odd@outermargin\else\even@outermargin\fi}}%
- }}%
- \ifodd\value{page}\hspace*{\dimexpr\outermarginwidth*3/8\relax}\fi%
-}
-\newcommand*\even@outermargin{}
-\newcommand*\odd@outermargin{}
-\newcommand*\evenoutermargin[1]{\renewcommand\even@outermargin{#1}}% 偶数页内容
-\newcommand*\oddoutermargin[1]{\renewcommand\odd@outermargin{#1}}% 奇数页内容
-\makeatother
-%
-\newkomafont{outermargin}{%页边章节名称字体
- \bfseries\fontsize{15}{15}\selectfont\color{outermarginfgcolor}
-}
-% declare new page style using layers
-\DeclareNewPageStyleByLayers{scth}{%
- scth.outermargin.bg.even,%
- scth.outermargin.bg.odd,%
- scth.outermargin.fg.even,%
- scth.outermargin.fg.odd,%
- scth.outermargin.pn.even,%
- scth.outermargin.pn.odd,%
- scth.outermargin.cn.even,%
- scth.outermargin.cn.odd,%
- scth.outermargin.text.even,%
- scth.outermargin.text.odd%
-}
-% define the layers for even pages
-\DeclareNewLayer[
- background, % 下层(背景)
- evenpage,
- outermargin,
- width=\outermarginwidth,
- contents={\color{outermarginbgcolor}\rule{\layerwidth}{\layerheight}} %色彩装饰条
-]{scth.outermargin.bg.even}%
-%%=============% 页边条颜色 %=======================%%
-\tikzfading[name=fade south,
- top color =transparent!0,
- bottom color=transparent!80]
-\tikzfading[name=fade north,
- top color =transparent!100,
- bottom color=transparent!0]
-%偶数页边纹理效果设置
-\newcommand{\evensidbardeepcolor}{%
-\tikzoverlay{
-\ifodd\value{page}
-\fill [outermarginfgcolor!20]%
- (current page.north east) rectangle ([xshift=-\outermarginwidth,yshift=0]current page.south east);
- \pattern [pattern=checkerboard,pattern color=outermarginfgcolor!50]%
- (current page.north east) rectangle ([xshift=-\outermarginwidth,yshift=0]current page.south east);
- \fill [outermarginbgcolor!90,path fading=fade south]%
- ([yshift=1mm]current page.north east) rectangle ([xshift=-\outermarginwidth,yshift=-.5\layerheight]current page.north east);
- \fill [outermarginbgcolor,path fading=fade north]%
- (current page.south east) rectangle ([xshift=-\outermarginwidth,yshift=.2\layerheight]current page.south east);
-\else
- \fill [outermarginfgcolor!20]%
- (current page.north west) rectangle ([xshift=\outermarginwidth,yshift=0]current page.south west);
- \pattern [pattern=checkerboard,pattern color=outermarginfgcolor!50]%
- (current page.north west) rectangle ([xshift=\outermarginwidth,yshift=0]current page.south west);
- \fill [outermarginbgcolor!90,path fading=fade south]%
- ([yshift=1mm]current page.north west) rectangle ([xshift=\outermarginwidth,yshift=-.5\layerheight]current page.north west);
- \fill [outermarginbgcolor,path fading=fade north]%
- (current page.south west) rectangle ([xshift=\outermarginwidth,yshift=.2\layerheight]current page.south west);
- \fi
-}
-}
-%%==============偶数页页边条颜色========================%%
-\DeclareNewLayer[
- foreground, %
- evenpage,
- outermargin,
- width=\outermarginwidth,
- contents=\evensidbardeepcolor %色彩装饰条
-]{scth.outermargin.fg.even}%
-%%==============偶数页页脚页码========================%%
-\DeclareNewLayer[
- foreground, %上层 (背景之上)
- evenpage,
- foot, % 页脚
- contents=\outermarginpagemark
-]{scth.outermargin.pn.even}%
-%%==============偶数页章节编号========================%%
-\DeclareNewLayer[
- foreground, %上层 (背景之上)
- evenpage,
- head, %页眉
- hoffset=0pt,
- width=\outermarginwidth,
- align=t,
- addvoffset=\dimexpr-\chapternumbersize-12pt+\headheight\relax,
- height=\chapternumbersize+\headheight,
- contents=\outermarginchapternumberbox%章节编号
-]{scth.outermargin.cn.even}%
-%%======================章节名称===================================%%
-\DeclareNewLayer[
- clone=scth.outermargin.cn.even,
- addheight=\dimexpr\headheight+\headsep+\textheight\relax,
- addvoffset=\dimexpr+2\outermarginwidth\relax,
- hoffset=-2.5pt,
- contents=\outermarginmark %
-]{scth.outermargin.text.even}%
-
-% define the layers for odd page from the settings for even pages
-\newcommand*\DeclareOddFromEven[1]{%复制自偶数页样式命令
-\DeclareNewLayer[
- clone=#1.even,
- oddpage,
- align=r,
- hoffset=\paperwidth
-]{#1.odd}%
-}
-\DeclareOddFromEven{scth.outermargin.bg}
-\DeclareOddFromEven{scth.outermargin.pn}
-\DeclareOddFromEven{scth.outermargin.cn}
-\DeclareOddFromEven{scth.outermargin.text}
-\DeclareOddFromEven{scth.outermargin.fg}
-
-% add the layers to page style scrheadings and page style plain
-\ForEachLayerOfPageStyle*{scth}{%
- \AddLayersToPageStyle{scrheadings}{#1}%
- \AddLayersToPageStyle{plain.scrheadings}{#1}%
-}
-%----------------------------------------------
-\KOMAoptions{markcase=upper} %页眉
-% for page styles scrheadings and plain
-\clearpairofpagestyles
-\ohead{}
-\cfoot{}
-\ofoot{}
-
-%%-------------------------------- SCRLAYER-SCRPAGE -------------------------------------%%
-
-%% Begin The Most Beautiful Box (STYLE : ys style) % 中国风盒子
-\makeatletter
-\definecolor{framegolden}{HTML}{455a64} % 控制外框颜色
-\definecolor{framegray}{HTML}{e0e0e0} % 控制填充颜色
-\newdimen\ys@frame@linewidth
-\newdimen\ys@frame@radius
-\newdimen\ys@frame@sep
-\def\ys@frame@fill@opacity{0.2}
-
-\pgfdeclarehorizontalshading{ys@fade@circle}{500bp}
-{color(0bp)=(pgftransparent!100); color(25bp)=(pgftransparent!100);
-color(45bp)=(pgftransparent!0); color(55bp)=(pgftransparent!0);
-color(75bp)=(pgftransparent!100); color(100bp)=(pgftransparent!100)}
-\pgfdeclarefading{ys circle}{\pgfuseshading{ys@fade@circle}}
-
-\def\ys@frame@star@list@t{%
- -0.7071\ys@frame@radius+0.2133\ys@frame@sep/%
- -0.7071\ys@frame@radius+0.2133\ys@frame@sep/%
- frame.north east,%
- 0.7071\ys@frame@radius-0.2133\ys@frame@sep/%
- -0.7071\ys@frame@radius+0.2133\ys@frame@sep/%
- frame.north west}
-\def\ys@frame@star@list@b{%
- 0.7071\ys@frame@radius-0.2133\ys@frame@sep/%
- 0.7071\ys@frame@radius-0.2133\ys@frame@sep/%
- frame.south west,%
- -0.7071\ys@frame@radius+0.2133\ys@frame@sep/%
- 0.7071\ys@frame@radius-0.2133\ys@frame@sep/%
- frame.south east}
-\edef\ys@frame@star@list{\ys@frame@star@list@t,\ys@frame@star@list@b}
-
-%region outer
-\def\ys@frame@remove@middleline#1#2{}
-\def\ys@frame@draw@middleline#1#2{%
- \clip ([xshift=-\ys@frame@linewidth,#1]frame.north west)--
- ([xshift=\ys@frame@linewidth,#1]frame.north east)--
- ([xshift=\ys@frame@linewidth,#2]frame.south east)--
- ([xshift=-\ys@frame@linewidth,#2]frame.south west)--cycle;}
-\def\ys@frame@unbrokenouter{%
- \path[draw=framegolden,fill=framegray,fill opacity=\ys@frame@fill@opacity,line width=\ys@frame@linewidth]
- ([xshift=\ys@frame@radius]frame.north west)--([xshift=-\ys@frame@radius]frame.north east)
- arc(-180:-90:\ys@frame@radius)--
- ([yshift=-\ys@frame@radius]frame.north east)--([yshift=\ys@frame@radius]frame.south east)
- arc(90:180:\ys@frame@radius)--
- ([xshift=-\ys@frame@radius]frame.south east)--([xshift=\ys@frame@radius]frame.south west)
- arc(0:90:\ys@frame@radius)--
- ([yshift=\ys@frame@radius]frame.south west)--([yshift=-\ys@frame@radius]frame.north west)
- arc(-90:0:\ys@frame@radius)--cycle;}
-\def\ys@frame@firstouter{%
- \ys@frame@remove@middleline{yshift=.5\ys@frame@linewidth}{yshift=.7\ys@frame@linewidth}%
- \path[draw=framegolden,fill=framegray,fill opacity=\ys@frame@fill@opacity,line width=\ys@frame@linewidth]
- ([xshift=\ys@frame@radius]frame.north west)--([xshift=-\ys@frame@radius]frame.north east)
- arc(-180:-90:\ys@frame@radius)--
- ([yshift=-\ys@frame@radius]frame.north east)--
- (frame.south east)--
- (frame.south west)--
- ([yshift=-\ys@frame@radius]frame.north west)
- arc(-90:0:\ys@frame@radius)--cycle;}
-\def\ys@frame@middleouter{%
- \ys@frame@remove@middleline{yshift=-.7\ys@frame@linewidth}{yshift=.7\ys@frame@linewidth}%
- \path[draw=framegolden,fill=framegray,fill opacity=\ys@frame@fill@opacity,line width=\ys@frame@linewidth]
- (frame.north west)--(frame.north east)--(frame.south east)--
- (frame.south west)--cycle;}
-\def\ys@frame@lastouter{%
- \ys@frame@remove@middleline{yshift=-.7\ys@frame@linewidth}{yshift=-.5\ys@frame@linewidth}%
- \path[draw=framegolden,fill=framegray,fill opacity=\ys@frame@fill@opacity,line width=\ys@frame@linewidth]
- (frame.north west)--(frame.north east)--
- ([yshift=\ys@frame@radius]frame.south east)
- arc(90:180:\ys@frame@radius)--
- ([xshift=-\ys@frame@radius]frame.south east)--([xshift=\ys@frame@radius]frame.south west)
- arc(0:90:\ys@frame@radius)--
- ([yshift=\ys@frame@radius]frame.south west)--
- (frame.north west)--cycle;}
-%endregion
-%region inner
-\def\ys@frame@unbrokeninner{%
-\path[draw=framegolden,line width=.5\ys@frame@linewidth,line cap=round]
-([xshift=\ys@frame@radius+2\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north west)
- --([xshift=\ys@frame@radius+5\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north west) --++(45:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth)
- ([xshift=\ys@frame@radius+6\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north west)--++(-45:2\ys@frame@linewidth)--++(45:2\ys@frame@linewidth) %第一节
- --([xshift=-\ys@frame@radius-8.828\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north east)--++(-45:2\ys@frame@linewidth)--++(45:2\ys@frame@linewidth)
- ([xshift=-\ys@frame@radius-7.828\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north east)--++(45:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth) %第二节
- --([xshift=-\ys@frame@radius-2\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north east)
- %%
-([yshift=-\ys@frame@radius-2\ys@frame@linewidth,xshift=-\ys@frame@sep]frame.north east)
---([yshift=-\ys@frame@radius-5\ys@frame@linewidth,xshift=-\ys@frame@sep]frame.north east) --++(-135:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth)
-([yshift=-\ys@frame@radius-6\ys@frame@linewidth,xshift=-\ys@frame@sep]frame.north east)--++(-45:2\ys@frame@linewidth)--++(-135:2\ys@frame@linewidth) %第一节
---([yshift=\ys@frame@radius+8.828\ys@frame@linewidth,xshift=-\ys@frame@sep]frame.south east)--++(-45:2\ys@frame@linewidth)--++(-135:2\ys@frame@linewidth)
-([yshift=\ys@frame@radius+7.828\ys@frame@linewidth,xshift=-\ys@frame@sep]frame.south east)--++(-135:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth) %第二节
-%
- --([yshift=\ys@frame@radius+2\ys@frame@linewidth,xshift=-\ys@frame@sep]frame.south east)
-%
-([xshift=\ys@frame@radius+2\ys@frame@linewidth,yshift=\ys@frame@sep]frame.south west)
---([xshift=\ys@frame@radius+5\ys@frame@linewidth,yshift=\ys@frame@sep]frame.south west) --++(-45:2\ys@frame@linewidth)--++(45:2\ys@frame@linewidth)
-([xshift=\ys@frame@radius+6\ys@frame@linewidth,yshift=\ys@frame@sep]frame.south west)--++(45:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth) %第一节
---([xshift=-\ys@frame@radius-8.828\ys@frame@linewidth,yshift=\ys@frame@sep]frame.south east)--++(45:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth)
-([xshift=-\ys@frame@radius-7.828\ys@frame@linewidth,yshift=\ys@frame@sep]frame.south east)--++(-45:2\ys@frame@linewidth)--++(45:2\ys@frame@linewidth) %第二节
- --([xshift=-\ys@frame@radius-2\ys@frame@linewidth,yshift=\ys@frame@sep]frame.south east)
-%
-([yshift=-\ys@frame@radius-2\ys@frame@linewidth,xshift=\ys@frame@sep]frame.north west)
---([yshift=-\ys@frame@radius-5\ys@frame@linewidth,xshift=\ys@frame@sep]frame.north west) --++(-45:2\ys@frame@linewidth)--++(-135:2\ys@frame@linewidth)
-([yshift=-\ys@frame@radius-6\ys@frame@linewidth,xshift=\ys@frame@sep]frame.north west)--++(-135:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth) %第一节
---([yshift=\ys@frame@radius+8.828\ys@frame@linewidth,xshift=\ys@frame@sep]frame.south west)--++(-135:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth)
-([yshift=\ys@frame@radius+7.828\ys@frame@linewidth,xshift=\ys@frame@sep]frame.south west)--++(-45:2\ys@frame@linewidth)--++(-135:2\ys@frame@linewidth) %第二节
- --([yshift=\ys@frame@radius+2\ys@frame@linewidth,xshift=\ys@frame@sep]frame.south west);}
-\def\ys@frame@firstinner{%
- \path[draw=framegolden,line width=.5\ys@frame@linewidth,line cap=round]
- ([xshift=\ys@frame@radius+2\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north west)
- --([xshift=\ys@frame@radius+5\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north west) --++(45:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth)
- ([xshift=\ys@frame@radius+6\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north west)--++(-45:2\ys@frame@linewidth)--++(45:2\ys@frame@linewidth) %第一节
- --([xshift=-\ys@frame@radius-8.828\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north east)--++(-45:2\ys@frame@linewidth)--++(45:2\ys@frame@linewidth)
- ([xshift=-\ys@frame@radius-7.828\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north east)--++(45:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth) %第二节
- --([xshift=-\ys@frame@radius-2\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north east)
- %%
-([yshift=-\ys@frame@radius-2\ys@frame@linewidth,xshift=-\ys@frame@sep]frame.north east)
---([yshift=-\ys@frame@radius-5\ys@frame@linewidth,xshift=-\ys@frame@sep]frame.north east) --++(-135:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth)
-([yshift=-\ys@frame@radius-6\ys@frame@linewidth,xshift=-\ys@frame@sep]frame.north east)--++(-45:2\ys@frame@linewidth)--++(-135:2\ys@frame@linewidth) %第一节
---([xshift=-\ys@frame@sep]frame.south east)
-
- ([yshift=-\ys@frame@radius-2\ys@frame@linewidth,xshift=\ys@frame@sep]frame.north west)
- --([yshift=-\ys@frame@radius-5\ys@frame@linewidth,xshift=\ys@frame@sep]frame.north west) --++(-45:2\ys@frame@linewidth)--++(-135:2\ys@frame@linewidth)
- ([yshift=-\ys@frame@radius-6\ys@frame@linewidth,xshift=\ys@frame@sep]frame.north west)--++(-135:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth) %第一节
- --([xshift=\ys@frame@sep]frame.south west);}
-\def\ys@frame@middleinner{%
- \path[draw=framegolden,line width=.5\ys@frame@linewidth,line cap=round]
- ([xshift=-\ys@frame@sep]frame.north east)--([xshift=-\ys@frame@sep]frame.south east)
- ([xshift=\ys@frame@sep]frame.north west)--([xshift=\ys@frame@sep]frame.south west);}
-\def\ys@frame@lastinner{%
- \path[draw=framegolden,line width=.5\ys@frame@linewidth,line cap=round]
- ([xshift=-\ys@frame@sep]frame.north east)
- --([yshift=\ys@frame@radius+8.828\ys@frame@linewidth,xshift=-\ys@frame@sep]frame.south east)--++(-45:2\ys@frame@linewidth)--++(-135:2\ys@frame@linewidth)
- ([yshift=\ys@frame@radius+7.828\ys@frame@linewidth,xshift=-\ys@frame@sep]frame.south east)--++(-135:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth) %第二节
- %
- --([yshift=\ys@frame@radius+2\ys@frame@linewidth,xshift=-\ys@frame@sep]frame.south east)
-%
- ([xshift=\ys@frame@radius+2\ys@frame@linewidth,yshift=\ys@frame@sep]frame.south west)
- --([xshift=\ys@frame@radius+5\ys@frame@linewidth,yshift=\ys@frame@sep]frame.south west) --++(-45:2\ys@frame@linewidth)--++(45:2\ys@frame@linewidth)
- ([xshift=\ys@frame@radius+6\ys@frame@linewidth,yshift=\ys@frame@sep]frame.south west)--++(45:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth) %第一节
- --([xshift=-\ys@frame@radius-8.828\ys@frame@linewidth,yshift=\ys@frame@sep]frame.south east)--++(45:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth)
- ([xshift=-\ys@frame@radius-7.828\ys@frame@linewidth,yshift=\ys@frame@sep]frame.south east)--++(-45:2\ys@frame@linewidth)--++(45:2\ys@frame@linewidth) %第二节
- --([xshift=-\ys@frame@radius-2\ys@frame@linewidth,yshift=\ys@frame@sep]frame.south east)
-%
- ([xshift=\ys@frame@sep]frame.north west)
- --([yshift=\ys@frame@radius+8.828\ys@frame@linewidth,xshift=\ys@frame@sep]frame.south west)--++(-135:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth)
- ([yshift=\ys@frame@radius+7.828\ys@frame@linewidth,xshift=\ys@frame@sep]frame.south west)--++(-45:2\ys@frame@linewidth)--++(-135:2\ys@frame@linewidth) %第二节
- --([yshift=\ys@frame@radius+2\ys@frame@linewidth,xshift=\ys@frame@sep]frame.south west);}
-%endregion
-%region corner
-\def\ys@frame@unbrokencorner{%
- \path[draw=framegolden,line width=1.5\ys@frame@linewidth,line cap=round]
- ([xshift=\ys@frame@radius-2.7\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north west)
- --([xshift=\ys@frame@sep,yshift=-\ys@frame@sep]frame.north west)
- --([xshift=\ys@frame@sep,yshift=-\ys@frame@radius+2.7\ys@frame@linewidth]frame.north west)
- ([xshift=-\ys@frame@radius+2.7\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north east)
- --([xshift=-\ys@frame@sep,yshift=-\ys@frame@sep]frame.north east)
- --([xshift=-\ys@frame@sep,yshift=-\ys@frame@radius+2.7\ys@frame@linewidth]frame.north east)
- ([xshift=-\ys@frame@radius+2.7\ys@frame@linewidth,yshift=\ys@frame@sep]frame.south east)
- --([xshift=-\ys@frame@sep,yshift=\ys@frame@sep]frame.south east)
- --([xshift=-\ys@frame@sep,yshift=\ys@frame@radius-2.7\ys@frame@linewidth]frame.south east)
- ([xshift=\ys@frame@radius-2.7\ys@frame@linewidth,yshift=\ys@frame@sep]frame.south west)
- --([xshift=\ys@frame@sep,yshift=\ys@frame@sep]frame.south west)
- --([xshift=\ys@frame@sep,yshift=\ys@frame@radius-2.7\ys@frame@linewidth]frame.south west);}
-\def\ys@frame@firstcorner{%
- \path[draw=framegolden,line width=1.5\ys@frame@linewidth,line cap=round]
- ([xshift=\ys@frame@radius-2.7\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north west)
- --([xshift=\ys@frame@sep,yshift=-\ys@frame@sep]frame.north west)
- --([xshift=\ys@frame@sep,yshift=-\ys@frame@radius+2.7\ys@frame@linewidth]frame.north west)
- ([xshift=-\ys@frame@radius+2.7\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north east)
- --([xshift=-\ys@frame@sep,yshift=-\ys@frame@sep]frame.north east)
- --([xshift=-\ys@frame@sep,yshift=-\ys@frame@radius+2.7\ys@frame@linewidth]frame.north east);}
-\def\ys@frame@middlecorner{}
-\def\ys@frame@lastcorner{%
- \path[draw=framegolden,line width=1.5\ys@frame@linewidth,line cap=round]
- ([xshift=-\ys@frame@radius+2.7\ys@frame@linewidth,yshift=\ys@frame@sep]frame.south east)
- --([xshift=-\ys@frame@sep,yshift=\ys@frame@sep]frame.south east)
- --([xshift=-\ys@frame@sep,yshift=\ys@frame@radius-2.7\ys@frame@linewidth]frame.south east)
- ([xshift=\ys@frame@radius-2.7\ys@frame@linewidth,yshift=\ys@frame@sep]frame.south west)
- --([xshift=\ys@frame@sep,yshift=\ys@frame@sep]frame.south west)
- --([xshift=\ys@frame@sep,yshift=\ys@frame@radius-2.7\ys@frame@linewidth]frame.south west);}
-%endregion
-\def\ys@frame@star#1#2#3{%
- \begin{scope}[shift={([xshift=#1,yshift=#2]#3)},scale=\ys@frame@ratio*0.1]
- \path[draw=framegolden,fill=white,
- line width=.7\ys@frame@linewidth,line join=round]
- (1,1)..controls(0.3,0.5) and (-0.3,0.5)..
- (-1,1)..controls(-0.5,0.3) and (-0.5,-0.3)..
- (-1,-1)..controls(-0.3,-0.5) and (0.3,-0.5)..
- (1,-1)..controls(0.5,-0.3) and (0.5,0.3)..(1,1)--cycle;
- \path[scale=0.45,fill=framegolden,line join=round]
- (1,1)..controls(0.3,0.7) and (-0.3,0.7)..
- (-1,1)..controls(-0.7,0.3) and (-0.7,-0.3)..
- (-1,-1)..controls(-0.3,-0.7) and (0.3,-0.7)..
- (1,-1)..controls(0.7,-0.3) and (0.7,0.3)..(1,1)--cycle;
- \end{scope}}
-\def\ys@frame@segmentation{%
- \draw[color=framegolden,path fading=ys circle]
- ([xshift=5\ys@frame@radius]segmentation.west) to[ornament=88]
- ([xshift=-5\ys@frame@radius]segmentation.east);}
-
-\tcbset{
- % 控制是否在断点处的线不画出来
- ys/frame/not at break/.code=\let\ys@frame@remove@middleline\ys@frame@draw@middleline,
- ys/frame/fill opacity/.store in=\ys@frame@fill@opacity,
- ys/frame/draw at break/.code=\let\ys@frame@remove@middleline\@gobbletwo,
- % 控制线宽
- ys/frame/line width/.code={\pgfmathsetlength\ys@frame@linewidth{#1}},
- ys/frame/line width=1.4pt,
- % 控制圆弧大小,应为数字,而非长度
- ys/frame/radius/.code={\pgfmathparse{#1}\let\ys@frame@ratio\pgfmathresult
- \pgfmathsetlength\ys@frame@radius{(#1)*1em}%
- \pgfmathsetlength\ys@frame@sep{(#1)*0.5ex}},
- ys/frame/radius=2,
- ys/frame/unbroken/.style={
- interior code={%
- \ys@frame@unbrokenouter % 外框
- \foreach \ii/\jj/\kk in \ys@frame@star@list {\ys@frame@star{\ii}{\jj}{\kk}} % 星
- \ys@frame@unbrokeninner % 内线
- \ys@frame@unbrokencorner % 四角
- },
- interior titled code={%
- \ys@frame@unbrokenouter % 外框
- \foreach \ii/\jj/\kk in \ys@frame@star@list {\ys@frame@star{\ii}{\jj}{\kk}} % 星
- \ys@frame@unbrokeninner % 内线
- \ys@frame@unbrokencorner % 四角
- }
- },
- ys/frame/first/.style={
- interior code={%
- \ys@frame@firstouter
- \foreach \ii/\jj/\kk in \ys@frame@star@list@t {\ys@frame@star{\ii}{\jj}{\kk}}
- \ys@frame@firstinner
- \ys@frame@firstcorner},
- interior titled code={%
- \ys@frame@firstouter
- \foreach \ii/\jj/\kk in \ys@frame@star@list@t {\ys@frame@star{\ii}{\jj}{\kk}}
- \ys@frame@firstinner
- \ys@frame@firstcorner},
- },
- ys/frame/middle/.style={
- interior code={%
- \ys@frame@middleouter
- \ys@frame@middleinner
- \ys@frame@middlecorner}
- },
- ys/frame/last/.style={
- interior code={%
- \ys@frame@lastouter
- \foreach \ii/\jj/\kk in \ys@frame@star@list@b {\ys@frame@star{\ii}{\jj}{\kk}}
- \ys@frame@lastinner
- \ys@frame@lastcorner}
- },
- ys/frame style/unbroken/.style={
- boxsep=2\ys@frame@sep,
- left={.8\ys@frame@radius},right={.8\ys@frame@radius},
- ys/frame/unbroken,title hidden,
- segmentation code=\ys@frame@segmentation
- },
- ys/frame style/first/.style={ys/frame/first,title hidden,segmentation code=\ys@frame@segmentation},
- ys/frame style/middle/.style={ys/frame/middle,segmentation code=\ys@frame@segmentation},
- ys/frame style/last/.style={ys/frame/last,segmentation code=\ys@frame@segmentation},
- ys style/.style={frame hidden,
- ys/frame style/unbroken,
- extras first={ys/frame style/first},
- extras middle={ys/frame style/middle},
- extras last={ys/frame style/last},
- },
-}
-\makeatother
-\newtcolorbox{fancybox}[1][]{enhanced,ys style,breakable,pad at break=2mm,
- ys/frame/not at break,ys/frame/fill opacity=0,#1,fontupper=\itshape}
-%% End The Most Beautiful Box
-\makeatletter
-\definecolor{CyaN}{HTML}{dbe1e5}
-\colorlet{OrangE}{yellow!20!orange}
-\colorlet{BluE}{cyan!70!blue}
-\colorlet{ReD}{red!20!orange}
-\colorlet{GreeN}{yellow!40!green}
-
-% 第一种定理
-\tcbset{my@basic@thm/.style={enhanced jigsaw, breakable,
- enlarge left by=-3.5mm, width=\textwidth+3.5mm, boxrule=0pt,
- top=2pt, bottom=2pt, left=2.5mm, frame hidden}}
-\newcommand{\@my@newtheorem@n}[1]{\ERROR}
-\newcommand{\@my@newtheorem@nn}[2]{%
- \@ifundefined{#1}{\@my@newtheorem{#1}#2}{\@my@renewtheorem{#1}#2}}
-\NewDocumentCommand{\@my@newtheorem}{ m m o +m }
- {\IfNoValueTF{#3}{\newtheorem{#1}{#2}}{\newtheorem{#1}{#2}[#3]}%
- \tcbset{my@#1@thmstyle/.style={#4}}%
- \tcolorboxenvironment{#1}{my@basic@thm, my@#1@thmstyle}}
-\NewDocumentCommand{\@my@renewtheorem}{ m m o +m }
- {\IfNoValueTF{#3}{\renewtheorem{#1}{#2}}{\renewtheorem{#1}{#2}[#3]}%
- \tcbset{my@#1@thmstyle/.style={#4}}}
-%
-% ---------------------------------------------------------------------------------- %
-% 第二种定理
-\tcbset{my@basic@tcbthm/.style={detach title,}}
-\newcommand{\@my@newtcbtheorem@n}[1]{\ERROR}
-\newcommand{\@my@newtcbtheorem@nn}[2]{%
- \@ifundefined{#1}{\@my@newtcbtheorem{#1}{#2}}{\@my@renewtcbtheorem{#1}{#2}}}
-\newcommand{\@my@newtcbtheorem}[2]{%
- \edef\my@curr@thmenvname{#1}% 它保存当前定理环境的名称
- \mytcbtheoremset{#2}%
- \NewTColorBox{#1}{ O{} O{} o }
- {my@basic@tcbthm, my@#1@tcbthmstyle, title={##2}, IfNoValueF={##3}{label={##3}}, ##1}}
-\newcommand{\@my@renewtcbtheorem}[2]{\edef\my@curr@thmenvname{#1}\mytcbtheoremset{#2}}
-
-% 键值设置
-\pgfkeys{/mytcbtheorem/.is family}
-\newcommand{\mytcbtheoremset}{\pgfqkeys{/mytcbtheorem}}
-\mytcbtheoremset{
- name/.code=\@namedef{\my@curr@thmenvname @name}{#1}, %无效
- counter/.code=\@namedef{my@\my@curr@thmenvname @counter}{#1}\newcounter{#1}[chapter], % 计数器遇到subsection就会自动归零 % https://zhuanlan.zhihu.com/p/57454848#circle=on
- the counter/.code=\@namedef{the\@nameuse{my@\my@curr@thmenvname @counter}}{#1},
- autoref name/.code=\@namedef{\@nameuse{my@\my@curr@thmenvname @counter}autorefname}{#1},
- style/.code=\tcbset{my@\my@curr@thmenvname @tcbthmstyle/.style={#1}},
- thmcolor/.code=\@namedef{\my@curr@thmenvname @thmcolor}{#1}, %无效
- lemcolor/.code=\@namedef{\my@curr@thmenvname @lemcolor}{#1}, %无效
-}
-% 存储键值 (LaTeX3)
-\ExplSyntaxOn
-\cs_new_protected:Npn \mynewtheorem
- { \keyval_parse:NNn \@my@newtheorem@n \@my@newtheorem@nn }
-\cs_new_protected:Npn \mynewtcbtheorem
- { \keyval_parse:NNn \@my@newtcbtheorem@n \@my@newtcbtheorem@nn }
-\ExplSyntaxOff
-\makeatother
-
-% 第二种定理
-\makeatletter
-%% Overlay Settings
-\newcommand{\my@theorem@overlay@unbroken}[2]{
- %%============== First ==============%%
- \fill[black!60] ([xshift=1cm,yshift=5pt]frame.north west)-- ([xshift=0.8cm,yshift=0cm]frame.north west)--([xshift=1.2cm,yshift=0cm]frame.north west)--cycle;
- \node[rectangle, text=white, drop shadow={opacity=.3, shadow xshift=0.1cm}, inner sep=1.5mm,fill=#2,
-anchor=west,rounded corners=3pt,font=\bfseries\normalsize] at ([xshift=0cm,yshift=-3.mm]frame.north west) {\hspace*{1.5em}#1.\ \ifdefvoid{\tcbtitletext}{}{(\itshape\tcbtitletext)}};
- \fill[color=#2,drop shadow={opacity=0.3,shadow xshift=.3pt}]
- ([xshift=1cm,yshift=5pt]frame.north west) {[rounded corners=3pt]--++(-1cm-5pt,0)}--++(0,-1cm-5pt)--cycle;
- \fill[color=black!60] ([xshift=-5pt,yshift=-1cm]frame.north west)--([xshift=0cm,yshift=-0.8cm]frame.north west)-- ([xshift=0cm,yshift=-1.2cm]frame.north west)--cycle;
- %%============== End ==============%%
- \fill[#2,drop shadow={opacity=0.3,shadow xshift=-0.008\linewidth,shadow yshift=0.0016\linewidth}]
- ([xshift=-0.05\linewidth,yshift=-5pt]frame.south east) {[rounded corners=3pt]--++(0.05\linewidth+5pt,0)}--++(0,0.05\linewidth+5pt)--cycle;
- \fill[black!60] ([xshift=-0.05\linewidth,yshift=-5pt]frame.south east) -- ([xshift=-0.04\linewidth,yshift=0pt]frame.south east)-- ([xshift=-0.06\linewidth,yshift=0pt]frame.south east)--cycle;
- \fill[black!60] ([xshift=5pt,yshift=0.05\linewidth]frame.south east)-- ([yshift=0.04\linewidth]frame.south east) -- ([yshift=0.06\linewidth]frame.south east)--cycle;
-}
-\newcommand{\my@theorem@overlay@first}[2]{
- \fill[black!60] ([xshift=1cm,yshift=5pt]frame.north west)-- ([xshift=0.8cm,yshift=0cm]frame.north west)--([xshift=1.2cm,yshift=0cm]frame.north west)--cycle;
- \node[rectangle, text=white, drop shadow={opacity=.3, shadow xshift=0.1cm}, inner sep=1.5mm,fill=#2, anchor=west,rounded corners=3pt,font=\bfseries\normalsize] at ([xshift=0cm,yshift=-3.mm]frame.north west) {\hspace*{1.5em}#1.\ \ifdefvoid{\tcbtitletext}{}{(\itshape\tcbtitletext)}};
- \fill[color=#2,drop shadow={opacity=0.3,shadow xshift=.3pt}]
- ([xshift=1cm,yshift=5pt]frame.north west) {[rounded corners=3pt]--++(-1cm-5pt,0)}--++(0,-1cm-5pt)--cycle;
- \fill[color=black!60] ([xshift=-5pt,yshift=-1cm]frame.north west)--([xshift=0cm,yshift=-0.8cm]frame.north west)-- ([xshift=0cm,yshift=-1.2cm]frame.north west)--cycle;
-}
-\newcommand{\my@theorem@overlay@last}[1]{
- \fill[#1,drop shadow={opacity=0.3,shadow xshift=-0.008\linewidth,shadow yshift=0.0016\linewidth}]
- ([xshift=-0.05\linewidth,yshift=-5pt]frame.south east) {[rounded corners=3pt]--++(0.05\linewidth+5pt,0)}--++(0,0.05\linewidth+5pt)--cycle;
- \fill[black!60] ([xshift=-0.05\linewidth,yshift=-5pt]frame.south east) -- ([xshift=-0.04\linewidth,yshift=0pt]frame.south east)-- ([xshift=-0.06\linewidth,yshift=0pt]frame.south east)--cycle;
- \fill[black!60] ([xshift=5pt,yshift=0.05\linewidth]frame.south east)-- ([yshift=0.04\linewidth]frame.south east) -- ([yshift=0.06\linewidth]frame.south east)--cycle;
-}
-% Second theorem style overlay settings
-\newcommand{\my@lemma@overlay@unbroken}[2]{
- %%============== First ==============%%
- \def\Rad{3.5pt}
- \def\theight{0.57cm}
- \def\rad{7pt}%
- \path[fill=#2,drop shadow={opacity=0.3,shadow xshift=.05cm,shadow yshift=-.05cm}]node[append after command={
- ([xshift=-1.5*\rad]thmname.north west) to[out=0,in=180,looseness=1] ([xshift=2.5*\rad]thmname.south west) --([xshift=-\rad]thmname.south east) to[out=0,in=180,looseness=1] ([xshift=3*\rad]thmname.north east) --cycle},
- text=white,font=\bfseries,align=center,inner ysep=1.5mm,minimum height=0.6cm,right] (thmname) at ([xshift=\rad,yshift=-.7*\rad]frame.north west) {\hspace*{10pt}#1.\ \ifdefvoid{\tcbtitletext}{}{(\itshape\tcbtitletext)}};
- \begin{pgfonlayer}{bottom}
- \fill[#2,opacity=0.5]
- ([xshift=-1.5*\rad]thmname.north west) to[out=180,in=305,looseness=1.5] +(3pt,-6pt) -| ++(12pt,0)--cycle;
- \fill[#2,opacity=0.5]
- ([xshift=3*\rad]thmname.north east) to[out=0,in=-90] +(5pt,-5pt) -| ++(-10pt,0) --cycle;
- \end{pgfonlayer}
- %%============== End ==============%%
- \def\tlen{1.5cm}
- \path[fill=#2,drop shadow={opacity=0.3,shadow xshift=.3pt}]
- ([xshift=-2*\rad,yshift=-5pt]frame.south east) coordinate (SE) to[out=0,in=180] +(4*\rad,5pt+\theight) --([shift={(-\tlen+4*\rad,5pt+\theight)}]SE) to[out=180,in=0] +(-4*\rad,-5pt-\theight) --cycle;
- \begin{pgfonlayer}{bottom}
- \fill[color=#2,opacity=0.5] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east) to[out=180,in=90,looseness=0.7] ([xshift=-1.35*\tlen-0.5*\Rad]frame.south east) coordinate (NWl)--([xshift=2*\rad]NWl) to[out=-90,in=-180,looseness=0.7] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east)--cycle;
- \end{pgfonlayer}
- }
-\newcommand{\my@lemma@overlay@first}[2]{
- %%============== First ==============%%
- \def\Rad{3.5pt}
- \def\theight{0.57cm}
- \def\rad{7pt}%
- \path[fill=#2,drop shadow={opacity=0.3,shadow xshift=.05cm,shadow yshift=-.05cm}]node[append after command={
- ([xshift=-1.5*\rad]thmname.north west) to[out=0,in=180,looseness=1] ([xshift=2.5*\rad]thmname.south west) --([xshift=-\rad]thmname.south east) to[out=0,in=180,looseness=1] ([xshift=3*\rad]thmname.north east) --cycle},
- text=white,font=\bfseries,align=center,inner ysep=1.5mm,minimum height=0.6cm,right] (thmname) at ([xshift=\rad,yshift=-.7*\rad]frame.north west) {\hspace*{10pt}#1.\ \ifdefvoid{\tcbtitletext}{}{(\itshape\tcbtitletext)}};
- \begin{pgfonlayer}{bottom}
- \fill[#2,opacity=0.5]
- ([xshift=-1.5*\rad]thmname.north west) to[out=180,in=305,looseness=1.5] +(3pt,-6pt) -| ++(12pt,0)--cycle;
- \fill[#2,opacity=0.5]
- ([xshift=3*\rad]thmname.north east) to[out=0,in=-90] +(5pt,-5pt) -| ++(-10pt,0) --cycle;
- \end{pgfonlayer}
- }
-\newcommand{\my@lemma@overlay@last}[1]{
- %%============== End ==============%%
- \def\Rad{3.5pt}
- \def\rad{7pt}%
- \def\theight{0.57cm}
- \def\tlen{1.5cm}
- \path[fill=#1,drop shadow={opacity=0.3,shadow xshift=.3pt}]
- ([xshift=-2*\rad,yshift=-5pt]frame.south east) coordinate (SE) to[out=0,in=180] +(4*\rad,5pt+\theight) --([shift={(-\tlen+4*\rad,5pt+\theight)}]SE) to[out=180,in=0] +(-4*\rad,-5pt-\theight) --cycle;
- \begin{pgfonlayer}{bottom}
- \fill[color=#1,opacity=0.5] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east) to[out=180,in=90,looseness=0.7] ([xshift=-1.35*\tlen-0.5*\Rad]frame.south east) coordinate (NWl)--([xshift=2*\rad]NWl) to[out=-90,in=-180,looseness=0.7] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east)--cycle;
- \end{pgfonlayer}
- }
-\makeatother
-%%
-
-% proof
-\newcommand{\itbf}[1]{\textit{\textbf{#1}}}
-\declaretheoremstyle[
- spaceabove=3pt,spacebelow=3pt,
- headfont=\normalfont\bfseries,
- notefont=\normalfont\bfseries,notebraces={(}{)},
- bodyfont=\normalfont,
- postheadspace=.5em,
- headpunct={.},
- qed=\color{cyan!40!black}$\blacksquare$,%\qedsymbol
-]{Proofstyle}
-\declaretheorem[style=Proofstyle,numbered=no,name={\itbf{Proof}}]{Proof}
-\renewenvironment{proof}{\begin{Proof} }{\end{Proof}}
-\declaretheorem[style=Proofstyle,numbered=no,name={\itbf{Solution}}]{solution}
-
-%%%%%%%%%%%%%%% 计数器知识 %%%%%%%%%%%%%%%%%%%%%%
-% 每次用 \newcounter{foo} 定义新计数器,内部都会定义这几个命令
-
-% \c@foo,储存计数器的值,初始值为 0
-% \thefoo,储存计数器输出时的格式,初始定义为 \arabic{foo}
-% \p@foo,储存计数器被引用时的前缀,初始定义为空
-% \cl@foo,储存「子计数器」列表(此处有简化),foo 自增时它的每个「子计数器」都会归零(详见「自动归零」一节),初始定义为空
-%% 关于计数器的自动归零
-% 如果还定义了计数器 \newcounter{bar}[foo],那么 \cl@foo 里就有了 bar
-% \@addtoreset{child}{parent} 和 \@removefromreset{child}{parent} 可以把计数器 child 移入/移出 \cl@parent
-% \counterwithin* 和 \counterwithout* 和上一条里两个命令的功能类似,但它们在执行前会检查接受的两个参数是否为已定义的计数器。不加星号的版本会修改 \thechild,详见「输出格式」一节
-% 在使用 \stepcounter{parent} 和 \refstepcounter{parent} 时,parent 自增,同时归零\cl@parent 里的「子计数器」
-% \addtocount{parent}{1} 只自增 parent,没有归零其「子计数器」的效果
-% 归零实现为「对每个子计数器,先设为 -1,然后使用 \stepcounter 自增」,这样实现的「归零」功能是递归的
-% 递归的意思是,如果还有 \newcounter{grandchild}[child],那么 \stepcounter{parent} 会将 child 和 grandchild 都归零
diff --git a/Master/texmf-dist/tex/latex/beautybook/beautybook-CN.cls b/Master/texmf-dist/tex/latex/beautybook/beautybook.cls
index 49f94464bf6..73959a7594e 100644
--- a/Master/texmf-dist/tex/latex/beautybook/beautybook-CN.cls
+++ b/Master/texmf-dist/tex/latex/beautybook/beautybook.cls
@@ -1,26 +1,43 @@
-%This Class is based on the default book class and options will be passed
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{beautybook-CN}[30-06-2024 V10.0 Beautybook Class]
-\DeclareOption*{\PassOptionsToClass{\CurrentOption}{ctexbook}}
-\ProcessOptions\relax
-\LoadClass[twoside,a4paper]{ctexbook}
-\RequirePackage[dvipsnames,svgnames,x11names,table]{xcolor}
-\RequirePackage{cncolours}
-\usepackage{fontspec}
-\colorlet{outermarginfgcolor}{DarkCyan} % foregroundcolor 较深
-\colorlet{outermarginbgcolor}{DarkCyan!30} % backgroundcolor 较浅
-\RequirePackage{bropd} % math 自适应数学括号命令 \br{} !!!
-\RequirePackage{tikz-imagelabels} % tikz图像标注
-\RequirePackage{epigraph-keys} % 名言引用
-\RequirePackage{fitbox} % 图像自适应
-\RequirePackage{pgfornament-han}
-\RequirePackage{tikz}
-\usetikzlibrary{calc,shadows,hobby,intersections, decorations.markings, decorations.pathreplacing,spy,arrows,shapes,fadings,trees,mindmap,patterns,shapes.arrows,shapes.symbols,tikzmark,shapes.geometric,graphs, quotes, angles,decorations.pathmorphing,through,shadings,backgrounds,positioning,fit,arrows.meta,shapes.misc,decorations.shapes}
-\RequirePackage{pgfplots} %画图 %%页面样式设计核心包 %提供\pgfonlayer命令以及下列图层指令
-\pgfplotsset{compat=1.18}
-%
+\ProvidesClass{beautybook}[02-07-2024 V10.0 beautybook Class]
+% /* -------------------------------------------------------------------------- */
+% /* 切换文类 */
+% /* -------------------------------------------------------------------------- */
+\DeclareKeys{% = \DeclareKeys[autoclass]
+ lang .choice: ,
+ lang/en .code:n = \def\beautybook@class{book} ,
+ lang/cn .code:n = \def\beautybook@class{ctexbook} ,
+ lang .initial:n = en ,
+ unknown .code:n = \beautybook@unknown ,
+}
+
+\ExplSyntaxOn
+\clist_new:N \beautybook@unknownoptions
+\cs_new_protected:Npn \beautybook@unknown
+ {
+ \bool_if:NTF \l__keys_no_value_bool
+ { % eg. 12pt, twoside
+ \clist_put_right:Nx \beautybook@unknownoptions
+ { \l_keys_key_str }
+ }
+ { % eg. zihao=4, fontset=windows
+ \clist_put_right:Nx \beautybook@unknownoptions
+ { \l_keys_key_str = { \exp_not:o \l_keys_value_tl } }
+ }
+ }
+\ExplSyntaxOff
+
+\ProcessKeyOptions % = \ProcessKeyOptions[beautybook]
+\PassOptionsToClass\beautybook@unknownoptions\beautybook@class
+%% 如果不需要过滤上面定义的 lang 等键,可以直接使用
+%% \PassOptionsToClass\@raw@classoptionslist\beautybook@class
+
+\LoadClass{\beautybook@class}
+% /* ---------------------------------- 切换文类 ---------------------------------- */
+
+
% /* -------------------------------------------------------------------------- */
-% /* 解决birkar封面不能用于a4paper问题 */
+% /* 判断 A4 paper程序 */
% /* -------------------------------------------------------------------------- */
\makeatletter
\ExplSyntaxOn
@@ -34,10 +51,24 @@
% \ifaivpaper@TF{a4paper内容}{not a4paper内容} % 这个用在想要判断a4paper的地方
\makeatother
% /* -------------------------------------------------------------------------- */
-% /* 解决birkar封面不能用于a4paper问题 */
+% /* 判断 A4 paper程序 */
+% /* -------------------------------------------------------------------------- */
+
+
+\RequirePackage[dvipsnames,svgnames,x11names,table]{xcolor}
+\RequirePackage{tikz} %%页面样式设计核心包 %提供\pgfonlayer命令
+\usetikzlibrary{cd,calc,shadows,hobby,intersections, decorations.markings, decorations.pathreplacing,spy,arrows,shapes,fadings,trees,mindmap,patterns,shapes.arrows,shapes.symbols,tikzmark,shapes.geometric,graphs, quotes, angles,decorations.pathmorphing,through,shadings,backgrounds,positioning,fit,arrows.meta,shapes.misc,decorations.shapes}
+
+% /* --------------------------------- 模板默认颜色 --------------------------------- */
+\colorlet{outermarginfgcolor}{DarkCyan} % foregroundcolor 较深的前景色
+\colorlet{outermarginbgcolor}{DarkCyan!30} % backgroundcolor 较浅的背景色
+% /* -------------------------------------------------------------------------- */
+
+% /* -------------------------------------------------------------------------- */
+% /* 封面切换程序 */
% /* -------------------------------------------------------------------------- */
+
\ExplSyntaxOn
-% 封面切换程序 (LaTeX3)!
\keys_define:nn {beautybook/coverstyle}
{
cover-choose.choice:,
@@ -81,64 +112,50 @@
{ \keys_set:nV { beautybook / mathstyle } \l__beautybook_tmpa_toks }
\ExplSyntaxOff
\RequirePackage{stys/beautybook-bottompage} %封底
-\RequirePackage{rotating}
-\tikzset{>=Stealth}
-\setlist{font=\upshape} % 取消所有列表默认距离 nosep,
-% 浮动环境设置
-% 默认情况下, \LaTeX{} 要求每页的文字至少占据 20%,否则该页就只单独放置一个浮动环境,
-% 而这通常不是我们想要的, 我们将这个要求降低到 5%.
-\renewcommand*{\textfraction}{0.05}
-% 有时如果多个浮动环境连续放在一起,
-% 会将它们分在几个不同页,即使它们可在同一页放
-% 得下. 我们可以通过修改 |\topfraction| 和 |\bottomfraction| 分别设置顶端和底端的浮
-% 动环境的最大比例.
-\renewcommand*{\topfraction}{0.9}
-\renewcommand*{\bottomfraction}{0.8}
-% 有时\LaTeX{}会把一个浮动环境单独放在一页,
-% 我们要求这个环境至少要占据 85% 才能单独放在一页.
-% 注意: |\floatpagefraction| 的数值必须小于 |\topfraction|.
-\renewcommand*{\floatpagefraction}{0.85}
+% /* -------------------------------------------------------------------------- */
+
+% /* -------------------------------------------------------------------------- */
+% /* 宏包导入 */
+% /* -------------------------------------------------------------------------- */
+\RequirePackage{cncolours,ninecolors}
+\RequirePackage{appendix} % 附录
+\RequirePackage{etoolbox} % 判断函数
+\RequirePackage{imakeidx}
+\RequirePackage{varwidth}
+\RequirePackage{caption}\colorlet{captioncolor}{outermarginfgcolor} % 图片和表格题注文字颜色
+\RequirePackage{indentfirst}
+\RequirePackage{amsmath,amsthm,mathrsfs,extarrows,bropd}
+\RequirePackage{thmtools,thm-restate}%定理环境 %定理的重写
+\RequirePackage[left=2cm,right=2cm,top=.6cm,bottom=2.2cm]{geometry}
+\RequirePackage{tabularray}
+\RequirePackage{enumitem}\setlist{font=\upshape} % 取消所有列表默认距离 nosep,
+\RequirePackage[normalem]{ulem} % 用于参考文献
% 关于图片 graphicx
+\RequirePackage{graphicx}
% 如果图片没有指定后缀, 依次按下列顺序搜索
\DeclareGraphicsExtensions{.pdf,.eps,.jpg,.png}
% 设置图表搜索路径, 可以给图表文件夹取如下名字
\graphicspath{{inner_pics/}{inner_pics/titleimages/}{figures/}{figure/}{pictures/}{picture/}{pic/}{pics/}{image/}{images/}}
-% \RequirePackage[physics]{stys/physicx}
-% \RequirePackage{stys/Symbols}
-\RequirePackage{extarrows}
-\usetikzlibrary{tikzmark}
-% \arrowname{super-script}
-% \arrowname[sub-script]{super-script}
-\RequirePackage{appendix} % 附录
-% \RequirePackage{stys/symbols}
-%
-\RequirePackage{makeidx}
-\RequirePackage{etoolbox} % 判断函数
-\RequirePackage{paracol}
-\RequirePackage{tikz-cd}
-\RequirePackage{imakeidx}
-\RequirePackage{anyfontsize}
-\RequirePackage{calc}
-\RequirePackage{xkeyval,ifthen}
-\RequirePackage[backgroundcolor=yellow!40!cyan!20,bordercolor=yellow!40!cyan!20,linecolor=DarkCyan]{todonotes}
-\RequirePackage{varwidth}
-\RequirePackage[colorlinks,linkcolor = purple, %%修改此处为你想要的颜色
-anchorcolor = purple, %%修改此处为你想要的颜色
-urlcolor = purple, %%修改此处为你想要的颜色
-citecolor = purple, %%修改此处为你想要的颜色
-]{hyperref}
-\setcounter{tocdepth}{3}
-\setcounter{secnumdepth}{3}%增加编号深度
-\RequirePackage{dashrule}
-\newlength\outermarginwidth
-\setlength\outermarginwidth{1.5cm}
-\newlength\covershift
-\setlength\covershift{5cm}
-\RequirePackage{caption}
-% 图注与表注格式
-\colorlet{captioncolor}{outermarginfgcolor} % 图片和表格题注文字颜色
+
+\RequirePackage{anyfontsize} % 消除字体大小警告
+\RequirePackage[colorlinks,linkcolor = purple,anchorcolor = purple,urlcolor = purple,citecolor= purple]{hyperref}
+% /* -------------------------------------------------------------------------- */
+
+% /* -------------------------------------------------------------------------- */
+% /* 设置pgflayers */
+% /* -------------------------------------------------------------------------- */
+\pgfdeclarelayer{background} %背景%底层
+\pgfdeclarelayer{foreground} %上层
+\pgfdeclarelayer{top} %顶部
+\pgfdeclarelayer{bottom} %底部
+\pgfsetlayers{bottom,background,main,foreground,top}
+% /* -------------------------------------------------------------------------- */
+
+% /* -------------------------------------------------------------------------- */
+% /* 设置封面元素 */
+% /* -------------------------------------------------------------------------- */
\makeatletter
-%%----------------------------------封面信息定义--------------------------------------------------------%%
+
\newcommand\bookseries[1]{\def\@bookseries{#1}}
\newcommand\subtitle[1]{\def\@subtitle{#1}}
\newcommand\edition[1]{\def\@edition{#1}}
@@ -146,52 +163,34 @@ citecolor = purple, %%修改此处为你想要的颜色
\newcommand\pressname[1]{\def\@pressname{#1}}
\newcommand\coverimage[1]{\def\@coverimage{#1}}
\newcommand\chapimage[1]{\def\@chapimage{#1}}
-%%----------------------------------封面信息定义--------------------------------------------------------%%
+
\makeatother
-\RequirePackage{indentfirst}
-\RequirePackage{amsmath}
-\RequirePackage[left=2cm,right=2cm,top=.6cm,bottom=2.2cm]{geometry}
+% /* -------------------------------------------------------------------------- */
+
+% /* -------------------------------------------------------------------------- */
+% /* 模板用到的距离标尺 */
+% /* -------------------------------------------------------------------------- */
+\newlength\outermarginwidth % 页边栏宽度
+\setlength\outermarginwidth{1.5cm}
+
+\newlength\covershift % 自定义的距离标尺
+\setlength\covershift{5cm}
+% /* -------------------------------------------------------------------------- */
+\newcommand{\tikzoverlay}[1]{\begin{tikzpicture}[remember picture,overlay] #1 \end{tikzpicture}}
+
+
+
+% /* -------------------------------------------------------------------------- */
+% /* 目录样式设置 */
+% /* -------------------------------------------------------------------------- */
\RequirePackage{xpatch}%修正章节编号
\RequirePackage[automark]{scrlayer-scrpage}%页面设置宏包,隶属于koma-script文档类
-\RequirePackage{fontawesome5}
-\RequirePackage{mathrsfs}
-\RequirePackage[most]{tcolorbox}
-\tcbuselibrary{breakable, skins,theorems}%TcolorBox Library
-\RequirePackage{tabularx}
-\RequirePackage{lastpage}
-%\RequirePackage{twemojis}
-\RequirePackage{ninecolors}
-\RequirePackage{colortbl} %彩色表格
-\RequirePackage{tabularray}
-\UseTblrLibrary{amsmath}
-% 定义 +array, +matrix, +bmatrix, +Bmatrix, +pmatrix, +vmatrix, +Vmatrix 和 +cases 环境。其
-% 中,每一个环境都类似于不带 + 前缀的环境,但是就像 tblr 环境一样,使用 rowsep=2pt 默认值。
-% 除了+array 环境外,其余的每个环境都可以带一个可选项,通过该可选项,可能为环境设置内部
-% 参数。
-\UseTblrLibrary{booktabs} % 定义 \toprule、 \midrule、\bottomrule 和 \cmidrule 命令,这些命令可以直接用于 tblr环境中
-\UseTblrLibrary{diagbox} % 在tblr 环境中使用 \diagbox 和\diagboxthree 命令排版斜线表头
-\UseTblrLibrary{varwidth} % 为表格添加 measure 内部参数。当设置了 measure=vbox 后,则会使用 \vbox 测量单元格宽度。%可以使用stretch=-1 移除列表环境上下的间距, 注意,stretch=-1 选项也会移除单元格中的支架
-\RequirePackage{pgfornament}
-\RequirePackage{zhnumber}
-\RequirePackage{dashrule}
-\RequirePackage{adjustbox}
-\RequirePackage{enumitem}
-\RequirePackage{multicol}
-\RequirePackage{amsthm}
-\RequirePackage{thmtools,thm-restate}%定理环境 %定理的重写
-\RequirePackage{bclogo}
-\RequirePackage[normalem]{ulem}
-\RequirePackage{pgfplots} %画图 %%页面样式设计核心包 %提供\pgfonlayer命令以及下列图层指令
-\pgfplotsset{compat=1.18}
-\RequirePackage{graphicx}%修正minipage顶部对齐问题
-\pgfdeclarelayer{background} %背景%底层
-\pgfdeclarelayer{foreground} %上层
-\pgfdeclarelayer{top} %顶部
-\pgfdeclarelayer{bottom} %底部
-\pgfsetlayers{bottom,background,main,foreground,top}
-\newcommand{\tikzoverlay}[1]{\begin{tikzpicture}[remember picture,overlay] #1 \end{tikzpicture}}
\RequirePackage[explicit]{titlesec}
\RequirePackage{titletoc}
+\RequirePackage[most]{tcolorbox}
+\tcbuselibrary{breakable, skins,theorems}
+\setcounter{tocdepth}{3}
+\setcounter{secnumdepth}{3}%增加编号深度
\newcommand\boxednum[1]
{
@@ -243,63 +242,16 @@ fuzzy shadow={0.4mm}{-0.4mm}{0mm}{0.2mm}{fill=white!40!gray},%下
{\hyperlink{subsubsection.\thecontentslabel}{\contentslabel{3.3em}}}
{\hspace*{-3.3em}}
{\titlerule*[1pc]{.}\contentspage\hspace*{1.5mm}}
+% /* -------------------------------------------------------------------------- */
-% tcolorbox中插入图片或者tikz绘图方法
-\newcommand\Figure[4]{%
- \begin{center}
- \captionsetup{type=figure} %消除 Package caption Warning: The option `hypcap=true' will be ignored for this
-%(caption) particular \caption on input line XX.警告信息
- \includegraphics[#1]{#2}
- \captionof{figure}{#3}\label{#4}
- \end{center}
-}%用法 : 用于tcolorbox中插入图片
-\newcommand\Tikz[3]{%
- \begin{center}
- \captionsetup{type=figure} %消除 Package caption Warning: The option `hypcap=true' will be ignored for this(caption) particular \caption on input line XX.警告信息
- #3 %最后一个参数为Tikz画图代码窗口
- \captionof{figure}{#1}\label{#2} %第一与第二个参数是Tikz画图的名称与标签
- \end{center}
-} %用法 : 用于tcolorbox中插入Tikz绘图
-%特殊注释矩阵
-\newcommand\coolover[2]{\mathrlap{\smash{\overbrace{\phantom{%
- \begin{matrix} #2 \end{matrix}}}^{\mbox{$#1$}}}}#2}
-
-\newcommand\coolunder[2]{\mathrlap{\smash{\underbrace{\phantom{%
- \begin{matrix} #2 \end{matrix}}}_{\mbox{$#1$}}}}#2}
-
-\newcommand\coolleftbrace[2]{%
- #1\left\{\vphantom{\begin{matrix} #2 \end{matrix}}\right.}
-
-\newcommand\coolrightbrace[2]{%
- \left.\vphantom{\begin{matrix} #1 \end{matrix}}\right\}#2}
-\definecolor{lightergray}{gray}{0.99}
-
-\newcommand*{\circled}[1]{\lower.7ex\hbox{\tikz\draw (0pt, 0pt)%
- circle (.5em) node {\makebox[1em][c]{\small #1}};}}
-\newcommand{\twicecircle}{\raisebox{.7ex}{
- \begin{tikzpicture}[remember picture,overlay]
- \draw[line width=0.6pt,black!60] (0,0) circle (3pt);
- \fill[black] (0,0) circle (1.6pt) ;
- \end{tikzpicture}}
-}
-\newcommand{\exercise}[2][\bcicosaedre]{\bigskip
-\begin{tikzpicture}[remember picture,overlay]
-\draw[line width=2pt,loosely dotted,teal] (0,0)--node[pos=0.4,rectangle,minimum height=1.5em,font=\sffamily\Large,text=black,fill=black!2,drop shadow={opacity=.3, shadow xshift=0.1cm},anchor=center,
- inner sep=1.5mm,
- anchor=west,] {$#1$ ~ #2} (\linewidth,0);
-\end{tikzpicture}\bigskip\smallskip
-}
-\RequirePackage{extarrows}
-\newcommand{\R}{\mathbb{R}}
-\newcommand{\F}{\mathcal{F}}
-\newcommand{\lan}[1]{\langle #1 \rangle}
-\newenvironment{eq}[1]{\begin{equation}\begin{aligned}#1}{\end{aligned}\end{equation}} %有编号
-\newenvironment{eq*}[1]{\begin{equation*}\begin{aligned}#1}{\end{aligned}\end{equation*}} %无编号
-% \everymath{\displaystyle}
-
-%% -------- 章节样式
+
+% /* -------------------------------------------------------------------------- */
+% /* 章节样式 */
+% /* -------------------------------------------------------------------------- */
+
+% /* ---------------------------- titleimage自动导入程序 ---------------------------- */
\makeatletter
-% titleimage
+
\ExplSyntaxOn
\seq_new:N \g__beautybook_chapter_oimage_seq % odd
\seq_new:N \g__beautybook_chapter_eimage_seq % even
@@ -334,7 +286,8 @@ fuzzy shadow={0.4mm}{-0.4mm}{0mm}{0.2mm}{fill=white!40!gray},%下
\cs_new_protected:Npn \titleimage #1
{ \keys_set:nn { beautybook/titleimage } {#1} }
\ExplSyntaxOff
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% /* -------------------------------- Chatper样式 ------------------------------- */
\titleformat{\chapter}{\huge\bfseries\filcenter}{}{1em}{
\makebox[0pt][l]{\def\rad{7pt}%
\begin{tikzpicture}[remember picture, overlay]%
@@ -418,8 +371,11 @@ fuzzy shadow={0.4mm}{-0.4mm}{0mm}{0.2mm}{fill=white!40!gray},%下
\end{tikzpicture}}
}
\titlespacing{\chapter}{0pt}{0pt}{70pt}
+
+
+% /* --------------------------------- Part定制 --------------------------------- */
\makeatother
-% -------- Part定制
+
%%定义标题文字长度%%
\newlength{\partstarlen}
%%设置临界长度%%
@@ -538,7 +494,7 @@ color=transparent!90, middle color=transparent!20]
\assignpagestyle{\chapter}{empty}
-%% -- Section
+% /* -------------------------------- Section样式 ------------------------------- */
\titleformat{\section}
{}
{}
@@ -567,9 +523,8 @@ color=transparent!90, middle color=transparent!20]
\titlespacing*{\section}{0pt}{3.5ex plus 1ex minus .2ex}{2.3ex plus .2ex}
-% /* -------------------------------------------------------------------------- */
-% /* Subsection Style */
-% /* -------------------------------------------------------------------------- */
+
+% /* ------------------------------ Subsection样式 ------------------------------ */
\usepackage{pifont}
\newcommand{\subsectionnumstyle}[2]{
\makebox[0pt][l]{\def\rad{5pt}%
@@ -610,7 +565,7 @@ color=transparent!90, middle color=transparent!20]
\end{pgfonlayer}
\end{tikzpicture}}
}
-%% -- Subsection
+
\titleformat{\subsection}
{}
{}
@@ -620,8 +575,13 @@ color=transparent!90, middle color=transparent!20]
\titleformat{name=\subsection,numberless}{}{}{-.5em}{\subsectionnonumstyle{#1}{outermarginfgcolor}}
% \titlespacing*{\subsection}{0pt}{3.5ex plus 1ex minus .2ex}{2.3ex plus .2ex}
+
+
+
%%-------------------------------- SCRLAYER-SCRPAGE -------------------------------------%%
-%% SIDE-BAR
+% /* -------------------------------------------------------------------------- */
+% /* SIDE-BAR配置 */
+% /* -------------------------------------------------------------------------- */
\newlength\chapternumbersize
\setlength\chapternumbersize{36pt}
\setlength{\headheight}{40pt} % 页眉高度
@@ -820,7 +780,12 @@ color=transparent!90, middle color=transparent!20]
%%-------------------------------- SCRLAYER-SCRPAGE -------------------------------------%%
-%% Begin The Most Beautiful Box (STYLE : ys style) % 中国风盒子
+% /* -------------------------------------------------------------------------- */
+% /* 中国风盒子 */
+% /* -------------------------------------------------------------------------- */
+
+%% Begin The Most Beautiful Box (STYLE : ys style)
+
\makeatletter
\definecolor{framegolden}{HTML}{455a64} % 控制外框颜色
\definecolor{framegray}{HTML}{e0e0e0} % 控制填充颜色
@@ -1090,15 +1055,19 @@ color(75bp)=(pgftransparent!100); color(100bp)=(pgftransparent!100)}
\makeatother
\newtcolorbox{fancybox}[1][]{enhanced,ys style,breakable,pad at break=2mm,
ys/frame/not at break,ys/frame/fill opacity=0,#1,fontupper=\itshape}
-%% End The Most Beautiful Box
+% /* -------------------------------------------------------------------------- */
+
+
+% /* -------------------------------------------------------------------------- */
+% /* 定理环境设置 */
+% /* -------------------------------------------------------------------------- */
\makeatletter
+% /* ---------------------------------- 第一种定理 --------------------------------- */
\definecolor{CyaN}{HTML}{dbe1e5}
\colorlet{OrangE}{yellow!20!orange}
\colorlet{BluE}{cyan!70!blue}
\colorlet{ReD}{red!20!orange}
\colorlet{GreeN}{yellow!40!green}
-
-% 第一种定理
\tcbset{my@basic@thm/.style={enhanced jigsaw, breakable,
enlarge left by=-3.5mm, width=\textwidth+3.5mm, boxrule=0pt,
top=2pt, bottom=2pt, left=2.5mm, frame hidden}}
@@ -1112,9 +1081,9 @@ color(75bp)=(pgftransparent!100); color(100bp)=(pgftransparent!100)}
\NewDocumentCommand{\@my@renewtheorem}{ m m o +m }
{\IfNoValueTF{#3}{\renewtheorem{#1}{#2}}{\renewtheorem{#1}{#2}[#3]}%
\tcbset{my@#1@thmstyle/.style={#4}}}
-%
+
% ---------------------------------------------------------------------------------- %
-% 第二种定理
+% /* ---------------------------------- 第二种定理 --------------------------------- */
\tcbset{my@basic@tcbthm/.style={detach title,}}
\newcommand{\@my@newtcbtheorem@n}[1]{\ERROR}
\newcommand{\@my@newtcbtheorem@nn}[2]{%
@@ -1145,10 +1114,7 @@ color(75bp)=(pgftransparent!100); color(100bp)=(pgftransparent!100)}
\cs_new_protected:Npn \mynewtcbtheorem
{ \keyval_parse:NNn \@my@newtcbtheorem@n \@my@newtcbtheorem@nn }
\ExplSyntaxOff
-\makeatother
-% 第二种定理
-\makeatletter
%% Overlay Settings
\newcommand{\my@theorem@overlay@unbroken}[2]{
%%============== First ==============%%
@@ -1244,19 +1210,6 @@ anchor=west,rounded corners=3pt,font=\bfseries\normalsize] at ([xshift=0cm,yshif
\declaretheorem[style=Proofstyle,numbered=no,name={\itbf{Proof}}]{Proof}
\renewenvironment{proof}{\begin{Proof} }{\end{Proof}}
\declaretheorem[style=Proofstyle,numbered=no,name={\itbf{Solution}}]{solution}
+% /* -------------------------------------------------------------------------- */
-%%%%%%%%%%%%%%% 计数器知识 %%%%%%%%%%%%%%%%%%%%%%
-% 每次用 \newcounter{foo} 定义新计数器,内部都会定义这几个命令
-
-% \c@foo,储存计数器的值,初始值为 0
-% \thefoo,储存计数器输出时的格式,初始定义为 \arabic{foo}
-% \p@foo,储存计数器被引用时的前缀,初始定义为空
-% \cl@foo,储存「子计数器」列表(此处有简化),foo 自增时它的每个「子计数器」都会归零(详见「自动归零」一节),初始定义为空
-%% 关于计数器的自动归零
-% 如果还定义了计数器 \newcounter{bar}[foo],那么 \cl@foo 里就有了 bar
-% \@addtoreset{child}{parent} 和 \@removefromreset{child}{parent} 可以把计数器 child 移入/移出 \cl@parent
-% \counterwithin* 和 \counterwithout* 和上一条里两个命令的功能类似,但它们在执行前会检查接受的两个参数是否为已定义的计数器。不加星号的版本会修改 \thechild,详见「输出格式」一节
-% 在使用 \stepcounter{parent} 和 \refstepcounter{parent} 时,parent 自增,同时归零\cl@parent 里的「子计数器」
-% \addtocount{parent}{1} 只自增 parent,没有归零其「子计数器」的效果
-% 归零实现为「对每个子计数器,先设为 -1,然后使用 \stepcounter 自增」,这样实现的「归零」功能是递归的
-% 递归的意思是,如果还有 \newcounter{grandchild}[child],那么 \stepcounter{parent} 会将 child 和 grandchild 都归零
+\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-bottompage.sty b/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-bottompage.sty
index 069dc61f60f..814b929bb68 100644
--- a/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-bottompage.sty
+++ b/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-bottompage.sty
@@ -1,5 +1,5 @@
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{stys/beautybook-bottompage}[2024/06/30,v2.0]
+\ProvidesPackage{stys/beautybook-bottompage}[2024/07/01,v2.0]
\usepackage[ISBN=978-80-85955-35-4,SC0]{ean13isbn}
\makeatletter
%%----------------------------------封面信息定义--------------------------------------------------------%%
@@ -45,9 +45,9 @@
\raggedright
\sc\fontsize{20}{23}\selectfont\@bookseries}
}; %系列丛书名称
- \node[right,text=white,font=\rmfamily\Large,] at
- ([shift={(-.5cm,1.5cm)}]current page.south west) %
- {\raisebox{-1.1cm}{\includegraphics[width=0.2\linewidth]{\@presslogo}}\hspace*{-3.5ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};%
+ \node[left,text=white,font=\rmfamily\Large,] at
+ ([shift={(5.6cm,2cm)}]current page.south west) %
+ {\raisebox{-0.5cm}{\includegraphics[width=0.1\linewidth]{\@presslogo}}\hspace*{0ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};%
\ifdefvoid{\@ISBNcode}{}{
\node[scale=1.5] (isbn) at ([shift={(-1.85\outermarginwidth,.5\covershift)}]current page.south east) {\@ISBNcode};%
\begin{pgfonlayer}{bottom}
diff --git a/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-birkar.sty b/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-birkar.sty
index 4253b6a3a0e..6668db854b5 100644
--- a/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-birkar.sty
+++ b/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-birkar.sty
@@ -1,5 +1,5 @@
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{stys/beautybook-cover-birkar}[2024/06/30,v2.0]
+\ProvidesPackage{stys/beautybook-cover-birkar}[2024/07/01,v2.0]
\usepackage{anyfontsize} % 提供\fontsize{}{}\selectfont命令
\usepackage{etoolbox} %提供自定义封面选项接口
\usepackage[dvipsnames,svgnames,x11names,table]{xcolor}%颜色宏包 % Driver-independent color extensions
@@ -34,59 +34,69 @@ decorations.pathmorphing, graphs, quotes, angles, calc, through, backgrounds} %
top color=transparent!50]
\makeatletter
\newcommand{\aivcover}{
- \begin{scope}[opacity=0.8]
- \coordinate (triangleA) at ([shift={(1cm,-1.5cm)}]current page.north);
- \coordinate (triangleB) at ([shift={(-.75\linewidth,-.44\paperheight)}]triangleA);
- \coordinate (triangleC) at ([shift={(.5\linewidth,-.44\paperheight)}]triangleA);
- \draw[name path=triangle,very thick,coverfgcolor!70!white]
- (triangleA)--(triangleB)--(triangleC)--cycle;
- \draw[name path=circle,very thick,coverfgcolor!70!white]
- ([shift={(-1.65cm,-7.8cm)}]triangleA) coordinate (O) circle(6cm);
- %标注每个交点坐标
- \fill [name intersections={of=triangle and circle, name=i, total=\t}]
- [coverbar,opacity=0.5, every node/.style={above left, white, opacity=1}]
- \foreach \s in {1,...,\t}{(i-\s) circle (1em) node {}};
- \draw[name path=l,very thick,coverfgcolor!70!white] (i-1) -- (triangleC);
- \draw[very thick,coverfgcolor!70!white] (i-6) -- (triangleB);
- \draw[name path=l2,very thick,coverfgcolor!70!white] (i-4) -- (triangleA);
- \fill[name intersections={of=l and circle,name=j,total=\l}]
- [coverbar,opacity=0.5, every node/.style={above left, white, opacity=1}]
- \foreach \c in {1,...,\l}{(j-\c) circle (1em) node {}};
-
- \fill[name intersections={of=l2 and l,name=jj,total=\ll}]
- [coverbar,opacity=0.5, every node/.style={above left, white, opacity=1}]
- \foreach \cc in {1,...,\ll}{(jj-\cc) circle (1em) node {}};
- \end{scope}
-}
-
-\newcommand{\lettercover}{
+ \begin{tikzpicture}[remember picture,overlay]
+ \begin{pgfonlayer}{bottom}
+ \fill[coverfgcolor]
+ (current page.north west) rectangle (current page.south east);% 填充封面背景颜色 (coverbgcolor)
+ \fill[RED]
+ ([shift={(2.05cm,0)}]current page.north west) rectangle ([shift={(2.35cm,-6cm)}]current page.north west);
+ \fill[coverfgcolor!80,opacity=0.5]
+ ([shift={(0,-2cm)}]current page.north west) arc (90:-90:.3\paperheight) --cycle;
+ \fill[coverfgcolor!80,opacity=0.5]
+ ([shift={(0,-4cm)}]current page.north east) arc (90:270:.2\paperheight) --cycle;
+ \fill[coverfgcolor!80]
+ (current page.north west) rectangle ([shift={(2cm,0)}]current page.south west);
\begin{scope}[opacity=0.8]
- \coordinate (triangleA) at ([shift={(1cm,-1cm)}]current page.north);
- \coordinate (triangleB) at ([shift={(-.85\linewidth,-.46\paperheight)}]triangleA);
- \coordinate (triangleC) at ([shift={(.52\linewidth,-.46\paperheight)}]triangleA);
- \draw[name path=triangle,very thick,coverfgcolor!70!white]
- (triangleA)--(triangleB)--(triangleC)--cycle;
- \draw[name path=circle,very thick,coverfgcolor!70!white]
- ([shift={(-1.6cm,-7.3cm)}]triangleA) coordinate (O) circle(6cm);
- %标注每个交点坐标
- \fill [name intersections={of=triangle and circle, name=i, total=\t}]
- [coverbar,opacity=0.5, every node/.style={above left, white, opacity=1}]
- \foreach \s in {1,...,\t}{(i-\s) circle (1em) node {}};
- \draw[name path=l,very thick,coverfgcolor!70!white] (i-1) -- (triangleC);
- \draw[very thick,coverfgcolor!70!white] (i-6) -- (triangleB);
- \draw[name path=l2,very thick,coverfgcolor!70!white] (i-4) -- (triangleA);
- \fill[name intersections={of=l and circle,name=j,total=\l}]
- [coverbar,opacity=0.5, every node/.style={above left, white, opacity=1}]
- \foreach \c in {1,...,\l}{(j-\c) circle (1em) node {}};
-
- \fill[name intersections={of=l2 and l,name=jj,total=\ll}]
- [coverbar,opacity=0.5, every node/.style={above left, white, opacity=1}]
- \foreach \cc in {1,...,\ll}{(jj-\cc) circle (1em) node {}};
- \end{scope}
+ \coordinate (triangleA) at ([shift={(1cm,-1.5cm)}]current page.north);
+ \coordinate (triangleB) at ([shift={(-.75\linewidth,-.44\paperheight)}]triangleA);
+ \coordinate (triangleC) at ([shift={(.5\linewidth,-.44\paperheight)}]triangleA);
+ \draw[name path=triangle,very thick,coverfgcolor!70!white]
+ (triangleA)--(triangleB)--(triangleC)--cycle;
+ \draw[name path=circle,very thick,coverfgcolor!70!white]
+ ([shift={(-1.65cm,-7.8cm)}]triangleA) coordinate (O) circle(6cm);
+ %标注每个交点坐标
+ \fill [name intersections={of=triangle and circle, name=i, total=\t}]
+ [coverbar,opacity=0.5, every node/.style={above left, white, opacity=1}]
+ \foreach \s in {1,...,\t}{(i-\s) circle (1em) node {}};
+ \draw[name path=l,very thick,coverfgcolor!70!white] (i-1) -- (triangleC);
+ \draw[very thick,coverfgcolor!70!white] (i-6) -- (triangleB);
+ \draw[name path=l2,very thick,coverfgcolor!70!white] (i-4) -- (triangleA);
+ \fill[name intersections={of=l and circle,name=j,total=\l}]
+ [coverbar,opacity=0.5, every node/.style={above left, white, opacity=1}]
+ \foreach \c in {1,...,\l}{(j-\c) circle (1em) node {}};
+
+ \fill[name intersections={of=l2 and l,name=jj,total=\ll}]
+ [coverbar,opacity=0.5, every node/.style={above left, white, opacity=1}]
+ \foreach \cc in {1,...,\ll}{(jj-\cc) circle (1em) node {}};
+ \end{scope}
+ \end{pgfonlayer}
+ \begin{pgfonlayer}{foreground}
+ \fill[coverbar,opacity=.5]
+ ([yshift=2\outermarginwidth]current page.west) rectangle ([xshift=\outermarginwidth,yshift=-.2\outermarginwidth]current page.west); % 最左侧装饰矩形
+ \end{pgfonlayer}
+ \shade[left color=coverfgcolor,right color=coverfgcolor!60,opacity=.3]
+ ([xshift=\outermarginwidth,yshift=2\outermarginwidth]current page.west) rectangle (current page.south east); % 标题背景大矩形
+ \node[anchor=south] at ([xshift=.3\outermarginwidth,yshift=-.4\covershift]current page.north) {%
+ \parbox{.8\paperwidth}{
+ \filright
+ \color{white}\sffamily\fontsize{20}{23}\selectfont\@bookseries}
+ }; %系列丛书名称
+ \node[ anchor=south,below right] (covertitles) at ([xshift=1.8\outermarginwidth-0.2cm,yshift=2.7cm]current page.west)
+ {\parbox{.8\paperwidth}{%
+ \raggedright%
+ {\renewcommand\baselinestretch{1.1}\selectfont \color{white}\sffamily\bfseries\fontsize{40}{40}\selectfont\@title\\[0.5ex]
+ \color{white}\sc\fontsize{30}{30}\selectfont
+ \ifdefvoid{\@subtitle}{}{\@subtitle}\par}
+ }};% 封面标题与副标题
+ \node[anchor=west,font=\sc\fontsize{23}{23}\selectfont,text=white] at ([shift={(-.4\paperwidth,-6cm)}]covertitles) {\@edition};
+ \node[anchor=west,font=\sffamily\Huge,text=white] at ([xshift=1.8\outermarginwidth-0.3cm,yshift=\covershift]current page.west) {\@author};
+ \node[left,text=white,font=\rmfamily\Large,] at
+ ([shift={(-2cm,2cm)}]current page.south east)
+ {\raisebox{-0.5cm}{\includegraphics[width=0.1\linewidth]{\@presslogo}}\hspace*{0ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};%
+\end{tikzpicture}%
}
-\newcommand*\makecover{
- \thispagestyle{empty}
+\newcommand{\lettercover}{
\begin{tikzpicture}[remember picture,overlay]
\begin{pgfonlayer}{bottom}
\fill[coverfgcolor]
@@ -99,38 +109,59 @@ decorations.pathmorphing, graphs, quotes, angles, calc, through, backgrounds} %
([shift={(0,-4cm)}]current page.north east) arc (90:270:.2\paperheight) --cycle;
\fill[coverfgcolor!80]
(current page.north west) rectangle ([shift={(2cm,0)}]current page.south west);
- % /* -------------------------------------------------------------------------- */
- % /* 判断a4paper */
- % /* -------------------------------------------------------------------------- */
- \ifaivpaper@TF{\aivcover}{\lettercover}
- % /* -------------------------------------------------------------------------- */
- % /* 判断a4paper */
- % /* -------------------------------------------------------------------------- */
-\end{pgfonlayer}
-\begin{pgfonlayer}{foreground}
- \fill[coverbar,opacity=.5]
-([yshift=2\outermarginwidth]current page.west) rectangle ([xshift=\outermarginwidth,yshift=-.2\outermarginwidth]current page.west); % 最左侧装饰矩形
-\end{pgfonlayer}
-\shade[left color=coverfgcolor,right color=coverfgcolor!60,opacity=.3]
-([xshift=\outermarginwidth,yshift=2\outermarginwidth]current page.west) rectangle (current page.south east); % 标题背景大矩形
-\node[anchor=south] at ([xshift=.3\outermarginwidth,yshift=-.4\covershift]current page.north) {%
-\parbox{.8\paperwidth}{
-\filright
-\color{white}\sffamily\fontsize{20}{23}\selectfont\@bookseries}
-}; %系列丛书名称
-\node[ anchor=south] at ([xshift=.3\outermarginwidth,yshift=-.57\paperheight]current page.north)
-{\parbox{.8\paperwidth}{%
- \raggedright%
-{\renewcommand\baselinestretch{1.1}\selectfont \color{white}\sffamily\bfseries\fontsize{40}{40}\selectfont\@title\\[0.5ex]
- \color{white}\sffamily\fontsize{30}{30}\selectfont
- \ifdefvoid{\@subtitle}{}{\@subtitle}\par}
-}};% 封面标题与副标题
-\node[anchor=west,font=\sffamily\fontsize{23}{23}\selectfont,text=white] at ([xshift=1.8\outermarginwidth,yshift=-.6\covershift]current page.west) {\@edition};
-\node[anchor=west,font=\sffamily\Huge,text=white] at ([xshift=1.8\outermarginwidth,yshift=\covershift]current page.west) {\@author};
-\node[left,text=white,font=\rmfamily\Large,] at
-([shift={(-1cm,2cm)}]current page.south east) %
-{\raisebox{-1.1cm}{\includegraphics[width=0.2\linewidth]{\@presslogo}}\hspace*{-3.5ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};%
+ \begin{scope}[opacity=0.8]
+ \coordinate (triangleA) at ([shift={(1cm,-1cm)}]current page.north);
+ \coordinate (triangleB) at ([shift={(-.85\linewidth,-.46\paperheight)}]triangleA);
+ \coordinate (triangleC) at ([shift={(.52\linewidth,-.46\paperheight)}]triangleA);
+ \draw[name path=triangle,very thick,coverfgcolor!70!white]
+ (triangleA)--(triangleB)--(triangleC)--cycle;
+ \draw[name path=circle,very thick,coverfgcolor!70!white]
+ ([shift={(-1.6cm,-7.3cm)}]triangleA) coordinate (O) circle(6cm);
+ %标注每个交点坐标
+ \fill [name intersections={of=triangle and circle, name=i, total=\t}]
+ [coverbar,opacity=0.5, every node/.style={above left, white, opacity=1}]
+ \foreach \s in {1,...,\t}{(i-\s) circle (1em) node {}};
+ \draw[name path=l,very thick,coverfgcolor!70!white] (i-1) -- (triangleC);
+ \draw[very thick,coverfgcolor!70!white] (i-6) -- (triangleB);
+ \draw[name path=l2,very thick,coverfgcolor!70!white] (i-4) -- (triangleA);
+ \fill[name intersections={of=l and circle,name=j,total=\l}]
+ [coverbar,opacity=0.5, every node/.style={above left, white, opacity=1}]
+ \foreach \c in {1,...,\l}{(j-\c) circle (1em) node {}};
+
+ \fill[name intersections={of=l2 and l,name=jj,total=\ll}]
+ [coverbar,opacity=0.5, every node/.style={above left, white, opacity=1}]
+ \foreach \cc in {1,...,\ll}{(jj-\cc) circle (1em) node {}};
+ \end{scope}
+ \end{pgfonlayer}
+ \begin{pgfonlayer}{foreground}
+ \fill[coverbar,opacity=.5]
+ ([yshift=2\outermarginwidth]current page.west) rectangle ([xshift=\outermarginwidth,yshift=-.2\outermarginwidth]current page.west); % 最左侧装饰矩形
+ \end{pgfonlayer}
+ \shade[left color=coverfgcolor,right color=coverfgcolor!60,opacity=.3]
+ ([xshift=\outermarginwidth,yshift=2\outermarginwidth]current page.west) rectangle (current page.south east); % 标题背景大矩形
+ \node[anchor=south] at ([xshift=.3\outermarginwidth,yshift=-.4\covershift]current page.north) {%
+ \parbox{.8\paperwidth}{
+ \filright
+ \color{white}\sffamily\fontsize{20}{23}\selectfont\@bookseries}
+ }; %系列丛书名称
+ \node[ anchor=south,below right] (covertitles) at ([xshift=1.8\outermarginwidth-0.2cm,yshift=2.7cm]current page.west)
+ {\parbox{.8\paperwidth}{%
+ \raggedright%
+ {\renewcommand\baselinestretch{1.1}\selectfont \color{white}\sffamily\bfseries\fontsize{40}{40}\selectfont\@title\\[0.5ex]
+ \color{white}\sc\fontsize{30}{30}\selectfont
+ \ifdefvoid{\@subtitle}{}{\@subtitle}\par}
+ }};% 封面标题与副标题
+ \node[anchor=west,font=\sc\fontsize{23}{23}\selectfont,text=white] at ([shift={(-.4\paperwidth,-6cm)}]covertitles) {\@edition};
+ \node[anchor=west,font=\sffamily\Huge,text=white] at ([xshift=1.8\outermarginwidth-0.3cm,yshift=\covershift]current page.west) {\@author};
+ \node[left,text=white,font=\rmfamily\Large,] at
+ ([shift={(-2cm,2cm)}]current page.south east)
+ {\raisebox{-0.5cm}{\includegraphics[width=0.1\linewidth]{\@presslogo}}\hspace*{0ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};%
\end{tikzpicture}%
+}
+
+\newcommand\makecover{
+ \thispagestyle{empty}
+ \ifaivpaper@TF{\aivcover}{\lettercover}
{\newpage\thispagestyle{empty}}
}
\makeatother
diff --git a/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-cn.sty b/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-cn.sty
index 176e740f6f3..399246d97ad 100644
--- a/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-cn.sty
+++ b/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-cn.sty
@@ -1,5 +1,5 @@
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{stys/beautybook-cover-cn}[2024/06/30,v2.0]
+\ProvidesPackage{stys/beautybook-cover-cn}[2024/07/01,v2.0]
\usetikzlibrary{calc,fadings,patterns}
\usepackage{adjustbox} %修正minipage顶部对齐问题
%%%%===============================================================%%%%%
@@ -19,34 +19,31 @@
bottom color =transparent!100,
top color=transparent!50]
\makeatletter
-\newcommand*\makecover{
- %% Use the Tikz library positioning and clear the page header and footer
- \usetikzlibrary{positioning}
- \thispagestyle{empty}
+\newcommand{\aivcover}{
\begin{tikzpicture}[remember picture,overlay]
\fill[coverfgcolor!75]
(current page.north west) rectangle (current page.south east);% 填充封面背景颜色 (coverbgcolor)
- \fill[coverfgcolor!50]
- ([xshift=-3\covershift,yshift=-.4\covershift]current page.east) rectangle ([yshift=-1.35\covershift]current page.east); % 被标题背景遮挡露出一部分的装饰矩形
+ \fill[coverfgcolor!50]
+ ([xshift=-3\covershift,yshift=-.4\covershift]current page.east) rectangle ([yshift=-1.35\covershift]current page.east); % 被标题背景遮挡露出一部分的装饰矩形
\fill[coverfgcolor]
([xshift=\outermarginwidth]current page.north west) rectangle ([xshift=-\outermarginwidth,yshift=1.5\covershift]current page.south east); % 标题背景大矩形
- \fill[coverbar]
- ([yshift=.44\covershift]current page.west) rectangle ([xshift=\outermarginwidth,yshift=-.4\covershift]current page.west); % 最左侧装饰矩形
+ \fill[coverbar]
+ ([yshift=.44\covershift+0.05cm]current page.west) rectangle ([xshift=\outermarginwidth,yshift=-.4\covershift]current page.west); % 最左侧装饰矩形
\node[left] at ([xshift=-1.8cm,yshift=-1.5cm]current page.north east) {%
\parbox{3\covershift}{
\raggedleft
\color{white}\sffamily\bfseries\fontsize{18}{22}\selectfont\@bookseries}
}; %系列丛书名称
- \node[right] at ([xshift=\outermarginwidth,yshift=1.5*\covershift]current page.west)
- {\parbox{.8\paperwidth}{%
- \filright%
- \color{white}\sffamily\bfseries\fontsize{30}{30}\selectfont\@title\\[-1.2ex]
- \begin{tikzpicture}
- \draw[white,line width=1pt] (0,0) --++ (\paperwidth-3\outermarginwidth,0);
- \end{tikzpicture}\\[-.5ex]
- \color{white}\sffamily\bfseries\fontsize{30}{30}\selectfont
- \ifdefvoid{\@subtitle}{}{\@subtitle}
- }};% 封面英文书名与中文书名
+ \node[right] at ([xshift=\outermarginwidth,yshift=1.5*\covershift]current page.west)
+ {\parbox{.8\paperwidth}{%
+ \filright%
+ \color{white}\sffamily\bfseries\fontsize{30}{30}\selectfont\@title\\[-1ex]
+ \begin{tikzpicture}
+ \draw[white,line width=1pt] (0,0) --++ (\paperwidth-3\outermarginwidth,0);
+ \end{tikzpicture}\\[0ex]
+ \color{white}\sc\fontsize{30}{30}\selectfont
+ \ifdefvoid{\@subtitle}{}{\@subtitle}
+ }};% 封面英文书名与中文书名
\node[left,inner sep=0pt,outer sep=0pt] at ([xshift=1.2\outermarginwidth,yshift=1.8cm]current page.east)
{%
\adjustbox{valign=t}{
@@ -68,15 +65,77 @@
([xshift=\outermarginwidth]current page.south west) rectangle ++(1.8*\covershift,.575\paperheight);
\fill[pattern color=coverfgcolor!70,pattern=horizontal lines,opacity=0.8]
([xshift=\outermarginwidth,yshift=.2\covershift]current page.south west) rectangle ([xshift=-\outermarginwidth,yshift=1.43\covershift]current page.south east);
- \fill [coverfgcolor!80,path fading=fade right]%
- ([xshift=\outermarginwidth+.5\linewidth+.5cm,yshift=.2\covershift]current page.south west) rectangle ([xshift=-\outermarginwidth,yshift=1.43\covershift]current page.south east);
- \fill [coverfgcolor!80,path fading=fade left]%
+ \fill [coverfgcolor!80,path fading=fade right]%
([xshift=\outermarginwidth+.5\linewidth+.5cm,yshift=.2\covershift]current page.south west) rectangle ([xshift=-\outermarginwidth,yshift=1.43\covershift]current page.south east);
+ \fill [coverfgcolor!80,path fading=fade left]%
+ ([xshift=\outermarginwidth+.5\linewidth+.5cm,yshift=.2\covershift]current page.south west) rectangle ([xshift=-\outermarginwidth,yshift=1.43\covershift]current page.south east);
\node[left,text=white,font=\rmfamily\Large,] at
([shift={(-2cm,2cm)}]current page.south east) %
- {\raisebox{-1.1cm}{\includegraphics[width=0.2\linewidth]{\@presslogo}}\hspace*{-3.5ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};%
+ {\raisebox{-0.5cm}{\includegraphics[width=0.1\linewidth]{\@presslogo}}\hspace*{0ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};%
\end{tikzpicture}%
- {\newpage\thispagestyle{empty}}}
+ }
+
+\newcommand{\lettercover}{
+ \begin{tikzpicture}[remember picture,overlay]
+ \fill[coverfgcolor!75]
+ (current page.north west) rectangle (current page.south east);% 填充封面背景颜色 (coverbgcolor)
+ \fill[coverfgcolor!50]
+ ([xshift=-3\covershift,yshift=-.4\covershift]current page.east) rectangle ([yshift=-1.2\covershift]current page.east); % 被标题背景遮挡露出一部分的装饰矩形
+ \fill[coverfgcolor]
+ ([xshift=\outermarginwidth]current page.north west) rectangle ([xshift=-\outermarginwidth,yshift=1.5\covershift]current page.south east); % 标题背景大矩形
+ \fill[coverbar]
+ ([yshift=.44\covershift-0.1cm]current page.west) rectangle ([xshift=\outermarginwidth,yshift=-.4\covershift]current page.west); % 最左侧装饰矩形
+ \node[left] at ([xshift=-1.8cm,yshift=-1.5cm]current page.north east) {%
+ \parbox{3\covershift}{
+ \raggedleft
+ \color{white}\sffamily\bfseries\fontsize{18}{22}\selectfont\@bookseries}
+ }; %系列丛书名称
+ \node[right] at ([xshift=\outermarginwidth,yshift=1.5*\covershift]current page.west)
+ {\parbox{.8\paperwidth}{%
+ \filright%
+ \color{white}\sffamily\bfseries\fontsize{30}{30}\selectfont\@title\\[-1ex]
+ \begin{tikzpicture}
+ \draw[white,line width=1pt] (0,0) --++ (\paperwidth-3\outermarginwidth,0);
+ \end{tikzpicture}\\[0ex]
+ \color{white}\sc\fontsize{30}{30}\selectfont
+ \ifdefvoid{\@subtitle}{}{\@subtitle}
+ }};% 封面英文书名与中文书名
+ \node[left,inner sep=0pt,outer sep=0pt] at ([xshift=1.2\outermarginwidth,yshift=1.8cm]current page.east)
+ {%
+ \adjustbox{valign=t}{
+ \begin{minipage}{.25\textwidth}
+ \begin{tikzpicture}
+ \foreach \x/\r in {1.2/6,.8/4} {
+ \draw[white,line width=\x pt] (0,0) circle [radius=\r pt];}
+ \fill[white] (0,0) circle [radius=2.5pt];
+ \end{tikzpicture}
+ \hspace{2pt}\color{white}\sffamily\fontsize{20}{25}\selectfont Editors
+ \end{minipage}}
+ \hfill
+ \adjustbox{valign=t}{\begin{minipage}{.45\textwidth}
+ \raggedright\color{white}\sffamily\fontsize{20}{25}\selectfont\@author
+ \end{minipage}}
+ };% 封面作者信息栏
+ \fill [path picture={ \node at (path picture bounding box.center)
+ {\includegraphics[height=1.1\linewidth,keepaspectratio]{\@coverimage}};}]
+ ([xshift=\outermarginwidth]current page.south west) rectangle ++(1.8*\covershift,.575\paperheight);
+ \fill[pattern color=coverfgcolor!70,pattern=horizontal lines,opacity=0.8]
+ ([xshift=\outermarginwidth,yshift=.2\covershift]current page.south west) rectangle ([xshift=-\outermarginwidth,yshift=1.43\covershift]current page.south east);
+ \fill [coverfgcolor!80,path fading=fade right]%
+ ([xshift=\outermarginwidth+.5\linewidth+.2cm,yshift=.2\covershift]current page.south west) rectangle ([xshift=-\outermarginwidth,yshift=1.43\covershift]current page.south east);
+ \fill [coverfgcolor!80,path fading=fade left]%
+ ([xshift=\outermarginwidth+.5\linewidth+.2cm,yshift=.2\covershift]current page.south west) rectangle ([xshift=-\outermarginwidth,yshift=1.43\covershift]current page.south east);
+ \node[left,text=white,font=\rmfamily\Large,] at
+ ([shift={(-2cm,2cm)}]current page.south east) %
+ {\raisebox{-0.5cm}{\includegraphics[width=0.1\linewidth]{\@presslogo}}\hspace*{0ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};%
+ \end{tikzpicture}%
+ }
+
+\newcommand\makecover{
+ \thispagestyle{empty}
+ \ifaivpaper@TF{\aivcover}{\lettercover}
+ {\newpage\thispagestyle{empty}}
+}
\makeatother
\endinput
% %%%%===============================================================%%%%%
diff --git a/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-en.sty b/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-en.sty
index 1c868103804..76d358c6273 100644
--- a/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-en.sty
+++ b/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-en.sty
@@ -1,5 +1,5 @@
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{stys/beautybook-cover-en}[2024/06/30,v2.0]
+\ProvidesPackage{stys/beautybook-cover-en}[2024/07/01,v2.0]
\usepackage{anyfontsize} % 提供\fontsize{}{}\selectfont命令
\usepackage{etoolbox} %提供自定义封面选项接口
\usepackage[dvipsnames,svgnames,x11names,table]{xcolor}%颜色宏包 % Driver-independent color extensions
@@ -20,10 +20,66 @@
bottom color =transparent!100,
top color=transparent!50]
\makeatletter
-\newcommand*\makecover{
- %% Use the Tikz library positioning and clear the page header and footer
- \usetikzlibrary{positioning}
- \thispagestyle{empty}
+\newcommand{\aivcover}{
+ \begin{tikzpicture}[remember picture,overlay]
+ \fill[coverfgcolor]
+ (current page.north west) rectangle (current page.south east);% 填充封面背景颜色 (coverbgcolor)
+ \coordinate (start) at ($(current page.east)!0.5!(current page.north east)+(1,-1)$);
+ \coordinate (end) at (current page.north west);
+ \foreach \i in {0,0.01,...,1}
+ {
+ \coordinate (point) at ($(start)!\i!(end)$);
+ \draw[coverfgcolor!50]
+ ($(point)+(310*\i:6)$)--
+ ($(point)+(310*\i+120:6)$)--
+ ($(point)+(310*\i+240:6)$)--
+ ($(point)+(310*\i:6)$);
+ }
+ \coordinate (start) at (current page.south west);
+ \coordinate (end) at (current page.east);
+ \foreach \i in {0,0.02,...,1}
+ {
+ \coordinate (point) at ($(start)!\i!(end)$);
+ \draw[coverfgcolor!50]
+ ($(point)+(310*\i:10)$)--
+ ($(point)+(310*\i+120:10)$)--
+ ($(point)+(310*\i+240:10)$)--
+ ($(point)+(310*\i:10)$);
+ }
+ \shade[bottom color=coverfgcolor,top color=coverfgcolor!70,opacity=0.7]
+ ([xshift=.5\outermarginwidth]current page.north west) rectangle (current page.south east); % 背景大矩形
+ \shade[left color=coverfgcolor,right color=coverfgcolor!60,opacity=0.5]
+ ([xshift=\outermarginwidth,yshift=2\outermarginwidth]current page.west) rectangle (current page.south east); % 标题背景大矩形
+ \fill[coverbar!90,opacity=0.8]
+ ([yshift=2\outermarginwidth]current page.west) rectangle ([xshift=\outermarginwidth,yshift=-.2\outermarginwidth]current page.west); % 最左侧装饰矩形
+ \foreach \lx/\rx/\ry/\bc/\tc in {
+ 1/1.5/1.75/70/80,1.5/2/1.6/65/75,2/2.5/1.3/60/70,2.5/3/1/55/65,3/3.5/.7/50/60,3.5/4/1.2/60/70,4/4.5/1.9/75/85,4.5/5/1.1/55/65,5/5.5/1.2/60/70,6/6.5/1.6/65/75,6.5/7/1.3/60/70,7/7.5/1.87/70/80,7.5/8/1/55/65,8/8.5/.9/50/60,8.5/9/1.8/70/80,9/9.5/1.6/65/75,9.5/10/1.4/60/70,10/10.5/1/55/65,10.5/11/.7/50/60,11/11.5/1.3/55/65,11.5/12/1/70/80,12/12.5/1.3/65/75,12.5/13/1.6/60/70,13/13.5/1.75/55/65,13.5/14/1.6/65/75,14/14.5/1.3/60/70
+ }{
+ \shade[bottom color=coverfgcolor!\bc,top color=coverfgcolor!\tc,opacity=.5]
+ ([xshift=\lx\outermarginwidth]current page.north west) rectangle ([xshift=\rx\outermarginwidth,yshift=-\ry\covershift]current page.north west);%顶部琴键矩形
+ }
+ \node[anchor=south] at ([xshift=.3\outermarginwidth,yshift=-.4\covershift]current page.north) {%
+ \parbox{.8\paperwidth}{
+ \filright
+ \color{white}\sffamily\fontsize{20}{23}\selectfont\@bookseries}
+ }; %系列丛书名称
+ \node[ anchor=south,below right] (covertitles) at ([xshift=1.8\outermarginwidth-0.2cm,yshift=2.7cm]current page.west)
+ {\parbox{.8\paperwidth}{%
+ \raggedright%
+ {\renewcommand\baselinestretch{1.1}\selectfont \color{white}\sffamily\bfseries\fontsize{40}{40}\selectfont\@title\\[0.5ex]
+ \color{white}\sffamily\fontsize{30}{30}\selectfont
+ \ifdefvoid{\@subtitle}{}{\@subtitle}\par}
+ }};% 封面标题与副标题
+ \node[anchor=west,font=\sc\fontsize{23}{23}\selectfont,text=white] at ([shift={(-.4\paperwidth,-6cm)}]covertitles) {\@edition};
+ \node[anchor=west,font=\sffamily\Huge,text=white] at ([xshift=1.8\outermarginwidth-0.3cm,yshift=\covershift]current page.west) {\@author};
+ \node[left,text=white,font=\rmfamily\Large,] at
+ ([shift={(-2cm,2cm)}]current page.south east) %
+ {\raisebox{-0.5cm}{\includegraphics[width=0.1\linewidth]{\@presslogo}}\hspace*{0ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};%
+ \end{tikzpicture}%
+ {\newpage\thispagestyle{empty}}
+}
+
+\newcommand{\lettercover}{
\begin{tikzpicture}[remember picture,overlay]
\fill[coverfgcolor]
(current page.north west) rectangle (current page.south east);% 填充封面背景颜色 (coverbgcolor)
@@ -66,21 +122,27 @@
\filright
\color{white}\sffamily\fontsize{20}{23}\selectfont\@bookseries}
}; %系列丛书名称
- \node[ anchor=south] at ([xshift=.3\outermarginwidth,yshift=-.57\paperheight]current page.north)
+ \node[ anchor=south,below right] (covertitles) at ([xshift=1.8\outermarginwidth-0.2cm,yshift=2.7cm]current page.west)
{\parbox{.8\paperwidth}{%
\raggedright%
{\renewcommand\baselinestretch{1.1}\selectfont \color{white}\sffamily\bfseries\fontsize{40}{40}\selectfont\@title\\[0.5ex]
\color{white}\sffamily\fontsize{30}{30}\selectfont
\ifdefvoid{\@subtitle}{}{\@subtitle}\par}
}};% 封面标题与副标题
- \node[anchor=west,font=\sffamily\fontsize{23}{23}\selectfont,text=white] at ([xshift=1.8\outermarginwidth,yshift=-.6\covershift]current page.west) {\@edition};
- \node[anchor=west,font=\sffamily\Huge,text=white] at ([xshift=1.8\outermarginwidth,yshift=\covershift]current page.west) {\@author};
+ \node[anchor=west,font=\sc\fontsize{23}{23}\selectfont,text=white] at ([shift={(-.4\paperwidth,-6cm)}]covertitles) {\@edition};
+ \node[anchor=west,font=\sffamily\Huge,text=white] at ([xshift=1.8\outermarginwidth-0.3cm,yshift=\covershift]current page.west) {\@author};
\node[left,text=white,font=\rmfamily\Large,] at
- ([shift={(-1cm,2cm)}]current page.south east) %
- {\raisebox{-1.1cm}{\includegraphics[width=0.2\linewidth]{\@presslogo}}\hspace*{-3.5ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};%
+ ([shift={(-2cm,2cm)}]current page.south east) %
+ {\raisebox{-0.5cm}{\includegraphics[width=0.1\linewidth]{\@presslogo}}\hspace*{0ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};%
\end{tikzpicture}%
{\newpage\thispagestyle{empty}}
}
+
+\newcommand\makecover{
+ \thispagestyle{empty}
+ \ifaivpaper@TF{\aivcover}{\lettercover}
+ {\newpage\thispagestyle{empty}}
+}
\makeatother
%%%%===============================================================%%%%%
%%------------------------------------------------------封面设计--------------------------------------------------------%%
diff --git a/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-enfig.sty b/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-enfig.sty
index e84129ddea0..9c24de8b3eb 100644
--- a/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-enfig.sty
+++ b/Master/texmf-dist/tex/latex/beautybook/stys/beautybook-cover-enfig.sty
@@ -1,5 +1,5 @@
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{stys/beautybook-cover-enfig}[2024/06/30,v2.0]
+\ProvidesPackage{stys/beautybook-cover-enfig}[2024/07/01,v2.0]
\tikzfading[name=fade right,
right color =transparent!100,
left color=transparent!0]
@@ -13,10 +13,40 @@
bottom color =transparent!100,
top color=transparent!50]
\makeatletter
-\newcommand*\makecover{
- %% Use the Tikz library positioning and clear the page header and footer
- \usetikzlibrary{positioning}
- \thispagestyle{empty}
+\newcommand{\aivcover}{
+ \begin{tikzpicture}[remember picture,overlay]
+ \begin{pgfonlayer}{bottom}
+ \node[opacity=0.8,inner sep=0pt] at (current
+ page.center){\includegraphics[width=\paperwidth,height=\paperheight]{\@coverimage}};
+ \end{pgfonlayer}
+ \shade[left color=coverbgcolor!70,right color=coverbgcolor!50,path fading=fade right,opacity=.5]
+ ([xshift=.5\outermarginwidth]current page.north west) rectangle ([xshift=4\outermarginwidth]current page.south west); % 背景大矩形虚化
+ \shade[left color=coverfgcolor,right color=coverfgcolor!60,opacity=.8]
+ ([xshift=\outermarginwidth,yshift=2\outermarginwidth]current page.west) rectangle (current page.south east); % 标题背景大矩形
+ \fill[coverbar,opacity=0.8]
+ ([yshift=2\outermarginwidth]current page.west) rectangle ([xshift=\outermarginwidth,yshift=-.2\outermarginwidth]current page.west); % 最左侧装饰矩形
+ \node[anchor=south] at ([xshift=.3\outermarginwidth,yshift=-.4\covershift]current page.north) {%
+ \parbox{.8\paperwidth}{
+ \filright
+ \color{white}\sc\fontsize{20}{23}\selectfont\@bookseries}
+ }; %系列丛书名称
+ \node[ anchor=south,below right] (covertitles) at ([xshift=1.8\outermarginwidth-0.2cm,yshift=2.7cm]current page.west)
+ {\parbox{.8\paperwidth}{%
+ \raggedright%
+ {\renewcommand\baselinestretch{1.1}\selectfont \color{white}\sffamily\bfseries\fontsize{40}{40}\selectfont\@title\\[0.5ex]
+ \color{white}\sc\fontsize{30}{30}\selectfont
+ \ifdefvoid{\@subtitle}{}{\@subtitle}\par}
+ }};% 封面标题与副标题
+ \node[anchor=west,font=\sc\fontsize{23}{23}\selectfont,text=white] at ([shift={(-.4\paperwidth,-6cm)}]covertitles) {\@edition};
+ \node[anchor=west,font=\sffamily\Huge,text=white] at ([xshift=1.8\outermarginwidth-0.3cm,yshift=\covershift]current page.west) {\@author};
+ \node[left,text=white,font=\rmfamily\Large,] at
+ ([shift={(-2cm,2cm)}]current page.south east) %
+ {\raisebox{-0.5cm}{\includegraphics[width=0.1\linewidth]{\@presslogo}}\hspace*{0ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};%
+ \end{tikzpicture}%
+ {\newpage\thispagestyle{empty}}
+}
+
+\newcommand{\lettercover}{
\begin{tikzpicture}[remember picture,overlay]
\begin{pgfonlayer}{bottom}
\node[opacity=0.8,inner sep=0pt] at (current
@@ -33,20 +63,26 @@
\filright
\color{white}\sc\fontsize{20}{23}\selectfont\@bookseries}
}; %系列丛书名称
- \node[ anchor=south] at ([xshift=.3\outermarginwidth,yshift=-.55\paperheight]current page.north)
+ \node[ anchor=south,below right] (covertitles) at ([xshift=1.8\outermarginwidth-0.2cm,yshift=2.7cm]current page.west)
{\parbox{.8\paperwidth}{%
\raggedright%
{\renewcommand\baselinestretch{1.1}\selectfont \color{white}\sffamily\bfseries\fontsize{40}{40}\selectfont\@title\\[0.5ex]
\color{white}\sc\fontsize{30}{30}\selectfont
\ifdefvoid{\@subtitle}{}{\@subtitle}\par}
}};% 封面标题与副标题
- \node[anchor=west,font=\sc\fontsize{23}{23}\selectfont,text=white] at ([xshift=1.8\outermarginwidth,yshift=-.6\covershift]current page.west) {\@edition};
- \node[anchor=west,font=\sffamily\Huge,text=white] at ([xshift=1.8\outermarginwidth,yshift=\covershift]current page.west) {\@author};
+ \node[anchor=west,font=\sc\fontsize{23}{23}\selectfont,text=white] at ([shift={(-.4\paperwidth,-6cm)}]covertitles) {\@edition};
+ \node[anchor=west,font=\sffamily\Huge,text=white] at ([xshift=1.8\outermarginwidth-0.3cm,yshift=\covershift]current page.west) {\@author};
\node[left,text=white,font=\rmfamily\Large,] at
- ([shift={(-1cm,2cm)}]current page.south east) %
- {\raisebox{-1.1cm}{\includegraphics[width=0.2\linewidth]{\@presslogo}}\hspace*{-3.5ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};%
+ ([shift={(-2cm,2cm)}]current page.south east) %
+ {\raisebox{-0.5cm}{\includegraphics[width=0.1\linewidth]{\@presslogo}}\hspace*{0ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};%
\end{tikzpicture}%
{\newpage\thispagestyle{empty}}
}
+
+\newcommand\makecover{
+ \thispagestyle{empty}
+ \ifaivpaper@TF{\aivcover}{\lettercover}
+ {\newpage\thispagestyle{empty}}
+}
\makeatother
\endinput
diff --git a/Master/texmf-dist/tex/latex/berenisadf/berenis.sty b/Master/texmf-dist/tex/latex/berenisadf/berenis.sty
index 7d855d25614..ff3c9d9471c 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/berenis.sty
+++ b/Master/texmf-dist/tex/latex/berenisadf/berenis.sty
@@ -1,161 +1,193 @@
-%% Copyright 2013 Clea F. Rees
-%
-% 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 Clea F. Rees.
-%
-% This work consists of all files listed in manifest.txt.
+%%
+%% This is file `berenis.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `sty')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{berenis}[2013/11/20 v2.0 berenis]
-\RequirePackage{xkeyval}
-\RequirePackage{nfssext-cfr}
-\newif\ifberenis@ly
-%:boolkeys for ligature/swash encoding as default
-\define@boolkey{berenis.sty}[berenis@]{lig}[true]{%
- \ifberenis@lig
- \def\berenis@lig{w}%
- \def\berenis@enc{LY1}%
- \berenis@lytrue
- \else
- \def\berenis@lig{}%
- \berenis@lyfalse
- \fi}
-%:boolkeys for roman osf/lf
-\define@boolkey{berenis.sty}[berenis@]{osf}[true]{%
- \ifberenis@osf
- \def\berenis@lfosf{j}%
- \else
- \def\berenis@lfosf{}%
- \fi}
-\define@boolkey{berenis.sty}[berenis@]{lf}[true]{%
- \ifberenis@lf
- \def\berenis@lfosf{}%
- \else
- \def\berenis@lfosf{j}%
- \fi}
-%:boolkeys for roman prop/tab
-\define@boolkey{berenis.sty}[berenis@]{prop}[true]{%
- \ifberenis@prop
- \def\berenis@tabprop{2}%
- \else
- \def\berenis@tabprop{}%
- \fi}
-\define@boolkey{berenis.sty}[berenis@]{tab}[true]{%
- \ifberenis@tab
- \def\berenis@tabprop{}%
- \else
- \def\berenis@tabprop{2}%
- \fi}
-\define@boolkey{berenis.sty}[berenis@]{lm}[true]{%
- \ifberenis@lm
- \relax
- \else
- \PackageWarning{berenis.sty}{%
- Default sf and tt families will not\MessageBreak
- be changed to Latin Modern.\MessageBreak
- If you use the LY1 font encoding, \MessageBreak
- you should change the defaults\MessageBreak
- yourself since Computer Modern\MessageBreak
- does not support LY1.\MessageBreak}%
- \fi}
-\define@choicekey*+{berenis.sty}{enc}[\benc\bencno]{ly1,t1}{%
- \ifcase\bencno\relax
- \def\berenis@enc{LY1}%
- \berenis@lytrue
- \or
- \def\berenis@enc{T1}%
- \def\berenis@lig{}%
- \berenis@lyfalse
- \fi}{%
- \PackageWarning{berenis.sty}{#1 is not a supported font encoding. Please see the package documentation for details.}%
- }%
-%:defaults to ensure everything is defined to something
-\ExecuteOptionsX{lig=false,osf=true,prop=true,lm=true,enc=ly1}
-%:options override defaults
-\ProcessOptionsX
-\RequirePackage[\berenis@enc]{fontenc}
-%:make BerenisADFPro default roman font, implementing options for ligature/swash encoding and lf/osf as applicable
-\renewcommand{\rmdefault}{ybd\berenis@tabprop\berenis@lfosf\berenis@lig}
-\ifberenis@lm
- \renewcommand{\sfdefault}{lmss}
- \renewcommand{\ttdefault}{lmtt}
-\fi
-\newcommand*{\berenis@rhybudd}[2]{\PackageWarning{berenis.sty}{#1 unavailable.\MessageBreak #2 used instead.\MessageBreak}}%
-%:based on definition of \ss from afm2pl manual page
-\def\zeroslash{%
- \ifberenis@ly
- \setbox0\hbox{\char184}%
- \setbox1\hbox{\char24}%
- \ifnum\wd0=\wd1 \char48\berenis@rhybudd{slashed zero}{zero}\else\ifnum\wd0=0 \char48\berenis@rhybudd{slashed zero}{zero}\else\char184\fi\fi
- \else
- \char48\berenis@rhybudd{slashed zero}{zero}%
- \fi}
-%:experiment: even if this works, it is a horrible kludge
-%\gdef\berenis@ligswash{w}%
-%\def\berenis@Q{ Q}%
-%\def\berenis@get@vff#1#2#3#4\@nil{#1#2#3}%
-%\def\berenis@get@variants ybd#1\@nil{#1}%
-%\def\berenis@cyntaf@variant#1#2\@nil{#1}%
-%\def\berenis@ail@variant#1#2\@nil{#2}%
-%\newcommand*{\berenis@variants}[1]{%
-% \edef\tempz{#1}%
-% \def\tempe{}%
-% \ifx\tempz\tempe
-% \gdef\berenis@olaf{}%
-% \else
-% \edef\tempb{\expandafter\berenis@cyntaf@variant#1 Q\@nil}%
-% \edef\tempc{\expandafter\berenis@ail@variant#1 Q\@nil}%
-% \edef\tempd{\expandafter\berenis@ail@variant#1\@nil}%
-% \ifx\tempc\berenis@Q \gdef\berenis@olaf{\tempb}\else\berenis@variants{\tempd}\fi
-% \fi
-% }
-%\newcommand*{\berenis@teulu}{%
-% \edef\tempf{\expandafter\berenis@get@vff\f@family\@nil}%
-% \def\tempybd{ybd}%
-% \ifx\tempf\tempybd
-% \edef\tempa{\expandafter\berenis@get@variants\f@family\@nil}%
-% \berenis@variants{\tempa}%
-% \else
-% \gdef\berenis@olaf{}%
-% \fi}
-% Get proper tai bach for W, w, Y, y (Ideally would set further stuff but these are the most problematic.
-% In version 1.0, this only worked in the swash variants. In version 2.0, it works for any LY1 encoding.
-% The cost is some of the non-fancy non-standard ligatures and the boundary character in the non-swash variants.
-\ifberenis@ly
- \DeclareTextCompositeCommand{\^}{LY1}{W}{%
-% \berenis@teulu
-% \edef\tempx{\berenis@ligswash}%
-% \edef\tempy{\berenis@olaf}%
-% \ifx\tempx\tempy \char9 \else\accent94\char87\fi
- \char9}
- \DeclareTextCompositeCommand{\^}{LY1}{w}{%
-% \berenis@teulu
-% \edef\tempx{\berenis@ligswash}%
-% \edef\tempy{\berenis@olaf}%
-% \ifx\tempx\tempy \char3 \else\accent94\char119\fi
- \char3}
- \DeclareTextCompositeCommand{\^}{LY1}{Y}{%
-% \berenis@teulu
-% \edef\tempx{\berenis@ligswash}%
-% \edef\tempy{\berenis@olaf}%
-% \ifx\tempx\tempy \char10 \else\accent94\char89\fi
- \char10}
- \DeclareTextCompositeCommand{\^}{LY1}{y}{%
-% \berenis@teulu
-% \edef\tempx{\berenis@ligswash}%
-% \edef\tempy{\berenis@olaf}%
-% \ifx\tempx\tempy \char13 \else\accent94\char121\fi
- \char13}
-\else
- \RequirePackage{textcomp}
-\fi
-\endinput
+\RequirePackage{svn-prov}
+\ProvidesPackageSVN[berenis.sty]{$Id: berenisadf.dtx 10366 2024-09-18 14:25:21Z cfrees $}[v2.1 \revinfo]
+\DefineFileInfoSVN[berenis]
+\RequirePackage{nfssext-cfr}[2024/01/01]
+\ExplSyntaxOn
+\msg_new:nnn { berenis } { unknown-choice }
+{ % name of choice; valid choices; invalid choice given
+ berenis ~::~#1:~\msg_line_context:~#3~is~not~a~supported~font~encoding.~
+ Valid~choices~are~#2.~
+ Please~see~documentation~for~details.
+}
+\msg_new:nnn { berenis } { unavailable }% what; substitute
+{
+ berenis ~::~#1:~\msg_line_context:~#1~unavailable. ~
+ #2~used~instead.
+}
+\keys_define:nn { berenis }
+{
+ enc .choice:,
+ enc .choices:nn = { ly1, LY1, t1, T1 }
+ {
+ \int_case:nn { \l_keys_choice_int }
+ {
+ { 1 } { \tl_gset:Nn \g__berenis_enc_tl { LY1 } }
+ { 2 } { \tl_gset:Nn \g__berenis_enc_tl { LY1 } }
+ { 3 } { \tl_gset:Nn \g__berenis_enc_tl { T1 } }
+ { 4 } { \tl_gset:Nn \g__berenis_enc_tl { T1 } }
+ }
+ },
+ enc / unknown .code:n = {
+ \msg_error:nneee { berenis } { unknown-choice }
+ { enc }
+ { ly1 , LY1 , t1, T1 }
+ { \exp_not:n {#1} }
+ },
+ enc .initial:n = ly1,
+ lig .bool_gset:N = \g__berenis_lig_bool,
+ lig .default:n = true,
+ lig .initial:n = false,
+ lf .bool_gset_inverse:N = \g__berenis_osf_bool,
+ lf .default:n = true,
+ lining .bool_gset_inverse:N = \g__berenis_osf_bool,
+ lining .default:n = true,
+ lm .bool_gset:N = \g__berenis_lm_bool,
+ lm .default:n = true,
+ lm .initial:n = true,
+ osf .bool_gset:N = \g__berenis_osf_bool,
+ osf .default:n = true,
+ osf .initial:n = true,
+ prop .bool_gset:N = \g__berenis_prop_bool,
+ prop .default:n = true,
+ prop .initial:n = true,
+ scale .tl_gset:N = \ybd@scale,
+ scale .initial:V = \@empty,
+ tab .bool_gset_inverse:N = \g__berenis_prop_bool,
+ tab .default:n = true,
+}
+\ProcessKeyOptions[berenis]
+\bool_if:NT \g__berenis_lig_bool
+{
+ \tl_if_eq:NnF \g__berenis_enc_tl { LY1 }
+ {
+ \PackageWarning { berenis } {
+ Setting ~ font ~ encoding ~ to ~ LY1 ~ to ~ accommodate ~ ligatures
+ }
+ \tl_gset:Nn \g__berenis_enc_tl { LY1 }
+ }
+}
+\tl_if_eq:NnT \g__berenis_enc_tl { LY1 }
+{
+ \bool_if:NF \g__berenis_lm_bool
+ {
+ \PackageWarning{berenis.sty}
+ {
+ Default ~ sf ~ and ~ tt ~ families ~ will ~ not\MessageBreak
+ be ~ changed ~ to ~ Latin ~ Modern.\MessageBreak
+ Since ~ Computer ~ Modern ~ does ~ not ~ support ~ LY1,\MessageBreak
+ either ~ use ~ enc=t1 ~ to ~ use ~ T1 ~ or ~ set ~\MessageBreak
+ suitable ~ defaults ~ for ~ sans ~ (`sf') ~ and ~\MessageBreak
+ typewriter ~ (`tt') ~ yourself.\MessageBreak
+ }
+ }
+}
+\tl_new:N \g__berenis_rm_tl
+\tl_new:N \g__berenis_rm_subst_tl
+\tl_gset:Nn \g__berenis_rm_tl {ybd}
+\bool_if:NT \g__berenis_prop_bool
+{
+ \tl_gput_right:Nn \g__berenis_rm_tl {2}
+}
+\bool_if:NT \g__berenis_osf_bool
+{
+ \tl_gput_right:Nn \g__berenis_rm_tl {j}
+}
+\tl_gset_eq:NN \g__berenis_rm_subst_tl \g__berenis_rm_tl
+\bool_if:NT \g__berenis_lig_bool
+{
+ \tl_gput_right:Nn \g__berenis_rm_tl {w}
+}
+\renewcommand{\rmdefault}{\g__berenis_rm_tl}
+\RequirePackage[\g__berenis_enc_tl]{fontenc}
+\tl_if_eq:NnT \g__berenis_enc_tl { LY1 }
+{
+ \DeclareTextCompositeCommand{\^}{LY1}{W}{
+ \char9
+ }
+ \DeclareTextCompositeCommand{\^}{LY1}{w}{
+ \char3
+ }
+ \DeclareTextCompositeCommand{\^}{LY1}{Y}{
+ \char10
+ }
+ \DeclareTextCompositeCommand{\^}{LY1}{y}{
+ \char13
+ }
+}
+\IfFormatAtLeastTF {2020-02-02}{%
+ \DeclareEncodingSubset{TS1}{ybd}{1}%
+ \DeclareEncodingSubset{TS1}{ybd2}{1}%
+ \DeclareEncodingSubset{TS1}{ybd2j}{1}%
+ \DeclareEncodingSubset{TS1}{ybdj}{1}%
+ \DeclareEncodingSubset{TS1}{ybd0}{1}%
+ \DeclareEncodingSubset{TS1}{ybd1}{1}%
+ \DeclareEncodingSubset{TS1}{ybdw}{1}%
+ \DeclareEncodingSubset{TS1}{ybd2w}{1}%
+ \DeclareEncodingSubset{TS1}{ybd2jw}{1}%
+ \DeclareEncodingSubset{TS1}{ybdjw}{1}%
+}{
+ \RequirePackage{textcomp}
+}
+\UndeclareTextCommand{\textperthousand}{T1}
+\bool_if:NT \g__berenis_lm_bool
+{
+ \renewcommand{\sfdefault}{lmss}
+ \renewcommand{\ttdefault}{lmtt}
+}
+\cs_new_nopar:Npn \zeroslash
+{
+ \tl_if_eq:NnTF \g__berenis_enc_tl { LY1 }
+ {
+ \setbox0\hbox{\char184}%
+ \setbox1\hbox{\char24}%
+ \ifnum\wd0=\wd1 \char48
+ \msg_warning:nnnn { berenis } { unavailable }
+ { slashed ~ zero } { zero }
+ \else
+ \ifnum\wd0=0 \char48
+ \msg_warning:nnnn { berenis } { unavailable }
+ { slashed ~ zero } { zero }
+ \else\char184
+ \fi
+ \fi
+ } {
+ \char48
+ \msg_warning:nnnn { berenis } { unavailable }
+ { slashed ~ zero } { zero }
+ }
+}
+\ExplSyntaxOff
%% end berenis.sty
+\endinput
+%%
+%% End of file `berenis.sty'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ly1ybd.fd b/Master/texmf-dist/tex/latex/berenisadf/ly1ybd.fd
index f6a20417d2e..9d91c7709c4 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/ly1ybd.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/ly1ybd.fd
@@ -1,51 +1,87 @@
-%Filename: ly1ybd.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `ly1ybd.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ly1ybd')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ly1ybd.fd}
- [2010/08/24 font definitions for LY1/ybd.]
+ [0000/00/00 font definitions for LY1/ybd.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{LY1}{ybd}{}
\DeclareFontShape{LY1}{ybd}{m}{n}{
- <-> ybdr8y
+ <-> \ybd@@scale ybdr8y
}{}
\DeclareFontShape{LY1}{ybd}{m}{sc}{
- <-> ybdrc8y
+ <-> \ybd@@scale ybdrc8y
}{}
\DeclareFontShape{LY1}{ybd}{m}{it}{
- <-> ybdri8y
+ <-> \ybd@@scale ybdri8y
}{}
-\DeclareFontShape{LY1}{ybd}{m}{si}{
- <-> ybdrci8y
+\DeclareFontShape{LY1}{ybd}{m}{scit}{
+ <-> \ybd@@scale ybdrci8y
}{}
\DeclareFontShape{LY1}{ybd}{b}{n}{
- <-> ybdb8y
+ <-> \ybd@@scale ybdb8y
}{}
\DeclareFontShape{LY1}{ybd}{b}{sc}{
- <-> ybdbc8y
+ <-> \ybd@@scale ybdbc8y
}{}
\DeclareFontShape{LY1}{ybd}{b}{it}{
- <-> ybdbi8y
+ <-> \ybd@@scale ybdbi8y
}{}
-\DeclareFontShape{LY1}{ybd}{b}{si}{
- <-> ybdbci8y
+\DeclareFontShape{LY1}{ybd}{b}{scit}{
+ <-> \ybd@@scale ybdbci8y
}{}
\DeclareFontShape{LY1}{ybd}{m}{sl}{<->ssub * ybd/m/it}{}
+\DeclareFontShape{LY1}{ybd}{m}{si}{<->ssub * ybd/m/scit}{}
\DeclareFontShape{LY1}{ybd}{b}{sl}{<->ssub * ybd/b/it}{}
\DeclareFontShape{LY1}{ybd}{bx}{n}{<->ssub * ybd/b/n}{}
\DeclareFontShape{LY1}{ybd}{bx}{sc}{<->ssub * ybd/b/sc}{}
\DeclareFontShape{LY1}{ybd}{bx}{it}{<->ssub * ybd/b/it}{}
\DeclareFontShape{LY1}{ybd}{bx}{sl}{<->ssub * ybd/b/sl}{}
+\DeclareFontShape{LY1}{ybd}{bx}{scit}{<->ssub * ybd/b/scit}{}
+\DeclareFontShape{LY1}{ybd}{b}{si}{<->ssub * ybd/bx/scit}{}
\DeclareFontShape{LY1}{ybd}{bx}{si}{<->ssub * ybd/b/si}{}
\endinput
+%%
+%% End of file `ly1ybd.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ly1ybd0.fd b/Master/texmf-dist/tex/latex/berenisadf/ly1ybd0.fd
index d76698b5c0e..d51561e6951 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/ly1ybd0.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/ly1ybd0.fd
@@ -1,51 +1,87 @@
-%Filename: ly1ybd0.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `ly1ybd0.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ly1ybd0')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ly1ybd0.fd}
- [2010/08/24 font definitions for LY1/ybd0.]
+ [0000/00/00 font definitions for LY1/ybd0.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{LY1}{ybd0}{}
\DeclareFontShape{LY1}{ybd0}{m}{n}{
- <-> ybdr08y
+ <-> \ybd@@scale ybdr08y
}{}
\DeclareFontShape{LY1}{ybd0}{m}{sc}{
- <-> ybdr0c8y
+ <-> \ybd@@scale ybdr0c8y
}{}
\DeclareFontShape{LY1}{ybd0}{m}{it}{
- <-> ybdr0i8y
+ <-> \ybd@@scale ybdr0i8y
}{}
-\DeclareFontShape{LY1}{ybd0}{m}{si}{
- <-> ybdr0ci8y
+\DeclareFontShape{LY1}{ybd0}{m}{scit}{
+ <-> \ybd@@scale ybdr0ci8y
}{}
\DeclareFontShape{LY1}{ybd0}{b}{n}{
- <-> ybdb08y
+ <-> \ybd@@scale ybdb08y
}{}
\DeclareFontShape{LY1}{ybd0}{b}{sc}{
- <-> ybdb0c8y
+ <-> \ybd@@scale ybdb0c8y
}{}
\DeclareFontShape{LY1}{ybd0}{b}{it}{
- <-> ybdb0i8y
+ <-> \ybd@@scale ybdb0i8y
}{}
-\DeclareFontShape{LY1}{ybd0}{b}{si}{
- <-> ybdb0ci8y
+\DeclareFontShape{LY1}{ybd0}{b}{scit}{
+ <-> \ybd@@scale ybdb0ci8y
}{}
\DeclareFontShape{LY1}{ybd0}{m}{sl}{<->ssub * ybd0/m/it}{}
+\DeclareFontShape{LY1}{ybd0}{m}{si}{<->ssub * ybd0/m/scit}{}
\DeclareFontShape{LY1}{ybd0}{b}{sl}{<->ssub * ybd0/b/it}{}
\DeclareFontShape{LY1}{ybd0}{bx}{n}{<->ssub * ybd0/b/n}{}
\DeclareFontShape{LY1}{ybd0}{bx}{sc}{<->ssub * ybd0/b/sc}{}
\DeclareFontShape{LY1}{ybd0}{bx}{it}{<->ssub * ybd0/b/it}{}
\DeclareFontShape{LY1}{ybd0}{bx}{sl}{<->ssub * ybd0/b/sl}{}
+\DeclareFontShape{LY1}{ybd0}{bx}{scit}{<->ssub * ybd0/b/scit}{}
+\DeclareFontShape{LY1}{ybd0}{b}{si}{<->ssub * ybd0/bx/scit}{}
\DeclareFontShape{LY1}{ybd0}{bx}{si}{<->ssub * ybd0/b/si}{}
\endinput
+%%
+%% End of file `ly1ybd0.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ly1ybd1.fd b/Master/texmf-dist/tex/latex/berenisadf/ly1ybd1.fd
index 3956d456b62..61a43bc974d 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/ly1ybd1.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/ly1ybd1.fd
@@ -1,51 +1,87 @@
-%Filename: ly1ybd1.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `ly1ybd1.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ly1ybd1')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ly1ybd1.fd}
- [2010/08/24 font definitions for LY1/ybd1.]
+ [0000/00/00 font definitions for LY1/ybd1.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{LY1}{ybd1}{}
\DeclareFontShape{LY1}{ybd1}{m}{n}{
- <-> ybdr18y
+ <-> \ybd@@scale ybdr18y
}{}
\DeclareFontShape{LY1}{ybd1}{m}{sc}{
- <-> ybdr1c8y
+ <-> \ybd@@scale ybdr1c8y
}{}
\DeclareFontShape{LY1}{ybd1}{m}{it}{
- <-> ybdr1i8y
+ <-> \ybd@@scale ybdr1i8y
}{}
-\DeclareFontShape{LY1}{ybd1}{m}{si}{
- <-> ybdr1ci8y
+\DeclareFontShape{LY1}{ybd1}{m}{scit}{
+ <-> \ybd@@scale ybdr1ci8y
}{}
\DeclareFontShape{LY1}{ybd1}{b}{n}{
- <-> ybdb18y
+ <-> \ybd@@scale ybdb18y
}{}
\DeclareFontShape{LY1}{ybd1}{b}{sc}{
- <-> ybdb1c8y
+ <-> \ybd@@scale ybdb1c8y
}{}
\DeclareFontShape{LY1}{ybd1}{b}{it}{
- <-> ybdb1i8y
+ <-> \ybd@@scale ybdb1i8y
}{}
-\DeclareFontShape{LY1}{ybd1}{b}{si}{
- <-> ybdb1ci8y
+\DeclareFontShape{LY1}{ybd1}{b}{scit}{
+ <-> \ybd@@scale ybdb1ci8y
}{}
\DeclareFontShape{LY1}{ybd1}{m}{sl}{<->ssub * ybd1/m/it}{}
+\DeclareFontShape{LY1}{ybd1}{m}{si}{<->ssub * ybd1/m/scit}{}
\DeclareFontShape{LY1}{ybd1}{b}{sl}{<->ssub * ybd1/b/it}{}
\DeclareFontShape{LY1}{ybd1}{bx}{n}{<->ssub * ybd1/b/n}{}
\DeclareFontShape{LY1}{ybd1}{bx}{sc}{<->ssub * ybd1/b/sc}{}
\DeclareFontShape{LY1}{ybd1}{bx}{it}{<->ssub * ybd1/b/it}{}
\DeclareFontShape{LY1}{ybd1}{bx}{sl}{<->ssub * ybd1/b/sl}{}
+\DeclareFontShape{LY1}{ybd1}{bx}{scit}{<->ssub * ybd1/b/scit}{}
+\DeclareFontShape{LY1}{ybd1}{b}{si}{<->ssub * ybd1/bx/scit}{}
\DeclareFontShape{LY1}{ybd1}{bx}{si}{<->ssub * ybd1/b/si}{}
\endinput
+%%
+%% End of file `ly1ybd1.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ly1ybd2.fd b/Master/texmf-dist/tex/latex/berenisadf/ly1ybd2.fd
index 37379dee747..59b269cb46e 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/ly1ybd2.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/ly1ybd2.fd
@@ -1,51 +1,87 @@
-%Filename: ly1ybd2.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `ly1ybd2.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ly1ybd2')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ly1ybd2.fd}
- [2010/08/24 font definitions for LY1/ybd2.]
+ [0000/00/00 font definitions for LY1/ybd2.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{LY1}{ybd2}{}
\DeclareFontShape{LY1}{ybd2}{m}{n}{
- <-> ybdr28y
+ <-> \ybd@@scale ybdr28y
}{}
\DeclareFontShape{LY1}{ybd2}{m}{sc}{
- <-> ybdr2c8y
+ <-> \ybd@@scale ybdr2c8y
}{}
\DeclareFontShape{LY1}{ybd2}{m}{it}{
- <-> ybdr2i8y
+ <-> \ybd@@scale ybdr2i8y
}{}
-\DeclareFontShape{LY1}{ybd2}{m}{si}{
- <-> ybdr2ci8y
+\DeclareFontShape{LY1}{ybd2}{m}{scit}{
+ <-> \ybd@@scale ybdr2ci8y
}{}
\DeclareFontShape{LY1}{ybd2}{b}{n}{
- <-> ybdb28y
+ <-> \ybd@@scale ybdb28y
}{}
\DeclareFontShape{LY1}{ybd2}{b}{sc}{
- <-> ybdb2c8y
+ <-> \ybd@@scale ybdb2c8y
}{}
\DeclareFontShape{LY1}{ybd2}{b}{it}{
- <-> ybdb2i8y
+ <-> \ybd@@scale ybdb2i8y
}{}
-\DeclareFontShape{LY1}{ybd2}{b}{si}{
- <-> ybdb2ci8y
+\DeclareFontShape{LY1}{ybd2}{b}{scit}{
+ <-> \ybd@@scale ybdb2ci8y
}{}
\DeclareFontShape{LY1}{ybd2}{m}{sl}{<->ssub * ybd2/m/it}{}
+\DeclareFontShape{LY1}{ybd2}{m}{si}{<->ssub * ybd2/m/scit}{}
\DeclareFontShape{LY1}{ybd2}{b}{sl}{<->ssub * ybd2/b/it}{}
\DeclareFontShape{LY1}{ybd2}{bx}{n}{<->ssub * ybd2/b/n}{}
\DeclareFontShape{LY1}{ybd2}{bx}{sc}{<->ssub * ybd2/b/sc}{}
\DeclareFontShape{LY1}{ybd2}{bx}{it}{<->ssub * ybd2/b/it}{}
\DeclareFontShape{LY1}{ybd2}{bx}{sl}{<->ssub * ybd2/b/sl}{}
+\DeclareFontShape{LY1}{ybd2}{bx}{scit}{<->ssub * ybd2/b/scit}{}
+\DeclareFontShape{LY1}{ybd2}{b}{si}{<->ssub * ybd2/bx/scit}{}
\DeclareFontShape{LY1}{ybd2}{bx}{si}{<->ssub * ybd2/b/si}{}
\endinput
+%%
+%% End of file `ly1ybd2.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ly1ybd2j.fd b/Master/texmf-dist/tex/latex/berenisadf/ly1ybd2j.fd
index 0f24452ef9d..95055b9794d 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/ly1ybd2j.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/ly1ybd2j.fd
@@ -1,51 +1,87 @@
-%Filename: ly1ybd2j.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `ly1ybd2j.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ly1ybd2j')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ly1ybd2j.fd}
- [2010/08/24 font definitions for LY1/ybd2j.]
+ [0000/00/00 font definitions for LY1/ybd2j.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{LY1}{ybd2j}{}
\DeclareFontShape{LY1}{ybd2j}{m}{n}{
- <-> ybdr2j8y
+ <-> \ybd@@scale ybdr2j8y
}{}
\DeclareFontShape{LY1}{ybd2j}{m}{sc}{
- <-> ybdr2cj8y
+ <-> \ybd@@scale ybdr2cj8y
}{}
\DeclareFontShape{LY1}{ybd2j}{m}{it}{
- <-> ybdr2ij8y
+ <-> \ybd@@scale ybdr2ij8y
}{}
-\DeclareFontShape{LY1}{ybd2j}{m}{si}{
- <-> ybdr2cij8y
+\DeclareFontShape{LY1}{ybd2j}{m}{scit}{
+ <-> \ybd@@scale ybdr2cij8y
}{}
\DeclareFontShape{LY1}{ybd2j}{b}{n}{
- <-> ybdb2j8y
+ <-> \ybd@@scale ybdb2j8y
}{}
\DeclareFontShape{LY1}{ybd2j}{b}{sc}{
- <-> ybdb2cj8y
+ <-> \ybd@@scale ybdb2cj8y
}{}
\DeclareFontShape{LY1}{ybd2j}{b}{it}{
- <-> ybdb2ij8y
+ <-> \ybd@@scale ybdb2ij8y
}{}
-\DeclareFontShape{LY1}{ybd2j}{b}{si}{
- <-> ybdb2cij8y
+\DeclareFontShape{LY1}{ybd2j}{b}{scit}{
+ <-> \ybd@@scale ybdb2cij8y
}{}
\DeclareFontShape{LY1}{ybd2j}{m}{sl}{<->ssub * ybd2j/m/it}{}
+\DeclareFontShape{LY1}{ybd2j}{m}{si}{<->ssub * ybd2j/m/scit}{}
\DeclareFontShape{LY1}{ybd2j}{b}{sl}{<->ssub * ybd2j/b/it}{}
\DeclareFontShape{LY1}{ybd2j}{bx}{n}{<->ssub * ybd2j/b/n}{}
\DeclareFontShape{LY1}{ybd2j}{bx}{sc}{<->ssub * ybd2j/b/sc}{}
\DeclareFontShape{LY1}{ybd2j}{bx}{it}{<->ssub * ybd2j/b/it}{}
\DeclareFontShape{LY1}{ybd2j}{bx}{sl}{<->ssub * ybd2j/b/sl}{}
+\DeclareFontShape{LY1}{ybd2j}{bx}{scit}{<->ssub * ybd2j/b/scit}{}
+\DeclareFontShape{LY1}{ybd2j}{b}{si}{<->ssub * ybd2j/bx/scit}{}
\DeclareFontShape{LY1}{ybd2j}{bx}{si}{<->ssub * ybd2j/b/si}{}
\endinput
+%%
+%% End of file `ly1ybd2j.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ly1ybd2jw.fd b/Master/texmf-dist/tex/latex/berenisadf/ly1ybd2jw.fd
index d38e44ea541..4a42481b024 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/ly1ybd2jw.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/ly1ybd2jw.fd
@@ -1,51 +1,87 @@
-%Filename: ly1ybd2jw.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `ly1ybd2jw.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ly1ybd2jw')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ly1ybd2jw.fd}
- [2010/08/24 font definitions for LY1/ybd2jw.]
+ [0000/00/00 font definitions for LY1/ybd2jw.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{LY1}{ybd2jw}{}
\DeclareFontShape{LY1}{ybd2jw}{m}{n}{
- <-> ybdr2jw8y
+ <-> \ybd@@scale ybdr2jw8y
}{}
\DeclareFontShape{LY1}{ybd2jw}{m}{sc}{
- <-> ybdr2cjw8y
+ <-> \ybd@@scale ybdr2cjw8y
}{}
\DeclareFontShape{LY1}{ybd2jw}{m}{it}{
- <-> ybdr2ijw8y
+ <-> \ybd@@scale ybdr2ijw8y
}{}
-\DeclareFontShape{LY1}{ybd2jw}{m}{si}{
- <-> ybdr2cijw8y
+\DeclareFontShape{LY1}{ybd2jw}{m}{scit}{
+ <-> \ybd@@scale ybdr2cijw8y
}{}
\DeclareFontShape{LY1}{ybd2jw}{b}{n}{
- <-> ybdb2jw8y
+ <-> \ybd@@scale ybdb2jw8y
}{}
\DeclareFontShape{LY1}{ybd2jw}{b}{sc}{
- <-> ybdb2cjw8y
+ <-> \ybd@@scale ybdb2cjw8y
}{}
\DeclareFontShape{LY1}{ybd2jw}{b}{it}{
- <-> ybdb2ijw8y
+ <-> \ybd@@scale ybdb2ijw8y
}{}
-\DeclareFontShape{LY1}{ybd2jw}{b}{si}{
- <-> ybdb2cijw8y
+\DeclareFontShape{LY1}{ybd2jw}{b}{scit}{
+ <-> \ybd@@scale ybdb2cijw8y
}{}
\DeclareFontShape{LY1}{ybd2jw}{m}{sl}{<->ssub * ybd2jw/m/it}{}
+\DeclareFontShape{LY1}{ybd2jw}{m}{si}{<->ssub * ybd2jw/m/scit}{}
\DeclareFontShape{LY1}{ybd2jw}{b}{sl}{<->ssub * ybd2jw/b/it}{}
\DeclareFontShape{LY1}{ybd2jw}{bx}{n}{<->ssub * ybd2jw/b/n}{}
\DeclareFontShape{LY1}{ybd2jw}{bx}{sc}{<->ssub * ybd2jw/b/sc}{}
\DeclareFontShape{LY1}{ybd2jw}{bx}{it}{<->ssub * ybd2jw/b/it}{}
\DeclareFontShape{LY1}{ybd2jw}{bx}{sl}{<->ssub * ybd2jw/b/sl}{}
+\DeclareFontShape{LY1}{ybd2jw}{bx}{scit}{<->ssub * ybd2jw/b/scit}{}
+\DeclareFontShape{LY1}{ybd2jw}{b}{si}{<->ssub * ybd2jw/bx/scit}{}
\DeclareFontShape{LY1}{ybd2jw}{bx}{si}{<->ssub * ybd2jw/b/si}{}
\endinput
+%%
+%% End of file `ly1ybd2jw.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ly1ybd2w.fd b/Master/texmf-dist/tex/latex/berenisadf/ly1ybd2w.fd
index 11b0cc7b29f..819f604198f 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/ly1ybd2w.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/ly1ybd2w.fd
@@ -1,51 +1,87 @@
-%Filename: ly1ybd2w.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `ly1ybd2w.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ly1ybd2w')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ly1ybd2w.fd}
- [2010/08/24 font definitions for LY1/ybd2w.]
+ [0000/00/00 font definitions for LY1/ybd2w.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{LY1}{ybd2w}{}
\DeclareFontShape{LY1}{ybd2w}{m}{n}{
- <-> ybdr2w8y
+ <-> \ybd@@scale ybdr2w8y
}{}
\DeclareFontShape{LY1}{ybd2w}{m}{sc}{
- <-> ybdr2cw8y
+ <-> \ybd@@scale ybdr2cw8y
}{}
\DeclareFontShape{LY1}{ybd2w}{m}{it}{
- <-> ybdr2iw8y
+ <-> \ybd@@scale ybdr2iw8y
}{}
-\DeclareFontShape{LY1}{ybd2w}{m}{si}{
- <-> ybdr2ciw8y
+\DeclareFontShape{LY1}{ybd2w}{m}{scit}{
+ <-> \ybd@@scale ybdr2ciw8y
}{}
\DeclareFontShape{LY1}{ybd2w}{b}{n}{
- <-> ybdb2w8y
+ <-> \ybd@@scale ybdb2w8y
}{}
\DeclareFontShape{LY1}{ybd2w}{b}{sc}{
- <-> ybdb2cw8y
+ <-> \ybd@@scale ybdb2cw8y
}{}
\DeclareFontShape{LY1}{ybd2w}{b}{it}{
- <-> ybdb2iw8y
+ <-> \ybd@@scale ybdb2iw8y
}{}
-\DeclareFontShape{LY1}{ybd2w}{b}{si}{
- <-> ybdb2ciw8y
+\DeclareFontShape{LY1}{ybd2w}{b}{scit}{
+ <-> \ybd@@scale ybdb2ciw8y
}{}
\DeclareFontShape{LY1}{ybd2w}{m}{sl}{<->ssub * ybd2w/m/it}{}
+\DeclareFontShape{LY1}{ybd2w}{m}{si}{<->ssub * ybd2w/m/scit}{}
\DeclareFontShape{LY1}{ybd2w}{b}{sl}{<->ssub * ybd2w/b/it}{}
\DeclareFontShape{LY1}{ybd2w}{bx}{n}{<->ssub * ybd2w/b/n}{}
\DeclareFontShape{LY1}{ybd2w}{bx}{sc}{<->ssub * ybd2w/b/sc}{}
\DeclareFontShape{LY1}{ybd2w}{bx}{it}{<->ssub * ybd2w/b/it}{}
\DeclareFontShape{LY1}{ybd2w}{bx}{sl}{<->ssub * ybd2w/b/sl}{}
+\DeclareFontShape{LY1}{ybd2w}{bx}{scit}{<->ssub * ybd2w/b/scit}{}
+\DeclareFontShape{LY1}{ybd2w}{b}{si}{<->ssub * ybd2w/bx/scit}{}
\DeclareFontShape{LY1}{ybd2w}{bx}{si}{<->ssub * ybd2w/b/si}{}
\endinput
+%%
+%% End of file `ly1ybd2w.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ly1ybdj.fd b/Master/texmf-dist/tex/latex/berenisadf/ly1ybdj.fd
index 30a0923cc3f..d5ec5a6e695 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/ly1ybdj.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/ly1ybdj.fd
@@ -1,51 +1,87 @@
-%Filename: ly1ybdj.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `ly1ybdj.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ly1ybdj')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ly1ybdj.fd}
- [2010/08/24 font definitions for LY1/ybdj.]
+ [0000/00/00 font definitions for LY1/ybdj.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{LY1}{ybdj}{}
\DeclareFontShape{LY1}{ybdj}{m}{n}{
- <-> ybdrj8y
+ <-> \ybd@@scale ybdrj8y
}{}
\DeclareFontShape{LY1}{ybdj}{m}{sc}{
- <-> ybdrcj8y
+ <-> \ybd@@scale ybdrcj8y
}{}
\DeclareFontShape{LY1}{ybdj}{m}{it}{
- <-> ybdrij8y
+ <-> \ybd@@scale ybdrij8y
}{}
-\DeclareFontShape{LY1}{ybdj}{m}{si}{
- <-> ybdrcij8y
+\DeclareFontShape{LY1}{ybdj}{m}{scit}{
+ <-> \ybd@@scale ybdrcij8y
}{}
\DeclareFontShape{LY1}{ybdj}{b}{n}{
- <-> ybdbj8y
+ <-> \ybd@@scale ybdbj8y
}{}
\DeclareFontShape{LY1}{ybdj}{b}{sc}{
- <-> ybdbcj8y
+ <-> \ybd@@scale ybdbcj8y
}{}
\DeclareFontShape{LY1}{ybdj}{b}{it}{
- <-> ybdbij8y
+ <-> \ybd@@scale ybdbij8y
}{}
-\DeclareFontShape{LY1}{ybdj}{b}{si}{
- <-> ybdbcij8y
+\DeclareFontShape{LY1}{ybdj}{b}{scit}{
+ <-> \ybd@@scale ybdbcij8y
}{}
\DeclareFontShape{LY1}{ybdj}{m}{sl}{<->ssub * ybdj/m/it}{}
+\DeclareFontShape{LY1}{ybdj}{m}{si}{<->ssub * ybdj/m/scit}{}
\DeclareFontShape{LY1}{ybdj}{b}{sl}{<->ssub * ybdj/b/it}{}
\DeclareFontShape{LY1}{ybdj}{bx}{n}{<->ssub * ybdj/b/n}{}
\DeclareFontShape{LY1}{ybdj}{bx}{sc}{<->ssub * ybdj/b/sc}{}
\DeclareFontShape{LY1}{ybdj}{bx}{it}{<->ssub * ybdj/b/it}{}
\DeclareFontShape{LY1}{ybdj}{bx}{sl}{<->ssub * ybdj/b/sl}{}
+\DeclareFontShape{LY1}{ybdj}{bx}{scit}{<->ssub * ybdj/b/scit}{}
+\DeclareFontShape{LY1}{ybdj}{b}{si}{<->ssub * ybdj/bx/scit}{}
\DeclareFontShape{LY1}{ybdj}{bx}{si}{<->ssub * ybdj/b/si}{}
\endinput
+%%
+%% End of file `ly1ybdj.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ly1ybdjw.fd b/Master/texmf-dist/tex/latex/berenisadf/ly1ybdjw.fd
index 5a929471838..0f7567f9f29 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/ly1ybdjw.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/ly1ybdjw.fd
@@ -1,51 +1,87 @@
-%Filename: ly1ybdjw.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `ly1ybdjw.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ly1ybdjw')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ly1ybdjw.fd}
- [2010/08/24 font definitions for LY1/ybdjw.]
+ [0000/00/00 font definitions for LY1/ybdjw.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{LY1}{ybdjw}{}
\DeclareFontShape{LY1}{ybdjw}{m}{n}{
- <-> ybdrjw8y
+ <-> \ybd@@scale ybdrjw8y
}{}
\DeclareFontShape{LY1}{ybdjw}{m}{sc}{
- <-> ybdrcjw8y
+ <-> \ybd@@scale ybdrcjw8y
}{}
\DeclareFontShape{LY1}{ybdjw}{m}{it}{
- <-> ybdrijw8y
+ <-> \ybd@@scale ybdrijw8y
}{}
-\DeclareFontShape{LY1}{ybdjw}{m}{si}{
- <-> ybdrcijw8y
+\DeclareFontShape{LY1}{ybdjw}{m}{scit}{
+ <-> \ybd@@scale ybdrcijw8y
}{}
\DeclareFontShape{LY1}{ybdjw}{b}{n}{
- <-> ybdbjw8y
+ <-> \ybd@@scale ybdbjw8y
}{}
\DeclareFontShape{LY1}{ybdjw}{b}{sc}{
- <-> ybdbcjw8y
+ <-> \ybd@@scale ybdbcjw8y
}{}
\DeclareFontShape{LY1}{ybdjw}{b}{it}{
- <-> ybdbijw8y
+ <-> \ybd@@scale ybdbijw8y
}{}
-\DeclareFontShape{LY1}{ybdjw}{b}{si}{
- <-> ybdbcijw8y
+\DeclareFontShape{LY1}{ybdjw}{b}{scit}{
+ <-> \ybd@@scale ybdbcijw8y
}{}
\DeclareFontShape{LY1}{ybdjw}{m}{sl}{<->ssub * ybdjw/m/it}{}
+\DeclareFontShape{LY1}{ybdjw}{m}{si}{<->ssub * ybdjw/m/scit}{}
\DeclareFontShape{LY1}{ybdjw}{b}{sl}{<->ssub * ybdjw/b/it}{}
\DeclareFontShape{LY1}{ybdjw}{bx}{n}{<->ssub * ybdjw/b/n}{}
\DeclareFontShape{LY1}{ybdjw}{bx}{sc}{<->ssub * ybdjw/b/sc}{}
\DeclareFontShape{LY1}{ybdjw}{bx}{it}{<->ssub * ybdjw/b/it}{}
\DeclareFontShape{LY1}{ybdjw}{bx}{sl}{<->ssub * ybdjw/b/sl}{}
+\DeclareFontShape{LY1}{ybdjw}{bx}{scit}{<->ssub * ybdjw/b/scit}{}
+\DeclareFontShape{LY1}{ybdjw}{b}{si}{<->ssub * ybdjw/bx/scit}{}
\DeclareFontShape{LY1}{ybdjw}{bx}{si}{<->ssub * ybdjw/b/si}{}
\endinput
+%%
+%% End of file `ly1ybdjw.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ly1ybdw.fd b/Master/texmf-dist/tex/latex/berenisadf/ly1ybdw.fd
index b82f92ca173..fb8b7b41ac9 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/ly1ybdw.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/ly1ybdw.fd
@@ -1,51 +1,87 @@
-%Filename: ly1ybdw.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `ly1ybdw.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ly1ybdw')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ly1ybdw.fd}
- [2010/08/24 font definitions for LY1/ybdw.]
+ [0000/00/00 font definitions for LY1/ybdw.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{LY1}{ybdw}{}
\DeclareFontShape{LY1}{ybdw}{m}{n}{
- <-> ybdrw8y
+ <-> \ybd@@scale ybdrw8y
}{}
\DeclareFontShape{LY1}{ybdw}{m}{sc}{
- <-> ybdrcw8y
+ <-> \ybd@@scale ybdrcw8y
}{}
\DeclareFontShape{LY1}{ybdw}{m}{it}{
- <-> ybdriw8y
+ <-> \ybd@@scale ybdriw8y
}{}
-\DeclareFontShape{LY1}{ybdw}{m}{si}{
- <-> ybdrciw8y
+\DeclareFontShape{LY1}{ybdw}{m}{scit}{
+ <-> \ybd@@scale ybdrciw8y
}{}
\DeclareFontShape{LY1}{ybdw}{b}{n}{
- <-> ybdbw8y
+ <-> \ybd@@scale ybdbw8y
}{}
\DeclareFontShape{LY1}{ybdw}{b}{sc}{
- <-> ybdbcw8y
+ <-> \ybd@@scale ybdbcw8y
}{}
\DeclareFontShape{LY1}{ybdw}{b}{it}{
- <-> ybdbiw8y
+ <-> \ybd@@scale ybdbiw8y
}{}
-\DeclareFontShape{LY1}{ybdw}{b}{si}{
- <-> ybdbciw8y
+\DeclareFontShape{LY1}{ybdw}{b}{scit}{
+ <-> \ybd@@scale ybdbciw8y
}{}
\DeclareFontShape{LY1}{ybdw}{m}{sl}{<->ssub * ybdw/m/it}{}
+\DeclareFontShape{LY1}{ybdw}{m}{si}{<->ssub * ybdw/m/scit}{}
\DeclareFontShape{LY1}{ybdw}{b}{sl}{<->ssub * ybdw/b/it}{}
\DeclareFontShape{LY1}{ybdw}{bx}{n}{<->ssub * ybdw/b/n}{}
\DeclareFontShape{LY1}{ybdw}{bx}{sc}{<->ssub * ybdw/b/sc}{}
\DeclareFontShape{LY1}{ybdw}{bx}{it}{<->ssub * ybdw/b/it}{}
\DeclareFontShape{LY1}{ybdw}{bx}{sl}{<->ssub * ybdw/b/sl}{}
+\DeclareFontShape{LY1}{ybdw}{bx}{scit}{<->ssub * ybdw/b/scit}{}
+\DeclareFontShape{LY1}{ybdw}{b}{si}{<->ssub * ybdw/bx/scit}{}
\DeclareFontShape{LY1}{ybdw}{bx}{si}{<->ssub * ybdw/b/si}{}
\endinput
+%%
+%% End of file `ly1ybdw.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/t1ybd.fd b/Master/texmf-dist/tex/latex/berenisadf/t1ybd.fd
index 64f0b0e11bc..394494ca04d 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/t1ybd.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/t1ybd.fd
@@ -1,51 +1,87 @@
-%Filename: t1ybd.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `t1ybd.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-t1ybd')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1ybd.fd}
- [2013/11/19 font definitions for T1/ybd.]
+ [0000/00/00 font definitions for T1/ybd.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{T1}{ybd}{}
\DeclareFontShape{T1}{ybd}{m}{n}{
- <-> ybdr8t
+ <-> \ybd@@scale ybdr8t
}{}
\DeclareFontShape{T1}{ybd}{m}{sc}{
- <-> ybdrc8t
+ <-> \ybd@@scale ybdrc8t
}{}
\DeclareFontShape{T1}{ybd}{m}{it}{
- <-> ybdri8t
+ <-> \ybd@@scale ybdri8t
}{}
-\DeclareFontShape{T1}{ybd}{m}{si}{
- <-> ybdrci8t
+\DeclareFontShape{T1}{ybd}{m}{scit}{
+ <-> \ybd@@scale ybdrci8t
}{}
\DeclareFontShape{T1}{ybd}{b}{n}{
- <-> ybdb8t
+ <-> \ybd@@scale ybdb8t
}{}
\DeclareFontShape{T1}{ybd}{b}{sc}{
- <-> ybdbc8t
+ <-> \ybd@@scale ybdbc8t
}{}
\DeclareFontShape{T1}{ybd}{b}{it}{
- <-> ybdbi8t
+ <-> \ybd@@scale ybdbi8t
}{}
-\DeclareFontShape{T1}{ybd}{b}{si}{
- <-> ybdbci8t
+\DeclareFontShape{T1}{ybd}{b}{scit}{
+ <-> \ybd@@scale ybdbci8t
}{}
\DeclareFontShape{T1}{ybd}{m}{sl}{<->ssub * ybd/m/it}{}
+\DeclareFontShape{T1}{ybd}{m}{si}{<->ssub * ybd/m/scit}{}
\DeclareFontShape{T1}{ybd}{b}{sl}{<->ssub * ybd/b/it}{}
\DeclareFontShape{T1}{ybd}{bx}{n}{<->ssub * ybd/b/n}{}
\DeclareFontShape{T1}{ybd}{bx}{sc}{<->ssub * ybd/b/sc}{}
\DeclareFontShape{T1}{ybd}{bx}{it}{<->ssub * ybd/b/it}{}
\DeclareFontShape{T1}{ybd}{bx}{sl}{<->ssub * ybd/b/sl}{}
+\DeclareFontShape{T1}{ybd}{bx}{scit}{<->ssub * ybd/b/scit}{}
+\DeclareFontShape{T1}{ybd}{b}{si}{<->ssub * ybd/bx/scit}{}
\DeclareFontShape{T1}{ybd}{bx}{si}{<->ssub * ybd/b/si}{}
\endinput
+%%
+%% End of file `t1ybd.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/t1ybd0.fd b/Master/texmf-dist/tex/latex/berenisadf/t1ybd0.fd
index c4ca425f095..fd86727863d 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/t1ybd0.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/t1ybd0.fd
@@ -1,51 +1,87 @@
-%Filename: t1ybd0.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `t1ybd0.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-t1ybd0')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1ybd0.fd}
- [2013/11/19 font definitions for T1/ybd0.]
+ [0000/00/00 font definitions for T1/ybd0.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{T1}{ybd0}{}
\DeclareFontShape{T1}{ybd0}{m}{n}{
- <-> ybdr08t
+ <-> \ybd@@scale ybdr08t
}{}
\DeclareFontShape{T1}{ybd0}{m}{sc}{
- <-> ybdr0c8t
+ <-> \ybd@@scale ybdr0c8t
}{}
\DeclareFontShape{T1}{ybd0}{m}{it}{
- <-> ybdr0i8t
+ <-> \ybd@@scale ybdr0i8t
}{}
-\DeclareFontShape{T1}{ybd0}{m}{si}{
- <-> ybdr0ci8t
+\DeclareFontShape{T1}{ybd0}{m}{scit}{
+ <-> \ybd@@scale ybdr0ci8t
}{}
\DeclareFontShape{T1}{ybd0}{b}{n}{
- <-> ybdb08t
+ <-> \ybd@@scale ybdb08t
}{}
\DeclareFontShape{T1}{ybd0}{b}{sc}{
- <-> ybdb0c8t
+ <-> \ybd@@scale ybdb0c8t
}{}
\DeclareFontShape{T1}{ybd0}{b}{it}{
- <-> ybdb0i8t
+ <-> \ybd@@scale ybdb0i8t
}{}
-\DeclareFontShape{T1}{ybd0}{b}{si}{
- <-> ybdb0ci8t
+\DeclareFontShape{T1}{ybd0}{b}{scit}{
+ <-> \ybd@@scale ybdb0ci8t
}{}
\DeclareFontShape{T1}{ybd0}{m}{sl}{<->ssub * ybd0/m/it}{}
+\DeclareFontShape{T1}{ybd0}{m}{si}{<->ssub * ybd0/m/scit}{}
\DeclareFontShape{T1}{ybd0}{b}{sl}{<->ssub * ybd0/b/it}{}
\DeclareFontShape{T1}{ybd0}{bx}{n}{<->ssub * ybd0/b/n}{}
\DeclareFontShape{T1}{ybd0}{bx}{sc}{<->ssub * ybd0/b/sc}{}
\DeclareFontShape{T1}{ybd0}{bx}{it}{<->ssub * ybd0/b/it}{}
\DeclareFontShape{T1}{ybd0}{bx}{sl}{<->ssub * ybd0/b/sl}{}
+\DeclareFontShape{T1}{ybd0}{bx}{scit}{<->ssub * ybd0/b/scit}{}
+\DeclareFontShape{T1}{ybd0}{b}{si}{<->ssub * ybd0/bx/scit}{}
\DeclareFontShape{T1}{ybd0}{bx}{si}{<->ssub * ybd0/b/si}{}
\endinput
+%%
+%% End of file `t1ybd0.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/t1ybd1.fd b/Master/texmf-dist/tex/latex/berenisadf/t1ybd1.fd
index 4514d02586a..fdd304490d5 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/t1ybd1.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/t1ybd1.fd
@@ -1,51 +1,87 @@
-%Filename: t1ybd1.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `t1ybd1.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-t1ybd1')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1ybd1.fd}
- [2013/11/19 font definitions for T1/ybd1.]
+ [0000/00/00 font definitions for T1/ybd1.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{T1}{ybd1}{}
\DeclareFontShape{T1}{ybd1}{m}{n}{
- <-> ybdr18t
+ <-> \ybd@@scale ybdr18t
}{}
\DeclareFontShape{T1}{ybd1}{m}{sc}{
- <-> ybdr1c8t
+ <-> \ybd@@scale ybdr1c8t
}{}
\DeclareFontShape{T1}{ybd1}{m}{it}{
- <-> ybdr1i8t
+ <-> \ybd@@scale ybdr1i8t
}{}
-\DeclareFontShape{T1}{ybd1}{m}{si}{
- <-> ybdr1ci8t
+\DeclareFontShape{T1}{ybd1}{m}{scit}{
+ <-> \ybd@@scale ybdr1ci8t
}{}
\DeclareFontShape{T1}{ybd1}{b}{n}{
- <-> ybdb18t
+ <-> \ybd@@scale ybdb18t
}{}
\DeclareFontShape{T1}{ybd1}{b}{sc}{
- <-> ybdb1c8t
+ <-> \ybd@@scale ybdb1c8t
}{}
\DeclareFontShape{T1}{ybd1}{b}{it}{
- <-> ybdb1i8t
+ <-> \ybd@@scale ybdb1i8t
}{}
-\DeclareFontShape{T1}{ybd1}{b}{si}{
- <-> ybdb1ci8t
+\DeclareFontShape{T1}{ybd1}{b}{scit}{
+ <-> \ybd@@scale ybdb1ci8t
}{}
\DeclareFontShape{T1}{ybd1}{m}{sl}{<->ssub * ybd1/m/it}{}
+\DeclareFontShape{T1}{ybd1}{m}{si}{<->ssub * ybd1/m/scit}{}
\DeclareFontShape{T1}{ybd1}{b}{sl}{<->ssub * ybd1/b/it}{}
\DeclareFontShape{T1}{ybd1}{bx}{n}{<->ssub * ybd1/b/n}{}
\DeclareFontShape{T1}{ybd1}{bx}{sc}{<->ssub * ybd1/b/sc}{}
\DeclareFontShape{T1}{ybd1}{bx}{it}{<->ssub * ybd1/b/it}{}
\DeclareFontShape{T1}{ybd1}{bx}{sl}{<->ssub * ybd1/b/sl}{}
+\DeclareFontShape{T1}{ybd1}{bx}{scit}{<->ssub * ybd1/b/scit}{}
+\DeclareFontShape{T1}{ybd1}{b}{si}{<->ssub * ybd1/bx/scit}{}
\DeclareFontShape{T1}{ybd1}{bx}{si}{<->ssub * ybd1/b/si}{}
\endinput
+%%
+%% End of file `t1ybd1.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/t1ybd2.fd b/Master/texmf-dist/tex/latex/berenisadf/t1ybd2.fd
index 0c8f4b5c6cd..b1dc0d01d1d 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/t1ybd2.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/t1ybd2.fd
@@ -1,51 +1,87 @@
-%Filename: t1ybd2.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `t1ybd2.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-t1ybd2')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1ybd2.fd}
- [2013/11/19 font definitions for T1/ybd2.]
+ [0000/00/00 font definitions for T1/ybd2.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{T1}{ybd2}{}
\DeclareFontShape{T1}{ybd2}{m}{n}{
- <-> ybdr28t
+ <-> \ybd@@scale ybdr28t
}{}
\DeclareFontShape{T1}{ybd2}{m}{sc}{
- <-> ybdr2c8t
+ <-> \ybd@@scale ybdr2c8t
}{}
\DeclareFontShape{T1}{ybd2}{m}{it}{
- <-> ybdr2i8t
+ <-> \ybd@@scale ybdr2i8t
}{}
-\DeclareFontShape{T1}{ybd2}{m}{si}{
- <-> ybdr2ci8t
+\DeclareFontShape{T1}{ybd2}{m}{scit}{
+ <-> \ybd@@scale ybdr2ci8t
}{}
\DeclareFontShape{T1}{ybd2}{b}{n}{
- <-> ybdb28t
+ <-> \ybd@@scale ybdb28t
}{}
\DeclareFontShape{T1}{ybd2}{b}{sc}{
- <-> ybdb2c8t
+ <-> \ybd@@scale ybdb2c8t
}{}
\DeclareFontShape{T1}{ybd2}{b}{it}{
- <-> ybdb2i8t
+ <-> \ybd@@scale ybdb2i8t
}{}
-\DeclareFontShape{T1}{ybd2}{b}{si}{
- <-> ybdb2ci8t
+\DeclareFontShape{T1}{ybd2}{b}{scit}{
+ <-> \ybd@@scale ybdb2ci8t
}{}
\DeclareFontShape{T1}{ybd2}{m}{sl}{<->ssub * ybd2/m/it}{}
+\DeclareFontShape{T1}{ybd2}{m}{si}{<->ssub * ybd2/m/scit}{}
\DeclareFontShape{T1}{ybd2}{b}{sl}{<->ssub * ybd2/b/it}{}
\DeclareFontShape{T1}{ybd2}{bx}{n}{<->ssub * ybd2/b/n}{}
\DeclareFontShape{T1}{ybd2}{bx}{sc}{<->ssub * ybd2/b/sc}{}
\DeclareFontShape{T1}{ybd2}{bx}{it}{<->ssub * ybd2/b/it}{}
\DeclareFontShape{T1}{ybd2}{bx}{sl}{<->ssub * ybd2/b/sl}{}
+\DeclareFontShape{T1}{ybd2}{bx}{scit}{<->ssub * ybd2/b/scit}{}
+\DeclareFontShape{T1}{ybd2}{b}{si}{<->ssub * ybd2/bx/scit}{}
\DeclareFontShape{T1}{ybd2}{bx}{si}{<->ssub * ybd2/b/si}{}
\endinput
+%%
+%% End of file `t1ybd2.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/t1ybd2j.fd b/Master/texmf-dist/tex/latex/berenisadf/t1ybd2j.fd
index 5a98d8c8174..ceee1fac453 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/t1ybd2j.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/t1ybd2j.fd
@@ -1,51 +1,87 @@
-%Filename: t1ybd2j.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `t1ybd2j.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-t1ybd2j')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1ybd2j.fd}
- [2013/11/19 font definitions for T1/ybd2j.]
+ [0000/00/00 font definitions for T1/ybd2j.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{T1}{ybd2j}{}
\DeclareFontShape{T1}{ybd2j}{m}{n}{
- <-> ybdr2j8t
+ <-> \ybd@@scale ybdr2j8t
}{}
\DeclareFontShape{T1}{ybd2j}{m}{sc}{
- <-> ybdr2cj8t
+ <-> \ybd@@scale ybdr2cj8t
}{}
\DeclareFontShape{T1}{ybd2j}{m}{it}{
- <-> ybdr2ij8t
+ <-> \ybd@@scale ybdr2ij8t
}{}
-\DeclareFontShape{T1}{ybd2j}{m}{si}{
- <-> ybdr2cij8t
+\DeclareFontShape{T1}{ybd2j}{m}{scit}{
+ <-> \ybd@@scale ybdr2cij8t
}{}
\DeclareFontShape{T1}{ybd2j}{b}{n}{
- <-> ybdb2j8t
+ <-> \ybd@@scale ybdb2j8t
}{}
\DeclareFontShape{T1}{ybd2j}{b}{sc}{
- <-> ybdb2cj8t
+ <-> \ybd@@scale ybdb2cj8t
}{}
\DeclareFontShape{T1}{ybd2j}{b}{it}{
- <-> ybdb2ij8t
+ <-> \ybd@@scale ybdb2ij8t
}{}
-\DeclareFontShape{T1}{ybd2j}{b}{si}{
- <-> ybdb2cij8t
+\DeclareFontShape{T1}{ybd2j}{b}{scit}{
+ <-> \ybd@@scale ybdb2cij8t
}{}
\DeclareFontShape{T1}{ybd2j}{m}{sl}{<->ssub * ybd2j/m/it}{}
+\DeclareFontShape{T1}{ybd2j}{m}{si}{<->ssub * ybd2j/m/scit}{}
\DeclareFontShape{T1}{ybd2j}{b}{sl}{<->ssub * ybd2j/b/it}{}
\DeclareFontShape{T1}{ybd2j}{bx}{n}{<->ssub * ybd2j/b/n}{}
\DeclareFontShape{T1}{ybd2j}{bx}{sc}{<->ssub * ybd2j/b/sc}{}
\DeclareFontShape{T1}{ybd2j}{bx}{it}{<->ssub * ybd2j/b/it}{}
\DeclareFontShape{T1}{ybd2j}{bx}{sl}{<->ssub * ybd2j/b/sl}{}
+\DeclareFontShape{T1}{ybd2j}{bx}{scit}{<->ssub * ybd2j/b/scit}{}
+\DeclareFontShape{T1}{ybd2j}{b}{si}{<->ssub * ybd2j/bx/scit}{}
\DeclareFontShape{T1}{ybd2j}{bx}{si}{<->ssub * ybd2j/b/si}{}
\endinput
+%%
+%% End of file `t1ybd2j.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/t1ybdj.fd b/Master/texmf-dist/tex/latex/berenisadf/t1ybdj.fd
index 79d85a74d3b..177587fcc0e 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/t1ybdj.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/t1ybdj.fd
@@ -1,51 +1,87 @@
-%Filename: t1ybdj.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `t1ybdj.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-t1ybdj')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1ybdj.fd}
- [2013/11/19 font definitions for T1/ybdj.]
+ [0000/00/00 font definitions for T1/ybdj.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{T1}{ybdj}{}
\DeclareFontShape{T1}{ybdj}{m}{n}{
- <-> ybdrj8t
+ <-> \ybd@@scale ybdrj8t
}{}
\DeclareFontShape{T1}{ybdj}{m}{sc}{
- <-> ybdrcj8t
+ <-> \ybd@@scale ybdrcj8t
}{}
\DeclareFontShape{T1}{ybdj}{m}{it}{
- <-> ybdrij8t
+ <-> \ybd@@scale ybdrij8t
}{}
-\DeclareFontShape{T1}{ybdj}{m}{si}{
- <-> ybdrcij8t
+\DeclareFontShape{T1}{ybdj}{m}{scit}{
+ <-> \ybd@@scale ybdrcij8t
}{}
\DeclareFontShape{T1}{ybdj}{b}{n}{
- <-> ybdbj8t
+ <-> \ybd@@scale ybdbj8t
}{}
\DeclareFontShape{T1}{ybdj}{b}{sc}{
- <-> ybdbcj8t
+ <-> \ybd@@scale ybdbcj8t
}{}
\DeclareFontShape{T1}{ybdj}{b}{it}{
- <-> ybdbij8t
+ <-> \ybd@@scale ybdbij8t
}{}
-\DeclareFontShape{T1}{ybdj}{b}{si}{
- <-> ybdbcij8t
+\DeclareFontShape{T1}{ybdj}{b}{scit}{
+ <-> \ybd@@scale ybdbcij8t
}{}
\DeclareFontShape{T1}{ybdj}{m}{sl}{<->ssub * ybdj/m/it}{}
+\DeclareFontShape{T1}{ybdj}{m}{si}{<->ssub * ybdj/m/scit}{}
\DeclareFontShape{T1}{ybdj}{b}{sl}{<->ssub * ybdj/b/it}{}
\DeclareFontShape{T1}{ybdj}{bx}{n}{<->ssub * ybdj/b/n}{}
\DeclareFontShape{T1}{ybdj}{bx}{sc}{<->ssub * ybdj/b/sc}{}
\DeclareFontShape{T1}{ybdj}{bx}{it}{<->ssub * ybdj/b/it}{}
\DeclareFontShape{T1}{ybdj}{bx}{sl}{<->ssub * ybdj/b/sl}{}
+\DeclareFontShape{T1}{ybdj}{bx}{scit}{<->ssub * ybdj/b/scit}{}
+\DeclareFontShape{T1}{ybdj}{b}{si}{<->ssub * ybdj/bx/scit}{}
\DeclareFontShape{T1}{ybdj}{bx}{si}{<->ssub * ybdj/b/si}{}
\endinput
+%%
+%% End of file `t1ybdj.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ts1ybd.fd b/Master/texmf-dist/tex/latex/berenisadf/ts1ybd.fd
index 98b8ae9b482..96ab3f0f514 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/ts1ybd.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/ts1ybd.fd
@@ -1,51 +1,87 @@
-%Filename: ts1ybd.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `ts1ybd.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ts1ybd')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1ybd.fd}
- [2013/11/19 font definitions for TS1/ybd.]
+ [0000/00/00 font definitions for TS1/ybd.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{TS1}{ybd}{}
\DeclareFontShape{TS1}{ybd}{m}{n}{
- <-> ybdr8c
+ <-> \ybd@@scale ybdr8c
}{}
\DeclareFontShape{TS1}{ybd}{m}{sc}{
- <-> ybdrc8c
+ <-> \ybd@@scale ybdrc8c
}{}
\DeclareFontShape{TS1}{ybd}{m}{it}{
- <-> ybdri8c
+ <-> \ybd@@scale ybdri8c
}{}
-\DeclareFontShape{TS1}{ybd}{m}{si}{
- <-> ybdrci8c
+\DeclareFontShape{TS1}{ybd}{m}{scit}{
+ <-> \ybd@@scale ybdrci8c
}{}
\DeclareFontShape{TS1}{ybd}{b}{n}{
- <-> ybdb8c
+ <-> \ybd@@scale ybdb8c
}{}
\DeclareFontShape{TS1}{ybd}{b}{sc}{
- <-> ybdbc8c
+ <-> \ybd@@scale ybdbc8c
}{}
\DeclareFontShape{TS1}{ybd}{b}{it}{
- <-> ybdbi8c
+ <-> \ybd@@scale ybdbi8c
}{}
-\DeclareFontShape{TS1}{ybd}{b}{si}{
- <-> ybdbci8c
+\DeclareFontShape{TS1}{ybd}{b}{scit}{
+ <-> \ybd@@scale ybdbci8c
}{}
\DeclareFontShape{TS1}{ybd}{m}{sl}{<->ssub * ybd/m/it}{}
+\DeclareFontShape{TS1}{ybd}{m}{si}{<->ssub * ybd/m/scit}{}
\DeclareFontShape{TS1}{ybd}{b}{sl}{<->ssub * ybd/b/it}{}
\DeclareFontShape{TS1}{ybd}{bx}{n}{<->ssub * ybd/b/n}{}
\DeclareFontShape{TS1}{ybd}{bx}{sc}{<->ssub * ybd/b/sc}{}
\DeclareFontShape{TS1}{ybd}{bx}{it}{<->ssub * ybd/b/it}{}
\DeclareFontShape{TS1}{ybd}{bx}{sl}{<->ssub * ybd/b/sl}{}
+\DeclareFontShape{TS1}{ybd}{bx}{scit}{<->ssub * ybd/b/scit}{}
+\DeclareFontShape{TS1}{ybd}{b}{si}{<->ssub * ybd/bx/scit}{}
\DeclareFontShape{TS1}{ybd}{bx}{si}{<->ssub * ybd/b/si}{}
\endinput
+%%
+%% End of file `ts1ybd.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ts1ybd0.fd b/Master/texmf-dist/tex/latex/berenisadf/ts1ybd0.fd
index 9ccca6262a5..1fd2b97178a 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/ts1ybd0.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/ts1ybd0.fd
@@ -1,51 +1,87 @@
-%Filename: ts1ybd0.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `ts1ybd0.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ts1ybd0')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1ybd0.fd}
- [2013/11/19 font definitions for TS1/ybd0.]
+ [0000/00/00 font definitions for TS1/ybd0.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{TS1}{ybd0}{}
\DeclareFontShape{TS1}{ybd0}{m}{n}{
- <-> ybdr08c
+ <-> \ybd@@scale ybdr08c
}{}
\DeclareFontShape{TS1}{ybd0}{m}{sc}{
- <-> ybdr0c8c
+ <-> \ybd@@scale ybdr0c8c
}{}
\DeclareFontShape{TS1}{ybd0}{m}{it}{
- <-> ybdr0i8c
+ <-> \ybd@@scale ybdr0i8c
}{}
-\DeclareFontShape{TS1}{ybd0}{m}{si}{
- <-> ybdr0ci8c
+\DeclareFontShape{TS1}{ybd0}{m}{scit}{
+ <-> \ybd@@scale ybdr0ci8c
}{}
\DeclareFontShape{TS1}{ybd0}{b}{n}{
- <-> ybdb08c
+ <-> \ybd@@scale ybdb08c
}{}
\DeclareFontShape{TS1}{ybd0}{b}{sc}{
- <-> ybdb0c8c
+ <-> \ybd@@scale ybdb0c8c
}{}
\DeclareFontShape{TS1}{ybd0}{b}{it}{
- <-> ybdb0i8c
+ <-> \ybd@@scale ybdb0i8c
}{}
-\DeclareFontShape{TS1}{ybd0}{b}{si}{
- <-> ybdb0ci8c
+\DeclareFontShape{TS1}{ybd0}{b}{scit}{
+ <-> \ybd@@scale ybdb0ci8c
}{}
\DeclareFontShape{TS1}{ybd0}{m}{sl}{<->ssub * ybd0/m/it}{}
+\DeclareFontShape{TS1}{ybd0}{m}{si}{<->ssub * ybd0/m/scit}{}
\DeclareFontShape{TS1}{ybd0}{b}{sl}{<->ssub * ybd0/b/it}{}
\DeclareFontShape{TS1}{ybd0}{bx}{n}{<->ssub * ybd0/b/n}{}
\DeclareFontShape{TS1}{ybd0}{bx}{sc}{<->ssub * ybd0/b/sc}{}
\DeclareFontShape{TS1}{ybd0}{bx}{it}{<->ssub * ybd0/b/it}{}
\DeclareFontShape{TS1}{ybd0}{bx}{sl}{<->ssub * ybd0/b/sl}{}
+\DeclareFontShape{TS1}{ybd0}{bx}{scit}{<->ssub * ybd0/b/scit}{}
+\DeclareFontShape{TS1}{ybd0}{b}{si}{<->ssub * ybd0/bx/scit}{}
\DeclareFontShape{TS1}{ybd0}{bx}{si}{<->ssub * ybd0/b/si}{}
\endinput
+%%
+%% End of file `ts1ybd0.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ts1ybd1.fd b/Master/texmf-dist/tex/latex/berenisadf/ts1ybd1.fd
index dc2fff6a1d5..fd7cc35deaf 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/ts1ybd1.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/ts1ybd1.fd
@@ -1,51 +1,87 @@
-%Filename: ts1ybd1.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `ts1ybd1.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ts1ybd1')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1ybd1.fd}
- [2013/11/19 font definitions for TS1/ybd1.]
+ [0000/00/00 font definitions for TS1/ybd1.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{TS1}{ybd1}{}
\DeclareFontShape{TS1}{ybd1}{m}{n}{
- <-> ybdr18c
+ <-> \ybd@@scale ybdr18c
}{}
\DeclareFontShape{TS1}{ybd1}{m}{sc}{
- <-> ybdr1c8c
+ <-> \ybd@@scale ybdr1c8c
}{}
\DeclareFontShape{TS1}{ybd1}{m}{it}{
- <-> ybdr1i8c
+ <-> \ybd@@scale ybdr1i8c
}{}
-\DeclareFontShape{TS1}{ybd1}{m}{si}{
- <-> ybdr1ci8c
+\DeclareFontShape{TS1}{ybd1}{m}{scit}{
+ <-> \ybd@@scale ybdr1ci8c
}{}
\DeclareFontShape{TS1}{ybd1}{b}{n}{
- <-> ybdb18c
+ <-> \ybd@@scale ybdb18c
}{}
\DeclareFontShape{TS1}{ybd1}{b}{sc}{
- <-> ybdb1c8c
+ <-> \ybd@@scale ybdb1c8c
}{}
\DeclareFontShape{TS1}{ybd1}{b}{it}{
- <-> ybdb1i8c
+ <-> \ybd@@scale ybdb1i8c
}{}
-\DeclareFontShape{TS1}{ybd1}{b}{si}{
- <-> ybdb1ci8c
+\DeclareFontShape{TS1}{ybd1}{b}{scit}{
+ <-> \ybd@@scale ybdb1ci8c
}{}
\DeclareFontShape{TS1}{ybd1}{m}{sl}{<->ssub * ybd1/m/it}{}
+\DeclareFontShape{TS1}{ybd1}{m}{si}{<->ssub * ybd1/m/scit}{}
\DeclareFontShape{TS1}{ybd1}{b}{sl}{<->ssub * ybd1/b/it}{}
\DeclareFontShape{TS1}{ybd1}{bx}{n}{<->ssub * ybd1/b/n}{}
\DeclareFontShape{TS1}{ybd1}{bx}{sc}{<->ssub * ybd1/b/sc}{}
\DeclareFontShape{TS1}{ybd1}{bx}{it}{<->ssub * ybd1/b/it}{}
\DeclareFontShape{TS1}{ybd1}{bx}{sl}{<->ssub * ybd1/b/sl}{}
+\DeclareFontShape{TS1}{ybd1}{bx}{scit}{<->ssub * ybd1/b/scit}{}
+\DeclareFontShape{TS1}{ybd1}{b}{si}{<->ssub * ybd1/bx/scit}{}
\DeclareFontShape{TS1}{ybd1}{bx}{si}{<->ssub * ybd1/b/si}{}
\endinput
+%%
+%% End of file `ts1ybd1.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ts1ybd2.fd b/Master/texmf-dist/tex/latex/berenisadf/ts1ybd2.fd
index be30aed66e0..046e1f0438d 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/ts1ybd2.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/ts1ybd2.fd
@@ -1,51 +1,87 @@
-%Filename: ts1ybd2.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `ts1ybd2.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ts1ybd2')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1ybd2.fd}
- [2013/11/19 font definitions for TS1/ybd2.]
+ [0000/00/00 font definitions for TS1/ybd2.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{TS1}{ybd2}{}
\DeclareFontShape{TS1}{ybd2}{m}{n}{
- <-> ybdr28c
+ <-> \ybd@@scale ybdr28c
}{}
\DeclareFontShape{TS1}{ybd2}{m}{sc}{
- <-> ybdr2c8c
+ <-> \ybd@@scale ybdr2c8c
}{}
\DeclareFontShape{TS1}{ybd2}{m}{it}{
- <-> ybdr2i8c
+ <-> \ybd@@scale ybdr2i8c
}{}
-\DeclareFontShape{TS1}{ybd2}{m}{si}{
- <-> ybdr2ci8c
+\DeclareFontShape{TS1}{ybd2}{m}{scit}{
+ <-> \ybd@@scale ybdr2ci8c
}{}
\DeclareFontShape{TS1}{ybd2}{b}{n}{
- <-> ybdb28c
+ <-> \ybd@@scale ybdb28c
}{}
\DeclareFontShape{TS1}{ybd2}{b}{sc}{
- <-> ybdb2c8c
+ <-> \ybd@@scale ybdb2c8c
}{}
\DeclareFontShape{TS1}{ybd2}{b}{it}{
- <-> ybdb2i8c
+ <-> \ybd@@scale ybdb2i8c
}{}
-\DeclareFontShape{TS1}{ybd2}{b}{si}{
- <-> ybdb2ci8c
+\DeclareFontShape{TS1}{ybd2}{b}{scit}{
+ <-> \ybd@@scale ybdb2ci8c
}{}
\DeclareFontShape{TS1}{ybd2}{m}{sl}{<->ssub * ybd2/m/it}{}
+\DeclareFontShape{TS1}{ybd2}{m}{si}{<->ssub * ybd2/m/scit}{}
\DeclareFontShape{TS1}{ybd2}{b}{sl}{<->ssub * ybd2/b/it}{}
\DeclareFontShape{TS1}{ybd2}{bx}{n}{<->ssub * ybd2/b/n}{}
\DeclareFontShape{TS1}{ybd2}{bx}{sc}{<->ssub * ybd2/b/sc}{}
\DeclareFontShape{TS1}{ybd2}{bx}{it}{<->ssub * ybd2/b/it}{}
\DeclareFontShape{TS1}{ybd2}{bx}{sl}{<->ssub * ybd2/b/sl}{}
+\DeclareFontShape{TS1}{ybd2}{bx}{scit}{<->ssub * ybd2/b/scit}{}
+\DeclareFontShape{TS1}{ybd2}{b}{si}{<->ssub * ybd2/bx/scit}{}
\DeclareFontShape{TS1}{ybd2}{bx}{si}{<->ssub * ybd2/b/si}{}
\endinput
+%%
+%% End of file `ts1ybd2.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ts1ybd2j.fd b/Master/texmf-dist/tex/latex/berenisadf/ts1ybd2j.fd
index 8bade82ba42..361a597cc9d 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/ts1ybd2j.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/ts1ybd2j.fd
@@ -1,51 +1,87 @@
-%Filename: ts1ybd2j.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `ts1ybd2j.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ts1ybd2j')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1ybd2j.fd}
- [2013/11/19 font definitions for TS1/ybd2j.]
+ [0000/00/00 font definitions for TS1/ybd2j.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{TS1}{ybd2j}{}
\DeclareFontShape{TS1}{ybd2j}{m}{n}{
- <-> ybdr2j8c
+ <-> \ybd@@scale ybdr2j8c
}{}
\DeclareFontShape{TS1}{ybd2j}{m}{sc}{
- <-> ybdr2cj8c
+ <-> \ybd@@scale ybdr2cj8c
}{}
\DeclareFontShape{TS1}{ybd2j}{m}{it}{
- <-> ybdr2ij8c
+ <-> \ybd@@scale ybdr2ij8c
}{}
-\DeclareFontShape{TS1}{ybd2j}{m}{si}{
- <-> ybdr2cij8c
+\DeclareFontShape{TS1}{ybd2j}{m}{scit}{
+ <-> \ybd@@scale ybdr2cij8c
}{}
\DeclareFontShape{TS1}{ybd2j}{b}{n}{
- <-> ybdb2j8c
+ <-> \ybd@@scale ybdb2j8c
}{}
\DeclareFontShape{TS1}{ybd2j}{b}{sc}{
- <-> ybdb2cj8c
+ <-> \ybd@@scale ybdb2cj8c
}{}
\DeclareFontShape{TS1}{ybd2j}{b}{it}{
- <-> ybdb2ij8c
+ <-> \ybd@@scale ybdb2ij8c
}{}
-\DeclareFontShape{TS1}{ybd2j}{b}{si}{
- <-> ybdb2cij8c
+\DeclareFontShape{TS1}{ybd2j}{b}{scit}{
+ <-> \ybd@@scale ybdb2cij8c
}{}
\DeclareFontShape{TS1}{ybd2j}{m}{sl}{<->ssub * ybd2j/m/it}{}
+\DeclareFontShape{TS1}{ybd2j}{m}{si}{<->ssub * ybd2j/m/scit}{}
\DeclareFontShape{TS1}{ybd2j}{b}{sl}{<->ssub * ybd2j/b/it}{}
\DeclareFontShape{TS1}{ybd2j}{bx}{n}{<->ssub * ybd2j/b/n}{}
\DeclareFontShape{TS1}{ybd2j}{bx}{sc}{<->ssub * ybd2j/b/sc}{}
\DeclareFontShape{TS1}{ybd2j}{bx}{it}{<->ssub * ybd2j/b/it}{}
\DeclareFontShape{TS1}{ybd2j}{bx}{sl}{<->ssub * ybd2j/b/sl}{}
+\DeclareFontShape{TS1}{ybd2j}{bx}{scit}{<->ssub * ybd2j/b/scit}{}
+\DeclareFontShape{TS1}{ybd2j}{b}{si}{<->ssub * ybd2j/bx/scit}{}
\DeclareFontShape{TS1}{ybd2j}{bx}{si}{<->ssub * ybd2j/b/si}{}
\endinput
+%%
+%% End of file `ts1ybd2j.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ts1ybd2jw.fd b/Master/texmf-dist/tex/latex/berenisadf/ts1ybd2jw.fd
new file mode 100644
index 00000000000..9c652412cb0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/berenisadf/ts1ybd2jw.fd
@@ -0,0 +1,87 @@
+%%
+%% This is file `ts1ybd2jw.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ts1ybd2j')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
+
+
+\ProvidesFile{ts1ybd2jw.fd}
+ [0000/00/00 font definitions for TS1/ybd2jw.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
+
+\DeclareFontFamily{TS1}{ybd2jw}{}
+
+\DeclareFontShape{TS1}{ybd2jw}{m}{n}{
+ <-> \ybd@@scale ybdr2j8c
+}{}
+
+\DeclareFontShape{TS1}{ybd2jw}{m}{sc}{
+ <-> \ybd@@scale ybdr2cj8c
+}{}
+
+\DeclareFontShape{TS1}{ybd2jw}{m}{it}{
+ <-> \ybd@@scale ybdr2ij8c
+}{}
+
+\DeclareFontShape{TS1}{ybd2jw}{m}{scit}{
+ <-> \ybd@@scale ybdr2cij8c
+}{}
+
+\DeclareFontShape{TS1}{ybd2jw}{b}{n}{
+ <-> \ybd@@scale ybdb2j8c
+}{}
+
+\DeclareFontShape{TS1}{ybd2jw}{b}{sc}{
+ <-> \ybd@@scale ybdb2cj8c
+}{}
+
+\DeclareFontShape{TS1}{ybd2jw}{b}{it}{
+ <-> \ybd@@scale ybdb2ij8c
+}{}
+
+\DeclareFontShape{TS1}{ybd2jw}{b}{scit}{
+ <-> \ybd@@scale ybdb2cij8c
+}{}
+
+\DeclareFontShape{TS1}{ybd2jw}{m}{sl}{<->ssub * ybd2j/m/it}{}
+\DeclareFontShape{TS1}{ybd2jw}{m}{si}{<->ssub * ybd2j/m/scit}{}
+\DeclareFontShape{TS1}{ybd2jw}{b}{sl}{<->ssub * ybd2j/b/it}{}
+\DeclareFontShape{TS1}{ybd2jw}{bx}{n}{<->ssub * ybd2j/b/n}{}
+\DeclareFontShape{TS1}{ybd2jw}{bx}{sc}{<->ssub * ybd2j/b/sc}{}
+\DeclareFontShape{TS1}{ybd2jw}{bx}{it}{<->ssub * ybd2j/b/it}{}
+\DeclareFontShape{TS1}{ybd2jw}{bx}{sl}{<->ssub * ybd2j/b/sl}{}
+\DeclareFontShape{TS1}{ybd2jw}{bx}{scit}{<->ssub * ybd2j/b/scit}{}
+\DeclareFontShape{TS1}{ybd2jw}{b}{si}{<->ssub * ybd2j/bx/scit}{}
+\DeclareFontShape{TS1}{ybd2jw}{bx}{si}{<->ssub * ybd2j/b/si}{}
+
+\endinput
+%%
+%% End of file `ts1ybd2jw.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ts1ybd2w.fd b/Master/texmf-dist/tex/latex/berenisadf/ts1ybd2w.fd
new file mode 100644
index 00000000000..872ca9465ad
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/berenisadf/ts1ybd2w.fd
@@ -0,0 +1,87 @@
+%%
+%% This is file `ts1ybd2w.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ts1ybd2')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
+
+
+\ProvidesFile{ts1ybd2w.fd}
+ [0000/00/00 font definitions for TS1/ybd2w.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
+
+\DeclareFontFamily{TS1}{ybd2w}{}
+
+\DeclareFontShape{TS1}{ybd2w}{m}{n}{
+ <-> \ybd@@scale ybdr28c
+}{}
+
+\DeclareFontShape{TS1}{ybd2w}{m}{sc}{
+ <-> \ybd@@scale ybdr2c8c
+}{}
+
+\DeclareFontShape{TS1}{ybd2w}{m}{it}{
+ <-> \ybd@@scale ybdr2i8c
+}{}
+
+\DeclareFontShape{TS1}{ybd2w}{m}{scit}{
+ <-> \ybd@@scale ybdr2ci8c
+}{}
+
+\DeclareFontShape{TS1}{ybd2w}{b}{n}{
+ <-> \ybd@@scale ybdb28c
+}{}
+
+\DeclareFontShape{TS1}{ybd2w}{b}{sc}{
+ <-> \ybd@@scale ybdb2c8c
+}{}
+
+\DeclareFontShape{TS1}{ybd2w}{b}{it}{
+ <-> \ybd@@scale ybdb2i8c
+}{}
+
+\DeclareFontShape{TS1}{ybd2w}{b}{scit}{
+ <-> \ybd@@scale ybdb2ci8c
+}{}
+
+\DeclareFontShape{TS1}{ybd2w}{m}{sl}{<->ssub * ybd2/m/it}{}
+\DeclareFontShape{TS1}{ybd2w}{m}{si}{<->ssub * ybd2/m/scit}{}
+\DeclareFontShape{TS1}{ybd2w}{b}{sl}{<->ssub * ybd2/b/it}{}
+\DeclareFontShape{TS1}{ybd2w}{bx}{n}{<->ssub * ybd2/b/n}{}
+\DeclareFontShape{TS1}{ybd2w}{bx}{sc}{<->ssub * ybd2/b/sc}{}
+\DeclareFontShape{TS1}{ybd2w}{bx}{it}{<->ssub * ybd2/b/it}{}
+\DeclareFontShape{TS1}{ybd2w}{bx}{sl}{<->ssub * ybd2/b/sl}{}
+\DeclareFontShape{TS1}{ybd2w}{bx}{scit}{<->ssub * ybd2/b/scit}{}
+\DeclareFontShape{TS1}{ybd2w}{b}{si}{<->ssub * ybd2/bx/scit}{}
+\DeclareFontShape{TS1}{ybd2w}{bx}{si}{<->ssub * ybd2/b/si}{}
+
+\endinput
+%%
+%% End of file `ts1ybd2w.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ts1ybdj.fd b/Master/texmf-dist/tex/latex/berenisadf/ts1ybdj.fd
index e41025fc2cc..0f896e26da4 100644
--- a/Master/texmf-dist/tex/latex/berenisadf/ts1ybdj.fd
+++ b/Master/texmf-dist/tex/latex/berenisadf/ts1ybdj.fd
@@ -1,51 +1,87 @@
-%Filename: ts1ybdj.fd
-%Based on a file created using fontinst v1.928
+%%
+%% This is file `ts1ybdj.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ts1ybdj')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1ybdj.fd}
- [2013/11/19 font definitions for TS1/ybdj.]
+ [0000/00/00 font definitions for TS1/ybdj.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
\DeclareFontFamily{TS1}{ybdj}{}
\DeclareFontShape{TS1}{ybdj}{m}{n}{
- <-> ybdrj8c
+ <-> \ybd@@scale ybdrj8c
}{}
\DeclareFontShape{TS1}{ybdj}{m}{sc}{
- <-> ybdrcj8c
+ <-> \ybd@@scale ybdrcj8c
}{}
\DeclareFontShape{TS1}{ybdj}{m}{it}{
- <-> ybdrij8c
+ <-> \ybd@@scale ybdrij8c
}{}
-\DeclareFontShape{TS1}{ybdj}{m}{si}{
- <-> ybdrcij8c
+\DeclareFontShape{TS1}{ybdj}{m}{scit}{
+ <-> \ybd@@scale ybdrcij8c
}{}
\DeclareFontShape{TS1}{ybdj}{b}{n}{
- <-> ybdbj8c
+ <-> \ybd@@scale ybdbj8c
}{}
\DeclareFontShape{TS1}{ybdj}{b}{sc}{
- <-> ybdbcj8c
+ <-> \ybd@@scale ybdbcj8c
}{}
\DeclareFontShape{TS1}{ybdj}{b}{it}{
- <-> ybdbij8c
+ <-> \ybd@@scale ybdbij8c
}{}
-\DeclareFontShape{TS1}{ybdj}{b}{si}{
- <-> ybdbcij8c
+\DeclareFontShape{TS1}{ybdj}{b}{scit}{
+ <-> \ybd@@scale ybdbcij8c
}{}
\DeclareFontShape{TS1}{ybdj}{m}{sl}{<->ssub * ybdj/m/it}{}
+\DeclareFontShape{TS1}{ybdj}{m}{si}{<->ssub * ybdj/m/scit}{}
\DeclareFontShape{TS1}{ybdj}{b}{sl}{<->ssub * ybdj/b/it}{}
\DeclareFontShape{TS1}{ybdj}{bx}{n}{<->ssub * ybdj/b/n}{}
\DeclareFontShape{TS1}{ybdj}{bx}{sc}{<->ssub * ybdj/b/sc}{}
\DeclareFontShape{TS1}{ybdj}{bx}{it}{<->ssub * ybdj/b/it}{}
\DeclareFontShape{TS1}{ybdj}{bx}{sl}{<->ssub * ybdj/b/sl}{}
+\DeclareFontShape{TS1}{ybdj}{bx}{scit}{<->ssub * ybdj/b/scit}{}
+\DeclareFontShape{TS1}{ybdj}{b}{si}{<->ssub * ybdj/bx/scit}{}
\DeclareFontShape{TS1}{ybdj}{bx}{si}{<->ssub * ybdj/b/si}{}
\endinput
+%%
+%% End of file `ts1ybdj.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ts1ybdjw.fd b/Master/texmf-dist/tex/latex/berenisadf/ts1ybdjw.fd
new file mode 100644
index 00000000000..1b253001756
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/berenisadf/ts1ybdjw.fd
@@ -0,0 +1,87 @@
+%%
+%% This is file `ts1ybdjw.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ts1ybdj')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
+
+
+\ProvidesFile{ts1ybdjw.fd}
+ [0000/00/00 font definitions for TS1/ybdjw.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
+
+\DeclareFontFamily{TS1}{ybdjw}{}
+
+\DeclareFontShape{TS1}{ybdjw}{m}{n}{
+ <-> \ybd@@scale ybdrj8c
+}{}
+
+\DeclareFontShape{TS1}{ybdjw}{m}{sc}{
+ <-> \ybd@@scale ybdrcj8c
+}{}
+
+\DeclareFontShape{TS1}{ybdjw}{m}{it}{
+ <-> \ybd@@scale ybdrij8c
+}{}
+
+\DeclareFontShape{TS1}{ybdjw}{m}{scit}{
+ <-> \ybd@@scale ybdrcij8c
+}{}
+
+\DeclareFontShape{TS1}{ybdjw}{b}{n}{
+ <-> \ybd@@scale ybdbj8c
+}{}
+
+\DeclareFontShape{TS1}{ybdjw}{b}{sc}{
+ <-> \ybd@@scale ybdbcj8c
+}{}
+
+\DeclareFontShape{TS1}{ybdjw}{b}{it}{
+ <-> \ybd@@scale ybdbij8c
+}{}
+
+\DeclareFontShape{TS1}{ybdjw}{b}{scit}{
+ <-> \ybd@@scale ybdbcij8c
+}{}
+
+\DeclareFontShape{TS1}{ybdjw}{m}{sl}{<->ssub * ybdj/m/it}{}
+\DeclareFontShape{TS1}{ybdjw}{m}{si}{<->ssub * ybdj/m/scit}{}
+\DeclareFontShape{TS1}{ybdjw}{b}{sl}{<->ssub * ybdj/b/it}{}
+\DeclareFontShape{TS1}{ybdjw}{bx}{n}{<->ssub * ybdj/b/n}{}
+\DeclareFontShape{TS1}{ybdjw}{bx}{sc}{<->ssub * ybdj/b/sc}{}
+\DeclareFontShape{TS1}{ybdjw}{bx}{it}{<->ssub * ybdj/b/it}{}
+\DeclareFontShape{TS1}{ybdjw}{bx}{sl}{<->ssub * ybdj/b/sl}{}
+\DeclareFontShape{TS1}{ybdjw}{bx}{scit}{<->ssub * ybdj/b/scit}{}
+\DeclareFontShape{TS1}{ybdjw}{b}{si}{<->ssub * ybdj/bx/scit}{}
+\DeclareFontShape{TS1}{ybdjw}{bx}{si}{<->ssub * ybdj/b/si}{}
+
+\endinput
+%%
+%% End of file `ts1ybdjw.fd'.
diff --git a/Master/texmf-dist/tex/latex/berenisadf/ts1ybdw.fd b/Master/texmf-dist/tex/latex/berenisadf/ts1ybdw.fd
new file mode 100644
index 00000000000..c1c5777e688
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/berenisadf/ts1ybdw.fd
@@ -0,0 +1,87 @@
+%%
+%% This is file `ts1ybdw.fd',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% berenisadf.dtx (with options: `fd-ts1ybd')
+%%
+%% -------------------------------------------------
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% berenisadf. You may however distribute the package berenisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%% -------------------------------------------------
+
+
+\ProvidesFile{ts1ybdw.fd}
+ [0000/00/00 font definitions for TS1/ybdw.]
+ \expandafter\ifx\csname ybd@scale\endcsname\relax
+ \let\ybd@@scale\@empty
+ \else
+ \edef\ybd@@scale{s*[\csname ybd@scale\endcsname]}%
+ \fi
+
+\DeclareFontFamily{TS1}{ybdw}{}
+
+\DeclareFontShape{TS1}{ybdw}{m}{n}{
+ <-> \ybd@@scale ybdr8c
+}{}
+
+\DeclareFontShape{TS1}{ybdw}{m}{sc}{
+ <-> \ybd@@scale ybdrc8c
+}{}
+
+\DeclareFontShape{TS1}{ybdw}{m}{it}{
+ <-> \ybd@@scale ybdri8c
+}{}
+
+\DeclareFontShape{TS1}{ybdw}{m}{scit}{
+ <-> \ybd@@scale ybdrci8c
+}{}
+
+\DeclareFontShape{TS1}{ybdw}{b}{n}{
+ <-> \ybd@@scale ybdb8c
+}{}
+
+\DeclareFontShape{TS1}{ybdw}{b}{sc}{
+ <-> \ybd@@scale ybdbc8c
+}{}
+
+\DeclareFontShape{TS1}{ybdw}{b}{it}{
+ <-> \ybd@@scale ybdbi8c
+}{}
+
+\DeclareFontShape{TS1}{ybdw}{b}{scit}{
+ <-> \ybd@@scale ybdbci8c
+}{}
+
+\DeclareFontShape{TS1}{ybdw}{m}{sl}{<->ssub * ybd/m/it}{}
+\DeclareFontShape{TS1}{ybdw}{m}{si}{<->ssub * ybd/m/scit}{}
+\DeclareFontShape{TS1}{ybdw}{b}{sl}{<->ssub * ybd/b/it}{}
+\DeclareFontShape{TS1}{ybdw}{bx}{n}{<->ssub * ybd/b/n}{}
+\DeclareFontShape{TS1}{ybdw}{bx}{sc}{<->ssub * ybd/b/sc}{}
+\DeclareFontShape{TS1}{ybdw}{bx}{it}{<->ssub * ybd/b/it}{}
+\DeclareFontShape{TS1}{ybdw}{bx}{sl}{<->ssub * ybd/b/sl}{}
+\DeclareFontShape{TS1}{ybdw}{bx}{scit}{<->ssub * ybd/b/scit}{}
+\DeclareFontShape{TS1}{ybdw}{b}{si}{<->ssub * ybd/bx/scit}{}
+\DeclareFontShape{TS1}{ybdw}{bx}{si}{<->ssub * ybd/b/si}{}
+
+\endinput
+%%
+%% End of file `ts1ybdw.fd'.
diff --git a/Master/texmf-dist/tex/latex/bib2qr/bib2qr.sty b/Master/texmf-dist/tex/latex/bib2qr/bib2qr.sty
new file mode 100644
index 00000000000..093c38dba6d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/bib2qr/bib2qr.sty
@@ -0,0 +1,107 @@
+%%
+%% This is file `bib2qr.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% bib2qr.dtx (with options: `package')
+%%
+%% Copyright (C) 2024 Christian Schreinemachers
+%%
+%% This work may be distributed and/or modified under the conditions
+%% of the LaTeX Project Public License, either version 1.3c of this
+%% license or (at your option) any later version. The latest version
+%% of this license is in
+%%
+%% http://www.latex-project.org/lppl.txt
+%%
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The current maintainer of this work is
+%% Christian Schreinemachers.
+%%
+%% This work consists of the files
+%% bib2qr.dtx
+%% bib2qr.ins
+%% and the derived files
+%% bib2qr.sty
+%% bib2qr.pdf
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{bib2qr}
+ [2024-07-31 v0.2 Cite BibTeX entries with QR codes]
+\RequirePackage{biblatex}
+\RequirePackage{ifthen}
+\RequirePackage{qrcode}
+\RequirePackage{xstring}
+\DeclareKeys[@bibiiqr]{
+ doiurlbase.store = \@bibiiqr@doiurlbase,
+ doiurlbase.usage = load,
+ qrdelimiter.store = \@bibiiqr@qrdelimiter,
+ qrdelimiter.usage = load,
+ qrversion.store = \@bibiiqr@qrversion,
+ qrversion.usage = load,
+ qrwidth.store = \@bibiiqr@qrwidth,
+ qrwidth.usage = load,
+}%
+\SetKeys[@bibiiqr]{
+ doiurlbase=https://doi.org/,
+ qrdelimiter=\space,
+ qrversion=0,
+ qrwidth=2cm,
+}%
+\ProcessKeyOptions[@bibiiqr]\relax
+\newcommand\@bibiiqr@showqr[1]{%
+ \qrcode[height=\@bibiiqr@qrwidth,version=\@bibiiqr@qrversion]{#1}%
+}%
+\DeclareFieldFormat{@bibiiqr@fldFmtDoi}{%
+ \IfBeginWith{#1}{\@bibiiqr@doiurlbase}%
+ {\@bibiiqr@showqr{#1}}%
+ {\@bibiiqr@showqr{\@bibiiqr@doiurlbase#1}}%
+}%
+\DeclareFieldFormat{@bibiiqr@fldFmtUrl}{\@bibiiqr@showqr{#1}}
+\DeclareBibliographyDriver{@bibiiqr@bibDrvQR}{%
+ \usebibmacro{begentry}%
+ \ifboolexpr{test{\iffieldundef{doi}}}
+ {%
+ \ifboolexpr{test{\iffieldundef{url}}}%
+ {%
+ \PackageWarning{bib2qr}%
+ {BibTeX entry without DOI or URL: \thefield{entrykey}}{}%
+ }%
+ {\printfield[@bibiiqr@fldFmtUrl]{url}}%
+ }%
+ {\printfield[@bibiiqr@fldFmtDoi]{doi}}%
+ \usebibmacro{finentry}%
+}
+\DeclareCiteCommand{\qrcite}
+ {\usebibmacro{prenote}}%
+ {\usedriver{}{@bibiiqr@bibDrvQR}}%
+ {\@bibiiqr@qrdelimiter}%
+ {\usebibmacro{postnote}}%
+\NewDocumentCommand{\qrfullcite}{O{}m}{%
+ \par%
+ \ifthenelse{\equal{#1}{noindent}}{%
+ \noindent%
+ \edef\@bibiiqr@mpiiwidth{\dimexpr\linewidth-\@bibiiqr@qrwidth-0.5em}%
+ }{%
+ \edef\@bibiiqr@mpiiwidth{%
+ \dimexpr\linewidth-\parindent-\@bibiiqr@qrwidth-0.5em}%
+ }%
+ \begin{minipage}[t]{\@bibiiqr@qrwidth}
+ \qrcite{#2}%
+ \end{minipage}
+ \hspace{0.5em}%
+ \begin{minipage}{\@bibiiqr@mpiiwidth}
+ \fullcite{#2}%
+ \end{minipage}
+ \par%
+}%
+
+\endinput
+%%
+%% End of file `bib2qr.sty'.
diff --git a/Master/texmf-dist/tex/latex/biblatex-ieee/ieee-alphabetic.bbx b/Master/texmf-dist/tex/latex/biblatex-ieee/ieee-alphabetic.bbx
index ff82f97f559..8f4e1bea05c 100644
--- a/Master/texmf-dist/tex/latex/biblatex-ieee/ieee-alphabetic.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-ieee/ieee-alphabetic.bbx
@@ -2,13 +2,13 @@
%% biblatex-ieee --- A biblatex implementation of the IEEE
%% bibliography style
%% Maintained by Joseph Wright
-%% E-mail: joseph.wright@morningstar2.co.uk
+%% E-mail: joseph@texdev.net
%% Released under the LaTeX Project Public License v1.3c or later
%% See http://www.latex-project.org/lppl.txt
%% ---------------------------------------------------------------
%%
-\ProvidesFile{ieee-alphabetic.bbx}[2021/12/06 v1.3f biblatex bibliography style]
+\ProvidesFile{ieee-alphabetic.bbx}[2024/08/14 v1.3g biblatex bibliography style]
\RequireBibliographyStyle{ieee}
@@ -53,8 +53,8 @@
{\item}
%%
-%% Copyright (C) 2011-2013,2015-2021 by
-%% Joseph Wright <joseph.wright@morningstar2.co.uk>
+%% Copyright (C) 2011-2013,2015-2021,2024 by
+%% Joseph Wright <joseph@texdev.net>
%%
%% It may be distributed and/or modified under the conditions of
%% the LaTeX Project Public License (LPPL), either version 1.3c of
diff --git a/Master/texmf-dist/tex/latex/biblatex-ieee/ieee-alphabetic.cbx b/Master/texmf-dist/tex/latex/biblatex-ieee/ieee-alphabetic.cbx
index 302517b02e1..d28449741b3 100644
--- a/Master/texmf-dist/tex/latex/biblatex-ieee/ieee-alphabetic.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-ieee/ieee-alphabetic.cbx
@@ -2,13 +2,13 @@
%% biblatex-ieee --- A biblatex implementation of the IEEE
%% bibliography style
%% Maintained by Joseph Wright
-%% E-mail: joseph.wright@morningstar2.co.uk
+%% E-mail: joseph@texdev.net
%% Released under the LaTeX Project Public License v1.3c or later
%% See http://www.latex-project.org/lppl.txt
%% ---------------------------------------------------------------
%%
-\ProvidesFile{ieee-alphabetic.cbx}[2021/12/06 v1.3f biblatex citation style]
+\ProvidesFile{ieee-alphabetic.cbx}[2024/08/14 v1.3g biblatex citation style]
\RequireCitationStyle{alphabetic}
@@ -45,8 +45,8 @@
}
%%
-%% Copyright (C) 2011-2013,2015-2021 by
-%% Joseph Wright <joseph.wright@morningstar2.co.uk>
+%% Copyright (C) 2011-2013,2015-2021,2024 by
+%% Joseph Wright <joseph@texdev.net>
%%
%% It may be distributed and/or modified under the conditions of
%% the LaTeX Project Public License (LPPL), either version 1.3c of
diff --git a/Master/texmf-dist/tex/latex/biblatex-ieee/ieee.bbx b/Master/texmf-dist/tex/latex/biblatex-ieee/ieee.bbx
index 77a8b6794de..088064d1f35 100644
--- a/Master/texmf-dist/tex/latex/biblatex-ieee/ieee.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-ieee/ieee.bbx
@@ -2,13 +2,13 @@
%% biblatex-ieee --- A biblatex implementation of the IEEE
%% bibliography style
%% Maintained by Joseph Wright
-%% E-mail: joseph.wright@morningstar2.co.uk
+%% E-mail: joseph@texdev.net
%% Released under the LaTeX Project Public License v1.3c or later
%% See http://www.latex-project.org/lppl.txt
%% ---------------------------------------------------------------
%%
-\ProvidesFile{ieee.bbx}[2021/12/06 v1.3f biblatex bibliography style]
+\ProvidesFile{ieee.bbx}[2024/08/14 v1.3g biblatex bibliography style]
% Load the standard style to avoid copy-pasting unnecessary material
\RequireBibliographyStyle{numeric-comp}
@@ -30,6 +30,7 @@
maxbibnames = 6,
sorting = none,
dashed = false,
+ urldate = long,
}
\uspunctuation
@@ -50,6 +51,7 @@
{\bibstring{jourser}\addnbspace#1}
\DeclareFieldFormat[online,report]{title}{\mkbibquote{#1\isdot}}
\DeclareFieldFormat{url}{\bibstring{url}\addcolon\space\url{#1}}
+\DeclareFieldFormat{urldate}{\bibstring{urlseen}\space#1}
\DeclareFieldFormat*{volume}
{\bibstring{volume}\addnbspace#1}
\DeclareFieldFormat[article,periodical]{volume}
@@ -76,6 +78,7 @@
presentedat = presented at the\addspace ,
techreport = Tech\adddot\addspace Rep\adddot ,
url = [Online]\adddot\addspace Available ,
+ urlseen = Accessed\addcolon
}
\DefineBibliographyStrings{english}{
@@ -210,6 +213,7 @@
{%
\printtext[journaltitle]{%
\printfield[titlecase]{journaltitle}%
+ \setunit{\subtitlepunct}%
\printfield[titlecase]{journalsubtitle}%
}%
}%
@@ -331,6 +335,17 @@
\printfield{titleaddon}%
}
+\renewbibmacro*{url+urldate}{%
+ \usebibmacro{urldate}%
+ \setunit{\adddot\space}%
+ \usebibmacro{url}%
+}
+
+\renewbibmacro*{urldate}{%
+ \printurldate
+ \newunit
+ }
+
\renewbibmacro*{volume+number+eid}{%
\printfield{volume}%
\newunit
@@ -713,7 +728,6 @@
{\usebibmacro{eprint}}
{}%
\setunit{\adddot\addspace}%
- \printtext[parens]{\usebibmacro{date}}%
\newunit\newblock
\usebibmacro{url+urldate}%
\setunit{\adddot\addspace}%
@@ -802,8 +816,8 @@
\usebibmacro{finentry}}
%%
-%% Copyright (C) 2011-2013,2015-2021 by
-%% Joseph Wright <joseph.wright@morningstar2.co.uk>
+%% Copyright (C) 2011-2013,2015-2021,2024 by
+%% Joseph Wright <joseph@texdev.net>
%%
%% It may be distributed and/or modified under the conditions of
%% the LaTeX Project Public License (LPPL), either version 1.3c of
diff --git a/Master/texmf-dist/tex/latex/biblatex-ieee/ieee.cbx b/Master/texmf-dist/tex/latex/biblatex-ieee/ieee.cbx
index 877d645053f..4b1886683fd 100644
--- a/Master/texmf-dist/tex/latex/biblatex-ieee/ieee.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-ieee/ieee.cbx
@@ -2,19 +2,19 @@
%% biblatex-ieee --- A biblatex implementation of the IEEE
%% bibliography style
%% Maintained by Joseph Wright
-%% E-mail: joseph.wright@morningstar2.co.uk
+%% E-mail: joseph@texdev.net
%% Released under the LaTeX Project Public License v1.3c or later
%% See http://www.latex-project.org/lppl.txt
%% ---------------------------------------------------------------
%%
-\ProvidesFile{ieee.cbx}[2021/12/06 v1.3f biblatex citation style]
+\ProvidesFile{ieee.cbx}[2024/08/14 v1.3g biblatex citation style]
\RequireCitationStyle{numeric-comp}
\ExecuteBibliographyOptions{
- maxcitenames = 3,
- minnames = 3,
+ maxcitenames = 2,
+ minnames = 1,
sorting = none
}
@@ -122,8 +122,8 @@
{}}}
%%
-%% Copyright (C) 2011-2013,2015-2021 by
-%% Joseph Wright <joseph.wright@morningstar2.co.uk>
+%% Copyright (C) 2011-2013,2015-2021,2024 by
+%% Joseph Wright <joseph@texdev.net>
%%
%% It may be distributed and/or modified under the conditions of
%% the LaTeX Project Public License (LPPL), either version 1.3c of
diff --git a/Master/texmf-dist/tex/latex/biblatex-ieee/magyar-ieee.lbx b/Master/texmf-dist/tex/latex/biblatex-ieee/magyar-ieee.lbx
index 79ffd21ce92..33e88122fda 100644
--- a/Master/texmf-dist/tex/latex/biblatex-ieee/magyar-ieee.lbx
+++ b/Master/texmf-dist/tex/latex/biblatex-ieee/magyar-ieee.lbx
@@ -2,7 +2,7 @@
%% biblatex-ieee --- A biblatex implementation of the IEEE
%% bibliography style
%% Maintained by Joseph Wright
-%% E-mail: joseph.wright at morningstar2.co.uk
+%% E-mail: jsoeph@texdev.net
%% Released under the LaTeX Project Public License v1.3c or later
%% See http://www.latex-project.org/lppl.txt
%% ---------------------------------------------------------------
@@ -34,8 +34,8 @@
}
%%
-%% Copyright (C) 2011-2013,2015-2020 by
-%% Joseph Wright <joseph.wright at morningstar2.co.uk>
+%% Copyright (C) 2011-2013,2015-2020,2024 by
+%% Joseph Wright <joseph@texdev.net>
%%
%% It may be distributed and/or modified under the conditions of
%% the LaTeX Project Public License (LPPL), either version 1.3c of
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/american-oxref.lbx b/Master/texmf-dist/tex/latex/biblatex-oxref/american-oxref.lbx
index cb0c1aa4f5b..3a52993eb91 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/american-oxref.lbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/american-oxref.lbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{american-oxref.lbx}
[\Version\space American English conventions required by the biblatex-oxref styles]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/british-oxref.lbx b/Master/texmf-dist/tex/latex/biblatex-oxref/british-oxref.lbx
index f319e7d6397..05fe2abfc79 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/british-oxref.lbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/british-oxref.lbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{british-oxref.lbx}
[\Version\space British English conventions required by the biblatex-oxref styles]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/english-oxref.lbx b/Master/texmf-dist/tex/latex/biblatex-oxref/english-oxref.lbx
index 34619d7c2b9..52390c70e4d 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/english-oxref.lbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/english-oxref.lbx
@@ -13,14 +13,14 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{english-oxref.lbx}
[\Version\space Generic English conventions required by the biblatex-oxref styles]
\InheritBibliographyExtras{english}
\DeclareBibliographyExtras{%
\def\finalandcomma{\addcomma}%
- \def\blx@ox@langbibstring#1#2{#1\addspace\bibstring{#2}}%
+ \def\blx@ox@langbibstring#1#2{#1\setunit*{\addspace}\bibstring{#2}}%
}
\UndeclareBibliographyExtras{%
\def\blx@ox@langbibstring#1#2{\bibstring{#2}}%
@@ -141,11 +141,11 @@
byreviser = {{revised by}{rev\adddot}},
byreviewer = {{reviewed by}{rev\adddot}},
bycollaborator = {{in collaboration with}{in collab\adddotspace with}},
- bytranslator = {{translated \lbx@lfromlang\ by}{trans\adddot\ \lbx@sfromlang}},
+ bytranslator = {{translated by}{trans\adddot}},
bycommentator = {{commented by}{comm\adddot}},
byannotator = {{annotated by}{annot\adddot}},
- byeditortr = {{edited and translated \lbx@lfromlang\ by}%
- {ed\adddotspace and trans\adddot\ \lbx@sfromlang}},
+ byeditortr = {{edited and translated by}%
+ {ed\adddotspace and trans\adddot}},
byeditorco = {{edited and commented by}%
{ed\adddotspace and comm\adddot}},
byeditoran = {{edited and annotated by}%
@@ -156,16 +156,16 @@
{ed.\adddotspace with foreword}},
byeditoraf = {{edited, with an afterword, by}%
{ed.\adddotspace with afterword}},
- byeditortrco = {{edited, translated \lbx@lfromlang\finalandcomma\ and commented by}%
- {ed.,\addabbrvspace trans\adddot\ \lbx@sfromlang\finalandcomma\ and comm\adddot}},
- byeditortran = {{edited, translated \lbx@lfromlang\finalandcomma\ and annotated by}%
- {ed.,\addabbrvspace trans\adddot\ \lbx@sfromlang\finalandcomma\ and annot\adddot}},
- byeditortrin = {{edited and translated \lbx@lfromlang, with an introduction, by}%
- {with introduction, ed\adddotspace and trans\adddot\ \lbx@sfromlang}},
- byeditortrfo = {{edited and translated \lbx@lfromlang, with a foreword, by}%
- {with foreword, ed\adddotspace and trans\adddot\ \lbx@sfromlang}},
- byeditortraf = {{edited and translated \lbx@lfromlang, with an afterword, by}%
- {with afterword, ed\adddotspace and trans\adddot\ \lbx@sfromlang}},
+ byeditortrco = {{edited, translated\finalandcomma\ and commented by}%
+ {ed.,\addabbrvspace trans\adddot\finalandcomma\ and comm\adddot}},
+ byeditortran = {{edited, translated\finalandcomma\ and annotated by}%
+ {ed.,\addabbrvspace trans\adddot\finalandcomma\ and annot\adddot}},
+ byeditortrin = {{edited and translated, with an introduction, by}%
+ {with introduction, ed\adddotspace and trans\adddot}},
+ byeditortrfo = {{edited and translated, with a foreword, by}%
+ {with foreword, ed\adddotspace and trans\adddot}},
+ byeditortraf = {{edited and translated, with an afterword, by}%
+ {with afterword, ed\adddotspace and trans\adddot}},
byeditorcoin = {{edited and commented, with an introduction, by}%
{with introduction, ed\adddotspace and comm\adddot}},
byeditorcofo = {{edited and commented, with a foreword, by}%
@@ -178,41 +178,40 @@
{with foreword, ed\adddotspace and annot\adddot}},
byeditoranaf = {{edited and annotated, with an afterword, by}%
{with afterword, ed\adddotspace and annot\adddot}},
- byeditortrcoin = {{edited, translated \lbx@lfromlang\finalandcomma\ and commented, with an introduction, by}%
- {with introduction, ed.,\addabbrvspace trans\adddot\ \lbx@sfromlang\finalandcomma\ and comm\adddot}},
- byeditortrcofo = {{edited, translated \lbx@lfromlang\finalandcomma\ and commented, with a foreword, by}%
- {with foreword, ed.,\addabbrvspace trans\adddot\ \lbx@sfromlang\finalandcomma\ and comm\adddot}},
- byeditortrcoaf = {{edited, translated \lbx@lfromlang\finalandcomma\ and commented, with an afterword, by}%
- {with afterword, ed.,\addabbrvspace trans\adddot\ \lbx@sfromlang\finalandcomma\ and comm\adddot}},
- byeditortranin = {{edited, translated \lbx@lfromlang\finalandcomma\ and annotated, with an introduction, by}%
- {with introduction, ed.,\addabbrvspace trans\adddot\ \lbx@sfromlang\finalandcomma\ and annot\adddot}},
- byeditortranfo = {{edited, translated \lbx@lfromlang\finalandcomma\ and annotated, with a foreword, by}%
- {with foreword, ed.,\addabbrvspace trans\adddot\ \lbx@sfromlang\finalandcomma\ and annot\adddot}},
- byeditortranaf = {{edited, translated \lbx@lfromlang\finalandcomma\ and annotated, with an afterword, by}%
- {with afterword, ed.,\addabbrvspace trans\adddot\ \lbx@sfromlang\finalandcomma\ and annot\adddot}},
- bytranslatorco = {{translated \lbx@lfromlang\ and commented by}%
- {trans\adddot\ \lbx@sfromlang\ and comm\adddot}},
- bytranslatoran = {{translated \lbx@lfromlang\ and annotated by}%
- {trans\adddot\ \lbx@sfromlang\ and annot\adddot}},
- bytranslatorin = {{translated \lbx@lfromlang, with an introduction, by}%
- {trans\adddot\ \lbx@sfromlang\ with introduction}},
- bytranslatorfo = {{translated \lbx@lfromlang, with a foreword, by}%
- {trans\adddot\ \lbx@sfromlang\ with foreword}},
- bytranslatoraf = {{translated \lbx@lfromlang, with an afterword, by}%
- {trans\adddot\ \lbx@sfromlang\ with afterword}},
- bytranslatorcoin = {{translated \lbx@lfromlang\ and commented, with an introduction, by}%
- {with introduction, trans\adddot\ \lbx@sfromlang\ and comm\adddot}},
- bytranslatorcofo = {{translated \lbx@lfromlang\ and commented, with a foreword, by}%
- {with foreword, trans\adddot\ \lbx@sfromlang\ and comm\adddot}},
- bytranslatorcoaf = {{translated \lbx@lfromlang\ and commented, with an afterword, by}%
- {with afterword, trans\adddot\ \lbx@sfromlang\ and comm\adddot}},
- bytranslatoranin = {{translated \lbx@lfromlang\ and annotated, with an introduction, by}%
- {with introduction, trans\adddot\ \lbx@sfromlang\ and annot\adddot}},
- bytranslatoranfo = {{translated \lbx@lfromlang\ and annotated, with a foreword, by}%
- {with foreword, trans\adddot\ \lbx@sfromlang\ and annot\adddot}},
- bytranslatoranaf = {{translated \lbx@lfromlang\ and annotated, with an afterword, by}%
- {with afterword, trans\adddot\ \lbx@sfromlang\ and annot\adddot}},
- withintroduction = {{with an introduction by}{with an introduction by}},
+ byeditortrcoin = {{edited, translated\finalandcomma\ and commented, with an introduction, by}%
+ {with introduction, ed.,\addabbrvspace trans\adddot\finalandcomma\ and comm\adddot}},
+ byeditortrcofo = {{edited, translated\finalandcomma\ and commented, with a foreword, by}%
+ {with foreword, ed.,\addabbrvspace trans\adddot\finalandcomma\ and comm\adddot}},
+ byeditortrcoaf = {{edited, translated\finalandcomma\ and commented, with an afterword, by}%
+ {with afterword, ed.,\addabbrvspace trans\adddot\finalandcomma\ and comm\adddot}},
+ byeditortranin = {{edited, translated\finalandcomma\ and annotated, with an introduction, by}%
+ {with introduction, ed.,\addabbrvspace trans\adddot\finalandcomma\ and annot\adddot}},
+ byeditortranfo = {{edited, translated\finalandcomma\ and annotated, with a foreword, by}%
+ {with foreword, ed.,\addabbrvspace trans\adddot\finalandcomma\ and annot\adddot}},
+ byeditortranaf = {{edited, translated\finalandcomma\ and annotated, with an afterword, by}%
+ {with afterword, ed.,\addabbrvspace trans\adddot\finalandcomma\ and annot\adddot}},
+ bytranslatorco = {{translated and commented by}%
+ {trans\adddotspace and comm\adddot}},
+ bytranslatoran = {{translated and annotated by}%
+ {trans\adddotspace and annot\adddot}},
+ bytranslatorin = {{translated, with an introduction, by}%
+ {trans\adddotspace with introduction}},
+ bytranslatorfo = {{translated, with a foreword, by}%
+ {trans\adddotspace with foreword}},
+ bytranslatoraf = {{translated, with an afterword, by}%
+ {trans\adddotspace with afterword}},
+ bytranslatorcoin = {{translated and commented, with an introduction, by}%
+ {with introduction, trans\adddotspace and comm\adddot}},
+ bytranslatorcofo = {{translated and commented, with a foreword, by}%
+ {with foreword, trans\adddotspace and comm\adddot}},
+ bytranslatorcoaf = {{translated and commented, with an afterword, by}%
+ {with afterword, trans\adddotspace and comm\adddot}},
+ bytranslatoranin = {{translated and annotated, with an introduction, by}%
+ {with introduction, trans\adddotspace and annot\adddot}},
+ bytranslatoranfo = {{translated and annotated, with a foreword, by}%
+ {with foreword, trans\adddotspace and annot\adddot}},
+ bytranslatoranaf = {{translated and annotated, with an afterword, by}%
+ {with afterword, trans\adddotspace and annot\adddot}},
withcommentator = {{with a commentary by}{with a commentary by}},
withannotator = {{with annotations by}{with annotations by}},
withintroduction = {{with an introduction by}{with an introduction by}},
@@ -241,8 +240,10 @@
idempp = {{eidem}{eid\adddot}},
citedas = {{henceforth}{henceforth}},
thiscite = {{at}{at}},
- langamerican = {{English}{Eng\adddot}},
- langbrazilian = {{Brazilian}{Braz\adddot}},
+ langamerican = {{American English}{Amer\adddotspace Eng\adddot}},
+ langbasque = {{Basque}{Basq\adddot}},
+ langbrazilian = {{Brazilian Portuguese}{Braz\adddotspace Port\adddot}},
+ langbulgarian = {{Bulgarian}{Bulg\adddot}},
langcatalan = {{Catalan}{Catal\adddot}},
langcroatian = {{Croatian}{Croat\adddot}},
langczech = {{Czech}{Czech}},
@@ -252,17 +253,28 @@
langestonian = {{Estonian}{Eston\adddot}},
langfinnish = {{Finnish}{Finn\adddot}},
langfrench = {{French}{Fr\adddot}},
+ langgalician = {{Galician}{Galic\adddot}},
langgerman = {{German}{Ger\adddot}},
langgreek = {{Greek}{Gr\adddot}},
+ langhungarian = {{Hungarian}{Hung\adddot}},
langitalian = {{Italian}{It\adddot}},
+ langjapanese = {{Japanese}{Jap\adddot}},
langlatin = {{Latin}{Lat\adddot}},
+ langlatvian = {{Latvian}{Latv\adddot}},
+ langlithuanian = {{Lithuanian}{Lith\adddot}},
+ langmarathi = {{Marathi}{Mar\adddot}},
langnorwegian = {{Norwegian}{Norw\adddot}},
langpolish = {{Polish}{Pol\adddot}},
langportuguese = {{Portuguese}{Port\adddot}},
+ langromanian = {{Romanian}{Rom\adddot}},
langrussian = {{Russian}{Russ\adddot}},
+ langserbian = {{Serbian}{Serb\adddot}},
+ langslovak = {{Slovak}{Slovak}},
langslovene = {{Slovene}{Slov\adddot}},
langspanish = {{Spanish}{Sp\adddot}},
langswedish = {{Swedish}{Swed\adddot}},
+ langturkish = {{Turkish}{Turk\adddot}},
+ langukrainian = {{Ukrainian}{Ukr\adddot}},
}
%%
%% Copyright (C) 2016–2023 Alex Ball
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxalph.bbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxalph.bbx
index 473f6c42d16..c73fc2c95aa 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxalph.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxalph.bbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxalph.bbx}
[\Version\space Alphabetic bibliography style inspired by the Oxford Guide to Style]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxalph.cbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxalph.cbx
index f3541bff4a7..9c2a9ab2c46 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxalph.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxalph.cbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxalph.cbx}
[\Version\space Alphabetic citation style inspired by the Oxford Guide to Style]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxalph.dbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxalph.dbx
index bd625202764..9045cf9d648 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxalph.dbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxalph.dbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxalph.dbx}
[\Version\space Data model for the Oxref family of styles]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-ibid.bbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-ibid.bbx
index 04b5c3b8406..ef1d0322c64 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-ibid.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-ibid.bbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes-ibid.bbx}
[\Version\space Footnote-based bibliography style inspired by the Oxford Guide to Style]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-ibid.cbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-ibid.cbx
index 252b66b4f1b..848885d55e5 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-ibid.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-ibid.cbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes-ibid.cbx}
[\Version\space Footnote-based citation style inspired by the Oxford Guide to Style]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-ibid.dbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-ibid.dbx
index 28562c9fbe6..d44e3a3a5a6 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-ibid.dbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-ibid.dbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes-ibid.dbx}
[\Version\space Data model for the Oxref family of styles]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-inote.bbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-inote.bbx
index d26e0a6d13e..e5f7d577ec8 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-inote.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-inote.bbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes-inote.bbx}
[\Version\space Footnote-based bibliography style inspired by the Oxford Guide to Style]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-inote.cbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-inote.cbx
index 2f0cf8d67ef..40f4557fde4 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-inote.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-inote.cbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes-inote.cbx}
[\Version\space Footnote-based citation style inspired by the Oxford Guide to Style]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-inote.dbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-inote.dbx
index 5b0e6eaa836..0e3d066ce73 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-inote.dbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-inote.dbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes-inote.dbx}
[\Version\space Data model for the Oxref family of styles]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-note.bbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-note.bbx
index bb224734c16..0603f3fc93e 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-note.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-note.bbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes-note.bbx}
[\Version\space Footnote-based bibliography style inspired by the Oxford Guide to Style]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-note.cbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-note.cbx
index c2150b32312..e68736b15a7 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-note.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-note.cbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes-note.cbx}
[\Version\space Footnote-based citation style inspired by the Oxford Guide to Style]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-note.dbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-note.dbx
index a9f26d759c4..2f96f373283 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-note.dbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-note.dbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes-note.dbx}
[\Version\space Data model for the Oxref family of styles]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad1.bbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad1.bbx
index e5d42ab3991..760d14f8daa 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad1.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad1.bbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes-trad1.bbx}
[\Version\space Footnote-based bibliography style inspired by the Oxford Guide to Style]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad1.cbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad1.cbx
index f4e37274395..7609ff7ef85 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad1.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad1.cbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes-trad1.cbx}
[\Version\space Footnote-based citation style inspired by the Oxford Guide to Style]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad1.dbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad1.dbx
index f7b6c3a0f9a..6674482e133 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad1.dbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad1.dbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes-trad1.dbx}
[\Version\space Data model for the Oxref family of styles]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad2.bbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad2.bbx
index 28c6f1c1f1f..1bb2b1ad334 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad2.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad2.bbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes-trad2.bbx}
[\Version\space Footnote-based bibliography style inspired by the Oxford Guide to Style]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad2.cbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad2.cbx
index 7209c8cacaf..6b62164597b 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad2.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad2.cbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes-trad2.cbx}
[\Version\space Footnote-based citation style inspired by the Oxford Guide to Style]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad2.dbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad2.dbx
index 1df1385c14f..dcc6f60853b 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad2.dbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad2.dbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes-trad2.dbx}
[\Version\space Data model for the Oxref family of styles]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad3.bbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad3.bbx
index e024aabcdf5..8dd8c41ce17 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad3.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad3.bbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes-trad3.bbx}
[\Version\space Footnote-based bibliography style inspired by the Oxford Guide to Style]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad3.cbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad3.cbx
index 146c6c2afb8..1afe5861dc9 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad3.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad3.cbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes-trad3.cbx}
[\Version\space Footnote-based citation style inspired by the Oxford Guide to Style]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad3.dbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad3.dbx
index cf6bf1b8c2d..d0dcb90db08 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad3.dbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes-trad3.dbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes-trad3.dbx}
[\Version\space Data model for the Oxref family of styles]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes.bbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes.bbx
index fad740be0cc..84c4da00d8e 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes.bbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes.bbx}
[\Version\space Footnote-based bibliography style inspired by the Oxford Guide to Style]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes.cbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes.cbx
index 7302e4fb091..359ea4fd779 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes.cbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes.cbx}
[\Version\space Footnote-based citation style inspired by the Oxford Guide to Style]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes.dbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes.dbx
index fb723c3fc58..936e7428a30 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes.dbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnotes.dbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnotes.dbx}
[\Version\space Data model for the Oxref family of styles]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnum.bbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnum.bbx
index 6adedef4b24..7ff5c440a83 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnum.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnum.bbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnum.bbx}
[\Version\space Numeric bibliography style inspired by the Oxford Guide to Style]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnum.cbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnum.cbx
index d5d672b2ce9..c543e3adb7a 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnum.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnum.cbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnum.cbx}
[\Version\space Numeric citation style inspired by the Oxford Guide to Style]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnum.dbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnum.dbx
index bc0a1e0cd0f..7f8955c4ae3 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxnum.dbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxnum.dbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxnum.dbx}
[\Version\space Data model for the Oxref family of styles]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxref.bbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxref.bbx
index 8c904ae44ad..e761352b5f2 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxref.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxref.bbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxref.bbx}
[\Version\space Base settings for bibliography styles inspired by the Oxford Guide to Style]
@@ -55,6 +55,7 @@
\newcommand*{\uscasetitlepunct}{\addcomma\space}
\renewcommand*{\relateddelim}{\addsemicolon\space}
\DeclareDelimFormat{revsdnamedelim}{\addcomma}
+\DeclareDelimFormat[pair]{revsdnamedelim}{}
\DeclareDelimFormat{authortypedelim}{\addspace}
\DeclareDelimFormat{editortypedelim}{\addspace}
\DeclareDelimFormat{translatortypedelim}{\addspace}
@@ -96,7 +97,7 @@
and
test {\ifdefvoid{#2}}%
}{}{%
- \printdelim{revsdnamedelim}}%
+ \printdelim{revsdnamepunct}}%
\ifdefvoid{#5}{}{\iftoggle{blx@ox@nametitle}{\bibnamedelimd\mkbibnametitle{#5}\isdot}{}}%
\ifdefvoid{#2}{}{\bibnamedelimd\mkbibnamegiven{#2}\isdot}%
}{%
@@ -111,10 +112,22 @@
and
test {\ifdefvoid{#3}}%
}{}{%
- \printdelim{revsdnamedelim}}%
+ \printdelim{revsdnamepunct}}%
\ifdefvoid{#5}{}{\iftoggle{blx@ox@nametitle}{\bibnamedelimd\mkbibnametitle{#5}\isdot}{}}%
\ifdefvoid{#2}{}{\bibnamedelimd\mkbibnamegiven{#2}\isdot}%
\ifdefvoid{#3}{}{\bibnamedelimd\mkbibnameprefix{#3}\isdot}}}
+\renewbibmacro*{name:revsdelim}{%
+ \ifboolexpr{
+ (
+ test {\ifnumequal{\value{liststop}}{1}}
+ and
+ test \ifmorenames
+ )
+ or
+ test {\ifnumequal{\value{liststop}}{2}}
+ }
+ {\printdelim{revsdnamedelim}}
+ {}}
\def\blx@ox@lasthash{}
\DeclareNameFormat{bib-family-given/cite-given-family}{%
\iffieldannotation{inferred}{\ifnumequal{\value{listcount}}{1}{\bibopenbracket}{}}{}%
@@ -159,13 +172,22 @@
\renewcommand*{\mkbibnametitle}[1]{##1}%
}{}%
\ifboolexpe{%
- test {\ifnumgreater{\value{listcount}}{1}}
- or (
+ test {\ifnumequal{\value{listcount}}{\@ne}}
+ and
+ (
+ test {\ifnumless{\value{listcount}}{\value{liststop}}}
+ or
+ test {\ifnumgreater{\value{listtotal}}{\value{maxnames}}}
+ or
+ test {\ifandothers{\currentname}}
+ )
+ and not
+ (
test {\ifdefvoid\namepartgiven}
and
test {\ifdefvoid\namepartprefix}
)
- }{}{\usebibmacro{name:revsdelim}}%
+ }{\usebibmacro{name:revsdelim}}{}%
}{%
\ifgiveninits{%
\ifitemannotation{pseudo}{%
@@ -201,6 +223,10 @@
\savefield{hash}{\blx@ox@lasthash}%
}%
\ifitemannotation{inferred}{\bibclosebracket}{}%
+ \ifitemannotation{variant}{%
+ \global\settoggle{blx@ox@variantname}{true}%
+ }{%
+ \global\settoggle{blx@ox@variantname}{false}}%
\usebibmacro{name:andothers}%
\iffieldannotation{inferred}{%
\ifboolexpr{
@@ -256,13 +282,20 @@
}{%
\global\settoggle{blx@ox@variantname}{false}}%
\ifboolexpe{%
- test {\ifnumgreater{\value{listcount}}{1}}
- or (
+ (
+ test {\ifnumless{\value{listcount}}{\value{liststop}}}
+ or
+ test {\ifnumgreater{\value{listtotal}}{\value{maxnames}}}
+ or
+ test {\ifandothers{\currentname}}
+ )
+ and not
+ (
test {\ifdefvoid\namepartgiven}
and
test {\ifdefvoid\namepartprefix}
)
- }{}{\usebibmacro{name:revsdelim}}%
+ }{\usebibmacro{name:revsdelim}}{}%
\usebibmacro{name:andothers}}
\xpatchbibmacro{name:given-family}%
{\bibnamedelimd\mkbibnamesuffix{#4}}%
@@ -274,9 +307,22 @@
{}{\wlog{WARNING: biblatex-oxref failed to patch name:family-given}}
\DeclareFieldFormat{nameaddon}{\mkbibbrackets{#1}}
\DeclareFieldFormat{namevariant}{\mkbibparens{\bibstring{equals}\space #1}}
+\newbibmacro*{namepair:delim}[3]{%
+ \ifnumgreater{#2}{\@ne}{%
+ \ifnumless{#2}{#3}{%
+ \printdelim{multinamedelim}%
+ }{%
+ \ifnumgreater{#3}{\c@maxnames}{%
+ \c@liststop\c@minnames
+ }{%
+ \c@liststop#3}%
+ \lbx@finalnamedelim{#1}}%
+ }{}}
+\DeclareFieldFormat{expanded}{\mkbibparens{#1}}
\newcounter{namepairs}
\newsavebox{\blx@ox@namebox}
\newsavebox{\blx@ox@altnamebox}
+\newtoggle{blx@ox@thispairvariant}%
\newbibmacro*{namepairs}[2]{%
\setcounter{namepairs}{0}%
\savebibmacro{name:andothers}%
@@ -300,48 +346,58 @@
)
}{%
\stepcounter{namepairs}%
- \ifnumgreater{\value{namepairs}}{1}{%
- \ifnumequal{\value{#1}}{2}{%
- \setunit*{\addspace\bibstring{and}\addspace}%
- }{%
- \ifnumequal{\value{namepairs}}{\value{#1}}{%
- \setunit*{\addcomma\space\bibstring{and}\addspace}%
- }{%
- \setunit*{\addcomma\space}%
- }%
- }%
- }{}%
\savebox{\blx@ox@namebox}{%
\printnames[#1][\value{namepairs}-\value{namepairs}]{#1}%
}%
\let\blx@ox@firsthash=\blx@ox@lasthash
+ \savebox{\blx@ox@altnamebox}{%
+ \printnames[#1][\value{namepairs}-\value{namepairs}]{#2}%
+ }%
+ \let\blx@ox@secondhash=\blx@ox@lasthash
+ \iftoggle{blx@ox@variantname}{%
+ \toggletrue{blx@ox@thispairvariant}%
+ }{%
+ \togglefalse{blx@ox@thispairvariant}%
+ }%
\IfEndWith{#2}{addon}{%
- \savebox{\blx@ox@altnamebox}{%
- \printnames[by#1][\value{namepairs}-\value{namepairs}]{#2}%
- }%
- \let\blx@ox@secondhash=\blx@ox@lasthash
+ \usebibmacro{namepair:delim}%
+ {\unhbox\blx@ox@namebox}{\value{namepairs}}{\value{#1}}%
\ifdefstrequal{\blx@ox@firsthash}{\blx@ox@secondhash}{%
- \unhbox\blx@ox@namebox
+ \hbox{}\unhbox\blx@ox@namebox
}{%
- \unhbox\blx@ox@namebox\addspace
- \iftoggle{blx@ox@variantname}{%
+ \iftoggle{blx@ox@thispairvariant}{%
\ifbibliography{%
- \printtext[namevariant]{\printnames[#1][\value{namepairs}-\value{namepairs}]{#2}}%
- }{}%
+ \delimcontext{pair}%
+ \printnames[#1][\value{namepairs}-\value{namepairs}]{#1}%
+ \setunit{\addspace}%
+ \printtext[namevariant]{%
+ \printnames[#1][\value{namepairs}-\value{namepairs}]{#2}}%
+ }{%
+ \hbox{}\unhbox\blx@ox@namebox
+ }%
}{%
- \printtext[nameaddon]{\unhbox\blx@ox@altnamebox}%
+ \delimcontext{pair}%
+ \printnames[#1][\value{namepairs}-\value{namepairs}]{#1}%
+ \setunit{\addspace}%
+ \printtext[nameaddon]{%
+ \printnames[#1][\value{namepairs}-\value{namepairs}]{#2}%
+ }%
}%
}%
}{%
- \savebox{\blx@ox@altnamebox}{%
- \printnames[#1][\value{namepairs}-\value{namepairs}]{#2}%
- }%
- \let\blx@ox@secondhash=\blx@ox@lasthash
\ifdefstrequal{\blx@ox@firsthash}{\blx@ox@secondhash}{%
- \unhbox\blx@ox@namebox
+ \usebibmacro{namepair:delim}%
+ {\unhbox\blx@ox@namebox}{\value{namepairs}}{\value{#1}}%
+ \hbox{}\unhbox\blx@ox@namebox
}{%
- \unhbox\blx@ox@altnamebox
- \addspace\mkbibparens{\unhbox\blx@ox@namebox}%
+ \usebibmacro{namepair:delim}%
+ {\unhbox\blx@ox@altnamebox}{\value{namepairs}}{\value{#1}}%
+ \delimcontext{pair}%
+ \printnames[#1][\value{namepairs}-\value{namepairs}]{#2}%
+ \setunit{\addspace}%
+ \printtext[expanded]{%
+ \printnames[#1][\value{namepairs}-\value{namepairs}]{#1}%
+ }%
}%
}%
}%
@@ -724,12 +780,12 @@
\DeclareFieldFormat{pages}{%
\iffieldundef{bookpagination}%
{\mkcomprange{#1}}%
- {\mkcomprange[{\mkpageprefix[bookpagination]}]{#1}}%
+ {\mkpageprefix[bookpagination][\mkcomprange]{#1}}%
}
\DeclareFieldFormat{postnote}{%
\iffieldundef{pagination}%
{\mkcomprange{#1}}%
- {\mkcomprange[{\mkpageprefix}]{#1}}%
+ {\mkpageprefix[pagination][\mkcomprange]{#1}}%
}
\DeclareBibliographyOption{nopublisher}[true]{%
@@ -1116,6 +1172,7 @@
}{%
\mkbibquote{#1\isdot}}}
\DeclareFieldFormat[inreference]{title}{\mkbibquote{#1\isdot}}
+\newcommand*{\mkvolroman}[1]{\Rn{#1}}
\DeclareFieldFormat[book,mvbook,bookinbook,inbook,suppbook,%
collection,mvcollection,incollection,suppcollection,%
proceedings,mvproceedings,inproceedings,%
@@ -1123,11 +1180,11 @@ reference,mvreference,inreference]{volume}{%
\IfSubStr{#1}{-}{%
\StrCount{#1}{-}[\blx@ox@dashnum]%
\StrBefore{#1}{-}[\blx@ox@volnum]%
- \expandafter\ifinteger\blx@ox@volnum{\Rn{\blx@ox@volnum}}{\blx@ox@volnum}\bibrangedash
+ \expandafter\ifinteger\blx@ox@volnum{\mkvolroman{\blx@ox@volnum}}{\blx@ox@volnum}\bibrangedash
\StrBehind[\blx@ox@dashnum]{#1}{-}[\blx@ox@volnum]%
- \expandafter\ifinteger\blx@ox@volnum{\Rn{\blx@ox@volnum}}{\blx@ox@volnum}%
+ \expandafter\ifinteger\blx@ox@volnum{\mkvolroman{\blx@ox@volnum}}{\blx@ox@volnum}%
}{%
- \ifinteger{#1}{\Rn{#1}}{#1}}}
+ \ifinteger{#1}{\mkvolroman{#1}}{#1}}}
\newbibmacro*{maintitle+volume}{%
\ifboolexpr{
test {\iffieldundef{maintitle}}
@@ -1162,7 +1219,21 @@ reference,mvreference,inreference]{volume}{%
\PackageError{biblatex-oxref}
{Invalid option 'bookseries=#1'}
{Valid values are 'in' and 'out'.}}}}
+\newbibmacro*{listpair:delim}[3]{%
+ \ifnumgreater{#2}{\@ne}{%
+ \ifnumless{#2}{#3}{%
+ \printdelim{multilistdelim}%
+ }{%
+ \c@liststop#3%
+ \lbx@finallistdelim{#1}}%
+ }{}}
\newcounter{locpubpairs}
+\DeclareListFormat{locpub}{%
+ \usebibmacro{listpair:delim}%
+ {#1}{\value{locpubpairs}}{\value{location}}%
+ #1\isdot
+}
+\newsavebox{\blx@ox@locbox}
\newbibmacro*{edition+publisher+location+date}{%
\printlist{origlocation}%
\iflistundef{origpublisher}%
@@ -1193,19 +1264,8 @@ reference,mvreference,inreference]{volume}{%
test {\ifnumcomp{\value{locpubpairs}}{<}{\value{publisher}}}
}{%
\stepcounter{locpubpairs}%
- \ifnumcomp{\value{locpubpairs}}{>}{1}{%
- \ifnumequal{\value{publisher}}{2}{%
- \setunit*{\addspace\bibstring{and}\addspace}%
- }{%
- \ifnumequal{\value{locpubpairs}}{\value{publisher}}{%
- \setunit*{\addcomma\space\bibstring{and}\addspace}%
- }{%
- \setunit*{\addcomma\space}%
- }%
- }%
- }{}%
- \printlist[][\value{locpubpairs}-\value{locpubpairs}]{location}%
- \setunit*{\addcolon\space}%
+ \printlist[locpub][\value{locpubpairs}-\value{locpubpairs}]{location}%
+ \setunit{\addcolon\space}%
\printlist[][\value{locpubpairs}-\value{locpubpairs}]{publisher}%
}%
\restorebibmacro{list:andothers}%
@@ -2750,7 +2810,11 @@ reference,mvreference,inreference]{volume}{%
\setcounter{blx@tmpcnt}{\value{listcount}}%
\addtocounter{blx@tmpcnt}{1}%
\ifnumequal{\value{blx@tmpcnt}}{\value{listtotal}}{%
- #1\space\bibstring{and}\addspace
+ \ifnumgreater{\value{listtotal}}{2}{%
+ #1\finalandcomma\space\bibstring{and}\addspace
+ }{%
+ #1\space\bibstring{and}\addspace
+ }
}{%
#1\addcomma\space}}}%
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxyear.bbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxyear.bbx
index 5456cee2974..c129b90113d 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxyear.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxyear.bbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxyear.bbx}
[\Version\space Author-year bibliography style inspired by the Oxford Guide to Style]
@@ -321,11 +321,6 @@
\setunit*{\addspace}%
\usebibmacro{date+extradate}%
}{}{\wlog{WARNING: biblatex-oxref (oxyear) failed to patch author (lasthash)}}%
-\xpatchbibmacro{namepairs}{%
- \printnames[by#1]%
-}{%
- \printnames[#1]%
-}{}{\wlog{WARNING: biblatex-oxref (oxyear) failed to patch namepairs}}
\xpatchbibmacro{author+altauthor}{%
\printnames{author}%
}{%
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxyear.cbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxyear.cbx
index 91413cd2cdf..b25b2d2aace 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxyear.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxyear.cbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxyear.cbx}
[\Version\space Author-year citation style inspired by the Oxford Guide to Style]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/oxyear.dbx b/Master/texmf-dist/tex/latex/biblatex-oxref/oxyear.dbx
index 9f7891c9312..fdde6d5d8e1 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/oxyear.dbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/oxyear.dbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{oxyear.dbx}
[\Version\space Data model for the Oxref family of styles]
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/polish-oxref.lbx b/Master/texmf-dist/tex/latex/biblatex-oxref/polish-oxref.lbx
new file mode 100644
index 00000000000..d0747e2f058
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/polish-oxref.lbx
@@ -0,0 +1,311 @@
+%%
+%% This is file `polish-oxref.lbx',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% oxref.dtx (with options: `lbx,pl')
+%% ----------------------------------------------------------------
+%% biblatex-oxref --- Biblatex styles inspired by the Oxford Guide to Style
+%% Author: Alex Ball
+%% E-mail: a.j.ball@bath.ac.uk
+%% License: Released under the LaTeX Project Public License v1.3c or later
+%% See: http://www.latex-project.org/lppl.txt
+%% ----------------------------------------------------------------
+%%
+\def\Version{2024/08/26 v3.3}
+\NeedsTeXFormat{LaTeX2e}[1999/12/01]
+\ProvidesFile{polish-oxref.lbx}
+ [\Version\space Polish conventions required by the biblatex-oxref styles]
+\InheritBibliographyExtras{polish}
+\DeclareBibliographyExtras{%
+ \DeclareDelimFormat{revsdnamedelim}{}%
+ \savecommand\makebbx@dateii
+ \def\makebbx@dateii#1#2#3{%
+ \blx@imc@stripzeros{#3}~\lbx@pl@mkbibmonth{#2}%
+ \space
+ #1}%
+ \savecommand\mkvolroman
+ \renewcommand*{\mkvolroman}[1]{\RN{#1}}%
+ \savecommand\blx@ox@compyear
+ \renewcommand*{\blx@ox@compyear}[2]{#2}%
+ \savefieldformat{pages}%
+ \DeclareFieldFormat{pages}{%
+ \iffieldundef{bookpagination}%
+ {\mknormrange{#1}}%
+ {\mkpageprefix[bookpagination][\mknormrange]{#1}}%
+ }%
+ \savefieldformat{postnote}%
+ \DeclareFieldFormat{postnote}{%
+ \iffieldundef{pagination}%
+ {\mknormrange{#1}}%
+ {\mkpageprefix[pagination][\mknormrange]{#1}}%
+ }%
+ \savefieldformat{edition}%
+ \DeclareFieldFormat{edition}{%
+ \ifinteger{#1}
+ {\bibstring{edition}~\mkbibordedition{#1}}
+ {\ifbibstring{#1}{\bibstring{#1}}{#1\isdot}}}%
+}
+\UndeclareBibliographyExtras{%
+ \DeclareDelimFormat{revsdnamedelim}{\addcomma}%
+ \restorecommand\makebbx@dateii
+ \restorecommand\mkvolroman
+ \restorecommand\blx@ox@compyear
+ \restorefieldformat{pages}%
+ \restorefieldformat{postnote}%
+ \restorefieldformat{edition}%
+}
+\DeclareBibliographyStrings{%
+ inherit = {polish},
+ director = {{re\.{z}yser}{re\.{z}\adddot}},
+ directors = {{re\.{z}yserzy}{re\.{z}\adddot}},
+ performer = {{wykonawca}{wyk\adddot}},
+ performers = {{wykonawcy}{wyk\adddot}},
+ reader = {{czytelnik}{czytelnik}},
+ readers = {{czytelnicy}{czytelnicy}},
+ conductor = {{dyrygent}{dyr\adddot}},
+ conductors = {{dyrygenci}{dyr\adddot}},
+ serieseditor = {{redaktor serii}{red\adddotspace serii}},
+ serieseditors = {{redaktor serii}{red\adddotspace serii}},
+ holder = {{w\l a\'{s}ciciel}{w\l a\'{s}ciciel}},
+ holders = {{w\l a\'{s}ciciele}{w\l a\'{s}ciciele}},
+ editorcm = {{redaktor i~kompilator}{red\adddotspace i~kompilator}},
+ editorcms = {{redaktorzy i~kompilatorzy}{red\adddotspace i~kompilatorzy}},
+ byperformer = {{wykonawca}{wyk\adddot}},
+ bydirector = {{re\.{z}yseria}{re\.{z}\adddot}},
+ byreader = {{czyta}{czyta}},
+ byconductor = {{kieruje}{kier\adddot}},
+ byserieseditor = {{redakcja}{red\adddot}},
+ byholder = {{w~posiadaniu}{w~posiadaniu}},
+ byeditorcm = {{redakcja i~opracowanie}{red\adddotspace i~oprac\adddot}},
+ facsimile = {{wydanie faksymile}{wyd\adddotspace faksymile}},
+ revised = {{wydanie poprawione}{wyd\adddotspace popr\adddot}},
+ revisedenlarged = {{wydanie poprawione i~rozszerzone}{wyd\adddotspace popr\addotspace i~rozszerz\adddot}},
+ revisedreprint = {{przedruk poprawiony}{przedr\adddotspace popr\adddot}},
+ suppto = {{dodatek do}{dod\adddotspace do}},
+ equals = {{=}{=}},
+ original = {{oryginalny}{oryg\adddot}},
+ amendedby = {{zmienione przez}{zmien\adddotspace przez}},
+ inpressin = {{z\l o\.{z}one do}{z\l o\.{z}one do}},
+ book = {{ksi\k{e}ga}{ks\adddot}},
+ books = {{ksi\k{e}gi}{ks\adddot}},
+ canto = {{pie\'{s}\'{n}}{pie\'{s}\'{n}}},
+ cantos = {{pie\'{s}ni}{pie\'{s}ni}},
+ stanza = {{zwrotka}{zwr\adddot}},
+ stanzas = {{zwrotki}{zwr\adddot}},
+ act = {{akt}{a\adddot}},
+ acts = {{akty}{aa\adddot}},
+ scene = {{scena}{sc\adddot}},
+ scenes = {{sceny}{sc\adddot}},
+ folio = {{karta}{k\adddot}},
+ folios = {{karty}{kk\adddot}},
+ article = {{artyku\l }{art\adddot}},
+ articles = {{artyku\l y}{art\adddot}},
+ clause = {{klauzula}{klauz\adddot}},
+ clauses = {{klauzule}{klauz\adddot}},
+ regulation = {{rozporz\k{a}dzenie}{rozp\adddot}},
+ regulations = {{rozporz\k{a}dzenia}{rozp\adddot}},
+ rule = {{przepis}{przep\adddot}},
+ rules = {{przepisy}{przep\adddot}},
+ booktotal = {{ksi\k{e}ga}{ks\adddot}},
+ booktotals = {{ksi\k{e}gi}{ks\adddot}},
+ cantototal = {{pie\'{s}\'{n}}{pie\'{s}\'{n}}},
+ cantototals = {{pie\'{s}ni}{pie\'{s}ni}},
+ stanzatotal = {{zwrotka}{zwr\adddot}},
+ stanzatotals = {{zwrotki}{zwr\adddot}},
+ acttotal = {{akt}{a\adddot}},
+ acttotals = {{akty}{aa\adddot}},
+ scenetotal = {{scena}{sc\adddot}},
+ scenetotals = {{sceny}{sc\adddot}},
+ foliototal = {{karta}{k\adddot}},
+ foliototals = {{karty}{kk\adddot}},
+ articletotal = {{artyku\l }{art\adddot}},
+ articletotals = {{artyku\l y}{art\adddot}},
+ clausetotal = {{klauzula}{klauz\adddot}},
+ clausetotals = {{klauzule}{klauz\adddot}},
+ regulationtotal = {{rozporz\k{a}dzenie}{rozp\adddot}},
+ regulationtotals = {{rozporz\k{a}dzenia}{rozp\adddot}},
+ ruletotal = {{przepis}{przep\adddot}},
+ ruletotals = {{przepisy}{przep\adddot}},
+ facebook = {{wpis na Facebooku}{wpis na Facebooku}},
+ tweet = {{wpis na Twitterze}{wpis na Twitterze}},
+ podcast = {{podcast}{podcast}},
+ clip = {{wideo}{wideo}},
+ webcast = {{webcast}{webcast}},
+ poster = {{plakat}{plakat}},
+ nolocation = {{bez miejsca}{b\adddot m\adddot}},
+ modified = {{ostatnio zmodyfikowany}{ostatnio zmodyf\adddot}},
+ recorded = {{nagrane}{nagr\adddot}},
+ uploaded = {{za\l adowane}{za\l ad\adddot}},
+ filed = {{wniesione}{wniesione}},
+ issued = {{wydany}{wyd\adddot}},
+ anon = {{Anonim}{Anon\adddot}},
+ pseudo = {{Pseudo-}{Ps\adddot-}},
+ urldown = {{pobrane}{pobrane}},
+ countryjp = {{Japonia}{JP}},
+ patentjp = {{japo\'{n}ski patent}{jap\adddotspace pat\adddot}},
+ patreqjp = {{japo\'{n}ski wniosek patentowy}{jap\adddotspace wniosek pat\adddot}},
+ 1column = {{jedna kolumna}{1\addnbspace kol\adddot}},
+ 2column = {{dwie kolumny}{2\addnbspace kol\adddot}},
+ inflayer = {{warstwa ni\.{z}sza}{warstwa ni\.{z}sza}},
+ suplayer = {{warstwa wy\.{z}sza}{warstwa wy\.{z}sza}},
+ paper = {{gazeta}{gazeta}},
+ papyrus = {{papirus}{papirus}},
+ parchment = {{pergamin}{pergamin}},
+ eucase = {{sprawa}{sprawa}},
+ eujoinedcases = {{po\l \k{a}czone sprawy}{po\l \k{a}czone sprawy}},
+ commissiondecision = {{decyzja komisji}{decyzja komisji}},
+ application = {{wniosek}{wniosek}},
+ order = {{polecenie}{polecenie}},
+ bill = {{rachunek}{rachunek}},
+ draft = {{projekt}{proj\adddot}},
+ opened = {{przed\l o\.{z}one do podpisu}{przed\l\adddotspace do podp\adddot}},
+ signed = {{podpisane}{podpisane}},
+ adopted = {{przyj\k{e}te}{przyj\k{e}te}},
+ inforce = {{wesz\l o w~\.{z}ycie}{wesz\l o w~\.{z}ycie}},
+ byeditor = {{redakcja}{red\adddot}},
+ bycompiler = {{opracowanie}{oprac\adddot}},
+ byfounder = {{za\l o\.{z}one przez}{za\l o\.{z}\adddotspace przez}},
+ bycontinuator = {{kontynuowane przez}{kont\adddotspace przez}},
+ byredactor = {{redakcja}{red\adddot}},
+ byreviser = {{poprawki}{popr\adddot}},
+ byreviewer = {{recenzja}{rec\adddot}},
+ bycollaborator = {{we wsp\'{o}\l pracy z}{we wsp\'{o}\l pr\adddotspace z}},
+ bytranslator = {{t\l umaczenie}{t\l um\adddot}},
+ bycommentator = {{komentarz}{kom\adddot}},
+ byannotator = {{obja\'{s}nienia}{obja\'{s}n\adddot}},
+ byeditortr = {{redakcja i~t\l umaczenie}%
+ {red\adddotspace i~t\l um\adddot}},
+ byeditorco = {{redakcja i~komentarz}%
+ {red\adddotspace i~kom\adddot}},
+ byeditoran = {{redakcja i~obja\'{s}nienia}%
+ {red\adddotspace i~obja\'{s}n\adddot}},
+ byeditorin = {{redakcja i~wst\k{e}p}%
+ {red\adddotspace i~wst\k{e}p}},
+ byeditorfo = {{redakcja i~przedmowa}%
+ {red\adddotspace i~przedm\adddot}},
+ byeditoraf = {{redakcja i~pos\l owie}%
+ {red\adddotspace i~pos\l \adddot}},
+ byeditortrco = {{redakcja, t\l umaczenie i~komentarz}%
+ {red.,\addabbrvspace t\l um.,\addabbrvspace kom\adddot}},
+ byeditortran = {{redakcja, t\l umaczenie i~obja\'{s}nienia}%
+ {red.,\addabbrvspace t\l um.,\addabbrvspace obja\'{s}n\adddot}},
+ byeditortrin = {{redakcja, t\l umaczenie, wst\k{e}p}%
+ {red.,\addabbrvspace t\l um.,\addabbrvspace wst\k{e}p}},
+ byeditortrfo = {{redakcja, t\l umaczenie, przedmowa}%
+ {red.,\addabbrvspace t\l um.,\addabbrvspace przedm\adddot}},
+ byeditortraf = {{redakcja, t\l umaczenie, pos\l \adddot}%
+ {red.,\addabbrvspace t\l um.,\addabbrvspace pos\l \adddot}},
+ byeditorcoin = {{redakcja, komentarz, wst\k{e}p}%
+ {red.,\addabbrvspace kom.,\addabbrvspace wst\k{e}p}},
+ byeditorcofo = {{redakcja, komentarz i~przedmowa}%
+ {red.,\addabbrvspace kom.,\addabbrvspace przedm\adddot}},
+ byeditorcoaf = {{redakcja, komentarz, pos\l owie}%
+ {red.,\addabbrvspace kom.,\addabbrvspace pos\l \adddot}},
+ byeditoranin = {{redakcja, obja\'{s}nienia, wst\k{e}p}%
+ {red.,\addabbrvspace obja\'{s}n.,\addabbrvspace wst\k{e}p}},
+ byeditoranfo = {{redakcja, obja\'{s}nienia, przedmowa}%
+ {red.,\addabbrvspace obja\'{s}n.,\addabbrvspace przedm\adddot}},
+ byeditoranaf = {{redakcja, obja\'{s}nienia, pos\l owie}%
+ {red.,\addabbrvspace obja\'{s}n.,\addabbrvspace pos\l \adddot}},
+ byeditortrcoin = {{redakcja, t\l umaczenie, komentarz, wst\k{e}p}%
+ {red.,\addabbrvspace t\l um.,\addabbrvspace kom.,\addabbrvspace wst\k{e}p}},
+ byeditortrcofo = {{redakcja, t\l umaczenie, komentarz, przedmowa}%
+ {red.,\addabbrvspace t\l um.,\addabbrvspace kom.,\addabbrvspace przedm\adddot}},
+ byeditortrcoaf = {{redakcja, t\l umaczenie, komentarz, pos\l owie}%
+ {red.,\addabbrvspace t\l um.,\addabbrvspace kom.,\addabbrvspace pos\l \adddot}},
+ byeditortranin = {{redakcja, t\l umaczenie, obja\'{s}nienia, wst\k{e}p}%
+ {red.,\addabbrvspace t\l um.,\addabbrvspace obja\'{s}n.,\addabbrvspace wst\k{e}p}},
+ byeditortranfo = {{redakcja, t\l umaczenie, obja\'{s}nienia, przedmowa}%
+ {red.,\addabbrvspace t\l um.,\addabbrvspace obja\'{s}n.,\addabbrvspace przedm\adddot}},
+ byeditortranaf = {{redakcja, t\l umaczenie, obja\'{s}nienia, pos\l owie}%
+ {red.,\addabbrvspace t\l um.,\addabbrvspace obja\'{s}n.,\addabbrvspace pos\l \adddot}},
+ bytranslatorco = {{t\l umaczenie i~komentarz}%
+ {t\l um\adddotspace i~kom\adddot}},
+ bytranslatoran = {{t\l umaczenie i~obja\'{s}nienia}%
+ {t\l um\adddotspace i~obja\'{s}n\adddot}},
+ bytranslatorin = {{t\l umaczenie i~wst\k{e}p}%
+ {t\l um.,\addabbrvspace wst\k{e}p}},
+ bytranslatorfo = {{t\l umaczenie i~przedmowa}%
+ {t\l um.,\addabbrvspace przedm\adddot}},
+ bytranslatoraf = {{t\l umaczenie i~pos\l owie}%
+ {t\l um.,\addabbrvspace pos\l \adddot}},
+ bytranslatorcoin = {{t\l umaczenie, komentarz i~wst\k{e}p}%
+ {t\l um.,\addabbrvspace kom.,\addabbrvspace wst\k{e}p}},
+ bytranslatorcofo = {{t\l umaczenie, komentarz i~przedmowa}%
+ {t\l um.,\addabbrvspace kom.,\addabbrvspace przedm\adddot}},
+ bytranslatorcoaf = {{t\l umaczenie, komentarz i~pos\l owie}%
+ {t\l um.,\addabbrvspace kom.,\addabbrvspace pos\l \adddot}},
+ bytranslatoranin = {{t\l umaczenie, obja\'{s}nienia i~wst\k{e}p}%
+ {t\l um.,\addabbrvspace obja\'{s}n.,\addabbrvspace wst\k{e}p}},
+ bytranslatoranfo = {{t\l umaczenie, obja\'{s}nienia i~przedmowa}%
+ {t\l um.,\addabbrvspace obja\'{s}n.,\addabbrvspace przedm\adddot}},
+ bytranslatoranaf = {{t\l umaczenie, obja\'{s}nienia i~pos\l owie}%
+ {t\l um.,\addabbrvspace obja\'{s}n.,\addabbrvspace pos\l \adddot}},
+ withcommentator = {{komentarz}{komentarz}},
+ withannotator = {{obja\'{s}nienia}{obja\'{s}nienia}},
+ withintroduction = {{wst\k{e}p}{wst\k{e}p}},
+ withforeword = {{przedmowa}{przedmowa}},
+ withafterword = {{pos\l owie}{pos\l owie}},
+ introduction = {{wst\k{e}p}{wst\k{e}p}},
+ newseries = {{nowa seria}{nowa seria}},
+ oldseries = {{dawna seria}{dawna seria}},
+ edition = {{wydanie}{wyd\adddot}},
+ reviewof = {{recenzja}{rec\adddot}},
+ reprintfrom = {{przedruk z}{przedr\adddotspace z}},
+ translationas = {{t\l umaczenie polskie}{t\l um\adddotspace pol\adddotspace}},
+ origpubin = {{pierwodruk w}{pierwodr\adddotspace w}},
+ paragraph = {{ust\k{e}p}{ust\adddot}},
+ paragraphs = {{ust\k{e}py}{ust\adddot}},
+ urlseen = {{dost\k{e}p}{dost\k{e}p}},
+ idem = {{idem}{id\adddot}},
+ idemsm = {{idem}{id\adddot}},
+ idemsf = {{eadem}{ead\adddot}},
+ idemsn = {{idem}{id\adddot}},
+ idempm = {{eidem}{eid\adddot}},
+ idempf = {{eaedem}{eaed\adddot}},
+ idempn = {{eadem}{ead\adddot}},
+ idempp = {{eidem}{eid\adddot}},
+ citedas = {{dalej}{dalej}},
+ thiscite = {{na}{na}},
+ langamerican = {{ameryka\'{n}ski angielski}{amer\adddotspace ang\adddot}},
+ langbasque = {{baskijski}{bask\adddot}},
+ langbrazilian = {{brazylijski portugalski}{braz\adddot port\adddot}},
+ langbulgarian = {{bu\l garski}{bu\l g\adddot}},
+ langcatalan = {{katalo\'{n}ski}{katal\adddot}},
+ langcroatian = {{chorwacki}{chorw\adddot}},
+ langczech = {{czeski}{czeski}},
+ langdanish = {{du\'{n}ski}{du\'{n}\adddot}},
+ langdutch = {{holenderski}{holend\adddot}},
+ langenglish = {{angielski}{ang\adddot}},
+ langestonian = {{esto\'{n}ski}{est\adddot}},
+ langfinnish = {{fi\'{n}ski}{fi\'{n}\adddot}},
+ langfrench = {{francuski}{fr\adddot}},
+ langgalician = {{galicyjski}{galic\adddot}},
+ langgerman = {{niemiecki}{niem\adddot}},
+ langgreek = {{grecki}{gr\adddot}},
+ langhungarian = {{w\k{e}gierski}{w\k{e}g\adddot}},
+ langitalian = {{w\l oski}{w\l \adddot}},
+ langjapanese = {{japo\'{n}ski}{jap\adddot}},
+ langlatin = {{\l aci\'{n}ski}{\l ac\adddot}},
+ langlatvian = {{\l otewski}{\l ot\adddot}},
+ langlithuanian = {{litewski}{lit\adddot}},
+ langmarathi = {{marathi}{mar\adddot}},
+ langnorwegian = {{norweski}{norw\adddot}},
+ langpolish = {{polski}{pol\adddot}},
+ langportuguese = {{portugalski}{port\adddot}},
+ langromanian = {{rumu\'{n}ski}{rum\adddot}},
+ langrussian = {{rosyjski}{ros\adddot}},
+ langserbian = {{serbski}{serb\adddot}},
+ langslovak = {{s\l owacki}{s\l c\adddot}},
+ langslovene = {{s\l owe\'{n}ski}{s\l owe\'{n}\adddot}},
+ langspanish = {{hiszpa\'{n}ski}{hiszp\adddot}},
+ langswedish = {{szwedzki}{szw\adddot}},
+ langturkish = {{turecki}{tur\adddot}},
+ langukrainian = {{ukrai\'{n}ski}{ukr\adddot}},
+}
+%%
+%% Copyright (C) 2016–2023 Alex Ball
+%%
+%% End of file `polish-oxref.lbx'.
diff --git a/Master/texmf-dist/tex/latex/biblatex-oxref/spanish-oxref.lbx b/Master/texmf-dist/tex/latex/biblatex-oxref/spanish-oxref.lbx
index d0f2a9e700f..6bf12a1ba55 100644
--- a/Master/texmf-dist/tex/latex/biblatex-oxref/spanish-oxref.lbx
+++ b/Master/texmf-dist/tex/latex/biblatex-oxref/spanish-oxref.lbx
@@ -13,7 +13,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/11/23 v3.2}
+\def\Version{2024/08/26 v3.3}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesFile{spanish-oxref.lbx}
[\Version\space Spanish conventions required by the biblatex-oxref styles]
@@ -133,11 +133,11 @@
byfounder = {{fundado por}{fund\adddotspace}},
bycontinuator = {{continuado por}{cont\adddotspace}},
bycollaborator = {{colaboraci\'on de}{col\adddotspace de}},
- bytranslator = {{traducido \lbx@lfromlang\ por}{trad\adddotspace \lbx@sfromlang}},
+ bytranslator = {{traducido por}{trad\adddotspace}},
bycommentator = {{comentado por}{com\adddotspace}},
byannotator = {{anotado por}{anot\adddotspace}},
- byeditortr = {{editado y traducido \lbx@lfromlang\ por}%
- {ed\adddotspace y trad\adddotspace \lbx@sfromlang}},
+ byeditortr = {{editado y traducido por}%
+ {ed\adddotspace y trad\adddotspace}},
byeditorco = {{editado y comentado por}%
{ed\adddotspace y com\adddotspace }},
byeditoran = {{edici\'on y notas de}%
@@ -148,16 +148,16 @@
{ed\adddotspace y pr\'ol\adddotspace}},
byeditoraf = {{edici\'on y ep\'ilogo de}%
{ed\adddotspace y ep\'il\adddotspace}},
- byeditortrco = {{editado, traducido \lbx@lfromlang\ y comentado por}%
- {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang\ y com\adddotspace}},
- byeditortran = {{edici\'on, traducci\'on \lbx@lfromlang\ y notas de}%
- {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang\ y not\adddotspace}},
- byeditortrin = {{edici\'on, traducci\'on \lbx@lfromlang\ e introducci\'on de}%
- {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang\ e intr\adddotspace}},
- byeditortrfo = {{edici\'on, traducci\'on \lbx@lfromlang\ y pr\'ologo de}%
- {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang\ y pr\'ol\adddotspace}},
- byeditortraf = {{editado, traducido \lbx@lfromlang\ y epilogado}%
- {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang\ y ep\'il\adddotspace}},
+ byeditortrco = {{editado, traducido y comentado por}%
+ {ed.,\addabbrvspace trad\adddotspace y com\adddotspace}},
+ byeditortran = {{edici\'on, traducci\'on y notas de}%
+ {ed.,\addabbrvspace trad\adddotspace y not\adddotspace}},
+ byeditortrin = {{edici\'on, traducci\'on e introducci\'on de}%
+ {ed.,\addabbrvspace trad\adddotspace e intr\adddotspace}},
+ byeditortrfo = {{edici\'on, traducci\'on y pr\'ologo de}%
+ {ed.,\addabbrvspace trad\adddotspace y pr\'ol\adddotspace}},
+ byeditortraf = {{editado, traducido y epilogado}%
+ {ed.,\addabbrvspace trad\adddotspace y ep\'il\adddotspace}},
byeditorcoin = {{editado, comentado e introducido}%
{ed.,\addabbrvspace com\adddotspace e intr\adddotspace}},
byeditorcofo = {{edici\'on, comentarios y pr\'ologo de}%
@@ -170,40 +170,40 @@
{ed.,\addabbrvspace anot\adddotspace y pr\'ol\adddotspace}},
byeditoranaf = {{edici\'on, notas y ep\'ilogo de}%
{ed.,\addabbrvspace anot\adddotspace y ep\'il\adddotspace}},
- byeditortrcoin = {{edici\'on, traducci\'on \lbx@lfromlang, comentarios e introducci\'on de}%
- {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang, com\adddotspace e intr\adddotspace}},
- byeditortrcofo = {{edici\'on, traducci\'on \lbx@lfromlang, comentarios y pr\'ologo de}%
- {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang, com\adddotspace y pr\'ol\adddotspace}},
- byeditortrcoaf = {{edici\'on, traducci\'on \lbx@lfromlang, comentarios y ep\'ilogo de}%
- {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang, com\adddotspace y ep\'il\adddotspace}},
- byeditortranin = {{edici\'on, traducci\'on \lbx@lfromlang, notas e introducci\'on de}%
- {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang, anot\adddotspace e intr\adddotspace}},
- byeditortranfo = {{edici\'on, traducci\'on \lbx@lfromlang, notas y pr\'ologo de}%
- {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang, anot\adddotspace y pr\'ol\adddotspace}},
- byeditortranaf = {{edici\'on, traducci\'on \lbx@lfromlang, notas y ep\'ilogo de}%
- {ed.,\addabbrvspace trad\adddotspace \lbx@sfromlang, anot\adddotspace y ep\'il\adddotspace}},
- bytranslatorco = {{traducci\'on \lbx@lfromlang\ y comentarios de}%
- {trad\adddotspace \lbx@sfromlang\ y com\adddotspace}},
- bytranslatoran = {{traducci\'on \lbx@lfromlang\ y notas de}%
- {trad\adddotspace \lbx@sfromlang\ y not\adddotspace}},
- bytranslatorin = {{traducci\'on \lbx@lfromlang\ e introducci\'on de}%
- {trad\adddotspace \lbx@sfromlang\ e introd\adddotspace}},
- bytranslatorfo = {{traducci\'on \lbx@lfromlang\ y pr\'ologo de}%
- {trad\adddotspace \lbx@sfromlang\ y pr\'ol\adddotspace}},
- bytranslatoraf = {{traducci\'on \lbx@lfromlang\ y ep\'ilogo de}%
- {trad\adddotspace \lbx@sfromlang\ y ep\'il\adddotspace}},
- bytranslatorcoin = {{traducci\'on \lbx@lfromlang, comentarios e introducci\'on de}%
- {trad\adddotspace \lbx@sfromlang, com\adddotspace e intr\adddotspace}},
- bytranslatorcofo = {{traducci\'on \lbx@lfromlang, comentarios y pr\'ologo de}%
- {trad\adddotspace \lbx@sfromlang, com\adddotspace y pr\'ol\adddotspace}},
- bytranslatorcoaf = {{traducci\'on \lbx@lfromlang, comentarios y ep\'ilogo de}%
- {trad\adddotspace \lbx@sfromlang, com\adddotspace y ep\'il\adddotspace}},
- bytranslatoranin = {{traducci\'on \lbx@lfromlang, notas e introducci\'on de}%
- {trad\adddotspace \lbx@sfromlang, anot\adddotspace e intr\adddotspace}},
- bytranslatoranfo = {{traducci\'on \lbx@lfromlang, notas y pr\'ologo}%
- {trad\adddotspace \lbx@sfromlang, anot\adddotspace y pr\'ol\adddotspace}},
- bytranslatoranaf = {{traducci\'on \lbx@lfromlang, notas y ep\'ilogo}%
- {trad\adddotspace \lbx@sfromlang, anot\adddotspace y ep\'il\adddotspace}},
+ byeditortrcoin = {{edici\'on, traducci\'on, comentarios e introducci\'on de}%
+ {ed.,\addabbrvspace trad.,\addabbrvspace com\adddotspace e intr\adddotspace}},
+ byeditortrcofo = {{edici\'on, traducci\'on, comentarios y pr\'ologo de}%
+ {ed.,\addabbrvspace trad.,\addabbrvspace com\adddotspace y pr\'ol\adddotspace}},
+ byeditortrcoaf = {{edici\'on, traducci\'on, comentarios y ep\'ilogo de}%
+ {ed.,\addabbrvspace trad.,\addabbrvspace com\adddotspace y ep\'il\adddotspace}},
+ byeditortranin = {{edici\'on, traducci\'on, notas e introducci\'on de}%
+ {ed.,\addabbrvspace trad.,\addabbrvspace anot\adddotspace e intr\adddotspace}},
+ byeditortranfo = {{edici\'on, traducci\'on, notas y pr\'ologo de}%
+ {ed.,\addabbrvspace trad.,\addabbrvspace anot\adddotspace y pr\'ol\adddotspace}},
+ byeditortranaf = {{edici\'on, traducci\'on, notas y ep\'ilogo de}%
+ {ed.,\addabbrvspace trad.,\addabbrvspace anot\adddotspace y ep\'il\adddotspace}},
+ bytranslatorco = {{traducci\'on y comentarios de}%
+ {trad\adddotspace y com\adddotspace}},
+ bytranslatoran = {{traducci\'on y notas de}%
+ {trad\adddotspace y not\adddotspace}},
+ bytranslatorin = {{traducci\'on e introducci\'on de}%
+ {trad\adddotspace e introd\adddotspace}},
+ bytranslatorfo = {{traducci\'on y pr\'ologo de}%
+ {trad\adddotspace y pr\'ol\adddotspace}},
+ bytranslatoraf = {{traducci\'on y ep\'ilogo de}%
+ {trad\adddotspace y ep\'il\adddotspace}},
+ bytranslatorcoin = {{traducci\'on, comentarios e introducci\'on de}%
+ {trad.,\addabbrvspace com\adddotspace e intr\adddotspace}},
+ bytranslatorcofo = {{traducci\'on, comentarios y pr\'ologo de}%
+ {trad.,\addabbrvspace com\adddotspace y pr\'ol\adddotspace}},
+ bytranslatorcoaf = {{traducci\'on, comentarios y ep\'ilogo de}%
+ {trad.,\addabbrvspace com\adddotspace y ep\'il\adddotspace}},
+ bytranslatoranin = {{traducci\'on, notas e introducci\'on de}%
+ {trad.,\addabbrvspace anot\adddotspace e intr\adddotspace}},
+ bytranslatoranfo = {{traducci\'on, notas y pr\'ologo}%
+ {trad.,\addabbrvspace anot\adddotspace y pr\'ol\adddotspace}},
+ bytranslatoranaf = {{traducci\'on, notas y ep\'ilogo}%
+ {trad.,\addabbrvspace anot\adddotspace y ep\'il\adddotspace}},
withcommentator = {{con comentario de}{con comentario de}},
withannotator = {{con notas de}{con notas de}},
withintroduction = {{con introduci\'on de}{con introduci\'on de}},
@@ -217,38 +217,50 @@
translationas = {{traducido espa\~nol como}{trad\adddotspace espa\~nol como}},
origpubin = {{publicado originalmente en}{pub\adddot orig\adddotspace}},
urlseen = {{accedido}{accedido}},
+ idem = {{idem}{id\adddot}},
+ idemsm = {{idem}{id\adddot}},
+ idemsf = {{eadem}{ead\adddot}},
+ idemsn = {{idem}{id\adddot}},
+ idempm = {{eidem}{eid\adddot}},
+ idempf = {{eaedem}{eaed\adddot}},
+ idempn = {{eadem}{ead\adddot}},
+ idempp = {{eidem}{eid\adddot}},
citedas = {{en adelante}{en adelante}},
thiscite = {{en}{en}},
- langamerican = {{ingl\'es americano}{ing\adddotspace amer\adddotspace}},
- langbrazilian = {{brasile\~no}{por\adddotspace bras\adddotspace}},
- langbulgarian = {{b\'ulgaro}{bul\adddotspace}},
- langcatalan = {{catal\'an}{cat\adddotspace}},
- langcroatian = {{croata}{hrv\adddotspace}},
- langczech = {{checo}{ces\adddotspace}},
- langdanish = {{dan\'es}{dan\adddotspace}},
- langdutch = {{neerland\'es}{nld\adddotspace}},
- langenglish = {{ingl\'es}{ing\adddotspace}},
- langestonian = {{estonio}{est\adddotspace}},
- langfinnish = {{fin\'es}{fin\adddotspace}},
- langfrench = {{franc\'es}{fra\adddotspace}},
- langgalician = {{gallego}{glg\adddotspace}},
- langgerman = {{alem\'an}{ale\adddotspace}},
- langgreek = {{griego}{gr\adddotspace}},
- langhungarian = {{h\'ungaro}{hun\adddotspace}},
- langitalian = {{italiano}{ita\adddotspace}},
- langjapanese = {{japon\'es}{jap\adddotspace}},
- langlatin = {{lat\'in}{lat\adddotspace}},
- langlatvian = {{lituano}{lit\adddotspace}},
- langnorwegian = {{noruego}{nor\adddotspace}},
- langpolish = {{polaco}{pol\adddotspace}},
- langportuguese = {{portugu\'es}{port\adddotspace}},
- langrussian = {{ruso}{rus\adddotspace}},
- langserbian = {{serbio}{srp\adddotspace}},
- langslovak = {{eslovaco}{slk\adddotspace}},
- langslovene = {{esloveno}{slv\adddotspace}},
- langspanish = {{espa\~nol}{esp\adddotspace}},
+ langamerican = {{ingl\'es americano}{ing\adddotspace amer\adddot}},
+ langbasque = {{vasco}{vasc\adddot}},
+ langbrazilian = {{portugu\'es brasile\~no}{por\adddotspace bras\adddot}},
+ langbulgarian = {{b\'ulgaro}{bul\adddot}},
+ langcatalan = {{catal\'an}{cat\adddot}},
+ langcroatian = {{croata}{hrv\adddot}},
+ langczech = {{checo}{ces\adddot}},
+ langdanish = {{dan\'es}{dan\adddot}},
+ langdutch = {{neerland\'es}{nld\adddot}},
+ langenglish = {{ingl\'es}{ing\adddot}},
+ langestonian = {{estonio}{est\adddot}},
+ langfinnish = {{fin\'es}{fin\adddot}},
+ langfrench = {{franc\'es}{fra\adddot}},
+ langgalician = {{gallego}{glg\adddot}},
+ langgerman = {{alem\'an}{ale\adddot}},
+ langgreek = {{griego}{gr\adddot}},
+ langhungarian = {{h\'ungaro}{hun\adddot}},
+ langitalian = {{italiano}{ita\adddot}},
+ langjapanese = {{japon\'es}{jap\adddot}},
+ langlatin = {{lat\'in}{lat\adddot}},
+ langlatvian = {{let\'on}{let\adddot}},
+ langlithuanian = {{lituano}{lit\adddot}},
+ langmarathi = {{marathi}{mar\adddot}},
+ langnorwegian = {{noruego}{nor\adddot}},
+ langpolish = {{polaco}{pol\adddot}},
+ langportuguese = {{portugu\'es}{port\adddot}},
+ langrussian = {{ruso}{rus\adddot}},
+ langserbian = {{serbio}{srp\adddot}},
+ langslovak = {{eslovaco}{slk\adddot}},
+ langslovene = {{esloveno}{slv\adddot}},
+ langspanish = {{espa\~nol}{esp\adddot}},
langswedish = {{sueco}{sueco}},
- langukrainian = {{ucraniano}{ucr\adddotspace}},
+ langturkish = {{turco}{turco}},
+ langukrainian = {{ucraniano}{ucr\adddot}},
}
%%
%% Copyright (C) 2016–2023 Alex Ball
diff --git a/Master/texmf-dist/tex/latex/biblatex-phys/phys.bbx b/Master/texmf-dist/tex/latex/biblatex-phys/phys.bbx
index 442f4feae5c..336f90e5474 100644
--- a/Master/texmf-dist/tex/latex/biblatex-phys/phys.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-phys/phys.bbx
@@ -2,13 +2,13 @@
%% biblatex-phys --- A biblatex implementation of the AIP and APS
%% bibliography style
%% Maintained by Joseph Wright
-%% E-mail: joseph.wright@morningstar2.co.uk
+%% E-mail: joseph@texdev.net
%% Released under the LaTeX Project Public License v1.3c or later
%% See http://www.latex-project.org/lppl.txt
%% ---------------------------------------------------------------
%%
-\ProvidesFile{phys.bbx}[2019/12/03 v1.1b biblatex bibliography style]
+\ProvidesFile{phys.bbx}[2024/07/26 v1.1c biblatex bibliography style]
% Load the standard style to avoid copy-pasting unnecessary material
\RequireBibliographyStyle{numeric-comp}
@@ -464,14 +464,15 @@
\printfield{pages}%
\iffieldundef{pages}
{%
- \printfield{doi}%
- \clearfield{doi}%
- }%
- {%
- \iftoggle{bbx:doi}
- {}
- {\clearfield{doi}}%
- }%
+ \iffieldundef{eid}
+ {%
+ \iftoggle{bbx:doi}
+ {}
+ {\printfield{doi}}%
+ }
+ {}%
+ }
+ {}%
}
\newbibmacro*{related:translatedas}[1]{%
@@ -495,8 +496,8 @@
%%
-%% Copyright (C) 2012-2014,2016,2018,2019 by
-%% Joseph Wright <joseph.wright@morningstar2.co.uk>
+%% Copyright (C) 2012-2014,2016,2018-2020,2023,2024 by
+%% Joseph Wright <joseph@texdev.net>
%%
%% It may be distributed and/or modified under the conditions of
%% the LaTeX Project Public License (LPPL), either version 1.3c of
diff --git a/Master/texmf-dist/tex/latex/biblatex-phys/phys.cbx b/Master/texmf-dist/tex/latex/biblatex-phys/phys.cbx
index 7758bc0a2b5..4452bd71133 100644
--- a/Master/texmf-dist/tex/latex/biblatex-phys/phys.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-phys/phys.cbx
@@ -2,13 +2,13 @@
%% biblatex-phys --- A biblatex implementation of the AIP and APS
%% bibliography style
%% Maintained by Joseph Wright
-%% E-mail: joseph.wright@morningstar2.co.uk
+%% E-mail: joseph@texdev.net
%% Released under the LaTeX Project Public License v1.3c or later
%% See http://www.latex-project.org/lppl.txt
%% ---------------------------------------------------------------
%%
-\ProvidesFile{phys.cbx}[2019/12/03 v1.1b biblatex citation style]
+\ProvidesFile{phys.cbx}[2024/07/26 v1.1c biblatex citation style]
\RequireCitationStyle{numeric-comp}
@@ -20,8 +20,8 @@
}
%%
-%% Copyright (C) 2012-2014,2016,2018,2019 by
-%% Joseph Wright <joseph.wright@morningstar2.co.uk>
+%% Copyright (C) 2012-2014,2016,2018,2019,2024 by
+%% Joseph Wright <joseph@texdev.net>
%%
%% It may be distributed and/or modified under the conditions of
%% the LaTeX Project Public License (LPPL), either version 1.3c of
diff --git a/Master/texmf-dist/tex/latex/biblatex-phys/phys.dbx b/Master/texmf-dist/tex/latex/biblatex-phys/phys.dbx
index c47ca1e2d93..388e7ee4355 100644
--- a/Master/texmf-dist/tex/latex/biblatex-phys/phys.dbx
+++ b/Master/texmf-dist/tex/latex/biblatex-phys/phys.dbx
@@ -2,19 +2,19 @@
%% biblatex-phys --- A biblatex implementation of the AIP and APS
%% bibliography style
%% Maintained by Joseph Wright
-%% E-mail: joseph.wright@morningstar2.co.uk
+%% E-mail: joseph@texdev.net
%% Released under the LaTeX Project Public License v1.3c or later
%% See http://www.latex-project.org/lppl.txt
%% ---------------------------------------------------------------
%%
-\ProvidesFile{phys.dbx}[2019/12/03 v1.1b biblatex database model extension]
+\ProvidesFile{phys.dbx}[2024/07/26 v1.1c biblatex database model extension]
\DeclareDatamodelFields[type=field, datatype=literal]{collaboration}
%%
-%% Copyright (C) 2012-2014,2016,2018,2019 by
-%% Joseph Wright <joseph.wright@morningstar2.co.uk>
+%% Copyright (C) 2012-2014,2016,2018,2019,2024 by
+%% Joseph Wright <joseph@texdev.net>
%%
%% It may be distributed and/or modified under the conditions of
%% the LaTeX Project Public License (LPPL), either version 1.3c of
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/lbx/UKenglish-publist.lbx b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/UKenglish-publist.lbx
new file mode 100644
index 00000000000..0b5cce13f51
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/UKenglish-publist.lbx
@@ -0,0 +1,37 @@
+% UKenglish-publist.lbx, extra localizations for biblatex-publist
+%
+% 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 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Jürgen Spitzmüller.
+%
+% This work consists of the file publist.bbx
+%
+%
+% This file adds some additional localizations that are used by
+% the biblatex-publist bibliography style
+%
+% Please send suggestions and bug reports to
+% https://github.com/jspitz/biblatex-publist
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\bpl@version{2.13}
+\def\bpl@rdate{2024/08/21}
+
+\ProvidesFile{UKenglish-publist.lbx}[\bpl@rdate\space v.\bpl@version\space
+ biblatex-publist UK English localisation (JSP)]
+
+% Inherit english
+\InheritBibliographyStrings{british}
+\InheritBibliographyExtras{british}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/lbx/USenglish-publist.lbx b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/USenglish-publist.lbx
new file mode 100644
index 00000000000..cc6526761d5
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/USenglish-publist.lbx
@@ -0,0 +1,37 @@
+% USenglish-publist.lbx, extra localizations for biblatex-publist
+%
+% 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 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Jürgen Spitzmüller.
+%
+% This work consists of the file publist.bbx
+%
+%
+% This file adds some additional localizations that are used by
+% the biblatex-publist bibliography style
+%
+% Please send suggestions and bug reports to
+% https://github.com/jspitz/biblatex-publist
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\bpl@version{2.13}
+\def\bpl@rdate{2024/08/21}
+
+\ProvidesFile{USenglish-publist.lbx}[\bpl@rdate\space v.\bpl@version\space
+ biblatex-publist US English localisation (JSP)]
+
+% Inherit english
+\InheritBibliographyStrings{english}
+\InheritBibliographyExtras{english}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/lbx/american-publist.lbx b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/american-publist.lbx
new file mode 100644
index 00000000000..5476f022ab0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/american-publist.lbx
@@ -0,0 +1,37 @@
+% american-publist.lbx, extra localizations for biblatex-publist
+%
+% 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 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Jürgen Spitzmüller.
+%
+% This work consists of the file publist.bbx
+%
+%
+% This file adds some additional localizations that are used by
+% the biblatex-publist bibliography style
+%
+% Please send suggestions and bug reports to
+% https://github.com/jspitz/biblatex-publist
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\bpl@version{2.13}
+\def\bpl@rdate{2024/08/21}
+
+\ProvidesFile{american-publist.lbx}[\bpl@rdate\space v.\bpl@version\space
+ biblatex-publist US English localisation (JSP)]
+
+% Inherit english
+\InheritBibliographyStrings{english}
+\InheritBibliographyExtras{english}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/lbx/australian-publist.lbx b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/australian-publist.lbx
new file mode 100644
index 00000000000..0df359aa827
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/australian-publist.lbx
@@ -0,0 +1,37 @@
+% australian-publist.lbx, extra localizations for biblatex-publist
+%
+% 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 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Jürgen Spitzmüller.
+%
+% This work consists of the file publist.bbx
+%
+%
+% This file adds some additional localizations that are used by
+% the biblatex-publist bibliography style
+%
+% Please send suggestions and bug reports to
+% https://github.com/jspitz/biblatex-publist
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\bpl@version{2.13}
+\def\bpl@rdate{2024/08/21}
+
+\ProvidesFile{australian-publist.lbx}[\bpl@rdate\space v.\bpl@version\space
+ biblatex-publist AU English localisation (JSP)]
+
+% Inherit english
+\InheritBibliographyStrings{british}
+\InheritBibliographyExtras{british}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/lbx/austrian-publist.lbx b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/austrian-publist.lbx
new file mode 100644
index 00000000000..0a82a48b773
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/austrian-publist.lbx
@@ -0,0 +1,58 @@
+% austrian-publist.lbx, extra localizations for biblatex-publist
+%
+% 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 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Jürgen Spitzmüller.
+%
+% This work consists of the file publist.bbx
+%
+%
+% This file adds some additional localizations that are used by
+% the biblatex-publist bibliography style
+%
+% Please send suggestions and bug reports to
+% https://github.com/jspitz/biblatex-publist
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\bpl@version{2.13}
+\def\bpl@rdate{2024/08/21}
+
+\ProvidesFile{austrian-publist.lbx}[\bpl@rdate\space v.\bpl@version\space
+ biblatex-publist Austrian localisation (JSP)]
+
+% Inherit general localization
+\InheritBibliographyExtras{austrian}
+
+% Localizations
+\DeclareBibliographyStrings{%
+ inherit = {austrian},
+ peerreview:pp = {{Post-Publication-Begutachtung}{Post-Pub\adddot-Beg\adddot}},
+ with = {{mit}{mit}},
+ citations = {{Zitationen}{Zit\adddot}},
+ impactfactor = {{Impactfaktor}{JIF}},
+ openaccess:true = {{OpenAccess}{OA}},
+ openaccess:gold = {{OpenAccess (gold)}{OA (gold)}},
+ openaccess:green = {{OpenAccess (gr\"un)}{OA (gr\"un)}},
+ peerreview:sb = {{Blindbegutachtung}{Blindbeg\adddot}},
+ peerreview:db = {{Doppelblindbegutachtung}{Doppelblindbeg\adddot}},
+ peerreview:op = {{Offene Begutachtung}{Offene Beg\adddot}},
+ peerreview:co = {{Kollaborative Begutachtung}{Kollab\adddotespace Beg\adddot}},
+ peerreview:cc = {{Cascading-Begutachtung}{Cascading-Beg\adddot}},
+ peerreview:tp = {{Begutachtung durch Dritte}{Beg\adddotspace durch Dritte}},
+ peerreview:pp = {{Post-Publication-Begutachtung}{Post-Pub\adddot-Beg\adddot}},
+ peerreview:no = {{keine Begutachtung}{keine Beg\adddot}},
+ annot:main = {{Hauptautor}{Hauptaut\adddot}},
+ annot:corresponding = {{Korrespondenzautor}{Korr.-aut\adddot}}
+}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/lbx/british-publist.lbx b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/british-publist.lbx
new file mode 100644
index 00000000000..b1dbaea5be3
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/british-publist.lbx
@@ -0,0 +1,58 @@
+% british-publist.lbx, extra localizations for biblatex-publist
+%
+% 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 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Jürgen Spitzmüller.
+%
+% This work consists of the file publist.bbx
+%
+%
+% This file adds some additional localizations that are used by
+% the biblatex-publist bibliography style
+%
+% Please send suggestions and bug reports to
+% https://github.com/jspitz/biblatex-publist
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\bpl@version{2.13}
+\def\bpl@rdate{2024/08/21}
+
+\ProvidesFile{british-publist.lbx}[\bpl@rdate\space v.\bpl@version\space
+ biblatex-publist UK English localisation (JSP)]
+
+% Inherit general localization
+\InheritBibliographyExtras{british}
+
+% Localizations
+\DeclareBibliographyStrings{%
+ inherit = {british},
+ parttranslationof = {{partial translation of}{part\adddotspace trans\adddotspace of}},
+ with = {{with}{with}},
+ citations = {{citations}{cit\adddot}},
+ impactfactor = {{impact factor}{JIF}},
+ openaccess:true = {{OpenAccess}{OA}},
+ openaccess:gold = {{OpenAccess (gold)}{OA (gold)}},
+ openaccess:green = {{OpenAccess (green)}{OA (green)}},
+ peerreview:sb = {{single blind peer review}{single blind peer rev\adddot}},
+ peerreview:db = {{double blind peer review}{double blind peer rev\adddot}},
+ peerreview:op = {{open peer review}{open peer rev\adddot}},
+ peerreview:co = {{collaborative peer review}{collab\adddotspace peer rev\adddot}},
+ peerreview:cc = {{cascading peer review}{casc\adddotspace peer rev\adddot}},
+ peerreview:tp = {{third-party peer review}{3rd-party peer rev\adddot}},
+ peerreview:pp = {{post-publication peer review}{post-pub\adddotspace peer rev\adddot}},
+ peerreview:no = {{no peer review}{no peer rev\adddot}},
+ annot:main = {{main author}{main auth\adddot}},
+ annot:corresponding = {{corresponding author}{corr\adddotspace auth\adddot}}
+}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/lbx/canadian-publist.lbx b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/canadian-publist.lbx
new file mode 100644
index 00000000000..288c6941558
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/canadian-publist.lbx
@@ -0,0 +1,37 @@
+% canadian-publist.lbx, extra localizations for biblatex-publist
+%
+% 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 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Jürgen Spitzmüller.
+%
+% This work consists of the file publist.bbx
+%
+%
+% This file adds some additional localizations that are used by
+% the biblatex-publist bibliography style
+%
+% Please send suggestions and bug reports to
+% https://github.com/jspitz/biblatex-publist
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\bpl@version{2.13}
+\def\bpl@rdate{2024/08/21}
+
+\ProvidesFile{canadian-publist.lbx}[\bpl@rdate\space v.\bpl@version\space
+ biblatex-publist CDN English localisation (JSP)]
+
+% Inherit english
+\InheritBibliographyStrings{english}
+\InheritBibliographyExtras{english}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/lbx/english-publist.lbx b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/english-publist.lbx
new file mode 100644
index 00000000000..a9dc25db89f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/english-publist.lbx
@@ -0,0 +1,58 @@
+% english-publist.lbx, extra localizations for biblatex-publist
+%
+% 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 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Jürgen Spitzmüller.
+%
+% This work consists of the file publist.bbx
+%
+%
+% This file adds some additional localizations that are used by
+% the biblatex-publist bibliography style
+%
+% Please send suggestions and bug reports to
+% https://github.com/jspitz/biblatex-publist
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\bpl@version{2.13}
+\def\bpl@rdate{2024/08/21}
+
+\ProvidesFile{english-publist.lbx}[\bpl@rdate\space v.\bpl@version\space
+ biblatex-publist English localisation (JSP)]
+
+% Inherit general localization
+\InheritBibliographyExtras{english}
+
+% Localizations
+\DeclareBibliographyStrings{%
+ inherit = {english},
+ parttranslationof = {{partial translation of}{part\adddotspace trans\adddotspace of}},
+ with = {{with}{with}},
+ citations = {{citations}{cit\adddot}},
+ impactfactor = {{impact factor}{JIF}},
+ openaccess:true = {{OpenAccess}{OA}},
+ openaccess:gold = {{OpenAccess (gold)}{OA (gold)}},
+ openaccess:green = {{OpenAccess (green)}{OA (green)}},
+ peerreview:sb = {{single blind peer review}{single blind peer rev\adddot}},
+ peerreview:db = {{double blind peer review}{double blind peer rev\adddot}},
+ peerreview:op = {{open peer review}{open peer rev\adddot}},
+ peerreview:co = {{collaborative peer review}{collab\adddotspace peer rev\adddot}},
+ peerreview:cc = {{cascading peer review}{casc\adddotspace peer rev\adddot}},
+ peerreview:tp = {{third-party peer review}{3rd-party peer rev\adddot}},
+ peerreview:pp = {{post-publication peer review}{post-pub\adddotspace peer rev\adddot}},
+ peerreview:no = {{no peer review}{no peer rev\adddot}},
+ annot:main = {{main author}{main auth\adddot}},
+ annot:corresponding = {{corresponding author}{corr\adddotspace auth\adddot}}
+}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/lbx/french-publist.lbx b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/french-publist.lbx
new file mode 100644
index 00000000000..e2f982b03c6
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/french-publist.lbx
@@ -0,0 +1,58 @@
+% french-publist.lbx, extra localizations for biblatex-publist
+%
+% 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 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Jürgen Spitzmüller.
+%
+% This work consists of the file publist.bbx
+%
+%
+% This file adds some additional localizations that are used by
+% the biblatex-publist bibliography style
+%
+% Please send suggestions and bug reports to
+% https://github.com/jspitz/biblatex-publist
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\bpl@version{2.13}
+\def\bpl@rdate{2024/08/21}
+
+\ProvidesFile{french-publist.lbx}[\bpl@rdate\space v.\bpl@version\space
+ biblatex-publist French localisation (JSP)]
+
+% Inherit general localization
+\InheritBibliographyExtras{french}
+
+% Localizations
+\DeclareBibliographyStrings{%
+ inherit = {french},
+ parttranslationof = {{traduction partielle de}{trad\adddotspace part\adddotspace de}},
+ with = {{avec}{avec}},
+ citations = {{citations}{cit\adddot}},
+ impactfactor = {{facteur d'impact}{FI}},
+ openaccess:true = {{libre acc\`es}{libre acc\`es}},
+ openaccess:gold = {{libre acc\`es (dorée)}{libre acc\`es (dorée)}},
+ openaccess:green = {{libre acc\`es (verte)}{libre acc\`es (verte)}},
+ peerreview:sb = {{\'{e}valuation par des pairs anonymis\'{e}s}{\'{e}val\adddotspace par des pairs anon\adddot}},
+ peerreview:db = {{\'{e}valuation par les pairs en double aveugle}{\'{e}val\adddotspace par les pairs en double aveugle}},
+ peerreview:op = {{\'{e}valuation par les pairs ouverte}{\'{e}val\adddotspace par les pairs ouverte}},
+ peerreview:co = {{\'{e}valuation par les pairs collaborative}{\'{e}val\adddotspace par les pairs collab\adddot}},
+ peerreview:cc = {{\'{e}valuation par les pairs en cascade}{\'{e}val\adddotspace par les pairs en cascade}},
+ peerreview:tp = {{\'{e}valuation par des pairs ext\'{e}rieurs}{\'{e}val\adddotspace par des pairs ext\adddot}},
+ peerreview:pp = {{\'{e}valuation par les pairs apr\`{e}s publication}{\'{e}val\adddotspace par les pairs apr\`{e}s pub\adddot}},
+ peerreview:no = {{pas d'\'{e}valuation par les pairs}{pas d'\'{e}val\adddotspace par les pairs}},
+ annot:main = {{auteur principale}{aut\adddotspace princ\adddot}},
+ annot:corresponding = {{auteur correspondant}{aut\adddotspace corr\adddot}}
+}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/lbx/german-publist.lbx b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/german-publist.lbx
new file mode 100644
index 00000000000..e67d8d44b10
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/german-publist.lbx
@@ -0,0 +1,58 @@
+% german-publist.lbx, extra localizations for biblatex-publist
+%
+% 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 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Jürgen Spitzmüller.
+%
+% This work consists of the file publist.bbx
+%
+%
+% This file adds some additional localizations that are used by
+% the biblatex-publist bibliography style
+%
+% Please send suggestions and bug reports to
+% https://github.com/jspitz/biblatex-publist
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\bpl@version{2.13}
+\def\bpl@rdate{2024/08/21}
+
+\ProvidesFile{german-publist.lbx}[\bpl@rdate\space v.\bpl@version\space
+ biblatex-publist German localisation (JSP)]
+
+% Inherit general localization
+\InheritBibliographyExtras{german}
+
+% Localizations
+\DeclareBibliographyStrings{%
+ inherit = {german},
+ parttranslationof = {{Teil\"ubersetzung von}{Teil\"ubers\adddotspace von}},
+ with = {{mit}{mit}},
+ citations = {{Zitationen}{Zit\adddot}},
+ impactfactor = {{Impactfaktor}{JIF}},
+ openaccess:true = {{OpenAccess}{OA}},
+ openaccess:gold = {{OpenAccess (gold)}{OA (gold)}},
+ openaccess:green = {{OpenAccess (gr\"un)}{OA (gr\"un)}},
+ peerreview:sb = {{Blindbegutachtung}{Blindbeg\adddot}},
+ peerreview:db = {{Doppelblindbegutachtung}{Doppelblindbeg\adddot}},
+ peerreview:op = {{Offene Begutachtung}{Offene Beg\adddot}},
+ peerreview:co = {{Kollaborative Begutachtung}{Kollab\adddotespace Beg\adddot}},
+ peerreview:cc = {{Cascading-Begutachtung}{Cascading-Beg\adddot}},
+ peerreview:tp = {{Begutachtung durch Dritte}{Beg\adddotspace durch Dritte}},
+ peerreview:pp = {{Post-Publication-Begutachtung}{Post-Pub\adddot-Beg\adddot}},
+ peerreview:no = {{keine Begutachtung}{keine Beg\adddot}},
+ annot:main = {{Hauptautor}{Hauptaut\adddot}},
+ annot:corresponding = {{Korrespondenzautor}{Korr.-aut\adddot}}
+}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/lbx/naustrian-publist.lbx b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/naustrian-publist.lbx
new file mode 100644
index 00000000000..3b202fe4594
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/naustrian-publist.lbx
@@ -0,0 +1,37 @@
+% naustrian-publist.lbx, extra localizations for biblatex-publist
+%
+% 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 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Jürgen Spitzmüller.
+%
+% This work consists of the file publist.bbx
+%
+%
+% This file adds some additional localizations that are used by
+% the biblatex-publist bibliography style
+%
+% Please send suggestions and bug reports to
+% https://github.com/jspitz/biblatex-publist
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\bpl@version{2.13}
+\def\bpl@rdate{2024/08/21}
+
+\ProvidesFile{naustrian-publist.lbx}[\bpl@rdate\space v.\bpl@version\space
+ biblatex-publist Austrian localisation (JSP)]
+
+% Inherit austrian
+\InheritBibliographyStrings{austrian}
+\InheritBibliographyExtras{austrian}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/lbx/newzealand-publist.lbx b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/newzealand-publist.lbx
new file mode 100644
index 00000000000..504410f851f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/newzealand-publist.lbx
@@ -0,0 +1,58 @@
+% newzealand-publist.lbx, extra localizations for biblatex-publist
+%
+% 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 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Jürgen Spitzmüller.
+%
+% This work consists of the file publist.bbx
+%
+%
+% This file adds some additional localizations that are used by
+% the biblatex-publist bibliography style
+%
+% Please send suggestions and bug reports to
+% https://github.com/jspitz/biblatex-publist
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\bpl@version{2.13}
+\def\bpl@rdate{2024/08/21}
+
+\ProvidesFile{newzealand-publist.lbx}[\bpl@rdate\space v.\bpl@version\space
+ biblatex-publist NZ English localisation (JSP)]
+
+% Inherit general localization
+\InheritBibliographyExtras{newzealand}
+
+% Localizations
+\DeclareBibliographyStrings{%
+ inherit = {newzealand},
+ parttranslationof = {{partial translation of}{part\adddotspace trans\adddotspace of}},
+ with = {{with}{with}},
+ citations = {{citations}{cit\adddot}},
+ impactfactor = {{impact factor}{JIF}},
+ openaccess:true = {{OpenAccess}{OA}},
+ openaccess:gold = {{OpenAccess (gold)}{OA (gold)}},
+ openaccess:green = {{OpenAccess (green)}{OA (green)}},
+ peerreview:sb = {{single blind peer review}{single blind peer rev\adddot}},
+ peerreview:db = {{double blind peer review}{double blind peer rev\adddot}},
+ peerreview:op = {{open peer review}{open peer rev\adddot}},
+ peerreview:co = {{collaborative peer review}{collab\adddotspace peer rev\adddot}},
+ peerreview:cc = {{cascading peer review}{casc\adddotspace peer rev\adddot}},
+ peerreview:tp = {{third-party peer review}{3rd-party peer rev\adddot}},
+ peerreview:pp = {{post-publication peer review}{post-pub\adddotspace peer rev\adddot}},
+ peerreview:no = {{no peer review}{no peer rev\adddot}},
+ annot:main = {{main author}{main auth\adddot}},
+ annot:corresponding = {{corresponding author}{corr\adddotspace auth\adddot}}
+}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/lbx/ngerman-publist.lbx b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/ngerman-publist.lbx
new file mode 100644
index 00000000000..185cbe903a6
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/ngerman-publist.lbx
@@ -0,0 +1,37 @@
+% ngerman-publist.lbx, extra localizations for biblatex-publist
+%
+% 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 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Jürgen Spitzmüller.
+%
+% This work consists of the file publist.bbx
+%
+%
+% This file adds some additional localizations that are used by
+% the biblatex-publist bibliography style
+%
+% Please send suggestions and bug reports to
+% https://github.com/jspitz/biblatex-publist
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\bpl@version{2.13}
+\def\bpl@rdate{2024/08/21}
+
+\ProvidesFile{ngerman-publist.lbx}[\bpl@rdate\space v.\bpl@version\space
+ biblatex-publist German localisation (JSP)]
+
+% Inherit german
+\InheritBibliographyStrings{german}
+\InheritBibliographyExtras{german}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/lbx/nswissgerman-publist.lbx b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/nswissgerman-publist.lbx
new file mode 100644
index 00000000000..a2f1813b38f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/nswissgerman-publist.lbx
@@ -0,0 +1,37 @@
+% nswissgerman-publist.lbx, extra localizations for biblatex-publist
+%
+% 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 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Jürgen Spitzmüller.
+%
+% This work consists of the file publist.bbx
+%
+%
+% This file adds some additional localizations that are used by
+% the biblatex-publist bibliography style
+%
+% Please send suggestions and bug reports to
+% https://github.com/jspitz/biblatex-publist
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\bpl@version{2.13}
+\def\bpl@rdate{2024/08/21}
+
+\ProvidesFile{nswissgerman-publist.lbx}[\bpl@rdate\space v.\bpl@version\space
+ biblatex-publist Swiss German localisation (JSP)]
+
+% Inherit swissgerman
+\InheritBibliographyStrings{swissgerman}
+\InheritBibliographyExtras{swissgerman}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/lbx/swissgerman-publist.lbx b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/swissgerman-publist.lbx
new file mode 100644
index 00000000000..9bc6f051187
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/biblatex-publist/lbx/swissgerman-publist.lbx
@@ -0,0 +1,58 @@
+% swissgerman-publist.lbx, extra localizations for biblatex-publist
+%
+% 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 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% This Current Maintainer of this work is Jürgen Spitzmüller.
+%
+% This work consists of the file publist.bbx
+%
+%
+% This file adds some additional localizations that are used by
+% the biblatex-publist bibliography style
+%
+% Please send suggestions and bug reports to
+% https://github.com/jspitz/biblatex-publist
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\bpl@version{2.13}
+\def\bpl@rdate{2024/08/21}
+
+\ProvidesFile{swissgerman-publist.lbx}[\bpl@rdate\space v.\bpl@version\space
+ biblatex-publist Swiss German localisation (JSP)]
+
+% Inherit general localization
+\InheritBibliographyExtras{swissgerman}
+
+% Localizations
+\DeclareBibliographyStrings{%
+ inherit = {swissgerman},
+ parttranslationof = {{Teil\"ubersetzung von}{Teil\"ubers\adddotspace von}},
+ with = {{mit}{mit}},
+ citations = {{Zitationen}{Zit\adddot}},
+ impactfactor = {{Impactfaktor}{JIF}},
+ openaccess:true = {{OpenAccess}{OA}},
+ openaccess:gold = {{OpenAccess (gold)}{OA (gold)}},
+ openaccess:green = {{OpenAccess (gr\"un)}{OA (gr\"un)}},
+ peerreview:sb = {{Blindbegutachtung}{Blindbeg\adddot}},
+ peerreview:db = {{Doppelblindbegutachtung}{Doppelblindbeg\adddot}},
+ peerreview:op = {{Offene Begutachtung}{Offene Beg\adddot}},
+ peerreview:co = {{Kollaborative Begutachtung}{Kollab\adddotespace Beg\adddot}},
+ peerreview:cc = {{Cascading-Begutachtung}{Cascading-Beg\adddot}},
+ peerreview:tp = {{Begutachtung durch Dritte}{Beg\adddotspace durch Dritte}},
+ peerreview:pp = {{Post-Publication-Begutachtung}{Post-Pub\adddot-Beg\adddot}},
+ peerreview:no = {{keine Begutachtung}{keine Beg\adddot}},
+ annot:main = {{Hauptautor}{Hauptaut\adddot}},
+ annot:corresponding = {{Korrespondenzautor}{Korr.-aut\adddot}}
+}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/publist.bbx b/Master/texmf-dist/tex/latex/biblatex-publist/publist.bbx
index d3d4381a9ab..d3f31a7a03c 100644
--- a/Master/texmf-dist/tex/latex/biblatex-publist/publist.bbx
+++ b/Master/texmf-dist/tex/latex/biblatex-publist/publist.bbx
@@ -25,8 +25,8 @@
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\def\bpl@version{2.11}
-\def\bpl@rdate{2024/07/02}
+\def\bpl@version{2.13}
+\def\bpl@rdate{2024/08/21}
\ProvidesFile{publist.bbx}[\bpl@rdate\space v.\bpl@version\space
biblatex bibliography style (JSP)]
@@ -61,13 +61,14 @@
\newtoggle{bpl@linktitleissn}
\newtoggle{bpl@linktitleurl}
\newtoggle{bpl@linktitledoi}
+\newtoggle{bpl@citinfo}
\newtoggle{bpl@jifinfo}
\newtoggle{bpl@prinfo}
\toggletrue{bpl@prinfo}
\newtoggle{bpl@oainfo}
\newtoggle{bpl@oainfosimple}
\newif\if@bpl@reversenum\@bpl@reversenumfalse
-
+\def\bpl@annots{}
% Valid options
%
@@ -188,6 +189,9 @@
},
plnumbering.default:n = { global },
plnumbering.usage:n = preamble,
+ % annotations=<csv>
+ % Store author name prefix
+ annotations.tl_set:N = \bpl@annots,
% linktitles=<all|url|doi|isbn|issn|none>
linktitles .multichoice:,
% Link all titles
@@ -233,6 +237,18 @@
\toggletrue{bpl@linktitle}
},
linktitles.default:n = { all },
+ % citinfo=<true|false>
+ % Information about citation numbers
+ citinfo.code:n =
+ {
+ \str_if_eq:nnTF { #1 } { true }
+ {
+ \toggletrue{bpl@citinfo}
+ }{
+ \togglefalse{bpl@citinfo}
+ }
+ },
+ citinfo.default:n = { true },
% jifinfo=<true|false>
% Impact factor information
jifinfo.code:n =
@@ -428,6 +444,7 @@
\DeclareBibliographyOption{plauthorhandling}[omit]{\ExecutePublistOptions{plauthorhandling=#1}}
\DeclareBibliographyOption{nameorder}[family-given]{\ExecutePublistOptions{nameorder=#1}}
\DeclareBibliographyOption{plsorting}[ydt]{\ExecutePublistOptions{plsorting=#1}}
+\DeclareBibliographyOption{annotations}{\ExecutePublistOptions{annotations={#1}}}
\DeclareBibliographyOption{plnumbering}[global]{\ExecutePublistOptions{plnumbering=#1}}
\DeclareBibliographyOption{marginyear}[true]{\ExecutePublistOptions{marginyear=#1}}
@@ -437,6 +454,7 @@
\DeclareBibliographyOption{jifinfo}[true]{\ExecutePublistOptions{jifinfo=#1}}
\DeclareBibliographyOption{oainfo}[simple]{\ExecutePublistOptions{oainfo=#1}}
\DeclareBibliographyOption{prinfo}[true]{\ExecutePublistOptions{prinfo=#1}}
+\DeclareBibliographyOption{citinfo}[true]{\ExecutePublistOptions{citinfo=#1}}
\DeclareBibliographyOption{linktitles}[all]{\ExecutePublistOptions{linktitles={#1}}}% Extra braces needed (multichoice)
@@ -552,6 +570,7 @@
{}{\PackageWarning{biblatex-publist}{Patching refsection failed!}}
}{}
+% Section count. We use l3 here to split the argument and do calculations
\ExplSyntaxOn
\int_new:N \l_bpl_sec_cnt_int
@@ -560,7 +579,7 @@
{
\IfNoValueTF{#1}{%
\csnumdef{bpltmprefsection}{\c@refsection}
- \csuse{bpl@secitems:\bpltmprefsection}%
+ \ifcsdef{bpl@secitems:\bpltmprefsection}{\csuse{bpl@secitems:\bpltmprefsection}}{}%
}{
\int_zero:N \l_bpl_sec_cnt_int
\ProcessList{#1}{\__bpl_add_section_count}
@@ -570,7 +589,8 @@
\cs_new:Npn \__bpl_add_section_count #1
{
- \int_add:Nn \l_bpl_sec_cnt_int { \use:c{bpl@secitems:#1} }
+ \cs_if_exist:cT {bpl@secitems:#1}
+ { \int_add:Nn \l_bpl_sec_cnt_int { \use:c{bpl@secitems:#1} } }
}
\ExplSyntaxOff
@@ -984,23 +1004,37 @@
% Print the labelnumber as the total number of entries in the
% current refsection, minus the actual labelnumber, plus one
\ifbool{plnumgroup}{%
- \number\numexpr\csuse{bpl@itemtotal}-#1+1\relax%
+ \xdef\bpl@current@item@no{\number\numexpr\csuse{bpl@itemtotal}-#1+1\relax}%
+ \bpl@current@item@no%
}{%
\ifcsdef{bpl@secitems:\therefsection}{%
- \number\numexpr\csuse{bpl@secitems:\therefsection}-#1+1%
- +\csuse{bpl@shift@itemtotal}\relax%
+ \xdef\bpl@current@item@no{\number\numexpr\csuse{bpl@secitems:\therefsection}-#1+1%
+ +\csuse{bpl@shift@itemtotal}\relax}%
+ \bpl@current@item@no%
}{%
- \number\numexpr\csuse{bpl@itemtotal}-#1+1\relax%
+ \xdef\bpl@current@item@no{\number\numexpr\csuse{bpl@itemtotal}-#1+1\relax}%
+ \bpl@current@item@no%
}%
}%
}{%
% Use decreasing counter
\ifcsdef{bpl@items:\theprevrefsection}{%
- \number\numexpr\csuse{bpl@itemtotal}-#1+1-\csuse{bpl@items:\theprevrefsection}\relax%
+ \xdef\bpl@current@item@no{\number\numexpr\csuse{bpl@itemtotal}-#1+1%
+ -\csuse{bpl@items:\theprevrefsection}\relax}%
+ \bpl@current@item@no%
}{%
- \number\numexpr\csuse{bpl@itemtotal}-#1+1\relax%
+ \xdef\bpl@current@item@no{\number\numexpr\csuse{bpl@itemtotal}-#1+1\relax}%
+ \bpl@current@item@no%
}%
}%
+ % Store number in pbx file
+ \if@filesw%
+ \protected@write\bpl@bpxfile{}{%
+ \csedef{bpl@itemnumber:\thefield{entrykey}}{\bpl@current@item@no}%
+ \csedef{bpl@itemsec:\thefield{entrykey}}{\therefsection}%
+ \csedef{bpl@itemtotal}{\csuse{bpl@itemtotal}}%
+ }%
+ \fi%
}%
\renewrobustcmd{\mkbibsecstart}[1]{%
\setcounter{prevrefsection}{\therefsection}%
@@ -1035,6 +1069,64 @@
\fi
}%
+%
+% Data annotation
+%
+
+\newcommand*\mkbplannot[1]{\textsuperscript{#1}}
+
+% Symbol helpers
+\ExplSyntaxOn
+ \clist_new:N \l_bpl_annot_symbols
+ \cs_new_nopar:Npn \SetAnnotSymbols #1
+ {
+ \clist_gset:Nn \l_bpl_annot_symbols { #1 }
+ }
+ \SetAnnotSymbols
+ { \textasteriskcentered, \textdaggerdbl, \textsection, \textparagraph,
+ \textbardbl, \textdagger, {\textasteriskcentered\textasteriskcentered},
+ {\textdaggerdbl\textdaggerdbl}, {\textdagger\textdagger}
+ }
+ % get symbol by position (int)
+ \cs_new_nopar:Npn \bpl@get@annot@symbol #1
+ {
+ \clist_item:Nn \l_bpl_annot_symbols { #1 }
+ }
+\ExplSyntaxOff
+
+% get symbol by category name
+\NewDocumentCommand\GetAnnotSymbol { s m }{
+ \edef\tmpa{}%
+ \setcounter{annotsymb}{1}%
+ \renewcommand*{\do}[1]{%
+ \ifstrequal{#2}{##1}
+ {\edef\tmpa{\bpl@get@annot@symbol{\theannotsymb}}}%
+ {}%
+ \stepcounter{annotsymb}%
+ }%
+ \expandafter\docsvlist\expandafter{\bpl@annots}%
+ \IfBooleanTF{#1}{\tmpa}{\mkbplannot{\tmpa}}%
+}
+
+% handle the annotations as passed by annotations option
+\AtEndOfPackage{%
+\ifx\bpl@annots\empty\else
+ % helper function for annotations
+ \newcounter{annotsymb}
+ \newcommand*\bplannot{%
+ \setcounter{annotsymb}{1}%
+ \renewcommand*{\do}[1]{%
+ \ifitemannotation{##1}
+ {\mkbplannot{\bpl@get@annot@symbol{\theannotsymb}}}%
+ {}%
+ \stepcounter{annotsymb}%
+ }%
+ \expandafter\docsvlist\expandafter{\bpl@annots}%
+ }
+ % do annotation in family names
+ \renewcommand*{\mkbibnamefamily}[1]{\bplannot #1}
+\fi
+}
%
% New environment for (foreign) reviews
@@ -1076,6 +1168,13 @@
}
%
+% Citation info
+%
+\DeclareFieldFormat{citations}{%
+ \bibstring{citations}\addcolon\addspace#1%
+}
+
+%
% Impact factor
%
\DeclareFieldFormat{impactfactor}{%
@@ -1377,6 +1476,26 @@
\iftoggle{isplauthor}%
{% <- TRUE condition
\global\toggletrue{hadplauthor}%
+ \ifx\bpl@annots\empty\else
+ \gdef\bpl@extra@annots{}%
+ \renewcommand*{\do}[1]{%
+ \ifitemannotation{##1}
+ {%
+ \iftoggle{bpl@have@extrainfo}%
+ {\gappto\bpl@extra@annots{\plextrainfosep\ifbibstring{annot:##1}%
+ {\bibstring{annot:##1}}%
+ {##1}}%
+ }%
+ {\gappto\bpl@extra@annots{\ifbibstring{annot:##1}%
+ {\bibstring{annot:##1}}%
+ {##1}}%
+ }%
+ \toggletrue{bpl@have@extrainfo}%
+ }%
+ {}%
+ }%
+ \expandafter\docsvlist\expandafter{\bpl@annots}%
+ \fi%
}% <- end TRUE condition
{% <- FALSE condition
\stepcounter{nonpl#1}%
@@ -1400,7 +1519,7 @@
{\ifdefvoid{\namepartgiven}{}{\mkbibnamegiven{\namepartgiven}\addspace}}%
\ifdefvoid{\namepartprefix}{}{\mkbibnameprefix{\namepartprefix}\addspace}%
\global\togglefalse{plauthorprecedes}%
- \namepartfamily%
+ \mkbibnamefamily{\namepartfamily}%
}%
}% <- end FALSE condition
%
@@ -1739,6 +1858,12 @@
}%
}
+%
+% Extra information
+%
+
+\def\bpl@extra@annots{}
+
\newtoggle{bpl@have@extrainfo}
\renewbibmacro*{addendum+pubstate}{%
@@ -1760,14 +1885,35 @@
not test {\iffieldundef{impactfactor}}
and test {\iftoggle{bpl@jifinfo}}
)
+ or
+ (
+ not test {\iffieldundef{citations}}
+ and test {\iftoggle{bpl@citinfo}}
+ )
+ or
+ (
+ not test {\ifcsvoid{bpl@extra@annots}}
+ )
}{%
\newunit\newblock%
\printtext[plextrainfo]{%
+ \ifx\bpl@extra@annots\empty\else
+ \bpl@extra@annots%
+ \toggletrue{bpl@have@extrainfo}%
+ \fi
\ifboolexpr{ not test {\iffieldundef{peerreview}}
and test {\iftoggle{bpl@prinfo}}
}{%
- \toggletrue{bpl@have@extrainfo}%
+ \iftoggle{bpl@have@extrainfo}{\plextrainfosep}{}%
\printfield{peerreview}%
+ \toggletrue{bpl@have@extrainfo}%
+ }{}%
+ \ifboolexpr{ not test {\iffieldundef{citations}}
+ and test {\iftoggle{bpl@citinfo}}
+ }{%
+ \iftoggle{bpl@have@extrainfo}{\plextrainfosep}{}%
+ \printfield{citations}%
+ \toggletrue{bpl@have@extrainfo}%
}{}%
\ifboolexpr{ not test {\iffieldundef{openaccess}}
and test {\iftoggle{bpl@oainfo}}
@@ -1789,6 +1935,11 @@
%
% l7n
%
+
+\DeclareLanguageMappingSuffix{-publist}
+
+% publist-specific bibstrings
+\NewBibliographyString{citations}
\NewBibliographyString{with}
\NewBibliographyString{parttranslationof}
\NewBibliographyString{impactfactor}
@@ -1803,54 +1954,8 @@
\NewBibliographyString{peerreview:tp}
\NewBibliographyString{peerreview:pp}
\NewBibliographyString{peerreview:no}
-\DefineBibliographyStrings{english}{%
- parttranslationof = {partial translation of},
- with = {with},
- impactfactor = {impact factor},
- openaccess:true = {OpenAccess},
- openaccess:gold = {OpenAccess (gold)},
- openaccess:green = {OpenAccess (green)},
- peerreview:sb = {single blind peer review},
- peerreview:db = {double blind peer review},
- peerreview:op = {open peer review},
- peerreview:co = {collaborative peer review},
- peerreview:cc = {cascading peer review},
- peerreview:tp = {third-party peer review},
- peerreview:pp = {post-publication peer review},
- peerreview:no = {no peer review}
-}
-\DefineBibliographyStrings{french}{%
- parttranslationof = {traduction partielle de},
- with = {avec},
- impactfactor = {facteur d'impact},
- openaccess:true = {libre acc\`es},
- openaccess:gold = {libre acc\`es (dorée)},
- openaccess:green = {libre acc\`es (verte)},
- peerreview:sb = {\'{e}valuation par des pairs anonymis\'{e}s},
- peerreview:db = {\'{e}valuation par les pairs en double aveugle},
- peerreview:op = {\'{e}valuation par les pairs ouverte},
- peerreview:co = {\'{e}valuation par les pairs collaborative},
- peerreview:cc = {\'{e}valuation par les pairs en cascade},
- peerreview:tp = {\'{e}valuation par des pairs ext\'{e}rieurs},
- peerreview:pp = {\'{e}valuation par les pairs apr\`{e}s publication},
- peerreview:no = {pas d'\'{e}valuation par les pairs}
-}
-\DefineBibliographyStrings{german}{%
- parttranslationof = {Teil\"ubersetzung von},
- with = {mit},
- impactfactor = {Impactfaktor},
- openaccess:true = {OpenAccess},
- openaccess:gold = {OpenAccess (gold)},
- openaccess:green = {OpenAccess (gr\"un)},
- peerreview:sb = {Blindbegutachtung},
- peerreview:db = {Doppelblindbegutachtung},
- peerreview:op = {Offene Begutachtung},
- peerreview:co = {Kollaborative Begutachtung},
- peerreview:cc = {Cascading-Begutachtung},
- peerreview:tp = {Begutachtung durch Dritte},
- peerreview:pp = {Post-Publication-Begutachtung},
- peerreview:no = {keine Begutachtung}
-}
+\NewBibliographyString{annot:main}
+\NewBibliographyString{annot:corresponding}
%
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/publist.cbx b/Master/texmf-dist/tex/latex/biblatex-publist/publist.cbx
index b5972d94978..d384445d635 100644
--- a/Master/texmf-dist/tex/latex/biblatex-publist/publist.cbx
+++ b/Master/texmf-dist/tex/latex/biblatex-publist/publist.cbx
@@ -26,8 +26,8 @@
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\def\bpl@version{2.11}
-\def\bpl@rdate{2024/07/02}
+\def\bpl@version{2.13}
+\def\bpl@rdate{2024/08/21}
\ProvidesFile{publist.cbx}[\bpl@rdate\space v.\bpl@version\space
biblatex citation style (JSP)]
@@ -91,6 +91,28 @@
\printtext[labelnumberwidth]{\mkrefdesc{\thefield{labelnumber}}}%
}
+\newcommand*\itemrangesep{\bibrangedash}
+
+\newcommand*\citeitemrange[2]{%
+ \citeitem{#1}\itemrangesep\citeitem{#2}%
+}
+
+\NewDocumentCommand\citesecitemrange{s m m}
+{%
+ \IfBooleanTF{#1}%
+ {\ifcsdef{bpl@itemsec:#2}%
+ {\ifcsdef{bpl@itemsec:#3}%
+ {\ifcsequal{bpl@itemsec:#2}{bpl@itemsec:#3}%
+ {\citesecitem{#2}\itemrangesep}%
+ {\citesecitem*{#2}\,\itemrangesep\,}%
+ \citesecitem*{#3}}%
+ {\citesecitem*{#2}\itemrangesep\citesecitem*{#3}}%
+ }%
+ {\citesecitem{#2}\itemrangesep\citesecitem*{#3}}%
+ }%
+ {\citesecitem{#2}\itemrangesep\citesecitem{#3}}%
+}
+
% Manual way to adjust numbering
\csdef{bpl@secstartshift}{0}
\newcommand*\shiftciteitem[1]{\csdef{bpl@secstartshift}{#1}}
diff --git a/Master/texmf-dist/tex/latex/biblatex-publist/publist.dbx b/Master/texmf-dist/tex/latex/biblatex-publist/publist.dbx
index 71e9e692767..27cb4068f5f 100644
--- a/Master/texmf-dist/tex/latex/biblatex-publist/publist.dbx
+++ b/Master/texmf-dist/tex/latex/biblatex-publist/publist.dbx
@@ -1,5 +1,5 @@
% publist.dbx, biblatex data model specification for the biblatex-publist
-% package, version 2.11 (2024/07/02).
+% package, version 2.13 (2024/08/21).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
@@ -22,11 +22,13 @@
% Add peerreview and openaccess (literal) field
\DeclareDatamodelFields[type=field, datatype=literal]{
+ citations,
impactfactor,
openaccess,
peerreview}
\DeclareDatamodelEntryfields{
+ citations,
impactfactor,
openaccess,
peerreview}
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/16-IU8-references.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/16-IU8-references.sty
deleted file mode 100644
index 7a51a9235af..00000000000
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/16-IU8-references.sty
+++ /dev/null
@@ -1,18 +0,0 @@
-% Author: CatInCosmicSpace
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{16-IU8-references}[2021/03/21 v1.2 Список использованных источников]
-
-% Сведения об источниках следует располагать в порядке появления ссылок на
-% источники в тексте отчета и нумеровать арабскими цифрами с точкой и печатать
-% с абзацного отступа.
-\usepackage[
- backend=biber,
- style=gost-numeric,
- sorting=none,
- % refsection=structure,
- % sorting=ynt,
-]{biblatex}
-\defbibheading{bibliography}[СПИСОК~ИСПОЛЬЗОВАННЫХ~ИСТОЧНИКОВ]{\structure{#1}}
-\addto{\captionsrussian}{%
- \renewcommand{\contentsname}{СОДЕРЖАНИЕ}
-}
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/BMSTU-IU8.cls b/Master/texmf-dist/tex/latex/bmstu-iu8/BMSTU-IU8.cls
index e50cde4c75e..ebd30e1991e 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/BMSTU-IU8.cls
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/BMSTU-IU8.cls
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{BMSTU-IU8}[2020/06/01 IU8 class]
+\ProvidesClass{BMSTU-IU8}[2024/09/09 IU8 class]
\LoadClass{article}
@@ -26,28 +26,28 @@
\RequirePackage[russian]{babel}
\RequirePackage{hyphsubst}
-\RequirePackage{01-IU8-base}
-\RequirePackage{02-IU8-construction}
-\RequirePackage{03-IU8-numbering}
-\RequirePackage{04-IU8-section-numbering}
-\RequirePackage{05-IU8-figures}
-\RequirePackage{06-IU8-tables}
-\RequirePackage{07-IU8-footnotes}
-\RequirePackage{08-IU8-formulas}
-\RequirePackage{09-IU8-cites}
-\RequirePackage{10-IU8-titlepage}
-\RequirePackage{11-IU8-performers}
-\RequirePackage{12-IU8-abstract}
-\RequirePackage{13-IU8-contents}
-\RequirePackage{14-IU8-terms-and-definitions}
-\RequirePackage{15-IU8-list-of-abbreviations}
-\RequirePackage{16-IU8-references}
-\RequirePackage{17-IU8-appendices}
-\RequirePackage{18-IU8-extra}
-\RequirePackage{19-IU8-counters}
-\RequirePackage{20-IU8-listing}
-\RequirePackage{21-IU8-math}
-\RequirePackage{22-IU8-algorithms}
+\RequirePackage{IU8-01-base}
+\RequirePackage{IU8-02-construction}
+\RequirePackage{IU8-03-numbering}
+\RequirePackage{IU8-04-section-numbering}
+\RequirePackage{IU8-05-figures}
+\RequirePackage{IU8-06-tables}
+\RequirePackage{IU8-07-footnotes}
+\RequirePackage{IU8-08-formulas}
+\RequirePackage{IU8-09-cites}
+\RequirePackage{IU8-10-titlepage}
+\RequirePackage{IU8-11-performers}
+\RequirePackage{IU8-12-abstract}
+\RequirePackage{IU8-13-contents}
+\RequirePackage{IU8-14-terms-and-definitions}
+\RequirePackage{IU8-15-list-of-abbreviations}
+\RequirePackage{IU8-16-references}
+\RequirePackage{IU8-17-appendices}
+\RequirePackage{IU8-18-extra}
+\RequirePackage{IU8-19-counters}
+\RequirePackage{IU8-20-listing}
+\RequirePackage{IU8-21-math}
+\RequirePackage{IU8-22-algorithms}
\RequirePackage{csquotes}
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/01-IU8-base.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-01-base.sty
index f3df2d3f5ed..11533ec0e71 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/01-IU8-base.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-01-base.sty
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{01-IU8-base}[2021/03/21 v1.2 Общие требования]
+\ProvidesPackage{IU8-01-base}[2024/09/09 v1.4 Общие требования]
% 6.1.1 Изложение текста и оформление отчета выполняют в соответствии с
% требованиями настоящего стандарта. Страницы текста отчета о НИР и включенные в
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/02-IU8-construction.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-02-construction.sty
index b94615c0039..38250907292 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/02-IU8-construction.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-02-construction.sty
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{02-IU8-construction}[2021/03/21 v1.2 Построение отчета]
+\ProvidesPackage{IU8-02-construction}[2024/09/09 v1.4 Построение отчета]
% 6.2.1 Наименования структурных элементов отчета:
% "СПИСОК ИСПОЛНИТЕЛЕЙ", % у нас не используется
@@ -25,10 +25,11 @@
\renewcommand{\thestructure}{} % Убрать появление счётчика в содержании
\titleclass{\structure}{straight}[\section]
\titleformat{\structure}[hang]{\clearpage\normalfont\bfseries\centering}{}{0em}{}
-\titlespacing*{\structure}{0pt}{0pt}{2\baselineskip}
+\titlespacing*{\structure}{0pt}{0pt}{1em}
\titlecontents{structure}{}{}{}{}
\renewcommand*\l@structure{\@dottedtocline{0}{0mm}{0em}}
+
\newcommand{\structurebreak}{\clearpage}
\newcommand{\sectionbreak}{\clearpage}
@@ -54,6 +55,14 @@
\titlespacing*{\paragraph}{0pt}{2ex}{2ex}[2ex]
\titlespacing*{\subparagraph}{0pt}{2ex}{2ex}[2ex]
+\makeatletter
+\renewcommand*\l@section{\@dottedtocline{0}{12.5mm}{2em}}
+\renewcommand*\l@structure{\@dottedtocline{0}{12.5mm}{0em}}
+\renewcommand*\l@subsection{\@dottedtocline{1}{12.5mm}{3em}}
+\renewcommand*\l@subsubsection{\@dottedtocline{2}{12.5mm}{4em}}
+\renewcommand*\l@paragraph{\@dottedtocline{3}{12.5mm}{5em}}
+\makeatother
+
% 6.2.4 Если заголовок включает несколько предложений, их разделяют точками.
% Переносы слов в заголовках не допускаются.
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/03-IU8-numbering.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-03-numbering.sty
index b8696c01f3b..7e0ed595e1d 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/03-IU8-numbering.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-03-numbering.sty
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{03-IU8-numbering}[2021/03/21 v1.2 Нумерация страниц отчета]
+\ProvidesPackage{IU8-03-numbering}[2024/09/09 v1.4 Нумерация страниц отчета]
% 6.3.1 Страницы отчета следует нумеровать арабскими цифрами, соблюдая сквозную
% нумерацию по всему тексту отчета, включая приложения. Номер страницы
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/04-IU8-section-numbering.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-04-section-numbering.sty
index 839c34816e4..ec865d745be 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/04-IU8-section-numbering.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-04-section-numbering.sty
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{04-IU8-section-numbering}[2021/03/21 v1.2 Нумерация разделов, подразделов, пунктов, подпунктов и книг отчета]
+\ProvidesPackage{IU8-04-section-numbering}[2024/09/09 v1.4 Нумерация разделов, подразделов, пунктов, подпунктов и книг отчета]
% 6.4.1 Разделы должны иметь порядковые номера в пределах всего отчета,
% обозначенные арабскими цифрами без точки и расположенные с абзацного отступа.
@@ -10,7 +10,7 @@
% подразделы, могут состоять из одного или нескольких пунктов.
% Это настройка по умолчанию, так что её не меняю
-% Про абзацный отступ учетно в 02-IU8-construction
+% Про абзацный отступ учетно в IU8-02-construction
% 6.4.2 Если отчет не имеет подразделов, то нумерация пунктов в нем должна
% быть в пределах каждого раздела и номер пункта должен состоять из номеров
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/05-IU8-figures.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-05-figures.sty
index 7210da52453..f8536ffed1f 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/05-IU8-figures.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-05-figures.sty
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{05-IU8-figures}[2021/03/21 v1.2 Иллюстрации]
+\ProvidesPackage{IU8-05-figures}[2024/09/09 v1.4 Иллюстрации]
% 6.5.1 Иллюстрации (чертежи, графики, схемы, компьютерные распечатки, диаграммы,
% фотоснимки) следует располагать в отчете непосредственно после текста отчета,
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/06-IU8-tables.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-06-tables.sty
index eedb9d94df9..52e8358a392 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/06-IU8-tables.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-06-tables.sty
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{06-IU8-tables}[2021/03/21 v1.2 Таблицы]
+\ProvidesPackage{IU8-06-tables}[2024/09/09 v1.4 Таблицы]
% Пакеты, которые скорее всего пригодятся
\RequirePackage{tabularx}
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/07-IU8-footnotes.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-07-footnotes.sty
index 689cdd0337e..2dd2f6e42b0 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/07-IU8-footnotes.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-07-footnotes.sty
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{07-IU8-footnotes}[2021/03/21 v1.2 Примечания и сноски]
+\ProvidesPackage{IU8-07-footnotes}[2024/09/09 v1.4 Примечания и сноски]
% 6.7.1 Примечания приводят в отчете, если необходимы пояснения или справочные
% данные к содержанию текста, таблиц или графического материала.
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/08-IU8-formulas.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-08-formulas.sty
index aa65770e77e..8e4c8ef43af 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/08-IU8-formulas.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-08-formulas.sty
@@ -1,5 +1,5 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{08-IU8-formulas}[2021/03/21 v1.2 Формулы]
+\ProvidesPackage{IU8-08-formulas}[2024/09/09 v1.4 Формулы]
% Настройки по умолчанию в целом соответствуют ГОСТ \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/09-IU8-cites.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-09-cites.sty
index 651f2a3e4e0..fb5d4f13cd3 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/09-IU8-cites.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-09-cites.sty
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{09-IU8-cites}[2021/03/21 v1.2 Ссылки]
+\ProvidesPackage{IU8-09-cites}[2024/09/09 v1.4 Ссылки]
% 6.9.1 В отчете о НИР рекомендуется приводить ссылки на использованные
% источники. При нумерации ссылок на документы, использованные при составлении
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/10-IU8-titlepage.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-10-titlepage.sty
index e9834bc07b2..fb5e8c949f2 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/10-IU8-titlepage.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-10-titlepage.sty
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{10-IU8-titlepage}[2021/03/21 v1.2 Титульный лист]
+\ProvidesPackage{IU8-10-titlepage}[2024/09/09 v1.4 Титульный лист]
% Поля для заполнения для ВКР
\def\student#1{\gdef\@student{#1}}
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/11-IU8-performers.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-11-performers.sty
index 14b659de63c..20ba0e0c481 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/11-IU8-performers.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-11-performers.sty
@@ -1,5 +1,5 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{11-IU8-performers}[2021/03/21 v1.2 Список исполниетелей]
+\ProvidesPackage{IU8-11-performers}[2024/09/09 v1.4 Список исполниетелей]
% Т.к. у нас это не используется, я оставляю это пустымы \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/12-IU8-abstract.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-12-abstract.sty
index 946d3360bce..1c389e08f4e 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/12-IU8-abstract.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-12-abstract.sty
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{12-IU8-abstract}[2021/03/21 v1.2 Реферат]
+\ProvidesPackage{IU8-12-abstract}[2024/09/09 v1.4 Реферат]
% 6.12.1 Сведения об общем объеме отчета, количестве книг отчета, иллюстраций,
% таблиц, использованных источников, приложений являются первой компонентой
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/13-IU8-contents.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-13-contents.sty
index bf51955ac00..c19a7b41b1f 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/13-IU8-contents.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-13-contents.sty
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{13-IU8-contents}[2021/03/21 v1.2 Содержание]
+\ProvidesPackage{IU8-13-contents}[2024/09/09 v1.4 Содержание]
% Каждую запись содержания оформляют как отдельный абзац, выровненный влево.
% Номера страниц указывают выровненными по правому краю поля и соединяют
@@ -17,13 +17,16 @@
% ГОСТ 7.32-2017. Пункт 5.4.1:
% Обозначения подразделов приводят после абзацного отступа,
% равного двум знакам, относительно обозначения разделов.
-\renewcommand*\l@subsection{\@dottedtocline{1}{5mm}{3em}}
+\renewcommand*\l@section{\@dottedtocline{1}{5mm}{3em}}
+\renewcommand*\l@subsection{\@dottedtocline{1}{10mm}{3em}}
% ГОСТ 7.32-2017. Пункт 5.4.1:
% Обозначения пунктов приводят после абзацного отступа,
% равного четырем знакам, относительно обозначения разделов.
-\renewcommand*\l@subsubsection{\@dottedtocline{2}{10mm}{4em}}
+\renewcommand*\l@subsubsection{\@dottedtocline{2}{15mm}{4em}}
% Остальное - индуктивно
\renewcommand*\l@paragraph{\@dottedtocline{3}{15mm}{5em}}
+
\setcounter{secnumdepth}{5} % Глубина заголовков - до пятого уровня
\setcounter{tocdepth}{2} % Глубина содержания - до второго уровня
+
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/14-IU8-terms-and-definitions.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-14-terms-and-definitions.sty
index e3e15e2d2e7..544d077a73f 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/14-IU8-terms-and-definitions.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-14-terms-and-definitions.sty
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{14-IU8-terms-and-definitions}[2021/03/21 v1.2 Содержание]
+\ProvidesPackage{IU8-14-terms-and-definitions}[2024/09/09 v1.4 Содержание]
\RequirePackage[
acronym,
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/15-IU8-list-of-abbreviations.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-15-list-of-abbreviations.sty
index d8345fdd1fe..ff904e74eea 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/15-IU8-list-of-abbreviations.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-15-list-of-abbreviations.sty
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{15-IU8-list-of-abbreviations}[2021/03/21 v1.2 Содержание]
+\ProvidesPackage{IU8-15-list-of-abbreviations}[2024/09/09 v1.4 Содержание]
\RequirePackage[abbreviations]{glossaries-extra}
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-16-references.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-16-references.sty
new file mode 100644
index 00000000000..6236003c9ba
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-16-references.sty
@@ -0,0 +1,39 @@
+% Author: CatInCosmicSpace
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{IU8-16-references}[2024/09/09 v1.4 Список использованных источников]
+
+% Сведения об источниках следует располагать в порядке появления ссылок на
+% источники в тексте отчета и нумеровать арабскими цифрами с точкой и печатать
+% с абзацного отступа.
+\usepackage[
+ backend=biber,
+ style=gost-numeric,
+ sorting=none,
+ % refsection=structure,
+ % sorting=ynt,
+]{biblatex}
+
+\defbibenvironment{bibliography}
+ {\list
+ {}
+ {\setlength{\leftmargin}{1.25cm}
+ \setlength{\itemindent}{0em}
+ \setlength{\itemsep}{\bibitemsep}
+ \setlength{\parsep}{\bibparsep}}}
+ {\endlist}
+ {\item\printtext[labelnumberwidth]{\printfield{labelprefix}\printfield{labelnumber}}\addspace}
+
+\defbibheading{bibliography}[СПИСОК~ИСПОЛЬЗОВАННЫХ~ИСТОЧНИКОВ]{\structure{#1}}
+\addto{\captionsrussian}{%
+ \renewcommand{\contentsname}{СОДЕРЖАНИЕ}
+}
+
+\DefineBibliographyStrings{russian}{%
+ urlseen = {дата обращения},
+}
+
+% Специально изменим шрифт для URL, чтобы он соответсвовал ГОСТ и остальному тексту документа
+\renewcommand{\UrlFont}{\normalfont}
+
+% Изменяем шрифт для авторов в списке литературы на обычный
+\renewcommand{\mkgostheading}[1]{\normalfont{#1}} \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/17-IU8-appendices.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-17-appendices.sty
index 025e70b5c8f..9881ec6498d 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/17-IU8-appendices.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-17-appendices.sty
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{17-IU8-appendices}[2021/03/21 v1.2 Приложения]
+\ProvidesPackage{IU8-17-appendices}[2024/09/09 v1.4 Приложения]
\newcommand{\appendixsection}[1]{
\stepcounter{apps}
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/18-IU8-extra.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-18-extra.sty
index 6fb1570340a..9999fd77df5 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/18-IU8-extra.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-18-extra.sty
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{18-IU8-extra}[2021/03/21 v1.2 Разные улучшения]
+\ProvidesPackage{IU8-18-extra}[2024/09/09 v1.4 Разные улучшения]
\RequirePackage{graphicx}
@@ -23,3 +23,18 @@
} % Кликабельные ссылки в pdf
\hbadness=10000
+
+\setlist[enumerate]{
+ leftmargin=\parindent,
+ labelindent=\parindent,
+ align=left,
+ nosep,
+}
+
+\setlist[itemize]{
+ label=\textendash,
+ leftmargin=\parindent,
+ labelindent=\parindent,
+ align=left,
+ nosep,
+}
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/19-IU8-counters.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-19-counters.sty
index 991f9f4d43f..b0c49532dca 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/19-IU8-counters.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-19-counters.sty
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{19-IU8-counters}[2021/03/21 v1.2 Счётчики]
+\ProvidesPackage{IU8-19-counters}[2024/09/09 v1.4 Счётчики]
\RequirePackage{calc}
\RequirePackage{xassoccnt}
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/20-IU8-listing.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-20-listing.sty
index c90194a1d25..85b7f9e2fa5 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/20-IU8-listing.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-20-listing.sty
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{20-IU8-listing}[2021/03/21 v1.2 Листинги]
+\ProvidesPackage{IU8-20-listing}[2024/09/09 v1.4 Листинги]
\RequirePackage{listings}
\RequirePackage{xcolor}
@@ -10,7 +10,7 @@
\lstdefinestyle{IU8}{
frame=single,
- backgroundcolor=\color{seashell},
+ % backgroundcolor=\color{seashell},
commentstyle=\color{blue},
keywordstyle=\color{magenta},
basicstyle=\ttfamily\footnotesize,
@@ -36,3 +36,25 @@
\newcommand{\listing}[2][]{%
\lstinputlisting[caption={\texttt{\detokenize{#2}}},#1]{#2}%
}
+
+\lstnewenvironment{codelisting}[1][]
+{
+\lstset{
+ frame=single,
+ % backgroundcolor=\color{seashell},
+ commentstyle=\color{blue},
+ keywordstyle=\color{magenta},
+ basicstyle=\ttfamily\footnotesize,
+ breakatwhitespace=false,
+ breaklines=true,
+ captionpos=tl,
+ keepspaces=false,
+ showspaces=false,
+ showstringspaces=false,
+ showtabs=false,
+ extendedchars=\true,
+ tabsize=2,
+ #1
+}
+}
+{} \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/21-IU8-math.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-21-math.sty
index b60a4fd6d2c..bda74f008c9 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/21-IU8-math.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-21-math.sty
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{21-IU8-math}[2021/03/21 v1.2 Математика]
+\ProvidesPackage{IU8-21-math}[2024/09/09 v1.4 Математика]
\RequirePackage{amsthm}
\theoremstyle{definition}
diff --git a/Master/texmf-dist/tex/latex/bmstu-iu8/22-IU8-algorithms.sty b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-22-algorithms.sty
index f3fdcee25ef..7232bccaaa6 100644
--- a/Master/texmf-dist/tex/latex/bmstu-iu8/22-IU8-algorithms.sty
+++ b/Master/texmf-dist/tex/latex/bmstu-iu8/IU8-22-algorithms.sty
@@ -1,6 +1,6 @@
% Author: CatInCosmicSpace
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{22-IU8-algorithms}[2021/03/21 v1.2 Алгоритмы]
+\ProvidesPackage{IU8-22-algorithms}[2024/09/09 v1.4 Алгоритмы]
\RequirePackage[linesnumbered,boxruled]{algorithm2e}
\SetAlCapSty{}
diff --git a/Master/texmf-dist/tex/latex/bxjatoucs/bxjatoucs.sty b/Master/texmf-dist/tex/latex/bxjatoucs/bxjatoucs.sty
index b387872640d..04fb01765a4 100644
--- a/Master/texmf-dist/tex/latex/bxjatoucs/bxjatoucs.sty
+++ b/Master/texmf-dist/tex/latex/bxjatoucs/bxjatoucs.sty
@@ -1,7 +1,7 @@
%%
%% This is file 'bxjatoucs.sty'.
%%
-%% Copyright (c) 2019 Takayuki YATO (aka. "ZR")
+%% Copyright (c) 2019-2024 Takayuki YATO (aka. "ZR")
%% GitHub: https://github.com/zr-tex8r
%% Twitter: @zr_tex8r
%%
@@ -53,7 +53,7 @@
%% package declaration
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{bxjatoucs}[2019/10/20 v0.2]
+\ProvidesPackage{bxjatoucs}[2024/07/22 v0.3a]
\def\bxju@pkgname{bxjatoucs}
%--------------------------------------- "check-avail"
@@ -167,6 +167,22 @@
\bxju@ifdefinable\bxjaFastJscToUcsHex{%
\def\bxjaFastJscToUcsHex{%
\bxju@burst-`>\bxju@in@hex\bxju@fast@jsc@to@ucs}}
+%%<*> \bxjaUcsToJis{<ucs>}
+\bxju@ifdefinable\bxjaUcsToJis{%
+ \def\bxjaUcsToJis{%
+ \bxju@burst-`>\bxju@ucs@to@jis}}
+%%<*> \bxjaUcsToEuc{<ucs>}
+\bxju@ifdefinable\bxjaUcsToEuc{%
+ \def\bxjaUcsToEuc{%
+ \bxju@burst-`>\bxju@ucs@to@euc}}
+%%<*> \bxjaUcsToSjis{<ucs>}
+\bxju@ifdefinable\bxjaUcsToSjis{%
+ \def\bxjaUcsToSjis{%
+ \bxju@burst-`>\bxju@ucs@to@sjis}}
+%%<*> \bxjaFastUcsToJsc{<ucs>}
+\bxju@ifdefinable\bxjaFastUcsToJsc{%
+ \def\bxjaFastUcsToJsc{%
+ \bxju@burst-`>\bxju@fast@ucs@to@jsc}}
%--------------------------------------- auxiliary
@@ -195,6 +211,16 @@
\expandafter\bxju@decomp@b\the\numexpr#2-#1*256:#1:}
\def\bxju@decomp@b#1:#2:#3{#3{#2}{#1}}
+%% \bxju@decomp@int{<number>}\CScont
+% Divides the <number> by 94 and returns the quotient and
+% the remainder as \CScont{<high>}{<low>}.
+\def\bxju@decomp@int#1{%
+ \expandafter\bxju@decomp@int@a
+ \number\numexpr\ifnum#1>\ltx@zero(#1-47)/94\else0\fi:#1:}
+\def\bxju@decomp@int@a#1:#2:{%
+ \expandafter\bxju@decomp@int@b\the\numexpr#2-#1*94:#1:}
+\def\bxju@decomp@int@b#1:#2:#3{#3{#2}{#1}}
+
%% \bxju@in@hex\CSconv{<arg>}
\def\bxju@in@hex#1#2{%
\expandafter\bxju@in@hex@a\bxju@burst-`>#1{#2}:>}
@@ -231,6 +257,7 @@
%% umbralist fontdefs
\font\bxju@ul@cid=bxjatoucs-cid
\font\bxju@ul@jis=bxjatoucs-jis
+\font\bxju@ul@tojis=bxjatoucs-tojis
%% \bxju@cid@to@ucs{<cid>}
\def\bxju@cid@to@ucs#1{%
@@ -284,6 +311,55 @@
\def\bxju@fast@jsc@to@ucs#1{%
\number\fontdimen\numexpr(#1)+8\bxju@ul@jis}
+%% \bxju@conv@ucs@to@jsc{<ucs>}\CScont
+% Converts a UCS value <ucs> to JSC and returns the result.
+% If no corresponding JSC codepoint exists, returns 9999.
+\def\bxju@conv@ucs@to@jsc#1{%
+ \expandafter\bxju@conv@ucs@to@jsc@a\number\numexpr#1\bxju@mk}
+\def\bxju@conv@ucs@to@jsc@a#1\bxju@mk{%
+ \bxju@cond\ifnum#1<"10000 \fi{%
+ \expandafter\bxju@conv@ucs@to@jsc@b
+ \number\fontdimen\numexpr(#1+480)/64\bxju@ul@tojis:#1\bxju@mk
+ }{\bxju@conv@ucs@to@jsc@a0\bxju@mk}}
+\def\bxju@conv@ucs@to@jsc@b#1:#2\bxju@mk{%
+ \expandafter\bxju@conv@ucs@to@jsc@c
+ \number\fontdimen\numexpr#2+1088-#1\bxju@ul@tojis\bxju@mk}
+\def\bxju@conv@ucs@to@jsc@c#1\bxju@mk#2{#2{#1}}
+
+%% \bxju@ucs@to@jis{<ucs>}
+\def\bxju@ucs@to@jis#1{%
+ \bxju@check@number{#1}\bxju@ucs@to@jiseuc{8481}}
+\def\bxju@ucs@to@jiseuc#1{%
+ \bxju@conv@ucs@to@jsc{#1}\bxju@ucs@to@jiseuc@a}
+\def\bxju@ucs@to@jiseuc@a#1{%
+ \bxju@cond\ifnum#1=9999 \fi{\ltx@firstoftwo{0}}{%else
+ \bxju@decomp@int{#1}\bxju@ucs@to@jiseuc@b}}
+\def\bxju@ucs@to@jiseuc@b#1#2#3{%
+ \number\numexpr#1*256+#2+#3\relax}
+
+%% \bxju@ucs@to@euc{<ucs>}
+\def\bxju@ucs@to@euc#1{%
+ \bxju@check@number{#1}\bxju@ucs@to@jiseuc{41377}}
+
+%% \bxju@ucs@to@sjis{<ucs>}
+\def\bxju@ucs@to@sjis#1{%
+ \bxju@check@number{#1}\bxju@ucs@to@sjis@a}
+\def\bxju@ucs@to@sjis@a#1{%
+ \bxju@conv@ucs@to@jsc{#1}\bxju@ucs@to@sjis@b}
+\def\bxju@ucs@to@sjis@b#1{%
+ \bxju@cond\ifnum#1=9999 \fi{0}{%else
+ \bxju@decomp@int{#1}\bxju@ucs@to@sjis@c}}
+\def\bxju@ucs@to@sjis@c#1#2{%
+ \number\numexpr#1*128+#2 %
+ \ifodd#1 -33 \else\ifnum#2>62 +1 \fi\fi
+ \ifnum#1<62 +33088 \else +49472 \fi\relax}
+
+%% \bxju@fast@ucs@to@jsc{<ucs>}
+\def\bxju@fast@ucs@to@jsc#1{%
+ \bxju@conv@ucs@to@jsc{#1}\bxju@fast@ucs@to@jsc@a}
+\def\bxju@fast@ucs@to@jsc@a#1{%
+ \bxju@cond\ifnum#1=9999 \fi{-1}{#1}}
+
%--------------------------------------- all done
\let\bxju@next\@undefined
\let\bxju@ifdefinable\@undefined
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls
index 0595b52b4ec..fb1b96a2ebd 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{bxjsarticle}
- [2024/01/22 v2.9b BXJS document classes]
+ [2024/07/19 v2.9c BXJS document classes]
%% このファイルは日本語文字を含みます.
\def\bxjs@clsname{bxjsarticle}
\newif\ifjsc@needsp@tch
@@ -1431,6 +1431,12 @@
\let\sectionmark\@gobble
\let\subsectionmark\@gobble
}
+\let\bxjs@phantomsection\relax
+\g@addto@macro\bxjs@begin@document@hook{%
+ \@ifpackageloaded{hyperref}{%
+ \let\bxjs@phantomsection\phantomsection
+ }{}%
+}
\newcommand*{\jsSubtitle}[1]{\gdef\bxjs@subtitle{#1}}
\renewcommand*{\title}[1]{\bxjs@decl@subtitle\gdef\@title{#1}}
\g@addto@macro\bxjs@begin@document@hook{\bxjs@decl@subtitle}
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls
index ed06d493e4e..a107f3a6f74 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{bxjsbook}
- [2024/01/22 v2.9b BXJS document classes]
+ [2024/07/19 v2.9c BXJS document classes]
%% このファイルは日本語文字を含みます.
\def\bxjs@clsname{bxjsbook}
\newif\ifjsc@needsp@tch
@@ -1467,6 +1467,12 @@
\let\chaptermark\@gobble
\let\sectionmark\@gobble
}
+\let\bxjs@phantomsection\relax
+\g@addto@macro\bxjs@begin@document@hook{%
+ \@ifpackageloaded{hyperref}{%
+ \let\bxjs@phantomsection\phantomsection
+ }{}%
+}
\newcommand*{\jsSubtitle}[1]{\gdef\bxjs@subtitle{#1}}
\renewcommand*{\title}[1]{\bxjs@decl@subtitle\gdef\@title{#1}}
\g@addto@macro\bxjs@begin@document@hook{\bxjs@decl@subtitle}
@@ -2302,8 +2308,9 @@
\fi
\columnseprule.4pt \columnsep 2\jsZw
\ifx\multicols\@undefined
- \twocolumn[\@makeschapterhead{\indexname}%
- \addcontentsline{toc}{chapter}{\indexname}]%
+ \twocolumn[\bxjs@phantomsection
+ \addcontentsline{toc}{chapter}{\indexname}%
+ \@makeschapterhead{\indexname}]%
\else
\ifdim\textwidth<\fullwidth
\setlength{\evensidemargin}{\oddsidemargin}
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty b/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty
index ba235ec3ba8..d5c4e72f6ae 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{bxjscjkcat}
- [2024/01/22 v2.9b BXJS document classes]
+ [2024/07/19 v2.9c BXJS document classes]
\def\bxjx@pkgname{bxjscjkcat}
\newcount\bxjx@cnta
\@onlypreamble\bxjx@tmpdo
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty b/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty
index a621868b9d0..b6ca0c76d8b 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{bxjscompat}
- [2024/01/22 v2.9b BXJS document classes]
+ [2024/07/19 v2.9c BXJS document classes]
\def\bxac@pkgname{bxjscompat}
\let\bxac@engine=n
\def\bxac@do#1#2{%
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def
index 44e1b044b0c..7ff3ed48a3f 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
\ProvidesFile{bxjsja-minimal.def}
- [2024/01/22 v2.9b BXJS document classes]
+ [2024/07/19 v2.9c BXJS document classes]
%% このファイルは日本語文字を含みます
\let\bxjs@tmpa\relax
\ifx J\jsEngine \def\bxjs@tmpa{NTT-jTeX}\fi
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def
index 799fd1e7cdf..adf5d66c4b2 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
\ProvidesFile{bxjsja-modern.def}
- [2024/01/22 v2.9b BXJS document classes]
+ [2024/07/19 v2.9c BXJS document classes]
\input{bxjsja-standard.def}
\ifnum0\if x\jsEngine1\fi\if l\jsEngine1\fi=\z@
\def\encodingdefault{T1}%
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def
index c4f3bf7a64f..bd595cff6e1 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
\ProvidesFile{bxjsja-pandoc.def}
- [2024/01/22 v2.9b BXJS document classes]
+ [2024/07/19 v2.9c BXJS document classes]
\if x\jsEngine
\PassOptionsToPackage{nospace}{xeCJK}
\fi
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def
index b8862a44301..bc05f69e940 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
\ProvidesFile{bxjsja-standard.def}
- [2024/01/22 v2.9b BXJS document classes]
+ [2024/07/19 v2.9c BXJS document classes]
%% このファイルは日本語文字を含みます
\input{bxjsja-minimal.def}
\bxjs@simplejasetupfalse
@@ -240,6 +240,14 @@
\DeclareHookRule{shipout/firstpage}{pxjahyper/enc}{<}{hyperref}%
\global\let\bxjs@urgent@special@a\relax}
\fi
+\@onlypreamble\bxjs@patch@RDMA@for@bm
+\def\bxjs@patch@RDMA@for@bm{%
+ \let\bxjs@org@DualLang@mathalph@bet\DualLang@mathalph@bet
+ \def\DualLang@mathalph@bet{%
+ \ifx\bm\@firstofone \expandafter\@firstoftwo
+ \else \expandafter\bxjs@org@DualLang@mathalph@bet
+ \fi}%
+}
\if j\jsEngine
\newcommand*{\setkanjiskip}{\jsSetKanjiSkip}
\newcommand*{\getkanjiskip}{\jsGetKanjiSkip}
@@ -386,11 +394,10 @@
\DeclareMathAlphabet{\mathgt}{\jsc@JYn}{gt}{m}{n}
\g@addto@macro\bxjs@begin@document@hook{%
\ifx\reDeclareMathAlphabet\@undefined\else
- \@ifpackageloaded{bm}{}{%else
+ \@ifpackageloaded{bm}{\bxjs@patch@RDMA@for@bm}{}%
\reDeclareMathAlphabet{\mathrm}{\@mathrm}{\@mathmc}%
\reDeclareMathAlphabet{\mathbf}{\@mathbf}{\@mathgt}%
\reDeclareMathAlphabet{\mathsf}{\@mathsf}{\@mathgt}%
- }%
\fi}
\fi
\else\if \if p\jsEngine T\else\if n\jsEngine T\else F\fi\fi T
@@ -606,6 +613,7 @@
\@ltj@match@familytrue
\fi
\g@addto@macro\bxjs@begin@document@hook{%
+ \@ifpackageloaded{bm}{\bxjs@patch@RDMA@for@bm}{}%
\reDeclareMathAlphabet{\mathrm}{\mathrm}{\mathmc}%
\reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}%
\reDeclareMathAlphabet{\mathsf}{\mathsf}{\mathgt}}%
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty b/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty
index 04a51b3ed3d..09990c0acaa 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{bxjspandoc}
- [2024/01/22 v2.9b BXJS document classes]
+ [2024/07/19 v2.9c BXJS document classes]
%% このファイルは日本語文字を含みます.
\def\bxjsp@pkgname{bxjspandoc}
\let\bxjsp@engine=n
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls
index b3c7753c1d3..51568cfaa5c 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{bxjsreport}
- [2024/01/22 v2.9b BXJS document classes]
+ [2024/07/19 v2.9c BXJS document classes]
%% このファイルは日本語文字を含みます.
\def\bxjs@clsname{bxjsreport}
\newif\ifjsc@needsp@tch
@@ -1441,6 +1441,12 @@
\let\chaptermark\@gobble
\let\sectionmark\@gobble
}
+\let\bxjs@phantomsection\relax
+\g@addto@macro\bxjs@begin@document@hook{%
+ \@ifpackageloaded{hyperref}{%
+ \let\bxjs@phantomsection\phantomsection
+ }{}%
+}
\newcommand*{\jsSubtitle}[1]{\gdef\bxjs@subtitle{#1}}
\renewcommand*{\title}[1]{\bxjs@decl@subtitle\gdef\@title{#1}}
\g@addto@macro\bxjs@begin@document@hook{\bxjs@decl@subtitle}
@@ -2324,8 +2330,9 @@
\fi
\columnseprule.4pt \columnsep 2\jsZw
\ifx\multicols\@undefined
- \twocolumn[\@makeschapterhead{\indexname}%
- \addcontentsline{toc}{chapter}{\indexname}]%
+ \twocolumn[\bxjs@phantomsection
+ \addcontentsline{toc}{chapter}{\indexname}%
+ \@makeschapterhead{\indexname}]%
\else
\ifdim\textwidth<\fullwidth
\setlength{\evensidemargin}{\oddsidemargin}
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls
index d4b76d37c83..95ff31ff333 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{bxjsslide}
- [2024/01/22 v2.9b BXJS document classes]
+ [2024/07/19 v2.9c BXJS document classes]
%% このファイルは日本語文字を含みます.
\def\bxjs@clsname{bxjsslide}
\newif\ifjsc@needsp@tch
@@ -1429,6 +1429,12 @@
\let\sectionmark\@gobble
\let\subsectionmark\@gobble
}
+\let\bxjs@phantomsection\relax
+\g@addto@macro\bxjs@begin@document@hook{%
+ \@ifpackageloaded{hyperref}{%
+ \let\bxjs@phantomsection\phantomsection
+ }{}%
+}
\newcommand*{\jsSubtitle}[1]{\gdef\bxjs@subtitle{#1}}
\renewcommand*{\title}[1]{\bxjs@decl@subtitle\gdef\@title{#1}}
\g@addto@macro\bxjs@begin@document@hook{\bxjs@decl@subtitle}
diff --git a/Master/texmf-dist/tex/latex/bxpdfver/bxpdfver.sty b/Master/texmf-dist/tex/latex/bxpdfver/bxpdfver.sty
index ccc9825f6fb..296774068c6 100644
--- a/Master/texmf-dist/tex/latex/bxpdfver/bxpdfver.sty
+++ b/Master/texmf-dist/tex/latex/bxpdfver/bxpdfver.sty
@@ -1,7 +1,7 @@
%%
%% This is file 'bxpdfver.sty'.
%%
-%% Copyright (c) 2014-2022 Takayuki YATO (aka. "ZR")
+%% Copyright (c) 2014-2024 Takayuki YATO (aka. "ZR")
%% GitHub: https://github.com/zr-tex8r
%% Twitter: @zr_tex8r
%%
@@ -10,12 +10,8 @@
%% package declaration
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{bxpdfver}[2022/04/28 v0.6]
+\ProvidesPackage{bxpdfver}[2024/08/03 v0.8]
\def\bxpv@pkgname{bxpdfver}
-
-%% preparations
-\RequirePackage{ifthen}[]% for \newboolean
-\newif\ifbxpv@ok
\providecommand\bxDebug[1]{}
%--------------------------------------- package options
@@ -124,13 +120,23 @@
\fi
\fi
-%--------------------------------------- helpers
+%--------------------------------------- general
+
+%% packages
+\RequirePackage{ifthen}[]% for \newboolean
+
+%% variables
+\newif\ifbxpv@ok
%% unique tokens
\def\bxpv@end{\bxpv@end@}
\def\bxpv@mt{\bxpv@mt@}
\let\bxpv@mk\noindent
+%% \ifbxpv@read@file@ok
+% Whether or not the last \bxpv@read@file succeeded.
+\newif\ifbxpv@read@file@ok
+
%% \bxpv@csletcs
\def\bxpv@csletcs#1#2{%
\expandafter\let\csname#1\expandafter\endcsname\csname#2\endcsname
@@ -144,6 +150,13 @@
\def#3{#2}%
}
+%% \bxpv@info{<message>}
+% Issues an info message.
+\@onlypreamble\bxpv@info
+\def\bxpv@info#1{%
+ \PackageInfo\bxpv@pkgname{#1\@gobble}%
+}
+
%% \bxpv@warn{<message>}
% Issues a warning.
\@onlypreamble\bxpv@warn
@@ -175,17 +188,61 @@
}
%% \ifbxpv@defined
-\let\ifbxpv@defined\ifdefined
-\ifx\ifbxpv@defined\@undefined \expandafter\@firstofone
-\else \expandafter\@gobble
-\fi{\let\ifbxpv@defined\iffalse}
+% Identical to \ifdefined, and is used only in e-TeX-aware code.
+% On non-e-TeX engines it is made \iffalse to keep \if-balancedness.
+\bxpv@csletcs{ifbxpv@defined}{%
+ if\ifx\ifdefined\@undefined false\else defined\fi}
+
+%% \bxpv@begin@document@hook
+% The begin-document hook.
+\@onlypreamble\bxpv@begin@document@hook
+\let\bxpv@begin@document@hook\@empty
+\AtBeginDocument{\bxpv@begin@document@hook}
+
+%--------------------------------------- environment check
%% \ifbxpv@old@hook@system
\newif\ifbxpv@old@hook@system
\@ifl@t@r\fmtversion{2020/10/01}{}{\bxpv@old@hook@systemtrue}
+%% \ifbxpv@pdfmanagement@ok
+% Whether this package is supporting the LaTeX PDF management
+% of the current kernel.
+% (If the PDF management is active but this switch is off,
+% then this package will switch to no-op mode.)
+\newif\ifbxpv@pdfmanagement@ok
+
+%% check for new PDF management
+\if t\bxpv@ignore@pdfmanagement\else
+ \ifx\IfPDFManagementActiveTF\@undefined\else
+ \IfPDFManagementActiveTF{%
+ \let\bxpv@drv@type=m%
+ \def\bxpv@drv@name{latex-pdf}%
+ \@ifl@t@r\fmtversion{2022/06/01}{%
+ \bxpv@pdfmanagement@oktrue
+ }{}
+ }{}
+ \fi
+\fi
+\ifx m\bxpv@drv@type
+ \ifbxpv@pdfmanagement@ok
+ \bxpv@warn
+ {New PDF management is active.\MessageBreak
+ The driver is set to '\bxpv@drv@name'}%
+ % Here \ExplSyntaxOn should be available.
+ \else
+ \bxpv@warn
+ {New PDF management is active, but\MessageBreak
+ the kernel is too old (before 2022/06/01).\MessageBreak
+ Thus this package will not work}%
+ \fi
+\fi
+
%--------------------------------------- internal dispatchers
+% Initially all dispatchers are "unavailable".
+% They are later redefined according to the driver type.
+
%% \bxpv@suppress@compress
\@onlypreamble\bxpv@suppress@compress
\def\bxpv@suppress@compress{%
@@ -224,25 +281,11 @@
\@onlypreamble\bxpv@cancel@obj@compress
\let\bxpv@cancel@obj@compress\relax
-%% \bxpv@begin@document@hook
-% The begin-document hook.
-\@onlypreamble\bxpv@begin@document@hook
-\let\bxpv@begin@document@hook\@empty
-\AtBeginDocument{\bxpv@begin@document@hook}
\g@addto@macro\bxpv@begin@document@hook{%
\bxpv@check@hyperref % must come first
}
-%% check for new PDF management
-\if t\bxpv@ignore@pdfmanagement\else
- \ifx\IfPDFManagementActiveTF\@undefined\else
- \IfPDFManagementActiveTF{%
- \global\let\bxpv@drv@type=m%
- }{}
- \fi
-\fi
-
-%% adjust internal dispatchers
+%% Redefine internal dispatchers.
\ifx 0\bxpv@drv@type\else %--------
\begingroup
@@ -264,9 +307,31 @@
%% switch
\if m\bxpv@drv@type
- %% when in new PDF management
- \bxpv@warn
- {New PDF management is active}%
+ \ifbxpv@pdfmanagement@ok
+ % Here all l3pdf function is assumed to be available.
+ \gdef\bxpv@check@version{\bxpv@oktrue}
+ \ExplSyntaxOn %!!!!!!
+ \tl_new:N \g__bxpv_org_version
+ \exp_args:NNe \tl_gset:Nn \g__bxpv_org_version { \pdf_version: }
+ \cs_gset:Npn \bxpv@set@version
+ {
+ \token_if_eq_meaning:NNTF \bxpdfverMinorVersion \relax
+ { \pdf_version_gset:n { \g__bxpv_org_version } }
+ {
+ \pdf_version_gset:n
+ {
+ \int_use:N \bxpdfverMajorVersion
+ . \int_use:N \bxpdfverMinorVersion
+ }
+ }
+ }
+ % \pdf_uncompress: does both.
+ \cs_gset:Npn \bxpv@suppress@compress
+ { \pdf_uncompress: }
+ \cs_gset:Npn \bxpv@suppress@obj@compress
+ { \pdf_uncompress: }
+ \ExplSyntaxOff %!!!!!!
+ \fi
\else\ifnum\bxpv@pdfoutput>\z@
%% when in PDF mode
\global\let\bxpv@drv@type=p
@@ -386,12 +451,14 @@
\bxpv@warn
{Unsupported engine}%
\else\if d\bxpv@drv@type % 'dvipdfmx'
+ % All the real settings are done in the begin-document hook,
+ % so the dispatchers themselves will do nothing (if available).
\global\let\bxpv@suppress@compress\relax
\global\let\bxpv@suppress@obj@compress\relax
\global\let\bxpv@check@version\relax
\global\let\bxpv@set@version\relax
\global\let\bxpv@set@decimaldigits\relax
- %\global\let\bxpv@set@pkresolution\relax
+ \global\let\bxpv@set@pkresolution\relax
\global\let\bxpv@preserve@destinations\relax
\g@addto@macro\bxpv@begin@document@hook{%
\bxpv@begin@document@dvipdfmx
@@ -671,6 +738,7 @@
\fi
%% variables
+\let\bxpv@dvipdfmx@known@min\relax % minimum known dviodfmx version
\let\bxpv@C@value\relax
%% \bxpv@C@bits
@@ -689,6 +757,7 @@
%% \bxpv@begin@document@dvipdfmx
\@onlypreamble\bxpv@begin@document@dvipdfmx
\def\bxpv@begin@document@dvipdfmx{%
+ \bxpv@get@dvipdfmx@known@min
% PDF version
\ifx\bxpdfverMajorVersion\tw@
\bxpv@check@dvipdfmx@version{20180217}%
@@ -701,8 +770,8 @@
\bxpv@put@special{pdf:minorversion \the\bxpdfverMinorVersion}%
\fi
\ifx\bxpdfverMinorVersion\relax\else
- \bxpv@cache@fetch{dvipdfmxver}%
- \ifnum\bxpv@cache@@dvipdfmxver<20180217 \else
+ \bxpv@at@least@dvipdfmx@version{20180217}%
+ \ifbxpv@ok
\bxpv@put@special{pdf:majorversion \the\bxpdfverMajorVersion}%
\fi
\fi
@@ -734,7 +803,9 @@
\fi
% PK resolution
\ifx\bxpdfverPkResolution\relax\else
- \iffalse % This will never work....
+ \bxpv@check@dvipdfmx@version{20211016}%
+ {Cannot set PK resolution}%
+ \ifbxpv@ok
\bxpv@put@special{dvipdfmx:config r \the\bxpdfverPkResolution}%
\fi
\fi
@@ -748,10 +819,9 @@
\fi
% C option value
\ifx\bxpv@C@bits\@empty\else
- \bxpv@cache@fetch{dvipdfmxcfg}%
- \def\bxpv@next##1##2\bxpv@mk{\def\bxpv@C@value{##1}}%
- \expandafter\bxpv@next\bxpv@cache@@dvipdfmxcfg{0}\bxpv@mk
- \bxpv@rc@bitset{\bxpv@C@value}{64}%
+ % When C option is used, its value is automatically OR'ed with
+ % the current value, so we need not read the config for that.
+ \def\bxpv@C@value{0}%
\def\do##1{%
\bxpv@rc@bitset{\bxpv@C@value}{##1}%
\let\bxpv@C@value\bxpv@rc@num}%
@@ -776,25 +846,67 @@
\fi
}
+%% \bxpv@get@dvipdfmx@known@min
+% Gathers the information and sets \bxpv@dvipdfmx@known@min,
+% without actually spawning extractbb.
+% (Called in the begin-document hook.)
+\@onlypreamble\bxpv@get@dvipdfmx@known@min
+\def\bxpv@get@dvipdfmx@known@min{%
+ % initially no information
+ \def\bxpv@dvipdfmx@known@min{0}%
+ % l3backend-dvipdfmx of revision 2022-04-10 or later requires
+ % dvipdfmx of version 20201111 or later.
+ \def\bxpv@tmpa{def}%
+ \let\bxpv@tmpb\@gobbletwo
+ \@ifl@aded\bxpv@tmpa{l3backend-dvipdfmx}{%
+ \def\bxpv@tmpb{\@ifl@ter\bxpv@tmpa{l3backend-dvipdfmx}}%
+ }{}%
+ % Just in case....
+ \@ifl@aded\bxpv@tmpa{l3backend-dvips}{%
+ \def\bxpv@tmpb{\@ifl@ter\bxpv@tmpa{l3backend-dvips}}%
+ }{}%
+ \bxpv@tmpb{2022/04/10}{%
+ % Now the version is known to be 20201111 or later.
+ % This information can save much need for spawning extractbb.
+ \def\bxpv@dvipdfmx@known@min{20201111}%
+ }{}%
+ \bxDebug{dvipdfmx-known-min:\bxpv@dvipdfmx@known@min}%
+}
+
+%% \bxpv@at@least@dvipdfmx@version{<version>}
+% Checks if dvipdfmx >= <version> and sets bxpv@ok.
+\@onlypreamble\bxpv@at@least@dvipdfmx@version
+\def\bxpv@at@least@dvipdfmx@version#1{%
+ % first check using known-min
+ \ifnum\bxpv@dvipdfmx@known@min<#1
+ % get real version
+ \bxpv@cache@fetch{dvipdfmxver}%
+ \bxpv@info
+ {dvipdfmx version is \bxpv@cache@@dvipdfmxver}%
+ \bxpv@oktrue
+ \ifnum\bxpv@cache@@dvipdfmxver<#1
+ \bxpv@okfalse
+ \fi
+ \else % new enough
+ \bxpv@oktrue
+ \fi
+}
+
%% \bxpv@check@dvipdfmx@version
\@onlypreamble\bxpv@check@dvipdfmx@version
\def\bxpv@check@dvipdfmx@version#1#2{%
- \bxpv@cache@fetch{dvipdfmxver}%
- \bxpv@okfalse
- \ifnum\bxpv@cache@@dvipdfmxver=\z@
+ \bxpv@at@least@dvipdfmx@version{#1}%
+ \ifbxpv@ok % no-op
+ \else\ifnum\bxpv@cache@@dvipdfmxver=\z@
\bxpv@fail
{#2, because the\MessageBreak
version of dvipdfmx in use is unknown
\MessageBreak (v.#1 or later is required)}%
- \else\ifnum\bxpv@cache@@dvipdfmxver<#1
+ \else
\bxpv@fail
{#2, because the\MessageBreak
version of dvipdfmx in use (v.\bxpv@cache@@dvipdfmxver) is too old
\MessageBreak (v.#1 or later is required)}%
- \else
- \PackageInfo\bxpv@pkgname
- {dvipdfmx version is \bxpv@cache@@dvipdfmxver\@gobble}%
- \bxpv@oktrue
\fi\fi
}
@@ -950,10 +1062,6 @@
\let\bxpv@rf@line\relax % line content
\let\bxpv@rf@cont\relax % continue to read?
-%% \ifbxpv@read@file@ok
-% Whether or not the last \bxpv@read@file succeeded.
-\newboolean{bxpv@read@file@ok}
-
%% \bxpv@read@file{<file-name>}{<line-parser-code>}
% Reads from a text file. The line parser takes as #1 the
% content of each line.
diff --git a/Master/texmf-dist/tex/latex/catppuccinpalette/catppuccinpalette.sty b/Master/texmf-dist/tex/latex/catppuccinpalette/catppuccinpalette.sty
index 4a907a6c0d2..7d9677428d1 100644
--- a/Master/texmf-dist/tex/latex/catppuccinpalette/catppuccinpalette.sty
+++ b/Master/texmf-dist/tex/latex/catppuccinpalette/catppuccinpalette.sty
@@ -8,19 +8,29 @@
%%
%% This is a generated file.
%%
-%% Copyright (C) 2024 by Lukas Heindl <oss.heindl+latex@protonmail.com>
-%% --------------------------------------------------------------------------
-%% 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.
+%% Copyright (c) 2021 Catppuccin
+%%
+%% Permission is hereby granted, free of charge, to any person obtaining a copy
+%% of this software and associated documentation files (the "Software"), to deal
+%% in the Software without restriction, including without limitation the rights
+%% to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+%% copies of the Software, and to permit persons to whom the Software is
+%% furnished to do so, subject to the following conditions:
+%%
+%% The above copyright notice and this permission notice shall be included in all
+%% copies or substantial portions of the Software.
+%%
+%% THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+%% IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+%% FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+%% AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+%% LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+%% OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+%% SOFTWARE.
%%
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesPackage{catppuccinpalette}
- [2024/05/22 v1.0.2 catppuccin xcolor palette]
+ [2024/08/13 v1.1.0 catppuccin xcolor palette]
\NeedsTeXFormat{LaTeX2e}[1994/06/01]
\RequirePackage{pgfopts}
\RequirePackage{xcolor}
@@ -28,16 +38,24 @@
\newif\ifcatppuccinpalette@textcolor
\pgfkeys{
/catppuccinPalette/.cd,
+Latte/.style={style=Latte},
+latte/.style={style=Latte},
+Frappe/.style={style=Frappe},
+frappe/.style={style=Frappe},
+Macchiato/.style={style=Macchiato},
+macchiato/.style={style=Macchiato},
+Mocha/.style={style=Mocha},
+mocha/.style={style=Mocha},
style/.is choice,
style/.value required,
style/Latte/.code = {\def\catppuccinpalette@style{Latte}},
-style/latte/.forward to = /catppuccinPalette/style/Latte,
+style/latte/.style = {style=Latte},
style/Frappe/.code = {\def\catppuccinpalette@style{Frappe}},
-style/frappe/.forward to = /catppuccinPalette/style/frappe,
+style/frappe/.style = {style=Frappe},
style/Macchiato/.code = {\def\catppuccinpalette@style{Macchiato}},
-style/macchiato/.forward to = /catppuccinPalette/style/Macchiato,
+style/macchiato/.style = {style=Macchiato},
style/Mocha/.code = {\def\catppuccinpalette@style{Mocha}},
-style/mocha/.forward to = /catppuccinPalette/style/Mocha,
+style/mocha/.style = {style=Mocha},
textcolor/.is if = catppuccinpalette@textcolor,
textcolor/.default = true,
pagecolor/.is if = catppuccinpalette@pagecolor,
@@ -47,7 +65,7 @@ textcolor = false,
pagecolor = false,
style = Latte,
}
-\ProcessPgfOptions*
+\ProcessPgfOptions{catppuccinPalette}
\preparecolorset{RGB/HTML}{CatLatte}{}{%
Rosewater,220,138,120/DC8A78;%
Flamingo,221,120,120/DD7878;%
@@ -81,6 +99,40 @@ Crust,220,224,232/DCE0E8%
\colorlet{CatLatteSuccess}{CatLatteGreen}
\colorlet{CatLatteWarning}{CatLatteYellow}
\colorlet{CatLatteError}{CatLatteRed}
+
+\preparecolorset{RGB/HTML}{CtpLatte}{}{%
+Rosewater,220,138,120/DC8A78;%
+Flamingo,221,120,120/DD7878;%
+Pink,234,118,203/EA76CB;%
+Mauve,136,57,239/8839EF;%
+Red,210,15,57/D20F39;%
+Maroon,230,69,83/E64553;%
+Peach,254,100,11/FE640B;%
+Yellow,223,142,29/DF8E1D;%
+Green,64,160,43/40A02B;%
+Teal,23,146,153/179299;%
+Sky,4,165,229/04A5E5;%
+Sapphire,32,159,181/209FB5;%
+Blue,30,102,245/1E66F5;%
+Lavender,114,135,253/7287FD;%
+Text,76,79,105/4C4F69;%
+Subtext1,92,95,119/5C5F77;%
+Subtext0,108,111,133/6C6F85;%
+Overlay2,124,127,147/7C7F93;%
+Overlay1,140,143,161/8C8FA1;%
+Overlay0,156,160,176/9CA0B0;%
+Surface2,172,176,190/ACB0BE;%
+Surface1,188,192,204/BCC0CC;%
+Surface0,204,208,218/CCD0DA;%
+Base,239,241,245/EFF1F5;%
+Mantle,230,233,239/E6E9EF;%
+Crust,220,224,232/DCE0E8%
+}
+\colorlet{CtpLatteBackground}{CtpLatteBase}
+\colorlet{CtpLatteLink}{CtpLatteBlue}
+\colorlet{CtpLatteSuccess}{CtpLatteGreen}
+\colorlet{CtpLatteWarning}{CtpLatteYellow}
+\colorlet{CtpLatteError}{CtpLatteRed}
\preparecolorset{RGB/HTML}{CatFrappe}{}{%
Rosewater,242,213,207/F2D5CF;%
Flamingo,238,190,190/EEBEBE;%
@@ -114,6 +166,41 @@ Crust,35,38,52/232634%
\colorlet{CatFrappeSuccess}{CatFrappeGreen}
\colorlet{CatFrappeWarning}{CatFrappeYellow}
\colorlet{CatFrappeError}{CatFrappeRed}
+
+\preparecolorset{RGB/HTML}{CtpFrappe}{}{%
+Rosewater,242,213,207/F2D5CF;%
+Flamingo,238,190,190/EEBEBE;%
+Pink,244,184,228/F4B8E4;%
+Mauve,202,158,230/CA9EE6;%
+Red,231,130,132/E78284;%
+Maroon,234,153,156/EA999C;%
+Peach,239,159,118/EF9F76;%
+Yellow,229,200,144/E5C890;%
+Green,166,209,137/A6D189;%
+Teal,129,200,190/81C8BE;%
+Sky,153,209,219/99D1DB;%
+Sapphire,133,193,220/85C1DC;%
+Blue,140,170,238/8CAAEE;%
+Lavender,186,187,241/BABBF1;%
+Text,198,208,245/C6D0F5;%
+Subtext1,181,191,226/B5BFE2;%
+Subtext0,165,173,206/A5ADCE;%
+Overlay2,148,156,187/949CBB;%
+Overlay1,131,139,167/838BA7;%
+Overlay0,115,121,148/737994;%
+Surface2,98,104,128/626880;%
+Surface1,81,87,109/51576D;%
+Surface0,65,69,89/414559;%
+Base,48,52,70/303446;%
+Mantle,41,44,60/292C3C;%
+Crust,35,38,52/232634%
+}
+\colorlet{CtpFrappeBackground}{CtpFrappeBase}
+\colorlet{CtpFrappeLink}{CtpFrappeBlue}
+\colorlet{CtpFrappeSuccess}{CtpFrappeGreen}
+\colorlet{CtpFrappeWarning}{CtpFrappeYellow}
+\colorlet{CtpFrappeError}{CtpFrappeRed}
+
\preparecolorset{RGB/HTML}{CatMacchiato}{}{%
Rosewater,244,219,214/F4DBD6;%
Flamingo,240,198,198/F0C6C6;%
@@ -147,6 +234,41 @@ Crust,24,25,38/181926%
\colorlet{CatMacchiatoSuccess}{CatMacchiatoGreen}
\colorlet{CatMacchiatoWarning}{CatMacchiatoYellow}
\colorlet{CatMacchiatoError}{CatMacchiatoRed}
+
+\preparecolorset{RGB/HTML}{CtpMacchiato}{}{%
+Rosewater,244,219,214/F4DBD6;%
+Flamingo,240,198,198/F0C6C6;%
+Pink,245,189,230/F5BDE6;%
+Mauve,198,160,246/C6A0F6;%
+Red,237,135,150/ED8796;%
+Maroon,238,153,160/EE99A0;%
+Peach,245,169,127/F5A97F;%
+Yellow,238,212,159/EED49F;%
+Green,166,218,149/A6DA95;%
+Teal,139,213,202/8BD5CA;%
+Sky,145,215,227/91D7E3;%
+Sapphire,125,196,228/7DC4E4;%
+Blue,138,173,244/8AADF4;%
+Lavender,183,189,248/B7BDF8;%
+Text,202,211,245/CAD3F5;%
+Subtext1,184,192,224/B8C0E0;%
+Subtext0,165,173,203/A5ADCB;%
+Overlay2,147,154,183/939AB7;%
+Overlay1,128,135,162/8087A2;%
+Overlay0,110,115,141/6E738D;%
+Surface2,91,96,120/5B6078;%
+Surface1,73,77,100/494D64;%
+Surface0,54,58,79/363A4F;%
+Base,36,39,58/24273A;%
+Mantle,30,32,48/1E2030;%
+Crust,24,25,38/181926%
+}
+\colorlet{CtpMacchiatoBackground}{CtpMacchiatoBase}
+\colorlet{CtpMacchiatoLink}{CtpMacchiatoBlue}
+\colorlet{CtpMacchiatoSuccess}{CtpMacchiatoGreen}
+\colorlet{CtpMacchiatoWarning}{CtpMacchiatoYellow}
+\colorlet{CtpMacchiatoError}{CtpMacchiatoRed}
+
\preparecolorset{RGB/HTML}{CatMocha}{}{%
Rosewater,245,224,220/F5E0DC;%
Flamingo,242,205,205/F2CDCD;%
@@ -180,43 +302,117 @@ Crust,17,17,27/11111B%
\colorlet{CatMochaSuccess}{CatMochaGreen}
\colorlet{CatMochaWarning}{CatMochaYellow}
\colorlet{CatMochaError}{CatMochaRed}
-\colorlet{CatRosewater}{Cat\catppuccinpalette@style Rosewater}
-\colorlet{CatFlamingo}{Cat\catppuccinpalette@style Flamingo}
-\colorlet{CatPink}{Cat\catppuccinpalette@style Pink}
-\colorlet{CatMauve}{Cat\catppuccinpalette@style Mauve}
-\colorlet{CatRed}{Cat\catppuccinpalette@style Red}
-\colorlet{CatMaroon}{Cat\catppuccinpalette@style Maroon}
-\colorlet{CatPeach}{Cat\catppuccinpalette@style Peach}
-\colorlet{CatYellow}{Cat\catppuccinpalette@style Yellow}
-\colorlet{CatGreen}{Cat\catppuccinpalette@style Green}
-\colorlet{CatTeal}{Cat\catppuccinpalette@style Teal}
-\colorlet{CatSky}{Cat\catppuccinpalette@style Sky}
-\colorlet{CatSapphire}{Cat\catppuccinpalette@style Sapphire}
-\colorlet{CatBlue}{Cat\catppuccinpalette@style Blue}
-\colorlet{CatLavender}{Cat\catppuccinpalette@style Lavender}
-\colorlet{CatText}{Cat\catppuccinpalette@style Text}
-\colorlet{CatSubtext1}{Cat\catppuccinpalette@style Subtext1}
-\colorlet{CatSubtext0}{Cat\catppuccinpalette@style Subtext0}
-\colorlet{CatOverlay2}{Cat\catppuccinpalette@style Overlay2}
-\colorlet{CatOverlay1}{Cat\catppuccinpalette@style Overlay1}
-\colorlet{CatOverlay0}{Cat\catppuccinpalette@style Overlay0}
-\colorlet{CatSurface2}{Cat\catppuccinpalette@style Surface2}
-\colorlet{CatSurface1}{Cat\catppuccinpalette@style Surface1}
-\colorlet{CatSurface0}{Cat\catppuccinpalette@style Surface0}
-\colorlet{CatBase}{Cat\catppuccinpalette@style Base}
-\colorlet{CatMantle}{Cat\catppuccinpalette@style Mantle}
-\colorlet{CatCrust}{Cat\catppuccinpalette@style Crust}
-\colorlet{CatBackground}{Cat\catppuccinpalette@style Base}
-\colorlet{CatLink}{Cat\catppuccinpalette@style Blue}
-\colorlet{CatSuccess}{Cat\catppuccinpalette@style Green}
-\colorlet{CatWarning}{Cat\catppuccinpalette@style Yellow}
-\colorlet{CatError}{Cat\catppuccinpalette@style Red}
-\ifcatppuccinpalette@pagecolor
-\pagecolor{CatBackground}
-\fi
-\ifcatppuccinpalette@textcolor
-\color{CatText}
-\fi
+
+\preparecolorset{RGB/HTML}{CtpMocha}{}{%
+Rosewater,245,224,220/F5E0DC;%
+Flamingo,242,205,205/F2CDCD;%
+Pink,245,194,231/F5C2E7;%
+Mauve,203,166,247/CBA6F7;%
+Red,243,139,168/F38BA8;%
+Maroon,235,160,172/EBA0AC;%
+Peach,250,179,135/FAB387;%
+Yellow,249,226,175/F9E2AF;%
+Green,166,227,161/A6E3A1;%
+Teal,148,226,213/94E2D5;%
+Sky,137,220,235/89DCEB;%
+Sapphire,116,199,236/74C7EC;%
+Blue,137,180,250/89B4FA;%
+Lavender,180,190,254/B4BEFE;%
+Text,205,214,244/CDD6F4;%
+Subtext1,186,194,222/BAC2DE;%
+Subtext0,166,173,200/A6ADC8;%
+Overlay2,147,153,178/9399B2;%
+Overlay1,127,132,156/7F849C;%
+Overlay0,108,112,134/6C7086;%
+Surface2,88,91,112/585B70;%
+Surface1,69,71,90/45475A;%
+Surface0,49,50,68/313244;%
+Base,30,30,46/1E1E2E;%
+Mantle,24,24,37/181825;%
+Crust,17,17,27/11111B%
+}
+\colorlet{CtpMochaBackground}{CtpMochaBase}
+\colorlet{CtpMochaLink}{CtpMochaBlue}
+\colorlet{CtpMochaSuccess}{CtpMochaGreen}
+\colorlet{CtpMochaWarning}{CtpMochaYellow}
+\colorlet{CtpMochaError}{CtpMochaRed}
+
+\colorlet{CatRosewater}{Ctp\catppuccinpalette@style Rosewater}
+\colorlet{CatFlamingo}{Ctp\catppuccinpalette@style Flamingo}
+\colorlet{CatPink}{Ctp\catppuccinpalette@style Pink}
+\colorlet{CatMauve}{Ctp\catppuccinpalette@style Mauve}
+\colorlet{CatRed}{Ctp\catppuccinpalette@style Red}
+\colorlet{CatMaroon}{Ctp\catppuccinpalette@style Maroon}
+\colorlet{CatPeach}{Ctp\catppuccinpalette@style Peach}
+\colorlet{CatYellow}{Ctp\catppuccinpalette@style Yellow}
+\colorlet{CatGreen}{Ctp\catppuccinpalette@style Green}
+\colorlet{CatTeal}{Ctp\catppuccinpalette@style Teal}
+\colorlet{CatSky}{Ctp\catppuccinpalette@style Sky}
+\colorlet{CatSapphire}{Ctp\catppuccinpalette@style Sapphire}
+\colorlet{CatBlue}{Ctp\catppuccinpalette@style Blue}
+\colorlet{CatLavender}{Ctp\catppuccinpalette@style Lavender}
+\colorlet{CatText}{Ctp\catppuccinpalette@style Text}
+\colorlet{CatSubtext1}{Ctp\catppuccinpalette@style Subtext1}
+\colorlet{CatSubtext0}{Ctp\catppuccinpalette@style Subtext0}
+\colorlet{CatOverlay2}{Ctp\catppuccinpalette@style Overlay2}
+\colorlet{CatOverlay1}{Ctp\catppuccinpalette@style Overlay1}
+\colorlet{CatOverlay0}{Ctp\catppuccinpalette@style Overlay0}
+\colorlet{CatSurface2}{Ctp\catppuccinpalette@style Surface2}
+\colorlet{CatSurface1}{Ctp\catppuccinpalette@style Surface1}
+\colorlet{CatSurface0}{Ctp\catppuccinpalette@style Surface0}
+\colorlet{CatBase}{Ctp\catppuccinpalette@style Base}
+\colorlet{CatMantle}{Ctp\catppuccinpalette@style Mantle}
+\colorlet{CatCrust}{Ctp\catppuccinpalette@style Crust}
+\colorlet{CatBackground}{Ctp\catppuccinpalette@style Base}
+\colorlet{CatLink}{Ctp\catppuccinpalette@style Blue}
+\colorlet{CatSuccess}{Ctp\catppuccinpalette@style Green}
+\colorlet{CatWarning}{Ctp\catppuccinpalette@style Yellow}
+\colorlet{CatError}{Ctp\catppuccinpalette@style Red}
+
+\NewDocumentCommand\CtpReinit{O{}}{%
+\pgfkeys{%
+/catppuccinPalette/.cd,%
+#1%
+}%
+\colorlet{CtpRosewater}{Ctp\catppuccinpalette@style Rosewater}%
+\colorlet{CtpFlamingo}{Ctp\catppuccinpalette@style Flamingo}%
+\colorlet{CtpPink}{Ctp\catppuccinpalette@style Pink}%
+\colorlet{CtpMauve}{Ctp\catppuccinpalette@style Mauve}%
+\colorlet{CtpRed}{Ctp\catppuccinpalette@style Red}%
+\colorlet{CtpMaroon}{Ctp\catppuccinpalette@style Maroon}%
+\colorlet{CtpPeach}{Ctp\catppuccinpalette@style Peach}%
+\colorlet{CtpYellow}{Ctp\catppuccinpalette@style Yellow}%
+\colorlet{CtpGreen}{Ctp\catppuccinpalette@style Green}%
+\colorlet{CtpTeal}{Ctp\catppuccinpalette@style Teal}%
+\colorlet{CtpSky}{Ctp\catppuccinpalette@style Sky}%
+\colorlet{CtpSapphire}{Ctp\catppuccinpalette@style Sapphire}%
+\colorlet{CtpBlue}{Ctp\catppuccinpalette@style Blue}%
+\colorlet{CtpLavender}{Ctp\catppuccinpalette@style Lavender}%
+\colorlet{CtpText}{Ctp\catppuccinpalette@style Text}%
+\colorlet{CtpSubtext1}{Ctp\catppuccinpalette@style Subtext1}%
+\colorlet{CtpSubtext0}{Ctp\catppuccinpalette@style Subtext0}%
+\colorlet{CtpOverlay2}{Ctp\catppuccinpalette@style Overlay2}%
+\colorlet{CtpOverlay1}{Ctp\catppuccinpalette@style Overlay1}%
+\colorlet{CtpOverlay0}{Ctp\catppuccinpalette@style Overlay0}%
+\colorlet{CtpSurface2}{Ctp\catppuccinpalette@style Surface2}%
+\colorlet{CtpSurface1}{Ctp\catppuccinpalette@style Surface1}%
+\colorlet{CtpSurface0}{Ctp\catppuccinpalette@style Surface0}%
+\colorlet{CtpBase}{Ctp\catppuccinpalette@style Base}%
+\colorlet{CtpMantle}{Ctp\catppuccinpalette@style Mantle}%
+\colorlet{CtpCrust}{Ctp\catppuccinpalette@style Crust}%
+\colorlet{CtpBackground}{Ctp\catppuccinpalette@style Base}%
+\colorlet{CtpLink}{Ctp\catppuccinpalette@style Blue}%
+\colorlet{CtpSuccess}{Ctp\catppuccinpalette@style Green}%
+\colorlet{CtpWarning}{Ctp\catppuccinpalette@style Yellow}%
+\colorlet{CtpError}{Ctp\catppuccinpalette@style Red}%
+\ifcatppuccinpalette@pagecolor%
+\pagecolor{CtpBackground}%
+\fi%
+\ifcatppuccinpalette@textcolor%
+\color{CtpText}%
+\fi%
+}
+\CtpReinit[]
\endinput
%%
%% End of file `catppuccinpalette.sty'.
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/cfr-lm.sty b/Master/texmf-dist/tex/latex/cfr-lm/cfr-lm.sty
index db98421f720..f4b718e9d45 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/cfr-lm.sty
+++ b/Master/texmf-dist/tex/latex/cfr-lm/cfr-lm.sty
@@ -1,182 +1,217 @@
-%% Copyright 2015 Clea F. Rees
-%
-% 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 Clea F. Rees.
-%
-% This work consists of all files listed in manifest.txt.
-%
-% Parts of this file are based on lmodern.sty which is included with
-% the Latin Modern fonts released by GUST and available from
-% http://www.gust.org.pl/projects/e-foundry/latin-modern.
-%
-% Improvements to this file in v1.2 (unpublished) and v1.3 owe almost
-% everything to Enrico Gregorio.
-%
-% v1.4 adds family-specific support for microtype. This draws also on the
-% documentation for the microtype package and MinionPro.sty. MinionPro.sty
-% is available as part of the minionpro package and can be obtain from
-% http://mirror.ctan.org/fonts/minionpro. MinionPro.sty is in the public
-% domain. The documentation for microtype is available in English and German
-% from http://ctan.org/pkg/microtype. It is part of the microtype package which
-% is itself licensed under the LPPL.
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{cfr-lm}[2015/02/01 v1.5 cfr-lm for use with LatinModern v2.004]
-\RequirePackage{xkeyval}
-\RequirePackage[T1]{fontenc}
-\RequirePackage{textcomp}
-\RequirePackage{nfssext-cfr}
-
-%:boolkeys for roman osf/lf
-\define@boolkey[cfrlm]{rm}{oldstyle}[true]{%
- \ifcfrlm@rm@oldstyle
- \def\cfrlm@rmol{j}%
- \else
- \def\cfrlm@rmol{}%
- \fi}
-\define@boolkey[cfrlm]{rm}{lining}[true]{%
- \ifcfrlm@rm@lining
- \def\cfrlm@rmol{}%
- \else
- \def\cfrlm@rmol{j}%
- \fi}
-
-%:boolkeys for roman prop/tab figures
-\define@boolkey[cfrlm]{rm}{proportional}[true]{%
- \ifcfrlm@rm@proportional
- \def\cfrlm@rmpt{2}%
- \else
- \def\cfrlm@rmpt{}%
- \fi}
-\define@boolkey[cfrlm]{rm}{tabular}[true]{%
- \ifcfrlm@rm@tabular
- \def\cfrlm@rmpt{}%
- \else
- \def\cfrlm@rmpt{2}%
- \fi}
-
-%:boolkeys for sans osf/lf
-\define@boolkey[cfrlm]{sf}{oldstyle}[true]{%
- \ifcfrlm@sf@oldstyle
- \def\cfrlm@sfol{j}%
- \else
- \def\cfrlm@sfol{}%
- \fi}
-\define@boolkey[cfrlm]{sf}{lining}[true]{%
- \ifcfrlm@sf@lining
- \def\cfrlm@sfol{}%
- \else
- \def\cfrlm@sfol{j}%
- \fi}
-
-%:boolkeys for sans prop/tab figures
-\define@boolkey[cfrlm]{sf}{proportional}[true]{%
- \ifcfrlm@sf@proportional
- \def\cfrlm@sfpt{2}%
- \else
- \def\cfrlm@sfpt{}%
- \fi}
-\define@boolkey[cfrlm]{sf}{tabular}[true]{%
- \ifcfrlm@sf@tabular
- \def\cfrlm@sfpt{}%
- \else
- \def\cfrlm@sfpt{2}%
- \fi}
-
-%:boolkeys for typewriter osf/lf
-\define@boolkey[cfrlm]{tt}{oldstyle}[true]{%
- \ifcfrlm@tt@oldstyle
- \def\cfrlm@ttol{j}%
- \else
- \def\cfrlm@ttol{}%
- \fi}
-\define@boolkey[cfrlm]{tt}{lining}[true]{%
- \ifcfrlm@tt@lining
- \def\cfrlm@ttol{}%
- \else
- \def\cfrlm@ttol{j}%
- \fi}
-
-%:boolkeys for typewriter prop/tab figures
-\define@boolkey[cfrlm]{tt}{proportional}[true]{%
- \ifcfrlm@tt@proportional
- \def\cfrlm@ttpt{2}%
- \else
- \def\cfrlm@ttpt{}%
- \fi}
-\define@boolkey[cfrlm]{tt}{tabular}[true]{%
- \ifcfrlm@tt@tabular
- \def\cfrlm@ttpt{}%
- \else
- \def\cfrlm@ttpt{2}%
- \fi}
-
-%:boolkeys for typewriter mono/variable width
-\define@boolkey[cfrlm]{tt}{monowidth}[true]{%
- \ifcfrlm@tt@monowidth
- \def\cfrlm@ttmv{t}%
- \else
- \def\cfrlm@ttmv{v}%
- \fi}
-\define@boolkey[cfrlm]{tt}{variable}[true]{%
- \ifcfrlm@tt@variable
- \def\cfrlm@ttmv{v}%
- \else
- \def\cfrlm@ttmv{t}%
- \fi}
-
-%:options for roman
-\define@key{cfr-lm.sty}{rm}{%
- \setkeys[cfrlm]{rm}{#1}}
-
-%:options for sans
-\define@key{cfr-lm.sty}{sf}{%
- \setkeys[cfrlm]{sf}{#1}}
-
-%:options for typewriter
-\define@key{cfr-lm.sty}{tt}{%
- \setkeys[cfrlm]{tt}{#1}}
+%%
+%% This is file `cfr-lm.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% cfr-lm.dtx (with options: `sty')
+%% Copyright (C) 2008-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% cfr-lm. You may however distribute the package cfr-lm without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%:note that this option does nothing unless \qtfont is defined appropriately
-\define@boolkey{cfr-lm.sty}[cfrlm@]{qt}[true]{%
- \relax}
-%:defaults to ensure everything is defined to something
-\ExecuteOptionsX{rm={oldstyle,proportional},sf={oldstyle,proportional},tt={oldstyle,proportional,variable},qt=false}
-%\ExecuteOptionsX{rm={lining,tabular},sf={oldstyle,proportional},tt={oldstyle,proportional,variable},qt=false}
-%:options override defaults
-\ProcessOptionsX
-
-%:make LM default for all families, implementing options for each
-\renewcommand{\rmdefault}{clm\cfrlm@rmpt\cfrlm@rmol}
-\renewcommand{\sfdefault}{clm\cfrlm@sfpt\cfrlm@sfol s}
-\renewcommand{\ttdefault}{clm\cfrlm@ttpt\cfrlm@ttol\cfrlm@ttmv}
-
-%:handle the qt option, failing gracefully if somebody has enabled the option without defining \qtfont appropriately
-\ifcfrlm@qt
- \@ifundefined{qtfont}{%
- \PackageWarning{cfr-lm}{Option 'qt' cannot be implemented unless\MessageBreak
- the command qtfont is defined appropriately. This is not\MessageBreak
- done automatically to maximise compatibility with other\MessageBreak
- classes and packages. The suggested use is to have qtfont\MessageBreak
- redefine a command such as quotefont which is initially\MessageBreak
- set to some reasonable default and is then used in the\MessageBreak
- definition of the quote and/or quotation environments.\MessageBreak
- Since these are class and package dependent, it cannot\MessageBreak
- be done by a font package and the option is ignored here.}}{%
- \qtfont{\qtstyle}}
-\fi
-
-%:based on lmodern.sty
+\NeedsTeXFormat{LaTeX2e}
+\RequirePackage{svn-prov}
+\ProvidesPackageSVN[\filebase.sty]{$Id: cfr-lm.dtx 10371 2024-09-20 15:51:48Z cfrees $}[v1.7 \revinfo][Extended support for Latin Modern 2.004]
+\DefineFileInfoSVN[clm]
+\RequirePackage[T1]{fontenc}
+\RequirePackage{nfssext-cfr}[2024/01/01]
+\IfFormatAtLeastTF {2020-02-02}{%
+ \DeclareEncodingSubset{TS1}{clm}{1}%
+ \DeclareEncodingSubset{TS1}{clm2}{1}%
+ \DeclareEncodingSubset{TS1}{clm2d}{1}%
+ \DeclareEncodingSubset{TS1}{clm2dj}{1}%
+ \DeclareEncodingSubset{TS1}{clm2j}{1}%
+ \DeclareEncodingSubset{TS1}{clm2jqs}{1}%
+ \DeclareEncodingSubset{TS1}{clm2js}{1}%
+ \DeclareEncodingSubset{TS1}{clm2jt}{1}%
+ \DeclareEncodingSubset{TS1}{clm2jv}{1}%
+ \DeclareEncodingSubset{TS1}{clm2qs}{1}%
+ \DeclareEncodingSubset{TS1}{clm2s}{1}%
+ \DeclareEncodingSubset{TS1}{clm2t}{1}%
+ \DeclareEncodingSubset{TS1}{clm2v}{1}%
+ \DeclareEncodingSubset{TS1}{clmd}{1}%
+ \DeclareEncodingSubset{TS1}{clmdj}{1}%
+ \DeclareEncodingSubset{TS1}{clmj}{1}%
+ \DeclareEncodingSubset{TS1}{clmjqs}{1}%
+ \DeclareEncodingSubset{TS1}{clmjs}{1}%
+ \DeclareEncodingSubset{TS1}{clmjt}{1}%
+ \DeclareEncodingSubset{TS1}{clmjv}{1}%
+ \DeclareEncodingSubset{TS1}{clmqs}{1}%
+ \DeclareEncodingSubset{TS1}{clms}{1}%
+ \DeclareEncodingSubset{TS1}{clmt}{1}%
+ \DeclareEncodingSubset{TS1}{clmv}{1}%
+}{%
+ \RequirePackage{textcomp}}
+\UndeclareTextCommand{\textperthousand}{T1}
+\ExplSyntaxOn
+%%
+\bool_new:N \l__clm_rm_osf_bool
+\bool_new:N \l__clm_rm_prop_bool
+\bool_new:N \l__clm_sf_osf_bool
+\bool_new:N \l__clm_sf_prop_bool
+\bool_new:N \l__clm_tt_osf_bool
+\bool_new:N \l__clm_tt_prop_bool
+\bool_new:N \l__clm_tt_mono_bool
+\bool_new:N \l__clm_qt_bool
+\keys_define:nn { clm }
+{
+ rm / oldstyle .bool_set:N = \l__clm_rm_osf_bool,
+ rm / oldstyle .default:n = true,
+ rm / oldstyle .initial:n = true,
+ rm / osf .bool_set:N = \l__clm_rm_osf_bool,
+ rm / osf .default:n = true,
+ rm / lining .bool_set_inverse:N = \l__clm_rm_osf_bool,
+ rm / lining .default:n = true,
+ rm / lf .bool_set_inverse:N = \l__clm_rm_osf_bool,
+ rm / lf .default:n = true,
+ rm / proportional .bool_set:N = \l__clm_rm_prop_bool,
+ rm / proportional .default:n = true,
+ rm / proportional .initial:n = true,
+ rm / prop .bool_set:N = \l__clm_rm_prop_bool,
+ rm / prop .default:n = true,
+ rm / tabular .bool_set_inverse:N = \l__clm_rm_prop_bool,
+ rm / tabular .default:n = true,
+ rm / tab .bool_set_inverse:N = \l__clm_rm_prop_bool,
+ rm / tab .default:n = true,
+ sf / oldstyle .bool_set:N = \l__clm_sf_osf_bool,
+ sf / oldstyle .default:n = true,
+ sf / oldstyle .initial:n = true,
+ sf / osf .bool_set:N = \l__clm_sf_osf_bool,
+ sf / osf .default:n = true,
+ sf / lining .bool_set_inverse:N = \l__clm_sf_osf_bool,
+ sf / lining .default:n = true,
+ sf / lf .bool_set_inverse:N = \l__clm_sf_osf_bool,
+ sf / lf .default:n = true,
+ sf / proportional .bool_set:N = \l__clm_sf_prop_bool,
+ sf / proportional .default:n = true,
+ sf / proportional .initial:n = true,
+ sf / prop .bool_set:N = \l__clm_sf_prop_bool,
+ sf / prop .default:n = true,
+ sf / tabular .bool_set_inverse:N = \l__clm_sf_prop_bool,
+ sf / tabular .default:n = true,
+ sf / tab .bool_set_inverse:N = \l__clm_sf_prop_bool,
+ sf / tab .default:n = true,
+ tt / oldstyle .bool_set:N = \l__clm_tt_osf_bool,
+ tt / oldstyle .default:n = true,
+ tt / oldstyle .initial:n = true,
+ tt / osf .bool_set:N = \l__clm_tt_osf_bool,
+ tt / osf .default:n = true,
+ tt / lining .bool_set_inverse:N = \l__clm_tt_osf_bool,
+ tt / lining .default:n = true,
+ tt / lf .bool_set_inverse:N = \l__clm_tt_osf_bool,
+ tt / lf .default:n = true,
+ tt / proportional .bool_set:N = \l__clm_tt_prop_bool,
+ tt / proportional .default:n = true,
+ tt / proportional .initial:n = true,
+ tt / prop .bool_set:N = \l__clm_tt_prop_bool,
+ tt / prop .default:n = true,
+ tt / tabular .bool_set_inverse:N = \l__clm_tt_prop_bool,
+ tt / tabular .default:n = true,
+ tt / tab .bool_set_inverse:N = \l__clm_tt_prop_bool,
+ tt / tab .default:n = true,
+ tt / monowidth .bool_set:N = \l__clm_tt_mono_bool,
+ tt / monowidth .default:n = true,
+ tt / monowidth .initial:n = false,
+ tt / mono .bool_set:N = \l__clm_tt_mono_bool,
+ tt / mono .default:n = true,
+ tt / variable .bool_set_inverse:N = \l__clm_tt_mono_bool,
+ tt / variable .default:n = true,
+ tt / var .bool_set_inverse:N = \l__clm_tt_mono_bool,
+ tt / var .default:n = true,
+ rm .code:n ={
+ \keys_set:nn { clm / rm } { #1 }
+ },
+ rm .value_required:n = true,
+ rm .usage:n = load,
+ sf .code:n ={
+ \keys_set:nn { clm / sf } { #1 }
+ },
+ sf .value_required:n = true,
+ sf .usage:n = load,
+ tt .code:n ={
+ \keys_set:nn { clm / tt } { #1 }
+ },
+ tt .value_required:n = true,
+ tt .usage:n = load,
+ qt .bool_set:N = \l__clm_qt_bool,
+ qt .default:n = true,
+ qt .initial:n = false,
+ qt .usage:n = load,
+}
+\providecommand \IfFormatAtLeastTF { \@ifl@t@r \fmtversion }
+\IfFormatAtLeastTF { 2022-06-01 }
+{
+ \ProcessKeyOptions [ clm ]
+}{
+ \RequirePackage { l3keys2e }
+ \ProcessKeysOptions { clm }
+}
+\IfFormatAtLeastTF { 2020-10-01 }{
+}{
+ \RequirePackage { xparse }
+ \providecommand \ExpandArgs [1]
+ { \cs_if_exist_use:c { exp_args:N #1 } }
+}
+\tl_gset:Ne \rmdefault
+{
+ clm \bool_if:NT \l__clm_rm_prop_bool { 2 }
+ \bool_if:NT \l__clm_rm_osf_bool { j }
+}
+\tl_gset:Ne \sfdefault
+{
+ clm \bool_if:NT \l__clm_sf_prop_bool { 2 }
+ \bool_if:NT \l__clm_sf_osf_bool { j } s
+}
+\tl_gset:Ne \ttdefault
+{
+ clm \bool_if:NT \l__clm_tt_prop_bool { 2 }
+ \bool_if:NT \l__clm_tt_osf_bool { j }
+ \bool_if:NTF \l__clm_tt_mono_bool { t } { v }
+}
+\hook_gput_code:nnn { begindocument } { . }
+{
+ \bool_if:NT \l__clm_qt_bool
+ {
+ \cs_if_exist:NTF { \qtfont }
+ {
+ \qtfont{\qtstyle}
+ }{
+ \PackageWarning{cfr-lm}
+ {
+ Option ~ 'qt' ~ cannot ~ be ~ implemented ~ unless \MessageBreak
+ '\backslash qtfont' ~ is ~ defined ~ appropriately. ~ This ~ is ~ not \MessageBreak
+ done ~ automatically ~ to ~ maximise ~ compatibility ~ with ~ other \MessageBreak
+ classes ~ and ~ packages. ~ The ~ suggested ~ use ~ is ~ to ~ have ~ '\backslash qtfont' \MessageBreak
+ redefine ~ a command ~ such ~ as ~ '\backslash quotefont' ~ which ~ is ~ initially \MessageBreak
+ set ~ to ~ some ~ reasonable ~ default ~ and ~ used ~ in ~ the \MessageBreak
+ definition ~ of ~ the ~ quote ~ and/or ~ quotation ~ environments. \MessageBreak
+ A ~ font ~ package ~ has ~ no ~ business ~ meddling ~ in ~ such \MessageBreak
+ things ~ so ~ I'm ~ going ~ to ~ ignore ~ this ~ option
+ }
+ }
+ }
+}
+\ExplSyntaxOff
\SetSymbolFont{operators} {normal}{OT1}{lmr} {m}{n}
\SetSymbolFont{letters} {normal}{OML}{lmm} {m}{it}
\SetSymbolFont{symbols} {normal}{OMS}{lmsy}{m}{n}
@@ -185,12 +220,10 @@
\SetSymbolFont{letters} {bold} {OML}{lmm} {b}{it}
\SetSymbolFont{symbols} {bold} {OMS}{lmsy}{b}{n}
\SetSymbolFont{largesymbols}{bold} {OMX}{lmex}{m}{n}
-
\DeclareFontSubstitution{OT1}{lmr}{m}{n}
\DeclareFontSubstitution{OML}{lmm}{m}{it}
\DeclareFontSubstitution{OMS}{lmsy}{m}{n}
\DeclareFontSubstitution{OMX}{lmex}{m}{n}
-
\SetMathAlphabet{\mathbf}{normal}{OT1}{lmr}{bx}{n}
\SetMathAlphabet{\mathsf}{normal}{OT1}{lmss}{m}{n}
\SetMathAlphabet{\mathit}{normal}{OT1}{lmr}{m}{it}
@@ -199,44 +232,40 @@
\SetMathAlphabet{\mathsf}{bold} {OT1}{lmss}{bx}{n}
\SetMathAlphabet{\mathit}{bold} {OT1}{lmr}{bx}{it}
\SetMathAlphabet{\mathtt}{bold} {OT1}{lmtt}{m}{n}
-
\def\mathsterling{\mathit{\mathchar"70BF}}
-
-%:new in v1.1
\DeclareRobustCommand{\dotdigitenc}{%
\not@math@alphabet\dotdigitenc\relax
\fontencoding{U}\selectfont}
\DeclareTextFontCommand{\textdde}{\dotdigitenc}
\newcommand*{\zeroslash}{\textdde{\char 250}}
-
-%:Partly from microtype docs; partly from MinionPro package
-%
-% We need to set up aliases for the font families created by cfr-lm so that
-% microtype recognises them as similar to Computer Modern Roman.
-%
-% T1 families in cfr-lm: clm clm2 clm2d clm2dj clm2j clm2jqs clm2js clm2jt
-% clm2jv clm2qs clm2s clm2t clm2v clmd clmdj clmj clmjqs clmjs clmjt clmjv
-% clmqs clms clmt clmv
-%
-% See variants set in nfssext-cfr
-%
-% Ref: http://tex.stackexchange.com/a/75440/39222
-\newcommand{\cfr@ffs}{% alias to cmr
- clm,clm2,clm2j,clmj,% roman
- clms,clm2js,clm2s,clmjs,% sans
- clmqs,clm2jqs,clm2qs,clmjqs%
-% clm2d,clm2dj,clmd,clmdj,% leave unaliased?
-% clm2jv,clmjv,clm2v,clmv,% leave unaliased?
-% clmt,clm2t,clmjt,clm2jt% leave unaliased?
+\ExplSyntaxOn
+\cs_new_nopar:Nn \__clm_microtype_hook:
+{
+ \clist_map_inline:nn
+ {
+ clm,clm2,clm2j,clmj,% roman
+ clms,clm2js,clm2s,clmjs,% sans
+ clmqs,clm2jqs,clm2qs,clmjqs%
+ % clm2d,clm2dj,clmd,clmdj,% leave unaliased?
+ % clm2jv,clmjv,clm2v,clmv,% leave unaliased?
+ % clmt,clm2t,clmjt,clm2jt% leave unaliased?
+ }{
+ \DeclareMicrotypeAlias { ##1 } { cmr }
}
-\gdef\cfrlm@MicroType@Aliases{%
- \@for \xx:=\cfr@ffs \do {%
- \DeclareMicrotypeAlias{\xx}{cmr}}%
+}
+\@ifpackageloaded{microtype}
+{
+ \__clm_microtype_hook:
+}{
+ \cs_if_free:cTF { Microtype@Hook }
+ {% MinionPro has \global before this
+ \cs_new_eq:NN \Microtype@Hook \__clm_microtype_hook:
+ }{
+ \g@addto@macro\Microtype@Hook{\__clm_microtype_hook:}
}
-\def\cfrlm@MT@Hook{\cfrlm@MicroType@Aliases}
-\@ifpackageloaded{microtype}{%
- \cfrlm@MT@Hook}{%
- \@ifundefined{Microtype@Hook}{%
- \let\Microtype@Hook\cfrlm@MT@Hook}{% MinionPro has \global before this
- \g@addto@macro\Microtype@Hook{\cfrlm@MT@Hook}}}
+}
+\ExplSyntaxOff
+%% end cfr-lm.sty
\endinput
+%%
+%% End of file `cfr-lm.sty'.
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clm.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clm.fd
index c3eebd8a758..6c08b949a34 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clm.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clm.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clm.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clm.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clm.]
\DeclareFontFamily{T1}{clm}{}
@@ -74,7 +74,8 @@
<-> clmbo8t10
}{}
-\DeclareFontShape{T1}{clm}{m}{si}{<->ssub * clm/m/scsl}{}
+\DeclareFontShape{T1}{clm}{m}{scit}{<->ssub * clm/m/scsl}{}
+\DeclareFontShape{T1}{clm}{m}{si}{<->ssub * clm/m/scit}{}
\DeclareFontShape{T1}{clm}{b}{n}{<->ssub * clm/bx/n}{}
\DeclareFontShape{T1}{clm}{bx}{sc}{<->ssub * clm/bx/n}{}
\DeclareFontShape{T1}{clm}{b}{sc}{<->ssub * clm/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2.fd
index a76b70eefee..836285f979c 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clm2.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clm2.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clm2.]
\DeclareFontFamily{T1}{clm2}{}
@@ -74,7 +74,8 @@
<-> clmb2o8t10
}{}
-\DeclareFontShape{T1}{clm2}{m}{si}{<->ssub * clm2/m/scsl}{}
+\DeclareFontShape{T1}{clm2}{m}{scit}{<->ssub * clm2/m/scsl}{}
+\DeclareFontShape{T1}{clm2}{m}{si}{<->ssub * clm2/m/scit}{}
\DeclareFontShape{T1}{clm2}{b}{n}{<->ssub * clm2/bx/n}{}
\DeclareFontShape{T1}{clm2}{bx}{sc}{<->ssub * clm2/bx/n}{}
\DeclareFontShape{T1}{clm2}{b}{sc}{<->ssub * clm2/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2d.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2d.fd
index 0844ef48c85..d710b8d3b6f 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2d.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2d.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clm2d.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clm2d.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clm2d.]
\DeclareFontFamily{T1}{clm2d}{\hyphenchar\font=45}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2dj.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2dj.fd
index aa3101bc4cb..385194bdce3 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2dj.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2dj.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clm2dj.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clm2dj.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clm2dj.]
\DeclareFontFamily{T1}{clm2dj}{\hyphenchar\font=45}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2j.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2j.fd
index 95be955b378..c77d15bda0b 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2j.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2j.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clm2j.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clm2j.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clm2j.]
\DeclareFontFamily{T1}{clm2j}{}
@@ -74,7 +74,8 @@
<-> clmb2jo8t10
}{}
-\DeclareFontShape{T1}{clm2j}{m}{si}{<->ssub * clm2j/m/scsl}{}
+\DeclareFontShape{T1}{clm2j}{m}{scit}{<->ssub * clm2j/m/scsl}{}
+\DeclareFontShape{T1}{clm2j}{m}{si}{<->ssub * clm2j/m/scit}{}
\DeclareFontShape{T1}{clm2j}{b}{n}{<->ssub * clm2j/bx/n}{}
\DeclareFontShape{T1}{clm2j}{bx}{sc}{<->ssub * clm2j/bx/n}{}
\DeclareFontShape{T1}{clm2j}{b}{sc}{<->ssub * clm2j/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2jqs.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2jqs.fd
index ab6cc5c9db8..90651b73895 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2jqs.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2jqs.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clm2jqs.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clm2jqs.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clm2jqs.]
\DeclareFontFamily{T1}{clm2jqs}{\hyphenchar\font=\m@ne}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2js.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2js.fd
index 92c96068d39..5c825ecd802 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2js.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2js.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clm2js.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clm2js.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clm2js.]
\DeclareFontFamily{T1}{clm2js}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2jt.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2jt.fd
index 689ad0ecfb7..63ca29588e9 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2jt.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2jt.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clm2jt.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clm2jt.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clm2jt.]
\DeclareFontFamily{T1}{clm2jt}{\hyphenchar\font=\m@ne}
@@ -57,7 +57,8 @@
}{}
\DeclareFontShape{T1}{clm2jt}{m}{ui}{<->ssub * clm2jt/m/it}{}
-\DeclareFontShape{T1}{clm2jt}{m}{si}{<->ssub * clm2jt/m/scsl}{}
+\DeclareFontShape{T1}{clm2jt}{m}{scit}{<->ssub * clm2jt/m/scsl}{}
+\DeclareFontShape{T1}{clm2jt}{m}{si}{<->ssub * clm2jt/m/scit}{}
\DeclareFontShape{T1}{clm2jt}{b}{n}{<->ssub * clm2jt/bx/n}{}
\DeclareFontShape{T1}{clm2jt}{bx}{sc}{<->ssub * clm2jt/bx/n}{}
\DeclareFontShape{T1}{clm2jt}{b}{sc}{<->ssub * clm2jt/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2jv.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2jv.fd
index e42a220ab56..20a096facb8 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2jv.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2jv.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clm2jv.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clm2jv.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clm2jv.]
\DeclareFontFamily{T1}{clm2jv}{\hyphenchar\font=\m@ne}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2qs.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2qs.fd
index cdc5a16a22b..bb99afb9419 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2qs.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2qs.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clm2qs.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clm2qs.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clm2qs.]
\DeclareFontFamily{T1}{clm2qs}{\hyphenchar\font=\m@ne}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2s.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2s.fd
index 005af0cd00d..3b742536929 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2s.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2s.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clm2s.fd}
- [2015/02/01 Fontinst v1.933 font definitions for T1/clm2s.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clm2s.]
\DeclareFontFamily{T1}{clm2s}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2t.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2t.fd
index 58d106eb1f6..e8d92015ae5 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2t.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2t.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clm2t.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clm2t.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clm2t.]
\DeclareFontFamily{T1}{clm2t}{\hyphenchar\font=\m@ne}
@@ -57,7 +57,8 @@
}{}
\DeclareFontShape{T1}{clm2t}{m}{ui}{<->ssub * clm2t/m/it}{}
-\DeclareFontShape{T1}{clm2t}{m}{si}{<->ssub * clm2t/m/scsl}{}
+\DeclareFontShape{T1}{clm2t}{m}{scit}{<->ssub * clm2t/m/scsl}{}
+\DeclareFontShape{T1}{clm2t}{m}{si}{<->ssub * clm2t/m/scit}{}
\DeclareFontShape{T1}{clm2t}{b}{n}{<->ssub * clm2t/bx/n}{}
\DeclareFontShape{T1}{clm2t}{bx}{sc}{<->ssub * clm2t/bx/n}{}
\DeclareFontShape{T1}{clm2t}{b}{sc}{<->ssub * clm2t/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2v.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2v.fd
index 0ff82e50d07..3971fdda528 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clm2v.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clm2v.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clm2v.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clm2v.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clm2v.]
\DeclareFontFamily{T1}{clm2v}{\hyphenchar\font=\m@ne}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clmd.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clmd.fd
index 21f6c1c2337..1a7d91cf0d8 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clmd.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clmd.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clmd.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clmd.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clmd.]
\DeclareFontFamily{T1}{clmd}{\hyphenchar\font=45}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clmdj.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clmdj.fd
index 649bb29224b..5c57dd32a80 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clmdj.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clmdj.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clmdj.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clmdj.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clmdj.]
\DeclareFontFamily{T1}{clmdj}{\hyphenchar\font=45}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clmj.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clmj.fd
index cd29597d90d..8bc6de61150 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clmj.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clmj.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clmj.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clmj.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clmj.]
\DeclareFontFamily{T1}{clmj}{}
@@ -74,7 +74,8 @@
<-> clmbjo8t10
}{}
-\DeclareFontShape{T1}{clmj}{m}{si}{<->ssub * clmj/m/scsl}{}
+\DeclareFontShape{T1}{clmj}{m}{scit}{<->ssub * clmj/m/scsl}{}
+\DeclareFontShape{T1}{clmj}{m}{si}{<->ssub * clmj/m/scit}{}
\DeclareFontShape{T1}{clmj}{b}{n}{<->ssub * clmj/bx/n}{}
\DeclareFontShape{T1}{clmj}{bx}{sc}{<->ssub * clmj/bx/n}{}
\DeclareFontShape{T1}{clmj}{b}{sc}{<->ssub * clmj/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clmjqs.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clmjqs.fd
index 7cd7b6f0776..2e6077662ab 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clmjqs.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clmjqs.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clmjqs.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clmjqs.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clmjqs.]
\DeclareFontFamily{T1}{clmjqs}{\hyphenchar\font=\m@ne}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clmjs.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clmjs.fd
index e66b4bf1611..2f1e4ff9532 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clmjs.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clmjs.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clmjs.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clmjs.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clmjs.]
\DeclareFontFamily{T1}{clmjs}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clmjt.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clmjt.fd
index bf4efdac8c0..759910ff6f0 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clmjt.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clmjt.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clmjt.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clmjt.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clmjt.]
\DeclareFontFamily{T1}{clmjt}{\hyphenchar\font=\m@ne}
@@ -57,7 +57,8 @@
}{}
\DeclareFontShape{T1}{clmjt}{m}{ui}{<->ssub * clmjt/m/it}{}
-\DeclareFontShape{T1}{clmjt}{m}{si}{<->ssub * clmjt/m/scsl}{}
+\DeclareFontShape{T1}{clmjt}{m}{scit}{<->ssub * clmjt/m/scsl}{}
+\DeclareFontShape{T1}{clmjt}{m}{si}{<->ssub * clmjt/m/scit}{}
\DeclareFontShape{T1}{clmjt}{b}{n}{<->ssub * clmjt/bx/n}{}
\DeclareFontShape{T1}{clmjt}{bx}{sc}{<->ssub * clmjt/bx/n}{}
\DeclareFontShape{T1}{clmjt}{b}{sc}{<->ssub * clmjt/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clmjv.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clmjv.fd
index ac3c5ce8e83..607edf04e45 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clmjv.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clmjv.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clmjv.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clmjv.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clmjv.]
\DeclareFontFamily{T1}{clmjv}{\hyphenchar\font=\m@ne}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clmqs.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clmqs.fd
index 5695027b188..c703b82309a 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clmqs.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clmqs.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clmqs.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clmqs.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clmqs.]
\DeclareFontFamily{T1}{clmqs}{\hyphenchar\font=\m@ne}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clms.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clms.fd
index 5a0661c5309..3ea453b3a11 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clms.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clms.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clms.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clms.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clms.]
\DeclareFontFamily{T1}{clms}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clmt.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clmt.fd
index f46090b877c..ca2b309b1ac 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clmt.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clmt.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clmt.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clmt.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clmt.]
\DeclareFontFamily{T1}{clmt}{\hyphenchar\font=\m@ne}
@@ -57,7 +57,8 @@
}{}
\DeclareFontShape{T1}{clmt}{m}{ui}{<->ssub * clmt/m/it}{}
-\DeclareFontShape{T1}{clmt}{m}{si}{<->ssub * clmt/m/scsl}{}
+\DeclareFontShape{T1}{clmt}{m}{scit}{<->ssub * clmt/m/scsl}{}
+\DeclareFontShape{T1}{clmt}{m}{si}{<->ssub * clmt/m/scit}{}
\DeclareFontShape{T1}{clmt}{b}{n}{<->ssub * clmt/bx/n}{}
\DeclareFontShape{T1}{clmt}{bx}{sc}{<->ssub * clmt/bx/n}{}
\DeclareFontShape{T1}{clmt}{b}{sc}{<->ssub * clmt/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/t1clmv.fd b/Master/texmf-dist/tex/latex/cfr-lm/t1clmv.fd
index ef3eb23ff20..cbbbf269298 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/t1clmv.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/t1clmv.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1clmv.fd}
- [2010/05/25 Fontinst v1.933 font definitions for T1/clmv.]
+ [2024/09/19 Fontinst v1.933 font definitions for T1/clmv.]
\DeclareFontFamily{T1}{clmv}{\hyphenchar\font=\m@ne}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm.fd
index 257d4adf6fc..2f957e7a637 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm.fd
@@ -1,11 +1,11 @@
%Filename: ts1clm.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clm.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clm.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clm.]
\DeclareFontFamily{TS1}{clm}{}
@@ -74,7 +74,8 @@
<-> ts1-lmbo10
}{}
-\DeclareFontShape{TS1}{clm}{m}{si}{<->ssub * clm/m/scsl}{}
+\DeclareFontShape{TS1}{clm}{m}{scit}{<->ssub * clm/m/scsl}{}
+\DeclareFontShape{TS1}{clm}{m}{si}{<->ssub * clm/m/scit}{}
\DeclareFontShape{TS1}{clm}{b}{n}{<->ssub * clm/bx/n}{}
\DeclareFontShape{TS1}{clm}{bx}{sc}{<->ssub * clm/bx/n}{}
\DeclareFontShape{TS1}{clm}{b}{sc}{<->ssub * clm/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2.fd
index 53bfebf826d..505c786af09 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2.fd
@@ -1,11 +1,11 @@
%Filename: ts1clm2.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clm2.fd}
- [2015/02/01 Fontinst v1.928 font definitions for TS1/clm2.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clm2.]
\DeclareFontFamily{TS1}{clm2}{}
@@ -74,7 +74,8 @@
<-> ts1-lmbo10
}{}
-\DeclareFontShape{TS1}{clm2}{m}{si}{<->ssub * clm2/m/scsl}{}
+\DeclareFontShape{TS1}{clm2}{m}{scit}{<->ssub * clm2/m/scsl}{}
+\DeclareFontShape{TS1}{clm2}{m}{si}{<->ssub * clm2/m/scit}{}
\DeclareFontShape{TS1}{clm2}{b}{n}{<->ssub * clm2/bx/n}{}
\DeclareFontShape{TS1}{clm2}{bx}{sc}{<->ssub * clm2/bx/n}{}
\DeclareFontShape{TS1}{clm2}{b}{sc}{<->ssub * clm2/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2d.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2d.fd
index 1d120466eaf..675a07cd4a9 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2d.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2d.fd
@@ -1,11 +1,11 @@
%Filename: ts1clm2d.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clm2d.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clm2d.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clm2d.]
\DeclareFontFamily{TS1}{clm2d}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2dj.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2dj.fd
index bc0ef8e88b8..5f779c5c5ef 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2dj.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2dj.fd
@@ -1,11 +1,11 @@
%Filename: ts1clm2dj.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clm2dj.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clm2dj.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clm2dj.]
\DeclareFontFamily{TS1}{clm2dj}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2j.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2j.fd
index 06c57ce74ce..27241a46e66 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2j.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2j.fd
@@ -1,11 +1,11 @@
%Filename: ts1clm2j.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clm2j.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clm2j.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clm2j.]
\DeclareFontFamily{TS1}{clm2j}{}
@@ -74,7 +74,8 @@
<-> ts1-lmbo10
}{}
-\DeclareFontShape{TS1}{clm2j}{m}{si}{<->ssub * clm2j/m/scsl}{}
+\DeclareFontShape{TS1}{clm2j}{m}{scit}{<->ssub * clm2j/m/scsl}{}
+\DeclareFontShape{TS1}{clm2j}{m}{si}{<->ssub * clm2j/m/scit}{}
\DeclareFontShape{TS1}{clm2j}{b}{n}{<->ssub * clm2j/bx/n}{}
\DeclareFontShape{TS1}{clm2j}{bx}{sc}{<->ssub * clm2j/bx/n}{}
\DeclareFontShape{TS1}{clm2j}{b}{sc}{<->ssub * clm2j/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2jqs.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2jqs.fd
index 952f91fb035..85e6bf0bdc0 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2jqs.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2jqs.fd
@@ -1,11 +1,11 @@
%Filename: ts1clm2jqs.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clm2jqs.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clm2jqs.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clm2jqs.]
\DeclareFontFamily{TS1}{clm2jqs}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2js.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2js.fd
index ec2c8eba0b5..206d9f1a4bf 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2js.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2js.fd
@@ -1,11 +1,11 @@
%Filename: ts1clm2js.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clm2js.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clm2js.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clm2js.]
\DeclareFontFamily{TS1}{clm2js}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2jt.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2jt.fd
index 9b2c5b172e2..5034aa1b034 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2jt.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2jt.fd
@@ -1,11 +1,11 @@
%Filename: ts1clm2jt.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clm2jt.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clm2jt.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clm2jt.]
\DeclareFontFamily{TS1}{clm2jt}{}
@@ -57,7 +57,8 @@
}{}
\DeclareFontShape{TS1}{clm2jt}{m}{ui}{<->ssub * clm2jt/m/it}{}
-\DeclareFontShape{TS1}{clm2jt}{m}{si}{<->ssub * clm2jt/m/scsl}{}
+\DeclareFontShape{TS1}{clm2jt}{m}{scit}{<->ssub * clm2jt/m/scsl}{}
+\DeclareFontShape{TS1}{clm2jt}{m}{si}{<->ssub * clm2jt/m/scit}{}
\DeclareFontShape{TS1}{clm2jt}{b}{n}{<->ssub * clm2jt/bx/n}{}
\DeclareFontShape{TS1}{clm2jt}{bx}{sc}{<->ssub * clm2jt/bx/n}{}
\DeclareFontShape{TS1}{clm2jt}{b}{sc}{<->ssub * clm2jt/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2jv.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2jv.fd
index 804e68b4423..5bef745f8af 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2jv.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2jv.fd
@@ -1,11 +1,11 @@
%Filename: ts1clm2jv.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clm2jv.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clm2jv.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clm2jv.]
\DeclareFontFamily{TS1}{clm2jv}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2qs.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2qs.fd
index 93f1e5ffc84..486e17f5996 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2qs.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2qs.fd
@@ -1,11 +1,11 @@
%Filename: ts1clm2qs.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clm2qs.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clm2qs.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clm2qs.]
\DeclareFontFamily{TS1}{clm2qs}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2s.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2s.fd
index 4f1d942bf8e..aebbbf0dc1c 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2s.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2s.fd
@@ -1,11 +1,11 @@
%Filename: ts1clm2s.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clm2s.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clm2s.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clm2s.]
\DeclareFontFamily{TS1}{clm2s}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2t.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2t.fd
index 8615e6430b9..876977bd152 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2t.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2t.fd
@@ -1,11 +1,11 @@
%Filename: ts1clm2t.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clm2t.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clm2t.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clm2t.]
\DeclareFontFamily{TS1}{clm2t}{}
@@ -57,7 +57,8 @@
}{}
\DeclareFontShape{TS1}{clm2t}{m}{ui}{<->ssub * clm2t/m/it}{}
-\DeclareFontShape{TS1}{clm2t}{m}{si}{<->ssub * clm2t/m/scsl}{}
+\DeclareFontShape{TS1}{clm2t}{m}{scit}{<->ssub * clm2t/m/scsl}{}
+\DeclareFontShape{TS1}{clm2t}{m}{si}{<->ssub * clm2t/m/scit}{}
\DeclareFontShape{TS1}{clm2t}{b}{n}{<->ssub * clm2t/bx/n}{}
\DeclareFontShape{TS1}{clm2t}{bx}{sc}{<->ssub * clm2t/bx/n}{}
\DeclareFontShape{TS1}{clm2t}{b}{sc}{<->ssub * clm2t/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2v.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2v.fd
index 7688f834b0c..e451254fc70 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2v.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clm2v.fd
@@ -1,11 +1,11 @@
%Filename: ts1clm2v.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clm2v.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clm2v.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clm2v.]
\DeclareFontFamily{TS1}{clm2v}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmd.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmd.fd
index f19706d4570..f1e8165dc1a 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmd.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmd.fd
@@ -1,11 +1,11 @@
%Filename: ts1clmd.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clmd.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clmd.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clmd.]
\DeclareFontFamily{TS1}{clmd}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmdj.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmdj.fd
index ec209e52207..f9e80d2c66f 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmdj.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmdj.fd
@@ -1,11 +1,11 @@
%Filename: ts1clmdj.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clmdj.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clmdj.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clmdj.]
\DeclareFontFamily{TS1}{clmdj}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmj.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmj.fd
index a6eb078e31b..f7e0ea7fcbf 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmj.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmj.fd
@@ -1,11 +1,11 @@
%Filename: ts1clmj.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clmj.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clmj.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clmj.]
\DeclareFontFamily{TS1}{clmj}{}
@@ -74,7 +74,8 @@
<-> ts1-lmbo10
}{}
-\DeclareFontShape{TS1}{clmj}{m}{si}{<->ssub * clmj/m/scsl}{}
+\DeclareFontShape{TS1}{clmj}{m}{scit}{<->ssub * clmj/m/scsl}{}
+\DeclareFontShape{TS1}{clmj}{m}{si}{<->ssub * clmj/m/scit}{}
\DeclareFontShape{TS1}{clmj}{b}{n}{<->ssub * clmj/bx/n}{}
\DeclareFontShape{TS1}{clmj}{bx}{sc}{<->ssub * clmj/bx/n}{}
\DeclareFontShape{TS1}{clmj}{b}{sc}{<->ssub * clmj/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmjqs.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmjqs.fd
index ed16bf5ed60..ff0e81175fd 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmjqs.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmjqs.fd
@@ -1,11 +1,11 @@
%Filename: ts1clmjqs.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clmjqs.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clmjqs.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clmjqs.]
\DeclareFontFamily{TS1}{clmjqs}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmjs.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmjs.fd
index 44a0fd54a12..e7a6e73f12b 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmjs.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmjs.fd
@@ -1,11 +1,11 @@
%Filename: ts1clmjs.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clmjs.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clmjs.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clmjs.]
\DeclareFontFamily{TS1}{clmjs}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmjt.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmjt.fd
index f8b3f0ab33e..4b2ead9c271 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmjt.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmjt.fd
@@ -1,11 +1,11 @@
%Filename: ts1clmjt.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clmjt.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clmjt.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clmjt.]
\DeclareFontFamily{TS1}{clmjt}{}
@@ -57,7 +57,8 @@
}{}
\DeclareFontShape{TS1}{clmjt}{m}{ui}{<->ssub * clmjt/m/it}{}
-\DeclareFontShape{TS1}{clmjt}{m}{si}{<->ssub * clmjt/m/scsl}{}
+\DeclareFontShape{TS1}{clmjt}{m}{scit}{<->ssub * clmjt/m/scsl}{}
+\DeclareFontShape{TS1}{clmjt}{m}{si}{<->ssub * clmjt/m/scit}{}
\DeclareFontShape{TS1}{clmjt}{b}{n}{<->ssub * clmjt/bx/n}{}
\DeclareFontShape{TS1}{clmjt}{bx}{sc}{<->ssub * clmjt/bx/n}{}
\DeclareFontShape{TS1}{clmjt}{b}{sc}{<->ssub * clmjt/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmjv.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmjv.fd
index 002b68cae40..66aa7f2da4d 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmjv.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmjv.fd
@@ -1,11 +1,11 @@
%Filename: ts1clmjv.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clmjv.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clmjv.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clmjv.]
\DeclareFontFamily{TS1}{clmjv}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmqs.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmqs.fd
index 8baed70737a..b3ff933fae6 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmqs.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmqs.fd
@@ -1,11 +1,11 @@
%Filename: ts1clmqs.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clmqs.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clmqs.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clmqs.]
\DeclareFontFamily{TS1}{clmqs}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clms.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clms.fd
index 3da7aea168a..e02646c99a3 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clms.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clms.fd
@@ -1,11 +1,11 @@
%Filename: ts1clms.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clms.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clms.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clms.]
\DeclareFontFamily{TS1}{clms}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmt.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmt.fd
index 4cc3e5243ae..9141d1ebc48 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmt.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmt.fd
@@ -1,11 +1,11 @@
%Filename: ts1clmt.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clmt.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clmt.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clmt.]
\DeclareFontFamily{TS1}{clmt}{}
@@ -57,7 +57,8 @@
}{}
\DeclareFontShape{TS1}{clmt}{m}{ui}{<->ssub * clmt/m/it}{}
-\DeclareFontShape{TS1}{clmt}{m}{si}{<->ssub * clmt/m/scsl}{}
+\DeclareFontShape{TS1}{clmt}{m}{scit}{<->ssub * clmt/m/scsl}{}
+\DeclareFontShape{TS1}{clmt}{m}{si}{<->ssub * clmt/m/scit}{}
\DeclareFontShape{TS1}{clmt}{b}{n}{<->ssub * clmt/bx/n}{}
\DeclareFontShape{TS1}{clmt}{bx}{sc}{<->ssub * clmt/bx/n}{}
\DeclareFontShape{TS1}{clmt}{b}{sc}{<->ssub * clmt/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmv.fd b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmv.fd
index 1d74461b38f..3dd4fb8c8d0 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/ts1clmv.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/ts1clmv.fd
@@ -1,11 +1,11 @@
%Filename: ts1clmv.fd
-%Created by: tex clm-drv
-%Created using fontinst v1.928
+%Created by: tex clm-ts1-drv
+%Created using fontinst v1.933
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1clmv.fd}
- [2008/02/13 Fontinst v1.928 font definitions for TS1/clmv.]
+ [2024/09/19 Fontinst v1.933 font definitions for TS1/clmv.]
\DeclareFontFamily{TS1}{clmv}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclm.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclm.fd
index 61c48f7d680..54a0050120b 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclm.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclm.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclm.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clm.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clm.]
\DeclareFontFamily{U}{clm}{}
@@ -74,7 +74,8 @@
<-> u-clmbo10
}{}
-\DeclareFontShape{U}{clm}{m}{si}{<->ssub * clm/m/scsl}{}
+\DeclareFontShape{U}{clm}{m}{scit}{<->ssub * clm/m/scsl}{}
+\DeclareFontShape{U}{clm}{m}{si}{<->ssub * clm/m/scit}{}
\DeclareFontShape{U}{clm}{b}{n}{<->ssub * clm/bx/n}{}
\DeclareFontShape{U}{clm}{bx}{sc}{<->ssub * clm/bx/n}{}
\DeclareFontShape{U}{clm}{b}{sc}{<->ssub * clm/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclm2.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclm2.fd
index 320abfe0d7f..df61503d2e5 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclm2.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclm2.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclm2.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clm2.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clm2.]
\DeclareFontFamily{U}{clm2}{}
@@ -74,7 +74,8 @@
<-> u-clmbo10
}{}
-\DeclareFontShape{U}{clm2}{m}{si}{<->ssub * clm2/m/scsl}{}
+\DeclareFontShape{U}{clm2}{m}{scit}{<->ssub * clm2/m/scsl}{}
+\DeclareFontShape{U}{clm2}{m}{si}{<->ssub * clm2/m/scit}{}
\DeclareFontShape{U}{clm2}{b}{n}{<->ssub * clm2/bx/n}{}
\DeclareFontShape{U}{clm2}{bx}{sc}{<->ssub * clm2/bx/n}{}
\DeclareFontShape{U}{clm2}{b}{sc}{<->ssub * clm2/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclm2d.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclm2d.fd
index f1a333da2b0..fe56d5b784d 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclm2d.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclm2d.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclm2d.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clm2d.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clm2d.]
\DeclareFontFamily{U}{clm2d}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclm2dj.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclm2dj.fd
index 6d4d7ade219..4e80cb04310 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclm2dj.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclm2dj.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclm2dj.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clm2dj.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clm2dj.]
\DeclareFontFamily{U}{clm2dj}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclm2j.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclm2j.fd
index cf16debfae9..842119949a7 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclm2j.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclm2j.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclm2j.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clm2j.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clm2j.]
\DeclareFontFamily{U}{clm2j}{}
@@ -74,7 +74,8 @@
<-> u-clmbo10
}{}
-\DeclareFontShape{U}{clm2j}{m}{si}{<->ssub * clm2j/m/scsl}{}
+\DeclareFontShape{U}{clm2j}{m}{scit}{<->ssub * clm2j/m/scsl}{}
+\DeclareFontShape{U}{clm2j}{m}{si}{<->ssub * clm2j/m/scit}{}
\DeclareFontShape{U}{clm2j}{b}{n}{<->ssub * clm2j/bx/n}{}
\DeclareFontShape{U}{clm2j}{bx}{sc}{<->ssub * clm2j/bx/n}{}
\DeclareFontShape{U}{clm2j}{b}{sc}{<->ssub * clm2j/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclm2jqs.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclm2jqs.fd
index 6b8b5ccc2a8..3a8970ddcd1 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclm2jqs.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclm2jqs.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclm2jqs.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clm2jqs.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clm2jqs.]
\DeclareFontFamily{U}{clm2jqs}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclm2js.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclm2js.fd
index acd57a8803e..07089240650 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclm2js.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclm2js.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclm2js.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clm2js.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clm2js.]
\DeclareFontFamily{U}{clm2js}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclm2jt.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclm2jt.fd
index 065b52776f6..61f1abd7073 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclm2jt.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclm2jt.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclm2jt.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clm2jt.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clm2jt.]
\DeclareFontFamily{U}{clm2jt}{}
@@ -57,7 +57,8 @@
}{}
\DeclareFontShape{U}{clm2jt}{m}{ui}{<->ssub * clm2jt/m/it}{}
-\DeclareFontShape{U}{clm2jt}{m}{si}{<->ssub * clm2jt/m/scsl}{}
+\DeclareFontShape{U}{clm2jt}{m}{scit}{<->ssub * clm2jt/m/scsl}{}
+\DeclareFontShape{U}{clm2jt}{m}{si}{<->ssub * clm2jt/m/scit}{}
\DeclareFontShape{U}{clm2jt}{b}{n}{<->ssub * clm2jt/bx/n}{}
\DeclareFontShape{U}{clm2jt}{bx}{sc}{<->ssub * clm2jt/bx/n}{}
\DeclareFontShape{U}{clm2jt}{b}{sc}{<->ssub * clm2jt/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclm2jv.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclm2jv.fd
index 8e9175f8b6d..e8ddcc42c32 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclm2jv.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclm2jv.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclm2jv.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clm2jv.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clm2jv.]
\DeclareFontFamily{U}{clm2jv}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclm2qs.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclm2qs.fd
index d8c67797c92..db43cb583e1 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclm2qs.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclm2qs.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclm2qs.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clm2qs.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clm2qs.]
\DeclareFontFamily{U}{clm2qs}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclm2s.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclm2s.fd
index df081eed6bb..4e20ef2d03b 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclm2s.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclm2s.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclm2s.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clm2s.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clm2s.]
\DeclareFontFamily{U}{clm2s}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclm2t.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclm2t.fd
index ad5fafb4043..1ef982690a8 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclm2t.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclm2t.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclm2t.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clm2t.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clm2t.]
\DeclareFontFamily{U}{clm2t}{}
@@ -57,7 +57,8 @@
}{}
\DeclareFontShape{U}{clm2t}{m}{ui}{<->ssub * clm2t/m/it}{}
-\DeclareFontShape{U}{clm2t}{m}{si}{<->ssub * clm2t/m/scsl}{}
+\DeclareFontShape{U}{clm2t}{m}{scit}{<->ssub * clm2t/m/scsl}{}
+\DeclareFontShape{U}{clm2t}{m}{si}{<->ssub * clm2t/m/scit}{}
\DeclareFontShape{U}{clm2t}{b}{n}{<->ssub * clm2t/bx/n}{}
\DeclareFontShape{U}{clm2t}{bx}{sc}{<->ssub * clm2t/bx/n}{}
\DeclareFontShape{U}{clm2t}{b}{sc}{<->ssub * clm2t/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclm2v.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclm2v.fd
index 0ab1a2b858b..87c7b72c5f2 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclm2v.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclm2v.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclm2v.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clm2v.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clm2v.]
\DeclareFontFamily{U}{clm2v}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclmd.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclmd.fd
index 22798578549..ba250f22e71 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclmd.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclmd.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclmd.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clmd.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clmd.]
\DeclareFontFamily{U}{clmd}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclmdj.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclmdj.fd
index 9db7ac3a7ee..0e0687f2ba5 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclmdj.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclmdj.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclmdj.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clmdj.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clmdj.]
\DeclareFontFamily{U}{clmdj}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclmj.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclmj.fd
index bd1d0557f19..789578e18f6 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclmj.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclmj.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclmj.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clmj.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clmj.]
\DeclareFontFamily{U}{clmj}{}
@@ -74,7 +74,8 @@
<-> u-clmbo10
}{}
-\DeclareFontShape{U}{clmj}{m}{si}{<->ssub * clmj/m/scsl}{}
+\DeclareFontShape{U}{clmj}{m}{scit}{<->ssub * clmj/m/scsl}{}
+\DeclareFontShape{U}{clmj}{m}{si}{<->ssub * clmj/m/scit}{}
\DeclareFontShape{U}{clmj}{b}{n}{<->ssub * clmj/bx/n}{}
\DeclareFontShape{U}{clmj}{bx}{sc}{<->ssub * clmj/bx/n}{}
\DeclareFontShape{U}{clmj}{b}{sc}{<->ssub * clmj/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclmjqs.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclmjqs.fd
index 7ff58254856..e2f4eb6aba5 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclmjqs.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclmjqs.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclmjqs.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clmjqs.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clmjqs.]
\DeclareFontFamily{U}{clmjqs}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclmjs.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclmjs.fd
index 7a3e4ea5919..28c10f7ba8c 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclmjs.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclmjs.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclmjs.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clmjs.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clmjs.]
\DeclareFontFamily{U}{clmjs}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclmjt.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclmjt.fd
index a07a76aed5c..79dff0ea513 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclmjt.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclmjt.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclmjt.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clmjt.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clmjt.]
\DeclareFontFamily{U}{clmjt}{}
@@ -57,7 +57,8 @@
}{}
\DeclareFontShape{U}{clmjt}{m}{ui}{<->ssub * clmjt/m/it}{}
-\DeclareFontShape{U}{clmjt}{m}{si}{<->ssub * clmjt/m/scsl}{}
+\DeclareFontShape{U}{clmjt}{m}{scit}{<->ssub * clmjt/m/scsl}{}
+\DeclareFontShape{U}{clmjt}{m}{si}{<->ssub * clmjt/m/scit}{}
\DeclareFontShape{U}{clmjt}{b}{n}{<->ssub * clmjt/bx/n}{}
\DeclareFontShape{U}{clmjt}{bx}{sc}{<->ssub * clmjt/bx/n}{}
\DeclareFontShape{U}{clmjt}{b}{sc}{<->ssub * clmjt/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclmjv.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclmjv.fd
index b109d77cb2e..4ab80a632c2 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclmjv.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclmjv.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclmjv.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clmjv.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clmjv.]
\DeclareFontFamily{U}{clmjv}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclmqs.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclmqs.fd
index 032bbf95dc0..2577c9a046d 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclmqs.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclmqs.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclmqs.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clmqs.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clmqs.]
\DeclareFontFamily{U}{clmqs}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclms.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclms.fd
index 4883781272d..69ac8937bf7 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclms.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclms.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclms.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clms.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clms.]
\DeclareFontFamily{U}{clms}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclmt.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclmt.fd
index 4f03f39e889..980b5f39b9d 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclmt.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclmt.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclmt.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clmt.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clmt.]
\DeclareFontFamily{U}{clmt}{}
@@ -57,7 +57,8 @@
}{}
\DeclareFontShape{U}{clmt}{m}{ui}{<->ssub * clmt/m/it}{}
-\DeclareFontShape{U}{clmt}{m}{si}{<->ssub * clmt/m/scsl}{}
+\DeclareFontShape{U}{clmt}{m}{scit}{<->ssub * clmt/m/scsl}{}
+\DeclareFontShape{U}{clmt}{m}{si}{<->ssub * clmt/m/scit}{}
\DeclareFontShape{U}{clmt}{b}{n}{<->ssub * clmt/bx/n}{}
\DeclareFontShape{U}{clmt}{bx}{sc}{<->ssub * clmt/bx/n}{}
\DeclareFontShape{U}{clmt}{b}{sc}{<->ssub * clmt/bx/sc}{}
diff --git a/Master/texmf-dist/tex/latex/cfr-lm/uclmv.fd b/Master/texmf-dist/tex/latex/cfr-lm/uclmv.fd
index 8f2ed86f727..b5dd2698595 100644
--- a/Master/texmf-dist/tex/latex/cfr-lm/uclmv.fd
+++ b/Master/texmf-dist/tex/latex/cfr-lm/uclmv.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{uclmv.fd}
- [2010/05/25 Fontinst v1.933 font definitions for U/clmv.]
+ [2024/09/19 Fontinst v1.933 font definitions for U/clmv.]
\DeclareFontFamily{U}{clmv}{}
diff --git a/Master/texmf-dist/tex/latex/changebar/changebar.sty b/Master/texmf-dist/tex/latex/changebar/changebar.sty
index 2de6b8218f0..c3da9e8eca8 100644
--- a/Master/texmf-dist/tex/latex/changebar/changebar.sty
+++ b/Master/texmf-dist/tex/latex/changebar/changebar.sty
@@ -37,7 +37,7 @@
%% Copyright 1994-2024 (C) Johannes Braams. All rights reserved.
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{changebar}
- [2024/01/09 v3.7d Indicate changes with marginal bars]
+ [2024/07/17 v3.7e Indicate changes with marginal bars]
\def\cb@maxpoint{80}
\def\cb@minpoint{1}
\def\cb@nil{0}
@@ -111,7 +111,7 @@
\immediate\openout\cb@writexy=\jobname.cb2\relax
\fi
\gdef\cb@pdfxy##1##2##3##4##5{%
- \immediate\write\cb@writexy{##1.##2p##3;##4;##5}%
+ \immediate\write\cb@writexy{##1.##2p##3/##4/##5}%
\expandafter\gdef\csname cb@##1.##2\endcsname{##3,##4,##5}}
\else\cb@pdftexerror\fi\fi\fi}
\def\cb@pdftexerror{\PackageError
@@ -131,7 +131,7 @@
\immediate\openout\cb@writexy=\jobname.cb2\relax
\fi
\gdef\cb@pdfxy##1##2##3##4##5{%
- \immediate\write\cb@writexy{##1.##2p##3;##4;##5}%
+ \immediate\write\cb@writexy{##1.##2p##3/##4/##5}%
\expandafter\gdef\csname cb@##1.##2\endcsname{##3,##4,##5}}
\gdef\sec@nd@ftw@##1 ##2{##2}
\fi}
@@ -151,7 +151,7 @@
\immediate\openout\cb@writexy=\jobname.cb2\relax
\fi
\gdef\cb@pdfxy##1##2##3##4##5{%
- \immediate\write\cb@writexy{##1.##2p##3;##4;##5}%
+ \immediate\write\cb@writexy{##1.##2p##3/##4/##5}%
\expandafter\gdef\csname cb@##1.##2\endcsname{##3,##4,##5}}
\fi}
\def\cb@luatexerror{\PackageError
@@ -384,9 +384,9 @@
\fi
\fi
}
- \def\cb@pdffind##1##2##3.##4p##5;##6;##7pt##8\relax##9{%
+ \def\cb@pdffind##1##2##3.##4p##5/##6/##7pt##8\relax##9{%
\def\cb@next{%
- \cb@pdffind{##1}{##2}##8\relax{##9##3.##4p##5;##6;##7pt}}%
+ \cb@pdffind{##1}{##2}##8\relax{##9##3.##4p##5/##6/##7pt}}%
\ifnum ##1=##3
\ifnum ##2=##4
\def\cb@pdfx{##5sp}%
@@ -422,7 +422,7 @@
\fi
\cb@next
}%
- \def\cb@pdfparsexy##1.##2p##3;##4;##5pt{%
+ \def\cb@pdfparsexy##1.##2p##3/##4/##5pt{%
\def\cb@pdfpg{##2}}%
\def\cb@defpoint##1##2{%
\if@filesw
@@ -443,7 +443,7 @@
\ifnum##1>99 1\else
\ifnum##1<10 0.0\the##1\else
0.\the##1\fi\fi\fi}
-\def\cb@pdf@scale{0.996264009963}
+ \def\cb@pdf@scale{0.996264009963}
\def\cb@connect##1##2##3{%
\cb@findpdfpoint{##1}\cb@pagecount
\ifx\cb@pdfx\relax\cb@rerun
@@ -524,9 +524,9 @@
\fi
\fi
}
- \def\cb@pdffind##1##2##3.##4p##5;##6;##7pt##8\relax##9{%
+ \def\cb@pdffind##1##2##3.##4p##5/##6/##7pt##8\relax##9{%
\def\cb@next{%
- \cb@pdffind{##1}{##2}##8\relax{##9##3.##4p##5;##6;##7pt}}%
+ \cb@pdffind{##1}{##2}##8\relax{##9##3.##4p##5/##6/##7pt}}%
\ifnum ##1=##3
\ifnum ##2=##4
\def\cb@pdfx{##5sp}%
@@ -562,7 +562,7 @@
\fi
\cb@next
}%
- \def\cb@pdfparsexy##1.##2p##3;##4;##5pt{%
+ \def\cb@pdfparsexy##1.##2p##3/##4/##5pt{%
\def\cb@pdfpg{##2}}%
\def\cb@defpoint##1##2{%
\if@filesw
@@ -583,7 +583,7 @@
\ifnum##1>99 1\else
\ifnum##1<10 0.0\the##1\else
0.\the##1\fi\fi\fi}
-\def\cb@pdf@scale{0.996264009963}
+ \def\cb@pdf@scale{0.996264009963}
\def\cb@connect##1##2##3{%
\cb@findpdfpoint{##1}\cb@pagecount
\ifx\cb@pdfx\relax\cb@rerun
@@ -665,9 +665,9 @@
\fi
\fi
}
- \def\cb@pdffind##1##2##3.##4p##5;##6;##7pt##8\relax##9{%
+ \def\cb@pdffind##1##2##3.##4p##5/##6/##7pt##8\relax##9{%
\def\cb@next{%
- \cb@pdffind{##1}{##2}##8\relax{##9##3.##4p##5;##6;##7pt}}%
+ \cb@pdffind{##1}{##2}##8\relax{##9##3.##4p##5/##6/##7pt}}%
\ifnum ##1=##3
\ifnum ##2=##4
\def\cb@pdfx{##5sp}%
@@ -703,7 +703,7 @@
\fi
\cb@next
}%
- \def\cb@pdfparsexy##1.##2p##3;##4;##5pt{%
+ \def\cb@pdfparsexy##1.##2p##3/##4/##5pt{%
\def\cb@pdfpg{##2}}%
\def\cb@defpoint##1##2{%
\if@filesw
@@ -724,7 +724,7 @@
\ifnum##1>99 1\else
\ifnum##1<10 0.0\the##1\else
0.\the##1\fi\fi\fi}
-\def\cb@pdf@scale{0.996264009963}
+ \def\cb@pdf@scale{0.996264009963}
\def\cb@connect##1##2##3{%
\cb@findpdfpoint{##1}\cb@pagecount
\ifx\cb@pdfx\relax\cb@rerun
@@ -802,7 +802,7 @@
\newcommand*{\nochangebars}{%
\def\cb@start[##1]{\ignorespaces}%
\def\cb@delete[##1]{}%
- \def\cb@end{\ignorespacesafterend}
+ \def\cb@end{\ignorespacesafterend}%
}
\newlength{\changebarwidth}
\setlength{\changebarwidth}{2pt}
diff --git a/Master/texmf-dist/tex/latex/changelog/changelog.sty b/Master/texmf-dist/tex/latex/changelog/changelog.sty
index 4c95edd8051..b58e33479a7 100644
--- a/Master/texmf-dist/tex/latex/changelog/changelog.sty
+++ b/Master/texmf-dist/tex/latex/changelog/changelog.sty
@@ -1,5 +1,5 @@
\RequirePackage{expl3}
-\ProvidesExplPackage{changelog}{2023/02/16}{2.5.0}{Typesetting changelogs}
+\ProvidesExplPackage{changelog}{2024/09/17}{2.5.1}{Typesetting changelogs}
% Description: Provides the changelog environment for typesetting changelogs
% License: LPPL 1.3c
% Homepage: https://github.com/9999years/latex-changelog
@@ -210,24 +210,28 @@
{}
}
-\cs_set:Npn \changelog__short_version_define_date
+% Display the current version, which may be a version number, a date, or "Unreleased".
+\cs_set:Npn \changelog__display_version
{
- \tl_if_empty:NT \g__changelog_version_tl
+ \tl_if_empty:NTF \g__changelog_version_tl
{
\tl_if_empty:NTF \g__changelog_date_tl
{
- \tl_set:Nn \g__changelog_version_tl { \GetTranslation{changelog-Unreleased} }
+ \GetTranslation{changelog-Unreleased}
\tl_set:Nn \g__changelog_date_tl { \today }
}
{
- \tl_set_eq:NN \g__changelog_version_tl \g__changelog_date_tl
+ \tl_use:N \g__changelog_date_tl
}
}
+ {
+ \tl_use:N \g__changelog_version_tl
+ }
}
\cs_set:Npn \changelog__short_version_item
{
- \tl_use:N \g__changelog_version_tl
+ \changelog__display_version
\bool_if:NT \g__changelog_yanked_bool
{
\ \changelogyanked
@@ -247,12 +251,21 @@
\cs_set:Npn \changelog__short_version_author_date
{
+ % This might output nothing if there's no author and the date is being used
+ % as a version number, so make sure to `\leavevmode` to avoid a weird
+ % indent at the start of the item.
+ \mode_leave_vertical:
\tl_use:N \g__changelog_author_tl
\tl_if_empty:NF \g__changelog_date_tl
{
- \tl_if_empty:NF \g__changelog_author_tl
- { ~ }
- (\tl_use:N \g__changelog_date_tl)
+ % If no version number is given, the date is used instead, so we don't
+ % want to show the date twice.
+ \tl_if_empty:NF \g__changelog_version_tl
+ {
+ \tl_if_empty:NF \g__changelog_author_tl
+ { ~ }
+ (\tl_use:N \g__changelog_date_tl)
+ }
}
}
@@ -308,7 +321,6 @@
% environment
\cs_set:Npn \changelog__short_version
{
- \changelog__short_version_define_date
\bool_gset_true:N \g__changelog_seen_version_bool
\item[\changelog__short_version_item]
diff --git a/Master/texmf-dist/tex/latex/chemformula-ru/chemformula-ru.sty b/Master/texmf-dist/tex/latex/chemformula-ru/chemformula-ru.sty
index f1df3002c11..32b6e23fa15 100644
--- a/Master/texmf-dist/tex/latex/chemformula-ru/chemformula-ru.sty
+++ b/Master/texmf-dist/tex/latex/chemformula-ru/chemformula-ru.sty
@@ -1,5 +1,5 @@
%% The chemformula-ru package eliminates an incompatibility
-%% between the chemformula package and Russian settings (russian.ldf) of the babel package.
+%% between the chemformula package and Russian settings (russian.ldf) for the babel package.
%%
%% Copyright (c) 2024 by Alexey Kuznetsov (mailtokuznetsov at gmail.com)
%%
@@ -12,21 +12,21 @@
%% version 2008/05/04 or later.
%%
-\ProvidesPackage{chemformula-ru}[2024-03-01 Using chemformula package with babel-russian]
+\ProvidesPackage{chemformula-ru}[2024-07-10 Using chemformula package with babel-russian]
\DeclareOption{cosh2ch}{\def\cosh@ch{\DeclareRobustCommand\cosh{\mathop{\operator@font ch}\nolimits}}}
\DeclareOption{ch2Ch}{\def\ch@Ch{\DeclareRobustCommand\Ch{\mathop{\operator@font ch}\nolimits}}}
+\DeclareOption*{\PassOptionsToPackage\CurrentOption{chemformula}}
\ProcessOptions\relax
+\RequirePackage{chemformula}
+
\BeforeBeginEnvironment{document}{
- \IfPackageLoadedTF{chemformula}{
- \IfPackageLoadedWithOptionsTF{babel}{russian}{
- \let\@Chem@Formula\ch \let\ch\undefined
- \AtBeginDocument{ \let\ch\@Chem@Formula
- \@ifundefined{cosh@ch}{\relax}{\cosh@ch}
- \@ifundefined{ch@Ch}{\relax}{\ch@Ch}
- }
- } { \relax }
- } { \relax }
-}
+ \let\@Chem@Formula\ch \let\ch\undefined
+ \AtBeginDocument{
+ \let\ch\@Chem@Formula
+ \@ifundefined{cosh@ch}{\relax}{\cosh@ch}
+ \@ifundefined{ch@Ch}{\relax}{\ch@Ch}
+ } }
+
\endinput
diff --git a/Master/texmf-dist/tex/latex/circledtext/circledtext.sty b/Master/texmf-dist/tex/latex/circledtext/circledtext.sty
index f70b7168141..47c62817e77 100644
--- a/Master/texmf-dist/tex/latex/circledtext/circledtext.sty
+++ b/Master/texmf-dist/tex/latex/circledtext/circledtext.sty
@@ -19,7 +19,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\RequirePackage{expl3}
-\ProvidesExplPackage{circledtext}{2022-04-28}{v1.1.0}
+\ProvidesExplPackage{circledtext}{2024-09-09}{v1.1.1}
{Typeset circled text with l3draw}
\RequirePackage { xtemplate, l3keys2e, l3draw, xparse }
@@ -187,18 +187,18 @@
% 正方形边长
\dim_compare:nNnTF \l_tmpa_dim > \l_tmpb_dim
{
- \dim_gset_eq:NN \l__circledtext_char_box_size_dim \l_tmpa_dim
+ \dim_set_eq:NN \l__circledtext_char_box_size_dim \l_tmpa_dim
}
{
- \dim_gset_eq:NN \l__circledtext_char_box_size_dim \l_tmpb_dim
+ \dim_set_eq:NN \l__circledtext_char_box_size_dim \l_tmpb_dim
}
% 设置基字符盒子正方形宽和高(相等)
- \dim_gset_eq:NN \charboxwd \l__circledtext_char_box_size_dim
- \dim_gset_eq:NN \charboxht \l__circledtext_char_box_size_dim
+ \dim_set_eq:NN \charboxwd \l__circledtext_char_box_size_dim
+ \dim_set_eq:NN \charboxht \l__circledtext_char_box_size_dim
% 外接圆半径
- \dim_gset:Nn \l__circledtext_char_box_radius_dim
+ \dim_set:Nn \l__circledtext_char_box_radius_dim
{
\fp_to_dim:n
{
@@ -244,6 +244,8 @@
% 类似\cs_new:cn __circledtext_char_box_construct_type_none:nnnnnn
\cs_new:cn { \__circledtext_char_box_type:n {#1} }
}
+\cs_generate_variant:Nn \__circledtext_new_char_box_construct:nn { V }
+\cs_generate_variant:Nn \__circledtext_new_char_box_construct:nn { x }
% 定义字符边框盒子类型
@@ -328,6 +330,105 @@
}
}
+% 无反色底层填充正方形
+\__circledtext_new_char_box_construct:nn { __lowerfilledsquare }
+ {
+ \draw_scope_begin:
+ \color_fill:n { lowerbgboxfill }
+ \draw_transform_shift:n { (#3-#3*#5)/2, (#4-#4*#6)/2 }
+ \draw_path_rectangle:nn { #1, #2 } { #3*#5, #4*#6 }
+ \draw_path_use_clear:n { fill }
+ \draw_scope_end:
+ }
+
+% 无反色上层填充正方形
+\__circledtext_new_char_box_construct:nn { __upperfilledsquare }
+ {
+ \draw_scope_begin:
+ \color_fill:n { upperbgboxfill }
+ \draw_transform_shift:n { (#3-#3*#5)/2, (#4-#4*#6)/2 }
+ \draw_path_rectangle:nn { #1, #2 } { #3*#5, #4*#6 }
+ \draw_path_use_clear:n { fill }
+ \draw_scope_end:
+ }
+
+% 无反色阴影填充正方形
+\__circledtext_new_char_box_construct:nn { __shadowfilledsquare }
+ {
+ \draw_scope_begin:
+ \color_fill:n { shadowboxfill }
+ \draw_transform_shift:n { (#3-#3*#5)/2 + \charboxwd * 0.1,
+ (#4-#4*#6)/2 - \charboxht * 0.1 }
+ \draw_path_rectangle:nn { #1, #2 } { #3*#5, #4*#6 }
+ \draw_path_use_clear:n { fill }
+ \draw_scope_end:
+ }
+
+% 无反色底层填充内切圆
+\__circledtext_new_char_box_construct:nn { __innerlowerfilledcircle }
+ {
+ \draw_scope_begin:
+ \color_fill:n { lowerbgboxfill }
+ \draw_path_circle:nn { #3/2, #4/2 } { #3*#5/2 }
+ \draw_path_use_clear:n { fill }
+ \draw_scope_end:
+ }
+
+% 无反色上层填充内切圆
+\__circledtext_new_char_box_construct:nn { __innerupperfilledcircle }
+ {
+ \draw_scope_begin:
+ \color_fill:n { upperbgboxfill }
+ \draw_path_circle:nn { #3/2, #4/2 } { #3*#5/2 }
+ \draw_path_use_clear:n { fill }
+ \draw_scope_end:
+ }
+
+% 无反色阴影填充内切圆
+\__circledtext_new_char_box_construct:nn { __innershadowfilledcircle }
+ {
+ \draw_scope_begin:
+ \color_fill:n { shadowboxfill }
+ \draw_transform_shift:n { \charboxwd*0.1, -\charboxht*0.1 }
+ \draw_path_circle:nn { #3/2, #4/2 } { #3*#5/2 }
+ \draw_path_use_clear:n { fill }
+ \draw_scope_end:
+ }
+
+% 无反色底层填充外接圆
+\__circledtext_new_char_box_construct:nn { __outerlowerfilledcircle }
+ {
+ \draw_scope_begin:
+ \color_fill:n { lowerbgboxfill }
+ \draw_path_circle:nn { #3/2, #4/2 }
+ { \l__circledtext_char_box_radius_dim*#5 }
+ \draw_path_use_clear:n { fill }
+ \draw_scope_end:
+ }
+
+% 无反色上层填充外接圆
+\__circledtext_new_char_box_construct:nn { __outerupperfilledcircle }
+ {
+ \draw_scope_begin:
+ \color_fill:n { upperbgboxfill }
+ \draw_path_circle:nn { #3/2, #4/2 }
+ { \l__circledtext_char_box_radius_dim*#5 }
+ \draw_path_use_clear:n { fill }
+ \draw_scope_end:
+ }
+
+% 无反色阴影填充外接圆
+\__circledtext_new_char_box_construct:nn { __outershadowfilledcircle }
+ {
+ \draw_scope_begin:
+ \color_fill:n { shadowboxfill }
+ \draw_transform_shift:n { \charboxwd*0.1, -\charboxht*0.1 }
+ \draw_path_circle:nn { #3/2, #4/2 }
+ { \l__circledtext_char_box_radius_dim*#5 }
+ \draw_path_use_clear:n { fill }
+ \draw_scope_end:
+ }
+
% 正方形边框
\__circledtext_new_char_box_construct:nn { __squarebox }
{
@@ -499,35 +600,47 @@
}
% 填充内切圆叠加正方形正十字线与内切圆边框
-\__circledtext_new_char_box_construct:nn { o+ }
+\clist_map_variable:nNn {o+,+o} \l_tmpa_tl
{
- \__circledtext_char_box_type_c:n { __innerfilledcircle } {#1} {#2} {#3} {#4} {#5} {#6}
- \__circledtext_char_box_type_c:n { __scross } {#1} {#2} {#3} {#4} {#5} {#6}
- \__circledtext_char_box_type_c:n { __innercirclebox } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_new_char_box_construct:Vn \l_tmpa_tl
+ {
+ \__circledtext_char_box_type_c:n { __innerfilledcircle } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_char_box_type_c:n { __scross } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_char_box_type_c:n { __innercirclebox } {#1} {#2} {#3} {#4} {#5} {#6}
+ }
}
% 填充内切圆叠加内切圆斜十字线与内切圆边框
-\__circledtext_new_char_box_construct:nn { ox }
+\clist_map_variable:nNn {ox,xo} \l_tmpa_tl
{
- \__circledtext_char_box_type_c:n { __innerfilledcircle } {#1} {#2} {#3} {#4} {#5} {#6}
- \__circledtext_char_box_type_c:n { __innerdcross } {#1} {#2} {#3} {#4} {#5} {#6}
- \__circledtext_char_box_type_c:n { __innercirclebox } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_new_char_box_construct:Vn \l_tmpa_tl
+ {
+ \__circledtext_char_box_type_c:n { __innerfilledcircle } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_char_box_type_c:n { __innerdcross } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_char_box_type_c:n { __innercirclebox } {#1} {#2} {#3} {#4} {#5} {#6}
+ }
}
% 填充内切圆叠加内切圆正斜十字线与内切圆边框
-\__circledtext_new_char_box_construct:nn { ox+ }
+\clist_map_variable:nNn {ox+,o+x,xo+,x+o,+ox,+xo} \l_tmpa_tl
{
- \__circledtext_char_box_type_c:n { __innerfilledcircle } {#1} {#2} {#3} {#4} {#5} {#6}
- \__circledtext_char_box_type_c:n { __innerdcross } {#1} {#2} {#3} {#4} {#5} {#6}
- \__circledtext_char_box_type_c:n { __scross } {#1} {#2} {#3} {#4} {#5} {#6}
- \__circledtext_char_box_type_c:n { __innercirclebox } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_new_char_box_construct:Vn \l_tmpa_tl
+ {
+ \__circledtext_char_box_type_c:n { __innerfilledcircle } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_char_box_type_c:n { __innerdcross } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_char_box_type_c:n { __scross } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_char_box_type_c:n { __innercirclebox } {#1} {#2} {#3} {#4} {#5} {#6}
+ }
}
% 内切圆斜十字线叠加正十字线
-\__circledtext_new_char_box_construct:nn { x+ }
+\clist_map_variable:nNn {x+,+x} \l_tmpa_tl
{
- \__circledtext_char_box_type_c:n { __innerdcross } {#1} {#2} {#3} {#4} {#5} {#6}
- \__circledtext_char_box_type_c:n { __scross } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_new_char_box_construct:Vn \l_tmpa_tl
+ {
+ \__circledtext_char_box_type_c:n { __innerdcross } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_char_box_type_c:n { __scross } {#1} {#2} {#3} {#4} {#5} {#6}
+ }
}
% 填充正方形叠加正方形边框
@@ -538,35 +651,47 @@
}
% 填充正方形叠加正方形正十字线与正方形边框
-\__circledtext_new_char_box_construct:nn { O+ }
+\clist_map_variable:nNn {O+,+O} \l_tmpa_tl
{
- \__circledtext_char_box_type_c:n { __filledsquare } {#1} {#2} {#3} {#4} {#5} {#6}
- \__circledtext_char_box_type_c:n { __scross } {#1} {#2} {#3} {#4} {#5} {#6}
- \__circledtext_char_box_type_c:n { __squarebox } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_new_char_box_construct:Vn \l_tmpa_tl
+ {
+ \__circledtext_char_box_type_c:n { __filledsquare } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_char_box_type_c:n { __scross } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_char_box_type_c:n { __squarebox } {#1} {#2} {#3} {#4} {#5} {#6}
+ }
}
% 填充正方形叠加正方形斜十字线与正方形边框
-\__circledtext_new_char_box_construct:nn { OX }
+\clist_map_variable:nNn {OX,XO} \l_tmpa_tl
{
- \__circledtext_char_box_type_c:n { __filledsquare } {#1} {#2} {#3} {#4} {#5} {#6}
- \__circledtext_char_box_type_c:n { __dcross } {#1} {#2} {#3} {#4} {#5} {#6}
- \__circledtext_char_box_type_c:n { __squarebox } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_new_char_box_construct:Vn \l_tmpa_tl
+ {
+ \__circledtext_char_box_type_c:n { __filledsquare } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_char_box_type_c:n { __dcross } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_char_box_type_c:n { __squarebox } {#1} {#2} {#3} {#4} {#5} {#6}
+ }
}
% 填充正方形叠加正方形斜正十字线与正方形边框
-\__circledtext_new_char_box_construct:nn { OX+ }
+\clist_map_variable:nNn {OX+,O+X,XO+,X+O,+OX,+XO} \l_tmpa_tl
{
- \__circledtext_char_box_type_c:n { __filledsquare } {#1} {#2} {#3} {#4} {#5} {#6}
- \__circledtext_char_box_type_c:n { __dcross } {#1} {#2} {#3} {#4} {#5} {#6}
- \__circledtext_char_box_type_c:n { __scross } {#1} {#2} {#3} {#4} {#5} {#6}
- \__circledtext_char_box_type_c:n { __squarebox } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_new_char_box_construct:Vn \l_tmpa_tl
+ {
+ \__circledtext_char_box_type_c:n { __filledsquare } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_char_box_type_c:n { __dcross } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_char_box_type_c:n { __scross } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_char_box_type_c:n { __squarebox } {#1} {#2} {#3} {#4} {#5} {#6}
+ }
}
% 正方形斜十字线叠加正十字线
-\__circledtext_new_char_box_construct:nn { X+ }
+\clist_map_variable:nNn {X+,+X} \l_tmpa_tl
{
- \__circledtext_char_box_type_c:n { __dcross } {#1} {#2} {#3} {#4} {#5} {#6}
- \__circledtext_char_box_type_c:n { __scross } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_new_char_box_construct:Vn \l_tmpa_tl
+ {
+ \__circledtext_char_box_type_c:n { __dcross } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_char_box_type_c:n { __scross } {#1} {#2} {#3} {#4} {#5} {#6}
+ }
}
% 内切圆叠加同心82%内切圆边框
@@ -578,11 +703,14 @@
}
% 反色正方形叠加内切填充圆
-\__circledtext_new_char_box_construct:nn { Oo }
+\clist_map_variable:nNn {Oo,oO} \l_tmpa_tl
{
- \__circledtext_char_box_type_c:n { __negfilledsquare } {#1} {#2} {#3} {#4} {#5} {#6}
- \__circledtext_char_box_type_c:n { __innerfilledcircle } {#1} {#2} {#3} {#4} {#5} {#6}
- \__circledtext_char_box_type_c:n { __squarebox } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_new_char_box_construct:Vn \l_tmpa_tl
+ {
+ \__circledtext_char_box_type_c:n { __negfilledsquare } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_char_box_type_c:n { __innerfilledcircle } {#1} {#2} {#3} {#4} {#5} {#6}
+ \__circledtext_char_box_type_c:n { __squarebox } {#1} {#2} {#3} {#4} {#5} {#6}
+ }
}
% 正方形叠加同心82%正方形边框
@@ -592,6 +720,53 @@
\__circledtext_char_box_type_c:n { __squarebox } {#1} {#2} {#3} {#4} {#5} {#6}
\__circledtext_char_box_type_c:n { __squarebox } {#1} {#2} {#3} {#4} {0.82} {0.82}
}
+
+% 3同心圆叠加(类似中国象棋棋子形状)
+\__circledtext_new_char_box_construct:nn { ooo }
+ {
+ % 绘制填充外接圆阴影
+ \__circledtext_char_box_type_c:n { __outershadowfilledcircle }
+ {#1} {#2} {#3} {#4} {1.0} {1.0}
+ % 绘制填充外接圆外圈背景
+ \__circledtext_char_box_type_c:n { __outerlowerfilledcircle }
+ {#1} {#2} {#3} {#4} {#5} {#6}
+ % 绘制填充外接边环背景
+ \__circledtext_char_box_type_c:n { __outerupperfilledcircle }
+ {#1} {#2} {#3} {#4} {0.88} {0.88}
+ % 绘制填充外接圆内圈背景
+ \__circledtext_char_box_type_c:n { __outerlowerfilledcircle }
+ {#1} {#2} {#3} {#4} {0.72} {0.72}
+ % 绘制双边刻环线
+ \__circledtext_char_box_type_c:n { __outercirclebox }
+ {#1} {#2} {#3} {#4} {0.88} {0.88}
+ \__circledtext_char_box_type_c:n { __outercirclebox }
+ {#1} {#2} {#3} {#4} {0.72} {0.72}
+
+ }
+
+% 3同心正方形叠加
+\__circledtext_new_char_box_construct:nn { OOO }
+ {
+ % 绘制填充正方形阴影
+ \__circledtext_char_box_type_c:n { __shadowfilledsquare }
+ {#1} {#2} {#3} {#4} {1.0} {1.0}
+ % 绘制填充正方形外圈背景
+ \__circledtext_char_box_type_c:n { __lowerfilledsquare}
+ {#1} {#2} {#3} {#4} {#5} {#6}
+ % 绘制填充正方形边环背景
+ \__circledtext_char_box_type_c:n { __upperfilledsquare}
+ {#1} {#2} {#3} {#4} {0.88} {0.88}
+ % 绘制填充正方形内圈背景
+ \__circledtext_char_box_type_c:n { __lowerfilledsquare}
+ {#1} {#2} {#3} {#4} {0.72} {0.72}
+ % 绘制双边刻环线
+ \__circledtext_char_box_type_c:n { __squarebox }
+ {#1} {#2} {#3} {#4} {0.88} {0.88}
+ \__circledtext_char_box_type_c:n { __squarebox }
+ {#1} {#2} {#3} {#4} {0.72} {0.72}
+
+ }
+
\msg_new:nnn { circledtext } { box-exists } { The~ box~ type~ `#1~ not~ exists. }
% 缩放类型名称生成函数
@@ -874,6 +1049,49 @@
\cs_set_nopar:Npn \__circledtext_aux_color_boxfill:
{ \color_fill:nn #1 }
} ,
+
+ % 无反色时底层盒子背景填充颜色
+ lowerbgcolor .code:n = { \exp_args:Nx \tl_if_empty:nTF {#1}
+ {
+ \__circledtext_color_select:nn { lowerbgboxfill }
+ { yellow!70!red }
+ \cs_set_nopar:Npn \__circledtext_aux_color_boxfill:
+ { \color_fill:n { yellow!70!red } }
+ }{ \__circledtext_color_select:nn { lowerbgboxfill } { #1 }
+ \cs_set_nopar:Npn \__circledtext_aux_color_boxfill:
+ { \color_fill:n { #1 } }
+ }
+ } ,
+ lowerbgcolor .initial:n = {} ,
+
+ % 无反色时上层盒子背景填充颜色
+ upperbgcolor .code:n = { \exp_args:Nx \tl_if_empty:nTF {#1}
+ {
+ \__circledtext_color_select:nn { upperbgboxfill }
+ { yellow!80!black }
+ \cs_set_nopar:Npn \__circledtext_aux_color_boxfill:
+ { \color_fill:n { yellow!80!black } }
+ }{ \__circledtext_color_select:nn { upperbgboxfill } { #1 }
+ \cs_set_nopar:Npn \__circledtext_aux_color_boxfill:
+ { \color_fill:n { #1 } }
+ }
+ } ,
+ upperbgcolor .initial:n = {} ,
+
+ % 盒子阴影填充颜色
+ shadowcolor .code:n = { \exp_args:Nx \tl_if_empty:nTF {#1}
+ {
+ \__circledtext_color_select:nn { shadowboxfill }
+ { black!35!white }
+ \cs_set_nopar:Npn \__circledtext_aux_color_boxfill:
+ { \color_fill:n { black!35!white } }
+ }{ \__circledtext_color_select:nn { shadowboxfill } { #1 }
+ \cs_set_nopar:Npn \__circledtext_aux_color_boxfill:
+ { \color_fill:n { #1 } }
+ }
+ } ,
+ shadowcolor .initial:n = {} ,
+
% 笔画参数
charstroke .choice:,
charstroke .value_required:n = true,
@@ -965,17 +1183,17 @@
% 复制盒子准备缩放与输出
\coffin_set_eq:NN \l__circledtext_box_coffin \l__circledtext_char_coffin
- % % 测量盒子容器总高度(用内切圆则不需要)
- % \dim_set:Nn \l_tmpa_dim
- % { \__circledtext_coffin_ht_plus_dp:N \l__circledtext_box_coffin }
- % % 缩放字符盒子容器到字符大小
- % \coffin_scale:Nnn \l__circledtext_box_coffin
- % {
- % \dim_ratio:nn { \charboxht } { \l_tmpa_dim }
- % }
- % {
- % \dim_ratio:nn { \charboxht } { \l_tmpa_dim }
- % }
+ % 测量盒子容器总高度(用内切圆则不需要)
+ \dim_set:Nn \l_tmpa_dim
+ { \__circledtext_coffin_ht_plus_dp:N \l__circledtext_box_coffin }
+ % 缩放字符盒子容器到字符大小
+ \coffin_scale:Nnn \l__circledtext_box_coffin
+ {
+ \dim_ratio:nn { \charboxht } { \l_tmpa_dim }
+ }
+ {
+ \dim_ratio:nn { \charboxht } { \l_tmpa_dim }
+ }
% 根据指定的方式缩放盒子
\__circledtext_resize_c:n { \l__circledtext_resize_method_tl }
diff --git a/Master/texmf-dist/tex/latex/circuitikz/circuitikz.sty b/Master/texmf-dist/tex/latex/circuitikz/circuitikz.sty
index afa91d4b2b1..4f5ce00a0fc 100644
--- a/Master/texmf-dist/tex/latex/circuitikz/circuitikz.sty
+++ b/Master/texmf-dist/tex/latex/circuitikz/circuitikz.sty
@@ -16,8 +16,8 @@
\providecommand\DeclareRelease[3]{}
\providecommand\DeclareCurrentRelease[2]{}
-\def\pgfcircversion{1.6.9}
-\def\pgfcircversiondate{2024/05/25}
+\def\pgfcircversion{1.7.0}
+\def\pgfcircversiondate{2024/08/03}
\DeclareRelease{0.4}{2012/12/20}{circuitikz-0.4-body.tex}
\DeclareRelease{v0.4}{2012/12/20}{circuitikz-0.4-body.tex}
diff --git a/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-bib.sty b/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-bib.sty
index 19619e1f5b1..2a2af3a7d2b 100644
--- a/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-bib.sty
+++ b/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-bib.sty
@@ -34,7 +34,7 @@
\__csl_collect_bibliography:n
{
\lua_now:e
- { csl.bibliography("\l__csl_bib_filter_tl") }
+ { csl_citation_manager:bibliography("\l__csl_bib_filter_tl") }
}
}
}
@@ -53,11 +53,11 @@
}
\tl_use:N \l__csl_bibliography_tl
}
- { \msg_warning:nn { citation-style-language } { bibliography / empty } }
+ { \msg_warning:nn { citation-style-language } { empty-bibliography } }
\group_end:
}
-\msg_new:nnn { citation-style-language } { bibliography / empty }
+\msg_new:nnn { citation-style-language } { empty-bibliography }
{ The~ bibliography~ is~ empty. }
\DeclareDocumentCommand \bibliography { m }
@@ -108,11 +108,16 @@
\cs_new:Npn \__csl_write_aux_bibliography:n #1
{
\if@filesw
- \iow_now:Nn \@auxout { \csl@aux@bibliography {#1} }
+ \iow_now:Nx \@auxout
+ {
+ \token_to_str:N \csl@aux@bibliography
+ { \int_use:N \g__csl_ref_section_index_int }
+ {#1}
+ }
\fi
}
-\cs_new:Npn \csl@aux@bibliography #1 { }
+\cs_new:Npn \csl@aux@bibliography #1#2 { }
\tl_new:N \l__csl_bib_index_tl
@@ -182,7 +187,7 @@
}
{
\tl_set:Nn \@noitemerr
- { \msg_warning:nn { citation-style-language } { bibliography / empty } }
+ { \msg_warning:nn { citation-style-language } { empty-bibliography } }
\endlist
\group_end:
\exp_args:NV \__csl_print_bib_note:n \l__csl_bib_post_note_tl
@@ -355,6 +360,96 @@
}
+% ### Bibliography sections and segments
+
+
+\int_new:N \g__csl_ref_section_index_int
+\int_new:N \g__csl_max_ref_section_index_int
+\int_gset:Nn \g__csl_ref_section_index_int { 0 }
+\int_gset:Nn \g__csl_max_ref_section_index_int { 0 }
+
+\keys_define:nn { csl / ref-section }
+ {
+ style .code:n =
+ {
+ \tl_set:Nn \l__csl_style_tl {#1}
+ \renewcommand \csl@style {#1}
+ } ,
+ bib-resource .clist_set:N = \l__csl_bib_resources_clist ,
+ locale .tl_set:N = \l__csl_locale_tl ,
+ }
+
+\NewDocumentCommand \refsection { O { } }
+ {
+ \int_gincr:N \g__csl_max_ref_section_index_int
+ \int_gset_eq:NN \g__csl_ref_section_index_int \g__csl_max_ref_section_index_int
+
+ \tl_clear:N \l__csl_style_tl
+ \clist_clear:N \l__csl_bib_resources_clist
+ \tl_clear:N \l__csl_locale_tl
+ \keys_set:nn { csl / ref-section } { #1 }
+ \tl_if_empty:NTF \l__csl_style_tl
+ {
+ \tl_set_eq:NN \l__csl_style_tl \g__csl_global_style_tl
+ \tl_set_eq:NN \csl@style \l__csl_style_tl
+ }
+ {
+ \tl_set_eq:NN \csl@style \l__csl_style_tl
+ \exp_args:NV \__csl_write_aux_bibstyle:n \l__csl_style_tl
+ }
+ \clist_if_empty:NF \l__csl_bib_resources_clist
+ % { \clist_set_eq:NN \l__csl_bib_resources_clist \g__csl_global_bib_resources_clist }
+ {
+ \exp_args:Nx \__csl_write_aux_bibdata:n
+ { \clist_use:Nn \l__csl_bib_resources_clist { , } }
+ }
+ \tl_if_empty:NTF \l__csl_locale_tl
+ { \tl_set_eq:NN \l__csl_locale_tl \g__csl_global_locale_tl }
+ {
+ \exp_args:Nx \__csl_write_aux_options:n
+ { locale = \l__csl_locale_tl }
+ }
+ \sys_if_engine_luatex:TF
+ {
+ \lua_now:e
+ {
+ csl_citation_manager:begin_ref_section(
+ "\l__csl_style_tl",
+ "\clist_use:Nn \l__csl_bib_resources_clist { , }",
+ "\l__csl_locale_tl"
+ )
+ }
+ \str_if_eq:eeTF
+ {
+ \lua_now:n
+ {
+ tex.print(tostring(
+ csl_citation_manager.ref_section.initialized
+ ))
+ }
+ }
+ { true }
+ { \bool_set_true:N \l__csl_engine_initialized_bool }
+ { \bool_set_false:N \l__csl_engine_initialized_bool }
+ \__csl_get_style_class_luatex:
+ }
+ {
+ \__csl_get_style_class:
+ }
+ }
+
+\cs_set_eq:NN \newrefsection \refsection
+
+\cs_new:Npn \endrefsection {
+ \int_compare:nNnT { \g__csl_ref_section_index_int } > { 0 }
+ {
+ \int_gzero:N \g__csl_ref_section_index_int
+ \sys_if_engine_luatex:T
+ { \lua_now:n { csl_citation_manager:end_ref_section() } }
+ }
+}
+
+
% ### Bibliography Headings and Environments
\prop_new:N \l__csl_bib_env_begin_prop
@@ -381,7 +476,7 @@
{
\cs_if_exist:cF { __csl_head_ #1 :n }
{
- \msg_error:nnn { citation-style-language } { bib-heading-undefined }
+ \msg_error:nnn { citation-style-language } { undefined-bib-heading }
{#1}
}
\tl_if_blank:nTF {#2}
@@ -393,7 +488,7 @@
{ \exp_args:NV \label \l__csl_bib_head_label_tl }
}
-\msg_new:nnn { citation-style-language } { bib-heading-undefined }
+\msg_new:nnn { citation-style-language } { undefined-bib-heading }
{ Bibliography~ heading~ '#1'~ undefined. }
\keys_define:nn { csl / bib-heading }
@@ -426,6 +521,10 @@
\expandafter \newcommand \csname __csl_head_ #1 :n \endcsname [1] [ {#2} ]
}
+
+\cs_if_exist:NF \refname
+ { \cs_set:Npn \refname { References } }
+
\cs_if_exist:NTF \chapter
{
% `book` or `report`
@@ -437,19 +536,19 @@
\defbibheading { biblist } [ \biblistname ]
{
\chapter* {#1}
- \@mkboth { \MakeMarkcase {#1} } { \MakeMarkcase {#1} }
+ \@mkboth { \MakeUppercase {#1} } { \MakeUppercase {#1} }
}
\defbibheading { bibintoc } [ \bibname ]
{
\chapter* {#1}
\addcontentsline { toc } { chapter } {#1}
- \@mkboth { \MakeMarkcase {#1} } { \MakeMarkcase {#1} }
+ \@mkboth { \MakeUppercase {#1} } { \MakeUppercase {#1} }
}
\defbibheading { biblistintoc } [ \biblistname ]
{
\chapter* {#1}
\addcontentsline { toc } { chapter } {#1}
- \@mkboth { \MakeMarkcase {#1} } { \MakeMarkcase {#1} }
+ \@mkboth { \MakeUppercase {#1} } { \MakeUppercase {#1} }
}
\defbibheading { bibnumbered } [ \bibname ]
{ \chapter {#1} }
@@ -459,7 +558,7 @@
{
\section* {#1}
\if@twoside
- \markright { \MakeMarkcase {#1} }
+ \markright { \MakeUppercase {#1} }
\fi
}
\defbibheading { subbibintoc } [ \refname ]
@@ -467,7 +566,7 @@
\section* {#1}
\addcontentsline { toc } { section } {#1}
\if@twoside
- \markright { \MakeMarkcase {#1} }
+ \markright { \MakeUppercase {#1} }
\fi
}
\defbibheading { subbibnumbered } [ \refname ]
@@ -483,19 +582,19 @@
\defbibheading { biblist } [ \biblistname ]
{
\section* {#1}
- \@mkboth { \MakeMarkcase {#1} } { \MakeMarkcase {#1} }
+ \@mkboth { \MakeUppercase {#1} } { \MakeUppercase {#1} }
}
\defbibheading { bibintoc } [ \refname ]
{
\section* {#1}
\addcontentsline { toc } { section } {#1}
- \@mkboth { \MakeMarkcase {#1} } { \MakeMarkcase {#1} }
+ \@mkboth { \MakeUppercase {#1} } { \MakeUppercase {#1} }
}
\defbibheading { biblistintoc } [ \biblistname ]
{
\section* {#1}
\addcontentsline { toc } { section } {#1}
- \@mkboth { \MakeMarkcase {#1} } { \MakeMarkcase {#1} }
+ \@mkboth { \MakeUppercase {#1} } { \MakeUppercase {#1} }
}
\defbibheading { bibnumbered } [ \refname ]
{ \section {#1} }
@@ -531,7 +630,7 @@
{
\prop_get:NnNF \l__csl_bib_notes_prop {#1} \l_tmpa_tl
{
- \msg_error:nnn { citation-style-language } { bib-note-undefined }
+ \msg_error:nnn { citation-style-language } { undefined-bib-note }
{#1}
}
\tl_if_empty:NF \l_tmp_tl
@@ -547,7 +646,7 @@
}
}
-\msg_new:nnn { citation-style-language } { bib-note-undefined }
+\msg_new:nnn { citation-style-language } { undefined-bib-note }
{ Bibliography~ note~ '#1'~ undefined. }
@@ -593,7 +692,7 @@
\tl_put_right:Nn \l_tmpa_tl { ##1 = {##2} }
}
\sys_if_engine_luatex:T
- { \lua_now:e { csl.set_categories("\l_tmpa_tl") } }
+ { \lua_now:e { csl_citation_manager:set_categories("\l_tmpa_tl") } }
{
\tl_put_left:Nx \l_tmpa_tl { categories = \c_left_brace_str }
\tl_put_right:NV \l_tmpa_tl \c_right_brace_str
diff --git a/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-cite.sty b/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-cite.sty
index e7683b5a900..38128a99d82 100644
--- a/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-cite.sty
+++ b/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-cite.sty
@@ -7,13 +7,33 @@
% ## Citation commands
\DeclareDocumentCommand \cite { s o o m }
- { \__csl_cite:nnnn {#1} {#2} {#3} {#4} }
+ {
+ \IfBooleanTF {#1}
+ {
+ \bool_if:NTF \l__csl_note_bool
+ { \__csl_cite_in_text:nnnn {#2} {#3} {#4} { } }
+ { \__csl_cite_in_text:nnnn {#2} {#3} {#4} { suppress-author } }
+ }
+ {
+ \bool_if:NTF \l__csl_note_bool
+ { \__csl_cite_note:nnnn {#2} {#3} {#4} { } }
+ { \__csl_cite_in_text:nnnn {#2} {#3} {#4} { } }
+ }
+ }
\NewDocumentCommand \parencite { s o o m }
- { \__csl_cite:nnnn {#1} {#2} {#3} {#4} }
+ {
+ \IfBooleanTF {#1}
+ {
+ \bool_if:NTF \l__csl_note_bool
+ { \__csl_cite_in_text:nnnn {#2} {#3} {#4} { } }
+ { \__csl_cite_in_text:nnnn {#2} {#3} {#4} { suppress-author } }
+ }
+ { \__csl_cite_parens:nnn {#2} {#3} {#4} }
+ }
\NewDocumentCommand \citep { o o m }
- { \__csl_cite:nnnn { \BooleanFalse } {#1} {#2} {#3} }
+ { \__csl_cite_parens:nnn {#1} {#2} {#3} }
\NewDocumentCommand \textcite { o o m }
{ \__csl_text_cite:nnn {#1} {#2} {#3} }
@@ -22,7 +42,7 @@
{ \__csl_text_cite:nnn {#1} {#2} {#3} }
\NewDocumentCommand \footcite { o o m }
- { \__csl_cite:nnnn { \BooleanFalse } {#1} {#2} {#3} }
+ { \__csl_cite_note:nnnn {#1} {#2} {#3} { } }
% \cites[⟨prenote⟩][⟨postnote⟩]{⟨key⟩}...[⟨prenote⟩][⟨postnote⟩]{⟨key⟩}
@@ -30,23 +50,16 @@
{ \__csl_cites: }
\NewDocumentCommand \citeauthor { o o m }
- { \__csl_cite_author:nnn {#1} {#2} {#3} }
+ { \__csl_cite_in_text:nnnn {#1} {#2} {#3} { author-only } }
% TODO: \citeyear
-% ATM the starred form is the same as non-star form.
-\NewDocumentCommand \citeyearpar { s o o m }
- {
- \IfBooleanT {#1}
- {
- \bool_if:NTF \l__csl_note_bool
- { \msg_error:nn { citation-style-language } { starred-cite-in-note-style } }
- }
- \__csl_cite_suppress_author:nnn {#2} {#3} {#4}
- }
+% Suppresses the author (from `natbib`).
+\NewDocumentCommand \citeyearpar { o o m }
+ { \__csl_cite_in_text:nnnn {#1} {#2} {#3} { suppress-author } }
\NewDocumentCommand \fullcite { o o m }
- { \__csl_full_cite:nnn {#1} {#2} {#3} }
+ { \__csl_cite_in_text:nnnn {#1} {#2} {#3} { full-cite } }
\seq_new:N \l__csl_cite_keys_seq
@@ -54,36 +67,77 @@
\prop_new:N \l__csl_citation_properties_prop
\prop_new:N \l__csl_citation_info_prop
-% \__csl_cite:nnnn #1#2#3#
-% #1: boolean of star form
-% #2: prenote
-% #3: postnote
-% #4: cite keys
-\cs_new:Npn \__csl_cite:nnnn #1#2#3#4
+% #1: prenote
+% #2: postnote
+% #3: cite keys
+% #4: mode
+\cs_new:Npn \__csl_cite_in_text:nnnn #1#2#3#4
{
- \tl_if_blank:nTF {#4}
- { \__csl_print_undefined_citation:n {#4} }
+ \tl_if_blank:nTF {#3}
+ { \__csl_print_undefined_citation:n {#3} }
{
- \seq_clear:N \l__csl_cite_keys_seq
- \seq_clear:N \l__csl_citation_items_seq
- \prop_clear:N \l__csl_citation_properties_prop
- \__csl_process_cite_input:nnn {#2} {#3} {#4}
- \__csl_process_citation_info:NN \l__csl_cite_keys_seq \l__csl_citation_items_seq
- \IfBooleanT {#1}
+ \__csl_cite_init:
+ \__csl_collect_citation_items:nnn {#1} {#2} {#3}
+ \__csl_process_citation_info:
+ \prop_put:Nnn \l__csl_citation_properties_prop { noteIndex } { 0 }
+ \tl_if_empty:nF {#4}
{
- \bool_if:NTF \l__csl_note_bool
- { \msg_warning:nn { citation-style-language } { starred-cite-in-note-style } }
+ \prop_put:Nnn \l__csl_citation_properties_prop { mode } {#4}
+ }
+ \__csl_make_citation:
+ }
+ }
+
+% #1: prenote
+% #2: postnote
+% #3: cite keys
+% #4: mode
+\cs_new:Npn \__csl_cite_note:nnnn #1#2#3#4
+ {
+ \bool_if:NTF \l__csl_in_note_bool
+ {
+ \tl_if_blank:nTF {#3}
+ { \__csl_print_undefined_citation:n {#3} }
+ {
+ \__csl_cite_init:
+ \__csl_collect_citation_items:nnn {#1} {#2} {#3}
+ \__csl_process_citation_info:
+ \tl_if_empty:nF {#4}
+ {
+ \prop_put:Nnn \l__csl_citation_properties_prop { mode } {#4}
+ }
+ \__csl_make_citation:
+ }
+ }
+ {
+ \footnote
+ {
+ \tl_if_blank:nTF {#3}
+ { \__csl_print_undefined_citation:n {#3} }
{
- \prop_put:Nnn \l__csl_citation_properties_prop { noteIndex } { 0 }
- \prop_put:Nnn \l__csl_citation_properties_prop { mode } { suppress-author }
+ \__csl_cite_init:
+ \__csl_collect_citation_items:nnn {#1} {#2} {#3}
+ \__csl_process_citation_info:
+ \tl_if_empty:nF {#4}
+ {
+ \prop_put:Nnn \l__csl_citation_properties_prop { mode } {#4}
+ }
+ \__csl_make_citation:
}
}
- \__csl_make_citation:N \l__csl_citation_info_prop
}
}
-\msg_new:nnn { citation-style-language } { starred-cite-in-note-style }
- { Starred~ variant~ of~ cite~ command~ does~ not~ work~ with~ note~ styles. }
+
+% #1: prenote
+% #2: postnote
+% #3: cite keys
+\cs_new:Npn \__csl_cite_parens:nnn #1#2#3
+ {
+ \bool_if:NTF \l__csl_note_bool
+ { ( \__csl_cite_in_text:nnnn {#1} {#2} {#3} { } ) }
+ { \__csl_cite_in_text:nnnn {#1} {#2} {#3} { } }
+ }
\cs_new:Npn \__csl_text_cite:nnn #1#2#3
@@ -91,29 +145,19 @@
\bool_if:NTF \l__csl_note_bool
{
% In note styles, the authors are printed in-text followed by a note.
- \bool_set_false:N \l__csl_note_bool
- \__csl_cite_author:nnn {#1} {#2} {#3}
- \bool_set_true:N \l__csl_note_bool
- \__csl_cite:nnnn { \BooleanFalse } {#1} {#2} {#3}
- }
- {
- \seq_clear:N \l__csl_cite_keys_seq
- \seq_clear:N \l__csl_citation_items_seq
- \prop_clear:N \l__csl_citation_properties_prop
- \__csl_process_cite_input:nnn {#1} {#2} {#3}
- \__csl_process_citation_info:NN \l__csl_cite_keys_seq \l__csl_citation_items_seq
- \prop_put:Nnn \l__csl_citation_properties_prop { noteIndex } { 0 }
- \prop_put:Nnn \l__csl_citation_properties_prop { mode } { composite }
- \__csl_make_citation:N \l__csl_citation_info_prop
+ \__csl_cite_in_text:nnnn {#1} {#2} {#3} { author-only }
+ \__csl_cite_note:nnnn {#1} {#2} {#3} { }
}
+ { \__csl_cite_in_text:nnnn {#1} {#2} {#3} { composite } }
}
+\bool_new:N \l__csl_multi_cite_bool
+
\cs_new:Npn \__csl_cites:
{
- \seq_clear:N \l__csl_cite_keys_seq
- \seq_clear:N \l__csl_citation_items_seq
- \prop_clear:N \l__csl_citation_properties_prop
+ \__csl_cite_init:
+ \bool_set_true:N \l__csl_multi_cite_bool
\__csl_next_cites:nnn
}
@@ -121,55 +165,35 @@
{
\tl_if_novalue:nTF {#3}
{
- \__csl_process_citation_info:NN \l__csl_cite_keys_seq \l__csl_citation_items_seq
- \__csl_make_citation:N \l__csl_citation_info_prop
+ \bool_if:NTF \l__csl_note_bool
+ {
+ \footnote
+ {
+ \__csl_process_citation_info:
+ \__csl_make_citation:
+ }
+ }
+ {
+ \__csl_process_citation_info:
+ \__csl_make_citation:
+ }
}
{
- \__csl_process_cite_input:nnn {#1} {#2} {#3}
+ \__csl_collect_citation_items:nnn {#1} {#2} {#3}
\__csl_next_cites:nnn
}
}
-\cs_new:Npn \__csl_cite_author:nnn #1#2#3
- {
- \seq_clear:N \l__csl_cite_keys_seq
- \seq_clear:N \l__csl_citation_items_seq
- \prop_clear:N \l__csl_citation_properties_prop
- \__csl_process_cite_input:nnn {#1} {#2} {#3}
- \__csl_process_citation_info:NN \l__csl_cite_keys_seq \l__csl_citation_items_seq
- \prop_put:Nnn \l__csl_citation_properties_prop { noteIndex } { 0 }
- \prop_put:Nnn \l__csl_citation_properties_prop { mode } { author-only }
- \bool_set_false:N \l__csl_note_bool
- \__csl_make_citation:N \l__csl_citation_info_prop
- }
-
-
-\cs_new:Npn \__csl_cite_suppress_author:nnn #1#2#3
- {
- \seq_clear:N \l__csl_cite_keys_seq
- \seq_clear:N \l__csl_citation_items_seq
- \prop_clear:N \l__csl_citation_properties_prop
- \__csl_process_cite_input:nnn {#1} {#2} {#3}
- \__csl_process_citation_info:NN \l__csl_cite_keys_seq \l__csl_citation_items_seq
- \prop_put:Nnn \l__csl_citation_properties_prop { noteIndex } { 0 }
- \prop_put:Nnn \l__csl_citation_properties_prop { mode } { suppress-author }
- \bool_set_false:N \l__csl_note_bool
- \__csl_make_citation:N \l__csl_citation_info_prop
- }
-
-
-\cs_new:Npn \__csl_full_cite:nnn #1#2#3
+\cs_new:Npn \__csl_cite_init:
{
+ \bool_set_false:N \l__csl_multi_cite_bool
+ \prop_clear:N \l__csl_citation_info_prop
\seq_clear:N \l__csl_cite_keys_seq
\seq_clear:N \l__csl_citation_items_seq
\prop_clear:N \l__csl_citation_properties_prop
- \__csl_process_cite_input:nnn {#1} {#2} {#3}
- \__csl_process_citation_info:NN \l__csl_cite_keys_seq \l__csl_citation_items_seq
- \prop_put:Nnn \l__csl_citation_properties_prop { noteIndex } { 0 }
- \prop_put:Nnn \l__csl_citation_properties_prop { mode } { full-cite }
- \bool_set_false:N \l__csl_note_bool
- \__csl_make_citation:N \l__csl_citation_info_prop
+ \tl_clear:N \l__csl_cite_prefix_tl
+ \tl_clear:N \l__csl_cite_suffix_tl
}
@@ -177,7 +201,7 @@
% \l__csl_citation_items_seq
% #1, #2: prenote/postnote
% #3: keys
-\cs_new:Npn \__csl_process_cite_input:nnn #1#2#3
+\cs_new:Npn \__csl_collect_citation_items:nnn #1#2#3
{
\tl_if_novalue:nTF {#2}
{
@@ -205,12 +229,13 @@
\prop_new:N \l__csl_cite_item_prop
-\tl_new:N \l__csl_prefix_tl
-\tl_new:N \l__csl_suffix_tl
+% Collect citation items into \l__csl_citation_items_seq
+% Append "{id={ITEM},locator={42},label={page}}" into \l__csl_citation_items_seq
+% #1: prenote
+% #2: postnote
+% #3: key
\cs_new:Npn \__csl_process_cite_item:nnn #1#2#3
- % #1: prenote, #2: postnote, #3: key
- % Save "{id={ITEM},locator={42},label={page}}" into \l__csl_citation_items_seq
{
\prop_clear:N \l__csl_cite_item_prop
\prop_put:Nnn \l__csl_cite_item_prop { id } {#3}
@@ -218,11 +243,12 @@
% { \prop_put:Nnn \l__csl_cite_item_prop { suppress-author } { true } }
% \bool_if:T \l__csl_author_only_bool
% { \prop_put:Nnn \l__csl_cite_item_prop { author-only } { true } }
+ \tl_clear:N \l__csl_cite_prefix_tl
+ \tl_clear:N \l__csl_cite_suffix_tl
\tl_if_empty:nF {#1}
{
- \tl_set:Nn \l__csl_prefix_tl {#1}
- \tl_put_right:NV \l__csl_prefix_tl \l__csl_prefix_separator_tl
- \prop_put:NnV \l__csl_cite_item_prop { prefix } \l__csl_prefix_tl
+ \tl_set:Nn \l__csl_cite_prefix_tl {#1}
+ \tl_put_right:NV \l__csl_cite_prefix_tl \l__csl_prefix_separator_tl
}
\tl_if_empty:nF {#2}
{
@@ -232,12 +258,26 @@
\regex_match:nnTF { \d+ } {#2}
{ \__csl_set_locator:nn { page } {#2} }
{
- \tl_set:Nn \l__csl_suffix_tl {#2}
- \tl_put_left:NV \l__csl_suffix_tl \l__csl_suffix_separator_tl
- \prop_put:NnV \l__csl_cite_item_prop { suffix } \l__csl_suffix_tl
+ \tl_set:Nn \l__csl_cite_suffix_tl {#2}
+ \tl_put_left:NV \l__csl_cite_suffix_tl \l__csl_suffix_separator_tl
}
}
}
+ % The affixes are treated as cite item affixes in a multi-cite command
+ % (like `\cites`). Otherwise they are citation affixes.
+ \bool_if:NTF \l__csl_multi_cite_bool
+ {
+ \tl_if_empty:NF \l__csl_cite_prefix_tl
+ { \prop_put:NnV \l__csl_cite_item_prop { prefix } \l__csl_cite_prefix_tl }
+ \tl_if_empty:NF \l__csl_cite_suffix_tl
+ { \prop_put:NnV \l__csl_cite_item_prop { suffix } \l__csl_cite_suffix_tl }
+ }
+ {
+ \tl_if_empty:NF \l__csl_cite_prefix_tl
+ { \prop_put:NnV \l__csl_citation_properties_prop { prefix } \l__csl_cite_prefix_tl }
+ \tl_if_empty:NF \l__csl_cite_suffix_tl
+ { \prop_put:NnV \l__csl_citation_properties_prop { suffix } \l__csl_cite_suffix_tl }
+ }
\__csl_serialize_prop:NN \l__csl_cite_item_prop \l_tmpa_tl
\tl_put_left:NV \l_tmpa_tl { \c_left_brace_str }
\tl_put_right:NV \l_tmpa_tl { \c_right_brace_str }
@@ -246,14 +286,24 @@
\cs_new:Npn \__csl_set_locator:nn #1#2
{
- \prop_put:Nnn \l__csl_cite_item_prop { label } {#1}
- \prop_put:Nnn \l__csl_cite_item_prop { locator } {#2}
+ \tl_if_empty:nTF {#2}
+ { \msg_warning:nnn { citation-style-language } { empty-locator } {#1} }
+ {
+ \prop_put:Nnn \l__csl_cite_item_prop { label } {#1}
+ \prop_put:Nnn \l__csl_cite_item_prop { locator } {#2}
+ }
}
+\msg_new:nnn { citation-style-language } { empty-locator }
+ { Empty~ '#1'~ locator. }
+
+\tl_new:N \l__csl_cite_prefix_tl
+\tl_new:N \l__csl_cite_suffix_tl
+
\keys_define:nn { csl / cite-item }
{
- prefix .prop_put:N = \l__csl_cite_item_prop,
- suffix .prop_put:N = \l__csl_cite_item_prop,
+ prefix .tl_set:N = \l__csl_cite_prefix_tl,
+ suffix .tl_set:N = \l__csl_cite_suffix_tl,
locator .prop_put:N = \l__csl_cite_item_prop,
label .prop_put:N = \l__csl_cite_item_prop,
suppress-author .prop_put:N = \l__csl_cite_item_prop,
@@ -301,17 +351,24 @@
% Load the cite keys and prepare:
% - \l__csl_citation_id_tl
% - \l__csl_citation_properties_prop
-%
-% #1: \l__csl_cite_keys_seq
-% #2: \l__csl_citation_items_seq
-\cs_new:Npn \__csl_process_citation_info:NN #1#2
+\cs_new:Npn \__csl_process_citation_info:
{
- \__csl_process_citation_id:NN \l__csl_citation_id_tl #1
- \__csl_get_note_index:N \l__csl_note_index_tl
+ \__csl_process_citation_id:
+ \__csl_get_note_index:
\prop_put:NnV \l__csl_citation_properties_prop { noteIndex } \l__csl_note_index_tl
+ \__csl_make_chapter_property:
\__csl_add_back_ref_info:
}
+\cs_new:Npn \__csl_make_chapter_property:
+ {
+ \int_if_exist:NT \c@chapter
+ {
+ \prop_put:Nnx \l__csl_citation_properties_prop { chapterIndex }
+ { \int_use:N \c@chapter }
+ }
+ }
+
\tl_new:N \l__csl_back_ref_tl
\prop_new:N \g__csl_back_ref_info_prop
@@ -361,8 +418,7 @@
\tl_new:N \l__csl_citation_properties_tl
% Write citation info to aux and print the citation contents.
-% #1: \l__csl_citation_info_prop
-\cs_new:Npn \__csl_make_citation:N #1
+\cs_new:Npn \__csl_make_citation:
{
\prop_clear:N \l__csl_citation_info_prop
% citationID
@@ -376,13 +432,13 @@
\__csl_serialize_prop:NN \l__csl_citation_info_prop \l__csl_citation_info_tl
% Write to .aux file
% \tl_show:N \l__csl_citation_info_tl
- \exp_args:NV \__csl_write_aux_citation:n \l__csl_citation_info_tl
+ \exp_args:NVV \__csl_write_aux_citation:nn \g__csl_ref_section_index_int \l__csl_citation_info_tl
\bool_if:NT \l__csl_regression_test_bool
{ \tl_show:N \l__csl_citation_info_tl }
% Print the citation string
\prop_get:NVNTF \g__csl_citations_prop \l__csl_citation_id_tl
\l__csl_citation_tl
- { \__csl_print_citation:N \l__csl_citation_tl }
+ { \__csl_print_citation: }
{
\bool_if:NTF \l__csl_engine_initialized_bool
{
@@ -393,7 +449,7 @@
\char_set_catcode_other:N \%
\char_set_catcode_other:N \#
\exp_args:NV \__csl_cite_aux:n \l__csl_citation_info_tl
- \__csl_print_citation:N \l__csl_citation_tl
+ \__csl_print_citation:
\group_end:
}
{
@@ -404,7 +460,7 @@
}
\cs_new:Npn \__csl_cite_aux:n #1
- { \lua_now:e { csl.cite("\lua_escape:n {#1}") } }
+ { \lua_now:e { csl_citation_manager:cite("\lua_escape:n {#1}") } }
% #1: seq
% #2: tl
@@ -437,13 +493,12 @@
\int_new:N \l__csl_citation_count_int
\prop_new:N \g__csl_citations_count_prop
-\cs_new:Npn \__csl_process_citation_id:NN #1#2
- % #1: \l__csl_citation_id_tl
- % #2: \l__csl_cite_keys_seq
- % Set \l__csl_citation_id_tl = "ITEM-1,ITEM-2@4".
+% Load cite keys from `\l__csl_cite_keys_seq` and make `\l__csl_citation_id_tl`.
+% Set \l__csl_citation_id_tl = "ITEM-1,ITEM-2@4".
+\cs_new:Npn \__csl_process_citation_id:
{
\tl_set:Nx \l__csl_cite_keys_tl
- { \seq_use:Nn #2 { , } }
+ { \seq_use:Nn \l__csl_cite_keys_seq { , } }
% \prop_show:N \g__csl_citations_count_prop
% \tl_show:N \l__csl_cite_keys_tl
\prop_get:NVNTF \g__csl_citations_count_prop \l__csl_cite_keys_tl
@@ -455,7 +510,7 @@
{ \int_set_eq:NN \l__csl_citation_count_int \c_one_int }
\prop_gput:NVV \g__csl_citations_count_prop \l__csl_cite_keys_tl
\l__csl_citation_count_int
- \tl_set:Nx #1
+ \tl_set:Nx \l__csl_citation_id_tl
{ \l__csl_cite_keys_tl @ \int_use:N \l__csl_citation_count_int }
}
@@ -465,15 +520,11 @@
% Save the note number to \l__csl_note_index_tl
% TODO: multiple citations in a note
-\cs_new:Npn \__csl_get_note_index:N #1
+\cs_new:Npn \__csl_get_note_index:
% #1: \l__csl_note_index_tl
{
\bool_if:NTF \l__csl_note_bool
- {
- \int_set_eq:Nc \l_tmpa_int { c@ \@mpfn }
- \int_incr:N \l_tmpa_int
- \tl_set:Nx #1 { \int_use:N \l_tmpa_int }
- }
+ { \tl_set:Nx \l__csl_note_index_tl { \int_use:c { c@ \@mpfn } } }
{
\tl_if_empty:NTF \l__csl_class_tl
{
@@ -481,18 +532,19 @@
\int_set_eq:Nc \l_tmpa_int { c@ \@mpfn }
\int_gincr:N \g__csl_pseudo_note_index_int
\int_add:Nn \l_tmpa_int { \g__csl_pseudo_note_index_int }
- \tl_set:Nx #1 { \int_use:N \l_tmpa_int }
+ \tl_set:Nx \l__csl_note_index_tl { \int_use:N \l_tmpa_int }
}
- { \tl_set:Nx #1 { 0 } }
+ { \tl_set:Nn \l__csl_note_index_tl { 0 } }
}
}
-\cs_new:Npn \__csl_write_aux_citation:n #1
- % #1: citation info "{<citationID>}{{id=ITEM-1},{id=ITEM-2}}{<noteIndex>}"
+\cs_new:Npn \__csl_write_aux_citation:nn #1#2
+ % #1: refsection index (already converted to tl)
+ % #2: citation info "{<citationID>}{{id=ITEM-1},{id=ITEM-2}}{<noteIndex>}"
{
\if@filesw
- \iow_now:Nn \@auxout { \csl@aux@cite {#1} }
+ \iow_now:Nn \@auxout { \csl@aux@cite {#1} {#2} }
\fi
}
@@ -507,17 +559,11 @@
% #1: \l__csl_citation_tl
-\cs_new:Npn \__csl_print_citation:N #1
+\cs_new:Npn \__csl_print_citation:
{
\bool_if:NT \l__csl_regression_test_bool
- { \tl_show:N #1 }
- \bool_if:NTF \l__csl_note_bool
- {
- \bool_if:NTF \l__csl_in_note_bool
- {#1}
- { \footnote {#1} }
- }
- {#1}
+ { \tl_show:N \l__csl_citation_tl }
+ \l__csl_citation_tl
}
@@ -539,9 +585,7 @@
\bool_if:NT \l__csl_regression_test_bool
{ \tl_show:N \l__csl_citation_tl }
\group_begin:
- \bool_if:NTF \l__csl_note_bool
- { \footnote { \reset@font \l__csl_citation_tl } }
- { \reset@font \l__csl_citation_tl }
+ \reset@font \l__csl_citation_tl
\group_end:
}
@@ -550,8 +594,8 @@
\tl_set:Nn \l__csl_citation_tl { [ \textbf {#1} ] }
}
-% \msg_new:nnn { citation-style-language } { citation / undefined }
-% { Citation~ `#1'~ on~ page~ \thepage \space undefined~ \msg_line_context: . }
+% \msg_new:nnn { citation-style-language } { undefined-citation }
+% { Citation~ '#1'~ on~ page~ \thepage \space undefined~ \msg_line_context: . }
\cs_new:Npn \__csl_warn_citation_undefined:n #1
{
@@ -567,36 +611,39 @@
\cs_new:Npn \__csl_no_cite:n #1
{
- \seq_clear:N \l__csl_cite_keys_seq
- \seq_clear:N \l__csl_citation_items_seq
- \__csl_process_cite_input:nnn { } { } {#1}
+ \__csl_cite_init:
+ \__csl_collect_citation_items:nnn { } { } {#1}
\tl_set:Nx \l__csl_cite_items_tl
{ \seq_use:Nn \l__csl_citation_items_seq { , } }
+ \prop_clear:N \l__csl_citation_properties_prop
+ \prop_put:Nnn \l__csl_citation_properties_prop { noteIndex } { 0 }
+ \__csl_make_chapter_property:
+ \__csl_serialize_prop:NN \l__csl_citation_properties_prop \l__csl_citation_properties_tl
\tl_set:Nx \l__csl_citation_info_tl
{
citationID = { @nocite } ,
- citationItems = { \l__csl_cite_items_tl } ,
- properties = { noteIndex = { 0 } }
+ citationItems = { \tl_use:N \l__csl_cite_items_tl } ,
+ properties = { \tl_use:N \l__csl_citation_properties_tl }
}
\bool_if:NT \l__csl_regression_test_bool
{ \tl_show:N \l__csl_citation_info_tl }
- \exp_args:NV \__csl_no_cite_write_aux:n \l__csl_citation_info_tl
+ \exp_args:NVV \__csl_no_cite_write_aux:nn \g__csl_ref_section_index_int \l__csl_citation_info_tl
\sys_if_engine_luatex:T
- { \lua_now:n { csl.nocite("#1") } }
+ { \lua_now:n { csl_citation_manager:nocite("#1") } }
\tl_clear:N \l__csl_citation_tl
\bool_if:NT \l__csl_regression_test_bool
{ \tl_show:N \l__csl_citation_tl }
}
-\cs_new:Npn \__csl_no_cite_write_aux:n #1
+\cs_new:Npn \__csl_no_cite_write_aux:nn #1#2
{
\__csl_if_preamble:TF
{
\hook_gput_code:nnn { begindocument } { . }
- { \exp_args:Nx \__csl_write_aux_citation:n { #1 } }
+ { \__csl_write_aux_citation:nn {#1} {#2} }
}
- { \exp_args:Nx \__csl_write_aux_citation:n { #1 } }
+ { \__csl_write_aux_citation:nn {#1} {#2} }
}
@@ -612,10 +659,10 @@
% Used in aux files to register cite items.
% #1: a citation object
-\cs_set:Npn \csl@aux@cite #1
+\cs_set:Npn \csl@aux@cite #1#2
{
\sys_if_engine_luatex:T
- { \lua_now:e { csl.register_citation_info("\lua_escape:n {#1}") } }
+ { \lua_now:e { csl_citation_manager:register_citation_info(#1, "\lua_escape:n {#2}") } }
}
@@ -627,3 +674,10 @@
% #1: cite id
% #2: cite contents
\cs_new:Npn \cslcite #1#2 {#2}
+
+% This command is for use with hyperref.
+% #1: cite id
+\cs_new:Npn \cslundefinedcite #1 {
+ \textbf {#1}
+ \__csl_warn_citation_undefined:n {#1}
+}
diff --git a/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-compatible.sty b/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-compatible.sty
index ca44d0e4579..8de98b6a9c6 100644
--- a/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-compatible.sty
+++ b/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-compatible.sty
@@ -89,8 +89,8 @@
{
\BlockquoteDisable
{
- \cs_set_eq:NN \__csl_process_citation_info:NN \use_none:nn
- \cs_set_eq:NN \__csl_make_citation:N \use_none:n
+ \cs_set_eq:NN \__csl_process_citation_info: \relax
+ \cs_set_eq:NN \__csl_make_citation: \relax
}
}
@@ -98,25 +98,33 @@
% ### `hyperref`
\cs_set:Npn \__csl_hyperref_cite_item:nn #1#2
- { \hyper@@link [ cite ] { } { cite. #1 \@extra@b@citeb } { #2 } }
+ {
+ \hyper@@link [ cite ] { }
+ { cite \int_use:N \g__csl_ref_section_index_int . #1 \@extra@b@citeb } { #2 }
+ }
\cs_new:Npn \__csl_hyperref_lbibitem:nn [#1]#2
{
\clist_gput_right:Nn \g__csl_bib_items_clist {#2}
\@skiphyperreftrue
- \H@item[%
- \ifx\Hy@raisedlink\@empty
- \hyper@anchorstart{cite.#2\@extra@b@citeb}%
- \@BIBLABEL{#1}%
- \hyper@anchorend
- \else
- \Hy@raisedlink{%
- \hyper@anchorstart{cite.#2\@extra@b@citeb}\hyper@anchorend
- }%
- \@BIBLABEL{#1}%
- \fi
- \hfill
- ]%
+ \H@item
+ [
+ \ifx \Hy@raisedlink \@empty
+ \hyper@anchorstart
+ { cite \int_use:N \g__csl_ref_section_index_int . #2 \@extra@b@citeb }
+ \@BIBLABEL {#1}
+ \hyper@anchorend
+ \else
+ \Hy@raisedlink
+ {
+ \hyper@anchorstart
+ { cite \int_use:N \g__csl_ref_section_index_int . #2 \@extra@b@citeb }
+ \hyper@anchorend
+ }
+ \@BIBLABEL {#1}
+ \fi
+ \hfill
+ ]
\@skiphyperreffalse
\ignorespaces
}
@@ -128,7 +136,8 @@
\Hy@raisedlink
{
\hyper@anchorstart
- { cite. #1 \@extra@b@citeb } \relax
+ { cite \int_use:N \g__csl_ref_section_index_int . #1 \@extra@b@citeb }
+ \relax
\hyper@anchorend
}
\ignorespaces
@@ -153,3 +162,21 @@
\cs_gset_eq:NN \cslcite \__csl_hyperref_cite_item:nn
}
}
+
+
+% ### `perpage`
+
+\hook_gput_code:nnn { package / perpage / after } { . }
+ {
+ \hook_gput_code:nnn { begindocument } { . }
+ {
+ \cs_if_exist:cT { c@pchk@footnote }
+ {
+ \cs_set:Npn \__csl_make_chapter_property:
+ {
+ \prop_put:Nnx \l__csl_citation_properties_prop { chapterIndex }
+ { \int_use:N \c@page }
+ }
+ }
+ }
+ }
diff --git a/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-init.sty b/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-init.sty
index db83bced06c..9032b60fee8 100644
--- a/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-init.sty
+++ b/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language-init.sty
@@ -16,8 +16,9 @@
{ \__csl_initialize_lua_module: }
{
\__csl_load_bbl:
- \__csl_read_style_class:
+ \__csl_get_style_class:
}
+ \__csl_set_ref_section_level:
}
@@ -25,19 +26,20 @@
\cs_new:Npn \__csl_write_aux_info:
{
+ \tl_if_empty:NF \l__csl_style_tl
+ { \exp_args:NV \__csl_write_aux_bibstyle:n \l__csl_style_tl }
+ \tl_if_empty:NT \l__csl_style_tl
+ { \tl_set_eq:NN \l__csl_style_tl \g__csl_aux_bibstyle_tl }
\tl_if_empty:NT \l__csl_style_tl
- {
- \tl_set_eq:NN \l__csl_style_tl \g__csl_aux_bibstyle_tl
- \edef \csl@style { \g__csl_aux_bibstyle_tl }
- }
- \tl_if_empty:VTF \l__csl_style_tl
{
\msg_warning:nn { citation-style-language } { missing-style-name }
\tl_set:Nn \l__csl_style_tl { apa }
}
- { \exp_args:NV \__csl_write_aux_bibstyle:n \l__csl_style_tl }
- \clist_if_empty:NTF \l__csl_bib_resources_clist
+ \tl_set_eq:NN \csl@style \l__csl_style_tl
+ \clist_if_empty:NT \l__csl_bib_resources_clist
{ \clist_set_eq:NN \l__csl_bib_resources_clist \g__csl_aux_bib_files_clist }
+ \clist_if_empty:NTF \l__csl_bib_resources_clist
+ { \msg_warning:nn { citation-style-language } { empty-bib-resources } }
{
\exp_args:Nx \__csl_write_aux_bibdata:n
{ \clist_use:Nn \l__csl_bib_resources_clist { , } }
@@ -48,7 +50,11 @@
\cs_new:Npn \__csl_write_aux_bibstyle:n #1
{
\if@filesw
- \iow_now:Nx \@auxout { \token_to_str:N \csl@aux@style {#1} }
+ \iow_now:Nx \@auxout
+ {
+ \token_to_str:N \csl@aux@style
+ { \int_use:N \g__csl_ref_section_index_int } {#1}
+ }
\fi
}
@@ -56,42 +62,60 @@
{
\if@filesw
% Full expansion for files like \jobname.bib
- \iow_now:Nx \@auxout { \token_to_str:N \csl@aux@data {#1} }
+ \iow_now:Nx \@auxout
+ {
+ \token_to_str:N \csl@aux@data
+ { \int_use:N \g__csl_ref_section_index_int } {#1}
+ }
\fi
}
% In earlier time, \bibdata{xxx.json} was used but this causes latexmk unable
% to find xxx.json.bib and it refuses to run the $bibtex procedure.
% John Collins suggests using a different command than \bibdata.
-\cs_new:Npn \csl@aux@data #1
- { \clist_gput_right:Nn \g__csl_aux_bib_files_clist {#1} }
+\cs_new:Npn \csl@aux@data #1#2
+ {
+ \str_if_eq:nnT {#1} { 0 }
+ { \clist_gput_right:Nn \g__csl_aux_bib_files_clist {#2} }
+ }
\cs_new:Npn \__csl_initialize_lua_module:
{
- \clist_if_empty:NT \l__csl_bib_resources_clist
- { \msg_warning:nn { citation-style-language } { empty-bib-resources } }
+ \bool_if:NT \l__csl_regression_test_bool
+ {
+ \lua_now:n { csl_citation_manager.regression_test = true }
+ }
+ \tl_set:Nx \l_tmpa_tl { \clist_use:Nn \l__csl_bib_resources_clist { , } }
\lua_now:e
{
- csl.init(
+ csl_citation_manager:init(
"\l__csl_style_tl",
- "\l__csl_bib_resources_clist",
+ "\l_tmpa_tl",
"\l__csl_locale_tl"
)
}
-
-
- \str_if_eq:eeT { \lua_now:n { tex.print(csl.initialized) } } { true }
+ \str_if_eq:eeTF
+ {
+ \lua_now:n
+ {
+ tex.print(tostring(
+ csl_citation_manager.ref_section.initialized
+ ))
+ }
+ }
+ { true }
{ \bool_set_true:N \l__csl_engine_initialized_bool }
- \__csl_get_style_class:
+ { \bool_set_false:N \l__csl_engine_initialized_bool }
+ \__csl_get_style_class_luatex:
\@ifpackageloaded { hyperref }
- { \lua_now:n { csl.enable_linking() } }
+ { \lua_now:n { csl_citation_manager:enable_linking() } }
{ }
}
\msg_new:nnn { citation-style-language } { missing-style-name }
- { Missing~ style~ name.\\Will~ use~ default~ APA~ style. }
+ { Missing~ style~ name.~ Will~ use~ default~ APA~ style. }
\msg_new:nnn { citation-style-language } { empty-bib-resources }
{ Empty~ bibliographic~ resources.~ Use~ \token_to_str:N \addbibresource. }
@@ -101,13 +125,16 @@
% In-text (including numeric or author-date) or note style
% \bool_new:N \l__csl_note_style_bool
-\cs_new:Npn \__csl_get_style_class: {
+\cs_new:Npn \__csl_get_style_class_luatex: {
+ \bool_set_false:N \l__csl_note_bool
\bool_if:NT \l__csl_engine_initialized_bool
{
- \tl_set:Nx \l__csl_class_tl { \lua_now:n { csl.get_style_class() } }
+ \tl_set:Nx \l__csl_class_tl { \lua_now:n { tex.print(csl_citation_manager:get_style_class()) } }
\tl_if_eq:NnT \l__csl_class_tl { note }
{ \bool_set_true:N \l__csl_note_bool }
}
+ \int_compare:nNnT { \g__csl_ref_section_index_int } = { 0 }
+ { \bool_gset_eq:NN \g__csl_global_note_class_bool \l__csl_note_bool }
}
@@ -225,7 +252,7 @@
turkmen = tk-TM,
ukrainian = uk-UA,
urdu = ur-IN,
- UKenglish = en-UK,
+ UKenglish = en-GB,
uppersorbian = hsb-DE,
USenglish = en-US,
usorbian = hsb-DE,
@@ -266,14 +293,16 @@
\cs_new:Npn \__csl_write_aux_options:n #1
{
\if@filesw
- \iow_now:Nn \@auxout { \csl@aux@options {#1} }
+ \iow_now:Nx \@auxout
+ {
+ \token_to_str:N \csl@aux@options
+ { \int_use:N \g__csl_ref_section_index_int } {#1}
+ }
\fi
}
-\cs_new:Npn \csl@aux@options #1 { }
-
+\cs_new:Npn \csl@aux@options #1#2 { }
-\tl_new:N \g__csl_bibliography_setup_tl
% Load .bbl at the beginning of document to save one pass of latex.
% In this procedure, the \cslcitation command is processed and the contents
@@ -283,10 +312,6 @@
% The \@input@ prints "No file ....bbl" in the .log file from which
% the latexmk decides to run $bibtex or not.
\__csl_collect_bibliography:n { \@input@ { \jobname .bbl } }
- % Execute the \cslsetup part to set the style class.
- % \tl_show:N \g__csl_bibliography_setup_tl
- \tl_use:N \g__csl_bibliography_setup_tl
- % \bool_show:N \l__csl_note_bool
}
@@ -302,8 +327,6 @@
% URLs may contain "%" and "#" characters.
\char_set_catcode_other:N \%
\char_set_catcode_other:N \#
- \RenewDocumentCommand \cslsetup { m }
- { \tl_gset:Nn \g__csl_bibliography_setup_tl { \cslsetup { ##1 } } }
\RenewDocumentEnvironment { thebibliography } { m +b }
{
\tl_set:Nn \l__csl_bib_index_tl { 1 }
@@ -321,29 +344,121 @@
\group_end:
}
+% At the moment, the `\csloptions` only reads the style class from `.bbl`
+% generated by `citeproc-lua`.
+% #1: refsection index
+% #2: refsection options
+\NewDocumentCommand \csloptions { m m }
+ { \keys_set:nn { csl / options } { #2 } }
+
+% The class option is in the `<style>=<class>` form
+% (e.g. `\csloptions{class={apa=in-text}}`).
+\keys_define:nn { csl / options }
+ {
+ class .code:n = { \prop_gput_from_keyval:Nn \g__csl_style_class_prop {#1} },
+ }
+
+\prop_new:N \g__csl_style_class_prop
% The `\textcite` bahaves differently with note styles.
% Thus we read the style class from the `.csl` file with non-LuaTeX engines.
\ior_new:N \l__csl_style_ior
-\cs_new:Npn \__csl_read_style_class:
+\cs_new:Npn \__csl_get_style_class:
{
+ \tl_clear:N \l__csl_class_tl
\bool_set_false:N \l__csl_note_bool
+ \prop_get:NVNF \g__csl_style_class_prop \l__csl_style_tl \l__csl_class_tl
+ { \__csl_read_style_class: }
+ \tl_if_empty:NF \l__csl_class_tl
+ {
+ \str_case:VnTF \l__csl_class_tl
+ {
+ { note } { \bool_set_true:N \l__csl_note_bool }
+ { in-text } { \bool_set_false:N \l__csl_note_bool }
+ }
+ {
+ \int_compare:nNnT { \g__csl_ref_section_index_int } = { 0 }
+ {
+ \bool_gset_eq:NN \g__csl_global_note_class_bool \l__csl_note_bool
+ }
+ }
+ {
+ \msg_error:nnV { citation-style-language } { invalid-style-class }
+ \l__csl_class_tl
+ }
+ }
+ }
+
+\cs_new:Npn \__csl_read_style_class:
+ {
\tl_if_blank:VF \l__csl_style_tl
{
\exp_args:NNx \ior_open:Nn \l__csl_style_ior { \l__csl_style_tl .csl }
\ior_map_inline:Nn \l__csl_style_ior
{
% \tl_show:n {##1}
- \tl_if_in:nnT {##1} { class="note" }
+ \tl_if_in:nnTF {##1} { class="note" }
{
\tl_set:Nn \l__csl_class_tl { note }
\bool_set_true:N \l__csl_note_bool
+ \prop_gput:NVn \g__csl_style_class_prop \l__csl_style_tl { note }
\ior_map_break:
}
+ {
+ \tl_if_in:nnT {##1} { class="in-text" }
+ {
+ \tl_set:Nn \l__csl_class_tl { in-text }
+ \bool_set_false:N \l__csl_note_bool
+ \prop_gput:NVn \g__csl_style_class_prop \l__csl_style_tl { in-text }
+ \ior_map_break:
+ }
+ }
}
\ior_close:N \l__csl_style_ior
}
}
-% \msg_new:nnn { citation-style-language } { file / non-exist }
+\msg_new:nnn { citation-style-language } { invalid-style-class }
+ { Invalid~ style~ class~ '#1'. }
+
+% \msg_new:nnn { citation-style-language } { file-non-exist }
% { No~ file~ #1. }
+
+\cs_new:Npn \__csl_set_ref_section_level:
+ {
+ \str_case:Vn \l__csl_bib_ref_section_str
+ {
+ { none } { }
+ { part }
+ { \__csl_patch_ref_section:n { part } }
+ { chapter }
+ { \__csl_patch_ref_section:n { chapter } }
+ { chapter+ }
+ {
+ \__csl_patch_ref_section:n { part }
+ \__csl_patch_ref_section:n { chapter }
+ }
+ { section }
+ { \__csl_patch_ref_section:n { section } }
+ { section+ }
+ {
+ \__csl_patch_ref_section:n { part }
+ \__csl_patch_ref_section:n { chapter }
+ \__csl_patch_ref_section:n { section }
+ }
+ { subsection }
+ { \__csl_patch_ref_section:n { subsection } }
+ { subsection+ }
+ {
+ \__csl_patch_ref_section:n { part }
+ \__csl_patch_ref_section:n { chapter }
+ \__csl_patch_ref_section:n { section }
+ \__csl_patch_ref_section:n { subsection }
+ }
+ }
+ }
+
+\cs_new:Npn \__csl_patch_ref_section:n #1
+ {
+ \hook_gput_code:nnn { cmd / #1 / before } { . } { \newrefsection }
+ }
diff --git a/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language.sty b/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language.sty
index ebd497bcb71..33ce246978a 100644
--- a/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language.sty
+++ b/Master/texmf-dist/tex/latex/citation-style-language/citation-style-language.sty
@@ -9,16 +9,23 @@
\RequirePackage{expl3}
\RequirePackage{xparse}
-\ProvidesExplPackage {citation-style-language} {2024-06-09} {0.5.0}
+\ProvidesExplPackage {citation-style-language} {2024-09-15} {0.6.4}
{Citation Style Language for LaTeX}
\RequirePackage { l3keys2e }
\RequirePackage { url }
+\prop_gput:Nnn \g_msg_module_name_prop { citation-style-language } { CSL }
+\prop_gput:Nnn \g_msg_module_type_prop { citeproc } { Module }
+
+\msg_new:nnn { citeproc } { citeproc-error } {#1}
+\msg_new:nnn { citeproc } { citeproc-warning } {#1}
+
+
% Check incompatible packages
\msg_new:nnn { citation-style-language } { incompatible-package }
- { The~ `#1'~ package~ is~ incompatible~ with~ `citation-style-language'. }
+ { Package~ '#1'~ is~ incompatible~ with~ 'citation-style-language'. }
\clist_map_inline:nn
{
@@ -34,7 +41,13 @@
% Load Lua module in LuaTeX
\sys_if_engine_luatex:T
- { \lua_now:n { csl = require("citeproc-latex") } }
+ {
+ \lua_now:n
+ {
+ citeproc_manager = require("citeproc-manager")
+ csl_citation_manager = citeproc_manager.CslCitationManager:new()
+ }
+ }
% Global options
@@ -44,11 +57,15 @@
\bool_new:N \l__csl_regression_test_bool
+\tl_new:N \g__csl_global_style_tl
\tl_new:N \l__csl_style_tl
\newcommand \csl@style {} % For latex2e interface
\tl_new:N \l__csl_class_tl % TODO: This should be removed
+\bool_new:N \g__csl_global_note_class_bool
\bool_new:N \l__csl_note_bool
+\clist_new:N \g__csl_global_bib_resources_clist
\clist_new:N \l__csl_bib_resources_clist
+\tl_new:N \g__csl_global_locale_tl
\tl_new:N \l__csl_locale_tl
\bool_new:N \l__csl_back_ref_bool
\str_new:N \l__csl_back_ref_type_str
@@ -62,6 +79,7 @@
\tl_new:N \l__csl_bib_item_sep_tl
\tl_new:N \l__csl_bib_par_indent_tl
\tl_new:N \l__csl_bib_hang_tl
+\str_new:N \l__csl_bib_ref_section_str
\keys_define:nn { csl }
@@ -71,14 +89,19 @@
{
\tl_set:Nn \l__csl_style_tl {#1}
\renewcommand \csl@style {#1}
+ \tl_gset:Nn \g__csl_global_style_tl {#1}
} ,
- class .code:n =
+ class .code:n = {} , % Deprecated, should be removed in the next release.
+ bib-resource .code:n =
{
- \tl_set:Nn \l__csl_class_tl {#1}
- \tl_if_eq:NnT \l__csl_class_tl { note }
- { \bool_set_true:N \l__csl_note_bool }
+ \clist_set:Nn \l__csl_bib_resources_clist {#1}
+ \clist_gset_eq:NN \g__csl_global_bib_resources_clist \l__csl_bib_resources_clist
+ } ,
+ locale .code:n =
+ {
+ \tl_set:Nn \l__csl_locale_tl {#1}
+ \tl_gset:Nn \g__csl_global_locale {#1}
} ,
- locale .tl_set:N = \l__csl_locale_tl ,
backref .choices:nn =
{ true, page, section, false }
{ \exp_args:NV \__csl_set_back_ref:n \l_keys_choice_tl } ,
@@ -92,13 +115,10 @@
bib-item-sep .tl_set:N = \l__csl_bib_item_sep_tl ,
bib-par-indent .tl_set:N = \l__csl_bib_par_indent_tl ,
bib-hang .tl_set:N = \l__csl_bib_hang_tl ,
- % The following keys are for easier interaction between LaTeX and
- % citeproc-lua engine and they are not designed for end-users.
- undefined-cites .code:n =
- {
- \clist_map_inline:nn {#1}
- { \__csl_warn_citation_undefined:n {##1} }
- } ,
+ % ref section
+ ref-section .choices:nn =
+ { none, part, chapter, chapter+, section, section+, subsection, subsection+ }
+ { \str_set:NV \l__csl_bib_ref_section_str \l_keys_choice_tl } ,
}
\cs_new:Npn \__csl_set_back_ref:n #1
@@ -124,6 +144,7 @@
bib-entry-page-break = true ,
bib-par-indent = { \parindent } ,
bib-hang = { 1 em } ,
+ ref-section = none ,
}
@@ -138,8 +159,11 @@
}
\tl_new:N \g__csl_aux_bibstyle_tl
-\cs_set:Npn \csl@aux@style #1
- { \tl_gset:Nn \g__csl_aux_bibstyle_tl {#1} }
+\cs_set:Npn \csl@aux@style #1#2
+ {
+ \str_if_eq:nnT {#1} { 0 }
+ { \tl_gset:Nn \g__csl_aux_bibstyle_tl {#2} }
+ }
% Write to an empty `.ccf` file for use with latexmk
diff --git a/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-de-AT.xml b/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-de-AT.xml
index 833ff58f768..2d27ec8635d 100644
--- a/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-de-AT.xml
+++ b/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-de-AT.xml
@@ -20,7 +20,7 @@
<name>Frank Bennett</name>
</translator>
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
- <updated>2024-03-09T15:20:54-05:00</updated>
+ <updated>2024-08-27T14:30:55-04:00</updated>
</info>
<style-options punctuation-in-quote="false"/>
<date form="text">
@@ -46,7 +46,7 @@
<term name="no-publisher" form="short">n.p.</term>
<term name="on">on</term>
<term name="op-cit">op. cit.</term> <!-- like ibid., the abbreviated form is the regular form -->
- <term name="original-work-published">original work published</term>
+ <term name="original-work-published">Ursprünglich erschienen</term>
<term name="personal-communication">persönliche Kommunikation</term>
<term name="podcast">podcast</term>
<term name="podcast-episode">podcast episode</term>
diff --git a/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-de-CH.xml b/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-de-CH.xml
index 47a13f2740f..9edebba8375 100644
--- a/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-de-CH.xml
+++ b/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-de-CH.xml
@@ -14,7 +14,7 @@
<name>Sebastian Karcher</name>
</translator>
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
- <updated>2024-03-09T15:20:54-05:00</updated>
+ <updated>2024-08-27T14:30:55-04:00</updated>
</info>
<style-options punctuation-in-quote="false"/>
<date form="text">
@@ -40,7 +40,7 @@
<term name="no-publisher" form="short">n.p.</term>
<term name="on">on</term>
<term name="op-cit">op. cit.</term> <!-- like ibid., the abbreviated form is the regular form -->
- <term name="original-work-published">original work published</term>
+ <term name="original-work-published">Ursprünglich erschienen</term>
<term name="personal-communication">persönliche Kommunikation</term>
<term name="podcast">podcast</term>
<term name="podcast-episode">podcast episode</term>
diff --git a/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-de-DE.xml b/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-de-DE.xml
index f7e25ad0f31..903378388a3 100644
--- a/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-de-DE.xml
+++ b/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-de-DE.xml
@@ -17,7 +17,7 @@
<name>jakov</name>
</translator>
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
- <updated>2024-03-09T15:20:54-05:00</updated>
+ <updated>2024-08-27T14:30:55-04:00</updated>
</info>
<style-options punctuation-in-quote="false"/>
<date form="text">
@@ -43,7 +43,7 @@
<term name="no-publisher" form="short">n.p.</term>
<term name="on">on</term>
<term name="op-cit">op. cit.</term> <!-- like ibid., the abbreviated form is the regular form -->
- <term name="original-work-published">original work published</term>
+ <term name="original-work-published">Ursprünglich erschienen</term>
<term name="personal-communication">persönliche Kommunikation</term>
<term name="podcast">podcast</term>
<term name="podcast-episode">podcast episode</term>
diff --git a/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-en-US.xml b/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-en-US.xml
index 93e874ce367..d9dd7552501 100644
--- a/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-en-US.xml
+++ b/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-en-US.xml
@@ -17,7 +17,7 @@
<name>Brenton M. Wiernik</name>
</translator>
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
- <updated>2024-03-12T12:31:23-04:00</updated>
+ <updated>2024-08-12T16:22:23-04:00</updated>
</info>
<style-options punctuation-in-quote="true"/>
<date form="text">
@@ -685,7 +685,6 @@
</term>
<!-- VERB ROLE FORMS -->
- <term name="author" form="verb">by</term>
<term name="chair" form="verb">chaired by</term>
<term name="collection-editor" form="verb">edited by</term>
<term name="compiler" form="verb">compiled by</term>
diff --git a/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-zh-TW.xml b/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-zh-TW.xml
index e4a0e9ef05d..acd44019875 100644
--- a/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-zh-TW.xml
+++ b/Master/texmf-dist/tex/latex/citation-style-language/locales/csl-locales-zh-TW.xml
@@ -5,7 +5,7 @@
<name>sati-bodhi</name>
</translator>
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
- <updated>2024-03-09T15:20:54-05:00</updated>
+ <updated>2024-08-12T16:22:23-04:00</updated>
</info>
<style-options punctuation-in-quote="false"/>
<date form="text">
@@ -433,7 +433,6 @@
<single>series creator</single>
<multiple>series creators</multiple>
</term>
- <term name="author">作者</term>
<term name="director">導演</term>
<term name="editor">編輯</term>
<term name="editorial-director">主編</term>
@@ -485,7 +484,6 @@
<single>cre.</single>
<multiple>cres.</multiple>
</term>
- <term name="author" form="short">作者</term>
<term name="director" form="short">導演</term>
<term name="editor" form="short">編輯</term>
<term name="editorial-director" form="short">主編</term>
@@ -511,7 +509,6 @@
<term name="producer" form="verb">produced by</term>
<term name="script-writer" form="verb">written by</term>
<term name="series-creator" form="verb">created by</term>
- <term name="author" form="verb">著</term>
<term name="container-author" form="verb">著</term>
<term name="director" form="verb">指導</term>
<term name="editor" form="verb">編輯</term>
diff --git a/Master/texmf-dist/tex/latex/citation-style-language/styles/american-medical-association.csl b/Master/texmf-dist/tex/latex/citation-style-language/styles/american-medical-association.csl
index 86dd573abcc..2b84d6e57a1 100644
--- a/Master/texmf-dist/tex/latex/citation-style-language/styles/american-medical-association.csl
+++ b/Master/texmf-dist/tex/latex/citation-style-language/styles/american-medical-association.csl
@@ -27,7 +27,7 @@
<category citation-format="numeric"/>
<category field="medicine"/>
<summary>The American Medical Association style as used in JAMA. Version 11 as per November-2019.</summary>
- <updated>2022-09-28T07:33:04-04:00</updated>
+ <updated>2024-08-04T17:48:30-04:00</updated>
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
</info>
<locale xml:lang="en">
@@ -66,7 +66,7 @@
<group delimiter=". ">
<choose>
<if type="webpage post post-weblog" match="any">
- <date variable="issued" prefix="Published " form="text"/>
+ <date variable="issued" form="text"/>
</if>
</choose>
<group>
@@ -173,7 +173,7 @@
<if variable="URL">
<group delimiter=". " suffix=".">
<text variable="URL"/>
- <group prefix="Published ">
+ <group>
<date variable="issued">
<date-part name="month" suffix=" "/>
<date-part name="day" suffix=", "/>
diff --git a/Master/texmf-dist/tex/latex/citation-style-language/styles/apa.csl b/Master/texmf-dist/tex/latex/citation-style-language/styles/apa.csl
index 79208912e77..97fc1afd6cf 100644
--- a/Master/texmf-dist/tex/latex/citation-style-language/styles/apa.csl
+++ b/Master/texmf-dist/tex/latex/citation-style-language/styles/apa.csl
@@ -14,7 +14,7 @@
<category citation-format="author-date"/>
<category field="psychology"/>
<category field="generic-base"/>
- <updated>2024-06-06T05:59:25+00:00</updated>
+ <updated>2024-08-27T14:44:31-04:00</updated>
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
</info>
<locale xml:lang="en">
@@ -23,6 +23,10 @@
<single>ed. &amp; trans.</single>
<multiple>eds. &amp; trans.</multiple>
</term>
+ <term name="editor-translator" form="short">
+ <single>ed. &amp; trans.</single>
+ <multiple>eds. &amp; trans.</multiple>
+ </term>
<term name="translator" form="short">trans.</term>
<term name="interviewer" form="short">
<single>interviewer</single>
@@ -32,6 +36,7 @@
<single>ed.</single>
<multiple>eds.</multiple>
</term>
+ <term name="performer" form="verb">recorded by</term>
<term name="circa" form="short">ca.</term>
<term name="bc"> B.C.E.</term>
<term name="ad"> C.E.</term>
@@ -41,7 +46,12 @@
</term>
<term name="software">computer software</term>
<term name="at" form="long">before the</term>
+ <term name="collection">archival collection</term>
+ <term name="post">online post</term>
+ <term name="at" form="long">before the</term>
<term name="hearing" form="verb">testimony of</term>
+ <term name="review-of" form="long">review of the</term>
+ <term name="review-of" form="short">review of</term>
</terms>
</locale>
<locale xml:lang="da">
@@ -82,101 +92,172 @@
<term name="et-al">et al.</term>
</terms>
</locale>
- <!-- TODO: New types: classic collection document event hearing performance periodical regulation -software- standard -->
- <!-- TODO: New creator roles: chair compiler contributor curator executive-producer guest host narrator organizer performer producer script-writer series-creator -->
- <!-- TODO: New variables:
- available-date submitted
- part-number printing-number supplement-number
- part-title volume-title
- archive_collection
- division jurisdiction
- event-title
- language
- license
- reviewed-genre
+ <!-- For Indigeneous Knowledge, assume the item is stored as `document` or `speech`
+ and that Nation/Community, treaty, where the Elder lives,
+ and topic are all stored in `title`
+ cf. https://libguides.norquest.ca/c.php?g=314831&p=5188823.
+ If the item is stored as `interview`, assume that Nation/Community, treat, and topic
+ are stored in `title`, 'Oral teaching' or similar is stored in `archive`, and where
+ the Elder lives is stored in `archive-place`.
-->
- <!-- TODO: New terms:
- advance-online-publication
- album on audio-recording
- original-work-published
- personal-communication
- preprint
- review-of
- item types
+ <!-- Reviews are detected if an item has type `review` or `review-book` or if it has any of the variables
+ `reviewed-title`, `reviewed-author`, or `reviewed-genre`. For the latter case, reviews are commonly
+ stored as types `article-journal`, `article-magazine`, `article-newspaper`, `post-weblog`, or `webpage`
-->
- <!-- TODO: Check Indigeneous Knowledge format -->
<!-- General categories of item types:
- Periodical: article-journal article-magazine article-newspaper post-weblog review review-book
+ Periodical: article-journal article-magazine article-newspaper periodical post-weblog review review-book
Periodical or Booklike: paper-conference
Booklike: article book broadcast chapter classic collection dataset document
entry entry-dictionary entry-encyclopedia event figure
- graphic interview manuscript map motion_picture musical_score pamphlet patent
- performance periodical personal_communication post report
+ graphic interview manuscript map motion_picture musical_score
+ pamphlet patent performance personal_communication post report
software song speech standard thesis webpage
Legal: bill hearing legal_case legislation regulation treaty
-->
+ <!-- Equivalencies:
+ classic == book
+ document == report, but give full date
+ standard == report
+ performance == speech
+ event == speech
+ collection == book, but give full date
+ -->
+ <!-- Role equivalencies:
+ compiler == editor
+ organizer, curator == chair
+ script-writer == director
+ producer == director (but don't print both)
+ guest, host == director
+ series-creator, executive-producer == editor
+ -->
<!-- APA references contain four parts: author, date, title, source -->
<macro name="author-bib">
- <!-- TODO: New creator roles (media, contributor) -->
- <!-- TODO: Add new item types -->
- <names variable="composer" delimiter=", ">
- <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
- <substitute>
- <names variable="author"/>
- <names variable="illustrator"/>
- <names variable="director">
- <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
- <label form="long" prefix=" (" suffix=")" text-case="title"/>
- </names>
- <choose>
- <if variable="container-title">
- <choose>
- <if type="book entry entry-dictionary entry-encyclopedia" match="any">
- <choose>
- <if variable="title">
- <group delimiter=" ">
- <text macro="title"/>
- <text macro="parenthetical"/>
- </group>
- </if>
- <else>
- <text macro="title-and-descriptions"/>
- </else>
- </choose>
- </if>
- </choose>
- </if>
- </choose>
- <!-- TODO: Test for editortranslator and put that first as that becomes available -->
- <names variable="editor" delimiter=", ">
- <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
- <label form="short" prefix=" (" suffix=")" text-case="title"/>
- </names>
- <names variable="editorial-director">
- <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
- <label form="short" prefix=" (" suffix=")" text-case="title"/>
- </names>
- <names variable="collection-editor">
- <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
- <label form="short" prefix=" (" suffix=")" text-case="title"/>
- </names>
- <choose>
- <if variable="title">
- <group delimiter=" ">
- <text macro="title"/>
- <text macro="parenthetical"/>
- </group>
- </if>
- <else>
- <text macro="title-and-descriptions"/>
- </else>
- </choose>
- </substitute>
- </names>
+ <group delimiter=" ">
+ <names variable="composer" delimiter=", ">
+ <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
+ <substitute>
+ <names variable="author"/>
+ <!-- Note: `narrator` only cited in secondary-contributors -->
+ <names variable="illustrator"/>
+ <!-- TODO: Replace `delimiter` with `collapse` to combine names variables when that becomes available. -->
+ <choose>
+ <if type="broadcast">
+ <names variable="script-writer director" delimiter=", &amp; ">
+ <!-- Note: Actors/performers and producers [not executive] not cited in APA style. -->
+ <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
+ <label form="long" prefix=" (" suffix=")" text-case="title"/>
+ </names>
+ </if>
+ </choose>
+ <names variable="director">
+ <!-- For non-broadcast items, APA only cites directors and not writers. -->
+ <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
+ <label form="long" prefix=" (" suffix=")" text-case="title"/>
+ </names>
+ <!-- TODO: Replace `delimiter` with `collapse` to combine names variables when that becomes available. -->
+ <names variable="guest host" delimiter=", &amp; ">
+ <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
+ <label form="long" prefix=" (" suffix=")" text-case="title"/>
+ </names>
+ <names variable="producer">
+ <!-- Note: Producers not cited if there is a writer/director, but use if they are the principle creator. -->
+ <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
+ <label form="long" prefix=" (" suffix=")" text-case="title"/>
+ </names>
+ <choose>
+ <if variable="container-title">
+ <choose>
+ <if type="book classic collection entry entry-dictionary entry-encyclopedia" match="any">
+ <!-- Items with book-like container-title substitute with their title and parenthetical,
+ but leave bracketed after container-title. This mimics the `container-booklike` formatting. -->
+ <choose>
+ <if variable="title">
+ <group delimiter=" ">
+ <text macro="title"/>
+ <text macro="parenthetical"/>
+ </group>
+ </if>
+ <else>
+ <text macro="title-and-descriptions"/>
+ </else>
+ </choose>
+ </if>
+ </choose>
+ </if>
+ </choose>
+ <names variable="executive-producer">
+ <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
+ <label form="long" prefix=" (" suffix=")" text-case="title"/>
+ </names>
+ <names variable="series-creator">
+ <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
+ <label form="long" prefix=" (" suffix=")" text-case="title"/>
+ </names>
+ <names variable="editor-translator">
+ <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
+ <label form="short" prefix=" (" suffix=")" text-case="title"/>
+ </names>
+ <!-- Note: Translator is not cited as a primary creator (only as Ed. & Trans.). -->
+ <names variable="editor">
+ <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
+ <label form="short" prefix=" (" suffix=")" text-case="title"/>
+ </names>
+ <names variable="editorial-director">
+ <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
+ <label form="short" prefix=" (" suffix=")" text-case="title"/>
+ </names>
+ <names variable="compiler">
+ <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
+ <label form="long" prefix=" (" suffix=")" text-case="title"/>
+ </names>
+ <choose>
+ <if type="event performance speech" match="any">
+ <names variable="chair">
+ <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
+ <label form="long" prefix=" (" suffix=")" text-case="title"/>
+ </names>
+ <names variable="organizer">
+ <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
+ <label form="long" prefix=" (" suffix=")" text-case="title"/>
+ </names>
+ </if>
+ </choose>
+ <names variable="curator">
+ <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
+ <label form="long" prefix=" (" suffix=")" text-case="title"/>
+ </names>
+ <names variable="collection-editor">
+ <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
+ <label form="short" prefix=" (" suffix=")" text-case="title"/>
+ </names>
+ <choose>
+ <if variable="title">
+ <!-- If an item has a title, substitute missing author with title and parenthetical, but leave bracketed
+ after the date (in the 'title' position). -->
+ <group delimiter=" ">
+ <text macro="title"/>
+ <text macro="parenthetical"/>
+ </group>
+ </if>
+ <else>
+ <!-- If an item has no title, substitute with bracketed followed by parenthetical. -->
+ <text macro="title-and-descriptions"/>
+ </else>
+ </choose>
+ </substitute>
+ </names>
+ <choose>
+ <!-- Print "with" contributor for books, but not for other types that commonly have them (eg, thesis, software) -->
+ <if type="book classic collection" match="any">
+ <names variable="contributor" prefix="(" suffix=")">
+ <label form="verb" suffix=" "/>
+ <name name-as-sort-order="all" and="symbol" sort-separator=", " initialize-with=". " delimiter=", " delimiter-precedes-last="always"/>
+ </names>
+ </if>
+ </choose>
+ </group>
</macro>
<macro name="author-intext">
- <!-- TODO: New creator roles -->
- <!-- TODO: Add new item types -->
<choose>
<if type="bill hearing legal_case legislation regulation treaty" match="any">
<text macro="title-intext"/>
@@ -212,18 +293,37 @@
<substitute>
<names variable="author"/>
<names variable="illustrator"/>
+ <!-- TODO: Replace `delimiter` with `collapse` to combine names variables when that becomes available. -->
+ <choose>
+ <if type="broadcast">
+ <names variable="script-writer director" delimiter=", &amp; "/>
+ </if>
+ </choose>
<names variable="director"/>
+ <!-- TODO: Replace `delimiter` with `collapse` to combine names variables when that becomes available. -->
+ <names variable="guest host" delimiter=", &amp; "/>
+ <names variable="producer"/>
<choose>
<if variable="container-title">
<choose>
- <if type="book entry entry-dictionary entry-encyclopedia" match="any">
+ <if type="book classic collection entry entry-dictionary entry-encyclopedia" match="any">
<text macro="title-intext"/>
</if>
</choose>
</if>
</choose>
+ <names variable="executive-producer"/>
+ <names variable="series-creator"/>
<names variable="editor"/>
<names variable="editorial-director"/>
+ <names variable="compiler"/>
+ <choose>
+ <if type="event performance speech" match="any">
+ <names variable="chair"/>
+ <names variable="organizer"/>
+ </if>
+ </choose>
+ <names variable="curator"/>
<text macro="title-intext"/>
</substitute>
</names>
@@ -241,7 +341,6 @@
</choose>
</macro>
<macro name="date-bib">
- <!-- TODO: Add new item types -->
<group delimiter=" " prefix="(" suffix=")">
<choose>
<if is-uncertain-date="issued">
@@ -257,7 +356,7 @@
<text variable="year-suffix"/>
</group>
<choose>
- <if type="article-magazine article-newspaper broadcast interview motion_picture pamphlet personal_communication post post-weblog song speech webpage" match="any">
+ <if type="article-magazine article-newspaper broadcast collection document event interview motion_picture pamphlet performance personal_communication post post-weblog song speech webpage" match="any">
<!-- Many video and audio examples in manual give full dates. Err on the side of too much information. -->
<date variable="issued">
<date-part name="month"/>
@@ -267,7 +366,7 @@
<else-if type="paper-conference">
<!-- Capture 'speech' stored as 'paper-conference' -->
<choose>
- <if variable="collection-editor editor editorial-director issue page volume" match="none">
+ <if variable="collection-editor compiler editor editorial-director issue page volume" match="none">
<date variable="issued">
<date-part name="month"/>
<date-part name="day" prefix=" "/>
@@ -275,14 +374,14 @@
</if>
</choose>
</else-if>
- <!-- Only year: article article-journal book chapter entry entry-dictionary entry-encyclopedia dataset figure graphic
- manuscript map musical_score paper-conference[published] patent report review review-book thesis -->
+ <!-- Only year: article article-journal book chapter classic entry entry-dictionary entry-encyclopedia dataset figure graphic
+ manuscript map musical_score paper-conference[published] patent periodical report review review-book software standard thesis -->
</choose>
</group>
</if>
<else-if variable="status">
<group>
- <!-- TODO: Should I print status as-is, or should I print the in-press term? -->
+ <!-- We print the status variable directly rather than using in-press, etc. terms. -->
<text variable="status" text-case="lowercase"/>
<text variable="year-suffix" prefix="-"/>
</group>
@@ -296,6 +395,7 @@
</group>
</macro>
<macro name="date-sort">
+ <!-- This is necessary to ensure that citeproc sorts all item types chonologically in the same list. -->
<choose>
<if type="article article-journal book chapter entry entry-dictionary entry-encyclopedia dataset figure graphic manuscript map musical_score patent report review review-book thesis" match="any">
<date variable="issued" date-parts="year" form="numeric"/>
@@ -303,7 +403,7 @@
<else-if type="paper-conference">
<!-- Capture 'speech' stored as 'paper-conference' -->
<choose>
- <if variable="collection-editor editor editorial-director issue page volume" match="any">
+ <if variable="collection-editor compiler editor editorial-director issue page volume" match="any">
<date variable="issued" date-parts="year" form="numeric"/>
</if>
<else>
@@ -339,7 +439,6 @@
</choose>
</macro>
<macro name="date-intext">
- <!-- TODO: Add new item types -->
<choose>
<if variable="issued">
<group delimiter="/">
@@ -387,7 +486,7 @@
</group>
</if>
<else-if variable="status">
- <!-- TODO: Should I print status as-is, or should I print the in-press term? -->
+ <!-- We print the status variable directly rather than using in-press, etc. terms. -->
<text variable="status" text-case="lowercase"/>
<text variable="year-suffix" prefix="-"/>
</else-if>
@@ -398,7 +497,7 @@
</choose>
</macro>
<!-- APA has two description elements following the title:
- title (parenthetical) [bracketed] -->
+ title (parenthetical) [bracketed] -->
<macro name="title-and-descriptions">
<choose>
<if variable="title">
@@ -412,7 +511,7 @@
<choose>
<if type="bill report" match="any">
<!-- Bills, resolutions, and congressional reports are not italicized and substitute bill number if no title. -->
- <!-- Can't distinguish congressional reports from other reports,
+ <!-- Can't distinguish congressional reports from other reports,
but giving the genre and number seems fine for other reports too. -->
<text macro="number"/>
<text macro="bracketed"/>
@@ -429,68 +528,125 @@
</choose>
</macro>
<macro name="title">
- <!-- TODO: Add new item types -->
<choose>
<if type="post webpage" match="any">
<!-- Webpages are always italicized -->
- <text variable="title" font-style="italic"/>
+ <text macro="title-plus-part-title" font-style="italic"/>
</if>
- <else-if variable="container-title" match="any">
- <!-- Other types are italicized based on presence of container-title.
+ <!-- Other types are italicized based on presence of container-title.
Assume that review and review-book are published in periodicals/blogs,
not just on a web page (ex. 69) -->
- <text variable="title"/>
+ <else-if type="article-journal article-magazine article-newspaper periodical post-weblog review review-book" match="any">
+ <text macro="periodical-title"/>
</else-if>
- <else>
+ <else-if type="paper-conference">
+ <!-- Treat paper-conference as book-like if it has an editor, otherwise as periodical-like -->
<choose>
- <if type="article-journal article-magazine article-newspaper post-weblog review review-book" match="any">
- <text variable="title" font-style="italic"/>
+ <if variable="collection-editor compiler editor editorial-director" match="any">
+ <text macro="booklike-title"/>
</if>
- <else-if type="paper-conference">
- <choose>
- <if variable="collection-editor editor editorial-director" match="any">
- <group delimiter=": " font-style="italic">
- <text variable="title"/>
- <!-- TODO: Replace with volume-title -->
- <choose>
- <if is-numeric="volume" match="none">
- <group delimiter=" ">
- <label variable="volume" form="short" text-case="capitalize-first"/>
- <text variable="volume"/>
- </group>
- </if>
- </choose>
- </group>
- </if>
- <else>
- <text variable="title" font-style="italic"/>
- </else>
- </choose>
- </else-if>
<else>
- <group delimiter=": " font-style="italic">
+ <text macro="periodical-title"/>
+ </else>
+ </choose>
+ </else-if>
+ <else>
+ <text macro="booklike-title"/>
+ </else>
+ </choose>
+ </macro>
+ <macro name="periodical-title">
+ <!-- For periodicals, assume that part-number and part-title refer to the article and append to title -->
+ <choose>
+ <if variable="container-title" match="any">
+ <text macro="title-plus-part-title"/>
+ </if>
+ <else>
+ <!-- for periodical items without container titles, don't append volume-title to title -->
+ <text macro="title-plus-part-title" font-style="italic"/>
+ </else>
+ </choose>
+ </macro>
+ <macro name="booklike-title">
+ <!-- For book-like items, assume part-number and part-title refer to the book/volume. -->
+ <choose>
+ <if variable="container-title" match="any">
+ <text variable="title"/>
+ </if>
+ <else>
+ <!-- For book-like items without container titles and with volume-title, append volume-title to title (ex. 30) -->
+ <text macro="title-plus-volume-title" font-style="italic"/>
+ </else>
+ </choose>
+ </macro>
+ <macro name="title-plus-part-title">
+ <choose>
+ <if variable="reviewed-author reviewed-genre reviewed-title" type="review review-book" match="any">
+ <!-- If a review has no `reviewed-title`, assume that `title` contains the title of the reviewed work
+ and omit it here; it is printed in the `reviewed-item` macro. -->
+ <choose>
+ <if variable="reviewed-title" match="none"/>
+ <else>
+ <group delimiter=": ">
<text variable="title"/>
- <!-- TODO: Replace with volume-title -->
- <choose>
- <if is-numeric="volume" match="none">
- <group delimiter=" ">
- <label variable="volume" form="short" text-case="capitalize-first"/>
- <text variable="volume"/>
- </group>
- </if>
- </choose>
+ <text macro="part-title"/>
</group>
</else>
</choose>
+ </if>
+ <else>
+ <group delimiter=": ">
+ <text variable="title"/>
+ <text macro="part-title"/>
+ </group>
</else>
</choose>
</macro>
+ <macro name="part-title">
+ <group delimiter=". ">
+ <group delimiter=" ">
+ <label variable="part-number" form="short" text-case="capitalize-first"/>
+ <text variable="part-number"/>
+ </group>
+ <text variable="part-title" text-case="capitalize-first"/>
+ </group>
+ </macro>
+ <macro name="title-plus-volume-title">
+ <group delimiter=": ">
+ <text variable="title"/>
+ <text macro="volume-title"/>
+ </group>
+ </macro>
+ <macro name="volume-title">
+ <group delimiter=": ">
+ <choose>
+ <if variable="volume-title">
+ <group delimiter=" ">
+ <group delimiter=". ">
+ <group delimiter=" ">
+ <label variable="volume" form="short" text-case="capitalize-first"/>
+ <text variable="volume"/>
+ </group>
+ <text variable="volume-title"/>
+ </group>
+ </group>
+ </if>
+ <else-if is-numeric="volume" match="none">
+ <group delimiter=" ">
+ <label variable="volume" form="short" text-case="capitalize-first"/>
+ <text variable="volume"/>
+ </group>
+ </else-if>
+ </choose>
+ <!-- For book-like items, assume part-number and part-title refer to the book/volume. -->
+ <text macro="part-title"/>
+ </group>
+ </macro>
<macro name="title-intext">
- <!-- TODO: Add new item types -->
<choose>
<if type="bill report">
<!-- Bills, resolutions, and congressional reports are not italicized and substitute bill number if no title. -->
- <!-- Can't distinguish congressional reports from other reports,
+ <!-- Can't distinguish congressional reports from other reports,
but giving the genre and number seems fine for other reports too. -->
<choose>
<if variable="title">
@@ -544,7 +700,6 @@
</choose>
</macro>
<macro name="parenthetical">
- <!-- TODO: Add new item types -->
<!-- (Secondary contributors; Database location; Genre no. 123; Report Series 123, Version, Edition, Volume, Page) -->
<group prefix="(" suffix=")">
<choose>
@@ -604,7 +759,7 @@
<text macro="secondary-contributors"/>
<choose>
<if type="broadcast graphic map motion_picture song" match="any">
- <!-- For audiovisual media, number information comes after title, not container-title -->
+ <!-- For audiovisual media, number information comes after title, not container-title (ex. 94) -->
<text macro="number"/>
</if>
</choose>
@@ -622,7 +777,6 @@
</group>
</macro>
<macro name="parenthetical-container">
- <!-- TODO: Add new item types -->
<choose>
<if variable="container-title" match="any">
<group prefix="(" suffix=")">
@@ -630,7 +784,7 @@
<text macro="database-location"/>
<choose>
<if type="broadcast graphic map motion_picture song" match="none">
- <!-- For audiovisual media, number information comes after title, not container-title -->
+ <!-- For audiovisual media, number information comes after title, not container-title (ex. 94) -->
<text macro="number"/>
</if>
</choose>
@@ -641,65 +795,12 @@
</choose>
</macro>
<macro name="bracketed">
- <!-- TODO: Add new item types -->
<!-- [Descriptive information] -->
<!-- If there is a number, genre is already printed in macro="number" -->
<group prefix="[" suffix="]">
<choose>
- <if variable="reviewed-author reviewed-title" type="review review-book" match="any">
- <!-- Reviewed item -->
- <group delimiter="; ">
- <group delimiter=", ">
- <group delimiter=" ">
- <!-- Assume that genre is entered as 'Review of the book' or similar -->
- <choose>
- <if variable="number" match="none">
- <choose>
- <if variable="genre">
- <text variable="genre" text-case="capitalize-first"/>
- </if>
- <else-if variable="medium">
- <text variable="medium" text-case="capitalize-first"/>
- </else-if>
- <else>
- <!-- TODO: Replace with term="review" -->
- <!-- TODO: Handle review vs review-of depending on presence of reviewed-title -->
- <!-- TODO: Add reviewed-genre -->
- <text value="Review of"/>
- </else>
- </choose>
- </if>
- <else>
- <choose>
- <if variable="medium">
- <text variable="medium" text-case="capitalize-first"/>
- </if>
- <else>
- <!-- TODO: Replace with term="review" -->
- <!-- TODO: Handle review vs review-of depending on presence of reviewed-title -->
- <!-- TODO: Add reviewed-genre -->
- <text value="Review of"/>
- </else>
- </choose>
- </else>
- </choose>
- <text macro="reviewed-title"/>
- </group>
- <names variable="reviewed-author">
- <label form="verb-short" suffix=" "/>
- <name and="symbol" initialize-with=". " delimiter=", "/>
- </names>
- </group>
- <choose>
- <if variable="genre" match="any">
- <choose>
- <if variable="number" match="none">
- <text variable="medium" text-case="capitalize-first"/>
- </if>
- </choose>
- </if>
- </choose>
- </group>
+ <if variable="reviewed-author reviewed-genre reviewed-title" type="review review-book" match="any">
+ <text macro="reviewed-item"/>
</if>
<else-if type="thesis">
<!-- Thesis type and institution -->
@@ -731,7 +832,7 @@
<group delimiter=" ">
<text variable="genre" text-case="capitalize-first"/>
<group delimiter=" ">
- <text term="author" form="verb"/>
+ <text term="container-author" form="verb"/>
<names variable="interviewer">
<name and="symbol" initialize-with=". " delimiter=", "/>
</names>
@@ -814,22 +915,35 @@
<choose>
<if variable="genre">
<text variable="genre" text-case="capitalize-first"/>
- <!-- TODO: Replace prefix with performer label -->
- <names variable="author" prefix="recorded by ">
- <name and="symbol" initialize-with=". " delimiter=", "/>
- </names>
+ <group delimiter=" ">
+ <text term="performer" form="verb"/>
+ <names variable="author">
+ <name and="symbol" initialize-with=". " delimiter=", "/>
+ <substitute>
+ <names variable="performer"/>
+ </substitute>
+ </names>
+ </group>
</if>
<else-if variable="medium">
<text variable="medium" text-case="capitalize-first"/>
- <!-- TODO: Replace prefix with performer label -->
- <names variable="author" prefix="recorded by ">
- <name and="symbol" initialize-with=". " delimiter=", "/>
- </names>
+ <group delimiter=" ">
+ <text term="performer" form="verb"/>
+ <names variable="author">
+ <name and="symbol" initialize-with=". " delimiter=", "/>
+ <substitute>
+ <names variable="performer"/>
+ </substitute>
+ </names>
+ </group>
</else-if>
<else>
- <!-- TODO: Replace prefix with performer label -->
- <names variable="author" prefix="Recorded by ">
+ <text term="performer" form="verb" text-case="capitalize-first"/>
+ <names variable="author">
<name and="symbol" initialize-with=". " delimiter=", "/>
+ <substitute>
+ <names variable="performer"/>
+ </substitute>
</names>
</else>
</choose>
@@ -840,15 +954,23 @@
<choose>
<if variable="medium">
<text variable="medium" text-case="capitalize-first"/>
- <!-- TODO: Replace prefix with performer label -->
- <names variable="author" prefix="recorded by ">
- <name and="symbol" initialize-with=". " delimiter=", "/>
- </names>
+ <group delimiter=" ">
+ <text term="performer" form="verb"/>
+ <names variable="author">
+ <name and="symbol" initialize-with=". " delimiter=", "/>
+ <substitute>
+ <names variable="performer"/>
+ </substitute>
+ </names>
+ </group>
</if>
<else>
- <!-- TODO: Replace prefix with performer label -->
- <names variable="author" prefix="Recorded by ">
+ <text term="performer" form="verb" text-case="capitalize-first"/>
+ <names variable="author">
<name and="symbol" initialize-with=". " delimiter=", "/>
+ <substitute>
+ <names variable="performer"/>
+ </substitute>
</names>
</else>
</choose>
@@ -871,16 +993,17 @@
<text macro="format"/>
</else-if>
<else>
- <!-- For conference presentations, chapters in reports, software, place bracketed after the container title -->
+ <!-- For conference presentations/performances/events, chapters in reports/standards/generic documents, software,
+ place bracketed after the container title -->
<choose>
- <if type="paper-conference speech" match="any">
+ <if type="event paper-conference performance speech" match="any">
<choose>
- <if variable="collection-editor editor editorial-director issue page volume" match="any">
+ <if variable="collection-editor compiler editor editorial-director issue page volume" match="any">
<text macro="format"/>
</if>
</choose>
</if>
- <else-if type="report software" match="none">
+ <else-if type="document report software standard" match="none">
<text macro="format"/>
</else-if>
</choose>
@@ -889,10 +1012,9 @@
</group>
</macro>
<macro name="bracketed-intext">
- <!-- TODO: Add new item types -->
<group prefix="[" suffix="]">
<choose>
- <if variable="reviewed-author reviewed-title" type="review review-book" match="any">
+ <if variable="reviewed-title" match="any">
<group delimiter=" ">
<text term="review-of" text-case="capitalize-first"/>
<text macro="reviewed-title-intext"/>
@@ -937,14 +1059,80 @@
</choose>
</group>
</macro>
+ <macro name="reviewed-item">
+ <!-- Reviewed item -->
+ <group delimiter="; ">
+ <group delimiter=", ">
+ <group delimiter=" ">
+ <choose>
+ <if variable="reviewed-genre">
+ <group delimiter=" ">
+ <text term="review-of" form="long" text-case="capitalize-first"/>
+ <text variable="reviewed-genre" text-case="lowercase"/>
+ </group>
+ </if>
+ <!-- If no `reviewed-genre`, assume that `genre` or `medium` is entered as 'Review of the book' or similar -->
+ <else-if variable="number" match="none">
+ <choose>
+ <if variable="genre">
+ <text variable="genre" text-case="capitalize-first"/>
+ </if>
+ <else-if variable="medium">
+ <text variable="medium" text-case="capitalize-first"/>
+ </else-if>
+ <else-if type="review-book">
+ <group delimiter=" ">
+ <text term="review-of" form="long" text-case="capitalize-first"/>
+ <text term="book" form="long" text-case="lowercase"/>
+ </group>
+ </else-if>
+ <else>
+ <text term="review-of" form="short" text-case="capitalize-first"/>
+ </else>
+ </choose>
+ </else-if>
+ <else>
+ <choose>
+ <if variable="medium">
+ <text variable="medium" text-case="capitalize-first"/>
+ </if>
+ <else-if type="review-book">
+ <group delimiter=" ">
+ <text term="review-of" form="long" text-case="capitalize-first"/>
+ <text term="book" form="long" text-case="lowercase"/>
+ </group>
+ </else-if>
+ <else>
+ <text term="review-of" form="short" text-case="capitalize-first"/>
+ </else>
+ </choose>
+ </else>
+ </choose>
+ <text macro="reviewed-title"/>
+ </group>
+ <names variable="reviewed-author">
+ <label form="verb-short" suffix=" "/>
+ <name and="symbol" initialize-with=". " delimiter=", "/>
+ </names>
+ </group>
+ <choose>
+ <if variable="genre" match="any">
+ <choose>
+ <if variable="number" match="none">
+ <text variable="medium" text-case="capitalize-first"/>
+ </if>
+ </choose>
+ </if>
+ </choose>
+ </group>
+ </macro>
<macro name="bracketed-container">
- <!-- TODO: Add new item types -->
<group prefix="[" suffix="]">
<choose>
- <if type="paper-conference speech" match="any">
+ <if type="event paper-conference performance speech" match="any">
<!-- Conference presentations should describe the session [container] in bracketed unless published in a proceedings -->
<choose>
- <if variable="collection-editor editor editorial-director issue page volume" match="none">
+ <if variable="collection-editor compiler editor editorial-director issue page volume" match="none">
<text macro="format"/>
</if>
</choose>
@@ -953,23 +1141,21 @@
<!-- For entries in mobile app reference works, place bracketed after the container-title -->
<text macro="format"/>
</else-if>
- <else-if type="report">
- <!-- For chapters in reports, place bracketed after the container title -->
+ <else-if type="document report standard">
+ <!-- For chapters in report, standards, and generic documents, place bracketed after the container title -->
<text macro="format"/>
</else-if>
</choose>
</group>
</macro>
<macro name="secondary-contributors">
- <!-- TODO: Add new item types -->
- <!-- TODO: Add new creator roles -->
<choose>
- <if type="article-journal article-magazine article-newspaper post-weblog review review-book" match="any">
+ <if type="article-journal article-magazine article-newspaper periodical post-weblog review review-book" match="any">
<text macro="secondary-contributors-periodical"/>
</if>
<else-if type="paper-conference">
<choose>
- <if variable="collection-editor editor editorial-director" match="any">
+ <if variable="collection-editor compiler editor editorial-director" match="any">
<text macro="secondary-contributors-booklike"/>
</if>
<else>
@@ -992,14 +1178,13 @@
</names>
</if>
</choose>
- <names variable="translator" delimiter="; ">
+ <names variable="translator narrator" delimiter="; ">
<name and="symbol" initialize-with=". " delimiter=", "/>
<label form="short" prefix=", " text-case="title"/>
</names>
</group>
</macro>
<macro name="secondary-contributors-booklike">
- <!-- TODO: Add new item types -->
<group delimiter="; ">
<choose>
<if variable="title">
@@ -1009,24 +1194,44 @@
</names>
</if>
</choose>
- <!-- TODO: When editortranslator becomes available, add a test: variable="editortranslator" match="none"; then print translator -->
<choose>
<if type="post webpage" match="none">
<!-- Webpages treat container-title like publisher -->
- <choose>
- <if variable="container-title" match="none">
- <group delimiter="; ">
- <names variable="container-author">
- <label form="verb-short" suffix=" " text-case="title"/>
- <name and="symbol" initialize-with=". " delimiter=", "/>
- </names>
- <names variable="editor translator" delimiter="; ">
- <name and="symbol" initialize-with=". " delimiter=", "/>
- <label form="short" prefix=", " text-case="title"/>
- </names>
- </group>
- </if>
- </choose>
+ <group delimiter="; ">
+ <names variable="illustrator narrator" delimiter="; ">
+ <name and="symbol" initialize-with=". " delimiter=", "/>
+ <label form="short" prefix=", " text-case="title"/>
+ </names>
+ <choose>
+ <if variable="container-title" match="none">
+ <group delimiter="; ">
+ <names variable="container-author">
+ <label form="verb-short" suffix=" " text-case="title"/>
+ <name and="symbol" initialize-with=". " delimiter=", "/>
+ </names>
+ <names variable="editor translator" delimiter="; ">
+ <name and="symbol" initialize-with=". " delimiter=", "/>
+ <label form="short" prefix=", " text-case="title"/>
+ </names>
+ <names variable="compiler chair organizer curator series-creator executive-producer" delimiter="; ">
+ <name and="symbol" initialize-with=". " delimiter=", "/>
+ <label form="long" prefix=", " text-case="title"/>
+ </names>
+ </group>
+ </if>
+ <else>
+ <choose>
+ <!-- TODO: Check logic once processors start to automatically populate editor-translator. -->
+ <if variable="editor-translator" match="none">
+ <names variable="translator" delimiter="; ">
+ <name and="symbol" initialize-with=". " delimiter=", "/>
+ <label form="short" prefix=", " text-case="title"/>
+ </names>
+ </if>
+ </choose>
+ </else>
+ </choose>
+ </group>
</if>
<else>
<group delimiter="; ">
@@ -1038,6 +1243,14 @@
<name and="symbol" initialize-with=". " delimiter=", "/>
<label form="short" prefix=", " text-case="title"/>
</names>
+ <names variable="illustrator narrator" delimiter="; ">
+ <name and="symbol" initialize-with=". " delimiter=", "/>
+ <label form="short" prefix=", " text-case="title"/>
+ </names>
+ <names variable="compiler chair organizer curator series-creator executive-producer" delimiter="; ">
+ <name and="symbol" initialize-with=". " delimiter=", "/>
+ <label form="long" prefix=", " text-case="title"/>
+ </names>
</group>
</else>
</choose>
@@ -1047,13 +1260,11 @@
<choose>
<if variable="archive-place" match="none">
<!-- With `archive-place`: physical archives. Without: online archives. -->
- <!-- TODO: Add archive_collection -->
<text variable="archive_location"/>
</if>
</choose>
</macro>
<macro name="number">
- <!-- TODO: Add new item types -->
<choose>
<if variable="number">
<group delimiter=", ">
@@ -1079,12 +1290,11 @@
</choose>
</macro>
<macro name="locators-booklike">
- <!-- TODO: Add new item types -->
<choose>
- <if type="article-journal article-magazine article-newspaper broadcast interview patent post post-weblog review review-book speech webpage" match="any"/>
+ <if type="article-journal article-magazine article-newspaper broadcast event interview patent performance periodical post post-weblog review review-book speech webpage" match="any"/>
<else-if type="paper-conference">
<choose>
- <if variable="collection-editor editor editorial-director" match="any">
+ <if variable="collection-editor compiler editor editorial-director" match="any">
<group delimiter=", ">
<text macro="version"/>
<text macro="edition"/>
@@ -1103,17 +1313,10 @@
</choose>
</macro>
<macro name="version">
- <choose>
- <if is-numeric="version">
- <group delimiter=" ">
- <label variable="version" text-case="capitalize-first"/>
- <text variable="version"/>
- </group>
- </if>
- <else>
- <text variable="version"/>
- </else>
- </choose>
+ <group delimiter=" ">
+ <label variable="version" text-case="capitalize-first"/>
+ <text variable="version"/>
+ </group>
</macro>
<macro name="edition">
<choose>
@@ -1129,23 +1332,26 @@
</choose>
</macro>
<macro name="volume-booklike">
- <!-- TODO: Add new item types -->
<group delimiter=", ">
<!-- Report series [ex. 52] -->
<choose>
- <if type="report">
+ <if type="document report standard">
<group delimiter=" ">
<text variable="collection-title" text-case="title"/>
<text variable="collection-number"/>
</group>
</if>
</choose>
+ <group delimiter=" ">
+ <label variable="supplement-number" text-case="capitalize-first"/>
+ <text variable="supplement-number"/>
+ </group>
<choose>
<if variable="volume" match="any">
- <!-- TODO: Update using volume-title -->
<choose>
<!-- Non-numeric volumes are already printed as part of the book title -->
- <if is-numeric="volume" match="none"/>
+ <if variable="volume-title"/>
+ <else-if is-numeric="volume" match="none"/>
<else>
<group delimiter=" ">
<label variable="volume" form="short" text-case="capitalize-first"/>
@@ -1176,7 +1382,8 @@
<choose>
<if variable="reviewed-title">
<!-- Not possible to distinguish TV series episode from other reviewed
- works [Ex. 69] -->
+ works without reviewed-container-title [Ex. 69] -->
+ <!-- Adapt for reviewed-container-title if that becomes available -->
<text variable="reviewed-title" font-style="italic"/>
</if>
<else>
@@ -1188,7 +1395,9 @@
<macro name="reviewed-title-intext">
<choose>
<if variable="reviewed-title">
- <!-- Not possible to distinguish TV series episode from other reviewed works [Ex. 69] -->
+ <!-- Not possible to distinguish TV series episode from other reviewed
+ works without reviewed-container-title [Ex. 69] -->
+ <!-- Adapt for reviewed-container-title if that becomes available -->
<text variable="reviewed-title" form="short" font-style="italic" text-case="title"/>
</if>
<else>
@@ -1198,7 +1407,6 @@
</choose>
</macro>
<macro name="format">
- <!-- TODO: Add new item types -->
<choose>
<if variable="genre medium" match="any">
<group delimiter="; ">
@@ -1210,31 +1418,12 @@
<text variable="medium" text-case="capitalize-first"/>
</group>
</if>
- <!-- Generic labels for specific types -->
- <!-- TODO: Add terms for other types? -->
- <else-if type="dataset">
- <text term="dataset"/>
- </else-if>
- <else-if type="software">
- <text term="software" text-case="capitalize-first"/>
- </else-if>
- <else-if type="interview personal_communication" match="any">
- <choose>
- <if variable="archive container-title DOI publisher URL" match="none">
- <text term="personal-communication" text-case="capitalize-first"/>
- </if>
- <else-if type="interview">
- <text term="interview" text-case="capitalize-first"/>
- </else-if>
- </choose>
- </else-if>
- <else-if type="map">
- <text term="map" text-case="capitalize-first"/>
- </else-if>
+ <else>
+ <text macro="generic-type-label"/>
+ </else>
</choose>
</macro>
<macro name="format-intext">
- <!-- TODO: Add new item types -->
<choose>
<if variable="genre" match="any">
<text variable="genre" text-case="capitalize-first"/>
@@ -1242,11 +1431,17 @@
<else-if variable="medium">
<text variable="medium" text-case="capitalize-first"/>
</else-if>
- <!-- Generic labels for specific types -->
- <!-- TODO: Add terms for other types? -->
- <else-if type="dataset">
- <text term="dataset"/>
- </else-if>
+ <else>
+ <text macro="generic-type-label"/>
+ </else>
+ </choose>
+ </macro>
+ <macro name="generic-type-label">
+ <!-- Generic labels for specific types -->
+ <choose>
+ <if type="dataset">
+ <text term="dataset" text-case="capitalize-first"/>
+ </if>
<else-if type="software">
<text term="software" text-case="capitalize-first"/>
</else-if>
@@ -1261,21 +1456,47 @@
</choose>
</else-if>
<else-if type="map">
- <text term="map"/>
+ <text term="map" text-case="capitalize-first"/>
+ </else-if>
+ <else-if type="collection">
+ <text term="collection" text-case="capitalize-first"/>
+ </else-if>
+ <else-if type="song">
+ <text term="song" text-case="capitalize-first"/>
+ </else-if>
+ <else-if type="motion_picture">
+ <text term="motion_picture" text-case="capitalize-first"/>
+ </else-if>
+ <else-if type="post">
+ <text term="post" text-case="capitalize-first"/>
+ </else-if>
+ <else-if type="review">
+ <text term="review" text-case="capitalize-first"/>
+ </else-if>
+ <else-if type="review-book">
+ <text term="review-book" text-case="capitalize-first"/>
+ </else-if>
+ <else-if type="broadcast">
+ <text term="broadcast" text-case="capitalize-first"/>
+ </else-if>
+ <else-if type="figure">
+ <text term="figure" text-case="capitalize-first"/>
+ </else-if>
+ <else-if type="graphic">
+ <text term="graphic" text-case="capitalize-first"/>
</else-if>
</choose>
</macro>
<!-- APA 'source' element contains four parts:
container, event, publisher, access -->
<macro name="container">
- <!-- TODO: Add new item types -->
<choose>
- <if type="article-journal article-magazine article-newspaper post-weblog review review-book" match="any">
+ <if type="article-journal article-magazine article-newspaper periodical post-weblog review review-book" match="any">
<!-- Periodical items -->
<text macro="container-periodical"/>
</if>
<else-if type="paper-conference">
- <!-- Determine if paper-conference is a periodical or booklike -->
+ <!-- Determine if paper-conference is a periodical- or book-like -->
<choose>
<if variable="editor editorial-director collection-editor container-author" match="any">
<text macro="container-booklike"/>
@@ -1309,7 +1530,6 @@
<choose>
<if variable="number">
<!-- Ex. 6: Journal article with article number or eLocator -->
- <!-- This should be localized -->
<group delimiter=" ">
<text term="article-locator" text-case="capitalize-first"/>
<text variable="number"/>
@@ -1323,8 +1543,8 @@
<choose>
<if variable="issued">
<choose>
- <if variable="issue page volume" match="none">
- <!-- TODO: Should I print status as-is, or should I print the in-press term? -->
+ <if variable="issue number page volume" match="none">
+ <!-- We print the status variable directly rather than using in-press, etc. terms. -->
<text variable="status" text-case="capitalize-first"/>
</if>
</choose>
@@ -1333,33 +1553,56 @@
</group>
</macro>
<macro name="container-booklike">
- <!-- TODO: Add new item types -->
<choose>
<if variable="container-title" match="any">
<group delimiter=" ">
- <text term="in" text-case="capitalize-first"/>
+ <choose>
+ <if type="song">
+ <text term="on" text-case="capitalize-first"/>
+ </if>
+ <else>
+ <text term="in" text-case="capitalize-first"/>
+ </else>
+ </choose>
<group delimiter=", ">
- <names variable="editor translator" delimiter=", &amp; ">
- <!-- TODO: Change to editortranslator and move editor to substitute -->
+ <names variable="executive-producer">
<name and="symbol" initialize-with=". " delimiter=", "/>
- <label form="short" text-case="title" prefix=" (" suffix=")"/>
+ <label form="long" text-case="title" prefix=" (" suffix=")"/>
<substitute>
- <names variable="editorial-director"/>
- <names variable="collection-editor"/>
+ <names variable="series-creator"/>
+ <names variable="editor-translator">
+ <name and="symbol" initialize-with=". " delimiter=", "/>
+ <label form="short" text-case="title" prefix=" (" suffix=")"/>
+ </names>
+ <!-- TODO: Translator omitted here on the assumption that editor-translators are uncommon
+ for chapter citations. If needed, direct entry or automatic population of
+ `editor-translator` can produce combined labels. -->
+ <names variable="editor">
+ <name and="symbol" initialize-with=". " delimiter=", "/>
+ <label form="short" text-case="title" prefix=" (" suffix=")"/>
+ </names>
+ <names variable="editorial-director">
+ <name and="symbol" initialize-with=". " delimiter=", "/>
+ <label form="short" text-case="title" prefix=" (" suffix=")"/>
+ </names>
+ <names variable="compiler"/>
+ <choose>
+ <if type="event performance speech" match="any">
+ <names variable="chair"/>
+ <names variable="organizer"/>
+ </if>
+ </choose>
+ <names variable="curator"/>
+ <names variable="collection-editor">
+ <name and="symbol" initialize-with=". " delimiter=", "/>
+ <label form="short" text-case="title" prefix=" (" suffix=")"/>
+ </names>
<names variable="container-author"/>
</substitute>
</names>
<group delimiter=": " font-style="italic">
<text variable="container-title"/>
- <!-- TODO: Replace with volume-title -->
- <choose>
- <if is-numeric="volume" match="none">
- <group delimiter=" ">
- <label variable="volume" form="short" text-case="capitalize-first"/>
- <text variable="volume"/>
- </group>
- </if>
- </choose>
+ <text macro="volume-title"/>
</group>
</group>
<text macro="parenthetical-container"/>
@@ -1369,7 +1612,6 @@
</choose>
</macro>
<macro name="publisher">
- <!-- TODO: Add new item types -->
<group delimiter="; ">
<choose>
<if type="thesis">
@@ -1389,12 +1631,12 @@
<else-if type="paper-conference">
<!-- For paper-conference, don't print publisher if in a journal-like proceedings -->
<choose>
- <if variable="collection-editor editor editorial-director" match="any">
+ <if variable="collection-editor compiler editor editorial-director" match="any">
<text variable="publisher"/>
</if>
</choose>
</else-if>
- <else-if type="article-journal article-magazine article-newspaper post-weblog" match="none">
+ <else-if type="article-journal article-magazine article-newspaper periodical post-weblog review review-book" match="none">
<text variable="publisher"/>
</else-if>
</choose>
@@ -1404,16 +1646,32 @@
<!-- With `archive-place`: physical archives. Without: online archives. -->
<!-- For physical archives, print the location before the archive name.
For electronic archives, these are printed in macro="description". -->
- <!-- TODO: Split "archive_location" into "archive_collection" and "archive_location" -->
<!-- Must test for archive_collection:
With collection: archive_collection (archive_location), archive, archive-place
No collection: archive (archive_location), archive-place
-->
- <text variable="archive_location"/>
+ <choose>
+ <if variable="archive_collection">
+ <group delimiter=" ">
+ <text variable="archive_collection"/>
+ <text variable="archive_location" prefix="(" suffix=")"/>
+ </group>
+ <text variable="archive"/>
+ <text variable="archive-place"/>
+ </if>
+ <else>
+ <group delimiter=" ">
+ <text variable="archive"/>
+ <text variable="archive_location" prefix="(" suffix=")"/>
+ </group>
+ <text variable="archive-place"/>
+ </else>
+ </choose>
</if>
+ <else>
+ <text variable="archive"/>
+ </else>
</choose>
- <text variable="archive"/>
- <text variable="archive-place"/>
</group>
</group>
</macro>
@@ -1439,19 +1697,30 @@
</choose>
</macro>
<macro name="event">
- <!-- TODO: Add new item types (e.g., event, collection, performance) -->
<choose>
<if variable="event event-title" match="any">
<!-- To prevent Zotero from printing event-place due to its double-mapping of all 'place' to
both publisher-place and event-place. Remove this 'choose' when that is changed. -->
<choose>
- <if variable="collection-editor editor editorial-director issue page volume" match="none">
- <!-- Don't print event info if published in a proceedings -->
+ <if type="paper-conference">
+ <choose>
+ <if variable="collection-editor compiler editor editorial-director issue page volume" match="none">
+ <!-- Don't print event info for conference papers published in a proceedings -->
+ <group delimiter=", ">
+ <text macro="event-title"/>
+ <text variable="event-place"/>
+ </group>
+ </if>
+ </choose>
+ </if>
+ <else>
+ <!-- For other item types, print event info even if published (e.g., for collection catalogs, performance programs.
+ These items aren't given explicit examples in the APA manual, so err on the side of providing too much information. -->
<group delimiter=", ">
<text macro="event-title"/>
<text variable="event-place"/>
</group>
- </if>
+ </else>
</choose>
</if>
</choose>
@@ -1472,19 +1741,30 @@
</macro>
<!-- After 'source', APA also prints publication history (original publication, reprint info, retraction info) -->
<macro name="publication-history">
- <!-- TODO: Add new item types -->
<choose>
- <if type="patent" match="none">
- <group prefix="(" suffix=")">
+ <if type="patent">
+ <text variable="references" prefix="(" suffix=")"/>
+ </if>
+ <else>
+ <group delimiter="; " prefix="(" suffix=")">
+ <!-- Print `status` here for things like "retracted" if it's not printed elsewhere already. -->
+ <choose>
+ <if variable="issued">
+ <choose>
+ <if variable="issue number page volume" match="any">
+ <text variable="status" text-case="capitalize-first"/>
+ </if>
+ </choose>
+ </if>
+ </choose>
<choose>
<if variable="references">
<!-- This provides the option for more elaborate description
- of publication history, such as full "reprinted" references
- (examples 11, 43, 44) or retracted references -->
+ of publication history, such as full "reprinted" references
+ (examples 11, 43, 44) -->
<text variable="references"/>
</if>
<else>
- <!-- TODO: Replace these with terms -->
<group delimiter=" ">
<text term="original-work-published" text-case="capitalize-first"/>
<choose>
@@ -1499,9 +1779,6 @@
</else>
</choose>
</group>
- </if>
- <else>
- <text variable="references" prefix="(" suffix=")"/>
</else>
</choose>
</macro>
@@ -1510,24 +1787,24 @@
<!-- `treaty`: for treaties -->
<!-- `legal_case`: for all legal and court cases -->
<!-- `bill`: for bills, resolutions, federal reports -->
- <!-- `hearing`: TODO for hearings and testimony -->
+ <!-- `hearing`: for hearings and testimony -->
<!-- `legislation`: for statutes, constitutional items, and charters -->
- <!-- `regulation`: TODO codified regulations, uncodified regulations, executive orders -->
+ <!-- `regulation`: codified regulations, uncodified regulations, executive orders -->
<group delimiter=" ">
<choose>
<if type="treaty">
<group delimiter=", " suffix=".">
<!-- APA generally defers to Bluebook for legal citations, but diverges without
- explanation for treaty items. We follow the Bluebook format that was used
+ explanation for treaty items. We follow the Bluebook format that was used
in APA 6th ed. -->
- <!-- APA manual omits treaty parties/authors, but per Bluebook
+ <!-- APA manual omits treaty parties/authors, but per Bluebook
they should be included at least for bilateral treaties. -->
<names variable="author">
<name initialize-with="." form="short" delimiter="-"/>
</names>
<text macro="date-legal"/>
- <!-- APA manual omits treaty source/report called for by Bluebook in favor of just URL.
- Both are included here, following the APA style used for all other item types
+ <!-- APA manual omits treaty source/report called for by Bluebook in favor of just URL.
+ Both are included here, following the APA style used for all other item types
to end the reference with a period, then give the URL afterward. -->
<text macro="container-legal"/>
</group>
@@ -1553,7 +1830,7 @@
<text variable="title" text-case="title"/>
</if>
<else-if type="hearing">
- <!-- APA uses a comma delimiter and omits "hearing before the" for hearings with testimony,
+ <!-- APA uses a comma delimiter and omits "hearing before the" for hearings with testimony,
but follows Bluebook rules (colon delimiter, prefix before the committee name) for
references to the whole hearing. We simply follow the Bluebook rules for both, but
use APA style capitalization (not capitalizing "Before" or the title of the hearing). -->
@@ -1609,14 +1886,14 @@
</group>
<choose>
<if variable="issued">
- <!-- APA manual includes "rev." before the revision year,
+ <!-- APA manual includes "rev." before the revision year,
but this isn't part of the Bluebook rules. -->
<date variable="issued">
<date-part name="year"/>
</date>
</if>
<else>
- <!-- Show proposal date for uncodified regualtions.
+ <!-- Show proposal date for uncodified regualtions.
Assume date is entered literally ala "proposed May 23, 2016".
TODO: Add 'proposed' term here if that becomes available -->
<date variable="submitted" form="text"/>
@@ -1682,10 +1959,10 @@
<text variable="genre"/>
<group delimiter=" ">
<choose>
- <!-- TODO: What was the logic for this? Do we still need this? -->
- <!-- If there is no session number or code/record title, print number.
- Is that trying to capture congressional reports/documents? -->
+ <!-- If there is no session number or code/record title, assume
+ assume the item is a congressional report and include 'No.' term. -->
<if variable="chapter-number container-title" match="none">
+ <!-- The item is a congressional report, rather than a bill or resultion. -->
<label variable="number" form="short" text-case="capitalize-first"/>
</if>
</choose>
@@ -1789,14 +2066,14 @@
</choose>
</macro>
<macro name="citation-locator">
- <!-- TODO: Add new locator types? -->
+ <!-- Abbreviate page and paragraph, leave other locator labels in long form, cf. Rule 8.13 -->
<group delimiter=" ">
<choose>
- <if locator="chapter">
- <label variable="locator" text-case="capitalize-first"/>
+ <if locator="page paragraph" match="any">
+ <label variable="locator" form="short"/>
</if>
<else>
- <label variable="locator" form="short"/>
+ <label variable="locator" text-case="capitalize-first"/>
</else>
</choose>
<text variable="locator"/>
@@ -1827,17 +2104,9 @@
</sort>
<layout>
<choose>
- <!-- TODO: Add new item types -->
<if type="bill hearing legal_case legislation regulation treaty" match="any">
<!-- Legal items have different orders and delimiters -->
- <choose>
- <if variable="DOI URL" match="any">
- <text macro="legal-cites"/>
- </if>
- <else>
- <text macro="legal-cites" suffix="."/>
- </else>
- </choose>
+ <text macro="legal-cites"/>
</if>
<else>
<group delimiter=" ">
diff --git a/Master/texmf-dist/tex/latex/citation-style-language/styles/ieee.csl b/Master/texmf-dist/tex/latex/citation-style-language/styles/ieee.csl
index 9ac71c63eaf..98b666b83e9 100644
--- a/Master/texmf-dist/tex/latex/citation-style-language/styles/ieee.csl
+++ b/Master/texmf-dist/tex/latex/citation-style-language/styles/ieee.csl
@@ -44,8 +44,8 @@
<category citation-format="numeric"/>
<category field="engineering"/>
<category field="generic-base"/>
- <summary>IEEE style as per the 2021 guidelines, V 01.29.2021.</summary>
- <updated>2024-01-11T14:39:58-05:00</updated>
+ <summary>IEEE style as per the 2023 guidelines, V 11.29.2023.</summary>
+ <updated>2024-07-15T10:30:07-04:00</updated>
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
</info>
<locale xml:lang="en">
@@ -56,6 +56,7 @@
</date>
<terms>
<term name="chapter" form="short">ch.</term>
+ <term name="chapter-number" form="short">ch.</term>
<term name="presented at">presented at the</term>
<term name="available at">available</term>
</terms>
@@ -120,6 +121,7 @@
<substitute>
<names variable="editor"/>
<names variable="translator"/>
+ <text macro="director"/>
</substitute>
</names>
</macro>
@@ -129,6 +131,12 @@
<label form="short" prefix=", " text-case="capitalize-first"/>
</names>
</macro>
+ <macro name="director">
+ <names variable="director">
+ <name and="text" et-al-min="7" et-al-use-first="1" initialize-with=". "/>
+ <et-al font-style="italic"/>
+ </names>
+ </macro>
<macro name="locators">
<group delimiter=", ">
<text macro="edition"/>
@@ -148,7 +156,7 @@
</macro>
<macro name="title">
<choose>
- <if type="bill book graphic legal_case legislation motion_picture song" match="any">
+ <if type="bill book graphic legal_case legislation motion_picture song standard software" match="any">
<text variable="title" font-style="italic"/>
</if>
<else>
@@ -374,6 +382,10 @@
<text macro="collection"/>
<text macro="publisher"/>
<text macro="issued"/>
+ <group delimiter=" ">
+ <label variable="chapter-number" form="short"/>
+ <text variable="chapter-number"/>
+ </group>
<text macro="page"/>
</group>
<text macro="access"/>
@@ -399,6 +411,26 @@
</group>
<text macro="access"/>
</else-if>
+ <else-if type="software">
+ <group delimiter=". " suffix=".">
+ <text macro="title"/>
+ <text macro="issued" prefix="(" suffix=")"/>
+ <text variable="genre"/>
+ <text macro="publisher"/>
+ </group>
+ <text macro="access"/>
+ </else-if>
+ <else-if type="article">
+ <group delimiter=", " suffix=".">
+ <text macro="title"/>
+ <text macro="issued"/>
+ <group delimiter=": ">
+ <text macro="publisher" font-style="italic"/>
+ <text variable="number"/>
+ </group>
+ </group>
+ <text macro="access"/>
+ </else-if>
<else-if type="webpage post-weblog post" match="any">
<group delimiter=", " suffix=".">
<text macro="title"/>
@@ -423,6 +455,18 @@
</group>
<text macro="access"/>
</else-if>
+ <else-if type="standard">
+ <group delimiter=", " suffix=".">
+ <text macro="title"/>
+ <group delimiter=" ">
+ <text variable="genre"/>
+ <text variable="number"/>
+ </group>
+ <text macro="geographic-location"/>
+ <text macro="issued"/>
+ </group>
+ <text macro="access"/>
+ </else-if>
<!-- Generic/Fallback Formats -->
<else-if type="bill book graphic legal_case legislation report song" match="any">
<group delimiter=", " suffix=". ">
diff --git a/Master/texmf-dist/tex/latex/cjs-rcs-article/cjs-rcs-article.cls b/Master/texmf-dist/tex/latex/cjs-rcs-article/cjs-rcs-article.cls
index 7a2093a2d49..1d4c0f01c12 100644
--- a/Master/texmf-dist/tex/latex/cjs-rcs-article/cjs-rcs-article.cls
+++ b/Master/texmf-dist/tex/latex/cjs-rcs-article/cjs-rcs-article.cls
@@ -8,7 +8,7 @@
%%
%% This is a generated file.
%%
-%% Copyright (C) 2023 Statistical Society of Canada | Société
+%% Copyright (C) 2023-2024 Statistical Society of Canada | Société
%% canadienne de statistique
%%
%% This file may be distributed and/or modified under the conditions
@@ -30,9 +30,9 @@
%% files cjs-rcs-article.cls, cjs-rcs-article-fr.tex, cjs-template.tex
%% and rcs-gabarit.tex.
%%
-\NeedsTeXFormat{LaTeX2e}[2009/09/24]
+\NeedsTeXFormat{LaTeX2e}[2021/06/01]
\ProvidesClass{cjs-rcs-article}%
- [2023/11/29 v1.0 Article class for The Canadian Journal of
+[2024/07/30 v1.1a Article class for The Canadian Journal of
Statistics | La revue canadienne de statistique]
\newif\ifCJS@review \CJS@reviewfalse % review version?
\newif\ifCJS@supplement \CJS@supplementfalse % supplementary material?
@@ -40,6 +40,7 @@
\newif\ifCJS@final \CJS@finalfalse % final version?
\newif\ifCJS@titlingfooter \CJS@titlingfooterfalse % footer on title page?
\newif\ifCJS@journalinfo \CJS@journalinfotrue % display journal info?
+\newif\ifCJS@specialack \CJS@specialackfalse % special acknowledgement?
\newif\ifCJS@fancybreak \CJS@fancybreaktrue % display fancy break?
\newif\ifCJS@history \CJS@historyfalse % history present?
\newif\ifCJS@corrauth \CJS@corrauthfalse % corresponding author?
@@ -60,7 +61,6 @@
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{memoir}}
\ProcessOptions\relax
\LoadClass[letterpaper,10pt,article,twoside]{memoir}
-\RequirePackage{iflang}
\RequirePackage[round,semicolon,authoryear,sectionbib]{natbib}
\RequirePackage{babel}
\RequirePackage[autolanguage]{numprint}
@@ -142,7 +142,7 @@
[
Extension = .otf,
Scale = 1,
- Ligatures = TeX
+ bold-style = TeX
]
\setmathfont{FiraMath-Regular}
[
@@ -176,12 +176,12 @@
\def\CJS@journalname@en{The Canadian Journal of Statistics}
\def\CJS@journalname@fr{La revue canadienne de statistique}
\def\CJS@journalname{\CJS@journalname@en~{\textbar}~\CJS@journalname@fr}
-\setbox\z@=\vbox{\sffamily\hbox{\CJS@journalname}\hbox{\bfseries V,}}
\newsavebox\CJS@journalornament
\setbox\CJS@journalornament=\vbox{%
+ \setbox\z@=\vbox{\sffamily\hbox{\CJS@journalname}\hbox{\bfseries V,}}
\setbox\tw@\hbox{\vrule \@width4pt\@height\ht\z@\@depth\dp\z@}
- \hbox{\textcolor{CJSpink}{\copy\tw@}\kern2pt%
- \textcolor{CJSred}{\copy\tw@}\kern2pt%
+ \hbox{\textcolor{CJSpink}{\copy\tw@}\kern2pt
+ \textcolor{CJSred}{\copy\tw@}\kern2pt
\textcolor{CJSyellow}{\copy\tw@}\kern6pt}}
\newcommand*\makejournalinfo{%
\mbox{%
@@ -193,12 +193,12 @@
No.~\CJS@issue, %
\CJS@year, %
\CJS@firstpage--\thelastpage}}}}
-\newcommand*\CJS@setheadfootfont{%
+\def\CJS@setheadfootfont{%
\firalining\fontsize{9}{13}\selectfont}
\newlength\CJS@headdivheight
\settoheight\CJS@headdivheight{\CJS@setheadfootfont 1}
\setlength\CJS@headdivheight{0.9\CJS@headdivheight}
-\newcommand*\CJS@headdivrule{%
+\def\CJS@headdivrule{%
\rule[0.05\CJS@headdivheight]{0.75\normalrulethickness}{\CJS@headdivheight}}
\newlength\CJS@pagenumwidth
\settowidth\CJS@pagenumwidth{9\qquad}
@@ -480,15 +480,38 @@
\iflanguage{french}{Futur emplacement de la déclaration de licence.}%
{Licence statement to appear here.}}
\begin{figure}[!b]
- \raisebox{0pt}[0pt][\footskip]{%
+ \raisebox{0pt}[0pt][\dimexpr\CJS@licenceht-\footskip\relax]{%
\vbox{%
\CJS@setlicencefont
\rule{\textwidth}{\normalrulethickness}
\parbox[t][\CJS@licenceht][t]{\textwidth}{%
+ \ifCJS@specialack\CJS@specialackstatement\fi
\ifCJS@final\CJS@licence \else\textit\CJS@notice \fi}}}
\end{figure}
\fi
}}
+\newcommand*\CJS@adnibyline{for the Alzheimer’s Disease Neuroimaging Initiative}
+\newcommand*\CJS@adnistatement{%
+ Data used in preparation of this article were obtained
+ from the \href{https://adni.loni.usc.edu}{Alzheimer’s Disease Neuroimaging Initiative}
+ (ADNI) database. As such, the investigators within the ADNI
+ contributed to the design and implementation of ADNI and/or provided
+ data but did not participate in the analysis or writing of this
+ report. A complete listing of ADNI investigators can be found at:
+ \url{https://adni.loni.usc.edu/wp-content/uploads/how_to_apply/ADNI_Acknowledgement_List.pdf}.}
+\newcommand*\CJS@admcbyline{for the Alzheimer’s Disease Metabolomics Consortium}
+\newcommand*\CJS@admcstatement{%
+ Data used in preparation of this article were generated by the
+ Alzheimer’s Disease Metabolomics Consortium (ADMC). As such, the
+ investigators within the ADMC provided data but did not participate
+ in analysis or writing of this report. A complete listing of ADMC
+ investigators can be found at:
+ \url{https://sites.duke.edu/adnimetab/team/}.}
+\newcommand*\ADNIacknowledgement{%
+ \specialack{\CJS@adnibyline}{\CJS@adnistatement}}
+\newcommand*\ADMCacknowledgement{%
+ \renewcommand*\CJS@specialackmark{\textsuperscript{\ensuremath{**}}}
+ \specialack{\CJS@admcbyline}{\CJS@admcstatement}}
\def\CJS@supplement{}
\def\CJS@supplementname@en{Supplementary material}
\def\CJS@supplementname@fr{Matériel additionnel}
@@ -535,10 +558,10 @@
\endgroup}
\fi
\fi}
-\newcommand*\CJS@setlicencefont{%
+\def\CJS@setlicencefont{%
\firalining\fontsize{8pt}{9pt}\selectfont}
\newlength\CJS@licenceht
-\newcommand\CJS@licencesample{%
+\def\CJS@licencesample{%
{\ccbyncnd*} 2023 The Authors. The Canadian Journal of
Statistics~{\textbar}~La revue canadienne de statistique published
by Wiley Periodicals LLC on behalf of Statistical Society of
@@ -552,41 +575,43 @@
\newcommand\CJS@measurelicence{%
\setbox\CJS@licencebox=\vbox{%
\CJS@setlicencefont
- \ifdefempty{\CJS@licence}{\CJS@licencesample}{\CJS@licence}}
+ \ifCJS@specialack\CJS@specialackstatement\fi
+ \ifdefempty{\CJS@licence}{\CJS@licencesample}{\CJS@licence}}%
\setlength\CJS@licenceht{\dimexpr\ht\CJS@licencebox+\dp\CJS@licencebox}}
\def\CJS@licence{}
\newcommand\licence[1]{\renewcommand*\CJS@licence{#1}}
\let\license\licence
\newcommand*\ccby{\ccby@\@ifstar{~\faCopyright[regular]}\relax}
-\newcommand*\ccby@{\mbox{%
- \faCreativeCommons\kern0.1em%
- \faCreativeCommonsBy\kern0.1em}}
+\def\CJS@fakern{\kern0.1em}
+\def\ccby@{\mbox{%
+ \faCreativeCommons\CJS@fakern
+ \faCreativeCommonsBy\CJS@fakern}}
\newcommand*\ccbysa{\ccbysa@\@ifstar{~\faCopyright[regular]}\relax}
-\newcommand*\ccbysa@{\mbox{%
- \faCreativeCommons\kern0.1em%
- \faCreativeCommonsBy\kern0.1em%
+\def\ccbysa@{\mbox{%
+ \faCreativeCommons\CJS@fakern
+ \faCreativeCommonsBy\CJS@fakern
\faCreativeCommonsSa}}
\newcommand*\ccbync{\ccbync@\@ifstar{~\faCopyright[regular]}\relax}
-\newcommand*\ccbync@{\mbox{%
- \faCreativeCommons\kern0.1em%
- \faCreativeCommonsBy\kern0.1em%
+\def\ccbync@{\mbox{%
+ \faCreativeCommons\CJS@fakern
+ \faCreativeCommonsBy\CJS@fakern
\faCreativeCommonsNc}}
\newcommand*\ccbyncsa{\ccbyncsa@\@ifstar{~\faCopyright[regular]}\relax}
-\newcommand*\ccbyncsa@{\mbox{%
- \faCreativeCommons\kern0.1em%
- \faCreativeCommonsBy\kern0.1em%
- \faCreativeCommonsNc\kern0.1em%
+\def\ccbyncsa@{\mbox{%
+ \faCreativeCommons\CJS@fakern
+ \faCreativeCommonsBy\CJS@fakern
+ \faCreativeCommonsNc\CJS@fakern
\faCreativeCommonsSa}}
\newcommand*\ccbynd{\ccbynd@\@ifstar{~\faCopyright[regular]}\relax}
-\newcommand*\ccbynd@{\mbox{%
- \faCreativeCommons\kern0.1em%
- \faCreativeCommonsBy\kern0.1em%
+\def\ccbynd@{\mbox{%
+ \faCreativeCommons\CJS@fakern
+ \faCreativeCommonsBy\CJS@fakern
\faCreativeCommonsNd}}
\newcommand*\ccbyncnd{\ccbyncnd@\@ifstar{~\faCopyright[regular]}\relax}
-\newcommand*\ccbyncnd@{\mbox{%
- \faCreativeCommons\kern0.1em%
- \faCreativeCommonsBy\kern0.1em%
- \faCreativeCommonsNc\kern0.1em%
+\def\ccbyncnd@{\mbox{%
+ \faCreativeCommons\CJS@fakern
+ \faCreativeCommonsBy\CJS@fakern
+ \faCreativeCommonsNc\CJS@fakern
\faCreativeCommonsNd}}
\let\Pr\relax
\DeclareMathOperator{\Pr}{P}
@@ -600,10 +625,12 @@
\let\prdist\mathcal
\fi
\iftutex
- \newcommand*\mat[1]{\symbf{#1}}
+ \let\mat\symbf
+ \let\matit\symbfit
\newcommand*\trsp{^{\mkern-1.5mu\symsfup{T}}}
\else
- \newcommand*\mat[1]{\mathbf{#1}}
+ \let\mat\mathbf
+ \let\matit\mathbfit
\newcommand*\trsp{^{\mkern-1.5mu\mathsf{T}}}
\fi
\DeclareMathOperator{\tr}{tr}
@@ -646,7 +673,7 @@
\theoremstyle{remark}
\newtheorem{remark}{\iflanguage{french}{\CJS@remarkname@fr}{\CJS@remarkname@en}}
\renewcommand*\eqref[1]{\hyperref[{#1}]{\textup{(\ref*{#1})}}}
-\newcommand*\proglang[1]{{\hyphenchar\font=-1 #1}}
+\newrobustcmd*\proglang[1]{\mbox{#1}}
\newcommand*\Rlang{\proglang{R}}
\newcommand*\SASlang{\proglang{SAS}}
\newcommand*\SPSSlang{\proglang{SPSS}}
@@ -654,20 +681,23 @@
\newcommand*\Pylang{\proglang{Python}}
\newcommand*\Julialang{\proglang{Julia}}
\newcommand*\Clang{\proglang{C}}
-\newcommand*\CJS@plus{%
+\newcommand*\Cpplang{\proglang{C\CJS@plus\CJS@plus}}
+\def\CJS@plus{%
\ifx\f@family\sfdefault%
\protect\hspace{-.04em}\protect\raisebox{-.125ex}{\larger+}%
\else%
\protect\hspace{-.03em}\protect\raisebox{.25ex}{\smaller+}%
\fi}
-\newcommand*\Cpplang{\proglang{C\CJS@plus\CJS@plus}}
\let\pkg\textbf
\newcommand\code{\bgroup\@makeother\_\@makeother\~\@makeother\$\code@}
\def\code@#1{{\normalfont\ttfamily\hyphenchar\font=-1 #1}\egroup}
\renewcommand*\appendix{\par
\setcounter{section}{0}
\gdef\thesection{\@Alph\c@section}}
-\renewcommand{\@memb@bsec}{\section*{\bibname}\prebibhook}
+\renewcommand{\@memb@bsec}{%
+ \section*{\bibname}%
+ \addcontentsline{toc}{section}{\bibname}%
+ \prebibhook}
\setlocalecaption{english}{bib}{References}
\setlocalecaption{french}{bib}{Références}
\bibliographystyle{\iflanguage{french}{cjs-rcs-fr}{cjs-rcs-en}}
@@ -741,15 +771,25 @@
\item[\iflanguage{french}{\CJS@acceptedname@fr}{\CJS@acceptedname@en}]
\DTMusedate{accepted}}{\relax}%
\end{CJS@historylist}\par}
-\setbox\@ne=\vbox{\hbox{\firaoldstyle\small l4}}
\newsavebox\CJS@historyornament
\setbox\CJS@historyornament=\vbox{%
- \setbox\thr@@\hbox{\vrule \@width1.5pt\@height\ht\@ne\@depth\dp\@ne}
- \hbox{\textcolor{CJSpink}{\copy\thr@@}\kern.75pt%
- \textcolor{CJSred}{\copy\thr@@}\kern.75pt%
- \textcolor{CJSyellow}{\copy\thr@@}\kern3pt}}
-\newcommand*\CJS@historybox{
+ \setbox\z@=\vbox{\hbox{\firaoldstyle\small l4}}
+ \setbox\tw@\hbox{\vrule \@width1.5pt\@height\ht\z@\@depth\dp\z@}
+ \hbox{\textcolor{CJSpink}{\copy\tw@}\kern.75pt
+ \textcolor{CJSred}{\copy\tw@}\kern.75pt
+ \textcolor{CJSyellow}{\copy\tw@}\kern3pt}}
+\def\CJS@historybox{
\par\addvspace{2\baselineskip}\noindent%
\smash{\box\CJS@historyornament \CJS@history}\par%
\vspace*{40pt}}
\AtEndDocument{\ifCJS@journalinfo\ifCJS@history\CJS@historybox\fi\fi}
+\def\CJS@specialackstatement{}
+\newcommand*\specialack[2]{%
+ \ifstrempty{#1}{}{%
+ \author{#1\CJS@specialackmark}}
+ \ifstrempty{#2}{}{%
+ \CJS@specialacktrue
+ \renewcommand*\CJS@specialackstatement{\CJS@specialackmark\,#2\medskip\newline}}}
+\def\CJS@specialackmark{\textsuperscript{\ensuremath{*}}}
+\newcommand*\specialackmark[1]{%
+ \renewcommand*\CJS@specialackmark{#1}}
diff --git a/Master/texmf-dist/tex/latex/coloredtheorem/coloredtheorem.sty b/Master/texmf-dist/tex/latex/coloredtheorem/coloredtheorem.sty
index 4e128bf80bb..4d24f770564 100644
--- a/Master/texmf-dist/tex/latex/coloredtheorem/coloredtheorem.sty
+++ b/Master/texmf-dist/tex/latex/coloredtheorem/coloredtheorem.sty
@@ -14,7 +14,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[2020/06/01]
\ProvidesPackage{coloredtheorem}
- [2024/04/03 v1.0.2 - A colorful boxed theorem environment]
+ [2024/09/15 v1.0.4 - A colorful boxed theorem environment]
\RequirePackage{tcolorbox}
\tcbuselibrary{breakable}
@@ -27,10 +27,11 @@
\expandafter\gdef\csname\tcbth list#1name\endcsname{List of #2s}%
\expandafter\gdef\csname#1autorefname\endcsname{#2}%
\AtEndPreamble{%
- \ifdefined\crefname\expandafter\crefname\csname\tcbth#1\endcsname{#2}{#2s}\fi}%
+ \ifdefined\crefname\expandafter\crefname\expandafter{\tcbth#1}{#2}{#2s}\fi}%
\expandafter\gdef\csname\tcbth listof#1s\endcsname
{%
- \section*{\csname\tcbth list#1name\endcsname}%
+ \ifdefined\chapter\chapter*{\csname\tcbth list#1name\endcsname}%
+ \else\section*{\csname\tcbth list#1name\endcsname}\fi%
\expandafter\@starttoc\expandafter{lo#1}%
}
\expandafter\NewDocumentEnvironment\expandafter{\tcbth#1} {O{} m O{}}%
@@ -53,6 +54,9 @@
~\csname the\tcbth#1\endcsname\fi}~~##2},
#3, ##3,
]%
+ \let\origpar=\par%
+ \def\par{\origpar\medskip}%
+ \ignorespaces%
}{% \end{tcb<SOMETHING>}
\end{tcolorbox}%
\end{center}%
diff --git a/Master/texmf-dist/tex/latex/colortbl/colortbl.sty b/Master/texmf-dist/tex/latex/colortbl/colortbl.sty
index 49b7ef6e9ed..092775d1da8 100644
--- a/Master/texmf-dist/tex/latex/colortbl/colortbl.sty
+++ b/Master/texmf-dist/tex/latex/colortbl/colortbl.sty
@@ -15,7 +15,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[1995/06/01]
\ProvidesPackage{colortbl}
- [2024/05/26 v1.0h Color table columns (DPC)]
+ [2024/07/06 v1.0i Color table columns (DPC)]
\edef\@tempa{%
\noexpand\AtEndOfPackage{%
\catcode`\noexpand\^^A\the\catcode`\^^A\relax}}
@@ -375,8 +375,12 @@
\next}
\lowercase{\def\HH@spacelet} {\futurelet\@tempb \HH@loop}
\fi}
+\ExplSyntaxOn
+\cs_if_exist:NF\tag_mc_begin:n{
+ \cs_new:Npn\tag_mc_begin:n#1{}
+ \cs_new:Npn\tag_mc_end:{}
+}
\AtBeginDocument{
- \ifx\longtable\@undefined\else
\def\LT@@hline{%
\ifx\LT@next\hline
\global\let\LT@next\@gobble
@@ -386,7 +390,10 @@
\else
\gdef\CT@LT@sep{%
\multispan\LT@cols{%
- \CT@drsc@\leaders\hrule\@height\doublerulesep\hfill}\cr}%
+ \tag_mc_begin:n{artifact}
+ \CT@drsc@\leaders\hrule\@height\doublerulesep\hfill
+ \tag_mc_end: \int_gdecr:N \g__tbl_row_int
+ }\cr}%
\fi
\else
\global\let\LT@next\empty
@@ -395,13 +402,20 @@
\fi
\ifnum0=`{\fi}%
\multispan\LT@cols
- {\CT@arc@\leaders\hrule\@height\arrayrulewidth\hfill}\cr
+ {\tag_mc_begin:n{artifact}
+ \CT@arc@\leaders\hrule\@height\arrayrulewidth\hfill
+ \tag_mc_end: \int_gdecr:N \g__tbl_row_int
+ }\cr
\CT@LT@sep
\multispan\LT@cols
- {\CT@arc@\leaders\hrule\@height\arrayrulewidth\hfill}\cr
+ {\tag_mc_begin:n{artifact}
+ \CT@arc@\leaders\hrule\@height\arrayrulewidth\hfill
+ \tag_mc_end: \int_gdecr:N \g__tbl_row_int
+ }\cr
\noalign{\penalty\@M}%
\LT@next}
- \fi}
+ }
+\ExplSyntaxOff
\endinput
%%
%% End of file `colortbl.sty'.
diff --git a/Master/texmf-dist/tex/latex/commalists-tools/commalists-tools.sty b/Master/texmf-dist/tex/latex/commalists-tools/commalists-tools.sty
new file mode 100644
index 00000000000..7809c82721a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/commalists-tools/commalists-tools.sty
@@ -0,0 +1,188 @@
+% Author : C. Pierquet
+% licence : Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf
+
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{commalists-tools}[2024/09/25 0.1.0 Basic operations for numeral comma separated lists]
+
+%------History
+% 0.1.0 Initial version
+
+%------Packages
+\RequirePackage{listofitems}
+\RequirePackage{xintexpr}
+\RequirePackage{xstring}
+
+%-----Macros (LaTeX3...) for sorting
+\ExplSyntaxOn
+\NewDocumentCommand\sortasclist{ s m }
+{
+ \clist_set:Nx \l_foo_clist {#2}
+ \clist_sort:Nn \l_foo_clist{
+ \int_compare:nNnTF { ##1 } > { ##2 }
+ { \sort_return_swapped: }
+ { \sort_return_same: }
+ }
+ \IfBooleanTF{#1}%if star := just printing // if not, storing
+ {%
+ {\l_foo_clist}%
+ }%
+ {%
+ \xdef#2{\l_foo_clist}%
+ }%
+}
+
+\NewDocumentCommand\sortdeslist{ s m }
+{
+ \clist_set:Nx \l_foo_clist {#2}
+ \clist_sort:Nn \l_foo_clist{
+ \int_compare:nNnTF { ##1 } < { ##2 }
+ { \sort_return_swapped: }
+ { \sort_return_same: }
+ }
+ \IfBooleanTF{#1}%if star := just printing // if not, storing
+ {%
+ {\l_foo_clist}%
+ }%
+ {%
+ \xdef#2{\l_foo_clist}%
+ }%
+}
+\ExplSyntaxOff
+
+%----Macros (LaTeX2)
+\NewDocumentCommand\addvalinlist{ s m m }{%
+ \IfBooleanTF{#1}%if star := just printing // if not, storing
+ {%
+ #3,#2%
+ }%
+ {%
+ \xdef#3{#3,#2}%
+ }%
+}
+
+\NewDocumentCommand\removevalinlist{ s m m }{%
+ \readlist*\tmplistread{#3}%
+ \xdef\tmpresremovelist{}%
+ \xintFor* ##1 in {\xintSeq{1}{\tmplistreadlen}}\do{%
+ \xintifboolexpr{ \tmplistread[##1] == #2}%
+ {}%
+ {%
+ \xintifboolexpr{ ##1 == 1 }%
+ {%
+ \xdef\tmpresremovelist{\tmplistread[##1]}%
+ }%
+ {%
+ \xdef\tmpresremovelist{\tmpresremovelist,\tmplistread[##1]}%
+ }%
+ }%
+ }%
+ \IfBooleanTF{#1}%if star := just printing // if not, storing
+ {%
+ \tmpresremovelist%
+ }%
+ {%
+ \xdef#3{\tmpresremovelist}%
+ }%
+}
+
+\NewDocumentCommand\boolvalinlist{ m m O{\resisinlist} }{%
+ \IfSubStr{,#2,}{,#1,}{\def#3{1}}{\def#3{0}}%
+}
+
+\NewDocumentCommand\xintifvalinlist{ m m m m }{%
+ \IfSubStr{,#2,}{,#1,}{\xdef\RESTMPVALUE{1}}{\xdef\RESTMPVALUE{0}}%
+ \xintifboolexpr{ \RESTMPVALUE == 1}{#3}{#4}%
+}
+
+\NewDocumentCommand\countvalinlist{ s m m O{\rescount} }{%
+ \readlist*\tmplistread{#3}%
+ \xdef#4{0}%
+ \xintFor* ##1 in {\xintSeq{1}{\tmplistreadlen}}\do{%
+ \xintifboolexpr{ \tmplistread[##1] == #2}%
+ {%
+ \xdef#4{\fpeval{#4+1}}%
+ }%
+ {}%
+ }%
+ \IfBooleanT{#1}%if star := just printing // if not, storing
+ {%
+ #4%
+ }%
+}
+
+\NewDocumentCommand\minoflist{ s m O{\resmin} }{%
+ \IfBooleanTF{#1}%
+ {%
+ \fpeval{min(#2)}%
+ }%
+ {%
+ \xdef#3{\fpeval{min(#2)}}%
+ }%
+}
+
+\NewDocumentCommand\maxoflist{ s m O{\resmax} }{%
+ \IfBooleanTF{#1}%
+ {%
+ \fpeval{max(#2)}%
+ }%
+ {%
+ \xdef#3{\fpeval{max(#2)}}%
+ }%
+}
+
+\NewDocumentCommand\meanoflist{ s m O{\resmean} }{%
+ \xdef#3{0}%
+ \readlist*\tmpmeanlist{#2}%
+ \xintFor* ##1 in {\xintSeq{1}{\tmpmeanlistlen}}\do{%
+ \xdef#3{\fpeval{#3+\tmpmeanlist[##1]}}%
+ }%
+ \xdef#3{\fpeval{(#3)/\tmpmeanlistlen}}%
+ \IfBooleanT{#1}%if star := just printing // if not, storing
+ {%
+ #3%
+ }%
+}
+
+\NewDocumentCommand\sumoflist{ s m O{\ressum} }{%
+ \xdef#3{0}%
+ \readlist*\tmpsumlist{#2}%
+ \xintFor* ##1 in {\xintSeq{1}{\tmpsumlistlen}}\do{%
+ \xdef#3{\fpeval{#3+\tmpsumlist[##1]}}%
+ }%
+ \IfBooleanT{#1}%if star := just printing // if not, storing
+ {%
+ #3%
+ }%
+}
+
+\NewDocumentCommand\prodoflist{ s m O{\resprod} }{%
+ \xdef#3{1}%
+ \readlist*\tmpprodlist{#2}%
+ \xintFor* ##1 in {\xintSeq{1}{\tmpprodlistlen}}\do{%
+ \xdef#3{\fpeval{(#3)*\tmpprodlist[##1]}}%
+ }%
+ \IfBooleanT{#1}%if star := just printing // if not, storing
+ {%
+ #3%
+ }%
+}
+
+\NewDocumentCommand\reverselist{ s m O{\resrevlist} }{%
+ \readlist*\tmpreverselist{#2}%
+ \xdef#3{\tmpreverselist[-1]}%
+ \xintFor* ##1 in {\xintSeq{2}{\tmpreverselistlen}}\do{%
+ \xdef#3{#3,\tmpreverselist[-##1]}%
+ }%
+ \IfBooleanT{#1}%if star := just printing // if not, storing
+ {%
+ #3%
+ }%
+}
+
+\NewDocumentCommand\getvaluefromlist{ s m m O{\resmyelt} }{%
+ \readlist*\tmpreadlist{#2}%
+ \xdef#4{\tmpreadlist[#3]}%
+ \IfBooleanT{#1}{#4}%
+}
+
+\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/cs-techrep/cs-techrep.cls b/Master/texmf-dist/tex/latex/cs-techrep/cs-techrep.cls
index d84b85a3bca..e76a83ba0cf 100644
--- a/Master/texmf-dist/tex/latex/cs-techrep/cs-techrep.cls
+++ b/Master/texmf-dist/tex/latex/cs-techrep/cs-techrep.cls
@@ -2,11 +2,23 @@
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{cs-techrep}[2024/04/10 Technical Reports in Computer Science and Software Engineering v0.2]
+\ProvidesClass{cs-techrep}[2024/09/16 Technical Reports in Computer Science and Software Engineering v0.4]
+\newcounter{cstechrep@subfigtracker}
+\newcounter{cstechrep@subcaptiontracker}
\newcounter{cstechrep@pbalancetracker}
\newcounter{cstechrep@flushendtracker}
+
+\DeclareOption{subfig}{
+ \setcounter{cstechrep@subfigtracker}{1}
+ \typeout{cs-techrep class: subfig option is set (use subfloat command).}
+}
+\DeclareOption{subcaption}{
+ \setcounter{cstechrep@subcaptiontracker}{1}
+ \typeout{cs-techrep class: subcaption option is set (use subfigure command).}
+}
+
\DeclareOption{onecolumn}{\OptionNotUsed} % IEEE option onecolumn will be ignored
\DeclareOption{pbalance}{
@@ -39,7 +51,7 @@
\DefcstechrepVar{Department} % e.g., Department of Electrical Engineering, Media and Computer Science
\DefcstechrepVar{Institution} % e.g., Ostbayerische Technische Hochschule Amberg-Weiden
\DefcstechrepVar{Address} % e.g., Amberg, Germany
-\DefcstechrepVar{Series} % e.g., Technical Reports
+\DefcstechrepVar{Type} % e.g., Technical Report
\DefcstechrepVar{Year} % e.g., 2023
\DefcstechrepVar{Title}
\DefcstechrepVar{Month} % e.g., 6 (for June)
@@ -88,7 +100,7 @@
\RequirePackage[cmyk, table]{xcolor}
-\RequirePackage[nolist]{acronym}
+\RequirePackage[nolist,smaller]{acronym}
\RequirePackage{listings}
@@ -181,7 +193,7 @@
\RequirePackage{booktabs}
-\RequirePackage{paralist}
+\RequirePackage[alwaysadjust]{paralist}
\RequirePackage[
@@ -316,7 +328,7 @@
\RequirePackage{pdflscape}
\RequirePackage{afterpage}
-\RequirePackage[shortcuts]{extdash} % Use \-/ for a breakable dash that does not prevent the remainer of the word to be hyphenated
+\RequirePackage[hyperxmp=false,lang=English]{doclicense}
\makeatletter
\def\ps@IEEEtitlepagestyle{
@@ -328,7 +340,9 @@
\begin{minipage}{0.8\textwidth}
\centering
% Creative Commons / Open Access:
- \href{https://creativecommons.org/licenses/by/4.0/}{\ccby{} This work is licensed under a Creative Commons Attribution 4.0 International (CC BY 4.0) License.}
+ %\href{https://creativecommons.org/licenses/by/4.0/}{\ccby{} This work is %licensed under a Creative Commons Attribution 4.0 International (CC BY 4.0) %License.}
+ % License based on doclicense package:
+ \href{\doclicenseURL}{\doclicenseIcon{} This work is licensed under a \doclicenseLongNameRef{} (\doclicenseNameRef{}) license.}
% Citation advice:
\\Please cite as: \fullcite{selfref}.
\end{minipage}
@@ -358,7 +372,17 @@
\cstechrepAddress
}}
-\IEEEspecialpapernotice{\cstechrepSeries: \cstechrepNumber, \citemonth{selfref} \cstechrepYear}
+\IEEEspecialpapernotice{\cstechrepType: \cstechrepNumber, \citemonth{selfref} \cstechrepYear}
+
+\ifnum\value{cstechrep@subfigtracker}=1
+ \typeout{cs-techrep class: load subfig package (use subfloat command).}
+ \RequirePackage[caption=false,font=footnotesize]{subfig}
+\fi
+\ifnum\value{cstechrep@subcaptiontracker}=1
+ \typeout{cs-techrep class: load subcaption package (use subfigure command).}
+ \RequirePackage{subcaption}
+ \captionsetup[subfigure]{labelformat=parens,font=footnotesize}
+\fi
\ifnum\value{cstechrep@pbalancetracker}=1
\typeout{cs-techrep class: load pbalance package.}
@@ -369,6 +393,9 @@
\RequirePackage{flushend}
\fi
+
+\RequirePackage[shortcuts]{extdash} % Use \-/ for a breakable dash that does not prevent the remainer of the word to be hyphenated
+
\endinput
%%
%% End of file `cs-techrep.cls'.
diff --git a/Master/texmf-dist/tex/latex/csthm/csthm.sty b/Master/texmf-dist/tex/latex/csthm/csthm.sty
new file mode 100644
index 00000000000..e12fbdc192e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/csthm/csthm.sty
@@ -0,0 +1,146 @@
+%%
+%% This is file `csthm.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% csthm.dtx (with options: `package')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2024 by Agni Datta <agnidatta.org@gmail.com>
+%%
+%% This file may be distributed and/or modified under the conditions of
+%% the LaTeX Project Public License, either version 1.3c of this license
+%% or (at your option) any later version. The latest version of this
+%% license is in:
+%%
+%% http://www.latex-project.org/lppl.txt
+%%
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008/05/04 or later.
+%%
+\NeedsTeXFormat{LaTeX2e}[1999/12/01]
+\ProvidesPackage{csthm}
+ [2024/08/31 v1.2 Theorem Environments for Computer Science]
+\newif\if@csthm@loadcleveref
+\DeclareOption{cleveref}{\@csthm@loadclevereftrue}
+\ProcessOptions\relax
+
+\RequirePackage{amsmath}
+\RequirePackage{amssymb}
+\RequirePackage{amsthm}
+\RequirePackage{enumitem}
+\RequirePackage{thmtools}
+
+\if@csthm@loadcleveref
+\AtBeginDocument{%
+\@ifpackageloaded{hyperref}{%
+\RequirePackage{cleveref}
+}{%
+\PackageWarning{csthm}{The 'cleveref' option was set, but 'hyperref' is not loaded. Skipping 'cleveref' loading.}
+}%
+}
+\fi
+
+\declaretheoremstyle[
+spaceabove=\topsep,
+spacebelow=\topsep,
+headfont=\scshape,
+notefont=\scshape,
+bodyfont=\normalfont,
+postheadspace=5pt,
+numberwithin=section,
+qed=$\scriptstyle\star$,
+headpunct={.}
+]{thmstyle}
+
+\declaretheoremstyle[
+spaceabove=\topsep,
+spacebelow=\topsep,
+headfont=\bfseries,
+notefont=\bfseries,
+bodyfont=\normalfont,
+postheadspace=5pt,
+numberwithin=section,
+qed=$\scriptstyle\maltese$,
+headpunct={.}
+]{defstyle}
+
+\declaretheoremstyle[
+spaceabove=\topsep,
+spacebelow=\topsep,
+headfont=\itshape,
+notefont=\itshape,
+bodyfont=\normalfont,
+postheadspace=5pt,
+numberwithin=section,
+qed=$\scriptstyle\maltese$,
+headpunct={.}
+]{remarkstyle}
+
+\declaretheoremstyle[
+spaceabove=\topsep,
+spacebelow=\topsep,
+headfont=\sffamily\scshape,
+notefont=\sffamily\scshape,
+bodyfont=\normalfont\sffamily,
+postheadspace=5pt,
+numberwithin=section,
+qed=$\scriptstyle\maltese$,
+headpunct={.}
+]{hltstyle}
+
+\declaretheorem[style=thmstyle,name=Theorem]{theorem}
+\declaretheorem[style=defstyle,sibling=theorem]{fact}
+\declaretheorem[style=thmstyle,sibling=theorem]{assumption}
+\declaretheorem[style=thmstyle,sibling=theorem]{claim}
+\declaretheorem[style=thmstyle,sibling=theorem]{conjecture}
+\declaretheorem[style=thmstyle,sibling=theorem]{corollary}
+\declaretheorem[style=thmstyle,sibling=theorem]{lemma}
+\declaretheorem[style=thmstyle,sibling=theorem]{property}
+\declaretheorem[style=thmstyle,sibling=theorem]{proposition}
+
+\declaretheorem[style=defstyle,sibling=theorem]{definition}
+\declaretheorem[style=defstyle,sibling=theorem]{example}
+\declaretheorem[style=defstyle,sibling=theorem]{exercise}
+\declaretheorem[style=defstyle,sibling=theorem]{problem}
+\declaretheorem[style=defstyle,sibling=theorem]{question}
+
+\declaretheorem[style=remarkstyle,sibling=theorem]{note}
+\declaretheorem[style=remarkstyle,sibling=theorem]{remark}
+\declaretheorem[style=remarkstyle,sibling=theorem]{solution}
+
+\declaretheorem[style=hltstyle,name=Important]{important}
+\declaretheorem[style=hltstyle]{highlight}
+\declaretheorem[style=hltstyle]{keypoint}
+
+\newlist{caseList}{enumerate}{1}
+\setlist[caseList]{label=\textbf{Case~\arabic*:},leftmargin=*}
+
+\NewDocumentEnvironment{case}{O{}}{%
+\begin{caseList}[#1]%
+}{%
+\end{caseList}%
+}
+
+\newlist{axiomList}{enumerate}{1}
+\setlist[axiomList]{label=\textbf{Axiom~\Alph*:}, leftmargin=*}
+
+\NewDocumentEnvironment{axiom}{O{}}{%
+\begin{axiomList}[#1]%
+}{%
+\end{axiomList}%
+}
+
+\renewcommand\qedsymbol{$\scriptstyle\blacksquare$}
+
+\providecommand{\accentcolor}{black}
+
+\providecommand{\csthmpkg}{\textsf{csthm}}
+\providecommand{\email}[1]{\href{mailto:#1}{\texttt{#1}}}
+
+\newcommand{\setaccentcolor}[1]{\renewcommand{\accentcolor}{#1}}
+\endinput
+%%
+%% End of file `csthm.sty'.
diff --git a/Master/texmf-dist/tex/latex/csvsimple/csvsimple-l3.sty b/Master/texmf-dist/tex/latex/csvsimple/csvsimple-l3.sty
index 849aa79aece..3d8d1484b66 100644
--- a/Master/texmf-dist/tex/latex/csvsimple/csvsimple-l3.sty
+++ b/Master/texmf-dist/tex/latex/csvsimple/csvsimple-l3.sty
@@ -1,4 +1,4 @@
-%% The LaTeX package csvsimple - version 2.6.1 (2024/05/16)
+%% The LaTeX package csvsimple - version 2.7.0 (2024/09/27)
%% csvsimple-l3.sty: Simple LaTeX CSV file processing (LaTeX3)
%%
%% -------------------------------------------------------------------------------------------
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README.md
%%
\NeedsTeXFormat{LaTeX2e}[2023-11-01]
-\ProvidesExplPackage{csvsimple-l3}{2024/05/16}{2.6.1}
+\ProvidesExplPackage{csvsimple-l3}{2024/09/27}{2.7.0}
{LaTeX3 CSV file processing}
@@ -148,9 +148,6 @@
Therefore,~the~macro~#2 is~not~defined.
}
-\msg_new:nnn { csvsimple }{ empty-head }
- { File~'#1'~starts~with~an~empty~line~(empty~head)!.}
-
\msg_new:nnn { csvsimple }{ file-error }
{ File~'#1'~not~existent,~not~readable,~or~empty!}
@@ -167,6 +164,8 @@
{ Call~of~CSV-Sorter~failed! }
{ See~log~file~'\l__csvsim_csvsorter_log_str'. }
+\msg_new:nnn { csvsimple }{ data-missing }
+ { File~'#1'~does~not~contain~(accepted)~data~lines!~The~result~may~be~unpleasant.}
%---- core loop processing
@@ -227,18 +226,18 @@
\cs_new_protected_nopar:Npn \__csvsim_read_head:
{
- \__csvsim_read_line:
- \tl_if_eq:NNTF \csvline \c__csvsim_par_tl
+ \bool_do_while:nn
{
- \msg_error:nne { csvsimple }{ empty-head }{ \g__csvsim_filename_str }
+ \bool_lazy_or_p:nn { \tl_if_eq_p:NN \csvline \c__csvsim_par_tl }{ \tl_if_blank_p:o \csvline }
}
{
- \int_gzero:N \g_csvsim_columncount_int
- \__csvsim_scan_line:
- \bool_if:NT \g__csvsim_colnames_detection_bool
- {
- \int_step_function:nN \g_csvsim_columncount_int \__csvsim_process_head_name:n
- }
+ \__csvsim_read_line:
+ }
+ \int_gzero:N \g_csvsim_columncount_int
+ \__csvsim_scan_line:
+ \bool_if:NT \g__csvsim_colnames_detection_bool
+ {
+ \int_step_function:nN \g_csvsim_columncount_int \__csvsim_process_head_name:n
}
}
@@ -395,10 +394,15 @@
}
\__csvsim_set_colnames:
\seq_gclear:N \g__csvsim_colname_seq
- \bool_if:NF \g__csvsim_line_firstline_bool
+ \bool_if:NT \g__csvsim_line_firstline_bool
{
- \g__csvsim_hook_late_after_last_line_tl
+ \msg_warning:nne { csvsimple }{ data-missing }{ \g__csvsim_filename_str }
+ \bool_if:NT \g__csvsim_head_bool
+ {
+ \g__csvsim_hook_late_after_head_tl
+ }
}
+ \g__csvsim_hook_late_after_last_line_tl
\g__csvsim_hook_table_end_tl
\g__csvsim_hook_after_reading_tl
\bool_if:NT \g__csvsim_collect_data_bool
diff --git a/Master/texmf-dist/tex/latex/csvsimple/csvsimple-legacy.sty b/Master/texmf-dist/tex/latex/csvsimple/csvsimple-legacy.sty
index ecaba4a7b06..7db0c82117c 100644
--- a/Master/texmf-dist/tex/latex/csvsimple/csvsimple-legacy.sty
+++ b/Master/texmf-dist/tex/latex/csvsimple/csvsimple-legacy.sty
@@ -1,4 +1,4 @@
-%% The LaTeX package csvsimple - version 2.6.1 (2024/05/16)
+%% The LaTeX package csvsimple - version 2.7.0 (2024/09/27)
%% csvsimple-legacy.sty: Simple LaTeX CSV file processing (LaTeX2e)
%%
%% -------------------------------------------------------------------------------------------
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README.md
%%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{csvsimple-legacy}[2024/05/16 version 2.6.1 LaTeX2e CSV file processing]
+\ProvidesPackage{csvsimple-legacy}[2024/09/27 version 2.7.0 LaTeX2e CSV file processing]
%---- check package
diff --git a/Master/texmf-dist/tex/latex/csvsimple/csvsimple.sty b/Master/texmf-dist/tex/latex/csvsimple/csvsimple.sty
index 01ccbb3f721..a9d549f76d8 100644
--- a/Master/texmf-dist/tex/latex/csvsimple/csvsimple.sty
+++ b/Master/texmf-dist/tex/latex/csvsimple/csvsimple.sty
@@ -1,4 +1,4 @@
-%% The LaTeX package csvsimple - version 2.6.1 (2024/05/16)
+%% The LaTeX package csvsimple - version 2.7.0 (2024/09/27)
%% csvsimple.sty: Simple LaTeX CSV file processing
%%
%% -------------------------------------------------------------------------------------------
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README.md
%%
\NeedsTeXFormat{LaTeX2e}[2022-06-01]
-\ProvidesExplPackage{csvsimple}{2024/05/16}{2.6.1}
+\ProvidesExplPackage{csvsimple}{2024/09/27}{2.7.0}
{LaTeX CSV file processing}
\cs_if_exist:NT \c__csvsim_package_expl_bool
diff --git a/Master/texmf-dist/tex/latex/customenvs/customenvs.sty b/Master/texmf-dist/tex/latex/customenvs/customenvs.sty
index e63ea57f846..a54da462ab5 100644
--- a/Master/texmf-dist/tex/latex/customenvs/customenvs.sty
+++ b/Master/texmf-dist/tex/latex/customenvs/customenvs.sty
@@ -3,9 +3,15 @@
% source pencil...: CC-BY-SA 4.0 https://tex.stackexchange.com/questions/504092/replicating-a-fancy-bordered-text-style-in-latex/504145#504145
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{customenvs}[2024/06/03 0.1.7 Custom classic environments]
+\ProvidesPackage{customenvs}[2024/09/14 0.2.3 Custom classic environments]
%====HISTORIQUE
+% v 0.2.3 Panneau autoroutier + Panneau Soldes
+% v 0.2.2 Flèche évasée, en TikZ
+% v 0.2.1 Modification mineure de la gestion des étoiles tikz (baseline) + grille auto tikzpicture
+% v 0.2.0 Ajout d'étoiles pour les difficultés d'exercices (2 versions)
+% v 0.1.9 tkzBanner + tkzBannerTri + includegraphicsfill
+% v 0.1.8 Nutriscore
% v 0.1.7 Style perso pour les vignettes
% v 0.1.6 DisplaySkip patch + Patchs pas-tableur
% v 0.1.5 Boxes for exam title + circled numbers + Vignettes + Small simple boxes creation
@@ -676,7 +682,155 @@
}
%====EXERCICE PERSO
+\newlength{\largstarsempty}
+\newlength{\largstarsmid}
+\newlength{\largstarfull}
+\newlength{\largmaxstars}
+
+%commande annexe tkzlevelstars [en] + [fr]
+\usetikzlibrary{shapes.geometric}
+
+\newlength{\tmphauteuretoiles}
+\newlength{\tmpprofondeuretoiles}
+\newlength{\tmpoffsetetoiles}\setlength{\tmpoffsetetoiles}{0.25pt}
+
+\defKV[levelstars]{%
+ colframe=\def\tkzLevelStarsColor{#1},
+ colback=\def\tkzLevelStarsColorBg{#1},
+ offset=\setlength{\tmpoffsetetoiles}{#1},
+ maxlevel=\def\tkzLevelStarsMaxLevel{#1}
+}
+
+\setKVdefault[levelstars]{%
+ colframe=black,
+ colback=gray,
+ offset={0.025em},
+ maxlevel=3,
+ valign=true
+}
+
+\NewDocumentCommand{\tkzLevelStars}{ O{} m }{%
+ %lectures des clés
+ \restoreKV[levelstars]%
+ \setKV[levelstars]{#1}%
+ %dimensions
+ \settototalheight{\tmphauteuretoiles}{\hbox{azertyuiopqsdfghjklmwxcvbnAZERTYUIOPQSDFGHJKLMWXCVBN}}%
+ \setlength{\tmphauteuretoiles}{0.95\tmphauteuretoiles}%
+ \ifboolKV[levelstars]{valign}%
+ {%
+ \settodepth{\tmpprofondeuretoiles}{\hbox{azertyuiopqsdfghjklmwxcvbnAZERTYUIOPQSDFGHJKLMWXCVBN}}%
+ \begin{tikzpicture}[baseline={-1.25\tmpprofondeuretoiles},fill=\tkzLevelStarsColorBg,draw=\tkzLevelStarsColor,rounded corners={0.05\tmphauteuretoiles},line width={0.04\tmphauteuretoiles}]
+ }%
+ {%
+ \begin{tikzpicture}[fill=\tkzLevelStarsColorBg,draw=\tkzLevelStarsColor,rounded corners={0.05\tmphauteuretoiles},line width={0.04\tmphauteuretoiles}]
+ }%
+ \foreach \X in {1,...,\tkzLevelStarsMaxLevel}{%
+ \xdef\tmpxfill{\xintfloateval{min(1,max(1+#2-\X,0))}}%
+ %\pgfmathsetmacro{\tmpxfill}{min(1,max(1+#2-\X,0))}
+ \path ({\X*(\tmphauteuretoiles+\tmpoffsetetoiles)},0) node[star,draw,star point height={0.25\tmphauteuretoiles},minimum size={\tmphauteuretoiles},inner sep=0pt,path picture={\fill (path picture bounding box.south west) rectangle ([xshift=\tmpxfill*0.9515*\tmphauteuretoiles]path picture bounding box.north west);}]{};
+ }
+ \end{tikzpicture}%
+}
+
+\defKV[tkznivetoiles]{%
+ Couleur=\def\tkzLevelStarsColor{#1},
+ CouleurFond=\def\tkzLevelStarsColorBg{#1},
+ Offset=\setlength{\tmpoffsetetoiles}{#1},
+ NiveauMax=\def\tkzLevelStarsMaxLevel{#1}
+}
+
+\setKVdefault[tkznivetoiles]{%
+ Couleur=black,
+ CouleurFond=gray,
+ Offset={0.025em},
+ NiveauMax=3,
+ AlignV=true
+}
+
+\NewDocumentCommand{\tkzEtoiles}{ O{} m }{%
+ %lectures des clés
+ \restoreKV[tkznivetoiles]%
+ \setKV[tkznivetoiles]{#1}%
+ %dimensions
+ \settototalheight{\tmphauteuretoiles}{\hbox{azertyuiopqsdfghjklmwxcvbnAZERTYUIOPQSDFGHJKLMWXCVBN}}%
+ \setlength{\tmphauteuretoiles}{0.95\tmphauteuretoiles}%
+ \ifboolKV[tkznivetoiles]{AlignV}%
+ {%
+ \settodepth{\tmpprofondeuretoiles}{\hbox{azertyuiopqsdfghjklmwxcvbnAZERTYUIOPQSDFGHJKLMWXCVBN}}%
+ \begin{tikzpicture}[baseline={-1.25\tmpprofondeuretoiles},fill=\tkzLevelStarsColorBg,draw=\tkzLevelStarsColor,rounded corners={0.05\tmphauteuretoiles},line width={0.04\tmphauteuretoiles}]
+ }%
+ {%
+ \begin{tikzpicture}[fill=\tkzLevelStarsColorBg,draw=\tkzLevelStarsColor,rounded corners={0.05\tmphauteuretoiles},line width={0.04\tmphauteuretoiles}]
+ }%
+ \foreach \X in {1,...,\tkzLevelStarsMaxLevel}{%
+ \xdef\tmpxfill{\xintfloateval{min(1,max(1+#2-\X,0))}}%
+ %\pgfmathsetmacro{\tmpxfill}{min(1,max(1+#2-\X,0))}
+ \path ({\X*(\tmphauteuretoiles+\tmpoffsetetoiles)},0) node[star,draw,star point height={0.25\tmphauteuretoiles},minimum size={\tmphauteuretoiles},inner sep=0pt,path picture={\fill (path picture bounding box.south west) rectangle ([xshift=\tmpxfill*0.9515*\tmphauteuretoiles]path picture bounding box.north west);}]{};
+ }
+ \end{tikzpicture}%
+}
+
+%commande annexe ;-)
+\NewDocumentCommand\NiveauDiffExos{ O{3} m }{%avec des demis ??
+ %les tailles de boîtes
+ \settowidth{\largstarsempty}{{\faStar[regular]}}%
+ \settowidth{\largstarsmid}{{\faIcon{star-half-alt}}}%
+ \settowidth{\largstarfull}{{\faStar}}%
+ \pgfmathsetlength{\largmaxstars}{max(\largstarsempty,\largstarsmid,\largstarfull)}%
+ %les calculs intermédiaires
+ \xintifboolexpr{#1 < 0}{\xdef\tmpstarsmax{3}}{\xdef\tmpstarsmax{#1}}%on met à 3 si pas valide
+ \xintifboolexpr{#2 >= 0 'and' #2 <= \tmpstarsmax 'and' isint(2*#2) == 1}{\xdef\tmpstars{#2}}{\xdef\tmpstars{0}}%on met à zéro si pas valide
+ %
+ \xintifboolexpr{isint(\tmpstars) == 1}%
+ {%
+ \xdef\tmpstarsexosfull{\tmpstars}%
+ \xdef\tmpstarsexosmid{0}%
+ \xdef\tmpstarsexosempty{\xinteval{\tmpstarsmax-\tmpstars}}%
+ }%
+ {%
+ \xdef\tmpstarsexosmid{1}%
+ \xdef\tmpstarsexosfull{\xinteval{(\tmpstars-0.5)}}%
+ \xdef\tmpstarsexosempty{\xinteval{\tmpstarsmax-1-\tmpstarsexosfull}}%
+ }%
+ %affichage des full
+ \xintifboolexpr{\tmpstarsexosfull > 0}{\xintFor* ##1 in {\xintSeq{1}{\tmpstarsexosfull}}\do{\makebox[\largmaxstars][c]{\faStar}}}{}%
+ %affichage des mid
+ \xintifboolexpr{\tmpstarsexosmid > 0}{\xintFor* ##1 in {\xintSeq{1}{\tmpstarsexosmid}}\do{\makebox[\largmaxstars][c]{\faIcon{star-half-alt}}}}{}%
+ %affichage des vides
+ \xintifboolexpr{\tmpstarsexosempty > 0}{\xintFor* ##1 in {\xintSeq{1}{\tmpstarsexosempty}}\do{\makebox[\largmaxstars][c]{\faStar[regular]}}}{}%
+}
+
+%commande annexe [en] ;-)
+\NewDocumentCommand\DiffLevelStars{ O{3} m }{%avec des demis ??
+ %les tailles de boîtes
+ \settowidth{\largstarsempty}{{\faStar[regular]}}%
+ \settowidth{\largstarsmid}{{\faIcon{star-half-alt}}}%
+ \settowidth{\largstarfull}{{\faStar}}%
+ \pgfmathsetlength{\largmaxstars}{max(\largstarsempty,\largstarsmid,\largstarfull)}%
+ %les calculs intermédiaires
+ \xintifboolexpr{#1 < 0}{\xdef\tmpstarsmax{3}}{\xdef\tmpstarsmax{#1}}%on met à 3 si pas valide
+ \xintifboolexpr{#2 >= 0 'and' #2 <= \tmpstarsmax 'and' isint(2*#2) == 1}{\xdef\tmpstars{#2}}{\xdef\tmpstars{0}}%on met à zéro si pas valide
+ %
+ \xintifboolexpr{isint(\tmpstars) == 1}%
+ {%
+ \xdef\tmpstarsexosfull{\tmpstars}%
+ \xdef\tmpstarsexosmid{0}%
+ \xdef\tmpstarsexosempty{\xinteval{\tmpstarsmax-\tmpstars}}%
+ }%
+ {%
+ \xdef\tmpstarsexosmid{1}%
+ \xdef\tmpstarsexosfull{\xinteval{(\tmpstars-0.5)}}%
+ \xdef\tmpstarsexosempty{\xinteval{\tmpstarsmax-1-\tmpstarsexosfull}}%
+ }%
+ %affichage des full
+ \xintifboolexpr{\tmpstarsexosfull > 0}{\xintFor* ##1 in {\xintSeq{1}{\tmpstarsexosfull}}\do{\makebox[\largmaxstars][c]{\faStar}}}{}%
+ %affichage des mid
+ \xintifboolexpr{\tmpstarsexosmid > 0}{\xintFor* ##1 in {\xintSeq{1}{\tmpstarsexosmid}}\do{\makebox[\largmaxstars][c]{\faIcon{star-half-alt}}}}{}%
+ %affichage des vides
+ \xintifboolexpr{\tmpstarsexosempty > 0}{\xintFor* ##1 in {\xintSeq{1}{\tmpstarsexosempty}}\do{\makebox[\largmaxstars][c]{\faStar[regular]}}}{}%
+}
+%code ppal
\newcounter{numeroexo}
\setcounter{numeroexo}{0}
\newlength{\eptraitexo}
@@ -687,6 +841,8 @@
\newlength{\tmp@image@profondeur}
\colorlet{macouleurexo}{blue!50!black}
+\colorlet{macouleurexodeco}{blue!50!black}
+\colorlet{macouleurexodecofond}{blue!50!black}
\newcommand\tmpstyleexo{\bfseries\LARGE\sffamily}%
\newcommand\tmplabelexo{Exercice~}%
@@ -694,15 +850,21 @@
\defKV[globalstyleexo]{%
Libelle=\renewcommand\tmplabelexo{#1},%
Couleur=\colorlet{macouleurexo}{#1},%
+ CouleurDeco=\colorlet{macouleurexodeco}{#1},%
+ CouleurFondDeco=\colorlet{macouleurexodecofond}{#1},%
Police=\renewcommand\tmpstyleexo{#1},%
- EpTrait=\setlength{\eptraitexo}{#1}
+ EpTrait=\setlength{\eptraitexo}{#1},%
+ EchelleEtoiles=\def\tmpscalestarsexos{#1}
}
\setKVdefault[globalstyleexo]{%
Libelle={Exercice~},%
Couleur={blue!50!black},%
+ CouleurDeco={blue!50!black},%
+ CouleurFondDeco={macouleurexodeco!50},%
Police={\bfseries\LARGE\sffamily},%
- EpTrait={1.1pt}
+ EpTrait={1.1pt},%
+ EchelleEtoiles=0.85
}
\NewDocumentCommand\StyleEnvtExo{ O{} }{%
@@ -717,20 +879,20 @@
Type=\def\EnvtExoType{#1},%
ComplementTitre=\def\EnvtExoCpltTitre{#1},%
CodeDebut=\def\EnvtExoCodeAvant{#1},%
- %Couleur=\def\EnvtExoCouleur{#1},%
EchelleImage=\def\EnvtExoScaleImg{#1},%
Decoration=\def\EnvtExoDeco{#1},%
- Trait=\def\EnvtExoTrait{#1}
+ Trait=\def\EnvtExoTrait{#1},%
+ Etoiles=\def\EnvtExoEtoiles{#1}
}
\setKVdefault[EnvtExercice]{
Type=Classique,%
ComplementTitre={},%
CodeDebut={},%
- %Couleur=macouleurexo,%
EchelleImage=1.15,%
Compteur=true,%
Decoration={},%
- Trait=plein
+ Trait=plein,%
+ Etoiles={}
}
\NewDocumentEnvironment{EnvtExo}{ !O{} }%
@@ -745,18 +907,32 @@
{%
%label avec numéro et complément
\tmpstyleexo\tmplabelexo\ifboolKV[EnvtExercice]{Compteur}{\thenumeroexo}{}\EnvtExoCpltTitre%
+ %étoiles eventuelles
+ \IfStrEq{\EnvtExoEtoiles}{}{}%
+ {%
+ \,(\IfSubStr{\EnvtExoEtoiles}{§}%
+ {%
+ \StrCut{\EnvtExoEtoiles}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}%
+ \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond,NiveauMax=\EnvtExoStarTot]{\EnvtExoStarNb}%
+ }%
+ {%
+ \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond]{\EnvtExoEtoiles}%
+ }%
+ )%
+ }%
%trait éventuel
\IfStrEqCase{\EnvtExoTrait}{%
{plein}{\,\hrulefill}%
{pointilles}{\,\dotfill}%
{dashilles}{\,\hdashrule{\fill}{\eptraitexo}{\eptraitexospace}}%
{non}{\hfill}%
+ {aucun}{~}%
}%
%décoration éventuelle
\IfSubStr{\EnvtExoDeco}{Icone}%
{%
\StrBehind{\EnvtExoDeco}{/}[\EnvtExoIcon]%
- \,\scalebox{0.85}[0.85]{\EnvtExoIcon}%
+ \,\textcolor{macouleurexodeco}{\scalebox{0.85}[0.85]{\EnvtExoIcon}}%
}{}%
\IfSubStr{\EnvtExoDeco}{Ceinture}%
{%
@@ -766,13 +942,13 @@
\IfSubStr{\EnvtExoDeco}{Chrono}%
{%
\StrBehind{\EnvtExoDeco}{/}[\EnvtExoChrono]%
- \,\pictochrono[ColTime=macouleurexo!50]{\EnvtExoChrono}%
+ \,\pictochrono[ColTime=macouleurexodeco!50]{\EnvtExoChrono}%
}{}%
\IfSubStr{\EnvtExoDeco}{Points}%
{%
\StrBehind{\EnvtExoDeco}{/}[\EnvtExoPts]%
\IfStrEq{\EnvtExoPts}{1}{\def\pts{point}}{\def\pts{points}}%
- \,(\EnvtExoPts\ \pts)%
+ \,\textcolor{macouleurexodeco}{(\EnvtExoPts\ \pts)}%
}{}%
\IfSubStr{\EnvtExoDeco}{Image}%
{%
@@ -780,12 +956,49 @@
\settototalheight{\tmp@image@hauteur@totale}{\hbox{\tmpstyleexo qB}}%
\,$\vcenter{\hbox{\includegraphics[height=\EnvtExoScaleImg\tmp@image@hauteur@totale]{\EnvtExoImg}}}$%
}{}%
+ \IfSubStr{\EnvtExoDeco}{faEtoiles}%
+ {%
+ \StrBehind{\EnvtExoDeco}{/}[\EnvtExoStars]%
+ \IfSubStr{\EnvtExoStars}{§}%
+ {%
+ \StrCut{\EnvtExoStars}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}%
+ \textcolor{macouleurexodeco}{\scalebox{\tmpscalestarsexos}[\tmpscalestarsexos]{\NiveauDiffExos[\EnvtExoStarTot]{\EnvtExoStarNb}}}%
+ }%
+ {%
+ \textcolor{macouleurexodeco}{\scalebox{\tmpscalestarsexos}[\tmpscalestarsexos]{\NiveauDiffExos{\EnvtExoStars}}}%
+ }%
+ }{}%
+ \IfSubStr{\EnvtExoDeco}{tkzEtoiles}%
+ {%
+ \StrBehind{\EnvtExoDeco}{/}[\EnvtExoStars]%
+ \IfSubStr{\EnvtExoStars}{§}%
+ {%
+ \StrCut{\EnvtExoStars}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}%
+ \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond,NiveauMax=\EnvtExoStarTot]{\EnvtExoStarNb}%
+ }%
+ {%
+ \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond]{\EnvtExoStars}%
+ }%
+ }{}%
}{}%
\IfSubStr{\EnvtExoType}{Perso}%OK perso____déco
{%
\StrBehind{\EnvtExoType}{/}[\EnvtExoLabel]%
%label avec numéro et complément
\tmpstyleexo\EnvtExoLabel\ifboolKV[EnvtExercice]{Compteur}{\thenumeroexo}{}\EnvtExoCpltTitre%
+ %étoiles eventuelles
+ \IfStrEq{\EnvtExoEtoiles}{}{}%
+ {%
+ \,(\IfSubStr{\EnvtExoEtoiles}{§}%
+ {%
+ \StrCut{\EnvtExoEtoiles}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}%
+ \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond,NiveauMax=\EnvtExoStarTot]{\EnvtExoStarNb}%
+ }%
+ {%
+ \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond]{\EnvtExoEtoiles}%
+ }%
+ )%
+ }%
%trait éventuel
\IfStrEqCase{\EnvtExoTrait}{%
{plein}{\,\hrulefill}%
@@ -797,7 +1010,7 @@
\IfSubStr{\EnvtExoDeco}{Icone}%
{%
\StrBehind{\EnvtExoDeco}{/}[\EnvtExoIcon]%
- \,\scalebox{0.85}[0.85]{\EnvtExoIcon}%
+ \,\textcolor{macouleurexodeco}{\scalebox{0.85}[0.85]{\EnvtExoIcon}}%
}{}%
\IfSubStr{\EnvtExoDeco}{Ceinture}%
{%
@@ -807,13 +1020,13 @@
\IfSubStr{\EnvtExoDeco}{Chrono}%
{%
\StrBehind{\EnvtExoDeco}{/}[\EnvtExoChrono]%
- \,\pictochrono[ColTime=macouleurexo!50]{\EnvtExoChrono}%
+ \,\pictochrono[ColTime=macouleurexodeco!50]{\EnvtExoChrono}%
}{}%
\IfSubStr{\EnvtExoDeco}{Points}%
{%
\StrBehind{\EnvtExoDeco}{/}[\EnvtExoPts]%
\IfStrEq{\EnvtExoPts}{1}{\def\pts{point}}{\def\pts{points}}%
- \,(\EnvtExoPts\ \pts)%
+ \,\textcolor{macouleurexodeco}{(\EnvtExoPts\ \pts)}%
}{}%
\IfSubStr{\EnvtExoDeco}{Image}%
{%
@@ -821,6 +1034,30 @@
\settototalheight{\tmp@image@hauteur@totale}{\hbox{\tmpstyleexo qB}}%
\,$\vcenter{\hbox{\includegraphics[height=\EnvtExoScaleImg\tmp@image@hauteur@totale]{\EnvtExoImg}}}$%
}{}%
+ \IfSubStr{\EnvtExoDeco}{faEtoiles}%
+ {%
+ \StrBehind{\EnvtExoDeco}{/}[\EnvtExoStars]%
+ \IfSuStr{\EnvtExoStars}{§}%
+ {%
+ \StrCut{\EnvtExoStars}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}%
+ \textcolor{macouleurexodeco}{\scalebox{\tmpscalestarsexos}[\tmpscalestarsexos]{\NiveauDiffExos[\EnvtExoStarTot]{\EnvtExoStarNb}}}%
+ }%
+ {%
+ \textcolor{macouleurexodeco}{\scalebox{\tmpscalestarsexos}[\tmpscalestarsexos]{\NiveauDiffExos{\EnvtExoStars}}}%
+ }%
+ }{}%
+ \IfSubStr{\EnvtExoDeco}{tkzEtoiles}%
+ {%
+ \StrBehind{\EnvtExoDeco}{/}[\EnvtExoStars]%
+ \IfSubStr{\EnvtExoStars}{§}%
+ {%
+ \StrCut{\EnvtExoStars}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}%
+ \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond,NiveauMax=\EnvtExoStarTot]{\EnvtExoStarNb}%
+ }%
+ {%
+ \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond]{\EnvtExoStars}%
+ }%
+ }{}%
}{}%
\endgroup%
\def\hrulefill{\leavevmode\leaders\hrule height 0.4pt\hfill\kern\z@}%
@@ -840,6 +1077,19 @@
{%
%label avec numéro et complément
\tmpstyleexo\tmplabelexo\ifboolKV[EnvtExercice]{Compteur}{\thenumeroexo}{}\EnvtExoCpltTitre%
+ %étoiles eventuelles
+ \IfStrEq{\EnvtExoEtoiles}{}{}%
+ {%
+ \,(\IfSubStr{\EnvtExoEtoiles}{§}%
+ {%
+ \StrCut{\EnvtExoEtoiles}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}%
+ \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond,NiveauMax=\EnvtExoStarTot]{\EnvtExoStarNb}%
+ }%
+ {%
+ \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond]{\EnvtExoEtoiles}%
+ }%
+ )%
+ }%
%trait éventuel
\IfStrEqCase{\EnvtExoTrait}{%
{plein}{\,\hrulefill}%
@@ -875,12 +1125,49 @@
\settototalheight{\tmp@image@hauteur@totale}{\hbox{\tmpstyleexo qB}}%
\,$\vcenter{\hbox{\includegraphics[height=\EnvtExoScaleImg\tmp@image@hauteur@totale]{\EnvtExoImg}}}$%
}{}%
+ \IfSubStr{\EnvtExoDeco}{faEtoiles}%
+ {%
+ \StrBehind{\EnvtExoDeco}{/}[\EnvtExoStars]%
+ \IfSuStr{\EnvtExoStars}{§}%
+ {%
+ \StrCut{\EnvtExoStars}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}%
+ \textcolor{macouleurexodeco}{\scalebox{\tmpscalestarsexos}[\tmpscalestarsexos]{\NiveauDiffExos[\EnvtExoStarTot]{\EnvtExoStarNb}}}%
+ }%
+ {%
+ \textcolor{macouleurexodeco}{\scalebox{\tmpscalestarsexos}[\tmpscalestarsexos]{\NiveauDiffExos{\EnvtExoStars}}}%
+ }%
+ }{}%
+ \IfSubStr{\EnvtExoDeco}{tkzEtoiles}%
+ {%
+ \StrBehind{\EnvtExoDeco}{/}[\EnvtExoStars]%
+ \IfSubStr{\EnvtExoStars}{§}%
+ {%
+ \StrCut{\EnvtExoStars}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}%
+ \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond,NiveauMax=\EnvtExoStarTot]{\EnvtExoStarNb}%
+ }%
+ {%
+ \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond]{\EnvtExoStars}%
+ }%
+ }{}%
}{}%
\IfSubStr{\EnvtExoType}{Perso}%OK perso____déco
{%
\StrBehind{\EnvtExoType}{/}[\EnvtExoLabel]%
%label avec numéro et complément
\tmpstyleexo\EnvtExoLabel\ifboolKV[EnvtExercice]{Compteur}{\thenumeroexo}{}\EnvtExoCpltTitre%
+ %étoiles eventuelles
+ \IfStrEq{\EnvtExoEtoiles}{}{}%
+ {%
+ \,(\IfSubStr{\EnvtExoEtoiles}{§}%
+ {%
+ \StrCut{\EnvtExoEtoiles}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}%
+ \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond,NiveauMax=\EnvtExoStarTot]{\EnvtExoStarNb}%
+ }%
+ {%
+ \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond]{\EnvtExoEtoiles}%
+ }%
+ )%
+ }%
%trait éventuel
\IfStrEqCase{\EnvtExoTrait}{%
{plein}{\,\hrulefill}%
@@ -916,6 +1203,30 @@
\settototalheight{\tmp@image@hauteur@totale}{\hbox{\tmpstyleexo qB}}%
\,$\vcenter{\hbox{\includegraphics[height=\EnvtExoScaleImg\tmp@image@hauteur@totale]{\EnvtExoImg}}}$%
}{}%
+ \IfSubStr{\EnvtExoDeco}{faEtoiles}%
+ {%
+ \StrBehind{\EnvtExoDeco}{/}[\EnvtExoStars]%
+ \IfSuStr{\EnvtExoStars}{§}%
+ {%
+ \StrCut{\EnvtExoStars}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}%
+ \textcolor{macouleurexodeco}{\scalebox{\tmpscalestarsexos}[\tmpscalestarsexos]{\NiveauDiffExos[\EnvtExoStarTot]{\EnvtExoStarNb}}}%
+ }%
+ {%
+ \textcolor{macouleurexodeco}{\scalebox{\tmpscalestarsexos}[\tmpscalestarsexos]{\NiveauDiffExos{\EnvtExoStars}}}%
+ }%
+ }{}%
+ \IfSubStr{\EnvtExoDeco}{tkzEtoiles}%
+ {%
+ \StrBehind{\EnvtExoDeco}{/}[\EnvtExoStars]%
+ \IfSubStr{\EnvtExoStars}{§}%
+ {%
+ \StrCut{\EnvtExoStars}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}%
+ \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond,NiveauMax=\EnvtExoStarTot]{\EnvtExoStarNb}%
+ }%
+ {%
+ \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond]{\EnvtExoStars}%
+ }%
+ }{}%
}{}%
\endgroup%
\def\hrulefill{\leavevmode\leaders\hrule height 0.4pt\hfill\kern\z@}%
@@ -1095,6 +1406,93 @@
title={\@ifpackageloaded{babel}{\NoAutoSpacing#2}{#2}\IfBooleanTF{#1}{}{$\cdot$\scalebox{0.6}[0.6]{\faCheckCircle[regular]\!\faCheckCircle[regular]}~}},left=1mm,right=1mm,boxsep=0mm]{#3}%
}
+%====Nutriscore
+\definecolor{couleurNS1}{RGB}{45,126,67}
+\definecolor{couleurNS2}{RGB}{151,186,56}
+\definecolor{couleurNS3}{RGB}{240,202,13}
+\definecolor{couleurNS4}{RGB}{213,123,26}
+\definecolor{couleurNS5}{RGB}{197,52,25}
+\tikzset{noeudNS/.style={pos=0.5,xscale=\echellexNS*\hauteurNS,yscale=\echelleyNS*\hauteurNS}}
+
+\defKV[NUTRISCORE]{%
+ Hauteur=\pgfmathsetmacro{\hauteurNS}{#1},%
+ Ratio=\pgfmathsetmacro{\ratiolargeurbandeNS}{#1},%
+ Symboles=\def\lettresNS{#1},%
+ Legende=\def\legendeNS{#1},%
+ Police=\def\fonteNS{#1},%
+ Couleurs=\def\couleursNS{#1},%
+ EchelleSymboles=\def\echellesymbNS{#1},%
+ CouleurFond=\def\coulbgNS{#1}
+}
+\setKVdefault[NUTRISCORE]{%
+ Hauteur=1,%
+ Ratio={0.6},%
+ Symboles={A,B,C,D,E},%
+ Legende={score},%
+ Police=\sffamily\bfseries,%
+ AffLegende=true,%
+ Couleurs={couleurNS1,couleurNS2,couleurNS3,couleurNS4,couleurNS5},%
+ EchelleSymboles={1.25,1.65},%
+ CouleurFond=white
+}
+
+\NewDocumentCommand\BandeauScore{ O{} D<>{} m }{%
+ \restoreKV[NUTRISCORE]%
+ \setKV[NUTRISCORE]{#1}%
+ \IfEq{#3}{}%
+ {%
+ \xdef\numcasNS{0}%
+ }%
+ {%
+ \xdef\numcasNS{#3}%
+ }%
+ \readlist\letterListNS{\lettresNS}%
+ \xdef\nbcasesNS{\letterListNSlen}%
+ \readlist\colorListNS{\couleursNS}%
+ \xdef\nbcouleursNS{\colorListNSlen}%
+ \pgfmathsetmacro{\largeurcaseNS}{\hauteurNS*\ratiolargeurbandeNS}%
+ \pgfmathsetmacro{\largeurbandeNS}{\largeurcaseNS*\nbcasesNS}%
+ \pgfmathsetmacro{\margeNS}{0.225*\largeurcaseNS/2.4}%
+ \IfSubStr{\echellesymbNS}{,}%
+ {%
+ \StrCut{\echellesymbNS}{,}{\echellexNS}{\echelleyNS}%
+ }%
+ {%
+ \xdef\echellexNS{\echellesymbNS}\xdef\echelleyNS{\echellesymbNS}%
+ }%
+ \begin{tikzpicture}[font=\fonteNS,#2]
+ %---test
+ \filldraw[white,rounded corners=\fpeval{5*\largeurcaseNS*\ratiolargeurbandeNS}mm,line width=\fpeval{1.5*\largeurcaseNS*\ratiolargeurbandeNS}mm,opacity=0] ({-\margeNS},{-\margeNS}) rectangle++ (\nbcasesNS*\largeurcaseNS+2*\margeNS,\hauteurNS+2*\margeNS) ;
+ %---testfin
+ \begin{scope}
+ \clip[rounded corners=\fpeval{5*\largeurcaseNS*\ratiolargeurbandeNS}mm] (0,0) rectangle (\largeurbandeNS,\hauteurNS);
+ \foreach \tmpiii in {1,...,\letterListNSlen}{%
+ \ifnum\tmpiii=\numcasNS
+ \else
+ \ifnum\tmpiii>\nbcouleursNS
+ \fill[draw=none,lightgray] ({(\tmpiii-1)*\largeurcaseNS},0) rectangle ++(\largeurcaseNS,\hauteurNS) node[noeudNS,white,opacity=0.66]{\letterListNS[\tmpiii]};
+ \else
+ \fill[draw=none,{\colorListNS[\tmpiii]}] ({(\tmpiii-1)*\largeurcaseNS},0) rectangle ++(\largeurcaseNS,\hauteurNS) node[noeudNS,white,opacity=0.66]{\letterListNS[\tmpiii]};
+ \fi
+ \fi
+ }%
+ \end{scope}
+ \xintifboolexpr{\numcasNS >=1 'and' \numcasNS <= \nbcasesNS }%
+ {%
+ \begin{scope}
+ %\clip (-\margeNS,-\margeNS) rectangle++ (\largeurbandeNS+2*\margeNS,\hauteurNS+2*\margeNS);
+ \draw[draw=\coulbgNS,rounded corners=\fpeval{7.25*\largeurcaseNS*\ratiolargeurbandeNS}mm,line width=\fpeval{1.5*\largeurcaseNS*\ratiolargeurbandeNS}mm,fill={\colorListNS[#3]}] ({(\numcasNS-1)*\largeurcaseNS-\margeNS},{-\margeNS}) rectangle++ (\largeurcaseNS+2*\margeNS,\hauteurNS+2*\margeNS) node[noeudNS,white]{\letterListNS[\numcasNS]};
+ \end{scope}
+ }%
+ {%
+ }%
+ %légende
+ \ifboolKV[NUTRISCORE]{AffLegende}%
+ {%
+ \node[above right=1pt,gray,scale=\fpeval{0.5*\hauteurNS},inner sep=1pt] at ({0.125*\margeNS},1.02*\hauteurNS) {\vphantom{QÉ}\MakeUppercase{\legendeNS}};
+ }{}%
+ \end{tikzpicture}%
+}
%%----COMMANDES EN
@@ -1932,4 +2330,742 @@
\fi
+%====BannerScore
+\definecolor{colorNS1}{RGB}{45,126,67}
+\definecolor{colorNS2}{RGB}{151,186,56}
+\definecolor{colorNS3}{RGB}{240,202,13}
+\definecolor{colorNS4}{RGB}{213,123,26}
+\definecolor{colorNS5}{RGB}{197,52,25}
+\tikzset{nodeNS/.style={pos=0.5,xscale=\echellexNS*\hauteurNS,yscale=\echelleyNS*\hauteurNS}}
+
+\defKV[NUTRISCOREEN]{%
+ Height=\pgfmathsetmacro{\hauteurNS}{#1},%
+ Ratio=\pgfmathsetmacro{\ratiolargeurbandeNS}{#1},%
+ Symbols=\def\lettresNS{#1},%
+ Legend=\def\legendeNS{#1},%
+ Font=\def\fonteNS{#1},%
+ Colors=\def\couleursNS{#1},%
+ ScaleSymbols=\def\echellesymbNS{#1},%
+ Colbg=\def\coulbgNS{#1}
+}
+\setKVdefault[NUTRISCOREEN]{%
+ Height=1,%
+ Ratio={0.6},%
+ Symbols={A,B,C,D,E},%
+ Legend={score},%
+ Font=\sffamily\bfseries,%
+ ShowLegend=true,%
+ Colors={colorNS1,colorNS2,colorNS3,colorNS4,colorNS5},%
+ ScaleSymbols={1.25,1.65},%
+ Colbg=white
+}
+
+\NewDocumentCommand\ScoreBanner{ O{} D<>{} m }{%
+ \restoreKV[NUTRISCOREEN]%
+ \setKV[NUTRISCOREEN]{#1}%
+ \IfEq{#3}{}%
+ {%
+ \xdef\numcasNS{0}%
+ }%
+ {%
+ \xdef\numcasNS{#3}%
+ }%
+ \readlist\letterListNS{\lettresNS}%
+ \xdef\nbcasesNS{\letterListNSlen}%
+ \readlist\colorListNS{\couleursNS}%
+ \xdef\nbcouleursNS{\colorListNSlen}%
+ \pgfmathsetmacro{\largeurcaseNS}{\hauteurNS*\ratiolargeurbandeNS}%
+ \pgfmathsetmacro{\largeurbandeNS}{\largeurcaseNS*\nbcasesNS}%
+ \pgfmathsetmacro{\margeNS}{0.225*\largeurcaseNS/2.4}%
+ \IfSubStr{\echellesymbNS}{,}%
+ {%
+ \StrCut{\echellesymbNS}{,}{\echellexNS}{\echelleyNS}%
+ }%
+ {%
+ \xdef\echellexNS{\echellesymbNS}\xdef\echelleyNS{\echellesymbNS}%
+ }%
+ \begin{tikzpicture}[font=\fonteNS,#2]
+ %---test
+ \filldraw[white,rounded corners=\fpeval{5*\largeurcaseNS*\ratiolargeurbandeNS}mm,line width=\fpeval{1.5*\largeurcaseNS*\ratiolargeurbandeNS}mm,opacity=0] ({-\margeNS},{-\margeNS}) rectangle++ (\nbcasesNS*\largeurcaseNS+2*\margeNS,\hauteurNS+2*\margeNS) ;
+ %---testfin
+ \begin{scope}
+ \clip[rounded corners=\fpeval{5*\largeurcaseNS*\ratiolargeurbandeNS}mm] (0,0) rectangle (\largeurbandeNS,\hauteurNS);
+ \foreach \iii in {1,...,\letterListNSlen}{%
+ \ifnum\iii=\numcasNS
+ \else
+ \ifnum\iii>\nbcouleursNS
+ \fill[draw=none,lightgray] ({(\iii-1)*\largeurcaseNS},0) rectangle ++(\largeurcaseNS,\hauteurNS) node[noeudNS,white,opacity=0.66]{\letterListNS[\iii]};
+ \else
+ \fill[draw=none,{\colorListNS[\iii]}] ({(\iii-1)*\largeurcaseNS},0) rectangle ++(\largeurcaseNS,\hauteurNS) node[noeudNS,white,opacity=0.66]{\letterListNS[\iii]};
+ \fi
+ \fi
+ }%
+ \end{scope}
+ \xintifboolexpr{\numcasNS >=1 'and' \numcasNS <= \nbcasesNS }%
+ {%
+ \begin{scope}
+ %\clip (-\margeNS,-\margeNS) rectangle++ (\largeurbandeNS+2*\margeNS,\hauteurNS+2*\margeNS);
+ \draw[draw=\coulbgNS,rounded corners=\fpeval{7.25*\largeurcaseNS*\ratiolargeurbandeNS}mm,line width=\fpeval{1.5*\largeurcaseNS*\ratiolargeurbandeNS}mm,fill={\colorListNS[#3]}] ({(\numcasNS-1)*\largeurcaseNS-\margeNS},{-\margeNS}) rectangle++ (\largeurcaseNS+2*\margeNS,\hauteurNS+2*\margeNS) node[noeudNS,white]{\letterListNS[#3]};
+ \end{scope}
+ }%
+ {}%
+ %légende
+ \ifboolKV[NUTRISCOREEN]{ShowLegend}%
+ {%
+ \node[above right=1pt,gray,scale=\fpeval{0.5*\hauteurNS},inner sep=1pt] at ({0.125*\margeNS},1.02*\hauteurNS) {\MakeUppercase{\legendeNS}};
+ }{}%
+ \end{tikzpicture}%
+}
+
+%====vincludegraphics [fr]
+\newlength{\tmp@includegraphics@vfill@offset}
+
+\defKV[vfillincludegphcs]{vOffset=\setlength\tmp@includegraphics@vfill@offset{#1},vCentrer=\def\tmpincludegpvcenter{#1}}
+\setKVdefault[vfillincludegphcs]{vRemplir=false,vOffset=0pt,vCentrer=n}
+
+\NewDocumentCommand\InsererImage{ D<>{} O{} m }{%
+ \restoreKV[vfillincludegphcs]%
+ \setKV[vfillincludegphcs]{#1}%
+ \ifboolKV[vfillincludegphcs]{vRemplir}%
+ {%
+ \IfStrEqCase{\tmpincludegpvcenter}{%
+ {m}{\vfill\includegraphics[height=\dimexpr\pagegoal-\pagetotal-\tmp@includegraphics@vfill@offset\relax,#2]{#3}\vfill}%
+ {h}{\includegraphics[height=\dimexpr\pagegoal-\pagetotal-\tmp@includegraphics@vfill@offset\relax,#2]{#3}\vfill}%
+ {b}{\vfill\includegraphics[height=\dimexpr\pagegoal-\pagetotal-\tmp@includegraphics@vfill@offset\relax,#2]{#3}}%
+ {n}{\includegraphics[height=\dimexpr\pagegoal-\pagetotal-\tmp@includegraphics@vfill@offset\relax,#2]{#3}}%
+ }[{\includegraphics[height=\dimexpr\pagegoal-\pagetotal-\tmp@includegraphics@vfill@offset\relax,#2]{#3}}]%
+ }%
+ {%
+ \includegraphics[#2]{#3}%
+ }%
+}
+
+%===tkzBanner mixte
+\defKV[tkzBannerKeys]{%
+ maincolor=\def\tkzBannermaincol{#1}
+}
+
+\setKVdefault[tkzBannerKeys]{%
+ height=2.1cm,%
+ width=\linewidth,%
+ collight=teal!25,%
+ colmedium=teal!75,%
+ coldark=teal,%
+ coltxt=white,%
+ fonttxt=\sffamily\bfseries,%
+ swap=false,%
+ maincolor={},%
+ num=true
+}
+
+\NewDocumentCommand\tkzBanner{ O{} m m }{%
+ \noindent%
+ \restoreKV[tkzBannerKeys]%
+ \setKV[tkzBannerKeys]{#1}%
+ \pgfmathsetmacro{\tkzBannerscale}{\useKV[tkzBannerKeys]{width}/\linewidth}%
+ \begin{tikzpicture}
+ \IfEq{\tkzBannermaincol}{}%
+ {%
+ \tikzset{tkzbannerdark/.style={\useKV[tkzBannerKeys]{coldark}}}
+ \tikzset{tkzbannermedium/.style={\useKV[tkzBannerKeys]{colmedium}}}
+ \tikzset{tkzbannerlight/.style={\useKV[tkzBannerKeys]{collight}}}
+ }%
+ {%
+ \tikzset{tkzbannerdark/.style={\tkzBannermaincol}}
+ \tikzset{tkzbannermedium/.style={\tkzBannermaincol!75}}
+ \tikzset{tkzbannerlight/.style={\tkzBannermaincol!25}}
+ }%
+ %coordinates
+ \coordinate (tkzBanner-NW) at (0,{\useKV[tkzBannerKeys]{height}}) ;
+ \coordinate (tkzBanner-SW) at (0,0) ;
+ \coordinate (tkzBanner-NE) at ({\useKV[tkzBannerKeys]{width}},{\useKV[tkzBannerKeys]{height}}) ;
+ \coordinate (tkzBanner-SE) at ({\useKV[tkzBannerKeys]{width}},0) ;%
+ %swap or note
+ \ifboolKV[tkzBannerKeys]{swap}%
+ {%
+ \coordinate (tkzBanner-A) at ($(tkzBanner-SE)!0.57!(tkzBanner-SW)$) ;
+ \coordinate (tkzBanner-B) at ($(tkzBanner-NE)!0.91!(tkzBanner-NW)$) ;
+ \coordinate (tkzBanner-C) at ($(tkzBanner-NE)!0.92!(tkzBanner-NW)$) ;
+ \coordinate (tkzBanner-D) at ($(tkzBanner-SE)!0.63!(tkzBanner-SW)$) ;
+ }%
+ {%
+ \coordinate (tkzBanner-A) at ($(tkzBanner-SW)!0.57!(tkzBanner-SE)$) ;
+ \coordinate (tkzBanner-B) at ($(tkzBanner-NW)!0.91!(tkzBanner-NE)$) ;
+ \coordinate (tkzBanner-C) at ($(tkzBanner-NW)!0.92!(tkzBanner-NE)$) ;
+ \coordinate (tkzBanner-D) at ($(tkzBanner-SW)!0.63!(tkzBanner-SE)$) ;
+ }%
+ %drawing
+ \fill[tkzbannerdark] (0,0) rectangle ({\useKV[tkzBannerKeys]{width}},{\useKV[tkzBannerKeys]{height}});
+ \ifboolKV[tkzBannerKeys]{swap}%
+ {%
+ \fill[tkzbannerlight] (tkzBanner-A) to[bend left=8] (tkzBanner-B) -- (tkzBanner-C) to[bend right=7] (tkzBanner-D) -- cycle ;
+ \fill[tkzbannermedium] (tkzBanner-C) to[bend right=7] (tkzBanner-D) -- (tkzBanner-SW) |- cycle ;
+ }%
+ {%
+ \fill[tkzbannerlight] (tkzBanner-A) to[bend right=8] (tkzBanner-B) -- (tkzBanner-C) to[bend left=7] (tkzBanner-D) -- cycle ;
+ \fill[tkzbannermedium] (tkzBanner-C) to[bend left=7] (tkzBanner-D) -- (tkzBanner-SE) |- cycle ;
+ }%
+ %nodes
+ \ifboolKV[tkzBannerKeys]{swap}%
+ {%
+ \node[inner sep=2pt,text={\useKV[tkzBannerKeys]{coltxt}},below left,font={\useKV[tkzBannerKeys]{fonttxt}},scale={2*\tkzBannerscale}] at (tkzBanner-NE) {\vphantom{qÉ}#2};
+ \ifboolKV[tkzBannerKeys]{num}%
+ {%
+ \node[inner sep=2pt,text={\useKV[tkzBannerKeys]{coltxt}},above right,font={\useKV[tkzBannerKeys]{fonttxt}},scale={1.25*\tkzBannerscale}] at (tkzBanner-SW) {\vphantom{qÉ}#3};
+ }%
+ {}%
+ }%
+ {%
+ \ifboolKV[tkzBannerKeys]{num}%
+ {%
+ \node[inner sep=2pt,text={\useKV[tkzBannerKeys]{coltxt}},above left,font={\useKV[tkzBannerKeys]{fonttxt}},scale={1.25*\tkzBannerscale}] at (tkzBanner-SE) {\vphantom{qÉ}#3};
+ }%
+ {}%
+ \node[inner sep=2pt,text={\useKV[tkzBannerKeys]{coltxt}},below right,font={\useKV[tkzBannerKeys]{fonttxt}},scale={2*\tkzBannerscale}] at (tkzBanner-NW) {\vphantom{qÉ}#2};
+ }%
+ \end{tikzpicture}%
+}
+
+%====titre stylisé [fr], à voir avec part ??
+\newlength{\tmp@tkzbanner@autowidthtype}
+\setlength\tmp@tkzbanner@autowidthtype{2.5em}
+\newlength{\tmp@tkzbanner@autowidthnum}
+\setlength\tmp@tkzbanner@autowidthnum{2em}
+\newlength{\tmp@tkzbanner@marginoffsetbanner}
+\setlength\tmp@tkzbanner@marginoffsetbanner{2pt}
+\newlength{\tmp@tkzbanner@autowidth}
+\setlength\tmp@tkzbanner@autowidth{2.5em}
+
+\defKV[tkzBannerpartKeys]{%
+ maincolor=\def\tkzBannermaintricol{#1},%
+ logo=\def\tkzBannermaintrilogo{#1},%
+ type=\def\tkzBannermaintritype{#1},%
+ blockwidth=\def\tkzBannermaintriblockwidth{#1},%
+ customtype=\def\tkzBannermaintritypelibre{#1}
+}
+
+\setKVdefault[tkzBannerpartKeys]{%
+ height=2.5em,%
+ width={\linewidth-0.5pt},%
+ blockwidth=2.75em,%
+ collight=darkgray!25,%
+ colmedium=darkgray!50,%
+ coldark=darkgray,%
+ coltxt=white,%
+ fonttxt=\sffamily\bfseries,%
+ swap=false,%
+ maincolor={},%
+ logo={},%
+ type={},%
+ num=true,
+ dispblock=true,%
+ customtype={}
+}
+
+\NewDocumentCommand\tkzBannerTri{ O{} m m }{%
+ %#1 := clés
+ %#2 := numéro
+ %#3 := titre
+ \noindent%
+ \restoreKV[tkzBannerpartKeys]%
+ \setKV[tkzBannerpartKeys]{#1}%
+ \pgfmathsetmacro{\tkzBannertriscale}{0.75*(\useKV[tkzBannerpartKeys]{height})/1.25cm}%
+ \pgfmathsetmacro{\scaletypedoctribanner}{1.05*0.75*(\useKV[tkzBannerpartKeys]{height})/1.25cm}%
+ \pgfmathsetmacro{\scaletypedoctribannernum}{2.5*0.75*(\useKV[tkzBannerpartKeys]{height})/1.25cm}%
+ \pgfmathsetmacro{\tkzBannertriangle}{0.10*(\useKV[tkzBannerpartKeys]{height})/(\useKV[tkzBannerpartKeys]{width})}%
+ \IfEq{\tkzBannermaintriblockwidth}{auto}%
+ {%
+ \settowidth{\tmp@tkzbanner@autowidthtype}{\scalebox{\scaletypedoctribanner}[\scaletypedoctribanner]{\sffamily\bfseries\vphantom{qÉ}\tkzBannermaintritype}}%
+ \addtolength{\tmp@tkzbanner@autowidthtype}{4pt}%
+ \settowidth{\tmp@tkzbanner@autowidthnum}{\scalebox{\scaletypedoctribannernum}[\scaletypedoctribannernum]{\sffamily\bfseries\vphantom{qÉ}00}}%
+ \addtolength{\tmp@tkzbanner@autowidthnum}{4pt}%
+ \pgfmathsetlength{\tmp@tkzbanner@autowidth}{max(\tmp@tkzbanner@autowidthtype,\tmp@tkzbanner@autowidthnum)}%
+ }%
+ {%
+ \setlength\tmp@tkzbanner@autowidth{\tkzBannermaintriblockwidth}%
+ }%
+ \begin{tikzpicture}
+ \IfEq{\tkzBannermaintricol}{}%
+ {%
+ \tikzset{tkzbannertridark/.style={\useKV[tkzBannerpartKeys]{coldark}}}
+ \tikzset{tkzbannertrimedium/.style={\useKV[tkzBannerpartKeys]{colmedium}}}
+ \tikzset{tkzbannertrilight/.style={\useKV[tkzBannerpartKeys]{collight}}}
+ }%
+ {%
+ \tikzset{tkzbannertridark/.style={\tkzBannermaintricol}}
+ \tikzset{tkzbannertrimedium/.style={\tkzBannermaintricol!50}}
+ \tikzset{tkzbannertrilight/.style={\tkzBannermaintricol!25}}
+ }%
+ %coordinates
+ \coordinate (tkzBannerTri-NW) at (0,{\useKV[tkzBannerpartKeys]{height}}) ;
+ \coordinate (tkzBannerTri-SW) at (0,0) ;
+ \coordinate (tkzBannerTri-NE) at ({\useKV[tkzBannerpartKeys]{width}},{\useKV[tkzBannerpartKeys]{height}}) ;
+ \coordinate (tkzBannerTri-SE) at ({\useKV[tkzBannerpartKeys]{width}},0) ;%
+ \coordinate (tkzBannerTri-SWd) at ($(tkzBannerTri-SW)!0.05!(tkzBannerTri-NW)$) ;%
+ \coordinate (tkzBannerTri-SEd) at ($(tkzBannerTri-SE)!0.15!(tkzBannerTri-NE)$) ;%
+ %drawing & shadow
+ \fill[lightgray!75] ([yshift=-1pt]tkzBannerTri-SWd) -- ([yshift=-1pt]tkzBannerTri-SEd) -- (tkzBannerTri-NE) -| cycle ;
+ \ifboolKV[tkzBannerpartKeys]{swap}%
+ {%
+ \fill[white] (tkzBannerTri-SWd) -- (tkzBannerTri-SEd) -- (tkzBannerTri-NE) -| cycle ;
+ \draw[line width=1pt,tkzbannertridark] ([shift={(0.5pt,-0.5pt)}]tkzBannerTri-NW) -| ([shift={(-0.5pt,0)}]tkzBannerTri-SEd) -- (tkzBannerTri-SWd) ;
+ }%
+ {%
+ \fill[tkzbannertrimedium] (tkzBannerTri-SWd) -- (tkzBannerTri-SEd) -- (tkzBannerTri-NE) -| cycle ;
+ }%
+ \ifboolKV[tkzBannerpartKeys]{dispblock}%
+ {%
+ \begin{scope}
+ \clip ($(tkzBannerTri-SW)!0.0375!(tkzBannerTri-NW)$) -- ($(tkzBannerTri-SE)!0.1375!(tkzBannerTri-NE)$) -- (tkzBannerTri-NE) -| cycle ;
+ %light
+ \fill[tkzbannertrilight] (tkzBannerTri-NW) --++ ({\tmp@tkzbanner@autowidth+2*\tmp@tkzbanner@marginoffsetbanner},0) -- ({\tmp@tkzbanner@autowidth+2*\tmp@tkzbanner@marginoffsetbanner+1em},{0.5*(\useKV[tkzBannerpartKeys]{height})}) -- ({\tmp@tkzbanner@autowidth+2*\tmp@tkzbanner@marginoffsetbanner},0) -- (tkzBannerTri-SW) -- cycle ;
+ \end{scope}
+ \begin{scope}
+ \clip ($(tkzBannerTri-SW)!0.025!(tkzBannerTri-NW)$) -- ($(tkzBannerTri-SE)!0.125!(tkzBannerTri-NE)$) -- (tkzBannerTri-NE) -| cycle ;
+ %medium
+ \fill[tkzbannertrimedium] (tkzBannerTri-NW) --++ ({\tmp@tkzbanner@autowidth+\tmp@tkzbanner@marginoffsetbanner},0) -- ({\tmp@tkzbanner@autowidth+\tmp@tkzbanner@marginoffsetbanner+1em},{0.5*(\useKV[tkzBannerpartKeys]{height})}) -- ({\tmp@tkzbanner@autowidth+\tmp@tkzbanner@marginoffsetbanner},0) -- (tkzBannerTri-SW) -- cycle ;
+ \end{scope}
+ \begin{scope}
+ \clip ($(tkzBannerTri-SW)!0.0125!(tkzBannerTri-NW)$) -- ($(tkzBannerTri-SE)!0.1125!(tkzBannerTri-NE)$) -- (tkzBannerTri-NE) -| cycle ;
+ %dark
+ \fill[tkzbannertridark] (tkzBannerTri-NW) --++ ({\tmp@tkzbanner@autowidth},0) -- ({\tmp@tkzbanner@autowidth+1em},{0.5*(\useKV[tkzBannerpartKeys]{height})}) -- ({\tmp@tkzbanner@autowidth},0) -- (tkzBannerTri-SW) -- cycle ;
+ \IfEq{\tkzBannermaintritypelibre}{}%
+ {%
+ \ifboolKV[tkzBannerpartKeys]{num}%
+ {%
+ \IfEq{\tkzBannermaintritype}{}%
+ {%
+ \node[inner sep=2pt,text={\useKV[tkzBannerpartKeys]{coltxt}},font={\useKV[tkzBannerpartKeys]{fonttxt}},scale={2.5*\tkzBannertriscale},rotate={atan(\tkzBannertriangle)}] at ({0.5*\tmp@tkzbanner@autowidth},{0.5*(\useKV[tkzBannerpartKeys]{height})}) {\vphantom{qÉ}#2};
+ }%
+ {%
+ \node[inner sep=2pt,below=1pt,text={\useKV[tkzBannerpartKeys]{coltxt}},font={\useKV[tkzBannerpartKeys]{fonttxt}},scale={1.05*\tkzBannertriscale},rotate={atan(\tkzBannertriangle)}] at ({0.5*\tmp@tkzbanner@autowidth},{\useKV[tkzBannerpartKeys]{height}}) {\vphantom{qÉ}\tkzBannermaintritype};
+ \node[inner sep=2pt,text={\useKV[tkzBannerpartKeys]{coltxt}},font={\useKV[tkzBannerpartKeys]{fonttxt}},scale={2.5*\tkzBannertriscale},rotate={atan(\tkzBannertriangle)}] at ({0.5*\tmp@tkzbanner@autowidth},{0.425*(\useKV[tkzBannerpartKeys]{height})}) {\vphantom{qÉ}#2};
+ }%
+ }%
+ {}%
+ }%
+ {%
+ \node[inner sep=2pt,text={\useKV[tkzBannerpartKeys]{coltxt}},font={\useKV[tkzBannerpartKeys]{fonttxt}},scale={2.5*\tkzBannertriscale},rotate={atan(\tkzBannertriangle)}] at ({0.5*\tmp@tkzbanner@autowidth},{0.5*(\useKV[tkzBannerpartKeys]{height})}) {\vphantom{qÉ}\tkzBannermaintritypelibre};
+ }%
+ \end{scope}
+ }%
+ {}%
+ %nodes
+ \begin{scope}
+ \clip (tkzBannerTri-SWd) -- (tkzBannerTri-SEd) -- (tkzBannerTri-NE) -| cycle ;
+ \ifboolKV[tkzBannerpartKeys]{swap}%
+ {%
+ \node[inner sep=2pt,right,text=\tkzBannermaintricol,font={\useKV[tkzBannerpartKeys]{fonttxt}},scale={2.75*\tkzBannertriscale},rotate={atan(\tkzBannertriangle)}] at ({\tmp@tkzbanner@autowidth+2*\tmp@tkzbanner@marginoffsetbanner+1.25em},{0.5*(\useKV[tkzBannerpartKeys]{height})}) {\vphantom{qÉ}#3};
+ %logo
+ \IfEq{\tkzBannermaintrilogo}{}%
+ {}%
+ {%
+ \node[inner sep=2pt,left,text=\tkzBannermaintricol,font={\useKV[tkzBannerpartKeys]{fonttxt}},scale={2.5*\tkzBannertriscale},rotate={atan(\tkzBannertriangle)}] at ({\useKV[tkzBannerpartKeys]{width}},{0.55*(\useKV[tkzBannerpartKeys]{height})}) {\vphantom{qÉ}\tkzBannermaintrilogo};
+ }%
+ }%
+ {%
+ \node[inner sep=2pt,right,text={\useKV[tkzBannerpartKeys]{coltxt}},font={\useKV[tkzBannerpartKeys]{fonttxt}},scale={2.75*\tkzBannertriscale},rotate={atan(\tkzBannertriangle)}] at ({\tmp@tkzbanner@autowidth+2*\tmp@tkzbanner@marginoffsetbanner+1.25em},{0.5*(\useKV[tkzBannerpartKeys]{height})}) {\vphantom{qÉ}#3};
+ %logo
+ \IfEq{\tkzBannermaintrilogo}{}%
+ {}%
+ {%
+ \node[inner sep=2pt,left,text={\useKV[tkzBannerpartKeys]{coltxt}},font={\useKV[tkzBannerpartKeys]{fonttxt}},scale={2.5*\tkzBannertriscale},rotate={atan(\tkzBannertriangle)}] at ({\useKV[tkzBannerpartKeys]{width}},{0.55*(\useKV[tkzBannerpartKeys]{height})}) {\vphantom{qÉ}\tkzBannermaintrilogo};
+ }%
+ }%
+ \end{scope}
+ \end{tikzpicture}%
+}
+
+%====grille automatique tikz ?
+\NewDocumentCommand\tkzGrilleAuto{ s O{thin,lightgray} m }{%
+ \IfBooleanT{#1}{\filldraw (0,0) circle[radius=2pt] ;}
+ \StrCut{#3}{§}{\tkzautogridx}{\tkzautogridy}%
+ \draw[xstep=\tkzautogridx,ystep=\tkzautogridy,#2] (current bounding box.south west) grid (current bounding box.north east) ;
+}
+\NewDocumentCommand\tkzAutoGrid{ s O{thin,lightgray} m }{%
+ \IfBooleanT{#1}{\filldraw (0,0) circle[radius=2pt] ;}
+ \StrCut{#3}{§}{\tkzautogridx}{\tkzautogridy}%
+ \draw[xstep=\tkzautogridx,ystep=\tkzautogridy,#2] (current bounding box.south west) grid (current bounding box.north east) ;
+}
+
+\tikzset{grilleauto/.store in=\tkzautogrid,grilleauto/.default={},grilleauto={}}
+\tikzset{autogrid/.store in=\tkzautogrid,autogrid/.default={},autogrid={}}
+
+\NewDocumentCommand\tkzAutoGridActivate{ s }{%
+ \@ifundefined{tkzautogrid}%
+ {}%
+ {%
+ \tikzset{every picture/.style={%
+ execute at end picture={%
+ \IfEq{\tkzautogrid}{}{}{\IfBooleanTF{#1}{\tkzGrilleAuto*{\tkzautogrid}}{\tkzGrilleAuto{\tkzautogrid}}}%
+ },
+ },
+ }%
+ }%
+}
+
+\NewDocumentCommand\tkzAutoGridLocal{ s }{%
+ \@ifundefined{tkzautogrid}%
+ {}%
+ {%
+ \tikzset{execute at end picture={%
+ \IfEq{\tkzautogrid}{}{}{\IfBooleanTF{#1}{\tkzGrilleAuto*{\tkzautogrid}}{\tkzGrilleAuto{\tkzautogrid}}}%
+ },
+ },
+ }%
+}
+
+%====FLÈCHE ÉVASÉE [FR]
+\usetikzlibrary{arrows,arrows.meta}
+
+\defKV[FlecheEvasee]{%
+ Couleur=\def\FlecheEvaseeCouleur{#1},%
+ TailleFleche=\def\FlecheEvaseeFleche{#1},%
+ Direction=\def\FlecheEvaseeDirectionAngle{#1},%
+ Coeff=\def\FlecheEvaseeCoeff{#1},%
+ TypeFleche=\def\FlecheEvaseeType{#1},%
+ Epaisseur=\def\FlecheEvaseeEpaisseur{#1},%
+ LineCap=\def\FlecheEvaseeLineCap{#1}
+}
+\setKVdefault[FlecheEvasee]{%
+ Couleur=black,%
+ TailleFleche=auto,%
+ Direction={},%
+ Coeff=4,%
+ TypeFleche=Latex,%
+ Deplacement=false,%
+ Epaisseur=0.5mm,%
+ LineCap=butt
+}
+
+\NewDocumentCommand\tkzFlecheEvasee{ O{} m m }{%1=options,2=début,3=fin
+ \restoreKV[FlecheEvasee]%
+ \setKV[FlecheEvasee]{#1}%
+ \begin{scope}[line width=0.05mm]
+ \IfStrEq{\FlecheEvaseeFleche}{auto}%
+ {%
+ \xdef\FlecheEvaseeH{2*\FlecheEvaseeCoeff*\FlecheEvaseeEpaisseur}%
+ \xdef\FlecheEvaseeW{2.1*\FlecheEvaseeCoeff*\FlecheEvaseeEpaisseur}%
+ }%
+ {%
+ \StrCut{\FlecheEvaseeFleche}{/}{\FlecheEvaseeH}{\FlecheEvaseeW}%
+ }%
+ \IfEq{\FlecheEvaseeDirectionAngle}{}%
+ {%
+ \xdef\FlecheEvaseeDirection{}\xdef\FlecheEvaseeAngle{0}%
+ }%
+ {%
+ \StrCut{\FlecheEvaseeDirectionAngle}{/}{\FlecheEvaseeDirection}{\FlecheEvaseeAngle}%
+ }%
+ %coordonnées
+ \coordinate (TMPDEPART) at (#2) ;
+ \ifboolKV[FlecheEvasee]{Deplacement}%
+ {%
+ \coordinate (TMPARRIVEE) at ($(TMPDEPART)+(#3)$) ;
+ }%
+ {%
+ \coordinate (TMPARRIVEE) at (#3) ;
+ }
+ \pgfmathanglebetweenpoints{\pgfpointanchor{TMPDEPART}{center}}{\pgfpointanchor{TMPARRIVEE}{center}}%
+ \edef\tmpangle{\pgfmathresult}%
+ %nœuds
+ \IfEq{\FlecheEvaseeDirection}{right}%
+ {%
+ \coordinate (TMPDG) at ([shift={({90+\tmpangle-\FlecheEvaseeAngle}:{0.5*\FlecheEvaseeEpaisseur})}]TMPDEPART) ;
+ \coordinate (TMPDD) at ([shift={({-90+\tmpangle-\FlecheEvaseeAngle}:{0.5*\FlecheEvaseeEpaisseur})}]TMPDEPART) ;
+ \coordinate (TMPF) at ($(TMPARRIVEE)+({\FlecheEvaseeAngle+\tmpangle+180}:\FlecheEvaseeH)$) ;
+ \coordinate (TMPFG) at ($(TMPARRIVEE)+({\FlecheEvaseeAngle+\tmpangle+180}:\FlecheEvaseeH)+({\FlecheEvaseeAngle+\tmpangle-90}:{0.5*\FlecheEvaseeCoeff*\FlecheEvaseeEpaisseur})$) ;
+ \coordinate (TMPFD) at ($(TMPARRIVEE)+({\FlecheEvaseeAngle+\tmpangle+180}:\FlecheEvaseeH)+({\FlecheEvaseeAngle+\tmpangle+90}:{0.5*\FlecheEvaseeCoeff*\FlecheEvaseeEpaisseur})$) ;
+ \IfStrEq{\FlecheEvaseeType}{Stealth}%
+ {%
+ \draw[\FlecheEvaseeCouleur,->,-{\FlecheEvaseeType[length={1.5*\FlecheEvaseeH},width={1.1*\FlecheEvaseeW}]}] (TMPF)--(TMPARRIVEE) ;
+ }%
+ {%
+ \draw[\FlecheEvaseeCouleur,->,-{\FlecheEvaseeType[length=\FlecheEvaseeH,width=\FlecheEvaseeW]}] (TMPF)--(TMPARRIVEE) ;
+ }%
+ \filldraw[line cap=\FlecheEvaseeLineCap,\FlecheEvaseeCouleur] (TMPDD) to[bend right=\FlecheEvaseeAngle] (TMPFG) -- (TMPFD) to[bend left=\FlecheEvaseeAngle] (TMPDG) --cycle ;
+ }%
+ {}%
+ \IfEq{\FlecheEvaseeDirection}{left}%
+ {%
+ \coordinate (TMPDG) at ([shift={({90+\tmpangle+\FlecheEvaseeAngle}:{0.5*\FlecheEvaseeEpaisseur})}]TMPDEPART) ;
+ \coordinate (TMPDD) at ([shift={({-90+\tmpangle+\FlecheEvaseeAngle}:{0.5*\FlecheEvaseeEpaisseur})}]TMPDEPART) ;
+ \coordinate (TMPF) at ($(TMPARRIVEE)+({180+\tmpangle-\FlecheEvaseeAngle}:\FlecheEvaseeH)$) ;
+ \coordinate (TMPFG) at ($(TMPARRIVEE)+({180+\tmpangle-\FlecheEvaseeAngle}:\FlecheEvaseeH)+({180+\tmpangle-\FlecheEvaseeAngle+90}:{0.5*\FlecheEvaseeCoeff*\FlecheEvaseeEpaisseur})$) ;
+ \coordinate (TMPFD) at ($(TMPARRIVEE)+({180+\tmpangle-\FlecheEvaseeAngle}:\FlecheEvaseeH)+({180+\tmpangle-\FlecheEvaseeAngle-90}:{0.5*\FlecheEvaseeCoeff*\FlecheEvaseeEpaisseur})$) ;
+ \IfStrEq{\FlecheEvaseeType}{Stealth}%
+ {%
+ \draw[\FlecheEvaseeCouleur,->,-{\FlecheEvaseeType[length={1.5*\FlecheEvaseeH},width={1.1*\FlecheEvaseeW}]}] (TMPF)--(TMPARRIVEE) ;
+ }%
+ {%
+ \draw[\FlecheEvaseeCouleur,->,-{\FlecheEvaseeType[length=\FlecheEvaseeH,width=\FlecheEvaseeW]}] (TMPF)--(TMPARRIVEE) ;
+ }%
+ \filldraw[line cap=\FlecheEvaseeLineCap,\FlecheEvaseeCouleur] (TMPDD) to[bend left=\FlecheEvaseeAngle] (TMPFG) -- (TMPFD) to[bend right=\FlecheEvaseeAngle] (TMPDG) --cycle ;
+ }%
+ {}%
+ \IfEq{\FlecheEvaseeDirection}{}%
+ {%
+ \coordinate (TMPF) at ($(TMPARRIVEE)+({180+\tmpangle-\FlecheEvaseeAngle}:\FlecheEvaseeH)$) ;
+ \coordinate (TMPDG) at ([shift={({90+\tmpangle-\FlecheEvaseeAngle}:{0.5*\FlecheEvaseeEpaisseur})}]TMPDEPART) ;
+ \coordinate (TMPFG) at ($(TMPARRIVEE)+({180+\tmpangle-\FlecheEvaseeAngle}:\FlecheEvaseeH)+({-90+\tmpangle-\FlecheEvaseeAngle}:{-0.5*\FlecheEvaseeCoeff*\FlecheEvaseeEpaisseur})$) ;
+ \coordinate (TMPFD) at ($(TMPARRIVEE)+({180+\tmpangle-\FlecheEvaseeAngle}:\FlecheEvaseeH)+({-90+\tmpangle-\FlecheEvaseeAngle}:{0.5*\FlecheEvaseeCoeff*\FlecheEvaseeEpaisseur})$) ;
+ \coordinate (TMPDD) at ([shift={({-90+\tmpangle-\FlecheEvaseeAngle}:{0.5*\FlecheEvaseeEpaisseur})}]TMPDEPART) ;
+ \IfStrEq{\FlecheEvaseeType}{Stealth}%
+ {%
+ \draw[\FlecheEvaseeCouleur,->,-{\FlecheEvaseeType[length={1.5*\FlecheEvaseeH},width={1.1*\FlecheEvaseeW}]}] (TMPF)--(TMPARRIVEE) ;
+ }%
+ {%
+ \draw[\FlecheEvaseeCouleur,->,-{\FlecheEvaseeType[length=\FlecheEvaseeH,width=\FlecheEvaseeW]}] (TMPF)--(TMPARRIVEE) ;
+ }%
+ \filldraw[line cap=\FlecheEvaseeLineCap,\FlecheEvaseeCouleur] (TMPDG) to (TMPFG) -- (TMPFD) to (TMPDD) --cycle ;
+ }%
+ {}%
+ \end{scope}
+}
+
+%====FLÈCHE ÉVASÉE [EN]
+\defKV[flaredarrow]{%
+ color=\def\FlecheEvaseeCouleur{#1},%
+ arrowsize=\def\FlecheEvaseeFleche{#1},%
+ bend=\def\FlecheEvaseeDirectionAngle{#1},%
+ factor=\def\FlecheEvaseeCoeff{#1},%
+ arrowstyle=\def\FlecheEvaseeType{#1},%
+ thickness=\def\FlecheEvaseeEpaisseur{#1},%
+ linecap=\def\FlecheEvaseeLineCap{#1}
+}
+\setKVdefault[flaredarrow]{%
+ color=black,%
+ arrowsize=auto,%
+ bend={},%
+ factor=4,%
+ arrowstyle=Latex,%
+ move=false,%
+ thickness=0.5mm,%
+ linecap=butt
+}
+
+\NewDocumentCommand\tkzFlaredArrow{ O{} m m }{%1=options,2=début,3=fin
+ \restoreKV[flaredarrow]%
+ \setKV[flaredarrow]{#1}%
+ \begin{scope}[line width=0.05mm]
+ \IfStrEq{\FlecheEvaseeFleche}{auto}%
+ {%
+ \xdef\FlecheEvaseeH{2*\FlecheEvaseeCoeff*\FlecheEvaseeEpaisseur}%
+ \xdef\FlecheEvaseeW{2.1*\FlecheEvaseeCoeff*\FlecheEvaseeEpaisseur}%
+ }%
+ {%
+ \StrCut{\FlecheEvaseeFleche}{/}{\FlecheEvaseeH}{\FlecheEvaseeW}%
+ }%
+ \IfEq{\FlecheEvaseeDirectionAngle}{}%
+ {%
+ \xdef\FlecheEvaseeDirection{}\xdef\FlecheEvaseeAngle{0}%
+ }%
+ {%
+ \StrCut{\FlecheEvaseeDirectionAngle}{/}{\FlecheEvaseeDirection}{\FlecheEvaseeAngle}%
+ }%
+ %coordonnées
+ \coordinate (TMPDEPART) at (#2) ;
+ \ifboolKV[flaredarrow]{move}%
+ {%
+ \coordinate (TMPARRIVEE) at ($(TMPDEPART)+(#3)$) ;
+ }%
+ {%
+ \coordinate (TMPARRIVEE) at (#3) ;
+ }
+ \pgfmathanglebetweenpoints{\pgfpointanchor{TMPDEPART}{center}}{\pgfpointanchor{TMPARRIVEE}{center}}%
+ \edef\tmpangle{\pgfmathresult}%
+ %nœuds
+ \IfEq{\FlecheEvaseeDirection}{right}%
+ {%
+ \coordinate (TMPDG) at ([shift={({90+\tmpangle-\FlecheEvaseeAngle}:{0.5*\FlecheEvaseeEpaisseur})}]TMPDEPART) ;
+ \coordinate (TMPDD) at ([shift={({-90+\tmpangle-\FlecheEvaseeAngle}:{0.5*\FlecheEvaseeEpaisseur})}]TMPDEPART) ;
+ \coordinate (TMPF) at ($(TMPARRIVEE)+({\FlecheEvaseeAngle+\tmpangle+180}:\FlecheEvaseeH)$) ;
+ \coordinate (TMPFG) at ($(TMPARRIVEE)+({\FlecheEvaseeAngle+\tmpangle+180}:\FlecheEvaseeH)+({\FlecheEvaseeAngle+\tmpangle-90}:{0.5*\FlecheEvaseeCoeff*\FlecheEvaseeEpaisseur})$) ;
+ \coordinate (TMPFD) at ($(TMPARRIVEE)+({\FlecheEvaseeAngle+\tmpangle+180}:\FlecheEvaseeH)+({\FlecheEvaseeAngle+\tmpangle+90}:{0.5*\FlecheEvaseeCoeff*\FlecheEvaseeEpaisseur})$) ;
+ \IfStrEq{\FlecheEvaseeType}{Stealth}%
+ {%
+ \draw[\FlecheEvaseeCouleur,->,-{\FlecheEvaseeType[length={1.5*\FlecheEvaseeH},width={1.1*\FlecheEvaseeW}]}] (TMPF)--(TMPARRIVEE) ;
+ }%
+ {%
+ \draw[\FlecheEvaseeCouleur,->,-{\FlecheEvaseeType[length=\FlecheEvaseeH,width=\FlecheEvaseeW]}] (TMPF)--(TMPARRIVEE) ;
+ }%
+ \filldraw[line cap=\FlecheEvaseeLineCap,\FlecheEvaseeCouleur] (TMPDD) to[bend right=\FlecheEvaseeAngle] (TMPFG) -- (TMPFD) to[bend left=\FlecheEvaseeAngle] (TMPDG) --cycle ;
+ }%
+ {}%
+ \IfEq{\FlecheEvaseeDirection}{left}%
+ {%
+ \coordinate (TMPDG) at ([shift={({90+\tmpangle+\FlecheEvaseeAngle}:{0.5*\FlecheEvaseeEpaisseur})}]TMPDEPART) ;
+ \coordinate (TMPDD) at ([shift={({-90+\tmpangle+\FlecheEvaseeAngle}:{0.5*\FlecheEvaseeEpaisseur})}]TMPDEPART) ;
+ \coordinate (TMPF) at ($(TMPARRIVEE)+({180+\tmpangle-\FlecheEvaseeAngle}:\FlecheEvaseeH)$) ;
+ \coordinate (TMPFG) at ($(TMPARRIVEE)+({180+\tmpangle-\FlecheEvaseeAngle}:\FlecheEvaseeH)+({180+\tmpangle-\FlecheEvaseeAngle+90}:{0.5*\FlecheEvaseeCoeff*\FlecheEvaseeEpaisseur})$) ;
+ \coordinate (TMPFD) at ($(TMPARRIVEE)+({180+\tmpangle-\FlecheEvaseeAngle}:\FlecheEvaseeH)+({180+\tmpangle-\FlecheEvaseeAngle-90}:{0.5*\FlecheEvaseeCoeff*\FlecheEvaseeEpaisseur})$) ;
+ \IfStrEq{\FlecheEvaseeType}{Stealth}%
+ {%
+ \draw[\FlecheEvaseeCouleur,->,-{\FlecheEvaseeType[length={1.5*\FlecheEvaseeH},width={1.1*\FlecheEvaseeW}]}] (TMPF)--(TMPARRIVEE) ;
+ }%
+ {%
+ \draw[\FlecheEvaseeCouleur,->,-{\FlecheEvaseeType[length=\FlecheEvaseeH,width=\FlecheEvaseeW]}] (TMPF)--(TMPARRIVEE) ;
+ }%
+ \filldraw[line cap=\FlecheEvaseeLineCap,\FlecheEvaseeCouleur] (TMPDD) to[bend left=\FlecheEvaseeAngle] (TMPFG) -- (TMPFD) to[bend right=\FlecheEvaseeAngle] (TMPDG) --cycle ;
+ }%
+ {}%
+ \IfEq{\FlecheEvaseeDirection}{}%
+ {%
+ \coordinate (TMPF) at ($(TMPARRIVEE)+({180+\tmpangle-\FlecheEvaseeAngle}:\FlecheEvaseeH)$) ;
+ \coordinate (TMPDG) at ([shift={({90+\tmpangle-\FlecheEvaseeAngle}:{0.5*\FlecheEvaseeEpaisseur})}]TMPDEPART) ;
+ \coordinate (TMPFG) at ($(TMPARRIVEE)+({180+\tmpangle-\FlecheEvaseeAngle}:\FlecheEvaseeH)+({-90+\tmpangle-\FlecheEvaseeAngle}:{-0.5*\FlecheEvaseeCoeff*\FlecheEvaseeEpaisseur})$) ;
+ \coordinate (TMPFD) at ($(TMPARRIVEE)+({180+\tmpangle-\FlecheEvaseeAngle}:\FlecheEvaseeH)+({-90+\tmpangle-\FlecheEvaseeAngle}:{0.5*\FlecheEvaseeCoeff*\FlecheEvaseeEpaisseur})$) ;
+ \coordinate (TMPDD) at ([shift={({-90+\tmpangle-\FlecheEvaseeAngle}:{0.5*\FlecheEvaseeEpaisseur})}]TMPDEPART) ;
+ \IfStrEq{\FlecheEvaseeType}{Stealth}%
+ {%
+ \draw[\FlecheEvaseeCouleur,->,-{\FlecheEvaseeType[length={1.5*\FlecheEvaseeH},width={1.1*\FlecheEvaseeW}]}] (TMPF)--(TMPARRIVEE) ;
+ }%
+ {%
+ \draw[\FlecheEvaseeCouleur,->,-{\FlecheEvaseeType[length=\FlecheEvaseeH,width=\FlecheEvaseeW]}] (TMPF)--(TMPARRIVEE) ;
+ }%
+ \filldraw[line cap=\FlecheEvaseeLineCap,\FlecheEvaseeCouleur] (TMPDG) to (TMPFG) -- (TMPFD) to (TMPDD) --cycle ;
+ }%
+ {}%
+ \end{scope}
+}
+
+%====PANO AUTOROUTE
+\newlength{\PanoTorouteStretch}
+\newlength{\PanoTorouteOffsetArrow}
+
+\defKV[PanoAutoroute]{%
+ Fleches=\def\PanoTorouteArrow{#1},%
+ CouleurFond=\def\PanoTorouteCoul{#1},%
+ CouleurTitre=\def\PanoTorouteCoulTitre{#1},%
+ Police=\def\PanoTorouteFonte{#1},%
+ PoliceCartouche=\def\PanoTorouteFonteTitre{#1},%
+ TypeFleche=\def\PanoTorouteStyleArrow{#1},%
+ EspacementV=\setlength{\PanoTorouteStretch}{#1},%
+ OffsetFleches=\setlength{\PanoTorouteOffsetArrow}{#1}
+}
+
+\setKVdefault[PanoAutoroute]{%
+ Fleches=0,%
+ CouleurFond=blue,%
+ CouleurTitre=red,%
+ Largeur=10cm,%
+ Police=\LARGE\bfseries\sffamily,%
+ PoliceCartouche=\Large\bfseries\sffamily,%
+ TypeFleche={\scalebox{1.33}[1.25]{\faArrowDown}},%
+ EspacementV={2.5mm},%
+ OffsetFleches={5mm},%
+ Dernier=true
+}
+
+\NewDocumentEnvironment{PanneauAutoroute}{ O{} D<>{} m }%
+{%
+ \restoreKV[PanoAutoroute]%
+ \setKV[PanoAutoroute]{#1}
+ \IfEq{#3}{}%
+ {%
+ \tcolorbox[enhanced,width={\useKV[PanoAutoroute]{Largeur}},fontupper=\PanoTorouteFonte,colback=\PanoTorouteCoul,colframe=\PanoTorouteCoul!5!white,coltext=white,sharp corners,boxsep=1mm,left=1mm,right=1mm,top=1mm,bottom=1mm,#2]
+ }%
+ {%
+ \tcolorbox[enhanced,width={\useKV[PanoAutoroute]{Largeur}},fontupper=\PanoTorouteFonte,colback=\PanoTorouteCoul,colframe=\PanoTorouteCoul!5!white,coltext=white,sharp corners,boxsep=1mm,left=1mm,right=1mm,top=1mm,bottom=1mm,attach boxed title to top center,fonttitle=\PanoTorouteFonteTitre,coltitle=white,boxed title style={colback=\PanoTorouteCoulTitre,size=small,sharp corners,left=0mm,right=0mm,colframe=\PanoTorouteCoulTitre!5!white},title={#3},#2]
+ }%
+ \baselineskip=-1000pt\lineskip=\PanoTorouteStretch\lineskiplimit=\maxdimen%
+}%
+{%
+ \ifnum\PanoTorouteArrow>0
+
+ \medskip
+ \hspace*{\PanoTorouteOffsetArrow}\foreach \i in {1,...,\PanoTorouteArrow}{\hfill\PanoTorouteStyleArrow}\hfill\hspace*{\PanoTorouteOffsetArrow}
+ \fi%
+ \endtcolorbox%
+ %
+ \ifboolKV[PanoAutoroute]{Dernier}{}{\vspace*{\dimexpr-\baselineskip-0.5mm\relax}}%
+}
+
+\NewDocumentCommand\VilleDist{ s m m }{%
+ \IfBooleanTF{#1}%
+ {%
+ #2\hfill~#3
+ }%
+ {%
+ #2\hfill~#3\\
+ }%
+}
+
+%====PANOSOLDES
+\newlength{\tmphautbannsold}
+\newlength{\tmphautbannsoldextra}
+\newlength{\tmplargbannsold}
+\newlength{\tmplargasold}
+\newlength{\tmplargbsold}
+\newlength{\tmplargtotsold}
+\newlength{\tmpoffsetbannsold}
+\newlength{\tmphautlignesol}
+\newlength{\tmphautsoles}
+
+\def\labelancienprix{Ancien Prix~:~}
+\def\labelnouveauprix{Nouveau Prix~:~}
+\def\labelreduction{SOLDES~:~}
+
+\defKV[PanoSoldes]{%
+ Couleur=\def\panosoldescolor{#1},%
+ Largeur=\def\panosoldeswidth{#1},%
+ PoliceEntete=\def\panosoldesfonthaut{#1},%
+ PolicePrix=\def\panosoldesfontprix{#1},%
+ PoliceReduc=\def\panosoldesfontreduc{#1},%
+ OffsetReduc=\setlength{\tmpoffsetbannsold}{#1},%
+ Titre=\def\panosoldestitre{#1},%
+ AgrandirReduc=\setlength{\tmphautbannsoldextra}{#1}
+}
+
+\setKVdefault[PanoSoldes]{%
+ Couleur=gray,
+ Largeur=auto,
+ PoliceEntete=\large\bfseries,%
+ PolicePrix=\footnotesize,%
+ PoliceReduc=\large\bfseries,%
+ Titre=GRANDE DÉMARQUE,%
+ OffsetReduc=1.25cm,%
+ AgrandirReduc=0mm
+}
+
+\NewDocumentCommand\AfficheSoldes{ O{} m m m }{%
+ \restoreKV[PanoSoldes]%
+ \setKV[PanoSoldes]{#1}%
+ %calcul de la largeur
+ \IfEq{\panosoldeswidth}{auto}%
+ {%
+ \settowidth{\tmplargbannsold}{{\panosoldesfontreduc\labelreduction-999X}}%largeur avec un peu de marge dûe à la rotation
+ \settowidth{\tmplargasold}{{\panosoldesfontprix\labelancienprix99999X}}%largeur avec un peu de marge dûe au prix "élastique"
+ \settowidth{\tmplargbsold}{{\panosoldesfontprix\labelnouveauprix99999X}}%largeur avec un peu de marge dûe au prix "élastique"
+ \pgfmathsetlength{\tmplargtotsold}{max(\tmplargbannsold,\tmplargasold,\tmplargbsold)+1mm}%on rajoute encore un peu de marge pour être sûr
+ }%
+ {%
+ \setlength{\tmplargtotsold}{\panosoldeswidth}%
+ }%
+ %calcul de la hauteur
+ \settototalheight{\tmphautlignesol}{\panosoldesfontprix\labelancienprix\labelnouveauprix0,123456789X}%
+ \settototalheight{\tmphautbannsold}{\panosoldesfontreduc\labelreduction-0,123456789X}%
+ \addtolength{\tmphautbannsold}{6mm+\tmphautbannsoldextra}%
+ \setlength{\tmphautsoles}{2\tmphautlignesol}%
+ \addtolength{\tmphautsoles}{\tmpoffsetbannsold+2mm}%
+ \addtolength{\tmphautsoles}{\tmphautbannsold}%
+ %boîte
+ \tcolorbox[%
+ enhanced,nobeforeafter,width=\tmplargtotsold,text height=\tmphautsoles,boxrule=0.5mm,boxsep=0.5mm,title={\panosoldestitre},halign title=flush center,colframe=\panosoldescolor,colback=white,top=1.25mm,bottom=1.25mm,left=1.25mm,right=1.25mm,fonttitle=\panosoldesfonthaut,%
+ overlay={%
+ \begin{tcbclipframe}
+ \draw ([shift={(1.25mm,-2mm)}]interior.north west) node[anchor=north west,font=\panosoldesfontprix,inner sep=0pt] {Ancien prix : {#2}} ;
+ \draw ([shift={(-1.25mm,2.5mm)}]interior.south east) node[anchor=south east,left,font=\panosoldesfontprix,inner sep=0pt] {Nouveau prix : {#3}} ;
+ %bannière (cf Séb Lozano)
+ \fill[line cap=rect,\panosoldescolor] ([shift={(0,2.5mm+\tmphautlignesol)}]interior.south west)--([shift={(0,2.5mm+\tmphautlignesol+\tmpoffsetbannsold)}]interior.south east)--++(0,\tmphautbannsold)--([shift={(0,2.5mm+\tmphautlignesol+\tmphautbannsold)}]interior.south west) ;
+ %petit filet
+ \draw[white,semithick] ([shift={(0,2.5mm+\tmphautlignesol+1pt)}]interior.south west)--([shift={(0,2.5mm+\tmphautlignesol+\tmpoffsetbannsold+1pt)}]interior.south east)--++(0,\tmphautbannsold-2pt)--([shift={(0,2.5mm+\tmphautlignesol+\tmphautbannsold-1pt)}]interior.south west)--cycle ;
+ %label
+ \draw[draw=none] ([shift={(0,2.5mm+\tmphautlignesol+0.5\tmphautbannsold)}]interior.south west) -- ([shift={(0,2.5mm+\tmphautlignesol+\tmpoffsetbannsold+0.5\tmphautbannsold)}]interior.south east) node[midway,sloped,font=\panosoldesfontreduc,text=white] {SOLDES : {#4}} ;
+ \end{tcbclipframe}%
+ }%
+ ]%
+ \endtcolorbox%
+}
+
\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/dashrulex/dashrulex.sty b/Master/texmf-dist/tex/latex/dashrulex/dashrulex.sty
index 915d61a0d1e..090cfe2931f 100644
--- a/Master/texmf-dist/tex/latex/dashrulex/dashrulex.sty
+++ b/Master/texmf-dist/tex/latex/dashrulex/dashrulex.sty
@@ -9,7 +9,7 @@
% https://creativecommons.org/licenses/by/4.0/legalcode
\NeedsTeXFormat{LaTeX2e}[2012/02/12]
\RequirePackage{xparse}
-\ProvidesExplPackage{dashrulex}{2024/03/25}{1.00c}
+\ProvidesExplPackage{dashrulex}{2024/07/18}{1.01a}
{Draw dashed rules}
\DeclareDocumentCommand{\hdashrule}{O{0pt}O{x}mmm}
{
@@ -72,7 +72,7 @@
\int_if_even:nTF { \l__drx_vrule_counter_int }
{ \drx@step@counter@height{##1} }
{
- \kern -#4
+ \tex_kern:D -#4
\exp_args:NV
\raisebox\l__drx_vrule_height_dim{\rule{#4}{##1}}
\drx@step@counter@height{##1}
diff --git a/Master/texmf-dist/tex/latex/dccpaper/dccpaper-base.sty b/Master/texmf-dist/tex/latex/dccpaper/dccpaper-base.sty
index 5e2af203063..3a5f08ca8c5 100644
--- a/Master/texmf-dist/tex/latex/dccpaper/dccpaper-base.sty
+++ b/Master/texmf-dist/tex/latex/dccpaper/dccpaper-base.sty
@@ -14,7 +14,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/08/11 v2.4}
+\def\Version{2024/08/23 v2.5}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesPackage{dccpaper-base}
[\Version\space Common class code for IJDC and IDCC papers.]
@@ -818,7 +818,7 @@
}
\endgroup
%%
-%% Copyright (C) 2023 Digital Curation Centre, University of Edinburgh
+%% Copyright (C) 2024 Digital Curation Centre, University of Edinburgh
%% <info@dcc.ac.uk>
%%
%% End of file `dccpaper-base.sty'.
diff --git a/Master/texmf-dist/tex/latex/dccpaper/idcc.cls b/Master/texmf-dist/tex/latex/dccpaper/idcc.cls
index 0e8345f25cb..bbc5329095b 100644
--- a/Master/texmf-dist/tex/latex/dccpaper/idcc.cls
+++ b/Master/texmf-dist/tex/latex/dccpaper/idcc.cls
@@ -14,7 +14,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/08/11 v2.4}
+\def\Version{2024/08/23 v2.5}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesClass{idcc}
[\Version\space Class for submissions to the International Digital Curation Conference.]
@@ -109,9 +109,15 @@
\DeclareOption{24}{%
\def\dccp@publ@short{IDCC}
\def\dccp@publ@msg{The 18th \dccp@publ@long\ takes place on 19--21 February
- 2024 in Edinburgh, Scotland.\par\bigskip URL: \url{https://www.dcc.ac.uk/events/18th-international-digital-curation-conference}}
+ 2024 in Edinburgh, Scotland.\par\bigskip URL: \url{https://www.dcc.ac.uk/events/idcc24}}
\def\dccp@subject{18th \dccp@publ@long, 2024}
}
+\DeclareOption{25}{%
+ \def\dccp@publ@short{IDCC25}
+ \def\dccp@publ@msg{The 19th \dccp@publ@long\ takes place on 17--19 February
+ 2025 in The Hague, Netherlands.\par\bigskip URL: \url{https://www.dcc.ac.uk/events/idcc25}}
+ \def\dccp@subject{19th \dccp@publ@long, 2025}
+}
\ProcessOptions\relax
\def\@clearglobaloption#1{%
@@ -135,7 +141,7 @@
\RequirePackage{dccpaper-base}
%%
-%% Copyright (C) 2023 Digital Curation Centre, University of Edinburgh
+%% Copyright (C) 2024 Digital Curation Centre, University of Edinburgh
%% <info@dcc.ac.uk>
%%
%% End of file `idcc.cls'.
diff --git a/Master/texmf-dist/tex/latex/dccpaper/ijdc-v14.cls b/Master/texmf-dist/tex/latex/dccpaper/ijdc-v14.cls
index 1d88c3e3bfb..bccd3b5f7a9 100644
--- a/Master/texmf-dist/tex/latex/dccpaper/ijdc-v14.cls
+++ b/Master/texmf-dist/tex/latex/dccpaper/ijdc-v14.cls
@@ -14,7 +14,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/08/11 v2.4}
+\def\Version{2024/08/23 v2.5}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesClass{ijdc-v14}
[\Version\space Class for submissions to the International Journal of Digital Curation, volume 14 onwards.]
@@ -58,7 +58,7 @@ the University of Edinburgh on behalf of the Digital Curation Centre. ISSN:
\RequirePackage{dccpaper-base}
%%
-%% Copyright (C) 2023 Digital Curation Centre, University of Edinburgh
+%% Copyright (C) 2024 Digital Curation Centre, University of Edinburgh
%% <info@dcc.ac.uk>
%%
%% End of file `ijdc-v14.cls'.
diff --git a/Master/texmf-dist/tex/latex/dccpaper/ijdc-v9.cls b/Master/texmf-dist/tex/latex/dccpaper/ijdc-v9.cls
index 8f4d08311bd..4c60ec50b0d 100644
--- a/Master/texmf-dist/tex/latex/dccpaper/ijdc-v9.cls
+++ b/Master/texmf-dist/tex/latex/dccpaper/ijdc-v9.cls
@@ -14,7 +14,7 @@
%% See: http://www.latex-project.org/lppl.txt
%% ----------------------------------------------------------------
%%
-\def\Version{2023/08/11 v2.4}
+\def\Version{2024/08/23 v2.5}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesClass{ijdc-v9}
[\Version\space Class for submissions to the International Journal of Digital Curation, volumes 9--13 inclusive.]
@@ -58,7 +58,7 @@ the University of Edinburgh on behalf of the Digital Curation Centre. ISSN:
\RequirePackage{dccpaper-base}
%%
-%% Copyright (C) 2023 Digital Curation Centre, University of Edinburgh
+%% Copyright (C) 2024 Digital Curation Centre, University of Edinburgh
%% <info@dcc.ac.uk>
%%
%% End of file `ijdc-v9.cls'.
diff --git a/Master/texmf-dist/tex/latex/delimset/delimset.sty b/Master/texmf-dist/tex/latex/delimset/delimset.sty
index 3646c0d17bc..28ba8ba53e3 100644
--- a/Master/texmf-dist/tex/latex/delimset/delimset.sty
+++ b/Master/texmf-dist/tex/latex/delimset/delimset.sty
@@ -6,7 +6,7 @@
%%
%% delimset.dtx (with options: `package')
%%
-%% Copyright (C) 2016-2018 Niklas Beisert
+%% Copyright (C) 2016-2024 Niklas Beisert
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -17,7 +17,7 @@
%% version 2005/12/01 or later.
%%
\NeedsTeXFormat{LaTeX2e}[1996/12/01]
-\ProvidesPackage{delimset}[2018/12/30 v1.1 convenient size control for delimiter sets]
+\ProvidesPackage{delimset}[2024/07/17 v2.0 convenient size control for delimiter sets]
\RequirePackage{amsmath}
\RequirePackage{keyval}
@@ -47,106 +47,220 @@
{\bBigg@choice{\scriptscriptstyle}{0.5}{#1}{#2}}}}
\fi
-\newcommand{\bigp}{\mathpunct\big}
-\newcommand{\Bigp}{\mathpunct\Big}
-\newcommand{\biggp}{\mathpunct\bigg}
-\newcommand{\Biggp}{\mathpunct\Bigg}
-\newcommand{\bigb}{\mathbin\big}
-\newcommand{\Bigb}{\mathbin\Big}
-\newcommand{\biggb}{\mathbin\bigg}
-\newcommand{\Biggb}{\mathbin\Bigg}
+\providecommand{\bigp}{\mathpunct\big}
+\providecommand{\Bigp}{\mathpunct\Big}
+\providecommand{\biggp}{\mathpunct\bigg}
+\providecommand{\Biggp}{\mathpunct\Bigg}
+\providecommand{\bigb}{\mathbin\big}
+\providecommand{\Bigb}{\mathbin\Big}
+\providecommand{\biggb}{\mathbin\bigg}
+\providecommand{\Biggb}{\mathbin\Bigg}
+\providecommand{\bigi}{\mathinner\big}
+\providecommand{\Bigi}{\mathinner\Big}
+\providecommand{\biggi}{\mathinner\bigg}
+\providecommand{\Biggi}{\mathinner\Bigg}
+\newlength\delimsize
+\newcommand{\dlm@setvar}{\let\dlm@ifvar\@firstoftwo\delimsize1.5\big@size}
+\newcommand{\dlm@setsize}[1]{\let\dlm@ifvar\@secondoftwo%
+ \delimsize#1\big@size\advance\delimsize by\big@size\delimsize0.5\delimsize}
+\newcommand{\dlm@setabssize}[1]{\let\dlm@ifvar\@secondoftwo\delimsize#1\relax}
+\newcommand{\dlm@big@}[1]{{\mathchoice%
+ {\dlm@big@choice{\displaystyle}{1}{#1}}%
+ {\dlm@big@choice{\textstyle}{1}{#1}}%
+ {\dlm@big@choice{\scriptstyle}{0.7}{#1}}%
+ {\dlm@big@choice{\scriptscriptstyle}{0.5}{#1}}}}
+\newcommand{\dlm@big@choice}[3]{\@mathmeasure\z@{\nulldelimiterspace\z@}%
+ {#1\left#3\vcenter to#2\delimsize{}\right.}\box\z@}
+\newcommand{\kerndelim}[1]{{\delimsize#1\delimsize%
+ \mkern\muexpr1.2mu*\delimsize/\big@size\relax}}
+
+\newcommand{\dlm@big}[2]{\dlm@plain{#1}{\dlm@big@#2}}
+\newcommand{\dlm@plain}[2]{\dlm@class{#1}{\dlm@phantom{#2}}}
\newcommand{\dlm@class}[1]{\csname dlm@class@#1\endcsname}
-\newcommand{\dlm@class@}{}
-\newcommand{\dlm@class@l}{\mathopen}
-\newcommand{\dlm@class@r}{\mathclose}
-\newcommand{\dlm@class@o}{\mathopen}
-\newcommand{\dlm@class@c}{\mathclose}
-\newcommand{\dlm@class@m}{\mathrel}
-\newcommand{\dlm@class@p}{\mathpunct}
-\newcommand{\dlm@class@b}{\mathbin}
-\newcommand{\dlm@norm}[1]{\dlm@class{#1}\bBigg@{0.0}}
-\newcommand{\dlm@big}[1]{\dlm@class{#1}\big}
-\newcommand{\dlm@Big}[1]{\dlm@class{#1}\Big}
-\newcommand{\dlm@bigg}[1]{\dlm@class{#1}\bigg}
-\newcommand{\dlm@Bigg}[1]{\dlm@class{#1}\Bigg}
+\let\dlm@class@\@firstofone
+\let\dlm@class@o\mathord
+\let\dlm@class@c\mathord
+\let\dlm@class@p\mathpunct
+\let\dlm@class@i\mathinner
+\let\dlm@class@b\mathbin
+\let\dlm@class@m\mathrel
+
+\newcommand{\dlm@var@null}[1]{\if.#1\kern-\nulldelimiterspace\fi}
+\newcommand{\dlm@var@kern}[1]{\nonscript\mkern#1}
\newcommand{\dlm@var}[1]{\csname dlm@var@#1\endcsname}
-\newcommand{\dlm@var@}[1]{\middle#1}
-\newcommand{\dlm@var@l}[1]{\mathopen{}\mathclose\bgroup\left#1}
-\newcommand{\dlm@var@r}[1]{\right#1\egroup}
-\newcommand{\dlm@var@o}[1]{\mathopen{}\middle#1\mathopen{}}
-\newcommand{\dlm@var@c}[1]{\mathclose{}\middle#1\mathclose{}}
-\newcommand{\dlm@var@m}[1]{\mathrel{}\middle#1\mathrel{}}
-\newcommand{\dlm@var@p}[1]{\middle#1\mathpunct{}}
-\newcommand{\dlm@var@b}[1]{\mathbin{}{}\mkern-\medmuskip%
- \middle#1\mkern-\medmuskip{}\mathbin{}}
-
-\newcommand{\dlm@parsesize}[1]{\@ifnextchar\bgroup%
- {\dlm@parsesize@{#1}{0}}{\dlm@parsesize@{#1}}}
-\newcommand{\dlm@parsesize@}[2]{\let\dlm@arg\dlm@norm%
- \if0#2\let\dlm@arg\dlm@norm\fi%
- \if1#2\let\dlm@arg\dlm@big\fi%
- \if+#2\let\dlm@arg\dlm@big\fi%
- \if!#2\let\dlm@arg\dlm@big\fi%
- \if2#2\let\dlm@arg\dlm@Big\fi%
- \if3#2\let\dlm@arg\dlm@bigg\fi%
- \if4#2\let\dlm@arg\dlm@Bigg\fi%
- \if*#2\let\dlm@arg\dlm@var\fi%
- #1}
-
-\newcommand{\selectdelim}[2][]{\if.#1#2\else\dlm@arg{#1}#2\fi}
+\newcommand{\dlm@var@}[1]{\dlm@var@null#1\middle#1}
+\let\dlm@var@o\dlm@var@
+\let\dlm@var@c\dlm@var@
+\newcommand{\dlm@var@p}[1]{\dlm@var@#1\dlm@var@kern\thinmuskip}
+\newcommand{\dlm@var@i}[1]{\dlm@var@kern\thinmuskip%
+ \dlm@var@#1\dlm@var@kern\thinmuskip}
+\newcommand{\dlm@var@b}[1]{\dlm@var@kern\medmuskip%
+ \dlm@var@#1\dlm@var@kern\medmuskip}
+\newcommand{\dlm@var@m}[1]{\dlm@var@kern\thickmuskip%
+ \dlm@var@#1\dlm@var@kern\thickmuskip}
+
+\newcommand{\dlm@open@i}{\mathinner{}\mathclose{}\mathopen}
+\newcommand{\dlm@close@i}{\mathclose{}\mathopen{}\mathinner}
+\newcommand{\dlm@inner@oc}{\mathopen{}\mathclose}
+\newcommand{\dlm@enclose@openclose}{%
+ \let\dlm@open\mathopen\let\dlm@close\mathclose\let\dlm@inner\dlm@inner@oc}
+\newcommand{\dlm@enclose@inner}{%
+ \let\dlm@open\dlm@open@i\let\dlm@close\dlm@close@i\let\dlm@inner\mathinner}
+
+\newcommand{\dlm@inline@l}[1]{\dlm@open{#1}}
+\newcommand{\dlm@inline@r}[1]{\dlm@close{#1}}
+\newcommand{\dlm@block@l}[1]{\dlm@inner\bgroup\mathopen{#1}}
+\newcommand{\dlm@block@r}[1]{\mathclose{#1}\egroup}
+\newcommand{\dlm@enclose@inline}{%
+ \let\dlm@class@l\dlm@inline@l\let\dlm@class@r\dlm@inline@r}
+\newcommand{\dlm@enclose@block}{%
+ \let\dlm@class@l\dlm@block@l\let\dlm@class@r\dlm@block@r}
+
+\newcommand{\dlm@plain@l}[1]{\dlm@class@l{\dlm@phantom{#1}}}
+\newcommand{\dlm@plain@r}[1]{\dlm@class@r{\dlm@phantom{#1}}}
+\newcommand{\dlm@big@l}[1]{\dlm@plain@l{\dlm@big@#1}}
+\newcommand{\dlm@big@r}[1]{\dlm@plain@r{\dlm@big@#1}}
+\newcommand{\dlm@var@l}[1]{\dlm@inner\bgroup\dlm@var@null#1\left#1}
+\newcommand{\dlm@var@r}[1]{\right#1\dlm@var@null#1\egroup}
+\newcommand{\dlm@var@pl}[1]{\dlm@var@l.\mathopen{#1}}
+\newcommand{\dlm@var@pr}[1]{\mathclose{#1}\dlm@var@r.}
+
+\newcommand{\dlm@reg@save@init}[1]{%
+ \xdef#1{\delimsize\the\delimsize}\ifx\dlm@inner\mathinner%
+ \expandafter\gdef\expandafter#1\expandafter{#1\dlm@enclose@inner}\fi}
+\newcommand{\dlm@reg@save}[2]{%
+ \expandafter\dlm@reg@save@init\csname dlm@reg@init@#1\endcsname%
+ \expandafter\gdef\csname dlm@reg@sel@#1\endcsname{#2}}
+\newcommand{\dlm@reg@init}[1]{\csname dlm@reg@init@#1\endcsname}
+\newcommand{\dlm@reg@sel}[1]{\csname dlm@reg@sel@#1\endcsname}
+
+\newcommand{\parsedelimflags}{\dlm@setsize{0.6}\let\dlm@phantom\@firstofone%
+ \dlm@enclose@openclose\dlm@enclose@inline\dlm@parseflags}
+\newcommand{\dlm@parseflags}[2]{%
+ \@ifnextchar\bgroup{#1}{\dlm@parseflag{#1}{#2}}}
+\newcommand{\dlm@parseflag}[3]{\begingroup%
+ \ifcsname dlm@parseflag@\string#3\endcsname%
+ \def\dlm@do{\csname dlm@parseflag@\string#3\endcsname{#1}{#2}}\else%
+ \def\dlm@do{\PackageError{delimset}%
+ {unknown delimiter set flag `\string#3'}{}#1}%
+ \fi\expandafter\endgroup\dlm@do}
+\newcommand{\dlm@parsedef}[3]{%
+ \expandafter\def\csname dlm@parseflag@\string#1\endcsname ##1##2#2{#3}}
+
+\dlm@parsedef{!}{}{\dlm@setsize{1}\dlm@parseflags{#1}{#2}}
+\dlm@parsedef{+}{}{\dlm@setsize{1}\dlm@parseflags{#1}{#2}}
+\dlm@parsedef{0}{}{\dlm@setsize{0.6}\dlm@parseflags{#1}{#2}}
+\dlm@parsedef{1}{}{\dlm@setsize{1}\dlm@parseflags{#1}{#2}}
+\dlm@parsedef{2}{}{\dlm@setsize{2}\dlm@parseflags{#1}{#2}}
+\dlm@parsedef{3}{}{\dlm@setsize{3}\dlm@parseflags{#1}{#2}}
+\dlm@parsedef{4}{}{\dlm@setsize{4}\dlm@parseflags{#1}{#2}}
+\dlm@parsedef{^}{#3}{\dlm@setsize{#3}\dlm@parseflags{#1}{#2}}
+\dlm@parsedef{_}{#3}{\dlm@setabssize{#3}\dlm@parseflags{#1}{#2}}
+\dlm@parsedef{*}{}{\dlm@setvar\dlm@parseflags{#1}{#2}}
+
+\dlm@parsedef{(}{}{\def\selecteddelim{0}#2}
+\dlm@parsedef{|}{}{\def\selecteddelim{1}#2}
+\dlm@parsedef{,}{}{\def\selecteddelim{1}#2}
+\dlm@parsedef{)}{}{\def\selecteddelim{9}#2}
+\dlm@parsedef{?}{#3}{\def\selecteddelim{#3}#2}
+
+\dlm@parsedef{[}{}{\dlm@reg@save{.}{#2}\def\selecteddelim{0}#2}
+\dlm@parsedef{]}{}{\dlm@reg@init{.}\def\selecteddelim{9}\dlm@reg@sel{.}}
+\dlm@parsedef{>}{#3}{\dlm@reg@save{#3}{#2}}
+\dlm@parsedef{<}{#3}{\dlm@reg@init{#3}\dlm@parseflags%
+ {\PackageError{delimset}{must select delimiter}{}}{\dlm@reg@sel{#3}}}
+
+\dlm@parsedef{.}{}{#1}
+\dlm@parsedef{:}{}{\dlm@enclose@block\dlm@parseflags{#1}{#2}}
+\dlm@parsedef{'}{}{\dlm@enclose@openclose\dlm@parseflags{#1}{#2}}
+\dlm@parsedef{"}{}{\dlm@enclose@inner\dlm@parseflags{#1}{#2}}
+\dlm@parsedef{-}{}{\let\dlm@phantom\phantom\dlm@parseflags{#1}{#2}}
+
+\newcommand{\selectdelim}[1][]{\begingroup\def\dlm@do{\@ifstar{\dlm@plain{#1}}%
+ {\dlm@ifvar{\dlm@var{#1}}{\dlm@big{#1}}}}%
+ \if.#1\let\dlm@do\@empty\fi\expandafter\endgroup\dlm@do}
+\newcommand{\selectdeliml}{\@ifstar%
+ {\dlm@ifvar\dlm@var@pl\dlm@plain@l}{\dlm@ifvar\dlm@var@l\dlm@big@l}}
+\newcommand{\selectdelimr}{\@ifstar%
+ {\dlm@ifvar\dlm@var@pr\dlm@plain@r}{\dlm@ifvar\dlm@var@r\dlm@big@r}}
\newcommand{\DeclareMathDelimiterSet}[1]{\expandafter\dlm@declare%
\csname dlm@dcl@\expandafter\@gobble\string#1\endcsname{#1}}
-\def\dlm@declare#1#2{\newcommand{#2}{\dlm@parsesize{#1}}\newcommand{#1}}
+\def\dlm@declare#1#2{\expandafter\dlm@declare@%
+ \csname dlm@sel@\expandafter\@gobble\string#2\endcsname{#1}{#2}}
+\def\dlm@declare@#1#2#3{\newcommand{#3}{\parsedelimflags{#2}{#1}}%
+ \providecommand{#1}{}\newcommand{#2}}
+\newcommand{\DeclareMathDelimiterSel}[3]{\expandafter\def%
+ \csname dlm@sel@\expandafter\@gobble\string#1\endcsname%
+ {\ifcase\selecteddelim#2\else#3\fi}}
+
+\newcommand{\delim}[2]{%
+ \parsedelimflags{\dlm@dcl@delim{#1}{#2}}{\dlm@sel@delim{#1}{#2}}}
+\newcommand{\dlm@dcl@delim}[3]{%
+ \selectdeliml#1{#3}\selectdelimr#2}
+\newcommand{\dlm@sel@delim}[2]{\ifcase\selecteddelim\selectdeliml#1%
+ \else\selectdelimr#2\fi}
-\newcommand{\delim}[2]
- {\dlm@parsesize{\dlm@dcl@delim{#1}{#2}}}
-\newcommand{\dlm@dcl@delim}[3]
- {\selectdelim[l]#1{#3}\selectdelim[r]#2}
+\newcommand{\delimpair}[3]{%
+ \parsedelimflags{\dlm@dcl@delimpair{#1}{#2}{#3}}%
+ {\dlm@sel@delimpair{#1}{#2}{#3}}}
+\newcommand{\dlm@dcl@delimpair}[5]{%
+ \selectdeliml#1{#4}\selectdelim#2{#5}\selectdelimr#3}
+\newcommand{\dlm@sel@delimpair}[3]{\ifcase\selecteddelim\selectdeliml#1%
+ \or\selectdelim#2\else\selectdelimr#3\fi}
-\newcommand{\delimpair}[3]
- {\dlm@parsesize{\dlm@dcl@delimpair{#1}{#2}{#3}}}
-\newcommand{\dlm@dcl@delimpair}[5]
- {\selectdelim[l]#1{#4}\selectdelim#2{#5}\selectdelim[r]#3}
+\newcommand{\delimtriple}[4]{%
+ \parsedelimflags{\dlm@dcl@delimtriple{#1}{#2}{#3}{#4}}%
+ {\dlm@sel@delimtriple{#1}{#2}{#3}{#4}}}
+\newcommand{\dlm@dcl@delimtriple}[7]{%
+ \selectdeliml#1{#5}\selectdelim#2{#6}\selectdelim#3{#7}\selectdelimr#4}
+\newcommand{\dlm@sel@delimtriple}[4]{\ifcase\selecteddelim\selectdeliml#1%
+ \or\selectdelim#2\or\selectdelim#3\else\selectdelimr#4\fi}
-\newcommand{\delimtriple}[4]
- {\dlm@parsesize{\dlm@dcl@delimtriple{#1}{#2}{#3}{#4}}}
-\newcommand{\dlm@dcl@delimtriple}[7]
- {\selectdelim[l]#1{#5}\selectdelim#2{#6}\selectdelim#3{#7}\selectdelim[r]#4}
+\newcommand{\usedelim}{\@ifnextchar]{\parsedelimflags{}{}}{\parsedelimflags%
+ {\PackageError{delimset}{must select delimiter}{}}{}<}}
\ifdlm@std
\providecommand{\brk}[1][r]{\begingroup\def\dlm@use{\delim()}%
- \if r#1 \def\dlm@use{\delim()}\fi%
- \if s#1 \def\dlm@use{\delim[]}\fi%
- \if c#1 \def\dlm@use{\delim\{\}}\fi%
- \if a#1 \def\dlm@use{\delim<>}\fi%
+ \if r#1\def\dlm@use{\delim()}\fi%
+ \if s#1\def\dlm@use{\delim[]}\fi%
+ \if c#1\def\dlm@use{\delim\{\}}\fi%
+ \if a#1\def\dlm@use{\delim<>}\fi%
\expandafter\endgroup\dlm@use}
\providecommand{\eval}[1][v]{\begingroup\def\dlm@use{\delim.\rvert}%
- \if v#1 \def\dlm@use{\delim.\rvert}\fi%
- \if s#1 \def\dlm@use{\delim[]}\fi%
+ \if v#1\def\dlm@use{\delim.\rvert}\fi%
+ \if s#1\def\dlm@use{\delim[]}\fi%
\expandafter\endgroup\dlm@use}
\providecommand{\abs}{\delim\lvert\rvert}
\providecommand{\norm}{\delim\lVert\rVert}
\fi
\ifdlm@ext
-\providecommand{\pair}{\delimpair({[.],})}
+\providecommand{\pair}{\delimpair({[p]*,})}
\providecommand{\set}{\delim\{\}}
\providecommand{\setcond}{\delimpair\{|\}}
-\providecommand{\intv}[1][c]{\begingroup\def\dlm@use{\delimpair[{[.],}]}%
- \if c#1 \def\dlm@use{\delimpair[{[.],}]}\fi%
- \if l#1 \def\dlm@use{\delimpair]{[.],}]}\fi%
- \if r#1 \def\dlm@use{\delimpair[{[.],}[}\fi%
- \if o#1 \def\dlm@use{\delimpair]{[.],}[}\fi%
+\providecommand{\intv}[1][c]{\begingroup%
+ \def\dlm@use{\delimpair[{[p]*,}]}%
+ \if c#1\def\dlm@use{\delimpair[{[p]*,}]}\fi%
+ \if l#1\def\dlm@use{\delimpair]{[p]*,}]}\fi%
+ \if r#1\def\dlm@use{\delimpair[{[p]*,}[}\fi%
+ \if o#1\def\dlm@use{\delimpair]{[p]*,}[}\fi%
\expandafter\endgroup\dlm@use}
\providecommand{\avg}{\delim<>}
\providecommand{\corr}{\delim<>}
-\providecommand{\comm}{\delimpair[{[.],}]}
-\providecommand{\acomm}{\delimpair\{{[.],}\}}
+\providecommand{\comm}{\delimpair[{[p]*,}]}
+\providecommand{\acomm}{\delimpair\{{[p]*,}\}}
\providecommand{\bra}{\delim<|}
\providecommand{\ket}{\delim|>}
\providecommand{\braket}{\delimpair<|>}
+\providecommand{\lfrac}[1][]{\begingroup%
+ \def\dlm@use{\delimpair./.}%
+ \if r#1\def\dlm@use{\delimpair(/)}\fi%
+ \if s#1\def\dlm@use{\delimpair[/]}\fi%
+ \if c#1\def\dlm@use{\delimpair\{/\}}\fi%
+ \if a#1\def\dlm@use{\delimpair</>}\fi%
+ \expandafter\endgroup\dlm@use}
\fi
\endinput
diff --git a/Master/texmf-dist/tex/latex/doibanner/doibanner.sty b/Master/texmf-dist/tex/latex/doibanner/doibanner.sty
new file mode 100644
index 00000000000..986b52ad11e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/doibanner/doibanner.sty
@@ -0,0 +1,98 @@
+%%
+%% This is file `doibanner.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% doibanner.dtx (with options: `package')
+%%
+%% Copyright (C) 2024 Christian Schreinemachers
+%%
+%% This work may be distributed and/or modified under the conditions
+%% of the LaTeX Project Public License, either version 1.3c of this
+%% license or (at your option) any later version. The latest version
+%% of this license is in
+%%
+%% http://www.latex-project.org/lppl.txt
+%%
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The current maintainer of this work is
+%% Christian Schreinemachers.
+%%
+%% This work consists of the files
+%% doibanner.dtx
+%% doibanner.ins
+%% and the derived files
+%% doibanner.sty
+%% doibanner.pdf
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{doibanner}
+ [2024-07-28 v0.3 Generate DOI banners and links]
+\RequirePackage{adjustbox}
+\RequirePackage{hyperref}
+\RequirePackage{tikz}
+\definecolor{leftcolor}{RGB}{82,82,82}
+\definecolor{rightcolor}{RGB}{6,119,183}
+\definecolor{toptextcolor}{RGB}{235,235,235}
+\definecolor{bottomtextcolor}{RGB}{59,59,59}
+\tikzstyle{toptextstyle} = [
+ font=\fontfamily{\sfdefault}\selectfont\bfseries\Large,toptextcolor]
+\tikzstyle{bottomtextstyle} = [
+ font=\fontfamily{\sfdefault}\selectfont\bfseries\Large,bottomtextcolor]
+\DeclareKeys[@doibanner]{
+ label.store = \@doibanner@label,
+ label.usage = load,
+ urlbase.store = \@doibanner@urlbase,
+ urlbase.usage = load,
+ width.store = \@doibanner@width,
+ width.usage = load,
+}
+\SetKeys[@doibanner]{
+ label=DOI,
+ urlbase=https://doi.org/,
+ width=3.6cm,
+}
+\ProcessKeyOptions[@doibanner]\relax
+\NewDocumentCommand\doiurl{s m}{%
+ \IfBooleanTF#1
+ {\@doibanner@urlbase#2}%
+ {\href{\@doibanner@urlbase#2}{#2}}%
+}
+\NewDocumentCommand\@doibanner@draw{o m}{%
+ \adjustbox{#1}{%
+ \begin{tikzpicture}
+ \fill [leftcolor,draw]
+ (1.5,0) --
+ ++(0,.8) {[rounded corners=5] --
+ ++(-1.5,0) --
+ ++(0,-.8)} --
+ cycle
+ {};
+ \node[bottomtextstyle] at (.75,.35) {\@doibanner@label};
+ \node[toptextstyle] at (.75,.4) {\@doibanner@label};
+ \fill [rightcolor,draw]
+ (1.5,0) {[rounded corners=5] --
+ ++(6.5,0) --
+ ++(0,.8)} --
+ ++(-6.5,0) --
+ cycle
+ {};
+ \node[bottomtextstyle] at (4.75,.35) {#2};
+ \node[toptextstyle] at (4.75,.4) {#2};
+ \end{tikzpicture}%
+ }%
+}
+\NewDocumentCommand\doibanner{s O{width=\@doibanner@width} m}{%
+ \IfBooleanTF#1
+ {\@doibanner@draw[#2]{#3}}%
+ {\href{\@doibanner@urlbase#3}{\@doibanner@draw[#2]{#3}}}%
+}
+\endinput
+%%
+%% End of file `doibanner.sty'.
diff --git a/Master/texmf-dist/tex/latex/dtk/dtk-url.sty b/Master/texmf-dist/tex/latex/dtk/dtk-url.sty
index dbae3ce9b8c..3387c280797 100644
--- a/Master/texmf-dist/tex/latex/dtk/dtk-url.sty
+++ b/Master/texmf-dist/tex/latex/dtk/dtk-url.sty
@@ -2,7 +2,7 @@
%%
%% LaTeX Class for ``Die TeXnische Komoedie''.
%%
-%% Copyright (C) 2015-2023
+%% Copyright (C) 2015-2024
%% Rolf Niepraschk, Herbert Voss
%%
%% It may be distributed and/or modified under the
@@ -14,7 +14,7 @@
%% version 2005/12/01 or later.
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{dtk-url}[2024/02/12 v1.8 Urls (qrcode) for DTK (HO,hv,rn)]
+\ProvidesPackage{dtk-url}[2024/06/26 v1.9 Urls (qrcode) for DTK (HO,hv,rn)]
\RequirePackage{url}[2006/04/12]
\RequirePackage{xcolor}
@@ -40,6 +40,8 @@
\let\URL\url
\let\CTANurl\ctanurl
+\DeclareUrlCommand\File{\urlstyle{tt}}
+
\DeclareUrlCommand\DTK@Url{%
\DTK@UrlSetup
\def\UrlLeft{}%
diff --git a/Master/texmf-dist/tex/latex/dtk/dtk.cls b/Master/texmf-dist/tex/latex/dtk/dtk.cls
index cc314c4a1ad..15507b11044 100644
--- a/Master/texmf-dist/tex/latex/dtk/dtk.cls
+++ b/Master/texmf-dist/tex/latex/dtk/dtk.cls
@@ -23,8 +23,8 @@
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
-\def\DTKversion{2.10e}
-\def\DTKversiondate{2024/02/22}
+\def\DTKversion{2.10f}
+\def\DTKversiondate{2024/06/27}
\ProvidesClass{dtk}[\DTKversiondate v\DTKversion dtk documentclass (RN)]
\RequirePackage{iftex}
diff --git a/Master/texmf-dist/tex/latex/dynkin-diagrams/dynkin-diagrams.sty b/Master/texmf-dist/tex/latex/dynkin-diagrams/dynkin-diagrams.sty
index e45f21ee182..7a92e22048e 100644
--- a/Master/texmf-dist/tex/latex/dynkin-diagrams/dynkin-diagrams.sty
+++ b/Master/texmf-dist/tex/latex/dynkin-diagrams/dynkin-diagrams.sty
@@ -1,6 +1,6 @@
% The Dynkin Diagrams package.
%
-% Version 3.141 592 653 589 793 238 4
+% Version 3.141 592 653 589 793 238 46
%
% This package draws Dynkin diagrams in LaTeX
% documents, using the TikZ package.
@@ -13,7 +13,7 @@
% Released under the LaTeX Project Public License v1.3c or later, see
% http://www.latex-project.org/lppl.txt
\NeedsTeXFormat{LaTeX2e}[1994/06/01]
-\ProvidesPackage{dynkin-diagrams}[2023/06/02 Dynkin diagrams]
+\ProvidesPackage{dynkin-diagrams}[2024/07/05 Dynkin diagrams]
\RequirePackage{tikz}
\RequirePackage{xstring}
\RequirePackage{etoolbox}
@@ -1873,6 +1873,7 @@
}%
+
%% \dynkinQuadrupleEdge{<p>}{<q>}
%% \dynkinQuadrupleEdge*{<p>}{<q>}
%% Draws an oriented edge of valence 4 from root <p> to root <q> on the current Dynkin diagram.
@@ -2041,6 +2042,8 @@
% Is the right side of the Dynkin diagram folded?
\newif\ifdynkin@Coxeter
% Should we draw Coxeter diagrams?
+\newif\ifdynkin@Coxeter@above
+% Should we draw Coxeter diagram extra labels above or below?
\newif\ifdynkin@Kac@arrows
% Should we draw arrows following Kac?
\newif\ifdynkin@odd
@@ -2097,6 +2100,8 @@
},
Coxeter/.is if = dynkin@Coxeter,
Coxeter=false,
+ Coxeter above/.is if = dynkin@Coxeter@above,
+ Coxeter above=true,
double edges/.style = {
fold style/.style = {
draw=black,
@@ -2598,6 +2603,10 @@
{%
\global\dynkin@rank=\dynkin@string\relax%
\global\dynkin@nodes=\dynkin@string\relax%
+ \ifWitt@symbol%
+ \global\advance\dynkin@rank by -1\relax%
+ \global\advance\dynkin@nodes by -1\relax%
+ \fi
\ifdynkin@is@twisted%
\IfStrEqCase{\dynkin@series}%
{%
@@ -2800,7 +2809,6 @@
% Turn Satake codes into Dynkin diagram expressions in \dynkin@string.
\dynkin@grok@Satake@codes%
}%
-
% Expand out any digits in \dynkin@string into multiples of the various root marks.
\expand@Dynkin@Roots@Digits%
% Assign to \dynkin@roots the input string \dynkin@string with all . symbols removed,
@@ -2881,20 +2889,41 @@
\global\dynkin@rank@minus@three\the\dynkin@rank@minus@two\relax%
\global\advance\dynkin@rank@minus@three by -1\relax%
}%
+
+\newif\ifWitt@symbol
\newcount\dynkin@lenny%
%% \dynkin@grok@series
%% Interprets the dynkin@series, to see if it is extended, twisted, and what twisted series it is.
\NewDocumentCommand\dynkin@grok@series{}%
{%
- \StrLen{\dynkin@series}[\dynkin@lenny]
+ \StrLen{\dynkin@series}[\dynkin@lenny]\relax%
\ifnum\dynkin@lenny>1\relax%
\dynkin@error@series%
\fi%
+% We need to check if the series is a Witt symbol.
+ \IfSubStr{PSRQTUVW}{\dynkin@series}%
+ {%
+ \global\Witt@symboltrue%
+ \IfStrEqCase{\dynkin@series}%
+ {%
+ {P}{\global\xdef\dynkin@series{A}}%
+ {S}{\global\xdef\dynkin@series{B}}%
+ {R}{\global\xdef\dynkin@series{C}}%
+ {Q}{\global\xdef\dynkin@series{D}}%
+ {T}{\global\xdef\dynkin@series{E}}%
+ {U}{\global\xdef\dynkin@series{F}}%
+ {V}{\global\xdef\dynkin@series{G}}%
+ {W}{\global\xdef\dynkin@series{I}}%
+ }%
+ }%
+ {%
+ \global\Witt@symbolfalse%
+ }%
\edef\series{\dynkin@series}%
\IfStrEqCase{\dynkin@twisted@series}%
{%
{0}{}%
- {1}{ \global\dynkin@is@extendedtrue}%
+ {1}{\global\dynkin@is@extendedtrue}%
{2}{%
\IfSubStr{ADE}{\dynkin@series}%
{%
@@ -3459,19 +3488,6 @@
}%
[\global#5=#4\relax]%
}%
- {G}%
- {%
- \IfStrEqCase{#3}%
- {%
- {Carter}{\global#5=%
- \stringCharacterInPosition{21}{#4}%
- \relax}%
- {Dynkin}{\global#5=%
- \stringCharacterInPosition{21}{#4}%
- \relax}%
- }%
- [\global#5=#4\relax]%
- }%
}%
[\global#5=#4\relax]%
}%
@@ -3640,25 +3656,6 @@
}%
[\global#5=#3\relax]%
}%
- {G}%
- {%
- \IfStrEqCase{#4}%
- {%
- {Carter}%
- {%
- \global#5=%
- \stringCharacterInPosition{21}{#3}%
- \relax%
- }%
- {Dynkin}%
- {%
- \global#5=%
- \stringCharacterInPosition{21}{#3}%
- \relax%
- }%
- }%
- [\global#5=#3\relax]%
- }%
}%
[\global#5=#3\relax]%
}%
@@ -3777,12 +3774,14 @@
}%
{G}%
{%
- \IfStrEqCase{\dynkin@ordering}%
- {%
- {Carter}{\global\dynkin@Root@Number=\stringCharacterInPosition{21}{#1}\relax}%
- {Dynkin}{\global\dynkin@Root@Number=\stringCharacterInPosition{21}{#1}\relax}%
- }%
- [\global\dynkin@Root@Number=#1\relax]%
+ \global\dynkin@Root@Number=#1\relax%
+% \IfStrEqCase{\dynkin@ordering}%
+% {%
+% {Carter}{\global\dynkin@Root@Number=\stringCharacterInPosition{21}{#1}\relax}%
+% {Dynkin}{\global\dynkin@Root@Number=\stringCharacterInPosition{21}{#1}\relax}%
+% {Kac}{\global\dynkin@Root@Number=\stringCharacterInPosition{21}{#1}\relax}%
+% }%
+% [\global\dynkin@Root@Number=#1\relax]%
}%
}%
[\global\dynkin@Root@Number=#1\relax]%
@@ -4338,9 +4337,15 @@
\else%
\ifdynkin@Coxeter%
\Adynkin%
- \dynkinEdgeLabel%
- {\the\dynkin@rank@minus@one}%
- {\the\dynkin@rank}{4}%
+ \ifdynkin@Coxeter@above%
+ \dynkinEdgeLabel%
+ {\the\dynkin@rank@minus@one}%
+ {\the\dynkin@rank}{4}%
+ \else%
+ \dynkinEdgeLabel*%
+ {\the\dynkin@rank@minus@one}%
+ {\the\dynkin@rank}{4}%
+ \fi%
\else
% Create the roots.
\ifnum\dynkin@ply>1\relax%
@@ -4994,7 +4999,11 @@
\dynkinEdge*{SingleEdge}{1}{2}%
\dynkinEdge*{SingleEdge}{2}{3}%
\dynkinEdge*{SingleEdge}{3}{4}%
- \dynkinEdgeLabel{2}{3}{4}%
+ \ifdynkin@Coxeter@above%
+ \dynkinEdgeLabel{2}{3}{4}%
+ \else%
+ \dynkinEdgeLabel*{2}{3}{4}%
+ \fi%
\else%
\dynkinEdge*{SingleEdge}{1}{2}%
\dynkinEdge*{SingleEdge}{3}{4}%
@@ -5002,6 +5011,9 @@
\fi%
\fi%
}%
+
+\newif\ifGtwo@old@dynkin@reverse@arrows
+
%% \Gdynkin
%% Draws a G series Dynkin diagram.
\NewDocumentCommand\Gdynkin{}%
@@ -5013,14 +5025,72 @@
\dynkin@jump{1}%
\dynkinPlaceRootHere*{1}{left}{above}%
\dynkinPlaceRootRelativeTo*{2}{1}{southfold}{left}{below}%
+ \ifdynkin@reverse@arrows%
+ \global\Gtwo@old@dynkin@reverse@arrowstrue\relax%
+ \else%
+ \global\Gtwo@old@dynkin@reverse@arrowsfalse\relax%
+ \fi%
+ \IfStrEqCase{\dynkin@ordering}%
+ {%
+ {Adams}{%
+ \ifdynkin@reverse@arrows%
+ \global\dynkin@reverse@arrowsfalse\relax%
+ \else%
+ \global\dynkin@reverse@arrowstrue\relax%
+ \fi\relax}%
+ {Bourbaki}{%
+ \ifdynkin@reverse@arrows%
+ \global\dynkin@reverse@arrowsfalse\relax%
+ \else%
+ \global\dynkin@reverse@arrowstrue\relax%
+ \fi\relax}%
+ {Carter}{\relax}%
+ {Dynkin}{\relax}%
+ {Kac}{\relax}%
+ }%
+ [\relax]%
\dynkinEdge*{TripleDownRightSemiCircle}{1}{2}%
+ \ifGtwo@old@dynkin@reverse@arrows%
+ \global\dynkin@reverse@arrowstrue\relax%
+ \else%
+ \global\dynkin@reverse@arrowsfalse\relax%
+ \fi%
\ifdynkin@arrows%
\dynkinLeftFold*{1}{2}%
\fi%
\else%
\dynkinPlaceRootHere*{1}{below}{above}%
\dynkinPlaceRootRelativeTo*{2}{1}{east}{below}{above}%
- \dynkinTripleEdge*{1}{2}%
+ \ifdynkin@reverse@arrows%
+ \global\Gtwo@old@dynkin@reverse@arrowstrue\relax%
+ \else%
+ \global\Gtwo@old@dynkin@reverse@arrowsfalse\relax%
+ \fi%
+ \IfStrEqCase{\dynkin@ordering}%
+ {%
+ {Adams}{%
+ \ifdynkin@reverse@arrows%
+ \global\dynkin@reverse@arrowsfalse\relax%
+ \else%
+ \global\dynkin@reverse@arrowstrue\relax%
+ \fi\relax}%
+ {Bourbaki}{%
+ \ifdynkin@reverse@arrows%
+ \global\dynkin@reverse@arrowsfalse\relax%
+ \else%
+ \global\dynkin@reverse@arrowstrue\relax%
+ \fi\relax}%
+ {Carter}{\relax}%
+ {Dynkin}{\relax}%
+ {Kac}{\relax}%
+ }%
+ [\relax]%
+ \dynkinTripleEdge*{1}{2}\relax%
+ \ifGtwo@old@dynkin@reverse@arrows%
+ \global\dynkin@reverse@arrowstrue\relax%
+ \else%
+ \global\dynkin@reverse@arrowsfalse\relax%
+ \fi%
\fi%
\fi%
}%
@@ -5030,7 +5100,11 @@
\newcommand*{\Hdynkin}%
{%
\Adynkin%
- \dynkinEdgeLabel{1}{2}{5}%
+ \ifdynkin@Coxeter@above%
+ \dynkinEdgeLabel{1}{2}{5}%
+ \else%
+ \dynkinEdgeLabel*{1}{2}{5}%
+ \fi%
}%
%% \Idynkin
%% Draws an I series Coxeter diagram.
@@ -5038,7 +5112,11 @@
{%
\dynkin@rank=2\relax%
\Adynkin%
- \dynkinEdgeLabel{1}{2}{\dynkin@gonality}%
+ \ifdynkin@Coxeter@above%
+ \dynkinEdgeLabel{1}{2}{\dynkin@gonality}%
+ \else%
+ \dynkinEdgeLabel*{1}{2}{\dynkin@gonality}%
+ \fi%
}%
%% \extendedAdynkin
@@ -5183,9 +5261,15 @@
\dynkinEdge*{SingleEdge}%
{\the\dynkin@rank@minus@one}%
{\the\dynkin@rank}%
- \dynkinEdgeLabel%
- {\the\dynkin@rank@minus@one}%
- {\the\dynkin@rank}{4}%
+ \ifdynkin@Coxeter@above%
+ \dynkinEdgeLabel%
+ {\the\dynkin@rank@minus@one}%
+ {\the\dynkin@rank}{4}%
+ \else%
+ \dynkinEdgeLabel*%
+ {\the\dynkin@rank@minus@one}%
+ {\the\dynkin@rank}{4}%
+ \fi%
\else%
\ifnum\dynkin@ply<3\relax%
\dynkinEdge*{DoubleEdge}%
@@ -5211,7 +5295,11 @@
\Cdynkin{}%
\ifdynkin@Coxeter%
\dynkinEdge*{SingleEdge}{0}{1}%
- \dynkinEdgeLabel{0}{1}{4}%
+ \ifdynkin@Coxeter@above%
+ \dynkinEdgeLabel{0}{1}{4}%
+ \else%
+ \dynkinEdgeLabel*{0}{1}{4}%
+ \fi%
\else%
\dynkinEdge*{DoubleEdge}{0}{1}%
\fi%
@@ -5391,8 +5479,11 @@
\xdef\dynkin@gonality{6}%
\dynkinPlaceRootHere*{0}{below}{above}%
\dynkinEast%
+ \let\extended@G@old@order\dynkin@ordering%
+ \xdef\dynkin@ordering{Carter}%
\Gdynkin%
\dynkinEdge*{SingleEdge}{0}{1}%
+ \xdef\dynkin@ordering{\extended@G@old@order}%
}%
%% \extendedHdynkin
@@ -5423,7 +5514,11 @@
\dynkin@rank=1\relax%
\Adynkin%
\dynkinEdge*{SingleEdge}{0}{1}%
- \dynkinEdgeLabel{0}{1}{\infty}%
+ \ifdynkin@Coxeter@above%
+ \dynkinEdgeLabel{0}{1}{\infty}%
+ \else%
+ \dynkinEdgeLabel*{0}{1}{\infty}%
+ \fi%
}%
\newcount\dynkin@height@minus@one%
%% \twistedAdynkin
@@ -5531,6 +5626,8 @@
\fi%
\fi%
}%
+
+\newif\iftwisted@D@old@dynkin@reverse@arrows
%% \twistedDdynkin
%% Draws a twisted D series affine Dynkin diagram.
\NewDocumentCommand\twistedDdynkin{}%
@@ -5546,7 +5643,17 @@
\dynkinPlaceRootRelativeTo*{1}{0}{east}{below}{above}%
\dynkinPlaceRootRelativeTo*{2}{1}{east}{below}{above}%
\dynkinEdge*{SingleEdge}{0}{1}%
- \dynkinTripleEdge*{2}{1}%
+ \ifdynkin@reverse@arrows%
+ \global\dynkin@reverse@arrowsfalse\relax%
+ \else%
+ \global\dynkin@reverse@arrowstrue\relax%
+ \fi%
+ \dynkinTripleEdge*{1}{2}%
+ \ifdynkin@reverse@arrows%
+ \global\dynkin@reverse@arrowsfalse\relax%
+ \else%
+ \global\dynkin@reverse@arrowstrue\relax%
+ \fi%
\else%
\ClassError%
{Dynkin diagrams}%
diff --git a/Master/texmf-dist/tex/latex/easybook/easybase.sty b/Master/texmf-dist/tex/latex/easybook/easybase.sty
index 0c8011b30f6..55718c41e73 100644
--- a/Master/texmf-dist/tex/latex/easybook/easybase.sty
+++ b/Master/texmf-dist/tex/latex/easybook/easybase.sty
@@ -20,19 +20,16 @@
%% This work has the LPPL maintenance status `maintained'.
\NeedsTeXFormat{LaTeX2e}[2021/11/15]
\RequirePackage{etoolbox}
-\ProvidesExplPackage{easybase}{2024/06/24}{2024cm}
+\ProvidesExplPackage{easybase}{2024/09/30}{2024eb}
{Easily typesetting Chinese theses or books}
\cs_generate_variant:Nn \dim_set:Nn { NV }
\cs_generate_variant:Nn \dim_sign:n { V }
\cs_generate_variant:Nn \int_to_arabic:n { v }
\cs_generate_variant:Nn \msg_warning:nnn { nnV }
-\cs_generate_variant:Nn \prop_set_from_keyval:Nn { NV }
\cs_generate_variant:Nn \skip_set:Nn { NV }
-\cs_generate_variant:Nn \seq_set_from_clist:Nn { No }
\cs_generate_variant:Nn \ctex_define:nn { nx }
\cs_generate_variant:Nn \eb_set_hyperref:n { x }
-\cs_generate_variant:Nn \eb_at_begin_environment:nn { on }
\cs_generate_variant:Nn \tl_if_novalue:nF { V }
\cs_set_protected:Npn \ctex_define:nn #1
@@ -46,12 +43,7 @@
{ \AddToHook{cmd/#1/before}{#2} }
\cs_new_protected:Npn \eb_appto_cmd:nn #1#2
{ \AddToHook{cmd/#1/after}{#2} }
-\cs_new_protected:Npn \eb_at_begin_environment:nn #1#2
- {
- \clist_map_inline:nn {#1}
- { \AtBeginEnvironment{##1}{#2} }
- }
-\cs_new_protected:Npn \eb_at_end_preamble:n
+\cs_set_protected:Npn \ctex_before_end_preamble:n
{ \BeforeBeginEnvironment{document} }
\cs_new_protected:Npn \eb_if_package_loaded:nnF #1#2#3
{
@@ -91,7 +83,11 @@
\IfNoValueTF{#1}
{\IfFileExists{#2.sty}{\RequirePackage{#2}[#3]}{}}
{\IfFileExists{#2.sty}{\RequirePackage[#1]{#2}[#3]}{}}
+ \IfFileExists{#2.sty}{}
+ {\msg_warning:nnn { easybase } { package-not-found } {#2}}
}
+\msg_new:nnn { easybase } { package-not-found }
+ { The~macro~package~'#1'~can't~be~found. }
\cs_new_protected:Npn \ebloadpackage #1
{
\int_compare:nTF { \clist_count:n {#1} <= 1 }
@@ -120,9 +116,13 @@
floatpage .bool_set:N = \l__eb_float_page_bool,
floatpage .default:n = true,
floatpage .initial:n = false,
- theorem .bool_set:N = \l__eb_theorem_support_bool,
- theorem .default:n = true,
- theorem .initial:n = true,
+ theorem .choices:nn =
+ { thmtools,keytheorems,false }
+ { \tl_set:Nn \l__eb_theorem_support_tl {#1} },
+ theorem .value_required:n = true,
+ theorem/true .meta:n = { theorem = thmtools },
+ theorem .default:n = thmtools,
+ theorem .initial:n = thmtools,
paper .code:n = \eb_put_geometry:n {#1},
paper .initial:n = a4paper,
class .choice:,
@@ -131,13 +131,15 @@
{
\bool_set_true:N \l__eb_class_mode_book_bool
\eb_put_geometry:n { twoside }
+ \booltrue{@titlepage}
},
class/article .code:n =
{
\bool_set_false:N \l__eb_class_mode_book_bool
\eb_put_geometry:n { twoside = false }
+ \boolfalse{@titlepage}
},
- class .initial:n = book,
+ class .initial:x = \ifbool{@titlepage}{book}{article},
book .meta:n = { class = book },
article .meta:n = { class = article },
unknown .code:n = \clist_gput_right:NV \g__eb_ctex_options_clist \CurrentOption
@@ -167,9 +169,9 @@
\seq_set_from_clist:Nn \l__eb_module_paths_seq
{
- tools,font,space,
- bib,thmt,toc,
- hdr,float,ref,geo
+ tools,font,space,bib,
+ thmt,toc,hdr,float,
+ ref,geo,cap
}
\seq_map_inline:Nn \l__eb_module_paths_seq
{
@@ -224,7 +226,6 @@
\ebloadpackage
{
[text]{spbmark},
- [normalem]{ulem},
[{shortlabels,inline}]{enumitem},
chemformula,siunitx,pifont,
geometry,marginnote,
@@ -418,18 +419,18 @@
}
\cs_set:Npn \markdouble #1 { \markboth{#1}{\ifbool{@twoside}{#1}{}} }
-\cs_new:Npn \eb@level@markdouble #1#2
+\cs_new_protected:Npn \eb@level@markdouble #1#2
{ \markdouble{\use:c { eb@mark@#1@whole }{#2}} }
-\cs_new:Npn \eb@level@markright #1#2
+\cs_new_protected:Npn \eb@level@markright #1#2
{ \markright{\use:c { eb@mark@#1@whole }{#2}} }
\cs_gset:Npn \chaptermark #1 { \eb@level@markdouble{chapter}{#1} }
-\cs_gset:Npn \sectionmark #1
+\cs_gset:Npx \sectionmark #1
{
\bool_if:NTF \l__eb_class_mode_book_bool
{ \eb@level@markright{section}{#1} }
{ \eb@level@markdouble{section}{#1} }
}
-\cs_gset:Npn \subsectionmark #1
+\cs_gset:Npx \subsectionmark #1
{
\bool_if:NF \l__eb_class_mode_book_bool
{ \eb@level@markright{subsection}{#1} }
@@ -521,7 +522,7 @@
\UseFntSymbsList{empty}
\cs_set_eq:NN \DefineFntSymbols \SetFntSymbsList
\cs_set_eq:NN \setfntsymbol \UseFntSymbsList
-\cs_new:Npn \eb_int_format_trans:NN #1
+\cs_new:Npn \eb_int_type_trans:NN #1
{
\str_case:nn {#1}
{
@@ -556,29 +557,44 @@
}
\cs_set_eq:NN \thedownfootnote \thefootnote
}
+\cs_generate_variant:Nn \msg_warning:nnnn { nnnV }
\cs_new_protected:Npn \eb_fnmarktext_short_label_set:Nn #1#2
{
\tl_set:Nn \l__eb_fnmarktext_short_tokens_tl {#2}
\clist_map_inline:nn
{ A,a,1,I,i,c,s }
{
- \regex_match:nnT {##1} {#2}
+ \regex_match:nnTF {##1} {#2}
{
\regex_replace_once:nnN {##1}
- { \c{eb_int_format_trans:NN} ##1 \c{c@footnote} }
+ { \c{eb_int_type_trans:NN} ##1 \c{c@footnote} }
\l__eb_fnmarktext_short_tokens_tl
- \seq_map_break:
+ \cs_set_eq:NN #1 \l__eb_fnmarktext_short_tokens_tl
+ \clist_map_break:
+ }
+ {
+ \str_if_eq:nnT {##1} { s }
+ {
+ \str_if_eq:nnTF {#1} { \thefootnote }
+ { \str_set:Nn \l_tmpa_str { \thedownfootnote } }
+ { \str_set:Nn \l_tmpa_str { \theupfootnote } }
+ \msg_warning:nnnV { easybase } { unknown-fnt-type } {#2} \l_tmpa_str
+ }
}
}
- \cs_set_eq:NN #1 \l__eb_fnmarktext_short_tokens_tl
\cs_set_eq:NN \thedownfootnote \thefootnote
}
+\msg_new:nnn { easybase } { unknown-fnt-type }
+ {
+ The~'#1'~includes~unknown~footnote~numbering~type \\
+ in~#2.
+ }
\cs_new_protected:Npn \eb_footnote_value_handle:n #1
{
\str_case:nnF {#1}
{
{ bottom }
- { \bool_set_true:N \l__eb_fnpara_bottom_bool }
+ { \PushFntBottom }
{ flush }
{
\tl_set:Nn \l__eb_footnote_value_tl { plain }
@@ -611,7 +627,6 @@
}
}
-\bool_new:N \l__eb_fnpara_bottom_bool
\tl_new:N \l__eb_fnmarktext_format_tl
\tl_new:N \l__eb_fncustom_format_tl
\clist_new:N \l__eb_footnote_value_clist
@@ -659,68 +674,105 @@
unknown .code:n = \eb_msg_deprecated_option:n { hdr }
}
-\eb_at_end_preamble:n
+\ctex_before_end_preamble:n
{
\bool_if:NT \l__eb_chap_counter_withpart_bool
{ \counterwithin*{chapter}{part} }
\str_case:VnT \l__eb_fnt_parent_counter_tl
{
{ part } { \counterwithin*{footnote}{part} }
- { page } { \counterwithin*{footnote}{page} }
+ { page }
+ {
+ \RequirePackage{zref-perpage}
+ \zmakeperpage{footnote}
+ }
}
{ \counterwithout*{footnote}{chapter} }
- \eb_fnpara_if_pos_bottom:
}
-\cs_new_protected:Npn \setspread #1 { \linespread{#1}\selectfont }
-\cs_new:Npn \eb@ifvoid #1#2#3 { \ifvoid #1#2\else #3\fi }
-\cs_new_protected:Npn \eb_fnpara_if_pos_bottom:
+
+\def\@if@footnotes@TF #1#2 {\ifvoid\footins #2\else #1\fi}
+\def\@outputbox@removebskip
{
- \bool_if:NT \l__eb_fnpara_bottom_bool
+ \ifx\@textbottom\relax\else
+ \@outputbox@append
+ {
+ \@tempskipa\lastskip
+ \ifnum\gluestretchorder\@tempskipa>\z@
+ \vskip -\@tempskipa
+ \xdef\@outputbox@reinsertbskip
+ {\noexpand\@outputbox@append{\vskip\the\@tempskipa}}
+ \else
+ \global\let\@outputbox@reinsertbskip\relax
+ \fi
+ }
+ \fi
+ }
+\let\@outputbox@reinsertbskip\relax
+\def\@outputbox@append #1
+ {
+ \setbox\@outputbox\vbox
{
- \IfPackageLoadedTF{footmisc}
- {\msg_warning:nn { easybase } { bottom-not-compatible }}
+ \boxmaxdepth\@maxdepth
+ \dimen@\dp\@outputbox
+ \unvbox\@outputbox
+ #1
+ }
+ }
+\def\@outputbox@attachfloats{\@combinefloats}
+\NewHook{makecol/footins/before}
+\NewHook{makecol/footins/begin}
+\def\@outputbox@appendfootnotes
+ {
+ \@if@footnotes@TF
+ {
+ \UseHook{makecol/footins/before}
+ \@outputbox@append
{
- \cs_set:Npn \@makecol
- {
- \setbox\@outputbox\box\@cclv
- \let\@elt\relax
- \xdef\@freelist{\@freelist\@midlist}
- \global\let\@midlist\@empty
- \@combinefloats
- \eb@ifvoid\footins{}
- {
- \setbox\@outputbox\vbox
- {
- \boxmaxdepth\@maxdepth
- \unvbox\@outputbox
- \vfill\relax
- \vskip\skip\footins
- \color@begingroup
- \normalcolor\footnoterule
- \unvbox\footins
- \color@endgroup
- }
- }
- \eb@ifvoid\@kludgeins
- {\@makespecialcolbox}
- {
- \setbox\@outputbox\vbox to\@colht
- {
- \@texttop\dimen@\dp\@outputbox
- \unvbox\@outputbox
- \vskip -\dimen@\@textbottom
- }
- }
- \global\maxdepth\@maxdepth
- }
+ \vskip\skip\footins
+ \UseHook{makecol/footins/begin}
+ \color@begingroup
+ \normalcolor
+ \footnoterule
+ \@nameuse{pdfcolfoot@current}
+ \unvbox\footins
+ \color@endgroup
}
+ }{}
+ }
+\def\@makenormalcolbox
+ {
+ \setbox\@outputbox\vbox to\@colht
+ {
+ \@texttop
+ \dimen@\dp\@outputbox
+ \unvbox\@outputbox
+ \vskip -\dimen@
+ \@textbottom
}
}
-\msg_new:nnn { easybase } { bottom-not-compatible }
+\cs_new_protected:Npn \PushFntBottom
{
- Not~compatible~with~the~'footmisc'~package. \\
- Please~use~the~'bottom'~option~of~'footmisc'~package.
+ \cs_set:Npn \@makecol
+ {
+ \setbox\@outputbox\box\@cclv
+ \@outputbox@removebskip
+ \let\@elt\relax
+ \xdef\@freelist{\@freelist\@midlist}
+ \global\let\@midlist\@empty
+ \@outputbox@attachfloats
+ \@if@footnotes@TF
+ {\@outputbox@append{\vfill}}
+ {\@outputbox@reinsertbskip}
+ \@outputbox@appendfootnotes
+ \ifvbox\@kludgeins
+ \@makespecialcolbox
+ \else
+ \@makenormalcolbox
+ \fi
+ \global\maxdepth\@maxdepth
+ }
}
+\@onlypreamble\PushFntBottom
\cs_new_protected:Npn \eb_footnote_direct_hang:
{
@@ -781,7 +833,7 @@
\eb_patch_cmd:Nnn #1
{ \reset@font }
{
- \setspread{\eb@spread@footnote}
+ \usestretch{\eb@spread@footnote}
\eb@font@footnote
}
}
@@ -791,12 +843,12 @@
\ctex_at_end_package:nn { footmisc }
{
\eb_package_date_check:nn { footmisc } { 2022/02/10 }
- \boolfalse{FN@setspace}
- \ifbool{FN@para}{}
+ \ifboolexpr{not (bool {FN@para} or bool {FN@sidefn})}
{
+ \boolfalse{FN@setspace}
\cs_set_eq:NN \@makefntext \eb@@makefntext
\cs_set_eq:NN \@footnotetext \eb@@footnotetext
- }
+ }{}
\ifboolexpr
{
bool {FN@hangfoot} or
@@ -1035,7 +1087,7 @@
{
\IfBooleanTF{##1}
{
- \use:c {#1}*{\phantomsection ##3}
+ \use:c {#1}*{##3}
\CTEX@addtocline{#1}{##2}
\tl_if_empty:oF {##4} { \CTEX@addbitocline{#1}{##4} }
\use:c { #1mark }{##2}
@@ -1057,22 +1109,22 @@
\skip_if_eq:nnF { \eb@toc@lol@skip } { \c_zero_skip }
{ \addtocontents{lol}{\protect\addvspace{\skip_use:N \eb@toc@lol@skip}} }
}
-\cs_new_protected:Npn \eb_title_base_set_eq:nn #1#2
- {
- \tl_set_eq:cc { CTEX@#2@beforeskip } { CTEX@#1@beforeskip }
- \tl_set_eq:cc { CTEX@#2@afterskip } { CTEX@#1@afterskip }
- \bool_set_eq:cc { CTEX@#2@numbering } { CTEX@#1@numbering }
- \bool_set_eq:cc { CTEX@#2@fixskip } { CTEX@#1@fixskip }
- \bool_set_eq:cc { CTEX@#2@hang } { CTEX@#1@hang }
- \bool_set_eq:cc { CTEX@#2@runin } { CTEX@#1@runin }
- \cs_set_eq:cc { CTEX@#2@tocline } { CTEX@#1@tocline }
- \tl_set_eq:cc { CTEX@#2@break } { CTEX@#1@break }
- \tl_set_eq:cc { CTEX@#2@format } { CTEX@#1@format }
- \tl_set_eq:cc { CTEX@#2@nameformat } { CTEX@#1@nameformat }
- \tl_set_eq:cc { CTEX@#2@numberformat } { CTEX@#1@numberformat }
- \tl_set_eq:cc { CTEX@#2@titleformat } { CTEX@#1@titleformat }
- \tl_set_eq:cc { CTEX@#2@aftername } { CTEX@#1@aftername }
- \tl_set_eq:cc { CTEX@#2@aftertitle } { CTEX@#1@aftertitle }
+\cs_new_protected:Npn \CopyTitleFormat #1#2
+ {
+ \tl_set_eq:cc { CTEX@#1@beforeskip } { CTEX@#2@beforeskip }
+ \tl_set_eq:cc { CTEX@#1@afterskip } { CTEX@#2@afterskip }
+ \bool_set_eq:cc { CTEX@#1@numbering } { CTEX@#2@numbering }
+ \bool_set_eq:cc { CTEX@#1@fixskip } { CTEX@#2@fixskip }
+ \bool_set_eq:cc { CTEX@#1@hang } { CTEX@#2@hang }
+ \bool_set_eq:cc { CTEX@#1@runin } { CTEX@#2@runin }
+ \cs_set_eq:cc { CTEX@#1@tocline } { CTEX@#2@tocline }
+ \tl_set_eq:cc { CTEX@#1@break } { CTEX@#2@break }
+ \tl_set_eq:cc { CTEX@#1@format } { CTEX@#2@format }
+ \tl_set_eq:cc { CTEX@#1@nameformat } { CTEX@#2@nameformat }
+ \tl_set_eq:cc { CTEX@#1@numberformat } { CTEX@#2@numberformat }
+ \tl_set_eq:cc { CTEX@#1@titleformat } { CTEX@#2@titleformat }
+ \tl_set_eq:cc { CTEX@#1@aftername } { CTEX@#2@aftername }
+ \tl_set_eq:cc { CTEX@#1@aftertitle } { CTEX@#2@aftertitle }
}
\NewDocumentCommand{\NewTitleCommand}{omm}
{
@@ -1094,7 +1146,7 @@
{ \CTEXnumberline{##1}##2 }
\exp_args:Nc \providecommand { ttll@#2 }{#3}
\exp_args:Nc \providecommand { toclevel@#2 }{#3}
- \IfValueT{#1}{\eb_title_base_set_eq:nn {#1} {#2}}
+ \IfValueT{#1}{\CopyTitleFormat{#2}{#1}}
}
\NewDocumentCommand{\NewTitleEntryCommand}{O{toc}m}
{
@@ -1103,35 +1155,39 @@
\bool_if:cTF { CTEX@#2@numbering }
{ \CTEX@ifnametrue }
{ \CTEX@ifnamefalse }
+ \CTEX@makeanchor{#2*}
\addcontentsline{#1}{#2}{\use:c { CTEX@#2@tocline }{#2}{##1}}
}
}
\ctex_define:nn { tools }
{
- hyphen-figure .tl_set:N = \l__eb_hyphen_figure_tl,
- hyphen-table .tl_set:N = \l__eb_hyphen_table_tl,
- hyphen-listing .tl_set:N = \l__eb_hyphen_listing_tl,
- hyphen-equation .tl_set:N = \l__eb_hyphen_equation_tl,
- hyphen-every .meta:n =
+ hyphen-figure .tl_set:N = \l__eb_hyphen_figure_tl,
+ hyphen-table .tl_set:N = \l__eb_hyphen_table_tl,
+ hyphen-lstlisting .tl_set:N = \l__eb_hyphen_lstlisting_tl,
+ hyphen-equation .tl_set:N = \l__eb_hyphen_equation_tl,
+ hyphen-every .meta:n =
{
- hyphen-figure = {#1},hyphen-table = {#1},
- hyphen-listing = {#1},hyphen-equation = {#1}
+ hyphen-figure = {#1},hyphen-table = {#1},
+ hyphen-lstlisting = {#1},hyphen-equation = {#1}
},
- hyphen-every .initial:n = .,
- unknown .code:n = \eb_msg_deprecated_option:n { tools }
+ hyphen-every .initial:n = .,
+ unknown .code:n = \eb_msg_deprecated_option:n { tools }
}
-\clist_map_inline:nn
- { figure,table,listing,equation }
+\AtBeginDocument
{
- \cs_set:cpn { the#1 }
+ \clist_map_inline:nn
+ { figure,table,lstlisting,equation }
{
- \int_compare:nNnT { \c@chapter } > { 0 }
+ \cs_set:cpn { the#1 }
{
- \thechapter
- \tl_use:c { l__eb_hyphen_#1_tl }
+ \int_compare:nNnT { \c@chapter } > { 0 }
+ {
+ \thechapter
+ \tl_use:c { l__eb_hyphen_#1_tl }
+ }
+ \int_to_arabic:v { c@#1 }
}
- \int_to_arabic:v { c@#1 }
}
}
@@ -1141,47 +1197,73 @@
\bool_new:N \l__eb_toc_notitle_bool
\newbool{bitoc}
\cs_new:Npn \ebifbitoc { \ifbool{bitoc} }
+\seq_new:N \l__eb_level_tmpa_seq
+\tl_new:N \l__eb_level_tmpa_tl
+\cs_generate_variant:Nn \regex_extract_all:nnN { no }
+\cs_generate_variant:Nn \keys_define:nn { nx }
+\cs_generate_variant:Nn \ctex_set:nn { ox }
+\cs_new_protected:Npn \eb_toc_extract_level:
+ {
+ \regex_extract_all:noN { \cC. } { \eb@toc@title@level }
+ \l__eb_level_tmpa_seq
+ \seq_get_right:NN \l__eb_level_tmpa_seq \l__eb_level_tmpa_tl
+ \tl_set:Nx \l__eb_level_tmpa_tl
+ {
+ \exp_last_unbraced:No
+ \cs_to_str:N { \l__eb_level_tmpa_tl }
+ }
+ \regex_replace_case_once:nN
+ {
+ { ^bi(.*) } { \1 }
+ { .* } { \0 }
+ }
+ \l__eb_level_tmpa_tl
+ }
\keys_define:nn { eb/tocouter }
{
- level .tl_set:N = \eb@toc@title@level,
- level .initial:n =
+ level .code:n =
+ {
+ \tl_set:Nn \eb@toc@title@level {#1}
+ \eb_toc_extract_level:
+ },
+ level .initial:x =
{
\bool_if:NTF \l__eb_class_mode_book_bool
- { \bichapter* }
- { \bisection* }
+ { \exp_not:N \bichapter* }
+ { \exp_not:N \bisection* }
},
- section .meta:n = { level = \bisection* },
- chapter .meta:n = { level = \bichapter* },
- none .code:n =
+ section .meta:n = { level = \bisection* },
+ chapter .meta:n = { level = \bichapter* },
+ none .code:n =
{
\tl_set:Nn \eb@toc@title@level
{ \par\use_none:nn }
\bool_set_true:N \l__eb_toc_notitle_bool
},
- multoc .int_set:N = \l__eb_toc_columns_int,
- multoc .default:n = 2,
- multoc .initial:n = 1,
+ multoc .int_set:N = \l__eb_toc_columns_int,
+ multoc .default:n = 2,
+ multoc .initial:n = 1,
plan .choice:,
plan .value_required:n = true,
- plan/cn .code:n =
+ plan/cn .code:n =
{
\bool_set_true:N \l__eb_toc_plan_cn_bool
\bool_set_false:N \l__eb_toc_plan_bi_bool
},
- plan/bi .code:n =
+ plan/bi .code:n =
{
\bool_set_false:N \l__eb_toc_plan_cn_bool
\bool_set_true:N \l__eb_toc_plan_bi_bool
},
- plan/both .code:n =
+ plan/both .code:n =
{
\bool_set_true:N \l__eb_toc_plan_cn_bool
\bool_set_true:N \l__eb_toc_plan_bi_bool
},
- plan .initial:n = cn,
- columns .meta:n = { multoc = {#1} },
- title .code:n = \eb_assign_toc_title:n {#1},
- bilist .code:n =
+ plan .initial:n = cn,
+ columns .meta:n = { multoc = {#1} },
+ title .code:n = \eb_assign_toc_title:n {#1},
+ bilist .code:n =
{
\tl_gset:Nn \g__eb_bilist_permute_value_tl {#1}
\str_if_eq:nnTF {#1} { mix }
@@ -1199,12 +1281,16 @@
}
}
},
- name .tl_set:N = \l__eb_print_index_name_tl,
- name .initial:n = \imki@jobname
+ name .tl_set:N = \l__eb_print_index_name_tl,
+ name .initial:n = \imki@jobname,
+ unknown .code:n =
+ {
+ \ctex_set:ox { \l__eb_level_tmpa_tl }
+ { \eb_unknown_kv_handle: }
+ },
+ unknown .default:V = \c_novalue_tl
}
-\bool_if:NTF \l__eb_class_mode_book_bool
- { \keys_define:nn { } { eb/tocouter .inherit:n = ctex/chapter } }
- { \keys_define:nn { } { eb/tocouter .inherit:n = ctex/section } }
+
\NewDocumentCommand{\eb_assign_toc_title:n}
{>{\SplitArgument{1}{,}}m}
{\eb_toc_assign_title_judge:nn #1}
@@ -1283,8 +1369,9 @@
{ \protect\numberline{#3}{#4} }
}
}
-\cs_new_protected:Npn \AllotCaptionExt #1#2
+\cs_new_protected:Npn \AssignCaptionExt #1#2
{ \tl_set:cn { ext@#1 } {#2} }
+\cs_set_eq:NN \AllotCaptionExt \AssignCaptionExt
\ctex_define:n
{
bicontentsname .tl_set:N = \bicontentsname,
@@ -1330,6 +1417,7 @@
\tl_set:cn { ttll@#2 } {#1}
}
\contentsuse{lstlisting}{lol}
+\cs_set:Npn \hytoclink #1 { \Hy@toclinkstart #1\Hy@toclinkend }
\seq_put_left:Nn \c__ctex_headings_seq { chapter }
\seq_put_right:Nn \c__ctex_headings_seq { table }
\seq_put_right:Nn \c__ctex_headings_seq { figure }
@@ -1377,13 +1465,13 @@
{
tocformat = \IfBooleanT{#1}{\contentsmargin{0pt}},
tocindent = 0pt,
- tocrule = \IfBooleanTF{#1}{,~\thecontentspage}{\tocrule{$\cdot$}},
+ tocrule = \IfBooleanTF{#1}{,~\thecontentspage}{\cdottocrule},
toclabel =
{
\bool_if:NTF \l__eb_toc_entry_hang_bool
{ \IfBooleanTF{##3}{\use:n}{\contentspush} }
{ \use:n }
- { ##1\tl_use:c { l__eb_toc_##2_after_tl } }
+ { \hytoclink{##1}\tl_use:c { l__eb_toc_##2_after_tl } }
},
tocafter = \hspace{1em},
tocsep = .—,
@@ -1448,7 +1536,7 @@
\eb@register@every@toc@option
}
\RegisterEveryTocOption{tocafter,tocindent,tocrule}
-\NewDocumentCommand{\tocrule}{st-O{0.7pc}d()mO{}}
+\NewDocumentCommand{\tocrule}{st-O{0.6pc}d()mO{}}
{
\normalsize\normalfont
\ttl@row@i[#3]{\IfValueTF{#4}{\scalebox{#4}{#5}}{#5}}#6
@@ -1465,6 +1553,7 @@
}
}
}
+\cs_set:Npn \cdottocrule { \tocrule{\textperiodcentered} }
\ctex_define:nn { toc }
{
lolskip .skip_set:N = \eb@toc@lol@skip,
@@ -1501,18 +1590,14 @@
\group_begin:
\makeatletter
\file_if_exist_input:n { \jobname.#1 }
- \UseHookWithArguments{starttoc/after}{1}{#1}
+ \AddToHook{enddocument/afterlastpage}
+ {\UseHookWithArguments{starttoc/after}{1}{#1}}
\boolfalse{@nobreak}
\group_end:
}
{ \eb@starttoc{#1} }
}
-\AddToHook{enddocument/afterlastpage}
- {
- \IfHookEmptyTF{starttoc/after}{}
- {\iow_now:Nn \@mainaux { \RemoveFromHook{starttoc/after}[aux] }}
- }
-\cs_set_protected:Npn \AllotPartialExt #1#2
+\cs_set_protected:Npn \AssignPartialExt #1#2
{
\tl_if_exist:cTF { ttl@partial#1 }
{ \msg_warning:nnnn { easybase } { repeated-ptoc } {#1} {#2} }
@@ -1522,12 +1607,13 @@
{\ttl@topartial{#1}{##1}{##2}}
}
}
+\cs_set_eq:NN \AllotPartialExt \AssignPartialExt
\msg_new:nnn { easybase } { repeated-ptoc }
{
Local~directory~file~'#2'~of~directory~type~'#1'~is \\
repeatedly~allocated.
}
-\AllotPartialExt{lol}{pll}
+\AssignPartialExt{lol}{pll}
\cs_new_protected:Npn \RegisterTitleIfname #1
{
@@ -1578,7 +1664,7 @@
{
tocformat = \addvspace{1pc}\sffamily,
tocindent = 0pt,
- tocrule = \tocrule{$\cdot$}[\bfseries],
+ tocrule = \cdottocrule[\bfseries],
tocline = \CTEXnumberline{#1}#2
},
section =
@@ -1588,17 +1674,17 @@
tocrule =
{
\bool_if:NTF \l__eb_class_mode_book_bool
- { \tocrule{$\cdot$} }
- { \tocrule{$\cdot$}[\bfseries] }
+ { \cdottocrule }
+ { \cdottocrule[\bfseries] }
}
},
subsection =
- { tocindent = \bool_if:NTF \l__eb_class_mode_book_bool { 3.8em } { 1.4em } }
+ { tocindent = \bool_if:NTF \l__eb_class_mode_book_bool { 3.8em } { 1.5em } }
}
\ctex_at_end_package:nn { imakeidx }
{
- \RenewDocumentCommand{\printindex}{st+od()}
+ \RenewDocumentCommand{\printindex}{st++o}
{
\group_begin:
\tl_set_eq:NN \eb@toc@title \indexname
@@ -1656,19 +1742,19 @@
\ctex_define:nn { font }
{
- caption-table .tl_set:N = \l__eb_font_caption_table_tl,
- caption-figure .tl_set:N = \l__eb_font_caption_figure_tl,
- caption-listing .tl_set:N = \l__eb_font_caption_listing_tl,
- caption-every .meta:n =
+ caption-table .tl_set:N = \l__eb_font_caption_table_tl,
+ caption-figure .tl_set:N = \l__eb_font_caption_figure_tl,
+ caption-lstlisting .tl_set:N = \l__eb_font_caption_lstlisting_tl,
+ caption-every .meta:n =
{
- caption-table = {#1},caption-figure = {#1},
- caption-listing = {#1}
+ caption-table = {#1},caption-figure = {#1},
+ caption-lstlisting = {#1}
},
- caption-every .initial:n = \sffamily\small,
- footnote .tl_set:N = \eb@font@footnote,
- marginpar .tl_set:N = \marginfont,
- marginpar .initial:n = \footnotesize,
- unknown .code:n = \eb_msg_deprecated_option:n { font }
+ caption-every .initial:n = \sffamily\small,
+ footnote .tl_set:N = \eb@font@footnote,
+ marginpar .tl_set:N = \marginfont,
+ marginpar .initial:n = \footnotesize,
+ unknown .code:n = \eb_msg_deprecated_option:n { font }
}
\cs_new_protected:Npn \ebaddtofont #1#2
{
@@ -1678,13 +1764,13 @@
{ \tl_put_right:Nn \l__eb_font_caption_table_tl {#2} }
{ figure }
{ \tl_put_right:Nn \l__eb_font_caption_figure_tl {#2} }
- { listing }
- { \tl_put_right:Nn \l__eb_font_caption_listing_tl {#2} }
+ { lstlisting }
+ { \tl_put_right:Nn \l__eb_font_caption_lstlisting_tl {#2} }
{ every }
{
\tl_put_right:Nn \l__eb_font_caption_table_tl {#2}
\tl_put_right:Nn \l__eb_font_caption_figure_tl {#2}
- \tl_put_right:Nn \l__eb_font_caption_listing_tl {#2}
+ \tl_put_right:Nn \l__eb_font_caption_lstlisting_tl {#2}
}
{ footnote }
{ \tl_put_right:Nn \eb@font@footnote {#2} }
@@ -1694,26 +1780,53 @@
}
\cs_set_eq:NN \addtosubfont \ebaddtofont
+\cs_new_protected:Npn \usestretch #1
+ {
+ \edef\baselinestretch{#1}
+ \@currsize
+ }
+\cs_set_eq:NN \setspread \usestretch
+\cs_new_protected:Npn \restore@usespace
+ {
+ \par
+ \vskip\parskip
+ \vskip\baselineskip
+ \endgroup
+ \vskip -\parskip
+ \vskip -\baselineskip
+ }
+\NewDocumentEnvironment{usespace}{m+b}
+ {
+ \par
+ \begingroup
+ \usestretch{#1}#2
+ \restore@usespace
+ }{}
+\msg_new:nnn { easybase } { invalid-spread }
+ {
+ The~line~spacing~factor~option~'#1'~is~invalid. \\
+ Please~use~the~'usespace'~environment~to~set~the~line~spacing.
+ }
+\cs_new_protected:Npn \eb_invalid_spread_warning:
+ { \msg_warning:nnV { easybase } { invalid-spread } \l_keys_key_str }
\ctex_define:nn { space }
{
- linespread .code:n = \setspread{#1},
- tabspread .fp_set:N = \l__eb_spread_table_fp,
- tabspread .initial:n = 1.2,
- mathspread .tl_set:N = \eb@spread@math,
- mathspread .initial:n = 1.2,
+ linespread .code:n = \usestretch{#1},
+ tabspread .code:n = \eb_invalid_spread_warning:,
+ mathspread .code:n = \eb_invalid_spread_warning:,
fntspread .code:n =
{
\tl_set:Nn \eb@spread@footnote {#1}
\group_begin:
\footnotesize
- \setspread{\eb@spread@footnote}
+ \usestretch{\eb@spread@footnote}
\exp_args:NNNo \group_end:
\dim_set:Nn \footnotesep { \dim_use:N \box_ht:N \strutbox }
},
fntspread .initial:n = 1.2,
captab-spread .fp_set:N = \l__eb_spread_caption_table_fp,
capfig-spread .fp_set:N = \l__eb_spread_caption_figure_fp,
- caplst-spread .fp_set:N = \l__eb_spread_caption_listing_fp,
+ caplst-spread .fp_set:N = \l__eb_spread_caption_lstlisting_fp,
caption-spread .meta:n =
{
captab-spread = {#1},capfig-spread = {#1},
@@ -1722,8 +1835,8 @@
caption-spread .initial:n = 1.2,
everyspread .meta:n =
{
- linespread = {#1},tabspread = {#1},mathspread = {#1},
- caption-spread = {#1},fntspread = {#1}
+ linespread = {#1},caption-spread = {#1},
+ fntspread = {#1}
},
abovedisplayskip .code:n =
{ \AfterPreamble{\skip_set:Nn \abovedisplayskip {#1}} },
@@ -1742,23 +1855,39 @@
\tl_if_eq:NnT \l__ctex_scheme_tl { chinese }
{
\fp_compare:nNnTF { \l__ctex_line_spread_fp } = { 1.3 }
- {
- \ctex_set:nn { space }
- { linespread = 1.354,tabspread = 1.354 }
- }
- {
- \ctex_set:nn { space }
- { linespread = \fp_use:N \l__ctex_line_spread_fp }
- }
+ { \usestretch{1.354} }
+ { \usestretch{\fp_use:N \l__ctex_line_spread_fp} }
}
\AfterPreamble{\skip_set:Nn \abovedisplayshortskip { 0ex plus .1ex }}
+\cs_new_protected:Npn \eb@register@cap@options #1
+ {
+ \ctex_define:nn { cap }
+ {
+ #1/unknown .code:n =
+ {
+ \use:x
+ {
+ \exp_not:N \captionsetup[#1]
+ { \eb_unknown_kv_handle: }
+ }
+ },
+ #1/unknown .default:V = \c_novalue_tl,
+ #1 .meta:nn = { ctex/cap/#1 } {##1}
+ }
+ }
+\cs_new_protected:Npn \RegisterCapOptions #1
+ {
+ \clist_map_function:nN {#1}
+ \eb@register@cap@options
+ }
+\RegisterCapOptions{table,figure,lstlisting}
\clist_map_inline:nn
- { table,figure,listing }
+ { table,figure,lstlisting }
{
\DeclareCaptionFont{eb@#1@font}
{
- \setspread{\fp_use:c { l__eb_spread_caption_#1_fp }}
+ \usestretch{\fp_use:c { l__eb_spread_caption_#1_fp }}
\tl_use:c { l__eb_font_caption_#1_tl }
}
}
@@ -1772,15 +1901,12 @@
}
\captionsetup[table]{font = eb@table@font}
\captionsetup[figure]{font = eb@figure@font}
-\captionsetup[lstlisting]{font = eb@listing@font}
+\captionsetup[lstlisting]{font = eb@lstlisting@font}
\ctex_at_end_package:nn { bicaption }
{
\captionsetup[figure][bi-second]{name = Figure}
\captionsetup[table][bi-second]{name = Table}
}
-\eb_at_begin_environment:nn
- { tabular,tabularx,longtable }
- { \setspread{\fp_use:N \l__eb_spread_table_fp} }
\UseTblrLibrary{booktabs}
\bool_if:NF \l__eb_float_page_bool
@@ -1931,21 +2057,24 @@
\tl_clear:N \l__eb_eqsymb_intro_tl
\ignorespaces
}
-\bool_if:NT \l__eb_theorem_support_bool
+\cs_new_protected:Npn \eb_theorem_load_thmtools:
{
\RequirePackage{amsthm,thmtools}
\cs_set_eq:NN \eb@declaretheoremstyle@save \declaretheoremstyle
\cs_set_eq:NN \eb@declaretheorem@save \declaretheorem
\RenewDocumentCommand{\declaretheoremstyle}{+O{}m+O{}}
- {\eb@declaretheoremstyle@save[#1,#3]{#2}}
+ {\eb@declaretheoremstyle@save[##1,##3]{##2}}
\RenewDocumentCommand{\declaretheorem}{+O{}m+O{}}
{
- \eb@declaretheorem@save[style = default,#1,#3]{#2}
- \settheoremtocline{#2}
+ \eb@declaretheorem@save[style = default,##1,##3]{##2}
+ \settheoremtocline{##2}
{
- \listnumberline{#2}
+ \listnumberline{##2}
\thmtname\thmtifnote{~(\thmtnote)}{}
}
+ \cs_gset:cpn { thmt@contentsline@##2 }
+ { \thmt@contentslineIfNamed }
+ \exp_args:Nc \providecommand { p@##2 }[1]{####1}
}
\ctex_define:nn { thmt }
{
@@ -1963,14 +2092,14 @@
bodyfont = \normalfont,
postheadspace = 1em
]
- \theoremstyle{default}
\cs_undefine:N \proof
\DeclareFloatList{theorem}{loe}
- \AllotPartialExt{loe}{ple}
+ \AssignPartialExt{loe}{ple}
\eb_preto_cmd:nn { listoftheorems }
{
\group_begin:
- \def\contentsline #1 {\use:c { thmt@contentsline@#1 }{#1}}
+ \let\thmt@contentsline\contentsline
+ \def\contentsline ##1 {\use:c { thmt@contentsline@##1 }{##1}}
}
\eb_appto_cmd:nn { listoftheorems } { \group_end: }
\eb_preto_cmd:nn { @chapter }
@@ -1982,21 +2111,33 @@
\def\thmtname{\thmt@thmname}
\def\thmtenvname{\thmt@envname}
\def\thmtnote{\thmt@shortoptarg}
- \def\thmtformatoptarg #1 {#1}
- \def\thmtifname #1#2 {\ifbool{thmt@isstarred}{#2}{#1}}
- \def\thmtifnote #1#2
+ \def\thmtformatoptarg ##1 {##1}
+ \def\thmtifname ##1##2 {\ifbool{thmt@isstarred}{##2}{##1}}
+ \def\thmtifnote ##1##2
{
\tl_if_empty:NTF \thmt@shortoptarg
- {#2}
- { \protect\thmtformatoptarg{#1} }
+ {##2}
+ { \protect\thmtformatoptarg{##1} }
}
\NewDocumentCommand{\settheoremtocline}{smm}
{
- \IfBooleanT{#1}{\def\thmt@contentslineIgnore{\thmt@contentsline}}
- \cs_set:cpn { ll@#2 } { \@bsphack #3\@esphack }
+ \IfBooleanT{##1}{\def\thmt@contentslineIgnore{\thmt@contentsline}}
+ \cs_set:cpn { ll@##2 } { \@bsphack ##3\@esphack }
}
}
-
+\cs_new_protected:Npn \eb_theorem_load_keytheorems:
+ {
+ \RequirePackage{keytheorems}
+ \DeclareFloatList{theorem}{thlist}
+ \AssignPartialExt{thlist}{ple}
+ }
+\str_case:Vn \l__eb_theorem_support_tl
+ {
+ { thmtools }
+ { \eb_theorem_load_thmtools: }
+ { keytheorems }
+ { \eb_theorem_load_keytheorems: }
+ }
\setchemformula
{
math-scripts = false,
@@ -2015,30 +2156,6 @@
group-digits = none
}
}{}
-\eb_at_begin_environment:nn
- {
- array,matrix,pmatrix,bmatrix,Bmatrix,vmatrix,Vmatrix,
- matrix*,pmatrix*,bmatrix*,Bmatrix*,vmatrix*,Vmatrix*,
- cases,cases*,dcases,dcases*,rcases,rcases*,drcases,drcases*,
- aligned,alignedat,gathered,multlined,lgathered,rgathered
- }
- { \setspread{\eb@spread@math} }
-\clist_map_inline:nn
- { \start@gather,\start@align,\start@multline }
- {
- \eb_patch_cmd:Nnn #1
- { \collect@body }
- {
- \setspread{\eb@spread@math}
- \collect@body
- }
- }
-\eb_patch_cmd:Nnn \gather@split
- { \spread@equation }
- {
- \setspread{\eb@spread@math}
- \spread@equation
- }
\ctex_at_end_package:nn { unicode-math }
{ \msg_redirect_module:nnn { unicode-math } { warning } { info } }
\ctex_at_end_package:nn { tcolorbox }
@@ -2059,7 +2176,6 @@
bititle .initial:n = Bibliography,
unknown .code:n = \eb_msg_deprecated_option:n { bib }
}
-
\cs_new_protected:Npn \eb_bibtex_natbib_set:
{
\RequirePackage[sort&compress]{natbib}
@@ -2077,7 +2193,7 @@
{ \exp_args:NV \bibliographystyle \l__eb_bib_both_style_tl }
\tl_if_blank:VF \l__eb_bib_cite_style_tl
{ \exp_args:NV \setcitestyle \l__eb_bib_cite_style_tl }
- \NewDocumentCommand{\printbibliography}{st+o}
+ \NewDocumentCommand{\printbibliography}{st++o}
{
\group_begin:
\tl_set_eq:NN \eb@toc@title \bibname
@@ -2125,7 +2241,7 @@
\setcounter{biburllcpenalty}{1}
\setcounter{biburlnumpenalty}{1}
}
-\eb_at_end_preamble:n
+\ctex_before_end_preamble:n
{
\providecommand{\bibname}{\refname}
\clist_if_empty:NF \l__eb_bib_datafile_clist
@@ -2342,6 +2458,8 @@
lstlistingname = 代码,
listtheoremname = 定理清单
}
+ \ctex_at_end_package:nn { keytheorems }
+ { \keytheoremlistset{title = 定理清单} }
}
{
\keys_set_known:nn { ctex }
@@ -2350,6 +2468,100 @@
lstlistingname = Code
}
}
+
+\cs_if_exist:NF \DeclareObjectType
+ { \RequirePackage{xtemplate} }
+\DeclareObjectType{easybook}{0}
+\DeclareTemplateInterface{easybook}{cover}{0}
+ {
+ content : tokenlist = \c_empty_tl,
+ beforecode : tokenlist = \c_empty_tl,
+ aftercode : tokenlist = \c_empty_tl,
+ align : choice {l,r,c,n} = c
+ }
+\DeclareTemplateCode{easybook}{cover}{0}
+ {
+ content = \l__eb_cover_content_tl,
+ beforecode = \l__eb_cover_before_code_tl,
+ aftercode = \l__eb_cover_after_code_tl,
+ align =
+ {
+ l = \cs_set_eq:NN \eb_cover_align: \raggedright,
+ r = \cs_set_eq:NN \eb_cover_align: \raggedleft,
+ c = \cs_set_eq:NN \eb_cover_align: \centering,
+ n = \cs_set:Npn \eb_cover_align: { }
+ }
+ }
+ {
+ \AssignTemplateKeys
+ \tl_use:N \l__eb_cover_before_code_tl
+ \group_begin:
+ \eb_cover_align:
+ \tl_use:N \l__eb_cover_content_tl
+ \tex_par:D
+ \group_end:
+ \tl_use:N \l__eb_cover_after_code_tl
+ }
+\DeclareInstance{easybook}{top}{cover}{}
+\DeclareInstance{easybook}{bottom}{cover}{}
+\DeclareInstance{easybook}{middle}{cover}
+ {
+ content =
+ {
+ \notbool{@titlepage}
+ {
+ \renewcommand{\theupfootnote}{\@fnsymbol\c@footnote}
+ \renewcommand{\thefootnote}{\@fnsymbol\c@footnote}
+ \let\footnote\thanks
+ }
+ {}
+ \bgroup\LARGE\@title\par\egroup
+ \notbool{@titlepage}{\vskip 1.5em}{\vskip 3em}
+ \bgroup\large
+ \begin{tabular}[t]{c}
+ \@author
+ \end{tabular}\par\egroup
+ \notbool{@titlepage}{\vskip 0.75em}{\vskip 1.5em}
+ \bgroup\large\@date\par\egroup
+ \notbool{@titlepage}{\vskip 1.5em}{}
+ \@thanks
+ },
+ beforecode =
+ {
+ \ifbool{@titlepage}
+ {
+ \begin{titlepage}
+ \let\footnotesize\small
+ \let\footnoterule\relax
+ \let\footnote\thanks
+ \null\vfil\vskip 60\p@
+ }
+ {\null\vskip 20\p@}
+ },
+ aftercode =
+ {
+ \ifbool{@titlepage}
+ {
+ \vfil\null
+ \end{titlepage}
+ }
+ {\thispagestyle{plain}}
+ \setcounter{footnote}{0}
+ }
+ }
+\keys_define:nn { eb/cover }
+ {
+ title .tl_set:N = \@title,
+ author .tl_set:N = \@author,
+ date .tl_set:N = \@date
+ }
+\RenewDocumentCommand{\maketitle}{+O{}}
+ {
+ \keys_set:nn { eb/cover } {#1}
+ \UseInstance{easybook}{top}
+ \UseInstance{easybook}{middle}
+ \UseInstance{easybook}{bottom}
+ }
\endinput
%%
%% End of file `easybase.sty'.
diff --git a/Master/texmf-dist/tex/latex/easybook/easybook.cls b/Master/texmf-dist/tex/latex/easybook/easybook.cls
index 637ec260f2c..7c2775d2345 100644
--- a/Master/texmf-dist/tex/latex/easybook/easybook.cls
+++ b/Master/texmf-dist/tex/latex/easybook/easybook.cls
@@ -19,7 +19,7 @@
%%
%% This work has the LPPL maintenance status `maintained'.
\NeedsTeXFormat{LaTeX2e}[2021/11/15]
-\ProvidesExplClass{easybook}{2024/06/24}{2024cm}
+\ProvidesExplClass{easybook}{2024/09/30}{2024eb}
{Easily typesetting Chinese theses or books}
\bool_new:N \l__eb_compile_draft_bool
diff --git a/Master/texmf-dist/tex/latex/easybook/eb-tcolorbox.cfg b/Master/texmf-dist/tex/latex/easybook/eb-tcolorbox.cfg
index 9d6f1c517ec..47807595d4d 100644
--- a/Master/texmf-dist/tex/latex/easybook/eb-tcolorbox.cfg
+++ b/Master/texmf-dist/tex/latex/easybook/eb-tcolorbox.cfg
@@ -18,15 +18,13 @@
%% LaTeX version 2005/12/01 or later.
%%
%% This work has the LPPL maintenance status `maintained'.
-\ProvidesExplFile{eb-tcolorbox.cfg}{2024/06/24}{2024cm}
+\ProvidesExplFile{eb-tcolorbox.cfg}{2024/09/30}{2024eb}
{Customization of tcolorbox for easybook}
\cs_set_protected:Npn \addtotcbstyle #1#2
{ \tcbset{#1/.append~style = {#2}} }
\cs_set_protected:Npn \deftcbstyle #1#2
{ \tcbset{#1/.style = {#2}} }
-\cs_new_protected:Npn \tcbappstyle
- { \@ifstar{\deftcbstyle}{\addtotcbstyle} }
\deftcbstyle{tc-easyboxi}
{
diff --git a/Master/texmf-dist/tex/latex/edmaths/edmaths.sty b/Master/texmf-dist/tex/latex/edmaths/edmaths.sty
new file mode 100644
index 00000000000..cbfd89a5bed
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/edmaths/edmaths.sty
@@ -0,0 +1,258 @@
+%% Package `edmaths' v0.99
+%% File edmaths.sty
+%% Copyright 2024 Josh Fogg
+%%
+%% edmaths.sty is a LaTeX style file for typesetting reports and theses in the
+%% School of Mathematics at the University of Edinburgh. Suitable for use for
+%% theses, yearly reports, and undergraduate projects. Part of the more general
+%% `edmaths' package. See README.md for usage instructions.
+%%
+%% 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://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' and the current
+%% maintainer of this work is Josh Fogg. Originally written by Thomas Koeppe in
+%% 2007/07, it has since been updated by Josh Fogg from 2020 onwards.
+%%
+%% This work consists of the file edmaths.sty.
+
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{edmaths}[2024-08-30 Edinburgh maths thesis/report style v0.99]
+\RequirePackage{calc,ifthen,setspace,amsmath,amsthm,amscd,amssymb}
+
+
+
+% PAGE SIZE AND MARGINS
+% These settings control the size of the page and its margins. All measurements are
+% compliant wih the school's typesetting requirements.
+
+\setlength{\paperheight}{297mm} % A4 Paper
+\setlength{\paperwidth}{210mm} %
+\setlength{\oddsidemargin}{14.6mm} % Left/Inside: 4.0cm (rel. -1in)
+\setlength{\evensidemargin}{-.4mm} % Right/Outside: 2.5cm (rel. -1in)
+\setlength{\topmargin}{-17.4mm} % \
+\setlength{\headheight}{6mm} % | Top: 2.0cm (rel. -1in), out of which 6mm for the header
+\setlength{\headsep}{6mm} % /
+\setlength{\textwidth}{145mm} % Margins: 2.5cm + 4cm
+% Textheight delayed until we know the line spacing.
+
+% The following is removed in favour of the `report' class options "oneside/twoside".
+% \@twosidefalse \@mparswitchfalse % Single-sided by default
+
+
+
+% PACKAGE OPTIONS
+% These options can be selected wihin \usepackage[...]{edmaths} to modify the
+% appearance of different parts of the document.
+
+% Options relating to external packages
+\newboolean{with-fourier} % Use the `fourier' package for Adobe Utopia font
+\newboolean{with-cmbright} % Use the `cmbright' package for Computer Modern Bright (sans serif) font
+\newboolean{with-comicsans} % :)
+\newboolean{with-hyperref} % Use the `hyperref' package for hyperlinks and bookmarks, all black
+\newboolean{with-colour} % Add sane colours to the hyperref links
+\newboolean{with-fancyhdr} % Use the `fancyhdr' package to provide header and footer
+\DeclareOption{fourier}{\setboolean{with-fourier}{true}}
+\DeclareOption{cmbright}{\setboolean{with-cmbright}{true}}
+\DeclareOption{comicsans}{\setboolean{with-comicsans}{true}}
+\DeclareOption{hyperref}{\setboolean{with-hyperref}{true}}
+\DeclareOption{colour}{\setboolean{with-colour}{true}}
+\DeclareOption{fancyhdr}{\setboolean{with-fancyhdr}{true}}
+
+% Options relating to document type (thesis, report, etc)
+\ifthenelse{\isundefined{\degreetext}}{\newcommand{\degreetext}{Specify a degree option!}}{}
+\DeclareOption{phd}{\renewcommand{\degreetext}{Doctor of Philosophy}}
+\DeclareOption{firstyear}{\renewcommand{\degreetext}{First-Year Report\\Maxwell Institute Graduate School}}
+\DeclareOption{secondyear}{\renewcommand{\degreetext}{Second-Year Report\\Maxwell Institute Graduate School}}
+\DeclareOption{thirdyear}{\renewcommand{\degreetext}{Third-Year Report\\Maxwell Institute Graduate School}}
+\DeclareOption{y4project}{\renewcommand{\degreetext}{Year 4 Project\\School of Mathematics}}
+\DeclareOption{mmath}{\renewcommand{\degreetext}{Master of Mathematics with Honours \\ School of Mathematics}}
+\DeclareOption{masterph}{\renewcommand{\degreetext}{Master of Philosophy}}
+\DeclareOption{mastersc}{\renewcommand{\degreetext}{Master of Science by Research}}
+
+% Options relating to stretchfactor (used for margin spacing)
+\ifthenelse{\isundefined{\stretchfactor}}{\newcommand{\stretchfactor}{1}}{}
+\DeclareOption{single}{\renewcommand{\stretchfactor}{1}}
+\DeclareOption{onehalf}{\renewcommand{\stretchfactor}{1.5}}
+\DeclareOption{double}{\renewcommand{\stretchfactor}{2}}
+
+% Options relating to having single or double sided documents
+% \DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse} % Single-sided by default
+% \DeclareOption{twosides}{\@twosidetrue \@mparswitchtrue}
+
+
+\ProcessOptions
+
+% If with-fourier selected, use the Adobe Utopia font.
+\ifthenelse{\boolean{with-fourier}}{
+ \RequirePackage{cmap}
+ \RequirePackage{fourier}
+ \RequirePackage[T1]{fontenc}
+ \RequirePackage{microtype}
+} {}
+
+% If with-cmbright selected, use the (sans-serif) Computer Modern Bright font.
+\ifthenelse{\boolean{with-cmbright}}{
+ % NOTE if it doesn't compile, make sure you have CM Bright installed!
+ \RequirePackage{cmap}
+ \RequirePackage{cmbright}
+ \RequirePackage[T1]{fontenc}
+ \RequirePackage{microtype}
+} {}
+
+% :)
+\ifthenelse{\boolean{with-comicsans}}{
+ % NOTE must be compiled with xelatex or luatex
+ \usepackage{fontspec}
+ \setmainfont{Comic Sans MS}
+} {}
+
+% If with-hyperref selected, configure its default settings
+\ifthenelse{\boolean{with-hyperref}}{
+ \RequirePackage[dvipsnames]{xcolor}
+ \RequirePackage[pdftitle={\@title}, pdfauthor={\@author}, pdfcreator={PDFLaTeX with edmaths}, pdfpagelayout=OneColumn, colorlinks=true, linkcolor=black, urlcolor=black, citecolor=black]{hyperref}
+ % If with-colour selected, use it to make hyperlinks blue not black
+ \ifthenelse{\boolean{with-colour}}{
+ \hypersetup{linkcolor=Sepia, urlcolor=NavyBlue, citecolor=Sepia}
+ } {}
+} {}
+
+% If with-fancyhdr selected, use it to provide fancier headers and footers
+\ifthenelse{\boolean{with-fancyhdr}}{
+ \RequirePackage{fancyhdr}
+ % Define a short title for use in headers if title is too long. Default is the same as title. Usage: use command \shortitle{<your short title here>} *after* calling edmaths.
+ \newcommand\@shorttitle{\@title}
+ \newcommand\shorttitle[1]{\renewcommand\@shorttitle{#1}}
+ \pagestyle{fancy}
+ \fancyhf{}
+ % if \fancyhead or \fancyfoot are used without `twoside` in \documentclass{...} then
+ % fancyhdr will complain that the 'E' used here is useless, so need to condition.
+ \if@twoside%
+ %%% put the stuff for true here (twoside=true)
+ \fancyhead[RO,LE]{\thepage}
+ \fancyfoot[RO,LE]{\thepage}
+ \fancyhead[LO]{\it\@shorttitle}
+ \fancyhead[RE]{\@author}
+ \fancyfoot[RE,LO]{}
+ \else%
+ %%% put the stuff for false here (twoside=false)
+ \fancyhead[LO]{\it\@shorttitle~~$\cdot$~~\@author}
+ \fancyhead[R]{\thepage}
+ \fancyfoot[R,LO]{}
+ \fi%
+} {}
+
+
+
+% BODY HEIGHT
+% Set up the text body height. For the text height, we calculate the largest number of
+% lines that gives us no more than 4cm bottom margin. This depends on the line spacing,
+% which we need first.
+
+\setstretch{\stretchfactor}
+
+% Debug only: In the next line, \XXXfactor contains the number of lines on a text-only page.
+% \newlength{\XXXunit}\setlength{\XXXunit}{1pt}\newlength{\XXXfactor}\setlength{\XXXfactor}{1pt + ((672pt - \topskip) / \baselineskip) * \XXXunit}
+\newlength{\scratchlength}\setlength{\scratchlength}{\topskip + ((672pt - \topskip) / \baselineskip) * \baselineskip + \baselineskip}
+\setlength{\textheight}{\scratchlength}
+
+
+
+% DOCUMENT COMPONENTS
+% Provides the formatting for the required document components. Specifically, these are
+% the titlepage, declaration, dedication, abstract, and undergraduate project fulfilment.
+
+\renewcommand{\maketitle}{%
+ \begin{titlepage}
+ \singlespacing
+ \addtolength{\oddsidemargin}{-0.75cm}
+ \begin{center}
+ \null\vskip 4.1cm
+ \begin{minipage}[t][7.6cm]{10.5cm}
+ \begin{center}
+ {\LARGE\textbf{\@title}\par}
+ {\Large\textit{\@author}\par}
+ \end{center}
+ \end{minipage}
+ \vfill
+ {\Large\degreetext \par The University of Edinburgh \par\@date \par}
+ \end{center}
+ \end{titlepage}
+ % For two-sided documents it's required that a blank page follow the title page. For
+ % one-sided documents it's required that the title page contribute to the page count.
+ \if@twoside
+ \thispagestyle{empty}
+ \cleardoublepage
+ \else
+ \addtocounter{page}{1}
+ \fi
+}
+
+
+% Declaration style for everything except year 4 projects
+\newcommand{\declaration}[1]{
+ % Doesn't need a chapter number or adding to the contents page
+ \chapter*{Declaration}
+ % Must always be single spaced
+ \begin{singlespace}
+ \def\param{#1}
+ \ifx\param\empty
+ I declare that this thesis was composed by myself
+ and that the work contained therein is my own,
+ except where explicitly stated otherwise in the text.
+ \else
+ {#1}
+ \fi
+ \end{singlespace}
+ {\raggedleft\vspace{2cm}(\textit{\@author})}
+}
+
+
+% Declaration style for year 4 project, argument is degree programme (e.g. MMath)
+\newcommand{\yfourdeclaration}[1]{
+ \vfill
+ \noindent
+ This project report is submitted in partial fulfilment
+ of the requirements for the degree of \textit{#1}.
+}
+
+
+\renewenvironment{abstract}{
+ % Abstracts don't need a chapter number...
+ \chapter*{\abstractname}
+}{
+ % ...but do need adding to the contents page.
+ \addcontentsline{toc}{chapter}{\abstractname}
+}
+
+
+\newenvironment{laysummary}{
+ % A lay summary is required for PhD theses and is not included in the page count. We treat it in a similar way to the abstract here.
+ \chapter*{Lay Summary}
+}{
+ \addcontentsline{toc}{chapter}{Lay Summary}
+}
+
+
+\newenvironment{acknowledgements}{
+ % Acknowledgements environment similar to abtract and lay summary.
+ \chapter*{Acknowledgements}
+}{
+ \addcontentsline{toc}{chapter}{Acknowledgements}
+}
+
+
+\newcommand{\dedication}[1]{%
+ % Handled dedications (e.g. 'For Alex', not acknowledgements)
+ \clearpage
+ \thispagestyle{plain}
+ \vspace*{7cm}
+ \begin{center}
+ \Large\it #1
+ \end{center}
+} \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/electrum/electrum.sty b/Master/texmf-dist/tex/latex/electrum/electrum.sty
deleted file mode 100644
index ff9086e8021..00000000000
--- a/Master/texmf-dist/tex/latex/electrum/electrum.sty
+++ /dev/null
@@ -1,35 +0,0 @@
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{electrum}[2010/07/17 v1.0 electrum]
-\RequirePackage{xkeyval}
-\RequirePackage[T1]{fontenc}
-\RequirePackage{textcomp}
-\UndeclareTextCommand{\textperthousand}{T1}
-\RequirePackage{nfssext-cfr}
-%:boolkeys for ligature/swash encoding as default
-\define@boolkey{electrum.sty}[electrum@]{lig}[true]{%
- \ifelectrum@lig
- \def\electrum@lig{w}%
- \else
- \def\electrum@lig{}%
- \fi}
-%:boolkeys for roman osf/lf
-\define@boolkey{electrum.sty}[electrum@]{osf}[true]{%
- \ifelectrum@osf
- \def\electrum@lfosf{j}%
- \else
- \def\electrum@lfosf{}%
- \fi}
-\define@boolkey{electrum.sty}[electrum@]{lf}[true]{%
- \ifelectrum@lf
- \def\electrum@lfosf{}%
- \else
- \def\electrum@lfosf{j}%
- \fi}
-%:defaults to ensure everything is defined to something
-\ExecuteOptionsX{lig=false,osf=true}
-%:options override defaults
-\ProcessOptionsX
-%:make ElectrumADF default roman font, implementing options for ligature/swash encoding and lf/osf as applicable
-\renewcommand{\rmdefault}{yes\electrum@lfosf\electrum@lig}%
-\endinput
-%% end electrum.sty
diff --git a/Master/texmf-dist/tex/latex/electrum/t1yes.fd b/Master/texmf-dist/tex/latex/electrum/t1yes.fd
deleted file mode 100644
index f238e30ea39..00000000000
--- a/Master/texmf-dist/tex/latex/electrum/t1yes.fd
+++ /dev/null
@@ -1,91 +0,0 @@
-%Filename: t1yes.fd
-%Created by: tex yes-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{t1yes.fd}
- [2010/07/19 Fontinst v1.933 font definitions for T1/yes.]
-
-\DeclareFontFamily{T1}{yes}{}
-
-\DeclareFontShape{T1}{yes}{m}{n}{
- <-> yesr8t
-}{}
-
-\DeclareFontShape{T1}{yes}{m}{sc}{
- <-> yesrc8t
-}{}
-
-\DeclareFontShape{T1}{yes}{m}{sl}{
- <-> yesro8t
-}{}
-
-\DeclareFontShape{T1}{yes}{m}{scsl}{
- <-> yesrco8t
-}{}
-
-\DeclareFontShape{T1}{yes}{b}{n}{
- <-> yesb8t
-}{}
-
-\DeclareFontShape{T1}{yes}{b}{sc}{
- <-> yesbc8t
-}{}
-
-\DeclareFontShape{T1}{yes}{b}{sl}{
- <-> yesbo8t
-}{}
-
-\DeclareFontShape{T1}{yes}{b}{scsl}{
- <-> yesbco8t
-}{}
-
-\DeclareFontShape{T1}{yes}{l}{n}{
- <-> yesl8t
-}{}
-
-\DeclareFontShape{T1}{yes}{l}{sc}{
- <-> yeslc8t
-}{}
-
-\DeclareFontShape{T1}{yes}{l}{sl}{
- <-> yeslo8t
-}{}
-
-\DeclareFontShape{T1}{yes}{l}{scsl}{
- <-> yeslco8t
-}{}
-
-\DeclareFontShape{T1}{yes}{sb}{n}{
- <-> yess8t
-}{}
-
-\DeclareFontShape{T1}{yes}{sb}{sc}{
- <-> yessc8t
-}{}
-
-\DeclareFontShape{T1}{yes}{sb}{sl}{
- <-> yesso8t
-}{}
-
-\DeclareFontShape{T1}{yes}{sb}{scsl}{
- <-> yessco8t
-}{}
-
-\DeclareFontShape{T1}{yes}{m}{it}{<->ssub * yes/m/sl}{}
-\DeclareFontShape{T1}{yes}{m}{si}{<->ssub * yes/m/scsl}{}
-\DeclareFontShape{T1}{yes}{bx}{n}{<->ssub * yes/b/n}{}
-\DeclareFontShape{T1}{yes}{bx}{sc}{<->ssub * yes/b/sc}{}
-\DeclareFontShape{T1}{yes}{bx}{sl}{<->ssub * yes/b/sl}{}
-\DeclareFontShape{T1}{yes}{b}{it}{<->ssub * yes/b/sl}{}
-\DeclareFontShape{T1}{yes}{bx}{it}{<->ssub * yes/b/it}{}
-\DeclareFontShape{T1}{yes}{bx}{scsl}{<->ssub * yes/b/scsl}{}
-\DeclareFontShape{T1}{yes}{b}{si}{<->ssub * yes/b/scsl}{}
-\DeclareFontShape{T1}{yes}{bx}{si}{<->ssub * yes/b/si}{}
-\DeclareFontShape{T1}{yes}{l}{it}{<->ssub * yes/l/sl}{}
-\DeclareFontShape{T1}{yes}{l}{si}{<->ssub * yes/l/scsl}{}
-\DeclareFontShape{T1}{yes}{sb}{it}{<->ssub * yes/sb/sl}{}
-\DeclareFontShape{T1}{yes}{sb}{si}{<->ssub * yes/sb/scsl}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/electrum/t1yesj.fd b/Master/texmf-dist/tex/latex/electrum/t1yesj.fd
deleted file mode 100644
index edaf2aa6fcd..00000000000
--- a/Master/texmf-dist/tex/latex/electrum/t1yesj.fd
+++ /dev/null
@@ -1,91 +0,0 @@
-%Filename: t1yesj.fd
-%Created by: tex yes-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{t1yesj.fd}
- [2010/07/19 Fontinst v1.933 font definitions for T1/yesj.]
-
-\DeclareFontFamily{T1}{yesj}{}
-
-\DeclareFontShape{T1}{yesj}{m}{n}{
- <-> yesrj8t
-}{}
-
-\DeclareFontShape{T1}{yesj}{m}{sc}{
- <-> yesrcj8t
-}{}
-
-\DeclareFontShape{T1}{yesj}{m}{sl}{
- <-> yesrjo8t
-}{}
-
-\DeclareFontShape{T1}{yesj}{m}{scsl}{
- <-> yesrcjo8t
-}{}
-
-\DeclareFontShape{T1}{yesj}{b}{n}{
- <-> yesbj8t
-}{}
-
-\DeclareFontShape{T1}{yesj}{b}{sc}{
- <-> yesbcj8t
-}{}
-
-\DeclareFontShape{T1}{yesj}{b}{sl}{
- <-> yesbjo8t
-}{}
-
-\DeclareFontShape{T1}{yesj}{b}{scsl}{
- <-> yesbcjo8t
-}{}
-
-\DeclareFontShape{T1}{yesj}{l}{n}{
- <-> yeslj8t
-}{}
-
-\DeclareFontShape{T1}{yesj}{l}{sc}{
- <-> yeslcj8t
-}{}
-
-\DeclareFontShape{T1}{yesj}{l}{sl}{
- <-> yesljo8t
-}{}
-
-\DeclareFontShape{T1}{yesj}{l}{scsl}{
- <-> yeslcjo8t
-}{}
-
-\DeclareFontShape{T1}{yesj}{sb}{n}{
- <-> yessj8t
-}{}
-
-\DeclareFontShape{T1}{yesj}{sb}{sc}{
- <-> yesscj8t
-}{}
-
-\DeclareFontShape{T1}{yesj}{sb}{sl}{
- <-> yessjo8t
-}{}
-
-\DeclareFontShape{T1}{yesj}{sb}{scsl}{
- <-> yesscjo8t
-}{}
-
-\DeclareFontShape{T1}{yesj}{m}{it}{<->ssub * yesj/m/sl}{}
-\DeclareFontShape{T1}{yesj}{m}{si}{<->ssub * yesj/m/scsl}{}
-\DeclareFontShape{T1}{yesj}{bx}{n}{<->ssub * yesj/b/n}{}
-\DeclareFontShape{T1}{yesj}{bx}{sc}{<->ssub * yesj/b/sc}{}
-\DeclareFontShape{T1}{yesj}{bx}{sl}{<->ssub * yesj/b/sl}{}
-\DeclareFontShape{T1}{yesj}{b}{it}{<->ssub * yesj/b/sl}{}
-\DeclareFontShape{T1}{yesj}{bx}{it}{<->ssub * yesj/b/it}{}
-\DeclareFontShape{T1}{yesj}{bx}{scsl}{<->ssub * yesj/b/scsl}{}
-\DeclareFontShape{T1}{yesj}{b}{si}{<->ssub * yesj/b/scsl}{}
-\DeclareFontShape{T1}{yesj}{bx}{si}{<->ssub * yesj/b/si}{}
-\DeclareFontShape{T1}{yesj}{l}{it}{<->ssub * yesj/l/sl}{}
-\DeclareFontShape{T1}{yesj}{l}{si}{<->ssub * yesj/l/scsl}{}
-\DeclareFontShape{T1}{yesj}{sb}{it}{<->ssub * yesj/sb/sl}{}
-\DeclareFontShape{T1}{yesj}{sb}{si}{<->ssub * yesj/sb/scsl}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/electrum/t1yesjw.fd b/Master/texmf-dist/tex/latex/electrum/t1yesjw.fd
deleted file mode 100644
index f06daea32ee..00000000000
--- a/Master/texmf-dist/tex/latex/electrum/t1yesjw.fd
+++ /dev/null
@@ -1,91 +0,0 @@
-%Filename: t1yesjw.fd
-%Created by: tex yes-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{t1yesjw.fd}
- [2010/07/19 Fontinst v1.933 font definitions for T1/yesjw.]
-
-\DeclareFontFamily{T1}{yesjw}{}
-
-\DeclareFontShape{T1}{yesjw}{m}{n}{
- <-> yesrjw8t
-}{}
-
-\DeclareFontShape{T1}{yesjw}{m}{sc}{
- <-> yesrcjw8t
-}{}
-
-\DeclareFontShape{T1}{yesjw}{m}{sl}{
- <-> yesrjow8t
-}{}
-
-\DeclareFontShape{T1}{yesjw}{m}{scsl}{
- <-> yesrcjow8t
-}{}
-
-\DeclareFontShape{T1}{yesjw}{b}{n}{
- <-> yesbjw8t
-}{}
-
-\DeclareFontShape{T1}{yesjw}{b}{sc}{
- <-> yesbcjw8t
-}{}
-
-\DeclareFontShape{T1}{yesjw}{b}{sl}{
- <-> yesbjow8t
-}{}
-
-\DeclareFontShape{T1}{yesjw}{b}{scsl}{
- <-> yesbcjow8t
-}{}
-
-\DeclareFontShape{T1}{yesjw}{l}{n}{
- <-> yesljw8t
-}{}
-
-\DeclareFontShape{T1}{yesjw}{l}{sc}{
- <-> yeslcjw8t
-}{}
-
-\DeclareFontShape{T1}{yesjw}{l}{sl}{
- <-> yesljow8t
-}{}
-
-\DeclareFontShape{T1}{yesjw}{l}{scsl}{
- <-> yeslcjow8t
-}{}
-
-\DeclareFontShape{T1}{yesjw}{sb}{n}{
- <-> yessjw8t
-}{}
-
-\DeclareFontShape{T1}{yesjw}{sb}{sc}{
- <-> yesscjw8t
-}{}
-
-\DeclareFontShape{T1}{yesjw}{sb}{sl}{
- <-> yessjow8t
-}{}
-
-\DeclareFontShape{T1}{yesjw}{sb}{scsl}{
- <-> yesscjow8t
-}{}
-
-\DeclareFontShape{T1}{yesjw}{m}{it}{<->ssub * yesjw/m/sl}{}
-\DeclareFontShape{T1}{yesjw}{m}{si}{<->ssub * yesjw/m/scsl}{}
-\DeclareFontShape{T1}{yesjw}{bx}{n}{<->ssub * yesjw/b/n}{}
-\DeclareFontShape{T1}{yesjw}{bx}{sc}{<->ssub * yesjw/b/sc}{}
-\DeclareFontShape{T1}{yesjw}{bx}{sl}{<->ssub * yesjw/b/sl}{}
-\DeclareFontShape{T1}{yesjw}{b}{it}{<->ssub * yesjw/b/sl}{}
-\DeclareFontShape{T1}{yesjw}{bx}{it}{<->ssub * yesjw/b/it}{}
-\DeclareFontShape{T1}{yesjw}{bx}{scsl}{<->ssub * yesjw/b/scsl}{}
-\DeclareFontShape{T1}{yesjw}{b}{si}{<->ssub * yesjw/b/scsl}{}
-\DeclareFontShape{T1}{yesjw}{bx}{si}{<->ssub * yesjw/b/si}{}
-\DeclareFontShape{T1}{yesjw}{l}{it}{<->ssub * yesjw/l/sl}{}
-\DeclareFontShape{T1}{yesjw}{l}{si}{<->ssub * yesjw/l/scsl}{}
-\DeclareFontShape{T1}{yesjw}{sb}{it}{<->ssub * yesjw/sb/sl}{}
-\DeclareFontShape{T1}{yesjw}{sb}{si}{<->ssub * yesjw/sb/scsl}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/electrum/t1yesw.fd b/Master/texmf-dist/tex/latex/electrum/t1yesw.fd
deleted file mode 100644
index ebfa31488f5..00000000000
--- a/Master/texmf-dist/tex/latex/electrum/t1yesw.fd
+++ /dev/null
@@ -1,91 +0,0 @@
-%Filename: t1yesw.fd
-%Created by: tex yes-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{t1yesw.fd}
- [2010/07/19 Fontinst v1.933 font definitions for T1/yesw.]
-
-\DeclareFontFamily{T1}{yesw}{}
-
-\DeclareFontShape{T1}{yesw}{m}{n}{
- <-> yesrw8t
-}{}
-
-\DeclareFontShape{T1}{yesw}{m}{sc}{
- <-> yesrcw8t
-}{}
-
-\DeclareFontShape{T1}{yesw}{m}{sl}{
- <-> yesrow8t
-}{}
-
-\DeclareFontShape{T1}{yesw}{m}{scsl}{
- <-> yesrcow8t
-}{}
-
-\DeclareFontShape{T1}{yesw}{b}{n}{
- <-> yesbw8t
-}{}
-
-\DeclareFontShape{T1}{yesw}{b}{sc}{
- <-> yesbcw8t
-}{}
-
-\DeclareFontShape{T1}{yesw}{b}{sl}{
- <-> yesbow8t
-}{}
-
-\DeclareFontShape{T1}{yesw}{b}{scsl}{
- <-> yesbcow8t
-}{}
-
-\DeclareFontShape{T1}{yesw}{l}{n}{
- <-> yeslw8t
-}{}
-
-\DeclareFontShape{T1}{yesw}{l}{sc}{
- <-> yeslcw8t
-}{}
-
-\DeclareFontShape{T1}{yesw}{l}{sl}{
- <-> yeslow8t
-}{}
-
-\DeclareFontShape{T1}{yesw}{l}{scsl}{
- <-> yeslcow8t
-}{}
-
-\DeclareFontShape{T1}{yesw}{sb}{n}{
- <-> yessw8t
-}{}
-
-\DeclareFontShape{T1}{yesw}{sb}{sc}{
- <-> yesscw8t
-}{}
-
-\DeclareFontShape{T1}{yesw}{sb}{sl}{
- <-> yessow8t
-}{}
-
-\DeclareFontShape{T1}{yesw}{sb}{scsl}{
- <-> yesscow8t
-}{}
-
-\DeclareFontShape{T1}{yesw}{m}{it}{<->ssub * yesw/m/sl}{}
-\DeclareFontShape{T1}{yesw}{m}{si}{<->ssub * yesw/m/scsl}{}
-\DeclareFontShape{T1}{yesw}{bx}{n}{<->ssub * yesw/b/n}{}
-\DeclareFontShape{T1}{yesw}{bx}{sc}{<->ssub * yesw/b/sc}{}
-\DeclareFontShape{T1}{yesw}{bx}{sl}{<->ssub * yesw/b/sl}{}
-\DeclareFontShape{T1}{yesw}{b}{it}{<->ssub * yesw/b/sl}{}
-\DeclareFontShape{T1}{yesw}{bx}{it}{<->ssub * yesw/b/it}{}
-\DeclareFontShape{T1}{yesw}{bx}{scsl}{<->ssub * yesw/b/scsl}{}
-\DeclareFontShape{T1}{yesw}{b}{si}{<->ssub * yesw/b/scsl}{}
-\DeclareFontShape{T1}{yesw}{bx}{si}{<->ssub * yesw/b/si}{}
-\DeclareFontShape{T1}{yesw}{l}{it}{<->ssub * yesw/l/sl}{}
-\DeclareFontShape{T1}{yesw}{l}{si}{<->ssub * yesw/l/scsl}{}
-\DeclareFontShape{T1}{yesw}{sb}{it}{<->ssub * yesw/sb/sl}{}
-\DeclareFontShape{T1}{yesw}{sb}{si}{<->ssub * yesw/sb/scsl}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/electrum/ts1yes.fd b/Master/texmf-dist/tex/latex/electrum/ts1yes.fd
deleted file mode 100644
index fa1ba42cb4d..00000000000
--- a/Master/texmf-dist/tex/latex/electrum/ts1yes.fd
+++ /dev/null
@@ -1,67 +0,0 @@
-%Filename: ts1yes.fd
-%Created by: tex yes-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{ts1yes.fd}
- [2010/07/19 Fontinst v1.933 font definitions for TS1/yes.]
-
-\DeclareFontFamily{TS1}{yes}{}
-
-\DeclareFontShape{TS1}{yes}{m}{n}{
- <-> yesr8c
-}{}
-
-\DeclareFontShape{TS1}{yes}{m}{sl}{
- <-> yesro8c
-}{}
-
-\DeclareFontShape{TS1}{yes}{b}{n}{
- <-> yesb8c
-}{}
-
-\DeclareFontShape{TS1}{yes}{b}{sl}{
- <-> yesbo8c
-}{}
-
-\DeclareFontShape{TS1}{yes}{l}{n}{
- <-> yesl8c
-}{}
-
-\DeclareFontShape{TS1}{yes}{l}{sl}{
- <-> yeslo8c
-}{}
-
-\DeclareFontShape{TS1}{yes}{sb}{n}{
- <-> yess8c
-}{}
-
-\DeclareFontShape{TS1}{yes}{sb}{sl}{
- <-> yesso8c
-}{}
-
-\DeclareFontShape{TS1}{yes}{m}{sc}{<->ssub * yes/m/n}{}
-\DeclareFontShape{TS1}{yes}{m}{it}{<->ssub * yes/m/sl}{}
-\DeclareFontShape{TS1}{yes}{m}{scsl}{<->ssub * yes/m/it}{}
-\DeclareFontShape{TS1}{yes}{m}{si}{<->ssub * yes/m/scsl}{}
-\DeclareFontShape{TS1}{yes}{bx}{n}{<->ssub * yes/b/n}{}
-\DeclareFontShape{TS1}{yes}{b}{sc}{<->ssub * yes/b/n}{}
-\DeclareFontShape{TS1}{yes}{bx}{sc}{<->ssub * yes/b/sc}{}
-\DeclareFontShape{TS1}{yes}{bx}{sl}{<->ssub * yes/b/sl}{}
-\DeclareFontShape{TS1}{yes}{b}{it}{<->ssub * yes/b/sl}{}
-\DeclareFontShape{TS1}{yes}{bx}{it}{<->ssub * yes/b/it}{}
-\DeclareFontShape{TS1}{yes}{b}{scsl}{<->ssub * yes/b/it}{}
-\DeclareFontShape{TS1}{yes}{bx}{scsl}{<->ssub * yes/b/scsl}{}
-\DeclareFontShape{TS1}{yes}{b}{si}{<->ssub * yes/b/scsl}{}
-\DeclareFontShape{TS1}{yes}{bx}{si}{<->ssub * yes/b/si}{}
-\DeclareFontShape{TS1}{yes}{l}{sc}{<->ssub * yes/l/n}{}
-\DeclareFontShape{TS1}{yes}{l}{it}{<->ssub * yes/l/sl}{}
-\DeclareFontShape{TS1}{yes}{l}{scsl}{<->ssub * yes/l/it}{}
-\DeclareFontShape{TS1}{yes}{l}{si}{<->ssub * yes/l/scsl}{}
-\DeclareFontShape{TS1}{yes}{sb}{sc}{<->ssub * yes/sb/n}{}
-\DeclareFontShape{TS1}{yes}{sb}{it}{<->ssub * yes/sb/sl}{}
-\DeclareFontShape{TS1}{yes}{sb}{scsl}{<->ssub * yes/sb/it}{}
-\DeclareFontShape{TS1}{yes}{sb}{si}{<->ssub * yes/sb/scsl}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/electrum/ts1yesj.fd b/Master/texmf-dist/tex/latex/electrum/ts1yesj.fd
deleted file mode 100644
index a8e052c56dd..00000000000
--- a/Master/texmf-dist/tex/latex/electrum/ts1yesj.fd
+++ /dev/null
@@ -1,67 +0,0 @@
-%Filename: ts1yesj.fd
-%Created by: tex yes-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{ts1yesj.fd}
- [2010/07/19 Fontinst v1.933 font definitions for TS1/yesj.]
-
-\DeclareFontFamily{TS1}{yesj}{}
-
-\DeclareFontShape{TS1}{yesj}{m}{n}{
- <-> yesrj8c
-}{}
-
-\DeclareFontShape{TS1}{yesj}{m}{sl}{
- <-> yesrjo8c
-}{}
-
-\DeclareFontShape{TS1}{yesj}{b}{n}{
- <-> yesbj8c
-}{}
-
-\DeclareFontShape{TS1}{yesj}{b}{sl}{
- <-> yesbjo8c
-}{}
-
-\DeclareFontShape{TS1}{yesj}{l}{n}{
- <-> yeslj8c
-}{}
-
-\DeclareFontShape{TS1}{yesj}{l}{sl}{
- <-> yesljo8c
-}{}
-
-\DeclareFontShape{TS1}{yesj}{sb}{n}{
- <-> yessj8c
-}{}
-
-\DeclareFontShape{TS1}{yesj}{sb}{sl}{
- <-> yessjo8c
-}{}
-
-\DeclareFontShape{TS1}{yesj}{m}{sc}{<->ssub * yesj/m/n}{}
-\DeclareFontShape{TS1}{yesj}{m}{it}{<->ssub * yesj/m/sl}{}
-\DeclareFontShape{TS1}{yesj}{m}{scsl}{<->ssub * yesj/m/it}{}
-\DeclareFontShape{TS1}{yesj}{m}{si}{<->ssub * yesj/m/scsl}{}
-\DeclareFontShape{TS1}{yesj}{bx}{n}{<->ssub * yesj/b/n}{}
-\DeclareFontShape{TS1}{yesj}{b}{sc}{<->ssub * yesj/b/n}{}
-\DeclareFontShape{TS1}{yesj}{bx}{sc}{<->ssub * yesj/b/sc}{}
-\DeclareFontShape{TS1}{yesj}{bx}{sl}{<->ssub * yesj/b/sl}{}
-\DeclareFontShape{TS1}{yesj}{b}{it}{<->ssub * yesj/b/sl}{}
-\DeclareFontShape{TS1}{yesj}{bx}{it}{<->ssub * yesj/b/it}{}
-\DeclareFontShape{TS1}{yesj}{b}{scsl}{<->ssub * yesj/b/it}{}
-\DeclareFontShape{TS1}{yesj}{bx}{scsl}{<->ssub * yesj/b/scsl}{}
-\DeclareFontShape{TS1}{yesj}{b}{si}{<->ssub * yesj/b/scsl}{}
-\DeclareFontShape{TS1}{yesj}{bx}{si}{<->ssub * yesj/b/si}{}
-\DeclareFontShape{TS1}{yesj}{l}{sc}{<->ssub * yesj/l/n}{}
-\DeclareFontShape{TS1}{yesj}{l}{it}{<->ssub * yesj/l/sl}{}
-\DeclareFontShape{TS1}{yesj}{l}{scsl}{<->ssub * yesj/l/it}{}
-\DeclareFontShape{TS1}{yesj}{l}{si}{<->ssub * yesj/l/scsl}{}
-\DeclareFontShape{TS1}{yesj}{sb}{sc}{<->ssub * yesj/sb/n}{}
-\DeclareFontShape{TS1}{yesj}{sb}{it}{<->ssub * yesj/sb/sl}{}
-\DeclareFontShape{TS1}{yesj}{sb}{scsl}{<->ssub * yesj/sb/it}{}
-\DeclareFontShape{TS1}{yesj}{sb}{si}{<->ssub * yesj/sb/scsl}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/electrum/ts1yesjw.fd b/Master/texmf-dist/tex/latex/electrum/ts1yesjw.fd
deleted file mode 100644
index 1596cf734e2..00000000000
--- a/Master/texmf-dist/tex/latex/electrum/ts1yesjw.fd
+++ /dev/null
@@ -1,67 +0,0 @@
-%Filename: ts1yesjw.fd
-%Created by: tex yes-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{ts1yesjw.fd}
- [2010/07/19 Fontinst v1.933 font definitions for TS1/yesjw.]
-
-\DeclareFontFamily{TS1}{yesjw}{}
-
-\DeclareFontShape{TS1}{yesjw}{m}{n}{
- <-> yesrj8c
-}{}
-
-\DeclareFontShape{TS1}{yesjw}{m}{sl}{
- <-> yesrjo8c
-}{}
-
-\DeclareFontShape{TS1}{yesjw}{b}{n}{
- <-> yesbj8c
-}{}
-
-\DeclareFontShape{TS1}{yesjw}{b}{sl}{
- <-> yesbjo8c
-}{}
-
-\DeclareFontShape{TS1}{yesjw}{l}{n}{
- <-> yeslj8c
-}{}
-
-\DeclareFontShape{TS1}{yesjw}{l}{sl}{
- <-> yesljo8c
-}{}
-
-\DeclareFontShape{TS1}{yesjw}{sb}{n}{
- <-> yessj8c
-}{}
-
-\DeclareFontShape{TS1}{yesjw}{sb}{sl}{
- <-> yessjo8c
-}{}
-
-\DeclareFontShape{TS1}{yesjw}{m}{sc}{<->ssub * yesjw/m/n}{}
-\DeclareFontShape{TS1}{yesjw}{m}{it}{<->ssub * yesjw/m/sl}{}
-\DeclareFontShape{TS1}{yesjw}{m}{scsl}{<->ssub * yesjw/m/it}{}
-\DeclareFontShape{TS1}{yesjw}{m}{si}{<->ssub * yesjw/m/scsl}{}
-\DeclareFontShape{TS1}{yesjw}{bx}{n}{<->ssub * yesjw/b/n}{}
-\DeclareFontShape{TS1}{yesjw}{b}{sc}{<->ssub * yesjw/b/n}{}
-\DeclareFontShape{TS1}{yesjw}{bx}{sc}{<->ssub * yesjw/b/sc}{}
-\DeclareFontShape{TS1}{yesjw}{bx}{sl}{<->ssub * yesjw/b/sl}{}
-\DeclareFontShape{TS1}{yesjw}{b}{it}{<->ssub * yesjw/b/sl}{}
-\DeclareFontShape{TS1}{yesjw}{bx}{it}{<->ssub * yesjw/b/it}{}
-\DeclareFontShape{TS1}{yesjw}{b}{scsl}{<->ssub * yesjw/b/it}{}
-\DeclareFontShape{TS1}{yesjw}{bx}{scsl}{<->ssub * yesjw/b/scsl}{}
-\DeclareFontShape{TS1}{yesjw}{b}{si}{<->ssub * yesjw/b/scsl}{}
-\DeclareFontShape{TS1}{yesjw}{bx}{si}{<->ssub * yesjw/b/si}{}
-\DeclareFontShape{TS1}{yesjw}{l}{sc}{<->ssub * yesjw/l/n}{}
-\DeclareFontShape{TS1}{yesjw}{l}{it}{<->ssub * yesjw/l/sl}{}
-\DeclareFontShape{TS1}{yesjw}{l}{scsl}{<->ssub * yesjw/l/it}{}
-\DeclareFontShape{TS1}{yesjw}{l}{si}{<->ssub * yesjw/l/scsl}{}
-\DeclareFontShape{TS1}{yesjw}{sb}{sc}{<->ssub * yesjw/sb/n}{}
-\DeclareFontShape{TS1}{yesjw}{sb}{it}{<->ssub * yesjw/sb/sl}{}
-\DeclareFontShape{TS1}{yesjw}{sb}{scsl}{<->ssub * yesjw/sb/it}{}
-\DeclareFontShape{TS1}{yesjw}{sb}{si}{<->ssub * yesjw/sb/scsl}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/electrum/ts1yesw.fd b/Master/texmf-dist/tex/latex/electrum/ts1yesw.fd
deleted file mode 100644
index 451ae08250e..00000000000
--- a/Master/texmf-dist/tex/latex/electrum/ts1yesw.fd
+++ /dev/null
@@ -1,67 +0,0 @@
-%Filename: ts1yesw.fd
-%Created by: tex yes-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{ts1yesw.fd}
- [2010/07/19 Fontinst v1.933 font definitions for TS1/yesw.]
-
-\DeclareFontFamily{TS1}{yesw}{}
-
-\DeclareFontShape{TS1}{yesw}{m}{n}{
- <-> yesr8c
-}{}
-
-\DeclareFontShape{TS1}{yesw}{m}{sl}{
- <-> yesro8c
-}{}
-
-\DeclareFontShape{TS1}{yesw}{b}{n}{
- <-> yesb8c
-}{}
-
-\DeclareFontShape{TS1}{yesw}{b}{sl}{
- <-> yesbo8c
-}{}
-
-\DeclareFontShape{TS1}{yesw}{l}{n}{
- <-> yesl8c
-}{}
-
-\DeclareFontShape{TS1}{yesw}{l}{sl}{
- <-> yeslo8c
-}{}
-
-\DeclareFontShape{TS1}{yesw}{sb}{n}{
- <-> yess8c
-}{}
-
-\DeclareFontShape{TS1}{yesw}{sb}{sl}{
- <-> yesso8c
-}{}
-
-\DeclareFontShape{TS1}{yesw}{m}{sc}{<->ssub * yesw/m/n}{}
-\DeclareFontShape{TS1}{yesw}{m}{it}{<->ssub * yesw/m/sl}{}
-\DeclareFontShape{TS1}{yesw}{m}{scsl}{<->ssub * yesw/m/it}{}
-\DeclareFontShape{TS1}{yesw}{m}{si}{<->ssub * yesw/m/scsl}{}
-\DeclareFontShape{TS1}{yesw}{bx}{n}{<->ssub * yesw/b/n}{}
-\DeclareFontShape{TS1}{yesw}{b}{sc}{<->ssub * yesw/b/n}{}
-\DeclareFontShape{TS1}{yesw}{bx}{sc}{<->ssub * yesw/b/sc}{}
-\DeclareFontShape{TS1}{yesw}{bx}{sl}{<->ssub * yesw/b/sl}{}
-\DeclareFontShape{TS1}{yesw}{b}{it}{<->ssub * yesw/b/sl}{}
-\DeclareFontShape{TS1}{yesw}{bx}{it}{<->ssub * yesw/b/it}{}
-\DeclareFontShape{TS1}{yesw}{b}{scsl}{<->ssub * yesw/b/it}{}
-\DeclareFontShape{TS1}{yesw}{bx}{scsl}{<->ssub * yesw/b/scsl}{}
-\DeclareFontShape{TS1}{yesw}{b}{si}{<->ssub * yesw/b/scsl}{}
-\DeclareFontShape{TS1}{yesw}{bx}{si}{<->ssub * yesw/b/si}{}
-\DeclareFontShape{TS1}{yesw}{l}{sc}{<->ssub * yesw/l/n}{}
-\DeclareFontShape{TS1}{yesw}{l}{it}{<->ssub * yesw/l/sl}{}
-\DeclareFontShape{TS1}{yesw}{l}{scsl}{<->ssub * yesw/l/it}{}
-\DeclareFontShape{TS1}{yesw}{l}{si}{<->ssub * yesw/l/scsl}{}
-\DeclareFontShape{TS1}{yesw}{sb}{sc}{<->ssub * yesw/sb/n}{}
-\DeclareFontShape{TS1}{yesw}{sb}{it}{<->ssub * yesw/sb/sl}{}
-\DeclareFontShape{TS1}{yesw}{sb}{scsl}{<->ssub * yesw/sb/it}{}
-\DeclareFontShape{TS1}{yesw}{sb}{si}{<->ssub * yesw/sb/scsl}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/electrumadf/electrum.sty b/Master/texmf-dist/tex/latex/electrumadf/electrum.sty
new file mode 100644
index 00000000000..c6e89eb01d0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/electrumadf/electrum.sty
@@ -0,0 +1,100 @@
+%%
+%% This is file `electrum.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% electrumadf.dtx (with options: `sty')
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% electrumadf. You may however distribute the package electrumadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% ateb Heiko Oberdiek: https://tex.stackexchange.com/a/172896/
+%% dyw hwn ddim yn gweithio tu mewn i arg macro!
+%% (*wrth gwrs* dyw e ddim yn weithio! wyt ti'n *hollol* dwp?)
+\NeedsTeXFormat{LaTeX2e}
+\RequirePackage{svn-prov}
+\ProvidesPackageSVN[electrum.sty]{$Id: electrumadf.dtx 10402 2024-09-27 02:35:48Z cfrees $}[v1.1 \revinfo]
+\DefineFileInfoSVN[electrum]
+\RequirePackage[T1]{fontenc}
+\RequirePackage{nfssext-cfr}[2024/01/01]
+\IfFormatAtLeastTF {2020-02-02}{%
+ \DeclareEncodingSubset{TS1}{yes}{1}%
+ \DeclareEncodingSubset{TS1}{yesj}{1}%
+ \DeclareEncodingSubset{TS1}{yesw}{1}%
+ \DeclareEncodingSubset{TS1}{yesjw}{1}%
+ \DeclareEncodingSubset{TS1}{yes0}{1}%
+ \DeclareEncodingSubset{TS1}{yes1}{1}%
+}{%
+ \RequirePackage{textcomp}}
+\UndeclareTextCommand{\textperthousand}{T1}
+\ExplSyntaxOn
+\keys_define:nn { electrum }
+{
+ lig .bool_set:N = \g__electrum_lig_bool,
+ lig .default:n = true,
+ lig .initial:n = false,
+ lf .bool_set_inverse:N = \g__electrum_osf_bool,
+ lf .default:n = true,
+ osf .bool_set:N = \g__electrum_osf_bool,
+ osf .default:n = true,
+ osf .initial:n = true,
+ scale .tl_set:N = \yes@scale,
+ scale .initial:V = \@empty,
+}
+\ProcessKeyOptions[electrum]
+\tl_new:N \g__electrum_rm_tl
+\tl_gset:Nn \g__electrum_rm_tl {yes}
+\bool_if:NT \g__electrum_osf_bool
+{
+ \tl_gput_right:Nn \g__electrum_rm_tl {j}
+}
+\bool_if:NT \g__electrum_lig_bool
+{
+ \tl_gput_right:Nn \g__electrum_rm_tl {w}
+}
+\renewcommand{\rmdefault}{\g__electrum_rm_tl}
+\cs_if_exist:NF \infstyle
+{
+ \hook_gput_code:nnn { begindocument } { . }
+ {
+ \PackageWarning{electrum}
+ {electrum ~ requires ~ updated ~ nfssext-cfr ~ for ~ compatibility ~ with ~ hyperref}
+ \@ifpackageloaded{hyperref}{
+ \hook_gput_code:nnn { cmd/textin/before } { . }
+ {
+ \PackageWarning{electrum}{Note ~ that ~ '\protect\textin' ~ is ~ defined ~ by ~ hyperref.\MessageBreak
+ Use ~ for ~ inferior ~ digits ~ will ~ yield ~ an\MessageBreak
+ undefined ~ command ~ error ~ with ~ document ~ font ~ encodings.\MessageBreak
+ Use ~ '\protect\textinf' ~ to ~ access ~ inferior ~ digits}
+ }
+ \let\infstyle\instyle
+ \DeclareTextFontCommand{\textinf}{\infstyle}
+ }{}
+ }
+}
+\ExplSyntaxOff
+%% paid â chynnwys \endinput - docstrip yn chwilio amddo fe yn arbennigol
+%% & bydd doctrip yn ei ychwanegu fe beth bynnag
+%% (Martin Scharrer: https://tex.stackexchange.com/a/28997/)
+%% end electrum.sty
+\endinput
+%%
+%% End of file `electrum.sty'.
diff --git a/Master/texmf-dist/tex/latex/electrumadf/t1yes.fd b/Master/texmf-dist/tex/latex/electrumadf/t1yes.fd
new file mode 100644
index 00000000000..042409f642e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/electrumadf/t1yes.fd
@@ -0,0 +1,103 @@
+%Filename: t1yes.fd
+%Created by: tex yes-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{t1yes.fd}
+ [2024/07/21 Fontinst v1.933 font definitions for T1/yes.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yes@scale\endcsname\relax
+ \let\yes@@scale\@empty
+\else
+ \edef\yes@@scale{s*[\csname yes@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{yes}{}
+
+\DeclareFontShape{T1}{yes}{m}{n}{
+ <-> \yes@@scale yesr8t
+}{}
+
+\DeclareFontShape{T1}{yes}{m}{sc}{
+ <-> \yes@@scale yesrc8t
+}{}
+
+\DeclareFontShape{T1}{yes}{m}{sl}{
+ <-> \yes@@scale yesro8t
+}{}
+
+\DeclareFontShape{T1}{yes}{m}{scit}{
+ <-> \yes@@scale yesrco8t
+}{}
+
+\DeclareFontShape{T1}{yes}{b}{n}{
+ <-> \yes@@scale yesb8t
+}{}
+
+\DeclareFontShape{T1}{yes}{b}{sc}{
+ <-> \yes@@scale yesbc8t
+}{}
+
+\DeclareFontShape{T1}{yes}{b}{sl}{
+ <-> \yes@@scale yesbo8t
+}{}
+
+\DeclareFontShape{T1}{yes}{b}{scit}{
+ <-> \yes@@scale yesbco8t
+}{}
+
+\DeclareFontShape{T1}{yes}{l}{n}{
+ <-> \yes@@scale yesl8t
+}{}
+
+\DeclareFontShape{T1}{yes}{l}{sc}{
+ <-> \yes@@scale yeslc8t
+}{}
+
+\DeclareFontShape{T1}{yes}{l}{sl}{
+ <-> \yes@@scale yeslo8t
+}{}
+
+\DeclareFontShape{T1}{yes}{l}{scit}{
+ <-> \yes@@scale yeslco8t
+}{}
+
+\DeclareFontShape{T1}{yes}{sb}{n}{
+ <-> \yes@@scale yess8t
+}{}
+
+\DeclareFontShape{T1}{yes}{sb}{sc}{
+ <-> \yes@@scale yessc8t
+}{}
+
+\DeclareFontShape{T1}{yes}{sb}{sl}{
+ <-> \yes@@scale yesso8t
+}{}
+
+\DeclareFontShape{T1}{yes}{sb}{scit}{
+ <-> \yes@@scale yessco8t
+}{}
+
+\DeclareFontShape{T1}{yes}{m}{it}{<->ssub * yes/m/sl}{}
+\DeclareFontShape{T1}{yes}{m}{si}{<->ssub * yes/m/scit}{}
+\DeclareFontShape{T1}{yes}{m}{scsl}{<->ssub * yes/m/si}{}
+\DeclareFontShape{T1}{yes}{bx}{n}{<->ssub * yes/b/n}{}
+\DeclareFontShape{T1}{yes}{bx}{sc}{<->ssub * yes/b/sc}{}
+\DeclareFontShape{T1}{yes}{bx}{sl}{<->ssub * yes/b/sl}{}
+\DeclareFontShape{T1}{yes}{b}{it}{<->ssub * yes/b/sl}{}
+\DeclareFontShape{T1}{yes}{bx}{it}{<->ssub * yes/b/it}{}
+\DeclareFontShape{T1}{yes}{bx}{scit}{<->ssub * yes/b/scit}{}
+\DeclareFontShape{T1}{yes}{b}{si}{<->ssub * yes/b/scit}{}
+\DeclareFontShape{T1}{yes}{bx}{si}{<->ssub * yes/b/si}{}
+\DeclareFontShape{T1}{yes}{b}{scsl}{<->ssub * yes/b/si}{}
+\DeclareFontShape{T1}{yes}{bx}{scsl}{<->ssub * yes/b/scsl}{}
+\DeclareFontShape{T1}{yes}{l}{it}{<->ssub * yes/l/sl}{}
+\DeclareFontShape{T1}{yes}{l}{si}{<->ssub * yes/l/scit}{}
+\DeclareFontShape{T1}{yes}{l}{scsl}{<->ssub * yes/l/si}{}
+\DeclareFontShape{T1}{yes}{sb}{it}{<->ssub * yes/sb/sl}{}
+\DeclareFontShape{T1}{yes}{sb}{si}{<->ssub * yes/sb/scit}{}
+\DeclareFontShape{T1}{yes}{sb}{scsl}{<->ssub * yes/sb/si}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/electrum/t1yes0.fd b/Master/texmf-dist/tex/latex/electrumadf/t1yes0.fd
index a94370d0267..161fa06ceac 100644
--- a/Master/texmf-dist/tex/latex/electrum/t1yes0.fd
+++ b/Master/texmf-dist/tex/latex/electrumadf/t1yes0.fd
@@ -5,63 +5,60 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1yes0.fd}
- [2010/07/19 Fontinst v1.933 font definitions for T1/yes0.]
+ [2024/07/21 Fontinst v1.933 font definitions for T1/yes0.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yes@scale\endcsname\relax
+ \let\yes@@scale\@empty
+\else
+ \edef\yes@@scale{s*[\csname yes@scale\endcsname]}%
+\fi
\DeclareFontFamily{T1}{yes0}{}
\DeclareFontShape{T1}{yes0}{m}{n}{
- <-> yesr08t
+ <-> \yes@@scale yesr08t
}{}
\DeclareFontShape{T1}{yes0}{m}{sl}{
- <-> yesr0o8t
+ <-> \yes@@scale yesr0o8t
}{}
\DeclareFontShape{T1}{yes0}{b}{n}{
- <-> yesb08t
+ <-> \yes@@scale yesb08t
}{}
\DeclareFontShape{T1}{yes0}{b}{sl}{
- <-> yesb0o8t
+ <-> \yes@@scale yesb0o8t
}{}
\DeclareFontShape{T1}{yes0}{l}{n}{
- <-> yesl08t
+ <-> \yes@@scale yesl08t
}{}
\DeclareFontShape{T1}{yes0}{l}{sl}{
- <-> yesl0o8t
+ <-> \yes@@scale yesl0o8t
}{}
\DeclareFontShape{T1}{yes0}{sb}{n}{
- <-> yess08t
+ <-> \yes@@scale yess08t
}{}
\DeclareFontShape{T1}{yes0}{sb}{sl}{
- <-> yess0o8t
+ <-> \yes@@scale yess0o8t
}{}
\DeclareFontShape{T1}{yes0}{m}{sc}{<->ssub * yes0/m/n}{}
\DeclareFontShape{T1}{yes0}{m}{it}{<->ssub * yes0/m/sl}{}
-\DeclareFontShape{T1}{yes0}{m}{scsl}{<->ssub * yes0/m/it}{}
-\DeclareFontShape{T1}{yes0}{m}{si}{<->ssub * yes0/m/scsl}{}
\DeclareFontShape{T1}{yes0}{bx}{n}{<->ssub * yes0/b/n}{}
\DeclareFontShape{T1}{yes0}{b}{sc}{<->ssub * yes0/b/n}{}
\DeclareFontShape{T1}{yes0}{bx}{sc}{<->ssub * yes0/b/sc}{}
\DeclareFontShape{T1}{yes0}{bx}{sl}{<->ssub * yes0/b/sl}{}
\DeclareFontShape{T1}{yes0}{b}{it}{<->ssub * yes0/b/sl}{}
\DeclareFontShape{T1}{yes0}{bx}{it}{<->ssub * yes0/b/it}{}
-\DeclareFontShape{T1}{yes0}{b}{scsl}{<->ssub * yes0/b/it}{}
-\DeclareFontShape{T1}{yes0}{bx}{scsl}{<->ssub * yes0/b/scsl}{}
-\DeclareFontShape{T1}{yes0}{b}{si}{<->ssub * yes0/b/scsl}{}
-\DeclareFontShape{T1}{yes0}{bx}{si}{<->ssub * yes0/b/si}{}
\DeclareFontShape{T1}{yes0}{l}{sc}{<->ssub * yes0/l/n}{}
\DeclareFontShape{T1}{yes0}{l}{it}{<->ssub * yes0/l/sl}{}
-\DeclareFontShape{T1}{yes0}{l}{scsl}{<->ssub * yes0/l/it}{}
-\DeclareFontShape{T1}{yes0}{l}{si}{<->ssub * yes0/l/scsl}{}
\DeclareFontShape{T1}{yes0}{sb}{sc}{<->ssub * yes0/sb/n}{}
\DeclareFontShape{T1}{yes0}{sb}{it}{<->ssub * yes0/sb/sl}{}
-\DeclareFontShape{T1}{yes0}{sb}{scsl}{<->ssub * yes0/sb/it}{}
-\DeclareFontShape{T1}{yes0}{sb}{si}{<->ssub * yes0/sb/scsl}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/electrum/t1yes1.fd b/Master/texmf-dist/tex/latex/electrumadf/t1yes1.fd
index 004c444799d..db7e7617b7d 100644
--- a/Master/texmf-dist/tex/latex/electrum/t1yes1.fd
+++ b/Master/texmf-dist/tex/latex/electrumadf/t1yes1.fd
@@ -5,63 +5,60 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1yes1.fd}
- [2010/07/19 Fontinst v1.933 font definitions for T1/yes1.]
+ [2024/07/21 Fontinst v1.933 font definitions for T1/yes1.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yes@scale\endcsname\relax
+ \let\yes@@scale\@empty
+\else
+ \edef\yes@@scale{s*[\csname yes@scale\endcsname]}%
+\fi
\DeclareFontFamily{T1}{yes1}{}
\DeclareFontShape{T1}{yes1}{m}{n}{
- <-> yesr18t
+ <-> \yes@@scale yesr18t
}{}
\DeclareFontShape{T1}{yes1}{m}{sl}{
- <-> yesr1o8t
+ <-> \yes@@scale yesr1o8t
}{}
\DeclareFontShape{T1}{yes1}{b}{n}{
- <-> yesb18t
+ <-> \yes@@scale yesb18t
}{}
\DeclareFontShape{T1}{yes1}{b}{sl}{
- <-> yesb1o8t
+ <-> \yes@@scale yesb1o8t
}{}
\DeclareFontShape{T1}{yes1}{l}{n}{
- <-> yesl18t
+ <-> \yes@@scale yesl18t
}{}
\DeclareFontShape{T1}{yes1}{l}{sl}{
- <-> yesl1o8t
+ <-> \yes@@scale yesl1o8t
}{}
\DeclareFontShape{T1}{yes1}{sb}{n}{
- <-> yess18t
+ <-> \yes@@scale yess18t
}{}
\DeclareFontShape{T1}{yes1}{sb}{sl}{
- <-> yess1o8t
+ <-> \yes@@scale yess1o8t
}{}
\DeclareFontShape{T1}{yes1}{m}{sc}{<->ssub * yes1/m/n}{}
\DeclareFontShape{T1}{yes1}{m}{it}{<->ssub * yes1/m/sl}{}
-\DeclareFontShape{T1}{yes1}{m}{scsl}{<->ssub * yes1/m/it}{}
-\DeclareFontShape{T1}{yes1}{m}{si}{<->ssub * yes1/m/scsl}{}
\DeclareFontShape{T1}{yes1}{bx}{n}{<->ssub * yes1/b/n}{}
\DeclareFontShape{T1}{yes1}{b}{sc}{<->ssub * yes1/b/n}{}
\DeclareFontShape{T1}{yes1}{bx}{sc}{<->ssub * yes1/b/sc}{}
\DeclareFontShape{T1}{yes1}{bx}{sl}{<->ssub * yes1/b/sl}{}
\DeclareFontShape{T1}{yes1}{b}{it}{<->ssub * yes1/b/sl}{}
\DeclareFontShape{T1}{yes1}{bx}{it}{<->ssub * yes1/b/it}{}
-\DeclareFontShape{T1}{yes1}{b}{scsl}{<->ssub * yes1/b/it}{}
-\DeclareFontShape{T1}{yes1}{bx}{scsl}{<->ssub * yes1/b/scsl}{}
-\DeclareFontShape{T1}{yes1}{b}{si}{<->ssub * yes1/b/scsl}{}
-\DeclareFontShape{T1}{yes1}{bx}{si}{<->ssub * yes1/b/si}{}
\DeclareFontShape{T1}{yes1}{l}{sc}{<->ssub * yes1/l/n}{}
\DeclareFontShape{T1}{yes1}{l}{it}{<->ssub * yes1/l/sl}{}
-\DeclareFontShape{T1}{yes1}{l}{scsl}{<->ssub * yes1/l/it}{}
-\DeclareFontShape{T1}{yes1}{l}{si}{<->ssub * yes1/l/scsl}{}
\DeclareFontShape{T1}{yes1}{sb}{sc}{<->ssub * yes1/sb/n}{}
\DeclareFontShape{T1}{yes1}{sb}{it}{<->ssub * yes1/sb/sl}{}
-\DeclareFontShape{T1}{yes1}{sb}{scsl}{<->ssub * yes1/sb/it}{}
-\DeclareFontShape{T1}{yes1}{sb}{si}{<->ssub * yes1/sb/scsl}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/electrumadf/t1yesj.fd b/Master/texmf-dist/tex/latex/electrumadf/t1yesj.fd
new file mode 100644
index 00000000000..05552e2a270
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/electrumadf/t1yesj.fd
@@ -0,0 +1,103 @@
+%Filename: t1yesj.fd
+%Created by: tex yes-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{t1yesj.fd}
+ [2024/07/21 Fontinst v1.933 font definitions for T1/yesj.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yes@scale\endcsname\relax
+ \let\yes@@scale\@empty
+\else
+ \edef\yes@@scale{s*[\csname yes@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{yesj}{}
+
+\DeclareFontShape{T1}{yesj}{m}{n}{
+ <-> \yes@@scale yesrj8t
+}{}
+
+\DeclareFontShape{T1}{yesj}{m}{sc}{
+ <-> \yes@@scale yesrcj8t
+}{}
+
+\DeclareFontShape{T1}{yesj}{m}{sl}{
+ <-> \yes@@scale yesrjo8t
+}{}
+
+\DeclareFontShape{T1}{yesj}{m}{scit}{
+ <-> \yes@@scale yesrcjo8t
+}{}
+
+\DeclareFontShape{T1}{yesj}{b}{n}{
+ <-> \yes@@scale yesbj8t
+}{}
+
+\DeclareFontShape{T1}{yesj}{b}{sc}{
+ <-> \yes@@scale yesbcj8t
+}{}
+
+\DeclareFontShape{T1}{yesj}{b}{sl}{
+ <-> \yes@@scale yesbjo8t
+}{}
+
+\DeclareFontShape{T1}{yesj}{b}{scit}{
+ <-> \yes@@scale yesbcjo8t
+}{}
+
+\DeclareFontShape{T1}{yesj}{l}{n}{
+ <-> \yes@@scale yeslj8t
+}{}
+
+\DeclareFontShape{T1}{yesj}{l}{sc}{
+ <-> \yes@@scale yeslcj8t
+}{}
+
+\DeclareFontShape{T1}{yesj}{l}{sl}{
+ <-> \yes@@scale yesljo8t
+}{}
+
+\DeclareFontShape{T1}{yesj}{l}{scit}{
+ <-> \yes@@scale yeslcjo8t
+}{}
+
+\DeclareFontShape{T1}{yesj}{sb}{n}{
+ <-> \yes@@scale yessj8t
+}{}
+
+\DeclareFontShape{T1}{yesj}{sb}{sc}{
+ <-> \yes@@scale yesscj8t
+}{}
+
+\DeclareFontShape{T1}{yesj}{sb}{sl}{
+ <-> \yes@@scale yessjo8t
+}{}
+
+\DeclareFontShape{T1}{yesj}{sb}{scit}{
+ <-> \yes@@scale yesscjo8t
+}{}
+
+\DeclareFontShape{T1}{yesj}{m}{it}{<->ssub * yesj/m/sl}{}
+\DeclareFontShape{T1}{yesj}{m}{si}{<->ssub * yesj/m/scit}{}
+\DeclareFontShape{T1}{yesj}{m}{scsl}{<->ssub * yesj/m/si}{}
+\DeclareFontShape{T1}{yesj}{bx}{n}{<->ssub * yesj/b/n}{}
+\DeclareFontShape{T1}{yesj}{bx}{sc}{<->ssub * yesj/b/sc}{}
+\DeclareFontShape{T1}{yesj}{bx}{sl}{<->ssub * yesj/b/sl}{}
+\DeclareFontShape{T1}{yesj}{b}{it}{<->ssub * yesj/b/sl}{}
+\DeclareFontShape{T1}{yesj}{bx}{it}{<->ssub * yesj/b/it}{}
+\DeclareFontShape{T1}{yesj}{bx}{scit}{<->ssub * yesj/b/scit}{}
+\DeclareFontShape{T1}{yesj}{b}{si}{<->ssub * yesj/b/scit}{}
+\DeclareFontShape{T1}{yesj}{bx}{si}{<->ssub * yesj/b/si}{}
+\DeclareFontShape{T1}{yesj}{b}{scsl}{<->ssub * yesj/b/si}{}
+\DeclareFontShape{T1}{yesj}{bx}{scsl}{<->ssub * yesj/b/scsl}{}
+\DeclareFontShape{T1}{yesj}{l}{it}{<->ssub * yesj/l/sl}{}
+\DeclareFontShape{T1}{yesj}{l}{si}{<->ssub * yesj/l/scit}{}
+\DeclareFontShape{T1}{yesj}{l}{scsl}{<->ssub * yesj/l/si}{}
+\DeclareFontShape{T1}{yesj}{sb}{it}{<->ssub * yesj/sb/sl}{}
+\DeclareFontShape{T1}{yesj}{sb}{si}{<->ssub * yesj/sb/scit}{}
+\DeclareFontShape{T1}{yesj}{sb}{scsl}{<->ssub * yesj/sb/si}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/electrumadf/t1yesjw.fd b/Master/texmf-dist/tex/latex/electrumadf/t1yesjw.fd
new file mode 100644
index 00000000000..ee84ee500d6
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/electrumadf/t1yesjw.fd
@@ -0,0 +1,103 @@
+%Filename: t1yesjw.fd
+%Created by: tex yes-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{t1yesjw.fd}
+ [2024/07/21 Fontinst v1.933 font definitions for T1/yesjw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yes@scale\endcsname\relax
+ \let\yes@@scale\@empty
+\else
+ \edef\yes@@scale{s*[\csname yes@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{yesjw}{}
+
+\DeclareFontShape{T1}{yesjw}{m}{n}{
+ <-> \yes@@scale yesrjw8t
+}{}
+
+\DeclareFontShape{T1}{yesjw}{m}{sc}{
+ <-> \yes@@scale yesrcjw8t
+}{}
+
+\DeclareFontShape{T1}{yesjw}{m}{sl}{
+ <-> \yes@@scale yesrjow8t
+}{}
+
+\DeclareFontShape{T1}{yesjw}{m}{scit}{
+ <-> \yes@@scale yesrcjow8t
+}{}
+
+\DeclareFontShape{T1}{yesjw}{b}{n}{
+ <-> \yes@@scale yesbjw8t
+}{}
+
+\DeclareFontShape{T1}{yesjw}{b}{sc}{
+ <-> \yes@@scale yesbcjw8t
+}{}
+
+\DeclareFontShape{T1}{yesjw}{b}{sl}{
+ <-> \yes@@scale yesbjow8t
+}{}
+
+\DeclareFontShape{T1}{yesjw}{b}{scit}{
+ <-> \yes@@scale yesbcjow8t
+}{}
+
+\DeclareFontShape{T1}{yesjw}{l}{n}{
+ <-> \yes@@scale yesljw8t
+}{}
+
+\DeclareFontShape{T1}{yesjw}{l}{sc}{
+ <-> \yes@@scale yeslcjw8t
+}{}
+
+\DeclareFontShape{T1}{yesjw}{l}{sl}{
+ <-> \yes@@scale yesljow8t
+}{}
+
+\DeclareFontShape{T1}{yesjw}{l}{scit}{
+ <-> \yes@@scale yeslcjow8t
+}{}
+
+\DeclareFontShape{T1}{yesjw}{sb}{n}{
+ <-> \yes@@scale yessjw8t
+}{}
+
+\DeclareFontShape{T1}{yesjw}{sb}{sc}{
+ <-> \yes@@scale yesscjw8t
+}{}
+
+\DeclareFontShape{T1}{yesjw}{sb}{sl}{
+ <-> \yes@@scale yessjow8t
+}{}
+
+\DeclareFontShape{T1}{yesjw}{sb}{scit}{
+ <-> \yes@@scale yesscjow8t
+}{}
+
+\DeclareFontShape{T1}{yesjw}{m}{it}{<->ssub * yesjw/m/sl}{}
+\DeclareFontShape{T1}{yesjw}{m}{si}{<->ssub * yesjw/m/scit}{}
+\DeclareFontShape{T1}{yesjw}{m}{scsl}{<->ssub * yesjw/m/si}{}
+\DeclareFontShape{T1}{yesjw}{bx}{n}{<->ssub * yesjw/b/n}{}
+\DeclareFontShape{T1}{yesjw}{bx}{sc}{<->ssub * yesjw/b/sc}{}
+\DeclareFontShape{T1}{yesjw}{bx}{sl}{<->ssub * yesjw/b/sl}{}
+\DeclareFontShape{T1}{yesjw}{b}{it}{<->ssub * yesjw/b/sl}{}
+\DeclareFontShape{T1}{yesjw}{bx}{it}{<->ssub * yesjw/b/it}{}
+\DeclareFontShape{T1}{yesjw}{bx}{scit}{<->ssub * yesjw/b/scit}{}
+\DeclareFontShape{T1}{yesjw}{b}{si}{<->ssub * yesjw/b/scit}{}
+\DeclareFontShape{T1}{yesjw}{bx}{si}{<->ssub * yesjw/b/si}{}
+\DeclareFontShape{T1}{yesjw}{b}{scsl}{<->ssub * yesjw/b/si}{}
+\DeclareFontShape{T1}{yesjw}{bx}{scsl}{<->ssub * yesjw/b/scsl}{}
+\DeclareFontShape{T1}{yesjw}{l}{it}{<->ssub * yesjw/l/sl}{}
+\DeclareFontShape{T1}{yesjw}{l}{si}{<->ssub * yesjw/l/scit}{}
+\DeclareFontShape{T1}{yesjw}{l}{scsl}{<->ssub * yesjw/l/si}{}
+\DeclareFontShape{T1}{yesjw}{sb}{it}{<->ssub * yesjw/sb/sl}{}
+\DeclareFontShape{T1}{yesjw}{sb}{si}{<->ssub * yesjw/sb/scit}{}
+\DeclareFontShape{T1}{yesjw}{sb}{scsl}{<->ssub * yesjw/sb/si}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/electrumadf/t1yesw.fd b/Master/texmf-dist/tex/latex/electrumadf/t1yesw.fd
new file mode 100644
index 00000000000..a82a7498bf3
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/electrumadf/t1yesw.fd
@@ -0,0 +1,103 @@
+%Filename: t1yesw.fd
+%Created by: tex yes-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{t1yesw.fd}
+ [2024/07/21 Fontinst v1.933 font definitions for T1/yesw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yes@scale\endcsname\relax
+ \let\yes@@scale\@empty
+\else
+ \edef\yes@@scale{s*[\csname yes@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{yesw}{}
+
+\DeclareFontShape{T1}{yesw}{m}{n}{
+ <-> \yes@@scale yesrw8t
+}{}
+
+\DeclareFontShape{T1}{yesw}{m}{sc}{
+ <-> \yes@@scale yesrcw8t
+}{}
+
+\DeclareFontShape{T1}{yesw}{m}{sl}{
+ <-> \yes@@scale yesrow8t
+}{}
+
+\DeclareFontShape{T1}{yesw}{m}{scit}{
+ <-> \yes@@scale yesrcow8t
+}{}
+
+\DeclareFontShape{T1}{yesw}{b}{n}{
+ <-> \yes@@scale yesbw8t
+}{}
+
+\DeclareFontShape{T1}{yesw}{b}{sc}{
+ <-> \yes@@scale yesbcw8t
+}{}
+
+\DeclareFontShape{T1}{yesw}{b}{sl}{
+ <-> \yes@@scale yesbow8t
+}{}
+
+\DeclareFontShape{T1}{yesw}{b}{scit}{
+ <-> \yes@@scale yesbcow8t
+}{}
+
+\DeclareFontShape{T1}{yesw}{l}{n}{
+ <-> \yes@@scale yeslw8t
+}{}
+
+\DeclareFontShape{T1}{yesw}{l}{sc}{
+ <-> \yes@@scale yeslcw8t
+}{}
+
+\DeclareFontShape{T1}{yesw}{l}{sl}{
+ <-> \yes@@scale yeslow8t
+}{}
+
+\DeclareFontShape{T1}{yesw}{l}{scit}{
+ <-> \yes@@scale yeslcow8t
+}{}
+
+\DeclareFontShape{T1}{yesw}{sb}{n}{
+ <-> \yes@@scale yessw8t
+}{}
+
+\DeclareFontShape{T1}{yesw}{sb}{sc}{
+ <-> \yes@@scale yesscw8t
+}{}
+
+\DeclareFontShape{T1}{yesw}{sb}{sl}{
+ <-> \yes@@scale yessow8t
+}{}
+
+\DeclareFontShape{T1}{yesw}{sb}{scit}{
+ <-> \yes@@scale yesscow8t
+}{}
+
+\DeclareFontShape{T1}{yesw}{m}{it}{<->ssub * yesw/m/sl}{}
+\DeclareFontShape{T1}{yesw}{m}{si}{<->ssub * yesw/m/scit}{}
+\DeclareFontShape{T1}{yesw}{m}{scsl}{<->ssub * yesw/m/si}{}
+\DeclareFontShape{T1}{yesw}{bx}{n}{<->ssub * yesw/b/n}{}
+\DeclareFontShape{T1}{yesw}{bx}{sc}{<->ssub * yesw/b/sc}{}
+\DeclareFontShape{T1}{yesw}{bx}{sl}{<->ssub * yesw/b/sl}{}
+\DeclareFontShape{T1}{yesw}{b}{it}{<->ssub * yesw/b/sl}{}
+\DeclareFontShape{T1}{yesw}{bx}{it}{<->ssub * yesw/b/it}{}
+\DeclareFontShape{T1}{yesw}{bx}{scit}{<->ssub * yesw/b/scit}{}
+\DeclareFontShape{T1}{yesw}{b}{si}{<->ssub * yesw/b/scit}{}
+\DeclareFontShape{T1}{yesw}{bx}{si}{<->ssub * yesw/b/si}{}
+\DeclareFontShape{T1}{yesw}{b}{scsl}{<->ssub * yesw/b/si}{}
+\DeclareFontShape{T1}{yesw}{bx}{scsl}{<->ssub * yesw/b/scsl}{}
+\DeclareFontShape{T1}{yesw}{l}{it}{<->ssub * yesw/l/sl}{}
+\DeclareFontShape{T1}{yesw}{l}{si}{<->ssub * yesw/l/scit}{}
+\DeclareFontShape{T1}{yesw}{l}{scsl}{<->ssub * yesw/l/si}{}
+\DeclareFontShape{T1}{yesw}{sb}{it}{<->ssub * yesw/sb/sl}{}
+\DeclareFontShape{T1}{yesw}{sb}{si}{<->ssub * yesw/sb/scit}{}
+\DeclareFontShape{T1}{yesw}{sb}{scsl}{<->ssub * yesw/sb/si}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/electrumadf/ts1yes.fd b/Master/texmf-dist/tex/latex/electrumadf/ts1yes.fd
new file mode 100644
index 00000000000..c5a06367371
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/electrumadf/ts1yes.fd
@@ -0,0 +1,103 @@
+%Filename: ts1yes.fd
+%Created by: tex yes-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{ts1yes.fd}
+ [2024/07/21 Fontinst v1.933 font definitions for TS1/yes.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yes@scale\endcsname\relax
+ \let\yes@@scale\@empty
+\else
+ \edef\yes@@scale{s*[\csname yes@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{yes}{}
+
+\DeclareFontShape{TS1}{yes}{m}{n}{
+ <-> \yes@@scale yesr8c
+}{}
+
+\DeclareFontShape{TS1}{yes}{m}{sl}{
+ <-> \yes@@scale yesro8c
+}{}
+
+\DeclareFontShape{TS1}{yes}{b}{n}{
+ <-> \yes@@scale yesb8c
+}{}
+
+\DeclareFontShape{TS1}{yes}{b}{sl}{
+ <-> \yes@@scale yesbo8c
+}{}
+
+\DeclareFontShape{TS1}{yes}{l}{n}{
+ <-> \yes@@scale yesl8c
+}{}
+
+\DeclareFontShape{TS1}{yes}{l}{sl}{
+ <-> \yes@@scale yeslo8c
+}{}
+
+\DeclareFontShape{TS1}{yes}{sb}{n}{
+ <-> \yes@@scale yess8c
+}{}
+
+\DeclareFontShape{TS1}{yes}{sb}{sl}{
+ <-> \yes@@scale yesso8c
+}{}
+
+\DeclareFontShape{TS1}{yes}{m}{sc}{
+ <-> \yes@@scale yesr8c
+}{}
+
+\DeclareFontShape{TS1}{yes}{m}{scit}{
+ <-> \yes@@scale yesro8c
+}{}
+
+\DeclareFontShape{TS1}{yes}{b}{sc}{
+ <-> \yes@@scale yesb8c
+}{}
+
+\DeclareFontShape{TS1}{yes}{b}{scit}{
+ <-> \yes@@scale yesbo8c
+}{}
+
+\DeclareFontShape{TS1}{yes}{l}{sc}{
+ <-> \yes@@scale yesl8c
+}{}
+
+\DeclareFontShape{TS1}{yes}{l}{scit}{
+ <-> \yes@@scale yeslo8c
+}{}
+
+\DeclareFontShape{TS1}{yes}{sb}{sc}{
+ <-> \yes@@scale yess8c
+}{}
+
+\DeclareFontShape{TS1}{yes}{sb}{scit}{
+ <-> \yes@@scale yesso8c
+}{}
+
+\DeclareFontShape{TS1}{yes}{m}{it}{<->ssub * yes/m/sl}{}
+\DeclareFontShape{TS1}{yes}{bx}{n}{<->ssub * yes/b/n}{}
+\DeclareFontShape{TS1}{yes}{bx}{sl}{<->ssub * yes/b/sl}{}
+\DeclareFontShape{TS1}{yes}{b}{it}{<->ssub * yes/b/sl}{}
+\DeclareFontShape{TS1}{yes}{bx}{it}{<->ssub * yes/b/it}{}
+\DeclareFontShape{TS1}{yes}{l}{it}{<->ssub * yes/l/sl}{}
+\DeclareFontShape{TS1}{yes}{sb}{it}{<->ssub * yes/sb/sl}{}
+\DeclareFontShape{TS1}{yes}{m}{si}{<->ssub * yes/m/scit}{}
+\DeclareFontShape{TS1}{yes}{m}{scsl}{<->ssub * yes/m/si}{}
+\DeclareFontShape{TS1}{yes}{bx}{sc}{<->ssub * yes/b/sc}{}
+\DeclareFontShape{TS1}{yes}{bx}{scit}{<->ssub * yes/b/scit}{}
+\DeclareFontShape{TS1}{yes}{b}{si}{<->ssub * yes/b/scit}{}
+\DeclareFontShape{TS1}{yes}{bx}{si}{<->ssub * yes/b/si}{}
+\DeclareFontShape{TS1}{yes}{b}{scsl}{<->ssub * yes/b/si}{}
+\DeclareFontShape{TS1}{yes}{bx}{scsl}{<->ssub * yes/b/scsl}{}
+\DeclareFontShape{TS1}{yes}{l}{si}{<->ssub * yes/l/scit}{}
+\DeclareFontShape{TS1}{yes}{l}{scsl}{<->ssub * yes/l/si}{}
+\DeclareFontShape{TS1}{yes}{sb}{si}{<->ssub * yes/sb/scit}{}
+\DeclareFontShape{TS1}{yes}{sb}{scsl}{<->ssub * yes/sb/si}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/electrum/ts1yes0.fd b/Master/texmf-dist/tex/latex/electrumadf/ts1yes0.fd
index 6c3a2aa41d1..76ce5271571 100644
--- a/Master/texmf-dist/tex/latex/electrum/ts1yes0.fd
+++ b/Master/texmf-dist/tex/latex/electrumadf/ts1yes0.fd
@@ -5,63 +5,60 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1yes0.fd}
- [2010/07/19 Fontinst v1.933 font definitions for TS1/yes0.]
+ [2024/07/21 Fontinst v1.933 font definitions for TS1/yes0.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yes@scale\endcsname\relax
+ \let\yes@@scale\@empty
+\else
+ \edef\yes@@scale{s*[\csname yes@scale\endcsname]}%
+\fi
\DeclareFontFamily{TS1}{yes0}{}
\DeclareFontShape{TS1}{yes0}{m}{n}{
- <-> yesr08c
+ <-> \yes@@scale yesr08c
}{}
\DeclareFontShape{TS1}{yes0}{m}{sl}{
- <-> yesr0o8c
+ <-> \yes@@scale yesr0o8c
}{}
\DeclareFontShape{TS1}{yes0}{b}{n}{
- <-> yesb08c
+ <-> \yes@@scale yesb08c
}{}
\DeclareFontShape{TS1}{yes0}{b}{sl}{
- <-> yesb0o8c
+ <-> \yes@@scale yesb0o8c
}{}
\DeclareFontShape{TS1}{yes0}{l}{n}{
- <-> yesl08c
+ <-> \yes@@scale yesl08c
}{}
\DeclareFontShape{TS1}{yes0}{l}{sl}{
- <-> yesl0o8c
+ <-> \yes@@scale yesl0o8c
}{}
\DeclareFontShape{TS1}{yes0}{sb}{n}{
- <-> yess08c
+ <-> \yes@@scale yess08c
}{}
\DeclareFontShape{TS1}{yes0}{sb}{sl}{
- <-> yess0o8c
+ <-> \yes@@scale yess0o8c
}{}
\DeclareFontShape{TS1}{yes0}{m}{sc}{<->ssub * yes0/m/n}{}
\DeclareFontShape{TS1}{yes0}{m}{it}{<->ssub * yes0/m/sl}{}
-\DeclareFontShape{TS1}{yes0}{m}{scsl}{<->ssub * yes0/m/it}{}
-\DeclareFontShape{TS1}{yes0}{m}{si}{<->ssub * yes0/m/scsl}{}
\DeclareFontShape{TS1}{yes0}{bx}{n}{<->ssub * yes0/b/n}{}
\DeclareFontShape{TS1}{yes0}{b}{sc}{<->ssub * yes0/b/n}{}
\DeclareFontShape{TS1}{yes0}{bx}{sc}{<->ssub * yes0/b/sc}{}
\DeclareFontShape{TS1}{yes0}{bx}{sl}{<->ssub * yes0/b/sl}{}
\DeclareFontShape{TS1}{yes0}{b}{it}{<->ssub * yes0/b/sl}{}
\DeclareFontShape{TS1}{yes0}{bx}{it}{<->ssub * yes0/b/it}{}
-\DeclareFontShape{TS1}{yes0}{b}{scsl}{<->ssub * yes0/b/it}{}
-\DeclareFontShape{TS1}{yes0}{bx}{scsl}{<->ssub * yes0/b/scsl}{}
-\DeclareFontShape{TS1}{yes0}{b}{si}{<->ssub * yes0/b/scsl}{}
-\DeclareFontShape{TS1}{yes0}{bx}{si}{<->ssub * yes0/b/si}{}
\DeclareFontShape{TS1}{yes0}{l}{sc}{<->ssub * yes0/l/n}{}
\DeclareFontShape{TS1}{yes0}{l}{it}{<->ssub * yes0/l/sl}{}
-\DeclareFontShape{TS1}{yes0}{l}{scsl}{<->ssub * yes0/l/it}{}
-\DeclareFontShape{TS1}{yes0}{l}{si}{<->ssub * yes0/l/scsl}{}
\DeclareFontShape{TS1}{yes0}{sb}{sc}{<->ssub * yes0/sb/n}{}
\DeclareFontShape{TS1}{yes0}{sb}{it}{<->ssub * yes0/sb/sl}{}
-\DeclareFontShape{TS1}{yes0}{sb}{scsl}{<->ssub * yes0/sb/it}{}
-\DeclareFontShape{TS1}{yes0}{sb}{si}{<->ssub * yes0/sb/scsl}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/electrum/ts1yes1.fd b/Master/texmf-dist/tex/latex/electrumadf/ts1yes1.fd
index d8f82655e76..334594349d1 100644
--- a/Master/texmf-dist/tex/latex/electrum/ts1yes1.fd
+++ b/Master/texmf-dist/tex/latex/electrumadf/ts1yes1.fd
@@ -5,63 +5,60 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1yes1.fd}
- [2010/07/19 Fontinst v1.933 font definitions for TS1/yes1.]
+ [2024/07/21 Fontinst v1.933 font definitions for TS1/yes1.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yes@scale\endcsname\relax
+ \let\yes@@scale\@empty
+\else
+ \edef\yes@@scale{s*[\csname yes@scale\endcsname]}%
+\fi
\DeclareFontFamily{TS1}{yes1}{}
\DeclareFontShape{TS1}{yes1}{m}{n}{
- <-> yesr18c
+ <-> \yes@@scale yesr18c
}{}
\DeclareFontShape{TS1}{yes1}{m}{sl}{
- <-> yesr1o8c
+ <-> \yes@@scale yesr1o8c
}{}
\DeclareFontShape{TS1}{yes1}{b}{n}{
- <-> yesb18c
+ <-> \yes@@scale yesb18c
}{}
\DeclareFontShape{TS1}{yes1}{b}{sl}{
- <-> yesb1o8c
+ <-> \yes@@scale yesb1o8c
}{}
\DeclareFontShape{TS1}{yes1}{l}{n}{
- <-> yesl18c
+ <-> \yes@@scale yesl18c
}{}
\DeclareFontShape{TS1}{yes1}{l}{sl}{
- <-> yesl1o8c
+ <-> \yes@@scale yesl1o8c
}{}
\DeclareFontShape{TS1}{yes1}{sb}{n}{
- <-> yess18c
+ <-> \yes@@scale yess18c
}{}
\DeclareFontShape{TS1}{yes1}{sb}{sl}{
- <-> yess1o8c
+ <-> \yes@@scale yess1o8c
}{}
\DeclareFontShape{TS1}{yes1}{m}{sc}{<->ssub * yes1/m/n}{}
\DeclareFontShape{TS1}{yes1}{m}{it}{<->ssub * yes1/m/sl}{}
-\DeclareFontShape{TS1}{yes1}{m}{scsl}{<->ssub * yes1/m/it}{}
-\DeclareFontShape{TS1}{yes1}{m}{si}{<->ssub * yes1/m/scsl}{}
\DeclareFontShape{TS1}{yes1}{bx}{n}{<->ssub * yes1/b/n}{}
\DeclareFontShape{TS1}{yes1}{b}{sc}{<->ssub * yes1/b/n}{}
\DeclareFontShape{TS1}{yes1}{bx}{sc}{<->ssub * yes1/b/sc}{}
\DeclareFontShape{TS1}{yes1}{bx}{sl}{<->ssub * yes1/b/sl}{}
\DeclareFontShape{TS1}{yes1}{b}{it}{<->ssub * yes1/b/sl}{}
\DeclareFontShape{TS1}{yes1}{bx}{it}{<->ssub * yes1/b/it}{}
-\DeclareFontShape{TS1}{yes1}{b}{scsl}{<->ssub * yes1/b/it}{}
-\DeclareFontShape{TS1}{yes1}{bx}{scsl}{<->ssub * yes1/b/scsl}{}
-\DeclareFontShape{TS1}{yes1}{b}{si}{<->ssub * yes1/b/scsl}{}
-\DeclareFontShape{TS1}{yes1}{bx}{si}{<->ssub * yes1/b/si}{}
\DeclareFontShape{TS1}{yes1}{l}{sc}{<->ssub * yes1/l/n}{}
\DeclareFontShape{TS1}{yes1}{l}{it}{<->ssub * yes1/l/sl}{}
-\DeclareFontShape{TS1}{yes1}{l}{scsl}{<->ssub * yes1/l/it}{}
-\DeclareFontShape{TS1}{yes1}{l}{si}{<->ssub * yes1/l/scsl}{}
\DeclareFontShape{TS1}{yes1}{sb}{sc}{<->ssub * yes1/sb/n}{}
\DeclareFontShape{TS1}{yes1}{sb}{it}{<->ssub * yes1/sb/sl}{}
-\DeclareFontShape{TS1}{yes1}{sb}{scsl}{<->ssub * yes1/sb/it}{}
-\DeclareFontShape{TS1}{yes1}{sb}{si}{<->ssub * yes1/sb/scsl}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/electrumadf/ts1yesj.fd b/Master/texmf-dist/tex/latex/electrumadf/ts1yesj.fd
new file mode 100644
index 00000000000..7b6254b37f0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/electrumadf/ts1yesj.fd
@@ -0,0 +1,103 @@
+%Filename: ts1yesj.fd
+%Created by: tex yes-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{ts1yesj.fd}
+ [2024/07/21 Fontinst v1.933 font definitions for TS1/yesj.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yes@scale\endcsname\relax
+ \let\yes@@scale\@empty
+\else
+ \edef\yes@@scale{s*[\csname yes@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{yesj}{}
+
+\DeclareFontShape{TS1}{yesj}{m}{n}{
+ <-> \yes@@scale yesrj8c
+}{}
+
+\DeclareFontShape{TS1}{yesj}{m}{sl}{
+ <-> \yes@@scale yesrjo8c
+}{}
+
+\DeclareFontShape{TS1}{yesj}{b}{n}{
+ <-> \yes@@scale yesbj8c
+}{}
+
+\DeclareFontShape{TS1}{yesj}{b}{sl}{
+ <-> \yes@@scale yesbjo8c
+}{}
+
+\DeclareFontShape{TS1}{yesj}{l}{n}{
+ <-> \yes@@scale yeslj8c
+}{}
+
+\DeclareFontShape{TS1}{yesj}{l}{sl}{
+ <-> \yes@@scale yesljo8c
+}{}
+
+\DeclareFontShape{TS1}{yesj}{sb}{n}{
+ <-> \yes@@scale yessj8c
+}{}
+
+\DeclareFontShape{TS1}{yesj}{sb}{sl}{
+ <-> \yes@@scale yessjo8c
+}{}
+
+\DeclareFontShape{TS1}{yesj}{m}{sc}{
+ <-> \yes@@scale yesrj8c
+}{}
+
+\DeclareFontShape{TS1}{yesj}{m}{scit}{
+ <-> \yes@@scale yesrjo8c
+}{}
+
+\DeclareFontShape{TS1}{yesj}{b}{sc}{
+ <-> \yes@@scale yesbj8c
+}{}
+
+\DeclareFontShape{TS1}{yesj}{b}{scit}{
+ <-> \yes@@scale yesbjo8c
+}{}
+
+\DeclareFontShape{TS1}{yesj}{l}{sc}{
+ <-> \yes@@scale yeslj8c
+}{}
+
+\DeclareFontShape{TS1}{yesj}{l}{scit}{
+ <-> \yes@@scale yesljo8c
+}{}
+
+\DeclareFontShape{TS1}{yesj}{sb}{sc}{
+ <-> \yes@@scale yessj8c
+}{}
+
+\DeclareFontShape{TS1}{yesj}{sb}{scit}{
+ <-> \yes@@scale yessjo8c
+}{}
+
+\DeclareFontShape{TS1}{yesj}{m}{it}{<->ssub * yesj/m/sl}{}
+\DeclareFontShape{TS1}{yesj}{bx}{n}{<->ssub * yesj/b/n}{}
+\DeclareFontShape{TS1}{yesj}{bx}{sl}{<->ssub * yesj/b/sl}{}
+\DeclareFontShape{TS1}{yesj}{b}{it}{<->ssub * yesj/b/sl}{}
+\DeclareFontShape{TS1}{yesj}{bx}{it}{<->ssub * yesj/b/it}{}
+\DeclareFontShape{TS1}{yesj}{l}{it}{<->ssub * yesj/l/sl}{}
+\DeclareFontShape{TS1}{yesj}{sb}{it}{<->ssub * yesj/sb/sl}{}
+\DeclareFontShape{TS1}{yesj}{m}{si}{<->ssub * yesj/m/scit}{}
+\DeclareFontShape{TS1}{yesj}{m}{scsl}{<->ssub * yesj/m/si}{}
+\DeclareFontShape{TS1}{yesj}{bx}{sc}{<->ssub * yesj/b/sc}{}
+\DeclareFontShape{TS1}{yesj}{bx}{scit}{<->ssub * yesj/b/scit}{}
+\DeclareFontShape{TS1}{yesj}{b}{si}{<->ssub * yesj/b/scit}{}
+\DeclareFontShape{TS1}{yesj}{bx}{si}{<->ssub * yesj/b/si}{}
+\DeclareFontShape{TS1}{yesj}{b}{scsl}{<->ssub * yesj/b/si}{}
+\DeclareFontShape{TS1}{yesj}{bx}{scsl}{<->ssub * yesj/b/scsl}{}
+\DeclareFontShape{TS1}{yesj}{l}{si}{<->ssub * yesj/l/scit}{}
+\DeclareFontShape{TS1}{yesj}{l}{scsl}{<->ssub * yesj/l/si}{}
+\DeclareFontShape{TS1}{yesj}{sb}{si}{<->ssub * yesj/sb/scit}{}
+\DeclareFontShape{TS1}{yesj}{sb}{scsl}{<->ssub * yesj/sb/si}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/electrumadf/ts1yesjw.fd b/Master/texmf-dist/tex/latex/electrumadf/ts1yesjw.fd
new file mode 100644
index 00000000000..1acc1b2714c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/electrumadf/ts1yesjw.fd
@@ -0,0 +1,103 @@
+%Filename: ts1yesjw.fd
+%Created by: tex yes-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{ts1yesjw.fd}
+ [2024/07/21 Fontinst v1.933 font definitions for TS1/yesjw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yes@scale\endcsname\relax
+ \let\yes@@scale\@empty
+\else
+ \edef\yes@@scale{s*[\csname yes@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{yesjw}{}
+
+\DeclareFontShape{TS1}{yesjw}{m}{n}{
+ <-> \yes@@scale yesrj8c
+}{}
+
+\DeclareFontShape{TS1}{yesjw}{m}{sl}{
+ <-> \yes@@scale yesrjo8c
+}{}
+
+\DeclareFontShape{TS1}{yesjw}{b}{n}{
+ <-> \yes@@scale yesbj8c
+}{}
+
+\DeclareFontShape{TS1}{yesjw}{b}{sl}{
+ <-> \yes@@scale yesbjo8c
+}{}
+
+\DeclareFontShape{TS1}{yesjw}{l}{n}{
+ <-> \yes@@scale yeslj8c
+}{}
+
+\DeclareFontShape{TS1}{yesjw}{l}{sl}{
+ <-> \yes@@scale yesljo8c
+}{}
+
+\DeclareFontShape{TS1}{yesjw}{sb}{n}{
+ <-> \yes@@scale yessj8c
+}{}
+
+\DeclareFontShape{TS1}{yesjw}{sb}{sl}{
+ <-> \yes@@scale yessjo8c
+}{}
+
+\DeclareFontShape{TS1}{yesjw}{m}{sc}{
+ <-> \yes@@scale yesrj8c
+}{}
+
+\DeclareFontShape{TS1}{yesjw}{m}{scit}{
+ <-> \yes@@scale yesrjo8c
+}{}
+
+\DeclareFontShape{TS1}{yesjw}{b}{sc}{
+ <-> \yes@@scale yesbj8c
+}{}
+
+\DeclareFontShape{TS1}{yesjw}{b}{scit}{
+ <-> \yes@@scale yesbjo8c
+}{}
+
+\DeclareFontShape{TS1}{yesjw}{l}{sc}{
+ <-> \yes@@scale yeslj8c
+}{}
+
+\DeclareFontShape{TS1}{yesjw}{l}{scit}{
+ <-> \yes@@scale yesljo8c
+}{}
+
+\DeclareFontShape{TS1}{yesjw}{sb}{sc}{
+ <-> \yes@@scale yessj8c
+}{}
+
+\DeclareFontShape{TS1}{yesjw}{sb}{scit}{
+ <-> \yes@@scale yessjo8c
+}{}
+
+\DeclareFontShape{TS1}{yesjw}{m}{it}{<->ssub * yesjw/m/sl}{}
+\DeclareFontShape{TS1}{yesjw}{bx}{n}{<->ssub * yesjw/b/n}{}
+\DeclareFontShape{TS1}{yesjw}{bx}{sl}{<->ssub * yesjw/b/sl}{}
+\DeclareFontShape{TS1}{yesjw}{b}{it}{<->ssub * yesjw/b/sl}{}
+\DeclareFontShape{TS1}{yesjw}{bx}{it}{<->ssub * yesjw/b/it}{}
+\DeclareFontShape{TS1}{yesjw}{l}{it}{<->ssub * yesjw/l/sl}{}
+\DeclareFontShape{TS1}{yesjw}{sb}{it}{<->ssub * yesjw/sb/sl}{}
+\DeclareFontShape{TS1}{yesjw}{m}{si}{<->ssub * yesjw/m/scit}{}
+\DeclareFontShape{TS1}{yesjw}{m}{scsl}{<->ssub * yesjw/m/si}{}
+\DeclareFontShape{TS1}{yesjw}{bx}{sc}{<->ssub * yesjw/b/sc}{}
+\DeclareFontShape{TS1}{yesjw}{bx}{scit}{<->ssub * yesjw/b/scit}{}
+\DeclareFontShape{TS1}{yesjw}{b}{si}{<->ssub * yesjw/b/scit}{}
+\DeclareFontShape{TS1}{yesjw}{bx}{si}{<->ssub * yesjw/b/si}{}
+\DeclareFontShape{TS1}{yesjw}{b}{scsl}{<->ssub * yesjw/b/si}{}
+\DeclareFontShape{TS1}{yesjw}{bx}{scsl}{<->ssub * yesjw/b/scsl}{}
+\DeclareFontShape{TS1}{yesjw}{l}{si}{<->ssub * yesjw/l/scit}{}
+\DeclareFontShape{TS1}{yesjw}{l}{scsl}{<->ssub * yesjw/l/si}{}
+\DeclareFontShape{TS1}{yesjw}{sb}{si}{<->ssub * yesjw/sb/scit}{}
+\DeclareFontShape{TS1}{yesjw}{sb}{scsl}{<->ssub * yesjw/sb/si}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/electrumadf/ts1yesw.fd b/Master/texmf-dist/tex/latex/electrumadf/ts1yesw.fd
new file mode 100644
index 00000000000..4bce6e67d32
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/electrumadf/ts1yesw.fd
@@ -0,0 +1,103 @@
+%Filename: ts1yesw.fd
+%Created by: tex yes-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{ts1yesw.fd}
+ [2024/07/21 Fontinst v1.933 font definitions for TS1/yesw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yes@scale\endcsname\relax
+ \let\yes@@scale\@empty
+\else
+ \edef\yes@@scale{s*[\csname yes@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{yesw}{}
+
+\DeclareFontShape{TS1}{yesw}{m}{n}{
+ <-> \yes@@scale yesr8c
+}{}
+
+\DeclareFontShape{TS1}{yesw}{m}{sl}{
+ <-> \yes@@scale yesro8c
+}{}
+
+\DeclareFontShape{TS1}{yesw}{b}{n}{
+ <-> \yes@@scale yesb8c
+}{}
+
+\DeclareFontShape{TS1}{yesw}{b}{sl}{
+ <-> \yes@@scale yesbo8c
+}{}
+
+\DeclareFontShape{TS1}{yesw}{l}{n}{
+ <-> \yes@@scale yesl8c
+}{}
+
+\DeclareFontShape{TS1}{yesw}{l}{sl}{
+ <-> \yes@@scale yeslo8c
+}{}
+
+\DeclareFontShape{TS1}{yesw}{sb}{n}{
+ <-> \yes@@scale yess8c
+}{}
+
+\DeclareFontShape{TS1}{yesw}{sb}{sl}{
+ <-> \yes@@scale yesso8c
+}{}
+
+\DeclareFontShape{TS1}{yesw}{m}{sc}{
+ <-> \yes@@scale yesr8c
+}{}
+
+\DeclareFontShape{TS1}{yesw}{m}{scit}{
+ <-> \yes@@scale yesro8c
+}{}
+
+\DeclareFontShape{TS1}{yesw}{b}{sc}{
+ <-> \yes@@scale yesb8c
+}{}
+
+\DeclareFontShape{TS1}{yesw}{b}{scit}{
+ <-> \yes@@scale yesbo8c
+}{}
+
+\DeclareFontShape{TS1}{yesw}{l}{sc}{
+ <-> \yes@@scale yesl8c
+}{}
+
+\DeclareFontShape{TS1}{yesw}{l}{scit}{
+ <-> \yes@@scale yeslo8c
+}{}
+
+\DeclareFontShape{TS1}{yesw}{sb}{sc}{
+ <-> \yes@@scale yess8c
+}{}
+
+\DeclareFontShape{TS1}{yesw}{sb}{scit}{
+ <-> \yes@@scale yesso8c
+}{}
+
+\DeclareFontShape{TS1}{yesw}{m}{it}{<->ssub * yesw/m/sl}{}
+\DeclareFontShape{TS1}{yesw}{bx}{n}{<->ssub * yesw/b/n}{}
+\DeclareFontShape{TS1}{yesw}{bx}{sl}{<->ssub * yesw/b/sl}{}
+\DeclareFontShape{TS1}{yesw}{b}{it}{<->ssub * yesw/b/sl}{}
+\DeclareFontShape{TS1}{yesw}{bx}{it}{<->ssub * yesw/b/it}{}
+\DeclareFontShape{TS1}{yesw}{l}{it}{<->ssub * yesw/l/sl}{}
+\DeclareFontShape{TS1}{yesw}{sb}{it}{<->ssub * yesw/sb/sl}{}
+\DeclareFontShape{TS1}{yesw}{m}{si}{<->ssub * yesw/m/scit}{}
+\DeclareFontShape{TS1}{yesw}{m}{scsl}{<->ssub * yesw/m/si}{}
+\DeclareFontShape{TS1}{yesw}{bx}{sc}{<->ssub * yesw/b/sc}{}
+\DeclareFontShape{TS1}{yesw}{bx}{scit}{<->ssub * yesw/b/scit}{}
+\DeclareFontShape{TS1}{yesw}{b}{si}{<->ssub * yesw/b/scit}{}
+\DeclareFontShape{TS1}{yesw}{bx}{si}{<->ssub * yesw/b/si}{}
+\DeclareFontShape{TS1}{yesw}{b}{scsl}{<->ssub * yesw/b/si}{}
+\DeclareFontShape{TS1}{yesw}{bx}{scsl}{<->ssub * yesw/b/scsl}{}
+\DeclareFontShape{TS1}{yesw}{l}{si}{<->ssub * yesw/l/scit}{}
+\DeclareFontShape{TS1}{yesw}{l}{scsl}{<->ssub * yesw/l/si}{}
+\DeclareFontShape{TS1}{yesw}{sb}{si}{<->ssub * yesw/sb/scit}{}
+\DeclareFontShape{TS1}{yesw}{sb}{scsl}{<->ssub * yesw/sb/si}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/enverb/enverb.sty b/Master/texmf-dist/tex/latex/enverb/enverb.sty
new file mode 100644
index 00000000000..bb15d3fec61
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/enverb/enverb.sty
@@ -0,0 +1,380 @@
+%%
+%% This is file `enverb.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% enverb.dtx (with options: `pkg')
+%%
+%% --------------------------------------------------------------
+%% enverb -- read an environment verbatim
+%% E-mail: jspratte@yahoo.de
+%% Released under the LaTeX Project Public License v1.3c or later
+%% See http://www.latex-project.org/lppl.txt
+%% --------------------------------------------------------------
+%%
+%% Copyright (C) 2023-2024 Jonathan P. Spratte
+%%
+%% This work may be distributed and/or modified under the conditions of the
+%% LaTeX Project Public License (LPPL), either version 1.3c of this license or
+%% (at your option) any later version. The latest version of this license is in
+%% the file:
+%%
+%% http://www.latex-project.org/lppl.txt
+%%
+%% This work is "maintained" (as per LPPL maintenance status) by
+%% Jonathan P. Spratte.
+%%
+%% This work consists of the files enverb.dtx
+%% enverb-doc.tex
+%% and the derived files enverb-doc.pdf
+%% enverb.sty
+%%
+\newcommand*\enverb@date{2024-08-28}
+\newcommand*\enverb@version{1.0}
+\ProvidesPackage{enverb}
+ [\enverb@date\space v\enverb@version\space read an environment verbatim]
+\providecommand\@thirdofthree[3]{#3}
+\providecommand\@firstofnine[9]{#1}
+\ExplSyntaxOn
+\cs_new_eq:NN \enverb@count \tl_count:n
+\cs_new_eq:NN \enverb@ifxTF \token_if_eq_meaning:NNTF
+\cs_new_eq:NN \enverb@chargen \char_generate:nn
+\cs_set:Npx \enverb@othercr { \char_generate:nn {13} {12} }
+\ExplSyntaxOff
+\RequirePackage{expkv-def}
+\ekvdefinekeys{enverb}
+ {
+ protect code ignore = \let\enverb@ifautoignore\@secondoftwo
+ ,also eint ignore = \enverb@ignore
+ ,boolTF auto-ignore = \enverb@ifautoignore
+ ,initial auto-ignore
+ ,eint more-ignore = \enverb@moreignore
+ ,initial more-ignore = 2
+ ,long store bol = \enverb@bol@content
+ ,long code bol+ = \enverb@add\enverb@bol@content{#1}
+ ,long code +bol = \enverb@pre\enverb@bol@content{#1}
+ ,long store eol = \enverb@eol@content
+ ,einitial eol = \enverb@othercr
+ ,long code eol+ = \enverb@add\enverb@eol@content{#1}
+ ,long code +eol = \enverb@pre\enverb@eol@content{#1}
+ ,protect code key-handler = \protected\long\def\enverb@keyhandler##1{#1}
+ ,protect code key-set = \protected\long\ekvsetdef\enverb@keyhandler{#1}
+ ,unknown code = \enverb@add\enverb@unknown@kv{, {#3} = {#2} }
+ ,unknown noval = \enverb@add\enverb@unknown@kv{, {#2} }
+ ,boolTF oarg-not-enverb = \enverb@ifoargtokeyhandler
+ }
+\protected\long\ekvsetdef\enverbsetup{enverb}
+\let\enverb@unknown@kv\@empty
+\long\def\enverb@stop#1\enverb@stop{}
+\protected\def\enverb@error{\PackageError{enverb}}
+\protected\def\enverb@misused
+ {%
+ \enverb@error
+ {Misused \string\enverb. Input already tokenised}%
+ {%
+ It seems you used the \string\enverb\space based environment
+ {\@currenvir} inside another\MessageBreak
+ macro's or a primitive's argument; that doesn't work.%
+ }%
+ }
+\protected\long\def\enverb@keyhandler#1%
+ {%
+ \if\relax\detokenize{#1}\relax
+ \expandafter\@gobbletwo
+ \fi
+ \@firstofone
+ {%
+ \enverb@error
+ {%
+ Unknown keys encountered:
+ \expanded
+ {%
+ \ekvparse
+ {\MessageBreak\@spaces\unexpanded}%
+ {\MessageBreak\@spaces\enverb@keyhandler@}%
+ {#1}%
+ }%
+ \@gobble
+ }%
+ {%
+ Perhaps you misspelled some key names? Or you forgot to set up
+ custom key\MessageBreak
+ parsing.%
+ }%
+ }%
+ }
+\long\def\enverb@keyhandler@#1{\unexpanded{#1} = \unexpanded}
+\begingroup
+\lccode`\~=`\^^M
+\catcode`\:=13
+\lccode`\:=`\ % <- space
+\catcode`\;=13
+\lccode`\;=`\^^I % <- tab
+\lowercase{\endgroup
+\def\enverb@body@space{}
+\def\enverb@body@tab{}
+\def\enverb@body@newline{\enverb@collect}
+\def\enverb@collect#1~%
+ {\enverb@ifnotend{#1}{\enverb@bol\unexpanded{#1}\enverb@eol\enverb@collect}}
+\protected\def\enverb@body@setup
+ {%
+ \let\enverbBody\@empty
+ \let\do\@makeother\dospecials
+ \endlinechar=`\^^M
+ \catcode`\^^M=13 \let~\enverb@body@newline
+ \catcode`\ =13 \let:\enverb@body@space
+ \catcode`\^^I=13 \let;\enverb@body@tab
+ \let\enverb@bol\relax
+ \let\enverb@eol\relax
+ }
+\long\def\enverb@ifxanyTF#1#2%
+ {\enverb@ifxanyTF@#1#2\enverb@ifxanyTF@}
+\long\def\enverb@ifxanyTF@#1#2%
+ {%
+ \enverb@ifxanyTF@ifdone#2\enverb@ifxanyTF@F\enverb@ifxanyTF@
+ \enverb@ifxTF#1#2\enverb@ifxanyTF@T{\enverb@ifxanyTF@#1}%
+ }
+\long\def\enverb@ifxanyTF@ifdone#1\enverb@ifxanyTF@{}
+\long\def\enverb@ifxanyTF@F
+ \enverb@ifxanyTF@\enverb@ifxTF#1\enverb@ifxanyTF@T#2#3#4%
+ {#4}
+\long\def\enverb@ifxanyTF@T#1\enverb@ifxanyTF@#2#3{#2}
+\def\enverb@search@oarg@ifx#1#2%
+ {%
+ \enverb@ifxTF#1\@let@token
+ {%
+ \ifenverb@firsteol#2\else\enverb@body@add{#1}\fi
+ \enverb@search@oarg@b
+ }%
+ }
+\protected\def\enverb@search@oarg@a
+ {%
+ \enverb@search@oarg@ifx:{}%
+ {%
+ \enverb@search@oarg@ifx;{}%
+ {%
+ \enverb@search@oarg@ifx~\enverb@firsteolfalse
+ {%
+ \enverb@ifxTF{[}\@let@token
+ {\enverb@oarg}%
+ {%
+ \enverb@ifxanyTF\@let@token
+ {%
+ \@sptoken\par\bgroup\egroup$&##^_% $
+ }
+ {%
+ \enverb@misused
+ \endgroup
+ }%
+ {%
+ \ifenverb@firsteol
+ \expandafter\enverb@body@after@begin
+ \else
+ \expandafter\enverb@body
+ \fi
+ }%
+ }%
+ }%
+ }%
+ }%
+ }
+\protected\def\enverb@body
+ {\edef\enverbBody{\iffalse}\fi\expandafter\enverb@collect\enverbBody}
+\def\enverb@body@after@oarg#1~%
+ {\enverb@ensure@blank{#1}{closing bracket}\enverb@body}
+\def\enverb@body@after@begin#1~%
+ {\enverb@ensure@blank{#1}{\string\begin}\enverb@body}
+}
+\newcommand\enverb@ensure@blank[2]
+ {%
+ \expandafter\enverb@ifempty\expanded{{#1}}{}%
+ {%
+ \expanded
+ {%
+ \noexpand\enverb@error
+ {%
+ Line after #2 not empty.\noexpand\MessageBreak
+ Contains: \detokenize\expandafter{\romannumeral`\^^@#1}%
+ }%
+ {%
+ \noexpand\enverb will try to ignore this. You should clean up
+ your input.%
+ }%
+ }%
+ }%
+ }
+\newcommand\enverb@ifempty[1]
+ {%
+ \enverb@ifempty@\enverb@ifempty@A#1\enverb@ifempty@B.\enverb@ifempty@true
+ \enverb@ifempty@A\enverb@ifempty@B
+ }
+\def\enverb@ifempty@#1\enverb@ifempty@A\enverb@ifempty@B#2#3{#3}
+\def\enverb@ifempty@true\enverb@ifempty@A\enverb@ifempty@B#1#2{#1}
+\protected\long\def\enverb@add#1#2{\edef#1{\unexpanded\expandafter{#1#2}}}
+\protected\long\def\enverb@pre#1#2%
+ {\edef#1{\unexpanded{#2}\unexpanded\expandafter{#1}}}
+\protected\def\enverb@body@add{\enverb@add\enverbBody}
+\NewDocumentCommand \enverb { s +m }
+ {%
+ \expandafter\enverb@ifnotend@setup@perhaps\expanded
+ {{\string{\@currenvir\string}}}%
+ \let\enverb@collected@oarg\@empty
+ \edef\enverb@collected@marg{\unexpanded{#2}}%
+ \begingroup
+ \enverb@body@setup
+ \IfBooleanTF{#1}%
+ {\enverb@body@after@begin}%
+ {%
+ \enverb@firsteoltrue
+ \enverb@search@oarg
+ }%
+ }
+\newif\ifenverb@firsteol
+\protected\def\enverb@search@oarg{\futurelet\@let@token\enverb@search@oarg@a}
+\protected\def\enverb@search@oarg@b{\expandafter\enverb@search@oarg\@gobble}
+\protected\def\enverb@oarg{\endgroup\enverb@oarg@}
+\NewDocumentCommand\enverb@oarg@{+O{}}
+ {%
+ \enverb@add\enverb@collected@oarg{#1}%
+ \begingroup
+ \enverb@body@setup
+ \enverb@body@after@oarg
+ }
+\newcommand\enverb@ifnotend[1]%
+ {%
+ \def\enverb@ifnotend##1%
+ {%
+ \enverb@ifnotend@
+ ##1\enverb@mark\enverb@ifnotend@maybe
+ #1\enverb@mark\@thirdofthree
+ \enverb@stop
+ }%
+ \def\enverb@ifnotend@##1#1##2\enverb@mark##3##4\enverb@stop{##3{##1}{##2}}%
+ }
+\expandafter\enverb@ifnotend\expanded{{\expandafter\@gobble\string\\end}}
+\newcommand\enverb@ifnotend@maybe[2]
+ {\expandafter\enverb@ifnotend@perhaps\expandafter{\romannumeral`\^^@#2}{#1}}
+\protected\def\enverb@ifnotend@setup@perhaps#1%
+ {%
+ \def\enverb@ifnotend@perhaps##1%
+ {%
+ \enverb@ifnotend@perhaps@\enverb@mark##1\enverb@mark\enverb@ifnotend@end
+ \enverb@mark#1\enverb@mark\@thirdofthree
+ \enverb@stop
+ }%
+ \def\enverb@ifnotend@perhaps@
+ ##1\enverb@mark#1##2\enverb@mark##3##4\enverb@stop
+ {##3{##2}}%
+ }
+\def\enverb@ifnotend@end#1#2#3%
+ {%
+ \iffalse{\fi}%
+ \enverb@ensure@blank{#1}{\string\end}%
+ \expandafter\enverb@finalise\expandafter{\enverbBody}{#2}%
+ }
+\protected\def\enverb@finalise#1#2%
+ {%
+ \endgroup
+ \expandafter\enverbsetup\expandafter{\enverb@collected@marg}%
+ \enverb@ifoargtokeyhandler
+ {%
+ \expandafter\enverb@keyhandler\expanded
+ {{%
+ \unexpanded\expandafter{\enverb@unknown@kv},%
+ \unexpanded\expandafter{\enverb@collected@oarg}%
+ }}%
+ }%
+ {%
+ \expandafter\enverbsetup\expandafter{\enverb@collected@oarg}%
+ \expandafter\enverb@keyhandler\expandafter{\enverb@unknown@kv}%
+ }%
+ \enverb@ifautoignore
+ {\enverb@setup@ignore{\enverb@count{#2}+\enverb@moreignore}}%
+ {\enverb@setup@ignore\enverb@ignore}%
+ \edef\enverb@line##1\enverb@eol
+ {%
+ \noexpand\unexpanded{##1}%
+ %\noexpand\detokenize{##1}% % TODO
+ \noexpand\unexpanded{\unexpanded\expandafter{\enverb@eol@content}}%
+ }%
+ \edef\enverbBody{#1}%
+ \expandafter\end\expandafter{\@currenvir}%
+ }
+\protected\def\enverb@setup@ignore#1%
+ {\expandafter\enverb@setup@ignore@\the\numexpr#1\relax;\enverb@line}
+\protected\def\enverb@setup@ignore@#1;#2%
+ {%
+ \ifnum#1>9
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+ {\expandafter\enverb@setup@ignore@\the\numexpr#1-8;{\@firstofnine{#2}}}%
+ {%
+ \let\enverb@bol@gobble\@empty
+ \expanded
+ {%
+ \unexpanded{\renewcommand\enverb@bol@gobble}\ifnum#1>\z@[#1]\fi
+ {\unexpanded{#2}}%
+ \unexpanded{\def\enverb@bol##1\enverb@eol}%
+ {%
+ \noexpand\unexpanded
+ {\unexpanded\expandafter{\enverb@bol@content}}%
+ \unexpanded{\expandafter\enverb@ifempty\expanded}{{##1}}%
+ {\noexpand\enverb@line}%
+ {\noexpand\enverb@bol@gobble}%
+ ##1\noexpand\enverb@eol
+ }%
+ }%
+ }%
+ }
+\def\enverb@rmeol
+ {%
+ \ifnum\catcode`\%=14
+ \enverb@chargen{`\%}{12}%
+ \expandafter\enverb@stop
+ \fi
+ \enverb@rmeol@0;%
+ \enverb@stop
+ }
+\def\enverb@rmeol@#1;%
+ {%
+ \ifnum#1=128
+ \string\relax
+ \expandafter\enverb@stop
+ \fi
+ \@firstofone
+ {%
+ \ifnum\catcode`\%=14
+ \enverb@chargen{#1}{12}%
+ \expandafter\enverb@stop
+ \fi
+ \expandafter\enverb@rmeol@\the\numexpr#1+1;%
+ }%
+ }
+\NewDocumentCommand\enverbExecute{}
+ {%
+ \begingroup
+ \newlinechar=`\^^M
+ \expandafter
+ \endgroup
+ \scantokens\expanded
+ {{%
+ \detokenize\expandafter{\enverbBody}%
+ \enverb@rmeol
+ }}%
+ }
+\NewDocumentCommand \enverbListing { m m }
+ {%
+ \scantokens\expanded
+ {{%
+ \string\begin{#1}\detokenize{#2}\enverb@othercr
+ \detokenize\expandafter{\enverbBody}%
+ \string\end{#1}\enverb@othercr
+ \enverb@rmeol
+ }}%
+ }
+%%
+%%
+%% End of file `enverb.sty'.
diff --git a/Master/texmf-dist/tex/latex/esami/esami.sty b/Master/texmf-dist/tex/latex/esami/esami.sty
index 12bf7613794..d1f8757d56d 100644
--- a/Master/texmf-dist/tex/latex/esami/esami.sty
+++ b/Master/texmf-dist/tex/latex/esami/esami.sty
@@ -145,6 +145,7 @@
% | PACKAGES |
% +=============================+
+\usepackage{tagpdf-base}
\usepackage{graphicx}
\usepackage{enumerate}
\usepackage[nomessages]{fp}
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-100euro.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-100euro.pdf
new file mode 100644
index 00000000000..6899f2b2d37
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-100euro.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-100eurosimple.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-100eurosimple.pdf
new file mode 100644
index 00000000000..b021e90c2b0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-100eurosimple.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-100eurosimplebw.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-100eurosimplebw.pdf
new file mode 100644
index 00000000000..e3777a5c9d6
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-100eurosimplebw.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-10cent.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-10cent.pdf
new file mode 100644
index 00000000000..ddeac2a07f2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-10cent.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-10centsimple.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-10centsimple.pdf
new file mode 100644
index 00000000000..8fad414db21
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-10centsimple.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-10centsimplebw.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-10centsimplebw.pdf
new file mode 100644
index 00000000000..46bfac9dbcd
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-10centsimplebw.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-10euro.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-10euro.pdf
new file mode 100644
index 00000000000..0c67ef49821
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-10euro.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-10eurosimple.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-10eurosimple.pdf
new file mode 100644
index 00000000000..b07568d6fb1
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-10eurosimple.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-10eurosimplebw.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-10eurosimplebw.pdf
new file mode 100644
index 00000000000..24928b831b9
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-10eurosimplebw.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-1cent.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-1cent.pdf
new file mode 100644
index 00000000000..bb9d01c1d49
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-1cent.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-1centsimple.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-1centsimple.pdf
new file mode 100644
index 00000000000..1b32b897836
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-1centsimple.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-1centsimplebw.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-1centsimplebw.pdf
new file mode 100644
index 00000000000..5db25de626d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-1centsimplebw.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-1euro.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-1euro.pdf
new file mode 100644
index 00000000000..48f184fa19f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-1euro.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-1eurosimple.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-1eurosimple.pdf
new file mode 100644
index 00000000000..8c34a155355
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-1eurosimple.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-1eurosimplebw.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-1eurosimplebw.pdf
new file mode 100644
index 00000000000..d5346534b47
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-1eurosimplebw.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-200euro.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-200euro.pdf
new file mode 100644
index 00000000000..dc2c56bfb0f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-200euro.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-200eurosimple.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-200eurosimple.pdf
new file mode 100644
index 00000000000..dde3d6f2bb9
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-200eurosimple.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-200eurosimplebw.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-200eurosimplebw.pdf
new file mode 100644
index 00000000000..78f052bd57e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-200eurosimplebw.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-20cent.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-20cent.pdf
new file mode 100644
index 00000000000..28f5f255a40
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-20cent.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-20centsimple.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-20centsimple.pdf
new file mode 100644
index 00000000000..c101540707d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-20centsimple.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-20centsimplebw.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-20centsimplebw.pdf
new file mode 100644
index 00000000000..38b77e36715
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-20centsimplebw.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-20euro.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-20euro.pdf
new file mode 100644
index 00000000000..2e3f409943b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-20euro.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-20eurosimple.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-20eurosimple.pdf
new file mode 100644
index 00000000000..4aadb8a293e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-20eurosimple.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-20eurosimplebw.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-20eurosimplebw.pdf
new file mode 100644
index 00000000000..a855a3128cc
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-20eurosimplebw.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-2cent.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-2cent.pdf
new file mode 100644
index 00000000000..cee0ca1ffa1
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-2cent.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-2centsimple.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-2centsimple.pdf
new file mode 100644
index 00000000000..e68cc465607
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-2centsimple.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-2centsimplebw.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-2centsimplebw.pdf
new file mode 100644
index 00000000000..2857426e694
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-2centsimplebw.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-2euro.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-2euro.pdf
new file mode 100644
index 00000000000..02ad7cd0e54
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-2euro.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-2eurosimple.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-2eurosimple.pdf
new file mode 100644
index 00000000000..85ee0ccdbad
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-2eurosimple.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-2eurosimplebw.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-2eurosimplebw.pdf
new file mode 100644
index 00000000000..bc3d2d84474
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-2eurosimplebw.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-500euro.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-500euro.pdf
new file mode 100644
index 00000000000..7c2c721a4e8
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-500euro.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-500eurosimple.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-500eurosimple.pdf
new file mode 100644
index 00000000000..719d51c8e70
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-500eurosimple.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-500eurosimplebw.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-500eurosimplebw.pdf
new file mode 100644
index 00000000000..0d1bba9565a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-500eurosimplebw.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-50cent.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-50cent.pdf
new file mode 100644
index 00000000000..12d3a85bd96
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-50cent.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-50centsimple.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-50centsimple.pdf
new file mode 100644
index 00000000000..6fee6a828a0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-50centsimple.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-50centsimplebw.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-50centsimplebw.pdf
new file mode 100644
index 00000000000..65776d5d24d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-50centsimplebw.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-50euro.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-50euro.pdf
new file mode 100644
index 00000000000..9d262592879
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-50euro.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-50eurosimple.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-50eurosimple.pdf
new file mode 100644
index 00000000000..08b128d03f0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-50eurosimple.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-50eurosimplebw.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-50eurosimplebw.pdf
new file mode 100644
index 00000000000..dc2c5acbcf7
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-50eurosimplebw.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-5cent.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-5cent.pdf
new file mode 100644
index 00000000000..dfd4c98914b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-5cent.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-5centsimple.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-5centsimple.pdf
new file mode 100644
index 00000000000..c8c4fa6dafa
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-5centsimple.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-5centsimplebw.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-5centsimplebw.pdf
new file mode 100644
index 00000000000..f108cf065f6
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-5centsimplebw.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-5euro.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-5euro.pdf
new file mode 100644
index 00000000000..9fdb0301b27
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-5euro.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-5eurosimple.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-5eurosimple.pdf
new file mode 100644
index 00000000000..5608fd30856
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-5eurosimple.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney-5eurosimplebw.pdf b/Master/texmf-dist/tex/latex/euromoney/euromoney-5eurosimplebw.pdf
new file mode 100644
index 00000000000..a670f2ac2fb
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney-5eurosimplebw.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/euromoney/euromoney.sty b/Master/texmf-dist/tex/latex/euromoney/euromoney.sty
new file mode 100644
index 00000000000..b49337f4129
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/euromoney/euromoney.sty
@@ -0,0 +1,549 @@
+% Author : C. Pierquet
+% licence : Released under the LaTeX Project Public License v1.3c
+% or later, see http://www.latex-project.org/lppl.txtf
+% pdf from domain public svg (user frankes in openclipart), see https://openclipart.org/artist/frankes
+
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{euromoney}[2024/09/07 0.1.1 Insert Euro coins and banknotes]
+
+%------History
+% 0.1.1 New filenames, according to TL rules
+% 0.1.0 Initial version
+
+%------Packages
+\RequirePackage{xstring}
+\RequirePackage{simplekv}
+\RequirePackage{graphicx}
+\RequirePackage{tikz}
+\usetikzlibrary{calc}
+\RequirePackage{listofitems}
+
+%------Lengths
+\newlength{\tmphautmonnaies}
+\setlength{\tmphautmonnaies}{1em}
+\newlength{\tmpoffsethmonnaies}
+\setlength{\tmpoffsethmonnaies}{0pt}
+\newlength{\tmpoffsetvmonnaies}
+\setlength{\tmpoffsetvmonnaies}{5mm}
+
+%------Keys [fr]
+\defKV[Monnaies]{%
+ HauteurRef=\setlength{\tmphautmonnaies}{#1},%
+ Style=\def\piecebilletstyle{#1},%
+ DecalH=\setlength{\tmpoffsethmonnaies}{#1},%
+ DecalV=\setlength{\tmpoffsetvmonnaies}{#1},%
+ Empilage=\def\piecebilletempilage{#1},%
+ Angle=\def\piecebilletrotation{#1}
+}
+
+\setKVdefault[Monnaies]{%
+ HauteurRef=2cm,%
+ Style=simple,%
+ HauteurAuto=false,%
+ DecalH=0pt,%
+ DecalV=5mm,%
+ Empilage=H,%
+ Angle=10
+}
+
+%------Keys [en]
+\defKV[Moneys]{%
+ RefHeight=\setlength{\tmphautmonnaies}{#1},%
+ Style=\def\piecebilletstyle{#1},%
+ OffsetH=\setlength{\tmpoffsethmonnaies}{#1},%
+ OffsetV=\setlength{\tmpoffsetvmonnaies}{#1},%
+ Stack=\def\piecebilletempilage{#1},%
+ Angle=\def\piecebilletrotation{#1}
+}
+
+\setKVdefault[Moneys]{%
+ RefHeight=2cm,%
+ Style=simple,%
+ AutoHeight=false,%
+ OffsetH=0pt,%
+ OffsetV=5mm,%
+ Stack=H,%
+ Angle=10
+}
+
+%-----Macros billet(s) [fr]
+\NewDocumentCommand\BilletEuro{ D<>{} O{} m }{%
+ \restoreKV[Monnaies]%
+ \setKV[Monnaies]{#1}%
+ \IfStrEqCase{\piecebilletstyle}{%
+ {simple}{\def\monnaiessuffixe{simple}}%
+ {full}{\def\monnaiessuffixe{}}%
+ {nb}{\def\monnaiessuffixe{simplebw}}%
+ }%
+ \includegraphics[#2]{euromoney-#3euro\monnaiessuffixe}%
+}
+
+\NewDocumentCommand\BilletsEuro{ O{} m }{%
+ \restoreKV[Monnaies]%
+ \setKV[Monnaies]{#1}%
+ \IfStrEqCase{\piecebilletstyle}{%
+ {simple}{\def\monnaiessuffixe{simple}}%
+ {full}{\def\monnaiessuffixe{}}%
+ {nb}{\def\monnaiessuffixe{simplebw}}%
+ }%
+ %affichage
+ \IfStrEq{\piecebilletempilage}{H}%empilage vertical
+ {%
+ \setsepchar{+}%
+ \readlist*\listetmppieces{#2}%
+ \xdef\nbempilagespieces{\listetmppieceslen}%
+ \ifdim\tmpoffsethmonnaies=0pt\relax%
+ \foreach \i in {1,...,\listetmppieceslen}{%
+ %on découpe l'empilage
+ \itemtomacro\listetmppieces[\i]{\tmpempilpieces}%
+ \IfSubStr{\tmpempilpieces}{*}%
+ {%
+ \StrCut{\tmpempilpieces}{*}{\tmpnbpieces}{\tmptypepieces}%
+ }%
+ {%
+ \xdef\tmpnbpieces{1}%
+ \xdef\tmptypepieces{\tmpempilpieces}%
+ }%
+ \IfStrEqCase{\tmptypepieces}{%
+ {500}{\def\monnaiessomme{500euro}}%
+ {200}{\def\monnaiessomme{200euro}}%
+ {100}{\def\monnaiessomme{100euro}}%
+ {50}{\def\monnaiessomme{50euro}}%
+ {20}{\def\monnaiessomme{20euro}}%
+ {10}{\def\monnaiessomme{10euro}}%
+ {5}{\def\monnaiessomme{5euro}}%
+ }%
+ \ifboolKV[Monnaies]{HauteurAuto}%
+ {%
+ \IfStrEqCase{\tmptypepieces}{%
+ {500}{\def\monnaiesechellerelative{1}}%
+ {200}{\def\monnaiesechellerelative{1}}%
+ {100}{\def\monnaiesechellerelative{1}}%
+ {50}{\def\monnaiesechellerelative{0.9390}}%
+ {20}{\def\monnaiesechellerelative{0.8780}}%
+ {10}{\def\monnaiesechellerelative{0.8171}}%
+ {5}{\def\monnaiesechellerelative{0.7561}}%
+ }%
+ }%
+ {%
+ \def\monnaiesechellerelative{1}%
+ }%
+ \begin{tikzpicture}
+ \foreach \i in {1,...,\tmpnbpieces}{%
+ \draw (0,{(\i-1)*\tmpoffsetvmonnaies}) node[anchor=south west,inner sep=0pt] {\includegraphics[height=\dimexpr\monnaiesechellerelative\tmphautmonnaies\relax]{euromoney-\monnaiessomme\monnaiessuffixe}} ;%
+ }%
+ \end{tikzpicture}%
+ }%
+ \else%
+ \begin{tikzpicture}
+ \foreach \i in {1,...,\listetmppieceslen}{%
+ %on découpe l'empilage
+ \itemtomacro\listetmppieces[\i]{\tmpempilpieces}%
+ \IfSubStr{\tmpempilpieces}{*}%
+ {%
+ \StrCut{\tmpempilpieces}{*}{\tmpnbpieces}{\tmptypepieces}%
+ }%
+ {%
+ \xdef\tmpnbpieces{1}\xdef\tmptypepieces{\tmpempilpieces}%
+ }%
+ \IfStrEqCase{\tmptypepieces}{%
+ {500}{\def\monnaiessomme{500euro}}%
+ {200}{\def\monnaiessomme{200euro}}%
+ {100}{\def\monnaiessomme{100euro}}%
+ {50}{\def\monnaiessomme{50euro}}%
+ {20}{\def\monnaiessomme{20euro}}%
+ {10}{\def\monnaiessomme{10euro}}%
+ {5}{\def\monnaiessomme{5euro}}%
+ }%
+ \ifboolKV[Monnaies]{HauteurAuto}%
+ {%
+ \IfStrEqCase{\tmptypepieces}{%
+ {500}{\def\monnaiesechellerelative{1}}%
+ {200}{\def\monnaiesechellerelative{1}}%
+ {100}{\def\monnaiesechellerelative{1}}%
+ {50}{\def\monnaiesechellerelative{0.9390}}%
+ {20}{\def\monnaiesechellerelative{0.8780}}%
+ {10}{\def\monnaiesechellerelative{0.8171}}%
+ {5}{\def\monnaiesechellerelative{0.7561}}%
+ }%
+ }%
+ {%
+ \def\monnaiesechellerelative{1}%
+ }%
+ \foreach \ii in {1,...,\tmpnbpieces}{%
+ \draw ({(\i-1)*\tmpoffsethmonnaies},{(\ii-1)*\tmpoffsetvmonnaies}) node[anchor=south west,inner sep=0pt] {\includegraphics[height=\dimexpr\monnaiesechellerelative\tmphautmonnaies\relax]{euromoney-\monnaiessomme\monnaiessuffixe}} ;%
+ }%
+ }%
+ \end{tikzpicture}%
+ \fi%
+ }%
+ {}%
+ \IfStrEq{\piecebilletempilage}{eventail}%empilage eventail
+ {%
+ \setsepchar{+}%
+ \readlist*\listbilletseventail{#2}%
+ \xdef\nbeventailbillets{\listbilletseventaillen}%
+ \begin{tikzpicture}
+ \foreach \i in {1,...,\nbeventailbillets}{%
+ \itemtomacro\listbilletseventail[\i]{\tmpempilpieces}%
+ \IfStrEqCase{\tmpempilpieces}{%
+ {500}{\def\monnaiesechellerelative{1}}%
+ {200}{\def\monnaiesechellerelative{1}}%
+ {100}{\def\monnaiesechellerelative{1}}%
+ {50}{\def\monnaiesechellerelative{0.9390}}%
+ {20}{\def\monnaiesechellerelative{0.8780}}%
+ {10}{\def\monnaiesechellerelative{0.8171}}%
+ {5}{\def\monnaiesechellerelative{0.7561}}%
+ }%
+ \IfStrEqCase{\tmpempilpieces}{%
+ {500}{\def\monnaiessomme{500euro}}%
+ {200}{\def\monnaiessomme{200euro}}%
+ {100}{\def\monnaiessomme{100euro}}%
+ {50}{\def\monnaiessomme{50euro}}%
+ {20}{\def\monnaiessomme{20euro}}%
+ {10}{\def\monnaiessomme{10euro}}%
+ {5}{\def\monnaiessomme{5euro}}%
+ }%
+ \ifboolKV[Monnaies]{HauteurAuto}%
+ {%
+ \IfStrEqCase{\tmpempilpieces}{%
+ {500}{\def\monnaiesechellerelative{1}}%
+ {200}{\def\monnaiesechellerelative{1}}%
+ {100}{\def\monnaiesechellerelative{1}}%
+ {50}{\def\monnaiesechellerelative{0.9390}}%
+ {20}{\def\monnaiesechellerelative{0.8780}}%
+ {10}{\def\monnaiesechellerelative{0.8171}}%
+ {5}{\def\monnaiesechellerelative{0.7561}}%
+ }%
+ }%
+ {%
+ \def\monnaiesechellerelative{1}%
+ }%
+ \draw ({-\i*\tmpoffsethmonnaies},{-\i*\tmpoffsetvmonnaies}) node[above right=0pt,inner sep=0pt,outer sep=0pt,rotate={\fpeval{90-0.5*\piecebilletrotation*\nbeventailbillets+(\i-1)*\piecebilletrotation}}] {\includegraphics[height=\dimexpr\monnaiesechellerelative\tmphautmonnaies\relax]{euromoney-\monnaiessomme\monnaiessuffixe}} ;%
+ }%
+ \end{tikzpicture}%
+ }%
+ {}%
+}
+
+%-----Macros billet(s) [en]
+\NewDocumentCommand\EuroBanknote{ D<>{} O{} m }{%
+ \restoreKV[Moneys]%
+ \setKV[Moneys]{#1}%
+ \IfStrEqCase{\piecebilletstyle}{%
+ {simple}{\def\monnaiessuffixe{simple}}%
+ {full}{\def\monnaiessuffixe{}}%
+ {bw}{\def\monnaiessuffixe{simplebw}}%
+ }%
+ \includegraphics[#2]{#3euro\monnaiessuffixe}%
+}
+
+\NewDocumentCommand\EuroBanknotes{ O{} m }{%
+ \restoreKV[Moneys]%
+ \setKV[Moneys]{#1}%
+ \IfStrEqCase{\piecebilletstyle}{%
+ {simple}{\def\monnaiessuffixe{simple}}%
+ {full}{\def\monnaiessuffixe{}}%
+ {bw}{\def\monnaiessuffixe{simplebw}}%
+ }%
+ %affichage
+ \IfStrEq{\piecebilletempilage}{H}%empilage vertical
+ {%
+ \setsepchar{+}%
+ \readlist*\listetmppieces{#2}%
+ \xdef\nbempilagespieces{\listetmppieceslen}%
+ \ifdim\tmpoffsethmonnaies=0pt\relax%
+ \foreach \i in {1,...,\listetmppieceslen}{%
+ %on découpe l'empilage
+ \itemtomacro\listetmppieces[\i]{\tmpempilpieces}%
+ \IfSubStr{\tmpempilpieces}{*}%
+ {%
+ \StrCut{\tmpempilpieces}{*}{\tmpnbpieces}{\tmptypepieces}%
+ }%
+ {%
+ \xdef\tmpnbpieces{1}%
+ \xdef\tmptypepieces{\tmpempilpieces}%
+ }%
+ \IfStrEqCase{\tmptypepieces}{%
+ {500}{\def\monnaiessomme{500euro}}%
+ {200}{\def\monnaiessomme{200euro}}%
+ {100}{\def\monnaiessomme{100euro}}%
+ {50}{\def\monnaiessomme{50euro}}%
+ {20}{\def\monnaiessomme{20euro}}%
+ {10}{\def\monnaiessomme{10euro}}%
+ {5}{\def\monnaiessomme{5euro}}%
+ }%
+ \ifboolKV[Moneys]{AutoHeight}%
+ {%
+ \IfStrEqCase{\tmptypepieces}{%
+ {500}{\def\monnaiesechellerelative{1}}%
+ {200}{\def\monnaiesechellerelative{1}}%
+ {100}{\def\monnaiesechellerelative{1}}%
+ {50}{\def\monnaiesechellerelative{0.9390}}%
+ {20}{\def\monnaiesechellerelative{0.8780}}%
+ {10}{\def\monnaiesechellerelative{0.8171}}%
+ {5}{\def\monnaiesechellerelative{0.7561}}%
+ }%
+ }%
+ {%
+ \def\monnaiesechellerelative{1}%
+ }%
+ \begin{tikzpicture}
+ \foreach \i in {1,...,\tmpnbpieces}{%
+ \draw (0,{(\i-1)*\tmpoffsetvmonnaies}) node[anchor=south west,inner sep=0pt] {\includegraphics[height=\dimexpr\monnaiesechellerelative\tmphautmonnaies\relax]{euromoney-\monnaiessomme\monnaiessuffixe}} ;%
+ }%
+ \end{tikzpicture}%
+ }%
+ \else%
+ \begin{tikzpicture}
+ \foreach \i in {1,...,\listetmppieceslen}{%
+ %on découpe l'empilage
+ \itemtomacro\listetmppieces[\i]{\tmpempilpieces}%
+ \IfSubStr{\tmpempilpieces}{*}%
+ {%
+ \StrCut{\tmpempilpieces}{*}{\tmpnbpieces}{\tmptypepieces}%
+ }%
+ {%
+ \xdef\tmpnbpieces{1}\xdef\tmptypepieces{\tmpempilpieces}%
+ }%
+ \IfStrEqCase{\tmptypepieces}{%
+ {500}{\def\monnaiessomme{500euro}}%
+ {200}{\def\monnaiessomme{200euro}}%
+ {100}{\def\monnaiessomme{100euro}}%
+ {50}{\def\monnaiessomme{50euro}}%
+ {20}{\def\monnaiessomme{20euro}}%
+ {10}{\def\monnaiessomme{10euro}}%
+ {5}{\def\monnaiessomme{5euro}}%
+ }%
+ \ifboolKV[Moneys]{AutoHeight}%
+ {%
+ \IfStrEqCase{\tmptypepieces}{%
+ {500}{\def\monnaiesechellerelative{1}}%
+ {200}{\def\monnaiesechellerelative{1}}%
+ {100}{\def\monnaiesechellerelative{1}}%
+ {50}{\def\monnaiesechellerelative{0.9390}}%
+ {20}{\def\monnaiesechellerelative{0.8780}}%
+ {10}{\def\monnaiesechellerelative{0.8171}}%
+ {5}{\def\monnaiesechellerelative{0.7561}}%
+ }%
+ }%
+ {%
+ \def\monnaiesechellerelative{1}%
+ }%
+ \foreach \ii in {1,...,\tmpnbpieces}{%
+ \draw ({(\i-1)*\tmpoffsethmonnaies},{(\ii-1)*\tmpoffsetvmonnaies}) node[anchor=south west,inner sep=0pt] {\includegraphics[height=\dimexpr\monnaiesechellerelative\tmphautmonnaies\relax]{euromoney-\monnaiessomme\monnaiessuffixe}} ;%
+ }%
+ }%
+ \end{tikzpicture}%
+ \fi%
+ }%
+ {}%
+ \IfStrEq{\piecebilletempilage}{fan}%empilage eventail
+ {%
+ \setsepchar{+}%
+ \readlist*\listbilletseventail{#2}%
+ \xdef\nbeventailbillets{\listbilletseventaillen}%
+ \begin{tikzpicture}
+ \foreach \i in {1,...,\nbeventailbillets}{%
+ \itemtomacro\listbilletseventail[\i]{\tmpempilpieces}%
+ \IfStrEqCase{\tmpempilpieces}{%
+ {500}{\def\monnaiesechellerelative{1}}%
+ {200}{\def\monnaiesechellerelative{1}}%
+ {100}{\def\monnaiesechellerelative{1}}%
+ {50}{\def\monnaiesechellerelative{0.9390}}%
+ {20}{\def\monnaiesechellerelative{0.8780}}%
+ {10}{\def\monnaiesechellerelative{0.8171}}%
+ {5}{\def\monnaiesechellerelative{0.7561}}%
+ }%
+ \IfStrEqCase{\tmpempilpieces}{%
+ {500}{\def\monnaiessomme{500euro}}%
+ {200}{\def\monnaiessomme{200euro}}%
+ {100}{\def\monnaiessomme{100euro}}%
+ {50}{\def\monnaiessomme{50euro}}%
+ {20}{\def\monnaiessomme{20euro}}%
+ {10}{\def\monnaiessomme{10euro}}%
+ {5}{\def\monnaiessomme{5euro}}%
+ }%
+ \ifboolKV[Moneys]{AutoHeight}%
+ {%
+ \IfStrEqCase{\tmpempilpieces}{%
+ {500}{\def\monnaiesechellerelative{1}}%
+ {200}{\def\monnaiesechellerelative{1}}%
+ {100}{\def\monnaiesechellerelative{1}}%
+ {50}{\def\monnaiesechellerelative{0.9390}}%
+ {20}{\def\monnaiesechellerelative{0.8780}}%
+ {10}{\def\monnaiesechellerelative{0.8171}}%
+ {5}{\def\monnaiesechellerelative{0.7561}}%
+ }%
+ }%
+ {%
+ \def\monnaiesechellerelative{1}%
+ }%
+ \draw ({-\i*\tmpoffsethmonnaies},{-\i*\tmpoffsetvmonnaies}) node[above right=0pt,inner sep=0pt,outer sep=0pt,rotate={\fpeval{90-0.5*\piecebilletrotation*\nbeventailbillets+(\i-1)*\piecebilletrotation}}] {\includegraphics[height=\dimexpr\monnaiesechellerelative\tmphautmonnaies\relax]{euromoney-\monnaiessomme\monnaiessuffixe}} ;%
+ }%
+ \end{tikzpicture}%
+ }%
+ {}%
+}
+
+%-----Macro pièces [fr]
+\NewDocumentCommand\PiecesEuro{ O{} m }{%
+ \restoreKV[Monnaies]%
+ \setKV[Monnaies]{#1}%
+ \IfStrEqCase{\piecebilletstyle}{%
+ {simple}{\def\monnaiessuffixe{simple}}%
+ {full}{\def\monnaiessuffixe{}}%
+ {nb}{\def\monnaiessuffixe{simplebw}}%
+ }%
+ %boucle
+ \setsepchar{+}%
+ \readlist*\listetmppieces{#2}%
+ \xdef\nbempilagespieces{\listetmppieceslen}%
+ \foreach \i in {1,...,\listetmppieceslen}{%
+ %on découpe l'empilage
+ \itemtomacro\listetmppieces[\i]{\tmpempilpieces}%
+ \IfSubStr{\tmpempilpieces}{*}%
+ {%
+ \StrCut{\tmpempilpieces}{*}{\tmpnbpieces}{\tmptypepieces}%
+ }%
+ {%
+ \xdef\tmptypepieces{\tmpempilpieces}%
+ }%
+ \IfStrEqCase{\tmptypepieces}{%
+ {2}{\def\monnaiessomme{2euro}}%
+ {1}{\def\monnaiessomme{1euro}}%
+ {0.5}{\def\monnaiessomme{50cent}}%
+ {0.2}{\def\monnaiessomme{20cent}}%
+ {0.1}{\def\monnaiessomme{10cent}}%
+ {0.05}{\def\monnaiessomme{5cent}}%
+ {0.02}{\def\monnaiessomme{2cent}}%
+ {0.01}{\def\monnaiessomme{1cent}}%
+ }%
+ \ifboolKV[Monnaies]{HauteurAuto}%
+ {%
+ \IfStrEqCase{\tmptypepieces}{%
+ {2}{\def\monnaiesechellerelative{1}}%
+ {1}{\def\monnaiesechellerelative{0.9029}}%
+ {0.5}{\def\monnaiesechellerelative{0.9417}}%
+ {0.2}{\def\monnaiesechellerelative{0.8641}}%
+ {0.1}{\def\monnaiesechellerelative{0.7670}}%
+ {0.05}{\def\monnaiesechellerelative{0.8252}}%
+ {0.02}{\def\monnaiesechellerelative{0.7282}}%
+ {0.01}{\def\monnaiesechellerelative{0.6311}}%
+ }%
+ }%
+ {%
+ \def\monnaiesechellerelative{1}%
+ }%
+ %affichage
+ \IfStrEq{\piecebilletempilage}{H}%
+ {%
+ \IfSubStr{\tmpempilpieces}{*}%
+ {%
+ \includegraphics[height=\dimexpr\monnaiesechellerelative\tmphautmonnaies\relax]{euromoney-\monnaiessomme\monnaiessuffixe}%
+ \ifnum\tmpnbpieces=1\else%
+ \foreach \i in {1,...,\inteval{\tmpnbpieces-1}}{%
+ \ifdim\tmpoffsethmonnaies>0pt\relax\hspace*{\dimexpr\tmpoffsethmonnaies-\monnaiesechellerelative\tmphautmonnaies\relax}\fi%
+ \includegraphics[height=\dimexpr\monnaiesechellerelative\tmphautmonnaies\relax]{euromoney-\monnaiessomme\monnaiessuffixe}%
+ }%
+ \fi%
+ }%
+ {%
+ \includegraphics[height=\dimexpr\monnaiesechellerelative\tmphautmonnaies\relax]{euromoney-\monnaiessomme\monnaiessuffixe}%
+ }%
+ \ifnum\i<\listetmppieceslen%
+ \ifdim\tmpoffsethmonnaies>0pt\relax\hspace*{\dimexpr\tmpoffsethmonnaies-\monnaiesechellerelative\tmphautmonnaies\relax}%
+ \fi%
+ \fi%
+ }%
+ {%
+ \begin{tikzpicture}
+ \foreach \i in {1,...,\tmpnbpieces}{%
+ \draw (0,{(\i-1)*\tmpoffsetvmonnaies}) node[inner sep=0pt] {\includegraphics[height=\dimexpr\monnaiesechellerelative\tmphautmonnaies\relax]{euromoney-\monnaiessomme\monnaiessuffixe}} ;%
+ }%
+ \end{tikzpicture}%
+ }%
+ }%
+}
+
+%-----Macro pièces [en]
+\NewDocumentCommand\EuroCoins{ O{} m }{%
+ \restoreKV[Moneys]%
+ \setKV[Moneys]{#1}%
+ \IfStrEqCase{\piecebilletstyle}{%
+ {simple}{\def\monnaiessuffixe{simple}}%
+ {full}{\def\monnaiessuffixe{}}%
+ {bw}{\def\monnaiessuffixe{simplebw}}%
+ }%
+ %boucle
+ \setsepchar{+}%
+ \readlist*\listetmppieces{#2}%
+ \xdef\nbempilagespieces{\listetmppieceslen}%
+ \foreach \i in {1,...,\listetmppieceslen}{%
+ %on découpe l'empilage
+ \itemtomacro\listetmppieces[\i]{\tmpempilpieces}%
+ \IfSubStr{\tmpempilpieces}{*}%
+ {%
+ \StrCut{\tmpempilpieces}{*}{\tmpnbpieces}{\tmptypepieces}%
+ }%
+ {%
+ \xdef\tmptypepieces{\tmpempilpieces}%
+ }%
+ \IfStrEqCase{\tmptypepieces}{%
+ {2}{\def\monnaiessomme{2euro}}%
+ {1}{\def\monnaiessomme{1euro}}%
+ {0.5}{\def\monnaiessomme{50cent}}%
+ {0.2}{\def\monnaiessomme{20cent}}%
+ {0.1}{\def\monnaiessomme{10cent}}%
+ {0.05}{\def\monnaiessomme{5cent}}%
+ {0.02}{\def\monnaiessomme{2cent}}%
+ {0.01}{\def\monnaiessomme{1cent}}%
+ }%
+ \ifboolKV[Moneys]{AutoHeight}%
+ {%
+ \IfStrEqCase{\tmptypepieces}{%
+ {2}{\def\monnaiesechellerelative{1}}%
+ {1}{\def\monnaiesechellerelative{0.9029}}%
+ {0.5}{\def\monnaiesechellerelative{0.9417}}%
+ {0.2}{\def\monnaiesechellerelative{0.8641}}%
+ {0.1}{\def\monnaiesechellerelative{0.7670}}%
+ {0.05}{\def\monnaiesechellerelative{0.8252}}%
+ {0.02}{\def\monnaiesechellerelative{0.7282}}%
+ {0.01}{\def\monnaiesechellerelative{0.6311}}%
+ }%
+ }%
+ {%
+ \def\monnaiesechellerelative{1}%
+ }%
+ %affichage
+ \IfStrEq{\piecebilletempilage}{H}%
+ {%
+ \IfSubStr{\tmpempilpieces}{*}%
+ {%
+ \includegraphics[height=\dimexpr\monnaiesechellerelative\tmphautmonnaies\relax]{euromoney-\monnaiessomme\monnaiessuffixe}%
+ \ifnum\tmpnbpieces=1\else%
+ \foreach \i in {1,...,\inteval{\tmpnbpieces-1}}{%
+ \ifdim\tmpoffsethmonnaies>0pt\relax\hspace*{\dimexpr\tmpoffsethmonnaies-\monnaiesechellerelative\tmphautmonnaies\relax}\fi%
+ \includegraphics[height=\dimexpr\monnaiesechellerelative\tmphautmonnaies\relax]{euromoney-\monnaiessomme\monnaiessuffixe}%
+ }%
+ \fi%
+ }%
+ {%
+ \includegraphics[height=\dimexpr\monnaiesechellerelative\tmphautmonnaies\relax]{euromoney-\monnaiessomme\monnaiessuffixe}%
+ }%
+ \ifnum\i<\listetmppieceslen%
+ \ifdim\tmpoffsethmonnaies>0pt\relax\hspace*{\dimexpr\tmpoffsethmonnaies-\monnaiesechellerelative\tmphautmonnaies\relax}%
+ \fi%
+ \fi%
+ }%
+ {%
+ \begin{tikzpicture}
+ \foreach \i in {1,...,\tmpnbpieces}{%
+ \draw (0,{(\i-1)*\tmpoffsetvmonnaies}) node[inner sep=0pt] {\includegraphics[height=\dimexpr\monnaiesechellerelative\tmphautmonnaies\relax]{euromoney-\monnaiessomme\monnaiessuffixe}} ;%
+ }%
+ \end{tikzpicture}%
+ }%
+ }%
+}
+
+\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/ezedits/ezedits.sty b/Master/texmf-dist/tex/latex/ezedits/ezedits.sty
new file mode 100644
index 00000000000..94a7b3bd5c5
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/ezedits/ezedits.sty
@@ -0,0 +1,221 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% ezedits.sty
+%% Copyright 2024 J. A. Smiga
+%
+% 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 J. A. Smiga.
+%
+% This work consists of the file ezedits.sty
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%% This package was written by Joseph A. Smiga <joseph.smiga@rochester.edu>
+%% Originally developed ca. 2018, this has been refined over the years.
+%%
+%% Some useful commands: (not up to date, see documentation)
+%% Included are a set of commands to generate comments for a LaTeX file.
+%%
+%% This package requires the following standard packages:
+%% ulem: for \sout
+%% xcolor: for coloring text.
+%% pdfcomment: if pdfcomment option is used
+%%
+%% Options are:
+%% arrows: add arrows pointing to edits in margins (in captions, a pair of arrows are added, instead).
+%% accept: accept all edits (arrows still appear).
+%% pdfcomments: write edits as pdf annotations (arrows still appear).
+
+
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{ezedits}[2024/09/12]
+
+% \RequirePackage{xcolor}
+
+\newif\if@accept\@acceptfalse % accept all comments (does not suppress package warnings)
+\newif\if@pdfcomm\@pdfcommfalse % write pdf comments
+\newif\if@showarrows\@showarrowsfalse
+\newif\if@importulem\@importulemtrue
+
+\DeclareOption{accept}{
+ \@accepttrue
+}
+\DeclareOption{pdfcomment}{ % add pdf comments
+ \@pdfcommtrue
+ \AtEndOfPackage{\RequirePackage{pdfcomment}}
+}
+\DeclareOption{arrows}{ % point to edits with arrows in the margin
+ \@showarrowstrue
+ \AtEndOfPackage{\RequirePackage{marginnote}}
+}
+\DeclareOption{nosout}{ % do not crossout deleted text
+ \@importulemfalse
+}
+
+\ProcessOptions\relax
+
+\if@importulem
+ \RequirePackage[normalem]{ulem}% import ulem (for sout)
+ % update \sout to work better with \cite
+ \let\old@cite\cite% remember original
+ \def\new@cite#1{\mbox{\old@cite{#1}}}% put cite in mbox
+ \def\new@sout#1{\let\cite\new@cite\sout{#1}\let\cite\old@cite}% redefine sout
+\else
+ \def\new@sout{}% do nothing
+\fi
+
+%% edit record
+\newcounter{ez@editcount}
+\newcounter{ez@totalcount}
+\gdef\ez@editrecord{}
+\newcommand{\ez@addeditpage}{%
+ \ifx\ez@lastpage\undefined% first edit
+ \xdef\ez@lastpage{\thepage}% initialize "last page" variable
+ % counter starts at 0, so it does not need to be updated
+ \else% 2nd+ edit
+ \if\ez@lastpage\thepage% same page as last edit
+ \relax% handled after if
+ \else% new page
+ % add record
+ \xdef\ez@editrecord{\ez@editrecord \ez@lastpage & \arabic{ez@editcount} \\}%
+ % reset counter/page number
+ \setcounter{ez@editcount}{0}%
+ \xdef\ez@lastpage{\thepage}%
+ \fi%
+ \fi%
+ % Note stepping needs to be "protected" (counters do not always like being changed, since this can mess up, e.g., TOC)
+ \protect\stepcounter{ez@editcount}% update counter
+ \protect\stepcounter{ez@totalcount}%
+}
+%TODO there is an issue with \thepage not always being accurate
+% Possible solution: use \label{} (with generated unique labels) and \pageref{} instead of \thepage.
+% -> This solution may cause out-of-order problems with floating images.
+
+\newcommand{\makeeditreport}{%
+ \begin{tabular}{l|r}
+ %\hline\hline
+ Page & \# edits/notes \\
+ \hline
+ \ifx\ez@lastpage\undefined
+ \relax% no edits
+ \else%
+ \ez@editrecord
+ \ez@lastpage & \arabic{ez@editcount}% current state
+ \fi \\
+ \hline
+ Total & \arabic{ez@totalcount}
+ %\hline\hline
+ \end{tabular}
+}
+
+% Style of \draftnote (may be a better way to write this)
+\newcommand{\@draftstyle}[1]{
+ {\ttfamily%
+ \ifx\textcolor\undefined%
+ #1%
+ \else%
+ \textcolor{red}{#1}%
+ \fi}%
+}
+% let user change the style
+\newcommand{\setnotestyle}[1]{\let\@draftstyle#1}
+
+%% Editing commands
+\newcommand{\draftnote}[1]{%
+ \PackageWarning{ezedits}{Unresolved note: #1}%
+ \ez@addeditpage{}% update record
+ \if@showarrows%
+ \@ifundefined{@captype}%
+ {\marginnote{\@draftstyle{$\Longleftarrow$}}}%
+ {\@draftstyle{$\Longrightarrow$}}%
+ \fi%
+ \if@accept{}\relax\else%
+ \if@pdfcomm%
+ \pdfmargincomment{#1}%
+ \else%
+ \@draftstyle{[#1]}%
+ \fi%
+ \fi%
+ \if@showarrows% if in caption, draw end arrow
+ \@ifundefined{@captype}{}{\@draftstyle{$\Longleftarrow$}}%
+ \fi%
+}
+
+\newcommand{\defineEdit}[3]{%
+ % "\###Edit" for removing and adding text
+ \expandafter\newcommand\csname #1Edit\endcsname[2]{%
+ \PackageWarning{ezedits}{Unresolved modifications by #1: "##1" ---> "##2"}%
+ \ez@addeditpage{}% update record
+ \if@showarrows%
+ \@ifundefined{@captype}%
+ {\marginnote{{#3{$\Longleftarrow$}}}}%
+ {{#3{$\Longrightarrow$}}}%
+ \fi%
+ \if@accept% Display as if accepted
+ ##2%
+ \else%
+ \if@pdfcomm%
+ \pdfmarkupcomment[author=#1,markup=StrikeOut]{##1{$_\wedge$}}{##2}%
+ \else%
+ {#2{\new@sout{##1}}}{#3{##2}}%
+ \fi%
+ \fi%
+ \if@showarrows% if in caption, draw end arrow
+ \@ifundefined{@captype}{}{{#3{$\Longleftarrow$}}}%
+ \fi%
+ }%
+ % "\###Ins" for adding text
+ \expandafter\newcommand\csname #1Ins\endcsname[1]{%
+ \ez@addeditpage{}% update record
+ \PackageWarning{ezedits}{Unresolved modifications by #1: "##1" inserted.}%
+ \if@showarrows%
+ \@ifundefined{@captype}%
+ {\marginnote{{#3{$\Longleftarrow$}}}}%
+ {{#3{$\Longrightarrow$}}}%
+ \fi%
+ \if@accept% Display as if accepted
+ ##1%
+ \else%
+ \if@pdfcomm%
+ % \pdfcomment[author=#1,icon=Insert]{##1}%
+ \pdfmarkupcomment[author=#1,markup=Underline]{$_\wedge$}{##1}%
+ \else%
+ {#3{##1}}%
+ \fi%
+ \fi%
+ \if@showarrows% if in caption, draw end arrow
+ \@ifundefined{@captype}{}{{#3{$\Longleftarrow$}}}%
+ \fi%
+ }%
+ % "\###Del" for removing text
+ \expandafter\newcommand\csname #1Del\endcsname[1]{%
+ \PackageWarning{ezedits}{Unresolved modifications by #1: "##1" removed.}%
+ \ez@addeditpage{}% update record
+ \if@showarrows%
+ \@ifundefined{@captype}%
+ {\marginnote{{#3{$\Longleftarrow$}}}}%
+ {{#3{$\Longrightarrow$}}}%
+ \fi%
+ \if@accept% Display as if accepted
+ {}%
+ \else%
+ \if@pdfcomm%
+ \pdfmarkupcomment[author=#1,markup=StrikeOut,color=red]{##1}{}%
+ \else%
+ {#2{\new@sout{##1}}}%
+ \fi%
+ \fi%
+ \if@showarrows% if in caption, draw end arrow
+ \@ifundefined{@captype}{}{{#3{$\Longleftarrow$}}}%
+ \fi%
+ }%
+}
+
+\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/fancyhdr/extramarks.sty b/Master/texmf-dist/tex/latex/fancyhdr/extramarks.sty
index f42afc04fbd..ab4ea7b0745 100644
--- a/Master/texmf-dist/tex/latex/fancyhdr/extramarks.sty
+++ b/Master/texmf-dist/tex/latex/fancyhdr/extramarks.sty
@@ -21,7 +21,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{extramarks}
- [2024/04/23 v4.2
+ [2024/07/23 v4.3.1
Extra marks for LaTeX]
% Copyright (C) 1994-2024 by Pieter van Oostrum <pieter@vanoostrum.org>
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/Master/texmf-dist/tex/latex/fancyhdr/fancyhdr.sty b/Master/texmf-dist/tex/latex/fancyhdr/fancyhdr.sty
index f6ef0762fcd..9030da7b18c 100644
--- a/Master/texmf-dist/tex/latex/fancyhdr/fancyhdr.sty
+++ b/Master/texmf-dist/tex/latex/fancyhdr/fancyhdr.sty
@@ -21,7 +21,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{fancyhdr}%
- [2024/04/23 v4.2
+ [2024/07/23 v4.3.1
Extensive control of page headers and footers]%
% Copyright (C) 1994-2024 by Pieter van Oostrum <pieter@vanoostrum.org>
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -129,10 +129,6 @@
}%
}
\ProcessOptions*
-\newcommand\f@nch@errmsg[1]{%
- \f@nch@ifundefined{PackageError}{\errmessage{#1}}{\PackageError{fancyhdr}{#1}{}}}
-\newcommand\f@nch@warning[1]{%
- \f@nch@ifundefined{PackageWarning}{\errmessage{#1}}{\PackageWarning{fancyhdr}{#1}{}}}
\newcommand{\f@nch@forc}[3]{\expandafter\f@nchf@rc\expandafter#1\expandafter{#2}{#3}}
\newcommand{\f@nchf@rc}[3]{\def\temp@ty{#2}\ifx\@empty\temp@ty\else
\f@nch@rc#1#2\f@nch@rc{#3}\fi}
@@ -157,7 +153,7 @@
\if@twoside\else
\iff@nch@twoside\else
\if\f@nch@@eo e%
- \f@nch@warning {\string#1's `E' option without twoside option is useless.\MessageBreak
+ \PackageWarning{fancyhdr} {\string#1's `E' option without twoside option is useless.\MessageBreak
Please consider using the `twoside' option}%
\fi\fi\fi
}
@@ -166,8 +162,8 @@
\f@nch@forc\tmpf@ra{#3}%
{\expandafter\f@nch@ifin\tmpf@ra{eolcrhf,EOLCRHF}%
{}{\edef\temp@c{\temp@c\tmpf@ra}}}%
- \ifx\@empty\temp@c\else \f@nch@errmsg{Illegal char `\temp@c' in
- \string#1 argument: [#3]}%
+ \ifx\@empty\temp@c\else \PackageError{fancyhdr}{Illegal char `\temp@c' in
+ \string#1 argument: [#3]}{}%
\fi \f@nch@for\temp@c{#3}%
{\f@nch@default\f@nch@@eo{eo}\temp@c
\f@nch@fancyhf@Echeck{#1}%
@@ -183,8 +179,8 @@
\f@nch@forc\tmpf@ra{#3}%
{\expandafter\f@nch@ifin\tmpf@ra{eolrhf,EOLRHF}%
{}{\edef\temp@c{\temp@c\tmpf@ra}}}%
- \ifx\@empty\temp@c\else \f@nch@errmsg{Illegal char `\temp@c' in
- \string#1 argument: [#3]}%
+ \ifx\@empty\temp@c\else \PackageError{fancyhdr}{Illegal char `\temp@c' in
+ \string#1 argument: [#3]}{}%
\fi \f@nch@for\temp@c{#3}%
{\f@nch@default\f@nch@@eo{eo}\temp@c
\f@nch@fancyhf@Echeck{#1}%
@@ -231,9 +227,25 @@
\let\f@nch@raggedleft\raggedleft
\let\f@nch@raggedright\raggedright
\let\f@nch@centering\centering
-\let\f@nch@everypar\everypar
+\ifdefined\ExplSyntaxOn
+ \ExplSyntaxOn
+ \let\f@nch@everypar\tex_everypar:D
+ \newcommand\f@nch@resetpar{%
+ \f@nch@everypar{}%
+ \cs_set_eq:NN \everypar\tex_everypar:D
+ \cs_set_eq:NN \par \tex_par:D
+ \cs_set_eq:NN \@@par \tex_par:D
+ \cs_set_eq:NN \endgraf \tex_par:D
+ }
+ \ExplSyntaxOff
+\else
+ \let\f@nch@everypar\everypar
+ \newcommand\f@nch@resetpar{%
+ \f@nch@everypar{}%
+ }
+\fi
\newcommand\f@nch@noUppercase[2][]{#2}
-\def\f@nch@reset{\f@nch@everypar{}\restorecr\endlinechar=13
+\def\f@nch@reset{\f@nch@resetpar\restorecr\endlinechar=13
\catcode`\\=0\catcode`\{=1\catcode`\}=2\catcode`\$=3\catcode`\&=4
\catcode`\#=6\catcode`\^=7\catcode`\_=8\catcode`\ =10\catcode`\@=11
\catcode`\:=11\catcode`\~=13\catcode`\%=14
@@ -249,10 +261,8 @@
\expandafter\def\csname MakeUppercase\space\space\space\endcsname
[####1]####2{####2}%
##1}}%
- \f@nch@ifundefined{@newbaseline} % NFSS not present; 2.09 or 2e
- {\f@nch@ifundefined{@normalsize} {\normalsize} % for ucthesis.cls
- {\@normalsize}}%
- {\@newbaseline}% NFSS (2.09) present
+ \f@nch@ifundefined{@normalsize} {\normalsize} % for ucthesis.cls
+ {\@normalsize}%
}
\newcommand*{\fancycenter}[1][1em]{%
\@ifnextchar[{\f@nch@center{#1}}{\f@nch@center{#1}[3]}%
@@ -302,7 +312,7 @@
\ifdim\ht0>#1\relax
\iff@nch@check
\dimen0=#1\advance\dimen0-\ht0
- \f@nch@warning{%
+ \PackageWarning{fancyhdr}{%
\string#1 is too small (\the#1): \MessageBreak
Make it at least \the\ht0, for example:\MessageBreak
\string\setlength{\string#1}{\the\ht0}%
@@ -476,8 +486,8 @@
\def\@makecol{\ifvoid\footins\f@nch@footnotefalse\else\f@nch@footnotetrue\fi
\let\topfloat\@toplist\let\botfloat\@botlist\latex@makecol}%
}
-\newcommand\iftopfloat[2]{\ifx\topfloat\empty #2\else #1\fi}%
-\newcommand\ifbotfloat[2]{\ifx\botfloat\empty #2\else #1\fi}%
+\newcommand\iftopfloat[2]{\ifx\topfloat\@empty #2\else #1\fi}%
+\newcommand\ifbotfloat[2]{\ifx\botfloat\@empty #2\else #1\fi}%
\newcommand\iffloatpage[2]{\if@fcolmade #1\else #2\fi}%
\newcommand\iffootnote[2]{\iff@nch@footnote #1\else #2\fi}%
\newcommand{\fancypagestyle}[1]{%
@@ -485,10 +495,10 @@
}
\long\def\f@nch@pagestyle#1[#2]#3{%
\f@nch@ifundefined{ps@#2}{%
- \f@nch@errmsg{\string\fancypagestyle: Unknown base page style `#2'}%
+ \PackageError{fancyhdr}{\string\fancypagestyle: Unknown base page style `#2'}{}%
}{%
\f@nch@ifundefined{f@nch@ps@#2-is-fancyhdr}{%
- \f@nch@errmsg{\string\fancypagestyle: Base page style `#2' is not fancyhdr-based}%
+ \PackageError{fancyhdr}{\string\fancypagestyle: Base page style `#2' is not fancyhdr-based}{}%
}%
{%
\@namedef{ps@#1}{\let\f@nch@gbl\relax\@nameuse{ps@#2}#3\relax}%
diff --git a/Master/texmf-dist/tex/latex/fillwith/fillwith.sty b/Master/texmf-dist/tex/latex/fillwith/fillwith.sty
new file mode 100644
index 00000000000..9e15d13bf81
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/fillwith/fillwith.sty
@@ -0,0 +1,349 @@
+%%
+%% This is file `fillwith.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% fillwith.dtx (with options: `sty')
+%% Copyright (C) 2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% fillwith. You may however distribute the package fillwith without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\NeedsTeXFormat{LaTeX2e}[2021-11-15]
+\RequirePackage{svn-prov}
+\ProvidesPackageSVN[\filebase.sty]{$Id: fillwith.dtx 10202 2024-08-08 15:33:47Z cfrees $}[v0.0 \revinfo][\filebase: fill vertically with non-space]
+\DefineFileInfoSVN
+\RequirePackage{xcolor}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\@ifundefined{ExplLoaderFileDate}{%
+ \RequirePackage{expl3}%
+}{}
+\@ifl@t@r\ExplLoaderFileDate{2022-02-24}{%
+}{%
+ \PackageError{fillwith}{Support package expl3 too old}
+ {%
+ You need to update your installation of the bundles 'l3kernel' and
+ 'l3packages'.\MessageBreak
+ Loading~fillwith~will~abort!%
+ }%
+ \endinput
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ExplSyntaxOn
+\prop_gput:Nnn \g_msg_module_name_prop { fillwith } { fillwith }
+
+
+\keys_define:nn { fillwith }
+{
+ color .meta:n = {
+ colour = #1,
+ },
+ colour .code:n = {
+ \colorlet{fillwithcolour}{#1}
+ },
+ dotted ~ color .meta:n = {
+ dotted colour = #1,
+ },
+ dotted color .meta:n = {
+ dotted colour = #1,
+ },
+ dotted ~ colour .meta:n = {
+ dotted colour = #1,
+ },
+ dotted colour .code:n = {
+ \colorlet{fillwithdottedcolour}{#1}
+ },
+ lliw .meta:n = {
+ colour = #1,
+ },
+ colour .initial:n = gray,
+ dotted colour .initial:n = black,
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\providecommand \IfFormatAtLeastTF { \@ifl@t@r \fmtversion }
+\IfFormatAtLeastTF { 2022-06-01 }
+{
+ \ProcessKeyOptions [ fillwith ]
+}{
+ \RequirePackage { l3keys2e }
+ \ProcessKeysOptions { fillwith }
+}
+\IfFormatAtLeastTF { 2020-10-01 }{
+}{
+ \RequirePackage { xparse }
+ \providecommand \ExpandArgs [1]
+ { \cs_if_exist_use:c { exp_args:N #1 } }
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\box_new:N \l__fillwith_adj_rule_box
+\box_new:N \l__fillwith_part_rule_box
+\box_new:N \l__fillwith_tmpa_box
+\box_new:N \l__fillwith_tmpb_box
+\coffin_new:N \l__fillwith_line_coffin
+\coffin_new:N \l__fillwith_lines_coffin
+\coffin_new:N \l__fillwith_part_coffin
+\coffin_new:N \l__fillwith_tmpa_coffin
+\dim_new:N \l__fillwith_ht_dim
+\dim_new:N \l__fillwith_dp_dim
+\dim_new:N \l__fillwith_rem_dim
+\dim_new:N \l__fillwith_line_ht_dim
+\dim_new:N \l__fillwith_line_adj_hsize_dim
+\dim_set:Nn \l__fillwith_line_ht_dim { 0.4pt }
+\dim_new:N \l__fillwith_line_madj_dim
+\dim_new:N \l__fillwith_line_vadj_dim
+\dim_set_eq:NN \l__fillwith_line_vadj_dim \c_zero_dim
+\dim_new:N \l__fillwith_goal_dim
+\dim_new:N \l__fillwith_tmpa_dim
+\int_new:N \g__fillwith_cnt_int
+\cs_new_protected_nopar:Nn \__fillwith_style: {}
+\cs_new_protected_nopar:Nn \__fillwith_coffin_tht:N
+{
+ \dim_eval:n { \coffin_ht:N #1 + \coffin_dp:N #1 }
+}
+\cs_new_protected_nopar:Npn \__fillwith_hrulefill_part:
+{
+ \vrule height \c_zero_dim depth \l__fillwith_line_ht_dim width 0.1pt
+}
+\cs_new_protected_nopar:Npn \__fillwith_hrulefill:
+{
+ \vrule height \c_zero_dim depth \l__fillwith_line_ht_dim width \l__fillwith_line_adj_hsize_dim
+}
+\cs_new_protected_nopar:Npn \__fillwith_dottedfill_part:
+{
+ \hbox to 0.33em {\hss .\hss}
+}
+\cs_new_protected_nopar:Npn \__fillwith_dottedfill:
+{
+ \leaders \hbox to 0.33em {\hss .\hss} \hfill \kern \c_zero_dim
+}
+\NewDocumentCommand\fillwithset { +m }{
+ \keys_set:nn { fillwith } { #1 }
+}
+\keys_define:nn { fillwith }
+{
+ cont .bool_set:N = \l__fillwith_cont_bool,
+ cont .default:n = true,
+ cont .initial:n = false,
+ fillwith~ht .tl_set:N = \l__fillwith_ht_tl,
+ fillwith~ht .initial:n = 2,
+ fillwith~ht .default:n = 2,
+ goal ~ ht .dim_set:N = \l__fillwith_goal_dim,
+ line nos .bool_set:N = \l__fillwith_nos_bool,
+ line ~ nos .bool_set:N = \l__fillwith_nos_bool,
+ line ~ nos .default:n = true,
+ line ~ nos .initial:n = false,
+ no ~ font .tl_set:N = \l__fillwith_no_font_tl,
+ no ~ font .initial:n = { \normalfont\normalsize },
+ no ~ font .default:n = { \normalfont\normalsize },
+ style .choices:nn =
+ {
+ rule, dots , line , lines , rules , unknown
+ }{
+ \if_case:w \l_keys_choice_int
+ \or: \cs_set_eq:NN \__fillwith_style: \__fillwith_hrulefill:
+ \or: \cs_set_eq:NN \__fillwith_style: \__fillwith_dottedfill:
+ \or: \cs_set_eq:NN \__fillwith_style: \__fillwith_hrulefill:
+ \or: \cs_set_eq:NN \__fillwith_style: \__fillwith_hrulefill:
+ \or: \cs_set_eq:NN \__fillwith_style: \__fillwith_hrulefill:
+ \else: \cs_set_protected_nopar:Nn \__fillwith_style: { \use:c { \l_keys_choice_tl } }
+ \fi:
+ \if_case:w \l_keys_choice_int
+ \or: \cs_set_eq:NN \__fillwith_style_part: \__fillwith_hrulefill_part:
+ \or: \cs_set_eq:NN \__fillwith_style_part: \__fillwith_dottedfill_part:
+ \or: \cs_set_eq:NN \__fillwith_style_part: \__fillwith_hrulefill_part:
+ \or: \cs_set_eq:NN \__fillwith_style_part: \__fillwith_hrulefill_part:
+ \or: \cs_set_eq:NN \__fillwith_style_part: \__fillwith_hrulefill_part:
+ \else: \cs_set_protected_nopar:Nn \__fillwith_style_part: { \use:c { \l_keys_choice_tl part } }
+ \fi:
+ },
+ style .default:n = dots,
+ style .initial:n = dots,
+}
+\cs_new_protected_nopar:Nn \__fillwith_fill:
+{
+ \__fillwith_measures:
+ \dim_set:Nn \l__fillwith_line_adj_hsize_dim { \hsize - \@totalleftmargin }
+ \vbox_set:Nn \l__fillwith_adj_rule_box
+ {
+ \parindent=0pt
+ \vrule height \l__fillwith_ht_dim depth \l__fillwith_dp_dim width \c_zero_dim
+ \skip_horizontal:n { \@totalleftmargin }
+ \__fillwith_style:
+ }
+ \if_mode_horizontal:
+ \bool_if:NT \l__fillwith_cont_bool
+ {
+ \leaders \box_use:N \l__fillwith_part_rule_box \hfill \kern \c_zero_dim
+ }{
+ \vrule height \l__fillwith_ht_dim depth \l__fillwith_dp_dim width \c_zero_dim
+ }
+ %^^A gweithio ond erbyn y rheolau
+ %^^A byddai'n achosi draferth, siwr o fod
+ % \tex_par:D
+ %^^A yn lle hynny, ceisio hyn - oes perygl hefyd?
+ \para_raw_end:
+ \else:
+ \unskip
+ \skip_vertical:n { \l__fillwith_dp_dim }
+ \fi:
+ \xleaders \box_use:N \l__fillwith_adj_rule_box \vfill
+ \para_end:
+ \normalcolor
+}
+\cs_new_protected_nopar:Nn \__fillwith_measures:
+{
+ \color{fillwithcolour}
+ \offinterlineskip
+ \hbox_set:Nn \l__fillwith_part_rule_box
+ {
+ \strut
+ \__fillwith_style_part:
+ \kern \c_zero_dim
+ }
+ \dim_set:Nn \l__fillwith_tmpa_dim { \box_ht:N \l__fillwith_part_rule_box }
+ \dim_set:Nn \l__fillwith_ht_dim { \l__fillwith_ht_tl \l__fillwith_tmpa_dim }
+ \box_set_ht:Nn \l__fillwith_part_rule_box { \l__fillwith_ht_dim }
+ \dim_set:Nn \l__fillwith_tmpa_dim { \box_dp:N \l__fillwith_part_rule_box }
+ % neu \fp_to_dim:n { \l__fillwith_ht_tl * \l__fillwith_tmpa_dim } ??
+ \dim_set:Nn \l__fillwith_dp_dim { \l__fillwith_ht_tl \l__fillwith_tmpa_dim }
+ \box_set_dp:Nn \l__fillwith_part_rule_box { \l__fillwith_dp_dim }
+}
+\NewDocumentCommand \fillwith { s o }
+{
+ \group_begin:
+ \IfValueT { #2 }
+ {
+ \keys_set:nn { fillwith } { #2 }
+ }
+ \IfBooleanTF { #1 }
+ {
+ \bool_set_true:N \l__fillwith_cont_bool
+ }{
+ \bool_set_false:N \l__fillwith_cont_bool
+ }
+ \__fillwith_fill:
+ \group_end:
+}
+\NewDocumentCommand \fillwithrules { s O { 2 } }
+{
+ \group_begin:
+ \IfBooleanTF { #1 }
+ {
+ \bool_set_true:N \l__fillwith_cont_bool
+ }{
+ \bool_set_false:N \l__fillwith_cont_bool
+ }
+ \keys_set:nn { fillwith } { style = rules, fillwith~ht=#2 }
+ \__fillwith_fill:
+ \group_end:
+}
+\NewDocumentCommand \fillwithdottedlines { s O { 2 } }
+{
+ \group_begin:
+ \IfBooleanTF { #1 }
+ {
+ \bool_set_true:N \l__fillwith_cont_bool
+ }{
+ \bool_set_false:N \l__fillwith_cont_bool
+ }
+ \colorlet{fillwithcolour}{fillwithdottedcolour}
+ \keys_set:nn { fillwith } { style = dots, fillwith~ht=#2 }
+ \__fillwith_fill:
+ \group_end:
+}
+\cs_new_protected:Nn \__fillwith_nos: % rhybudd: ARAF ! SLOW!
+{
+ \parindent=0pt
+ \__fillwith_measures:
+ \dim_set_eq:NN \l__fillwith_line_adj_hsize_dim \linewidth
+ \vcoffin_set:Nnn \l__fillwith_line_coffin { \l__fillwith_line_adj_hsize_dim }
+ {
+ \parindent=0pt
+ \vrule height \l__fillwith_ht_dim depth \l__fillwith_dp_dim width \c_zero_dim
+ \skip_horizontal:n \c_zero_skip
+ \__fillwith_style:
+ }
+ \coffin_set_eq:NN \l__fillwith_lines_coffin \l__fillwith_line_coffin
+ \if_mode_horizontal:
+ \bool_if:NTF \l__fillwith_cont_bool
+ {
+ \leaders \box_use:N \l__fillwith_part_rule_box \hfill \kern \c_zero_dim
+ \int_gincr:N \g__fillwith_cnt_int
+ % \vcoffin_set:Nnn \l__fillwith_tmpa_coffin { 1.5em}
+ % {
+ % \l__fillwith_no_font_tl \int_to_arabic:n { \g__fillwith_cnt_int }
+ % }
+ % \coffin_mark_handle:Nnnn \l__fillwith_tmpa_coffin {B} {l} { red }
+ % \coffin_mark_handle:Nnnn \l__fillwith_tmpa_coffin {b} {l} { green }
+ % \coffin_attach:NnnNnnnn \l__fillwith_lines_coffin {B} {r} \l__fillwith_tmpa_coffin {B} {l} {2.5pt} { \l__fillwith_ht_dim + \l__fillwith_dp_dim }
+ % \coffin_mark_handle:Nnnn \l__fillwith_lines_coffin {T} {r} { blue }
+ % \coffin_mark_handle:Nnnn \l__fillwith_lines_coffin {t} {r} { magenta }
+ \dim_set:Nn \l__fillwith_line_vadj_dim { \l__fillwith_dp_dim }
+ }{
+ \vrule height \l__fillwith_ht_dim depth \l__fillwith_dp_dim width \c_zero_dim
+ }
+ \dim_set:Nn \l__fillwith_line_madj_dim { \@totalleftmargin }
+ \para_raw_end:
+ \else:
+ \dim_set_eq:NN \l__fillwith_line_madj_dim \c_zero_dim
+ \unskip
+ \skip_vertical:n { \l__fillwith_dp_dim }
+ \fi:
+ \int_gincr:N \g__fillwith_cnt_int
+ \vcoffin_set:Nnn \l__fillwith_tmpa_coffin { 1.5em}
+ {
+ \l__fillwith_no_font_tl \int_to_arabic:n { \g__fillwith_cnt_int }
+ }
+ \coffin_attach:NnnNnnnn \l__fillwith_lines_coffin {B} {r} \l__fillwith_tmpa_coffin {B} {l} {2.5pt} {\c_zero_dim}
+ \dim_set:Nn \l__fillwith_rem_dim
+ {
+ \l__fillwith_goal_dim -\footskip - \pagetotal
+ }
+ \dim_until_do:nNnn { \__fillwith_coffin_tht:N \l__fillwith_lines_coffin } > { \l__fillwith_rem_dim - \l__fillwith_ht_dim - \l__fillwith_dp_dim }
+ {
+ \coffin_join:NnnNnnnn \l__fillwith_lines_coffin { b } { l } \l__fillwith_line_coffin { t } { l } { \c_zero_dim } { \c_zero_dim }
+ \int_gincr:N \g__fillwith_cnt_int
+ \vcoffin_set:Nnn \l__fillwith_tmpa_coffin {1.5em}
+ {
+ \l__fillwith_no_font_tl \int_to_arabic:n { \g__fillwith_cnt_int }
+ }
+ \coffin_attach:NnnNnnnn \l__fillwith_lines_coffin {B} {r} \l__fillwith_tmpa_coffin {B} {l} {2.5pt} {\c_zero_dim}
+ }
+ \coffin_typeset:Nnnnn \l__fillwith_lines_coffin { B } { l } { \l__fillwith_line_madj_dim } { \l__fillwith_line_vadj_dim }
+ \para_end:
+ \normalcolor
+}
+\NewDocumentCommand \fillwithnolines { s O { } }
+{
+ \group_begin:
+ \IfBooleanTF { #1 }
+ {
+ \bool_set_true:N \l__fillwith_cont_bool
+ }{
+ \bool_set_false:N \l__fillwith_cont_bool
+ }
+ \keys_set:nn { fillwith } { goal ~ ht = \pagegoal, #2 }
+ \__fillwith_nos:
+ \group_end:
+}
+\ExplSyntaxOff
+\endinput
+%%
+%% End of file `fillwith.sty'.
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fc-UKenglish.def b/Master/texmf-dist/tex/latex/fmtcount/fc-UKenglish.def
index f5b00b73e6c..0684f24160c 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fc-UKenglish.def
+++ b/Master/texmf-dist/tex/latex/fmtcount/fc-UKenglish.def
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fc-UKenglish.def,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fc-USenglish.def b/Master/texmf-dist/tex/latex/fmtcount/fc-USenglish.def
index 70c269f6d33..44adcd24081 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fc-USenglish.def
+++ b/Master/texmf-dist/tex/latex/fmtcount/fc-USenglish.def
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fc-USenglish.def,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fc-american.def b/Master/texmf-dist/tex/latex/fmtcount/fc-american.def
index 7b42aac4fe4..7110cffe419 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fc-american.def
+++ b/Master/texmf-dist/tex/latex/fmtcount/fc-american.def
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fc-american.def,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fc-brazilian.def b/Master/texmf-dist/tex/latex/fmtcount/fc-brazilian.def
index 5f0706a0885..160168c5b82 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fc-brazilian.def
+++ b/Master/texmf-dist/tex/latex/fmtcount/fc-brazilian.def
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fc-brazilian.def,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fc-british.def b/Master/texmf-dist/tex/latex/fmtcount/fc-british.def
index 7aaaa6afa0a..8cd55dce78a 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fc-british.def
+++ b/Master/texmf-dist/tex/latex/fmtcount/fc-british.def
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fc-british.def,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
diff --git a/Master/texmf-dist/tex/latex/regulatory/fc-dutch.def b/Master/texmf-dist/tex/latex/fmtcount/fc-dutch.def
index ee86d49a48c..78560f50401 100644
--- a/Master/texmf-dist/tex/latex/regulatory/fc-dutch.def
+++ b/Master/texmf-dist/tex/latex/fmtcount/fc-dutch.def
@@ -1,25 +1,57 @@
-%% fc-dutch.def
-%% Copyright 2024 E. Nijenhuis
-%
-% This work may be distributed and/or modified under the
-% conditions of the LaTeX Project Public License, either version 1.3c
-% of this license or (at your option) any later version.
-% The latest version of this license is in
-% http://www.latex-project.org/lppl.txt
-% and version 1.3c or later is part of all distributions of LaTeX
-% version 2005/12/01 or later.
-%
-% This work has the LPPL maintenance status ‘maintained’.
-%
-% The Current Maintainer of this work is E. Nijenhuis.
-%
-% This work consists of the files regulatory.tex,
-% regulatory-preamble.tex, regulatory-nl.tex, regulatory-en.tex,
-% example1.bib, example2.bib,
-% example1-nl.tex, example2-nl.tex,
-% example1-en.tex, example2-en.tex,
-% md-example.tex, example.md,
-% fc-dutch.def and regulatory.sty
+%%
+%% This is file `fc-dutch.def',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% fmtcount.dtx (with options: `fc-dutch.def,package')
+%%
+%% fmtcount.dtx
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
+%%
+%% 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 Nicola Talbot and Vincent Belaïche.
+%%
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%%
+%% \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 \~}
+%%\subsection{Prefixes}
+%%\label{sec:latin-prefixes}
+%%
+%%\begin{definition}[\DescribeMacro{\latinnumeralstring}]
+%%\cs{latinnumeralstring}\marg{counter}\oarg{prefix options}
+%%\end{definition}
+%%
+%%\begin{definition}[\DescribeMacro{\latinnumeralstringnum}]
+%%\cs{latinnumeralstringnum}\marg{number}\oarg{prefix options}
+%%\end{definition}
+%% Local Variables:
+%% coding: utf-8
+%% compile-command: "make -C ../dist fmtcount.pdf"
+%% End:
\ProvidesFCLanguage{dutch}[2024/01/27]%
\newcommand{\@ordinalMdutch}[2]{\edef#2{\number#1\relax.}}%
\global\let\@ordinalMdutch\@ordinalMdutch
@@ -28,7 +60,7 @@
\newcommand*\@@unitstringdutch[1]{%
\ifcase#1%
nul%
- \or een%
+ \or een% één and \'e\'en not working atm
\or twee%
\or drie%
\or vier%
@@ -117,7 +149,7 @@
\def#2{null}%
\else
\ifnum\@strctr=1\relax
- \appto#2{een}%
+ \appto#2{een}% één and \'e\'en not working atm
\else
\@@numberunderhundreddutch{\@strctr}{#2}%
\fi
@@ -129,7 +161,6 @@
\let\@teenstring=\@@teenstringdutch%
\let\@tenstring=\@@tenstringdutch%
\def\@hundred{honderd}\def\@thousand{duizend}%
- \def\@andname{en}%
\@@numberstringdutch{#1}{#2}%
}%
\global\let\@numberstringMdutch\@numberstringMdutch
@@ -145,7 +176,7 @@
\newcommand*\@@unitthstringdutch[1]{%
\ifcase#1%
nulde%
- \or eerste%
+ \or eerste% éérste and \'e\'erste not working atm
\or tweede%
\or derde%
\or vierde%
@@ -269,7 +300,6 @@
\global\let\@ordinalstringNdutch=\@ordinalstringMdutch
\newcommand*{\@OrdinalstringMdutch}[2]{%
\@ordinalstringMdutch{#1}{\@@num@str}%
- \def\@andname{en}%
\def\@hundred{Honderd}\def\@thousand{Duizend}%
\def\@hundredth{Honderdste}\def\@thousandth{Duizendste}%
\edef#2{\noexpand\MakeUppercase\expandonce\@@num@str}%
@@ -290,7 +320,11 @@
\else
\ifnum\@tmpstrctr=0\relax
\else
- \eappto#2{\@unitstring{\@tmpstrctr}en}%
+ \ifnum\@tmpstrctr=2\relax\def\@andname{ën}%
+ \else\ifnum\@tmpstrctr=3\relax\def\@andname{ën}%
+ \else\def\@andname{en}%
+ \fi\fi%
+ \eappto#2{\@unitstring{\@tmpstrctr}\@andname}%
\fi
\@tmpstrctr=#1\relax
\divide\@tmpstrctr by 10\relax
@@ -310,7 +344,11 @@
\else
\ifnum\@tmpstrctr=0\relax
\else
- \eappto#2{\@unitstring{\@tmpstrctr}-en-}%
+ \ifnum\@tmpstrctr=2\relax\def\@andname{ën}%
+ \else\ifnum\@tmpstrctr=3\relax\def\@andname{ën}%
+ \else\def\@andname{en}%
+ \fi\fi%
+ \eappto#2{\@unitstring{\@tmpstrctr}\@andname}%
\fi
\@tmpstrctr=#1\relax
\divide\@tmpstrctr by 10\relax
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fc-english.def b/Master/texmf-dist/tex/latex/fmtcount/fc-english.def
index d6bd6a80a4f..cfd2c710e83 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fc-english.def
+++ b/Master/texmf-dist/tex/latex/fmtcount/fc-english.def
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fc-english.def,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fc-francais.def b/Master/texmf-dist/tex/latex/fmtcount/fc-francais.def
index 2e0cbb2eb8b..e7ade01d59d 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fc-francais.def
+++ b/Master/texmf-dist/tex/latex/fmtcount/fc-francais.def
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fc-francais.def,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fc-french.def b/Master/texmf-dist/tex/latex/fmtcount/fc-french.def
index 3247cd15851..ea963b6b57a 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fc-french.def
+++ b/Master/texmf-dist/tex/latex/fmtcount/fc-french.def
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fc-french.def,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
@@ -52,7 +52,7 @@
%% coding: utf-8
%% compile-command: "make -C ../dist fmtcount.pdf"
%% End:
-\ProvidesFCLanguage{french}[2020/02/24]%
+\ProvidesFCLanguage{french}[2017/06/15]%
\ifcsundef{fc@gl@let}{\global\let\fc@gl@let\let}{\PackageError{fmtcount}{Command already defined}{Command
\protect\fc@gl@let\space already defined.}}
\ifcsundef{fc@gl@def}{\global\let\fc@gl@def\def}{\PackageError{fmtcount}{Command already defined}{Command
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fc-frenchb.def b/Master/texmf-dist/tex/latex/fmtcount/fc-frenchb.def
index 3eb9c340033..7f10f3a1aac 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fc-frenchb.def
+++ b/Master/texmf-dist/tex/latex/fmtcount/fc-frenchb.def
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fc-frenchb.def,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fc-german.def b/Master/texmf-dist/tex/latex/fmtcount/fc-german.def
index 3a44772de68..e0fa469a7df 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fc-german.def
+++ b/Master/texmf-dist/tex/latex/fmtcount/fc-german.def
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fc-german.def,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
@@ -72,7 +72,7 @@
\or zwei%
\or drei%
\or vier%
- \or f\"unf%
+ \or fünf%
\or sechs%
\or sieben%
\or acht%
@@ -84,9 +84,9 @@
\ifcase#1%
\or zehn%
\or zwanzig%
- \or drei{\ss}ig%
+ \or dreißig%
\or vierzig%
- \or f\"unfzig%
+ \or fünfzig%
\or sechzig%
\or siebzig%
\or achtzig%
@@ -103,10 +103,10 @@
\ifcase#1%
zehn%
\or elf%
- \or zw\"olf%
+ \or zwölf%
\or dreizehn%
\or vierzehn%
- \or f\"unfzehn%
+ \or fünfzehn%
\or sechzehn%
\or siebzehn%
\or achtzehn%
@@ -188,7 +188,7 @@
\or zweiter%
\or dritter%
\or vierter%
- \or f\"unfter%
+ \or fünfter%
\or sechster%
\or siebter%
\or achter%
@@ -200,9 +200,9 @@
\ifcase#1%
\or zehnter%
\or zwanzigster%
- \or drei{\ss}igster%
+ \or dreißigster%
\or vierzigster%
- \or f\"unfzigster%
+ \or fünfzigster%
\or sechzigster%
\or siebzigster%
\or achtzigster%
@@ -214,10 +214,10 @@
\ifcase#1%
zehnter%
\or elfter%
- \or zw\"olfter%
+ \or zwölfter%
\or dreizehnter%
\or vierzehnter%
- \or f\"unfzehnter%
+ \or fünfzehnter%
\or sechzehnter%
\or siebzehnter%
\or achtzehnter%
@@ -232,7 +232,7 @@
\or zweite%
\or dritte%
\or vierte%
- \or f\"unfte%
+ \or fünfte%
\or sechste%
\or siebte%
\or achte%
@@ -244,9 +244,9 @@
\ifcase#1%
\or zehnte%
\or zwanzigste%
- \or drei{\ss}igste%
+ \or dreißigste%
\or vierzigste%
- \or f\"unfzigste%
+ \or fünfzigste%
\or sechzigste%
\or siebzigste%
\or achtzigste%
@@ -258,10 +258,10 @@
\ifcase#1%
zehnte%
\or elfte%
- \or zw\"olfte%
+ \or zwölfte%
\or dreizehnte%
\or vierzehnte%
- \or f\"unfzehnte%
+ \or fünfzehnte%
\or sechzehnte%
\or siebzehnte%
\or achtzehnte%
@@ -276,7 +276,7 @@
\or zweites%
\or drittes%
\or viertes%
- \or f\"unftes%
+ \or fünftes%
\or sechstes%
\or siebtes%
\or achtes%
@@ -288,9 +288,9 @@
\ifcase#1%
\or zehntes%
\or zwanzigstes%
- \or drei{\ss}igstes%
+ \or dreißigstes%
\or vierzigstes%
- \or f\"unfzigstes%
+ \or fünfzigstes%
\or sechzigstes%
\or siebzigstes%
\or achtzigstes%
@@ -302,10 +302,10 @@
\ifcase#1%
zehntes%
\or elftes%
- \or zw\"olftes%
+ \or zwölftes%
\or dreizehntes%
\or vierzehntes%
- \or f\"unfzehntes%
+ \or fünfzehntes%
\or sechzehntes%
\or siebzehntes%
\or achtzehntes%
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fc-germanb.def b/Master/texmf-dist/tex/latex/fmtcount/fc-germanb.def
index 45a5602b3a1..9d3c339e61d 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fc-germanb.def
+++ b/Master/texmf-dist/tex/latex/fmtcount/fc-germanb.def
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fc-germanb.def,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fc-italian.def b/Master/texmf-dist/tex/latex/fmtcount/fc-italian.def
index 16fe43e5eac..1b43776faf4 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fc-italian.def
+++ b/Master/texmf-dist/tex/latex/fmtcount/fc-italian.def
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fc-italian.def,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
@@ -57,42 +57,79 @@
\RequirePackage{itnumpar}
\newcommand{\@numberstringMitalian}[2]{%
- \edef#2{\noexpand\printnumeroinparole{#1}}%
+ \begingroup
+ \def\np@oa{o}%
+ \count@=#1
+ \edef\@tempa{\def\noexpand#2{\@numeroinparole{\count@}}}%
+ \expandafter
+ \endgroup\@tempa
}
\global\let\@numberstringMitalian\@numberstringMitalian
\newcommand{\@numberstringFitalian}[2]{%
- \edef#2{\noexpand\printnumeroinparole{#1}}}
+ \begingroup
+ \def\np@oa{a}%
+ \count@=#1
+ \edef\@tempa{\def\noexpand#2{\@numeroinparole{\count@}}}%
+ \expandafter
+ \endgroup\@tempa
+}
\global\let\@numberstringFitalian\@numberstringFitalian
\newcommand{\@NumberstringMitalian}[2]{%
- \edef#2{\noexpand\printNumeroinparole{#1}}%
+ \begingroup
+ \def\np@oa{o}%
+ \count@=#1
+ \edef\@tempa{\def\noexpand#2{\@Numeroinparole{\count@}}}%
+ \expandafter
+ \endgroup\@tempa
}
\global\let\@NumberstringMitalian\@NumberstringMitalian
\newcommand{\@NumberstringFitalian}[2]{%
- \edef#2{\noexpand\printNumeroinparole{#1}}%
+ \begingroup
+ \def\np@oa{a}%
+ \count@=#1
+ \edef\@tempa{\def\noexpand#2{\@Numeroinparole{\count@}}}%
+ \expandafter
+ \endgroup\@tempa
}
\global\let\@NumberstringFitalian\@NumberstringFitalian
\newcommand{\@ordinalstringMitalian}[2]{%
- \edef#2{\noexpand\printordinalem{#1}}%
+ \begingroup
+ \count@=#1
+ \edef\@tempa{\def\noexpand#2{\@ordinalem{\count@}}}%
+ \expandafter
+ \endgroup\@tempa
}
\global\let\@ordinalstringMitalian\@ordinalstringMitalian
\newcommand{\@ordinalstringFitalian}[2]{%
- \edef#2{\noexpand\printordinalef{#1}}%
+ \begingroup
+ \count@=#1
+ \edef\@tempa{\def\noexpand#2{\@ordinalef{\count@}}}%
+ \expandafter
+ \endgroup\@tempa
}
\global\let\@ordinalstringFitalian\@ordinalstringFitalian
\newcommand{\@OrdinalstringMitalian}[2]{%
- \edef#2{\noexpand\printOrdinalem{#1}}%
+ \begingroup
+ \count@=#1
+ \edef\@tempa{\def\noexpand#2{\@Ordinalem{\count@}}}%
+ \expandafter
+ \endgroup\@tempa
}
\global\let\@OrdinalstringMitalian\@OrdinalstringMitalian
\newcommand{\@OrdinalstringFitalian}[2]{%
- \edef#2{\noexpand\printOrdinalef{#1}}%
+ \begingroup
+ \count@=#1
+ \edef\@tempa{\def\noexpand#2{\@Ordinalef{\count@}}}%
+ \expandafter
+ \endgroup\@tempa
}
\global\let\@OrdinalstringFitalian\@OrdinalstringFitalian
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fc-ngerman.def b/Master/texmf-dist/tex/latex/fmtcount/fc-ngerman.def
index 27a65543963..a25ce620709 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fc-ngerman.def
+++ b/Master/texmf-dist/tex/latex/fmtcount/fc-ngerman.def
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fc-ngerman.def,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fc-ngermanb.def b/Master/texmf-dist/tex/latex/fmtcount/fc-ngermanb.def
index c6797d56884..dc2048c7960 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fc-ngermanb.def
+++ b/Master/texmf-dist/tex/latex/fmtcount/fc-ngermanb.def
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fc-ngermanb.def,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fc-portuges.def b/Master/texmf-dist/tex/latex/fmtcount/fc-portuges.def
index 0a5e7fa968b..ec3bc746268 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fc-portuges.def
+++ b/Master/texmf-dist/tex/latex/fmtcount/fc-portuges.def
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fc-portuges.def,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fc-portuguese.def b/Master/texmf-dist/tex/latex/fmtcount/fc-portuguese.def
index 480bf186075..864bf58ad2c 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fc-portuguese.def
+++ b/Master/texmf-dist/tex/latex/fmtcount/fc-portuguese.def
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fc-portuguese.def,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fc-spanish.def b/Master/texmf-dist/tex/latex/fmtcount/fc-spanish.def
index 4ac3cf1f359..78887dd24d8 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fc-spanish.def
+++ b/Master/texmf-dist/tex/latex/fmtcount/fc-spanish.def
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fc-spanish.def,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
@@ -115,7 +115,7 @@
\or trece%
\or catorce%
\or quince%
- \or diecis\'eis%
+ \or dieciséis%
\or diecisiete%
\or dieciocho%
\or diecinueve%
@@ -126,11 +126,11 @@
\ifcase#1\relax
veinte%
\or veintiuno%
- \or veintid\'os%
- \or veintitr\'es%
+ \or veintidós%
+ \or veintitrés%
\or veinticuatro%
\or veinticinco%
- \or veintis\'eis%
+ \or veintiséis%
\or veintisiete%
\or veintiocho%
\or veintinueve%
@@ -141,11 +141,11 @@
\ifcase#1\relax
veinte%
\or veintiuna%
- \or veintid\'os%
- \or veintitr\'es%
+ \or veintidós%
+ \or veintitrés%
\or veinticuatro%
\or veinticinco%
- \or veintis\'eis%
+ \or veintiséis%
\or veintisiete%
\or veintiocho%
\or veintinueve%
@@ -233,7 +233,7 @@
\or Trece%
\or Catorce%
\or Quince%
- \or Diecis\'eis%
+ \or Dieciséis%
\or Diecisiete%
\or Dieciocho%
\or Diecinueve%
@@ -244,11 +244,11 @@
\ifcase#1\relax
Veinte%
\or Veintiuno%
- \or Veintid\'os%
- \or Veintitr\'es%
+ \or Veintidós%
+ \or Veintitrés%
\or Veinticuatro%
\or Veinticinco%
- \or Veintis\'eis%
+ \or Veintiséis%
\or Veintisiete%
\or Veintiocho%
\or Veintinueve%
@@ -259,11 +259,11 @@
\ifcase#1\relax
Veinte%
\or Veintiuna%
- \or Veintid\'os%
- \or Veintitr\'es%
+ \or Veintidós%
+ \or Veintitrés%
\or Veinticuatro%
\or Veinticinco%
- \or Veintis\'eis%
+ \or Veintiséis%
\or Veintisiete%
\or Veintiocho%
\or Veintinueve%
@@ -350,7 +350,7 @@
\let\@teenthstring=\@@teenthstringspanish
\let\@tenthstring=\@@tenthstringspanish
\let\@hundredthstring=\@@hundredthstringspanish
- \def\@thousandth{mil\'esimo}%
+ \def\@thousandth{milésimo}%
\@@ordinalstringspanish{#1}{#2}%
}%
\global\let\@ordinalstringMspanish\@ordinalstringMspanish
@@ -360,7 +360,7 @@
\let\@teenthstring=\@@teenthstringFspanish
\let\@tenthstring=\@@tenthstringFspanish
\let\@hundredthstring=\@@hundredthstringFspanish
- \def\@thousandth{mil\'esima}%
+ \def\@thousandth{milésima}%
\@@ordinalstringspanish{#1}{#2}%
}%
\global\let\@ordinalstringFspanish\@ordinalstringFspanish
@@ -371,7 +371,7 @@
\let\@teenthstring=\@@Teenthstringspanish
\let\@tenthstring=\@@Tenthstringspanish
\let\@hundredthstring=\@@Hundredthstringspanish
- \def\@thousandth{Mil\'esimo}%
+ \def\@thousandth{Milésimo}%
\@@ordinalstringspanish{#1}{#2}%
}
\global\let\@OrdinalstringMspanish\@OrdinalstringMspanish
@@ -381,7 +381,7 @@
\let\@teenthstring=\@@TeenthstringFspanish
\let\@tenthstring=\@@TenthstringFspanish
\let\@hundredthstring=\@@HundredthstringFspanish
- \def\@thousandth{Mil\'esima}%
+ \def\@thousandth{Milésima}%
\@@ordinalstringspanish{#1}{#2}%
}%
\global\let\@OrdinalstringFspanish\@OrdinalstringFspanish
@@ -395,7 +395,7 @@
\or cuarto%
\or quinto%
\or sexto%
- \or s\'eptimo%
+ \or séptimo%
\or octavo%
\or noveno%
\fi
@@ -403,28 +403,28 @@
\global\let\@@unitthstringspanish\@@unitthstringspanish
\newcommand*\@@tenthstringspanish[1]{%
\ifcase#1\relax
- \or d\'ecimo%
- \or vig\'esimo%
- \or trig\'esimo%
- \or cuadrag\'esimo%
- \or quincuag\'esimo%
- \or sexag\'esimo%
- \or septuag\'esimo%
- \or octog\'esimo%
- \or nonag\'esimo%
+ \or décimo%
+ \or vigésimo%
+ \or trigésimo%
+ \or cuadragésimo%
+ \or quincuagésimo%
+ \or sexagésimo%
+ \or septuagésimo%
+ \or octogésimo%
+ \or nonagésimo%
\fi
}%
\global\let\@@tenthstringspanish\@@tenthstringspanish
\newcommand*\@@teenthstringspanish[1]{%
\ifcase#1\relax
- d\'ecimo%
- \or und\'ecimo%
- \or duod\'ecimo%
+ décimo%
+ \or undécimo%
+ \or duodécimo%
\or decimotercero%
\or decimocuarto%
\or decimoquinto%
\or decimosexto%
- \or decimos\'eptimo%
+ \or decimoséptimo%
\or decimoctavo%
\or decimonoveno%
\fi
@@ -432,15 +432,15 @@
\global\let\@@teenthstringspanish\@@teenthstringspanish
\newcommand*\@@hundredthstringspanish[1]{%
\ifcase#1\relax
- \or cent\'esimo%
- \or ducent\'esimo%
- \or tricent\'esimo%
- \or cuadringent\'esimo%
- \or quingent\'esimo%
- \or sexcent\'esimo%
- \or septing\'esimo%
- \or octingent\'esimo%
- \or noningent\'esimo%
+ \or centésimo%
+ \or ducentésimo%
+ \or tricentésimo%
+ \or cuadringentésimo%
+ \or quingentésimo%
+ \or sexcentésimo%
+ \or septingésimo%
+ \or octingentésimo%
+ \or noningentésimo%
\fi
}%
\global\let\@@hundredthstringspanish\@@hundredthstringspanish
@@ -453,7 +453,7 @@
\or cuarta%
\or quinta%
\or sexta%
- \or s\'eptima%
+ \or séptima%
\or octava%
\or novena%
\fi
@@ -461,28 +461,28 @@
\global\let\@@unitthstringFspanish\@@unitthstringFspanish
\newcommand*\@@tenthstringFspanish[1]{%
\ifcase#1\relax
- \or d\'ecima%
- \or vig\'esima%
- \or trig\'esima%
- \or cuadrag\'esima%
- \or quincuag\'esima%
- \or sexag\'esima%
- \or septuag\'esima%
- \or octog\'esima%
- \or nonag\'esima%
+ \or décima%
+ \or vigésima%
+ \or trigésima%
+ \or cuadragésima%
+ \or quincuagésima%
+ \or sexagésima%
+ \or septuagésima%
+ \or octogésima%
+ \or nonagésima%
\fi
}%
\global\let\@@tenthstringFspanish\@@tenthstringFspanish
\newcommand*\@@teenthstringFspanish[1]{%
\ifcase#1\relax
- d\'ecima%
- \or und\'ecima%
- \or duod\'ecima%
+ décima%
+ \or undécima%
+ \or duodécima%
\or decimotercera%
\or decimocuarta%
\or decimoquinta%
\or decimosexta%
- \or decimos\'eptima%
+ \or decimoséptima%
\or decimoctava%
\or decimonovena%
\fi
@@ -490,15 +490,15 @@
\global\let\@@teenthstringFspanish\@@teenthstringFspanish
\newcommand*\@@hundredthstringFspanish[1]{%
\ifcase#1\relax
- \or cent\'esima%
- \or ducent\'esima%
- \or tricent\'esima%
- \or cuadringent\'esima%
- \or quingent\'esima%
- \or sexcent\'esima%
- \or septing\'esima%
- \or octingent\'esima%
- \or noningent\'esima%
+ \or centésima%
+ \or ducentésima%
+ \or tricentésima%
+ \or cuadringentésima%
+ \or quingentésima%
+ \or sexcentésima%
+ \or septingésima%
+ \or octingentésima%
+ \or noningentésima%
\fi
}%
\global\let\@@hundredthstringFspanish\@@hundredthstringFspanish
@@ -511,7 +511,7 @@
\or Cuarto%
\or Quinto%
\or Sexto%
- \or S\'eptimo%
+ \or Séptimo%
\or Octavo%
\or Noveno%
\fi
@@ -519,28 +519,28 @@
\global\let\@@Unitthstringspanish\@@Unitthstringspanish
\newcommand*\@@Tenthstringspanish[1]{%
\ifcase#1\relax
- \or D\'ecimo%
- \or Vig\'esimo%
- \or Trig\'esimo%
- \or Cuadrag\'esimo%
- \or Quincuag\'esimo%
- \or Sexag\'esimo%
- \or Septuag\'esimo%
- \or Octog\'esimo%
- \or Nonag\'esimo%
+ \or Décimo%
+ \or Vigésimo%
+ \or Trigésimo%
+ \or Cuadragésimo%
+ \or Quincuagésimo%
+ \or Sexagésimo%
+ \or Septuagésimo%
+ \or Octogésimo%
+ \or Nonagésimo%
\fi
}%
\global\let\@@Tenthstringspanish\@@Tenthstringspanish
\newcommand*\@@Teenthstringspanish[1]{%
\ifcase#1\relax
- D\'ecimo%
- \or Und\'ecimo%
- \or Duod\'ecimo%
+ Décimo%
+ \or Undécimo%
+ \or Duodécimo%
\or Decimotercero%
\or Decimocuarto%
\or Decimoquinto%
\or Decimosexto%
- \or Decimos\'eptimo%
+ \or Decimoséptimo%
\or Decimoctavo%
\or Decimonoveno%
\fi
@@ -548,15 +548,15 @@
\global\let\@@Teenthstringspanish\@@Teenthstringspanish
\newcommand*\@@Hundredthstringspanish[1]{%
\ifcase#1\relax
- \or Cent\'esimo%
- \or Ducent\'esimo%
- \or Tricent\'esimo%
- \or Cuadringent\'esimo%
- \or Quingent\'esimo%
- \or Sexcent\'esimo%
- \or Septing\'esimo%
- \or Octingent\'esimo%
- \or Noningent\'esimo%
+ \or Centésimo%
+ \or Ducentésimo%
+ \or Tricentésimo%
+ \or Cuadringentésimo%
+ \or Quingentésimo%
+ \or Sexcentésimo%
+ \or Septingésimo%
+ \or Octingentésimo%
+ \or Noningentésimo%
\fi
}%
\global\let\@@Hundredthstringspanish\@@Hundredthstringspanish
@@ -569,7 +569,7 @@
\or Cuarta%
\or Quinta%
\or Sexta%
- \or S\'eptima%
+ \or Séptima%
\or Octava%
\or Novena%
\fi
@@ -577,28 +577,28 @@
\global\let\@@UnitthstringFspanish\@@UnitthstringFspanish
\newcommand*\@@TenthstringFspanish[1]{%
\ifcase#1\relax
- \or D\'ecima%
- \or Vig\'esima%
- \or Trig\'esima%
- \or Cuadrag\'esima%
- \or Quincuag\'esima%
- \or Sexag\'esima%
- \or Septuag\'esima%
- \or Octog\'esima%
- \or Nonag\'esima%
+ \or Décima%
+ \or Vigésima%
+ \or Trigésima%
+ \or Cuadragésima%
+ \or Quincuagésima%
+ \or Sexagésima%
+ \or Septuagésima%
+ \or Octogésima%
+ \or Nonagésima%
\fi
}%
\global\let\@@TenthstringFspanish\@@TenthstringFspanish
\newcommand*\@@TeenthstringFspanish[1]{%
\ifcase#1\relax
- D\'ecima%
- \or Und\'ecima%
- \or Duod\'ecima%
+ Décima%
+ \or Undécima%
+ \or Duodécima%
\or Decimotercera%
\or Decimocuarta%
\or Decimoquinta%
\or Decimosexta%
- \or Decimos\'eptima%
+ \or Decimoséptima%
\or Decimoctava%
\or Decimonovena%
\fi
@@ -606,15 +606,15 @@
\global\let\@@TeenthstringFspanish\@@TeenthstringFspanish
\newcommand*\@@HundredthstringFspanish[1]{%
\ifcase#1\relax
- \or Cent\'esima%
- \or Ducent\'esima%
- \or Tricent\'esima%
- \or Cuadringent\'esima%
- \or Quingent\'esima%
- \or Sexcent\'esima%
- \or Septing\'esima%
- \or Octingent\'esima%
- \or Noningent\'esima%
+ \or Centésima%
+ \or Ducentésima%
+ \or Tricentésima%
+ \or Cuadringentésima%
+ \or Quingentésima%
+ \or Sexcentésima%
+ \or Septingésima%
+ \or Octingentésima%
+ \or Noningentésima%
\fi
}%
\global\let\@@HundredthstringFspanish\@@HundredthstringFspanish
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fcnumparser.sty b/Master/texmf-dist/tex/latex/fmtcount/fcnumparser.sty
index f18155fb4c5..654a74c1ec7 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fcnumparser.sty
+++ b/Master/texmf-dist/tex/latex/fmtcount/fcnumparser.sty
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fcnumparser.sty,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fcprefix.sty b/Master/texmf-dist/tex/latex/fmtcount/fcprefix.sty
index 880e570cb76..1685bcfa21e 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fcprefix.sty
+++ b/Master/texmf-dist/tex/latex/fmtcount/fcprefix.sty
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fcprefix.sty,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
diff --git a/Master/texmf-dist/tex/latex/fmtcount/fmtcount.sty b/Master/texmf-dist/tex/latex/fmtcount/fmtcount.sty
index c60688b1004..4d43137dcae 100644
--- a/Master/texmf-dist/tex/latex/fmtcount/fmtcount.sty
+++ b/Master/texmf-dist/tex/latex/fmtcount/fmtcount.sty
@@ -7,7 +7,7 @@
%% fmtcount.dtx (with options: `fmtcount.sty,package')
%%
%% fmtcount.dtx
-%% Copyright 2020 Nicola Talbot and Vincent Belache
+%% Copyright 2024 Nicola Talbot and Vincent Belaïche
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,9 +19,9 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Nicola Talbot and Vincent Belache.
+%% The Current Maintainer of this work is Nicola Talbot and Vincent Belaïche.
%%
-%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
+%% This work consists of the files fmtcount.dtx and fmtcount.ins and the derived files fc-american.def, fc-brazilian.def, fc-british.def, fc-dutch.def, fc-english.def, fc-francais.def, fc-french.def, fc-frenchb.def, fc-german.def, fc-germanb.def, fc-italian.def, fc-ngerman.def, fc-ngermanb.def, fc-portuges.def, fc-portuguese.def, fc-spanish.def, fc-UKenglish.def, fc-USenglish.def, fcnumparser.sty, fcprefix.sty, fmtcount.sty.
%%
%% \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
@@ -54,7 +54,7 @@
%% End:
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{fmtcount}[2020/01/30 v3.07]
+\ProvidesPackage{fmtcount}[2024/08/31 v3.08]
\RequirePackage{ifthen}
\RequirePackage{xkeyval}
\RequirePackage{etoolbox}
@@ -119,7 +119,8 @@ german,%
germanb,%
ngerman,%
ngermanb,%
-italian}
+italian,%
+dutch}
\newcommand*\fc@iterate@on@languages[1]{%
\ifx\fc@supported@language@list\@empty
\PackageError{fmtcount}{Macro `\protect\@fc@iterate@on@languages' is empty}{You should never get here:
@@ -937,7 +938,7 @@ italian}
\protect\@numberstringM{#1}{\@fc@numstr}%
}%
}%
- \MakeUppercase{\@fc@numstr}%
+ \protect\MakeUppercase{\@fc@numstr}%
}%
}
\providecommand*{\binary}[1]{%
diff --git a/Master/texmf-dist/tex/latex/fontscale/fontscale.sty b/Master/texmf-dist/tex/latex/fontscale/fontscale.sty
index d032e49860a..01c9c8e8e42 100644
--- a/Master/texmf-dist/tex/latex/fontscale/fontscale.sty
+++ b/Master/texmf-dist/tex/latex/fontscale/fontscale.sty
@@ -1,33 +1,32 @@
-% Package : fontscale -- A user interface for setting document font sizes
+% Package : fontscale -- A flexible interface for setting font sizes
% Copyright : 2024 (c) Oliver Beery <beeryoliver@gmail.com>
% CTAN : https://ctan.org/pkg/fontscale
% Repository: https://github.com/beeryoliver/fontscale
% License : The LaTeX Project Public License 1.3c
-% The 2022-06-01 LaTeX kernel update added \ProcessKeyOptions.
-\NeedsTeXFormat{LaTeX2e}[2022-06-01]
+% LaTeX2e version 2023-11-01 added \IfExplAtLeastTF.
+\NeedsTeXFormat{LaTeX2e}[2023-11-01]
\ProvidesExplPackage
{fontscale}
- {2024-05-17}
- {1.3.0}
- {A user interface for setting document font sizes}
+ {2024-09-10}
+ {2.4.0}
+ {A flexible interface for setting font sizes}
-% The 2023-10-10 l3kernel update added many 'e'-variants.
-\IfExplAtLeastTF { 2023-10-10 }
- { }
+% l3kernel version 2023-10-10 added many 'e'-variants.
+\IfExplAtLeastTF { 2023-10-10 } { }
{
\msg_new:nnn { fontscale } { expl3-out-of-date }
{
- The~ package~ could~ not~ load.~
- The~ fontscale~ package~ requires~
- L3~ programming~ layer~ version~ 2023-10-10~ or~ later.
+ The~ fontscale~ package~ could~ not~ load.~
+ This~ package~ requires~
+ L3~ programming~ layer~ version~ 2023-10-10~ or~ newer.
}
\msg_critical:nn { fontscale } { expl3-out-of-date }
}
% This package does not require any other packages!
-% DECLARE FONT PARAMETER VARIABLES
+% DECLARE FONT SIZE PARAMETER VARIABLES
\fp_const:Nn \c_fontscale_tiny_step_fp { -4 }
\fp_const:Nn \c_fontscale_scriptsize_step_fp { -3 }
@@ -74,31 +73,7 @@
\skip_new:N \l_fontscale_huge_baselineskip_skip
\skip_new:N \l_fontscale_Huge_baselineskip_skip
-\prop_new:N \l_fontscale_tiny_prop
-\prop_new:N \l_fontscale_scriptsize_prop
-\prop_new:N \l_fontscale_footnotesize_prop
-\prop_new:N \l_fontscale_small_prop
-\prop_new:N \l_fontscale_normalsize_prop
-\prop_new:N \l_fontscale_large_prop
-\prop_new:N \l_fontscale_Large_prop
-\prop_new:N \l_fontscale_LARGE_prop
-\prop_new:N \l_fontscale_huge_prop
-\prop_new:N \l_fontscale_Huge_prop
-
-\prop_put:Nnn \l_fontscale_tiny_prop { step } { -4 }
-\prop_put:Nnn \l_fontscale_scriptsize_prop { step } { -3 }
-\prop_put:Nnn \l_fontscale_footnotesize_prop { step } { -2 }
-\prop_put:Nnn \l_fontscale_small_prop { step } { -1 }
-\prop_put:Nnn \l_fontscale_normalsize_prop { step } { 0 }
-\prop_put:Nnn \l_fontscale_large_prop { step } { 1 }
-\prop_put:Nnn \l_fontscale_Large_prop { step } { 2 }
-\prop_put:Nnn \l_fontscale_LARGE_prop { step } { 3 }
-\prop_put:Nnn \l_fontscale_huge_prop { step } { 4 }
-\prop_put:Nnn \l_fontscale_Huge_prop { step } { 5 }
-
-\prop_put:Nnn \l_fontscale_normalsize_prop { scale } { 1 }
-
-% INITIALIZE FONT PARAMETER VARIABLES
+% INITIALIZE FONT SIZE PARAMETER VARIABLES
\fp_set:Nn \l_fontscale_tiny_scale_fp { 0.6 }
\fp_set:Nn \l_fontscale_scriptsize_scale_fp { 0.7 }
@@ -132,177 +107,180 @@
\skip_set:Nn \l_fontscale_huge_baselineskip_skip { 19.2pt }
\skip_set:Nn \l_fontscale_Huge_baselineskip_skip { 21.6pt }
-\prop_put:Nnn \l_fontscale_tiny_prop { scale } { 0.6 }
-\prop_put:Nnn \l_fontscale_scriptsize_prop { scale } { 0.7 }
-\prop_put:Nnn \l_fontscale_footnotesize_prop { scale } { 0.8 }
-\prop_put:Nnn \l_fontscale_small_prop { scale } { 0.9 }
-\prop_put:Nnn \l_fontscale_large_prop { scale } { 1.1 }
-\prop_put:Nnn \l_fontscale_Large_prop { scale } { 1.2 }
-\prop_put:Nnn \l_fontscale_LARGE_prop { scale } { 1.4 }
-\prop_put:Nnn \l_fontscale_huge_prop { scale } { 1.6 }
-\prop_put:Nnn \l_fontscale_Huge_prop { scale } { 1.8 }
-
-\prop_put:Nnn \l_fontscale_tiny_prop { size } { 6pt }
-\prop_put:Nnn \l_fontscale_scriptsize_prop { size } { 7pt }
-\prop_put:Nnn \l_fontscale_footnotesize_prop { size } { 8pt }
-\prop_put:Nnn \l_fontscale_small_prop { size } { 9pt }
-\prop_put:Nnn \l_fontscale_normalsize_prop { size } { 10pt }
-\prop_put:Nnn \l_fontscale_large_prop { size } { 11pt }
-\prop_put:Nnn \l_fontscale_Large_prop { size } { 12pt }
-\prop_put:Nnn \l_fontscale_LARGE_prop { size } { 14pt }
-\prop_put:Nnn \l_fontscale_huge_prop { size } { 16pt }
-\prop_put:Nnn \l_fontscale_Huge_prop { size } { 18pt }
-
-\prop_put:Nnn \l_fontscale_tiny_prop { baselineskip } { 7.2pt }
-\prop_put:Nnn \l_fontscale_scriptsize_prop { baselineskip } { 8.4pt }
-\prop_put:Nnn \l_fontscale_footnotesize_prop { baselineskip } { 9.6pt }
-\prop_put:Nnn \l_fontscale_small_prop { baselineskip } { 10.8pt }
-\prop_put:Nnn \l_fontscale_normalsize_prop { baselineskip } { 12 pt }
-\prop_put:Nnn \l_fontscale_large_prop { baselineskip } { 13.2pt }
-\prop_put:Nnn \l_fontscale_Large_prop { baselineskip } { 14.4pt }
-\prop_put:Nnn \l_fontscale_LARGE_prop { baselineskip } { 16.8pt }
-\prop_put:Nnn \l_fontscale_huge_prop { baselineskip } { 19.2pt }
-\prop_put:Nnn \l_fontscale_Huge_prop { baselineskip } { 21.6pt }
-
% SOME VARIABLES
-% Used for mapping.
-\tl_const:Nn \c__fontscale_names_tl
- {
- {tiny} {scriptsize} {footnotesize} {small} {normalsize}
- {large} {Large} {LARGE} {huge} {Huge}
- }
-\tl_const:Nn \c__fontscale_names_other_tl
- {
- {tiny} {scriptsize} {footnotesize} {small}
- {large} {Large} {LARGE} {huge} {Huge}
- }
-
% Used to speed up floating point calculations.
\fp_new:N \l__fontscale_normalsize_size_fp
\fp_set:Nn \l__fontscale_normalsize_size_fp { 10 }
+\fp_new:N \l__fontscale_musical_base_fp
\fp_new:N \l__fontscale_musical_notes_fp
-% Temporary variables
-\tl_new:N \l__fontscale_step_tl
-\tl_new:N \l__fontscale_scale_tl
-\dim_new:N \l__fontscale_size_dim
-
-% SOME HELPER FUNCTIONS
-
-% Sets a dimen/skip variable from a dimen/skip expression, supplying a default
-% unit of pt.
-\cs_new_protected:Npn \__fontscale_dim_set_with_default_pt:Nn #1#2
- { \@defaultunits #1 = \dimexpr #2 pt \relax \relax \@nnil }
-\cs_generate_variant:Nn \__fontscale_dim_set_with_default_pt:Nn { c }
-\cs_new_protected:Npn \__fontscale_skip_set_with_default_pt:Nn #1#2
- { \@defaultunits #1 = \glueexpr #2 pt \relax \@nnil }
-\cs_generate_variant:Nn \__fontscale_skip_set_with_default_pt:Nn { c }
-% Used to define \tiny to \Huge. Need \dim_use:N for compatibility with the
-% microtype package. Otherwise the following would do:
-% \cs_new_protected:Npn \__fontscale_fontsize:NNN { \@setfontsize }
-\cs_new_protected:Npn \__fontscale_fontsize:NNN #1#2
- { \@setfontsize #1 { \dim_use:N #2 } }
-% Similar to \fontsize + \selectfont, except that it takes dimen and skip
-% expressions as arguments and avoids the issue where \f@size is set to the new
-% font size before the second argument is expanded.
+% Scratch variables
+\tl_new:N \l__fontscale_tmp_tl
+\str_new:N \l__fontscale_tmp_str
+\dim_new:N \l__fontscale_tmp_dim
+\skip_new:N \l__fontscale_tmp_skip
+\fp_new:N \l__fontscale_tmp_fp
+
+% SOME FUNCTIONS
+
+% Variants of l3kernel functions
+\cs_generate_variant:Nn \msg_error:nnnn { nnv , nne }
+% Sets a dimen/skip variable from a dimen/skip expression, appending a default
+% unit of pt. This also removes extra tokens.
+\cs_new_protected:Npn \__fontscale_dim_set_default_pt:Nn #1#2
+ {
+ \afterassignment \use_none_delimit_by_q_stop:w
+ #1 = \dimexpr #2 pt \relax \relax
+ \q_stop
+ }
+\cs_generate_variant:Nn \__fontscale_dim_set_default_pt:Nn { c }
+\cs_new_protected:Npn \__fontscale_skip_set_default_pt:Nn #1#2
+ {
+ \afterassignment \use_none_delimit_by_q_stop:w
+ #1 = \glueexpr #2 pt \relax
+ \q_stop
+ }
+\cs_generate_variant:Nn \__fontscale_skip_set_default_pt:Nn { c }
+% Used to define \tiny to \Huge. Sets \@currsize only for compatibility. Need
+% \dim_use:N only for compatibility with the microtype package.
+\cs_new_protected:Npn \__fontscale_fontsize:NNN #1#2#3
+ {
+ \cs_set_eq:NN \@currsize #1
+ \fontsize { \dim_use:N #2 } #3 \selectfont
+ }
+% Similar to \fontsize + \selectfont, except that it:
+% (1) Takes dimen and skip expressions as arguments.
+% (2) Avoids the issue where \f@size is set to the new font size before the
+% second argument is expanded.
+% (3) Issues a user-friendly error message if the font size is not a positive
+% length.
+\dim_new:N \l__fontscale_fontsize_dim
\skip_new:N \l__fontscale_fontsize_skip
\cs_new_protected:Npn \__fontscale_fontsize:nn #1#2
{
- \__fontscale_skip_set_with_default_pt:Nn \l__fontscale_fontsize_skip {#2}
- \fontsize { = \dimexpr #1 pt \relax \relax } \l__fontscale_fontsize_skip
- \selectfont
+ \__fontscale_dim_set_default_pt:Nn \l__fontscale_fontsize_dim {#1}
+ \__fontscale_skip_set_default_pt:Nn \l__fontscale_fontsize_skip {#2}
+ \dim_compare:nNnTF \l__fontscale_fontsize_dim > \c_zero_dim
+ {
+ \fontsize \l__fontscale_fontsize_dim \l__fontscale_fontsize_skip
+ \selectfont
+ }
+ {
+ \msg_error:nnV { fontscale } { font-size-out-of-bounds }
+ \l__fontscale_fontsize_dim
+ }
}
% Similar to the above function, except that it sets the font baselineskip
% equal to the new font size times the baselineskip-size-ratio.
\cs_new_protected:Npn \__fontscale_fontsize:n #1
{
- \fontsize { = \dimexpr #1 pt \relax \relax }
- { \fp_to_dim:n { \f@size * \l__fontscale_baselineskip_size_ratio_fp } }
- \selectfont
+ \__fontscale_dim_set_default_pt:Nn \l__fontscale_fontsize_dim {#1}
+ \dim_compare:nNnTF \l__fontscale_fontsize_dim > \c_zero_dim
+ {
+ \fontsize \l__fontscale_fontsize_dim
+ {
+ \fp_to_dim:n
+ {
+ \l__fontscale_fontsize_dim
+ * \l__fontscale_baselineskip_size_ratio_fp
+ }
+ }
+ \selectfont
+ }
+ {
+ \msg_error:nnV { fontscale } { font-size-out-of-bounds }
+ \l__fontscale_fontsize_dim
+ }
}
% MESSAGES
-\msg_new:nnn { fontscale } { modular-ratio-out-of-bounds }
+\msg_new:nnn { fontscale } { key-musical-base-out-of-bounds }
{
- The~ value~ for~ the~ key~ 'modular / ratio'~
- \msg_line_context: \c_space_tl
- must~ be~ greater~ than~ 1.
+ Invalid~ value~ '#1'~ \msg_line_context:. \\
+ The~ value~ of~ the~ key~ 'musical / base'~
+ must~ be~ a~ positive~ length.
}
-\msg_new:nnn { fontscale } { musical-ratio-out-of-bounds }
+\msg_new:nnn { fontscale } { key-musical-ratio-out-of-bounds }
{
- The~ value~ for~ the~ key~ 'musical / ratio'~
- \msg_line_context: \c_space_tl
+ Invalid~ value~ '#1'~ \msg_line_context:. \\
+ The~ value~ of~ the~ key~ 'musical / ratio'~
must~ be~ greater~ than~ 1.
}
-\msg_new:nnn { fontscale } { musical-notes-out-of-bounds }
+\msg_new:nnn { fontscale } { key-musical-notes-out-of-bounds }
{
- The~ value~ for~ the~ key~ 'musical / notes'~
- \msg_line_context: \c_space_tl
+ Invalid~ value~ '#1'~ \msg_line_context:. \\
+ The~ value~ of~ the~ key~ 'musical / notes'~
must~ be~ a~ positive~ integer.
}
-\msg_new:nnn { fontscale } { key-font-scale-ignored }
+\msg_new:nnn { fontscale } { key-font-scale-out-of-bounds }
{
- Key~ '#1 / scale'~
- \msg_line_context: \c_space_tl
- ignored.~
- Setting~ the~ scale~ and~ size~ keys~ for~ the~ same~
- font~ size~ command~ ignores~ the~ scale~ key.
+ Invalid~ value~ '#1'~ \msg_line_context:. \\
+ The~ value~ of~ the~ key~ '#2 / scale'~
+ must~ be~ positive.
}
-\msg_new:nnn { fontscale } { font-sizes-out-of-order }
+\msg_new:nnn { fontscale } { key-font-size-out-of-bounds }
{
- The~ font~ sizes~
- \msg_line_context: \c_space_tl
- are~ not~ in~ the~ correct~ order.~
- The~ magnitude~ of~ the~ font~ sizes~ should~ be~ ordered~ from~
- '\iow_char:N \\tiny'~ to~ '\iow_char:N \\normalsize'~ to~
- '\iow_char:N \\Huge'.
+ Invalid~ value~ '#1'~ \msg_line_context:. \\
+ The~ value~ of~ the~ key~ '#2 / size'~
+ must~ be~ a~ positive~ length.
}
-\msg_new:nnn { fontscale } { font-baselineskips-out-of-order }
+\msg_new:nnn { fontscale } { key-font-scale-overwritten }
{
- The~ font~ baselineskips~
- \msg_line_context: \c_space_tl
- are~ not~ in~ the~ correct~ order.~
- The~ magnitude~ of~ the~ font~ baselineskips~ should~ be~ ordered~ from~
- '\iow_char:N \\tiny'~ to~ '\iow_char:N \\normalsize'~ to~
- '\iow_char:N \\Huge'.
+ The~ font~ size~ set~ by~ the~ key~ '#1 / scale'~
+ has~ been~ overwritten~ by~ the~ key~ '#1 / size'~ \msg_line_context:.
}
+\msg_new:nnn { fontscale } { font-sizes-out-of-order }
+ {
+ The~ font~ sizes~ are~ not~ in~ the~ correct~ order~ \msg_line_context:. \\
+ The~ lengths~ of~ the~ font~ sizes~
+ should~ be~ ordered~ from~ \iow_char:N \\tiny~ to~ \iow_char:N \\Huge.
+ }
+
+\msg_new:nnn { fontscale } { math-mode-warning }
+ { '#1'~ does~ nothing~ if~ used~ in~ math~ mode~ \msg_line_context:. }
+\msg_new:nnn { fontscale } { math-mode-error }
+ { '#1'~ cannot~ be~ used~ in~ math~ mode~ \msg_line_context:. }
+\msg_new:nnn { fontscale } { font-size-out-of-bounds }
+ { The~ font~ size~ '#1'~ must~ be~ a~ positive~ length~ \msg_line_context:. }
\msg_new:nnn { fontscale } { font-step-out-of-bounds }
{
- The~ font~ step~
- \msg_line_context: \c_space_tl
- must~ be~ an~ integer~ from~ -4~ to~ 5,~
- unless~ the~ value~ for~ the~ choice~ key~ 'typographic-scale'~
- is~ 'modular'~ or~ 'musical'.
+ Invalid~ font~ step~ '#1'~ \msg_line_context:. \\
+ The~ font~ step~ must~ equal~ an~ integer~ from~ -4~ to~ 5,~
+ unless~ the~ value~ of~ the~ key~ 'typographic-scale'~ is~ 'musical'.
}
\msg_new:nnn { fontscale } { current-font-step-out-of-bounds }
{
- '\iow_char:N \\SetFontStep*'~
- \msg_line_context: \c_space_tl
- could~ not~ calculate~ the~ new~ font~ step~ because~
- the~ current~ font~ step~ is~ undefined.
+ '\iow_char:N \\SetFontStep*'~ could~ not~ calculate~ the~ new~ font~ step~
+ because~ the~ current~ font~ step~ is~ undefined~ \msg_line_context:.
}
% DEFINE KEYS
\str_new:N \l__fontscale_typographic_scale_str
+\dim_new:N \l__fontscale_musical_base_dim
-\keys_define:nn { fontscale }
+\cs_new_protected:Npn \__fontscale_keys_name:n #1
{
- reset .choices:nn = { initial , preamble }
- { \use:c { __fontscale_keys_precompile_#1: } }
- , reset .default:n = initial
-
- , ignore-order .bool_set:N = \l__fontscale_ignore_order_bool
- , ignore-order .default:n = true
+ \tl_if_in:nnTF {#1} { / }
+ { \__fontscale_keys_name_split:ww #1 \q_stop }
+ { \tl_set:cn { l__fontscale_ \l_keys_key_str _size_tl } {#1} }
+ }
+\cs_new_protected:Npn \__fontscale_keys_name_split:ww #1 / #2 \q_stop
+ {
+ \tl_set:cn { l__fontscale_ \l_keys_key_str _size_tl } {#1}
+ \tl_set:cn { l__fontscale_ \l_keys_key_str _baselineskip_tl } {#2}
+ }
- , baselineskip-size-ratio .fp_set:N =
+\keys_define:nn { fontscale }
+ {
+ baselineskip-size-ratio .fp_set:N =
\l__fontscale_baselineskip_size_ratio_fp
, baselineskip-size-ratio .value_required:n = true
, typographic-scale .choices:nn =
- { classic-10pt , classic-11pt , classic-12pt , modular , musical }
+ { classic-10pt , classic-11pt , classic-12pt , musical }
{ \str_set:Nn \l__fontscale_typographic_scale_str {#1} }
, typographic-scale .value_required:n = true
@@ -315,23 +293,29 @@
, classic-12pt .meta:n = { typographic-scale = classic-12pt }
, classic-12pt .value_forbidden:n = true
- , modular .meta:n = { typographic-scale = modular }
- , modular .value_forbidden:n = true
-
, musical .meta:n = { typographic-scale = musical }
, musical .value_forbidden:n = true
-
- , modular / ratio .fp_set:N = \l__fontscale_modular_ratio_fp
- , modular / ratio .value_required:n = true
}
\keys_define:nn { fontscale / musical }
{
- ratio .fp_set:N = \l__fontscale_musical_ratio_fp
+ base .code:n =
+ \__fontscale_dim_set_default_pt:Nn \l__fontscale_musical_base_dim {#1}
+ , base .value_required:n = true
+
+ , ratio .fp_set:N = \l__fontscale_musical_ratio_fp
, ratio .value_required:n = true
, notes .int_set:N = \l__fontscale_musical_notes_int
, notes .value_required:n = true
}
+\keys_define:nn { fontscale / normalsize }
+ {
+ size .tl_set:N = \l__fontscale_normalsize_size_tl
+ , size .value_required:n = true
+
+ , baselineskip .tl_set:N = \l__fontscale_normalsize_baselineskip_tl
+ , baselineskip .value_required:n = true
+ }
\keys_define:nn { fontscale / tiny }
{
scale .tl_set:N = \l__fontscale_tiny_scale_tl
@@ -376,14 +360,6 @@
, baselineskip .tl_set:N = \l__fontscale_small_baselineskip_tl
, baselineskip .value_required:n = true
}
-\keys_define:nn { fontscale / normalsize }
- {
- size .tl_set:N = \l__fontscale_normalsize_size_tl
- , size .value_required:n = true
-
- , baselineskip .tl_set:N = \l__fontscale_normalsize_baselineskip_tl
- , baselineskip .value_required:n = true
- }
\keys_define:nn { fontscale / large }
{
scale .tl_set:N = \l__fontscale_large_scale_tl
@@ -441,185 +417,103 @@
}
\keys_define:nn { fontscale }
{
- tiny .code:n = \__fontscale_keys_name_code:n {#1}
+ tiny .code:n = \__fontscale_keys_name:n {#1}
, tiny .value_required:n = true
- , scriptsize .code:n = \__fontscale_keys_name_code:n {#1}
+ , scriptsize .code:n = \__fontscale_keys_name:n {#1}
, scriptsize .value_required:n = true
- , footnotesize .code:n = \__fontscale_keys_name_code:n {#1}
+ , footnotesize .code:n = \__fontscale_keys_name:n {#1}
, footnotesize .value_required:n = true
- , small .code:n = \__fontscale_keys_name_code:n {#1}
+ , small .code:n = \__fontscale_keys_name:n {#1}
, small .value_required:n = true
- , normalsize .code:n = \__fontscale_keys_name_code:n {#1}
+ , normalsize .code:n = \__fontscale_keys_name:n {#1}
, normalsize .value_required:n = true
- , large .code:n = \__fontscale_keys_name_code:n {#1}
+ , large .code:n = \__fontscale_keys_name:n {#1}
, large .value_required:n = true
- , Large .code:n = \__fontscale_keys_name_code:n {#1}
+ , Large .code:n = \__fontscale_keys_name:n {#1}
, Large .value_required:n = true
- , LARGE .code:n = \__fontscale_keys_name_code:n {#1}
+ , LARGE .code:n = \__fontscale_keys_name:n {#1}
, LARGE .value_required:n = true
- , huge .code:n = \__fontscale_keys_name_code:n {#1}
+ , huge .code:n = \__fontscale_keys_name:n {#1}
, huge .value_required:n = true
- , Huge .code:n = \__fontscale_keys_name_code:n {#1}
+ , Huge .code:n = \__fontscale_keys_name:n {#1}
, Huge .value_required:n = true
}
-\cs_new_protected:Npn \__fontscale_keys_name_code:n #1
- {
- \str_if_in:nnTF {#1} { / }
- { \__fontscale_keys_name_code_split:ww #1 \q_stop }
- { \tl_set:cn { l__fontscale_ \l_keys_key_str _size_tl } {#1} }
- }
-\cs_new_protected:Npn \__fontscale_keys_name_code_split:ww #1 / #2 \q_stop
- {
- \tl_set:cn { l__fontscale_ \l_keys_key_str _size_tl } {#1}
- \tl_set:cn { l__fontscale_ \l_keys_key_str _baselineskip_tl } {#2}
- }
-% PRE-COMPILE KEYS
+% INITIALIZE AND PRE-COMPILE KEYS
% Pre-compiles the keys with their initial values and then sets the keys to
-% their initial values. This is done by hand for speed.
-\cs_new_protected:Npn \__fontscale_keys_precompile_initial:
+% their initial values. This is significantly faster than using .initial:n and
+% \keys_precompile:nnN.
+\cs_new_protected:Npn \__fontscale_keys_set_initial:
{
- \bool_set_false:N \l__fontscale_ignore_order_bool
\fp_set:Nn \l__fontscale_baselineskip_size_ratio_fp { 1.2 }
\str_set:Nn \l__fontscale_typographic_scale_str { classic-10pt }
- \fp_set:Nn \l__fontscale_modular_ratio_fp { 1.125 }
+ \dim_set:Nn \l__fontscale_musical_base_dim { 10pt }
\fp_set:Nn \l__fontscale_musical_ratio_fp { 2 }
\int_set:Nn \l__fontscale_musical_notes_int { 5 }
- \tl_set:Nn \l__fontscale_tiny_scale_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_scriptsize_scale_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_footnotesize_scale_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_small_scale_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_large_scale_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_Large_scale_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_LARGE_scale_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_huge_scale_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_Huge_scale_tl { \q_no_value }
-
- \tl_set:Nn \l__fontscale_tiny_size_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_scriptsize_size_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_footnotesize_size_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_small_size_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_normalsize_size_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_large_size_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_Large_size_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_LARGE_size_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_huge_size_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_Huge_size_tl { \q_no_value }
-
- \tl_set:Nn \l__fontscale_tiny_baselineskip_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_scriptsize_baselineskip_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_footnotesize_baselineskip_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_small_baselineskip_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_normalsize_baselineskip_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_large_baselineskip_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_Large_baselineskip_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_LARGE_baselineskip_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_huge_baselineskip_tl { \q_no_value }
- \tl_set:Nn \l__fontscale_Huge_baselineskip_tl { \q_no_value }
- }
-\__fontscale_keys_precompile_initial:
-
-% Pre-compiles the keys with their values at the end of the preamble. The keys
-% are pre-compiled by hand for speed.
-\cs_new_eq:NN \__fontscale_keys_precompile_preamble: \prg_do_nothing:
-% \AddToHook is passed only a single token for speed.
-\AddToHook { begindocument / before }
- { \__fontscale_keys_precompile_preamble_set: }
-\cs_new_protected:Npn \__fontscale_keys_precompile_preamble_set:
- {
- \cs_set_protected:Npe \__fontscale_keys_precompile_preamble:
+ \tl_map_inline:nn
{
- \bool_if:NTF \l__fontscale_ignore_order_bool
- { \bool_set_true:N } { \bool_set_false:N }
- \exp_not:N \l__fontscale_ignore_order_bool
- \fp_set:Nn \exp_not:N \l__fontscale_baselineskip_size_ratio_fp
- { \exp_not:V \l__fontscale_baselineskip_size_ratio_fp }
- \str_set:Nn \exp_not:N \l__fontscale_typographic_scale_str
- { \l__fontscale_typographic_scale_str }
- \fp_set:Nn \exp_not:N \l__fontscale_modular_ratio_fp
- { \exp_not:V \l__fontscale_modular_ratio_fp }
- \fp_set:Nn \exp_not:N \l__fontscale_musical_ratio_fp
- { \exp_not:V \l__fontscale_musical_ratio_fp }
- \int_set:Nn \exp_not:N \l__fontscale_musical_notes_int
- { \int_use:N \l__fontscale_musical_notes_int }
-
- \tl_set:Nn \exp_not:N \l__fontscale_tiny_scale_tl
- { \exp_not:V \l__fontscale_tiny_scale_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_scriptsize_scale_tl
- { \exp_not:V \l__fontscale_scriptsize_scale_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_footnotesize_scale_tl
- { \exp_not:V \l__fontscale_footnotesize_scale_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_small_scale_tl
- { \exp_not:V \l__fontscale_small_scale_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_large_scale_tl
- { \exp_not:V \l__fontscale_large_scale_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_Large_scale_tl
- { \exp_not:V \l__fontscale_Large_scale_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_LARGE_scale_tl
- { \exp_not:V \l__fontscale_LARGE_scale_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_huge_scale_tl
- { \exp_not:V \l__fontscale_huge_scale_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_Huge_scale_tl
- { \exp_not:V \l__fontscale_Huge_scale_tl }
-
- \tl_set:Nn \exp_not:N \l__fontscale_tiny_size_tl
- { \exp_not:V \l__fontscale_tiny_size_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_scriptsize_size_tl
- { \exp_not:V \l__fontscale_scriptsize_size_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_footnotesize_size_tl
- { \exp_not:V \l__fontscale_footnotesize_size_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_small_size_tl
- { \exp_not:V \l__fontscale_small_size_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_normalsize_size_tl
- { \exp_not:V \l__fontscale_normalsize_size_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_large_size_tl
- { \exp_not:V \l__fontscale_large_size_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_Large_size_tl
- { \exp_not:V \l__fontscale_Large_size_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_LARGE_size_tl
- { \exp_not:V \l__fontscale_LARGE_size_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_huge_size_tl
- { \exp_not:V \l__fontscale_huge_size_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_Huge_size_tl
- { \exp_not:V \l__fontscale_Huge_size_tl }
-
- \tl_set:Nn \exp_not:N \l__fontscale_tiny_baselineskip_tl
- { \exp_not:V \l__fontscale_tiny_baselineskip_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_scriptsize_baselineskip_tl
- { \exp_not:V \l__fontscale_scriptsize_baselineskip_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_footnotesize_baselineskip_tl
- { \exp_not:V \l__fontscale_footnotesize_baselineskip_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_small_baselineskip_tl
- { \exp_not:V \l__fontscale_small_baselineskip_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_normalsize_baselineskip_tl
- { \exp_not:V \l__fontscale_normalsize_baselineskip_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_large_baselineskip_tl
- { \exp_not:V \l__fontscale_large_baselineskip_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_Large_baselineskip_tl
- { \exp_not:V \l__fontscale_Large_baselineskip_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_LARGE_baselineskip_tl
- { \exp_not:V \l__fontscale_LARGE_baselineskip_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_huge_baselineskip_tl
- { \exp_not:V \l__fontscale_huge_baselineskip_tl }
- \tl_set:Nn \exp_not:N \l__fontscale_Huge_baselineskip_tl
- { \exp_not:V \l__fontscale_Huge_baselineskip_tl }
+ \l__fontscale_tiny_scale_tl
+ \l__fontscale_scriptsize_scale_tl
+ \l__fontscale_footnotesize_scale_tl
+ \l__fontscale_small_scale_tl
+ \l__fontscale_large_scale_tl
+ \l__fontscale_Large_scale_tl
+ \l__fontscale_LARGE_scale_tl
+ \l__fontscale_huge_scale_tl
+ \l__fontscale_Huge_scale_tl
+
+ \l__fontscale_tiny_size_tl
+ \l__fontscale_scriptsize_size_tl
+ \l__fontscale_footnotesize_size_tl
+ \l__fontscale_small_size_tl
+ \l__fontscale_normalsize_size_tl
+ \l__fontscale_large_size_tl
+ \l__fontscale_Large_size_tl
+ \l__fontscale_LARGE_size_tl
+ \l__fontscale_huge_size_tl
+ \l__fontscale_Huge_size_tl
+
+ \l__fontscale_tiny_baselineskip_tl
+ \l__fontscale_scriptsize_baselineskip_tl
+ \l__fontscale_footnotesize_baselineskip_tl
+ \l__fontscale_small_baselineskip_tl
+ \l__fontscale_normalsize_baselineskip_tl
+ \l__fontscale_large_baselineskip_tl
+ \l__fontscale_Large_baselineskip_tl
+ \l__fontscale_LARGE_baselineskip_tl
+ \l__fontscale_huge_baselineskip_tl
+ \l__fontscale_Huge_baselineskip_tl
}
+ { \tl_set:Nn ##1 { \q_no_value } }
}
+\__fontscale_keys_set_initial:
-% PROCESS KEYS
+% SET AND PROCESS KEYS
-\NewDocumentCommand \fontscalesetup { m } { \__fontscale_keys_set:n {#1} }
+\NewDocumentCommand \fontscalesetup { s m }
+ {
+ \mode_if_math:TF
+ {
+ \msg_warning:nne { fontscale } { math-mode-warning }
+ { \token_to_str:N \fontscalesetup }
+ }
+ {
+ \IfBooleanTF #1
+ { \__fontscale_keys_reset:n {#2} }
+ { \__fontscale_keys_set:n {#2} }
+ }
+ }
\cs_new_protected:Npn \__fontscale_keys_set:n #1
{
\keys_set:nn { fontscale } {#1}
@@ -628,55 +522,62 @@
\prg_break:
\prg_break_point:
}
+\cs_new_protected:Npn \__fontscale_keys_reset:n
+ { \__fontscale_keys_set_initial: \__fontscale_keys_set:n }
\cs_new_protected:Npn \__fontscale_keys_process:
{
- \__fontscale_keys_process_check_modular_musical:
+ \__fontscale_keys_process_start:
\__fontscale_keys_process_normalsize:
\__fontscale_keys_process_other:
\__fontscale_keys_process_check_order:
}
-% Issues an error if the key 'modular/ratio', 'musical/ratio', or
-% 'musical/notes' is set to an impossible value.
-\cs_new_protected:Npn \__fontscale_keys_process_check_modular_musical:
+\cs_new_protected:Npn \__fontscale_keys_process_start:
{
- \fp_compare:nNnF \l__fontscale_modular_ratio_fp > \c_one_fp
+ \dim_compare:nNnF \l__fontscale_musical_base_dim > \c_zero_dim
{
- \msg_error:nn { fontscale } { modular-ratio-out-of-bounds }
+ \msg_error:nnV { fontscale } { key-musical-base-out-of-bounds }
+ \l__fontscale_musical_base_dim
\prg_break:
}
\fp_compare:nNnF \l__fontscale_musical_ratio_fp > \c_one_fp
{
- \msg_error:nn { fontscale } { musical-ratio-out-of-bounds }
+ \msg_error:nne { fontscale } { key-musical-ratio-out-of-bounds }
+ { \fp_use:N \l__fontscale_musical_ratio_fp }
\prg_break:
}
\int_compare:nNnF \l__fontscale_musical_notes_int > 0
{
- \msg_error:nn { fontscale } { musical-notes-out-of-bounds }
+ \msg_error:nnV { fontscale } { key-musical-notes-out-of-bounds }
+ \l__fontscale_musical_notes_int
\prg_break:
}
}
-% Sets the size and baselineskip of \normalsize and updates their property list
-% entries.
+% Sets the font size and font baselineskip of \normalsize.
\cs_new_protected:Npn \__fontscale_keys_process_normalsize:
{
\quark_if_no_value:NTF \l__fontscale_normalsize_size_tl
{
\dim_set:Nn \l_fontscale_normalsize_size_dim
{
- \str_case:VnF \l__fontscale_typographic_scale_str
+ \str_case:Vn \l__fontscale_typographic_scale_str
{
+ { classic-10pt } { 10pt }
{ classic-11pt } { 11pt }
{ classic-12pt } { 12pt }
+ { musical } { \l__fontscale_musical_base_dim }
}
- { 10pt }
}
}
{
- \__fontscale_dim_set_with_default_pt:Nn
- \l_fontscale_normalsize_size_dim { \l__fontscale_normalsize_size_tl }
+ \__fontscale_dim_set_default_pt:Nn \l_fontscale_normalsize_size_dim
+ { \l__fontscale_normalsize_size_tl }
+ \dim_compare:nNnF \l_fontscale_normalsize_size_dim > \c_zero_dim
+ {
+ \msg_error:nnVn { fontscale } { key-font-size-out-of-bounds }
+ \l_fontscale_normalsize_size_dim { normalsize }
+ \prg_break:
+ }
}
- \prop_put:NnV \l_fontscale_normalsize_prop { size }
- \l_fontscale_normalsize_size_dim
\fp_set:Nn \l__fontscale_normalsize_size_fp
{ \l_fontscale_normalsize_size_dim }
\quark_if_no_value:NTF \l__fontscale_normalsize_baselineskip_tl
@@ -691,12 +592,10 @@
}
}
{
- \__fontscale_skip_set_with_default_pt:Nn
+ \__fontscale_skip_set_default_pt:Nn
\l_fontscale_normalsize_baselineskip_skip
{ \l__fontscale_normalsize_baselineskip_tl }
}
- \prop_put:NnV \l_fontscale_normalsize_prop { baselineskip }
- \l_fontscale_normalsize_baselineskip_skip
}
% Auxiliary functions that expand to the font size depending on the name of the
% font size command.
@@ -745,57 +644,55 @@
{ Huge } { 24pt }
}
}
-\cs_new:Npn \__fontscale_keys_process_other_modular:n #1
- {
- \fp_to_dim:n
- {
- \l__fontscale_normalsize_size_fp * \l__fontscale_modular_ratio_fp
- ^ \use:c { c_fontscale_#1_step_fp }
- }
- }
\cs_new:Npn \__fontscale_keys_process_other_musical:n #1
{
\fp_to_dim:n
{
- \l__fontscale_normalsize_size_fp * \l__fontscale_musical_ratio_fp
+ \l__fontscale_musical_base_fp * \l__fontscale_musical_ratio_fp
^ ( \use:c { c_fontscale_#1_step_fp }
/ \l__fontscale_musical_notes_fp )
}
}
-% Sets the size, scale, and baselineskip of the other font size commands and
-% updates their property list entries. Issues a warning if the user sets both
-% the scale and size keys for the same font size command.
+% Sets the font size, font scale, and font baselineskip of the other font size
+% commands.
\cs_new_protected:Npn \__fontscale_keys_process_other:
{
- \cs_set_eq:Nc \__fontscale_keys_process_other_typographic_scale:n
+ \str_case:Vn \l__fontscale_typographic_scale_str
{
- \str_case:Vn \l__fontscale_typographic_scale_str
- {
- { classic-10pt } { __fontscale_keys_process_other_classic_xpt:n }
- { classic-11pt } { __fontscale_keys_process_other_classic_xipt:n }
- { classic-12pt } { __fontscale_keys_process_other_classic_xiipt:n }
- { modular } { __fontscale_keys_process_other_modular:n }
- { musical } { __fontscale_keys_process_other_musical:n }
- }
+ { classic-10pt }
+ {
+ \cs_set_eq:NN \__fontscale_keys_process_other_fn_aux:n
+ \__fontscale_keys_process_other_classic_xpt:n
+ }
+ { classic-11pt }
+ {
+ \cs_set_eq:NN \__fontscale_keys_process_other_fn_aux:n
+ \__fontscale_keys_process_other_classic_xipt:n
+ }
+ { classic-12pt }
+ {
+ \cs_set_eq:NN \__fontscale_keys_process_other_fn_aux:n
+ \__fontscale_keys_process_other_classic_xiipt:n
+ }
+ { musical }
+ {
+ \cs_set_eq:NN \__fontscale_keys_process_other_fn_aux:n
+ \__fontscale_keys_process_other_musical:n
+ \fp_set:Nn \l__fontscale_musical_base_fp
+ { \l__fontscale_musical_base_dim }
+ \fp_set:Nn \l__fontscale_musical_notes_fp
+ { \l__fontscale_musical_notes_int }
+ }
}
- \str_if_eq:VnT \l__fontscale_typographic_scale_str { musical }
+ \tl_map_function:nN
{
- \fp_set:Nn \l__fontscale_musical_notes_fp
- { \l__fontscale_musical_notes_int }
+ {tiny} {scriptsize} {footnotesize} {small}
+ {large} {Large} {LARGE} {huge} {Huge}
}
- \tl_map_function:NN \c__fontscale_names_other_tl
- \__fontscale_keys_process_other_aux:n
+ \__fontscale_keys_process_other_fn:n
}
-\cs_new_protected:Npn \__fontscale_keys_process_other_aux:n #1
+\cs_new_protected:Npn \__fontscale_keys_process_other_fn:n #1
{
- \quark_if_no_value:cF { l__fontscale_#1_size_tl }
- {
- \__fontscale_dim_set_with_default_pt:cn { l_fontscale_#1_size_dim }
- { \use:c { l__fontscale_#1_size_tl } }
- \quark_if_no_value:cF { l__fontscale_#1_scale_tl }
- { \msg_warning:nnn { fontscale } { key-font-scale-ignored } {#1} }
- \prg_break:
- }
\quark_if_no_value:cF { l__fontscale_#1_scale_tl }
{
\dim_set:cn { l_fontscale_#1_size_dim }
@@ -806,17 +703,42 @@
* ( \use:c { l__fontscale_#1_scale_tl } )
}
}
+ \dim_compare:nNnF { \use:c { l_fontscale_#1_size_dim } } > \c_zero_dim
+ {
+ \tl_map_break:n
+ {
+ \msg_error:nnen { fontscale } { key-font-scale-out-of-bounds }
+ { \fp_eval:n { \use:c { l__fontscale_#1_scale_tl } } } {#1}
+ \prg_break:
+ }
+ }
+ \quark_if_no_value:cT { l__fontscale_#1_size_tl } { \prg_break: }
+ }
+ \quark_if_no_value:cF { l__fontscale_#1_size_tl }
+ {
+ \__fontscale_dim_set_default_pt:cn { l_fontscale_#1_size_dim }
+ { \use:c { l__fontscale_#1_size_tl } }
+ \dim_compare:nNnF { \use:c { l_fontscale_#1_size_dim } } > \c_zero_dim
+ {
+ \tl_map_break:n
+ {
+ \msg_error:nnvn { fontscale } { key-font-size-out-of-bounds }
+ { l_fontscale_#1_size_dim } {#1}
+ \prg_break:
+ }
+ }
+ \quark_if_no_value:cF { l__fontscale_#1_scale_tl }
+ {
+ \msg_warning:nnn { fontscale } { key-font-scale-overwritten } {#1}
+ }
\prg_break:
}
\dim_set:cn { l_fontscale_#1_size_dim }
- { \__fontscale_keys_process_other_typographic_scale:n {#1} }
+ { \__fontscale_keys_process_other_fn_aux:n {#1} }
\prg_break:
\prg_break_point:
\fp_set:cn { l_fontscale_#1_scale_fp }
{ \use:c { l_fontscale_#1_size_dim } / \l__fontscale_normalsize_size_fp }
- \prop_put:cne { l_fontscale_#1_prop } { scale }
- { \fp_use:c { l_fontscale_#1_scale_fp } }
- \prop_put:cnv { l_fontscale_#1_prop } { size } { l_fontscale_#1_size_dim }
\quark_if_no_value:cTF { l__fontscale_#1_baselineskip_tl }
{
\skip_set:cn { l_fontscale_#1_baselineskip_skip }
@@ -829,122 +751,180 @@
}
}
{
- \__fontscale_skip_set_with_default_pt:cn
+ \__fontscale_skip_set_default_pt:cn
{ l_fontscale_#1_baselineskip_skip }
{ \use:c { l__fontscale_#1_baselineskip_tl } }
}
- \prop_put:cnv { l_fontscale_#1_prop } { baselineskip }
- { l_fontscale_#1_baselineskip_skip }
}
-% Issues a warning if the font sizes or font baselineskips (ignoring the
-% stretch and shrink components) are not in the correct order unless the value
-% for the key 'ignore-order' is 'true'.
+% Issues a warning if the font sizes are not in the correct order.
\cs_new_protected:Npn \__fontscale_keys_process_check_order:
{
- \bool_if:NF \l__fontscale_ignore_order_bool
+ \dim_compare:nF
{
- \dim_compare:nF
- {
- \l_fontscale_tiny_size_dim
- < \l_fontscale_scriptsize_size_dim
- < \l_fontscale_footnotesize_size_dim
- < \l_fontscale_small_size_dim
- < \l_fontscale_normalsize_size_dim
- < \l_fontscale_large_size_dim
- < \l_fontscale_Large_size_dim
- < \l_fontscale_LARGE_size_dim
- < \l_fontscale_huge_size_dim
- < \l_fontscale_Huge_size_dim
- }
- { \msg_warning:nn { fontscale } { font-sizes-out-of-order } }
- \dim_compare:nF
- {
- \l_fontscale_tiny_baselineskip_skip
- < \l_fontscale_scriptsize_baselineskip_skip
- < \l_fontscale_footnotesize_baselineskip_skip
- < \l_fontscale_small_baselineskip_skip
- < \l_fontscale_normalsize_baselineskip_skip
- < \l_fontscale_large_baselineskip_skip
- < \l_fontscale_Large_baselineskip_skip
- < \l_fontscale_LARGE_baselineskip_skip
- < \l_fontscale_huge_baselineskip_skip
- < \l_fontscale_Huge_baselineskip_skip
- }
- { \msg_warning:nn { fontscale } { font-baselineskips-out-of-order } }
+ \l_fontscale_tiny_size_dim
+ < \l_fontscale_scriptsize_size_dim
+ < \l_fontscale_footnotesize_size_dim
+ < \l_fontscale_small_size_dim
+ < \l_fontscale_normalsize_size_dim
+ < \l_fontscale_large_size_dim
+ < \l_fontscale_Large_size_dim
+ < \l_fontscale_LARGE_size_dim
+ < \l_fontscale_huge_size_dim
+ < \l_fontscale_Huge_size_dim
}
+ { \msg_warning:nn { fontscale } { font-sizes-out-of-order } }
}
% DOCUMENT COMMANDS
-% The internal functions of each font size command are not used elsewhere in
-% the code for compatibility with user-defined hooks
-% (e.g. \AddToHook{cmd/normalsize/after}{<user-defined-function>}).
-\DeclareDocumentCommand \tiny { } { \__fontscale_tiny: }
+% Defines the standard LaTeX font size commands from \tiny to \Huge and
+% initializes to \normalsize. The corresponding internal functions are not used
+% elsewhere in the code for compatibility with hooks such as
+% \AddToHook{cmd/<font size command>/after}{<code>}.
+\DeclareDocumentCommand \tiny { }
+ {
+ \mode_if_math:TF
+ {
+ \msg_warning:nne { fontscale } { math-mode-warning }
+ { \token_to_str:N \tiny }
+ }
+ { \__fontscale_tiny: }
+ }
\cs_new_protected:Npn \__fontscale_tiny:
{
\__fontscale_fontsize:NNN \tiny \l_fontscale_tiny_size_dim
\l_fontscale_tiny_baselineskip_skip
}
-\DeclareDocumentCommand \scriptsize { } { \__fontscale_scriptsize: }
+\DeclareDocumentCommand \scriptsize { }
+ {
+ \mode_if_math:TF
+ {
+ \msg_warning:nne { fontscale } { math-mode-warning }
+ { \token_to_str:N \scriptsize }
+ }
+ { \__fontscale_scriptsize: }
+ }
\cs_new_protected:Npn \__fontscale_scriptsize:
{
\__fontscale_fontsize:NNN \scriptsize \l_fontscale_scriptsize_size_dim
\l_fontscale_scriptsize_baselineskip_skip
}
-\DeclareDocumentCommand \footnotesize { } { \__fontscale_footnotesize: }
+\DeclareDocumentCommand \footnotesize { }
+ {
+ \mode_if_math:TF
+ {
+ \msg_warning:nne { fontscale } { math-mode-warning }
+ { \token_to_str:N \footnotesize }
+ }
+ { \__fontscale_footnotesize: }
+ }
\cs_new_protected:Npn \__fontscale_footnotesize:
{
\__fontscale_fontsize:NNN \footnotesize \l_fontscale_footnotesize_size_dim
\l_fontscale_footnotesize_baselineskip_skip
}
-\DeclareDocumentCommand \small { } { \__fontscale_small: }
+\DeclareDocumentCommand \small { }
+ {
+ \mode_if_math:TF
+ {
+ \msg_warning:nne { fontscale } { math-mode-warning }
+ { \token_to_str:N \small }
+ }
+ { \__fontscale_small: }
+ }
\cs_new_protected:Npn \__fontscale_small:
{
\__fontscale_fontsize:NNN \small \l_fontscale_small_size_dim
\l_fontscale_small_baselineskip_skip
}
-\DeclareDocumentCommand \normalsize { } { \__fontscale_normalsize: }
+\DeclareDocumentCommand \normalsize { }
+ {
+ \mode_if_math:TF
+ {
+ \msg_warning:nne { fontscale } { math-mode-warning }
+ { \token_to_str:N \normalsize }
+ }
+ { \__fontscale_normalsize: }
+ }
\cs_new_protected:Npn \__fontscale_normalsize:
{
\__fontscale_fontsize:NNN \normalsize \l_fontscale_normalsize_size_dim
\l_fontscale_normalsize_baselineskip_skip
}
-\DeclareDocumentCommand \large { } { \__fontscale_large: }
+\DeclareDocumentCommand \large { }
+ {
+ \mode_if_math:TF
+ {
+ \msg_warning:nne { fontscale } { math-mode-warning }
+ { \token_to_str:N \large }
+ }
+ { \__fontscale_large: }
+ }
\cs_new_protected:Npn \__fontscale_large:
{
\__fontscale_fontsize:NNN \large \l_fontscale_large_size_dim
\l_fontscale_large_baselineskip_skip
}
-\DeclareDocumentCommand \Large { } { \__fontscale_Large: }
+\DeclareDocumentCommand \Large { }
+ {
+ \mode_if_math:TF
+ {
+ \msg_warning:nne { fontscale } { math-mode-warning }
+ { \token_to_str:N \Large }
+ }
+ { \__fontscale_Large: }
+ }
\cs_new_protected:Npn \__fontscale_Large:
{
\__fontscale_fontsize:NNN \Large \l_fontscale_Large_size_dim
\l_fontscale_Large_baselineskip_skip
}
-\DeclareDocumentCommand \LARGE { } { \__fontscale_LARGE: }
+\DeclareDocumentCommand \LARGE { }
+ {
+ \mode_if_math:TF
+ {
+ \msg_warning:nne { fontscale } { math-mode-warning }
+ { \token_to_str:N \LARGE }
+ }
+ { \__fontscale_LARGE: }
+ }
\cs_new_protected:Npn \__fontscale_LARGE:
{
\__fontscale_fontsize:NNN \LARGE \l_fontscale_LARGE_size_dim
\l_fontscale_LARGE_baselineskip_skip
}
-\DeclareDocumentCommand \huge { } { \__fontscale_huge: }
+\DeclareDocumentCommand \huge { }
+ {
+ \mode_if_math:TF
+ {
+ \msg_warning:nne { fontscale } { math-mode-warning }
+ { \token_to_str:N \huge }
+ }
+ { \__fontscale_huge: }
+ }
\cs_new_protected:Npn \__fontscale_huge:
{
\__fontscale_fontsize:NNN \huge \l_fontscale_huge_size_dim
\l_fontscale_huge_baselineskip_skip
}
-\DeclareDocumentCommand \Huge { } { \__fontscale_Huge: }
+\DeclareDocumentCommand \Huge { }
+ {
+ \mode_if_math:TF
+ {
+ \msg_warning:nne { fontscale } { math-mode-warning }
+ { \token_to_str:N \Huge }
+ }
+ { \__fontscale_Huge: }
+ }
\cs_new_protected:Npn \__fontscale_Huge:
{
\__fontscale_fontsize:NNN \Huge \l_fontscale_Huge_size_dim
\l_fontscale_Huge_baselineskip_skip
}
-% Initializes to \normalsize.
\normalsize
-\NewExpandableDocumentCommand \CurrentFontStep { }
- { \__fontscale_current_font_step: }
-\cs_new:Npn \__fontscale_current_font_step:
+\NewExpandableDocumentCommand \CurrentFontStep { } { \__fontscale_step: }
+\cs_new:Npn \__fontscale_step:
{
\dim_case:nnF { \f@size pt }
{
@@ -960,47 +940,100 @@
{ \l_fontscale_Huge_size_dim } { 5 }
}
{
- \str_case:Vn \l__fontscale_typographic_scale_str
+ \str_if_eq:VnT \l__fontscale_typographic_scale_str { musical }
{
- { modular }
- {
- \fp_eval:n
- {
- ln ( \f@size / \l__fontscale_normalsize_size_fp )
- / ln ( \l__fontscale_modular_ratio_fp )
- }
- }
- { musical }
- {
- \fp_eval:n
- {
- \l__fontscale_musical_notes_fp
- * ln ( \f@size / \l__fontscale_normalsize_size_fp )
- / ln ( \l__fontscale_musical_ratio_fp )
- }
- }
+ \fp_eval:n
+ {
+ \l__fontscale_musical_notes_fp
+ * ln ( \f@size / \l__fontscale_musical_base_fp )
+ / ln ( \l__fontscale_musical_ratio_fp )
+ }
}
}
}
-\NewExpandableDocumentCommand \CurrentFontScale { }
- { \__fontscale_current_font_scale: }
-\cs_new:Npn \__fontscale_current_font_scale:
+\NewExpandableDocumentCommand \CurrentFontScale { } { \__fontscale_scale: }
+\cs_new:Npn \__fontscale_scale:
{ \fp_eval:n { \f@size / \l__fontscale_normalsize_size_fp } }
-\NewExpandableDocumentCommand \CurrentFontSize { }
- { \__fontscale_current_font_size: }
-\cs_new:Npn \__fontscale_current_font_size: { \f@size pt }
+\NewExpandableDocumentCommand \CurrentFontSize { } { \__fontscale_size: }
+\cs_new:Npn \__fontscale_size: { \f@size pt }
\NewExpandableDocumentCommand \CurrentFontBaselineskip { }
- { \__fontscale_current_font_baselineskip: }
-\cs_new:Npn \__fontscale_current_font_baselineskip: { \f@baselineskip }
+ { \__fontscale_baselineskip: }
+\cs_new:Npn \__fontscale_baselineskip: { \f@baselineskip }
+
+\NewExpandableDocumentCommand \CurrentFontSizeCommand { }
+ { \__fontscale_name: }
+\cs_new:Npn \__fontscale_name:
+ {
+ \dim_case:nn { \f@size pt }
+ {
+ { \l_fontscale_tiny_size_dim }
+ {
+ \skip_if_eq:nnT { \l_fontscale_tiny_baselineskip_skip }
+ { \f@baselineskip } { tiny }
+ }
+ { \l_fontscale_scriptsize_size_dim }
+ {
+ \skip_if_eq:nnT { \l_fontscale_scriptsize_baselineskip_skip }
+ { \f@baselineskip } { scriptsize }
+ }
+ { \l_fontscale_footnotesize_size_dim }
+ {
+ \skip_if_eq:nnT { \l_fontscale_footnotesize_baselineskip_skip }
+ { \f@baselineskip } { footnotesize }
+ }
+ { \l_fontscale_small_size_dim }
+ {
+ \skip_if_eq:nnT { \l_fontscale_small_baselineskip_skip }
+ { \f@baselineskip } { small }
+ }
+ { \l_fontscale_normalsize_size_dim }
+ {
+ \skip_if_eq:nnT { \l_fontscale_normalsize_baselineskip_skip }
+ { \f@baselineskip } { normalsize }
+ }
+ { \l_fontscale_large_size_dim }
+ {
+ \skip_if_eq:nnT { \l_fontscale_large_baselineskip_skip }
+ { \f@baselineskip } { large }
+ }
+ { \l_fontscale_Large_size_dim }
+ {
+ \skip_if_eq:nnT { \l_fontscale_Large_baselineskip_skip }
+ { \f@baselineskip } { Large }
+ }
+ { \l_fontscale_LARGE_size_dim }
+ {
+ \skip_if_eq:nnT { \l_fontscale_LARGE_baselineskip_skip }
+ { \f@baselineskip } { LARGE }
+ }
+ { \l_fontscale_huge_size_dim }
+ {
+ \skip_if_eq:nnT { \l_fontscale_huge_baselineskip_skip }
+ { \f@baselineskip } { huge }
+ }
+ { \l_fontscale_Huge_size_dim }
+ {
+ \skip_if_eq:nnT { \l_fontscale_Huge_baselineskip_skip }
+ { \f@baselineskip } { Huge }
+ }
+ }
+ }
\NewDocumentCommand \SetFontStep { s m }
{
- \IfBooleanTF #1
- { \__fontscale_add_font_step:n {#2} }
- { \__fontscale_set_font_step:n {#2} }
+ \mode_if_math:TF
+ {
+ \msg_warning:nne { fontscale } { math-mode-warning }
+ { \token_to_str:N \SetFontStep }
+ }
+ {
+ \IfBooleanTF #1
+ { \__fontscale_add_font_step:n {#2} }
+ { \__fontscale_set_font_step:n {#2} }
+ }
}
% Using \str_case: here is significantly faster (and easier to write) than
% repeatedly testing \fp_compare:.
@@ -1020,49 +1053,45 @@
{ 5 } { \Huge }
}
{
- \str_case:VnF \l__fontscale_typographic_scale_str
+ \str_if_eq:VnTF \l__fontscale_typographic_scale_str { musical }
{
- { modular }
- {
- \__fontscale_fontsize:n
- {
- \fp_to_dim:n
- {
- \l__fontscale_normalsize_size_fp
- * \l__fontscale_modular_ratio_fp ^ (#1)
- }
- }
- }
- { musical }
- {
- \__fontscale_fontsize:n
- {
- \fp_to_dim:n
- {
- \l__fontscale_normalsize_size_fp
- * \l__fontscale_musical_ratio_fp
- ^ ( (#1) / \l__fontscale_musical_notes_fp )
- }
- }
- }
+ \__fontscale_fontsize:n
+ {
+ \fp_to_dim:n
+ {
+ \l__fontscale_musical_base_fp
+ * \l__fontscale_musical_ratio_fp
+ ^ ( (#1) / \l__fontscale_musical_notes_fp )
+ }
+ }
+ }
+ {
+ \msg_error:nne { fontscale } { font-step-out-of-bounds }
+ { \fp_eval:n {#1} }
}
- { \msg_error:nn { fontscale } { font-step-out-of-bounds } }
}
}
\cs_new_protected:Npn \__fontscale_add_font_step:n #1
{
- \tl_set:Ne \l__fontscale_step_tl { \__fontscale_current_font_step: }
- \tl_if_empty:NTF \l__fontscale_step_tl
+ \tl_set:Ne \l__fontscale_tmp_tl { \__fontscale_step: }
+ \tl_if_empty:NTF \l__fontscale_tmp_tl
{ \msg_error:nn { fontscale } { current-font-step-out-of-bounds } }
- { \__fontscale_add_font_step_aux:n { (#1) + \l__fontscale_step_tl } }
+ { \__fontscale_add_font_step_aux:n { (#1) + \l__fontscale_tmp_tl } }
}
\cs_new_eq:NN \__fontscale_add_font_step_aux:n \__fontscale_set_font_step:n
\NewDocumentCommand \SetFontScale { s m }
{
- \IfBooleanTF #1
- { \__fontscale_add_font_scale:n {#2} }
- { \__fontscale_set_font_scale:n {#2} }
+ \mode_if_math:TF
+ {
+ \msg_warning:nne { fontscale } { math-mode-warning }
+ { \token_to_str:N \SetFontScale }
+ }
+ {
+ \IfBooleanTF #1
+ { \__fontscale_add_font_scale:n {#2} }
+ { \__fontscale_set_font_scale:n {#2} }
+ }
}
\cs_new_protected:Npn \__fontscale_set_font_scale:n #1
{
@@ -1077,186 +1106,174 @@
\NewDocumentCommand \SetFontSize { s m }
{
- \IfBooleanTF #1
- { \__fontscale_add_font_size:n {#2} }
- { \__fontscale_set_font_size:n {#2} }
+ \mode_if_math:TF
+ {
+ \msg_warning:nne { fontscale } { math-mode-warning }
+ { \token_to_str:N \SetFontSize }
+ }
+ {
+ \IfBooleanTF #1
+ { \__fontscale_add_font_size:n {#2} }
+ { \__fontscale_set_font_size:n {#2} }
+ }
}
\cs_new_eq:NN \__fontscale_set_font_size:n \__fontscale_fontsize:n
\cs_new_protected:Npn \__fontscale_add_font_size:n #1
{
- \__fontscale_dim_set_with_default_pt:Nn \l__fontscale_size_dim {#1}
- \dim_add:Nn \l__fontscale_size_dim { \f@size pt }
- \__fontscale_fontsize:n { \l__fontscale_size_dim }
+ \__fontscale_dim_set_default_pt:Nn \l__fontscale_tmp_dim {#1}
+ \__fontscale_fontsize:n { \l__fontscale_tmp_dim + \f@size pt }
}
\NewDocumentCommand \ScaleFont { m }
- { \__fontscale_scale_font_size_baselineskip:n {#1} }
-\cs_new_protected:Npn \__fontscale_scale_font_size_baselineskip:n #1
{
+ \mode_if_math:TF
+ {
+ \msg_warning:nne { fontscale } { math-mode-warning }
+ { \token_to_str:N \ScaleFont }
+ }
+ { \__fontscale_scale_font:n {#1} }
+ }
+\cs_new_protected:Npn \__fontscale_scale_font:n #1
+ {
+ \fp_set:Nn \l__fontscale_tmp_fp {#1}
\__fontscale_fontsize:nn
- { \fp_to_dim:n { \f@size * (#1) } }
- { \fp_to_dim:n { \dim_to_fp:n { \f@baselineskip } * (#1) } }
+ { \fp_to_dim:n { \f@size * \l__fontscale_tmp_fp } }
+ {
+ \fp_to_dim:n
+ { \dim_to_fp:n { \f@baselineskip } * \l__fontscale_tmp_fp }
+ }
}
\NewDocumentCommand \SetFontSizeBaselineskip { m m }
- { \__fontscale_set_font_size_baselineskip:nn {#1} {#2} }
+ {
+ \mode_if_math:TF
+ {
+ \msg_warning:nne { fontscale } { math-mode-warning }
+ { \token_to_str:N \SetFontSizeBaselineskip }
+ }
+ { \__fontscale_set_font_size_baselineskip:nn {#1} {#2} }
+ }
\cs_new_eq:NN \__fontscale_set_font_size_baselineskip:nn
\__fontscale_fontsize:nn
-\NewDocumentCommand \PrintFontParameters { }
- { \__fontscale_print_font_parameters: }
-\cs_new_protected:Npn \__fontscale_print_font_parameters:
+\NewDocumentCommand \SetFontBaselineskip { s m }
+ {
+ \mode_if_math:TF
+ {
+ \msg_warning:nne { fontscale } { math-mode-warning }
+ { \token_to_str:N \SetFontBaselineskip }
+ }
+ {
+ \IfBooleanTF #1
+ { \__fontscale_add_font_baselineskip:n {#2} }
+ { \__fontscale_set_font_baselineskip:n {#2} }
+ }
+ }
+\cs_new_protected:Npn \__fontscale_set_font_baselineskip:n
+ { \__fontscale_fontsize:nn { \f@size pt } }
+\cs_new_protected:Npn \__fontscale_add_font_baselineskip:n #1
+ {
+ \__fontscale_skip_set_default_pt:Nn \l__fontscale_tmp_skip {#1}
+ \__fontscale_fontsize:nn { \f@size pt }
+ { \l__fontscale_tmp_skip + \f@baselineskip }
+ }
+
+\NewDocumentCommand \PrintFontSizeParameters { }
+ { \__fontscale_print_font_size_parameters: }
+\cs_new_protected:Npn \__fontscale_print_font_size_parameters:
{
- step ~=~ \__fontscale_current_font_step: ,~
- scale ~=~ \__fontscale_current_font_scale: ,~
- size ~=~ \__fontscale_current_font_size: ,~
- baselineskip ~=~ \__fontscale_current_font_baselineskip:
+ step ~=~ \__fontscale_step: ,~
+ scale ~=~ \__fontscale_scale: ,~
+ size ~=~ \__fontscale_size: ,~
+ baselineskip ~=~ \__fontscale_baselineskip:
}
-\NewDocumentCommand \PrintAllFontParameters { }
- { \__fontscale_print_all_font_parameters: }
-\cs_new_protected:Npn \__fontscale_print_all_font_parameters:
+\NewDocumentCommand \PrintAllFontSizeParameters { }
+ {
+ \mode_if_math:TF
+ {
+ \msg_error:nne { fontscale } { math-mode-error }
+ { \token_to_str:N \PrintAllFontSizeParameters }
+ }
+ { \__fontscale_print_all_font_size_parameters: }
+ }
+\cs_new_protected:Npn \__fontscale_print_all_font_size_parameters:
{
- \tl_map_inline:Nn \c__fontscale_names_tl
+ \tl_map_inline:nn
+ {
+ {tiny} {scriptsize} {footnotesize} {small} {normalsize}
+ {large} {Large} {LARGE} {huge} {Huge}
+ }
{
- \prop_get:cnN { l_fontscale_##1_prop } { step } \l__fontscale_step_tl
- \prop_get:cnN { l_fontscale_##1_prop } { scale } \l__fontscale_scale_tl
\token_to_str:c {##1} \@ \c_colon_str \c_space_tl
- step ~=~ \l__fontscale_step_tl ,~
- scale ~=~ \l__fontscale_scale_tl ,~
- size ~=~ \dim_use:c { l_fontscale_##1_size_dim } ,~
- baselineskip ~=~ \skip_use:c { l_fontscale_##1_baselineskip_skip }
+ step~ =~ \fp_use:c { c_fontscale_##1_step_fp } ,~
+ scale~ =~ \str_if_eq:nnTF {##1} { normalsize }
+ { 1 } { \fp_use:c { l_fontscale_##1_scale_fp } } ,~
+ size~ =~ \dim_use:c { l_fontscale_##1_size_dim } ,~
+ baselineskip~ =~ \skip_use:c { l_fontscale_##1_baselineskip_skip }
\str_if_eq:nnF {##1} { Huge } { \newline }
}
}
-\NewDocumentCommand \PrintSampleText
- { s O
- {
- The~ \texttt { fontscale }~ package \c_colon_str \c_space_tl
- A~ user~ interface~ for~ setting~ document~ font~ sizes
- }
- }
+\NewDocumentCommand \PrintSampleText { s +m }
{
- \IfBooleanTF #1
- { \__fontscale_print_sample_text_descending_order:n {#2} }
- { \__fontscale_print_sample_text_ascending_order:n {#2} }
+ \mode_if_math:TF
+ {
+ \msg_error:nne { fontscale } { math-mode-error }
+ { \token_to_str:N \PrintSampleText }
+ }
+ {
+ \group_begin:
+ \IfBooleanTF #1
+ { \__fontscale_print_sample_text_descending_order:n {#2} }
+ { \__fontscale_print_sample_text_ascending_order:n {#2} }
+ \group_end:
+ }
}
\cs_new_protected:Npn \__fontscale_print_sample_text_ascending_order:n #1
{
- { \tiny #1 \par }
- { \scriptsize #1 \par }
- { \footnotesize #1 \par }
- { \small #1 \par }
- { \normalsize #1 \par }
- { \large #1 \par }
- { \Large #1 \par }
- { \LARGE #1 \par }
- { \huge #1 \par }
- { \Huge #1 \par }
+ \tl_map_inline:nn
+ {
+ \tiny \scriptsize \footnotesize \small \normalsize
+ \large \Large \LARGE \huge \Huge
+ }
+ { ##1 #1 \par }
}
\cs_new_protected:Npn \__fontscale_print_sample_text_descending_order:n #1
{
- { \Huge #1 \par }
- { \huge #1 \par }
- { \LARGE #1 \par }
- { \Large #1 \par }
- { \large #1 \par }
- { \normalsize #1 \par }
- { \small #1 \par }
- { \footnotesize #1 \par }
- { \scriptsize #1 \par }
- { \tiny #1 \par }
+ \tl_map_inline:nn
+ {
+ \Huge \huge \LARGE \Large \large
+ \normalsize \small \footnotesize \scriptsize \tiny
+ }
+ { ##1 #1 \par }
}
-\NewDocumentCommand \PrintFontSizeCommand { } { \__fontscale_print_name: }
-\cs_new_protected:Npn \__fontscale_print_name:
+\NewDocumentCommand \PrintFontSizeCommand { }
{
- \dim_case:nn { \f@size pt }
+ \mode_if_math:TF
{
- { \l_fontscale_tiny_size_dim }
- {
- \skip_if_eq:nnT { \f@baselineskip }
- { \l_fontscale_tiny_baselineskip_skip }
- { \token_to_str:N \tiny \prg_break: }
- }
- { \l_fontscale_scriptsize_size_dim }
- {
- \skip_if_eq:nnT { \f@baselineskip }
- { \l_fontscale_scriptsize_baselineskip_skip }
- { \token_to_str:N \scriptsize \prg_break: }
- }
- { \l_fontscale_footnotesize_size_dim }
- {
- \skip_if_eq:nnT { \f@baselineskip }
- { \l_fontscale_footnotesize_baselineskip_skip }
- { \token_to_str:N \footnotesize \prg_break: }
- }
- { \l_fontscale_small_size_dim }
- {
- \skip_if_eq:nnT { \f@baselineskip }
- { \l_fontscale_small_baselineskip_skip }
- { \token_to_str:N \small \prg_break: }
- }
- { \l_fontscale_normalsize_size_dim }
- {
- \skip_if_eq:nnT { \f@baselineskip }
- { \l_fontscale_normalsize_baselineskip_skip }
- { \token_to_str:N \normalsize \prg_break: }
- }
- { \l_fontscale_large_size_dim }
- {
- \skip_if_eq:nnT { \f@baselineskip }
- { \l_fontscale_large_baselineskip_skip }
- { \token_to_str:N \large \prg_break: }
- }
- { \l_fontscale_Large_size_dim }
- {
- \skip_if_eq:nnT { \f@baselineskip }
- { \l_fontscale_Large_baselineskip_skip }
- { \token_to_str:N \Large \prg_break: }
- }
- { \l_fontscale_LARGE_size_dim }
- {
- \skip_if_eq:nnT { \f@baselineskip }
- { \l_fontscale_LARGE_baselineskip_skip }
- { \token_to_str:N \LARGE \@ \prg_break: }
- }
- { \l_fontscale_huge_size_dim }
- {
- \skip_if_eq:nnT { \f@baselineskip }
- { \l_fontscale_huge_baselineskip_skip }
- { \token_to_str:N \huge \prg_break: }
- }
- { \l_fontscale_Huge_size_dim }
- {
- \skip_if_eq:nnT { \f@baselineskip }
- { \l_fontscale_Huge_baselineskip_skip }
- { \token_to_str:N \Huge \prg_break: }
- }
+ \msg_error:nne { fontscale } { math-mode-error }
+ { \token_to_str:N \PrintFontSizeCommand }
}
- UNDEFINED \@
- \prg_break:
- \prg_break_point:
+ { \__fontscale_print_name: }
+ }
+\cs_new_protected:Npn \__fontscale_print_name:
+ {
+ \str_set:Ne \l__fontscale_tmp_str { \__fontscale_name: }
+ \str_if_empty:NTF \l__fontscale_tmp_str
+ { \token_to_str:N \undefined }
+ { \c_backslash_str \l__fontscale_tmp_str \@ }
}
% TEXT PURIFY
-\cs_new:Npn \__fontscale_text_purify_equivalent:n #1
+\NewExpandableDocumentCommand \__fontscale_use_none_sm:w { s m } { }
+\tl_map_inline:nn
{
- \bool_lazy_all:nT
- {
- { \tl_if_single_p:n {#1} }
- { \tl_if_single_token_p:n #1 }
- { \token_if_eq_meaning_p:NN #1 * }
- }
- { \use_none:n }
- }
-\text_declare_purify_equivalent:Nn \SetFontStep
- { \__fontscale_text_purify_equivalent:n }
-\text_declare_purify_equivalent:Nn \SetFontScale
- { \__fontscale_text_purify_equivalent:n }
-\text_declare_purify_equivalent:Nn \SetFontSize
- { \__fontscale_text_purify_equivalent:n }
+ \fontscalesetup \SetFontStep \SetFontScale \SetFontSize
+ \SetFontBaselineskip
+ }
+ { \text_declare_purify_equivalent:Nn #1 { \__fontscale_use_none_sm:w } }
\text_declare_purify_equivalent:Nn \ScaleFont { \use_none:n }
\text_declare_purify_equivalent:Nn \SetFontSizeBaselineskip { \use_none:nn } \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/fontsetup/fontsetup.sty b/Master/texmf-dist/tex/latex/fontsetup/fontsetup.sty
index 6656d2a95ff..659263a5291 100644
--- a/Master/texmf-dist/tex/latex/fontsetup/fontsetup.sty
+++ b/Master/texmf-dist/tex/latex/fontsetup/fontsetup.sty
@@ -1,4 +1,4 @@
-\ProvidesPackage{fontsetup}[2024/2/24 v2.1.1 For easily using font families with mathematics]
+\ProvidesPackage{fontsetup}[2024/9/11 v2.2.1 For easily using font families with mathematics]
\RequirePackage{iflang}
\RequirePackage{iftex}
% Provide a test to know if a 16bits TeX is used.
@@ -46,28 +46,36 @@
\if@varnothing
\if@newcmbb
\setmathfont[StylisticSet=2,StylisticSet=3,CharacterVariant=1]{NewCMMath-\regularorbook.otf}%
+ \setmathfont[version=bold,StylisticSet=2,StylisticSet=3,CharacterVariant=1]{NewCMMath-Bold.otf}%
\else
\setmathfont[StylisticSet=2,CharacterVariant=1]{NewCMMath-\regularorbook.otf}%
+ \setmathfont[version=bold,StylisticSet=2,CharacterVariant=1]{NewCMMath-Bold.otf}%
\fi
\else
\if@newcmbb
\setmathfont[StylisticSet=2,StylisticSet=3]{NewCMMath-\regularorbook.otf}%
+ \setmathfont[version=bold,StylisticSet=2,StylisticSet=3]{NewCMMath-Bold.otf}%
\else
\setmathfont[StylisticSet=2]{NewCMMath-\regularorbook.otf}%
+ \setmathfont[version=bold,StylisticSet=2]{NewCMMath-Bold.otf}%
\fi
\fi
\else
\if@varnothing
\if@newcmbb
\setmathfont[StylisticSet=3,CharacterVariant=1]{NewCMMath-\regularorbook.otf}%
+ \setmathfont[version=bold,StylisticSet=3,CharacterVariant=1]{NewCMMath-Bold.otf}%
\else
\setmathfont[CharacterVariant=1]{NewCMMath-\regularorbook.otf}%
+ \setmathfont[version=bold,CharacterVariant=1]{NewCMMath-Bold.otf}%
\fi
\else
\if@newcmbb
\setmathfont[StylisticSet=3]{NewCMMath-\regularorbook.otf}%
+ \setmathfont[version=bold,StylisticSet=3]{NewCMMath-Bold.otf}%
\else
\setmathfont{NewCMMath-\regularorbook.otf}%
+ \setmathfont[version=bold]{NewCMMath-Bold.otf}%
\fi
\fi
\fi
diff --git a/Master/texmf-dist/tex/latex/fontsetup/fspdefault.tex b/Master/texmf-dist/tex/latex/fontsetup/fspdefault.tex
index 05a40a7f019..7b72ba65e4a 100644
--- a/Master/texmf-dist/tex/latex/fontsetup/fspdefault.tex
+++ b/Master/texmf-dist/tex/latex/fontsetup/fspdefault.tex
@@ -95,6 +95,7 @@ SmallCapsFeatures={Numbers=OldStyle}]{NewCMMono10-Book.otf}
\newcommand{\textuncial}[1]{{\uncial #1}}
\setmathfont{NewCMMath-Book.otf}
\setmathfont[range={\mathscr,\mathbfscr},StylisticSet=1]{NewCMMath-Book.otf}
+\setmathfont{NewCMMath-Bold.otf}[version=bold]
\newcommand{\tttextsc}[1]{{\ttscshape#1}}
%
\let\prosgegrammeni=\undefined
@@ -299,6 +300,12 @@ SmallCapsFeatures={Numbers=OldStyle}]{NewCMMono10-Book.otf}
% some math symbols
\DeclareRobustCommand*\nrightrightarrows{\mathrel{\char"E033}}
\DeclareRobustCommand*\nleftleftarrows{\mathrel{\char"E032}}
+\DeclareRobustCommand*\twoheadhookrightarrow{\mathrel{\char"E034}}
+\DeclareRobustCommand*\twoheadhookleftarrow{\mathrel{\char"E035}}
+%
+%%% declare the convolution operator %%%%%%%%%%%%%%%
+\DeclareMathOperator*{\convolution}{\mathchoice{\char"E037}{\char"E036}{\char"E038}{\char"E039}}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% select ss02 lookup table for IPA symbols
%\newfontfamily{\ipatext}[StylisticSet=5,%
diff --git a/Master/texmf-dist/tex/latex/fontsetup/fspebgaramondot.tex b/Master/texmf-dist/tex/latex/fontsetup/fspebgaramondot.tex
index 8d8802fbd66..7961849540b 100644
--- a/Master/texmf-dist/tex/latex/fontsetup/fspebgaramondot.tex
+++ b/Master/texmf-dist/tex/latex/fontsetup/fspebgaramondot.tex
@@ -2,4 +2,13 @@
\setmainfont[ItalicFont=EBGaramond-Italic.otf,
BoldFont=EBGaramond-Bold.otf,
BoldItalicFont=EBGaramond-BoldItalic.otf,SmallCapsFeatures={Numbers=OldStyle}]{EBGaramond-Regular.otf}
-\setmathfont{Garamond-Math.otf} \ No newline at end of file
+\setsansfont[ItalicFont=Ysabeau-Italic.otf,
+BoldFont=Ysabeau-Bold.otf,BoldItalicFont=Ysabeau-BoldItalic.otf,Scale=MatchLowercase,
+SmallCapsFeatures={Numbers=OldStyle}]{Ysabeau-Regular.otf}
+
+%\newfontfamily{\greekfont}[ItalicFont=EBGaramond-Italic.otf,
+%BoldFont=EBGaramond-Bold.otf,
+%BoldItalicFont=EBGaramond-BoldItalic.otf,SmallCapsFeatures={Numbers=OldStyle}]{EBGaramond-Regular.otf}
+%
+\setmathfont{Garamond-Math.otf}
+
diff --git a/Master/texmf-dist/tex/latex/fontsetup/fspolddefault.tex b/Master/texmf-dist/tex/latex/fontsetup/fspolddefault.tex
index 48f3bd948a7..4b27d42e45a 100644
--- a/Master/texmf-dist/tex/latex/fontsetup/fspolddefault.tex
+++ b/Master/texmf-dist/tex/latex/fontsetup/fspolddefault.tex
@@ -99,6 +99,7 @@ SmallCapsFeatures={Numbers=OldStyle}]{NewCMMono10-Regular.otf}
\newcommand{\textuncial}[1]{{\uncial #1}}
\setmathfont{NewCMMath-Regular.otf}
\setmathfont[range={\mathscr,\mathbfscr},StylisticSet=1]{NewCMMath-Regular.otf}
+\setmathfont{NewCMMath-Bold.otf}[version=bold]
\newcommand{\tttextsc}[1]{{\ttscshape#1}}
%
@@ -304,6 +305,12 @@ SmallCapsFeatures={Numbers=OldStyle}]{NewCMMono10-Regular.otf}
% some math symbols
\DeclareRobustCommand*\nrightrightarrows{\mathrel{\char"E033}}
\DeclareRobustCommand*\nleftleftarrows{\mathrel{\char"E032}}
+\DeclareRobustCommand*\twoheadhookrightarrow{\mathrel{\char"E034}}
+\DeclareRobustCommand*\twoheadhookleftarrow{\mathrel{\char"E035}}
+%
+%%% declare the convolution operator %%%%%%%%%%%%%%%
+\DeclareMathOperator*{\convolution}{\mathchoice{\char"E037}{\char"E036}{\char"E038}{\char"E039}}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% select ss02 lookup table for IPA symbols
%\newfontfamily{\ipatext}[StylisticSet=5,%
diff --git a/Master/texmf-dist/tex/latex/fourier/fourier-orns.sty b/Master/texmf-dist/tex/latex/fourier/fourier-orns.sty
index 265b33a70e7..e94e4de773a 100644
--- a/Master/texmf-dist/tex/latex/fourier/fourier-orns.sty
+++ b/Master/texmf-dist/tex/latex/fourier/fourier-orns.sty
@@ -1,6 +1,6 @@
\NeedsTeXFormat{LaTeX2e}
-\def\fileversion{2.3}
-\def\filedate{2022/02/05}
+\def\fileversion{2.4}
+\def\filedate{2024/09/08}
\ProvidesPackage{fourier-orns}%
[\filedate\space\fileversion\space fourier-ornaments package]
@@ -66,11 +66,21 @@
\newcommand*{\starredbullet}{\texorpdfstring{{\FourierOrns X}}{\textdagger}}
\newcommand*{\grimace}{\texorpdfstring{{\FourierOrns Y}}{\textdagger}}
\newcommand*{\textthing}{\texorpdfstring{{\FourierOrns Z}}{\textdagger}}
+\newcommand*{\aldinesmallup}{\texorpdfstring{{\FourierOrns c}}{\textdagger}}
+\newcommand*{\aldinesmallrevert}{\texorpdfstring{{\FourierOrns d}}{\textdagger}}
+\newcommand*{\leftblackhand}{\texorpdfstring{{\FourierOrns m}}{\textdagger}}
+\newcommand*{\rightblackhand}{\texorpdfstring{{\FourierOrns n}}{\textdagger}}
%
\newcommand*{\danger}{\PackageWarning{fourier-orns}{%
Command \protect\danger\space is deprecated.\MessageBreak
Use \protect\warning\space instead; reported}%
\warning}
%
+\ifFourier@TU
+\newcommand*{\grappe}{\texorpdfstring{{\FourierOrns \char"2766}}{\textdagger}}
+\newcommand*{\leftgrappe}{\texorpdfstring{{\FourierOrns \char"2619}}{\textdagger}}
+\newcommand*{\rightgrappe}{\texorpdfstring{{\FourierOrns \char"2767}}{\textdagger}}
+\fi
+%
%
\endinput
diff --git a/Master/texmf-dist/tex/latex/fourier/fourier.sty b/Master/texmf-dist/tex/latex/fourier/fourier.sty
index e29a07d07d9..2ebb35c77cb 100644
--- a/Master/texmf-dist/tex/latex/fourier/fourier.sty
+++ b/Master/texmf-dist/tex/latex/fourier/fourier.sty
@@ -1,5 +1,6 @@
-\def\fileversion{2.3}%
-\def\filedate{2022/02/05}%
+\def\fileversion{2.4}%
+\def\filedate{2024/09/08}%
+%new version number, but inchanged file : only fourier-orns have been updated.
\NeedsTeXFormat{LaTeX2e}%
\ProvidesPackage{fourier}%
[\filedate\space\fileversion\space fourier-GUTenberg package]%
diff --git a/Master/texmf-dist/tex/latex/fourier/ufuts.fd b/Master/texmf-dist/tex/latex/fourier/ufuts.fd
index 533bbf61e14..71bcdf23059 100644
--- a/Master/texmf-dist/tex/latex/fourier/ufuts.fd
+++ b/Master/texmf-dist/tex/latex/fourier/ufuts.fd
@@ -5,7 +5,7 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ufuts.fd}
- [2021/11/24 Fontinst v1.933 font definitions for U/futs.]
+ [2024/07/22 Fontinst v1.933 font definitions for U/futs.]
\DeclareFontFamily{U}{futs}{}
@@ -39,7 +39,7 @@
\DeclareFontShape{U}{futs}{m}{it}{<->ssub * futs/m/sl}{}
\DeclareFontShape{U}{futs}{sb}{it}{<->ssub * futs/sb/sl}{}
-\DeclareFontShape{U}{futs}{b}{it}{<->ssub * futs/sb/it}{}
+\DeclareFontShape{U}{futs}{b}{it}{<->ssub * futs/b/sl}{}
\DeclareFontShape{U}{futs}{bx}{it}{<->ssub * futs/b/it}{}
\DeclareFontShape{U}{futs}{bx}{n}{<->ssub * futs/b/n}{}
\DeclareFontShape{U}{futs}{bx}{sl}{<->ssub * futs/b/sl}{}
diff --git a/Master/texmf-dist/tex/latex/framedsyntax/FramedSyntax.sty b/Master/texmf-dist/tex/latex/framedsyntax/FramedSyntax.sty
new file mode 100644
index 00000000000..42aed89ce90
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/framedsyntax/FramedSyntax.sty
@@ -0,0 +1,257 @@
+%%
+%% This is file `FramedSyntax.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% FramedSyntax.dtx (with options: `package')
+%%
+%% Copyright (C) 2024 Claudio Beccari all rights reserved.
+%%
+%% Distributable under the LaTeX Project Public License,
+%% version 1.3c or higher (your choice). The latest version of
+%% this license is at: http://www.latex-project.org/lppl.txt
+%%
+\NeedsTeXFormat{LaTeX2e}[2019/01/01]
+\ProvidesPackage{FramedSyntax}%
+ [2024-09-04 v.0.2.8 Typeset command syntax within a special frame]
+\IfPackageLoadedF{pict2e}{\RequirePackage{pict2e}}
+\IfPackageLoadedF{etoolbox}{\RequirePackage{etoolbox}}
+\IfPackageLoadedF{xkeyval}{\RequirePackage{xkeyval}}
+\IfPackageLoadedF{xcolor}{\RequirePackage{xcolor}}
+\providecommand*\FSmeta[1]{\textnormal{$\langle$\textit{#1}$\rangle$}}
+\providecommand*\FSmarg[1]%
+ {\textnormal{\texttt{\char123}\FSmeta{#1}\texttt{\char125}}}
+\providecommand*\FSoarg[1]{\textnormal{\texttt{[}\FSmeta{#1}\texttt{]}}}
+\providecommand*\FSArg[1]{\textnormal{\texttt{\{#1\}}}}
+\let\FSMarg\FSArg
+\providecommand*\FSOarg[1]{\textnormal{\texttt{[#1]}}}
+\def\GT@splitargs#1,#2!{\def\@tempA{#1}\def\@tempB{#2}}
+\providecommand\FSgarg[1]{\textnormal{\GT@splitargs#1!\%
+ \texttt{(}\FSmeta{\@tempA}\texttt{,}\FSmeta{\@tempB}\texttt{)}}}
+\providecommand*\FScomando[1]{\textnormal{\texttt{\string#1}}}
+\providecommand*{\FScs}[1]%
+{\textnormal{\texttt{\char92#1}\index{#1@\texttt{\char92#1}|textsc}}}
+\let\FScsindex\FScs
+\providecommand*\SFSambiente[2]{%
+\FScomando{\begin}\FSmarg{#1}\FSoarg{#2}\,\dots
+ \FScomando{\end}\FSmarg{#1}}
+\providecommand*\DFSambiente[3]{%
+ \FScomando{\begin}\FSmarg{#1}\FSoarg{#2}\FSoarg{#3}\,\dots
+ \FScomando{\end}\FSmarg{#1}}
+\providecommand*\BFSambiente[1]{\FScomando{\begin}\FSmarg{#1}}
+\providecommand*\EFSambiente[1]{\FScomando{\end}\FSmarg{#1}}
+\IfPackageLoadedF{cfr-lm}{\let\texttm\texttt \let\texttv\texttt}
+\DeclareRobustCommand*\FSambstyle[1]{%
+ {\normalfont\textsf{\slshape#1}}}
+\DeclareRobustCommand*\FSclassstyle[1]{%
+ {\normalfont\texttv{\itshape#1}}}
+\DeclareRobustCommand*\FSfilestyle[1]{%
+ {\normalfont\texttm{\texttt{#1}}}}
+\DeclareRobustCommand*\FSpackstyle[1]{%
+ {\normalfont\texttm{\ifbool{PDFTeX}{\textit}{\itshape}{#1}}}}%
+\DeclareRobustCommand*\FSprogstyle[1]{{\normalfont\textsf{#1}}}
+\DeclareRobustCommand*\FSprog[1]{\FSprogstyle{#1}%
+\iflanguage{english}{\index{program!#1@\FSprogstyle{#1}|textsc}}%
+ {\index{programma!#1@\FSprogstyle{#1}|textsc}}}%
+\DeclareRobustCommand*\FSpack[1]{\FSpackstyle{#1}%
+\iflanguage{english}{\index{package!#1@\FSpackstyle{#1}|textsc}}%
+ {\index{pacchetto!#1@\FSpackstyle{#1}|textsc}}}
+\DeclareRobustCommand*\FSclass[1]{\FSclassstyle{#1}%
+ \iflanguage{english}{\index{class!#1@\FSclassstyle{#1}|textsc}}%
+ {\index{classe!#1@\FSclassstyle{#1}|textsc}}}%
+\DeclareRobustCommand*\file[1]{\FSfilestyle{#1}%
+ \index{file!#1@\FSfilestyle{#1}|textsc}}%
+\DeclareRobustCommand*\FSamb[1]{\FSambstyle{#1}%
+ \iflanguage{english}%
+ {\index{environment!#1@\FSambstyle{#1}|textsc}}%
+ {\index{ambiente!#1@\FSambstyle{#1}|textsc}}}%
+\DeclareRobustCommand*\FSopzstyle[1]{%
+ {\normalfont\textsf{\slshape{#1}}}}%
+\DeclareRobustCommand*\FScontastyle[1]{{\normalfont\texttm{#1}}}
+\DeclareRobustCommand*\FSstilestyle[1]{{\normalfont\texttm{#1}}}
+\DeclareRobustCommand*\FSnumeristyle[1]{{\normalfont\texttm{#1}}}
+\DeclareRobustCommand*\FSumisurastyle[1]{{\normalfont\texttm{#1}}}
+\DeclareRobustCommand*\FSchiavestyle[1]{{\normalfont\texttm{#1}}}
+\DeclareRobustCommand*\FSdescrittorestyle[1]{{\normalfont\texttm{#1}}}
+\DeclareRobustCommand*\FSposizionestyle[1]{{\normalfont\texttm{#1}}}
+\DeclareRobustCommand*\FSallineamentostyle[1]{{\normalfont\texttm{#1}}}
+\DeclareRobustCommand*\FSopz[1]{\opzstyle{#1}%
+ \iflanguage{english}{\index{option!#1@\FSopzstyle{#1}|textsc}}%
+ {\index{opzione!#1@\opzstyle{#1}|textsc}}}%
+\DeclareRobustCommand*\FSconta[1]{\Fcontastyle{#1}%
+ \iflanguage{english}{\index{counter!#1@\FScontastyle{#1}|textsc}}%
+ {\index{contatore!#1@\FScontastyle{#1}|textsc}}}
+\DeclareRobustCommand*\FSstile[1]{\FSstilestyle{#1}%
+ \iflanguage{english}{\index{page style!#1@\FSstilestyle{#1}|textsc}}%
+ {\index{stile della pagina!#1@\FSstilestyle{#1}|textsc}}}
+\DeclareRobustCommand*\FSnumeri[1]{\FSnumeristyle{#1}%
+ \iflanguage{english}{\index{numbering!#1@\FSnumeristyle{#1}|textsc}}%
+ {\index{numerazione!#1@\FSnumeristyle{#1}|textsc}}}
+\DeclareRobustCommand*\FSumisura[1]{\FSumisurastyle{#1}%
+ \iflanguage{english}{measuring unit!#1@\FSumisurastyle{#1}|textsc}%
+ {\index{unità di misura!#1@\FSumisurastyle{#1}|textsc}}}
+\DeclareRobustCommand*\FSchiave[1]{\FSchiavestyle{#1}%
+ \iflanguage{english}{\index{key!#1@\FSchiavestyle{#1}|textsc}}%
+ {\index{chiave!#1@\chiavestyle{#1}|textsc}}}
+\DeclareRobustCommand*\FSdescrittore[1]{\FSdescrittorestyle{#1}%
+ \iflanguage{english}%
+ {\index{column descriptor!#1@\FSdescrittorestyle{#1}|textsc}}%
+ {\index{descrittore di colonna!#1@\FSdescrittorestyle{#1}|textsc}}}
+\DeclareRobustCommand*\FSposizione[1]{\FSposizionestyle{#1}%
+ \iflanguage{english}%
+ {\index{floating object position!#1@\FSposizionestyle{#1}|textsc}}%
+ {\index{posizione degli oggetti flottanti!#1@\FSposizionestyle{#1}|textsc}}}%
+\DeclareRobustCommand*\FSallineamento[1]{FS\allineamentostyle{#1}%
+ \iflanguage{english}%
+ {\index{allignment code!#1@\FSallineamentostyle{#1}|textsc}}%
+ {\index{codice di allineamento!#1@\FSallineamentostyle{#1}|textsc}}}
+\newlength\SIfrthick
+\newlength\SIfrgap
+\newlength\SIfrwidth
+\newlength\SIfrheight
+\ifcsdef{insertwidth}{}{\newlength\insertwidth}
+\newlength\SIXR \newlength\SIYD
+\newlength\SIXL \newlength\SIYU
+\newdimen\radius
+\newdimen\framewidth
+
+\definecolor{SIbackground}{rgb}{0.95,0.95,0.95}
+\definecolor{SIframe}{rgb}{0.1,0.1,0.1}
+\definecolor{SItext}{rgb}{0,0,0}
+
+\def\SetSIbgd#1{\colorlet{SIbackground}{#1}}
+\def\SetSIfrm#1{\colorlet{SIframe}{#1}}
+\def\SetSItxt#1{\colorlet{SItext}{#1}}
+
+\DeclareOptionX<sintassi>{fboxrule}[1pt]{\fboxrule=#1}
+\DeclareOptionX<sintassi>{fboxsep}[1ex]{\fboxsep=#1}
+\DeclareOptionX<sintassi>{framecolor}[SIframe]{\SetSIfrm{#1}}
+\DeclareOptionX<sintassi>{backgroundcolor}[SIbackground]{\SetSIbgd{#1}}
+\DeclareOptionX<sintassi>{fontstyle}[\normalfont]{#1}
+\DeclareOptionX<sintassi>{radius}[\fboxsep]{\radius=#1}
+\DeclareOptionX<sintassi>{insertionwidth}[\linewidth]{\insertwidth=#1}
+
+\DeclareOptionX*{%
+ \packageWarning{FramedSyntax}{`\CurrentOption' ignored}%
+}
+
+\ExecuteOptionsX<sintassi>{%
+ fboxrule,
+ fboxsep,
+ framecolor,
+ backgroundcolor,
+ fontstyle,
+ radius,
+ insertionwidth
+}
+\ProcessOptionsX*\relax
+
+\providecommand\setfontsize{}
+\RenewDocumentCommand\setfontsize{O{1.2} m O{#1}}{%
+ \fontsize{#2}{\fpeval{#1*#2}}\selectfont}
+
+\providecommand\strippt{}
+\renewcommand\strippt[1]{\csuse{strip@pt}#1}
+
+\providecommand\framedbox{}
+\RenewDocumentCommand\framedbox{m m m O{#3} m}{%
+\bgroup
+ \dimen2=#1\relax
+ \dimen0=\dimexpr#1-(#2+#3)*2\relax
+ \setbox0\hbox{\parbox{\dimen0}{#5}}%
+ \SIfrthick=#2\relax
+ \SIXR=\dimexpr\wd0/2\relax \SIXL=-\SIXR\relax
+ \SIYU=\dimexpr(\ht0+\dp0)/2\relax \SIYD=-\SIYU\relax
+ \dimen4=#1\relax % box total width
+ \dimen6=\dimexpr\ht0+\dp0+(#2+#3)*2\relax% box total height
+ \dimen8=#4\relax % corner arc radius
+ \edef\SIbase{\strippt{\dimen4}}
+ \edef\SIalt{\strippt{\dimen6}}
+ \edef\SIxoff{\strippt{\dimexpr0.5\dimen4}}
+ \edef\SIyoff{\strippt{\dimexpr0.5\dimen6}}
+ \unitlength=1pt
+ \begin{picture}(\SIbase,\SIalt)(-\SIxoff,-\SIyoff)
+ \Frame*{\dimen4}{\dimen6}{\dimen8}%
+ \ifdim\SIfrthick>0pt\Frame{\dimen4}{\dimen6}{\dimen8}\fi
+ \put(0,0){\makebox(0,0){\box0}}%
+ \end{picture}
+\egroup
+\ignorespaces}
+
+ \providecommand\Frame{}
+ \RenewDocumentCommand\Frame{s m m m}{%
+ \bgroup
+ \SIXR=\dimexpr#2/2\relax \SIXL=-\SIXR%
+ \SIYU=\dimexpr#3/2\relax \SIYD=-\SIYU%
+ \IfBooleanTF{#1}{\linethickness{0pt}\color{SIbackground}}%
+ {\linethickness{\SIfrthick}\color{SIframe}}%
+ \moveto(\SIXR,\SIYD+#4)%
+ \circlearc{\SIXR-#4}{\SIYU-#4}{#4}{0}{90}%
+ \circlearc{\SIXL+#4}{\SIYU-#4}{#4}{90}{180}%
+ \circlearc{\SIXL+#4}{\SIYD+#4}{#4}{180}{270}%
+ \circlearc{\SIXR-#4}{\SIYD+#4}{#4}{270}{360}%
+ \closepath
+ \IfBooleanTF{#1}{\fillpath}{\strokepath}%
+ \egroup\ignorespaces}
+
+
+\providecommand\includeframedtext{}
+\RenewDocumentCommand\includeframedtext{O{\insertwidth} m O{}}%
+{\bgroup
+ \ExecuteOptionsX<sintassi>{#3}%
+ \ifdimgreater{\insertwidth}{\linewidth}{\insertwidth=\linewidth}{}%
+ \framedbox{\insertwidth}{\fboxrule}{\fboxsep}[\radius]{#2}%
+\egroup}
+
+\ProvideDocumentEnvironment{FramedSyntax}{}{}{}
+\RenewDocumentEnvironment{FramedSyntax}{o D(){}}
+{% environment opening commands
+\IfValueT{#1}{\setfontsize{#1}}% font size setting
+\ExecuteOptionsX<sintassi>{#2}% key = value options
+ \ifdimgreater{\insertwidth}{\linewidth}% width corrrection
+ {\insertwidth=\linewidth}{}%
+\framewidth=\insertwidth
+\let\meta\FSmeta \let\marg\FSmarg \let\oarg\FSoarg
+\let\Arg\FSArg \let\Marg\FSMarg \let\Oarg\FSOarg
+\let\garg\FSgarg \let\comando\FScomando \let\cs\FScs
+\let\csindex\FScs \let\Sambiente\SFSambiente
+\let\Dambiente\DFSambiente
+\let\Bambiente\BFSambiente \let\Eambiente\EFSambiente
+\let\amb\FSamb \let\ambstyle\FSambstyle
+\let\class\FSclass \let\classstyle\FSclassstyle
+\let\file\FSfile \let\filestyle\FSfilestyle
+\let\pack\FSpack \let\packstyle\FSpackstyle
+\let\prog\FSprog \let\progstyle\FSprogstyle
+\let\opz\FSopz \let\opzstyle\FSopzstyle
+\let\conta\FSconta \let\contastyle\FScontastyle
+\let\stile\FSstile \let\stilestyle\FSstilestyle
+\let\numeri\FSnumeri \let\numerystyle\FSnumeristyle
+\let\umisura\FSumisura \let\umisurastyle\FSumisurastyle
+\let\chiave\FSchiave \let\chiavestyle\FSchiavestyle
+\let\descrittore\FSdescrittore
+\let\descrittorestyle\FSDescrittorestyle
+\let\posizione\FSposizione \let\posizionestyle\FSposizionestyle
+\let\allineamento\FSallineamento
+ \let\allineamentostyle\FSallineamentostyle
+
+\begin{lrbox}{2}% open the necessary boxes
+\begin{minipage}{%
+ \dimexpr\framewidth-2\fboxrule-2\fboxsep}\obeylines
+}{% environment closing commands
+\end{minipage}\end{lrbox}% close the above boxes
+\begin{flushleft}% set the syntax thext flush left
+\includeframedtext{\box2}[#2]
+\end{flushleft}}%
+
+\NewDocumentEnvironment{Sintassi}{o D(){}}%
+ {\begin{FramedSyntax}[#1](#2)}{\end{FramedSyntax}}
+
+%% This Work has the status of `maintained'
+%%
+%% The Current Maintainer is Claudio Beccari
+%%
+%% This work consists of this file FramedSyntax.dtx,
+%% and the derived files FramedSyntax.sty and FramedSyntax.pdf.
+%%
+%% End of file `FramedSyntax.sty'.
diff --git a/Master/texmf-dist/tex/latex/fvextra/fvextra.sty b/Master/texmf-dist/tex/latex/fvextra/fvextra.sty
index 03eb1dc27e3..13c76f1f483 100644
--- a/Master/texmf-dist/tex/latex/fvextra/fvextra.sty
+++ b/Master/texmf-dist/tex/latex/fvextra/fvextra.sty
@@ -20,7 +20,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesPackage{fvextra}
- [2024/05/16 v1.7.0 fvextra - extensions and patches for fancyvrb]
+ [2024/09/14 v1.8.0 fvextra - extensions and patches for fancyvrb]
\RequirePackage{etoolbox}
\RequirePackage{fancyvrb}
\RequirePackage{upquote}
@@ -197,6 +197,34 @@
\FV@OuterDefSTXEmpty
\catcode`\^^C=\active
\FV@OuterDefETXEmpty
+ \begingroup
+ \catcode`\ =\FV@TmpSpaceCat\relax
+ \catcode`\{=1
+ \catcode`\}=2
+ \@ifnextchar\bgroup
+ {\endgroup
+ \catcode`\{=1
+ \catcode`\}=2
+ \catcode`\ =\active
+ \catcode`\^^I=\active
+ \FV@ReadVArg@Group{#1}}%
+ {\endgroup
+ \catcode`\ =\active
+ \catcode`\^^I=\active
+ \FV@ReadVArg@Char{#1}}}
+\def\FVExtraReadVArgSingleLine#1{%
+ \begingroup
+ \ifFV@pdfTeXinputenc
+ \ifdefstring{\inputencodingname}{utf8}%
+ {\let\FV@ReadVArg@Char\FV@ReadVArg@Char@UTF}%
+ {}%
+ \fi
+ \edef\FV@TmpSpaceCat{\the\catcode` }%
+ \let\do\@makeother\FVExtraDoSpecials
+ \catcode`\^^B=\active
+ \FV@OuterDefSTXEmpty
+ \catcode`\^^C=\active
+ \FV@OuterDefETXEmpty
\catcode`\^^M=\active
\FV@OuterDefEOLEmpty
\begingroup
@@ -209,17 +237,17 @@
\catcode`\}=2
\catcode`\ =\active
\catcode`\^^I=\active
- \FV@ReadVArg@Group{#1}\FV@EOL}%
+ \FV@ReadVArg@Group{#1}}%
{\endgroup
\catcode`\ =\active
\catcode`\^^I=\active
- \FV@ReadVArg@Char{#1}\FV@EOL}}
-\def\FV@ReadVArg@Group#1#2#3{%
+ \FV@ReadVArg@Char{#1}}}
+\def\FV@ReadVArg@Group#1#2{%
\endgroup
- #1{#3}}
-\def\FV@ReadVArg@Char#1#2#3{%
+ #1{#2}}
+\def\FV@ReadVArg@Char#1#2{%
\expandafter\expandafter\expandafter
- \if\expandafter\expandafter\expandafter\relax\expandafter\@gobble\detokenize{#3}\relax
+ \if\expandafter\expandafter\expandafter\relax\expandafter\@gobble\detokenize{#2}\relax
\expandafter\@gobble
\else
\expandafter\@firstofone
@@ -227,14 +255,14 @@
{\PackageError{fvextra}%
{Verbatim delimiters must be single characters, not commands}%
{Try a different delimiter}}%
- \def\FV@ReadVArg@Char@i##1##2##3#3{%
+ \def\FV@ReadVArg@Char@i##1##2#2{%
\endgroup
- ##1{##3}}%
- \FV@ReadVArg@Char@i{#1}\FV@EOL}%
+ ##1{##2}}%
+ \FV@ReadVArg@Char@i{#1}}%
\ifFV@pdfTeXinputenc
-\def\FV@ReadVArg@Char@UTF#1#2#3{%
+\def\FV@ReadVArg@Char@UTF#1#2{%
\expandafter\expandafter\expandafter
- \if\expandafter\expandafter\expandafter\relax\expandafter\@gobble\detokenize{#3}\relax
+ \if\expandafter\expandafter\expandafter\relax\expandafter\@gobble\detokenize{#2}\relax
\expandafter\@gobble
\else
\expandafter\@firstofone
@@ -242,20 +270,25 @@
{\PackageError{fvextra}%
{Verbatim delimiters must be single characters, not commands}%
{Try a different delimiter}}%
- \ifcsname FV@U8:\detokenize{#3}\endcsname
+ \ifcsname FV@U8:\detokenize{#2}\endcsname
\expandafter\@firstoftwo
\else
\expandafter\@secondoftwo
\fi
{\def\FV@UTF@octets@after##1{\FV@ReadVArg@Char@UTF@i{#1}{##1}}%
- \csname FV@U8:\detokenize{#3}\endcsname#3}%
- {\FV@ReadVArg@Char@UTF@i{#1}{#3}}}
+ \csname FV@U8:\detokenize{#2}\endcsname#2}%
+ {\FV@ReadVArg@Char@UTF@i{#1}{#2}}}
\def\FV@ReadVArg@Char@UTF@i#1#2{%
- \def\FV@ReadVArg@Char@i##1##2##3#2{%
+ \def\FV@ReadVArg@Char@i##1##2#2{%
\endgroup
- ##1{##3}}%
- \FV@ReadVArg@Char@i{#1}\FV@EOL}%
+ ##1{##2}}%
+ \FV@ReadVArg@Char@i{#1}}%
\fi
+\newbool{FV@vargsingleline}
+\define@booleankey{FV}{vargsingleline}%
+ {\booltrue{FV@vargsingleline}}
+ {\boolfalse{FV@vargsingleline}}
+\fvset{vargsingleline=false}
\def\FVExtrapdfstringdef#1#2{%
\AfterPreamble{%
\ifcsname pdfstringdef\endcsname
@@ -962,7 +995,8 @@
\FV@InlineKeyValues#1,}}
\def\FV@UseInlineKeyValues{%
- \expandafter\fvset\expandafter{\FV@InlineKeyValues}}
+ \expandafter\fvset\expandafter{\FV@InlineKeyValues}%
+ \FV@ApplyBreakAnywhereInlineStretch}
\newbool{FV@extra}
\define@booleankey{FV}{extra}%
{\booltrue{FV@extra}}%
@@ -993,18 +1027,31 @@
{\FVC@Verb@Extra@i}}
\def\FVC@Verb@Extra@i{%
\begingroup
- \FVExtraReadVArg{%
+ \ifbool{FV@vargsingleline}%
+ {\let\FV@Reader\FVExtraReadVArgSingleLine}%
+ {\let\FV@Reader\FVExtraReadVArg}%
+ \FV@Reader{%
\FV@UseInlineKeyValues\FV@UseKeyValues\FV@FormattingPrep
\FVExtraDetokenizeVArg{%
\FVExtraRetokenizeVArg{\FVC@Verb@Extra@ii}{\FV@CatCodes}}}}
\def\FVC@Verb@Extra@ii#1{%
- \ifFV@breaklines
+ \ifx\FancyVerbBackgroundColor\relax
\expandafter\@firstoftwo
\else
\expandafter\@secondoftwo
\fi
- {\FV@InsertBreaks{\FancyVerbFormatInline}{#1}}%
- {\mbox{#1}}%
+ {\ifbool{FV@breaklines}%
+ {\FV@InsertBreaks{\FancyVerbFormatInline}{#1}}%
+ {\mbox{\FancyVerbFormatInline{#1}}}}%
+ {\setlength{\FV@TmpLength}{\fboxsep}%
+ \ifx\FancyVerbBackgroundColorPadding\relax
+ \setlength{\fboxsep}{0pt}%
+ \else
+ \setlength{\fboxsep}{\FancyVerbBackgroundColorPadding}%
+ \fi
+ \colorbox{\FancyVerbBackgroundColor}{%
+ \setlength{\fboxsep}{\FV@TmpLength}%
+ \FancyVerbBackgroundColorVPhantom\FancyVerbFormatInline{#1}}}%
\endgroup}
\let\FVC@SaveVerb@FV\FVC@SaveVerb
\def\FVC@SaveVerb{%
@@ -1019,7 +1066,10 @@
\@namedef{FV@SV@#1}{}%
\@namedef{FV@SVRaw@#1}{}%
\begingroup
- \FVExtraReadVArg{%
+ \ifbool{FV@vargsingleline}%
+ {\let\FV@Reader\FVExtraReadVArgSingleLine}%
+ {\let\FV@Reader\FVExtraReadVArg}%
+ \FV@Reader{%
\FVC@SaveVerb@Extra@i{#1}}}
\def\FVC@SaveVerb@Extra@i#1#2{%
\FV@UseInlineKeyValues\FV@UseKeyValues\FV@FormattingPrep
@@ -1061,15 +1111,7 @@
\def\FV@UseVerb@Extra@Retok#1{%
\FVExtraDetokenizeVArg{%
\FVExtraRetokenizeVArg{\FV@UseVerb@Extra}{\FV@CatCodes}}{#1}}
-\def\FV@UseVerb@Extra#1{%
- \ifFV@breaklines
- \expandafter\@firstoftwo
- \else
- \expandafter\@secondoftwo
- \fi
- {\FV@InsertBreaks{\FancyVerbFormatInline}{#1}}%
- {\mbox{#1}}%
- \endgroup}
+\let\FV@UseVerb@Extra\FVC@Verb@Extra@ii
\def\EscVerb{%
\FVExtraRobustCommand\RobustEscVerb\FVExtraUnexpandedReadStarOArgBEscVArg}
\protected\def\RobustEscVerb{\FV@Command{}{EscVerb}}
@@ -1086,15 +1128,7 @@
\FV@UseInlineKeyValues\FV@UseKeyValues\FV@FormattingPrep
\FVExtraDetokenizeREscVArg{%
\FVExtraRetokenizeVArg{\FVC@EscVerb@ii}{\FV@CatCodes}}{#1}}
-\def\FVC@EscVerb@ii#1{%
- \ifFV@breaklines
- \expandafter\@firstoftwo
- \else
- \expandafter\@secondoftwo
- \fi
- {\FV@InsertBreaks{\FancyVerbFormatInline}{#1}}%
- {\mbox{#1}}%
- \endgroup}
+\let\FVC@EscVerb@ii\FVC@Verb@Extra@ii
\def\VerbEnv{%
\ifcsname @currenvir\endcsname
\ifx\@currenvir\@empty
@@ -1320,50 +1354,68 @@
\global\let\FV@bufferlengthname@tmp\relax
\global\let\FancyVerbBufferLineName@tmp\relax}}
\def\endVerbatimBuffer{\FVE@VerbatimBuffer}
-\newcommand{\VerbatimInsertBuffer}[1][]{%
- \begingroup
+\define@key{FV}{insertenvname}{%
+ \def\FV@VerbatimInsertEnvName{#1}}
+\fvset{insertenvname=Verbatim}
+\def\FV@Environment@InsertBuffer#1#2{%
\def\FV@KeyValues{#1}%
- \def\FV@Scan{%
- \FV@CatCodes
- \xdef\FV@EnvironName{Verbatim}%
- \ifnum\expandafter\value\expandafter{\FV@bufferlengthname}=\z@\relax
- \PackageError{fvextra}%
- {Buffer length counter \FV@bufferlengthname\space is invalid or zero}%
- {}%
- \let\FV@GetLine\relax
+ \FV@GetKeyValues{\@nameuse{FVB@#2}}}
+\def\FV@Scan@InsertBuffer{%
+ \FV@CatCodes
+ \xdef\FV@EnvironName{\FV@VerbatimInsertEnvName}%
+ \ifnum\expandafter\value\expandafter{\FV@bufferlengthname}=\z@\relax
+ \PackageError{fvextra}%
+ {Buffer length counter \FV@bufferlengthname\space is invalid or zero}%
+ {}%
+ \let\FV@GetLine\relax
+ \fi
+ \FV@BeginScanning}%
+\def\VerbatimInsertBuffer@def@FV@Line#1{%
+ \FVExtraRetokenizeVArg{\def\FV@Line}{}{#1}}
+\def\FancyVerbGetLine@VerbatimInsertBuffer{%
+ \ifnum\value{FancyVerbBufferIndex}>%
+ \expandafter\value\expandafter{\FV@bufferlengthname}\relax
+ \global\let\FV@EnvironName\relax
+ \let\next\relax
+ \else
+ \ifcsname\FancyVerbBufferLineName\arabic{FancyVerbBufferIndex}\endcsname
+ \expandafter\let\expandafter\FV@Line@Buffer
+ \csname\FancyVerbBufferLineName\arabic{FancyVerbBufferIndex}\endcsname
+ \expandafter\VerbatimInsertBuffer@def@FV@Line\expandafter{\FV@Line@Buffer}%
+ \def\next{\FV@PreProcessLine\FV@GetLine}%
+ \stepcounter{FancyVerbBufferIndex}%
+ \else
+ \def\next{%
+ \PackageError{fvextra}%
+ {Buffer with line macro named
+ "\FancyVerbBufferLineName\arabic{FancyVerbBufferIndex}" does not exist}%
+ {Check bufferlinename, bufferlengthname, and globalbuffer settings}%
+ }%
\fi
- \FV@GetLine}%
+ \fi
+ \next}
+\newcommand{\VerbatimInsertBuffer}[1][]{%
+ \begingroup
+ \let\FV@Scan\FV@Scan@InsertBuffer
\let\FV@CheckScan\relax
+ \let\FV@Environment\FV@Environment@InsertBuffer
+ \let\FancyVerbGetLine\FancyVerbGetLine@VerbatimInsertBuffer
\setcounter{FancyVerbBufferIndex}{1}%
- \def\VerbatimInsertBuffer@def@FV@Line##1{%
- \FVExtraRetokenizeVArg{\def\FV@Line}{}{##1}}
- \def\FancyVerbGetLine{%
- \ifnum\value{FancyVerbBufferIndex}>%
- \expandafter\value\expandafter{\FV@bufferlengthname}\relax
- \global\let\FV@EnvironName\relax
- \let\next\relax
- \else
- \ifcsname\FancyVerbBufferLineName\arabic{FancyVerbBufferIndex}\endcsname
- \expandafter\let\expandafter\FV@Line@Buffer
- \csname\FancyVerbBufferLineName\arabic{FancyVerbBufferIndex}\endcsname
- \expandafter\VerbatimInsertBuffer@def@FV@Line\expandafter{\FV@Line@Buffer}%
- \def\next{\FV@PreProcessLine\FV@GetLine}%
- \stepcounter{FancyVerbBufferIndex}%
- \else
- \def\next{%
- \PackageError{fvextra}%
- {Buffer with line macro named
- "\FancyVerbBufferLineName\arabic{FancyVerbBufferIndex}" does not exist}%
- {Check bufferlinename, bufferlengthname, and globalbuffer settings}%
- }%
- \fi
- \fi
- \next}%
- \FVB@Verbatim
- \FVE@Verbatim
+ \VerbatimInsertBuffer@i{#1}%
\setcounter{FancyVerbBufferIndex}{0}%
\endgroup
\@doendpe}
+\begingroup
+\catcode`\^^M=\active
+\gdef\VerbatimInsertBuffer@i#1{%
+ \begingroup%
+ \fvset{#1}%
+ \global\let\FV@CurrentVerbatimInsertEnvName\FV@VerbatimInsertEnvName%
+ \endgroup%
+ \csname \FV@CurrentVerbatimInsertEnvName\endcsname[#1]^^M%
+ \csname end\FV@CurrentVerbatimInsertEnvName\endcsname%
+ \global\let\FV@CurrentVerbatimInsertEnvName\FV@Undefined}%
+\endgroup
\newcommand{\VerbatimClearBuffer}[1][]{%
\begingroup
\def\FV@KeyValues{#1}%
@@ -1673,14 +1725,19 @@
\hbox to \linewidth{%
\FV@LeftListNumber
\FV@LeftListFrame
- \FancyVerbFormatLine{%
- \FancyVerbHighlightLine{%
- \FV@ObeyTabs{\FancyVerbFormatText{#1}}}}\hss
+ \FV@BGColor@List{%
+ \FancyVerbFormatLine{%
+ \FancyVerbHighlightLine{%
+ \FV@ObeyTabs{\FancyVerbFormatText{#1}}}}}\hss
\FV@RightListFrame
\FV@RightListNumber}%
\hss}}
\def\FV@BProcessLine#1{%
\hbox{\FancyVerbFormatLine{%
+ \ifx\FancyVerbBackgroundColor\relax
+ \else
+ \expandafter\FancyVerbBackgroundColorVPhantom
+ \fi
\FancyVerbHighlightLine{%
\FV@ObeyTabs{\FancyVerbFormatText{#1}}}}}}
\newbool{FV@NumberFirstLine}
@@ -1846,6 +1903,153 @@
\fi}{}%
\fi}%
}
+\define@key{FV}{backgroundcolor}{%
+ \def\FancyVerbBackgroundColor{#1}%
+ \ifx\FancyVerbBackgroundColor\FV@None
+ \let\FancyVerbBackgroundColor\relax
+ \else\ifx\FancyVerbBackgroundColor\@empty
+ \let\FancyVerbBackgroundColor\relax
+ \fi\fi}%
+\fvset{backgroundcolor=none}
+\define@key{FV}{bgcolor}{%
+ \fvset{backgroundcolor=#1}}
+\define@key{FV}{backgroundcolorvphantom}{%
+ \def\FancyVerbBackgroundColorVPhantom{#1}%
+ \ifx\FancyVerbBackgroundColorVPhantom\FV@None
+ \let\FancyVerbBackgroundColorVPhantom\relax
+ \else\ifx\FancyVerbBackgroundColorVPhantom\@empty
+ \let\FancyVerbBackgroundColorVPhantom\relax
+ \fi\fi}
+\fvset{backgroundcolorvphantom=\vphantom{\"Apgjy}}
+\define@key{FV}{bgcolorvphantom}{%
+ \fvset{backgroundcolorvphantom=#1}}
+\let\FancyVerbBackgroundColorPadding\relax
+\def\FV@backgroundcolorpadding@none@framenotsingle{%
+ \fvset{frame=none,framerule,rulecolor=none}}
+\def\FV@backgroundcolorpadding@dim@framenotsingle{%
+ \fvset{frame=single,framerule=0pt,rulecolor=\FancyVerbBackgroundColor}}
+\define@key{FV}{backgroundcolorpadding}{%
+ \def\FancyVerbBackgroundColorPadding{#1}%
+ \ifx\FancyVerbBackgroundColorPadding\FV@None
+ \let\FancyVerbBackgroundColorPadding\relax
+ \else\ifx\FancyVerbBackgroundColorPadding\@empty
+ \let\FancyVerbBackgroundColorPadding\relax
+ \fi\fi
+ \let\FV@Next\relax
+ \ifx\FancyVerbBackgroundColorPadding\relax
+ \ifx\FV@BeginListFrame\FV@BeginListFrame@Single
+ \else
+ \let\FV@Next\FV@backgroundcolorpadding@none@framenotsingle
+ \fi
+ \ifx\FV@LeftListFrame\FV@LeftListFrame@Single
+ \else
+ \let\FV@Next\FV@backgroundcolorpadding@none@framenotsingle
+ \fi
+ \ifx\FV@RightListFrame\FV@RightListFrame@Single
+ \else
+ \let\FV@Next\FV@backgroundcolorpadding@none@framenotsingle
+ \fi
+ \ifx\FV@EndListFrame\FV@EndListFrame@Single
+ \else
+ \let\FV@Next\FV@backgroundcolorpadding@none@framenotsingle
+ \fi
+ \FV@Next
+ \fvset{framesep,fillcolor=none}%
+ \else
+ \ifx\FV@BeginListFrame\FV@BeginListFrame@Single
+ \else
+ \let\FV@Next\FV@backgroundcolorpadding@dim@framenotsingle
+ \fi
+ \ifx\FV@LeftListFrame\FV@LeftListFrame@Single
+ \else
+ \let\FV@Next\FV@backgroundcolorpadding@dim@framenotsingle
+ \fi
+ \ifx\FV@RightListFrame\FV@RightListFrame@Single
+ \else
+ \let\FV@Next\FV@backgroundcolorpadding@dim@framenotsingle
+ \fi
+ \ifx\FV@EndListFrame\FV@EndListFrame@Single
+ \else
+ \let\FV@Next\FV@backgroundcolorpadding@dim@framenotsingle
+ \fi
+ \FV@Next
+ \fvset{framesep=#1,fillcolor=\FancyVerbBackgroundColor}%
+ \fi}
+\define@key{FV}{bgcolorpadding}{\fvset{backgroundcolorpadding=#1}}
+\def\FV@BGColor@List#1{%
+ \ifx\FancyVerbBackgroundColor\relax
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+ {#1}%
+ {\setlength{\FV@TmpLength}{\fboxsep}%
+ \setlength{\fboxsep}{0pt}%
+ \colorbox{\FancyVerbBackgroundColor}{%
+ \setlength{\fboxsep}{\FV@TmpLength}%
+ \rlap{\FancyVerbBackgroundColorVPhantom\strut#1}%
+ \hspace{\linewidth}%
+ \ifx\FV@RightListFrame\relax\else
+ \hspace{-\FV@FrameSep}%
+ \hspace{-\FV@FrameRule}%
+ \fi
+ \ifx\FV@LeftListFrame\relax\else
+ \hspace{-\FV@FrameSep}%
+ \hspace{-\FV@FrameRule}%
+ \fi}%
+ \hss}}
+\let\FV@BVerbatimBegin@NoBGColor\FV@BVerbatimBegin
+\let\FV@BVerbatimEnd@NoBGColor\FV@BVerbatimEnd
+\def\FV@BVerbatimBegin{%
+ \begingroup
+ \FV@UseKeyValues
+ \FV@FormattingPrep
+ \let\FV@FormattingPrep\relax
+ \FV@ObeyTabsInit
+ \let\FV@ObeyTabsInit\relax
+ \ifx\FancyVerbBackgroundColor\relax
+ \expandafter\FV@BVerbatimBegin@NoBGColor
+ \else
+ \expandafter\FV@BVerbatimBegin@BGColor
+ \fi}
+\def\FV@BVerbatimEnd{%
+ \ifx\FancyVerbBackgroundColor\relax
+ \expandafter\FV@BVerbatimEnd@NoBGColor
+ \else
+ \expandafter\FV@BVerbatimEnd@BGColor
+ \fi
+ \endgroup}
+\def\FV@BVerbatimBegin@BGColor{%
+ \gdef\FV@TheVerbatim{}%
+ \ifx\FV@boxwidth\relax
+ \gdef\FV@boxwidth@tmp{0pt}%
+ \def\FV@ProcessLine##1{%
+ \sbox{\FV@LineBox}{\FV@BProcessLine{##1}}%
+ \ifdim\wd\FV@LineBox>\FV@boxwidth@tmp\relax
+ \xdef\FV@boxwidth@tmp{\the\wd\FV@LineBox}%
+ \fi
+ \expandafter\gdef\expandafter\FV@TheVerbatim\expandafter{%
+ \FV@TheVerbatim\FV@ProcessLine{##1}}}%
+ \else
+ \def\FV@ProcessLine##1{%
+ \expandafter\gdef\expandafter\FV@TheVerbatim\expandafter{%
+ \FV@TheVerbatim\FV@ProcessLine{##1}}}%
+ \fi}
+\def\FV@BVerbatimEnd@BGColor{%
+ \ifx\FV@boxwidth\relax
+ \let\FV@boxwidth\FV@boxwidth@tmp
+ \global\let\FV@boxwidth@tmp\FV@Undefined
+ \fi
+ \setlength{\FV@TmpLength}{\fboxsep}%
+ \ifx\FancyVerbBackgroundColorPadding\relax
+ \setlength{\fboxsep}{0pt}%
+ \else
+ \setlength{\fboxsep}{\FancyVerbBackgroundColorPadding}%
+ \fi
+ \colorbox{\FancyVerbBackgroundColor}{%
+ \setlength{\fboxsep}{\FV@TmpLength}%
+ \FV@BVerbatimBegin@NoBGColor\FV@TheVerbatim\FV@BVerbatimEnd@NoBGColor}%
+ \gdef\FV@TheVerbatim{}}
\define@key{FV}{highlightlines}{\def\FV@HighlightLinesList{#1}}%
\fvset{highlightlines=}
\define@key{FV}{highlightcolor}{\def\FancyVerbHighlightColor{#1}}%
@@ -1944,6 +2148,25 @@
\expandafter\FV@HighlightLinesParse@Range@Loop
\fi}
\g@addto@macro\FV@FormattingPrep@PreHook{\FV@HighlightLinesPrep}
+\def\FV@StepLineNo@Patch@HighlightLine{%
+ \ifcsname FV@HighlightLine:\number\c@FancyVerbLine\endcsname
+ \@tempcnta=\c@FancyVerbLine
+ \advance\@tempcnta\@ne
+ \ifcsname FV@HighlightLine:\number\@tempcnta\endcsname
+ \else
+ \expandafter\let
+ \csname FV@HighlightLine:\number\c@FancyVerbLine\endcsname\FV@Undefined
+ \fi
+ \fi}
+\patchcmd{\FV@StepLineNo}%
+ {\ifx\FV@Line\empty}%
+ {\ifx\FV@Line\empty\FV@StepLineNo@Patch@HighlightLine}%
+ {}%
+ {\PackageError{fvextra}%
+ {Failed to patch \string\FV@StepLineNo\ to make highlightlines
+ compatible with numberblanklines}%
+ {Failed to patch \string\FV@StepLineNo\ to make highlightlines
+ compatible with numberblanklines}}
\newcount\FV@LoopCount
\newbox\FV@NCharsBox
\def\FV@SetToWidthNChars#1#2{%
@@ -2073,6 +2296,22 @@
\let\FancyVerbBreakStop\relax
\let\FV@Break@DefaultToken\FV@Break@NBToken}
\fvset{breakanywhere=false}
+\define@key{FV}{breakanywhereinlinestretch}{%
+ \def\FV@breakanywhereinlinestretch{#1}%
+ \ifx\FV@breakanywhereinlinestretch\FV@None
+ \let\FV@breakanywhereinlinestretch\relax
+ \else\ifx\FV@breakanywhereinlinestretch\@empty
+ \let\FV@breakanywhereinlinestretch\relax
+ \fi\fi}
+\fvset{breakanywhereinlinestretch=none}
+\def\FV@ApplyBreakAnywhereInlineStretch{%
+ \ifx\FV@breakanywhereinlinestretch\relax
+ \else
+ \let\FancyVerbBreakAnywhereBreak@Orig\FancyVerbBreakAnywhereBreak
+ \def\FancyVerbBreakAnywhereBreak{%
+ \nobreak\hspace{0pt plus \FV@breakanywhereinlinestretch}%
+ \FancyVerbBreakAnywhereBreak@Orig}%
+ \fi}
\define@key{FV}{breakbefore}{%
\ifstrempty{#1}%
{\let\FV@BreakBefore\@empty
@@ -2220,6 +2459,15 @@
{\booltrue{FV@breaknonspaceingroup}}%
{\boolfalse{FV@breaknonspaceingroup}}
\fvset{breaknonspaceingroup=false}
+\newbool{FV@breakpreferspaces}
+\booltrue{FV@breakpreferspaces}
+\define@booleankey{FV}{breakpreferspaces}%
+ {\booltrue{FV@breakpreferspaces}}%
+ {\boolfalse{FV@breakpreferspaces}}
+\def\FV@BreakHyphenation{%
+ \finalhyphendemerits=0\relax
+ \ifbool{FV@breakpreferspaces}{}{\linepenalty=\@M\relax}}
+\g@addto@macro\FV@FormattingPrep@PreHook{\FV@BreakHyphenation}
\newsavebox{\FV@LineBox}
\newsavebox{\FV@LineIndentBox}
\let\FV@LineIndentChars\@empty
@@ -2857,8 +3105,9 @@
\FV@SaveLineBox{#1}}%
\FV@LeftListNumber
\FV@LeftListFrame
- \FancyVerbFormatLine{%
- \FancyVerbHighlightLine{\usebox{\FV@LineBox}}}%
+ \FV@BGColor@List{%
+ \FancyVerbFormatLine{%
+ \FancyVerbHighlightLine{\usebox{\FV@LineBox}}}}%
\FV@RightListFrame
\FV@RightListNumber
\ifx\FV@Tab\FV@TrueTab@UseWidth
@@ -2869,10 +3118,11 @@
\let\FancyVerbBreakStop\relax
\FV@LeftListNumber
\FV@LeftListFrame
- \FancyVerbFormatLine{%
- \FancyVerbHighlightLine{%
- \parbox[t]{\FV@LineWidth}{%
- \noindent\strut\FV@ObeyTabs{\FancyVerbFormatText{#1}}\strut}}}%
+ \FV@BGColor@List{%
+ \FancyVerbFormatLine{%
+ \FancyVerbHighlightLine{%
+ \parbox[t]{\FV@LineWidth}{%
+ \noindent\strut\FV@ObeyTabs{\FancyVerbFormatText{#1}}\strut}}}}%
\FV@RightListFrame
\FV@RightListNumber
\fi}%
diff --git a/Master/texmf-dist/tex/latex/gelasiomath/gelasiomath.sty b/Master/texmf-dist/tex/latex/gelasiomath/gelasiomath.sty
new file mode 100644
index 00000000000..e468d793de3
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/gelasiomath/gelasiomath.sty
@@ -0,0 +1,295 @@
+\NeedsTeXFormat{LaTeX2e}
+
+\def\fileversion{1.0}
+\def\filedate{2024/06/19}
+\ProvidesPackage{gelasiomath}[%
+\filedate\space v\fileversion (Michael Sharpe) Use xch small caps in gelasio text and supply matching math package]
+
+\message{`gelasiomath'v\fileversion,\space\filedate\space Load\space XCharter\space small\space caps\space as\space target\space for\space scshape\space and\space load\space newtx\space with\space appropriate\space options.\space (msharpe)}
+
+\RequirePackage{iftex,etoolbox,xkeyval,ifthen,xparse}
+\def\gelm@scale{1} % default value for scale option
+
+\DeclareOptionX{scale}{\def\gelm@scale{#1}}
+\newif\ifgelm@scosf
+\DeclareOptionX{scosf}{\gelm@scosftrue}
+%\newif\ifgelm@gelscfigs\gelm@gelscfigstrue
+%\DeclareOptionX{nogelfigs}{\gelm@gelscfigsfalse}
+
+\DeclareOptionX*{\PassOptionsToPackage{\CurrentOption}{newtx}}
+
+\ProcessOptionsX \relax
+\@tempdima=\gelm@scale\p@
+\@tempdimb=.92\@tempdima % for gelasio text scale
+\@tempdimc=.938\@tempdima % for xcharter text
+\edef\gel@scale{\strip@pt\@tempdimb}
+\edef\XCharter@scale{\strip@pt\@tempdimc}
+\usepackage[gelasio,textscale=\gel@scale,mathscale=\gelm@scale]{newtx}
+%\AtBeginDocument{%
+% \expandafter\ifx\csname Gelasio@scale\endcsname\relax
+% \edef\Gelasio@scale{1}
+% \edef\XCharter@scale{1.02}
+% \else
+% \@tempdima=\Gelasio@scale\p@
+% \@tempdima=1.02\@tempdima%
+% \edef\XCharter@scale{\strip@pt\@tempdima}
+% \fi
+%} % AtBeginDocument
+\def\gelm@scit{scit}% for testing value of \f@shape
+\def\gelm@sc{sc}% for testing value of \f@shape
+
+\iftutex
+\AtBeginDocument{%
+\def\gelm@tufig{\addfontfeatures{RawFeature = -smcp , \ifgelm@scosf Numbers = OldStyle, \fi}}
+\addfontfeatures{UprightFeatures={SmallCapsFont={XCharter-Roman}, SmallCapsFeatures={%
+\ifgelm@scosf Numbers = OldStyle ,\fi
+ Letters=SmallCaps,
+Scale=\XCharter@scale}},%
+ItalicFeatures={SmallCapsFont={XCharter-Italic}, SmallCapsFeatures={%
+\ifgelm@scosf Numbers = OldStyle ,\fi
+Letters=SmallCaps, Scale=\XCharter@scale}},%
+BoldFeatures={SmallCapsFont={XCharter-Bold}, SmallCapsFeatures={%
+\ifgelm@scosf Numbers = OldStyle ,\fi
+Letters=SmallCaps, Scale=\XCharter@scale}},%
+BoldItalicFeatures={SmallCapsFont={XCharter-BoldItalic}, SmallCapsFeatures={%
+\ifgelm@scosf Numbers = OldStyle ,\fi
+Letters=SmallCaps, Scale=\XCharter@scale}}%
+}}
+\ifgelm@scosf
+ \AtBeginDocument{%
+ \xpretocmd{\scshape}
+ {\addfontfeatures{Numbers=OldStyle}}
+ {}{}%
+ }%
+\fi
+
+\else %not tutex
+ \AtBeginDocument{%
+ \ifgelm@scosf%
+ \def\gelm@fig{OsF}
+ \else % use default settings from gelasio.sty
+ \def\gelm@fig{\gelasio@figurealign\gelasio@figurestyle}
+ \fi
+ \edef\XCharter@@scale{s*[\csname XCharter@scale\endcsname]}%
+ \let\scshape\relax
+ \DeclareRobustCommand\scshape{%
+ \not@math@alphabet\scshape\relax
+ \fontfamily{XCharter-\gelm@fig}\fontshape\scdefault\selectfont}
+ %\DeclareTextCommand{\textsc}{\scshape}
+ }
+\fi
+
+%\newtoks\gel@SC % store for processed string
+%\newtoks\gel@src % store for source string
+%\def\gel@Append#1{% append #1 to token register \gel@SC
+%\toks0={#1}%
+%\edef\gel@tmpa{\noexpand\gel@SC={\the\gel@SC \the\toks0}}%
+%\gel@tmpa}
+%
+%\def\gel@Pop#1(into:)#2{%
+% \edef\gel@act{\noexpand\gel@SplitOff\the#1%
+% (gel@head:)\noexpand#2(gel@tail:)\noexpand#1}%
+% \gel@act}
+%\def\gel@SplitOff#1#2(gel@head:)#3(gel@tail:)#4{\def#3{\noexpand #1}#4={#2}}
+%
+%\def\nxt|#1#2\@nil{%
+%\toks0={#2}\edef\param{\the\toks0}%
+%\ifx\param\@empty%
+% \textsc{\the\gel@SC} % done
+%\else% continue parsing for capital letters
+% \ifthenelse{\isblank
+% \ifcat A#1 % #1 is letter
+% \if#1\uppercase{#1}%
+% \gel@Append{\textulc{#1}}%
+% \else
+% \gel@Append{#1}%
+% \fi
+% \else % not a letter
+% \gel@Append{#1}%
+% \fi
+% \nxt|#2\@nil%
+%\fi}
+%
+%\def\textSC#1{\gel@SC={}\nxt|#1\@nil}
+\def\textSC#1{\textsc{\capsescape{#1}}}
+\iftutex%
+ \def\textULC#1{{\gelasio\gelm@tufig%
+ \ifthenelse{\equal{\f@shape}{\gelm@scit}}{%shape is scit
+ \itshape}{% not so
+ \ifthenelse{\equal{\f@shape}{\gelm@sc}}{% shape is sc
+ \upshape}}%
+ \textulc{#1}}}
+
+\else
+ \def\textULC#1{{\fontfamily{Gelasio-\gelm@fig}%
+ \ifthenelse{\equal{\f@shape}{\gelm@scit}}{%shape is scit
+ \fontshape{it}}{% not so
+ \ifthenelse{\equal{\f@shape}{\gelm@sc}}{% shape is sc
+ \fontshape{n}}{}}%
+ \selectfont #1}}
+\fi
+\ExplSyntaxOn
+\NewDocumentCommand{\capsescape}{ m }
+ {
+ \gel_capsescape:n { #1 }
+ }
+
+\tl_new:N \l__gel_capsescape_input_tl
+\cs_new_protected:Npn \gel_capsescape:n #1
+ {
+ % store the string in a variable
+ \tl_set:Nn \l__gel_capsescape_input_tl {#1}
+ \regex_replace_all:nnN
+ % search for capital letters, figures and more
+ { ([A-Z\d]+|\cC.\{?[A-Z]+\}?) }
+ % replace the match with \textULC{<match>}
+ { \c{textULC}\cB\{\1\cE\} }
+ \l__gel_capsescape_input_tl
+ \tl_use:N \l__gel_capsescape_input_tl
+ }
+\ExplSyntaxOff
+
+
+% galasio.sty does not offer macros for numerators, denominators or inferiors
+\AtBeginDocument{%
+\ifgelasio@otf
+ \DeclareRobustCommand{\lfstyle}{%
+ \not@math@alphabet\lfstyle\relax
+ \addfontfeatures{Numbers={Proportional,Lining}}%
+ }
+
+ \DeclareRobustCommand{\tlfstyle}{%
+ \not@math@alphabet\tlfstyle\relax
+ \addfontfeatures{Numbers={Monospaced,Lining}}%
+ }
+ \DeclareRobustCommand{\osfstyle}{%
+ \not@math@alphabet\osfstyle\relax
+ \addfontfeatures{Numbers={Proportional,OldStyle}}%
+ }
+ \DeclareRobustCommand{\tosfstyle}{%
+ \not@math@alphabet\tosfstyle\relax
+ \addfontfeatures{Numbers={Monospaced,OldStyle}}%
+ }
+ \providecommand\nufigures{%
+ \addfontfeatures{VerticalPosition=Numerator}}
+ \providecommand\defigures{%
+ \addfontfeatures{VerticalPosition=Denominator}}
+ \providecommand\infigures{%
+ \addfontfeatures{VerticalPosition=Inferior}}
+
+ \DeclareTextFontCommand{\textnum}{\nufigures}
+ \DeclareTextFontCommand{\textde}{\defigures}
+ \DeclareTextFontCommand{\textinf}{\infigures}
+ \NewCommandCopy\textnu\textnum
+ \@ifundefined{tx@sfrSC}{}{%
+ \newcommand*{\textsmde}[1]{%
+ \setbox0=\hbox{\scalebox\tx@sfrSC{\textde{#1}}}\box0}}
+
+\else % type1 --we define \text.. by lowering \textsu
+ % missing font switches for type1
+ \DeclareRobustCommand{\lfstyle}{%
+ \not@math@alphabet\lfstyle\relax
+ \fontfamily{Gelasio-LF}\selectfont %
+ }
+ \DeclareRobustCommand{\tlfstyle}{%
+ \not@math@alphabet\tlfstyle\relax
+ \fontfamily{Gelasio-TLF}\selectfont %
+ }
+ \DeclareRobustCommand{\osfstyle}{%
+ \not@math@alphabet\osfstyle\relax
+ \fontfamily{Gelasio-OsF}\selectfont %
+ }
+ \DeclareRobustCommand{\tosfstyle}{%
+ \not@math@alphabet\tosfstyle\relax
+ \fontfamily{Gelasio-TOsF}\selectfont %
+ }
+ \newbox\tx@box
+ \newcommand*{\textde}[1]{{\setbox0=\hbox{\textsu{#1}}\setbox1=\hbox{\raise -.763ex \box0}\dp1=0pt\ht1=.977ex\box1\relax}}
+
+ \providecommand*\textnum[1]{\raisebox{.507ex}{\textde{#1}}}
+ \NewCommandCopy\textnu\textnum
+ \providecommand*\textinf[1]{\raisebox{-.237ex}{\textde{#1}}}
+ \let\textnu\textnum
+% \providecommand*\textde[1]{{\setbox0=\hbox{\textsu{#1}}%
+% \setbox1=\hbox{\lower.763ex\box0}\dp0=0pt\relax\box1\relax}}
+ %\raisebox{-.763ex}{\textsu{#1}}}
+ % the following will be used only by \textsfrac
+ \@ifundefined{tx@sfrSC}{}{%
+ \newcommand*{\textsmde}[1]{%
+ \setbox0=\hbox{\scalebox\tx@sfrSC{\textde{#1}}}\box0}%
+ }
+\fi
+\DeclareTextFontCommand{\textlf}{\lfstyle}
+\DeclareTextFontCommand{\texttlf}{\tlfstyle}
+\DeclareTextFontCommand{\textosf}{\osfstyle}
+\DeclareTextFontCommand{\texttosf}{\tosfstyle}
+} %\AtBeginDocument
+%\ifnum\ntx@id=16\relax
+%\else % create \textsmsmde for other than minion and gelasio
+%% We move the small font to the text baseline and scale it by \tx@sfrSC, for use only in the \textsfrac macro.
+%\ifnum\ntx@id=4\relax
+%\else
+% \ifnum\tx@debase=0
+% \newcommand*{\textsmde}[1]{%
+% \setbox0=\hbox{\scalebox\tx@sfrSC{\textde{#1}}}\box0}
+% \else
+% \newdimen\tx@u \newdimen\tx@v
+% \tx@u=-\tx@debase pt
+% \tx@toex{\strip@pt\tx@u}\tx@y=\tx@x
+% %\showthe\tx@y
+% \tx@v=\strip@pt\tx@y ex
+% \newcommand*{\textsmde}[1]{%
+% \setbox2=\hbox{\textde{#1}}%
+% \setbox1=\hbox{\raise \tx@v \box2}%
+% \setbox0=\hbox{\scalebox{\tx@sfrSC}{\box1}}\box0}
+% \fi %\ifnum\tx@debase=0
+%\fi %\ifnum\ntx@id=4
+%\fi %\ifnum\ntx@id=16
+\iftutex%
+ \def\gel@frslash{\symbol{"2044}}
+\else%
+ \def\gel@frslash{%
+ {\fontencoding{TS1}\selectfont\char"2F}}
+\fi
+
+\newcommand*{\geltextfrac}[3][]{% like \textfrac[1]{7}{8}
+ \mbox{%
+ \ifthenelse{\not\equal{#1}{}}%Test for integer portion [optional #1]
+ {\textlf{#1}\kern.02em}{}%
+ \textnum{#2}% numerator
+ \StrRight{#2}{1}[\@digit@]%
+ % look for 1, 2, 3, 7, 8
+ \ifcase\@digit@% 0
+ \or%\kern.03em% 1
+ \or\kern.04em% 2
+ \or%\kern-.01em% 3
+ \or\kern.02em% 4
+ \or\kern-.01em% 5
+ \or%\kern.01em% 6
+ \or\kern-.08em% 7
+ \or\kern.01em% 8
+ \or\kern-.02em% 9
+ \fi%
+% \kern\ntx@foresolidus{\fontencoding{TS1}\selectfont\char"2F}%
+% \kern\ntx@aftsolidus%
+ \gel@frslash%
+ \StrLeft{#3}{1}[\@digit@]%
+ % look for 1, 4, 7
+ \ifcase\@digit@% 0
+ \or\kern .01em% 1
+ \or\kern .01em% 2
+ \or\kern .01em% 3
+ \or\kern -.01em% 4
+ \or%\kern -.02em% 5
+ \or%\kern-.03em% 6
+ \or\kern .06em% 7
+ \or%\kern .01em% 8
+ \or\kern .01em% 9
+ \fi%
+ \textde{#3}% denominator [#3]
+ }%mbox
+} % \geltextfrac
+\@ifundefined{textfrac}{\NewCommandCopy\textfrac\geltextfrac}%
+{\RenewCommandCopy\textfrac\geltextfrac}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/gelasiomath/ly1mingelasio.fd b/Master/texmf-dist/tex/latex/gelasiomath/ly1mingelasio.fd
new file mode 100644
index 00000000000..5a76ba9518c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/gelasiomath/ly1mingelasio.fd
@@ -0,0 +1,91 @@
+\ProvidesFile{ly1mingelasio.fd}
+ [2024/04/11 (msharpe) Font definitions for LY1/mingelasio.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+\def\@textscalefactor{.92}
+%xgelasio must be reduced by factor .92 to match xheight of newtxmath
+
+
+\@ifundefined{ntxmath@scale}{\let\ntxmath@scaled\@empty}
+{\@tempdima\@textscalefactor\p@
+\@tempdima\ntxmath@scale\@tempdima
+\edef\ntxmath@scaled{s*[\strip@pt\@tempdima]}}% locally, not globally
+
+\DeclareFontFamily{LY1}{mingelasio}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{LY1}{mingelasio}{m}{it}{
+ <-> \ntxmath@scaled Gelasio-Italic-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{regular}{it}{
+ <-> alias * mingelasio/m/it
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{m}{n}{
+ <-> \ntxmath@scaled Gelasio-Regular-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{regular}{n}{
+ <-> alias * mingelasio/m/n
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{m}{sl}{
+ <-> ssub * mingelasio/m/it
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{regular}{sl}{
+ <-> ssub * mingelasio/regular/it
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{LY1}{mingelasio}{b}{n}{
+ <-> \ntxmath@scaled Gelasio-Bold-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{bold}{n}{
+ <-> alias * mingelasio/b/n
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{b}{it}{
+ <-> \ntxmath@scaled Gelasio-BoldItalic-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{bold}{it}{
+ <-> alias * mingelasio/b/it
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{b}{sl}{
+ <-> ssub * mingelasio/b/it
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{bold}{sl}{
+ <-> ssub * mingelasio/bold/it
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{LY1}{mingelasio}{bx}{n}{
+ <-> ssub * mingelasio/b/n
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{bx}{sl}{
+ <-> ssub * mingelasio/b/sl
+}{}
+
+\DeclareFontShape{LY1}{mingelasio}{bx}{it}{
+ <-> ssub * mingelasio/b/it
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/gelasiomath/omlzgelmi.fd b/Master/texmf-dist/tex/latex/gelasiomath/omlzgelmi.fd
new file mode 100644
index 00000000000..a9a6f612f47
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/gelasiomath/omlzgelmi.fd
@@ -0,0 +1,30 @@
+%Filename: omlzgelmi.fd
+%Created by: tex zgel-drv
+%Created using msharpe
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{omlzgelmi.fd}
+ [2024/04/08 Fontinst v1.933 font definitions for OML/zgelmi.]
+
+\expandafter\ifx\csname ntxmath@scaled\endcsname\relax
+ \let\ntxmath@scaled\@empty%
+\fi
+
+
+\DeclareFontFamily{OML}{zgelmi}{\skewchar \font =127}
+
+\DeclareFontShape{OML}{zgelmi}{m}{it}{
+ <-> \ntxmath@scaled zgelmi
+}{}
+
+\DeclareFontShape{OML}{zgelmi}{b}{it}{
+ <-> \ntxmath@scaled zgelbmi
+}{}
+
+\DeclareFontShape{OML}{zgelmi}{m}{sl}{<->ssub * zgelmi/m/it}{}
+\DeclareFontShape{OML}{zgelmi}{bx}{it}{<->ssub * zgelmi/b/it}{}
+\DeclareFontShape{OML}{zgelmi}{b}{sl}{<->ssub * zgelmi/b/it}{}
+\DeclareFontShape{OML}{zgelmi}{bx}{sl}{<->ssub * zgelmi/b/sl}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/gelasiomath/ot1mingelasio.fd b/Master/texmf-dist/tex/latex/gelasiomath/ot1mingelasio.fd
new file mode 100644
index 00000000000..1bfed27c98b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/gelasiomath/ot1mingelasio.fd
@@ -0,0 +1,78 @@
+\ProvidesFile{ot1mingelasio.fd}
+ [2024/04/11 (msharpe) Font definitions for OT1/mingelasio.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\def\@textscalefactor{.92}
+%xgelasio must be reduced by factor .92 to match xheight of newtxmath
+
+\@ifundefined{ntxmath@scale}{\let\ntxmath@scaled\@empty}
+{\@tempdima\@textscalefactor\p@
+\@tempdima\ntxmath@scale\@tempdima
+\edef\ntxmath@scaled{s*[\strip@pt\@tempdima]}}% locally, not globally
+
+\DeclareFontFamily{OT1}{mingelasio}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{OT1}{mingelasio}{m}{n}{
+ <-> \ntxmath@scaled Gelasio-Regular-tlf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{regular}{n}{
+ <-> alias * mingelasio/m/n
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{m}{it}{
+ <-> \ntxmath@scaled Gelasio-Italic-tlf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{regular}{it}{
+ <-> alias * mingelasio/m/it
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{m}{sl}{
+ <-> ssub * mingelasio/m/it
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{regular}{sl}{
+ <-> ssub * mingelasio/regular/it
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{OT1}{mingelasio}{b}{n}{
+ <-> \ntxmath@scaled Gelasio-Bold-tlf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{bold}{n}{
+ <-> alias * mingelasio/b/n
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{b}{it}{
+ <-> \ntxmath@scaled Gelasio-BoldItalic-tlf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{bold}{it}{
+ <-> alias * mingelasio/b/it
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{b}{sl}{
+ <-> ssub * mingelasio/b/it
+}{}
+
+\DeclareFontShape{OT1}{mingelasio}{bold}{sl}{
+ <-> ssub * mingelasio/bold/it
+}{}
+
+
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/gelasiomath/t1mingelasio.fd b/Master/texmf-dist/tex/latex/gelasiomath/t1mingelasio.fd
new file mode 100644
index 00000000000..da0a9da6553
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/gelasiomath/t1mingelasio.fd
@@ -0,0 +1,51 @@
+\ProvidesFile{t1minelasio.fd}
+ [2024/04/14 (msharpe) Font definitions for T1/mingelasio.]
+
+%\def\@textscalefactor{.92}
+%xgelasio must be reduced by factor .92 to match xheight of newtxmath
+
+%\@ifundefined{newtxmathscale}{\def\newtxmathscale{1}}{}
+%\@tempdima\@textscalefactor\p@
+%\@tempdima\newtxmathscale\@tempdima
+%\xdef\newtxtext@scaled{s*[\strip@pt\@tempdima]}%global, not local
+
+\DeclareFontFamily{T1}{mingelasio}{}
+%\show\ntxtext@scaled
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{T1}{mingelasio}{b}{it}{
+ <-> \ntxtext@scaled Gelasio-BoldItalic-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{mingelasio}{b}{n}{
+ <-> \ntxtext@scaled Gelasio-Bold-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{mingelasio}{b}{sl}{
+ <-> ssub * mingelasio/b/it
+}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T1}{mingelasio}{m}{n}{
+ <-> \ntxtext@scaled Gelasio-Regular-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{mingelasio}{m}{it}{
+ <-> \ntxtext@scaled Gelasio-Italic-tlf-t1
+}{}
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T1}{mingelasio}{bx}{n}{
+ <-> ssub * mingelasio/b/n
+}{}
+
+\DeclareFontShape{T1}{mingelasio}{bx}{it}{
+ <-> ssub * mingelasio/b/it
+}{}
+\traceoff
+\endinput
diff --git a/Master/texmf-dist/tex/latex/gelasiomath/untxmia.fd b/Master/texmf-dist/tex/latex/gelasiomath/untxmia.fd
new file mode 100644
index 00000000000..212e5b2386e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/gelasiomath/untxmia.fd
@@ -0,0 +1,139 @@
+%Filename: untxmia.fd
+%Created by: tex mia-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{untxmia.fd}
+ [2024/04/09 Fontinst v1.933 font definitions for U/ntxmia.]
+
+\expandafter\ifx\csname ntxmath@scaled\endcsname\relax
+ \let\ntxmath@scaled\@empty%
+\fi
+
+\DeclareFontFamily{U}{ntxmia}{\skewchar \font =127}
+
+\iftx@libertine
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled nxlmia
+ }{}
+
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled nxlbmia
+ }{}
+\else
+ \iftx@minion
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled zmnmia
+ }{}
+
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled zmnbmia
+ }{}
+ \else
+ \iftx@coch
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled zcochmia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled zcochbmia
+ }{}
+ \else
+ \iftx@ch
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled zchmia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled zchbmia
+ }{}
+ \else
+ \iftx@stxtwo
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled ntxstx2mia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled ntxstx2bmia
+ }{}
+
+ \else
+ \iftx@ebgm
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled ntxebgmia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled ntxebgbmia
+ }{}
+ \else
+ \iftx@ut
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled zutmia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled zutbmia
+ }{}
+ \else
+ \iftx@nc
+ \iftx@fourier
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled zncfmia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled zncfbmia
+ }{}
+ \else
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled zncmia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled zncbmia
+ }{}
+ \fi
+ \else
+ \iftx@noto
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled notomia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled notobmia
+ }{}
+ \else
+ \iftx@notosans
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled notosansmia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled notosansbmia
+ }{}
+ \else
+ \iftx@gel
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled zgelmia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled zgelbmia
+ }{}
+ \else
+
+ \DeclareFontShape{U}{ntxmia}{m}{it}{
+ <-> \ntxmath@scaled ntxmia
+ }{}
+ \DeclareFontShape{U}{ntxmia}{b}{it}{
+ <-> \ntxmath@scaled ntxbmia
+ }{}
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+\fi
+\DeclareFontShape{U}{ntxmia}{m}{sl}{<->ssub * ntxmia/m/it}{}
+\DeclareFontShape{U}{ntxmia}{bx}{it}{<->ssub * ntxmia/b/it}{}
+\DeclareFontShape{U}{ntxmia}{b}{sl}{<->ssub * ntxmia/b/it}{}
+\DeclareFontShape{U}{ntxmia}{bx}{sl}{<->ssub * ntxmia/b/sl}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/gridset/gridset.sty b/Master/texmf-dist/tex/latex/gridset/gridset.sty
index 00a11c2c83e..30ed1443293 100644
--- a/Master/texmf-dist/tex/latex/gridset/gridset.sty
+++ b/Master/texmf-dist/tex/latex/gridset/gridset.sty
@@ -12,7 +12,7 @@
%% without the source ot the work. See below about more informations
%% about the files the work consists of.
%%
-%% Copyright (C) 2008-2020 Markus Kohm
+%% Copyright (C) 2008-2024 Markus Kohm
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3c
@@ -34,7 +34,7 @@
%% the Work (see ``Important Recommendations'' at lppl.txt).
%%
\ProvidesPackage{gridset}
- [2020-02-12 v0.3 grid - a.k.a. in-register - setting]
+ [2024-08-17 v0.4 grid - a.k.a. in-register - setting]
\newcommand*{\gridset@luaorpdf}[1]{%
\expandafter\newcommand\csname gridset@#1\endcsname{}%
\ifcsname pdf#1\endcsname
@@ -137,7 +137,7 @@
\fi
}
\AtBeginDocument{%
- \global\let\grid@unique@test\@gobble
+ \global\let\grid@unique@test\@gobbletwo
}
\newcommand*\grid@ReRunMessage{}
\AtBeginDocument{%
diff --git a/Master/texmf-dist/tex/latex/harmony/harmony.sty b/Master/texmf-dist/tex/latex/harmony/harmony.sty
index ce528cf0853..1145113c4d9 100644
--- a/Master/texmf-dist/tex/latex/harmony/harmony.sty
+++ b/Master/texmf-dist/tex/latex/harmony/harmony.sty
@@ -1,29 +1,30 @@
-%% harmony.sty 2007/05/04
-%% Copyright 2005 - 2007
+%% harmony.sty 2024/08/01
+%% Copyright 2005 - 2024
%% Dagny Wegner <dagny.wegner@t-online.de>
-%% Arnim Wegner <arnim.wegner@t-online.de>
+%% Arnim Wegner <arnim.e.wegner@t-online.de>
%
% 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 Maintainers of this work are
-% Dagny Wegner and Arnim Wegner.
%
% This work consists of the files harmony.sty,
% harmony.tex, harmony.pdf, and Readme.
% ==================================================================================
+\ProvidesPackage{harmony}[2024/08/01]
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{harmony}[2007/05/04]
\RequirePackage{ifthen}
\RequirePackage{amssymb}
+\RequirePackage{mathtools} % contains \overbracket
+%
+\newcounter{notekorr}
+\DeclareOption{8pt}{\setcounter{notekorr}{800}}
+\DeclareOption{9pt}{\setcounter{notekorr}{900}}
+\DeclareOption{10pt}{\setcounter{notekorr}{1000}}
+\DeclareOption{11pt}{\setcounter{notekorr}{1100}}
+\DeclareOption{12pt}{\setcounter{notekorr}{1200}}
+\DeclareOption{13pt}{\setcounter{notekorr}{1300}}
+\DeclareOption{14pt}{\setcounter{notekorr}{1400}}
\DeclareOption{sf}{\def\FAM{\sffamily}}
\DeclareOption{rm}{\def\FAM{\rmfamily}}
\ExecuteOptions{sf}
@@ -43,14 +44,31 @@
\newbox\nbxg
\newbox\nbxh
\newbox\nbxi
-\newfont{\KREIS}{lcirclew10}
-\newfont{\NOTEN}{musix13}
-\newfont{\noten}{musix11}% 2007/05/03
+\newcounter{notescl}
+\newcounter{fontscl}
%
-\newcommand{\Ohne}[2][0em]{%
+\ifthenelse{\value{notekorr}=0}%
+{\ifthenelse{\@ptsize<-2}{\setcounter{notescl}{800}}{}
+\ifthenelse{\equal{\@ptsize}{-2}}{\setcounter{notescl}{800}}{}
+\ifthenelse{\equal{\@ptsize}{-1}}{\setcounter{notescl}{900}}{}
+\ifthenelse{\equal{\@ptsize}{0}}{\setcounter{notescl}{1000}}{}
+\ifthenelse{\equal{\@ptsize}{1}}{\setcounter{notescl}{1100}}{}
+\ifthenelse{\equal{\@ptsize}{2}}{\setcounter{notescl}{1200}}{}
+\ifthenelse{\equal{\@ptsize}{3}}{\setcounter{notescl}{1300}}{}
+\ifthenelse{\equal{\@ptsize}{4}}{\setcounter{notescl}{1400}}{}
+\ifthenelse{\@ptsize>4}{\setcounter{notescl}{1400}}{}}
+{\setcounter{notescl}{\value{notekorr}}}
+%
+\newfont{\NOTEN}{musix13 scaled \value{notescl}}
+\newfont{\noten}{musix11 scaled \value{notescl}}
+\setcounter{fontscl}{\value{notescl}}
+\addtocounter{fontscl}{1000}
+\newfont{\KREIS}{lcircle10 scaled \value{fontscl}}
+%
+\newcommand{\Ohne}[2][0.17em]{%
\setbox\nbxi=\hbox{%
\FAM%
-\setbox\nbxa=\hbox{\sl\large /}%
+\setbox\nbxa=\hbox{\textsl\large\raisebox{0.2ex}{/}}%
#2%
\kern-0.8em%
\kern#1%
@@ -60,8 +78,14 @@
}%
\unhbox\nbxi%
}
+\let\Sans\Ohne
%
\newcommand{\Dohne}{\Ohne{D}}
+\let\Dsans\Dohne
+\newcommand{\DohneR}{\framebox{\Dohne}}
+\let\DsansR\DohneR
+\newcommand{\Dohner}{\frame{\Dohne}}
+\let\Dsansr\Dohner
%
\newcommand{\DD}{%
\setbox\nbxi=\hbox{%
@@ -73,6 +97,9 @@
\unhbox\nbxi%
}
%
+\newcommand{\DDR}{\framebox{\DD}}
+\newcommand{\DDr}{\frame{\DD}}
+%
\newcommand{\DS}{%
\setbox\nbxi=\hbox{%
\FAM%
@@ -96,7 +123,7 @@
\newcommand{\DDohne}{%
\setbox\nbxi=\hbox{%
\FAM%
-\setbox\nbxa=\hbox{\sl\large /}%
+\setbox\nbxa=\hbox{\textsl\large\raisebox{0.25ex}{/}}%
\raise0.2ex\hbox{D}%
\kern-0.5em%
\lower0.2ex\hbox{D}%
@@ -107,17 +134,23 @@
}%
\box\nbxi%
}
+\let\DDsans\DDohne
+%
+\newcommand{\DDohneR}{\framebox{\DDohne}}
+\let\DDsansR\DDohneR
+\newcommand{\DDohner}{\frame{\DDohne}}
+\let\DDsansr\DDohner
%
\newcommand{\VM}{%
\setbox\nbxg=\hbox{>}%
\setbox\nbxh=\hbox to \wd\nbxg{%
-\raise0.24ex\hbox{{\boldmath$\scriptscriptstyle{>}$\unboldmath}\hss}}% 2005/05/10
+\raise0.24ex\hbox{{\boldmath$\scriptscriptstyle{>}$\unboldmath}\hss}}%
\box\nbxh}
%
\newcommand{\UB}{%
\setbox\nbxg=\hbox{<}%
\setbox\nbxh=\hbox to \wd\nbxg{%
-\raise0.24ex\hbox{\boldmath$\scriptscriptstyle{<}$\unboldmath\hss}}% 2005/05/10
+\raise0.24ex\hbox{\boldmath$\scriptscriptstyle{<}$\unboldmath\hss}}%
\box\nbxh}
%
\newcommand{\HAa}[3]{%
@@ -243,6 +276,9 @@
{\HAc{#1}{#2}{#3}{#4}{#5}}%
}
%
+\def\HHR.#1.#2.#3.#4.#5.{\framebox{\HH.#1.#2.#3.#4.#5.}}%
+\def\HHr.#1.#2.#3.#4.#5.{\frame{\HH.#1.#2.#3.#4.#5.\hspace{0.17em}}}%
+%
\newcommand{\FERM}[2][0.1pt]{%
\setbox\nbxi=\hbox{%
\FAM%
@@ -287,15 +323,13 @@
\kern-\tmpdima\box\nbxb%
}}
%
-\newcommand{\Kr}[1]{%
-\ifthenelse{\equal{\@ptsize}{2}}{\@tempcnta=110}%
-{\ifthenelse{\equal{\@ptsize}{1}}{\@tempcnta=109}%
-{\@tempcnta=108}}%
+\newcommand{\Kr}[2][102]{%
+\ifthenelse{#1>110}{\@tempcnta=110}%
+{\ifthenelse{#1<100}{\@tempcnta=100}{\@tempcnta=#1}}
\setbox\nbxi=\hbox{%
-\FAM\small%
\setbox\nbxa=\hbox{#1}%
\setbox\nbxb=\hbox{\KREIS\char\@tempcnta}%
-\setbox\nbxc=\hbox to \wd\nbxb{\hss #1\hss}%
+\setbox\nbxc=\hbox to \wd\nbxb{\hss #2\hss}%
\tmpdima=0.5\ht\nbxa%
\advance\tmpdima by -0.4\dp\nbxa\relax%
\copy\nbxc%
@@ -332,8 +366,8 @@
{\raisebox{0.58ex}[8pt][2pt]{\kern-1pt\NOTEN\symbol{82}\kern0.3em}}}%
{\kern0.05em\ueber{#1}{#2}\kern0.05em%
}}}
-%
-\newcommand{\Ganz}{{\NOTEN\kern0.05em\raisebox{0.5ex}{\symbol{9}}\kern1.35em}}
+% Noten
+\newcommand{\Ganz}{{\NOTEN\kern0.05em\raisebox{0.5ex}{\symbol{9}}\kern1.5em}}
\newcommand{\Halb}{{\NOTEN\kern0.05em\raisebox{0.5ex}{\symbol{8}\kern0.936em%
\raisebox{0.55ex}{\symbol{16}}}\kern0.2em}}
\newcommand{\Vier}{{\NOTEN\kern0.05em\raisebox{0.5ex}{\symbol{7}\kern0.955em%
@@ -343,7 +377,7 @@
\newcommand{\Sech}{{\NOTEN\kern0.05em\raisebox{0.5ex}{\symbol{7}\kern0.955em%
\raisebox{0.55ex}{\symbol{16}}}\symbol{41}\kern0.9em}}
\newcommand{\Zwdr}{{\NOTEN\kern0.05em\raisebox{0.5ex}{\symbol{7}\kern0.955em%
-\raisebox{0.55ex}{\symbol{16}}}\symbol{42}\kern0.9em}}
+\raisebox{0.55ex}{\symbol{16}}\raisebox{1.3ex}{\symbol{16}}}\symbol{42}\kern0.9em}}
\newcommand{\GaPa}{{\NOTEN\kern0.055em\raisebox{0.25ex}{\symbol{60}}\kern0.05em}}
\newcommand{\HaPa}{{\NOTEN\kern0.055em\raisebox{0.25ex}{\symbol{60}}\kern0.05em}}
\newcommand{\ViPa}{{\NOTEN\kern0.05em\raisebox{-0.8ex}{\symbol{62}}\kern0.955em}}
@@ -351,28 +385,76 @@
\newcommand{\SePa}{{\NOTEN\kern0.15em\raisebox{-0.4ex}{\symbol{64}}\kern1.3em}}
\newcommand{\ZwPa}{{\NOTEN\kern0.25em\raisebox{-0.8ex}{\symbol{65}}\kern1.4em}}
\newcommand{\Pu}{{\NOTEN\kern-0.2em\raisebox{-0.5ex}{\symbol{24}}\kern1em}}
-\newcommand{\AAcht}{\Vier\kern0.1em\Vier{\NOTEN\kern-1.72em\raisebox{3.1ex}%
+\newcommand{\AAcht}{{\NOTEN\Vier\kern0.3em\Vier\kern-1.72em\raisebox{3.1ex}%
{\symbol{61}\kern-0.87em\symbol{61}}}}
-\newcommand{\AchtBL}% 2007/05/03
-{\kern0.135em\Vier%
-{\NOTEN\kern-1.82em\raisebox{3.05ex}{\symbol{61}\kern-0.87em\symbol{61}}\kern0.09em}}
-\newcommand{\SechBL}% 2007/05/03
-{\kern0.135em\Vier%
-{\NOTEN\kern-1.82em\raisebox{3.05ex}{\symbol{61}\kern-0.87em\symbol{61}}%
+\newcommand{\AchtBL}{{\NOTEN\Vier\kern-1.82em\raisebox{3.05ex}{\symbol{61}\kern-0.87em\symbol{61}}}}
+\newcommand{\AchtBR}{{\NOTEN\Vier\kern-0.1em\raisebox{3.05ex}{\symbol{61}\kern-0.87em\symbol{61}}}}
+\newcommand{\SechBL}{{\NOTEN\Vier\kern-1.82em\raisebox{3.05ex}{\symbol{61}\kern-0.87em\symbol{61}}%
\kern-1.63em\raisebox{2.3ex}{\symbol{61}\kern-0.87em\symbol{61}}\kern0.09em}}
-\newcommand{\SechBl}% 2007/05/03
-{\kern0.135em\Vier%
-{\NOTEN\kern-1.82em\raisebox{3.05ex}{\symbol{61}\kern-0.87em\symbol{61}}%
+\newcommand{\SechBl}{{\NOTEN\Vier\kern-1.82em\raisebox{3.05ex}{\symbol{61}\kern-0.87em\symbol{61}}%
\kern-1.63em\raisebox{2.3ex}{{\noten\kern0.9em\symbol{61}}}\kern0.09em}}
-\newcommand{\AchtBR}% 2007/05/03
-{\kern0.135em\Vier%
-{\NOTEN\kern-0.1em\raisebox{3.05ex}{\symbol{61}\kern-0.87em\symbol{61}}\kern-1em}}
-\newcommand{\SechBR}% 2007/05/03
-{\kern0.135em\Vier%
-{\NOTEN\kern-0.1em\raisebox{3.05ex}{\symbol{61}\kern-0.87em\symbol{61}}%
-\kern-1.63em\raisebox{2.3ex}{\symbol{61}\kern-0.87em\symbol{61}}\kern-1.01em}}
-\newcommand{\SechBr}% 2007/05/03
-{\kern0.135em\Vier%
-{\NOTEN\kern-0.1em\raisebox{3.05ex}{\symbol{61}\kern-0.87em\symbol{61}}%
-\kern-1.63em\raisebox{2.3ex}{{\noten\kern-0.12em\symbol{61}}}\kern-0.3em}}
-% etc. ... ! Define your own commands! \ No newline at end of file
+\newcommand{\SechBR}{{\NOTEN\Vier\kern-0.1em\raisebox{3.05ex}{\symbol{61}\kern-0.87em\symbol{61}}%
+\kern-1.63em\raisebox{2.3ex}{\symbol{61}\kern-0.87em\symbol{61}}}}
+\newcommand{\SechBr}{{\NOTEN\Vier\kern-0.1em\raisebox{3.05ex}{\symbol{61}\kern-0.87em\symbol{61}}%
+\kern-1.63em\raisebox{2.3ex}{{\noten\kern-0.12em\symbol{61}}}\kern0.87em}}
+%
+\newcommand{\Blkn}[2]{\raisebox{#2}{{\NOTEN\kern#1\symbol{61}}}}%
+%
+\newcommand{\Overset}[3][0pt]{\ensuremath{\overset{\raisebox{#1}{\scriptsize\ensuremath{#2}}}{#3}}}
+%
+\newcommand\achteltriole{%
+ \ensuremath{\NOTEN%
+ \Overset[-1ex]%
+ {\text{\itshape\tiny\kern0.7em 3}}%
+ {\AchtBR\kern-1.1em\Vier\kern0.4em\AchtBL}%
+ }%
+}
+%
+\newcommand\vierteltrioleA{%
+ \ensuremath{\NOTEN%
+ \Overset[-1ex]%
+ {\text{\itshape\tiny 3}}%
+ {\overbracket[0.45pt]{%
+ \rule{0pt}{2.4ex}\Vier\kern0.5em\Vier\kern0.5em\Vier\kern0.25em}%
+ }%
+ }%
+}
+%
+\newcommand\vierteltrioleB{%
+ \ensuremath{\NOTEN%
+ \Overset%
+ {\raisebox{1ex}{%
+ \rule{0.45pt}{1ex}%
+ \kern0.25em\raisebox{0.88ex}{\kern-0.3em\rule{1.15em}{0.45pt}}%
+ \raisebox{0.53ex}{\text{\itshape\tiny 3}}%
+ \raisebox{0.88ex}{\rule{1.15em}{0.45pt}}%
+ \kern-0.05em\rule{0.45pt}{1ex}%
+ }}%
+ {\Vier\kern0.5em\Vier\kern0.5em\Vier\kern0.3em}%
+ }%
+}
+%
+\newcommand\halbetrioleA{%
+ \ensuremath{\NOTEN%
+ \Overset[-1ex]%
+ {\text{\itshape\tiny 3}}%
+ {\overbracket[0.45pt]{%
+ \rule{0pt}{2.4ex}\Halb\kern0.5em\Halb\kern0.5em\Halb\kern0.25em}%
+ }%
+ }%
+}
+%
+\newcommand\halbetrioleB{%
+ \ensuremath{\NOTEN%
+ \Overset%
+ {\raisebox{1ex}{%
+ \rule{0.45pt}{1ex}%
+ \kern0.25em\raisebox{0.88ex}{\kern-0.3em\rule{1.15em}{0.45pt}}%
+ \raisebox{0.53ex}{\text{\itshape\tiny 3}}%
+ \raisebox{0.88ex}{\rule{1.15em}{0.45pt}}%
+ \kern-0.05em\rule{0.45pt}{1ex}%
+ }}%
+ {\Halb\kern0.5em\Halb\kern0.5em\Halb\kern0.3em}%
+ }%
+}
+% ================================================================================== \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/hebdomon/hebdomon.cls b/Master/texmf-dist/tex/latex/hebdomon/hebdomon.cls
new file mode 100644
index 00000000000..33277f76c3a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/hebdomon/hebdomon.cls
@@ -0,0 +1,412 @@
+% Hebdomon document class for use in report and assessment writing
+% Written by D. T. McGuiness: dtm@mci4me.at
+
+% v0.1 - Angry Avocado [WS2024]
+
+\NeedsTeXFormat{LaTeX2e}[1994/06/01]
+\ProvidesClass{hebdomon}[2024/08/08 v0.1 Report and Documentation standard]
+
+% This document is based on the excellent KOMA Script scrreprt class
+% The following options are declared beforehand.
+
+\RequirePackage{ifthen} % require an if-else loop to
+% choose depending on the field
+
+% Allows students to choose which package for code printing.
+
+\newboolean{mnt} % set bool operator for minted
+\newboolean{lst} % set bool operator for lstlisting
+\newboolean{drw} % set bool operator for PGF/TikZ
+
+%-OPTION: set option to choose minted code printing package
+\DeclareOption{minted}{
+ \setboolean{mnt}{true}
+}
+
+%-OPTION: set option to choose lstlisting code printing package
+\DeclareOption{lstlisting}{
+ \setboolean{lst}{true}
+}
+
+%-OPTION: set option to choose PGF/TikZ plotting packages
+\DeclareOption{draw}{
+ \setboolean{drw}{true}
+}
+
+\DeclareOption*{
+ \PassOptionsToClass{\CurrentOption}{scrreprt}
+}
+\ExecuteOptions{}
+\ProcessOptions \relax
+
+% Load the base class to create the custom template
+\LoadClass[
+ bibliography = totoc,
+ headings = big,
+ captions = tableheading,
+ chapterprefix = true,
+]{scrreprt}
+
+% Page Geometry -----------------------------------------------------------
+% Define the default page geometry
+\RequirePackage[
+ left = 3.0cm,
+ right = 2.0cm,
+ top = 2.5cm,
+ bottom = 2.5cm]{geometry}
+
+% Required Packages -------------------------------------------------------
+\RequirePackage{nicematrix} % For modern table design
+\RequirePackage{booktabs} % To access \midrule \toprule \bottomrule
+
+% For use in referencing purposes
+\RequirePackage[
+ backend=bibtex]{biblatex}
+
+\RequirePackage{graphicx} % To enable image insertion
+\RequirePackage{environ} % To allow new environments with Environ
+
+
+\RequirePackage{lmodern}
+\RequirePackage[sfdefault]{FiraSans}
+
+\RequirePackage{minitoc}
+\RequirePackage{setspace}
+
+\RequirePackage{hyperref} % Allow the use of hyperlink within document
+
+\RequirePackage{enumitem}
+
+\RequirePackage{amsmath}
+
+\usepackage[labelfont=bf]{caption} % Set the caption style to bold
+
+\RequirePackage{titlesec}
+
+% %%%%% ----- Colour Definitions ------ %%%%%
+\RequirePackage{xcolor}
+
+% Define the MCI colours.
+\definecolor{mciRed}{HTML}{821131}
+\definecolor{mciBlue}{HTML}{004983}
+\definecolor{mciOrange}{HTML}{fe640b}
+\definecolor{quoteColour}{HTML}{CBA6F7}
+\definecolor{nord7}{HTML}{81a1c1}
+\definecolor{norda}{HTML}{bf616a}
+\definecolor{nord9}{HTML}{5e81ac}
+\definecolor{nord13}{HTML}{ebcb8b}
+\definecolor{nord14}{HTML}{a3be8c}
+
+% %%%%% ----- Code Presentation ----- %%%%%
+% To make this class more compatible and avoid questions about pygments,
+% the author has decided to use listings for code presentation, instead of
+% minted.
+\RequirePackage{listings}
+
+\lstset{
+ aboveskip={1.3\baselineskip},
+ basicstyle=\small\ttfamily\linespread{4},
+ breaklines=false,
+ backgroundcolor = \color[HTML]{eff1f5},
+ columns=flexible,
+ commentstyle=\color[HTML]{6c6f85}\ttfamily,
+ escapechar=@,
+ extendedchars=true,
+ identifierstyle=\color{black},
+ inputencoding=latin1,
+ keywordstyle=\color[HTML]{fe640b},
+ language=Python,
+ ndkeywordstyle=\color[HTML]{228B22},
+ numbers=left,
+ numberstyle=\tiny,
+ prebreak = \raisebox{0ex}[0ex][0ex]{\ensuremath{\hookleftarrow}},
+ showstringspaces=false,
+ stringstyle=\color[HTML]{40a02b}\ttfamily,
+ upquote=true,
+ emph={None},
+ emphstyle={\color[HTML]{FE640B}},
+ % keywordstyle=[1]{\color[HTML]{8839ef}},
+ % morekeywords={(,)},
+ keywordstyle=[2]\color[HTML]{D20F39},
+ keywordstyle={[3]\color[HTML]{8839ef}},
+ keywords=[3]{x},
+}
+
+% \lstset{style=mystyle}
+
+% New Environment Definitions ---------------------------------------------
+% To create environments tcolorbox package is required to make them
+% aesthetically pleasing.
+\RequirePackage{tcolorbox}
+\tcbuselibrary{breakable, minted, skins,theorems, hooks, most}
+
+% %%%%% ----- tcolorbox Templates ----- %%%%%
+
+% Define the excerpt environment style.
+\tcbset{%
+ quoteTemplate/.style={%
+ enhanced,
+ breakable,
+ arc=0pt,
+ outer arc=0pt,
+ toprule=0pt,
+ rightrule=0pt,
+ bottomrule=0pt,
+ leftrule=1mm,
+ colback=white,
+ colframe=mciRed,
+ detach title
+ }%
+}%
+
+\tcbset{%
+ blockTemplate/.style={%
+ enhanced,
+ breakable,
+ arc=0pt,
+ outer arc=0pt,
+ toprule=0pt,
+ rightrule=0pt,
+ bottomrule=0pt,
+ leftrule=1mm,
+ colback=#1!25,
+ colframe=#1,
+ coltitle=black,
+ detach title
+ }%
+}%
+
+% %%%%% --------------------------------%%%%%
+
+% Environment used to insert quotations.
+\NewEnviron{excerpt}[1][]{%
+ \begin{tcolorbox}[blockTemplate=nord7]
+ \BODY
+ \end{tcolorbox}
+}%
+
+\NewEnviron{example}[1][]{%
+ \begin{tcolorbox}[blockTemplate=nord14]
+ \BODY
+ \end{tcolorbox}
+}%
+
+\NewEnviron{highlight}[1][]{%
+ \begin{tcolorbox}[blockTemplate=nord13]
+ \BODY
+ \end{tcolorbox}
+}%
+
+\NewEnviron{theory}[1][]{%
+ \begin{tcolorbox}[blockTemplate=black]
+ \BODY
+ \end{tcolorbox}
+}%
+
+\NewEnviron{warning}[1][]{%
+ \begin{tcolorbox}[blockTemplate=norda]
+ \BODY
+ \end{tcolorbox}
+}%
+
+\NewEnviron{hgitemize}[1][]{%
+ \begin{itemize}[leftmargin=!,labelindent=-29.2pt]
+ \BODY
+ \end{itemize}
+}%
+
+
+
+
+
+% KOMA-Script Configuration -----------------------------------------------
+
+\addtokomafont{chapterprefix}{\raggedleft}
+\addtokomafont{chapter}{\fontsize{30}{38}\selectfont}
+\addtokomafont{section}{\huge}
+\addtokomafont{subsection}{\Large}
+\addtokomafont{subsubsection}{\large}
+
+% Set the fontstyle of minitoc to that of the document
+\renewcommand{\mtifont}{\large\sffamily}
+\renewcommand{\mtcfont}{\small\sffamily}
+\renewcommand{\mtcSfont}{\small\sffamily}
+\renewcommand{\mtcSSfont}{\small\sffamily}
+\renewcommand{\mtcSSSfont}{\small\sffamily}
+
+\newcommand{\StudentName}[1]{\author{#1}}
+
+% Set the depth of TOC
+\setcounter{secnumdepth}{3} % number subsubsections
+\setcounter{tocdepth}{3} % list subsubsections
+
+% Configure the document titles
+\newcommand{\Chapter}[1]{\chapter{\textcolor{mciBlue}{#1}}\minitoc}
+\newcommand{\Section}[1]{\section{\textcolor{mciBlue}{#1}}}
+\newcommand{\Subsection}[1]{\subsection{\textcolor{mciBlue}{#1}}}
+\newcommand{\Subsubsection}[1]{\subsubsection{\textcolor{mciBlue}{#1}}}
+
+\newcommand{\hlight}[1]{\textcolor{mciOrange}{#1}}
+
+
+% Configure the baseline of the document
+\renewcommand{\baselinestretch}{1.2}
+
+\renewcommand*{\chapterformat}{%
+ \mbox{\scalebox{1.5}{\chapappifchapterprefix{\nobreakspace}}%
+ \scalebox{4}{\color{mciRed}\thechapter\autodot}\enskip}}
+
+\newcommand{\heading}[1]{\subsubsection*{$\blacksquare$ #1}}
+\newcommand{\marginsecnumber}[1]{%
+ \makebox[0pt][r]{#1\hspace{6pt}}%
+}
+
+\titleformat{\section} {\normalfont\Large\bfseries}
+{\marginsecnumber\thesection} {0pt} {}
+\titleformat{\subsection} {\normalfont\large\bfseries}
+{\marginsecnumber\thesubsection} {0pt} {}
+\titleformat{\subsubsection}
+{\normalfont\normalsize\bfseries}
+{\marginsecnumber\thesubsubsection}
+{0pt} {}
+\titleformat{\paragraph}[runin]
+{\normalfont\normalsize\bfseries}
+{\marginsecnumber\theparagraph}
+{0pt} {}
+\titleformat{\subparagraph}[runin]
+{\normalfont\normalsize\bfseries}
+{\marginsecnumber\thesubparagraph}
+{0pt}
+{}
+
+\titlespacing*{\subsection}{0pt}{*3.25}{*1.5}%
+
+\setlength\parindent{0pt} % set no indent for the entire file
+
+\ifthenelse{\boolean{mnt}}{%
+ \RequirePackage{minted}
+
+ \newcommand{\pcode}[1]{%
+ {%
+ \colorbox{gray!10}{%
+ \mintinline[fontsize=\small]{text}{#1}%
+ }%
+ }%
+ }%
+
+ %\usemintedstyle{catppuccin-latte}
+
+ \definecolor{catback}{HTML}{585b70}
+ \definecolor{catground}{HTML}{eff1f5}
+
+ % Set box and font rules for inputminted command for paper
+ \newtcbinputlisting{\codeinputpaper}[4][]{%
+ listing file={#3},
+ minted language=#2,
+ minted options={
+ fontsize=\small,
+ tabsize=4,
+ xleftmargin=-2.25mm,
+ numbersep=5mm,
+ breaklines=true,
+ highlightcolor=orange!50,
+ %formatcom=orange!50
+ },% <-- put other minted options inside the brackets
+ overlay unbroken and first={%
+ \begin{tcbclipinterior}
+ \fill[catback] (frame.south west) rectangle
+ ([xshift=1mm]frame.north west);
+ \fill[catback] (frame.north east) rectangle
+ ([xshift=-4mm, yshift=-10mm]frame.north east);
+ \fill[catback]
+ ([xshift=-4mm, yshift=-10mm]frame.north east) --
+ ([xshift=0mm, yshift=-10mm]frame.north east) --
+ ([xshift=0mm, yshift=-12mm]frame.north east);
+ \end{tcbclipinterior}
+ \node[rotate=-90, minimum width=1cm, anchor=north,
+ font=\bfseries] at ([xshift=0mm, yshift=-4mm]frame.north
+ east) {\tiny \textcolor{white}{#2}}; },
+ sharp corners,
+ leftrule=1mm,
+ toprule=0pt,
+ rightrule=0pt,
+ bottomrule=0pt,
+ colback=catground,
+ colframe=black,
+ breakable,
+ enhanced,% <-- put other tcolorbox options here
+ arc=0mm,
+ boxrule=0pt,
+ frame hidden,
+ listing only,
+ minted options app={#1}}
+
+ \RequirePackage{xpatch}
+
+ \newenvironment{code}[1]
+ {%
+ \VerbatimEnvironment
+ \begin{minted}{#1}%
+}
+{%
+ \end{minted}%
+ }
+ %
+ \xpatchcmd{\mintinline}{\begingroup}{\begingroup\let\itshape\relax}{}{}
+ \xpatchcmd{\minted}{\VerbatimEnvironment}{\VerbatimEnvironment\let\itshape\relax}{}{}
+ \xpatchcmd{\inputminted}{\begingroup}{\begingroup\let\itshape\relax}{}{}
+}{}
+
+\ifthenelse{\boolean{lst}}{%
+ \RequirePackage{listings}%
+ \RequirePackage{xparse}
+
+ \NewDocumentCommand{\pcode}{v}{%
+ #1%
+ }
+
+ \newenvironment{code}[1]
+ {%
+ \VerbatimEnvironment
+ \begin{lstlisting}{language=#1}%
+}
+{%
+ \end{lstlisting}%
+ }
+}{}
+
+
+\ifthenelse{\boolean{drw}}{%
+ \RequirePackage{pgfplots} % Enable to draw plots in the documents
+ \usepackage{tikz} % Enable Tikz and its libraries
+ \pgfplotsset{compat=1.18} % Set the pgf compatibility.
+ %
+ \usepgfplotslibrary{polar} % To access polarplot
+ %
+ \pgfplotsset{
+ hebdomon/.style={
+ minor grid style={dotted, gray!50},
+ major grid style={dotted, gray!50},
+ %
+ grid = both,
+ minor tick num=2,
+ ytick align=outside,
+ xtick align=outside,
+ axis line style={draw=none},
+ axis lines = left,
+ %
+ line width=2pt,
+ %
+ legend style = {
+ line width=0.5pt
+ },
+ %
+ every non boxed x axis/.append style={x axis line style=-},
+ every non boxed y axis/.append style={y axis line style=-},
+ %
+ },
+ }
+}{}
+
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/heria/heria.cls b/Master/texmf-dist/tex/latex/heria/heria.cls
index ed545f9b84e..6853ae99d15 100644
--- a/Master/texmf-dist/tex/latex/heria/heria.cls
+++ b/Master/texmf-dist/tex/latex/heria/heria.cls
@@ -8,11 +8,11 @@
%%
%% This is a generated file.
%%
-%% Copyright 2023 Tristan Miller
+%% Copyright 2023, 2024 Tristan Miller
%% Copyright 2016 John Kormylo
%%
%% This work may be distributed and/or modified under the
-%% conditions of the LaTeX Project Public License, either version 1.3
+%% conditions of the LaTeX Project Public License, either version 1.3c
%% of this license or (at your option) any later version.
%% The latest version of this license is in
%% https://www.latex-project.org/lppl.txt
@@ -21,7 +21,7 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{heria}
-[2023-12-04 v3.2.1.0 Class for Horizon Europe (R)IA proposals]
+[2024-09-03 v3.4.1.3 Class for Horizon Europe (R)IA proposals]
\LoadClass[11pt,a4paper]{article}
\RequirePackage[T1]{fontenc} % T1 font encoding
\RequirePackage[left=15mm,
@@ -60,6 +60,18 @@
\definecolor{footergrey}{HTML}{D8D8D8}
\definecolor{tablegrey}{HTML}{F2F2F2}
\definecolor{summaryblue}{HTML}{00B0F0}
+\gdef\@templateversion{3.4} % Default version
+\def\@supportedtemplateversions{3.2,3.3,3.4} % Supported versions
+\ExplSyntaxOn
+\NewDocumentCommand{\templateversion}{m}{%
+ \clist_if_in:NnTF {\@supportedtemplateversions} {#1}
+ {\gdef\@templateversion{#1}}
+ {\PackageError{heria}%
+ {unsupported~template~version}%
+ {Use~one~of~\@supportedtemplateversions}
+ }%
+}
+\ExplSyntaxOff
\newcommand{\callname}[1]{\gdef\@callname{#1}}%
\newcommand{\callidentifier}[1]{\gdef\@callidentifier{#1}}%
\newcommand{\calltopic}[1]{\gdef\@calltopic{#1}}%
@@ -125,7 +137,7 @@
& #2 & \getPnum{#3} & #3 & %
\@ifundefined{@wpTotalPersonMonths\arabic{@wp#1num}}%
{\textbf{??}}%
- {\disptoken{@wpTotalPersonMonths\arabic{@wp#1num}}}%
+ {\fpeval{\disptoken{@wpTotalPersonMonths\arabic{@wp#1num}}/2}}%
& #4 & #5}}%
\@esphack
\ifthenelse{\arabic{@wp#1num}=1}{}{\bigskip}
@@ -420,7 +432,7 @@
\whiledo{\value{@secolumn}<\value{@wpcount}}{%
\stepcounter{@secolumn}%
\edef\serowtemp{\serowtemp&\fpeval{round(\csname %
- @wpPersonMonths\arabic{@secolumn}\endcsname,0)}}%
+ @wpPersonMonths\arabic{@secolumn}\endcsname/2,0)}}%
\@bsphack
\protected@write\@auxout{}%
{\string\expandafter\string\expandafter\string\expandafter%
@@ -429,7 +441,7 @@
\arabic{@secolumn}},0)}}}%
\@esphack
}
- \serowtemp & \fpeval{round(\setotalpm,0)} \\
+ \serowtemp & \fpeval{round(\setotalpm/2,0)} \\
\hline
\end{xltabular}
\end{center}
@@ -718,7 +730,6 @@
}{%
\end{tcolorbox}%
}
-\RequirePackage{everypage}
\RequirePackage{environ}
\newcounter{abspage}% \thepage not reliab
\newcommand{\newSFPage}[1]% #1 = \theabspage
@@ -733,15 +744,17 @@
\rotatebox{90}{\parbox[c][\textwidth][c]{\textheight}{\BODY}}%
\fi
\end{figure}}
-\AddEverypageHook{% check if sideways figure on this page
- \ifdim\textwidth=\textheight
- \stepcounter{abspage}% already in landscape
- \else
- \@ifundefined{SFPage@\theabspage}{}{\global\pdfpageattr{/Rotate 0}}%
- \stepcounter{abspage}%
- \@ifundefined{SFPage@\theabspage}{}%
- {\global\pdfpageattr{/Rotate 90}}%
- \fi}
+\AddToHook{shipout/background}{% check if sideways figure on this page
+ \put(1in,-1in){%
+ \ifdim\textwidth=\textheight
+ \stepcounter{abspage}% already in landscape
+ \else
+ \@ifundefined{SFPage@\theabspage}{}{\global\pdfpageattr{/Rotate 0}}%
+ \stepcounter{abspage}%
+ \@ifundefined{SFPage@\theabspage}{}%
+ {\global\pdfpageattr{/Rotate 90}}%
+ \fi}%
+ }
\RequirePackage{newtxtext} % Use Times for main text
\RequirePackage{newtxmath} % Use Times for math
\renewcommand*\ttdefault{lmvtt} % Latin Modern Typewriter Proportional
diff --git a/Master/texmf-dist/tex/latex/heria/hi-methodology.tex b/Master/texmf-dist/tex/latex/heria/hi-methodology.tex
index 0ba1b503aab..b672aa0a834 100644
--- a/Master/texmf-dist/tex/latex/heria/hi-methodology.tex
+++ b/Master/texmf-dist/tex/latex/heria/hi-methodology.tex
@@ -31,7 +31,7 @@
environmental objectives of the EU Taxonomy Regulation.}
\item
\emph{If you plan to use, develop and/or deploy artificial
- intellingence (AI) based systems and/or techniques you must
+ intelligence (AI) based systems and/or techniques you must
demonstrate their technical robustness. AI-based systems or techniques
should be, or be developed to become:~}
diff --git a/Master/texmf-dist/tex/latex/heria/hi-workplan.tex b/Master/texmf-dist/tex/latex/heria/hi-workplan.tex
index 20070b17c37..db64e7da4eb 100644
--- a/Master/texmf-dist/tex/latex/heria/hi-workplan.tex
+++ b/Master/texmf-dist/tex/latex/heria/hi-workplan.tex
@@ -40,12 +40,33 @@ Please provide the following:
\item
\emph{Give full details. Base your account on the logical structure of
the project and the stages in which it is to be carried out.}
+\makeatletter
+\ifdim\@templateversion pt<3.4pt
\emph{The number of work packages should be proportionate to the scale
and complexity of the project.}
\item
\emph{You should give enough detail in each work package to justify
the proposed resources to be allocated and also quantified information
so that progress can be monitored, including by the Commission}
+\else
+ \emph{Each work package should be a substantial part of the work
+ plan, and the number of work packages should be proportionate to
+ the scale and complexity of the project.}
+\item \emph{Structure each work package by breaking it down into
+ tasks. If tasks are not appropriate, work packages can be
+ organised according to other criteria (e.g., according to the type
+ of work or thematically). For each task or element of the work
+ package, describe all activities to be carried out and quantify
+ them (e.g., number of protocols, tests, measurements,
+ combinations, study subjects, conferences, publications,
+ etc.). Provide enough detail to clarify who will do this work and
+ why it is needed for the project, (e.g., the level of
+ qualification and number of person-months for personnel, as well
+ as the requested equipment, consumables, meetings, etc.), to
+ justify the proposed resources and so that progress can be
+ monitored, including by the Commission.}
+\fi
+\makeatother
\item
\emph{Resources assigned to work packages should be in line with their
objectives and deliverables. You are advised to include a distinct
diff --git a/Master/texmf-dist/tex/latex/heria/hi-wp-description.tex b/Master/texmf-dist/tex/latex/heria/hi-wp-description.tex
index 4697c862162..1146119f66e 100644
--- a/Master/texmf-dist/tex/latex/heria/hi-wp-description.tex
+++ b/Master/texmf-dist/tex/latex/heria/hi-wp-description.tex
@@ -8,9 +8,15 @@
%%
%% This is a generated file.
%%
+\makeatletter
+\ifdim\@templateversion pt<3.4pt
(where appropriate, broken down into tasks), lead partner and role of
participants. Deliverables linked to each WP are listed in table 3.1c
(no need to repeat the information here).
+\else
+(where appropriate, broken down into tasks), lead partner and role of participants. For each task, quantify the amount of work. Provide enough detail to justify the resources requested and clarify why the work is needed and who will do it. Deliverables linked to each WP are listed in table 3.1c (no need to repeat the information here).
+\fi
+\makeatother
\endinput
%%
%% End of file `hi-wp-description.tex'.
diff --git a/Master/texmf-dist/tex/latex/homework/homework.cls b/Master/texmf-dist/tex/latex/homework/homework.cls
index 576cd354535..7bc5adcf855 100644
--- a/Master/texmf-dist/tex/latex/homework/homework.cls
+++ b/Master/texmf-dist/tex/latex/homework/homework.cls
@@ -12,7 +12,7 @@
\NeedsTeXFormat{LaTeX2e}[2022-06-01]
\ProvidesExplClass
{homework}
- {2024/02/21} {}
+ {2024/09/30} {}
{Document class for writing homework}
\keys_define:nn { homework }
@@ -58,6 +58,22 @@
, remove~qed .bool_set:N = \l__homework_no_qed_bool
, remove qed .bool_set:N = \l__homework_no_qed_bool
+ , remove-problem-qed .bool_set:N = \l__homework_no_qed_problem_bool
+ , remove-problem-qed .initial:n = { false }
+ , remove~problem~qed .bool_set:N = \l__homework_no_qed_problem_bool
+ , remove problem qed .bool_set:N = \l__homework_no_qed_problem_bool
+ , remove-question-qed .bool_set:N = \l__homework_no_qed_problem_bool
+ , remove~question~qed .bool_set:N = \l__homework_no_qed_problem_bool
+ , remove question qed .bool_set:N = \l__homework_no_qed_problem_bool
+
+ , remove-solution-qed .bool_set:N = \l__homework_no_qed_solution_bool
+ , remove-solution-qed .initial:n = { false }
+ , remove~solution~qed .bool_set:N = \l__homework_no_qed_solution_bool
+ , remove solution qed .bool_set:N = \l__homework_no_qed_solution_bool
+ , remove-answer-qed .bool_set:N = \l__homework_no_qed_solution_bool
+ , remove~answer~qed .bool_set:N = \l__homework_no_qed_solution_bool
+ , remove answer qed .bool_set:N = \l__homework_no_qed_solution_bool
+
, unknown .code:n = {
\PassOptionsToClass { \CurrentOption } { minimart }
\PassOptionsToClass { \CurrentOption } { einfart }
@@ -70,9 +86,15 @@
%% Load the base class
%%================================
+\bool_if:NT \l__homework_no_qed_bool
+ {
+ \bool_set_true:N \l__homework_no_qed_problem_bool
+ \bool_set_true:N \l__homework_no_qed_solution_bool
+ }
+
\sys_if_engine_pdftex:TF
{
- \bool_if:NF \l__homework_no_qed_bool
+ \bool_if:NF \l__homework_no_qed_problem_bool
{
\PassOptionsToClass { theorem with qed } { minimart }
}
@@ -80,7 +102,7 @@
\LoadClass { minimart }
}
{
- \bool_if:NF \l__homework_no_qed_bool
+ \bool_if:NF \l__homework_no_qed_problem_bool
{
\PassOptionsToClass { theorem with qed } { einfart }
}
@@ -271,8 +293,11 @@
\ignorespaces
}
{
- \pushQED{\qed}
- \popQED\endtrivlist\@endpefalse
+ \bool_if:NF \l__homework_no_qed_solution_bool
+ {
+ \pushQED{\qed}
+ \popQED\endtrivlist\@endpefalse
+ }
}
\NewDocumentEnvironment { answer } { O{ \l__homework_answer_tl } }
diff --git a/Master/texmf-dist/tex/latex/oberdiek/hypcap.sty b/Master/texmf-dist/tex/latex/hypcap/hypcap.sty
index c9486d68fca..04f91fefea4 100644
--- a/Master/texmf-dist/tex/latex/oberdiek/hypcap.sty
+++ b/Master/texmf-dist/tex/latex/hypcap/hypcap.sty
@@ -9,11 +9,11 @@
%% This is a generated file.
%%
%% Project: hypcap
-%% Version: 2016/05/16 v1.12
+%% Version: 2024-07-26 v1.13
%%
%% Copyright (C)
%% 1999-2001, 2006-2008, 2011 Heiko Oberdiek
-%% 2016-2019 Oberdiek Package Support Group
+%% 2016-2024 Oberdiek Package Support Group
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
@@ -29,8 +29,7 @@
%%
%% The Current Maintainers of this work are
%% Heiko Oberdiek and the Oberdiek Package Support Group
-%% https://github.com/ho-tex/oberdiek/issues
-%%
+%% https://github.com/ho-tex/hypcap/issues
%%
%% This work consists of the main source file hypcap.dtx
%% and the derived files
@@ -38,7 +37,7 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{hypcap}%
- [2016/05/16 v1.12 Adjusting the anchors of captions (HO)]
+ [2024-07-26 v1.13 Adjusting the anchors of captions (HO)]
\@ifundefined{hyper@@anchor}{%
\PackageError{hypcap}{You have to load 'hyperref' first}\@ehc
\endinput
@@ -116,7 +115,7 @@
\capstart
}{%
\if@capstart
- \PackageError{hypcap}{You have forgotten to use \string\caption}%
+ \PackageWarning{hypcap}{You have forgotten to use \string\caption}%
\global\@capstartfalse
\else
\fi
diff --git a/Master/texmf-dist/tex/latex/hypdestopt/hypdestopt.sty b/Master/texmf-dist/tex/latex/hypdestopt/hypdestopt.sty
index 8218f1c7711..d789eadad43 100644
--- a/Master/texmf-dist/tex/latex/hypdestopt/hypdestopt.sty
+++ b/Master/texmf-dist/tex/latex/hypdestopt/hypdestopt.sty
@@ -9,11 +9,11 @@
%% This is a generated file.
%%
%% Project: hypdestopt
-%% Version: 2020-09-02 v2.7
+%% Version: 2024-08-07 v2.8
%%
%% Copyright (C)
%% 2006-2008, 2011 Heiko Oberdiek
-%% 2016-2020 Oberdiek Package Support Group
+%% 2016-2024 Oberdiek Package Support Group
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
@@ -37,7 +37,19 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{hypdestopt}%
- [2020-09-02 v2.7 Hyperref destination optimizer (HO)]%
+ [2024-08-07 v2.8 Hyperref destination optimizer (HO)]%
+\IfDocumentMetadataTF
+ {
+ \PackageWarning{hypdestopt}
+ {
+ \string\DocumentMetadata detected. \MessageBreak
+ The package will do nothing.
+ }{}
+ }{}
+\IfDocumentMetadataTF
+ {
+ \endinput
+ }{}
\newif\ifHypDest@Verbose
\DeclareOption{verbose}{\HypDest@Verbosetrue}
\def\HypDest@VerboseInfo#1{%
diff --git a/Master/texmf-dist/tex/latex/hyperref/hdvipdfm.def b/Master/texmf-dist/tex/latex/hyperref/hdvipdfm.def
index 90fda975d0d..8fdce7b068b 100644
--- a/Master/texmf-dist/tex/latex/hyperref/hdvipdfm.def
+++ b/Master/texmf-dist/tex/latex/hyperref/hdvipdfm.def
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{hdvipdfm.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref driver for dvipdfm]
\Hy@VersionCheck{hdvipdfm.def}
\special{pdf:majorversion \Hy@pdf@majorversion}
diff --git a/Master/texmf-dist/tex/latex/hyperref/hdvips.def b/Master/texmf-dist/tex/latex/hyperref/hdvips.def
index 2e388c458bd..62c4d56cf25 100644
--- a/Master/texmf-dist/tex/latex/hyperref/hdvips.def
+++ b/Master/texmf-dist/tex/latex/hyperref/hdvips.def
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{hdvips.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref driver for dvips]
\Hy@VersionCheck{hdvips.def}
\providecommand*{\XR@ext}{pdf}
diff --git a/Master/texmf-dist/tex/latex/hyperref/hdvipson.def b/Master/texmf-dist/tex/latex/hyperref/hdvipson.def
index dc9eb63e4dd..ba81a7bada2 100644
--- a/Master/texmf-dist/tex/latex/hyperref/hdvipson.def
+++ b/Master/texmf-dist/tex/latex/hyperref/hdvipson.def
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{hdvipson.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref driver for dvipsone]
\Hy@VersionCheck{hdvipson.def}
\providecommand*{\XR@ext}{pdf}
diff --git a/Master/texmf-dist/tex/latex/hyperref/hdviwind.def b/Master/texmf-dist/tex/latex/hyperref/hdviwind.def
index 9e9f0fd3145..5ff71600070 100644
--- a/Master/texmf-dist/tex/latex/hyperref/hdviwind.def
+++ b/Master/texmf-dist/tex/latex/hyperref/hdviwind.def
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{hdviwind.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref driver for dviwindo]
\Hy@VersionCheck{hdviwind.def}
\begingroup
diff --git a/Master/texmf-dist/tex/latex/hyperref/hluatex.def b/Master/texmf-dist/tex/latex/hyperref/hluatex.def
index 368215ec0e5..b681ab1c33d 100644
--- a/Master/texmf-dist/tex/latex/hyperref/hluatex.def
+++ b/Master/texmf-dist/tex/latex/hyperref/hluatex.def
@@ -34,10 +34,10 @@
%%
%% File: hyperref.dtx
\ProvidesFile{hluatex.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref driver for luaTeX]
\Hy@VersionCheck{hluatex.def}
-%% 2024-05-23 v7.01i
+%% 2024-07-10 v7.01j
%% force unicode encoding, see issue #101
%% code mostly copied from hxetex.def
\HyPsd@LoadUnicode
diff --git a/Master/texmf-dist/tex/latex/hyperref/hpdftex.def b/Master/texmf-dist/tex/latex/hyperref/hpdftex.def
index 564e1a49c62..bc8b4b84fb5 100644
--- a/Master/texmf-dist/tex/latex/hyperref/hpdftex.def
+++ b/Master/texmf-dist/tex/latex/hyperref/hpdftex.def
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{hpdftex.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref driver for pdfTeX]
\Hy@VersionCheck{hpdftex.def}
\pdf@ifdraftmode{%
diff --git a/Master/texmf-dist/tex/latex/hyperref/htex4ht.cfg b/Master/texmf-dist/tex/latex/hyperref/htex4ht.cfg
index b95ece55426..a007ef5e83d 100644
--- a/Master/texmf-dist/tex/latex/hyperref/htex4ht.cfg
+++ b/Master/texmf-dist/tex/latex/hyperref/htex4ht.cfg
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{htex4ht.cfg}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref configuration file for TeX4ht]
\IfFileExists{\jobname.cfg}{\endinput}{}
\Preamble{html}
diff --git a/Master/texmf-dist/tex/latex/hyperref/htex4ht.def b/Master/texmf-dist/tex/latex/hyperref/htex4ht.def
index 7fbf313910a..3b707e5232d 100644
--- a/Master/texmf-dist/tex/latex/hyperref/htex4ht.def
+++ b/Master/texmf-dist/tex/latex/hyperref/htex4ht.def
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{htex4ht.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref driver for TeX4ht]
\Hy@VersionCheck{htex4ht.def}
\providecommand*{\XR@ext}{html}
diff --git a/Master/texmf-dist/tex/latex/hyperref/htexture.def b/Master/texmf-dist/tex/latex/hyperref/htexture.def
index 217aaaadfec..7473dbf4b40 100644
--- a/Master/texmf-dist/tex/latex/hyperref/htexture.def
+++ b/Master/texmf-dist/tex/latex/hyperref/htexture.def
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{htexture.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref driver for Textures]
\Hy@VersionCheck{htexture.def}
\providecommand*{\XR@ext}{pdf}
diff --git a/Master/texmf-dist/tex/latex/hyperref/hvtex.def b/Master/texmf-dist/tex/latex/hyperref/hvtex.def
index d199e3464bc..fda74743b20 100644
--- a/Master/texmf-dist/tex/latex/hyperref/hvtex.def
+++ b/Master/texmf-dist/tex/latex/hyperref/hvtex.def
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{hvtex.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref driver for VTeX in PDF/PS mode]
\Hy@VersionCheck{hvtex.def}
\providecommand*{\XR@ext}{pdf}
diff --git a/Master/texmf-dist/tex/latex/hyperref/hvtexhtm.def b/Master/texmf-dist/tex/latex/hyperref/hvtexhtm.def
index 9f8086bd72b..ddda3f9c1a7 100644
--- a/Master/texmf-dist/tex/latex/hyperref/hvtexhtm.def
+++ b/Master/texmf-dist/tex/latex/hyperref/hvtexhtm.def
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{hvtexhtml.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref driver for VTeX in HTML mode]
\Hy@VersionCheck{hvtexhtm.def}
\providecommand*{\XR@ext}{htm}
diff --git a/Master/texmf-dist/tex/latex/hyperref/hvtexmrk.def b/Master/texmf-dist/tex/latex/hyperref/hvtexmrk.def
index 2efdf7b1c83..007d5fc37e0 100644
--- a/Master/texmf-dist/tex/latex/hyperref/hvtexmrk.def
+++ b/Master/texmf-dist/tex/latex/hyperref/hvtexmrk.def
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{hvtexmrk.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref driver for VTeX in PDF/PS mode (pdfmark specials)]
\Hy@VersionCheck{hvtexmrk.def}
\providecommand*{\XR@ext}{pdf}
diff --git a/Master/texmf-dist/tex/latex/hyperref/hxetex.def b/Master/texmf-dist/tex/latex/hyperref/hxetex.def
index b9b74249035..a53590216eb 100644
--- a/Master/texmf-dist/tex/latex/hyperref/hxetex.def
+++ b/Master/texmf-dist/tex/latex/hyperref/hxetex.def
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{hxetex.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref driver for XeTeX]
\Hy@VersionCheck{hxetex.def}
\HyPsd@LoadUnicode
diff --git a/Master/texmf-dist/tex/latex/hyperref/hyperref.sty b/Master/texmf-dist/tex/latex/hyperref/hyperref.sty
index 960b63f31c0..fd16d9ff212 100644
--- a/Master/texmf-dist/tex/latex/hyperref/hyperref.sty
+++ b/Master/texmf-dist/tex/latex/hyperref/hyperref.sty
@@ -36,7 +36,7 @@
%% File: hyperref.dtx
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\ProvidesPackage{hyperref}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hypertext links for LaTeX]
\begingroup
\@makeother\`%
@@ -5903,6 +5903,8 @@
\Hy@temp{calculate}
\Hy@temp{onfocus}
\Hy@temp{onblur}
+\Hy@temp{onmousedown}
+\Hy@temp{onmouseup}
\Hy@temp{onenter}
\Hy@temp{onexit}
\let\Fld@calculate@sortkey\@empty
@@ -5923,8 +5925,6 @@
}%
\fi
\Hy@temp{ondblclick}
-\Hy@temp{onmousedown}
-\Hy@temp{onmouseup}
\Hy@temp{onmouseover}
\Hy@temp{onmousemove}
\Hy@temp{onmouseout}
@@ -7757,6 +7757,7 @@
\let\make@df@tag@@@\Hy@make@df@tag@@@
}{}
}{}
+\def\HyOrg@addtoreset#1#2{\expandafter\@cons\csname cl@#2\endcsname {{#1}}}
\@ifundefined{hyper@nopatch@counter}
{
\let\HyOrg@addtoreset\@addtoreset
diff --git a/Master/texmf-dist/tex/latex/hyperref/hypertex.def b/Master/texmf-dist/tex/latex/hyperref/hypertex.def
index 797bf880919..b03da7b3665 100644
--- a/Master/texmf-dist/tex/latex/hyperref/hypertex.def
+++ b/Master/texmf-dist/tex/latex/hyperref/hypertex.def
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{hypertex.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref driver for HyperTeX specials]
\Hy@VersionCheck{hypertex.def}
\providecommand*{\XR@ext}{dvi}
diff --git a/Master/texmf-dist/tex/latex/hyperref/nohyperref.sty b/Master/texmf-dist/tex/latex/hyperref/nohyperref.sty
index 323af89e368..e6c8822b185 100644
--- a/Master/texmf-dist/tex/latex/hyperref/nohyperref.sty
+++ b/Master/texmf-dist/tex/latex/hyperref/nohyperref.sty
@@ -34,7 +34,7 @@
%% File: hyperref.dtx
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\ProvidesPackage{nohyperref}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Dummy hyperref (SR)]
\let\hyper@@anchor\@gobble
\def\hyper@link#1#2#3{#3}%
diff --git a/Master/texmf-dist/tex/latex/hyperref/pd1enc.def b/Master/texmf-dist/tex/latex/hyperref/pd1enc.def
index 68a99aaccef..d202fd12697 100644
--- a/Master/texmf-dist/tex/latex/hyperref/pd1enc.def
+++ b/Master/texmf-dist/tex/latex/hyperref/pd1enc.def
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{pd1enc.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref: PDFDocEncoding definition (HO)]
\DeclareFontEncoding{PD1}{}{}
\DeclareTextAccent{\`}{PD1}{\textasciigrave}
diff --git a/Master/texmf-dist/tex/latex/hyperref/pdfmark.def b/Master/texmf-dist/tex/latex/hyperref/pdfmark.def
index f8a881fc727..761f6527e91 100644
--- a/Master/texmf-dist/tex/latex/hyperref/pdfmark.def
+++ b/Master/texmf-dist/tex/latex/hyperref/pdfmark.def
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{pdfmark.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref definitions for pdfmark specials]
\Hy@VersionCheck{pdfmark.def}
\begingroup
diff --git a/Master/texmf-dist/tex/latex/hyperref/psdextra.def b/Master/texmf-dist/tex/latex/hyperref/psdextra.def
index 62cfb0b3495..50f3e63126c 100644
--- a/Master/texmf-dist/tex/latex/hyperref/psdextra.def
+++ b/Master/texmf-dist/tex/latex/hyperref/psdextra.def
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{psdextra.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref: Additions to PDF string support]
\Hy@VersionCheck{psdextra.def}
\DeclareTextCommand{\textGamma}{PU}{\83\223}%* U+0393
diff --git a/Master/texmf-dist/tex/latex/hyperref/puarenc.def b/Master/texmf-dist/tex/latex/hyperref/puarenc.def
index 6edb5ae80b2..5e04cf4ad2b 100644
--- a/Master/texmf-dist/tex/latex/hyperref/puarenc.def
+++ b/Master/texmf-dist/tex/latex/hyperref/puarenc.def
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{puarenc.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref: Additions to puenc.def for Arabi]
\DeclareTextCommand{\hamza}{PU}{\86\041}% U+0621
\DeclareTextCommand{\alefmadda}{PU}{\86\042}% U+0622
diff --git a/Master/texmf-dist/tex/latex/hyperref/puenc-extra.def b/Master/texmf-dist/tex/latex/hyperref/puenc-extra.def
index 18a3e21f4ff..6e983121159 100644
--- a/Master/texmf-dist/tex/latex/hyperref/puenc-extra.def
+++ b/Master/texmf-dist/tex/latex/hyperref/puenc-extra.def
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{puenc-extra.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref: PDF Unicode extra definition (HO)]
\DeclareTextCommand{\G}{PU}[1]{#1\83\017}% U+030F
\DeclareTextCompositeCommand{\G}{PU}{\@empty}{\textdoublegrave}%
diff --git a/Master/texmf-dist/tex/latex/hyperref/puenc.def b/Master/texmf-dist/tex/latex/hyperref/puenc.def
index 820a7035565..8aedd0b78c8 100644
--- a/Master/texmf-dist/tex/latex/hyperref/puenc.def
+++ b/Master/texmf-dist/tex/latex/hyperref/puenc.def
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{puenc.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref: PDF Unicode definition (HO)]
\DeclareFontEncoding{PU}{}{}
\DeclareTextCommand{\`}{PU}[1]{#1\83\000}% U+0300
diff --git a/Master/texmf-dist/tex/latex/hyperref/puvnenc.def b/Master/texmf-dist/tex/latex/hyperref/puvnenc.def
index b9920bead2e..e0323c4eb86 100644
--- a/Master/texmf-dist/tex/latex/hyperref/puvnenc.def
+++ b/Master/texmf-dist/tex/latex/hyperref/puvnenc.def
@@ -33,7 +33,7 @@
%%
%% File: hyperref.dtx
\ProvidesFile{puvnenc.def}
- [2024-05-23 v7.01i %
+ [2024-07-10 v7.01j %
Hyperref: Additions to puenc.def for VnTeX]
\DeclareTextCommand{\abreve}{PU}{\81\003}% U+0103
\DeclareTextCommand{\acircumflex}{PU}{\80\342}% U+00E2
diff --git a/Master/texmf-dist/tex/latex/hyperref/xr-hyper.sty b/Master/texmf-dist/tex/latex/hyperref/xr-hyper.sty
index 6eb3708ccc5..25b1f757bdd 100644
--- a/Master/texmf-dist/tex/latex/hyperref/xr-hyper.sty
+++ b/Master/texmf-dist/tex/latex/hyperref/xr-hyper.sty
@@ -34,7 +34,7 @@
%% File: xr-hyper.dtx Copyright (C) 1993-2024 David Carlisle
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{xr-hyper}
- [2024-05-23 v7.01i eXternal References (DPC)]
+ [2024-07-10 v7.01j eXternal References (DPC)]
\def\externaldocument{\@testopt\XR@cite{}}
\let\externalcitedocument\externaldocument
\def\XR@cite[#1]{\@testopt{\XR@[#1]}{}}
diff --git a/Master/texmf-dist/tex/latex/iaria-lite/iaria-lite.cls b/Master/texmf-dist/tex/latex/iaria-lite/iaria-lite.cls
index 8d868395cc7..d92d3b07a27 100644
--- a/Master/texmf-dist/tex/latex/iaria-lite/iaria-lite.cls
+++ b/Master/texmf-dist/tex/latex/iaria-lite/iaria-lite.cls
@@ -2,11 +2,23 @@
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{iaria-lite}[2024/04/10 unofficial IARIA-lite conference template v0.2]
+\ProvidesClass{iaria-lite}[2024/09/16 unofficial IARIA-lite conference template v0.4]
+\newcounter{iaria@subfigtracker}
+\newcounter{iaria@subcaptiontracker}
\newcounter{iaria@pbalancetracker}
\newcounter{iaria@flushendtracker}
+
+\DeclareOption{subfig}{
+ \setcounter{iaria@subfigtracker}{1}
+ \typeout{iaria class: subfig option is set (use subfloat command).}
+}
+\DeclareOption{subcaption}{
+ \setcounter{iaria@subcaptiontracker}{1}
+ \typeout{iaria class: subcaption option is set (use subfigure command).}
+}
+
\DeclareOption{onecolumn}{\OptionNotUsed} % IEEE option onecolumn will be ignored
\DeclareOption{pbalance}{
@@ -66,8 +78,6 @@
\crcr}
\makeatother
-\RequirePackage[caption=false,font=footnotesize]{subfig}
-
\usepackage{etoolbox}
\makeatletter
\patchcmd{\@makecaption}
@@ -77,6 +87,16 @@
{}
\makeatother
+\ifnum\value{iaria@subfigtracker}=1
+ \typeout{iaria class: load subfig package (use subfloat command).}
+ \RequirePackage[caption=false,font=footnotesize]{subfig}
+\fi
+\ifnum\value{iaria@subcaptiontracker}=1
+ \typeout{iaria class: load subcaption package (use subfigure command).}
+ \RequirePackage{subcaption}
+ \captionsetup[subfigure]{labelformat=parens,font=footnotesize}
+\fi
+
\ifnum\value{iaria@pbalancetracker}=1
\typeout{iaria class: load pbalance package.}
\RequirePackage{pbalance}
diff --git a/Master/texmf-dist/tex/latex/iaria/iaria.cls b/Master/texmf-dist/tex/latex/iaria/iaria.cls
index a8e4a472a67..daa56b37cf8 100644
--- a/Master/texmf-dist/tex/latex/iaria/iaria.cls
+++ b/Master/texmf-dist/tex/latex/iaria/iaria.cls
@@ -3,11 +3,23 @@
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{iaria}[2024/04/10 unofficial IARIA conference template v0.2]
+\ProvidesClass{iaria}[2024/09/16 unofficial IARIA conference template v0.4]
+\newcounter{iaria@subfigtracker}
+\newcounter{iaria@subcaptiontracker}
\newcounter{iaria@pbalancetracker}
\newcounter{iaria@flushendtracker}
+
+\DeclareOption{subfig}{
+ \setcounter{iaria@subfigtracker}{1}
+ \typeout{iaria class: subfig option is set (use subfloat command).}
+}
+\DeclareOption{subcaption}{
+ \setcounter{iaria@subcaptiontracker}{1}
+ \typeout{iaria class: subcaption option is set (use subfigure command).}
+}
+
\DeclareOption{onecolumn}{\OptionNotUsed} % IEEE option onecolumn will be ignored
\DeclareOption{pbalance}{
@@ -42,7 +54,12 @@
\RequirePackage{hyperref}
\hypersetup{hidelinks,unicode}
-\RequirePackage[style=ieee, backend=biber, url=false, hyperref, maxnames=5, minnames=1, maxcitenames=2, mincitenames=1]{biblatex}
+\RequirePackage[defernumbers=true,style=ieee, backend=biber, url=false, hyperref, maxnames=5, minnames=1, maxcitenames=2, mincitenames=1]{biblatex}
+
+\makeatletter
+\let\blx@rerun@biber\relax
+\makeatother
+
\renewcommand*{\bibfont}{\small}
\DeclareBibliographyDriver{online}{%
@@ -107,8 +124,6 @@
\crcr}
\makeatother
-\RequirePackage[caption=false,font=footnotesize]{subfig}
-
\usepackage{etoolbox}
\makeatletter
\patchcmd{\@makecaption}
@@ -118,7 +133,15 @@
{}
\makeatother
-\RequirePackage[shortcuts]{extdash} % Use \-/ for a breakable dash that does not prevent the remainer of the word to be hyphenated
+\ifnum\value{iaria@subfigtracker}=1
+ \typeout{iaria class: load subfig package (use subfloat command).}
+ \RequirePackage[caption=false,font=footnotesize]{subfig}
+\fi
+\ifnum\value{iaria@subcaptiontracker}=1
+ \typeout{iaria class: load subcaption package (use subfigure command).}
+ \RequirePackage{subcaption}
+ \captionsetup[subfigure]{labelformat=parens,font=footnotesize}
+\fi
\ifnum\value{iaria@pbalancetracker}=1
\typeout{iaria class: load pbalance package.}
@@ -129,6 +152,9 @@
\RequirePackage{flushend}
\fi
+
+\RequirePackage[shortcuts]{extdash} % Use \-/ for a breakable dash that does not prevent the remainer of the word to be hyphenated
+
\endinput
%%
%% End of file `iaria.cls'.
diff --git a/Master/texmf-dist/tex/latex/interlinear/interlinear.sty b/Master/texmf-dist/tex/latex/interlinear/interlinear.sty
new file mode 100644
index 00000000000..dd881b83dbc
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/interlinear/interlinear.sty
@@ -0,0 +1,1176 @@
+% ^package_name="lingwrit-interlinear"_version="1.0"_container="lingwrit"
+% ^markup-language="WRIML"
+% ^purpose
+% This package processes interlinear gloss text, providing tools for handling and formatting glosses in linguistic documents.
+% It is based on the cgloss4e.sty package, but with significant modifications to avoid conflicts with other packages and to extend functionality.
+% As part of the lingwrit package, lingwrit-interlinear should not be loaded alongside it.
+% _purpose
+% ^base-program cgloss4e.sty _base-program
+
+% ^rem General Information
+% ^- lingwrit-interlinear is a modified version of cgloss4e.sty _-
+% ^- It primarily renames commands according to a customized syntax to prevent conflicts with other similar packages. _-
+% ^- Additional modifications include new commands and a new interlinear environment. _-
+% ^- Code added to the original has been marked with % ^added and % _added _-
+% _rem
+
+% ^module_name="interlinear"_container="lingwrit"
+% ^desc
+% This module is a modified version of the cgloss4e.sty.
+%
+% Modifications include:
+% - Command renaming: Commands have been renamed to avoid potential conflicts with other packages using similar names.
+% - Commands for processing four-lines interlinearization
+% - interlinear environment with its options
+% - markup commands and other functionalities
+%
+% Below is the list of new command names and their counterparts in cgloss:
+
+% ^list
+% ^cat Functions _cat
+
+% \more ^_becomes \lw_iln_process:words_queue
+% \lastword ^_becomes \lw_iln_fun_get:last_word
+% \testdone ^_becomes \lw_iln_check:queue_emptyness
+% \getwords ^_becomes \lw_iln_fun_get:line_words
+% \donewords ^_becomes \lw_iln_fun_exit:word_extraction
+% \twosent ^_becomes \lw_iln_fun_align:two_lines_words
+% \threesent ^_becomes \lw_iln_fun_align:three_lines_words
+% \glossglue ^_becomes \lw_iln_glue:inter_word_space
+% \gll ^_becomes \lw_iln_fun_enter:two_lines_interlinearization
+% \glll ^_becomes \lw_iln_fun_enter:three_lines_interlinearization
+% \glt ^_becomes \lw_iln_fun_insert:free_translation
+% \glend ^_becomes \lw_iln_fun_exit:interlinearization
+% \gl@stop ^_becomes \lw_iln_fun_exit:words_alignment
+
+% ^cat Boxes variables _cat
+
+% \lineone ^_becomes \lw_iln_var_box:line_one
+% \linetwo ^_becomes \lw_iln_var_box:line_two
+% \linethree ^_becomes \lw_iln_var_box:line_three
+% \linefour ^_becomes \lw_iln_var_box:line_four
+% \wordone ^_becomes \lw_iln_var_box:word_one
+% \wordtwo ^_becomes \lw_iln_var_box:word_two
+% \wordthree ^_becomes \lw_iln_var_box:word_three
+% \wordfour ^_becomes \lw_iln_var_box:word_four
+% \gline ^_becomes \lw_iln_var_box:iln_text_lines
+
+% ^cat Setting Appearence _cat
+
+% \eachwordone ^_becomes \lw_iln_fun_set:line_one_words_format
+% \eachwordtwo ^_becomes \lw_iln_fun_set:line_two_words_format
+% \eachwordthree ^_becomes \lw_iln_fun_set:line_three_words_format
+% \eachwordfour ^_becomes \lw_iln_fun_set:line_four_words_format
+% _list
+
+% The naming of the commands follows the following schema:
+
+% \<container>_<package>_<type>_<subtype>:<name/description>
+
+% <container> code is: lw (for lingwrit)
+% <package> code is: iln (for interlinear)
+% <type> code includes: "var" (for variables) and "fun" (for functions)
+
+% Variable Subtypes
+% box: for boxes
+
+% Function Subtypes
+% enter: initialize a process
+% exit: terminates a process
+% get: extract information
+% check: test if some condition is met
+% insert: inserts some stuff (i.e. the translation)
+% process: process given elements
+% calc: calculates the value of some variable
+% set: sets (manually) the values of some variable
+% _desc
+
+% ^code
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{lingwrit-interlinear}[2024/08/22 v1.0 (Linguistic Writing) Interlinear gloss text processing]
+
+% todo Required Packages
+\RequirePackage{marginnote} % ^rem for marginnotes _rem
+\RequirePackage{xifthen}
+\RequirePackage{xkeyval} % ^rem For key=val options
+\RequirePackage{xparse,etoolbox,enumitem}
+
+% todo 0. Utilities
+
+% todo a. LW Syntax Related Commands
+% Shortcut for some conditional statements
+\DeclareDocumentCommand{\IfValueArgTF}{mmmm}{\ifthenelse{\equal{#1}{#2}}{#3}{#4}}
+% Enabling the package syntax
+\providecommand{\switchlwsyntaxon}{\makeatletter\catcode `:=11 \catcode `_=11}
+\providecommand{\switchlwsyntaxoff}{\makeatother \catcode `:=12 \catcode `_=8}
+% if you want to modify some internal commands, check if your code is
+% surrounded by \switchlwsyntaxon and \switchlwsyntaxoff (LW Syntax enables "@", ":" and "_" to be used in csnames. So you need not using \makeatletter and \makeatother when you are using lwsyntax))
+
+
+% ^action_name="Enabling LingWrit Syntax"
+\switchlwsyntaxon
+% _action
+
+% todo b. Renaming of some TeX primitives
+\let\enter:group\bgroup\relax
+\let\exit:group\egroup\relax
+
+% todo c. Defining some helpers
+\def\lw_fun_helper:store#1{\expandafter\let\csname call:stored_#1\endcsname\expandafter\csname #1\endcsname}
+\def\lw_fun_helper:call#1{#1}
+\def\lw_fun_helper:clear#1{\RenewDocumentCommand{#1}{}{\relax}}%
+
+% todo d. Usefull Commands That are not used
+% The following commands are not used actually but may be usefull in some contexts
+% Fixing bugs with setspace package
+% If you encounter an error message using \singlespacing, \onehalfspacing or \doublespacing, use either of the following commands, according to your needs.
+
+\def\usedoublespacing{\lw_fun_helper:store{doublespacing}
+ \renewcommand\doublespacing{%
+ \call:stored_doublespacing%
+ \def\baselinestretch{1.69}}%
+}
+%
+\def\useonehalfspacing{%
+ \lw_fun_helper:store{onehalfspacing}
+ \renewcommand\onehalfspacing{%
+ \call:stored_onehalfspacing%
+ \def\baselinestretch{1.24}}%
+ }
+\def\usesinglespacing{%
+ \lw_fun_helper:store{singlespacing}
+ \renewcommand\singlespacing{%
+ \call:stored_singlespacing%
+ \def\baselinestretch{1}}%
+ }
+
+% Line Stretch Size Calculator
+
+% Enable LW Syntax
+%\switchlwsyntaxon
+%\newcounter{currentsize}
+%\setcounter{currentsize}{10}
+%\addtocounter{currentsize}{\@ptsize}
+%\newlength{\lw_iln_length:line_stretch_size}
+%\setlength{\lw_iln_length:line_stretch_size}{\dimexpr\baselinestretch pt * \thecurrentsize}
+%Current size: \thecurrentsize
+%Current interline size:
+%\the\lw_iln_length:line_stretch_size
+% Disable LW Syntax
+% \switchlwsyntaxoff
+
+% todo enter:cgloss4e modifications *
+
+% todo 1. Borrowings from covington
+
+% Forcing and disabling single spacing
+\let\@gsingle=1
+\def\lw_iln_fun_enable:force_single_spacing{\let\@gsingle=1}
+\def\lw_iln_fun_disable:force_single_spacing{\let\@gsingle=0}
+\@ifundefined{new@fontshape}%
+{\def\@selfnt{\ifx\@currsize\normalsize\@normalsize\else\@currsize\fi}}
+{\def\@selfnt{\selectfont}}
+
+% todo a. 2-lines global interlinearization processing commands
+% ^modif_action="\begin{flushleft} removed"
+% ^rem inspired by Alexis Dimitriadis cgloss.sty _rem
+
+\def\lw_iln_fun_enter:two_lines_interlinearization% % Introduces 2-line text-and-gloss.
+{%\begin{flushleft}
+ \ifx\@gsingle1% conditionally force single spacing (hpk/MC)
+ \vskip\baselineskip\def\baselinestretch{1}%
+ \@selfnt\vskip-\baselineskip\fi%
+ \enter:group%
+ \lw_iln_fun_align:two_lines_words%
+ }
+% _modif
+
+% todo b. 3-lines global interlinearization processing commands
+% ^modif_action="\begin{flushleft} removed"
+% ^rem inspired by Alexis Dimitriadis cgloss.sty _rem
+ \def\lw_iln_fun_enter:three_lines_interlinearization% % Introduces 3-line text-and-gloss.
+ {%\begin{flushleft}
+ \ifx\@gsingle1% conditionally force single spacing (hpk/MC)
+ \vskip\baselineskip\def\baselinestretch{1}%
+ \@selfnt\vskip-\baselineskip\fi%
+ \enter:group
+ \lw_iln_fun_align:three_lines_words
+ }
+% _modif
+
+% todo c. 4-lines global interlinearization processing commands
+% ^added_action="\lw_iln_fun_enter:four_lines_interlinearization defined for initiating 4-lines interlinearization"
+ % ^rem inspired by Alexis Dimitriadis cgloss.sty _rem
+ \def\lw_iln_fun_enter:four_lines_interlinearization% % Introduces 3-line text-and-gloss.
+ {%\begin{flushleft}
+ \ifx\@gsingle1% conditionally force single spacing (hpk/MC)
+ \vskip\baselineskip\def\baselinestretch{1}%
+ \@selfnt\vskip-\baselineskip\fi%
+ \enter:group
+ \lw_iln_fun_align:four_lines_words
+ }
+ % _modif
+
+% todo d. Translation and interlinear end
+% ^modif_action="Is now obsolete"
+% \def\lw_iln_fun_insert:free_translation{} ^rem obsolete _rem
+% _modif
+% ^modif_action="Definition modified"
+ % Introduces a translation
+ \let\trans\relax% ^rem obsolete _rem
+% _modif
+
+ \def\lw_iln_fun_exit:interlinearization{%
+ \lw_iln_fun_insert:interlinear_bottom_skip%
+ }
+ % Ends the gloss environment.
+% _modif
+
+% todo 2. Adaptation of gloss.tex
+
+ % The following TeX code is adapted, with permission, from:
+ % gloss.tex: Macros for vertically aligning words in consecutive sentences.
+ % Version: 1.0 release: 26 November 1990
+ % Copyright (c) 1991 Marcel R. van der Goot (marcel@cs.caltech.edu).
+ % Original Midnight/gloss.tex and Midnight/gloss.doc are available from
+ % csvax.cs.caltech.edu [131.215.131.131] in pub/tex
+ % and many other anonymous ftp archives.
+
+% todo a. Box Variables Declaration
+ \newbox\lw_iln_var_box:line_one% boxes with words from first line
+ \newbox\lw_iln_var_box:line_two%
+ \newbox\lw_iln_var_box:line_three%
+ \newbox\lw_iln_var_box:line_four% ^rem ADDED _rem
+ \newbox\lw_iln_var_box:word_one% a word from the first line (hbox)
+ \newbox\lw_iln_var_box:word_two%
+ \newbox\lw_iln_var_box:word_three%
+ \newbox\lw_iln_var_box:word_four% ^rem ADDED _rem
+ \newbox\lw_iln_var_box:iln_text_lines% the constructed double line (hbox)
+
+% todo b. Skip Variable Declaration and setting
+ \newskip\lw_iln_glue:inter_word_space% extra glue between glossed pairs or triples
+ \lw_iln_glue:inter_word_space = 0pt plus 2pt minus 1pt % allow stretch/shrink between words
+ %\lw_iln_glue:inter_word_space = 5pt plus 2pt minus 1pt % allow stretch/shrink between words
+ \newlength{\lw_iln_length:base_line_stretch}
+ \setlength{\lw_iln_length:base_line_stretch}{.61ex}
+
+ \AtBeginDocument{%
+ \def\lw_iln_fun_calc:line_stretch_factor{%
+ \ifdim\baselinestretch\p@=1\p@%
+ \def\lw_iln_multiplier:line_stretch_factor{.5}
+ \else%
+ \ifdim\baselinestretch\p@<1.26\p@%
+ \def\lw_iln_multiplier:line_stretch_factor{.5}
+ \else%
+ \ifdim\baselinestretch\p@<1.6\p@
+ \def\lw_iln_multiplier:line_stretch_factor{1.6}
+ \else%
+ \ifdim\baselinestretch\p@>1.6\p@
+ \def\lw_iln_multiplier:line_stretch_factor{2.23}
+ \else%
+ \ifdim\baselinestretch\p@=1.6\p@
+ \def\lw_iln_multiplier:line_stretch_factor{2.23}
+ \else%
+ \fi%
+ \fi%
+ \fi%
+ \fi%
+ \fi%
+ }
+ \lw_iln_fun_calc:line_stretch_factor%
+ %
+ \newlength{\lw_iln_length:line_spread}
+ \setlength{\lw_iln_length:line_spread}{0ex}
+ \addtolength{\lw_iln_length:line_spread}{\lw_iln_multiplier:line_stretch_factor\lw_iln_length:base_line_stretch}
+ \addtolength{\lw_iln_length:line_spread}{.16\lw_iln_length:base_line_stretch}
+ }
+ %\addtolength{\lw_iln_length:line_spread}{\lw_iln_multiplier:line_stretch_factor\lw_iln_length:base_line_stretch}
+
+
+% todo c. Boolean Declaration
+ \newif\ifnotdone
+
+% todo d. \rmfamily font declaraton (for backward compatibility)
+ % For any REALLY old distributions without \rmfamily
+ \@ifundefined{rmfamily}{\let\rmfamily=\rm}
+
+% todo e. Définition functions controlling the appearance of words in each line of the interlinearized text
+% ^modified_action="Adding low level commands to format different aspects of the appearence of words"
+\@ifundefined{lw_iln_fun_set:line_one_words_format}%
+ {\newcommand\lw_iln_fun_set:line_one_words_format{%
+ \lw_iln_fun_set:line_one_words_font_size%
+ \lw_iln_fun_set:line_one_words_font_series%
+ \lw_iln_fun_set:line_one_words_font_shape%
+ \lw_iln_fun_set:line_one_words_font_color%
+ }
+ }{\relax}
+ % ^added
+ \let\lw_iln_fun_set:line_one_words_font_size=\normalsize
+ \let\lw_iln_fun_set:line_one_words_font_series=\mdseries%
+ \let\lw_iln_fun_set:line_one_words_font_shape=\upshape%
+ \let\lw_iln_fun_set:line_one_words_font_color=\normalcolor%
+ % _added
+ %
+\@ifundefined{lw_iln_fun_set:line_two_words_format}%
+ {\newcommand\lw_iln_fun_set:line_two_words_format{%
+ \lw_iln_fun_set:line_two_words_font_size%
+ \lw_iln_fun_set:line_two_words_font_series%
+ \lw_iln_fun_set:line_two_words_font_shape%
+ \lw_iln_fun_set:line_two_words_font_color}
+ }%
+ {\relax}
+%
+ % ^added
+ \let\lw_iln_fun_set:line_two_words_font_size=\normalsize
+ \let\lw_iln_fun_set:line_two_words_font_series=\mdseries%
+ \let\lw_iln_fun_set:line_two_words_font_shape=\upshape%
+ \let\lw_iln_fun_set:line_two_words_font_color=\normalcolor%
+ % _added
+ %
+\@ifundefined{lw_iln_fun_set:line_three_words_format}{%
+ \newcommand\lw_iln_fun_set:line_three_words_format{%
+ \lw_iln_fun_set:line_three_words_font_size%
+ \lw_iln_fun_set:line_three_words_font_series%
+ \lw_iln_fun_set:line_three_words_font_shape%
+ \lw_iln_fun_set:line_three_words_font_color}
+ }{\relax}
+ % ^added
+ \let\lw_iln_fun_set:line_three_words_font_size=\normalsize
+ \let\lw_iln_fun_set:line_three_words_font_series=\mdseries%
+ \let\lw_iln_fun_set:line_three_words_font_shape=\upshape%
+ \let\lw_iln_fun_set:line_three_words_font_color=\normalcolor%
+ % _added
+ %
+%
+\@ifundefined{lw_iln_fun_set:line_four_words_format}{%
+ \newcommand\lw_iln_fun_set:line_four_words_format{%
+ \lw_iln_fun_set:line_four_words_font_size%
+ \lw_iln_fun_set:line_four_words_font_series%
+ \lw_iln_fun_set:line_four_words_font_shape%
+ \lw_iln_fun_set:line_four_words_font_color}
+ }{\relax}% ^rem ADDED _rem
+ % ^added
+ \let\lw_iln_fun_set:line_four_words_font_size=\normalsize
+ \let\lw_iln_fun_set:line_four_words_font_series=\mdseries%
+ \let\lw_iln_fun_set:line_four_words_font_shape=\upshape%
+ \let\lw_iln_fun_set:line_four_words_font_color=\normalcolor%
+ % _added
+ %
+% _modified
+% todo f. General Interlinearization Functions Definition
+ \def\lw_iln_fun_get:last_word#1#2#3% #1 = \each, #2 = line box, #3 = word box
+ {\setbox#2=\vbox{\unvbox#2%
+ \global\setbox#3=\lastbox%
+ }%
+ \ifvoid#3\global\setbox#3=\hbox{#1\strut{} }\fi
+ % extra space following \strut in case #1 needs a space
+ }
+
+ \def\lw_iln_check:words_queue_emptyness
+ {\ifdim\ht\lw_iln_var_box:line_one=0pt
+ \ifdim\ht\lw_iln_var_box:line_two=0pt \notdonefalse % tricky space after pt
+ \else\notdonetrue
+ \fi
+ \else\notdonetrue
+ \fi
+ }
+
+ \gdef\lw_iln_fun_get:line_words(#1,#2)#3 #4\\% #1=linebox, #2=\each, #3=1st word, #4=remainder
+ {\setbox#1=\vbox{\hbox{#2{\strut#3} }% adds space
+ \unvbox#1%
+ }%
+ \def\lw_iln_process:words_queue{#4}%
+ \ifx\lw_iln_process:words_queue\empty\let\lw_iln_process:words_queue=\lw_iln_fun_exit:word_extraction
+ \else\let\lw_iln_process:words_queue=\lw_iln_fun_get:line_words
+ \fi
+ \lw_iln_process:words_queue(#1,#2)#4\\%
+ }
+
+ \gdef\lw_iln_fun_exit:word_extraction(#1,#2)\\{}%
+
+% todo g. Processing of 2-lines interlinear texts
+% ^modif_action"Rename \twosent into original twosent"
+ \gdef\lw_iln_fun_align:two_lines_words#1\\ #2\\{% #1 = first line, #2 = second line
+ \lw_iln_fun_get:line_words(\lw_iln_var_box:line_one,\lw_iln_fun_set:line_one_words_format)#1 \\%
+ \lw_iln_fun_get:line_words(\lw_iln_var_box:line_two,\lw_iln_fun_set:line_two_words_format)#2 \\%
+ \loop\lw_iln_fun_get:last_word{\lw_iln_fun_set:line_one_words_format}{\lw_iln_var_box:line_one}{\lw_iln_var_box:word_one}%
+ \lw_iln_fun_get:last_word{\lw_iln_fun_set:line_two_words_format}{\lw_iln_var_box:line_two}{\lw_iln_var_box:word_two}%
+ \global\setbox\lw_iln_var_box:iln_text_lines=\hbox{\unhbox\lw_iln_var_box:iln_text_lines
+ \hskip\lw_iln_glue:inter_word_space
+ \vtop{\box\lw_iln_var_box:word_one % vtop was vbox
+ \nointerlineskip
+ \box\lw_iln_var_box:word_two
+ }%
+ }%
+ \lw_iln_check:words_queue_emptyness
+ \ifnotdone
+ \repeat
+ \exit:group % matches \enter:group in \gloss
+ \lw_iln_fun_exit:words_alignment}
+% _modif
+
+
+% todo h. Processing of 3-lines interlinear texts
+ \gdef\lw_iln_fun_align:three_lines_words#1\\ #2\\ #3\\{% #1 = first line, #2 = second line, #3 = third
+ \lw_iln_fun_get:line_words(\lw_iln_var_box:line_one,\lw_iln_fun_set:line_one_words_format)#1 \\%
+ \lw_iln_fun_get:line_words(\lw_iln_var_box:line_two,\lw_iln_fun_set:line_two_words_format)#2 \\%
+ \lw_iln_fun_get:line_words(\lw_iln_var_box:line_three,\lw_iln_fun_set:line_three_words_format)#3 \\%
+ \loop\lw_iln_fun_get:last_word{\lw_iln_fun_set:line_one_words_format}{\lw_iln_var_box:line_one}{\lw_iln_var_box:word_one}%
+ \lw_iln_fun_get:last_word{\lw_iln_fun_set:line_two_words_format}{\lw_iln_var_box:line_two}{\lw_iln_var_box:word_two}%
+ \lw_iln_fun_get:last_word{\lw_iln_fun_set:line_three_words_format}{\lw_iln_var_box:line_three}{\lw_iln_var_box:word_three}%
+ \global\setbox\lw_iln_var_box:iln_text_lines=\hbox{\unhbox\lw_iln_var_box:iln_text_lines
+ \hskip\lw_iln_glue:inter_word_space
+ \vtop{\box\lw_iln_var_box:word_one % vtop was vbox
+ \nointerlineskip
+ \box\lw_iln_var_box:word_two
+ \nointerlineskip
+ \box\lw_iln_var_box:word_three
+ }%
+ }%
+ \lw_iln_check:words_queue_emptyness
+ \ifnotdone
+ \repeat
+ \exit:group % matches \enter:group in \gloss
+ \lw_iln_fun_exit:words_alignment}
+
+
+% todo i. Processing of 4-lines interlinear texts
+% ^added_action"Four lines interlinear processor, equivalent to an hypothetic \foursent for gloss.tex based interlinearization packages"
+\gdef\lw_iln_fun_align:four_lines_words#1\\ #2\\ #3\\ #4\\{% #1 = first line, #2 = second line, #3 = third
+ \lw_iln_fun_get:line_words(\lw_iln_var_box:line_one,\lw_iln_fun_set:line_one_words_format)#1 \\%
+ \lw_iln_fun_get:line_words(\lw_iln_var_box:line_two,\lw_iln_fun_set:line_two_words_format)#2 \\%
+ \lw_iln_fun_get:line_words(\lw_iln_var_box:line_three,\lw_iln_fun_set:line_three_words_format)#3 \\%
+ \lw_iln_fun_get:line_words(\lw_iln_var_box:line_four,\lw_iln_fun_set:line_four_words_format)#4 \\%
+ \loop\lw_iln_fun_get:last_word{\lw_iln_fun_set:line_one_words_format}{\lw_iln_var_box:line_one}{\lw_iln_var_box:word_one}%
+ \lw_iln_fun_get:last_word{\lw_iln_fun_set:line_two_words_format}{\lw_iln_var_box:line_two}{\lw_iln_var_box:word_two}%
+ \lw_iln_fun_get:last_word{\lw_iln_fun_set:line_three_words_format}{\lw_iln_var_box:line_three}{\lw_iln_var_box:word_three}%
+ \lw_iln_fun_get:last_word{\lw_iln_fun_set:line_four_words_format}{\lw_iln_var_box:line_four}{\lw_iln_var_box:word_four}%
+ \global\setbox\lw_iln_var_box:iln_text_lines=\hbox{\unhbox\lw_iln_var_box:iln_text_lines
+ \hskip\lw_iln_glue:inter_word_space
+ \vtop{\box\lw_iln_var_box:word_one % vtop was vbox
+ \nointerlineskip
+ \box\lw_iln_var_box:word_two
+ \nointerlineskip
+ \box\lw_iln_var_box:word_three
+ \nointerlineskip
+ \box\lw_iln_var_box:word_four
+ }%
+ }%
+ \lw_iln_check:words_queue_emptyness
+ \ifnotdone
+ \repeat
+ \exit:group % matches \enter:group in \gloss
+ \lw_iln_fun_exit:words_alignment}
+
+% _added
+
+
+% todo j. Ending interlinearization
+% ^modif_action="\end{flushleft} removed"
+% ^rem inspired by Alexis Dimitriadis cgloss.sty _rem
+ \def\lw_iln_fun_exit:words_alignment{{\hskip -\lw_iln_glue:inter_word_space}\unhbox\lw_iln_var_box:iln_text_lines}
+% _modif
+% todo * exit:cgloss4e modifications
+
+% todo 1. Other added features
+% todo a. Managing line spacing after interlinearization
+\def\baselinestretch{1}
+\def\lw_iln_fun_insert:interlinear_bottom_skip{\vskip \lw_iln_length:line_spread}%
+
+% todo b. Configuring ex-parts boxes
+
+% ^rem Examples will now be placed within boxes, alongside glosses lines (old genericx.tex's \mb and \gl lines), and hanging bracketed language informations (like LangSci jamboxes) _rem
+% todo i. Setting Lengths
+% ===============
+% Setting Lengths
+% ===============
+%
+
+\newlength{\lw_iln_var_dim:ex_box_width}
+\newlength{\lw_iln_var_dim:ex_box_right_margin}
+%\newlength{\lw_iln_var_dim:ex_box_bottom_sep}
+%\newlength{\lw_iln_var_dim:ex_box_top_sep}
+\newlength{\lw_iln_var_dim:iln_box_width}
+\newlength{\lw_iln_var_dim:iln_box_right_margin}
+%\newlength{\lw_iln_var_dim:iln_box_bottom_sep}
+%\newlength{\lw_iln_var_dim:iln_box_top_sep}
+\newlength{\lw_iln_var_dim:trans_box_width}
+\newlength{\lw_iln_var_dim:trans_box_right_margin}
+\newlength{\lw_iln_var_dim:gramjudg_len}
+\newlength{\lw_iln_var_dim:gramjudg_reserved_space}
+\newlength{\lw_iln_var_dim:langinfo_box_width}
+\newlength{\lw_iln_var_dim:langinfo_box_left_sep}
+\newlength{\lw_iln_var_dim:langinfo_box_right_sep}
+\newlength{\lw_iln_var_dim:langinfo_reserved_space}
+%\newlength{\lw_iln_var_dim:langinfo_left_margin}
+\newlength{\lw_iln_var_dim:extranote_box_width}
+\newlength{\lw_iln_var_dim:extranote_box_left_sep}
+\newlength{\lw_iln_var_dim:extranote_box_right_sep}
+\newlength{\lw_iln_var_dim:extranote_reserved_space}
+%\newlength{\lw_iln_var_dim:extranote_left_margin}
+
+% Initializing lengths
+\setlength{\lw_iln_var_dim:ex_box_width}{\linewidth}
+\setlength{\lw_iln_var_dim:ex_box_right_margin}{0ex}
+\setlength{\lw_iln_var_dim:iln_box_width}{\linewidth}
+\setlength{\lw_iln_var_dim:iln_box_right_margin}{0ex}
+\setlength{\lw_iln_var_dim:trans_box_width}{\linewidth}
+\setlength{\lw_iln_var_dim:trans_box_right_margin}{0ex}
+\addtolength{\lw_iln_var_dim:trans_box_width}{-\lw_iln_var_dim:trans_box_right_margin}
+\setlength{\lw_iln_var_dim:gramjudg_len}{0ex}% ^rem default value _rem
+\setlength{\lw_iln_var_dim:langinfo_box_width}{0ex}% ^rem default value _rem
+\setlength{\lw_iln_var_dim:langinfo_reserved_space}{0ex}
+\setlength{\lw_iln_var_dim:langinfo_box_left_sep}{3.4ex}
+\setlength{\lw_iln_var_dim:langinfo_box_right_sep}{3.4ex}
+\setlength{\lw_iln_var_dim:extranote_box_width}{0ex}% ^rem default value _rem
+\setlength{\lw_iln_var_dim:extranote_reserved_space}{0ex}
+\setlength{\lw_iln_var_dim:extranote_box_left_sep}{0pt}
+\setlength{\lw_iln_var_dim:extranote_box_right_sep}{0pt}
+
+% ===========================
+% Defining Booleans for Boxes
+% Opennings
+% ===========================
+\newif\ifnoglosslines%
+\noglosslinestrue
+% todo ii. Defining Opening CS for Boxes
+% =============================
+% Defining Opening CS for Boxes
+% =============================
+\NewDocumentCommand{\lw_iln_fun_open:ex_box}{}{%
+ % ^rem example box opening code _rem
+ % ^rem \lw_iln_fun_open:ex_box should be called after \label{key} to avoid linebreak _rem
+ % ^rem no_op command _rem
+ }
+\NewDocumentCommand{\lw_iln_fun_open:iln_box}{}{%
+ % ^rem interlinear text box opening code _rem
+ \addtolength{\lw_iln_var_dim:iln_box_width}{-1.15\lw_iln_var_dim:langinfo_reserved_space}%
+ \begin{itemize}[%
+ align=left,%
+ labelwidth=\lw_iln_var_dim:gramjudg_len,%
+ leftmargin=\lw_iln_var_dim:gramjudg_reserved_space]%
+ \item[\lw_iln_fun_print:gramjudg]%
+ \begin{minipage}[t]{\lw_iln_var_dim:iln_box_width}%
+}
+\NewDocumentCommand{\lw_iln_fun_open:langinfo_box}{}{%
+ % ^rem language info box opening code _rem
+ \begin{minipage}[t]{\lw_iln_var_dim:langinfo_box_width}
+}
+\NewDocumentCommand{\lw_iln_fun_open:trans_box}{}{%
+ \setlength{\lw_iln_var_dim:trans_box_width}{\linewidth}
+ \addtolength{\lw_iln_var_dim:trans_box_width}{-1.069\lw_iln_var_dim:extranote_reserved_space}%
+ \trans \begin{minipage}[b]{\lw_iln_var_dim:trans_box_width}
+}
+\NewDocumentCommand{\lw_iln_fun_open:extra_note_box}{}{%
+ \begin{minipage}[t]{\lw_iln_var_dim:extranote_box_width}%
+ \raggedright%
+ }
+
+% todo iii. Defining Closing CS for Boxes
+% =============================
+% Defining Closing CS for Boxes
+% =============================
+\def\lw_iln_fun_format:ex_text{\normalfont}%
+\NewDocumentCommand{\lw_iln_fun_close:ex_box}{}{%
+ % ^rem example box closing code _rem
+ \setlength{\lw_iln_var_dim:trans_box_width}{\linewidth}
+ \addtolength{\lw_iln_var_dim:trans_box_width}{-\lw_iln_var_dim:gramjudg_reserved_space}
+ \addtolength{\lw_iln_var_dim:trans_box_width}{-1.0618\lw_iln_var_dim:extranote_reserved_space}%
+ \IfValueArgTF{\lw_iln_var_stored:gramjudg_text}{}{\relax}%
+ {\begin{minipage}[t]{\lw_iln_var_dim:gramjudg_len}
+ \lw_iln_fun_print:gramjudg%
+ \end{minipage}}
+ \begin{minipage}[t]{\lw_iln_var_dim:trans_box_width}
+ \lw_iln_fun_format:ex_text%
+ \lw_iln_var_stored:free_trans_text\space%
+ \normalfont%
+ \IfValueArgTF{\lw_iln_var_stored:reference_text}{}{\relax}{\lw_iln_fun_print:reference}%
+ \end{minipage}
+ \IfValueArgTF{\lw_iln_var_stored:extranote_text}{}{\relax}%
+ {\vskip -2.6ex
+ \hfill%
+ \begin{minipage}[t]{\lw_iln_var_dim:extranote_box_width}
+ (\lw_iln_var_stored:extranote_text)%
+ \end{minipage}}%
+}
+\NewDocumentCommand{\lw_iln_fun_close:iln_box}{}{%
+ % ^rem interlinear text box closing code _rem
+ \lw_iln_fun_exit:interlinearization
+ \end{minipage}\lw_iln_fun_print:langinfo%
+ \end{itemize}
+}
+\NewDocumentCommand{\lw_iln_fun_close:langinfo_box}{}{%
+ % ^rem language info box closing code _rem
+ \end{minipage}%
+}
+\NewDocumentCommand{\lw_iln_fun_close:extranote_box}{}{%
+ \end{minipage}%
+}
+\NewDocumentCommand{\lw_iln_fun_close:trans_box}{}{%
+ \end{minipage}\hfill%
+}
+
+% todo iv. Defining CS for setting or inserting example parts or metadata
+\def\lw_iln_var_stored:langinfo_text{}
+% the * and : versions print the language name as a title.
+% If \lw_iln_fun_set:langinfo if followed by an ex_box, use the * version
+% If there is some text -- e.g. specifying the context for the data -- before the ex_box, use the : version
+% To print the language information as a margin note, use the "bear" version
+\NewDocumentCommand{\langinfo}{s t/ m }{%
+ \IfBooleanTF{#1}%
+ {{\normalfont #3}}%
+ {%
+ \IfBooleanTF{#2}%
+ {{\normalfont #3}\\}%
+ {\def\lw_iln_var_stored:langinfo_text{#3}
+ \settowidth{\lw_iln_var_dim:langinfo_box_width}{#3}
+ \setlength{\lw_iln_var_dim:langinfo_reserved_space}{\lw_iln_var_dim:langinfo_box_width}
+ \addtolength{\lw_iln_var_dim:langinfo_reserved_space}{\lw_iln_var_dim:langinfo_box_left_sep}
+ \addtolength{\lw_iln_var_dim:langinfo_reserved_space}{\lw_iln_var_dim:langinfo_box_right_sep}
+ }%
+ }%
+}%
+
+\NewDocumentCommand{\lw_iln_fun_set:langinfo}{m}{\langinfo{#1}}
+\NewDocumentCommand{\lw_iln_fun_make:langinfo_box}{}{%
+ \ifthenelse{\equal{\lw_iln_var_stored:langinfo_text}{}}{}{%
+ \marginnote{\hskip -\lw_iln_var_dim:langinfo_reserved_space\lw_iln_fun_open:langinfo_box%
+ {\normalfont(\lw_iln_var_stored:langinfo_text)}%
+ \lw_iln_fun_close:langinfo_box}[0cm]%
+ }%
+}
+\NewCommandCopy{\lw_iln_fun_print:langinfo}{\lw_iln_fun_make:langinfo_box}
+
+\def\lw_iln_var_stored:gramjudg_text{}
+\NewDocumentCommand{\lw_iln_fun_set:gramjudg}{m}{%
+ \def\lw_iln_var_stored:gramjudg_text{#1}%
+ \settowidth{\lw_iln_var_dim:gramjudg_len}{#1}%
+ \setlength{\lw_iln_var_dim:gramjudg_reserved_space}{\lw_iln_var_dim:gramjudg_len}%
+ \addtolength{\lw_iln_var_dim:gramjudg_reserved_space}{1ex}%
+}
+\NewDocumentCommand{\lw_iln_fun_print:gramjudg}{}{%
+ \ifthenelse{\equal{\lw_iln_var_stored:gramjudg_text}{}}{}{%
+ {\normalfont\lw_iln_var_stored:gramjudg_text}%
+ }%
+}
+\def\lw_iln_var_stored:extranote_text{}
+\def\lw_iln_var_token:extranote_left_punct{{(}}%
+\def\lw_iln_fun_format:extranote{\normalfont}
+\def\lw_iln_var_token:extranote_right_punct{{)}}%
+\NewDocumentCommand{\lw_iln_fun_add:extranote}{m}{%
+ \def\lw_iln_var_stored:extranote_text{#1}%
+ \settowidth{\lw_iln_var_dim:extranote_box_width}{#1}
+ \ifdimgreater{\lw_iln_var_dim:extranote_box_width}{113.2pt}%
+ {\setlength{\lw_iln_var_dim:extranote_box_width}{113.2pt}}%
+ {\settowidth{\lw_iln_var_dim:extranote_box_width}{#1}}%
+ \setlength{\lw_iln_var_dim:extranote_reserved_space}{\lw_iln_var_dim:extranote_box_width}%
+ \addtolength{\lw_iln_var_dim:extranote_reserved_space}{\lw_iln_var_dim:extranote_box_left_sep}
+ \addtolength{\lw_iln_var_dim:extranote_reserved_space}{\lw_iln_var_dim:extranote_box_right_sep}%
+}
+\NewDocumentCommand{\lw_iln_fun_make:extranote_box}{}{%
+ \IfValueArgTF{\lw_iln_var_stored:extranote_text}{}%
+ {}%
+ {\lw_iln_fun_open:extra_note_box%
+ \lw_iln_var_token:extranote_left_punct%
+ \lw_iln_fun_format:extranote%
+ \lw_iln_var_stored:extranote_text%
+ \normalfont%
+ \lw_iln_var_token:extranote_right_punct%
+ \lw_iln_fun_close:extranote_box}
+}
+
+\def\lw_iln_var_stored:free_trans_text{}
+\NewDocumentCommand{\lw_iln_fun_set:free_translation}{m}{%
+ \def\lw_iln_var_stored:free_trans_text{#1}
+}
+\def\lw_iln_var_stored:literal_trans_text{}
+\NewDocumentCommand{\lw_iln_fun_set:literal_trans_text}{m}{%
+ \def\lw_iln_var_stored:literal_trans_text{#1}
+}
+\def\lw_iln_var_stored:reference_text{}
+\NewDocumentCommand{\lw_iln_fun_set:reference}{m}{%
+ \def\lw_iln_var_stored:reference_text{#1}
+}
+\NewDocumentCommand{\lw_iln_fun_print:free_trans}{}{%
+ \IfValueArgTF{\lw_iln_var_stored:free_trans_text}{}{}%
+ {`\lw_iln_var_stored:free_trans_text'}}
+\NewDocumentCommand{\lw_iln_fun_print:literal_trans}{}{%
+ \IfValueArgTF{\lw_iln_var_stored:literal_trans_text}{}{}%
+ {(Lit.: `\lw_iln_var_stored:literal_trans_text')}}
+\NewDocumentCommand{\lw_iln_fun_print:reference}{}{%
+ \IfValueArgTF{\lw_iln_var_stored:reference_text}{}{}%
+ {{[}\lw_iln_var_stored:reference_text{]}}}
+%
+\NewDocumentCommand{\lw_iln_fun_make:trans_box}{}{%
+ \IfValueArgTF{\lw_iln_var_stored:extranote_text}{}%
+ {\lw_iln_fun_open:trans_box%
+ \lw_iln_fun_print:free_trans\space %
+ \lw_iln_fun_print:literal_trans\space %
+ \lw_iln_fun_print:reference\space %
+ \lw_iln_fun_close:trans_box}%
+ {\lw_iln_fun_open:trans_box%
+ \raggedright
+ \lw_iln_fun_print:free_trans\space %
+ \lw_iln_fun_print:literal_trans\space %
+ \lw_iln_fun_print:reference\space %
+ \lw_iln_fun_close:trans_box}
+}
+
+\def\lw_iln_fun_format:context_label{\normalfont}
+\def\lw_iln_var_name:context{Context:}
+\def\lw_iln_fun_insert:context#1{%
+ \IfValueArgTF{#1}{}{}%
+ {\lw_iln_fun_format:context_label\lw_iln_var_name:context\normalfont~#1\\[-1.3\baselineskip]}
+}
+
+\def\lw_iln_fun_reinitialize:markers_value{%
+ \def\lw_iln_var_stored:extranote_text{}
+ \def\lw_iln_var_stored:free_trans_text{}
+ \def\lw_iln_var_stored:gramjudg_text{}
+ \def\lw_iln_var_stored:langinfo_text{}
+ \def\lw_iln_var_stored:literal_trans_text{}
+ \def\lw_iln_var_stored:reference_text{}
+}
+
+% todo v. Defining long (internal commands)
+\def\lw_iln_var_num:interlinear_lines{2}
+
+\def\lw_iln_tag:line_one_marker{% LEV version
+ \IfValueArgTF{\lw_iln_var_num:interlinear_lines}{2}%
+ {\lw_iln_fun_open:iln_box
+ \lw_iln_fun_enter:two_lines_interlinearization}{}%
+ \IfValueArgTF{\lw_iln_var_num:interlinear_lines}{3}%
+ {\lw_iln_fun_open:iln_box
+ \lw_iln_fun_enter:three_lines_interlinearization}{}%
+ \IfValueArgTF{\lw_iln_var_num:interlinear_lines}{4}%
+ {\lw_iln_fun_open:iln_box
+ \lw_iln_fun_enter:four_lines_interlinearization}{}%
+}%
+
+\let\lw_iln_tag:Text_marker\lw_iln_tag:line_one_marker% ^rem is typeset in italics by default. The starred version introduces a two-line interlinear gloss text. ^caution Do not use it together with \lw_iln_MorphBreak_marker : they mean the same thing. So you will get error messages. _caution _rem
+%
+\def\lw_iln_tag:Morpheme_Break_marker% ^rem typeset in roman -- by default -- (intended to host API translations). Introduces a 2-line interlinear gloss text. _rem
+{\IfValueArgTF{\lw_iln_var_num:interlinear_lines}{2}%
+ {\lw_iln_tag:line_one_marker}%
+ {\relax}%
+}%
+
+\def\lw_iln_tag:Gloss_marker% ^rem \ge is already defined in LaTeX. \lw_iln_tag:Gloss_marker introduces a two-line interlinear gloss text. _rem
+{\relax}%
+%
+\def\lw_iln_tag:Part_of_speech_marker{\relax}
+
+% LEV Syntax sensitive CS
+\def\lw_iln_tag:Free_translation_marker#1\\%
+ {\IfValueArgTF{\lw_iln_var_num:interlinear_lines}{0}
+ {\lw_iln_fun_set:free_translation{#1}}
+ {\lw_iln_fun_close:iln_box%
+ \lw_iln_fun_set:free_translation{#1}}}% ^rem CAUTION: The Free Translation marker should be present even if there is actually no free translation provided. _rem
+%
+\def\lw_iln_tag:Literal_translation_marker#1\\%
+{\lw_iln_fun_set:literal_trans_text{#1}}
+\def\lw_iln_tag:Reference_marker#1\\%
+{\lw_iln_fun_set:reference{#1}}
+\def\lw_iln_tag:Language_information_marker#1\\%
+{\lw_iln_fun_set:langinfo{#1}}
+\def\lw_iln_tag:Grammaticality_Judgment_marker#1\\%
+{\lw_iln_fun_set:gramjudg{#1}}
+\newlength{\lw_iln_var_dim:context_voffset}
+\setlength{\lw_iln_var_dim:context_voffset}{-1em}
+\def\lw_iln_tag:Context_marker#1\\%
+{\lw_iln_fun_insert:context{#1}\\[\lw_iln_var_dim:context_voffset]}
+\def\lw_iln_tag:Extra_note_marker#1\\%
+ {\lw_iln_fun_add:extranote{#1}}
+
+
+% _cs-definitions
+
+% todo vi. Low-level commands
+
+% ^section_title="User Commands and Envs to Typeset Interlinear Gloss Texts"
+% DEFINE: interlinear environment
+% DEFINE: Text tagging cs
+% The cs are named after the standard tags used in Linguist's Field's Toolbox by SIL (see Interlinear macro in ToolboxInterlinearMacroText.docm)
+% ^important Please use the short versions (in brackets). The long versions are internal commands to be use for later eventual modifications _important
+% \lw_iln_tag:Text_marker (\tx) ^rem is typeset in italic either in tri-gloss or in di-gloss envs. In di-gloss env, \tx and \mb mean the same thing. _rem
+%\lw_iln_tag:MorphBreak_marker (\mb) ^rem typeset in roman -- by default -- (intended to host API translations) _rem
+%\lw_iln_tag:Gloss_marker (\gl) % \ge is already defined in LaTeX
+%\lw_iln_tag:FreeTranslation_marker (\ft)
+% \lw_iln_tag:Reference_marker (\rf) ^rem \ref is a primitive _rem
+% --------------------------------
+% Markers not present in Toolbox defaults
+% --------------------------------
+% \lw_iln_tag:Language_information_marker (\li)
+% \lw_iln_tag:Grammaticality_Judgment_marker (\gj)
+% \lw_iln_tag:Context_marker (\ct)
+%
+% \lw_iln_tag:Literal_translation_marker (\lt)
+% \lw_iln_tag:Extra_note_marker (\nt)
+%
+% ^cs-definitions
+%\let\tx\lw_iln_tag:Text_marker% ^rem is typeset in italic either in tri-gloss or in di-gloss envs. In di-gloss env, \tx and \mb mean the same thing. _rem
+\let\mb\lw_iln_tag:Morpheme_Break_marker% ^rem typeset in roman -- by default -- (intended to host API translations) _rem
+\let\gl\lw_iln_tag:Gloss_marker% ^rem \ge is already defined in LaTeX _rem
+%\let\ft\lw_iln_tag:Free_translation_marker%
+\let\ps\lw_iln_tag:Part_of_speech_marker
+%
+\NewCommandCopy{\li}%
+{\lw_iln_tag:Language_information_marker}%
+\NewCommandCopy{\rf}%
+{\lw_iln_tag:Reference_marker}%
+\NewCommandCopy{\gj}%
+{\lw_iln_tag:Grammaticality_Judgment_marker}
+\NewCommandCopy{\ct}%
+{\lw_iln_tag:Context_marker}
+\NewCommandCopy{\lt}%
+{\lw_iln_tag:Literal_translation_marker}%
+\NewCommandCopy{\nt}%
+ {\lw_iln_tag:Extra_note_marker}
+
+% todo c. Defining Interlinear Env. Options
+% ----------------------
+% | Describing options |
+% ----------------------
+
+% # Options:
+
+% - argendchar: (not available for the moment) return, par, lineend
+% return : takes the current line as argument, do not put anything else (e.g. {}, or \\)
+% lineend : idem
+% par : argument is ended by "\\" like e.g. in cgloss4e
+% (NOTE: this option scopes over all the markers, not only interlinear text markers \tx, \mb, \gl, \ps)
+
+% - linesnumber: full, 2, 3
+% full : 4-lines (By default it is disabled in the main text)
+% 2 : Only one gloss line is printed (\gl); \mb and \tx are then treated are incompatible to each other so
+% that only of them should be used. If this option is used, you should specifiy the first-line of the
+% interlinear text via first-line option
+% 3 : only \ps is not printedand all the other lines \tx, \mb and \gl should be non-empty
+
+% * Setting markers *
+
+% Sets the marker used for the different parts. Actually tells lingwrit-interlinear to define the corresponding command so as to fit the definition of the
+% default marker (e.g. text_marker=\ot tells lingwrit-interlinear to add the following: \let\ot\tx)
+% - textmarker=
+% - morphbreakmarker=
+% - glossmarker= (You shouldn't set it to \ge. But if this happens, note that lingwrit-interlinear will redefine \ge to equal to \gl, define a new
+% command \gteq to replace \ge and issue a warning message)
+% - partofspeechmarker=
+% - freetranslationmarker=
+% - literaltranslationmarker=
+% - grammaticalityjudgmentmarker=
+% - contextmarker=
+% - extranotemarker=
+% - languageinfomarker=
+% - referencemarker=
+
+% * Format specifications *
+
+% (May include font size, shape, series and color. If color command is used (e.g. \color{blue}), then make sure to have xcolor loaded)
+% - lineoneformat={}
+% - linetwoformat={}
+% - linethreeformat={}
+% - linefourformat={}
+% - extranoteformat={}
+% - contextnameformat={}
+
+% * Other specifications *
+
+% - contextname={} ^rem The displayed label for context. default value is "Context:" _rem
+% - extranoteleftpunct= ^rem the punctuation preceding the extra note. Default value: ( _rem
+% - extranoterightpunct= ^rem the punctuation following the extra note. Default value: ) _rem
+
+% todo i. Declaring Options
+\NewCommandCopy{\lw_iln_var_opt:textmarker}{\lw_iln_tag:Text_marker}
+\NewCommandCopy{\lw_iln_var_opt:morphbreakmarker}{\lw_iln_tag:Morpheme_Break_marker}
+\NewCommandCopy{\lw_iln_var_opt:glossmarker}{\lw_iln_tag:Gloss_marker}
+\NewCommandCopy{\lw_iln_var_opt:partofspeechmarker}{\lw_iln_tag:Part_of_speech_marker}
+\NewCommandCopy{\lw_iln_var_opt:freetranslationmarker}{\lw_iln_tag:Free_translation_marker}
+\NewCommandCopy{\lw_iln_var_opt:literaltranslationmarker}{\lw_iln_tag:Literal_translation_marker}
+\NewCommandCopy{\lw_iln_var_opt:extranotemarker}{\lw_iln_tag:Extra_note_marker}
+\NewCommandCopy{\lw_iln_var_opt:languageinfomarker}{\lw_iln_tag:Language_information_marker}
+\NewCommandCopy{\lw_iln_var_opt:gramjudgmarker}{\lw_iln_tag:Grammaticality_Judgment_marker}
+\NewCommandCopy{\lw_iln_var_opt:referencemarker}{\lw_iln_tag:Reference_marker}
+\NewCommandCopy{\lw_iln_var_opt:contextmarker}{\lw_iln_tag:Context_marker}
+
+\NewDocumentCommand{\lw_iln_var_opt:languageinfopos}{m}{%
+ \IfValueArgTF{#1}{head}{\RenewDocumentCommand{\lw_iln_fun_set:langinfo}{m}{\langinfo/{##1}}}{}
+ \IfValueArgTF{#1}{margin}{\RenewDocumentCommand{\lw_iln_fun_set:langinfo}{m}{\langinfo{##1}}}{}
+}
+
+\NewDocumentCommand{\lw_iln_var_opt:nointerlinear}{m}{%
+ \IfValueArgTF{#1}{true}%
+ {\def\lw_iln_var_num:interlinear_lines{0}}%
+ {\IfValueArgTF{#1}{false}%
+ {\relax}%
+ {\PackageWarning{interlinear}{nointerlinear option possible values: true, false}}%
+ }
+}
+\NewDocumentCommand{\lw_iln_var_opt:contextvoffset}{m}{\setlength{\lw_iln_var_dim:context_voffset}{#1}}
+
+% todo ii. Defining Default values
+
+%\def\lw_iln_var_opt:endchar{par}% possible values: par, lineend, return
+\def\lw_iln_var_opt:linesnumber{2}% possible values: 2, 3, full
+\def\lw_iln_var_num:interlinear_lines{\lw_iln_var_opt:linesnumber}
+% Setting markers
+\let\li\lw_iln_var_opt:languageinfomarker
+\let\rf\lw_iln_var_opt:referencemarker
+\let\gj\lw_iln_var_opt:gramjudgmarker
+\let\tx\lw_iln_var_opt:textmarker
+\let\mb\lw_iln_var_opt:morphbreakmarker
+\let\gl\lw_iln_var_opt:glossmarker
+\let\ps\lw_iln_var_opt:partofspeechmarker
+\let\ft\lw_iln_var_opt:freetranslationmarker
+\let\lt\lw_iln_var_opt:literaltranslationmarker
+\let\nt\lw_iln_var_opt:extranotemarker
+\def\lw_iln_var_opt:extranoteleftpunct#1{\def\lw_iln_var_token:extranote_left_punct{#1}}
+\def\lw_iln_var_opt:extranoterightpunct#1{\def\lw_iln_var_token:extranote_right_punct{#1}}
+
+% Setting formats (only available for interlinear/gloss lines, context name and extra notes)
+\def\lw_iln_var_opt:lineoneformat#1{\renewcommand{\lw_iln_fun_set:line_one_words_format}{#1}}
+\def\lw_iln_var_opt:linetwoformat#1{\renewcommand{\lw_iln_fun_set:line_two_words_format}{#1}}
+\def\lw_iln_var_opt:linethreeformat#1{\renewcommand{\lw_iln_fun_set:line_three_words_format}{#1}}
+\def\lw_iln_var_opt:linefourformat#1{\renewcommand{\lw_iln_fun_set:line_four_words_format}{#1}}
+\def\lw_iln_var_opt:exformat#1{\renewcommand{\lw_iln_fun_format:ex_text}{#1}}
+\def\lw_iln_var_opt:extranoteformat#1{\def\lw_iln_fun_format:extranote{#1}}
+\def\lw_iln_var_opt:contextnameformat#1{\def\lw_iln_fun_format:context_label{#1}}
+% Context label/name
+\def\lw_iln_var_opt:contextname#1{\def\lw_iln_var_name:context{#1}}
+
+% Defining CS for resetting default options (to be called at the begining of interlinear env)% ^rem the \setinterlinearstyle is meant to set globally the options for interlinear env. So don't use optional argument of interlinear env anymore since it will overwrite the values set up with this commands and the new values be considered the default ones. _rem
+\def\lw_iln_fun_reinitialize:interlinear_options{%
+ %\def\lw_iln_var_opt:endchar{par}% possible values: par, lineend, return
+ \def\lw_iln_var_opt:linesnumber{2}% possible values: 2, 3, full
+ % Setting markers
+ \let\li\lw_iln_var_opt:languageinfomarker%
+ \let\rf\lw_iln_var_opt:referencemarker%
+ \let\gj\lw_iln_var_opt:gramjudgmarker%
+ \let\tx\lw_iln_var_opt:textmarker
+ \let\mb\lw_iln_var_opt:morphbreakmarker%
+ \let\gl\lw_iln_var_opt:glossmarker%
+ \let\ps\lw_iln_var_opt:partofspeechmarker%
+ \let\ft\lw_iln_var_opt:freetranslationmarker%
+ \let\lt\lw_iln_var_opt:literaltranslationmarker%
+ \let\nt\lw_iln_var_opt:extranotemarker%
+ % Setting formats (only available for interlinear/gloss lines, context name and extra notes)
+ \lw_iln_var_opt:lineoneformat{\normalfont}%
+ \lw_iln_var_opt:linetwoformat{\normalfont}%
+ \lw_iln_var_opt:linethreeformat{\normalfont}%
+ \lw_iln_var_opt:linefourformat{\normalfont}%
+ \lw_iln_var_opt:exformat{\normalfont}
+ \lw_iln_var_opt:extranoteformat{\normalfont}%
+ \lw_iln_var_opt:contextnameformat{\normalfont}%
+ % Context label/name
+ \lw_iln_var_opt:contextname{Context:}%
+ \lw_iln_var_opt:extranoteleftpunct{{(}}%
+ \lw_iln_var_opt:extranoterightpunct{{)}}%
+ \lw_iln_var_opt:languageinfopos{margin}%
+ \lw_iln_var_opt:nointerlinear{false}%
+ \lw_iln_var_opt:contextvoffset{-1em}
+}
+
+% todo iii. Setting Options
+
+% Setting Ending Character for arguments (not yet available)
+%\define@key{interlinear}{endchar}{%
+ % ^action_name="Setting the value"
+% \def\lw_iln_var_opt:endchar{#1}
+ % _action
+ % ^action_name="Processing the option"
+ %
+ % _action
+%}
+
+% Setting the numbers of interlinear/gloss lines
+\define@key{interlinear}{linesnumber}{%
+ % ^action_name="Setting the value"
+ \def\lw_iln_var_opt:linesnumber{#1}
+ % _action
+}
+\define@key{interlinear}{nointerlinear}{%
+ % ^action_name="Setting the value"
+ \lw_iln_var_opt:nointerlinear{#1}
+ % _action
+}
+
+% Setting the markers
+\define@key{interlinear}{textmarker}{%
+ \NewCommandCopy{#1}{\lw_iln_var_opt:textmarker}}
+\define@key{interlinear}{morphbreakmarker}{%
+ \NewCommandCopy{#1}{\lw_iln_var_opt:morphbreakmarker}}
+\define@key{interlinear}{glossmarker}{%
+ \NewCommandCopy{#1}{\lw_iln_var_opt:glossmarker}}
+
+\define@key{interlinear}{partofspeechmarker}{%
+ \NewCommandCopy{#1}{\lw_iln_var_opt:partofspeechmarker}}
+
+\define@key{interlinear}{freetranslationmarker}{%
+ \NewCommandCopy{#1}{\lw_iln_var_opt:freetranslationmarker}}
+
+\define@key{interlinear}{literaltranslationmarker}{%
+ \NewCommandCopy{#1}{\lw_iln_var_opt:literaltranslationmarker}}
+
+\define@key{interlinear}{extranotemarker}{%
+ \NewCommandCopy{#1}{\lw_iln_var_opt:extranotemarker}}
+
+\define@key{interlinear}{languageinfomarker}{%
+ \NewCommandCopy{#1}{\lw_iln_var_opt:languageinfomarker}}
+
+\define@key{interlinear}{gramjudgmarker}{%
+ \NewCommandCopy{#1}{\lw_iln_var_opt:gramjudgmarker}}
+
+\define@key{interlinear}{referencemarker}{%
+ \NewCommandCopy{#1}{\lw_iln_var_opt:referencemarker}}
+
+\define@key{interlinear}{contextmarker}{%
+ \NewCommandCopy{#1}{\lw_iln_var_opt:contextmarker}}
+
+
+% Setting formats
+\define@key{interlinear}{lineoneformat}{%
+ % ^action_name="Setting the value"
+ \lw_iln_var_opt:lineoneformat{#1}
+ % _action
+}
+\define@key{interlinear}{linetwoformat}{%
+ % ^action_name="Setting the value"
+ \lw_iln_var_opt:linetwoformat{#1}
+ % _action
+}
+\define@key{interlinear}{linethreeformat}{%
+ % ^action_name="Setting the value"
+ \lw_iln_var_opt:linethreeformat{#1}
+ % _action
+}
+\define@key{interlinear}{linefourformat}{%
+ % ^action_name="Setting the value"
+ \lw_iln_var_opt:linefourformat{#1}
+ % _action
+}
+\define@key{interlinear}{exformat}{%
+ % ^action_name="Setting the value"
+ \lw_iln_var_opt:exformat{#1}
+ % _action
+}
+\define@key{interlinear}{extranoteformat}{%
+ % ^action_name="Setting the value"
+ \lw_iln_var_opt:extranoteformat{#1}
+ % _action
+}
+\define@key{interlinear}{contextnameformat}{%
+ % ^action_name="Setting the value"
+ \lw_iln_var_opt:contextnameformat{#1}
+ % _action
+}
+
+% Other specifications
+\define@key{interlinear}{contextname}{%
+ % ^action_name="Setting the value"
+ \lw_iln_var_opt:contextname{#1}
+ % _action
+}
+\define@key{interlinear}{contextvoffset}{%
+ % ^action_name="Setting the value"
+ \lw_iln_var_opt:contextvoffset{#1}
+ % _action
+}
+\define@key{interlinear}{extranoteleftpunct}{%
+ % ^action_name="Setting the value"
+ \lw_iln_var_opt:extranoteleftpunct{#1}
+ % _action
+}
+\define@key{interlinear}{extranoterightpunct}{%
+ % ^action_name="Setting the value"
+ \lw_iln_var_opt:extranoterightpunct{#1}
+ % _action
+}
+\define@key{interlinear}{languageinfopos}{%
+ % ^action_name="Setting the value"
+ \lw_iln_var_opt:languageinfopos{#1}
+ % _action
+}
+
+\newcommand{\interlinearstyle}[1]{%
+ \setkeys{interlinear}{#1}%
+ \lw_fun_helper:clear{\lw_iln_fun_reinitialize:interlinear_options}
+}
+\def\DeclareInterlinearStyle#1#2{%
+ \expandafter\def\csname lw_iln_var_sty:#1\endcsname{\interlinearstyle{#2}}}
+\def\UseInterlinearStyle#1{%
+ \expandafter\csname lw_iln_var_sty:#1\endcsname}
+\DeclareInterlinearStyle{default}{%
+ linesnumber=2,%
+ lineoneformat=\upshape,%
+ linetwoformat=\normalfont,%
+ linethreeformat=\normalfont,%
+ linefourformat=\normalfont,%
+ contextnameformat=\normalfont,%
+ extranoteformat=\normalfont,%
+ contextname={Context:},%
+ extranoteleftpunct={(},%
+ extranoterightpunct={)}%
+}
+\DeclareInterlinearStyle{nointerlinear}{%
+ nointerlinear=true,%
+ languageinfopos=head,%
+ freetranslationmarker=\ot,%
+ contextvoffset=.5em%
+}
+\DeclareInterlinearStyle{gsr}{%
+ linesnumber=2,%
+ lineoneformat=\itshape,%
+ linetwoformat=\normalfont,%
+ linethreeformat=\normalfont%
+}
+\DeclareInterlinearStyle{gsrnointerlinear}{%
+ nointerlinear=true,%
+ exformat=\itshape,%
+ languageinfopos=head,%
+ freetranslationmarker=\ot,%
+ contextvoffset=.5em%
+}
+
+\UseInterlinearStyle{gsr}% ^rem setting the default style to fit the GSR _rem
+
+\define@key{interlinear}{style}{%
+ % ^action_name="Setting the value"
+ \UseInterlinearStyle{#1}
+ % _action
+}
+
+
+% todo d. Defining Interlinear Env.
+\NewDocumentCommand{\lw_iln_fun_enter:interlinear}{}{\relax}% ^rem no_op command _rem
+\NewDocumentCommand{\lw_iln_fun_exit:interlinear}{}{%
+ \IfValueArgTF{\lw_iln_var_num:interlinear_lines}{0}%
+ {\lw_iln_fun_close:ex_box}%
+ {\lw_iln_fun_make:trans_box%
+ \lw_iln_fun_make:extranote_box%
+ \lw_iln_fun_reinitialize:markers_value}%
+ }
+
+\NewDocumentEnvironment{interlinear}{O{}}%
+ {% ^rem Beginning of the internlinear env _rem
+ \lw_iln_fun_enter:interlinear%
+ \lw_iln_fun_reinitialize:interlinear_options%
+ \setkeys{interlinear}{#1}
+ }%
+ {% ^rem End of the interlinear env _rem
+ \lw_iln_fun_exit:interlinear%
+ }
+
+\makeatother%
+
+% ^action_name="Disabling LingWrit Syntax"
+\switchlwsyntaxoff
+% _action
+% ^action_name="Ending the code"
+\endinput%
+% _action
+
+% _code
+
+% ^_*
+
+% _package
diff --git a/Master/texmf-dist/tex/latex/iran-bibtex/iran-bibtex.sty b/Master/texmf-dist/tex/latex/iran-bibtex/iran-bibtex.sty
index 1cc11bf54d3..9ee5b3525d7 100644
--- a/Master/texmf-dist/tex/latex/iran-bibtex/iran-bibtex.sty
+++ b/Master/texmf-dist/tex/latex/iran-bibtex/iran-bibtex.sty
@@ -1,5 +1,5 @@
%%
-%% This is file “iran-bibtex.sty”, v0.4.1 (2024-05-06)
+%% This is file “iran-bibtex.sty”, v0.4.3 (2024-08-04)
%%
%% __________________________________________________
%% Copyright (c) 2023-2024 Farshad Rasuli
@@ -26,10 +26,10 @@
% === Package structure: Identification
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{iran-bibtex}
- [2024-05-06 v0.4.1 Iran Manual of Style (1st edn, 2016)]
+ [2024-08-04 v0.4.3 Iran Manual of Style (1st edn, 2016)]
-\def\iranbibtex@version{0.4.1}
-\def\iranbibtexdate{2024-05-06} % May 6th, 2024
+\def\iranbibtex@version{0.4.3}
+\def\iranbibtexdate{2024-08-04} % August 4th, 2024
\def\iranbibtexfirstrelease{2023-12-12} % December 12th, 2023
\edef\@iranbibtex@info{%
***************************************************************%
@@ -168,9 +168,9 @@
%% provide command for bibliography environment
\newcommand{\enquote}[1]{``#1''}
\newcommand{\faquote}[1]{«#1»}
-\providecommand{\url}[1]{{\tt #1}}
-\providecommand{\doi}[1]{\url{#1}}
-\providecommand{\eprint}[2][]{\url{#2}}
+\providecommand{\url}[1]{\@ifpackageloaded{hyperref}{\href{#1}{#1}}{\tt #1}}
+\providecommand{\doi}[1]{\@ifpackageloaded{hyperref}{\href{https://doi.org/#1}{#1}}{\url{#1}}}
+\providecommand{\eprint}[2][]{\@ifpackageloaded{hyperref}{\href{#2}{#2}}{\url{#2}}}
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV003.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV003.pdf
new file mode 100644
index 00000000000..c3671853cca
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV003.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV004.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV004.pdf
new file mode 100644
index 00000000000..426766af28e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV004.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV009.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV009.pdf
new file mode 100644
index 00000000000..4371233c53b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV009.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV010.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV010.pdf
new file mode 100644
index 00000000000..4f7c7b0c4e3
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV010.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV011.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV011.pdf
new file mode 100644
index 00000000000..b53137946cf
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV011.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV012.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV012.pdf
new file mode 100644
index 00000000000..ee3d79d2fe1
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV012.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV013.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV013.pdf
new file mode 100644
index 00000000000..54a7ef44db2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV013.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV027.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV027.pdf
new file mode 100644
index 00000000000..c2c5f6e332c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV027.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV028.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV028.pdf
new file mode 100644
index 00000000000..005109c5c8b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV028.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV029.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV029.pdf
new file mode 100644
index 00000000000..070e7a2743b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV029.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV064.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV064.pdf
new file mode 100644
index 00000000000..9ef30ac6e6f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV064.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV067.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV067.pdf
new file mode 100644
index 00000000000..d0e63401149
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_CV067.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E001.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E001.pdf
new file mode 100644
index 00000000000..abc60c2691e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E001.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E002.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E002.pdf
new file mode 100644
index 00000000000..fbe80ce3f86
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E002.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E003.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E003.pdf
new file mode 100644
index 00000000000..4863d6ec073
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E003.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E004.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E004.pdf
new file mode 100644
index 00000000000..3663147e2eb
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E004.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E007.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E007.pdf
new file mode 100644
index 00000000000..cd21e70dc46
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E007.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E008.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E008.pdf
new file mode 100644
index 00000000000..9d651b8d9ea
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E008.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E009.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E009.pdf
new file mode 100644
index 00000000000..93822c975eb
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E009.pdf
@@ -0,0 +1,69 @@
+%PDF-1.5
+%
+4 0 obj
+<< /Length 5 0 R
+ /Filter /FlateDecode
+>>
+stream
+x}Tn1 +eD
+XPl}HrwHur(r8(`b~'^ϏG/.<#ᕲ=cf5{NZgP9W▼$A *;M6Q@ʪUeIp fAqr729݂JPQ%Y0,P!A˻.Ҽb0% * BCf%T#Od5Bve̲-GMdىy%zbq++ rm~|)Ĩ"ՕutegF\Όsk\}s0{1ካH0Q9uA.:[ѳWYo=$p@t*Y[f8ߴcgxHG̔8Mm[-(O'$.ɳ].㍛=!+Z }o5Oԡ\A[@ zT.zF%5e VK1?R܂uJxw17·.tޑ`Ɔ,RR:ݻ?J
+endstream
+endobj
+5 0 obj
+ 550
+endobj
+3 0 obj
+<<
+ /ExtGState <<
+ /a0 << /CA 1 /ca 1 >>
+ >>
+>>
+endobj
+2 0 obj
+<< /Type /Page % 1
+ /Parent 1 0 R
+ /MediaBox [ 0 0 300 300 ]
+ /Contents 4 0 R
+ /Group <<
+ /Type /Group
+ /S /Transparency
+ /I true
+ /CS /DeviceRGB
+ >>
+ /Resources 3 0 R
+>>
+endobj
+1 0 obj
+<< /Type /Pages
+ /Kids [ 2 0 R ]
+ /Count 1
+>>
+endobj
+6 0 obj
+<< /Producer (cairo 1.16.0 (https://cairographics.org))
+ /CreationDate (D:20231109180750+01'00)
+>>
+endobj
+7 0 obj
+<< /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+xref
+0 8
+0000000000 65535 f
+0000000954 00000 n
+0000000736 00000 n
+0000000664 00000 n
+0000000015 00000 n
+0000000642 00000 n
+0000001019 00000 n
+0000001135 00000 n
+trailer
+<< /Size 8
+ /Root 7 0 R
+ /Info 6 0 R
+>>
+startxref
+1187
+%%EOF
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E010.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E010.pdf
new file mode 100644
index 00000000000..ef0b21d5886
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E010.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E011.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E011.pdf
new file mode 100644
index 00000000000..127667563d4
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E011.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E012.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E012.pdf
new file mode 100644
index 00000000000..98cb2bd8b4d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E012.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E013.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E013.pdf
new file mode 100644
index 00000000000..0d89ed3065c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E013.pdf
@@ -0,0 +1,71 @@
+%PDF-1.5
+%
+4 0 obj
+<< /Length 5 0 R
+ /Filter /FlateDecode
+>>
+stream
+xuT[nU1 *Ll'q hh?K:VVc 㗦+p{BZ *?C07*+m~ ƽR9#ߣJ-M%@lC jTJp[`N4;1%(jN0L<
+RJ)FXQq:8ud^3lwD@Zdz,T0ooY cK}KTI[kAf1mf@rI4Q7}I|Zf,|ƴ{Lbbh[x<ggLǘVvh!,7х!bESxE lbvpaFUx1Y>|-{z hõjȪ0eOx4o.<V2-+7͕ "(WK8̱Tg~aeF,)n9y3Dw$D0;3D{@:B %W2",\Z:9nEfp.8ֲL\c8mHB'NP=P[nZ\u$[)D(439V!L%=)Y{:^'q
+QbEa
+eAlVZŲU S?K 9[]LKuXRO6{,qL}kN\ꀐyR@9f0K0u-Is<yg\zjWU\|ᒿ/
+endstream
+endobj
+5 0 obj
+ 750
+endobj
+3 0 obj
+<<
+ /ExtGState <<
+ /a0 << /CA 1 /ca 1 >>
+ >>
+>>
+endobj
+2 0 obj
+<< /Type /Page % 1
+ /Parent 1 0 R
+ /MediaBox [ 0 0 300 300 ]
+ /Contents 4 0 R
+ /Group <<
+ /Type /Group
+ /S /Transparency
+ /I true
+ /CS /DeviceRGB
+ >>
+ /Resources 3 0 R
+>>
+endobj
+1 0 obj
+<< /Type /Pages
+ /Kids [ 2 0 R ]
+ /Count 1
+>>
+endobj
+6 0 obj
+<< /Producer (cairo 1.16.0 (https://cairographics.org))
+ /CreationDate (D:20231109180750+01'00)
+>>
+endobj
+7 0 obj
+<< /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+xref
+0 8
+0000000000 65535 f
+0000001154 00000 n
+0000000936 00000 n
+0000000864 00000 n
+0000000015 00000 n
+0000000842 00000 n
+0000001219 00000 n
+0000001335 00000 n
+trailer
+<< /Size 8
+ /Root 7 0 R
+ /Info 6 0 R
+>>
+startxref
+1387
+%%EOF
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E014.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E014.pdf
new file mode 100644
index 00000000000..0a9e3829031
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E014.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E015.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E015.pdf
new file mode 100644
index 00000000000..d8e8f0e401c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E015.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E016.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E016.pdf
new file mode 100644
index 00000000000..06065e969e3
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E016.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E017.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E017.pdf
new file mode 100644
index 00000000000..fc1ca1bdf0f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E017.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E018.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E018.pdf
new file mode 100644
index 00000000000..4b05b96f890
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E018.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E019.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E019.pdf
new file mode 100644
index 00000000000..45fe98dcd7b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E019.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E020.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E020.pdf
new file mode 100644
index 00000000000..7b85394d636
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E020.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E021.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E021.pdf
new file mode 100644
index 00000000000..187694547c1
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E021.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E022.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E022.pdf
new file mode 100644
index 00000000000..2e772aa41a8
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E022.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E023.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E023.pdf
new file mode 100644
index 00000000000..9a14e4d9012
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E023.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E024.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E024.pdf
new file mode 100644
index 00000000000..3fefa8edfd1
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E024.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E025.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E025.pdf
new file mode 100644
index 00000000000..026668d438d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E025.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E026.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E026.pdf
new file mode 100644
index 00000000000..3c9979f5906
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E026.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E027.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E027.pdf
new file mode 100644
index 00000000000..fb532c645cc
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E027.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E028.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E028.pdf
new file mode 100644
index 00000000000..affca9c7f59
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E028.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E029.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E029.pdf
new file mode 100644
index 00000000000..7faeee64644
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E029.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E030.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E030.pdf
new file mode 100644
index 00000000000..cf1a93fe95c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E030.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E031.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E031.pdf
new file mode 100644
index 00000000000..1b8b8f3b7c5
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E031.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E032.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E032.pdf
new file mode 100644
index 00000000000..b70eefa5059
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E032.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E033.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E033.pdf
new file mode 100644
index 00000000000..a49b3fe4bff
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E033.pdf
@@ -0,0 +1,69 @@
+%PDF-1.5
+%
+4 0 obj
+<< /Length 5 0 R
+ /Filter /FlateDecode
+>>
+stream
+xmAn1E>( #GNHM/OfYX~`9U"0 B,jt*l-֐~
++TC%jѴr4CiXeW5dLЭOBS};HO慲8q8 wB]ɒU:z(Q]L.M3v>l-/ځG<v#RN
+endstream
+endobj
+5 0 obj
+ 258
+endobj
+3 0 obj
+<<
+ /ExtGState <<
+ /a0 << /CA 1 /ca 1 >>
+ >>
+>>
+endobj
+2 0 obj
+<< /Type /Page % 1
+ /Parent 1 0 R
+ /MediaBox [ 0 0 300 300 ]
+ /Contents 4 0 R
+ /Group <<
+ /Type /Group
+ /S /Transparency
+ /I true
+ /CS /DeviceRGB
+ >>
+ /Resources 3 0 R
+>>
+endobj
+1 0 obj
+<< /Type /Pages
+ /Kids [ 2 0 R ]
+ /Count 1
+>>
+endobj
+6 0 obj
+<< /Producer (cairo 1.16.0 (https://cairographics.org))
+ /CreationDate (D:20231109180753+01'00)
+>>
+endobj
+7 0 obj
+<< /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+xref
+0 8
+0000000000 65535 f
+0000000662 00000 n
+0000000444 00000 n
+0000000372 00000 n
+0000000015 00000 n
+0000000350 00000 n
+0000000727 00000 n
+0000000843 00000 n
+trailer
+<< /Size 8
+ /Root 7 0 R
+ /Info 6 0 R
+>>
+startxref
+895
+%%EOF
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E034.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E034.pdf
new file mode 100644
index 00000000000..44341bd96b2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E034.pdf
@@ -0,0 +1,69 @@
+%PDF-1.5
+%
+4 0 obj
+<< /Length 5 0 R
+ /Filter /FlateDecode
+>>
+stream
+xmKn! Dc1Q,z_я.( cDH??^/!gU ,)Xda u)qT&b!3:A dS+{s4ؘ$^+(Üv79.`)vA١9
+p3k!%^$v 8Ԃ&*JvFn0T,-d*:/!D--M tK]z
+endstream
+endobj
+5 0 obj
+ 259
+endobj
+3 0 obj
+<<
+ /ExtGState <<
+ /a0 << /CA 1 /ca 1 >>
+ >>
+>>
+endobj
+2 0 obj
+<< /Type /Page % 1
+ /Parent 1 0 R
+ /MediaBox [ 0 0 300 300 ]
+ /Contents 4 0 R
+ /Group <<
+ /Type /Group
+ /S /Transparency
+ /I true
+ /CS /DeviceRGB
+ >>
+ /Resources 3 0 R
+>>
+endobj
+1 0 obj
+<< /Type /Pages
+ /Kids [ 2 0 R ]
+ /Count 1
+>>
+endobj
+6 0 obj
+<< /Producer (cairo 1.16.0 (https://cairographics.org))
+ /CreationDate (D:20231109180753+01'00)
+>>
+endobj
+7 0 obj
+<< /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+xref
+0 8
+0000000000 65535 f
+0000000663 00000 n
+0000000445 00000 n
+0000000373 00000 n
+0000000015 00000 n
+0000000351 00000 n
+0000000728 00000 n
+0000000844 00000 n
+trailer
+<< /Size 8
+ /Root 7 0 R
+ /Info 6 0 R
+>>
+startxref
+896
+%%EOF
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E035.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E035.pdf
new file mode 100644
index 00000000000..c79abaa6000
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E035.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E036.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E036.pdf
new file mode 100644
index 00000000000..0bdad717baf
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E036.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E037.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E037.pdf
new file mode 100644
index 00000000000..65d6a6f2f2f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E037.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E038.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E038.pdf
new file mode 100644
index 00000000000..a99e0485f3b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E038.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E039.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E039.pdf
new file mode 100644
index 00000000000..b8247de0819
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E039.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E040.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E040.pdf
new file mode 100644
index 00000000000..f49aabdf1e0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E040.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E041.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E041.pdf
new file mode 100644
index 00000000000..9cfa31db6cb
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E041.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E042.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E042.pdf
new file mode 100644
index 00000000000..917e764de5d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E042.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E043.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E043.pdf
new file mode 100644
index 00000000000..7b126756d46
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E043.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E044.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E044.pdf
new file mode 100644
index 00000000000..8049c34a95f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E044.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E045.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E045.pdf
new file mode 100644
index 00000000000..7f57b529fe8
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E045.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E046.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E046.pdf
new file mode 100644
index 00000000000..3af4a0a9b91
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E046.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E047.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E047.pdf
new file mode 100644
index 00000000000..823f7704fe0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E047.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E048.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E048.pdf
new file mode 100644
index 00000000000..2cd85b1273c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E048.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E049.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E049.pdf
new file mode 100644
index 00000000000..67ae74aeb9f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E049.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E050.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E050.pdf
new file mode 100644
index 00000000000..1c0120948d0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E050.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E051.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E051.pdf
new file mode 100644
index 00000000000..9ac16abe7e2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E051.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E052.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E052.pdf
new file mode 100644
index 00000000000..057a6590adf
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E052.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E053.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E053.pdf
new file mode 100644
index 00000000000..b050874db93
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E053.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E054.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E054.pdf
new file mode 100644
index 00000000000..f4de9c9b1f0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E054.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E055.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E055.pdf
new file mode 100644
index 00000000000..a05639bfd2b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E055.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E056.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E056.pdf
new file mode 100644
index 00000000000..015f18e06d4
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E056.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E057.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E057.pdf
new file mode 100644
index 00000000000..c3da1ac56b0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E057.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E058.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E058.pdf
new file mode 100644
index 00000000000..fac59cd6934
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E058.pdf
@@ -0,0 +1,68 @@
+%PDF-1.5
+%
+4 0 obj
+<< /Length 5 0 R
+ /Filter /FlateDecode
+>>
+stream
+xmAn EJu=B5LEjD͢ o ȥFpp˽|М}~wS']0ڨ$åEnZZLswE[۲h01mT?' ;s,IdAlQ}Svԓ,pY5ZRZ*"kh lӂ%{ҍ٥JPTJIc$l4d0=)9:UwG[:X,s]Y1JG>x Z/l
+endstream
+endobj
+5 0 obj
+ 274
+endobj
+3 0 obj
+<<
+ /ExtGState <<
+ /a0 << /CA 1 /ca 1 >>
+ >>
+>>
+endobj
+2 0 obj
+<< /Type /Page % 1
+ /Parent 1 0 R
+ /MediaBox [ 0 0 299.982663 299.999986 ]
+ /Contents 4 0 R
+ /Group <<
+ /Type /Group
+ /S /Transparency
+ /I true
+ /CS /DeviceRGB
+ >>
+ /Resources 3 0 R
+>>
+endobj
+1 0 obj
+<< /Type /Pages
+ /Kids [ 2 0 R ]
+ /Count 1
+>>
+endobj
+6 0 obj
+<< /Producer (cairo 1.16.0 (https://cairographics.org))
+ /CreationDate (D:20231109180755+01'00)
+>>
+endobj
+7 0 obj
+<< /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+xref
+0 8
+0000000000 65535 f
+0000000692 00000 n
+0000000460 00000 n
+0000000388 00000 n
+0000000015 00000 n
+0000000366 00000 n
+0000000757 00000 n
+0000000873 00000 n
+trailer
+<< /Size 8
+ /Root 7 0 R
+ /Info 6 0 R
+>>
+startxref
+925
+%%EOF
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E059.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E059.pdf
new file mode 100644
index 00000000000..45a8ae2bd20
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E059.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E060.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E060.pdf
new file mode 100644
index 00000000000..7a0e488172e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E060.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E061.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E061.pdf
new file mode 100644
index 00000000000..2e3b5992b3f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E061.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E062.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E062.pdf
new file mode 100644
index 00000000000..69fb85f9568
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E062.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E063.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E063.pdf
new file mode 100644
index 00000000000..5eea8873cc2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E063.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E064.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E064.pdf
new file mode 100644
index 00000000000..ad4fdc70349
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E064.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E065.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E065.pdf
new file mode 100644
index 00000000000..60400eaa5ec
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E065.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E067.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E067.pdf
new file mode 100644
index 00000000000..2784052b1bb
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E067.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E068.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E068.pdf
new file mode 100644
index 00000000000..0d74c205c88
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E068.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E069.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E069.pdf
new file mode 100644
index 00000000000..b5e6b2c220c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E069.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E070.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E070.pdf
new file mode 100644
index 00000000000..7554106d64b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_E070.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F001.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F001.pdf
new file mode 100644
index 00000000000..349878fd5ff
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F001.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F002.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F002.pdf
new file mode 100644
index 00000000000..2ba7a82fbc4
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F002.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F003.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F003.pdf
new file mode 100644
index 00000000000..54b6f5da2c2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F003.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F004.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F004.pdf
new file mode 100644
index 00000000000..ed273764dbf
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F004.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F005.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F005.pdf
new file mode 100644
index 00000000000..1e8a6103e0b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F005.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F006.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F006.pdf
new file mode 100644
index 00000000000..c9f1f7bccb4
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F006.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F007.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F007.pdf
new file mode 100644
index 00000000000..b0e5f32cbe3
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F007.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F008.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F008.pdf
new file mode 100644
index 00000000000..ba9cfa7c4bd
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F008.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F009.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F009.pdf
new file mode 100644
index 00000000000..cc4b7f52b03
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F009.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F010.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F010.pdf
new file mode 100644
index 00000000000..785c5f9122d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F010.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F011.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F011.pdf
new file mode 100644
index 00000000000..12ff257deb9
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F011.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F012.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F012.pdf
new file mode 100644
index 00000000000..ddd57064190
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F012.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F013.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F013.pdf
new file mode 100644
index 00000000000..2772821d84c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F013.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F014.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F014.pdf
new file mode 100644
index 00000000000..2aaf0826af5
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F014.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F015.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F015.pdf
new file mode 100644
index 00000000000..cf3ae1c46f5
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F015.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F016.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F016.pdf
new file mode 100644
index 00000000000..06ff3352a35
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F016.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F017.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F017.pdf
new file mode 100644
index 00000000000..c9a67b8129c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F017.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F018.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F018.pdf
new file mode 100644
index 00000000000..57aa49d669a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F018.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F019.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F019.pdf
new file mode 100644
index 00000000000..a331b56a36d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_F019.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M001.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M001.pdf
new file mode 100644
index 00000000000..bf8ac9665da
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M001.pdf
@@ -0,0 +1,69 @@
+%PDF-1.5
+%
+4 0 obj
+<< /Length 5 0 R
+ /Filter /FlateDecode
+>>
+stream
+x]RN! =X)-|`6ыOXh6yva2G`t}ϔYLeM덞^2}L[/j^$ո;b.ʵ wy)n{y':.zM iaE +$7qE®i(,r _P+lc'DO_tir-ʦT:li.48␂KFGʰ?b'* Cm
+@D :ʛG=y,pkC0ob:rUs,kD|hjBEW׽ج0\7<
+endstream
+endobj
+5 0 obj
+ 344
+endobj
+3 0 obj
+<<
+ /ExtGState <<
+ /a0 << /CA 1 /ca 1 >>
+ >>
+>>
+endobj
+2 0 obj
+<< /Type /Page % 1
+ /Parent 1 0 R
+ /MediaBox [ 0 0 198.75 198.75 ]
+ /Contents 4 0 R
+ /Group <<
+ /Type /Group
+ /S /Transparency
+ /I true
+ /CS /DeviceRGB
+ >>
+ /Resources 3 0 R
+>>
+endobj
+1 0 obj
+<< /Type /Pages
+ /Kids [ 2 0 R ]
+ /Count 1
+>>
+endobj
+6 0 obj
+<< /Producer (cairo 1.16.0 (https://cairographics.org))
+ /CreationDate (D:20231109193356+01'00)
+>>
+endobj
+7 0 obj
+<< /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+xref
+0 8
+0000000000 65535 f
+0000000754 00000 n
+0000000530 00000 n
+0000000458 00000 n
+0000000015 00000 n
+0000000436 00000 n
+0000000819 00000 n
+0000000935 00000 n
+trailer
+<< /Size 8
+ /Root 7 0 R
+ /Info 6 0 R
+>>
+startxref
+987
+%%EOF
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M002.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M002.pdf
new file mode 100644
index 00000000000..6fe904c927b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M002.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M003.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M003.pdf
new file mode 100644
index 00000000000..caaddd06b5f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M003.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M004.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M004.pdf
new file mode 100644
index 00000000000..28795830dc4
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M004.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M005.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M005.pdf
new file mode 100644
index 00000000000..d3f23bd6625
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M005.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M006.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M006.pdf
new file mode 100644
index 00000000000..5da66c41a2f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M006.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M007.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M007.pdf
new file mode 100644
index 00000000000..5cc9f1a019e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M007.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M008.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M008.pdf
new file mode 100644
index 00000000000..e8de5ffce97
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M008.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M009.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M009.pdf
new file mode 100644
index 00000000000..c915a508c28
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M009.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M010.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M010.pdf
new file mode 100644
index 00000000000..90334f320f6
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M010.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M011.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M011.pdf
new file mode 100644
index 00000000000..795558d1b57
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M011.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M012.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M012.pdf
new file mode 100644
index 00000000000..33f20feb1ae
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M012.pdf
@@ -0,0 +1,71 @@
+%PDF-1.5
+%
+4 0 obj
+<< /Length 5 0 R
+ /Filter /FlateDecode
+>>
+stream
+xUTA!
+>1<!jiw$Re^Fr.\eK2-__OE_̆5K5U[W{~>|e^h)ڃYz݁Xo;y:#}'[H)fE}&EgRY]@";UzRʳ2{{ 8tgLw9_^# R
+Ztg`ŀK۰mH&d)/+M{^,\2pͲ<;JiҼ,<?(ՙT-H/DV0c'*8P{K\hҲF3i^-,>\o~k)OGMnuzX)(NAn}q` JL 8<WxC 5V`Iaɟ)A<=J'Չq)6+n>ULc@a65($ݔr#uحeLH![DMª۾,v"}<C]Did4uВAH5J-ZiLB . [
+)5ti3z VdDl4^;hwoNM!A0@@jcCVn5FBS25!ݶ/dw_x'A!qv>{pD5rHc[ 2+_A'tEjAqմ(fX DCBLKjq :݃f5n]AUcv٣tY`Wh Ax(ƍHz)_?N
+endstream
+endobj
+5 0 obj
+ 766
+endobj
+3 0 obj
+<<
+ /ExtGState <<
+ /a0 << /CA 1 /ca 1 >>
+ >>
+>>
+endobj
+2 0 obj
+<< /Type /Page % 1
+ /Parent 1 0 R
+ /MediaBox [ 0 0 198.75 198.75 ]
+ /Contents 4 0 R
+ /Group <<
+ /Type /Group
+ /S /Transparency
+ /I true
+ /CS /DeviceRGB
+ >>
+ /Resources 3 0 R
+>>
+endobj
+1 0 obj
+<< /Type /Pages
+ /Kids [ 2 0 R ]
+ /Count 1
+>>
+endobj
+6 0 obj
+<< /Producer (cairo 1.16.0 (https://cairographics.org))
+ /CreationDate (D:20231109193357+01'00)
+>>
+endobj
+7 0 obj
+<< /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+xref
+0 8
+0000000000 65535 f
+0000001176 00000 n
+0000000952 00000 n
+0000000880 00000 n
+0000000015 00000 n
+0000000858 00000 n
+0000001241 00000 n
+0000001357 00000 n
+trailer
+<< /Size 8
+ /Root 7 0 R
+ /Info 6 0 R
+>>
+startxref
+1409
+%%EOF
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M013.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M013.pdf
new file mode 100644
index 00000000000..a9133b9fbea
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M013.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M014.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M014.pdf
new file mode 100644
index 00000000000..8731ca26ff0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M014.pdf
@@ -0,0 +1,72 @@
+%PDF-1.5
+%
+4 0 obj
+<< /Length 5 0 R
+ /Filter /FlateDecode
+>>
+stream
+xeUI$7 @"%J3|HCpP[Mh#Rd
+e}~d8w+}Oai Y6,]
+lrc˅:gJP kDXVoA:9lwc7;e*e.Џo<CZer*DXC6({mմ|Aqttb:u{9;s{%2*4G3$;&t6kz۱q^Fs8W@$px=w{ĐHcJݹUG҄M$SإAL;uF@(lSB
+M}iWD KaQOMBٚFdy8ʈ-tQSPj)2,X{5sF"^tTc9C
+8x;x.Vl@M0lA:9lwc_S_͉Ig- ^xtld&X+ 1GvD+BJm1;gt{C.`, gX!Rt,EX_kWŀhk^5dACZmEUM|RoDǎXl酗W>C#t yb%C;@m<BP@+ O)R.pXF"mڟﱔ0GUbdv^!ڏ>^l1qZW*$0c7l՘Hmi㈳8;Xd 긯 qQd7|C t]|Z%s6Gژl3W6Aub] : > KER!+skqUs7)ؐy D́}5Xa160mQUIF'_-k[WZ?vCc 㡿CNӿ鐱g
+endstream
+endobj
+5 0 obj
+ 921
+endobj
+3 0 obj
+<<
+ /ExtGState <<
+ /a0 << /CA 1 /ca 1 >>
+ >>
+>>
+endobj
+2 0 obj
+<< /Type /Page % 1
+ /Parent 1 0 R
+ /MediaBox [ 0 0 198.75 198.75 ]
+ /Contents 4 0 R
+ /Group <<
+ /Type /Group
+ /S /Transparency
+ /I true
+ /CS /DeviceRGB
+ >>
+ /Resources 3 0 R
+>>
+endobj
+1 0 obj
+<< /Type /Pages
+ /Kids [ 2 0 R ]
+ /Count 1
+>>
+endobj
+6 0 obj
+<< /Producer (cairo 1.16.0 (https://cairographics.org))
+ /CreationDate (D:20231109193357+01'00)
+>>
+endobj
+7 0 obj
+<< /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+xref
+0 8
+0000000000 65535 f
+0000001331 00000 n
+0000001107 00000 n
+0000001035 00000 n
+0000000015 00000 n
+0000001013 00000 n
+0000001396 00000 n
+0000001512 00000 n
+trailer
+<< /Size 8
+ /Root 7 0 R
+ /Info 6 0 R
+>>
+startxref
+1564
+%%EOF
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M015.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M015.pdf
new file mode 100644
index 00000000000..1e0e1991bac
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M015.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M016.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M016.pdf
new file mode 100644
index 00000000000..c301799f8c0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M016.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M017.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M017.pdf
new file mode 100644
index 00000000000..403e4af957f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M017.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M018.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M018.pdf
new file mode 100644
index 00000000000..c1684c56123
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M018.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M019.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M019.pdf
new file mode 100644
index 00000000000..899dc343f73
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M019.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M020.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M020.pdf
new file mode 100644
index 00000000000..a05f2f9c281
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M020.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M021.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M021.pdf
new file mode 100644
index 00000000000..e8e9b4444b1
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M021.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M022.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M022.pdf
new file mode 100644
index 00000000000..e8c5b7be318
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M022.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M023.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M023.pdf
new file mode 100644
index 00000000000..422ada6ac3e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M023.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M024.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M024.pdf
new file mode 100644
index 00000000000..48cf114099d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M024.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M025.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M025.pdf
new file mode 100644
index 00000000000..95cacc24f2c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M025.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M026.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M026.pdf
new file mode 100644
index 00000000000..96d5a968206
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M026.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M027.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M027.pdf
new file mode 100644
index 00000000000..57ff5fc421f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M027.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M028.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M028.pdf
new file mode 100644
index 00000000000..24fb157422b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M028.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M029.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M029.pdf
new file mode 100644
index 00000000000..8c0888c9983
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M029.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M030.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M030.pdf
new file mode 100644
index 00000000000..b23dff04e07
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M030.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M031.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M031.pdf
new file mode 100644
index 00000000000..58ecb0cda8c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M031.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M032.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M032.pdf
new file mode 100644
index 00000000000..7fd3c279dcb
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M032.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M033.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M033.pdf
new file mode 100644
index 00000000000..5800fc4b444
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M033.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M034.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M034.pdf
new file mode 100644
index 00000000000..aed2ce39674
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M034.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M035.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M035.pdf
new file mode 100644
index 00000000000..d419f6aeeb4
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M035.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M036.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M036.pdf
new file mode 100644
index 00000000000..b3c84ef0227
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M036.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M037.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M037.pdf
new file mode 100644
index 00000000000..a8088da27fb
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M037.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M038.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M038.pdf
new file mode 100644
index 00000000000..32f5f03eab2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M038.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M039.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M039.pdf
new file mode 100644
index 00000000000..bbe60d2b2c1
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M039.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M040.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M040.pdf
new file mode 100644
index 00000000000..c5be6a8394c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M040.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M041.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M041.pdf
new file mode 100644
index 00000000000..7f6c9cac5bc
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M041.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M042.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M042.pdf
new file mode 100644
index 00000000000..240f54561f7
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M042.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M043.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M043.pdf
new file mode 100644
index 00000000000..3cec333117d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M043.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M044.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M044.pdf
new file mode 100644
index 00000000000..c4e9b90c422
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M044.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M045.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M045.pdf
new file mode 100644
index 00000000000..e18044d5f1c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M045.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M046.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M046.pdf
new file mode 100644
index 00000000000..1c7dc014f09
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M046.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M047.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M047.pdf
new file mode 100644
index 00000000000..96c4433dcb7
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M047.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M048.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M048.pdf
new file mode 100644
index 00000000000..a738ce3b0cd
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M048.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M049.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M049.pdf
new file mode 100644
index 00000000000..913fe8388af
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M049.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M050.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M050.pdf
new file mode 100644
index 00000000000..c2e3ba295e9
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M050.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M051.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M051.pdf
new file mode 100644
index 00000000000..841dcfc7998
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M051.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M052.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M052.pdf
new file mode 100644
index 00000000000..5d9fb414b99
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M052.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M053.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M053.pdf
new file mode 100644
index 00000000000..3124ec47c6f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M053.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M054.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M054.pdf
new file mode 100644
index 00000000000..e146dadce7a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M054.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M055.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M055.pdf
new file mode 100644
index 00000000000..b744fbd6bdf
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M055.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M056.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M056.pdf
new file mode 100644
index 00000000000..42b1a3d4757
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M056.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M057.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M057.pdf
new file mode 100644
index 00000000000..8a0fa9e817b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M057.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M058.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M058.pdf
new file mode 100644
index 00000000000..d16a09083f3
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M058.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M059.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M059.pdf
new file mode 100644
index 00000000000..f97c260b8a8
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M059.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M060.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M060.pdf
new file mode 100644
index 00000000000..373633588c5
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_M060.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P001.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P001.pdf
new file mode 100644
index 00000000000..4204639a366
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P001.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P002.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P002.pdf
new file mode 100644
index 00000000000..cbff0bd974f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P002.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P003.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P003.pdf
new file mode 100644
index 00000000000..3d70a21875f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P003.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P004.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P004.pdf
new file mode 100644
index 00000000000..7557ddb6b33
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P004.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P005.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P005.pdf
new file mode 100644
index 00000000000..47f4f065432
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P005.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P006.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P006.pdf
new file mode 100644
index 00000000000..d81b6c5e1af
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P006.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P007.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P007.pdf
new file mode 100644
index 00000000000..7ef93afe83b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P007.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P008.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P008.pdf
new file mode 100644
index 00000000000..16b5b94fbb9
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P008.pdf
@@ -0,0 +1,72 @@
+%PDF-1.5
+%
+4 0 obj
+<< /Length 5 0 R
+ /Filter /FlateDecode
+>>
+stream
+x]VI$7 :,g F9TfRݍ2\39R|_A"~8gR|#3´G<8: <[c~>~z೵•eFM}ZS@0*#5MHCRUG5x3Y^{O3776iC;^=Lf.`eeg#$SskCtnOvѹtM8R`3 %d>Rᨈxt[LP2Β2kUPްfOy b[[A y"CpSkoA\ p$
+GfaK!mSj,h d9AcUȠ2!
+Ad@Gi啤=[%h,+߉n܊Hۋ0xDrm7:+,1{; ~5NPbxK4~KKNZa#mFRX*{ xKSC3@A@Y&EON86-R^a*FFM6ZMٜ-שQ I)| 8a(}&| ^W0mOӶ,XNqq
+wmex.=8W,L$Ol<*sn9 ?!%lPgbA'7Ɩ FR㞚B>tk-qG1#'Eg>%VBl\9WbJ%ؼWe)N+ljՂÉYxoH_)-@Kpc8Q}ſtV%rP
++\r&P{{aF`|l}͍s\("|0;ʚr %]P~ r'C7-L'eҍi|x0/N|2$;1ܬ5:>D8_7Wk ϒoVwѶƸ
+endstream
+endobj
+5 0 obj
+ 949
+endobj
+3 0 obj
+<<
+ /ExtGState <<
+ /a0 << /CA 1 /ca 1 >>
+ >>
+>>
+endobj
+2 0 obj
+<< /Type /Page % 1
+ /Parent 1 0 R
+ /MediaBox [ 0 0 198.75 198.75 ]
+ /Contents 4 0 R
+ /Group <<
+ /Type /Group
+ /S /Transparency
+ /I true
+ /CS /DeviceRGB
+ >>
+ /Resources 3 0 R
+>>
+endobj
+1 0 obj
+<< /Type /Pages
+ /Kids [ 2 0 R ]
+ /Count 1
+>>
+endobj
+6 0 obj
+<< /Producer (cairo 1.16.0 (https://cairographics.org))
+ /CreationDate (D:20231109195038+01'00)
+>>
+endobj
+7 0 obj
+<< /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+xref
+0 8
+0000000000 65535 f
+0000001359 00000 n
+0000001135 00000 n
+0000001063 00000 n
+0000000015 00000 n
+0000001041 00000 n
+0000001424 00000 n
+0000001540 00000 n
+trailer
+<< /Size 8
+ /Root 7 0 R
+ /Info 6 0 R
+>>
+startxref
+1592
+%%EOF
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P009.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P009.pdf
new file mode 100644
index 00000000000..8aedd6064b6
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P009.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P010.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P010.pdf
new file mode 100644
index 00000000000..494c68d1df8
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P010.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P011.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P011.pdf
new file mode 100644
index 00000000000..42d5f63ddec
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P011.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P012.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P012.pdf
new file mode 100644
index 00000000000..b196406cb82
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P012.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P013.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P013.pdf
new file mode 100644
index 00000000000..6f94e89b1f6
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P013.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P014.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P014.pdf
new file mode 100644
index 00000000000..40f30b66a38
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P014.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P015.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P015.pdf
new file mode 100644
index 00000000000..7de907b4972
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P015.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P016.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P016.pdf
new file mode 100644
index 00000000000..26f222085ef
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P016.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P017.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P017.pdf
new file mode 100644
index 00000000000..07dc17d10e2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P017.pdf
@@ -0,0 +1,73 @@
+%PDF-1.5
+%
+4 0 obj
+<< /Length 5 0 R
+ /Filter /FlateDecode
+>>
+stream
+x]TK! s
+֑8F3$R_hmɌwN$/IET`̧2K?mpl%uU⎴þf=c[Ksȿ%DH4TVPo*7YțrgKr51 F>@ީ
+2֑89+Ը@\@mAPj!Z'
+'I3Zp1ܕT\R<rĊ赑pD <7 l* n]GLj_Q6~Ս]>k$57=D{/UfJFX"1
+K0̳Ehp7\ j(#!zՂBDAL'KIGDcϵ_ V,Kźʎ9`2arGޗih2!ԑΤ]_Ю(9Wѹ b'mu8k
+iƮkזtD1|VSv T6tbju6`Z7%ƶ\_0Yo44 ]@!D5 oSބE5)F L,HQbo_\2P FZ;^mxt|/8Mo^s.~2U%2
+endstream
+endobj
+5 0 obj
+ 630
+endobj
+3 0 obj
+<<
+ /ExtGState <<
+ /a0 << /CA 1 /ca 1 >>
+ >>
+>>
+endobj
+2 0 obj
+<< /Type /Page % 1
+ /Parent 1 0 R
+ /MediaBox [ 0 0 198.75 198.75 ]
+ /Contents 4 0 R
+ /Group <<
+ /Type /Group
+ /S /Transparency
+ /I true
+ /CS /DeviceRGB
+ >>
+ /Resources 3 0 R
+>>
+endobj
+1 0 obj
+<< /Type /Pages
+ /Kids [ 2 0 R ]
+ /Count 1
+>>
+endobj
+6 0 obj
+<< /Producer (cairo 1.16.0 (https://cairographics.org))
+ /CreationDate (D:20231109195039+01'00)
+>>
+endobj
+7 0 obj
+<< /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+xref
+0 8
+0000000000 65535 f
+0000001040 00000 n
+0000000816 00000 n
+0000000744 00000 n
+0000000015 00000 n
+0000000722 00000 n
+0000001105 00000 n
+0000001221 00000 n
+trailer
+<< /Size 8
+ /Root 7 0 R
+ /Info 6 0 R
+>>
+startxref
+1273
+%%EOF
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P018.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P018.pdf
new file mode 100644
index 00000000000..1649aaaed1d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P018.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P019.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P019.pdf
new file mode 100644
index 00000000000..567db7aa6f0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P019.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P020.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P020.pdf
new file mode 100644
index 00000000000..1a93bf6a57f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P020.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P021.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P021.pdf
new file mode 100644
index 00000000000..52a34861985
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P021.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P022.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P022.pdf
new file mode 100644
index 00000000000..b3221c84d7f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P022.pdf
@@ -0,0 +1,71 @@
+%PDF-1.5
+%
+4 0 obj
+<< /Length 5 0 R
+ /Filter /FlateDecode
+>>
+stream
+x]TK! s
+֑`0#DHyo1x/R7ݣܶ?nJ{}_V}k Z,-n մ+J{gݰ//w,9ÅQ(*JrBuTG)Mt 
+CٰP +ȹPP591R=KʤZODJ|w>OA;xuv骒XwS!}T ?7A"i}Tcu6+(-eð"ҵ/r_,|,`*gZ.rVĒhccL_b-<<J #ՀBfEl9ljnnXxe0ҥkL2|%VNEe6{!hv\2L9b(F4Q5Pk:d5!\Q,0`k5 `/Am03[MyfGaE
+kӘ4%nU$FtS7^Sd>dd(?pPB!;,dѡo݂nN,B^p1p/7}e؏iuoQJ<
+endstream
+endobj
+5 0 obj
+ 550
+endobj
+3 0 obj
+<<
+ /ExtGState <<
+ /a0 << /CA 1 /ca 1 >>
+ >>
+>>
+endobj
+2 0 obj
+<< /Type /Page % 1
+ /Parent 1 0 R
+ /MediaBox [ 0 0 198.75 198.75 ]
+ /Contents 4 0 R
+ /Group <<
+ /Type /Group
+ /S /Transparency
+ /I true
+ /CS /DeviceRGB
+ >>
+ /Resources 3 0 R
+>>
+endobj
+1 0 obj
+<< /Type /Pages
+ /Kids [ 2 0 R ]
+ /Count 1
+>>
+endobj
+6 0 obj
+<< /Producer (cairo 1.16.0 (https://cairographics.org))
+ /CreationDate (D:20231109195039+01'00)
+>>
+endobj
+7 0 obj
+<< /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+xref
+0 8
+0000000000 65535 f
+0000000960 00000 n
+0000000736 00000 n
+0000000664 00000 n
+0000000015 00000 n
+0000000642 00000 n
+0000001025 00000 n
+0000001141 00000 n
+trailer
+<< /Size 8
+ /Root 7 0 R
+ /Info 6 0 R
+>>
+startxref
+1193
+%%EOF
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P023.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P023.pdf
new file mode 100644
index 00000000000..bc61ff39572
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P023.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P024.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P024.pdf
new file mode 100644
index 00000000000..cfdcc656020
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P024.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P025.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P025.pdf
new file mode 100644
index 00000000000..0f630528299
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P025.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P026.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P026.pdf
new file mode 100644
index 00000000000..14622fd4740
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P026.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P027.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P027.pdf
new file mode 100644
index 00000000000..287fa92485a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P027.pdf
@@ -0,0 +1,74 @@
+%PDF-1.5
+%
+4 0 obj
+<< /Length 5 0 R
+ /Filter /FlateDecode
+>>
+stream
+xuVK! s
+֑B0`>"Y$2`wDѓ^wUcl_ hϧG:%?FXJFT`<s5̳b#w꬞OkTrs[M+QdDk \j0-c!>JaEYC+gGy zAjbۃ1QMn: Db-lF'Ҁ D d#x{el&PKHm9赭<X{ N!jJ88;ClX͋73Hr8KLKZ
+QkE ԁ;V
+O[V_b w]F5R[="
+e{lA۱Lcڀ,QiňL]d*~ž?fj8QKkn9q|:
+pav6~!#$[H#L!I\0dtU^!'05qm l9U?8P:}/U3\BqB s!]Fb(E.ⴚۄQM茛2⺦E`E& 9M0|+1[ 34¸@1qBM}J^0"n^#uBEĐ&rf :hÀ*eQnX"u9](vqCI:
+E2*h*ET|rks`(7Y 9";N!h.}U͍K^ = \\Lu4#ApتCcj_ܑ
+endstream
+endobj
+5 0 obj
+ 802
+endobj
+3 0 obj
+<<
+ /ExtGState <<
+ /a0 << /CA 1 /ca 1 >>
+ >>
+>>
+endobj
+2 0 obj
+<< /Type /Page % 1
+ /Parent 1 0 R
+ /MediaBox [ 0 0 198.75 198.75 ]
+ /Contents 4 0 R
+ /Group <<
+ /Type /Group
+ /S /Transparency
+ /I true
+ /CS /DeviceRGB
+ >>
+ /Resources 3 0 R
+>>
+endobj
+1 0 obj
+<< /Type /Pages
+ /Kids [ 2 0 R ]
+ /Count 1
+>>
+endobj
+6 0 obj
+<< /Producer (cairo 1.16.0 (https://cairographics.org))
+ /CreationDate (D:20231109195039+01'00)
+>>
+endobj
+7 0 obj
+<< /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+xref
+0 8
+0000000000 65535 f
+0000001212 00000 n
+0000000988 00000 n
+0000000916 00000 n
+0000000015 00000 n
+0000000894 00000 n
+0000001277 00000 n
+0000001393 00000 n
+trailer
+<< /Size 8
+ /Root 7 0 R
+ /Info 6 0 R
+>>
+startxref
+1445
+%%EOF
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P028.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P028.pdf
new file mode 100644
index 00000000000..fbc0e109ac4
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P028.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P029.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P029.pdf
new file mode 100644
index 00000000000..cb3e49f544d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P029.pdf
@@ -0,0 +1,73 @@
+%PDF-1.5
+%
+4 0 obj
+<< /Length 5 0 R
+ /Filter /FlateDecode
+>>
+stream
+x]VI$7 :0-j3 F3s>?H*3tUE2(qLkh
+WxNZT+.Z3r]Qp
+EA&[}He±owşBJiMrnD΅F*nviUV8ZRشmPj TZL? $& ¹DZ2IkAWϔpI4rNĭ+.Px7|bi4C)NVy FrMp=؛:-%[a+WS/]+Z;ј
+mh3xQvp N-A ݆Bwܨ[Ç c/*xcPF bghmß Uct.C/1 "<
+W"z/5'lj˭>},V.Ʃ/J}Gf)Hx,A 7wç&Ef!r<ʱ=[K].u*Іy;᧺ĸ5C㸬v"ySSY]|&SO!6{g{vXReg@ ˚jvу[۸VSpt8Cf+>D LMN{i8#3̼Ø!}9jo=1\KG~ ʕ&݂ܐ7=jIdMALj$7Wv KS徛Vv:cuwxųaFC3)į͎R\нCEWvWf\H}=}/]'[y}JMθ>`Fʻ`a<8fh@rVdЄ&qBWy9=YFu'G Hu=̺g2dwp#/BdL %XYSD/Ɨcw: ҵ@;
+MhY2b}MT!w7 6"I^?yNc225|}#!F
+endstream
+endobj
+5 0 obj
+ 972
+endobj
+3 0 obj
+<<
+ /ExtGState <<
+ /a0 << /CA 1 /ca 1 >>
+ >>
+>>
+endobj
+2 0 obj
+<< /Type /Page % 1
+ /Parent 1 0 R
+ /MediaBox [ 0 0 198.75 198.75 ]
+ /Contents 4 0 R
+ /Group <<
+ /Type /Group
+ /S /Transparency
+ /I true
+ /CS /DeviceRGB
+ >>
+ /Resources 3 0 R
+>>
+endobj
+1 0 obj
+<< /Type /Pages
+ /Kids [ 2 0 R ]
+ /Count 1
+>>
+endobj
+6 0 obj
+<< /Producer (cairo 1.16.0 (https://cairographics.org))
+ /CreationDate (D:20231109195039+01'00)
+>>
+endobj
+7 0 obj
+<< /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+xref
+0 8
+0000000000 65535 f
+0000001382 00000 n
+0000001158 00000 n
+0000001086 00000 n
+0000000015 00000 n
+0000001064 00000 n
+0000001447 00000 n
+0000001563 00000 n
+trailer
+<< /Size 8
+ /Root 7 0 R
+ /Info 6 0 R
+>>
+startxref
+1615
+%%EOF
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P030.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P030.pdf
new file mode 100644
index 00000000000..021c0b97952
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P030.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P031.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P031.pdf
new file mode 100644
index 00000000000..421ee50f92c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P031.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P032.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P032.pdf
new file mode 100644
index 00000000000..584f20d8e77
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P032.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P033.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P033.pdf
new file mode 100644
index 00000000000..f7d6e8f9445
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P033.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P034.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P034.pdf
new file mode 100644
index 00000000000..d8ee13c5fd8
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P034.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P035.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P035.pdf
new file mode 100644
index 00000000000..d42d57242c4
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P035.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P036.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P036.pdf
new file mode 100644
index 00000000000..555a6afe24b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P036.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P037.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P037.pdf
new file mode 100644
index 00000000000..6a6563ca972
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P037.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P038.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P038.pdf
new file mode 100644
index 00000000000..ddaf05f9edc
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P038.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P039.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P039.pdf
new file mode 100644
index 00000000000..0a41c0d8b65
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P039.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P040.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P040.pdf
new file mode 100644
index 00000000000..bfeec12e1e6
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P040.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P041.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P041.pdf
new file mode 100644
index 00000000000..6da07255e5b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P041.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P042.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P042.pdf
new file mode 100644
index 00000000000..8a77221585f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P042.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P043.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P043.pdf
new file mode 100644
index 00000000000..a4e069ba9a0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P043.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P044.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P044.pdf
new file mode 100644
index 00000000000..81cf8f71892
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P044.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P045.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P045.pdf
new file mode 100644
index 00000000000..16726e7cf2b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P045.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P046.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P046.pdf
new file mode 100644
index 00000000000..320c0f6c5d5
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P046.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P047.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P047.pdf
new file mode 100644
index 00000000000..de38a973bde
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P047.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P048.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P048.pdf
new file mode 100644
index 00000000000..30b9137f542
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P048.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P049.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P049.pdf
new file mode 100644
index 00000000000..e7ebbd12021
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P049.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P050.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P050.pdf
new file mode 100644
index 00000000000..c0cb30329d3
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P050.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P051.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P051.pdf
new file mode 100644
index 00000000000..c4f90329534
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P051.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P052.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P052.pdf
new file mode 100644
index 00000000000..1aa30711be7
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P052.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P053.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P053.pdf
new file mode 100644
index 00000000000..5e75ac56a26
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P053.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P054.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P054.pdf
new file mode 100644
index 00000000000..39fbd4b6af9
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P054.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P055.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P055.pdf
new file mode 100644
index 00000000000..561d15386bd
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P055.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P056.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P056.pdf
new file mode 100644
index 00000000000..2c984d0b7e8
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P056.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P057.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P057.pdf
new file mode 100644
index 00000000000..886365621e1
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P057.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P058.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P058.pdf
new file mode 100644
index 00000000000..e82cdeceadd
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P058.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P059.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P059.pdf
new file mode 100644
index 00000000000..46a6dc0b1cb
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P059.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P060.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P060.pdf
new file mode 100644
index 00000000000..b152234d174
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P060.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P061.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P061.pdf
new file mode 100644
index 00000000000..04327846dd9
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P061.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P062.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P062.pdf
new file mode 100644
index 00000000000..a3a86b12522
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P062.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P063.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P063.pdf
new file mode 100644
index 00000000000..bc4e823a184
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P063.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P064.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P064.pdf
new file mode 100644
index 00000000000..feaf4db700e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P064.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P065.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P065.pdf
new file mode 100644
index 00000000000..f0a3cf25b65
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P065.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P066.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P066.pdf
new file mode 100644
index 00000000000..ca0ad4180a6
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P066.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P067.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P067.pdf
new file mode 100644
index 00000000000..f8de06dbd8e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P067.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P068.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P068.pdf
new file mode 100644
index 00000000000..9de356ab4dc
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P068.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P069.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P069.pdf
new file mode 100644
index 00000000000..93c6e07dd2b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P069.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P070.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P070.pdf
new file mode 100644
index 00000000000..34b973fa36e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P070.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P071.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P071.pdf
new file mode 100644
index 00000000000..882eec69821
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P071.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P072.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P072.pdf
new file mode 100644
index 00000000000..85c8329f272
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P072.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P073.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P073.pdf
new file mode 100644
index 00000000000..a70fc013681
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P073.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P074.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P074.pdf
new file mode 100644
index 00000000000..b0dcdbdd31e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P074.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P075.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P075.pdf
new file mode 100644
index 00000000000..dbd0eece862
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_P075.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W001.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W001.pdf
new file mode 100644
index 00000000000..93e4ff1096c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W001.pdf
@@ -0,0 +1,69 @@
+%PDF-1.5
+%
+4 0 obj
+<< /Length 5 0 R
+ /Filter /FlateDecode
+>>
+stream
+xMPN1 L8 h:!V<E|7_ꉎp {-Vqɭa}HtOgx~:[0z DL&5<|\wtXӬ\10dڸԂ "ay<Ej b63YT58Q3|)sm eNI/X!%l1_ ^Mcw@9 Zܱ1\mŷY
+Cp&źȭ =rm
+endstream
+endobj
+5 0 obj
+ 279
+endobj
+3 0 obj
+<<
+ /ExtGState <<
+ /a0 << /CA 1 /ca 1 >>
+ >>
+>>
+endobj
+2 0 obj
+<< /Type /Page % 1
+ /Parent 1 0 R
+ /MediaBox [ 0 0 450 393 ]
+ /Contents 4 0 R
+ /Group <<
+ /Type /Group
+ /S /Transparency
+ /I true
+ /CS /DeviceRGB
+ >>
+ /Resources 3 0 R
+>>
+endobj
+1 0 obj
+<< /Type /Pages
+ /Kids [ 2 0 R ]
+ /Count 1
+>>
+endobj
+6 0 obj
+<< /Producer (cairo 1.16.0 (https://cairographics.org))
+ /CreationDate (D:20231109200440+01'00)
+>>
+endobj
+7 0 obj
+<< /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+xref
+0 8
+0000000000 65535 f
+0000000683 00000 n
+0000000465 00000 n
+0000000393 00000 n
+0000000015 00000 n
+0000000371 00000 n
+0000000748 00000 n
+0000000864 00000 n
+trailer
+<< /Size 8
+ /Root 7 0 R
+ /Info 6 0 R
+>>
+startxref
+916
+%%EOF
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W002.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W002.pdf
new file mode 100644
index 00000000000..cd4e5efe716
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W002.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W003.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W003.pdf
new file mode 100644
index 00000000000..e9718ec0b9e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W003.pdf
@@ -0,0 +1,69 @@
+%PDF-1.5
+%
+4 0 obj
+<< /Length 5 0 R
+ /Filter /FlateDecode
+>>
+stream
+xmQN1 Bl hZġmqPLZcg0Ҳ Jg>Z%y@/z=1 ؁\Gw҈IB+EH>;:Ly|+ 5 t7ˤ^c%pO!.r}XUd'sv] ķY6Zc<3#
+I^kluY7v뫯sF&Q_mͥaA6![ n-v&s(ɽuЯ#8n
+endstream
+endobj
+5 0 obj
+ 280
+endobj
+3 0 obj
+<<
+ /ExtGState <<
+ /a0 << /CA 1 /ca 1 >>
+ >>
+>>
+endobj
+2 0 obj
+<< /Type /Page % 1
+ /Parent 1 0 R
+ /MediaBox [ 0 0 450 393 ]
+ /Contents 4 0 R
+ /Group <<
+ /Type /Group
+ /S /Transparency
+ /I true
+ /CS /DeviceRGB
+ >>
+ /Resources 3 0 R
+>>
+endobj
+1 0 obj
+<< /Type /Pages
+ /Kids [ 2 0 R ]
+ /Count 1
+>>
+endobj
+6 0 obj
+<< /Producer (cairo 1.16.0 (https://cairographics.org))
+ /CreationDate (D:20231109200440+01'00)
+>>
+endobj
+7 0 obj
+<< /Type /Catalog
+ /Pages 1 0 R
+>>
+endobj
+xref
+0 8
+0000000000 65535 f
+0000000684 00000 n
+0000000466 00000 n
+0000000394 00000 n
+0000000015 00000 n
+0000000372 00000 n
+0000000749 00000 n
+0000000865 00000 n
+trailer
+<< /Size 8
+ /Root 7 0 R
+ /Info 6 0 R
+>>
+startxref
+917
+%%EOF
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W004.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W004.pdf
new file mode 100644
index 00000000000..52821d3ee2c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W004.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W005.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W005.pdf
new file mode 100644
index 00000000000..e0af280633e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W005.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W006.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W006.pdf
new file mode 100644
index 00000000000..5a8cd083401
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W006.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W007.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W007.pdf
new file mode 100644
index 00000000000..5aee6b6eebd
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W007.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W008.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W008.pdf
new file mode 100644
index 00000000000..2279b4802e8
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W008.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W009.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W009.pdf
new file mode 100644
index 00000000000..9dda0f4ee9b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W009.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W010.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W010.pdf
new file mode 100644
index 00000000000..8a70dd40fcc
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W010.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W011.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W011.pdf
new file mode 100644
index 00000000000..5feeebec8db
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W011.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W012.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W012.pdf
new file mode 100644
index 00000000000..6edd5cce7c2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W012.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W013.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W013.pdf
new file mode 100644
index 00000000000..22e6c03d157
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W013.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W014.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W014.pdf
new file mode 100644
index 00000000000..0ffc581a813
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W014.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W015.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W015.pdf
new file mode 100644
index 00000000000..0a8f3c6a98a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W015.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W016.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W016.pdf
new file mode 100644
index 00000000000..1635032be16
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W016.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W017.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W017.pdf
new file mode 100644
index 00000000000..e7f3eaa7e34
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W017.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W018.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W018.pdf
new file mode 100644
index 00000000000..f56cfa12f4c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W018.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W019.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W019.pdf
new file mode 100644
index 00000000000..37445e7a281
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W019.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W020.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W020.pdf
new file mode 100644
index 00000000000..1e06b95eab5
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W020.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W021.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W021.pdf
new file mode 100644
index 00000000000..d60016dc805
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W021.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W022.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W022.pdf
new file mode 100644
index 00000000000..bf13211210e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W022.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W023.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W023.pdf
new file mode 100644
index 00000000000..d7b080a243d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W023.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W024.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W024.pdf
new file mode 100644
index 00000000000..c1148bf3e6a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W024.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W025.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W025.pdf
new file mode 100644
index 00000000000..1f94d88dde6
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W025.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W026.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W026.pdf
new file mode 100644
index 00000000000..b51f591e19d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W026.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W027.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W027.pdf
new file mode 100644
index 00000000000..299c473c610
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W027.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W028.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W028.pdf
new file mode 100644
index 00000000000..06a2a1730e0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W028.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W029.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W029.pdf
new file mode 100644
index 00000000000..b26c8d242ec
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W029.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W030.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W030.pdf
new file mode 100644
index 00000000000..6991d20397c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W030.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W031.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W031.pdf
new file mode 100644
index 00000000000..3b04fca386c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W031.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W032.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W032.pdf
new file mode 100644
index 00000000000..874d5d18561
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W032.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W033.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W033.pdf
new file mode 100644
index 00000000000..954c565b074
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W033.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W034.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W034.pdf
new file mode 100644
index 00000000000..e05340bf572
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W034.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W035.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W035.pdf
new file mode 100644
index 00000000000..b519520de20
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W035.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W036.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W036.pdf
new file mode 100644
index 00000000000..8b3c75efa44
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W036.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W037.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W037.pdf
new file mode 100644
index 00000000000..82fdb9e25ae
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W037.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W038.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W038.pdf
new file mode 100644
index 00000000000..20d7fecebf4
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W038.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W039.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W039.pdf
new file mode 100644
index 00000000000..1c99515ed9b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W039.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W040.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W040.pdf
new file mode 100644
index 00000000000..3941b250979
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W040.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W041.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W041.pdf
new file mode 100644
index 00000000000..c6416f08ea2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W041.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W042.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W042.pdf
new file mode 100644
index 00000000000..9321af66dba
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W042.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W043.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W043.pdf
new file mode 100644
index 00000000000..55ead516204
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W043.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W044.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W044.pdf
new file mode 100644
index 00000000000..e262f16d1d0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W044.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W045.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W045.pdf
new file mode 100644
index 00000000000..e6d68cba29b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W045.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W046.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W046.pdf
new file mode 100644
index 00000000000..d1d0f0b7812
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W046.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W047.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W047.pdf
new file mode 100644
index 00000000000..10b71d56d72
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W047.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W048.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W048.pdf
new file mode 100644
index 00000000000..ed0b84886fc
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W048.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W049.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W049.pdf
new file mode 100644
index 00000000000..814955db230
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W049.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W050.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W050.pdf
new file mode 100644
index 00000000000..c2f4bcb9b80
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W050.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W051.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W051.pdf
new file mode 100644
index 00000000000..b0e7c09dc41
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W051.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W052.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W052.pdf
new file mode 100644
index 00000000000..9ad59817a55
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W052.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W053.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W053.pdf
new file mode 100644
index 00000000000..8013e0e9668
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W053.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W054.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W054.pdf
new file mode 100644
index 00000000000..2b3f5323d9c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W054.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W055.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W055.pdf
new file mode 100644
index 00000000000..c61a359de67
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W055.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W056.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W056.pdf
new file mode 100644
index 00000000000..6f3b5028814
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W056.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W057.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W057.pdf
new file mode 100644
index 00000000000..a4e2e379cc6
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W057.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W058.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W058.pdf
new file mode 100644
index 00000000000..a6cc2f357e3
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W058.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W059.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W059.pdf
new file mode 100644
index 00000000000..03037b8f9d5
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W059.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W060.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W060.pdf
new file mode 100644
index 00000000000..4947b7f5294
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W060.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W061.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W061.pdf
new file mode 100644
index 00000000000..fa0dbad4ee8
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W061.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W062.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W062.pdf
new file mode 100644
index 00000000000..38168b8b90b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W062.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W063.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W063.pdf
new file mode 100644
index 00000000000..0bc81af20e8
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W063.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W064.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W064.pdf
new file mode 100644
index 00000000000..75f8625838a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W064.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W065.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W065.pdf
new file mode 100644
index 00000000000..f13b05c99f3
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W065.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W066.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W066.pdf
new file mode 100644
index 00000000000..92afceab2f2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W066.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W067.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W067.pdf
new file mode 100644
index 00000000000..d891a4bdc73
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W067.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W068.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W068.pdf
new file mode 100644
index 00000000000..0da984a06f2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W068.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W069.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W069.pdf
new file mode 100644
index 00000000000..494ab14531a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W069.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W070.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W070.pdf
new file mode 100644
index 00000000000..4cd988cba70
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W070.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W071.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W071.pdf
new file mode 100644
index 00000000000..0e55001c941
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W071.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W072.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W072.pdf
new file mode 100644
index 00000000000..7b8a9c08391
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W072.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W073.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W073.pdf
new file mode 100644
index 00000000000..0f6f5fcd9b5
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W073.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W074.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W074.pdf
new file mode 100644
index 00000000000..b6ec9d92f39
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W074.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W075.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W075.pdf
new file mode 100644
index 00000000000..6e8b28d2767
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W075.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W076.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W076.pdf
new file mode 100644
index 00000000000..32709b91446
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W076.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W077.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W077.pdf
new file mode 100644
index 00000000000..db62ce47beb
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W077.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W078.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W078.pdf
new file mode 100644
index 00000000000..867eb1b6c1d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W078.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W079.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W079.pdf
new file mode 100644
index 00000000000..78e325ce3d4
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W079.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W080.pdf b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W080.pdf
new file mode 100644
index 00000000000..b0b0b76b900
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety-pdfs/ISO_7010_W080.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/isosafety/isosafety.sty b/Master/texmf-dist/tex/latex/isosafety/isosafety.sty
index cab3cd68954..40cf3076281 100644
--- a/Master/texmf-dist/tex/latex/isosafety/isosafety.sty
+++ b/Master/texmf-dist/tex/latex/isosafety/isosafety.sty
@@ -1,14 +1,4 @@
-%%
-%% This is file `isosafety.sty',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% isosafety.dtx (with options: `package')
-%%
-%% This is a generated file.
-%%
-%% Copyright (C) 2023 by BenSt099
+%% Copyright (C) 2024 by BenSt099
%%
%% This file may be distributed and/or modified under the conditions of
%% the LaTeX Project Public License, either version 1.3 of this license
@@ -22,14 +12,17 @@
%%
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
\ProvidesPackage{isosafety}
- [2023/11/09 v1.1 ISO Safety Colors And Safety Signs]
+[2024/08/31 v1.4 ISO Safety Colors And Safety Signs]
\RequirePackage{graphicx}
\RequirePackage{xcolor}
+\RequirePackage{ifthen}
+\RequirePackage{xkeyval}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\definecolor{Warning}{HTML}{F9A800}
+\definecolor{Caution}{HTML}{F9A800}
+\definecolor{Warning}{HTML}{D05D29}
\definecolor{Prohibition}{HTML}{9B2423}
\definecolor{Mandatory}{HTML}{005387}
\definecolor{Rescue}{HTML}{237F52}
@@ -38,11 +31,17 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newcommand{\isosafetypath}{false}
+\DeclareOptionX{fullpath}{\renewcommand{\isosafetypath}{#1}}
+\ProcessOptionsX\relax
+
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\Isosign}[1]{isosafety-pdfs/ISO_7010_#1.pdf}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifthenelse{\equal{\isosafetypath}{false}}
+{\newcommand{\Isosign}[1]{/isosafety-pdfs/ISO_7010_#1.pdf}}
+{\newcommand{\Isosign}[1]{\isosafetypath /isosafety-pdfs/ISO_7010_#1.pdf}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\endinput
%%
-%% End of file `isosafety.sty'.
+%% End of file `isosafety.sty'. \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/iwonamath/iwonamath.sty b/Master/texmf-dist/tex/latex/iwonamath/iwonamath.sty
index e4679f35cc5..96a879699f5 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/iwonamath.sty
+++ b/Master/texmf-dist/tex/latex/iwonamath/iwonamath.sty
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
\ProvidesExplPackage {iwonamath}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\keys_define:nn { iwonamath/options }
{
@@ -67,6 +67,7 @@
\SetSymbolFont{symbols2} {bold}{OMS}{cmsy}{b}{n}
\DeclareMathDelimiter{\lVert}{\mathopen} {symbols2}{"6B}{largesymbols}{"0D}
\DeclareMathDelimiter{\rVert}{\mathclose}{symbols2}{"6B}{largesymbols}{"0D}
+ \DeclareMathDelimiter{\|}{\mathclose}{symbols2}{"6B}{largesymbols}{"0D}
}
{}
\DeclareDocumentCommand \DefineIwonaMathVersion { m }
diff --git a/Master/texmf-dist/tex/latex/iwonamath/omliwonamath.fd b/Master/texmf-dist/tex/latex/iwonamath/omliwonamath.fd
index eca19657e23..869b63021f1 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/omliwonamath.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/omliwonamath.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{omliwonamath.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/omliwonamathc.fd b/Master/texmf-dist/tex/latex/iwonamath/omliwonamathc.fd
index 452341075ff..567abb4d8c7 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/omliwonamathc.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/omliwonamathc.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{omliwonamathc.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/omliwonamathl.fd b/Master/texmf-dist/tex/latex/iwonamath/omliwonamathl.fd
index a0dba2a8290..c52bb24dcfd 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/omliwonamathl.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/omliwonamathl.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{omliwonamathl.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/omliwonamathlc.fd b/Master/texmf-dist/tex/latex/iwonamath/omliwonamathlc.fd
index 90d147d1ee2..ebfaea2b699 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/omliwonamathlc.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/omliwonamathlc.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{omliwonamathlc.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/omsiwonamath.fd b/Master/texmf-dist/tex/latex/iwonamath/omsiwonamath.fd
index 958053cd49a..7a0c889c7db 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/omsiwonamath.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/omsiwonamath.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{omsiwonamath.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/omsiwonamathc.fd b/Master/texmf-dist/tex/latex/iwonamath/omsiwonamathc.fd
index 02b892ffc55..22c17550110 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/omsiwonamathc.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/omsiwonamathc.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{omsiwonamathc.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/omsiwonamathcmsy.fd b/Master/texmf-dist/tex/latex/iwonamath/omsiwonamathcmsy.fd
index 107011cf5a7..5a66a04ae6e 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/omsiwonamathcmsy.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/omsiwonamathcmsy.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{omsiwonamathcmsy.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/omsiwonamathl.fd b/Master/texmf-dist/tex/latex/iwonamath/omsiwonamathl.fd
index d291ba7eb08..3e0815ef80b 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/omsiwonamathl.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/omsiwonamathl.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{omsiwonamathl.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/omsiwonamathlc.fd b/Master/texmf-dist/tex/latex/iwonamath/omsiwonamathlc.fd
index 55a040e93eb..8cdb0f65035 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/omsiwonamathlc.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/omsiwonamathlc.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{omsiwonamathlc.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/omxiwonamath.fd b/Master/texmf-dist/tex/latex/iwonamath/omxiwonamath.fd
index 662121a6be4..8b33fd85b99 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/omxiwonamath.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/omxiwonamath.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{omxiwonamath.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/omxiwonamathc.fd b/Master/texmf-dist/tex/latex/iwonamath/omxiwonamathc.fd
index fce676f1e8d..9738a6961d5 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/omxiwonamathc.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/omxiwonamathc.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{omxiwonamathc.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/omxiwonamathl.fd b/Master/texmf-dist/tex/latex/iwonamath/omxiwonamathl.fd
index 895f359e352..759ecad381b 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/omxiwonamathl.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/omxiwonamathl.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{omxiwonamathl.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/omxiwonamathlc.fd b/Master/texmf-dist/tex/latex/iwonamath/omxiwonamathlc.fd
index 85f60415e32..fbe5cdc48cc 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/omxiwonamathlc.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/omxiwonamathlc.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{omxiwonamathlc.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamath.fd b/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamath.fd
index 20be53c3aff..789656bfa71 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamath.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamath.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{ot1iwonamath.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathc.fd b/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathc.fd
index a0b92a2b372..182d34be2f9 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathc.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathc.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{ot1iwonamathc.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathcm.fd b/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathcm.fd
index a5e69e07ad4..4f49f9befbb 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathcm.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathcm.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{ot1iwonamathcm.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathl.fd b/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathl.fd
index 82060b21d1c..504e9c87ad8 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathl.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathl.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{ot1iwonamathl.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathlc.fd b/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathlc.fd
index c5b2f0024b2..5ad18477c78 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathlc.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathlc.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{ot1iwonamathlc.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathlcm.fd b/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathlcm.fd
index 130c63822eb..c1b3f9bb442 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathlcm.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathlcm.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{ot1iwonamathlcm.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathlm.fd b/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathlm.fd
index ab72419cd80..f15d880adc4 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathlm.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathlm.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{ot1iwonamathlm.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathm.fd b/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathm.fd
index 7a103a029b6..9f82d657344 100644
--- a/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathm.fd
+++ b/Master/texmf-dist/tex/latex/iwonamath/ot1iwonamathm.fd
@@ -22,7 +22,7 @@
%% in the same archive or directory.)
\ProvidesExplFile
{ot1iwonamathm.fd}
-{2023-08-31} {1.0}
+{2024-07-19} {1.1}
{Scaled Iwona math fonts}
\tl_if_exist:NTF \l__iwonamath_scale_tl
{}
diff --git a/Master/texmf-dist/tex/latex/jigsaw/jigsaw-doc-settings.sty b/Master/texmf-dist/tex/latex/jigsaw/jigsaw-doc-settings.sty
deleted file mode 100644
index 13a1498c38e..00000000000
--- a/Master/texmf-dist/tex/latex/jigsaw/jigsaw-doc-settings.sty
+++ /dev/null
@@ -1,196 +0,0 @@
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Personal helper theme for package documentations
-% Copyright samcarter
-%
-% This file may be distributed and/or modified
-% under the LaTeX Project Public License 1.3c or later
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-% Usage:
-% ln ~/Life/latex/beamertheme-sam/themesam.sty package-doc-settings.sty
-% \usepackage[
-% themecolor=samdblue
-% ]{\jobname-settings}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Colours
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\RequirePackage{xcolor}
-\definecolor{samyellow}{RGB}{246,193,65}
-\definecolor{samorange}{RGB}{241,147,45}
-\definecolor{samred}{RGB}{191,26,46}% TikZbricks
-\definecolor{sammagenta}{RGB}{170,42,104}% TikZmarmots
-\definecolor{samviolet}{RGB}{136,46,114}% TikZlings
-\definecolor{samlila}{RGB}{101,67,159}% Rainbow beamer theme
-\definecolor{samdblue}{RGB}{0,51,134}% beamer theme
-\definecolor{samlblue}{RGB}{22,89,155}% TikZducks
-\definecolor{samteal}{RGB}{25,143,157}% Tcolorbox beamer theme
-\definecolor{samlgreen}{RGB}{68,170,153}% Jigsaw
-\definecolor{samdgreen}{RGB}{78,178,125}
-\definecolor{samlgray}{RGB}{160,160,185}
-\definecolor{samdgray}{RGB}{60,60,85}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Package options
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\RequirePackage{xkeyval}
-\DeclareOptionX{themecolor}[samdblue]{\colorlet{themecolor}{#1}}
-\DeclareOptionX{listingcolor}[samlblue]{\colorlet{listingcolor}{#1}}
-\ExecuteOptionsX{themecolor,listingcolor}
-\ProcessOptionsX
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Packages
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\@ifclassloaded{beamer}{}{%
- \RequirePackage[english]{babel}
- \RequirePackage[paper=a4paper,margin=2.9cm]{geometry}
- \RequirePackage{scrlayer-scrpage}
- \let\hrulefillx\hrulefill
- \RequirePackage[bitstream-charter]{mathdesign}
- \let\hrulefill\hrulefillx
- \RequirePackage[hang,flushmargin,bottom]{footmisc}
- \RequirePackage{footnotehyper}
- \makesavenoteenv{tcolorbox}
- \RequirePackage[all]{nowidow}
- \RequirePackage[colorlinks=true,breaklinks=true,allcolors=themecolor,hyperfootnotes=false]{hyperref}
-}
-\RequirePackage[T1]{fontenc}
-\RequirePackage{xspace}
-\RequirePackage{inconsolata}% mono font with bold, but italic is missing
-% \RequirePackage[scale=0.85]{cascadia-code}
-% \AddToHook{cmd/ttfamily/before}{\fontseries{sl}}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Listings
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\RequirePackage[
- cachedir=./build/
-]{minted}
-
-% smuggling custom pygmentize style in cache folder
-% (a real pygmentise style would need installtion in some python folder)
-\begin{filecontents*}[noheader]{./build/sam.pygstyle}
-\makeatletter
-\def\PYG@reset{\let\PYG@it=\relax \let\PYG@bf=\relax%
- \let\PYG@ul=\relax \let\PYG@tc=\relax%
- \let\PYG@bc=\relax \let\PYG@ff=\relax}
-\def\PYG@tok#1{\csname PYG@tok@#1\endcsname}
-\def\PYG@toks#1+{\ifx\relax#1\empty\else%
- \PYG@tok{#1}\expandafter\PYG@toks\fi}
-\def\PYG@do#1{\PYG@bc{\PYG@tc{\PYG@ul{%
- \PYG@it{\PYG@bf{\PYG@ff{#1}}}}}}}
-\def\PYG#1#2{\PYG@reset\PYG@toks#1+\relax+\PYG@do{#2}}
-
-% optional arguments
-\expandafter\def\csname PYG@tok@na\endcsname{\def\PYG@tc##1{\textcolor{black}{##1}}}
-
-% macros
-\expandafter\def\csname PYG@tok@k\endcsname{\def\PYG@tc##1{\textcolor{listingcolor}{\bfseries ##1}}}
-% curly brakets
-\expandafter\def\csname PYG@tok@nb\endcsname{\def\PYG@tc##1{\textcolor{listingcolor}{\bfseries ##1}}}
-
-% comments (italics won't work with the inconsolata font)
-\expandafter\def\csname PYG@tok@c\endcsname{\def\PYG@tc##1{\textcolor{gray}{##1}}}
-
-\def\PYGZbs{\char`\\}
-\def\PYGZus{\char`\_}
-\def\PYGZob{\char`\{}
-\def\PYGZcb{\char`\}}
-\def\PYGZca{\char`\^}
-\def\PYGZam{\char`\&}
-\def\PYGZlt{\char`\<}
-\def\PYGZgt{\char`\>}
-\def\PYGZsh{\char`\#}
-\def\PYGZpc{\char`\%}
-\def\PYGZdl{\char`\$}
-\def\PYGZhy{\char`\-}
-\def\PYGZsq{\char`\'}
-\def\PYGZdq{\char`\"}
-\def\PYGZti{\char`\~}
-% for compatibility with earlier versions
-\def\PYGZat{@}
-\def\PYGZlb{[}
-\def\PYGZrb{]}
-\makeatother
-\end{filecontents*}
-
-\usemintedstyle{sam}
-\setminted{
- breaksymbolleft={},
- tabsize=2,
- breaklines=true,
-}
-\newminted[samcode]{latex}{}
-\newmintinline[saminline]{latex}{}
-
-% use non-bold and all coloured for inline code in articles
-\ifdefined\insertaspectratio\else
- \patchcmd{\minted@inputpyg@inline}{\minted@input}{\color{listingcolor}\renewcommand\textcolor[3][]{##3}\renewcommand\bfseries{}\minted@input}{}{}
-\fi
-
-\RequirePackage[most]{tcolorbox}
-\tcbuselibrary{minted}
-\tcbset{%
- colframe=themecolor,
- fonttitle=\bfseries,
- sidebyside,
- center lower,
- righthand width=5.7cm,
- bottom=2pt,
- top=2pt,
- left=3pt,
- right=3pt,
- sidebyside gap=10pt,
- lower separated=false,
- listing engine=minted,
- minted language=latex,
- colback=themecolor!10,
- sharp corners,
- boxrule=0pt,
- before title={\strut}
-}
-
-% avoid page breaks right in front of the tcolorbox
-\@ifclassloaded{beamer}{}{
- \tcbuselibrary{hooks}
- \tcbset{before pre={\nopagebreak[4]}}
-}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% document settings
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\@ifclassloaded{scrartcl}{%
- \KOMAoptions{parskip=half}
- \addtokomafont{sectioning}{\color{themecolor}}
- \addtokomafont{date}{\normalsize}
- \addtokomafont{author}{\normalsize}
- \setlength{\footnotemargin}{0.7em}
-}{}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Custom macros
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\providecommand*{\CTAN}{\textsc{CTAN}\xspace}
-\providecommand*{\TikZ}{Ti\emph{k}Z\xspace}
-\providecommand*{\miktex}{MiK\TeX\xspace}
-\providecommand*{\texlive}{\TeX{}Live\xspace}
-\providecommand*{\tikzbrick}{Ti\emph{k}Zbrick\xspace}
-\providecommand*{\tikzducks}{Ti\emph{k}Zducks\xspace}
-\providecommand*{\tikzlings}{Ti\emph{k}Zlings\xspace}
-\providecommand*{\tikzmarmots}{Ti\emph{k}Zmarmots\xspace}
-\providecommand*{\ConTeXt}{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt} \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/jlreq/jlreq-complements.sty b/Master/texmf-dist/tex/latex/jlreq/jlreq-complements.sty
index 80ab6206501..1dc817a1976 100644
--- a/Master/texmf-dist/tex/latex/jlreq/jlreq-complements.sty
+++ b/Master/texmf-dist/tex/latex/jlreq/jlreq-complements.sty
@@ -1,7 +1,6 @@
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{jlreq-complements}[2022/11/28 jlreq-complements]
-\RequirePackage{jlreq-helpers}[2022/11/28]
-\RequirePackage{l3keys2e}
+\ProvidesPackage{jlreq-complements}[2024/08/23 jlreq-complements]
+\RequirePackage{jlreq-helpers}[2024/02/13]
\ExplSyntaxOn
@@ -9,7 +8,7 @@
\str_new:N \g__jlreq_complements_engine_str
\tl_new:N \g__jlreq_complements_finally
-\keys_define:nn { jlreq-complements } {
+\DeclareKeys [jlreq-complements] {
setupname .code:n = {
\str_set:Nn \g__jlreq_complements_setupname_str {#1}
},
@@ -20,8 +19,8 @@
lualatex .code:n = { \str_set:Nn \g__jlreq_complements_engine_str { lualatex } },
lualatex .value_forbidden:n = true,
}
-\keys_set:nn { jlreq-complements } { setupname = jlreqcomplementssetup }
-\ProcessKeysOptions { jlreq-complements }
+\SetKeys [jlreq-complements] { setupname = jlreqcomplementssetup }
+\ProcessKeyOptions [jlreq-complements]
\str_if_empty:NT \g__jlreq_complements_engine_str {
\jlreq@helper@guessengine
@@ -37,7 +36,8 @@
\str_if_eq:VnTF \g__jlreq_complements_engine_str { lualatex } {
\prg_new_conditional:Nnn \__jlreq_complements_iftdir: { T, F, TF} {
- \int_compare_p:n { (\ltjgetparameter{direction}-(\ltjgetparameter{direction}/8)*8) == 3 }
+ \int_compare:nTF { (\ltjgetparameter{direction}-(\ltjgetparameter{direction}/8)*8) == 3 }
+ { \prg_return_true: } { \prg_return_false: }
}
}{
\prg_new_conditional:Nnn \__jlreq_complements_iftdir: { T, F, TF} { \iftdir \prg_return_true: \else \prg_return_false: \fi }
diff --git a/Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty b/Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty
index ec65cabae91..1cded80d8cb 100644
--- a/Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty
+++ b/Master/texmf-dist/tex/latex/jlreq/jlreq-trimmarks.sty
@@ -1,6 +1,5 @@
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{jlreq-trimmarks}[2024/02/13 jlreq-trimmarks]
-\RequirePackage{l3keys2e}
+\ProvidesPackage{jlreq-trimmarks}[2024/08/23 jlreq-trimmarks]
\RequirePackage{jlreq-helpers}[2024/02/13]
\ExplSyntaxOn
@@ -42,13 +41,13 @@
}
% dvipdfmx=f,dvips=s,dviout = o, lualatex = l
-\keys_define:nn { jlreq-trimmarks } {
+\DeclareKeys [jlreq-trimmarks] {
dvipdfmx .code:n = {\let\jlreq@trimmarks@driver=f}, .value_forbidden:n = true,
dvips .code:n = {\let\jlreq@trimmarks@driver=s}, .value_forbidden:n = true,
dviout .code:n = {\let\jlreq@trimmarks@driver=o}, .value_forbidden:n = true
}
\let\jlreq@trimmarks@engine=\jlreq@engine
-\keys_define:nn { jlreq-trimmarks } {
+\DeclareKeys [jlreq-trimmarks] {
lualatex .code:n = {\let\jlreq@trimmarks@engine=l}, .value_forbidden:n = true,
uplatex .code:n = {\let\jlreq@trimmarks@engine=u}, .value_forbidden:n = true,
platex .code:n = {\let\jlreq@trimmarks@engine=p}, .value_forbidden:n = true
@@ -156,7 +155,7 @@
}
\__jlreq_trimmarks_afterpkg_addtodeletecs:N \jlreq@trimmarks@analyzepapersize
-\keys_define:nn { jlreq-trimmarks } { trimmarks_paper .tl_set:N = \jlreq@trimmarks@option@papersize }
+\DeclareKeys [jlreq-trimmarks] { trimmarks_paper .tl_set:N = \jlreq@trimmarks@option@papersize }
\__jlreq_trimmarks_afterpkg_addtodeletecs:N \jlreq@trimmarks@option@papersize
\newif\ifjlreq@trimmarks@digital \jlreq@trimmarks@digitaltrue
@@ -166,7 +165,7 @@
% flag: `show` is specified or not
\newif\ifjlreq@trimmarks@option@show \jlreq@trimmarks@option@showfalse
-\keys_define:nn { jlreq-trimmarks } {
+\DeclareKeys [jlreq-trimmarks] {
show .code:n = {
\jlreq@trimmarks@option@showtrue
\jlreq@ifempty{#1}{
@@ -214,14 +213,14 @@
}
\newif\ifjlreq@trimmarks@landscape \jlreq@trimmarks@landscapefalse
-\keys_define:nn { jlreq-trimmarks } { landscape .code:n = {\jlreq@trimmarks@landscapetrue}, .value_forbidden:n = true }
+\DeclareKeys [jlreq-trimmarks] { landscape .code:n = {\jlreq@trimmarks@landscapetrue}, .value_forbidden:n = true }
\__jlreq_trimmarks_afterpkg_addtodeleteif:N \ifjlreq@trimmarks@landscape
-\keys_set:nn { jlreq-trimmarks } {
+\SetKeys [jlreq-trimmarks] {
trimmarks_paper = {+2in},
bleed_margin = { top = 3mm, bottom = 3mm, gutter = 3mm, fore-edge = 3mm },
}
-\ProcessKeysOptions { jlreq-trimmarks }
+\ProcessKeyOptions [jlreq-trimmarks]
\ifjlreq@trimmarks@option@show\else
\ifx o\jlreq@trimmarks@driver
diff --git a/Master/texmf-dist/tex/latex/jlreq/jlreq.cls b/Master/texmf-dist/tex/latex/jlreq/jlreq.cls
index b8e5c3dbcb1..8ad7d8c9f7f 100644
--- a/Master/texmf-dist/tex/latex/jlreq/jlreq.cls
+++ b/Master/texmf-dist/tex/latex/jlreq/jlreq.cls
@@ -5,28 +5,39 @@
%%
% (based on JLReq 20200811 https://www.w3.org/TR/2020/NOTE-jlreq-20200811/)
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{jlreq}[2024/02/16 jlreq]
-\RequirePackage{l3keys2e}
+\ProvidesClass{jlreq}[2024/09/26 jlreq]
\RequirePackage{etoolbox}
\RequirePackage{jlreq-helpers}[2024/02/13]
\ExplSyntaxOn
+\cs_new:Nn \l_jlreq_do: {}
\int_new:N \l__jlreq_tmpa_int
+\int_new:N \l__jlreq_tmpb_int
+\int_new:N \l__jlreq_tmpc_int
\tl_new:N \l__jlreq_tmpa_tl
\tl_new:N \l__jlreq_tmpb_tl
\tl_new:N \l__jlreq_tmpc_tl
-\cs_new:Nn \l_jlreq_do: {}
\str_new:N \l__jlreq_tmpa_str
\str_new:N \l__jlreq_tmpb_str
\str_new:N \l__jlreq_tmpc_str
-\bool_new:N \l_jlreq_tmpa_bool
-\clist_new:N \l_jlreq_tmpa_clist
+\bool_new:N \l__jlreq_tmpa_bool
+\bool_new:N \l__jlreq_tmpb_bool
+\bool_new:N \l__jlreq_tmpc_bool
+\clist_new:N \l__jlreq_tmpa_clist
+\clist_new:N \l__jlreq_tmpb_clist
+\clist_new:N \l__jlreq_tmpc_clist
\seq_new:N \l__jlreq_tmpa_seq
+\seq_new:N \l__jlreq_tmpb_seq
+\seq_new:N \l__jlreq_tmpc_seq
\dim_new:N \l__jlreq_tmpa_dim
-\skip_new:N \l_jlreq_tmpa_skip
-\box_new:N \l_jlreq_tmpa_box
-\box_new:N \l_jlreq_tmpb_box
-\box_new:N \l_jlreq_tmpc_box
+\dim_new:N \l__jlreq_tmpb_dim
+\dim_new:N \l__jlreq_tmpc_dim
+\skip_new:N \l__jlreq_tmpa_skip
+\skip_new:N \l__jlreq_tmpb_skip
+\skip_new:N \l__jlreq_tmpc_skip
+\box_new:N \l__jlreq_tmpa_box
+\box_new:N \l__jlreq_tmpb_box
+\box_new:N \l__jlreq_tmpc_box
\prop_new:N \l__jlreq_tmpa_prop
\prop_new:N \l__jlreq_tmpb_prop
\prop_new:N \l__jlreq_tmpc_prop
@@ -91,7 +102,8 @@
% ものは\jlreq@option@<key>に格納する.
% _とかは@に変換する.
% エンジン類
-\keys_define:nn { jlreq } {
+\DeclareKeys [jlreq] {
+ name.usage = load,
uplatex .code:n = { \let\jlreq@engine=u }, uplatex .value_forbidden:n = true,
platex .code:n = { \let\jlreq@engine=p }, platex .value_forbidden:n = true,
lualatex .code:n = { \let\jlreq@engine=l }, lualatex .value_forbidden:n = true,
@@ -115,13 +127,13 @@
\tl_gput_right:Nn \g__jlreq_papersizelist_tl { { ##1 } { \setlength{\paperwidth}{#3} \setlength{\paperheight}{#4} } }
}
\clist_map_inline:nn {#2} {
- \keys_define:nn { jlreq } {
+ \DeclareKeys [jlreq] {
##1 .code:n = { \setlength{\paperwidth}{#3} \setlength{\paperheight}{#4} },
##1 .value_forbidden:n = true
}
}
}
-\keys_define:nn { jlreq } {
+\DeclareKeys [jlreq] {
paper .code:n = {
\str_case:nVF {#1} \g__jlreq_papersizelist_tl {
\jlreq@helper@dividebycomma{#1}%
@@ -153,7 +165,7 @@
}
\clist_map_inline:nn {#2} {
\cs_set:Nx \l__jlreq_do: {
- \exp_not:N \keys_define:nn { jlreq } {
+ \exp_not:N \DeclareKeys [jlreq] {
##1 .code:n = {
\exp_not:o { \l__jlreq_tmpa:n {##1} }
\exp_not:n { \setlength{\paperwidth}{#3} \setlength{\paperheight}{#4} }
@@ -276,7 +288,7 @@
%.. フォントサイズ,行長,1ページあたりの行数で基本版面のサイズを決める(2.4.1.a)
\__jlreq_aftercls_addtodeletecs:N \jlreq@option@fontsize
-\keys_define:nn { jlreq } {
+\DeclareKeys [jlreq] {
fontsize .tl_set:N = \jlreq@option@fontsize,
10pt .code:n = {\def\jlreq@option@fontsize{10pt}}, 10pt .value_forbidden:n = true,
11pt .code:n = {\def\jlreq@option@fontsize{11pt}}, 11pt .value_forbidden:n = true,
@@ -287,69 +299,68 @@
\__jlreq_aftercls_addtodeletecs:N \jlreq@option@jafontsize
\__jlreq_aftercls_addtodeletecs:N \jlreq@option@jafontscale
%.. 行の長さ
-\keys_define:nn { jlreq } { line_length .tl_set:N = \jlreq@option@line@length }
+\DeclareKeys [jlreq] { line_length .tl_set:N = \jlreq@option@line@length }
\__jlreq_aftercls_addtodeletecs:N \jlreq@option@line@length
%.. 1ページあたりの行数
-\keys_define:nn { jlreq } { number_of_lines .tl_set:N = \jlreq@option@number@of@lines }
+\DeclareKeys [jlreq] { number_of_lines .tl_set:N = \jlreq@option@number@of@lines }
\__jlreq_aftercls_addtodeletecs:N \jlreq@option@number@of@lines
% 地の空き量,のどの空き量で配置位置を決める(2.4.1.b)省略されたら中央配置.
%.. 天
-\keys_define:nn { jlreq } { head_space .tl_set:N = \jlreq@option@head@space }
+\DeclareKeys [jlreq] { head_space .tl_set:N = \jlreq@option@head@space }
\__jlreq_aftercls_addtodeletecs:N \jlreq@option@head@space
%.. 地
-\keys_define:nn { jlreq } { foot_space .tl_set:N = \jlreq@option@foot@space }
+\DeclareKeys [jlreq] { foot_space .tl_set:N = \jlreq@option@foot@space }
\__jlreq_aftercls_addtodeletecs:N \jlreq@option@foot@space
%.. のど
-\keys_define:nn { jlreq } { gutter .tl_set:N = \jlreq@option@gutter }
+\DeclareKeys [jlreq] { gutter .tl_set:N = \jlreq@option@gutter }
\__jlreq_aftercls_addtodeletecs:N \jlreq@option@gutter
%.. 小口
\__jlreq_aftercls_addtodeletecs:N \jlreq@option@fore@edge
-\keys_define:nn { jlreq } {
+\DeclareKeys [jlreq] {
fore_edge .tl_set:N = \jlreq@option@fore@edge,
fore-edge .tl_set:N = \jlreq@option@fore@edge
}
%.. 柱とノンブル
% 本文とヘッダ/フッタの間の空き
-\keys_define:nn { jlreq } { headfoot_verticalposition .tl_set:N = \jlreq@option@headfoot@verticalpos }
+\DeclareKeys [jlreq] { headfoot_verticalposition .tl_set:N = \jlreq@option@headfoot@verticalpos }
\__jlreq_aftercls_addtodeletecs:N \jlreq@option@headfoot@verticalpos
% 柱やノンブルの左右の空き
-\keys_define:nn { jlreq } { headfoot_sidemargin .tl_set:N = \jlreq@headfoot@sidemargin }
+\DeclareKeys [jlreq] { headfoot_sidemargin .tl_set:N = \jlreq@headfoot@sidemargin }
%.. 段間
-\keys_define:nn { jlreq } { column_gap .tl_set:N = \jlreq@option@column@gap }
+\DeclareKeys [jlreq] { column_gap .tl_set:N = \jlreq@option@column@gap }
\__jlreq_aftercls_addtodeletecs:N \jlreq@option@column@gap
%.. 行送り,指定無しの場合は文字サイズの1.7倍とする.(1.5から2倍が好ましい:2.4.2.d 注3)
-\keys_define:nn { jlreq } {
- baselineskip .tl_set:N = \jlreq@option@baselineskip,
- linegap .code:n = { \def\jlreq@option@baselineskip{1zw + #1} }
+\DeclareKeys [jlreq] {
+ baselineskip .tl_set:N = \jlreqbaselineskip,
+ linegap .code:n = { \def\jlreqbaselineskip{1zw + #1} }
}
-\__jlreq_aftercls_addtodeletecs:N \jlreq@option@baselineskip
%.. 組み方系
% 行頭に括弧が来たときの配置:3.1.5
% 段落頭指定_折り返し行頭指定 で与える.
-\keys_define:nn { jlreq } { open_bracket_pos .choices:nn = {zenkaku_tentsuki,zenkakunibu_nibu,nibu_tentsuki}{\def\jlreq@open@bracket@pos{#1}} }
+\DeclareKeys [jlreq] { open_bracket_pos .choices:nn = {zenkaku_tentsuki,zenkakunibu_nibu,nibu_tentsuki}{\def\jlreq@open@bracket@pos{#1}} }
% ぶら下げ組みをするか:3.8.2 注1
\newif\ifjlreq@burasage\jlreq@burasagefalse
-\keys_define:nn { jlreq } { hanging_punctuation .code:n = {\jlreq@burasagetrue}, hanging_punctuation .value_forbidden:n = true}
+\DeclareKeys [jlreq] { hanging_punctuation .code:n = {\jlreq@burasagetrue}, hanging_punctuation .value_forbidden:n = true}
% jsarticleと同じkanjiskipを使う
\newif\ifjlreq@narrow@kanjiskip\jlreq@narrow@kanjiskipfalse
-\keys_define:nn { jlreq } { narrow_kanjiskip .code:n = {\jlreq@narrow@kanjiskiptrue}, narrow_kanjiskip .value_forbidden:n = true}
+\DeclareKeys [jlreq] { narrow_kanjiskip .code:n = {\jlreq@narrow@kanjiskiptrue}, narrow_kanjiskip .value_forbidden:n = true}
\__jlreq_aftercls_addtodeleteif:N \ifjlreq@narrow@kanjiskip
%.. 注
% 傍注のタイプ
-\keys_define:nn { jlreq } { sidenote_length .tl_set:N = \jlreq@option@sidenote@length }
+\DeclareKeys [jlreq] { sidenote_length .tl_set:N = \jlreq@option@sidenote@length }
\__jlreq_aftercls_addtodeletecs:N \jlreq@option@sidenote@length
%.. 逆ノンブル
\newif\ifjlreq@option@use@reverse@pagination
\__jlreq_aftercls_addtodeleteif:N \ifjlreq@option@use@reverse@pagination
\jlreq@option@use@reverse@paginationfalse
-\keys_define:nn { jlreq } { use_reverse_pagination .code:n = {\jlreq@option@use@reverse@paginationtrue}, use_reverse_pagination .value_forbidden:n = true }
+\DeclareKeys [jlreq] { use_reverse_pagination .code:n = {\jlreq@option@use@reverse@paginationtrue}, use_reverse_pagination .value_forbidden:n = true }
%.. もろもろ
\newif\if@restonecol\@restonecolfalse
@@ -358,7 +369,7 @@
\newif\if@tate \@tatefalse
\newif\ifjlreq@option@titlepage \jlreq@option@titlepagefalse % titlepageかnotitlepageかが指定された
\__jlreq_aftercls_addtodeleteif:N \ifjlreq@option@titlepage
-\keys_define:nn { jlreq } {
+\DeclareKeys [jlreq] {
landscape .code:n = {\@landscapetrue}, landscape .value_forbidden:n = true,
tombo .code:n = {\ClassWarningNoLine{jlreq}{The~option~`tombo'~is~not~supported~by~jlreq~class.~Please~use~the~jlreq-trimmarks~package}},
tombow .code:n = {\ClassWarningNoLine{jlreq}{The~option~`tombow'~is~not~supported~by~jlreq~class.~Please~use~the~jlreq-trimmarks~package}},
@@ -368,7 +379,7 @@
\newif\ifjlreq@option@twoside\jlreq@option@twosidefalse % onesideかtwosideが指定された
\__jlreq_aftercls_addtodeleteif:N \ifjlreq@option@twoside
-\keys_define:nn { jlreq } {
+\DeclareKeys [jlreq] {
oneside .code:n = { \@twosidefalse\@mparswitchfalse\jlreq@option@twosidetrue }, oneside .value_forbidden:n = true,
twoside .code:n = { \@twosidetrue\@mparswitchtrue\jlreq@option@twosidetrue }, twoside .value_forbidden:n = true,
onecolumn .code:n = { \@twocolumnfalse }, onecolumn .value_forbidden:n = true,
@@ -381,7 +392,7 @@
\newif\if@openright
\newif\ifjlreq@option@open \jlreq@option@openfalse % openrightかopenanyが指定された
\__jlreq_aftercls_addtodeleteif:N \ifjlreq@option@open
-\keys_define:nn { jlreq } {
+\DeclareKeys [jlreq] {
openright .code:n = { \@openrighttrue\jlreq@option@opentrue }, openright .value_forbidden:n = true,
openany .code:n = { \@openrightfalse\jlreq@option@opentrue }, openany .value_forbidden:n = true,
leqno .code:n = { \input{leqno.clo } }, leqno .value_forbidden:n = true,
@@ -389,12 +400,12 @@
}
\newif\ifjlreq@option@enablejfam \jlreq@option@enablejfamtrue
\__jlreq_aftercls_addtodeleteif:N \ifjlreq@option@enablejfam
-\keys_define:nn { jlreq } { disablejfam .code:n = { \jlreq@option@enablejfamfalse }, disablejfam .value_forbidden:n = true}
+\DeclareKeys [jlreq] { disablejfam .code:n = { \jlreq@option@enablejfamfalse }, disablejfam .value_forbidden:n = true}
\def\jlreq@note#1{}
-\keys_define:nn { jlreq } { jlreq_notes .code:n = { \def\jlreq@note##1{\message{^^JJLReq note: ##1^^J}}}, jlreq_notes .value_forbidden:n = true}
+\DeclareKeys [jlreq] { jlreq_notes .code:n = { \def\jlreq@note##1{\message{^^JJLReq note: ##1^^J}}}, jlreq_notes .value_forbidden:n = true}
-\keys_set:nn { jlreq } {
+\SetKeys [jlreq] {
article_type=article,paper=a4,
number_of_lines={},line_length = {},
head_space={},foot_space={},gutter={},fore_edge={},
@@ -402,8 +413,9 @@
sidenote_length=0pt,column_gap={2zw},
headfoot_verticalposition = {},headfoot_sidemargin={0pt},
open_bracket_pos=zenkaku_tentsuki,
- onecolumn,final }
-\ProcessKeysOptions { jlreq }
+ onecolumn,final
+}
+\ProcessKeyOptions [jlreq]
\legacy_if:nF { jlreq@option@titlepage } {
\str_if_eq:VnTF \jlreq@article@type { article } { \@titlepagefalse } { \@titlepagetrue }
@@ -1189,23 +1201,22 @@
% \baselineskipの計算
% いったん文字サイズを変更((u)platexの際にzh/zwをきちんとするため)
\@setfontsize\normalsize{\jlreq@fontsize}{\jlreq@fontsize}%
-\newdimen\jlreq@baselineskip
+% 現在の\baselineskipを計算し#1に入れる
\ifx l\jlreq@engine
- \setlength{\jlreq@baselineskip}{%
- \dimexpr\directlua{
+ \edef\jlreqbaselineskip{
+ \directlua{
local~act = string.char(92)~
- local~s = [[\jlreq@option@baselineskip]]~
+ local~s = [[\jlreqbaselineskip]]~
s = s:gsub("[QH]",act .. "dimexpr 0.25mm" .. act .. "relax"):gsub("zh",act .. "zh"):gsub("zw",act .. "zw")~
- tex.print(s)~
- }\relax
- }%
-\else
- \setlength{\jlreq@baselineskip}{\dimexpr\jlreq@option@baselineskip\relax}
+ tex.print(act .. "unexpanded{" .. s .. "}")~
+ }
+ }
\fi
-\ifdim\jlreq@fontsize>\jlreq@baselineskip
+\dim_set:Nn \l__jlreq_tmpa_dim {\jlreqbaselineskip}
+\ifdim\jlreq@fontsize>\l__jlreq_tmpa_dim
\ClassError{jlreq}{The~baselineskip~is~less~than~fontsize}{\@ehc}%
\fi
-\bool_if:nT { \dim_compare_p:n { \jlreq@baselineskip < 1.5\zw } || \dim_compare_p:n { \jlreq@baselineskip > 2\zw } } {
+\bool_if:nT { \dim_compare_p:n { \l__jlreq_tmpa_dim < 1.5\zw } || \dim_compare_p:n { \l__jlreq_tmpa_dim > 2\zw } } {
\jlreq@note { 行間は二分以上全角以下が望ましい (2.4.2.d~注3).}
}
@@ -1266,7 +1277,7 @@
\fi
\renewcommand{\normalsize}{%
- \@setfontsize\normalsize{\jlreq@fontsize}{\jlreq@baselineskip}%
+ \@setfontsize\normalsize{\jlreq@fontsize}{\dimexpr\jlreqbaselineskip\relax}%
\abovedisplayskip 1.1\jlreq@fontsize \@plus .3\jlreq@fontsize \@minus .4\jlreq@fontsize
\abovedisplayshortskip \z@ \@plus .3\jlreq@fontsize
\belowdisplayskip .9\jlreq@fontsize \@plus.3\jlreq@fontsize \@minus.4\jlreq@fontsize
@@ -1286,26 +1297,49 @@
% 2.5.2 \baselineskipは一定の方がよい?
% \@listiは再定義しないようにした.(\normalsizeと共用でJLReq通りだと思う.)
\newcommand{\footnotesize}{%
- \@setfontsize\footnotesize{.8\jlreq@fontsize}{\dimexpr 115\jlreq@baselineskip/170\relax}% 脚注文字サイズの二分より少し小さい値を行間に: 4.2.5.e
+ \setlength{\jlreq@tempdima}{\dimexpr\jlreqbaselineskip\relax}
+ \@setfontsize\footnotesize{.8\jlreq@fontsize}{\dimexpr 115\jlreq@tempdima/170\relax}% 脚注文字サイズの二分より少し小さい値を行間に: 4.2.5.e
\abovedisplayskip .6\jlreq@fontsize \@plus.2\jlreq@fontsize \@minus.4\jlreq@fontsize
\abovedisplayshortskip \z@ \@plus.1\jlreq@fontsize
\belowdisplayshortskip .3\jlreq@fontsize \@plus.1\jlreq@fontsize \@minus.2\jlreq@fontsize
\belowdisplayskip \abovedisplayskip}
-% tsize10.cloの引数を,そのまま\jlreq@fontsize/\jlreq@baselineskipでスケーリングしているだけ.
+% tsize10.cloの引数を,そのまま\jlreq@fontsize/\jlreqbaselineskipでスケーリングしているだけ.
\newcommand{\small}{%
% jsarticleのもの
- \@setfontsize\small{.9\jlreq@fontsize}{\dimexpr 13\jlreq@baselineskip/17\relax}%
+ \setlength{\jlreq@tempdima}{\dimexpr\jlreqbaselineskip\relax}
+ \@setfontsize\small{.9\jlreq@fontsize}{\dimexpr 13\jlreq@tempdima/17\relax}%
\abovedisplayskip .9\jlreq@fontsize \@plus.3\jlreq@fontsize \@minus.4\jlreq@fontsize
\abovedisplayshortskip \z@ \@plus.3\jlreq@fontsize
\belowdisplayshortskip \abovedisplayshortskip
\belowdisplayskip \abovedisplayskip}
-\newcommand{\scriptsize}{\@setfontsize\scriptsize{\dimexpr 7\jlreq@fontsize/10\relax}{\dimexpr 8\jlreq@baselineskip/17\relax}}
-\newcommand{\tiny}{\@setfontsize\tiny{\dimexpr 5\jlreq@fontsize/10\relax}{\dimexpr 6\jlreq@baselineskip/17\relax}}
-\newcommand{\large}{\@setfontsize\large{\dimexpr12\jlreq@fontsize/10\relax}{\jlreq@baselineskip}}
-\newcommand{\Large}{\@setfontsize\Large{\dimexpr14\jlreq@fontsize/10\relax}{\dimexpr 21\jlreq@baselineskip/17\relax}}
-\newcommand{\LARGE}{\@setfontsize\LARGE{\dimexpr17\jlreq@fontsize/10\relax}{\dimexpr 25\jlreq@baselineskip/17\relax}}
-\newcommand{\huge}{\@setfontsize\huge{2\jlreq@fontsize}{\dimexpr 28\jlreq@baselineskip/17\relax}}
-\newcommand{\Huge}{\@setfontsize\Huge{\dimexpr 25\jlreq@fontsize/10\relax}{\dimexpr 33\jlreq@baselineskip/17\relax}}
+\newcommand{\scriptsize}{
+ \setlength{\jlreq@tempdima}{\dimexpr\jlreqbaselineskip\relax}
+ \@setfontsize\scriptsize{\dimexpr 7\jlreq@fontsize/10\relax}{\dimexpr 8\jlreq@tempdima/17\relax}
+}
+\newcommand{\tiny}{
+ \setlength{\jlreq@tempdima}{\dimexpr\jlreqbaselineskip\relax}
+ \@setfontsize\tiny{\dimexpr 5\jlreq@fontsize/10\relax}{\dimexpr 6\jlreq@tempdima/17\relax}
+}
+\newcommand{\large}{
+ \setlength{\jlreq@tempdima}{\dimexpr\jlreqbaselineskip\relax}
+ \@setfontsize\large{\dimexpr12\jlreq@fontsize/10\relax}{\jlreq@tempdima}
+}
+\newcommand{\Large}{
+ \setlength{\jlreq@tempdima}{\dimexpr\jlreqbaselineskip\relax}
+ \@setfontsize\Large{\dimexpr14\jlreq@fontsize/10\relax}{\dimexpr 21\jlreq@tempdima/17\relax}
+}
+\newcommand{\LARGE}{
+ \setlength{\jlreq@tempdima}{\dimexpr\jlreqbaselineskip\relax}
+ \@setfontsize\LARGE{\dimexpr17\jlreq@fontsize/10\relax}{\dimexpr 25\jlreq@tempdima/17\relax}
+}
+\newcommand{\huge}{
+ \setlength{\jlreq@tempdima}{\dimexpr\jlreqbaselineskip\relax}
+ \@setfontsize\huge{2\jlreq@fontsize}{\dimexpr 28\jlreq@tempdima/17\relax}
+}
+\newcommand{\Huge}{
+ \setlength{\jlreq@tempdima}{\dimexpr\jlreqbaselineskip\relax}
+ \@setfontsize\Huge{\dimexpr 25\jlreq@fontsize/10\relax}{\dimexpr 33\jlreq@tempdima/17\relax}
+}
%. plextから拝借
\def\jlreq@Kanji#1{\expandafter\kansuji\csname c@#1\endcsname}
@@ -1833,42 +1867,32 @@
%.. 別行見出し
% \jlreq@BlockHeading@start:別行見出しを出力する命令.
-% \jlreq@BlockHeading@start{1 = 命令名}{2 = レベル}{3 = スペース関連}{4 = カウンタ関連}{5 = フォーマット関連}{6 = 全体フォーマット}*{見出し}[副題]
+% \jlreq@BlockHeading@start{1 = 命令名}{2 = レベル}{3 = スペース関連}{4 = カウンタ関連}*[running head]{見出し}[副題]
% カウンタ関連=-,*,無し:-はカウンタ関連を処理しない.*はさらに目次に追加しない(星付き命令と同様).星付きで呼び出された時は常に*同等.
% スペース関連={配置:lcr(左中央右)}{字下げ(寸法)}{字上げ(寸法)}{前空き}{後空き}{行取りの行数}{空か*か,偶数ページでも改ページを許可するならば空}
% 前/後空きはprefixにa:/s:/r:が入る.r:は空きがその値そのものになる.a:/s:は行取りに加えて入る.a:で指定された空きはページ行頭では入らない
% 後空きの時はs:は指定できない.
-% フォーマット関連:
-% フォーマット関連={{ラベルのみのフォーマット}{ラベルフォーマット}{見出し文字列フォーマット}{見出し文字列フォーマット(ラベル無し)}{副題フォーマット}{副題フォーマット(ラベル無し)}}{{前フォーマットラベルあり}{前フォーマットラベルなし}{見出し全体のフォーマット}{後ろフォーマットラベルあり}{後ろフォーマットラベルなし}}
+% フォーマット関連:あらかじめマクロに入れておく
+% \jlreq@BlockHeading@start@eachformat: {ラベルのみのフォーマット}{ラベルフォーマット}{見出し文字列フォーマット}{見出し文字列フォーマット(ラベル無し)}{副題フォーマット}{副題フォーマット(ラベル無し)}
+% \jlreq@BlockHeading@start@format: {前フォーマットラベルあり}{前フォーマットラベルなし}{見出し全体のフォーマット}{後ろフォーマットラベルあり}{後ろフォーマットラベルなし}
+% \jlreq@BlockHeading@start@totalformat: 全体フォーマット
% 見出しそのものは「全体フォーマット」に従い出力される.パラメータトークン#1を含み,#1=見出し本体:スペース関連と上の「見出し全体のフォーマット」に基づいて整形される.
% 見出し全体のフォーマット内では#1=ラベル,#2=見出し文字列,#3=副題,それぞれ各々のフォーマットに基づき整形される.
% ラベルフォーマットでは#1=カウンタ名,見出し文字列フォーマットでは#1=見出し文字列,副題フォーマットでは#1=副題
% ラベルのみのフォーマットは目次に使われる.
-\long\def\jlreq@BlockHeading@start#1#2#3#4#5#6{%
- \if@noskipsec\leavevmode\fi
- % #5と#6は\parを含むかもしれないので引数渡しはしない(後の\@ifstarで詰まる)
- \edef\jlreq@BlockHeading@start@eachformat{\exp_not:o {\@firstoftwo#5}}%
- \edef\jlreq@BlockHeading@start@format{\exp_not:o {\@secondoftwo#5}}%
- \edef\jlreq@BlockHeading@start@totalformat{\unexpanded{#6}}%
- \jlreq@BlockHeading@start@{#1}{#2}{#3}{#4}%
-}
-% {1 = 命令}{2 = レベル}{3 = スペース関連}
-\long\def\jlreq@BlockHeading@start@#1#2#3#4{%
- \@ifstar{\@dblarg{\jlreq@BlockHeading@start@@{#1}{#2}{#3}{*}}}{\@dblarg{\jlreq@BlockHeading@start@@{#1}{#2}{#3}{#4}}}%
-}
% {1 = 命令}{2 = レベル}{3 = スペース関連}{4 = *}[5 = running head]{6 = 見出し}
-\long\def\jlreq@BlockHeading@start@@#1#2#3#4[#5]#6{%
- \@ifnextchar[{\jlreq@BlockHeading@start@@@{#1}{#2}{#3}{#4}{#5}{#6}}{\jlreq@BlockHeading@start@@@{#1}{#2}{#3}{#4}{#5}{#6}[]}%
+\long\def\jlreq@BlockHeading@start#1#2#3#4[#5]#6{%
+ \@ifnextchar[{\jlreq@BlockHeading@start@i{#1}{#2}{#3}{#4}{#5}{#6}}{\jlreq@BlockHeading@start@i{#1}{#2}{#3}{#4}{#5}{#6}[]}%
}
% {1 = 命令}{2 = レベル}{3 = スペース関連}{4 = *}{5 = running head}{6 = 見出し}[7 = 副題]
-\long\def\jlreq@BlockHeading@start@@@#1#2#3#4#5#6[#7]{%
- \edef\jlreq@do{\unexpanded{\jlreq@BlockHeading@start@@@@{#1}{#2}{#3}}{\exp_not:o {\jlreq@BlockHeading@start@totalformat}}}%
+\long\def\jlreq@BlockHeading@start@i#1#2#3#4#5#6[#7]{%
+ \edef\jlreq@do{\unexpanded{\jlreq@BlockHeading@start@ii{#1}{#2}{#3}}{\exp_not:o {\jlreq@BlockHeading@start@totalformat}}}%
\jlreq@do{#4}{#5}{#6}{#7}%
}
% {1 = 命令}{2 = レベル}{3 = スペース関連}{4 = 全フォーマット}{5 = *}{6 = running head}{7 = 見出し}{8 = 副題}
-\long\def\jlreq@BlockHeading@start@@@@#1#2#3#4#5#6#7#8{%
+\long\def\jlreq@BlockHeading@start@ii#1#2#3#4#5#6#7#8{%
\global\advance\jlreq@BlockHeading@spaces@current@count by 1
\tl_gput_right:Nn \jlreq@BlockHeading@spaces@current@sequence {_#1}%
\edef\jlreq@tempa##1##2##3##4##5##6##7{%
@@ -2200,18 +2224,12 @@
\jlreq@ifgluezero\jlreq@tempskipb{}{\vskip\jlreq@tempskipb}%
\edef\jlreq@do{%
\dim_compare:nF { \parskip=0pt } {
-% \exp_not:N \cs_set:Nn \exp_not:N \g__jlreq_gyodori_hook_par: {
-% \noexpand\parskip=\the\parskip\noexpand\relax
-% \exp_not:n { \cs_set:Nn \g__jlreq_gyodori_hook_par: {} }
-% }
\exp_not:N \AddToHook { para/before } { \noexpand\parskip=\the\parskip\noexpand\relax }
\noexpand\parskip=0pt
}
}%
\expandafter}\jlreq@do
}
-%\cs_set:Nn \g__jlreq_gyodori_hook_par: {}
-%\PushPostHook{par}{\g__jlreq_gyodori_hook_par:}
% 行取り情報をゲットだぜ
@@ -2498,34 +2516,46 @@
\def\jlreq@totalformat@after{}%
}%
\fi
+ % フォーマットを指定のマクロに入れる命令群
+ \tl_set:Nx \l__jlreq_tmpa_tl {
+ \exp_not:n {\edef\jlreq@BlockHeading@start@eachformat}{\exp_not:N \unexpanded{%
+ {\exp_not:o {\jlreq@label@format}}{\exp_not:o {\jlreq@label@format@modified}}%
+ {\exp_not:o {\jlreq@heading@text@format@wlabel}}{\exp_not:o {\jlreq@heading@text@format@wolabel}}%
+ {\exp_not:o {\jlreq@subtitle@format@wlabel}}{\exp_not:o {\jlreq@subtitle@format@wolabel}}%
+ }}%
+ \exp_not:n {\edef\jlreq@BlockHeading@start@format}{\exp_not:N \unexpanded{%
+ {\exp_not:o {\jlreq@pre@format@wlabel}}{\exp_not:o {\jlreq@pre@format@wolabel}}%
+ {\exp_not:o {\jlreq@format}}%
+ {}{}%
+ }}%
+ \exp_not:n {\edef\jlreq@BlockHeading@start@totalformat}{\exp_not:N \unexpanded{%
+ {\exp_not:n {
+ \par
+ \addpenalty\@secpenalty
+ \addvspace{0pt}\relax % 改ページ関係(#54,#100),よくわかっていない
+ }}
+ {\exp_not:o {\jlreq@totalformat}}{\exp_not:o {\jlreq@totalformat@after}}%
+ }}%
+ }
+ % \jlreq@BlockHeading@startの第四引数
+ \tl_set:Nx \l__jlreq_tmpb_tl {
+ {\exp_not:o {\jlreq@align}}{\exp_not:o {\jlreq@indent}}{\exp_not:o {\jlreq@end@indent}}\exp_not:o {\jlreq@spaceset}{\exp_not:o {\jlreq@allowbreak@evenpage}}
+ }
\edef\jlreq@do{%
\exp_not:o {\jlreq@do}%
\noexpand\edef\exp_not:c {jlreq@headingcs@#1}{\noexpand\unexpanded{%
\exp_not:N \g__jlreq_hook_beforeheading:n {#1}
\exp_not:o {\jlreq@pagebreak}%
\tl_if_empty:NF \l__jlreq_pagestyle_tl { \exp_not:N \thispagestyle {\exp_not:o { \l__jlreq_pagestyle_tl } } }
- \unexpanded{\jlreq@BlockHeading@start{#1}{#2}}%
- {{\exp_not:o {\jlreq@align}}{\exp_not:o {\jlreq@indent}}{\exp_not:o {\jlreq@end@indent}}\exp_not:o {\jlreq@spaceset}{\exp_not:o {\jlreq@allowbreak@evenpage}}}%
- {\ifjlreq@number\else -\fi}%
- {%
- {%
- {\exp_not:o {\jlreq@label@format}}{\exp_not:o {\jlreq@label@format@modified}}%
- {\exp_not:o {\jlreq@heading@text@format@wlabel}}{\exp_not:o {\jlreq@heading@text@format@wolabel}}%
- {\exp_not:o {\jlreq@subtitle@format@wlabel}}{\exp_not:o {\jlreq@subtitle@format@wolabel}}%
- }%
- {%
- {\exp_not:o {\jlreq@pre@format@wlabel}}{\exp_not:o {\jlreq@pre@format@wolabel}}%
- {\exp_not:o {\jlreq@format}}%
- {}{}%
- }%
- }%
- {{\exp_not:n {
- \par
- \addpenalty\@secpenalty
- \addvspace{0pt}\relax % 改ページ関係(#54,#100),よくわかっていない
- }}{\exp_not:o {\jlreq@totalformat}}{\exp_not:o {\jlreq@totalformat@after}}}%
- }}%
- \noexpand\def\exp_not:c {#1}{\exp_not:c {jlreq@headingcs@#1}}%
+ \exp_not:o \l__jlreq_tmpa_tl
+ \exp_not:N \@ifstar
+ {\exp_not:N \@dblarg{\exp_not:N \jlreq@BlockHeading@start{\exp_not:n {#1}}{\exp_not:n {#2}}{\exp_not:o {\l__jlreq_tmpb_tl}}{*}}}%
+ {\exp_not:N \@dblarg{\exp_not:N \jlreq@BlockHeading@start{\exp_not:n {#1}}{\exp_not:n {#2}}{\exp_not:o {\l__jlreq_tmpb_tl}}{\ifjlreq@number\else -\fi}}}%
+ }
+ }%
+ \noexpand\def\exp_not:c {#1}{
+ \exp_not:c {jlreq@headingcs@#1}
+ }%
}%
\expandafter\endgroup
\jlreq@do
@@ -3027,8 +3057,8 @@
\cs_set:Nn \__jlreq_CutinHeading_start_aux:nnnnnn{%
% 一行で処理したときの見出し長さを計測
\group_begin:
- \hbox_set:Nn \l_jlreq_tmpa_box {#1#6}
- \dim_set:Nn \l__jlreq_tmpa_dim { \box_wd:N \l_jlreq_tmpa_box}
+ \hbox_set:Nn \l__jlreq_tmpa_box {#1#6}
+ \dim_set:Nn \l__jlreq_tmpa_dim { \box_wd:N \l__jlreq_tmpa_box}
% 何行必要かを\l__jlreq_cutinheading_linecount_tlに入れる
\dim_compare:nTF { \l__jlreq_tmpa_dim > #5} {
\tl_set:Nn \l__jlreq_cutinheading_linecount_tl {3}
@@ -3038,31 +3068,31 @@
} { \tl_set:Nn \l__jlreq_cutinheading_linecount_tl {1} } }
% \l__jlreq_tmpa_dimが実際の一行の長さに近い
\dim_set:Nn \l__jlreq_tmpa_dim { \l__jlreq_tmpa_dim / \l__jlreq_cutinheading_linecount_tl }
- % \l_jlreq_tmpb_boxに見出し部分を,\l__jlreq_cutinheading_linecount_tlに見出し自身に何行使うかを入れる
+ % \l__jlreq_tmpb_boxに見出し部分を,\l__jlreq_cutinheading_linecount_tlに見出し自身に何行使うかを入れる
\int_compare:nTF { \l__jlreq_cutinheading_linecount_tl = 1 }{
- \vbox_set:Nn \l_jlreq_tmpb_box {\parindent=0pt\rightskip=0pt\leftskip=0pt\box_use_drop:N \l_jlreq_tmpa_box}
+ \vbox_set:Nn \l__jlreq_tmpb_box {\parindent=0pt\rightskip=0pt\leftskip=0pt\box_use_drop:N \l__jlreq_tmpa_box}
\tl_set:Nn \l__jlreq_cutinheading_linecount_tl {2}
}{
\jlreq@inlinenote@determinelength{#6}{#1}{}{\l__jlreq_cutinheading_linecount_tl}{\l__jlreq_cutinheading_linecount_tl}{\l__jlreq_tmpa_dim}{\linewidth}%
- \box_set_eq:NN \l_jlreq_tmpb_box \jlreq@resultbox
+ \box_set_eq:NN \l__jlreq_tmpb_box \jlreq@resultbox
\tl_set:Nn \l__jlreq_cutinheading_linecount_tl {3}
}
% 普通の一行の高さ/深さに合わせて見出しのボックスを作る
- \setbox\l_jlreq_tmpa_box =\vtop to \dimexpr\numexpr\l__jlreq_cutinheading_linecount_tl - 1\relax\baselineskip + 1\jlreq@zh\relax{\skip_vertical:n {0pt~plus~1fill~minus~1fill} \box_use_drop:N \l_jlreq_tmpb_box \skip_vertical:n {0pt~plus~1fill~minus~1fill}}%
+ \setbox\l__jlreq_tmpa_box =\vtop to \dimexpr\numexpr\l__jlreq_cutinheading_linecount_tl - 1\relax\baselineskip + 1\jlreq@zh\relax{\skip_vertical:n {0pt~plus~1fill~minus~1fill} \box_use_drop:N \l__jlreq_tmpb_box \skip_vertical:n {0pt~plus~1fill~minus~1fill}}%
% 高さを通常の一行のそれにする
- \hbox_set:Nn \l_jlreq_tmpc_box {阿}
- \box_set_dp:Nn \l_jlreq_tmpa_box { \box_ht:N \l_jlreq_tmpa_box + \box_dp:N \l_jlreq_tmpa_box - \box_ht:N \l_jlreq_tmpc_box }
- \box_set_ht:Nn \l_jlreq_tmpa_box { \box_ht:N \l_jlreq_tmpc_box }
+ \hbox_set:Nn \l__jlreq_tmpc_box {阿}
+ \box_set_dp:Nn \l__jlreq_tmpa_box { \box_ht:N \l__jlreq_tmpa_box + \box_dp:N \l__jlreq_tmpa_box - \box_ht:N \l__jlreq_tmpc_box }
+ \box_set_ht:Nn \l__jlreq_tmpa_box { \box_ht:N \l__jlreq_tmpc_box }
\noindent
\hspace*{#2}%
- \box_use:N \l_jlreq_tmpa_box
+ \box_use:N \l__jlreq_tmpa_box
\hspace*{#3}%
% でかい見出しボックスの分をキャンセルする空きを入れる
- % \baselineskip - box_ht:N \l_jlreq_tmpc_boxはTeXが挿入するスキップの分
+ % \baselineskip - box_ht:N \l__jlreq_tmpc_boxはTeXが挿入するスキップの分
\cs_set:Nx \l__jlreq_do:{
\exp_not:N \par
- \exp_not:N \skip_vertical:n {\dim_eval:n {-\box_ht:N \l_jlreq_tmpa_box - \box_dp:N \l_jlreq_tmpa_box - \baselineskip + \box_ht:N \l_jlreq_tmpc_box}}
- \exp_not:N\hangindent= \dim_eval:n {#2 + \box_wd:N \l_jlreq_tmpa_box + #3} \exp_not:N \relax
+ \exp_not:N \skip_vertical:n {\dim_eval:n {-\box_ht:N \l__jlreq_tmpa_box - \box_dp:N \l__jlreq_tmpa_box - \baselineskip + \box_ht:N \l__jlreq_tmpc_box}}
+ \exp_not:N\hangindent= \dim_eval:n {#2 + \box_wd:N \l__jlreq_tmpa_box + #3} \exp_not:N \relax
\exp_not:N\hangafter=-\l__jlreq_cutinheading_linecount_tl\relax
}%
\exp_after:wN \group_end:
@@ -3136,14 +3166,14 @@
\str_set:Nn \l__jlreq_tmpa_str {#2}
\str_case_e:nn { \jlreq@HeadingType {#1} } {
{ BlockHeading } {
- \bool_set_false:N \l_jlreq_tmpa_bool
- \str_if_in:NnT \l__jlreq_tmpa_str { before_space= } { \bool_set_true:N \l_jlreq_tmpa_bool }
- \str_if_in:NnT \l__jlreq_tmpa_str { before_space~= } { \bool_set_true:N \l_jlreq_tmpa_bool }
- \bool_if:NT \l_jlreq_tmpa_bool {\tl_put_left:Nn \l__jlreq_tmpa_tl {before_lines={},} }
- \bool_set_false:N \l_jlreq_tmpa_bool
- \str_if_in:NnT \l__jlreq_tmpa_str { after_space= } { \bool_set_true:N \l_jlreq_tmpa_bool }
- \str_if_in:NnT \l__jlreq_tmpa_str { after_space~= } { \bool_set_true:N \l_jlreq_tmpa_bool }
- \bool_if:NT \l_jlreq_tmpa_bool {\tl_put_left:Nn \l__jlreq_tmpa_tl {after_lines={},}}
+ \bool_set_false:N \l__jlreq_tmpa_bool
+ \str_if_in:NnT \l__jlreq_tmpa_str { before_space= } { \bool_set_true:N \l__jlreq_tmpa_bool }
+ \str_if_in:NnT \l__jlreq_tmpa_str { before_space~= } { \bool_set_true:N \l__jlreq_tmpa_bool }
+ \bool_if:NT \l__jlreq_tmpa_bool {\tl_put_left:Nn \l__jlreq_tmpa_tl {before_lines={},} }
+ \bool_set_false:N \l__jlreq_tmpa_bool
+ \str_if_in:NnT \l__jlreq_tmpa_str { after_space= } { \bool_set_true:N \l__jlreq_tmpa_bool }
+ \str_if_in:NnT \l__jlreq_tmpa_str { after_space~= } { \bool_set_true:N \l__jlreq_tmpa_bool }
+ \bool_if:NT \l__jlreq_tmpa_bool {\tl_put_left:Nn \l__jlreq_tmpa_tl {after_lines={},}}
}
}
\cs_set:Nx \l_jlreq_do: {
@@ -3998,7 +4028,7 @@
% \jlreq@resultboxに整形結果を返す(垂直ボックス).見つからなかったらvoid.\globalに設定する.
\long\def\jlreq@inlinenote@determinelength#1#2#3#4#5#6#7{%
\begingroup
- % \message{#1 の試行開始,行数 = #5, \the\dimexpr#6\relax から \the\dimexpr#7\relaxまで}%
+% \message{#1 の試行開始,行数 = #5, \the\dimexpr#6\relax から \the\dimexpr#7\relax まで(長さ\the\dimexpr #7 - #6\relax )}%
\@tempcnta=1\relax
\def\@tempa{}%
% 調整に使う行の\parshape指定を\@tempaに入れる.長さは\jlreq@tempdima.
@@ -4019,12 +4049,12 @@
\parindent=0pt\leftskip=0pt\rightskip=0pt
\parshape #5~#3~\@tempa 0pt~\the\maxdimen
#1\par\global\@tempcntb=\prevgraf}%
- % \message{\string\jlreq@tempdima = \the\jlreq@tempdima で試行,行数は\the\@tempcntb , 書式 #5 #3 \@tempa 0pt \the\maxdimen}%
+% \message{\string\jlreq@tempdima = \the\jlreq@tempdima で試行,行数は\the\@tempcntb , 書式~#5~#3~\@tempa~0pt~\the\maxdimen}%
\fi
\jlreq@getlastbox{\@tempboxa}%
\setbox\jlreq@tempboxa=\box\jlreq@resultbox
\ifnum\@tempcntb<#5\relax% 行数が達していないならOK
- % \message{行数 = \the\@tempcntb により確定}
+% \message{行数 = \the\@tempcntb により確定}
% #5行になるまで空の水平ボックスを加えていく.
\global\setbox\jlreq@resultbox=\vbox{#2%
\unvbox\@tempboxa\hbox{\unhbox\jlreq@tempboxa\unskip\unskip\unpenalty}%
@@ -4034,7 +4064,7 @@
% そうでない場合は最後の二行の長さを比較する
\jlreq@getlastbox{\@tempboxa}%
\setbox\jlreq@tempboxb=\box\jlreq@resultbox
- % \message{最終行の長さ \the\wd\jlreq@tempboxa, その前の長さ \the\wd\jlreq@tempboxb}%
+% \message{最終行の長さ \the\wd\jlreq@tempboxa, その前の長さ \the\wd\jlreq@tempboxb}%
\ifdim\wd\jlreq@tempboxa>\wd\jlreq@tempboxb
\advance\jlreq@tempdima by 0.3pt\relax% 0.3ptに意味はない
\else
@@ -6194,17 +6224,17 @@
\ltj@setpar@global
\cs_set:Nn \l_jlreq_do: {}
\tl_if_empty:nF {#1} {
- \skip_set:Nn \l_jlreq_tmpa_skip { #1 }
+ \skip_set:Nn \l__jlreq_tmpa_skip { #1 }
\cs_set:Nx \l_jlreq_do: { \exp_not:o \l_jlreq_do:
- \exp_not:N \cs_set:Npn \exp_not:N \jlreqkanjiskip { \skip_use:N \l_jlreq_tmpa_skip }
- \exp_not:N \ltjsetkanjiskip \skip_use:N \l_jlreq_tmpa_skip
+ \exp_not:N \cs_set:Npn \exp_not:N \jlreqkanjiskip { \skip_use:N \l__jlreq_tmpa_skip }
+ \exp_not:N \ltjsetkanjiskip \skip_use:N \l__jlreq_tmpa_skip
}
}
\tl_if_empty:nF {#2} {
- \skip_set:Nn \l_jlreq_tmpa_skip { #2 }
+ \skip_set:Nn \l__jlreq_tmpa_skip { #2 }
\cs_set:Nx \l_jlreq_do: { \exp_not:o \l_jlreq_do:
- \exp_not:N \cs_set:Npn \exp_not:N \jlreqxkanjiskip { \skip_use:N \l_jlreq_tmpa_skip }
- \exp_not:N \ltjsetxkanjiskip \skip_use:N \l_jlreq_tmpa_skip
+ \exp_not:N \cs_set:Npn \exp_not:N \jlreqxkanjiskip { \skip_use:N \l__jlreq_tmpa_skip }
+ \exp_not:N \ltjsetxkanjiskip \skip_use:N \l__jlreq_tmpa_skip
}
}
\exp_after:wN \group_end:
@@ -6215,17 +6245,17 @@
\group_begin:
\cs_set:Nn \l_jlreq_do: {}
\tl_if_empty:nF {#1} {
- \skip_set:Nn \l_jlreq_tmpa_skip { #1 }
+ \skip_set:Nn \l__jlreq_tmpa_skip { #1 }
\cs_set:Nx \l_jlreq_do: { \exp_not:o \l_jlreq_do:
- \exp_not:N \cs_set:Npx \exp_not:N \jlreqkanjiskip { \skip_use:N \l_jlreq_tmpa_skip }
- \exp_not:N \skip_set:Nn \exp_not:N \kanjiskip { \skip_use:N \l_jlreq_tmpa_skip }
+ \exp_not:N \cs_set:Npx \exp_not:N \jlreqkanjiskip { \skip_use:N \l__jlreq_tmpa_skip }
+ \exp_not:N \skip_set:Nn \exp_not:N \kanjiskip { \skip_use:N \l__jlreq_tmpa_skip }
}
}
\tl_if_empty:nF {#2} {
- \skip_set:Nn \l_jlreq_tmpa_skip { #2 }
+ \skip_set:Nn \l__jlreq_tmpa_skip { #2 }
\cs_set:Nx \l_jlreq_do: { \exp_not:o \l_jlreq_do:
- \exp_not:N \cs_set:Npx \exp_not:N \jlreqxkanjiskip { \skip_use:N \l_jlreq_tmpa_skip }
- \exp_not:N \skip_set:Nn \exp_not:N \xkanjiskip { \skip_use:N \l_jlreq_tmpa_skip }
+ \exp_not:N \cs_set:Npx \exp_not:N \jlreqxkanjiskip { \skip_use:N \l__jlreq_tmpa_skip }
+ \exp_not:N \skip_set:Nn \exp_not:N \xkanjiskip { \skip_use:N \l__jlreq_tmpa_skip }
}
}
\exp_after:wN \group_end:
diff --git a/Master/texmf-dist/tex/latex/jnuexam/jnuexam.cls b/Master/texmf-dist/tex/latex/jnuexam/jnuexam.cls
index f5df9204692..086c55f2b01 100644
--- a/Master/texmf-dist/tex/latex/jnuexam/jnuexam.cls
+++ b/Master/texmf-dist/tex/latex/jnuexam/jnuexam.cls
@@ -6,7 +6,7 @@
% ----------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{jnuexam}[2024-02-18 v2024E An exam class for Jinan University]
+\ProvidesClass{jnuexam}[2024-07-09 v2024F An exam class for Jinan University]
%% 旧版本的 LaTeX 不能识别 2022-11-01 这种日期格式
%\@ifl@t@r\fmtversion{2022-11-01}{}{
@@ -521,9 +521,10 @@
\let\doscratchpaper=\doscratchpaperone
}
-% 在旧版本 ctex 宏包中不能用 \AtEndDocument 添加含中文的内容,即不能用 \appto 而要用 \preto
+%% 此时 \AtEndDocument{...} 等价于 \AddToHook{enddocument}[jnuexam]{...}
+%% 而且默认会在 \AddToHook{enddocument}[randexam]{...} 所加的代码之后执行
\newcommand{\addscratchpaper}{
- \preto{\@enddocumenthook}{\doscratchpaper}
+ \AtEndDocument{\doscratchpaper}
}
\IfExamBoolF{plain}{\IfExamBoolF{answer}{\addscratchpaper}}
@@ -534,6 +535,7 @@
\DeclareExamTheme{final-chinese}{
\SetExamOption{chinese}
+ \SetExamBoolTrue{evaluator}
\SelectExamTranslation{chinese}
\SetExamValue{exampart}{number=\Chinese}
\SelectExamTemplate{examtitle}{final-chinese}
diff --git a/Master/texmf-dist/tex/latex/joinbox/joinbox.sty b/Master/texmf-dist/tex/latex/joinbox/joinbox.sty
index 06077c23f12..68e54c3a204 100644
--- a/Master/texmf-dist/tex/latex/joinbox/joinbox.sty
+++ b/Master/texmf-dist/tex/latex/joinbox/joinbox.sty
@@ -7,7 +7,7 @@
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{expl3}
-\ProvidesExplPackage{joinbox}{2023-08-21}{v1.0.2}
+\ProvidesExplPackage{joinbox}{2024-09-09}{v1.0.3}
{Join figures to same height or width with LaTeX3}
\RequirePackage{xparse}
@@ -42,7 +42,6 @@
% 函数变体
\cs_generate_variant:Nn \hcoffin_set:Nn { Nx }
-
% 定义变量
\bool_new:N \l__joinbox_vertical_bool
\bool_new:N \l__joinbox_out_scale_bool
@@ -77,7 +76,8 @@
baseline .value_required:n = true,
baseline .choices:nn = { t, vc, H, b }
{
- \int_set_eq:NN \l__joinbox_baseline_int \l_keys_choice_int
+ \int_set_eq:NN \l__joinbox_baseline_int
+ \l_keys_choice_int
},
baseline .default:n = vc,
baseline .initial:n = b,
@@ -92,19 +92,19 @@
\bool_set_false:N \l__joinbox_out_scale_bool
}{
\bool_set_true:N \l__joinbox_out_scale_bool
- \dim_set:Nn \l__joinbox_out_length_dim { \dim_eval:n{ #1 } }
+ \dim_set:Nn \l__joinbox_out_length_dim
+ { \dim_eval:n{ #1 } }
}
}
},
outlen .default:n = 0pt,
outlen .initial:n = 0pt,
- % 拼音间距
+ % 拼接间距
sep .dim_set:N = \l__joinbox_sep_dim,
sep .default:n = 0pt,
sep .initial:n = 0pt,
- % unknown .code:n = { \__joinbox_error:n { unknown-option } }
unknown .code:n = \__joinbox_unknown_key:V \l_keys_key_str,
}
@@ -116,8 +116,7 @@
{ vc } { \int_set:Nn \l__joinbox_baseline_int { 2 } }
{ H } { \int_set:Nn \l__joinbox_baseline_int { 3 } }
{ b } { \int_set:Nn \l__joinbox_baseline_int { 4 } }
- }
- {
+ }{
% 转换为token
\tl_set_rescan:Nnn \l_tmpa_tl {} {#1}
% 计算尺寸
@@ -138,12 +137,9 @@
}
\cs_generate_variant:Nn \__joinbox_unknown_key:n { V }
-% \msg_new:nnn { joinbox } { unknown-option }
-% { package~ option~ "\l_keys_key_tl"~ is~ unknown. }
-
%% 参数设置用户接口
\NewDocumentCommand \joinset { m }
- { \keys_set:nn { joinset } {#1} }
+ { \keys_set:nn { joinbox } {#1} }
% 计算box盒子的总高度
% #1---盒子变量
@@ -208,7 +204,8 @@
\dim_set_eq:NN \l__joinbox_min_height_dim \l_tmpb_dim
}
- \bool_if:nT { !(\l__joinbox_only_first_bool) && !(\l__joinbox_only_second_bool) }
+ \bool_if:nT { !(\l__joinbox_only_first_bool) &&
+ !(\l__joinbox_only_second_bool) }
{
% 比较并记录最小宽度
\dim_set:Nn \l__joinbox_min_width_dim
@@ -274,10 +271,12 @@
{
\coffin_scale:Nnn \l__joinbox_out_coffin
{
- \dim_ratio:nn { \l__joinbox_min_width_dim }{ \coffin_wd:N \l__joinbox_out_coffin }
+ \dim_ratio:nn { \l__joinbox_min_width_dim }
+ { \coffin_wd:N \l__joinbox_out_coffin }
}
{
- \dim_ratio:nn { \l__joinbox_min_width_dim }{ \coffin_wd:N \l__joinbox_out_coffin }
+ \dim_ratio:nn { \l__joinbox_min_width_dim }
+ { \coffin_wd:N \l__joinbox_out_coffin }
}
}
@@ -286,10 +285,12 @@
{
\coffin_scale:Nnn \l__joinbox_tmpa_coffin
{
- \dim_ratio:nn { \l__joinbox_min_width_dim }{ \coffin_wd:N \l__joinbox_tmpa_coffin }
+ \dim_ratio:nn { \l__joinbox_min_width_dim }
+ { \coffin_wd:N \l__joinbox_tmpa_coffin }
}
{
- \dim_ratio:nn { \l__joinbox_min_width_dim }{ \coffin_wd:N \l__joinbox_tmpa_coffin }
+ \dim_ratio:nn { \l__joinbox_min_width_dim }
+ { \coffin_wd:N \l__joinbox_tmpa_coffin }
}
}
@@ -298,11 +299,13 @@
\coffin_set_eq:NN \l__joinbox_out_coffin \l__joinbox_tmpa_coffin
}
- \bool_if:nT { !(\l__joinbox_only_first_bool) && !(\l__joinbox_only_second_bool) }
+ \bool_if:nT { !(\l__joinbox_only_first_bool) &&
+ !(\l__joinbox_only_second_bool) }
{
% 将第2个盒子拼接到第一个盒子
\coffin_join:NnnNnnnn \l__joinbox_out_coffin
- { hc } { b } \l__joinbox_tmpa_coffin { hc } { t } { 0pt } { -\l__joinbox_sep_dim }
+ { hc } { b } \l__joinbox_tmpa_coffin { hc } { t }
+ { 0pt } { -\l__joinbox_sep_dim }
}
% 按指定输出宽度缩放输出盒子
@@ -310,10 +313,12 @@
{
\coffin_scale:Nnn \l__joinbox_out_coffin
{
- \dim_ratio:nn { \l__joinbox_out_length_dim }{ \l__joinbox_min_width_dim }
+ \dim_ratio:nn { \l__joinbox_out_length_dim }
+ { \l__joinbox_min_width_dim }
}
{
- \dim_ratio:nn { \l__joinbox_out_length_dim }{ \l__joinbox_min_width_dim }
+ \dim_ratio:nn { \l__joinbox_out_length_dim }
+ { \l__joinbox_min_width_dim }
}
}
@@ -329,10 +334,12 @@
% 按最小高度缩放第1个盒子
\coffin_scale:Nnn \l__joinbox_out_coffin
{
- \dim_ratio:nn { \l__joinbox_min_height_dim }{ \__joinbox_coffin_ht_plus_dp:N \l__joinbox_out_coffin }
+ \dim_ratio:nn { \l__joinbox_min_height_dim }
+ { \__joinbox_coffin_ht_plus_dp:N \l__joinbox_out_coffin }
}
{
- \dim_ratio:nn { \l__joinbox_min_height_dim }{ \__joinbox_coffin_ht_plus_dp:N \l__joinbox_out_coffin }
+ \dim_ratio:nn { \l__joinbox_min_height_dim }
+ { \__joinbox_coffin_ht_plus_dp:N \l__joinbox_out_coffin }
}
% 处理第2个盒子
@@ -344,25 +351,30 @@
% 按最小高度缩放第2个盒子
\coffin_scale:Nnn \l__joinbox_tmpa_coffin
{
- \dim_ratio:nn { \l__joinbox_min_height_dim }{ \__joinbox_coffin_ht_plus_dp:N \l__joinbox_tmpa_coffin }
+ \dim_ratio:nn { \l__joinbox_min_height_dim }
+ { \__joinbox_coffin_ht_plus_dp:N \l__joinbox_tmpa_coffin }
}
{
- \dim_ratio:nn { \l__joinbox_min_height_dim }{ \__joinbox_coffin_ht_plus_dp:N \l__joinbox_tmpa_coffin }
+ \dim_ratio:nn { \l__joinbox_min_height_dim }
+ { \__joinbox_coffin_ht_plus_dp:N \l__joinbox_tmpa_coffin }
}
% 将第2个盒子拼接到第1个盒子
\coffin_join:NnnNnnnn \l__joinbox_out_coffin
- { vc } { r } \l__joinbox_tmpa_coffin { vc } { l } { \l__joinbox_sep_dim } { 0pt }
+ { vc } { r } \l__joinbox_tmpa_coffin { vc } { l }
+ { \l__joinbox_sep_dim } { 0pt }
% 按指定输出高度缩放输出盒子
\bool_if:NT \l__joinbox_out_scale_bool
{
\coffin_scale:Nnn \l__joinbox_out_coffin
{
- \dim_ratio:nn { \l__joinbox_out_length_dim }{ \l__joinbox_min_height_dim }
+ \dim_ratio:nn { \l__joinbox_out_length_dim }
+ { \l__joinbox_min_height_dim }
}
{
- \dim_ratio:nn { \l__joinbox_out_length_dim }{ \l__joinbox_min_height_dim }
+ \dim_ratio:nn { \l__joinbox_out_length_dim }
+ { \l__joinbox_min_height_dim }
}
}
@@ -425,19 +437,23 @@
{
\coffin_scale:Nnn \l__joinbox_tmpa_coffin
{
- \dim_ratio:nn { \l__joinbox_out_length_dim }{ \coffin_wd:N \l__joinbox_tmpa_coffin }
+ \dim_ratio:nn { \l__joinbox_out_length_dim }
+ { \coffin_wd:N \l__joinbox_tmpa_coffin }
}
{
- \dim_ratio:nn { \l__joinbox_out_length_dim }{ \coffin_wd:N \l__joinbox_tmpa_coffin }
+ \dim_ratio:nn { \l__joinbox_out_length_dim }
+ { \coffin_wd:N \l__joinbox_tmpa_coffin }
}
}
{
\coffin_scale:Nnn \l__joinbox_tmpa_coffin
{
- \dim_ratio:nn { \l__joinbox_out_length_dim }{ \__joinbox_coffin_ht_plus_dp:N \l__joinbox_tmpa_coffin }
+ \dim_ratio:nn { \l__joinbox_out_length_dim }
+ { \__joinbox_coffin_ht_plus_dp:N \l__joinbox_tmpa_coffin }
}
{
- \dim_ratio:nn { \l__joinbox_out_length_dim }{ \__joinbox_coffin_ht_plus_dp:N \l__joinbox_tmpa_coffin }
+ \dim_ratio:nn { \l__joinbox_out_length_dim }
+ { \__joinbox_coffin_ht_plus_dp:N \l__joinbox_tmpa_coffin }
}
}
}
@@ -491,19 +507,23 @@
{
\coffin_scale:Nnn \l__joinbox_tmpa_coffin
{
- \dim_ratio:nn { \l__joinbox_out_length_dim }{ \coffin_wd:N \l__joinbox_tmpa_coffin }
+ \dim_ratio:nn { \l__joinbox_out_length_dim }
+ { \coffin_wd:N \l__joinbox_tmpa_coffin }
}
{
- \dim_ratio:nn { \l__joinbox_out_length_dim }{ \coffin_wd:N \l__joinbox_tmpa_coffin }
+ \dim_ratio:nn { \l__joinbox_out_length_dim }
+ { \coffin_wd:N \l__joinbox_tmpa_coffin }
}
}
{
\coffin_scale:Nnn \l__joinbox_tmpa_coffin
{
- \dim_ratio:nn { \l__joinbox_out_length_dim }{ \__joinbox_coffin_ht_plus_dp:N \l__joinbox_tmpa_coffin }
+ \dim_ratio:nn { \l__joinbox_out_length_dim }
+ { \__joinbox_coffin_ht_plus_dp:N \l__joinbox_tmpa_coffin }
}
{
- \dim_ratio:nn { \l__joinbox_out_length_dim }{ \__joinbox_coffin_ht_plus_dp:N \l__joinbox_tmpa_coffin }
+ \dim_ratio:nn { \l__joinbox_out_length_dim }
+ { \__joinbox_coffin_ht_plus_dp:N \l__joinbox_tmpa_coffin }
}
}
}
@@ -595,7 +615,7 @@
% 被拼接对象同时为空,无需拼接
\msg_new:nnn { joinbox } { empty-objs }
- { The~two~objects~which~was~joined~are~empty. }
+ { The~two~objects~which~were~joined~are~empty. }
% 图像拼接用户接口
% 将指定文件名列表中的图像拼接成一个盒子
diff --git a/Master/texmf-dist/tex/latex/jsonparse/jsonparse.sty b/Master/texmf-dist/tex/latex/jsonparse/jsonparse.sty
index 680e89bfcac..2dd3696e88d 100644
--- a/Master/texmf-dist/tex/latex/jsonparse/jsonparse.sty
+++ b/Master/texmf-dist/tex/latex/jsonparse/jsonparse.sty
@@ -10,15 +10,16 @@
%
% This work has the LPPL maintenance status `maintained'.
%
-\ProvidesExplPackage {jsonparse} {2024-04-28} {0.8.3}
+\ProvidesExplPackage {jsonparse} {2024-09-21} {0.9.1}
{JSON Parse}
\bool_new:N \l__jsonparse_debug_mode_bool
-\keys_define:nn { jsonparse } {
+\keys_define:nn { jsonparse / global } {
debug .bool_set:N = \l__jsonparse_debug_mode_bool ,
debug .default:n = { true } ,
+ debug .initial:n = { false }
}
-\ProcessKeyOptions [ jsonparse ]
+\ProcessKeyOptions [ jsonparse / global ]
\msg_new:nnn { jsonparse } { debug-info } {
#1
@@ -43,7 +44,7 @@
\msg_new:nnn { jsonparse } { file-exists } {
\msg_error_text:n { jsonparse } \iow_newline:
- File ~ #1 ~ already ~ existing.
+ File ~ #1 ~ already ~ existing.
}
\msg_new:nnn { jsonparse } { escape-in-key } {
@@ -56,9 +57,14 @@
Escape ~ character ~ #1 ~ not ~ found.
}
+\msg_new:nnn { jsonparse } { unknown-key } {
+ \msg_warning_text:n { jsonparse } \iow_newline:
+ Ignoring ~ unknown ~ key: ~ #1.
+}
+
\msg_new:nnn { jsonparse } { saving-external } {
\msg_info_text:n { jsonparse } \iow_newline:
- Saving ~ external ~ file: ~ #1.
+ Saving ~ to ~ external ~ file: ~ #1.
}
\msg_new:nnn { jsonparse } { loading-external } {
@@ -67,14 +73,22 @@
}
% ===
-
+
+\str_new:N \l_jsonparse_externalize_prefix_str
+\str_new:N \l_jsonparse_current_prop_str
+
+\tl_new:N \l__jsonparse_externalize_file_name_tl
+
\str_new:N \l__jsonparse_child_sep_str
\str_new:N \l__jsonparse_array_sep_left_str
\str_new:N \l__jsonparse_array_sep_right_str
\str_new:N \l__jsonparse_true_str
\str_new:N \l__jsonparse_false_str
\str_new:N \l__jsonparse_null_str
-\bool_new:N \l__jsonparse_array_index_zero_based_bool
+\bool_new:N \l__jsonparse_zero_based_bool
+\bool_new:N \l__jsonparse_check_num_bool
+\bool_new:N \l__jsonparse_rescan_bool
+\bool_new:N \l__jsonparse_externalize_bool
\str_new:N \l__jsonparse_backspace_str
\str_new:N \l__jsonparse_formfeed_str
@@ -82,8 +96,9 @@
\str_new:N \l__jsonparse_carriage_return_str
\str_new:N \l__jsonparse_horizontal_tab_str
-\clist_new:N \l__jsonparse_escape_tex_chars_clist
-\clist_set:Nn \l__jsonparse_escape_tex_chars_clist {
+\clist_new:N \l__jsonparse_unused_keys_clist
+
+\clist_const:Nn \c__jsonparse_escape_tex_chars_clist {
number_sign ,
dollar_sign ,
percent_sign ,
@@ -94,47 +109,63 @@
}
\str_new:N \l__jsonparse_escape_temp_str
-\clist_map_inline:Nn \l__jsonparse_escape_tex_chars_clist {
+\clist_map_inline:Nn \c__jsonparse_escape_tex_chars_clist {
\bool_new:c { l__jsonparse_escape_ #1 _bool }
}
-\keys_define:nn { jsonparse } {
- array ~ index ~ zero-based .bool_set:N = \l__jsonparse_array_index_zero_based_bool ,
- array ~ index ~ zero-based .default:n = { true } ,
- array ~ index ~ zero-based .initial:n = { true } ,
- separator .code:n = { \keys_set:nn { jsonparse / separator } {#1} },
- separator / child .str_set:N = \l__jsonparse_child_sep_str ,
- separator / child .initial:n = { . } ,
- separator / array ~ left .str_set:N = \l__jsonparse_array_sep_left_str ,
- separator / array ~ left .initial:n = { [ } ,
- separator / array ~ right .str_set:N = \l__jsonparse_array_sep_right_str ,
- separator / array ~ right .initial:n = { ] } ,
- replacement .code:n = { \keys_set:nn { jsonparse / replacement } {#1} },
- replacement / true .str_set:N = \l__jsonparse_true_str ,
- replacement / true .initial:n = { true } ,
- replacement / false .str_set:N = \l__jsonparse_false_str ,
- replacement / false .initial:n = { false } ,
- replacement / null .str_set:N = \l__jsonparse_null_str ,
- replacement / null .initial:n = { null } ,
- replacement / backspace .str_set:N = \l__jsonparse_backspace_str ,
- replacement / backspace .initial:n = { ~ } ,
- replacement / formfeed .str_set:N = \l__jsonparse_formfeed_str ,
- replacement / formfeed .initial:n = { ~ } ,
- replacement / linefeed .str_set:N = \l__jsonparse_linefeed_str ,
- replacement / linefeed .initial:n = { ~ } ,
- replacement / carriage ~ return .str_set:N = \l__jsonparse_carriage_return_str ,
- replacement / carriage ~ return .initial:n = { ~ } ,
- replacement / horizontal ~ tab .str_set:N = \l__jsonparse_horizontal_tab_str ,
- replacement / horizontal ~ tab .initial:n = { ~ } ,
- escape .code:n = {
+\keys_define:nn { jsonparse / parse } {
+ externalize .bool_set:N = \l__jsonparse_externalize_bool ,
+ externalize .default:n = { true } ,
+ externalize .initial:n = { false } ,
+ externalize ~ prefix .str_set:N = \l_jsonparse_externalize_prefix_str ,
+ externalize ~ prefix .initial:n = { } ,
+ externalize ~ file ~ name .tl_set:N = \l__jsonparse_externalize_file_name_tl ,
+ externalize ~ file ~ name .initial:n = {
+ \l_jsonparse_externalize_prefix_str \c_sys_jobname_str \c_underscore_str \l_jsonparse_current_prop_str
+ } ,
+ separator .code:n = { \keys_set:nn { jsonparse / parse / separator } {#1} } ,
+ separator / child .str_set:N = \l__jsonparse_child_sep_str ,
+ separator / child .initial:n = { . } ,
+ separator / array ~ left .str_set:N = \l__jsonparse_array_sep_left_str ,
+ separator / array ~ left .initial:n = { [ } ,
+ separator / array ~ right .str_set:N = \l__jsonparse_array_sep_right_str ,
+ separator / array ~ right .initial:n = { ] } ,
+ zero-based .bool_set:N = \l__jsonparse_zero_based_bool ,
+ zero-based .default:n = { true } ,
+ zero-based .initial:n = { true } ,
+ check ~ num .bool_set:N = \l__jsonparse_check_num_bool ,
+ check ~ num .default:n = { true } ,
+ check ~ num .initial:n = { true } ,
+ replace .code:n = { \keys_set:nn { jsonparse / parse / replace } {#1} } ,
+ replace / true .str_set:N = \l__jsonparse_true_str ,
+ replace / true .initial:n = { true } ,
+ replace / false .str_set:N = \l__jsonparse_false_str ,
+ replace / false .initial:n = { false } ,
+ replace / null .str_set:N = \l__jsonparse_null_str ,
+ replace / null .initial:n = { null }
+}
+
+\keys_define:nn { jsonparse / typeset } {
+ replace .code:n = { \keys_set:nn { jsonparse / typeset / replace } {#1} } ,
+ replace / backspace .str_set:N = \l__jsonparse_backspace_str ,
+ replace / backspace .initial:n = { ~ } ,
+ replace / formfeed .str_set:N = \l__jsonparse_formfeed_str ,
+ replace / formfeed .initial:n = { ~ } ,
+ replace / linefeed .str_set:N = \l__jsonparse_linefeed_str ,
+ replace / linefeed .initial:n = { ~ } ,
+ replace / carriage ~ return .str_set:N = \l__jsonparse_carriage_return_str ,
+ replace / carriage ~ return .initial:n = { ~ } ,
+ replace / horizontal ~ tab .str_set:N = \l__jsonparse_horizontal_tab_str ,
+ replace / horizontal ~ tab .initial:n = { ~ } ,
+ escape .code:n = {
\str_case:nnF {#1} {
{ all } {
- \clist_map_inline:Nn \l__jsonparse_escape_tex_chars_clist {
+ \clist_map_inline:Nn \c__jsonparse_escape_tex_chars_clist {
\bool_set_true:c { l__jsonparse_escape_ ##1 _bool }
}
}
{ none } {
- \clist_map_inline:Nn \l__jsonparse_escape_tex_chars_clist {
+ \clist_map_inline:Nn \c__jsonparse_escape_tex_chars_clist {
\bool_set_false:c { l__jsonparse_escape_ ##1 _bool }
}
}
@@ -168,11 +199,27 @@
}
}
}
+ } ,
+ escape .groups:n = { output } ,
+ rescan .bool_set:N = \l__jsonparse_rescan_bool ,
+ rescan .default:n = { true } ,
+ rescan .initial:n = { true } ,
+ rescan .groups:n = { output }
+}
+
+\cs_new:Npn \__jsonparse_warning_unused_keys: {
+ \clist_map_inline:Nn \l__jsonparse_unused_keys_clist {
+ \msg_warning:nne { jsonparse } { unknown-key } {
+ ##1
+ }
}
}
\NewDocumentCommand { \JSONParseSet } { m } {
- \keys_set:nn { jsonparse } {#1}
+ \keys_set_known:nnN { jsonparse / global } {#1} \l__jsonparse_unused_keys_clist
+ \keys_set_known:noN { jsonparse / parse } { \l__jsonparse_unused_keys_clist } \l__jsonparse_unused_keys_clist
+ \keys_set_known:noN { jsonparse / typeset } { \l__jsonparse_unused_keys_clist } \l__jsonparse_unused_keys_clist
+ \__jsonparse_warning_unused_keys:
}
% ===
@@ -181,6 +228,7 @@
\cs_new:Npn \str_casefold:n { \str_foldcase:n }
}
+\cs_generate_variant:Nn \file_input:n { e }
\cs_generate_variant:Nn \tl_gset_rescan:Nnn { Nne }
\cs_generate_variant:Nn \tl_range:nnn { nne , nen }
\cs_generate_variant:Nn \tl_range:Nnn { Nne , Nen }
@@ -193,14 +241,20 @@
\cs_generate_variant:Nn \str_case_e:nn { en }
\cs_generate_variant:Nn \str_casefold:n { o }
\cs_generate_variant:Nn \str_head_ignore_spaces:n { o }
+\cs_generate_variant:Nn \str_set:Nn { Ne }
\cs_generate_variant:Nn \prop_gput:Nnn { Nee }
\cs_generate_variant:Nn \prop_item:Nn { Ne , ce }
\cs_generate_variant:Nn \prop_put:Nnn { Nen , Nee }
+\cs_generate_variant:Nn \keys_set_known:nnN { noN }
\cs_generate_variant:Nn \iow_now:Nn { Ne }
+\cs_generate_variant:Nn \iow_open:Nn { Ne }
\cs_generate_variant:Nn \msg_error:nnn { nno }
\cs_generate_variant:Nn \msg_error:nnnn { nnoo }
+\cs_generate_variant:Nn \msg_info:nnn { nne }
\cs_generate_variant:Nn \msg_log:nnn { nne }
+\cs_generate_variant:Nn \msg_warning:nnn { nne }
+\prg_generate_conditional_variant:Nnn \file_if_exist:n { e } { T , TF }
\prg_generate_conditional_variant:Nnn \tl_if_eq:nn { en } { T }
\prg_generate_conditional_variant:Nnn \tl_if_head_eq_charcode:nN { oN } { T , TF }
\prg_generate_conditional_variant:Nnn \tl_if_in:nn { nV } { F }
@@ -224,7 +278,7 @@
\int_new:N \l__jsonparse_array_count_last_int
\bool_new:N \l__jsonparse_prop_map_first_bool
-\bool_new:N \l__jsonparse_load_external_bool
+\bool_new:N \l__jsonparse_externalize_load_bool
\ior_new:N \l__jsonparse_json_ior
\iow_new:N \g__jsonparse_externalize_iow
@@ -241,6 +295,326 @@
% ===
+\tl_new:N \l__jsonparse_num_input_tl
+\tl_new:N \l__jsonparse_num_remainder_tl
+\tl_new:N \l__jsonparse_num_input_last_tl
+\bool_new:N \l__jsonparse_num_bool
+\bool_new:N \l__jsonparse_num_zero_seen_bool
+\bool_new:N \l__jsonparse_num_plus_minus_seen_bool
+\bool_new:N \l__jsonparse_num_fraction_seen_bool
+\bool_new:N \l__jsonparse_num_exponent_seen_bool
+\tl_new:N \l__jsonparse_num_input_tl
+\tl_new:N \l__jsonparse_num_remainder_tl
+\tl_new:N \l__jsonparse_num_input_last_tl
+\bool_new:N \l__jsonparse_num_bool
+\bool_new:N \l__jsonparse_num_zero_seen_bool
+\bool_new:N \l__jsonparse_num_plus_minus_seen_bool
+\bool_new:N \l__jsonparse_num_fraction_seen_bool
+\bool_new:N \l__jsonparse_num_exponent_seen_bool
+
+\clist_const:Nn \c__jsonparse_num_digits_clist {
+\clist_const:Nn \c__jsonparse_num_digits_clist {
+ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9
+}
+
+\prg_new_conditional:Npnn \jsonparse_if_num:n #1 { p , T , F , TF } {
+ \bool_set_true:N \l__jsonparse_num_bool
+ \bool_set_false:N \l__jsonparse_num_zero_seen_bool
+ \bool_set_false:N \l__jsonparse_num_plus_minus_seen_bool
+ \bool_set_false:N \l__jsonparse_num_fraction_seen_bool
+ \bool_set_false:N \l__jsonparse_num_exponent_seen_bool
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { #1 }
+ \tl_if_empty:NTF \l__jsonparse_num_remainder_tl {
+ \bool_set_false:N \l__jsonparse_num_bool
+\prg_new_conditional:Npnn \jsonparse_if_num:n #1 { p , T , F , TF } {
+ \bool_set_true:N \l__jsonparse_num_bool
+ \bool_set_false:N \l__jsonparse_num_zero_seen_bool
+ \bool_set_false:N \l__jsonparse_num_plus_minus_seen_bool
+ \bool_set_false:N \l__jsonparse_num_fraction_seen_bool
+ \bool_set_false:N \l__jsonparse_num_exponent_seen_bool
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { #1 }
+ \tl_if_empty:NTF \l__jsonparse_num_remainder_tl {
+ \bool_set_false:N \l__jsonparse_num_bool
+ } {
+ \__jsonparse_parse_num:n {#1}
+ \__jsonparse_parse_num:n {#1}
+ }
+ \bool_lazy_any:nT {
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { + } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { - } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { . } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { e } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { E } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { + } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { - } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { . } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { e } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { E } }
+ } {
+ \bool_set_false:N \l__jsonparse_num_bool
+ \bool_set_false:N \l__jsonparse_num_bool
+ }
+ \bool_if:NTF \l__jsonparse_num_bool {
+ \bool_if:NTF \l__jsonparse_num_bool {
+ \prg_return_true:
+ } {
+ \prg_return_false:
+ }
+}
+
+\cs_new:Npn \__jsonparse_parse_num:n #1 {
+ \tl_set:Ne \l__jsonparse_num_input_tl { \tl_trim_spaces:e {#1} }
+ \tl_if_empty:NF \l__jsonparse_num_input_tl {
+ \cs_if_exist_use:cTF { __jsonparse_parse_num_ \str_head_ignore_spaces:o { \l__jsonparse_num_input_tl } :w } {
+ \l__jsonparse_num_input_tl \q_stop
+\cs_new:Npn \__jsonparse_parse_num:n #1 {
+ \tl_set:Ne \l__jsonparse_num_input_tl { \tl_trim_spaces:e {#1} }
+ \tl_if_empty:NF \l__jsonparse_num_input_tl {
+ \cs_if_exist_use:cTF { __jsonparse_parse_num_ \str_head_ignore_spaces:o { \l__jsonparse_num_input_tl } :w } {
+ \l__jsonparse_num_input_tl \q_stop
+ } {
+ \exp_last_unbraced:No
+ \__jsonparse_parse_num_other:w \l__jsonparse_num_input_tl \q_stop
+ \__jsonparse_parse_num_other:w \l__jsonparse_num_input_tl \q_stop
+ }
+ }
+}
+
+\cs_new:cpn { __jsonparse_parse_num_ + :w } #1 \q_stop {
+\cs_new:cpn { __jsonparse_parse_num_ + :w } #1 \q_stop {
+ \exp_last_unbraced:No
+ \__jsonparse_parse_num_plus_minus:w #1 \q_stop
+ \__jsonparse_parse_num_plus_minus:w #1 \q_stop
+}
+
+\cs_new:cpn { __jsonparse_parse_num_ - :w } #1 \q_stop {
+\cs_new:cpn { __jsonparse_parse_num_ - :w } #1 \q_stop {
+ \exp_last_unbraced:No
+ \__jsonparse_parse_num_plus_minus:w #1 \q_stop
+ \__jsonparse_parse_num_plus_minus:w #1 \q_stop
+}
+
+\cs_new:cpn { __jsonparse_parse_num_ . :w } #1 \q_stop {
+\cs_new:cpn { __jsonparse_parse_num_ . :w } #1 \q_stop {
+ \exp_last_unbraced:No
+ \__jsonparse_parse_num_fraction:w #1 \q_stop
+ \__jsonparse_parse_num_fraction:w #1 \q_stop
+}
+
+\cs_new:cpn { __jsonparse_parse_num_ e :w } #1 \q_stop {
+\cs_new:cpn { __jsonparse_parse_num_ e :w } #1 \q_stop {
+ \exp_last_unbraced:No
+ \__jsonparse_parse_num_exponent:w #1 \q_stop
+ \__jsonparse_parse_num_exponent:w #1 \q_stop
+}
+
+\cs_new:cpn { __jsonparse_parse_num_ E :w } #1 \q_stop {
+\cs_new:cpn { __jsonparse_parse_num_ E :w } #1 \q_stop {
+ \exp_last_unbraced:No
+ \__jsonparse_parse_num_exponent:w #1 \q_stop
+ \__jsonparse_parse_num_exponent:w #1 \q_stop
+}
+
+\clist_map_inline:Nn \c__jsonparse_num_digits_clist {
+ \cs_new:cpn { __jsonparse_parse_num_ #1 :w } ##1 \q_stop {
+\clist_map_inline:Nn \c__jsonparse_num_digits_clist {
+ \cs_new:cpn { __jsonparse_parse_num_ #1 :w } ##1 \q_stop {
+ \exp_last_unbraced:No
+ \__jsonparse_parse_num_digit:w ##1 \q_stop
+ \__jsonparse_parse_num_digit:w ##1 \q_stop
+ }
+}
+
+\cs_new:Npn \__jsonparse_parse_num_plus_minus:w #1 \q_stop {
+ \bool_if:NTF \l__jsonparse_num_plus_minus_seen_bool {
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+\cs_new:Npn \__jsonparse_parse_num_plus_minus:w #1 \q_stop {
+ \bool_if:NTF \l__jsonparse_num_plus_minus_seen_bool {
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+ } {
+ \tl_if_empty:NTF \l__jsonparse_num_input_last_tl {
+ \tl_if_empty:NTF \l__jsonparse_num_input_last_tl {
+ \str_if_eq:enT { \tl_head:n {#1} } { + } {
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+ }
+ } {
+ \bool_lazy_any:nT {
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { + } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { - } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { . } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { e } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { E } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { + } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { - } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { . } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { e } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { E } }
+ } {
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+ }
+ }
+ }
+ \bool_set_true:N \l__jsonparse_num_plus_minus_seen_bool
+ \tl_set:Ne \l__jsonparse_num_input_last_tl { \tl_head:n {#1} }
+ \tl_set:Ne \l__jsonparse_num_remainder_tl { \tl_tail:n {#1} }
+ \__jsonparse_parse_num:n { \l__jsonparse_num_remainder_tl }
+ \bool_set_true:N \l__jsonparse_num_plus_minus_seen_bool
+ \tl_set:Ne \l__jsonparse_num_input_last_tl { \tl_head:n {#1} }
+ \tl_set:Ne \l__jsonparse_num_remainder_tl { \tl_tail:n {#1} }
+ \__jsonparse_parse_num:n { \l__jsonparse_num_remainder_tl }
+}
+
+\cs_new:Npn \__jsonparse_parse_num_fraction:w #1 \q_stop {
+ \bool_if:NTF \l__jsonparse_num_fraction_seen_bool {
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+\cs_new:Npn \__jsonparse_parse_num_fraction:w #1 \q_stop {
+ \bool_if:NTF \l__jsonparse_num_fraction_seen_bool {
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+ } {
+ \tl_if_empty:NTF \l__jsonparse_num_input_last_tl {
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+ \tl_if_empty:NTF \l__jsonparse_num_input_last_tl {
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+ } {
+ \bool_lazy_any:nT {
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { + } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { - } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { . } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { e } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { E } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { + } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { - } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { . } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { e } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { E } }
+ } {
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+ }
+ }
+ }
+ \bool_set_false:N \l__jsonparse_num_zero_seen_bool
+ \bool_set_true:N \l__jsonparse_num_plus_minus_seen_bool
+ \bool_set_true:N \l__jsonparse_num_fraction_seen_bool
+ \tl_set:Ne \l__jsonparse_num_input_last_tl { \tl_head:n {#1} }
+ \tl_set:Ne \l__jsonparse_num_remainder_tl { \tl_tail:n {#1} }
+ \__jsonparse_parse_num:n { \l__jsonparse_num_remainder_tl }
+ \bool_set_false:N \l__jsonparse_num_zero_seen_bool
+ \bool_set_true:N \l__jsonparse_num_plus_minus_seen_bool
+ \bool_set_true:N \l__jsonparse_num_fraction_seen_bool
+ \tl_set:Ne \l__jsonparse_num_input_last_tl { \tl_head:n {#1} }
+ \tl_set:Ne \l__jsonparse_num_remainder_tl { \tl_tail:n {#1} }
+ \__jsonparse_parse_num:n { \l__jsonparse_num_remainder_tl }
+}
+
+\cs_new:Npn \__jsonparse_parse_num_exponent:w #1 \q_stop {
+ \bool_if:NTF \l__jsonparse_num_exponent_seen_bool {
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+\cs_new:Npn \__jsonparse_parse_num_exponent:w #1 \q_stop {
+ \bool_if:NTF \l__jsonparse_num_exponent_seen_bool {
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+ } {
+ \tl_if_empty:NTF \l__jsonparse_num_input_last_tl {
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+ \tl_if_empty:NTF \l__jsonparse_num_input_last_tl {
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+ } {
+ \bool_lazy_any:nT {
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { + } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { - } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { . } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { e } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { E } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { + } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { - } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { . } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { e } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { E } }
+ } {
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+ }
+ }
+ }
+ \bool_set_false:N \l__jsonparse_num_zero_seen_bool
+ \bool_set_false:N \l__jsonparse_num_plus_minus_seen_bool
+ \bool_set_true:N \l__jsonparse_num_fraction_seen_bool
+ \bool_set_true:N \l__jsonparse_num_exponent_seen_bool
+ \tl_set:Ne \l__jsonparse_num_input_last_tl { \tl_head:n {#1} }
+ \tl_set:Ne \l__jsonparse_num_remainder_tl { \tl_tail:n {#1} }
+ \__jsonparse_parse_num:n { \l__jsonparse_num_remainder_tl }
+ \bool_set_false:N \l__jsonparse_num_zero_seen_bool
+ \bool_set_false:N \l__jsonparse_num_plus_minus_seen_bool
+ \bool_set_true:N \l__jsonparse_num_fraction_seen_bool
+ \bool_set_true:N \l__jsonparse_num_exponent_seen_bool
+ \tl_set:Ne \l__jsonparse_num_input_last_tl { \tl_head:n {#1} }
+ \tl_set:Ne \l__jsonparse_num_remainder_tl { \tl_tail:n {#1} }
+ \__jsonparse_parse_num:n { \l__jsonparse_num_remainder_tl }
+}
+
+\cs_new:Npn \__jsonparse_parse_num_digit:w #1 \q_stop {
+\cs_new:Npn \__jsonparse_parse_num_digit:w #1 \q_stop {
+ \bool_lazy_any:nTF {
+ { \tl_if_empty_p:N \l__jsonparse_num_input_last_tl }
+ { \tl_if_empty_p:N \l__jsonparse_num_input_last_tl }
+ { \bool_lazy_and_p:nn
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { - } }
+ { \bool_not_p:n { \l__jsonparse_num_exponent_seen_bool } }
+ { \str_if_eq_p:Vn \l__jsonparse_num_input_last_tl { - } }
+ { \bool_not_p:n { \l__jsonparse_num_exponent_seen_bool } }
+ }
+ } {
+ \str_if_eq:enT { \tl_head:n {#1} } { 0 } {
+ \bool_set_true:N \l__jsonparse_num_zero_seen_bool
+ \bool_set_true:N \l__jsonparse_num_zero_seen_bool
+ }
+ } {
+ \bool_if:NT \l__jsonparse_num_zero_seen_bool {
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+ \bool_if:NT \l__jsonparse_num_zero_seen_bool {
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+ }
+ }
+ \tl_set:Ne \l__jsonparse_num_input_last_tl { \tl_head:n {#1} }
+ \tl_set:Ne \l__jsonparse_num_remainder_tl { \tl_tail:n {#1} }
+ \__jsonparse_parse_num:n { \l__jsonparse_num_remainder_tl }
+ \tl_set:Ne \l__jsonparse_num_input_last_tl { \tl_head:n {#1} }
+ \tl_set:Ne \l__jsonparse_num_remainder_tl { \tl_tail:n {#1} }
+ \__jsonparse_parse_num:n { \l__jsonparse_num_remainder_tl }
+}
+
+\cs_new:Npn \__jsonparse_parse_num_other:w #1 \q_stop {
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+\cs_new:Npn \__jsonparse_parse_num_other:w #1 \q_stop {
+ \tl_set:Nn \l__jsonparse_num_remainder_tl { }
+ \bool_set_false:N \l__jsonparse_num_bool
+}
+
+% ===
+
\cs_new_protected:Npn \jsonparse_parse_to_prop:Nn #1#2 {
\bool_if:NT \l__jsonparse_debug_mode_bool {
\msg_log:nne { jsonparse } { debug-info } {
@@ -366,10 +740,10 @@
\bool_if:NT \l__jsonparse_debug_mode_bool {
\msg_log:nnn { jsonparse } { debug-info } {
(arr ~ begin)
- }
+ }
}
\int_zero:N \l__jsonparse_array_index_int
- \bool_if:NT \l__jsonparse_array_index_zero_based_bool {
+ \bool_if:NT \l__jsonparse_zero_based_bool {
\int_decr:N \l__jsonparse_array_index_int
}
\tl_set_eq:NN \l__jsonparse_object_array_key_tl \l__jsonparse_key_tl
@@ -412,7 +786,7 @@
\tl_if_head_eq_charcode:oNTF { \l__jsonparse_remainder_tl } : {
\tl_remove_once:NV \l__jsonparse_remainder_tl \c_colon_str
\tl_set:Ne \l__jsonparse_key_tl { \l__jsonparse_prefix_tl #1 }
- } {
+ } {
\tl_set:Nn \l__jsonparse_val_tl {#1}
\prop_gput:Nee \g_jsonparse_entries_prop
{ \l__jsonparse_key_tl } { \l__jsonparse_val_tl }
@@ -440,11 +814,24 @@
\cs_new:Npn \__jsonparse_parse_other_aux:w #1 , #2 \q_stop {
\tl_set:Ne \l__jsonparse_temp_tl { \tl_trim_spaces:n {#1} }
\cs_if_exist_use:cF { __jsonparse_parse_ \str_casefold:o { \l__jsonparse_temp_tl } : } {
- \fp_if_nan:nTF {#1} {
- % nan
- \msg_error:nnoo { jsonparse } { parsing-error }
- { \l__jsonparse_key_tl } {#1}
- } {
+ \bool_if:NTF \l__jsonparse_check_num_bool {
+ \jsonparse_if_num:nTF {#1} {
+ \tl_set:Nn \l__jsonparse_val_tl {#1}
+ \prop_gput:Nee \g_jsonparse_entries_prop
+ { \l__jsonparse_key_tl } { \l__jsonparse_val_tl }
+ % number
+ \bool_if:NT \l__jsonparse_debug_mode_bool {
+ \msg_log:nne { jsonparse } { debug-info } {
+ (key) ~ \str_use:N \l__jsonparse_key_tl : \iow_newline:
+ \iow_char:N \ \iow_char:N \ (num) ~ \str_use:N \l__jsonparse_val_tl
+ }
+ }
+ } {
+ % not a valid JSON fp
+ \msg_error:nnoo { jsonparse } { parsing-error }
+ { \l__jsonparse_key_tl } {#1}
+ }
+ } {
\tl_set:Nn \l__jsonparse_val_tl {#1}
\prop_gput:Nee \g_jsonparse_entries_prop
{ \l__jsonparse_key_tl } { \l__jsonparse_val_tl }
@@ -515,7 +902,7 @@
\tl_if_empty:NF \l__jsonparse_remainder_tl {
\exp_args:No \jsonparse_parse:n { \l__jsonparse_remainder_tl }
}
-}
+}
\cs_new_protected:Npn \jsonparse_filter:Nn #1#2 {
\prop_clear:N \l__jsonparse_temp_prop
@@ -542,98 +929,118 @@
\prop_if_exist:NF #1 {
\prop_new:N #1
}
- \prop_gput:Nnn #1 { #2 } { #3 }
+ \prop_gput:Nnn #1 {#2} {#3}
}
\cs_new:Npn \__jsonparse_externalize:Nn #1#2 {
- \file_if_exist:nTF {#2} {
- \msg_error:nnn { jsonparse } { file-exists }
+ \file_if_exist:eTF {#2} {
+ \msg_error:nne { jsonparse } { file-exists }
{#2}
} {
- \iow_open:Nn \g__jsonparse_externalize_iow {#2}
+ \iow_open:Ne \g__jsonparse_externalize_iow {#2}
\prop_map_inline:Nn #1 {
\iow_now:Nn \g__jsonparse_externalize_iow {
\JSONParsePut {#1} {##1} {##2}
}
}
\iow_close:N \g__jsonparse_externalize_iow
- \msg_info:nnn { jsonparse } { saving-external }
+ \msg_info:nne { jsonparse } { saving-external }
{#2}
}
}
% ===
-\NewDocumentCommand { \JSONParse } { o m +v } {
- \bool_set_false:N \l__jsonparse_load_external_bool
- \tl_if_novalue:nF {#1} {
- \file_if_exist:nT { #1 .jsonparse } {
- \bool_set_true:N \l__jsonparse_load_external_bool
- }
+\cs_new:Npn \__json_nested_construct_cs:Nnn #1 #2 #3 {
+ \cs_set:Npn #1 #2 ##1 #3 #2 ##2 #3 {
+ \prop_item:ce {##1} {##2}
}
- \bool_if:NTF \l__jsonparse_load_external_bool {
- \msg_info:nnn { jsonparse } { loading-external }
- { #1 .jsonparse }
- \file_input:n { #1 .jsonparse }
- } {
- \prop_new:N #2
- \tl_gclear:N \g__jsonparse_json_tl
- \group_begin:
- \cs_set:Npn \" { \exp_not:N \" }
- \cs_set:Npn \/ { \exp_not:N \/ }
- \cs_set:Npn \\ { \exp_not:N \\ }
- \cs_set:Npn \b { \exp_not:N \b }
- \cs_set:Npn \f { \exp_not:N \f }
- \cs_set:Npn \n { \exp_not:N \n }
- \cs_set:Npn \r { \exp_not:N \r }
- \cs_set:Npn \t { \exp_not:N \t }
- \cs_set:Npn \u { \exp_not:N \u }
- \cs_set:Npn \x [ ##1 ] [ ##2 ] { \prop_item:ce {##1} {##2} }
- \tl_gset_rescan:Nne \g__jsonparse_json_tl { \cctab_select:N \c__jsonparse_json_escape_cctab } {#3}
- \exp_args:NNe \jsonparse_parse_to_prop:Nn #2 { \g__jsonparse_json_tl }
- \group_end:
- \tl_if_novalue:nF {#1} {
- \__jsonparse_externalize:Nn #2 { #1 .jsonparse }
+}
+\cs_generate_variant:Nn \__json_nested_construct_cs:Nnn { Noo }
+
+\NewDocumentCommand { \JSONParse } { O{} m +v } {
+ \group_begin:
+ \str_set:Ne \l_jsonparse_current_prop_str { \cs_to_str:N #2 }
+ \keys_set_known:nnN { jsonparse / global } {#1} \l__jsonparse_unused_keys_clist
+ \keys_set_known:noN { jsonparse / parse } { \l__jsonparse_unused_keys_clist } \l__jsonparse_unused_keys_clist
+ \__jsonparse_warning_unused_keys:
+ \bool_set_false:N \l__jsonparse_externalize_load_bool
+ \bool_if:NT \l__jsonparse_externalize_bool {
+ \file_if_exist:eT { \l__jsonparse_externalize_file_name_tl .jsonparse } {
+ \bool_set_true:N \l__jsonparse_externalize_load_bool
+ }
}
- }
+ \bool_if:NTF \l__jsonparse_externalize_load_bool {
+ \msg_info:nne { jsonparse } { loading-external }
+ { \l__jsonparse_externalize_file_name_tl .jsonparse }
+ \file_input:e { \l__jsonparse_externalize_file_name_tl .jsonparse }
+ } {
+ \prop_new:N #2
+ \tl_gclear:N \g__jsonparse_json_tl
+ \group_begin:
+ \cs_set:Npn \" { \exp_not:N \" }
+ \cs_set:Npn \/ { \exp_not:N \/ }
+ \cs_set:Npn \\ { \exp_not:N \\ }
+ \cs_set:Npn \b { \exp_not:N \b }
+ \cs_set:Npn \f { \exp_not:N \f }
+ \cs_set:Npn \n { \exp_not:N \n }
+ \cs_set:Npn \r { \exp_not:N \r }
+ \cs_set:Npn \t { \exp_not:N \t }
+ \cs_set:Npn \u { \exp_not:N \u }
+ \__json_nested_construct_cs:Noo \x \c_left_brace_str \c_right_brace_str
+ \tl_set:Nn \obeyedline { ~ }
+ \tl_gset_rescan:Nne \g__jsonparse_json_tl { \cctab_select:N \c__jsonparse_json_escape_cctab } {#3}
+ \exp_args:NNe \jsonparse_parse_to_prop:Nn #2 { \g__jsonparse_json_tl }
+ \group_end:
+ \bool_if:NT \l__jsonparse_externalize_bool {
+ \__jsonparse_externalize:Nn #2 { \l__jsonparse_externalize_file_name_tl .jsonparse }
+ }
+ }
+ \group_end:
}
-\NewDocumentCommand { \JSONParseFromFile } { o m m } {
+\NewDocumentCommand { \JSONParseFromFile } { O{} m m } {
\file_if_exist:nF {#3} {
\msg_error:nnn { jsonparse } { file-not-found }
{#3}
}
- \bool_set_false:N \l__jsonparse_load_external_bool
- \tl_if_novalue:nF {#1} {
- \file_if_exist:nT { #1 .jsonparse } {
- \bool_set_true:N \l__jsonparse_load_external_bool
+ \group_begin:
+ \str_set:Ne \l_jsonparse_current_prop_str { \cs_to_str:N #2 }
+ \keys_set_known:nnN { jsonparse / global } {#1} \l__jsonparse_unused_keys_clist
+ \keys_set_known:noN { jsonparse / parse } { \l__jsonparse_unused_keys_clist } \l__jsonparse_unused_keys_clist
+ \__jsonparse_warning_unused_keys:
+ \bool_set_false:N \l__jsonparse_externalize_load_bool
+ \bool_if:NT \l__jsonparse_externalize_bool {
+ \file_if_exist:eT { \l__jsonparse_externalize_file_name_tl .jsonparse } {
+ \bool_set_true:N \l__jsonparse_externalize_load_bool
+ }
}
- }
- \bool_if:NTF \l__jsonparse_load_external_bool {
- \msg_info:nnn { jsonparse } { loading-external }
- { #1 .jsonparse }
- \file_input:n { #1 .jsonparse }
- } {
- \prop_new:N #2
- \tl_gclear:N \g__jsonparse_json_tl
- \group_begin:
- \cs_set:Npn \" { \exp_not:N \" }
- \cs_set:Npn \/ { \exp_not:N \/ }
- \cs_set:Npn \\ { \exp_not:N \\ }
- \cs_set:Npn \b { \exp_not:N \b }
- \cs_set:Npn \f { \exp_not:N \f }
- \cs_set:Npn \n { \exp_not:N \n }
- \cs_set:Npn \r { \exp_not:N \r }
- \cs_set:Npn \t { \exp_not:N \t }
- \cs_set:Npn \u { \exp_not:N \u }
- \cs_set:Npn \x [ ##1 ] [ ##2 ] { \prop_item:ce {##1} {##2} }
- \file_get:nnN {#3} { \cctab_select:N \c__jsonparse_json_escape_cctab } \g__jsonparse_json_tl
- \exp_args:NNe \jsonparse_parse_to_prop:Nn #2 { \g__jsonparse_json_tl }
- \group_end:
- \tl_if_novalue:nF {#1} {
- \__jsonparse_externalize:Nn #2 { #1 .jsonparse }
+ \bool_if:NTF \l__jsonparse_externalize_load_bool {
+ \msg_info:nne { jsonparse } { loading-external }
+ { \l__jsonparse_externalize_file_name_tl .jsonparse }
+ \file_input:e { \l__jsonparse_externalize_file_name_tl .jsonparse }
+ } {
+ \prop_new:N #2
+ \tl_gclear:N \g__jsonparse_json_tl
+ \group_begin:
+ \cs_set:Npn \" { \exp_not:N \" }
+ \cs_set:Npn \/ { \exp_not:N \/ }
+ \cs_set:Npn \\ { \exp_not:N \\ }
+ \cs_set:Npn \b { \exp_not:N \b }
+ \cs_set:Npn \f { \exp_not:N \f }
+ \cs_set:Npn \n { \exp_not:N \n }
+ \cs_set:Npn \r { \exp_not:N \r }
+ \cs_set:Npn \t { \exp_not:N \t }
+ \cs_set:Npn \u { \exp_not:N \u }
+ \cs_set:Npn \x [ ##1 ] [ ##2 ] { \prop_item:ce {##1} {##2} }
+ \file_get:nnN {#3} { \cctab_select:N \c__jsonparse_json_escape_cctab } \g__jsonparse_json_tl
+ \exp_args:NNe \jsonparse_parse_to_prop:Nn #2 { \g__jsonparse_json_tl }
+ \group_end:
+ \bool_if:NT \l__jsonparse_externalize_bool {
+ \__jsonparse_externalize:Nn #2 { \l__jsonparse_externalize_file_name_tl .jsonparse }
+ }
}
- }
+ \group_end:
}
\NewExpandableDocumentCommand { \JSONParseExpandableValue } { m m } {
@@ -682,12 +1089,16 @@
\group_end:
}
-\NewDocumentCommand { \JSONParseValue } { s m m } {
- \bool_if:NTF #1 {
- \prop_item:Ne #2 {#3}
- } {
- \exp_args:Ne \__jsonparse_rescan:n { \prop_item:Ne #2 {#3} }
- }
+\NewDocumentCommand { \JSONParseValue } { O{} m m } {
+ \group_begin:
+ \keys_set_known:nn { jsonparse / typeset } {#1} \l__jsonparse_unused_keys_clist
+ \__jsonparse_warning_unused_keys:
+ \bool_if:NTF \l__jsonparse_rescan_bool {
+ \exp_args:Ne \__jsonparse_rescan:n { \prop_item:Ne #2 {#3} }
+ } {
+ \prop_item:Ne #2 {#3}
+ }
+ \group_end:
}
\NewDocumentCommand { \JSONParseKeys } { m m } {
@@ -700,7 +1111,7 @@
\tl_if_in:nVF {##1} \l__jsonparse_child_sep_str {
\bool_if:NTF \l__jsonparse_prop_map_first_bool {
\bool_set_false:N \l__jsonparse_prop_map_first_bool
- } {
+ } {
\tl_put_right:Nn \l__jsonparse_temp_tl { , }
}
\tl_put_right:Nn \l__jsonparse_temp_tl { " ##1 " }
@@ -710,8 +1121,10 @@
\tl_set_eq:NN #2 \l__jsonparse_temp_tl
}
-\NewDocumentCommand { \JSONParseArrayValues } { s m m O{} m } {
+\NewDocumentCommand { \JSONParseArrayValues } { O{} m m O{} m } {
\group_begin:
+ \keys_set_known:nn { jsonparse / typeset } {#1} \l__jsonparse_unused_keys_clist
+ \__jsonparse_warning_unused_keys:
\tl_set:Nn \l__jsonparse_temp_tl {#2}
\jsonparse_filter:Nn \l__jsonparse_temp_tl {#3}
\bool_set_true:N \l__jsonparse_prop_map_first_bool
@@ -721,13 +1134,13 @@
} {#4} {
\bool_if:NTF \l__jsonparse_prop_map_first_bool {
\bool_set_false:N \l__jsonparse_prop_map_first_bool
- } {
+ } {
#5
}
- \bool_if:NTF #1 {
- ##2
- } {
+ \bool_if:NTF \l__jsonparse_rescan_bool {
\__jsonparse_rescan:n {##2}
+ } {
+ ##2
}
}
}
@@ -759,10 +1172,12 @@
\tl_new:N \JSONParseArrayIndex
\tl_new:N \JSONParseArrayKey
-\tl_new:N \JSONParseArrayValue
+\tl_new:N \JSONParseArrayValue
-\NewDocumentCommand { \JSONParseArrayValuesMap } { s m m O{} m } {
+\NewDocumentCommand { \JSONParseArrayValuesMap } { O{} m m O{} m } {
\group_begin:
+ \keys_set_known:nn { jsonparse / typeset } {#1} \l__jsonparse_unused_keys_clist
+ \__jsonparse_warning_unused_keys:
\jsonparse_filter:Nn #2 {#3}
\prop_map_inline:Nn #2 {
\str_if_eq:enT {
@@ -771,10 +1186,10 @@
\int_incr:N \l__jsonparse_array_index_int
\tl_set:Ne \JSONParseArrayIndex { \__jsonparse_get_array_index:w ##1 \q_stop }
\tl_set:Nn \JSONParseArrayKey {##1}
- \bool_if:NTF #1 {
- \tl_set:Nn \JSONParseArrayValue { \prop_item:Nn #2 {##1} }
- } {
+ \bool_if:NTF \l__jsonparse_rescan_bool {
\tl_set:Nn \JSONParseArrayValue { \exp_args:Ne \__jsonparse_rescan:n { \prop_item:Nn #2 {##1} } }
+ } {
+ \tl_set:Nn \JSONParseArrayValue { \prop_item:Nn #2 {##1} }
}
\use:c {#5}
}
diff --git a/Master/texmf-dist/tex/latex/junicode/LGRJunicode-Inf.fd b/Master/texmf-dist/tex/latex/junicode/LGRJunicode-Inf.fd
index 1741a4af34c..966bf21d46a 100644
--- a/Master/texmf-dist/tex/latex/junicode/LGRJunicode-Inf.fd
+++ b/Master/texmf-dist/tex/latex/junicode/LGRJunicode-Inf.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{LGRJunicode-Inf.fd}
- [2024/06/03 (autoinst) Font definitions for LGR/Junicode-Inf.]
+ [2024/07/21 (autoinst) Font definitions for LGR/Junicode-Inf.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,6 +20,33 @@
\DeclareFontFamily{LGR}{Junicode-Inf}{}
+% ---- lsc = lightsemicondensed ----
+
+\DeclareFontShape{LGR}{Junicode-Inf}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-inf-lgr
+}{}
+
+\DeclareFontShape{LGR}{Junicode-Inf}{lightsemicondensed}{n}{
+ <-> alias * Junicode-Inf/lsc/n
+}{}
+
+\DeclareFontShape{LGR}{Junicode-Inf}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-inf-lgr
+}{}
+
+\DeclareFontShape{LGR}{Junicode-Inf}{lightsemicondensed}{it}{
+ <-> alias * Junicode-Inf/lsc/it
+}{}
+
+\DeclareFontShape{LGR}{Junicode-Inf}{lsc}{sl}{
+ <-> ssub * Junicode-Inf/lsc/it
+}{}
+
+\DeclareFontShape{LGR}{Junicode-Inf}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-Inf/lightsemicondensed/it
+}{}
+
+
% ---- mediumexpanded ----
\DeclareFontShape{LGR}{Junicode-Inf}{mediumexpanded}{it}{
@@ -35,50 +62,43 @@
}{}
-% ---- sbsx = semiboldsemiexpanded ----
+% ---- b = bold ----
-\DeclareFontShape{LGR}{Junicode-Inf}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-Inf/sbsx/it
+\DeclareFontShape{LGR}{Junicode-Inf}{bold}{it}{
+ <-> alias * Junicode-Inf/b/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-Inf/sbsx/n
+\DeclareFontShape{LGR}{Junicode-Inf}{bold}{n}{
+ <-> alias * Junicode-Inf/b/n
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{sbsx}{sl}{
- <-> ssub * Junicode-Inf/sbsx/it
+\DeclareFontShape{LGR}{Junicode-Inf}{b}{sl}{
+ <-> ssub * Junicode-Inf/b/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-Inf/semiboldsemiexpanded/it
+\DeclareFontShape{LGR}{Junicode-Inf}{bold}{sl}{
+ <-> ssub * Junicode-Inf/bold/it
}{}
-% ---- mediumsemiexpanded ----
-
-\DeclareFontShape{LGR}{Junicode-Inf}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-inf-lgr
-}{}
+% ---- x = expanded ----
-\DeclareFontShape{LGR}{Junicode-Inf}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-Inf/mediumsemiexpanded/it
+\DeclareFontShape{LGR}{Junicode-Inf}{expanded}{it}{
+ <-> alias * Junicode-Inf/x/it
}{}
-
-% ---- x = expanded ----
-
\DeclareFontShape{LGR}{Junicode-Inf}{x}{n}{
<-> \Junicode@@scale Junicode-Exp-inf-lgr
}{}
@@ -87,14 +107,6 @@
<-> alias * Junicode-Inf/x/n
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-inf-lgr
-}{}
-
-\DeclareFontShape{LGR}{Junicode-Inf}{expanded}{it}{
- <-> alias * Junicode-Inf/x/it
-}{}
-
\DeclareFontShape{LGR}{Junicode-Inf}{x}{sl}{
<-> ssub * Junicode-Inf/x/it
}{}
@@ -104,6 +116,33 @@
}{}
+% ---- sbx = semiboldexpanded ----
+
+\DeclareFontShape{LGR}{Junicode-Inf}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-inf-lgr
+}{}
+
+\DeclareFontShape{LGR}{Junicode-Inf}{semiboldexpanded}{it}{
+ <-> alias * Junicode-Inf/sbx/it
+}{}
+
+\DeclareFontShape{LGR}{Junicode-Inf}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-inf-lgr
+}{}
+
+\DeclareFontShape{LGR}{Junicode-Inf}{semiboldexpanded}{n}{
+ <-> alias * Junicode-Inf/sbx/n
+}{}
+
+\DeclareFontShape{LGR}{Junicode-Inf}{sbx}{sl}{
+ <-> ssub * Junicode-Inf/sbx/it
+}{}
+
+\DeclareFontShape{LGR}{Junicode-Inf}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-Inf/semiboldexpanded/it
+}{}
+
+
% ---- c = condensed ----
\DeclareFontShape{LGR}{Junicode-Inf}{c}{it}{
@@ -131,345 +170,306 @@
}{}
-% ---- sx = semiexpanded ----
-
-\DeclareFontShape{LGR}{Junicode-Inf}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-inf-lgr
-}{}
+% ---- sc = semicondensed ----
-\DeclareFontShape{LGR}{Junicode-Inf}{semiexpanded}{it}{
- <-> alias * Junicode-Inf/sx/it
+\DeclareFontShape{LGR}{Junicode-Inf}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{semicondensed}{n}{
+ <-> alias * Junicode-Inf/sc/n
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{semiexpanded}{n}{
- <-> alias * Junicode-Inf/sx/n
+\DeclareFontShape{LGR}{Junicode-Inf}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{sx}{sl}{
- <-> ssub * Junicode-Inf/sx/it
+\DeclareFontShape{LGR}{Junicode-Inf}{semicondensed}{it}{
+ <-> alias * Junicode-Inf/sc/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{semiexpanded}{sl}{
- <-> ssub * Junicode-Inf/semiexpanded/it
+\DeclareFontShape{LGR}{Junicode-Inf}{sc}{sl}{
+ <-> ssub * Junicode-Inf/sc/it
}{}
-
-% ---- m = regular ----
-
-\DeclareFontShape{LGR}{Junicode-Inf}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{semicondensed}{sl}{
+ <-> ssub * Junicode-Inf/semicondensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{regular}{it}{
- <-> alias * Junicode-Inf/m/it
-}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-inf-lgr
-}{}
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{LGR}{Junicode-Inf}{regular}{n}{
- <-> alias * Junicode-Inf/m/n
+\DeclareFontShape{LGR}{Junicode-Inf}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{m}{sl}{
- <-> ssub * Junicode-Inf/m/it
+\DeclareFontShape{LGR}{Junicode-Inf}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-Inf/bsx/n
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{regular}{sl}{
- <-> ssub * Junicode-Inf/regular/it
+\DeclareFontShape{LGR}{Junicode-Inf}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-inf-lgr
}{}
-
-% ---- medium ----
-
-\DeclareFontShape{LGR}{Junicode-Inf}{medium}{n}{
- <-> \Junicode@@scale Junicode-Medium-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-Inf/bsx/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{bsx}{sl}{
+ <-> ssub * Junicode-Inf/bsx/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{medium}{sl}{
- <-> ssub * Junicode-Inf/medium/it
+\DeclareFontShape{LGR}{Junicode-Inf}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-Inf/boldsemiexpanded/it
}{}
-% ---- lsc = lightsemicondensed ----
-
-\DeclareFontShape{LGR}{Junicode-Inf}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-inf-lgr
-}{}
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{LGR}{Junicode-Inf}{lightsemicondensed}{it}{
- <-> alias * Junicode-Inf/lsc/it
+\DeclareFontShape{LGR}{Junicode-Inf}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-Inf/sbsx/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{lightsemicondensed}{n}{
- <-> alias * Junicode-Inf/lsc/n
+\DeclareFontShape{LGR}{Junicode-Inf}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{lsc}{sl}{
- <-> ssub * Junicode-Inf/lsc/it
+\DeclareFontShape{LGR}{Junicode-Inf}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-Inf/sbsx/n
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-Inf/lightsemicondensed/it
+\DeclareFontShape{LGR}{Junicode-Inf}{sbsx}{sl}{
+ <-> ssub * Junicode-Inf/sbsx/it
}{}
-
-% ---- l = light ----
-
-\DeclareFontShape{LGR}{Junicode-Inf}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-Inf/semiboldsemiexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{light}{n}{
- <-> alias * Junicode-Inf/l/n
-}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-inf-lgr
-}{}
+% ---- mediumcondensed ----
-\DeclareFontShape{LGR}{Junicode-Inf}{light}{it}{
- <-> alias * Junicode-Inf/l/it
+\DeclareFontShape{LGR}{Junicode-Inf}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{l}{sl}{
- <-> ssub * Junicode-Inf/l/it
+\DeclareFontShape{LGR}{Junicode-Inf}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{light}{sl}{
- <-> ssub * Junicode-Inf/light/it
+\DeclareFontShape{LGR}{Junicode-Inf}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-Inf/mediumcondensed/it
}{}
-% ---- bx = boldexpanded ----
+% ---- sb = semibold ----
-\DeclareFontShape{LGR}{Junicode-Inf}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{boldexpanded}{it}{
- <-> alias * Junicode-Inf/bx/it
+\DeclareFontShape{LGR}{Junicode-Inf}{semibold}{n}{
+ <-> alias * Junicode-Inf/sb/n
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{boldexpanded}{n}{
- <-> alias * Junicode-Inf/bx/n
+\DeclareFontShape{LGR}{Junicode-Inf}{semibold}{it}{
+ <-> alias * Junicode-Inf/sb/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{bx}{sl}{
- <-> ssub * Junicode-Inf/bx/it
+\DeclareFontShape{LGR}{Junicode-Inf}{sb}{sl}{
+ <-> ssub * Junicode-Inf/sb/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{boldexpanded}{sl}{
- <-> ssub * Junicode-Inf/boldexpanded/it
+\DeclareFontShape{LGR}{Junicode-Inf}{semibold}{sl}{
+ <-> ssub * Junicode-Inf/semibold/it
}{}
-% ---- mediumcondensed ----
+% ---- mediumsemicondensed ----
-\DeclareFontShape{LGR}{Junicode-Inf}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{mediumcondensed}{sl}{
- <-> ssub * Junicode-Inf/mediumcondensed/it
+\DeclareFontShape{LGR}{Junicode-Inf}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-Inf/mediumsemicondensed/it
}{}
-% ---- b = bold ----
+% ---- l = light ----
-\DeclareFontShape{LGR}{Junicode-Inf}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{bold}{it}{
- <-> alias * Junicode-Inf/b/it
+\DeclareFontShape{LGR}{Junicode-Inf}{light}{n}{
+ <-> alias * Junicode-Inf/l/n
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{bold}{n}{
- <-> alias * Junicode-Inf/b/n
+\DeclareFontShape{LGR}{Junicode-Inf}{light}{it}{
+ <-> alias * Junicode-Inf/l/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{b}{sl}{
- <-> ssub * Junicode-Inf/b/it
+\DeclareFontShape{LGR}{Junicode-Inf}{l}{sl}{
+ <-> ssub * Junicode-Inf/l/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{bold}{sl}{
- <-> ssub * Junicode-Inf/bold/it
+\DeclareFontShape{LGR}{Junicode-Inf}{light}{sl}{
+ <-> ssub * Junicode-Inf/light/it
}{}
-% ---- bsx = boldsemiexpanded ----
-
-\DeclareFontShape{LGR}{Junicode-Inf}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-inf-lgr
-}{}
+% ---- sx = semiexpanded ----
-\DeclareFontShape{LGR}{Junicode-Inf}{boldsemiexpanded}{n}{
- <-> alias * Junicode-Inf/bsx/n
+\DeclareFontShape{LGR}{Junicode-Inf}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{semiexpanded}{n}{
+ <-> alias * Junicode-Inf/sx/n
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{boldsemiexpanded}{it}{
- <-> alias * Junicode-Inf/bsx/it
+\DeclareFontShape{LGR}{Junicode-Inf}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{bsx}{sl}{
- <-> ssub * Junicode-Inf/bsx/it
+\DeclareFontShape{LGR}{Junicode-Inf}{semiexpanded}{it}{
+ <-> alias * Junicode-Inf/sx/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-Inf/boldsemiexpanded/it
+\DeclareFontShape{LGR}{Junicode-Inf}{sx}{sl}{
+ <-> ssub * Junicode-Inf/sx/it
}{}
-
-% ---- lc = lightcondensed ----
-
-\DeclareFontShape{LGR}{Junicode-Inf}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{semiexpanded}{sl}{
+ <-> ssub * Junicode-Inf/semiexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{lightcondensed}{n}{
- <-> alias * Junicode-Inf/lc/n
-}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-inf-lgr
-}{}
+% ---- medium ----
-\DeclareFontShape{LGR}{Junicode-Inf}{lightcondensed}{it}{
- <-> alias * Junicode-Inf/lc/it
+\DeclareFontShape{LGR}{Junicode-Inf}{medium}{n}{
+ <-> \Junicode@@scale Junicode-Medium-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{lc}{sl}{
- <-> ssub * Junicode-Inf/lc/it
+\DeclareFontShape{LGR}{Junicode-Inf}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{lightcondensed}{sl}{
- <-> ssub * Junicode-Inf/lightcondensed/it
+\DeclareFontShape{LGR}{Junicode-Inf}{medium}{sl}{
+ <-> ssub * Junicode-Inf/medium/it
}{}
-% ---- sb = semibold ----
+% ---- bx = boldexpanded ----
-\DeclareFontShape{LGR}{Junicode-Inf}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{semibold}{it}{
- <-> alias * Junicode-Inf/sb/it
+\DeclareFontShape{LGR}{Junicode-Inf}{boldexpanded}{n}{
+ <-> alias * Junicode-Inf/bx/n
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{semibold}{n}{
- <-> alias * Junicode-Inf/sb/n
+\DeclareFontShape{LGR}{Junicode-Inf}{boldexpanded}{it}{
+ <-> alias * Junicode-Inf/bx/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{sb}{sl}{
- <-> ssub * Junicode-Inf/sb/it
+\DeclareFontShape{LGR}{Junicode-Inf}{bx}{sl}{
+ <-> ssub * Junicode-Inf/bx/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{semibold}{sl}{
- <-> ssub * Junicode-Inf/semibold/it
+\DeclareFontShape{LGR}{Junicode-Inf}{boldexpanded}{sl}{
+ <-> ssub * Junicode-Inf/boldexpanded/it
}{}
-% ---- sc = semicondensed ----
+% ---- mediumsemiexpanded ----
-\DeclareFontShape{LGR}{Junicode-Inf}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{semicondensed}{n}{
- <-> alias * Junicode-Inf/sc/n
+\DeclareFontShape{LGR}{Junicode-Inf}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-Inf/mediumsemiexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{semicondensed}{it}{
- <-> alias * Junicode-Inf/sc/it
-}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{sc}{sl}{
- <-> ssub * Junicode-Inf/sc/it
-}{}
+% ---- m = regular ----
-\DeclareFontShape{LGR}{Junicode-Inf}{semicondensed}{sl}{
- <-> ssub * Junicode-Inf/semicondensed/it
+\DeclareFontShape{LGR}{Junicode-Inf}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-inf-lgr
}{}
+\DeclareFontShape{LGR}{Junicode-Inf}{regular}{n}{
+ <-> alias * Junicode-Inf/m/n
+}{}
-% ---- mediumsemicondensed ----
+\DeclareFontShape{LGR}{Junicode-Inf}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-inf-lgr
+}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{regular}{it}{
+ <-> alias * Junicode-Inf/m/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{m}{sl}{
+ <-> ssub * Junicode-Inf/m/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-Inf/mediumsemicondensed/it
+\DeclareFontShape{LGR}{Junicode-Inf}{regular}{sl}{
+ <-> ssub * Junicode-Inf/regular/it
}{}
-% ---- sbx = semiboldexpanded ----
+% ---- lc = lightcondensed ----
-\DeclareFontShape{LGR}{Junicode-Inf}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{semiboldexpanded}{it}{
- <-> alias * Junicode-Inf/sbx/it
+\DeclareFontShape{LGR}{Junicode-Inf}{lightcondensed}{n}{
+ <-> alias * Junicode-Inf/lc/n
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-inf-lgr
+\DeclareFontShape{LGR}{Junicode-Inf}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-inf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{semiboldexpanded}{n}{
- <-> alias * Junicode-Inf/sbx/n
+\DeclareFontShape{LGR}{Junicode-Inf}{lightcondensed}{it}{
+ <-> alias * Junicode-Inf/lc/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{sbx}{sl}{
- <-> ssub * Junicode-Inf/sbx/it
+\DeclareFontShape{LGR}{Junicode-Inf}{lc}{sl}{
+ <-> ssub * Junicode-Inf/lc/it
}{}
-\DeclareFontShape{LGR}{Junicode-Inf}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-Inf/semiboldexpanded/it
+\DeclareFontShape{LGR}{Junicode-Inf}{lightcondensed}{sl}{
+ <-> ssub * Junicode-Inf/lightcondensed/it
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/LGRJunicode-LF.fd b/Master/texmf-dist/tex/latex/junicode/LGRJunicode-LF.fd
index 5e4958c6c0f..da1c18dc7b9 100644
--- a/Master/texmf-dist/tex/latex/junicode/LGRJunicode-LF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/LGRJunicode-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{LGRJunicode-LF.fd}
- [2024/06/03 (autoinst) Font definitions for LGR/Junicode-LF.]
+ [2024/07/21 (autoinst) Font definitions for LGR/Junicode-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,161 +20,212 @@
\DeclareFontFamily{LGR}{Junicode-LF}{}
-% ---- bx = boldexpanded ----
+% ---- c = condensed ----
-\DeclareFontShape{LGR}{Junicode-LF}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{c}{sc}{
+ <-> \Junicode@@scale Junicode-Cond-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{boldexpanded}{it}{
- <-> alias * Junicode-LF/bx/it
+\DeclareFontShape{LGR}{Junicode-LF}{condensed}{sc}{
+ <-> alias * Junicode-LF/c/sc
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{bx}{scit}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{c}{scit}{
+ <-> \Junicode@@scale Junicode-CondItalic-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{boldexpanded}{scit}{
- <-> alias * Junicode-LF/bx/scit
+\DeclareFontShape{LGR}{Junicode-LF}{condensed}{scit}{
+ <-> alias * Junicode-LF/c/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{boldexpanded}{n}{
- <-> alias * Junicode-LF/bx/n
+\DeclareFontShape{LGR}{Junicode-LF}{condensed}{n}{
+ <-> alias * Junicode-LF/c/n
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{bx}{sc}{
- <-> \Junicode@@scale Junicode-ExpBold-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{boldexpanded}{sc}{
- <-> alias * Junicode-LF/bx/sc
+\DeclareFontShape{LGR}{Junicode-LF}{condensed}{it}{
+ <-> alias * Junicode-LF/c/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{bx}{scsl}{
- <-> ssub * Junicode-LF/bx/scit
+\DeclareFontShape{LGR}{Junicode-LF}{c}{sl}{
+ <-> ssub * Junicode-LF/c/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{boldexpanded}{scsl}{
- <-> ssub * Junicode-LF/boldexpanded/scit
+\DeclareFontShape{LGR}{Junicode-LF}{condensed}{sl}{
+ <-> ssub * Junicode-LF/condensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{bx}{sl}{
- <-> ssub * Junicode-LF/bx/it
+\DeclareFontShape{LGR}{Junicode-LF}{c}{scsl}{
+ <-> ssub * Junicode-LF/c/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{boldexpanded}{sl}{
- <-> ssub * Junicode-LF/boldexpanded/it
+\DeclareFontShape{LGR}{Junicode-LF}{condensed}{scsl}{
+ <-> ssub * Junicode-LF/condensed/scit
}{}
-% ---- l = light ----
+% ---- sbx = semiboldexpanded ----
-\DeclareFontShape{LGR}{Junicode-LF}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{sbx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{light}{n}{
- <-> alias * Junicode-LF/l/n
+\DeclareFontShape{LGR}{Junicode-LF}{semiboldexpanded}{sc}{
+ <-> alias * Junicode-LF/sbx/sc
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{l}{sc}{
- <-> \Junicode@@scale Junicode-Light-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{light}{sc}{
- <-> alias * Junicode-LF/l/sc
+\DeclareFontShape{LGR}{Junicode-LF}{semiboldexpanded}{it}{
+ <-> alias * Junicode-LF/sbx/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{sbx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{light}{it}{
- <-> alias * Junicode-LF/l/it
+\DeclareFontShape{LGR}{Junicode-LF}{semiboldexpanded}{scit}{
+ <-> alias * Junicode-LF/sbx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{l}{scit}{
- <-> \Junicode@@scale Junicode-LightItalic-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{light}{scit}{
- <-> alias * Junicode-LF/l/scit
+\DeclareFontShape{LGR}{Junicode-LF}{semiboldexpanded}{n}{
+ <-> alias * Junicode-LF/sbx/n
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{l}{scsl}{
- <-> ssub * Junicode-LF/l/scit
+\DeclareFontShape{LGR}{Junicode-LF}{sbx}{sl}{
+ <-> ssub * Junicode-LF/sbx/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{light}{scsl}{
- <-> ssub * Junicode-LF/light/scit
+\DeclareFontShape{LGR}{Junicode-LF}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-LF/semiboldexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{l}{sl}{
- <-> ssub * Junicode-LF/l/it
+\DeclareFontShape{LGR}{Junicode-LF}{sbx}{scsl}{
+ <-> ssub * Junicode-LF/sbx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{light}{sl}{
- <-> ssub * Junicode-LF/light/it
+\DeclareFontShape{LGR}{Junicode-LF}{semiboldexpanded}{scsl}{
+ <-> ssub * Junicode-LF/semiboldexpanded/scit
}{}
-% ---- medium ----
+% ---- x = expanded ----
-\DeclareFontShape{LGR}{Junicode-LF}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{x}{sc}{
+ <-> \Junicode@@scale Junicode-Exp-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{medium}{scit}{
- <-> \Junicode@@scale Junicode-MediumItalic-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{expanded}{sc}{
+ <-> alias * Junicode-LF/x/sc
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{medium}{n}{
- <-> \Junicode@@scale Junicode-Medium-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{x}{scit}{
+ <-> \Junicode@@scale Junicode-ExpItalic-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{medium}{sc}{
- <-> \Junicode@@scale Junicode-Medium-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{expanded}{scit}{
+ <-> alias * Junicode-LF/x/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{medium}{scsl}{
- <-> ssub * Junicode-LF/medium/scit
+\DeclareFontShape{LGR}{Junicode-LF}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{medium}{sl}{
- <-> ssub * Junicode-LF/medium/it
+\DeclareFontShape{LGR}{Junicode-LF}{expanded}{n}{
+ <-> alias * Junicode-LF/x/n
}{}
+\DeclareFontShape{LGR}{Junicode-LF}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-lf-lgr
+}{}
-% ---- lsc = lightsemicondensed ----
+\DeclareFontShape{LGR}{Junicode-LF}{expanded}{it}{
+ <-> alias * Junicode-LF/x/it
+}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{x}{sl}{
+ <-> ssub * Junicode-LF/x/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lightsemicondensed}{n}{
- <-> alias * Junicode-LF/lsc/n
+\DeclareFontShape{LGR}{Junicode-LF}{expanded}{sl}{
+ <-> ssub * Junicode-LF/expanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lsc}{sc}{
- <-> \Junicode@@scale Junicode-SmCondLight-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{x}{scsl}{
+ <-> ssub * Junicode-LF/x/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lightsemicondensed}{sc}{
- <-> alias * Junicode-LF/lsc/sc
+\DeclareFontShape{LGR}{Junicode-LF}{expanded}{scsl}{
+ <-> ssub * Junicode-LF/expanded/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-lf-lgr
+
+% ---- b = bold ----
+
+\DeclareFontShape{LGR}{Junicode-LF}{b}{sc}{
+ <-> \Junicode@@scale Junicode-Bold-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lightsemicondensed}{it}{
- <-> alias * Junicode-LF/lsc/it
+\DeclareFontShape{LGR}{Junicode-LF}{bold}{sc}{
+ <-> alias * Junicode-LF/b/sc
+}{}
+
+\DeclareFontShape{LGR}{Junicode-LF}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-lf-lgr
+}{}
+
+\DeclareFontShape{LGR}{Junicode-LF}{bold}{it}{
+ <-> alias * Junicode-LF/b/it
+}{}
+
+\DeclareFontShape{LGR}{Junicode-LF}{b}{scit}{
+ <-> \Junicode@@scale Junicode-BoldItalic-lf-sc-lgr
+}{}
+
+\DeclareFontShape{LGR}{Junicode-LF}{bold}{scit}{
+ <-> alias * Junicode-LF/b/scit
+}{}
+
+\DeclareFontShape{LGR}{Junicode-LF}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-lf-lgr
+}{}
+
+\DeclareFontShape{LGR}{Junicode-LF}{bold}{n}{
+ <-> alias * Junicode-LF/b/n
}{}
+\DeclareFontShape{LGR}{Junicode-LF}{b}{sl}{
+ <-> ssub * Junicode-LF/b/it
+}{}
+
+\DeclareFontShape{LGR}{Junicode-LF}{bold}{sl}{
+ <-> ssub * Junicode-LF/bold/it
+}{}
+
+\DeclareFontShape{LGR}{Junicode-LF}{b}{scsl}{
+ <-> ssub * Junicode-LF/b/scit
+}{}
+
+\DeclareFontShape{LGR}{Junicode-LF}{bold}{scsl}{
+ <-> ssub * Junicode-LF/bold/scit
+}{}
+
+
+% ---- lsc = lightsemicondensed ----
+
\DeclareFontShape{LGR}{Junicode-LF}{lsc}{scit}{
<-> \Junicode@@scale Junicode-SmCondLightItalic-lf-sc-lgr
}{}
@@ -183,12 +234,28 @@
<-> alias * Junicode-LF/lsc/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lsc}{scsl}{
- <-> ssub * Junicode-LF/lsc/scit
+\DeclareFontShape{LGR}{Junicode-LF}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lightsemicondensed}{scsl}{
- <-> ssub * Junicode-LF/lightsemicondensed/scit
+\DeclareFontShape{LGR}{Junicode-LF}{lightsemicondensed}{n}{
+ <-> alias * Junicode-LF/lsc/n
+}{}
+
+\DeclareFontShape{LGR}{Junicode-LF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-lf-lgr
+}{}
+
+\DeclareFontShape{LGR}{Junicode-LF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-LF/lsc/it
+}{}
+
+\DeclareFontShape{LGR}{Junicode-LF}{lsc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondLight-lf-sc-lgr
+}{}
+
+\DeclareFontShape{LGR}{Junicode-LF}{lightsemicondensed}{sc}{
+ <-> alias * Junicode-LF/lsc/sc
}{}
\DeclareFontShape{LGR}{Junicode-LF}{lsc}{sl}{
@@ -199,25 +266,44 @@
<-> ssub * Junicode-LF/lightsemicondensed/it
}{}
+\DeclareFontShape{LGR}{Junicode-LF}{lsc}{scsl}{
+ <-> ssub * Junicode-LF/lsc/scit
+}{}
-% ---- m = regular ----
+\DeclareFontShape{LGR}{Junicode-LF}{lightsemicondensed}{scsl}{
+ <-> ssub * Junicode-LF/lightsemicondensed/scit
+}{}
-\DeclareFontShape{LGR}{Junicode-LF}{m}{scit}{
- <-> \Junicode@@scale Junicode-Italic-lf-sc-lgr
+
+% ---- mediumexpanded ----
+
+\DeclareFontShape{LGR}{Junicode-LF}{mediumexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-ExpMedium-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{regular}{scit}{
- <-> alias * Junicode-LF/m/scit
+\DeclareFontShape{LGR}{Junicode-LF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{mediumexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{regular}{it}{
- <-> alias * Junicode-LF/m/it
+\DeclareFontShape{LGR}{Junicode-LF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-lf-lgr
+}{}
+
+\DeclareFontShape{LGR}{Junicode-LF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-LF/mediumexpanded/it
}{}
+\DeclareFontShape{LGR}{Junicode-LF}{mediumexpanded}{scsl}{
+ <-> ssub * Junicode-LF/mediumexpanded/scit
+}{}
+
+
+% ---- m = regular ----
+
\DeclareFontShape{LGR}{Junicode-LF}{m}{sc}{
<-> \Junicode@@scale Junicode-Regular-lf-sc-lgr
}{}
@@ -234,361 +320,334 @@
<-> alias * Junicode-LF/m/n
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{m}{scsl}{
- <-> ssub * Junicode-LF/m/scit
+\DeclareFontShape{LGR}{Junicode-LF}{m}{scit}{
+ <-> \Junicode@@scale Junicode-Italic-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{regular}{scsl}{
- <-> ssub * Junicode-LF/regular/scit
+\DeclareFontShape{LGR}{Junicode-LF}{regular}{scit}{
+ <-> alias * Junicode-LF/m/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{m}{sl}{
- <-> ssub * Junicode-LF/m/it
+\DeclareFontShape{LGR}{Junicode-LF}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{regular}{sl}{
- <-> ssub * Junicode-LF/regular/it
+\DeclareFontShape{LGR}{Junicode-LF}{regular}{it}{
+ <-> alias * Junicode-LF/m/it
}{}
-
-% ---- x = expanded ----
-
-\DeclareFontShape{LGR}{Junicode-LF}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{m}{sl}{
+ <-> ssub * Junicode-LF/m/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{expanded}{n}{
- <-> alias * Junicode-LF/x/n
+\DeclareFontShape{LGR}{Junicode-LF}{regular}{sl}{
+ <-> ssub * Junicode-LF/regular/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{x}{sc}{
- <-> \Junicode@@scale Junicode-Exp-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{m}{scsl}{
+ <-> ssub * Junicode-LF/m/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{expanded}{sc}{
- <-> alias * Junicode-LF/x/sc
+\DeclareFontShape{LGR}{Junicode-LF}{regular}{scsl}{
+ <-> ssub * Junicode-LF/regular/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-lf-lgr
-}{}
-\DeclareFontShape{LGR}{Junicode-LF}{expanded}{it}{
- <-> alias * Junicode-LF/x/it
-}{}
+% ---- mediumsemiexpanded ----
-\DeclareFontShape{LGR}{Junicode-LF}{x}{scit}{
- <-> \Junicode@@scale Junicode-ExpItalic-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{mediumsemiexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{expanded}{scit}{
- <-> alias * Junicode-LF/x/scit
+\DeclareFontShape{LGR}{Junicode-LF}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{x}{scsl}{
- <-> ssub * Junicode-LF/x/scit
+\DeclareFontShape{LGR}{Junicode-LF}{mediumsemiexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{expanded}{scsl}{
- <-> ssub * Junicode-LF/expanded/scit
+\DeclareFontShape{LGR}{Junicode-LF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{x}{sl}{
- <-> ssub * Junicode-LF/x/it
+\DeclareFontShape{LGR}{Junicode-LF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-LF/mediumsemiexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{expanded}{sl}{
- <-> ssub * Junicode-LF/expanded/it
+\DeclareFontShape{LGR}{Junicode-LF}{mediumsemiexpanded}{scsl}{
+ <-> ssub * Junicode-LF/mediumsemiexpanded/scit
}{}
-% ---- c = condensed ----
+% ---- bx = boldexpanded ----
-\DeclareFontShape{LGR}{Junicode-LF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{bx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpBold-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{condensed}{it}{
- <-> alias * Junicode-LF/c/it
+\DeclareFontShape{LGR}{Junicode-LF}{boldexpanded}{sc}{
+ <-> alias * Junicode-LF/bx/sc
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{c}{scit}{
- <-> \Junicode@@scale Junicode-CondItalic-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{condensed}{scit}{
- <-> alias * Junicode-LF/c/scit
+\DeclareFontShape{LGR}{Junicode-LF}{boldexpanded}{n}{
+ <-> alias * Junicode-LF/bx/n
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{bx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{condensed}{n}{
- <-> alias * Junicode-LF/c/n
+\DeclareFontShape{LGR}{Junicode-LF}{boldexpanded}{scit}{
+ <-> alias * Junicode-LF/bx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{c}{sc}{
- <-> \Junicode@@scale Junicode-Cond-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{condensed}{sc}{
- <-> alias * Junicode-LF/c/sc
+\DeclareFontShape{LGR}{Junicode-LF}{boldexpanded}{it}{
+ <-> alias * Junicode-LF/bx/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{c}{scsl}{
- <-> ssub * Junicode-LF/c/scit
+\DeclareFontShape{LGR}{Junicode-LF}{bx}{sl}{
+ <-> ssub * Junicode-LF/bx/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{condensed}{scsl}{
- <-> ssub * Junicode-LF/condensed/scit
+\DeclareFontShape{LGR}{Junicode-LF}{boldexpanded}{sl}{
+ <-> ssub * Junicode-LF/boldexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{c}{sl}{
- <-> ssub * Junicode-LF/c/it
+\DeclareFontShape{LGR}{Junicode-LF}{bx}{scsl}{
+ <-> ssub * Junicode-LF/bx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{condensed}{sl}{
- <-> ssub * Junicode-LF/condensed/it
+\DeclareFontShape{LGR}{Junicode-LF}{boldexpanded}{scsl}{
+ <-> ssub * Junicode-LF/boldexpanded/scit
}{}
-% ---- sx = semiexpanded ----
+% ---- medium ----
-\DeclareFontShape{LGR}{Junicode-LF}{sx}{sc}{
- <-> \Junicode@@scale Junicode-SmExp-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semiexpanded}{sc}{
- <-> alias * Junicode-LF/sx/sc
+\DeclareFontShape{LGR}{Junicode-LF}{medium}{scit}{
+ <-> \Junicode@@scale Junicode-MediumItalic-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{medium}{n}{
+ <-> \Junicode@@scale Junicode-Medium-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semiexpanded}{n}{
- <-> alias * Junicode-LF/sx/n
+\DeclareFontShape{LGR}{Junicode-LF}{medium}{sc}{
+ <-> \Junicode@@scale Junicode-Medium-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{sx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpItalic-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{medium}{sl}{
+ <-> ssub * Junicode-LF/medium/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semiexpanded}{scit}{
- <-> alias * Junicode-LF/sx/scit
+\DeclareFontShape{LGR}{Junicode-LF}{medium}{scsl}{
+ <-> ssub * Junicode-LF/medium/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-lf-lgr
-}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semiexpanded}{it}{
- <-> alias * Junicode-LF/sx/it
-}{}
+% ---- lc = lightcondensed ----
-\DeclareFontShape{LGR}{Junicode-LF}{sx}{scsl}{
- <-> ssub * Junicode-LF/sx/scit
+\DeclareFontShape{LGR}{Junicode-LF}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semiexpanded}{scsl}{
- <-> ssub * Junicode-LF/semiexpanded/scit
+\DeclareFontShape{LGR}{Junicode-LF}{lightcondensed}{it}{
+ <-> alias * Junicode-LF/lc/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{sx}{sl}{
- <-> ssub * Junicode-LF/sx/it
+\DeclareFontShape{LGR}{Junicode-LF}{lc}{scit}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semiexpanded}{sl}{
- <-> ssub * Junicode-LF/semiexpanded/it
+\DeclareFontShape{LGR}{Junicode-LF}{lightcondensed}{scit}{
+ <-> alias * Junicode-LF/lc/scit
}{}
+\DeclareFontShape{LGR}{Junicode-LF}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-lf-lgr
+}{}
-% ---- mediumsemiexpanded ----
+\DeclareFontShape{LGR}{Junicode-LF}{lightcondensed}{n}{
+ <-> alias * Junicode-LF/lc/n
+}{}
-\DeclareFontShape{LGR}{Junicode-LF}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{lc}{sc}{
+ <-> \Junicode@@scale Junicode-CondLight-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{mediumsemiexpanded}{sc}{
- <-> \Junicode@@scale Junicode-SmExpMedium-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{lightcondensed}{sc}{
+ <-> alias * Junicode-LF/lc/sc
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{lc}{sl}{
+ <-> ssub * Junicode-LF/lc/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{mediumsemiexpanded}{scit}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{lightcondensed}{sl}{
+ <-> ssub * Junicode-LF/lightcondensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{mediumsemiexpanded}{scsl}{
- <-> ssub * Junicode-LF/mediumsemiexpanded/scit
+\DeclareFontShape{LGR}{Junicode-LF}{lc}{scsl}{
+ <-> ssub * Junicode-LF/lc/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-LF/mediumsemiexpanded/it
+\DeclareFontShape{LGR}{Junicode-LF}{lightcondensed}{scsl}{
+ <-> ssub * Junicode-LF/lightcondensed/scit
}{}
-% ---- mediumexpanded ----
+% ---- mediumsemicondensed ----
-\DeclareFontShape{LGR}{Junicode-LF}{mediumexpanded}{scit}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{mediumsemicondensed}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{mediumexpanded}{sc}{
- <-> \Junicode@@scale Junicode-ExpMedium-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{mediumsemicondensed}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{mediumexpanded}{scsl}{
- <-> ssub * Junicode-LF/mediumexpanded/scit
+\DeclareFontShape{LGR}{Junicode-LF}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-LF/mediumsemicondensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-LF/mediumexpanded/it
+\DeclareFontShape{LGR}{Junicode-LF}{mediumsemicondensed}{scsl}{
+ <-> ssub * Junicode-LF/mediumsemicondensed/scit
}{}
-% ---- sbsx = semiboldsemiexpanded ----
+% ---- sx = semiexpanded ----
-\DeclareFontShape{LGR}{Junicode-LF}{sbsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semiboldsemiexpanded}{sc}{
- <-> alias * Junicode-LF/sbsx/sc
+\DeclareFontShape{LGR}{Junicode-LF}{semiexpanded}{it}{
+ <-> alias * Junicode-LF/sx/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-LF/sbsx/n
+\DeclareFontShape{LGR}{Junicode-LF}{semiexpanded}{n}{
+ <-> alias * Junicode-LF/sx/n
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{sbsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{sx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semiboldsemiexpanded}{scit}{
- <-> alias * Junicode-LF/sbsx/scit
+\DeclareFontShape{LGR}{Junicode-LF}{semiexpanded}{scit}{
+ <-> alias * Junicode-LF/sx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{sx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExp-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-LF/sbsx/it
+\DeclareFontShape{LGR}{Junicode-LF}{semiexpanded}{sc}{
+ <-> alias * Junicode-LF/sx/sc
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{sbsx}{scsl}{
- <-> ssub * Junicode-LF/sbsx/scit
+\DeclareFontShape{LGR}{Junicode-LF}{sx}{sl}{
+ <-> ssub * Junicode-LF/sx/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semiboldsemiexpanded}{scsl}{
- <-> ssub * Junicode-LF/semiboldsemiexpanded/scit
+\DeclareFontShape{LGR}{Junicode-LF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-LF/semiexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{sbsx}{sl}{
- <-> ssub * Junicode-LF/sbsx/it
+\DeclareFontShape{LGR}{Junicode-LF}{sx}{scsl}{
+ <-> ssub * Junicode-LF/sx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-LF/semiboldsemiexpanded/it
+\DeclareFontShape{LGR}{Junicode-LF}{semiexpanded}{scsl}{
+ <-> ssub * Junicode-LF/semiexpanded/scit
}{}
-% ---- sbx = semiboldexpanded ----
-
-\DeclareFontShape{LGR}{Junicode-LF}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-lf-lgr
-}{}
-
-\DeclareFontShape{LGR}{Junicode-LF}{semiboldexpanded}{n}{
- <-> alias * Junicode-LF/sbx/n
-}{}
+% ---- l = light ----
-\DeclareFontShape{LGR}{Junicode-LF}{sbx}{sc}{
- <-> \Junicode@@scale Junicode-ExpSmBold-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{l}{sc}{
+ <-> \Junicode@@scale Junicode-Light-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semiboldexpanded}{sc}{
- <-> alias * Junicode-LF/sbx/sc
+\DeclareFontShape{LGR}{Junicode-LF}{light}{sc}{
+ <-> alias * Junicode-LF/l/sc
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semiboldexpanded}{it}{
- <-> alias * Junicode-LF/sbx/it
+\DeclareFontShape{LGR}{Junicode-LF}{light}{n}{
+ <-> alias * Junicode-LF/l/n
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{sbx}{scit}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{l}{scit}{
+ <-> \Junicode@@scale Junicode-LightItalic-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semiboldexpanded}{scit}{
- <-> alias * Junicode-LF/sbx/scit
+\DeclareFontShape{LGR}{Junicode-LF}{light}{scit}{
+ <-> alias * Junicode-LF/l/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{sbx}{scsl}{
- <-> ssub * Junicode-LF/sbx/scit
+\DeclareFontShape{LGR}{Junicode-LF}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semiboldexpanded}{scsl}{
- <-> ssub * Junicode-LF/semiboldexpanded/scit
+\DeclareFontShape{LGR}{Junicode-LF}{light}{it}{
+ <-> alias * Junicode-LF/l/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{sbx}{sl}{
- <-> ssub * Junicode-LF/sbx/it
+\DeclareFontShape{LGR}{Junicode-LF}{l}{sl}{
+ <-> ssub * Junicode-LF/l/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-LF/semiboldexpanded/it
+\DeclareFontShape{LGR}{Junicode-LF}{light}{sl}{
+ <-> ssub * Junicode-LF/light/it
}{}
-
-% ---- mediumsemicondensed ----
-
-\DeclareFontShape{LGR}{Junicode-LF}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{l}{scsl}{
+ <-> ssub * Junicode-LF/l/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{mediumsemicondensed}{sc}{
- <-> \Junicode@@scale Junicode-SmCondMedium-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{light}{scsl}{
+ <-> ssub * Junicode-LF/light/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-lf-lgr
-}{}
-\DeclareFontShape{LGR}{Junicode-LF}{mediumsemicondensed}{scit}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-lf-sc-lgr
-}{}
+% ---- sb = semibold ----
-\DeclareFontShape{LGR}{Junicode-LF}{mediumsemicondensed}{scsl}{
- <-> ssub * Junicode-LF/mediumsemicondensed/scit
+\DeclareFontShape{LGR}{Junicode-LF}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-LF/mediumsemicondensed/it
+\DeclareFontShape{LGR}{Junicode-LF}{semibold}{it}{
+ <-> alias * Junicode-LF/sb/it
}{}
-
-% ---- sb = semibold ----
-
\DeclareFontShape{LGR}{Junicode-LF}{sb}{scit}{
<-> \Junicode@@scale Junicode-SmBoldItalic-lf-sc-lgr
}{}
@@ -597,12 +656,12 @@
<-> alias * Junicode-LF/sb/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semibold}{it}{
- <-> alias * Junicode-LF/sb/it
+\DeclareFontShape{LGR}{Junicode-LF}{semibold}{n}{
+ <-> alias * Junicode-LF/sb/n
}{}
\DeclareFontShape{LGR}{Junicode-LF}{sb}{sc}{
@@ -613,12 +672,12 @@
<-> alias * Junicode-LF/sb/sc
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{sb}{sl}{
+ <-> ssub * Junicode-LF/sb/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semibold}{n}{
- <-> alias * Junicode-LF/sb/n
+\DeclareFontShape{LGR}{Junicode-LF}{semibold}{sl}{
+ <-> ssub * Junicode-LF/semibold/it
}{}
\DeclareFontShape{LGR}{Junicode-LF}{sb}{scsl}{
@@ -629,33 +688,36 @@
<-> ssub * Junicode-LF/semibold/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{sb}{sl}{
- <-> ssub * Junicode-LF/sb/it
-}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semibold}{sl}{
- <-> ssub * Junicode-LF/semibold/it
-}{}
+% ---- mediumcondensed ----
+\DeclareFontShape{LGR}{Junicode-LF}{mediumcondensed}{scit}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-lf-sc-lgr
+}{}
-% ---- sc = semicondensed ----
+\DeclareFontShape{LGR}{Junicode-LF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-lf-lgr
+}{}
-\DeclareFontShape{LGR}{Junicode-LF}{sc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondItalic-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semicondensed}{scit}{
- <-> alias * Junicode-LF/sc/scit
+\DeclareFontShape{LGR}{Junicode-LF}{mediumcondensed}{sc}{
+ <-> \Junicode@@scale Junicode-CondMedium-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-LF/mediumcondensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semicondensed}{it}{
- <-> alias * Junicode-LF/sc/it
+\DeclareFontShape{LGR}{Junicode-LF}{mediumcondensed}{scsl}{
+ <-> ssub * Junicode-LF/mediumcondensed/scit
}{}
+
+% ---- sc = semicondensed ----
+
\DeclareFontShape{LGR}{Junicode-LF}{sc}{sc}{
<-> \Junicode@@scale Junicode-SmCond-lf-sc-lgr
}{}
@@ -664,6 +726,14 @@
<-> alias * Junicode-LF/sc/sc
}{}
+\DeclareFontShape{LGR}{Junicode-LF}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-lf-lgr
+}{}
+
+\DeclareFontShape{LGR}{Junicode-LF}{semicondensed}{it}{
+ <-> alias * Junicode-LF/sc/it
+}{}
+
\DeclareFontShape{LGR}{Junicode-LF}{sc}{n}{
<-> \Junicode@@scale Junicode-SmCond-lf-lgr
}{}
@@ -672,12 +742,12 @@
<-> alias * Junicode-LF/sc/n
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{sc}{scsl}{
- <-> ssub * Junicode-LF/sc/scit
+\DeclareFontShape{LGR}{Junicode-LF}{sc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{semicondensed}{scsl}{
- <-> ssub * Junicode-LF/semicondensed/scit
+\DeclareFontShape{LGR}{Junicode-LF}{semicondensed}{scit}{
+ <-> alias * Junicode-LF/sc/scit
}{}
\DeclareFontShape{LGR}{Junicode-LF}{sc}{sl}{
@@ -688,66 +758,74 @@
<-> ssub * Junicode-LF/semicondensed/it
}{}
+\DeclareFontShape{LGR}{Junicode-LF}{sc}{scsl}{
+ <-> ssub * Junicode-LF/sc/scit
+}{}
-% ---- lc = lightcondensed ----
+\DeclareFontShape{LGR}{Junicode-LF}{semicondensed}{scsl}{
+ <-> ssub * Junicode-LF/semicondensed/scit
+}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-lf-lgr
+
+% ---- sbsx = semiboldsemiexpanded ----
+
+\DeclareFontShape{LGR}{Junicode-LF}{sbsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lightcondensed}{it}{
- <-> alias * Junicode-LF/lc/it
+\DeclareFontShape{LGR}{Junicode-LF}{semiboldsemiexpanded}{sc}{
+ <-> alias * Junicode-LF/sbsx/sc
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lc}{scit}{
- <-> \Junicode@@scale Junicode-CondLightItalic-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lightcondensed}{scit}{
- <-> alias * Junicode-LF/lc/scit
+\DeclareFontShape{LGR}{Junicode-LF}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-LF/sbsx/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-lf-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{sbsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lightcondensed}{n}{
- <-> alias * Junicode-LF/lc/n
+\DeclareFontShape{LGR}{Junicode-LF}{semiboldsemiexpanded}{scit}{
+ <-> alias * Junicode-LF/sbsx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lc}{sc}{
- <-> \Junicode@@scale Junicode-CondLight-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-lf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lightcondensed}{sc}{
- <-> alias * Junicode-LF/lc/sc
+\DeclareFontShape{LGR}{Junicode-LF}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-LF/sbsx/n
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lc}{scsl}{
- <-> ssub * Junicode-LF/lc/scit
+\DeclareFontShape{LGR}{Junicode-LF}{sbsx}{sl}{
+ <-> ssub * Junicode-LF/sbsx/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lightcondensed}{scsl}{
- <-> ssub * Junicode-LF/lightcondensed/scit
+\DeclareFontShape{LGR}{Junicode-LF}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-LF/semiboldsemiexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lc}{sl}{
- <-> ssub * Junicode-LF/lc/it
+\DeclareFontShape{LGR}{Junicode-LF}{sbsx}{scsl}{
+ <-> ssub * Junicode-LF/sbsx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{lightcondensed}{sl}{
- <-> ssub * Junicode-LF/lightcondensed/it
+\DeclareFontShape{LGR}{Junicode-LF}{semiboldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-LF/semiboldsemiexpanded/scit
}{}
% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{LGR}{Junicode-LF}{bsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpBold-lf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-LF}{bsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{boldsemiexpanded}{sc}{
- <-> alias * Junicode-LF/bsx/sc
+\DeclareFontShape{LGR}{Junicode-LF}{boldsemiexpanded}{scit}{
+ <-> alias * Junicode-LF/bsx/scit
}{}
\DeclareFontShape{LGR}{Junicode-LF}{bsx}{n}{
@@ -758,14 +836,6 @@
<-> alias * Junicode-LF/bsx/n
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{bsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-lf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{Junicode-LF}{boldsemiexpanded}{scit}{
- <-> alias * Junicode-LF/bsx/scit
-}{}
-
\DeclareFontShape{LGR}{Junicode-LF}{bsx}{it}{
<-> \Junicode@@scale Junicode-SmExpBoldItalic-lf-lgr
}{}
@@ -774,12 +844,12 @@
<-> alias * Junicode-LF/bsx/it
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{bsx}{scsl}{
- <-> ssub * Junicode-LF/bsx/scit
+\DeclareFontShape{LGR}{Junicode-LF}{bsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpBold-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{boldsemiexpanded}{scsl}{
- <-> ssub * Junicode-LF/boldsemiexpanded/scit
+\DeclareFontShape{LGR}{Junicode-LF}{boldsemiexpanded}{sc}{
+ <-> alias * Junicode-LF/bsx/sc
}{}
\DeclareFontShape{LGR}{Junicode-LF}{bsx}{sl}{
@@ -790,82 +860,12 @@
<-> ssub * Junicode-LF/boldsemiexpanded/it
}{}
-
-% ---- b = bold ----
-
-\DeclareFontShape{LGR}{Junicode-LF}{b}{scit}{
- <-> \Junicode@@scale Junicode-BoldItalic-lf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{Junicode-LF}{bold}{scit}{
- <-> alias * Junicode-LF/b/scit
-}{}
-
-\DeclareFontShape{LGR}{Junicode-LF}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-lf-lgr
-}{}
-
-\DeclareFontShape{LGR}{Junicode-LF}{bold}{it}{
- <-> alias * Junicode-LF/b/it
-}{}
-
-\DeclareFontShape{LGR}{Junicode-LF}{b}{sc}{
- <-> \Junicode@@scale Junicode-Bold-lf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{Junicode-LF}{bold}{sc}{
- <-> alias * Junicode-LF/b/sc
-}{}
-
-\DeclareFontShape{LGR}{Junicode-LF}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-lf-lgr
-}{}
-
-\DeclareFontShape{LGR}{Junicode-LF}{bold}{n}{
- <-> alias * Junicode-LF/b/n
-}{}
-
-\DeclareFontShape{LGR}{Junicode-LF}{b}{scsl}{
- <-> ssub * Junicode-LF/b/scit
-}{}
-
-\DeclareFontShape{LGR}{Junicode-LF}{bold}{scsl}{
- <-> ssub * Junicode-LF/bold/scit
-}{}
-
-\DeclareFontShape{LGR}{Junicode-LF}{b}{sl}{
- <-> ssub * Junicode-LF/b/it
-}{}
-
-\DeclareFontShape{LGR}{Junicode-LF}{bold}{sl}{
- <-> ssub * Junicode-LF/bold/it
-}{}
-
-
-% ---- mediumcondensed ----
-
-\DeclareFontShape{LGR}{Junicode-LF}{mediumcondensed}{scit}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-lf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{Junicode-LF}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-lf-lgr
-}{}
-
-\DeclareFontShape{LGR}{Junicode-LF}{mediumcondensed}{sc}{
- <-> \Junicode@@scale Junicode-CondMedium-lf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{Junicode-LF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-lf-lgr
-}{}
-
-\DeclareFontShape{LGR}{Junicode-LF}{mediumcondensed}{scsl}{
- <-> ssub * Junicode-LF/mediumcondensed/scit
+\DeclareFontShape{LGR}{Junicode-LF}{bsx}{scsl}{
+ <-> ssub * Junicode-LF/bsx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-LF}{mediumcondensed}{sl}{
- <-> ssub * Junicode-LF/mediumcondensed/it
+\DeclareFontShape{LGR}{Junicode-LF}{boldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-LF/boldsemiexpanded/scit
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/LGRJunicode-OsF.fd b/Master/texmf-dist/tex/latex/junicode/LGRJunicode-OsF.fd
index e63959e9b76..129ac229558 100644
--- a/Master/texmf-dist/tex/latex/junicode/LGRJunicode-OsF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/LGRJunicode-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{LGRJunicode-OsF.fd}
- [2024/06/03 (autoinst) Font definitions for LGR/Junicode-OsF.]
+ [2024/07/21 (autoinst) Font definitions for LGR/Junicode-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,363 +20,363 @@
\DeclareFontFamily{LGR}{Junicode-OsF}{}
-% ---- sx = semiexpanded ----
+% ---- sc = semicondensed ----
-\DeclareFontShape{LGR}{Junicode-OsF}{sx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpItalic-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semiexpanded}{scit}{
- <-> alias * Junicode-OsF/sx/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{semicondensed}{n}{
+ <-> alias * Junicode-OsF/sc/n
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semiexpanded}{it}{
- <-> alias * Junicode-OsF/sx/it
+\DeclareFontShape{LGR}{Junicode-OsF}{semicondensed}{scit}{
+ <-> alias * Junicode-OsF/sc/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sx}{sc}{
- <-> \Junicode@@scale Junicode-SmExp-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semiexpanded}{sc}{
- <-> alias * Junicode-OsF/sx/sc
+\DeclareFontShape{LGR}{Junicode-OsF}{semicondensed}{it}{
+ <-> alias * Junicode-OsF/sc/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCond-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semiexpanded}{n}{
- <-> alias * Junicode-OsF/sx/n
+\DeclareFontShape{LGR}{Junicode-OsF}{semicondensed}{sc}{
+ <-> alias * Junicode-OsF/sc/sc
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sx}{scsl}{
- <-> ssub * Junicode-OsF/sx/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{sc}{sl}{
+ <-> ssub * Junicode-OsF/sc/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semiexpanded}{scsl}{
- <-> ssub * Junicode-OsF/semiexpanded/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{semicondensed}{sl}{
+ <-> ssub * Junicode-OsF/semicondensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sx}{sl}{
- <-> ssub * Junicode-OsF/sx/it
+\DeclareFontShape{LGR}{Junicode-OsF}{sc}{scsl}{
+ <-> ssub * Junicode-OsF/sc/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semiexpanded}{sl}{
- <-> ssub * Junicode-OsF/semiexpanded/it
+\DeclareFontShape{LGR}{Junicode-OsF}{semicondensed}{scsl}{
+ <-> ssub * Junicode-OsF/semicondensed/scit
}{}
-% ---- c = condensed ----
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{LGR}{Junicode-OsF}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{bsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpBold-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{condensed}{n}{
- <-> alias * Junicode-OsF/c/n
+\DeclareFontShape{LGR}{Junicode-OsF}{boldsemiexpanded}{sc}{
+ <-> alias * Junicode-OsF/bsx/sc
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{c}{sc}{
- <-> \Junicode@@scale Junicode-Cond-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{condensed}{sc}{
- <-> alias * Junicode-OsF/c/sc
+\DeclareFontShape{LGR}{Junicode-OsF}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-OsF/bsx/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{condensed}{it}{
- <-> alias * Junicode-OsF/c/it
+\DeclareFontShape{LGR}{Junicode-OsF}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-OsF/bsx/n
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{c}{scit}{
- <-> \Junicode@@scale Junicode-CondItalic-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{bsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{condensed}{scit}{
- <-> alias * Junicode-OsF/c/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{boldsemiexpanded}{scit}{
+ <-> alias * Junicode-OsF/bsx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{c}{scsl}{
- <-> ssub * Junicode-OsF/c/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{bsx}{sl}{
+ <-> ssub * Junicode-OsF/bsx/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{condensed}{scsl}{
- <-> ssub * Junicode-OsF/condensed/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-OsF/boldsemiexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{c}{sl}{
- <-> ssub * Junicode-OsF/c/it
+\DeclareFontShape{LGR}{Junicode-OsF}{bsx}{scsl}{
+ <-> ssub * Junicode-OsF/bsx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{condensed}{sl}{
- <-> ssub * Junicode-OsF/condensed/it
+\DeclareFontShape{LGR}{Junicode-OsF}{boldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/boldsemiexpanded/scit
}{}
-% ---- x = expanded ----
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{LGR}{Junicode-OsF}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{expanded}{it}{
- <-> alias * Junicode-OsF/x/it
+\DeclareFontShape{LGR}{Junicode-OsF}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-OsF/sbsx/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{x}{scit}{
- <-> \Junicode@@scale Junicode-ExpItalic-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sbsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{expanded}{scit}{
- <-> alias * Junicode-OsF/x/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{semiboldsemiexpanded}{scit}{
+ <-> alias * Junicode-OsF/sbsx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{expanded}{n}{
- <-> alias * Junicode-OsF/x/n
+\DeclareFontShape{LGR}{Junicode-OsF}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-OsF/sbsx/n
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{x}{sc}{
- <-> \Junicode@@scale Junicode-Exp-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sbsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{expanded}{sc}{
- <-> alias * Junicode-OsF/x/sc
+\DeclareFontShape{LGR}{Junicode-OsF}{semiboldsemiexpanded}{sc}{
+ <-> alias * Junicode-OsF/sbsx/sc
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{x}{scsl}{
- <-> ssub * Junicode-OsF/x/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{sbsx}{sl}{
+ <-> ssub * Junicode-OsF/sbsx/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{expanded}{scsl}{
- <-> ssub * Junicode-OsF/expanded/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-OsF/semiboldsemiexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{x}{sl}{
- <-> ssub * Junicode-OsF/x/it
+\DeclareFontShape{LGR}{Junicode-OsF}{sbsx}{scsl}{
+ <-> ssub * Junicode-OsF/sbsx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{expanded}{sl}{
- <-> ssub * Junicode-OsF/expanded/it
+\DeclareFontShape{LGR}{Junicode-OsF}{semiboldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/semiboldsemiexpanded/scit
}{}
-% ---- sbsx = semiboldsemiexpanded ----
+% ---- sb = semibold ----
-\DeclareFontShape{LGR}{Junicode-OsF}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sb}{sc}{
+ <-> \Junicode@@scale Junicode-SmBold-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-OsF/sbsx/n
+\DeclareFontShape{LGR}{Junicode-OsF}{semibold}{sc}{
+ <-> alias * Junicode-OsF/sb/sc
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sbsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semiboldsemiexpanded}{sc}{
- <-> alias * Junicode-OsF/sbsx/sc
+\DeclareFontShape{LGR}{Junicode-OsF}{semibold}{n}{
+ <-> alias * Junicode-OsF/sb/n
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sb}{scit}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-OsF/sbsx/it
+\DeclareFontShape{LGR}{Junicode-OsF}{semibold}{scit}{
+ <-> alias * Junicode-OsF/sb/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sbsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semiboldsemiexpanded}{scit}{
- <-> alias * Junicode-OsF/sbsx/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{semibold}{it}{
+ <-> alias * Junicode-OsF/sb/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sbsx}{scsl}{
- <-> ssub * Junicode-OsF/sbsx/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{sb}{sl}{
+ <-> ssub * Junicode-OsF/sb/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semiboldsemiexpanded}{scsl}{
- <-> ssub * Junicode-OsF/semiboldsemiexpanded/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{semibold}{sl}{
+ <-> ssub * Junicode-OsF/semibold/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sbsx}{sl}{
- <-> ssub * Junicode-OsF/sbsx/it
+\DeclareFontShape{LGR}{Junicode-OsF}{sb}{scsl}{
+ <-> ssub * Junicode-OsF/sb/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-OsF/semiboldsemiexpanded/it
+\DeclareFontShape{LGR}{Junicode-OsF}{semibold}{scsl}{
+ <-> ssub * Junicode-OsF/semibold/scit
}{}
-% ---- mediumexpanded ----
+% ---- mediumcondensed ----
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumexpanded}{scit}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumcondensed}{sc}{
+ <-> \Junicode@@scale Junicode-CondMedium-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumexpanded}{sc}{
- <-> \Junicode@@scale Junicode-ExpMedium-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumcondensed}{scit}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumexpanded}{scsl}{
- <-> ssub * Junicode-OsF/mediumexpanded/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-OsF/mediumcondensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-OsF/mediumexpanded/it
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumcondensed}{scsl}{
+ <-> ssub * Junicode-OsF/mediumcondensed/scit
}{}
-% ---- mediumsemiexpanded ----
+% ---- mediumsemicondensed ----
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemicondensed}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemiexpanded}{sc}{
- <-> \Junicode@@scale Junicode-SmExpMedium-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemicondensed}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemiexpanded}{scit}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemiexpanded}{scsl}{
- <-> ssub * Junicode-OsF/mediumsemiexpanded/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-OsF/mediumsemicondensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-OsF/mediumsemiexpanded/it
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemicondensed}{scsl}{
+ <-> ssub * Junicode-OsF/mediumsemicondensed/scit
}{}
-% ---- l = light ----
+% ---- sx = semiexpanded ----
-\DeclareFontShape{LGR}{Junicode-OsF}{l}{sc}{
- <-> \Junicode@@scale Junicode-Light-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExp-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{light}{sc}{
- <-> alias * Junicode-OsF/l/sc
+\DeclareFontShape{LGR}{Junicode-OsF}{semiexpanded}{sc}{
+ <-> alias * Junicode-OsF/sx/sc
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{light}{n}{
- <-> alias * Junicode-OsF/l/n
+\DeclareFontShape{LGR}{Junicode-OsF}{semiexpanded}{it}{
+ <-> alias * Junicode-OsF/sx/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{l}{scit}{
- <-> \Junicode@@scale Junicode-LightItalic-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{light}{scit}{
- <-> alias * Junicode-OsF/l/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{semiexpanded}{n}{
+ <-> alias * Junicode-OsF/sx/n
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{light}{it}{
- <-> alias * Junicode-OsF/l/it
+\DeclareFontShape{LGR}{Junicode-OsF}{semiexpanded}{scit}{
+ <-> alias * Junicode-OsF/sx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{l}{scsl}{
- <-> ssub * Junicode-OsF/l/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{sx}{sl}{
+ <-> ssub * Junicode-OsF/sx/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{light}{scsl}{
- <-> ssub * Junicode-OsF/light/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-OsF/semiexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{l}{sl}{
- <-> ssub * Junicode-OsF/l/it
+\DeclareFontShape{LGR}{Junicode-OsF}{sx}{scsl}{
+ <-> ssub * Junicode-OsF/sx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{light}{sl}{
- <-> ssub * Junicode-OsF/light/it
+\DeclareFontShape{LGR}{Junicode-OsF}{semiexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/semiexpanded/scit
}{}
-% ---- bx = boldexpanded ----
+% ---- l = light ----
-\DeclareFontShape{LGR}{Junicode-OsF}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{boldexpanded}{n}{
- <-> alias * Junicode-OsF/bx/n
+\DeclareFontShape{LGR}{Junicode-OsF}{light}{n}{
+ <-> alias * Junicode-OsF/l/n
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{bx}{sc}{
- <-> \Junicode@@scale Junicode-ExpBold-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{l}{scit}{
+ <-> \Junicode@@scale Junicode-LightItalic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{boldexpanded}{sc}{
- <-> alias * Junicode-OsF/bx/sc
+\DeclareFontShape{LGR}{Junicode-OsF}{light}{scit}{
+ <-> alias * Junicode-OsF/l/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{boldexpanded}{it}{
- <-> alias * Junicode-OsF/bx/it
+\DeclareFontShape{LGR}{Junicode-OsF}{light}{it}{
+ <-> alias * Junicode-OsF/l/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{bx}{scit}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{l}{sc}{
+ <-> \Junicode@@scale Junicode-Light-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{boldexpanded}{scit}{
- <-> alias * Junicode-OsF/bx/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{light}{sc}{
+ <-> alias * Junicode-OsF/l/sc
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{bx}{scsl}{
- <-> ssub * Junicode-OsF/bx/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{l}{sl}{
+ <-> ssub * Junicode-OsF/l/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{boldexpanded}{scsl}{
- <-> ssub * Junicode-OsF/boldexpanded/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{light}{sl}{
+ <-> ssub * Junicode-OsF/light/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{bx}{sl}{
- <-> ssub * Junicode-OsF/bx/it
+\DeclareFontShape{LGR}{Junicode-OsF}{l}{scsl}{
+ <-> ssub * Junicode-OsF/l/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{boldexpanded}{sl}{
- <-> ssub * Junicode-OsF/boldexpanded/it
+\DeclareFontShape{LGR}{Junicode-OsF}{light}{scsl}{
+ <-> ssub * Junicode-OsF/light/scit
}{}
@@ -414,14 +414,6 @@
<-> alias * Junicode-OsF/m/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{m}{scsl}{
- <-> ssub * Junicode-OsF/m/scit
-}{}
-
-\DeclareFontShape{LGR}{Junicode-OsF}{regular}{scsl}{
- <-> ssub * Junicode-OsF/regular/scit
-}{}
-
\DeclareFontShape{LGR}{Junicode-OsF}{m}{sl}{
<-> ssub * Junicode-OsF/m/it
}{}
@@ -430,55 +422,39 @@
<-> ssub * Junicode-OsF/regular/it
}{}
-
-% ---- lsc = lightsemicondensed ----
-
-\DeclareFontShape{LGR}{Junicode-OsF}{lsc}{sc}{
- <-> \Junicode@@scale Junicode-SmCondLight-osf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{Junicode-OsF}{lightsemicondensed}{sc}{
- <-> alias * Junicode-OsF/lsc/sc
-}{}
-
-\DeclareFontShape{LGR}{Junicode-OsF}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{m}{scsl}{
+ <-> ssub * Junicode-OsF/m/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{lightsemicondensed}{n}{
- <-> alias * Junicode-OsF/lsc/n
+\DeclareFontShape{LGR}{Junicode-OsF}{regular}{scsl}{
+ <-> ssub * Junicode-OsF/regular/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{lsc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-osf-sc-lgr
-}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{lightsemicondensed}{scit}{
- <-> alias * Junicode-OsF/lsc/scit
-}{}
+% ---- mediumsemiexpanded ----
-\DeclareFontShape{LGR}{Junicode-OsF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemiexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{lightsemicondensed}{it}{
- <-> alias * Junicode-OsF/lsc/it
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{lsc}{scsl}{
- <-> ssub * Junicode-OsF/lsc/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemiexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{lightsemicondensed}{scsl}{
- <-> ssub * Junicode-OsF/lightsemicondensed/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{lsc}{sl}{
- <-> ssub * Junicode-OsF/lsc/it
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-OsF/mediumsemiexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-OsF/lightsemicondensed/it
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemiexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/mediumsemiexpanded/scit
}{}
@@ -488,384 +464,408 @@
<-> \Junicode@@scale Junicode-Medium-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{medium}{n}{
- <-> \Junicode@@scale Junicode-Medium-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-osf-lgr
}{}
\DeclareFontShape{LGR}{Junicode-OsF}{medium}{scit}{
<-> \Junicode@@scale Junicode-MediumItalic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-osf-lgr
-}{}
-
-\DeclareFontShape{LGR}{Junicode-OsF}{medium}{scsl}{
- <-> ssub * Junicode-OsF/medium/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{medium}{n}{
+ <-> \Junicode@@scale Junicode-Medium-osf-lgr
}{}
\DeclareFontShape{LGR}{Junicode-OsF}{medium}{sl}{
<-> ssub * Junicode-OsF/medium/it
}{}
+\DeclareFontShape{LGR}{Junicode-OsF}{medium}{scsl}{
+ <-> ssub * Junicode-OsF/medium/scit
+}{}
-% ---- b = bold ----
-\DeclareFontShape{LGR}{Junicode-OsF}{b}{scit}{
- <-> \Junicode@@scale Junicode-BoldItalic-osf-sc-lgr
+% ---- bx = boldexpanded ----
+
+\DeclareFontShape{LGR}{Junicode-OsF}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{bold}{scit}{
- <-> alias * Junicode-OsF/b/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{boldexpanded}{it}{
+ <-> alias * Junicode-OsF/bx/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{bx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{bold}{it}{
- <-> alias * Junicode-OsF/b/it
+\DeclareFontShape{LGR}{Junicode-OsF}{boldexpanded}{scit}{
+ <-> alias * Junicode-OsF/bx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{b}{sc}{
- <-> \Junicode@@scale Junicode-Bold-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{bold}{sc}{
- <-> alias * Junicode-OsF/b/sc
+\DeclareFontShape{LGR}{Junicode-OsF}{boldexpanded}{n}{
+ <-> alias * Junicode-OsF/bx/n
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{bx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpBold-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{bold}{n}{
- <-> alias * Junicode-OsF/b/n
+\DeclareFontShape{LGR}{Junicode-OsF}{boldexpanded}{sc}{
+ <-> alias * Junicode-OsF/bx/sc
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{b}{scsl}{
- <-> ssub * Junicode-OsF/b/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{bx}{sl}{
+ <-> ssub * Junicode-OsF/bx/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{bold}{scsl}{
- <-> ssub * Junicode-OsF/bold/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{boldexpanded}{sl}{
+ <-> ssub * Junicode-OsF/boldexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{b}{sl}{
- <-> ssub * Junicode-OsF/b/it
+\DeclareFontShape{LGR}{Junicode-OsF}{bx}{scsl}{
+ <-> ssub * Junicode-OsF/bx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{bold}{sl}{
- <-> ssub * Junicode-OsF/bold/it
+\DeclareFontShape{LGR}{Junicode-OsF}{boldexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/boldexpanded/scit
}{}
-% ---- mediumcondensed ----
+% ---- lc = lightcondensed ----
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumcondensed}{scit}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{lc}{sc}{
+ <-> \Junicode@@scale Junicode-CondLight-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{lightcondensed}{sc}{
+ <-> alias * Junicode-OsF/lc/sc
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumcondensed}{sc}{
- <-> \Junicode@@scale Junicode-CondMedium-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{lc}{scit}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{lightcondensed}{scit}{
+ <-> alias * Junicode-OsF/lc/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumcondensed}{scsl}{
- <-> ssub * Junicode-OsF/mediumcondensed/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumcondensed}{sl}{
- <-> ssub * Junicode-OsF/mediumcondensed/it
+\DeclareFontShape{LGR}{Junicode-OsF}{lightcondensed}{n}{
+ <-> alias * Junicode-OsF/lc/n
}{}
+\DeclareFontShape{LGR}{Junicode-OsF}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-osf-lgr
+}{}
-% ---- mediumsemicondensed ----
+\DeclareFontShape{LGR}{Junicode-OsF}{lightcondensed}{it}{
+ <-> alias * Junicode-OsF/lc/it
+}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{lc}{sl}{
+ <-> ssub * Junicode-OsF/lc/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemicondensed}{scit}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{lightcondensed}{sl}{
+ <-> ssub * Junicode-OsF/lightcondensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{lc}{scsl}{
+ <-> ssub * Junicode-OsF/lc/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemicondensed}{sc}{
- <-> \Junicode@@scale Junicode-SmCondMedium-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{lightcondensed}{scsl}{
+ <-> ssub * Junicode-OsF/lightcondensed/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemicondensed}{scsl}{
- <-> ssub * Junicode-OsF/mediumsemicondensed/scit
+
+% ---- lsc = lightsemicondensed ----
+
+\DeclareFontShape{LGR}{Junicode-OsF}{lsc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-OsF/mediumsemicondensed/it
+\DeclareFontShape{LGR}{Junicode-OsF}{lightsemicondensed}{scit}{
+ <-> alias * Junicode-OsF/lsc/scit
}{}
+\DeclareFontShape{LGR}{Junicode-OsF}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-osf-lgr
+}{}
-% ---- sbx = semiboldexpanded ----
+\DeclareFontShape{LGR}{Junicode-OsF}{lightsemicondensed}{n}{
+ <-> alias * Junicode-OsF/lsc/n
+}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semiboldexpanded}{it}{
- <-> alias * Junicode-OsF/sbx/it
+\DeclareFontShape{LGR}{Junicode-OsF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-OsF/lsc/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sbx}{scit}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{lsc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondLight-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semiboldexpanded}{scit}{
- <-> alias * Junicode-OsF/sbx/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{lightsemicondensed}{sc}{
+ <-> alias * Junicode-OsF/lsc/sc
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{lsc}{sl}{
+ <-> ssub * Junicode-OsF/lsc/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semiboldexpanded}{n}{
- <-> alias * Junicode-OsF/sbx/n
+\DeclareFontShape{LGR}{Junicode-OsF}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-OsF/lightsemicondensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sbx}{sc}{
- <-> \Junicode@@scale Junicode-ExpSmBold-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{lsc}{scsl}{
+ <-> ssub * Junicode-OsF/lsc/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semiboldexpanded}{sc}{
- <-> alias * Junicode-OsF/sbx/sc
+\DeclareFontShape{LGR}{Junicode-OsF}{lightsemicondensed}{scsl}{
+ <-> ssub * Junicode-OsF/lightsemicondensed/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sbx}{scsl}{
- <-> ssub * Junicode-OsF/sbx/scit
+
+% ---- mediumexpanded ----
+
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-ExpMedium-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semiboldexpanded}{scsl}{
- <-> ssub * Junicode-OsF/semiboldexpanded/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sbx}{sl}{
- <-> ssub * Junicode-OsF/sbx/it
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-OsF/semiboldexpanded/it
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-osf-lgr
}{}
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-OsF/mediumexpanded/it
+}{}
-% ---- bsx = boldsemiexpanded ----
+\DeclareFontShape{LGR}{Junicode-OsF}{mediumexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/mediumexpanded/scit
+}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{bsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpBold-osf-sc-lgr
+
+% ---- x = expanded ----
+
+\DeclareFontShape{LGR}{Junicode-OsF}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{boldsemiexpanded}{sc}{
- <-> alias * Junicode-OsF/bsx/sc
+\DeclareFontShape{LGR}{Junicode-OsF}{expanded}{n}{
+ <-> alias * Junicode-OsF/x/n
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{x}{scit}{
+ <-> \Junicode@@scale Junicode-ExpItalic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{boldsemiexpanded}{n}{
- <-> alias * Junicode-OsF/bsx/n
+\DeclareFontShape{LGR}{Junicode-OsF}{expanded}{scit}{
+ <-> alias * Junicode-OsF/x/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{bsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{boldsemiexpanded}{scit}{
- <-> alias * Junicode-OsF/bsx/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{expanded}{it}{
+ <-> alias * Junicode-OsF/x/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{x}{sc}{
+ <-> \Junicode@@scale Junicode-Exp-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{boldsemiexpanded}{it}{
- <-> alias * Junicode-OsF/bsx/it
+\DeclareFontShape{LGR}{Junicode-OsF}{expanded}{sc}{
+ <-> alias * Junicode-OsF/x/sc
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{bsx}{scsl}{
- <-> ssub * Junicode-OsF/bsx/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{x}{sl}{
+ <-> ssub * Junicode-OsF/x/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{boldsemiexpanded}{scsl}{
- <-> ssub * Junicode-OsF/boldsemiexpanded/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{expanded}{sl}{
+ <-> ssub * Junicode-OsF/expanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{bsx}{sl}{
- <-> ssub * Junicode-OsF/bsx/it
+\DeclareFontShape{LGR}{Junicode-OsF}{x}{scsl}{
+ <-> ssub * Junicode-OsF/x/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-OsF/boldsemiexpanded/it
+\DeclareFontShape{LGR}{Junicode-OsF}{expanded}{scsl}{
+ <-> ssub * Junicode-OsF/expanded/scit
}{}
-% ---- lc = lightcondensed ----
+% ---- b = bold ----
-\DeclareFontShape{LGR}{Junicode-OsF}{lc}{scit}{
- <-> \Junicode@@scale Junicode-CondLightItalic-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{b}{sc}{
+ <-> \Junicode@@scale Junicode-Bold-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{lightcondensed}{scit}{
- <-> alias * Junicode-OsF/lc/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{bold}{sc}{
+ <-> alias * Junicode-OsF/b/sc
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{lightcondensed}{it}{
- <-> alias * Junicode-OsF/lc/it
+\DeclareFontShape{LGR}{Junicode-OsF}{bold}{it}{
+ <-> alias * Junicode-OsF/b/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{lc}{sc}{
- <-> \Junicode@@scale Junicode-CondLight-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{b}{scit}{
+ <-> \Junicode@@scale Junicode-BoldItalic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{lightcondensed}{sc}{
- <-> alias * Junicode-OsF/lc/sc
+\DeclareFontShape{LGR}{Junicode-OsF}{bold}{scit}{
+ <-> alias * Junicode-OsF/b/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{lightcondensed}{n}{
- <-> alias * Junicode-OsF/lc/n
+\DeclareFontShape{LGR}{Junicode-OsF}{bold}{n}{
+ <-> alias * Junicode-OsF/b/n
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{lc}{scsl}{
- <-> ssub * Junicode-OsF/lc/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{b}{sl}{
+ <-> ssub * Junicode-OsF/b/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{lightcondensed}{scsl}{
- <-> ssub * Junicode-OsF/lightcondensed/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{bold}{sl}{
+ <-> ssub * Junicode-OsF/bold/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{lc}{sl}{
- <-> ssub * Junicode-OsF/lc/it
+\DeclareFontShape{LGR}{Junicode-OsF}{b}{scsl}{
+ <-> ssub * Junicode-OsF/b/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{lightcondensed}{sl}{
- <-> ssub * Junicode-OsF/lightcondensed/it
+\DeclareFontShape{LGR}{Junicode-OsF}{bold}{scsl}{
+ <-> ssub * Junicode-OsF/bold/scit
}{}
-% ---- sc = semicondensed ----
+% ---- sbx = semiboldexpanded ----
-\DeclareFontShape{LGR}{Junicode-OsF}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semicondensed}{n}{
- <-> alias * Junicode-OsF/sc/n
+\DeclareFontShape{LGR}{Junicode-OsF}{semiboldexpanded}{it}{
+ <-> alias * Junicode-OsF/sbx/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sc}{sc}{
- <-> \Junicode@@scale Junicode-SmCond-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sbx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semicondensed}{sc}{
- <-> alias * Junicode-OsF/sc/sc
+\DeclareFontShape{LGR}{Junicode-OsF}{semiboldexpanded}{scit}{
+ <-> alias * Junicode-OsF/sbx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semicondensed}{it}{
- <-> alias * Junicode-OsF/sc/it
+\DeclareFontShape{LGR}{Junicode-OsF}{semiboldexpanded}{n}{
+ <-> alias * Junicode-OsF/sbx/n
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondItalic-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{sbx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semicondensed}{scit}{
- <-> alias * Junicode-OsF/sc/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{semiboldexpanded}{sc}{
+ <-> alias * Junicode-OsF/sbx/sc
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sc}{scsl}{
- <-> ssub * Junicode-OsF/sc/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{sbx}{sl}{
+ <-> ssub * Junicode-OsF/sbx/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semicondensed}{scsl}{
- <-> ssub * Junicode-OsF/semicondensed/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-OsF/semiboldexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sc}{sl}{
- <-> ssub * Junicode-OsF/sc/it
+\DeclareFontShape{LGR}{Junicode-OsF}{sbx}{scsl}{
+ <-> ssub * Junicode-OsF/sbx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semicondensed}{sl}{
- <-> ssub * Junicode-OsF/semicondensed/it
+\DeclareFontShape{LGR}{Junicode-OsF}{semiboldexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/semiboldexpanded/scit
}{}
-% ---- sb = semibold ----
+% ---- c = condensed ----
-\DeclareFontShape{LGR}{Junicode-OsF}{sb}{scit}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semibold}{scit}{
- <-> alias * Junicode-OsF/sb/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{condensed}{it}{
+ <-> alias * Junicode-OsF/c/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-osf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semibold}{it}{
- <-> alias * Junicode-OsF/sb/it
+\DeclareFontShape{LGR}{Junicode-OsF}{condensed}{n}{
+ <-> alias * Junicode-OsF/c/n
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sb}{sc}{
- <-> \Junicode@@scale Junicode-SmBold-osf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{c}{scit}{
+ <-> \Junicode@@scale Junicode-CondItalic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semibold}{sc}{
- <-> alias * Junicode-OsF/sb/sc
+\DeclareFontShape{LGR}{Junicode-OsF}{condensed}{scit}{
+ <-> alias * Junicode-OsF/c/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-osf-lgr
+\DeclareFontShape{LGR}{Junicode-OsF}{c}{sc}{
+ <-> \Junicode@@scale Junicode-Cond-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semibold}{n}{
- <-> alias * Junicode-OsF/sb/n
+\DeclareFontShape{LGR}{Junicode-OsF}{condensed}{sc}{
+ <-> alias * Junicode-OsF/c/sc
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sb}{scsl}{
- <-> ssub * Junicode-OsF/sb/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{c}{sl}{
+ <-> ssub * Junicode-OsF/c/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semibold}{scsl}{
- <-> ssub * Junicode-OsF/semibold/scit
+\DeclareFontShape{LGR}{Junicode-OsF}{condensed}{sl}{
+ <-> ssub * Junicode-OsF/condensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{sb}{sl}{
- <-> ssub * Junicode-OsF/sb/it
+\DeclareFontShape{LGR}{Junicode-OsF}{c}{scsl}{
+ <-> ssub * Junicode-OsF/c/scit
}{}
-\DeclareFontShape{LGR}{Junicode-OsF}{semibold}{sl}{
- <-> ssub * Junicode-OsF/semibold/it
+\DeclareFontShape{LGR}{Junicode-OsF}{condensed}{scsl}{
+ <-> ssub * Junicode-OsF/condensed/scit
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/LGRJunicode-Sup.fd b/Master/texmf-dist/tex/latex/junicode/LGRJunicode-Sup.fd
index 01cd3f1df7a..f9051a7c583 100644
--- a/Master/texmf-dist/tex/latex/junicode/LGRJunicode-Sup.fd
+++ b/Master/texmf-dist/tex/latex/junicode/LGRJunicode-Sup.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{LGRJunicode-Sup.fd}
- [2024/06/03 (autoinst) Font definitions for LGR/Junicode-Sup.]
+ [2024/07/21 (autoinst) Font definitions for LGR/Junicode-Sup.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,23 +20,16 @@
\DeclareFontFamily{LGR}{Junicode-Sup}{}
-% ---- mediumsemicondensed ----
-
-\DeclareFontShape{LGR}{Junicode-Sup}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-sup-lgr
-}{}
+% ---- sbx = semiboldexpanded ----
-\DeclareFontShape{LGR}{Junicode-Sup}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-Sup/mediumsemicondensed/it
+\DeclareFontShape{LGR}{Junicode-Sup}{semiboldexpanded}{n}{
+ <-> alias * Junicode-Sup/sbx/n
}{}
-
-% ---- sbx = semiboldexpanded ----
-
\DeclareFontShape{LGR}{Junicode-Sup}{sbx}{it}{
<-> \Junicode@@scale Junicode-ExpSmBoldItalic-sup-lgr
}{}
@@ -45,14 +38,6 @@
<-> alias * Junicode-Sup/sbx/it
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-sup-lgr
-}{}
-
-\DeclareFontShape{LGR}{Junicode-Sup}{semiboldexpanded}{n}{
- <-> alias * Junicode-Sup/sbx/n
-}{}
-
\DeclareFontShape{LGR}{Junicode-Sup}{sbx}{sl}{
<-> ssub * Junicode-Sup/sbx/it
}{}
@@ -62,111 +47,99 @@
}{}
-% ---- lc = lightcondensed ----
-
-\DeclareFontShape{LGR}{Junicode-Sup}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-sup-lgr
-}{}
+% ---- c = condensed ----
-\DeclareFontShape{LGR}{Junicode-Sup}{lightcondensed}{n}{
- <-> alias * Junicode-Sup/lc/n
+\DeclareFontShape{LGR}{Junicode-Sup}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{condensed}{n}{
+ <-> alias * Junicode-Sup/c/n
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{lightcondensed}{it}{
- <-> alias * Junicode-Sup/lc/it
+\DeclareFontShape{LGR}{Junicode-Sup}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{lc}{sl}{
- <-> ssub * Junicode-Sup/lc/it
+\DeclareFontShape{LGR}{Junicode-Sup}{condensed}{it}{
+ <-> alias * Junicode-Sup/c/it
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{lightcondensed}{sl}{
- <-> ssub * Junicode-Sup/lightcondensed/it
+\DeclareFontShape{LGR}{Junicode-Sup}{c}{sl}{
+ <-> ssub * Junicode-Sup/c/it
}{}
-
-% ---- bsx = boldsemiexpanded ----
-
-\DeclareFontShape{LGR}{Junicode-Sup}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{condensed}{sl}{
+ <-> ssub * Junicode-Sup/condensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{boldsemiexpanded}{it}{
- <-> alias * Junicode-Sup/bsx/it
-}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-sup-lgr
-}{}
+% ---- mediumexpanded ----
-\DeclareFontShape{LGR}{Junicode-Sup}{boldsemiexpanded}{n}{
- <-> alias * Junicode-Sup/bsx/n
+\DeclareFontShape{LGR}{Junicode-Sup}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{bsx}{sl}{
- <-> ssub * Junicode-Sup/bsx/it
+\DeclareFontShape{LGR}{Junicode-Sup}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-Sup/boldsemiexpanded/it
+\DeclareFontShape{LGR}{Junicode-Sup}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-Sup/mediumexpanded/it
}{}
-% ---- sc = semicondensed ----
+% ---- lsc = lightsemicondensed ----
-\DeclareFontShape{LGR}{Junicode-Sup}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{semicondensed}{n}{
- <-> alias * Junicode-Sup/sc/n
+\DeclareFontShape{LGR}{Junicode-Sup}{lightsemicondensed}{n}{
+ <-> alias * Junicode-Sup/lsc/n
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{semicondensed}{it}{
- <-> alias * Junicode-Sup/sc/it
+\DeclareFontShape{LGR}{Junicode-Sup}{lightsemicondensed}{it}{
+ <-> alias * Junicode-Sup/lsc/it
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{sc}{sl}{
- <-> ssub * Junicode-Sup/sc/it
+\DeclareFontShape{LGR}{Junicode-Sup}{lsc}{sl}{
+ <-> ssub * Junicode-Sup/lsc/it
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{semicondensed}{sl}{
- <-> ssub * Junicode-Sup/semicondensed/it
+\DeclareFontShape{LGR}{Junicode-Sup}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-Sup/lightsemicondensed/it
}{}
-% ---- sb = semibold ----
+% ---- x = expanded ----
-\DeclareFontShape{LGR}{Junicode-Sup}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{semibold}{it}{
- <-> alias * Junicode-Sup/sb/it
+\DeclareFontShape{LGR}{Junicode-Sup}{expanded}{n}{
+ <-> alias * Junicode-Sup/x/n
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{semibold}{n}{
- <-> alias * Junicode-Sup/sb/n
+\DeclareFontShape{LGR}{Junicode-Sup}{expanded}{it}{
+ <-> alias * Junicode-Sup/x/it
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{sb}{sl}{
- <-> ssub * Junicode-Sup/sb/it
+\DeclareFontShape{LGR}{Junicode-Sup}{x}{sl}{
+ <-> ssub * Junicode-Sup/x/it
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{semibold}{sl}{
- <-> ssub * Junicode-Sup/semibold/it
+\DeclareFontShape{LGR}{Junicode-Sup}{expanded}{sl}{
+ <-> ssub * Junicode-Sup/expanded/it
}{}
@@ -197,18 +170,30 @@
}{}
-% ---- mediumcondensed ----
+% ---- sx = semiexpanded ----
-\DeclareFontShape{LGR}{Junicode-Sup}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{semiexpanded}{it}{
+ <-> alias * Junicode-Sup/sx/it
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{mediumcondensed}{sl}{
- <-> ssub * Junicode-Sup/mediumcondensed/it
+\DeclareFontShape{LGR}{Junicode-Sup}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-sup-lgr
+}{}
+
+\DeclareFontShape{LGR}{Junicode-Sup}{semiexpanded}{n}{
+ <-> alias * Junicode-Sup/sx/n
+}{}
+
+\DeclareFontShape{LGR}{Junicode-Sup}{sx}{sl}{
+ <-> ssub * Junicode-Sup/sx/it
+}{}
+
+\DeclareFontShape{LGR}{Junicode-Sup}{semiexpanded}{sl}{
+ <-> ssub * Junicode-Sup/semiexpanded/it
}{}
@@ -239,30 +224,60 @@
}{}
-% ---- bx = boldexpanded ----
+% ---- mediumsemicondensed ----
-\DeclareFontShape{LGR}{Junicode-Sup}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{boldexpanded}{n}{
- <-> alias * Junicode-Sup/bx/n
+\DeclareFontShape{LGR}{Junicode-Sup}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-Sup/mediumsemicondensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{boldexpanded}{it}{
- <-> alias * Junicode-Sup/bx/it
+
+% ---- lc = lightcondensed ----
+
+\DeclareFontShape{LGR}{Junicode-Sup}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{bx}{sl}{
- <-> ssub * Junicode-Sup/bx/it
+\DeclareFontShape{LGR}{Junicode-Sup}{lightcondensed}{n}{
+ <-> alias * Junicode-Sup/lc/n
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{boldexpanded}{sl}{
- <-> ssub * Junicode-Sup/boldexpanded/it
+\DeclareFontShape{LGR}{Junicode-Sup}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-sup-lgr
+}{}
+
+\DeclareFontShape{LGR}{Junicode-Sup}{lightcondensed}{it}{
+ <-> alias * Junicode-Sup/lc/it
+}{}
+
+\DeclareFontShape{LGR}{Junicode-Sup}{lc}{sl}{
+ <-> ssub * Junicode-Sup/lc/it
+}{}
+
+\DeclareFontShape{LGR}{Junicode-Sup}{lightcondensed}{sl}{
+ <-> ssub * Junicode-Sup/lightcondensed/it
+}{}
+
+
+% ---- mediumsemiexpanded ----
+
+\DeclareFontShape{LGR}{Junicode-Sup}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-sup-lgr
+}{}
+
+\DeclareFontShape{LGR}{Junicode-Sup}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-sup-lgr
+}{}
+
+\DeclareFontShape{LGR}{Junicode-Sup}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-Sup/mediumsemiexpanded/it
}{}
@@ -308,168 +323,153 @@
}{}
-% ---- lsc = lightsemicondensed ----
+% ---- bx = boldexpanded ----
-\DeclareFontShape{LGR}{Junicode-Sup}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{lightsemicondensed}{n}{
- <-> alias * Junicode-Sup/lsc/n
+\DeclareFontShape{LGR}{Junicode-Sup}{boldexpanded}{it}{
+ <-> alias * Junicode-Sup/bx/it
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{lightsemicondensed}{it}{
- <-> alias * Junicode-Sup/lsc/it
+\DeclareFontShape{LGR}{Junicode-Sup}{boldexpanded}{n}{
+ <-> alias * Junicode-Sup/bx/n
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{lsc}{sl}{
- <-> ssub * Junicode-Sup/lsc/it
+\DeclareFontShape{LGR}{Junicode-Sup}{bx}{sl}{
+ <-> ssub * Junicode-Sup/bx/it
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-Sup/lightsemicondensed/it
+\DeclareFontShape{LGR}{Junicode-Sup}{boldexpanded}{sl}{
+ <-> ssub * Junicode-Sup/boldexpanded/it
}{}
-% ---- c = condensed ----
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{LGR}{Junicode-Sup}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{condensed}{n}{
- <-> alias * Junicode-Sup/c/n
+\DeclareFontShape{LGR}{Junicode-Sup}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-Sup/bsx/it
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{condensed}{it}{
- <-> alias * Junicode-Sup/c/it
+\DeclareFontShape{LGR}{Junicode-Sup}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-Sup/bsx/n
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{c}{sl}{
- <-> ssub * Junicode-Sup/c/it
+\DeclareFontShape{LGR}{Junicode-Sup}{bsx}{sl}{
+ <-> ssub * Junicode-Sup/bsx/it
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{condensed}{sl}{
- <-> ssub * Junicode-Sup/condensed/it
+\DeclareFontShape{LGR}{Junicode-Sup}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-Sup/boldsemiexpanded/it
}{}
-% ---- x = expanded ----
-
-\DeclareFontShape{LGR}{Junicode-Sup}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-sup-lgr
-}{}
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{LGR}{Junicode-Sup}{expanded}{n}{
- <-> alias * Junicode-Sup/x/n
+\DeclareFontShape{LGR}{Junicode-Sup}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-Sup/sbsx/n
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{expanded}{it}{
- <-> alias * Junicode-Sup/x/it
+\DeclareFontShape{LGR}{Junicode-Sup}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{x}{sl}{
- <-> ssub * Junicode-Sup/x/it
+\DeclareFontShape{LGR}{Junicode-Sup}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-Sup/sbsx/it
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{expanded}{sl}{
- <-> ssub * Junicode-Sup/expanded/it
+\DeclareFontShape{LGR}{Junicode-Sup}{sbsx}{sl}{
+ <-> ssub * Junicode-Sup/sbsx/it
}{}
-
-% ---- sx = semiexpanded ----
-
-\DeclareFontShape{LGR}{Junicode-Sup}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-Sup/semiboldsemiexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{semiexpanded}{it}{
- <-> alias * Junicode-Sup/sx/it
-}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-sup-lgr
-}{}
+% ---- sc = semicondensed ----
-\DeclareFontShape{LGR}{Junicode-Sup}{semiexpanded}{n}{
- <-> alias * Junicode-Sup/sx/n
+\DeclareFontShape{LGR}{Junicode-Sup}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{sx}{sl}{
- <-> ssub * Junicode-Sup/sx/it
+\DeclareFontShape{LGR}{Junicode-Sup}{semicondensed}{it}{
+ <-> alias * Junicode-Sup/sc/it
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{semiexpanded}{sl}{
- <-> ssub * Junicode-Sup/semiexpanded/it
+\DeclareFontShape{LGR}{Junicode-Sup}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-sup-lgr
}{}
-
-% ---- mediumexpanded ----
-
-\DeclareFontShape{LGR}{Junicode-Sup}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{semicondensed}{n}{
+ <-> alias * Junicode-Sup/sc/n
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{sc}{sl}{
+ <-> ssub * Junicode-Sup/sc/it
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{mediumexpanded}{sl}{
- <-> ssub * Junicode-Sup/mediumexpanded/it
+\DeclareFontShape{LGR}{Junicode-Sup}{semicondensed}{sl}{
+ <-> ssub * Junicode-Sup/semicondensed/it
}{}
-% ---- sbsx = semiboldsemiexpanded ----
+% ---- sb = semibold ----
-\DeclareFontShape{LGR}{Junicode-Sup}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-Sup/sbsx/it
+\DeclareFontShape{LGR}{Junicode-Sup}{semibold}{it}{
+ <-> alias * Junicode-Sup/sb/it
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-Sup/sbsx/n
+\DeclareFontShape{LGR}{Junicode-Sup}{semibold}{n}{
+ <-> alias * Junicode-Sup/sb/n
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{sbsx}{sl}{
- <-> ssub * Junicode-Sup/sbsx/it
+\DeclareFontShape{LGR}{Junicode-Sup}{sb}{sl}{
+ <-> ssub * Junicode-Sup/sb/it
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-Sup/semiboldsemiexpanded/it
+\DeclareFontShape{LGR}{Junicode-Sup}{semibold}{sl}{
+ <-> ssub * Junicode-Sup/semibold/it
}{}
-% ---- mediumsemiexpanded ----
+% ---- mediumcondensed ----
-\DeclareFontShape{LGR}{Junicode-Sup}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-sup-lgr
+\DeclareFontShape{LGR}{Junicode-Sup}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-sup-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-Sup}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-Sup/mediumsemiexpanded/it
+\DeclareFontShape{LGR}{Junicode-Sup}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-Sup/mediumcondensed/it
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/LGRJunicode-TLF.fd b/Master/texmf-dist/tex/latex/junicode/LGRJunicode-TLF.fd
index 64237086df5..d0970130c3d 100644
--- a/Master/texmf-dist/tex/latex/junicode/LGRJunicode-TLF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/LGRJunicode-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{LGRJunicode-TLF.fd}
- [2024/06/03 (autoinst) Font definitions for LGR/Junicode-TLF.]
+ [2024/07/21 (autoinst) Font definitions for LGR/Junicode-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,607 +20,626 @@
\DeclareFontFamily{LGR}{Junicode-TLF}{}
-% ---- lsc = lightsemicondensed ----
+% ---- sbx = semiboldexpanded ----
-\DeclareFontShape{LGR}{Junicode-TLF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lightsemicondensed}{it}{
- <-> alias * Junicode-TLF/lsc/it
+\DeclareFontShape{LGR}{Junicode-TLF}{semiboldexpanded}{n}{
+ <-> alias * Junicode-TLF/sbx/n
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lsc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{sbx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lightsemicondensed}{scit}{
- <-> alias * Junicode-TLF/lsc/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{semiboldexpanded}{scit}{
+ <-> alias * Junicode-TLF/sbx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lightsemicondensed}{n}{
- <-> alias * Junicode-TLF/lsc/n
+\DeclareFontShape{LGR}{Junicode-TLF}{semiboldexpanded}{it}{
+ <-> alias * Junicode-TLF/sbx/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lsc}{sc}{
- <-> \Junicode@@scale Junicode-SmCondLight-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{sbx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lightsemicondensed}{sc}{
- <-> alias * Junicode-TLF/lsc/sc
+\DeclareFontShape{LGR}{Junicode-TLF}{semiboldexpanded}{sc}{
+ <-> alias * Junicode-TLF/sbx/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lsc}{scsl}{
- <-> ssub * Junicode-TLF/lsc/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{sbx}{sl}{
+ <-> ssub * Junicode-TLF/sbx/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lightsemicondensed}{scsl}{
- <-> ssub * Junicode-TLF/lightsemicondensed/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-TLF/semiboldexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lsc}{sl}{
- <-> ssub * Junicode-TLF/lsc/it
+\DeclareFontShape{LGR}{Junicode-TLF}{sbx}{scsl}{
+ <-> ssub * Junicode-TLF/sbx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-TLF/lightsemicondensed/it
+\DeclareFontShape{LGR}{Junicode-TLF}{semiboldexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/semiboldexpanded/scit
}{}
-% ---- medium ----
+% ---- c = condensed ----
-\DeclareFontShape{LGR}{Junicode-TLF}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{medium}{scit}{
- <-> \Junicode@@scale Junicode-MediumItalic-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{condensed}{n}{
+ <-> alias * Junicode-TLF/c/n
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{medium}{n}{
- <-> \Junicode@@scale Junicode-Medium-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{c}{scit}{
+ <-> \Junicode@@scale Junicode-CondItalic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{medium}{sc}{
- <-> \Junicode@@scale Junicode-Medium-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{condensed}{scit}{
+ <-> alias * Junicode-TLF/c/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{medium}{scsl}{
- <-> ssub * Junicode-TLF/medium/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{medium}{sl}{
- <-> ssub * Junicode-TLF/medium/it
+\DeclareFontShape{LGR}{Junicode-TLF}{condensed}{it}{
+ <-> alias * Junicode-TLF/c/it
}{}
-
-% ---- m = regular ----
-
-\DeclareFontShape{LGR}{Junicode-TLF}{m}{sc}{
- <-> \Junicode@@scale Junicode-Regular-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{c}{sc}{
+ <-> \Junicode@@scale Junicode-Cond-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{regular}{sc}{
- <-> alias * Junicode-TLF/m/sc
+\DeclareFontShape{LGR}{Junicode-TLF}{condensed}{sc}{
+ <-> alias * Junicode-TLF/c/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{c}{sl}{
+ <-> ssub * Junicode-TLF/c/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{regular}{n}{
- <-> alias * Junicode-TLF/m/n
+\DeclareFontShape{LGR}{Junicode-TLF}{condensed}{sl}{
+ <-> ssub * Junicode-TLF/condensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{m}{scit}{
- <-> \Junicode@@scale Junicode-Italic-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{c}{scsl}{
+ <-> ssub * Junicode-TLF/c/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{regular}{scit}{
- <-> alias * Junicode-TLF/m/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{condensed}{scsl}{
+ <-> ssub * Junicode-TLF/condensed/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-tlf-lgr
+
+% ---- mediumexpanded ----
+
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-ExpMedium-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{regular}{it}{
- <-> alias * Junicode-TLF/m/it
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{m}{scsl}{
- <-> ssub * Junicode-TLF/m/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{regular}{scsl}{
- <-> ssub * Junicode-TLF/regular/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{m}{sl}{
- <-> ssub * Junicode-TLF/m/it
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-TLF/mediumexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{regular}{sl}{
- <-> ssub * Junicode-TLF/regular/it
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/mediumexpanded/scit
}{}
-% ---- bx = boldexpanded ----
+% ---- lsc = lightsemicondensed ----
-\DeclareFontShape{LGR}{Junicode-TLF}{bx}{sc}{
- <-> \Junicode@@scale Junicode-ExpBold-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{lsc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondLight-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{boldexpanded}{sc}{
- <-> alias * Junicode-TLF/bx/sc
+\DeclareFontShape{LGR}{Junicode-TLF}{lightsemicondensed}{sc}{
+ <-> alias * Junicode-TLF/lsc/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{lsc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{boldexpanded}{n}{
- <-> alias * Junicode-TLF/bx/n
+\DeclareFontShape{LGR}{Junicode-TLF}{lightsemicondensed}{scit}{
+ <-> alias * Junicode-TLF/lsc/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{bx}{scit}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{boldexpanded}{scit}{
- <-> alias * Junicode-TLF/bx/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{lightsemicondensed}{n}{
+ <-> alias * Junicode-TLF/lsc/n
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{boldexpanded}{it}{
- <-> alias * Junicode-TLF/bx/it
+\DeclareFontShape{LGR}{Junicode-TLF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-TLF/lsc/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{bx}{scsl}{
- <-> ssub * Junicode-TLF/bx/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{lsc}{sl}{
+ <-> ssub * Junicode-TLF/lsc/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{boldexpanded}{scsl}{
- <-> ssub * Junicode-TLF/boldexpanded/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-TLF/lightsemicondensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{bx}{sl}{
- <-> ssub * Junicode-TLF/bx/it
+\DeclareFontShape{LGR}{Junicode-TLF}{lsc}{scsl}{
+ <-> ssub * Junicode-TLF/lsc/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{boldexpanded}{sl}{
- <-> ssub * Junicode-TLF/boldexpanded/it
+\DeclareFontShape{LGR}{Junicode-TLF}{lightsemicondensed}{scsl}{
+ <-> ssub * Junicode-TLF/lightsemicondensed/scit
}{}
-% ---- l = light ----
+% ---- x = expanded ----
-\DeclareFontShape{LGR}{Junicode-TLF}{l}{scit}{
- <-> \Junicode@@scale Junicode-LightItalic-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{x}{sc}{
+ <-> \Junicode@@scale Junicode-Exp-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{light}{scit}{
- <-> alias * Junicode-TLF/l/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{expanded}{sc}{
+ <-> alias * Junicode-TLF/x/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{x}{scit}{
+ <-> \Junicode@@scale Junicode-ExpItalic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{light}{it}{
- <-> alias * Junicode-TLF/l/it
+\DeclareFontShape{LGR}{Junicode-TLF}{expanded}{scit}{
+ <-> alias * Junicode-TLF/x/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{l}{sc}{
- <-> \Junicode@@scale Junicode-Light-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{light}{sc}{
- <-> alias * Junicode-TLF/l/sc
+\DeclareFontShape{LGR}{Junicode-TLF}{expanded}{n}{
+ <-> alias * Junicode-TLF/x/n
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{light}{n}{
- <-> alias * Junicode-TLF/l/n
+\DeclareFontShape{LGR}{Junicode-TLF}{expanded}{it}{
+ <-> alias * Junicode-TLF/x/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{l}{scsl}{
- <-> ssub * Junicode-TLF/l/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{x}{sl}{
+ <-> ssub * Junicode-TLF/x/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{light}{scsl}{
- <-> ssub * Junicode-TLF/light/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{expanded}{sl}{
+ <-> ssub * Junicode-TLF/expanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{l}{sl}{
- <-> ssub * Junicode-TLF/l/it
+\DeclareFontShape{LGR}{Junicode-TLF}{x}{scsl}{
+ <-> ssub * Junicode-TLF/x/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{light}{sl}{
- <-> ssub * Junicode-TLF/light/it
+\DeclareFontShape{LGR}{Junicode-TLF}{expanded}{scsl}{
+ <-> ssub * Junicode-TLF/expanded/scit
}{}
-% ---- mediumsemiexpanded ----
+% ---- b = bold ----
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{b}{sc}{
+ <-> \Junicode@@scale Junicode-Bold-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemiexpanded}{sc}{
- <-> \Junicode@@scale Junicode-SmExpMedium-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{bold}{sc}{
+ <-> alias * Junicode-TLF/b/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{b}{scit}{
+ <-> \Junicode@@scale Junicode-BoldItalic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemiexpanded}{scit}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{bold}{scit}{
+ <-> alias * Junicode-TLF/b/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemiexpanded}{scsl}{
- <-> ssub * Junicode-TLF/mediumsemiexpanded/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-TLF/mediumsemiexpanded/it
+\DeclareFontShape{LGR}{Junicode-TLF}{bold}{n}{
+ <-> alias * Junicode-TLF/b/n
}{}
+\DeclareFontShape{LGR}{Junicode-TLF}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-tlf-lgr
+}{}
-% ---- sbsx = semiboldsemiexpanded ----
+\DeclareFontShape{LGR}{Junicode-TLF}{bold}{it}{
+ <-> alias * Junicode-TLF/b/it
+}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{b}{sl}{
+ <-> ssub * Junicode-TLF/b/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-TLF/sbsx/n
+\DeclareFontShape{LGR}{Junicode-TLF}{bold}{sl}{
+ <-> ssub * Junicode-TLF/bold/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sbsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{b}{scsl}{
+ <-> ssub * Junicode-TLF/b/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semiboldsemiexpanded}{sc}{
- <-> alias * Junicode-TLF/sbsx/sc
+\DeclareFontShape{LGR}{Junicode-TLF}{bold}{scsl}{
+ <-> ssub * Junicode-TLF/bold/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tlf-lgr
+
+% ---- sx = semiexpanded ----
+
+\DeclareFontShape{LGR}{Junicode-TLF}{sx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExp-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-TLF/sbsx/it
+\DeclareFontShape{LGR}{Junicode-TLF}{semiexpanded}{sc}{
+ <-> alias * Junicode-TLF/sx/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sbsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semiboldsemiexpanded}{scit}{
- <-> alias * Junicode-TLF/sbsx/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{semiexpanded}{n}{
+ <-> alias * Junicode-TLF/sx/n
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sbsx}{scsl}{
- <-> ssub * Junicode-TLF/sbsx/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{sx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semiboldsemiexpanded}{scsl}{
- <-> ssub * Junicode-TLF/semiboldsemiexpanded/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{semiexpanded}{scit}{
+ <-> alias * Junicode-TLF/sx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sbsx}{sl}{
- <-> ssub * Junicode-TLF/sbsx/it
+\DeclareFontShape{LGR}{Junicode-TLF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-TLF/semiboldsemiexpanded/it
+\DeclareFontShape{LGR}{Junicode-TLF}{semiexpanded}{it}{
+ <-> alias * Junicode-TLF/sx/it
}{}
+\DeclareFontShape{LGR}{Junicode-TLF}{sx}{sl}{
+ <-> ssub * Junicode-TLF/sx/it
+}{}
-% ---- mediumexpanded ----
+\DeclareFontShape{LGR}{Junicode-TLF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-TLF/semiexpanded/it
+}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{sx}{scsl}{
+ <-> ssub * Junicode-TLF/sx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumexpanded}{sc}{
- <-> \Junicode@@scale Junicode-ExpMedium-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{semiexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/semiexpanded/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-tlf-lgr
+
+% ---- l = light ----
+
+\DeclareFontShape{LGR}{Junicode-TLF}{l}{scit}{
+ <-> \Junicode@@scale Junicode-LightItalic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumexpanded}{scit}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{light}{scit}{
+ <-> alias * Junicode-TLF/l/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumexpanded}{scsl}{
- <-> ssub * Junicode-TLF/mediumexpanded/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-TLF/mediumexpanded/it
+\DeclareFontShape{LGR}{Junicode-TLF}{light}{n}{
+ <-> alias * Junicode-TLF/l/n
}{}
+\DeclareFontShape{LGR}{Junicode-TLF}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-tlf-lgr
+}{}
-% ---- sx = semiexpanded ----
+\DeclareFontShape{LGR}{Junicode-TLF}{light}{it}{
+ <-> alias * Junicode-TLF/l/it
+}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sx}{sc}{
- <-> \Junicode@@scale Junicode-SmExp-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{l}{sc}{
+ <-> \Junicode@@scale Junicode-Light-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semiexpanded}{sc}{
- <-> alias * Junicode-TLF/sx/sc
+\DeclareFontShape{LGR}{Junicode-TLF}{light}{sc}{
+ <-> alias * Junicode-TLF/l/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{l}{sl}{
+ <-> ssub * Junicode-TLF/l/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semiexpanded}{n}{
- <-> alias * Junicode-TLF/sx/n
+\DeclareFontShape{LGR}{Junicode-TLF}{light}{sl}{
+ <-> ssub * Junicode-TLF/light/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpItalic-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{l}{scsl}{
+ <-> ssub * Junicode-TLF/l/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semiexpanded}{scit}{
- <-> alias * Junicode-TLF/sx/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{light}{scsl}{
+ <-> ssub * Junicode-TLF/light/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-tlf-lgr
+
+% ---- mediumsemicondensed ----
+
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemicondensed}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semiexpanded}{it}{
- <-> alias * Junicode-TLF/sx/it
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sx}{scsl}{
- <-> ssub * Junicode-TLF/sx/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semiexpanded}{scsl}{
- <-> ssub * Junicode-TLF/semiexpanded/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemicondensed}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sx}{sl}{
- <-> ssub * Junicode-TLF/sx/it
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-TLF/mediumsemicondensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semiexpanded}{sl}{
- <-> ssub * Junicode-TLF/semiexpanded/it
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemicondensed}{scsl}{
+ <-> ssub * Junicode-TLF/mediumsemicondensed/scit
}{}
-% ---- c = condensed ----
+% ---- lc = lightcondensed ----
-\DeclareFontShape{LGR}{Junicode-TLF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{lc}{scit}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{condensed}{it}{
- <-> alias * Junicode-TLF/c/it
+\DeclareFontShape{LGR}{Junicode-TLF}{lightcondensed}{scit}{
+ <-> alias * Junicode-TLF/lc/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{c}{scit}{
- <-> \Junicode@@scale Junicode-CondItalic-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{condensed}{scit}{
- <-> alias * Junicode-TLF/c/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{lightcondensed}{n}{
+ <-> alias * Junicode-TLF/lc/n
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{condensed}{n}{
- <-> alias * Junicode-TLF/c/n
+\DeclareFontShape{LGR}{Junicode-TLF}{lightcondensed}{it}{
+ <-> alias * Junicode-TLF/lc/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{c}{sc}{
- <-> \Junicode@@scale Junicode-Cond-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{lc}{sc}{
+ <-> \Junicode@@scale Junicode-CondLight-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{condensed}{sc}{
- <-> alias * Junicode-TLF/c/sc
+\DeclareFontShape{LGR}{Junicode-TLF}{lightcondensed}{sc}{
+ <-> alias * Junicode-TLF/lc/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{c}{scsl}{
- <-> ssub * Junicode-TLF/c/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{lc}{sl}{
+ <-> ssub * Junicode-TLF/lc/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{condensed}{scsl}{
- <-> ssub * Junicode-TLF/condensed/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{lightcondensed}{sl}{
+ <-> ssub * Junicode-TLF/lightcondensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{c}{sl}{
- <-> ssub * Junicode-TLF/c/it
+\DeclareFontShape{LGR}{Junicode-TLF}{lc}{scsl}{
+ <-> ssub * Junicode-TLF/lc/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{condensed}{sl}{
- <-> ssub * Junicode-TLF/condensed/it
+\DeclareFontShape{LGR}{Junicode-TLF}{lightcondensed}{scsl}{
+ <-> ssub * Junicode-TLF/lightcondensed/scit
}{}
-% ---- x = expanded ----
+% ---- m = regular ----
-\DeclareFontShape{LGR}{Junicode-TLF}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{expanded}{n}{
- <-> alias * Junicode-TLF/x/n
+\DeclareFontShape{LGR}{Junicode-TLF}{regular}{n}{
+ <-> alias * Junicode-TLF/m/n
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{x}{sc}{
- <-> \Junicode@@scale Junicode-Exp-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{m}{scit}{
+ <-> \Junicode@@scale Junicode-Italic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{expanded}{sc}{
- <-> alias * Junicode-TLF/x/sc
+\DeclareFontShape{LGR}{Junicode-TLF}{regular}{scit}{
+ <-> alias * Junicode-TLF/m/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{expanded}{it}{
- <-> alias * Junicode-TLF/x/it
+\DeclareFontShape{LGR}{Junicode-TLF}{regular}{it}{
+ <-> alias * Junicode-TLF/m/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{x}{scit}{
- <-> \Junicode@@scale Junicode-ExpItalic-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{m}{sc}{
+ <-> \Junicode@@scale Junicode-Regular-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{expanded}{scit}{
- <-> alias * Junicode-TLF/x/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{regular}{sc}{
+ <-> alias * Junicode-TLF/m/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{x}{scsl}{
- <-> ssub * Junicode-TLF/x/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{m}{sl}{
+ <-> ssub * Junicode-TLF/m/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{expanded}{scsl}{
- <-> ssub * Junicode-TLF/expanded/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{regular}{sl}{
+ <-> ssub * Junicode-TLF/regular/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{x}{sl}{
- <-> ssub * Junicode-TLF/x/it
+\DeclareFontShape{LGR}{Junicode-TLF}{m}{scsl}{
+ <-> ssub * Junicode-TLF/m/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{expanded}{sl}{
- <-> ssub * Junicode-TLF/expanded/it
+\DeclareFontShape{LGR}{Junicode-TLF}{regular}{scsl}{
+ <-> ssub * Junicode-TLF/regular/scit
}{}
-% ---- sc = semicondensed ----
+% ---- mediumsemiexpanded ----
-\DeclareFontShape{LGR}{Junicode-TLF}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemiexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semicondensed}{n}{
- <-> alias * Junicode-TLF/sc/n
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sc}{sc}{
- <-> \Junicode@@scale Junicode-SmCond-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semicondensed}{sc}{
- <-> alias * Junicode-TLF/sc/sc
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemiexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-TLF/mediumsemiexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semicondensed}{it}{
- <-> alias * Junicode-TLF/sc/it
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/mediumsemiexpanded/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondItalic-tlf-sc-lgr
+
+% ---- medium ----
+
+\DeclareFontShape{LGR}{Junicode-TLF}{medium}{sc}{
+ <-> \Junicode@@scale Junicode-Medium-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semicondensed}{scit}{
- <-> alias * Junicode-TLF/sc/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sc}{scsl}{
- <-> ssub * Junicode-TLF/sc/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{medium}{scit}{
+ <-> \Junicode@@scale Junicode-MediumItalic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semicondensed}{scsl}{
- <-> ssub * Junicode-TLF/semicondensed/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{medium}{n}{
+ <-> \Junicode@@scale Junicode-Medium-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sc}{sl}{
- <-> ssub * Junicode-TLF/sc/it
+\DeclareFontShape{LGR}{Junicode-TLF}{medium}{sl}{
+ <-> ssub * Junicode-TLF/medium/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semicondensed}{sl}{
- <-> ssub * Junicode-TLF/semicondensed/it
+\DeclareFontShape{LGR}{Junicode-TLF}{medium}{scsl}{
+ <-> ssub * Junicode-TLF/medium/scit
}{}
-% ---- sb = semibold ----
+% ---- bx = boldexpanded ----
-\DeclareFontShape{LGR}{Junicode-TLF}{sb}{scit}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{bx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpBold-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semibold}{scit}{
- <-> alias * Junicode-TLF/sb/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{boldexpanded}{sc}{
+ <-> alias * Junicode-TLF/bx/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{bx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semibold}{it}{
- <-> alias * Junicode-TLF/sb/it
+\DeclareFontShape{LGR}{Junicode-TLF}{boldexpanded}{scit}{
+ <-> alias * Junicode-TLF/bx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sb}{sc}{
- <-> \Junicode@@scale Junicode-SmBold-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semibold}{sc}{
- <-> alias * Junicode-TLF/sb/sc
+\DeclareFontShape{LGR}{Junicode-TLF}{boldexpanded}{n}{
+ <-> alias * Junicode-TLF/bx/n
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semibold}{n}{
- <-> alias * Junicode-TLF/sb/n
+\DeclareFontShape{LGR}{Junicode-TLF}{boldexpanded}{it}{
+ <-> alias * Junicode-TLF/bx/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sb}{scsl}{
- <-> ssub * Junicode-TLF/sb/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{bx}{sl}{
+ <-> ssub * Junicode-TLF/bx/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semibold}{scsl}{
- <-> ssub * Junicode-TLF/semibold/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{boldexpanded}{sl}{
+ <-> ssub * Junicode-TLF/boldexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sb}{sl}{
- <-> ssub * Junicode-TLF/sb/it
+\DeclareFontShape{LGR}{Junicode-TLF}{bx}{scsl}{
+ <-> ssub * Junicode-TLF/bx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semibold}{sl}{
- <-> ssub * Junicode-TLF/semibold/it
+\DeclareFontShape{LGR}{Junicode-TLF}{boldexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/boldexpanded/scit
}{}
% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{LGR}{Junicode-TLF}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-tlf-lgr
-}{}
-
-\DeclareFontShape{LGR}{Junicode-TLF}{boldsemiexpanded}{n}{
- <-> alias * Junicode-TLF/bsx/n
-}{}
-
\DeclareFontShape{LGR}{Junicode-TLF}{bsx}{sc}{
<-> \Junicode@@scale Junicode-SmExpBold-tlf-sc-lgr
}{}
@@ -645,12 +664,12 @@
<-> alias * Junicode-TLF/bsx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{bsx}{scsl}{
- <-> ssub * Junicode-TLF/bsx/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{boldsemiexpanded}{scsl}{
- <-> ssub * Junicode-TLF/boldsemiexpanded/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-TLF/bsx/n
}{}
\DeclareFontShape{LGR}{Junicode-TLF}{bsx}{sl}{
@@ -661,211 +680,192 @@
<-> ssub * Junicode-TLF/boldsemiexpanded/it
}{}
-
-% ---- lc = lightcondensed ----
-
-\DeclareFontShape{LGR}{Junicode-TLF}{lc}{scit}{
- <-> \Junicode@@scale Junicode-CondLightItalic-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{bsx}{scsl}{
+ <-> ssub * Junicode-TLF/bsx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lightcondensed}{scit}{
- <-> alias * Junicode-TLF/lc/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{boldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/boldsemiexpanded/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-tlf-lgr
-}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lightcondensed}{it}{
- <-> alias * Junicode-TLF/lc/it
-}{}
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{LGR}{Junicode-TLF}{lc}{sc}{
- <-> \Junicode@@scale Junicode-CondLight-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{sbsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lightcondensed}{sc}{
- <-> alias * Junicode-TLF/lc/sc
+\DeclareFontShape{LGR}{Junicode-TLF}{semiboldsemiexpanded}{sc}{
+ <-> alias * Junicode-TLF/sbsx/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lightcondensed}{n}{
- <-> alias * Junicode-TLF/lc/n
+\DeclareFontShape{LGR}{Junicode-TLF}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-TLF/sbsx/n
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lc}{scsl}{
- <-> ssub * Junicode-TLF/lc/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{sbsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lightcondensed}{scsl}{
- <-> ssub * Junicode-TLF/lightcondensed/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{semiboldsemiexpanded}{scit}{
+ <-> alias * Junicode-TLF/sbsx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lc}{sl}{
- <-> ssub * Junicode-TLF/lc/it
+\DeclareFontShape{LGR}{Junicode-TLF}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{lightcondensed}{sl}{
- <-> ssub * Junicode-TLF/lightcondensed/it
+\DeclareFontShape{LGR}{Junicode-TLF}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-TLF/sbsx/it
}{}
-
-% ---- sbx = semiboldexpanded ----
-
-\DeclareFontShape{LGR}{Junicode-TLF}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{sbsx}{sl}{
+ <-> ssub * Junicode-TLF/sbsx/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semiboldexpanded}{n}{
- <-> alias * Junicode-TLF/sbx/n
+\DeclareFontShape{LGR}{Junicode-TLF}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-TLF/semiboldsemiexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sbx}{sc}{
- <-> \Junicode@@scale Junicode-ExpSmBold-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{sbsx}{scsl}{
+ <-> ssub * Junicode-TLF/sbsx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semiboldexpanded}{sc}{
- <-> alias * Junicode-TLF/sbx/sc
+\DeclareFontShape{LGR}{Junicode-TLF}{semiboldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/semiboldsemiexpanded/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tlf-lgr
-}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semiboldexpanded}{it}{
- <-> alias * Junicode-TLF/sbx/it
-}{}
+% ---- sc = semicondensed ----
-\DeclareFontShape{LGR}{Junicode-TLF}{sbx}{scit}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{sc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCond-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semiboldexpanded}{scit}{
- <-> alias * Junicode-TLF/sbx/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{semicondensed}{sc}{
+ <-> alias * Junicode-TLF/sc/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sbx}{scsl}{
- <-> ssub * Junicode-TLF/sbx/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semiboldexpanded}{scsl}{
- <-> ssub * Junicode-TLF/semiboldexpanded/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{semicondensed}{n}{
+ <-> alias * Junicode-TLF/sc/n
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{sbx}{sl}{
- <-> ssub * Junicode-TLF/sbx/it
+\DeclareFontShape{LGR}{Junicode-TLF}{sc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-TLF/semiboldexpanded/it
+\DeclareFontShape{LGR}{Junicode-TLF}{semicondensed}{scit}{
+ <-> alias * Junicode-TLF/sc/scit
}{}
-
-% ---- mediumsemicondensed ----
-
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemicondensed}{scit}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{semicondensed}{it}{
+ <-> alias * Junicode-TLF/sc/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{sc}{sl}{
+ <-> ssub * Junicode-TLF/sc/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemicondensed}{sc}{
- <-> \Junicode@@scale Junicode-SmCondMedium-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{semicondensed}{sl}{
+ <-> ssub * Junicode-TLF/semicondensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemicondensed}{scsl}{
- <-> ssub * Junicode-TLF/mediumsemicondensed/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{sc}{scsl}{
+ <-> ssub * Junicode-TLF/sc/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-TLF/mediumsemicondensed/it
+\DeclareFontShape{LGR}{Junicode-TLF}{semicondensed}{scsl}{
+ <-> ssub * Junicode-TLF/semicondensed/scit
}{}
-% ---- mediumcondensed ----
+% ---- sb = semibold ----
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumcondensed}{sc}{
- <-> \Junicode@@scale Junicode-CondMedium-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{sb}{sc}{
+ <-> \Junicode@@scale Junicode-SmBold-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{semibold}{sc}{
+ <-> alias * Junicode-TLF/sb/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumcondensed}{scit}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{sb}{scit}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{semibold}{scit}{
+ <-> alias * Junicode-TLF/sb/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumcondensed}{scsl}{
- <-> ssub * Junicode-TLF/mediumcondensed/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{mediumcondensed}{sl}{
- <-> ssub * Junicode-TLF/mediumcondensed/it
+\DeclareFontShape{LGR}{Junicode-TLF}{semibold}{n}{
+ <-> alias * Junicode-TLF/sb/n
}{}
-
-% ---- b = bold ----
-
-\DeclareFontShape{LGR}{Junicode-TLF}{b}{scit}{
- <-> \Junicode@@scale Junicode-BoldItalic-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{bold}{scit}{
- <-> alias * Junicode-TLF/b/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{semibold}{it}{
+ <-> alias * Junicode-TLF/sb/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-tlf-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{sb}{sl}{
+ <-> ssub * Junicode-TLF/sb/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{bold}{it}{
- <-> alias * Junicode-TLF/b/it
+\DeclareFontShape{LGR}{Junicode-TLF}{semibold}{sl}{
+ <-> ssub * Junicode-TLF/semibold/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{b}{sc}{
- <-> \Junicode@@scale Junicode-Bold-tlf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TLF}{sb}{scsl}{
+ <-> ssub * Junicode-TLF/sb/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{bold}{sc}{
- <-> alias * Junicode-TLF/b/sc
+\DeclareFontShape{LGR}{Junicode-TLF}{semibold}{scsl}{
+ <-> ssub * Junicode-TLF/semibold/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-tlf-lgr
+
+% ---- mediumcondensed ----
+
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{bold}{n}{
- <-> alias * Junicode-TLF/b/n
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumcondensed}{scit}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{b}{scsl}{
- <-> ssub * Junicode-TLF/b/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-tlf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{bold}{scsl}{
- <-> ssub * Junicode-TLF/bold/scit
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumcondensed}{sc}{
+ <-> \Junicode@@scale Junicode-CondMedium-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{b}{sl}{
- <-> ssub * Junicode-TLF/b/it
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-TLF/mediumcondensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-TLF}{bold}{sl}{
- <-> ssub * Junicode-TLF/bold/it
+\DeclareFontShape{LGR}{Junicode-TLF}{mediumcondensed}{scsl}{
+ <-> ssub * Junicode-TLF/mediumcondensed/scit
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/LGRJunicode-TOsF.fd b/Master/texmf-dist/tex/latex/junicode/LGRJunicode-TOsF.fd
index 79de53f63f9..b402baf7106 100644
--- a/Master/texmf-dist/tex/latex/junicode/LGRJunicode-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/LGRJunicode-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{LGRJunicode-TOsF.fd}
- [2024/06/03 (autoinst) Font definitions for LGR/Junicode-TOsF.]
+ [2024/07/21 (autoinst) Font definitions for LGR/Junicode-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -30,14 +30,6 @@
<-> alias * Junicode-TOsF/l/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-tosf-lgr
-}{}
-
-\DeclareFontShape{LGR}{Junicode-TOsF}{light}{n}{
- <-> alias * Junicode-TOsF/l/n
-}{}
-
\DeclareFontShape{LGR}{Junicode-TOsF}{l}{scit}{
<-> \Junicode@@scale Junicode-LightItalic-tosf-sc-lgr
}{}
@@ -46,20 +38,20 @@
<-> alias * Junicode-TOsF/l/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{light}{it}{
- <-> alias * Junicode-TOsF/l/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{light}{n}{
+ <-> alias * Junicode-TOsF/l/n
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{l}{scsl}{
- <-> ssub * Junicode-TOsF/l/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{light}{scsl}{
- <-> ssub * Junicode-TOsF/light/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{light}{it}{
+ <-> alias * Junicode-TOsF/l/it
}{}
\DeclareFontShape{LGR}{Junicode-TOsF}{l}{sl}{
@@ -70,350 +62,302 @@
<-> ssub * Junicode-TOsF/light/it
}{}
-
-% ---- bx = boldexpanded ----
-
-\DeclareFontShape{LGR}{Junicode-TOsF}{bx}{scit}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{l}{scsl}{
+ <-> ssub * Junicode-TOsF/l/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{boldexpanded}{scit}{
- <-> alias * Junicode-TOsF/bx/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{light}{scsl}{
+ <-> ssub * Junicode-TOsF/light/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-tosf-lgr
-}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{boldexpanded}{it}{
- <-> alias * Junicode-TOsF/bx/it
-}{}
+% ---- sx = semiexpanded ----
-\DeclareFontShape{LGR}{Junicode-TOsF}{bx}{sc}{
- <-> \Junicode@@scale Junicode-ExpBold-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{sx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{boldexpanded}{sc}{
- <-> alias * Junicode-TOsF/bx/sc
+\DeclareFontShape{LGR}{Junicode-TOsF}{semiexpanded}{scit}{
+ <-> alias * Junicode-TOsF/sx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{boldexpanded}{n}{
- <-> alias * Junicode-TOsF/bx/n
+\DeclareFontShape{LGR}{Junicode-TOsF}{semiexpanded}{n}{
+ <-> alias * Junicode-TOsF/sx/n
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{bx}{scsl}{
- <-> ssub * Junicode-TOsF/bx/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{boldexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/boldexpanded/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{semiexpanded}{it}{
+ <-> alias * Junicode-TOsF/sx/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{bx}{sl}{
- <-> ssub * Junicode-TOsF/bx/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{sx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExp-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{boldexpanded}{sl}{
- <-> ssub * Junicode-TOsF/boldexpanded/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{semiexpanded}{sc}{
+ <-> alias * Junicode-TOsF/sx/sc
}{}
-
-% ---- m = regular ----
-
-\DeclareFontShape{LGR}{Junicode-TOsF}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{sx}{sl}{
+ <-> ssub * Junicode-TOsF/sx/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{regular}{n}{
- <-> alias * Junicode-TOsF/m/n
+\DeclareFontShape{LGR}{Junicode-TOsF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/semiexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{m}{sc}{
- <-> \Junicode@@scale Junicode-Regular-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{sx}{scsl}{
+ <-> ssub * Junicode-TOsF/sx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{regular}{sc}{
- <-> alias * Junicode-TOsF/m/sc
+\DeclareFontShape{LGR}{Junicode-TOsF}{semiexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/semiexpanded/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-tosf-lgr
-}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{regular}{it}{
- <-> alias * Junicode-TOsF/m/it
-}{}
+% ---- mediumsemicondensed ----
-\DeclareFontShape{LGR}{Junicode-TOsF}{m}{scit}{
- <-> \Junicode@@scale Junicode-Italic-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemicondensed}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{regular}{scit}{
- <-> alias * Junicode-TOsF/m/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{m}{scsl}{
- <-> ssub * Junicode-TOsF/m/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemicondensed}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{regular}{scsl}{
- <-> ssub * Junicode-TOsF/regular/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{m}{sl}{
- <-> ssub * Junicode-TOsF/m/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-TOsF/mediumsemicondensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{regular}{sl}{
- <-> ssub * Junicode-TOsF/regular/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemicondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/mediumsemicondensed/scit
}{}
-% ---- lsc = lightsemicondensed ----
+% ---- lc = lightcondensed ----
-\DeclareFontShape{LGR}{Junicode-TOsF}{lsc}{sc}{
- <-> \Junicode@@scale Junicode-SmCondLight-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{lc}{sc}{
+ <-> \Junicode@@scale Junicode-CondLight-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lightsemicondensed}{sc}{
- <-> alias * Junicode-TOsF/lsc/sc
+\DeclareFontShape{LGR}{Junicode-TOsF}{lightcondensed}{sc}{
+ <-> alias * Junicode-TOsF/lc/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lightsemicondensed}{n}{
- <-> alias * Junicode-TOsF/lsc/n
+\DeclareFontShape{LGR}{Junicode-TOsF}{lightcondensed}{n}{
+ <-> alias * Junicode-TOsF/lc/n
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lsc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{lc}{scit}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lightsemicondensed}{scit}{
- <-> alias * Junicode-TOsF/lsc/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{lightcondensed}{scit}{
+ <-> alias * Junicode-TOsF/lc/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lightsemicondensed}{it}{
- <-> alias * Junicode-TOsF/lsc/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{lightcondensed}{it}{
+ <-> alias * Junicode-TOsF/lc/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lsc}{scsl}{
- <-> ssub * Junicode-TOsF/lsc/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{lc}{sl}{
+ <-> ssub * Junicode-TOsF/lc/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lightsemicondensed}{scsl}{
- <-> ssub * Junicode-TOsF/lightsemicondensed/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{lightcondensed}{sl}{
+ <-> ssub * Junicode-TOsF/lightcondensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lsc}{sl}{
- <-> ssub * Junicode-TOsF/lsc/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{lc}{scsl}{
+ <-> ssub * Junicode-TOsF/lc/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-TOsF/lightsemicondensed/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{lightcondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/lightcondensed/scit
}{}
% ---- medium ----
-\DeclareFontShape{LGR}{Junicode-TOsF}{medium}{n}{
- <-> \Junicode@@scale Junicode-Medium-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{medium}{scit}{
+ <-> \Junicode@@scale Junicode-MediumItalic-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{medium}{sc}{
- <-> \Junicode@@scale Junicode-Medium-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{medium}{n}{
+ <-> \Junicode@@scale Junicode-Medium-tosf-lgr
}{}
\DeclareFontShape{LGR}{Junicode-TOsF}{medium}{it}{
<-> \Junicode@@scale Junicode-MediumItalic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{medium}{scit}{
- <-> \Junicode@@scale Junicode-MediumItalic-tosf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{Junicode-TOsF}{medium}{scsl}{
- <-> ssub * Junicode-TOsF/medium/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{medium}{sc}{
+ <-> \Junicode@@scale Junicode-Medium-tosf-sc-lgr
}{}
\DeclareFontShape{LGR}{Junicode-TOsF}{medium}{sl}{
<-> ssub * Junicode-TOsF/medium/it
}{}
-
-% ---- sx = semiexpanded ----
-
-\DeclareFontShape{LGR}{Junicode-TOsF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{medium}{scsl}{
+ <-> ssub * Junicode-TOsF/medium/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semiexpanded}{n}{
- <-> alias * Junicode-TOsF/sx/n
-}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sx}{sc}{
- <-> \Junicode@@scale Junicode-SmExp-tosf-sc-lgr
-}{}
+% ---- bx = boldexpanded ----
-\DeclareFontShape{LGR}{Junicode-TOsF}{semiexpanded}{sc}{
- <-> alias * Junicode-TOsF/sx/sc
+\DeclareFontShape{LGR}{Junicode-TOsF}{bx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpBold-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{boldexpanded}{sc}{
+ <-> alias * Junicode-TOsF/bx/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semiexpanded}{it}{
- <-> alias * Junicode-TOsF/sx/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpItalic-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{boldexpanded}{it}{
+ <-> alias * Junicode-TOsF/bx/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semiexpanded}{scit}{
- <-> alias * Junicode-TOsF/sx/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{bx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sx}{scsl}{
- <-> ssub * Junicode-TOsF/sx/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{boldexpanded}{scit}{
+ <-> alias * Junicode-TOsF/bx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semiexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/semiexpanded/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sx}{sl}{
- <-> ssub * Junicode-TOsF/sx/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{boldexpanded}{n}{
+ <-> alias * Junicode-TOsF/bx/n
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semiexpanded}{sl}{
- <-> ssub * Junicode-TOsF/semiexpanded/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{bx}{sl}{
+ <-> ssub * Junicode-TOsF/bx/it
}{}
-
-% ---- x = expanded ----
-
-\DeclareFontShape{LGR}{Junicode-TOsF}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{boldexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/boldexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{expanded}{it}{
- <-> alias * Junicode-TOsF/x/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{bx}{scsl}{
+ <-> ssub * Junicode-TOsF/bx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{x}{scit}{
- <-> \Junicode@@scale Junicode-ExpItalic-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{boldexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/boldexpanded/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{expanded}{scit}{
- <-> alias * Junicode-TOsF/x/scit
-}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-tosf-lgr
-}{}
+% ---- m = regular ----
-\DeclareFontShape{LGR}{Junicode-TOsF}{expanded}{n}{
- <-> alias * Junicode-TOsF/x/n
+\DeclareFontShape{LGR}{Junicode-TOsF}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{x}{sc}{
- <-> \Junicode@@scale Junicode-Exp-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{regular}{n}{
+ <-> alias * Junicode-TOsF/m/n
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{expanded}{sc}{
- <-> alias * Junicode-TOsF/x/sc
+\DeclareFontShape{LGR}{Junicode-TOsF}{m}{scit}{
+ <-> \Junicode@@scale Junicode-Italic-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{x}{scsl}{
- <-> ssub * Junicode-TOsF/x/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{regular}{scit}{
+ <-> alias * Junicode-TOsF/m/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{expanded}{scsl}{
- <-> ssub * Junicode-TOsF/expanded/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{x}{sl}{
- <-> ssub * Junicode-TOsF/x/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{regular}{it}{
+ <-> alias * Junicode-TOsF/m/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{expanded}{sl}{
- <-> ssub * Junicode-TOsF/expanded/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{m}{sc}{
+ <-> \Junicode@@scale Junicode-Regular-tosf-sc-lgr
}{}
-
-% ---- c = condensed ----
-
-\DeclareFontShape{LGR}{Junicode-TOsF}{c}{sc}{
- <-> \Junicode@@scale Junicode-Cond-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{regular}{sc}{
+ <-> alias * Junicode-TOsF/m/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{condensed}{sc}{
- <-> alias * Junicode-TOsF/c/sc
+\DeclareFontShape{LGR}{Junicode-TOsF}{m}{sl}{
+ <-> ssub * Junicode-TOsF/m/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{regular}{sl}{
+ <-> ssub * Junicode-TOsF/regular/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{condensed}{n}{
- <-> alias * Junicode-TOsF/c/n
+\DeclareFontShape{LGR}{Junicode-TOsF}{m}{scsl}{
+ <-> ssub * Junicode-TOsF/m/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{c}{scit}{
- <-> \Junicode@@scale Junicode-CondItalic-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{regular}{scsl}{
+ <-> ssub * Junicode-TOsF/regular/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{condensed}{scit}{
- <-> alias * Junicode-TOsF/c/scit
-}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-tosf-lgr
+% ---- mediumsemiexpanded ----
+
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{condensed}{it}{
- <-> alias * Junicode-TOsF/c/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{c}{scsl}{
- <-> ssub * Junicode-TOsF/c/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemiexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{condensed}{scsl}{
- <-> ssub * Junicode-TOsF/condensed/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemiexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{c}{sl}{
- <-> ssub * Junicode-TOsF/c/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/mediumsemiexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{condensed}{sl}{
- <-> ssub * Junicode-TOsF/condensed/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/mediumsemiexpanded/scit
}{}
% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{LGR}{Junicode-TOsF}{sbsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-tosf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{Junicode-TOsF}{semiboldsemiexpanded}{sc}{
- <-> alias * Junicode-TOsF/sbsx/sc
-}{}
-
\DeclareFontShape{LGR}{Junicode-TOsF}{sbsx}{n}{
<-> \Junicode@@scale Junicode-SmExpSmBold-tosf-lgr
}{}
@@ -438,12 +382,12 @@
<-> alias * Junicode-TOsF/sbsx/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sbsx}{scsl}{
- <-> ssub * Junicode-TOsF/sbsx/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{sbsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semiboldsemiexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/semiboldsemiexpanded/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{semiboldsemiexpanded}{sc}{
+ <-> alias * Junicode-TOsF/sbsx/sc
}{}
\DeclareFontShape{LGR}{Junicode-TOsF}{sbsx}{sl}{
@@ -454,345 +398,385 @@
<-> ssub * Junicode-TOsF/semiboldsemiexpanded/it
}{}
-
-% ---- mediumexpanded ----
-
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumexpanded}{scit}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{sbsx}{scsl}{
+ <-> ssub * Junicode-TOsF/sbsx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{semiboldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/semiboldsemiexpanded/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumexpanded}{sc}{
- <-> \Junicode@@scale Junicode-ExpMedium-tosf-sc-lgr
+
+% ---- bsx = boldsemiexpanded ----
+
+\DeclareFontShape{LGR}{Junicode-TOsF}{bsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpBold-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{boldsemiexpanded}{sc}{
+ <-> alias * Junicode-TOsF/bsx/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/mediumexpanded/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-TOsF/mediumexpanded/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-TOsF/bsx/n
}{}
+\DeclareFontShape{LGR}{Junicode-TOsF}{bsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-tosf-sc-lgr
+}{}
-% ---- mediumsemiexpanded ----
+\DeclareFontShape{LGR}{Junicode-TOsF}{boldsemiexpanded}{scit}{
+ <-> alias * Junicode-TOsF/bsx/scit
+}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemiexpanded}{sc}{
- <-> \Junicode@@scale Junicode-SmExpMedium-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-TOsF/bsx/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{bsx}{sl}{
+ <-> ssub * Junicode-TOsF/bsx/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemiexpanded}{scit}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/boldsemiexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemiexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/mediumsemiexpanded/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{bsx}{scsl}{
+ <-> ssub * Junicode-TOsF/bsx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-TOsF/mediumsemiexpanded/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{boldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/boldsemiexpanded/scit
}{}
-% ---- mediumsemicondensed ----
+% ---- sc = semicondensed ----
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemicondensed}{scit}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{sc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCond-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{semicondensed}{sc}{
+ <-> alias * Junicode-TOsF/sc/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemicondensed}{sc}{
- <-> \Junicode@@scale Junicode-SmCondMedium-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{semicondensed}{n}{
+ <-> alias * Junicode-TOsF/sc/n
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemicondensed}{scsl}{
- <-> ssub * Junicode-TOsF/mediumsemicondensed/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{sc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-TOsF/mediumsemicondensed/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{semicondensed}{scit}{
+ <-> alias * Junicode-TOsF/sc/scit
}{}
-
-% ---- sbx = semiboldexpanded ----
-
-\DeclareFontShape{LGR}{Junicode-TOsF}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semiboldexpanded}{n}{
- <-> alias * Junicode-TOsF/sbx/n
+\DeclareFontShape{LGR}{Junicode-TOsF}{semicondensed}{it}{
+ <-> alias * Junicode-TOsF/sc/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sbx}{sc}{
- <-> \Junicode@@scale Junicode-ExpSmBold-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{sc}{sl}{
+ <-> ssub * Junicode-TOsF/sc/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semiboldexpanded}{sc}{
- <-> alias * Junicode-TOsF/sbx/sc
+\DeclareFontShape{LGR}{Junicode-TOsF}{semicondensed}{sl}{
+ <-> ssub * Junicode-TOsF/semicondensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{sc}{scsl}{
+ <-> ssub * Junicode-TOsF/sc/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semiboldexpanded}{it}{
- <-> alias * Junicode-TOsF/sbx/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{semicondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/semicondensed/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sbx}{scit}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tosf-sc-lgr
+
+% ---- mediumcondensed ----
+
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumcondensed}{sc}{
+ <-> \Junicode@@scale Junicode-CondMedium-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semiboldexpanded}{scit}{
- <-> alias * Junicode-TOsF/sbx/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumcondensed}{scit}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sbx}{scsl}{
- <-> ssub * Junicode-TOsF/sbx/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semiboldexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/semiboldexpanded/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sbx}{sl}{
- <-> ssub * Junicode-TOsF/sbx/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-TOsF/mediumcondensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-TOsF/semiboldexpanded/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumcondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/mediumcondensed/scit
}{}
-% ---- bsx = boldsemiexpanded ----
+% ---- sb = semibold ----
-\DeclareFontShape{LGR}{Junicode-TOsF}{bsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpBold-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{boldsemiexpanded}{sc}{
- <-> alias * Junicode-TOsF/bsx/sc
+\DeclareFontShape{LGR}{Junicode-TOsF}{semibold}{it}{
+ <-> alias * Junicode-TOsF/sb/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{boldsemiexpanded}{n}{
- <-> alias * Junicode-TOsF/bsx/n
+\DeclareFontShape{LGR}{Junicode-TOsF}{semibold}{n}{
+ <-> alias * Junicode-TOsF/sb/n
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{bsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{sb}{scit}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{boldsemiexpanded}{scit}{
- <-> alias * Junicode-TOsF/bsx/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{semibold}{scit}{
+ <-> alias * Junicode-TOsF/sb/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{sb}{sc}{
+ <-> \Junicode@@scale Junicode-SmBold-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{boldsemiexpanded}{it}{
- <-> alias * Junicode-TOsF/bsx/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{semibold}{sc}{
+ <-> alias * Junicode-TOsF/sb/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{bsx}{scsl}{
- <-> ssub * Junicode-TOsF/bsx/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{sb}{sl}{
+ <-> ssub * Junicode-TOsF/sb/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{boldsemiexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/boldsemiexpanded/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{semibold}{sl}{
+ <-> ssub * Junicode-TOsF/semibold/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{bsx}{sl}{
- <-> ssub * Junicode-TOsF/bsx/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{sb}{scsl}{
+ <-> ssub * Junicode-TOsF/sb/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-TOsF/boldsemiexpanded/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{semibold}{scsl}{
+ <-> ssub * Junicode-TOsF/semibold/scit
}{}
-% ---- lc = lightcondensed ----
+% ---- sbx = semiboldexpanded ----
-\DeclareFontShape{LGR}{Junicode-TOsF}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{sbx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lightcondensed}{n}{
- <-> alias * Junicode-TOsF/lc/n
+\DeclareFontShape{LGR}{Junicode-TOsF}{semiboldexpanded}{sc}{
+ <-> alias * Junicode-TOsF/sbx/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lc}{sc}{
- <-> \Junicode@@scale Junicode-CondLight-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{sbx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lightcondensed}{sc}{
- <-> alias * Junicode-TOsF/lc/sc
+\DeclareFontShape{LGR}{Junicode-TOsF}{semiboldexpanded}{scit}{
+ <-> alias * Junicode-TOsF/sbx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lightcondensed}{it}{
- <-> alias * Junicode-TOsF/lc/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{semiboldexpanded}{n}{
+ <-> alias * Junicode-TOsF/sbx/n
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lc}{scit}{
- <-> \Junicode@@scale Junicode-CondLightItalic-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lightcondensed}{scit}{
- <-> alias * Junicode-TOsF/lc/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{semiboldexpanded}{it}{
+ <-> alias * Junicode-TOsF/sbx/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lc}{scsl}{
- <-> ssub * Junicode-TOsF/lc/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{sbx}{sl}{
+ <-> ssub * Junicode-TOsF/sbx/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lightcondensed}{scsl}{
- <-> ssub * Junicode-TOsF/lightcondensed/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/semiboldexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lc}{sl}{
- <-> ssub * Junicode-TOsF/lc/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{sbx}{scsl}{
+ <-> ssub * Junicode-TOsF/sbx/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{lightcondensed}{sl}{
- <-> ssub * Junicode-TOsF/lightcondensed/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{semiboldexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/semiboldexpanded/scit
}{}
-% ---- sc = semicondensed ----
+% ---- c = condensed ----
-\DeclareFontShape{LGR}{Junicode-TOsF}{sc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondItalic-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semicondensed}{scit}{
- <-> alias * Junicode-TOsF/sc/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{condensed}{it}{
+ <-> alias * Junicode-TOsF/c/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{c}{scit}{
+ <-> \Junicode@@scale Junicode-CondItalic-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semicondensed}{it}{
- <-> alias * Junicode-TOsF/sc/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{condensed}{scit}{
+ <-> alias * Junicode-TOsF/c/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sc}{sc}{
- <-> \Junicode@@scale Junicode-SmCond-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semicondensed}{sc}{
- <-> alias * Junicode-TOsF/sc/sc
+\DeclareFontShape{LGR}{Junicode-TOsF}{condensed}{n}{
+ <-> alias * Junicode-TOsF/c/n
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{c}{sc}{
+ <-> \Junicode@@scale Junicode-Cond-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semicondensed}{n}{
- <-> alias * Junicode-TOsF/sc/n
+\DeclareFontShape{LGR}{Junicode-TOsF}{condensed}{sc}{
+ <-> alias * Junicode-TOsF/c/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sc}{scsl}{
- <-> ssub * Junicode-TOsF/sc/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{c}{sl}{
+ <-> ssub * Junicode-TOsF/c/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semicondensed}{scsl}{
- <-> ssub * Junicode-TOsF/semicondensed/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{condensed}{sl}{
+ <-> ssub * Junicode-TOsF/condensed/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sc}{sl}{
- <-> ssub * Junicode-TOsF/sc/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{c}{scsl}{
+ <-> ssub * Junicode-TOsF/c/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semicondensed}{sl}{
- <-> ssub * Junicode-TOsF/semicondensed/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{condensed}{scsl}{
+ <-> ssub * Junicode-TOsF/condensed/scit
}{}
-% ---- sb = semibold ----
+% ---- mediumexpanded ----
-\DeclareFontShape{LGR}{Junicode-TOsF}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semibold}{n}{
- <-> alias * Junicode-TOsF/sb/n
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sb}{sc}{
- <-> \Junicode@@scale Junicode-SmBold-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semibold}{sc}{
- <-> alias * Junicode-TOsF/sb/sc
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-ExpMedium-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/mediumexpanded/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semibold}{it}{
- <-> alias * Junicode-TOsF/sb/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{mediumexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/mediumexpanded/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sb}{scit}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-tosf-sc-lgr
+
+% ---- lsc = lightsemicondensed ----
+
+\DeclareFontShape{LGR}{Junicode-TOsF}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semibold}{scit}{
- <-> alias * Junicode-TOsF/sb/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{lightsemicondensed}{n}{
+ <-> alias * Junicode-TOsF/lsc/n
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sb}{scsl}{
- <-> ssub * Junicode-TOsF/sb/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{lsc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semibold}{scsl}{
- <-> ssub * Junicode-TOsF/semibold/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{lightsemicondensed}{scit}{
+ <-> alias * Junicode-TOsF/lsc/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{sb}{sl}{
- <-> ssub * Junicode-TOsF/sb/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{semibold}{sl}{
- <-> ssub * Junicode-TOsF/semibold/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-TOsF/lsc/it
+}{}
+
+\DeclareFontShape{LGR}{Junicode-TOsF}{lsc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondLight-tosf-sc-lgr
+}{}
+
+\DeclareFontShape{LGR}{Junicode-TOsF}{lightsemicondensed}{sc}{
+ <-> alias * Junicode-TOsF/lsc/sc
+}{}
+
+\DeclareFontShape{LGR}{Junicode-TOsF}{lsc}{sl}{
+ <-> ssub * Junicode-TOsF/lsc/it
+}{}
+
+\DeclareFontShape{LGR}{Junicode-TOsF}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-TOsF/lightsemicondensed/it
+}{}
+
+\DeclareFontShape{LGR}{Junicode-TOsF}{lsc}{scsl}{
+ <-> ssub * Junicode-TOsF/lsc/scit
+}{}
+
+\DeclareFontShape{LGR}{Junicode-TOsF}{lightsemicondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/lightsemicondensed/scit
}{}
% ---- b = bold ----
+\DeclareFontShape{LGR}{Junicode-TOsF}{b}{sc}{
+ <-> \Junicode@@scale Junicode-Bold-tosf-sc-lgr
+}{}
+
+\DeclareFontShape{LGR}{Junicode-TOsF}{bold}{sc}{
+ <-> alias * Junicode-TOsF/b/sc
+}{}
+
\DeclareFontShape{LGR}{Junicode-TOsF}{b}{it}{
<-> \Junicode@@scale Junicode-BoldItalic-tosf-lgr
}{}
@@ -817,12 +801,12 @@
<-> alias * Junicode-TOsF/b/n
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{b}{sc}{
- <-> \Junicode@@scale Junicode-Bold-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{b}{sl}{
+ <-> ssub * Junicode-TOsF/b/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{bold}{sc}{
- <-> alias * Junicode-TOsF/b/sc
+\DeclareFontShape{LGR}{Junicode-TOsF}{bold}{sl}{
+ <-> ssub * Junicode-TOsF/bold/it
}{}
\DeclareFontShape{LGR}{Junicode-TOsF}{b}{scsl}{
@@ -833,39 +817,55 @@
<-> ssub * Junicode-TOsF/bold/scit
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{b}{sl}{
- <-> ssub * Junicode-TOsF/b/it
+
+% ---- x = expanded ----
+
+\DeclareFontShape{LGR}{Junicode-TOsF}{x}{scit}{
+ <-> \Junicode@@scale Junicode-ExpItalic-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{bold}{sl}{
- <-> ssub * Junicode-TOsF/bold/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{expanded}{scit}{
+ <-> alias * Junicode-TOsF/x/scit
}{}
+\DeclareFontShape{LGR}{Junicode-TOsF}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-tosf-lgr
+}{}
-% ---- mediumcondensed ----
+\DeclareFontShape{LGR}{Junicode-TOsF}{expanded}{n}{
+ <-> alias * Junicode-TOsF/x/n
+}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumcondensed}{scit}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{expanded}{it}{
+ <-> alias * Junicode-TOsF/x/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumcondensed}{sc}{
- <-> \Junicode@@scale Junicode-CondMedium-tosf-sc-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{x}{sc}{
+ <-> \Junicode@@scale Junicode-Exp-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-tosf-lgr
+\DeclareFontShape{LGR}{Junicode-TOsF}{expanded}{sc}{
+ <-> alias * Junicode-TOsF/x/sc
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumcondensed}{scsl}{
- <-> ssub * Junicode-TOsF/mediumcondensed/scit
+\DeclareFontShape{LGR}{Junicode-TOsF}{x}{sl}{
+ <-> ssub * Junicode-TOsF/x/it
}{}
-\DeclareFontShape{LGR}{Junicode-TOsF}{mediumcondensed}{sl}{
- <-> ssub * Junicode-TOsF/mediumcondensed/it
+\DeclareFontShape{LGR}{Junicode-TOsF}{expanded}{sl}{
+ <-> ssub * Junicode-TOsF/expanded/it
+}{}
+
+\DeclareFontShape{LGR}{Junicode-TOsF}{x}{scsl}{
+ <-> ssub * Junicode-TOsF/x/scit
+}{}
+
+\DeclareFontShape{LGR}{Junicode-TOsF}{expanded}{scsl}{
+ <-> ssub * Junicode-TOsF/expanded/scit
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/LY1Junicode-Inf.fd b/Master/texmf-dist/tex/latex/junicode/LY1Junicode-Inf.fd
index ba4320e2d53..b442772ef0e 100644
--- a/Master/texmf-dist/tex/latex/junicode/LY1Junicode-Inf.fd
+++ b/Master/texmf-dist/tex/latex/junicode/LY1Junicode-Inf.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{LY1Junicode-Inf.fd}
- [2024/06/03 (autoinst) Font definitions for LY1/Junicode-Inf.]
+ [2024/07/21 (autoinst) Font definitions for LY1/Junicode-Inf.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,72 +20,57 @@
\DeclareFontFamily{LY1}{Junicode-Inf}{}
-% ---- mediumcondensed ----
-
-\DeclareFontShape{LY1}{Junicode-Inf}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-inf-ly1
-}{}
-
-\DeclareFontShape{LY1}{Junicode-Inf}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-inf-ly1
-}{}
-
-\DeclareFontShape{LY1}{Junicode-Inf}{mediumcondensed}{sl}{
- <-> ssub * Junicode-Inf/mediumcondensed/it
-}{}
-
-
-% ---- b = bold ----
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{LY1}{Junicode-Inf}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{bold}{n}{
- <-> alias * Junicode-Inf/b/n
+\DeclareFontShape{LY1}{Junicode-Inf}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-Inf/bsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{bold}{it}{
- <-> alias * Junicode-Inf/b/it
+\DeclareFontShape{LY1}{Junicode-Inf}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-Inf/bsx/n
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{b}{sl}{
- <-> ssub * Junicode-Inf/b/it
+\DeclareFontShape{LY1}{Junicode-Inf}{bsx}{sl}{
+ <-> ssub * Junicode-Inf/bsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{bold}{sl}{
- <-> ssub * Junicode-Inf/bold/it
+\DeclareFontShape{LY1}{Junicode-Inf}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-Inf/boldsemiexpanded/it
}{}
-% ---- sb = semibold ----
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{LY1}{Junicode-Inf}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{semibold}{it}{
- <-> alias * Junicode-Inf/sb/it
+\DeclareFontShape{LY1}{Junicode-Inf}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-Inf/sbsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{semibold}{n}{
- <-> alias * Junicode-Inf/sb/n
+\DeclareFontShape{LY1}{Junicode-Inf}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-Inf/sbsx/n
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{sb}{sl}{
- <-> ssub * Junicode-Inf/sb/it
+\DeclareFontShape{LY1}{Junicode-Inf}{sbsx}{sl}{
+ <-> ssub * Junicode-Inf/sbsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{semibold}{sl}{
- <-> ssub * Junicode-Inf/semibold/it
+\DeclareFontShape{LY1}{Junicode-Inf}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-Inf/semiboldsemiexpanded/it
}{}
@@ -116,84 +101,99 @@
}{}
-% ---- lc = lightcondensed ----
+% ---- mediumcondensed ----
-\DeclareFontShape{LY1}{Junicode-Inf}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{lightcondensed}{n}{
- <-> alias * Junicode-Inf/lc/n
+\DeclareFontShape{LY1}{Junicode-Inf}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-Inf/mediumcondensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{lightcondensed}{it}{
- <-> alias * Junicode-Inf/lc/it
+
+% ---- sb = semibold ----
+
+\DeclareFontShape{LY1}{Junicode-Inf}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{lc}{sl}{
- <-> ssub * Junicode-Inf/lc/it
+\DeclareFontShape{LY1}{Junicode-Inf}{semibold}{it}{
+ <-> alias * Junicode-Inf/sb/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{lightcondensed}{sl}{
- <-> ssub * Junicode-Inf/lightcondensed/it
+\DeclareFontShape{LY1}{Junicode-Inf}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-inf-ly1
}{}
+\DeclareFontShape{LY1}{Junicode-Inf}{semibold}{n}{
+ <-> alias * Junicode-Inf/sb/n
+}{}
-% ---- bsx = boldsemiexpanded ----
+\DeclareFontShape{LY1}{Junicode-Inf}{sb}{sl}{
+ <-> ssub * Junicode-Inf/sb/it
+}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{semibold}{sl}{
+ <-> ssub * Junicode-Inf/semibold/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{boldsemiexpanded}{it}{
- <-> alias * Junicode-Inf/bsx/it
+
+% ---- l = light ----
+
+\DeclareFontShape{LY1}{Junicode-Inf}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{light}{n}{
+ <-> alias * Junicode-Inf/l/n
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{boldsemiexpanded}{n}{
- <-> alias * Junicode-Inf/bsx/n
+\DeclareFontShape{LY1}{Junicode-Inf}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{bsx}{sl}{
- <-> ssub * Junicode-Inf/bsx/it
+\DeclareFontShape{LY1}{Junicode-Inf}{light}{it}{
+ <-> alias * Junicode-Inf/l/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-Inf/boldsemiexpanded/it
+\DeclareFontShape{LY1}{Junicode-Inf}{l}{sl}{
+ <-> ssub * Junicode-Inf/l/it
}{}
+\DeclareFontShape{LY1}{Junicode-Inf}{light}{sl}{
+ <-> ssub * Junicode-Inf/light/it
+}{}
-% ---- sbx = semiboldexpanded ----
-\DeclareFontShape{LY1}{Junicode-Inf}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-inf-ly1
+% ---- sx = semiexpanded ----
+
+\DeclareFontShape{LY1}{Junicode-Inf}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{semiboldexpanded}{it}{
- <-> alias * Junicode-Inf/sbx/it
+\DeclareFontShape{LY1}{Junicode-Inf}{semiexpanded}{n}{
+ <-> alias * Junicode-Inf/sx/n
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{semiboldexpanded}{n}{
- <-> alias * Junicode-Inf/sbx/n
+\DeclareFontShape{LY1}{Junicode-Inf}{semiexpanded}{it}{
+ <-> alias * Junicode-Inf/sx/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{sbx}{sl}{
- <-> ssub * Junicode-Inf/sbx/it
+\DeclareFontShape{LY1}{Junicode-Inf}{sx}{sl}{
+ <-> ssub * Junicode-Inf/sx/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-Inf/semiboldexpanded/it
+\DeclareFontShape{LY1}{Junicode-Inf}{semiexpanded}{sl}{
+ <-> ssub * Junicode-Inf/semiexpanded/it
}{}
@@ -212,154 +212,134 @@
}{}
-% ---- mediumsemiexpanded ----
-
-\DeclareFontShape{LY1}{Junicode-Inf}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-inf-ly1
-}{}
-
-\DeclareFontShape{LY1}{Junicode-Inf}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-inf-ly1
-}{}
-
-\DeclareFontShape{LY1}{Junicode-Inf}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-Inf/mediumsemiexpanded/it
-}{}
-
-
-% ---- sbsx = semiboldsemiexpanded ----
+% ---- lc = lightcondensed ----
-\DeclareFontShape{LY1}{Junicode-Inf}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-Inf/sbsx/it
+\DeclareFontShape{LY1}{Junicode-Inf}{lightcondensed}{it}{
+ <-> alias * Junicode-Inf/lc/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-Inf/sbsx/n
+\DeclareFontShape{LY1}{Junicode-Inf}{lightcondensed}{n}{
+ <-> alias * Junicode-Inf/lc/n
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{sbsx}{sl}{
- <-> ssub * Junicode-Inf/sbsx/it
+\DeclareFontShape{LY1}{Junicode-Inf}{lc}{sl}{
+ <-> ssub * Junicode-Inf/lc/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-Inf/semiboldsemiexpanded/it
+\DeclareFontShape{LY1}{Junicode-Inf}{lightcondensed}{sl}{
+ <-> ssub * Junicode-Inf/lightcondensed/it
}{}
-% ---- mediumexpanded ----
+% ---- medium ----
-\DeclareFontShape{LY1}{Junicode-Inf}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{medium}{n}{
+ <-> \Junicode@@scale Junicode-Medium-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{mediumexpanded}{sl}{
- <-> ssub * Junicode-Inf/mediumexpanded/it
+\DeclareFontShape{LY1}{Junicode-Inf}{medium}{sl}{
+ <-> ssub * Junicode-Inf/medium/it
}{}
-% ---- sx = semiexpanded ----
+% ---- bx = boldexpanded ----
-\DeclareFontShape{LY1}{Junicode-Inf}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{semiexpanded}{n}{
- <-> alias * Junicode-Inf/sx/n
+\DeclareFontShape{LY1}{Junicode-Inf}{boldexpanded}{n}{
+ <-> alias * Junicode-Inf/bx/n
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{semiexpanded}{it}{
- <-> alias * Junicode-Inf/sx/it
+\DeclareFontShape{LY1}{Junicode-Inf}{boldexpanded}{it}{
+ <-> alias * Junicode-Inf/bx/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{sx}{sl}{
- <-> ssub * Junicode-Inf/sx/it
+\DeclareFontShape{LY1}{Junicode-Inf}{bx}{sl}{
+ <-> ssub * Junicode-Inf/bx/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{semiexpanded}{sl}{
- <-> ssub * Junicode-Inf/semiexpanded/it
+\DeclareFontShape{LY1}{Junicode-Inf}{boldexpanded}{sl}{
+ <-> ssub * Junicode-Inf/boldexpanded/it
}{}
-% ---- x = expanded ----
+% ---- m = regular ----
-\DeclareFontShape{LY1}{Junicode-Inf}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{expanded}{it}{
- <-> alias * Junicode-Inf/x/it
+\DeclareFontShape{LY1}{Junicode-Inf}{regular}{n}{
+ <-> alias * Junicode-Inf/m/n
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{expanded}{n}{
- <-> alias * Junicode-Inf/x/n
+\DeclareFontShape{LY1}{Junicode-Inf}{regular}{it}{
+ <-> alias * Junicode-Inf/m/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{x}{sl}{
- <-> ssub * Junicode-Inf/x/it
+\DeclareFontShape{LY1}{Junicode-Inf}{m}{sl}{
+ <-> ssub * Junicode-Inf/m/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{expanded}{sl}{
- <-> ssub * Junicode-Inf/expanded/it
+\DeclareFontShape{LY1}{Junicode-Inf}{regular}{sl}{
+ <-> ssub * Junicode-Inf/regular/it
}{}
-% ---- c = condensed ----
+% ---- mediumsemiexpanded ----
-\DeclareFontShape{LY1}{Junicode-Inf}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{condensed}{it}{
- <-> alias * Junicode-Inf/c/it
+\DeclareFontShape{LY1}{Junicode-Inf}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-Inf/mediumsemiexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{condensed}{n}{
- <-> alias * Junicode-Inf/c/n
+
+% ---- mediumexpanded ----
+
+\DeclareFontShape{LY1}{Junicode-Inf}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{c}{sl}{
- <-> ssub * Junicode-Inf/c/it
+\DeclareFontShape{LY1}{Junicode-Inf}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{condensed}{sl}{
- <-> ssub * Junicode-Inf/condensed/it
+\DeclareFontShape{LY1}{Junicode-Inf}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-Inf/mediumexpanded/it
}{}
% ---- lsc = lightsemicondensed ----
-\DeclareFontShape{LY1}{Junicode-Inf}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-inf-ly1
-}{}
-
-\DeclareFontShape{LY1}{Junicode-Inf}{lightsemicondensed}{it}{
- <-> alias * Junicode-Inf/lsc/it
-}{}
-
\DeclareFontShape{LY1}{Junicode-Inf}{lsc}{n}{
<-> \Junicode@@scale Junicode-SmCondLight-inf-ly1
}{}
@@ -368,6 +348,14 @@
<-> alias * Junicode-Inf/lsc/n
}{}
+\DeclareFontShape{LY1}{Junicode-Inf}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-inf-ly1
+}{}
+
+\DeclareFontShape{LY1}{Junicode-Inf}{lightsemicondensed}{it}{
+ <-> alias * Junicode-Inf/lsc/it
+}{}
+
\DeclareFontShape{LY1}{Junicode-Inf}{lsc}{sl}{
<-> ssub * Junicode-Inf/lsc/it
}{}
@@ -377,99 +365,111 @@
}{}
-% ---- medium ----
+% ---- b = bold ----
-\DeclareFontShape{LY1}{Junicode-Inf}{medium}{n}{
- <-> \Junicode@@scale Junicode-Medium-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{bold}{n}{
+ <-> alias * Junicode-Inf/b/n
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{medium}{sl}{
- <-> ssub * Junicode-Inf/medium/it
+\DeclareFontShape{LY1}{Junicode-Inf}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-inf-ly1
}{}
+\DeclareFontShape{LY1}{Junicode-Inf}{bold}{it}{
+ <-> alias * Junicode-Inf/b/it
+}{}
-% ---- m = regular ----
+\DeclareFontShape{LY1}{Junicode-Inf}{b}{sl}{
+ <-> ssub * Junicode-Inf/b/it
+}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{bold}{sl}{
+ <-> ssub * Junicode-Inf/bold/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{regular}{n}{
- <-> alias * Junicode-Inf/m/n
+
+% ---- x = expanded ----
+
+\DeclareFontShape{LY1}{Junicode-Inf}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{expanded}{it}{
+ <-> alias * Junicode-Inf/x/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{regular}{it}{
- <-> alias * Junicode-Inf/m/it
+\DeclareFontShape{LY1}{Junicode-Inf}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{m}{sl}{
- <-> ssub * Junicode-Inf/m/it
+\DeclareFontShape{LY1}{Junicode-Inf}{expanded}{n}{
+ <-> alias * Junicode-Inf/x/n
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{regular}{sl}{
- <-> ssub * Junicode-Inf/regular/it
+\DeclareFontShape{LY1}{Junicode-Inf}{x}{sl}{
+ <-> ssub * Junicode-Inf/x/it
}{}
+\DeclareFontShape{LY1}{Junicode-Inf}{expanded}{sl}{
+ <-> ssub * Junicode-Inf/expanded/it
+}{}
-% ---- bx = boldexpanded ----
-\DeclareFontShape{LY1}{Junicode-Inf}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-inf-ly1
+% ---- sbx = semiboldexpanded ----
+
+\DeclareFontShape{LY1}{Junicode-Inf}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{boldexpanded}{it}{
- <-> alias * Junicode-Inf/bx/it
+\DeclareFontShape{LY1}{Junicode-Inf}{semiboldexpanded}{it}{
+ <-> alias * Junicode-Inf/sbx/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{boldexpanded}{n}{
- <-> alias * Junicode-Inf/bx/n
+\DeclareFontShape{LY1}{Junicode-Inf}{semiboldexpanded}{n}{
+ <-> alias * Junicode-Inf/sbx/n
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{bx}{sl}{
- <-> ssub * Junicode-Inf/bx/it
+\DeclareFontShape{LY1}{Junicode-Inf}{sbx}{sl}{
+ <-> ssub * Junicode-Inf/sbx/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{boldexpanded}{sl}{
- <-> ssub * Junicode-Inf/boldexpanded/it
+\DeclareFontShape{LY1}{Junicode-Inf}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-Inf/semiboldexpanded/it
}{}
-% ---- l = light ----
+% ---- c = condensed ----
-\DeclareFontShape{LY1}{Junicode-Inf}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{light}{n}{
- <-> alias * Junicode-Inf/l/n
+\DeclareFontShape{LY1}{Junicode-Inf}{condensed}{n}{
+ <-> alias * Junicode-Inf/c/n
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-inf-ly1
+\DeclareFontShape{LY1}{Junicode-Inf}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-inf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{light}{it}{
- <-> alias * Junicode-Inf/l/it
+\DeclareFontShape{LY1}{Junicode-Inf}{condensed}{it}{
+ <-> alias * Junicode-Inf/c/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{l}{sl}{
- <-> ssub * Junicode-Inf/l/it
+\DeclareFontShape{LY1}{Junicode-Inf}{c}{sl}{
+ <-> ssub * Junicode-Inf/c/it
}{}
-\DeclareFontShape{LY1}{Junicode-Inf}{light}{sl}{
- <-> ssub * Junicode-Inf/light/it
+\DeclareFontShape{LY1}{Junicode-Inf}{condensed}{sl}{
+ <-> ssub * Junicode-Inf/condensed/it
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/LY1Junicode-LF.fd b/Master/texmf-dist/tex/latex/junicode/LY1Junicode-LF.fd
index 86852180b23..a225169dea5 100644
--- a/Master/texmf-dist/tex/latex/junicode/LY1Junicode-LF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/LY1Junicode-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{LY1Junicode-LF.fd}
- [2024/06/03 (autoinst) Font definitions for LY1/Junicode-LF.]
+ [2024/07/21 (autoinst) Font definitions for LY1/Junicode-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,312 +20,285 @@
\DeclareFontFamily{LY1}{Junicode-LF}{}
-% ---- mediumexpanded ----
+% ---- c = condensed ----
-\DeclareFontShape{LY1}{Junicode-LF}{mediumexpanded}{scit}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{c}{sc}{
+ <-> \Junicode@@scale Junicode-Cond-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{condensed}{sc}{
+ <-> alias * Junicode-LF/c/sc
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumexpanded}{sc}{
- <-> \Junicode@@scale Junicode-ExpMedium-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{c}{scit}{
+ <-> \Junicode@@scale Junicode-CondItalic-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{condensed}{scit}{
+ <-> alias * Junicode-LF/c/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumexpanded}{scsl}{
- <-> ssub * Junicode-LF/mediumexpanded/scit
+\DeclareFontShape{LY1}{Junicode-LF}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-LF/mediumexpanded/it
+\DeclareFontShape{LY1}{Junicode-LF}{condensed}{n}{
+ <-> alias * Junicode-LF/c/n
}{}
-
-% ---- sbsx = semiboldsemiexpanded ----
-
-\DeclareFontShape{LY1}{Junicode-LF}{sbsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semiboldsemiexpanded}{scit}{
- <-> alias * Junicode-LF/sbsx/scit
+\DeclareFontShape{LY1}{Junicode-LF}{condensed}{it}{
+ <-> alias * Junicode-LF/c/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{c}{sl}{
+ <-> ssub * Junicode-LF/c/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-LF/sbsx/it
+\DeclareFontShape{LY1}{Junicode-LF}{condensed}{sl}{
+ <-> ssub * Junicode-LF/condensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{sbsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{c}{scsl}{
+ <-> ssub * Junicode-LF/c/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semiboldsemiexpanded}{sc}{
- <-> alias * Junicode-LF/sbsx/sc
+\DeclareFontShape{LY1}{Junicode-LF}{condensed}{scsl}{
+ <-> ssub * Junicode-LF/condensed/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-lf-ly1
-}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-LF/sbsx/n
-}{}
+% ---- sbx = semiboldexpanded ----
-\DeclareFontShape{LY1}{Junicode-LF}{sbsx}{scsl}{
- <-> ssub * Junicode-LF/sbsx/scit
+\DeclareFontShape{LY1}{Junicode-LF}{sbx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semiboldsemiexpanded}{scsl}{
- <-> ssub * Junicode-LF/semiboldsemiexpanded/scit
+\DeclareFontShape{LY1}{Junicode-LF}{semiboldexpanded}{sc}{
+ <-> alias * Junicode-LF/sbx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{sbsx}{sl}{
- <-> ssub * Junicode-LF/sbsx/it
+\DeclareFontShape{LY1}{Junicode-LF}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-LF/semiboldsemiexpanded/it
+\DeclareFontShape{LY1}{Junicode-LF}{semiboldexpanded}{n}{
+ <-> alias * Junicode-LF/sbx/n
}{}
+\DeclareFontShape{LY1}{Junicode-LF}{sbx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-lf-sc-ly1
+}{}
-% ---- mediumsemiexpanded ----
+\DeclareFontShape{LY1}{Junicode-LF}{semiboldexpanded}{scit}{
+ <-> alias * Junicode-LF/sbx/scit
+}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumsemiexpanded}{sc}{
- <-> \Junicode@@scale Junicode-SmExpMedium-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{semiboldexpanded}{it}{
+ <-> alias * Junicode-LF/sbx/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumsemiexpanded}{scit}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{sbx}{sl}{
+ <-> ssub * Junicode-LF/sbx/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-LF/semiboldexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumsemiexpanded}{scsl}{
- <-> ssub * Junicode-LF/mediumsemiexpanded/scit
+\DeclareFontShape{LY1}{Junicode-LF}{sbx}{scsl}{
+ <-> ssub * Junicode-LF/sbx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-LF/mediumsemiexpanded/it
+\DeclareFontShape{LY1}{Junicode-LF}{semiboldexpanded}{scsl}{
+ <-> ssub * Junicode-LF/semiboldexpanded/scit
}{}
-% ---- x = expanded ----
+% ---- b = bold ----
-\DeclareFontShape{LY1}{Junicode-LF}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{expanded}{it}{
- <-> alias * Junicode-LF/x/it
+\DeclareFontShape{LY1}{Junicode-LF}{bold}{it}{
+ <-> alias * Junicode-LF/b/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{x}{scit}{
- <-> \Junicode@@scale Junicode-ExpItalic-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{b}{scit}{
+ <-> \Junicode@@scale Junicode-BoldItalic-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{expanded}{scit}{
- <-> alias * Junicode-LF/x/scit
+\DeclareFontShape{LY1}{Junicode-LF}{bold}{scit}{
+ <-> alias * Junicode-LF/b/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{expanded}{n}{
- <-> alias * Junicode-LF/x/n
+\DeclareFontShape{LY1}{Junicode-LF}{bold}{n}{
+ <-> alias * Junicode-LF/b/n
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{x}{sc}{
- <-> \Junicode@@scale Junicode-Exp-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{b}{sc}{
+ <-> \Junicode@@scale Junicode-Bold-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{expanded}{sc}{
- <-> alias * Junicode-LF/x/sc
+\DeclareFontShape{LY1}{Junicode-LF}{bold}{sc}{
+ <-> alias * Junicode-LF/b/sc
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{x}{scsl}{
- <-> ssub * Junicode-LF/x/scit
+\DeclareFontShape{LY1}{Junicode-LF}{b}{sl}{
+ <-> ssub * Junicode-LF/b/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{expanded}{scsl}{
- <-> ssub * Junicode-LF/expanded/scit
+\DeclareFontShape{LY1}{Junicode-LF}{bold}{sl}{
+ <-> ssub * Junicode-LF/bold/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{x}{sl}{
- <-> ssub * Junicode-LF/x/it
+\DeclareFontShape{LY1}{Junicode-LF}{b}{scsl}{
+ <-> ssub * Junicode-LF/b/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{expanded}{sl}{
- <-> ssub * Junicode-LF/expanded/it
+\DeclareFontShape{LY1}{Junicode-LF}{bold}{scsl}{
+ <-> ssub * Junicode-LF/bold/scit
}{}
-% ---- c = condensed ----
-
-\DeclareFontShape{LY1}{Junicode-LF}{c}{scit}{
- <-> \Junicode@@scale Junicode-CondItalic-lf-sc-ly1
-}{}
-
-\DeclareFontShape{LY1}{Junicode-LF}{condensed}{scit}{
- <-> alias * Junicode-LF/c/scit
-}{}
+% ---- x = expanded ----
-\DeclareFontShape{LY1}{Junicode-LF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{x}{sc}{
+ <-> \Junicode@@scale Junicode-Exp-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{condensed}{it}{
- <-> alias * Junicode-LF/c/it
+\DeclareFontShape{LY1}{Junicode-LF}{expanded}{sc}{
+ <-> alias * Junicode-LF/x/sc
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{c}{sc}{
- <-> \Junicode@@scale Junicode-Cond-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{x}{scit}{
+ <-> \Junicode@@scale Junicode-ExpItalic-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{condensed}{sc}{
- <-> alias * Junicode-LF/c/sc
+\DeclareFontShape{LY1}{Junicode-LF}{expanded}{scit}{
+ <-> alias * Junicode-LF/x/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{condensed}{n}{
- <-> alias * Junicode-LF/c/n
+\DeclareFontShape{LY1}{Junicode-LF}{expanded}{n}{
+ <-> alias * Junicode-LF/x/n
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{c}{scsl}{
- <-> ssub * Junicode-LF/c/scit
+\DeclareFontShape{LY1}{Junicode-LF}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{condensed}{scsl}{
- <-> ssub * Junicode-LF/condensed/scit
+\DeclareFontShape{LY1}{Junicode-LF}{expanded}{it}{
+ <-> alias * Junicode-LF/x/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{c}{sl}{
- <-> ssub * Junicode-LF/c/it
+\DeclareFontShape{LY1}{Junicode-LF}{x}{sl}{
+ <-> ssub * Junicode-LF/x/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{condensed}{sl}{
- <-> ssub * Junicode-LF/condensed/it
+\DeclareFontShape{LY1}{Junicode-LF}{expanded}{sl}{
+ <-> ssub * Junicode-LF/expanded/it
}{}
-
-% ---- sx = semiexpanded ----
-
-\DeclareFontShape{LY1}{Junicode-LF}{sx}{sc}{
- <-> \Junicode@@scale Junicode-SmExp-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{x}{scsl}{
+ <-> ssub * Junicode-LF/x/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semiexpanded}{sc}{
- <-> alias * Junicode-LF/sx/sc
+\DeclareFontShape{LY1}{Junicode-LF}{expanded}{scsl}{
+ <-> ssub * Junicode-LF/expanded/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-lf-ly1
-}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semiexpanded}{n}{
- <-> alias * Junicode-LF/sx/n
-}{}
+% ---- lsc = lightsemicondensed ----
-\DeclareFontShape{LY1}{Junicode-LF}{sx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpItalic-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{lsc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondLight-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semiexpanded}{scit}{
- <-> alias * Junicode-LF/sx/scit
+\DeclareFontShape{LY1}{Junicode-LF}{lightsemicondensed}{sc}{
+ <-> alias * Junicode-LF/lsc/sc
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semiexpanded}{it}{
- <-> alias * Junicode-LF/sx/it
+\DeclareFontShape{LY1}{Junicode-LF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-LF/lsc/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{sx}{scsl}{
- <-> ssub * Junicode-LF/sx/scit
+\DeclareFontShape{LY1}{Junicode-LF}{lsc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semiexpanded}{scsl}{
- <-> ssub * Junicode-LF/semiexpanded/scit
+\DeclareFontShape{LY1}{Junicode-LF}{lightsemicondensed}{scit}{
+ <-> alias * Junicode-LF/lsc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{sx}{sl}{
- <-> ssub * Junicode-LF/sx/it
+\DeclareFontShape{LY1}{Junicode-LF}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semiexpanded}{sl}{
- <-> ssub * Junicode-LF/semiexpanded/it
+\DeclareFontShape{LY1}{Junicode-LF}{lightsemicondensed}{n}{
+ <-> alias * Junicode-LF/lsc/n
}{}
-
-% ---- m = regular ----
-
-\DeclareFontShape{LY1}{Junicode-LF}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{lsc}{sl}{
+ <-> ssub * Junicode-LF/lsc/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{regular}{n}{
- <-> alias * Junicode-LF/m/n
+\DeclareFontShape{LY1}{Junicode-LF}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-LF/lightsemicondensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{m}{sc}{
- <-> \Junicode@@scale Junicode-Regular-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{lsc}{scsl}{
+ <-> ssub * Junicode-LF/lsc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{regular}{sc}{
- <-> alias * Junicode-LF/m/sc
+\DeclareFontShape{LY1}{Junicode-LF}{lightsemicondensed}{scsl}{
+ <-> ssub * Junicode-LF/lightsemicondensed/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-lf-ly1
-}{}
-\DeclareFontShape{LY1}{Junicode-LF}{regular}{it}{
- <-> alias * Junicode-LF/m/it
-}{}
+% ---- mediumexpanded ----
-\DeclareFontShape{LY1}{Junicode-LF}{m}{scit}{
- <-> \Junicode@@scale Junicode-Italic-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{regular}{scit}{
- <-> alias * Junicode-LF/m/scit
+\DeclareFontShape{LY1}{Junicode-LF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{m}{scsl}{
- <-> ssub * Junicode-LF/m/scit
+\DeclareFontShape{LY1}{Junicode-LF}{mediumexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{regular}{scsl}{
- <-> ssub * Junicode-LF/regular/scit
+\DeclareFontShape{LY1}{Junicode-LF}{mediumexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-ExpMedium-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{m}{sl}{
- <-> ssub * Junicode-LF/m/it
+\DeclareFontShape{LY1}{Junicode-LF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-LF/mediumexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{regular}{sl}{
- <-> ssub * Junicode-LF/regular/it
+\DeclareFontShape{LY1}{Junicode-LF}{mediumexpanded}{scsl}{
+ <-> ssub * Junicode-LF/mediumexpanded/scit
}{}
@@ -347,358 +320,404 @@
<-> \Junicode@@scale Junicode-Medium-lf-sc-ly1
}{}
+\DeclareFontShape{LY1}{Junicode-LF}{medium}{sl}{
+ <-> ssub * Junicode-LF/medium/it
+}{}
+
\DeclareFontShape{LY1}{Junicode-LF}{medium}{scsl}{
<-> ssub * Junicode-LF/medium/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{medium}{sl}{
- <-> ssub * Junicode-LF/medium/it
+
+% ---- bx = boldexpanded ----
+
+\DeclareFontShape{LY1}{Junicode-LF}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-lf-ly1
}{}
+\DeclareFontShape{LY1}{Junicode-LF}{boldexpanded}{it}{
+ <-> alias * Junicode-LF/bx/it
+}{}
-% ---- lsc = lightsemicondensed ----
+\DeclareFontShape{LY1}{Junicode-LF}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-lf-ly1
+}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{boldexpanded}{n}{
+ <-> alias * Junicode-LF/bx/n
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lightsemicondensed}{n}{
- <-> alias * Junicode-LF/lsc/n
+\DeclareFontShape{LY1}{Junicode-LF}{bx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lsc}{sc}{
- <-> \Junicode@@scale Junicode-SmCondLight-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{boldexpanded}{scit}{
+ <-> alias * Junicode-LF/bx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lightsemicondensed}{sc}{
- <-> alias * Junicode-LF/lsc/sc
+\DeclareFontShape{LY1}{Junicode-LF}{bx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpBold-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{boldexpanded}{sc}{
+ <-> alias * Junicode-LF/bx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lightsemicondensed}{it}{
- <-> alias * Junicode-LF/lsc/it
+\DeclareFontShape{LY1}{Junicode-LF}{bx}{sl}{
+ <-> ssub * Junicode-LF/bx/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lsc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{boldexpanded}{sl}{
+ <-> ssub * Junicode-LF/boldexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lightsemicondensed}{scit}{
- <-> alias * Junicode-LF/lsc/scit
+\DeclareFontShape{LY1}{Junicode-LF}{bx}{scsl}{
+ <-> ssub * Junicode-LF/bx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lsc}{scsl}{
- <-> ssub * Junicode-LF/lsc/scit
+\DeclareFontShape{LY1}{Junicode-LF}{boldexpanded}{scsl}{
+ <-> ssub * Junicode-LF/boldexpanded/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lightsemicondensed}{scsl}{
- <-> ssub * Junicode-LF/lightsemicondensed/scit
+
+% ---- mediumsemiexpanded ----
+
+\DeclareFontShape{LY1}{Junicode-LF}{mediumsemiexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lsc}{sl}{
- <-> ssub * Junicode-LF/lsc/it
+\DeclareFontShape{LY1}{Junicode-LF}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-LF/lightsemicondensed/it
+\DeclareFontShape{LY1}{Junicode-LF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-lf-ly1
}{}
+\DeclareFontShape{LY1}{Junicode-LF}{mediumsemiexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-lf-sc-ly1
+}{}
-% ---- l = light ----
+\DeclareFontShape{LY1}{Junicode-LF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-LF/mediumsemiexpanded/it
+}{}
-\DeclareFontShape{LY1}{Junicode-LF}{l}{sc}{
- <-> \Junicode@@scale Junicode-Light-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{mediumsemiexpanded}{scsl}{
+ <-> ssub * Junicode-LF/mediumsemiexpanded/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{light}{sc}{
- <-> alias * Junicode-LF/l/sc
+
+% ---- m = regular ----
+
+\DeclareFontShape{LY1}{Junicode-LF}{m}{sc}{
+ <-> \Junicode@@scale Junicode-Regular-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{regular}{sc}{
+ <-> alias * Junicode-LF/m/sc
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{light}{n}{
- <-> alias * Junicode-LF/l/n
+\DeclareFontShape{LY1}{Junicode-LF}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{l}{scit}{
- <-> \Junicode@@scale Junicode-LightItalic-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{regular}{it}{
+ <-> alias * Junicode-LF/m/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{light}{scit}{
- <-> alias * Junicode-LF/l/scit
+\DeclareFontShape{LY1}{Junicode-LF}{m}{scit}{
+ <-> \Junicode@@scale Junicode-Italic-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{regular}{scit}{
+ <-> alias * Junicode-LF/m/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{light}{it}{
- <-> alias * Junicode-LF/l/it
+\DeclareFontShape{LY1}{Junicode-LF}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{l}{scsl}{
- <-> ssub * Junicode-LF/l/scit
+\DeclareFontShape{LY1}{Junicode-LF}{regular}{n}{
+ <-> alias * Junicode-LF/m/n
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{light}{scsl}{
- <-> ssub * Junicode-LF/light/scit
+\DeclareFontShape{LY1}{Junicode-LF}{m}{sl}{
+ <-> ssub * Junicode-LF/m/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{l}{sl}{
- <-> ssub * Junicode-LF/l/it
+\DeclareFontShape{LY1}{Junicode-LF}{regular}{sl}{
+ <-> ssub * Junicode-LF/regular/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{light}{sl}{
- <-> ssub * Junicode-LF/light/it
+\DeclareFontShape{LY1}{Junicode-LF}{m}{scsl}{
+ <-> ssub * Junicode-LF/m/scit
}{}
+\DeclareFontShape{LY1}{Junicode-LF}{regular}{scsl}{
+ <-> ssub * Junicode-LF/regular/scit
+}{}
-% ---- bx = boldexpanded ----
-\DeclareFontShape{LY1}{Junicode-LF}{bx}{scit}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-lf-sc-ly1
+% ---- lc = lightcondensed ----
+
+\DeclareFontShape{LY1}{Junicode-LF}{lc}{sc}{
+ <-> \Junicode@@scale Junicode-CondLight-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{boldexpanded}{scit}{
- <-> alias * Junicode-LF/bx/scit
+\DeclareFontShape{LY1}{Junicode-LF}{lightcondensed}{sc}{
+ <-> alias * Junicode-LF/lc/sc
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{boldexpanded}{it}{
- <-> alias * Junicode-LF/bx/it
+\DeclareFontShape{LY1}{Junicode-LF}{lightcondensed}{it}{
+ <-> alias * Junicode-LF/lc/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{bx}{sc}{
- <-> \Junicode@@scale Junicode-ExpBold-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{boldexpanded}{sc}{
- <-> alias * Junicode-LF/bx/sc
+\DeclareFontShape{LY1}{Junicode-LF}{lightcondensed}{n}{
+ <-> alias * Junicode-LF/lc/n
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{lc}{scit}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{boldexpanded}{n}{
- <-> alias * Junicode-LF/bx/n
+\DeclareFontShape{LY1}{Junicode-LF}{lightcondensed}{scit}{
+ <-> alias * Junicode-LF/lc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{bx}{scsl}{
- <-> ssub * Junicode-LF/bx/scit
+\DeclareFontShape{LY1}{Junicode-LF}{lc}{sl}{
+ <-> ssub * Junicode-LF/lc/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{boldexpanded}{scsl}{
- <-> ssub * Junicode-LF/boldexpanded/scit
+\DeclareFontShape{LY1}{Junicode-LF}{lightcondensed}{sl}{
+ <-> ssub * Junicode-LF/lightcondensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{bx}{sl}{
- <-> ssub * Junicode-LF/bx/it
+\DeclareFontShape{LY1}{Junicode-LF}{lc}{scsl}{
+ <-> ssub * Junicode-LF/lc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{boldexpanded}{sl}{
- <-> ssub * Junicode-LF/boldexpanded/it
+\DeclareFontShape{LY1}{Junicode-LF}{lightcondensed}{scsl}{
+ <-> ssub * Junicode-LF/lightcondensed/scit
}{}
-% ---- mediumcondensed ----
+% ---- mediumsemicondensed ----
-\DeclareFontShape{LY1}{Junicode-LF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumcondensed}{sc}{
- <-> \Junicode@@scale Junicode-CondMedium-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{mediumsemicondensed}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumcondensed}{scit}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{mediumsemicondensed}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumcondensed}{scsl}{
- <-> ssub * Junicode-LF/mediumcondensed/scit
+\DeclareFontShape{LY1}{Junicode-LF}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-LF/mediumsemicondensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumcondensed}{sl}{
- <-> ssub * Junicode-LF/mediumcondensed/it
+\DeclareFontShape{LY1}{Junicode-LF}{mediumsemicondensed}{scsl}{
+ <-> ssub * Junicode-LF/mediumsemicondensed/scit
}{}
-% ---- b = bold ----
+% ---- l = light ----
-\DeclareFontShape{LY1}{Junicode-LF}{b}{sc}{
- <-> \Junicode@@scale Junicode-Bold-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{l}{sc}{
+ <-> \Junicode@@scale Junicode-Light-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{bold}{sc}{
- <-> alias * Junicode-LF/b/sc
+\DeclareFontShape{LY1}{Junicode-LF}{light}{sc}{
+ <-> alias * Junicode-LF/l/sc
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{bold}{n}{
- <-> alias * Junicode-LF/b/n
+\DeclareFontShape{LY1}{Junicode-LF}{light}{it}{
+ <-> alias * Junicode-LF/l/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{b}{scit}{
- <-> \Junicode@@scale Junicode-BoldItalic-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{bold}{scit}{
- <-> alias * Junicode-LF/b/scit
+\DeclareFontShape{LY1}{Junicode-LF}{light}{n}{
+ <-> alias * Junicode-LF/l/n
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{l}{scit}{
+ <-> \Junicode@@scale Junicode-LightItalic-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{bold}{it}{
- <-> alias * Junicode-LF/b/it
+\DeclareFontShape{LY1}{Junicode-LF}{light}{scit}{
+ <-> alias * Junicode-LF/l/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{b}{scsl}{
- <-> ssub * Junicode-LF/b/scit
+\DeclareFontShape{LY1}{Junicode-LF}{l}{sl}{
+ <-> ssub * Junicode-LF/l/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{bold}{scsl}{
- <-> ssub * Junicode-LF/bold/scit
+\DeclareFontShape{LY1}{Junicode-LF}{light}{sl}{
+ <-> ssub * Junicode-LF/light/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{b}{sl}{
- <-> ssub * Junicode-LF/b/it
+\DeclareFontShape{LY1}{Junicode-LF}{l}{scsl}{
+ <-> ssub * Junicode-LF/l/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{bold}{sl}{
- <-> ssub * Junicode-LF/bold/it
+\DeclareFontShape{LY1}{Junicode-LF}{light}{scsl}{
+ <-> ssub * Junicode-LF/light/scit
}{}
-% ---- bsx = boldsemiexpanded ----
+% ---- sx = semiexpanded ----
-\DeclareFontShape{LY1}{Junicode-LF}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{sx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExp-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{boldsemiexpanded}{it}{
- <-> alias * Junicode-LF/bsx/it
+\DeclareFontShape{LY1}{Junicode-LF}{semiexpanded}{sc}{
+ <-> alias * Junicode-LF/sx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{bsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{sx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{boldsemiexpanded}{scit}{
- <-> alias * Junicode-LF/bsx/scit
+\DeclareFontShape{LY1}{Junicode-LF}{semiexpanded}{scit}{
+ <-> alias * Junicode-LF/sx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{boldsemiexpanded}{n}{
- <-> alias * Junicode-LF/bsx/n
+\DeclareFontShape{LY1}{Junicode-LF}{semiexpanded}{n}{
+ <-> alias * Junicode-LF/sx/n
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{bsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpBold-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{boldsemiexpanded}{sc}{
- <-> alias * Junicode-LF/bsx/sc
+\DeclareFontShape{LY1}{Junicode-LF}{semiexpanded}{it}{
+ <-> alias * Junicode-LF/sx/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{bsx}{scsl}{
- <-> ssub * Junicode-LF/bsx/scit
+\DeclareFontShape{LY1}{Junicode-LF}{sx}{sl}{
+ <-> ssub * Junicode-LF/sx/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{boldsemiexpanded}{scsl}{
- <-> ssub * Junicode-LF/boldsemiexpanded/scit
+\DeclareFontShape{LY1}{Junicode-LF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-LF/semiexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{bsx}{sl}{
- <-> ssub * Junicode-LF/bsx/it
+\DeclareFontShape{LY1}{Junicode-LF}{sx}{scsl}{
+ <-> ssub * Junicode-LF/sx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-LF/boldsemiexpanded/it
+\DeclareFontShape{LY1}{Junicode-LF}{semiexpanded}{scsl}{
+ <-> ssub * Junicode-LF/semiexpanded/scit
}{}
-% ---- lc = lightcondensed ----
+% ---- mediumcondensed ----
-\DeclareFontShape{LY1}{Junicode-LF}{lc}{scit}{
- <-> \Junicode@@scale Junicode-CondLightItalic-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{mediumcondensed}{sc}{
+ <-> \Junicode@@scale Junicode-CondMedium-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lightcondensed}{scit}{
- <-> alias * Junicode-LF/lc/scit
+\DeclareFontShape{LY1}{Junicode-LF}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{mediumcondensed}{scit}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lightcondensed}{it}{
- <-> alias * Junicode-LF/lc/it
+\DeclareFontShape{LY1}{Junicode-LF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lc}{sc}{
- <-> \Junicode@@scale Junicode-CondLight-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-LF/mediumcondensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lightcondensed}{sc}{
- <-> alias * Junicode-LF/lc/sc
+\DeclareFontShape{LY1}{Junicode-LF}{mediumcondensed}{scsl}{
+ <-> ssub * Junicode-LF/mediumcondensed/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-lf-ly1
+
+% ---- sb = semibold ----
+
+\DeclareFontShape{LY1}{Junicode-LF}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lightcondensed}{n}{
- <-> alias * Junicode-LF/lc/n
+\DeclareFontShape{LY1}{Junicode-LF}{semibold}{it}{
+ <-> alias * Junicode-LF/sb/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lc}{scsl}{
- <-> ssub * Junicode-LF/lc/scit
+\DeclareFontShape{LY1}{Junicode-LF}{sb}{scit}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lightcondensed}{scsl}{
- <-> ssub * Junicode-LF/lightcondensed/scit
+\DeclareFontShape{LY1}{Junicode-LF}{semibold}{scit}{
+ <-> alias * Junicode-LF/sb/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lc}{sl}{
- <-> ssub * Junicode-LF/lc/it
+\DeclareFontShape{LY1}{Junicode-LF}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{lightcondensed}{sl}{
- <-> ssub * Junicode-LF/lightcondensed/it
+\DeclareFontShape{LY1}{Junicode-LF}{semibold}{n}{
+ <-> alias * Junicode-LF/sb/n
}{}
+\DeclareFontShape{LY1}{Junicode-LF}{sb}{sc}{
+ <-> \Junicode@@scale Junicode-SmBold-lf-sc-ly1
+}{}
-% ---- sc = semicondensed ----
+\DeclareFontShape{LY1}{Junicode-LF}{semibold}{sc}{
+ <-> alias * Junicode-LF/sb/sc
+}{}
-\DeclareFontShape{LY1}{Junicode-LF}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{sb}{sl}{
+ <-> ssub * Junicode-LF/sb/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semicondensed}{n}{
- <-> alias * Junicode-LF/sc/n
+\DeclareFontShape{LY1}{Junicode-LF}{semibold}{sl}{
+ <-> ssub * Junicode-LF/semibold/it
+}{}
+
+\DeclareFontShape{LY1}{Junicode-LF}{sb}{scsl}{
+ <-> ssub * Junicode-LF/sb/scit
}{}
+\DeclareFontShape{LY1}{Junicode-LF}{semibold}{scsl}{
+ <-> ssub * Junicode-LF/semibold/scit
+}{}
+
+
+% ---- sc = semicondensed ----
+
\DeclareFontShape{LY1}{Junicode-LF}{sc}{sc}{
<-> \Junicode@@scale Junicode-SmCond-lf-sc-ly1
}{}
@@ -723,12 +742,12 @@
<-> alias * Junicode-LF/sc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{sc}{scsl}{
- <-> ssub * Junicode-LF/sc/scit
+\DeclareFontShape{LY1}{Junicode-LF}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semicondensed}{scsl}{
- <-> ssub * Junicode-LF/semicondensed/scit
+\DeclareFontShape{LY1}{Junicode-LF}{semicondensed}{n}{
+ <-> alias * Junicode-LF/sc/n
}{}
\DeclareFontShape{LY1}{Junicode-LF}{sc}{sl}{
@@ -739,133 +758,114 @@
<-> ssub * Junicode-LF/semicondensed/it
}{}
-
-% ---- sb = semibold ----
-
-\DeclareFontShape{LY1}{Junicode-LF}{sb}{sc}{
- <-> \Junicode@@scale Junicode-SmBold-lf-sc-ly1
-}{}
-
-\DeclareFontShape{LY1}{Junicode-LF}{semibold}{sc}{
- <-> alias * Junicode-LF/sb/sc
-}{}
-
-\DeclareFontShape{LY1}{Junicode-LF}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{sc}{scsl}{
+ <-> ssub * Junicode-LF/sc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semibold}{n}{
- <-> alias * Junicode-LF/sb/n
+\DeclareFontShape{LY1}{Junicode-LF}{semicondensed}{scsl}{
+ <-> ssub * Junicode-LF/semicondensed/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{sb}{scit}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-lf-sc-ly1
-}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semibold}{scit}{
- <-> alias * Junicode-LF/sb/scit
-}{}
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{LY1}{Junicode-LF}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{bsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpBold-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semibold}{it}{
- <-> alias * Junicode-LF/sb/it
+\DeclareFontShape{LY1}{Junicode-LF}{boldsemiexpanded}{sc}{
+ <-> alias * Junicode-LF/bsx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{sb}{scsl}{
- <-> ssub * Junicode-LF/sb/scit
+\DeclareFontShape{LY1}{Junicode-LF}{bsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semibold}{scsl}{
- <-> ssub * Junicode-LF/semibold/scit
+\DeclareFontShape{LY1}{Junicode-LF}{boldsemiexpanded}{scit}{
+ <-> alias * Junicode-LF/bsx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{sb}{sl}{
- <-> ssub * Junicode-LF/sb/it
+\DeclareFontShape{LY1}{Junicode-LF}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semibold}{sl}{
- <-> ssub * Junicode-LF/semibold/it
+\DeclareFontShape{LY1}{Junicode-LF}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-LF/bsx/n
}{}
-
-% ---- mediumsemicondensed ----
-
-\DeclareFontShape{LY1}{Junicode-LF}{mediumsemicondensed}{scit}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-LF/bsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumsemicondensed}{sc}{
- <-> \Junicode@@scale Junicode-SmCondMedium-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{bsx}{sl}{
+ <-> ssub * Junicode-LF/bsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-LF/boldsemiexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumsemicondensed}{scsl}{
- <-> ssub * Junicode-LF/mediumsemicondensed/scit
+\DeclareFontShape{LY1}{Junicode-LF}{bsx}{scsl}{
+ <-> ssub * Junicode-LF/bsx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-LF/mediumsemicondensed/it
+\DeclareFontShape{LY1}{Junicode-LF}{boldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-LF/boldsemiexpanded/scit
}{}
-% ---- sbx = semiboldexpanded ----
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{LY1}{Junicode-LF}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{sbsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semiboldexpanded}{n}{
- <-> alias * Junicode-LF/sbx/n
+\DeclareFontShape{LY1}{Junicode-LF}{semiboldsemiexpanded}{sc}{
+ <-> alias * Junicode-LF/sbsx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{sbx}{sc}{
- <-> \Junicode@@scale Junicode-ExpSmBold-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semiboldexpanded}{sc}{
- <-> alias * Junicode-LF/sbx/sc
+\DeclareFontShape{LY1}{Junicode-LF}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-LF/sbsx/n
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-lf-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{sbsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semiboldexpanded}{it}{
- <-> alias * Junicode-LF/sbx/it
+\DeclareFontShape{LY1}{Junicode-LF}{semiboldsemiexpanded}{scit}{
+ <-> alias * Junicode-LF/sbsx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{sbx}{scit}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-lf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-LF}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-lf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semiboldexpanded}{scit}{
- <-> alias * Junicode-LF/sbx/scit
+\DeclareFontShape{LY1}{Junicode-LF}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-LF/sbsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{sbx}{scsl}{
- <-> ssub * Junicode-LF/sbx/scit
+\DeclareFontShape{LY1}{Junicode-LF}{sbsx}{sl}{
+ <-> ssub * Junicode-LF/sbsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semiboldexpanded}{scsl}{
- <-> ssub * Junicode-LF/semiboldexpanded/scit
+\DeclareFontShape{LY1}{Junicode-LF}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-LF/semiboldsemiexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{sbx}{sl}{
- <-> ssub * Junicode-LF/sbx/it
+\DeclareFontShape{LY1}{Junicode-LF}{sbsx}{scsl}{
+ <-> ssub * Junicode-LF/sbsx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-LF}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-LF/semiboldexpanded/it
+\DeclareFontShape{LY1}{Junicode-LF}{semiboldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-LF/semiboldsemiexpanded/scit
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/LY1Junicode-OsF.fd b/Master/texmf-dist/tex/latex/junicode/LY1Junicode-OsF.fd
index fd942d07b1b..eb4595a4bf5 100644
--- a/Master/texmf-dist/tex/latex/junicode/LY1Junicode-OsF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/LY1Junicode-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{LY1Junicode-OsF.fd}
- [2024/06/03 (autoinst) Font definitions for LY1/Junicode-OsF.]
+ [2024/07/21 (autoinst) Font definitions for LY1/Junicode-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,852 +20,852 @@
\DeclareFontFamily{LY1}{Junicode-OsF}{}
-% ---- medium ----
+% ---- mediumcondensed ----
-\DeclareFontShape{LY1}{Junicode-OsF}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumcondensed}{sc}{
+ <-> \Junicode@@scale Junicode-CondMedium-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{medium}{scit}{
- <-> \Junicode@@scale Junicode-MediumItalic-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{medium}{n}{
- <-> \Junicode@@scale Junicode-Medium-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{medium}{sc}{
- <-> \Junicode@@scale Junicode-Medium-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumcondensed}{scit}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{medium}{scsl}{
- <-> ssub * Junicode-OsF/medium/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-OsF/mediumcondensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{medium}{sl}{
- <-> ssub * Junicode-OsF/medium/it
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumcondensed}{scsl}{
+ <-> ssub * Junicode-OsF/mediumcondensed/scit
}{}
-% ---- lsc = lightsemicondensed ----
+% ---- sb = semibold ----
-\DeclareFontShape{LY1}{Junicode-OsF}{lsc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sb}{scit}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lightsemicondensed}{scit}{
- <-> alias * Junicode-OsF/lsc/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{semibold}{scit}{
+ <-> alias * Junicode-OsF/sb/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lightsemicondensed}{it}{
- <-> alias * Junicode-OsF/lsc/it
+\DeclareFontShape{LY1}{Junicode-OsF}{semibold}{n}{
+ <-> alias * Junicode-OsF/sb/n
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lsc}{sc}{
- <-> \Junicode@@scale Junicode-SmCondLight-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lightsemicondensed}{sc}{
- <-> alias * Junicode-OsF/lsc/sc
+\DeclareFontShape{LY1}{Junicode-OsF}{semibold}{it}{
+ <-> alias * Junicode-OsF/sb/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sb}{sc}{
+ <-> \Junicode@@scale Junicode-SmBold-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lightsemicondensed}{n}{
- <-> alias * Junicode-OsF/lsc/n
+\DeclareFontShape{LY1}{Junicode-OsF}{semibold}{sc}{
+ <-> alias * Junicode-OsF/sb/sc
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lsc}{scsl}{
- <-> ssub * Junicode-OsF/lsc/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{sb}{sl}{
+ <-> ssub * Junicode-OsF/sb/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lightsemicondensed}{scsl}{
- <-> ssub * Junicode-OsF/lightsemicondensed/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{semibold}{sl}{
+ <-> ssub * Junicode-OsF/semibold/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lsc}{sl}{
- <-> ssub * Junicode-OsF/lsc/it
+\DeclareFontShape{LY1}{Junicode-OsF}{sb}{scsl}{
+ <-> ssub * Junicode-OsF/sb/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-OsF/lightsemicondensed/it
+\DeclareFontShape{LY1}{Junicode-OsF}{semibold}{scsl}{
+ <-> ssub * Junicode-OsF/semibold/scit
}{}
-% ---- m = regular ----
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{LY1}{Junicode-OsF}{m}{sc}{
- <-> \Junicode@@scale Junicode-Regular-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sbsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{regular}{sc}{
- <-> alias * Junicode-OsF/m/sc
+\DeclareFontShape{LY1}{Junicode-OsF}{semiboldsemiexpanded}{sc}{
+ <-> alias * Junicode-OsF/sbsx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sbsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{regular}{n}{
- <-> alias * Junicode-OsF/m/n
+\DeclareFontShape{LY1}{Junicode-OsF}{semiboldsemiexpanded}{scit}{
+ <-> alias * Junicode-OsF/sbsx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{m}{scit}{
- <-> \Junicode@@scale Junicode-Italic-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{regular}{scit}{
- <-> alias * Junicode-OsF/m/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-OsF/sbsx/n
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{regular}{it}{
- <-> alias * Junicode-OsF/m/it
+\DeclareFontShape{LY1}{Junicode-OsF}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-OsF/sbsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{m}{scsl}{
- <-> ssub * Junicode-OsF/m/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{sbsx}{sl}{
+ <-> ssub * Junicode-OsF/sbsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{regular}{scsl}{
- <-> ssub * Junicode-OsF/regular/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-OsF/semiboldsemiexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{m}{sl}{
- <-> ssub * Junicode-OsF/m/it
+\DeclareFontShape{LY1}{Junicode-OsF}{sbsx}{scsl}{
+ <-> ssub * Junicode-OsF/sbsx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{regular}{sl}{
- <-> ssub * Junicode-OsF/regular/it
+\DeclareFontShape{LY1}{Junicode-OsF}{semiboldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/semiboldsemiexpanded/scit
}{}
-% ---- bx = boldexpanded ----
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{LY1}{Junicode-OsF}{bx}{sc}{
- <-> \Junicode@@scale Junicode-ExpBold-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{bsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpBold-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{boldexpanded}{sc}{
- <-> alias * Junicode-OsF/bx/sc
+\DeclareFontShape{LY1}{Junicode-OsF}{boldsemiexpanded}{sc}{
+ <-> alias * Junicode-OsF/bsx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{bsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{boldexpanded}{n}{
- <-> alias * Junicode-OsF/bx/n
+\DeclareFontShape{LY1}{Junicode-OsF}{boldsemiexpanded}{scit}{
+ <-> alias * Junicode-OsF/bsx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{bx}{scit}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{boldexpanded}{scit}{
- <-> alias * Junicode-OsF/bx/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-OsF/bsx/n
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{boldexpanded}{it}{
- <-> alias * Junicode-OsF/bx/it
+\DeclareFontShape{LY1}{Junicode-OsF}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-OsF/bsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{bx}{scsl}{
- <-> ssub * Junicode-OsF/bx/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{bsx}{sl}{
+ <-> ssub * Junicode-OsF/bsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{boldexpanded}{scsl}{
- <-> ssub * Junicode-OsF/boldexpanded/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-OsF/boldsemiexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{bx}{sl}{
- <-> ssub * Junicode-OsF/bx/it
+\DeclareFontShape{LY1}{Junicode-OsF}{bsx}{scsl}{
+ <-> ssub * Junicode-OsF/bsx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{boldexpanded}{sl}{
- <-> ssub * Junicode-OsF/boldexpanded/it
+\DeclareFontShape{LY1}{Junicode-OsF}{boldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/boldsemiexpanded/scit
}{}
-% ---- l = light ----
+% ---- sc = semicondensed ----
-\DeclareFontShape{LY1}{Junicode-OsF}{l}{scit}{
- <-> \Junicode@@scale Junicode-LightItalic-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{light}{scit}{
- <-> alias * Junicode-OsF/l/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{semicondensed}{it}{
+ <-> alias * Junicode-OsF/sc/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{light}{it}{
- <-> alias * Junicode-OsF/l/it
+\DeclareFontShape{LY1}{Junicode-OsF}{semicondensed}{scit}{
+ <-> alias * Junicode-OsF/sc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{l}{sc}{
- <-> \Junicode@@scale Junicode-Light-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{light}{sc}{
- <-> alias * Junicode-OsF/l/sc
+\DeclareFontShape{LY1}{Junicode-OsF}{semicondensed}{n}{
+ <-> alias * Junicode-OsF/sc/n
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCond-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{light}{n}{
- <-> alias * Junicode-OsF/l/n
+\DeclareFontShape{LY1}{Junicode-OsF}{semicondensed}{sc}{
+ <-> alias * Junicode-OsF/sc/sc
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{l}{scsl}{
- <-> ssub * Junicode-OsF/l/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{sc}{sl}{
+ <-> ssub * Junicode-OsF/sc/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{light}{scsl}{
- <-> ssub * Junicode-OsF/light/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{semicondensed}{sl}{
+ <-> ssub * Junicode-OsF/semicondensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{l}{sl}{
- <-> ssub * Junicode-OsF/l/it
+\DeclareFontShape{LY1}{Junicode-OsF}{sc}{scsl}{
+ <-> ssub * Junicode-OsF/sc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{light}{sl}{
- <-> ssub * Junicode-OsF/light/it
+\DeclareFontShape{LY1}{Junicode-OsF}{semicondensed}{scsl}{
+ <-> ssub * Junicode-OsF/semicondensed/scit
}{}
-% ---- mediumsemiexpanded ----
+% ---- lc = lightcondensed ----
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{lc}{scit}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemiexpanded}{sc}{
- <-> \Junicode@@scale Junicode-SmExpMedium-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{lightcondensed}{scit}{
+ <-> alias * Junicode-OsF/lc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemiexpanded}{scit}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{lightcondensed}{n}{
+ <-> alias * Junicode-OsF/lc/n
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemiexpanded}{scsl}{
- <-> ssub * Junicode-OsF/mediumsemiexpanded/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-OsF/mediumsemiexpanded/it
+\DeclareFontShape{LY1}{Junicode-OsF}{lightcondensed}{it}{
+ <-> alias * Junicode-OsF/lc/it
}{}
-
-% ---- mediumexpanded ----
-
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumexpanded}{scit}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{lc}{sc}{
+ <-> \Junicode@@scale Junicode-CondLight-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{lightcondensed}{sc}{
+ <-> alias * Junicode-OsF/lc/sc
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumexpanded}{sc}{
- <-> \Junicode@@scale Junicode-ExpMedium-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{lc}{sl}{
+ <-> ssub * Junicode-OsF/lc/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{lightcondensed}{sl}{
+ <-> ssub * Junicode-OsF/lightcondensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumexpanded}{scsl}{
- <-> ssub * Junicode-OsF/mediumexpanded/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{lc}{scsl}{
+ <-> ssub * Junicode-OsF/lc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-OsF/mediumexpanded/it
+\DeclareFontShape{LY1}{Junicode-OsF}{lightcondensed}{scsl}{
+ <-> ssub * Junicode-OsF/lightcondensed/scit
}{}
-% ---- sbsx = semiboldsemiexpanded ----
+% ---- medium ----
-\DeclareFontShape{LY1}{Junicode-OsF}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-OsF/sbsx/it
+\DeclareFontShape{LY1}{Junicode-OsF}{medium}{scit}{
+ <-> \Junicode@@scale Junicode-MediumItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sbsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{medium}{n}{
+ <-> \Junicode@@scale Junicode-Medium-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semiboldsemiexpanded}{scit}{
- <-> alias * Junicode-OsF/sbsx/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{medium}{sc}{
+ <-> \Junicode@@scale Junicode-Medium-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{medium}{sl}{
+ <-> ssub * Junicode-OsF/medium/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-OsF/sbsx/n
+\DeclareFontShape{LY1}{Junicode-OsF}{medium}{scsl}{
+ <-> ssub * Junicode-OsF/medium/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sbsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-osf-sc-ly1
-}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semiboldsemiexpanded}{sc}{
- <-> alias * Junicode-OsF/sbsx/sc
-}{}
+% ---- bx = boldexpanded ----
-\DeclareFontShape{LY1}{Junicode-OsF}{sbsx}{scsl}{
- <-> ssub * Junicode-OsF/sbsx/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semiboldsemiexpanded}{scsl}{
- <-> ssub * Junicode-OsF/semiboldsemiexpanded/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{boldexpanded}{it}{
+ <-> alias * Junicode-OsF/bx/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sbsx}{sl}{
- <-> ssub * Junicode-OsF/sbsx/it
+\DeclareFontShape{LY1}{Junicode-OsF}{bx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-OsF/semiboldsemiexpanded/it
+\DeclareFontShape{LY1}{Junicode-OsF}{boldexpanded}{scit}{
+ <-> alias * Junicode-OsF/bx/scit
}{}
+\DeclareFontShape{LY1}{Junicode-OsF}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-osf-ly1
+}{}
-% ---- c = condensed ----
+\DeclareFontShape{LY1}{Junicode-OsF}{boldexpanded}{n}{
+ <-> alias * Junicode-OsF/bx/n
+}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{bx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpBold-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{condensed}{n}{
- <-> alias * Junicode-OsF/c/n
+\DeclareFontShape{LY1}{Junicode-OsF}{boldexpanded}{sc}{
+ <-> alias * Junicode-OsF/bx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{c}{sc}{
- <-> \Junicode@@scale Junicode-Cond-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{bx}{sl}{
+ <-> ssub * Junicode-OsF/bx/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{condensed}{sc}{
- <-> alias * Junicode-OsF/c/sc
+\DeclareFontShape{LY1}{Junicode-OsF}{boldexpanded}{sl}{
+ <-> ssub * Junicode-OsF/boldexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{bx}{scsl}{
+ <-> ssub * Junicode-OsF/bx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{condensed}{it}{
- <-> alias * Junicode-OsF/c/it
+\DeclareFontShape{LY1}{Junicode-OsF}{boldexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/boldexpanded/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{c}{scit}{
- <-> \Junicode@@scale Junicode-CondItalic-osf-sc-ly1
+
+% ---- mediumsemiexpanded ----
+
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemiexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{condensed}{scit}{
- <-> alias * Junicode-OsF/c/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{c}{scsl}{
- <-> ssub * Junicode-OsF/c/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemiexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{condensed}{scsl}{
- <-> ssub * Junicode-OsF/condensed/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{c}{sl}{
- <-> ssub * Junicode-OsF/c/it
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-OsF/mediumsemiexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{condensed}{sl}{
- <-> ssub * Junicode-OsF/condensed/it
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemiexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/mediumsemiexpanded/scit
}{}
-% ---- x = expanded ----
+% ---- m = regular ----
-\DeclareFontShape{LY1}{Junicode-OsF}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{m}{scit}{
+ <-> \Junicode@@scale Junicode-Italic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{expanded}{it}{
- <-> alias * Junicode-OsF/x/it
+\DeclareFontShape{LY1}{Junicode-OsF}{regular}{scit}{
+ <-> alias * Junicode-OsF/m/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{x}{scit}{
- <-> \Junicode@@scale Junicode-ExpItalic-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{expanded}{scit}{
- <-> alias * Junicode-OsF/x/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{regular}{n}{
+ <-> alias * Junicode-OsF/m/n
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{expanded}{n}{
- <-> alias * Junicode-OsF/x/n
+\DeclareFontShape{LY1}{Junicode-OsF}{regular}{it}{
+ <-> alias * Junicode-OsF/m/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{x}{sc}{
- <-> \Junicode@@scale Junicode-Exp-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{m}{sc}{
+ <-> \Junicode@@scale Junicode-Regular-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{expanded}{sc}{
- <-> alias * Junicode-OsF/x/sc
+\DeclareFontShape{LY1}{Junicode-OsF}{regular}{sc}{
+ <-> alias * Junicode-OsF/m/sc
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{x}{scsl}{
- <-> ssub * Junicode-OsF/x/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{m}{sl}{
+ <-> ssub * Junicode-OsF/m/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{expanded}{scsl}{
- <-> ssub * Junicode-OsF/expanded/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{regular}{sl}{
+ <-> ssub * Junicode-OsF/regular/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{x}{sl}{
- <-> ssub * Junicode-OsF/x/it
+\DeclareFontShape{LY1}{Junicode-OsF}{m}{scsl}{
+ <-> ssub * Junicode-OsF/m/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{expanded}{sl}{
- <-> ssub * Junicode-OsF/expanded/it
+\DeclareFontShape{LY1}{Junicode-OsF}{regular}{scsl}{
+ <-> ssub * Junicode-OsF/regular/scit
}{}
-% ---- sx = semiexpanded ----
+% ---- l = light ----
-\DeclareFontShape{LY1}{Junicode-OsF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semiexpanded}{it}{
- <-> alias * Junicode-OsF/sx/it
+\DeclareFontShape{LY1}{Junicode-OsF}{light}{n}{
+ <-> alias * Junicode-OsF/l/n
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpItalic-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{l}{scit}{
+ <-> \Junicode@@scale Junicode-LightItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semiexpanded}{scit}{
- <-> alias * Junicode-OsF/sx/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{light}{scit}{
+ <-> alias * Junicode-OsF/l/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semiexpanded}{n}{
- <-> alias * Junicode-OsF/sx/n
+\DeclareFontShape{LY1}{Junicode-OsF}{light}{it}{
+ <-> alias * Junicode-OsF/l/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sx}{sc}{
- <-> \Junicode@@scale Junicode-SmExp-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{l}{sc}{
+ <-> \Junicode@@scale Junicode-Light-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semiexpanded}{sc}{
- <-> alias * Junicode-OsF/sx/sc
+\DeclareFontShape{LY1}{Junicode-OsF}{light}{sc}{
+ <-> alias * Junicode-OsF/l/sc
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sx}{scsl}{
- <-> ssub * Junicode-OsF/sx/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{l}{sl}{
+ <-> ssub * Junicode-OsF/l/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semiexpanded}{scsl}{
- <-> ssub * Junicode-OsF/semiexpanded/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{light}{sl}{
+ <-> ssub * Junicode-OsF/light/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sx}{sl}{
- <-> ssub * Junicode-OsF/sx/it
+\DeclareFontShape{LY1}{Junicode-OsF}{l}{scsl}{
+ <-> ssub * Junicode-OsF/l/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semiexpanded}{sl}{
- <-> ssub * Junicode-OsF/semiexpanded/it
+\DeclareFontShape{LY1}{Junicode-OsF}{light}{scsl}{
+ <-> ssub * Junicode-OsF/light/scit
}{}
-% ---- sc = semicondensed ----
+% ---- sx = semiexpanded ----
-\DeclareFontShape{LY1}{Junicode-OsF}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExp-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semicondensed}{it}{
- <-> alias * Junicode-OsF/sc/it
+\DeclareFontShape{LY1}{Junicode-OsF}{semiexpanded}{sc}{
+ <-> alias * Junicode-OsF/sx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondItalic-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semicondensed}{scit}{
- <-> alias * Junicode-OsF/sc/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{semiexpanded}{scit}{
+ <-> alias * Junicode-OsF/sx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semicondensed}{n}{
- <-> alias * Junicode-OsF/sc/n
+\DeclareFontShape{LY1}{Junicode-OsF}{semiexpanded}{n}{
+ <-> alias * Junicode-OsF/sx/n
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sc}{sc}{
- <-> \Junicode@@scale Junicode-SmCond-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semicondensed}{sc}{
- <-> alias * Junicode-OsF/sc/sc
+\DeclareFontShape{LY1}{Junicode-OsF}{semiexpanded}{it}{
+ <-> alias * Junicode-OsF/sx/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sc}{scsl}{
- <-> ssub * Junicode-OsF/sc/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{sx}{sl}{
+ <-> ssub * Junicode-OsF/sx/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semicondensed}{scsl}{
- <-> ssub * Junicode-OsF/semicondensed/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-OsF/semiexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sc}{sl}{
- <-> ssub * Junicode-OsF/sc/it
+\DeclareFontShape{LY1}{Junicode-OsF}{sx}{scsl}{
+ <-> ssub * Junicode-OsF/sx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semicondensed}{sl}{
- <-> ssub * Junicode-OsF/semicondensed/it
+\DeclareFontShape{LY1}{Junicode-OsF}{semiexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/semiexpanded/scit
}{}
-% ---- sb = semibold ----
+% ---- mediumsemicondensed ----
-\DeclareFontShape{LY1}{Junicode-OsF}{sb}{scit}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemicondensed}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semibold}{scit}{
- <-> alias * Junicode-OsF/sb/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemicondensed}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semibold}{it}{
- <-> alias * Junicode-OsF/sb/it
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sb}{sc}{
- <-> \Junicode@@scale Junicode-SmBold-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-OsF/mediumsemicondensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semibold}{sc}{
- <-> alias * Junicode-OsF/sb/sc
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemicondensed}{scsl}{
+ <-> ssub * Junicode-OsF/mediumsemicondensed/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-osf-ly1
-}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semibold}{n}{
- <-> alias * Junicode-OsF/sb/n
-}{}
+% ---- b = bold ----
-\DeclareFontShape{LY1}{Junicode-OsF}{sb}{scsl}{
- <-> ssub * Junicode-OsF/sb/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{b}{sc}{
+ <-> \Junicode@@scale Junicode-Bold-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semibold}{scsl}{
- <-> ssub * Junicode-OsF/semibold/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{bold}{sc}{
+ <-> alias * Junicode-OsF/b/sc
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sb}{sl}{
- <-> ssub * Junicode-OsF/sb/it
+\DeclareFontShape{LY1}{Junicode-OsF}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semibold}{sl}{
- <-> ssub * Junicode-OsF/semibold/it
+\DeclareFontShape{LY1}{Junicode-OsF}{bold}{it}{
+ <-> alias * Junicode-OsF/b/it
}{}
-
-% ---- bsx = boldsemiexpanded ----
-
-\DeclareFontShape{LY1}{Junicode-OsF}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{boldsemiexpanded}{n}{
- <-> alias * Junicode-OsF/bsx/n
+\DeclareFontShape{LY1}{Junicode-OsF}{bold}{n}{
+ <-> alias * Junicode-OsF/b/n
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{bsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpBold-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{b}{scit}{
+ <-> \Junicode@@scale Junicode-BoldItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{boldsemiexpanded}{sc}{
- <-> alias * Junicode-OsF/bsx/sc
+\DeclareFontShape{LY1}{Junicode-OsF}{bold}{scit}{
+ <-> alias * Junicode-OsF/b/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{b}{sl}{
+ <-> ssub * Junicode-OsF/b/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{boldsemiexpanded}{it}{
- <-> alias * Junicode-OsF/bsx/it
+\DeclareFontShape{LY1}{Junicode-OsF}{bold}{sl}{
+ <-> ssub * Junicode-OsF/bold/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{bsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{b}{scsl}{
+ <-> ssub * Junicode-OsF/b/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{boldsemiexpanded}{scit}{
- <-> alias * Junicode-OsF/bsx/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{bold}{scsl}{
+ <-> ssub * Junicode-OsF/bold/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{bsx}{scsl}{
- <-> ssub * Junicode-OsF/bsx/scit
+
+% ---- x = expanded ----
+
+\DeclareFontShape{LY1}{Junicode-OsF}{x}{scit}{
+ <-> \Junicode@@scale Junicode-ExpItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{boldsemiexpanded}{scsl}{
- <-> ssub * Junicode-OsF/boldsemiexpanded/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{expanded}{scit}{
+ <-> alias * Junicode-OsF/x/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{bsx}{sl}{
- <-> ssub * Junicode-OsF/bsx/it
+\DeclareFontShape{LY1}{Junicode-OsF}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-OsF/boldsemiexpanded/it
+\DeclareFontShape{LY1}{Junicode-OsF}{expanded}{n}{
+ <-> alias * Junicode-OsF/x/n
}{}
+\DeclareFontShape{LY1}{Junicode-OsF}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-osf-ly1
+}{}
-% ---- lc = lightcondensed ----
+\DeclareFontShape{LY1}{Junicode-OsF}{expanded}{it}{
+ <-> alias * Junicode-OsF/x/it
+}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lc}{scit}{
- <-> \Junicode@@scale Junicode-CondLightItalic-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{x}{sc}{
+ <-> \Junicode@@scale Junicode-Exp-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lightcondensed}{scit}{
- <-> alias * Junicode-OsF/lc/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{expanded}{sc}{
+ <-> alias * Junicode-OsF/x/sc
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{x}{sl}{
+ <-> ssub * Junicode-OsF/x/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lightcondensed}{it}{
- <-> alias * Junicode-OsF/lc/it
+\DeclareFontShape{LY1}{Junicode-OsF}{expanded}{sl}{
+ <-> ssub * Junicode-OsF/expanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lc}{sc}{
- <-> \Junicode@@scale Junicode-CondLight-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{x}{scsl}{
+ <-> ssub * Junicode-OsF/x/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lightcondensed}{sc}{
- <-> alias * Junicode-OsF/lc/sc
+\DeclareFontShape{LY1}{Junicode-OsF}{expanded}{scsl}{
+ <-> ssub * Junicode-OsF/expanded/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-osf-ly1
+
+% ---- mediumexpanded ----
+
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-ExpMedium-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lightcondensed}{n}{
- <-> alias * Junicode-OsF/lc/n
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lc}{scsl}{
- <-> ssub * Junicode-OsF/lc/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lightcondensed}{scsl}{
- <-> ssub * Junicode-OsF/lightcondensed/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lc}{sl}{
- <-> ssub * Junicode-OsF/lc/it
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-OsF/mediumexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{lightcondensed}{sl}{
- <-> ssub * Junicode-OsF/lightcondensed/it
+\DeclareFontShape{LY1}{Junicode-OsF}{mediumexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/mediumexpanded/scit
}{}
-% ---- sbx = semiboldexpanded ----
+% ---- lsc = lightsemicondensed ----
-\DeclareFontShape{LY1}{Junicode-OsF}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{lsc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondLight-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semiboldexpanded}{it}{
- <-> alias * Junicode-OsF/sbx/it
+\DeclareFontShape{LY1}{Junicode-OsF}{lightsemicondensed}{sc}{
+ <-> alias * Junicode-OsF/lsc/sc
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sbx}{scit}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semiboldexpanded}{scit}{
- <-> alias * Junicode-OsF/sbx/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-OsF/lsc/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semiboldexpanded}{n}{
- <-> alias * Junicode-OsF/sbx/n
+\DeclareFontShape{LY1}{Junicode-OsF}{lightsemicondensed}{n}{
+ <-> alias * Junicode-OsF/lsc/n
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sbx}{sc}{
- <-> \Junicode@@scale Junicode-ExpSmBold-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{lsc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semiboldexpanded}{sc}{
- <-> alias * Junicode-OsF/sbx/sc
+\DeclareFontShape{LY1}{Junicode-OsF}{lightsemicondensed}{scit}{
+ <-> alias * Junicode-OsF/lsc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sbx}{scsl}{
- <-> ssub * Junicode-OsF/sbx/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{lsc}{sl}{
+ <-> ssub * Junicode-OsF/lsc/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semiboldexpanded}{scsl}{
- <-> ssub * Junicode-OsF/semiboldexpanded/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-OsF/lightsemicondensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{sbx}{sl}{
- <-> ssub * Junicode-OsF/sbx/it
+\DeclareFontShape{LY1}{Junicode-OsF}{lsc}{scsl}{
+ <-> ssub * Junicode-OsF/lsc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-OsF/semiboldexpanded/it
+\DeclareFontShape{LY1}{Junicode-OsF}{lightsemicondensed}{scsl}{
+ <-> ssub * Junicode-OsF/lightsemicondensed/scit
}{}
-% ---- mediumsemicondensed ----
+% ---- c = condensed ----
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemicondensed}{sc}{
- <-> \Junicode@@scale Junicode-SmCondMedium-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{condensed}{n}{
+ <-> alias * Junicode-OsF/c/n
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemicondensed}{scit}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{c}{scit}{
+ <-> \Junicode@@scale Junicode-CondItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{condensed}{scit}{
+ <-> alias * Junicode-OsF/c/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemicondensed}{scsl}{
- <-> ssub * Junicode-OsF/mediumsemicondensed/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-OsF/mediumsemicondensed/it
+\DeclareFontShape{LY1}{Junicode-OsF}{condensed}{it}{
+ <-> alias * Junicode-OsF/c/it
}{}
-
-% ---- mediumcondensed ----
-
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumcondensed}{sc}{
- <-> \Junicode@@scale Junicode-CondMedium-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{c}{sc}{
+ <-> \Junicode@@scale Junicode-Cond-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{condensed}{sc}{
+ <-> alias * Junicode-OsF/c/sc
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumcondensed}{scit}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{c}{sl}{
+ <-> ssub * Junicode-OsF/c/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{condensed}{sl}{
+ <-> ssub * Junicode-OsF/condensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumcondensed}{scsl}{
- <-> ssub * Junicode-OsF/mediumcondensed/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{c}{scsl}{
+ <-> ssub * Junicode-OsF/c/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{mediumcondensed}{sl}{
- <-> ssub * Junicode-OsF/mediumcondensed/it
+\DeclareFontShape{LY1}{Junicode-OsF}{condensed}{scsl}{
+ <-> ssub * Junicode-OsF/condensed/scit
}{}
-% ---- b = bold ----
+% ---- sbx = semiboldexpanded ----
-\DeclareFontShape{LY1}{Junicode-OsF}{b}{scit}{
- <-> \Junicode@@scale Junicode-BoldItalic-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{bold}{scit}{
- <-> alias * Junicode-OsF/b/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{semiboldexpanded}{it}{
+ <-> alias * Junicode-OsF/sbx/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sbx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{bold}{it}{
- <-> alias * Junicode-OsF/b/it
+\DeclareFontShape{LY1}{Junicode-OsF}{semiboldexpanded}{scit}{
+ <-> alias * Junicode-OsF/sbx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{b}{sc}{
- <-> \Junicode@@scale Junicode-Bold-osf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-osf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{bold}{sc}{
- <-> alias * Junicode-OsF/b/sc
+\DeclareFontShape{LY1}{Junicode-OsF}{semiboldexpanded}{n}{
+ <-> alias * Junicode-OsF/sbx/n
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-osf-ly1
+\DeclareFontShape{LY1}{Junicode-OsF}{sbx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{bold}{n}{
- <-> alias * Junicode-OsF/b/n
+\DeclareFontShape{LY1}{Junicode-OsF}{semiboldexpanded}{sc}{
+ <-> alias * Junicode-OsF/sbx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{b}{scsl}{
- <-> ssub * Junicode-OsF/b/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{sbx}{sl}{
+ <-> ssub * Junicode-OsF/sbx/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{bold}{scsl}{
- <-> ssub * Junicode-OsF/bold/scit
+\DeclareFontShape{LY1}{Junicode-OsF}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-OsF/semiboldexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{b}{sl}{
- <-> ssub * Junicode-OsF/b/it
+\DeclareFontShape{LY1}{Junicode-OsF}{sbx}{scsl}{
+ <-> ssub * Junicode-OsF/sbx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-OsF}{bold}{sl}{
- <-> ssub * Junicode-OsF/bold/it
+\DeclareFontShape{LY1}{Junicode-OsF}{semiboldexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/semiboldexpanded/scit
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/LY1Junicode-Sup.fd b/Master/texmf-dist/tex/latex/junicode/LY1Junicode-Sup.fd
index 55a81ba0ea5..8de022b535c 100644
--- a/Master/texmf-dist/tex/latex/junicode/LY1Junicode-Sup.fd
+++ b/Master/texmf-dist/tex/latex/junicode/LY1Junicode-Sup.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{LY1Junicode-Sup.fd}
- [2024/06/03 (autoinst) Font definitions for LY1/Junicode-Sup.]
+ [2024/07/21 (autoinst) Font definitions for LY1/Junicode-Sup.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,57 +20,57 @@
\DeclareFontFamily{LY1}{Junicode-Sup}{}
-% ---- sx = semiexpanded ----
+% ---- c = condensed ----
-\DeclareFontShape{LY1}{Junicode-Sup}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{semiexpanded}{it}{
- <-> alias * Junicode-Sup/sx/it
+\DeclareFontShape{LY1}{Junicode-Sup}{condensed}{n}{
+ <-> alias * Junicode-Sup/c/n
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{semiexpanded}{n}{
- <-> alias * Junicode-Sup/sx/n
+\DeclareFontShape{LY1}{Junicode-Sup}{condensed}{it}{
+ <-> alias * Junicode-Sup/c/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{sx}{sl}{
- <-> ssub * Junicode-Sup/sx/it
+\DeclareFontShape{LY1}{Junicode-Sup}{c}{sl}{
+ <-> ssub * Junicode-Sup/c/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{semiexpanded}{sl}{
- <-> ssub * Junicode-Sup/semiexpanded/it
+\DeclareFontShape{LY1}{Junicode-Sup}{condensed}{sl}{
+ <-> ssub * Junicode-Sup/condensed/it
}{}
-% ---- c = condensed ----
+% ---- sbx = semiboldexpanded ----
-\DeclareFontShape{LY1}{Junicode-Sup}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{condensed}{it}{
- <-> alias * Junicode-Sup/c/it
+\DeclareFontShape{LY1}{Junicode-Sup}{semiboldexpanded}{it}{
+ <-> alias * Junicode-Sup/sbx/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{condensed}{n}{
- <-> alias * Junicode-Sup/c/n
+\DeclareFontShape{LY1}{Junicode-Sup}{semiboldexpanded}{n}{
+ <-> alias * Junicode-Sup/sbx/n
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{c}{sl}{
- <-> ssub * Junicode-Sup/c/it
+\DeclareFontShape{LY1}{Junicode-Sup}{sbx}{sl}{
+ <-> ssub * Junicode-Sup/sbx/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{condensed}{sl}{
- <-> ssub * Junicode-Sup/condensed/it
+\DeclareFontShape{LY1}{Junicode-Sup}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-Sup/semiboldexpanded/it
}{}
@@ -101,156 +101,114 @@
}{}
-% ---- mediumsemiexpanded ----
+% ---- b = bold ----
-\DeclareFontShape{LY1}{Junicode-Sup}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{bold}{it}{
+ <-> alias * Junicode-Sup/b/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-Sup/mediumsemiexpanded/it
+\DeclareFontShape{LY1}{Junicode-Sup}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-sup-ly1
}{}
-
-% ---- sbsx = semiboldsemiexpanded ----
-
-\DeclareFontShape{LY1}{Junicode-Sup}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{bold}{n}{
+ <-> alias * Junicode-Sup/b/n
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-Sup/sbsx/it
+\DeclareFontShape{LY1}{Junicode-Sup}{b}{sl}{
+ <-> ssub * Junicode-Sup/b/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{bold}{sl}{
+ <-> ssub * Junicode-Sup/bold/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-Sup/sbsx/n
-}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{sbsx}{sl}{
- <-> ssub * Junicode-Sup/sbsx/it
-}{}
+% ---- mediumexpanded ----
-\DeclareFontShape{LY1}{Junicode-Sup}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-Sup/semiboldsemiexpanded/it
+\DeclareFontShape{LY1}{Junicode-Sup}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-sup-ly1
}{}
-
-% ---- mediumexpanded ----
-
\DeclareFontShape{LY1}{Junicode-Sup}{mediumexpanded}{n}{
<-> \Junicode@@scale Junicode-ExpMedium-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-sup-ly1
-}{}
-
\DeclareFontShape{LY1}{Junicode-Sup}{mediumexpanded}{sl}{
<-> ssub * Junicode-Sup/mediumexpanded/it
}{}
-% ---- bx = boldexpanded ----
-
-\DeclareFontShape{LY1}{Junicode-Sup}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-sup-ly1
-}{}
-
-\DeclareFontShape{LY1}{Junicode-Sup}{boldexpanded}{n}{
- <-> alias * Junicode-Sup/bx/n
-}{}
-
-\DeclareFontShape{LY1}{Junicode-Sup}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-sup-ly1
-}{}
-
-\DeclareFontShape{LY1}{Junicode-Sup}{boldexpanded}{it}{
- <-> alias * Junicode-Sup/bx/it
-}{}
-
-\DeclareFontShape{LY1}{Junicode-Sup}{bx}{sl}{
- <-> ssub * Junicode-Sup/bx/it
-}{}
-
-\DeclareFontShape{LY1}{Junicode-Sup}{boldexpanded}{sl}{
- <-> ssub * Junicode-Sup/boldexpanded/it
-}{}
-
-
-% ---- l = light ----
+% ---- lsc = lightsemicondensed ----
-\DeclareFontShape{LY1}{Junicode-Sup}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{light}{it}{
- <-> alias * Junicode-Sup/l/it
+\DeclareFontShape{LY1}{Junicode-Sup}{lightsemicondensed}{n}{
+ <-> alias * Junicode-Sup/lsc/n
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{light}{n}{
- <-> alias * Junicode-Sup/l/n
+\DeclareFontShape{LY1}{Junicode-Sup}{lightsemicondensed}{it}{
+ <-> alias * Junicode-Sup/lsc/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{l}{sl}{
- <-> ssub * Junicode-Sup/l/it
+\DeclareFontShape{LY1}{Junicode-Sup}{lsc}{sl}{
+ <-> ssub * Junicode-Sup/lsc/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{light}{sl}{
- <-> ssub * Junicode-Sup/light/it
+\DeclareFontShape{LY1}{Junicode-Sup}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-Sup/lightsemicondensed/it
}{}
-% ---- lsc = lightsemicondensed ----
+% ---- lc = lightcondensed ----
-\DeclareFontShape{LY1}{Junicode-Sup}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{lightsemicondensed}{n}{
- <-> alias * Junicode-Sup/lsc/n
+\DeclareFontShape{LY1}{Junicode-Sup}{lightcondensed}{n}{
+ <-> alias * Junicode-Sup/lc/n
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{lightsemicondensed}{it}{
- <-> alias * Junicode-Sup/lsc/it
+\DeclareFontShape{LY1}{Junicode-Sup}{lightcondensed}{it}{
+ <-> alias * Junicode-Sup/lc/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{lsc}{sl}{
- <-> ssub * Junicode-Sup/lsc/it
+\DeclareFontShape{LY1}{Junicode-Sup}{lc}{sl}{
+ <-> ssub * Junicode-Sup/lc/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-Sup/lightsemicondensed/it
+\DeclareFontShape{LY1}{Junicode-Sup}{lightcondensed}{sl}{
+ <-> ssub * Junicode-Sup/lightcondensed/it
}{}
-% ---- medium ----
+% ---- mediumsemiexpanded ----
-\DeclareFontShape{LY1}{Junicode-Sup}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{medium}{n}{
- <-> \Junicode@@scale Junicode-Medium-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{medium}{sl}{
- <-> ssub * Junicode-Sup/medium/it
+\DeclareFontShape{LY1}{Junicode-Sup}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-Sup/mediumsemiexpanded/it
}{}
@@ -281,127 +239,119 @@
}{}
-% ---- b = bold ----
+% ---- medium ----
-\DeclareFontShape{LY1}{Junicode-Sup}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{bold}{it}{
- <-> alias * Junicode-Sup/b/it
+\DeclareFontShape{LY1}{Junicode-Sup}{medium}{n}{
+ <-> \Junicode@@scale Junicode-Medium-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{medium}{sl}{
+ <-> ssub * Junicode-Sup/medium/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{bold}{n}{
- <-> alias * Junicode-Sup/b/n
-}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{b}{sl}{
- <-> ssub * Junicode-Sup/b/it
-}{}
+% ---- bx = boldexpanded ----
-\DeclareFontShape{LY1}{Junicode-Sup}{bold}{sl}{
- <-> ssub * Junicode-Sup/bold/it
+\DeclareFontShape{LY1}{Junicode-Sup}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-sup-ly1
}{}
+\DeclareFontShape{LY1}{Junicode-Sup}{boldexpanded}{n}{
+ <-> alias * Junicode-Sup/bx/n
+}{}
-% ---- mediumcondensed ----
+\DeclareFontShape{LY1}{Junicode-Sup}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-sup-ly1
+}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{boldexpanded}{it}{
+ <-> alias * Junicode-Sup/bx/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{bx}{sl}{
+ <-> ssub * Junicode-Sup/bx/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{mediumcondensed}{sl}{
- <-> ssub * Junicode-Sup/mediumcondensed/it
+\DeclareFontShape{LY1}{Junicode-Sup}{boldexpanded}{sl}{
+ <-> ssub * Junicode-Sup/boldexpanded/it
}{}
-% ---- sbx = semiboldexpanded ----
+% ---- sx = semiexpanded ----
-\DeclareFontShape{LY1}{Junicode-Sup}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{semiboldexpanded}{n}{
- <-> alias * Junicode-Sup/sbx/n
+\DeclareFontShape{LY1}{Junicode-Sup}{semiexpanded}{n}{
+ <-> alias * Junicode-Sup/sx/n
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{semiboldexpanded}{it}{
- <-> alias * Junicode-Sup/sbx/it
+\DeclareFontShape{LY1}{Junicode-Sup}{semiexpanded}{it}{
+ <-> alias * Junicode-Sup/sx/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{sbx}{sl}{
- <-> ssub * Junicode-Sup/sbx/it
+\DeclareFontShape{LY1}{Junicode-Sup}{sx}{sl}{
+ <-> ssub * Junicode-Sup/sx/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-Sup/semiboldexpanded/it
+\DeclareFontShape{LY1}{Junicode-Sup}{semiexpanded}{sl}{
+ <-> ssub * Junicode-Sup/semiexpanded/it
}{}
-% ---- mediumsemicondensed ----
+% ---- l = light ----
-\DeclareFontShape{LY1}{Junicode-Sup}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{light}{it}{
+ <-> alias * Junicode-Sup/l/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-Sup/mediumsemicondensed/it
+\DeclareFontShape{LY1}{Junicode-Sup}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-sup-ly1
}{}
-
-% ---- sc = semicondensed ----
-
-\DeclareFontShape{LY1}{Junicode-Sup}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{light}{n}{
+ <-> alias * Junicode-Sup/l/n
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{semicondensed}{n}{
- <-> alias * Junicode-Sup/sc/n
+\DeclareFontShape{LY1}{Junicode-Sup}{l}{sl}{
+ <-> ssub * Junicode-Sup/l/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{light}{sl}{
+ <-> ssub * Junicode-Sup/light/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{semicondensed}{it}{
- <-> alias * Junicode-Sup/sc/it
+
+% ---- mediumsemicondensed ----
+
+\DeclareFontShape{LY1}{Junicode-Sup}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{sc}{sl}{
- <-> ssub * Junicode-Sup/sc/it
+\DeclareFontShape{LY1}{Junicode-Sup}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{semicondensed}{sl}{
- <-> ssub * Junicode-Sup/semicondensed/it
+\DeclareFontShape{LY1}{Junicode-Sup}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-Sup/mediumsemicondensed/it
}{}
% ---- sb = semibold ----
-\DeclareFontShape{LY1}{Junicode-Sup}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-sup-ly1
-}{}
-
-\DeclareFontShape{LY1}{Junicode-Sup}{semibold}{it}{
- <-> alias * Junicode-Sup/sb/it
-}{}
-
\DeclareFontShape{LY1}{Junicode-Sup}{sb}{n}{
<-> \Junicode@@scale Junicode-SmBold-sup-ly1
}{}
@@ -410,6 +360,14 @@
<-> alias * Junicode-Sup/sb/n
}{}
+\DeclareFontShape{LY1}{Junicode-Sup}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-sup-ly1
+}{}
+
+\DeclareFontShape{LY1}{Junicode-Sup}{semibold}{it}{
+ <-> alias * Junicode-Sup/sb/it
+}{}
+
\DeclareFontShape{LY1}{Junicode-Sup}{sb}{sl}{
<-> ssub * Junicode-Sup/sb/it
}{}
@@ -419,6 +377,21 @@
}{}
+% ---- mediumcondensed ----
+
+\DeclareFontShape{LY1}{Junicode-Sup}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-sup-ly1
+}{}
+
+\DeclareFontShape{LY1}{Junicode-Sup}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-sup-ly1
+}{}
+
+\DeclareFontShape{LY1}{Junicode-Sup}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-Sup/mediumcondensed/it
+}{}
+
+
% ---- bsx = boldsemiexpanded ----
\DeclareFontShape{LY1}{Junicode-Sup}{bsx}{it}{
@@ -446,30 +419,57 @@
}{}
-% ---- lc = lightcondensed ----
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{LY1}{Junicode-Sup}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{lightcondensed}{n}{
- <-> alias * Junicode-Sup/lc/n
+\DeclareFontShape{LY1}{Junicode-Sup}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-Sup/sbsx/n
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-sup-ly1
+\DeclareFontShape{LY1}{Junicode-Sup}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-sup-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{lightcondensed}{it}{
- <-> alias * Junicode-Sup/lc/it
+\DeclareFontShape{LY1}{Junicode-Sup}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-Sup/sbsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{lc}{sl}{
- <-> ssub * Junicode-Sup/lc/it
+\DeclareFontShape{LY1}{Junicode-Sup}{sbsx}{sl}{
+ <-> ssub * Junicode-Sup/sbsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-Sup}{lightcondensed}{sl}{
- <-> ssub * Junicode-Sup/lightcondensed/it
+\DeclareFontShape{LY1}{Junicode-Sup}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-Sup/semiboldsemiexpanded/it
+}{}
+
+
+% ---- sc = semicondensed ----
+
+\DeclareFontShape{LY1}{Junicode-Sup}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-sup-ly1
+}{}
+
+\DeclareFontShape{LY1}{Junicode-Sup}{semicondensed}{it}{
+ <-> alias * Junicode-Sup/sc/it
+}{}
+
+\DeclareFontShape{LY1}{Junicode-Sup}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-sup-ly1
+}{}
+
+\DeclareFontShape{LY1}{Junicode-Sup}{semicondensed}{n}{
+ <-> alias * Junicode-Sup/sc/n
+}{}
+
+\DeclareFontShape{LY1}{Junicode-Sup}{sc}{sl}{
+ <-> ssub * Junicode-Sup/sc/it
+}{}
+
+\DeclareFontShape{LY1}{Junicode-Sup}{semicondensed}{sl}{
+ <-> ssub * Junicode-Sup/semicondensed/it
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/LY1Junicode-TLF.fd b/Master/texmf-dist/tex/latex/junicode/LY1Junicode-TLF.fd
index 9cabf8d170c..07d73da9c2c 100644
--- a/Master/texmf-dist/tex/latex/junicode/LY1Junicode-TLF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/LY1Junicode-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{LY1Junicode-TLF.fd}
- [2024/06/03 (autoinst) Font definitions for LY1/Junicode-TLF.]
+ [2024/07/21 (autoinst) Font definitions for LY1/Junicode-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,852 +20,852 @@
\DeclareFontFamily{LY1}{Junicode-TLF}{}
-% ---- sbsx = semiboldsemiexpanded ----
+% ---- sc = semicondensed ----
-\DeclareFontShape{LY1}{Junicode-TLF}{sbsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semiboldsemiexpanded}{sc}{
- <-> alias * Junicode-TLF/sbsx/sc
+\DeclareFontShape{LY1}{Junicode-TLF}{semicondensed}{it}{
+ <-> alias * Junicode-TLF/sc/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{sc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-TLF/sbsx/n
+\DeclareFontShape{LY1}{Junicode-TLF}{semicondensed}{scit}{
+ <-> alias * Junicode-TLF/sc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sbsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semiboldsemiexpanded}{scit}{
- <-> alias * Junicode-TLF/sbsx/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{semicondensed}{n}{
+ <-> alias * Junicode-TLF/sc/n
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{sc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCond-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-TLF/sbsx/it
+\DeclareFontShape{LY1}{Junicode-TLF}{semicondensed}{sc}{
+ <-> alias * Junicode-TLF/sc/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sbsx}{scsl}{
- <-> ssub * Junicode-TLF/sbsx/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{sc}{sl}{
+ <-> ssub * Junicode-TLF/sc/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semiboldsemiexpanded}{scsl}{
- <-> ssub * Junicode-TLF/semiboldsemiexpanded/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{semicondensed}{sl}{
+ <-> ssub * Junicode-TLF/semicondensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sbsx}{sl}{
- <-> ssub * Junicode-TLF/sbsx/it
+\DeclareFontShape{LY1}{Junicode-TLF}{sc}{scsl}{
+ <-> ssub * Junicode-TLF/sc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-TLF/semiboldsemiexpanded/it
+\DeclareFontShape{LY1}{Junicode-TLF}{semicondensed}{scsl}{
+ <-> ssub * Junicode-TLF/semicondensed/scit
}{}
-% ---- mediumexpanded ----
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumexpanded}{scit}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{bsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpBold-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{boldsemiexpanded}{sc}{
+ <-> alias * Junicode-TLF/bsx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumexpanded}{sc}{
- <-> \Junicode@@scale Junicode-ExpMedium-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-TLF/bsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumexpanded}{scsl}{
- <-> ssub * Junicode-TLF/mediumexpanded/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-TLF/mediumexpanded/it
+\DeclareFontShape{LY1}{Junicode-TLF}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-TLF/bsx/n
}{}
-
-% ---- mediumsemiexpanded ----
-
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemiexpanded}{sc}{
- <-> \Junicode@@scale Junicode-SmExpMedium-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{bsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{boldsemiexpanded}{scit}{
+ <-> alias * Junicode-TLF/bsx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemiexpanded}{scit}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{bsx}{sl}{
+ <-> ssub * Junicode-TLF/bsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-TLF/boldsemiexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemiexpanded}{scsl}{
- <-> ssub * Junicode-TLF/mediumsemiexpanded/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{bsx}{scsl}{
+ <-> ssub * Junicode-TLF/bsx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-TLF/mediumsemiexpanded/it
+\DeclareFontShape{LY1}{Junicode-TLF}{boldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/boldsemiexpanded/scit
}{}
-% ---- sx = semiexpanded ----
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{LY1}{Junicode-TLF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{sbsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semiexpanded}{it}{
- <-> alias * Junicode-TLF/sx/it
+\DeclareFontShape{LY1}{Junicode-TLF}{semiboldsemiexpanded}{sc}{
+ <-> alias * Junicode-TLF/sbsx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpItalic-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semiexpanded}{scit}{
- <-> alias * Junicode-TLF/sx/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-TLF/sbsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{sbsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semiexpanded}{n}{
- <-> alias * Junicode-TLF/sx/n
+\DeclareFontShape{LY1}{Junicode-TLF}{semiboldsemiexpanded}{scit}{
+ <-> alias * Junicode-TLF/sbsx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sx}{sc}{
- <-> \Junicode@@scale Junicode-SmExp-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semiexpanded}{sc}{
- <-> alias * Junicode-TLF/sx/sc
+\DeclareFontShape{LY1}{Junicode-TLF}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-TLF/sbsx/n
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sx}{scsl}{
- <-> ssub * Junicode-TLF/sx/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{sbsx}{sl}{
+ <-> ssub * Junicode-TLF/sbsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semiexpanded}{scsl}{
- <-> ssub * Junicode-TLF/semiexpanded/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-TLF/semiboldsemiexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sx}{sl}{
- <-> ssub * Junicode-TLF/sx/it
+\DeclareFontShape{LY1}{Junicode-TLF}{sbsx}{scsl}{
+ <-> ssub * Junicode-TLF/sbsx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semiexpanded}{sl}{
- <-> ssub * Junicode-TLF/semiexpanded/it
+\DeclareFontShape{LY1}{Junicode-TLF}{semiboldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/semiboldsemiexpanded/scit
}{}
-% ---- c = condensed ----
+% ---- mediumcondensed ----
-\DeclareFontShape{LY1}{Junicode-TLF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumcondensed}{sc}{
+ <-> \Junicode@@scale Junicode-CondMedium-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{condensed}{it}{
- <-> alias * Junicode-TLF/c/it
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumcondensed}{scit}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{c}{scit}{
- <-> \Junicode@@scale Junicode-CondItalic-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{condensed}{scit}{
- <-> alias * Junicode-TLF/c/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-TLF/mediumcondensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{condensed}{n}{
- <-> alias * Junicode-TLF/c/n
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumcondensed}{scsl}{
+ <-> ssub * Junicode-TLF/mediumcondensed/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{c}{sc}{
- <-> \Junicode@@scale Junicode-Cond-tlf-sc-ly1
-}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{condensed}{sc}{
- <-> alias * Junicode-TLF/c/sc
-}{}
+% ---- sb = semibold ----
-\DeclareFontShape{LY1}{Junicode-TLF}{c}{scsl}{
- <-> ssub * Junicode-TLF/c/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{sb}{sc}{
+ <-> \Junicode@@scale Junicode-SmBold-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{condensed}{scsl}{
- <-> ssub * Junicode-TLF/condensed/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{semibold}{sc}{
+ <-> alias * Junicode-TLF/sb/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{c}{sl}{
- <-> ssub * Junicode-TLF/c/it
+\DeclareFontShape{LY1}{Junicode-TLF}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{condensed}{sl}{
- <-> ssub * Junicode-TLF/condensed/it
+\DeclareFontShape{LY1}{Junicode-TLF}{semibold}{it}{
+ <-> alias * Junicode-TLF/sb/it
}{}
+\DeclareFontShape{LY1}{Junicode-TLF}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-tlf-ly1
+}{}
-% ---- x = expanded ----
+\DeclareFontShape{LY1}{Junicode-TLF}{semibold}{n}{
+ <-> alias * Junicode-TLF/sb/n
+}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{x}{sc}{
- <-> \Junicode@@scale Junicode-Exp-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{sb}{scit}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{expanded}{sc}{
- <-> alias * Junicode-TLF/x/sc
+\DeclareFontShape{LY1}{Junicode-TLF}{semibold}{scit}{
+ <-> alias * Junicode-TLF/sb/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{sb}{sl}{
+ <-> ssub * Junicode-TLF/sb/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{expanded}{n}{
- <-> alias * Junicode-TLF/x/n
+\DeclareFontShape{LY1}{Junicode-TLF}{semibold}{sl}{
+ <-> ssub * Junicode-TLF/semibold/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{x}{scit}{
- <-> \Junicode@@scale Junicode-ExpItalic-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{sb}{scsl}{
+ <-> ssub * Junicode-TLF/sb/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{expanded}{scit}{
- <-> alias * Junicode-TLF/x/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{semibold}{scsl}{
+ <-> ssub * Junicode-TLF/semibold/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-tlf-ly1
+
+% ---- mediumsemicondensed ----
+
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{expanded}{it}{
- <-> alias * Junicode-TLF/x/it
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{x}{scsl}{
- <-> ssub * Junicode-TLF/x/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemicondensed}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{expanded}{scsl}{
- <-> ssub * Junicode-TLF/expanded/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemicondensed}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{x}{sl}{
- <-> ssub * Junicode-TLF/x/it
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-TLF/mediumsemicondensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{expanded}{sl}{
- <-> ssub * Junicode-TLF/expanded/it
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemicondensed}{scsl}{
+ <-> ssub * Junicode-TLF/mediumsemicondensed/scit
}{}
-% ---- m = regular ----
+% ---- l = light ----
-\DeclareFontShape{LY1}{Junicode-TLF}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{l}{sc}{
+ <-> \Junicode@@scale Junicode-Light-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{regular}{it}{
- <-> alias * Junicode-TLF/m/it
+\DeclareFontShape{LY1}{Junicode-TLF}{light}{sc}{
+ <-> alias * Junicode-TLF/l/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{m}{scit}{
- <-> \Junicode@@scale Junicode-Italic-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{regular}{scit}{
- <-> alias * Junicode-TLF/m/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{light}{it}{
+ <-> alias * Junicode-TLF/l/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{regular}{n}{
- <-> alias * Junicode-TLF/m/n
+\DeclareFontShape{LY1}{Junicode-TLF}{light}{n}{
+ <-> alias * Junicode-TLF/l/n
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{m}{sc}{
- <-> \Junicode@@scale Junicode-Regular-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{l}{scit}{
+ <-> \Junicode@@scale Junicode-LightItalic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{regular}{sc}{
- <-> alias * Junicode-TLF/m/sc
+\DeclareFontShape{LY1}{Junicode-TLF}{light}{scit}{
+ <-> alias * Junicode-TLF/l/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{m}{scsl}{
- <-> ssub * Junicode-TLF/m/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{l}{sl}{
+ <-> ssub * Junicode-TLF/l/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{regular}{scsl}{
- <-> ssub * Junicode-TLF/regular/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{light}{sl}{
+ <-> ssub * Junicode-TLF/light/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{m}{sl}{
- <-> ssub * Junicode-TLF/m/it
+\DeclareFontShape{LY1}{Junicode-TLF}{l}{scsl}{
+ <-> ssub * Junicode-TLF/l/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{regular}{sl}{
- <-> ssub * Junicode-TLF/regular/it
+\DeclareFontShape{LY1}{Junicode-TLF}{light}{scsl}{
+ <-> ssub * Junicode-TLF/light/scit
}{}
-% ---- lsc = lightsemicondensed ----
+% ---- sx = semiexpanded ----
-\DeclareFontShape{LY1}{Junicode-TLF}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{sx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExp-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lightsemicondensed}{n}{
- <-> alias * Junicode-TLF/lsc/n
+\DeclareFontShape{LY1}{Junicode-TLF}{semiexpanded}{sc}{
+ <-> alias * Junicode-TLF/sx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lsc}{sc}{
- <-> \Junicode@@scale Junicode-SmCondLight-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lightsemicondensed}{sc}{
- <-> alias * Junicode-TLF/lsc/sc
+\DeclareFontShape{LY1}{Junicode-TLF}{semiexpanded}{it}{
+ <-> alias * Junicode-TLF/sx/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{sx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lightsemicondensed}{it}{
- <-> alias * Junicode-TLF/lsc/it
+\DeclareFontShape{LY1}{Junicode-TLF}{semiexpanded}{scit}{
+ <-> alias * Junicode-TLF/sx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lsc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lightsemicondensed}{scit}{
- <-> alias * Junicode-TLF/lsc/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{semiexpanded}{n}{
+ <-> alias * Junicode-TLF/sx/n
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lsc}{scsl}{
- <-> ssub * Junicode-TLF/lsc/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{sx}{sl}{
+ <-> ssub * Junicode-TLF/sx/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lightsemicondensed}{scsl}{
- <-> ssub * Junicode-TLF/lightsemicondensed/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-TLF/semiexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lsc}{sl}{
- <-> ssub * Junicode-TLF/lsc/it
+\DeclareFontShape{LY1}{Junicode-TLF}{sx}{scsl}{
+ <-> ssub * Junicode-TLF/sx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-TLF/lightsemicondensed/it
+\DeclareFontShape{LY1}{Junicode-TLF}{semiexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/semiexpanded/scit
}{}
% ---- medium ----
-\DeclareFontShape{LY1}{Junicode-TLF}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{medium}{sc}{
+ <-> \Junicode@@scale Junicode-Medium-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{medium}{scit}{
- <-> \Junicode@@scale Junicode-MediumItalic-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-tlf-ly1
}{}
\DeclareFontShape{LY1}{Junicode-TLF}{medium}{n}{
<-> \Junicode@@scale Junicode-Medium-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{medium}{sc}{
- <-> \Junicode@@scale Junicode-Medium-tlf-sc-ly1
-}{}
-
-\DeclareFontShape{LY1}{Junicode-TLF}{medium}{scsl}{
- <-> ssub * Junicode-TLF/medium/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{medium}{scit}{
+ <-> \Junicode@@scale Junicode-MediumItalic-tlf-sc-ly1
}{}
\DeclareFontShape{LY1}{Junicode-TLF}{medium}{sl}{
<-> ssub * Junicode-TLF/medium/it
}{}
+\DeclareFontShape{LY1}{Junicode-TLF}{medium}{scsl}{
+ <-> ssub * Junicode-TLF/medium/scit
+}{}
+
-% ---- l = light ----
+% ---- bx = boldexpanded ----
-\DeclareFontShape{LY1}{Junicode-TLF}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{bx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpBold-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{light}{it}{
- <-> alias * Junicode-TLF/l/it
+\DeclareFontShape{LY1}{Junicode-TLF}{boldexpanded}{sc}{
+ <-> alias * Junicode-TLF/bx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{l}{scit}{
- <-> \Junicode@@scale Junicode-LightItalic-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{bx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{light}{scit}{
- <-> alias * Junicode-TLF/l/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{boldexpanded}{scit}{
+ <-> alias * Junicode-TLF/bx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{light}{n}{
- <-> alias * Junicode-TLF/l/n
+\DeclareFontShape{LY1}{Junicode-TLF}{boldexpanded}{n}{
+ <-> alias * Junicode-TLF/bx/n
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{l}{sc}{
- <-> \Junicode@@scale Junicode-Light-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{light}{sc}{
- <-> alias * Junicode-TLF/l/sc
+\DeclareFontShape{LY1}{Junicode-TLF}{boldexpanded}{it}{
+ <-> alias * Junicode-TLF/bx/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{l}{scsl}{
- <-> ssub * Junicode-TLF/l/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{bx}{sl}{
+ <-> ssub * Junicode-TLF/bx/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{light}{scsl}{
- <-> ssub * Junicode-TLF/light/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{boldexpanded}{sl}{
+ <-> ssub * Junicode-TLF/boldexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{l}{sl}{
- <-> ssub * Junicode-TLF/l/it
+\DeclareFontShape{LY1}{Junicode-TLF}{bx}{scsl}{
+ <-> ssub * Junicode-TLF/bx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{light}{sl}{
- <-> ssub * Junicode-TLF/light/it
+\DeclareFontShape{LY1}{Junicode-TLF}{boldexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/boldexpanded/scit
}{}
-% ---- bx = boldexpanded ----
+% ---- mediumsemiexpanded ----
-\DeclareFontShape{LY1}{Junicode-TLF}{bx}{sc}{
- <-> \Junicode@@scale Junicode-ExpBold-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{boldexpanded}{sc}{
- <-> alias * Junicode-TLF/bx/sc
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemiexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{boldexpanded}{n}{
- <-> alias * Junicode-TLF/bx/n
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemiexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{bx}{scit}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-TLF/mediumsemiexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{boldexpanded}{scit}{
- <-> alias * Junicode-TLF/bx/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/mediumsemiexpanded/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-tlf-ly1
-}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{boldexpanded}{it}{
- <-> alias * Junicode-TLF/bx/it
-}{}
+% ---- m = regular ----
-\DeclareFontShape{LY1}{Junicode-TLF}{bx}{scsl}{
- <-> ssub * Junicode-TLF/bx/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{boldexpanded}{scsl}{
- <-> ssub * Junicode-TLF/boldexpanded/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{regular}{it}{
+ <-> alias * Junicode-TLF/m/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{bx}{sl}{
- <-> ssub * Junicode-TLF/bx/it
+\DeclareFontShape{LY1}{Junicode-TLF}{m}{scit}{
+ <-> \Junicode@@scale Junicode-Italic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{boldexpanded}{sl}{
- <-> ssub * Junicode-TLF/boldexpanded/it
+\DeclareFontShape{LY1}{Junicode-TLF}{regular}{scit}{
+ <-> alias * Junicode-TLF/m/scit
}{}
+\DeclareFontShape{LY1}{Junicode-TLF}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-tlf-ly1
+}{}
-% ---- mediumcondensed ----
+\DeclareFontShape{LY1}{Junicode-TLF}{regular}{n}{
+ <-> alias * Junicode-TLF/m/n
+}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumcondensed}{scit}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{m}{sc}{
+ <-> \Junicode@@scale Junicode-Regular-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{regular}{sc}{
+ <-> alias * Junicode-TLF/m/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumcondensed}{sc}{
- <-> \Junicode@@scale Junicode-CondMedium-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{m}{sl}{
+ <-> ssub * Junicode-TLF/m/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{regular}{sl}{
+ <-> ssub * Junicode-TLF/regular/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumcondensed}{scsl}{
- <-> ssub * Junicode-TLF/mediumcondensed/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{m}{scsl}{
+ <-> ssub * Junicode-TLF/m/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumcondensed}{sl}{
- <-> ssub * Junicode-TLF/mediumcondensed/it
+\DeclareFontShape{LY1}{Junicode-TLF}{regular}{scsl}{
+ <-> ssub * Junicode-TLF/regular/scit
}{}
-% ---- b = bold ----
+% ---- lc = lightcondensed ----
-\DeclareFontShape{LY1}{Junicode-TLF}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{bold}{n}{
- <-> alias * Junicode-TLF/b/n
+\DeclareFontShape{LY1}{Junicode-TLF}{lightcondensed}{it}{
+ <-> alias * Junicode-TLF/lc/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{b}{sc}{
- <-> \Junicode@@scale Junicode-Bold-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{lc}{scit}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{bold}{sc}{
- <-> alias * Junicode-TLF/b/sc
+\DeclareFontShape{LY1}{Junicode-TLF}{lightcondensed}{scit}{
+ <-> alias * Junicode-TLF/lc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{bold}{it}{
- <-> alias * Junicode-TLF/b/it
+\DeclareFontShape{LY1}{Junicode-TLF}{lightcondensed}{n}{
+ <-> alias * Junicode-TLF/lc/n
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{b}{scit}{
- <-> \Junicode@@scale Junicode-BoldItalic-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{lc}{sc}{
+ <-> \Junicode@@scale Junicode-CondLight-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{bold}{scit}{
- <-> alias * Junicode-TLF/b/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{lightcondensed}{sc}{
+ <-> alias * Junicode-TLF/lc/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{b}{scsl}{
- <-> ssub * Junicode-TLF/b/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{lc}{sl}{
+ <-> ssub * Junicode-TLF/lc/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{bold}{scsl}{
- <-> ssub * Junicode-TLF/bold/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{lightcondensed}{sl}{
+ <-> ssub * Junicode-TLF/lightcondensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{b}{sl}{
- <-> ssub * Junicode-TLF/b/it
+\DeclareFontShape{LY1}{Junicode-TLF}{lc}{scsl}{
+ <-> ssub * Junicode-TLF/lc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{bold}{sl}{
- <-> ssub * Junicode-TLF/bold/it
+\DeclareFontShape{LY1}{Junicode-TLF}{lightcondensed}{scsl}{
+ <-> ssub * Junicode-TLF/lightcondensed/scit
}{}
-% ---- bsx = boldsemiexpanded ----
+% ---- lsc = lightsemicondensed ----
-\DeclareFontShape{LY1}{Junicode-TLF}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{boldsemiexpanded}{n}{
- <-> alias * Junicode-TLF/bsx/n
+\DeclareFontShape{LY1}{Junicode-TLF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-TLF/lsc/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{bsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpBold-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{lsc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{boldsemiexpanded}{sc}{
- <-> alias * Junicode-TLF/bsx/sc
+\DeclareFontShape{LY1}{Junicode-TLF}{lightsemicondensed}{scit}{
+ <-> alias * Junicode-TLF/lsc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{boldsemiexpanded}{it}{
- <-> alias * Junicode-TLF/bsx/it
+\DeclareFontShape{LY1}{Junicode-TLF}{lightsemicondensed}{n}{
+ <-> alias * Junicode-TLF/lsc/n
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{bsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{lsc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondLight-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{boldsemiexpanded}{scit}{
- <-> alias * Junicode-TLF/bsx/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{lightsemicondensed}{sc}{
+ <-> alias * Junicode-TLF/lsc/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{bsx}{scsl}{
- <-> ssub * Junicode-TLF/bsx/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{lsc}{sl}{
+ <-> ssub * Junicode-TLF/lsc/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{boldsemiexpanded}{scsl}{
- <-> ssub * Junicode-TLF/boldsemiexpanded/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-TLF/lightsemicondensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{bsx}{sl}{
- <-> ssub * Junicode-TLF/bsx/it
+\DeclareFontShape{LY1}{Junicode-TLF}{lsc}{scsl}{
+ <-> ssub * Junicode-TLF/lsc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-TLF/boldsemiexpanded/it
+\DeclareFontShape{LY1}{Junicode-TLF}{lightsemicondensed}{scsl}{
+ <-> ssub * Junicode-TLF/lightsemicondensed/scit
}{}
-% ---- lc = lightcondensed ----
+% ---- mediumexpanded ----
-\DeclareFontShape{LY1}{Junicode-TLF}{lc}{sc}{
- <-> \Junicode@@scale Junicode-CondLight-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-ExpMedium-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lightcondensed}{sc}{
- <-> alias * Junicode-TLF/lc/sc
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lightcondensed}{n}{
- <-> alias * Junicode-TLF/lc/n
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lc}{scit}{
- <-> \Junicode@@scale Junicode-CondLightItalic-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-TLF/mediumexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lightcondensed}{scit}{
- <-> alias * Junicode-TLF/lc/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{mediumexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/mediumexpanded/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-tlf-ly1
-}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lightcondensed}{it}{
- <-> alias * Junicode-TLF/lc/it
-}{}
+% ---- b = bold ----
-\DeclareFontShape{LY1}{Junicode-TLF}{lc}{scsl}{
- <-> ssub * Junicode-TLF/lc/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{b}{sc}{
+ <-> \Junicode@@scale Junicode-Bold-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lightcondensed}{scsl}{
- <-> ssub * Junicode-TLF/lightcondensed/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{bold}{sc}{
+ <-> alias * Junicode-TLF/b/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lc}{sl}{
- <-> ssub * Junicode-TLF/lc/it
+\DeclareFontShape{LY1}{Junicode-TLF}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{lightcondensed}{sl}{
- <-> ssub * Junicode-TLF/lightcondensed/it
+\DeclareFontShape{LY1}{Junicode-TLF}{bold}{n}{
+ <-> alias * Junicode-TLF/b/n
}{}
-
-% ---- sc = semicondensed ----
-
-\DeclareFontShape{LY1}{Junicode-TLF}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{b}{scit}{
+ <-> \Junicode@@scale Junicode-BoldItalic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semicondensed}{n}{
- <-> alias * Junicode-TLF/sc/n
+\DeclareFontShape{LY1}{Junicode-TLF}{bold}{scit}{
+ <-> alias * Junicode-TLF/b/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sc}{sc}{
- <-> \Junicode@@scale Junicode-SmCond-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semicondensed}{sc}{
- <-> alias * Junicode-TLF/sc/sc
+\DeclareFontShape{LY1}{Junicode-TLF}{bold}{it}{
+ <-> alias * Junicode-TLF/b/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{b}{sl}{
+ <-> ssub * Junicode-TLF/b/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semicondensed}{it}{
- <-> alias * Junicode-TLF/sc/it
+\DeclareFontShape{LY1}{Junicode-TLF}{bold}{sl}{
+ <-> ssub * Junicode-TLF/bold/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondItalic-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{b}{scsl}{
+ <-> ssub * Junicode-TLF/b/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semicondensed}{scit}{
- <-> alias * Junicode-TLF/sc/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{bold}{scsl}{
+ <-> ssub * Junicode-TLF/bold/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sc}{scsl}{
- <-> ssub * Junicode-TLF/sc/scit
-}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semicondensed}{scsl}{
- <-> ssub * Junicode-TLF/semicondensed/scit
-}{}
+% ---- x = expanded ----
-\DeclareFontShape{LY1}{Junicode-TLF}{sc}{sl}{
- <-> ssub * Junicode-TLF/sc/it
+\DeclareFontShape{LY1}{Junicode-TLF}{x}{sc}{
+ <-> \Junicode@@scale Junicode-Exp-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semicondensed}{sl}{
- <-> ssub * Junicode-TLF/semicondensed/it
+\DeclareFontShape{LY1}{Junicode-TLF}{expanded}{sc}{
+ <-> alias * Junicode-TLF/x/sc
}{}
+\DeclareFontShape{LY1}{Junicode-TLF}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-tlf-ly1
+}{}
-% ---- sb = semibold ----
+\DeclareFontShape{LY1}{Junicode-TLF}{expanded}{n}{
+ <-> alias * Junicode-TLF/x/n
+}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sb}{sc}{
- <-> \Junicode@@scale Junicode-SmBold-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{x}{scit}{
+ <-> \Junicode@@scale Junicode-ExpItalic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semibold}{sc}{
- <-> alias * Junicode-TLF/sb/sc
+\DeclareFontShape{LY1}{Junicode-TLF}{expanded}{scit}{
+ <-> alias * Junicode-TLF/x/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semibold}{n}{
- <-> alias * Junicode-TLF/sb/n
+\DeclareFontShape{LY1}{Junicode-TLF}{expanded}{it}{
+ <-> alias * Junicode-TLF/x/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sb}{scit}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{x}{sl}{
+ <-> ssub * Junicode-TLF/x/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semibold}{scit}{
- <-> alias * Junicode-TLF/sb/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{expanded}{sl}{
+ <-> ssub * Junicode-TLF/expanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{x}{scsl}{
+ <-> ssub * Junicode-TLF/x/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semibold}{it}{
- <-> alias * Junicode-TLF/sb/it
+\DeclareFontShape{LY1}{Junicode-TLF}{expanded}{scsl}{
+ <-> ssub * Junicode-TLF/expanded/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sb}{scsl}{
- <-> ssub * Junicode-TLF/sb/scit
+
+% ---- sbx = semiboldexpanded ----
+
+\DeclareFontShape{LY1}{Junicode-TLF}{sbx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semibold}{scsl}{
- <-> ssub * Junicode-TLF/semibold/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{semiboldexpanded}{sc}{
+ <-> alias * Junicode-TLF/sbx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sb}{sl}{
- <-> ssub * Junicode-TLF/sb/it
+\DeclareFontShape{LY1}{Junicode-TLF}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semibold}{sl}{
- <-> ssub * Junicode-TLF/semibold/it
+\DeclareFontShape{LY1}{Junicode-TLF}{semiboldexpanded}{it}{
+ <-> alias * Junicode-TLF/sbx/it
}{}
+\DeclareFontShape{LY1}{Junicode-TLF}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-tlf-ly1
+}{}
-% ---- mediumsemicondensed ----
+\DeclareFontShape{LY1}{Junicode-TLF}{semiboldexpanded}{n}{
+ <-> alias * Junicode-TLF/sbx/n
+}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemicondensed}{sc}{
- <-> \Junicode@@scale Junicode-SmCondMedium-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{sbx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{semiboldexpanded}{scit}{
+ <-> alias * Junicode-TLF/sbx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemicondensed}{scit}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{sbx}{sl}{
+ <-> ssub * Junicode-TLF/sbx/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-TLF/semiboldexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemicondensed}{scsl}{
- <-> ssub * Junicode-TLF/mediumsemicondensed/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{sbx}{scsl}{
+ <-> ssub * Junicode-TLF/sbx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-TLF/mediumsemicondensed/it
+\DeclareFontShape{LY1}{Junicode-TLF}{semiboldexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/semiboldexpanded/scit
}{}
-% ---- sbx = semiboldexpanded ----
+% ---- c = condensed ----
-\DeclareFontShape{LY1}{Junicode-TLF}{sbx}{scit}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{c}{scit}{
+ <-> \Junicode@@scale Junicode-CondItalic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semiboldexpanded}{scit}{
- <-> alias * Junicode-TLF/sbx/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{condensed}{scit}{
+ <-> alias * Junicode-TLF/c/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semiboldexpanded}{it}{
- <-> alias * Junicode-TLF/sbx/it
+\DeclareFontShape{LY1}{Junicode-TLF}{condensed}{n}{
+ <-> alias * Junicode-TLF/c/n
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sbx}{sc}{
- <-> \Junicode@@scale Junicode-ExpSmBold-tlf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semiboldexpanded}{sc}{
- <-> alias * Junicode-TLF/sbx/sc
+\DeclareFontShape{LY1}{Junicode-TLF}{condensed}{it}{
+ <-> alias * Junicode-TLF/c/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-tlf-ly1
+\DeclareFontShape{LY1}{Junicode-TLF}{c}{sc}{
+ <-> \Junicode@@scale Junicode-Cond-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semiboldexpanded}{n}{
- <-> alias * Junicode-TLF/sbx/n
+\DeclareFontShape{LY1}{Junicode-TLF}{condensed}{sc}{
+ <-> alias * Junicode-TLF/c/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sbx}{scsl}{
- <-> ssub * Junicode-TLF/sbx/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{c}{sl}{
+ <-> ssub * Junicode-TLF/c/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semiboldexpanded}{scsl}{
- <-> ssub * Junicode-TLF/semiboldexpanded/scit
+\DeclareFontShape{LY1}{Junicode-TLF}{condensed}{sl}{
+ <-> ssub * Junicode-TLF/condensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{sbx}{sl}{
- <-> ssub * Junicode-TLF/sbx/it
+\DeclareFontShape{LY1}{Junicode-TLF}{c}{scsl}{
+ <-> ssub * Junicode-TLF/c/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TLF}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-TLF/semiboldexpanded/it
+\DeclareFontShape{LY1}{Junicode-TLF}{condensed}{scsl}{
+ <-> ssub * Junicode-TLF/condensed/scit
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/LY1Junicode-TOsF.fd b/Master/texmf-dist/tex/latex/junicode/LY1Junicode-TOsF.fd
index b9e848b1a19..8465d1cb00a 100644
--- a/Master/texmf-dist/tex/latex/junicode/LY1Junicode-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/LY1Junicode-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{LY1Junicode-TOsF.fd}
- [2024/06/03 (autoinst) Font definitions for LY1/Junicode-TOsF.]
+ [2024/07/21 (autoinst) Font definitions for LY1/Junicode-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,204 +20,215 @@
\DeclareFontFamily{LY1}{Junicode-TOsF}{}
-% ---- medium ----
+% ---- lc = lightcondensed ----
-\DeclareFontShape{LY1}{Junicode-TOsF}{medium}{scit}{
- <-> \Junicode@@scale Junicode-MediumItalic-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{lc}{sc}{
+ <-> \Junicode@@scale Junicode-CondLight-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{lightcondensed}{sc}{
+ <-> alias * Junicode-TOsF/lc/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{medium}{sc}{
- <-> \Junicode@@scale Junicode-Medium-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{medium}{n}{
- <-> \Junicode@@scale Junicode-Medium-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{lightcondensed}{it}{
+ <-> alias * Junicode-TOsF/lc/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{medium}{scsl}{
- <-> ssub * Junicode-TOsF/medium/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{lc}{scit}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{medium}{sl}{
- <-> ssub * Junicode-TOsF/medium/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{lightcondensed}{scit}{
+ <-> alias * Junicode-TOsF/lc/scit
}{}
-
-% ---- lsc = lightsemicondensed ----
-
-\DeclareFontShape{LY1}{Junicode-TOsF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lightsemicondensed}{it}{
- <-> alias * Junicode-TOsF/lsc/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{lightcondensed}{n}{
+ <-> alias * Junicode-TOsF/lc/n
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lsc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{lc}{sl}{
+ <-> ssub * Junicode-TOsF/lc/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lightsemicondensed}{scit}{
- <-> alias * Junicode-TOsF/lsc/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{lightcondensed}{sl}{
+ <-> ssub * Junicode-TOsF/lightcondensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{lc}{scsl}{
+ <-> ssub * Junicode-TOsF/lc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lightsemicondensed}{n}{
- <-> alias * Junicode-TOsF/lsc/n
+\DeclareFontShape{LY1}{Junicode-TOsF}{lightcondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/lightcondensed/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lsc}{sc}{
- <-> \Junicode@@scale Junicode-SmCondLight-tosf-sc-ly1
+
+% ---- medium ----
+
+\DeclareFontShape{LY1}{Junicode-TOsF}{medium}{sc}{
+ <-> \Junicode@@scale Junicode-Medium-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lightsemicondensed}{sc}{
- <-> alias * Junicode-TOsF/lsc/sc
+\DeclareFontShape{LY1}{Junicode-TOsF}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lsc}{scsl}{
- <-> ssub * Junicode-TOsF/lsc/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{medium}{scit}{
+ <-> \Junicode@@scale Junicode-MediumItalic-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lightsemicondensed}{scsl}{
- <-> ssub * Junicode-TOsF/lightsemicondensed/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{medium}{n}{
+ <-> \Junicode@@scale Junicode-Medium-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lsc}{sl}{
- <-> ssub * Junicode-TOsF/lsc/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{medium}{sl}{
+ <-> ssub * Junicode-TOsF/medium/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-TOsF/lightsemicondensed/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{medium}{scsl}{
+ <-> ssub * Junicode-TOsF/medium/scit
}{}
-% ---- m = regular ----
+% ---- bx = boldexpanded ----
-\DeclareFontShape{LY1}{Junicode-TOsF}{m}{sc}{
- <-> \Junicode@@scale Junicode-Regular-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{bx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{regular}{sc}{
- <-> alias * Junicode-TOsF/m/sc
+\DeclareFontShape{LY1}{Junicode-TOsF}{boldexpanded}{scit}{
+ <-> alias * Junicode-TOsF/bx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{regular}{n}{
- <-> alias * Junicode-TOsF/m/n
+\DeclareFontShape{LY1}{Junicode-TOsF}{boldexpanded}{n}{
+ <-> alias * Junicode-TOsF/bx/n
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{m}{scit}{
- <-> \Junicode@@scale Junicode-Italic-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{regular}{scit}{
- <-> alias * Junicode-TOsF/m/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{boldexpanded}{it}{
+ <-> alias * Junicode-TOsF/bx/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{bx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpBold-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{regular}{it}{
- <-> alias * Junicode-TOsF/m/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{boldexpanded}{sc}{
+ <-> alias * Junicode-TOsF/bx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{m}{scsl}{
- <-> ssub * Junicode-TOsF/m/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{bx}{sl}{
+ <-> ssub * Junicode-TOsF/bx/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{regular}{scsl}{
- <-> ssub * Junicode-TOsF/regular/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{boldexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/boldexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{m}{sl}{
- <-> ssub * Junicode-TOsF/m/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{bx}{scsl}{
+ <-> ssub * Junicode-TOsF/bx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{regular}{sl}{
- <-> ssub * Junicode-TOsF/regular/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{boldexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/boldexpanded/scit
}{}
-% ---- bx = boldexpanded ----
+% ---- mediumsemiexpanded ----
-\DeclareFontShape{LY1}{Junicode-TOsF}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{boldexpanded}{it}{
- <-> alias * Junicode-TOsF/bx/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemiexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{bx}{scit}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{boldexpanded}{scit}{
- <-> alias * Junicode-TOsF/bx/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemiexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/mediumsemiexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{boldexpanded}{n}{
- <-> alias * Junicode-TOsF/bx/n
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/mediumsemiexpanded/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{bx}{sc}{
- <-> \Junicode@@scale Junicode-ExpBold-tosf-sc-ly1
+
+% ---- m = regular ----
+
+\DeclareFontShape{LY1}{Junicode-TOsF}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{boldexpanded}{sc}{
- <-> alias * Junicode-TOsF/bx/sc
+\DeclareFontShape{LY1}{Junicode-TOsF}{regular}{it}{
+ <-> alias * Junicode-TOsF/m/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{bx}{scsl}{
- <-> ssub * Junicode-TOsF/bx/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{boldexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/boldexpanded/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{regular}{n}{
+ <-> alias * Junicode-TOsF/m/n
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{bx}{sl}{
- <-> ssub * Junicode-TOsF/bx/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{m}{scit}{
+ <-> \Junicode@@scale Junicode-Italic-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{boldexpanded}{sl}{
- <-> ssub * Junicode-TOsF/boldexpanded/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{regular}{scit}{
+ <-> alias * Junicode-TOsF/m/scit
}{}
+\DeclareFontShape{LY1}{Junicode-TOsF}{m}{sc}{
+ <-> \Junicode@@scale Junicode-Regular-tosf-sc-ly1
+}{}
-% ---- l = light ----
+\DeclareFontShape{LY1}{Junicode-TOsF}{regular}{sc}{
+ <-> alias * Junicode-TOsF/m/sc
+}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{m}{sl}{
+ <-> ssub * Junicode-TOsF/m/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{light}{n}{
- <-> alias * Junicode-TOsF/l/n
+\DeclareFontShape{LY1}{Junicode-TOsF}{regular}{sl}{
+ <-> ssub * Junicode-TOsF/regular/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{l}{sc}{
- <-> \Junicode@@scale Junicode-Light-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{m}{scsl}{
+ <-> ssub * Junicode-TOsF/m/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{light}{sc}{
- <-> alias * Junicode-TOsF/l/sc
+\DeclareFontShape{LY1}{Junicode-TOsF}{regular}{scsl}{
+ <-> ssub * Junicode-TOsF/regular/scit
}{}
+
+% ---- l = light ----
+
\DeclareFontShape{LY1}{Junicode-TOsF}{l}{it}{
<-> \Junicode@@scale Junicode-LightItalic-tosf-ly1
}{}
@@ -234,12 +245,20 @@
<-> alias * Junicode-TOsF/l/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{l}{scsl}{
- <-> ssub * Junicode-TOsF/l/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{light}{scsl}{
- <-> ssub * Junicode-TOsF/light/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{light}{n}{
+ <-> alias * Junicode-TOsF/l/n
+}{}
+
+\DeclareFontShape{LY1}{Junicode-TOsF}{l}{sc}{
+ <-> \Junicode@@scale Junicode-Light-tosf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{Junicode-TOsF}{light}{sc}{
+ <-> alias * Junicode-TOsF/l/sc
}{}
\DeclareFontShape{LY1}{Junicode-TOsF}{l}{sl}{
@@ -250,283 +269,275 @@
<-> ssub * Junicode-TOsF/light/it
}{}
-
-% ---- mediumsemiexpanded ----
-
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{l}{scsl}{
+ <-> ssub * Junicode-TOsF/l/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemiexpanded}{scit}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{light}{scsl}{
+ <-> ssub * Junicode-TOsF/light/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-tosf-ly1
+
+% ---- sx = semiexpanded ----
+
+\DeclareFontShape{LY1}{Junicode-TOsF}{sx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExp-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemiexpanded}{sc}{
- <-> \Junicode@@scale Junicode-SmExpMedium-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{semiexpanded}{sc}{
+ <-> alias * Junicode-TOsF/sx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemiexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/mediumsemiexpanded/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-TOsF/mediumsemiexpanded/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{semiexpanded}{it}{
+ <-> alias * Junicode-TOsF/sx/it
}{}
+\DeclareFontShape{LY1}{Junicode-TOsF}{sx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-tosf-sc-ly1
+}{}
-% ---- mediumexpanded ----
+\DeclareFontShape{LY1}{Junicode-TOsF}{semiexpanded}{scit}{
+ <-> alias * Junicode-TOsF/sx/scit
+}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumexpanded}{scit}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{semiexpanded}{n}{
+ <-> alias * Junicode-TOsF/sx/n
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumexpanded}{sc}{
- <-> \Junicode@@scale Junicode-ExpMedium-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{sx}{sl}{
+ <-> ssub * Junicode-TOsF/sx/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/semiexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/mediumexpanded/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{sx}{scsl}{
+ <-> ssub * Junicode-TOsF/sx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-TOsF/mediumexpanded/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{semiexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/semiexpanded/scit
}{}
-% ---- sbsx = semiboldsemiexpanded ----
+% ---- mediumsemicondensed ----
-\DeclareFontShape{LY1}{Junicode-TOsF}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-TOsF/sbsx/n
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemicondensed}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sbsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldsemiexpanded}{sc}{
- <-> alias * Junicode-TOsF/sbsx/sc
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemicondensed}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-TOsF/mediumsemicondensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-TOsF/sbsx/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemicondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/mediumsemicondensed/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sbsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tosf-sc-ly1
+
+% ---- mediumcondensed ----
+
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldsemiexpanded}{scit}{
- <-> alias * Junicode-TOsF/sbsx/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumcondensed}{scit}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sbsx}{scsl}{
- <-> ssub * Junicode-TOsF/sbsx/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldsemiexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/semiboldsemiexpanded/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumcondensed}{sc}{
+ <-> \Junicode@@scale Junicode-CondMedium-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sbsx}{sl}{
- <-> ssub * Junicode-TOsF/sbsx/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-TOsF/mediumcondensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-TOsF/semiboldsemiexpanded/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumcondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/mediumcondensed/scit
}{}
-% ---- x = expanded ----
+% ---- sb = semibold ----
-\DeclareFontShape{LY1}{Junicode-TOsF}{x}{sc}{
- <-> \Junicode@@scale Junicode-Exp-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{expanded}{sc}{
- <-> alias * Junicode-TOsF/x/sc
+\DeclareFontShape{LY1}{Junicode-TOsF}{semibold}{it}{
+ <-> alias * Junicode-TOsF/sb/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{sb}{scit}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{expanded}{n}{
- <-> alias * Junicode-TOsF/x/n
+\DeclareFontShape{LY1}{Junicode-TOsF}{semibold}{scit}{
+ <-> alias * Junicode-TOsF/sb/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{x}{scit}{
- <-> \Junicode@@scale Junicode-ExpItalic-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{expanded}{scit}{
- <-> alias * Junicode-TOsF/x/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{semibold}{n}{
+ <-> alias * Junicode-TOsF/sb/n
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{sb}{sc}{
+ <-> \Junicode@@scale Junicode-SmBold-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{expanded}{it}{
- <-> alias * Junicode-TOsF/x/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{semibold}{sc}{
+ <-> alias * Junicode-TOsF/sb/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{x}{scsl}{
- <-> ssub * Junicode-TOsF/x/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{sb}{sl}{
+ <-> ssub * Junicode-TOsF/sb/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{expanded}{scsl}{
- <-> ssub * Junicode-TOsF/expanded/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{semibold}{sl}{
+ <-> ssub * Junicode-TOsF/semibold/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{x}{sl}{
- <-> ssub * Junicode-TOsF/x/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{sb}{scsl}{
+ <-> ssub * Junicode-TOsF/sb/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{expanded}{sl}{
- <-> ssub * Junicode-TOsF/expanded/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{semibold}{scsl}{
+ <-> ssub * Junicode-TOsF/semibold/scit
}{}
-% ---- c = condensed ----
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{LY1}{Junicode-TOsF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{condensed}{it}{
- <-> alias * Junicode-TOsF/c/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-TOsF/sbsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{c}{scit}{
- <-> \Junicode@@scale Junicode-CondItalic-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{sbsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{condensed}{scit}{
- <-> alias * Junicode-TOsF/c/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldsemiexpanded}{scit}{
+ <-> alias * Junicode-TOsF/sbsx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{condensed}{n}{
- <-> alias * Junicode-TOsF/c/n
+\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-TOsF/sbsx/n
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{c}{sc}{
- <-> \Junicode@@scale Junicode-Cond-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{sbsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{condensed}{sc}{
- <-> alias * Junicode-TOsF/c/sc
+\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldsemiexpanded}{sc}{
+ <-> alias * Junicode-TOsF/sbsx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{c}{scsl}{
- <-> ssub * Junicode-TOsF/c/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{sbsx}{sl}{
+ <-> ssub * Junicode-TOsF/sbsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{condensed}{scsl}{
- <-> ssub * Junicode-TOsF/condensed/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/semiboldsemiexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{c}{sl}{
- <-> ssub * Junicode-TOsF/c/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{sbsx}{scsl}{
+ <-> ssub * Junicode-TOsF/sbsx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{condensed}{sl}{
- <-> ssub * Junicode-TOsF/condensed/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/semiboldsemiexpanded/scit
}{}
-% ---- sx = semiexpanded ----
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{LY1}{Junicode-TOsF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{bsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semiexpanded}{it}{
- <-> alias * Junicode-TOsF/sx/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{boldsemiexpanded}{scit}{
+ <-> alias * Junicode-TOsF/bsx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpItalic-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semiexpanded}{scit}{
- <-> alias * Junicode-TOsF/sx/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-TOsF/bsx/n
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semiexpanded}{n}{
- <-> alias * Junicode-TOsF/sx/n
+\DeclareFontShape{LY1}{Junicode-TOsF}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-TOsF/bsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sx}{sc}{
- <-> \Junicode@@scale Junicode-SmExp-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{bsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpBold-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semiexpanded}{sc}{
- <-> alias * Junicode-TOsF/sx/sc
+\DeclareFontShape{LY1}{Junicode-TOsF}{boldsemiexpanded}{sc}{
+ <-> alias * Junicode-TOsF/bsx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sx}{scsl}{
- <-> ssub * Junicode-TOsF/sx/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{bsx}{sl}{
+ <-> ssub * Junicode-TOsF/bsx/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semiexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/semiexpanded/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/boldsemiexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sx}{sl}{
- <-> ssub * Junicode-TOsF/sx/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{bsx}{scsl}{
+ <-> ssub * Junicode-TOsF/bsx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semiexpanded}{sl}{
- <-> ssub * Junicode-TOsF/semiexpanded/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{boldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/boldsemiexpanded/scit
}{}
% ---- sc = semicondensed ----
-\DeclareFontShape{LY1}{Junicode-TOsF}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-tosf-ly1
-}{}
-
-\DeclareFontShape{LY1}{Junicode-TOsF}{semicondensed}{n}{
- <-> alias * Junicode-TOsF/sc/n
-}{}
-
-\DeclareFontShape{LY1}{Junicode-TOsF}{sc}{sc}{
- <-> \Junicode@@scale Junicode-SmCond-tosf-sc-ly1
-}{}
-
-\DeclareFontShape{LY1}{Junicode-TOsF}{semicondensed}{sc}{
- <-> alias * Junicode-TOsF/sc/sc
-}{}
-
\DeclareFontShape{LY1}{Junicode-TOsF}{sc}{it}{
<-> \Junicode@@scale Junicode-SmCondItalic-tosf-ly1
}{}
@@ -535,6 +546,14 @@
<-> alias * Junicode-TOsF/sc/it
}{}
+\DeclareFontShape{LY1}{Junicode-TOsF}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-tosf-ly1
+}{}
+
+\DeclareFontShape{LY1}{Junicode-TOsF}{semicondensed}{n}{
+ <-> alias * Junicode-TOsF/sc/n
+}{}
+
\DeclareFontShape{LY1}{Junicode-TOsF}{sc}{scit}{
<-> \Junicode@@scale Junicode-SmCondItalic-tosf-sc-ly1
}{}
@@ -543,12 +562,12 @@
<-> alias * Junicode-TOsF/sc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sc}{scsl}{
- <-> ssub * Junicode-TOsF/sc/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{sc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCond-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semicondensed}{scsl}{
- <-> ssub * Junicode-TOsF/semicondensed/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{semicondensed}{sc}{
+ <-> alias * Junicode-TOsF/sc/sc
}{}
\DeclareFontShape{LY1}{Junicode-TOsF}{sc}{sl}{
@@ -559,313 +578,294 @@
<-> ssub * Junicode-TOsF/semicondensed/it
}{}
-
-% ---- sb = semibold ----
-
-\DeclareFontShape{LY1}{Junicode-TOsF}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{sc}{scsl}{
+ <-> ssub * Junicode-TOsF/sc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semibold}{n}{
- <-> alias * Junicode-TOsF/sb/n
+\DeclareFontShape{LY1}{Junicode-TOsF}{semicondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/semicondensed/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sb}{sc}{
- <-> \Junicode@@scale Junicode-SmBold-tosf-sc-ly1
-}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semibold}{sc}{
- <-> alias * Junicode-TOsF/sb/sc
-}{}
+% ---- c = condensed ----
-\DeclareFontShape{LY1}{Junicode-TOsF}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{c}{sc}{
+ <-> \Junicode@@scale Junicode-Cond-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semibold}{it}{
- <-> alias * Junicode-TOsF/sb/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{condensed}{sc}{
+ <-> alias * Junicode-TOsF/c/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sb}{scit}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semibold}{scit}{
- <-> alias * Junicode-TOsF/sb/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{condensed}{it}{
+ <-> alias * Junicode-TOsF/c/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sb}{scsl}{
- <-> ssub * Junicode-TOsF/sb/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semibold}{scsl}{
- <-> ssub * Junicode-TOsF/semibold/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{condensed}{n}{
+ <-> alias * Junicode-TOsF/c/n
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sb}{sl}{
- <-> ssub * Junicode-TOsF/sb/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{c}{scit}{
+ <-> \Junicode@@scale Junicode-CondItalic-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semibold}{sl}{
- <-> ssub * Junicode-TOsF/semibold/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{condensed}{scit}{
+ <-> alias * Junicode-TOsF/c/scit
}{}
-
-% ---- bsx = boldsemiexpanded ----
-
-\DeclareFontShape{LY1}{Junicode-TOsF}{bsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{c}{sl}{
+ <-> ssub * Junicode-TOsF/c/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{boldsemiexpanded}{scit}{
- <-> alias * Junicode-TOsF/bsx/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{condensed}{sl}{
+ <-> ssub * Junicode-TOsF/condensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{c}{scsl}{
+ <-> ssub * Junicode-TOsF/c/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{boldsemiexpanded}{it}{
- <-> alias * Junicode-TOsF/bsx/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{condensed}{scsl}{
+ <-> ssub * Junicode-TOsF/condensed/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{bsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpBold-tosf-sc-ly1
-}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{boldsemiexpanded}{sc}{
- <-> alias * Junicode-TOsF/bsx/sc
-}{}
+% ---- sbx = semiboldexpanded ----
-\DeclareFontShape{LY1}{Junicode-TOsF}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{sbx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{boldsemiexpanded}{n}{
- <-> alias * Junicode-TOsF/bsx/n
+\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldexpanded}{sc}{
+ <-> alias * Junicode-TOsF/sbx/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{bsx}{scsl}{
- <-> ssub * Junicode-TOsF/bsx/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{boldsemiexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/boldsemiexpanded/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldexpanded}{it}{
+ <-> alias * Junicode-TOsF/sbx/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{bsx}{sl}{
- <-> ssub * Junicode-TOsF/bsx/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-TOsF/boldsemiexpanded/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldexpanded}{n}{
+ <-> alias * Junicode-TOsF/sbx/n
}{}
-
-% ---- lc = lightcondensed ----
-
-\DeclareFontShape{LY1}{Junicode-TOsF}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{sbx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lightcondensed}{it}{
- <-> alias * Junicode-TOsF/lc/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldexpanded}{scit}{
+ <-> alias * Junicode-TOsF/sbx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lc}{scit}{
- <-> \Junicode@@scale Junicode-CondLightItalic-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{sbx}{sl}{
+ <-> ssub * Junicode-TOsF/sbx/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lightcondensed}{scit}{
- <-> alias * Junicode-TOsF/lc/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/semiboldexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{sbx}{scsl}{
+ <-> ssub * Junicode-TOsF/sbx/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lightcondensed}{n}{
- <-> alias * Junicode-TOsF/lc/n
+\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/semiboldexpanded/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lc}{sc}{
- <-> \Junicode@@scale Junicode-CondLight-tosf-sc-ly1
-}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lightcondensed}{sc}{
- <-> alias * Junicode-TOsF/lc/sc
-}{}
+% ---- b = bold ----
-\DeclareFontShape{LY1}{Junicode-TOsF}{lc}{scsl}{
- <-> ssub * Junicode-TOsF/lc/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lightcondensed}{scsl}{
- <-> ssub * Junicode-TOsF/lightcondensed/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{bold}{n}{
+ <-> alias * Junicode-TOsF/b/n
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lc}{sl}{
- <-> ssub * Junicode-TOsF/lc/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{b}{scit}{
+ <-> \Junicode@@scale Junicode-BoldItalic-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{lightcondensed}{sl}{
- <-> ssub * Junicode-TOsF/lightcondensed/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{bold}{scit}{
+ <-> alias * Junicode-TOsF/b/scit
}{}
-
-% ---- sbx = semiboldexpanded ----
-
-\DeclareFontShape{LY1}{Junicode-TOsF}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldexpanded}{it}{
- <-> alias * Junicode-TOsF/sbx/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{bold}{it}{
+ <-> alias * Junicode-TOsF/b/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sbx}{scit}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{b}{sc}{
+ <-> \Junicode@@scale Junicode-Bold-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldexpanded}{scit}{
- <-> alias * Junicode-TOsF/sbx/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{bold}{sc}{
+ <-> alias * Junicode-TOsF/b/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{b}{sl}{
+ <-> ssub * Junicode-TOsF/b/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldexpanded}{n}{
- <-> alias * Junicode-TOsF/sbx/n
+\DeclareFontShape{LY1}{Junicode-TOsF}{bold}{sl}{
+ <-> ssub * Junicode-TOsF/bold/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sbx}{sc}{
- <-> \Junicode@@scale Junicode-ExpSmBold-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{b}{scsl}{
+ <-> ssub * Junicode-TOsF/b/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldexpanded}{sc}{
- <-> alias * Junicode-TOsF/sbx/sc
+\DeclareFontShape{LY1}{Junicode-TOsF}{bold}{scsl}{
+ <-> ssub * Junicode-TOsF/bold/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sbx}{scsl}{
- <-> ssub * Junicode-TOsF/sbx/scit
+
+% ---- x = expanded ----
+
+\DeclareFontShape{LY1}{Junicode-TOsF}{x}{sc}{
+ <-> \Junicode@@scale Junicode-Exp-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/semiboldexpanded/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{expanded}{sc}{
+ <-> alias * Junicode-TOsF/x/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{sbx}{sl}{
- <-> ssub * Junicode-TOsF/sbx/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-TOsF/semiboldexpanded/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{expanded}{n}{
+ <-> alias * Junicode-TOsF/x/n
}{}
+\DeclareFontShape{LY1}{Junicode-TOsF}{x}{scit}{
+ <-> \Junicode@@scale Junicode-ExpItalic-tosf-sc-ly1
+}{}
-% ---- mediumsemicondensed ----
+\DeclareFontShape{LY1}{Junicode-TOsF}{expanded}{scit}{
+ <-> alias * Junicode-TOsF/x/scit
+}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemicondensed}{sc}{
- <-> \Junicode@@scale Junicode-SmCondMedium-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{expanded}{it}{
+ <-> alias * Junicode-TOsF/x/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemicondensed}{scit}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{x}{sl}{
+ <-> ssub * Junicode-TOsF/x/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{expanded}{sl}{
+ <-> ssub * Junicode-TOsF/expanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemicondensed}{scsl}{
- <-> ssub * Junicode-TOsF/mediumsemicondensed/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{x}{scsl}{
+ <-> ssub * Junicode-TOsF/x/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-TOsF/mediumsemicondensed/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{expanded}{scsl}{
+ <-> ssub * Junicode-TOsF/expanded/scit
}{}
-% ---- mediumcondensed ----
+% ---- mediumexpanded ----
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumcondensed}{scit}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-ExpMedium-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumcondensed}{sc}{
- <-> \Junicode@@scale Junicode-CondMedium-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumcondensed}{scsl}{
- <-> ssub * Junicode-TOsF/mediumcondensed/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/mediumexpanded/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{mediumcondensed}{sl}{
- <-> ssub * Junicode-TOsF/mediumcondensed/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{mediumexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/mediumexpanded/scit
}{}
-% ---- b = bold ----
+% ---- lsc = lightsemicondensed ----
-\DeclareFontShape{LY1}{Junicode-TOsF}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{bold}{n}{
- <-> alias * Junicode-TOsF/b/n
+\DeclareFontShape{LY1}{Junicode-TOsF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-TOsF/lsc/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{b}{sc}{
- <-> \Junicode@@scale Junicode-Bold-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{lsc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{bold}{sc}{
- <-> alias * Junicode-TOsF/b/sc
+\DeclareFontShape{LY1}{Junicode-TOsF}{lightsemicondensed}{scit}{
+ <-> alias * Junicode-TOsF/lsc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-tosf-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-tosf-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{bold}{it}{
- <-> alias * Junicode-TOsF/b/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{lightsemicondensed}{n}{
+ <-> alias * Junicode-TOsF/lsc/n
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{b}{scit}{
- <-> \Junicode@@scale Junicode-BoldItalic-tosf-sc-ly1
+\DeclareFontShape{LY1}{Junicode-TOsF}{lsc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondLight-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{bold}{scit}{
- <-> alias * Junicode-TOsF/b/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{lightsemicondensed}{sc}{
+ <-> alias * Junicode-TOsF/lsc/sc
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{b}{scsl}{
- <-> ssub * Junicode-TOsF/b/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{lsc}{sl}{
+ <-> ssub * Junicode-TOsF/lsc/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{bold}{scsl}{
- <-> ssub * Junicode-TOsF/bold/scit
+\DeclareFontShape{LY1}{Junicode-TOsF}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-TOsF/lightsemicondensed/it
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{b}{sl}{
- <-> ssub * Junicode-TOsF/b/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{lsc}{scsl}{
+ <-> ssub * Junicode-TOsF/lsc/scit
}{}
-\DeclareFontShape{LY1}{Junicode-TOsF}{bold}{sl}{
- <-> ssub * Junicode-TOsF/bold/it
+\DeclareFontShape{LY1}{Junicode-TOsF}{lightsemicondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/lightsemicondensed/scit
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/OT1Junicode-Inf.fd b/Master/texmf-dist/tex/latex/junicode/OT1Junicode-Inf.fd
index bb6dc563984..10a023e6710 100644
--- a/Master/texmf-dist/tex/latex/junicode/OT1Junicode-Inf.fd
+++ b/Master/texmf-dist/tex/latex/junicode/OT1Junicode-Inf.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{OT1Junicode-Inf.fd}
- [2024/06/03 (autoinst) Font definitions for OT1/Junicode-Inf.]
+ [2024/07/21 (autoinst) Font definitions for OT1/Junicode-Inf.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,111 +20,99 @@
\DeclareFontFamily{OT1}{Junicode-Inf}{}
-% ---- sb = semibold ----
-
-\DeclareFontShape{OT1}{Junicode-Inf}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-inf-ot1
-}{}
+% ---- lsc = lightsemicondensed ----
-\DeclareFontShape{OT1}{Junicode-Inf}{semibold}{it}{
- <-> alias * Junicode-Inf/sb/it
+\DeclareFontShape{OT1}{Junicode-Inf}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{lightsemicondensed}{n}{
+ <-> alias * Junicode-Inf/lsc/n
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{semibold}{n}{
- <-> alias * Junicode-Inf/sb/n
+\DeclareFontShape{OT1}{Junicode-Inf}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{sb}{sl}{
- <-> ssub * Junicode-Inf/sb/it
+\DeclareFontShape{OT1}{Junicode-Inf}{lightsemicondensed}{it}{
+ <-> alias * Junicode-Inf/lsc/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{semibold}{sl}{
- <-> ssub * Junicode-Inf/semibold/it
+\DeclareFontShape{OT1}{Junicode-Inf}{lsc}{sl}{
+ <-> ssub * Junicode-Inf/lsc/it
}{}
-
-% ---- sc = semicondensed ----
-
-\DeclareFontShape{OT1}{Junicode-Inf}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-Inf/lightsemicondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{semicondensed}{n}{
- <-> alias * Junicode-Inf/sc/n
-}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-inf-ot1
-}{}
+% ---- mediumexpanded ----
-\DeclareFontShape{OT1}{Junicode-Inf}{semicondensed}{it}{
- <-> alias * Junicode-Inf/sc/it
+\DeclareFontShape{OT1}{Junicode-Inf}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{sc}{sl}{
- <-> ssub * Junicode-Inf/sc/it
+\DeclareFontShape{OT1}{Junicode-Inf}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{semicondensed}{sl}{
- <-> ssub * Junicode-Inf/semicondensed/it
+\DeclareFontShape{OT1}{Junicode-Inf}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-Inf/mediumexpanded/it
}{}
-% ---- bsx = boldsemiexpanded ----
+% ---- b = bold ----
-\DeclareFontShape{OT1}{Junicode-Inf}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{boldsemiexpanded}{n}{
- <-> alias * Junicode-Inf/bsx/n
+\DeclareFontShape{OT1}{Junicode-Inf}{bold}{it}{
+ <-> alias * Junicode-Inf/b/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{boldsemiexpanded}{it}{
- <-> alias * Junicode-Inf/bsx/it
+\DeclareFontShape{OT1}{Junicode-Inf}{bold}{n}{
+ <-> alias * Junicode-Inf/b/n
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{bsx}{sl}{
- <-> ssub * Junicode-Inf/bsx/it
+\DeclareFontShape{OT1}{Junicode-Inf}{b}{sl}{
+ <-> ssub * Junicode-Inf/b/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-Inf/boldsemiexpanded/it
+\DeclareFontShape{OT1}{Junicode-Inf}{bold}{sl}{
+ <-> ssub * Junicode-Inf/bold/it
}{}
-% ---- lc = lightcondensed ----
+% ---- x = expanded ----
-\DeclareFontShape{OT1}{Junicode-Inf}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{lightcondensed}{it}{
- <-> alias * Junicode-Inf/lc/it
+\DeclareFontShape{OT1}{Junicode-Inf}{expanded}{it}{
+ <-> alias * Junicode-Inf/x/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{lightcondensed}{n}{
- <-> alias * Junicode-Inf/lc/n
+\DeclareFontShape{OT1}{Junicode-Inf}{expanded}{n}{
+ <-> alias * Junicode-Inf/x/n
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{lc}{sl}{
- <-> ssub * Junicode-Inf/lc/it
+\DeclareFontShape{OT1}{Junicode-Inf}{x}{sl}{
+ <-> ssub * Junicode-Inf/x/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{lightcondensed}{sl}{
- <-> ssub * Junicode-Inf/lightcondensed/it
+\DeclareFontShape{OT1}{Junicode-Inf}{expanded}{sl}{
+ <-> ssub * Junicode-Inf/expanded/it
}{}
@@ -155,156 +143,168 @@
}{}
-% ---- mediumsemicondensed ----
+% ---- c = condensed ----
-\DeclareFontShape{OT1}{Junicode-Inf}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{condensed}{it}{
+ <-> alias * Junicode-Inf/c/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-Inf/mediumsemicondensed/it
+\DeclareFontShape{OT1}{Junicode-Inf}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-inf-ot1
}{}
-
-% ---- mediumcondensed ----
-
-\DeclareFontShape{OT1}{Junicode-Inf}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{condensed}{n}{
+ <-> alias * Junicode-Inf/c/n
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{c}{sl}{
+ <-> ssub * Junicode-Inf/c/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{mediumcondensed}{sl}{
- <-> ssub * Junicode-Inf/mediumcondensed/it
+\DeclareFontShape{OT1}{Junicode-Inf}{condensed}{sl}{
+ <-> ssub * Junicode-Inf/condensed/it
}{}
-% ---- b = bold ----
+% ---- sc = semicondensed ----
-\DeclareFontShape{OT1}{Junicode-Inf}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{bold}{it}{
- <-> alias * Junicode-Inf/b/it
+\DeclareFontShape{OT1}{Junicode-Inf}{semicondensed}{it}{
+ <-> alias * Junicode-Inf/sc/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{bold}{n}{
- <-> alias * Junicode-Inf/b/n
+\DeclareFontShape{OT1}{Junicode-Inf}{semicondensed}{n}{
+ <-> alias * Junicode-Inf/sc/n
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{b}{sl}{
- <-> ssub * Junicode-Inf/b/it
+\DeclareFontShape{OT1}{Junicode-Inf}{sc}{sl}{
+ <-> ssub * Junicode-Inf/sc/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{bold}{sl}{
- <-> ssub * Junicode-Inf/bold/it
+\DeclareFontShape{OT1}{Junicode-Inf}{semicondensed}{sl}{
+ <-> ssub * Junicode-Inf/semicondensed/it
}{}
-% ---- medium ----
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{OT1}{Junicode-Inf}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{medium}{n}{
- <-> \Junicode@@scale Junicode-Medium-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-Inf/bsx/n
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{medium}{sl}{
- <-> ssub * Junicode-Inf/medium/it
+\DeclareFontShape{OT1}{Junicode-Inf}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-inf-ot1
}{}
+\DeclareFontShape{OT1}{Junicode-Inf}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-Inf/bsx/it
+}{}
-% ---- lsc = lightsemicondensed ----
+\DeclareFontShape{OT1}{Junicode-Inf}{bsx}{sl}{
+ <-> ssub * Junicode-Inf/bsx/it
+}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-Inf/boldsemiexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{lightsemicondensed}{it}{
- <-> alias * Junicode-Inf/lsc/it
+
+% ---- sbsx = semiboldsemiexpanded ----
+
+\DeclareFontShape{OT1}{Junicode-Inf}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-Inf/sbsx/n
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{lightsemicondensed}{n}{
- <-> alias * Junicode-Inf/lsc/n
+\DeclareFontShape{OT1}{Junicode-Inf}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{lsc}{sl}{
- <-> ssub * Junicode-Inf/lsc/it
+\DeclareFontShape{OT1}{Junicode-Inf}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-Inf/sbsx/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-Inf/lightsemicondensed/it
+\DeclareFontShape{OT1}{Junicode-Inf}{sbsx}{sl}{
+ <-> ssub * Junicode-Inf/sbsx/it
}{}
+\DeclareFontShape{OT1}{Junicode-Inf}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-Inf/semiboldsemiexpanded/it
+}{}
-% ---- m = regular ----
-\DeclareFontShape{OT1}{Junicode-Inf}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-inf-ot1
-}{}
+% ---- mediumcondensed ----
-\DeclareFontShape{OT1}{Junicode-Inf}{regular}{it}{
- <-> alias * Junicode-Inf/m/it
+\DeclareFontShape{OT1}{Junicode-Inf}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{regular}{n}{
- <-> alias * Junicode-Inf/m/n
+\DeclareFontShape{OT1}{Junicode-Inf}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-Inf/mediumcondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{m}{sl}{
- <-> ssub * Junicode-Inf/m/it
-}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{regular}{sl}{
- <-> ssub * Junicode-Inf/regular/it
+% ---- sb = semibold ----
+
+\DeclareFontShape{OT1}{Junicode-Inf}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-inf-ot1
}{}
+\DeclareFontShape{OT1}{Junicode-Inf}{semibold}{it}{
+ <-> alias * Junicode-Inf/sb/it
+}{}
-% ---- bx = boldexpanded ----
+\DeclareFontShape{OT1}{Junicode-Inf}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-inf-ot1
+}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{semibold}{n}{
+ <-> alias * Junicode-Inf/sb/n
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{boldexpanded}{it}{
- <-> alias * Junicode-Inf/bx/it
+\DeclareFontShape{OT1}{Junicode-Inf}{sb}{sl}{
+ <-> ssub * Junicode-Inf/sb/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{semibold}{sl}{
+ <-> ssub * Junicode-Inf/semibold/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{boldexpanded}{n}{
- <-> alias * Junicode-Inf/bx/n
+
+% ---- mediumsemicondensed ----
+
+\DeclareFontShape{OT1}{Junicode-Inf}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{bx}{sl}{
- <-> ssub * Junicode-Inf/bx/it
+\DeclareFontShape{OT1}{Junicode-Inf}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{boldexpanded}{sl}{
- <-> ssub * Junicode-Inf/boldexpanded/it
+\DeclareFontShape{OT1}{Junicode-Inf}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-Inf/mediumsemicondensed/it
}{}
@@ -335,141 +335,141 @@
}{}
-% ---- mediumsemiexpanded ----
+% ---- sx = semiexpanded ----
-\DeclareFontShape{OT1}{Junicode-Inf}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{semiexpanded}{n}{
+ <-> alias * Junicode-Inf/sx/n
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-Inf/mediumsemiexpanded/it
+\DeclareFontShape{OT1}{Junicode-Inf}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-inf-ot1
}{}
-
-% ---- mediumexpanded ----
-
-\DeclareFontShape{OT1}{Junicode-Inf}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{semiexpanded}{it}{
+ <-> alias * Junicode-Inf/sx/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{sx}{sl}{
+ <-> ssub * Junicode-Inf/sx/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{mediumexpanded}{sl}{
- <-> ssub * Junicode-Inf/mediumexpanded/it
+\DeclareFontShape{OT1}{Junicode-Inf}{semiexpanded}{sl}{
+ <-> ssub * Junicode-Inf/semiexpanded/it
}{}
-% ---- sbsx = semiboldsemiexpanded ----
+% ---- medium ----
-\DeclareFontShape{OT1}{Junicode-Inf}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{medium}{n}{
+ <-> \Junicode@@scale Junicode-Medium-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-Inf/sbsx/n
+\DeclareFontShape{OT1}{Junicode-Inf}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{medium}{sl}{
+ <-> ssub * Junicode-Inf/medium/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-Inf/sbsx/it
-}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{sbsx}{sl}{
- <-> ssub * Junicode-Inf/sbsx/it
-}{}
+% ---- bx = boldexpanded ----
-\DeclareFontShape{OT1}{Junicode-Inf}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-Inf/semiboldsemiexpanded/it
+\DeclareFontShape{OT1}{Junicode-Inf}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-inf-ot1
}{}
+\DeclareFontShape{OT1}{Junicode-Inf}{boldexpanded}{n}{
+ <-> alias * Junicode-Inf/bx/n
+}{}
-% ---- c = condensed ----
+\DeclareFontShape{OT1}{Junicode-Inf}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-inf-ot1
+}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{boldexpanded}{it}{
+ <-> alias * Junicode-Inf/bx/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{condensed}{n}{
- <-> alias * Junicode-Inf/c/n
+\DeclareFontShape{OT1}{Junicode-Inf}{bx}{sl}{
+ <-> ssub * Junicode-Inf/bx/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{boldexpanded}{sl}{
+ <-> ssub * Junicode-Inf/boldexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{condensed}{it}{
- <-> alias * Junicode-Inf/c/it
+
+% ---- mediumsemiexpanded ----
+
+\DeclareFontShape{OT1}{Junicode-Inf}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{c}{sl}{
- <-> ssub * Junicode-Inf/c/it
+\DeclareFontShape{OT1}{Junicode-Inf}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{condensed}{sl}{
- <-> ssub * Junicode-Inf/condensed/it
+\DeclareFontShape{OT1}{Junicode-Inf}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-Inf/mediumsemiexpanded/it
}{}
-% ---- x = expanded ----
+% ---- m = regular ----
-\DeclareFontShape{OT1}{Junicode-Inf}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{expanded}{n}{
- <-> alias * Junicode-Inf/x/n
+\DeclareFontShape{OT1}{Junicode-Inf}{regular}{it}{
+ <-> alias * Junicode-Inf/m/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{expanded}{it}{
- <-> alias * Junicode-Inf/x/it
+\DeclareFontShape{OT1}{Junicode-Inf}{regular}{n}{
+ <-> alias * Junicode-Inf/m/n
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{x}{sl}{
- <-> ssub * Junicode-Inf/x/it
+\DeclareFontShape{OT1}{Junicode-Inf}{m}{sl}{
+ <-> ssub * Junicode-Inf/m/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{expanded}{sl}{
- <-> ssub * Junicode-Inf/expanded/it
+\DeclareFontShape{OT1}{Junicode-Inf}{regular}{sl}{
+ <-> ssub * Junicode-Inf/regular/it
}{}
-% ---- sx = semiexpanded ----
+% ---- lc = lightcondensed ----
-\DeclareFontShape{OT1}{Junicode-Inf}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{semiexpanded}{n}{
- <-> alias * Junicode-Inf/sx/n
+\DeclareFontShape{OT1}{Junicode-Inf}{lightcondensed}{n}{
+ <-> alias * Junicode-Inf/lc/n
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-inf-ot1
+\DeclareFontShape{OT1}{Junicode-Inf}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-inf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{semiexpanded}{it}{
- <-> alias * Junicode-Inf/sx/it
+\DeclareFontShape{OT1}{Junicode-Inf}{lightcondensed}{it}{
+ <-> alias * Junicode-Inf/lc/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{sx}{sl}{
- <-> ssub * Junicode-Inf/sx/it
+\DeclareFontShape{OT1}{Junicode-Inf}{lc}{sl}{
+ <-> ssub * Junicode-Inf/lc/it
}{}
-\DeclareFontShape{OT1}{Junicode-Inf}{semiexpanded}{sl}{
- <-> ssub * Junicode-Inf/semiexpanded/it
+\DeclareFontShape{OT1}{Junicode-Inf}{lightcondensed}{sl}{
+ <-> ssub * Junicode-Inf/lightcondensed/it
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/OT1Junicode-LF.fd b/Master/texmf-dist/tex/latex/junicode/OT1Junicode-LF.fd
index a04c33f8827..28dd9eb8717 100644
--- a/Master/texmf-dist/tex/latex/junicode/OT1Junicode-LF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/OT1Junicode-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{OT1Junicode-LF.fd}
- [2024/06/03 (autoinst) Font definitions for OT1/Junicode-LF.]
+ [2024/07/21 (autoinst) Font definitions for OT1/Junicode-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,207 +20,210 @@
\DeclareFontFamily{OT1}{Junicode-LF}{}
-% ---- l = light ----
+% ---- mediumsemicondensed ----
-\DeclareFontShape{OT1}{Junicode-LF}{l}{scit}{
- <-> \Junicode@@scale Junicode-LightItalic-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{light}{scit}{
- <-> alias * Junicode-LF/l/scit
+\DeclareFontShape{OT1}{Junicode-LF}{mediumsemicondensed}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{light}{it}{
- <-> alias * Junicode-LF/l/it
+\DeclareFontShape{OT1}{Junicode-LF}{mediumsemicondensed}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{l}{sc}{
- <-> \Junicode@@scale Junicode-Light-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-LF/mediumsemicondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{light}{sc}{
- <-> alias * Junicode-LF/l/sc
+\DeclareFontShape{OT1}{Junicode-LF}{mediumsemicondensed}{scsl}{
+ <-> ssub * Junicode-LF/mediumsemicondensed/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-lf-ot1
-}{}
-\DeclareFontShape{OT1}{Junicode-LF}{light}{n}{
- <-> alias * Junicode-LF/l/n
-}{}
+% ---- sx = semiexpanded ----
-\DeclareFontShape{OT1}{Junicode-LF}{l}{scsl}{
- <-> ssub * Junicode-LF/l/scit
+\DeclareFontShape{OT1}{Junicode-LF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{light}{scsl}{
- <-> ssub * Junicode-LF/light/scit
+\DeclareFontShape{OT1}{Junicode-LF}{semiexpanded}{n}{
+ <-> alias * Junicode-LF/sx/n
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{l}{sl}{
- <-> ssub * Junicode-LF/l/it
+\DeclareFontShape{OT1}{Junicode-LF}{sx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{light}{sl}{
- <-> ssub * Junicode-LF/light/it
+\DeclareFontShape{OT1}{Junicode-LF}{semiexpanded}{scit}{
+ <-> alias * Junicode-LF/sx/scit
}{}
-
-% ---- bx = boldexpanded ----
-
-\DeclareFontShape{OT1}{Junicode-LF}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{boldexpanded}{n}{
- <-> alias * Junicode-LF/bx/n
+\DeclareFontShape{OT1}{Junicode-LF}{semiexpanded}{it}{
+ <-> alias * Junicode-LF/sx/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{bx}{sc}{
- <-> \Junicode@@scale Junicode-ExpBold-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{sx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExp-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{boldexpanded}{sc}{
- <-> alias * Junicode-LF/bx/sc
+\DeclareFontShape{OT1}{Junicode-LF}{semiexpanded}{sc}{
+ <-> alias * Junicode-LF/sx/sc
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{sx}{sl}{
+ <-> ssub * Junicode-LF/sx/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{boldexpanded}{it}{
- <-> alias * Junicode-LF/bx/it
+\DeclareFontShape{OT1}{Junicode-LF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-LF/semiexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{bx}{scit}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{sx}{scsl}{
+ <-> ssub * Junicode-LF/sx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{boldexpanded}{scit}{
- <-> alias * Junicode-LF/bx/scit
+\DeclareFontShape{OT1}{Junicode-LF}{semiexpanded}{scsl}{
+ <-> ssub * Junicode-LF/semiexpanded/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{bx}{scsl}{
- <-> ssub * Junicode-LF/bx/scit
+
+% ---- l = light ----
+
+\DeclareFontShape{OT1}{Junicode-LF}{l}{sc}{
+ <-> \Junicode@@scale Junicode-Light-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{boldexpanded}{scsl}{
- <-> ssub * Junicode-LF/boldexpanded/scit
+\DeclareFontShape{OT1}{Junicode-LF}{light}{sc}{
+ <-> alias * Junicode-LF/l/sc
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{bx}{sl}{
- <-> ssub * Junicode-LF/bx/it
+\DeclareFontShape{OT1}{Junicode-LF}{l}{scit}{
+ <-> \Junicode@@scale Junicode-LightItalic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{boldexpanded}{sl}{
- <-> ssub * Junicode-LF/boldexpanded/it
+\DeclareFontShape{OT1}{Junicode-LF}{light}{scit}{
+ <-> alias * Junicode-LF/l/scit
}{}
+\DeclareFontShape{OT1}{Junicode-LF}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-lf-ot1
+}{}
-% ---- m = regular ----
+\DeclareFontShape{OT1}{Junicode-LF}{light}{n}{
+ <-> alias * Junicode-LF/l/n
+}{}
-\DeclareFontShape{OT1}{Junicode-LF}{m}{scit}{
- <-> \Junicode@@scale Junicode-Italic-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{regular}{scit}{
- <-> alias * Junicode-LF/m/scit
+\DeclareFontShape{OT1}{Junicode-LF}{light}{it}{
+ <-> alias * Junicode-LF/l/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{l}{sl}{
+ <-> ssub * Junicode-LF/l/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{regular}{it}{
- <-> alias * Junicode-LF/m/it
+\DeclareFontShape{OT1}{Junicode-LF}{light}{sl}{
+ <-> ssub * Junicode-LF/light/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{m}{sc}{
- <-> \Junicode@@scale Junicode-Regular-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{l}{scsl}{
+ <-> ssub * Junicode-LF/l/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{regular}{sc}{
- <-> alias * Junicode-LF/m/sc
+\DeclareFontShape{OT1}{Junicode-LF}{light}{scsl}{
+ <-> ssub * Junicode-LF/light/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-lf-ot1
+
+% ---- mediumsemiexpanded ----
+
+\DeclareFontShape{OT1}{Junicode-LF}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{regular}{n}{
- <-> alias * Junicode-LF/m/n
+\DeclareFontShape{OT1}{Junicode-LF}{mediumsemiexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{m}{scsl}{
- <-> ssub * Junicode-LF/m/scit
+\DeclareFontShape{OT1}{Junicode-LF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{regular}{scsl}{
- <-> ssub * Junicode-LF/regular/scit
+\DeclareFontShape{OT1}{Junicode-LF}{mediumsemiexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{m}{sl}{
- <-> ssub * Junicode-LF/m/it
+\DeclareFontShape{OT1}{Junicode-LF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-LF/mediumsemiexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{regular}{sl}{
- <-> ssub * Junicode-LF/regular/it
+\DeclareFontShape{OT1}{Junicode-LF}{mediumsemiexpanded}{scsl}{
+ <-> ssub * Junicode-LF/mediumsemiexpanded/scit
}{}
-% ---- lsc = lightsemicondensed ----
+% ---- m = regular ----
-\DeclareFontShape{OT1}{Junicode-LF}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lightsemicondensed}{n}{
- <-> alias * Junicode-LF/lsc/n
+\DeclareFontShape{OT1}{Junicode-LF}{regular}{n}{
+ <-> alias * Junicode-LF/m/n
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lsc}{sc}{
- <-> \Junicode@@scale Junicode-SmCondLight-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{m}{scit}{
+ <-> \Junicode@@scale Junicode-Italic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lightsemicondensed}{sc}{
- <-> alias * Junicode-LF/lsc/sc
+\DeclareFontShape{OT1}{Junicode-LF}{regular}{scit}{
+ <-> alias * Junicode-LF/m/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lightsemicondensed}{it}{
- <-> alias * Junicode-LF/lsc/it
+\DeclareFontShape{OT1}{Junicode-LF}{regular}{it}{
+ <-> alias * Junicode-LF/m/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lsc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{m}{sc}{
+ <-> \Junicode@@scale Junicode-Regular-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lightsemicondensed}{scit}{
- <-> alias * Junicode-LF/lsc/scit
+\DeclareFontShape{OT1}{Junicode-LF}{regular}{sc}{
+ <-> alias * Junicode-LF/m/sc
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lsc}{scsl}{
- <-> ssub * Junicode-LF/lsc/scit
+\DeclareFontShape{OT1}{Junicode-LF}{m}{sl}{
+ <-> ssub * Junicode-LF/m/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lightsemicondensed}{scsl}{
- <-> ssub * Junicode-LF/lightsemicondensed/scit
+\DeclareFontShape{OT1}{Junicode-LF}{regular}{sl}{
+ <-> ssub * Junicode-LF/regular/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lsc}{sl}{
- <-> ssub * Junicode-LF/lsc/it
+\DeclareFontShape{OT1}{Junicode-LF}{m}{scsl}{
+ <-> ssub * Junicode-LF/m/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-LF/lightsemicondensed/it
+\DeclareFontShape{OT1}{Junicode-LF}{regular}{scsl}{
+ <-> ssub * Junicode-LF/regular/scit
}{}
@@ -230,177 +233,177 @@
<-> \Junicode@@scale Junicode-MediumItalic-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{medium}{scit}{
- <-> \Junicode@@scale Junicode-MediumItalic-lf-sc-ot1
-}{}
-
\DeclareFontShape{OT1}{Junicode-LF}{medium}{n}{
<-> \Junicode@@scale Junicode-Medium-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{medium}{sc}{
- <-> \Junicode@@scale Junicode-Medium-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{medium}{scit}{
+ <-> \Junicode@@scale Junicode-MediumItalic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{medium}{scsl}{
- <-> ssub * Junicode-LF/medium/scit
+\DeclareFontShape{OT1}{Junicode-LF}{medium}{sc}{
+ <-> \Junicode@@scale Junicode-Medium-lf-sc-ot1
}{}
\DeclareFontShape{OT1}{Junicode-LF}{medium}{sl}{
<-> ssub * Junicode-LF/medium/it
}{}
+\DeclareFontShape{OT1}{Junicode-LF}{medium}{scsl}{
+ <-> ssub * Junicode-LF/medium/scit
+}{}
-% ---- sx = semiexpanded ----
-\DeclareFontShape{OT1}{Junicode-LF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-lf-ot1
+% ---- bx = boldexpanded ----
+
+\DeclareFontShape{OT1}{Junicode-LF}{bx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpBold-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semiexpanded}{it}{
- <-> alias * Junicode-LF/sx/it
+\DeclareFontShape{OT1}{Junicode-LF}{boldexpanded}{sc}{
+ <-> alias * Junicode-LF/bx/sc
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{sx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpItalic-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semiexpanded}{scit}{
- <-> alias * Junicode-LF/sx/scit
+\DeclareFontShape{OT1}{Junicode-LF}{boldexpanded}{n}{
+ <-> alias * Junicode-LF/bx/n
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{bx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semiexpanded}{n}{
- <-> alias * Junicode-LF/sx/n
+\DeclareFontShape{OT1}{Junicode-LF}{boldexpanded}{scit}{
+ <-> alias * Junicode-LF/bx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{sx}{sc}{
- <-> \Junicode@@scale Junicode-SmExp-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semiexpanded}{sc}{
- <-> alias * Junicode-LF/sx/sc
+\DeclareFontShape{OT1}{Junicode-LF}{boldexpanded}{it}{
+ <-> alias * Junicode-LF/bx/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{sx}{scsl}{
- <-> ssub * Junicode-LF/sx/scit
+\DeclareFontShape{OT1}{Junicode-LF}{bx}{sl}{
+ <-> ssub * Junicode-LF/bx/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semiexpanded}{scsl}{
- <-> ssub * Junicode-LF/semiexpanded/scit
+\DeclareFontShape{OT1}{Junicode-LF}{boldexpanded}{sl}{
+ <-> ssub * Junicode-LF/boldexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{sx}{sl}{
- <-> ssub * Junicode-LF/sx/it
+\DeclareFontShape{OT1}{Junicode-LF}{bx}{scsl}{
+ <-> ssub * Junicode-LF/bx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semiexpanded}{sl}{
- <-> ssub * Junicode-LF/semiexpanded/it
+\DeclareFontShape{OT1}{Junicode-LF}{boldexpanded}{scsl}{
+ <-> ssub * Junicode-LF/boldexpanded/scit
}{}
-% ---- c = condensed ----
+% ---- lc = lightcondensed ----
-\DeclareFontShape{OT1}{Junicode-LF}{c}{sc}{
- <-> \Junicode@@scale Junicode-Cond-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{condensed}{sc}{
- <-> alias * Junicode-LF/c/sc
+\DeclareFontShape{OT1}{Junicode-LF}{lightcondensed}{it}{
+ <-> alias * Junicode-LF/lc/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{lc}{scit}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{condensed}{n}{
- <-> alias * Junicode-LF/c/n
+\DeclareFontShape{OT1}{Junicode-LF}{lightcondensed}{scit}{
+ <-> alias * Junicode-LF/lc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{c}{scit}{
- <-> \Junicode@@scale Junicode-CondItalic-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{condensed}{scit}{
- <-> alias * Junicode-LF/c/scit
+\DeclareFontShape{OT1}{Junicode-LF}{lightcondensed}{n}{
+ <-> alias * Junicode-LF/lc/n
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{lc}{sc}{
+ <-> \Junicode@@scale Junicode-CondLight-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{condensed}{it}{
- <-> alias * Junicode-LF/c/it
+\DeclareFontShape{OT1}{Junicode-LF}{lightcondensed}{sc}{
+ <-> alias * Junicode-LF/lc/sc
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{c}{scsl}{
- <-> ssub * Junicode-LF/c/scit
+\DeclareFontShape{OT1}{Junicode-LF}{lc}{sl}{
+ <-> ssub * Junicode-LF/lc/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{condensed}{scsl}{
- <-> ssub * Junicode-LF/condensed/scit
+\DeclareFontShape{OT1}{Junicode-LF}{lightcondensed}{sl}{
+ <-> ssub * Junicode-LF/lightcondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{c}{sl}{
- <-> ssub * Junicode-LF/c/it
+\DeclareFontShape{OT1}{Junicode-LF}{lc}{scsl}{
+ <-> ssub * Junicode-LF/lc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{condensed}{sl}{
- <-> ssub * Junicode-LF/condensed/it
+\DeclareFontShape{OT1}{Junicode-LF}{lightcondensed}{scsl}{
+ <-> ssub * Junicode-LF/lightcondensed/scit
}{}
-% ---- x = expanded ----
+% ---- sc = semicondensed ----
-\DeclareFontShape{OT1}{Junicode-LF}{x}{sc}{
- <-> \Junicode@@scale Junicode-Exp-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{sc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCond-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{expanded}{sc}{
- <-> alias * Junicode-LF/x/sc
+\DeclareFontShape{OT1}{Junicode-LF}{semicondensed}{sc}{
+ <-> alias * Junicode-LF/sc/sc
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{expanded}{n}{
- <-> alias * Junicode-LF/x/n
+\DeclareFontShape{OT1}{Junicode-LF}{semicondensed}{n}{
+ <-> alias * Junicode-LF/sc/n
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{x}{scit}{
- <-> \Junicode@@scale Junicode-ExpItalic-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{sc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{expanded}{scit}{
- <-> alias * Junicode-LF/x/scit
+\DeclareFontShape{OT1}{Junicode-LF}{semicondensed}{scit}{
+ <-> alias * Junicode-LF/sc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{expanded}{it}{
- <-> alias * Junicode-LF/x/it
+\DeclareFontShape{OT1}{Junicode-LF}{semicondensed}{it}{
+ <-> alias * Junicode-LF/sc/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{x}{scsl}{
- <-> ssub * Junicode-LF/x/scit
+\DeclareFontShape{OT1}{Junicode-LF}{sc}{sl}{
+ <-> ssub * Junicode-LF/sc/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{expanded}{scsl}{
- <-> ssub * Junicode-LF/expanded/scit
+\DeclareFontShape{OT1}{Junicode-LF}{semicondensed}{sl}{
+ <-> ssub * Junicode-LF/semicondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{x}{sl}{
- <-> ssub * Junicode-LF/x/it
+\DeclareFontShape{OT1}{Junicode-LF}{sc}{scsl}{
+ <-> ssub * Junicode-LF/sc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{expanded}{sl}{
- <-> ssub * Junicode-LF/expanded/it
+\DeclareFontShape{OT1}{Junicode-LF}{semicondensed}{scsl}{
+ <-> ssub * Junicode-LF/semicondensed/scit
}{}
@@ -438,6 +441,14 @@
<-> alias * Junicode-LF/sbsx/it
}{}
+\DeclareFontShape{OT1}{Junicode-LF}{sbsx}{sl}{
+ <-> ssub * Junicode-LF/sbsx/it
+}{}
+
+\DeclareFontShape{OT1}{Junicode-LF}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-LF/semiboldsemiexpanded/it
+}{}
+
\DeclareFontShape{OT1}{Junicode-LF}{sbsx}{scsl}{
<-> ssub * Junicode-LF/sbsx/scit
}{}
@@ -446,93 +457,133 @@
<-> ssub * Junicode-LF/semiboldsemiexpanded/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{sbsx}{sl}{
- <-> ssub * Junicode-LF/sbsx/it
+
+% ---- bsx = boldsemiexpanded ----
+
+\DeclareFontShape{OT1}{Junicode-LF}{bsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpBold-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-LF/semiboldsemiexpanded/it
+\DeclareFontShape{OT1}{Junicode-LF}{boldsemiexpanded}{sc}{
+ <-> alias * Junicode-LF/bsx/sc
}{}
+\DeclareFontShape{OT1}{Junicode-LF}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-lf-ot1
+}{}
-% ---- mediumexpanded ----
+\DeclareFontShape{OT1}{Junicode-LF}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-LF/bsx/it
+}{}
-\DeclareFontShape{OT1}{Junicode-LF}{mediumexpanded}{sc}{
- <-> \Junicode@@scale Junicode-ExpMedium-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-LF/bsx/n
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{mediumexpanded}{scit}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{bsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{boldsemiexpanded}{scit}{
+ <-> alias * Junicode-LF/bsx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{mediumexpanded}{scsl}{
- <-> ssub * Junicode-LF/mediumexpanded/scit
+\DeclareFontShape{OT1}{Junicode-LF}{bsx}{sl}{
+ <-> ssub * Junicode-LF/bsx/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-LF/mediumexpanded/it
+\DeclareFontShape{OT1}{Junicode-LF}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-LF/boldsemiexpanded/it
}{}
+\DeclareFontShape{OT1}{Junicode-LF}{bsx}{scsl}{
+ <-> ssub * Junicode-LF/bsx/scit
+}{}
-% ---- mediumsemiexpanded ----
+\DeclareFontShape{OT1}{Junicode-LF}{boldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-LF/boldsemiexpanded/scit
+}{}
-\DeclareFontShape{OT1}{Junicode-LF}{mediumsemiexpanded}{scit}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-lf-sc-ot1
+
+% ---- sb = semibold ----
+
+\DeclareFontShape{OT1}{Junicode-LF}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{semibold}{n}{
+ <-> alias * Junicode-LF/sb/n
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{mediumsemiexpanded}{sc}{
- <-> \Junicode@@scale Junicode-SmExpMedium-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{sb}{scit}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{semibold}{scit}{
+ <-> alias * Junicode-LF/sb/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{mediumsemiexpanded}{scsl}{
- <-> ssub * Junicode-LF/mediumsemiexpanded/scit
+\DeclareFontShape{OT1}{Junicode-LF}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-LF/mediumsemiexpanded/it
+\DeclareFontShape{OT1}{Junicode-LF}{semibold}{it}{
+ <-> alias * Junicode-LF/sb/it
}{}
+\DeclareFontShape{OT1}{Junicode-LF}{sb}{sc}{
+ <-> \Junicode@@scale Junicode-SmBold-lf-sc-ot1
+}{}
-% ---- mediumsemicondensed ----
+\DeclareFontShape{OT1}{Junicode-LF}{semibold}{sc}{
+ <-> alias * Junicode-LF/sb/sc
+}{}
-\DeclareFontShape{OT1}{Junicode-LF}{mediumsemicondensed}{sc}{
- <-> \Junicode@@scale Junicode-SmCondMedium-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{sb}{sl}{
+ <-> ssub * Junicode-LF/sb/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{semibold}{sl}{
+ <-> ssub * Junicode-LF/semibold/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{mediumsemicondensed}{scit}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{sb}{scsl}{
+ <-> ssub * Junicode-LF/sb/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{semibold}{scsl}{
+ <-> ssub * Junicode-LF/semibold/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{mediumsemicondensed}{scsl}{
- <-> ssub * Junicode-LF/mediumsemicondensed/scit
+
+% ---- mediumcondensed ----
+
+\DeclareFontShape{OT1}{Junicode-LF}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-LF/mediumsemicondensed/it
+\DeclareFontShape{OT1}{Junicode-LF}{mediumcondensed}{scit}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-lf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{Junicode-LF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-lf-ot1
+}{}
+
+\DeclareFontShape{OT1}{Junicode-LF}{mediumcondensed}{sc}{
+ <-> \Junicode@@scale Junicode-CondMedium-lf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{Junicode-LF}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-LF/mediumcondensed/it
+}{}
+
+\DeclareFontShape{OT1}{Junicode-LF}{mediumcondensed}{scsl}{
+ <-> ssub * Junicode-LF/mediumcondensed/scit
}{}
@@ -546,14 +597,6 @@
<-> alias * Junicode-LF/sbx/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{sbx}{scit}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-lf-sc-ot1
-}{}
-
-\DeclareFontShape{OT1}{Junicode-LF}{semiboldexpanded}{scit}{
- <-> alias * Junicode-LF/sbx/scit
-}{}
-
\DeclareFontShape{OT1}{Junicode-LF}{sbx}{n}{
<-> \Junicode@@scale Junicode-ExpSmBold-lf-ot1
}{}
@@ -562,20 +605,20 @@
<-> alias * Junicode-LF/sbx/n
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{sbx}{sc}{
- <-> \Junicode@@scale Junicode-ExpSmBold-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{sbx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semiboldexpanded}{sc}{
- <-> alias * Junicode-LF/sbx/sc
+\DeclareFontShape{OT1}{Junicode-LF}{semiboldexpanded}{scit}{
+ <-> alias * Junicode-LF/sbx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{sbx}{scsl}{
- <-> ssub * Junicode-LF/sbx/scit
+\DeclareFontShape{OT1}{Junicode-LF}{sbx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semiboldexpanded}{scsl}{
- <-> ssub * Junicode-LF/semiboldexpanded/scit
+\DeclareFontShape{OT1}{Junicode-LF}{semiboldexpanded}{sc}{
+ <-> alias * Junicode-LF/sbx/sc
}{}
\DeclareFontShape{OT1}{Junicode-LF}{sbx}{sl}{
@@ -586,208 +629,192 @@
<-> ssub * Junicode-LF/semiboldexpanded/it
}{}
-
-% ---- lc = lightcondensed ----
-
-\DeclareFontShape{OT1}{Junicode-LF}{lc}{scit}{
- <-> \Junicode@@scale Junicode-CondLightItalic-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{sbx}{scsl}{
+ <-> ssub * Junicode-LF/sbx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lightcondensed}{scit}{
- <-> alias * Junicode-LF/lc/scit
+\DeclareFontShape{OT1}{Junicode-LF}{semiboldexpanded}{scsl}{
+ <-> ssub * Junicode-LF/semiboldexpanded/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-lf-ot1
-}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lightcondensed}{it}{
- <-> alias * Junicode-LF/lc/it
-}{}
+% ---- c = condensed ----
-\DeclareFontShape{OT1}{Junicode-LF}{lc}{sc}{
- <-> \Junicode@@scale Junicode-CondLight-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lightcondensed}{sc}{
- <-> alias * Junicode-LF/lc/sc
+\DeclareFontShape{OT1}{Junicode-LF}{condensed}{it}{
+ <-> alias * Junicode-LF/c/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lightcondensed}{n}{
- <-> alias * Junicode-LF/lc/n
+\DeclareFontShape{OT1}{Junicode-LF}{condensed}{n}{
+ <-> alias * Junicode-LF/c/n
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lc}{scsl}{
- <-> ssub * Junicode-LF/lc/scit
+\DeclareFontShape{OT1}{Junicode-LF}{c}{scit}{
+ <-> \Junicode@@scale Junicode-CondItalic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lightcondensed}{scsl}{
- <-> ssub * Junicode-LF/lightcondensed/scit
+\DeclareFontShape{OT1}{Junicode-LF}{condensed}{scit}{
+ <-> alias * Junicode-LF/c/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lc}{sl}{
- <-> ssub * Junicode-LF/lc/it
+\DeclareFontShape{OT1}{Junicode-LF}{c}{sc}{
+ <-> \Junicode@@scale Junicode-Cond-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{lightcondensed}{sl}{
- <-> ssub * Junicode-LF/lightcondensed/it
+\DeclareFontShape{OT1}{Junicode-LF}{condensed}{sc}{
+ <-> alias * Junicode-LF/c/sc
}{}
-
-% ---- bsx = boldsemiexpanded ----
-
-\DeclareFontShape{OT1}{Junicode-LF}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{c}{sl}{
+ <-> ssub * Junicode-LF/c/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{boldsemiexpanded}{it}{
- <-> alias * Junicode-LF/bsx/it
+\DeclareFontShape{OT1}{Junicode-LF}{condensed}{sl}{
+ <-> ssub * Junicode-LF/condensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{bsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{c}{scsl}{
+ <-> ssub * Junicode-LF/c/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{boldsemiexpanded}{scit}{
- <-> alias * Junicode-LF/bsx/scit
+\DeclareFontShape{OT1}{Junicode-LF}{condensed}{scsl}{
+ <-> ssub * Junicode-LF/condensed/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-lf-ot1
-}{}
-\DeclareFontShape{OT1}{Junicode-LF}{boldsemiexpanded}{n}{
- <-> alias * Junicode-LF/bsx/n
-}{}
+% ---- lsc = lightsemicondensed ----
-\DeclareFontShape{OT1}{Junicode-LF}{bsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpBold-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{lsc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondLight-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{boldsemiexpanded}{sc}{
- <-> alias * Junicode-LF/bsx/sc
+\DeclareFontShape{OT1}{Junicode-LF}{lightsemicondensed}{sc}{
+ <-> alias * Junicode-LF/lsc/sc
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{bsx}{scsl}{
- <-> ssub * Junicode-LF/bsx/scit
+\DeclareFontShape{OT1}{Junicode-LF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{boldsemiexpanded}{scsl}{
- <-> ssub * Junicode-LF/boldsemiexpanded/scit
+\DeclareFontShape{OT1}{Junicode-LF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-LF/lsc/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{bsx}{sl}{
- <-> ssub * Junicode-LF/bsx/it
+\DeclareFontShape{OT1}{Junicode-LF}{lsc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-LF/boldsemiexpanded/it
+\DeclareFontShape{OT1}{Junicode-LF}{lightsemicondensed}{scit}{
+ <-> alias * Junicode-LF/lsc/scit
}{}
-
-% ---- sc = semicondensed ----
-
-\DeclareFontShape{OT1}{Junicode-LF}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semicondensed}{it}{
- <-> alias * Junicode-LF/sc/it
+\DeclareFontShape{OT1}{Junicode-LF}{lightsemicondensed}{n}{
+ <-> alias * Junicode-LF/lsc/n
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{sc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondItalic-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{lsc}{sl}{
+ <-> ssub * Junicode-LF/lsc/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semicondensed}{scit}{
- <-> alias * Junicode-LF/sc/scit
+\DeclareFontShape{OT1}{Junicode-LF}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-LF/lightsemicondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{lsc}{scsl}{
+ <-> ssub * Junicode-LF/lsc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semicondensed}{n}{
- <-> alias * Junicode-LF/sc/n
+\DeclareFontShape{OT1}{Junicode-LF}{lightsemicondensed}{scsl}{
+ <-> ssub * Junicode-LF/lightsemicondensed/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{sc}{sc}{
- <-> \Junicode@@scale Junicode-SmCond-lf-sc-ot1
+
+% ---- mediumexpanded ----
+
+\DeclareFontShape{OT1}{Junicode-LF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semicondensed}{sc}{
- <-> alias * Junicode-LF/sc/sc
+\DeclareFontShape{OT1}{Junicode-LF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{sc}{scsl}{
- <-> ssub * Junicode-LF/sc/scit
+\DeclareFontShape{OT1}{Junicode-LF}{mediumexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semicondensed}{scsl}{
- <-> ssub * Junicode-LF/semicondensed/scit
+\DeclareFontShape{OT1}{Junicode-LF}{mediumexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-ExpMedium-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{sc}{sl}{
- <-> ssub * Junicode-LF/sc/it
+\DeclareFontShape{OT1}{Junicode-LF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-LF/mediumexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semicondensed}{sl}{
- <-> ssub * Junicode-LF/semicondensed/it
+\DeclareFontShape{OT1}{Junicode-LF}{mediumexpanded}{scsl}{
+ <-> ssub * Junicode-LF/mediumexpanded/scit
}{}
-% ---- sb = semibold ----
+% ---- x = expanded ----
-\DeclareFontShape{OT1}{Junicode-LF}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{x}{scit}{
+ <-> \Junicode@@scale Junicode-ExpItalic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semibold}{it}{
- <-> alias * Junicode-LF/sb/it
+\DeclareFontShape{OT1}{Junicode-LF}{expanded}{scit}{
+ <-> alias * Junicode-LF/x/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{sb}{scit}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semibold}{scit}{
- <-> alias * Junicode-LF/sb/scit
+\DeclareFontShape{OT1}{Junicode-LF}{expanded}{n}{
+ <-> alias * Junicode-LF/x/n
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-lf-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-lf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semibold}{n}{
- <-> alias * Junicode-LF/sb/n
+\DeclareFontShape{OT1}{Junicode-LF}{expanded}{it}{
+ <-> alias * Junicode-LF/x/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{sb}{sc}{
- <-> \Junicode@@scale Junicode-SmBold-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{x}{sc}{
+ <-> \Junicode@@scale Junicode-Exp-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semibold}{sc}{
- <-> alias * Junicode-LF/sb/sc
+\DeclareFontShape{OT1}{Junicode-LF}{expanded}{sc}{
+ <-> alias * Junicode-LF/x/sc
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{sb}{scsl}{
- <-> ssub * Junicode-LF/sb/scit
+\DeclareFontShape{OT1}{Junicode-LF}{x}{sl}{
+ <-> ssub * Junicode-LF/x/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semibold}{scsl}{
- <-> ssub * Junicode-LF/semibold/scit
+\DeclareFontShape{OT1}{Junicode-LF}{expanded}{sl}{
+ <-> ssub * Junicode-LF/expanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{sb}{sl}{
- <-> ssub * Junicode-LF/sb/it
+\DeclareFontShape{OT1}{Junicode-LF}{x}{scsl}{
+ <-> ssub * Junicode-LF/x/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{semibold}{sl}{
- <-> ssub * Junicode-LF/semibold/it
+\DeclareFontShape{OT1}{Junicode-LF}{expanded}{scsl}{
+ <-> ssub * Junicode-LF/expanded/scit
}{}
@@ -801,12 +828,12 @@
<-> alias * Junicode-LF/b/n
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{b}{sc}{
- <-> \Junicode@@scale Junicode-Bold-lf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-LF}{b}{scit}{
+ <-> \Junicode@@scale Junicode-BoldItalic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{bold}{sc}{
- <-> alias * Junicode-LF/b/sc
+\DeclareFontShape{OT1}{Junicode-LF}{bold}{scit}{
+ <-> alias * Junicode-LF/b/scit
}{}
\DeclareFontShape{OT1}{Junicode-LF}{b}{it}{
@@ -817,20 +844,12 @@
<-> alias * Junicode-LF/b/it
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{b}{scit}{
- <-> \Junicode@@scale Junicode-BoldItalic-lf-sc-ot1
-}{}
-
-\DeclareFontShape{OT1}{Junicode-LF}{bold}{scit}{
- <-> alias * Junicode-LF/b/scit
-}{}
-
-\DeclareFontShape{OT1}{Junicode-LF}{b}{scsl}{
- <-> ssub * Junicode-LF/b/scit
+\DeclareFontShape{OT1}{Junicode-LF}{b}{sc}{
+ <-> \Junicode@@scale Junicode-Bold-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{bold}{scsl}{
- <-> ssub * Junicode-LF/bold/scit
+\DeclareFontShape{OT1}{Junicode-LF}{bold}{sc}{
+ <-> alias * Junicode-LF/b/sc
}{}
\DeclareFontShape{OT1}{Junicode-LF}{b}{sl}{
@@ -841,31 +860,12 @@
<-> ssub * Junicode-LF/bold/it
}{}
-
-% ---- mediumcondensed ----
-
-\DeclareFontShape{OT1}{Junicode-LF}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-lf-ot1
-}{}
-
-\DeclareFontShape{OT1}{Junicode-LF}{mediumcondensed}{scit}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-lf-sc-ot1
-}{}
-
-\DeclareFontShape{OT1}{Junicode-LF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-lf-ot1
-}{}
-
-\DeclareFontShape{OT1}{Junicode-LF}{mediumcondensed}{sc}{
- <-> \Junicode@@scale Junicode-CondMedium-lf-sc-ot1
-}{}
-
-\DeclareFontShape{OT1}{Junicode-LF}{mediumcondensed}{scsl}{
- <-> ssub * Junicode-LF/mediumcondensed/scit
+\DeclareFontShape{OT1}{Junicode-LF}{b}{scsl}{
+ <-> ssub * Junicode-LF/b/scit
}{}
-\DeclareFontShape{OT1}{Junicode-LF}{mediumcondensed}{sl}{
- <-> ssub * Junicode-LF/mediumcondensed/it
+\DeclareFontShape{OT1}{Junicode-LF}{bold}{scsl}{
+ <-> ssub * Junicode-LF/bold/scit
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/OT1Junicode-OsF.fd b/Master/texmf-dist/tex/latex/junicode/OT1Junicode-OsF.fd
index 3c8fa652ba3..7cefdb7a0e1 100644
--- a/Master/texmf-dist/tex/latex/junicode/OT1Junicode-OsF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/OT1Junicode-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{OT1Junicode-OsF.fd}
- [2024/06/03 (autoinst) Font definitions for OT1/Junicode-OsF.]
+ [2024/07/21 (autoinst) Font definitions for OT1/Junicode-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,435 +20,446 @@
\DeclareFontFamily{OT1}{Junicode-OsF}{}
-% ---- mediumsemicondensed ----
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{bsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpBold-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemicondensed}{scit}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{boldsemiexpanded}{sc}{
+ <-> alias * Junicode-OsF/bsx/sc
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemicondensed}{sc}{
- <-> \Junicode@@scale Junicode-SmCondMedium-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-OsF/bsx/n
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemicondensed}{scsl}{
- <-> ssub * Junicode-OsF/mediumsemicondensed/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{bsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-OsF/mediumsemicondensed/it
+\DeclareFontShape{OT1}{Junicode-OsF}{boldsemiexpanded}{scit}{
+ <-> alias * Junicode-OsF/bsx/scit
}{}
-
-% ---- sbx = semiboldexpanded ----
-
-\DeclareFontShape{OT1}{Junicode-OsF}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semiboldexpanded}{it}{
- <-> alias * Junicode-OsF/sbx/it
+\DeclareFontShape{OT1}{Junicode-OsF}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-OsF/bsx/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sbx}{scit}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{bsx}{sl}{
+ <-> ssub * Junicode-OsF/bsx/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semiboldexpanded}{scit}{
- <-> alias * Junicode-OsF/sbx/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-OsF/boldsemiexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{bsx}{scsl}{
+ <-> ssub * Junicode-OsF/bsx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semiboldexpanded}{n}{
- <-> alias * Junicode-OsF/sbx/n
+\DeclareFontShape{OT1}{Junicode-OsF}{boldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/boldsemiexpanded/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sbx}{sc}{
- <-> \Junicode@@scale Junicode-ExpSmBold-osf-sc-ot1
-}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semiboldexpanded}{sc}{
- <-> alias * Junicode-OsF/sbx/sc
-}{}
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{OT1}{Junicode-OsF}{sbx}{scsl}{
- <-> ssub * Junicode-OsF/sbx/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{sbsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semiboldexpanded}{scsl}{
- <-> ssub * Junicode-OsF/semiboldexpanded/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{semiboldsemiexpanded}{sc}{
+ <-> alias * Junicode-OsF/sbsx/sc
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sbx}{sl}{
- <-> ssub * Junicode-OsF/sbx/it
+\DeclareFontShape{OT1}{Junicode-OsF}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-OsF/semiboldexpanded/it
+\DeclareFontShape{OT1}{Junicode-OsF}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-OsF/sbsx/it
}{}
-
-% ---- bsx = boldsemiexpanded ----
-
-\DeclareFontShape{OT1}{Junicode-OsF}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{boldsemiexpanded}{n}{
- <-> alias * Junicode-OsF/bsx/n
+\DeclareFontShape{OT1}{Junicode-OsF}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-OsF/sbsx/n
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{bsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpBold-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{sbsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{boldsemiexpanded}{sc}{
- <-> alias * Junicode-OsF/bsx/sc
+\DeclareFontShape{OT1}{Junicode-OsF}{semiboldsemiexpanded}{scit}{
+ <-> alias * Junicode-OsF/sbsx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{sbsx}{sl}{
+ <-> ssub * Junicode-OsF/sbsx/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{boldsemiexpanded}{it}{
- <-> alias * Junicode-OsF/bsx/it
+\DeclareFontShape{OT1}{Junicode-OsF}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-OsF/semiboldsemiexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{bsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{sbsx}{scsl}{
+ <-> ssub * Junicode-OsF/sbsx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{boldsemiexpanded}{scit}{
- <-> alias * Junicode-OsF/bsx/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{semiboldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/semiboldsemiexpanded/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{bsx}{scsl}{
- <-> ssub * Junicode-OsF/bsx/scit
+
+% ---- sc = semicondensed ----
+
+\DeclareFontShape{OT1}{Junicode-OsF}{sc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCond-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{boldsemiexpanded}{scsl}{
- <-> ssub * Junicode-OsF/boldsemiexpanded/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{semicondensed}{sc}{
+ <-> alias * Junicode-OsF/sc/sc
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{bsx}{sl}{
- <-> ssub * Junicode-OsF/bsx/it
+\DeclareFontShape{OT1}{Junicode-OsF}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-OsF/boldsemiexpanded/it
+\DeclareFontShape{OT1}{Junicode-OsF}{semicondensed}{it}{
+ <-> alias * Junicode-OsF/sc/it
}{}
+\DeclareFontShape{OT1}{Junicode-OsF}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-osf-ot1
+}{}
-% ---- lc = lightcondensed ----
+\DeclareFontShape{OT1}{Junicode-OsF}{semicondensed}{n}{
+ <-> alias * Junicode-OsF/sc/n
+}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lc}{sc}{
- <-> \Junicode@@scale Junicode-CondLight-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{sc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lightcondensed}{sc}{
- <-> alias * Junicode-OsF/lc/sc
+\DeclareFontShape{OT1}{Junicode-OsF}{semicondensed}{scit}{
+ <-> alias * Junicode-OsF/sc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{sc}{sl}{
+ <-> ssub * Junicode-OsF/sc/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lightcondensed}{n}{
- <-> alias * Junicode-OsF/lc/n
+\DeclareFontShape{OT1}{Junicode-OsF}{semicondensed}{sl}{
+ <-> ssub * Junicode-OsF/semicondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lc}{scit}{
- <-> \Junicode@@scale Junicode-CondLightItalic-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{sc}{scsl}{
+ <-> ssub * Junicode-OsF/sc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lightcondensed}{scit}{
- <-> alias * Junicode-OsF/lc/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{semicondensed}{scsl}{
+ <-> ssub * Junicode-OsF/semicondensed/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-osf-ot1
+
+% ---- mediumcondensed ----
+
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lightcondensed}{it}{
- <-> alias * Junicode-OsF/lc/it
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lc}{scsl}{
- <-> ssub * Junicode-OsF/lc/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumcondensed}{scit}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lightcondensed}{scsl}{
- <-> ssub * Junicode-OsF/lightcondensed/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumcondensed}{sc}{
+ <-> \Junicode@@scale Junicode-CondMedium-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lc}{sl}{
- <-> ssub * Junicode-OsF/lc/it
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-OsF/mediumcondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lightcondensed}{sl}{
- <-> ssub * Junicode-OsF/lightcondensed/it
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumcondensed}{scsl}{
+ <-> ssub * Junicode-OsF/mediumcondensed/scit
}{}
-% ---- sc = semicondensed ----
+% ---- sb = semibold ----
-\DeclareFontShape{OT1}{Junicode-OsF}{sc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondItalic-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{sb}{sc}{
+ <-> \Junicode@@scale Junicode-SmBold-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semicondensed}{scit}{
- <-> alias * Junicode-OsF/sc/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{semibold}{sc}{
+ <-> alias * Junicode-OsF/sb/sc
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semicondensed}{it}{
- <-> alias * Junicode-OsF/sc/it
+\DeclareFontShape{OT1}{Junicode-OsF}{semibold}{n}{
+ <-> alias * Junicode-OsF/sb/n
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sc}{sc}{
- <-> \Junicode@@scale Junicode-SmCond-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{sb}{scit}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semicondensed}{sc}{
- <-> alias * Junicode-OsF/sc/sc
+\DeclareFontShape{OT1}{Junicode-OsF}{semibold}{scit}{
+ <-> alias * Junicode-OsF/sb/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semicondensed}{n}{
- <-> alias * Junicode-OsF/sc/n
+\DeclareFontShape{OT1}{Junicode-OsF}{semibold}{it}{
+ <-> alias * Junicode-OsF/sb/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sc}{scsl}{
- <-> ssub * Junicode-OsF/sc/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{sb}{sl}{
+ <-> ssub * Junicode-OsF/sb/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semicondensed}{scsl}{
- <-> ssub * Junicode-OsF/semicondensed/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{semibold}{sl}{
+ <-> ssub * Junicode-OsF/semibold/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sc}{sl}{
- <-> ssub * Junicode-OsF/sc/it
+\DeclareFontShape{OT1}{Junicode-OsF}{sb}{scsl}{
+ <-> ssub * Junicode-OsF/sb/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semicondensed}{sl}{
- <-> ssub * Junicode-OsF/semicondensed/it
+\DeclareFontShape{OT1}{Junicode-OsF}{semibold}{scsl}{
+ <-> ssub * Junicode-OsF/semibold/scit
}{}
-% ---- sb = semibold ----
+% ---- l = light ----
-\DeclareFontShape{OT1}{Junicode-OsF}{sb}{scit}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semibold}{scit}{
- <-> alias * Junicode-OsF/sb/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{light}{it}{
+ <-> alias * Junicode-OsF/l/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semibold}{it}{
- <-> alias * Junicode-OsF/sb/it
+\DeclareFontShape{OT1}{Junicode-OsF}{light}{n}{
+ <-> alias * Junicode-OsF/l/n
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sb}{sc}{
- <-> \Junicode@@scale Junicode-SmBold-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{l}{scit}{
+ <-> \Junicode@@scale Junicode-LightItalic-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semibold}{sc}{
- <-> alias * Junicode-OsF/sb/sc
+\DeclareFontShape{OT1}{Junicode-OsF}{light}{scit}{
+ <-> alias * Junicode-OsF/l/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{l}{sc}{
+ <-> \Junicode@@scale Junicode-Light-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semibold}{n}{
- <-> alias * Junicode-OsF/sb/n
+\DeclareFontShape{OT1}{Junicode-OsF}{light}{sc}{
+ <-> alias * Junicode-OsF/l/sc
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sb}{scsl}{
- <-> ssub * Junicode-OsF/sb/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{l}{sl}{
+ <-> ssub * Junicode-OsF/l/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semibold}{scsl}{
- <-> ssub * Junicode-OsF/semibold/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{light}{sl}{
+ <-> ssub * Junicode-OsF/light/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sb}{sl}{
- <-> ssub * Junicode-OsF/sb/it
+\DeclareFontShape{OT1}{Junicode-OsF}{l}{scsl}{
+ <-> ssub * Junicode-OsF/l/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semibold}{sl}{
- <-> ssub * Junicode-OsF/semibold/it
+\DeclareFontShape{OT1}{Junicode-OsF}{light}{scsl}{
+ <-> ssub * Junicode-OsF/light/scit
}{}
-% ---- b = bold ----
+% ---- sx = semiexpanded ----
-\DeclareFontShape{OT1}{Junicode-OsF}{b}{sc}{
- <-> \Junicode@@scale Junicode-Bold-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{sx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{bold}{sc}{
- <-> alias * Junicode-OsF/b/sc
+\DeclareFontShape{OT1}{Junicode-OsF}{semiexpanded}{scit}{
+ <-> alias * Junicode-OsF/sx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{bold}{n}{
- <-> alias * Junicode-OsF/b/n
+\DeclareFontShape{OT1}{Junicode-OsF}{semiexpanded}{n}{
+ <-> alias * Junicode-OsF/sx/n
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{b}{scit}{
- <-> \Junicode@@scale Junicode-BoldItalic-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{bold}{scit}{
- <-> alias * Junicode-OsF/b/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{semiexpanded}{it}{
+ <-> alias * Junicode-OsF/sx/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{sx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExp-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{bold}{it}{
- <-> alias * Junicode-OsF/b/it
+\DeclareFontShape{OT1}{Junicode-OsF}{semiexpanded}{sc}{
+ <-> alias * Junicode-OsF/sx/sc
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{b}{scsl}{
- <-> ssub * Junicode-OsF/b/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{sx}{sl}{
+ <-> ssub * Junicode-OsF/sx/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{bold}{scsl}{
- <-> ssub * Junicode-OsF/bold/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-OsF/semiexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{b}{sl}{
- <-> ssub * Junicode-OsF/b/it
+\DeclareFontShape{OT1}{Junicode-OsF}{sx}{scsl}{
+ <-> ssub * Junicode-OsF/sx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{bold}{sl}{
- <-> ssub * Junicode-OsF/bold/it
+\DeclareFontShape{OT1}{Junicode-OsF}{semiexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/semiexpanded/scit
}{}
-% ---- mediumcondensed ----
+% ---- mediumsemicondensed ----
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumcondensed}{scit}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemicondensed}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumcondensed}{sc}{
- <-> \Junicode@@scale Junicode-CondMedium-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemicondensed}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumcondensed}{scsl}{
- <-> ssub * Junicode-OsF/mediumcondensed/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-OsF/mediumsemicondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumcondensed}{sl}{
- <-> ssub * Junicode-OsF/mediumcondensed/it
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemicondensed}{scsl}{
+ <-> ssub * Junicode-OsF/mediumsemicondensed/scit
}{}
-% ---- l = light ----
+% ---- lc = lightcondensed ----
-\DeclareFontShape{OT1}{Junicode-OsF}{l}{scit}{
- <-> \Junicode@@scale Junicode-LightItalic-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{lc}{sc}{
+ <-> \Junicode@@scale Junicode-CondLight-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{light}{scit}{
- <-> alias * Junicode-OsF/l/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{lightcondensed}{sc}{
+ <-> alias * Junicode-OsF/lc/sc
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{light}{it}{
- <-> alias * Junicode-OsF/l/it
+\DeclareFontShape{OT1}{Junicode-OsF}{lightcondensed}{n}{
+ <-> alias * Junicode-OsF/lc/n
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{l}{sc}{
- <-> \Junicode@@scale Junicode-Light-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{lc}{scit}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{light}{sc}{
- <-> alias * Junicode-OsF/l/sc
+\DeclareFontShape{OT1}{Junicode-OsF}{lightcondensed}{scit}{
+ <-> alias * Junicode-OsF/lc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{light}{n}{
- <-> alias * Junicode-OsF/l/n
+\DeclareFontShape{OT1}{Junicode-OsF}{lightcondensed}{it}{
+ <-> alias * Junicode-OsF/lc/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{l}{scsl}{
- <-> ssub * Junicode-OsF/l/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{lc}{sl}{
+ <-> ssub * Junicode-OsF/lc/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{light}{scsl}{
- <-> ssub * Junicode-OsF/light/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{lightcondensed}{sl}{
+ <-> ssub * Junicode-OsF/lightcondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{l}{sl}{
- <-> ssub * Junicode-OsF/l/it
+\DeclareFontShape{OT1}{Junicode-OsF}{lc}{scsl}{
+ <-> ssub * Junicode-OsF/lc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{light}{sl}{
- <-> ssub * Junicode-OsF/light/it
+\DeclareFontShape{OT1}{Junicode-OsF}{lightcondensed}{scsl}{
+ <-> ssub * Junicode-OsF/lightcondensed/scit
}{}
-% ---- bx = boldexpanded ----
+% ---- medium ----
-\DeclareFontShape{OT1}{Junicode-OsF}{bx}{scit}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{boldexpanded}{scit}{
- <-> alias * Junicode-OsF/bx/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{medium}{n}{
+ <-> \Junicode@@scale Junicode-Medium-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{medium}{scit}{
+ <-> \Junicode@@scale Junicode-MediumItalic-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{boldexpanded}{it}{
- <-> alias * Junicode-OsF/bx/it
+\DeclareFontShape{OT1}{Junicode-OsF}{medium}{sc}{
+ <-> \Junicode@@scale Junicode-Medium-osf-sc-ot1
}{}
+\DeclareFontShape{OT1}{Junicode-OsF}{medium}{sl}{
+ <-> ssub * Junicode-OsF/medium/it
+}{}
+
+\DeclareFontShape{OT1}{Junicode-OsF}{medium}{scsl}{
+ <-> ssub * Junicode-OsF/medium/scit
+}{}
+
+
+% ---- bx = boldexpanded ----
+
\DeclareFontShape{OT1}{Junicode-OsF}{bx}{sc}{
<-> \Junicode@@scale Junicode-ExpBold-osf-sc-ot1
}{}
@@ -465,12 +476,20 @@
<-> alias * Junicode-OsF/bx/n
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{bx}{scsl}{
- <-> ssub * Junicode-OsF/bx/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{bx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{boldexpanded}{scsl}{
- <-> ssub * Junicode-OsF/boldexpanded/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{boldexpanded}{scit}{
+ <-> alias * Junicode-OsF/bx/scit
+}{}
+
+\DeclareFontShape{OT1}{Junicode-OsF}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-osf-ot1
+}{}
+
+\DeclareFontShape{OT1}{Junicode-OsF}{boldexpanded}{it}{
+ <-> alias * Junicode-OsF/bx/it
}{}
\DeclareFontShape{OT1}{Junicode-OsF}{bx}{sl}{
@@ -481,15 +500,23 @@
<-> ssub * Junicode-OsF/boldexpanded/it
}{}
+\DeclareFontShape{OT1}{Junicode-OsF}{bx}{scsl}{
+ <-> ssub * Junicode-OsF/bx/scit
+}{}
+
+\DeclareFontShape{OT1}{Junicode-OsF}{boldexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/boldexpanded/scit
+}{}
+
% ---- m = regular ----
-\DeclareFontShape{OT1}{Junicode-OsF}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{regular}{it}{
- <-> alias * Junicode-OsF/m/it
+\DeclareFontShape{OT1}{Junicode-OsF}{regular}{n}{
+ <-> alias * Junicode-OsF/m/n
}{}
\DeclareFontShape{OT1}{Junicode-OsF}{m}{scit}{
@@ -500,12 +527,12 @@
<-> alias * Junicode-OsF/m/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{regular}{n}{
- <-> alias * Junicode-OsF/m/n
+\DeclareFontShape{OT1}{Junicode-OsF}{regular}{it}{
+ <-> alias * Junicode-OsF/m/it
}{}
\DeclareFontShape{OT1}{Junicode-OsF}{m}{sc}{
@@ -516,14 +543,6 @@
<-> alias * Junicode-OsF/m/sc
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{m}{scsl}{
- <-> ssub * Junicode-OsF/m/scit
-}{}
-
-\DeclareFontShape{OT1}{Junicode-OsF}{regular}{scsl}{
- <-> ssub * Junicode-OsF/regular/scit
-}{}
-
\DeclareFontShape{OT1}{Junicode-OsF}{m}{sl}{
<-> ssub * Junicode-OsF/m/it
}{}
@@ -532,184 +551,168 @@
<-> ssub * Junicode-OsF/regular/it
}{}
-
-% ---- lsc = lightsemicondensed ----
-
-\DeclareFontShape{OT1}{Junicode-OsF}{lsc}{sc}{
- <-> \Junicode@@scale Junicode-SmCondLight-osf-sc-ot1
-}{}
-
-\DeclareFontShape{OT1}{Junicode-OsF}{lightsemicondensed}{sc}{
- <-> alias * Junicode-OsF/lsc/sc
+\DeclareFontShape{OT1}{Junicode-OsF}{m}{scsl}{
+ <-> ssub * Junicode-OsF/m/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{regular}{scsl}{
+ <-> ssub * Junicode-OsF/regular/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lightsemicondensed}{n}{
- <-> alias * Junicode-OsF/lsc/n
-}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lsc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-osf-sc-ot1
-}{}
-
-\DeclareFontShape{OT1}{Junicode-OsF}{lightsemicondensed}{scit}{
- <-> alias * Junicode-OsF/lsc/scit
-}{}
+% ---- mediumsemiexpanded ----
-\DeclareFontShape{OT1}{Junicode-OsF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lightsemicondensed}{it}{
- <-> alias * Junicode-OsF/lsc/it
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemiexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lsc}{scsl}{
- <-> ssub * Junicode-OsF/lsc/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lightsemicondensed}{scsl}{
- <-> ssub * Junicode-OsF/lightsemicondensed/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemiexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lsc}{sl}{
- <-> ssub * Junicode-OsF/lsc/it
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-OsF/mediumsemiexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-OsF/lightsemicondensed/it
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemiexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/mediumsemiexpanded/scit
}{}
-% ---- medium ----
+% ---- mediumexpanded ----
-\DeclareFontShape{OT1}{Junicode-OsF}{medium}{n}{
- <-> \Junicode@@scale Junicode-Medium-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{medium}{sc}{
- <-> \Junicode@@scale Junicode-Medium-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{medium}{scit}{
- <-> \Junicode@@scale Junicode-MediumItalic-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-ExpMedium-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{medium}{scsl}{
- <-> ssub * Junicode-OsF/medium/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-OsF/mediumexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{medium}{sl}{
- <-> ssub * Junicode-OsF/medium/it
+\DeclareFontShape{OT1}{Junicode-OsF}{mediumexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/mediumexpanded/scit
}{}
-% ---- sx = semiexpanded ----
+% ---- lsc = lightsemicondensed ----
-\DeclareFontShape{OT1}{Junicode-OsF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{lsc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondLight-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semiexpanded}{it}{
- <-> alias * Junicode-OsF/sx/it
+\DeclareFontShape{OT1}{Junicode-OsF}{lightsemicondensed}{sc}{
+ <-> alias * Junicode-OsF/lsc/sc
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpItalic-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semiexpanded}{scit}{
- <-> alias * Junicode-OsF/sx/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-OsF/lsc/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{lsc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semiexpanded}{n}{
- <-> alias * Junicode-OsF/sx/n
+\DeclareFontShape{OT1}{Junicode-OsF}{lightsemicondensed}{scit}{
+ <-> alias * Junicode-OsF/lsc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sx}{sc}{
- <-> \Junicode@@scale Junicode-SmExp-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semiexpanded}{sc}{
- <-> alias * Junicode-OsF/sx/sc
+\DeclareFontShape{OT1}{Junicode-OsF}{lightsemicondensed}{n}{
+ <-> alias * Junicode-OsF/lsc/n
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sx}{scsl}{
- <-> ssub * Junicode-OsF/sx/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{lsc}{sl}{
+ <-> ssub * Junicode-OsF/lsc/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semiexpanded}{scsl}{
- <-> ssub * Junicode-OsF/semiexpanded/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-OsF/lightsemicondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sx}{sl}{
- <-> ssub * Junicode-OsF/sx/it
+\DeclareFontShape{OT1}{Junicode-OsF}{lsc}{scsl}{
+ <-> ssub * Junicode-OsF/lsc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semiexpanded}{sl}{
- <-> ssub * Junicode-OsF/semiexpanded/it
+\DeclareFontShape{OT1}{Junicode-OsF}{lightsemicondensed}{scsl}{
+ <-> ssub * Junicode-OsF/lightsemicondensed/scit
}{}
-% ---- c = condensed ----
+% ---- b = bold ----
-\DeclareFontShape{OT1}{Junicode-OsF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{b}{scit}{
+ <-> \Junicode@@scale Junicode-BoldItalic-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{condensed}{it}{
- <-> alias * Junicode-OsF/c/it
+\DeclareFontShape{OT1}{Junicode-OsF}{bold}{scit}{
+ <-> alias * Junicode-OsF/b/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{c}{scit}{
- <-> \Junicode@@scale Junicode-CondItalic-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{condensed}{scit}{
- <-> alias * Junicode-OsF/c/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{bold}{n}{
+ <-> alias * Junicode-OsF/b/n
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{condensed}{n}{
- <-> alias * Junicode-OsF/c/n
+\DeclareFontShape{OT1}{Junicode-OsF}{bold}{it}{
+ <-> alias * Junicode-OsF/b/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{c}{sc}{
- <-> \Junicode@@scale Junicode-Cond-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{b}{sc}{
+ <-> \Junicode@@scale Junicode-Bold-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{condensed}{sc}{
- <-> alias * Junicode-OsF/c/sc
+\DeclareFontShape{OT1}{Junicode-OsF}{bold}{sc}{
+ <-> alias * Junicode-OsF/b/sc
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{c}{scsl}{
- <-> ssub * Junicode-OsF/c/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{b}{sl}{
+ <-> ssub * Junicode-OsF/b/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{condensed}{scsl}{
- <-> ssub * Junicode-OsF/condensed/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{bold}{sl}{
+ <-> ssub * Junicode-OsF/bold/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{c}{sl}{
- <-> ssub * Junicode-OsF/c/it
+\DeclareFontShape{OT1}{Junicode-OsF}{b}{scsl}{
+ <-> ssub * Junicode-OsF/b/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{condensed}{sl}{
- <-> ssub * Junicode-OsF/condensed/it
+\DeclareFontShape{OT1}{Junicode-OsF}{bold}{scsl}{
+ <-> ssub * Junicode-OsF/bold/scit
}{}
@@ -723,6 +726,14 @@
<-> alias * Junicode-OsF/x/scit
}{}
+\DeclareFontShape{OT1}{Junicode-OsF}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-osf-ot1
+}{}
+
+\DeclareFontShape{OT1}{Junicode-OsF}{expanded}{n}{
+ <-> alias * Junicode-OsF/x/n
+}{}
+
\DeclareFontShape{OT1}{Junicode-OsF}{x}{it}{
<-> \Junicode@@scale Junicode-ExpItalic-osf-ot1
}{}
@@ -739,12 +750,12 @@
<-> alias * Junicode-OsF/x/sc
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{x}{sl}{
+ <-> ssub * Junicode-OsF/x/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{expanded}{n}{
- <-> alias * Junicode-OsF/x/n
+\DeclareFontShape{OT1}{Junicode-OsF}{expanded}{sl}{
+ <-> ssub * Junicode-OsF/expanded/it
}{}
\DeclareFontShape{OT1}{Junicode-OsF}{x}{scsl}{
@@ -755,117 +766,106 @@
<-> ssub * Junicode-OsF/expanded/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{x}{sl}{
- <-> ssub * Junicode-OsF/x/it
-}{}
-
-\DeclareFontShape{OT1}{Junicode-OsF}{expanded}{sl}{
- <-> ssub * Junicode-OsF/expanded/it
-}{}
-
-% ---- sbsx = semiboldsemiexpanded ----
+% ---- sbx = semiboldexpanded ----
-\DeclareFontShape{OT1}{Junicode-OsF}{sbsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semiboldsemiexpanded}{scit}{
- <-> alias * Junicode-OsF/sbsx/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{semiboldexpanded}{n}{
+ <-> alias * Junicode-OsF/sbx/n
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{sbx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-OsF/sbsx/it
+\DeclareFontShape{OT1}{Junicode-OsF}{semiboldexpanded}{scit}{
+ <-> alias * Junicode-OsF/sbx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sbsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semiboldsemiexpanded}{sc}{
- <-> alias * Junicode-OsF/sbsx/sc
+\DeclareFontShape{OT1}{Junicode-OsF}{semiboldexpanded}{it}{
+ <-> alias * Junicode-OsF/sbx/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{sbx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-OsF/sbsx/n
+\DeclareFontShape{OT1}{Junicode-OsF}{semiboldexpanded}{sc}{
+ <-> alias * Junicode-OsF/sbx/sc
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sbsx}{scsl}{
- <-> ssub * Junicode-OsF/sbsx/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{sbx}{sl}{
+ <-> ssub * Junicode-OsF/sbx/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semiboldsemiexpanded}{scsl}{
- <-> ssub * Junicode-OsF/semiboldsemiexpanded/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-OsF/semiboldexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{sbsx}{sl}{
- <-> ssub * Junicode-OsF/sbsx/it
+\DeclareFontShape{OT1}{Junicode-OsF}{sbx}{scsl}{
+ <-> ssub * Junicode-OsF/sbx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-OsF/semiboldsemiexpanded/it
+\DeclareFontShape{OT1}{Junicode-OsF}{semiboldexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/semiboldexpanded/scit
}{}
-% ---- mediumexpanded ----
+% ---- c = condensed ----
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumexpanded}{sc}{
- <-> \Junicode@@scale Junicode-ExpMedium-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{condensed}{it}{
+ <-> alias * Junicode-OsF/c/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-osf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumexpanded}{scit}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{condensed}{n}{
+ <-> alias * Junicode-OsF/c/n
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumexpanded}{scsl}{
- <-> ssub * Junicode-OsF/mediumexpanded/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{c}{scit}{
+ <-> \Junicode@@scale Junicode-CondItalic-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-OsF/mediumexpanded/it
+\DeclareFontShape{OT1}{Junicode-OsF}{condensed}{scit}{
+ <-> alias * Junicode-OsF/c/scit
}{}
-
-% ---- mediumsemiexpanded ----
-
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{c}{sc}{
+ <-> \Junicode@@scale Junicode-Cond-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemiexpanded}{sc}{
- <-> \Junicode@@scale Junicode-SmExpMedium-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{condensed}{sc}{
+ <-> alias * Junicode-OsF/c/sc
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-osf-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{c}{sl}{
+ <-> ssub * Junicode-OsF/c/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemiexpanded}{scit}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-osf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-OsF}{condensed}{sl}{
+ <-> ssub * Junicode-OsF/condensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemiexpanded}{scsl}{
- <-> ssub * Junicode-OsF/mediumsemiexpanded/scit
+\DeclareFontShape{OT1}{Junicode-OsF}{c}{scsl}{
+ <-> ssub * Junicode-OsF/c/scit
}{}
-\DeclareFontShape{OT1}{Junicode-OsF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-OsF/mediumsemiexpanded/it
+\DeclareFontShape{OT1}{Junicode-OsF}{condensed}{scsl}{
+ <-> ssub * Junicode-OsF/condensed/scit
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/OT1Junicode-Sup.fd b/Master/texmf-dist/tex/latex/junicode/OT1Junicode-Sup.fd
index 3e51e57f5ae..337961822dd 100644
--- a/Master/texmf-dist/tex/latex/junicode/OT1Junicode-Sup.fd
+++ b/Master/texmf-dist/tex/latex/junicode/OT1Junicode-Sup.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{OT1Junicode-Sup.fd}
- [2024/06/03 (autoinst) Font definitions for OT1/Junicode-Sup.]
+ [2024/07/21 (autoinst) Font definitions for OT1/Junicode-Sup.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,168 +20,207 @@
\DeclareFontFamily{OT1}{Junicode-Sup}{}
-% ---- m = regular ----
+% ---- c = condensed ----
-\DeclareFontShape{OT1}{Junicode-Sup}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{regular}{n}{
- <-> alias * Junicode-Sup/m/n
+\DeclareFontShape{OT1}{Junicode-Sup}{condensed}{it}{
+ <-> alias * Junicode-Sup/c/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{regular}{it}{
- <-> alias * Junicode-Sup/m/it
+\DeclareFontShape{OT1}{Junicode-Sup}{condensed}{n}{
+ <-> alias * Junicode-Sup/c/n
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{m}{sl}{
- <-> ssub * Junicode-Sup/m/it
+\DeclareFontShape{OT1}{Junicode-Sup}{c}{sl}{
+ <-> ssub * Junicode-Sup/c/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{regular}{sl}{
- <-> ssub * Junicode-Sup/regular/it
+\DeclareFontShape{OT1}{Junicode-Sup}{condensed}{sl}{
+ <-> ssub * Junicode-Sup/condensed/it
}{}
-% ---- lsc = lightsemicondensed ----
+% ---- sbx = semiboldexpanded ----
-\DeclareFontShape{OT1}{Junicode-Sup}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{lightsemicondensed}{it}{
- <-> alias * Junicode-Sup/lsc/it
+\DeclareFontShape{OT1}{Junicode-Sup}{semiboldexpanded}{n}{
+ <-> alias * Junicode-Sup/sbx/n
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{lightsemicondensed}{n}{
- <-> alias * Junicode-Sup/lsc/n
+\DeclareFontShape{OT1}{Junicode-Sup}{semiboldexpanded}{it}{
+ <-> alias * Junicode-Sup/sbx/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{lsc}{sl}{
- <-> ssub * Junicode-Sup/lsc/it
+\DeclareFontShape{OT1}{Junicode-Sup}{sbx}{sl}{
+ <-> ssub * Junicode-Sup/sbx/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-Sup/lightsemicondensed/it
+\DeclareFontShape{OT1}{Junicode-Sup}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-Sup/semiboldexpanded/it
}{}
-% ---- medium ----
+% ---- x = expanded ----
-\DeclareFontShape{OT1}{Junicode-Sup}{medium}{n}{
- <-> \Junicode@@scale Junicode-Medium-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{expanded}{it}{
+ <-> alias * Junicode-Sup/x/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{medium}{sl}{
- <-> ssub * Junicode-Sup/medium/it
+\DeclareFontShape{OT1}{Junicode-Sup}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-sup-ot1
}{}
+\DeclareFontShape{OT1}{Junicode-Sup}{expanded}{n}{
+ <-> alias * Junicode-Sup/x/n
+}{}
-% ---- l = light ----
+\DeclareFontShape{OT1}{Junicode-Sup}{x}{sl}{
+ <-> ssub * Junicode-Sup/x/it
+}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{expanded}{sl}{
+ <-> ssub * Junicode-Sup/expanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{light}{it}{
- <-> alias * Junicode-Sup/l/it
+
+% ---- b = bold ----
+
+\DeclareFontShape{OT1}{Junicode-Sup}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{bold}{it}{
+ <-> alias * Junicode-Sup/b/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{light}{n}{
- <-> alias * Junicode-Sup/l/n
+\DeclareFontShape{OT1}{Junicode-Sup}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{l}{sl}{
- <-> ssub * Junicode-Sup/l/it
+\DeclareFontShape{OT1}{Junicode-Sup}{bold}{n}{
+ <-> alias * Junicode-Sup/b/n
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{light}{sl}{
- <-> ssub * Junicode-Sup/light/it
+\DeclareFontShape{OT1}{Junicode-Sup}{b}{sl}{
+ <-> ssub * Junicode-Sup/b/it
}{}
+\DeclareFontShape{OT1}{Junicode-Sup}{bold}{sl}{
+ <-> ssub * Junicode-Sup/bold/it
+}{}
-% ---- bx = boldexpanded ----
-\DeclareFontShape{OT1}{Junicode-Sup}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-sup-ot1
+% ---- mediumexpanded ----
+
+\DeclareFontShape{OT1}{Junicode-Sup}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{boldexpanded}{n}{
- <-> alias * Junicode-Sup/bx/n
+\DeclareFontShape{OT1}{Junicode-Sup}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-Sup/mediumexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{boldexpanded}{it}{
- <-> alias * Junicode-Sup/bx/it
+
+% ---- lsc = lightsemicondensed ----
+
+\DeclareFontShape{OT1}{Junicode-Sup}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{bx}{sl}{
- <-> ssub * Junicode-Sup/bx/it
+\DeclareFontShape{OT1}{Junicode-Sup}{lightsemicondensed}{it}{
+ <-> alias * Junicode-Sup/lsc/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{boldexpanded}{sl}{
- <-> ssub * Junicode-Sup/boldexpanded/it
+\DeclareFontShape{OT1}{Junicode-Sup}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-sup-ot1
}{}
+\DeclareFontShape{OT1}{Junicode-Sup}{lightsemicondensed}{n}{
+ <-> alias * Junicode-Sup/lsc/n
+}{}
-% ---- sbsx = semiboldsemiexpanded ----
+\DeclareFontShape{OT1}{Junicode-Sup}{lsc}{sl}{
+ <-> ssub * Junicode-Sup/lsc/it
+}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-Sup/lightsemicondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-Sup/sbsx/it
+
+% ---- lc = lightcondensed ----
+
+\DeclareFontShape{OT1}{Junicode-Sup}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{lightcondensed}{n}{
+ <-> alias * Junicode-Sup/lc/n
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-Sup/sbsx/n
+\DeclareFontShape{OT1}{Junicode-Sup}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{sbsx}{sl}{
- <-> ssub * Junicode-Sup/sbsx/it
+\DeclareFontShape{OT1}{Junicode-Sup}{lightcondensed}{it}{
+ <-> alias * Junicode-Sup/lc/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-Sup/semiboldsemiexpanded/it
+\DeclareFontShape{OT1}{Junicode-Sup}{lc}{sl}{
+ <-> ssub * Junicode-Sup/lc/it
}{}
+\DeclareFontShape{OT1}{Junicode-Sup}{lightcondensed}{sl}{
+ <-> ssub * Junicode-Sup/lightcondensed/it
+}{}
-% ---- mediumexpanded ----
-\DeclareFontShape{OT1}{Junicode-Sup}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-sup-ot1
+% ---- m = regular ----
+
+\DeclareFontShape{OT1}{Junicode-Sup}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{regular}{n}{
+ <-> alias * Junicode-Sup/m/n
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{mediumexpanded}{sl}{
- <-> ssub * Junicode-Sup/mediumexpanded/it
+\DeclareFontShape{OT1}{Junicode-Sup}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-sup-ot1
+}{}
+
+\DeclareFontShape{OT1}{Junicode-Sup}{regular}{it}{
+ <-> alias * Junicode-Sup/m/it
+}{}
+
+\DeclareFontShape{OT1}{Junicode-Sup}{m}{sl}{
+ <-> ssub * Junicode-Sup/m/it
+}{}
+
+\DeclareFontShape{OT1}{Junicode-Sup}{regular}{sl}{
+ <-> ssub * Junicode-Sup/regular/it
}{}
@@ -200,138 +239,114 @@
}{}
-% ---- sx = semiexpanded ----
-
-\DeclareFontShape{OT1}{Junicode-Sup}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-sup-ot1
-}{}
-
-\DeclareFontShape{OT1}{Junicode-Sup}{semiexpanded}{it}{
- <-> alias * Junicode-Sup/sx/it
-}{}
-
-\DeclareFontShape{OT1}{Junicode-Sup}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-sup-ot1
-}{}
+% ---- medium ----
-\DeclareFontShape{OT1}{Junicode-Sup}{semiexpanded}{n}{
- <-> alias * Junicode-Sup/sx/n
+\DeclareFontShape{OT1}{Junicode-Sup}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{sx}{sl}{
- <-> ssub * Junicode-Sup/sx/it
+\DeclareFontShape{OT1}{Junicode-Sup}{medium}{n}{
+ <-> \Junicode@@scale Junicode-Medium-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{semiexpanded}{sl}{
- <-> ssub * Junicode-Sup/semiexpanded/it
+\DeclareFontShape{OT1}{Junicode-Sup}{medium}{sl}{
+ <-> ssub * Junicode-Sup/medium/it
}{}
-% ---- x = expanded ----
+% ---- bx = boldexpanded ----
-\DeclareFontShape{OT1}{Junicode-Sup}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{expanded}{n}{
- <-> alias * Junicode-Sup/x/n
+\DeclareFontShape{OT1}{Junicode-Sup}{boldexpanded}{it}{
+ <-> alias * Junicode-Sup/bx/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{expanded}{it}{
- <-> alias * Junicode-Sup/x/it
+\DeclareFontShape{OT1}{Junicode-Sup}{boldexpanded}{n}{
+ <-> alias * Junicode-Sup/bx/n
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{x}{sl}{
- <-> ssub * Junicode-Sup/x/it
+\DeclareFontShape{OT1}{Junicode-Sup}{bx}{sl}{
+ <-> ssub * Junicode-Sup/bx/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{expanded}{sl}{
- <-> ssub * Junicode-Sup/expanded/it
+\DeclareFontShape{OT1}{Junicode-Sup}{boldexpanded}{sl}{
+ <-> ssub * Junicode-Sup/boldexpanded/it
}{}
-% ---- c = condensed ----
+% ---- sx = semiexpanded ----
-\DeclareFontShape{OT1}{Junicode-Sup}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{condensed}{it}{
- <-> alias * Junicode-Sup/c/it
+\DeclareFontShape{OT1}{Junicode-Sup}{semiexpanded}{it}{
+ <-> alias * Junicode-Sup/sx/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{condensed}{n}{
- <-> alias * Junicode-Sup/c/n
+\DeclareFontShape{OT1}{Junicode-Sup}{semiexpanded}{n}{
+ <-> alias * Junicode-Sup/sx/n
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{c}{sl}{
- <-> ssub * Junicode-Sup/c/it
+\DeclareFontShape{OT1}{Junicode-Sup}{sx}{sl}{
+ <-> ssub * Junicode-Sup/sx/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{condensed}{sl}{
- <-> ssub * Junicode-Sup/condensed/it
+\DeclareFontShape{OT1}{Junicode-Sup}{semiexpanded}{sl}{
+ <-> ssub * Junicode-Sup/semiexpanded/it
}{}
-% ---- lc = lightcondensed ----
-
-\DeclareFontShape{OT1}{Junicode-Sup}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-sup-ot1
-}{}
+% ---- l = light ----
-\DeclareFontShape{OT1}{Junicode-Sup}{lightcondensed}{it}{
- <-> alias * Junicode-Sup/lc/it
+\DeclareFontShape{OT1}{Junicode-Sup}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{light}{it}{
+ <-> alias * Junicode-Sup/l/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{lightcondensed}{n}{
- <-> alias * Junicode-Sup/lc/n
+\DeclareFontShape{OT1}{Junicode-Sup}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{lc}{sl}{
- <-> ssub * Junicode-Sup/lc/it
+\DeclareFontShape{OT1}{Junicode-Sup}{light}{n}{
+ <-> alias * Junicode-Sup/l/n
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{lightcondensed}{sl}{
- <-> ssub * Junicode-Sup/lightcondensed/it
+\DeclareFontShape{OT1}{Junicode-Sup}{l}{sl}{
+ <-> ssub * Junicode-Sup/l/it
}{}
-
-% ---- bsx = boldsemiexpanded ----
-
-\DeclareFontShape{OT1}{Junicode-Sup}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{light}{sl}{
+ <-> ssub * Junicode-Sup/light/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{boldsemiexpanded}{n}{
- <-> alias * Junicode-Sup/bsx/n
-}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-sup-ot1
-}{}
+% ---- mediumsemicondensed ----
-\DeclareFontShape{OT1}{Junicode-Sup}{boldsemiexpanded}{it}{
- <-> alias * Junicode-Sup/bsx/it
+\DeclareFontShape{OT1}{Junicode-Sup}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{bsx}{sl}{
- <-> ssub * Junicode-Sup/bsx/it
+\DeclareFontShape{OT1}{Junicode-Sup}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-Sup/boldsemiexpanded/it
+\DeclareFontShape{OT1}{Junicode-Sup}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-Sup/mediumsemicondensed/it
}{}
@@ -362,114 +377,99 @@
}{}
-% ---- sc = semicondensed ----
+% ---- mediumcondensed ----
-\DeclareFontShape{OT1}{Junicode-Sup}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{semicondensed}{it}{
- <-> alias * Junicode-Sup/sc/it
+\DeclareFontShape{OT1}{Junicode-Sup}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-Sup/mediumcondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{semicondensed}{n}{
- <-> alias * Junicode-Sup/sc/n
-}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{sc}{sl}{
- <-> ssub * Junicode-Sup/sc/it
-}{}
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{OT1}{Junicode-Sup}{semicondensed}{sl}{
- <-> ssub * Junicode-Sup/semicondensed/it
+\DeclareFontShape{OT1}{Junicode-Sup}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-sup-ot1
}{}
-
-% ---- mediumsemicondensed ----
-
-\DeclareFontShape{OT1}{Junicode-Sup}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-Sup/bsx/n
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-Sup/mediumsemicondensed/it
+\DeclareFontShape{OT1}{Junicode-Sup}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-Sup/bsx/it
}{}
-
-% ---- sbx = semiboldexpanded ----
-
-\DeclareFontShape{OT1}{Junicode-Sup}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{bsx}{sl}{
+ <-> ssub * Junicode-Sup/bsx/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{semiboldexpanded}{n}{
- <-> alias * Junicode-Sup/sbx/n
+\DeclareFontShape{OT1}{Junicode-Sup}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-Sup/boldsemiexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-sup-ot1
-}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{semiboldexpanded}{it}{
- <-> alias * Junicode-Sup/sbx/it
-}{}
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{OT1}{Junicode-Sup}{sbx}{sl}{
- <-> ssub * Junicode-Sup/sbx/it
+\DeclareFontShape{OT1}{Junicode-Sup}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-Sup/semiboldexpanded/it
+\DeclareFontShape{OT1}{Junicode-Sup}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-Sup/sbsx/it
}{}
+\DeclareFontShape{OT1}{Junicode-Sup}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-sup-ot1
+}{}
-% ---- mediumcondensed ----
-
-\DeclareFontShape{OT1}{Junicode-Sup}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-Sup/sbsx/n
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{sbsx}{sl}{
+ <-> ssub * Junicode-Sup/sbsx/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{mediumcondensed}{sl}{
- <-> ssub * Junicode-Sup/mediumcondensed/it
+\DeclareFontShape{OT1}{Junicode-Sup}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-Sup/semiboldsemiexpanded/it
}{}
-% ---- b = bold ----
+% ---- sc = semicondensed ----
-\DeclareFontShape{OT1}{Junicode-Sup}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{bold}{it}{
- <-> alias * Junicode-Sup/b/it
+\DeclareFontShape{OT1}{Junicode-Sup}{semicondensed}{n}{
+ <-> alias * Junicode-Sup/sc/n
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-sup-ot1
+\DeclareFontShape{OT1}{Junicode-Sup}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-sup-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{bold}{n}{
- <-> alias * Junicode-Sup/b/n
+\DeclareFontShape{OT1}{Junicode-Sup}{semicondensed}{it}{
+ <-> alias * Junicode-Sup/sc/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{b}{sl}{
- <-> ssub * Junicode-Sup/b/it
+\DeclareFontShape{OT1}{Junicode-Sup}{sc}{sl}{
+ <-> ssub * Junicode-Sup/sc/it
}{}
-\DeclareFontShape{OT1}{Junicode-Sup}{bold}{sl}{
- <-> ssub * Junicode-Sup/bold/it
+\DeclareFontShape{OT1}{Junicode-Sup}{semicondensed}{sl}{
+ <-> ssub * Junicode-Sup/semicondensed/it
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/OT1Junicode-TLF.fd b/Master/texmf-dist/tex/latex/junicode/OT1Junicode-TLF.fd
index 47eb8d3cf5b..77ad7e0b311 100644
--- a/Master/texmf-dist/tex/latex/junicode/OT1Junicode-TLF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/OT1Junicode-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{OT1Junicode-TLF.fd}
- [2024/06/03 (autoinst) Font definitions for OT1/Junicode-TLF.]
+ [2024/07/21 (autoinst) Font definitions for OT1/Junicode-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,86 +20,75 @@
\DeclareFontFamily{OT1}{Junicode-TLF}{}
-% ---- mediumsemicondensed ----
+% ---- sc = semicondensed ----
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemicondensed}{scit}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{sc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{semicondensed}{scit}{
+ <-> alias * Junicode-TLF/sc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemicondensed}{sc}{
- <-> \Junicode@@scale Junicode-SmCondMedium-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{semicondensed}{n}{
+ <-> alias * Junicode-TLF/sc/n
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemicondensed}{scsl}{
- <-> ssub * Junicode-TLF/mediumsemicondensed/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-TLF/mediumsemicondensed/it
+\DeclareFontShape{OT1}{Junicode-TLF}{semicondensed}{it}{
+ <-> alias * Junicode-TLF/sc/it
}{}
-
-% ---- sbx = semiboldexpanded ----
-
-\DeclareFontShape{OT1}{Junicode-TLF}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{sc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCond-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semiboldexpanded}{n}{
- <-> alias * Junicode-TLF/sbx/n
+\DeclareFontShape{OT1}{Junicode-TLF}{semicondensed}{sc}{
+ <-> alias * Junicode-TLF/sc/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{sbx}{sc}{
- <-> \Junicode@@scale Junicode-ExpSmBold-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{sc}{sl}{
+ <-> ssub * Junicode-TLF/sc/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semiboldexpanded}{sc}{
- <-> alias * Junicode-TLF/sbx/sc
+\DeclareFontShape{OT1}{Junicode-TLF}{semicondensed}{sl}{
+ <-> ssub * Junicode-TLF/semicondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{sc}{scsl}{
+ <-> ssub * Junicode-TLF/sc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semiboldexpanded}{it}{
- <-> alias * Junicode-TLF/sbx/it
+\DeclareFontShape{OT1}{Junicode-TLF}{semicondensed}{scsl}{
+ <-> ssub * Junicode-TLF/semicondensed/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{sbx}{scit}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tlf-sc-ot1
-}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semiboldexpanded}{scit}{
- <-> alias * Junicode-TLF/sbx/scit
-}{}
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{OT1}{Junicode-TLF}{sbx}{scsl}{
- <-> ssub * Junicode-TLF/sbx/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semiboldexpanded}{scsl}{
- <-> ssub * Junicode-TLF/semiboldexpanded/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-TLF/bsx/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{sbx}{sl}{
- <-> ssub * Junicode-TLF/sbx/it
+\DeclareFontShape{OT1}{Junicode-TLF}{bsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-TLF/semiboldexpanded/it
+\DeclareFontShape{OT1}{Junicode-TLF}{boldsemiexpanded}{scit}{
+ <-> alias * Junicode-TLF/bsx/scit
}{}
-
-% ---- bsx = boldsemiexpanded ----
-
\DeclareFontShape{OT1}{Junicode-TLF}{bsx}{n}{
<-> \Junicode@@scale Junicode-SmExpBold-tlf-ot1
}{}
@@ -116,20 +105,12 @@
<-> alias * Junicode-TLF/bsx/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-tlf-ot1
-}{}
-
-\DeclareFontShape{OT1}{Junicode-TLF}{boldsemiexpanded}{it}{
- <-> alias * Junicode-TLF/bsx/it
-}{}
-
-\DeclareFontShape{OT1}{Junicode-TLF}{bsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{bsx}{sl}{
+ <-> ssub * Junicode-TLF/bsx/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{boldsemiexpanded}{scit}{
- <-> alias * Junicode-TLF/bsx/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-TLF/boldsemiexpanded/it
}{}
\DeclareFontShape{OT1}{Junicode-TLF}{bsx}{scsl}{
@@ -140,74 +121,66 @@
<-> ssub * Junicode-TLF/boldsemiexpanded/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{bsx}{sl}{
- <-> ssub * Junicode-TLF/bsx/it
-}{}
-
-\DeclareFontShape{OT1}{Junicode-TLF}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-TLF/boldsemiexpanded/it
-}{}
-
-% ---- lc = lightcondensed ----
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{OT1}{Junicode-TLF}{lc}{scit}{
- <-> \Junicode@@scale Junicode-CondLightItalic-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{sbsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lightcondensed}{scit}{
- <-> alias * Junicode-TLF/lc/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{semiboldsemiexpanded}{sc}{
+ <-> alias * Junicode-TLF/sbsx/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lightcondensed}{it}{
- <-> alias * Junicode-TLF/lc/it
+\DeclareFontShape{OT1}{Junicode-TLF}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-TLF/sbsx/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lc}{sc}{
- <-> \Junicode@@scale Junicode-CondLight-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lightcondensed}{sc}{
- <-> alias * Junicode-TLF/lc/sc
+\DeclareFontShape{OT1}{Junicode-TLF}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-TLF/sbsx/n
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{sbsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lightcondensed}{n}{
- <-> alias * Junicode-TLF/lc/n
+\DeclareFontShape{OT1}{Junicode-TLF}{semiboldsemiexpanded}{scit}{
+ <-> alias * Junicode-TLF/sbsx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lc}{scsl}{
- <-> ssub * Junicode-TLF/lc/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{sbsx}{sl}{
+ <-> ssub * Junicode-TLF/sbsx/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lightcondensed}{scsl}{
- <-> ssub * Junicode-TLF/lightcondensed/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-TLF/semiboldsemiexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lc}{sl}{
- <-> ssub * Junicode-TLF/lc/it
+\DeclareFontShape{OT1}{Junicode-TLF}{sbsx}{scsl}{
+ <-> ssub * Junicode-TLF/sbsx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lightcondensed}{sl}{
- <-> ssub * Junicode-TLF/lightcondensed/it
+\DeclareFontShape{OT1}{Junicode-TLF}{semiboldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/semiboldsemiexpanded/scit
}{}
% ---- sb = semibold ----
-\DeclareFontShape{OT1}{Junicode-TLF}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{sb}{sc}{
+ <-> \Junicode@@scale Junicode-SmBold-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semibold}{it}{
- <-> alias * Junicode-TLF/sb/it
+\DeclareFontShape{OT1}{Junicode-TLF}{semibold}{sc}{
+ <-> alias * Junicode-TLF/sb/sc
}{}
\DeclareFontShape{OT1}{Junicode-TLF}{sb}{scit}{
@@ -226,20 +199,12 @@
<-> alias * Junicode-TLF/sb/n
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{sb}{sc}{
- <-> \Junicode@@scale Junicode-SmBold-tlf-sc-ot1
-}{}
-
-\DeclareFontShape{OT1}{Junicode-TLF}{semibold}{sc}{
- <-> alias * Junicode-TLF/sb/sc
-}{}
-
-\DeclareFontShape{OT1}{Junicode-TLF}{sb}{scsl}{
- <-> ssub * Junicode-TLF/sb/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semibold}{scsl}{
- <-> ssub * Junicode-TLF/semibold/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{semibold}{it}{
+ <-> alias * Junicode-TLF/sb/it
}{}
\DeclareFontShape{OT1}{Junicode-TLF}{sb}{sl}{
@@ -250,146 +215,122 @@
<-> ssub * Junicode-TLF/semibold/it
}{}
-
-% ---- sc = semicondensed ----
-
-\DeclareFontShape{OT1}{Junicode-TLF}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-tlf-ot1
-}{}
-
-\DeclareFontShape{OT1}{Junicode-TLF}{semicondensed}{n}{
- <-> alias * Junicode-TLF/sc/n
-}{}
-
-\DeclareFontShape{OT1}{Junicode-TLF}{sc}{sc}{
- <-> \Junicode@@scale Junicode-SmCond-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{sb}{scsl}{
+ <-> ssub * Junicode-TLF/sb/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semicondensed}{sc}{
- <-> alias * Junicode-TLF/sc/sc
+\DeclareFontShape{OT1}{Junicode-TLF}{semibold}{scsl}{
+ <-> ssub * Junicode-TLF/semibold/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-tlf-ot1
-}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semicondensed}{it}{
- <-> alias * Junicode-TLF/sc/it
-}{}
+% ---- mediumcondensed ----
-\DeclareFontShape{OT1}{Junicode-TLF}{sc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondItalic-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumcondensed}{sc}{
+ <-> \Junicode@@scale Junicode-CondMedium-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semicondensed}{scit}{
- <-> alias * Junicode-TLF/sc/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumcondensed}{scit}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{sc}{scsl}{
- <-> ssub * Junicode-TLF/sc/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semicondensed}{scsl}{
- <-> ssub * Junicode-TLF/semicondensed/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{sc}{sl}{
- <-> ssub * Junicode-TLF/sc/it
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-TLF/mediumcondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semicondensed}{sl}{
- <-> ssub * Junicode-TLF/semicondensed/it
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumcondensed}{scsl}{
+ <-> ssub * Junicode-TLF/mediumcondensed/scit
}{}
-% ---- b = bold ----
+% ---- mediumsemicondensed ----
-\DeclareFontShape{OT1}{Junicode-TLF}{b}{sc}{
- <-> \Junicode@@scale Junicode-Bold-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemicondensed}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{bold}{sc}{
- <-> alias * Junicode-TLF/b/sc
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemicondensed}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{bold}{n}{
- <-> alias * Junicode-TLF/b/n
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{b}{scit}{
- <-> \Junicode@@scale Junicode-BoldItalic-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-TLF/mediumsemicondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{bold}{scit}{
- <-> alias * Junicode-TLF/b/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemicondensed}{scsl}{
+ <-> ssub * Junicode-TLF/mediumsemicondensed/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-tlf-ot1
-}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{bold}{it}{
- <-> alias * Junicode-TLF/b/it
-}{}
+% ---- sx = semiexpanded ----
-\DeclareFontShape{OT1}{Junicode-TLF}{b}{scsl}{
- <-> ssub * Junicode-TLF/b/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{sx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExp-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{bold}{scsl}{
- <-> ssub * Junicode-TLF/bold/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{semiexpanded}{sc}{
+ <-> alias * Junicode-TLF/sx/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{b}{sl}{
- <-> ssub * Junicode-TLF/b/it
+\DeclareFontShape{OT1}{Junicode-TLF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{bold}{sl}{
- <-> ssub * Junicode-TLF/bold/it
+\DeclareFontShape{OT1}{Junicode-TLF}{semiexpanded}{n}{
+ <-> alias * Junicode-TLF/sx/n
}{}
+\DeclareFontShape{OT1}{Junicode-TLF}{sx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-tlf-sc-ot1
+}{}
-% ---- mediumcondensed ----
+\DeclareFontShape{OT1}{Junicode-TLF}{semiexpanded}{scit}{
+ <-> alias * Junicode-TLF/sx/scit
+}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumcondensed}{scit}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{semiexpanded}{it}{
+ <-> alias * Junicode-TLF/sx/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{sx}{sl}{
+ <-> ssub * Junicode-TLF/sx/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumcondensed}{sc}{
- <-> \Junicode@@scale Junicode-CondMedium-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-TLF/semiexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumcondensed}{scsl}{
- <-> ssub * Junicode-TLF/mediumcondensed/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{sx}{scsl}{
+ <-> ssub * Junicode-TLF/sx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumcondensed}{sl}{
- <-> ssub * Junicode-TLF/mediumcondensed/it
+\DeclareFontShape{OT1}{Junicode-TLF}{semiexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/semiexpanded/scit
}{}
% ---- l = light ----
-\DeclareFontShape{OT1}{Junicode-TLF}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-tlf-ot1
-}{}
-
-\DeclareFontShape{OT1}{Junicode-TLF}{light}{n}{
- <-> alias * Junicode-TLF/l/n
-}{}
-
\DeclareFontShape{OT1}{Junicode-TLF}{l}{sc}{
<-> \Junicode@@scale Junicode-Light-tlf-sc-ot1
}{}
@@ -406,20 +347,20 @@
<-> alias * Junicode-TLF/l/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{l}{scit}{
- <-> \Junicode@@scale Junicode-LightItalic-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{light}{scit}{
- <-> alias * Junicode-TLF/l/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{light}{n}{
+ <-> alias * Junicode-TLF/l/n
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{l}{scsl}{
- <-> ssub * Junicode-TLF/l/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{l}{scit}{
+ <-> \Junicode@@scale Junicode-LightItalic-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{light}{scsl}{
- <-> ssub * Junicode-TLF/light/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{light}{scit}{
+ <-> alias * Junicode-TLF/l/scit
}{}
\DeclareFontShape{OT1}{Junicode-TLF}{l}{sl}{
@@ -430,297 +371,308 @@
<-> ssub * Junicode-TLF/light/it
}{}
+\DeclareFontShape{OT1}{Junicode-TLF}{l}{scsl}{
+ <-> ssub * Junicode-TLF/l/scit
+}{}
-% ---- bx = boldexpanded ----
+\DeclareFontShape{OT1}{Junicode-TLF}{light}{scsl}{
+ <-> ssub * Junicode-TLF/light/scit
+}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{bx}{scit}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-tlf-sc-ot1
+
+% ---- m = regular ----
+
+\DeclareFontShape{OT1}{Junicode-TLF}{m}{scit}{
+ <-> \Junicode@@scale Junicode-Italic-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{boldexpanded}{scit}{
- <-> alias * Junicode-TLF/bx/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{regular}{scit}{
+ <-> alias * Junicode-TLF/m/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{boldexpanded}{it}{
- <-> alias * Junicode-TLF/bx/it
+\DeclareFontShape{OT1}{Junicode-TLF}{regular}{n}{
+ <-> alias * Junicode-TLF/m/n
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{bx}{sc}{
- <-> \Junicode@@scale Junicode-ExpBold-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{boldexpanded}{sc}{
- <-> alias * Junicode-TLF/bx/sc
+\DeclareFontShape{OT1}{Junicode-TLF}{regular}{it}{
+ <-> alias * Junicode-TLF/m/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{m}{sc}{
+ <-> \Junicode@@scale Junicode-Regular-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{boldexpanded}{n}{
- <-> alias * Junicode-TLF/bx/n
+\DeclareFontShape{OT1}{Junicode-TLF}{regular}{sc}{
+ <-> alias * Junicode-TLF/m/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{bx}{scsl}{
- <-> ssub * Junicode-TLF/bx/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{m}{sl}{
+ <-> ssub * Junicode-TLF/m/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{boldexpanded}{scsl}{
- <-> ssub * Junicode-TLF/boldexpanded/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{regular}{sl}{
+ <-> ssub * Junicode-TLF/regular/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{bx}{sl}{
- <-> ssub * Junicode-TLF/bx/it
+\DeclareFontShape{OT1}{Junicode-TLF}{m}{scsl}{
+ <-> ssub * Junicode-TLF/m/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{boldexpanded}{sl}{
- <-> ssub * Junicode-TLF/boldexpanded/it
+\DeclareFontShape{OT1}{Junicode-TLF}{regular}{scsl}{
+ <-> ssub * Junicode-TLF/regular/scit
}{}
-% ---- m = regular ----
+% ---- mediumsemiexpanded ----
-\DeclareFontShape{OT1}{Junicode-TLF}{m}{scit}{
- <-> \Junicode@@scale Junicode-Italic-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemiexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{regular}{scit}{
- <-> alias * Junicode-TLF/m/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemiexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{regular}{it}{
- <-> alias * Junicode-TLF/m/it
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{m}{sc}{
- <-> \Junicode@@scale Junicode-Regular-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-TLF/mediumsemiexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{regular}{sc}{
- <-> alias * Junicode-TLF/m/sc
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/mediumsemiexpanded/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-tlf-ot1
+
+% ---- medium ----
+
+\DeclareFontShape{OT1}{Junicode-TLF}{medium}{sc}{
+ <-> \Junicode@@scale Junicode-Medium-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{regular}{n}{
- <-> alias * Junicode-TLF/m/n
+\DeclareFontShape{OT1}{Junicode-TLF}{medium}{n}{
+ <-> \Junicode@@scale Junicode-Medium-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{m}{scsl}{
- <-> ssub * Junicode-TLF/m/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{medium}{scit}{
+ <-> \Junicode@@scale Junicode-MediumItalic-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{regular}{scsl}{
- <-> ssub * Junicode-TLF/regular/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{m}{sl}{
- <-> ssub * Junicode-TLF/m/it
+\DeclareFontShape{OT1}{Junicode-TLF}{medium}{sl}{
+ <-> ssub * Junicode-TLF/medium/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{regular}{sl}{
- <-> ssub * Junicode-TLF/regular/it
+\DeclareFontShape{OT1}{Junicode-TLF}{medium}{scsl}{
+ <-> ssub * Junicode-TLF/medium/scit
}{}
-% ---- lsc = lightsemicondensed ----
+% ---- bx = boldexpanded ----
-\DeclareFontShape{OT1}{Junicode-TLF}{lsc}{sc}{
- <-> \Junicode@@scale Junicode-SmCondLight-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lightsemicondensed}{sc}{
- <-> alias * Junicode-TLF/lsc/sc
+\DeclareFontShape{OT1}{Junicode-TLF}{boldexpanded}{it}{
+ <-> alias * Junicode-TLF/bx/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lightsemicondensed}{n}{
- <-> alias * Junicode-TLF/lsc/n
+\DeclareFontShape{OT1}{Junicode-TLF}{boldexpanded}{n}{
+ <-> alias * Junicode-TLF/bx/n
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lsc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{bx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lightsemicondensed}{scit}{
- <-> alias * Junicode-TLF/lsc/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{boldexpanded}{scit}{
+ <-> alias * Junicode-TLF/bx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{bx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpBold-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lightsemicondensed}{it}{
- <-> alias * Junicode-TLF/lsc/it
+\DeclareFontShape{OT1}{Junicode-TLF}{boldexpanded}{sc}{
+ <-> alias * Junicode-TLF/bx/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lsc}{scsl}{
- <-> ssub * Junicode-TLF/lsc/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{bx}{sl}{
+ <-> ssub * Junicode-TLF/bx/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lightsemicondensed}{scsl}{
- <-> ssub * Junicode-TLF/lightsemicondensed/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{boldexpanded}{sl}{
+ <-> ssub * Junicode-TLF/boldexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lsc}{sl}{
- <-> ssub * Junicode-TLF/lsc/it
+\DeclareFontShape{OT1}{Junicode-TLF}{bx}{scsl}{
+ <-> ssub * Junicode-TLF/bx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-TLF/lightsemicondensed/it
+\DeclareFontShape{OT1}{Junicode-TLF}{boldexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/boldexpanded/scit
}{}
-% ---- medium ----
+% ---- lc = lightcondensed ----
-\DeclareFontShape{OT1}{Junicode-TLF}{medium}{sc}{
- <-> \Junicode@@scale Junicode-Medium-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{lc}{sc}{
+ <-> \Junicode@@scale Junicode-CondLight-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{medium}{n}{
- <-> \Junicode@@scale Junicode-Medium-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{lightcondensed}{sc}{
+ <-> alias * Junicode-TLF/lc/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{medium}{scit}{
- <-> \Junicode@@scale Junicode-MediumItalic-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{lightcondensed}{it}{
+ <-> alias * Junicode-TLF/lc/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{medium}{scsl}{
- <-> ssub * Junicode-TLF/medium/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{lc}{scit}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{medium}{sl}{
- <-> ssub * Junicode-TLF/medium/it
+\DeclareFontShape{OT1}{Junicode-TLF}{lightcondensed}{scit}{
+ <-> alias * Junicode-TLF/lc/scit
}{}
-
-% ---- sx = semiexpanded ----
-
-\DeclareFontShape{OT1}{Junicode-TLF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semiexpanded}{n}{
- <-> alias * Junicode-TLF/sx/n
+\DeclareFontShape{OT1}{Junicode-TLF}{lightcondensed}{n}{
+ <-> alias * Junicode-TLF/lc/n
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{sx}{sc}{
- <-> \Junicode@@scale Junicode-SmExp-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{lc}{sl}{
+ <-> ssub * Junicode-TLF/lc/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semiexpanded}{sc}{
- <-> alias * Junicode-TLF/sx/sc
+\DeclareFontShape{OT1}{Junicode-TLF}{lightcondensed}{sl}{
+ <-> ssub * Junicode-TLF/lightcondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{lc}{scsl}{
+ <-> ssub * Junicode-TLF/lc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semiexpanded}{it}{
- <-> alias * Junicode-TLF/sx/it
+\DeclareFontShape{OT1}{Junicode-TLF}{lightcondensed}{scsl}{
+ <-> ssub * Junicode-TLF/lightcondensed/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{sx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpItalic-tlf-sc-ot1
-}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semiexpanded}{scit}{
- <-> alias * Junicode-TLF/sx/scit
-}{}
+% ---- lsc = lightsemicondensed ----
-\DeclareFontShape{OT1}{Junicode-TLF}{sx}{scsl}{
- <-> ssub * Junicode-TLF/sx/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{lsc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semiexpanded}{scsl}{
- <-> ssub * Junicode-TLF/semiexpanded/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{lightsemicondensed}{scit}{
+ <-> alias * Junicode-TLF/lsc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{sx}{sl}{
- <-> ssub * Junicode-TLF/sx/it
+\DeclareFontShape{OT1}{Junicode-TLF}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semiexpanded}{sl}{
- <-> ssub * Junicode-TLF/semiexpanded/it
+\DeclareFontShape{OT1}{Junicode-TLF}{lightsemicondensed}{n}{
+ <-> alias * Junicode-TLF/lsc/n
}{}
+\DeclareFontShape{OT1}{Junicode-TLF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-tlf-ot1
+}{}
-% ---- c = condensed ----
+\DeclareFontShape{OT1}{Junicode-TLF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-TLF/lsc/it
+}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{c}{sc}{
- <-> \Junicode@@scale Junicode-Cond-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{lsc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondLight-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{condensed}{sc}{
- <-> alias * Junicode-TLF/c/sc
+\DeclareFontShape{OT1}{Junicode-TLF}{lightsemicondensed}{sc}{
+ <-> alias * Junicode-TLF/lsc/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{lsc}{sl}{
+ <-> ssub * Junicode-TLF/lsc/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{condensed}{n}{
- <-> alias * Junicode-TLF/c/n
+\DeclareFontShape{OT1}{Junicode-TLF}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-TLF/lightsemicondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{c}{scit}{
- <-> \Junicode@@scale Junicode-CondItalic-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{lsc}{scsl}{
+ <-> ssub * Junicode-TLF/lsc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{condensed}{scit}{
- <-> alias * Junicode-TLF/c/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{lightsemicondensed}{scsl}{
+ <-> ssub * Junicode-TLF/lightsemicondensed/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-tlf-ot1
+
+% ---- mediumexpanded ----
+
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-ExpMedium-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{condensed}{it}{
- <-> alias * Junicode-TLF/c/it
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{c}{scsl}{
- <-> ssub * Junicode-TLF/c/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{condensed}{scsl}{
- <-> ssub * Junicode-TLF/condensed/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{c}{sl}{
- <-> ssub * Junicode-TLF/c/it
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-TLF/mediumexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{condensed}{sl}{
- <-> ssub * Junicode-TLF/condensed/it
+\DeclareFontShape{OT1}{Junicode-TLF}{mediumexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/mediumexpanded/scit
}{}
% ---- x = expanded ----
-\DeclareFontShape{OT1}{Junicode-TLF}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{x}{sc}{
+ <-> \Junicode@@scale Junicode-Exp-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{expanded}{it}{
- <-> alias * Junicode-TLF/x/it
+\DeclareFontShape{OT1}{Junicode-TLF}{expanded}{sc}{
+ <-> alias * Junicode-TLF/x/sc
}{}
\DeclareFontShape{OT1}{Junicode-TLF}{x}{scit}{
@@ -739,12 +691,20 @@
<-> alias * Junicode-TLF/x/n
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{x}{sc}{
- <-> \Junicode@@scale Junicode-Exp-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{expanded}{sc}{
- <-> alias * Junicode-TLF/x/sc
+\DeclareFontShape{OT1}{Junicode-TLF}{expanded}{it}{
+ <-> alias * Junicode-TLF/x/it
+}{}
+
+\DeclareFontShape{OT1}{Junicode-TLF}{x}{sl}{
+ <-> ssub * Junicode-TLF/x/it
+}{}
+
+\DeclareFontShape{OT1}{Junicode-TLF}{expanded}{sl}{
+ <-> ssub * Junicode-TLF/expanded/it
}{}
\DeclareFontShape{OT1}{Junicode-TLF}{x}{scsl}{
@@ -755,117 +715,157 @@
<-> ssub * Junicode-TLF/expanded/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{x}{sl}{
- <-> ssub * Junicode-TLF/x/it
+
+% ---- b = bold ----
+
+\DeclareFontShape{OT1}{Junicode-TLF}{b}{scit}{
+ <-> \Junicode@@scale Junicode-BoldItalic-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{expanded}{sl}{
- <-> ssub * Junicode-TLF/expanded/it
+\DeclareFontShape{OT1}{Junicode-TLF}{bold}{scit}{
+ <-> alias * Junicode-TLF/b/scit
}{}
+\DeclareFontShape{OT1}{Junicode-TLF}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-tlf-ot1
+}{}
-% ---- sbsx = semiboldsemiexpanded ----
+\DeclareFontShape{OT1}{Junicode-TLF}{bold}{n}{
+ <-> alias * Junicode-TLF/b/n
+}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-TLF/sbsx/it
+\DeclareFontShape{OT1}{Junicode-TLF}{bold}{it}{
+ <-> alias * Junicode-TLF/b/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{sbsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{b}{sc}{
+ <-> \Junicode@@scale Junicode-Bold-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semiboldsemiexpanded}{scit}{
- <-> alias * Junicode-TLF/sbsx/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{bold}{sc}{
+ <-> alias * Junicode-TLF/b/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{b}{sl}{
+ <-> ssub * Junicode-TLF/b/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-TLF/sbsx/n
+\DeclareFontShape{OT1}{Junicode-TLF}{bold}{sl}{
+ <-> ssub * Junicode-TLF/bold/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{sbsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{b}{scsl}{
+ <-> ssub * Junicode-TLF/b/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semiboldsemiexpanded}{sc}{
- <-> alias * Junicode-TLF/sbsx/sc
+\DeclareFontShape{OT1}{Junicode-TLF}{bold}{scsl}{
+ <-> ssub * Junicode-TLF/bold/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{sbsx}{scsl}{
- <-> ssub * Junicode-TLF/sbsx/scit
+
+% ---- sbx = semiboldexpanded ----
+
+\DeclareFontShape{OT1}{Junicode-TLF}{sbx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semiboldsemiexpanded}{scsl}{
- <-> ssub * Junicode-TLF/semiboldsemiexpanded/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{semiboldexpanded}{sc}{
+ <-> alias * Junicode-TLF/sbx/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{sbsx}{sl}{
- <-> ssub * Junicode-TLF/sbsx/it
+\DeclareFontShape{OT1}{Junicode-TLF}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-TLF/semiboldsemiexpanded/it
+\DeclareFontShape{OT1}{Junicode-TLF}{semiboldexpanded}{it}{
+ <-> alias * Junicode-TLF/sbx/it
}{}
+\DeclareFontShape{OT1}{Junicode-TLF}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-tlf-ot1
+}{}
-% ---- mediumexpanded ----
+\DeclareFontShape{OT1}{Junicode-TLF}{semiboldexpanded}{n}{
+ <-> alias * Junicode-TLF/sbx/n
+}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumexpanded}{sc}{
- <-> \Junicode@@scale Junicode-ExpMedium-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{sbx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{semiboldexpanded}{scit}{
+ <-> alias * Junicode-TLF/sbx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumexpanded}{scit}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{sbx}{sl}{
+ <-> ssub * Junicode-TLF/sbx/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-TLF/semiboldexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumexpanded}{scsl}{
- <-> ssub * Junicode-TLF/mediumexpanded/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{sbx}{scsl}{
+ <-> ssub * Junicode-TLF/sbx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-TLF/mediumexpanded/it
+\DeclareFontShape{OT1}{Junicode-TLF}{semiboldexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/semiboldexpanded/scit
}{}
-% ---- mediumsemiexpanded ----
+% ---- c = condensed ----
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemiexpanded}{sc}{
- <-> \Junicode@@scale Junicode-SmExpMedium-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{c}{sc}{
+ <-> \Junicode@@scale Junicode-Cond-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{condensed}{sc}{
+ <-> alias * Junicode-TLF/c/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemiexpanded}{scit}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-tlf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{c}{scit}{
+ <-> \Junicode@@scale Junicode-CondItalic-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-tlf-ot1
+\DeclareFontShape{OT1}{Junicode-TLF}{condensed}{scit}{
+ <-> alias * Junicode-TLF/c/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemiexpanded}{scsl}{
- <-> ssub * Junicode-TLF/mediumsemiexpanded/scit
+\DeclareFontShape{OT1}{Junicode-TLF}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-tlf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TLF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-TLF/mediumsemiexpanded/it
+\DeclareFontShape{OT1}{Junicode-TLF}{condensed}{n}{
+ <-> alias * Junicode-TLF/c/n
+}{}
+
+\DeclareFontShape{OT1}{Junicode-TLF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-tlf-ot1
+}{}
+
+\DeclareFontShape{OT1}{Junicode-TLF}{condensed}{it}{
+ <-> alias * Junicode-TLF/c/it
+}{}
+
+\DeclareFontShape{OT1}{Junicode-TLF}{c}{sl}{
+ <-> ssub * Junicode-TLF/c/it
+}{}
+
+\DeclareFontShape{OT1}{Junicode-TLF}{condensed}{sl}{
+ <-> ssub * Junicode-TLF/condensed/it
+}{}
+
+\DeclareFontShape{OT1}{Junicode-TLF}{c}{scsl}{
+ <-> ssub * Junicode-TLF/c/scit
+}{}
+
+\DeclareFontShape{OT1}{Junicode-TLF}{condensed}{scsl}{
+ <-> ssub * Junicode-TLF/condensed/scit
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/OT1Junicode-TOsF.fd b/Master/texmf-dist/tex/latex/junicode/OT1Junicode-TOsF.fd
index 77547d3a2c7..d7caf690797 100644
--- a/Master/texmf-dist/tex/latex/junicode/OT1Junicode-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/OT1Junicode-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{OT1Junicode-TOsF.fd}
- [2024/06/03 (autoinst) Font definitions for OT1/Junicode-TOsF.]
+ [2024/07/21 (autoinst) Font definitions for OT1/Junicode-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,394 +20,394 @@
\DeclareFontFamily{OT1}{Junicode-TOsF}{}
-% ---- bx = boldexpanded ----
+% ---- c = condensed ----
-\DeclareFontShape{OT1}{Junicode-TOsF}{bx}{scit}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{c}{scit}{
+ <-> \Junicode@@scale Junicode-CondItalic-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{boldexpanded}{scit}{
- <-> alias * Junicode-TOsF/bx/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{condensed}{scit}{
+ <-> alias * Junicode-TOsF/c/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{boldexpanded}{it}{
- <-> alias * Junicode-TOsF/bx/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{condensed}{n}{
+ <-> alias * Junicode-TOsF/c/n
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{bx}{sc}{
- <-> \Junicode@@scale Junicode-ExpBold-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{boldexpanded}{sc}{
- <-> alias * Junicode-TOsF/bx/sc
+\DeclareFontShape{OT1}{Junicode-TOsF}{condensed}{it}{
+ <-> alias * Junicode-TOsF/c/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{c}{sc}{
+ <-> \Junicode@@scale Junicode-Cond-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{boldexpanded}{n}{
- <-> alias * Junicode-TOsF/bx/n
+\DeclareFontShape{OT1}{Junicode-TOsF}{condensed}{sc}{
+ <-> alias * Junicode-TOsF/c/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{bx}{scsl}{
- <-> ssub * Junicode-TOsF/bx/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{c}{sl}{
+ <-> ssub * Junicode-TOsF/c/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{boldexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/boldexpanded/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{condensed}{sl}{
+ <-> ssub * Junicode-TOsF/condensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{bx}{sl}{
- <-> ssub * Junicode-TOsF/bx/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{c}{scsl}{
+ <-> ssub * Junicode-TOsF/c/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{boldexpanded}{sl}{
- <-> ssub * Junicode-TOsF/boldexpanded/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{condensed}{scsl}{
+ <-> ssub * Junicode-TOsF/condensed/scit
}{}
-% ---- l = light ----
+% ---- sbx = semiboldexpanded ----
-\DeclareFontShape{OT1}{Junicode-TOsF}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{sbx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{light}{n}{
- <-> alias * Junicode-TOsF/l/n
+\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldexpanded}{sc}{
+ <-> alias * Junicode-TOsF/sbx/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{l}{sc}{
- <-> \Junicode@@scale Junicode-Light-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{light}{sc}{
- <-> alias * Junicode-TOsF/l/sc
+\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldexpanded}{it}{
+ <-> alias * Junicode-TOsF/sbx/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{sbx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{light}{it}{
- <-> alias * Junicode-TOsF/l/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldexpanded}{scit}{
+ <-> alias * Junicode-TOsF/sbx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{l}{scit}{
- <-> \Junicode@@scale Junicode-LightItalic-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{light}{scit}{
- <-> alias * Junicode-TOsF/l/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldexpanded}{n}{
+ <-> alias * Junicode-TOsF/sbx/n
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{l}{scsl}{
- <-> ssub * Junicode-TOsF/l/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{sbx}{sl}{
+ <-> ssub * Junicode-TOsF/sbx/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{light}{scsl}{
- <-> ssub * Junicode-TOsF/light/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/semiboldexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{l}{sl}{
- <-> ssub * Junicode-TOsF/l/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{sbx}{scsl}{
+ <-> ssub * Junicode-TOsF/sbx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{light}{sl}{
- <-> ssub * Junicode-TOsF/light/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/semiboldexpanded/scit
}{}
-% ---- lsc = lightsemicondensed ----
+% ---- x = expanded ----
-\DeclareFontShape{OT1}{Junicode-TOsF}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lightsemicondensed}{n}{
- <-> alias * Junicode-TOsF/lsc/n
+\DeclareFontShape{OT1}{Junicode-TOsF}{expanded}{n}{
+ <-> alias * Junicode-TOsF/x/n
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lsc}{sc}{
- <-> \Junicode@@scale Junicode-SmCondLight-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{x}{scit}{
+ <-> \Junicode@@scale Junicode-ExpItalic-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lightsemicondensed}{sc}{
- <-> alias * Junicode-TOsF/lsc/sc
+\DeclareFontShape{OT1}{Junicode-TOsF}{expanded}{scit}{
+ <-> alias * Junicode-TOsF/x/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lightsemicondensed}{it}{
- <-> alias * Junicode-TOsF/lsc/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{expanded}{it}{
+ <-> alias * Junicode-TOsF/x/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lsc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{x}{sc}{
+ <-> \Junicode@@scale Junicode-Exp-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lightsemicondensed}{scit}{
- <-> alias * Junicode-TOsF/lsc/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{expanded}{sc}{
+ <-> alias * Junicode-TOsF/x/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lsc}{scsl}{
- <-> ssub * Junicode-TOsF/lsc/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{x}{sl}{
+ <-> ssub * Junicode-TOsF/x/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lightsemicondensed}{scsl}{
- <-> ssub * Junicode-TOsF/lightsemicondensed/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{expanded}{sl}{
+ <-> ssub * Junicode-TOsF/expanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lsc}{sl}{
- <-> ssub * Junicode-TOsF/lsc/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{x}{scsl}{
+ <-> ssub * Junicode-TOsF/x/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-TOsF/lightsemicondensed/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{expanded}{scsl}{
+ <-> ssub * Junicode-TOsF/expanded/scit
}{}
-% ---- medium ----
+% ---- b = bold ----
-\DeclareFontShape{OT1}{Junicode-TOsF}{medium}{n}{
- <-> \Junicode@@scale Junicode-Medium-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{medium}{sc}{
- <-> \Junicode@@scale Junicode-Medium-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{bold}{it}{
+ <-> alias * Junicode-TOsF/b/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{medium}{scit}{
- <-> \Junicode@@scale Junicode-MediumItalic-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{bold}{n}{
+ <-> alias * Junicode-TOsF/b/n
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{medium}{scsl}{
- <-> ssub * Junicode-TOsF/medium/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{b}{scit}{
+ <-> \Junicode@@scale Junicode-BoldItalic-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{medium}{sl}{
- <-> ssub * Junicode-TOsF/medium/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{bold}{scit}{
+ <-> alias * Junicode-TOsF/b/scit
}{}
-
-% ---- m = regular ----
-
-\DeclareFontShape{OT1}{Junicode-TOsF}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{b}{sc}{
+ <-> \Junicode@@scale Junicode-Bold-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{regular}{it}{
- <-> alias * Junicode-TOsF/m/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{bold}{sc}{
+ <-> alias * Junicode-TOsF/b/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{m}{scit}{
- <-> \Junicode@@scale Junicode-Italic-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{b}{sl}{
+ <-> ssub * Junicode-TOsF/b/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{regular}{scit}{
- <-> alias * Junicode-TOsF/m/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{bold}{sl}{
+ <-> ssub * Junicode-TOsF/bold/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{b}{scsl}{
+ <-> ssub * Junicode-TOsF/b/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{regular}{n}{
- <-> alias * Junicode-TOsF/m/n
+\DeclareFontShape{OT1}{Junicode-TOsF}{bold}{scsl}{
+ <-> ssub * Junicode-TOsF/bold/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{m}{sc}{
- <-> \Junicode@@scale Junicode-Regular-tosf-sc-ot1
+
+% ---- mediumexpanded ----
+
+\DeclareFontShape{OT1}{Junicode-TOsF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{regular}{sc}{
- <-> alias * Junicode-TOsF/m/sc
+\DeclareFontShape{OT1}{Junicode-TOsF}{mediumexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{m}{scsl}{
- <-> ssub * Junicode-TOsF/m/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{regular}{scsl}{
- <-> ssub * Junicode-TOsF/regular/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{mediumexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-ExpMedium-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{m}{sl}{
- <-> ssub * Junicode-TOsF/m/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/mediumexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{regular}{sl}{
- <-> ssub * Junicode-TOsF/regular/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{mediumexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/mediumexpanded/scit
}{}
-% ---- sx = semiexpanded ----
+% ---- lsc = lightsemicondensed ----
-\DeclareFontShape{OT1}{Junicode-TOsF}{sx}{sc}{
- <-> \Junicode@@scale Junicode-SmExp-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{lsc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondLight-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semiexpanded}{sc}{
- <-> alias * Junicode-TOsF/sx/sc
+\DeclareFontShape{OT1}{Junicode-TOsF}{lightsemicondensed}{sc}{
+ <-> alias * Junicode-TOsF/lsc/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semiexpanded}{n}{
- <-> alias * Junicode-TOsF/sx/n
+\DeclareFontShape{OT1}{Junicode-TOsF}{lightsemicondensed}{n}{
+ <-> alias * Junicode-TOsF/lsc/n
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpItalic-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{lsc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semiexpanded}{scit}{
- <-> alias * Junicode-TOsF/sx/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{lightsemicondensed}{scit}{
+ <-> alias * Junicode-TOsF/lsc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semiexpanded}{it}{
- <-> alias * Junicode-TOsF/sx/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-TOsF/lsc/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sx}{scsl}{
- <-> ssub * Junicode-TOsF/sx/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{lsc}{sl}{
+ <-> ssub * Junicode-TOsF/lsc/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semiexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/semiexpanded/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-TOsF/lightsemicondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sx}{sl}{
- <-> ssub * Junicode-TOsF/sx/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{lsc}{scsl}{
+ <-> ssub * Junicode-TOsF/lsc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semiexpanded}{sl}{
- <-> ssub * Junicode-TOsF/semiexpanded/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{lightsemicondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/lightsemicondensed/scit
}{}
-% ---- c = condensed ----
+% ---- lc = lightcondensed ----
-\DeclareFontShape{OT1}{Junicode-TOsF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{lc}{scit}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{condensed}{it}{
- <-> alias * Junicode-TOsF/c/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{lightcondensed}{scit}{
+ <-> alias * Junicode-TOsF/lc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{c}{scit}{
- <-> \Junicode@@scale Junicode-CondItalic-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{condensed}{scit}{
- <-> alias * Junicode-TOsF/c/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{lightcondensed}{n}{
+ <-> alias * Junicode-TOsF/lc/n
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{condensed}{n}{
- <-> alias * Junicode-TOsF/c/n
+\DeclareFontShape{OT1}{Junicode-TOsF}{lightcondensed}{it}{
+ <-> alias * Junicode-TOsF/lc/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{c}{sc}{
- <-> \Junicode@@scale Junicode-Cond-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{lc}{sc}{
+ <-> \Junicode@@scale Junicode-CondLight-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{condensed}{sc}{
- <-> alias * Junicode-TOsF/c/sc
+\DeclareFontShape{OT1}{Junicode-TOsF}{lightcondensed}{sc}{
+ <-> alias * Junicode-TOsF/lc/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{c}{scsl}{
- <-> ssub * Junicode-TOsF/c/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{lc}{sl}{
+ <-> ssub * Junicode-TOsF/lc/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{condensed}{scsl}{
- <-> ssub * Junicode-TOsF/condensed/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{lightcondensed}{sl}{
+ <-> ssub * Junicode-TOsF/lightcondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{c}{sl}{
- <-> ssub * Junicode-TOsF/c/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{lc}{scsl}{
+ <-> ssub * Junicode-TOsF/lc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{condensed}{sl}{
- <-> ssub * Junicode-TOsF/condensed/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{lightcondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/lightcondensed/scit
}{}
-% ---- x = expanded ----
+% ---- m = regular ----
-\DeclareFontShape{OT1}{Junicode-TOsF}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{m}{sc}{
+ <-> \Junicode@@scale Junicode-Regular-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{expanded}{n}{
- <-> alias * Junicode-TOsF/x/n
+\DeclareFontShape{OT1}{Junicode-TOsF}{regular}{sc}{
+ <-> alias * Junicode-TOsF/m/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{x}{sc}{
- <-> \Junicode@@scale Junicode-Exp-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{expanded}{sc}{
- <-> alias * Junicode-TOsF/x/sc
+\DeclareFontShape{OT1}{Junicode-TOsF}{regular}{it}{
+ <-> alias * Junicode-TOsF/m/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{m}{scit}{
+ <-> \Junicode@@scale Junicode-Italic-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{expanded}{it}{
- <-> alias * Junicode-TOsF/x/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{regular}{scit}{
+ <-> alias * Junicode-TOsF/m/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{x}{scit}{
- <-> \Junicode@@scale Junicode-ExpItalic-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{expanded}{scit}{
- <-> alias * Junicode-TOsF/x/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{regular}{n}{
+ <-> alias * Junicode-TOsF/m/n
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{x}{scsl}{
- <-> ssub * Junicode-TOsF/x/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{m}{sl}{
+ <-> ssub * Junicode-TOsF/m/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{expanded}{scsl}{
- <-> ssub * Junicode-TOsF/expanded/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{regular}{sl}{
+ <-> ssub * Junicode-TOsF/regular/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{x}{sl}{
- <-> ssub * Junicode-TOsF/x/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{m}{scsl}{
+ <-> ssub * Junicode-TOsF/m/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{expanded}{sl}{
- <-> ssub * Junicode-TOsF/expanded/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{regular}{scsl}{
+ <-> ssub * Junicode-TOsF/regular/scit
}{}
% ---- mediumsemiexpanded ----
-\DeclareFontShape{OT1}{Junicode-TOsF}{mediumsemiexpanded}{sc}{
- <-> \Junicode@@scale Junicode-SmExpMedium-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-tosf-ot1
}{}
\DeclareFontShape{OT1}{Junicode-TOsF}{mediumsemiexpanded}{n}{
@@ -418,145 +418,196 @@
<-> \Junicode@@scale Junicode-SmExpMediumItalic-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{mediumsemiexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-tosf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{Junicode-TOsF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/mediumsemiexpanded/it
}{}
\DeclareFontShape{OT1}{Junicode-TOsF}{mediumsemiexpanded}{scsl}{
<-> ssub * Junicode-TOsF/mediumsemiexpanded/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-TOsF/mediumsemiexpanded/it
+
+% ---- medium ----
+
+\DeclareFontShape{OT1}{Junicode-TOsF}{medium}{sc}{
+ <-> \Junicode@@scale Junicode-Medium-tosf-sc-ot1
}{}
+\DeclareFontShape{OT1}{Junicode-TOsF}{medium}{n}{
+ <-> \Junicode@@scale Junicode-Medium-tosf-ot1
+}{}
-% ---- sbsx = semiboldsemiexpanded ----
+\DeclareFontShape{OT1}{Junicode-TOsF}{medium}{scit}{
+ <-> \Junicode@@scale Junicode-MediumItalic-tosf-sc-ot1
+}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sbsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldsemiexpanded}{sc}{
- <-> alias * Junicode-TOsF/sbsx/sc
+\DeclareFontShape{OT1}{Junicode-TOsF}{medium}{sl}{
+ <-> ssub * Junicode-TOsF/medium/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{medium}{scsl}{
+ <-> ssub * Junicode-TOsF/medium/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-TOsF/sbsx/n
+
+% ---- bx = boldexpanded ----
+
+\DeclareFontShape{OT1}{Junicode-TOsF}{bx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpBold-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sbsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{boldexpanded}{sc}{
+ <-> alias * Junicode-TOsF/bx/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldsemiexpanded}{scit}{
- <-> alias * Junicode-TOsF/sbsx/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{bx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{boldexpanded}{scit}{
+ <-> alias * Junicode-TOsF/bx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-TOsF/sbsx/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sbsx}{scsl}{
- <-> ssub * Junicode-TOsF/sbsx/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{boldexpanded}{n}{
+ <-> alias * Junicode-TOsF/bx/n
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldsemiexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/semiboldsemiexpanded/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sbsx}{sl}{
- <-> ssub * Junicode-TOsF/sbsx/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{boldexpanded}{it}{
+ <-> alias * Junicode-TOsF/bx/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-TOsF/semiboldsemiexpanded/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{bx}{sl}{
+ <-> ssub * Junicode-TOsF/bx/it
}{}
+\DeclareFontShape{OT1}{Junicode-TOsF}{boldexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/boldexpanded/it
+}{}
-% ---- mediumexpanded ----
+\DeclareFontShape{OT1}{Junicode-TOsF}{bx}{scsl}{
+ <-> ssub * Junicode-TOsF/bx/scit
+}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{mediumexpanded}{sc}{
- <-> \Junicode@@scale Junicode-ExpMedium-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{boldexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/boldexpanded/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-tosf-ot1
+
+% ---- sx = semiexpanded ----
+
+\DeclareFontShape{OT1}{Junicode-TOsF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{mediumexpanded}{scit}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{semiexpanded}{it}{
+ <-> alias * Junicode-TOsF/sx/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{mediumexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/mediumexpanded/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{semiexpanded}{n}{
+ <-> alias * Junicode-TOsF/sx/n
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-TOsF/mediumexpanded/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{sx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-tosf-sc-ot1
}{}
+\DeclareFontShape{OT1}{Junicode-TOsF}{semiexpanded}{scit}{
+ <-> alias * Junicode-TOsF/sx/scit
+}{}
-% ---- sbx = semiboldexpanded ----
+\DeclareFontShape{OT1}{Junicode-TOsF}{sx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExp-tosf-sc-ot1
+}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{semiexpanded}{sc}{
+ <-> alias * Junicode-TOsF/sx/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldexpanded}{it}{
- <-> alias * Junicode-TOsF/sbx/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{sx}{sl}{
+ <-> ssub * Junicode-TOsF/sx/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sbx}{scit}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/semiexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldexpanded}{scit}{
- <-> alias * Junicode-TOsF/sbx/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{sx}{scsl}{
+ <-> ssub * Junicode-TOsF/sx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{semiexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/semiexpanded/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldexpanded}{n}{
- <-> alias * Junicode-TOsF/sbx/n
+
+% ---- l = light ----
+
+\DeclareFontShape{OT1}{Junicode-TOsF}{l}{sc}{
+ <-> \Junicode@@scale Junicode-Light-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sbx}{sc}{
- <-> \Junicode@@scale Junicode-ExpSmBold-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{light}{sc}{
+ <-> alias * Junicode-TOsF/l/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldexpanded}{sc}{
- <-> alias * Junicode-TOsF/sbx/sc
+\DeclareFontShape{OT1}{Junicode-TOsF}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sbx}{scsl}{
- <-> ssub * Junicode-TOsF/sbx/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{light}{it}{
+ <-> alias * Junicode-TOsF/l/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/semiboldexpanded/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sbx}{sl}{
- <-> ssub * Junicode-TOsF/sbx/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{light}{n}{
+ <-> alias * Junicode-TOsF/l/n
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-TOsF/semiboldexpanded/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{l}{scit}{
+ <-> \Junicode@@scale Junicode-LightItalic-tosf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{Junicode-TOsF}{light}{scit}{
+ <-> alias * Junicode-TOsF/l/scit
+}{}
+
+\DeclareFontShape{OT1}{Junicode-TOsF}{l}{sl}{
+ <-> ssub * Junicode-TOsF/l/it
+}{}
+
+\DeclareFontShape{OT1}{Junicode-TOsF}{light}{sl}{
+ <-> ssub * Junicode-TOsF/light/it
+}{}
+
+\DeclareFontShape{OT1}{Junicode-TOsF}{l}{scsl}{
+ <-> ssub * Junicode-TOsF/l/scit
+}{}
+
+\DeclareFontShape{OT1}{Junicode-TOsF}{light}{scsl}{
+ <-> ssub * Junicode-TOsF/light/scit
}{}
@@ -566,36 +617,28 @@
<-> \Junicode@@scale Junicode-SmCondMediumItalic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{mediumsemicondensed}{scit}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-tosf-sc-ot1
-}{}
-
\DeclareFontShape{OT1}{Junicode-TOsF}{mediumsemicondensed}{n}{
<-> \Junicode@@scale Junicode-SmCondMedium-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{mediumsemicondensed}{sc}{
- <-> \Junicode@@scale Junicode-SmCondMedium-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{mediumsemicondensed}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{mediumsemicondensed}{scsl}{
- <-> ssub * Junicode-TOsF/mediumsemicondensed/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{mediumsemicondensed}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-tosf-sc-ot1
}{}
\DeclareFontShape{OT1}{Junicode-TOsF}{mediumsemicondensed}{sl}{
<-> ssub * Junicode-TOsF/mediumsemicondensed/it
}{}
-
-% ---- sb = semibold ----
-
-\DeclareFontShape{OT1}{Junicode-TOsF}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{mediumsemicondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/mediumsemicondensed/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semibold}{n}{
- <-> alias * Junicode-TOsF/sb/n
-}{}
+
+% ---- sb = semibold ----
\DeclareFontShape{OT1}{Junicode-TOsF}{sb}{sc}{
<-> \Junicode@@scale Junicode-SmBold-tosf-sc-ot1
@@ -605,12 +648,12 @@
<-> alias * Junicode-TOsF/sb/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semibold}{it}{
- <-> alias * Junicode-TOsF/sb/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{semibold}{n}{
+ <-> alias * Junicode-TOsF/sb/n
}{}
\DeclareFontShape{OT1}{Junicode-TOsF}{sb}{scit}{
@@ -621,12 +664,12 @@
<-> alias * Junicode-TOsF/sb/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sb}{scsl}{
- <-> ssub * Junicode-TOsF/sb/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semibold}{scsl}{
- <-> ssub * Junicode-TOsF/semibold/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{semibold}{it}{
+ <-> alias * Junicode-TOsF/sb/it
}{}
\DeclareFontShape{OT1}{Junicode-TOsF}{sb}{sl}{
@@ -637,66 +680,50 @@
<-> ssub * Junicode-TOsF/semibold/it
}{}
-
-% ---- sc = semicondensed ----
-
-\DeclareFontShape{OT1}{Junicode-TOsF}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-tosf-ot1
-}{}
-
-\DeclareFontShape{OT1}{Junicode-TOsF}{semicondensed}{it}{
- <-> alias * Junicode-TOsF/sc/it
-}{}
-
-\DeclareFontShape{OT1}{Junicode-TOsF}{sc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondItalic-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{sb}{scsl}{
+ <-> ssub * Junicode-TOsF/sb/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semicondensed}{scit}{
- <-> alias * Junicode-TOsF/sc/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{semibold}{scsl}{
+ <-> ssub * Junicode-TOsF/semibold/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-tosf-ot1
-}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semicondensed}{n}{
- <-> alias * Junicode-TOsF/sc/n
-}{}
+% ---- mediumcondensed ----
-\DeclareFontShape{OT1}{Junicode-TOsF}{sc}{sc}{
- <-> \Junicode@@scale Junicode-SmCond-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{mediumcondensed}{sc}{
+ <-> \Junicode@@scale Junicode-CondMedium-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semicondensed}{sc}{
- <-> alias * Junicode-TOsF/sc/sc
+\DeclareFontShape{OT1}{Junicode-TOsF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sc}{scsl}{
- <-> ssub * Junicode-TOsF/sc/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{mediumcondensed}{scit}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semicondensed}{scsl}{
- <-> ssub * Junicode-TOsF/semicondensed/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{sc}{sl}{
- <-> ssub * Junicode-TOsF/sc/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-TOsF/mediumcondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{semicondensed}{sl}{
- <-> ssub * Junicode-TOsF/semicondensed/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{mediumcondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/mediumcondensed/scit
}{}
% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{OT1}{Junicode-TOsF}{bsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{bsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpBold-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{boldsemiexpanded}{scit}{
- <-> alias * Junicode-TOsF/bsx/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{boldsemiexpanded}{sc}{
+ <-> alias * Junicode-TOsF/bsx/sc
}{}
\DeclareFontShape{OT1}{Junicode-TOsF}{bsx}{it}{
@@ -707,14 +734,6 @@
<-> alias * Junicode-TOsF/bsx/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{bsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpBold-tosf-sc-ot1
-}{}
-
-\DeclareFontShape{OT1}{Junicode-TOsF}{boldsemiexpanded}{sc}{
- <-> alias * Junicode-TOsF/bsx/sc
-}{}
-
\DeclareFontShape{OT1}{Junicode-TOsF}{bsx}{n}{
<-> \Junicode@@scale Junicode-SmExpBold-tosf-ot1
}{}
@@ -723,12 +742,12 @@
<-> alias * Junicode-TOsF/bsx/n
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{bsx}{scsl}{
- <-> ssub * Junicode-TOsF/bsx/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{bsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{boldsemiexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/boldsemiexpanded/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{boldsemiexpanded}{scit}{
+ <-> alias * Junicode-TOsF/bsx/scit
}{}
\DeclareFontShape{OT1}{Junicode-TOsF}{bsx}{sl}{
@@ -739,133 +758,114 @@
<-> ssub * Junicode-TOsF/boldsemiexpanded/it
}{}
-
-% ---- lc = lightcondensed ----
-
-\DeclareFontShape{OT1}{Junicode-TOsF}{lc}{sc}{
- <-> \Junicode@@scale Junicode-CondLight-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{bsx}{scsl}{
+ <-> ssub * Junicode-TOsF/bsx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lightcondensed}{sc}{
- <-> alias * Junicode-TOsF/lc/sc
+\DeclareFontShape{OT1}{Junicode-TOsF}{boldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/boldsemiexpanded/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-tosf-ot1
-}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lightcondensed}{n}{
- <-> alias * Junicode-TOsF/lc/n
-}{}
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{OT1}{Junicode-TOsF}{lc}{scit}{
- <-> \Junicode@@scale Junicode-CondLightItalic-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lightcondensed}{scit}{
- <-> alias * Junicode-TOsF/lc/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-TOsF/sbsx/n
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{sbsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lightcondensed}{it}{
- <-> alias * Junicode-TOsF/lc/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldsemiexpanded}{scit}{
+ <-> alias * Junicode-TOsF/sbsx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lc}{scsl}{
- <-> ssub * Junicode-TOsF/lc/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lightcondensed}{scsl}{
- <-> ssub * Junicode-TOsF/lightcondensed/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-TOsF/sbsx/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lc}{sl}{
- <-> ssub * Junicode-TOsF/lc/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{sbsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{lightcondensed}{sl}{
- <-> ssub * Junicode-TOsF/lightcondensed/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldsemiexpanded}{sc}{
+ <-> alias * Junicode-TOsF/sbsx/sc
}{}
-
-% ---- b = bold ----
-
-\DeclareFontShape{OT1}{Junicode-TOsF}{b}{sc}{
- <-> \Junicode@@scale Junicode-Bold-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{sbsx}{sl}{
+ <-> ssub * Junicode-TOsF/sbsx/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{bold}{sc}{
- <-> alias * Junicode-TOsF/b/sc
+\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/semiboldsemiexpanded/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{sbsx}{scsl}{
+ <-> ssub * Junicode-TOsF/sbsx/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{bold}{n}{
- <-> alias * Junicode-TOsF/b/n
+\DeclareFontShape{OT1}{Junicode-TOsF}{semiboldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/semiboldsemiexpanded/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{b}{scit}{
- <-> \Junicode@@scale Junicode-BoldItalic-tosf-sc-ot1
-}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{bold}{scit}{
- <-> alias * Junicode-TOsF/b/scit
-}{}
+% ---- sc = semicondensed ----
-\DeclareFontShape{OT1}{Junicode-TOsF}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{sc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCond-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{bold}{it}{
- <-> alias * Junicode-TOsF/b/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{semicondensed}{sc}{
+ <-> alias * Junicode-TOsF/sc/sc
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{b}{scsl}{
- <-> ssub * Junicode-TOsF/b/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{bold}{scsl}{
- <-> ssub * Junicode-TOsF/bold/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{semicondensed}{it}{
+ <-> alias * Junicode-TOsF/sc/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{b}{sl}{
- <-> ssub * Junicode-TOsF/b/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{sc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{bold}{sl}{
- <-> ssub * Junicode-TOsF/bold/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{semicondensed}{scit}{
+ <-> alias * Junicode-TOsF/sc/scit
}{}
-
-% ---- mediumcondensed ----
-
-\DeclareFontShape{OT1}{Junicode-TOsF}{mediumcondensed}{scit}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-tosf-ot1
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{semicondensed}{n}{
+ <-> alias * Junicode-TOsF/sc/n
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{mediumcondensed}{sc}{
- <-> \Junicode@@scale Junicode-CondMedium-tosf-sc-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{sc}{sl}{
+ <-> ssub * Junicode-TOsF/sc/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-tosf-ot1
+\DeclareFontShape{OT1}{Junicode-TOsF}{semicondensed}{sl}{
+ <-> ssub * Junicode-TOsF/semicondensed/it
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{mediumcondensed}{scsl}{
- <-> ssub * Junicode-TOsF/mediumcondensed/scit
+\DeclareFontShape{OT1}{Junicode-TOsF}{sc}{scsl}{
+ <-> ssub * Junicode-TOsF/sc/scit
}{}
-\DeclareFontShape{OT1}{Junicode-TOsF}{mediumcondensed}{sl}{
- <-> ssub * Junicode-TOsF/mediumcondensed/it
+\DeclareFontShape{OT1}{Junicode-TOsF}{semicondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/semicondensed/scit
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/T1Junicode-Inf.fd b/Master/texmf-dist/tex/latex/junicode/T1Junicode-Inf.fd
index 847a5511252..8aa4e98b72b 100644
--- a/Master/texmf-dist/tex/latex/junicode/T1Junicode-Inf.fd
+++ b/Master/texmf-dist/tex/latex/junicode/T1Junicode-Inf.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{T1Junicode-Inf.fd}
- [2024/06/03 (autoinst) Font definitions for T1/Junicode-Inf.]
+ [2024/07/21 (autoinst) Font definitions for T1/Junicode-Inf.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,146 +20,85 @@
\DeclareFontFamily{T1}{Junicode-Inf}{}
-% ---- sbsx = semiboldsemiexpanded ----
-
-\DeclareFontShape{T1}{Junicode-Inf}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-inf-t1
-}{}
-
-\DeclareFontShape{T1}{Junicode-Inf}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-Inf/sbsx/it
-}{}
-
-\DeclareFontShape{T1}{Junicode-Inf}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-inf-t1
-}{}
-
-\DeclareFontShape{T1}{Junicode-Inf}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-Inf/sbsx/n
-}{}
-
-\DeclareFontShape{T1}{Junicode-Inf}{sbsx}{sl}{
- <-> ssub * Junicode-Inf/sbsx/it
-}{}
-
-\DeclareFontShape{T1}{Junicode-Inf}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-Inf/semiboldsemiexpanded/it
-}{}
-
-
-% ---- mediumexpanded ----
-
-\DeclareFontShape{T1}{Junicode-Inf}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-inf-t1
-}{}
+% ---- lc = lightcondensed ----
-\DeclareFontShape{T1}{Junicode-Inf}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-inf-t1
+\DeclareFontShape{T1}{Junicode-Inf}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{mediumexpanded}{sl}{
- <-> ssub * Junicode-Inf/mediumexpanded/it
+\DeclareFontShape{T1}{Junicode-Inf}{lightcondensed}{n}{
+ <-> alias * Junicode-Inf/lc/n
}{}
-
-% ---- mediumsemiexpanded ----
-
-\DeclareFontShape{T1}{Junicode-Inf}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-inf-t1
+\DeclareFontShape{T1}{Junicode-Inf}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-inf-t1
+\DeclareFontShape{T1}{Junicode-Inf}{lightcondensed}{it}{
+ <-> alias * Junicode-Inf/lc/it
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-Inf/mediumsemiexpanded/it
+\DeclareFontShape{T1}{Junicode-Inf}{lc}{sl}{
+ <-> ssub * Junicode-Inf/lc/it
}{}
-
-% ---- sx = semiexpanded ----
-
-\DeclareFontShape{T1}{Junicode-Inf}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-inf-t1
+\DeclareFontShape{T1}{Junicode-Inf}{lightcondensed}{sl}{
+ <-> ssub * Junicode-Inf/lightcondensed/it
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{semiexpanded}{n}{
- <-> alias * Junicode-Inf/sx/n
-}{}
-\DeclareFontShape{T1}{Junicode-Inf}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-inf-t1
-}{}
+% ---- medium ----
-\DeclareFontShape{T1}{Junicode-Inf}{semiexpanded}{it}{
- <-> alias * Junicode-Inf/sx/it
+\DeclareFontShape{T1}{Junicode-Inf}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{sx}{sl}{
- <-> ssub * Junicode-Inf/sx/it
+\DeclareFontShape{T1}{Junicode-Inf}{medium}{n}{
+ <-> \Junicode@@scale Junicode-Medium-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{semiexpanded}{sl}{
- <-> ssub * Junicode-Inf/semiexpanded/it
+\DeclareFontShape{T1}{Junicode-Inf}{medium}{sl}{
+ <-> ssub * Junicode-Inf/medium/it
}{}
-% ---- c = condensed ----
-
-\DeclareFontShape{T1}{Junicode-Inf}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-inf-t1
-}{}
-
-\DeclareFontShape{T1}{Junicode-Inf}{condensed}{it}{
- <-> alias * Junicode-Inf/c/it
-}{}
+% ---- bx = boldexpanded ----
-\DeclareFontShape{T1}{Junicode-Inf}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-inf-t1
+\DeclareFontShape{T1}{Junicode-Inf}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{condensed}{n}{
- <-> alias * Junicode-Inf/c/n
+\DeclareFontShape{T1}{Junicode-Inf}{boldexpanded}{it}{
+ <-> alias * Junicode-Inf/bx/it
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{c}{sl}{
- <-> ssub * Junicode-Inf/c/it
+\DeclareFontShape{T1}{Junicode-Inf}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{condensed}{sl}{
- <-> ssub * Junicode-Inf/condensed/it
+\DeclareFontShape{T1}{Junicode-Inf}{boldexpanded}{n}{
+ <-> alias * Junicode-Inf/bx/n
}{}
-
-% ---- x = expanded ----
-
-\DeclareFontShape{T1}{Junicode-Inf}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-inf-t1
+\DeclareFontShape{T1}{Junicode-Inf}{bx}{sl}{
+ <-> ssub * Junicode-Inf/bx/it
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{expanded}{it}{
- <-> alias * Junicode-Inf/x/it
+\DeclareFontShape{T1}{Junicode-Inf}{boldexpanded}{sl}{
+ <-> ssub * Junicode-Inf/boldexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-inf-t1
-}{}
-\DeclareFontShape{T1}{Junicode-Inf}{expanded}{n}{
- <-> alias * Junicode-Inf/x/n
-}{}
+% ---- m = regular ----
-\DeclareFontShape{T1}{Junicode-Inf}{x}{sl}{
- <-> ssub * Junicode-Inf/x/it
+\DeclareFontShape{T1}{Junicode-Inf}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{expanded}{sl}{
- <-> ssub * Junicode-Inf/expanded/it
+\DeclareFontShape{T1}{Junicode-Inf}{regular}{it}{
+ <-> alias * Junicode-Inf/m/it
}{}
-
-% ---- m = regular ----
-
\DeclareFontShape{T1}{Junicode-Inf}{m}{n}{
<-> \Junicode@@scale Junicode-Regular-inf-t1
}{}
@@ -168,14 +107,6 @@
<-> alias * Junicode-Inf/m/n
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-inf-t1
-}{}
-
-\DeclareFontShape{T1}{Junicode-Inf}{regular}{it}{
- <-> alias * Junicode-Inf/m/it
-}{}
-
\DeclareFontShape{T1}{Junicode-Inf}{m}{sl}{
<-> ssub * Junicode-Inf/m/it
}{}
@@ -185,45 +116,18 @@
}{}
-% ---- lsc = lightsemicondensed ----
-
-\DeclareFontShape{T1}{Junicode-Inf}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-inf-t1
-}{}
-
-\DeclareFontShape{T1}{Junicode-Inf}{lightsemicondensed}{n}{
- <-> alias * Junicode-Inf/lsc/n
-}{}
-
-\DeclareFontShape{T1}{Junicode-Inf}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-inf-t1
-}{}
-
-\DeclareFontShape{T1}{Junicode-Inf}{lightsemicondensed}{it}{
- <-> alias * Junicode-Inf/lsc/it
-}{}
-
-\DeclareFontShape{T1}{Junicode-Inf}{lsc}{sl}{
- <-> ssub * Junicode-Inf/lsc/it
-}{}
-
-\DeclareFontShape{T1}{Junicode-Inf}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-Inf/lightsemicondensed/it
-}{}
-
-
-% ---- medium ----
+% ---- mediumsemiexpanded ----
-\DeclareFontShape{T1}{Junicode-Inf}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-inf-t1
+\DeclareFontShape{T1}{Junicode-Inf}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{medium}{n}{
- <-> \Junicode@@scale Junicode-Medium-inf-t1
+\DeclareFontShape{T1}{Junicode-Inf}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{medium}{sl}{
- <-> ssub * Junicode-Inf/medium/it
+\DeclareFontShape{T1}{Junicode-Inf}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-Inf/mediumsemiexpanded/it
}{}
@@ -254,30 +158,45 @@
}{}
-% ---- bx = boldexpanded ----
+% ---- sx = semiexpanded ----
-\DeclareFontShape{T1}{Junicode-Inf}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-inf-t1
+\DeclareFontShape{T1}{Junicode-Inf}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{boldexpanded}{n}{
- <-> alias * Junicode-Inf/bx/n
+\DeclareFontShape{T1}{Junicode-Inf}{semiexpanded}{it}{
+ <-> alias * Junicode-Inf/sx/it
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-inf-t1
+\DeclareFontShape{T1}{Junicode-Inf}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{boldexpanded}{it}{
- <-> alias * Junicode-Inf/bx/it
+\DeclareFontShape{T1}{Junicode-Inf}{semiexpanded}{n}{
+ <-> alias * Junicode-Inf/sx/n
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{bx}{sl}{
- <-> ssub * Junicode-Inf/bx/it
+\DeclareFontShape{T1}{Junicode-Inf}{sx}{sl}{
+ <-> ssub * Junicode-Inf/sx/it
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{boldexpanded}{sl}{
- <-> ssub * Junicode-Inf/boldexpanded/it
+\DeclareFontShape{T1}{Junicode-Inf}{semiexpanded}{sl}{
+ <-> ssub * Junicode-Inf/semiexpanded/it
+}{}
+
+
+% ---- mediumsemicondensed ----
+
+\DeclareFontShape{T1}{Junicode-Inf}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-inf-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-Inf}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-inf-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-Inf}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-Inf/mediumsemicondensed/it
}{}
@@ -296,84 +215,84 @@
}{}
-% ---- b = bold ----
+% ---- sb = semibold ----
-\DeclareFontShape{T1}{Junicode-Inf}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-inf-t1
+\DeclareFontShape{T1}{Junicode-Inf}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{bold}{n}{
- <-> alias * Junicode-Inf/b/n
+\DeclareFontShape{T1}{Junicode-Inf}{semibold}{it}{
+ <-> alias * Junicode-Inf/sb/it
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-inf-t1
+\DeclareFontShape{T1}{Junicode-Inf}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{bold}{it}{
- <-> alias * Junicode-Inf/b/it
+\DeclareFontShape{T1}{Junicode-Inf}{semibold}{n}{
+ <-> alias * Junicode-Inf/sb/n
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{b}{sl}{
- <-> ssub * Junicode-Inf/b/it
+\DeclareFontShape{T1}{Junicode-Inf}{sb}{sl}{
+ <-> ssub * Junicode-Inf/sb/it
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{bold}{sl}{
- <-> ssub * Junicode-Inf/bold/it
+\DeclareFontShape{T1}{Junicode-Inf}{semibold}{sl}{
+ <-> ssub * Junicode-Inf/semibold/it
}{}
-% ---- bsx = boldsemiexpanded ----
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{T1}{Junicode-Inf}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-inf-t1
+\DeclareFontShape{T1}{Junicode-Inf}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{boldsemiexpanded}{n}{
- <-> alias * Junicode-Inf/bsx/n
+\DeclareFontShape{T1}{Junicode-Inf}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-Inf/sbsx/n
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-inf-t1
+\DeclareFontShape{T1}{Junicode-Inf}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{boldsemiexpanded}{it}{
- <-> alias * Junicode-Inf/bsx/it
+\DeclareFontShape{T1}{Junicode-Inf}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-Inf/sbsx/it
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{bsx}{sl}{
- <-> ssub * Junicode-Inf/bsx/it
+\DeclareFontShape{T1}{Junicode-Inf}{sbsx}{sl}{
+ <-> ssub * Junicode-Inf/sbsx/it
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-Inf/boldsemiexpanded/it
+\DeclareFontShape{T1}{Junicode-Inf}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-Inf/semiboldsemiexpanded/it
}{}
-% ---- lc = lightcondensed ----
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{T1}{Junicode-Inf}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-inf-t1
+\DeclareFontShape{T1}{Junicode-Inf}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{lightcondensed}{n}{
- <-> alias * Junicode-Inf/lc/n
+\DeclareFontShape{T1}{Junicode-Inf}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-Inf/bsx/n
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-inf-t1
+\DeclareFontShape{T1}{Junicode-Inf}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{lightcondensed}{it}{
- <-> alias * Junicode-Inf/lc/it
+\DeclareFontShape{T1}{Junicode-Inf}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-Inf/bsx/it
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{lc}{sl}{
- <-> ssub * Junicode-Inf/lc/it
+\DeclareFontShape{T1}{Junicode-Inf}{bsx}{sl}{
+ <-> ssub * Junicode-Inf/bsx/it
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{lightcondensed}{sl}{
- <-> ssub * Junicode-Inf/lightcondensed/it
+\DeclareFontShape{T1}{Junicode-Inf}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-Inf/boldsemiexpanded/it
}{}
@@ -404,50 +323,43 @@
}{}
-% ---- sb = semibold ----
+% ---- c = condensed ----
-\DeclareFontShape{T1}{Junicode-Inf}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-inf-t1
+\DeclareFontShape{T1}{Junicode-Inf}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{semibold}{n}{
- <-> alias * Junicode-Inf/sb/n
+\DeclareFontShape{T1}{Junicode-Inf}{condensed}{it}{
+ <-> alias * Junicode-Inf/c/it
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-inf-t1
+\DeclareFontShape{T1}{Junicode-Inf}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{semibold}{it}{
- <-> alias * Junicode-Inf/sb/it
+\DeclareFontShape{T1}{Junicode-Inf}{condensed}{n}{
+ <-> alias * Junicode-Inf/c/n
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{sb}{sl}{
- <-> ssub * Junicode-Inf/sb/it
+\DeclareFontShape{T1}{Junicode-Inf}{c}{sl}{
+ <-> ssub * Junicode-Inf/c/it
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{semibold}{sl}{
- <-> ssub * Junicode-Inf/semibold/it
+\DeclareFontShape{T1}{Junicode-Inf}{condensed}{sl}{
+ <-> ssub * Junicode-Inf/condensed/it
}{}
-% ---- mediumsemicondensed ----
-
-\DeclareFontShape{T1}{Junicode-Inf}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-inf-t1
-}{}
+% ---- sbx = semiboldexpanded ----
-\DeclareFontShape{T1}{Junicode-Inf}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-inf-t1
+\DeclareFontShape{T1}{Junicode-Inf}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-inf-t1
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-Inf/mediumsemicondensed/it
+\DeclareFontShape{T1}{Junicode-Inf}{semiboldexpanded}{n}{
+ <-> alias * Junicode-Inf/sbx/n
}{}
-
-% ---- sbx = semiboldexpanded ----
-
\DeclareFontShape{T1}{Junicode-Inf}{sbx}{it}{
<-> \Junicode@@scale Junicode-ExpSmBoldItalic-inf-t1
}{}
@@ -456,14 +368,6 @@
<-> alias * Junicode-Inf/sbx/it
}{}
-\DeclareFontShape{T1}{Junicode-Inf}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-inf-t1
-}{}
-
-\DeclareFontShape{T1}{Junicode-Inf}{semiboldexpanded}{n}{
- <-> alias * Junicode-Inf/sbx/n
-}{}
-
\DeclareFontShape{T1}{Junicode-Inf}{sbx}{sl}{
<-> ssub * Junicode-Inf/sbx/it
}{}
@@ -473,6 +377,102 @@
}{}
+% ---- b = bold ----
+
+\DeclareFontShape{T1}{Junicode-Inf}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-inf-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-Inf}{bold}{it}{
+ <-> alias * Junicode-Inf/b/it
+}{}
+
+\DeclareFontShape{T1}{Junicode-Inf}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-inf-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-Inf}{bold}{n}{
+ <-> alias * Junicode-Inf/b/n
+}{}
+
+\DeclareFontShape{T1}{Junicode-Inf}{b}{sl}{
+ <-> ssub * Junicode-Inf/b/it
+}{}
+
+\DeclareFontShape{T1}{Junicode-Inf}{bold}{sl}{
+ <-> ssub * Junicode-Inf/bold/it
+}{}
+
+
+% ---- x = expanded ----
+
+\DeclareFontShape{T1}{Junicode-Inf}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-inf-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-Inf}{expanded}{n}{
+ <-> alias * Junicode-Inf/x/n
+}{}
+
+\DeclareFontShape{T1}{Junicode-Inf}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-inf-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-Inf}{expanded}{it}{
+ <-> alias * Junicode-Inf/x/it
+}{}
+
+\DeclareFontShape{T1}{Junicode-Inf}{x}{sl}{
+ <-> ssub * Junicode-Inf/x/it
+}{}
+
+\DeclareFontShape{T1}{Junicode-Inf}{expanded}{sl}{
+ <-> ssub * Junicode-Inf/expanded/it
+}{}
+
+
+% ---- mediumexpanded ----
+
+\DeclareFontShape{T1}{Junicode-Inf}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-inf-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-Inf}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-inf-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-Inf}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-Inf/mediumexpanded/it
+}{}
+
+
+% ---- lsc = lightsemicondensed ----
+
+\DeclareFontShape{T1}{Junicode-Inf}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-inf-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-Inf}{lightsemicondensed}{n}{
+ <-> alias * Junicode-Inf/lsc/n
+}{}
+
+\DeclareFontShape{T1}{Junicode-Inf}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-inf-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-Inf}{lightsemicondensed}{it}{
+ <-> alias * Junicode-Inf/lsc/it
+}{}
+
+\DeclareFontShape{T1}{Junicode-Inf}{lsc}{sl}{
+ <-> ssub * Junicode-Inf/lsc/it
+}{}
+
+\DeclareFontShape{T1}{Junicode-Inf}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-Inf/lightsemicondensed/it
+}{}
+
+
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
\endinput
diff --git a/Master/texmf-dist/tex/latex/junicode/T1Junicode-LF.fd b/Master/texmf-dist/tex/latex/junicode/T1Junicode-LF.fd
index e694d9fc06b..96a93a875c1 100644
--- a/Master/texmf-dist/tex/latex/junicode/T1Junicode-LF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/T1Junicode-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{T1Junicode-LF.fd}
- [2024/06/03 (autoinst) Font definitions for T1/Junicode-LF.]
+ [2024/07/21 (autoinst) Font definitions for T1/Junicode-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,178 +20,167 @@
\DeclareFontFamily{T1}{Junicode-LF}{}
-% ---- sbsx = semiboldsemiexpanded ----
+% ---- c = condensed ----
-\DeclareFontShape{T1}{Junicode-LF}{sbsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{c}{scit}{
+ <-> \Junicode@@scale Junicode-CondItalic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semiboldsemiexpanded}{scit}{
- <-> alias * Junicode-LF/sbsx/scit
+\DeclareFontShape{T1}{Junicode-LF}{condensed}{scit}{
+ <-> alias * Junicode-LF/c/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-LF/sbsx/it
+\DeclareFontShape{T1}{Junicode-LF}{condensed}{n}{
+ <-> alias * Junicode-LF/c/n
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sbsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semiboldsemiexpanded}{sc}{
- <-> alias * Junicode-LF/sbsx/sc
+\DeclareFontShape{T1}{Junicode-LF}{condensed}{it}{
+ <-> alias * Junicode-LF/c/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{c}{sc}{
+ <-> \Junicode@@scale Junicode-Cond-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-LF/sbsx/n
+\DeclareFontShape{T1}{Junicode-LF}{condensed}{sc}{
+ <-> alias * Junicode-LF/c/sc
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sbsx}{scsl}{
- <-> ssub * Junicode-LF/sbsx/scit
+\DeclareFontShape{T1}{Junicode-LF}{c}{sl}{
+ <-> ssub * Junicode-LF/c/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semiboldsemiexpanded}{scsl}{
- <-> ssub * Junicode-LF/semiboldsemiexpanded/scit
+\DeclareFontShape{T1}{Junicode-LF}{condensed}{sl}{
+ <-> ssub * Junicode-LF/condensed/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sbsx}{sl}{
- <-> ssub * Junicode-LF/sbsx/it
+\DeclareFontShape{T1}{Junicode-LF}{c}{scsl}{
+ <-> ssub * Junicode-LF/c/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-LF/semiboldsemiexpanded/it
+\DeclareFontShape{T1}{Junicode-LF}{condensed}{scsl}{
+ <-> ssub * Junicode-LF/condensed/scit
}{}
-% ---- mediumexpanded ----
+% ---- sbx = semiboldexpanded ----
-\DeclareFontShape{T1}{Junicode-LF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{sbx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumexpanded}{scit}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{semiboldexpanded}{sc}{
+ <-> alias * Junicode-LF/sbx/sc
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumexpanded}{sc}{
- <-> \Junicode@@scale Junicode-ExpMedium-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{semiboldexpanded}{it}{
+ <-> alias * Junicode-LF/sbx/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumexpanded}{scsl}{
- <-> ssub * Junicode-LF/mediumexpanded/scit
+\DeclareFontShape{T1}{Junicode-LF}{sbx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-LF/mediumexpanded/it
+\DeclareFontShape{T1}{Junicode-LF}{semiboldexpanded}{scit}{
+ <-> alias * Junicode-LF/sbx/scit
}{}
-
-% ---- mediumsemiexpanded ----
-
-\DeclareFontShape{T1}{Junicode-LF}{mediumsemiexpanded}{scit}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{semiboldexpanded}{n}{
+ <-> alias * Junicode-LF/sbx/n
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumsemiexpanded}{sc}{
- <-> \Junicode@@scale Junicode-SmExpMedium-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{sbx}{sl}{
+ <-> ssub * Junicode-LF/sbx/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-LF/semiboldexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumsemiexpanded}{scsl}{
- <-> ssub * Junicode-LF/mediumsemiexpanded/scit
+\DeclareFontShape{T1}{Junicode-LF}{sbx}{scsl}{
+ <-> ssub * Junicode-LF/sbx/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-LF/mediumsemiexpanded/it
+\DeclareFontShape{T1}{Junicode-LF}{semiboldexpanded}{scsl}{
+ <-> ssub * Junicode-LF/semiboldexpanded/scit
}{}
-% ---- sx = semiexpanded ----
+% ---- b = bold ----
-\DeclareFontShape{T1}{Junicode-LF}{sx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpItalic-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{b}{scit}{
+ <-> \Junicode@@scale Junicode-BoldItalic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semiexpanded}{scit}{
- <-> alias * Junicode-LF/sx/scit
+\DeclareFontShape{T1}{Junicode-LF}{bold}{scit}{
+ <-> alias * Junicode-LF/b/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semiexpanded}{it}{
- <-> alias * Junicode-LF/sx/it
+\DeclareFontShape{T1}{Junicode-LF}{bold}{n}{
+ <-> alias * Junicode-LF/b/n
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sx}{sc}{
- <-> \Junicode@@scale Junicode-SmExp-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semiexpanded}{sc}{
- <-> alias * Junicode-LF/sx/sc
+\DeclareFontShape{T1}{Junicode-LF}{bold}{it}{
+ <-> alias * Junicode-LF/b/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{b}{sc}{
+ <-> \Junicode@@scale Junicode-Bold-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semiexpanded}{n}{
- <-> alias * Junicode-LF/sx/n
+\DeclareFontShape{T1}{Junicode-LF}{bold}{sc}{
+ <-> alias * Junicode-LF/b/sc
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sx}{scsl}{
- <-> ssub * Junicode-LF/sx/scit
+\DeclareFontShape{T1}{Junicode-LF}{b}{sl}{
+ <-> ssub * Junicode-LF/b/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semiexpanded}{scsl}{
- <-> ssub * Junicode-LF/semiexpanded/scit
+\DeclareFontShape{T1}{Junicode-LF}{bold}{sl}{
+ <-> ssub * Junicode-LF/bold/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sx}{sl}{
- <-> ssub * Junicode-LF/sx/it
+\DeclareFontShape{T1}{Junicode-LF}{b}{scsl}{
+ <-> ssub * Junicode-LF/b/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semiexpanded}{sl}{
- <-> ssub * Junicode-LF/semiexpanded/it
+\DeclareFontShape{T1}{Junicode-LF}{bold}{scsl}{
+ <-> ssub * Junicode-LF/bold/scit
}{}
% ---- x = expanded ----
-\DeclareFontShape{T1}{Junicode-LF}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-lf-t1
-}{}
-
-\DeclareFontShape{T1}{Junicode-LF}{expanded}{it}{
- <-> alias * Junicode-LF/x/it
-}{}
-
-\DeclareFontShape{T1}{Junicode-LF}{x}{scit}{
- <-> \Junicode@@scale Junicode-ExpItalic-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{x}{sc}{
+ <-> \Junicode@@scale Junicode-Exp-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{expanded}{scit}{
- <-> alias * Junicode-LF/x/scit
+\DeclareFontShape{T1}{Junicode-LF}{expanded}{sc}{
+ <-> alias * Junicode-LF/x/sc
}{}
\DeclareFontShape{T1}{Junicode-LF}{x}{n}{
@@ -202,20 +191,20 @@
<-> alias * Junicode-LF/x/n
}{}
-\DeclareFontShape{T1}{Junicode-LF}{x}{sc}{
- <-> \Junicode@@scale Junicode-Exp-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{x}{scit}{
+ <-> \Junicode@@scale Junicode-ExpItalic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{expanded}{sc}{
- <-> alias * Junicode-LF/x/sc
+\DeclareFontShape{T1}{Junicode-LF}{expanded}{scit}{
+ <-> alias * Junicode-LF/x/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{x}{scsl}{
- <-> ssub * Junicode-LF/x/scit
+\DeclareFontShape{T1}{Junicode-LF}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{expanded}{scsl}{
- <-> ssub * Junicode-LF/expanded/scit
+\DeclareFontShape{T1}{Junicode-LF}{expanded}{it}{
+ <-> alias * Junicode-LF/x/it
}{}
\DeclareFontShape{T1}{Junicode-LF}{x}{sl}{
@@ -226,166 +215,146 @@
<-> ssub * Junicode-LF/expanded/it
}{}
-
-% ---- c = condensed ----
-
-\DeclareFontShape{T1}{Junicode-LF}{c}{scit}{
- <-> \Junicode@@scale Junicode-CondItalic-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{x}{scsl}{
+ <-> ssub * Junicode-LF/x/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{condensed}{scit}{
- <-> alias * Junicode-LF/c/scit
+\DeclareFontShape{T1}{Junicode-LF}{expanded}{scsl}{
+ <-> ssub * Junicode-LF/expanded/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-lf-t1
-}{}
-\DeclareFontShape{T1}{Junicode-LF}{condensed}{it}{
- <-> alias * Junicode-LF/c/it
-}{}
+% ---- lsc = lightsemicondensed ----
-\DeclareFontShape{T1}{Junicode-LF}{c}{sc}{
- <-> \Junicode@@scale Junicode-Cond-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{condensed}{sc}{
- <-> alias * Junicode-LF/c/sc
+\DeclareFontShape{T1}{Junicode-LF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-LF/lsc/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{condensed}{n}{
- <-> alias * Junicode-LF/c/n
+\DeclareFontShape{T1}{Junicode-LF}{lightsemicondensed}{n}{
+ <-> alias * Junicode-LF/lsc/n
}{}
-\DeclareFontShape{T1}{Junicode-LF}{c}{scsl}{
- <-> ssub * Junicode-LF/c/scit
+\DeclareFontShape{T1}{Junicode-LF}{lsc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{condensed}{scsl}{
- <-> ssub * Junicode-LF/condensed/scit
+\DeclareFontShape{T1}{Junicode-LF}{lightsemicondensed}{scit}{
+ <-> alias * Junicode-LF/lsc/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{c}{sl}{
- <-> ssub * Junicode-LF/c/it
+\DeclareFontShape{T1}{Junicode-LF}{lsc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondLight-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{condensed}{sl}{
- <-> ssub * Junicode-LF/condensed/it
+\DeclareFontShape{T1}{Junicode-LF}{lightsemicondensed}{sc}{
+ <-> alias * Junicode-LF/lsc/sc
}{}
-
-% ---- m = regular ----
-
-\DeclareFontShape{T1}{Junicode-LF}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{lsc}{sl}{
+ <-> ssub * Junicode-LF/lsc/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{regular}{it}{
- <-> alias * Junicode-LF/m/it
+\DeclareFontShape{T1}{Junicode-LF}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-LF/lightsemicondensed/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{m}{scit}{
- <-> \Junicode@@scale Junicode-Italic-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{lsc}{scsl}{
+ <-> ssub * Junicode-LF/lsc/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{regular}{scit}{
- <-> alias * Junicode-LF/m/scit
+\DeclareFontShape{T1}{Junicode-LF}{lightsemicondensed}{scsl}{
+ <-> ssub * Junicode-LF/lightsemicondensed/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-lf-t1
-}{}
-\DeclareFontShape{T1}{Junicode-LF}{regular}{n}{
- <-> alias * Junicode-LF/m/n
-}{}
+% ---- mediumexpanded ----
-\DeclareFontShape{T1}{Junicode-LF}{m}{sc}{
- <-> \Junicode@@scale Junicode-Regular-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{mediumexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{regular}{sc}{
- <-> alias * Junicode-LF/m/sc
+\DeclareFontShape{T1}{Junicode-LF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{m}{scsl}{
- <-> ssub * Junicode-LF/m/scit
+\DeclareFontShape{T1}{Junicode-LF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{regular}{scsl}{
- <-> ssub * Junicode-LF/regular/scit
+\DeclareFontShape{T1}{Junicode-LF}{mediumexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-ExpMedium-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{m}{sl}{
- <-> ssub * Junicode-LF/m/it
+\DeclareFontShape{T1}{Junicode-LF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-LF/mediumexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{regular}{sl}{
- <-> ssub * Junicode-LF/regular/it
+\DeclareFontShape{T1}{Junicode-LF}{mediumexpanded}{scsl}{
+ <-> ssub * Junicode-LF/mediumexpanded/scit
}{}
-% ---- lsc = lightsemicondensed ----
+% ---- bx = boldexpanded ----
-\DeclareFontShape{T1}{Junicode-LF}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{bx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpBold-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lightsemicondensed}{n}{
- <-> alias * Junicode-LF/lsc/n
+\DeclareFontShape{T1}{Junicode-LF}{boldexpanded}{sc}{
+ <-> alias * Junicode-LF/bx/sc
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lsc}{sc}{
- <-> \Junicode@@scale Junicode-SmCondLight-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lightsemicondensed}{sc}{
- <-> alias * Junicode-LF/lsc/sc
+\DeclareFontShape{T1}{Junicode-LF}{boldexpanded}{it}{
+ <-> alias * Junicode-LF/bx/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{bx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lightsemicondensed}{it}{
- <-> alias * Junicode-LF/lsc/it
+\DeclareFontShape{T1}{Junicode-LF}{boldexpanded}{scit}{
+ <-> alias * Junicode-LF/bx/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lsc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lightsemicondensed}{scit}{
- <-> alias * Junicode-LF/lsc/scit
+\DeclareFontShape{T1}{Junicode-LF}{boldexpanded}{n}{
+ <-> alias * Junicode-LF/bx/n
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lsc}{scsl}{
- <-> ssub * Junicode-LF/lsc/scit
+\DeclareFontShape{T1}{Junicode-LF}{bx}{sl}{
+ <-> ssub * Junicode-LF/bx/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lightsemicondensed}{scsl}{
- <-> ssub * Junicode-LF/lightsemicondensed/scit
+\DeclareFontShape{T1}{Junicode-LF}{boldexpanded}{sl}{
+ <-> ssub * Junicode-LF/boldexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lsc}{sl}{
- <-> ssub * Junicode-LF/lsc/it
+\DeclareFontShape{T1}{Junicode-LF}{bx}{scsl}{
+ <-> ssub * Junicode-LF/bx/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-LF/lightsemicondensed/it
+\DeclareFontShape{T1}{Junicode-LF}{boldexpanded}{scsl}{
+ <-> ssub * Junicode-LF/boldexpanded/scit
}{}
% ---- medium ----
-\DeclareFontShape{T1}{Junicode-LF}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-lf-t1
-}{}
-
\DeclareFontShape{T1}{Junicode-LF}{medium}{scit}{
<-> \Junicode@@scale Junicode-MediumItalic-lf-sc-t1
}{}
@@ -394,298 +363,356 @@
<-> \Junicode@@scale Junicode-Medium-lf-t1
}{}
+\DeclareFontShape{T1}{Junicode-LF}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-lf-t1
+}{}
+
\DeclareFontShape{T1}{Junicode-LF}{medium}{sc}{
<-> \Junicode@@scale Junicode-Medium-lf-sc-t1
}{}
+\DeclareFontShape{T1}{Junicode-LF}{medium}{sl}{
+ <-> ssub * Junicode-LF/medium/it
+}{}
+
\DeclareFontShape{T1}{Junicode-LF}{medium}{scsl}{
<-> ssub * Junicode-LF/medium/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{medium}{sl}{
- <-> ssub * Junicode-LF/medium/it
+
+% ---- m = regular ----
+
+\DeclareFontShape{T1}{Junicode-LF}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-lf-t1
}{}
+\DeclareFontShape{T1}{Junicode-LF}{regular}{it}{
+ <-> alias * Junicode-LF/m/it
+}{}
-% ---- l = light ----
+\DeclareFontShape{T1}{Junicode-LF}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-lf-t1
+}{}
-\DeclareFontShape{T1}{Junicode-LF}{l}{sc}{
- <-> \Junicode@@scale Junicode-Light-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{regular}{n}{
+ <-> alias * Junicode-LF/m/n
}{}
-\DeclareFontShape{T1}{Junicode-LF}{light}{sc}{
- <-> alias * Junicode-LF/l/sc
+\DeclareFontShape{T1}{Junicode-LF}{m}{scit}{
+ <-> \Junicode@@scale Junicode-Italic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{regular}{scit}{
+ <-> alias * Junicode-LF/m/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{light}{n}{
- <-> alias * Junicode-LF/l/n
+\DeclareFontShape{T1}{Junicode-LF}{m}{sc}{
+ <-> \Junicode@@scale Junicode-Regular-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{l}{scit}{
- <-> \Junicode@@scale Junicode-LightItalic-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{regular}{sc}{
+ <-> alias * Junicode-LF/m/sc
}{}
-\DeclareFontShape{T1}{Junicode-LF}{light}{scit}{
- <-> alias * Junicode-LF/l/scit
+\DeclareFontShape{T1}{Junicode-LF}{m}{sl}{
+ <-> ssub * Junicode-LF/m/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{regular}{sl}{
+ <-> ssub * Junicode-LF/regular/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{light}{it}{
- <-> alias * Junicode-LF/l/it
+\DeclareFontShape{T1}{Junicode-LF}{m}{scsl}{
+ <-> ssub * Junicode-LF/m/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{l}{scsl}{
- <-> ssub * Junicode-LF/l/scit
+\DeclareFontShape{T1}{Junicode-LF}{regular}{scsl}{
+ <-> ssub * Junicode-LF/regular/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{light}{scsl}{
- <-> ssub * Junicode-LF/light/scit
+
+% ---- mediumsemiexpanded ----
+
+\DeclareFontShape{T1}{Junicode-LF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{l}{sl}{
- <-> ssub * Junicode-LF/l/it
+\DeclareFontShape{T1}{Junicode-LF}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{light}{sl}{
- <-> ssub * Junicode-LF/light/it
+\DeclareFontShape{T1}{Junicode-LF}{mediumsemiexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-lf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-LF}{mediumsemiexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-lf-sc-t1
}{}
+\DeclareFontShape{T1}{Junicode-LF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-LF/mediumsemiexpanded/it
+}{}
-% ---- bx = boldexpanded ----
+\DeclareFontShape{T1}{Junicode-LF}{mediumsemiexpanded}{scsl}{
+ <-> ssub * Junicode-LF/mediumsemiexpanded/scit
+}{}
-\DeclareFontShape{T1}{Junicode-LF}{bx}{scit}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-lf-sc-t1
+
+% ---- lc = lightcondensed ----
+
+\DeclareFontShape{T1}{Junicode-LF}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{boldexpanded}{scit}{
- <-> alias * Junicode-LF/bx/scit
+\DeclareFontShape{T1}{Junicode-LF}{lightcondensed}{it}{
+ <-> alias * Junicode-LF/lc/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{lc}{scit}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{boldexpanded}{it}{
- <-> alias * Junicode-LF/bx/it
+\DeclareFontShape{T1}{Junicode-LF}{lightcondensed}{scit}{
+ <-> alias * Junicode-LF/lc/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{bx}{sc}{
- <-> \Junicode@@scale Junicode-ExpBold-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{boldexpanded}{sc}{
- <-> alias * Junicode-LF/bx/sc
+\DeclareFontShape{T1}{Junicode-LF}{lightcondensed}{n}{
+ <-> alias * Junicode-LF/lc/n
}{}
-\DeclareFontShape{T1}{Junicode-LF}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{lc}{sc}{
+ <-> \Junicode@@scale Junicode-CondLight-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{boldexpanded}{n}{
- <-> alias * Junicode-LF/bx/n
+\DeclareFontShape{T1}{Junicode-LF}{lightcondensed}{sc}{
+ <-> alias * Junicode-LF/lc/sc
}{}
-\DeclareFontShape{T1}{Junicode-LF}{bx}{scsl}{
- <-> ssub * Junicode-LF/bx/scit
+\DeclareFontShape{T1}{Junicode-LF}{lc}{sl}{
+ <-> ssub * Junicode-LF/lc/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{boldexpanded}{scsl}{
- <-> ssub * Junicode-LF/boldexpanded/scit
+\DeclareFontShape{T1}{Junicode-LF}{lightcondensed}{sl}{
+ <-> ssub * Junicode-LF/lightcondensed/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{bx}{sl}{
- <-> ssub * Junicode-LF/bx/it
+\DeclareFontShape{T1}{Junicode-LF}{lc}{scsl}{
+ <-> ssub * Junicode-LF/lc/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{boldexpanded}{sl}{
- <-> ssub * Junicode-LF/boldexpanded/it
+\DeclareFontShape{T1}{Junicode-LF}{lightcondensed}{scsl}{
+ <-> ssub * Junicode-LF/lightcondensed/scit
}{}
-% ---- mediumcondensed ----
+% ---- mediumsemicondensed ----
-\DeclareFontShape{T1}{Junicode-LF}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{mediumsemicondensed}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumcondensed}{scit}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{mediumsemicondensed}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumcondensed}{sc}{
- <-> \Junicode@@scale Junicode-CondMedium-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumcondensed}{scsl}{
- <-> ssub * Junicode-LF/mediumcondensed/scit
+\DeclareFontShape{T1}{Junicode-LF}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-LF/mediumsemicondensed/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumcondensed}{sl}{
- <-> ssub * Junicode-LF/mediumcondensed/it
+\DeclareFontShape{T1}{Junicode-LF}{mediumsemicondensed}{scsl}{
+ <-> ssub * Junicode-LF/mediumsemicondensed/scit
}{}
-% ---- b = bold ----
+% ---- l = light ----
-\DeclareFontShape{T1}{Junicode-LF}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{l}{sc}{
+ <-> \Junicode@@scale Junicode-Light-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{bold}{n}{
- <-> alias * Junicode-LF/b/n
+\DeclareFontShape{T1}{Junicode-LF}{light}{sc}{
+ <-> alias * Junicode-LF/l/sc
}{}
-\DeclareFontShape{T1}{Junicode-LF}{b}{sc}{
- <-> \Junicode@@scale Junicode-Bold-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{bold}{sc}{
- <-> alias * Junicode-LF/b/sc
+\DeclareFontShape{T1}{Junicode-LF}{light}{n}{
+ <-> alias * Junicode-LF/l/n
}{}
-\DeclareFontShape{T1}{Junicode-LF}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{l}{scit}{
+ <-> \Junicode@@scale Junicode-LightItalic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{bold}{it}{
- <-> alias * Junicode-LF/b/it
+\DeclareFontShape{T1}{Junicode-LF}{light}{scit}{
+ <-> alias * Junicode-LF/l/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{b}{scit}{
- <-> \Junicode@@scale Junicode-BoldItalic-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{bold}{scit}{
- <-> alias * Junicode-LF/b/scit
+\DeclareFontShape{T1}{Junicode-LF}{light}{it}{
+ <-> alias * Junicode-LF/l/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{b}{scsl}{
- <-> ssub * Junicode-LF/b/scit
+\DeclareFontShape{T1}{Junicode-LF}{l}{sl}{
+ <-> ssub * Junicode-LF/l/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{bold}{scsl}{
- <-> ssub * Junicode-LF/bold/scit
+\DeclareFontShape{T1}{Junicode-LF}{light}{sl}{
+ <-> ssub * Junicode-LF/light/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{b}{sl}{
- <-> ssub * Junicode-LF/b/it
+\DeclareFontShape{T1}{Junicode-LF}{l}{scsl}{
+ <-> ssub * Junicode-LF/l/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{bold}{sl}{
- <-> ssub * Junicode-LF/bold/it
+\DeclareFontShape{T1}{Junicode-LF}{light}{scsl}{
+ <-> ssub * Junicode-LF/light/scit
}{}
-% ---- bsx = boldsemiexpanded ----
+% ---- sx = semiexpanded ----
-\DeclareFontShape{T1}{Junicode-LF}{bsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpBold-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{sx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExp-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{boldsemiexpanded}{sc}{
- <-> alias * Junicode-LF/bsx/sc
+\DeclareFontShape{T1}{Junicode-LF}{semiexpanded}{sc}{
+ <-> alias * Junicode-LF/sx/sc
}{}
-\DeclareFontShape{T1}{Junicode-LF}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{sx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{boldsemiexpanded}{n}{
- <-> alias * Junicode-LF/bsx/n
+\DeclareFontShape{T1}{Junicode-LF}{semiexpanded}{scit}{
+ <-> alias * Junicode-LF/sx/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{bsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{boldsemiexpanded}{scit}{
- <-> alias * Junicode-LF/bsx/scit
+\DeclareFontShape{T1}{Junicode-LF}{semiexpanded}{n}{
+ <-> alias * Junicode-LF/sx/n
}{}
-\DeclareFontShape{T1}{Junicode-LF}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{boldsemiexpanded}{it}{
- <-> alias * Junicode-LF/bsx/it
+\DeclareFontShape{T1}{Junicode-LF}{semiexpanded}{it}{
+ <-> alias * Junicode-LF/sx/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{bsx}{scsl}{
- <-> ssub * Junicode-LF/bsx/scit
+\DeclareFontShape{T1}{Junicode-LF}{sx}{sl}{
+ <-> ssub * Junicode-LF/sx/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{boldsemiexpanded}{scsl}{
- <-> ssub * Junicode-LF/boldsemiexpanded/scit
+\DeclareFontShape{T1}{Junicode-LF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-LF/semiexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{bsx}{sl}{
- <-> ssub * Junicode-LF/bsx/it
+\DeclareFontShape{T1}{Junicode-LF}{sx}{scsl}{
+ <-> ssub * Junicode-LF/sx/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-LF/boldsemiexpanded/it
+\DeclareFontShape{T1}{Junicode-LF}{semiexpanded}{scsl}{
+ <-> ssub * Junicode-LF/semiexpanded/scit
}{}
-% ---- lc = lightcondensed ----
+% ---- mediumcondensed ----
-\DeclareFontShape{T1}{Junicode-LF}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{mediumcondensed}{sc}{
+ <-> \Junicode@@scale Junicode-CondMedium-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lightcondensed}{n}{
- <-> alias * Junicode-LF/lc/n
+\DeclareFontShape{T1}{Junicode-LF}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lc}{sc}{
- <-> \Junicode@@scale Junicode-CondLight-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{mediumcondensed}{scit}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lightcondensed}{sc}{
- <-> alias * Junicode-LF/lc/sc
+\DeclareFontShape{T1}{Junicode-LF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-LF/mediumcondensed/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lightcondensed}{it}{
- <-> alias * Junicode-LF/lc/it
+\DeclareFontShape{T1}{Junicode-LF}{mediumcondensed}{scsl}{
+ <-> ssub * Junicode-LF/mediumcondensed/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lc}{scit}{
- <-> \Junicode@@scale Junicode-CondLightItalic-lf-sc-t1
+
+% ---- sb = semibold ----
+
+\DeclareFontShape{T1}{Junicode-LF}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lightcondensed}{scit}{
- <-> alias * Junicode-LF/lc/scit
+\DeclareFontShape{T1}{Junicode-LF}{semibold}{n}{
+ <-> alias * Junicode-LF/sb/n
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lc}{scsl}{
- <-> ssub * Junicode-LF/lc/scit
+\DeclareFontShape{T1}{Junicode-LF}{sb}{scit}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lightcondensed}{scsl}{
- <-> ssub * Junicode-LF/lightcondensed/scit
+\DeclareFontShape{T1}{Junicode-LF}{semibold}{scit}{
+ <-> alias * Junicode-LF/sb/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lc}{sl}{
- <-> ssub * Junicode-LF/lc/it
+\DeclareFontShape{T1}{Junicode-LF}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{lightcondensed}{sl}{
- <-> ssub * Junicode-LF/lightcondensed/it
+\DeclareFontShape{T1}{Junicode-LF}{semibold}{it}{
+ <-> alias * Junicode-LF/sb/it
+}{}
+
+\DeclareFontShape{T1}{Junicode-LF}{sb}{sc}{
+ <-> \Junicode@@scale Junicode-SmBold-lf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-LF}{semibold}{sc}{
+ <-> alias * Junicode-LF/sb/sc
+}{}
+
+\DeclareFontShape{T1}{Junicode-LF}{sb}{sl}{
+ <-> ssub * Junicode-LF/sb/it
+}{}
+
+\DeclareFontShape{T1}{Junicode-LF}{semibold}{sl}{
+ <-> ssub * Junicode-LF/semibold/it
+}{}
+
+\DeclareFontShape{T1}{Junicode-LF}{sb}{scsl}{
+ <-> ssub * Junicode-LF/sb/scit
+}{}
+
+\DeclareFontShape{T1}{Junicode-LF}{semibold}{scsl}{
+ <-> ssub * Junicode-LF/semibold/scit
}{}
@@ -699,12 +726,12 @@
<-> alias * Junicode-LF/sc/n
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sc}{sc}{
- <-> \Junicode@@scale Junicode-SmCond-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{sc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semicondensed}{sc}{
- <-> alias * Junicode-LF/sc/sc
+\DeclareFontShape{T1}{Junicode-LF}{semicondensed}{scit}{
+ <-> alias * Junicode-LF/sc/scit
}{}
\DeclareFontShape{T1}{Junicode-LF}{sc}{it}{
@@ -715,20 +742,12 @@
<-> alias * Junicode-LF/sc/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondItalic-lf-sc-t1
-}{}
-
-\DeclareFontShape{T1}{Junicode-LF}{semicondensed}{scit}{
- <-> alias * Junicode-LF/sc/scit
-}{}
-
-\DeclareFontShape{T1}{Junicode-LF}{sc}{scsl}{
- <-> ssub * Junicode-LF/sc/scit
+\DeclareFontShape{T1}{Junicode-LF}{sc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCond-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semicondensed}{scsl}{
- <-> ssub * Junicode-LF/semicondensed/scit
+\DeclareFontShape{T1}{Junicode-LF}{semicondensed}{sc}{
+ <-> alias * Junicode-LF/sc/sc
}{}
\DeclareFontShape{T1}{Junicode-LF}{sc}{sl}{
@@ -739,133 +758,114 @@
<-> ssub * Junicode-LF/semicondensed/it
}{}
-
-% ---- sb = semibold ----
-
-\DeclareFontShape{T1}{Junicode-LF}{sb}{sc}{
- <-> \Junicode@@scale Junicode-SmBold-lf-sc-t1
-}{}
-
-\DeclareFontShape{T1}{Junicode-LF}{semibold}{sc}{
- <-> alias * Junicode-LF/sb/sc
-}{}
-
-\DeclareFontShape{T1}{Junicode-LF}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{sc}{scsl}{
+ <-> ssub * Junicode-LF/sc/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semibold}{n}{
- <-> alias * Junicode-LF/sb/n
+\DeclareFontShape{T1}{Junicode-LF}{semicondensed}{scsl}{
+ <-> ssub * Junicode-LF/semicondensed/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sb}{scit}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-lf-sc-t1
-}{}
-\DeclareFontShape{T1}{Junicode-LF}{semibold}{scit}{
- <-> alias * Junicode-LF/sb/scit
-}{}
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{T1}{Junicode-LF}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semibold}{it}{
- <-> alias * Junicode-LF/sb/it
+\DeclareFontShape{T1}{Junicode-LF}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-LF/bsx/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sb}{scsl}{
- <-> ssub * Junicode-LF/sb/scit
+\DeclareFontShape{T1}{Junicode-LF}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semibold}{scsl}{
- <-> ssub * Junicode-LF/semibold/scit
+\DeclareFontShape{T1}{Junicode-LF}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-LF/bsx/n
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sb}{sl}{
- <-> ssub * Junicode-LF/sb/it
+\DeclareFontShape{T1}{Junicode-LF}{bsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semibold}{sl}{
- <-> ssub * Junicode-LF/semibold/it
+\DeclareFontShape{T1}{Junicode-LF}{boldsemiexpanded}{scit}{
+ <-> alias * Junicode-LF/bsx/scit
}{}
-
-% ---- mediumsemicondensed ----
-
-\DeclareFontShape{T1}{Junicode-LF}{mediumsemicondensed}{scit}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{bsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpBold-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{boldsemiexpanded}{sc}{
+ <-> alias * Junicode-LF/bsx/sc
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumsemicondensed}{sc}{
- <-> \Junicode@@scale Junicode-SmCondMedium-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{bsx}{sl}{
+ <-> ssub * Junicode-LF/bsx/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-LF/boldsemiexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumsemicondensed}{scsl}{
- <-> ssub * Junicode-LF/mediumsemicondensed/scit
+\DeclareFontShape{T1}{Junicode-LF}{bsx}{scsl}{
+ <-> ssub * Junicode-LF/bsx/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-LF/mediumsemicondensed/it
+\DeclareFontShape{T1}{Junicode-LF}{boldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-LF/boldsemiexpanded/scit
}{}
-% ---- sbx = semiboldexpanded ----
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{T1}{Junicode-LF}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semiboldexpanded}{n}{
- <-> alias * Junicode-LF/sbx/n
+\DeclareFontShape{T1}{Junicode-LF}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-LF/sbsx/n
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sbx}{sc}{
- <-> \Junicode@@scale Junicode-ExpSmBold-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{sbsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semiboldexpanded}{sc}{
- <-> alias * Junicode-LF/sbx/sc
+\DeclareFontShape{T1}{Junicode-LF}{semiboldsemiexpanded}{scit}{
+ <-> alias * Junicode-LF/sbsx/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-lf-t1
+\DeclareFontShape{T1}{Junicode-LF}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-lf-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semiboldexpanded}{it}{
- <-> alias * Junicode-LF/sbx/it
+\DeclareFontShape{T1}{Junicode-LF}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-LF/sbsx/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sbx}{scit}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-lf-sc-t1
+\DeclareFontShape{T1}{Junicode-LF}{sbsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-lf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semiboldexpanded}{scit}{
- <-> alias * Junicode-LF/sbx/scit
+\DeclareFontShape{T1}{Junicode-LF}{semiboldsemiexpanded}{sc}{
+ <-> alias * Junicode-LF/sbsx/sc
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sbx}{scsl}{
- <-> ssub * Junicode-LF/sbx/scit
+\DeclareFontShape{T1}{Junicode-LF}{sbsx}{sl}{
+ <-> ssub * Junicode-LF/sbsx/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semiboldexpanded}{scsl}{
- <-> ssub * Junicode-LF/semiboldexpanded/scit
+\DeclareFontShape{T1}{Junicode-LF}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-LF/semiboldsemiexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-LF}{sbx}{sl}{
- <-> ssub * Junicode-LF/sbx/it
+\DeclareFontShape{T1}{Junicode-LF}{sbsx}{scsl}{
+ <-> ssub * Junicode-LF/sbsx/scit
}{}
-\DeclareFontShape{T1}{Junicode-LF}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-LF/semiboldexpanded/it
+\DeclareFontShape{T1}{Junicode-LF}{semiboldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-LF/semiboldsemiexpanded/scit
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/T1Junicode-OsF.fd b/Master/texmf-dist/tex/latex/junicode/T1Junicode-OsF.fd
index 6af4216213e..0055076c6d7 100644
--- a/Master/texmf-dist/tex/latex/junicode/T1Junicode-OsF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/T1Junicode-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{T1Junicode-OsF.fd}
- [2024/06/03 (autoinst) Font definitions for T1/Junicode-OsF.]
+ [2024/07/21 (autoinst) Font definitions for T1/Junicode-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,234 +20,312 @@
\DeclareFontFamily{T1}{Junicode-OsF}{}
-% ---- mediumsemicondensed ----
+% ---- b = bold ----
-\DeclareFontShape{T1}{Junicode-OsF}{mediumsemicondensed}{sc}{
- <-> \Junicode@@scale Junicode-SmCondMedium-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{b}{sc}{
+ <-> \Junicode@@scale Junicode-Bold-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{bold}{sc}{
+ <-> alias * Junicode-OsF/b/sc
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumsemicondensed}{scit}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{b}{scit}{
+ <-> \Junicode@@scale Junicode-BoldItalic-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{bold}{scit}{
+ <-> alias * Junicode-OsF/b/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumsemicondensed}{scsl}{
- <-> ssub * Junicode-OsF/mediumsemicondensed/scit
+\DeclareFontShape{T1}{Junicode-OsF}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-OsF/mediumsemicondensed/it
+\DeclareFontShape{T1}{Junicode-OsF}{bold}{n}{
+ <-> alias * Junicode-OsF/b/n
}{}
+\DeclareFontShape{T1}{Junicode-OsF}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-osf-t1
+}{}
-% ---- sbx = semiboldexpanded ----
+\DeclareFontShape{T1}{Junicode-OsF}{bold}{it}{
+ <-> alias * Junicode-OsF/b/it
+}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{b}{sl}{
+ <-> ssub * Junicode-OsF/b/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semiboldexpanded}{n}{
- <-> alias * Junicode-OsF/sbx/n
+\DeclareFontShape{T1}{Junicode-OsF}{bold}{sl}{
+ <-> ssub * Junicode-OsF/bold/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sbx}{sc}{
- <-> \Junicode@@scale Junicode-ExpSmBold-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{b}{scsl}{
+ <-> ssub * Junicode-OsF/b/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semiboldexpanded}{sc}{
- <-> alias * Junicode-OsF/sbx/sc
+\DeclareFontShape{T1}{Junicode-OsF}{bold}{scsl}{
+ <-> ssub * Junicode-OsF/bold/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-osf-t1
+
+% ---- x = expanded ----
+
+\DeclareFontShape{T1}{Junicode-OsF}{x}{sc}{
+ <-> \Junicode@@scale Junicode-Exp-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semiboldexpanded}{it}{
- <-> alias * Junicode-OsF/sbx/it
+\DeclareFontShape{T1}{Junicode-OsF}{expanded}{sc}{
+ <-> alias * Junicode-OsF/x/sc
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sbx}{scit}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semiboldexpanded}{scit}{
- <-> alias * Junicode-OsF/sbx/scit
+\DeclareFontShape{T1}{Junicode-OsF}{expanded}{it}{
+ <-> alias * Junicode-OsF/x/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sbx}{scsl}{
- <-> ssub * Junicode-OsF/sbx/scit
+\DeclareFontShape{T1}{Junicode-OsF}{x}{scit}{
+ <-> \Junicode@@scale Junicode-ExpItalic-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semiboldexpanded}{scsl}{
- <-> ssub * Junicode-OsF/semiboldexpanded/scit
+\DeclareFontShape{T1}{Junicode-OsF}{expanded}{scit}{
+ <-> alias * Junicode-OsF/x/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sbx}{sl}{
- <-> ssub * Junicode-OsF/sbx/it
+\DeclareFontShape{T1}{Junicode-OsF}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-OsF/semiboldexpanded/it
+\DeclareFontShape{T1}{Junicode-OsF}{expanded}{n}{
+ <-> alias * Junicode-OsF/x/n
}{}
+\DeclareFontShape{T1}{Junicode-OsF}{x}{sl}{
+ <-> ssub * Junicode-OsF/x/it
+}{}
-% ---- lc = lightcondensed ----
+\DeclareFontShape{T1}{Junicode-OsF}{expanded}{sl}{
+ <-> ssub * Junicode-OsF/expanded/it
+}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lc}{sc}{
- <-> \Junicode@@scale Junicode-CondLight-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{x}{scsl}{
+ <-> ssub * Junicode-OsF/x/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lightcondensed}{sc}{
- <-> alias * Junicode-OsF/lc/sc
+\DeclareFontShape{T1}{Junicode-OsF}{expanded}{scsl}{
+ <-> ssub * Junicode-OsF/expanded/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-osf-t1
+
+% ---- lsc = lightsemicondensed ----
+
+\DeclareFontShape{T1}{Junicode-OsF}{lsc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondLight-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lightcondensed}{n}{
- <-> alias * Junicode-OsF/lc/n
+\DeclareFontShape{T1}{Junicode-OsF}{lightsemicondensed}{sc}{
+ <-> alias * Junicode-OsF/lsc/sc
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lc}{scit}{
- <-> \Junicode@@scale Junicode-CondLightItalic-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{lsc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lightcondensed}{scit}{
- <-> alias * Junicode-OsF/lc/scit
+\DeclareFontShape{T1}{Junicode-OsF}{lightsemicondensed}{scit}{
+ <-> alias * Junicode-OsF/lsc/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lightcondensed}{it}{
- <-> alias * Junicode-OsF/lc/it
+\DeclareFontShape{T1}{Junicode-OsF}{lightsemicondensed}{n}{
+ <-> alias * Junicode-OsF/lsc/n
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lc}{scsl}{
- <-> ssub * Junicode-OsF/lc/scit
+\DeclareFontShape{T1}{Junicode-OsF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lightcondensed}{scsl}{
- <-> ssub * Junicode-OsF/lightcondensed/scit
+\DeclareFontShape{T1}{Junicode-OsF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-OsF/lsc/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lc}{sl}{
- <-> ssub * Junicode-OsF/lc/it
+\DeclareFontShape{T1}{Junicode-OsF}{lsc}{sl}{
+ <-> ssub * Junicode-OsF/lsc/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lightcondensed}{sl}{
- <-> ssub * Junicode-OsF/lightcondensed/it
+\DeclareFontShape{T1}{Junicode-OsF}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-OsF/lightsemicondensed/it
}{}
+\DeclareFontShape{T1}{Junicode-OsF}{lsc}{scsl}{
+ <-> ssub * Junicode-OsF/lsc/scit
+}{}
-% ---- bsx = boldsemiexpanded ----
+\DeclareFontShape{T1}{Junicode-OsF}{lightsemicondensed}{scsl}{
+ <-> ssub * Junicode-OsF/lightsemicondensed/scit
+}{}
-\DeclareFontShape{T1}{Junicode-OsF}{bsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-osf-sc-t1
+
+% ---- mediumexpanded ----
+
+\DeclareFontShape{T1}{Junicode-OsF}{mediumexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-ExpMedium-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{boldsemiexpanded}{scit}{
- <-> alias * Junicode-OsF/bsx/scit
+\DeclareFontShape{T1}{Junicode-OsF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{boldsemiexpanded}{it}{
- <-> alias * Junicode-OsF/bsx/it
+\DeclareFontShape{T1}{Junicode-OsF}{mediumexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{bsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpBold-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-OsF/mediumexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{boldsemiexpanded}{sc}{
- <-> alias * Junicode-OsF/bsx/sc
+\DeclareFontShape{T1}{Junicode-OsF}{mediumexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/mediumexpanded/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-osf-t1
+
+% ---- c = condensed ----
+
+\DeclareFontShape{T1}{Junicode-OsF}{c}{sc}{
+ <-> \Junicode@@scale Junicode-Cond-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{boldsemiexpanded}{n}{
- <-> alias * Junicode-OsF/bsx/n
+\DeclareFontShape{T1}{Junicode-OsF}{condensed}{sc}{
+ <-> alias * Junicode-OsF/c/sc
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{bsx}{scsl}{
- <-> ssub * Junicode-OsF/bsx/scit
+\DeclareFontShape{T1}{Junicode-OsF}{c}{scit}{
+ <-> \Junicode@@scale Junicode-CondItalic-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{boldsemiexpanded}{scsl}{
- <-> ssub * Junicode-OsF/boldsemiexpanded/scit
+\DeclareFontShape{T1}{Junicode-OsF}{condensed}{scit}{
+ <-> alias * Junicode-OsF/c/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{bsx}{sl}{
- <-> ssub * Junicode-OsF/bsx/it
+\DeclareFontShape{T1}{Junicode-OsF}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-OsF/boldsemiexpanded/it
+\DeclareFontShape{T1}{Junicode-OsF}{condensed}{n}{
+ <-> alias * Junicode-OsF/c/n
}{}
+\DeclareFontShape{T1}{Junicode-OsF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-osf-t1
+}{}
-% ---- sc = semicondensed ----
+\DeclareFontShape{T1}{Junicode-OsF}{condensed}{it}{
+ <-> alias * Junicode-OsF/c/it
+}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondItalic-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{c}{sl}{
+ <-> ssub * Junicode-OsF/c/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semicondensed}{scit}{
- <-> alias * Junicode-OsF/sc/scit
+\DeclareFontShape{T1}{Junicode-OsF}{condensed}{sl}{
+ <-> ssub * Junicode-OsF/condensed/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{c}{scsl}{
+ <-> ssub * Junicode-OsF/c/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semicondensed}{it}{
- <-> alias * Junicode-OsF/sc/it
+\DeclareFontShape{T1}{Junicode-OsF}{condensed}{scsl}{
+ <-> ssub * Junicode-OsF/condensed/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sc}{sc}{
- <-> \Junicode@@scale Junicode-SmCond-osf-sc-t1
+
+% ---- sbx = semiboldexpanded ----
+
+\DeclareFontShape{T1}{Junicode-OsF}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semicondensed}{sc}{
- <-> alias * Junicode-OsF/sc/sc
+\DeclareFontShape{T1}{Junicode-OsF}{semiboldexpanded}{it}{
+ <-> alias * Junicode-OsF/sbx/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{sbx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semicondensed}{n}{
- <-> alias * Junicode-OsF/sc/n
+\DeclareFontShape{T1}{Junicode-OsF}{semiboldexpanded}{scit}{
+ <-> alias * Junicode-OsF/sbx/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sc}{scsl}{
- <-> ssub * Junicode-OsF/sc/scit
+\DeclareFontShape{T1}{Junicode-OsF}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semicondensed}{scsl}{
- <-> ssub * Junicode-OsF/semicondensed/scit
+\DeclareFontShape{T1}{Junicode-OsF}{semiboldexpanded}{n}{
+ <-> alias * Junicode-OsF/sbx/n
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sc}{sl}{
- <-> ssub * Junicode-OsF/sc/it
+\DeclareFontShape{T1}{Junicode-OsF}{sbx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semicondensed}{sl}{
- <-> ssub * Junicode-OsF/semicondensed/it
+\DeclareFontShape{T1}{Junicode-OsF}{semiboldexpanded}{sc}{
+ <-> alias * Junicode-OsF/sbx/sc
+}{}
+
+\DeclareFontShape{T1}{Junicode-OsF}{sbx}{sl}{
+ <-> ssub * Junicode-OsF/sbx/it
+}{}
+
+\DeclareFontShape{T1}{Junicode-OsF}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-OsF/semiboldexpanded/it
+}{}
+
+\DeclareFontShape{T1}{Junicode-OsF}{sbx}{scsl}{
+ <-> ssub * Junicode-OsF/sbx/scit
+}{}
+
+\DeclareFontShape{T1}{Junicode-OsF}{semiboldexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/semiboldexpanded/scit
+}{}
+
+
+% ---- mediumcondensed ----
+
+\DeclareFontShape{T1}{Junicode-OsF}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-osf-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-OsF}{mediumcondensed}{scit}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-osf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-OsF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-osf-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-OsF}{mediumcondensed}{sc}{
+ <-> \Junicode@@scale Junicode-CondMedium-osf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-OsF}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-OsF/mediumcondensed/it
+}{}
+
+\DeclareFontShape{T1}{Junicode-OsF}{mediumcondensed}{scsl}{
+ <-> ssub * Junicode-OsF/mediumcondensed/scit
}{}
@@ -261,6 +339,14 @@
<-> alias * Junicode-OsF/sb/scit
}{}
+\DeclareFontShape{T1}{Junicode-OsF}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-osf-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-OsF}{semibold}{n}{
+ <-> alias * Junicode-OsF/sb/n
+}{}
+
\DeclareFontShape{T1}{Junicode-OsF}{sb}{it}{
<-> \Junicode@@scale Junicode-SmBoldItalic-osf-t1
}{}
@@ -277,12 +363,12 @@
<-> alias * Junicode-OsF/sb/sc
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{sb}{sl}{
+ <-> ssub * Junicode-OsF/sb/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semibold}{n}{
- <-> alias * Junicode-OsF/sb/n
+\DeclareFontShape{T1}{Junicode-OsF}{semibold}{sl}{
+ <-> ssub * Junicode-OsF/semibold/it
}{}
\DeclareFontShape{T1}{Junicode-OsF}{sb}{scsl}{
@@ -293,154 +379,162 @@
<-> ssub * Junicode-OsF/semibold/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sb}{sl}{
- <-> ssub * Junicode-OsF/sb/it
+
+% ---- sc = semicondensed ----
+
+\DeclareFontShape{T1}{Junicode-OsF}{sc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCond-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semibold}{sl}{
- <-> ssub * Junicode-OsF/semibold/it
+\DeclareFontShape{T1}{Junicode-OsF}{semicondensed}{sc}{
+ <-> alias * Junicode-OsF/sc/sc
}{}
+\DeclareFontShape{T1}{Junicode-OsF}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-osf-t1
+}{}
-% ---- b = bold ----
+\DeclareFontShape{T1}{Junicode-OsF}{semicondensed}{it}{
+ <-> alias * Junicode-OsF/sc/it
+}{}
-\DeclareFontShape{T1}{Junicode-OsF}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{bold}{it}{
- <-> alias * Junicode-OsF/b/it
+\DeclareFontShape{T1}{Junicode-OsF}{semicondensed}{n}{
+ <-> alias * Junicode-OsF/sc/n
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{b}{scit}{
- <-> \Junicode@@scale Junicode-BoldItalic-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{sc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{bold}{scit}{
- <-> alias * Junicode-OsF/b/scit
+\DeclareFontShape{T1}{Junicode-OsF}{semicondensed}{scit}{
+ <-> alias * Junicode-OsF/sc/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{sc}{sl}{
+ <-> ssub * Junicode-OsF/sc/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{bold}{n}{
- <-> alias * Junicode-OsF/b/n
+\DeclareFontShape{T1}{Junicode-OsF}{semicondensed}{sl}{
+ <-> ssub * Junicode-OsF/semicondensed/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{b}{sc}{
- <-> \Junicode@@scale Junicode-Bold-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{sc}{scsl}{
+ <-> ssub * Junicode-OsF/sc/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{bold}{sc}{
- <-> alias * Junicode-OsF/b/sc
+\DeclareFontShape{T1}{Junicode-OsF}{semicondensed}{scsl}{
+ <-> ssub * Junicode-OsF/semicondensed/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{b}{scsl}{
- <-> ssub * Junicode-OsF/b/scit
+
+% ---- sbsx = semiboldsemiexpanded ----
+
+\DeclareFontShape{T1}{Junicode-OsF}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{bold}{scsl}{
- <-> ssub * Junicode-OsF/bold/scit
+\DeclareFontShape{T1}{Junicode-OsF}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-OsF/sbsx/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{b}{sl}{
- <-> ssub * Junicode-OsF/b/it
+\DeclareFontShape{T1}{Junicode-OsF}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{bold}{sl}{
- <-> ssub * Junicode-OsF/bold/it
+\DeclareFontShape{T1}{Junicode-OsF}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-OsF/sbsx/n
}{}
+\DeclareFontShape{T1}{Junicode-OsF}{sbsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-osf-sc-t1
+}{}
-% ---- mediumcondensed ----
+\DeclareFontShape{T1}{Junicode-OsF}{semiboldsemiexpanded}{scit}{
+ <-> alias * Junicode-OsF/sbsx/scit
+}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumcondensed}{sc}{
- <-> \Junicode@@scale Junicode-CondMedium-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{sbsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{semiboldsemiexpanded}{sc}{
+ <-> alias * Junicode-OsF/sbsx/sc
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumcondensed}{scit}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{sbsx}{sl}{
+ <-> ssub * Junicode-OsF/sbsx/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-OsF/semiboldsemiexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumcondensed}{scsl}{
- <-> ssub * Junicode-OsF/mediumcondensed/scit
+\DeclareFontShape{T1}{Junicode-OsF}{sbsx}{scsl}{
+ <-> ssub * Junicode-OsF/sbsx/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumcondensed}{sl}{
- <-> ssub * Junicode-OsF/mediumcondensed/it
+\DeclareFontShape{T1}{Junicode-OsF}{semiboldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/semiboldsemiexpanded/scit
}{}
-% ---- l = light ----
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{T1}{Junicode-OsF}{l}{sc}{
- <-> \Junicode@@scale Junicode-Light-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{bsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpBold-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{light}{sc}{
- <-> alias * Junicode-OsF/l/sc
+\DeclareFontShape{T1}{Junicode-OsF}{boldsemiexpanded}{sc}{
+ <-> alias * Junicode-OsF/bsx/sc
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{bsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{light}{n}{
- <-> alias * Junicode-OsF/l/n
+\DeclareFontShape{T1}{Junicode-OsF}{boldsemiexpanded}{scit}{
+ <-> alias * Junicode-OsF/bsx/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{l}{scit}{
- <-> \Junicode@@scale Junicode-LightItalic-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{light}{scit}{
- <-> alias * Junicode-OsF/l/scit
+\DeclareFontShape{T1}{Junicode-OsF}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-OsF/bsx/n
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{light}{it}{
- <-> alias * Junicode-OsF/l/it
+\DeclareFontShape{T1}{Junicode-OsF}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-OsF/bsx/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{l}{scsl}{
- <-> ssub * Junicode-OsF/l/scit
+\DeclareFontShape{T1}{Junicode-OsF}{bsx}{sl}{
+ <-> ssub * Junicode-OsF/bsx/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{light}{scsl}{
- <-> ssub * Junicode-OsF/light/scit
+\DeclareFontShape{T1}{Junicode-OsF}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-OsF/boldsemiexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{l}{sl}{
- <-> ssub * Junicode-OsF/l/it
+\DeclareFontShape{T1}{Junicode-OsF}{bsx}{scsl}{
+ <-> ssub * Junicode-OsF/bsx/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{light}{sl}{
- <-> ssub * Junicode-OsF/light/it
+\DeclareFontShape{T1}{Junicode-OsF}{boldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/boldsemiexpanded/scit
}{}
% ---- bx = boldexpanded ----
-\DeclareFontShape{T1}{Junicode-OsF}{bx}{sc}{
- <-> \Junicode@@scale Junicode-ExpBold-osf-sc-t1
-}{}
-
-\DeclareFontShape{T1}{Junicode-OsF}{boldexpanded}{sc}{
- <-> alias * Junicode-OsF/bx/sc
-}{}
-
\DeclareFontShape{T1}{Junicode-OsF}{bx}{n}{
<-> \Junicode@@scale Junicode-ExpBold-osf-t1
}{}
@@ -465,12 +559,12 @@
<-> alias * Junicode-OsF/bx/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{bx}{scsl}{
- <-> ssub * Junicode-OsF/bx/scit
+\DeclareFontShape{T1}{Junicode-OsF}{bx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpBold-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{boldexpanded}{scsl}{
- <-> ssub * Junicode-OsF/boldexpanded/scit
+\DeclareFontShape{T1}{Junicode-OsF}{boldexpanded}{sc}{
+ <-> alias * Junicode-OsF/bx/sc
}{}
\DeclareFontShape{T1}{Junicode-OsF}{bx}{sl}{
@@ -481,55 +575,12 @@
<-> ssub * Junicode-OsF/boldexpanded/it
}{}
-
-% ---- m = regular ----
-
-\DeclareFontShape{T1}{Junicode-OsF}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-osf-t1
-}{}
-
-\DeclareFontShape{T1}{Junicode-OsF}{regular}{it}{
- <-> alias * Junicode-OsF/m/it
-}{}
-
-\DeclareFontShape{T1}{Junicode-OsF}{m}{scit}{
- <-> \Junicode@@scale Junicode-Italic-osf-sc-t1
-}{}
-
-\DeclareFontShape{T1}{Junicode-OsF}{regular}{scit}{
- <-> alias * Junicode-OsF/m/scit
-}{}
-
-\DeclareFontShape{T1}{Junicode-OsF}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-osf-t1
-}{}
-
-\DeclareFontShape{T1}{Junicode-OsF}{regular}{n}{
- <-> alias * Junicode-OsF/m/n
-}{}
-
-\DeclareFontShape{T1}{Junicode-OsF}{m}{sc}{
- <-> \Junicode@@scale Junicode-Regular-osf-sc-t1
-}{}
-
-\DeclareFontShape{T1}{Junicode-OsF}{regular}{sc}{
- <-> alias * Junicode-OsF/m/sc
-}{}
-
-\DeclareFontShape{T1}{Junicode-OsF}{m}{scsl}{
- <-> ssub * Junicode-OsF/m/scit
-}{}
-
-\DeclareFontShape{T1}{Junicode-OsF}{regular}{scsl}{
- <-> ssub * Junicode-OsF/regular/scit
-}{}
-
-\DeclareFontShape{T1}{Junicode-OsF}{m}{sl}{
- <-> ssub * Junicode-OsF/m/it
+\DeclareFontShape{T1}{Junicode-OsF}{bx}{scsl}{
+ <-> ssub * Junicode-OsF/bx/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{regular}{sl}{
- <-> ssub * Junicode-OsF/regular/it
+\DeclareFontShape{T1}{Junicode-OsF}{boldexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/boldexpanded/scit
}{}
@@ -539,333 +590,282 @@
<-> \Junicode@@scale Junicode-MediumItalic-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{medium}{scit}{
- <-> \Junicode@@scale Junicode-MediumItalic-osf-sc-t1
-}{}
-
\DeclareFontShape{T1}{Junicode-OsF}{medium}{n}{
<-> \Junicode@@scale Junicode-Medium-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{medium}{sc}{
- <-> \Junicode@@scale Junicode-Medium-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{medium}{scit}{
+ <-> \Junicode@@scale Junicode-MediumItalic-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{medium}{scsl}{
- <-> ssub * Junicode-OsF/medium/scit
+\DeclareFontShape{T1}{Junicode-OsF}{medium}{sc}{
+ <-> \Junicode@@scale Junicode-Medium-osf-sc-t1
}{}
\DeclareFontShape{T1}{Junicode-OsF}{medium}{sl}{
<-> ssub * Junicode-OsF/medium/it
}{}
-
-% ---- lsc = lightsemicondensed ----
-
-\DeclareFontShape{T1}{Junicode-OsF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{medium}{scsl}{
+ <-> ssub * Junicode-OsF/medium/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lightsemicondensed}{it}{
- <-> alias * Junicode-OsF/lsc/it
-}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lsc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-osf-sc-t1
-}{}
-
-\DeclareFontShape{T1}{Junicode-OsF}{lightsemicondensed}{scit}{
- <-> alias * Junicode-OsF/lsc/scit
-}{}
+% ---- m = regular ----
-\DeclareFontShape{T1}{Junicode-OsF}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lightsemicondensed}{n}{
- <-> alias * Junicode-OsF/lsc/n
+\DeclareFontShape{T1}{Junicode-OsF}{regular}{it}{
+ <-> alias * Junicode-OsF/m/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lsc}{sc}{
- <-> \Junicode@@scale Junicode-SmCondLight-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lightsemicondensed}{sc}{
- <-> alias * Junicode-OsF/lsc/sc
+\DeclareFontShape{T1}{Junicode-OsF}{regular}{n}{
+ <-> alias * Junicode-OsF/m/n
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lsc}{scsl}{
- <-> ssub * Junicode-OsF/lsc/scit
+\DeclareFontShape{T1}{Junicode-OsF}{m}{scit}{
+ <-> \Junicode@@scale Junicode-Italic-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lightsemicondensed}{scsl}{
- <-> ssub * Junicode-OsF/lightsemicondensed/scit
+\DeclareFontShape{T1}{Junicode-OsF}{regular}{scit}{
+ <-> alias * Junicode-OsF/m/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lsc}{sl}{
- <-> ssub * Junicode-OsF/lsc/it
+\DeclareFontShape{T1}{Junicode-OsF}{m}{sc}{
+ <-> \Junicode@@scale Junicode-Regular-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-OsF/lightsemicondensed/it
+\DeclareFontShape{T1}{Junicode-OsF}{regular}{sc}{
+ <-> alias * Junicode-OsF/m/sc
}{}
-
-% ---- c = condensed ----
-
-\DeclareFontShape{T1}{Junicode-OsF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{m}{sl}{
+ <-> ssub * Junicode-OsF/m/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{condensed}{it}{
- <-> alias * Junicode-OsF/c/it
+\DeclareFontShape{T1}{Junicode-OsF}{regular}{sl}{
+ <-> ssub * Junicode-OsF/regular/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{c}{scit}{
- <-> \Junicode@@scale Junicode-CondItalic-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{m}{scsl}{
+ <-> ssub * Junicode-OsF/m/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{condensed}{scit}{
- <-> alias * Junicode-OsF/c/scit
+\DeclareFontShape{T1}{Junicode-OsF}{regular}{scsl}{
+ <-> ssub * Junicode-OsF/regular/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-osf-t1
-}{}
-\DeclareFontShape{T1}{Junicode-OsF}{condensed}{n}{
- <-> alias * Junicode-OsF/c/n
-}{}
+% ---- mediumsemiexpanded ----
-\DeclareFontShape{T1}{Junicode-OsF}{c}{sc}{
- <-> \Junicode@@scale Junicode-Cond-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{mediumsemiexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{condensed}{sc}{
- <-> alias * Junicode-OsF/c/sc
+\DeclareFontShape{T1}{Junicode-OsF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{c}{scsl}{
- <-> ssub * Junicode-OsF/c/scit
+\DeclareFontShape{T1}{Junicode-OsF}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{condensed}{scsl}{
- <-> ssub * Junicode-OsF/condensed/scit
+\DeclareFontShape{T1}{Junicode-OsF}{mediumsemiexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{c}{sl}{
- <-> ssub * Junicode-OsF/c/it
+\DeclareFontShape{T1}{Junicode-OsF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-OsF/mediumsemiexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{condensed}{sl}{
- <-> ssub * Junicode-OsF/condensed/it
+\DeclareFontShape{T1}{Junicode-OsF}{mediumsemiexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/mediumsemiexpanded/scit
}{}
-% ---- x = expanded ----
+% ---- lc = lightcondensed ----
-\DeclareFontShape{T1}{Junicode-OsF}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{expanded}{it}{
- <-> alias * Junicode-OsF/x/it
+\DeclareFontShape{T1}{Junicode-OsF}{lightcondensed}{it}{
+ <-> alias * Junicode-OsF/lc/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{x}{scit}{
- <-> \Junicode@@scale Junicode-ExpItalic-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{lc}{scit}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{expanded}{scit}{
- <-> alias * Junicode-OsF/x/scit
+\DeclareFontShape{T1}{Junicode-OsF}{lightcondensed}{scit}{
+ <-> alias * Junicode-OsF/lc/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{expanded}{n}{
- <-> alias * Junicode-OsF/x/n
+\DeclareFontShape{T1}{Junicode-OsF}{lightcondensed}{n}{
+ <-> alias * Junicode-OsF/lc/n
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{x}{sc}{
- <-> \Junicode@@scale Junicode-Exp-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{lc}{sc}{
+ <-> \Junicode@@scale Junicode-CondLight-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{expanded}{sc}{
- <-> alias * Junicode-OsF/x/sc
+\DeclareFontShape{T1}{Junicode-OsF}{lightcondensed}{sc}{
+ <-> alias * Junicode-OsF/lc/sc
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{x}{scsl}{
- <-> ssub * Junicode-OsF/x/scit
+\DeclareFontShape{T1}{Junicode-OsF}{lc}{sl}{
+ <-> ssub * Junicode-OsF/lc/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{expanded}{scsl}{
- <-> ssub * Junicode-OsF/expanded/scit
+\DeclareFontShape{T1}{Junicode-OsF}{lightcondensed}{sl}{
+ <-> ssub * Junicode-OsF/lightcondensed/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{x}{sl}{
- <-> ssub * Junicode-OsF/x/it
+\DeclareFontShape{T1}{Junicode-OsF}{lc}{scsl}{
+ <-> ssub * Junicode-OsF/lc/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{expanded}{sl}{
- <-> ssub * Junicode-OsF/expanded/it
+\DeclareFontShape{T1}{Junicode-OsF}{lightcondensed}{scsl}{
+ <-> ssub * Junicode-OsF/lightcondensed/scit
}{}
-% ---- sx = semiexpanded ----
-
-\DeclareFontShape{T1}{Junicode-OsF}{sx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpItalic-osf-sc-t1
-}{}
-
-\DeclareFontShape{T1}{Junicode-OsF}{semiexpanded}{scit}{
- <-> alias * Junicode-OsF/sx/scit
-}{}
+% ---- mediumsemicondensed ----
-\DeclareFontShape{T1}{Junicode-OsF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{mediumsemicondensed}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semiexpanded}{it}{
- <-> alias * Junicode-OsF/sx/it
+\DeclareFontShape{T1}{Junicode-OsF}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sx}{sc}{
- <-> \Junicode@@scale Junicode-SmExp-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{mediumsemicondensed}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semiexpanded}{sc}{
- <-> alias * Junicode-OsF/sx/sc
+\DeclareFontShape{T1}{Junicode-OsF}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-OsF/mediumsemicondensed/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semiexpanded}{n}{
- <-> alias * Junicode-OsF/sx/n
+\DeclareFontShape{T1}{Junicode-OsF}{mediumsemicondensed}{scsl}{
+ <-> ssub * Junicode-OsF/mediumsemicondensed/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sx}{scsl}{
- <-> ssub * Junicode-OsF/sx/scit
-}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semiexpanded}{scsl}{
- <-> ssub * Junicode-OsF/semiexpanded/scit
-}{}
+% ---- l = light ----
-\DeclareFontShape{T1}{Junicode-OsF}{sx}{sl}{
- <-> ssub * Junicode-OsF/sx/it
+\DeclareFontShape{T1}{Junicode-OsF}{l}{sc}{
+ <-> \Junicode@@scale Junicode-Light-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semiexpanded}{sl}{
- <-> ssub * Junicode-OsF/semiexpanded/it
+\DeclareFontShape{T1}{Junicode-OsF}{light}{sc}{
+ <-> alias * Junicode-OsF/l/sc
}{}
-
-% ---- mediumexpanded ----
-
-\DeclareFontShape{T1}{Junicode-OsF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumexpanded}{scit}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{light}{it}{
+ <-> alias * Junicode-OsF/l/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumexpanded}{sc}{
- <-> \Junicode@@scale Junicode-ExpMedium-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{light}{n}{
+ <-> alias * Junicode-OsF/l/n
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumexpanded}{scsl}{
- <-> ssub * Junicode-OsF/mediumexpanded/scit
+\DeclareFontShape{T1}{Junicode-OsF}{l}{scit}{
+ <-> \Junicode@@scale Junicode-LightItalic-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-OsF/mediumexpanded/it
+\DeclareFontShape{T1}{Junicode-OsF}{light}{scit}{
+ <-> alias * Junicode-OsF/l/scit
}{}
-
-% ---- sbsx = semiboldsemiexpanded ----
-
-\DeclareFontShape{T1}{Junicode-OsF}{sbsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{l}{sl}{
+ <-> ssub * Junicode-OsF/l/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semiboldsemiexpanded}{scit}{
- <-> alias * Junicode-OsF/sbsx/scit
+\DeclareFontShape{T1}{Junicode-OsF}{light}{sl}{
+ <-> ssub * Junicode-OsF/light/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{l}{scsl}{
+ <-> ssub * Junicode-OsF/l/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-OsF/sbsx/it
+\DeclareFontShape{T1}{Junicode-OsF}{light}{scsl}{
+ <-> ssub * Junicode-OsF/light/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sbsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-osf-sc-t1
-}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semiboldsemiexpanded}{sc}{
- <-> alias * Junicode-OsF/sbsx/sc
-}{}
+% ---- sx = semiexpanded ----
-\DeclareFontShape{T1}{Junicode-OsF}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{sx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExp-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-OsF/sbsx/n
+\DeclareFontShape{T1}{Junicode-OsF}{semiexpanded}{sc}{
+ <-> alias * Junicode-OsF/sx/sc
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sbsx}{scsl}{
- <-> ssub * Junicode-OsF/sbsx/scit
+\DeclareFontShape{T1}{Junicode-OsF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semiboldsemiexpanded}{scsl}{
- <-> ssub * Junicode-OsF/semiboldsemiexpanded/scit
+\DeclareFontShape{T1}{Junicode-OsF}{semiexpanded}{n}{
+ <-> alias * Junicode-OsF/sx/n
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{sbsx}{sl}{
- <-> ssub * Junicode-OsF/sbsx/it
+\DeclareFontShape{T1}{Junicode-OsF}{sx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-osf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-OsF/semiboldsemiexpanded/it
+\DeclareFontShape{T1}{Junicode-OsF}{semiexpanded}{scit}{
+ <-> alias * Junicode-OsF/sx/scit
}{}
-
-% ---- mediumsemiexpanded ----
-
-\DeclareFontShape{T1}{Junicode-OsF}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-osf-t1
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumsemiexpanded}{sc}{
- <-> \Junicode@@scale Junicode-SmExpMedium-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{semiexpanded}{it}{
+ <-> alias * Junicode-OsF/sx/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-osf-t1
+\DeclareFontShape{T1}{Junicode-OsF}{sx}{sl}{
+ <-> ssub * Junicode-OsF/sx/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumsemiexpanded}{scit}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-osf-sc-t1
+\DeclareFontShape{T1}{Junicode-OsF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-OsF/semiexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumsemiexpanded}{scsl}{
- <-> ssub * Junicode-OsF/mediumsemiexpanded/scit
+\DeclareFontShape{T1}{Junicode-OsF}{sx}{scsl}{
+ <-> ssub * Junicode-OsF/sx/scit
}{}
-\DeclareFontShape{T1}{Junicode-OsF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-OsF/mediumsemiexpanded/it
+\DeclareFontShape{T1}{Junicode-OsF}{semiexpanded}{scsl}{
+ <-> ssub * Junicode-OsF/semiexpanded/scit
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/T1Junicode-Sup.fd b/Master/texmf-dist/tex/latex/junicode/T1Junicode-Sup.fd
index dd152bd085e..86903276ad1 100644
--- a/Master/texmf-dist/tex/latex/junicode/T1Junicode-Sup.fd
+++ b/Master/texmf-dist/tex/latex/junicode/T1Junicode-Sup.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{T1Junicode-Sup.fd}
- [2024/06/03 (autoinst) Font definitions for T1/Junicode-Sup.]
+ [2024/07/21 (autoinst) Font definitions for T1/Junicode-Sup.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,126 +20,111 @@
\DeclareFontFamily{T1}{Junicode-Sup}{}
-% ---- sx = semiexpanded ----
+% ---- c = condensed ----
-\DeclareFontShape{T1}{Junicode-Sup}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{semiexpanded}{n}{
- <-> alias * Junicode-Sup/sx/n
+\DeclareFontShape{T1}{Junicode-Sup}{condensed}{n}{
+ <-> alias * Junicode-Sup/c/n
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{semiexpanded}{it}{
- <-> alias * Junicode-Sup/sx/it
+\DeclareFontShape{T1}{Junicode-Sup}{condensed}{it}{
+ <-> alias * Junicode-Sup/c/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{sx}{sl}{
- <-> ssub * Junicode-Sup/sx/it
+\DeclareFontShape{T1}{Junicode-Sup}{c}{sl}{
+ <-> ssub * Junicode-Sup/c/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{semiexpanded}{sl}{
- <-> ssub * Junicode-Sup/semiexpanded/it
+\DeclareFontShape{T1}{Junicode-Sup}{condensed}{sl}{
+ <-> ssub * Junicode-Sup/condensed/it
}{}
-% ---- x = expanded ----
-
-\DeclareFontShape{T1}{Junicode-Sup}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-sup-t1
-}{}
+% ---- sbx = semiboldexpanded ----
-\DeclareFontShape{T1}{Junicode-Sup}{expanded}{n}{
- <-> alias * Junicode-Sup/x/n
+\DeclareFontShape{T1}{Junicode-Sup}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{semiboldexpanded}{it}{
+ <-> alias * Junicode-Sup/sbx/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{expanded}{it}{
- <-> alias * Junicode-Sup/x/it
+\DeclareFontShape{T1}{Junicode-Sup}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{x}{sl}{
- <-> ssub * Junicode-Sup/x/it
+\DeclareFontShape{T1}{Junicode-Sup}{semiboldexpanded}{n}{
+ <-> alias * Junicode-Sup/sbx/n
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{expanded}{sl}{
- <-> ssub * Junicode-Sup/expanded/it
+\DeclareFontShape{T1}{Junicode-Sup}{sbx}{sl}{
+ <-> ssub * Junicode-Sup/sbx/it
}{}
-
-% ---- c = condensed ----
-
-\DeclareFontShape{T1}{Junicode-Sup}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-Sup/semiboldexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{condensed}{n}{
- <-> alias * Junicode-Sup/c/n
-}{}
-\DeclareFontShape{T1}{Junicode-Sup}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-sup-t1
-}{}
+% ---- x = expanded ----
-\DeclareFontShape{T1}{Junicode-Sup}{condensed}{it}{
- <-> alias * Junicode-Sup/c/it
+\DeclareFontShape{T1}{Junicode-Sup}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{c}{sl}{
- <-> ssub * Junicode-Sup/c/it
+\DeclareFontShape{T1}{Junicode-Sup}{expanded}{n}{
+ <-> alias * Junicode-Sup/x/n
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{condensed}{sl}{
- <-> ssub * Junicode-Sup/condensed/it
+\DeclareFontShape{T1}{Junicode-Sup}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-sup-t1
}{}
-
-% ---- mediumsemiexpanded ----
-
-\DeclareFontShape{T1}{Junicode-Sup}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{expanded}{it}{
+ <-> alias * Junicode-Sup/x/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{x}{sl}{
+ <-> ssub * Junicode-Sup/x/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-Sup/mediumsemiexpanded/it
+\DeclareFontShape{T1}{Junicode-Sup}{expanded}{sl}{
+ <-> ssub * Junicode-Sup/expanded/it
}{}
-% ---- sbsx = semiboldsemiexpanded ----
+% ---- b = bold ----
-\DeclareFontShape{T1}{Junicode-Sup}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-Sup/sbsx/n
+\DeclareFontShape{T1}{Junicode-Sup}{bold}{it}{
+ <-> alias * Junicode-Sup/b/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-Sup/sbsx/it
+\DeclareFontShape{T1}{Junicode-Sup}{bold}{n}{
+ <-> alias * Junicode-Sup/b/n
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{sbsx}{sl}{
- <-> ssub * Junicode-Sup/sbsx/it
+\DeclareFontShape{T1}{Junicode-Sup}{b}{sl}{
+ <-> ssub * Junicode-Sup/b/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-Sup/semiboldsemiexpanded/it
+\DeclareFontShape{T1}{Junicode-Sup}{bold}{sl}{
+ <-> ssub * Junicode-Sup/bold/it
}{}
@@ -158,84 +143,99 @@
}{}
-% ---- bx = boldexpanded ----
+% ---- lsc = lightsemicondensed ----
-\DeclareFontShape{T1}{Junicode-Sup}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{boldexpanded}{it}{
- <-> alias * Junicode-Sup/bx/it
+\DeclareFontShape{T1}{Junicode-Sup}{lightsemicondensed}{it}{
+ <-> alias * Junicode-Sup/lsc/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{boldexpanded}{n}{
- <-> alias * Junicode-Sup/bx/n
+\DeclareFontShape{T1}{Junicode-Sup}{lightsemicondensed}{n}{
+ <-> alias * Junicode-Sup/lsc/n
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{bx}{sl}{
- <-> ssub * Junicode-Sup/bx/it
+\DeclareFontShape{T1}{Junicode-Sup}{lsc}{sl}{
+ <-> ssub * Junicode-Sup/lsc/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{boldexpanded}{sl}{
- <-> ssub * Junicode-Sup/boldexpanded/it
+\DeclareFontShape{T1}{Junicode-Sup}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-Sup/lightsemicondensed/it
}{}
-% ---- l = light ----
+% ---- lc = lightcondensed ----
-\DeclareFontShape{T1}{Junicode-Sup}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{light}{n}{
- <-> alias * Junicode-Sup/l/n
+\DeclareFontShape{T1}{Junicode-Sup}{lightcondensed}{it}{
+ <-> alias * Junicode-Sup/lc/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{light}{it}{
- <-> alias * Junicode-Sup/l/it
+\DeclareFontShape{T1}{Junicode-Sup}{lightcondensed}{n}{
+ <-> alias * Junicode-Sup/lc/n
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{l}{sl}{
- <-> ssub * Junicode-Sup/l/it
+\DeclareFontShape{T1}{Junicode-Sup}{lc}{sl}{
+ <-> ssub * Junicode-Sup/lc/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{light}{sl}{
- <-> ssub * Junicode-Sup/light/it
+\DeclareFontShape{T1}{Junicode-Sup}{lightcondensed}{sl}{
+ <-> ssub * Junicode-Sup/lightcondensed/it
}{}
-% ---- lsc = lightsemicondensed ----
+% ---- m = regular ----
-\DeclareFontShape{T1}{Junicode-Sup}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{lightsemicondensed}{n}{
- <-> alias * Junicode-Sup/lsc/n
+\DeclareFontShape{T1}{Junicode-Sup}{regular}{it}{
+ <-> alias * Junicode-Sup/m/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{lightsemicondensed}{it}{
- <-> alias * Junicode-Sup/lsc/it
+\DeclareFontShape{T1}{Junicode-Sup}{regular}{n}{
+ <-> alias * Junicode-Sup/m/n
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{lsc}{sl}{
- <-> ssub * Junicode-Sup/lsc/it
+\DeclareFontShape{T1}{Junicode-Sup}{m}{sl}{
+ <-> ssub * Junicode-Sup/m/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-Sup/lightsemicondensed/it
+\DeclareFontShape{T1}{Junicode-Sup}{regular}{sl}{
+ <-> ssub * Junicode-Sup/regular/it
+}{}
+
+
+% ---- mediumsemiexpanded ----
+
+\DeclareFontShape{T1}{Junicode-Sup}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-sup-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-Sup}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-sup-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-Sup}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-Sup/mediumsemiexpanded/it
}{}
@@ -254,99 +254,84 @@
}{}
-% ---- m = regular ----
-
-\DeclareFontShape{T1}{Junicode-Sup}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-sup-t1
-}{}
+% ---- bx = boldexpanded ----
-\DeclareFontShape{T1}{Junicode-Sup}{regular}{it}{
- <-> alias * Junicode-Sup/m/it
+\DeclareFontShape{T1}{Junicode-Sup}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{boldexpanded}{it}{
+ <-> alias * Junicode-Sup/bx/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{regular}{n}{
- <-> alias * Junicode-Sup/m/n
+\DeclareFontShape{T1}{Junicode-Sup}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{m}{sl}{
- <-> ssub * Junicode-Sup/m/it
+\DeclareFontShape{T1}{Junicode-Sup}{boldexpanded}{n}{
+ <-> alias * Junicode-Sup/bx/n
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{regular}{sl}{
- <-> ssub * Junicode-Sup/regular/it
+\DeclareFontShape{T1}{Junicode-Sup}{bx}{sl}{
+ <-> ssub * Junicode-Sup/bx/it
}{}
-
-% ---- b = bold ----
-
-\DeclareFontShape{T1}{Junicode-Sup}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{boldexpanded}{sl}{
+ <-> ssub * Junicode-Sup/boldexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{bold}{it}{
- <-> alias * Junicode-Sup/b/it
-}{}
-\DeclareFontShape{T1}{Junicode-Sup}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-sup-t1
-}{}
+% ---- sx = semiexpanded ----
-\DeclareFontShape{T1}{Junicode-Sup}{bold}{n}{
- <-> alias * Junicode-Sup/b/n
+\DeclareFontShape{T1}{Junicode-Sup}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{b}{sl}{
- <-> ssub * Junicode-Sup/b/it
+\DeclareFontShape{T1}{Junicode-Sup}{semiexpanded}{n}{
+ <-> alias * Junicode-Sup/sx/n
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{bold}{sl}{
- <-> ssub * Junicode-Sup/bold/it
+\DeclareFontShape{T1}{Junicode-Sup}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-sup-t1
}{}
-
-% ---- mediumcondensed ----
-
-\DeclareFontShape{T1}{Junicode-Sup}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{semiexpanded}{it}{
+ <-> alias * Junicode-Sup/sx/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{sx}{sl}{
+ <-> ssub * Junicode-Sup/sx/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{mediumcondensed}{sl}{
- <-> ssub * Junicode-Sup/mediumcondensed/it
+\DeclareFontShape{T1}{Junicode-Sup}{semiexpanded}{sl}{
+ <-> ssub * Junicode-Sup/semiexpanded/it
}{}
-% ---- sbx = semiboldexpanded ----
+% ---- l = light ----
-\DeclareFontShape{T1}{Junicode-Sup}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{semiboldexpanded}{it}{
- <-> alias * Junicode-Sup/sbx/it
+\DeclareFontShape{T1}{Junicode-Sup}{light}{n}{
+ <-> alias * Junicode-Sup/l/n
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{semiboldexpanded}{n}{
- <-> alias * Junicode-Sup/sbx/n
+\DeclareFontShape{T1}{Junicode-Sup}{light}{it}{
+ <-> alias * Junicode-Sup/l/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{sbx}{sl}{
- <-> ssub * Junicode-Sup/sbx/it
+\DeclareFontShape{T1}{Junicode-Sup}{l}{sl}{
+ <-> ssub * Junicode-Sup/l/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-Sup/semiboldexpanded/it
+\DeclareFontShape{T1}{Junicode-Sup}{light}{sl}{
+ <-> ssub * Junicode-Sup/light/it
}{}
@@ -367,14 +352,6 @@
% ---- sb = semibold ----
-\DeclareFontShape{T1}{Junicode-Sup}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-sup-t1
-}{}
-
-\DeclareFontShape{T1}{Junicode-Sup}{semibold}{it}{
- <-> alias * Junicode-Sup/sb/it
-}{}
-
\DeclareFontShape{T1}{Junicode-Sup}{sb}{n}{
<-> \Junicode@@scale Junicode-SmBold-sup-t1
}{}
@@ -383,6 +360,14 @@
<-> alias * Junicode-Sup/sb/n
}{}
+\DeclareFontShape{T1}{Junicode-Sup}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-sup-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-Sup}{semibold}{it}{
+ <-> alias * Junicode-Sup/sb/it
+}{}
+
\DeclareFontShape{T1}{Junicode-Sup}{sb}{sl}{
<-> ssub * Junicode-Sup/sb/it
}{}
@@ -392,43 +377,50 @@
}{}
-% ---- sc = semicondensed ----
+% ---- mediumcondensed ----
-\DeclareFontShape{T1}{Junicode-Sup}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{semicondensed}{n}{
- <-> alias * Junicode-Sup/sc/n
+\DeclareFontShape{T1}{Junicode-Sup}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-Sup/mediumcondensed/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{semicondensed}{it}{
- <-> alias * Junicode-Sup/sc/it
-}{}
-\DeclareFontShape{T1}{Junicode-Sup}{sc}{sl}{
- <-> ssub * Junicode-Sup/sc/it
+% ---- sbsx = semiboldsemiexpanded ----
+
+\DeclareFontShape{T1}{Junicode-Sup}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{semicondensed}{sl}{
- <-> ssub * Junicode-Sup/semicondensed/it
+\DeclareFontShape{T1}{Junicode-Sup}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-Sup/sbsx/n
}{}
+\DeclareFontShape{T1}{Junicode-Sup}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-sup-t1
+}{}
-% ---- bsx = boldsemiexpanded ----
+\DeclareFontShape{T1}{Junicode-Sup}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-Sup/sbsx/it
+}{}
-\DeclareFontShape{T1}{Junicode-Sup}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{sbsx}{sl}{
+ <-> ssub * Junicode-Sup/sbsx/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{boldsemiexpanded}{n}{
- <-> alias * Junicode-Sup/bsx/n
+\DeclareFontShape{T1}{Junicode-Sup}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-Sup/semiboldsemiexpanded/it
}{}
+
+% ---- bsx = boldsemiexpanded ----
+
\DeclareFontShape{T1}{Junicode-Sup}{bsx}{it}{
<-> \Junicode@@scale Junicode-SmExpBoldItalic-sup-t1
}{}
@@ -437,6 +429,14 @@
<-> alias * Junicode-Sup/bsx/it
}{}
+\DeclareFontShape{T1}{Junicode-Sup}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-sup-t1
+}{}
+
+\DeclareFontShape{T1}{Junicode-Sup}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-Sup/bsx/n
+}{}
+
\DeclareFontShape{T1}{Junicode-Sup}{bsx}{sl}{
<-> ssub * Junicode-Sup/bsx/it
}{}
@@ -446,30 +446,30 @@
}{}
-% ---- lc = lightcondensed ----
+% ---- sc = semicondensed ----
-\DeclareFontShape{T1}{Junicode-Sup}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{lightcondensed}{n}{
- <-> alias * Junicode-Sup/lc/n
+\DeclareFontShape{T1}{Junicode-Sup}{semicondensed}{it}{
+ <-> alias * Junicode-Sup/sc/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-sup-t1
+\DeclareFontShape{T1}{Junicode-Sup}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-sup-t1
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{lightcondensed}{it}{
- <-> alias * Junicode-Sup/lc/it
+\DeclareFontShape{T1}{Junicode-Sup}{semicondensed}{n}{
+ <-> alias * Junicode-Sup/sc/n
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{lc}{sl}{
- <-> ssub * Junicode-Sup/lc/it
+\DeclareFontShape{T1}{Junicode-Sup}{sc}{sl}{
+ <-> ssub * Junicode-Sup/sc/it
}{}
-\DeclareFontShape{T1}{Junicode-Sup}{lightcondensed}{sl}{
- <-> ssub * Junicode-Sup/lightcondensed/it
+\DeclareFontShape{T1}{Junicode-Sup}{semicondensed}{sl}{
+ <-> ssub * Junicode-Sup/semicondensed/it
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/T1Junicode-TLF.fd b/Master/texmf-dist/tex/latex/junicode/T1Junicode-TLF.fd
index 1cf635bb8fe..014b2b6c696 100644
--- a/Master/texmf-dist/tex/latex/junicode/T1Junicode-TLF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/T1Junicode-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{T1Junicode-TLF.fd}
- [2024/06/03 (autoinst) Font definitions for T1/Junicode-TLF.]
+ [2024/07/21 (autoinst) Font definitions for T1/Junicode-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,656 +20,632 @@
\DeclareFontFamily{T1}{Junicode-TLF}{}
-% ---- sbx = semiboldexpanded ----
+% ---- l = light ----
-\DeclareFontShape{T1}{Junicode-TLF}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{l}{sc}{
+ <-> \Junicode@@scale Junicode-Light-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semiboldexpanded}{n}{
- <-> alias * Junicode-TLF/sbx/n
+\DeclareFontShape{T1}{Junicode-TLF}{light}{sc}{
+ <-> alias * Junicode-TLF/l/sc
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sbx}{sc}{
- <-> \Junicode@@scale Junicode-ExpSmBold-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semiboldexpanded}{sc}{
- <-> alias * Junicode-TLF/sbx/sc
+\DeclareFontShape{T1}{Junicode-TLF}{light}{it}{
+ <-> alias * Junicode-TLF/l/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semiboldexpanded}{it}{
- <-> alias * Junicode-TLF/sbx/it
+\DeclareFontShape{T1}{Junicode-TLF}{light}{n}{
+ <-> alias * Junicode-TLF/l/n
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sbx}{scit}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{l}{scit}{
+ <-> \Junicode@@scale Junicode-LightItalic-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semiboldexpanded}{scit}{
- <-> alias * Junicode-TLF/sbx/scit
+\DeclareFontShape{T1}{Junicode-TLF}{light}{scit}{
+ <-> alias * Junicode-TLF/l/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sbx}{scsl}{
- <-> ssub * Junicode-TLF/sbx/scit
+\DeclareFontShape{T1}{Junicode-TLF}{l}{sl}{
+ <-> ssub * Junicode-TLF/l/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semiboldexpanded}{scsl}{
- <-> ssub * Junicode-TLF/semiboldexpanded/scit
+\DeclareFontShape{T1}{Junicode-TLF}{light}{sl}{
+ <-> ssub * Junicode-TLF/light/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sbx}{sl}{
- <-> ssub * Junicode-TLF/sbx/it
+\DeclareFontShape{T1}{Junicode-TLF}{l}{scsl}{
+ <-> ssub * Junicode-TLF/l/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-TLF/semiboldexpanded/it
+\DeclareFontShape{T1}{Junicode-TLF}{light}{scsl}{
+ <-> ssub * Junicode-TLF/light/scit
}{}
-% ---- mediumsemicondensed ----
+% ---- sx = semiexpanded ----
-\DeclareFontShape{T1}{Junicode-TLF}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExp-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumsemicondensed}{sc}{
- <-> \Junicode@@scale Junicode-SmCondMedium-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{semiexpanded}{sc}{
+ <-> alias * Junicode-TLF/sx/sc
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumsemicondensed}{scit}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{semiexpanded}{it}{
+ <-> alias * Junicode-TLF/sx/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumsemicondensed}{scsl}{
- <-> ssub * Junicode-TLF/mediumsemicondensed/scit
+\DeclareFontShape{T1}{Junicode-TLF}{sx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-TLF/mediumsemicondensed/it
+\DeclareFontShape{T1}{Junicode-TLF}{semiexpanded}{scit}{
+ <-> alias * Junicode-TLF/sx/scit
}{}
-
-% ---- sc = semicondensed ----
-
-\DeclareFontShape{T1}{Junicode-TLF}{sc}{sc}{
- <-> \Junicode@@scale Junicode-SmCond-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semicondensed}{sc}{
- <-> alias * Junicode-TLF/sc/sc
+\DeclareFontShape{T1}{Junicode-TLF}{semiexpanded}{n}{
+ <-> alias * Junicode-TLF/sx/n
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sx}{sl}{
+ <-> ssub * Junicode-TLF/sx/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semicondensed}{n}{
- <-> alias * Junicode-TLF/sc/n
+\DeclareFontShape{T1}{Junicode-TLF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-TLF/semiexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondItalic-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sx}{scsl}{
+ <-> ssub * Junicode-TLF/sx/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semicondensed}{scit}{
- <-> alias * Junicode-TLF/sc/scit
+\DeclareFontShape{T1}{Junicode-TLF}{semiexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/semiexpanded/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-tlf-t1
+
+% ---- mediumsemicondensed ----
+
+\DeclareFontShape{T1}{Junicode-TLF}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semicondensed}{it}{
- <-> alias * Junicode-TLF/sc/it
+\DeclareFontShape{T1}{Junicode-TLF}{mediumsemicondensed}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sc}{scsl}{
- <-> ssub * Junicode-TLF/sc/scit
+\DeclareFontShape{T1}{Junicode-TLF}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semicondensed}{scsl}{
- <-> ssub * Junicode-TLF/semicondensed/scit
+\DeclareFontShape{T1}{Junicode-TLF}{mediumsemicondensed}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sc}{sl}{
- <-> ssub * Junicode-TLF/sc/it
+\DeclareFontShape{T1}{Junicode-TLF}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-TLF/mediumsemicondensed/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semicondensed}{sl}{
- <-> ssub * Junicode-TLF/semicondensed/it
+\DeclareFontShape{T1}{Junicode-TLF}{mediumsemicondensed}{scsl}{
+ <-> ssub * Junicode-TLF/mediumsemicondensed/scit
}{}
-% ---- sb = semibold ----
+% ---- lc = lightcondensed ----
-\DeclareFontShape{T1}{Junicode-TLF}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{lc}{sc}{
+ <-> \Junicode@@scale Junicode-CondLight-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semibold}{it}{
- <-> alias * Junicode-TLF/sb/it
+\DeclareFontShape{T1}{Junicode-TLF}{lightcondensed}{sc}{
+ <-> alias * Junicode-TLF/lc/sc
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sb}{scit}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semibold}{scit}{
- <-> alias * Junicode-TLF/sb/scit
+\DeclareFontShape{T1}{Junicode-TLF}{lightcondensed}{it}{
+ <-> alias * Junicode-TLF/lc/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semibold}{n}{
- <-> alias * Junicode-TLF/sb/n
+\DeclareFontShape{T1}{Junicode-TLF}{lightcondensed}{n}{
+ <-> alias * Junicode-TLF/lc/n
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sb}{sc}{
- <-> \Junicode@@scale Junicode-SmBold-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{lc}{scit}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semibold}{sc}{
- <-> alias * Junicode-TLF/sb/sc
+\DeclareFontShape{T1}{Junicode-TLF}{lightcondensed}{scit}{
+ <-> alias * Junicode-TLF/lc/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sb}{scsl}{
- <-> ssub * Junicode-TLF/sb/scit
+\DeclareFontShape{T1}{Junicode-TLF}{lc}{sl}{
+ <-> ssub * Junicode-TLF/lc/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semibold}{scsl}{
- <-> ssub * Junicode-TLF/semibold/scit
+\DeclareFontShape{T1}{Junicode-TLF}{lightcondensed}{sl}{
+ <-> ssub * Junicode-TLF/lightcondensed/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sb}{sl}{
- <-> ssub * Junicode-TLF/sb/it
+\DeclareFontShape{T1}{Junicode-TLF}{lc}{scsl}{
+ <-> ssub * Junicode-TLF/lc/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semibold}{sl}{
- <-> ssub * Junicode-TLF/semibold/it
+\DeclareFontShape{T1}{Junicode-TLF}{lightcondensed}{scsl}{
+ <-> ssub * Junicode-TLF/lightcondensed/scit
}{}
-% ---- bsx = boldsemiexpanded ----
+% ---- bx = boldexpanded ----
-\DeclareFontShape{T1}{Junicode-TLF}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{bx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{boldsemiexpanded}{n}{
- <-> alias * Junicode-TLF/bsx/n
+\DeclareFontShape{T1}{Junicode-TLF}{boldexpanded}{scit}{
+ <-> alias * Junicode-TLF/bx/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{bsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpBold-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{boldsemiexpanded}{sc}{
- <-> alias * Junicode-TLF/bsx/sc
+\DeclareFontShape{T1}{Junicode-TLF}{boldexpanded}{n}{
+ <-> alias * Junicode-TLF/bx/n
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{boldsemiexpanded}{it}{
- <-> alias * Junicode-TLF/bsx/it
+\DeclareFontShape{T1}{Junicode-TLF}{boldexpanded}{it}{
+ <-> alias * Junicode-TLF/bx/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{bsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{bx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpBold-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{boldsemiexpanded}{scit}{
- <-> alias * Junicode-TLF/bsx/scit
+\DeclareFontShape{T1}{Junicode-TLF}{boldexpanded}{sc}{
+ <-> alias * Junicode-TLF/bx/sc
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{bsx}{scsl}{
- <-> ssub * Junicode-TLF/bsx/scit
+\DeclareFontShape{T1}{Junicode-TLF}{bx}{sl}{
+ <-> ssub * Junicode-TLF/bx/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{boldsemiexpanded}{scsl}{
- <-> ssub * Junicode-TLF/boldsemiexpanded/scit
+\DeclareFontShape{T1}{Junicode-TLF}{boldexpanded}{sl}{
+ <-> ssub * Junicode-TLF/boldexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{bsx}{sl}{
- <-> ssub * Junicode-TLF/bsx/it
+\DeclareFontShape{T1}{Junicode-TLF}{bx}{scsl}{
+ <-> ssub * Junicode-TLF/bx/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-TLF/boldsemiexpanded/it
+\DeclareFontShape{T1}{Junicode-TLF}{boldexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/boldexpanded/scit
}{}
-% ---- lc = lightcondensed ----
-
-\DeclareFontShape{T1}{Junicode-TLF}{lc}{sc}{
- <-> \Junicode@@scale Junicode-CondLight-tlf-sc-t1
-}{}
-
-\DeclareFontShape{T1}{Junicode-TLF}{lightcondensed}{sc}{
- <-> alias * Junicode-TLF/lc/sc
-}{}
+% ---- medium ----
-\DeclareFontShape{T1}{Junicode-TLF}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{medium}{sc}{
+ <-> \Junicode@@scale Junicode-Medium-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{lightcondensed}{n}{
- <-> alias * Junicode-TLF/lc/n
+\DeclareFontShape{T1}{Junicode-TLF}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{lc}{scit}{
- <-> \Junicode@@scale Junicode-CondLightItalic-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{medium}{n}{
+ <-> \Junicode@@scale Junicode-Medium-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{lightcondensed}{scit}{
- <-> alias * Junicode-TLF/lc/scit
+\DeclareFontShape{T1}{Junicode-TLF}{medium}{scit}{
+ <-> \Junicode@@scale Junicode-MediumItalic-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{medium}{sl}{
+ <-> ssub * Junicode-TLF/medium/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{lightcondensed}{it}{
- <-> alias * Junicode-TLF/lc/it
+\DeclareFontShape{T1}{Junicode-TLF}{medium}{scsl}{
+ <-> ssub * Junicode-TLF/medium/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{lc}{scsl}{
- <-> ssub * Junicode-TLF/lc/scit
-}{}
-\DeclareFontShape{T1}{Junicode-TLF}{lightcondensed}{scsl}{
- <-> ssub * Junicode-TLF/lightcondensed/scit
-}{}
+% ---- mediumsemiexpanded ----
-\DeclareFontShape{T1}{Junicode-TLF}{lc}{sl}{
- <-> ssub * Junicode-TLF/lc/it
+\DeclareFontShape{T1}{Junicode-TLF}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{lightcondensed}{sl}{
- <-> ssub * Junicode-TLF/lightcondensed/it
+\DeclareFontShape{T1}{Junicode-TLF}{mediumsemiexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-tlf-sc-t1
}{}
-
-% ---- b = bold ----
-
-\DeclareFontShape{T1}{Junicode-TLF}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{bold}{n}{
- <-> alias * Junicode-TLF/b/n
+\DeclareFontShape{T1}{Junicode-TLF}{mediumsemiexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{b}{sc}{
- <-> \Junicode@@scale Junicode-Bold-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-TLF/mediumsemiexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{bold}{sc}{
- <-> alias * Junicode-TLF/b/sc
+\DeclareFontShape{T1}{Junicode-TLF}{mediumsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/mediumsemiexpanded/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-tlf-t1
-}{}
-\DeclareFontShape{T1}{Junicode-TLF}{bold}{it}{
- <-> alias * Junicode-TLF/b/it
-}{}
+% ---- m = regular ----
-\DeclareFontShape{T1}{Junicode-TLF}{b}{scit}{
- <-> \Junicode@@scale Junicode-BoldItalic-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{m}{sc}{
+ <-> \Junicode@@scale Junicode-Regular-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{bold}{scit}{
- <-> alias * Junicode-TLF/b/scit
+\DeclareFontShape{T1}{Junicode-TLF}{regular}{sc}{
+ <-> alias * Junicode-TLF/m/sc
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{b}{scsl}{
- <-> ssub * Junicode-TLF/b/scit
+\DeclareFontShape{T1}{Junicode-TLF}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{bold}{scsl}{
- <-> ssub * Junicode-TLF/bold/scit
+\DeclareFontShape{T1}{Junicode-TLF}{regular}{it}{
+ <-> alias * Junicode-TLF/m/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{b}{sl}{
- <-> ssub * Junicode-TLF/b/it
+\DeclareFontShape{T1}{Junicode-TLF}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{bold}{sl}{
- <-> ssub * Junicode-TLF/bold/it
+\DeclareFontShape{T1}{Junicode-TLF}{regular}{n}{
+ <-> alias * Junicode-TLF/m/n
}{}
-
-% ---- mediumcondensed ----
-
-\DeclareFontShape{T1}{Junicode-TLF}{mediumcondensed}{scit}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{m}{scit}{
+ <-> \Junicode@@scale Junicode-Italic-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{regular}{scit}{
+ <-> alias * Junicode-TLF/m/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumcondensed}{sc}{
- <-> \Junicode@@scale Junicode-CondMedium-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{m}{sl}{
+ <-> ssub * Junicode-TLF/m/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{regular}{sl}{
+ <-> ssub * Junicode-TLF/regular/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumcondensed}{scsl}{
- <-> ssub * Junicode-TLF/mediumcondensed/scit
+\DeclareFontShape{T1}{Junicode-TLF}{m}{scsl}{
+ <-> ssub * Junicode-TLF/m/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumcondensed}{sl}{
- <-> ssub * Junicode-TLF/mediumcondensed/it
+\DeclareFontShape{T1}{Junicode-TLF}{regular}{scsl}{
+ <-> ssub * Junicode-TLF/regular/scit
}{}
-% ---- bx = boldexpanded ----
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{T1}{Junicode-TLF}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{boldexpanded}{it}{
- <-> alias * Junicode-TLF/bx/it
+\DeclareFontShape{T1}{Junicode-TLF}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-TLF/sbsx/n
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{bx}{scit}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sbsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{boldexpanded}{scit}{
- <-> alias * Junicode-TLF/bx/scit
+\DeclareFontShape{T1}{Junicode-TLF}{semiboldsemiexpanded}{scit}{
+ <-> alias * Junicode-TLF/sbsx/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{boldexpanded}{n}{
- <-> alias * Junicode-TLF/bx/n
+\DeclareFontShape{T1}{Junicode-TLF}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-TLF/sbsx/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{bx}{sc}{
- <-> \Junicode@@scale Junicode-ExpBold-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sbsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{boldexpanded}{sc}{
- <-> alias * Junicode-TLF/bx/sc
+\DeclareFontShape{T1}{Junicode-TLF}{semiboldsemiexpanded}{sc}{
+ <-> alias * Junicode-TLF/sbsx/sc
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{bx}{scsl}{
- <-> ssub * Junicode-TLF/bx/scit
+\DeclareFontShape{T1}{Junicode-TLF}{sbsx}{sl}{
+ <-> ssub * Junicode-TLF/sbsx/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{boldexpanded}{scsl}{
- <-> ssub * Junicode-TLF/boldexpanded/scit
+\DeclareFontShape{T1}{Junicode-TLF}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-TLF/semiboldsemiexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{bx}{sl}{
- <-> ssub * Junicode-TLF/bx/it
+\DeclareFontShape{T1}{Junicode-TLF}{sbsx}{scsl}{
+ <-> ssub * Junicode-TLF/sbsx/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{boldexpanded}{sl}{
- <-> ssub * Junicode-TLF/boldexpanded/it
+\DeclareFontShape{T1}{Junicode-TLF}{semiboldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/semiboldsemiexpanded/scit
}{}
-% ---- l = light ----
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{T1}{Junicode-TLF}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{light}{it}{
- <-> alias * Junicode-TLF/l/it
+\DeclareFontShape{T1}{Junicode-TLF}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-TLF/bsx/n
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{l}{scit}{
- <-> \Junicode@@scale Junicode-LightItalic-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{bsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{light}{scit}{
- <-> alias * Junicode-TLF/l/scit
+\DeclareFontShape{T1}{Junicode-TLF}{boldsemiexpanded}{scit}{
+ <-> alias * Junicode-TLF/bsx/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{light}{n}{
- <-> alias * Junicode-TLF/l/n
+\DeclareFontShape{T1}{Junicode-TLF}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-TLF/bsx/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{l}{sc}{
- <-> \Junicode@@scale Junicode-Light-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{bsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpBold-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{light}{sc}{
- <-> alias * Junicode-TLF/l/sc
+\DeclareFontShape{T1}{Junicode-TLF}{boldsemiexpanded}{sc}{
+ <-> alias * Junicode-TLF/bsx/sc
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{l}{scsl}{
- <-> ssub * Junicode-TLF/l/scit
+\DeclareFontShape{T1}{Junicode-TLF}{bsx}{sl}{
+ <-> ssub * Junicode-TLF/bsx/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{light}{scsl}{
- <-> ssub * Junicode-TLF/light/scit
+\DeclareFontShape{T1}{Junicode-TLF}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-TLF/boldsemiexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{l}{sl}{
- <-> ssub * Junicode-TLF/l/it
+\DeclareFontShape{T1}{Junicode-TLF}{bsx}{scsl}{
+ <-> ssub * Junicode-TLF/bsx/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{light}{sl}{
- <-> ssub * Junicode-TLF/light/it
+\DeclareFontShape{T1}{Junicode-TLF}{boldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/boldsemiexpanded/scit
}{}
-% ---- medium ----
+% ---- sc = semicondensed ----
-\DeclareFontShape{T1}{Junicode-TLF}{medium}{sc}{
- <-> \Junicode@@scale Junicode-Medium-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{medium}{n}{
- <-> \Junicode@@scale Junicode-Medium-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{semicondensed}{n}{
+ <-> alias * Junicode-TLF/sc/n
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{medium}{scit}{
- <-> \Junicode@@scale Junicode-MediumItalic-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{semicondensed}{scit}{
+ <-> alias * Junicode-TLF/sc/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{medium}{scsl}{
- <-> ssub * Junicode-TLF/medium/scit
+\DeclareFontShape{T1}{Junicode-TLF}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{medium}{sl}{
- <-> ssub * Junicode-TLF/medium/it
+\DeclareFontShape{T1}{Junicode-TLF}{semicondensed}{it}{
+ <-> alias * Junicode-TLF/sc/it
}{}
-
-% ---- lsc = lightsemicondensed ----
-
-\DeclareFontShape{T1}{Junicode-TLF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCond-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{lightsemicondensed}{it}{
- <-> alias * Junicode-TLF/lsc/it
+\DeclareFontShape{T1}{Junicode-TLF}{semicondensed}{sc}{
+ <-> alias * Junicode-TLF/sc/sc
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{lsc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sc}{sl}{
+ <-> ssub * Junicode-TLF/sc/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{lightsemicondensed}{scit}{
- <-> alias * Junicode-TLF/lsc/scit
+\DeclareFontShape{T1}{Junicode-TLF}{semicondensed}{sl}{
+ <-> ssub * Junicode-TLF/semicondensed/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sc}{scsl}{
+ <-> ssub * Junicode-TLF/sc/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{lightsemicondensed}{n}{
- <-> alias * Junicode-TLF/lsc/n
+\DeclareFontShape{T1}{Junicode-TLF}{semicondensed}{scsl}{
+ <-> ssub * Junicode-TLF/semicondensed/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{lsc}{sc}{
- <-> \Junicode@@scale Junicode-SmCondLight-tlf-sc-t1
+
+% ---- mediumcondensed ----
+
+\DeclareFontShape{T1}{Junicode-TLF}{mediumcondensed}{sc}{
+ <-> \Junicode@@scale Junicode-CondMedium-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{lightsemicondensed}{sc}{
- <-> alias * Junicode-TLF/lsc/sc
+\DeclareFontShape{T1}{Junicode-TLF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{lsc}{scsl}{
- <-> ssub * Junicode-TLF/lsc/scit
+\DeclareFontShape{T1}{Junicode-TLF}{mediumcondensed}{scit}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{lightsemicondensed}{scsl}{
- <-> ssub * Junicode-TLF/lightsemicondensed/scit
+\DeclareFontShape{T1}{Junicode-TLF}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{lsc}{sl}{
- <-> ssub * Junicode-TLF/lsc/it
+\DeclareFontShape{T1}{Junicode-TLF}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-TLF/mediumcondensed/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-TLF/lightsemicondensed/it
+\DeclareFontShape{T1}{Junicode-TLF}{mediumcondensed}{scsl}{
+ <-> ssub * Junicode-TLF/mediumcondensed/scit
}{}
-% ---- m = regular ----
+% ---- sb = semibold ----
-\DeclareFontShape{T1}{Junicode-TLF}{m}{sc}{
- <-> \Junicode@@scale Junicode-Regular-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sb}{sc}{
+ <-> \Junicode@@scale Junicode-SmBold-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{regular}{sc}{
- <-> alias * Junicode-TLF/m/sc
+\DeclareFontShape{T1}{Junicode-TLF}{semibold}{sc}{
+ <-> alias * Junicode-TLF/sb/sc
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{regular}{n}{
- <-> alias * Junicode-TLF/m/n
+\DeclareFontShape{T1}{Junicode-TLF}{semibold}{n}{
+ <-> alias * Junicode-TLF/sb/n
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{m}{scit}{
- <-> \Junicode@@scale Junicode-Italic-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sb}{scit}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{regular}{scit}{
- <-> alias * Junicode-TLF/m/scit
+\DeclareFontShape{T1}{Junicode-TLF}{semibold}{scit}{
+ <-> alias * Junicode-TLF/sb/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{regular}{it}{
- <-> alias * Junicode-TLF/m/it
+\DeclareFontShape{T1}{Junicode-TLF}{semibold}{it}{
+ <-> alias * Junicode-TLF/sb/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{m}{scsl}{
- <-> ssub * Junicode-TLF/m/scit
+\DeclareFontShape{T1}{Junicode-TLF}{sb}{sl}{
+ <-> ssub * Junicode-TLF/sb/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{regular}{scsl}{
- <-> ssub * Junicode-TLF/regular/scit
+\DeclareFontShape{T1}{Junicode-TLF}{semibold}{sl}{
+ <-> ssub * Junicode-TLF/semibold/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{m}{sl}{
- <-> ssub * Junicode-TLF/m/it
+\DeclareFontShape{T1}{Junicode-TLF}{sb}{scsl}{
+ <-> ssub * Junicode-TLF/sb/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{regular}{sl}{
- <-> ssub * Junicode-TLF/regular/it
+\DeclareFontShape{T1}{Junicode-TLF}{semibold}{scsl}{
+ <-> ssub * Junicode-TLF/semibold/scit
}{}
-% ---- x = expanded ----
+% ---- sbx = semiboldexpanded ----
-\DeclareFontShape{T1}{Junicode-TLF}{x}{scit}{
- <-> \Junicode@@scale Junicode-ExpItalic-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{expanded}{scit}{
- <-> alias * Junicode-TLF/x/scit
+\DeclareFontShape{T1}{Junicode-TLF}{semiboldexpanded}{it}{
+ <-> alias * Junicode-TLF/sbx/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sbx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{expanded}{it}{
- <-> alias * Junicode-TLF/x/it
+\DeclareFontShape{T1}{Junicode-TLF}{semiboldexpanded}{scit}{
+ <-> alias * Junicode-TLF/sbx/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{x}{sc}{
- <-> \Junicode@@scale Junicode-Exp-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{expanded}{sc}{
- <-> alias * Junicode-TLF/x/sc
+\DeclareFontShape{T1}{Junicode-TLF}{semiboldexpanded}{n}{
+ <-> alias * Junicode-TLF/sbx/n
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{sbx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{expanded}{n}{
- <-> alias * Junicode-TLF/x/n
+\DeclareFontShape{T1}{Junicode-TLF}{semiboldexpanded}{sc}{
+ <-> alias * Junicode-TLF/sbx/sc
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{x}{scsl}{
- <-> ssub * Junicode-TLF/x/scit
+\DeclareFontShape{T1}{Junicode-TLF}{sbx}{sl}{
+ <-> ssub * Junicode-TLF/sbx/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{expanded}{scsl}{
- <-> ssub * Junicode-TLF/expanded/scit
+\DeclareFontShape{T1}{Junicode-TLF}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-TLF/semiboldexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{x}{sl}{
- <-> ssub * Junicode-TLF/x/it
+\DeclareFontShape{T1}{Junicode-TLF}{sbx}{scsl}{
+ <-> ssub * Junicode-TLF/sbx/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{expanded}{sl}{
- <-> ssub * Junicode-TLF/expanded/it
+\DeclareFontShape{T1}{Junicode-TLF}{semiboldexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/semiboldexpanded/scit
}{}
% ---- c = condensed ----
-\DeclareFontShape{T1}{Junicode-TLF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{c}{sc}{
+ <-> \Junicode@@scale Junicode-Cond-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{condensed}{it}{
- <-> alias * Junicode-TLF/c/it
+\DeclareFontShape{T1}{Junicode-TLF}{condensed}{sc}{
+ <-> alias * Junicode-TLF/c/sc
}{}
\DeclareFontShape{T1}{Junicode-TLF}{c}{scit}{
@@ -688,12 +664,20 @@
<-> alias * Junicode-TLF/c/n
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{c}{sc}{
- <-> \Junicode@@scale Junicode-Cond-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{condensed}{sc}{
- <-> alias * Junicode-TLF/c/sc
+\DeclareFontShape{T1}{Junicode-TLF}{condensed}{it}{
+ <-> alias * Junicode-TLF/c/it
+}{}
+
+\DeclareFontShape{T1}{Junicode-TLF}{c}{sl}{
+ <-> ssub * Junicode-TLF/c/it
+}{}
+
+\DeclareFontShape{T1}{Junicode-TLF}{condensed}{sl}{
+ <-> ssub * Junicode-TLF/condensed/it
}{}
\DeclareFontShape{T1}{Junicode-TLF}{c}{scsl}{
@@ -704,168 +688,184 @@
<-> ssub * Junicode-TLF/condensed/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{c}{sl}{
- <-> ssub * Junicode-TLF/c/it
-}{}
-\DeclareFontShape{T1}{Junicode-TLF}{condensed}{sl}{
- <-> ssub * Junicode-TLF/condensed/it
-}{}
+% ---- mediumexpanded ----
+\DeclareFontShape{T1}{Junicode-TLF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-tlf-t1
+}{}
-% ---- sx = semiexpanded ----
+\DeclareFontShape{T1}{Junicode-TLF}{mediumexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-tlf-sc-t1
+}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sx}{sc}{
- <-> \Junicode@@scale Junicode-SmExp-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semiexpanded}{sc}{
- <-> alias * Junicode-TLF/sx/sc
+\DeclareFontShape{T1}{Junicode-TLF}{mediumexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-ExpMedium-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-TLF/mediumexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semiexpanded}{n}{
- <-> alias * Junicode-TLF/sx/n
+\DeclareFontShape{T1}{Junicode-TLF}{mediumexpanded}{scsl}{
+ <-> ssub * Junicode-TLF/mediumexpanded/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpItalic-tlf-sc-t1
+
+% ---- lsc = lightsemicondensed ----
+
+\DeclareFontShape{T1}{Junicode-TLF}{lsc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semiexpanded}{scit}{
- <-> alias * Junicode-TLF/sx/scit
+\DeclareFontShape{T1}{Junicode-TLF}{lightsemicondensed}{scit}{
+ <-> alias * Junicode-TLF/lsc/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semiexpanded}{it}{
- <-> alias * Junicode-TLF/sx/it
+\DeclareFontShape{T1}{Junicode-TLF}{lightsemicondensed}{n}{
+ <-> alias * Junicode-TLF/lsc/n
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sx}{scsl}{
- <-> ssub * Junicode-TLF/sx/scit
+\DeclareFontShape{T1}{Junicode-TLF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semiexpanded}{scsl}{
- <-> ssub * Junicode-TLF/semiexpanded/scit
+\DeclareFontShape{T1}{Junicode-TLF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-TLF/lsc/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sx}{sl}{
- <-> ssub * Junicode-TLF/sx/it
+\DeclareFontShape{T1}{Junicode-TLF}{lsc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondLight-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semiexpanded}{sl}{
- <-> ssub * Junicode-TLF/semiexpanded/it
+\DeclareFontShape{T1}{Junicode-TLF}{lightsemicondensed}{sc}{
+ <-> alias * Junicode-TLF/lsc/sc
}{}
+\DeclareFontShape{T1}{Junicode-TLF}{lsc}{sl}{
+ <-> ssub * Junicode-TLF/lsc/it
+}{}
-% ---- mediumsemiexpanded ----
+\DeclareFontShape{T1}{Junicode-TLF}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-TLF/lightsemicondensed/it
+}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{lsc}{scsl}{
+ <-> ssub * Junicode-TLF/lsc/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumsemiexpanded}{sc}{
- <-> \Junicode@@scale Junicode-SmExpMedium-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{lightsemicondensed}{scsl}{
+ <-> ssub * Junicode-TLF/lightsemicondensed/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-tlf-t1
+
+% ---- b = bold ----
+
+\DeclareFontShape{T1}{Junicode-TLF}{b}{scit}{
+ <-> \Junicode@@scale Junicode-BoldItalic-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumsemiexpanded}{scit}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{bold}{scit}{
+ <-> alias * Junicode-TLF/b/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumsemiexpanded}{scsl}{
- <-> ssub * Junicode-TLF/mediumsemiexpanded/scit
+\DeclareFontShape{T1}{Junicode-TLF}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-TLF/mediumsemiexpanded/it
+\DeclareFontShape{T1}{Junicode-TLF}{bold}{n}{
+ <-> alias * Junicode-TLF/b/n
}{}
+\DeclareFontShape{T1}{Junicode-TLF}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-tlf-t1
+}{}
-% ---- mediumexpanded ----
+\DeclareFontShape{T1}{Junicode-TLF}{bold}{it}{
+ <-> alias * Junicode-TLF/b/it
+}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{b}{sc}{
+ <-> \Junicode@@scale Junicode-Bold-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumexpanded}{sc}{
- <-> \Junicode@@scale Junicode-ExpMedium-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{bold}{sc}{
+ <-> alias * Junicode-TLF/b/sc
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{b}{sl}{
+ <-> ssub * Junicode-TLF/b/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumexpanded}{scit}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{bold}{sl}{
+ <-> ssub * Junicode-TLF/bold/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumexpanded}{scsl}{
- <-> ssub * Junicode-TLF/mediumexpanded/scit
+\DeclareFontShape{T1}{Junicode-TLF}{b}{scsl}{
+ <-> ssub * Junicode-TLF/b/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-TLF/mediumexpanded/it
+\DeclareFontShape{T1}{Junicode-TLF}{bold}{scsl}{
+ <-> ssub * Junicode-TLF/bold/scit
}{}
-% ---- sbsx = semiboldsemiexpanded ----
+% ---- x = expanded ----
-\DeclareFontShape{T1}{Junicode-TLF}{sbsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{x}{scit}{
+ <-> \Junicode@@scale Junicode-ExpItalic-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semiboldsemiexpanded}{scit}{
- <-> alias * Junicode-TLF/sbsx/scit
+\DeclareFontShape{T1}{Junicode-TLF}{expanded}{scit}{
+ <-> alias * Junicode-TLF/x/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-TLF/sbsx/it
+\DeclareFontShape{T1}{Junicode-TLF}{expanded}{n}{
+ <-> alias * Junicode-TLF/x/n
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sbsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-tlf-sc-t1
+\DeclareFontShape{T1}{Junicode-TLF}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-tlf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semiboldsemiexpanded}{sc}{
- <-> alias * Junicode-TLF/sbsx/sc
+\DeclareFontShape{T1}{Junicode-TLF}{expanded}{it}{
+ <-> alias * Junicode-TLF/x/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-tlf-t1
+\DeclareFontShape{T1}{Junicode-TLF}{x}{sc}{
+ <-> \Junicode@@scale Junicode-Exp-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-TLF/sbsx/n
+\DeclareFontShape{T1}{Junicode-TLF}{expanded}{sc}{
+ <-> alias * Junicode-TLF/x/sc
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sbsx}{scsl}{
- <-> ssub * Junicode-TLF/sbsx/scit
+\DeclareFontShape{T1}{Junicode-TLF}{x}{sl}{
+ <-> ssub * Junicode-TLF/x/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semiboldsemiexpanded}{scsl}{
- <-> ssub * Junicode-TLF/semiboldsemiexpanded/scit
+\DeclareFontShape{T1}{Junicode-TLF}{expanded}{sl}{
+ <-> ssub * Junicode-TLF/expanded/it
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{sbsx}{sl}{
- <-> ssub * Junicode-TLF/sbsx/it
+\DeclareFontShape{T1}{Junicode-TLF}{x}{scsl}{
+ <-> ssub * Junicode-TLF/x/scit
}{}
-\DeclareFontShape{T1}{Junicode-TLF}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-TLF/semiboldsemiexpanded/it
+\DeclareFontShape{T1}{Junicode-TLF}{expanded}{scsl}{
+ <-> ssub * Junicode-TLF/expanded/scit
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/T1Junicode-TOsF.fd b/Master/texmf-dist/tex/latex/junicode/T1Junicode-TOsF.fd
index a2fcfe44b24..18e9f6fd8bd 100644
--- a/Master/texmf-dist/tex/latex/junicode/T1Junicode-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/T1Junicode-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{T1Junicode-TOsF.fd}
- [2024/06/03 (autoinst) Font definitions for T1/Junicode-TOsF.]
+ [2024/07/21 (autoinst) Font definitions for T1/Junicode-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,852 +20,852 @@
\DeclareFontFamily{T1}{Junicode-TOsF}{}
-% ---- lsc = lightsemicondensed ----
+% ---- mediumcondensed ----
-\DeclareFontShape{T1}{Junicode-TOsF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumcondensed}{sc}{
+ <-> \Junicode@@scale Junicode-CondMedium-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lightsemicondensed}{it}{
- <-> alias * Junicode-TOsF/lsc/it
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumcondensed}{scit}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lsc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lightsemicondensed}{scit}{
- <-> alias * Junicode-TOsF/lsc/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-TOsF/mediumcondensed/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lightsemicondensed}{n}{
- <-> alias * Junicode-TOsF/lsc/n
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumcondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/mediumcondensed/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lsc}{sc}{
- <-> \Junicode@@scale Junicode-SmCondLight-tosf-sc-t1
-}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lightsemicondensed}{sc}{
- <-> alias * Junicode-TOsF/lsc/sc
-}{}
+% ---- sb = semibold ----
-\DeclareFontShape{T1}{Junicode-TOsF}{lsc}{scsl}{
- <-> ssub * Junicode-TOsF/lsc/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{sb}{sc}{
+ <-> \Junicode@@scale Junicode-SmBold-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lightsemicondensed}{scsl}{
- <-> ssub * Junicode-TOsF/lightsemicondensed/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{semibold}{sc}{
+ <-> alias * Junicode-TOsF/sb/sc
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lsc}{sl}{
- <-> ssub * Junicode-TOsF/lsc/it
+\DeclareFontShape{T1}{Junicode-TOsF}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-TOsF/lightsemicondensed/it
+\DeclareFontShape{T1}{Junicode-TOsF}{semibold}{it}{
+ <-> alias * Junicode-TOsF/sb/it
}{}
+\DeclareFontShape{T1}{Junicode-TOsF}{sb}{scit}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-tosf-sc-t1
+}{}
-% ---- medium ----
+\DeclareFontShape{T1}{Junicode-TOsF}{semibold}{scit}{
+ <-> alias * Junicode-TOsF/sb/scit
+}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{medium}{scit}{
- <-> \Junicode@@scale Junicode-MediumItalic-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{semibold}{n}{
+ <-> alias * Junicode-TOsF/sb/n
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{medium}{n}{
- <-> \Junicode@@scale Junicode-Medium-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{sb}{sl}{
+ <-> ssub * Junicode-TOsF/sb/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{medium}{sc}{
- <-> \Junicode@@scale Junicode-Medium-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{semibold}{sl}{
+ <-> ssub * Junicode-TOsF/semibold/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{medium}{scsl}{
- <-> ssub * Junicode-TOsF/medium/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{sb}{scsl}{
+ <-> ssub * Junicode-TOsF/sb/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{medium}{sl}{
- <-> ssub * Junicode-TOsF/medium/it
+\DeclareFontShape{T1}{Junicode-TOsF}{semibold}{scsl}{
+ <-> ssub * Junicode-TOsF/semibold/scit
}{}
-% ---- m = regular ----
+% ---- sc = semicondensed ----
-\DeclareFontShape{T1}{Junicode-TOsF}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{regular}{it}{
- <-> alias * Junicode-TOsF/m/it
+\DeclareFontShape{T1}{Junicode-TOsF}{semicondensed}{it}{
+ <-> alias * Junicode-TOsF/sc/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{m}{scit}{
- <-> \Junicode@@scale Junicode-Italic-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{regular}{scit}{
- <-> alias * Junicode-TOsF/m/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{semicondensed}{n}{
+ <-> alias * Junicode-TOsF/sc/n
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{sc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{regular}{n}{
- <-> alias * Junicode-TOsF/m/n
+\DeclareFontShape{T1}{Junicode-TOsF}{semicondensed}{scit}{
+ <-> alias * Junicode-TOsF/sc/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{m}{sc}{
- <-> \Junicode@@scale Junicode-Regular-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{sc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCond-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{regular}{sc}{
- <-> alias * Junicode-TOsF/m/sc
+\DeclareFontShape{T1}{Junicode-TOsF}{semicondensed}{sc}{
+ <-> alias * Junicode-TOsF/sc/sc
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{m}{scsl}{
- <-> ssub * Junicode-TOsF/m/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{sc}{sl}{
+ <-> ssub * Junicode-TOsF/sc/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{regular}{scsl}{
- <-> ssub * Junicode-TOsF/regular/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{semicondensed}{sl}{
+ <-> ssub * Junicode-TOsF/semicondensed/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{m}{sl}{
- <-> ssub * Junicode-TOsF/m/it
+\DeclareFontShape{T1}{Junicode-TOsF}{sc}{scsl}{
+ <-> ssub * Junicode-TOsF/sc/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{regular}{sl}{
- <-> ssub * Junicode-TOsF/regular/it
+\DeclareFontShape{T1}{Junicode-TOsF}{semicondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/semicondensed/scit
}{}
-% ---- bx = boldexpanded ----
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{T1}{Junicode-TOsF}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{bsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpBold-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{boldexpanded}{n}{
- <-> alias * Junicode-TOsF/bx/n
+\DeclareFontShape{T1}{Junicode-TOsF}{boldsemiexpanded}{sc}{
+ <-> alias * Junicode-TOsF/bsx/sc
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{bx}{sc}{
- <-> \Junicode@@scale Junicode-ExpBold-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{bsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{boldexpanded}{sc}{
- <-> alias * Junicode-TOsF/bx/sc
+\DeclareFontShape{T1}{Junicode-TOsF}{boldsemiexpanded}{scit}{
+ <-> alias * Junicode-TOsF/bsx/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{boldexpanded}{it}{
- <-> alias * Junicode-TOsF/bx/it
+\DeclareFontShape{T1}{Junicode-TOsF}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-TOsF/bsx/n
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{bx}{scit}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{boldexpanded}{scit}{
- <-> alias * Junicode-TOsF/bx/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-TOsF/bsx/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{bx}{scsl}{
- <-> ssub * Junicode-TOsF/bx/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{bsx}{sl}{
+ <-> ssub * Junicode-TOsF/bsx/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{boldexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/boldexpanded/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/boldsemiexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{bx}{sl}{
- <-> ssub * Junicode-TOsF/bx/it
+\DeclareFontShape{T1}{Junicode-TOsF}{bsx}{scsl}{
+ <-> ssub * Junicode-TOsF/bsx/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{boldexpanded}{sl}{
- <-> ssub * Junicode-TOsF/boldexpanded/it
+\DeclareFontShape{T1}{Junicode-TOsF}{boldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/boldsemiexpanded/scit
}{}
-% ---- l = light ----
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{T1}{Junicode-TOsF}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{sbsx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{light}{n}{
- <-> alias * Junicode-TOsF/l/n
+\DeclareFontShape{T1}{Junicode-TOsF}{semiboldsemiexpanded}{sc}{
+ <-> alias * Junicode-TOsF/sbsx/sc
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{l}{sc}{
- <-> \Junicode@@scale Junicode-Light-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{light}{sc}{
- <-> alias * Junicode-TOsF/l/sc
+\DeclareFontShape{T1}{Junicode-TOsF}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-TOsF/sbsx/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{light}{it}{
- <-> alias * Junicode-TOsF/l/it
+\DeclareFontShape{T1}{Junicode-TOsF}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-TOsF/sbsx/n
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{l}{scit}{
- <-> \Junicode@@scale Junicode-LightItalic-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{sbsx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{light}{scit}{
- <-> alias * Junicode-TOsF/l/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{semiboldsemiexpanded}{scit}{
+ <-> alias * Junicode-TOsF/sbsx/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{l}{scsl}{
- <-> ssub * Junicode-TOsF/l/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{sbsx}{sl}{
+ <-> ssub * Junicode-TOsF/sbsx/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{light}{scsl}{
- <-> ssub * Junicode-TOsF/light/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/semiboldsemiexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{l}{sl}{
- <-> ssub * Junicode-TOsF/l/it
+\DeclareFontShape{T1}{Junicode-TOsF}{sbsx}{scsl}{
+ <-> ssub * Junicode-TOsF/sbsx/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{light}{sl}{
- <-> ssub * Junicode-TOsF/light/it
+\DeclareFontShape{T1}{Junicode-TOsF}{semiboldsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/semiboldsemiexpanded/scit
}{}
-% ---- mediumsemiexpanded ----
+% ---- medium ----
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{medium}{sc}{
+ <-> \Junicode@@scale Junicode-Medium-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemiexpanded}{scit}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{medium}{n}{
+ <-> \Junicode@@scale Junicode-Medium-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemiexpanded}{sc}{
- <-> \Junicode@@scale Junicode-SmExpMedium-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{medium}{scit}{
+ <-> \Junicode@@scale Junicode-MediumItalic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemiexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/mediumsemiexpanded/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{medium}{sl}{
+ <-> ssub * Junicode-TOsF/medium/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-TOsF/mediumsemiexpanded/it
+\DeclareFontShape{T1}{Junicode-TOsF}{medium}{scsl}{
+ <-> ssub * Junicode-TOsF/medium/scit
}{}
-% ---- sbsx = semiboldsemiexpanded ----
+% ---- bx = boldexpanded ----
-\DeclareFontShape{T1}{Junicode-TOsF}{sbsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{bx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpBold-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semiboldsemiexpanded}{sc}{
- <-> alias * Junicode-TOsF/sbsx/sc
+\DeclareFontShape{T1}{Junicode-TOsF}{boldexpanded}{sc}{
+ <-> alias * Junicode-TOsF/bx/sc
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{bx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-TOsF/sbsx/n
+\DeclareFontShape{T1}{Junicode-TOsF}{boldexpanded}{scit}{
+ <-> alias * Junicode-TOsF/bx/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sbsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semiboldsemiexpanded}{scit}{
- <-> alias * Junicode-TOsF/sbsx/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{boldexpanded}{n}{
+ <-> alias * Junicode-TOsF/bx/n
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-TOsF/sbsx/it
+\DeclareFontShape{T1}{Junicode-TOsF}{boldexpanded}{it}{
+ <-> alias * Junicode-TOsF/bx/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sbsx}{scsl}{
- <-> ssub * Junicode-TOsF/sbsx/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{bx}{sl}{
+ <-> ssub * Junicode-TOsF/bx/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semiboldsemiexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/semiboldsemiexpanded/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{boldexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/boldexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sbsx}{sl}{
- <-> ssub * Junicode-TOsF/sbsx/it
+\DeclareFontShape{T1}{Junicode-TOsF}{bx}{scsl}{
+ <-> ssub * Junicode-TOsF/bx/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-TOsF/semiboldsemiexpanded/it
+\DeclareFontShape{T1}{Junicode-TOsF}{boldexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/boldexpanded/scit
}{}
-% ---- mediumexpanded ----
+% ---- m = regular ----
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{m}{sc}{
+ <-> \Junicode@@scale Junicode-Regular-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumexpanded}{scit}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{regular}{sc}{
+ <-> alias * Junicode-TOsF/m/sc
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumexpanded}{sc}{
- <-> \Junicode@@scale Junicode-ExpMedium-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{regular}{it}{
+ <-> alias * Junicode-TOsF/m/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/mediumexpanded/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-TOsF/mediumexpanded/it
+\DeclareFontShape{T1}{Junicode-TOsF}{regular}{n}{
+ <-> alias * Junicode-TOsF/m/n
}{}
-
-% ---- sx = semiexpanded ----
-
-\DeclareFontShape{T1}{Junicode-TOsF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{m}{scit}{
+ <-> \Junicode@@scale Junicode-Italic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semiexpanded}{n}{
- <-> alias * Junicode-TOsF/sx/n
+\DeclareFontShape{T1}{Junicode-TOsF}{regular}{scit}{
+ <-> alias * Junicode-TOsF/m/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sx}{sc}{
- <-> \Junicode@@scale Junicode-SmExp-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{m}{sl}{
+ <-> ssub * Junicode-TOsF/m/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semiexpanded}{sc}{
- <-> alias * Junicode-TOsF/sx/sc
+\DeclareFontShape{T1}{Junicode-TOsF}{regular}{sl}{
+ <-> ssub * Junicode-TOsF/regular/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{m}{scsl}{
+ <-> ssub * Junicode-TOsF/m/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semiexpanded}{it}{
- <-> alias * Junicode-TOsF/sx/it
+\DeclareFontShape{T1}{Junicode-TOsF}{regular}{scsl}{
+ <-> ssub * Junicode-TOsF/regular/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpItalic-tosf-sc-t1
-}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semiexpanded}{scit}{
- <-> alias * Junicode-TOsF/sx/scit
-}{}
+% ---- mediumsemiexpanded ----
-\DeclareFontShape{T1}{Junicode-TOsF}{sx}{scsl}{
- <-> ssub * Junicode-TOsF/sx/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semiexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/semiexpanded/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sx}{sl}{
- <-> ssub * Junicode-TOsF/sx/it
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemiexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semiexpanded}{sl}{
- <-> ssub * Junicode-TOsF/semiexpanded/it
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemiexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-tosf-sc-t1
}{}
-
-% ---- x = expanded ----
-
-\DeclareFontShape{T1}{Junicode-TOsF}{x}{scit}{
- <-> \Junicode@@scale Junicode-ExpItalic-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/mediumsemiexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{expanded}{scit}{
- <-> alias * Junicode-TOsF/x/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemiexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/mediumsemiexpanded/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-tosf-t1
-}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{expanded}{it}{
- <-> alias * Junicode-TOsF/x/it
-}{}
+% ---- lc = lightcondensed ----
-\DeclareFontShape{T1}{Junicode-TOsF}{x}{sc}{
- <-> \Junicode@@scale Junicode-Exp-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{expanded}{sc}{
- <-> alias * Junicode-TOsF/x/sc
+\DeclareFontShape{T1}{Junicode-TOsF}{lightcondensed}{it}{
+ <-> alias * Junicode-TOsF/lc/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{lc}{scit}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{expanded}{n}{
- <-> alias * Junicode-TOsF/x/n
+\DeclareFontShape{T1}{Junicode-TOsF}{lightcondensed}{scit}{
+ <-> alias * Junicode-TOsF/lc/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{x}{scsl}{
- <-> ssub * Junicode-TOsF/x/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{expanded}{scsl}{
- <-> ssub * Junicode-TOsF/expanded/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{lightcondensed}{n}{
+ <-> alias * Junicode-TOsF/lc/n
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{x}{sl}{
- <-> ssub * Junicode-TOsF/x/it
+\DeclareFontShape{T1}{Junicode-TOsF}{lc}{sc}{
+ <-> \Junicode@@scale Junicode-CondLight-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{expanded}{sl}{
- <-> ssub * Junicode-TOsF/expanded/it
+\DeclareFontShape{T1}{Junicode-TOsF}{lightcondensed}{sc}{
+ <-> alias * Junicode-TOsF/lc/sc
}{}
-
-% ---- c = condensed ----
-
-\DeclareFontShape{T1}{Junicode-TOsF}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{lc}{sl}{
+ <-> ssub * Junicode-TOsF/lc/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{condensed}{n}{
- <-> alias * Junicode-TOsF/c/n
+\DeclareFontShape{T1}{Junicode-TOsF}{lightcondensed}{sl}{
+ <-> ssub * Junicode-TOsF/lightcondensed/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{c}{sc}{
- <-> \Junicode@@scale Junicode-Cond-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{lc}{scsl}{
+ <-> ssub * Junicode-TOsF/lc/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{condensed}{sc}{
- <-> alias * Junicode-TOsF/c/sc
+\DeclareFontShape{T1}{Junicode-TOsF}{lightcondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/lightcondensed/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-tosf-t1
-}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{condensed}{it}{
- <-> alias * Junicode-TOsF/c/it
-}{}
+% ---- mediumsemicondensed ----
-\DeclareFontShape{T1}{Junicode-TOsF}{c}{scit}{
- <-> \Junicode@@scale Junicode-CondItalic-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemicondensed}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{condensed}{scit}{
- <-> alias * Junicode-TOsF/c/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{c}{scsl}{
- <-> ssub * Junicode-TOsF/c/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{condensed}{scsl}{
- <-> ssub * Junicode-TOsF/condensed/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemicondensed}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{c}{sl}{
- <-> ssub * Junicode-TOsF/c/it
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-TOsF/mediumsemicondensed/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{condensed}{sl}{
- <-> ssub * Junicode-TOsF/condensed/it
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemicondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/mediumsemicondensed/scit
}{}
-% ---- sc = semicondensed ----
+% ---- l = light ----
-\DeclareFontShape{T1}{Junicode-TOsF}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semicondensed}{n}{
- <-> alias * Junicode-TOsF/sc/n
+\DeclareFontShape{T1}{Junicode-TOsF}{light}{n}{
+ <-> alias * Junicode-TOsF/l/n
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sc}{sc}{
- <-> \Junicode@@scale Junicode-SmCond-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{l}{scit}{
+ <-> \Junicode@@scale Junicode-LightItalic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semicondensed}{sc}{
- <-> alias * Junicode-TOsF/sc/sc
+\DeclareFontShape{T1}{Junicode-TOsF}{light}{scit}{
+ <-> alias * Junicode-TOsF/l/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semicondensed}{it}{
- <-> alias * Junicode-TOsF/sc/it
+\DeclareFontShape{T1}{Junicode-TOsF}{light}{it}{
+ <-> alias * Junicode-TOsF/l/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sc}{scit}{
- <-> \Junicode@@scale Junicode-SmCondItalic-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{l}{sc}{
+ <-> \Junicode@@scale Junicode-Light-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semicondensed}{scit}{
- <-> alias * Junicode-TOsF/sc/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{light}{sc}{
+ <-> alias * Junicode-TOsF/l/sc
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sc}{scsl}{
- <-> ssub * Junicode-TOsF/sc/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{l}{sl}{
+ <-> ssub * Junicode-TOsF/l/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semicondensed}{scsl}{
- <-> ssub * Junicode-TOsF/semicondensed/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{light}{sl}{
+ <-> ssub * Junicode-TOsF/light/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sc}{sl}{
- <-> ssub * Junicode-TOsF/sc/it
+\DeclareFontShape{T1}{Junicode-TOsF}{l}{scsl}{
+ <-> ssub * Junicode-TOsF/l/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semicondensed}{sl}{
- <-> ssub * Junicode-TOsF/semicondensed/it
+\DeclareFontShape{T1}{Junicode-TOsF}{light}{scsl}{
+ <-> ssub * Junicode-TOsF/light/scit
}{}
-% ---- sb = semibold ----
+% ---- sx = semiexpanded ----
-\DeclareFontShape{T1}{Junicode-TOsF}{sb}{scit}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semibold}{scit}{
- <-> alias * Junicode-TOsF/sb/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{semiexpanded}{it}{
+ <-> alias * Junicode-TOsF/sx/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semibold}{it}{
- <-> alias * Junicode-TOsF/sb/it
+\DeclareFontShape{T1}{Junicode-TOsF}{semiexpanded}{n}{
+ <-> alias * Junicode-TOsF/sx/n
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sb}{sc}{
- <-> \Junicode@@scale Junicode-SmBold-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{sx}{scit}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semibold}{sc}{
- <-> alias * Junicode-TOsF/sb/sc
+\DeclareFontShape{T1}{Junicode-TOsF}{semiexpanded}{scit}{
+ <-> alias * Junicode-TOsF/sx/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{sx}{sc}{
+ <-> \Junicode@@scale Junicode-SmExp-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semibold}{n}{
- <-> alias * Junicode-TOsF/sb/n
+\DeclareFontShape{T1}{Junicode-TOsF}{semiexpanded}{sc}{
+ <-> alias * Junicode-TOsF/sx/sc
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sb}{scsl}{
- <-> ssub * Junicode-TOsF/sb/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{sx}{sl}{
+ <-> ssub * Junicode-TOsF/sx/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semibold}{scsl}{
- <-> ssub * Junicode-TOsF/semibold/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/semiexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sb}{sl}{
- <-> ssub * Junicode-TOsF/sb/it
+\DeclareFontShape{T1}{Junicode-TOsF}{sx}{scsl}{
+ <-> ssub * Junicode-TOsF/sx/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semibold}{sl}{
- <-> ssub * Junicode-TOsF/semibold/it
+\DeclareFontShape{T1}{Junicode-TOsF}{semiexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/semiexpanded/scit
}{}
-% ---- bsx = boldsemiexpanded ----
+% ---- b = bold ----
-\DeclareFontShape{T1}{Junicode-TOsF}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{b}{sc}{
+ <-> \Junicode@@scale Junicode-Bold-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{boldsemiexpanded}{it}{
- <-> alias * Junicode-TOsF/bsx/it
+\DeclareFontShape{T1}{Junicode-TOsF}{bold}{sc}{
+ <-> alias * Junicode-TOsF/b/sc
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{bsx}{scit}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{b}{scit}{
+ <-> \Junicode@@scale Junicode-BoldItalic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{boldsemiexpanded}{scit}{
- <-> alias * Junicode-TOsF/bsx/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{bold}{scit}{
+ <-> alias * Junicode-TOsF/b/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{boldsemiexpanded}{n}{
- <-> alias * Junicode-TOsF/bsx/n
+\DeclareFontShape{T1}{Junicode-TOsF}{bold}{n}{
+ <-> alias * Junicode-TOsF/b/n
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{bsx}{sc}{
- <-> \Junicode@@scale Junicode-SmExpBold-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{boldsemiexpanded}{sc}{
- <-> alias * Junicode-TOsF/bsx/sc
+\DeclareFontShape{T1}{Junicode-TOsF}{bold}{it}{
+ <-> alias * Junicode-TOsF/b/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{bsx}{scsl}{
- <-> ssub * Junicode-TOsF/bsx/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{b}{sl}{
+ <-> ssub * Junicode-TOsF/b/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{boldsemiexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/boldsemiexpanded/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{bold}{sl}{
+ <-> ssub * Junicode-TOsF/bold/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{bsx}{sl}{
- <-> ssub * Junicode-TOsF/bsx/it
+\DeclareFontShape{T1}{Junicode-TOsF}{b}{scsl}{
+ <-> ssub * Junicode-TOsF/b/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-TOsF/boldsemiexpanded/it
+\DeclareFontShape{T1}{Junicode-TOsF}{bold}{scsl}{
+ <-> ssub * Junicode-TOsF/bold/scit
}{}
-% ---- lc = lightcondensed ----
+% ---- x = expanded ----
-\DeclareFontShape{T1}{Junicode-TOsF}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lightcondensed}{n}{
- <-> alias * Junicode-TOsF/lc/n
+\DeclareFontShape{T1}{Junicode-TOsF}{expanded}{it}{
+ <-> alias * Junicode-TOsF/x/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lc}{sc}{
- <-> \Junicode@@scale Junicode-CondLight-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lightcondensed}{sc}{
- <-> alias * Junicode-TOsF/lc/sc
+\DeclareFontShape{T1}{Junicode-TOsF}{expanded}{n}{
+ <-> alias * Junicode-TOsF/x/n
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{x}{scit}{
+ <-> \Junicode@@scale Junicode-ExpItalic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lightcondensed}{it}{
- <-> alias * Junicode-TOsF/lc/it
+\DeclareFontShape{T1}{Junicode-TOsF}{expanded}{scit}{
+ <-> alias * Junicode-TOsF/x/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lc}{scit}{
- <-> \Junicode@@scale Junicode-CondLightItalic-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{x}{sc}{
+ <-> \Junicode@@scale Junicode-Exp-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lightcondensed}{scit}{
- <-> alias * Junicode-TOsF/lc/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{expanded}{sc}{
+ <-> alias * Junicode-TOsF/x/sc
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lc}{scsl}{
- <-> ssub * Junicode-TOsF/lc/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{x}{sl}{
+ <-> ssub * Junicode-TOsF/x/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lightcondensed}{scsl}{
- <-> ssub * Junicode-TOsF/lightcondensed/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{expanded}{sl}{
+ <-> ssub * Junicode-TOsF/expanded/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lc}{sl}{
- <-> ssub * Junicode-TOsF/lc/it
+\DeclareFontShape{T1}{Junicode-TOsF}{x}{scsl}{
+ <-> ssub * Junicode-TOsF/x/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{lightcondensed}{sl}{
- <-> ssub * Junicode-TOsF/lightcondensed/it
+\DeclareFontShape{T1}{Junicode-TOsF}{expanded}{scsl}{
+ <-> ssub * Junicode-TOsF/expanded/scit
}{}
-% ---- sbx = semiboldexpanded ----
+% ---- lsc = lightsemicondensed ----
-\DeclareFontShape{T1}{Junicode-TOsF}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{lsc}{sc}{
+ <-> \Junicode@@scale Junicode-SmCondLight-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semiboldexpanded}{n}{
- <-> alias * Junicode-TOsF/sbx/n
+\DeclareFontShape{T1}{Junicode-TOsF}{lightsemicondensed}{sc}{
+ <-> alias * Junicode-TOsF/lsc/sc
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sbx}{sc}{
- <-> \Junicode@@scale Junicode-ExpSmBold-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semiboldexpanded}{sc}{
- <-> alias * Junicode-TOsF/sbx/sc
+\DeclareFontShape{T1}{Junicode-TOsF}{lightsemicondensed}{n}{
+ <-> alias * Junicode-TOsF/lsc/n
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{lsc}{scit}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semiboldexpanded}{it}{
- <-> alias * Junicode-TOsF/sbx/it
+\DeclareFontShape{T1}{Junicode-TOsF}{lightsemicondensed}{scit}{
+ <-> alias * Junicode-TOsF/lsc/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sbx}{scit}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semiboldexpanded}{scit}{
- <-> alias * Junicode-TOsF/sbx/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-TOsF/lsc/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sbx}{scsl}{
- <-> ssub * Junicode-TOsF/sbx/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{lsc}{sl}{
+ <-> ssub * Junicode-TOsF/lsc/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semiboldexpanded}{scsl}{
- <-> ssub * Junicode-TOsF/semiboldexpanded/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-TOsF/lightsemicondensed/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{sbx}{sl}{
- <-> ssub * Junicode-TOsF/sbx/it
+\DeclareFontShape{T1}{Junicode-TOsF}{lsc}{scsl}{
+ <-> ssub * Junicode-TOsF/lsc/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-TOsF/semiboldexpanded/it
+\DeclareFontShape{T1}{Junicode-TOsF}{lightsemicondensed}{scsl}{
+ <-> ssub * Junicode-TOsF/lightsemicondensed/scit
}{}
-% ---- mediumsemicondensed ----
+% ---- mediumexpanded ----
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemicondensed}{sc}{
- <-> \Junicode@@scale Junicode-SmCondMedium-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumexpanded}{scit}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemicondensed}{scit}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumexpanded}{sc}{
+ <-> \Junicode@@scale Junicode-ExpMedium-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemicondensed}{scsl}{
- <-> ssub * Junicode-TOsF/mediumsemicondensed/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/mediumexpanded/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-TOsF/mediumsemicondensed/it
+\DeclareFontShape{T1}{Junicode-TOsF}{mediumexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/mediumexpanded/scit
}{}
-% ---- mediumcondensed ----
+% ---- c = condensed ----
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumcondensed}{scit}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{condensed}{it}{
+ <-> alias * Junicode-TOsF/c/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{c}{scit}{
+ <-> \Junicode@@scale Junicode-CondItalic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumcondensed}{sc}{
- <-> \Junicode@@scale Junicode-CondMedium-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{condensed}{scit}{
+ <-> alias * Junicode-TOsF/c/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumcondensed}{scsl}{
- <-> ssub * Junicode-TOsF/mediumcondensed/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{mediumcondensed}{sl}{
- <-> ssub * Junicode-TOsF/mediumcondensed/it
+\DeclareFontShape{T1}{Junicode-TOsF}{condensed}{n}{
+ <-> alias * Junicode-TOsF/c/n
}{}
+\DeclareFontShape{T1}{Junicode-TOsF}{c}{sc}{
+ <-> \Junicode@@scale Junicode-Cond-tosf-sc-t1
+}{}
-% ---- b = bold ----
+\DeclareFontShape{T1}{Junicode-TOsF}{condensed}{sc}{
+ <-> alias * Junicode-TOsF/c/sc
+}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-tosf-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{c}{sl}{
+ <-> ssub * Junicode-TOsF/c/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{bold}{n}{
- <-> alias * Junicode-TOsF/b/n
+\DeclareFontShape{T1}{Junicode-TOsF}{condensed}{sl}{
+ <-> ssub * Junicode-TOsF/condensed/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{b}{sc}{
- <-> \Junicode@@scale Junicode-Bold-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{c}{scsl}{
+ <-> ssub * Junicode-TOsF/c/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{bold}{sc}{
- <-> alias * Junicode-TOsF/b/sc
+\DeclareFontShape{T1}{Junicode-TOsF}{condensed}{scsl}{
+ <-> ssub * Junicode-TOsF/condensed/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-tosf-t1
+
+% ---- sbx = semiboldexpanded ----
+
+\DeclareFontShape{T1}{Junicode-TOsF}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{bold}{it}{
- <-> alias * Junicode-TOsF/b/it
+\DeclareFontShape{T1}{Junicode-TOsF}{semiboldexpanded}{it}{
+ <-> alias * Junicode-TOsF/sbx/it
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{b}{scit}{
- <-> \Junicode@@scale Junicode-BoldItalic-tosf-sc-t1
+\DeclareFontShape{T1}{Junicode-TOsF}{sbx}{scit}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{bold}{scit}{
- <-> alias * Junicode-TOsF/b/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{semiboldexpanded}{scit}{
+ <-> alias * Junicode-TOsF/sbx/scit
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{b}{scsl}{
- <-> ssub * Junicode-TOsF/b/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-tosf-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{bold}{scsl}{
- <-> ssub * Junicode-TOsF/bold/scit
+\DeclareFontShape{T1}{Junicode-TOsF}{semiboldexpanded}{n}{
+ <-> alias * Junicode-TOsF/sbx/n
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{b}{sl}{
- <-> ssub * Junicode-TOsF/b/it
+\DeclareFontShape{T1}{Junicode-TOsF}{sbx}{sc}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{Junicode-TOsF}{bold}{sl}{
- <-> ssub * Junicode-TOsF/bold/it
+\DeclareFontShape{T1}{Junicode-TOsF}{semiboldexpanded}{sc}{
+ <-> alias * Junicode-TOsF/sbx/sc
+}{}
+
+\DeclareFontShape{T1}{Junicode-TOsF}{sbx}{sl}{
+ <-> ssub * Junicode-TOsF/sbx/it
+}{}
+
+\DeclareFontShape{T1}{Junicode-TOsF}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/semiboldexpanded/it
+}{}
+
+\DeclareFontShape{T1}{Junicode-TOsF}{sbx}{scsl}{
+ <-> ssub * Junicode-TOsF/sbx/scit
+}{}
+
+\DeclareFontShape{T1}{Junicode-TOsF}{semiboldexpanded}{scsl}{
+ <-> ssub * Junicode-TOsF/semiboldexpanded/scit
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/TS1Junicode-LF.fd b/Master/texmf-dist/tex/latex/junicode/TS1Junicode-LF.fd
index 1e3cb0a31c4..80b213adcbd 100644
--- a/Master/texmf-dist/tex/latex/junicode/TS1Junicode-LF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/TS1Junicode-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{TS1Junicode-LF.fd}
- [2024/06/03 (autoinst) Font definitions for TS1/Junicode-LF.]
+ [2024/07/21 (autoinst) Font definitions for TS1/Junicode-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,89 +20,70 @@
\DeclareFontFamily{TS1}{Junicode-LF}{}
-% ---- l = light ----
+% ---- sbx = semiboldexpanded ----
-\DeclareFontShape{TS1}{Junicode-LF}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{light}{n}{
- <-> alias * Junicode-LF/l/n
+\DeclareFontShape{TS1}{Junicode-LF}{semiboldexpanded}{it}{
+ <-> alias * Junicode-LF/sbx/it
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{light}{it}{
- <-> alias * Junicode-LF/l/it
+\DeclareFontShape{TS1}{Junicode-LF}{semiboldexpanded}{n}{
+ <-> alias * Junicode-LF/sbx/n
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{l}{sl}{
- <-> ssub * Junicode-LF/l/it
+\DeclareFontShape{TS1}{Junicode-LF}{sbx}{sl}{
+ <-> ssub * Junicode-LF/sbx/it
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{light}{sl}{
- <-> ssub * Junicode-LF/light/it
+\DeclareFontShape{TS1}{Junicode-LF}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-LF/semiboldexpanded/it
}{}
-% ---- bx = boldexpanded ----
-
-\DeclareFontShape{TS1}{Junicode-LF}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-lf-ts1
-}{}
-
-\DeclareFontShape{TS1}{Junicode-LF}{boldexpanded}{it}{
- <-> alias * Junicode-LF/bx/it
-}{}
+% ---- c = condensed ----
-\DeclareFontShape{TS1}{Junicode-LF}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{boldexpanded}{n}{
- <-> alias * Junicode-LF/bx/n
+\DeclareFontShape{TS1}{Junicode-LF}{condensed}{it}{
+ <-> alias * Junicode-LF/c/it
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{bx}{sl}{
- <-> ssub * Junicode-LF/bx/it
+\DeclareFontShape{TS1}{Junicode-LF}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{boldexpanded}{sl}{
- <-> ssub * Junicode-LF/boldexpanded/it
+\DeclareFontShape{TS1}{Junicode-LF}{condensed}{n}{
+ <-> alias * Junicode-LF/c/n
}{}
-
-% ---- m = regular ----
-
-\DeclareFontShape{TS1}{Junicode-LF}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{c}{sl}{
+ <-> ssub * Junicode-LF/c/it
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{regular}{it}{
- <-> alias * Junicode-LF/m/it
+\DeclareFontShape{TS1}{Junicode-LF}{condensed}{sl}{
+ <-> ssub * Junicode-LF/condensed/it
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-lf-ts1
-}{}
-\DeclareFontShape{TS1}{Junicode-LF}{regular}{n}{
- <-> alias * Junicode-LF/m/n
-}{}
+% ---- lsc = lightsemicondensed ----
-\DeclareFontShape{TS1}{Junicode-LF}{m}{sl}{
- <-> ssub * Junicode-LF/m/it
+\DeclareFontShape{TS1}{Junicode-LF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{regular}{sl}{
- <-> ssub * Junicode-LF/regular/it
+\DeclareFontShape{TS1}{Junicode-LF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-LF/lsc/it
}{}
-
-% ---- lsc = lightsemicondensed ----
-
\DeclareFontShape{TS1}{Junicode-LF}{lsc}{n}{
<-> \Junicode@@scale Junicode-SmCondLight-lf-ts1
}{}
@@ -111,14 +92,6 @@
<-> alias * Junicode-LF/lsc/n
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-lf-ts1
-}{}
-
-\DeclareFontShape{TS1}{Junicode-LF}{lightsemicondensed}{it}{
- <-> alias * Junicode-LF/lsc/it
-}{}
-
\DeclareFontShape{TS1}{Junicode-LF}{lsc}{sl}{
<-> ssub * Junicode-LF/lsc/it
}{}
@@ -128,58 +101,50 @@
}{}
-% ---- medium ----
+% ---- mediumexpanded ----
-\DeclareFontShape{TS1}{Junicode-LF}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{medium}{n}{
- <-> \Junicode@@scale Junicode-Medium-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{medium}{sl}{
- <-> ssub * Junicode-LF/medium/it
+\DeclareFontShape{TS1}{Junicode-LF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-LF/mediumexpanded/it
}{}
-% ---- sx = semiexpanded ----
+% ---- b = bold ----
-\DeclareFontShape{TS1}{Junicode-LF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{semiexpanded}{it}{
- <-> alias * Junicode-LF/sx/it
+\DeclareFontShape{TS1}{Junicode-LF}{bold}{it}{
+ <-> alias * Junicode-LF/b/it
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{semiexpanded}{n}{
- <-> alias * Junicode-LF/sx/n
+\DeclareFontShape{TS1}{Junicode-LF}{bold}{n}{
+ <-> alias * Junicode-LF/b/n
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{sx}{sl}{
- <-> ssub * Junicode-LF/sx/it
+\DeclareFontShape{TS1}{Junicode-LF}{b}{sl}{
+ <-> ssub * Junicode-LF/b/it
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{semiexpanded}{sl}{
- <-> ssub * Junicode-LF/semiexpanded/it
+\DeclareFontShape{TS1}{Junicode-LF}{bold}{sl}{
+ <-> ssub * Junicode-LF/bold/it
}{}
% ---- x = expanded ----
-\DeclareFontShape{TS1}{Junicode-LF}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-lf-ts1
-}{}
-
-\DeclareFontShape{TS1}{Junicode-LF}{expanded}{n}{
- <-> alias * Junicode-LF/x/n
-}{}
-
\DeclareFontShape{TS1}{Junicode-LF}{x}{it}{
<-> \Junicode@@scale Junicode-ExpItalic-lf-ts1
}{}
@@ -188,6 +153,14 @@
<-> alias * Junicode-LF/x/it
}{}
+\DeclareFontShape{TS1}{Junicode-LF}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-lf-ts1
+}{}
+
+\DeclareFontShape{TS1}{Junicode-LF}{expanded}{n}{
+ <-> alias * Junicode-LF/x/n
+}{}
+
\DeclareFontShape{TS1}{Junicode-LF}{x}{sl}{
<-> ssub * Junicode-LF/x/it
}{}
@@ -197,156 +170,156 @@
}{}
-% ---- c = condensed ----
-
-\DeclareFontShape{TS1}{Junicode-LF}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-lf-ts1
-}{}
-
-\DeclareFontShape{TS1}{Junicode-LF}{condensed}{n}{
- <-> alias * Junicode-LF/c/n
-}{}
-
-\DeclareFontShape{TS1}{Junicode-LF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-lf-ts1
-}{}
+% ---- mediumsemicondensed ----
-\DeclareFontShape{TS1}{Junicode-LF}{condensed}{it}{
- <-> alias * Junicode-LF/c/it
+\DeclareFontShape{TS1}{Junicode-LF}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{c}{sl}{
- <-> ssub * Junicode-LF/c/it
+\DeclareFontShape{TS1}{Junicode-LF}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{condensed}{sl}{
- <-> ssub * Junicode-LF/condensed/it
+\DeclareFontShape{TS1}{Junicode-LF}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-LF/mediumsemicondensed/it
}{}
-% ---- sbsx = semiboldsemiexpanded ----
+% ---- l = light ----
-\DeclareFontShape{TS1}{Junicode-LF}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-LF/sbsx/n
+\DeclareFontShape{TS1}{Junicode-LF}{light}{n}{
+ <-> alias * Junicode-LF/l/n
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-LF/sbsx/it
+\DeclareFontShape{TS1}{Junicode-LF}{light}{it}{
+ <-> alias * Junicode-LF/l/it
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{sbsx}{sl}{
- <-> ssub * Junicode-LF/sbsx/it
+\DeclareFontShape{TS1}{Junicode-LF}{l}{sl}{
+ <-> ssub * Junicode-LF/l/it
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-LF/semiboldsemiexpanded/it
+\DeclareFontShape{TS1}{Junicode-LF}{light}{sl}{
+ <-> ssub * Junicode-LF/light/it
}{}
-% ---- mediumexpanded ----
+% ---- sx = semiexpanded ----
-\DeclareFontShape{TS1}{Junicode-LF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{semiexpanded}{it}{
+ <-> alias * Junicode-LF/sx/it
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-LF/mediumexpanded/it
+\DeclareFontShape{TS1}{Junicode-LF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-lf-ts1
}{}
-
-% ---- mediumsemiexpanded ----
-
-\DeclareFontShape{TS1}{Junicode-LF}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{semiexpanded}{n}{
+ <-> alias * Junicode-LF/sx/n
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{sx}{sl}{
+ <-> ssub * Junicode-LF/sx/it
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-LF/mediumsemiexpanded/it
+\DeclareFontShape{TS1}{Junicode-LF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-LF/semiexpanded/it
}{}
-% ---- mediumsemicondensed ----
+% ---- medium ----
-\DeclareFontShape{TS1}{Junicode-LF}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{medium}{n}{
+ <-> \Junicode@@scale Junicode-Medium-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-LF/mediumsemicondensed/it
+\DeclareFontShape{TS1}{Junicode-LF}{medium}{sl}{
+ <-> ssub * Junicode-LF/medium/it
}{}
-% ---- sbx = semiboldexpanded ----
+% ---- bx = boldexpanded ----
-\DeclareFontShape{TS1}{Junicode-LF}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{semiboldexpanded}{it}{
- <-> alias * Junicode-LF/sbx/it
+\DeclareFontShape{TS1}{Junicode-LF}{boldexpanded}{it}{
+ <-> alias * Junicode-LF/bx/it
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{semiboldexpanded}{n}{
- <-> alias * Junicode-LF/sbx/n
+\DeclareFontShape{TS1}{Junicode-LF}{boldexpanded}{n}{
+ <-> alias * Junicode-LF/bx/n
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{sbx}{sl}{
- <-> ssub * Junicode-LF/sbx/it
+\DeclareFontShape{TS1}{Junicode-LF}{bx}{sl}{
+ <-> ssub * Junicode-LF/bx/it
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-LF/semiboldexpanded/it
+\DeclareFontShape{TS1}{Junicode-LF}{boldexpanded}{sl}{
+ <-> ssub * Junicode-LF/boldexpanded/it
}{}
-% ---- bsx = boldsemiexpanded ----
+% ---- m = regular ----
-\DeclareFontShape{TS1}{Junicode-LF}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{boldsemiexpanded}{n}{
- <-> alias * Junicode-LF/bsx/n
+\DeclareFontShape{TS1}{Junicode-LF}{regular}{n}{
+ <-> alias * Junicode-LF/m/n
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{boldsemiexpanded}{it}{
- <-> alias * Junicode-LF/bsx/it
+\DeclareFontShape{TS1}{Junicode-LF}{regular}{it}{
+ <-> alias * Junicode-LF/m/it
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{bsx}{sl}{
- <-> ssub * Junicode-LF/bsx/it
+\DeclareFontShape{TS1}{Junicode-LF}{m}{sl}{
+ <-> ssub * Junicode-LF/m/it
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-LF/boldsemiexpanded/it
+\DeclareFontShape{TS1}{Junicode-LF}{regular}{sl}{
+ <-> ssub * Junicode-LF/regular/it
+}{}
+
+
+% ---- mediumsemiexpanded ----
+
+\DeclareFontShape{TS1}{Junicode-LF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-lf-ts1
+}{}
+
+\DeclareFontShape{TS1}{Junicode-LF}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-lf-ts1
+}{}
+
+\DeclareFontShape{TS1}{Junicode-LF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-LF/mediumsemiexpanded/it
}{}
@@ -404,75 +377,102 @@
}{}
-% ---- sb = semibold ----
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{TS1}{Junicode-LF}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{semibold}{it}{
- <-> alias * Junicode-LF/sb/it
+\DeclareFontShape{TS1}{Junicode-LF}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-LF/sbsx/n
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{semibold}{n}{
- <-> alias * Junicode-LF/sb/n
+\DeclareFontShape{TS1}{Junicode-LF}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-LF/sbsx/it
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{sb}{sl}{
- <-> ssub * Junicode-LF/sb/it
+\DeclareFontShape{TS1}{Junicode-LF}{sbsx}{sl}{
+ <-> ssub * Junicode-LF/sbsx/it
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{semibold}{sl}{
- <-> ssub * Junicode-LF/semibold/it
+\DeclareFontShape{TS1}{Junicode-LF}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-LF/semiboldsemiexpanded/it
}{}
-% ---- b = bold ----
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{TS1}{Junicode-LF}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{bold}{n}{
- <-> alias * Junicode-LF/b/n
+\DeclareFontShape{TS1}{Junicode-LF}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-LF/bsx/n
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-lf-ts1
+\DeclareFontShape{TS1}{Junicode-LF}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-lf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{bold}{it}{
- <-> alias * Junicode-LF/b/it
+\DeclareFontShape{TS1}{Junicode-LF}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-LF/bsx/it
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{b}{sl}{
- <-> ssub * Junicode-LF/b/it
+\DeclareFontShape{TS1}{Junicode-LF}{bsx}{sl}{
+ <-> ssub * Junicode-LF/bsx/it
}{}
-\DeclareFontShape{TS1}{Junicode-LF}{bold}{sl}{
- <-> ssub * Junicode-LF/bold/it
+\DeclareFontShape{TS1}{Junicode-LF}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-LF/boldsemiexpanded/it
}{}
% ---- mediumcondensed ----
-\DeclareFontShape{TS1}{Junicode-LF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-lf-ts1
-}{}
-
\DeclareFontShape{TS1}{Junicode-LF}{mediumcondensed}{it}{
<-> \Junicode@@scale Junicode-CondMediumItalic-lf-ts1
}{}
+\DeclareFontShape{TS1}{Junicode-LF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-lf-ts1
+}{}
+
\DeclareFontShape{TS1}{Junicode-LF}{mediumcondensed}{sl}{
<-> ssub * Junicode-LF/mediumcondensed/it
}{}
+% ---- sb = semibold ----
+
+\DeclareFontShape{TS1}{Junicode-LF}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-lf-ts1
+}{}
+
+\DeclareFontShape{TS1}{Junicode-LF}{semibold}{n}{
+ <-> alias * Junicode-LF/sb/n
+}{}
+
+\DeclareFontShape{TS1}{Junicode-LF}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-lf-ts1
+}{}
+
+\DeclareFontShape{TS1}{Junicode-LF}{semibold}{it}{
+ <-> alias * Junicode-LF/sb/it
+}{}
+
+\DeclareFontShape{TS1}{Junicode-LF}{sb}{sl}{
+ <-> ssub * Junicode-LF/sb/it
+}{}
+
+\DeclareFontShape{TS1}{Junicode-LF}{semibold}{sl}{
+ <-> ssub * Junicode-LF/semibold/it
+}{}
+
+
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
\endinput
diff --git a/Master/texmf-dist/tex/latex/junicode/TS1Junicode-OsF.fd b/Master/texmf-dist/tex/latex/junicode/TS1Junicode-OsF.fd
index 8c49fdb846e..6f9d7fe6c58 100644
--- a/Master/texmf-dist/tex/latex/junicode/TS1Junicode-OsF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/TS1Junicode-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{TS1Junicode-OsF.fd}
- [2024/06/03 (autoinst) Font definitions for TS1/Junicode-OsF.]
+ [2024/07/21 (autoinst) Font definitions for TS1/Junicode-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,31 +20,35 @@
\DeclareFontFamily{TS1}{Junicode-OsF}{}
-% ---- mediumsemicondensed ----
+% ---- c = condensed ----
-\DeclareFontShape{TS1}{Junicode-OsF}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{condensed}{n}{
+ <-> alias * Junicode-OsF/c/n
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-OsF/mediumsemicondensed/it
+\DeclareFontShape{TS1}{Junicode-OsF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-osf-ts1
}{}
+\DeclareFontShape{TS1}{Junicode-OsF}{condensed}{it}{
+ <-> alias * Junicode-OsF/c/it
+}{}
-% ---- sbx = semiboldexpanded ----
-
-\DeclareFontShape{TS1}{Junicode-OsF}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{c}{sl}{
+ <-> ssub * Junicode-OsF/c/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{semiboldexpanded}{n}{
- <-> alias * Junicode-OsF/sbx/n
+\DeclareFontShape{TS1}{Junicode-OsF}{condensed}{sl}{
+ <-> ssub * Junicode-OsF/condensed/it
}{}
+
+% ---- sbx = semiboldexpanded ----
+
\DeclareFontShape{TS1}{Junicode-OsF}{sbx}{it}{
<-> \Junicode@@scale Junicode-ExpSmBoldItalic-osf-ts1
}{}
@@ -53,6 +57,14 @@
<-> alias * Junicode-OsF/sbx/it
}{}
+\DeclareFontShape{TS1}{Junicode-OsF}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-osf-ts1
+}{}
+
+\DeclareFontShape{TS1}{Junicode-OsF}{semiboldexpanded}{n}{
+ <-> alias * Junicode-OsF/sbx/n
+}{}
+
\DeclareFontShape{TS1}{Junicode-OsF}{sbx}{sl}{
<-> ssub * Junicode-OsF/sbx/it
}{}
@@ -62,180 +74,168 @@
}{}
-% ---- bsx = boldsemiexpanded ----
+% ---- x = expanded ----
-\DeclareFontShape{TS1}{Junicode-OsF}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{boldsemiexpanded}{it}{
- <-> alias * Junicode-OsF/bsx/it
+\DeclareFontShape{TS1}{Junicode-OsF}{expanded}{it}{
+ <-> alias * Junicode-OsF/x/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{boldsemiexpanded}{n}{
- <-> alias * Junicode-OsF/bsx/n
+\DeclareFontShape{TS1}{Junicode-OsF}{expanded}{n}{
+ <-> alias * Junicode-OsF/x/n
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{bsx}{sl}{
- <-> ssub * Junicode-OsF/bsx/it
+\DeclareFontShape{TS1}{Junicode-OsF}{x}{sl}{
+ <-> ssub * Junicode-OsF/x/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-OsF/boldsemiexpanded/it
+\DeclareFontShape{TS1}{Junicode-OsF}{expanded}{sl}{
+ <-> ssub * Junicode-OsF/expanded/it
}{}
-% ---- lc = lightcondensed ----
-
-\DeclareFontShape{TS1}{Junicode-OsF}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-osf-ts1
-}{}
+% ---- b = bold ----
-\DeclareFontShape{TS1}{Junicode-OsF}{lightcondensed}{n}{
- <-> alias * Junicode-OsF/lc/n
+\DeclareFontShape{TS1}{Junicode-OsF}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{bold}{n}{
+ <-> alias * Junicode-OsF/b/n
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{lightcondensed}{it}{
- <-> alias * Junicode-OsF/lc/it
+\DeclareFontShape{TS1}{Junicode-OsF}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{lc}{sl}{
- <-> ssub * Junicode-OsF/lc/it
+\DeclareFontShape{TS1}{Junicode-OsF}{bold}{it}{
+ <-> alias * Junicode-OsF/b/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{lightcondensed}{sl}{
- <-> ssub * Junicode-OsF/lightcondensed/it
+\DeclareFontShape{TS1}{Junicode-OsF}{b}{sl}{
+ <-> ssub * Junicode-OsF/b/it
}{}
-
-% ---- sb = semibold ----
-
-\DeclareFontShape{TS1}{Junicode-OsF}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{bold}{sl}{
+ <-> ssub * Junicode-OsF/bold/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{semibold}{n}{
- <-> alias * Junicode-OsF/sb/n
-}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-osf-ts1
-}{}
+% ---- mediumexpanded ----
-\DeclareFontShape{TS1}{Junicode-OsF}{semibold}{it}{
- <-> alias * Junicode-OsF/sb/it
+\DeclareFontShape{TS1}{Junicode-OsF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{sb}{sl}{
- <-> ssub * Junicode-OsF/sb/it
+\DeclareFontShape{TS1}{Junicode-OsF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{semibold}{sl}{
- <-> ssub * Junicode-OsF/semibold/it
+\DeclareFontShape{TS1}{Junicode-OsF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-OsF/mediumexpanded/it
}{}
-% ---- sc = semicondensed ----
+% ---- lsc = lightsemicondensed ----
-\DeclareFontShape{TS1}{Junicode-OsF}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{semicondensed}{it}{
- <-> alias * Junicode-OsF/sc/it
+\DeclareFontShape{TS1}{Junicode-OsF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-OsF/lsc/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{semicondensed}{n}{
- <-> alias * Junicode-OsF/sc/n
+\DeclareFontShape{TS1}{Junicode-OsF}{lightsemicondensed}{n}{
+ <-> alias * Junicode-OsF/lsc/n
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{sc}{sl}{
- <-> ssub * Junicode-OsF/sc/it
+\DeclareFontShape{TS1}{Junicode-OsF}{lsc}{sl}{
+ <-> ssub * Junicode-OsF/lsc/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{semicondensed}{sl}{
- <-> ssub * Junicode-OsF/semicondensed/it
+\DeclareFontShape{TS1}{Junicode-OsF}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-OsF/lightsemicondensed/it
}{}
-% ---- b = bold ----
+% ---- lc = lightcondensed ----
-\DeclareFontShape{TS1}{Junicode-OsF}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{bold}{n}{
- <-> alias * Junicode-OsF/b/n
+\DeclareFontShape{TS1}{Junicode-OsF}{lightcondensed}{n}{
+ <-> alias * Junicode-OsF/lc/n
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{bold}{it}{
- <-> alias * Junicode-OsF/b/it
+\DeclareFontShape{TS1}{Junicode-OsF}{lightcondensed}{it}{
+ <-> alias * Junicode-OsF/lc/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{b}{sl}{
- <-> ssub * Junicode-OsF/b/it
+\DeclareFontShape{TS1}{Junicode-OsF}{lc}{sl}{
+ <-> ssub * Junicode-OsF/lc/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{bold}{sl}{
- <-> ssub * Junicode-OsF/bold/it
+\DeclareFontShape{TS1}{Junicode-OsF}{lightcondensed}{sl}{
+ <-> ssub * Junicode-OsF/lightcondensed/it
}{}
-% ---- mediumcondensed ----
+% ---- m = regular ----
-\DeclareFontShape{TS1}{Junicode-OsF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{regular}{it}{
+ <-> alias * Junicode-OsF/m/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{mediumcondensed}{sl}{
- <-> ssub * Junicode-OsF/mediumcondensed/it
+\DeclareFontShape{TS1}{Junicode-OsF}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-osf-ts1
}{}
-
-% ---- l = light ----
-
-\DeclareFontShape{TS1}{Junicode-OsF}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{regular}{n}{
+ <-> alias * Junicode-OsF/m/n
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{light}{it}{
- <-> alias * Junicode-OsF/l/it
+\DeclareFontShape{TS1}{Junicode-OsF}{m}{sl}{
+ <-> ssub * Junicode-OsF/m/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{regular}{sl}{
+ <-> ssub * Junicode-OsF/regular/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{light}{n}{
- <-> alias * Junicode-OsF/l/n
+
+% ---- mediumsemiexpanded ----
+
+\DeclareFontShape{TS1}{Junicode-OsF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{l}{sl}{
- <-> ssub * Junicode-OsF/l/it
+\DeclareFontShape{TS1}{Junicode-OsF}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{light}{sl}{
- <-> ssub * Junicode-OsF/light/it
+\DeclareFontShape{TS1}{Junicode-OsF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-OsF/mediumsemiexpanded/it
}{}
@@ -266,173 +266,169 @@
}{}
-% ---- m = regular ----
+% ---- medium ----
-\DeclareFontShape{TS1}{Junicode-OsF}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{medium}{n}{
+ <-> \Junicode@@scale Junicode-Medium-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{regular}{n}{
- <-> alias * Junicode-OsF/m/n
+\DeclareFontShape{TS1}{Junicode-OsF}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{medium}{sl}{
+ <-> ssub * Junicode-OsF/medium/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{regular}{it}{
- <-> alias * Junicode-OsF/m/it
-}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{m}{sl}{
- <-> ssub * Junicode-OsF/m/it
-}{}
+% ---- sx = semiexpanded ----
-\DeclareFontShape{TS1}{Junicode-OsF}{regular}{sl}{
- <-> ssub * Junicode-OsF/regular/it
+\DeclareFontShape{TS1}{Junicode-OsF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-osf-ts1
}{}
+\DeclareFontShape{TS1}{Junicode-OsF}{semiexpanded}{it}{
+ <-> alias * Junicode-OsF/sx/it
+}{}
-% ---- medium ----
+\DeclareFontShape{TS1}{Junicode-OsF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-osf-ts1
+}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{semiexpanded}{n}{
+ <-> alias * Junicode-OsF/sx/n
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{medium}{n}{
- <-> \Junicode@@scale Junicode-Medium-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{sx}{sl}{
+ <-> ssub * Junicode-OsF/sx/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{medium}{sl}{
- <-> ssub * Junicode-OsF/medium/it
+\DeclareFontShape{TS1}{Junicode-OsF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-OsF/semiexpanded/it
}{}
-% ---- lsc = lightsemicondensed ----
+% ---- l = light ----
-\DeclareFontShape{TS1}{Junicode-OsF}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{lightsemicondensed}{n}{
- <-> alias * Junicode-OsF/lsc/n
+\DeclareFontShape{TS1}{Junicode-OsF}{light}{n}{
+ <-> alias * Junicode-OsF/l/n
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{lightsemicondensed}{it}{
- <-> alias * Junicode-OsF/lsc/it
+\DeclareFontShape{TS1}{Junicode-OsF}{light}{it}{
+ <-> alias * Junicode-OsF/l/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{lsc}{sl}{
- <-> ssub * Junicode-OsF/lsc/it
+\DeclareFontShape{TS1}{Junicode-OsF}{l}{sl}{
+ <-> ssub * Junicode-OsF/l/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-OsF/lightsemicondensed/it
+\DeclareFontShape{TS1}{Junicode-OsF}{light}{sl}{
+ <-> ssub * Junicode-OsF/light/it
}{}
-% ---- c = condensed ----
+% ---- mediumsemicondensed ----
-\DeclareFontShape{TS1}{Junicode-OsF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{condensed}{it}{
- <-> alias * Junicode-OsF/c/it
+\DeclareFontShape{TS1}{Junicode-OsF}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-OsF/mediumsemicondensed/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{condensed}{n}{
- <-> alias * Junicode-OsF/c/n
-}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{c}{sl}{
- <-> ssub * Junicode-OsF/c/it
-}{}
+% ---- sb = semibold ----
-\DeclareFontShape{TS1}{Junicode-OsF}{condensed}{sl}{
- <-> ssub * Junicode-OsF/condensed/it
+\DeclareFontShape{TS1}{Junicode-OsF}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-osf-ts1
}{}
+\DeclareFontShape{TS1}{Junicode-OsF}{semibold}{n}{
+ <-> alias * Junicode-OsF/sb/n
+}{}
-% ---- x = expanded ----
+\DeclareFontShape{TS1}{Junicode-OsF}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-osf-ts1
+}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{semibold}{it}{
+ <-> alias * Junicode-OsF/sb/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{expanded}{it}{
- <-> alias * Junicode-OsF/x/it
+\DeclareFontShape{TS1}{Junicode-OsF}{sb}{sl}{
+ <-> ssub * Junicode-OsF/sb/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{semibold}{sl}{
+ <-> ssub * Junicode-OsF/semibold/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{expanded}{n}{
- <-> alias * Junicode-OsF/x/n
+
+% ---- mediumcondensed ----
+
+\DeclareFontShape{TS1}{Junicode-OsF}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{x}{sl}{
- <-> ssub * Junicode-OsF/x/it
+\DeclareFontShape{TS1}{Junicode-OsF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{expanded}{sl}{
- <-> ssub * Junicode-OsF/expanded/it
+\DeclareFontShape{TS1}{Junicode-OsF}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-OsF/mediumcondensed/it
}{}
-% ---- sx = semiexpanded ----
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{TS1}{Junicode-OsF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{semiexpanded}{it}{
- <-> alias * Junicode-OsF/sx/it
+\DeclareFontShape{TS1}{Junicode-OsF}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-OsF/bsx/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{semiexpanded}{n}{
- <-> alias * Junicode-OsF/sx/n
+\DeclareFontShape{TS1}{Junicode-OsF}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-OsF/bsx/n
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{sx}{sl}{
- <-> ssub * Junicode-OsF/sx/it
+\DeclareFontShape{TS1}{Junicode-OsF}{bsx}{sl}{
+ <-> ssub * Junicode-OsF/bsx/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{semiexpanded}{sl}{
- <-> ssub * Junicode-OsF/semiexpanded/it
+\DeclareFontShape{TS1}{Junicode-OsF}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-OsF/boldsemiexpanded/it
}{}
-% ---- mediumexpanded ----
-
-\DeclareFontShape{TS1}{Junicode-OsF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-osf-ts1
-}{}
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{TS1}{Junicode-OsF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-OsF/mediumexpanded/it
+\DeclareFontShape{TS1}{Junicode-OsF}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-OsF/sbsx/n
}{}
-
-% ---- sbsx = semiboldsemiexpanded ----
-
\DeclareFontShape{TS1}{Junicode-OsF}{sbsx}{it}{
<-> \Junicode@@scale Junicode-SmExpSmBoldItalic-osf-ts1
}{}
@@ -441,14 +437,6 @@
<-> alias * Junicode-OsF/sbsx/it
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-osf-ts1
-}{}
-
-\DeclareFontShape{TS1}{Junicode-OsF}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-OsF/sbsx/n
-}{}
-
\DeclareFontShape{TS1}{Junicode-OsF}{sbsx}{sl}{
<-> ssub * Junicode-OsF/sbsx/it
}{}
@@ -458,18 +446,30 @@
}{}
-% ---- mediumsemiexpanded ----
+% ---- sc = semicondensed ----
-\DeclareFontShape{TS1}{Junicode-OsF}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-osf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-osf-ts1
+\DeclareFontShape{TS1}{Junicode-OsF}{semicondensed}{n}{
+ <-> alias * Junicode-OsF/sc/n
}{}
-\DeclareFontShape{TS1}{Junicode-OsF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-OsF/mediumsemiexpanded/it
+\DeclareFontShape{TS1}{Junicode-OsF}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-osf-ts1
+}{}
+
+\DeclareFontShape{TS1}{Junicode-OsF}{semicondensed}{it}{
+ <-> alias * Junicode-OsF/sc/it
+}{}
+
+\DeclareFontShape{TS1}{Junicode-OsF}{sc}{sl}{
+ <-> ssub * Junicode-OsF/sc/it
+}{}
+
+\DeclareFontShape{TS1}{Junicode-OsF}{semicondensed}{sl}{
+ <-> ssub * Junicode-OsF/semicondensed/it
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/TS1Junicode-TLF.fd b/Master/texmf-dist/tex/latex/junicode/TS1Junicode-TLF.fd
index 8ff70a59bb5..9d106c1467d 100644
--- a/Master/texmf-dist/tex/latex/junicode/TS1Junicode-TLF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/TS1Junicode-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{TS1Junicode-TLF.fd}
- [2024/06/03 (autoinst) Font definitions for TS1/Junicode-TLF.]
+ [2024/07/21 (autoinst) Font definitions for TS1/Junicode-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,104 +20,85 @@
\DeclareFontFamily{TS1}{Junicode-TLF}{}
-% ---- sx = semiexpanded ----
-
-\DeclareFontShape{TS1}{Junicode-TLF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-tlf-ts1
-}{}
+% ---- sb = semibold ----
-\DeclareFontShape{TS1}{Junicode-TLF}{semiexpanded}{n}{
- <-> alias * Junicode-TLF/sx/n
+\DeclareFontShape{TS1}{Junicode-TLF}{sb}{it}{
+ <-> \Junicode@@scale Junicode-SmBoldItalic-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{semibold}{it}{
+ <-> alias * Junicode-TLF/sb/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{semiexpanded}{it}{
- <-> alias * Junicode-TLF/sx/it
+\DeclareFontShape{TS1}{Junicode-TLF}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{sx}{sl}{
- <-> ssub * Junicode-TLF/sx/it
+\DeclareFontShape{TS1}{Junicode-TLF}{semibold}{n}{
+ <-> alias * Junicode-TLF/sb/n
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{semiexpanded}{sl}{
- <-> ssub * Junicode-TLF/semiexpanded/it
+\DeclareFontShape{TS1}{Junicode-TLF}{sb}{sl}{
+ <-> ssub * Junicode-TLF/sb/it
}{}
-
-% ---- x = expanded ----
-
-\DeclareFontShape{TS1}{Junicode-TLF}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{semibold}{sl}{
+ <-> ssub * Junicode-TLF/semibold/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{expanded}{it}{
- <-> alias * Junicode-TLF/x/it
-}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-tlf-ts1
-}{}
+% ---- mediumcondensed ----
-\DeclareFontShape{TS1}{Junicode-TLF}{expanded}{n}{
- <-> alias * Junicode-TLF/x/n
+\DeclareFontShape{TS1}{Junicode-TLF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{x}{sl}{
- <-> ssub * Junicode-TLF/x/it
+\DeclareFontShape{TS1}{Junicode-TLF}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{expanded}{sl}{
- <-> ssub * Junicode-TLF/expanded/it
+\DeclareFontShape{TS1}{Junicode-TLF}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-TLF/mediumcondensed/it
}{}
-% ---- c = condensed ----
+% ---- bsx = boldsemiexpanded ----
-\DeclareFontShape{TS1}{Junicode-TLF}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{bsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpBold-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{condensed}{n}{
- <-> alias * Junicode-TLF/c/n
+\DeclareFontShape{TS1}{Junicode-TLF}{boldsemiexpanded}{n}{
+ <-> alias * Junicode-TLF/bsx/n
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{bsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpBoldItalic-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{condensed}{it}{
- <-> alias * Junicode-TLF/c/it
+\DeclareFontShape{TS1}{Junicode-TLF}{boldsemiexpanded}{it}{
+ <-> alias * Junicode-TLF/bsx/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{c}{sl}{
- <-> ssub * Junicode-TLF/c/it
+\DeclareFontShape{TS1}{Junicode-TLF}{bsx}{sl}{
+ <-> ssub * Junicode-TLF/bsx/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{condensed}{sl}{
- <-> ssub * Junicode-TLF/condensed/it
+\DeclareFontShape{TS1}{Junicode-TLF}{boldsemiexpanded}{sl}{
+ <-> ssub * Junicode-TLF/boldsemiexpanded/it
}{}
-% ---- mediumsemiexpanded ----
-
-\DeclareFontShape{TS1}{Junicode-TLF}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-tlf-ts1
-}{}
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{TS1}{Junicode-TLF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-TLF/mediumsemiexpanded/it
+\DeclareFontShape{TS1}{Junicode-TLF}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-TLF/sbsx/n
}{}
-
-% ---- sbsx = semiboldsemiexpanded ----
-
\DeclareFontShape{TS1}{Junicode-TLF}{sbsx}{it}{
<-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tlf-ts1
}{}
@@ -126,14 +107,6 @@
<-> alias * Junicode-TLF/sbsx/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-tlf-ts1
-}{}
-
-\DeclareFontShape{TS1}{Junicode-TLF}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-TLF/sbsx/n
-}{}
-
\DeclareFontShape{TS1}{Junicode-TLF}{sbsx}{sl}{
<-> ssub * Junicode-TLF/sbsx/it
}{}
@@ -143,333 +116,360 @@
}{}
-% ---- mediumexpanded ----
+% ---- sc = semicondensed ----
-\DeclareFontShape{TS1}{Junicode-TLF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{sc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondItalic-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{semicondensed}{it}{
+ <-> alias * Junicode-TLF/sc/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-TLF/mediumexpanded/it
+\DeclareFontShape{TS1}{Junicode-TLF}{sc}{n}{
+ <-> \Junicode@@scale Junicode-SmCond-tlf-ts1
}{}
+\DeclareFontShape{TS1}{Junicode-TLF}{semicondensed}{n}{
+ <-> alias * Junicode-TLF/sc/n
+}{}
-% ---- bx = boldexpanded ----
+\DeclareFontShape{TS1}{Junicode-TLF}{sc}{sl}{
+ <-> ssub * Junicode-TLF/sc/it
+}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{semicondensed}{sl}{
+ <-> ssub * Junicode-TLF/semicondensed/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{boldexpanded}{n}{
- <-> alias * Junicode-TLF/bx/n
+
+% ---- lc = lightcondensed ----
+
+\DeclareFontShape{TS1}{Junicode-TLF}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{lightcondensed}{n}{
+ <-> alias * Junicode-TLF/lc/n
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{boldexpanded}{it}{
- <-> alias * Junicode-TLF/bx/it
+\DeclareFontShape{TS1}{Junicode-TLF}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{bx}{sl}{
- <-> ssub * Junicode-TLF/bx/it
+\DeclareFontShape{TS1}{Junicode-TLF}{lightcondensed}{it}{
+ <-> alias * Junicode-TLF/lc/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{boldexpanded}{sl}{
- <-> ssub * Junicode-TLF/boldexpanded/it
+\DeclareFontShape{TS1}{Junicode-TLF}{lc}{sl}{
+ <-> ssub * Junicode-TLF/lc/it
}{}
+\DeclareFontShape{TS1}{Junicode-TLF}{lightcondensed}{sl}{
+ <-> ssub * Junicode-TLF/lightcondensed/it
+}{}
-% ---- l = light ----
-\DeclareFontShape{TS1}{Junicode-TLF}{l}{it}{
- <-> \Junicode@@scale Junicode-LightItalic-tlf-ts1
+% ---- m = regular ----
+
+\DeclareFontShape{TS1}{Junicode-TLF}{m}{it}{
+ <-> \Junicode@@scale Junicode-Italic-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{light}{it}{
- <-> alias * Junicode-TLF/l/it
+\DeclareFontShape{TS1}{Junicode-TLF}{regular}{it}{
+ <-> alias * Junicode-TLF/m/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{l}{n}{
- <-> \Junicode@@scale Junicode-Light-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{m}{n}{
+ <-> \Junicode@@scale Junicode-Regular-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{light}{n}{
- <-> alias * Junicode-TLF/l/n
+\DeclareFontShape{TS1}{Junicode-TLF}{regular}{n}{
+ <-> alias * Junicode-TLF/m/n
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{l}{sl}{
- <-> ssub * Junicode-TLF/l/it
+\DeclareFontShape{TS1}{Junicode-TLF}{m}{sl}{
+ <-> ssub * Junicode-TLF/m/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{light}{sl}{
- <-> ssub * Junicode-TLF/light/it
+\DeclareFontShape{TS1}{Junicode-TLF}{regular}{sl}{
+ <-> ssub * Junicode-TLF/regular/it
}{}
-% ---- lsc = lightsemicondensed ----
+% ---- mediumsemiexpanded ----
-\DeclareFontShape{TS1}{Junicode-TLF}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{lightsemicondensed}{n}{
- <-> alias * Junicode-TLF/lsc/n
+\DeclareFontShape{TS1}{Junicode-TLF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-TLF/mediumsemiexpanded/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{lightsemicondensed}{it}{
- <-> alias * Junicode-TLF/lsc/it
+
+% ---- bx = boldexpanded ----
+
+\DeclareFontShape{TS1}{Junicode-TLF}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{lsc}{sl}{
- <-> ssub * Junicode-TLF/lsc/it
+\DeclareFontShape{TS1}{Junicode-TLF}{boldexpanded}{it}{
+ <-> alias * Junicode-TLF/bx/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-TLF/lightsemicondensed/it
+\DeclareFontShape{TS1}{Junicode-TLF}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-tlf-ts1
}{}
+\DeclareFontShape{TS1}{Junicode-TLF}{boldexpanded}{n}{
+ <-> alias * Junicode-TLF/bx/n
+}{}
-% ---- medium ----
+\DeclareFontShape{TS1}{Junicode-TLF}{bx}{sl}{
+ <-> ssub * Junicode-TLF/bx/it
+}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{medium}{it}{
- <-> \Junicode@@scale Junicode-MediumItalic-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{boldexpanded}{sl}{
+ <-> ssub * Junicode-TLF/boldexpanded/it
}{}
+
+% ---- medium ----
+
\DeclareFontShape{TS1}{Junicode-TLF}{medium}{n}{
<-> \Junicode@@scale Junicode-Medium-tlf-ts1
}{}
+\DeclareFontShape{TS1}{Junicode-TLF}{medium}{it}{
+ <-> \Junicode@@scale Junicode-MediumItalic-tlf-ts1
+}{}
+
\DeclareFontShape{TS1}{Junicode-TLF}{medium}{sl}{
<-> ssub * Junicode-TLF/medium/it
}{}
-% ---- m = regular ----
+% ---- sx = semiexpanded ----
-\DeclareFontShape{TS1}{Junicode-TLF}{m}{n}{
- <-> \Junicode@@scale Junicode-Regular-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{regular}{n}{
- <-> alias * Junicode-TLF/m/n
+\DeclareFontShape{TS1}{Junicode-TLF}{semiexpanded}{n}{
+ <-> alias * Junicode-TLF/sx/n
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{m}{it}{
- <-> \Junicode@@scale Junicode-Italic-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{regular}{it}{
- <-> alias * Junicode-TLF/m/it
+\DeclareFontShape{TS1}{Junicode-TLF}{semiexpanded}{it}{
+ <-> alias * Junicode-TLF/sx/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{m}{sl}{
- <-> ssub * Junicode-TLF/m/it
+\DeclareFontShape{TS1}{Junicode-TLF}{sx}{sl}{
+ <-> ssub * Junicode-TLF/sx/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{regular}{sl}{
- <-> ssub * Junicode-TLF/regular/it
+\DeclareFontShape{TS1}{Junicode-TLF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-TLF/semiexpanded/it
}{}
-% ---- b = bold ----
+% ---- l = light ----
-\DeclareFontShape{TS1}{Junicode-TLF}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{l}{it}{
+ <-> \Junicode@@scale Junicode-LightItalic-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{bold}{n}{
- <-> alias * Junicode-TLF/b/n
+\DeclareFontShape{TS1}{Junicode-TLF}{light}{it}{
+ <-> alias * Junicode-TLF/l/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{l}{n}{
+ <-> \Junicode@@scale Junicode-Light-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{bold}{it}{
- <-> alias * Junicode-TLF/b/it
+\DeclareFontShape{TS1}{Junicode-TLF}{light}{n}{
+ <-> alias * Junicode-TLF/l/n
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{b}{sl}{
- <-> ssub * Junicode-TLF/b/it
+\DeclareFontShape{TS1}{Junicode-TLF}{l}{sl}{
+ <-> ssub * Junicode-TLF/l/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{bold}{sl}{
- <-> ssub * Junicode-TLF/bold/it
+\DeclareFontShape{TS1}{Junicode-TLF}{light}{sl}{
+ <-> ssub * Junicode-TLF/light/it
}{}
-% ---- mediumcondensed ----
+% ---- mediumsemicondensed ----
-\DeclareFontShape{TS1}{Junicode-TLF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{mediumcondensed}{sl}{
- <-> ssub * Junicode-TLF/mediumcondensed/it
+\DeclareFontShape{TS1}{Junicode-TLF}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-TLF/mediumsemicondensed/it
}{}
-% ---- sbx = semiboldexpanded ----
+% ---- x = expanded ----
-\DeclareFontShape{TS1}{Junicode-TLF}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{semiboldexpanded}{n}{
- <-> alias * Junicode-TLF/sbx/n
+\DeclareFontShape{TS1}{Junicode-TLF}{expanded}{it}{
+ <-> alias * Junicode-TLF/x/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{semiboldexpanded}{it}{
- <-> alias * Junicode-TLF/sbx/it
+\DeclareFontShape{TS1}{Junicode-TLF}{expanded}{n}{
+ <-> alias * Junicode-TLF/x/n
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{sbx}{sl}{
- <-> ssub * Junicode-TLF/sbx/it
+\DeclareFontShape{TS1}{Junicode-TLF}{x}{sl}{
+ <-> ssub * Junicode-TLF/x/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-TLF/semiboldexpanded/it
+\DeclareFontShape{TS1}{Junicode-TLF}{expanded}{sl}{
+ <-> ssub * Junicode-TLF/expanded/it
}{}
-% ---- mediumsemicondensed ----
+% ---- b = bold ----
-\DeclareFontShape{TS1}{Junicode-TLF}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{bold}{n}{
+ <-> alias * Junicode-TLF/b/n
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-TLF/mediumsemicondensed/it
+\DeclareFontShape{TS1}{Junicode-TLF}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-tlf-ts1
}{}
-
-% ---- sc = semicondensed ----
-
-\DeclareFontShape{TS1}{Junicode-TLF}{sc}{it}{
- <-> \Junicode@@scale Junicode-SmCondItalic-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{bold}{it}{
+ <-> alias * Junicode-TLF/b/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{semicondensed}{it}{
- <-> alias * Junicode-TLF/sc/it
+\DeclareFontShape{TS1}{Junicode-TLF}{b}{sl}{
+ <-> ssub * Junicode-TLF/b/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{sc}{n}{
- <-> \Junicode@@scale Junicode-SmCond-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{bold}{sl}{
+ <-> ssub * Junicode-TLF/bold/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{semicondensed}{n}{
- <-> alias * Junicode-TLF/sc/n
+
+% ---- mediumexpanded ----
+
+\DeclareFontShape{TS1}{Junicode-TLF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{sc}{sl}{
- <-> ssub * Junicode-TLF/sc/it
+\DeclareFontShape{TS1}{Junicode-TLF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{semicondensed}{sl}{
- <-> ssub * Junicode-TLF/semicondensed/it
+\DeclareFontShape{TS1}{Junicode-TLF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-TLF/mediumexpanded/it
}{}
-% ---- sb = semibold ----
+% ---- lsc = lightsemicondensed ----
-\DeclareFontShape{TS1}{Junicode-TLF}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{semibold}{n}{
- <-> alias * Junicode-TLF/sb/n
+\DeclareFontShape{TS1}{Junicode-TLF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-TLF/lsc/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{sb}{it}{
- <-> \Junicode@@scale Junicode-SmBoldItalic-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{semibold}{it}{
- <-> alias * Junicode-TLF/sb/it
+\DeclareFontShape{TS1}{Junicode-TLF}{lightsemicondensed}{n}{
+ <-> alias * Junicode-TLF/lsc/n
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{sb}{sl}{
- <-> ssub * Junicode-TLF/sb/it
+\DeclareFontShape{TS1}{Junicode-TLF}{lsc}{sl}{
+ <-> ssub * Junicode-TLF/lsc/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{semibold}{sl}{
- <-> ssub * Junicode-TLF/semibold/it
+\DeclareFontShape{TS1}{Junicode-TLF}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-TLF/lightsemicondensed/it
}{}
-% ---- bsx = boldsemiexpanded ----
+% ---- c = condensed ----
-\DeclareFontShape{TS1}{Junicode-TLF}{bsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpBoldItalic-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{boldsemiexpanded}{it}{
- <-> alias * Junicode-TLF/bsx/it
+\DeclareFontShape{TS1}{Junicode-TLF}{condensed}{n}{
+ <-> alias * Junicode-TLF/c/n
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{bsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpBold-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{boldsemiexpanded}{n}{
- <-> alias * Junicode-TLF/bsx/n
+\DeclareFontShape{TS1}{Junicode-TLF}{condensed}{it}{
+ <-> alias * Junicode-TLF/c/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{bsx}{sl}{
- <-> ssub * Junicode-TLF/bsx/it
+\DeclareFontShape{TS1}{Junicode-TLF}{c}{sl}{
+ <-> ssub * Junicode-TLF/c/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{boldsemiexpanded}{sl}{
- <-> ssub * Junicode-TLF/boldsemiexpanded/it
+\DeclareFontShape{TS1}{Junicode-TLF}{condensed}{sl}{
+ <-> ssub * Junicode-TLF/condensed/it
}{}
-% ---- lc = lightcondensed ----
+% ---- sbx = semiboldexpanded ----
-\DeclareFontShape{TS1}{Junicode-TLF}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{lightcondensed}{n}{
- <-> alias * Junicode-TLF/lc/n
+\DeclareFontShape{TS1}{Junicode-TLF}{semiboldexpanded}{n}{
+ <-> alias * Junicode-TLF/sbx/n
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-tlf-ts1
+\DeclareFontShape{TS1}{Junicode-TLF}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tlf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{lightcondensed}{it}{
- <-> alias * Junicode-TLF/lc/it
+\DeclareFontShape{TS1}{Junicode-TLF}{semiboldexpanded}{it}{
+ <-> alias * Junicode-TLF/sbx/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{lc}{sl}{
- <-> ssub * Junicode-TLF/lc/it
+\DeclareFontShape{TS1}{Junicode-TLF}{sbx}{sl}{
+ <-> ssub * Junicode-TLF/sbx/it
}{}
-\DeclareFontShape{TS1}{Junicode-TLF}{lightcondensed}{sl}{
- <-> ssub * Junicode-TLF/lightcondensed/it
+\DeclareFontShape{TS1}{Junicode-TLF}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-TLF/semiboldexpanded/it
}{}
diff --git a/Master/texmf-dist/tex/latex/junicode/TS1Junicode-TOsF.fd b/Master/texmf-dist/tex/latex/junicode/TS1Junicode-TOsF.fd
index 02b2f8fbda9..73d254e1220 100644
--- a/Master/texmf-dist/tex/latex/junicode/TS1Junicode-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/junicode/TS1Junicode-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2024/06/03
+%% Generated by autoinst on 2024/07/21
%%
\ProvidesFile{TS1Junicode-TOsF.fd}
- [2024/06/03 (autoinst) Font definitions for TS1/Junicode-TOsF.]
+ [2024/07/21 (autoinst) Font definitions for TS1/Junicode-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,16 +20,23 @@
\DeclareFontFamily{TS1}{Junicode-TOsF}{}
-% ---- sb = semibold ----
+% ---- mediumcondensed ----
-\DeclareFontShape{TS1}{Junicode-TOsF}{sb}{n}{
- <-> \Junicode@@scale Junicode-SmBold-tosf-ts1
+\DeclareFontShape{TS1}{Junicode-TOsF}{mediumcondensed}{it}{
+ <-> \Junicode@@scale Junicode-CondMediumItalic-tosf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{semibold}{n}{
- <-> alias * Junicode-TOsF/sb/n
+\DeclareFontShape{TS1}{Junicode-TOsF}{mediumcondensed}{n}{
+ <-> \Junicode@@scale Junicode-CondMedium-tosf-ts1
}{}
+\DeclareFontShape{TS1}{Junicode-TOsF}{mediumcondensed}{sl}{
+ <-> ssub * Junicode-TOsF/mediumcondensed/it
+}{}
+
+
+% ---- sb = semibold ----
+
\DeclareFontShape{TS1}{Junicode-TOsF}{sb}{it}{
<-> \Junicode@@scale Junicode-SmBoldItalic-tosf-ts1
}{}
@@ -38,6 +45,14 @@
<-> alias * Junicode-TOsF/sb/it
}{}
+\DeclareFontShape{TS1}{Junicode-TOsF}{sb}{n}{
+ <-> \Junicode@@scale Junicode-SmBold-tosf-ts1
+}{}
+
+\DeclareFontShape{TS1}{Junicode-TOsF}{semibold}{n}{
+ <-> alias * Junicode-TOsF/sb/n
+}{}
+
\DeclareFontShape{TS1}{Junicode-TOsF}{sb}{sl}{
<-> ssub * Junicode-TOsF/sb/it
}{}
@@ -74,33 +89,6 @@
}{}
-% ---- lc = lightcondensed ----
-
-\DeclareFontShape{TS1}{Junicode-TOsF}{lc}{n}{
- <-> \Junicode@@scale Junicode-CondLight-tosf-ts1
-}{}
-
-\DeclareFontShape{TS1}{Junicode-TOsF}{lightcondensed}{n}{
- <-> alias * Junicode-TOsF/lc/n
-}{}
-
-\DeclareFontShape{TS1}{Junicode-TOsF}{lc}{it}{
- <-> \Junicode@@scale Junicode-CondLightItalic-tosf-ts1
-}{}
-
-\DeclareFontShape{TS1}{Junicode-TOsF}{lightcondensed}{it}{
- <-> alias * Junicode-TOsF/lc/it
-}{}
-
-\DeclareFontShape{TS1}{Junicode-TOsF}{lc}{sl}{
- <-> ssub * Junicode-TOsF/lc/it
-}{}
-
-\DeclareFontShape{TS1}{Junicode-TOsF}{lightcondensed}{sl}{
- <-> ssub * Junicode-TOsF/lightcondensed/it
-}{}
-
-
% ---- bsx = boldsemiexpanded ----
\DeclareFontShape{TS1}{Junicode-TOsF}{bsx}{n}{
@@ -128,87 +116,30 @@
}{}
-% ---- sbx = semiboldexpanded ----
-
-\DeclareFontShape{TS1}{Junicode-TOsF}{sbx}{it}{
- <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tosf-ts1
-}{}
-
-\DeclareFontShape{TS1}{Junicode-TOsF}{semiboldexpanded}{it}{
- <-> alias * Junicode-TOsF/sbx/it
-}{}
-
-\DeclareFontShape{TS1}{Junicode-TOsF}{sbx}{n}{
- <-> \Junicode@@scale Junicode-ExpSmBold-tosf-ts1
-}{}
-
-\DeclareFontShape{TS1}{Junicode-TOsF}{semiboldexpanded}{n}{
- <-> alias * Junicode-TOsF/sbx/n
-}{}
-
-\DeclareFontShape{TS1}{Junicode-TOsF}{sbx}{sl}{
- <-> ssub * Junicode-TOsF/sbx/it
-}{}
-
-\DeclareFontShape{TS1}{Junicode-TOsF}{semiboldexpanded}{sl}{
- <-> ssub * Junicode-TOsF/semiboldexpanded/it
-}{}
-
-
-% ---- mediumsemicondensed ----
-
-\DeclareFontShape{TS1}{Junicode-TOsF}{mediumsemicondensed}{n}{
- <-> \Junicode@@scale Junicode-SmCondMedium-tosf-ts1
-}{}
-
-\DeclareFontShape{TS1}{Junicode-TOsF}{mediumsemicondensed}{it}{
- <-> \Junicode@@scale Junicode-SmCondMediumItalic-tosf-ts1
-}{}
-
-\DeclareFontShape{TS1}{Junicode-TOsF}{mediumsemicondensed}{sl}{
- <-> ssub * Junicode-TOsF/mediumsemicondensed/it
-}{}
-
-
-% ---- mediumcondensed ----
-
-\DeclareFontShape{TS1}{Junicode-TOsF}{mediumcondensed}{it}{
- <-> \Junicode@@scale Junicode-CondMediumItalic-tosf-ts1
-}{}
-
-\DeclareFontShape{TS1}{Junicode-TOsF}{mediumcondensed}{n}{
- <-> \Junicode@@scale Junicode-CondMedium-tosf-ts1
-}{}
-
-\DeclareFontShape{TS1}{Junicode-TOsF}{mediumcondensed}{sl}{
- <-> ssub * Junicode-TOsF/mediumcondensed/it
-}{}
-
-
-% ---- b = bold ----
+% ---- sbsx = semiboldsemiexpanded ----
-\DeclareFontShape{TS1}{Junicode-TOsF}{b}{n}{
- <-> \Junicode@@scale Junicode-Bold-tosf-ts1
+\DeclareFontShape{TS1}{Junicode-TOsF}{sbsx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tosf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{bold}{n}{
- <-> alias * Junicode-TOsF/b/n
+\DeclareFontShape{TS1}{Junicode-TOsF}{semiboldsemiexpanded}{it}{
+ <-> alias * Junicode-TOsF/sbsx/it
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{b}{it}{
- <-> \Junicode@@scale Junicode-BoldItalic-tosf-ts1
+\DeclareFontShape{TS1}{Junicode-TOsF}{sbsx}{n}{
+ <-> \Junicode@@scale Junicode-SmExpSmBold-tosf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{bold}{it}{
- <-> alias * Junicode-TOsF/b/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{semiboldsemiexpanded}{n}{
+ <-> alias * Junicode-TOsF/sbsx/n
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{b}{sl}{
- <-> ssub * Junicode-TOsF/b/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{sbsx}{sl}{
+ <-> ssub * Junicode-TOsF/sbsx/it
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{bold}{sl}{
- <-> ssub * Junicode-TOsF/bold/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{semiboldsemiexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/semiboldsemiexpanded/it
}{}
@@ -227,30 +158,30 @@
}{}
-% ---- lsc = lightsemicondensed ----
+% ---- bx = boldexpanded ----
-\DeclareFontShape{TS1}{Junicode-TOsF}{lsc}{n}{
- <-> \Junicode@@scale Junicode-SmCondLight-tosf-ts1
+\DeclareFontShape{TS1}{Junicode-TOsF}{bx}{it}{
+ <-> \Junicode@@scale Junicode-ExpBoldItalic-tosf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{lightsemicondensed}{n}{
- <-> alias * Junicode-TOsF/lsc/n
+\DeclareFontShape{TS1}{Junicode-TOsF}{boldexpanded}{it}{
+ <-> alias * Junicode-TOsF/bx/it
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{lsc}{it}{
- <-> \Junicode@@scale Junicode-SmCondLightItalic-tosf-ts1
+\DeclareFontShape{TS1}{Junicode-TOsF}{bx}{n}{
+ <-> \Junicode@@scale Junicode-ExpBold-tosf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{lightsemicondensed}{it}{
- <-> alias * Junicode-TOsF/lsc/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{boldexpanded}{n}{
+ <-> alias * Junicode-TOsF/bx/n
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{lsc}{sl}{
- <-> ssub * Junicode-TOsF/lsc/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{bx}{sl}{
+ <-> ssub * Junicode-TOsF/bx/it
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{lightsemicondensed}{sl}{
- <-> ssub * Junicode-TOsF/lightsemicondensed/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{boldexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/boldexpanded/it
}{}
@@ -281,30 +212,60 @@
}{}
-% ---- bx = boldexpanded ----
+% ---- mediumsemiexpanded ----
-\DeclareFontShape{TS1}{Junicode-TOsF}{bx}{it}{
- <-> \Junicode@@scale Junicode-ExpBoldItalic-tosf-ts1
+\DeclareFontShape{TS1}{Junicode-TOsF}{mediumsemiexpanded}{it}{
+ <-> \Junicode@@scale Junicode-SmExpMediumItalic-tosf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{boldexpanded}{it}{
- <-> alias * Junicode-TOsF/bx/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{mediumsemiexpanded}{n}{
+ <-> \Junicode@@scale Junicode-SmExpMedium-tosf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{bx}{n}{
- <-> \Junicode@@scale Junicode-ExpBold-tosf-ts1
+\DeclareFontShape{TS1}{Junicode-TOsF}{mediumsemiexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/mediumsemiexpanded/it
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{boldexpanded}{n}{
- <-> alias * Junicode-TOsF/bx/n
+
+% ---- lc = lightcondensed ----
+
+\DeclareFontShape{TS1}{Junicode-TOsF}{lc}{n}{
+ <-> \Junicode@@scale Junicode-CondLight-tosf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{bx}{sl}{
- <-> ssub * Junicode-TOsF/bx/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{lightcondensed}{n}{
+ <-> alias * Junicode-TOsF/lc/n
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{boldexpanded}{sl}{
- <-> ssub * Junicode-TOsF/boldexpanded/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{lc}{it}{
+ <-> \Junicode@@scale Junicode-CondLightItalic-tosf-ts1
+}{}
+
+\DeclareFontShape{TS1}{Junicode-TOsF}{lightcondensed}{it}{
+ <-> alias * Junicode-TOsF/lc/it
+}{}
+
+\DeclareFontShape{TS1}{Junicode-TOsF}{lc}{sl}{
+ <-> ssub * Junicode-TOsF/lc/it
+}{}
+
+\DeclareFontShape{TS1}{Junicode-TOsF}{lightcondensed}{sl}{
+ <-> ssub * Junicode-TOsF/lightcondensed/it
+}{}
+
+
+% ---- mediumsemicondensed ----
+
+\DeclareFontShape{TS1}{Junicode-TOsF}{mediumsemicondensed}{n}{
+ <-> \Junicode@@scale Junicode-SmCondMedium-tosf-ts1
+}{}
+
+\DeclareFontShape{TS1}{Junicode-TOsF}{mediumsemicondensed}{it}{
+ <-> \Junicode@@scale Junicode-SmCondMediumItalic-tosf-ts1
+}{}
+
+\DeclareFontShape{TS1}{Junicode-TOsF}{mediumsemicondensed}{sl}{
+ <-> ssub * Junicode-TOsF/mediumsemicondensed/it
}{}
@@ -335,141 +296,180 @@
}{}
-% ---- mediumsemiexpanded ----
+% ---- sx = semiexpanded ----
-\DeclareFontShape{TS1}{Junicode-TOsF}{mediumsemiexpanded}{it}{
- <-> \Junicode@@scale Junicode-SmExpMediumItalic-tosf-ts1
+\DeclareFontShape{TS1}{Junicode-TOsF}{sx}{it}{
+ <-> \Junicode@@scale Junicode-SmExpItalic-tosf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{mediumsemiexpanded}{n}{
- <-> \Junicode@@scale Junicode-SmExpMedium-tosf-ts1
+\DeclareFontShape{TS1}{Junicode-TOsF}{semiexpanded}{it}{
+ <-> alias * Junicode-TOsF/sx/it
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{mediumsemiexpanded}{sl}{
- <-> ssub * Junicode-TOsF/mediumsemiexpanded/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{sx}{n}{
+ <-> \Junicode@@scale Junicode-SmExp-tosf-ts1
}{}
+\DeclareFontShape{TS1}{Junicode-TOsF}{semiexpanded}{n}{
+ <-> alias * Junicode-TOsF/sx/n
+}{}
-% ---- mediumexpanded ----
+\DeclareFontShape{TS1}{Junicode-TOsF}{sx}{sl}{
+ <-> ssub * Junicode-TOsF/sx/it
+}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{mediumexpanded}{it}{
- <-> \Junicode@@scale Junicode-ExpMediumItalic-tosf-ts1
+\DeclareFontShape{TS1}{Junicode-TOsF}{semiexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/semiexpanded/it
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{mediumexpanded}{n}{
- <-> \Junicode@@scale Junicode-ExpMedium-tosf-ts1
+
+% ---- b = bold ----
+
+\DeclareFontShape{TS1}{Junicode-TOsF}{b}{n}{
+ <-> \Junicode@@scale Junicode-Bold-tosf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{mediumexpanded}{sl}{
- <-> ssub * Junicode-TOsF/mediumexpanded/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{bold}{n}{
+ <-> alias * Junicode-TOsF/b/n
}{}
+\DeclareFontShape{TS1}{Junicode-TOsF}{b}{it}{
+ <-> \Junicode@@scale Junicode-BoldItalic-tosf-ts1
+}{}
-% ---- sbsx = semiboldsemiexpanded ----
+\DeclareFontShape{TS1}{Junicode-TOsF}{bold}{it}{
+ <-> alias * Junicode-TOsF/b/it
+}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{sbsx}{it}{
- <-> \Junicode@@scale Junicode-SmExpSmBoldItalic-tosf-ts1
+\DeclareFontShape{TS1}{Junicode-TOsF}{b}{sl}{
+ <-> ssub * Junicode-TOsF/b/it
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{semiboldsemiexpanded}{it}{
- <-> alias * Junicode-TOsF/sbsx/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{bold}{sl}{
+ <-> ssub * Junicode-TOsF/bold/it
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{sbsx}{n}{
- <-> \Junicode@@scale Junicode-SmExpSmBold-tosf-ts1
+
+% ---- x = expanded ----
+
+\DeclareFontShape{TS1}{Junicode-TOsF}{x}{n}{
+ <-> \Junicode@@scale Junicode-Exp-tosf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{semiboldsemiexpanded}{n}{
- <-> alias * Junicode-TOsF/sbsx/n
+\DeclareFontShape{TS1}{Junicode-TOsF}{expanded}{n}{
+ <-> alias * Junicode-TOsF/x/n
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{sbsx}{sl}{
- <-> ssub * Junicode-TOsF/sbsx/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{x}{it}{
+ <-> \Junicode@@scale Junicode-ExpItalic-tosf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{semiboldsemiexpanded}{sl}{
- <-> ssub * Junicode-TOsF/semiboldsemiexpanded/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{expanded}{it}{
+ <-> alias * Junicode-TOsF/x/it
}{}
+\DeclareFontShape{TS1}{Junicode-TOsF}{x}{sl}{
+ <-> ssub * Junicode-TOsF/x/it
+}{}
-% ---- c = condensed ----
+\DeclareFontShape{TS1}{Junicode-TOsF}{expanded}{sl}{
+ <-> ssub * Junicode-TOsF/expanded/it
+}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{c}{n}{
- <-> \Junicode@@scale Junicode-Cond-tosf-ts1
+
+% ---- lsc = lightsemicondensed ----
+
+\DeclareFontShape{TS1}{Junicode-TOsF}{lsc}{it}{
+ <-> \Junicode@@scale Junicode-SmCondLightItalic-tosf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{condensed}{n}{
- <-> alias * Junicode-TOsF/c/n
+\DeclareFontShape{TS1}{Junicode-TOsF}{lightsemicondensed}{it}{
+ <-> alias * Junicode-TOsF/lsc/it
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{c}{it}{
- <-> \Junicode@@scale Junicode-CondItalic-tosf-ts1
+\DeclareFontShape{TS1}{Junicode-TOsF}{lsc}{n}{
+ <-> \Junicode@@scale Junicode-SmCondLight-tosf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{condensed}{it}{
- <-> alias * Junicode-TOsF/c/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{lightsemicondensed}{n}{
+ <-> alias * Junicode-TOsF/lsc/n
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{c}{sl}{
- <-> ssub * Junicode-TOsF/c/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{lsc}{sl}{
+ <-> ssub * Junicode-TOsF/lsc/it
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{condensed}{sl}{
- <-> ssub * Junicode-TOsF/condensed/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{lightsemicondensed}{sl}{
+ <-> ssub * Junicode-TOsF/lightsemicondensed/it
}{}
-% ---- x = expanded ----
+% ---- mediumexpanded ----
-\DeclareFontShape{TS1}{Junicode-TOsF}{x}{it}{
- <-> \Junicode@@scale Junicode-ExpItalic-tosf-ts1
+\DeclareFontShape{TS1}{Junicode-TOsF}{mediumexpanded}{it}{
+ <-> \Junicode@@scale Junicode-ExpMediumItalic-tosf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{expanded}{it}{
- <-> alias * Junicode-TOsF/x/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{mediumexpanded}{n}{
+ <-> \Junicode@@scale Junicode-ExpMedium-tosf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{x}{n}{
- <-> \Junicode@@scale Junicode-Exp-tosf-ts1
+\DeclareFontShape{TS1}{Junicode-TOsF}{mediumexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/mediumexpanded/it
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{expanded}{n}{
- <-> alias * Junicode-TOsF/x/n
+
+% ---- c = condensed ----
+
+\DeclareFontShape{TS1}{Junicode-TOsF}{c}{it}{
+ <-> \Junicode@@scale Junicode-CondItalic-tosf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{x}{sl}{
- <-> ssub * Junicode-TOsF/x/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{condensed}{it}{
+ <-> alias * Junicode-TOsF/c/it
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{expanded}{sl}{
- <-> ssub * Junicode-TOsF/expanded/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{c}{n}{
+ <-> \Junicode@@scale Junicode-Cond-tosf-ts1
}{}
+\DeclareFontShape{TS1}{Junicode-TOsF}{condensed}{n}{
+ <-> alias * Junicode-TOsF/c/n
+}{}
-% ---- sx = semiexpanded ----
+\DeclareFontShape{TS1}{Junicode-TOsF}{c}{sl}{
+ <-> ssub * Junicode-TOsF/c/it
+}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{sx}{it}{
- <-> \Junicode@@scale Junicode-SmExpItalic-tosf-ts1
+\DeclareFontShape{TS1}{Junicode-TOsF}{condensed}{sl}{
+ <-> ssub * Junicode-TOsF/condensed/it
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{semiexpanded}{it}{
- <-> alias * Junicode-TOsF/sx/it
+
+% ---- sbx = semiboldexpanded ----
+
+\DeclareFontShape{TS1}{Junicode-TOsF}{sbx}{it}{
+ <-> \Junicode@@scale Junicode-ExpSmBoldItalic-tosf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{sx}{n}{
- <-> \Junicode@@scale Junicode-SmExp-tosf-ts1
+\DeclareFontShape{TS1}{Junicode-TOsF}{semiboldexpanded}{it}{
+ <-> alias * Junicode-TOsF/sbx/it
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{semiexpanded}{n}{
- <-> alias * Junicode-TOsF/sx/n
+\DeclareFontShape{TS1}{Junicode-TOsF}{sbx}{n}{
+ <-> \Junicode@@scale Junicode-ExpSmBold-tosf-ts1
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{sx}{sl}{
- <-> ssub * Junicode-TOsF/sx/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{semiboldexpanded}{n}{
+ <-> alias * Junicode-TOsF/sbx/n
}{}
-\DeclareFontShape{TS1}{Junicode-TOsF}{semiexpanded}{sl}{
- <-> ssub * Junicode-TOsF/semiexpanded/it
+\DeclareFontShape{TS1}{Junicode-TOsF}{sbx}{sl}{
+ <-> ssub * Junicode-TOsF/sbx/it
+}{}
+
+\DeclareFontShape{TS1}{Junicode-TOsF}{semiboldexpanded}{sl}{
+ <-> ssub * Junicode-TOsF/semiboldexpanded/it
}{}
diff --git a/Master/texmf-dist/tex/latex/jupynotex/jupynotex.py b/Master/texmf-dist/tex/latex/jupynotex/jupynotex.py
index 036be088ce5..53f27dec913 100644
--- a/Master/texmf-dist/tex/latex/jupynotex/jupynotex.py
+++ b/Master/texmf-dist/tex/latex/jupynotex/jupynotex.py
@@ -1,64 +1,202 @@
-# Copyright 2020 Facundo Batista
+# Copyright 2020-2024 Facundo Batista
# All Rights Reserved
# Licensed under Apache 2.0
-"""USAGE: jupynote.py notebook.ipynb cells
-
- cells is a string with which cells to include, separate groups
- with comma, ranges with dash (with defaults to start and end.
-"""
+"""Convert a jupyter notebook into latex for inclusion in documents."""
+import argparse
import base64
import json
+import pathlib
+import re
+import subprocess
import sys
import tempfile
+import textwrap
import traceback
+# message to help people to report potential problems
+REPORT_MSG = """
+
+Please report the issue in
+https://github.com/facundobatista/jupynotex/issues/new
+including the latex log. Thanks!
+"""
+
+# basic verbatim start/end
+VERBATIM_BEGIN = [r"\begin{footnotesize}", r"\begin{verbatim}"]
+VERBATIM_END = [r"\end{verbatim}", r"\end{footnotesize}"]
+
+# highlighers for different languages (block beginning and ending)
+HIGHLIGHTERS = {
+ 'python': ([r'\begin{minted}[fontsize=\footnotesize]{python}'], [r'\end{minted}']),
+ None: (VERBATIM_BEGIN, VERBATIM_END),
+}
+
+# the different formats to be used when error or all ok
+FORMAT_ERROR = r"colback=red!5!white,colframe=red!75!"
+FORMAT_OK = (
+ r"coltitle=red!75!black, colbacktitle=black!10!white, "
+ r"halign title=right, fonttitle=\sffamily\mdseries\scshape\footnotesize")
+
+# a little mark to put in the continuation line(s) when text is wrapped
+WRAP_MARK = "↳"
+
+# the options available for command line
+CMDLINE_OPTION_NAMES = {
+ "output-text-limit": "The column limit for the output text of a cell",
+}
+
+
+def _validator_positive_int(value):
+ """Validate value is a positive integer."""
+ value = value.strip()
+ if not value:
+ return
-def _verbatimize(lines):
+ value = int(value)
+ if value <= 0:
+ raise ValueError("Value must be greater than zero.")
+ return value
+
+
+def _process_plain_text(lines, config_options=None):
"""Wrap a series of lines around a verbatim indication."""
- result = [r"\begin{verbatim}"]
+ if config_options is None:
+ config_options = {}
+
+ result = []
+ result.extend(VERBATIM_BEGIN)
for line in lines:
- result.append(line.rstrip())
- result.append(r"\end{verbatim}")
+ line = line.rstrip()
+
+ # clean color escape codes (\u001b plus \[Nm where N are one or more digits)
+ line = re.sub(r"\x1b\[[\d;]+m", "", line)
+
+ # split too long lines
+ limit = config_options.get("output-text-limit")
+ if limit and line:
+ firstline, *restlines = textwrap.wrap(line, limit)
+ lines = [firstline]
+ for line in restlines:
+ lines.append(f" {WRAP_MARK} {line}")
+ else:
+ lines = [line]
+
+ result.extend(lines)
+ result.extend(VERBATIM_END)
return result
-def _save_content(data):
- """Save the received b64encoded data to a temp file."""
- _, fname = tempfile.mkstemp(suffix='.png')
- with open(fname, 'wb') as fh:
- fh.write(base64.b64decode(data))
- return fname
+class ItemProcessor:
+ """Process each item according to its type with a (series of) function(s)."""
+
+ def __init__(self, cell_options, config_options):
+ self.cell_options = cell_options
+ self.config_options = config_options
+
+ def get_item_data(self, item):
+ """Extract item information using different processors."""
+
+ data = item['data']
+ for mimetype, *functions in self.PROCESSORS:
+ if mimetype in data:
+ content = data[mimetype]
+ break
+ else:
+ raise ValueError("Image type not supported: {}".format(data.keys()))
+
+ for func in functions:
+ content = func(self, content)
+
+ return content
+
+ def process_plain_text(self, lines):
+ """Process plain text."""
+ return _process_plain_text(lines, self.config_options)
+
+ def process_png(self, image_data):
+ """Process a PNG: just save the received b64encoded data to a temp file."""
+ _, fname = tempfile.mkstemp(suffix='.png')
+ with open(fname, 'wb') as fh:
+ fh.write(base64.b64decode(image_data))
+ return fname
+
+ def process_svg(self, image_data):
+ """Process a SVG: save the data, transform to PDF, and then use that."""
+ _, svg_fname = tempfile.mkstemp(suffix='.svg')
+ _, pdf_fname = tempfile.mkstemp(suffix='.pdf')
+ raw_svg = ''.join(image_data).encode('utf8')
+ with open(svg_fname, 'wb') as fh:
+ fh.write(raw_svg)
+
+ cmd = ['inkscape', '--export-text-to-path', '--export-pdf={}'.format(pdf_fname), svg_fname]
+ subprocess.run(cmd)
+
+ return pdf_fname
+
+ def include_graphics(self, fname):
+ """Wrap a filename in an includegraphics structure."""
+ fname_no_backslashes = fname.replace("\\", "/") # do not leave backslashes in Windows
+ width = self.cell_options.get("output-image-size", r"1\textwidth")
+ return r"\includegraphics[width={}]{{{}}}".format(width, fname_no_backslashes)
+
+ def listwrap(self, item):
+ """Wrap an item in a list for processors that return that single item."""
+ return [item]
+
+ # mimetype and list of functions to apply; order is important here as we want to
+ # prioritize getting some mimetypes over others when multiple are present
+ PROCESSORS = [
+ ('text/latex',),
+ ('image/svg+xml', process_svg, include_graphics, listwrap),
+ ('image/png', process_png, include_graphics, listwrap),
+ ('text/plain', process_plain_text),
+ ]
class Notebook:
"""The notebook converter to latex."""
- def __init__(self, path):
- with open(path, 'rt', encoding='utf8') as fh:
- nb_data = json.load(fh)
+ GLOBAL_CONFIGS = {
+ "output-text-limit": _validator_positive_int,
+ }
+
+ def __init__(self, notebook_path, config_options):
+ self.config_options = self._validate_config(config_options)
+ self.cell_options = {}
+ nb_data = json.loads(notebook_path.read_text())
- self._cells = nb_data['cells']
+ # get the languaje, to highlight
+ lang = nb_data['metadata']['language_info']['name']
+ self._highlight_delimiters = HIGHLIGHTERS.get(lang, HIGHLIGHTERS[None])
- def __len__(self):
- return len(self._cells)
+ # get all cells excluding markdown ones
+ self._cells = [x for x in nb_data['cells'] if x['cell_type'] != 'markdown']
+
+ def _validate_config(self, config):
+ """Validate received configuration."""
+ for key, value in list(config.items()):
+ validator = self.GLOBAL_CONFIGS[key]
+ new_value = validator(value)
+ config[key] = new_value
+ return config
def _proc_src(self, content):
"""Process the source of a cell."""
source = content['source']
result = []
if content['cell_type'] == 'code':
- result.extend(_verbatimize(source))
- elif content['cell_type'] == 'markdown':
- # XXX: maybe we could parse this?
- result.extend(_verbatimize(source))
+ begin, end = self._highlight_delimiters
+ result.extend(begin)
+ result.extend(line.rstrip() for line in source)
+ result.extend(end)
else:
raise ValueError(
"Cell type not supported when processing source: {!r}".format(
content['cell_type']))
- return '\n'.join(result) + '\n'
+ return '\n'.join(result)
def _proc_out(self, content):
"""Process the output of a cell."""
@@ -67,27 +205,30 @@ class Notebook:
return
result = []
+ processor = ItemProcessor(self.cell_options, self.config_options)
for item in outputs:
output_type = item['output_type']
- if output_type == 'execute_result':
- data = item['data']
- if 'image/png' in data:
- fname = _save_content(data['image/png'])
- result.append(r"\includegraphics{{{}}}".format(fname))
- elif 'text/latex' in data:
- result.extend(data["text/latex"])
- else:
- result.extend(_verbatimize(data["text/plain"]))
+ if output_type in ('execute_result', 'display_data'):
+ more_content = processor.get_item_data(item)
elif output_type == 'stream':
- result.extend(_verbatimize(x.rstrip() for x in item["text"]))
- elif output_type == 'display_data':
- data = item['data']
- fname = _save_content(data['image/png'])
- result.append(r"\includegraphics{{{}}}".format(fname))
+ more_content = processor.process_plain_text(item["text"])
+ elif output_type == 'error':
+ raw_traceback = item['traceback']
+ tback_lines = []
+ for raw_line in raw_traceback:
+ internal_lines = raw_line.split('\n')
+ for line in internal_lines:
+ line = re.sub(r"\x1b\[\d.*?m", "", line) # sanitize
+ if set(line) == {'-'}:
+ # ignore separator, as our graphical box already has one
+ continue
+ tback_lines.append(line)
+ more_content = processor.process_plain_text(tback_lines)
else:
raise ValueError("Output type not supported in item {!r}".format(item))
+ result.extend(more_content)
- return '\n'.join(result) + '\n'
+ return '\n'.join(result)
def get(self, cell_idx):
"""Return the content from a specific cell in the notebook.
@@ -99,58 +240,71 @@ class Notebook:
output = self._proc_out(content)
return source, output
+ def parse_cells(self, spec):
+ """Convert the cells spec to a range of ints."""
+ if not spec:
+ raise ValueError("Empty cells spec not allowed")
+
+ maxlen = len(self._cells)
+
+ cells = set()
+ options = {}
+ groups = [x.strip() for x in spec.split(',')]
+ valid_chars = set('0123456789-,')
+ for group in groups:
+ if '=' in group:
+ k, v = group.split("=", maxsplit=1)
+ options[k] = v
+ continue
-def _parse_cells(spec, maxlen):
- """Convert the cells spec to a range of ints."""
- if not spec:
- raise ValueError("Empty cells spec not allowed")
- if set(spec) - set('0123456789-,'):
- raise ValueError(
- "Found forbidden characters in cells definition (allowed digits, '-' and ',')")
-
- cells = set()
- groups = spec.split(',')
- for group in groups:
- if '-' in group:
- cfrom, cto = group.split('-')
- cfrom = 1 if cfrom == '' else int(cfrom)
- cto = maxlen if cto == '' else int(cto)
- if cfrom >= cto:
+ if set(group) - valid_chars:
raise ValueError(
- "Range 'from' need to be smaller than 'to' (got {!r})".format(group))
- cells.update(range(cfrom, cto + 1))
- else:
- cells.add(int(group))
- cells = sorted(cells)
+ "Found forbidden characters in cells definition (allowed digits, '-' and ',')")
+
+ if '-' in group:
+ cfrom, cto = group.split('-')
+ cfrom = 1 if cfrom == '' else int(cfrom)
+ cto = maxlen if cto == '' else int(cto)
+ if cfrom >= cto:
+ raise ValueError(
+ "Range 'from' need to be smaller than 'to' (got {!r})".format(group))
+ cells.update(range(cfrom, cto + 1))
+ else:
+ cells.add(int(group))
+ cells = sorted(cells)
- if any(x < 1 for x in cells):
- raise ValueError("Cells need to be >=1")
- if maxlen < cells[-1]:
- raise ValueError(
- "Notebook loaded of len {}, smaller than requested cells: {}".format(maxlen, cells))
+ if any(x < 1 for x in cells):
+ raise ValueError("Cells need to be >=1")
+ if maxlen < cells[-1]:
+ raise ValueError(
+ f"Notebook loaded of len {maxlen}, smaller than requested cells: {cells}")
- return cells
+ self.cell_options = options
+ return cells
-def main(notebook_path, cells_spec):
+def main(notebook_path, cells_spec, config_options):
"""Main entry point."""
- nb = Notebook(notebook_path)
- cells = _parse_cells(cells_spec, len(nb))
+ nb = Notebook(notebook_path, config_options)
+ cells = nb.parse_cells(cells_spec)
for cell in cells:
try:
src, out = nb.get(cell)
- except Exception:
+ except Exception as exc:
title = "ERROR when parsing cell {}".format(cell)
- print(
- r"\begin{{tcolorbox}}"
- r"[colback=red!5!white,colframe=red!75!,title={{{}}}]".format(title))
- tb = traceback.format_exc()
- print('\n'.join(_verbatimize(tb.split('\n'))))
+ print(r"\begin{{tcolorbox}}[{}, title={{{}}}]".format(FORMAT_ERROR, title))
+ print(exc)
+ _parts = _process_plain_text(REPORT_MSG.split('\n'))
+ print('\n'.join(_parts))
print(r"\end{tcolorbox}")
+
+ # send title and traceback to stderr, which will appear in compilation log
+ tb = traceback.format_exc()
+ print(tb, file=sys.stderr)
continue
- print(r"\begin{{tcolorbox}}[title=Cell {{{:02d}}}]".format(cell))
+ print(r"\begin{{tcolorbox}}[{}, title=Cell {{{:02d}}}]".format(FORMAT_OK, cell))
print(src)
if out:
print(r"\tcblower")
@@ -159,8 +313,19 @@ def main(notebook_path, cells_spec):
if __name__ == "__main__":
- if len(sys.argv) != 3:
- print(__doc__)
- exit()
+ parser = argparse.ArgumentParser()
+ parser.add_argument("notebook_path", type=pathlib.Path, help="The path to the notebook.")
+ parser.add_argument(
+ "cells_spec",
+ type=str,
+ help=(
+ "A string specifying which cells to include; use comma to separate groups, "
+ "dash for ranges (with defaults to start and end)"
+ )
+ )
+ for option, explanation in CMDLINE_OPTION_NAMES.items():
+ parser.add_argument(option, type=str, help=explanation)
+ args = parser.parse_args()
- main(*sys.argv[1:3])
+ config_options = {option: getattr(args, option) for option in CMDLINE_OPTION_NAMES}
+ main(args.notebook_path, args.cells_spec, config_options)
diff --git a/Master/texmf-dist/tex/latex/jupynotex/jupynotex.sty b/Master/texmf-dist/tex/latex/jupynotex/jupynotex.sty
index 205343d0974..b79f622af60 100644
--- a/Master/texmf-dist/tex/latex/jupynotex/jupynotex.sty
+++ b/Master/texmf-dist/tex/latex/jupynotex/jupynotex.sty
@@ -1,7 +1,21 @@
-\ProvidesPackage{jupynotex}[0.1]
+\ProvidesPackage{jupynotex}[1.0]
\usepackage{tcolorbox}
+\usepackage{pgfopts}
+
+\newcommand*\jupynotex@outputtextlimit@value{}
+
+
+\pgfkeys{
+ /jupynotex/.cd ,
+ output-text-limit/.store in=\jupynotex@outputtextlimit@value
+}
+
+\ProcessPgfPackageOptions{/jupynotex}
\newcommand{\jupynotex}[2][-]{
- \input|"python3 jupynotex.py #2 #1"
+ \input|"python3 jupynotex.py '#2' '#1' '\jupynotex@outputtextlimit@value'"
}
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/latex/jwjournal/jwjournal.cls b/Master/texmf-dist/tex/latex/jwjournal/jwjournal.cls
index 3b968ce12e7..3e84c935ba2 100644
--- a/Master/texmf-dist/tex/latex/jwjournal/jwjournal.cls
+++ b/Master/texmf-dist/tex/latex/jwjournal/jwjournal.cls
@@ -1,6 +1,6 @@
%%
-%% Copyright (C) 2023 by Jinwen XU
-%% -------------------------------
+%% Copyright (C) 2023-2024 by Jinwen XU
+%% ------------------------------------
%%
%% This file may be distributed and/or modified under the conditions of
%% the LaTeX Project Public License, either version 1.3c of this license
@@ -12,7 +12,7 @@
\NeedsTeXFormat{LaTeX2e}[2022-06-01]
\ProvidesExplClass
{jwjournal}
- {2023/12/19} {}
+ {2024/09/01} {}
{JW's journal class}
\keys_define:nn { jwjournal }
@@ -33,11 +33,11 @@
\sys_if_engine_pdftex:TF
{
- \PassOptionsToClass { use indent = false } { minimart }
+ % \PassOptionsToClass { use indent = false } { minimart }
\LoadClass { minimart }
}
{
- \PassOptionsToClass { use indent = false } { einfart }
+ % \PassOptionsToClass { use indent = false } { einfart }
\LoadClass { einfart }
}
@@ -554,14 +554,14 @@
}
\regex_replace_once:nnN { ❄️ (.*) ❄️ } { ❄️ \1 } \l_jwjournal_tmp_tl
- \regex_replace_once:nnN
- { ❄️ (\ *)? (\d{4}-\d{1,2}-\d{1,2}) (\ *)? (.*) }
- { \c{JWJournalEntry} {\2} {\4} }
- \l_jwjournal_tmp_tl
- \regex_replace_once:nnN
- { ❄️ (\ *)? (\d{1,2}-\d{1,2}-\d{4}) (\ *)? (.*) }
- { \c{JWJournalEntry} {\2} {\4} }
- \l_jwjournal_tmp_tl
+ % \regex_replace_once:nnN
+ % { ❄️ (\ *)? (\d{4}-\d{1,2}-\d{1,2}) (\ *)? (.*) }
+ % { \c{JWJournalEntry} {\2} {\4} }
+ % \l_jwjournal_tmp_tl
+ % \regex_replace_once:nnN
+ % { ❄️ (\ *)? (\d{1,2}-\d{1,2}-\d{4}) (\ *)? (.*) }
+ % { \c{JWJournalEntry} {\2} {\4} }
+ % \l_jwjournal_tmp_tl
\regex_replace_once:nnN
{ ❄️ (\ *)? (\d{4} \D \d{1,2} \D \d{1,2}) (\ *)? (.*) }
{ \c{JWJournalEntry} {\2} {\4} }
diff --git a/Master/texmf-dist/tex/latex/keytheorems/class-support/keythms-amsart-support.tex b/Master/texmf-dist/tex/latex/keytheorems/class-support/keythms-amsart-support.tex
new file mode 100644
index 00000000000..da648a6205b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/keytheorems/class-support/keythms-amsart-support.tex
@@ -0,0 +1,49 @@
+% Maintained by Matthew Bertucci, 2024-present
+% Please report all issues and feature requests at https://github.com/mbertucci47/keytheorems
+% This work is licensed under the LPPL version 1.3c or later: https://www.latex-project.org/lppl.txt
+\ProvidesExplFile{keythms-amsart-support}{2024-09-30}{0.1.5}
+ {keytheorems~support~for~the~amsart~class}
+
+\__keythms_support_AMSshared_code:
+
+\IfClassLoadedTF { acmart }
+ { % acmart loads amsart
+ \keytheoremset{overload} % since acmart predefines several theorems
+ \prop_gput_from_keyval:Nn \g__keythms_thmstyle_defaultkeys_prop
+ {
+ bodyfont = \@acmplainbodyfont,
+ headfont = \@acmplainheadfont,
+ headindent = \@acmplainindent,
+ notefont = \@acmplainnotefont,
+ postheadspace = .5em,
+ spaceabove = .5\baselineskip plus .2\baselineskip minus .2\baselineskip,
+ spacebelow = .5\baselineskip plus .2\baselineskip minus .2\baselineskip,
+ }
+ \keys_define:nn { keytheorems/thmstyle }
+ {
+ inherit-style / acmplain .meta:n = {},
+ inherit-style / acmdefinition .meta:n =
+ {
+ bodyfont = \@acmdefinitionbodyfont,
+ headindent = \@acmdefinitionindent,
+ headfont = \@acmdefinitionheadfont,
+ notefont = \@acmdefinitionnotefont,
+ },
+ }
+ }
+ {
+ \prop_gput_from_keyval:Nn \g__keythms_thmstyle_defaultkeys_prop
+ {
+ spaceabove = .5\baselineskip plus .2\baselineskip minus .2\baselineskip,
+ spacebelow = .5\baselineskip plus .2\baselineskip minus .2\baselineskip,
+ }
+ }
+
+\keys_define:nn { keytheorems/thmstyle }
+ {
+ inherit-style / remark .meta:n =
+ {
+ bodyfont = \normalfont,
+ headfont = \itshape,
+ }
+ } \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/keytheorems/class-support/keythms-amsbook-support.tex b/Master/texmf-dist/tex/latex/keytheorems/class-support/keythms-amsbook-support.tex
new file mode 100644
index 00000000000..8937f2326e9
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/keytheorems/class-support/keythms-amsbook-support.tex
@@ -0,0 +1,23 @@
+% Maintained by Matthew Bertucci, 2024-present
+% Please report all issues and feature requests at https://github.com/mbertucci47/keytheorems
+% This work is licensed under the LPPL version 1.3c or later: https://www.latex-project.org/lppl.txt
+\ProvidesExplFile{keythms-amsbook-support}{2024-09-30}{0.1.5}
+ {keytheorems~support~for~the~amsbook~class}
+
+\__keythms_support_AMSshared_code:
+
+\prop_gput_from_keyval:Nn \g__keythms_thmstyle_defaultkeys_prop
+ {
+ headfont = \scshape,
+ headindent = \parindent,
+ spaceabove = .5\baselineskip plus .2\baselineskip minus .2\baselineskip,
+ spacebelow = .5\baselineskip plus .2\baselineskip minus .2\baselineskip,
+ }
+
+\keys_define:nn { keytheorems/thmstyle }
+ {
+ inherit-style / remark .meta:n =
+ {
+ bodyfont = \normalfont,
+ },
+ } \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/keytheorems/class-support/keythms-amsproc-support.tex b/Master/texmf-dist/tex/latex/keytheorems/class-support/keythms-amsproc-support.tex
new file mode 100644
index 00000000000..07b258282bc
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/keytheorems/class-support/keythms-amsproc-support.tex
@@ -0,0 +1,23 @@
+% Maintained by Matthew Bertucci, 2024-present
+% Please report all issues and feature requests at https://github.com/mbertucci47/keytheorems
+% This work is licensed under the LPPL version 1.3c or later: https://www.latex-project.org/lppl.txt
+\ProvidesExplFile{keythms-amsproc-support}{2024-09-30}{0.1.5}
+ {keytheorems~support~for~the~amsproc~class}
+
+\__keythms_support_AMSshared_code:
+
+\prop_gput_from_keyval:Nn \g__keythms_thmstyle_defaultkeys_prop
+ {
+ headfont = \scshape,
+ headindent = \parindent,
+ spaceabove = .5\baselineskip plus .2\baselineskip minus .2\baselineskip,
+ spacebelow = .5\baselineskip plus .2\baselineskip minus .2\baselineskip,
+ }
+
+\keys_define:nn { keytheorems/thmstyle }
+ {
+ inherit-style / remark .meta:n =
+ {
+ bodyfont = \normalfont,
+ },
+ } \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/keytheorems/class-support/keythms-memoir-support.tex b/Master/texmf-dist/tex/latex/keytheorems/class-support/keythms-memoir-support.tex
new file mode 100644
index 00000000000..9b84a3ba405
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/keytheorems/class-support/keythms-memoir-support.tex
@@ -0,0 +1,49 @@
+% Maintained by Matthew Bertucci, 2024-present
+% Please report all issues and feature requests at https://github.com/mbertucci47/keytheorems
+% This work is licensed under the LPPL version 1.3c or later: https://www.latex-project.org/lppl.txt
+\ProvidesExplFile{keythms-memoir-support}{2024-09-30}{0.1.5}
+ {keytheorems~support~for~the~memoir~class}
+
+\bool_new:N \l__keythms_support_titlecode_bool
+
+\keys_define:nn { keytheorems/listof }
+ {
+ indent .initial:n = 0pt,
+ title-code .code:n =
+ {
+ \bool_set_true:N \l__keythms_support_titlecode_bool
+ \cs_set:Npn \__keythms_listof_titlecmd:n ##1 { #1 }
+ },
+ }
+
+% use memoir's list function; not using \newlistentry, though
+\newlistof{ keythms_support_memoir_listof:w }{ thlist }
+ { \l__keythms_listof_title_tl }
+
+\RenewDocumentCommand \listofkeytheorems { O{} }
+ {
+ \bool_gset_true:N \g__keythms_listof_writefile_bool
+ \group_begin:
+ \keys_set:nn { keytheorems/listof } { #1 }
+ \cs_set_protected:Npn \KeyThmsContentsLine ##1 { ##1 }
+ \bool_if:NF \l__keythms_listof_nochapskip_bool
+ {
+ \cs_set_eq:NN \KeyThmsAddvspace \addvspace
+ }
+ \bool_if:NTF \l__keythms_listof_notitle_bool
+ {
+ \cs_set:Npn \@thlistmaketitle {}
+ \keythms_support_memoir_listof:w*
+ }
+ {
+ \bool_if:NT \l__keythms_support_titlecode_bool
+ {
+ \cs_set:Npn \@thlistmaketitle
+ { \__keythms_listof_titlecmd:n { \l__keythms_listof_title_tl } }
+ }
+ \bool_if:NTF \l__keythms_listof_notoc_bool
+ { \keythms_support_memoir_listof:w* }
+ { \keythms_support_memoir_listof:w }
+ }
+ \group_end:
+ } \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/keytheorems/keytheorems.sty b/Master/texmf-dist/tex/latex/keytheorems/keytheorems.sty
new file mode 100644
index 00000000000..7059d951a0a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/keytheorems/keytheorems.sty
@@ -0,0 +1,2395 @@
+% Maintained by Matthew Bertucci, 2024-present
+% Please report all issues and feature requests at https://github.com/mbertucci47/keytheorems
+% This work is licensed under the LPPL version 1.3c or later: https://www.latex-project.org/lppl.txt
+\NeedsTeXFormat{LaTeX2e}[2023-06-01]
+\ProvidesExplPackage{keytheorems}{2024-09-30}{0.1.5}{l3keys interface to amsthm}
+
+\IfFormatAtLeastTF { 2024-06-01 } { }
+ {
+ \RequirePackage{nameref} % to avoid ltproperties in code below
+ \cs_generate_variant:Nn \cs_set:Npn { Npe }
+ \cs_generate_variant:Nn \iow_shipout:Nn { Ne }
+ \cs_generate_variant:Nn \keys_set:nn { ne }
+ \cs_generate_variant:Nn \msg_warning:nnn { nne }
+ \cs_generate_variant:Nn \tl_put_right:Nn { Ne }
+ \ProvideDocumentCommand \IfPackageLoadedT { m m }
+ { \IfPackageLoadedTF{#1}{#2}{ } }
+ \ProvideDocumentCommand \IfPackageLoadedF { m m }
+ { \IfPackageLoadedTF{#1}{ }{#2} }
+ \ProvideDocumentCommand \IfClassLoadedT { m m }
+ { \IfClassLoadedTF{#1}{#2}{ } }
+ }
+\RequirePackage{aliascnt}
+\RequirePackage{amsthm} % ams classes have way of ignoring this
+\RequirePackage{refcount}
+\RequirePackage{translations}
+
+%%%%%%%%%%%%%%%%%%%%%%
+%%% Error Messages %%%
+%%%%%%%%%%%%%%%%%%%%%%
+
+\msg_new:nnn { keytheorems } { thmtools-before }
+ {
+ keytheorems~is~not~compatible~with~thmtools.~
+ Try~replacing~\protect\usepackage{thmtools}~with~
+ \protect\usepackage[thmtools-compat]{keytheorems}.
+ }
+\msg_new:nnn { keytheorems } { thmtools-after }
+ {
+ keytheorems~is~not~compatible~with~thmtools.~
+ This~will~not~work~as~you~think!~
+ Try~replacing~\protect\usepackage{thmtools}~with~
+ \protect\usepackage[thmtools-compat]{keytheorems}.
+ }
+\msg_new:nnn { keytheorems } { no-stored-theorem }
+ {
+ No~stored~theorem~'#1'~found!~
+ Try~compiling~again.~If~that~doesn't~work,~
+ check~the~spelling~of~'#1'.
+ }
+\msg_new:nnn { keytheorems } { no-prop-for-stored-theorem }
+ {
+ No~property~'#1'~found~for~stored~theorem~'#2'.
+ }
+\msg_new:nnn { keytheorems } { store-reversed-not-got }
+ {
+ 'store*=#1'~only~makes~sense~if~you've~called~\protect\getkeytheorem{#1}.~
+ Check~that~\protect\getkeytheorem{#1}~is~called~and~compile~again.
+ }
+\msg_new:nnn { keytheorems } { restate-body-never-got }
+ {
+ With~'store*=#1',~\protect\getkeytheorem[body]{#1}~only~makes~sense~if~
+ \protect\getkeytheorem{#1}~has~been~called.~
+ Check~that~\protect\getkeytheorem{#1}~is~called~and~compile~again.
+ }
+\msg_new:nnn { keytheorems } { store-reversed-called-twice }
+ {
+ With~'store*=#1',~\protect\getkeytheorem{#1}~can~be~called~only~once.
+ }
+\msg_new:nnn { keytheorems } { undefined-thm-hook }
+ {
+ No~theorem~hook~'#1'.~Check~the~spelling.~
+ Should~be~one~of~'prehead',~'posthead',~'prefoot',~'postfoot',~or'restated'.
+ }
+\msg_new:nnn { keytheorems } { hyperref-Autoref }
+ {
+ You~have~not~loaded~hyperref.~The~\protect\Autoref\space command~needs~
+ hyperref~to~work.
+ }
+\msg_new:nnn { keytheorems } { no-Autorefname }
+ {
+ No~Autoref~name~for~'#1'.~
+ Please~define~\c_backslash_str #1Autorefname.
+ }
+\msg_new:nnn { keytheorems } { thmstyle-undefined }
+ {
+ Theorem~style~'#1'~undefined.~
+ Use~\protect\newkeytheoremstyle\space instead.
+ }
+\msg_new:nnn { keytheorems } { thmstyle-defined }
+ {
+ Theorem~style~'#1'~already~defined.~
+ Use~\protect\renewkeytheoremstyle\space instead.
+ }
+\msg_new:nnn { keytheorems } { title-code-with-AMS }
+ {
+ The~'title-code'~key~has~no~effect~with~an~AMS~class.
+ }
+
+% Error if thmtools loaded since compilation hangs.
+% If thmtools loaded after, produce warning.
+\IfPackageLoadedTF { thmtools }
+ {
+ \msg_fatal:nn { keytheorems } { thmtools-before }
+ }
+ {
+ \hook_gput_code:nnn { package/thmtools/before } { . }
+ {
+ \msg_warning:nn { keytheorems } { thmtools-after }
+ }
+ }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%
+%%% Declare Variables %%%
+%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\tl_new:N \l__keythms_tmpa_tl
+
+\bool_new:N \g__keythms_listof_writefile_bool
+\bool_gset_false:N \g__keythms_listof_writefile_bool
+\bool_new:N \g__keythms_thmtoolscompat_bool
+\bool_gset_false:N \g__keythms_thmtoolscompat_bool
+\bool_new:N \l__keythms_listofheading_storereversed_bool
+\bool_new:N \l__keythms_thm_numbered_bool
+\bool_new:N \l__keythms_thm_unlessunique_bool
+\bool_new:N \l__keythms_thmuse_listhack_bool
+\bool_new:N \l__keythms_thmuse_restating_bool
+\clist_new:N \g__keythms_restatecounters_clist
+\clist_new:N \l__keythms_thmstyle_savedkeys_clist
+\iow_new:N \g__keythms_listof_stream
+\prop_new:N \g__keythms_thmnames_prop
+\prop_new:N \g__keythms_thmstyle_defaultkeys_prop
+\prop_new:N \g__keythms_thmuse_othercounters_prop
+\prop_new:N \l__keythms_restate_counters_prop
+\tl_new:N \l__keythms_thm_currentthmstyle_tl
+\tl_new:N \l__keythms_thm_defaultkeys_tl
+\tl_new:N \l__keythms_thm_envname_tl
+\tl_new:N \l__keythms_thmstyle_defaultkeys_tl
+\tl_new:N \l__keythms_thmstyle_lnotebrace_tl
+\tl_new:N \l__keythms_thmstyle_rnotebrace_tl
+\tl_new:N \l_keythms_thmuse_envname_tl
+\tl_new:N \g__keythms_thmuse_temprestatedata_tl
+\tl_new:N \g__keythms_thmuse_temprestatedatareversed_tl
+
+\newcounter{keythms_restate_dummyctr}
+\cs_gset:Npn \theHkeythms_restate_dummyctr
+ { restate.\arabic{keythms_restate_dummyctr} }
+\cs_gset:Npn \thekeythms_restate_dummyctr { }
+\newcounter{keythms_continues_dummyctr}
+\cs_gset:Npn \theHkeythms_continues_dummyctr
+ { continues.\arabic{keythms_continues_dummyctr} }
+\cs_gset:Npn \thekeythms_continues_dummyctr { }
+\newcounter{keythms_unnumbered_dummyctr}
+\cs_gset:Npn \theHkeythms_unnumbered_dummyctr
+ { unnumbered.\arabic{keythms_unnumbered_dummyctr} }
+\cs_gset:Npn \thekeythms_unnumbered_dummyctr { }
+
+\cs_generate_variant:Nn \hook_gput_code:nnn { nnV }
+\cs_generate_variant:Nn \keys_precompile:nnN { nv, nVc, nnc, ne }
+
+%%%%%%%%%%%%%%
+%%% Styles %%%
+%%%%%%%%%%%%%%
+
+\cs_new_protected:Npn \__keythms_thmstyle_setbraces:nn #1#2
+ { % #1 = left brace, #2 = right brace
+ \tl_set:Nn \l__keythms_thmstyle_lnotebrace_tl { #1 }
+ \tl_set:Nn \l__keythms_thmstyle_rnotebrace_tl { #2 }
+ }
+\cs_new_protected:Npn \keythms_thmstyle_savethmkey_reqval:n #1
+ { % #1 = key value
+ \clist_put_right:No \l__keythms_thmstyle_savedkeys_clist
+ { \l_keys_key_str = { #1 } }
+ }
+\cs_new_protected:Npn \keythms_thmstyle_savethmkey_optval:n #1
+ { % #1 = key value
+ \tl_if_empty:NTF \l_keys_value_tl
+ {
+ \clist_put_right:No \l__keythms_thmstyle_savedkeys_clist
+ { \l_keys_key_str }
+ }
+ {
+ \clist_put_right:No \l__keythms_thmstyle_savedkeys_clist
+ { \l_keys_key_str = { #1 } }
+ }
+ }
+
+\keys_define:nn { keytheorems/thmstyle }
+ {
+ bodyfont .tl_set:N = \l__keythms_thmstyle_bodyfont_tl,
+ break .meta:n = { postheadspace = \newline }, % add error if postheadspace set
+ break .value_forbidden:n = true,
+ headfont .tl_set:N = \l__keythms_thmstyle_headfont_tl,
+ headformat .meta:n = { headstyle = #1 },
+ headindent .tl_set:N = \l__keythms_thmstyle_headindent_tl,
+ headpunct .tl_set:N = \l__keythms_thmstyle_headpunct_tl,
+ headstyle .choice:,
+ headstyle / margin .code:n =
+ {
+ \cs_set:Nn \keythms_thmstyle_headcmd:nnn
+ { \makebox[0pt][r]{\NUMBER\ }\NAME\NOTE }
+ },
+ headstyle / swapnumber .code:n =
+ {
+ \cs_set:Nn \keythms_thmstyle_headcmd:nnn { \NUMBER\ \NAME\NOTE }
+ },
+ headstyle / unknown .cs_set:Np = \keythms_thmstyle_headcmd:nnn #1#2#3,
+ inherit-style .choice:,
+ inherit-style / plain .meta:n = {},
+ inherit-style / definition .meta:n = { bodyfont = \normalfont },
+ inherit-style / remark .meta:n =
+ {
+ bodyfont = \normalfont,
+ headfont = \itshape,
+ spaceabove = 0.5\topsep,
+ spacebelow = 0.5\topsep,
+ },
+ notebraces .code:n = \exp_after:wN \__keythms_thmstyle_setbraces:nn #1,
+ notefont .tl_set:N = \l__keythms_thmstyle_notefont_tl,
+ noteseparator .tl_set:N = \l__keythms_thmstyle_noteseparator_tl,
+ numberfont .tl_set:N = \l__keythms_thmstyle_numberfont_tl,
+ postheadspace .tl_set:N = \l__keythms_thmstyle_postheadspace_tl,
+ spaceabove .tl_set:N = \l__keythms_thmstyle_spaceabove_tl,
+ spacebelow .tl_set:N = \l__keythms_thmstyle_spacebelow_tl,
+ % thm keys that are saved for later
+ numbered .code:n = \keythms_thmstyle_savethmkey_optval:n { #1 },
+ numberlike .code:n = \keythms_thmstyle_savethmkey_reqval:n { #1 },
+ numberwithin .code:n = \keythms_thmstyle_savethmkey_reqval:n { #1 },
+ parent .code:n = \keythms_thmstyle_savethmkey_reqval:n { #1 },
+ postfoothook .code:n = \keythms_thmstyle_savethmkey_reqval:n { #1 },
+ postheadhook .code:n = \keythms_thmstyle_savethmkey_reqval:n { #1 },
+ prefoothook .code:n = \keythms_thmstyle_savethmkey_reqval:n { #1 },
+ preheadhook .code:n = \keythms_thmstyle_savethmkey_reqval:n { #1 },
+ qed .code:n = \keythms_thmstyle_savethmkey_optval:n { #1 },
+ sharenumber .code:n = \keythms_thmstyle_savethmkey_reqval:n { #1 },
+ sibling .code:n = \keythms_thmstyle_savethmkey_reqval:n { #1 },
+ tcolorbox .code:n = \keythms_thmstyle_savethmkey_optval:n { #1 },
+ tcolorbox-no-titlebar .code:n = \keythms_thmstyle_savethmkey_optval:n { #1 },
+ within .code:n = \keythms_thmstyle_savethmkey_reqval:n { #1 },
+ }
+
+\cs_new_protected:Nn \keythms_thmstyle_thmname:n { \thmname{#1} }
+\cs_new_protected:Nn \keythms_thmstyle_thmnumber:n { \thmnumber{#1} }
+\cs_new_protected:Nn \keythms_thmstyle_thmnote:n { \thmnote{#1} }
+
+\cs_new:Npn \keythms_thmstyle_headcmd_default:nnn #1#2#3
+ {
+ \keythms_thmstyle_thmname:n { #1 }
+ \keythms_thmstyle_thmnumber:n
+ { ~
+ \group_begin:
+ \exp_not:V \l__keythms_thmstyle_numberfont_tl
+ #2
+ \group_end:
+ }
+ \keythms_thmstyle_thmnote:n
+ { \exp_not:V \l__keythms_thmstyle_noteseparator_tl
+ \group_begin: % group so notefont doesn't affect headpunct
+ \exp_not:V \l__keythms_thmstyle_notefont_tl
+ \l__keythms_thmstyle_lnotebrace_tl #3 \l__keythms_thmstyle_rnotebrace_tl
+ \group_end:
+ }
+ }
+
+\prop_gset_from_keyval:Nn \g__keythms_thmstyle_defaultkeys_prop
+ { % support files may overwrite these defaults
+ bodyfont = \itshape,
+ headfont = \bfseries,
+ headindent = 0pt,
+ headpunct = {.},
+ headstyle = \keythms_thmstyle_headcmd_default:nnn{#1}{#2}{#3},
+ notebraces = {(}{)},
+ notefont = \fontseries\mddefault\upshape,
+ noteseparator = {~},
+ numberfont = \upshape,
+ postheadspace = 5pt plus 1pt minus 1pt,
+ spaceabove = \topsep,
+ spacebelow = \topsep,
+ }
+\hook_gput_code:nnn { package/keytheorems/after } { . }
+ { % need to defer to wait for support files
+ \keys_precompile:neN { keytheorems/thmstyle }
+ { \prop_to_keyval:N \g__keythms_thmstyle_defaultkeys_prop }
+ \l__keythms_thmstyle_defaultkeys_tl
+ }
+
+\NewDocumentCommand \newkeytheoremstyle { m m }
+ {
+ \cs_if_free:cTF { th@ #1 }
+ { \keythms_thmstyle_declarestyle:nn { #1 } { #2 } }
+ { \msg_error:nnn { keytheorems } { thmstyle-defined } { #1 } }
+ }
+\NewDocumentCommand \renewkeytheoremstyle { m m }
+ {
+ \cs_if_free:cTF { th@ #1 }
+ { \msg_error:nnn { keytheorems } { thmstyle-undefined } { #1 } }
+ { \keythms_thmstyle_declarestyle:nn { #1 } { #2 } }
+ }
+\NewDocumentCommand \providekeytheoremstyle { m m }
+ {
+ \cs_if_free:cT { th@ #1 }
+ { \keythms_thmstyle_declarestyle:nn { #1 } { #2 } }
+ }
+\NewDocumentCommand \declarekeytheoremstyle { m m }
+ {
+ \keythms_thmstyle_declarestyle:nn { #1 } { #2 }
+ }
+
+\@onlypreamble \newkeytheoremstyle
+\@onlypreamble \renewkeytheoremstyle
+\@onlypreamble \providekeytheoremstyle
+\@onlypreamble \declarekeytheoremstyle
+
+\cs_new_eq:NN \keythms_thmstyle_new:nnnnnnnnn \newtheoremstyle
+\cs_generate_variant:Nn \keythms_thmstyle_new:nnnnnnnnn { nVVVVVVVe }
+
+\tl_put_right:Nn \l_text_expand_exclude_tl { \thmnote \thmnumber \thmname }
+% ^ allows \thmnote, etc. to work in headstyle; hope no bad side effects!
+\cs_new_protected:Npn \keythms_thmstyle_declarestyle:nn #1#2
+ { % user is in charge of spacing with \NAME and \NUMBER (thmtools compat...)
+ \cs_set:Npn \NAME { \keythms_thmstyle_thmname:n { ####1 } }
+ \cs_set:Npn \NUMBER
+ {
+ \keythms_thmstyle_thmnumber:n
+ {
+ \group_begin:
+ \exp_not:V \l__keythms_thmstyle_numberfont_tl
+ ####2
+ \group_end:
+ }
+ }
+ \cs_set:Npn \NOTE
+ {
+ \keythms_thmstyle_thmnote:n
+ { \exp_not:V \l__keythms_thmstyle_noteseparator_tl
+ \group_begin: % group so notefont doesn't affect headpunct
+ \exp_not:V \l__keythms_thmstyle_notefont_tl
+ \l__keythms_thmstyle_lnotebrace_tl ####3 \l__keythms_thmstyle_rnotebrace_tl
+ \group_end:
+ }
+ }
+ \clist_clear:N \l__keythms_thmstyle_savedkeys_clist
+ \tl_use:N \l__keythms_thmstyle_defaultkeys_tl
+ \keys_set:nn { keytheorems/thmstyle } { #2 }
+ \keythms_thmstyle_new:nVVVVVVVe { #1 }
+ \l__keythms_thmstyle_spaceabove_tl
+ \l__keythms_thmstyle_spacebelow_tl
+ \l__keythms_thmstyle_bodyfont_tl
+ \l__keythms_thmstyle_headindent_tl
+ \l__keythms_thmstyle_headfont_tl
+ \l__keythms_thmstyle_headpunct_tl
+ \l__keythms_thmstyle_postheadspace_tl
+ { \text_expand:n { \keythms_thmstyle_headcmd:nnn{##1}{##2}{##3} } }
+ % Define inherit-style key
+ \tl_if_exist:cF { l__keythms_thmstyle_ #1 _metakeys_tl }
+ { \tl_new:c { l__keythms_thmstyle_ #1 _metakeys_tl } }
+ \keys_precompile:nnc { keytheorems/thmstyle } { #2 } % use precompile instead of meta key
+ { l__keythms_thmstyle_ #1 _metakeys_tl } % because that's sensitive to hashes
+ \keys_define:nn { keytheorems/thmstyle } % and we want to allow both # and ##
+ { inherit-style / #1 .code:n = \tl_use:c { l__keythms_thmstyle_ #1 _metakeys_tl } }
+ \tl_if_exist:cF { l__keythms_thmstyle_ #1 _savedthmkeys_tl }
+ { \tl_new:c { l__keythms_thmstyle_ #1 _savedthmkeys_tl } }
+ \keys_precompile:nVc { keytheorems/thm }
+ \l__keythms_thmstyle_savedkeys_clist
+ { l__keythms_thmstyle_ #1 _savedthmkeys_tl }
+ \cs_undefine:N \NAME % undefine to prevent conflicts
+ \cs_undefine:N \NUMBER
+ \cs_undefine:N \NOTE
+ }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%
+%%% Defining Theorems %%%
+%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% FIX: reimplement these without \NewDocumentCommand and \SplitArgument
+\NewDocumentCommand \keythms_thm_setrefnames:nn
+ { m >{\SplitArgument{1}{,}} m } % #1 = envname, #2 = <refname> or <sing,plural>
+ { \__keythms_thm_setrefnames_aux:nnn{#1}#2 }
+\cs_new_protected:Npn \__keythms_thm_setrefnames_aux:nnn #1#2#3
+ {
+ \cs_set:cpn { #1 autorefname } { #2 }
+ \IfPackageLoadedT { cleveref }
+ {
+ \tl_if_novalue:nTF { #3 }
+ { \crefname{#1}{#2}{\textbf{??~(pl.~#2)}} }
+ { \crefname{#1}{#2}{#3} }
+ }
+ }
+\cs_generate_variant:Nn \keythms_thm_setrefnames:nn { nV }
+
+\NewDocumentCommand \keythms_thm_setRefnames:nn
+ { m >{\SplitArgument{1}{,}} m } % #1 = envname, #2 = <refname> or <sing,plural>
+ { \__keythms_thm_setRefnames_aux:nnn{#1}#2 }
+\cs_new_protected:Npn \__keythms_thm_setRefnames_aux:nnn #1#2#3
+ {
+ \cs_set:cpn { #1 Autorefname } { #2 }
+ \IfPackageLoadedT { cleveref }
+ {
+ \tl_if_novalue:nTF { #3 }
+ { \Crefname{#1}{#2}{\textbf{??~(pl.~#2)}} }
+ { \Crefname{#1}{#2}{#3} }
+ }
+ }
+\cs_generate_variant:Nn \keythms_thm_setRefnames:nn { nV }
+
+\keys_define:nn { keytheorems/thm }
+ {
+ heading .meta:n = { name = #1 },
+ name .tl_set:N = \l__keythms_thm_name_tl,
+ numbered .choice:,
+ numbered .default:n = true,
+ numbered / false .code:n = \bool_set_false:N \l__keythms_thm_numbered_bool,
+ numbered / no .meta:n = { numbered = false },
+ numbered / true .code:n = \bool_set_true:N \l__keythms_thm_numbered_bool,
+ numbered / unless-unique .code:n =
+ {
+ \bool_set_true:N \l__keythms_thm_unlessunique_bool
+ },
+ numbered / unless~unique .meta:n = { numbered = unless-unique },
+ numbered / yes .meta:n = { numbered = true },
+ numberlike .meta:n = { sibling = #1 },
+ numberwithin .meta:n = { parent = #1 },
+ parent .tl_set:N = \l__keythms_thm_parent_tl,
+ postfoothook .tl_set:N = \l__keythms_thm_postfoothook_tl,
+ postheadhook .tl_set:N = \l__keythms_thm_postheadhook_tl,
+ prefoothook .tl_set:N = \l__keythms_thm_prefoothook_tl,
+ preheadhook .tl_set:N = \l__keythms_thm_preheadhook_tl,
+ qed .tl_set:N = \l__keythms_thm_qed_tl,
+ qed .default:n = \c_novalue_tl,
+ % ^ distinguish between 'qed' and 'qed={}'
+ refname .tl_set:N = \l__keythms_thm_refname_tl,
+ Refname .tl_set:N = \l__keythms_thm_Refname_tl,
+ sharenumber .meta:n = { sibling = #1 },
+ sibling .tl_set:N = \l__keythms_thm_sibling_tl,
+ style .tl_set:N = \l__keythms_thm_style_tl,
+ style .groups:n = { style-comes-first },
+ tcolorbox .tl_set:N = \l__keythms_thm_tcbkeys_tl,
+ tcolorbox .default:n = {},
+ tcolorbox-no-titlebar .meta:n =
+ {
+ tcolorbox={
+ notitle,
+ before~upper={
+ \group_begin:
+ \__keythms_thm_tcboxtemphead:
+ \group_end:
+ },
+ #1
+ }
+ },
+ tcolorbox-no-titlebar .default:n = {},
+ title .meta:n = { name = #1 },
+ within .meta:n = { parent = #1 },
+ }
+
+% what below is unnecessary? I really don't understand this code.
+\cs_new_protected:Npn \__keythms_thm_storedeferredthmhead:n #1
+ {
+ \if@inlabel \indent \par \fi % eject a section head if one is pending
+ \if@nobreak
+ \adjust@parskip@nobreak
+ \else
+ \addpenalty\@beginparpenalty
+ \addvspace\@topsep
+ \addvspace{-\parskip}
+ \fi
+ % \global\@inlabeltrue % MY COMMENT: if this is uncommented then spacing after sections is wrong
+ \everypar\dth@everypar
+ \cs_set:Npn \__keythms_thm_tcboxtemphead: { \normalfont #1 }
+ \ignorespaces
+ }
+
+\keys_precompile:nnN { keytheorems/thm }
+ {
+ name = \q_no_value,
+ numbered = true,
+ parent = {},
+ postfoothook = {},
+ postheadhook = {},
+ prefoothook = {},
+ preheadhook = {},
+ qed = \q_no_value,
+ refname = \q_no_value,
+ Refname = \q_no_value,
+ sibling = {},
+ style = {},
+ tcolorbox = \q_no_value,
+ }
+ \l__keythms_thm_defaultkeys_tl
+
+\cs_new_protected:Npn \__keythms_thm_makethmhooks:n #1
+ {
+ \hook_new:n { keytheorems/#1/prehead }
+ \hook_new:n { keytheorems/#1/posthead }
+ \hook_new_reversed:n { keytheorems/#1/prefoot }
+ \hook_new_reversed:n { keytheorems/#1/postfoot }
+ \hook_new:n { keytheorems/#1/restated }
+ }
+
+% Make generic theorem hooks
+\__keythms_thm_makethmhooks:n { allthms }
+
+\NewDocumentCommand \newkeytheorem { m O{} }
+ { % #1 = name, #2 = keys
+ \clist_map_inline:nn { #1 } % define multiple theorems at once
+ { \keythms_thm_newkeythm:nn { ##1 } { #2 } }
+ }
+\@onlypreamble \newkeytheorem
+
+% to prevent error when plain, remark, or definition style used
+\tl_new:N \l__keythms_thmstyle_plain_savedthmkeys_tl
+\tl_new:N \l__keythms_thmstyle_remark_savedthmkeys_tl
+\tl_new:N \l__keythms_thmstyle_definition_savedthmkeys_tl
+
+\cs_new_protected:Npn \keythms_thm_newkeythm:nn #1#2
+ { % #1 = name, #2 = keys
+ % Store envname
+ \tl_set:Nn \l__keythms_thm_envname_tl { #1 }
+ % Make unless-unique false by default (can't precompile this)
+ \bool_set_false:N \l__keythms_thm_unlessunique_bool
+ % Set default keys
+ \tl_use:N \l__keythms_thm_defaultkeys_tl
+ % First set style so we can pick up additional thm keys, then overwrite if necessary
+ \keys_set_groups:nnn { keytheorems/thm } { style-comes-first } { #2 }
+ % Store theorem style
+ \tl_set:Ne \l__keythms_thm_currentthmstyle_tl { \the\thm@style }
+ \tl_if_empty:NTF \l__keythms_thm_style_tl
+ { % if \theoremstyle set, also use saved thm keys
+ \tl_if_exist:cT {l__keythms_thmstyle_ \l__keythms_thm_currentthmstyle_tl _savedthmkeys_tl}
+ { \tl_use:c {l__keythms_thmstyle_ \l__keythms_thm_currentthmstyle_tl _savedthmkeys_tl} }
+ }
+ {
+ % Temporarily set theorem style
+ \__keythms_theoremstyle:n { \l__keythms_thm_style_tl }
+ % If thm keys given in style, call now (possibly overwritten in next step)
+ % but don't error if user uses a style defined with just \newtheoremstyle
+ \tl_if_exist:cT { l__keythms_thmstyle_ \l__keythms_thm_style_tl _savedthmkeys_tl }
+ { \tl_use:c { l__keythms_thmstyle_ \l__keythms_thm_style_tl _savedthmkeys_tl } }
+ }
+ % Set env-specific keys
+ \keys_set:nn { keytheorems/thm } { #2 }
+ % Set up env-specific hooks
+ \__keythms_thm_makethmhooks:n { #1 }
+ % Add to env-specific hooks (use label so code given in keys is outermost)
+ % NOTE: faster to check if empty than add empty code to hook
+ \tl_if_empty:NF \l__keythms_thm_preheadhook_tl
+ {
+ \hook_gput_code:nnV { keytheorems/#1/prehead }
+ { keythms_hook_keys } \l__keythms_thm_preheadhook_tl
+ }
+ \tl_if_empty:NF \l__keythms_thm_postheadhook_tl
+ {
+ \hook_gput_code:nnV { keytheorems/#1/posthead }
+ { keythms_hook_keys } \l__keythms_thm_postheadhook_tl
+ }
+ \tl_if_empty:NF \l__keythms_thm_prefoothook_tl
+ {
+ \hook_gput_code:nnV { keytheorems/#1/prefoot }
+ { keythms_hook_keys } \l__keythms_thm_prefoothook_tl
+ }
+ \tl_if_empty:NF \l__keythms_thm_postfoothook_tl
+ {
+ \hook_gput_code:nnV { keytheorems/#1/postfoot }
+ { keythms_hook_keys } \l__keythms_thm_postfoothook_tl
+ }
+ % Set name if none given
+ \quark_if_no_value:NT \l__keythms_thm_name_tl % use quark so name={} is valid
+ {
+ % use e so \text_titlecase called only once per theorem definition,
+ % not each time the theorem is used
+ \tl_set:Ne \l__keythms_thm_name_tl
+ { \text_titlecase_first:n { #1 } }
+ }
+ % associate formatted name with envname in prop list
+ \prop_gput:NnV \g__keythms_thmnames_prop { #1 } \l__keythms_thm_name_tl
+ % Call correct \newtheorem variant
+ \bool_if:NTF \l__keythms_thm_unlessunique_bool
+ {
+ % [unq] is required since aux is read at begindocument
+ % (technically right before) which is after theorem is defined
+ \RequirePackage[unq]{unique}
+ \tl_if_empty:NTF \l__keythms_thm_parent_tl
+ {
+ \hook_gput_code:nnn { keytheorems/#1/prehead }
+ { keythms_hook_keys } { \setuniqmark { #1 } }
+ \ifuniq{ #1 }
+ { \bool_set_false:N \l__keythms_thm_numbered_bool }
+ { \bool_set_true:N \l__keythms_thm_numbered_bool }
+ \bool_if:NTF \l__keythms_thm_numbered_bool
+ {
+ \tl_if_empty:NTF \l__keythms_thm_sibling_tl
+ {
+ \__keythms_thm_new_numbered:nV { #1 } \l__keythms_thm_name_tl
+ }
+ {
+ \exp_args:NnV \newaliascnt { #1 } \l__keythms_thm_sibling_tl
+ \__keythms_thm_new_sibling:nVn { #1 }
+ \l__keythms_thm_name_tl { #1 }
+ \aliascntresetthe { #1 }
+ }
+ }
+ {
+ \__keythms_thm_new_unnumbered:nV { #1 } \l__keythms_thm_name_tl
+ \hook_gput_code:nnn { keytheorems/#1/prehead } { keythms_hook_keys }
+ {
+ \keythms_if_restating:F
+ { \refstepcounter{ keythms_unnumbered_dummyctr } }
+ }
+ }
+ }
+ {
+ \__keythms_thm_new_uuwithparent:nVV { #1 }
+ \l__keythms_thm_name_tl \l__keythms_thm_parent_tl
+ }
+ }
+ {
+ \bool_if:NTF \l__keythms_thm_numbered_bool
+ {
+ \tl_if_empty:NTF \l__keythms_thm_parent_tl
+ {
+ \tl_if_empty:NTF \l__keythms_thm_sibling_tl
+ {
+ \__keythms_thm_new_numbered:nV { #1 } \l__keythms_thm_name_tl
+ }
+ {
+ \exp_args:NnV \newaliascnt { #1 } \l__keythms_thm_sibling_tl
+ \__keythms_thm_new_sibling:nVn { #1 }
+ \l__keythms_thm_name_tl { #1 }
+ \aliascntresetthe { #1 }
+ }
+ }
+ {
+ \__keythms_thm_new_parent:nVV { #1 }
+ \l__keythms_thm_name_tl \l__keythms_thm_parent_tl
+ }
+ }
+ {
+ \__keythms_thm_new_unnumbered:nV { #1 } \l__keythms_thm_name_tl
+ \hook_gput_code:nnn { keytheorems/#1/prehead } { keythms_hook_keys }
+ {
+ \keythms_if_restating:F
+ { \refstepcounter{ keythms_unnumbered_dummyctr } }
+ }
+ }
+ }
+ % Store theorem def and redefine it with keys
+ \keythms_keyify_theorem:n { #1 }
+ % define \<env>autorefname and \<env>Autorefname, might be redefined next
+ \exp_args:NnV \cs_set:cpn { #1 autorefname } \l__keythms_thm_name_tl
+ \exp_args:NnV \cs_set:cpn { #1 Autorefname } \l__keythms_thm_name_tl
+ % Set ref names
+ \quark_if_no_value:NF \l__keythms_thm_refname_tl
+ { \keythms_thm_setrefnames:nV { #1 } \l__keythms_thm_refname_tl }
+ \quark_if_no_value:NF \l__keythms_thm_Refname_tl
+ { \keythms_thm_setRefnames:nV { #1 } \l__keythms_thm_Refname_tl }
+ % Set up qed if needed
+ \quark_if_no_value:NF \l__keythms_thm_qed_tl
+ {
+ \exp_args:Nno \__keythms_thm_qedcode:nn { #1 } { \l__keythms_thm_qed_tl }
+ }
+ % Set up tcolorbox if needed
+ \quark_if_no_value:NF \l__keythms_thm_tcbkeys_tl
+ {
+ \exp_args:Nno \__keythms_thm_tcboxcode:nn { #1 }
+ { \l__keythms_thm_tcbkeys_tl }
+ }
+ % Set up list-of definition
+ \cs_set_eq:cN { l@ #1 } \keythms_listof_tocline:
+ % Set default list-of display command
+ \__keythms_listof_show_aux:n { #1 }
+ % Set theorem style back to original state if needed
+ \tl_if_empty:NF \l__keythms_thm_style_tl
+ { \__keythms_theoremstyle:V \l__keythms_thm_currentthmstyle_tl }
+ }
+
+\cs_new_protected:Npn \__keythms_thm_tcboxcode:nn #1#2
+ {
+ \RequirePackage{tcolorbox}
+ \hook_gput_code:nnn { keytheorems/#1/prehead }
+ { keythms_tcbox }
+ {
+ \cs_set_eq:NN \deferred@thm@head \__keythms_thm_storedeferredthmhead:n
+ \cs_set_eq:NN \Hy@theorem@makelinktarget \use_none:n
+ % ^ don't like playing with hyperref internals... but don't see around
+ % it because hyperref tries to add to para hook which doesn't work
+ % when title set up the way we do it
+ \cs_set_protected:Npn \thm@space@setup { \thm@preskip=0pt \thm@postskip=0pt }
+ % ^ to match tcolorbox defaults; shouldn't interfere with user styles
+ }
+ \hook_gset_rule:nnnn { keytheorems/#1/posthead }
+ { keythms_tcbox } { before } { keythms_hook_keys }
+ \hook_gset_rule:nnnn { keytheorems/#1/prefoot }
+ { keythms_tcbox } { after } { keythms_hook_keys }
+ \hook_gset_rule:nnnn { keytheorems/#1/prefoot }
+ { keythms_tcbox } { after } { keythms_qed }
+ \tcbset
+ {
+ keythms_tcbox_#1/.style =
+ {
+ savedelimiter=#1,
+ title={ \__keythms_thm_tcboxtemphead: },
+ }
+ }
+ \bool_if:NT \l__keythms_thm_numbered_bool
+ {
+ \hook_gput_code:nnn { begindocument } { . }
+ {
+ \IfPackageLoadedF{cleveref}
+ { % hyperref doesn't patch \@thm if cleveref loaded
+ \tcbset
+ {
+ keythms_tcbox_#1/.append~style = % fix hyperlinking
+ { phantom={ \MakeLinkTarget*{\@currentHref} } }
+ }
+ }
+ }
+ }
+ \hook_gput_code:nnn { keytheorems/#1/posthead } { keythms_tcbox }
+ { \begin{tcolorbox}[keythms_tcbox_#1,#2] }
+ \hook_gput_code:nnn { keytheorems/#1/prefoot } { keythms_tcbox }
+ { \end{tcolorbox} }
+ }
+\cs_new_protected:Npn \__keythms_thm_qedcode:nn #1#2
+ {
+ \hook_gput_code:nnn { keytheorems/#1/posthead }
+ { keythms_qed }
+ {
+ \exp_args:No \tl_if_novalue:nF { #2 } { \protected@edef\qedsymbol{#2} }
+ \pushQED{\qed}
+ }
+ \hook_gput_code:nnn { keytheorems/#1/prefoot }
+ { keythms_qed }
+ {
+ \exp_args:No \tl_if_novalue:nF { #2 } { \protected@edef\qedsymbol{#2} }
+ \popQED
+ }
+ }
+
+\cs_new_eq:NN \__keythms_theoremstyle:n \theoremstyle
+\cs_generate_variant:Nn \__keythms_theoremstyle:n { V }
+
+\cs_new_eq:NN \__keythms_thm_new:w \newtheorem
+
+\cs_new_protected:Npn \__keythms_thm_new_numbered:nn #1#2
+ { \__keythms_thm_new:w { #1 } { #2 } }
+\cs_generate_variant:Nn \__keythms_thm_new_numbered:nn { nV }
+
+\cs_new_protected:Npn \__keythms_thm_new_unnumbered:nn #1#2
+ { \__keythms_thm_new:w* { #1 } { #2 } }
+\cs_generate_variant:Nn \__keythms_thm_new_unnumbered:nn { nV }
+
+\cs_new_protected:Npn \__keythms_thm_new_parent:nnn #1#2#3
+ { \__keythms_thm_new:w { #1 } { #2 } [ #3 ] }
+\cs_generate_variant:Nn \__keythms_thm_new_parent:nnn { nVV }
+
+\cs_new_protected:Npn \__keythms_thm_new_sibling:nnn #1#2#3
+ { \__keythms_thm_new:w { #1 } [ #3 ] { #2 } }
+\cs_generate_variant:Nn \__keythms_thm_new_sibling:nnn { nV }
+
+\cs_new_protected:Npn \__keythms_thm_new_uuwithparent:nnn #1#2#3
+ {
+ \cs_undefine:c { keythms_orig_nonumber_#1 } % for renew, declare
+ \__keythms_thm_new_unnumbered:nn { keythms_orig_nonumber_#1 } { #2 }
+ \__keythms_thm_new_parent:nnn { #1 } { #2 } { #3 }
+ \DeclareEnvironmentCopy { keythms_orig_withparent_#1 } { #1 }
+ \renewenvironment { #1 } % opt arg is implicit
+ {
+ \setuniqmark{ #1. \use:c {the #3} }
+ \ifuniq{ #1. \use:c {the #3} }
+ {
+ \keythms_if_restating:F
+ { \refstepcounter{ keythms_unnumbered_dummyctr } }
+ \begin{keythms_orig_nonumber_#1}
+ }
+ {
+ \begin{keythms_orig_withparent_#1}
+ }
+ }
+ {
+ \ifuniq{ #1. \use:c {the #3} }
+ { \end{keythms_orig_nonumber_#1} }
+ { \end{keythms_orig_withparent_#1} }
+ }
+ }
+\cs_generate_variant:Nn \__keythms_thm_new_uuwithparent:nnn { nVV }
+
+% for getting notes with continues*, use nameref if available, otherwise ltproperties
+\hook_gput_code:nnn { begindocument } { . }
+ {
+ \IfPackageLoadedTF { nameref }
+ {
+ \cs_new:Npn \__keythms_thmuse_recordnote: { } % nameref takes care of this
+ \cs_new:Npn \__keythms_getrecordednote:n #1
+ {
+ \getrefbykeydefault{ #1 }{ name }{ }
+ }
+ }
+ {
+ \property_new:nnnn { keytheorems/recordednote } { now } { }
+ { \l__keythms_thmuse_note_tl }
+ \cs_new:Npn \__keythms_getrecordednote:n #1
+ {
+ \property_ref:nn { keythms_recordednote_#1 }
+ { keytheorems/recordednote }
+ }
+ \cs_new:Npn \__keythms_thmuse_recordnote:
+ {
+ \tl_if_empty:NF \l__keythms_thmuse_note_tl
+ {
+ \RecordProperties
+ { keythms_recordednote_\l__keythms_thmuse_label_tl }
+ { keytheorems/recordednote }
+ }
+ }
+ }
+ }
+
+\keys_define:nn { keytheorems/thmuse }
+ {
+ continues .tl_set:N = \l__keythms_thmuse_contlabel_tl,
+ continues* .code:n =
+ {
+ \keys_set:nn { keytheorems/thmuse } { continues = #1 }
+ \protected@edef \l__keythms_tmpa_tl { \__keythms_getrecordednote:n{#1} }
+ \tl_if_empty:NF \l__keythms_tmpa_tl
+ {
+ \keys_set:nn { keytheorems/thmuse }
+ { note = \l__keythms_tmpa_tl }
+ }
+ },
+ label .tl_set:N = \l__keythms_thmuse_label_tl,
+ listhack .choice:, % needs equals sign
+ listhack / true .code:n = \bool_set_true:N \l__keythms_thmuse_listhack_bool,
+ listhack / false .code:n = \bool_set_false:N \l__keythms_thmuse_listhack_bool,
+ listhack .initial:n = false,
+ name .meta:n = { note = #1 },
+ % ^ for compatibility. "name" is ambiguous and doesn't match amsthm language
+ note .tl_set:N = \l__keythms_thmuse_note_tl,
+ note .initial:n = {},
+ restate .meta:n = { store = #1 }, % thmtools compatibility
+ restate* .meta:n = { store* = #1 },
+ restate-keys .clist_set:N = \l__keythms_thmuse_restatekeys_clist,
+ seq .code:n = {},
+ short-note .code:n = {}, % these do nothing at point of use
+ short-name .code:n = {},
+ store .tl_set:N = \l__keythms_thmuse_store_tl, % should this be .tl_set_e:N ?
+ store* .tl_set:N = \l__keythms_thmuse_storereversed_tl,
+ }
+
+\cs_new_protected:Npn \keythms_keyify_theorem:n #1
+ { % #1 = theorem name
+ \DeclareEnvironmentCopy { keythms_orig_#1 } { #1 }
+ \DeclareDocumentEnvironment { keythms_grab_#1 } { m m +b }
+ { % ##1 = keys, ##2 = note, ##3 = theorem body
+ \__keythms_thm_prehead_code:n { #1 }
+ \begin{keythms_orig_#1}[{##2}]
+ \clist_map_inline:Nn \g__keythms_restatecounters_clist
+ {
+ \prop_gput:Nne \g__keythms_thmuse_othercounters_prop { ####1 }
+ { \the\value{####1} }
+ }
+ \__keythms_thm_posthead_code:n { #1 }
+ % below needs to come after posthead so that correct \@currentHref
+ % is stored for tcolorbox theorems
+ \__keythms_thm_addcontentsdata:nnnn { #1 }
+ { \prop_to_keyval:N \g__keythms_thmuse_othercounters_prop }
+ { ##1 } { ##3 }
+ \__keythms_thm_tempstorerestatedata:nnn { #1 } { ##1 } { ##3 }
+ ##3
+ \__keythms_thm_prefoot_code:n { #1 }
+ \end{keythms_orig_#1}
+ \__keythms_thm_postfoot_code:n { #1 }
+ }
+ {}
+ \DeclareDocumentEnvironment { keythms_grabreversed_#1 } { m m +b }
+ { % ##1 = keys, ##2 = note, ##3 = theorem body
+ \tl_if_exist:cTF
+ { c__keythms_storeatbegin_ \l__keythms_thmuse_storereversed_tl _restatecounters_tl }
+ {
+ \bool_set_true:N \l__keythms_thmuse_restating_bool
+ \exp_args:NNe \prop_set_from_keyval:Nn \l__keythms_restate_counters_prop
+ { \tl_use:c { c__keythms_storeatbegin_ \l__keythms_thmuse_storereversed_tl _restatecounters_tl } }
+ \prop_map_inline:Nn \l__keythms_restate_counters_prop
+ {
+ \tl_set:ce { l_keythms_restate_current_####1_tl }
+ { \the\value{####1} }
+ \setcounter { ####1 } { ####2 }
+ % ^ FIX: what if eq's numbered by section, theorem, etc.? The
+ % thmtools code is opaque.... Or maybe should be up to the
+ % user to say "restate-counters={section,chapter,...}".
+ \cs_set:cpn { theH ####1 }
+ { \use:c { the ####1 } . \theHkeythms_restate_dummyctr }
+ }
+ \tl_if_empty:cTF
+ { c__keythms_storeatbegin_ \l__keythms_thmuse_storereversed_tl _label_tl }
+ { \refstepcounter{keythms_restate_dummyctr} } % for unnumbered theorems
+ {
+ \cs_set:cpn { the #1 }
+ { \tl_use:c { c__keythms_storeatbegin_ \l__keythms_thmuse_storereversed_tl _label_tl } }
+ \cs_set_eq:cN { c@ #1 } \c@keythms_restate_dummyctr
+ \cs_set_eq:cN { theH #1 } \theHkeythms_restate_dummyctr
+ % ^ why are the last two lines here? We shouldn't be referencing
+ % restated theorems. Think it's a remnant of thmtools
+ % WRONG: needed to make numbering correct after restated theorem.
+ % not sure about theH. <- this is needed to prevent duplicate anchors
+ }
+ }
+ {
+ \msg_warning:nne { keytheorems } { store-reversed-not-got }
+ { \l__keythms_thmuse_storereversed_tl }
+ }
+ \renewcommand\label[2][]{} % disable \label (opt arg in case cleveref loaded)
+ \cs_set_eq:NN \ltx@label \use_none:n % disable \ltx@label
+ \cs_set_eq:NN \property_record:nn \use_none:nn % disable \RecordProperties
+ \cs_set_eq:NN \setuniqmark \use_none:n % work with numbered=unless-unique
+ % QUESTION: also disable \hyper@@anchor? \MakeLinkTarget?
+ \hook_use:n { keytheorems/#1/restated }
+ \hook_use:n { keytheorems/allthms/restated }
+ \__keythms_thm_prehead_code:n { #1 }
+ \begin{keythms_orig_#1}[{##2}]
+ \__keythms_thm_posthead_code:n { #1 }
+ % below needs to come after posthead so that correct \@currentHref
+ % is stored for tcolorbox theorems
+ \__keythms_thm_addstoredreverseddata:nnn { #1 } { ##1 } { ##3 }
+ \__keythms_thm_tempstorerestatedatareversed:nnn { #1 } { ##1 } { ##3 }
+ ##3
+ \__keythms_thm_prefoot_code:n { #1 }
+ \end{keythms_orig_#1}
+ \__keythms_thm_postfoot_code:n { #1 }
+ \prop_map_inline:Nn \l__keythms_restate_counters_prop
+ {
+ \exp_args:Nnc \setcounter { ####1 }
+ { l_keythms_restate_current_####1_tl }
+ }
+ }
+ { }
+ % NOTE: have to do a lot of shenanigans to make sure the begin/end of grabbed
+ % theorem env captures only the body and no package code.
+ % This is the price of on-the-fly redefining the env to grab body
+ \RenewDocumentEnvironment { #1 } { ={note} O{} }
+ {
+ \keys_set:nn { keytheorems/thmuse } { ##1 }
+ \tl_if_empty:NF \l__keythms_thmuse_store_tl
+ {
+ \bool_gset_true:N \g__keythms_listof_writefile_bool
+ \cs_set_eq:NN \__keythms_withhooks_begin:nnn \__keythms_grab_begin:nnn
+ \cs_set_eq:NN \__keythms_withhooks_begin:nnV \__keythms_grab_begin:nnV
+ \cs_set_eq:NN \__keythms_withhooks_end:n \__keythms_grab_end:n
+ }
+ \tl_if_empty:NF \l__keythms_thmuse_storereversed_tl
+ {
+ \bool_gset_true:N \g__keythms_listof_writefile_bool
+ \cs_set_eq:NN \__keythms_withhooks_begin:nnn \__keythms_grabreversed_begin:nnn
+ \cs_set_eq:NN \__keythms_withhooks_begin:nnV \__keythms_grabreversed_begin:nnV
+ \cs_set_eq:NN \__keythms_withhooks_end:n \__keythms_grabreversed_end:n
+ }
+ \__keythms_thm_prehead_continues_code:n { #1 }
+ \__keythms_withhooks_begin:nnV { #1 } { ##1 } \l__keythms_thmuse_note_tl
+ }
+ {
+ \__keythms_withhooks_end:n { #1 }
+ \tl_if_empty:NF \l__keythms_thmuse_store_tl
+ {
+ \cs_if_exist:cF
+ { __keythms_getthm_ \l__keythms_thmuse_store_tl _theorem }
+ {
+ \cs_new:cpe
+ { __keythms_getthm_ \l__keythms_thmuse_store_tl _theorem }
+ {
+ \exp_not:N \__keythms_getthm_theorem:nnnnn
+ \exp_not:o { \g__keythms_thmuse_temprestatedata_tl }
+ }
+ \cs_new:cpe
+ { __keythms_getthm_ \l__keythms_thmuse_store_tl _body }
+ {
+ \exp_not:N \__keythms_getthm_body:nn
+ \exp_args:No \exp_not:o
+ {
+ \exp_after:wN \__keythms_use_iii_v_braced:nnnnn
+ \g__keythms_thmuse_temprestatedata_tl
+ }
+ }
+ }
+ }
+ \tl_if_empty:NF \l__keythms_thmuse_storereversed_tl
+ {
+ \cs_if_exist:cF
+ { __keythms_getthm_ \l__keythms_thmuse_storereversed_tl _theorem }
+ {
+ \cs_new:cpe
+ { __keythms_getthm_ \l__keythms_thmuse_storereversed_tl _theorem }
+ {
+ \exp_not:N \__keythms_getthmreversed_theorem:nnn
+ \exp_not:o { \g__keythms_thmuse_temprestatedatareversed_tl }
+ }
+ \cs_new:cpn
+ { __keythms_getthm_ \l__keythms_thmuse_storereversed_tl _body }
+ {
+ \textbf{??}
+ \msg_warning:nnn { keytheorems } { restate-body-never-got }
+ { #1 }
+ }
+ }
+ }
+ }
+ }
+\cs_new:Npn \__keythms_use_iii_v_braced:nnnnn #1#2#3#4#5 { {#3}{#5} }
+
+\cs_new_protected:Npn \__keythms_withhooks_begin:nnn #1#2#3
+ { % #1 = theorem name, #2 = keys, #3 = note
+ \__keythms_thm_prehead_code:n { #1 }
+ \begin{keythms_orig_#1}[{#3}]
+ \__keythms_thm_posthead_code:n { #1 }
+ \__keythms_thm_addcontentsdata:nnnn { #1 } { } { #2 } { }
+ \ignorespaces % I hope this is alright
+ }
+\cs_generate_variant:Nn \__keythms_withhooks_begin:nnn { nnV }
+\cs_new_protected:Npn \__keythms_withhooks_end:n #1
+ {
+ \__keythms_thm_prefoot_code:n { #1 }
+ \end{keythms_orig_#1}
+ \__keythms_thm_postfoot_code:n { #1 }
+ }
+\cs_new_protected:Npn \__keythms_grab_begin:nnn #1#2#3
+ { % #1 = theorem name, #2 = keys, #3 = note
+ \begin{keythms_grab_#1}{#2}{#3}
+ }
+\cs_generate_variant:Nn \__keythms_grab_begin:nnn { nnV }
+\cs_new_protected:Npn \__keythms_grab_end:n #1 { \end{keythms_grab_#1} }
+
+\cs_new_protected:Npn \__keythms_grabreversed_begin:nnn #1#2#3
+ { % #1 = theorem name, #2 = keys, #3 = note
+ \begin{keythms_grabreversed_#1}{#2}{#3}
+ }
+\cs_generate_variant:Nn \__keythms_grabreversed_begin:nnn { nnV }
+\cs_new_protected:Npn \__keythms_grabreversed_end:n #1
+ { \end{keythms_grabreversed_#1} }
+
+\cs_new_protected:Npn \__keythms_orig_begin:nn #1#2
+ { \begin{keythms_orig_#1}[{#2}] }
+\cs_generate_variant:Nn \__keythms_orig_begin:nn { nV }
+\cs_new_protected:Npn \__keythms_orig_end:n #1 { \end{keythms_orig_#1} }
+
+\cs_new_protected:Npn \__keythms_thm_prehead_code:n #1
+ { % #1 = theorem name
+ \tl_set:Nn \l_keythms_thmuse_envname_tl { #1 }
+ \hook_use:n { keytheorems/#1/prehead }
+ \hook_use:n { keytheorems/allthms/prehead }
+ }
+%% this below has to be separate from prehead_code above since we need to add
+%% continues-code to note before retrieving it in \__keythms_withhooks_begin:nnV
+\cs_new_protected:Npn \__keythms_thm_prehead_continues_code:n #1
+ { % #1 = theorem name
+ \tl_if_empty:NF \l__keythms_thmuse_contlabel_tl
+ {
+ \tl_if_empty:NF \l__keythms_thmuse_note_tl
+ { \tl_put_right:Nn \l__keythms_thmuse_note_tl { , ~ } }
+ \tl_put_right:Ne \l__keythms_thmuse_note_tl
+ { \__keythms_thmuse_continues:V \l__keythms_thmuse_contlabel_tl }
+ \cs_set:cpn { the #1 }
+ {
+ \getrefnumber { \l__keythms_thmuse_contlabel_tl }
+ }
+ \cs_set_eq:cN { c@ #1 } \c@keythms_continues_dummyctr
+ \cs_set_eq:cN { theH #1 } \theHkeythms_continues_dummyctr
+ %\cs_set_eq:NN \setuniqmark \use_none:n % not the right fix
+ }
+ }
+\cs_new_protected:Npn \__keythms_thm_posthead_code:n #1
+ { % #1 = theorem name
+ \hook_use:n { keytheorems/#1/posthead }
+ \hook_use:n { keytheorems/allthms/posthead }
+ \tl_if_empty:NF \l__keythms_thmuse_label_tl
+ {
+ \label{ \l__keythms_thmuse_label_tl }
+ \__keythms_thmuse_recordnote:
+ }
+ \bool_if:NT \l__keythms_thmuse_listhack_bool
+ { % straight from thm-amsthm.sty
+ \leavevmode
+ \vspace{-\baselineskip}%
+ \par
+ \everypar{\setbox\z@\lastbox\everypar{}}%
+ }
+ }
+\cs_new_protected:Npn \__keythms_thm_prefoot_code:n #1
+ { % #1 = theorem name
+ \hook_use:n { keytheorems/allthms/prefoot }
+ \hook_use:n { keytheorems/#1/prefoot }
+ }
+\cs_new_protected:Npn \__keythms_thm_postfoot_code:n #1
+ { % #1 = theorem name
+ \hook_use:n { keytheorems/allthms/postfoot }
+ \hook_use:n { keytheorems/#1/postfoot }
+ }
+\cs_new_protected:Npn \__keythms_thm_addcontentsdata:nnnn #1#2#3#4
+ { % #1 = theorem name, #2 = stored counters, #3 = keys, #4 = body
+ \keythms_listof_chaptervspacehack:
+ \iow_shipout:Ne \@auxout
+ {
+ \exp_not:N \@writefile { thlist }
+ {
+ \KeyThmsSavedTheorem{ #1 }
+ { \@currentlabel }
+ { \@currentHref }
+ { \thepage }
+ { #2 }
+ { \exp_not:n { #3 } } % do we want any expansion here, perhaps
+ { \exp_not:n { #4 } } % with \text_expand:n ?
+ }
+ }
+ }
+\cs_new_protected:Npn \__keythms_thm_addstoredreverseddata:nnn #1#2#3
+ {
+ \iow_shipout:Ne \@auxout
+ {
+ \exp_not:N \@writefile { thlist }
+ {
+ \KeyThmsSavedTheoremReversed { \l__keythms_thmuse_storereversed_tl }
+ { #1 }
+ { \exp_not:n { #2 } }
+ { \exp_not:n { #3 } }
+ }
+ }
+ }
+\cs_new_protected:Npn \__keythms_thm_tempstorerestatedata:nnn #1#2#3
+ { % #1 = theorem name, #2 = keys, #3 = body
+ \tl_gset:Ne \g__keythms_thmuse_temprestatedata_tl % needs to be global to get out of env
+ {
+ { #1 }
+ { \@currentlabel }
+ { \prop_to_keyval:N \g__keythms_thmuse_othercounters_prop }
+ { \exp_not:n { #2 } } % do we want any expansion here, perhaps
+ { \exp_not:n { #3 } } % with \text_expand:n ?
+ }
+ }
+\cs_new_protected:Npn \__keythms_thm_tempstorerestatedatareversed:nnn #1#2#3
+ {
+ \tl_gset:Ne \g__keythms_thmuse_temprestatedatareversed_tl % needs to be global to get out of env
+ {
+ { #1 }
+ { \exp_not:n { #2 } }
+ { \exp_not:n { #3 } }
+ }
+ }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%% Retrieving Theorem Data %%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\cs_new_protected:Npn \KeyThmsSavedTheorem #1#2#3#4#5#6#7 % 7th arg is body
+ { \use:c { __keythms_thmitem_#1:nnnnnn } {#2}{#3}{#4}{#5}{#6}{#7} }
+\cs_new_protected:Npn \KeyThmsSavedTheoremReversed #1#2#3#4 { } % gobble by default
+
+\keys_define:nn { keytheorems/storeatbegin }
+ {
+ restate .meta:n = { store=#1 },
+ restate* .meta:n = { store*=#1 },
+ store .tl_set:N = \l__keythms_storeatbegin_store_tl,
+ store* .tl_set:N = \l__keythms_storeatbegin_storereversed_tl,
+ unknown .code:n = { } % do nothing with unknown keys
+ }
+
+\cs_new_protected:Npn \KeyThmsContentsLine #1 { }
+% ^ initially a no-op, redefined where needed; important it's protected!
+\NewDocumentCommand \addtheoremcontentsline { m m }
+ {
+ \addtocontents { thlist }
+ {
+ \KeyThmsContentsLine
+ { % copied from def of \addcontentsline
+ \protect\contentsline{#1}{#2}{\thepage}{}
+ \protected@file@percent
+ }
+ }
+ }
+\NewDocumentCommand \addtotheoremcontents { m }
+ {
+ \addtocontents { thlist }
+ {
+ \KeyThmsContentsLine { #1 }
+ }
+ }
+
+\hook_gput_code:nnn { begindocument } { . }
+ {
+ \group_begin:
+ \cs_set_protected:Npn \KeyThmsSavedTheorem #1#2#3#4#5#6#7
+ {
+ \group_begin:
+ \keys_set:nn { keytheorems/storeatbegin } { #6 }
+ \tl_if_empty:NF \l__keythms_storeatbegin_store_tl
+ {
+ \cs_new_protected:cpn
+ { __keythms_getthm_ \l__keythms_storeatbegin_store_tl _theorem }
+ {
+ \__keythms_getthm_theorem:nnnnn
+ {#1}{#2}{#5}{#6}{#7}
+ }
+ \cs_new_protected:cpn
+ { __keythms_getthm_ \l__keythms_storeatbegin_store_tl _body }
+ {
+ \__keythms_getthm_body:nn {#5}{#7}
+ }
+ }
+ \tl_if_empty:NF \l__keythms_storeatbegin_storereversed_tl
+ {
+ \tl_const:cn
+ { c__keythms_storeatbegin_ \l__keythms_storeatbegin_storereversed_tl _label_tl }
+ { #2 }
+ \tl_const:cn
+ { c__keythms_storeatbegin_ \l__keythms_storeatbegin_storereversed_tl _restatecounters_tl }
+ { #5 }
+ \cs_new_protected:cpn
+ { __keythms_getthm_ \l__keythms_storeatbegin_storereversed_tl _body }
+ {
+ \__keythms_getthm_body:nn {#5}{#7}
+ }
+ }
+ \group_end:
+ }
+ \cs_set_protected:Npn \KeyThmsSavedTheoremReversed #1#2#3#4
+ {
+ \bool_new:c { g__keythms_restate_#1_called_bool }
+ \cs_gset:cpn { __keythms_getthm_ #1 _theorem }
+ { \__keythms_getthmreversed_theorem:nnn { #2 } { #3 } { #4 } }
+ \hook_gput_code:nnn { begindocument/end } { . }
+ {
+ \cs_if_exist:cF { __keythms_getthm_ #1 _body }
+ {
+ \cs_new_protected:cpn { __keythms_getthm_ #1 _body }
+ {
+ \textbf{??}
+ \msg_warning:nnn { keytheorems } { restate-body-never-got } { #1 }
+ }
+ }
+ }
+ }
+ \file_if_exist_input:n { \c_sys_jobname_str.thlist }
+ \group_end:
+ }
+
+\prg_new_conditional:Npnn \keythms_if_restating: { T, F, TF }
+ {
+ \bool_if:NTF \l__keythms_thmuse_restating_bool
+ { \prg_return_true: }
+ { \prg_return_false: }
+ }
+\NewDocumentCommand \IfRestatingTF { } { \keythms_if_restating:TF }
+\NewDocumentCommand \IfRestatingT { } { \keythms_if_restating:T }
+\NewDocumentCommand \IfRestatingF { } { \keythms_if_restating:F }
+
+\cs_new_protected:Npn \__keythms_getthm_theorem:nnnnn #1#2#3#4#5
+ { % #1 = name, #2 = number, #3 = restate counters, #4 = keys, #5 = theorem body
+ \group_begin:
+ \bool_set_true:N \l__keythms_thmuse_restating_bool
+ \prop_set_from_keyval:Nn \l__keythms_restate_counters_prop { #3 }
+ \prop_map_inline:Nn \l__keythms_restate_counters_prop
+ {
+ \tl_set:ce { l_keythms_restate_current_##1_tl } { \the\value{##1} }
+ \setcounter { ##1 } { ##2 }
+ % ^ FIX: what if eq's numbered by section, theorem, etc.? The
+ % thmtools code is opaque.... Or maybe should be up to the
+ % user to say "restate-counters={section,chapter,...}".
+ \cs_set:cpn { theH ##1 }
+ { \use:c { the ##1 } . \theHkeythms_restate_dummyctr }
+ }
+ \tl_if_empty:nTF { #2 }
+ { \refstepcounter{keythms_restate_dummyctr} } % for unnumbered theorems
+ {
+ \cs_set:cpn { the #1 } { #2 }
+ \cs_set_eq:cN { c@ #1 } \c@keythms_restate_dummyctr
+ \cs_set_eq:cN { theH #1 } \theHkeythms_restate_dummyctr
+ % ^ why are the last two lines here? We shouldn't be referencing
+ % restated theorems. Think it's a remnant of thmtools
+ % WRONG: needed to make numbering correct after restated theorem.
+ % not sure about theH. <- this is needed to prevent duplicate anchors
+ }
+ \renewcommand\label[2][]{} % disable \label (opt arg in case cleveref loaded)
+ \cs_set_eq:NN \ltx@label \use_none:n % disable \ltx@label
+ \cs_set_eq:NN \property_record:nn \use_none:nn % disable \RecordProperties
+ \cs_set_eq:NN \setuniqmark \use_none:n % work with numbered=unless-unique
+ % QUESTION: also disable \hyper@@anchor? \MakeLinkTarget?
+ \keys_set:nn { keytheorems/thmuse } { #4 }
+ \keys_set:no { keytheorems/thmuse } { \l__keythms_thmuse_restatekeys_clist }
+ \hook_use:n { keytheorems/#1/restated }
+ \hook_use:n { keytheorems/allthms/restated }
+ \__keythms_thm_prehead_continues_code:n { #1 }
+ \__keythms_thm_prehead_code:n { #1 }
+ \__keythms_orig_begin:nV { #1 } \l__keythms_thmuse_note_tl
+ \__keythms_thm_posthead_code:n { #1 }
+ #5
+ \__keythms_thm_prefoot_code:n { #1 }
+ \__keythms_orig_end:n { #1 }
+ \__keythms_thm_postfoot_code:n { #1 }
+ \prop_map_inline:Nn \l__keythms_restate_counters_prop
+ {
+ \exp_args:Nnc \setcounter { ##1 }
+ { l_keythms_restate_current_##1_tl }
+ }
+ \group_end:
+ }
+
+\cs_new_protected:Npn \__keythms_getthm_body:nn #1#2
+ { % #1 = restate counters, #2 = theorem body
+ \group_begin:
+ \bool_set_true:N \l__keythms_thmuse_restating_bool
+ \prop_set_from_keyval:Nn \l__keythms_restate_counters_prop { #1 }
+ \prop_map_inline:Nn \l__keythms_restate_counters_prop
+ {
+ \tl_set:ce { l_keythms_restate_current_##1_tl } { \the\value{##1} }
+ \setcounter { ##1 } { ##2 }
+ % ^ FIX: what if eq's numbered by section, theorem, etc.? The
+ % thmtools code is opaque.... Or maybe should be up to the
+ % user to say "restate-counters={section,chapter,...}".
+ \cs_set:cpn { theH ##1 }
+ { \use:c { the ##1 } . \theHkeythms_restate_dummyctr }
+ }
+ \refstepcounter{keythms_restate_dummyctr}
+ \renewcommand\label[2][]{} % disable \label (opt arg in case cleveref loaded)
+ \cs_set_eq:NN \ltx@label \use_none:n % disable \ltx@label
+ \cs_set_eq:NN \property_record:nn \use_none:nn % disable \RecordProperties
+ \hook_use:n { keytheorems/#1/restated }
+ \hook_use:n { keytheorems/allthms/restated }
+ #2
+ \prop_map_inline:Nn \l__keythms_restate_counters_prop
+ {
+ \exp_args:Nnc \setcounter { ##1 }
+ { l_keythms_restate_current_##1_tl }
+ }
+ \group_end:
+ }
+
+\cs_new_protected:Npn \__keythms_getthmreversed_theorem:nnn #1#2#3
+ { % #1 = envname, #2 = keys, #3 = theorem body
+ \group_begin:
+ \bool_set_false:N \l__keythms_thmuse_restating_bool
+ \keys_set:nn { keytheorems/thmuse } { #2 }
+ \keys_set:no { keytheorems/thmuse } { \l__keythms_thmuse_restatekeys_clist }
+ \__keythms_thm_prehead_continues_code:n { #1 }
+ \__keythms_thm_prehead_code:n { #1 }
+ \__keythms_orig_begin:nV { #1 } \l__keythms_thmuse_note_tl
+ \clist_map_inline:Nn \g__keythms_restatecounters_clist
+ {
+ \prop_gput:Nne \g__keythms_thmuse_othercounters_prop { ##1 }
+ { \the\value{##1} }
+ }
+ \__keythms_thm_posthead_code:n { #1 }
+ \__keythms_thm_addcontentsdata:nnnn { #1 }
+ { \prop_to_keyval:N \g__keythms_thmuse_othercounters_prop }
+ { #2 } { #3 }
+ \__keythms_thm_tempstorerestatedata:nnn { #1 } { #2 } { #3 } % for defining getthm_body
+ #3
+ \__keythms_thm_prefoot_code:n { #1 }
+ \__keythms_orig_end:n { #1 }
+ \__keythms_thm_postfoot_code:n { #1 }
+ % While we're here, define getthm_body
+ \cs_if_exist:cF
+ { __keythms_getthm_ \l__keythms_thmuse_storereversed_tl _body }
+ {
+ \cs_new:cpe
+ { __keythms_getthm_ \l__keythms_thmuse_storereversed_tl _body }
+ {
+ \exp_not:N \__keythms_getthm_body:nn
+ \exp_args:No \exp_not:o
+ {
+ \exp_after:wN \__keythms_use_iii_v_braced:nnnnn
+ \g__keythms_thmuse_temprestatedata_tl
+ }
+ }
+ }
+ \bool_gset_true:c
+ { g__keythms_restate_ \l__keythms_thmuse_storereversed_tl _called_bool }
+ \group_end:
+ }
+
+\NewDocumentCommand \getkeytheorem { O{theorem} m }
+ { % #1 = property, #2 = tag
+ \cs_if_exist:cTF { __keythms_getthm_#2_#1 }
+ {
+ \bool_if_exist:cTF { g__keythms_restate_#2_called_bool }
+ {
+ \str_if_eq:nnTF { #1 } { theorem }
+ {
+ \bool_if:cTF
+ { g__keythms_restate_#2_called_bool }
+ {
+ \msg_error:nnn { keytheorems }
+ { store-reversed-called-twice } { #2 }
+ }
+ { \use:c { __keythms_getthm_#2_#1 } }
+ }
+ { \use:c { __keythms_getthm_#2_#1 } }
+ }
+ { \use:c { __keythms_getthm_#2_#1 } }
+ }
+ {
+ \textbf{??}
+ \cs_if_exist:cTF { __keythms_getthm_#2_theorem }
+ {
+ \msg_warning:nnnn { keytheorems } { no-prop-for-stored-theorem }
+ { #1 } { #2 } % should this be an error?
+ }
+ { \msg_warning:nnn { keytheorems } { no-stored-theorem } { #2 } }
+ }
+ }
+
+%%%%%%%%%%%%%%%%%%%%%
+%%% Theorem Hooks %%%
+%%%%%%%%%%%%%%%%%%%%%
+
+\NewDocumentCommand \addtotheoremhook { O{allthms} m +m }
+ { % #1 = envname, #2 = hook, #3 = code
+ \__hook_if_declared:nTF { keytheorems/allthms/#2 }
+ {
+ \hook_gput_code:nnn { keytheorems/#1/#2 } { . } { #3 }
+ }
+ {
+ \msg_error:nnn { keytheorems } { undefined-thm-hook } { #2 }
+ }
+ }
+% NOTE: I think it's OK we use the internal \__hook_if_declared:nTF above
+% since we don't need to worry about the user creating new theorem hooks
+% so, as we're only checking the existence of hooks created by us, it's OK.
+
+%%%%%%%%%%%%%%%%%%%%%%%%
+%%% List of Theorems %%%
+%%%%%%%%%%%%%%%%%%%%%%%%
+
+\keys_define:nn { keytheorems/listof }
+ {
+ chapter-skip-length .dim_set:N = \keythms@listof@chaptervspace@dim,
+ chapter-skip-length .initial:n = 10pt,
+ format-code .cs_set:Np = \__keythms_listof_misdirect:nnn #1#2#3,
+ format-code .initial:n = \numberline{#2}#1#3,
+ ignore .code:n =
+ {
+ \hook_gput_code:nnn { begindocument/before } { keytheorems }
+ { \keythms_listof_ignore:n { #1 } }
+ },
+ ignoreall .code:n =
+ { % in case called before theorem defined
+ \hook_gput_code:nnn { begindocument/before } { keytheorems }
+ {
+ \prop_map_inline:Nn \g__keythms_thmnames_prop
+ { \__keythms_listof_ignore_aux:n { ##1 } }
+ }
+ },
+ indent .dim_set:N = \l__keythms_listof_indent_dim,
+ indent .initial:n = 1.5em,
+ no-chapter-skip .bool_set:N = \l__keythms_listof_nochapskip_bool,
+ no-chapter-skip .initial:n = false,
+ no-continues .bool_set:N = \l__keythms_listof_nocont_bool,
+ no-continues .initial:n = false,
+ no-title .bool_set:N = \l__keythms_listof_notitle_bool,
+ no-title .initial:n = false,
+ no-toc .bool_set:N = \l__keythms_listof_notoc_bool,
+ no-toc .initial:n = false, % false does not mean "to-toc" for standard classes
+ note-code .cs_set:Np = \__keythms_listof_notecmd:n #1,
+ note-code .initial:n = { ~ (#1) },
+ numwidth .dim_set:N = \l__keythms_listof_numwidth_dim,
+ numwidth .initial:n = 2.3em,
+ onlynamed .code:n =
+ {
+ \hook_gput_code:nnn { begindocument/before } { keytheorems }
+ { \keythms_listof_onlynamed:n { #1 } }
+ },
+ onlynamed .default:n = \q_no_value,
+ onlynumbered .code:n =
+ {
+ \hook_gput_code:nnn { begindocument/before } { keytheorems }
+ { \keythms_listof_onlynumbered:n { #1 } }
+ },
+ onlynumbered .default:n = \q_no_value,
+ print-body .code:n =
+ {
+ \cs_set_protected:Nn \keythms_listof_listcmd:nnnnnnn
+ {
+ \tl_if_empty:nF { ##7 }
+ {
+ \__keythms_getthm_theorem:nnnnn
+ {##1}{##2}{##5}{##6}{##7}
+ }
+ }
+ },
+ seq .code:n =
+ {
+ \hook_gput_code:nnn { begindocument/before } { keytheorems }
+ { \keythms_listof_showseq:n { #1 } }
+ },
+ show .code:n =
+ {
+ \hook_gput_code:nnn { begindocument/before } { keytheorems }
+ { \keythms_listof_show:n { #1 } }
+ },
+ showall .code:n =
+ { % in case called before theorem defined
+ \hook_gput_code:nnn { begindocument/before } { keytheorems }
+ {
+ \prop_map_inline:Nn \g__keythms_thmnames_prop
+ { \__keythms_listof_show_aux:n { ##1 } }
+ }
+ },
+ swapnumber .bool_set:N = \l__keythms_listof_swapnumber_bool,
+ swapnumber .initial:n = false,
+ title .tl_set:N = \l__keythms_listof_title_tl,
+ title .initial:n = \GetTranslation{keythms_listof_title},
+ title-code .cs_set:Np = \__keythms_listof_titlecmd:n #1,
+ }
+
+\hook_gput_code:nnn { begindocument } { . }
+ { % redefine these keys at begindocument
+ \keys_define:nn { keytheorems/listof }
+ {
+ ignore .code:n = \keythms_listof_ignore:n { #1 },
+ ignoreall .code:n =
+ {
+ \prop_map_inline:Nn \g__keythms_thmnames_prop
+ { \__keythms_listof_ignore_aux:n { ##1 } }
+ },
+ onlynamed .code:n = \keythms_listof_onlynamed:n { #1 },
+ onlynamed .default:n = \q_no_value,
+ onlynumbered .code:n = \keythms_listof_onlynumbered:n { #1 },
+ onlynumbered .default:n = \q_no_value,
+ seq .code:n = \keythms_listof_showseq:n { #1 },
+ show .code:n = \keythms_listof_show:n { #1 },
+ showall .code:n =
+ {
+ \prop_map_inline:Nn \g__keythms_thmnames_prop
+ { \__keythms_listof_show_aux:n { ##1 } }
+ },
+ }
+ }
+
+\NewDocumentCommand \keytheoremlistset { m }
+ {
+ \keys_set:nn { keytheorems/listof } { #1 }
+ }
+
+\cs_new_protected:Npn \keythms_listof_ignore:n #1
+ {
+ \clist_map_inline:nn { #1 } { \__keythms_listof_ignore_aux:n { ##1 } }
+ }
+\cs_new_protected:Npn \__keythms_listof_ignore_aux:n #1
+ {
+ \cs_set_protected:cpn { __keythms_thmitem_#1:nnnnnn } ##1##2##3##4##5##6
+ { }
+ }
+
+\cs_new_protected:Npn \keythms_listof_show:n #1
+ {
+ \clist_map_inline:nn { #1 } { \__keythms_listof_show_aux:n { ##1 } }
+ }
+\cs_new_protected:Npn \__keythms_listof_show_aux:n #1
+ {
+ \cs_set_protected:cpn { __keythms_thmitem_#1:nnnnnn } ##1##2##3##4##5##6
+ {
+ \__keythms_listof_listcmd_setup:nn { ##5 }
+ {
+ \keythms_listof_listcmd:nnnnnnn
+ {#1}{##1}{##2}{##3}{##4}{##5}{##6}
+ }
+ }
+ }
+
+\cs_new_protected:Npn \keythms_listof_onlynamed:n #1
+ {
+ \quark_if_no_value:nTF { #1 }
+ {
+ \prop_map_inline:Nn \g__keythms_thmnames_prop
+ { \__keythms_listof_onlynamed_aux:n { ##1 } }
+ }
+ {
+ \clist_map_inline:nn { #1 }
+ { \__keythms_listof_onlynamed_aux:n { ##1 } }
+ }
+ }
+\cs_new_protected:Npn \__keythms_listof_onlynamed_aux:n #1
+ {
+ \cs_set_protected:cpn { __keythms_thmitem_#1:nnnnnn } ##1##2##3##4##5##6
+ {
+ \__keythms_listof_listcmd_setup:nn { ##5 }
+ {
+ \tl_if_empty:NF \l__keythms_listofheading_note_tl
+ {
+ \keythms_listof_listcmd:nnnnnnn
+ {#1}{##1}{##2}{##3}{##4}{##5}{##6}
+ }
+ }
+ }
+ }
+
+\cs_new_protected:Npn \keythms_listof_onlynumbered:n #1
+ {
+ \quark_if_no_value:nTF { #1 }
+ {
+ \prop_map_inline:Nn \g__keythms_thmnames_prop
+ { \__keythms_listof_onlynumbered_aux:n { ##1 } }
+ }
+ {
+ \clist_map_inline:nn { #1 }
+ { \__keythms_listof_onlynumbered_aux:n { ##1 } }
+ }
+ }
+\cs_new_protected:Npn \__keythms_listof_onlynumbered_aux:n #1
+ {
+ \cs_set_protected:cpn { __keythms_thmitem_#1:nnnnnn } ##1##2##3##4##5##6
+ {
+ \__keythms_listof_listcmd_setup:nn { ##5 }
+ {
+ \tl_if_empty:nF { ##1 }
+ {
+ \keythms_listof_listcmd:nnnnnnn
+ {#1}{##1}{##2}{##3}{##4}{##5}{##6}
+ }
+ }
+ }
+ }
+
+\cs_new_protected:Npn \keythms_listof_showseq:n #1
+ {
+ \prop_map_inline:Nn \g__keythms_thmnames_prop
+ { \__keythms_listof_showseq_aux:nn { #1 } { ##1 } }
+ }
+\cs_new_protected:Npn \__keythms_listof_showseq_aux:nn #1#2
+ { % #1 = seq name, #2 = theorem name
+ \cs_set_protected:cpn { __keythms_thmitem_#2:nnnnnn } ##1##2##3##4##5##6
+ {
+ \__keythms_listof_listcmd_setup:nn { ##5 }
+ {
+ \tl_if_eq:NnT \l__keythms_listofheading_seq_tl { #1 }
+ {
+ \keythms_listof_listcmd:nnnnnnn
+ {#2}{##1}{##2}{##3}{##4}{##5}{##6}
+ }
+ }
+ }
+ }
+
+% Seems unnecessary to repeat all this for reading the keyvals from file.
+% In thmtools they just hook the "thmitem" definition into the theorem declaration.
+%% NOTE ON ABOVE: this gives more flexibility to define different kinds of lists.
+%% See acro.sty for template idea.
+\keys_define:nn { keytheorems/listofheading }
+ {
+ continues .tl_set:N = \l__keythms_listofheading_contlabel_tl,
+ continues* .code:n =
+ {
+ \keys_set:nn { keytheorems/listofheading } { continues = #1 }
+ \protected@edef \l__keythms_tmpa_tl { \__keythms_getrecordednote:n{#1} }
+ \tl_if_empty:NF \l__keythms_tmpa_tl
+ {
+ \keys_set:nn { keytheorems/listofheading }
+ { note = \l__keythms_tmpa_tl }
+ }
+ },
+ name .meta:n = { note = #1 },
+ note .tl_set:N = \l__keythms_listofheading_note_tl,
+ restate* .meta:n = { store*=#1 },
+ restate-keys .clist_set:N = \l__keythms_listofheading_restatekeys_clist,
+ seq .tl_set:N = \l__keythms_listofheading_seq_tl,
+ short-note .tl_set:N = \l__keythms_listofheading_shortnote_tl,
+ short-name .meta:n = { short-note = #1 },
+ store* .code:n =
+ {
+ \bool_set_true:N \l__keythms_listofheading_storereversed_bool
+ },
+ unknown .code:n = { } % do nothing with unknown keys
+ }
+
+\cs_new:Npn \__keythms_listof_printnote:
+ {
+ \tl_if_empty:NTF \l__keythms_listofheading_shortnote_tl
+ {
+ \tl_if_empty:NF \l__keythms_listofheading_note_tl
+ { \__keythms_listof_notecmd:n { \l__keythms_listofheading_note_tl } }
+ }
+ {
+ \__keythms_listof_notecmd:n { \l__keythms_listofheading_shortnote_tl }
+ }
+ }
+
+\cs_new:Npn \keythms_listof_listcmd:nnnnnnn #1#2#3#4#5#6#7
+ { % #1=name, #2=number, #3=Href, #4=page, #5=restate counters, #6=keys, #7=body
+ \contentsline{ #1 }
+ {
+ \__keythms_listof_misdirect:nnn
+ { \prop_item:Nn \g__keythms_thmnames_prop { #1 } }
+ { #2 }
+ { \__keythms_listof_printnote: }
+ }
+ { #4 }{ #3 }
+ }
+
+% NOTE: We still need to do this setup for [print-body] so that onlynamed works
+\cs_new_protected:Npn \__keythms_listof_listcmd_setup:nn #1#2
+ { % #1 = keys, #2 = list command
+ \group_begin:
+ \keys_set:nn { keytheorems/listofheading } { #1 }
+ \bool_if:NT \l__keythms_listofheading_storereversed_bool
+ {
+ \keys_set:no { keytheorems/listofheading }
+ { \l__keythms_listofheading_restatekeys_clist }
+ }
+ \tl_if_empty:NTF \l__keythms_listofheading_contlabel_tl
+ { #2 }
+ {
+ \bool_if:NF \l__keythms_listof_nocont_bool
+ {
+ \tl_if_empty:NF \l__keythms_listofheading_note_tl
+ {
+ \tl_put_right:Nn \l__keythms_listofheading_note_tl { , ~ }
+ }
+ \tl_put_right:Nn \l__keythms_listofheading_note_tl
+ {
+ \__keythms_thmuse_continues:V \l__keythms_listofheading_contlabel_tl
+ }
+ #2
+ }
+ }
+ \group_end:
+ }
+
+\cs_if_exist:NTF \chapter
+ { \cs_set_protected:Npn \__keythms_listof_titlecmd:n #1 { \chapter*{#1} } }
+ { \cs_set_protected:Npn \__keythms_listof_titlecmd:n #1 { \section*{#1} } }
+
+\cs_new_protected:Npn \__keythms_listof_default_tocline:
+ {
+ \@dottedtocline{ 1 }{ \l__keythms_listof_indent_dim }
+ { \l__keythms_listof_numwidth_dim }
+ }
+\cs_new_eq:NN \keythms_listof_tocline: \__keythms_listof_default_tocline:
+
+\NewDocumentCommand \listofkeytheorems { O{} }
+ {
+ \bool_gset_true:N \g__keythms_listof_writefile_bool
+ \group_begin:
+ \keys_set:nn { keytheorems/listof } { #1 }
+ \cs_set_protected:Npn \KeyThmsContentsLine ##1 { ##1 }
+ \bool_if:NF \l__keythms_listof_nochapskip_bool
+ {
+ \cs_set_eq:NN \KeyThmsAddvspace \addvspace
+ }
+ \bool_if:NF \l__keythms_listof_notitle_bool
+ {
+ \__keythms_listof_titlecmd:n { \l__keythms_listof_title_tl }
+ \@mkboth % QUESTION: should this go in titlecmd ?
+ { \MakeUppercase \l__keythms_listof_title_tl }
+ { \MakeUppercase \l__keythms_listof_title_tl }
+ }
+ \bool_if:NT \l__keythms_listof_swapnumber_bool
+ {
+ \cs_set:Npn \__keythms_listof_misdirect:nnn ##1##2##3 { ##1 ~ ##2##3 }
+ }
+ \legacy_if_set_false:n { @filesw }
+ \@starttoc{ thlist }
+ \group_end:
+ }
+% ^ unlike thmtools we don't use the class's style of \listoffigures because
+% we want control over title-code, no-title, etc. But this means we have to guess
+% things like marks, sectioning command, etc.
+
+\hook_gput_code:nnn { enddocument } { . }
+ {
+ \bool_if:NTF \g__keythms_listof_writefile_bool
+ {
+ \legacy_if:nT { @filesw }
+ {
+ \iow_new:N \tf@thlist
+ \iow_open:Nn \tf@thlist { \c_sys_jobname_str.thlist }
+ }
+ }
+ { % if .thlist file left over from previous run but not needed, clear it
+ \file_if_exist:nT { \c_sys_jobname_str.thlist }
+ {
+ \iow_open:Nn \g_tmpa_iow { \c_sys_jobname_str.thlist }
+ \iow_close:N \g_tmpa_iow
+ }
+ }
+ }
+
+% chaptervspacehack (code translated from thmtools)
+\cs_new_protected:Npn \KeyThmsAddvspace #1 { } % initially no-op, redefined where needed
+\int_new:N \g_keythms_listof_prevchapter_int
+\int_gset:Nn \g_keythms_listof_prevchapter_int { 1 }
+% ^ if this is zero, bad things happen if title-code is changed; anyways don't
+% need addvspace at top
+\cs_new_protected:Npn \keythms_listof_chaptervspacehack: { }
+\cs_if_exist:cT { c@chapter }
+ {
+ \cs_if_eq:NNF \c@chapter \relax
+ {
+ \cs_set_protected:Npn \keythms_listof_chaptervspacehack:
+ {
+ \int_compare:nNnF
+ { \value{chapter} } = { \g_keythms_listof_prevchapter_int }
+ {
+ \addtocontents{ thlist }
+ {
+ \KeyThmsAddvspace
+ { \keythms@listof@chaptervspace@dim }
+ }
+ \int_gset:Nn \g_keythms_listof_prevchapter_int { \value{chapter} }
+ }
+ }
+ }
+ }
+
+%%%%%%%%%%%%%%%%
+%%% \Autoref %%%
+%%%%%%%%%%%%%%%%
+
+\ProvideDocumentCommand { \Autoref } { s m }
+ {
+ \IfPackageLoadedTF { hyperref }
+ {
+ \group_begin:
+ \cs_set_eq:NN \HyRef@testreftype \__keythms_Autoref_testreftype:w
+ \IfBooleanTF { #1 } { \autoref*{#2} } { \autoref{#2} }
+ \group_end:
+ }
+ { \msg_error:nn { keytheorems } { hyperref-Autoref } }
+ }
+
+\cs_new_protected:Npn \__keythms_Autoref_testreftype:w #1.#2\\
+ {
+ \cs_if_exist:cTF { #1 Autorefname }
+ {
+ \cs_set:Npe \HyRef@currentHtag
+ {
+ \exp_not:N \use:c { #1 Autorefname }
+ \exp_not:N \c_space_token
+ }
+ }
+ { \msg_warning:nnn { keytheorems } { no-Autorefname } { #1 } }
+ }
+
+%%%%%%%%%%%%%%%%%%%
+%%% Global Keys %%%
+%%%%%%%%%%%%%%%%%%%
+
+\keys_define:nn { keytheorems }
+ {
+ auto-translate .bool_gset:N = \g__keythms_autotranslate_bool,
+ auto-translate .initial:n = true,
+ continues-code .cs_set:Np = \__keythms_thmuse_continues:n #1,
+ continues-code .initial:n =
+ { % not sure how best to handle this translation
+ \GetTranslation{keythms_continues}\pageref{#1}
+ },
+ overload .code:n = \__keythms_overload_code:,
+ overload .value_forbidden:n = true,
+ overload .usage:n = preamble,
+ qed-symbol .cs_set_protected:Np = \qedsymbol,
+ restate-counters .code:n =
+ {
+ \clist_map_inline:nn { #1 }
+ { \tl_new:c { l_keythms_restate_current_##1_tl } }
+ \clist_gput_right:Nn \g__keythms_restatecounters_clist { #1 }
+ },
+ restate-counters .initial:n = equation,
+ store-all .code:n = \__keythms_storeall_code:,
+ store-all .value_forbidden:n = true,
+ store-all .usage:n = preamble,
+ store-sets-label .code:n =
+ {
+ \keys_define:nn { keytheorems/thmuse }
+ {
+ store .code:n =
+ {
+ \tl_set:Nn \l__keythms_thmuse_label_tl { ##1 }
+ \tl_set:Nn \l__keythms_thmuse_store_tl { ##1 }
+ },
+ store* .code:n =
+ {
+ \tl_set:Nn \l__keythms_thmuse_label_tl { ##1 }
+ \tl_set:Nn \l__keythms_thmuse_storereversed_tl { ##1 }
+ },
+ }
+ },
+ thmtools-compat .code:n =
+ { % prevent loading the code again if key called twice
+ \bool_if:NF \g__keythms_thmtoolscompat_bool
+ { \__keythms_thmtoolscompat_code: }
+ },
+ thmtools-compat .value_forbidden:n = true,
+ thmtools-compat .usage:n = preamble,
+ }
+
+\cs_generate_variant:Nn \__keythms_thmuse_continues:n { V }
+
+\NewDocumentCommand \keytheoremset { m }
+ { % #1 = keys
+ \keys_set:nn { keytheorems } { #1 }
+ }
+
+\cs_new_protected:Npn \__keythms_overload_code:
+ {
+ \RenewDocumentCommand { \newtheorem } { s m o m o }
+ {
+ \IfBooleanTF { ##1 }
+ { \keythms_thm_newkeythm:nn { ##2 } { name=##4, numbered=no } }
+ {
+ \IfNoValueTF { ##3 }
+ {
+ \IfNoValueTF { ##5 }
+ { \keythms_thm_newkeythm:nn { ##2 } { name=##4 } }
+ { \keythms_thm_newkeythm:nn { ##2 } { name=##4, parent=##5 } }
+ }
+ { \keythms_thm_newkeythm:nn { ##2 } { name=##4, sibling=##3 } }
+ }
+ }
+ }
+
+\cs_new_protected:Npn \__keythms_thmtoolscompat_code:
+ {
+ \bool_gset_true:N \g__keythms_thmtoolscompat_bool
+ \__keythms_overload_code: % since thmtools overwrites \newtheorem
+ \ProvideDocumentCommand { \declaretheoremstyle } { O{} m }
+ {
+ \declarekeytheoremstyle { ##2 } { ##1 }
+ }
+ \ProvideDocumentCommand { \declaretheorem } { O{} m }
+ {
+ \newkeytheorem { ##2 } [ ##1 ]
+ }
+ \ProvideDocumentEnvironment { restatable } { O{} m m }
+ { % need to redefine this to add store to thlist since we set it outside env
+ \cs_set_protected:Npn \__keythms_thm_addcontentsdata:nnnn ####1####2####3####4
+ { % #1 = theorem name, #2 = stored counters, #3 = keys, #4 = body
+ \keythms_listof_chaptervspacehack:
+ \iow_shipout:Ne \@auxout
+ {
+ \exp_not:N \@writefile { thlist }
+ {
+ \KeyThmsSavedTheorem{ ####1 }
+ { \@currentlabel }
+ { \@currentHref }
+ { \thepage }
+ { ####2 }
+ { store=\l__keythms_thmuse_store_tl,\exp_not:n { ####3 } } % this line is changed
+ { \exp_not:n { ####4 } }
+ }
+ }
+ }
+ % set store outside [] so keyless note is recognized
+ \keys_set:nn { keytheorems/thmuse } { store=##3 }
+ \begin{##2}[##1]
+ }
+ {
+ \end{##2}
+ \cs_new_protected:cpn { ##3 }
+ { % make \foo and \foo* identical
+ \peek_meaning_remove:NTF *
+ { \getkeytheorem{ ##3 } }
+ { \getkeytheorem{ ##3 } }
+ }
+ }
+ \ProvideDocumentEnvironment { restatable* } { O{} m m }
+ { % need to redefine this to add store* to thlist since we set it outside env
+ \cs_set_protected:Npn \__keythms_thm_addstoredreverseddata:nnn ####1####2####3
+ {
+ \iow_shipout:Ne \@auxout
+ {
+ \exp_not:N \@writefile { thlist }
+ {
+ \KeyThmsSavedTheoremReversed { \l__keythms_thmuse_storereversed_tl }
+ { ####1 }
+ { store*=\l__keythms_thmuse_storereversed_tl,\exp_not:n { ####2 } } % this line is changed
+ { \exp_not:n { ####3 } }
+ }
+ }
+ }
+ % set store* outside [] so keyless note is recognized
+ \keys_set:nn { keytheorems/thmuse } { store*=##3 }
+ \begin{##2}[##1]
+ }
+ {
+ \end{##2}
+ \cs_new_protected:cpn { ##3 }
+ { % make \foo and \foo* identical
+ \peek_meaning_remove:NTF *
+ { \getkeytheorem{ ##3 } }
+ { \getkeytheorem{ ##3 } }
+ }
+ }
+ \ProvideDocumentCommand { \listoftheorems } { } { \listofkeytheorems }
+ \ProvideDocumentCommand { \listtheoremname } { }
+ { \GetTranslation{keythms_listof_title} }
+ \keys_define:nn { keytheorems/listof }
+ { % redefine since thmtools way is \renewcommand\listtheoremname{...}
+ title .initial:n = \listtheoremname
+ }
+ \ProvideDocumentCommand { \addtotheorempreheadhook } { O{allthms} m }
+ {
+ \addtotheoremhook [ ##1 ] { prehead } { ##2 }
+ }
+ \ProvideDocumentCommand { \addtotheorempostheadhook } { O{allthms} m }
+ {
+ \addtotheoremhook [ ##1 ] { posthead } { ##2 }
+ }
+ \ProvideDocumentCommand { \addtotheoremprefoothook } { O{allthms} m }
+ {
+ \addtotheoremhook [ ##1 ] { prefoot } { ##2 }
+ }
+ \ProvideDocumentCommand { \addtotheorempostfoothook } { O{allthms} m }
+ {
+ \addtotheoremhook [ ##1 ] { postfoot } { ##2 }
+ }
+ \clist_new:N \l__keythms_tcbshaded_keys_clist
+ \clist_new:N \l__keythms_tcbthmbox_keys_clist
+ \keys_define:nn { keytheorems/thm/shaded }
+ {
+ textwidth .code:n =
+ \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { width=##1 },
+ bgcolor .code:n =
+ \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { colback=##1 },
+ rulewidth .code:n =
+ \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { boxrule=##1 },
+ rulecolor .code:n =
+ \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { colframe=##1 },
+ margin .code:n =
+ \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { boxsep=##1 },
+ padding .meta:n = { margin=##1 },
+ leftmargin .code:n =
+ \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { left~skip=##1 },
+ rightmargin .code:n =
+ \clist_put_right:Nn \l__keythms_tcbshaded_keys_clist { right~skip=##1 },
+ }
+ \keys_define:nn { keytheorems/thm/thmbox }
+ {
+ L .code:n =
+ {
+ \clist_put_right:Nn \l__keythms_tcbthmbox_keys_clist
+ { keythms_tcbthmbox_L }
+ },
+ M .code:n =
+ {
+ \clist_put_right:Nn \l__keythms_tcbthmbox_keys_clist
+ { keythms_tcbthmbox_M }
+ },
+ S .code:n =
+ {
+ \clist_put_right:Nn \l__keythms_tcbthmbox_keys_clist
+ { keythms_tcbthmbox_S }
+ },
+ underline .choice:,
+ underline / true .code:n = {},
+ underline / false .code:n =
+ {
+ \clist_put_right:Nn \l__keythms_tcbthmbox_keys_clist
+ { boxed~title~style={bottomrule=0pt} }
+ },
+ underline .default:n = true,
+ nounderline .meta:n = { underline=false },
+ cut .choice:,
+ cut / true .code:n = {},
+ cut / false .code:n =
+ {
+ \clist_put_right:Nn \l__keythms_tcbthmbox_keys_clist { unbreakable }
+ },
+ cut .default:n = true,
+ nocut .meta:n = { cut=false },
+ thickness .code:n =
+ { % could also add keys to clist with changed dimens; which is better?
+ \hook_gput_code:nnn { keytheorems/\l__keythms_thm_envname_tl/prehead }
+ { keythms_tcbox }
+ { \dim_set:Nn \l_keythms_tcbthmbox_thickness_dim { ##1 } }
+ },
+ leftmargin .code:n =
+ {
+ \hook_gput_code:nnn { keytheorems/\l__keythms_thm_envname_tl/prehead }
+ { keythms_tcbox }
+ { \dim_set:Nn \l_keythms_tcbthmbox_leftmargin_dim { ##1 } }
+ },
+ rightmargin .code:n =
+ {
+ \hook_gput_code:nnn { keytheorems/\l__keythms_thm_envname_tl/prehead }
+ { keythms_tcbox }
+ { \dim_set:Nn \l_keythms_tcbthmbox_rightmargin_dim { ##1 } }
+ },
+ hskip .code:n =
+ {
+ \hook_gput_code:nnn { keytheorems/\l__keythms_thm_envname_tl/prehead }
+ { keythms_tcbox }
+ { \dim_set:Nn \l_keythms_tcbthmbox_hskip_dim { ##1 } }
+ },
+ vskip .code:n =
+ {
+ \hook_gput_code:nnn { keytheorems/\l__keythms_thm_envname_tl/prehead }
+ { keythms_tcbox }
+ { \dim_set:Nn \l_keythms_tcbthmbox_vskip_dim { ##1 } }
+ },
+ }
+ \dim_new:N \l_keythms_tcbthmbox_thickness_dim
+ \dim_set:Nn \l_keythms_tcbthmbox_thickness_dim { 0.6pt }
+ \dim_new:N \l_keythms_tcbthmbox_leftmargin_dim
+ \dim_set:Nn \l_keythms_tcbthmbox_leftmargin_dim { 0.7\parindent } % use \parindent? thmbox does
+ \dim_new:N \l_keythms_tcbthmbox_rightmargin_dim
+ \dim_set:Nn \l_keythms_tcbthmbox_rightmargin_dim { 0pt }
+ \dim_new:N \l_keythms_tcbthmbox_hskip_dim
+ \dim_set:Nn \l_keythms_tcbthmbox_hskip_dim { 0.2em }
+ \dim_new:N \l_keythms_tcbthmbox_vskip_dim
+ \dim_set:Nn \l_keythms_tcbthmbox_vskip_dim { 0.2em }
+ \msg_new:nnn { keytheorems } { mdframed-undefined }
+ {
+ keytheorems~does~not~define~the~'mdframed'~key.~
+ Consider~using~the~'tcolorbox'~key~instead.
+ }
+ \keys_define:nn { keytheorems/thm }
+ {
+ shaded .code:n =
+ {
+ \clist_clear:N \l__keythms_tcbshaded_keys_clist
+ \keys_set:nn { keytheorems/thm/shaded } { ##1 }
+ % FIX: surely a better way to do this
+ \RequirePackage{tcolorbox}
+ \pgfkeysifdefined{/tcb/keythms_tcbshaded_default/.@cmd} % even worth it?
+ {}
+ {
+ \tcbset % wish I could do this outside of key but can't assume tcb loaded
+ {
+ keythms_tcbshaded_default/.style=
+ {
+ sharp~corners = all,
+ boxrule = 0pt,
+ left = 0pt, right = 0pt,
+ top = 0pt, bottom = 0pt,
+ parbox = false,
+ }
+ }
+ }
+ \keys_set:ne { keytheorems/thm }
+ {
+ tcolorbox-no-titlebar =
+ {
+ keythms_tcbshaded_default,
+ \l__keythms_tcbshaded_keys_clist
+ }
+ }
+ },
+ thmbox .code:n = % adapted from https://tex.stackexchange.com/a/236230/208544
+ {
+ \clist_clear:N \l__keythms_tcbthmbox_keys_clist
+ \keys_set:nn { keytheorems/thm/thmbox } { ##1 }
+ % FIX: surely a better way to do this
+ \RequirePackage{tcolorbox}
+ \tcbuselibrary{skins,breakable}
+ \pgfkeysifdefined{/tcb/keythms_tcbthmbox_default/.@cmd} % even worth it?
+ {}
+ {
+ \tcbset{
+ keythms_tcbthmbox_default/.style={
+ enhanced,
+ breakable,
+ sharp~corners=all,
+ right=\l_keythms_tcbthmbox_hskip_dim,
+ left=\l_keythms_tcbthmbox_hskip_dim,
+ top=\l_keythms_tcbthmbox_vskip_dim,
+ bottom=\l_keythms_tcbthmbox_vskip_dim,
+ coltitle=black,
+ frame~engine=empty,
+ interior~titled~engine=empty,
+ interior~engine=empty,
+ extras~broken={
+ frame~engine=empty,
+ interior~titled~engine=empty,
+ interior~engine=empty
+ },
+ parbox=false,
+ % even though frame isn't drawn, makes spacing correct
+ boxrule=0.5\l_keythms_tcbthmbox_thickness_dim,
+ attach~boxed~title~to~top~left={
+ xshift=-\l_keythms_tcbthmbox_leftmargin_dim,
+ },
+ boxed~title~style={
+ empty,
+ size=minimal,
+ bottom=0.3ex,
+ top=0ex,
+ % ditto
+ bottomrule=0.5\l_keythms_tcbthmbox_thickness_dim,
+ },
+ left~skip=\l_keythms_tcbthmbox_leftmargin_dim,
+ right~skip=\l_keythms_tcbthmbox_rightmargin_dim,
+ overlay~unbroken={
+ \draw[line~width=\l_keythms_tcbthmbox_thickness_dim]
+ (title.south~west)
+ --
+ (title.south~east);
+ \draw[line~width=\l_keythms_tcbthmbox_thickness_dim]
+ (frame.north~west)
+ |-
+ ([xshift=10mm]frame.south~west);
+ },
+ overlay~first={
+ \draw[line~width=\l_keythms_tcbthmbox_thickness_dim]
+ (title.south~west)
+ --
+ (title.south~east);
+ \draw[line~width=\l_keythms_tcbthmbox_thickness_dim]
+ (frame.north~west)
+ --
+ (frame.south~west);
+ },
+ overlay~middle={
+ \draw[line~width=\l_keythms_tcbthmbox_thickness_dim]
+ (frame.north~west)
+ --
+ (frame.south~west);
+ },
+ overlay~last={
+ \draw[line~width=\l_keythms_tcbthmbox_thickness_dim]
+ (frame.north~west)
+ |-
+ ([xshift=10mm]frame.south~west);
+ }
+ },
+ keythms_tcbthmbox_L/.style={
+ overlay~unbroken={
+ \draw[line~width=\l_keythms_tcbthmbox_thickness_dim]
+ (title.south~west)
+ --
+ (title.south~east);
+ \draw[line~width=\l_keythms_tcbthmbox_thickness_dim]
+ (frame.north~west)
+ |-
+ (frame.south~east)
+ -|
+ (frame.north~east);
+ },
+ overlay~first={
+ \draw[line~width=\l_keythms_tcbthmbox_thickness_dim]
+ (title.south~west)
+ --
+ (title.south~east);
+ \draw[line~width=\l_keythms_tcbthmbox_thickness_dim]
+ (frame.north~west)
+ --
+ (frame.south~west);
+ \draw[line~width=\l_keythms_tcbthmbox_thickness_dim]
+ (frame.north~east)
+ --
+ (frame.south~east);
+ },
+ overlay~middle={
+ \draw[line~width=\l_keythms_tcbthmbox_thickness_dim]
+ (frame.north~west)
+ --
+ (frame.south~west);
+ \draw[line~width=\l_keythms_tcbthmbox_thickness_dim]
+ (frame.north~east)
+ --
+ (frame.south~east);
+ },
+ overlay~last={
+ \draw[line~width=\l_keythms_tcbthmbox_thickness_dim]
+ (frame.north~west)
+ |-
+ (frame.south~east)
+ -|
+ (frame.north~east);
+ }
+ },
+ keythms_tcbthmbox_M/.style={},
+ keythms_tcbthmbox_S/.style={ % first and middle same as M
+ overlay~unbroken={
+ \draw[line~width=\l_keythms_tcbthmbox_thickness_dim]
+ (title.south~west)
+ --
+ (title.south~east);
+ \draw[line~width=\l_keythms_tcbthmbox_thickness_dim]
+ (frame.north~west)
+ --
+ (frame.south~west);
+ },
+ overlay~last={
+ \draw[line~width=\l_keythms_tcbthmbox_thickness_dim]
+ (frame.north~west)
+ --
+ (frame.south~west);
+ }
+ },
+ }
+ }
+ \keys_set:ne { keytheorems/thm }
+ {
+ tcolorbox =
+ {
+ keythms_tcbthmbox_default,
+ \l__keythms_tcbthmbox_keys_clist
+ }
+ }
+ },
+ thmbox .default:n = M,
+ mdframed .code:n = \msg_error:nn { keytheorems } { mdframed-undefined },
+ }
+ \keys_define:nn { keytheorems/thmstyle }
+ {
+ shaded .code:n = \keythms_thmstyle_savethmkey_optval:n { ##1 },
+ thmbox .code:n = \keythms_thmstyle_savethmkey_optval:n { ##1 },
+ }
+ }
+
+\cs_new_protected:Npn \__keythms_storeall_code:
+ {
+ \cs_set_eq:NN \__keythms_withhooks_begin:nnn \__keythms_grab_begin:nnn
+ \cs_set_eq:NN \__keythms_withhooks_begin:nnV \__keythms_grab_begin:nnV
+ \cs_set_eq:NN \__keythms_withhooks_end:n \__keythms_grab_end:n
+ }
+
+\hook_gput_code:nnn { begindocument/before } { . }
+ { % use 'provide' in case user defines their own translation in preamble
+ \ProvideTranslationFallback { keythms_listof_title } { List~of~Theorems }
+ \ProvideTranslationFallback { keythms_continues } { continuing~from~p.\, }
+ \bool_if:NT \g__keythms_autotranslate_bool
+ {
+ \ProvideTranslation { English } { keythms_listof_title } { List~of~Theorems }
+ \ProvideTranslation { English } { keythms_continues } { continuing~from~p.\, }
+ % from DeepL; I don't know these languages!
+ \ProvideTranslation { French } { keythms_listof_title } { Liste~des~théorèmes }
+ \ProvideTranslation { French } { keythms_continues } { suite~de~la~p.\, }
+ \ProvideTranslation { German } { keythms_listof_title } { Liste~der~Theoreme }
+ \ProvideTranslation { German } { keythms_continues } { weiter~von~Seite~ }
+ \ProvideTranslation { Italian } { keythms_listof_title } { Elenco~dei~teoremi }
+ \ProvideTranslation { Italian } { keythms_continues } { continua~da~p.\, }
+ \ProvideTranslation { Spanish } { keythms_listof_title } { Lista~de~teoremas }
+ \ProvideTranslation { Spanish } { keythms_continues } { continúa~de~la~p.\, }
+ \ProvideTranslation { Portuguese } { keythms_listof_title } { Lista~de~teoremas }
+ \ProvideTranslation { Portuguese } { keythms_continues } { continua~da~p.\, }
+ }
+ }
+
+\ProcessKeyOptions[keytheorems]
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%% Support for non-default classes %%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\cs_new_protected:Npn \__keythms_support_AMSshared_code:
+ {
+ \keys_define:nn { keytheorems/listof } % adjust to AMS classes
+ {
+ indent .initial:n = 0pt,
+ numwidth .initial:n = 1.5pc,
+ title-code .code:n =
+ { % warn but set titlecmd just in case
+ \msg_warning:nn { keytheorems } { title-code-with-AMS }
+ \cs_set_protected:Npn \__keythms_listof_titlecmd:n ####1 { ##1 }
+ },
+ }
+ \RenewDocumentCommand \listofkeytheorems { O{} }
+ { % title command not customizable here
+ \bool_gset_true:N \g__keythms_listof_writefile_bool
+ \group_begin:
+ \keys_set:nn { keytheorems/listof } { ##1 }
+ \cs_set_protected:Npn \KeyThmsContentsLine ####1 { ####1 }
+ \bool_if:NF \l__keythms_listof_nochapskip_bool
+ {
+ \cs_set_eq:NN \KeyThmsAddvspace \addvspace
+ }
+ \legacy_if_set_false:n { @filesw }
+ \bool_if:NTF \l__keythms_listof_notitle_bool
+ { % hacky!
+ \cs_set_eq:NN \@startsection \use_none:nnnnnnn
+ \@starttoc{ thlist }{ }
+ }
+ { % ams classes don't expand title enough
+ \protected@edef \l__keythms_tmpa_tl { \l__keythms_listof_title_tl }
+ \bool_if:NT \l__keythms_listof_notoc_bool
+ { \cs_set_eq:NN \addcontentsline \use_none:nnn } % hacky!
+ \@starttoc{ thlist }{ \l__keythms_tmpa_tl }
+ }
+ \group_end:
+ }
+ \cs_new:Npn \__keythms_listof_ams_tocline:
+ {
+ \@tocline{ 0 }{ 3pt plus 2pt }{ \l__keythms_listof_indent_dim }
+ { \l__keythms_listof_numwidth_dim }{ }
+ }
+ \cs_set_eq:NN \keythms_listof_tocline: \__keythms_listof_ams_tocline:
+ }
+
+\cs_new_protected:Npn \keythms_support_check:n #1
+ {
+ \IfClassLoadedT { #1 } { \file_input:n { class-support/keythms-#1-support } }
+ }
+
+% acmart defaults also handled in amsart support file
+\keythms_support_check:n { amsart }
+\keythms_support_check:n { amsbook }
+\keythms_support_check:n { amsproc }
+\keythms_support_check:n { memoir }
+
+\file_input_stop: \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex b/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
index 95e0590b7bb..95f3f5f447d 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
+++ b/Master/texmf-dist/tex/latex/l3kernel/expl3-code.tex
@@ -75,7 +75,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx
-\def\ExplFileDate{2024-05-27}%
+\def\ExplFileDate{2024-09-10}%
\begingroup
\def\next{\endgroup}%
\expandafter\ifx\csname PackageError\endcsname\relax
@@ -6138,6 +6138,7 @@ Type H <return> for immediate help}\def~{\errmessage{%
\exp_after:wN \__seq_map_pairwise_function:wNw #2 \s__seq_stop #3
#1 { ? \prg_break: } { }
\prg_break_point:
+ \prg_break_point:Nn \seq_map_break: { }
}
\cs_new:Npn \__seq_map_pairwise_function:wNw \s__seq #1 \s__seq_stop #2
{
@@ -8385,8 +8386,8 @@ Type H <return> for immediate help}\def~{\errmessage{%
\cs_new:Npn \__clist_remove_all:
{ \exp_after:wN \__clist_remove_all:w \__clist_tmp:w , }
\cs_new:Npn \__clist_remove_all:w #1 , \s__clist_mark , #2 , { \exp_not:n {#1} }
-\cs_generate_variant:Nn \clist_remove_all:Nn { c , NV , cV }
-\cs_generate_variant:Nn \clist_gremove_all:Nn { c , NV , cV }
+\cs_generate_variant:Nn \clist_remove_all:Nn { c , NV , cV , Ne , ce }
+\cs_generate_variant:Nn \clist_gremove_all:Nn { c , NV , cV , Ne , ce }
\cs_new_protected:Npn \clist_reverse:N #1
{ \__kernel_tl_set:Nx #1 { \exp_args:No \clist_reverse:n {#1} } }
\cs_new_protected:Npn \clist_greverse:N #1
@@ -13859,8 +13860,8 @@ Type H <return> for immediate help}\def~{\errmessage{%
{
\bool_if:NTF \l__keys_no_value_bool
{
- \exp_after:wN \__keys_define_code:w
- \l__keys_property_str \s__keys_stop
+ \__keys_define_code:nnn
+ { \use:c { \c__keys_props_root_str \l__keys_property_str } {#1} }
{ \use:c { \c__keys_props_root_str \l__keys_property_str } }
{
\msg_error:nnee { keys } { property-requires-value }
@@ -13869,9 +13870,27 @@ Type H <return> for immediate help}\def~{\errmessage{%
}
{ \use:c { \c__keys_props_root_str \l__keys_property_str } {#1} }
}
-\exp_last_unbraced:NNNNo
- \cs_new:Npn \__keys_define_code:w #1 \c_colon_str #2 \s__keys_stop
- { \tl_if_empty:nTF {#2} }
+\cs_new:Npe \__keys_define_code:nnn
+ {
+ \exp_not:N \exp_after:wN \exp_not:N \__keys_define_code:w
+ \exp_not:N \l__keys_property_str
+ \c_colon_str \c_colon_str
+ \exp_not:N \s__keys_stop
+ }
+\use:e
+ {
+ \cs_new:Npn \exp_not:N \__keys_define_code:w
+ #1 \c_colon_str #2 \c_colon_str #3 \exp_not:N \s__keys_stop
+ }
+ {
+ \tl_if_empty:nTF {#3}
+ { \use_i:nnn }
+ {
+ \tl_if_empty:nTF {#2}
+ { \use_ii:nnn }
+ { \use_iii:nnn }
+ }
+ }
\cs_new_protected:Npn \__keys_bool_set:Nn #1#2
{ \__keys_bool_set:Nnnn #1 {#2} { true } { false } }
\cs_generate_variant:Nn \__keys_bool_set:Nn { c }
@@ -33722,15 +33741,17 @@ Type H <return> for immediate help}\def~{\errmessage{%
\tl_set:ce { l__codepoint_ #1 _block_tl }
{ \int_eval:n { \tl_use:c { l__codepoint_ #1 _block_tl } + 1 } }
}
- \prg_replicate:nn {#2}
+ \int_step_inline:nnn
+ { \tl_use:c { l__codepoint_ #1 _pos_tl } + 1 }
+ { \tl_use:c { l__codepoint_ #1 _pos_tl } + #2 }
{
- \tl_set:ce { l__codepoint_ #1 _pos_tl }
- { \int_eval:n { \tl_use:c { l__codepoint_ #1 _pos_tl } + 1 } }
\exp_args:Nc \__kernel_intarray_gset:Nnn
{ g__codepoint_ #1 _index_intarray }
- { \tl_use:c { l__codepoint_ #1 _pos_tl } }
+ {##1}
\l__codepoint_matched_block_tl
}
+ \tl_set:ce { l__codepoint_ #1 _pos_tl }
+ { \int_eval:n { \tl_use:c { l__codepoint_ #1 _pos_tl } + #2 } }
\clist_clear:c { l__codepoint_ #1 _block_clist }
}
\cs_set_protected:Npn \__codepoint_finalise_blocks:
@@ -37377,10 +37398,10 @@ Type H <return> for immediate help}\def~{\errmessage{%
{ \text_uppercase:nn {#1} {#2} }
\__kernel_patch_deprecation:nnNNpn { 2020-01-03 } { \text_titlecase_first:n }
\cs_new:Npn \tl_mixed_case:n #1
- { \text_titlecase_first:n {#1} }
+ { \text_titlecase_first:n { \text_lowercase:n {#1} } }
\__kernel_patch_deprecation:nnNNpn { 2020-01-03 } { \text_titlecase_first:nn }
\cs_new:Npn \tl_mixed_case:nn #1#2
- { \text_titlecase_first:nn {#1} {#2} }
+ { \text_titlecase_first:nn {#1} { \text_lowercase:n {#2} } }
\__kernel_patch_deprecation:nnNNpn { 2022-05-23 } { \token_case_meaning:Nn }
\cs_new:Npn \tl_case:Nn { \token_case_meaning:Nn }
\__kernel_patch_deprecation:nnNNpn { 2022-05-23 } { \token_case_meaning:NnT }
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex b/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex
index 851886310a1..30e80a05182 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex
+++ b/Master/texmf-dist/tex/latex/l3kernel/expl3-generic.tex
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx
-\def\ExplFileDate{2024-05-27}%
+\def\ExplFileDate{2024-09-10}%
\let\ExplLoaderFileDate\ExplFileDate
\begingroup
\catcode`\_=11
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3.ltx b/Master/texmf-dist/tex/latex/l3kernel/expl3.ltx
index d7d58039ca2..a0a34cdba30 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/expl3.ltx
+++ b/Master/texmf-dist/tex/latex/l3kernel/expl3.ltx
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx
-\def\ExplFileDate{2024-05-27}%
+\def\ExplFileDate{2024-09-10}%
\let\ExplLoaderFileDate\ExplFileDate
\begingroup
\catcode`\_=11
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
index cf17f7356be..f1706b731bd 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
+++ b/Master/texmf-dist/tex/latex/l3kernel/expl3.sty
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: expl3.dtx
-\def\ExplFileDate{2024-05-27}%
+\def\ExplFileDate{2024-09-10}%
\let\ExplLoaderFileDate\ExplFileDate
\ProvidesPackage{expl3}
[%
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3debug.def b/Master/texmf-dist/tex/latex/l3kernel/l3debug.def
index 6c0cdc45d0f..11e6953e008 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3debug.def
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3debug.def
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: l3debug.dtx
-\ProvidesExplFile{l3debug.def}{2024-05-27}{}{L3 Debugging support}
+\ProvidesExplFile{l3debug.def}{2024-09-10}{}{L3 Debugging support}
\scan_new:N \s__debug_stop
\cs_new:Npn \__debug_use_i_delimit_by_s_stop:nw #1 #2 \s__debug_stop {#1}
\quark_new:N \q__debug_recursion_tail
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls b/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls
index 34540214876..6219a5ee830 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3doc.cls
@@ -20,7 +20,7 @@
%%
%% File: l3doc.dtx
\RequirePackage{calc}
-\ProvidesExplClass{l3doc}{2024-05-27}{}
+\ProvidesExplClass{l3doc}{2024-09-10}{}
{L3 Experimental documentation class}
\clist_new:N \g_docinput_clist
\seq_new:N \g_doc_functions_seq
@@ -789,17 +789,20 @@
\cs_generate_variant:Nn \__codedoc_get_hyper_target:nN { o , e }
\cs_new_protected:Npn \__codedoc_names_get_seq:nN #1#2
{
- \__kernel_tl_set:Nx \l__codedoc_tmpa_tl { \tl_to_str:n {#1} }
\bool_if:NTF \l__codedoc_names_verb_bool
{
\seq_clear:N #2
- \seq_put_right:NV #2 \l__codedoc_tmpa_tl
+ \seq_put_right:No #2 { \tl_to_str:n {#1} }
}
{
+ \tl_set:Nn \l__codedoc_tmpa_tl {#1}
\tl_remove_all:Ne \l__codedoc_tmpa_tl
- { \iow_char:N \^^M \c_percent_str }
+ { \exp_not:N \obeyedline \c_percent_str }
\tl_remove_all:Ne \l__codedoc_tmpa_tl
- { \token_to_str:N \obeyedline \c_space_tl \c_percent_str }
+ { \exp_not:N \obeyedline }
+ \__kernel_tl_set:Nx \l__codedoc_tmpa_tl { \tl_to_str:N \l__codedoc_tmpa_tl }
+ \tl_remove_all:Ne \l__codedoc_tmpa_tl
+ { \iow_char:N \^^M \c_percent_str }
\tl_remove_all:Ne \l__codedoc_tmpa_tl { \tl_to_str:n { ^ ^ A } }
\tl_remove_all:Ne \l__codedoc_tmpa_tl { \iow_char:N \^^I }
\tl_remove_all:Ne \l__codedoc_tmpa_tl { \iow_char:N \^^M }
@@ -1023,7 +1026,7 @@
\cs_new_protected:Npn \__codedoc_function_typeset_stop:
{
\par
- \dim_set:Nn \prevdepth { \box_dp:N \l__codedoc_descr_coffin }
+ \dim_set:Nn \prevdepth { \coffin_dp:N \l__codedoc_descr_coffin }
\allowbreak
}
\cs_new_protected:Npn \__codedoc_function_init:
@@ -1059,7 +1062,7 @@
\dim_zero:N \l__codedoc_trial_width_dim
\hcoffin_set:Nn \l__codedoc_functions_coffin { \__codedoc_typeset_functions: }
\dim_set:Nn \l__codedoc_trial_width_dim
- { \box_wd:N \l__codedoc_functions_coffin }
+ { \coffin_wd:N \l__codedoc_functions_coffin }
\bool_set:Nn \l__codedoc_long_name_bool
{ \dim_compare_p:nNn \l__codedoc_trial_width_dim > \marginparwidth }
}
@@ -1087,7 +1090,7 @@
\coffin_join:NnnNnnnn
\l__codedoc_output_coffin {l} {b}
\l__codedoc_descr_coffin {l} {t}
- {0.75\marginparwidth + \marginparsep} {-\medskipamount}
+ {\marginparwidth + \marginparsep} {-\medskipamount}
\coffin_typeset:Nnnnn \l__codedoc_output_coffin
{\l__codedoc_descr_coffin-l} {\l__codedoc_descr_coffin-t}
{0pt} {0pt}
@@ -1136,7 +1139,6 @@
{ \__codedoc_typeset_variant_list:nN {#1} #2 }
\\
}
-\cs_generate_variant:Nn \__codedoc_typeset_function_block:nN { e }
\cs_new_protected:Npn \__codedoc_function_index:n #1
{
\seq_gput_right:Nn \g_doc_functions_seq {#1}
@@ -1234,7 +1236,7 @@
{
\textwidth
\bool_if:NT \l__codedoc_long_name_bool
- { + 0.75 \marginparwidth - \l__codedoc_trial_width_dim }
+ { + \marginparwidth - \l__codedoc_trial_width_dim }
}
\hbox_gset:Nw \g__codedoc_syntax_box
\small \ttfamily
@@ -2186,7 +2188,6 @@
{#2}
\l__codedoc_index_internal_bool
}
-\cs_generate_variant:Nn \__codedoc_special_index:nn { o }
\tl_new:N \l__codedoc_index_escaped_macro_tl
\tl_new:N \l__codedoc_index_escaped_key_tl
\cs_new_protected:Npn \__codedoc_special_index_module:nnnnN #1#2#3#4#5
diff --git a/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty b/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty
index 23dc455743d..0b83c0dd3f7 100644
--- a/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty
+++ b/Master/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty
@@ -32,7 +32,7 @@
}%
\endinput
}
-\ProvidesExplPackage{l3keys2e}{2024-05-08}{}
+\ProvidesExplPackage{l3keys2e}{2024-08-16}{}
{LaTeX2e option processing using LaTeX3 keys}
\cs_if_exist:NT \ProcessKeysOptions
{ \file_input_stop: }
diff --git a/Master/texmf-dist/tex/latex/l3packages/xfp/xfp.sty b/Master/texmf-dist/tex/latex/l3packages/xfp/xfp.sty
index e63242d19ac..975f8bdd427 100644
--- a/Master/texmf-dist/tex/latex/l3packages/xfp/xfp.sty
+++ b/Master/texmf-dist/tex/latex/l3packages/xfp/xfp.sty
@@ -32,7 +32,7 @@
}%
\endinput
}
-\ProvidesExplPackage{xfp}{2024-05-08}{}
+\ProvidesExplPackage{xfp}{2024-08-16}{}
{L3 Floating point unit}
\ProvideExpandableDocumentCommand \fpeval { m } { \fp_eval:n {#1} }
\ProvideExpandableDocumentCommand \inteval { m } { \int_eval:n {#1} }
diff --git a/Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty b/Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty
index e87a832432f..9a7eab1fe1a 100644
--- a/Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty
+++ b/Master/texmf-dist/tex/latex/l3packages/xparse/xparse.sty
@@ -60,7 +60,7 @@
}
}
\ExplSyntaxOff
-\ProvidesExplPackage{xparse}{2024-05-08}{}
+\ProvidesExplPackage{xparse}{2024-08-16}{}
{L3 Experimental document command parser}
\clist_new:N \l__cmd_options_clist
\DeclareOption* { \clist_put_right:NV \l__cmd_options_clist \CurrentOption }
@@ -239,7 +239,22 @@
{
\__kernel_cmd_if_xparse:NTF #1
{
- \tl_set:Ne \ArgumentSpecification { \tl_item:Nn #1 { 2 } }
+ \tl_set:Ne \ArgumentSpecification
+ {
+ \exp_args:No \tl_if_head_eq_meaning:nNTF {#1} \__cmd_start_optimized:
+ {
+ \prg_replicate:nn
+ {
+ \str_count:e
+ {
+ \exp_args:Nc \cs_parameter_spec:N
+ { \cs_to_str:N #1 \c_space_tl code }
+ } / 2
+ }
+ { m }
+ }
+ { \tl_item:Nn #1 { 2 } }
+ }
#2
}
{#3}
diff --git a/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty b/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty
index 04c80418890..31aa3d9a5ee 100644
--- a/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty
+++ b/Master/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.sty
@@ -25,7 +25,7 @@
\endinput
}
{%
- \ProvidesExplPackage{xtemplate}{2024-05-08}{}
+ \ProvidesExplPackage{xtemplate}{2024-08-16}{}
{L3 Experimental prototype document functions}
\long\protected\def\DeclareRestrictedTemplate#1#2#3#4{%
\DeclareTemplateCopy{#1}{#3}{#2}%
diff --git a/Master/texmf-dist/tex/latex/lastpage/lastpage.sty b/Master/texmf-dist/tex/latex/lastpage/lastpage.sty
index 154c0bdf712..ccbf32b59c4 100644
--- a/Master/texmf-dist/tex/latex/lastpage/lastpage.sty
+++ b/Master/texmf-dist/tex/latex/lastpage/lastpage.sty
@@ -9,7 +9,7 @@
%% This is a generated file.
%%
%% Project: lastpage
-%% Version: 2024-04-27 v2.1a
+%% Version: 2024-07-07 v2.1c
%% Info: Refers to last page's name
%%
%% Copyright (C) 2010 - 2024 by
@@ -32,10 +32,9 @@
%%
%% This package was invented by Jeffrey P. Goldberg.
%% I thought that a replacement was needed and therefore created the pageslts package,
-%% https://ctan.org/pkg/pageslts
-%% . Nevertheless, for compatibility with existing documents/packages as well as for
-%% the low amount of resources needed by the lastpage package (no new counter!),
-%% I updated this package.
+%% https://ctan.org/pkg/pageslts. Nevertheless, for compatibility with existing
+%% documents/packages as well as for the low amount of resources needed by the
+%% lastpage package (no new counter!), I updated this package.
%% Thanks go to Jeffrey P. Goldberg for allowing me to do this.
%%
%% While this package allows for things like "Page slash thepage{} of slash pageref{LastPage}"
@@ -60,7 +59,7 @@
%% Part of the "lastpage" package
%% loads either lastpage2.09.sty for TeX 2.09 or lastpage2e.sty for LaTeX 2e
%% with code from https://groups.google.com/g/comp.text.tex/c/-Qmhj1ZI4xM
-\def\loadlastpage{\ProvidesPackage{lastpage}[2024/04/27 v2.1a lastpage: 2.09 or 2e? (HMM)]\relax\RequirePackage{lastpage2e}}
+\def\loadlastpage{\ProvidesPackage{lastpage}[2024/07/07 v2.1c lastpage: 2.09 or 2e? (HMM)]\relax\RequirePackage{lastpage2e}}
\begingroup \expandafter \ifx \csname documentclass\endcsname\relax
\endgroup \expandafter \input{lastpage209.sty}
\else \endgroup \expandafter \loadlastpage
diff --git a/Master/texmf-dist/tex/latex/lastpage/lastpage209.sty b/Master/texmf-dist/tex/latex/lastpage/lastpage209.sty
index f93a6d0f1ae..feb652121fa 100644
--- a/Master/texmf-dist/tex/latex/lastpage/lastpage209.sty
+++ b/Master/texmf-dist/tex/latex/lastpage/lastpage209.sty
@@ -9,7 +9,7 @@
%% This is a generated file.
%%
%% Project: lastpage
-%% Version: 2024-04-27 v2.1a
+%% Version: 2024-07-07 v2.1c
%% Info: Refers to last page's name
%%
%% Copyright (C) 2010 - 2024 by
@@ -32,10 +32,9 @@
%%
%% This package was invented by Jeffrey P. Goldberg.
%% I thought that a replacement was needed and therefore created the pageslts package,
-%% https://ctan.org/pkg/pageslts
-%% . Nevertheless, for compatibility with existing documents/packages as well as for
-%% the low amount of resources needed by the lastpage package (no new counter!),
-%% I updated this package.
+%% https://ctan.org/pkg/pageslts. Nevertheless, for compatibility with existing
+%% documents/packages as well as for the low amount of resources needed by the
+%% lastpage package (no new counter!), I updated this package.
%% Thanks go to Jeffrey P. Goldberg for allowing me to do this.
%%
%% While this package allows for things like "Page slash thepage{} of slash pageref{LastPage}"
diff --git a/Master/texmf-dist/tex/latex/lastpage/lastpage2e.sty b/Master/texmf-dist/tex/latex/lastpage/lastpage2e.sty
index 50d8183d2a5..e3b40d7be58 100644
--- a/Master/texmf-dist/tex/latex/lastpage/lastpage2e.sty
+++ b/Master/texmf-dist/tex/latex/lastpage/lastpage2e.sty
@@ -9,7 +9,7 @@
%% This is a generated file.
%%
%% Project: lastpage
-%% Version: 2024-04-27 v2.1a
+%% Version: 2024-07-07 v2.1c
%% Info: Refers to last page's name
%%
%% Copyright (C) 2010 - 2024 by
@@ -32,10 +32,9 @@
%%
%% This package was invented by Jeffrey P. Goldberg.
%% I thought that a replacement was needed and therefore created the pageslts package,
-%% https://ctan.org/pkg/pageslts
-%% . Nevertheless, for compatibility with existing documents/packages as well as for
-%% the low amount of resources needed by the lastpage package (no new counter!),
-%% I updated this package.
+%% https://ctan.org/pkg/pageslts. Nevertheless, for compatibility with existing
+%% documents/packages as well as for the low amount of resources needed by the
+%% lastpage package (no new counter!), I updated this package.
%% Thanks go to Jeffrey P. Goldberg for allowing me to do this.
%%
%% While this package allows for things like "Page slash thepage{} of slash pageref{LastPage}"
@@ -59,7 +58,7 @@
%%
%% Part of the "lastpage" package
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesPackage{lastpage2e}[2024/04/27 v2.1a %
+\ProvidesPackage{lastpage2e}[2024/07/07 v2.1c %
Decide which 2e lastpage version to use (HMM)]
\@ifl@t@r\fmtversion{2023/06/01}{\RequirePackage{lastpagemodern}}{%
\RequirePackage{lastpageclassic}}
diff --git a/Master/texmf-dist/tex/latex/lastpage/lastpageclassic.sty b/Master/texmf-dist/tex/latex/lastpage/lastpageclassic.sty
index d7a4b6ce9af..88285efc2c6 100644
--- a/Master/texmf-dist/tex/latex/lastpage/lastpageclassic.sty
+++ b/Master/texmf-dist/tex/latex/lastpage/lastpageclassic.sty
@@ -9,7 +9,7 @@
%% This is a generated file.
%%
%% Project: lastpage
-%% Version: 2024-04-27 v2.1a
+%% Version: 2024-07-07 v2.1c
%% Info: Refers to last page's name
%%
%% Copyright (C) 2010 - 2024 by
@@ -32,10 +32,9 @@
%%
%% This package was invented by Jeffrey P. Goldberg.
%% I thought that a replacement was needed and therefore created the pageslts package,
-%% https://ctan.org/pkg/pageslts
-%% . Nevertheless, for compatibility with existing documents/packages as well as for
-%% the low amount of resources needed by the lastpage package (no new counter!),
-%% I updated this package.
+%% https://ctan.org/pkg/pageslts. Nevertheless, for compatibility with existing
+%% documents/packages as well as for the low amount of resources needed by the
+%% lastpage package (no new counter!), I updated this package.
%% Thanks go to Jeffrey P. Goldberg for allowing me to do this.
%%
%% While this package allows for things like "Page slash thepage{} of slash pageref{LastPage}"
@@ -59,7 +58,7 @@
%%
%% Part of the "lastpage" package
\NeedsTeXFormat{LaTeX2e}[1994/12/01]
-\ProvidesPackage{lastpageclassic}[2024/04/27 v2.1a %
+\ProvidesPackage{lastpageclassic}[2024/07/07 v2.1c %
Refers to last page's name (HMM; JPG)]
%% allows for things like "Page \thepage{} of \pageref{LastPage}"
%% to get "Page 7 of 9"
diff --git a/Master/texmf-dist/tex/latex/lastpage/lastpagemodern.sty b/Master/texmf-dist/tex/latex/lastpage/lastpagemodern.sty
index efeedd84bb3..abdec5b0852 100644
--- a/Master/texmf-dist/tex/latex/lastpage/lastpagemodern.sty
+++ b/Master/texmf-dist/tex/latex/lastpage/lastpagemodern.sty
@@ -9,7 +9,7 @@
%% This is a generated file.
%%
%% Project: lastpage
-%% Version: 2024-04-27 v2.1a
+%% Version: 2024-07-07 v2.1c
%% Info: Refers to last page's name
%%
%% Copyright (C) 2010 - 2024 by
@@ -32,10 +32,9 @@
%%
%% This package was invented by Jeffrey P. Goldberg.
%% I thought that a replacement was needed and therefore created the pageslts package,
-%% https://ctan.org/pkg/pageslts
-%% . Nevertheless, for compatibility with existing documents/packages as well as for
-%% the low amount of resources needed by the lastpage package (no new counter!),
-%% I updated this package.
+%% https://ctan.org/pkg/pageslts. Nevertheless, for compatibility with existing
+%% documents/packages as well as for the low amount of resources needed by the
+%% lastpage package (no new counter!), I updated this package.
%% Thanks go to Jeffrey P. Goldberg for allowing me to do this.
%%
%% While this package allows for things like "Page slash thepage{} of slash pageref{LastPage}"
@@ -59,7 +58,7 @@
%%
%% Part of the "lastpage" package
\NeedsTeXFormat{LaTeX2e}[2023-06-01]
-\ProvidesPackage{lastpagemodern}[2024-04-27 v2.1a %
+\ProvidesPackage{lastpagemodern}[2024-07-07 v2.1c %
Refers to last page's name (HMM; JPG)]
%% allows for things like "Page \thepage{} of \pageref{LastPage}"
%% to get "Page 7 of 9" or "Page VII of IX";
@@ -94,9 +93,43 @@
\if@nobreak\ifvmode\nobreak\fi\fi%
}
-%% similar to https://tex.stackexchange.com/a/12811/6865
-\def\lastpage@rmpage#1{\expandafter\lastpage@currentH#1\relax}
-\def\lastpage@currentH#1.#2\relax{#2}
+\newcommand{\lastpage@makeHy}{%
+ \gdef\lastpage@Hy{}%
+ \IfPackageLoadedTF{hyperref}{%
+ \ifHy@pageanchor%
+ \@ifundefined{@currentHpage}{%
+ \PackageError{lastpage}{%
+ Kernel command \string\@currentHpage\space is undefined}{%
+ Please contact the lastpage maintainer.}%
+ }{\xdef\lastpage@Hptest{Doc-Start}%
+ \ifx\lastpage@Hptest\@currentHpage\relax%
+ \gdef\lastpage@Hy{\@currentHpage}%
+ \else%
+ \edef\lastpage@Hptest{\@currentHpage}%
+ \ifx\lastpage@Hptest\empty\relax%
+ \else%
+ \gdef\lastpage@Hy{\lastpage@rmpage{\@currentHpage}}%
+ \ifx\lastpage@lastpageHy\empty\relax%
+ \PackageWarningNoLine{lastpage}{%
+ \string\@currentHpage\space is\MessageBreak%
+ \meaning\@currentHpage\MessageBreak%
+ not beginning with "page.",\MessageBreak%
+ \string\lastpage@lastpageHy\space is now let empty.}%
+ \fi%
+ \fi%
+ \fi%
+ }%
+ \fi%
+ }{}%
+ }%
+
+%% Code provided by David Carlisle at https://tex.stackexchange.com/a/721877
+\def\lastpage@rmpage#1{%
+ \expandafter\xlastpage@rmpage\expanded{#1}\xlastpage@rmpage page.%
+ \xlastpage@rmpage\xxlastpage@rmpage{#1}}
+\def\xlastpage@rmpage #1page.#2\xlastpage@rmpage#3\xxlastpage@rmpage#4{%
+ \if$\detokenize{#1}$#2%\else#4
+ \fi}
\newcommand{\lastpage@putl@bel}{%
\IfPackageLoadedTF{pageslts}{\relax}{%
@@ -125,8 +158,7 @@
}%
\protected@iwrite\@auxout{}{%
\string\gdef\string\lastpage@lastpage{\thepage}}%
- \gdef\lastpage@Hy{\IfPackageLoadedTF{hyperref}{%
- \ifHy@pageanchor\lastpage@rmpage{\@currentHpage}\fi}{}}%
+ \lastpage@makeHy%
\protected@iwrite\@auxout{}{%
\string\gdef\string\lastpage@lastpageHy{\lastpage@Hy}}%
\addtocounter{page}{+1}%
diff --git a/Master/texmf-dist/tex/latex/lete-sans-math/lete-sans-math.sty b/Master/texmf-dist/tex/latex/lete-sans-math/lete-sans-math.sty
index e6a2377fd9b..c7ab26fb3f0 100644
--- a/Master/texmf-dist/tex/latex/lete-sans-math/lete-sans-math.sty
+++ b/Master/texmf-dist/tex/latex/lete-sans-math/lete-sans-math.sty
@@ -1,9 +1,9 @@
\NeedsTeXFormat{LaTeX2e}[2022/06/01]
-\def\fileversion{0.40}
-\def\filedate{2024-05-11}
+\def\fileversion{0.41}
+\def\filedate{2024-07-17}
\ProvidesPackage{lete-sans-math}[\filedate\space\fileversion]
-%Ensure luatex or xetex engine
+% Ensure luatex or xetex engine
\RequirePackage{iftex}[2019/10/24]
\RequireTUTeX
\RequirePackage{unicode-math}
@@ -63,6 +63,10 @@
\Umathchardef\mbfdotlessi = 0 0 "E043 \relax
\Umathchardef\mbfdotlessj = 0 0 "E044 \relax
\Umathchardef\mithbar = 0 0 "E048 \relax
+ \Umathchardef\mupvarg = 0 0 "E04B \relax
+ \Umathchardef\mbfvarg = 0 0 "E04C \relax
+ \Umathchardef\mitvarg = 0 0 "E04D \relax
+ \Umathchardef\mbfitvarg = 0 0 "E04E \relax
\Umathchardef\varemptyset = 0 0 "E04F \relax
\Umathchardef\BbbDelta = 0 0 "E050 \relax
\Umathchardef\BbbTheta = 0 0 "E051 \relax
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusMono-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusMono-TLF.fd
new file mode 100644
index 00000000000..f45795d4973
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusMono-TLF.fd
@@ -0,0 +1,36 @@
+%% Generated by autoinst on 2024/09/22
+%%
+\ProvidesFile{LGRLibertinusMono-TLF.fd}
+ [2024/09/22 (autoinst) Font definitions for LGR/LibertinusMono-TLF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname LibertinusMono@scale\endcsname\relax
+ \let\LibertinusMono@@scale\@empty
+\else
+ \edef\LibertinusMono@@scale{s*[\csname LibertinusMono@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{LGR}{LibertinusMono-TLF}{\hyphenchar\font=-1}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{LGR}{LibertinusMono-TLF}{m}{n}{
+ <-> \LibertinusMono@@scale LibertinusMono-Regular-tlf-lgr
+}{}
+
+\DeclareFontShape{LGR}{LibertinusMono-TLF}{regular}{n}{
+ <-> alias * LibertinusMono-TLF/m/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-LF.fd
index fc819eff45d..115e899f2c6 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-LF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LGRLibertinusSans-LF.fd}
- [2022/11/07 (autoinst) Font definitions for LGR/LibertinusSans-LF.]
+ [2024/09/22 (autoinst) Font definitions for LGR/LibertinusSans-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,6 +20,25 @@
\DeclareFontFamily{LGR}{LibertinusSans-LF}{}
+% ---- b = bold ----
+
+\DeclareFontShape{LGR}{LibertinusSans-LF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-lgr
+}{}
+
+\DeclareFontShape{LGR}{LibertinusSans-LF}{bold}{n}{
+ <-> alias * LibertinusSans-LF/b/n
+}{}
+
+\DeclareFontShape{LGR}{LibertinusSans-LF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-sc-lgr
+}{}
+
+\DeclareFontShape{LGR}{LibertinusSans-LF}{bold}{sc}{
+ <-> alias * LibertinusSans-LF/b/sc
+}{}
+
+
% ---- m = regular ----
\DeclareFontShape{LGR}{LibertinusSans-LF}{m}{it}{
@@ -30,14 +49,6 @@
<-> alias * LibertinusSans-LF/m/it
}{}
-\DeclareFontShape{LGR}{LibertinusSans-LF}{m}{scit}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-lf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-LF}{regular}{scit}{
- <-> alias * LibertinusSans-LF/m/scit
-}{}
-
\DeclareFontShape{LGR}{LibertinusSans-LF}{m}{sc}{
<-> \LibertinusSans@@scale LibertinusSans-Regular-lf-sc-lgr
}{}
@@ -46,6 +57,14 @@
<-> alias * LibertinusSans-LF/m/sc
}{}
+\DeclareFontShape{LGR}{LibertinusSans-LF}{m}{scit}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-lf-sc-lgr
+}{}
+
+\DeclareFontShape{LGR}{LibertinusSans-LF}{regular}{scit}{
+ <-> alias * LibertinusSans-LF/m/scit
+}{}
+
\DeclareFontShape{LGR}{LibertinusSans-LF}{m}{n}{
<-> \LibertinusSans@@scale LibertinusSans-Regular-lf-lgr
}{}
@@ -71,81 +90,14 @@
}{}
-% ---- b = bold ----
-
-\DeclareFontShape{LGR}{LibertinusSans-LF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-lf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-LF}{bold}{scsl}{
- <-> alias * LibertinusSans-LF/b/scsl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-LF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-lf-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-LF}{bold}{sl}{
- <-> alias * LibertinusSans-LF/b/sl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-LF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-LF}{bold}{n}{
- <-> alias * LibertinusSans-LF/b/n
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-LF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-LF}{bold}{sc}{
- <-> alias * LibertinusSans-LF/b/sc
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-LF}{b}{it}{
- <-> ssub * LibertinusSans-LF/b/sl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-LF}{bold}{it}{
- <-> ssub * LibertinusSans-LF/bold/sl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-LF}{b}{scit}{
- <-> ssub * LibertinusSans-LF/b/scsl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-LF}{bold}{scit}{
- <-> ssub * LibertinusSans-LF/bold/scsl
-}{}
-
-
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{LGR}{LibertinusSans-LF}{bx}{scsl}{
- <-> ssub * LibertinusSans-LF/b/scsl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-LF}{bx}{it}{
- <-> ssub * LibertinusSans-LF/b/it
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-LF}{bx}{scit}{
- <-> ssub * LibertinusSans-LF/b/scit
+\DeclareFontShape{LGR}{LibertinusSans-LF}{bx}{n}{
+ <-> ssub * LibertinusSans-LF/b/n
}{}
\DeclareFontShape{LGR}{LibertinusSans-LF}{bx}{sc}{
<-> ssub * LibertinusSans-LF/b/sc
}{}
-\DeclareFontShape{LGR}{LibertinusSans-LF}{bx}{sl}{
- <-> ssub * LibertinusSans-LF/b/sl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-LF}{bx}{n}{
- <-> ssub * LibertinusSans-LF/b/n
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-OsF.fd
index 862b5a34f6f..dfd9716617f 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-OsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LGRLibertinusSans-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for LGR/LibertinusSans-OsF.]
+ [2024/09/22 (autoinst) Font definitions for LGR/LibertinusSans-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,16 +20,27 @@
\DeclareFontFamily{LGR}{LibertinusSans-OsF}{}
-% ---- m = regular ----
+% ---- b = bold ----
-\DeclareFontShape{LGR}{LibertinusSans-OsF}{m}{scit}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-osf-sc-lgr
+\DeclareFontShape{LGR}{LibertinusSans-OsF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSans-OsF}{regular}{scit}{
- <-> alias * LibertinusSans-OsF/m/scit
+\DeclareFontShape{LGR}{LibertinusSans-OsF}{bold}{n}{
+ <-> alias * LibertinusSans-OsF/b/n
+}{}
+
+\DeclareFontShape{LGR}{LibertinusSans-OsF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-sc-lgr
+}{}
+
+\DeclareFontShape{LGR}{LibertinusSans-OsF}{bold}{sc}{
+ <-> alias * LibertinusSans-OsF/b/sc
}{}
+
+% ---- m = regular ----
+
\DeclareFontShape{LGR}{LibertinusSans-OsF}{m}{it}{
<-> \LibertinusSans@@scale LibertinusSans-Italic-osf-lgr
}{}
@@ -46,6 +57,14 @@
<-> alias * LibertinusSans-OsF/m/n
}{}
+\DeclareFontShape{LGR}{LibertinusSans-OsF}{m}{scit}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-osf-sc-lgr
+}{}
+
+\DeclareFontShape{LGR}{LibertinusSans-OsF}{regular}{scit}{
+ <-> alias * LibertinusSans-OsF/m/scit
+}{}
+
\DeclareFontShape{LGR}{LibertinusSans-OsF}{m}{sc}{
<-> \LibertinusSans@@scale LibertinusSans-Regular-osf-sc-lgr
}{}
@@ -71,79 +90,12 @@
}{}
-% ---- b = bold ----
-
-\DeclareFontShape{LGR}{LibertinusSans-OsF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-osf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-OsF}{bold}{scsl}{
- <-> alias * LibertinusSans-OsF/b/scsl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-OsF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-osf-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-OsF}{bold}{sl}{
- <-> alias * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-OsF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-OsF}{bold}{n}{
- <-> alias * LibertinusSans-OsF/b/n
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-OsF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-OsF}{bold}{sc}{
- <-> alias * LibertinusSans-OsF/b/sc
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-OsF}{b}{it}{
- <-> ssub * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-OsF}{bold}{it}{
- <-> ssub * LibertinusSans-OsF/bold/sl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-OsF}{b}{scit}{
- <-> ssub * LibertinusSans-OsF/b/scsl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-OsF}{bold}{scit}{
- <-> ssub * LibertinusSans-OsF/bold/scsl
-}{}
-
-
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{LGR}{LibertinusSans-OsF}{bx}{it}{
- <-> ssub * LibertinusSans-OsF/b/it
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-OsF}{bx}{scsl}{
- <-> ssub * LibertinusSans-OsF/b/scsl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-OsF}{bx}{scit}{
- <-> ssub * LibertinusSans-OsF/b/scit
-}{}
-
\DeclareFontShape{LGR}{LibertinusSans-OsF}{bx}{sc}{
<-> ssub * LibertinusSans-OsF/b/sc
}{}
-\DeclareFontShape{LGR}{LibertinusSans-OsF}{bx}{sl}{
- <-> ssub * LibertinusSans-OsF/b/sl
-}{}
-
\DeclareFontShape{LGR}{LibertinusSans-OsF}{bx}{n}{
<-> ssub * LibertinusSans-OsF/b/n
}{}
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-Sup.fd
index 063022ae8fd..c9dfe420b77 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-Sup.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-Sup.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LGRLibertinusSans-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for LGR/LibertinusSans-Sup.]
+ [2024/09/22 (autoinst) Font definitions for LGR/LibertinusSans-Sup.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -57,35 +57,11 @@
<-> alias * LibertinusSans-Sup/b/n
}{}
-\DeclareFontShape{LGR}{LibertinusSans-Sup}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-sup-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-Sup}{bold}{sl}{
- <-> alias * LibertinusSans-Sup/b/sl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-Sup}{b}{it}{
- <-> ssub * LibertinusSans-Sup/b/sl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-Sup}{bold}{it}{
- <-> ssub * LibertinusSans-Sup/bold/sl
-}{}
-
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{LGR}{LibertinusSans-Sup}{bx}{sl}{
- <-> ssub * LibertinusSans-Sup/b/sl
-}{}
-
\DeclareFontShape{LGR}{LibertinusSans-Sup}{bx}{n}{
<-> ssub * LibertinusSans-Sup/b/n
}{}
-\DeclareFontShape{LGR}{LibertinusSans-Sup}{bx}{it}{
- <-> ssub * LibertinusSans-Sup/b/it
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-TLF.fd
index 0f54bc2d48e..328f60b7bed 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LGRLibertinusSans-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for LGR/LibertinusSans-TLF.]
+ [2024/09/22 (autoinst) Font definitions for LGR/LibertinusSans-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,16 +20,27 @@
\DeclareFontFamily{LGR}{LibertinusSans-TLF}{}
-% ---- m = regular ----
+% ---- b = bold ----
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{m}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-tlf-sc-lgr
+\DeclareFontShape{LGR}{LibertinusSans-TLF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{regular}{sc}{
- <-> alias * LibertinusSans-TLF/m/sc
+\DeclareFontShape{LGR}{LibertinusSans-TLF}{bold}{sc}{
+ <-> alias * LibertinusSans-TLF/b/sc
}{}
+\DeclareFontShape{LGR}{LibertinusSans-TLF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-lgr
+}{}
+
+\DeclareFontShape{LGR}{LibertinusSans-TLF}{bold}{n}{
+ <-> alias * LibertinusSans-TLF/b/n
+}{}
+
+
+% ---- m = regular ----
+
\DeclareFontShape{LGR}{LibertinusSans-TLF}{m}{n}{
<-> \LibertinusSans@@scale LibertinusSans-Regular-tlf-lgr
}{}
@@ -38,12 +49,12 @@
<-> alias * LibertinusSans-TLF/m/n
}{}
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{m}{it}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-tlf-lgr
+\DeclareFontShape{LGR}{LibertinusSans-TLF}{m}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{regular}{it}{
- <-> alias * LibertinusSans-TLF/m/it
+\DeclareFontShape{LGR}{LibertinusSans-TLF}{regular}{sc}{
+ <-> alias * LibertinusSans-TLF/m/sc
}{}
\DeclareFontShape{LGR}{LibertinusSans-TLF}{m}{scit}{
@@ -54,6 +65,14 @@
<-> alias * LibertinusSans-TLF/m/scit
}{}
+\DeclareFontShape{LGR}{LibertinusSans-TLF}{m}{it}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-tlf-lgr
+}{}
+
+\DeclareFontShape{LGR}{LibertinusSans-TLF}{regular}{it}{
+ <-> alias * LibertinusSans-TLF/m/it
+}{}
+
\DeclareFontShape{LGR}{LibertinusSans-TLF}{m}{scsl}{
<-> ssub * LibertinusSans-TLF/m/scit
}{}
@@ -71,81 +90,14 @@
}{}
-% ---- b = bold ----
-
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tlf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{bold}{scsl}{
- <-> alias * LibertinusSans-TLF/b/scsl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tlf-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{bold}{sl}{
- <-> alias * LibertinusSans-TLF/b/sl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{bold}{n}{
- <-> alias * LibertinusSans-TLF/b/n
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{bold}{sc}{
- <-> alias * LibertinusSans-TLF/b/sc
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{b}{it}{
- <-> ssub * LibertinusSans-TLF/b/sl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{bold}{it}{
- <-> ssub * LibertinusSans-TLF/bold/sl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{b}{scit}{
- <-> ssub * LibertinusSans-TLF/b/scsl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{bold}{scit}{
- <-> ssub * LibertinusSans-TLF/bold/scsl
-}{}
-
-
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{bx}{sl}{
- <-> ssub * LibertinusSans-TLF/b/sl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{bx}{sc}{
- <-> ssub * LibertinusSans-TLF/b/sc
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{bx}{scit}{
- <-> ssub * LibertinusSans-TLF/b/scit
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{bx}{it}{
- <-> ssub * LibertinusSans-TLF/b/it
-}{}
-
\DeclareFontShape{LGR}{LibertinusSans-TLF}{bx}{n}{
<-> ssub * LibertinusSans-TLF/b/n
}{}
-\DeclareFontShape{LGR}{LibertinusSans-TLF}{bx}{scsl}{
- <-> ssub * LibertinusSans-TLF/b/scsl
+\DeclareFontShape{LGR}{LibertinusSans-TLF}{bx}{sc}{
+ <-> ssub * LibertinusSans-TLF/b/sc
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-TOsF.fd
index 2011188e636..08cf3a25659 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSans-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LGRLibertinusSans-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for LGR/LibertinusSans-TOsF.]
+ [2024/09/22 (autoinst) Font definitions for LGR/LibertinusSans-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,67 +20,8 @@
\DeclareFontFamily{LGR}{LibertinusSans-TOsF}{}
-% ---- b = bold ----
-
-\DeclareFontShape{LGR}{LibertinusSans-TOsF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tosf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TOsF}{bold}{scsl}{
- <-> alias * LibertinusSans-TOsF/b/scsl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TOsF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TOsF}{bold}{n}{
- <-> alias * LibertinusSans-TOsF/b/n
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TOsF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tosf-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TOsF}{bold}{sl}{
- <-> alias * LibertinusSans-TOsF/b/sl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TOsF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TOsF}{bold}{sc}{
- <-> alias * LibertinusSans-TOsF/b/sc
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TOsF}{b}{it}{
- <-> ssub * LibertinusSans-TOsF/b/sl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TOsF}{bold}{it}{
- <-> ssub * LibertinusSans-TOsF/bold/sl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TOsF}{b}{scit}{
- <-> ssub * LibertinusSans-TOsF/b/scsl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TOsF}{bold}{scit}{
- <-> ssub * LibertinusSans-TOsF/bold/scsl
-}{}
-
-
% ---- m = regular ----
-\DeclareFontShape{LGR}{LibertinusSans-TOsF}{m}{scit}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-tosf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSans-TOsF}{regular}{scit}{
- <-> alias * LibertinusSans-TOsF/m/scit
-}{}
-
\DeclareFontShape{LGR}{LibertinusSans-TOsF}{m}{it}{
<-> \LibertinusSans@@scale LibertinusSans-Italic-tosf-lgr
}{}
@@ -105,6 +46,14 @@
<-> alias * LibertinusSans-TOsF/m/sc
}{}
+\DeclareFontShape{LGR}{LibertinusSans-TOsF}{m}{scit}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-tosf-sc-lgr
+}{}
+
+\DeclareFontShape{LGR}{LibertinusSans-TOsF}{regular}{scit}{
+ <-> alias * LibertinusSans-TOsF/m/scit
+}{}
+
\DeclareFontShape{LGR}{LibertinusSans-TOsF}{m}{scsl}{
<-> ssub * LibertinusSans-TOsF/m/scit
}{}
@@ -122,20 +71,27 @@
}{}
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+% ---- b = bold ----
-\DeclareFontShape{LGR}{LibertinusSans-TOsF}{bx}{scsl}{
- <-> ssub * LibertinusSans-TOsF/b/scsl
+\DeclareFontShape{LGR}{LibertinusSans-TOsF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSans-TOsF}{bx}{it}{
- <-> ssub * LibertinusSans-TOsF/b/it
+\DeclareFontShape{LGR}{LibertinusSans-TOsF}{bold}{n}{
+ <-> alias * LibertinusSans-TOsF/b/n
}{}
-\DeclareFontShape{LGR}{LibertinusSans-TOsF}{bx}{scit}{
- <-> ssub * LibertinusSans-TOsF/b/scit
+\DeclareFontShape{LGR}{LibertinusSans-TOsF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-sc-lgr
}{}
+\DeclareFontShape{LGR}{LibertinusSans-TOsF}{bold}{sc}{
+ <-> alias * LibertinusSans-TOsF/b/sc
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
\DeclareFontShape{LGR}{LibertinusSans-TOsF}{bx}{sc}{
<-> ssub * LibertinusSans-TOsF/b/sc
}{}
@@ -144,8 +100,4 @@
<-> ssub * LibertinusSans-TOsF/b/n
}{}
-\DeclareFontShape{LGR}{LibertinusSans-TOsF}{bx}{sl}{
- <-> ssub * LibertinusSans-TOsF/b/sl
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-LF.fd
index 27328a567a1..97047a6ad16 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-LF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LGRLibertinusSerif-LF.fd}
- [2022/11/07 (autoinst) Font definitions for LGR/LibertinusSerif-LF.]
+ [2024/09/22 (autoinst) Font definitions for LGR/LibertinusSerif-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -30,12 +30,12 @@
<-> alias * LibertinusSerif-LF/b/sc
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{b}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{bold}{it}{
- <-> alias * LibertinusSerif-LF/b/it
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{bold}{scit}{
+ <-> alias * LibertinusSerif-LF/b/scit
}{}
\DeclareFontShape{LGR}{LibertinusSerif-LF}{b}{n}{
@@ -46,20 +46,12 @@
<-> alias * LibertinusSerif-LF/b/n
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{b}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{bold}{scit}{
- <-> alias * LibertinusSerif-LF/b/scit
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{b}{sl}{
- <-> ssub * LibertinusSerif-LF/b/it
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{bold}{sl}{
- <-> ssub * LibertinusSerif-LF/bold/it
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{bold}{it}{
+ <-> alias * LibertinusSerif-LF/b/it
}{}
\DeclareFontShape{LGR}{LibertinusSerif-LF}{b}{scsl}{
@@ -70,106 +62,114 @@
<-> ssub * LibertinusSerif-LF/bold/scit
}{}
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{b}{sl}{
+ <-> ssub * LibertinusSerif-LF/b/it
+}{}
-% ---- m = regular ----
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-LF/bold/it
+}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-sc-lgr
+
+% ---- sb = semibold ----
+
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{regular}{sc}{
- <-> alias * LibertinusSerif-LF/m/sc
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{semibold}{it}{
+ <-> alias * LibertinusSerif-LF/sb/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{regular}{it}{
- <-> alias * LibertinusSerif-LF/m/it
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{semibold}{n}{
+ <-> alias * LibertinusSerif-LF/sb/n
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-sc-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{regular}{scit}{
- <-> alias * LibertinusSerif-LF/m/scit
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-LF/sb/sc
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{regular}{n}{
- <-> alias * LibertinusSerif-LF/m/n
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-LF/sb/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{m}{sl}{
- <-> ssub * LibertinusSerif-LF/m/it
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-LF/sb/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{regular}{sl}{
- <-> ssub * LibertinusSerif-LF/regular/it
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-LF/semibold/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{m}{scsl}{
- <-> ssub * LibertinusSerif-LF/m/scit
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-LF/sb/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-LF/regular/scit
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-LF/semibold/it
}{}
-% ---- sb = semibold ----
+% ---- m = regular ----
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-sc-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{semibold}{sc}{
- <-> alias * LibertinusSerif-LF/sb/sc
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{regular}{sc}{
+ <-> alias * LibertinusSerif-LF/m/sc
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{semibold}{it}{
- <-> alias * LibertinusSerif-LF/sb/it
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{regular}{scit}{
+ <-> alias * LibertinusSerif-LF/m/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{semibold}{n}{
- <-> alias * LibertinusSerif-LF/sb/n
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{regular}{n}{
+ <-> alias * LibertinusSerif-LF/m/n
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-sc-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{semibold}{scit}{
- <-> alias * LibertinusSerif-LF/sb/scit
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{regular}{it}{
+ <-> alias * LibertinusSerif-LF/m/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{sb}{sl}{
- <-> ssub * LibertinusSerif-LF/sb/it
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-LF/m/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-LF/semibold/it
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-LF/regular/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-LF/sb/scit
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{m}{sl}{
+ <-> ssub * LibertinusSerif-LF/m/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-LF/semibold/scit
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-LF/regular/it
}{}
@@ -183,6 +183,10 @@
<-> ssub * LibertinusSerif-LF/b/scit
}{}
+\DeclareFontShape{LGR}{LibertinusSerif-LF}{bx}{scsl}{
+ <-> ssub * LibertinusSerif-LF/b/scsl
+}{}
+
\DeclareFontShape{LGR}{LibertinusSerif-LF}{bx}{it}{
<-> ssub * LibertinusSerif-LF/b/it
}{}
@@ -195,8 +199,4 @@
<-> ssub * LibertinusSerif-LF/b/sl
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-LF}{bx}{scsl}{
- <-> ssub * LibertinusSerif-LF/b/scsl
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-OsF.fd
index 81f0108e13a..886ed1c7daf 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-OsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LGRLibertinusSerif-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for LGR/LibertinusSerif-OsF.]
+ [2024/09/22 (autoinst) Font definitions for LGR/LibertinusSerif-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,118 +20,110 @@
\DeclareFontFamily{LGR}{LibertinusSerif-OsF}{}
-% ---- b = bold ----
+% ---- m = regular ----
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-sc-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bold}{sc}{
- <-> alias * LibertinusSerif-OsF/b/sc
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{regular}{it}{
+ <-> alias * LibertinusSerif-OsF/m/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bold}{it}{
- <-> alias * LibertinusSerif-OsF/b/it
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{regular}{n}{
+ <-> alias * LibertinusSerif-OsF/m/n
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{b}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-sc-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bold}{scit}{
- <-> alias * LibertinusSerif-OsF/b/scit
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{regular}{sc}{
+ <-> alias * LibertinusSerif-OsF/m/sc
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bold}{n}{
- <-> alias * LibertinusSerif-OsF/b/n
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{regular}{scit}{
+ <-> alias * LibertinusSerif-OsF/m/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{b}{sl}{
- <-> ssub * LibertinusSerif-OsF/b/it
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/m/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bold}{sl}{
- <-> ssub * LibertinusSerif-OsF/bold/it
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/regular/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{b}{scsl}{
- <-> ssub * LibertinusSerif-OsF/b/scit
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{m}{sl}{
+ <-> ssub * LibertinusSerif-OsF/m/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bold}{scsl}{
- <-> ssub * LibertinusSerif-OsF/bold/scit
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-OsF/regular/it
}{}
-% ---- m = regular ----
+% ---- b = bold ----
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{regular}{it}{
- <-> alias * LibertinusSerif-OsF/m/it
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bold}{sc}{
+ <-> alias * LibertinusSerif-OsF/b/sc
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{b}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{regular}{n}{
- <-> alias * LibertinusSerif-OsF/m/n
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bold}{scit}{
+ <-> alias * LibertinusSerif-OsF/b/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-sc-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{regular}{scit}{
- <-> alias * LibertinusSerif-OsF/m/scit
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bold}{n}{
+ <-> alias * LibertinusSerif-OsF/b/n
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-sc-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{regular}{sc}{
- <-> alias * LibertinusSerif-OsF/m/sc
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bold}{it}{
+ <-> alias * LibertinusSerif-OsF/b/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{m}{sl}{
- <-> ssub * LibertinusSerif-OsF/m/it
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{b}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/b/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{regular}{sl}{
- <-> ssub * LibertinusSerif-OsF/regular/it
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bold}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/bold/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{m}{scsl}{
- <-> ssub * LibertinusSerif-OsF/m/scit
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{b}{sl}{
+ <-> ssub * LibertinusSerif-OsF/b/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-OsF/regular/scit
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-OsF/bold/it
}{}
% ---- sb = semibold ----
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{semibold}{n}{
- <-> alias * LibertinusSerif-OsF/sb/n
-}{}
-
\DeclareFontShape{LGR}{LibertinusSerif-OsF}{sb}{scit}{
<-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-sc-lgr
}{}
@@ -140,14 +132,6 @@
<-> alias * LibertinusSerif-OsF/sb/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{semibold}{it}{
- <-> alias * LibertinusSerif-OsF/sb/it
-}{}
-
\DeclareFontShape{LGR}{LibertinusSerif-OsF}{sb}{sc}{
<-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-sc-lgr
}{}
@@ -156,12 +140,20 @@
<-> alias * LibertinusSerif-OsF/sb/sc
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{sb}{sl}{
- <-> ssub * LibertinusSerif-OsF/sb/it
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-OsF/semibold/it
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{semibold}{n}{
+ <-> alias * LibertinusSerif-OsF/sb/n
+}{}
+
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-lgr
+}{}
+
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{semibold}{it}{
+ <-> alias * LibertinusSerif-OsF/sb/it
}{}
\DeclareFontShape{LGR}{LibertinusSerif-OsF}{sb}{scsl}{
@@ -172,15 +164,23 @@
<-> ssub * LibertinusSerif-OsF/semibold/scit
}{}
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-OsF/sb/it
+}{}
+
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-OsF/semibold/it
+}{}
+
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bx}{sc}{
- <-> ssub * LibertinusSerif-OsF/b/sc
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bx}{n}{
+ <-> ssub * LibertinusSerif-OsF/b/n
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bx}{sl}{
- <-> ssub * LibertinusSerif-OsF/b/sl
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bx}{scit}{
+ <-> ssub * LibertinusSerif-OsF/b/scit
}{}
\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bx}{scsl}{
@@ -191,12 +191,12 @@
<-> ssub * LibertinusSerif-OsF/b/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bx}{n}{
- <-> ssub * LibertinusSerif-OsF/b/n
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bx}{sl}{
+ <-> ssub * LibertinusSerif-OsF/b/sl
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bx}{scit}{
- <-> ssub * LibertinusSerif-OsF/b/scit
+\DeclareFontShape{LGR}{LibertinusSerif-OsF}{bx}{sc}{
+ <-> ssub * LibertinusSerif-OsF/b/sc
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-Sup.fd
index ae77f5926b5..ed955074ee8 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-Sup.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-Sup.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LGRLibertinusSerif-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for LGR/LibertinusSerif-Sup.]
+ [2024/09/22 (autoinst) Font definitions for LGR/LibertinusSerif-Sup.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,14 +22,6 @@
% ---- b = bold ----
-\DeclareFontShape{LGR}{LibertinusSerif-Sup}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-sup-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSerif-Sup}{bold}{it}{
- <-> alias * LibertinusSerif-Sup/b/it
-}{}
-
\DeclareFontShape{LGR}{LibertinusSerif-Sup}{b}{n}{
<-> \LibertinusSerif@@scale LibertinusSerif-Bold-sup-lgr
}{}
@@ -38,6 +30,14 @@
<-> alias * LibertinusSerif-Sup/b/n
}{}
+\DeclareFontShape{LGR}{LibertinusSerif-Sup}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-sup-lgr
+}{}
+
+\DeclareFontShape{LGR}{LibertinusSerif-Sup}{bold}{it}{
+ <-> alias * LibertinusSerif-Sup/b/it
+}{}
+
\DeclareFontShape{LGR}{LibertinusSerif-Sup}{b}{sl}{
<-> ssub * LibertinusSerif-Sup/b/it
}{}
@@ -47,72 +47,72 @@
}{}
-% ---- m = regular ----
+% ---- sb = semibold ----
-\DeclareFontShape{LGR}{LibertinusSerif-Sup}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-sup-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-Sup}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-sup-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-Sup}{regular}{n}{
- <-> alias * LibertinusSerif-Sup/m/n
+\DeclareFontShape{LGR}{LibertinusSerif-Sup}{semibold}{it}{
+ <-> alias * LibertinusSerif-Sup/sb/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-Sup}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-sup-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-Sup}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-sup-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-Sup}{regular}{it}{
- <-> alias * LibertinusSerif-Sup/m/it
+\DeclareFontShape{LGR}{LibertinusSerif-Sup}{semibold}{n}{
+ <-> alias * LibertinusSerif-Sup/sb/n
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-Sup}{m}{sl}{
- <-> ssub * LibertinusSerif-Sup/m/it
+\DeclareFontShape{LGR}{LibertinusSerif-Sup}{sb}{sl}{
+ <-> ssub * LibertinusSerif-Sup/sb/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-Sup}{regular}{sl}{
- <-> ssub * LibertinusSerif-Sup/regular/it
+\DeclareFontShape{LGR}{LibertinusSerif-Sup}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-Sup/semibold/it
}{}
-% ---- sb = semibold ----
+% ---- m = regular ----
-\DeclareFontShape{LGR}{LibertinusSerif-Sup}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-sup-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-Sup}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-sup-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-Sup}{semibold}{n}{
- <-> alias * LibertinusSerif-Sup/sb/n
+\DeclareFontShape{LGR}{LibertinusSerif-Sup}{regular}{n}{
+ <-> alias * LibertinusSerif-Sup/m/n
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-Sup}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-sup-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-Sup}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-sup-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-Sup}{semibold}{it}{
- <-> alias * LibertinusSerif-Sup/sb/it
+\DeclareFontShape{LGR}{LibertinusSerif-Sup}{regular}{it}{
+ <-> alias * LibertinusSerif-Sup/m/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-Sup}{sb}{sl}{
- <-> ssub * LibertinusSerif-Sup/sb/it
+\DeclareFontShape{LGR}{LibertinusSerif-Sup}{m}{sl}{
+ <-> ssub * LibertinusSerif-Sup/m/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-Sup}{semibold}{sl}{
- <-> ssub * LibertinusSerif-Sup/semibold/it
+\DeclareFontShape{LGR}{LibertinusSerif-Sup}{regular}{sl}{
+ <-> ssub * LibertinusSerif-Sup/regular/it
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{LGR}{LibertinusSerif-Sup}{bx}{it}{
- <-> ssub * LibertinusSerif-Sup/b/it
+\DeclareFontShape{LGR}{LibertinusSerif-Sup}{bx}{sl}{
+ <-> ssub * LibertinusSerif-Sup/b/sl
}{}
\DeclareFontShape{LGR}{LibertinusSerif-Sup}{bx}{n}{
<-> ssub * LibertinusSerif-Sup/b/n
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-Sup}{bx}{sl}{
- <-> ssub * LibertinusSerif-Sup/b/sl
+\DeclareFontShape{LGR}{LibertinusSerif-Sup}{bx}{it}{
+ <-> ssub * LibertinusSerif-Sup/b/it
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-TLF.fd
index 1f51644fe32..1bfe8c9f53a 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LGRLibertinusSerif-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for LGR/LibertinusSerif-TLF.]
+ [2024/09/22 (autoinst) Font definitions for LGR/LibertinusSerif-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,118 +20,110 @@
\DeclareFontFamily{LGR}{LibertinusSerif-TLF}{}
-% ---- sb = semibold ----
+% ---- m = regular ----
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{semibold}{n}{
- <-> alias * LibertinusSerif-TLF/sb/n
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{regular}{scit}{
+ <-> alias * LibertinusSerif-TLF/m/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-sc-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{semibold}{scit}{
- <-> alias * LibertinusSerif-TLF/sb/scit
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{regular}{sc}{
+ <-> alias * LibertinusSerif-TLF/m/sc
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{semibold}{it}{
- <-> alias * LibertinusSerif-TLF/sb/it
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{regular}{n}{
+ <-> alias * LibertinusSerif-TLF/m/n
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-sc-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{semibold}{sc}{
- <-> alias * LibertinusSerif-TLF/sb/sc
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{regular}{it}{
+ <-> alias * LibertinusSerif-TLF/m/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{sb}{sl}{
- <-> ssub * LibertinusSerif-TLF/sb/it
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/m/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-TLF/semibold/it
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/regular/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-TLF/sb/scit
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{m}{sl}{
+ <-> ssub * LibertinusSerif-TLF/m/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-TLF/semibold/scit
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-TLF/regular/it
}{}
-% ---- m = regular ----
+% ---- sb = semibold ----
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-sc-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{regular}{sc}{
- <-> alias * LibertinusSerif-TLF/m/sc
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-TLF/sb/sc
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{regular}{it}{
- <-> alias * LibertinusSerif-TLF/m/it
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-TLF/sb/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{regular}{n}{
- <-> alias * LibertinusSerif-TLF/m/n
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{semibold}{n}{
+ <-> alias * LibertinusSerif-TLF/sb/n
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-sc-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{regular}{scit}{
- <-> alias * LibertinusSerif-TLF/m/scit
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{semibold}{it}{
+ <-> alias * LibertinusSerif-TLF/sb/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{m}{sl}{
- <-> ssub * LibertinusSerif-TLF/m/it
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/sb/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{regular}{sl}{
- <-> ssub * LibertinusSerif-TLF/regular/it
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/semibold/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{m}{scsl}{
- <-> ssub * LibertinusSerif-TLF/m/scit
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-TLF/sb/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-TLF/regular/scit
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-TLF/semibold/it
}{}
% ---- b = bold ----
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{bold}{sc}{
- <-> alias * LibertinusSerif-TLF/b/sc
-}{}
-
\DeclareFontShape{LGR}{LibertinusSerif-TLF}{b}{it}{
<-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tlf-lgr
}{}
@@ -140,14 +132,6 @@
<-> alias * LibertinusSerif-TLF/b/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{bold}{n}{
- <-> alias * LibertinusSerif-TLF/b/n
-}{}
-
\DeclareFontShape{LGR}{LibertinusSerif-TLF}{b}{scit}{
<-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tlf-sc-lgr
}{}
@@ -156,12 +140,20 @@
<-> alias * LibertinusSerif-TLF/b/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{b}{sl}{
- <-> ssub * LibertinusSerif-TLF/b/it
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{bold}{sl}{
- <-> ssub * LibertinusSerif-TLF/bold/it
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{bold}{sc}{
+ <-> alias * LibertinusSerif-TLF/b/sc
+}{}
+
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-lgr
+}{}
+
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{bold}{n}{
+ <-> alias * LibertinusSerif-TLF/b/n
}{}
\DeclareFontShape{LGR}{LibertinusSerif-TLF}{b}{scsl}{
@@ -172,6 +164,14 @@
<-> ssub * LibertinusSerif-TLF/bold/scit
}{}
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{b}{sl}{
+ <-> ssub * LibertinusSerif-TLF/b/it
+}{}
+
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-TLF/bold/it
+}{}
+
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
@@ -183,20 +183,20 @@
<-> ssub * LibertinusSerif-TLF/b/sl
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{bx}{scsl}{
- <-> ssub * LibertinusSerif-TLF/b/scsl
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{bx}{it}{
- <-> ssub * LibertinusSerif-TLF/b/it
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{bx}{scit}{
+ <-> ssub * LibertinusSerif-TLF/b/scit
}{}
\DeclareFontShape{LGR}{LibertinusSerif-TLF}{bx}{n}{
<-> ssub * LibertinusSerif-TLF/b/n
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TLF}{bx}{scit}{
- <-> ssub * LibertinusSerif-TLF/b/scit
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{bx}{it}{
+ <-> ssub * LibertinusSerif-TLF/b/it
+}{}
+
+\DeclareFontShape{LGR}{LibertinusSerif-TLF}{bx}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/b/scsl
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-TOsF.fd
index 2989dba1eeb..3a60f6c7109 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerif-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LGRLibertinusSerif-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for LGR/LibertinusSerif-TOsF.]
+ [2024/09/22 (autoinst) Font definitions for LGR/LibertinusSerif-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,20 +22,20 @@
% ---- b = bold ----
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-sc-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{b}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{bold}{sc}{
- <-> alias * LibertinusSerif-TOsF/b/sc
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{bold}{scit}{
+ <-> alias * LibertinusSerif-TOsF/b/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{bold}{it}{
- <-> alias * LibertinusSerif-TOsF/b/it
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{bold}{sc}{
+ <-> alias * LibertinusSerif-TOsF/b/sc
}{}
\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{b}{n}{
@@ -46,20 +46,12 @@
<-> alias * LibertinusSerif-TOsF/b/n
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{b}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-sc-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{bold}{scit}{
- <-> alias * LibertinusSerif-TOsF/b/scit
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{b}{sl}{
- <-> ssub * LibertinusSerif-TOsF/b/it
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{bold}{sl}{
- <-> ssub * LibertinusSerif-TOsF/bold/it
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{bold}{it}{
+ <-> alias * LibertinusSerif-TOsF/b/it
}{}
\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{b}{scsl}{
@@ -70,133 +62,141 @@
<-> ssub * LibertinusSerif-TOsF/bold/scit
}{}
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{b}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/b/it
+}{}
-% ---- m = regular ----
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/bold/it
+}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-lgr
+
+% ---- sb = semibold ----
+
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{regular}{it}{
- <-> alias * LibertinusSerif-TOsF/m/it
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-TOsF/sb/sc
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-sc-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{regular}{scit}{
- <-> alias * LibertinusSerif-TOsF/m/scit
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-TOsF/sb/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{regular}{n}{
- <-> alias * LibertinusSerif-TOsF/m/n
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{semibold}{n}{
+ <-> alias * LibertinusSerif-TOsF/sb/n
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-sc-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{regular}{sc}{
- <-> alias * LibertinusSerif-TOsF/m/sc
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{semibold}{it}{
+ <-> alias * LibertinusSerif-TOsF/sb/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{m}{sl}{
- <-> ssub * LibertinusSerif-TOsF/m/it
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/sb/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{regular}{sl}{
- <-> ssub * LibertinusSerif-TOsF/regular/it
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/semibold/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{m}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/m/scit
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/sb/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/regular/scit
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/semibold/it
}{}
-% ---- sb = semibold ----
+% ---- m = regular ----
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-sc-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{semibold}{sc}{
- <-> alias * LibertinusSerif-TOsF/sb/sc
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{regular}{it}{
+ <-> alias * LibertinusSerif-TOsF/m/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{semibold}{n}{
- <-> alias * LibertinusSerif-TOsF/sb/n
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{regular}{n}{
+ <-> alias * LibertinusSerif-TOsF/m/n
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-sc-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{semibold}{scit}{
- <-> alias * LibertinusSerif-TOsF/sb/scit
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{regular}{sc}{
+ <-> alias * LibertinusSerif-TOsF/m/sc
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-lgr
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-sc-lgr
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{semibold}{it}{
- <-> alias * LibertinusSerif-TOsF/sb/it
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{regular}{scit}{
+ <-> alias * LibertinusSerif-TOsF/m/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{sb}{sl}{
- <-> ssub * LibertinusSerif-TOsF/sb/it
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/m/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-TOsF/semibold/it
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/regular/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/sb/scit
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{m}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/m/it
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/semibold/scit
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/regular/it
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{bx}{it}{
- <-> ssub * LibertinusSerif-TOsF/b/it
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{bx}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/b/scsl
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{bx}{scit}{
- <-> ssub * LibertinusSerif-TOsF/b/scit
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{bx}{it}{
+ <-> ssub * LibertinusSerif-TOsF/b/it
}{}
\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{bx}{n}{
<-> ssub * LibertinusSerif-TOsF/b/n
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{bx}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/b/scsl
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{bx}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/b/sl
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{bx}{sc}{
- <-> ssub * LibertinusSerif-TOsF/b/sc
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{bx}{scit}{
+ <-> ssub * LibertinusSerif-TOsF/b/scit
}{}
-\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{bx}{sl}{
- <-> ssub * LibertinusSerif-TOsF/b/sl
+\DeclareFontShape{LGR}{LibertinusSerif-TOsF}{bx}{sc}{
+ <-> ssub * LibertinusSerif-TOsF/b/sc
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-LF.fd
deleted file mode 100644
index 6aba524166c..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-LF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{LGRLibertinusSerifDisplay-LF.fd}
- [2022/11/07 (autoinst) Font definitions for LGR/LibertinusSerifDisplay-LF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{LGR}{LibertinusSerifDisplay-LF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{LGR}{LibertinusSerifDisplay-LF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-lf-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSerifDisplay-LF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-LF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-OsF.fd
deleted file mode 100644
index c28fadb8c52..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-OsF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{LGRLibertinusSerifDisplay-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for LGR/LibertinusSerifDisplay-OsF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{LGR}{LibertinusSerifDisplay-OsF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{LGR}{LibertinusSerifDisplay-OsF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-osf-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSerifDisplay-OsF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-OsF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-Sup.fd
deleted file mode 100644
index 4ca7f39724f..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-Sup.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{LGRLibertinusSerifDisplay-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for LGR/LibertinusSerifDisplay-Sup.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{LGR}{LibertinusSerifDisplay-Sup}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{LGR}{LibertinusSerifDisplay-Sup}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-sup-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSerifDisplay-Sup}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-Sup/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-TLF.fd
deleted file mode 100644
index a31baf6fba5..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-TLF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{LGRLibertinusSerifDisplay-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for LGR/LibertinusSerifDisplay-TLF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{LGR}{LibertinusSerifDisplay-TLF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{LGR}{LibertinusSerifDisplay-TLF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-tlf-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSerifDisplay-TLF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-TLF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-TOsF.fd
deleted file mode 100644
index d19f1c2f758..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifDisplay-TOsF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{LGRLibertinusSerifDisplay-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for LGR/LibertinusSerifDisplay-TOsF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{LGR}{LibertinusSerifDisplay-TOsF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{LGR}{LibertinusSerifDisplay-TOsF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-tosf-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSerifDisplay-TOsF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-TOsF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifInitials-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifInitials-TLF.fd
deleted file mode 100644
index 2c8271fddec..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LGRLibertinusSerifInitials-TLF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{LGRLibertinusSerifInitials-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for LGR/LibertinusSerifInitials-TLF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifInitials@scale\endcsname\relax
- \let\LibertinusSerifInitials@@scale\@empty
-\else
- \edef\LibertinusSerifInitials@@scale{s*[\csname LibertinusSerifInitials@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{LGR}{LibertinusSerifInitials-TLF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{LGR}{LibertinusSerifInitials-TLF}{m}{n}{
- <-> \LibertinusSerifInitials@@scale LibertinusSerifInitials-Regular-tlf-lgr
-}{}
-
-\DeclareFontShape{LGR}{LibertinusSerifInitials-TLF}{regular}{n}{
- <-> alias * LibertinusSerifInitials-TLF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusMono-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusMono-TLF.fd
index b0a34cd620b..1db4c228d04 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusMono-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusMono-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LY1LibertinusMono-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for LY1/LibertinusMono-TLF.]
+ [2024/09/22 (autoinst) Font definitions for LY1/LibertinusMono-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -30,62 +30,7 @@
<-> alias * LibertinusMono-TLF/m/n
}{}
-\DeclareFontShape{LY1}{LibertinusMono-TLF}{m}{sl}{
- <-> \LibertinusMono@@scale LibertinusMono-Oblique-tlf-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusMono-TLF}{regular}{sl}{
- <-> alias * LibertinusMono-TLF/m/sl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusMono-TLF}{m}{it}{
- <-> ssub * LibertinusMono-TLF/m/sl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusMono-TLF}{regular}{it}{
- <-> ssub * LibertinusMono-TLF/regular/sl
-}{}
-
-
-% ---- b = bold ----
-
-\DeclareFontShape{LY1}{LibertinusMono-TLF}{b}{n}{
- <-> \LibertinusMono@@scale LibertinusMono-Bold-tlf-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusMono-TLF}{bold}{n}{
- <-> alias * LibertinusMono-TLF/b/n
-}{}
-
-\DeclareFontShape{LY1}{LibertinusMono-TLF}{b}{sl}{
- <-> \LibertinusMono@@scale LibertinusMono-BoldOblique-tlf-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusMono-TLF}{bold}{sl}{
- <-> alias * LibertinusMono-TLF/b/sl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusMono-TLF}{b}{it}{
- <-> ssub * LibertinusMono-TLF/b/sl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusMono-TLF}{bold}{it}{
- <-> ssub * LibertinusMono-TLF/bold/sl
-}{}
-
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{LY1}{LibertinusMono-TLF}{bx}{n}{
- <-> ssub * LibertinusMono-TLF/b/n
-}{}
-
-\DeclareFontShape{LY1}{LibertinusMono-TLF}{bx}{it}{
- <-> ssub * LibertinusMono-TLF/b/it
-}{}
-
-\DeclareFontShape{LY1}{LibertinusMono-TLF}{bx}{sl}{
- <-> ssub * LibertinusMono-TLF/b/sl
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-LF.fd
index 8b6004a304b..b40fd45c6ef 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-LF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LY1LibertinusSans-LF.fd}
- [2022/11/07 (autoinst) Font definitions for LY1/LibertinusSans-LF.]
+ [2024/09/22 (autoinst) Font definitions for LY1/LibertinusSans-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,22 +22,6 @@
% ---- b = bold ----
-\DeclareFontShape{LY1}{LibertinusSans-LF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-lf-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-LF}{bold}{sl}{
- <-> alias * LibertinusSans-LF/b/sl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-LF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-LF}{bold}{n}{
- <-> alias * LibertinusSans-LF/b/n
-}{}
-
\DeclareFontShape{LY1}{LibertinusSans-LF}{b}{sc}{
<-> \LibertinusSans@@scale LibertinusSans-Bold-lf-sc-ly1
}{}
@@ -46,28 +30,12 @@
<-> alias * LibertinusSans-LF/b/sc
}{}
-\DeclareFontShape{LY1}{LibertinusSans-LF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-lf-sc-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-LF}{bold}{scsl}{
- <-> alias * LibertinusSans-LF/b/scsl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-LF}{b}{it}{
- <-> ssub * LibertinusSans-LF/b/sl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-LF}{bold}{it}{
- <-> ssub * LibertinusSans-LF/bold/sl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-LF}{b}{scit}{
- <-> ssub * LibertinusSans-LF/b/scsl
+\DeclareFontShape{LY1}{LibertinusSans-LF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSans-LF}{bold}{scit}{
- <-> ssub * LibertinusSans-LF/bold/scsl
+\DeclareFontShape{LY1}{LibertinusSans-LF}{bold}{n}{
+ <-> alias * LibertinusSans-LF/b/n
}{}
@@ -81,12 +49,12 @@
<-> alias * LibertinusSans-LF/m/it
}{}
-\DeclareFontShape{LY1}{LibertinusSans-LF}{m}{scit}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-lf-sc-ly1
+\DeclareFontShape{LY1}{LibertinusSans-LF}{m}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-lf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSans-LF}{regular}{scit}{
- <-> alias * LibertinusSans-LF/m/scit
+\DeclareFontShape{LY1}{LibertinusSans-LF}{regular}{n}{
+ <-> alias * LibertinusSans-LF/m/n
}{}
\DeclareFontShape{LY1}{LibertinusSans-LF}{m}{sc}{
@@ -97,12 +65,12 @@
<-> alias * LibertinusSans-LF/m/sc
}{}
-\DeclareFontShape{LY1}{LibertinusSans-LF}{m}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-lf-ly1
+\DeclareFontShape{LY1}{LibertinusSans-LF}{m}{scit}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSans-LF}{regular}{n}{
- <-> alias * LibertinusSans-LF/m/n
+\DeclareFontShape{LY1}{LibertinusSans-LF}{regular}{scit}{
+ <-> alias * LibertinusSans-LF/m/scit
}{}
\DeclareFontShape{LY1}{LibertinusSans-LF}{m}{scsl}{
@@ -124,28 +92,12 @@
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{LY1}{LibertinusSans-LF}{bx}{sc}{
- <-> ssub * LibertinusSans-LF/b/sc
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-LF}{bx}{sl}{
- <-> ssub * LibertinusSans-LF/b/sl
-}{}
-
\DeclareFontShape{LY1}{LibertinusSans-LF}{bx}{n}{
<-> ssub * LibertinusSans-LF/b/n
}{}
-\DeclareFontShape{LY1}{LibertinusSans-LF}{bx}{scsl}{
- <-> ssub * LibertinusSans-LF/b/scsl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-LF}{bx}{it}{
- <-> ssub * LibertinusSans-LF/b/it
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-LF}{bx}{scit}{
- <-> ssub * LibertinusSans-LF/b/scit
+\DeclareFontShape{LY1}{LibertinusSans-LF}{bx}{sc}{
+ <-> ssub * LibertinusSans-LF/b/sc
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-OsF.fd
index db2abe49902..8da5ddb9b34 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-OsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LY1LibertinusSans-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for LY1/LibertinusSans-OsF.]
+ [2024/09/22 (autoinst) Font definitions for LY1/LibertinusSans-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,6 +20,25 @@
\DeclareFontFamily{LY1}{LibertinusSans-OsF}{}
+% ---- b = bold ----
+
+\DeclareFontShape{LY1}{LibertinusSans-OsF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-ly1
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSans-OsF}{bold}{n}{
+ <-> alias * LibertinusSans-OsF/b/n
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSans-OsF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSans-OsF}{bold}{sc}{
+ <-> alias * LibertinusSans-OsF/b/sc
+}{}
+
+
% ---- m = regular ----
\DeclareFontShape{LY1}{LibertinusSans-OsF}{m}{it}{
@@ -30,14 +49,6 @@
<-> alias * LibertinusSans-OsF/m/it
}{}
-\DeclareFontShape{LY1}{LibertinusSans-OsF}{m}{scit}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-osf-sc-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-OsF}{regular}{scit}{
- <-> alias * LibertinusSans-OsF/m/scit
-}{}
-
\DeclareFontShape{LY1}{LibertinusSans-OsF}{m}{sc}{
<-> \LibertinusSans@@scale LibertinusSans-Regular-osf-sc-ly1
}{}
@@ -46,6 +57,14 @@
<-> alias * LibertinusSans-OsF/m/sc
}{}
+\DeclareFontShape{LY1}{LibertinusSans-OsF}{m}{scit}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-osf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSans-OsF}{regular}{scit}{
+ <-> alias * LibertinusSans-OsF/m/scit
+}{}
+
\DeclareFontShape{LY1}{LibertinusSans-OsF}{m}{n}{
<-> \LibertinusSans@@scale LibertinusSans-Regular-osf-ly1
}{}
@@ -71,81 +90,14 @@
}{}
-% ---- b = bold ----
-
-\DeclareFontShape{LY1}{LibertinusSans-OsF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-osf-sc-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-OsF}{bold}{scsl}{
- <-> alias * LibertinusSans-OsF/b/scsl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-OsF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-sc-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-OsF}{bold}{sc}{
- <-> alias * LibertinusSans-OsF/b/sc
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-OsF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-OsF}{bold}{n}{
- <-> alias * LibertinusSans-OsF/b/n
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-OsF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-osf-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-OsF}{bold}{sl}{
- <-> alias * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-OsF}{b}{it}{
- <-> ssub * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-OsF}{bold}{it}{
- <-> ssub * LibertinusSans-OsF/bold/sl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-OsF}{b}{scit}{
- <-> ssub * LibertinusSans-OsF/b/scsl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-OsF}{bold}{scit}{
- <-> ssub * LibertinusSans-OsF/bold/scsl
-}{}
-
-
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{LY1}{LibertinusSans-OsF}{bx}{sl}{
- <-> ssub * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-OsF}{bx}{n}{
- <-> ssub * LibertinusSans-OsF/b/n
-}{}
-
\DeclareFontShape{LY1}{LibertinusSans-OsF}{bx}{sc}{
<-> ssub * LibertinusSans-OsF/b/sc
}{}
-\DeclareFontShape{LY1}{LibertinusSans-OsF}{bx}{scit}{
- <-> ssub * LibertinusSans-OsF/b/scit
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-OsF}{bx}{it}{
- <-> ssub * LibertinusSans-OsF/b/it
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-OsF}{bx}{scsl}{
- <-> ssub * LibertinusSans-OsF/b/scsl
+\DeclareFontShape{LY1}{LibertinusSans-OsF}{bx}{n}{
+ <-> ssub * LibertinusSans-OsF/b/n
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-Sup.fd
index faaa4225cb0..896ca2095ef 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-Sup.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-Sup.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LY1LibertinusSans-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for LY1/LibertinusSans-Sup.]
+ [2024/09/22 (autoinst) Font definitions for LY1/LibertinusSans-Sup.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,14 +22,6 @@
% ---- m = regular ----
-\DeclareFontShape{LY1}{LibertinusSans-Sup}{m}{it}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-sup-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-Sup}{regular}{it}{
- <-> alias * LibertinusSans-Sup/m/it
-}{}
-
\DeclareFontShape{LY1}{LibertinusSans-Sup}{m}{n}{
<-> \LibertinusSans@@scale LibertinusSans-Regular-sup-ly1
}{}
@@ -38,6 +30,14 @@
<-> alias * LibertinusSans-Sup/m/n
}{}
+\DeclareFontShape{LY1}{LibertinusSans-Sup}{m}{it}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-sup-ly1
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSans-Sup}{regular}{it}{
+ <-> alias * LibertinusSans-Sup/m/it
+}{}
+
\DeclareFontShape{LY1}{LibertinusSans-Sup}{m}{sl}{
<-> ssub * LibertinusSans-Sup/m/it
}{}
@@ -57,22 +57,6 @@
<-> alias * LibertinusSans-Sup/b/n
}{}
-\DeclareFontShape{LY1}{LibertinusSans-Sup}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-sup-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-Sup}{bold}{sl}{
- <-> alias * LibertinusSans-Sup/b/sl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-Sup}{b}{it}{
- <-> ssub * LibertinusSans-Sup/b/sl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-Sup}{bold}{it}{
- <-> ssub * LibertinusSans-Sup/bold/sl
-}{}
-
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
@@ -80,12 +64,4 @@
<-> ssub * LibertinusSans-Sup/b/n
}{}
-\DeclareFontShape{LY1}{LibertinusSans-Sup}{bx}{sl}{
- <-> ssub * LibertinusSans-Sup/b/sl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-Sup}{bx}{it}{
- <-> ssub * LibertinusSans-Sup/b/it
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-TLF.fd
index 001b5eb5d5b..0d32a54d929 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LY1LibertinusSans-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for LY1/LibertinusSans-TLF.]
+ [2024/09/22 (autoinst) Font definitions for LY1/LibertinusSans-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,14 +22,6 @@
% ---- b = bold ----
-\DeclareFontShape{LY1}{LibertinusSans-TLF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tlf-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TLF}{bold}{sl}{
- <-> alias * LibertinusSans-TLF/b/sl
-}{}
-
\DeclareFontShape{LY1}{LibertinusSans-TLF}{b}{n}{
<-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-ly1
}{}
@@ -46,41 +38,9 @@
<-> alias * LibertinusSans-TLF/b/sc
}{}
-\DeclareFontShape{LY1}{LibertinusSans-TLF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tlf-sc-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TLF}{bold}{scsl}{
- <-> alias * LibertinusSans-TLF/b/scsl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TLF}{b}{it}{
- <-> ssub * LibertinusSans-TLF/b/sl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TLF}{bold}{it}{
- <-> ssub * LibertinusSans-TLF/bold/sl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TLF}{b}{scit}{
- <-> ssub * LibertinusSans-TLF/b/scsl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TLF}{bold}{scit}{
- <-> ssub * LibertinusSans-TLF/bold/scsl
-}{}
-
% ---- m = regular ----
-\DeclareFontShape{LY1}{LibertinusSans-TLF}{m}{scit}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-tlf-sc-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TLF}{regular}{scit}{
- <-> alias * LibertinusSans-TLF/m/scit
-}{}
-
\DeclareFontShape{LY1}{LibertinusSans-TLF}{m}{it}{
<-> \LibertinusSans@@scale LibertinusSans-Italic-tlf-ly1
}{}
@@ -97,6 +57,14 @@
<-> alias * LibertinusSans-TLF/m/n
}{}
+\DeclareFontShape{LY1}{LibertinusSans-TLF}{m}{scit}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-tlf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSans-TLF}{regular}{scit}{
+ <-> alias * LibertinusSans-TLF/m/scit
+}{}
+
\DeclareFontShape{LY1}{LibertinusSans-TLF}{m}{sc}{
<-> \LibertinusSans@@scale LibertinusSans-Regular-tlf-sc-ly1
}{}
@@ -124,28 +92,12 @@
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{LY1}{LibertinusSans-TLF}{bx}{n}{
- <-> ssub * LibertinusSans-TLF/b/n
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TLF}{bx}{sl}{
- <-> ssub * LibertinusSans-TLF/b/sl
-}{}
-
\DeclareFontShape{LY1}{LibertinusSans-TLF}{bx}{sc}{
<-> ssub * LibertinusSans-TLF/b/sc
}{}
-\DeclareFontShape{LY1}{LibertinusSans-TLF}{bx}{scit}{
- <-> ssub * LibertinusSans-TLF/b/scit
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TLF}{bx}{scsl}{
- <-> ssub * LibertinusSans-TLF/b/scsl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TLF}{bx}{it}{
- <-> ssub * LibertinusSans-TLF/b/it
+\DeclareFontShape{LY1}{LibertinusSans-TLF}{bx}{n}{
+ <-> ssub * LibertinusSans-TLF/b/n
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-TOsF.fd
index 9c1ba02dc65..e6b2e7ee92c 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSans-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LY1LibertinusSans-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for LY1/LibertinusSans-TOsF.]
+ [2024/09/22 (autoinst) Font definitions for LY1/LibertinusSans-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,22 +22,6 @@
% ---- b = bold ----
-\DeclareFontShape{LY1}{LibertinusSans-TOsF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-sc-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TOsF}{bold}{sc}{
- <-> alias * LibertinusSans-TOsF/b/sc
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TOsF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tosf-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TOsF}{bold}{sl}{
- <-> alias * LibertinusSans-TOsF/b/sl
-}{}
-
\DeclareFontShape{LY1}{LibertinusSans-TOsF}{b}{n}{
<-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-ly1
}{}
@@ -46,39 +30,23 @@
<-> alias * LibertinusSans-TOsF/b/n
}{}
-\DeclareFontShape{LY1}{LibertinusSans-TOsF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tosf-sc-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TOsF}{bold}{scsl}{
- <-> alias * LibertinusSans-TOsF/b/scsl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TOsF}{b}{it}{
- <-> ssub * LibertinusSans-TOsF/b/sl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TOsF}{bold}{it}{
- <-> ssub * LibertinusSans-TOsF/bold/sl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TOsF}{b}{scit}{
- <-> ssub * LibertinusSans-TOsF/b/scsl
+\DeclareFontShape{LY1}{LibertinusSans-TOsF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSans-TOsF}{bold}{scit}{
- <-> ssub * LibertinusSans-TOsF/bold/scsl
+\DeclareFontShape{LY1}{LibertinusSans-TOsF}{bold}{sc}{
+ <-> alias * LibertinusSans-TOsF/b/sc
}{}
% ---- m = regular ----
-\DeclareFontShape{LY1}{LibertinusSans-TOsF}{m}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-tosf-ly1
+\DeclareFontShape{LY1}{LibertinusSans-TOsF}{m}{it}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSans-TOsF}{regular}{n}{
- <-> alias * LibertinusSans-TOsF/m/n
+\DeclareFontShape{LY1}{LibertinusSans-TOsF}{regular}{it}{
+ <-> alias * LibertinusSans-TOsF/m/it
}{}
\DeclareFontShape{LY1}{LibertinusSans-TOsF}{m}{sc}{
@@ -97,12 +65,12 @@
<-> alias * LibertinusSans-TOsF/m/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSans-TOsF}{m}{it}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-tosf-ly1
+\DeclareFontShape{LY1}{LibertinusSans-TOsF}{m}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-tosf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSans-TOsF}{regular}{it}{
- <-> alias * LibertinusSans-TOsF/m/it
+\DeclareFontShape{LY1}{LibertinusSans-TOsF}{regular}{n}{
+ <-> alias * LibertinusSans-TOsF/m/n
}{}
\DeclareFontShape{LY1}{LibertinusSans-TOsF}{m}{scsl}{
@@ -124,28 +92,12 @@
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{LY1}{LibertinusSans-TOsF}{bx}{sc}{
- <-> ssub * LibertinusSans-TOsF/b/sc
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TOsF}{bx}{sl}{
- <-> ssub * LibertinusSans-TOsF/b/sl
-}{}
-
\DeclareFontShape{LY1}{LibertinusSans-TOsF}{bx}{n}{
<-> ssub * LibertinusSans-TOsF/b/n
}{}
-\DeclareFontShape{LY1}{LibertinusSans-TOsF}{bx}{scsl}{
- <-> ssub * LibertinusSans-TOsF/b/scsl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TOsF}{bx}{it}{
- <-> ssub * LibertinusSans-TOsF/b/it
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSans-TOsF}{bx}{scit}{
- <-> ssub * LibertinusSans-TOsF/b/scit
+\DeclareFontShape{LY1}{LibertinusSans-TOsF}{bx}{sc}{
+ <-> ssub * LibertinusSans-TOsF/b/sc
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-LF.fd
index bee6acf0c49..31693e9b978 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-LF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LY1LibertinusSerif-LF.fd}
- [2022/11/07 (autoinst) Font definitions for LY1/LibertinusSerif-LF.]
+ [2024/09/22 (autoinst) Font definitions for LY1/LibertinusSerif-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,59 +20,24 @@
\DeclareFontFamily{LY1}{LibertinusSerif-LF}{}
-% ---- b = bold ----
-
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{bold}{it}{
- <-> alias * LibertinusSerif-LF/b/it
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{bold}{n}{
- <-> alias * LibertinusSerif-LF/b/n
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{b}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-sc-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{bold}{scit}{
- <-> alias * LibertinusSerif-LF/b/scit
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-sc-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{bold}{sc}{
- <-> alias * LibertinusSerif-LF/b/sc
-}{}
+% ---- m = regular ----
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{b}{sl}{
- <-> ssub * LibertinusSerif-LF/b/it
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{bold}{sl}{
- <-> ssub * LibertinusSerif-LF/bold/it
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{regular}{it}{
+ <-> alias * LibertinusSerif-LF/m/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{b}{scsl}{
- <-> ssub * LibertinusSerif-LF/b/scit
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{bold}{scsl}{
- <-> ssub * LibertinusSerif-LF/bold/scit
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{regular}{n}{
+ <-> alias * LibertinusSerif-LF/m/n
}{}
-
-% ---- m = regular ----
-
\DeclareFontShape{LY1}{LibertinusSerif-LF}{m}{sc}{
<-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-sc-ly1
}{}
@@ -81,14 +46,6 @@
<-> alias * LibertinusSerif-LF/m/sc
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{regular}{it}{
- <-> alias * LibertinusSerif-LF/m/it
-}{}
-
\DeclareFontShape{LY1}{LibertinusSerif-LF}{m}{scit}{
<-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-sc-ly1
}{}
@@ -97,12 +54,12 @@
<-> alias * LibertinusSerif-LF/m/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-LF/m/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{regular}{n}{
- <-> alias * LibertinusSerif-LF/m/n
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-LF/regular/scit
}{}
\DeclareFontShape{LY1}{LibertinusSerif-LF}{m}{sl}{
@@ -113,16 +70,16 @@
<-> ssub * LibertinusSerif-LF/regular/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{m}{scsl}{
- <-> ssub * LibertinusSerif-LF/m/scit
-}{}
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-LF/regular/scit
-}{}
+% ---- sb = semibold ----
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-sc-ly1
+}{}
-% ---- sb = semibold ----
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-LF/sb/scit
+}{}
\DeclareFontShape{LY1}{LibertinusSerif-LF}{sb}{sc}{
<-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-sc-ly1
@@ -140,14 +97,6 @@
<-> alias * LibertinusSerif-LF/sb/n
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-sc-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{semibold}{scit}{
- <-> alias * LibertinusSerif-LF/sb/scit
-}{}
-
\DeclareFontShape{LY1}{LibertinusSerif-LF}{sb}{it}{
<-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-ly1
}{}
@@ -156,6 +105,14 @@
<-> alias * LibertinusSerif-LF/sb/it
}{}
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-LF/sb/scit
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-LF/semibold/scit
+}{}
+
\DeclareFontShape{LY1}{LibertinusSerif-LF}{sb}{sl}{
<-> ssub * LibertinusSerif-LF/sb/it
}{}
@@ -164,21 +121,72 @@
<-> ssub * LibertinusSerif-LF/semibold/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-LF/sb/scit
+
+% ---- b = bold ----
+
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{b}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-sc-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-LF/semibold/scit
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{bold}{scit}{
+ <-> alias * LibertinusSerif-LF/b/scit
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{bold}{sc}{
+ <-> alias * LibertinusSerif-LF/b/sc
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-ly1
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{bold}{n}{
+ <-> alias * LibertinusSerif-LF/b/n
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-ly1
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{bold}{it}{
+ <-> alias * LibertinusSerif-LF/b/it
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{b}{scsl}{
+ <-> ssub * LibertinusSerif-LF/b/scit
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{bold}{scsl}{
+ <-> ssub * LibertinusSerif-LF/bold/scit
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{b}{sl}{
+ <-> ssub * LibertinusSerif-LF/b/it
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-LF/bold/it
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{bx}{sl}{
+ <-> ssub * LibertinusSerif-LF/b/sl
+}{}
+
\DeclareFontShape{LY1}{LibertinusSerif-LF}{bx}{scit}{
<-> ssub * LibertinusSerif-LF/b/scit
}{}
+\DeclareFontShape{LY1}{LibertinusSerif-LF}{bx}{sc}{
+ <-> ssub * LibertinusSerif-LF/b/sc
+}{}
+
\DeclareFontShape{LY1}{LibertinusSerif-LF}{bx}{n}{
<-> ssub * LibertinusSerif-LF/b/n
}{}
@@ -191,12 +199,4 @@
<-> ssub * LibertinusSerif-LF/b/scsl
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{bx}{sl}{
- <-> ssub * LibertinusSerif-LF/b/sl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerif-LF}{bx}{sc}{
- <-> ssub * LibertinusSerif-LF/b/sc
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-OsF.fd
index c2da55da2ab..e496570419e 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-OsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LY1LibertinusSerif-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for LY1/LibertinusSerif-OsF.]
+ [2024/09/22 (autoinst) Font definitions for LY1/LibertinusSerif-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,175 +20,167 @@
\DeclareFontFamily{LY1}{LibertinusSerif-OsF}{}
-% ---- b = bold ----
+% ---- sb = semibold ----
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-sc-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bold}{sc}{
- <-> alias * LibertinusSerif-OsF/b/sc
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{semibold}{it}{
+ <-> alias * LibertinusSerif-OsF/sb/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{b}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-sc-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bold}{scit}{
- <-> alias * LibertinusSerif-OsF/b/scit
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{semibold}{n}{
+ <-> alias * LibertinusSerif-OsF/sb/n
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bold}{n}{
- <-> alias * LibertinusSerif-OsF/b/n
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-OsF/sb/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bold}{it}{
- <-> alias * LibertinusSerif-OsF/b/it
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-OsF/sb/sc
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{b}{sl}{
- <-> ssub * LibertinusSerif-OsF/b/it
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/sb/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bold}{sl}{
- <-> ssub * LibertinusSerif-OsF/bold/it
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/semibold/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{b}{scsl}{
- <-> ssub * LibertinusSerif-OsF/b/scit
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-OsF/sb/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bold}{scsl}{
- <-> ssub * LibertinusSerif-OsF/bold/scit
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-OsF/semibold/it
}{}
-% ---- m = regular ----
+% ---- b = bold ----
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-sc-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{b}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{regular}{sc}{
- <-> alias * LibertinusSerif-OsF/m/sc
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bold}{scit}{
+ <-> alias * LibertinusSerif-OsF/b/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{regular}{it}{
- <-> alias * LibertinusSerif-OsF/m/it
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bold}{sc}{
+ <-> alias * LibertinusSerif-OsF/b/sc
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{regular}{n}{
- <-> alias * LibertinusSerif-OsF/m/n
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bold}{n}{
+ <-> alias * LibertinusSerif-OsF/b/n
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-sc-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{regular}{scit}{
- <-> alias * LibertinusSerif-OsF/m/scit
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bold}{it}{
+ <-> alias * LibertinusSerif-OsF/b/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{m}{sl}{
- <-> ssub * LibertinusSerif-OsF/m/it
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{b}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/b/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{regular}{sl}{
- <-> ssub * LibertinusSerif-OsF/regular/it
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bold}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/bold/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{m}{scsl}{
- <-> ssub * LibertinusSerif-OsF/m/scit
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{b}{sl}{
+ <-> ssub * LibertinusSerif-OsF/b/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-OsF/regular/scit
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-OsF/bold/it
}{}
-% ---- sb = semibold ----
+% ---- m = regular ----
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-sc-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{semibold}{sc}{
- <-> alias * LibertinusSerif-OsF/sb/sc
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{regular}{it}{
+ <-> alias * LibertinusSerif-OsF/m/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{semibold}{it}{
- <-> alias * LibertinusSerif-OsF/sb/it
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{regular}{scit}{
+ <-> alias * LibertinusSerif-OsF/m/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-sc-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-sc-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{semibold}{scit}{
- <-> alias * LibertinusSerif-OsF/sb/scit
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{regular}{sc}{
+ <-> alias * LibertinusSerif-OsF/m/sc
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{semibold}{n}{
- <-> alias * LibertinusSerif-OsF/sb/n
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{regular}{n}{
+ <-> alias * LibertinusSerif-OsF/m/n
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{sb}{sl}{
- <-> ssub * LibertinusSerif-OsF/sb/it
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/m/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-OsF/semibold/it
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/regular/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-OsF/sb/scit
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{m}{sl}{
+ <-> ssub * LibertinusSerif-OsF/m/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-OsF/semibold/scit
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-OsF/regular/it
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bx}{scsl}{
- <-> ssub * LibertinusSerif-OsF/b/scsl
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bx}{sc}{
- <-> ssub * LibertinusSerif-OsF/b/sc
-}{}
-
\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bx}{sl}{
<-> ssub * LibertinusSerif-OsF/b/sl
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bx}{it}{
- <-> ssub * LibertinusSerif-OsF/b/it
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bx}{sc}{
+ <-> ssub * LibertinusSerif-OsF/b/sc
}{}
\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bx}{scit}{
@@ -199,4 +191,12 @@
<-> ssub * LibertinusSerif-OsF/b/n
}{}
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bx}{it}{
+ <-> ssub * LibertinusSerif-OsF/b/it
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSerif-OsF}{bx}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/b/scsl
+}{}
+
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-Sup.fd
index 543ad7a18d4..65e6f6d1e1d 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-Sup.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-Sup.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LY1LibertinusSerif-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for LY1/LibertinusSerif-Sup.]
+ [2024/09/22 (autoinst) Font definitions for LY1/LibertinusSerif-Sup.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,33 +20,6 @@
\DeclareFontFamily{LY1}{LibertinusSerif-Sup}{}
-% ---- sb = semibold ----
-
-\DeclareFontShape{LY1}{LibertinusSerif-Sup}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-sup-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerif-Sup}{semibold}{it}{
- <-> alias * LibertinusSerif-Sup/sb/it
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerif-Sup}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-sup-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerif-Sup}{semibold}{n}{
- <-> alias * LibertinusSerif-Sup/sb/n
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerif-Sup}{sb}{sl}{
- <-> ssub * LibertinusSerif-Sup/sb/it
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerif-Sup}{semibold}{sl}{
- <-> ssub * LibertinusSerif-Sup/semibold/it
-}{}
-
-
% ---- b = bold ----
\DeclareFontShape{LY1}{LibertinusSerif-Sup}{b}{it}{
@@ -74,16 +47,35 @@
}{}
-% ---- m = regular ----
+% ---- sb = semibold ----
-\DeclareFontShape{LY1}{LibertinusSerif-Sup}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-sup-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-Sup}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-sup-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-Sup}{regular}{it}{
- <-> alias * LibertinusSerif-Sup/m/it
+\DeclareFontShape{LY1}{LibertinusSerif-Sup}{semibold}{it}{
+ <-> alias * LibertinusSerif-Sup/sb/it
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSerif-Sup}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-sup-ly1
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSerif-Sup}{semibold}{n}{
+ <-> alias * LibertinusSerif-Sup/sb/n
}{}
+\DeclareFontShape{LY1}{LibertinusSerif-Sup}{sb}{sl}{
+ <-> ssub * LibertinusSerif-Sup/sb/it
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSerif-Sup}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-Sup/semibold/it
+}{}
+
+
+% ---- m = regular ----
+
\DeclareFontShape{LY1}{LibertinusSerif-Sup}{m}{n}{
<-> \LibertinusSerif@@scale LibertinusSerif-Regular-sup-ly1
}{}
@@ -92,6 +84,14 @@
<-> alias * LibertinusSerif-Sup/m/n
}{}
+\DeclareFontShape{LY1}{LibertinusSerif-Sup}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-sup-ly1
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSerif-Sup}{regular}{it}{
+ <-> alias * LibertinusSerif-Sup/m/it
+}{}
+
\DeclareFontShape{LY1}{LibertinusSerif-Sup}{m}{sl}{
<-> ssub * LibertinusSerif-Sup/m/it
}{}
@@ -103,16 +103,16 @@
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{LY1}{LibertinusSerif-Sup}{bx}{it}{
- <-> ssub * LibertinusSerif-Sup/b/it
+\DeclareFontShape{LY1}{LibertinusSerif-Sup}{bx}{sl}{
+ <-> ssub * LibertinusSerif-Sup/b/sl
}{}
\DeclareFontShape{LY1}{LibertinusSerif-Sup}{bx}{n}{
<-> ssub * LibertinusSerif-Sup/b/n
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-Sup}{bx}{sl}{
- <-> ssub * LibertinusSerif-Sup/b/sl
+\DeclareFontShape{LY1}{LibertinusSerif-Sup}{bx}{it}{
+ <-> ssub * LibertinusSerif-Sup/b/it
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-TLF.fd
index fd437f00363..2301082b284 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LY1LibertinusSerif-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for LY1/LibertinusSerif-TLF.]
+ [2024/09/22 (autoinst) Font definitions for LY1/LibertinusSerif-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -30,6 +30,14 @@
<-> alias * LibertinusSerif-TLF/sb/n
}{}
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-TLF/sb/sc
+}{}
+
\DeclareFontShape{LY1}{LibertinusSerif-TLF}{sb}{scit}{
<-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-sc-ly1
}{}
@@ -46,12 +54,12 @@
<-> alias * LibertinusSerif-TLF/sb/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-sc-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/sb/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{semibold}{sc}{
- <-> alias * LibertinusSerif-TLF/sb/sc
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/semibold/scit
}{}
\DeclareFontShape{LY1}{LibertinusSerif-TLF}{sb}{sl}{
@@ -62,114 +70,106 @@
<-> ssub * LibertinusSerif-TLF/semibold/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-TLF/sb/scit
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-TLF/semibold/scit
-}{}
+% ---- b = bold ----
-% ---- m = regular ----
-
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-sc-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{b}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{regular}{sc}{
- <-> alias * LibertinusSerif-TLF/m/sc
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bold}{scit}{
+ <-> alias * LibertinusSerif-TLF/b/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{regular}{it}{
- <-> alias * LibertinusSerif-TLF/m/it
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bold}{sc}{
+ <-> alias * LibertinusSerif-TLF/b/sc
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{regular}{n}{
- <-> alias * LibertinusSerif-TLF/m/n
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bold}{n}{
+ <-> alias * LibertinusSerif-TLF/b/n
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-sc-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{regular}{scit}{
- <-> alias * LibertinusSerif-TLF/m/scit
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bold}{it}{
+ <-> alias * LibertinusSerif-TLF/b/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{m}{sl}{
- <-> ssub * LibertinusSerif-TLF/m/it
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{b}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/b/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{regular}{sl}{
- <-> ssub * LibertinusSerif-TLF/regular/it
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bold}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/bold/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{m}{scsl}{
- <-> ssub * LibertinusSerif-TLF/m/scit
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{b}{sl}{
+ <-> ssub * LibertinusSerif-TLF/b/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-TLF/regular/scit
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-TLF/bold/it
}{}
-% ---- b = bold ----
+% ---- m = regular ----
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-sc-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bold}{sc}{
- <-> alias * LibertinusSerif-TLF/b/sc
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{regular}{n}{
+ <-> alias * LibertinusSerif-TLF/m/n
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{b}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tlf-sc-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bold}{scit}{
- <-> alias * LibertinusSerif-TLF/b/scit
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{regular}{scit}{
+ <-> alias * LibertinusSerif-TLF/m/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-sc-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bold}{n}{
- <-> alias * LibertinusSerif-TLF/b/n
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{regular}{sc}{
+ <-> alias * LibertinusSerif-TLF/m/sc
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tlf-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bold}{it}{
- <-> alias * LibertinusSerif-TLF/b/it
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{regular}{it}{
+ <-> alias * LibertinusSerif-TLF/m/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{b}{sl}{
- <-> ssub * LibertinusSerif-TLF/b/it
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/m/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bold}{sl}{
- <-> ssub * LibertinusSerif-TLF/bold/it
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/regular/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{b}{scsl}{
- <-> ssub * LibertinusSerif-TLF/b/scit
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{m}{sl}{
+ <-> ssub * LibertinusSerif-TLF/m/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bold}{scsl}{
- <-> ssub * LibertinusSerif-TLF/bold/scit
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-TLF/regular/it
}{}
@@ -179,24 +179,24 @@
<-> ssub * LibertinusSerif-TLF/b/n
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bx}{sl}{
- <-> ssub * LibertinusSerif-TLF/b/sl
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bx}{scit}{
+ <-> ssub * LibertinusSerif-TLF/b/scit
}{}
\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bx}{sc}{
<-> ssub * LibertinusSerif-TLF/b/sc
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bx}{it}{
- <-> ssub * LibertinusSerif-TLF/b/it
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bx}{scit}{
- <-> ssub * LibertinusSerif-TLF/b/scit
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bx}{sl}{
+ <-> ssub * LibertinusSerif-TLF/b/sl
}{}
\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bx}{scsl}{
<-> ssub * LibertinusSerif-TLF/b/scsl
}{}
+\DeclareFontShape{LY1}{LibertinusSerif-TLF}{bx}{it}{
+ <-> ssub * LibertinusSerif-TLF/b/it
+}{}
+
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-TOsF.fd
index af0477e1fbf..1bd6b192563 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerif-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{LY1LibertinusSerif-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for LY1/LibertinusSerif-TOsF.]
+ [2024/09/22 (autoinst) Font definitions for LY1/LibertinusSerif-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,161 +20,165 @@
\DeclareFontFamily{LY1}{LibertinusSerif-TOsF}{}
-% ---- m = regular ----
+% ---- b = bold ----
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{regular}{it}{
- <-> alias * LibertinusSerif-TOsF/m/it
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{bold}{n}{
+ <-> alias * LibertinusSerif-TOsF/b/n
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-sc-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{regular}{scit}{
- <-> alias * LibertinusSerif-TOsF/m/scit
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{bold}{sc}{
+ <-> alias * LibertinusSerif-TOsF/b/sc
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{b}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{regular}{n}{
- <-> alias * LibertinusSerif-TOsF/m/n
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{bold}{scit}{
+ <-> alias * LibertinusSerif-TOsF/b/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-sc-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{regular}{sc}{
- <-> alias * LibertinusSerif-TOsF/m/sc
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{bold}{it}{
+ <-> alias * LibertinusSerif-TOsF/b/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{m}{sl}{
- <-> ssub * LibertinusSerif-TOsF/m/it
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{b}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/b/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{regular}{sl}{
- <-> ssub * LibertinusSerif-TOsF/regular/it
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{bold}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/bold/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{m}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/m/scit
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{b}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/b/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/regular/scit
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/bold/it
}{}
-% ---- b = bold ----
+% ---- sb = semibold ----
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{b}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-sc-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{bold}{scit}{
- <-> alias * LibertinusSerif-TOsF/b/scit
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{semibold}{n}{
+ <-> alias * LibertinusSerif-TOsF/sb/n
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{bold}{n}{
- <-> alias * LibertinusSerif-TOsF/b/n
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-TOsF/sb/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{bold}{it}{
- <-> alias * LibertinusSerif-TOsF/b/it
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-TOsF/sb/sc
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-sc-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{bold}{sc}{
- <-> alias * LibertinusSerif-TOsF/b/sc
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{semibold}{it}{
+ <-> alias * LibertinusSerif-TOsF/sb/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{b}{sl}{
- <-> ssub * LibertinusSerif-TOsF/b/it
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/sb/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{bold}{sl}{
- <-> ssub * LibertinusSerif-TOsF/bold/it
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/semibold/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{b}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/b/scit
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/sb/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{bold}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/bold/scit
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/semibold/it
}{}
-% ---- sb = semibold ----
+% ---- m = regular ----
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{semibold}{it}{
- <-> alias * LibertinusSerif-TOsF/sb/it
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{regular}{n}{
+ <-> alias * LibertinusSerif-TOsF/m/n
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-sc-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{semibold}{scit}{
- <-> alias * LibertinusSerif-TOsF/sb/scit
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{regular}{scit}{
+ <-> alias * LibertinusSerif-TOsF/m/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-sc-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{semibold}{n}{
- <-> alias * LibertinusSerif-TOsF/sb/n
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{regular}{sc}{
+ <-> alias * LibertinusSerif-TOsF/m/sc
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-sc-ly1
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-ly1
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{semibold}{sc}{
- <-> alias * LibertinusSerif-TOsF/sb/sc
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{regular}{it}{
+ <-> alias * LibertinusSerif-TOsF/m/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{sb}{sl}{
- <-> ssub * LibertinusSerif-TOsF/sb/it
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/m/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-TOsF/semibold/it
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/regular/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/sb/scit
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{m}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/m/it
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/semibold/scit
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/regular/it
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{bx}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/b/scsl
+}{}
+
\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{bx}{it}{
<-> ssub * LibertinusSerif-TOsF/b/it
}{}
@@ -187,16 +191,12 @@
<-> ssub * LibertinusSerif-TOsF/b/scit
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{bx}{sc}{
- <-> ssub * LibertinusSerif-TOsF/b/sc
-}{}
-
\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{bx}{sl}{
<-> ssub * LibertinusSerif-TOsF/b/sl
}{}
-\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{bx}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/b/scsl
+\DeclareFontShape{LY1}{LibertinusSerif-TOsF}{bx}{sc}{
+ <-> ssub * LibertinusSerif-TOsF/b/sc
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-LF.fd
deleted file mode 100644
index b4e9517df7a..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-LF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{LY1LibertinusSerifDisplay-LF.fd}
- [2022/11/07 (autoinst) Font definitions for LY1/LibertinusSerifDisplay-LF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{LY1}{LibertinusSerifDisplay-LF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{LY1}{LibertinusSerifDisplay-LF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-lf-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerifDisplay-LF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-LF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-OsF.fd
deleted file mode 100644
index 18326283433..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-OsF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{LY1LibertinusSerifDisplay-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for LY1/LibertinusSerifDisplay-OsF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{LY1}{LibertinusSerifDisplay-OsF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{LY1}{LibertinusSerifDisplay-OsF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-osf-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerifDisplay-OsF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-OsF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-Sup.fd
deleted file mode 100644
index 69538630459..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-Sup.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{LY1LibertinusSerifDisplay-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for LY1/LibertinusSerifDisplay-Sup.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{LY1}{LibertinusSerifDisplay-Sup}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{LY1}{LibertinusSerifDisplay-Sup}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-sup-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerifDisplay-Sup}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-Sup/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-TLF.fd
deleted file mode 100644
index 1fa7456ccd6..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-TLF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{LY1LibertinusSerifDisplay-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for LY1/LibertinusSerifDisplay-TLF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{LY1}{LibertinusSerifDisplay-TLF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{LY1}{LibertinusSerifDisplay-TLF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-tlf-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerifDisplay-TLF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-TLF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-TOsF.fd
deleted file mode 100644
index 1d2ce714c30..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifDisplay-TOsF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{LY1LibertinusSerifDisplay-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for LY1/LibertinusSerifDisplay-TOsF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{LY1}{LibertinusSerifDisplay-TOsF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{LY1}{LibertinusSerifDisplay-TOsF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-tosf-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerifDisplay-TOsF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-TOsF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifInitials-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifInitials-TLF.fd
deleted file mode 100644
index 62efd441c85..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/LY1LibertinusSerifInitials-TLF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{LY1LibertinusSerifInitials-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for LY1/LibertinusSerifInitials-TLF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifInitials@scale\endcsname\relax
- \let\LibertinusSerifInitials@@scale\@empty
-\else
- \edef\LibertinusSerifInitials@@scale{s*[\csname LibertinusSerifInitials@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{LY1}{LibertinusSerifInitials-TLF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{LY1}{LibertinusSerifInitials-TLF}{m}{n}{
- <-> \LibertinusSerifInitials@@scale LibertinusSerifInitials-Regular-tlf-ly1
-}{}
-
-\DeclareFontShape{LY1}{LibertinusSerifInitials-TLF}{regular}{n}{
- <-> alias * LibertinusSerifInitials-TLF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusMono-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusMono-TLF.fd
index 443e55c3315..fd29777b08f 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusMono-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusMono-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{OT1LibertinusMono-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for OT1/LibertinusMono-TLF.]
+ [2024/09/22 (autoinst) Font definitions for OT1/LibertinusMono-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,33 +20,6 @@
\DeclareFontFamily{OT1}{LibertinusMono-TLF}{\hyphenchar\font=-1}
-% ---- b = bold ----
-
-\DeclareFontShape{OT1}{LibertinusMono-TLF}{b}{n}{
- <-> \LibertinusMono@@scale LibertinusMono-Bold-tlf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusMono-TLF}{bold}{n}{
- <-> alias * LibertinusMono-TLF/b/n
-}{}
-
-\DeclareFontShape{OT1}{LibertinusMono-TLF}{b}{sl}{
- <-> \LibertinusMono@@scale LibertinusMono-BoldOblique-tlf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusMono-TLF}{bold}{sl}{
- <-> alias * LibertinusMono-TLF/b/sl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusMono-TLF}{b}{it}{
- <-> ssub * LibertinusMono-TLF/b/sl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusMono-TLF}{bold}{it}{
- <-> ssub * LibertinusMono-TLF/bold/sl
-}{}
-
-
% ---- m = regular ----
\DeclareFontShape{OT1}{LibertinusMono-TLF}{m}{n}{
@@ -57,35 +30,7 @@
<-> alias * LibertinusMono-TLF/m/n
}{}
-\DeclareFontShape{OT1}{LibertinusMono-TLF}{m}{sl}{
- <-> \LibertinusMono@@scale LibertinusMono-Oblique-tlf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusMono-TLF}{regular}{sl}{
- <-> alias * LibertinusMono-TLF/m/sl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusMono-TLF}{m}{it}{
- <-> ssub * LibertinusMono-TLF/m/sl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusMono-TLF}{regular}{it}{
- <-> ssub * LibertinusMono-TLF/regular/sl
-}{}
-
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{OT1}{LibertinusMono-TLF}{bx}{sl}{
- <-> ssub * LibertinusMono-TLF/b/sl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusMono-TLF}{bx}{it}{
- <-> ssub * LibertinusMono-TLF/b/it
-}{}
-
-\DeclareFontShape{OT1}{LibertinusMono-TLF}{bx}{n}{
- <-> ssub * LibertinusMono-TLF/b/n
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-LF.fd
index 59ba34390ac..45ef327f7ba 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-LF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{OT1LibertinusSans-LF.fd}
- [2022/11/07 (autoinst) Font definitions for OT1/LibertinusSans-LF.]
+ [2024/09/22 (autoinst) Font definitions for OT1/LibertinusSans-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,59 +20,24 @@
\DeclareFontFamily{OT1}{LibertinusSans-LF}{}
-% ---- b = bold ----
-
-\DeclareFontShape{OT1}{LibertinusSans-LF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-lf-sc-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-LF}{bold}{scsl}{
- <-> alias * LibertinusSans-LF/b/scsl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-LF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-sc-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-LF}{bold}{sc}{
- <-> alias * LibertinusSans-LF/b/sc
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-LF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-LF}{bold}{n}{
- <-> alias * LibertinusSans-LF/b/n
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-LF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-lf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-LF}{bold}{sl}{
- <-> alias * LibertinusSans-LF/b/sl
-}{}
+% ---- m = regular ----
-\DeclareFontShape{OT1}{LibertinusSans-LF}{b}{it}{
- <-> ssub * LibertinusSans-LF/b/sl
+\DeclareFontShape{OT1}{LibertinusSans-LF}{m}{it}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-lf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSans-LF}{bold}{it}{
- <-> ssub * LibertinusSans-LF/bold/sl
+\DeclareFontShape{OT1}{LibertinusSans-LF}{regular}{it}{
+ <-> alias * LibertinusSans-LF/m/it
}{}
-\DeclareFontShape{OT1}{LibertinusSans-LF}{b}{scit}{
- <-> ssub * LibertinusSans-LF/b/scsl
+\DeclareFontShape{OT1}{LibertinusSans-LF}{m}{scit}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSans-LF}{bold}{scit}{
- <-> ssub * LibertinusSans-LF/bold/scsl
+\DeclareFontShape{OT1}{LibertinusSans-LF}{regular}{scit}{
+ <-> alias * LibertinusSans-LF/m/scit
}{}
-
-% ---- m = regular ----
-
\DeclareFontShape{OT1}{LibertinusSans-LF}{m}{sc}{
<-> \LibertinusSans@@scale LibertinusSans-Regular-lf-sc-ot1
}{}
@@ -89,22 +54,6 @@
<-> alias * LibertinusSans-LF/m/n
}{}
-\DeclareFontShape{OT1}{LibertinusSans-LF}{m}{it}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-lf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-LF}{regular}{it}{
- <-> alias * LibertinusSans-LF/m/it
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-LF}{m}{scit}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-lf-sc-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-LF}{regular}{scit}{
- <-> alias * LibertinusSans-LF/m/scit
-}{}
-
\DeclareFontShape{OT1}{LibertinusSans-LF}{m}{scsl}{
<-> ssub * LibertinusSans-LF/m/scit
}{}
@@ -122,30 +71,33 @@
}{}
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+% ---- b = bold ----
-\DeclareFontShape{OT1}{LibertinusSans-LF}{bx}{n}{
- <-> ssub * LibertinusSans-LF/b/n
+\DeclareFontShape{OT1}{LibertinusSans-LF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSans-LF}{bx}{sl}{
- <-> ssub * LibertinusSans-LF/b/sl
+\DeclareFontShape{OT1}{LibertinusSans-LF}{bold}{sc}{
+ <-> alias * LibertinusSans-LF/b/sc
}{}
-\DeclareFontShape{OT1}{LibertinusSans-LF}{bx}{sc}{
- <-> ssub * LibertinusSans-LF/b/sc
+\DeclareFontShape{OT1}{LibertinusSans-LF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSans-LF}{bx}{scit}{
- <-> ssub * LibertinusSans-LF/b/scit
+\DeclareFontShape{OT1}{LibertinusSans-LF}{bold}{n}{
+ <-> alias * LibertinusSans-LF/b/n
}{}
-\DeclareFontShape{OT1}{LibertinusSans-LF}{bx}{it}{
- <-> ssub * LibertinusSans-LF/b/it
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{OT1}{LibertinusSans-LF}{bx}{n}{
+ <-> ssub * LibertinusSans-LF/b/n
}{}
-\DeclareFontShape{OT1}{LibertinusSans-LF}{bx}{scsl}{
- <-> ssub * LibertinusSans-LF/b/scsl
+\DeclareFontShape{OT1}{LibertinusSans-LF}{bx}{sc}{
+ <-> ssub * LibertinusSans-LF/b/sc
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-OsF.fd
index f445d38ba90..15d9a000789 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-OsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{OT1LibertinusSans-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for OT1/LibertinusSans-OsF.]
+ [2024/09/22 (autoinst) Font definitions for OT1/LibertinusSans-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,20 +22,12 @@
% ---- m = regular ----
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{m}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-osf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{regular}{n}{
- <-> alias * LibertinusSans-OsF/m/n
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{m}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-osf-sc-ot1
+\DeclareFontShape{OT1}{LibertinusSans-OsF}{m}{it}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-osf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{regular}{sc}{
- <-> alias * LibertinusSans-OsF/m/sc
+\DeclareFontShape{OT1}{LibertinusSans-OsF}{regular}{it}{
+ <-> alias * LibertinusSans-OsF/m/it
}{}
\DeclareFontShape{OT1}{LibertinusSans-OsF}{m}{scit}{
@@ -46,12 +38,20 @@
<-> alias * LibertinusSans-OsF/m/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{m}{it}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-osf-ot1
+\DeclareFontShape{OT1}{LibertinusSans-OsF}{m}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{regular}{it}{
- <-> alias * LibertinusSans-OsF/m/it
+\DeclareFontShape{OT1}{LibertinusSans-OsF}{regular}{sc}{
+ <-> alias * LibertinusSans-OsF/m/sc
+}{}
+
+\DeclareFontShape{OT1}{LibertinusSans-OsF}{m}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-osf-ot1
+}{}
+
+\DeclareFontShape{OT1}{LibertinusSans-OsF}{regular}{n}{
+ <-> alias * LibertinusSans-OsF/m/n
}{}
\DeclareFontShape{OT1}{LibertinusSans-OsF}{m}{scsl}{
@@ -73,22 +73,6 @@
% ---- b = bold ----
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{bold}{n}{
- <-> alias * LibertinusSans-OsF/b/n
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-osf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{bold}{sl}{
- <-> alias * LibertinusSans-OsF/b/sl
-}{}
-
\DeclareFontShape{OT1}{LibertinusSans-OsF}{b}{sc}{
<-> \LibertinusSans@@scale LibertinusSans-Bold-osf-sc-ot1
}{}
@@ -97,55 +81,23 @@
<-> alias * LibertinusSans-OsF/b/sc
}{}
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-osf-sc-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{bold}{scsl}{
- <-> alias * LibertinusSans-OsF/b/scsl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{b}{it}{
- <-> ssub * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{bold}{it}{
- <-> ssub * LibertinusSans-OsF/bold/sl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{b}{scit}{
- <-> ssub * LibertinusSans-OsF/b/scsl
+\DeclareFontShape{OT1}{LibertinusSans-OsF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{bold}{scit}{
- <-> ssub * LibertinusSans-OsF/bold/scsl
+\DeclareFontShape{OT1}{LibertinusSans-OsF}{bold}{n}{
+ <-> alias * LibertinusSans-OsF/b/n
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{bx}{n}{
- <-> ssub * LibertinusSans-OsF/b/n
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{bx}{scsl}{
- <-> ssub * LibertinusSans-OsF/b/scsl
-}{}
-
\DeclareFontShape{OT1}{LibertinusSans-OsF}{bx}{sc}{
<-> ssub * LibertinusSans-OsF/b/sc
}{}
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{bx}{sl}{
- <-> ssub * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{bx}{it}{
- <-> ssub * LibertinusSans-OsF/b/it
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-OsF}{bx}{scit}{
- <-> ssub * LibertinusSans-OsF/b/scit
+\DeclareFontShape{OT1}{LibertinusSans-OsF}{bx}{n}{
+ <-> ssub * LibertinusSans-OsF/b/n
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-Sup.fd
index 4820f1ea116..559a95301e5 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-Sup.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-Sup.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{OT1LibertinusSans-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for OT1/LibertinusSans-Sup.]
+ [2024/09/22 (autoinst) Font definitions for OT1/LibertinusSans-Sup.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,16 +20,19 @@
\DeclareFontFamily{OT1}{LibertinusSans-Sup}{}
-% ---- m = regular ----
+% ---- b = bold ----
-\DeclareFontShape{OT1}{LibertinusSans-Sup}{m}{it}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-sup-ot1
+\DeclareFontShape{OT1}{LibertinusSans-Sup}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-sup-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSans-Sup}{regular}{it}{
- <-> alias * LibertinusSans-Sup/m/it
+\DeclareFontShape{OT1}{LibertinusSans-Sup}{bold}{n}{
+ <-> alias * LibertinusSans-Sup/b/n
}{}
+
+% ---- m = regular ----
+
\DeclareFontShape{OT1}{LibertinusSans-Sup}{m}{n}{
<-> \LibertinusSans@@scale LibertinusSans-Regular-sup-ot1
}{}
@@ -38,54 +41,27 @@
<-> alias * LibertinusSans-Sup/m/n
}{}
-\DeclareFontShape{OT1}{LibertinusSans-Sup}{m}{sl}{
- <-> ssub * LibertinusSans-Sup/m/it
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-Sup}{regular}{sl}{
- <-> ssub * LibertinusSans-Sup/regular/it
-}{}
-
-
-% ---- b = bold ----
-
-\DeclareFontShape{OT1}{LibertinusSans-Sup}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-sup-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-Sup}{bold}{sl}{
- <-> alias * LibertinusSans-Sup/b/sl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-Sup}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-sup-ot1
+\DeclareFontShape{OT1}{LibertinusSans-Sup}{m}{it}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-sup-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSans-Sup}{bold}{n}{
- <-> alias * LibertinusSans-Sup/b/n
+\DeclareFontShape{OT1}{LibertinusSans-Sup}{regular}{it}{
+ <-> alias * LibertinusSans-Sup/m/it
}{}
-\DeclareFontShape{OT1}{LibertinusSans-Sup}{b}{it}{
- <-> ssub * LibertinusSans-Sup/b/sl
+\DeclareFontShape{OT1}{LibertinusSans-Sup}{m}{sl}{
+ <-> ssub * LibertinusSans-Sup/m/it
}{}
-\DeclareFontShape{OT1}{LibertinusSans-Sup}{bold}{it}{
- <-> ssub * LibertinusSans-Sup/bold/sl
+\DeclareFontShape{OT1}{LibertinusSans-Sup}{regular}{sl}{
+ <-> ssub * LibertinusSans-Sup/regular/it
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{OT1}{LibertinusSans-Sup}{bx}{sl}{
- <-> ssub * LibertinusSans-Sup/b/sl
-}{}
-
\DeclareFontShape{OT1}{LibertinusSans-Sup}{bx}{n}{
<-> ssub * LibertinusSans-Sup/b/n
}{}
-\DeclareFontShape{OT1}{LibertinusSans-Sup}{bx}{it}{
- <-> ssub * LibertinusSans-Sup/b/it
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-TLF.fd
index fe4b0fe5374..4e82ff28a6f 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{OT1LibertinusSans-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for OT1/LibertinusSans-TLF.]
+ [2024/09/22 (autoinst) Font definitions for OT1/LibertinusSans-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -30,12 +30,12 @@
<-> alias * LibertinusSans-TLF/m/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSans-TLF}{m}{it}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-tlf-ot1
+\DeclareFontShape{OT1}{LibertinusSans-TLF}{m}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSans-TLF}{regular}{it}{
- <-> alias * LibertinusSans-TLF/m/it
+\DeclareFontShape{OT1}{LibertinusSans-TLF}{regular}{sc}{
+ <-> alias * LibertinusSans-TLF/m/sc
}{}
\DeclareFontShape{OT1}{LibertinusSans-TLF}{m}{n}{
@@ -46,12 +46,12 @@
<-> alias * LibertinusSans-TLF/m/n
}{}
-\DeclareFontShape{OT1}{LibertinusSans-TLF}{m}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-tlf-sc-ot1
+\DeclareFontShape{OT1}{LibertinusSans-TLF}{m}{it}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSans-TLF}{regular}{sc}{
- <-> alias * LibertinusSans-TLF/m/sc
+\DeclareFontShape{OT1}{LibertinusSans-TLF}{regular}{it}{
+ <-> alias * LibertinusSans-TLF/m/it
}{}
\DeclareFontShape{OT1}{LibertinusSans-TLF}{m}{scsl}{
@@ -73,14 +73,6 @@
% ---- b = bold ----
-\DeclareFontShape{OT1}{LibertinusSans-TLF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tlf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TLF}{bold}{sl}{
- <-> alias * LibertinusSans-TLF/b/sl
-}{}
-
\DeclareFontShape{OT1}{LibertinusSans-TLF}{b}{n}{
<-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-ot1
}{}
@@ -97,55 +89,15 @@
<-> alias * LibertinusSans-TLF/b/sc
}{}
-\DeclareFontShape{OT1}{LibertinusSans-TLF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tlf-sc-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TLF}{bold}{scsl}{
- <-> alias * LibertinusSans-TLF/b/scsl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TLF}{b}{it}{
- <-> ssub * LibertinusSans-TLF/b/sl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TLF}{bold}{it}{
- <-> ssub * LibertinusSans-TLF/bold/sl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TLF}{b}{scit}{
- <-> ssub * LibertinusSans-TLF/b/scsl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TLF}{bold}{scit}{
- <-> ssub * LibertinusSans-TLF/bold/scsl
-}{}
-
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{OT1}{LibertinusSans-TLF}{bx}{it}{
- <-> ssub * LibertinusSans-TLF/b/it
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TLF}{bx}{scsl}{
- <-> ssub * LibertinusSans-TLF/b/scsl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TLF}{bx}{scit}{
- <-> ssub * LibertinusSans-TLF/b/scit
+\DeclareFontShape{OT1}{LibertinusSans-TLF}{bx}{n}{
+ <-> ssub * LibertinusSans-TLF/b/n
}{}
\DeclareFontShape{OT1}{LibertinusSans-TLF}{bx}{sc}{
<-> ssub * LibertinusSans-TLF/b/sc
}{}
-\DeclareFontShape{OT1}{LibertinusSans-TLF}{bx}{sl}{
- <-> ssub * LibertinusSans-TLF/b/sl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TLF}{bx}{n}{
- <-> ssub * LibertinusSans-TLF/b/n
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-TOsF.fd
index 925f75936b4..e4fa1afdb01 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSans-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{OT1LibertinusSans-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for OT1/LibertinusSans-TOsF.]
+ [2024/09/22 (autoinst) Font definitions for OT1/LibertinusSans-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,6 +22,14 @@
% ---- m = regular ----
+\DeclareFontShape{OT1}{LibertinusSans-TOsF}{m}{it}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-tosf-ot1
+}{}
+
+\DeclareFontShape{OT1}{LibertinusSans-TOsF}{regular}{it}{
+ <-> alias * LibertinusSans-TOsF/m/it
+}{}
+
\DeclareFontShape{OT1}{LibertinusSans-TOsF}{m}{n}{
<-> \LibertinusSans@@scale LibertinusSans-Regular-tosf-ot1
}{}
@@ -46,14 +54,6 @@
<-> alias * LibertinusSans-TOsF/m/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSans-TOsF}{m}{it}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-tosf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TOsF}{regular}{it}{
- <-> alias * LibertinusSans-TOsF/m/it
-}{}
-
\DeclareFontShape{OT1}{LibertinusSans-TOsF}{m}{scsl}{
<-> ssub * LibertinusSans-TOsF/m/scit
}{}
@@ -73,22 +73,6 @@
% ---- b = bold ----
-\DeclareFontShape{OT1}{LibertinusSans-TOsF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tosf-sc-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TOsF}{bold}{scsl}{
- <-> alias * LibertinusSans-TOsF/b/scsl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TOsF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-sc-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TOsF}{bold}{sc}{
- <-> alias * LibertinusSans-TOsF/b/sc
-}{}
-
\DeclareFontShape{OT1}{LibertinusSans-TOsF}{b}{n}{
<-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-ot1
}{}
@@ -97,55 +81,23 @@
<-> alias * LibertinusSans-TOsF/b/n
}{}
-\DeclareFontShape{OT1}{LibertinusSans-TOsF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tosf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TOsF}{bold}{sl}{
- <-> alias * LibertinusSans-TOsF/b/sl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TOsF}{b}{it}{
- <-> ssub * LibertinusSans-TOsF/b/sl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TOsF}{bold}{it}{
- <-> ssub * LibertinusSans-TOsF/bold/sl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TOsF}{b}{scit}{
- <-> ssub * LibertinusSans-TOsF/b/scsl
+\DeclareFontShape{OT1}{LibertinusSans-TOsF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSans-TOsF}{bold}{scit}{
- <-> ssub * LibertinusSans-TOsF/bold/scsl
+\DeclareFontShape{OT1}{LibertinusSans-TOsF}{bold}{sc}{
+ <-> alias * LibertinusSans-TOsF/b/sc
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{OT1}{LibertinusSans-TOsF}{bx}{it}{
- <-> ssub * LibertinusSans-TOsF/b/it
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TOsF}{bx}{scsl}{
- <-> ssub * LibertinusSans-TOsF/b/scsl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TOsF}{bx}{scit}{
- <-> ssub * LibertinusSans-TOsF/b/scit
+\DeclareFontShape{OT1}{LibertinusSans-TOsF}{bx}{n}{
+ <-> ssub * LibertinusSans-TOsF/b/n
}{}
\DeclareFontShape{OT1}{LibertinusSans-TOsF}{bx}{sc}{
<-> ssub * LibertinusSans-TOsF/b/sc
}{}
-\DeclareFontShape{OT1}{LibertinusSans-TOsF}{bx}{sl}{
- <-> ssub * LibertinusSans-TOsF/b/sl
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSans-TOsF}{bx}{n}{
- <-> ssub * LibertinusSans-TOsF/b/n
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-LF.fd
index b3ab2a88cc1..58d2b629cd1 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-LF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{OT1LibertinusSerif-LF.fd}
- [2022/11/07 (autoinst) Font definitions for OT1/LibertinusSerif-LF.]
+ [2024/09/22 (autoinst) Font definitions for OT1/LibertinusSerif-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,12 +22,12 @@
% ---- sb = semibold ----
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{semibold}{it}{
- <-> alias * LibertinusSerif-LF/sb/it
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-LF/sb/sc
}{}
\DeclareFontShape{OT1}{LibertinusSerif-LF}{sb}{scit}{
@@ -46,20 +46,12 @@
<-> alias * LibertinusSerif-LF/sb/n
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-sc-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{semibold}{sc}{
- <-> alias * LibertinusSerif-LF/sb/sc
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{sb}{sl}{
- <-> ssub * LibertinusSerif-LF/sb/it
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-LF/semibold/it
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{semibold}{it}{
+ <-> alias * LibertinusSerif-LF/sb/it
}{}
\DeclareFontShape{OT1}{LibertinusSerif-LF}{sb}{scsl}{
@@ -70,106 +62,114 @@
<-> ssub * LibertinusSerif-LF/semibold/scit
}{}
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-LF/sb/it
+}{}
-% ---- m = regular ----
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-LF/semibold/it
+}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-sc-ot1
+
+% ---- b = bold ----
+
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{regular}{sc}{
- <-> alias * LibertinusSerif-LF/m/sc
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{bold}{it}{
+ <-> alias * LibertinusSerif-LF/b/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{regular}{it}{
- <-> alias * LibertinusSerif-LF/m/it
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{bold}{sc}{
+ <-> alias * LibertinusSerif-LF/b/sc
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-sc-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{b}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{regular}{scit}{
- <-> alias * LibertinusSerif-LF/m/scit
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{bold}{scit}{
+ <-> alias * LibertinusSerif-LF/b/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{regular}{n}{
- <-> alias * LibertinusSerif-LF/m/n
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{bold}{n}{
+ <-> alias * LibertinusSerif-LF/b/n
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{m}{sl}{
- <-> ssub * LibertinusSerif-LF/m/it
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{b}{scsl}{
+ <-> ssub * LibertinusSerif-LF/b/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{regular}{sl}{
- <-> ssub * LibertinusSerif-LF/regular/it
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{bold}{scsl}{
+ <-> ssub * LibertinusSerif-LF/bold/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{m}{scsl}{
- <-> ssub * LibertinusSerif-LF/m/scit
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{b}{sl}{
+ <-> ssub * LibertinusSerif-LF/b/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-LF/regular/scit
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-LF/bold/it
}{}
-% ---- b = bold ----
+% ---- m = regular ----
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-sc-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{bold}{sc}{
- <-> alias * LibertinusSerif-LF/b/sc
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{regular}{n}{
+ <-> alias * LibertinusSerif-LF/m/n
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{b}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-sc-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{bold}{scit}{
- <-> alias * LibertinusSerif-LF/b/scit
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{regular}{scit}{
+ <-> alias * LibertinusSerif-LF/m/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{bold}{n}{
- <-> alias * LibertinusSerif-LF/b/n
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{regular}{sc}{
+ <-> alias * LibertinusSerif-LF/m/sc
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{bold}{it}{
- <-> alias * LibertinusSerif-LF/b/it
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{regular}{it}{
+ <-> alias * LibertinusSerif-LF/m/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{b}{sl}{
- <-> ssub * LibertinusSerif-LF/b/it
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-LF/m/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{bold}{sl}{
- <-> ssub * LibertinusSerif-LF/bold/it
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-LF/regular/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{b}{scsl}{
- <-> ssub * LibertinusSerif-LF/b/scit
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{m}{sl}{
+ <-> ssub * LibertinusSerif-LF/m/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{bold}{scsl}{
- <-> ssub * LibertinusSerif-LF/bold/scit
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-LF/regular/it
}{}
@@ -179,18 +179,14 @@
<-> ssub * LibertinusSerif-LF/b/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{bx}{scit}{
- <-> ssub * LibertinusSerif-LF/b/scit
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSerif-LF}{bx}{n}{
- <-> ssub * LibertinusSerif-LF/b/n
-}{}
-
\DeclareFontShape{OT1}{LibertinusSerif-LF}{bx}{scsl}{
<-> ssub * LibertinusSerif-LF/b/scsl
}{}
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{bx}{scit}{
+ <-> ssub * LibertinusSerif-LF/b/scit
+}{}
+
\DeclareFontShape{OT1}{LibertinusSerif-LF}{bx}{sc}{
<-> ssub * LibertinusSerif-LF/b/sc
}{}
@@ -199,4 +195,8 @@
<-> ssub * LibertinusSerif-LF/b/sl
}{}
+\DeclareFontShape{OT1}{LibertinusSerif-LF}{bx}{n}{
+ <-> ssub * LibertinusSerif-LF/b/n
+}{}
+
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-OsF.fd
index bc32a36b84d..1a92bbcde8a 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-OsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{OT1LibertinusSerif-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for OT1/LibertinusSerif-OsF.]
+ [2024/09/22 (autoinst) Font definitions for OT1/LibertinusSerif-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,6 +22,14 @@
% ---- sb = semibold ----
+\DeclareFontShape{OT1}{LibertinusSerif-OsF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-ot1
+}{}
+
+\DeclareFontShape{OT1}{LibertinusSerif-OsF}{semibold}{n}{
+ <-> alias * LibertinusSerif-OsF/sb/n
+}{}
+
\DeclareFontShape{OT1}{LibertinusSerif-OsF}{sb}{sc}{
<-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-sc-ot1
}{}
@@ -38,14 +46,6 @@
<-> alias * LibertinusSerif-OsF/sb/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-OsF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSerif-OsF}{semibold}{n}{
- <-> alias * LibertinusSerif-OsF/sb/n
-}{}
-
\DeclareFontShape{OT1}{LibertinusSerif-OsF}{sb}{it}{
<-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-ot1
}{}
@@ -54,14 +54,6 @@
<-> alias * LibertinusSerif-OsF/sb/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-OsF}{sb}{sl}{
- <-> ssub * LibertinusSerif-OsF/sb/it
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSerif-OsF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-OsF/semibold/it
-}{}
-
\DeclareFontShape{OT1}{LibertinusSerif-OsF}{sb}{scsl}{
<-> ssub * LibertinusSerif-OsF/sb/scit
}{}
@@ -70,15 +62,23 @@
<-> ssub * LibertinusSerif-OsF/semibold/scit
}{}
+\DeclareFontShape{OT1}{LibertinusSerif-OsF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-OsF/sb/it
+}{}
+
+\DeclareFontShape{OT1}{LibertinusSerif-OsF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-OsF/semibold/it
+}{}
+
% ---- b = bold ----
-\DeclareFontShape{OT1}{LibertinusSerif-OsF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-OsF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-OsF}{bold}{it}{
- <-> alias * LibertinusSerif-OsF/b/it
+\DeclareFontShape{OT1}{LibertinusSerif-OsF}{bold}{n}{
+ <-> alias * LibertinusSerif-OsF/b/n
}{}
\DeclareFontShape{OT1}{LibertinusSerif-OsF}{b}{scit}{
@@ -89,14 +89,6 @@
<-> alias * LibertinusSerif-OsF/b/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-OsF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSerif-OsF}{bold}{n}{
- <-> alias * LibertinusSerif-OsF/b/n
-}{}
-
\DeclareFontShape{OT1}{LibertinusSerif-OsF}{b}{sc}{
<-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-sc-ot1
}{}
@@ -105,12 +97,12 @@
<-> alias * LibertinusSerif-OsF/b/sc
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-OsF}{b}{sl}{
- <-> ssub * LibertinusSerif-OsF/b/it
+\DeclareFontShape{OT1}{LibertinusSerif-OsF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-OsF}{bold}{sl}{
- <-> ssub * LibertinusSerif-OsF/bold/it
+\DeclareFontShape{OT1}{LibertinusSerif-OsF}{bold}{it}{
+ <-> alias * LibertinusSerif-OsF/b/it
}{}
\DeclareFontShape{OT1}{LibertinusSerif-OsF}{b}{scsl}{
@@ -121,17 +113,17 @@
<-> ssub * LibertinusSerif-OsF/bold/scit
}{}
-
-% ---- m = regular ----
-
-\DeclareFontShape{OT1}{LibertinusSerif-OsF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-sc-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-OsF}{b}{sl}{
+ <-> ssub * LibertinusSerif-OsF/b/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-OsF}{regular}{sc}{
- <-> alias * LibertinusSerif-OsF/m/sc
+\DeclareFontShape{OT1}{LibertinusSerif-OsF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-OsF/bold/it
}{}
+
+% ---- m = regular ----
+
\DeclareFontShape{OT1}{LibertinusSerif-OsF}{m}{it}{
<-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-ot1
}{}
@@ -148,20 +140,20 @@
<-> alias * LibertinusSerif-OsF/m/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-OsF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-OsF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-OsF}{regular}{n}{
- <-> alias * LibertinusSerif-OsF/m/n
+\DeclareFontShape{OT1}{LibertinusSerif-OsF}{regular}{sc}{
+ <-> alias * LibertinusSerif-OsF/m/sc
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-OsF}{m}{sl}{
- <-> ssub * LibertinusSerif-OsF/m/it
+\DeclareFontShape{OT1}{LibertinusSerif-OsF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-OsF}{regular}{sl}{
- <-> ssub * LibertinusSerif-OsF/regular/it
+\DeclareFontShape{OT1}{LibertinusSerif-OsF}{regular}{n}{
+ <-> alias * LibertinusSerif-OsF/m/n
}{}
\DeclareFontShape{OT1}{LibertinusSerif-OsF}{m}{scsl}{
@@ -172,9 +164,21 @@
<-> ssub * LibertinusSerif-OsF/regular/scit
}{}
+\DeclareFontShape{OT1}{LibertinusSerif-OsF}{m}{sl}{
+ <-> ssub * LibertinusSerif-OsF/m/it
+}{}
+
+\DeclareFontShape{OT1}{LibertinusSerif-OsF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-OsF/regular/it
+}{}
+
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+\DeclareFontShape{OT1}{LibertinusSerif-OsF}{bx}{scit}{
+ <-> ssub * LibertinusSerif-OsF/b/scit
+}{}
+
\DeclareFontShape{OT1}{LibertinusSerif-OsF}{bx}{sl}{
<-> ssub * LibertinusSerif-OsF/b/sl
}{}
@@ -183,20 +187,16 @@
<-> ssub * LibertinusSerif-OsF/b/sc
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-OsF}{bx}{scsl}{
- <-> ssub * LibertinusSerif-OsF/b/scsl
+\DeclareFontShape{OT1}{LibertinusSerif-OsF}{bx}{n}{
+ <-> ssub * LibertinusSerif-OsF/b/n
}{}
\DeclareFontShape{OT1}{LibertinusSerif-OsF}{bx}{it}{
<-> ssub * LibertinusSerif-OsF/b/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-OsF}{bx}{n}{
- <-> ssub * LibertinusSerif-OsF/b/n
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSerif-OsF}{bx}{scit}{
- <-> ssub * LibertinusSerif-OsF/b/scit
+\DeclareFontShape{OT1}{LibertinusSerif-OsF}{bx}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/b/scsl
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-Sup.fd
index 50c36b02c58..70fcdfa342b 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-Sup.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-Sup.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{OT1LibertinusSerif-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for OT1/LibertinusSerif-Sup.]
+ [2024/09/22 (autoinst) Font definitions for OT1/LibertinusSerif-Sup.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,70 +20,62 @@
\DeclareFontFamily{OT1}{LibertinusSerif-Sup}{}
-% ---- sb = semibold ----
+% ---- b = bold ----
-\DeclareFontShape{OT1}{LibertinusSerif-Sup}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-sup-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-Sup}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-sup-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-Sup}{semibold}{it}{
- <-> alias * LibertinusSerif-Sup/sb/it
+\DeclareFontShape{OT1}{LibertinusSerif-Sup}{bold}{it}{
+ <-> alias * LibertinusSerif-Sup/b/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-Sup}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-sup-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-Sup}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-sup-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-Sup}{semibold}{n}{
- <-> alias * LibertinusSerif-Sup/sb/n
+\DeclareFontShape{OT1}{LibertinusSerif-Sup}{bold}{n}{
+ <-> alias * LibertinusSerif-Sup/b/n
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-Sup}{sb}{sl}{
- <-> ssub * LibertinusSerif-Sup/sb/it
+\DeclareFontShape{OT1}{LibertinusSerif-Sup}{b}{sl}{
+ <-> ssub * LibertinusSerif-Sup/b/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-Sup}{semibold}{sl}{
- <-> ssub * LibertinusSerif-Sup/semibold/it
+\DeclareFontShape{OT1}{LibertinusSerif-Sup}{bold}{sl}{
+ <-> ssub * LibertinusSerif-Sup/bold/it
}{}
-% ---- b = bold ----
+% ---- sb = semibold ----
-\DeclareFontShape{OT1}{LibertinusSerif-Sup}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-sup-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-Sup}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-sup-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-Sup}{bold}{n}{
- <-> alias * LibertinusSerif-Sup/b/n
+\DeclareFontShape{OT1}{LibertinusSerif-Sup}{semibold}{n}{
+ <-> alias * LibertinusSerif-Sup/sb/n
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-Sup}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-sup-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-Sup}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-sup-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-Sup}{bold}{it}{
- <-> alias * LibertinusSerif-Sup/b/it
+\DeclareFontShape{OT1}{LibertinusSerif-Sup}{semibold}{it}{
+ <-> alias * LibertinusSerif-Sup/sb/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-Sup}{b}{sl}{
- <-> ssub * LibertinusSerif-Sup/b/it
+\DeclareFontShape{OT1}{LibertinusSerif-Sup}{sb}{sl}{
+ <-> ssub * LibertinusSerif-Sup/sb/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-Sup}{bold}{sl}{
- <-> ssub * LibertinusSerif-Sup/bold/it
+\DeclareFontShape{OT1}{LibertinusSerif-Sup}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-Sup/semibold/it
}{}
% ---- m = regular ----
-\DeclareFontShape{OT1}{LibertinusSerif-Sup}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-sup-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSerif-Sup}{regular}{n}{
- <-> alias * LibertinusSerif-Sup/m/n
-}{}
-
\DeclareFontShape{OT1}{LibertinusSerif-Sup}{m}{it}{
<-> \LibertinusSerif@@scale LibertinusSerif-Italic-sup-ot1
}{}
@@ -92,6 +84,14 @@
<-> alias * LibertinusSerif-Sup/m/it
}{}
+\DeclareFontShape{OT1}{LibertinusSerif-Sup}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-sup-ot1
+}{}
+
+\DeclareFontShape{OT1}{LibertinusSerif-Sup}{regular}{n}{
+ <-> alias * LibertinusSerif-Sup/m/n
+}{}
+
\DeclareFontShape{OT1}{LibertinusSerif-Sup}{m}{sl}{
<-> ssub * LibertinusSerif-Sup/m/it
}{}
@@ -107,12 +107,12 @@
<-> ssub * LibertinusSerif-Sup/b/sl
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-Sup}{bx}{it}{
- <-> ssub * LibertinusSerif-Sup/b/it
-}{}
-
\DeclareFontShape{OT1}{LibertinusSerif-Sup}{bx}{n}{
<-> ssub * LibertinusSerif-Sup/b/n
}{}
+\DeclareFontShape{OT1}{LibertinusSerif-Sup}{bx}{it}{
+ <-> ssub * LibertinusSerif-Sup/b/it
+}{}
+
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-TLF.fd
index 92ff3f610e6..5dfded227ec 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{OT1LibertinusSerif-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for OT1/LibertinusSerif-TLF.]
+ [2024/09/22 (autoinst) Font definitions for OT1/LibertinusSerif-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,124 +20,116 @@
\DeclareFontFamily{OT1}{LibertinusSerif-TLF}{}
-% ---- sb = semibold ----
+% ---- m = regular ----
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{semibold}{it}{
- <-> alias * LibertinusSerif-TLF/sb/it
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{regular}{it}{
+ <-> alias * LibertinusSerif-TLF/m/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-sc-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{semibold}{scit}{
- <-> alias * LibertinusSerif-TLF/sb/scit
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{regular}{n}{
+ <-> alias * LibertinusSerif-TLF/m/n
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{semibold}{n}{
- <-> alias * LibertinusSerif-TLF/sb/n
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{regular}{scit}{
+ <-> alias * LibertinusSerif-TLF/m/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-sc-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{semibold}{sc}{
- <-> alias * LibertinusSerif-TLF/sb/sc
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{regular}{sc}{
+ <-> alias * LibertinusSerif-TLF/m/sc
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{sb}{sl}{
- <-> ssub * LibertinusSerif-TLF/sb/it
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/m/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-TLF/semibold/it
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/regular/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-TLF/sb/scit
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{m}{sl}{
+ <-> ssub * LibertinusSerif-TLF/m/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-TLF/semibold/scit
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-TLF/regular/it
}{}
-% ---- m = regular ----
+% ---- sb = semibold ----
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-sc-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{regular}{sc}{
- <-> alias * LibertinusSerif-TLF/m/sc
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{semibold}{n}{
+ <-> alias * LibertinusSerif-TLF/sb/n
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{regular}{n}{
- <-> alias * LibertinusSerif-TLF/m/n
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-TLF/sb/sc
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-sc-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{regular}{scit}{
- <-> alias * LibertinusSerif-TLF/m/scit
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-TLF/sb/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{regular}{it}{
- <-> alias * LibertinusSerif-TLF/m/it
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{semibold}{it}{
+ <-> alias * LibertinusSerif-TLF/sb/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{m}{sl}{
- <-> ssub * LibertinusSerif-TLF/m/it
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/sb/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{regular}{sl}{
- <-> ssub * LibertinusSerif-TLF/regular/it
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/semibold/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{m}{scsl}{
- <-> ssub * LibertinusSerif-TLF/m/scit
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-TLF/sb/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-TLF/regular/scit
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-TLF/semibold/it
}{}
% ---- b = bold ----
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-sc-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{bold}{sc}{
- <-> alias * LibertinusSerif-TLF/b/sc
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{b}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tlf-sc-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tlf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{bold}{scit}{
- <-> alias * LibertinusSerif-TLF/b/scit
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{bold}{it}{
+ <-> alias * LibertinusSerif-TLF/b/it
}{}
\DeclareFontShape{OT1}{LibertinusSerif-TLF}{b}{n}{
@@ -148,20 +140,20 @@
<-> alias * LibertinusSerif-TLF/b/n
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tlf-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{bold}{it}{
- <-> alias * LibertinusSerif-TLF/b/it
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{bold}{sc}{
+ <-> alias * LibertinusSerif-TLF/b/sc
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{b}{sl}{
- <-> ssub * LibertinusSerif-TLF/b/it
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{b}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tlf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{bold}{sl}{
- <-> ssub * LibertinusSerif-TLF/bold/it
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{bold}{scit}{
+ <-> alias * LibertinusSerif-TLF/b/scit
}{}
\DeclareFontShape{OT1}{LibertinusSerif-TLF}{b}{scsl}{
@@ -172,31 +164,39 @@
<-> ssub * LibertinusSerif-TLF/bold/scit
}{}
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{bx}{n}{
- <-> ssub * LibertinusSerif-TLF/b/n
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{b}{sl}{
+ <-> ssub * LibertinusSerif-TLF/b/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{bx}{scit}{
- <-> ssub * LibertinusSerif-TLF/b/scit
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-TLF/bold/it
}{}
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
\DeclareFontShape{OT1}{LibertinusSerif-TLF}{bx}{it}{
<-> ssub * LibertinusSerif-TLF/b/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{bx}{sl}{
- <-> ssub * LibertinusSerif-TLF/b/sl
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{bx}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/b/scsl
}{}
\DeclareFontShape{OT1}{LibertinusSerif-TLF}{bx}{sc}{
<-> ssub * LibertinusSerif-TLF/b/sc
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TLF}{bx}{scsl}{
- <-> ssub * LibertinusSerif-TLF/b/scsl
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{bx}{scit}{
+ <-> ssub * LibertinusSerif-TLF/b/scit
+}{}
+
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{bx}{sl}{
+ <-> ssub * LibertinusSerif-TLF/b/sl
+}{}
+
+\DeclareFontShape{OT1}{LibertinusSerif-TLF}{bx}{n}{
+ <-> ssub * LibertinusSerif-TLF/b/n
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-TOsF.fd
index 299e1ed5c1f..56b7226794e 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerif-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{OT1LibertinusSerif-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for OT1/LibertinusSerif-TOsF.]
+ [2024/09/22 (autoinst) Font definitions for OT1/LibertinusSerif-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,126 +20,110 @@
\DeclareFontFamily{OT1}{LibertinusSerif-TOsF}{}
-% ---- sb = semibold ----
+% ---- b = bold ----
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{semibold}{n}{
- <-> alias * LibertinusSerif-TOsF/sb/n
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bold}{n}{
+ <-> alias * LibertinusSerif-TOsF/b/n
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-sc-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{b}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{semibold}{scit}{
- <-> alias * LibertinusSerif-TOsF/sb/scit
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bold}{scit}{
+ <-> alias * LibertinusSerif-TOsF/b/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{semibold}{it}{
- <-> alias * LibertinusSerif-TOsF/sb/it
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bold}{sc}{
+ <-> alias * LibertinusSerif-TOsF/b/sc
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-sc-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{semibold}{sc}{
- <-> alias * LibertinusSerif-TOsF/sb/sc
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bold}{it}{
+ <-> alias * LibertinusSerif-TOsF/b/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{sb}{sl}{
- <-> ssub * LibertinusSerif-TOsF/sb/it
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{b}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/b/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-TOsF/semibold/it
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bold}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/bold/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/sb/scit
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{b}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/b/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/semibold/scit
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/bold/it
}{}
-% ---- b = bold ----
+% ---- sb = semibold ----
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bold}{n}{
- <-> alias * LibertinusSerif-TOsF/b/n
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-TOsF/sb/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{b}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-sc-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-sc-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bold}{scit}{
- <-> alias * LibertinusSerif-TOsF/b/scit
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-TOsF/sb/sc
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bold}{it}{
- <-> alias * LibertinusSerif-TOsF/b/it
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{semibold}{n}{
+ <-> alias * LibertinusSerif-TOsF/sb/n
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-sc-ot1
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bold}{sc}{
- <-> alias * LibertinusSerif-TOsF/b/sc
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{semibold}{it}{
+ <-> alias * LibertinusSerif-TOsF/sb/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{b}{sl}{
- <-> ssub * LibertinusSerif-TOsF/b/it
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/sb/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bold}{sl}{
- <-> ssub * LibertinusSerif-TOsF/bold/it
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/semibold/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{b}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/b/scit
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/sb/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bold}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/bold/scit
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/semibold/it
}{}
% ---- m = regular ----
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-sc-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{regular}{sc}{
- <-> alias * LibertinusSerif-TOsF/m/sc
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{regular}{it}{
- <-> alias * LibertinusSerif-TOsF/m/it
-}{}
-
\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{m}{n}{
<-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-ot1
}{}
@@ -148,6 +132,14 @@
<-> alias * LibertinusSerif-TOsF/m/n
}{}
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{regular}{sc}{
+ <-> alias * LibertinusSerif-TOsF/m/sc
+}{}
+
\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{m}{scit}{
<-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-sc-ot1
}{}
@@ -156,12 +148,12 @@
<-> alias * LibertinusSerif-TOsF/m/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{m}{sl}{
- <-> ssub * LibertinusSerif-TOsF/m/it
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-ot1
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{regular}{sl}{
- <-> ssub * LibertinusSerif-TOsF/regular/it
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{regular}{it}{
+ <-> alias * LibertinusSerif-TOsF/m/it
}{}
\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{m}{scsl}{
@@ -172,6 +164,14 @@
<-> ssub * LibertinusSerif-TOsF/regular/scit
}{}
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{m}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/m/it
+}{}
+
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/regular/it
+}{}
+
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
@@ -179,24 +179,24 @@
<-> ssub * LibertinusSerif-TOsF/b/scsl
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bx}{sl}{
- <-> ssub * LibertinusSerif-TOsF/b/sl
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bx}{it}{
+ <-> ssub * LibertinusSerif-TOsF/b/it
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bx}{sc}{
- <-> ssub * LibertinusSerif-TOsF/b/sc
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bx}{n}{
+ <-> ssub * LibertinusSerif-TOsF/b/n
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bx}{it}{
- <-> ssub * LibertinusSerif-TOsF/b/it
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bx}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/b/sl
}{}
\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bx}{scit}{
<-> ssub * LibertinusSerif-TOsF/b/scit
}{}
-\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bx}{n}{
- <-> ssub * LibertinusSerif-TOsF/b/n
+\DeclareFontShape{OT1}{LibertinusSerif-TOsF}{bx}{sc}{
+ <-> ssub * LibertinusSerif-TOsF/b/sc
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-LF.fd
deleted file mode 100644
index b9ad0dd86ba..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-LF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{OT1LibertinusSerifDisplay-LF.fd}
- [2022/11/07 (autoinst) Font definitions for OT1/LibertinusSerifDisplay-LF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{OT1}{LibertinusSerifDisplay-LF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{OT1}{LibertinusSerifDisplay-LF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-lf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSerifDisplay-LF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-LF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-OsF.fd
deleted file mode 100644
index e0f64e3cdbf..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-OsF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{OT1LibertinusSerifDisplay-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for OT1/LibertinusSerifDisplay-OsF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{OT1}{LibertinusSerifDisplay-OsF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{OT1}{LibertinusSerifDisplay-OsF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-osf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSerifDisplay-OsF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-OsF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-Sup.fd
deleted file mode 100644
index 0e368df70ae..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-Sup.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{OT1LibertinusSerifDisplay-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for OT1/LibertinusSerifDisplay-Sup.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{OT1}{LibertinusSerifDisplay-Sup}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{OT1}{LibertinusSerifDisplay-Sup}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-sup-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSerifDisplay-Sup}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-Sup/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-TLF.fd
deleted file mode 100644
index 3430d6e7c8f..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-TLF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{OT1LibertinusSerifDisplay-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for OT1/LibertinusSerifDisplay-TLF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{OT1}{LibertinusSerifDisplay-TLF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{OT1}{LibertinusSerifDisplay-TLF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-tlf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSerifDisplay-TLF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-TLF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-TOsF.fd
deleted file mode 100644
index a92cfe5fe3c..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifDisplay-TOsF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{OT1LibertinusSerifDisplay-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for OT1/LibertinusSerifDisplay-TOsF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{OT1}{LibertinusSerifDisplay-TOsF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{OT1}{LibertinusSerifDisplay-TOsF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-tosf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSerifDisplay-TOsF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-TOsF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifInitials-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifInitials-TLF.fd
deleted file mode 100644
index a5707fc5c4a..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/OT1LibertinusSerifInitials-TLF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{OT1LibertinusSerifInitials-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for OT1/LibertinusSerifInitials-TLF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifInitials@scale\endcsname\relax
- \let\LibertinusSerifInitials@@scale\@empty
-\else
- \edef\LibertinusSerifInitials@@scale{s*[\csname LibertinusSerifInitials@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{OT1}{LibertinusSerifInitials-TLF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{OT1}{LibertinusSerifInitials-TLF}{m}{n}{
- <-> \LibertinusSerifInitials@@scale LibertinusSerifInitials-Regular-tlf-ot1
-}{}
-
-\DeclareFontShape{OT1}{LibertinusSerifInitials-TLF}{regular}{n}{
- <-> alias * LibertinusSerifInitials-TLF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusMono-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusMono-TLF.fd
index dcce12f2ac5..ba7f4efbc9a 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusMono-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusMono-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T1LibertinusMono-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for T1/LibertinusMono-TLF.]
+ [2024/09/22 (autoinst) Font definitions for T1/LibertinusMono-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,14 +22,6 @@
% ---- m = regular ----
-\DeclareFontShape{T1}{LibertinusMono-TLF}{m}{sl}{
- <-> \LibertinusMono@@scale LibertinusMono-Oblique-tlf-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusMono-TLF}{regular}{sl}{
- <-> alias * LibertinusMono-TLF/m/sl
-}{}
-
\DeclareFontShape{T1}{LibertinusMono-TLF}{m}{n}{
<-> \LibertinusMono@@scale LibertinusMono-Regular-tlf-t1
}{}
@@ -38,54 +30,7 @@
<-> alias * LibertinusMono-TLF/m/n
}{}
-\DeclareFontShape{T1}{LibertinusMono-TLF}{m}{it}{
- <-> ssub * LibertinusMono-TLF/m/sl
-}{}
-
-\DeclareFontShape{T1}{LibertinusMono-TLF}{regular}{it}{
- <-> ssub * LibertinusMono-TLF/regular/sl
-}{}
-
-
-% ---- b = bold ----
-
-\DeclareFontShape{T1}{LibertinusMono-TLF}{b}{n}{
- <-> \LibertinusMono@@scale LibertinusMono-Bold-tlf-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusMono-TLF}{bold}{n}{
- <-> alias * LibertinusMono-TLF/b/n
-}{}
-
-\DeclareFontShape{T1}{LibertinusMono-TLF}{b}{sl}{
- <-> \LibertinusMono@@scale LibertinusMono-BoldOblique-tlf-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusMono-TLF}{bold}{sl}{
- <-> alias * LibertinusMono-TLF/b/sl
-}{}
-
-\DeclareFontShape{T1}{LibertinusMono-TLF}{b}{it}{
- <-> ssub * LibertinusMono-TLF/b/sl
-}{}
-
-\DeclareFontShape{T1}{LibertinusMono-TLF}{bold}{it}{
- <-> ssub * LibertinusMono-TLF/bold/sl
-}{}
-
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T1}{LibertinusMono-TLF}{bx}{sl}{
- <-> ssub * LibertinusMono-TLF/b/sl
-}{}
-
-\DeclareFontShape{T1}{LibertinusMono-TLF}{bx}{it}{
- <-> ssub * LibertinusMono-TLF/b/it
-}{}
-
-\DeclareFontShape{T1}{LibertinusMono-TLF}{bx}{n}{
- <-> ssub * LibertinusMono-TLF/b/n
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-LF.fd
index 7b11780b201..8736e2047c7 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-LF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T1LibertinusSans-LF.fd}
- [2022/11/07 (autoinst) Font definitions for T1/LibertinusSans-LF.]
+ [2024/09/22 (autoinst) Font definitions for T1/LibertinusSans-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,14 +20,33 @@
\DeclareFontFamily{T1}{LibertinusSans-LF}{}
+% ---- b = bold ----
+
+\DeclareFontShape{T1}{LibertinusSans-LF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{LibertinusSans-LF}{bold}{sc}{
+ <-> alias * LibertinusSans-LF/b/sc
+}{}
+
+\DeclareFontShape{T1}{LibertinusSans-LF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-t1
+}{}
+
+\DeclareFontShape{T1}{LibertinusSans-LF}{bold}{n}{
+ <-> alias * LibertinusSans-LF/b/n
+}{}
+
+
% ---- m = regular ----
-\DeclareFontShape{T1}{LibertinusSans-LF}{m}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-lf-sc-t1
+\DeclareFontShape{T1}{LibertinusSans-LF}{m}{it}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-lf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSans-LF}{regular}{sc}{
- <-> alias * LibertinusSans-LF/m/sc
+\DeclareFontShape{T1}{LibertinusSans-LF}{regular}{it}{
+ <-> alias * LibertinusSans-LF/m/it
}{}
\DeclareFontShape{T1}{LibertinusSans-LF}{m}{n}{
@@ -38,12 +57,12 @@
<-> alias * LibertinusSans-LF/m/n
}{}
-\DeclareFontShape{T1}{LibertinusSans-LF}{m}{it}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-lf-t1
+\DeclareFontShape{T1}{LibertinusSans-LF}{m}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-lf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSans-LF}{regular}{it}{
- <-> alias * LibertinusSans-LF/m/it
+\DeclareFontShape{T1}{LibertinusSans-LF}{regular}{sc}{
+ <-> alias * LibertinusSans-LF/m/sc
}{}
\DeclareFontShape{T1}{LibertinusSans-LF}{m}{scit}{
@@ -71,81 +90,14 @@
}{}
-% ---- b = bold ----
-
-\DeclareFontShape{T1}{LibertinusSans-LF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-sc-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-LF}{bold}{sc}{
- <-> alias * LibertinusSans-LF/b/sc
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-LF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-LF}{bold}{n}{
- <-> alias * LibertinusSans-LF/b/n
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-LF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-lf-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-LF}{bold}{sl}{
- <-> alias * LibertinusSans-LF/b/sl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-LF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-lf-sc-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-LF}{bold}{scsl}{
- <-> alias * LibertinusSans-LF/b/scsl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-LF}{b}{it}{
- <-> ssub * LibertinusSans-LF/b/sl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-LF}{bold}{it}{
- <-> ssub * LibertinusSans-LF/bold/sl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-LF}{b}{scit}{
- <-> ssub * LibertinusSans-LF/b/scsl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-LF}{bold}{scit}{
- <-> ssub * LibertinusSans-LF/bold/scsl
-}{}
-
-
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T1}{LibertinusSans-LF}{bx}{sc}{
- <-> ssub * LibertinusSans-LF/b/sc
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-LF}{bx}{sl}{
- <-> ssub * LibertinusSans-LF/b/sl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-LF}{bx}{it}{
- <-> ssub * LibertinusSans-LF/b/it
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-LF}{bx}{scit}{
- <-> ssub * LibertinusSans-LF/b/scit
-}{}
-
\DeclareFontShape{T1}{LibertinusSans-LF}{bx}{n}{
<-> ssub * LibertinusSans-LF/b/n
}{}
-\DeclareFontShape{T1}{LibertinusSans-LF}{bx}{scsl}{
- <-> ssub * LibertinusSans-LF/b/scsl
+\DeclareFontShape{T1}{LibertinusSans-LF}{bx}{sc}{
+ <-> ssub * LibertinusSans-LF/b/sc
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-OsF.fd
index f18d1086d2d..5772c9a709c 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-OsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T1LibertinusSans-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for T1/LibertinusSans-OsF.]
+ [2024/09/22 (autoinst) Font definitions for T1/LibertinusSans-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,30 +22,6 @@
% ---- b = bold ----
-\DeclareFontShape{T1}{LibertinusSans-OsF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-osf-sc-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-OsF}{bold}{scsl}{
- <-> alias * LibertinusSans-OsF/b/scsl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-OsF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-osf-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-OsF}{bold}{sl}{
- <-> alias * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-OsF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-OsF}{bold}{n}{
- <-> alias * LibertinusSans-OsF/b/n
-}{}
-
\DeclareFontShape{T1}{LibertinusSans-OsF}{b}{sc}{
<-> \LibertinusSans@@scale LibertinusSans-Bold-osf-sc-t1
}{}
@@ -54,20 +30,12 @@
<-> alias * LibertinusSans-OsF/b/sc
}{}
-\DeclareFontShape{T1}{LibertinusSans-OsF}{b}{it}{
- <-> ssub * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-OsF}{bold}{it}{
- <-> ssub * LibertinusSans-OsF/bold/sl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-OsF}{b}{scit}{
- <-> ssub * LibertinusSans-OsF/b/scsl
+\DeclareFontShape{T1}{LibertinusSans-OsF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSans-OsF}{bold}{scit}{
- <-> ssub * LibertinusSans-OsF/bold/scsl
+\DeclareFontShape{T1}{LibertinusSans-OsF}{bold}{n}{
+ <-> alias * LibertinusSans-OsF/b/n
}{}
@@ -81,12 +49,12 @@
<-> alias * LibertinusSans-OsF/m/it
}{}
-\DeclareFontShape{T1}{LibertinusSans-OsF}{m}{scit}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-osf-sc-t1
+\DeclareFontShape{T1}{LibertinusSans-OsF}{m}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-osf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSans-OsF}{regular}{scit}{
- <-> alias * LibertinusSans-OsF/m/scit
+\DeclareFontShape{T1}{LibertinusSans-OsF}{regular}{n}{
+ <-> alias * LibertinusSans-OsF/m/n
}{}
\DeclareFontShape{T1}{LibertinusSans-OsF}{m}{sc}{
@@ -97,12 +65,12 @@
<-> alias * LibertinusSans-OsF/m/sc
}{}
-\DeclareFontShape{T1}{LibertinusSans-OsF}{m}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-osf-t1
+\DeclareFontShape{T1}{LibertinusSans-OsF}{m}{scit}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-osf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSans-OsF}{regular}{n}{
- <-> alias * LibertinusSans-OsF/m/n
+\DeclareFontShape{T1}{LibertinusSans-OsF}{regular}{scit}{
+ <-> alias * LibertinusSans-OsF/m/scit
}{}
\DeclareFontShape{T1}{LibertinusSans-OsF}{m}{scsl}{
@@ -124,28 +92,12 @@
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T1}{LibertinusSans-OsF}{bx}{scsl}{
- <-> ssub * LibertinusSans-OsF/b/scsl
+\DeclareFontShape{T1}{LibertinusSans-OsF}{bx}{sc}{
+ <-> ssub * LibertinusSans-OsF/b/sc
}{}
\DeclareFontShape{T1}{LibertinusSans-OsF}{bx}{n}{
<-> ssub * LibertinusSans-OsF/b/n
}{}
-\DeclareFontShape{T1}{LibertinusSans-OsF}{bx}{scit}{
- <-> ssub * LibertinusSans-OsF/b/scit
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-OsF}{bx}{it}{
- <-> ssub * LibertinusSans-OsF/b/it
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-OsF}{bx}{sl}{
- <-> ssub * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-OsF}{bx}{sc}{
- <-> ssub * LibertinusSans-OsF/b/sc
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-Sup.fd
index dbb3a0aeffe..da44dcffabe 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-Sup.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-Sup.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T1LibertinusSans-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for T1/LibertinusSans-Sup.]
+ [2024/09/22 (autoinst) Font definitions for T1/LibertinusSans-Sup.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,14 +22,6 @@
% ---- b = bold ----
-\DeclareFontShape{T1}{LibertinusSans-Sup}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-sup-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-Sup}{bold}{sl}{
- <-> alias * LibertinusSans-Sup/b/sl
-}{}
-
\DeclareFontShape{T1}{LibertinusSans-Sup}{b}{n}{
<-> \LibertinusSans@@scale LibertinusSans-Bold-sup-t1
}{}
@@ -38,16 +30,16 @@
<-> alias * LibertinusSans-Sup/b/n
}{}
-\DeclareFontShape{T1}{LibertinusSans-Sup}{b}{it}{
- <-> ssub * LibertinusSans-Sup/b/sl
-}{}
-\DeclareFontShape{T1}{LibertinusSans-Sup}{bold}{it}{
- <-> ssub * LibertinusSans-Sup/bold/sl
-}{}
+% ---- m = regular ----
+\DeclareFontShape{T1}{LibertinusSans-Sup}{m}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-sup-t1
+}{}
-% ---- m = regular ----
+\DeclareFontShape{T1}{LibertinusSans-Sup}{regular}{n}{
+ <-> alias * LibertinusSans-Sup/m/n
+}{}
\DeclareFontShape{T1}{LibertinusSans-Sup}{m}{it}{
<-> \LibertinusSans@@scale LibertinusSans-Italic-sup-t1
@@ -57,14 +49,6 @@
<-> alias * LibertinusSans-Sup/m/it
}{}
-\DeclareFontShape{T1}{LibertinusSans-Sup}{m}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-sup-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-Sup}{regular}{n}{
- <-> alias * LibertinusSans-Sup/m/n
-}{}
-
\DeclareFontShape{T1}{LibertinusSans-Sup}{m}{sl}{
<-> ssub * LibertinusSans-Sup/m/it
}{}
@@ -76,16 +60,8 @@
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T1}{LibertinusSans-Sup}{bx}{sl}{
- <-> ssub * LibertinusSans-Sup/b/sl
-}{}
-
\DeclareFontShape{T1}{LibertinusSans-Sup}{bx}{n}{
<-> ssub * LibertinusSans-Sup/b/n
}{}
-\DeclareFontShape{T1}{LibertinusSans-Sup}{bx}{it}{
- <-> ssub * LibertinusSans-Sup/b/it
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-TLF.fd
index 1a32b643c9d..6b82fa2161a 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T1LibertinusSans-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for T1/LibertinusSans-TLF.]
+ [2024/09/22 (autoinst) Font definitions for T1/LibertinusSans-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,14 +20,33 @@
\DeclareFontFamily{T1}{LibertinusSans-TLF}{}
+% ---- b = bold ----
+
+\DeclareFontShape{T1}{LibertinusSans-TLF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{LibertinusSans-TLF}{bold}{n}{
+ <-> alias * LibertinusSans-TLF/b/n
+}{}
+
+\DeclareFontShape{T1}{LibertinusSans-TLF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{LibertinusSans-TLF}{bold}{sc}{
+ <-> alias * LibertinusSans-TLF/b/sc
+}{}
+
+
% ---- m = regular ----
-\DeclareFontShape{T1}{LibertinusSans-TLF}{m}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-tlf-t1
+\DeclareFontShape{T1}{LibertinusSans-TLF}{m}{it}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-tlf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSans-TLF}{regular}{n}{
- <-> alias * LibertinusSans-TLF/m/n
+\DeclareFontShape{T1}{LibertinusSans-TLF}{regular}{it}{
+ <-> alias * LibertinusSans-TLF/m/it
}{}
\DeclareFontShape{T1}{LibertinusSans-TLF}{m}{sc}{
@@ -46,12 +65,12 @@
<-> alias * LibertinusSans-TLF/m/scit
}{}
-\DeclareFontShape{T1}{LibertinusSans-TLF}{m}{it}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-tlf-t1
+\DeclareFontShape{T1}{LibertinusSans-TLF}{m}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-tlf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSans-TLF}{regular}{it}{
- <-> alias * LibertinusSans-TLF/m/it
+\DeclareFontShape{T1}{LibertinusSans-TLF}{regular}{n}{
+ <-> alias * LibertinusSans-TLF/m/n
}{}
\DeclareFontShape{T1}{LibertinusSans-TLF}{m}{scsl}{
@@ -71,81 +90,14 @@
}{}
-% ---- b = bold ----
-
-\DeclareFontShape{T1}{LibertinusSans-TLF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tlf-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TLF}{bold}{sl}{
- <-> alias * LibertinusSans-TLF/b/sl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TLF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TLF}{bold}{n}{
- <-> alias * LibertinusSans-TLF/b/n
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TLF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-sc-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TLF}{bold}{sc}{
- <-> alias * LibertinusSans-TLF/b/sc
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TLF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tlf-sc-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TLF}{bold}{scsl}{
- <-> alias * LibertinusSans-TLF/b/scsl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TLF}{b}{it}{
- <-> ssub * LibertinusSans-TLF/b/sl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TLF}{bold}{it}{
- <-> ssub * LibertinusSans-TLF/bold/sl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TLF}{b}{scit}{
- <-> ssub * LibertinusSans-TLF/b/scsl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TLF}{bold}{scit}{
- <-> ssub * LibertinusSans-TLF/bold/scsl
-}{}
-
-
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T1}{LibertinusSans-TLF}{bx}{sl}{
- <-> ssub * LibertinusSans-TLF/b/sl
-}{}
-
\DeclareFontShape{T1}{LibertinusSans-TLF}{bx}{sc}{
<-> ssub * LibertinusSans-TLF/b/sc
}{}
-\DeclareFontShape{T1}{LibertinusSans-TLF}{bx}{scit}{
- <-> ssub * LibertinusSans-TLF/b/scit
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TLF}{bx}{it}{
- <-> ssub * LibertinusSans-TLF/b/it
-}{}
-
\DeclareFontShape{T1}{LibertinusSans-TLF}{bx}{n}{
<-> ssub * LibertinusSans-TLF/b/n
}{}
-\DeclareFontShape{T1}{LibertinusSans-TLF}{bx}{scsl}{
- <-> ssub * LibertinusSans-TLF/b/scsl
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-TOsF.fd
index 0cd8c9d2a8c..263258b5254 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSans-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T1LibertinusSans-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for T1/LibertinusSans-TOsF.]
+ [2024/09/22 (autoinst) Font definitions for T1/LibertinusSans-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,22 +22,6 @@
% ---- m = regular ----
-\DeclareFontShape{T1}{LibertinusSans-TOsF}{m}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-tosf-sc-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TOsF}{regular}{sc}{
- <-> alias * LibertinusSans-TOsF/m/sc
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TOsF}{m}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-tosf-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TOsF}{regular}{n}{
- <-> alias * LibertinusSans-TOsF/m/n
-}{}
-
\DeclareFontShape{T1}{LibertinusSans-TOsF}{m}{it}{
<-> \LibertinusSans@@scale LibertinusSans-Italic-tosf-t1
}{}
@@ -54,6 +38,22 @@
<-> alias * LibertinusSans-TOsF/m/scit
}{}
+\DeclareFontShape{T1}{LibertinusSans-TOsF}{m}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-tosf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{LibertinusSans-TOsF}{regular}{sc}{
+ <-> alias * LibertinusSans-TOsF/m/sc
+}{}
+
+\DeclareFontShape{T1}{LibertinusSans-TOsF}{m}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-tosf-t1
+}{}
+
+\DeclareFontShape{T1}{LibertinusSans-TOsF}{regular}{n}{
+ <-> alias * LibertinusSans-TOsF/m/n
+}{}
+
\DeclareFontShape{T1}{LibertinusSans-TOsF}{m}{scsl}{
<-> ssub * LibertinusSans-TOsF/m/scit
}{}
@@ -81,14 +81,6 @@
<-> alias * LibertinusSans-TOsF/b/sc
}{}
-\DeclareFontShape{T1}{LibertinusSans-TOsF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tosf-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TOsF}{bold}{sl}{
- <-> alias * LibertinusSans-TOsF/b/sl
-}{}
-
\DeclareFontShape{T1}{LibertinusSans-TOsF}{b}{n}{
<-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-t1
}{}
@@ -97,55 +89,15 @@
<-> alias * LibertinusSans-TOsF/b/n
}{}
-\DeclareFontShape{T1}{LibertinusSans-TOsF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tosf-sc-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TOsF}{bold}{scsl}{
- <-> alias * LibertinusSans-TOsF/b/scsl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TOsF}{b}{it}{
- <-> ssub * LibertinusSans-TOsF/b/sl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TOsF}{bold}{it}{
- <-> ssub * LibertinusSans-TOsF/bold/sl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TOsF}{b}{scit}{
- <-> ssub * LibertinusSans-TOsF/b/scsl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TOsF}{bold}{scit}{
- <-> ssub * LibertinusSans-TOsF/bold/scsl
-}{}
-
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T1}{LibertinusSans-TOsF}{bx}{n}{
- <-> ssub * LibertinusSans-TOsF/b/n
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TOsF}{bx}{sl}{
- <-> ssub * LibertinusSans-TOsF/b/sl
-}{}
-
\DeclareFontShape{T1}{LibertinusSans-TOsF}{bx}{sc}{
<-> ssub * LibertinusSans-TOsF/b/sc
}{}
-\DeclareFontShape{T1}{LibertinusSans-TOsF}{bx}{scit}{
- <-> ssub * LibertinusSans-TOsF/b/scit
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TOsF}{bx}{it}{
- <-> ssub * LibertinusSans-TOsF/b/it
-}{}
-
-\DeclareFontShape{T1}{LibertinusSans-TOsF}{bx}{scsl}{
- <-> ssub * LibertinusSans-TOsF/b/scsl
+\DeclareFontShape{T1}{LibertinusSans-TOsF}{bx}{n}{
+ <-> ssub * LibertinusSans-TOsF/b/n
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-LF.fd
index 12a98776fd1..6386d6efe10 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-LF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T1LibertinusSerif-LF.fd}
- [2022/11/07 (autoinst) Font definitions for T1/LibertinusSerif-LF.]
+ [2024/09/22 (autoinst) Font definitions for T1/LibertinusSerif-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,126 +20,110 @@
\DeclareFontFamily{T1}{LibertinusSerif-LF}{}
-% ---- sb = semibold ----
+% ---- m = regular ----
-\DeclareFontShape{T1}{LibertinusSerif-LF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-sc-t1
+\DeclareFontShape{T1}{LibertinusSerif-LF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{semibold}{scit}{
- <-> alias * LibertinusSerif-LF/sb/scit
+\DeclareFontShape{T1}{LibertinusSerif-LF}{regular}{scit}{
+ <-> alias * LibertinusSerif-LF/m/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-t1
+\DeclareFontShape{T1}{LibertinusSerif-LF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{semibold}{n}{
- <-> alias * LibertinusSerif-LF/sb/n
+\DeclareFontShape{T1}{LibertinusSerif-LF}{regular}{sc}{
+ <-> alias * LibertinusSerif-LF/m/sc
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-t1
+\DeclareFontShape{T1}{LibertinusSerif-LF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{semibold}{it}{
- <-> alias * LibertinusSerif-LF/sb/it
+\DeclareFontShape{T1}{LibertinusSerif-LF}{regular}{n}{
+ <-> alias * LibertinusSerif-LF/m/n
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-sc-t1
+\DeclareFontShape{T1}{LibertinusSerif-LF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{semibold}{sc}{
- <-> alias * LibertinusSerif-LF/sb/sc
+\DeclareFontShape{T1}{LibertinusSerif-LF}{regular}{it}{
+ <-> alias * LibertinusSerif-LF/m/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{sb}{sl}{
- <-> ssub * LibertinusSerif-LF/sb/it
+\DeclareFontShape{T1}{LibertinusSerif-LF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-LF/m/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-LF/semibold/it
+\DeclareFontShape{T1}{LibertinusSerif-LF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-LF/regular/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-LF/sb/scit
+\DeclareFontShape{T1}{LibertinusSerif-LF}{m}{sl}{
+ <-> ssub * LibertinusSerif-LF/m/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-LF/semibold/scit
+\DeclareFontShape{T1}{LibertinusSerif-LF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-LF/regular/it
}{}
-% ---- m = regular ----
+% ---- sb = semibold ----
-\DeclareFontShape{T1}{LibertinusSerif-LF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-t1
+\DeclareFontShape{T1}{LibertinusSerif-LF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{regular}{it}{
- <-> alias * LibertinusSerif-LF/m/it
+\DeclareFontShape{T1}{LibertinusSerif-LF}{semibold}{it}{
+ <-> alias * LibertinusSerif-LF/sb/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-t1
+\DeclareFontShape{T1}{LibertinusSerif-LF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{regular}{n}{
- <-> alias * LibertinusSerif-LF/m/n
+\DeclareFontShape{T1}{LibertinusSerif-LF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-LF/sb/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-sc-t1
+\DeclareFontShape{T1}{LibertinusSerif-LF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{regular}{scit}{
- <-> alias * LibertinusSerif-LF/m/scit
+\DeclareFontShape{T1}{LibertinusSerif-LF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-LF/sb/sc
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-sc-t1
+\DeclareFontShape{T1}{LibertinusSerif-LF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{regular}{sc}{
- <-> alias * LibertinusSerif-LF/m/sc
+\DeclareFontShape{T1}{LibertinusSerif-LF}{semibold}{n}{
+ <-> alias * LibertinusSerif-LF/sb/n
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{m}{sl}{
- <-> ssub * LibertinusSerif-LF/m/it
+\DeclareFontShape{T1}{LibertinusSerif-LF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-LF/sb/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{regular}{sl}{
- <-> ssub * LibertinusSerif-LF/regular/it
+\DeclareFontShape{T1}{LibertinusSerif-LF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-LF/semibold/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{m}{scsl}{
- <-> ssub * LibertinusSerif-LF/m/scit
+\DeclareFontShape{T1}{LibertinusSerif-LF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-LF/sb/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-LF/regular/scit
+\DeclareFontShape{T1}{LibertinusSerif-LF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-LF/semibold/it
}{}
% ---- b = bold ----
-\DeclareFontShape{T1}{LibertinusSerif-LF}{b}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-sc-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSerif-LF}{bold}{scit}{
- <-> alias * LibertinusSerif-LF/b/scit
-}{}
-
-\DeclareFontShape{T1}{LibertinusSerif-LF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSerif-LF}{bold}{n}{
- <-> alias * LibertinusSerif-LF/b/n
-}{}
-
\DeclareFontShape{T1}{LibertinusSerif-LF}{b}{it}{
<-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-t1
}{}
@@ -156,12 +140,20 @@
<-> alias * LibertinusSerif-LF/b/sc
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{b}{sl}{
- <-> ssub * LibertinusSerif-LF/b/it
+\DeclareFontShape{T1}{LibertinusSerif-LF}{b}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{bold}{sl}{
- <-> ssub * LibertinusSerif-LF/bold/it
+\DeclareFontShape{T1}{LibertinusSerif-LF}{bold}{scit}{
+ <-> alias * LibertinusSerif-LF/b/scit
+}{}
+
+\DeclareFontShape{T1}{LibertinusSerif-LF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-t1
+}{}
+
+\DeclareFontShape{T1}{LibertinusSerif-LF}{bold}{n}{
+ <-> alias * LibertinusSerif-LF/b/n
}{}
\DeclareFontShape{T1}{LibertinusSerif-LF}{b}{scsl}{
@@ -172,17 +164,17 @@
<-> ssub * LibertinusSerif-LF/bold/scit
}{}
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\DeclareFontShape{T1}{LibertinusSerif-LF}{bx}{scit}{
- <-> ssub * LibertinusSerif-LF/b/scit
+\DeclareFontShape{T1}{LibertinusSerif-LF}{b}{sl}{
+ <-> ssub * LibertinusSerif-LF/b/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-LF}{bx}{n}{
- <-> ssub * LibertinusSerif-LF/b/n
+\DeclareFontShape{T1}{LibertinusSerif-LF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-LF/bold/it
}{}
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
\DeclareFontShape{T1}{LibertinusSerif-LF}{bx}{it}{
<-> ssub * LibertinusSerif-LF/b/it
}{}
@@ -191,6 +183,14 @@
<-> ssub * LibertinusSerif-LF/b/scsl
}{}
+\DeclareFontShape{T1}{LibertinusSerif-LF}{bx}{scit}{
+ <-> ssub * LibertinusSerif-LF/b/scit
+}{}
+
+\DeclareFontShape{T1}{LibertinusSerif-LF}{bx}{n}{
+ <-> ssub * LibertinusSerif-LF/b/n
+}{}
+
\DeclareFontShape{T1}{LibertinusSerif-LF}{bx}{sc}{
<-> ssub * LibertinusSerif-LF/b/sc
}{}
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-OsF.fd
index bb4d3a94eae..c7454cbae16 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-OsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T1LibertinusSerif-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for T1/LibertinusSerif-OsF.]
+ [2024/09/22 (autoinst) Font definitions for T1/LibertinusSerif-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,183 +20,183 @@
\DeclareFontFamily{T1}{LibertinusSerif-OsF}{}
-% ---- sb = semibold ----
+% ---- b = bold ----
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-t1
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{semibold}{it}{
- <-> alias * LibertinusSerif-OsF/sb/it
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{bold}{sc}{
+ <-> alias * LibertinusSerif-OsF/b/sc
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-t1
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{b}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{semibold}{n}{
- <-> alias * LibertinusSerif-OsF/sb/n
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{bold}{scit}{
+ <-> alias * LibertinusSerif-OsF/b/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-sc-t1
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{semibold}{scit}{
- <-> alias * LibertinusSerif-OsF/sb/scit
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{bold}{n}{
+ <-> alias * LibertinusSerif-OsF/b/n
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-sc-t1
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{semibold}{sc}{
- <-> alias * LibertinusSerif-OsF/sb/sc
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{bold}{it}{
+ <-> alias * LibertinusSerif-OsF/b/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{sb}{sl}{
- <-> ssub * LibertinusSerif-OsF/sb/it
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{b}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/b/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-OsF/semibold/it
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{bold}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/bold/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-OsF/sb/scit
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{b}{sl}{
+ <-> ssub * LibertinusSerif-OsF/b/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-OsF/semibold/scit
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-OsF/bold/it
}{}
-% ---- m = regular ----
+% ---- sb = semibold ----
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-sc-t1
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{regular}{sc}{
- <-> alias * LibertinusSerif-OsF/m/sc
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{semibold}{it}{
+ <-> alias * LibertinusSerif-OsF/sb/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-t1
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{regular}{it}{
- <-> alias * LibertinusSerif-OsF/m/it
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-OsF/sb/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-t1
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{regular}{n}{
- <-> alias * LibertinusSerif-OsF/m/n
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-OsF/sb/sc
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-sc-t1
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{regular}{scit}{
- <-> alias * LibertinusSerif-OsF/m/scit
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{semibold}{n}{
+ <-> alias * LibertinusSerif-OsF/sb/n
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{m}{sl}{
- <-> ssub * LibertinusSerif-OsF/m/it
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/sb/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{regular}{sl}{
- <-> ssub * LibertinusSerif-OsF/regular/it
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/semibold/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{m}{scsl}{
- <-> ssub * LibertinusSerif-OsF/m/scit
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-OsF/sb/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-OsF/regular/scit
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-OsF/semibold/it
}{}
-% ---- b = bold ----
+% ---- m = regular ----
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{b}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-sc-t1
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{bold}{scit}{
- <-> alias * LibertinusSerif-OsF/b/scit
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{regular}{n}{
+ <-> alias * LibertinusSerif-OsF/m/n
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-t1
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{bold}{n}{
- <-> alias * LibertinusSerif-OsF/b/n
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{regular}{scit}{
+ <-> alias * LibertinusSerif-OsF/m/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-t1
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{bold}{it}{
- <-> alias * LibertinusSerif-OsF/b/it
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{regular}{sc}{
+ <-> alias * LibertinusSerif-OsF/m/sc
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-sc-t1
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{bold}{sc}{
- <-> alias * LibertinusSerif-OsF/b/sc
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{regular}{it}{
+ <-> alias * LibertinusSerif-OsF/m/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{b}{sl}{
- <-> ssub * LibertinusSerif-OsF/b/it
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/m/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{bold}{sl}{
- <-> ssub * LibertinusSerif-OsF/bold/it
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/regular/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{b}{scsl}{
- <-> ssub * LibertinusSerif-OsF/b/scit
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{m}{sl}{
+ <-> ssub * LibertinusSerif-OsF/m/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{bold}{scsl}{
- <-> ssub * LibertinusSerif-OsF/bold/scit
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-OsF/regular/it
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{bx}{sc}{
- <-> ssub * LibertinusSerif-OsF/b/sc
-}{}
-
\DeclareFontShape{T1}{LibertinusSerif-OsF}{bx}{sl}{
<-> ssub * LibertinusSerif-OsF/b/sl
}{}
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{bx}{scsl}{
- <-> ssub * LibertinusSerif-OsF/b/scsl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSerif-OsF}{bx}{n}{
- <-> ssub * LibertinusSerif-OsF/b/n
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{bx}{sc}{
+ <-> ssub * LibertinusSerif-OsF/b/sc
}{}
\DeclareFontShape{T1}{LibertinusSerif-OsF}{bx}{scit}{
<-> ssub * LibertinusSerif-OsF/b/scit
}{}
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{bx}{n}{
+ <-> ssub * LibertinusSerif-OsF/b/n
+}{}
+
\DeclareFontShape{T1}{LibertinusSerif-OsF}{bx}{it}{
<-> ssub * LibertinusSerif-OsF/b/it
}{}
+\DeclareFontShape{T1}{LibertinusSerif-OsF}{bx}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/b/scsl
+}{}
+
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-Sup.fd
index 900fc0ec905..40e48768b65 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-Sup.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-Sup.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T1LibertinusSerif-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for T1/LibertinusSerif-Sup.]
+ [2024/09/22 (autoinst) Font definitions for T1/LibertinusSerif-Sup.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,14 +22,6 @@
% ---- sb = semibold ----
-\DeclareFontShape{T1}{LibertinusSerif-Sup}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-sup-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSerif-Sup}{semibold}{n}{
- <-> alias * LibertinusSerif-Sup/sb/n
-}{}
-
\DeclareFontShape{T1}{LibertinusSerif-Sup}{sb}{it}{
<-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-sup-t1
}{}
@@ -38,6 +30,14 @@
<-> alias * LibertinusSerif-Sup/sb/it
}{}
+\DeclareFontShape{T1}{LibertinusSerif-Sup}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-sup-t1
+}{}
+
+\DeclareFontShape{T1}{LibertinusSerif-Sup}{semibold}{n}{
+ <-> alias * LibertinusSerif-Sup/sb/n
+}{}
+
\DeclareFontShape{T1}{LibertinusSerif-Sup}{sb}{sl}{
<-> ssub * LibertinusSerif-Sup/sb/it
}{}
@@ -103,6 +103,10 @@
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+\DeclareFontShape{T1}{LibertinusSerif-Sup}{bx}{n}{
+ <-> ssub * LibertinusSerif-Sup/b/n
+}{}
+
\DeclareFontShape{T1}{LibertinusSerif-Sup}{bx}{sl}{
<-> ssub * LibertinusSerif-Sup/b/sl
}{}
@@ -111,8 +115,4 @@
<-> ssub * LibertinusSerif-Sup/b/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-Sup}{bx}{n}{
- <-> ssub * LibertinusSerif-Sup/b/n
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-TLF.fd
index e8dd2d8be95..33d59bfcaad 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T1LibertinusSerif-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for T1/LibertinusSerif-TLF.]
+ [2024/09/22 (autoinst) Font definitions for T1/LibertinusSerif-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,14 +22,6 @@
% ---- m = regular ----
-\DeclareFontShape{T1}{LibertinusSerif-TLF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-sc-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSerif-TLF}{regular}{sc}{
- <-> alias * LibertinusSerif-TLF/m/sc
-}{}
-
\DeclareFontShape{T1}{LibertinusSerif-TLF}{m}{it}{
<-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-t1
}{}
@@ -46,20 +38,20 @@
<-> alias * LibertinusSerif-TLF/m/n
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TLF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-sc-t1
+\DeclareFontShape{T1}{LibertinusSerif-TLF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TLF}{regular}{scit}{
- <-> alias * LibertinusSerif-TLF/m/scit
+\DeclareFontShape{T1}{LibertinusSerif-TLF}{regular}{sc}{
+ <-> alias * LibertinusSerif-TLF/m/sc
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TLF}{m}{sl}{
- <-> ssub * LibertinusSerif-TLF/m/it
+\DeclareFontShape{T1}{LibertinusSerif-TLF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TLF}{regular}{sl}{
- <-> ssub * LibertinusSerif-TLF/regular/it
+\DeclareFontShape{T1}{LibertinusSerif-TLF}{regular}{scit}{
+ <-> alias * LibertinusSerif-TLF/m/scit
}{}
\DeclareFontShape{T1}{LibertinusSerif-TLF}{m}{scsl}{
@@ -70,17 +62,17 @@
<-> ssub * LibertinusSerif-TLF/regular/scit
}{}
-
-% ---- b = bold ----
-
-\DeclareFontShape{T1}{LibertinusSerif-TLF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-sc-t1
+\DeclareFontShape{T1}{LibertinusSerif-TLF}{m}{sl}{
+ <-> ssub * LibertinusSerif-TLF/m/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TLF}{bold}{sc}{
- <-> alias * LibertinusSerif-TLF/b/sc
+\DeclareFontShape{T1}{LibertinusSerif-TLF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-TLF/regular/it
}{}
+
+% ---- b = bold ----
+
\DeclareFontShape{T1}{LibertinusSerif-TLF}{b}{scit}{
<-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tlf-sc-t1
}{}
@@ -89,6 +81,14 @@
<-> alias * LibertinusSerif-TLF/b/scit
}{}
+\DeclareFontShape{T1}{LibertinusSerif-TLF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{LibertinusSerif-TLF}{bold}{sc}{
+ <-> alias * LibertinusSerif-TLF/b/sc
+}{}
+
\DeclareFontShape{T1}{LibertinusSerif-TLF}{b}{n}{
<-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-t1
}{}
@@ -105,14 +105,6 @@
<-> alias * LibertinusSerif-TLF/b/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TLF}{b}{sl}{
- <-> ssub * LibertinusSerif-TLF/b/it
-}{}
-
-\DeclareFontShape{T1}{LibertinusSerif-TLF}{bold}{sl}{
- <-> ssub * LibertinusSerif-TLF/bold/it
-}{}
-
\DeclareFontShape{T1}{LibertinusSerif-TLF}{b}{scsl}{
<-> ssub * LibertinusSerif-TLF/b/scit
}{}
@@ -121,6 +113,14 @@
<-> ssub * LibertinusSerif-TLF/bold/scit
}{}
+\DeclareFontShape{T1}{LibertinusSerif-TLF}{b}{sl}{
+ <-> ssub * LibertinusSerif-TLF/b/it
+}{}
+
+\DeclareFontShape{T1}{LibertinusSerif-TLF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-TLF/bold/it
+}{}
+
% ---- sb = semibold ----
@@ -140,14 +140,6 @@
<-> alias * LibertinusSerif-TLF/sb/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TLF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSerif-TLF}{semibold}{it}{
- <-> alias * LibertinusSerif-TLF/sb/it
-}{}
-
\DeclareFontShape{T1}{LibertinusSerif-TLF}{sb}{sc}{
<-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-sc-t1
}{}
@@ -156,12 +148,12 @@
<-> alias * LibertinusSerif-TLF/sb/sc
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TLF}{sb}{sl}{
- <-> ssub * LibertinusSerif-TLF/sb/it
+\DeclareFontShape{T1}{LibertinusSerif-TLF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TLF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-TLF/semibold/it
+\DeclareFontShape{T1}{LibertinusSerif-TLF}{semibold}{it}{
+ <-> alias * LibertinusSerif-TLF/sb/it
}{}
\DeclareFontShape{T1}{LibertinusSerif-TLF}{sb}{scsl}{
@@ -172,31 +164,39 @@
<-> ssub * LibertinusSerif-TLF/semibold/scit
}{}
+\DeclareFontShape{T1}{LibertinusSerif-TLF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-TLF/sb/it
+}{}
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\DeclareFontShape{T1}{LibertinusSerif-TLF}{bx}{it}{
- <-> ssub * LibertinusSerif-TLF/b/it
+\DeclareFontShape{T1}{LibertinusSerif-TLF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-TLF/semibold/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TLF}{bx}{scit}{
- <-> ssub * LibertinusSerif-TLF/b/scit
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T1}{LibertinusSerif-TLF}{bx}{sl}{
+ <-> ssub * LibertinusSerif-TLF/b/sl
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TLF}{bx}{n}{
- <-> ssub * LibertinusSerif-TLF/b/n
+\DeclareFontShape{T1}{LibertinusSerif-TLF}{bx}{sc}{
+ <-> ssub * LibertinusSerif-TLF/b/sc
}{}
\DeclareFontShape{T1}{LibertinusSerif-TLF}{bx}{scsl}{
<-> ssub * LibertinusSerif-TLF/b/scsl
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TLF}{bx}{sl}{
- <-> ssub * LibertinusSerif-TLF/b/sl
+\DeclareFontShape{T1}{LibertinusSerif-TLF}{bx}{it}{
+ <-> ssub * LibertinusSerif-TLF/b/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TLF}{bx}{sc}{
- <-> ssub * LibertinusSerif-TLF/b/sc
+\DeclareFontShape{T1}{LibertinusSerif-TLF}{bx}{n}{
+ <-> ssub * LibertinusSerif-TLF/b/n
+}{}
+
+\DeclareFontShape{T1}{LibertinusSerif-TLF}{bx}{scit}{
+ <-> ssub * LibertinusSerif-TLF/b/scit
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-TOsF.fd
index 7585a0b6f1b..fa8de6350a8 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerif-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T1LibertinusSerif-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for T1/LibertinusSerif-TOsF.]
+ [2024/09/22 (autoinst) Font definitions for T1/LibertinusSerif-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,163 +20,167 @@
\DeclareFontFamily{T1}{LibertinusSerif-TOsF}{}
-% ---- b = bold ----
+% ---- sb = semibold ----
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-sc-t1
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bold}{sc}{
- <-> alias * LibertinusSerif-TOsF/b/sc
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-TOsF/sb/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-t1
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bold}{n}{
- <-> alias * LibertinusSerif-TOsF/b/n
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-TOsF/sb/sc
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{b}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-sc-t1
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bold}{scit}{
- <-> alias * LibertinusSerif-TOsF/b/scit
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{semibold}{n}{
+ <-> alias * LibertinusSerif-TOsF/sb/n
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-t1
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bold}{it}{
- <-> alias * LibertinusSerif-TOsF/b/it
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{semibold}{it}{
+ <-> alias * LibertinusSerif-TOsF/sb/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{b}{sl}{
- <-> ssub * LibertinusSerif-TOsF/b/it
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/sb/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bold}{sl}{
- <-> ssub * LibertinusSerif-TOsF/bold/it
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/semibold/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{b}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/b/scit
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/sb/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bold}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/bold/scit
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/semibold/it
}{}
-% ---- m = regular ----
+% ---- b = bold ----
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-sc-t1
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{regular}{sc}{
- <-> alias * LibertinusSerif-TOsF/m/sc
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bold}{n}{
+ <-> alias * LibertinusSerif-TOsF/b/n
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-t1
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{regular}{n}{
- <-> alias * LibertinusSerif-TOsF/m/n
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bold}{sc}{
+ <-> alias * LibertinusSerif-TOsF/b/sc
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-sc-t1
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{b}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{regular}{scit}{
- <-> alias * LibertinusSerif-TOsF/m/scit
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bold}{scit}{
+ <-> alias * LibertinusSerif-TOsF/b/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-t1
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{regular}{it}{
- <-> alias * LibertinusSerif-TOsF/m/it
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bold}{it}{
+ <-> alias * LibertinusSerif-TOsF/b/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{m}{sl}{
- <-> ssub * LibertinusSerif-TOsF/m/it
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{b}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/b/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{regular}{sl}{
- <-> ssub * LibertinusSerif-TOsF/regular/it
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bold}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/bold/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{m}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/m/scit
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{b}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/b/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/regular/scit
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/bold/it
}{}
-% ---- sb = semibold ----
+% ---- m = regular ----
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-sc-t1
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{semibold}{sc}{
- <-> alias * LibertinusSerif-TOsF/sb/sc
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{regular}{it}{
+ <-> alias * LibertinusSerif-TOsF/m/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-t1
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{semibold}{n}{
- <-> alias * LibertinusSerif-TOsF/sb/n
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{regular}{sc}{
+ <-> alias * LibertinusSerif-TOsF/m/sc
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-sc-t1
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-sc-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{semibold}{scit}{
- <-> alias * LibertinusSerif-TOsF/sb/scit
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{regular}{scit}{
+ <-> alias * LibertinusSerif-TOsF/m/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-t1
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-t1
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{semibold}{it}{
- <-> alias * LibertinusSerif-TOsF/sb/it
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{regular}{n}{
+ <-> alias * LibertinusSerif-TOsF/m/n
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{sb}{sl}{
- <-> ssub * LibertinusSerif-TOsF/sb/it
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/m/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-TOsF/semibold/it
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/regular/scit
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/sb/scit
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{m}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/m/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/semibold/scit
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/regular/it
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bx}{it}{
- <-> ssub * LibertinusSerif-TOsF/b/it
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bx}{sc}{
+ <-> ssub * LibertinusSerif-TOsF/b/sc
+}{}
+
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bx}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/b/sl
}{}
\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bx}{scit}{
@@ -187,16 +191,12 @@
<-> ssub * LibertinusSerif-TOsF/b/n
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bx}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/b/scsl
-}{}
-
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bx}{sc}{
- <-> ssub * LibertinusSerif-TOsF/b/sc
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bx}{it}{
+ <-> ssub * LibertinusSerif-TOsF/b/it
}{}
-\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bx}{sl}{
- <-> ssub * LibertinusSerif-TOsF/b/sl
+\DeclareFontShape{T1}{LibertinusSerif-TOsF}{bx}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/b/scsl
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-LF.fd
deleted file mode 100644
index 4d1d656cb30..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-LF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T1LibertinusSerifDisplay-LF.fd}
- [2022/11/07 (autoinst) Font definitions for T1/LibertinusSerifDisplay-LF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T1}{LibertinusSerifDisplay-LF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T1}{LibertinusSerifDisplay-LF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-lf-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSerifDisplay-LF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-LF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-OsF.fd
deleted file mode 100644
index 4db691dfa04..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-OsF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T1LibertinusSerifDisplay-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for T1/LibertinusSerifDisplay-OsF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T1}{LibertinusSerifDisplay-OsF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T1}{LibertinusSerifDisplay-OsF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-osf-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSerifDisplay-OsF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-OsF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-Sup.fd
deleted file mode 100644
index 2e0bb89039c..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-Sup.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T1LibertinusSerifDisplay-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for T1/LibertinusSerifDisplay-Sup.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T1}{LibertinusSerifDisplay-Sup}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T1}{LibertinusSerifDisplay-Sup}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-sup-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSerifDisplay-Sup}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-Sup/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-TLF.fd
deleted file mode 100644
index 22ca1f0e29f..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-TLF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T1LibertinusSerifDisplay-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for T1/LibertinusSerifDisplay-TLF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T1}{LibertinusSerifDisplay-TLF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T1}{LibertinusSerifDisplay-TLF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-tlf-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSerifDisplay-TLF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-TLF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-TOsF.fd
deleted file mode 100644
index a311ff85802..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifDisplay-TOsF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T1LibertinusSerifDisplay-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for T1/LibertinusSerifDisplay-TOsF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T1}{LibertinusSerifDisplay-TOsF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T1}{LibertinusSerifDisplay-TOsF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-tosf-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSerifDisplay-TOsF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-TOsF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifInitials-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifInitials-TLF.fd
deleted file mode 100644
index 8af996d58af..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T1LibertinusSerifInitials-TLF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T1LibertinusSerifInitials-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for T1/LibertinusSerifInitials-TLF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifInitials@scale\endcsname\relax
- \let\LibertinusSerifInitials@@scale\@empty
-\else
- \edef\LibertinusSerifInitials@@scale{s*[\csname LibertinusSerifInitials@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T1}{LibertinusSerifInitials-TLF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T1}{LibertinusSerifInitials-TLF}{m}{n}{
- <-> \LibertinusSerifInitials@@scale LibertinusSerifInitials-Regular-tlf-t1
-}{}
-
-\DeclareFontShape{T1}{LibertinusSerifInitials-TLF}{regular}{n}{
- <-> alias * LibertinusSerifInitials-TLF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusMono-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusMono-TLF.fd
new file mode 100644
index 00000000000..2fde6e166f2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusMono-TLF.fd
@@ -0,0 +1,36 @@
+%% Generated by autoinst on 2024/09/22
+%%
+\ProvidesFile{T2ALibertinusMono-TLF.fd}
+ [2024/09/22 (autoinst) Font definitions for T2A/LibertinusMono-TLF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname LibertinusMono@scale\endcsname\relax
+ \let\LibertinusMono@@scale\@empty
+\else
+ \edef\LibertinusMono@@scale{s*[\csname LibertinusMono@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T2A}{LibertinusMono-TLF}{\hyphenchar\font=-1}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T2A}{LibertinusMono-TLF}{m}{n}{
+ <-> \LibertinusMono@@scale LibertinusMono-Regular-tlf-t2a
+}{}
+
+\DeclareFontShape{T2A}{LibertinusMono-TLF}{regular}{n}{
+ <-> alias * LibertinusMono-TLF/m/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-LF.fd
index de49abb93f5..3a7b880807f 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-LF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2ALibertinusSans-LF.fd}
- [2022/11/07 (autoinst) Font definitions for T2A/LibertinusSans-LF.]
+ [2024/09/22 (autoinst) Font definitions for T2A/LibertinusSans-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,59 +20,24 @@
\DeclareFontFamily{T2A}{LibertinusSans-LF}{}
-% ---- b = bold ----
-
-\DeclareFontShape{T2A}{LibertinusSans-LF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-lf-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-LF}{bold}{sl}{
- <-> alias * LibertinusSans-LF/b/sl
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-LF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-LF}{bold}{n}{
- <-> alias * LibertinusSans-LF/b/n
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-LF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-sc-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-LF}{bold}{sc}{
- <-> alias * LibertinusSans-LF/b/sc
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-LF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-lf-sc-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-LF}{bold}{scsl}{
- <-> alias * LibertinusSans-LF/b/scsl
-}{}
+% ---- m = regular ----
-\DeclareFontShape{T2A}{LibertinusSans-LF}{b}{it}{
- <-> ssub * LibertinusSans-LF/b/sl
+\DeclareFontShape{T2A}{LibertinusSans-LF}{m}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-lf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSans-LF}{bold}{it}{
- <-> ssub * LibertinusSans-LF/bold/sl
+\DeclareFontShape{T2A}{LibertinusSans-LF}{regular}{n}{
+ <-> alias * LibertinusSans-LF/m/n
}{}
-\DeclareFontShape{T2A}{LibertinusSans-LF}{b}{scit}{
- <-> ssub * LibertinusSans-LF/b/scsl
+\DeclareFontShape{T2A}{LibertinusSans-LF}{m}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-lf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSans-LF}{bold}{scit}{
- <-> ssub * LibertinusSans-LF/bold/scsl
+\DeclareFontShape{T2A}{LibertinusSans-LF}{regular}{sc}{
+ <-> alias * LibertinusSans-LF/m/sc
}{}
-
-% ---- m = regular ----
-
\DeclareFontShape{T2A}{LibertinusSans-LF}{m}{scit}{
<-> \LibertinusSans@@scale LibertinusSans-Italic-lf-sc-t2a
}{}
@@ -89,22 +54,6 @@
<-> alias * LibertinusSans-LF/m/it
}{}
-\DeclareFontShape{T2A}{LibertinusSans-LF}{m}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-lf-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-LF}{regular}{n}{
- <-> alias * LibertinusSans-LF/m/n
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-LF}{m}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-lf-sc-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-LF}{regular}{sc}{
- <-> alias * LibertinusSans-LF/m/sc
-}{}
-
\DeclareFontShape{T2A}{LibertinusSans-LF}{m}{scsl}{
<-> ssub * LibertinusSans-LF/m/scit
}{}
@@ -122,30 +71,33 @@
}{}
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+% ---- b = bold ----
-\DeclareFontShape{T2A}{LibertinusSans-LF}{bx}{it}{
- <-> ssub * LibertinusSans-LF/b/it
+\DeclareFontShape{T2A}{LibertinusSans-LF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSans-LF}{bx}{scsl}{
- <-> ssub * LibertinusSans-LF/b/scsl
+\DeclareFontShape{T2A}{LibertinusSans-LF}{bold}{sc}{
+ <-> alias * LibertinusSans-LF/b/sc
}{}
-\DeclareFontShape{T2A}{LibertinusSans-LF}{bx}{scit}{
- <-> ssub * LibertinusSans-LF/b/scit
+\DeclareFontShape{T2A}{LibertinusSans-LF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSans-LF}{bx}{sc}{
- <-> ssub * LibertinusSans-LF/b/sc
+\DeclareFontShape{T2A}{LibertinusSans-LF}{bold}{n}{
+ <-> alias * LibertinusSans-LF/b/n
}{}
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
\DeclareFontShape{T2A}{LibertinusSans-LF}{bx}{n}{
<-> ssub * LibertinusSans-LF/b/n
}{}
-\DeclareFontShape{T2A}{LibertinusSans-LF}{bx}{sl}{
- <-> ssub * LibertinusSans-LF/b/sl
+\DeclareFontShape{T2A}{LibertinusSans-LF}{bx}{sc}{
+ <-> ssub * LibertinusSans-LF/b/sc
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-OsF.fd
index 6ef263fc13d..187bf1a74a7 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-OsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2ALibertinusSans-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for T2A/LibertinusSans-OsF.]
+ [2024/09/22 (autoinst) Font definitions for T2A/LibertinusSans-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,6 +20,25 @@
\DeclareFontFamily{T2A}{LibertinusSans-OsF}{}
+% ---- b = bold ----
+
+\DeclareFontShape{T2A}{LibertinusSans-OsF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-sc-t2a
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSans-OsF}{bold}{sc}{
+ <-> alias * LibertinusSans-OsF/b/sc
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSans-OsF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-t2a
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSans-OsF}{bold}{n}{
+ <-> alias * LibertinusSans-OsF/b/n
+}{}
+
+
% ---- m = regular ----
\DeclareFontShape{T2A}{LibertinusSans-OsF}{m}{scit}{
@@ -30,12 +49,12 @@
<-> alias * LibertinusSans-OsF/m/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{m}{it}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-osf-t2a
+\DeclareFontShape{T2A}{LibertinusSans-OsF}{m}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-osf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{regular}{it}{
- <-> alias * LibertinusSans-OsF/m/it
+\DeclareFontShape{T2A}{LibertinusSans-OsF}{regular}{sc}{
+ <-> alias * LibertinusSans-OsF/m/sc
}{}
\DeclareFontShape{T2A}{LibertinusSans-OsF}{m}{n}{
@@ -46,12 +65,12 @@
<-> alias * LibertinusSans-OsF/m/n
}{}
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{m}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-osf-sc-t2a
+\DeclareFontShape{T2A}{LibertinusSans-OsF}{m}{it}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-osf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{regular}{sc}{
- <-> alias * LibertinusSans-OsF/m/sc
+\DeclareFontShape{T2A}{LibertinusSans-OsF}{regular}{it}{
+ <-> alias * LibertinusSans-OsF/m/it
}{}
\DeclareFontShape{T2A}{LibertinusSans-OsF}{m}{scsl}{
@@ -71,81 +90,14 @@
}{}
-% ---- b = bold ----
-
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-sc-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{bold}{sc}{
- <-> alias * LibertinusSans-OsF/b/sc
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-osf-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{bold}{sl}{
- <-> alias * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{bold}{n}{
- <-> alias * LibertinusSans-OsF/b/n
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-osf-sc-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{bold}{scsl}{
- <-> alias * LibertinusSans-OsF/b/scsl
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{b}{it}{
- <-> ssub * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{bold}{it}{
- <-> ssub * LibertinusSans-OsF/bold/sl
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{b}{scit}{
- <-> ssub * LibertinusSans-OsF/b/scsl
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{bold}{scit}{
- <-> ssub * LibertinusSans-OsF/bold/scsl
-}{}
-
-
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{bx}{scsl}{
- <-> ssub * LibertinusSans-OsF/b/scsl
+\DeclareFontShape{T2A}{LibertinusSans-OsF}{bx}{sc}{
+ <-> ssub * LibertinusSans-OsF/b/sc
}{}
\DeclareFontShape{T2A}{LibertinusSans-OsF}{bx}{n}{
<-> ssub * LibertinusSans-OsF/b/n
}{}
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{bx}{scit}{
- <-> ssub * LibertinusSans-OsF/b/scit
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{bx}{it}{
- <-> ssub * LibertinusSans-OsF/b/it
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{bx}{sl}{
- <-> ssub * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-OsF}{bx}{sc}{
- <-> ssub * LibertinusSans-OsF/b/sc
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-Sup.fd
index 55f0a6d963d..d4581fd5082 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-Sup.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-Sup.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2ALibertinusSans-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for T2A/LibertinusSans-Sup.]
+ [2024/09/22 (autoinst) Font definitions for T2A/LibertinusSans-Sup.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,35 +20,16 @@
\DeclareFontFamily{T2A}{LibertinusSans-Sup}{}
-% ---- b = bold ----
-
-\DeclareFontShape{T2A}{LibertinusSans-Sup}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-sup-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-Sup}{bold}{n}{
- <-> alias * LibertinusSans-Sup/b/n
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-Sup}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-sup-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-Sup}{bold}{sl}{
- <-> alias * LibertinusSans-Sup/b/sl
-}{}
+% ---- m = regular ----
-\DeclareFontShape{T2A}{LibertinusSans-Sup}{b}{it}{
- <-> ssub * LibertinusSans-Sup/b/sl
+\DeclareFontShape{T2A}{LibertinusSans-Sup}{m}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-sup-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSans-Sup}{bold}{it}{
- <-> ssub * LibertinusSans-Sup/bold/sl
+\DeclareFontShape{T2A}{LibertinusSans-Sup}{regular}{n}{
+ <-> alias * LibertinusSans-Sup/m/n
}{}
-
-% ---- m = regular ----
-
\DeclareFontShape{T2A}{LibertinusSans-Sup}{m}{it}{
<-> \LibertinusSans@@scale LibertinusSans-Italic-sup-t2a
}{}
@@ -57,14 +38,6 @@
<-> alias * LibertinusSans-Sup/m/it
}{}
-\DeclareFontShape{T2A}{LibertinusSans-Sup}{m}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-sup-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-Sup}{regular}{n}{
- <-> alias * LibertinusSans-Sup/m/n
-}{}
-
\DeclareFontShape{T2A}{LibertinusSans-Sup}{m}{sl}{
<-> ssub * LibertinusSans-Sup/m/it
}{}
@@ -74,18 +47,21 @@
}{}
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+% ---- b = bold ----
-\DeclareFontShape{T2A}{LibertinusSans-Sup}{bx}{n}{
- <-> ssub * LibertinusSans-Sup/b/n
+\DeclareFontShape{T2A}{LibertinusSans-Sup}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-sup-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSans-Sup}{bx}{sl}{
- <-> ssub * LibertinusSans-Sup/b/sl
+\DeclareFontShape{T2A}{LibertinusSans-Sup}{bold}{n}{
+ <-> alias * LibertinusSans-Sup/b/n
}{}
-\DeclareFontShape{T2A}{LibertinusSans-Sup}{bx}{it}{
- <-> ssub * LibertinusSans-Sup/b/it
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T2A}{LibertinusSans-Sup}{bx}{n}{
+ <-> ssub * LibertinusSans-Sup/b/n
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-TLF.fd
index 2b1da877b6f..e9a00a000f5 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2ALibertinusSans-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for T2A/LibertinusSans-TLF.]
+ [2024/09/22 (autoinst) Font definitions for T2A/LibertinusSans-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,14 +22,6 @@
% ---- b = bold ----
-\DeclareFontShape{T2A}{LibertinusSans-TLF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tlf-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TLF}{bold}{sl}{
- <-> alias * LibertinusSans-TLF/b/sl
-}{}
-
\DeclareFontShape{T2A}{LibertinusSans-TLF}{b}{n}{
<-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-t2a
}{}
@@ -46,39 +38,15 @@
<-> alias * LibertinusSans-TLF/b/sc
}{}
-\DeclareFontShape{T2A}{LibertinusSans-TLF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tlf-sc-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TLF}{bold}{scsl}{
- <-> alias * LibertinusSans-TLF/b/scsl
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TLF}{b}{it}{
- <-> ssub * LibertinusSans-TLF/b/sl
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TLF}{bold}{it}{
- <-> ssub * LibertinusSans-TLF/bold/sl
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TLF}{b}{scit}{
- <-> ssub * LibertinusSans-TLF/b/scsl
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TLF}{bold}{scit}{
- <-> ssub * LibertinusSans-TLF/bold/scsl
-}{}
-
% ---- m = regular ----
-\DeclareFontShape{T2A}{LibertinusSans-TLF}{m}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-tlf-sc-t2a
+\DeclareFontShape{T2A}{LibertinusSans-TLF}{m}{it}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-tlf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSans-TLF}{regular}{sc}{
- <-> alias * LibertinusSans-TLF/m/sc
+\DeclareFontShape{T2A}{LibertinusSans-TLF}{regular}{it}{
+ <-> alias * LibertinusSans-TLF/m/it
}{}
\DeclareFontShape{T2A}{LibertinusSans-TLF}{m}{n}{
@@ -89,14 +57,6 @@
<-> alias * LibertinusSans-TLF/m/n
}{}
-\DeclareFontShape{T2A}{LibertinusSans-TLF}{m}{it}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-tlf-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TLF}{regular}{it}{
- <-> alias * LibertinusSans-TLF/m/it
-}{}
-
\DeclareFontShape{T2A}{LibertinusSans-TLF}{m}{scit}{
<-> \LibertinusSans@@scale LibertinusSans-Italic-tlf-sc-t2a
}{}
@@ -105,6 +65,14 @@
<-> alias * LibertinusSans-TLF/m/scit
}{}
+\DeclareFontShape{T2A}{LibertinusSans-TLF}{m}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-tlf-sc-t2a
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSans-TLF}{regular}{sc}{
+ <-> alias * LibertinusSans-TLF/m/sc
+}{}
+
\DeclareFontShape{T2A}{LibertinusSans-TLF}{m}{scsl}{
<-> ssub * LibertinusSans-TLF/m/scit
}{}
@@ -124,28 +92,12 @@
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T2A}{LibertinusSans-TLF}{bx}{sl}{
- <-> ssub * LibertinusSans-TLF/b/sl
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TLF}{bx}{n}{
- <-> ssub * LibertinusSans-TLF/b/n
-}{}
-
\DeclareFontShape{T2A}{LibertinusSans-TLF}{bx}{sc}{
<-> ssub * LibertinusSans-TLF/b/sc
}{}
-\DeclareFontShape{T2A}{LibertinusSans-TLF}{bx}{scit}{
- <-> ssub * LibertinusSans-TLF/b/scit
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TLF}{bx}{scsl}{
- <-> ssub * LibertinusSans-TLF/b/scsl
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TLF}{bx}{it}{
- <-> ssub * LibertinusSans-TLF/b/it
+\DeclareFontShape{T2A}{LibertinusSans-TLF}{bx}{n}{
+ <-> ssub * LibertinusSans-TLF/b/n
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-TOsF.fd
index d482ea4a37b..c8840ac612e 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSans-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2ALibertinusSans-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for T2A/LibertinusSans-TOsF.]
+ [2024/09/22 (autoinst) Font definitions for T2A/LibertinusSans-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,14 +20,33 @@
\DeclareFontFamily{T2A}{LibertinusSans-TOsF}{}
+% ---- b = bold ----
+
+\DeclareFontShape{T2A}{LibertinusSans-TOsF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-sc-t2a
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSans-TOsF}{bold}{sc}{
+ <-> alias * LibertinusSans-TOsF/b/sc
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSans-TOsF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-t2a
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSans-TOsF}{bold}{n}{
+ <-> alias * LibertinusSans-TOsF/b/n
+}{}
+
+
% ---- m = regular ----
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{m}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-tosf-sc-t2a
+\DeclareFontShape{T2A}{LibertinusSans-TOsF}{m}{it}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-tosf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{regular}{sc}{
- <-> alias * LibertinusSans-TOsF/m/sc
+\DeclareFontShape{T2A}{LibertinusSans-TOsF}{regular}{it}{
+ <-> alias * LibertinusSans-TOsF/m/it
}{}
\DeclareFontShape{T2A}{LibertinusSans-TOsF}{m}{n}{
@@ -38,12 +57,12 @@
<-> alias * LibertinusSans-TOsF/m/n
}{}
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{m}{it}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-tosf-t2a
+\DeclareFontShape{T2A}{LibertinusSans-TOsF}{m}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-tosf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{regular}{it}{
- <-> alias * LibertinusSans-TOsF/m/it
+\DeclareFontShape{T2A}{LibertinusSans-TOsF}{regular}{sc}{
+ <-> alias * LibertinusSans-TOsF/m/sc
}{}
\DeclareFontShape{T2A}{LibertinusSans-TOsF}{m}{scit}{
@@ -71,81 +90,14 @@
}{}
-% ---- b = bold ----
-
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-sc-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{bold}{sc}{
- <-> alias * LibertinusSans-TOsF/b/sc
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{bold}{n}{
- <-> alias * LibertinusSans-TOsF/b/n
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tosf-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{bold}{sl}{
- <-> alias * LibertinusSans-TOsF/b/sl
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tosf-sc-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{bold}{scsl}{
- <-> alias * LibertinusSans-TOsF/b/scsl
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{b}{it}{
- <-> ssub * LibertinusSans-TOsF/b/sl
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{bold}{it}{
- <-> ssub * LibertinusSans-TOsF/bold/sl
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{b}{scit}{
- <-> ssub * LibertinusSans-TOsF/b/scsl
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{bold}{scit}{
- <-> ssub * LibertinusSans-TOsF/bold/scsl
-}{}
-
-
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{bx}{scsl}{
- <-> ssub * LibertinusSans-TOsF/b/scsl
-}{}
-
\DeclareFontShape{T2A}{LibertinusSans-TOsF}{bx}{n}{
<-> ssub * LibertinusSans-TOsF/b/n
}{}
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{bx}{it}{
- <-> ssub * LibertinusSans-TOsF/b/it
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{bx}{scit}{
- <-> ssub * LibertinusSans-TOsF/b/scit
-}{}
-
\DeclareFontShape{T2A}{LibertinusSans-TOsF}{bx}{sc}{
<-> ssub * LibertinusSans-TOsF/b/sc
}{}
-\DeclareFontShape{T2A}{LibertinusSans-TOsF}{bx}{sl}{
- <-> ssub * LibertinusSans-TOsF/b/sl
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-LF.fd
index f8f12574c19..804ae028ab4 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-LF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2ALibertinusSerif-LF.fd}
- [2022/11/07 (autoinst) Font definitions for T2A/LibertinusSerif-LF.]
+ [2024/09/22 (autoinst) Font definitions for T2A/LibertinusSerif-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,20 +22,20 @@
% ---- b = bold ----
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-sc-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{b}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{bold}{sc}{
- <-> alias * LibertinusSerif-LF/b/sc
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{bold}{scit}{
+ <-> alias * LibertinusSerif-LF/b/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{bold}{it}{
- <-> alias * LibertinusSerif-LF/b/it
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{bold}{sc}{
+ <-> alias * LibertinusSerif-LF/b/sc
}{}
\DeclareFontShape{T2A}{LibertinusSerif-LF}{b}{n}{
@@ -46,20 +46,12 @@
<-> alias * LibertinusSerif-LF/b/n
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{b}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-sc-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{bold}{scit}{
- <-> alias * LibertinusSerif-LF/b/scit
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{b}{sl}{
- <-> ssub * LibertinusSerif-LF/b/it
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{bold}{sl}{
- <-> ssub * LibertinusSerif-LF/bold/it
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{bold}{it}{
+ <-> alias * LibertinusSerif-LF/b/it
}{}
\DeclareFontShape{T2A}{LibertinusSerif-LF}{b}{scsl}{
@@ -70,106 +62,114 @@
<-> ssub * LibertinusSerif-LF/bold/scit
}{}
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{b}{sl}{
+ <-> ssub * LibertinusSerif-LF/b/it
+}{}
-% ---- m = regular ----
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-LF/bold/it
+}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-sc-t2a
+
+% ---- sb = semibold ----
+
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{regular}{sc}{
- <-> alias * LibertinusSerif-LF/m/sc
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{semibold}{n}{
+ <-> alias * LibertinusSerif-LF/sb/n
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{regular}{it}{
- <-> alias * LibertinusSerif-LF/m/it
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-LF/sb/sc
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-sc-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{regular}{scit}{
- <-> alias * LibertinusSerif-LF/m/scit
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-LF/sb/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{regular}{n}{
- <-> alias * LibertinusSerif-LF/m/n
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{semibold}{it}{
+ <-> alias * LibertinusSerif-LF/sb/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{m}{sl}{
- <-> ssub * LibertinusSerif-LF/m/it
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-LF/sb/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{regular}{sl}{
- <-> ssub * LibertinusSerif-LF/regular/it
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-LF/semibold/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{m}{scsl}{
- <-> ssub * LibertinusSerif-LF/m/scit
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-LF/sb/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-LF/regular/scit
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-LF/semibold/it
}{}
-% ---- sb = semibold ----
+% ---- m = regular ----
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-sc-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{semibold}{sc}{
- <-> alias * LibertinusSerif-LF/sb/sc
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{regular}{sc}{
+ <-> alias * LibertinusSerif-LF/m/sc
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{semibold}{it}{
- <-> alias * LibertinusSerif-LF/sb/it
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{regular}{scit}{
+ <-> alias * LibertinusSerif-LF/m/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-sc-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{semibold}{scit}{
- <-> alias * LibertinusSerif-LF/sb/scit
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{regular}{n}{
+ <-> alias * LibertinusSerif-LF/m/n
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{semibold}{n}{
- <-> alias * LibertinusSerif-LF/sb/n
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{regular}{it}{
+ <-> alias * LibertinusSerif-LF/m/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{sb}{sl}{
- <-> ssub * LibertinusSerif-LF/sb/it
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-LF/m/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-LF/semibold/it
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-LF/regular/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-LF/sb/scit
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{m}{sl}{
+ <-> ssub * LibertinusSerif-LF/m/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-LF/semibold/scit
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-LF/regular/it
}{}
@@ -179,24 +179,24 @@
<-> ssub * LibertinusSerif-LF/b/n
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{bx}{sc}{
- <-> ssub * LibertinusSerif-LF/b/sc
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{bx}{scit}{
+ <-> ssub * LibertinusSerif-LF/b/scit
}{}
\DeclareFontShape{T2A}{LibertinusSerif-LF}{bx}{sl}{
<-> ssub * LibertinusSerif-LF/b/sl
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{bx}{scit}{
- <-> ssub * LibertinusSerif-LF/b/scit
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerif-LF}{bx}{it}{
- <-> ssub * LibertinusSerif-LF/b/it
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{bx}{sc}{
+ <-> ssub * LibertinusSerif-LF/b/sc
}{}
\DeclareFontShape{T2A}{LibertinusSerif-LF}{bx}{scsl}{
<-> ssub * LibertinusSerif-LF/b/scsl
}{}
+\DeclareFontShape{T2A}{LibertinusSerif-LF}{bx}{it}{
+ <-> ssub * LibertinusSerif-LF/b/it
+}{}
+
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-OsF.fd
index 5654bcd2d5d..544e0425279 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-OsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2ALibertinusSerif-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for T2A/LibertinusSerif-OsF.]
+ [2024/09/22 (autoinst) Font definitions for T2A/LibertinusSerif-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,179 +20,179 @@
\DeclareFontFamily{T2A}{LibertinusSerif-OsF}{}
-% ---- sb = semibold ----
+% ---- b = bold ----
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{semibold}{it}{
- <-> alias * LibertinusSerif-OsF/sb/it
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bold}{it}{
+ <-> alias * LibertinusSerif-OsF/b/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-sc-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{semibold}{scit}{
- <-> alias * LibertinusSerif-OsF/sb/scit
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bold}{n}{
+ <-> alias * LibertinusSerif-OsF/b/n
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{b}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{semibold}{n}{
- <-> alias * LibertinusSerif-OsF/sb/n
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bold}{scit}{
+ <-> alias * LibertinusSerif-OsF/b/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-sc-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{semibold}{sc}{
- <-> alias * LibertinusSerif-OsF/sb/sc
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bold}{sc}{
+ <-> alias * LibertinusSerif-OsF/b/sc
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{sb}{sl}{
- <-> ssub * LibertinusSerif-OsF/sb/it
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{b}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/b/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-OsF/semibold/it
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bold}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/bold/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-OsF/sb/scit
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{b}{sl}{
+ <-> ssub * LibertinusSerif-OsF/b/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-OsF/semibold/scit
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-OsF/bold/it
}{}
-% ---- m = regular ----
+% ---- sb = semibold ----
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-sc-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{regular}{scit}{
- <-> alias * LibertinusSerif-OsF/m/scit
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{semibold}{it}{
+ <-> alias * LibertinusSerif-OsF/sb/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{regular}{n}{
- <-> alias * LibertinusSerif-OsF/m/n
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{semibold}{n}{
+ <-> alias * LibertinusSerif-OsF/sb/n
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{regular}{it}{
- <-> alias * LibertinusSerif-OsF/m/it
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-OsF/sb/sc
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-sc-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{regular}{sc}{
- <-> alias * LibertinusSerif-OsF/m/sc
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-OsF/sb/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{m}{sl}{
- <-> ssub * LibertinusSerif-OsF/m/it
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/sb/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{regular}{sl}{
- <-> ssub * LibertinusSerif-OsF/regular/it
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/semibold/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{m}{scsl}{
- <-> ssub * LibertinusSerif-OsF/m/scit
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-OsF/sb/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-OsF/regular/scit
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-OsF/semibold/it
}{}
-% ---- b = bold ----
+% ---- m = regular ----
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-sc-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bold}{sc}{
- <-> alias * LibertinusSerif-OsF/b/sc
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{regular}{scit}{
+ <-> alias * LibertinusSerif-OsF/m/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bold}{n}{
- <-> alias * LibertinusSerif-OsF/b/n
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{regular}{sc}{
+ <-> alias * LibertinusSerif-OsF/m/sc
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{b}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-sc-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bold}{scit}{
- <-> alias * LibertinusSerif-OsF/b/scit
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{regular}{n}{
+ <-> alias * LibertinusSerif-OsF/m/n
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bold}{it}{
- <-> alias * LibertinusSerif-OsF/b/it
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{regular}{it}{
+ <-> alias * LibertinusSerif-OsF/m/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{b}{sl}{
- <-> ssub * LibertinusSerif-OsF/b/it
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/m/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bold}{sl}{
- <-> ssub * LibertinusSerif-OsF/bold/it
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/regular/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{b}{scsl}{
- <-> ssub * LibertinusSerif-OsF/b/scit
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{m}{sl}{
+ <-> ssub * LibertinusSerif-OsF/m/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bold}{scsl}{
- <-> ssub * LibertinusSerif-OsF/bold/scit
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-OsF/regular/it
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bx}{scsl}{
- <-> ssub * LibertinusSerif-OsF/b/scsl
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bx}{n}{
+ <-> ssub * LibertinusSerif-OsF/b/n
}{}
\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bx}{sl}{
<-> ssub * LibertinusSerif-OsF/b/sl
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bx}{sc}{
- <-> ssub * LibertinusSerif-OsF/b/sc
-}{}
-
\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bx}{scit}{
<-> ssub * LibertinusSerif-OsF/b/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bx}{n}{
- <-> ssub * LibertinusSerif-OsF/b/n
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bx}{sc}{
+ <-> ssub * LibertinusSerif-OsF/b/sc
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bx}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/b/scsl
}{}
\DeclareFontShape{T2A}{LibertinusSerif-OsF}{bx}{it}{
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-Sup.fd
index ede58c58bb5..5c11bf7bca5 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-Sup.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-Sup.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2ALibertinusSerif-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for T2A/LibertinusSerif-Sup.]
+ [2024/09/22 (autoinst) Font definitions for T2A/LibertinusSerif-Sup.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,33 +20,6 @@
\DeclareFontFamily{T2A}{LibertinusSerif-Sup}{}
-% ---- m = regular ----
-
-\DeclareFontShape{T2A}{LibertinusSerif-Sup}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-sup-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerif-Sup}{regular}{n}{
- <-> alias * LibertinusSerif-Sup/m/n
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerif-Sup}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-sup-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerif-Sup}{regular}{it}{
- <-> alias * LibertinusSerif-Sup/m/it
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerif-Sup}{m}{sl}{
- <-> ssub * LibertinusSerif-Sup/m/it
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerif-Sup}{regular}{sl}{
- <-> ssub * LibertinusSerif-Sup/regular/it
-}{}
-
-
% ---- b = bold ----
\DeclareFontShape{T2A}{LibertinusSerif-Sup}{b}{it}{
@@ -76,14 +49,6 @@
% ---- sb = semibold ----
-\DeclareFontShape{T2A}{LibertinusSerif-Sup}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-sup-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerif-Sup}{semibold}{n}{
- <-> alias * LibertinusSerif-Sup/sb/n
-}{}
-
\DeclareFontShape{T2A}{LibertinusSerif-Sup}{sb}{it}{
<-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-sup-t2a
}{}
@@ -92,6 +57,14 @@
<-> alias * LibertinusSerif-Sup/sb/it
}{}
+\DeclareFontShape{T2A}{LibertinusSerif-Sup}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-sup-t2a
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-Sup}{semibold}{n}{
+ <-> alias * LibertinusSerif-Sup/sb/n
+}{}
+
\DeclareFontShape{T2A}{LibertinusSerif-Sup}{sb}{sl}{
<-> ssub * LibertinusSerif-Sup/sb/it
}{}
@@ -101,12 +74,35 @@
}{}
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+% ---- m = regular ----
-\DeclareFontShape{T2A}{LibertinusSerif-Sup}{bx}{it}{
- <-> ssub * LibertinusSerif-Sup/b/it
+\DeclareFontShape{T2A}{LibertinusSerif-Sup}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-sup-t2a
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-Sup}{regular}{it}{
+ <-> alias * LibertinusSerif-Sup/m/it
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-Sup}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-sup-t2a
}{}
+\DeclareFontShape{T2A}{LibertinusSerif-Sup}{regular}{n}{
+ <-> alias * LibertinusSerif-Sup/m/n
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-Sup}{m}{sl}{
+ <-> ssub * LibertinusSerif-Sup/m/it
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-Sup}{regular}{sl}{
+ <-> ssub * LibertinusSerif-Sup/regular/it
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
\DeclareFontShape{T2A}{LibertinusSerif-Sup}{bx}{n}{
<-> ssub * LibertinusSerif-Sup/b/n
}{}
@@ -115,4 +111,8 @@
<-> ssub * LibertinusSerif-Sup/b/sl
}{}
+\DeclareFontShape{T2A}{LibertinusSerif-Sup}{bx}{it}{
+ <-> ssub * LibertinusSerif-Sup/b/it
+}{}
+
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-TLF.fd
index d91cdfc37f6..c6aa91ec91e 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2ALibertinusSerif-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for T2A/LibertinusSerif-TLF.]
+ [2024/09/22 (autoinst) Font definitions for T2A/LibertinusSerif-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,6 +20,57 @@
\DeclareFontFamily{T2A}{LibertinusSerif-TLF}{}
+% ---- sb = semibold ----
+
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-sc-t2a
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-TLF/sb/sc
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-sc-t2a
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-TLF/sb/scit
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-t2a
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{semibold}{n}{
+ <-> alias * LibertinusSerif-TLF/sb/n
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-t2a
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{semibold}{it}{
+ <-> alias * LibertinusSerif-TLF/sb/it
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/sb/scit
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/semibold/scit
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-TLF/sb/it
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-TLF/semibold/it
+}{}
+
+
% ---- b = bold ----
\DeclareFontShape{T2A}{LibertinusSerif-TLF}{b}{scit}{
@@ -30,6 +81,14 @@
<-> alias * LibertinusSerif-TLF/b/scit
}{}
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-sc-t2a
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{bold}{sc}{
+ <-> alias * LibertinusSerif-TLF/b/sc
+}{}
+
\DeclareFontShape{T2A}{LibertinusSerif-TLF}{b}{n}{
<-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-t2a
}{}
@@ -46,12 +105,12 @@
<-> alias * LibertinusSerif-TLF/b/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-sc-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{b}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/b/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{bold}{sc}{
- <-> alias * LibertinusSerif-TLF/b/sc
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{bold}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/bold/scit
}{}
\DeclareFontShape{T2A}{LibertinusSerif-TLF}{b}{sl}{
@@ -62,14 +121,6 @@
<-> ssub * LibertinusSerif-TLF/bold/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{b}{scsl}{
- <-> ssub * LibertinusSerif-TLF/b/scit
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{bold}{scsl}{
- <-> ssub * LibertinusSerif-TLF/bold/scit
-}{}
-
% ---- m = regular ----
@@ -89,14 +140,6 @@
<-> alias * LibertinusSerif-TLF/m/n
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-sc-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{regular}{scit}{
- <-> alias * LibertinusSerif-TLF/m/scit
-}{}
-
\DeclareFontShape{T2A}{LibertinusSerif-TLF}{m}{sc}{
<-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-sc-t2a
}{}
@@ -105,12 +148,12 @@
<-> alias * LibertinusSerif-TLF/m/sc
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{m}{sl}{
- <-> ssub * LibertinusSerif-TLF/m/it
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{regular}{sl}{
- <-> ssub * LibertinusSerif-TLF/regular/it
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{regular}{scit}{
+ <-> alias * LibertinusSerif-TLF/m/scit
}{}
\DeclareFontShape{T2A}{LibertinusSerif-TLF}{m}{scsl}{
@@ -121,62 +164,31 @@
<-> ssub * LibertinusSerif-TLF/regular/scit
}{}
-
-% ---- sb = semibold ----
-
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-sc-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{semibold}{sc}{
- <-> alias * LibertinusSerif-TLF/sb/sc
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{semibold}{it}{
- <-> alias * LibertinusSerif-TLF/sb/it
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-sc-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{semibold}{scit}{
- <-> alias * LibertinusSerif-TLF/sb/scit
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{m}{sl}{
+ <-> ssub * LibertinusSerif-TLF/m/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-TLF/regular/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{semibold}{n}{
- <-> alias * LibertinusSerif-TLF/sb/n
-}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{sb}{sl}{
- <-> ssub * LibertinusSerif-TLF/sb/it
-}{}
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-TLF/semibold/it
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{bx}{it}{
+ <-> ssub * LibertinusSerif-TLF/b/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-TLF/sb/scit
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{bx}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/b/scsl
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-TLF/semibold/scit
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{bx}{scit}{
+ <-> ssub * LibertinusSerif-TLF/b/scit
}{}
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{bx}{scsl}{
- <-> ssub * LibertinusSerif-TLF/b/scsl
+\DeclareFontShape{T2A}{LibertinusSerif-TLF}{bx}{n}{
+ <-> ssub * LibertinusSerif-TLF/b/n
}{}
\DeclareFontShape{T2A}{LibertinusSerif-TLF}{bx}{sc}{
@@ -187,16 +199,4 @@
<-> ssub * LibertinusSerif-TLF/b/sl
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{bx}{it}{
- <-> ssub * LibertinusSerif-TLF/b/it
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{bx}{scit}{
- <-> ssub * LibertinusSerif-TLF/b/scit
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerif-TLF}{bx}{n}{
- <-> ssub * LibertinusSerif-TLF/b/n
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-TOsF.fd
index dee7c2f94fc..d9dff0ab5fe 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerif-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2ALibertinusSerif-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for T2A/LibertinusSerif-TOsF.]
+ [2024/09/22 (autoinst) Font definitions for T2A/LibertinusSerif-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,105 +20,105 @@
\DeclareFontFamily{T2A}{LibertinusSerif-TOsF}{}
-% ---- sb = semibold ----
+% ---- b = bold ----
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-sc-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{semibold}{sc}{
- <-> alias * LibertinusSerif-TOsF/sb/sc
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bold}{it}{
+ <-> alias * LibertinusSerif-TOsF/b/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-sc-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{b}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{semibold}{scit}{
- <-> alias * LibertinusSerif-TOsF/sb/scit
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bold}{scit}{
+ <-> alias * LibertinusSerif-TOsF/b/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{semibold}{n}{
- <-> alias * LibertinusSerif-TOsF/sb/n
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bold}{sc}{
+ <-> alias * LibertinusSerif-TOsF/b/sc
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{semibold}{it}{
- <-> alias * LibertinusSerif-TOsF/sb/it
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bold}{n}{
+ <-> alias * LibertinusSerif-TOsF/b/n
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{sb}{sl}{
- <-> ssub * LibertinusSerif-TOsF/sb/it
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{b}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/b/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-TOsF/semibold/it
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bold}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/bold/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/sb/scit
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{b}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/b/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/semibold/scit
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/bold/it
}{}
-% ---- b = bold ----
+% ---- sb = semibold ----
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-sc-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bold}{sc}{
- <-> alias * LibertinusSerif-TOsF/b/sc
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{semibold}{n}{
+ <-> alias * LibertinusSerif-TOsF/sb/n
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{b}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-sc-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bold}{scit}{
- <-> alias * LibertinusSerif-TOsF/b/scit
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-TOsF/sb/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-sc-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bold}{n}{
- <-> alias * LibertinusSerif-TOsF/b/n
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-TOsF/sb/sc
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bold}{it}{
- <-> alias * LibertinusSerif-TOsF/b/it
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{semibold}{it}{
+ <-> alias * LibertinusSerif-TOsF/sb/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{b}{sl}{
- <-> ssub * LibertinusSerif-TOsF/b/it
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/sb/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bold}{sl}{
- <-> ssub * LibertinusSerif-TOsF/bold/it
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/semibold/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{b}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/b/scit
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/sb/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bold}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/bold/scit
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/semibold/it
}{}
@@ -132,14 +132,6 @@
<-> alias * LibertinusSerif-TOsF/m/sc
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{regular}{n}{
- <-> alias * LibertinusSerif-TOsF/m/n
-}{}
-
\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{m}{scit}{
<-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-sc-t2a
}{}
@@ -148,20 +140,20 @@
<-> alias * LibertinusSerif-TOsF/m/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-t2a
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{regular}{it}{
- <-> alias * LibertinusSerif-TOsF/m/it
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{regular}{n}{
+ <-> alias * LibertinusSerif-TOsF/m/n
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{m}{sl}{
- <-> ssub * LibertinusSerif-TOsF/m/it
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-t2a
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{regular}{sl}{
- <-> ssub * LibertinusSerif-TOsF/regular/it
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{regular}{it}{
+ <-> alias * LibertinusSerif-TOsF/m/it
}{}
\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{m}{scsl}{
@@ -172,31 +164,39 @@
<-> ssub * LibertinusSerif-TOsF/regular/scit
}{}
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bx}{n}{
- <-> ssub * LibertinusSerif-TOsF/b/n
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{m}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/m/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bx}{sl}{
- <-> ssub * LibertinusSerif-TOsF/b/sl
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/regular/it
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bx}{sc}{
- <-> ssub * LibertinusSerif-TOsF/b/sc
-}{}
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bx}{it}{
<-> ssub * LibertinusSerif-TOsF/b/it
}{}
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bx}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/b/scsl
+}{}
+
\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bx}{scit}{
<-> ssub * LibertinusSerif-TOsF/b/scit
}{}
-\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bx}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/b/scsl
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bx}{n}{
+ <-> ssub * LibertinusSerif-TOsF/b/n
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bx}{sc}{
+ <-> ssub * LibertinusSerif-TOsF/b/sc
+}{}
+
+\DeclareFontShape{T2A}{LibertinusSerif-TOsF}{bx}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/b/sl
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-LF.fd
deleted file mode 100644
index 9d4efd426af..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-LF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T2ALibertinusSerifDisplay-LF.fd}
- [2022/11/07 (autoinst) Font definitions for T2A/LibertinusSerifDisplay-LF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T2A}{LibertinusSerifDisplay-LF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T2A}{LibertinusSerifDisplay-LF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-lf-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerifDisplay-LF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-LF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-OsF.fd
deleted file mode 100644
index 952f2bdb851..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-OsF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T2ALibertinusSerifDisplay-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for T2A/LibertinusSerifDisplay-OsF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T2A}{LibertinusSerifDisplay-OsF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T2A}{LibertinusSerifDisplay-OsF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-osf-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerifDisplay-OsF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-OsF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-Sup.fd
deleted file mode 100644
index cef64ce7771..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-Sup.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T2ALibertinusSerifDisplay-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for T2A/LibertinusSerifDisplay-Sup.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T2A}{LibertinusSerifDisplay-Sup}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T2A}{LibertinusSerifDisplay-Sup}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-sup-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerifDisplay-Sup}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-Sup/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-TLF.fd
deleted file mode 100644
index 900213e7942..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-TLF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T2ALibertinusSerifDisplay-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for T2A/LibertinusSerifDisplay-TLF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T2A}{LibertinusSerifDisplay-TLF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T2A}{LibertinusSerifDisplay-TLF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-tlf-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerifDisplay-TLF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-TLF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-TOsF.fd
deleted file mode 100644
index 7bdac3ddbf5..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifDisplay-TOsF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T2ALibertinusSerifDisplay-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for T2A/LibertinusSerifDisplay-TOsF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T2A}{LibertinusSerifDisplay-TOsF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T2A}{LibertinusSerifDisplay-TOsF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-tosf-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerifDisplay-TOsF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-TOsF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifInitials-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifInitials-TLF.fd
deleted file mode 100644
index def3d5dcba5..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2ALibertinusSerifInitials-TLF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T2ALibertinusSerifInitials-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for T2A/LibertinusSerifInitials-TLF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifInitials@scale\endcsname\relax
- \let\LibertinusSerifInitials@@scale\@empty
-\else
- \edef\LibertinusSerifInitials@@scale{s*[\csname LibertinusSerifInitials@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T2A}{LibertinusSerifInitials-TLF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T2A}{LibertinusSerifInitials-TLF}{m}{n}{
- <-> \LibertinusSerifInitials@@scale LibertinusSerifInitials-Regular-tlf-t2a
-}{}
-
-\DeclareFontShape{T2A}{LibertinusSerifInitials-TLF}{regular}{n}{
- <-> alias * LibertinusSerifInitials-TLF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusMono-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusMono-TLF.fd
new file mode 100644
index 00000000000..0d945da3ba5
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusMono-TLF.fd
@@ -0,0 +1,36 @@
+%% Generated by autoinst on 2024/09/22
+%%
+\ProvidesFile{T2BLibertinusMono-TLF.fd}
+ [2024/09/22 (autoinst) Font definitions for T2B/LibertinusMono-TLF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname LibertinusMono@scale\endcsname\relax
+ \let\LibertinusMono@@scale\@empty
+\else
+ \edef\LibertinusMono@@scale{s*[\csname LibertinusMono@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T2B}{LibertinusMono-TLF}{\hyphenchar\font=-1}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T2B}{LibertinusMono-TLF}{m}{n}{
+ <-> \LibertinusMono@@scale LibertinusMono-Regular-tlf-t2b
+}{}
+
+\DeclareFontShape{T2B}{LibertinusMono-TLF}{regular}{n}{
+ <-> alias * LibertinusMono-TLF/m/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-LF.fd
index c165c2ede19..63bdb754ead 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-LF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2BLibertinusSans-LF.fd}
- [2022/11/07 (autoinst) Font definitions for T2B/LibertinusSans-LF.]
+ [2024/09/22 (autoinst) Font definitions for T2B/LibertinusSans-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,20 +22,12 @@
% ---- m = regular ----
-\DeclareFontShape{T2B}{LibertinusSans-LF}{m}{it}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-lf-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-LF}{regular}{it}{
- <-> alias * LibertinusSans-LF/m/it
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-LF}{m}{scit}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-lf-sc-t2b
+\DeclareFontShape{T2B}{LibertinusSans-LF}{m}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-lf-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSans-LF}{regular}{scit}{
- <-> alias * LibertinusSans-LF/m/scit
+\DeclareFontShape{T2B}{LibertinusSans-LF}{regular}{n}{
+ <-> alias * LibertinusSans-LF/m/n
}{}
\DeclareFontShape{T2B}{LibertinusSans-LF}{m}{sc}{
@@ -46,12 +38,20 @@
<-> alias * LibertinusSans-LF/m/sc
}{}
-\DeclareFontShape{T2B}{LibertinusSans-LF}{m}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-lf-t2b
+\DeclareFontShape{T2B}{LibertinusSans-LF}{m}{scit}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-lf-sc-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSans-LF}{regular}{n}{
- <-> alias * LibertinusSans-LF/m/n
+\DeclareFontShape{T2B}{LibertinusSans-LF}{regular}{scit}{
+ <-> alias * LibertinusSans-LF/m/scit
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSans-LF}{m}{it}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-lf-t2b
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSans-LF}{regular}{it}{
+ <-> alias * LibertinusSans-LF/m/it
}{}
\DeclareFontShape{T2B}{LibertinusSans-LF}{m}{scsl}{
@@ -73,22 +73,6 @@
% ---- b = bold ----
-\DeclareFontShape{T2B}{LibertinusSans-LF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-sc-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-LF}{bold}{sc}{
- <-> alias * LibertinusSans-LF/b/sc
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-LF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-lf-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-LF}{bold}{sl}{
- <-> alias * LibertinusSans-LF/b/sl
-}{}
-
\DeclareFontShape{T2B}{LibertinusSans-LF}{b}{n}{
<-> \LibertinusSans@@scale LibertinusSans-Bold-lf-t2b
}{}
@@ -97,55 +81,23 @@
<-> alias * LibertinusSans-LF/b/n
}{}
-\DeclareFontShape{T2B}{LibertinusSans-LF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-lf-sc-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-LF}{bold}{scsl}{
- <-> alias * LibertinusSans-LF/b/scsl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-LF}{b}{it}{
- <-> ssub * LibertinusSans-LF/b/sl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-LF}{bold}{it}{
- <-> ssub * LibertinusSans-LF/bold/sl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-LF}{b}{scit}{
- <-> ssub * LibertinusSans-LF/b/scsl
+\DeclareFontShape{T2B}{LibertinusSans-LF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-sc-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSans-LF}{bold}{scit}{
- <-> ssub * LibertinusSans-LF/bold/scsl
+\DeclareFontShape{T2B}{LibertinusSans-LF}{bold}{sc}{
+ <-> alias * LibertinusSans-LF/b/sc
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T2B}{LibertinusSans-LF}{bx}{scsl}{
- <-> ssub * LibertinusSans-LF/b/scsl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-LF}{bx}{it}{
- <-> ssub * LibertinusSans-LF/b/it
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-LF}{bx}{scit}{
- <-> ssub * LibertinusSans-LF/b/scit
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-LF}{bx}{sc}{
- <-> ssub * LibertinusSans-LF/b/sc
-}{}
-
\DeclareFontShape{T2B}{LibertinusSans-LF}{bx}{n}{
<-> ssub * LibertinusSans-LF/b/n
}{}
-\DeclareFontShape{T2B}{LibertinusSans-LF}{bx}{sl}{
- <-> ssub * LibertinusSans-LF/b/sl
+\DeclareFontShape{T2B}{LibertinusSans-LF}{bx}{sc}{
+ <-> ssub * LibertinusSans-LF/b/sc
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-OsF.fd
index 39f6795c73c..1bdce9e21a6 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-OsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2BLibertinusSans-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for T2B/LibertinusSans-OsF.]
+ [2024/09/22 (autoinst) Font definitions for T2B/LibertinusSans-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,16 +20,27 @@
\DeclareFontFamily{T2B}{LibertinusSans-OsF}{}
-% ---- m = regular ----
+% ---- b = bold ----
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{m}{scit}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-osf-sc-t2b
+\DeclareFontShape{T2B}{LibertinusSans-OsF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{regular}{scit}{
- <-> alias * LibertinusSans-OsF/m/scit
+\DeclareFontShape{T2B}{LibertinusSans-OsF}{bold}{n}{
+ <-> alias * LibertinusSans-OsF/b/n
}{}
+\DeclareFontShape{T2B}{LibertinusSans-OsF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-sc-t2b
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSans-OsF}{bold}{sc}{
+ <-> alias * LibertinusSans-OsF/b/sc
+}{}
+
+
+% ---- m = regular ----
+
\DeclareFontShape{T2B}{LibertinusSans-OsF}{m}{it}{
<-> \LibertinusSans@@scale LibertinusSans-Italic-osf-t2b
}{}
@@ -38,12 +49,12 @@
<-> alias * LibertinusSans-OsF/m/it
}{}
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{m}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-osf-t2b
+\DeclareFontShape{T2B}{LibertinusSans-OsF}{m}{scit}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-osf-sc-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{regular}{n}{
- <-> alias * LibertinusSans-OsF/m/n
+\DeclareFontShape{T2B}{LibertinusSans-OsF}{regular}{scit}{
+ <-> alias * LibertinusSans-OsF/m/scit
}{}
\DeclareFontShape{T2B}{LibertinusSans-OsF}{m}{sc}{
@@ -54,6 +65,14 @@
<-> alias * LibertinusSans-OsF/m/sc
}{}
+\DeclareFontShape{T2B}{LibertinusSans-OsF}{m}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-osf-t2b
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSans-OsF}{regular}{n}{
+ <-> alias * LibertinusSans-OsF/m/n
+}{}
+
\DeclareFontShape{T2B}{LibertinusSans-OsF}{m}{scsl}{
<-> ssub * LibertinusSans-OsF/m/scit
}{}
@@ -71,79 +90,12 @@
}{}
-% ---- b = bold ----
-
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{bold}{n}{
- <-> alias * LibertinusSans-OsF/b/n
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-osf-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{bold}{sl}{
- <-> alias * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-sc-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{bold}{sc}{
- <-> alias * LibertinusSans-OsF/b/sc
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-osf-sc-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{bold}{scsl}{
- <-> alias * LibertinusSans-OsF/b/scsl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{b}{it}{
- <-> ssub * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{bold}{it}{
- <-> ssub * LibertinusSans-OsF/bold/sl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{b}{scit}{
- <-> ssub * LibertinusSans-OsF/b/scsl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{bold}{scit}{
- <-> ssub * LibertinusSans-OsF/bold/scsl
-}{}
-
-
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{bx}{it}{
- <-> ssub * LibertinusSans-OsF/b/it
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{bx}{scit}{
- <-> ssub * LibertinusSans-OsF/b/scit
-}{}
-
\DeclareFontShape{T2B}{LibertinusSans-OsF}{bx}{sc}{
<-> ssub * LibertinusSans-OsF/b/sc
}{}
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{bx}{sl}{
- <-> ssub * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-OsF}{bx}{scsl}{
- <-> ssub * LibertinusSans-OsF/b/scsl
-}{}
-
\DeclareFontShape{T2B}{LibertinusSans-OsF}{bx}{n}{
<-> ssub * LibertinusSans-OsF/b/n
}{}
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-Sup.fd
index a557da421fe..c1e39348775 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-Sup.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-Sup.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2BLibertinusSans-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for T2B/LibertinusSans-Sup.]
+ [2024/09/22 (autoinst) Font definitions for T2B/LibertinusSans-Sup.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -30,22 +30,6 @@
<-> alias * LibertinusSans-Sup/b/n
}{}
-\DeclareFontShape{T2B}{LibertinusSans-Sup}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-sup-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-Sup}{bold}{sl}{
- <-> alias * LibertinusSans-Sup/b/sl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-Sup}{b}{it}{
- <-> ssub * LibertinusSans-Sup/b/sl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-Sup}{bold}{it}{
- <-> ssub * LibertinusSans-Sup/bold/sl
-}{}
-
% ---- m = regular ----
@@ -76,16 +60,8 @@
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T2B}{LibertinusSans-Sup}{bx}{sl}{
- <-> ssub * LibertinusSans-Sup/b/sl
-}{}
-
\DeclareFontShape{T2B}{LibertinusSans-Sup}{bx}{n}{
<-> ssub * LibertinusSans-Sup/b/n
}{}
-\DeclareFontShape{T2B}{LibertinusSans-Sup}{bx}{it}{
- <-> ssub * LibertinusSans-Sup/b/it
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-TLF.fd
index bd99d4415bc..7ea2eece959 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2BLibertinusSans-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for T2B/LibertinusSans-TLF.]
+ [2024/09/22 (autoinst) Font definitions for T2B/LibertinusSans-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,65 +20,14 @@
\DeclareFontFamily{T2B}{LibertinusSans-TLF}{}
-% ---- b = bold ----
-
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{bold}{n}{
- <-> alias * LibertinusSans-TLF/b/n
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tlf-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{bold}{sl}{
- <-> alias * LibertinusSans-TLF/b/sl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-sc-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{bold}{sc}{
- <-> alias * LibertinusSans-TLF/b/sc
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tlf-sc-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{bold}{scsl}{
- <-> alias * LibertinusSans-TLF/b/scsl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{b}{it}{
- <-> ssub * LibertinusSans-TLF/b/sl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{bold}{it}{
- <-> ssub * LibertinusSans-TLF/bold/sl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{b}{scit}{
- <-> ssub * LibertinusSans-TLF/b/scsl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{bold}{scit}{
- <-> ssub * LibertinusSans-TLF/bold/scsl
-}{}
-
-
% ---- m = regular ----
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{m}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-tlf-t2b
+\DeclareFontShape{T2B}{LibertinusSans-TLF}{m}{scit}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-tlf-sc-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{regular}{n}{
- <-> alias * LibertinusSans-TLF/m/n
+\DeclareFontShape{T2B}{LibertinusSans-TLF}{regular}{scit}{
+ <-> alias * LibertinusSans-TLF/m/scit
}{}
\DeclareFontShape{T2B}{LibertinusSans-TLF}{m}{sc}{
@@ -89,12 +38,12 @@
<-> alias * LibertinusSans-TLF/m/sc
}{}
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{m}{scit}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-tlf-sc-t2b
+\DeclareFontShape{T2B}{LibertinusSans-TLF}{m}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-tlf-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{regular}{scit}{
- <-> alias * LibertinusSans-TLF/m/scit
+\DeclareFontShape{T2B}{LibertinusSans-TLF}{regular}{n}{
+ <-> alias * LibertinusSans-TLF/m/n
}{}
\DeclareFontShape{T2B}{LibertinusSans-TLF}{m}{it}{
@@ -122,30 +71,33 @@
}{}
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+% ---- b = bold ----
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{bx}{sc}{
- <-> ssub * LibertinusSans-TLF/b/sc
+\DeclareFontShape{T2B}{LibertinusSans-TLF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{bx}{n}{
- <-> ssub * LibertinusSans-TLF/b/n
+\DeclareFontShape{T2B}{LibertinusSans-TLF}{bold}{n}{
+ <-> alias * LibertinusSans-TLF/b/n
}{}
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{bx}{sl}{
- <-> ssub * LibertinusSans-TLF/b/sl
+\DeclareFontShape{T2B}{LibertinusSans-TLF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-sc-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{bx}{it}{
- <-> ssub * LibertinusSans-TLF/b/it
+\DeclareFontShape{T2B}{LibertinusSans-TLF}{bold}{sc}{
+ <-> alias * LibertinusSans-TLF/b/sc
}{}
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{bx}{scsl}{
- <-> ssub * LibertinusSans-TLF/b/scsl
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T2B}{LibertinusSans-TLF}{bx}{sc}{
+ <-> ssub * LibertinusSans-TLF/b/sc
}{}
-\DeclareFontShape{T2B}{LibertinusSans-TLF}{bx}{scit}{
- <-> ssub * LibertinusSans-TLF/b/scit
+\DeclareFontShape{T2B}{LibertinusSans-TLF}{bx}{n}{
+ <-> ssub * LibertinusSans-TLF/b/n
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-TOsF.fd
index 7fef592030e..1f446048fc3 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSans-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2BLibertinusSans-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for T2B/LibertinusSans-TOsF.]
+ [2024/09/22 (autoinst) Font definitions for T2B/LibertinusSans-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,30 +22,6 @@
% ---- b = bold ----
-\DeclareFontShape{T2B}{LibertinusSans-TOsF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tosf-sc-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TOsF}{bold}{scsl}{
- <-> alias * LibertinusSans-TOsF/b/scsl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TOsF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tosf-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TOsF}{bold}{sl}{
- <-> alias * LibertinusSans-TOsF/b/sl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TOsF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TOsF}{bold}{n}{
- <-> alias * LibertinusSans-TOsF/b/n
-}{}
-
\DeclareFontShape{T2B}{LibertinusSans-TOsF}{b}{sc}{
<-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-sc-t2b
}{}
@@ -54,20 +30,12 @@
<-> alias * LibertinusSans-TOsF/b/sc
}{}
-\DeclareFontShape{T2B}{LibertinusSans-TOsF}{b}{it}{
- <-> ssub * LibertinusSans-TOsF/b/sl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TOsF}{bold}{it}{
- <-> ssub * LibertinusSans-TOsF/bold/sl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TOsF}{b}{scit}{
- <-> ssub * LibertinusSans-TOsF/b/scsl
+\DeclareFontShape{T2B}{LibertinusSans-TOsF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSans-TOsF}{bold}{scit}{
- <-> ssub * LibertinusSans-TOsF/bold/scsl
+\DeclareFontShape{T2B}{LibertinusSans-TOsF}{bold}{n}{
+ <-> alias * LibertinusSans-TOsF/b/n
}{}
@@ -81,12 +49,12 @@
<-> alias * LibertinusSans-TOsF/m/scit
}{}
-\DeclareFontShape{T2B}{LibertinusSans-TOsF}{m}{it}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-tosf-t2b
+\DeclareFontShape{T2B}{LibertinusSans-TOsF}{m}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-tosf-sc-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSans-TOsF}{regular}{it}{
- <-> alias * LibertinusSans-TOsF/m/it
+\DeclareFontShape{T2B}{LibertinusSans-TOsF}{regular}{sc}{
+ <-> alias * LibertinusSans-TOsF/m/sc
}{}
\DeclareFontShape{T2B}{LibertinusSans-TOsF}{m}{n}{
@@ -97,12 +65,12 @@
<-> alias * LibertinusSans-TOsF/m/n
}{}
-\DeclareFontShape{T2B}{LibertinusSans-TOsF}{m}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-tosf-sc-t2b
+\DeclareFontShape{T2B}{LibertinusSans-TOsF}{m}{it}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-tosf-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSans-TOsF}{regular}{sc}{
- <-> alias * LibertinusSans-TOsF/m/sc
+\DeclareFontShape{T2B}{LibertinusSans-TOsF}{regular}{it}{
+ <-> alias * LibertinusSans-TOsF/m/it
}{}
\DeclareFontShape{T2B}{LibertinusSans-TOsF}{m}{scsl}{
@@ -124,26 +92,10 @@
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T2B}{LibertinusSans-TOsF}{bx}{scsl}{
- <-> ssub * LibertinusSans-TOsF/b/scsl
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TOsF}{bx}{it}{
- <-> ssub * LibertinusSans-TOsF/b/it
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSans-TOsF}{bx}{scit}{
- <-> ssub * LibertinusSans-TOsF/b/scit
-}{}
-
\DeclareFontShape{T2B}{LibertinusSans-TOsF}{bx}{sc}{
<-> ssub * LibertinusSans-TOsF/b/sc
}{}
-\DeclareFontShape{T2B}{LibertinusSans-TOsF}{bx}{sl}{
- <-> ssub * LibertinusSans-TOsF/b/sl
-}{}
-
\DeclareFontShape{T2B}{LibertinusSans-TOsF}{bx}{n}{
<-> ssub * LibertinusSans-TOsF/b/n
}{}
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-LF.fd
index 38f578e1852..6c695ee3ad7 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-LF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2BLibertinusSerif-LF.fd}
- [2022/11/07 (autoinst) Font definitions for T2B/LibertinusSerif-LF.]
+ [2024/09/22 (autoinst) Font definitions for T2B/LibertinusSerif-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,14 +22,6 @@
% ---- sb = semibold ----
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{semibold}{it}{
- <-> alias * LibertinusSerif-LF/sb/it
-}{}
-
\DeclareFontShape{T2B}{LibertinusSerif-LF}{sb}{scit}{
<-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-sc-t2b
}{}
@@ -38,14 +30,6 @@
<-> alias * LibertinusSerif-LF/sb/scit
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{semibold}{n}{
- <-> alias * LibertinusSerif-LF/sb/n
-}{}
-
\DeclareFontShape{T2B}{LibertinusSerif-LF}{sb}{sc}{
<-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-sc-t2b
}{}
@@ -54,12 +38,20 @@
<-> alias * LibertinusSerif-LF/sb/sc
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{sb}{sl}{
- <-> ssub * LibertinusSerif-LF/sb/it
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-LF/semibold/it
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{semibold}{n}{
+ <-> alias * LibertinusSerif-LF/sb/n
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-t2b
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{semibold}{it}{
+ <-> alias * LibertinusSerif-LF/sb/it
}{}
\DeclareFontShape{T2B}{LibertinusSerif-LF}{sb}{scsl}{
@@ -70,24 +62,16 @@
<-> ssub * LibertinusSerif-LF/semibold/scit
}{}
-
-% ---- b = bold ----
-
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-sc-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-LF/sb/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{bold}{sc}{
- <-> alias * LibertinusSerif-LF/b/sc
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-LF/semibold/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-t2b
-}{}
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{bold}{it}{
- <-> alias * LibertinusSerif-LF/b/it
-}{}
+% ---- b = bold ----
\DeclareFontShape{T2B}{LibertinusSerif-LF}{b}{n}{
<-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-t2b
@@ -105,12 +89,20 @@
<-> alias * LibertinusSerif-LF/b/scit
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{b}{sl}{
- <-> ssub * LibertinusSerif-LF/b/it
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-sc-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{bold}{sl}{
- <-> ssub * LibertinusSerif-LF/bold/it
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{bold}{sc}{
+ <-> alias * LibertinusSerif-LF/b/sc
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-t2b
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{bold}{it}{
+ <-> alias * LibertinusSerif-LF/b/it
}{}
\DeclareFontShape{T2B}{LibertinusSerif-LF}{b}{scsl}{
@@ -121,24 +113,16 @@
<-> ssub * LibertinusSerif-LF/bold/scit
}{}
-
-% ---- m = regular ----
-
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{b}{sl}{
+ <-> ssub * LibertinusSerif-LF/b/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{regular}{n}{
- <-> alias * LibertinusSerif-LF/m/n
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-LF/bold/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-sc-t2b
-}{}
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{regular}{scit}{
- <-> alias * LibertinusSerif-LF/m/scit
-}{}
+% ---- m = regular ----
\DeclareFontShape{T2B}{LibertinusSerif-LF}{m}{it}{
<-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-t2b
@@ -156,12 +140,20 @@
<-> alias * LibertinusSerif-LF/m/sc
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{m}{sl}{
- <-> ssub * LibertinusSerif-LF/m/it
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-sc-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{regular}{sl}{
- <-> ssub * LibertinusSerif-LF/regular/it
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{regular}{scit}{
+ <-> alias * LibertinusSerif-LF/m/scit
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-t2b
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{regular}{n}{
+ <-> alias * LibertinusSerif-LF/m/n
}{}
\DeclareFontShape{T2B}{LibertinusSerif-LF}{m}{scsl}{
@@ -172,19 +164,31 @@
<-> ssub * LibertinusSerif-LF/regular/scit
}{}
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{m}{sl}{
+ <-> ssub * LibertinusSerif-LF/m/it
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-LF/regular/it
+}{}
+
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{bx}{scsl}{
- <-> ssub * LibertinusSerif-LF/b/scsl
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{bx}{scit}{
+ <-> ssub * LibertinusSerif-LF/b/scit
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{bx}{n}{
+ <-> ssub * LibertinusSerif-LF/b/n
}{}
\DeclareFontShape{T2B}{LibertinusSerif-LF}{bx}{it}{
<-> ssub * LibertinusSerif-LF/b/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{bx}{scit}{
- <-> ssub * LibertinusSerif-LF/b/scit
+\DeclareFontShape{T2B}{LibertinusSerif-LF}{bx}{scsl}{
+ <-> ssub * LibertinusSerif-LF/b/scsl
}{}
\DeclareFontShape{T2B}{LibertinusSerif-LF}{bx}{sc}{
@@ -195,8 +199,4 @@
<-> ssub * LibertinusSerif-LF/b/sl
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-LF}{bx}{n}{
- <-> ssub * LibertinusSerif-LF/b/n
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-OsF.fd
index a1eba5ef239..33da18e7f78 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-OsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2BLibertinusSerif-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for T2B/LibertinusSerif-OsF.]
+ [2024/09/22 (autoinst) Font definitions for T2B/LibertinusSerif-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,165 +20,161 @@
\DeclareFontFamily{T2B}{LibertinusSerif-OsF}{}
-% ---- m = regular ----
+% ---- b = bold ----
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{regular}{it}{
- <-> alias * LibertinusSerif-OsF/m/it
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{bold}{it}{
+ <-> alias * LibertinusSerif-OsF/b/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{regular}{n}{
- <-> alias * LibertinusSerif-OsF/m/n
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{bold}{n}{
+ <-> alias * LibertinusSerif-OsF/b/n
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-sc-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{b}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-sc-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{regular}{scit}{
- <-> alias * LibertinusSerif-OsF/m/scit
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{bold}{scit}{
+ <-> alias * LibertinusSerif-OsF/b/scit
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-sc-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-sc-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{regular}{sc}{
- <-> alias * LibertinusSerif-OsF/m/sc
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{bold}{sc}{
+ <-> alias * LibertinusSerif-OsF/b/sc
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{m}{sl}{
- <-> ssub * LibertinusSerif-OsF/m/it
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{b}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/b/scit
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{regular}{sl}{
- <-> ssub * LibertinusSerif-OsF/regular/it
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{bold}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/bold/scit
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{m}{scsl}{
- <-> ssub * LibertinusSerif-OsF/m/scit
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{b}{sl}{
+ <-> ssub * LibertinusSerif-OsF/b/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-OsF/regular/scit
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-OsF/bold/it
}{}
-% ---- b = bold ----
+% ---- sb = semibold ----
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{bold}{it}{
- <-> alias * LibertinusSerif-OsF/b/it
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{semibold}{it}{
+ <-> alias * LibertinusSerif-OsF/sb/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{b}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-sc-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{bold}{scit}{
- <-> alias * LibertinusSerif-OsF/b/scit
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{semibold}{n}{
+ <-> alias * LibertinusSerif-OsF/sb/n
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-sc-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{bold}{n}{
- <-> alias * LibertinusSerif-OsF/b/n
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-OsF/sb/sc
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-sc-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-sc-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{bold}{sc}{
- <-> alias * LibertinusSerif-OsF/b/sc
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-OsF/sb/scit
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{b}{sl}{
- <-> ssub * LibertinusSerif-OsF/b/it
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/sb/scit
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{bold}{sl}{
- <-> ssub * LibertinusSerif-OsF/bold/it
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/semibold/scit
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{b}{scsl}{
- <-> ssub * LibertinusSerif-OsF/b/scit
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-OsF/sb/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{bold}{scsl}{
- <-> ssub * LibertinusSerif-OsF/bold/scit
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-OsF/semibold/it
}{}
-% ---- sb = semibold ----
+% ---- m = regular ----
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-sc-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{semibold}{sc}{
- <-> alias * LibertinusSerif-OsF/sb/sc
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{regular}{it}{
+ <-> alias * LibertinusSerif-OsF/m/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{semibold}{n}{
- <-> alias * LibertinusSerif-OsF/sb/n
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{regular}{n}{
+ <-> alias * LibertinusSerif-OsF/m/n
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-sc-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-sc-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{semibold}{scit}{
- <-> alias * LibertinusSerif-OsF/sb/scit
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{regular}{scit}{
+ <-> alias * LibertinusSerif-OsF/m/scit
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-sc-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{semibold}{it}{
- <-> alias * LibertinusSerif-OsF/sb/it
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{regular}{sc}{
+ <-> alias * LibertinusSerif-OsF/m/sc
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{sb}{sl}{
- <-> ssub * LibertinusSerif-OsF/sb/it
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/m/scit
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-OsF/semibold/it
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/regular/scit
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-OsF/sb/scit
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{m}{sl}{
+ <-> ssub * LibertinusSerif-OsF/m/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-OsF/semibold/scit
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-OsF/regular/it
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{bx}{scsl}{
- <-> ssub * LibertinusSerif-OsF/b/scsl
-}{}
-
\DeclareFontShape{T2B}{LibertinusSerif-OsF}{bx}{sc}{
<-> ssub * LibertinusSerif-OsF/b/sc
}{}
@@ -187,6 +183,14 @@
<-> ssub * LibertinusSerif-OsF/b/sl
}{}
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{bx}{it}{
+ <-> ssub * LibertinusSerif-OsF/b/it
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSerif-OsF}{bx}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/b/scsl
+}{}
+
\DeclareFontShape{T2B}{LibertinusSerif-OsF}{bx}{scit}{
<-> ssub * LibertinusSerif-OsF/b/scit
}{}
@@ -195,8 +199,4 @@
<-> ssub * LibertinusSerif-OsF/b/n
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-OsF}{bx}{it}{
- <-> ssub * LibertinusSerif-OsF/b/it
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-Sup.fd
index e75d7fbb321..a81a953ec9b 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-Sup.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-Sup.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2BLibertinusSerif-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for T2B/LibertinusSerif-Sup.]
+ [2024/09/22 (autoinst) Font definitions for T2B/LibertinusSerif-Sup.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,14 +22,6 @@
% ---- b = bold ----
-\DeclareFontShape{T2B}{LibertinusSerif-Sup}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-sup-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerif-Sup}{bold}{n}{
- <-> alias * LibertinusSerif-Sup/b/n
-}{}
-
\DeclareFontShape{T2B}{LibertinusSerif-Sup}{b}{it}{
<-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-sup-t2b
}{}
@@ -38,6 +30,14 @@
<-> alias * LibertinusSerif-Sup/b/it
}{}
+\DeclareFontShape{T2B}{LibertinusSerif-Sup}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-sup-t2b
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSerif-Sup}{bold}{n}{
+ <-> alias * LibertinusSerif-Sup/b/n
+}{}
+
\DeclareFontShape{T2B}{LibertinusSerif-Sup}{b}{sl}{
<-> ssub * LibertinusSerif-Sup/b/it
}{}
@@ -47,62 +47,66 @@
}{}
-% ---- m = regular ----
+% ---- sb = semibold ----
-\DeclareFontShape{T2B}{LibertinusSerif-Sup}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-sup-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-Sup}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-sup-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-Sup}{regular}{n}{
- <-> alias * LibertinusSerif-Sup/m/n
+\DeclareFontShape{T2B}{LibertinusSerif-Sup}{semibold}{n}{
+ <-> alias * LibertinusSerif-Sup/sb/n
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-Sup}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-sup-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-Sup}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-sup-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-Sup}{regular}{it}{
- <-> alias * LibertinusSerif-Sup/m/it
+\DeclareFontShape{T2B}{LibertinusSerif-Sup}{semibold}{it}{
+ <-> alias * LibertinusSerif-Sup/sb/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-Sup}{m}{sl}{
- <-> ssub * LibertinusSerif-Sup/m/it
+\DeclareFontShape{T2B}{LibertinusSerif-Sup}{sb}{sl}{
+ <-> ssub * LibertinusSerif-Sup/sb/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-Sup}{regular}{sl}{
- <-> ssub * LibertinusSerif-Sup/regular/it
+\DeclareFontShape{T2B}{LibertinusSerif-Sup}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-Sup/semibold/it
}{}
-% ---- sb = semibold ----
+% ---- m = regular ----
-\DeclareFontShape{T2B}{LibertinusSerif-Sup}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-sup-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-Sup}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-sup-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-Sup}{semibold}{it}{
- <-> alias * LibertinusSerif-Sup/sb/it
+\DeclareFontShape{T2B}{LibertinusSerif-Sup}{regular}{it}{
+ <-> alias * LibertinusSerif-Sup/m/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-Sup}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-sup-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-Sup}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-sup-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-Sup}{semibold}{n}{
- <-> alias * LibertinusSerif-Sup/sb/n
+\DeclareFontShape{T2B}{LibertinusSerif-Sup}{regular}{n}{
+ <-> alias * LibertinusSerif-Sup/m/n
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-Sup}{sb}{sl}{
- <-> ssub * LibertinusSerif-Sup/sb/it
+\DeclareFontShape{T2B}{LibertinusSerif-Sup}{m}{sl}{
+ <-> ssub * LibertinusSerif-Sup/m/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-Sup}{semibold}{sl}{
- <-> ssub * LibertinusSerif-Sup/semibold/it
+\DeclareFontShape{T2B}{LibertinusSerif-Sup}{regular}{sl}{
+ <-> ssub * LibertinusSerif-Sup/regular/it
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+\DeclareFontShape{T2B}{LibertinusSerif-Sup}{bx}{it}{
+ <-> ssub * LibertinusSerif-Sup/b/it
+}{}
+
\DeclareFontShape{T2B}{LibertinusSerif-Sup}{bx}{sl}{
<-> ssub * LibertinusSerif-Sup/b/sl
}{}
@@ -111,8 +115,4 @@
<-> ssub * LibertinusSerif-Sup/b/n
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-Sup}{bx}{it}{
- <-> ssub * LibertinusSerif-Sup/b/it
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-TLF.fd
index 4079a7d1910..ba3ab35ab0f 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2BLibertinusSerif-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for T2B/LibertinusSerif-TLF.]
+ [2024/09/22 (autoinst) Font definitions for T2B/LibertinusSerif-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,105 +20,105 @@
\DeclareFontFamily{T2B}{LibertinusSerif-TLF}{}
-% ---- sb = semibold ----
+% ---- m = regular ----
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-sc-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-sc-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{semibold}{sc}{
- <-> alias * LibertinusSerif-TLF/sb/sc
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{regular}{sc}{
+ <-> alias * LibertinusSerif-TLF/m/sc
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-sc-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-sc-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{semibold}{scit}{
- <-> alias * LibertinusSerif-TLF/sb/scit
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{regular}{scit}{
+ <-> alias * LibertinusSerif-TLF/m/scit
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{semibold}{n}{
- <-> alias * LibertinusSerif-TLF/sb/n
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{regular}{n}{
+ <-> alias * LibertinusSerif-TLF/m/n
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{semibold}{it}{
- <-> alias * LibertinusSerif-TLF/sb/it
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{regular}{it}{
+ <-> alias * LibertinusSerif-TLF/m/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{sb}{sl}{
- <-> ssub * LibertinusSerif-TLF/sb/it
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/m/scit
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-TLF/semibold/it
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/regular/scit
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-TLF/sb/scit
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{m}{sl}{
+ <-> ssub * LibertinusSerif-TLF/m/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-TLF/semibold/scit
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-TLF/regular/it
}{}
-% ---- m = regular ----
+% ---- sb = semibold ----
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-sc-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{regular}{sc}{
- <-> alias * LibertinusSerif-TLF/m/sc
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{semibold}{it}{
+ <-> alias * LibertinusSerif-TLF/sb/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{regular}{it}{
- <-> alias * LibertinusSerif-TLF/m/it
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{semibold}{n}{
+ <-> alias * LibertinusSerif-TLF/sb/n
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-sc-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{regular}{n}{
- <-> alias * LibertinusSerif-TLF/m/n
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-TLF/sb/scit
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-sc-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-sc-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{regular}{scit}{
- <-> alias * LibertinusSerif-TLF/m/scit
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-TLF/sb/sc
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{m}{sl}{
- <-> ssub * LibertinusSerif-TLF/m/it
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/sb/scit
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{regular}{sl}{
- <-> ssub * LibertinusSerif-TLF/regular/it
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/semibold/scit
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{m}{scsl}{
- <-> ssub * LibertinusSerif-TLF/m/scit
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-TLF/sb/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-TLF/regular/scit
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-TLF/semibold/it
}{}
@@ -156,14 +156,6 @@
<-> alias * LibertinusSerif-TLF/b/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{b}{sl}{
- <-> ssub * LibertinusSerif-TLF/b/it
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{bold}{sl}{
- <-> ssub * LibertinusSerif-TLF/bold/it
-}{}
-
\DeclareFontShape{T2B}{LibertinusSerif-TLF}{b}{scsl}{
<-> ssub * LibertinusSerif-TLF/b/scit
}{}
@@ -172,29 +164,37 @@
<-> ssub * LibertinusSerif-TLF/bold/scit
}{}
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{b}{sl}{
+ <-> ssub * LibertinusSerif-TLF/b/it
+}{}
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{bx}{scit}{
- <-> ssub * LibertinusSerif-TLF/b/scit
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-TLF/bold/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{bx}{n}{
- <-> ssub * LibertinusSerif-TLF/b/n
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{bx}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/b/scsl
}{}
\DeclareFontShape{T2B}{LibertinusSerif-TLF}{bx}{it}{
<-> ssub * LibertinusSerif-TLF/b/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TLF}{bx}{scsl}{
- <-> ssub * LibertinusSerif-TLF/b/scsl
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{bx}{n}{
+ <-> ssub * LibertinusSerif-TLF/b/n
}{}
\DeclareFontShape{T2B}{LibertinusSerif-TLF}{bx}{sc}{
<-> ssub * LibertinusSerif-TLF/b/sc
}{}
+\DeclareFontShape{T2B}{LibertinusSerif-TLF}{bx}{scit}{
+ <-> ssub * LibertinusSerif-TLF/b/scit
+}{}
+
\DeclareFontShape{T2B}{LibertinusSerif-TLF}{bx}{sl}{
<-> ssub * LibertinusSerif-TLF/b/sl
}{}
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-TOsF.fd
index 7fe87fa18c4..8d871fe53fd 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerif-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2BLibertinusSerif-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for T2B/LibertinusSerif-TOsF.]
+ [2024/09/22 (autoinst) Font definitions for T2B/LibertinusSerif-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,59 +20,16 @@
\DeclareFontFamily{T2B}{LibertinusSerif-TOsF}{}
-% ---- m = regular ----
-
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-sc-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{regular}{sc}{
- <-> alias * LibertinusSerif-TOsF/m/sc
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{regular}{it}{
- <-> alias * LibertinusSerif-TOsF/m/it
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-sc-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{regular}{scit}{
- <-> alias * LibertinusSerif-TOsF/m/scit
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{regular}{n}{
- <-> alias * LibertinusSerif-TOsF/m/n
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{m}{sl}{
- <-> ssub * LibertinusSerif-TOsF/m/it
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{regular}{sl}{
- <-> ssub * LibertinusSerif-TOsF/regular/it
-}{}
+% ---- b = bold ----
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{m}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/m/scit
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/regular/scit
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{bold}{n}{
+ <-> alias * LibertinusSerif-TOsF/b/n
}{}
-
-% ---- b = bold ----
-
\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{b}{sc}{
<-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-sc-t2b
}{}
@@ -89,14 +46,6 @@
<-> alias * LibertinusSerif-TOsF/b/scit
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{bold}{n}{
- <-> alias * LibertinusSerif-TOsF/b/n
-}{}
-
\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{b}{it}{
<-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-t2b
}{}
@@ -105,14 +54,6 @@
<-> alias * LibertinusSerif-TOsF/b/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{b}{sl}{
- <-> ssub * LibertinusSerif-TOsF/b/it
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{bold}{sl}{
- <-> ssub * LibertinusSerif-TOsF/bold/it
-}{}
-
\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{b}{scsl}{
<-> ssub * LibertinusSerif-TOsF/b/scit
}{}
@@ -121,17 +62,17 @@
<-> ssub * LibertinusSerif-TOsF/bold/scit
}{}
-
-% ---- sb = semibold ----
-
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-sc-t2b
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{b}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/b/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{semibold}{sc}{
- <-> alias * LibertinusSerif-TOsF/sb/sc
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/bold/it
}{}
+
+% ---- sb = semibold ----
+
\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{sb}{n}{
<-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-t2b
}{}
@@ -148,6 +89,14 @@
<-> alias * LibertinusSerif-TOsF/sb/scit
}{}
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-sc-t2b
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-TOsF/sb/sc
+}{}
+
\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{sb}{it}{
<-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-t2b
}{}
@@ -156,6 +105,14 @@
<-> alias * LibertinusSerif-TOsF/sb/it
}{}
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/sb/scit
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/semibold/scit
+}{}
+
\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{sb}{sl}{
<-> ssub * LibertinusSerif-TOsF/sb/it
}{}
@@ -164,39 +121,82 @@
<-> ssub * LibertinusSerif-TOsF/semibold/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/sb/scit
+
+% ---- m = regular ----
+
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/semibold/scit
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{regular}{it}{
+ <-> alias * LibertinusSerif-TOsF/m/it
}{}
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-t2b
+}{}
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{regular}{n}{
+ <-> alias * LibertinusSerif-TOsF/m/n
+}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{bx}{sc}{
- <-> ssub * LibertinusSerif-TOsF/b/sc
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-sc-t2b
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{bx}{sl}{
- <-> ssub * LibertinusSerif-TOsF/b/sl
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{regular}{sc}{
+ <-> alias * LibertinusSerif-TOsF/m/sc
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{bx}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/b/scsl
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-sc-t2b
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{regular}{scit}{
+ <-> alias * LibertinusSerif-TOsF/m/scit
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/m/scit
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/regular/scit
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{m}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/m/it
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/regular/it
}{}
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{bx}{it}{
<-> ssub * LibertinusSerif-TOsF/b/it
}{}
-\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{bx}{n}{
- <-> ssub * LibertinusSerif-TOsF/b/n
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{bx}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/b/scsl
}{}
\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{bx}{scit}{
<-> ssub * LibertinusSerif-TOsF/b/scit
}{}
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{bx}{n}{
+ <-> ssub * LibertinusSerif-TOsF/b/n
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{bx}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/b/sl
+}{}
+
+\DeclareFontShape{T2B}{LibertinusSerif-TOsF}{bx}{sc}{
+ <-> ssub * LibertinusSerif-TOsF/b/sc
+}{}
+
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-LF.fd
deleted file mode 100644
index c2f0cea29b7..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-LF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T2BLibertinusSerifDisplay-LF.fd}
- [2022/11/07 (autoinst) Font definitions for T2B/LibertinusSerifDisplay-LF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T2B}{LibertinusSerifDisplay-LF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T2B}{LibertinusSerifDisplay-LF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-lf-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerifDisplay-LF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-LF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-OsF.fd
deleted file mode 100644
index c2b632583c7..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-OsF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T2BLibertinusSerifDisplay-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for T2B/LibertinusSerifDisplay-OsF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T2B}{LibertinusSerifDisplay-OsF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T2B}{LibertinusSerifDisplay-OsF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-osf-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerifDisplay-OsF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-OsF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-Sup.fd
deleted file mode 100644
index 4aad9b7b211..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-Sup.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T2BLibertinusSerifDisplay-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for T2B/LibertinusSerifDisplay-Sup.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T2B}{LibertinusSerifDisplay-Sup}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T2B}{LibertinusSerifDisplay-Sup}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-sup-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerifDisplay-Sup}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-Sup/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-TLF.fd
deleted file mode 100644
index e87af08ba80..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-TLF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T2BLibertinusSerifDisplay-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for T2B/LibertinusSerifDisplay-TLF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T2B}{LibertinusSerifDisplay-TLF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T2B}{LibertinusSerifDisplay-TLF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-tlf-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerifDisplay-TLF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-TLF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-TOsF.fd
deleted file mode 100644
index 05d22180f04..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifDisplay-TOsF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T2BLibertinusSerifDisplay-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for T2B/LibertinusSerifDisplay-TOsF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T2B}{LibertinusSerifDisplay-TOsF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T2B}{LibertinusSerifDisplay-TOsF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-tosf-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerifDisplay-TOsF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-TOsF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifInitials-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifInitials-TLF.fd
deleted file mode 100644
index 217efac00f6..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2BLibertinusSerifInitials-TLF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T2BLibertinusSerifInitials-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for T2B/LibertinusSerifInitials-TLF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifInitials@scale\endcsname\relax
- \let\LibertinusSerifInitials@@scale\@empty
-\else
- \edef\LibertinusSerifInitials@@scale{s*[\csname LibertinusSerifInitials@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T2B}{LibertinusSerifInitials-TLF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T2B}{LibertinusSerifInitials-TLF}{m}{n}{
- <-> \LibertinusSerifInitials@@scale LibertinusSerifInitials-Regular-tlf-t2b
-}{}
-
-\DeclareFontShape{T2B}{LibertinusSerifInitials-TLF}{regular}{n}{
- <-> alias * LibertinusSerifInitials-TLF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusMono-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusMono-TLF.fd
new file mode 100644
index 00000000000..4ffdf5330dd
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusMono-TLF.fd
@@ -0,0 +1,36 @@
+%% Generated by autoinst on 2024/09/22
+%%
+\ProvidesFile{T2CLibertinusMono-TLF.fd}
+ [2024/09/22 (autoinst) Font definitions for T2C/LibertinusMono-TLF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname LibertinusMono@scale\endcsname\relax
+ \let\LibertinusMono@@scale\@empty
+\else
+ \edef\LibertinusMono@@scale{s*[\csname LibertinusMono@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T2C}{LibertinusMono-TLF}{\hyphenchar\font=-1}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T2C}{LibertinusMono-TLF}{m}{n}{
+ <-> \LibertinusMono@@scale LibertinusMono-Regular-tlf-t2c
+}{}
+
+\DeclareFontShape{T2C}{LibertinusMono-TLF}{regular}{n}{
+ <-> alias * LibertinusMono-TLF/m/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-LF.fd
index b7b73fa3ed4..65836df9174 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-LF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2CLibertinusSans-LF.fd}
- [2022/11/07 (autoinst) Font definitions for T2C/LibertinusSans-LF.]
+ [2024/09/22 (autoinst) Font definitions for T2C/LibertinusSans-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,57 +20,6 @@
\DeclareFontFamily{T2C}{LibertinusSans-LF}{}
-% ---- b = bold ----
-
-\DeclareFontShape{T2C}{LibertinusSans-LF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-lf-sc-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-LF}{bold}{scsl}{
- <-> alias * LibertinusSans-LF/b/scsl
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-LF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-lf-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-LF}{bold}{sl}{
- <-> alias * LibertinusSans-LF/b/sl
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-LF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-LF}{bold}{n}{
- <-> alias * LibertinusSans-LF/b/n
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-LF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-sc-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-LF}{bold}{sc}{
- <-> alias * LibertinusSans-LF/b/sc
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-LF}{b}{it}{
- <-> ssub * LibertinusSans-LF/b/sl
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-LF}{bold}{it}{
- <-> ssub * LibertinusSans-LF/bold/sl
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-LF}{b}{scit}{
- <-> ssub * LibertinusSans-LF/b/scsl
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-LF}{bold}{scit}{
- <-> ssub * LibertinusSans-LF/bold/scsl
-}{}
-
-
% ---- m = regular ----
\DeclareFontShape{T2C}{LibertinusSans-LF}{m}{n}{
@@ -122,30 +71,33 @@
}{}
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+% ---- b = bold ----
-\DeclareFontShape{T2C}{LibertinusSans-LF}{bx}{n}{
- <-> ssub * LibertinusSans-LF/b/n
+\DeclareFontShape{T2C}{LibertinusSans-LF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSans-LF}{bx}{sl}{
- <-> ssub * LibertinusSans-LF/b/sl
+\DeclareFontShape{T2C}{LibertinusSans-LF}{bold}{sc}{
+ <-> alias * LibertinusSans-LF/b/sc
}{}
-\DeclareFontShape{T2C}{LibertinusSans-LF}{bx}{sc}{
- <-> ssub * LibertinusSans-LF/b/sc
+\DeclareFontShape{T2C}{LibertinusSans-LF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSans-LF}{bx}{scit}{
- <-> ssub * LibertinusSans-LF/b/scit
+\DeclareFontShape{T2C}{LibertinusSans-LF}{bold}{n}{
+ <-> alias * LibertinusSans-LF/b/n
}{}
-\DeclareFontShape{T2C}{LibertinusSans-LF}{bx}{it}{
- <-> ssub * LibertinusSans-LF/b/it
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T2C}{LibertinusSans-LF}{bx}{sc}{
+ <-> ssub * LibertinusSans-LF/b/sc
}{}
-\DeclareFontShape{T2C}{LibertinusSans-LF}{bx}{scsl}{
- <-> ssub * LibertinusSans-LF/b/scsl
+\DeclareFontShape{T2C}{LibertinusSans-LF}{bx}{n}{
+ <-> ssub * LibertinusSans-LF/b/n
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-OsF.fd
index 5a14b62fd88..74558f20c67 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-OsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2CLibertinusSans-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for T2C/LibertinusSans-OsF.]
+ [2024/09/22 (autoinst) Font definitions for T2C/LibertinusSans-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,57 +20,6 @@
\DeclareFontFamily{T2C}{LibertinusSans-OsF}{}
-% ---- b = bold ----
-
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-osf-sc-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{bold}{scsl}{
- <-> alias * LibertinusSans-OsF/b/scsl
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-osf-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{bold}{sl}{
- <-> alias * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{bold}{n}{
- <-> alias * LibertinusSans-OsF/b/n
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-sc-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{bold}{sc}{
- <-> alias * LibertinusSans-OsF/b/sc
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{b}{it}{
- <-> ssub * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{bold}{it}{
- <-> ssub * LibertinusSans-OsF/bold/sl
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{b}{scit}{
- <-> ssub * LibertinusSans-OsF/b/scsl
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{bold}{scit}{
- <-> ssub * LibertinusSans-OsF/bold/scsl
-}{}
-
-
% ---- m = regular ----
\DeclareFontShape{T2C}{LibertinusSans-OsF}{m}{scit}{
@@ -81,12 +30,12 @@
<-> alias * LibertinusSans-OsF/m/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{m}{it}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-osf-t2c
+\DeclareFontShape{T2C}{LibertinusSans-OsF}{m}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-osf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{regular}{it}{
- <-> alias * LibertinusSans-OsF/m/it
+\DeclareFontShape{T2C}{LibertinusSans-OsF}{regular}{sc}{
+ <-> alias * LibertinusSans-OsF/m/sc
}{}
\DeclareFontShape{T2C}{LibertinusSans-OsF}{m}{n}{
@@ -97,12 +46,12 @@
<-> alias * LibertinusSans-OsF/m/n
}{}
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{m}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-osf-sc-t2c
+\DeclareFontShape{T2C}{LibertinusSans-OsF}{m}{it}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-osf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{regular}{sc}{
- <-> alias * LibertinusSans-OsF/m/sc
+\DeclareFontShape{T2C}{LibertinusSans-OsF}{regular}{it}{
+ <-> alias * LibertinusSans-OsF/m/it
}{}
\DeclareFontShape{T2C}{LibertinusSans-OsF}{m}{scsl}{
@@ -122,30 +71,33 @@
}{}
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+% ---- b = bold ----
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{bx}{n}{
- <-> ssub * LibertinusSans-OsF/b/n
+\DeclareFontShape{T2C}{LibertinusSans-OsF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{bx}{scsl}{
- <-> ssub * LibertinusSans-OsF/b/scsl
+\DeclareFontShape{T2C}{LibertinusSans-OsF}{bold}{n}{
+ <-> alias * LibertinusSans-OsF/b/n
}{}
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{bx}{sc}{
- <-> ssub * LibertinusSans-OsF/b/sc
+\DeclareFontShape{T2C}{LibertinusSans-OsF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-osf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{bx}{sl}{
- <-> ssub * LibertinusSans-OsF/b/sl
+\DeclareFontShape{T2C}{LibertinusSans-OsF}{bold}{sc}{
+ <-> alias * LibertinusSans-OsF/b/sc
}{}
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{bx}{it}{
- <-> ssub * LibertinusSans-OsF/b/it
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T2C}{LibertinusSans-OsF}{bx}{n}{
+ <-> ssub * LibertinusSans-OsF/b/n
}{}
-\DeclareFontShape{T2C}{LibertinusSans-OsF}{bx}{scit}{
- <-> ssub * LibertinusSans-OsF/b/scit
+\DeclareFontShape{T2C}{LibertinusSans-OsF}{bx}{sc}{
+ <-> ssub * LibertinusSans-OsF/b/sc
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-Sup.fd
index 0ec106c58a7..1e79ce917c5 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-Sup.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-Sup.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2CLibertinusSans-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for T2C/LibertinusSans-Sup.]
+ [2024/09/22 (autoinst) Font definitions for T2C/LibertinusSans-Sup.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,14 +22,6 @@
% ---- b = bold ----
-\DeclareFontShape{T2C}{LibertinusSans-Sup}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-sup-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-Sup}{bold}{sl}{
- <-> alias * LibertinusSans-Sup/b/sl
-}{}
-
\DeclareFontShape{T2C}{LibertinusSans-Sup}{b}{n}{
<-> \LibertinusSans@@scale LibertinusSans-Bold-sup-t2c
}{}
@@ -38,14 +30,6 @@
<-> alias * LibertinusSans-Sup/b/n
}{}
-\DeclareFontShape{T2C}{LibertinusSans-Sup}{b}{it}{
- <-> ssub * LibertinusSans-Sup/b/sl
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-Sup}{bold}{it}{
- <-> ssub * LibertinusSans-Sup/bold/sl
-}{}
-
% ---- m = regular ----
@@ -80,12 +64,4 @@
<-> ssub * LibertinusSans-Sup/b/n
}{}
-\DeclareFontShape{T2C}{LibertinusSans-Sup}{bx}{sl}{
- <-> ssub * LibertinusSans-Sup/b/sl
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-Sup}{bx}{it}{
- <-> ssub * LibertinusSans-Sup/b/it
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-TLF.fd
index c6f519ce4da..57706057c4c 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2CLibertinusSans-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for T2C/LibertinusSans-TLF.]
+ [2024/09/22 (autoinst) Font definitions for T2C/LibertinusSans-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,16 +20,27 @@
\DeclareFontFamily{T2C}{LibertinusSans-TLF}{}
-% ---- m = regular ----
+% ---- b = bold ----
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{m}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-tlf-sc-t2c
+\DeclareFontShape{T2C}{LibertinusSans-TLF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{regular}{sc}{
- <-> alias * LibertinusSans-TLF/m/sc
+\DeclareFontShape{T2C}{LibertinusSans-TLF}{bold}{sc}{
+ <-> alias * LibertinusSans-TLF/b/sc
}{}
+\DeclareFontShape{T2C}{LibertinusSans-TLF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-t2c
+}{}
+
+\DeclareFontShape{T2C}{LibertinusSans-TLF}{bold}{n}{
+ <-> alias * LibertinusSans-TLF/b/n
+}{}
+
+
+% ---- m = regular ----
+
\DeclareFontShape{T2C}{LibertinusSans-TLF}{m}{n}{
<-> \LibertinusSans@@scale LibertinusSans-Regular-tlf-t2c
}{}
@@ -38,12 +49,12 @@
<-> alias * LibertinusSans-TLF/m/n
}{}
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{m}{it}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-tlf-t2c
+\DeclareFontShape{T2C}{LibertinusSans-TLF}{m}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-tlf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{regular}{it}{
- <-> alias * LibertinusSans-TLF/m/it
+\DeclareFontShape{T2C}{LibertinusSans-TLF}{regular}{sc}{
+ <-> alias * LibertinusSans-TLF/m/sc
}{}
\DeclareFontShape{T2C}{LibertinusSans-TLF}{m}{scit}{
@@ -54,6 +65,14 @@
<-> alias * LibertinusSans-TLF/m/scit
}{}
+\DeclareFontShape{T2C}{LibertinusSans-TLF}{m}{it}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-tlf-t2c
+}{}
+
+\DeclareFontShape{T2C}{LibertinusSans-TLF}{regular}{it}{
+ <-> alias * LibertinusSans-TLF/m/it
+}{}
+
\DeclareFontShape{T2C}{LibertinusSans-TLF}{m}{scsl}{
<-> ssub * LibertinusSans-TLF/m/scit
}{}
@@ -71,81 +90,14 @@
}{}
-% ---- b = bold ----
-
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tlf-sc-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{bold}{scsl}{
- <-> alias * LibertinusSans-TLF/b/scsl
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-sc-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{bold}{sc}{
- <-> alias * LibertinusSans-TLF/b/sc
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{bold}{n}{
- <-> alias * LibertinusSans-TLF/b/n
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tlf-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{bold}{sl}{
- <-> alias * LibertinusSans-TLF/b/sl
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{b}{it}{
- <-> ssub * LibertinusSans-TLF/b/sl
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{bold}{it}{
- <-> ssub * LibertinusSans-TLF/bold/sl
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{b}{scit}{
- <-> ssub * LibertinusSans-TLF/b/scsl
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{bold}{scit}{
- <-> ssub * LibertinusSans-TLF/bold/scsl
-}{}
-
-
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
\DeclareFontShape{T2C}{LibertinusSans-TLF}{bx}{sc}{
<-> ssub * LibertinusSans-TLF/b/sc
}{}
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{bx}{sl}{
- <-> ssub * LibertinusSans-TLF/b/sl
-}{}
-
\DeclareFontShape{T2C}{LibertinusSans-TLF}{bx}{n}{
<-> ssub * LibertinusSans-TLF/b/n
}{}
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{bx}{it}{
- <-> ssub * LibertinusSans-TLF/b/it
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{bx}{scsl}{
- <-> ssub * LibertinusSans-TLF/b/scsl
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TLF}{bx}{scit}{
- <-> ssub * LibertinusSans-TLF/b/scit
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-TOsF.fd
index 9ccbe774444..0752edeb1fe 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSans-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2CLibertinusSans-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for T2C/LibertinusSans-TOsF.]
+ [2024/09/22 (autoinst) Font definitions for T2C/LibertinusSans-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,59 +20,24 @@
\DeclareFontFamily{T2C}{LibertinusSans-TOsF}{}
-% ---- b = bold ----
-
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{b}{sc}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-sc-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{bold}{sc}{
- <-> alias * LibertinusSans-TOsF/b/sc
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tosf-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{bold}{sl}{
- <-> alias * LibertinusSans-TOsF/b/sl
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{bold}{n}{
- <-> alias * LibertinusSans-TOsF/b/n
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{b}{scsl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tosf-sc-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{bold}{scsl}{
- <-> alias * LibertinusSans-TOsF/b/scsl
-}{}
+% ---- m = regular ----
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{b}{it}{
- <-> ssub * LibertinusSans-TOsF/b/sl
+\DeclareFontShape{T2C}{LibertinusSans-TOsF}{m}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-tosf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{bold}{it}{
- <-> ssub * LibertinusSans-TOsF/bold/sl
+\DeclareFontShape{T2C}{LibertinusSans-TOsF}{regular}{n}{
+ <-> alias * LibertinusSans-TOsF/m/n
}{}
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{b}{scit}{
- <-> ssub * LibertinusSans-TOsF/b/scsl
+\DeclareFontShape{T2C}{LibertinusSans-TOsF}{m}{scit}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-tosf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{bold}{scit}{
- <-> ssub * LibertinusSans-TOsF/bold/scsl
+\DeclareFontShape{T2C}{LibertinusSans-TOsF}{regular}{scit}{
+ <-> alias * LibertinusSans-TOsF/m/scit
}{}
-
-% ---- m = regular ----
-
\DeclareFontShape{T2C}{LibertinusSans-TOsF}{m}{sc}{
<-> \LibertinusSans@@scale LibertinusSans-Regular-tosf-sc-t2c
}{}
@@ -81,14 +46,6 @@
<-> alias * LibertinusSans-TOsF/m/sc
}{}
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{m}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-tosf-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{regular}{n}{
- <-> alias * LibertinusSans-TOsF/m/n
-}{}
-
\DeclareFontShape{T2C}{LibertinusSans-TOsF}{m}{it}{
<-> \LibertinusSans@@scale LibertinusSans-Italic-tosf-t2c
}{}
@@ -97,14 +54,6 @@
<-> alias * LibertinusSans-TOsF/m/it
}{}
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{m}{scit}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-tosf-sc-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{regular}{scit}{
- <-> alias * LibertinusSans-TOsF/m/scit
-}{}
-
\DeclareFontShape{T2C}{LibertinusSans-TOsF}{m}{scsl}{
<-> ssub * LibertinusSans-TOsF/m/scit
}{}
@@ -122,30 +71,33 @@
}{}
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+% ---- b = bold ----
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{bx}{sc}{
- <-> ssub * LibertinusSans-TOsF/b/sc
+\DeclareFontShape{T2C}{LibertinusSans-TOsF}{b}{sc}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{bx}{sl}{
- <-> ssub * LibertinusSans-TOsF/b/sl
+\DeclareFontShape{T2C}{LibertinusSans-TOsF}{bold}{sc}{
+ <-> alias * LibertinusSans-TOsF/b/sc
}{}
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{bx}{n}{
- <-> ssub * LibertinusSans-TOsF/b/n
+\DeclareFontShape{T2C}{LibertinusSans-TOsF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{bx}{scsl}{
- <-> ssub * LibertinusSans-TOsF/b/scsl
+\DeclareFontShape{T2C}{LibertinusSans-TOsF}{bold}{n}{
+ <-> alias * LibertinusSans-TOsF/b/n
}{}
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{bx}{it}{
- <-> ssub * LibertinusSans-TOsF/b/it
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T2C}{LibertinusSans-TOsF}{bx}{sc}{
+ <-> ssub * LibertinusSans-TOsF/b/sc
}{}
-\DeclareFontShape{T2C}{LibertinusSans-TOsF}{bx}{scit}{
- <-> ssub * LibertinusSans-TOsF/b/scit
+\DeclareFontShape{T2C}{LibertinusSans-TOsF}{bx}{n}{
+ <-> ssub * LibertinusSans-TOsF/b/n
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-LF.fd
index cec46eb7fbb..21cd0e6a545 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-LF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2CLibertinusSerif-LF.fd}
- [2022/11/07 (autoinst) Font definitions for T2C/LibertinusSerif-LF.]
+ [2024/09/22 (autoinst) Font definitions for T2C/LibertinusSerif-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,67 +20,59 @@
\DeclareFontFamily{T2C}{LibertinusSerif-LF}{}
-% ---- m = regular ----
+% ---- sb = semibold ----
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{regular}{n}{
- <-> alias * LibertinusSerif-LF/m/n
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{semibold}{n}{
+ <-> alias * LibertinusSerif-LF/sb/n
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-sc-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{regular}{scit}{
- <-> alias * LibertinusSerif-LF/m/scit
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-LF/sb/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{regular}{it}{
- <-> alias * LibertinusSerif-LF/m/it
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-LF/sb/sc
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-sc-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{regular}{sc}{
- <-> alias * LibertinusSerif-LF/m/sc
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{semibold}{it}{
+ <-> alias * LibertinusSerif-LF/sb/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{m}{sl}{
- <-> ssub * LibertinusSerif-LF/m/it
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-LF/sb/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{regular}{sl}{
- <-> ssub * LibertinusSerif-LF/regular/it
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-LF/semibold/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{m}{scsl}{
- <-> ssub * LibertinusSerif-LF/m/scit
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-LF/sb/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-LF/regular/scit
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-LF/semibold/it
}{}
% ---- b = bold ----
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-sc-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{bold}{sc}{
- <-> alias * LibertinusSerif-LF/b/sc
-}{}
-
\DeclareFontShape{T2C}{LibertinusSerif-LF}{b}{it}{
<-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-t2c
}{}
@@ -89,14 +81,6 @@
<-> alias * LibertinusSerif-LF/b/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{bold}{n}{
- <-> alias * LibertinusSerif-LF/b/n
-}{}
-
\DeclareFontShape{T2C}{LibertinusSerif-LF}{b}{scit}{
<-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-sc-t2c
}{}
@@ -105,12 +89,20 @@
<-> alias * LibertinusSerif-LF/b/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{b}{sl}{
- <-> ssub * LibertinusSerif-LF/b/it
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{bold}{sl}{
- <-> ssub * LibertinusSerif-LF/bold/it
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{bold}{sc}{
+ <-> alias * LibertinusSerif-LF/b/sc
+}{}
+
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-t2c
+}{}
+
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{bold}{n}{
+ <-> alias * LibertinusSerif-LF/b/n
}{}
\DeclareFontShape{T2C}{LibertinusSerif-LF}{b}{scsl}{
@@ -121,82 +113,90 @@
<-> ssub * LibertinusSerif-LF/bold/scit
}{}
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{b}{sl}{
+ <-> ssub * LibertinusSerif-LF/b/it
+}{}
-% ---- sb = semibold ----
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-LF/bold/it
+}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-sc-t2c
+
+% ---- m = regular ----
+
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{semibold}{sc}{
- <-> alias * LibertinusSerif-LF/sb/sc
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{regular}{n}{
+ <-> alias * LibertinusSerif-LF/m/n
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{semibold}{it}{
- <-> alias * LibertinusSerif-LF/sb/it
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{regular}{scit}{
+ <-> alias * LibertinusSerif-LF/m/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-lf-sc-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-lf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{semibold}{scit}{
- <-> alias * LibertinusSerif-LF/sb/scit
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{regular}{sc}{
+ <-> alias * LibertinusSerif-LF/m/sc
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-lf-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-lf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{semibold}{n}{
- <-> alias * LibertinusSerif-LF/sb/n
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{regular}{it}{
+ <-> alias * LibertinusSerif-LF/m/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{sb}{sl}{
- <-> ssub * LibertinusSerif-LF/sb/it
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-LF/m/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-LF/semibold/it
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-LF/regular/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-LF/sb/scit
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{m}{sl}{
+ <-> ssub * LibertinusSerif-LF/m/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-LF/semibold/scit
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-LF/regular/it
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{bx}{it}{
- <-> ssub * LibertinusSerif-LF/b/it
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{bx}{n}{
+ <-> ssub * LibertinusSerif-LF/b/n
}{}
\DeclareFontShape{T2C}{LibertinusSerif-LF}{bx}{scit}{
<-> ssub * LibertinusSerif-LF/b/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{bx}{n}{
- <-> ssub * LibertinusSerif-LF/b/n
-}{}
-
\DeclareFontShape{T2C}{LibertinusSerif-LF}{bx}{scsl}{
<-> ssub * LibertinusSerif-LF/b/scsl
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-LF}{bx}{sc}{
- <-> ssub * LibertinusSerif-LF/b/sc
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{bx}{it}{
+ <-> ssub * LibertinusSerif-LF/b/it
}{}
\DeclareFontShape{T2C}{LibertinusSerif-LF}{bx}{sl}{
<-> ssub * LibertinusSerif-LF/b/sl
}{}
+\DeclareFontShape{T2C}{LibertinusSerif-LF}{bx}{sc}{
+ <-> ssub * LibertinusSerif-LF/b/sc
+}{}
+
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-OsF.fd
index 6a9738dfa22..284730fa4e8 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-OsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2CLibertinusSerif-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for T2C/LibertinusSerif-OsF.]
+ [2024/09/22 (autoinst) Font definitions for T2C/LibertinusSerif-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,175 +20,175 @@
\DeclareFontFamily{T2C}{LibertinusSerif-OsF}{}
-% ---- b = bold ----
+% ---- m = regular ----
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-sc-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bold}{sc}{
- <-> alias * LibertinusSerif-OsF/b/sc
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{regular}{scit}{
+ <-> alias * LibertinusSerif-OsF/m/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{b}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-sc-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bold}{scit}{
- <-> alias * LibertinusSerif-OsF/b/scit
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{regular}{sc}{
+ <-> alias * LibertinusSerif-OsF/m/sc
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bold}{n}{
- <-> alias * LibertinusSerif-OsF/b/n
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{regular}{n}{
+ <-> alias * LibertinusSerif-OsF/m/n
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bold}{it}{
- <-> alias * LibertinusSerif-OsF/b/it
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{regular}{it}{
+ <-> alias * LibertinusSerif-OsF/m/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{b}{sl}{
- <-> ssub * LibertinusSerif-OsF/b/it
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/m/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bold}{sl}{
- <-> ssub * LibertinusSerif-OsF/bold/it
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/regular/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{b}{scsl}{
- <-> ssub * LibertinusSerif-OsF/b/scit
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{m}{sl}{
+ <-> ssub * LibertinusSerif-OsF/m/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bold}{scsl}{
- <-> ssub * LibertinusSerif-OsF/bold/scit
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-OsF/regular/it
}{}
-% ---- m = regular ----
+% ---- sb = semibold ----
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-sc-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{regular}{sc}{
- <-> alias * LibertinusSerif-OsF/m/sc
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{semibold}{it}{
+ <-> alias * LibertinusSerif-OsF/sb/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{regular}{it}{
- <-> alias * LibertinusSerif-OsF/m/it
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-OsF/sb/sc
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-osf-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{regular}{n}{
- <-> alias * LibertinusSerif-OsF/m/n
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-OsF/sb/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-osf-sc-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{regular}{scit}{
- <-> alias * LibertinusSerif-OsF/m/scit
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{semibold}{n}{
+ <-> alias * LibertinusSerif-OsF/sb/n
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{m}{sl}{
- <-> ssub * LibertinusSerif-OsF/m/it
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/sb/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{regular}{sl}{
- <-> ssub * LibertinusSerif-OsF/regular/it
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/semibold/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{m}{scsl}{
- <-> ssub * LibertinusSerif-OsF/m/scit
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-OsF/sb/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-OsF/regular/scit
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-OsF/semibold/it
}{}
-% ---- sb = semibold ----
+% ---- b = bold ----
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-sc-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{semibold}{sc}{
- <-> alias * LibertinusSerif-OsF/sb/sc
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bold}{it}{
+ <-> alias * LibertinusSerif-OsF/b/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{semibold}{n}{
- <-> alias * LibertinusSerif-OsF/sb/n
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bold}{sc}{
+ <-> alias * LibertinusSerif-OsF/b/sc
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-sc-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{b}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{semibold}{scit}{
- <-> alias * LibertinusSerif-OsF/sb/scit
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bold}{scit}{
+ <-> alias * LibertinusSerif-OsF/b/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{semibold}{it}{
- <-> alias * LibertinusSerif-OsF/sb/it
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bold}{n}{
+ <-> alias * LibertinusSerif-OsF/b/n
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{sb}{sl}{
- <-> ssub * LibertinusSerif-OsF/sb/it
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{b}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/b/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-OsF/semibold/it
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bold}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/bold/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-OsF/sb/scit
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{b}{sl}{
+ <-> ssub * LibertinusSerif-OsF/b/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-OsF/semibold/scit
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-OsF/bold/it
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bx}{it}{
- <-> ssub * LibertinusSerif-OsF/b/it
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bx}{scsl}{
+ <-> ssub * LibertinusSerif-OsF/b/scsl
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bx}{scit}{
- <-> ssub * LibertinusSerif-OsF/b/scit
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bx}{it}{
+ <-> ssub * LibertinusSerif-OsF/b/it
}{}
\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bx}{n}{
<-> ssub * LibertinusSerif-OsF/b/n
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bx}{scsl}{
- <-> ssub * LibertinusSerif-OsF/b/scsl
+\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bx}{scit}{
+ <-> ssub * LibertinusSerif-OsF/b/scit
}{}
\DeclareFontShape{T2C}{LibertinusSerif-OsF}{bx}{sl}{
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-Sup.fd
index b05bbead11e..031ba1720db 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-Sup.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-Sup.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2CLibertinusSerif-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for T2C/LibertinusSerif-Sup.]
+ [2024/09/22 (autoinst) Font definitions for T2C/LibertinusSerif-Sup.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -47,62 +47,66 @@
}{}
-% ---- b = bold ----
+% ---- sb = semibold ----
-\DeclareFontShape{T2C}{LibertinusSerif-Sup}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-sup-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-Sup}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-sup-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-Sup}{bold}{n}{
- <-> alias * LibertinusSerif-Sup/b/n
+\DeclareFontShape{T2C}{LibertinusSerif-Sup}{semibold}{it}{
+ <-> alias * LibertinusSerif-Sup/sb/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-Sup}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-sup-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-Sup}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-sup-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-Sup}{bold}{it}{
- <-> alias * LibertinusSerif-Sup/b/it
+\DeclareFontShape{T2C}{LibertinusSerif-Sup}{semibold}{n}{
+ <-> alias * LibertinusSerif-Sup/sb/n
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-Sup}{b}{sl}{
- <-> ssub * LibertinusSerif-Sup/b/it
+\DeclareFontShape{T2C}{LibertinusSerif-Sup}{sb}{sl}{
+ <-> ssub * LibertinusSerif-Sup/sb/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-Sup}{bold}{sl}{
- <-> ssub * LibertinusSerif-Sup/bold/it
+\DeclareFontShape{T2C}{LibertinusSerif-Sup}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-Sup/semibold/it
}{}
-% ---- sb = semibold ----
+% ---- b = bold ----
-\DeclareFontShape{T2C}{LibertinusSerif-Sup}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-sup-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-Sup}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-sup-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-Sup}{semibold}{it}{
- <-> alias * LibertinusSerif-Sup/sb/it
+\DeclareFontShape{T2C}{LibertinusSerif-Sup}{bold}{it}{
+ <-> alias * LibertinusSerif-Sup/b/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-Sup}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-sup-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-Sup}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-sup-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-Sup}{semibold}{n}{
- <-> alias * LibertinusSerif-Sup/sb/n
+\DeclareFontShape{T2C}{LibertinusSerif-Sup}{bold}{n}{
+ <-> alias * LibertinusSerif-Sup/b/n
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-Sup}{sb}{sl}{
- <-> ssub * LibertinusSerif-Sup/sb/it
+\DeclareFontShape{T2C}{LibertinusSerif-Sup}{b}{sl}{
+ <-> ssub * LibertinusSerif-Sup/b/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-Sup}{semibold}{sl}{
- <-> ssub * LibertinusSerif-Sup/semibold/it
+\DeclareFontShape{T2C}{LibertinusSerif-Sup}{bold}{sl}{
+ <-> ssub * LibertinusSerif-Sup/bold/it
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+\DeclareFontShape{T2C}{LibertinusSerif-Sup}{bx}{n}{
+ <-> ssub * LibertinusSerif-Sup/b/n
+}{}
+
\DeclareFontShape{T2C}{LibertinusSerif-Sup}{bx}{sl}{
<-> ssub * LibertinusSerif-Sup/b/sl
}{}
@@ -111,8 +115,4 @@
<-> ssub * LibertinusSerif-Sup/b/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-Sup}{bx}{n}{
- <-> ssub * LibertinusSerif-Sup/b/n
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-TLF.fd
index 2859d534551..09408904d01 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2CLibertinusSerif-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for T2C/LibertinusSerif-TLF.]
+ [2024/09/22 (autoinst) Font definitions for T2C/LibertinusSerif-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,65 +20,14 @@
\DeclareFontFamily{T2C}{LibertinusSerif-TLF}{}
-% ---- sb = semibold ----
-
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-sc-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{semibold}{scit}{
- <-> alias * LibertinusSerif-TLF/sb/scit
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{semibold}{n}{
- <-> alias * LibertinusSerif-TLF/sb/n
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{semibold}{it}{
- <-> alias * LibertinusSerif-TLF/sb/it
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-sc-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{semibold}{sc}{
- <-> alias * LibertinusSerif-TLF/sb/sc
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{sb}{sl}{
- <-> ssub * LibertinusSerif-TLF/sb/it
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-TLF/semibold/it
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-TLF/sb/scit
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-TLF/semibold/scit
-}{}
-
-
% ---- m = regular ----
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{regular}{it}{
- <-> alias * LibertinusSerif-TLF/m/it
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{regular}{n}{
+ <-> alias * LibertinusSerif-TLF/m/n
}{}
\DeclareFontShape{T2C}{LibertinusSerif-TLF}{m}{scit}{
@@ -89,14 +38,6 @@
<-> alias * LibertinusSerif-TLF/m/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{regular}{n}{
- <-> alias * LibertinusSerif-TLF/m/n
-}{}
-
\DeclareFontShape{T2C}{LibertinusSerif-TLF}{m}{sc}{
<-> \LibertinusSerif@@scale LibertinusSerif-Regular-tlf-sc-t2c
}{}
@@ -105,12 +46,12 @@
<-> alias * LibertinusSerif-TLF/m/sc
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{m}{sl}{
- <-> ssub * LibertinusSerif-TLF/m/it
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tlf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{regular}{sl}{
- <-> ssub * LibertinusSerif-TLF/regular/it
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{regular}{it}{
+ <-> alias * LibertinusSerif-TLF/m/it
}{}
\DeclareFontShape{T2C}{LibertinusSerif-TLF}{m}{scsl}{
@@ -121,6 +62,14 @@
<-> ssub * LibertinusSerif-TLF/regular/scit
}{}
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{m}{sl}{
+ <-> ssub * LibertinusSerif-TLF/m/it
+}{}
+
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-TLF/regular/it
+}{}
+
% ---- b = bold ----
@@ -140,6 +89,14 @@
<-> alias * LibertinusSerif-TLF/b/scit
}{}
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-sc-t2c
+}{}
+
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{bold}{sc}{
+ <-> alias * LibertinusSerif-TLF/b/sc
+}{}
+
\DeclareFontShape{T2C}{LibertinusSerif-TLF}{b}{it}{
<-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tlf-t2c
}{}
@@ -148,12 +105,12 @@
<-> alias * LibertinusSerif-TLF/b/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-sc-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{b}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/b/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{bold}{sc}{
- <-> alias * LibertinusSerif-TLF/b/sc
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{bold}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/bold/scit
}{}
\DeclareFontShape{T2C}{LibertinusSerif-TLF}{b}{sl}{
@@ -164,39 +121,82 @@
<-> ssub * LibertinusSerif-TLF/bold/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{b}{scsl}{
- <-> ssub * LibertinusSerif-TLF/b/scit
+
+% ---- sb = semibold ----
+
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{bold}{scsl}{
- <-> ssub * LibertinusSerif-TLF/bold/scit
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{semibold}{it}{
+ <-> alias * LibertinusSerif-TLF/sb/it
+}{}
+
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-sc-t2c
+}{}
+
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-TLF/sb/scit
+}{}
+
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-sc-t2c
+}{}
+
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-TLF/sb/sc
+}{}
+
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-t2c
+}{}
+
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{semibold}{n}{
+ <-> alias * LibertinusSerif-TLF/sb/n
+}{}
+
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/sb/scit
+}{}
+
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/semibold/scit
+}{}
+
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-TLF/sb/it
+}{}
+
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-TLF/semibold/it
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{bx}{sl}{
- <-> ssub * LibertinusSerif-TLF/b/sl
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{bx}{scit}{
+ <-> ssub * LibertinusSerif-TLF/b/scit
}{}
\DeclareFontShape{T2C}{LibertinusSerif-TLF}{bx}{sc}{
<-> ssub * LibertinusSerif-TLF/b/sc
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{bx}{scsl}{
- <-> ssub * LibertinusSerif-TLF/b/scsl
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{bx}{sl}{
+ <-> ssub * LibertinusSerif-TLF/b/sl
}{}
\DeclareFontShape{T2C}{LibertinusSerif-TLF}{bx}{n}{
<-> ssub * LibertinusSerif-TLF/b/n
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TLF}{bx}{scit}{
- <-> ssub * LibertinusSerif-TLF/b/scit
-}{}
-
\DeclareFontShape{T2C}{LibertinusSerif-TLF}{bx}{it}{
<-> ssub * LibertinusSerif-TLF/b/it
}{}
+\DeclareFontShape{T2C}{LibertinusSerif-TLF}{bx}{scsl}{
+ <-> ssub * LibertinusSerif-TLF/b/scsl
+}{}
+
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-TOsF.fd
index d1c799135c8..6672738dff5 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerif-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{T2CLibertinusSerif-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for T2C/LibertinusSerif-TOsF.]
+ [2024/09/22 (autoinst) Font definitions for T2C/LibertinusSerif-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,173 +20,177 @@
\DeclareFontFamily{T2C}{LibertinusSerif-TOsF}{}
-% ---- sb = semibold ----
+% ---- m = regular ----
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{sb}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-sc-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{m}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{semibold}{sc}{
- <-> alias * LibertinusSerif-TOsF/sb/sc
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{regular}{it}{
+ <-> alias * LibertinusSerif-TOsF/m/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{m}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{semibold}{n}{
- <-> alias * LibertinusSerif-TOsF/sb/n
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{regular}{scit}{
+ <-> alias * LibertinusSerif-TOsF/m/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{sb}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-sc-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{m}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{semibold}{scit}{
- <-> alias * LibertinusSerif-TOsF/sb/scit
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{regular}{sc}{
+ <-> alias * LibertinusSerif-TOsF/m/sc
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{m}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{semibold}{it}{
- <-> alias * LibertinusSerif-TOsF/sb/it
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{regular}{n}{
+ <-> alias * LibertinusSerif-TOsF/m/n
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{sb}{sl}{
- <-> ssub * LibertinusSerif-TOsF/sb/it
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{m}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/m/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-TOsF/semibold/it
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{regular}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/regular/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{sb}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/sb/scit
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{m}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/m/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{semibold}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/semibold/scit
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{regular}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/regular/it
}{}
-% ---- b = bold ----
+% ---- sb = semibold ----
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{bold}{it}{
- <-> alias * LibertinusSerif-TOsF/b/it
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{semibold}{n}{
+ <-> alias * LibertinusSerif-TOsF/sb/n
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{b}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-sc-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{sb}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{bold}{scit}{
- <-> alias * LibertinusSerif-TOsF/b/scit
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{semibold}{scit}{
+ <-> alias * LibertinusSerif-TOsF/sb/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{sb}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{bold}{n}{
- <-> alias * LibertinusSerif-TOsF/b/n
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{semibold}{sc}{
+ <-> alias * LibertinusSerif-TOsF/sb/sc
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{b}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-sc-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{bold}{sc}{
- <-> alias * LibertinusSerif-TOsF/b/sc
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{semibold}{it}{
+ <-> alias * LibertinusSerif-TOsF/sb/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{b}{sl}{
- <-> ssub * LibertinusSerif-TOsF/b/it
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{sb}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/sb/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{bold}{sl}{
- <-> ssub * LibertinusSerif-TOsF/bold/it
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{semibold}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/semibold/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{b}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/b/scit
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/sb/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{bold}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/bold/scit
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/semibold/it
}{}
-% ---- m = regular ----
+% ---- b = bold ----
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{m}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{b}{sc}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{regular}{n}{
- <-> alias * LibertinusSerif-TOsF/m/n
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{bold}{sc}{
+ <-> alias * LibertinusSerif-TOsF/b/sc
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{m}{scit}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-sc-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{b}{scit}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-sc-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{regular}{scit}{
- <-> alias * LibertinusSerif-TOsF/m/scit
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{bold}{scit}{
+ <-> alias * LibertinusSerif-TOsF/b/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{m}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Italic-tosf-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{regular}{it}{
- <-> alias * LibertinusSerif-TOsF/m/it
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{bold}{n}{
+ <-> alias * LibertinusSerif-TOsF/b/n
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{m}{sc}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Regular-tosf-sc-t2c
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-t2c
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{regular}{sc}{
- <-> alias * LibertinusSerif-TOsF/m/sc
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{bold}{it}{
+ <-> alias * LibertinusSerif-TOsF/b/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{m}{sl}{
- <-> ssub * LibertinusSerif-TOsF/m/it
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{b}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/b/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{regular}{sl}{
- <-> ssub * LibertinusSerif-TOsF/regular/it
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{bold}{scsl}{
+ <-> ssub * LibertinusSerif-TOsF/bold/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{m}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/m/scit
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{b}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/b/it
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{regular}{scsl}{
- <-> ssub * LibertinusSerif-TOsF/regular/scit
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/bold/it
}{}
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{bx}{sl}{
- <-> ssub * LibertinusSerif-TOsF/b/sl
-}{}
-
\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{bx}{sc}{
<-> ssub * LibertinusSerif-TOsF/b/sc
}{}
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{bx}{sl}{
+ <-> ssub * LibertinusSerif-TOsF/b/sl
+}{}
+
\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{bx}{scsl}{
<-> ssub * LibertinusSerif-TOsF/b/scsl
}{}
+\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{bx}{it}{
+ <-> ssub * LibertinusSerif-TOsF/b/it
+}{}
+
\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{bx}{n}{
<-> ssub * LibertinusSerif-TOsF/b/n
}{}
@@ -195,8 +199,4 @@
<-> ssub * LibertinusSerif-TOsF/b/scit
}{}
-\DeclareFontShape{T2C}{LibertinusSerif-TOsF}{bx}{it}{
- <-> ssub * LibertinusSerif-TOsF/b/it
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-LF.fd
deleted file mode 100644
index 76a2621167d..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-LF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T2CLibertinusSerifDisplay-LF.fd}
- [2022/11/07 (autoinst) Font definitions for T2C/LibertinusSerifDisplay-LF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T2C}{LibertinusSerifDisplay-LF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T2C}{LibertinusSerifDisplay-LF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-lf-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerifDisplay-LF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-LF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-OsF.fd
deleted file mode 100644
index b8fd91ab984..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-OsF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T2CLibertinusSerifDisplay-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for T2C/LibertinusSerifDisplay-OsF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T2C}{LibertinusSerifDisplay-OsF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T2C}{LibertinusSerifDisplay-OsF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-osf-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerifDisplay-OsF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-OsF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-Sup.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-Sup.fd
deleted file mode 100644
index 49ccd52ed64..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-Sup.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T2CLibertinusSerifDisplay-Sup.fd}
- [2022/11/07 (autoinst) Font definitions for T2C/LibertinusSerifDisplay-Sup.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T2C}{LibertinusSerifDisplay-Sup}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T2C}{LibertinusSerifDisplay-Sup}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-sup-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerifDisplay-Sup}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-Sup/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-TLF.fd
deleted file mode 100644
index c87ad846a03..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-TLF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T2CLibertinusSerifDisplay-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for T2C/LibertinusSerifDisplay-TLF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T2C}{LibertinusSerifDisplay-TLF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T2C}{LibertinusSerifDisplay-TLF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-tlf-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerifDisplay-TLF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-TLF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-TOsF.fd
deleted file mode 100644
index ddbafaf8d8a..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifDisplay-TOsF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T2CLibertinusSerifDisplay-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for T2C/LibertinusSerifDisplay-TOsF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T2C}{LibertinusSerifDisplay-TOsF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T2C}{LibertinusSerifDisplay-TOsF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-tosf-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerifDisplay-TOsF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-TOsF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifInitials-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifInitials-TLF.fd
deleted file mode 100644
index 022bc9059a2..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/T2CLibertinusSerifInitials-TLF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{T2CLibertinusSerifInitials-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for T2C/LibertinusSerifInitials-TLF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifInitials@scale\endcsname\relax
- \let\LibertinusSerifInitials@@scale\@empty
-\else
- \edef\LibertinusSerifInitials@@scale{s*[\csname LibertinusSerifInitials@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{T2C}{LibertinusSerifInitials-TLF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{T2C}{LibertinusSerifInitials-TLF}{m}{n}{
- <-> \LibertinusSerifInitials@@scale LibertinusSerifInitials-Regular-tlf-t2c
-}{}
-
-\DeclareFontShape{T2C}{LibertinusSerifInitials-TLF}{regular}{n}{
- <-> alias * LibertinusSerifInitials-TLF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusMono-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusMono-TLF.fd
index c2a92fbe304..0ac2b3b4f9c 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusMono-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusMono-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{TS1LibertinusMono-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for TS1/LibertinusMono-TLF.]
+ [2024/09/22 (autoinst) Font definitions for TS1/LibertinusMono-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,33 +20,6 @@
\DeclareFontFamily{TS1}{LibertinusMono-TLF}{\hyphenchar\font=-1}
-% ---- b = bold ----
-
-\DeclareFontShape{TS1}{LibertinusMono-TLF}{b}{sl}{
- <-> \LibertinusMono@@scale LibertinusMono-BoldOblique-tlf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusMono-TLF}{bold}{sl}{
- <-> alias * LibertinusMono-TLF/b/sl
-}{}
-
-\DeclareFontShape{TS1}{LibertinusMono-TLF}{b}{n}{
- <-> \LibertinusMono@@scale LibertinusMono-Bold-tlf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusMono-TLF}{bold}{n}{
- <-> alias * LibertinusMono-TLF/b/n
-}{}
-
-\DeclareFontShape{TS1}{LibertinusMono-TLF}{b}{it}{
- <-> ssub * LibertinusMono-TLF/b/sl
-}{}
-
-\DeclareFontShape{TS1}{LibertinusMono-TLF}{bold}{it}{
- <-> ssub * LibertinusMono-TLF/bold/sl
-}{}
-
-
% ---- m = regular ----
\DeclareFontShape{TS1}{LibertinusMono-TLF}{m}{n}{
@@ -57,35 +30,7 @@
<-> alias * LibertinusMono-TLF/m/n
}{}
-\DeclareFontShape{TS1}{LibertinusMono-TLF}{m}{sl}{
- <-> \LibertinusMono@@scale LibertinusMono-Oblique-tlf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusMono-TLF}{regular}{sl}{
- <-> alias * LibertinusMono-TLF/m/sl
-}{}
-
-\DeclareFontShape{TS1}{LibertinusMono-TLF}{m}{it}{
- <-> ssub * LibertinusMono-TLF/m/sl
-}{}
-
-\DeclareFontShape{TS1}{LibertinusMono-TLF}{regular}{it}{
- <-> ssub * LibertinusMono-TLF/regular/sl
-}{}
-
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{TS1}{LibertinusMono-TLF}{bx}{it}{
- <-> ssub * LibertinusMono-TLF/b/it
-}{}
-
-\DeclareFontShape{TS1}{LibertinusMono-TLF}{bx}{n}{
- <-> ssub * LibertinusMono-TLF/b/n
-}{}
-
-\DeclareFontShape{TS1}{LibertinusMono-TLF}{bx}{sl}{
- <-> ssub * LibertinusMono-TLF/b/sl
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-LF.fd
index 31df8f6be77..e8e5f46bceb 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-LF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{TS1LibertinusSans-LF.fd}
- [2022/11/07 (autoinst) Font definitions for TS1/LibertinusSans-LF.]
+ [2024/09/22 (autoinst) Font definitions for TS1/LibertinusSans-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,35 +20,16 @@
\DeclareFontFamily{TS1}{LibertinusSans-LF}{}
-% ---- b = bold ----
-
-\DeclareFontShape{TS1}{LibertinusSans-LF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-lf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSans-LF}{bold}{sl}{
- <-> alias * LibertinusSans-LF/b/sl
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSans-LF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSans-LF}{bold}{n}{
- <-> alias * LibertinusSans-LF/b/n
-}{}
+% ---- m = regular ----
-\DeclareFontShape{TS1}{LibertinusSans-LF}{b}{it}{
- <-> ssub * LibertinusSans-LF/b/sl
+\DeclareFontShape{TS1}{LibertinusSans-LF}{m}{it}{
+ <-> \LibertinusSans@@scale LibertinusSans-Italic-lf-ts1
}{}
-\DeclareFontShape{TS1}{LibertinusSans-LF}{bold}{it}{
- <-> ssub * LibertinusSans-LF/bold/sl
+\DeclareFontShape{TS1}{LibertinusSans-LF}{regular}{it}{
+ <-> alias * LibertinusSans-LF/m/it
}{}
-
-% ---- m = regular ----
-
\DeclareFontShape{TS1}{LibertinusSans-LF}{m}{n}{
<-> \LibertinusSans@@scale LibertinusSans-Regular-lf-ts1
}{}
@@ -57,14 +38,6 @@
<-> alias * LibertinusSans-LF/m/n
}{}
-\DeclareFontShape{TS1}{LibertinusSans-LF}{m}{it}{
- <-> \LibertinusSans@@scale LibertinusSans-Italic-lf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSans-LF}{regular}{it}{
- <-> alias * LibertinusSans-LF/m/it
-}{}
-
\DeclareFontShape{TS1}{LibertinusSans-LF}{m}{sl}{
<-> ssub * LibertinusSans-LF/m/it
}{}
@@ -74,16 +47,19 @@
}{}
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+% ---- b = bold ----
-\DeclareFontShape{TS1}{LibertinusSans-LF}{bx}{it}{
- <-> ssub * LibertinusSans-LF/b/it
+\DeclareFontShape{TS1}{LibertinusSans-LF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-lf-ts1
}{}
-\DeclareFontShape{TS1}{LibertinusSans-LF}{bx}{sl}{
- <-> ssub * LibertinusSans-LF/b/sl
+\DeclareFontShape{TS1}{LibertinusSans-LF}{bold}{n}{
+ <-> alias * LibertinusSans-LF/b/n
}{}
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
\DeclareFontShape{TS1}{LibertinusSans-LF}{bx}{n}{
<-> ssub * LibertinusSans-LF/b/n
}{}
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-OsF.fd
index 7f012e77dab..d51210d6357 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-OsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{TS1LibertinusSans-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for TS1/LibertinusSans-OsF.]
+ [2024/09/22 (autoinst) Font definitions for TS1/LibertinusSans-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,14 +22,6 @@
% ---- m = regular ----
-\DeclareFontShape{TS1}{LibertinusSans-OsF}{m}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Regular-osf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSans-OsF}{regular}{n}{
- <-> alias * LibertinusSans-OsF/m/n
-}{}
-
\DeclareFontShape{TS1}{LibertinusSans-OsF}{m}{it}{
<-> \LibertinusSans@@scale LibertinusSans-Italic-osf-ts1
}{}
@@ -38,6 +30,14 @@
<-> alias * LibertinusSans-OsF/m/it
}{}
+\DeclareFontShape{TS1}{LibertinusSans-OsF}{m}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Regular-osf-ts1
+}{}
+
+\DeclareFontShape{TS1}{LibertinusSans-OsF}{regular}{n}{
+ <-> alias * LibertinusSans-OsF/m/n
+}{}
+
\DeclareFontShape{TS1}{LibertinusSans-OsF}{m}{sl}{
<-> ssub * LibertinusSans-OsF/m/it
}{}
@@ -57,35 +57,11 @@
<-> alias * LibertinusSans-OsF/b/n
}{}
-\DeclareFontShape{TS1}{LibertinusSans-OsF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-osf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSans-OsF}{bold}{sl}{
- <-> alias * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSans-OsF}{b}{it}{
- <-> ssub * LibertinusSans-OsF/b/sl
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSans-OsF}{bold}{it}{
- <-> ssub * LibertinusSans-OsF/bold/sl
-}{}
-
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{TS1}{LibertinusSans-OsF}{bx}{it}{
- <-> ssub * LibertinusSans-OsF/b/it
-}{}
-
\DeclareFontShape{TS1}{LibertinusSans-OsF}{bx}{n}{
<-> ssub * LibertinusSans-OsF/b/n
}{}
-\DeclareFontShape{TS1}{LibertinusSans-OsF}{bx}{sl}{
- <-> ssub * LibertinusSans-OsF/b/sl
-}{}
-
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-TLF.fd
index 61e2f2cea9c..07f719efac2 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{TS1LibertinusSans-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for TS1/LibertinusSans-TLF.]
+ [2024/09/22 (autoinst) Font definitions for TS1/LibertinusSans-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,33 +20,6 @@
\DeclareFontFamily{TS1}{LibertinusSans-TLF}{}
-% ---- b = bold ----
-
-\DeclareFontShape{TS1}{LibertinusSans-TLF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tlf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSans-TLF}{bold}{sl}{
- <-> alias * LibertinusSans-TLF/b/sl
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSans-TLF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSans-TLF}{bold}{n}{
- <-> alias * LibertinusSans-TLF/b/n
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSans-TLF}{b}{it}{
- <-> ssub * LibertinusSans-TLF/b/sl
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSans-TLF}{bold}{it}{
- <-> ssub * LibertinusSans-TLF/bold/sl
-}{}
-
-
% ---- m = regular ----
\DeclareFontShape{TS1}{LibertinusSans-TLF}{m}{n}{
@@ -74,16 +47,19 @@
}{}
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+% ---- b = bold ----
-\DeclareFontShape{TS1}{LibertinusSans-TLF}{bx}{it}{
- <-> ssub * LibertinusSans-TLF/b/it
+\DeclareFontShape{TS1}{LibertinusSans-TLF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-tlf-ts1
}{}
-\DeclareFontShape{TS1}{LibertinusSans-TLF}{bx}{sl}{
- <-> ssub * LibertinusSans-TLF/b/sl
+\DeclareFontShape{TS1}{LibertinusSans-TLF}{bold}{n}{
+ <-> alias * LibertinusSans-TLF/b/n
}{}
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
\DeclareFontShape{TS1}{LibertinusSans-TLF}{bx}{n}{
<-> ssub * LibertinusSans-TLF/b/n
}{}
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-TOsF.fd
index ac6407d56ec..ac4da99f41e 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSans-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{TS1LibertinusSans-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for TS1/LibertinusSans-TOsF.]
+ [2024/09/22 (autoinst) Font definitions for TS1/LibertinusSans-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,33 +20,6 @@
\DeclareFontFamily{TS1}{LibertinusSans-TOsF}{}
-% ---- b = bold ----
-
-\DeclareFontShape{TS1}{LibertinusSans-TOsF}{b}{sl}{
- <-> \LibertinusSans@@scale LibertinusSans-BoldOblique-tosf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSans-TOsF}{bold}{sl}{
- <-> alias * LibertinusSans-TOsF/b/sl
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSans-TOsF}{b}{n}{
- <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSans-TOsF}{bold}{n}{
- <-> alias * LibertinusSans-TOsF/b/n
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSans-TOsF}{b}{it}{
- <-> ssub * LibertinusSans-TOsF/b/sl
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSans-TOsF}{bold}{it}{
- <-> ssub * LibertinusSans-TOsF/bold/sl
-}{}
-
-
% ---- m = regular ----
\DeclareFontShape{TS1}{LibertinusSans-TOsF}{m}{n}{
@@ -74,18 +47,21 @@
}{}
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+% ---- b = bold ----
-\DeclareFontShape{TS1}{LibertinusSans-TOsF}{bx}{it}{
- <-> ssub * LibertinusSans-TOsF/b/it
+\DeclareFontShape{TS1}{LibertinusSans-TOsF}{b}{n}{
+ <-> \LibertinusSans@@scale LibertinusSans-Bold-tosf-ts1
}{}
-\DeclareFontShape{TS1}{LibertinusSans-TOsF}{bx}{n}{
- <-> ssub * LibertinusSans-TOsF/b/n
+\DeclareFontShape{TS1}{LibertinusSans-TOsF}{bold}{n}{
+ <-> alias * LibertinusSans-TOsF/b/n
}{}
-\DeclareFontShape{TS1}{LibertinusSans-TOsF}{bx}{sl}{
- <-> ssub * LibertinusSans-TOsF/b/sl
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{TS1}{LibertinusSans-TOsF}{bx}{n}{
+ <-> ssub * LibertinusSans-TOsF/b/n
}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-LF.fd
index 57a9bde0b0e..9ca671dbe96 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-LF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-LF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{TS1LibertinusSerif-LF.fd}
- [2022/11/07 (autoinst) Font definitions for TS1/LibertinusSerif-LF.]
+ [2024/09/22 (autoinst) Font definitions for TS1/LibertinusSerif-LF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -49,14 +49,6 @@
% ---- b = bold ----
-\DeclareFontShape{TS1}{LibertinusSerif-LF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSerif-LF}{bold}{it}{
- <-> alias * LibertinusSerif-LF/b/it
-}{}
-
\DeclareFontShape{TS1}{LibertinusSerif-LF}{b}{n}{
<-> \LibertinusSerif@@scale LibertinusSerif-Bold-lf-ts1
}{}
@@ -65,6 +57,14 @@
<-> alias * LibertinusSerif-LF/b/n
}{}
+\DeclareFontShape{TS1}{LibertinusSerif-LF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-lf-ts1
+}{}
+
+\DeclareFontShape{TS1}{LibertinusSerif-LF}{bold}{it}{
+ <-> alias * LibertinusSerif-LF/b/it
+}{}
+
\DeclareFontShape{TS1}{LibertinusSerif-LF}{b}{sl}{
<-> ssub * LibertinusSerif-LF/b/it
}{}
@@ -103,10 +103,6 @@
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{TS1}{LibertinusSerif-LF}{bx}{sl}{
- <-> ssub * LibertinusSerif-LF/b/sl
-}{}
-
\DeclareFontShape{TS1}{LibertinusSerif-LF}{bx}{it}{
<-> ssub * LibertinusSerif-LF/b/it
}{}
@@ -115,4 +111,8 @@
<-> ssub * LibertinusSerif-LF/b/n
}{}
+\DeclareFontShape{TS1}{LibertinusSerif-LF}{bx}{sl}{
+ <-> ssub * LibertinusSerif-LF/b/sl
+}{}
+
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-OsF.fd
index a44478f9e7d..4958192fa88 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-OsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-OsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{TS1LibertinusSerif-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for TS1/LibertinusSerif-OsF.]
+ [2024/09/22 (autoinst) Font definitions for TS1/LibertinusSerif-OsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -20,33 +20,6 @@
\DeclareFontFamily{TS1}{LibertinusSerif-OsF}{}
-% ---- b = bold ----
-
-\DeclareFontShape{TS1}{LibertinusSerif-OsF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSerif-OsF}{bold}{n}{
- <-> alias * LibertinusSerif-OsF/b/n
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSerif-OsF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSerif-OsF}{bold}{it}{
- <-> alias * LibertinusSerif-OsF/b/it
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSerif-OsF}{b}{sl}{
- <-> ssub * LibertinusSerif-OsF/b/it
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSerif-OsF}{bold}{sl}{
- <-> ssub * LibertinusSerif-OsF/bold/it
-}{}
-
-
% ---- m = regular ----
\DeclareFontShape{TS1}{LibertinusSerif-OsF}{m}{n}{
@@ -76,14 +49,6 @@
% ---- sb = semibold ----
-\DeclareFontShape{TS1}{LibertinusSerif-OsF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSerif-OsF}{semibold}{it}{
- <-> alias * LibertinusSerif-OsF/sb/it
-}{}
-
\DeclareFontShape{TS1}{LibertinusSerif-OsF}{sb}{n}{
<-> \LibertinusSerif@@scale LibertinusSerif-Semibold-osf-ts1
}{}
@@ -92,6 +57,14 @@
<-> alias * LibertinusSerif-OsF/sb/n
}{}
+\DeclareFontShape{TS1}{LibertinusSerif-OsF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-osf-ts1
+}{}
+
+\DeclareFontShape{TS1}{LibertinusSerif-OsF}{semibold}{it}{
+ <-> alias * LibertinusSerif-OsF/sb/it
+}{}
+
\DeclareFontShape{TS1}{LibertinusSerif-OsF}{sb}{sl}{
<-> ssub * LibertinusSerif-OsF/sb/it
}{}
@@ -101,18 +74,45 @@
}{}
+% ---- b = bold ----
+
+\DeclareFontShape{TS1}{LibertinusSerif-OsF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-osf-ts1
+}{}
+
+\DeclareFontShape{TS1}{LibertinusSerif-OsF}{bold}{it}{
+ <-> alias * LibertinusSerif-OsF/b/it
+}{}
+
+\DeclareFontShape{TS1}{LibertinusSerif-OsF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-osf-ts1
+}{}
+
+\DeclareFontShape{TS1}{LibertinusSerif-OsF}{bold}{n}{
+ <-> alias * LibertinusSerif-OsF/b/n
+}{}
+
+\DeclareFontShape{TS1}{LibertinusSerif-OsF}{b}{sl}{
+ <-> ssub * LibertinusSerif-OsF/b/it
+}{}
+
+\DeclareFontShape{TS1}{LibertinusSerif-OsF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-OsF/bold/it
+}{}
+
+
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
\DeclareFontShape{TS1}{LibertinusSerif-OsF}{bx}{it}{
<-> ssub * LibertinusSerif-OsF/b/it
}{}
-\DeclareFontShape{TS1}{LibertinusSerif-OsF}{bx}{n}{
- <-> ssub * LibertinusSerif-OsF/b/n
-}{}
-
\DeclareFontShape{TS1}{LibertinusSerif-OsF}{bx}{sl}{
<-> ssub * LibertinusSerif-OsF/b/sl
}{}
+\DeclareFontShape{TS1}{LibertinusSerif-OsF}{bx}{n}{
+ <-> ssub * LibertinusSerif-OsF/b/n
+}{}
+
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-TLF.fd
index e055ddc164e..15b33224f5d 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-TLF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-TLF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{TS1LibertinusSerif-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for TS1/LibertinusSerif-TLF.]
+ [2024/09/22 (autoinst) Font definitions for TS1/LibertinusSerif-TLF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -47,57 +47,57 @@
}{}
-% ---- b = bold ----
+% ---- sb = semibold ----
-\DeclareFontShape{TS1}{LibertinusSerif-TLF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tlf-ts1
+\DeclareFontShape{TS1}{LibertinusSerif-TLF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-ts1
}{}
-\DeclareFontShape{TS1}{LibertinusSerif-TLF}{bold}{it}{
- <-> alias * LibertinusSerif-TLF/b/it
+\DeclareFontShape{TS1}{LibertinusSerif-TLF}{semibold}{it}{
+ <-> alias * LibertinusSerif-TLF/sb/it
}{}
-\DeclareFontShape{TS1}{LibertinusSerif-TLF}{b}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-ts1
+\DeclareFontShape{TS1}{LibertinusSerif-TLF}{sb}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-ts1
}{}
-\DeclareFontShape{TS1}{LibertinusSerif-TLF}{bold}{n}{
- <-> alias * LibertinusSerif-TLF/b/n
+\DeclareFontShape{TS1}{LibertinusSerif-TLF}{semibold}{n}{
+ <-> alias * LibertinusSerif-TLF/sb/n
}{}
-\DeclareFontShape{TS1}{LibertinusSerif-TLF}{b}{sl}{
- <-> ssub * LibertinusSerif-TLF/b/it
+\DeclareFontShape{TS1}{LibertinusSerif-TLF}{sb}{sl}{
+ <-> ssub * LibertinusSerif-TLF/sb/it
}{}
-\DeclareFontShape{TS1}{LibertinusSerif-TLF}{bold}{sl}{
- <-> ssub * LibertinusSerif-TLF/bold/it
+\DeclareFontShape{TS1}{LibertinusSerif-TLF}{semibold}{sl}{
+ <-> ssub * LibertinusSerif-TLF/semibold/it
}{}
-% ---- sb = semibold ----
+% ---- b = bold ----
-\DeclareFontShape{TS1}{LibertinusSerif-TLF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tlf-ts1
+\DeclareFontShape{TS1}{LibertinusSerif-TLF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tlf-ts1
}{}
-\DeclareFontShape{TS1}{LibertinusSerif-TLF}{semibold}{it}{
- <-> alias * LibertinusSerif-TLF/sb/it
+\DeclareFontShape{TS1}{LibertinusSerif-TLF}{bold}{it}{
+ <-> alias * LibertinusSerif-TLF/b/it
}{}
-\DeclareFontShape{TS1}{LibertinusSerif-TLF}{sb}{n}{
- <-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tlf-ts1
+\DeclareFontShape{TS1}{LibertinusSerif-TLF}{b}{n}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-Bold-tlf-ts1
}{}
-\DeclareFontShape{TS1}{LibertinusSerif-TLF}{semibold}{n}{
- <-> alias * LibertinusSerif-TLF/sb/n
+\DeclareFontShape{TS1}{LibertinusSerif-TLF}{bold}{n}{
+ <-> alias * LibertinusSerif-TLF/b/n
}{}
-\DeclareFontShape{TS1}{LibertinusSerif-TLF}{sb}{sl}{
- <-> ssub * LibertinusSerif-TLF/sb/it
+\DeclareFontShape{TS1}{LibertinusSerif-TLF}{b}{sl}{
+ <-> ssub * LibertinusSerif-TLF/b/it
}{}
-\DeclareFontShape{TS1}{LibertinusSerif-TLF}{semibold}{sl}{
- <-> ssub * LibertinusSerif-TLF/semibold/it
+\DeclareFontShape{TS1}{LibertinusSerif-TLF}{bold}{sl}{
+ <-> ssub * LibertinusSerif-TLF/bold/it
}{}
@@ -107,12 +107,12 @@
<-> ssub * LibertinusSerif-TLF/b/n
}{}
-\DeclareFontShape{TS1}{LibertinusSerif-TLF}{bx}{it}{
- <-> ssub * LibertinusSerif-TLF/b/it
-}{}
-
\DeclareFontShape{TS1}{LibertinusSerif-TLF}{bx}{sl}{
<-> ssub * LibertinusSerif-TLF/b/sl
}{}
+\DeclareFontShape{TS1}{LibertinusSerif-TLF}{bx}{it}{
+ <-> ssub * LibertinusSerif-TLF/b/it
+}{}
+
\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-TOsF.fd
index 4ca20bd9260..831c4cab254 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-TOsF.fd
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerif-TOsF.fd
@@ -1,7 +1,7 @@
-%% Generated by autoinst on 2022/11/07
+%% Generated by autoinst on 2024/09/22
%%
\ProvidesFile{TS1LibertinusSerif-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for TS1/LibertinusSerif-TOsF.]
+ [2024/09/22 (autoinst) Font definitions for TS1/LibertinusSerif-TOsF.]
\ifcsname s@fct@alias\endcsname\else
\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
@@ -22,14 +22,6 @@
% ---- sb = semibold ----
-\DeclareFontShape{TS1}{LibertinusSerif-TOsF}{sb}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSerif-TOsF}{semibold}{it}{
- <-> alias * LibertinusSerif-TOsF/sb/it
-}{}
-
\DeclareFontShape{TS1}{LibertinusSerif-TOsF}{sb}{n}{
<-> \LibertinusSerif@@scale LibertinusSerif-Semibold-tosf-ts1
}{}
@@ -38,6 +30,14 @@
<-> alias * LibertinusSerif-TOsF/sb/n
}{}
+\DeclareFontShape{TS1}{LibertinusSerif-TOsF}{sb}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-SemiboldItalic-tosf-ts1
+}{}
+
+\DeclareFontShape{TS1}{LibertinusSerif-TOsF}{semibold}{it}{
+ <-> alias * LibertinusSerif-TOsF/sb/it
+}{}
+
\DeclareFontShape{TS1}{LibertinusSerif-TOsF}{sb}{sl}{
<-> ssub * LibertinusSerif-TOsF/sb/it
}{}
@@ -49,14 +49,6 @@
% ---- b = bold ----
-\DeclareFontShape{TS1}{LibertinusSerif-TOsF}{b}{it}{
- <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSerif-TOsF}{bold}{it}{
- <-> alias * LibertinusSerif-TOsF/b/it
-}{}
-
\DeclareFontShape{TS1}{LibertinusSerif-TOsF}{b}{n}{
<-> \LibertinusSerif@@scale LibertinusSerif-Bold-tosf-ts1
}{}
@@ -65,6 +57,14 @@
<-> alias * LibertinusSerif-TOsF/b/n
}{}
+\DeclareFontShape{TS1}{LibertinusSerif-TOsF}{b}{it}{
+ <-> \LibertinusSerif@@scale LibertinusSerif-BoldItalic-tosf-ts1
+}{}
+
+\DeclareFontShape{TS1}{LibertinusSerif-TOsF}{bold}{it}{
+ <-> alias * LibertinusSerif-TOsF/b/it
+}{}
+
\DeclareFontShape{TS1}{LibertinusSerif-TOsF}{b}{sl}{
<-> ssub * LibertinusSerif-TOsF/b/it
}{}
@@ -103,14 +103,14 @@
% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-\DeclareFontShape{TS1}{LibertinusSerif-TOsF}{bx}{n}{
- <-> ssub * LibertinusSerif-TOsF/b/n
-}{}
-
\DeclareFontShape{TS1}{LibertinusSerif-TOsF}{bx}{it}{
<-> ssub * LibertinusSerif-TOsF/b/it
}{}
+\DeclareFontShape{TS1}{LibertinusSerif-TOsF}{bx}{n}{
+ <-> ssub * LibertinusSerif-TOsF/b/n
+}{}
+
\DeclareFontShape{TS1}{LibertinusSerif-TOsF}{bx}{sl}{
<-> ssub * LibertinusSerif-TOsF/b/sl
}{}
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifDisplay-LF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifDisplay-LF.fd
deleted file mode 100644
index a0a7969b5ee..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifDisplay-LF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{TS1LibertinusSerifDisplay-LF.fd}
- [2022/11/07 (autoinst) Font definitions for TS1/LibertinusSerifDisplay-LF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{TS1}{LibertinusSerifDisplay-LF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{TS1}{LibertinusSerifDisplay-LF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-lf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSerifDisplay-LF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-LF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifDisplay-OsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifDisplay-OsF.fd
deleted file mode 100644
index c5054d35c07..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifDisplay-OsF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{TS1LibertinusSerifDisplay-OsF.fd}
- [2022/11/07 (autoinst) Font definitions for TS1/LibertinusSerifDisplay-OsF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{TS1}{LibertinusSerifDisplay-OsF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{TS1}{LibertinusSerifDisplay-OsF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-osf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSerifDisplay-OsF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-OsF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifDisplay-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifDisplay-TLF.fd
deleted file mode 100644
index df70e220c08..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifDisplay-TLF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{TS1LibertinusSerifDisplay-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for TS1/LibertinusSerifDisplay-TLF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{TS1}{LibertinusSerifDisplay-TLF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{TS1}{LibertinusSerifDisplay-TLF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-tlf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSerifDisplay-TLF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-TLF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifDisplay-TOsF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifDisplay-TOsF.fd
deleted file mode 100644
index f7248d4a802..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifDisplay-TOsF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{TS1LibertinusSerifDisplay-TOsF.fd}
- [2022/11/07 (autoinst) Font definitions for TS1/LibertinusSerifDisplay-TOsF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifDisplay@scale\endcsname\relax
- \let\LibertinusSerifDisplay@@scale\@empty
-\else
- \edef\LibertinusSerifDisplay@@scale{s*[\csname LibertinusSerifDisplay@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{TS1}{LibertinusSerifDisplay-TOsF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{TS1}{LibertinusSerifDisplay-TOsF}{m}{n}{
- <-> \LibertinusSerifDisplay@@scale LibertinusSerifDisplay-Regular-tosf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSerifDisplay-TOsF}{regular}{n}{
- <-> alias * LibertinusSerifDisplay-TOsF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifInitials-TLF.fd b/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifInitials-TLF.fd
deleted file mode 100644
index c1f580b71ef..00000000000
--- a/Master/texmf-dist/tex/latex/libertinus-type1/TS1LibertinusSerifInitials-TLF.fd
+++ /dev/null
@@ -1,36 +0,0 @@
-%% Generated by autoinst on 2022/11/07
-%%
-\ProvidesFile{TS1LibertinusSerifInitials-TLF.fd}
- [2022/11/07 (autoinst) Font definitions for TS1/LibertinusSerifInitials-TLF.]
-
-\ifcsname s@fct@alias\endcsname\else
-\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
-\gdef\@font@aliasinfo#1{%
- \@font@info{Font\space shape\space `\curr@fontshape'\space will
- \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
-}
-\fi
-
-\expandafter\ifx\csname LibertinusSerifInitials@scale\endcsname\relax
- \let\LibertinusSerifInitials@@scale\@empty
-\else
- \edef\LibertinusSerifInitials@@scale{s*[\csname LibertinusSerifInitials@scale\endcsname]}%
-\fi
-
-\DeclareFontFamily{TS1}{LibertinusSerifInitials-TLF}{}
-
-
-% ---- m = regular ----
-
-\DeclareFontShape{TS1}{LibertinusSerifInitials-TLF}{m}{n}{
- <-> \LibertinusSerifInitials@@scale LibertinusSerifInitials-Regular-tlf-ts1
-}{}
-
-\DeclareFontShape{TS1}{LibertinusSerifInitials-TLF}{regular}{n}{
- <-> alias * LibertinusSerifInitials-TLF/m/n
-}{}
-
-
-% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/libertinus-type1/libertinus-type1.sty b/Master/texmf-dist/tex/latex/libertinus-type1/libertinus-type1.sty
index 701a702771b..0ace2a84ef8 100644
--- a/Master/texmf-dist/tex/latex/libertinus-type1/libertinus-type1.sty
+++ b/Master/texmf-dist/tex/latex/libertinus-type1/libertinus-type1.sty
@@ -1,5 +1,5 @@
\ProvidesPackage{libertinus-type1}[%
- 2023/06/23 (Bob Tennent) Supports libertinus fonts for latex/pdflatex.]
+ 2024/09/22 (Bob Tennent) Supports libertinus fonts for latex/pdflatex.]
\RequirePackage{ifxetex,ifluatex,xkeyval,textcomp}
\newif\iflibertinus@otf
@@ -137,10 +137,8 @@ use libertinus.sty or libertinus-otf.sty.\MessageBreak
\fi}
\newcommand*\LibertinusSerif@scale{1}
-\newcommand*\LibertinusSerifDisplayT@scale{1}
\newcommand*\LibertinusSans@scale{1}
\newcommand*\LibertinusMono@scale{0.85} % cf. MatchLowerCase
-\newcommand*\LibertinusSerifInitials@scale{1}
\DeclareOptionX{ScaleRM}{\renewcommand*{\LibertinusSerif@scale}{#1}}
\DeclareOptionX{ScaleSF}{\renewcommand*{\LibertinusSans@scale}{#1}}
\DeclareOptionX{ScaleTT}{\renewcommand*{\LibertinusMono@scale}{#1}}
@@ -198,9 +196,6 @@ use libertinus.sty or libertinus-otf.sty.\MessageBreak
\def\LibertinusSansTLF{\fontfamily{LibertinusSans-TLF}\selectfont}
\def\LibertinusSansLF{\fontfamily{LibertinusSans-LF}\selectfont}
\def\LibertinusMono{\fontfamily{LibertinusMono-TLF}\selectfont}
-\def\Libertinusinitials{\fontfamily{LibertinusSerifInitials-\libertinusserif@figurealign\libertinusserif@figurestyle}\selectfont}
-\def\LibertinusInitials{\fontfamily{LibertinusSerifInitials-\libertinusserif@figurealign\libertinusserif@figurestyle}\selectfont}
-\def\LibertinusDisplay{\fontfamily{LibertinusSerifDisplay-\libertinusserif@figurealign\libertinusserif@figurestyle}\selectfont}
\def\LibertinusKeyboard{\fontfamily{LibertinusKeyboard-TLF}\selectfont}
\fa@naming@exception{figures}{{superior}{proportional}}{Sup}
diff --git a/Master/texmf-dist/tex/latex/libris/libris.sty b/Master/texmf-dist/tex/latex/libris/libris.sty
index 9dc634b3b42..4f1fa147786 100644
--- a/Master/texmf-dist/tex/latex/libris/libris.sty
+++ b/Master/texmf-dist/tex/latex/libris/libris.sty
@@ -1,23 +1,54 @@
-%% Copyright 2008 Clea F. Rees
-%
-% 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 Clea F. Rees.
-%
-% This work consists of all files listed in manifest.txt.
+%%
+%% This is file `libris.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% librisadf.dtx (with options: `sty')
+%% Copyright (C) 2008-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% librisadf. You may however distribute the package librisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{libris}[2008/12/13 v1.0 libris]
+\RequirePackage{svn-prov}
+\ProvidesPackageSVN[libris.sty]{$Id: librisadf.dtx 10402 2024-09-27 02:35:48Z cfrees $}[v1.1 \revinfo]
+\DefineFileInfoSVN[libris]
\RequirePackage[T1]{fontenc}
-\RequirePackage{textcomp}
-\RequirePackage{nfssext-cfr}
+\RequirePackage{nfssext-cfr}[2024/01/01]
+\IfFormatAtLeastTF {2020-02-02}{%
+ \DeclareEncodingSubset{TS1}{yly}{1}%
+ \DeclareEncodingSubset{TS1}{ylyw}{1}%
+}{%
+ \RequirePackage{textcomp}}
+\UndeclareTextCommand{\textperthousand}{T1}
+\ExplSyntaxOn
+\keys_define:nn { libris }
+{
+ scale .tl_set:N = \yly@scale,
+ scale .initial:V = \@empty,
+}
+\ProcessKeyOptions[libris]
+\ExplSyntaxOff
\renewcommand{\sfdefault}{yly}
-\endinput
%% end libris.sty
+%% end libris.sty
+\endinput
+%%
+%% End of file `libris.sty'.
diff --git a/Master/texmf-dist/tex/latex/libris/t1yly.fd b/Master/texmf-dist/tex/latex/libris/t1yly.fd
index 93220b3c665..425d3fa6a33 100644
--- a/Master/texmf-dist/tex/latex/libris/t1yly.fd
+++ b/Master/texmf-dist/tex/latex/libris/t1yly.fd
@@ -5,36 +5,49 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1yly.fd}
- [2010/06/27 Fontinst v1.933 font definitions for T1/yly.]
+ [2024/09/27 Fontinst v1.933 font definitions for T1/yly.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yly@scale\endcsname\relax
+ \let\yly@@scale\@empty
+\else
+ \edef\yly@@scale{s*[\csname yly@scale\endcsname]}%
+\fi
\DeclareFontFamily{T1}{yly}{}
\DeclareFontShape{T1}{yly}{m}{n}{
- <-> ylyr8t
+ <-> \yly@@scale ylyr8t
}{}
\DeclareFontShape{T1}{yly}{m}{it}{
- <-> ylyri8t
+ <-> \yly@@scale ylyri8t
}{}
\DeclareFontShape{T1}{yly}{b}{n}{
- <-> ylyb8t
+ <-> \yly@@scale ylyb8t
}{}
\DeclareFontShape{T1}{yly}{b}{it}{
- <-> ylybi8t
+ <-> \yly@@scale ylybi8t
}{}
\DeclareFontShape{T1}{yly}{m}{sc}{<->ssub * yly/m/n}{}
-\DeclareFontShape{T1}{yly}{m}{si}{<->ssub * yly/m/it}{}
-\DeclareFontShape{T1}{yly}{m}{sl}{<->ssub * yly/m/si}{}
+\DeclareFontShape{T1}{yly}{m}{sl}{<->ssub * yly/m/it}{}
+\DeclareFontShape{T1}{yly}{m}{scsl}{<->ssub * yly/m/sl}{}
+\DeclareFontShape{T1}{yly}{m}{scit}{<->ssub * yly/m/scsl}{}
+\DeclareFontShape{T1}{yly}{m}{si}{<->ssub * yly/m/scit}{}
\DeclareFontShape{T1}{yly}{bx}{n}{<->ssub * yly/b/n}{}
\DeclareFontShape{T1}{yly}{b}{sc}{<->ssub * yly/b/n}{}
\DeclareFontShape{T1}{yly}{bx}{sc}{<->ssub * yly/b/sc}{}
\DeclareFontShape{T1}{yly}{bx}{it}{<->ssub * yly/b/it}{}
-\DeclareFontShape{T1}{yly}{b}{si}{<->ssub * yly/b/it}{}
-\DeclareFontShape{T1}{yly}{bx}{si}{<->ssub * yly/b/si}{}
-\DeclareFontShape{T1}{yly}{b}{sl}{<->ssub * yly/b/si}{}
+\DeclareFontShape{T1}{yly}{b}{sl}{<->ssub * yly/b/it}{}
\DeclareFontShape{T1}{yly}{bx}{sl}{<->ssub * yly/b/sl}{}
+\DeclareFontShape{T1}{yly}{b}{scsl}{<->ssub * yly/b/sl}{}
+\DeclareFontShape{T1}{yly}{bx}{scsl}{<->ssub * yly/b/scsl}{}
+\DeclareFontShape{T1}{yly}{b}{scit}{<->ssub * yly/b/scsl}{}
+\DeclareFontShape{T1}{yly}{bx}{scit}{<->ssub * yly/b/scit}{}
+\DeclareFontShape{T1}{yly}{b}{si}{<->ssub * yly/b/scit}{}
+\DeclareFontShape{T1}{yly}{bx}{si}{<->ssub * yly/b/si}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libris/t1ylyw.fd b/Master/texmf-dist/tex/latex/libris/t1ylyw.fd
index 87b4a276f18..247d8136ad7 100644
--- a/Master/texmf-dist/tex/latex/libris/t1ylyw.fd
+++ b/Master/texmf-dist/tex/latex/libris/t1ylyw.fd
@@ -5,36 +5,49 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1ylyw.fd}
- [2010/06/27 Fontinst v1.933 font definitions for T1/ylyw.]
+ [2024/09/27 Fontinst v1.933 font definitions for T1/ylyw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yly@scale\endcsname\relax
+ \let\yly@@scale\@empty
+\else
+ \edef\yly@@scale{s*[\csname yly@scale\endcsname]}%
+\fi
\DeclareFontFamily{T1}{ylyw}{}
\DeclareFontShape{T1}{ylyw}{m}{n}{
- <-> ylyrw8t
+ <-> \yly@@scale ylyrw8t
}{}
\DeclareFontShape{T1}{ylyw}{m}{it}{
- <-> ylyriw8t
+ <-> \yly@@scale ylyriw8t
}{}
\DeclareFontShape{T1}{ylyw}{b}{n}{
- <-> ylybw8t
+ <-> \yly@@scale ylybw8t
}{}
\DeclareFontShape{T1}{ylyw}{b}{it}{
- <-> ylybiw8t
+ <-> \yly@@scale ylybiw8t
}{}
\DeclareFontShape{T1}{ylyw}{m}{sc}{<->ssub * ylyw/m/n}{}
-\DeclareFontShape{T1}{ylyw}{m}{si}{<->ssub * ylyw/m/it}{}
-\DeclareFontShape{T1}{ylyw}{m}{sl}{<->ssub * ylyw/m/si}{}
+\DeclareFontShape{T1}{ylyw}{m}{sl}{<->ssub * ylyw/m/it}{}
+\DeclareFontShape{T1}{ylyw}{m}{scsl}{<->ssub * ylyw/m/sl}{}
+\DeclareFontShape{T1}{ylyw}{m}{scit}{<->ssub * ylyw/m/scsl}{}
+\DeclareFontShape{T1}{ylyw}{m}{si}{<->ssub * ylyw/m/scit}{}
\DeclareFontShape{T1}{ylyw}{bx}{n}{<->ssub * ylyw/b/n}{}
\DeclareFontShape{T1}{ylyw}{b}{sc}{<->ssub * ylyw/b/n}{}
\DeclareFontShape{T1}{ylyw}{bx}{sc}{<->ssub * ylyw/b/sc}{}
\DeclareFontShape{T1}{ylyw}{bx}{it}{<->ssub * ylyw/b/it}{}
-\DeclareFontShape{T1}{ylyw}{b}{si}{<->ssub * ylyw/b/it}{}
-\DeclareFontShape{T1}{ylyw}{bx}{si}{<->ssub * ylyw/b/si}{}
-\DeclareFontShape{T1}{ylyw}{b}{sl}{<->ssub * ylyw/b/si}{}
+\DeclareFontShape{T1}{ylyw}{b}{sl}{<->ssub * ylyw/b/it}{}
\DeclareFontShape{T1}{ylyw}{bx}{sl}{<->ssub * ylyw/b/sl}{}
+\DeclareFontShape{T1}{ylyw}{b}{scsl}{<->ssub * ylyw/b/sl}{}
+\DeclareFontShape{T1}{ylyw}{bx}{scsl}{<->ssub * ylyw/b/scsl}{}
+\DeclareFontShape{T1}{ylyw}{b}{scit}{<->ssub * ylyw/b/scsl}{}
+\DeclareFontShape{T1}{ylyw}{bx}{scit}{<->ssub * ylyw/b/scit}{}
+\DeclareFontShape{T1}{ylyw}{b}{si}{<->ssub * ylyw/b/scit}{}
+\DeclareFontShape{T1}{ylyw}{bx}{si}{<->ssub * ylyw/b/si}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libris/ts1yly.fd b/Master/texmf-dist/tex/latex/libris/ts1yly.fd
index 33c01ff57fc..e43a62bec62 100644
--- a/Master/texmf-dist/tex/latex/libris/ts1yly.fd
+++ b/Master/texmf-dist/tex/latex/libris/ts1yly.fd
@@ -5,36 +5,49 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1yly.fd}
- [2010/06/27 Fontinst v1.933 font definitions for TS1/yly.]
+ [2024/09/27 Fontinst v1.933 font definitions for TS1/yly.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yly@scale\endcsname\relax
+ \let\yly@@scale\@empty
+\else
+ \edef\yly@@scale{s*[\csname yly@scale\endcsname]}%
+\fi
\DeclareFontFamily{TS1}{yly}{}
\DeclareFontShape{TS1}{yly}{m}{n}{
- <-> ylyr8c
+ <-> \yly@@scale ylyr8c
}{}
\DeclareFontShape{TS1}{yly}{m}{it}{
- <-> ylyri8c
+ <-> \yly@@scale ylyri8c
}{}
\DeclareFontShape{TS1}{yly}{b}{n}{
- <-> ylyb8c
+ <-> \yly@@scale ylyb8c
}{}
\DeclareFontShape{TS1}{yly}{b}{it}{
- <-> ylybi8c
+ <-> \yly@@scale ylybi8c
}{}
\DeclareFontShape{TS1}{yly}{m}{sc}{<->ssub * yly/m/n}{}
-\DeclareFontShape{TS1}{yly}{m}{si}{<->ssub * yly/m/it}{}
-\DeclareFontShape{TS1}{yly}{m}{sl}{<->ssub * yly/m/si}{}
+\DeclareFontShape{TS1}{yly}{m}{sl}{<->ssub * yly/m/it}{}
+\DeclareFontShape{TS1}{yly}{m}{scsl}{<->ssub * yly/m/sl}{}
+\DeclareFontShape{TS1}{yly}{m}{scit}{<->ssub * yly/m/scsl}{}
+\DeclareFontShape{TS1}{yly}{m}{si}{<->ssub * yly/m/scit}{}
\DeclareFontShape{TS1}{yly}{bx}{n}{<->ssub * yly/b/n}{}
\DeclareFontShape{TS1}{yly}{b}{sc}{<->ssub * yly/b/n}{}
\DeclareFontShape{TS1}{yly}{bx}{sc}{<->ssub * yly/b/sc}{}
\DeclareFontShape{TS1}{yly}{bx}{it}{<->ssub * yly/b/it}{}
-\DeclareFontShape{TS1}{yly}{b}{si}{<->ssub * yly/b/it}{}
-\DeclareFontShape{TS1}{yly}{bx}{si}{<->ssub * yly/b/si}{}
-\DeclareFontShape{TS1}{yly}{b}{sl}{<->ssub * yly/b/si}{}
+\DeclareFontShape{TS1}{yly}{b}{sl}{<->ssub * yly/b/it}{}
\DeclareFontShape{TS1}{yly}{bx}{sl}{<->ssub * yly/b/sl}{}
+\DeclareFontShape{TS1}{yly}{b}{scsl}{<->ssub * yly/b/sl}{}
+\DeclareFontShape{TS1}{yly}{bx}{scsl}{<->ssub * yly/b/scsl}{}
+\DeclareFontShape{TS1}{yly}{b}{scit}{<->ssub * yly/b/scsl}{}
+\DeclareFontShape{TS1}{yly}{bx}{scit}{<->ssub * yly/b/scit}{}
+\DeclareFontShape{TS1}{yly}{b}{si}{<->ssub * yly/b/scit}{}
+\DeclareFontShape{TS1}{yly}{bx}{si}{<->ssub * yly/b/si}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/libris/ts1ylyw.fd b/Master/texmf-dist/tex/latex/libris/ts1ylyw.fd
index e1f188edabe..3611eafc32e 100644
--- a/Master/texmf-dist/tex/latex/libris/ts1ylyw.fd
+++ b/Master/texmf-dist/tex/latex/libris/ts1ylyw.fd
@@ -5,36 +5,49 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1ylyw.fd}
- [2010/06/27 Fontinst v1.933 font definitions for TS1/ylyw.]
+ [2024/09/27 Fontinst v1.933 font definitions for TS1/ylyw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yly@scale\endcsname\relax
+ \let\yly@@scale\@empty
+\else
+ \edef\yly@@scale{s*[\csname yly@scale\endcsname]}%
+\fi
\DeclareFontFamily{TS1}{ylyw}{}
\DeclareFontShape{TS1}{ylyw}{m}{n}{
- <-> ylyr8c
+ <-> \yly@@scale ylyr8c
}{}
\DeclareFontShape{TS1}{ylyw}{m}{it}{
- <-> ylyri8c
+ <-> \yly@@scale ylyri8c
}{}
\DeclareFontShape{TS1}{ylyw}{b}{n}{
- <-> ylyb8c
+ <-> \yly@@scale ylyb8c
}{}
\DeclareFontShape{TS1}{ylyw}{b}{it}{
- <-> ylybi8c
+ <-> \yly@@scale ylybi8c
}{}
\DeclareFontShape{TS1}{ylyw}{m}{sc}{<->ssub * ylyw/m/n}{}
-\DeclareFontShape{TS1}{ylyw}{m}{si}{<->ssub * ylyw/m/it}{}
-\DeclareFontShape{TS1}{ylyw}{m}{sl}{<->ssub * ylyw/m/si}{}
+\DeclareFontShape{TS1}{ylyw}{m}{sl}{<->ssub * ylyw/m/it}{}
+\DeclareFontShape{TS1}{ylyw}{m}{scsl}{<->ssub * ylyw/m/sl}{}
+\DeclareFontShape{TS1}{ylyw}{m}{scit}{<->ssub * ylyw/m/scsl}{}
+\DeclareFontShape{TS1}{ylyw}{m}{si}{<->ssub * ylyw/m/scit}{}
\DeclareFontShape{TS1}{ylyw}{bx}{n}{<->ssub * ylyw/b/n}{}
\DeclareFontShape{TS1}{ylyw}{b}{sc}{<->ssub * ylyw/b/n}{}
\DeclareFontShape{TS1}{ylyw}{bx}{sc}{<->ssub * ylyw/b/sc}{}
\DeclareFontShape{TS1}{ylyw}{bx}{it}{<->ssub * ylyw/b/it}{}
-\DeclareFontShape{TS1}{ylyw}{b}{si}{<->ssub * ylyw/b/it}{}
-\DeclareFontShape{TS1}{ylyw}{bx}{si}{<->ssub * ylyw/b/si}{}
-\DeclareFontShape{TS1}{ylyw}{b}{sl}{<->ssub * ylyw/b/si}{}
+\DeclareFontShape{TS1}{ylyw}{b}{sl}{<->ssub * ylyw/b/it}{}
\DeclareFontShape{TS1}{ylyw}{bx}{sl}{<->ssub * ylyw/b/sl}{}
+\DeclareFontShape{TS1}{ylyw}{b}{scsl}{<->ssub * ylyw/b/sl}{}
+\DeclareFontShape{TS1}{ylyw}{bx}{scsl}{<->ssub * ylyw/b/scsl}{}
+\DeclareFontShape{TS1}{ylyw}{b}{scit}{<->ssub * ylyw/b/scsl}{}
+\DeclareFontShape{TS1}{ylyw}{bx}{scit}{<->ssub * ylyw/b/scit}{}
+\DeclareFontShape{TS1}{ylyw}{b}{si}{<->ssub * ylyw/b/scit}{}
+\DeclareFontShape{TS1}{ylyw}{bx}{si}{<->ssub * ylyw/b/si}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/lie-hasse/lie-hasse.sty b/Master/texmf-dist/tex/latex/lie-hasse/lie-hasse.sty
index d1050d88397..6d727c841cd 100644
--- a/Master/texmf-dist/tex/latex/lie-hasse/lie-hasse.sty
+++ b/Master/texmf-dist/tex/latex/lie-hasse/lie-hasse.sty
@@ -1,24 +1,20 @@
-% The Lie Hasse package.
+% The Lie Hasse package.
+% Version 1.01
%
-% Version 1.0
%
+% This package draws Hasse diagrams of root system posets of simple
+% Lie algebraS, in LaTeX documents, using the TikZ package.
%
-% This package draws Hasse diagrams of root system posets of simple
-% Lie algebraS, in LaTeX documents, using the TikZ package.
+% Benjamin McKay
+% b.mckay@ucc.ie
%
-% Benjamin McKay
-% b.mckay@ucc.ie
-%
-% Released under the LaTeX Project Public License v1.3c or later, see
+% Released under the LaTeX Project Public License v1.3c or later, see
% http://www.latex-project.org/lppl.txt
-%
-%
-%
-%
\NeedsTeXFormat{LaTeX2e}[1994/06/01]
-\ProvidesPackage{lie-hasse}[2020/02/02 Lie Hasse]
+\ProvidesPackage{lie-hasse}[2024/07/09 Lie Hasse]
\RequirePackage[rgb]{xcolor}
\RequirePackage{dynkin-diagrams}
+\RequirePackage[outline]{contour}
\usetikzlibrary{
positioning,
fadings,
@@ -26,7 +22,7 @@
%%%
%%% Application programming interface:
%%%
-
+\NewDocumentCommand\edgeQuote{m}{\contour{white}{\(#1\)}}
\newif\iflie@hasse@threeD
\lie@hasse@threeDtrue
\xdef\lie@hasse@three@D@shift{.3}%
@@ -40,14 +36,27 @@
\lie@hasse@show@heightfalse
\newif\iflie@hasse@attach@dynkin@diagram
\lie@hasse@attach@dynkin@diagramfalse
-
+\newif\iflie@hasse@show@levi
+\lie@hasse@show@levitrue
+\newif\iflie@hasse@show@unipotent@radical
+\lie@hasse@show@unipotent@radicaltrue
\pgfkeys{
/Lie Hasse diagram/.is family,
/Lie Hasse diagram,
- attach Dynkin diagram/.is if = lie@hasse@attach@dynkin@diagram,
+ attach Dynkin diagram/.is if
+ = lie@hasse@attach@dynkin@diagram,
attach Dynkin diagram/.default = false,
- edge/.style={ultra thick},
- edge quotes/.style={/Dynkin diagram/text style,auto,inner sep=2pt},
+ edge/.style = {
+ ultra thick
+ },
+ edge length/.estore in
+ = \lie@hasse@edge@length,
+ edge length = 1cm,
+ edge quotes/.style={
+ /Dynkin diagram/text style,
+ auto,
+ inner sep=2pt
+ },
compact edge/.style={},
noncompact edge/.style={opacity=0},
compact root/.code={\dynkinDrawSolidRootMark{#1}},
@@ -67,7 +76,13 @@
show widths/.default = false,
show height/.is if = lie@hasse@show@height,
show height/.default = false,
- z shift/.estore in = \lie@hasse@three@D@shift,
+ show Levi/.is if = lie@hasse@show@levi,
+ show Levi/.default = true,
+ show unipotent radical/.is if
+ = lie@hasse@show@unipotent@radical,
+ show unipotent radical/.default = true,
+ z shift/.estore in
+ = \lie@hasse@three@D@shift,
z shift/.default = .3,
top/.style={black!20,opacity=.4},
left/.style={black!20,opacity=.9},
@@ -90,13 +105,17 @@
\dynkin@integer@rank%
}%
{%
- % Turn Satake codes into Dynkin diagram expressions in \dynkin@string.
+ % Turn Satake codes into Dynkin diagram
+ % expressions in \dynkin@string.
\dynkin@grok@Satake@codes%
}%
- % Expand out any digits in \dynkin@string into multiples of the various root marks.
+ % Expand out any digits in \dynkin@string
+ % into multiples of the various root marks.
\expand@Dynkin@Roots@Digits%
- % Assign to \dynkin@roots the input string \dynkin@string with all . symbols removed,
- % so we only get the symbols representing the marks for the various roots.
+ % Assign to \dynkin@roots the input string
+ % \dynkin@string with all . symbols removed,
+ % so we only get the symbols representing
+ % the marks for the various roots.
\StrDel{\dynkin@string}{.}[\temp]%
\xdef\dynkin@roots{\temp}%
\StrLen{\dynkin@roots}[\temp]%
@@ -115,58 +134,33 @@
{%
\pgfkeys{/Lie Hasse diagram/for all roots={#1}{#2}}%
}%
+\newif\iflie@hasse@B
+\newcount\dynkin@rank@plus@one%
\NewDocumentCommand\hasse{O{}mm}%
{%
\ifdefined\filldraw%
- \IfStrEq{#1}{}%
- {%
+ \ifx#1\empty\relax%
\studyHasseDiagramOfRootSystem{#2}{#3}%
- }%
- {%
+ \else%
\studyHasseDiagramOfRootSystem[#1]{#2}{#3}%
- }%
+ \fi%
\label@item@count 0\relax%
\expandafter\forcsvlist%
- \expandafter\add@label%
+ \expandafter\lie@hasse@add@label%
\expandafter{\dynkin@label@list}%
\ifnum\dynkin@rank=1%
\dynkin{A}{1}%
\else%
+ \global\dynkin@rank@plus@one\the\dynkin@rank\relax%
+ \global\advance\dynkin@rank@plus@one by 1\relax%
\add@compact@simple@roots@to@compact@roots{}%
\IfStrEqCase{#2}%
{%%
{A}{\hasse@A}%
- {B}{\hasse@BC}%
- {C}{\hasse@BC*}%
+ {B}{\global\lie@hasse@Btrue\hasse@BC}%
+ {C}{\global\lie@hasse@Bfalse\hasse@BC}%
{D}{\hasse@D}%
- {E}%
- {%
- \ifnum\dynkin@rank=6%
- \hasse@E@six%
- \else%
- \ifnum\dynkin@rank=7%
- \hasse@E@seven%
- \else%
- \ifnum\dynkin@rank=8%
- \hasse@E@eight%
- \else
- \ifnum\dynkin@rank>8%
- \ClassError%
- {Lie Hasse}%
- {Rank of E series Hasse diagram: #3{}%
- exceeds 8; not defined yet}%
- {}%
- \fi%
- \ifnum\dynkin@rank<6%
- \ClassError%
- {Lie Hasse}%
- {Rank of E series Hasse diagram: #3{} less than 6}%
- {}%
- \fi%
- \fi%
- \fi%
- \fi%
- }%
+ {E}{\hasse@E@series}%
{F}%
{%
\ifnum\dynkin@rank=4%
@@ -194,10 +188,11 @@
{Lie Hasse}%
{Lie algebra series #2{} not A,B,C,D,E,F or G}%
{}]%
+ \forAllPositiveRoots{\draw@lie@hasse@root}%
\draw@simple@root@labels%
\fi%
\lie@hasse@write@widths{}%
- \forAllPositiveRootsInHasseDiagram{\doRootThing}%
+ \forAllPositiveRoots{\doRootThing}%
\iflie@hasse@attach@dynkin@diagram%
\attachDynkin%
\fi%
@@ -205,13 +200,42 @@
\begin{tikzpicture}\hasse[#1]{#2}{#3}\end{tikzpicture}%
\fi%
}%
+\NewDocumentCommand\hasse@E@series{}%
+{%
+ \ifnum\dynkin@rank=6%
+ \hasse@E@six%
+ \else%
+ \ifnum\dynkin@rank=7%
+ \hasse@E@seven%
+ \else%
+ \ifnum\dynkin@rank=8%
+ \hasse@E@eight%
+ \else%
+ \ifnum\dynkin@rank>8%
+ \ClassError%
+ {Lie Hasse}%
+ {Rank of E series Hasse diagram: \the\dynkin@rank{}%
+ exceeds 8; not defined yet}%
+ {}%
+ \fi%
+ \ifnum\dynkin@rank<6%
+ \ClassError%
+ {Lie Hasse}%
+ {Rank of E series Hasse diagram: \the\dynkin@rank{}%
+ less than 6; not define yet}%
+ {}%
+ \fi%
+ \fi%
+ \fi%
+ \fi%
+}%
\NewDocumentCommand\drawRootAsDynkinSum{mm}%
{%
\rootSum{#1}{#2}{\rs}%
\node at (#1;#2)
{%
\dynkin[%
- labels=\rs,%
+ expand labels=\rs,%
/Lie Hasse diagram/embedded Dynkin diagram]%
{\dynkin@series}{\the\dynkin@rank}%
};%
@@ -239,25 +263,38 @@
}%
\fi%
}%
-
-\NewDocumentCommand\backwardsGtwo{}%
+\NewDocumentCommand\hasseAttachGtwo{}%
{%
- \dynkin[label,backwards,x shift in edge lengths=-1]{G}{\dynkin@roots}%
+ \dynkin[vertical shift=0,%
+ edge length=\lie@hasse@edge@length,%
+% label,%
+% backwards,%
+% x shift in edge lengths=-1
+]{G}{\dynkin@roots}%
}%
-
\newcount\lie@hasse@E@shift%
\NewDocumentCommand\attachDynkin{}%
{%
\IfStrEqCase{\dynkin@series}{%
- {A}{\dynkin{A}{\dynkin@roots}}%
- {B}{\dynkin{B}{\dynkin@roots}}%
- {C}{\dynkin{C}{\dynkin@roots}}%
- {D}{\dynkin[y shift in edge lengths=-1.5,label]%
- {D}{\dynkin@roots}}%
+ {A}{\dynkin[vertical shift=0,%
+ edge length=\lie@hasse@edge@length]%
+ {A}{\dynkin@roots}}%
+ {B}{\dynkin[vertical shift=0,%
+ edge length=\lie@hasse@edge@length]%
+ {B}{\dynkin@roots}}%
+ {C}{\dynkin[vertical shift=0,%
+ edge length=\lie@hasse@edge@length]%
+ {C}{\dynkin@roots}}%
+ {D}{\dynkin[vertical shift=0,%
+ edge length=\lie@hasse@edge@length,%
+ y shift in edge lengths=-1.5,label]%
+ {D}{\dynkin@roots}}%
{E}%
{%%
\ifnum\dynkin@rank=6%
\dynkin[%
+ vertical shift=0,%
+ edge length=\lie@hasse@edge@length,%
upsidedown,%
labels*={1,...,6},%
y shift in edge lengths=.5]%
@@ -266,6 +303,8 @@
\lie@hasse@E@shift\the\dynkin@rank\relax%
\advance\lie@hasse@E@shift by -2\relax%
\dynkin[%
+ vertical shift=0,%
+ edge length=\lie@hasse@edge@length,%
backwards,%
upsidedown,%
label,%
@@ -274,16 +313,17 @@
{E}{\dynkin@roots}%
\fi%
}%%
- {F}{\dynkin{F}{\dynkin@roots}}%
- {G}{\backwardsGtwo{}}%
+ {F}{\dynkin[vertical shift=0,%
+ edge length=\lie@hasse@edge@length]%
+ {F}{\dynkin@roots}}%
+ {G}{\hasseAttachGtwo}%
}%
[\ClassError%
{Lie Hasse}%
- {Lie algebra series \dynkin@series{} not A,B,C,D,E,F or G when attaching Dynkin diagram}%
+ {Lie algebra series \dynkin@series{} %
+ not A,B,C,D,E,F or G when attaching Dynkin diagram}%
{}]%
}%
-
-
\newif\iflie@hasse@multiple@diagrams
\newcommand\doHasseDiagram[1]%%
{%
@@ -291,8 +331,7 @@
\ %
\fi%
\begin{tikzpicture}%
- [show background rectangle,%
- baseline=(current bounding box.east)]]%
+ [show background rectangle,baseline=(current bounding box.east)]%
\hasse#1%
\iflie@hasse@show@height%
\rootSystemHeight{\lie@hasse@height}%
@@ -327,33 +366,25 @@
}%
\begin{center}%
\expandafter\forscsvlist%
- \expandafter\doHasseDiagram%
- \expandafter{#1}%
+ \expandafter\doHasseDiagram\expandafter{#1}%
\end{center}%
}%
-
-
%%%
%%% Package internals:
%%%
-
-
\pgfdeclarelayer{Dynkin middle}
\pgfdeclarelayer{Dynkin above}
\pgfsetlayers{background,Dynkin behind,Dynkin middle,Dynkin above,main}
-
-
\newcommand*\label@list@at[1]{\csname FOOBAR-#1\endcsname}
\newcommand*\defn@label@list@entry[1]{\expandafter\def\csname FOOBAR-#1\endcsname}
\def\add@to@label@list#1#2{\global\defn@label@list@entry{#1}{#2}}%
\newcount\label@item@count%
\label@item@count 0\relax%
-\newcommand\add@label[1]%
+\newcommand\lie@hasse@add@label[1]%
{%
- \advance\label@item@count by 1\relax%
+ \global\advance\label@item@count by 1\relax%
\global\add@to@label@list{\the\label@item@count}{#1}%
}%
-
\xdef\lie@hasse@compact@roots{}%
\NewDocumentCommand\if@compact@root{mmm}%
{%
@@ -369,9 +400,8 @@
\dynkinOrder{\dynkin@series}{\the\dynkin@rank}.Carter::#1->\dynkin@ordering.%
{\current@simple@root}%
\StrChar{\dynkin@roots}{\current@simple@root}[\lie@hasse@root@marker]%
-\IfStrEq{*}{\lie@hasse@root@marker}{#2}{#3}%
+\IfStrEq{x}{\lie@hasse@root@marker}{#3}{#2}%
}%
-
\NewDocumentCommand\add@compact@root{m}%
{%
\if@compact@root{#1}%
@@ -382,53 +412,65 @@
\xdef\lie@hasse@compact@roots{\temp@lie@hasse@compact@roots{ }(#1)}%
}%
}%
-
\newcount\lie@hasse@sr%
-\newcount\drpo%
\NewDocumentCommand\add@compact@simple@roots@to@compact@roots{}%
{%
-\lie@hasse@sr 1\relax%
-\drpo\the\dynkin@rank\relax%
-\advance\drpo by 1\relax%
-\loop%
- \if@compact@simple@root{\the\lie@hasse@sr}%
- {%%
- \add@compact@root{1;\the\lie@hasse@sr}%
- }%%
- {%%
- }%%
- \advance\lie@hasse@sr by 1\relax%
-\ifnum\lie@hasse@sr<\the\drpo%
-\repeat%
+ \lie@hasse@sr 1\relax%
+ \loop%
+ \if@compact@simple@root{\the\lie@hasse@sr}%
+ {%%
+ \add@compact@root{1;\the\lie@hasse@sr}%
+ }%%
+ {%%
+ }%%
+ \advance\lie@hasse@sr by 1\relax%
+ \ifnum\lie@hasse@sr<\the\dynkin@rank@plus@one%
+ \repeat%
}%
-
-\newcount\drmo%
\newcount\lie@hasse@root@count%
\newcount\lie@hasse@root@count@b%
\newcount\max@lie@hasse@root@count%
\newcount\lie@hasse@reorder
-
\NewDocumentCommand\lie@hasse@fix@order{mm}%
{%
\dynkinOrder{\dynkin@series}{\dynkin@rank}.Carter::{#1}->\dynkin@ordering.{#2}%
}%
-
\NewDocumentCommand\draw@one@simple@root@label{mm}%
%% \draw@one@simple@root@label{r}{s}, draw at Carter number r
%% the root with text s.
{%
- \node[below,%
- label=%
- {%
- [below,%
- lie@hasse@color,%
- /Lie Hasse diagram/edge quotes]%
- \(\pgfkeys{/Dynkin diagram/label macro=#2}\)%
- }%
- ]%
- at%
- (1;#1)%
- {};%
+ \if@compact@simple@root{#1}%
+ {%
+ \iflie@hasse@show@levi%
+ \global\lie@hasse@ok@roottrue%
+ \else%
+ \global\lie@hasse@ok@rootfalse%
+ \fi%
+ }%
+ {%
+ \iflie@hasse@show@unipotent@radical%
+ \global\lie@hasse@ok@roottrue%
+ \else%
+ \global\lie@hasse@ok@rootfalse%
+ \fi%
+ }%
+ \iflie@hasse@ok@root%
+ \node[%
+ below,%
+ label=%
+ {%
+ [%
+ below,%
+ lie@hasse@color,%
+ /Lie Hasse diagram/edge quotes%
+ ]%
+ \(\pgfkeys{/Dynkin diagram/label macro={\edgeQuote{#2}}}\)%
+ }%
+ ]%
+ at%
+ (1;#1)%
+ {};%
+ \fi%
}%
\NewDocumentCommand\draw@simple@root@labels{}%
{%
@@ -471,27 +513,56 @@
\pgfmathsetmacro{\lie@hasse@huenum}{#1/\the\dynkin@rank}%
\global\definecolor{lie@hasse@color}{hsb}{\lie@hasse@huenum,1,.6}%
}%
-\NewDocumentCommand\draw@lie@hasse@root{m}%
+\NewDocumentCommand\draw@lie@hasse@root{mm}%
{%
-\if@compact@root{#1}%
-{%%
-\pgfkeys{/Lie Hasse diagram/compact root=#1}%
-}%%
-{%%
-\pgfkeys{/Lie Hasse diagram/noncompact root=#1}%
-}%%
+ \if@compact@root{#1;#2}%
+ {%%
+ \iflie@hasse@show@levi%
+ \pgfkeys{/Lie Hasse diagram/compact root={#1;#2}}%
+ \fi%
+ }%%
+ {%%
+ \iflie@hasse@show@unipotent@radical%
+ \pgfkeys{/Lie Hasse diagram/noncompact root={#1;#2}}%
+ \fi%
+ }%%
}%
-\xdef\lie@hasse@grade@a{}
-\xdef\lie@hasse@grade@b{}
-\xdef\lie@hasse@index@a{}
-\xdef\lie@hasse@index@b{}
\newcount\root@gpo%
\xdef\label@text{}%
+\newif\iflie@hasse@is@levi
+\newif\iflie@hasse@ok@root
\NewDocumentCommand\draw@lie@hasse@edge{O{}mmmm}%
%[edge label options]{from grade}{from index}{to index}{simple root}
{%
\root@gpo #2\relax%
\advance\root@gpo by 1\relax%
+ \if@compact@root{#2;#3}%
+ {%
+ \if@compact@simple@root{#5}%
+ {%
+ \global\lie@hasse@is@levitrue%
+ \add@compact@root{\the\root@gpo;#4}%
+ }%
+ {%
+ \global\lie@hasse@is@levifalse%
+ }%
+ }%
+ {%
+ \global\lie@hasse@is@levifalse%
+ }%
+ \iflie@hasse@is@levi%
+ \iflie@hasse@show@levi%
+ \global\lie@hasse@ok@roottrue%
+ \else%
+ \global\lie@hasse@ok@rootfalse%
+ \fi%
+ \else%
+ \iflie@hasse@show@unipotent@radical%
+ \global\lie@hasse@ok@roottrue%
+ \else%
+ \global\lie@hasse@ok@rootfalse%
+ \fi%
+ \fi%
\set@lie@hasse@color{#5}%
\lie@hasse@fix@order{#5}{\lie@hasse@root@count@b}%
\IfStrEq{\dynkin@label@list}{}%
@@ -505,31 +576,33 @@
}%
}%
\if@compact@simple@root{#5}%
- {%%% Compact
- \draw[%
- lie@hasse@color,%
- /Lie Hasse diagram/edge,%
- /Lie Hasse diagram/compact edge]%
- (#2;#3) --%
- node[lie@hasse@color,/Lie Hasse diagram/edge quotes,#1]%
- {\(\pgfkeys{/Dynkin diagram/label macro=\label@text}\)}%
- (\the\root@gpo;#4);%
- \IfSubStr{\lie@hasse@compact@roots}{#2;#3}%
- {%% adding to a compact
- \add@compact@root{\the\root@gpo;#4}%
- }%%
- {%%
- }%%
+ {%%% Compact simple root, i.e. edge
+ \iflie@hasse@ok@root%
+ \draw[%
+ lie@hasse@color,%
+ /Lie Hasse diagram/edge,%
+ /Lie Hasse diagram/compact edge]%
+ (#2;#3)--%
+ node[lie@hasse@color,/Lie Hasse diagram/edge quotes,#1]%
+ {\(\pgfkeys{/Dynkin diagram/label macro={\edgeQuote{\label@text}}}\)}%
+ (\the\root@gpo;#4);%
+ \fi%
+ \iflie@hasse@is@levi%
+ \fi%
}%%%
{%%% Noncompact
- \draw[%
- lie@hasse@color,%
- /Lie Hasse diagram/edge,%
- /Lie Hasse diagram/noncompact edge]%
- (#2;#3) --%
+ \iflie@hasse@ok@root%
+ \draw
+ [%
+ lie@hasse@color,%
+ /Lie Hasse diagram/edge,%
+ /Lie Hasse diagram/noncompact edge%
+ ]%
+ (#2;#3)--%
node[lie@hasse@color,/Lie Hasse diagram/edge quotes,#1]%
- {\(\pgfkeys{/Dynkin diagram/label macro=\label@text}\)}%
+ {\(\pgfkeys{/Dynkin diagram/label macro={\edgeQuote{\label@text}}}\)}%
(\the\root@gpo;#4);%
+ \fi%
}%%%
}%
\newcount\A@series@grade%
@@ -555,8 +628,8 @@
\coordinate
(\the\A@series@grade;\the\A@series@j)
at
- ({.5*\the\A@series@x*\dynkin@edge@length},
- {.25*\the\A@series@y*\dynkin@edge@length})
+ ({.5*\the\A@series@x*\lie@hasse@edge@length},
+ {.25*\the\A@series@y*\lie@hasse@edge@length})
{};%
\advance\A@series@j by 1\relax%
\advance\A@series@x by 2\relax%
@@ -569,59 +642,35 @@
\ifnum\A@series@grade<\the\max@A@series@grade%
\repeat%
}%
-\newcount\A@series@grade%
-\newcount\max@A@series@grade%
-\NewDocumentCommand\draw@A@roots{}%
-{%
- \A@series@grade 1\relax%
- \max@A@series@grade \the\dynkin@rank\relax%
- \advance\max@A@series@grade by 1\relax%
- \loop%
- \max@A@series@j\the\dynkin@rank\relax%
- \advance\max@A@series@j by -\the\A@series@grade\relax%
- \advance\max@A@series@j by 2\relax%
- \A@series@j 1\relax%
- {%
- \loop%
- \draw@lie@hasse@root%
- {\the\A@series@grade;\the\A@series@j}%
- \advance\A@series@j by 1\relax%
- \ifnum\A@series@j<\the\max@A@series@j%
- \repeat%
- }%
- \advance\A@series@grade by 1\relax%
- \ifnum\A@series@grade<\the\max@A@series@grade%
- \repeat%
-}%
\newcount\maxA@i%
\newcount\maxA@j%
\newcount\A@lbl%
-\newcount\A@i%
-\newcount\A@j%
-\newcount\A@ipo%
+\newcount\lie@hasse@i%
+\newcount\lie@hasse@j%
+\newcount\lie@hasse@ipo%
\newcount\A@rj%
\newcount\A@rjmo%
\NewDocumentCommand\draw@A@edges{}%
{%
\maxA@i\the\dynkin@rank\relax%
- \A@i 1\relax%
+ \lie@hasse@i 1\relax%
\loop%
\maxA@j \the\dynkin@rank\relax%
- \advance\maxA@j by -\the\A@i\relax%
+ \advance\maxA@j by -\the\lie@hasse@i\relax%
\advance\maxA@j by 1\relax%
\ifnum\maxA@j>-1%
- \A@j 1\relax%
+ \lie@hasse@j 1\relax%
{%
\loop%
- \A@lbl\the\A@i\relax%
- \advance\A@lbl by \the\A@j\relax%
- \A@ipo \A@i\relax%
- \advance\A@ipo by 1\relax%
+ \A@lbl\the\lie@hasse@i\relax%
+ \advance\A@lbl by \the\lie@hasse@j\relax%
+ \lie@hasse@ipo \lie@hasse@i\relax%
+ \advance\lie@hasse@ipo by 1\relax%
\draw@lie@hasse@edge[left]%
- {\the\A@i}{\the\A@j}%
- {\the\A@j}{\the\A@lbl}%
+ {\the\lie@hasse@i}{\the\lie@hasse@j}%
+ {\the\lie@hasse@j}{\the\A@lbl}%
\A@rj\the\maxA@j\relax%
- \advance\A@rj by -\the\A@j\relax%
+ \advance\A@rj by -\the\lie@hasse@j\relax%
\advance\A@rj by 1\relax%
\A@rjmo\the\A@rj\relax%
\advance\A@rjmo by -1\relax%
@@ -629,15 +678,15 @@
\advance\A@lbl by \the\dynkin@rank%
\advance\A@lbl by 1%
\draw@lie@hasse@edge[right]%
- {\the\A@i}{\the\A@rj}%
+ {\the\lie@hasse@i}{\the\A@rj}%
{\the\A@rjmo}{\the\A@lbl}%
- \advance\A@j by 1\relax%
- \ifnum\A@j<\the\maxA@j%
+ \advance\lie@hasse@j by 1\relax%
+ \ifnum\lie@hasse@j<\the\maxA@j%
\repeat%
}%
\fi%
- \advance\A@i by 1\relax%
- \ifnum\A@i<\the\maxA@i%
+ \advance\lie@hasse@i by 1\relax%
+ \ifnum\lie@hasse@i<\the\maxA@i%
\repeat%
}%
%% \hasse@A@width@at@grade{g}{\w} sets the counter \w to
@@ -653,7 +702,6 @@
{%
\place@A@roots%
\draw@A@edges%
- \draw@A@roots%
}%
%% \hasse@BC@width@at@grade{g}{\w} sets the counter \w to
%% the value of the width (number of roots) at grade g of
@@ -666,138 +714,116 @@
\global\advance#2 by 1\relax%
\global\divide#2 by 2\relax%
}%
-\newcount\tdrmt%
-\newcount\tdrmo%
+\newcount\twice@dynkin@rank@minus@one%
\newcount\max@BC@r%
\newcount\BC@r%
\newcount\BC@series@x%
\newcount\BC@series@y%
\NewDocumentCommand\place@BC@roots{}%
{%
-\drmo \the\dynkin@rank\relax%
-\advance\drmo by -1\relax%
-\tdrmt \the\drmo\relax%
-\advance\tdrmt by \the\drmo\relax%
-\tdrmo \the\tdrmt\relax%
-\advance\tdrmo 1\relax%
-\max@BC@r \the\dynkin@rank\relax%
-\advance\max@BC@r by 1\relax%
-\BC@r 1\relax%
-\loop%
- \BC@series@x \the\BC@r\relax%
- \advance\BC@series@x by -1\relax%
- \advance\BC@series@x by \the\BC@series@x\relax%
- \BC@series@y 1\relax%
- {%%
+ \twice@dynkin@rank@minus@one \the\dynkin@rank\relax%
+ \advance\twice@dynkin@rank@minus@one by \the\dynkin@rank\relax%
+ \advance\twice@dynkin@rank@minus@one by -1\relax%
+ \max@BC@r \the\dynkin@rank\relax%
+ \advance\max@BC@r by 1\relax%
+ \BC@r 1\relax%
\loop%
- \coordinate
- (\the\BC@series@y;\the\BC@r)
- at
- ({.5*\the\BC@series@x*\dynkin@edge@length},
- {.5*(\the\BC@series@y-1)*\dynkin@edge@length})
- {};%
- \advance\BC@series@y by 1\relax%
- \advance\BC@series@x by 1\relax%
- \ifnum\BC@series@x<\the\tdrmo\repeat%
- }%%
- \advance\BC@r by 1\relax%
- \ifnum\BC@r<\the\max@BC@r%
-\repeat%
+ \BC@series@x \the\BC@r\relax%
+ \advance\BC@series@x by -1\relax%
+ \advance\BC@series@x by \the\BC@series@x\relax%
+ \BC@series@y 1\relax%
+ {%%
+ \loop%
+ \coordinate
+ (\the\BC@series@y;\the\BC@r)
+ at
+ ({.5*\the\BC@series@x*\lie@hasse@edge@length},
+ {.5*(\the\BC@series@y-1)*\lie@hasse@edge@length})
+ {};%
+ \advance\BC@series@y by 1\relax%
+ \advance\BC@series@x by 1\relax%
+ \ifnum\BC@series@x<\the\twice@dynkin@rank@minus@one\repeat%
+ }%%
+ \advance\BC@r by 1\relax%
+ \ifnum\BC@r<\the\max@BC@r%
+ \repeat%
+}%
+\newcount\BC@height%
+\newcount\BC@g%
+\NewDocumentCommand\draw@BC@edges{}%
+{%
+ \rootSystemHeight{\BC@height}%
+ \ifnum\BC@height>1%
+ \BC@g 1\relax%
+ \loop%
+ \draw@BC@edges@at@grade{\the\BC@g}%
+ \global\advance\BC@g by 1\relax%
+ \ifnum\BC@g<\BC@height%
+ \repeat%
+ \fi%
}%
-\newcount\max@BC@i%
\newcount\BC@i%
-\newcount\BC@series@x%
-\newcount\BC@series@y%
+\newcount\BC@width%
+\newcount\BC@width@plus@one%
+\NewDocumentCommand\draw@BC@edges@at@grade{m}%
+{%
+ \rootSystemWidthAtGrade{#1}{\BC@width}%
+ \BC@width@plus@one \BC@width\relax%
+ \advance \BC@width@plus@one by 1\relax%
+ \BC@i 1\relax%
+ {%
+ \loop%
+ \draw@BC@edges@at@root{#1}{\the\BC@i}%
+ \global\advance\BC@i by 1\relax%
+ \ifnum\BC@i<\BC@width@plus@one\repeat%
+ }%
+}%
+\newcount\BC@height%
\newcount\BC@ii%
-\newcount\BC@series@yy%
-\newcount\BC@series@yy%
-\newcount\lbl%
+\newif\ifBC@draw%
+\newcount\lie@hasse@lbl%
\newcount\temp@lbl%
-\NewDocumentCommand\draw@BC@edges{s}%
-{%
-\tdrmo \the\dynkin@rank\relax%
-\advance\tdrmo by \the\dynkin@rank\relax%
-\advance\tdrmo by -1\relax%
-\max@BC@i \the\dynkin@rank\relax%
-\advance\max@BC@i by 1\relax%
-\BC@i 1\relax%
-\loop%
- \BC@series@x \the\BC@i\relax%
- \advance\BC@series@x by \the\BC@i\relax%
- \advance\BC@series@x by -2\relax%
- \BC@series@y 1\relax%
- {%%
- \loop%
- \ifnum\BC@i>1%
- % draw an edge upward to the left
- \BC@ii \the\BC@i\relax%
- \advance\BC@ii by -1\relax%
- \BC@series@yy \the\BC@series@y\relax%
- \advance\BC@series@yy by 1\relax%
- \draw@lie@hasse@edge[right]%
- {\the\BC@series@y}{\the\BC@i}%
- {\the\BC@ii}%
- {\the\BC@ii}%
+\NewDocumentCommand\draw@BC@edges@at@root{mm}%
+{%
+ \ifnum#2>1%
+ % draw an edge upward to the left
+ \BC@ii #2\relax%
+ \advance\BC@ii by -1\relax%
+ \draw@lie@hasse@edge[right]%
+ {#1}{#2}%
+ {\the\BC@ii}
+ {\the\BC@ii}%
+ \fi%
+ \BC@drawtrue%
+ \ifodd#1
+ \ifnum#2=\the\BC@width%
+ \global\BC@drawfalse%
\fi%
- \ifnum\BC@series@y>1%
- % draw an edge downward to the left
- \BC@series@yy \the\BC@series@y\relax%
- \advance\BC@series@yy by -1\relax%
- \lbl \the\BC@i\relax%
- \advance\lbl by \the\BC@series@y\relax%
- \advance\lbl by -1\relax%
- \ifnum\dynkin@rank<\the\lbl%
- \temp@lbl \the\lbl\relax%
- \lbl \the\dynkin@rank\relax%
- \advance\lbl by \the\dynkin@rank%
- \advance\lbl by -\the\temp@lbl%
+ \fi%
+ \ifBC@draw%
+ % draw an edge upward to the right
+ \lie@hasse@lbl #2\relax%
+ \advance\lie@hasse@lbl by #1\relax%
+ \ifnum\dynkin@rank<\the\lie@hasse@lbl%
+ \temp@lbl \the\lie@hasse@lbl\relax%
+ \lie@hasse@lbl \the\dynkin@rank\relax%
+ \advance\lie@hasse@lbl by \the\dynkin@rank%
+ \advance\lie@hasse@lbl by -\the\temp@lbl%
%% For the B series:
- \IfBooleanF{#1}{\global\advance\lbl by 1\relax}%
- \draw@lie@hasse@edge[left]%
- {\the\BC@series@yy}{\the\BC@i}%
- {\the\BC@i}%
- {\the\lbl}%
- \else%
- \draw@lie@hasse@edge[left]%
- {\the\BC@series@yy}{\the\BC@i}%
- {\the\BC@i}%
- {\the\lbl}%
+ \iflie@hasse@B%
+ \global\advance\lie@hasse@lbl by 1\relax%
\fi%
+ \draw@lie@hasse@edge[left]%
+ {#1}{#2}%
+ {#2}%
+ {\the\lie@hasse@lbl}%
+ \else%
+ \draw@lie@hasse@edge[left]%
+ {#1}{#2}%
+ {#2}%
+ {\the\lie@hasse@lbl}%
\fi%
- \advance\BC@series@y by 1\relax%
- \advance\BC@series@x by 1\relax%
- \ifnum\BC@series@x<\the\tdrmo\repeat%
- }%%
- \advance\BC@i by 1\relax%
- \ifnum\BC@i<\the\max@BC@i%
-\repeat%
-}%
-\newcount\tdrpt%
-\newcount\BC@r%
-\newcount\BC@series@y%
-\newcount\maxy%
-\NewDocumentCommand\draw@BC@roots{}%
-{%
-\tdrpt \the\dynkin@rank\relax%
-\advance\tdrpt by \the\dynkin@rank\relax%
-\advance\tdrpt by 2\relax%
-\max@BC@r \the\dynkin@rank\relax%
-\advance\max@BC@r by 1\relax%
-\BC@r 1\relax%
-\loop%
- \BC@series@y 1\relax%
- \maxy \tdrpt\relax%
- \advance\maxy -\the\BC@r\relax%
- \advance\maxy -\the\BC@r\relax%
- {%%
- \loop%
- \draw@lie@hasse@root{\the\BC@series@y;\the\BC@r}%
- \advance\BC@series@y by 1\relax%
- \ifnum\BC@series@y<\the\maxy\repeat%
- }%%
- \advance\BC@r by 1\relax%
- \ifnum\BC@r<\the\max@BC@r%
-\repeat%
+ \fi%
}%
\NewDocumentCommand\hasse@BC{s}% star for C:
{%
@@ -809,7 +835,6 @@
{%
\draw@BC@edges%
}%
- \draw@BC@roots%
}%
\NewDocumentCommand\hasse@D{}%
{%
@@ -818,51 +843,45 @@
\iflie@hasse@threeD%
\draw@D@hasse@three@D%
\fi%
- \draw@D@roots%
}%
-\newcount\drmt%
\NewDocumentCommand\draw@D@hasse@three@D{}%
{%
- \drmo \the\dynkin@rank\relax%
- \advance\drmo by -1\relax%
- \drmt \the\dynkin@rank\relax%
- \advance\drmt by -2\relax%
\begin{pgfonlayer}{Dynkin middle}%
\fill[/Lie Hasse diagram/left]
- (\the\drmt;1) --
- (\the\drmo;1) --
+ (\the\dynkin@rank@minus@two;1) --
+ (\the\dynkin@rank@minus@one;1) --
(\the\dynkin@rank;1) --
- (\the\drmo;2) --
+ (\the\dynkin@rank@minus@one;2) --
cycle;%
\fill[/Lie Hasse diagram/top]
- (\the\drmt;1) --
- (1;\the\drmt) --
- (2;\the\drmo) --
- (\the\drmo;2) --
+ (\the\dynkin@rank@minus@two;1) --
+ (1;\the\dynkin@rank@minus@two) --
+ (2;\the\dynkin@rank@minus@one) --
+ (\the\dynkin@rank@minus@one;2) --
cycle;%
\fill[/Lie Hasse diagram/top]
- (\the\drmo;2) --
+ (\the\dynkin@rank@minus@one;2) --
(\the\dynkin@rank;1) --
- (3;\the\drmo) --
- (2;\the\drmo) --
+ (3;\the\dynkin@rank@minus@one) --
+ (2;\the\dynkin@rank@minus@one) --
cycle;%
\fill[/Lie Hasse diagram/top]
- (\the\drmo;1) --
+ (\the\dynkin@rank@minus@one;1) --
(\the\dynkin@rank;1) --
- (3;\the\drmo) --
- (2;\the\drmt) --
+ (3;\the\dynkin@rank@minus@one) --
+ (2;\the\dynkin@rank@minus@two) --
cycle;%
\fill[/Lie Hasse diagram/top]
- (\the\drmt;1) --
- (\the\drmo;1) --
- (2;\the\drmt) --
- (1;\the\drmt) --
+ (\the\dynkin@rank@minus@two;1) --
+ (\the\dynkin@rank@minus@one;1) --
+ (2;\the\dynkin@rank@minus@two) --
+ (1;\the\dynkin@rank@minus@two) --
cycle;%
\fill[/Lie Hasse diagram/left]
- (1;\the\drmt) --
- (2;\the\drmt) --
- (3;\the\drmo) --
- (2;\the\drmo) --
+ (1;\the\dynkin@rank@minus@two) --
+ (2;\the\dynkin@rank@minus@two) --
+ (3;\the\dynkin@rank@minus@one) --
+ (2;\the\dynkin@rank@minus@one) --
cycle;%
\end{pgfonlayer}%
}%
@@ -883,9 +902,7 @@
\newcount\D@g%
\newcount\maxD@grd%
\newcount\D@grd%
-\newcount\maxxD%
-\newcount\iD%
-\newcount\xxD%
+\newcount\lie@hasse@D@x%
\newcount\sum@D%
\NewDocumentCommand\place@D@roots{}%
{%
@@ -918,37 +935,34 @@
\repeat%
}%
}%
-\newcount\drpo%
\NewDocumentCommand\place@D@root@at{mm}%
{%
- \xxD #1\relax%
- \advance\xxD by #2\relax%
- \advance\xxD by #2\relax%
- \advance\xxD by -3\relax%
- \drpo \the\dynkin@rank\relax%
- \advance\drpo by 1\relax%
+ \lie@hasse@D@x #1\relax%
+ \advance\lie@hasse@D@x by #2\relax%
+ \advance\lie@hasse@D@x by #2\relax%
+ \advance\lie@hasse@D@x by -3\relax%
\sum@D #1\relax%
\advance\sum@D by #2\relax%
\ifnum\sum@D=\the\dynkin@rank%
\global\def\D@root@x%
- {\the\xxD-\lie@hasse@three@D@shift}%
+ {\the\lie@hasse@D@x-\lie@hasse@three@D@shift}%
\else%
- \ifnum\sum@D=\the\drpo%
+ \ifnum\sum@D=\the\dynkin@rank@plus@one%
\ifnum#1<\the\dynkin@rank%
\global\def\D@root@x%
- {\the\xxD-2+\lie@hasse@three@D@shift}%
+ {\the\lie@hasse@D@x-2+\lie@hasse@three@D@shift}%
\else%
- \global\def\D@root@x{\the\xxD}%
+ \global\def\D@root@x{\the\lie@hasse@D@x}%
\fi%
\else%
\ifnum\sum@D<\the\dynkin@rank%
- \global\def\D@root@x{\the\xxD}%
+ \global\def\D@root@x{\the\lie@hasse@D@x}%
\else%
% if \sum@D exceeds rank+1
\ifnum#1<\the\dynkin@rank%
- \global\def\D@root@x{\the\xxD-2}%
+ \global\def\D@root@x{\the\lie@hasse@D@x-2}%
\else%
- \global\def\D@root@x{\the\xxD}%
+ \global\def\D@root@x{\the\lie@hasse@D@x}%
\fi%
\fi%
\fi%
@@ -956,7 +970,7 @@
\coordinate
(#1;#2)
at
- ({(\D@root@x)*\dynkin@edge@length/2},{(#1-1)*\dynkin@edge@length/2})
+ ({(\D@root@x)*\lie@hasse@edge@length/2},{(#1-1)*\lie@hasse@edge@length/2})
{};%
}%
\NewDocumentCommand\draw@D@edges{}%
@@ -983,7 +997,8 @@
\D@r 1\relax%
{%
\loop%
- \draw@D@edges@at{#1}{\the\D@r}{\the\max@D@roots}%
+%%% \draw@D@edges@at{#1}{\the\D@r}{\the\max@D@roots}%
+ \draw@D@edges@at{#1}{\the\D@r}%
\advance\D@r by 1\relax%
\ifnum\D@r<\the\max@D@roots@plus@one%
\repeat%
@@ -1000,10 +1015,6 @@
\newcount\hasse@D@label%
\NewDocumentCommand\draw@D@edges@at{mm}%
{%
- \drmo\the\dynkin@rank\relax%
- \advance\drmo by -1\relax%
- \drpo \the\dynkin@rank\relax%
- \advance\drpo by 1\relax%
\hasse@D@gpo#1\relax%
\advance\hasse@D@gpo by 1\relax%
\hasse@D@gpi#1\relax%
@@ -1035,7 +1046,7 @@
\xdef\hasse@D@layer{Dynkin above}%
\else%
% below or middle.
- \ifnum\hasse@D@gpi=\the\drpo%
+ \ifnum\hasse@D@gpi=\the\dynkin@rank@plus@one%
\xdef\hasse@D@layer{Dynkin behind}%
\fi%
\fi%
@@ -1045,7 +1056,7 @@
\fi%
\fi%
\ifnum\dynkin@rank>#1%
- \ifnum\hasse@D@gpi<\the\drpo%
+ \ifnum\hasse@D@gpi<\the\dynkin@rank@plus@one%
\else%
\global\advance\hasse@D@label -1\relax%
\fi%
@@ -1069,7 +1080,7 @@
\fi%
\fi%
\ifnum#1=1%
- \ifnum\drmo=#2%
+ \ifnum\dynkin@rank@minus@one=#2%
\global\hasse@Dfalse\relax%
\else%
\xdef\hasse@D@LR{right}%
@@ -1080,13 +1091,13 @@
\ifnum\hasse@D@label>\the\dynkin@rank%
\hasse@D@label -\hasse@D@label\relax%
\advance\hasse@D@label \the\dynkin@rank\relax%
- \advance\hasse@D@label \the\drmo\relax%
+ \advance\hasse@D@label \the\dynkin@rank@minus@one\relax%
\fi%
- \ifnum\drmo<#1%
+ \ifnum\dynkin@rank@minus@one<#1%
\else%
\ifnum#2=1%
\else%
- \ifnum\hasse@D@gpi<\the\drpo%
+ \ifnum\hasse@D@gpi<\the\dynkin@rank@plus@one%
\else%
\advance\hasse@D@label 1\relax%
\fi%
@@ -1099,11 +1110,11 @@
\global\advance\hasse@D@target by 1\relax%
\fi%
\else%
- \ifnum\drmo=#1%
+ \ifnum\dynkin@rank@minus@one=#1%
\global\advance\hasse@D@target by -1\relax%
\fi%
\fi%
- \ifnum\hasse@D@gpi=\the\drpo%
+ \ifnum\hasse@D@gpi=\the\dynkin@rank@plus@one%
\ifnum#2>1%
\xdef\hasse@D@layer{Dynkin behind}%
\xdef\hasse@D@LR{right}%
@@ -1112,7 +1123,7 @@
\ifnum\hasse@D@gpi=\the\dynkin@rank%
\xdef\hasse@D@layer{Dynkin above}%
\else%
- \ifnum\hasse@D@gpi=\the\drmo%
+ \ifnum\hasse@D@gpi=\the\dynkin@rank@minus@one%
\xdef\hasse@D@layer{Dynkin above}%
\else%
\xdef\hasse@D@layer{Dynkin middle}%
@@ -1129,7 +1140,7 @@
\end{pgfonlayer}%
\fi%
% % Draw any other edges.
- \ifnum\hasse@D@gpi=\the\drmo%
+ \ifnum\hasse@D@gpi=\the\dynkin@rank@minus@one%
\hasse@D@target#2\relax%
\advance\hasse@D@target by 1\relax%
\begin{pgfonlayer}{Dynkin behind}
@@ -1142,38 +1153,7 @@
}%
\newcount\maxD@grd%
\newcount\D@grd%
-\newcount\maxxD%
\newcount\sum@D%
-\NewDocumentCommand\draw@D@roots{}%
-{%
- \drmo \the\dynkin@rank\relax%
- \advance\drmo by -1\relax%
- \maxD@grd \the\dynkin@rank\relax%
- \advance\maxD@grd by \the\dynkin@rank\relax%
- \advance\maxD@grd by -2\relax%
- \D@grd 1\relax%
- \loop%
- % Construct the roots at grade \D@grd.
- \draw@D@roots@at@grade{\D@grd}%
- \advance\D@grd by 1\relax%
- \ifnum\D@grd<\the\maxD@grd%
- \repeat%
-}%
-\NewDocumentCommand\draw@D@roots@at@grade{m}%
-{%
- \hasse@D@width@at@grade{#1}{\max@D@roots}%
- \max@D@roots@plus@one \the\max@D@roots\relax%
- \advance\max@D@roots@plus@one 1\relax%
- \D@r 1\relax%
- {%
- \loop%
- \draw@lie@hasse@root{\the\D@grd;\the\D@r}%
- \advance\D@r by 1\relax%
- \ifnum\D@r<\the\max@D@roots@plus@one%
- \repeat%
- }%
-}%
-%}%
\newcount\lie@hasse@grade@no
\newcount\lie@hasse@root@no
\def\lie@hasse@XX{}
@@ -1205,14 +1185,14 @@
\coordinate
(\the\lie@hasse@grade@no;\the\lie@hasse@root@no)
at
- ({\lie@hasse@XX*\dynkin@edge@length/2},
- {(\the\lie@hasse@grade@no-1)*\dynkin@edge@length/2}) {};%
+ ({\lie@hasse@XX*\lie@hasse@edge@length/2},
+ {(\the\lie@hasse@grade@no-1)*\lie@hasse@edge@length/2}) {};%
\global\advance\lie@hasse@root@no by 1%
}%
\NewDocumentCommand\lie@hasse@place@root@list{m}%
{%
\global\lie@hasse@root@no 1\relax%
- \expandafter\forcsvlist\expandafter{\lie@hasse@place@root}{#1}%
+ \expandafter\forcsvlist\expandafter\lie@hasse@place@root{#1}%
\global\advance\lie@hasse@grade@no by 1%
}%
\NewDocumentCommand\lie@hasse@place@roots{m}%
@@ -1224,26 +1204,6 @@
}%
\expandafter\docsvlist\expandafter{#1}%
}%
-\NewDocumentCommand\lie@hasse@draw@root{m}%
-{%
- \draw@lie@hasse@root{\the\lie@hasse@grade@no;\the\lie@hasse@root@no}%
- \global\advance\lie@hasse@root@no by 1%
-}%
-\NewDocumentCommand\lie@hasse@root@draw@list{m}%
-{%
- \global\lie@hasse@root@no 1\relax%
- \expandafter\forcsvlist\expandafter{\lie@hasse@draw@root}{#1}%
- \global\advance\lie@hasse@grade@no by 1%
-}%
-\NewDocumentCommand\lie@hasse@draw@roots{m}%
-{%
- \global\lie@hasse@grade@no 1\relax%
- \renewcommand*{\do}[1]%
- {%
- \lie@hasse@root@draw@list{##1}%
- }%
- \expandafter\docsvlist\expandafter{#1}%
-}%
\newcount\lie@hasse@grade@no@plus@one%
\newcount\lie@hasse@edge@count%
\def\lie@hasse@edge@go{%
@@ -1256,7 +1216,8 @@
{%
\global\advance\lie@hasse@edge@count by 1\relax%
\begin{pgfonlayer}{Dynkin above}%
- \lie@hasse@finish@edge#1!%
+%%? \lie@hasse@finish@edge#1!%
+ \lie@hasse@finish@edge#1\relax%
\end{pgfonlayer}%
}%
\def\lie@hasse@process@edge@behind#1!%
@@ -1289,13 +1250,12 @@
\NewDocumentCommand\lie@hasse@process@edge@lists{m}%
{%
\global\lie@hasse@grade@no 1\relax%
- \expandafter\forcsvlist\expandafter{\lie@hasse@process@edge@list}{#1}%
+ \expandafter\forcsvlist\expandafter\lie@hasse@process@edge@list{#1}%
}%
\NewDocumentCommand\hasse@X{mm}%
{%
\lie@hasse@place@roots{#1}%
\lie@hasse@process@edge@lists{#2}%
- \lie@hasse@draw@roots{#1}%
}%
\NewDocumentCommand\hasse@E@six@width@at@grade{mm}%
{%
@@ -1323,7 +1283,11 @@
#2 1%
\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
}%
-% In the following code, edges are described by grade: in grade g, the expression i+r<j. means an edge from g;i to (g+1);j labelled by root r, with a label on the left; use > instead of < to get the right. Use a star in front to get this edge on the higher layer.
+% In the following code, edges are described by grade:
+% in grade g, the expression i+r<j. means an edge from
+% g;i to (g+1);j labelled by root r, with a label on
+% the left; use > instead of < to get the right. Use a
+% star in front to get this edge on the higher layer.
\NewDocumentCommand\hasse@E@six{}%
{%
\hasse@X%
@@ -1353,13 +1317,45 @@
}%%%
\iflie@hasse@threeD%
\begin{pgfonlayer}{Dynkin middle}%
-\fill[/Lie Hasse diagram/top] (2;1) -- (5;3) -- (2;5) -- (1;5) -- (2;4) -- (1;3) -- (2;2) -- (1;2) -- cycle;%
-\fill[/Lie Hasse diagram/top] (2;3) -- (4;1) -- (6;2) -- (4;5) -- cycle;%
-\fill[/Lie Hasse diagram/right] (1;3) -- (2;3) -- (4;5) -- (3;5) -- cycle;%
-\fill[/Lie Hasse diagram/left] (3;1) -- (4;1) -- (2;3) -- (1;3) -- cycle;%
-\fill[/Lie Hasse diagram/left] (4;3) -- (5;1) -- (6;1) -- (5;2) -- cycle;%
-\fill[/Lie Hasse diagram/right] (4;3) -- (5;2) -- (6;3) -- (5;4) -- cycle;%
-\fill[/Lie Hasse diagram/top] (5;2) -- (7;1) -- (9;1) -- (7;3) -- cycle;%
+ \fill[/Lie Hasse diagram/top]
+ (2;1) --
+ (5;3) --
+ (2;5) --
+ (1;5) --
+ (2;4) --
+ (1;3) --
+ (2;2) --
+ (1;2) -- cycle;%
+ \fill[/Lie Hasse diagram/top]
+ (2;3) --
+ (4;1) --
+ (6;2) --
+ (4;5) -- cycle;%
+ \fill[/Lie Hasse diagram/right]
+ (1;3) --
+ (2;3) --
+ (4;5) --
+ (3;5) -- cycle;%
+ \fill[/Lie Hasse diagram/left]
+ (3;1) --
+ (4;1) --
+ (2;3) --
+ (1;3) -- cycle;%
+ \fill[/Lie Hasse diagram/left]
+ (4;3) --
+ (5;1) --
+ (6;1) --
+ (5;2) -- cycle;%
+ \fill[/Lie Hasse diagram/right]
+ (4;3) --
+ (5;2) --
+ (6;3) --
+ (5;4) -- cycle;%
+ \fill[/Lie Hasse diagram/top]
+ (5;2) --
+ (7;1) --
+ (9;1) --
+ (7;3) -- cycle;%
\end{pgfonlayer}%
\fi%
}%
@@ -1399,7 +1395,6 @@
#2 1%
\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
}%
-
\NewDocumentCommand\hasse@E@seven{}%
{%
\hasse@X%
@@ -1457,20 +1452,64 @@
}%%%
\iflie@hasse@threeD%
\begin{pgfonlayer}{Dynkin middle}%
-\fill[/Lie Hasse diagram/top] (2;1) -- (6;3) -- (2;6) -- (1;6) -- (2;5) -- (1;4) -- (2;3) -- (1;3) --
- (2;2) -- (1;2) -- cycle;%
-\fill[/Lie Hasse diagram/top] (5;1) -- (7;3) -- (4;6) -- (2;4) -- cycle;%
-\fill[/Lie Hasse diagram/top] (7;1) -- (9;3) -- (7;5) -- (5;4) -- cycle;%
-\fill[/Lie Hasse diagram/top] (9;1) -- (12;1) -- (13;1) -- (14;1) -- (11;3) -- (7;2) -- cycle;%
-\fill[/Lie Hasse diagram/right] (1;4) -- (2;4) -- (4;6) -- (3;6) -- cycle;%
-\fill[/Lie Hasse diagram/left] (4;1) -- (5;1) -- (2;4) -- (1;4) -- cycle;%
-\fill[/Lie Hasse diagram/left] (4;4) -- (6;1) -- (8;1) -- (7;2) -- (6;2) -- (5;4) -- cycle;%
-\fill[/Lie Hasse diagram/right] (4;4) -- (5;4) -- (6;5) -- (5;6) -- cycle;%
-\fill[/Lie Hasse diagram/right] (6;2) -- (7;2) -- (9;4) -- (8;4) -- cycle;%
+ \fill[/Lie Hasse diagram/top]
+ (2;1) --
+ (6;3) --
+ (2;6) --
+ (1;6) --
+ (2;5) --
+ (1;4) --
+ (2;3) --
+ (1;3) --
+ (2;2) --
+ (1;2) -- cycle;%
+ \fill[/Lie Hasse diagram/top]
+ (5;1) --
+ (7;3) --
+ (4;6) --
+ (2;4) -- cycle;%
+ \fill[/Lie Hasse diagram/top]
+ (7;1) --
+ (9;3) --
+ (7;5) --
+ (5;4) -- cycle;%
+ \fill[/Lie Hasse diagram/top]
+ (9;1) --
+ (12;1) --
+ (13;1) --
+ (14;1) --
+ (11;3) --
+ (7;2) -- cycle;%
+ \fill[/Lie Hasse diagram/right]
+ (1;4) --
+ (2;4) --
+ (4;6) --
+ (3;6) -- cycle;%
+ \fill[/Lie Hasse diagram/left]
+ (4;1) --
+ (5;1) --
+ (2;4) --
+ (1;4) -- cycle;%
+ \fill[/Lie Hasse diagram/left]
+ (4;4) --
+ (6;1) --
+ (8;1) --
+ (7;2) --
+ (6;2) --
+ (5;4) -- cycle;%
+ \fill[/Lie Hasse diagram/right]
+ (4;4) --
+ (5;4) --
+ (6;5) --
+ (5;6) -- cycle;%
+ \fill[/Lie Hasse diagram/right]
+ (6;2) --
+ (7;2) --
+ (9;4) --
+ (8;4) -- cycle;%
\end{pgfonlayer}%
\fi%
}%
-
\NewDocumentCommand\hasse@E@eight@width@at@grade{mm}%
{%
\ifnum#1=1%
@@ -1527,7 +1566,6 @@
#2 1%
\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
}%
-
\NewDocumentCommand\hasse@E@eight{}%
{%
\hasse@X{%
@@ -1754,11 +1792,11 @@
{{0,2,4,6},{1,3,5},{2,3:1,4},{2:1,3,4:1},{1:1,3:1,5:1},{2:1,4:1},{1:1,3:1},{2:1},{2:2},{2:3},{2:4}}%
{% grades:
{% 1
-1+2<1,*2+3<2,*3+4<3,*2+1>1,*3+2>2,4+3>3},
+1+2<1,*2+3>2,*3+4>3,*2+1<1,*3+2<2,4+3>3},
{% 2
-*1+3<1,*2+4<3,*2+3<2,*2+1<1,3+2>3},
+*1+3<1,*2+4>3,*2+1<1,*2+3>2,3+2>3},
{% 3
-*1+3<1,1+4<2,*2+4<3,*2+1<1,3+1>2,*3+3>3},
+*1+3<1,1+4>2,*2+4>3,*2+1<1,3+1>2,*3+3>3},
{% 4
*1+2<1,*1+4<2,2+3<2,*3+1>2,*3+4>3},
{% 5
@@ -2026,8 +2064,8 @@
}%
\global\root@sum@resetfalse%
}%
-\xdef\my@root@sum{}%
-\xdef\my@fixed@root@sum{}%
+\xdef\lie@hasse@root@sum{}%
+\xdef\lie@hasse@fixed@root@sum{}%
\NewDocumentCommand\rootSum{oommm}%
{%
\IfValueT{#1}%
@@ -2053,15 +2091,15 @@
\fi%
\IfStrEqCase{\dynkin@series}%
{%
- {A}{\hasse@A@root@sum{#3}{#4}{\my@root@sum}}%
- {B}{\hasse@B@root@sum{#3}{#4}{\my@root@sum}}%
- {C}{\hasse@C@root@sum{#3}{#4}{\my@root@sum}}%
- {D}{\hasse@D@root@sum{#3}{#4}{\my@root@sum}}%
- {E}{\xdef\my@root@sum{\exceptional@root@sum{#3;#4}}}%
- {F}{\xdef\my@root@sum{\exceptional@root@sum{#3;#4}}}%
- {G}{\xdef\my@root@sum{\exceptional@root@sum{#3;#4}}}%
+ {A}{\hasse@A@root@sum{#3}{#4}{\lie@hasse@root@sum}}%
+ {B}{\hasse@B@root@sum{#3}{#4}{\lie@hasse@root@sum}}%
+ {C}{\hasse@C@root@sum{#3}{#4}{\lie@hasse@root@sum}}%
+ {D}{\hasse@D@root@sum{#3}{#4}{\lie@hasse@root@sum}}%
+ {E}{\xdef\lie@hasse@root@sum{\exceptional@root@sum{#3;#4}}}%
+ {F}{\xdef\lie@hasse@root@sum{\exceptional@root@sum{#3;#4}}}%
+ {G}{\xdef\lie@hasse@root@sum{\exceptional@root@sum{#3;#4}}}%
}%
- \StrSubstitute{\my@root@sum}{.}{,}[#5]%
+ \StrSubstitute{\lie@hasse@root@sum}{.}{,}[#5]%
}%
%% \rootSystemHeight[G][2]{\h} sets the counter \h to the height of the poset
%% of the root system G2. \rootSystemHeight{\h} uses the current root system.
@@ -2451,7 +2489,7 @@
4;1=3.1,%
5;1=3.2}%
}%
-\NewDocumentCommand\forAllPositiveRootsInHasseDiagram{m}%
+\NewDocumentCommand\forAllPositiveRoots{m}%
{%
\rootSystemHeight{\lie@hasse@height}%
\foreach \root@grady in {1,...,\the\lie@hasse@height}%
diff --git a/Master/texmf-dist/tex/latex/listings/listings-acm.prf b/Master/texmf-dist/tex/latex/listings/listings-acm.prf
index dc28dfa2298..1c37f1cecf7 100644
--- a/Master/texmf-dist/tex/latex/listings/listings-acm.prf
+++ b/Master/texmf-dist/tex/latex/listings/listings-acm.prf
@@ -22,7 +22,7 @@
%% programming languages to Jobst Hoffmann at <j.hoffmann@fh-aachen.de>.
%%
\ProvidesFile{listings-acm.prf}
- [2024/05/25 1.10b listings language file]
+ [2024/09/23 1.10c listings language file]
\usepackage[rgb, x11names]{xcolor}
\definecolor{Comments}{rgb}{0.00,0.50,0.00}
diff --git a/Master/texmf-dist/tex/latex/listings/listings-bash.prf b/Master/texmf-dist/tex/latex/listings/listings-bash.prf
index f79b2e4152a..d6a9673d240 100644
--- a/Master/texmf-dist/tex/latex/listings/listings-bash.prf
+++ b/Master/texmf-dist/tex/latex/listings/listings-bash.prf
@@ -22,7 +22,7 @@
%% programming languages to Jobst Hoffmann at <j.hoffmann@fh-aachen.de>.
%%
\ProvidesFile{listings-bash.prf}
- [2024/05/25 1.10b listings language file]
+ [2024/09/23 1.10c listings language file]
\usepackage[rgb, x11names]{xcolor}
\lstset{%
diff --git a/Master/texmf-dist/tex/latex/listings/listings-fortran.prf b/Master/texmf-dist/tex/latex/listings/listings-fortran.prf
index 52a2a0db65e..92e34d76107 100644
--- a/Master/texmf-dist/tex/latex/listings/listings-fortran.prf
+++ b/Master/texmf-dist/tex/latex/listings/listings-fortran.prf
@@ -22,7 +22,7 @@
%% programming languages to Jobst Hoffmann at <j.hoffmann@fh-aachen.de>.
%%
\ProvidesFile{listings-fortran.prf}
- [2024/05/25 1.10b listings language file]
+ [2024/09/23 1.10c listings language file]
\usepackage[rgb, x11names]{xcolor}
\lstset{%
diff --git a/Master/texmf-dist/tex/latex/listings/listings-hansl.prf b/Master/texmf-dist/tex/latex/listings/listings-hansl.prf
index f5e3d6bb9d6..f581320a43a 100644
--- a/Master/texmf-dist/tex/latex/listings/listings-hansl.prf
+++ b/Master/texmf-dist/tex/latex/listings/listings-hansl.prf
@@ -22,7 +22,7 @@
%% programming languages to Jobst Hoffmann at <j.hoffmann@fh-aachen.de>.
%%
\ProvidesFile{listings-hansl.prf}
- [2024/05/25 1.10b listings language file]
+ [2024/09/23 1.10c listings language file]
\usepackage[rgb, x11names]{xcolor}
\lstdefinestyle{hanslbw}{%
diff --git a/Master/texmf-dist/tex/latex/listings/listings-lua.prf b/Master/texmf-dist/tex/latex/listings/listings-lua.prf
index 7fdeea59d81..8ab08205f85 100644
--- a/Master/texmf-dist/tex/latex/listings/listings-lua.prf
+++ b/Master/texmf-dist/tex/latex/listings/listings-lua.prf
@@ -22,7 +22,7 @@
%% programming languages to Jobst Hoffmann at <j.hoffmann@fh-aachen.de>.
%%
\ProvidesFile{listings-lua.prf}
- [2024/05/25 1.10b listings language file]
+ [2024/09/23 1.10c listings language file]
\usepackage[rgb, x11names]{xcolor}
\lstdefinestyle{Lua}{%
language=[5.2]Lua,
diff --git a/Master/texmf-dist/tex/latex/listings/listings-python.prf b/Master/texmf-dist/tex/latex/listings/listings-python.prf
index 3d8ef9a3c9f..dbee3a2fe2e 100644
--- a/Master/texmf-dist/tex/latex/listings/listings-python.prf
+++ b/Master/texmf-dist/tex/latex/listings/listings-python.prf
@@ -22,7 +22,7 @@
%% programming languages to Jobst Hoffmann at <j.hoffmann@fh-aachen.de>.
%%
\ProvidesFile{listings-python.prf}
- [2024/05/25 1.10b listings language file]
+ [2024/09/23 1.10c listings language file]
\usepackage{xcolor}
\usepackage{textcomp}
diff --git a/Master/texmf-dist/tex/latex/listings/listings-rexx.prf b/Master/texmf-dist/tex/latex/listings/listings-rexx.prf
index 0548072e97e..1562ab9f39c 100644
--- a/Master/texmf-dist/tex/latex/listings/listings-rexx.prf
+++ b/Master/texmf-dist/tex/latex/listings/listings-rexx.prf
@@ -22,7 +22,7 @@
%% programming languages to Jobst Hoffmann at <j.hoffmann@fh-aachen.de>.
%%
\ProvidesFile{listings-rexx.prf}
- [2024/05/25 1.10b listings language file]
+ [2024/09/23 1.10c listings language file]
\usepackage{xcolor} % needed for colors like yellow!10
\usepackage{textcomp} % needed for upquote
diff --git a/Master/texmf-dist/tex/latex/listings/listings.cfg b/Master/texmf-dist/tex/latex/listings/listings.cfg
index 3024c431afa..2928f82c6e8 100644
--- a/Master/texmf-dist/tex/latex/listings/listings.cfg
+++ b/Master/texmf-dist/tex/latex/listings/listings.cfg
@@ -21,7 +21,7 @@
%% Send comments and ideas on the package, error reports and additional
%% programming languages to Jobst Hoffmann at <j.hoffmann@fh-aachen.de>.
%%
-\ProvidesFile{listings.cfg}[2024/05/25 1.10b listings configuration]
+\ProvidesFile{listings.cfg}[2024/09/23 1.10c listings configuration]
\def\lstlanguagefiles
{lstlang0.sty,lstlang1.sty,lstlang2.sty,lstlang3.sty}
\lstset{defaultdialect=[R/3 6.10]ABAP,
diff --git a/Master/texmf-dist/tex/latex/listings/listings.sty b/Master/texmf-dist/tex/latex/listings/listings.sty
index 28fc678ad55..e056a98e86e 100644
--- a/Master/texmf-dist/tex/latex/listings/listings.sty
+++ b/Master/texmf-dist/tex/latex/listings/listings.sty
@@ -16,8 +16,8 @@
%% Send comments and ideas on the package, error reports and additional
%% programming languages to Jobst Hoffmann at <j.hoffmann@fh-aachen.de>.
%%
-\def\filedate{2024/05/25}
-\def\fileversion{1.10b}
+\def\filedate{2024/09/23}
+\def\fileversion{1.10c}
\NeedsTeXFormat{LaTeX2e}
\AtEndOfPackage{\ProvidesPackage{listings}
[\filedate\space\fileversion\space(Carsten Heinz)]}
@@ -920,6 +920,8 @@
\def#2{#6}}
\def\lst@UM#1{\csname\@lst @um#1@\endcsname}
\lst@CCPutMacro
+ \lst@ProcessOther {"22}{\lst@ifupquote \textquotedbl
+ \else \char34\relax \fi}
\lst@ProcessOther {"23}\#
\lst@ProcessLetter{"24}\textdollar
\lst@ProcessOther {"25}\%
@@ -1435,28 +1437,29 @@
\def\lst@linerange{#2}\lst@GLI@#1--\@nil%
}
\def\lst@GLI@#1-#2-#3\@nil{%
+
\lst@IfNumber{#1}%
{%
\ifx\@empty#1\@empty
\let\lst@firstline\@ne
\else
- \def\lst@firstline{#1\relax}%
+ \def\lst@firstline{#1\relax}
\fi
- \ifx\@empty#3\@empty%
- \def\lst@lastline{9999999\relax}%
+ \ifx\@empty#3\@empty
+ \def\lst@lastline{9999999\relax}
\ifx\@empty#2\@empty
- \let\lst@lastline\lst@firstline%
+ \let\lst@lastline\lst@firstline
\fi
\else%
\ifx\@empty#2\@empty
\def\lst@lastline{9999999\relax}
\else % doesn't happen(?)
- \def\lst@lastline{#2\relax}%
+ \def\lst@lastline{#2\relax}
\fi
\fi
}%
{%
- \def\lst@firstline{9999999\relax}%
+ \def\lst@firstline{9999999\relax}
\let\lst@lastline\lst@firstline
\let\lst@rangebegin\lst@rangebeginprefix
\lst@AddTo\lst@rangebegin{#1}%
@@ -1506,10 +1509,10 @@
\ifnum\@tempcnta=\z@ \else
\lst@nololtrue
\advance\@tempcnta\lst@advancenumber
- \edef\lst@firstnumber{\the\@tempcnta\relax}%
- \fi%
- \fi%
- }%
+ \edef\lst@firstnumber{\the\@tempcnta\relax}
+ \fi
+ \fi
+ }
}
\def\lst@InitLstNumber{%
\global\c@lstnumber\lst@firstnumber
@@ -1681,14 +1684,17 @@
\def\lst@maketitle{\caption@startrue\@makecaption\@empty}}%
}
\def\lst@HRefStepCounter#1{%
- \begingroup
- \c@lstlisting\lst@neglisting
- \advance\c@lstlisting\m@ne \xdef\lst@neglisting{\the\c@lstlisting}%
- \ifx\hyper@refstepcounter\@undefined\else
- \hyper@refstepcounter{#1}%
- \fi
- \endgroup}
-\gdef\lst@neglisting{\z@}% init
+ \begingroup
+ \c@lstlisting\lst@neglisting
+ \advance\c@lstlisting\m@ne \xdef\lst@neglisting{\the\c@lstlisting}%
+ \ifx\hyper@refstepcounter\@undefined\else
+ \hyper@refstepcounter{#1}%
+ \fi
+ \endgroup
+}
+\gdef\lst@neglisting{\z@}% init, \z@ can be used both for 0pt and 0,
+ % remember: _neg_ative number, but no
+ % counter!
\lst@Key{boxpos}{c}{\def\lst@boxpos{#1}}
\def\lst@boxtrue{\let\lst@ifbox\iftrue}
\let\lst@ifbox\iffalse
diff --git a/Master/texmf-dist/tex/latex/listings/lstdoc.sty b/Master/texmf-dist/tex/latex/listings/lstdoc.sty
index 5de8d7ec5ab..3023a1a2974 100644
--- a/Master/texmf-dist/tex/latex/listings/lstdoc.sty
+++ b/Master/texmf-dist/tex/latex/listings/lstdoc.sty
@@ -6,8 +6,8 @@
%%
%% listings.dtx (with options: `doc')
%%
-\def\filedate{2024/05/25}
-\def\fileversion{1.10b}
+\def\filedate{2024/09/23}
+\def\fileversion{1.10c}
\ProvidesPackage{lstdoc}
[\filedate\space\fileversion\space(Carsten Heinz)]
\let\lstdoc@currversion\fileversion
@@ -32,7 +32,7 @@
\ifalgorithmicpkg \RequirePackage{algorithmic}\fi
\iflgrind \RequirePackage{lgrind}\fi
\RequirePackage{nameref}
-\RequirePackage{url}
+\RequirePackage{xurl} % allow URL breaks
\renewcommand\ref{\protect\T@ref}
\renewcommand\pageref{\protect\T@pageref}
\def\lst@BeginRemark#1{%
diff --git a/Master/texmf-dist/tex/latex/listings/lstlang1.sty b/Master/texmf-dist/tex/latex/listings/lstlang1.sty
index 97481e7d77b..e22121fbc01 100644
--- a/Master/texmf-dist/tex/latex/listings/lstlang1.sty
+++ b/Master/texmf-dist/tex/latex/listings/lstlang1.sty
@@ -22,7 +22,7 @@
%% programming languages to Jobst Hoffmann at <j.hoffmann@fh-aachen.de>.
%%
\ProvidesFile{lstlang1.sty}
- [2024/05/25 1.10b listings language file]
+ [2024/09/23 1.10c listings language file]
%%
%% ACSL definition (c) 2000 by Andreas Matthias
%%
diff --git a/Master/texmf-dist/tex/latex/listings/lstlang2.sty b/Master/texmf-dist/tex/latex/listings/lstlang2.sty
index 711754208fa..e00818eb63f 100644
--- a/Master/texmf-dist/tex/latex/listings/lstlang2.sty
+++ b/Master/texmf-dist/tex/latex/listings/lstlang2.sty
@@ -22,7 +22,7 @@
%% programming languages to Jobst Hoffmann at <j.hoffmann@fh-aachen.de>.
%%
\ProvidesFile{lstlang2.sty}
- [2024/05/25 1.10b listings language file]
+ [2024/09/23 1.10c listings language file]
%%
%% Abap definition by Knut Lickert
%%
diff --git a/Master/texmf-dist/tex/latex/listings/lstlang3.sty b/Master/texmf-dist/tex/latex/listings/lstlang3.sty
index 751259d95d7..0fb43a4c370 100644
--- a/Master/texmf-dist/tex/latex/listings/lstlang3.sty
+++ b/Master/texmf-dist/tex/latex/listings/lstlang3.sty
@@ -22,7 +22,7 @@
%% programming languages to Jobst Hoffmann at <j.hoffmann@fh-aachen.de>.
%%
\ProvidesFile{lstlang3.sty}
- [2024/05/25 1.10b listings language file]
+ [2024/09/23 1.10c listings language file]
\lst@definelanguage[68]{Algol}%
{morekeywords={abs,and,arg,begin,bin,bits,bool,by,bytes,case,channel,%
char,co,comment,compl,conj,divab,do,down,elem,elif,else,empty,%
diff --git a/Master/texmf-dist/tex/latex/listings/lstmisc.sty b/Master/texmf-dist/tex/latex/listings/lstmisc.sty
index 9e663303727..d3bf1fbf58e 100644
--- a/Master/texmf-dist/tex/latex/listings/lstmisc.sty
+++ b/Master/texmf-dist/tex/latex/listings/lstmisc.sty
@@ -16,8 +16,8 @@
%% Send comments and ideas on the package, error reports and additional
%% programming languages to Jobst Hoffmann at <j.hoffmann@fh-aachen.de>.
%%
-\def\filedate{2024/05/25}
-\def\fileversion{1.10b}
+\def\filedate{2024/09/23}
+\def\fileversion{1.10c}
\ProvidesFile{lstmisc.sty}
[\filedate\space\fileversion\space(Carsten Heinz)]
\lst@CheckVersion\fileversion%
@@ -1186,14 +1186,14 @@
right:\def\lst@PlaceNumber{\rlap{\normalfont
\kern\linewidth \kern\lst@numbersep
\lst@numberstyle{\thelstnumber}}}%
- }{\PackageError{Listings}{Numbers #1 unknown}\@ehc}}
+ }{\PackageError{Listings}{value `#1' for keyword `numbers' not supported}\@ehc}}
+\lst@Key{stepnumber}{1}{\def\lst@stepnumber{#1\relax}}
+\lst@Key{numberfirstline}{f}[t]{\lstKV@SetIf{#1}\lst@ifnumberfirstline}
\lst@Key{numberstyle}{}{\def\lst@numberstyle{#1}}
\lst@Key{numbersep}{10pt}{\def\lst@numbersep{#1}}
-\lst@Key{stepnumber}{1}{\def\lst@stepnumber{#1\relax}}
-\lst@AddToHook{EmptyStyle}{\let\lst@stepnumber\@ne}
\lst@Key{numberblanklines}{true}[t]
{\lstKV@SetIf{#1}\lst@ifnumberblanklines}
-\lst@Key{numberfirstline}{f}[t]{\lstKV@SetIf{#1}\lst@ifnumberfirstline}
+\lst@AddToHook{EmptyStyle}{\let\lst@stepnumber\@ne}
\gdef\lst@numberfirstlinefalse{\let\lst@ifnumberfirstline\iffalse}
\lst@Key{firstnumber}{auto}{%
\lstKV@SwitchCases{#1}%
diff --git a/Master/texmf-dist/tex/latex/litesolution/litesolution.cls b/Master/texmf-dist/tex/latex/litesolution/litesolution.cls
index 0f59d89630f..2b7a3ecb345 100644
--- a/Master/texmf-dist/tex/latex/litesolution/litesolution.cls
+++ b/Master/texmf-dist/tex/latex/litesolution/litesolution.cls
@@ -1,5 +1,5 @@
%% ***********************************************************
-%% Copyright 2024 by Mingyu Hsia <xiamyphys@hdu.edu.cn> *
+%% Copyright 2024 by Mingyu XIA <xiamyphys@gmail.com> *
%% *
%% This work may be distributed and/or modified under *
%% the conditions of the LaTeX Project Public License *
@@ -11,19 +11,18 @@
%% *
%% This work has the LPPL maintenance status `maintained'. *
%% *
-%% The Current Maintainer of this work is Mingyu Hsia. *
+%% The Current Maintainer of this work is Mingyu XIA. *
%% *
%% This work consists of the files litesolution.cls, *
%% and README.md. *
-%% available at https://github.com/xiamyphys/litsolution *
+%% available at https://github.com/xiamyphys/litesolution *
%% ***********************************************************
% !Mode:: "TeX:UTF-8"
\NeedsTeXFormat{LaTeX2e}
\PassOptionsToPackage{no-math}{fontspec}
\PassOptionsToPackage{svgnames}{xcolor}
-\ProvidesClass{litesolution}[2024/05/07 v2.2b LiteSolution document class]
-\RequirePackage{kvoptions}
-\RequirePackage{etoolbox}
+\ProvidesClass{litesolution}[2024/08/15 v2.4a LiteSolution document class]
+\RequirePackage{kvoptions,etoolbox,keyval}
\SetupKeyvalOptions{family=LITE, prefix=LITE@, setkeys=\kvsetkeys}
\def\ekv#1{\kvsetkeys{LITE}{#1}}
@@ -39,7 +38,7 @@
\ProcessKeyvalOptions*\relax
\LoadClass[letterpaper,11pt]{book}
-\RequirePackage{setspace,datetime,caption,booktabs,multicol,diagbox,paracol}
+\RequirePackage{setspace,datetime,tabularx,caption,subcaption,anyfontsize,booktabs,multicol,diagbox,paracol}
\linespread{1.3}
\ddmmyyyydate
\captionsetup{labelsep=period,labelfont={bf,sf},font=small}
@@ -52,18 +51,18 @@
\setlist[enumerate]{itemsep=.5ex}
\setlist[itemize]{itemsep=.5ex}
\RequirePackage[notelinecolor=MidnightBlue,notemargin=.75in]{notebeamer}
-\geometry{margin=1in}
+\geometry{margin=1in,headheight=14pt}
\RequirePackage[nokeyprefix]{refstyle}
\newref{eq}{refcmd=(\ref{#1}),name={\sffamily eq.~},Name={\sffamily Eq.~}}
\newref{fig}{name={\sffamily fig.~},Name={\sffamily Fig.~}}
\newref{tab}{name={\sffamily tab.~},Name={\sffamily Tab.~}}
-\RequirePackage{graphics,graphicx,wallpaper,pagecolor}
+\RequirePackage{graphicx,magicwatermark,pagecolor}
\graphicspath{{./figure/}{./figures/}{./image/}{./images/}{./graphics/}{./graphic/}{./pictures/}{./picture/}}
\RequirePackage{ifxetex}
\ifXeTeX
- \RequirePackage[quiet]{xeCJK}
+ \RequirePackage[quiet,CJKmath,CheckSingle,PlainEquation]{xeCJK}
\RequirePackage{zhlipsum}
\setlength{\parindent}{2em}
\fi
@@ -82,8 +81,7 @@
\RequirePackage[mono=false]{libertine}
}{\relax}
\let\openbox\relax\def\hmmax{0}\def\bmmax{0}
-\RequirePackage{amsthm,amssymb,mathtools,physics2,bm,fixdif,derivative,cancel,extarrows,siunitx,xfrac,nicematrix}
-\renewcommand\qedsymbol{$\color{gray}\blacksquare$}
+\RequirePackage{amssymb,mathtools,physics2,bm,fixdif,derivative,cancel,extarrows,siunitx,xfrac,nicematrix}
\usephysicsmodule{ab,braket,diagmat,doubleprod,xmat,ab.legacy,op.legacy}
\RequirePackage[e]{esvect}
\let\vec\vv
@@ -109,6 +107,7 @@
\AddToHook{cmd/faIcon/after}{\endgroup}
\RequirePackage{circuitikz,pgfplots,fadingimage}
+\RequirePackage[version=4]{mhchem}
\usetikzlibrary{arrows,tikzmark,patterns,calc,angles,quotes,intersections}
\tikzset{>=stealth',
every picture/.append style={%
@@ -133,56 +132,77 @@
\def\mode#1{\textcolor{Indigo}{\textsf{#1}}}
\def\cmd#1{\textcolor{MidnightBlue}{\texttt{\string#1}}}
-\def\subtitle#1{\gdef\@subtitle{#1}}
-\def\bioinfo#1{\gdef\@bioinfo{#1}}
-\NewDocumentCommand\coverhead{ O{0} m }{
- \gdef\@coverheadrotate{#1}\gdef\@coverhead{#2}
+\define@key{coverset}{title}{\gdef\@title{#1}}
+\define@key{coverset}{subtitle}{\gdef\@subtitle{#1}}
+\define@key{coverset}{bioinfo}{\gdef\@bioinfo{#1}}
+\define@key{coverset}{covercolor}{\gdef\@covercolor{#1}}
+\define@key{coverset}{coverhead}{\gdef\@coverhead{#1}}
+\define@key{coverset}{coverhead.rotate}{\gdef\@coverheadrotate{#1}}
+\define@key{coverset}{cover}{\gdef\@cover{#1}}
+\define@key{coverset}{cover.pattern}{\gdef\@coverpattern{#1}}
+\def\coverset#1{
+ \setkeys{coverset}{#1}
+ \ifcsname @covercolor\endcsname
+ \relax
+ \else
+ \gdef\@covercolor{DarkSlateGray}
+ \fi
}
-\NewDocumentCommand\cover{ o m }{
- \IfValueT{#1}{\gdef\@coverpattern{#1}}
- \gdef\@cover{#2}}
-\RenewDocumentCommand\maketitle{O{MidnightBlue}}{
+
+\renewcommand*\maketitle{
\begin{titlepage}
- \newgeometry{margin=0in}\newpagecolor{#1!15}
+ \newgeometry{margin=0in}
+ \newpagecolor{\@covercolor!15}
+ \gdef\@covercolor{DarkSlateGray}
\tikz[remember picture,overlay]{
- \ifcsname @coverhead\endcsname
- \node [rotate=\@coverheadrotate] at ($(current page.center)+(0,.35*\paperheight)$) {\includegraphics[width=\paperwidth]{\@coverhead}};
- \fi
\fill [white,opacity=.5] ($(current page.south west)+(.2*\paperwidth,.6*\paperheight)$) rectangle (current page.south east);
\fill [white,opacity=.5] ($(current page.south west)+(.3*\paperwidth,.7*\paperheight)$) rectangle (current page.south east);
- \ifcsname @cover\endcsname
- \node [opacity=.5] at ($(current page.south west)+(.65*\paperwidth,.3*\paperheight)$) {\includegraphics[height=.3\paperheight]{\@cover}};
- \ifcsname @coverpattern\endcsname
- \fill [pattern=\@coverpattern,pattern color=#1!15!white!25] ($(current page.south west)+(.3*\paperwidth,0)$) rectangle ++ (.7*\paperwidth,.6\paperheight);
- \fi\fi
\node [darkgray] at ($(current page.south west)+(.65*\paperwidth,.65*\paperheight)$) {\Huge\bfseries\@title};
\ifcsname @subtitle\endcsname
\node [rotate=90,gray,opacity=.6] at ($(current page.south west)+(.25*\paperwidth,.3*\paperheight)$) {\huge\bfseries\@subtitle};
\fi
\ifcsname @bioinfo\endcsname
\node [gray,opacity=.4] at ($(current page.south)+(.15*\paperwidth,.075*\paperheight)$) {\large\@bioinfo};
- \fi}
+ \fi
+ \ifcsname @coverhead\endcsname
+ \ifcsname @coverheadrotate\endcsname
+ \relax
+ \else
+ \gdef\@coverheadrotate{0}
+ \fi
+ \node [rotate=\@coverheadrotate] at ($(current page.center)+(0,.35*\paperheight)$) {\includegraphics[width=\paperwidth]{\@coverhead}};
+ \fi
+ \ifcsname @cover\endcsname
+ \node (@cover) at ($(current page.south west)+(.65*\paperwidth,.3*\paperheight)$) {\includegraphics[height=.3\paperheight]{\@cover}};
+ \ifcsname @coverpattern\endcsname
+ \fill [scope fading=south,pattern=\@coverpattern,pattern color=\@covercolor!15!white!25] (@cover.south west) rectangle (@cover.north east);
+ \fi\fi}
\end{titlepage}
- \restoregeometry\restorepagecolor
+ \restoregeometry
+ \restorepagecolor
\if@twoside
\clearpage%
- \newpagecolor{#1!15!white!50}
+ \newpagecolor{\@covercolor!15!white!25}
\thispagestyle{empty}%
\null\clearpage
- \fi\restorepagecolor
+ \fi
+ \restorepagecolor
}
\RequirePackage{tocloft}
\setlength{\cftbeforetoctitleskip}{6\p@}
\setlength{\cftaftertoctitleskip}{24\p@}
-\setlength{\cftbeforesecskip}{3\p@}
-\def\contentsname{\sffamily\scshape\hfill Contents\hfill}
+\AddToHook{cmd/tableofcontents/before}{
+ \begingroup
+ \setstretch{1.5}
+}
+\AddToHook{cmd/tableofcontents/after}{\endgroup}
+\renewcommand\contentsname{\sffamily\scshape Contents}
\setcounter{tocdepth}{1}
\let\@chapapptmp\@chapapp
-\def\@chapapp{\textsc{\@chapapptmp}}
+\gdef\@chapapp{\textsc{\@chapapptmp}}
\def\chapterimage#1{\gdef\@chapterimage{#1}}
-\def\HUGE{\@setfontsize\HUGE{30}{40}}
\def\@makechapterhead#1{%
\def\thesection{\arabic{chapter}.\arabic{section}}
\def\theproblem{\thechapter.\arabic{problem}}
@@ -194,8 +214,8 @@
\fi
\ifnum \c@secnumdepth >\m@ne
\if@mainmatter
- \parbox{6em}
- {\centering\HUGE\normalfont\bfseries\textcolor{darkgray}\thechapter\vskip4\p@\normalsize\bfseries\textcolor{darkgray}{\bfseries\sffamily\@chapapp}}%
+ \parbox{6em}
+ {\centering\@setfontsize\HUGE{30}{40}\normalfont\bfseries\textcolor{darkgray}\thechapter\vskip4\p@\normalsize\bfseries\textcolor{darkgray}{\bfseries\sffamily\@chapapp}}%
\fi
\fi
\interlinepenalty\@M\hspace*{3ex}
@@ -203,20 +223,20 @@
\vskip 36\p@
}}
\def\@makeschapterhead#1{%
- \def\thesection{\arabic{section}}
- \def\theproblem{\arabic{problem}}
- \setcounter{section}{0}
- \setcounter{problem}{0}
- {\centering
- \ifcsname @chapterimage\endcsname
- \@chapterimage
- \fi\vskip-40\p@
- \parindent \z@ \normalfont
- \interlinepenalty\@M
- \huge \bfseries #1\par\nobreak
- \vskip 28\p@}}
+\def\thesection{\arabic{section}}
+\def\theproblem{\arabic{problem}}
+\setcounter{section}{0}
+\setcounter{problem}{0}
+{\centering
+\ifcsname @chapterimage\endcsname
+ \@chapterimage
+\fi\vskip-40\p@
+ \parindent \z@ \normalfont
+ \interlinepenalty\@M
+ \huge \bfseries #1\par\nobreak
+ \vskip 28\p@}}
\let\cleardoublepage=\clearpage
-\renewcommand*{\cleardoublepage}{\clearpage\if@twoside \ifodd\c@page\else
+\renewcommand*\cleardoublepage{\clearpage\if@twoside \ifodd\c@page\else
\ifnum \thechapter=0
\vspace*{\fill}
{\centering\itshape\Large This page was intentionally left blank.\par}
@@ -231,27 +251,38 @@
\RequirePackage{fancyhdr}
\pagestyle{fancy}
- \let\oldheadrule\headrule
- \renewcommand{\headrule}{{\color{gray}\oldheadrule}}
- \renewcommand{\headrulewidth}{1pt}
- \if@twoside\cfoot{}
- \fancyhead[OL]{\color{darkgray}\nouppercase\leftmark}
- \fancyhead[OR]{\color{darkgray}\sffamily\thepage}
- \fancyhead[ER]{\color{darkgray}\nouppercase\rightmark}
- \fancyhead[EL]{\color{darkgray}\sffamily\thepage}
- \else
- \fancyhead[L]{\color{darkgray}\nouppercase\leftmark}
- \fancyhead[R]{\color{darkgray}\nouppercase\rightmark}
- \cfoot{\color{darkgray}\sffamily\thepage}
- \fi
- \setlength{\headheight}{14pt}
+\let\oldheadrule\headrule
+\renewcommand{\headrule}{{\color{gray}\oldheadrule}}
+\renewcommand{\headrulewidth}{1pt}
+\fancyfoot[L]{\footnotesize\fbox{Unauthorized copying or reuse of any part of this page is illegal}}
+\fancyfoot[OR]{\sffamily\bfseries GO ON TO THE NEXT PAGE}
+\if@twoside\cfoot{}
+ \fancyhead[OL]{\color{darkgray}\nouppercase\leftmark}
+ \fancyhead[OR]{\color{darkgray}\sffamily\thepage}
+ \fancyhead[ER]{\color{darkgray}\nouppercase\rightmark}
+ \fancyhead[EL]{\color{darkgray}\sffamily\thepage}
+\else
+ \fancyhead[L]{\color{darkgray}\nouppercase\leftmark}
+ \fancyhead[R]{\color{darkgray}\nouppercase\rightmark}
+ \cfoot{\color{darkgray}\sffamily\thepage}
+\fi
+\RequirePackage{amsthm}
+\renewcommand\qedsymbol{$\color{gray}\blacksquare$}
\theoremstyle{definition}
\newtheorem{problem}{\color{DarkGreen}\faIcon{pen-square}~\textsc{\textsf{Problem}}}[chapter]
\newtheorem*{solution}{\color{MidnightBlue}\faIcon{check-square}~\textsc{\textsf{Solution}}}
\newtheorem*{scratch}{\color{MidnightBlue}\faIcon{check-square}~\textsc{\textsf{Scratch}}}
\newtheorem*{note}{\color{DarkRed}\faIcon{info-circle}~\textsc{\textsf{Note}}}
-\RequirePackage{comment}
+\RequirePackage{comment,ulem,soul}
+\ifxetex
+ \RequirePackage{xeCJKfntef}
+ \def\@emph#1{\CJKsout*[thickness=2.5ex, format=\color{\@covercolor!15}]{#1}}
+ \def\s@emph#1{\CJKunderwave{#1}}
+\else
+ \def\@emph#1{\sethlcolor{\@covercolor!15}\hl{#1}}
+ \def\s@emph#1{\uwave{#1}}
+\fi
\ifdefstring{\LITE@answer}{hideanswer}{%
\def\ans#1{\underline{\phantom{#1}}}
\def\choiceans#1{\phantom{#1}}
@@ -261,6 +292,7 @@
\excludecomment{solution}\excludecomment{note}
\let\endsolution\relax\let\endnote\relax}
\def\true{\addtocounter{task}{1}\thetask}
+ \DeclareRobustCommand\emph{\@ifstar\s@emph\s@emph}
}{
\def\ans#1{\underline{~#1~}}
\def\s@solute#1{\relax}\def\@solute#1{\relax}
@@ -268,6 +300,7 @@
\excludecomment{scratch}
\let\endscratch\relax}
\def\true{\addtocounter{task}{1}\faIcon{check-circle}}
+ \DeclareRobustCommand\emph{\@ifstar\s@emph\@emph}
}
\DeclareRobustCommand\solute{\@ifstar\s@solute\@solute}
%%
diff --git a/Master/texmf-dist/tex/latex/litetable/litetable.cls b/Master/texmf-dist/tex/latex/litetable/litetable.cls
index a52c0d5abd8..556b766c28a 100644
--- a/Master/texmf-dist/tex/latex/litetable/litetable.cls
+++ b/Master/texmf-dist/tex/latex/litetable/litetable.cls
@@ -1,314 +1,450 @@
-%% ************************************************************************************************************
-%% ****************************************************** *
-%% * This work may be distributed and/or modified under * * ***** * * *
-%% * the conditions of the LaTeX Project Public License * * ** * * *** * * *
-%% * http://www.latex-project.org/lppl.txt * * * ** * ***** * *
-%% * either version 1.3c of this license or any later * * * ** * ***** * *
-%% * version. * * * ** * * * * *
-%% ****************************************************** ***** ** * * *** * * *
-%% start of file `litetable.cls'. *
-%% Copyright 2023-2024 LiteLaTeX (xiamyphys@gmail.com) *
-%% available at https://github.com/xiamyphys/LiteTable *
-% !Mode:: "TeX:UTF-8" *
-%% ************************************************************************************************************
-\NeedsTeXFormat{LaTeX2e}
-\PassOptionsToPackage{quiet}{xeCJK}
-\PassOptionsToPackage{no-math}{fontspec}
-\ProvidesClass{litetable}[2024/03/03/ v2.4c LiteTable document class]
+%% ***********************************************************
+%% Copyright 2024 by M.Y. XIA <xiamyphys@gmail.com> *
+%% *
+%% This work may be distributed and/or modified under *
+%% the conditions of the LaTeX Project Public License *
+%% *
+%% http://www.latex-project.org/lppl.txt *
+%% *
+%% either version 1.3c of this license or any later *
+%% version. *
+%% *
+%% This work has the LPPL maintenance status `maintained'. *
+%% *
+% The Current Maintainers of this work are M.Y. XIA & L.J. Guo
+%% *
+%% This work consists of the files litetable.cls, *
+%% and README.md. *
+%% available at https://github.com/xiamyphys/litetable *
+%% ***********************************************************
+\RequirePackage{xparse}% For TeX Live 2019 - 2020 Compatibility
+\ProvidesExplClass{litetable}{2024/10/01}{3.1B}{Course Schedule}
-% ---------- 全局选项 ---------- %
-\RequirePackage{kvoptions}
-\RequirePackage{etoolbox}
-\SetupKeyvalOptions{family=LITE, prefix=LITE@, setkeys=\kvsetkeys}
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
+\ProcessOptions\relax
+\LoadClass{article}
-\DeclareStringOption[portiait]{direction}
-\DeclareVoidOption{portiait}{\kvsetkeys{LITE}{direction=portiait}}
-\DeclareVoidOption{landscape}{\kvsetkeys{LITE}{direction=landscape}}
+\pagestyle{empty}
+\RequirePackage{tikz}
-\DeclareStringOption[times]{font}
-\DeclareVoidOption{times}{\kvsetkeys{LITE}{font=times}}
-\DeclareVoidOption{libertinus}{\kvsetkeys{LITE}{font=libertinus}}
-
-\DeclareDefaultOption{\PassOptionsToClass{\CurrentOption}{standalone}}
-\ProcessKeyvalOptions*\relax
-
-\LoadClass[tikz]{standalone}
-
-% ---- 文本中的数字 & 字母设置 ---- %
-\RequirePackage{xeCJK}
-\setCJKfamilyfont{zhhei}{Heiti SC}
-\newcommand*\heiti{\CJKfamily{zhhei}}
-\ifdefstring{\LITE@font}{libertinus}{
-\RequirePackage{libertine}
-}{\relax}
-\ifdefstring{\LITE@font}{times}{
-\ifXeTeX
- \RequirePackage[no-math]{fontspec}
- \setmainfont{texgyretermes}[
- UprightFont = *-regular ,
- BoldFont = *-bold ,
- ItalicFont = *-italic ,
- BoldItalicFont = *-bolditalic ,
- Extension = .otf ,
- Scale = 1.0]
- \setsansfont{texgyreheros}[
- UprightFont = *-regular ,
- BoldFont = *-bold ,
- ItalicFont = *-italic ,
- BoldItalicFont = *-bolditalic ,
- Extension = .otf ,
- Scale = 0.9]
-\else
- \RequirePackage{newtxtext}
- \RequirePackage[scaled=.90]{helvet}
-\fi
-}{\relax}
+% Module for texlive 2021 and later (by @ljguo)
+\cs_if_exist:NF \clist_put_right:Ne
+{ \cs_generate_variant:Nn \clist_put_right:Nn { Ne } }
+\cs_if_exist:NF \clist_set:Ne
+{ \cs_generate_variant:Nn \clist_set:Nn { Ne } }
+\cs_if_exist:NT \clist_count:e
+{ \cs_generate_variant:Nn \clist_count:n { e } }
+\cs_if_exist:NF \exp_args:NNNe
+{
+ \cs_new:Npn \exp_args:NNNe #1#2#3#4
+ {
+ \exp_after:wN #1
+ \exp_after:wN #2
+ \exp_after:wN #3
+ \tex_expanded:D { {#4} }
+ }
+}
-% ---------- 色彩组合 ---------- %
-\definecolor{darkgray}{HTML}{727477} % 时间颜色
-\definecolor{darkergray}{HTML}{F1F3F5} % 深色块
-\definecolor{lightergray}{HTML}{FCFDFE} % 浅色块
-\definecolor{blackgray}{HTML}{1A1D21} % 序号颜色
-\definecolor{SEM}{HTML}{DEEAF8} % 学期按钮
-\definecolor{SEM*}{HTML}{3085F3}
-\definecolor{SEM**}{HTML}{007DC3}
-\pagecolor{lightergray}
-\definecolor{H1}{HTML}{74A7A2} % 深绿
-\definecolor{H1*}{HTML}{E9EEED}
-\definecolor{H1**}{HTML}{009787}
-\definecolor{H2}{HTML}{50C9BD} % 浅绿
-\definecolor{H2*}{HTML}{E1F3F2}
-\definecolor{H2**}{HTML}{009D8F}
-\definecolor{H3}{HTML}{86AFFE} % 深蓝
-\definecolor{H3*}{HTML}{DBE7FF}
-\definecolor{H3**}{HTML}{1663F5}
-\definecolor{H4}{HTML}{6BC0EB} % 浅蓝
-\definecolor{H4*}{HTML}{D8EFFA}
-\definecolor{H4**}{HTML}{0072B1}
-\definecolor{H5}{HTML}{D58DFB} % 深紫
-\definecolor{H5*}{HTML}{F2E3FB}
-\definecolor{H5**}{HTML}{A83FDF}
-\definecolor{H6}{HTML}{FF9393} % 浅紫
-\definecolor{H6*}{HTML}{FFDEDE}
-\definecolor{H6**}{HTML}{E73030}
-\definecolor{H7}{HTML}{FFA17D} % 深橙
-\definecolor{H7*}{HTML}{F5E1DA}
-\definecolor{H7**}{HTML}{E2612F}
-\definecolor{H8}{HTML}{F3C06A} % 浅橙
-\definecolor{H8*}{HTML}{F3EADB}
-\definecolor{H8**}{HTML}{E09B14}
-\definecolor{H9}{HTML}{D09966} % 棕色
-\definecolor{H9*}{HTML}{F2E0D0}
-\definecolor{H9**}{HTML}{C96F1C}
-\definecolor{W1}{HTML}{CCAD52}
-\definecolor{W2}{HTML}{8FCC52}
-\definecolor{W3}{HTML}{52CC70}
-\definecolor{W4}{HTML}{52CCCC}
-\definecolor{W5}{HTML}{5270CC}
-\definecolor{W6}{HTML}{8F52CC}
-\definecolor{W7}{HTML}{CC52AD}
+% Module for left -> right data structure (by @ljguo)
+\cs_new_protected_nopar:Npn \__litetable_get_left:nN #1#2
+{
+ \group_begin:
+ \seq_set_split:Nnn \l__litetable_tmpa_seq { -> } { #1 }
+ \exp_args:NNNe \group_end: \tl_set:Nn #2
+ { \seq_item:Nn \l__litetable_tmpa_seq { 1 } }
+}
+\cs_new_protected_nopar:Npn \__litetable_get_right:nN #1#2
+{
+ \group_begin:
+ \seq_set_split:Nnn \l__litetable_tmpa_seq { -> } { #1 }
+ \exp_args:NNNe \group_end: \tl_set:Nn #2
+ { \seq_item:Nn \l__litetable_tmpa_seq { 2 } }
+}
+\cs_generate_variant:Nn \__litetable_get_left:nN { e }
+\cs_generate_variant:Nn \__litetable_get_right:nN { e }
-\usetikzlibrary{calc}
-\ifdefstring{\LITE@direction}{portiait}{
- \def\pagewidth{8.5 in}
- \def\pageheight{-11 in}
- \def\rotatepage{
- \def\pagewidth{11 in}
- \def\pageheight{-8.5 in}
+\int_new:N \l__time_num_int
+\dim_new:N \l__time_vunit_dim
+\cs_new_protected:Npn \litetable_msg_new:nn #1#2
+{ \msg_new:nnn { litetable} { #1 } { #2 } }
+\cs_new_protected:Npn \litetable_msg_warning:n #1
+{ \msg_warning:nn { litetable } { #1 } }
+\litetable_msg_new:nn { timelist }
+{ \exp_not:N \timelist~extra~time~group(s)~were~ignored }
+\cs_new_protected_nopar:Npn \litetable_timelist:nn #1#2
+{
+ \clist_set:Nn \l__litetable_timelist_clist { #2 }
+ \tl_if_empty:nTF { #1 }
+ {
+ \int_set:Nn \l__time_num_int
+ {
+ \clist_count:N \l__litetable_timelist_clist
+ }
+ }
+ {
+ \int_set:Nn \l__time_num_int { #1 }
+ \int_compare:nNnTF { #1 } <
+ { \clist_count:N \l__litetable_timelist_clist }
+ {
+ \int_set:Nn \l__time_num_int
+ {
+ \clist_count:N \l__litetable_timelist_clist
+ }
+ \litetable_msg_warning:n { timelist }
+ } { \int_set:Nn \l__time_num_int { #1 } }
}
- \def\rerotatepage{
- \def\pagewidth{8.5 in}
- \def\pageheight{-11 in}
+ \dim_set:Nn \l__time_vunit_dim
+ {
+ \fp_eval:n {1/(2\l__time_num_int+3.5)}\paperheight
}
-}{\relax}
+}
+\NewDocumentCommand \timelist { O{} m O{} }
+{ \litetable_timelist:nn { #1#3 } { #2 } }
-\ifdefstring{\LITE@direction}{landscape}{
- \def\pagewidth{11 in}
- \def\pageheight{-8.5 in}
- \def\rotatepage{
- \def\pagewidth{8.5 in}
- \def\pageheight{-11 in}
+\clist_new:N \l__week_ratio_clist
+\clist_new:N \l__week_accum_clist
+\int_new:N \l__week_num_int
+\dim_new:N \l__week_hunit_dim
+\cs_new_protected_nopar:Npn \litetable_weeklist:nn #1#2
+{
+ \tl_set:Nn \l__default_weeks_tl { #1 }
+ \clist_set:Nn \l__litetable_weeklist_clist { #2 }
+ \int_step_inline:nn
+ {
+ \clist_count:N \l__litetable_weeklist_clist
}
- \def\rerotatepage{
- \def\pagewidth{11 in}
- \def\pageheight{-8.5 in}
+ {
+ \__litetable_get_right:eN
+ {
+ \clist_item:Nn \l__litetable_weeklist_clist {##1}
+ } \l__litetable_tmpb_tl
+ \clist_put_right:Ne \l__week_ratio_clist
+ {
+ \l__litetable_tmpb_tl
+ }
}
-}{\relax}
-
-\ExplSyntaxOn % 数组
-% 1. Set up arrays
-\def\definearray#1#2
- {
- \seq_clear_new:c { l__litetable_array_#1_seq }
- \seq_set_split:cnn { l__litetable_array_#1_seq } { ; } { #2 }
- }
-
-\cs_generate_variant:Nn \seq_set_split:Nnn { c }
-
-% 2. Define commands to work with arrays
-\NewExpandableDocumentCommand{\arraycount}{ o m }
- {
- \IfNoValueTF { #1 }
- {
- \litetable_array_count_full:n { #2 }
- }
- {
- \litetable_array_count_item:nn { #2 } { #1 }
- }
- }
-
-\cs_new:Nn \litetable_array_count_item:nn
- {
- \clist_count:e { \seq_item:cn { l__litetable_array_#1_seq } { #2 } }
- }
+ \int_step_inline:nn
+ {
+ \clist_count:N \l__litetable_weeklist_clist
+ }
+ {
+ \clist_clear:N \l__week_accumtmp_clist
+ \int_step_inline:nn { ##1 }
+ {
+ \clist_put_right:Ne \l__week_accumtmp_clist
+ {
+ \clist_item:Nn \l__week_ratio_clist { ####1 }
+ }
+ }
+ \clist_put_right:Ne \l__week_accum_clist
+ {
+ \int_eval:n { \clist_use:Nn \l__week_accumtmp_clist { + } }
+ }
+ }
+ \int_set:Nn \l__week_num_int
+ {
+ \clist_item:Nn \l__week_accum_clist
+ {
+ \clist_count:N \l__litetable_weeklist_clist
+ }
+ }
+ \dim_set:Nn \l__week_hunit_dim
+ {
+ \fp_eval:n {1/\l__week_num_int*14/15}\paperwidth
+ }
+}
+\NewDocumentCommand \weeklist { O{} m O{} }
+{ \litetable_weeklist:nn { #1#3 } { #2 } }
-\NewExpandableDocumentCommand{\arrayitem}{ m m m }
- {
- \clist_item:en { \seq_item:cn { l__litetable_array_#1_seq } { #2 } } { #3 }
- }
+\NewDocumentCommand \more { m }
+{ \tl_set:Nn \l__litetable_comment_tl { #1 } }
-\ExplSyntaxOff
+\int_new:N \l__litetable_week_day_int
+\int_set:Nn \l__litetable_week_day_int {1}
+\NewDocumentCommand \newday { O {1} }
+{ \int_add:Nn \l__litetable_week_day_int { #1 } }
-\NewDocumentCommand{\timelist}{ o m }
+\keys_define:nn { litetable / frame }
{
- \gdef\@timelist{#2}
- \definearray{timelist}{#2}
- \IfNoValueTF{#1}{
- \ifnum \arraycount[2]{timelist}<\arraycount[1]{timelist}
- \def\@classnum{\arraycount[1]{timelist}}
- \else
- \def\@classnum{\arraycount[2]{timelist}}
- \fi
- }{\def\@classnum{#1}}
-}
-\ifcsname @timelist\endcsname
- \relax
- \else
- \def\@classnum{12}
-\fi
-\def\weeklist#1{
- \gdef\@weeklist{#1}
- \definearray{weeklist}{#1}
+ sem.tl_set:N = \l__bg_sem_tl,
+ color.tl_set:N = \l__bg_color_tl,
+ color.initial:n = gray,
}
-\gdef\@weeknum{\arraycount[1]{weeklist}}
-
-\RequirePackage{fontawesome5}
-\RequirePackage[hidelinks]{hyperref}
-\newcounter{number}
-\tikzset{
- hyperlink node/.style={
- alias=sourcenode,
- append after command={
- let \p1 = (sourcenode.north west),
- \p2 = (sourcenode.south east),
- \n1 = {\x2-\x1}, \n2 = {\y1-\y2} in
- node [inner sep=0pt, outer sep=auto, anchor=north west,at=(\p1)]
- {\Acrobatmenu{#1}{\XeTeXLinkBox{\phantom{\rule{\n1}{\n2}}}}}
- }
+\cs_new_protected_nopar:Npn \litetable_maketable:nn #1
+{
+ % Darker Block at top
+ \fill [ \l__bg_color_tl!5 ] (current~page.north~west)
+ rectangle + (\paperwidth,-1.5\l__time_vunit_dim)
+ node [ midway, black, font = \huge\bfseries ] {#1};
+ \tl_if_empty:NF { \l__bg_sem_tl }% Semester
+ {
+ \node [ shift = {(-.02\paperwidth,-.75\l__time_vunit_dim)},
+ left, rectangle, fill = DarkBlue!10,
+ text = DarkBlue!60, inner~sep = 2ex,
+ rounded~corners = 8pt, font = \large
+ ] at (current~page.north~east)
+ {\ensuremath\rightleftharpoons\ \l__bg_sem_tl};
}
-}
-\NewDocumentCommand{\makeframe}{ o m }{
- \draw [lightergray] (0,0) rectangle (\pagewidth,\pageheight);
- \fill [fill=darkergray] (0,0) rectangle (\pagewidth,{1.5*\pageheight/(2*\@classnum+3.5)});% 顶部深灰色块
- \node at (.5*\pagewidth,{.75*\pageheight/(2*\@classnum+3.5)}) {\huge\bfseries\sffamily #2}; % 标题
- \IfNoValueF{#1}{
- \node [outer sep=auto,hyperlink node=NextPage,left,rectangle,fill=SEM,text=SEM*,draw=none,inner sep=1.75ex,rounded corners=6pt] at (.98*\pagewidth,{.75*\pageheight/(2*\@classnum+3.5)}) {\large\sffamily\;$\rightleftharpoons$~#1\;}; % 学期
+ % Darker Blocks
+ \int_step_inline:nnnn {0} {2} {\l__time_num_int}
+ {
+ \filldraw [ fill = \l__bg_color_tl!5, draw = gray,
+ thick, densely~dashed, line~cap = round
+ ]
+ ([shift = {(-.4pt,\fp_eval:n {-2*##1-2.5}\l__time_vunit_dim)}]
+ current~page.north~west) rectangle +
+ ({\paperwidth+.8pt},-2\l__time_vunit_dim);
}
-
- \ifodd\@classnum
- \foreach \a in {2,4,...,\@classnum,\@classnum+2}
- \fill [fill=darkergray,yshift=(2*\a-1.5)*\pageheight/(2*\@classnum+3.5)] (0,0) rectangle (\pagewidth,{2*\pageheight/(2*\@classnum+3.5)}); % 中间深灰色块(循环)
- \else
- \foreach \a in {2,4,...,\@classnum}
- \fill [fill=darkergray,yshift=(2*\a-1.5)*\pageheight/(2*\@classnum+3.5)] (0,0) rectangle (\pagewidth,{2*\pageheight/(2*\@classnum+3.5)}); % 中间深灰色块(循环)
- \fill [fill=darkergray,yshift=(2.5+2*\@classnum)*\pageheight/(2*\@classnum+3.5)] (0,0) rectangle (\pagewidth,{\pageheight/(2*\@classnum+3.5)}); % 底部深灰色块
- \fi
- \foreach \a in {0,1,2,...,\@classnum}
- \draw [densely dashed,gray!75,yshift=(2.5+2*\a)*\pageheight/(2*\@classnum+3.5)] (0,0)--(\pagewidth,0); % 分割虚线
-
- % 时间标注
- \setcounter{number}{0}
- \ifcsempty{@timelist}{
- \foreach \a in {1,2,...,\@classnum}
+ % Classes numbering
+ \clist_if_empty:NTF {\l__litetable_timelist_clist}
+ {
+ \int_step_inline:nn {\l__time_num_int}
{
- \node [yshift=(1.5+2*\a)*\pageheight/(2*\@classnum+3.5)] at(\pagewidth/32,0)
- {\bfseries\large\color{blackgray}\texttt{\refstepcounter{number}\thenumber}};
+ \node [ shift = {(\paperwidth/30,{\fp_eval:n {
+ -2*##1-1.5}\l__time_vunit_dim})
+ }, darkgray!80, font = \large\ttfamily\bfseries
+ ] at (current~page.north~west) {##1};
}
- }{
- \foreach \x in {1,2,...,\@classnum}
+ }
+ {
+ \int_step_inline:nn {\l__time_num_int}
+ {
+ \node [ shift = {(\paperwidth/30,\fp_eval:n {
+ -2*##1-1}\l__time_vunit_dim)
+ }, darkgray!80, font = \large\ttfamily\bfseries
+ ] at (current~page.north~west) {##1};
+ }
+ % Classes time
+ \int_step_inline:nn
+ {
+ \clist_count:N \l__litetable_timelist_clist
+ }
+ {
+ \__litetable_get_left:eN
+ {
+ \clist_item:Nn \l__litetable_timelist_clist {##1}
+ } \l__litetable_tmpa_tl
+ \__litetable_get_right:eN
{
- \node [yshift=(2*\x+.9)*\pageheight/(2*\@classnum+3.5)] at (\pagewidth/32,0)
- {\bfseries\color{blackgray}\texttt{\refstepcounter{number}\thenumber}};
- \node[yshift=(2*\x+1.55)*\pageheight/(2*\@classnum+3.5)] at (\pagewidth/32,0)
- {\color{darkgray}\texttt{\arrayitem{timelist}{1}{\x}}};
- \node[yshift=(2*\x+2.1)*\pageheight/(2*\@classnum+3.5)] at (\pagewidth/32,0)
- {\color{darkgray}\texttt{\arrayitem{timelist}{2}{\x}}};
+ \clist_item:Nn \l__litetable_timelist_clist {##1}
+ } \l__litetable_tmpb_tl
+ \node [ shift = {(\paperwidth/30,\fp_eval:n {
+ -1.9-2*##1}\l__time_vunit_dim)
+ }, gray, font = \ttfamily ,align = center
+ ] at (current~page.north~west)
+ {\l__litetable_tmpa_tl\\\l__litetable_tmpb_tl};
}
}
-
- % 星期标注
- \foreach \a in {1,2,...,\@weeknum}
- \node [xshift=\pagewidth/16] at ({.5*(\arrayitem{weeklist}{2}{\a}+\arrayitem{weeklist}{2}{\a+1})*15*\pagewidth/16},{2*\pageheight/(2*\@classnum+3.5)})
- {\arrayitem{weeklist}{1}{\a}};
-
- \ifcsname @sticker\endcsname
- \node [opacity=.3,above left,yshift=(1.5+2*\@classnum)*\pageheight/(2*\@classnum+3.5),inner sep=0pt,outer sep=auto,scale=15] at (\pagewidth,{\pageheight/(2*\@classnum+3.5)}) {\includegraphics[width=\dimeval{\pagewidth/16/\@weeknum}]{\@sticker}};\fi
+ % Weekdays
+ \int_step_inline:nn
+ {
+ \clist_count:N \l__litetable_weeklist_clist
+ }
+ {
+ \__litetable_get_left:eN
+ {
+ \clist_item:Nn \l__litetable_weeklist_clist {##1}
+ } \l__litetable_tmpa_tl
+ \node [ font = \large\bfseries,
+ shift = {(\fp_eval:n {
+ (\clist_item:Nn \l__week_accum_clist {##1}
+ -\clist_item:Nn \l__week_ratio_clist {##1}/2)/
+ \l__week_num_int*14/15+1/15}\paperwidth,
+ -2\l__time_vunit_dim)}
+ ] at (current~page.north~west) { \l__litetable_tmpa_tl };
+ }
+ % Comment
+ \tl_if_empty:NF \l__litetable_comment_tl
+ {
+ \node [ yshift = .5\l__time_vunit_dim,
+ left = 1ex, darkgray, font = \small\bfseries
+ ] at (current~page.south~east)
+ { \l__litetable_comment_tl };
+ }
+ \tl_gclear:N \l__litetable_comment_tl
}
-
-\newcounter{weekday}
-\def\newday{\addtocounter{weekday}{1}}
-\AtEndEnvironment{tikzpicture}{\setcounter{weekday}{0}}
-\def\sticker#1{\gdef\@sticker{#1}}
-\def\corner#1{\gdef\@corner{#1}}
-\def\weeks#1{\gdef\@weeks{#1}}
-
-\NewDocumentCommand{\course}{O{H1} m m m m m O{\@weeks}}
+\NewDocumentCommand \maketable { O{} m O{} }
{
- \ifcsname @corner\endcsname
- \tikzset{corner/.style={rounded corners=\@corner}}
- \else
- \tikzset{corner/.style={}}
- \fi
- \fill [#1,corner,
- yshift=(2*(#2-1))*\pageheight/(2*\@classnum+3.5),
- xshift=\pagewidth/16]
- ({\arrayitem{weeklist}{2}{\theweekday+1}*15*\pagewidth/16},{2.5*\pageheight/(2*\@classnum+3.5)}) rectangle ++
- ({(\arrayitem{weeklist}{2}{\theweekday+2}-\arrayitem{weeklist}{2}{\theweekday+1})*15*\pagewidth/16},{(2+2*(#3-#2))*\pageheight/(2*\@classnum+3.5)}); % frame
-
- \fill [#1*,
- yshift=(2*(#2-1)+.5)*\pageheight/(2*\@classnum+3.5),
- xshift=\pagewidth/16]
- ({\arrayitem{weeklist}{2}{\theweekday+1}*15*\pagewidth/16},{2.5*\pageheight/(2*\@classnum+3.5)}) --++
- ({(\arrayitem{weeklist}{2}{\theweekday+2}-\arrayitem{weeklist}{2}{\theweekday+1})*15*\pagewidth/16},0)
- { [corner] --++ (0,{(1.5+2*(#3-#2))*\pageheight/(2*\@classnum+3.5)}) --++
- ({(-\arrayitem{weeklist}{2}{\theweekday+2}+\arrayitem{weeklist}{2}{\theweekday+1})*15*\pagewidth/16},0)} -- cycle; % content
-
- \node [#1**,yshift=(#2+#3-1.25)*\pageheight/(2*\@classnum+3.5),
- xshift=\pagewidth/16] at
- ({.5*(\arrayitem{weeklist}{2}{\theweekday+1}+\arrayitem{weeklist}{2}{\theweekday+2})*15*\pagewidth/16},{2.5*\pageheight/(2*\@classnum+3.5)})
- {\heiti\large\bfseries #4}; % course
-
- \node [#1**,above,
- yshift=(#2+#3-.2)*\pageheight/(2*\@classnum+3.5),
- xshift=\pagewidth/16] at
- ({.5*(\arrayitem{weeklist}{2}{\theweekday+1}+\arrayitem{weeklist}{2}{\theweekday+2})*15*\pagewidth/16},{2.5*\pageheight/(2*\@classnum+3.5)})
- {\heiti\bfseries\small #5}; % location
-
- \node [#1**,below,
- yshift=(#2+#3-.2)*\pageheight/(2*\@classnum+3.5),
- xshift=\pagewidth/16] at
- ({.5*(\arrayitem{weeklist}{2}{\theweekday+1}+\arrayitem{weeklist}{2}{\theweekday+2})*15*\pagewidth/16},{2.5*\pageheight/(2*\@classnum+3.5)})
- {\heiti\bfseries\small #6}; % teacher
+ \group_begin:
+ \keys_set:nn { litetable / frame } { #1#3 }
+ \litetable_maketable:nn { #2 }
+ \group_end:
+}
- \ifcsname @weeks\endcsname
- \node [#1**,above left,
- yshift=2*#3*\pageheight/(2*\@classnum+3.5),
- xshift=\pagewidth/16] at
- ({\arrayitem{weeklist}{2}{\theweekday+2}*15*\pagewidth/16},{2.5*\pageheight/(2*\@classnum+3.5)})
- {\heiti\footnotesize #7};
- \fi % weeks
+\keys_define:nn { litetable / course }
+{
+ color.tl_set:N = \l__course_color_tl,
+ color.initial:n = teal,
+ subject.tl_set:N = \l__course_subject_tl,
+ teacher.tl_set:N = \l__course_teacher_tl,
+ location.tl_set:N = \l__course_location_tl,
+ weeks.tl_set:N = \l__default_weeks_tl,
+ weeks.initial:n = \l__default_weeks_tl,
}
+\dim_new:N \l__course_infoshift_dim
+\cs_new_protected_nopar:Npn \__litetable_course_box_aux:nn #1#2
+{
+ % Course box fg
+ \begin{scope}
+ \clip [ preaction = {draw, ultra~thick, \l__course_color_tl!60},
+ preaction = {fill, \l__course_color_tl!10},
+ rounded~corners = 8pt ]
+ ([shift = {(
+ \fp_eval:n
+ {
+ \clist_item:Nn \l__week_accum_clist
+ {\l__litetable_week_day_int}-
+ \clist_item:Nn \l__week_ratio_clist
+ {\l__litetable_week_day_int}
+ }\l__week_hunit_dim+\paperwidth/15+1.2pt,
+ \fp_eval:n {-.5-2*#1}\l__time_vunit_dim-1.2pt)
+ }]current~page.north~west) rectangle + (
+ \clist_item:Nn \l__week_ratio_clist {\l__litetable_week_day_int}
+ \l__week_hunit_dim-2.4pt,
+ \fp_eval:n {2*(#1-#2-1)}\l__time_vunit_dim+2.4pt);
+ % Course box bg
+ \fill [ \l__course_color_tl!60 ]
+ ([shift = {(
+ \fp_eval:n {
+ \clist_item:Nn \l__week_accum_clist
+ {\l__litetable_week_day_int}-
+ \clist_item:Nn \l__week_ratio_clist
+ {\l__litetable_week_day_int}
+ }\l__week_hunit_dim+\paperwidth/15,
+ \fp_eval:n {-.5-2*#1}\l__time_vunit_dim)
+ }]current~page.north~west) rectangle + (
+ \clist_item:Nn \l__week_ratio_clist{\l__litetable_week_day_int}
+ \l__week_hunit_dim,-.5\l__time_vunit_dim);
+ \end{scope}
+ % Course info
+ \tl_if_eq:NNTF {#1} {#2}% Single-unit height course box
+ {
+ \bool_if:nTF
+ {
+ \tl_if_empty_p:N \l__course_location_tl &&
+ \tl_if_empty_p:N \l__course_teacher_tl
+ }
+ {\tl_set:Nn \l_shortcourse_anchor_tl { }}
+ {\tl_set:Nn \l_shortcourse_anchor_tl { above }}
+ \cs_if_exist:NT {\l__course_subject_tl }
+ {
+ \node [ shift = {(\fp_eval:n {
+ \clist_item:Nn \l__week_accum_clist
+ {\l__litetable_week_day_int}-
+ \clist_item:Nn \l__week_ratio_clist
+ {\l__litetable_week_day_int}/2
+ }\l__week_hunit_dim+\paperwidth/15,
+ \fp_eval:n {-1.75-#1-#2}\l__time_vunit_dim)},
+ \l_shortcourse_anchor_tl, \l__course_color_tl!60,
+ align = center, font = \large\bfseries
+ ] at (current~page.north~west)
+ { \l__course_subject_tl };
+ }
+ \bool_if:nTF
+ {
+ !\tl_if_empty_p:N \l__course_location_tl &&
+ !\tl_if_empty_p:N \l__course_teacher_tl
+ }
+ {\tl_set:Nn \l_shortcourse_sep_tl { ,~ }}
+ {\tl_set:Nn \l_shortcourse_sep_tl { }}
+ \node [ shift = {(\fp_eval:n {
+ \clist_item:Nn \l__week_accum_clist
+ {\l__litetable_week_day_int}-
+ \clist_item:Nn \l__week_ratio_clist
+ {\l__litetable_week_day_int}/2
+ }\l__week_hunit_dim+\paperwidth/15,
+ \fp_eval:n {-1.75-#1-#2}\l__time_vunit_dim)},
+ below, \l__course_color_tl!60, align = center
+ ] at (current~page.north~west)
+ {
+ \tl_if_exist:NT { \l__course_location_tl }
+ { \l__course_location_tl }
+ \l_shortcourse_sep_tl
+ \tl_if_exist:NT { \l__course_teacher_tl }
+ { \l__course_teacher_tl }
+ };
+ }
+ {
+ \bool_if:nTF% Multiply-unit height course box
+ {
+ \tl_if_empty_p:N \l__course_location_tl &&
+ \tl_if_empty_p:N \l__course_teacher_tl
+ }
+ {
+ \tl_set:Nn \l_course_anchor_tl {}
+ \dim_set:Nn \l__course_infoshift_dim { 0pt }
+ }
+ {
+ \tl_set:Nn \l_course_anchor_tl { above }
+ \dim_set:Nn \l__course_infoshift_dim { \l__time_vunit_dim/8 }
+ }
+ \cs_if_exist:NT { \l__course_subject_tl }
+ {
+ \node [ font = \large\bfseries, \l_course_anchor_tl,
+ shift = {(\fp_eval:n {
+ \clist_item:Nn \l__week_accum_clist
+ {\l__litetable_week_day_int}-
+ \clist_item:Nn \l__week_ratio_clist
+ {\l__litetable_week_day_int }/2
+ }\l__week_hunit_dim+\paperwidth/15,
+ \fp_eval:n {-1.5-#1-#2}\l__time_vunit_dim)},
+ yshift = \l__course_infoshift_dim,
+ \l__course_color_tl!60, align = center,
+ ] at (current~page.north~west)
+ { \l__course_subject_tl };
+ }
+ \bool_if:nTF
+ {
+ !\tl_if_empty_p:N \l__course_location_tl &&
+ !\tl_if_empty_p:N \l__course_teacher_tl
+ }
+ {
+ \tl_set:Nn \l_courseinfo_sep_tl { \\ }
+ }
+ {
+ \tl_set:Nn \l_courseinfo_sep_tl { }
+ }
+ \node [ below, \l__course_color_tl!60, align = center,
+ shift = {(\fp_eval:n {
+ \clist_item:Nn \l__week_accum_clist
+ {\l__litetable_week_day_int}-
+ \clist_item:Nn \l__week_ratio_clist
+ {\l__litetable_week_day_int}/2
+ }\l__week_hunit_dim+\paperwidth/15,
+ \fp_eval:n {-1.625-#1-#2}\l__time_vunit_dim
+ )}] at (current~page.north~west)
+ {
+ \tl_if_exist:NT { \l__course_location_tl }
+ { \l__course_location_tl }
+ \l_courseinfo_sep_tl
+ \tl_if_exist:NT { \l__course_teacher_tl }
+ { \l__course_teacher_tl }
+ };
+ \node [ above~left, \l__course_color_tl!60, outer~sep = .5ex,
+ shift = {(
+ \clist_item:Nn \l__week_accum_clist
+ {\l__litetable_week_day_int}
+ \l__week_hunit_dim+\paperwidth/15,
+ \fp_eval:n {-2.5-2*#2}\l__time_vunit_dim
+ )}] at (current~page.north~west) { \l__default_weeks_tl };
+ }
+}
+\litetable_msg_new:nn { course }
+{ \exp_not:N \course~box(s)~exceed~workdays~were~ignored }
+\NewDocumentCommand \course { O{} m O{} m O{} }
+{
+ \group_begin:
+ \int_compare:nNnTF {\l__litetable_week_day_int-1} <
+ {\clist_count:N \l__litetable_weeklist_clist}
+ {
+ \keys_set:nn { litetable / course } { #1#3#5 }
+ \__litetable_course_box_aux:nn { #2 } { #4 }
+ }{
+ \litetable_msg_warning:n { course }
+ }
+ \group_end:
+}
+
+\endinput
-\def\more#1{
- \node [xshift=-1em,yshift=(2.5+2*\@classnum)*\pageheight/(2*\@classnum+3.5),left] at (\pagewidth,{.5*\pageheight/(2*\@classnum+3.5)}){\small\bfseries\color{darkgray}#1};
-} \ No newline at end of file
+% End of file litetable.cls \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/lni/lni.cls b/Master/texmf-dist/tex/latex/lni/lni.cls
index 14eb413f8aa..8e8c9fae7e2 100644
--- a/Master/texmf-dist/tex/latex/lni/lni.cls
+++ b/Master/texmf-dist/tex/latex/lni/lni.cls
@@ -14,7 +14,7 @@
%% --------| -----------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesClass{lni}
- [2024/07/01 v1.9 Official class for submissions to the ``Lecture Notes
+ [2024/07/23 v1.10 Official class for submissions to the ``Lecture Notes
in Informatics'']
\RequirePackage{iftex}\ifluatex\else\pdfoutput=1\fi%
\def\@clearglobaloption#1{%
@@ -291,7 +291,7 @@
\RequirePackage[hang]{footmisc}
\setlength{\footnotemargin}{1em}
\long\def\@makefntext#1{%
- \def\@makefnmark{\rlap{\normalfont\@thefnmark}}%
+ \def\@makefnmark{\rlap{\normalfont\textsuperscript{\@thefnmark}}}%
\ifFN@hangfoot
\bgroup
\setbox\@tempboxa\hbox{%
@@ -380,9 +380,9 @@
\newcommand{\@multiaffil}[1]{%
\ifcsundef{@emailsandorcids#1}{\csgdef{@emailsandorcids#1}{}}{}%
\ifcsempty{@emailsandorcids#1}%
- {\csgappto{@emailsandorcids#1}{%
+ {\protected@csxappto{@emailsandorcids#1}{%
\if\relax\@currEmail\relax\else\email{\@currEmail}\fi\if\relax\@currOrcid\relax\else,\ \orcid{\@currOrcid}\fi}}%
- {\csgappto{@emailsandorcids#1}{%
+ {\protected@csxappto{@emailsandorcids#1}{%
\if\relax\@currEmail\relax\else;\ \email{\@currEmail}\fi\if\relax\@currOrcid\relax\else,\ \orcid{\@currOrcid}\fi}}%
}
@@ -678,6 +678,7 @@
\renewcommand{\headrulewidth}{0.4pt} %Linie unter Kopfzeile
\fi%
\RequirePackage{url}
+\urlstyle{same}
\g@addto@macro{\UrlBreaks}{\UrlOrds}
\RequirePackage{xspace}
\AddToHook{env/document/begin}[lni/loadhyperref]{%
diff --git a/Master/texmf-dist/tex/latex/lstaddons/lstautogobble.sty b/Master/texmf-dist/tex/latex/lstaddons/lstautogobble.sty
index 8f065b4a5c2..26fdd51cc0f 100644
--- a/Master/texmf-dist/tex/latex/lstaddons/lstautogobble.sty
+++ b/Master/texmf-dist/tex/latex/lstaddons/lstautogobble.sty
@@ -1,4 +1,4 @@
-%% Copyright (C) 2011-2012 by Martin Scharrer <martin@scharrer-online.de>
+%% Copyright (c) 2011-2022 by Martin Scharrer <martin.scharrer@web.de>
%% -----------------------------------------------------------------------
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/lstaddons/lstlinebgrd.sty b/Master/texmf-dist/tex/latex/lstaddons/lstlinebgrd.sty
index 66f42ab2c96..c02b062aaff 100644
--- a/Master/texmf-dist/tex/latex/lstaddons/lstlinebgrd.sty
+++ b/Master/texmf-dist/tex/latex/lstaddons/lstlinebgrd.sty
@@ -1,6 +1,6 @@
-%% Copyright (C) 2011-2012 by Martin Scharrer <martin@scharrer-online.de>
+%% Copyright (c) 2011-2024 by Martin Scharrer <martin.scharrer@web.de>
%% ----------------------------------------------------------------------
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -18,8 +18,8 @@
%% and the derived filebase lstlinebgrd.sty.
%%
\ProvidesPackage{lstlinebgrd}[%
- 2012/05/03
- v0.1
+ 2014/08/18
+ v0.2
Provides 'listings' options to color the background of lines]
\RequirePackage{listings}
\RequirePackage{xcolor}
@@ -27,10 +27,10 @@
\lst@Key{numbers}{none}{%
\def\lst@PlaceNumber{\lst@linebgrd}%
\lstKV@SwitchCases{#1}%
- {none&\\%
- left&\def\lst@PlaceNumber{\llap{\normalfont
+ {none:\\%
+ left:\def\lst@PlaceNumber{\llap{\normalfont
\lst@numberstyle{\thelstnumber}\kern\lst@numbersep}\lst@linebgrd}\\%
- right&\def\lst@PlaceNumber{\rlap{\normalfont
+ right:\def\lst@PlaceNumber{\rlap{\normalfont
\kern\linewidth \kern\lst@numbersep
\lst@numberstyle{\thelstnumber}}\lst@linebgrd}%
}{\PackageError{Listings}{Numbers #1 unknown}\@ehc}}
diff --git a/Master/texmf-dist/tex/latex/luwiantype/luwiantype.sty b/Master/texmf-dist/tex/latex/luwiantype/luwiantype.sty
new file mode 100644
index 00000000000..ea33fb4fb59
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/luwiantype/luwiantype.sty
@@ -0,0 +1,1035 @@
+%% Copyright 2024 Jonathan Walls
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3c
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% https://www.latex-project.org/lppl/lppl-1-3c.txt
+% and version 1.3c or later is part of all distributions of LaTeX
+% version 2008 or later.
+%
+% This work has the LPPL maintenance status `maintained'.
+%
+% The Current Maintainer of this work is Jonathan Walls.
+%
+% This work consists of the files luwiantype.sty, luwiantype-doc.tex
+% and the derived file luwiantype-doc.pdf.
+%
+%
+% Version history:
+% 1.2 - updated to resolve some minor typos and command formatting
+% 1.1 - updated to comply with CTAN formatting requirements, adjustments to licensing
+
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{luwiantype}[2024/07/15 Luwian Hieroglyph Typing Package]
+
+%Required packages and declarations
+\usepackage{fontspec}
+\usepackage{graphicx}
+\usepackage{stackengine}
+\usepackage{moresize}
+
+%Commands for font selection and import
+\newcommand{\Luwian}{\setmainfont[ExternalLocation=Fonts/]{LuwianFont.ttf}\Large}
+\newcommand{\Lat}{\setmainfont{Charis SIL}\normalsize}
+
+%Formatting commands
+\newcommand{\badeq}{\char"2E17}
+\newcommand{\hl}{\char"2308}
+\newcommand{\hr}{\char"2309}
+\newcommand{\tsup}[1]{\textsuperscript{#1}}
+\newcommand{\tsub}[1]{\textsubscript{#1}}
+\newcommand{\boust}[1]{\reflectbox{#1}}
+\newcommand{\gstack}{\Shortunderstack}
+
+
+
+%Main sign commands
+\newcommand{\EGO}[1][]{
+ \ifx\relax#1\relax
+ {\char"14400}
+ \else \ifnum #1=2
+ {\char"14401}
+ \fi\fi
+}
+\newcommand{\LIII}{\char"14402}
+\newcommand{\MONS}[1][]{
+ \ifx\relax#1\relax
+ {\char"144EC}
+ \else \ifnum #1=2
+ {\char"14403}
+ \fi\fi
+}
+\newcommand{\LV}{\char"14404}
+\newcommand{\ADORARE}{\char"14405}
+\newcommand{\EDERE}{\char"14406}
+\newcommand{\BIBERE}{\char"14407}
+\newcommand{\AMPLECTI}{\char"14408}
+\newcommand{\CAPUT}{\char"14409}
+\newcommand{\CAPUTSCALPRUM}{\char"1440A}
+\newcommand{\LXI}{\char"1440B}
+\newcommand{\STATUA}{\char"1440C}
+\newcommand{\LXIII}{\char"1440D}
+\newcommand{\PRAE}{\char"1440E}
+\newcommand{\PARI}{\char"1440E}
+\newcommand{\DOMINA}{\char"1440F}
+\newcommand{\MAGNUSDOMINA}{\char"14410}
+\newcommand{\REX}{\char"14411}
+\newcommand{\MAGNUSREX}{\char"14412}
+\newcommand{\A}[1][]{
+ \ifx\relax#1\relax
+ {\char"145F7}
+ \else \ifnum #1=2
+ {\char"14413}
+ \fi\fi
+}
+\newcommand{\LXX}{\char"14414}
+\newcommand{\HEROS}{\char"14415}
+\newcommand{\LOQUI}{\char"14416}
+\newcommand{\LXXIII}{\char"14417}
+\newcommand{\LIS}{\char"14418}
+\newcommand{\OCULUS}{\char"14419}
+\newcommand{\FRONS}{\char"1441A}
+\newcommand{\VERSUS}{\char"1441B}
+\newcommand{\LIBARE}{\char"1441C}
+\newcommand{\FORTIS}{\char"1441D}
+\newcommand{\TA}[1][]{
+ \ifx\relax#1\relax
+ {\char"14470}
+ \else \ifnum #1=2
+ {\char"1441E}
+ \else \ifnum #1=3
+ {\char"1442C}
+ \else \ifnum #1=6
+ {\char"1445B}
+ \fi\fi\fi\fi
+}
+\newcommand{\LXXX}{\char"1441F}
+\newcommand{\LIGARE}{\char"14420}
+\newcommand{\PUGNUSPUGNUS}{\char"14420}
+\newcommand{\BRACCHIUM}{\char"14421}
+\newcommand{\LXXXIII}{\char"14422}
+\newcommand{\POST}{\char"14423}
+\newcommand{\NA}[1][]{
+ \ifx\relax#1\relax
+ {\char"14424}
+ \else \ifnum #1=2
+ {\char"1445D}
+ \fi\fi
+}
+\newcommand{\LITUUSNA}{\char"14425}
+\newcommand{\LXXXVII}{\char"14426}
+\newcommand{\LXXXVIII}{\char"14427}
+\newcommand{\PUGNUS}{\char"14428}
+\newcommand{\PUGNUSX}{\char"14429}
+\newcommand{\LXL}{\char"1442A}
+\newcommand{\CAPERE}[1][]{
+ \ifx\relax#1\relax
+ {\char"1442B}
+ \else \ifnum #1=2
+ {\char"1442E}
+ \fi\fi
+}
+\newcommand{\CAPEREIICAPEREII}{\char"1442D}
+\newcommand{\LXLIV}{\char"1442F}
+\newcommand{\INFANS}{\char"14430}
+\newcommand{\FILIUS}{\char"14430}
+\newcommand{\FILIA}{\char"14431}
+\newcommand{\REXINFANS}{\char"14432}
+\newcommand{\REXFILIUS}{\char"14432}
+\newcommand{\REXFILIA}{\char"14433}
+\newcommand{\MAGNUSFILIA}{\char"14434}
+\newcommand{\LXLVII}{\char"14435}
+\newcommand{\LXLVIII}{\char"14436}
+\newcommand{\ATAII}{\char"14437}
+\newcommand{\LL}{\char"14438}
+\newcommand{\LLI}{\char"14439}
+\newcommand{\MANUSCULTER}{\char"1443A}
+\newcommand{\ENSIS}{\char"1443B}
+\newcommand{\LLIV}{\char"1443C}
+\newcommand{\NI}[1][]{
+ \ifx\relax#1\relax
+ {\char"145D0}
+ \else \ifnum #1=2
+ {\char"144F5}
+ \else \ifnum #1=3
+ {\char"1443D}
+ \fi\fi\fi
+}
+\newcommand{\KA}[1][]{
+ \ifx\relax#1\relax
+ {\char"145E7}
+ \else \ifnum #1=2
+ {\char"1443E}
+ \fi\fi
+}
+\newcommand{\INFRA}{\char"1443F}
+\newcommand{\SUB}{\char"1443F}
+\newcommand{\CUM}{\char"14440}
+\newcommand{\MANUS}{\char"14441}
+\newcommand{\LLX}{\char"14442}
+\newcommand{\LLXI}{\char"14443}
+\newcommand{\LONGUS}{\char"14444}
+\newcommand{\LLXIII}{\char"14445}
+\newcommand{\LLXIV}{\char"14446}
+\newcommand{\PONERE}{\char"14447}
+\newcommand{\DARE}{\char"14448}
+\newcommand{\PI}[1][]{
+ \ifx\relax#1\relax
+ {\char"14449}
+ \fi
+}
+\newcommand{\MANDARE}[1][]{
+ \ifx\relax#1\relax
+ {\char"1444A}
+ \else \ifnum #1=2
+ {\char"1444B}
+ \fi\fi
+}
+\newcommand{\DAREDARE}{\char"1444A}
+\newcommand{\LLXVII}{\char"1444C}
+\newcommand{\LLXVIII}{\char"1444D}
+\newcommand{\LLXIX}{\char"1444E}
+\newcommand{\SUPER}{\char"1444F}
+\newcommand{\SARAI}{\char"14555}
+\newcommand{\LLXXI}{\char"14450}
+\newcommand{\LLXXII}{\char"14451}
+\newcommand{\AUDIRE}{\char"14452}
+\newcommand{\LLXXIV}{\char"14453}
+\newcommand{\LLXXV}{\char"14454}
+\newcommand{\LLXXVI}{\char"14455}
+\newcommand{\LLXXVII}{\char"14456}
+\newcommand{\ALA}{\char"14457}
+\newcommand{\FEMINA}{\char"14458}
+\newcommand{\MATER}{\char"14458}
+\newcommand{\SARMA}[1][]{
+ \ifx\relax#1\relax
+ {\char"14459}
+ \else \ifnum #1=2
+ {\char"1445A}
+ \fi\fi
+}
+\newcommand{\CRUS}[1][]{
+ \ifx\relax#1\relax
+ {\char"1445B}
+ \else \ifnum #1=2
+ {\char"1445D}
+ \fi\fi
+}
+\newcommand{\CRUSFLUMEN}{\char"1445C}
+\newcommand{\GENUFLECTERE}{\char"1445E}
+\newcommand{\CRUSCRUS}{\char"1445F}
+\newcommand{\LLXXXVII}{\char"14460}
+\newcommand{\LLXXXVIII}{\char"14461}
+\newcommand{\TU}[1][]{
+ \ifx\relax#1\relax
+ {\char"14462}
+ \else \ifnum #1=2
+ {\char"1456C}
+ \else \ifnum #1=3
+ {\char"1456D}
+ \else \ifnum #1=4
+ {\char"14506}
+ \fi\fi\fi\fi
+}
+\newcommand{\PES}[1][]{
+ \ifx\relax#1\relax
+ {\char"14463}
+ \else \ifnum #1=2
+ {\char"14466}
+ \fi\fi
+}
+\newcommand{\TI}[1][]{
+ \ifx\relax#1\relax
+ {\char"14463}
+ \else \ifnum #1=2
+ {\char"1461F}
+ \else \ifnum #1=3
+ {\char"14644}
+ \fi\fi\fi
+}
+\newcommand{\PESSCALAROTAE}{\char"14464}
+\newcommand{\LXCII}{\char"14465}
+\newcommand{\LXCIV}{\char"14467}
+\newcommand{\PESIIPESII}{\char"14468}
+\newcommand{\PESIIPES}{\char"14469}
+\newcommand{\LEO}[1][]{
+ \ifx\relax#1\relax
+ {\char"1446A}
+ \else \ifnum #1=2
+ {\char"1446B}
+ \fi\fi
+}
+\newcommand{\BESTIA}{\char"1446A}
+\newcommand{\CANIS}[1][]{
+ \ifx\relax#1\relax
+ {\char"1446C}
+ \else \ifnum #1=2
+ {\char"1446D}
+ \fi\fi
+}
+\newcommand{\EQUUS}{\char"1446E}
+\newcommand{\ASINUS}[1][]{
+ \ifx\relax#1\relax
+ {\char"1446F}
+ \else \ifnum #1=2
+ {\char"14471}
+ \fi\fi
+}
+\newcommand{\ASINUSIIA}{\char"14472}
+\newcommand{\CERVUS}[1][]{
+ \ifx\relax#1\relax
+ {\char"14473}
+ \else \ifnum #1=2
+ {\char"14474}
+ \else \ifnum #1=3
+ {\char"14475}
+ \fi\fi\fi
+}
+\newcommand{\RU}[1][]{
+ \ifx\relax#1\relax
+ {\char"145D1}
+ \else \ifnum #1=2
+ {\char"14473}
+ \fi\fi
+}
+\newcommand{\CAPRA}[1][]{
+ \ifx\relax#1\relax
+ {\char"14476}
+ \else \ifnum #1=2
+ {\char"14478}
+ \fi\fi
+}
+\newcommand{\SA}[1][]{
+ \ifx\relax#1\relax
+ {\char"145D4}
+ \else \ifnum #1=2
+ {\char"145E6}
+ \else \ifnum #1=3
+ {\char"14477}
+ \else \ifnum #1=4
+ {\char"145C6}
+ \else \ifnum #1=5
+ {\char"1456E}
+ \else \ifnum #1=6
+ {\char"14500}
+ \else \ifnum #1=7
+ {\char"14563}
+ \else \ifnum #1=8
+ {\char"145AD}
+ \fi\fi\fi\fi\fi\fi\fi\fi
+}
+\newcommand{\CAPRAIIA}{\char"14479}
+\newcommand{\BOS}[1][]{
+ \ifx\relax#1\relax
+ {\char"1447A}
+ \else \ifnum #1=2
+ {\char"1447C}
+ \fi\fi
+}
+\newcommand{\U}{\char"1447B}
+\newcommand{\LCVI}{\char"1447D}
+\newcommand{\BOSMI}{\char"1447E}
+\newcommand{\MU}{\char"1447F}
+\newcommand{\MUWA}{\char"14480}
+\newcommand{\BOSIIMI}{\char"14481}
+\newcommand{\CORNU}{\char"14482}
+\newcommand{\SU}[1][]{
+ \ifx\relax#1\relax
+ {\char"145A2}
+ \else \ifnum #1=2
+ {\char"14482}
+ \else \ifnum #1=3
+ {\char"145F5}
+ \fi\fi\fi
+}
+\newcommand{\VITELLUS}{\char"14483}
+\newcommand{\OVIS}[1][]{
+ \ifx\relax#1\relax
+ {\char"14484}
+ \else \ifnum #1=2
+ {\char"14486}
+ \else \ifnum #1=3
+ {\char"14487}
+ \fi\fi\fi
+}
+\newcommand{\MA}[1][]{
+ \ifx\relax#1\relax
+ {\char"14485}
+ \else \ifnum #1=2
+ {\char"14598}
+ \else \ifnum #1=3
+ {\char"14556}
+ \fi\fi\fi
+}
+\newcommand{\LINGERE}{\char"14488}
+\newcommand{\ZA}[1][]{
+ \ifx\relax#1\relax
+ {\char"145AA}
+ \else \ifnum #1=2
+ {\char"14579}
+ \else \ifnum #1=3
+ {\char"1457C}
+ \else \ifnum #1=4
+ {\char"14488}
+ \fi\fi\fi\fi
+}
+\newcommand{\LCXIII}{\char"14489}
+\newcommand{\LITUUSU}{\char"1448A}
+\newcommand{\LEPUS}[1][]{
+ \ifx\relax#1\relax
+ {\char"1448B}
+ \else \ifnum #1=2
+ {\char"1448C}
+ \fi\fi
+}
+\newcommand{\TAPA}{\char"1448C}
+\newcommand{\LCXVI}{\char"1448D}
+\newcommand{\LCXVII}{\char"1448E}
+\newcommand{\LCXVIII}{\char"1448F}
+\newcommand{\LCXIX}{\char"14490}
+\newcommand{\GRYLLUS}{\char"14491}
+\newcommand{\SPHINX}{\char"14492}
+\newcommand{\LCXXII}{\char"14493}
+\newcommand{\LCXXIII}{\char"14494}
+\newcommand{\LCXXIV}{\char"14495}
+\newcommand{\LI}[1][]{
+ \ifx\relax#1\relax
+ {\char"14539}
+ \else \ifnum #1=2
+ {\char"14496}
+ \else \ifnum #1=3
+ {\char"14547}
+ \fi\fi\fi
+}
+\newcommand{\UNGULA}{\char"14497}
+\newcommand{\LCXXVI}{\char"14498}
+\newcommand{\LCXXVII}{\char"14499}
+\newcommand{\AVIS}[1][]{
+ \ifx\relax#1\relax
+ {\char"1449A}
+ \else \ifnum #1=2
+ {\char"1449E}
+ \else \ifnum #1=3
+ {\char"1449C}
+ \else \ifnum #1=4
+ {\char"1449F}
+ \else \ifnum #1=5
+ {\char"1449D}
+ \fi\fi\fi\fi\fi
+}
+\newcommand{\ZI}[1][]{
+ \ifx\relax#1\relax
+ {\char"145A9}
+ \else \ifnum #1=2
+ {\char"14560}
+ \else \ifnum #1=3
+ {\char"1457B}
+ \else \ifnum #1=4
+ {\char"1449A}
+ \fi\fi\fi\fi
+}
+\newcommand{\LCXXIX}{\char"1449B}
+\newcommand{\AQUILA}{\char"1449F}
+\newcommand{\ARAI}{\char"144A0}
+\newcommand{\AVISX}{\char"144A1}
+\newcommand{\LCXXXVA}{\char"144A2}
+\newcommand{\LCXXXVI}{\char"144A3}
+\newcommand{\LIBATIO}{\char"144A4}
+\newcommand{\PISCIS}{\char"144A5}
+\newcommand{\LCXXXIX}{\char"144A6}
+\newcommand{\LCXL}{\char"144A7}
+\newcommand{\LCXLI}{\char"144A8}
+\newcommand{\LXCLII}{\char"144A9}
+\newcommand{\LCXLIII}{\char"144AA}
+\newcommand{\LCXLIV}{\char"144AB}
+\newcommand{\LCXLV}{\char"144AC}
+\newcommand{\LCXLVI}{\char"144AD}
+\newcommand{\LCXLVII}{\char"144AE}
+\newcommand{\JANUS}{\char"144AF}
+\newcommand{\LCXLIX}{\char"144B0}
+\newcommand{\LCL}{\char"144B1}
+\newcommand{\TELIPINU}{\char"144B2}
+\newcommand{\LCLII}{\char"144B3}
+\newcommand{\NU}[1][]{
+ \ifx\relax#1\relax
+ {\char"144B4}
+ \else \ifnum #1=2
+ {\char"145BF}
+ \fi\fi
+}
+\newcommand{\LCLIV}{\char"144B5}
+\newcommand{\LCLV}{\char"144B6}
+\newcommand{\LCLVI}{\char"144B7}
+\newcommand{\LCLVII}{\char"144B8}
+\newcommand{\LCLVIII}{\char"144B9}
+\newcommand{\LCLIX}{\char"144BA}
+\newcommand{\VITIS}{\char"144BB}
+\newcommand{\WIYA}{\char"144BB}
+\newcommand{\LCLXI}{\char"144BC}
+\newcommand{\LCLXII}{\char"144BD}
+\newcommand{\LCLXIII}{\char"144BE}
+\newcommand{\LCLXIV}{\char"144BF}
+\newcommand{\BONUS}[1][]{
+ \ifx\relax#1\relax
+ {\char"144C0}
+ \else \ifnum #1=2
+ {\char"145A2}
+ \fi\fi
+}
+\newcommand{\WAI}[1][]{
+ \ifx\relax#1\relax
+ {\char"145EC}
+ \else \ifnum #1=2
+ {\char"144C1}
+ \else \ifnum #1=3
+ {\char"144C0}
+ \else \ifnum #1=4
+ {\char"144EC}
+ \else \ifnum #1=5
+ {\char"144E9}
+ \else \ifnum #1=6
+ {\char"144E4}
+ \else \ifnum #1=7
+ {\char"14541}
+ \else \ifnum #1=9
+ {\char"1453B}
+ \fi\fi\fi\fi\fi\fi\fi\fi
+}
+\newcommand{\LCLXVII}{\char"144C2}
+\newcommand{\LCLXVIII}{\char"144C3}
+\newcommand{\LCLXIX}{\char"144C4}
+\newcommand{\LCLXX}{\char"144C5}
+\newcommand{\LCLXXI}{\char"144C6}
+\newcommand{\TAI}[1][]{
+ \ifx\relax#1\relax
+ {\char"}
+ \else \ifnum #1=4
+ {\char"14566}
+ \else \ifnum #1=5
+ {\char"144C7}
+ \fi\fi\fi
+}
+\newcommand{\LAI}[1][]{
+ \ifx\relax#1\relax
+ {\char"14566}
+ \else \ifnum #1=2
+ {\char"144C7}
+ \fi\fi
+}
+\newcommand{\HASTARIUS}{\char"144C8}
+\newcommand{\SI}[1][]{
+ \ifx\relax#1\relax
+ {\char"144C9}
+ \else \ifnum #1=2
+ {\char"145FE}
+ \fi\fi
+}
+\newcommand{\LINGUA}{\char"144CA}
+\newcommand{\LA}{\char"144CA}
+\newcommand{\LALA}{\char"144CB}
+\newcommand{\LINGUACLAVUS}{\char"144CC}
+\newcommand{\LARAA}{\char"144CD}
+\newcommand{\HORDEUM}{\char"144CE}
+\newcommand{\HWIX}{\char"144CE}
+\newcommand{\LCLXXX}{\char"144CF}
+\newcommand{\PANIS}{\char"144D0}
+\newcommand{\PAX}{\char"144D0}
+\newcommand{\CAELUM}{\char"144D1}
+\newcommand{\LCLXXXIII}{\char"144D2}
+\newcommand{\LCLXXXIV}{\char"144D3}
+\newcommand{\LCLXXXV}{\char"144D4}
+\newcommand{\LCLXXXVI}{\char"144D5}
+\newcommand{\LCLXXXVII}{\char"144D6}
+\newcommand{\LCLXXXVIII}{\char"144D7}
+\newcommand{\LCLXXXIX}{\char"144D8}
+\newcommand{\SOL}[1][]{
+ \ifx\relax#1\relax
+ {\char"144DA}
+ \else \ifnum #1=2
+ {\char"144D9}
+ \fi\fi
+}
+\newcommand{\ORIENS}{\char"144DB}
+\newcommand{\LUNA}{\char"144DC}
+\newcommand{\LCXCIV}{\char"144DD}
+\newcommand{\LCXCV}{\char"144DE}
+\newcommand{\HATTI}{\char"144DF}
+\newcommand{\HA}[1][]{
+ \ifx\relax#1\relax
+ {\char"144F7}
+ \else \ifnum #1=2
+ {\char"144DF}
+ \fi\fi
+}
+\newcommand{\HATTILI}{\char"144E0}
+\newcommand{\HATTUSILI}{\char"144E0}
+\newcommand{\HAIILI}{\char"144E0}
+\newcommand{\LCXCVIII}{\char"144E1}
+\newcommand{\TONITRUS}{\char"144E2}
+\newcommand{\FULGUR}{\char"144E3}
+\newcommand{\TERRA}{\char"144E4}
+\newcommand{\LOCUS}{\char"144E4}
+\newcommand{\VIATERRASCALPRUM}{\char"144E5}
+\newcommand{\VIATERRAPLUSSCALPRUM}{\char"144E6}
+\newcommand{\DEUSVIATERRA}{\char"144E7}
+\newcommand{\LCCIII}{\char"144E8}
+\newcommand{\LCCV}{\char"144EA}
+\newcommand{\LCCVI}{\char"144EB}
+\newcommand{\LEOMONSTULEO}{\char"144ED}
+\newcommand{\LCCVIII}{\char"144EE}
+\newcommand{\I}[1][]{
+ \ifx\relax#1\relax
+ {\char"144EF}
+ \else \ifnum #1=2
+ {\char"14550}
+ \fi\fi
+}
+\newcommand{\IRAI}{\char"144F0}
+\newcommand{\RII}{\char"144F0}
+\newcommand{\IA}[1][]{
+ \ifx\relax#1\relax
+ {\char"144F1}
+ \else \ifnum #1=2
+ {\char"14551}
+ \else \ifnum #1=3
+ {\char"145AC}
+ \fi\fi\fi
+}
+\newcommand{\LCCXI}{\char"144F2}
+\newcommand{\FLUMEN}{\char"144F3}
+\newcommand{\LCCXIII}{\char"144F4}
+\newcommand{\FONS}{\char"144F6}
+\newcommand{\FINES}{\char"144F8}
+\newcommand{\FINESHA}{\char"144F9}
+\newcommand{\ARHA}{\char"144F9}
+\newcommand{\LCCXVII}{\char"144FA}
+\newcommand{\LCCXVIII}{\char"144FB}
+\newcommand{\LCCXIX}{\char"144FC}
+\newcommand{\LCCXX}{\char"144FD}
+\newcommand{\VIA}{\char"144FE}
+\newcommand{\LCCXXII}{\char"144FF}
+\newcommand{\LCCXXIV}{\char"14501}
+\newcommand{\URBS}{\char"14502}
+\newcommand{\ISHUWA}{\char"14503}
+\newcommand{\URBSRAILI}{\char"14504}
+\newcommand{\URBSLI}{\char"14505}
+\newcommand{\MURSILI}{\char"14505}
+\newcommand{\REGIO}{\char"14506}
+\newcommand{\MIIIREGIO}{\char"14507}
+\newcommand{\LCCXXX}{\char"14508}
+\newcommand{\CASTRUM}{\char"14509}
+\newcommand{\LCCXXXII}{\char"1450A}
+\newcommand{\LCCXXXIII}{\char"1450B}
+\newcommand{\LCCXXXIV}{\char"1450C}
+\newcommand{\TURRIS}{\char"1450D}
+\newcommand{\LCCXXXV}{\char"1450D}
+\newcommand{\MURUS}{\char"1450E}
+\newcommand{\LCCXXXVI}{\char"1450E}
+\newcommand{\PORTA}[1][]{
+ \ifx\relax#1\relax
+ {\char"1450F}
+ \else \ifnum #1=2
+ {\char"14511}
+ \fi\fi
+}
+\newcommand{\LCCXXXVIII}{\char"14510}
+\newcommand{\LCCXL}{\char"14512}
+\newcommand{\KIX}{\char"14513}
+\newcommand{\LCCXLII}{\char"14514}
+\newcommand{\CUBITUM}{\char"14515}
+\newcommand{\AEDIFICIUM}{\char"14516}
+\newcommand{\VACUUS}{\char"14517}
+\newcommand{\AEDIFICIUMMINUS}{\char"14517}
+\newcommand{\AEDIFICARE}{\char"14518}
+\newcommand{\AEDIFICIUMPONERE}{\char"14518}
+\newcommand{\DOMUS}{\char"14519}
+\newcommand{\DELERE}{\char"1451A}
+\newcommand{\DOMUSMINUS}{\char"1451A}
+\newcommand{\DEUSDOMUS}{\char"1451B}
+\newcommand{\MAGNUSDOMUS}{\char"1451C}
+\newcommand{\DOMUSX}{\char"1451D}
+\newcommand{\DOMUSSCALA}{\char"1451E}
+\newcommand{\LCCLII}{\char"1451F}
+\newcommand{\EUNUCHUS}[1][]{
+ \ifx\relax#1\relax
+ {\char"14611}
+ \else \ifnum #1=2
+ {\char"14520}
+ \fi\fi
+}
+\newcommand{\HORREUM}{\char"14521}
+\newcommand{\LCCLVI}{\char"14522}
+\newcommand{\ARGENTUM}{\char"14523}
+\newcommand{\LCCLVIII}{\char"14524}
+\newcommand{\LCCLIX}{\char"14525}
+\newcommand{\LCCLX}{\char"14526}
+\newcommand{\LCCLXI}{\char"14527}
+\newcommand{\LCCLXII}{\char"14528}
+\newcommand{\LCCLXIII}{\char"14529}
+\newcommand{\PODIUM}{\char"1452A}
+\newcommand{\LCCLXV}{\char"1452B}
+\newcommand{\PESREGIO}{\char"1452C}
+\newcommand{\STELE}{\char"1452D}
+\newcommand{\LAPISSCALPRUM}{\char"1452D}
+\newcommand{\LAPIS}{\char"1452E}
+\newcommand{\SCALPRUM}{\char"1452F}
+\newcommand{\EXERCITUS}{\char"14530}
+\newcommand{\LCCLXX}{\char"14531}
+\newcommand{\LCCLXXI}{\char"14532}
+\newcommand{\SCUTUM}{\char"14533}
+\newcommand{\LCCLXXIII}{\char"14534}
+\newcommand{\LCCLXXIV}{\char"14535}
+\newcommand{\FRATER}[1][]{
+ \ifx\relax#1\relax
+ {\char"14430}
+ \else \ifnum #1=2
+ {\char"14537}
+ \fi\fi
+}
+\newcommand{\IUDEXLA}{\char"14538}
+\newcommand{\LCCLXXIX}{\char"1453A}
+\newcommand{\MALLEUS}{\char"1453B}
+\newcommand{\ASCIA}{\char"1453C}
+\newcommand{\LCCLXXXII}{\char"1453D}
+\newcommand{\TUZZI}{\char"1453E}
+\newcommand{\LCCLXXXIV}{\char"1453F}
+\newcommand{\IACULUM}{\char"14540}
+\newcommand{\ZU}[1][]{
+ \ifx\relax#1\relax
+ {\char"14540}
+ \else \ifnum #1=2
+ {\char"145F5}
+ \fi\fi
+}
+\newcommand{\ZUWA}{\char"14540}
+\newcommand{\LCCLXXXVII}{\char"14542}
+\newcommand{\CURRUS}{\char"14543}
+\newcommand{\AURIGA}[1][]{
+ \ifx\relax#1\relax
+ {\char"14544}
+ \else \ifnum #1=2
+ {\char"14545}
+ \fi\fi
+}
+\newcommand{\HARAI}{\char"14546}
+\newcommand{\ROTA}{\char"14548}
+\newcommand{\HALAI}{\char"14548}
+\newcommand{\LCCXCIII}{\char"14549}
+\newcommand{\THRONUS}[1][]{
+ \ifx\relax#1\relax
+ {\char"1454A}
+ \else \ifnum #1=2
+ {\char"1454F}
+ \fi\fi
+}
+\newcommand{\MENSA}[1][]{
+ \ifx\relax#1\relax
+ {\char"1454A}
+ \else \ifnum #1=2
+ {\char"1454B}
+ \fi\fi
+}
+\newcommand{\SARPA}{\char"1454B}
+\newcommand{\SOLIITHRONUS}{\char"1454C}
+\newcommand{\SOLIIMENSA}{\char"1454C}
+\newcommand{\DEUSMONSSARPA}{\char"1454D}
+\newcommand{\DEUSMONSMENSA}{\char"1454D}
+\newcommand{\LCCXCVII}{\char"1454E}
+\newcommand{\SOLIUM}{\char"14550}
+\newcommand{\NEPOS}{\char"14552}
+\newcommand{\LECTUS}{\char"14553}
+\newcommand{\LCCCII}{\char"14554}
+\newcommand{\FUSUS}{\char"14557}
+\newcommand{\HI}[1][]{
+ \ifx\relax#1\relax
+ {\char"145D2}
+ \else \ifnum #1=2
+ {\char"14558}
+ \fi\fi
+}
+\newcommand{\HU}[1][]{
+ \ifx\relax#1\relax
+ {\char"14559}
+ \else \ifnum #1=2
+ {\char"14588}
+ \fi\fi
+}
+\newcommand{\LCCCVIII}{\char"1455A}
+\newcommand{\CRUX}[1][]{
+ \ifx\relax#1\relax
+ {\char"1455B}
+ \else \ifnum #1=2
+ {\char"1455C}
+ \fi\fi
+}
+\newcommand{\LCCCX}{\char"1455D}
+\newcommand{\LCCCXI}{\char"1455E}
+\newcommand{\LCCCXII}{\char"1455F}
+\newcommand{\VIR}[1][]{
+ \ifx\relax#1\relax
+ {\char"14560}
+ \else \ifnum #1=2
+ {\char"145B5}
+ \fi\fi
+}
+\newcommand{\HAX}{\char"14561}
+\newcommand{\KAR}{\char"14562}
+\newcommand{\LCCCXVII}{\char"14564}
+\newcommand{\TESHUB}{\char"14565}
+\newcommand{\LCCCXX}{\char"14567}
+\newcommand{\LCCCXXI}{\char"14568}
+\newcommand{\PURUS}{\char"14569}
+\newcommand{\LCCCXXIII}{\char"1456A}
+\newcommand{\LCCCXXIV}{\char"1456B}
+\newcommand{\SCRIBA}{\char"1456D}
+\newcommand{\SIGILLUM}{\char"1456E}
+\newcommand{\PU}[1][]{
+ \ifx\relax#1\relax
+ {\char"1456F}
+ \else \ifnum #1=2
+ {\char"145E3}
+ \fi\fi
+}
+\newcommand{\REL}{\char"14570}
+\newcommand{\KWIA}{\char"14570}
+\newcommand{\LCCCXXIXA}{\char"14571}
+\newcommand{\CAPERESCALPRUM}{\char"14572}
+\newcommand{\AVUS}{\char"14573}
+\newcommand{\NEG}[1][]{
+ \ifx\relax#1\relax
+ {\char"14574}
+ \else \ifnum #1=2
+ {\char"14575}
+ \else \ifnum #1=3
+ {\char"14576}
+ \fi\fi\fi
+}
+\newcommand{\LCCCXXXIII}{\char"14577}
+\newcommand{\PA}{\char"14578}
+\newcommand{\ANNUS}{\char"1457A}
+\newcommand{\PITHOSSCUTELLA}{\char"1457A}
+\newcommand{\PITHOS}{\char"1457E}
+\newcommand{\ZAX}{\char"1457D}
+\newcommand{\CULTER}{\char"1457F}
+\newcommand{\LCCCXXXIX}{\char"14580}
+\newcommand{\ANNUSANNUS}{\char"14581}
+\newcommand{\VAS}{\char"14582}
+\newcommand{\LCCCXLII}{\char"14583}
+\newcommand{\PITHOSA}{\char"14584}
+\newcommand{\CONTRACTUS}{\char"14585}
+\newcommand{\URCEUS}{\char"14586}
+\newcommand{\POCULUM}{\char"14587}
+\newcommand{\LCCCXLVIII}{\char"14589}
+\newcommand{\LCCCXLIX}{\char"1458A}
+\newcommand{\LCCCL}{\char"1458B}
+\newcommand{\LCCCLI}{\char"1458C}
+\newcommand{\LCCCLII}{\char"1458D}
+\newcommand{\LCCCLIII}{\char"1458E}
+\newcommand{\LCCCLIV}{\char"1458F}
+\newcommand{\LCCCLVI}{\char"14591}
+\newcommand{\LCCCLVII}{\char"14592}
+\newcommand{\DIES}{\char"14593}
+\newcommand{\LCCCLIX}{\char"14594}
+\newcommand{\LCCCLIXA}{\char"14595}
+\newcommand{\DEUS}{\char"14596}
+\newcommand{\LCCCLXI}{\char"14597}
+\newcommand{\MAGNUS}{\char"14599}
+\newcommand{\UR}{\char"14599}
+\newcommand{\UA}{\char"1459A}
+\newcommand{\MUA}{\char"1459B}
+\newcommand{\LCCCLXV}{\char"1459C}
+\newcommand{\OMNIS}[1][]{
+ \ifx\relax#1\relax
+ {\char"1459D}
+ \else \ifnum #1=2
+ {\char"145E3}
+ \fi\fi
+}
+\newcommand{\OMNISMI}{\char"1459D}
+\newcommand{\TALA}{\char"1459E}
+\newcommand{\MALUS}[1][]{
+ \ifx\relax#1\relax
+ {\char"1459F}
+ \else \ifnum #1=2
+ {\char"145A0}
+ \fi\fi
+}
+\newcommand{\VITA}{\char"145A1}
+\newcommand{\IUSTITIA}{\char"145A3}
+\newcommand{\IUDEX}{\char"145A3}
+\newcommand{\IUDEXRAI}{\char"145A4}
+\newcommand{\TARAIX}{\char"145A4}
+\newcommand{\SACERDOS}[1][]{
+ \ifx\relax#1\relax
+ {\char"14590}
+ \else \ifnum #1=2
+ {\char"145A5}
+ \fi\fi
+}
+\newcommand{\LCCCLXXIII}{\char"145A6}
+\newcommand{\LCCCLXXIV}{\char"145A7}
+\newcommand{\LCCCLXXV}{\char"145A8}
+\newcommand{\ZIA}{\char"145A9}
+\newcommand{\LITUUS}{\char"145AB}
+\newcommand{\OCCIDENS}{\char"145AC}
+\newcommand{\ONE}{\char"145AD}
+\newcommand{\UNUS}{\char"145AD}
+\newcommand{\MINUS}{\char"145AE}
+\newcommand{\MORI}{\char"145AF}
+\newcommand{\VIRIIMINUS}{\char"145AF}
+\newcommand{\LIGNUM}{\char"145B0}
+\newcommand{\RAI}{\char"145B1}
+\newcommand{\PERS}{\char"145B2}
+\newcommand{\TWO}{\char"145B3}
+\newcommand{\WORD}{\char"145B5}
+\newcommand{\VIRIIA}{\char"145B6}
+\newcommand{\SERVUS}{\char"145B7}
+\newcommand{\MI}[1][]{
+ \ifx\relax#1\relax
+ {\char"145BB}
+ \else \ifnum #1=2
+ {\char"145D8}
+ \else \ifnum #1=3
+ {\char"145B7}
+ \fi\fi\fi
+}
+\newcommand{\THREE}{\char"145B8}
+\newcommand{\TARAI}{\char"145B9}
+\newcommand{\DOMINUS}{\char"145BA}
+\newcommand{\FOUR}{\char"145BB}
+\newcommand{\FIVE}{\char"145BC}
+\newcommand{\EIGHT}{\char"145BD}
+\newcommand{\LCCCXCIV}{\char"145BE}
+\newcommand{\NINE}{\char"145BF}
+\newcommand{\LCCCXCVI}{\char"145C0}
+\newcommand{\TEN}{\char"145C1}
+\newcommand{\DECEM}{\char"145C1}
+\newcommand{\LCCCXCVIII}{\char"145C2}
+\newcommand{\HUNDRED}{\char"145C3}
+\newcommand{\CENTUM}{\char"145C3}
+\newcommand{\THOUSAND}{\char"145C4}
+\newcommand{\MILLE}{\char"145C4}
+\newcommand{\LCDI}{\char"145C5}
+\newcommand{\SCUTELLA}{\char"145C6}
+\newcommand{\LCDIII}{\char"145C7}
+\newcommand{\ANIMAL}{\char"145C8}
+\newcommand{\LCDV}{\char"145C9}
+\newcommand{\LCDVI}{\char"145CA}
+\newcommand{\LCDVII}{\char"145CB}
+\newcommand{\LCDVIII}{\char"145CC}
+\newcommand{\LCDIX}{\char"145CD}
+\newcommand{\LCDX}{\char"145CE}
+\newcommand{\LOGS}{\char"145CE}
+\newcommand{\LCDXA}{\char"145CF}
+\newcommand{\LOGE}{\char"145CF}
+\newcommand{\LCDXIV}{\char"145D3}
+\newcommand{\LCDXVI}{\char"145D5}
+\newcommand{\SAX}{\char"145D6}
+\newcommand{\LCDXVIII}{\char"145D7}
+\newcommand{\URHI}{\char"145D8}
+\newcommand{\LCDXX}{\char"145D9}
+\newcommand{\US}{\char"145DA}
+\newcommand{\PANISSCUTELLA}{\char"145DB}
+\newcommand{\KU}{\char"145DC}
+\newcommand{\LCDXXIV}{\char"145DD}
+\newcommand{\LCDXXV}{\char"145DE}
+\newcommand{\LCDXXVI}{\char"145DF}
+\newcommand{\LCDXXVII}{\char"145E0}
+\newcommand{\LCDXXVIII}{\char"145E1}
+\newcommand{\TANA}{\char"145E2}
+\newcommand{\LCDXXXI}{\char"145E4}
+\newcommand{\LCDXXXII}{\char"145E5}
+\newcommand{\AX}{\char"145E8}
+\newcommand{\LCDXXXVI}{\char"145E9}
+\newcommand{\LCDXXXVII}{\char"145EA}
+\newcommand{\PASTOR}{\char"145EB}
+\newcommand{\LCDXL}{\char"145ED}
+\newcommand{\LCDXLI}{\char"145EE}
+\newcommand{\LCDXLII}{\char"145EF}
+\newcommand{\LCDXLIII}{\char"145F0}
+\newcommand{\LCDXLIV}{\char"145F1}
+\newcommand{\LAIU}{\char"145F2}
+\newcommand{\KI}{\char"145F3}
+\newcommand{\NIX}{\char"145F4}
+\newcommand{\LCDXLIX}{\char"145F7}
+\newcommand{\RAA}{\char"145F8}
+\newcommand{\HURU}{\char"145F9}
+\newcommand{\LCDLII}{\char"145FA}
+\newcommand{\LCDLIII}{\char"145FB}
+\newcommand{\LCDLIV}{\char"145FC}
+\newcommand{\LAX}{\char"145FD}
+\newcommand{\LCDLVII}{\char"145FF}
+\newcommand{\LCDLVIIA}{\char"14600}
+\newcommand{\LCDLVIII}{\char"14601}
+\newcommand{\LCDLIX}{\char"14602}
+\newcommand{\LCDLX}{\char"14603}
+\newcommand{\LCDLXI}{\char"14604}
+\newcommand{\MAX}{\char"14605}
+\newcommand{\LCDLXIII}{\char"14606}
+\newcommand{\LCDLXIV}{\char"14607}
+\newcommand{\LCDLXV}{\char"14608}
+\newcommand{\LCDLXVI}{\char"14609}
+\newcommand{\LCDLXVII}{\char"1460A}
+\newcommand{\LCDLXVIII}{\char"1460B}
+\newcommand{\LCDLXIX}{\char"1460C}
+\newcommand{\TWELVE}{\char"1460D}
+\newcommand{\LCDLXXI}{\char"1460E}
+\newcommand{\LCDLXXII}{\char"1460F}
+\newcommand{\LCDLXXIII}{\char"14610}
+\newcommand{\LCDLXXV}{\char"14612}
+\newcommand{\LCDLXXVI}{\char"14613}
+\newcommand{\FLAMMAE}{\char"14614}
+\newcommand{\LCDLXXVIII}{\char"14615}
+\newcommand{\LCDLXXIX}{\char"14616}
+\newcommand{\LCDLXXX}{\char"14617}
+\newcommand{\LCDLXXXI}{\char"14618}
+\newcommand{\LCDLXXXII}{\char"14619}
+\newcommand{\LCDXXXIII}{\char"1461A}
+\newcommand{\LCDLXXXIV}{\char"1461B}
+\newcommand{\LCDLXXXV}{\char"1461C}
+\newcommand{\FALX}{\char"1461D}
+\newcommand{\LCDLXXXVII}{\char"1461E}
+\newcommand{\LCDLXXXIX}{\char"14620}
+\newcommand{\LCDXC}{\char"14621}
+\newcommand{\LCDXCI}{\char"14622}
+\newcommand{\LCDXCII}{\char"14623}
+\newcommand{\LCDXCIII}{\char"14624}
+\newcommand{\LCDXCIV}{\char"14625}
+\newcommand{\LCDXCV}{\char"14626}
+\newcommand{\LCDXCVI}{\char"14627}
+\newcommand{\LCDXCVII}{\char"14628}
+\newcommand{\LDI}{\char"14629}
+\newcommand{\LDII}{\char"1462A}
+\newcommand{\LDIII}{\char"1462B}
+\newcommand{\LDIV}{\char"1462C}
+\newcommand{\LDV}{\char"1462D}
+\newcommand{\HANA}{\char"1462E}
+\newcommand{\LDVII}{\char"1462F}
+\newcommand{\CURRERE}{\char"14630}
+\newcommand{\HWIA}{\char"14630}
+\newcommand{\LDIX}{\char"14631}
+\newcommand{\LDXI}{\char"14633}
+\newcommand{\LDXII}{\char"14634}
+\newcommand{\LDXIII}{\char"14635}
+\newcommand{\LDXIV}{\char"14636}
+\newcommand{\LDXV}{\char"14637}
+\newcommand{\LDXVI}{\char"14638}
+\newcommand{\LDXVII}{\char"14639}
+\newcommand{\LDXVIII}{\char"1463A}
+\newcommand{\LDXIX}{\char"1463B}
+\newcommand{\LDXX}{\char"1463C}
+\newcommand{\LDXXI}{\char"1463D}
+\newcommand{\LDXXII}{\char"1463E}
+\newcommand{\LDXXIII}{\char"1463F}
+\newcommand{\CORNUCAPUT}{\char"14640}
+\newcommand{\PROPHETA}{\char"14640}
+\newcommand{\PRINCEPS}{\char"14641}
+\newcommand{\GCXCV}{\char"14642}
+\newcommand{\APER}{\char"14643}
+\newcommand{\LINGUAX}{\char"14645}
+\newcommand{\LDXXX}{\char"14646}
+
+
+
+
diff --git a/Master/texmf-dist/tex/latex/magicwatermark/magicwatermark.sty b/Master/texmf-dist/tex/latex/magicwatermark/magicwatermark.sty
index 7a466628722..e40af7ea0b0 100644
--- a/Master/texmf-dist/tex/latex/magicwatermark/magicwatermark.sty
+++ b/Master/texmf-dist/tex/latex/magicwatermark/magicwatermark.sty
@@ -1,290 +1,453 @@
-%%
-%% This is file `magicwatermark.sty',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% magicwatermark.dtx (with options: `package')
-%%
-%% IMPORTANT NOTICE:
-%%
-%% For the copyright see the source file.
-%%
-%% Any modified versions of this file must be renamed
-%% with new filenames distinct from magicwatermark.sty.
-%%
-%% For distribution of the original source see the terms
-%% for copying and modification in the file magicwatermark.dtx.
-%%
-%% This generated file may be distributed as long as the
-%% original source files, as listed above, are part of the
-%% same distribution. (The sources need not necessarily be
-%% in the same archive or directory.)
-\NeedsTeXFormat{LaTeX2e}[2020/10/01]
-\ProvidesPackage{magicwatermark}[2021/12/22 v1.0.1 watermark for ljguo ]
-
-
-\documentclass{ctexart}
-\usepackage{magicwatermark}
-\PageSetup[
- rotate = 30, % 设置旋转角度
- color = red!80, % 设置水印内容颜色
- scale = 6 % 设置比例
-]{
- 水印内容
+\ProvidesExplPackage{magicwatermark}{2024/06/11}{1.2B}{magic watermark, author}
+
+
+\msg_new:nnn {magicwatermark}{ Unable to parse }
+{
+ Unable~to~parse~this~list~parameter.^^J
+ #1
}
-\Watermark % 全文生效
-\begin{document}
-...
-\end{document}
-\end{lstlisting}
-\documentclass{ctexart}
-\usepackage{magicwatermark}
-\EvenPageSetup[color=cyan,showframe,scale=4]{偶数页} % 设置奇数页
-\OddPageSetup[color=purple,showframe,scale=4]{奇数页} % 设置偶数页
-\EvenWatermark % 显示水印
-\OddWatermark
-\begin{document}
-...
-\end{document}
-\end{lstlisting}
-\documentclass{ctexart}
-\usepackage{magicwatermark}
-\PageSetup*{
- \begin{tikzpicture}[remember picture,overlay]
- \node[cyan,scale = 2,shift={(-1,-1)}] at
- (current page.north east){--~\thepage~--};
- \end{tikzpicture}
+
+\msg_new:nnn {magicwatermark}{ Enable TikZ }
+{
+ tikz~option~has~been~disabled,^^J
+ style~will~be~ignored.
}
-\begin{document}
-...
-\Watermark % 该命令之前不生效
-\end{document}
-\end{lstlisting}
-\documentclass{ctexart}
-\usepackage{magicwatermark}
-\NewWatermark{one} % 新建两个水印
-\NewWatermark{two}
-\MyPageSetup[scale=5,color=blue]{one}{水印内容一} % 设置水印
-\MyPageSetup[scale=5,color=red]{two}{水印内容二}
-\begin{document}
-\MyWatermark{one} % 使用第一个水印
-...
-\newpage
-\ClearWatermark{one} % 清除第一个水印
-\MyWatermark{two} % 使用第二个水印
-...
-\end{document}
-\end{lstlisting}
-\RequirePackage{everypage-1x,tikz,xparse,expl3}
-\ExplSyntaxOn
-\tl_new:N \l_mainpage_tl
-\tl_new:N \l_evenpage_tl
-\tl_new:N \l_oddpage_tl
-\tl_new:N \g_case_tl
-\tl_new:N \g_clear_all_tl
-\msg_new:nnn{clear}{not~have}{I~can~not~find~the~"\clear"~watermark~!}
-\NewDocumentCommand{\PageSetup}{sO{}+m}
+
+\msg_new:nnn {magicwatermark}{ Load TikZ }
{
- \IfBooleanTF{#1}
+ Please~load~tikz~package~before~magicwatermark.
+}
+
+\seq_new:N \l__mw_tmpa_seq
+\seq_new:N \l__mw_tmpb_seq
+\seq_new:N \l__mw_tmpc_seq
+\seq_new:N \l__mw_tmpd_seq
+
+
+\int_new:N \l__mw_tmpa_int
+\int_new:N \l__mw_tmpb_int
+\int_new:N \l__mw_tmpc_int
+\int_new:N \l__mw_tmpd_int
+\int_new:N \l__mw_tmpe_int
+
+\clist_new:N \l__mw_list_arabic_number_clist
+\clist_new:N \l__mw_list_roman_number_clist
+\clist_new:N \l__mw_list_range_clist
+\clist_new:N \l__mw_list_expression_clist
+
+
+
+
+\clist_new:N \l__mw_tmpa_clist
+\clist_new:N \l__mw_tmpb_clist
+\clist_new:N \l__mw_tmpc_clist
+
+
+\tl_new:N \l__mw_tmpa_tl
+\tl_new:N \l__mw_tmpb_tl
+\tl_new:N \l__mw_tmpc_tl
+\tl_new:N \g__mw_list_tl
+
+\tl_new:N \g__mw_style_tl
+\tl_new:N \g__mw_content_tl
+
+\bool_new:N \g__mw_is_append_bool
+\bool_set_false:N \g__mw_is_append_bool
+\bool_new:N \g__mw_tikz_bool
+\bool_set_true:N \g__mw_tikz_bool
+
+\regex_const:Nn \c__mw_arabic_numbers_regex { ^\d+$ }
+\regex_const:Nn \c__mw_roman_numbers_regex { ^[ivxlcdm]+$ }
+
+
+
+\int_new:N \g__mw_last_page_int
+
+\AtBeginDocument{
+ \int_compare:nTF { \@abspage@last = \number\maxdimen }
+ {
+ \int_gset:Nn \g__mw_last_page_int { 10 }
+ }
+ {
+ \int_gset:Nn \g__mw_last_page_int { \@abspage@last }
+ }
+}
+
+\cs_new_protected:Npn \__mw_clist_deduplicate:N #1
+{
+ \group_begin:
+ \clist_clear:N \l_tmpa_clist
+ \clist_map_inline:Nn #1
+ {
+ \clist_if_in:NnF \l_tmpa_clist { ##1 }
+ { \clist_put_right:Nn \l_tmpa_clist { ##1 } }
+ }
+ \clist_gset_eq:NN #1 \l_tmpa_clist
+ \group_end:
+}
+
+
+\cs_new:Npn \__mw_list_parser_aux:n #1 {
+
+ \clist_clear:N \l__mw_list_arabic_number_clist
+ \clist_clear:N \l__mw_list_roman_number_clist
+ \clist_clear:N \l__mw_list_range_clist
+ \clist_clear:N \l__mw_list_expression_clist
+
+ % split by commas
+ \group_begin:
+ \seq_set_split:Nnn \l__mw_tmpa_seq { , } { #1 }
+ \seq_map_inline:Nn \l__mw_tmpa_seq
+ {
+ \tl_if_eq:nnTF { ##1 } { odd } % odd, push 2X + 1
{
- \tl_set:Nn \l_mainpage_tl{#3}
+ \clist_gput_right:Nn \l__mw_list_expression_clist { 2X + 1 }
}
{
- \tl_set:Nn \l_mainpage_tl
+ \tl_if_eq:nnTF { ##1 } { even } % even, push 2X
+ {
+ \clist_gput_right:Nn \l__mw_list_expression_clist { 2X }
+ }
+ {
+ \tl_if_in:nnTF { ##1 } { X } % expression, push ##1
+ {
+ \clist_gput_right:Nn \l__mw_list_expression_clist { ##1 }
+ }
{
- \group_begin:
- \keys_set:nn{watermark}{#2}
- \begin{tikzpicture}[remember~picture,overlay]
- \node
- [
- scale = \fp_use:N\l_scale_fp,
- opacity = \fp_use:N\l_opacity_fp,
- shift = \tl_use:N\l_shift_tl,
- color = \tl_use:N \l_color_tl,
- rotate = \fp_use:N \l_rotate_fp,
- align = \tl_use:N \l_align_tl,
- \bool_if:NTF \l_showframe_bool{draw}{},
- ]
- at(current~page.center){#3};
- \end{tikzpicture}
- \group_end:
+ \tl_if_in:nnTF { ##1 } { - } % range, push ##1
+ {
+ \clist_gput_right:Nn \l__mw_list_range_clist { ##1 }
+ }
+ {
+ \__mw_if_arabic_number:nTF { ##1 }
+ {
+ \clist_gput_right:Nn \l__mw_list_arabic_number_clist { ##1 }
+ }
+ {
+ \__mw_if_roman_number:nTF { ##1 }
+ {
+ \clist_gput_right:Nn \l__mw_list_roman_number_clist { ##1 }
+ }
+ {
+ % error
+ \msg_error:nnn {magicwatermark}{ Unable to parse }
+ {
+ Error~list~parameter~``##1''.
+ }
+ }
+ }
+ }
}
+ }
}
+ }
+ \group_end:
}
-\NewDocumentCommand{\Watermark}{}
+
+\prg_new_conditional:Npnn \__mw_if_arabic_number:n #1 { p, T, F, TF }
{
- \AddEverypageHook{\tl_use:N \l_mainpage_tl}
+ \regex_match:NnTF \c__mw_arabic_numbers_regex { #1 }
+ {
+ \prg_return_true:
+ }
+ {
+ \prg_return_false:
+ }
}
-\NewDocumentCommand{\EvenPageSetup}{sO{}+m}
+
+\prg_new_conditional:Npnn \__mw_if_roman_number:n #1 { p, T, F, TF }
{
- \IfBooleanTF{#1}
+ \regex_match:NnTF \c__mw_roman_numbers_regex { #1 }
+ {
+ \prg_return_true:
+ }
+ {
+ \prg_return_false:
+ }
+}
+
+\prg_generate_conditional_variant:Nnn \__mw_if_arabic_number:n { x } {p, T, F, TF}
+\prg_generate_conditional_variant:Nnn \__mw_if_roman_number:n { x } {p, T, F, TF}
+
+
+\cs_new:Npn \__mw_list_parser_for_arabic_number:n #1 {
+ % arabic number
+ \fp_compare:nTF { #1 <= \g__mw_last_page_int && #1 > 0 }
+ {
+ \clist_put_right:Nn \l__mw_tmpa_clist { #1 }
+ }
+ {
+ % error
+ \msg_error:nnn {magicwatermark}{ Unable to parse }
{
- \tl_set:Nn \l_evenpage_tl{#3}
+ Error~list~parameter~``#1''.^^J
+ Error~number~``#1''.
}
+ }
+}
+
+
+
+\cs_new:Npn \__mw_list_parser_for_roman_number:n #1 {
+ % roman number
+ \int_set:Nn \l__mw_tmpa_int { \g__mw_last_page_int - \int_from_roman:n { #1 } + 1 }
+ \fp_compare:nTF
+ {
+ \l__mw_tmpa_int <= \g__mw_last_page_int && \l__mw_tmpa_int > 0
+ }
+ {
+ \clist_put_right:NV \l__mw_tmpa_clist \l__mw_tmpa_int
+ }
+ {
+ % error
+ \msg_error:nnn {magicwatermark}{ Unable to parse }
{
- \tl_set:Nn \l_evenpage_tl
- {
- \group_begin:
- \keys_set:nn{watermark}{#2}
- \begin{tikzpicture}[remember~picture,overlay]
- \node
- [
- scale = \fp_use:N\l_scale_fp,
- opacity = \fp_use:N\l_opacity_fp,
- shift = \tl_use:N\l_shift_tl,
- color = \tl_use:N \l_color_tl,
- rotate = \fp_use:N \l_rotate_fp,
- align = \tl_use:N \l_align_tl,
- \bool_if:NTF \l_showframe_bool{draw}{},
- ]
- at(current~page.center){#3};
- \end{tikzpicture}
- \group_end:
- }
+ Error~list~parameter~``#1''.^^J
+ Error~roman~number~``#1''.
}
+ }
}
-\NewDocumentCommand{\EvenWatermark}{}
-{
- \AddEverypageHook
+
+
+\cs_new:Npn \__mw_list_parser_for_range:n #1 {
+ % range, 1-5, 3-i
+ \seq_set_split:Nnn \l__mw_tmpb_seq { - } { #1 }
+
+ \__mw_if_arabic_number:xTF { \seq_item:Nn \l__mw_tmpb_seq { 1 } }
+ {
+ \int_set:Nn \l__mw_tmpb_int { \seq_item:Nn \l__mw_tmpb_seq { 1 } }
+ }
+ {
+ \__mw_if_roman_number:xTF { \seq_item:Nn \l__mw_tmpb_seq { 1 } }
{
- \int_if_even:nT{\int_use:N \value{page}}
- {
- \tl_use:N \l_evenpage_tl
- }
+ \exp_args:NNx \int_set:Nn \l__mw_tmpb_int
+ {
+ \g__mw_last_page_int - \exp_not:N \int_from_roman:n { \seq_item:Nn \l__mw_tmpb_seq { 1 } } + 1
+ }
}
-}
-\NewDocumentCommand{\OddPageSetup}{sO{}+m}
-{
- \IfBooleanTF{#1}
{
- \tl_set:Nn \l_oddpage_tl{#3}
+ \int_set:Nn \l__mw_tmpb_int { -1 }
+ % error
+ \msg_error:nnn {magicwatermark}{ Unable to parse }
+ {
+ Error~list~parameter~``#1''.^^J
+ Error~range~left~``#1''.
+ }
}
+ }
+
+ \__mw_if_arabic_number:xTF { \seq_item:Nn \l__mw_tmpb_seq { 2 } }
+ {
+ \int_set:Nn \l__mw_tmpc_int { \seq_item:Nn \l__mw_tmpb_seq { 2 } }
+ }
+ {
+ \__mw_if_roman_number:xTF { \seq_item:Nn \l__mw_tmpb_seq { 2 } }
{
- \tl_set:Nn \l_oddpage_tl
+ \exp_args:NNx \int_set:Nn \l__mw_tmpc_int
+ {
+ \g__mw_last_page_int - \exp_not:N \int_from_roman:n { \seq_item:Nn \l__mw_tmpb_seq { 2 } } + 1
+ }
+ }
{
- \group_begin:
- \keys_set:nn{watermark}{#2}
- \begin{tikzpicture}[remember~picture,overlay]
- \node
- [
- scale = \fp_use:N\l_scale_fp,
- opacity = \fp_use:N\l_opacity_fp,
- shift = \tl_use:N\l_shift_tl,
- color = \tl_use:N \l_color_tl,
- rotate = \fp_use:N \l_rotate_fp,
- align = \tl_use:N \l_align_tl,
- \bool_if:NTF \l_showframe_bool{draw}{},
- ]
- at(current~page.center){#3};
- \end{tikzpicture}
- \group_end:
+ \int_set:Nn \l__mw_tmpc_int { -1 }
+ % error
+ \msg_error:nnn {magicwatermark}{ Unable to parse }
+ {
+ Error~list~parameter~``#1''.^^J
+ Error~range~right~``#1''.
+ }
}
+ }
+
+ \fp_compare:nT { \l__mw_tmpb_int > 0 && \l__mw_tmpc_int > 0}
+ {
+ \int_step_inline:nnn
+ { \int_min:nn { \l__mw_tmpb_int } { \l__mw_tmpc_int } }
+ { \int_max:nn { \l__mw_tmpb_int } { \l__mw_tmpc_int } }
+ {
+ \clist_put_right:Nn \l__mw_tmpa_clist { ##1 }
}
+ }
}
-\NewDocumentCommand{\OddWatermark}{}
-{
- \AddEverypageHook
+
+\cs_new:Npn \__mw_list_parser_for_expression:n #1 {
+ \int_zero:N \l__mw_tmpd_int
+ \int_zero:N \l__mw_tmpe_int
+ \group_begin:
+ \tl_set:Nn \l__mw_tmpa_tl { #1 }
+ \regex_replace_all:nnN { (\d+)X } { \1*\c{l__mw_tmpe_int} } \l__mw_tmpa_tl
+ \tl_replace_all:Nnn \l__mw_tmpa_tl { X } { \l__mw_tmpe_int }
+ % \tl_show:N \l__mw_tmpa_tl
+ \int_while_do:nn { \l__mw_tmpd_int < \g__mw_last_page_int }
{
- \int_if_odd:nT{\int_use:N \value{page}}
- {
- \tl_use:N \l_oddpage_tl
- }
+ \int_set:Nn \l__mw_tmpd_int
+ {
+ \fp_eval:n { \l__mw_tmpa_tl }
+ }
+ \clist_gput_right:NV \l__mw_tmpa_clist \l__mw_tmpd_int
+ \int_incr:N \l__mw_tmpe_int
}
+ \group_end:
}
-\NewDocumentCommand{\NewWatermark}{m}
-{
- \tl_new:c {l_#1_tl}
- \tl_put_right:Nn \g_case_tl {{#1}{\tl_clear:c {l_#1_tl}}}
- \tl_put_right:Nn \g_clear_all_tl {\tl_clear:c {l_#1_tl}}
+
+\cs_new_nopar:Npn \__mw_list_parser:nN #1#2 {
+
+ % case 1 -> odd, even
+ % case 2 -> number, 1
+ % case 3 -> roman, i
+ % case 4 -> range, 1-5, 3-ii
+ % case 5 -> expression, 3X + 1
+
+ \__mw_list_parser_aux:n { #1 }
+
+ \clist_clear:N \l__mw_tmpa_clist
+ \clist_map_inline:Nn \l__mw_list_arabic_number_clist
+ {
+ \__mw_list_parser_for_arabic_number:n { ##1 }
+ }
+
+ \clist_map_inline:Nn \l__mw_list_roman_number_clist
+ {
+ \__mw_list_parser_for_roman_number:n { ##1 }
+ }
+
+
+ \clist_map_inline:Nn \l__mw_list_range_clist
+ {
+ \__mw_list_parser_for_range:n { ##1 }
+ }
+
+
+ \clist_map_inline:Nn \l__mw_list_expression_clist
+ {
+ \__mw_list_parser_for_expression:n { ##1 }
+ }
+
+
+ \clist_sort:Nn \l__mw_tmpa_clist {
+ \int_compare:nNnTF { ##1 } > { ##2 }
+ { \sort_return_swapped: }
+ { \sort_return_same: }
+ }
+ \__mw_clist_deduplicate:N \l__mw_tmpa_clist
+ \clist_set_eq:NN #2 \l__mw_tmpa_clist
}
-\NewDocumentCommand{\MyPageSetup}{O{} m +m}
-{
- \tl_set:cn {l_#2_tl}
+
+
+\cs_new:Npn \__mw_parser:nN #1#2 {
+ \clist_clear:N #2
+ \tl_if_eq:nnTF { #1 } { * }
+ {
+ \int_step_inline:nnn { 1 } { \g__mw_last_page_int }
{
- \group_begin:
- \keys_set:nn{watermark}{#1}
- \begin{tikzpicture}[remember~picture,overlay]
- \node
- [
- scale = \fp_use:N\l_scale_fp,
- opacity = \fp_use:N\l_opacity_fp,
- shift = \tl_use:N\l_shift_tl,
- color = \tl_use:N \l_color_tl,
- rotate = \fp_use:N \l_rotate_fp,
- align = \tl_use:N \l_align_tl,
- \bool_if:NTF \l_showframe_bool{draw}{},
- ]
- at(current~page.center){#3};
- \end{tikzpicture}
- \group_end:
+ \clist_put_right:Nn #2 { ##1 }
}
+ }
+ {
+ \__mw_list_parser:nN { #1 } #2
+ }
}
-\NewDocumentCommand{\MyWatermark}{m}
+
+
+
+\keys_define:nn { mw / new }
{
- \AddEverypageHook{\tl_use:c {l_#1_tl}}
+ pages .tl_set:N = \g__mw_list_tl,
+ style .tl_set:N = \g__mw_style_tl,
+ % style .code:n = \__mw_parse_style:n { #1 },
+ content .tl_set:N = \g__mw_content_tl,
+ is~append .bool_set:N = \g__mw_is_append_bool,
+ tikz .bool_set:N = \g__mw_tikz_bool
}
-\keys_define:nn{watermark}
-{
- scale.fp_set:N = \l_scale_fp,
- scale.initial:n = 1.0,
- scale.default:n = 1.0,
- opacity.fp_set:N = \l_opacity_fp,
- opacity.initial:n = 0.8,
- opacity.default:n = 0.8,
- shift.tl_set:N = \l_shift_tl,
- shift.initial:n = {(0,0)},
- shift.default:n = {(0,0)},
- color.tl_set:N = \l_color_tl,
- color.initial:n = black,
- color.default:n =black,
- rotate.fp_set:N =\l_rotate_fp,
- rotate.initial:n = 0.0,
- rotate.default:n = 0.0,
- align.tl_set:N = \l_align_tl,
- align.initial:n = center,
- align.default:n = center,
- showframe.bool_set:N = \l_showframe_bool,
- showframe.initial:n = false,
- showframe.default:n = true,
+
+\cs_new:Npn \__mw_parse_style: {
+ \tl_if_empty:NF \g__mw_style_tl
+ {
+ \bool_if:NTF \g__mw_tikz_bool
+ {
+ \IfPackageLoadedTF{tikz}
+ {
+ \tl_set_eq:NN \l__mw_tmpc_tl \g__mw_style_tl
+ }
+ {
+ \msg_error:nn {magicwatermark}{ Load TikZ }
+ }
+ }
+ {
+ \msg_warning:nn {magicwatermark}{ Enable TikZ }
+ }
+ }
}
-\tl_gset:Nn \g_clear_all_tl
+
+\keys_define:nn { mw }
{
- \tl_clear:N \l_mainpage_tl
- \tl_clear:N \l_evenpage_tl
- \tl_clear:N \l_oddpage_tl
+ setup .code:n = \__mw_new_watermark:n {#1}
}
-\tl_gset:Nn \g_case_tl{
- {all}
- {
- \tl_use:N\g_clear_all_tl
- }
- {even}
- {
- \tl_clear:N \l_evenpage_tl
- }
- {odd}
- {
- \tl_clear:N \l_oddpage_tl
- }
- {main}
+
+
+\cs_new:Npn \__mw_new_watermark:n #1 {
+ \group_begin:
+ \keys_set:nn { mw / new }{#1}
+
+ % parse style
+ \__mw_parse_style:
+
+ % parse pages
+ \exp_args:NV \__mw_parser:nN \g__mw_list_tl \l__mw_tmpc_clist
+
+ \clist_map_inline:Nn \l__mw_tmpc_clist {
+
+ \bool_if:NTF \g__mw_tikz_bool
+ {
+ \IfPackageLoadedTF{tikz}
+ {
+ \tl_set:Ne \l__mw_tmpb_tl
{
- \tl_clear:N \l_mainpage_tl
+ \exp_not:N \tikz[remember~picture, overlay]
+ {
+ \exp_not:N \node[inner~sep = 0pt, outer~sep = 0pt, opacity = .5, align = left, \exp_not:V \g__mw_style_tl] at (current~page.center)
+ {
+ \exp_not:V \g__mw_content_tl
+ };
+ }
}
+ }
+ {
+ \msg_error:nn {magicwatermark}{ Load TikZ }
+ }
+ }
+ {
+ \tl_set:NV \l__mw_tmpb_tl \g__mw_content_tl
+ }
+
+ \bool_if:nTF { \g__mw_is_append_bool && \tl_if_exist_p:c { g__mw_content_ \int_to_roman:n { ##1 } _tl } }
+ {
+ \tl_gput_right:cV { g__mw_content_ \int_to_roman:n { ##1 } _tl } \l__mw_tmpb_tl
+ }
+ {
+ \tl_gset:cV { g__mw_content_ \int_to_roman:n { ##1 } _tl } \l__mw_tmpb_tl
+ }
+ }
+ \group_end:
}
-\NewDocumentCommand{\ClearWatermark}{m}
-{
-\clist_gset:Nn \g_clear_clist{#1}
-\clist_map_variable:NNn \g_clear_clist \clear
-{
- \exp_args:NV \str_case:nVF \clear
- \g_case_tl
- {\msg_warning:nn{clear}{not~have}}
-}
+
+
+\NewDocumentCommand{\MagicWatermark}{m}{
+ \group_begin:
+ \AtBeginDocument{
+ \keys_set:nn { mw } { #1 }
+ \AddToHook{shipout/background}{
+ \put(.5\paperwidth,-.5\paperheight){
+ \tl_if_exist:cT { g__mw_content_ \int_to_roman:n { \value{page} }_tl }
+ {
+ \tl_use:c { g__mw_content_ \int_to_roman:n { \value{page} } _tl }
+ }
+ }
+ }
+ }
+ \group_end:
}
-\ExplSyntaxOff
-\endinput
-%%
-%% End of file `magicwatermark.sty'.
+
+\@onlypreamble\MagicWatermark \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/mailing/mailing.sty b/Master/texmf-dist/tex/latex/mailing/mailing.sty
index a1b445dafce..2dca395590d 100644
--- a/Master/texmf-dist/tex/latex/mailing/mailing.sty
+++ b/Master/texmf-dist/tex/latex/mailing/mailing.sty
@@ -6,18 +6,18 @@
%%
%% mailing.dtx (with options: `package')
%%
-%% Copyright (C) 1999-2004 Johannes Braams. All rights reserved.
+%% Copyright (C) 1999-2024 Johannes Braams. All rights reserved.
%%
%% This file was generated from file(s) of the mailing package.
%% ------------------------------------------------------------
%%
%% It may be distributed and/or modified under the
-%% conditions of the LaTeX Project Public License, either version 1.3
+%% conditions of the LaTeX Project Public License, either version 1.3c
%% of this license or (at your option) any later version.
%% The latest version of this license is in
%% http://www.latex-project.org/lppl.txt
-%% and version 1.3 or later is part of all distributions of LaTeX
-%% version 2003/12/01 or later.
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008 or later.
%%
%% This work has the LPPL maintenance status "maintained".
%%
@@ -28,17 +28,17 @@
%% without such generated files.
%%
%% The list of all files belonging to the mailing package is
-%% given in the file `manifest.txt.
+%% given in the file `MANIFEST'.
%%
%% The list of derived (unpacked) files belonging to the distribution
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
-%% Copyright (C) 1999-2004 Johannes L. Braams texniek at braams.cistron.nl
+%% Copyright (C) 1999-2024 Johannes L. Braams texniek at texniek.nl
%%
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{mailing}
- [2004/02/20 v1.0b Send letters to multiple addresses]
+ [2024/07/20 v1.0c Send letters to multiple addresses]
\newcommand{\addressfile}[1]{%
\def\M@filename{#1}}
\long\def\mailingtext#1{\global\mailing@text={#1}}
diff --git a/Master/texmf-dist/tex/latex/markdown/markdown.sty b/Master/texmf-dist/tex/latex/markdown/markdown.sty
index e0e1f2f3748..22b5c77097e 100644
--- a/Master/texmf-dist/tex/latex/markdown/markdown.sty
+++ b/Master/texmf-dist/tex/latex/markdown/markdown.sty
@@ -6,7 +6,7 @@
%%
%% markdown.dtx (with options: `latex')
%%
-%% Copyright (C) 2016-2024 Vít Starý Novotný
+%% Copyright (C) 2016-2024 Vít Starý Novotný, Andrej Genčur
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3c
@@ -42,7 +42,6 @@
%%
%% The names of the source files used are shown above.
%%
-\RequirePackage{expl3}
\ExplSyntaxOn
\tl_const:Nn \c__markdown_option_layer_latex_tl { latex }
\cs_generate_variant:Nn
@@ -121,11 +120,15 @@
\c { group_end: }
\c { tl_set_rescan:Nnn } \c { l_tmpa_tl } { } { \1 }
\c { __markdown_setup:V } \c { l_tmpa_tl }
- \c { markdownReadAndConvert@markdown } { }
+ \c { exp_args:NV }
+ \c { markdownReadAndConvert@ }
+ \c { @currenvir }
}
{
\group_end:
- \markdownReadAndConvert@markdown { }
+ \exp_args:NV
+ \markdownReadAndConvert@
+ \@currenvir
}
}
{ \markdownEnd }
@@ -139,7 +142,8 @@
{ #1 }
\__markdown_setup:n
{ #1 }
- \markdownReadAndConvert@markdown *
+ \markdownReadAndConvert@
+ { markdown* }
}
{ \markdownEnd }
\msg_new:nnn
@@ -149,17 +153,17 @@
The~markdown*~LaTeX~environment~has~been~deprecated~and~will~
be~removed~in~the~next~major~version~of~the~Markdown~package.
}
+\cs_generate_variant:Nn
+ \__markdown_setup:n
+ { V }
\ExplSyntaxOff
\begingroup
\catcode`\|=0\catcode`\<=1\catcode`\>=2%
\catcode`\\=12|catcode`|{=12|catcode`|}=12%
- |gdef|markdownReadAndConvert@markdown#1<%
- |markdownReadAndConvert<\end{markdown#1}>%
- <|end<markdown#1>>>%
+ |gdef|markdownReadAndConvert@#1<%
+ |markdownReadAndConvert<\end{#1}>%
+ <|end<#1>>>%
|endgroup
-\DeclareOption*{%
- \expandafter\markdownSetup\expandafter{\CurrentOption}}%
-\ProcessOptions\relax
\ExplSyntaxOn
\cs_gset:Nn
\__markdown_load_theme:nn
@@ -203,9 +207,8 @@
{ #1 }
\AtEndOfPackage
{
- \__markdown_load_theme:nn
+ \__markdown_set_theme:n
{ #1 }
- { #2 }
}
\fi
}
@@ -247,6 +250,9 @@
\l_tmpa_tl
\l_tmpb_tl
\ExplSyntaxOff
+\DeclareOption*{%
+ \expandafter\markdownSetup\expandafter{\CurrentOption}}%
+\ProcessOptions\relax
\newcommand\markdownMakeOther{%
\count0=128\relax
\loop
diff --git a/Master/texmf-dist/tex/latex/markdown/markdownthemewitiko_dot.sty b/Master/texmf-dist/tex/latex/markdown/markdownthemewitiko_dot.sty
index a6ebbd6f1d9..f96ab1f5ccf 100644
--- a/Master/texmf-dist/tex/latex/markdown/markdownthemewitiko_dot.sty
+++ b/Master/texmf-dist/tex/latex/markdown/markdownthemewitiko_dot.sty
@@ -6,7 +6,7 @@
%%
%% markdown.dtx (with options: `themes-witiko-dot')
%%
-%% Copyright (C) 2016-2024 Vít Starý Novotný
+%% Copyright (C) 2016-2024 Vít Starý Novotný, Andrej Genčur
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3c
@@ -59,7 +59,8 @@
fi}}%
\markdownRendererImage{Graphviz image}{#1.pdf}{#1.pdf}{##2}%
}{%
- \markdown@witiko@dot@oldRendererInputFencedCodePrototype{#1}{#2}{#3}%
+ \markdown@witiko@dot@oldRendererInputFencedCodePrototype
+ {#1}{#2}{#3}%
}%
}%
\next#2 \relax}%
diff --git a/Master/texmf-dist/tex/latex/markdown/markdownthemewitiko_graphicx_http.sty b/Master/texmf-dist/tex/latex/markdown/markdownthemewitiko_graphicx_http.sty
index a962d1d8cd0..d6c2a7566a0 100644
--- a/Master/texmf-dist/tex/latex/markdown/markdownthemewitiko_graphicx_http.sty
+++ b/Master/texmf-dist/tex/latex/markdown/markdownthemewitiko_graphicx_http.sty
@@ -6,7 +6,7 @@
%%
%% markdown.dtx (with options: `themes-witiko-graphicx-http')
%%
-%% Copyright (C) 2016-2024 Vít Starý Novotný
+%% Copyright (C) 2016-2024 Vít Starý Novotný, Andrej Genčur
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3c
diff --git a/Master/texmf-dist/tex/latex/markdown/markdownthemewitiko_markdown_defaults.sty b/Master/texmf-dist/tex/latex/markdown/markdownthemewitiko_markdown_defaults.sty
index fca6079c579..981841627f8 100644
--- a/Master/texmf-dist/tex/latex/markdown/markdownthemewitiko_markdown_defaults.sty
+++ b/Master/texmf-dist/tex/latex/markdown/markdownthemewitiko_markdown_defaults.sty
@@ -6,7 +6,7 @@
%%
%% markdown.dtx (with options: `themes-witiko-markdown-defaults-latex')
%%
-%% Copyright (C) 2016-2024 Vít Starý Novotný
+%% Copyright (C) 2016-2024 Vít Starý Novotný, Andrej Genčur
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3c
@@ -414,9 +414,21 @@
}
{
\ltx@ifpackageloaded
- { listings }
- { \lstinputlisting[language=\l_tmpa_tl]{#1} }
- { \markdownRendererInputFencedCode{#1}{}{} }
+ { minted2 }
+ {
+ \catcode`\#=6\relax
+ \exp_args:NV
+ \inputminted
+ \l_tmpa_tl
+ { #1 }
+ \catcode`\#=12\relax
+ }
+ {
+ \ltx@ifpackageloaded
+ { listings }
+ { \lstinputlisting[language=\l_tmpa_tl]{#1} }
+ { \markdownRendererInputFencedCode{#1}{}{} }
+ }
}
}
}
@@ -501,8 +513,9 @@
\advance\markdownLaTeXCitationsCounter by 1\relax
\ifx\relax#4\relax
\ifx\relax#5\relax
- \ifnum\markdownLaTeXCitationsCounter>\markdownLaTeXCitationsTotal\relax
- \cite{#1#2#6}% Without prenotes and postnotes, just accumulate cites
+ \ifnum\markdownLaTeXCitationsCounter>\markdownLaTeXCitationsTotal
+ \relax
+ \cite{#1#2#6}% No prenotes/postnotes, just accumulate cites
\expandafter\expandafter\expandafter
\expandafter\expandafter\expandafter\expandafter
\@gobblethree
@@ -512,7 +525,8 @@
\cite{#1}%
\fi
\cite[#5]{#6}%
- \ifnum\markdownLaTeXCitationsCounter>\markdownLaTeXCitationsTotal\relax
+ \ifnum\markdownLaTeXCitationsCounter>\markdownLaTeXCitationsTotal
+ \relax
\else
\expandafter\expandafter\expandafter
\expandafter\expandafter\expandafter\expandafter
@@ -539,7 +553,8 @@
\space % Insert a space before the prenote in later citations
\fi
#4~\expandafter\cite\ifx\relax#5\relax{#6}\else[#5]{#6}\fi
- \ifnum\markdownLaTeXCitationsCounter>\markdownLaTeXCitationsTotal\relax
+ \ifnum\markdownLaTeXCitationsCounter>\markdownLaTeXCitationsTotal
+ \relax
\else
\expandafter\expandafter\expandafter
\expandafter\expandafter\expandafter\expandafter
@@ -558,8 +573,9 @@
\advance\markdownLaTeXCitationsCounter by 1\relax
\ifx\relax#3\relax
\ifx\relax#4\relax
- \ifnum\markdownLaTeXCitationsCounter>\markdownLaTeXCitationsTotal\relax
- \citep{#1,#5}% Without prenotes and postnotes, just accumulate cites
+ \ifnum\markdownLaTeXCitationsCounter>\markdownLaTeXCitationsTotal
+ \relax
+ \citep{#1,#5}% No prenotes/postnotes, just accumulate cites
\expandafter\expandafter\expandafter
\expandafter\expandafter\expandafter\expandafter
\@gobbletwo
@@ -569,7 +585,8 @@
\citep{#1}%
\fi
\citep[][#4]{#5}%
- \ifnum\markdownLaTeXCitationsCounter>\markdownLaTeXCitationsTotal\relax
+ \ifnum\markdownLaTeXCitationsCounter>\markdownLaTeXCitationsTotal
+ \relax
\else
\expandafter\expandafter\expandafter
\expandafter\expandafter\expandafter\expandafter
@@ -589,7 +606,8 @@
\citep{#1}%
\fi
\citep[#3][#4]{#5}%
- \ifnum\markdownLaTeXCitationsCounter>\markdownLaTeXCitationsTotal\relax
+ \ifnum\markdownLaTeXCitationsCounter>\markdownLaTeXCitationsTotal
+ \relax
\else
\expandafter\expandafter\expandafter
\expandafter\expandafter\expandafter\expandafter
@@ -604,8 +622,9 @@
\advance\markdownLaTeXCitationsCounter by 1\relax
\ifx\relax#3\relax
\ifx\relax#4\relax
- \ifnum\markdownLaTeXCitationsCounter>\markdownLaTeXCitationsTotal\relax
- \citet{#1,#5}% Without prenotes and postnotes, just accumulate cites
+ \ifnum\markdownLaTeXCitationsCounter>\markdownLaTeXCitationsTotal
+ \relax
+ \citet{#1,#5}% No prenotes/postnotes, just accumulate cites
\expandafter\expandafter\expandafter
\expandafter\expandafter\expandafter\expandafter
\@gobbletwo
@@ -615,10 +634,13 @@
\citet{#1}%
\fi
, \citet[#3][#4]{#5}%
- \ifnum\markdownLaTeXCitationsCounter<\markdownLaTeXCitationsTotal\relax
+ \ifnum\markdownLaTeXCitationsCounter<\markdownLaTeXCitationsTotal
+ \relax
,
\else
- \ifnum\markdownLaTeXCitationsCounter=\markdownLaTeXCitationsTotal\relax
+ \ifnum
+ \markdownLaTeXCitationsCounter=\markdownLaTeXCitationsTotal
+ \relax
,
\fi
\fi
@@ -637,10 +659,13 @@
\citet{#1}%
\fi
, \citet[#3][#4]{#5}%
- \ifnum\markdownLaTeXCitationsCounter<\markdownLaTeXCitationsTotal\relax
+ \ifnum\markdownLaTeXCitationsCounter<\markdownLaTeXCitationsTotal
+ \relax
,
\else
- \ifnum\markdownLaTeXCitationsCounter=\markdownLaTeXCitationsTotal\relax
+ \ifnum
+ \markdownLaTeXCitationsCounter=\markdownLaTeXCitationsTotal
+ \relax
,
\fi
\fi
@@ -654,13 +679,15 @@
\def\markdownLaTeXBibLaTeXCitations#1#2#3#4#5{%
\advance\markdownLaTeXCitationsCounter by 1\relax
- \ifnum\markdownLaTeXCitationsCounter>\markdownLaTeXCitationsTotal\relax
+ \ifnum\markdownLaTeXCitationsCounter>\markdownLaTeXCitationsTotal
+ \relax
\autocites#1[#3][#4]{#5}%
\expandafter\@gobbletwo
\fi\markdownLaTeXBibLaTeXCitations{#1[#3][#4]{#5}}}
\def\markdownLaTeXBibLaTeXTextCitations#1#2#3#4#5{%
\advance\markdownLaTeXCitationsCounter by 1\relax
- \ifnum\markdownLaTeXCitationsCounter>\markdownLaTeXCitationsTotal\relax
+ \ifnum\markdownLaTeXCitationsCounter>\markdownLaTeXCitationsTotal
+ \relax
\textcites#1[#3][#4]{#5}%
\expandafter\@gobbletwo
\fi\markdownLaTeXBibLaTeXTextCitations{#1[#3][#4]{#5}}}
@@ -737,7 +764,8 @@
{
\markdownLaTeXRendererAutolink { #2 } { #3 }
}{
- \markdownLaTeXRendererDirectOrIndirectLink { #1 } { #2 } { #3 } { #4 }
+ \markdownLaTeXRendererDirectOrIndirectLink
+ { #1 } { #2 } { #3 } { #4 }
}
}
\def\markdownLaTeXRendererAutolink#1#2{%
@@ -939,13 +967,13 @@
{
{ latex }
{
- \__markdown_plain_tex_default_input_raw_inline_renderer_prototype:nn
+ \__markdown_plain_tex_default_input_raw_inline:nn
{ #1 }
{ tex }
}
}
{
- \__markdown_plain_tex_default_input_raw_inline_renderer_prototype:nn
+ \__markdown_plain_tex_default_input_raw_inline:nn
{ #1 }
{ #2 }
}
@@ -958,13 +986,13 @@
{
{ latex }
{
- \__markdown_plain_tex_default_input_raw_block_renderer_prototype:nn
+ \__markdown_plain_tex_default_input_raw_block:nn
{ #1 }
{ tex }
}
}
{
- \__markdown_plain_tex_default_input_raw_block_renderer_prototype:nn
+ \__markdown_plain_tex_default_input_raw_block:nn
{ #1 }
{ #2 }
}
diff --git a/Master/texmf-dist/tex/latex/mathastext/mathastext.sty b/Master/texmf-dist/tex/latex/mathastext/mathastext.sty
index 2bddf362229..4ff41f668ac 100644
--- a/Master/texmf-dist/tex/latex/mathastext/mathastext.sty
+++ b/Master/texmf-dist/tex/latex/mathastext/mathastext.sty
@@ -23,24 +23,21 @@
%%----------------------------------------------------------------
%% Package: mathastext
%% Info: Use the text font in math mode (JFB)
-%% Version: 1.3zb 2023/12/29
+%% Version: 1.4b 2024/07/27
%% License: LPPL 1.3c (http://www.latex-project.org/lppl/lppl-1-3c.txt)
-%% Copyright (C) 2011-2019, 2022, 2023 Jean-Francois Burnol
-%% <jfbu at free dot fr>
+%% Copyright (C) 2011-2019, 2022-2024 Jean-Francois Burnol
+%% <jfbu at free dot fr>
%% Examples of use of mathastext:
%% http://jf.burnol.free.fr/mathastext.html
%% http://jf.burnol.free.fr/showcase.html
%%----------------------------------------------------------------
-\NeedsTeXFormat{LaTeX2e}
+\NeedsTeXFormat{LaTeX2e}[2020/02/02]
\ProvidesPackage {mathastext}
- [2023/12/29 v1.3zb Use the text font in math mode (JFB)]
+ [2024/07/27 v1.4b Use the text font in math mode (JFB)]
\def\mst@infoline#1{\immediate\write\m@ne
{(\space\space\space mathastext:\space\space\space) #1}}
\immediate\write\m@ne{}
\PackageInfo{mathastext}{Starting the math mode configuration\@gobble}
-\newif\ifmst@robust@obsessed@LaTeX@era
-\@ifl@t@r\fmtversion{2019/10/01}{\mst@robust@obsessed@LaTeX@eratrue}{}
-\edef\mst@robustifyingspace{\ifmst@robust@obsessed@LaTeX@era\space\fi}
\let\mst@Umathcharnumdef\Umathcharnumdef
\let\mst@Umathcodenum \Umathcodenum
\let\mst@Umathcode \Umathcode
@@ -75,20 +72,39 @@
\newif\ifmst@XeOrLua
\ifmst@LuaTeX\mst@XeOrLuatrue\fi
\ifmst@XeTeX \mst@XeOrLuatrue\fi
+\ifmst@XeTeX
+ \def\mst@OnlyIfNotMathActive#1{%
+ \ifnum\mst@Umathcodenum`#1="1FFFFF
+ \expandafter\@gobble
+ \else\expandafter\@firstofone
+ \fi
+ }
+\else\ifmst@LuaTeX
+ \def\mst@OnlyIfNotMathActive#1{%
+ \ifnum\mst@Umathcodenum`#1="1000000
+ \expandafter\@gobble
+ \else\expandafter\@firstofone
+ \fi
+ }
+\else
+ \def\mst@OnlyIfNotMathActive#1{%
+ \ifnum\mathcode`#1="8000
+ \expandafter\@gobble
+ \else\expandafter\@firstofone
+ \fi
+ }
+\fi\fi
\def\mst@oti{OT1}
-\def\mst@eui{EU1}\def\mst@euii{EU2}\def\mst@tu{TU}
-\def\mst@OneifUniEnc {%
- \ifx \mst@tmp@enc\mst@tu 1\else
- \ifx \mst@tmp@enc\mst@eui 1\else
- \ifx \mst@tmp@enc\mst@euii 1\else 0\fi\fi\fi }
+\def\mst@tu{TU}
+\def\mst@OneifUniEnc{\ifx\mst@tmp@enc\mst@tu1\else0\fi}
\newif\ifmst@goahead
\newif\ifmst@abort
\def\mst@enc{\encodingdefault}
\def\mst@fam{\familydefault}
\def\mst@ser{\seriesdefault}
- \def\mst@opsh{\shapedefault} %% will be default shape for operator names
+ \def\mst@opsh{\shapedefault}
\def\mst@bold{\bfdefault}
- \def\mst@ltsh{\shapedefault} %% will be default shape for letters
+ \def\mst@ltsh{\shapedefault}
\edef\mst@greekfont{\familydefault}
\newif\ifmst@italic
\newif\ifmst@frenchmath
@@ -131,25 +147,26 @@
\newif\ifmst@noexclam
\DeclareOption{noexclam}{\mst@noexclamtrue}
\newif\ifmst@asterisk
- \DeclareOption{noasterisk}{\PackageWarningNoLine{mathastext}
- {option `noasterisk\string' is deprecated.^^J\space\space\space
- Check the documentation}}
\DeclareOption{asterisk}{\mst@asterisktrue}
\newif\ifmst@nospecials
\DeclareOption{nospecials}{\mst@nospecialstrue}
-\newif\ifmst@basic % 1.3 to avoid unnecessary patch of amsmath \newmcodes@
+\newif\ifmst@basic
\DeclareOption{basic}{\mst@basictrue
\ExecuteOptions{noparenthesis,nopunctuation,%
noplusnominus,noequal,noexclam,nospecials,nolessnomore}}
\newif\ifmst@nohbar
\DeclareOption{nohbar}{\mst@nohbartrue}
+\newif\ifmst@activedigits
+ \DeclareOption{activedigits}{\mst@activedigitstrue}
\newif\ifmst@nodigits
\DeclareOption{nodigits}{\mst@nodigitstrue}
\newif\ifmst@defaultimath
\DeclareOption{defaultimath}{\mst@defaultimathtrue}
+\newif\ifmst@noletters
+ \DeclareOption{noletters}{\mst@noletterstrue\ExecuteOptions{nohbar,defaultimath}}
\newif\ifmst@mathaccents
\DeclareOption{mathaccents}{\mst@mathaccentstrue}
-\newif\ifmst@unimathaccents % 1.3u
+\newif\ifmst@unimathaccents
\DeclareOption{unimathaccents}{\mst@mathaccentstrue\mst@unimathaccentstrue}
\newif\ifmst@needsymbol
\newif\ifmst@symboldelimiters
@@ -157,7 +174,7 @@
\newif\ifmst@symboldigits
\DeclareOption{symboldigits}{\mst@needsymboltrue\mst@symboldigitstrue}
\newif\ifmst@symbolgreek
-\newif\ifmst@customgreek %% new with 1.3d
+\newif\ifmst@customgreek
\DeclareOption{symbolgreek}{\mst@needsymboltrue\mst@symbolgreektrue
\mst@customgreektrue }
\newif\ifmst@symbolre
@@ -214,6 +231,13 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\DeclareOption{fouriervec}{\mst@fouriervectrue}
\newif\ifmst@subdued
\DeclareOption{subdued}{\mst@subduedtrue}
+\newif\ifmst@everymath
+ \DeclareOption{everymath}{\mst@everymathtrue
+\PackageWarningNoLine{mathastext}{%
+ `everymath\string' will be removed at next major release.\MessageBreak
+ Please report to the author the circumstances\MessageBreak
+ which mandated its use in the present document}%
+}
\def\mst@unicodeminus {2013}
\def\mst@checkoption #1unicodeminus#2\mst@#3\mst@@
{\ifx\\#3\\\PackageWarningNoLine{mathastext}
@@ -230,7 +254,20 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\DeclareMathAccent{#1}}
\def\mst@normalversionname{normal}%
\def\mst@boldversionname{bold}%
-\newmuskip\mst@exists@muskip %% v 1.15e
+\def\mst@OnlyIfNotSubdued#1{%
+ \ifmst@subdued
+ \ifx\math@version\mst@normalversionname
+ \else
+ \ifx\math@version\mst@boldversionname
+ \else
+ #1%
+ \fi
+ \fi
+ \else
+ #1%
+ \fi
+}%
+\newmuskip\mst@exists@muskip
\newmuskip\mst@forall@muskip
\def\mst@exists@skip{1mu}
\def\mst@forall@skip{.6667mu}
@@ -258,25 +295,37 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\newcommand*\MTexistsdoesskip {\AtBeginDocument {\MTexistsdoesskip }}
\newcommand*\MTnormalforall {\AtBeginDocument {\MTnormalforall }}
\newcommand*\MTforalldoesskip {\AtBeginDocument {\MTforalldoesskip }}
-\newmuskip\mst@prime@muskip %% v 1.2
+\newmuskip\mst@prime@muskip
\def\mst@prime@skip{.5mu}
\ifmst@italic\ifmst@frenchmath\else\def\mst@prime@skip{0mu}\fi\fi
+\def\mst@tmp#1{%
+\def\mst@mathactivateprime{%
+ \ifnum\catcode`#1=\active
+ \@ifundefined{active@char#1}
+ {}
+ {\mst@do@activecase #1{}{\mst@active@math@prime}}%
+ \else
+ \mst@@mathactivate #1{}{\mst@active@math@prime}%
+ \fi
+}%
+\def\mst@undo@mathactivateprime{\mst@mathdeactivate#1{"8000}}%
+}\expandafter\mst@tmp\string'
\def\mst@active@math@prime{\sp\bgroup\mskip\mst@prime@muskip\prim@s}
-{\catcode`\'=12
-\gdef\mst@@modifyprime{\mst@mathactivate'{}\mst@active@math@prime}}
-\newcommand*\MTnormalprime {\let\mst@modifyprime\@empty }
-\newcommand*\MTprimedoesskip {\let\mst@modifyprime\mst@@modifyprime}
-\ifmst@subdued
- \MTnormalprime
+\ifmst@everymath
+ \newcommand*\MTnormalprime {\let\mst@modifyprime\@empty}
+ \newcommand*\MTprimedoesskip{\let\mst@modifyprime\mst@mathactivateprime}%
+ \AtBeginDocument{%
+ \everymath\expandafter
+ {\the\everymath \mst@modifyprime \MTnormalprime}%
+ \everydisplay\expandafter
+ {\the\everydisplay \mst@modifyprime \MTnormalprime}%
+ \MTprimedoesskip
+ }
\else
- \MTprimedoesskip
+ \newcommand*\MTnormalprime {\mst@undo@mathactivateprime}
+ \newcommand*\MTprimedoesskip{\mst@mathactivateprime}
+ \AtBeginDocument{\MTprimedoesskip}
\fi
-\AtBeginDocument{%
- \everymath\expandafter
- {\the\everymath \mst@modifyprime \MTnormalprime}%
- \everydisplay\expandafter
- {\the\everydisplay \mst@modifyprime \MTnormalprime}%
-}
\newcommand*\MTexistsskip[1]{\edef\mst@exists@skip{#1}%
\mst@exists@muskip\mst@exists@skip\relax}
\newcommand*\MTforallskip[1]{\edef\mst@forall@skip{#1}%
@@ -290,47 +339,131 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\let\mathastextforallskip\MTforallskip
\let\mathastextprimeskip\MTprimeskip
\ifmst@noparen\else
-\AtBeginDocument{%
- \@ifundefined{resetMathstrut@}{% nothing to do, no amsmath
- }{% amsmath loaded, and possibly patched by things such as lualatex-math
- \let\mst@savedresetMathstrut@\resetMathstrut@
- \ifx\mst@the\the % means that \MTnonlettersobeymathxx was used in preamble
- \let\mst@the\@gobble\MTnonlettersobeymathxx
- \fi}}
+\AtEndOfPackage{%
+ \AtBeginDocument{%
+ \@ifundefined{resetMathstrut@}
+ {}%
+ {%
+ \let\mst@savedresetMathstrut@\resetMathstrut@
+ \ifx\mst@the\the
+ \let\mst@the\@gobble
+ \MTnonlettersobeymathxx
+ \fi
+ }%
+ }%
+}%
\fi
-\newtoks\mst@do@nonletters
-\newtoks\mst@do@easynonletters
-\newtoks\mst@do@az
-\newtoks\mst@do@AZ
-\let\mst@the\@gobble
-\newcommand*\MTnonlettersdonotobeymathxx{%
- \ifx\mst@the\@gobble
+\def\mst@magic@v #1#2#3#4#5{#1#3#4}
+\def\mst@magic@vi #1#2#3#4#5#6{#1#2#4#5}
+\def\mst@fork{\ifmmode\mst@magic@v\fi\@thirdofthree}
+\def\mst@safefork{\ifmmode\if@safe@actives\else\mst@magic@vi\fi\fi\@thirdofthree}
+\def\mst@do@activecase#1#2#3{%
+ \ifx\relax #2\relax\mathcode`#1=`#1\relax\else\mathcode`#1=#3\relax\fi
+ \ifmst@everymath\else\@ifundefined{mst@hackedshorthand@#1}{\fi
+ \expandafter\let\csname mst@orig@user@active#1\expandafter\endcsname
+ \csname user@active#1\endcsname
+ \expandafter\let\csname mst@orig@normal@char#1\expandafter\endcsname
+ \csname normal@char#1\endcsname
+ \ifmst@everymath\else}{}\fi
+ \def\mst@tmp##1##2{\def##1{\mst@fork{#2}{#3}##2}}%
+ \expandafter\mst@tmp\csname user@active#1\expandafter\endcsname
+ \csname mst@orig@user@active#1\endcsname
+ \def\mst@tmp##1##2{\def##1{\mst@safefork{#2}{#3}##2}}%
+ \expandafter\mst@tmp\csname normal@char#1\expandafter\endcsname
+ \csname mst@orig@normal@char#1\endcsname
+ \ifmst@everymath
\else
- \@ifundefined{mst@savedresetMathstrut@}{}{%
- \PackageInfo{mathastext}{restoring for this group or environment
- the original\MessageBreak
- amsmath \protect\resetMathstrut@}%
- \let\resetMathstrut@\mst@savedresetMathstrut@}%
+ \expandafter\let\csname mst@hackedshorthand@#1\endcsname\@empty
\fi
- \let\mst@the\@gobble
-}%
-\def\mst@OnlyIfNotSubdued#1{%
- \ifmst@subdued
- \ifx\math@version\mst@normalversionname
- \else
- \ifx\math@version\mst@boldversionname
- \else
- #1%
- \fi
- \fi
+}
+\begingroup
+ \catcode`\~=\active
+ \def\x{%
+\endgroup
+\ifmst@everymath
+ \def\mst@@mathactivate##1##2##3{%
+ \begingroup
+ \lccode`~=`##1
+ \lccode`##1=`##1
+ \lowercase{\endgroup
+ \mathcode`##1="8000
+ \def~{##2##3}%
+ }%
+ }%
+\else
+ \def\mst@@mathactivate##1##2##3{%
+ \begingroup
+ \lccode`~=`##1
+ \lccode`##1=`##1
+ \lowercase{\endgroup
+ \mathcode`##1="8000
+ \@ifundefined{mst@prioractivemeaning@##1}
+ {\expandafter\let
+ \csname mst@prioractivemeaning@##1\endcsname ~}
+ {}%
+ \def~{\ifmmode##2##3\else##1\fi}%
+ }%
+ }%
+\fi
+}\x
+\def\mst@mathactivate#1#2#3{%
+ \ifnum\catcode`#1=\active
+ \@ifundefined{active@char#1}{}{\mst@do@activecase #1{#2}{#3}}%
\else
- #1%
+ \mst@OnlyIfNotMathActive{#1}{\mst@@mathactivate #1{#2}{#3}}%
\fi
+}
+\ifmst@everymath
+\else
+\def\mst@mathdeactivate#1#2{%
+ \mathcode`#1=#2\relax
+ \@ifundefined{active@char#1}
+ {\@ifundefined{mst@prioractivemeaning@#1}
+ {}%
+ {\mst@restoreactivemeaning#1%
+ \expandafter\let\csname mst@prioractivemeaning@#1\endcsname\relax}%
+ }
+ {\@ifundefined{mst@hackedshorthand@#1}
+ {}
+ {\expandafter\let\csname user@active#1\expandafter\endcsname
+ \csname mst@orig@user@active#1\endcsname
+ \expandafter\let\csname normal@char#1\expandafter\endcsname
+ \csname mst@orig@normal@char#1\endcsname
+ \expandafter\let\csname mst@hackedshorthand@#1\endcsname\relax
+ }%
+ }%
}%
-\def\mst@nonlettersobeymathxx{%
- \ifx\mst@the\the
- \else
- \@ifundefined{mst@savedresetMathstrut@}{}{%
+\def\mst@restoreactivemeaning#1{%
+ \begingroup
+ \lccode`~=`#1
+ \lccode`#1=`#1
+ \lowercase{\endgroup
+ \expandafter\let\expandafter~\csname mst@prioractivemeaning@#1\endcsname
+ }%
+}
+\fi
+\newtoks\mst@do@nonletters
+\ifmst@everymath
+\else
+ \newtoks\mst@undo@nonletters
+\fi
+\ifmst@everymath
+ \def\mst@addtodo@nonletters#1#2#3{\mst@do@nonletters\expandafter
+ {\the\mst@do@nonletters\mst@mathactivate#1#2#3}%
+ }%
+\else
+ \def\mst@addtodo@nonletters#1#2#3{\mst@do@nonletters\expandafter
+ {\the\mst@do@nonletters\mst@mathactivate#1#2#3}%
+ \edef\mst@tmp{\noexpand\mst@mathdeactivate#1{\the\mathcode`#1}}%
+ \mst@undo@nonletters\expandafter\expandafter\expandafter
+ {\expandafter\mst@tmp\the\mst@undo@nonletters}%
+ }%
+\fi
+\let\mst@the\@gobble
+\def\mst@redefine@resetMathstrut@{%
+ \@ifundefined{mst@savedresetMathstrut@}
+ {}
+ {%
\ifmst@symboldelimiters
\def\resetMathstrut@{%
\setbox\z@\hbox{\the\textfont\symmtpsymbol\char40
@@ -343,117 +476,117 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\the\textfont\symoperators\char40}%
\ht\Mathstrutbox@\ht\z@ \dp\Mathstrutbox@\dp\z@}%
\fi
- \PackageInfo{mathastext}{\string\resetMathstrut@\space
- from amsmath replaced for this\MessageBreak group or environment}}%
- \fi
- \let\mst@the\the
+ \PackageInfo{mathastext}{\string\resetMathstrut@\space
+ from amsmath replaced for this\MessageBreak group or environment}%
+ }%
}%
-\newcommand*\MTnonlettersobeymathxx
- {\mst@OnlyIfNotSubdued\mst@nonlettersobeymathxx}%
-\newcommand*\MTeasynonlettersdonotobeymathxx{\let\mst@theeasy\@gobble}%
-\def\mst@easynonlettersobeymathxx{\let\mst@theeasy\the}%
-\newcommand*\MTeasynonlettersobeymathxx
- {\mst@OnlyIfNotSubdued\mst@easynonlettersobeymathxx}%
-\MTeasynonlettersobeymathxx % no-op here if subdued mode
-\def\mst@mathactiveletters{\let\mst@thef\the \let\mst@theF\the}%
-\newcommand*\MTmathactiveletters
- {\mst@OnlyIfNotSubdued\mst@mathactiveletters}%
-\MTmathactiveletters % no-op here if subdued mode
-\def\mst@mathactiveLetters{\let\mst@theF\the}%
-\newcommand*\MTmathactiveLetters
- {\mst@OnlyIfNotSubdued\mst@mathactiveLetters}%
-\newcommand*\MTmathstandardletters{\let\mst@thef\@gobble \let\mst@theF\@gobble}%
-\newcommand*\MTicinmath{%
- \MTmathactiveletters
- \def\mst@itcorr{\ifnum\fam=\m@ne\/\fi}%
- \let\mst@ITcorr\mst@itcorr}
-\newcommand*\MTICinmath{%
- \MTmathactiveLetters
- \def\mst@ITcorr{\ifnum\fam=\m@ne\/\fi}}
-\newcommand*\MTnoicinmath{\let\mst@itcorr\@empty\let\mst@ITcorr\@empty}
-\newcommand*\MTnoICinmath{\let\mst@ITcorr\@empty}
-\newcommand*\MTicalsoinmathxx{%
- \ifx\mst@itcorr\@empty\else\def\mst@itcorr{\/}\fi
- \ifx\mst@ITcorr\@empty\else\def\mst@ITcorr{\/}\fi}
-\newcommand*\MTsetmathskips[3]{%
- \@namedef{mst@before#1}{\ifnum\fam=\m@ne\mskip#2\relax\fi }%
- \@namedef{mst@after#1}{\ifnum\fam=\m@ne\mskip#3\relax\fi }%
-}
-\newcommand*\MTunsetmathskips[1]{%
- \@namedef{mst@before#1}{}%
- \@namedef{mst@after#1}{}%
-}
-\def\mst@magic@v #1#2#3#4#5{#1#3#4}
-\def\mst@magic@vi #1#2#3#4#5#6{#1#2#4#5}
-\def\mst@fork{\ifmmode\mst@magic@v\fi\@thirdofthree}
-\def\mst@safefork{\ifmmode\if@safe@actives\else\mst@magic@vi\fi\fi\@thirdofthree}
-\def\mst@do@activecase#1#2#3{% #1 is a category 11 or 12 character token
- \@ifundefined{active@char#1}{}{%
- \ifcat #1a\mathcode`#1=#2\else
- \ifx\relax #2\relax\mathcode`#1=`#1 \else\mathcode`#1=#3\fi\fi
- \expandafter\expandafter\expandafter\let\expandafter\expandafter
- \csname mst@orig@user@active#1\endcsname
- \csname user@active#1\endcsname
- \expandafter\expandafter\expandafter\let\expandafter\expandafter
- \csname mst@orig@normal@char#1\endcsname
- \csname normal@char#1\endcsname
- \ifcat #1a%
- \expandafter\edef\csname user@active#1\endcsname
- {\noexpand\mst@fork {{#2\noexpand#3}}{}\expandafter
- \noexpand\csname mst@orig@user@active#1\endcsname
- }%
- \expandafter\edef\csname normal@char#1\endcsname
- {\noexpand\mst@safefork {{#2\noexpand#3}}{}\expandafter
- \noexpand\csname mst@orig@normal@char#1\endcsname
- }%
+\def\mst@restore@resetMathstrut@{%
+ \@ifundefined{mst@savedresetMathstrut@}{}{%
+ \PackageInfo{mathastext}{restoring for this group or environment
+ the original\MessageBreak
+ amsmath \protect\resetMathstrut@}%
+ \let\resetMathstrut@\mst@savedresetMathstrut@}%
+}%
+\ifmst@everymath
+ \newcommand*\MTnonlettersobeymathxx{%
+ \mst@OnlyIfNotSubdued{%
+ \ifx\mst@the\the
+ \else
+ \mst@redefine@resetMathstrut@
+ \fi
+ \let\mst@the\the
+ }%
+ }%
+ \newcommand*\MTnonlettersdonotobeymathxx{%
+ \ifx\mst@the\@gobble
\else
- \expandafter\edef\csname user@active#1\endcsname
- {\noexpand\mst@fork {#2}\noexpand#3\expandafter
- \noexpand\csname mst@orig@user@active#1\endcsname
- }%
- \expandafter\edef\csname normal@char#1\endcsname
- {\noexpand\mst@safefork {#2}\noexpand#3\expandafter
- \noexpand\csname mst@orig@normal@char#1\endcsname
- }%
- \fi}}
-\begingroup
- \catcode`\~=\active
- \def\x{\endgroup
- \def\mst@mathactivate##1##2##3{% ##1 guaranteed of cat 11 or 12
- \begingroup
- \lccode`~=`##1
- \lccode`##1=`##1
- \lowercase{\endgroup
- \ifnum\catcode`##1=\active
- \mst@do@activecase ##1{##2}##3%
- % careful as ##2 is empty in the asterisk and
- % prime case!
- \else
- \mathcode`##1="8000
- % version 1.3 adds the possibility of extra skips around letters,
- % (only if non catcode active at the time of use).
- \ifcat##1a\edef~{% extra braces for a^b for example
- {\expandafter\noexpand\csname mst@before##1\endcsname
- ##2\noexpand##3%
- \expandafter\noexpand\csname mst@after##1\endcsname}}%
- \else\def~{##2##3}\fi
- \fi}}}
-\x
-\def\mst@addtodo@nonletters#1#2#3{%
- % #1 will be of cat 11 or 12.
- % #2 is empty for asterisk and right quote
- \mst@do@nonletters\expandafter
- {\the\mst@do@nonletters \mst@mathactivate#1{#2}#3}%
-}
-\def\mst@addtodo@easynonletters#1#2{% #1 is a one char control sequence
- \mst@do@easynonletters\expandafter{\the\mst@do@easynonletters\mathcode`#1=#2}%
-}
-\def\mst@addtodo@az#1#2{%
- \mst@do@az\expandafter{\the\mst@do@az\mst@mathactivate#1#2\mst@itcorr}
-}
-\def\mst@addtodo@AZ#1#2{%
- \mst@do@AZ\expandafter{\the\mst@do@AZ\mst@mathactivate#1#2\mst@ITcorr}%
-}
+ \mst@restore@resetMathstrut@
+ \fi
+ \let\mst@the\@gobble
+ }%
+\else
+ \newcommand*\MTnonlettersobeymathxx{%
+ \mst@OnlyIfNotSubdued{%
+ \AtBeginDocument{\MTnonlettersobeymathxx}%
+ }%
+ }%
+ \newcommand*\MTnonlettersdonotobeymathxx{%
+ \AtBeginDocument{\MTnonlettersdonotobeymathxx}%
+ }%
+ \AtBeginDocument{%
+ \renewcommand*\MTnonlettersobeymathxx{%
+ \mst@OnlyIfNotSubdued{%
+ \the\mst@do@nonletters
+ \ifx\mst@the\the
+ \else
+ \mst@redefine@resetMathstrut@
+ \fi
+ \let\mst@the\the
+ }%
+ }%
+ \renewcommand*\MTnonlettersdonotobeymathxx{%
+ \the\mst@undo@nonletters
+ \ifx\mst@the\@gobble
+ \else
+ \mst@restore@resetMathstrut@
+ \fi
+ \let\mst@the\@gobble
+ }%
+ }%
+\fi
+\newtoks\mst@do@easynonletters
+\ifmst@everymath
+ \newcommand*\MTeasynonlettersdonotobeymathxx{\let\mst@theeasy\@gobble}%
+ \newcommand*\MTeasynonlettersobeymathxx{%
+ \mst@OnlyIfNotSubdued{\let\mst@theeasy\the}%
+ }%
+ \MTeasynonlettersobeymathxx
+\else
+ \newtoks\mst@undo@easynonletters
+ \newcommand*\MTeasynonlettersdonotobeymathxx{\the\mst@undo@easynonletters}
+ \newcommand*\MTeasynonlettersobeymathxx{%
+ \mst@OnlyIfNotSubdued{\the\mst@do@easynonletters}%
+ }%
+ \AtEndOfPackage{\MTeasynonlettersobeymathxx}%
+\fi
+\ifmst@everymath
+ \def\mst@addtodo@easynonletters#1#2{%
+ \mst@do@easynonletters\expandafter{%
+ \the\mst@do@easynonletters
+ \mst@OnlyIfNotMathActive{#1}{\mathcode`#1=#2}%
+ }%
+ }%
+ \def\mst@addtodo@easynonletters@U#1#2{%
+ \mst@do@easynonletters\expandafter{%
+ \the\mst@do@easynonletters
+ \mst@OnlyIfNotMathActive{#1}{\mst@Umathcodenum`#1=#2}%
+ }%
+ }%
+\else
+ \def\mst@addtodo@easynonletters#1#2{%
+ \mst@do@easynonletters\expandafter
+ {\the\mst@do@easynonletters
+ \mst@OnlyIfNotMathActive{#1}{\mathcode`#1=#2}}%
+ \def\mst@tmp##1\relax{%
+ \def\mst@tmp{\mst@OnlyIfNotMathActive{#1}{\mathcode`#1=##1\relax}}%
+ }%
+ \expandafter\mst@tmp\the\mathcode`#1\relax
+ \mst@undo@easynonletters\expandafter\expandafter\expandafter
+ {\expandafter\mst@tmp\the\mst@undo@easynonletters}%
+ }%
+ \def\mst@addtodo@easynonletters@U#1#2{%
+ \mst@do@easynonletters\expandafter{%
+ \the\mst@do@easynonletters
+ \mst@OnlyIfNotMathActive{#1}{\mst@Umathcodenum`#1=#2}%
+ }%
+ \def\mst@tmp##1\relax{%
+ \def\mst@tmp{\mst@OnlyIfNotMathActive{#1}{\mst@Umathcodenum`#1=##1\relax}}%
+ }%
+ \expandafter\mst@tmp\the\mst@Umathcodenum`#1\relax
+ \mst@undo@easynonletters\expandafter\expandafter\expandafter
+ {\expandafter\mst@tmp\the\mst@undo@easynonletters}%
+ }%
+\fi
\ifmst@basic
\else
\ifmst@XeOrLua
@@ -481,7 +614,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
}%
\let\mst@originalnewmcodes@\newmcodes@
\fi
- }% end of AtBeginDocument
+ }%
\else
\AtBeginDocument {%
\ifx\newmcodes@\@undefined\else
@@ -501,9 +634,9 @@ defaultbf,defaultit,defaultsf,defaulttt}}
}%
\let\mst@originalnewmcodes@\newmcodes@
\fi
- }% end of second AtBeginDocument
- \fi % mst@XeOrLua
-\fi % mst@basic
+ }%
+ \fi
+\fi
\newcommand*\MTresetnewmcodes{\ifx\mst@originalnewmcodes@\undefined\else
\let\newmcodes@\mst@originalnewmcodes@\fi}
\newcommand*\MTcustomizenewmcodes{\ifx\mst@originalnewmcodes@\undefined\else
@@ -515,35 +648,42 @@ defaultbf,defaultit,defaultsf,defaulttt}}
{\def\operator@font{\mathgroup\symmtoperatorfont}}
\MTmathoperatorsobeymathxx
\DeclareSymbolFont{mtletterfont}{\mst@enc}{\mst@fam}{\mst@ser}{\mst@ltsh}
-\begingroup
-\catcode`N 12
-\catcode`O 12
-\catcode`D 12
-\catcode`E 12
-\lowercase{\gdef\mst@fixmathfonts@ #1=NODE;#2#3\relax #4\@empty #5}%
- {\ifx#2\empty\else\font\mst@mathfont=#1=base;#2#3\relax#5=\mst@mathfont\fi}
-\lowercase{\gdef\MTfixmathfonts
-{\expandafter\mst@fixmathfonts@
- \fontname\textfont\symmtoperatorfont\relax\relax=NODE;\empty\relax\@empty
- {\textfont\symmtoperatorfont}%
- \expandafter\mst@fixmathfonts@
- \fontname\scriptfont\symmtoperatorfont\relax\relax=NODE;\empty\relax\@empty
- {\scriptfont\symmtoperatorfont}%
- \expandafter\mst@fixmathfonts@
- \fontname\scriptscriptfont\symmtoperatorfont\relax\relax=NODE;\empty\relax\@empty
- {\scriptscriptfont\symmtoperatorfont}%
- \expandafter\mst@fixmathfonts@
- \fontname\textfont\symmtletterfont\relax\relax=NODE;\empty\relax\@empty
- {\textfont\symmtletterfont}%
- \expandafter\mst@fixmathfonts@
- \fontname\scriptfont\symmtletterfont\relax\relax=NODE;\empty\relax\@empty
- {\scriptfont\symmtletterfont}%
- \expandafter\mst@fixmathfonts@
- \fontname\scriptscriptfont\symmtletterfont\relax\relax=NODE;\empty\relax\@empty
- {\scriptscriptfont\symmtletterfont}%
- }%
+\def\mst@fixmathfonts@#1.#2.#3.{%
+\def\mst@fixmathfonts@##1##2#1=##3;##4##5\relax##6\@empty##7{%
+ \ifx##3\empty\else
+ \if"##1%
+ \font\mst@mathfont=##1##2#1=base;##4##5\relax
+ \else
+ \mst@arrrrgh@fixmathfonts##1##2#1=base;##4##5#2\empty#3\relax
+ \fi
+ ##7=\mst@mathfont
+ \fi
}%
-\endgroup
+\def\mst@arrrrgh@fixmathfonts##1#2##2##3#3##4\relax{%
+ \ifx##2\empty
+ \font\mst@mathfont="##1"\relax
+ \else
+ \font\mst@mathfont="##1"#2##2##3#3\relax
+ \fi
+}%
+}%
+\expandafter\mst@fixmathfonts@\detokenize{mode. at.pt.}%
+\def\MTfixmathfonts#1{%
+\def\MTfixmathfonts{%
+ \expandafter\mst@fixmathfonts@\fontname\textfont\symmtoperatorfont
+ \relax\relax #1=;\empty\relax\@empty{\textfont\symmtoperatorfont}%
+ \expandafter\mst@fixmathfonts@\fontname\scriptfont\symmtoperatorfont
+ \relax\relax #1=;\empty\relax\@empty{\scriptfont\symmtoperatorfont}%
+ \expandafter\mst@fixmathfonts@\fontname\scriptscriptfont\symmtoperatorfont
+ \relax\relax #1=;\empty\relax\@empty{\scriptscriptfont\symmtoperatorfont}%
+ \expandafter\mst@fixmathfonts@\fontname\textfont\symmtletterfont
+ \relax\relax #1=;\empty\relax\@empty{\textfont\symmtletterfont}%
+ \expandafter\mst@fixmathfonts@\fontname\scriptfont\symmtletterfont
+ \relax\relax #1=;\empty\relax\@empty{\scriptfont\symmtletterfont}%
+ \expandafter\mst@fixmathfonts@\fontname\scriptscriptfont\symmtletterfont
+ \relax\relax #1=;\empty\relax\@empty{\scriptscriptfont\symmtletterfont}%
+}}%
+\expandafter\MTfixmathfonts\expandafter{\detokenize{mode}}%
\ifmst@LuaTeX
\everymath\expandafter{\the\everymath\mst@fixmathfonts}%
\everydisplay\expandafter{\the\everydisplay\mst@fixmathfonts}%
@@ -567,7 +707,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\let\mst@original@it\mathit
\let\mst@original@sf\mathsf
\let\mst@original@tt\mathtt
-\def\mst@restorealphabets{% for subdued
+\def\mst@restorealphabets{%
\let\mathnormal\mst@original@normal
\let\mathrm\mst@original@rm
\let\mathbf\mst@original@bf
@@ -666,26 +806,31 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\ifmst@selfGreek
\DeclareSymbolFont{mtselfGreekfont}{OT1}{\mst@fam}{\mst@ser}{\mst@greek@ush}
\fi\fi
-\ifmst@needeuler\mst@infoline{will use Euler font; command \string\MTEulerScale}
-\DeclareSymbolFont{mteulervm}{U}{zeur}{m}{n}
-\DeclareSymbolFontAlphabet{\MathEuler}{mteulervm}
-\DeclareMathAlphabet{\MathEulerBold}{U}{zeur}{\mst@bold}{n}
+\ifmst@needeuler
+\mst@infoline{will use Euler font; command \string\MTEulerScale}
+ \DeclareSymbolFont{mteulervm}{U}{zeur}{m}{n}
+ \DeclareSymbolFontAlphabet{\MathEuler}{mteulervm}
+ \DeclareMathAlphabet{\MathEulerBold}{U}{zeur}{\mst@bold}{n}
\fi
\newcommand*\MTEulerScale[1]{\edef\zeu@Scale{#1}}
\let\MathastextEulerScale\MTEulerScale
-\ifmst@needsymbol\mst@infoline{will use Symbol font; command \string\MTSymbolScale}
- \def\psy@scale{1}
- \DeclareSymbolFont{mtpsymbol}{U}{psy}{m}{n}
- \DeclareSymbolFontAlphabet{\MathPSymbol}{mtpsymbol}
-\AtBeginDocument{%
- \DeclareFontFamily{U}{psy}{}%
- \DeclareFontShape{U}{psy}{m}{n}{<->s*[\psy@scale] psyr}{}%
-}
+\ifmst@needsymbol
+ \mst@infoline{will use Symbol font; command \string\MTSymbolScale}
+ \def\psy@scale{1}
+ \DeclareSymbolFont{mtpsymbol}{U}{psy}{m}{n}
+ \DeclareSymbolFontAlphabet{\MathPSymbol}{mtpsymbol}
+ \AtBeginDocument{%
+ \DeclareFontFamily{U}{psy}{}%
+ \DeclareFontShape{U}{psy}{m}{n}{<->s*[\psy@scale] psyr}{}%
+ }
\fi
\newcommand*\MTSymbolScale[1]{\edef\psy@scale{#1}}
\let\MathastextSymbolScale\MTSymbolScale
-\DeclareRobustCommand*\pmvec[1]{\mathord{\stackrel{\raisebox{-.5ex}%
-{\tiny\boldmath$\mathord{\rightarrow}$}}{{}#1}}}
+\protected\def\pmvec#1{%
+ \mathord{\stackrel{\raisebox{-.5ex}{\tiny\boldmath$\mathord{\rightarrow}$}}%
+ {{}#1}%
+ }%
+}
\ifmst@fouriervec
\DeclareFontEncoding{FML}{}{}
\DeclareFontSubstitution{FML}{futm}{m}{it}
@@ -715,40 +860,170 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\let\MathastextupGreek\MTupGreek
\newcommand*\MTgreekfont[1]{\def\mst@greekfont{#1}}
\let\Mathastextgreekfont\MTgreekfont
-\def\mst@DeclareMathLetter #1{%
+\ifmst@noletters
+ \let\MTmathactiveletters\@empty
+ \let\MTmathactiveLetters\@empty
+ \let\MTmathstandardletters\@empty
+\else
+\def\mst@DeclareMathLetter#1#2#3#4#5{%
\DeclareMathSymbol {#1}{\mathalpha}{mtletterfont}{`#1}%
- \expandafter
- \DeclareMathSymbol \csname mst@#1\endcsname{\mathalpha}{mtletterfont}{`#1}%
- \expandafter\mst@addtodo@az\expandafter #1\csname mst@#1\endcsname
+ \DeclareMathSymbol {#4}{\mathalpha}{mtletterfont}{`#1}%
+ \def#2{{#3#4#5\mst@itcorr}}%
+}%
+\@tfor\mst@tmp:=abcdefghijklmnopqrstuvwxyz\do{%
+ \expandafter\expandafter\expandafter\mst@DeclareMathLetter
+ \expandafter\mst@tmp
+ \csname MTcommandletter\mst@tmp\expandafter\endcsname
+ \csname mst@before@\mst@tmp\expandafter\endcsname
+ \csname MTmathcharletter\mst@tmp\expandafter\endcsname
+ \csname mst@after@\mst@tmp\endcsname
}%
-\@tfor\mst@tmp:=abcdefghijklmnopqrstuvwxyz\do
- {\expandafter\mst@DeclareMathLetter\mst@tmp}%
\ifmst@frenchmath \def\mst@font@tbu{mtoperatorfont}%
\else \def\mst@font@tbu{mtletterfont}%
\fi
-\def\mst@DeclareMathLetter #1{%
+\def\mst@DeclareMathLetter #1#2#3#4#5{%
\DeclareMathSymbol {#1}{\mathalpha}{\mst@font@tbu}{`#1}%
- \expandafter
- \DeclareMathSymbol \csname mst@#1\endcsname{\mathalpha}{\mst@font@tbu}{`#1}%
- \expandafter\mst@addtodo@AZ\expandafter #1\csname mst@#1\endcsname
+ \DeclareMathSymbol {#4}{\mathalpha}{\mst@font@tbu}{`#1}%
+ \def#2{{#3#4#5\mst@ITcorr}}%
+}%
+\@tfor\mst@tmp:=ABCDEFGHIJKLMNOPQRSTUVWXYZ\do{%
+ \expandafter\expandafter\expandafter\mst@DeclareMathLetter
+ \expandafter\mst@tmp
+ \csname MTcommandletter\mst@tmp\expandafter\endcsname
+ \csname mst@before@\mst@tmp\expandafter\endcsname
+ \csname MTmathcharletter\mst@tmp\expandafter\endcsname
+ \csname mst@after@\mst@tmp\endcsname
+}%
+\def\mst@mathactivate@lowercase{%
+ \@tfor\mst@tmp:=abcdefghijklmnopqrstuvwxyz\do{%
+ \expandafter\expandafter\expandafter
+ \mst@mathactivate\expandafter\mst@tmp\csname MTcommandletter\mst@tmp\endcsname{}%
+ }%
+}%
+\def\mst@mathactivate@uppercase{%
+ \@tfor\mst@tmp:=ABCDEFGHIJKLMNOPQRSTUVWXYZ\do{%
+ \expandafter\expandafter\expandafter
+ \mst@mathactivate\expandafter\mst@tmp\csname MTcommandletter\mst@tmp\endcsname{}%
+ }%
+}%
+\def\mst@mathdeactivate@lowercase{%
+ \@tfor\mst@tmp:=abcdefghijklmnopqrstuvwxyz\do{%
+ \expandafter\mathcode\expandafter`\mst@tmp=\csname MTmathcharletter\mst@tmp\endcsname
+ }%
}%
-\@tfor\mst@tmp:=ABCDEFGHIJKLMNOPQRSTUVWXYZ\do
- {\expandafter\mst@DeclareMathLetter\mst@tmp}%
-\let\mst@DeclareMathLetter\relax
+\def\mst@mathdeactivate@uppercase{%
+ \@tfor\mst@tmp:=ABCDEFGHIJKLMNOPQRSTUVWXYZ\do{%
+ \expandafter\mathcode\expandafter`\mst@tmp=\csname MTmathcharletter\mst@tmp\endcsname
+ }%
+}%
+\ifmst@everymath
+\else
+ \def\mst@mathdeactivate@lowercase{%
+ \@tfor\mst@tmp:=abcdefghijklmnopqrstuvwxyz\do{%
+ \expandafter\mathcode\expandafter`\mst@tmp=
+ \csname MTmathcharletter\mst@tmp\endcsname
+ }%
+ }%
+ \def\mst@mathdeactivate@uppercase{%
+ \@tfor\mst@tmp:=ABCDEFGHIJKLMNOPQRSTUVWXYZ\do{%
+ \expandafter\mathcode\expandafter`\mst@tmp=
+ \csname MTmathcharletter\mst@tmp\endcsname
+ }%
+ }%
+\fi
+\def\mst@mathactivateletters{%
+ \mst@mathactivate@lowercase
+ \mst@mathactivate@uppercase
+}%
+\newcommand*\MTmathactiveletters{%
+ \mst@OnlyIfNotSubdued
+ \mst@mathactivateletters
+}%
+\AtEndOfPackage{\MTmathactiveletters}%
+\def\mst@mathactivateLetters{\mst@activate@uppercase}%
+\newcommand*\MTmathactiveLetters{%
+ \mst@OnlyIfNotSubdued
+ \mst@mathactivateLetters
+}%
+\newcommand*\MTmathstandardletters{%
+ \mst@mathdeactivate@lowercase
+ \mst@mathdeactivate@uppercase
+}%
+\fi
+\newcommand*\MTicinmath{%
+ \MTmathactiveletters
+ \def\mst@itcorr{\ifnum\fam=\m@ne\/\fi}%
+ \let\mst@ITcorr\mst@itcorr
+}
+\newcommand*\MTICinmath{%
+ \MTmathactiveLetters
+ \def\mst@ITcorr{\ifnum\fam=\m@ne\/\fi}%
+}
+\newcommand*\MTnoicinmath{\let\mst@itcorr\@empty\let\mst@ITcorr\@empty}
+\newcommand*\MTnoICinmath{\let\mst@ITcorr\@empty}
+\newcommand*\MTicalsoinmathxx{%
+ \ifx\mst@itcorr\@empty\else\def\mst@itcorr{\/}\fi
+ \ifx\mst@ITcorr\@empty\else\def\mst@ITcorr{\/}\fi
+}
+\newcommand*\MTsetmathskips[3]{%
+ \@namedef{mst@before@#1}{\ifnum\fam=\m@ne\mskip#2\relax\fi}%
+ \@namedef{mst@after@#1}{\ifnum\fam=\m@ne\mskip#3\relax\fi}%
+}
+\newcommand*\MTunsetmathskips[1]{%
+ \@namedef{mst@before@#1}{}%
+ \@namedef{mst@after@#1}{}%
+}
+\let\MTmathactivedigits\empty
+\let\MTmathstandarddigits\empty
\ifmst@nodigits\else
-\def\mst@font@tbu{mtoperatorfont}%
-\ifmst@symboldigits \def\mst@font@tbu{mtpsymbol} \fi
-\ifmst@eulerdigits \def\mst@font@tbu{mteulervm} \fi
-\DeclareMathSymbol{0}{\mathalpha}{\mst@font@tbu}{`0}%
-\DeclareMathSymbol{1}{\mathalpha}{\mst@font@tbu}{`1}%
-\DeclareMathSymbol{2}{\mathalpha}{\mst@font@tbu}{`2}%
-\DeclareMathSymbol{3}{\mathalpha}{\mst@font@tbu}{`3}%
-\DeclareMathSymbol{4}{\mathalpha}{\mst@font@tbu}{`4}%
-\DeclareMathSymbol{5}{\mathalpha}{\mst@font@tbu}{`5}%
-\DeclareMathSymbol{6}{\mathalpha}{\mst@font@tbu}{`6}%
-\DeclareMathSymbol{7}{\mathalpha}{\mst@font@tbu}{`7}%
-\DeclareMathSymbol{8}{\mathalpha}{\mst@font@tbu}{`8}%
-\DeclareMathSymbol{9}{\mathalpha}{\mst@font@tbu}{`9}%
+ \def\mst@font@tbu{mtoperatorfont}%
+ \ifmst@symboldigits \def\mst@font@tbu{mtpsymbol}\fi
+ \ifmst@eulerdigits \def\mst@font@tbu{mteulervm}\fi
+ \DeclareMathSymbol{0}{\mathalpha}{\mst@font@tbu}{`0}%
+ \DeclareMathSymbol{1}{\mathalpha}{\mst@font@tbu}{`1}%
+ \DeclareMathSymbol{2}{\mathalpha}{\mst@font@tbu}{`2}%
+ \DeclareMathSymbol{3}{\mathalpha}{\mst@font@tbu}{`3}%
+ \DeclareMathSymbol{4}{\mathalpha}{\mst@font@tbu}{`4}%
+ \DeclareMathSymbol{5}{\mathalpha}{\mst@font@tbu}{`5}%
+ \DeclareMathSymbol{6}{\mathalpha}{\mst@font@tbu}{`6}%
+ \DeclareMathSymbol{7}{\mathalpha}{\mst@font@tbu}{`7}%
+ \DeclareMathSymbol{8}{\mathalpha}{\mst@font@tbu}{`8}%
+ \DeclareMathSymbol{9}{\mathalpha}{\mst@font@tbu}{`9}%
+ \ifmst@activedigits
+ \def\mst@DeclareMathDigit #1#2#3{%
+ \DeclareMathSymbol{#3}{\mathalpha}{\mst@font@tbu}{`#1}%
+ \def#2{#3}%
+ }%
+ \@tfor\mst@tmp:=0123456789\do{%
+ \expandafter\expandafter\expandafter\mst@DeclareMathDigit
+ \expandafter\mst@tmp
+ \csname MTcommanddigit\romannumeral\mst@tmp\expandafter\endcsname
+ \csname MTmathchardigit\romannumeral\mst@tmp\endcsname
+ }%
+ \def\mst@mathactivatedigits{%
+ \@tfor\mst@tmp:=0123456789\do{%
+ \expandafter\expandafter\expandafter\mst@mathactivate
+ \expandafter\mst@tmp\csname MTcommanddigit\romannumeral\mst@tmp\endcsname{}%
+ }%
+ }%
+ \def\MTmathactivedigits{\mst@OnlyIfNotSubdued\mst@mathactivatedigits}%
+ \MTmathactivedigits
+ \ifmst@everymath
+ \def\MTmathstandarddigits{%
+ \@tfor\mst@tmp:=0123456789\do{%
+ \expandafter\mathcode\expandafter`\mst@tmp
+ =\csname MTmathchardigit\romannumeral\mst@tmp\endcsname
+ }%
+ }%
+ \else
+ \def\MTmathstandarddigits{%
+ \@tfor\mst@tmp:=0123456789\do{%
+ \expandafter\mathcode\expandafter`\mst@tmp
+ =\csname MTmathchardigit\romannumeral\mst@tmp\endcsname
+ }%
+ }%
+ \fi
+ \fi
\fi
\ifmst@symboldelimiters
\def\mst@font@tbu{mtpsymbol}%
@@ -765,52 +1040,66 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\DeclareMathSymbol{\mst@varfam@question}{\mathalpha}{\mst@font@tbu}{"3F}%
\expandafter\mst@addtodo@nonletters\string?\mathclose\mst@varfam@question
\fi
-\def\mst@@doasterisk{\let\ast\mst@ast\mst@mathactivate*{}\mst@ast}%
-\newcommand*\MTnormalasterisk {\let\mst@doasterisk\relax}
-\newcommand*\MTactiveasterisk {\let\mst@doasterisk\mst@@doasterisk}
+\let\MTnormalasterisk\empty
+\let\MTactiveasterisk\empty
\ifmst@asterisk\mst@infoline{asterisk: \string\ast\space and *}
- \AtBeginDocument{%
- \everymath\expandafter
- {\the\everymath \mst@doasterisk \MTnormalasterisk }%
- \everydisplay\expandafter
- {\the\everydisplay\mst@doasterisk \MTnormalasterisk }}
\ifmst@symbolmisc
- \def\mst@bin@ast{%
- \mathbin{\mathchoice{\raisebox{-.1\height}%
- {\the\textfont\symmtpsymbol\char42}}%
- {\raisebox{-.1\height}%
- {\the\textfont\symmtpsymbol\char42}}%
- {\raisebox{-.1\height}%
- {\the\scriptfont\symmtpsymbol\char42}}%
- {\raisebox{-.1\height}%
- {\the\scriptscriptfont\symmtpsymbol\char42}}}}%
+ \protected\def\mst@bin@ast{\mathbin{\mathchoice
+ {\raisebox{-.1\height}{\the\textfont\symmtpsymbol\char42}}%
+ {\raisebox{-.1\height}{\the\textfont\symmtpsymbol\char42}}%
+ {\raisebox{-.1\height}{\the\scriptfont\symmtpsymbol\char42}}%
+ {\raisebox{-.1\height}{\the\scriptscriptfont\symmtpsymbol\char42}}}%
+ }%
\else
- \def\mst@bin@ast{%
- \mathbin{\mathchoice{\raisebox{-\mst@lowerast}%
- {\the\textfont\symmtoperatorfont\char42}}%
- {\raisebox{-\mst@lowerast}%
- {\the\textfont\symmtoperatorfont\char42}}%
- {\raisebox{-\mst@lowerast}%
- {\the\scriptfont\symmtoperatorfont\char42}}%
- {\raisebox{-\mst@lowerast}%
- {\the\scriptscriptfont\symmtoperatorfont\char42}}}}%
+ \protected\def\mst@bin@ast{\mathbin{\mathchoice
+ {\raisebox{-\mst@lowerast}{\the\textfont\symmtoperatorfont\char42}}%
+ {\raisebox{-\mst@lowerast}{\the\textfont\symmtoperatorfont\char42}}%
+ {\raisebox{-\mst@lowerast}{\the\scriptfont\symmtoperatorfont\char42}}%
+ {\raisebox{-\mst@lowerast}{\the\scriptscriptfont\symmtoperatorfont\char42}}}%
+ }%
\fi
- \def\mst@varfam@ast{\ifnum\fam=\m@ne\mst@bin@ast\else
- \mathbin{\mathchoice{\raisebox{-\mst@lowerast}%
- {\the\textfont\fam\char42}}%
- {\raisebox{-\mst@lowerast}%
- {\the\textfont\fam\char42}}%
- {\raisebox{-\mst@lowerast}%
- {\the\scriptfont\fam\char42}}%
- {\raisebox{-\mst@lowerast}%
- {\the\scriptscriptfont\fam\char42}}}\fi}%
- \MTactiveasterisk
- \DeclareRobustCommand*{\mst@ast}{\mst@bin@ast}
+ \protected\def\mst@varfam@ast{\ifnum\fam=\m@ne
+ \mst@bin@ast
+ \else
+ \mathbin{\mathchoice
+ {\raisebox{-\mst@lowerast}{\the\textfont\fam\char42}}%
+ {\raisebox{-\mst@lowerast}{\the\textfont\fam\char42}}%
+ {\raisebox{-\mst@lowerast}{\the\scriptfont\fam\char42}}%
+ {\raisebox{-\mst@lowerast}{\the\scriptscriptfont\fam\char42}}}%
+ \fi}%
+ \let\mst@ast\mst@bin@ast
\newcommand*\MTlowerast[1]{\def\mst@lowerast{#1}}
\MTlowerast{.3\height}
- \mst@do@easynonletters\expandafter\expandafter\expandafter
- {\expandafter\the\expandafter\mst@do@easynonletters
- \expandafter\def\csname mst@ast \endcsname{\mst@varfam@ast}}
+ \mst@do@easynonletters\expandafter{%
+ \the\mst@do@easynonletters\let\mst@ast\mst@varfam@ast
+ }%
+ \ifmst@everymath
+ \def\mst@@doasterisk {\let\ast\mst@ast\mst@mathactivate*{}\mst@ast}%
+ \def\MTnormalasterisk {\let\mst@doasterisk\relax}
+ \def\MTactiveasterisk {\let\mst@doasterisk\mst@@doasterisk}
+ \MTactiveasterisk
+ \AtBeginDocument{%
+ \everymath\expandafter
+ {\the\everymath \mst@doasterisk \MTnormalasterisk }%
+ \everydisplay\expandafter
+ {\the\everydisplay\mst@doasterisk \MTnormalasterisk }%
+ }%
+ \else
+ \def\MTnormalasterisk{\AtBeginDocument{\MTnormalasterisk}}
+ \def\MTactiveasterisk{\AtBeginDocument{\MTactiveasterisk}}
+ \mst@undo@easynonletters\expandafter{%
+ \the\mst@do@easynonletters\let\mst@ast\mst@bin@ast
+ }%
+ \AtBeginDocument{%
+ \let\mst@orig@abd@ast\ast
+ \edef\MTnormalasterisk{\noexpand\mst@mathdeactivate*{\the\mathcode`\*}%
+ \let\noexpand\ast\noexpand\mst@orig@abd@ast}%
+ \def\MTactiveasterisk{\def\ast{\mst@ast}%
+ \mst@mathactivate*{}\mst@ast
+ }%
+ \MTactiveasterisk
+ }
+ \fi
\fi
\ifmst@nopunct\else\mst@infoline{punctuation\string: \string, \string. \string:
\string; and \string\colon}
@@ -831,7 +1120,13 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\let\mathcomma\mst@varfam@comma
\let\sm@rtcomma\mst@sm@rtcomma
}
- \else % end of decimalcomma branch
+ \ifmst@everymath
+ \else
+ \edef\mst@tmp{\mathchardef\mathcomma=\the\mathcode`\,\relax}%
+ \mst@undo@nonletters\expandafter\expandafter\expandafter
+ {\expandafter\mst@tmp\the\mst@undo@nonletters}%
+ \fi
+ \else
\ifmst@ncccomma
\mst@infoline{loading package ncccomma for `smart comma\string'}
\RequirePackage{ncccomma}%
@@ -851,26 +1146,38 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\let\mathcomma\mst@varfam@comma
\let\NCC@comma\mst@NCC@comma
}
- \else % neither ncccomma nor decimalcomma
+ \ifmst@everymath
+ \else
+ \edef\mst@tmp{\mathchardef\mathcomma=\the\mathcomma\relax}%
+ \mst@undo@nonletters\expandafter\expandafter\expandafter
+ {\expandafter\mst@tmp\the\mst@undo@nonletters}%
+ \fi
+ \else
\expandafter\mst@addtodo@nonletters\string,\mathpunct\mst@varfam@comma
\fi\fi
\DeclareMathSymbol{.}{\mathord}{\mst@font@tbu}{"2E}
\DeclareMathSymbol{\mst@varfam@dot}{\mathalpha}{\mst@font@tbu}{"2E}
\mst@addtodo@easynonletters\.\mst@varfam@dot
- \DeclareMathSymbol{:}{\mathrel}{\mst@font@tbu}{"3A} % relation spacing
+ \DeclareMathSymbol{:}{\mathrel}{\mst@font@tbu}{"3A}
\DeclareMathSymbol{\mst@varfam@colon}{\mathalpha}{\mst@font@tbu}{"3A}
\expandafter\mst@addtodo@nonletters\string:\mathrel\mst@varfam@colon
\@ifpackageloaded{amsmath}
- {} % \colon defined in amsmath.sty in terms of : with some enlarged explicit
- % spacing. No need to intervene.
- {% no amsmath, use standard punctuation spacing
+ {}
+ {%
\let\colon\undefined
- % the reason is if some package has redefined \colon which then
- % can not be used in \cs{DeclareMathSymbol} anymore (we
- % shamelessly overwrite...)
\DeclareMathSymbol{\colon}{\mathpunct}{\mst@font@tbu}{"3A}
- \mst@do@nonletters\expandafter{\the\mst@do@nonletters
- \protected\def\colon{\mathpunct{\mst@varfam@colon}}}%
+ \let\mst@colon\colon
+ \mst@do@nonletters\expandafter{%
+ \the\mst@do@nonletters
+ \protected\def\colon{\mathpunct{\mst@varfam@colon}}%
+ }%
+ \ifmst@everymath
+ \else
+ \mst@undo@nonletters\expandafter{%
+ \the\mst@undo@nonletters
+ \let\colon\mst@colon
+ }%
+ \fi
}
\DeclareMathSymbol{\mst@varfam@pointvirgule}{\mathalpha}{\mst@font@tbu}{"3B}
\ifmst@binarysemicolon
@@ -880,8 +1187,8 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\else
\DeclareMathSymbol{;}{\mathpunct}{\mst@font@tbu}{"3B}
\expandafter\mst@addtodo@nonletters\string;\mathpunct\mst@varfam@pointvirgule
- \fi % binarysemicolno
-\fi % end \ifmst@nopunct else branch
+ \fi
+\fi
\ifmst@nominus
\else
\ifmst@XeOrLua
@@ -892,14 +1199,10 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\@ifpackageloaded{amsmath}
{\def\relbar{\mathrel{\mathpalette\mathsm@sh\mst@minus@sign}}}
{\DeclareRobustCommand\relbar{\mathrel{\smash\mst@minus@sign}}}
- \ifmst@robust@obsessed@LaTeX@era\expandafter\DeclareRobustCommand
- \else\expandafter\def\fi
- \rightarrowfill{$\m@th\mathord{\relbar}\mkern-7mu%
+ \DeclareRobustCommand\rightarrowfill{$\m@th\mathord{\relbar}\mkern-7mu%
\cleaders\hbox{$\mkern-2mu\relbar\mkern-2mu$}\hfill
\mkern-7mu\mathord\rightarrow$}
- \ifmst@robust@obsessed@LaTeX@era\expandafter\DeclareRobustCommand
- \else\expandafter\def\fi
- \leftarrowfill{$\m@th\mathord\leftarrow\mkern-7mu%
+ \DeclareRobustCommand\leftarrowfill{$\m@th\mathord\leftarrow\mkern-7mu%
\cleaders\hbox{$\mkern-2mu\relbar\mkern-2mu$}\hfill
\mkern-7mu\mathord{\relbar}$}
\fi
@@ -915,7 +1218,8 @@ defaultbf,defaultit,defaultsf,defaulttt}}
{\csname\mst@tmp@enc\string\textendash\endcsname}
\DeclareMathSymbol{#2}{\mathalpha}{mtoperatorfont}
{\csname\mst@tmp@enc\string\textendash\endcsname}
- \fi}% mst@dothe@endashstuff
+ \fi
+}%
\def\mst@dothe@emdashstuff#1#2#3{%
\edef\mst@tmp@enc{#3}%
\if1\mst@OneifUniEnc
@@ -926,7 +1230,8 @@ defaultbf,defaultit,defaultsf,defaulttt}}
{\csname\mst@tmp@enc\string\textemdash\endcsname}
\DeclareMathSymbol{#2}{\mathalpha}{mtoperatorfont}
{\csname\mst@tmp@enc\string\textemdash\endcsname}
- \fi}% mst@dothe@emdashstuff
+ \fi
+}%
\def\mst@dothe@hyphenstuff#1#2{%
\DeclareMathSymbol{#1}{\mathbin}{\mst@font@tbu}{"2D}%
\DeclareMathSymbol{#2}{\mathalpha}{\mst@font@tbu}{"2D}%
@@ -942,13 +1247,13 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\csname mst@minus@mv\math@version\endcsname
\relax
\else
- \mathcode`\-=\@nameuse{mst@minus@mv\math@version}% self-delimiting
+ \mathcode`\-=\@nameuse{mst@minus@mv\math@version}%
\fi
- }% \mst@nonsubduedminus
+ }%
\ifmst@endash\else\ifmst@emdash\else
\def\mst@nonsubduedminus{%
- \mathcode`\-=\@nameuse{mst@minus@mv\math@version}% self-delimiting
- }% non Umathchardef \mst@minus@mv<mathversion> macros
+ \mathcode`\-=\@nameuse{mst@minus@mv\math@version}%
+ }%
\fi\fi
\fi
\def\mst@UmathchardefWorkAround@i
@@ -965,7 +1270,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\def\mst@mathrlapinternal#1#2{\rlap{$\mathsurround=0pt#1{#2}$}}
\def\mst@dothe@hbarstuff#1#2#3{%
\edef\mst@tmp@enc{#3}%
- \if1\mst@OneifUniEnc % Unicode engine and font
+ \if1\mst@OneifUniEnc
\mst@Umathchardef#1="7 \symmtletterfont "0127 \relax %% or 210F?
\else
\begingroup
@@ -974,9 +1279,9 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\mst@DeclareMathAccent{#2}{\mathalpha}{mtletterfont}%
{\csname\mst@tmp@enc\string\=\endcsname{}}%
\endgroup
- \protected\def#1{\mst@mathrlap{#2{\ }}\mst@h}%
+ \protected\def#1{\mst@mathrlap{#2{\ }}\MTmathcharletterh}%
\fi
-}% end of \mst@dothe@hbarstuff
+}%
\ifmst@noplus\else\mst@infoline{\string+ and \string=}
\DeclareMathSymbol{+}{\mathbin}{\mst@font@tbu}{"2B}
\DeclareMathSymbol{\mst@varfam@plus}{\mathalpha}{\mst@font@tbu}{"2B}
@@ -1001,7 +1306,8 @@ defaultbf,defaultit,defaultsf,defaulttt}}
}
\expandafter\mst@addtodo@nonletters\string=\mathrel\mst@varfam@equal
\fi
-\ifmst@noparen\else\mst@infoline{parentheses \string( \string) \string[ \string] and slash \string/}
+\ifmst@noparen\else
+\mst@infoline{parentheses \string( \string) \string[ \string] and slash \string/}
\ifmst@nosmalldelims
\DeclareMathSymbol{(}{\mathopen}{\mst@font@tbu}{"28}
\DeclareMathSymbol{)}{\mathclose}{\mst@font@tbu}{"29}
@@ -1032,11 +1338,13 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\ifmst@nosmalldelims
\DeclareMathDelimiter{\mst@varfam@backslash}
{\mathalpha}{symbols}{"6E}{largesymbols}{"0F}
+ \let\mst@mathord@backslash\backslash
\else
\DeclareMathDelimiter{<}{\mathopen}{\mst@font@tbu}{"3C}{largesymbols}{"0A}
\DeclareMathDelimiter{>}{\mathclose}{\mst@font@tbu}{"3E}{largesymbols}{"0B}
- \DeclareMathDelimiter{\backslash}
+ \DeclareMathDelimiter{\mst@mathord@backslash}
{\mathord}{mtoperatorfont}{"5C}{largesymbols}{"0F}
+ \let\backslash\mst@mathord@backslash
\DeclareMathDelimiter{\mst@varfam@backslash}
{\mathalpha}{mtoperatorfont}{"5C}{largesymbols}{"0F}
\fi
@@ -1048,10 +1356,25 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\expandafter\mst@addtodo@nonletters\string>\mathrel\mst@varfam@more
\mst@do@easynonletters\expandafter{\the\mst@do@easynonletters
\let\backslash\mst@varfam@backslash}
+\ifmst@everymath
+\else
+ \mst@undo@easynonletters\expandafter{\the\mst@undo@easynonletters
+ \let\backslash\mst@mathord@backslash}
+\fi
\DeclareMathSymbol{\setminus}{\mathbin}{mtoperatorfont}{"5C}
+\let\mst@setminus\setminus
\DeclareMathSymbol{\mst@varfam@setminus}{\mathalpha}{mtoperatorfont}{"5C}
-\mst@do@nonletters\expandafter{\the\mst@do@nonletters
- \protected\def\setminus{\mathbin{\mst@varfam@setminus}}}
+\mst@do@nonletters\expandafter{%
+ \the\mst@do@nonletters
+ \protected\def\setminus{\mathbin{\mst@varfam@setminus}}%
+}
+\ifmst@everymath
+\else
+ \mst@undo@nonletters\expandafter{%
+ \the\mst@undo@nonletters
+ \let\setminus\mst@setminus
+ }
+\fi
\ifmst@XeOrLua
\mst@Umathcharnumdef\mst@vert@bar=\mst@Umathcodenum`\|\relax
\else
@@ -1066,10 +1389,20 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\protected\def\vert{|}
\DeclareMathSymbol{\mst@varfam@vbar}{\mathalpha}{\mst@font@tbu}{124}
\mst@addtodo@easynonletters\|\mst@varfam@vbar
-\let\mid\undefined % 1.3: to avoid problems with some packages
+\let\mid\undefined
\DeclareMathSymbol{\mid}{\mathrel}{\mst@font@tbu}{124}
-\mst@do@nonletters\expandafter{\the\mst@do@nonletters
- \protected\def\mid{\mathrel\mst@varfam@vbar}}
+\let\mst@mid\mid
+\mst@do@nonletters\expandafter{%
+ \the\mst@do@nonletters
+ \protected\def\mid{\mathrel\mst@varfam@vbar}%
+}
+\ifmst@everymath
+\else
+ \mst@undo@nonletters\expandafter{%
+ \the\mst@undo@nonletters
+ \let\mid\mst@mid
+ }
+\fi
\ifmst@nosmalldelims
\else
\let\lbrace\undefined \let\rbrace\undefined
@@ -1080,86 +1413,105 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\fi
\DeclareMathSymbol{\mst@varfam@lbrace}{\mathalpha}{\mst@font@tbu}{123}
\DeclareMathSymbol{\mst@varfam@rbrace}{\mathalpha}{\mst@font@tbu}{125}
-\DeclareRobustCommand*{\mst@lbrace}
- {\ifmmode\mathopen\mst@varfam@lbrace\else\textbraceleft\fi}
-\DeclareRobustCommand*{\mst@rbrace}
- {\ifmmode\mathclose\mst@varfam@rbrace\else\textbraceright\fi}
-\mst@do@nonletters\expandafter{\the\mst@do@nonletters
- \mst@dobraces{\expandafter\let\csname\string{ \expandafter\endcsname
- \csname mst@lbrace \endcsname
- \expandafter\let\csname\string} \expandafter\endcsname
- \csname mst@rbrace \endcsname}}
-\fi % end of \ifmst@alldelims
+\protected\def\mst@lbrace{\ifmmode\mathopen\mst@varfam@lbrace\else\textbraceleft\fi}
+\protected\def\mst@rbrace{\ifmmode\mathclose\mst@varfam@rbrace\else\textbraceright\fi}
+\mst@do@nonletters\expandafter{%
+ \the\mst@do@nonletters
+ \mst@dobraces{\let\{\mst@lbrace\let\}\mst@rbrace}%
+}
+\fi
\newcommand*{\MTexplicitbracesobeymathxx}{\let\mst@dobraces\@firstofone}
\newcommand*{\MTexplicitbracesdonotobeymathxx}{\let\mst@dobraces\@gobble}
+\ifmst@everymath
+\else
+ \renewcommand*\MTexplicitbracesobeymathxx{%
+ \let\mst@dobraces\@firstofone
+ \MTnonlettersobeymathxx
+ }%
+ \renewcommand*\MTexplicitbracesdonotobeymathxx{%
+ \let\mst@dobraces\@gobble
+ \protected\def\{{\ifmmode \lbrace \else \textbraceleft \fi}%
+ \protected\def\}{\ifmmode \rbrace \else \textbraceright \fi}%
+ }%
+ \mst@undo@nonletters\expandafter{\the\mst@undo@nonletters
+ \protected\def\{{\ifmmode \lbrace \else \textbraceleft \fi}%
+ \protected\def\}{\ifmmode \rbrace \else \textbraceright \fi}%
+ }%
+\fi
\MTexplicitbracesdonotobeymathxx
\ifmst@nospecials
\else
- \mst@infoline{\string\#\space\string\mathdollar\space
- \string\%\space\string\&\space}
+ \mst@infoline{\string\#\space\string\mathdollar\space
+ \string\%\space\string\&\space}
\ifmst@XeOrLua
- \mst@Umathcode`\#=0 \symmtoperatorfont "23 \relax
- \mst@Umathchardef\mathdollar=0 \symmtoperatorfont "24 \relax
- \mst@Umathcode`\%=0 \symmtoperatorfont "25 \relax
- \mst@Umathcode`\&=0 \symmtoperatorfont "26 \relax
- \mst@do@easynonletters\expandafter{%
- \the\mst@do@easynonletters
- \mst@Umathcode`\#=7 \symmtoperatorfont "23 \relax
- \mst@Umathchardef\mathdollar=7 \symmtoperatorfont "24 \relax
- \mst@Umathcode`\%=7 \symmtoperatorfont "25 \relax
- \mst@Umathcode`\&=7 \symmtoperatorfont "26 \relax
- }
+ \mst@Umathcode`\#=0 \symmtoperatorfont "23 \relax
+ \mst@Umathchardef\mathdollar=0 \symmtoperatorfont "24 \relax
+ \mst@Umathcode`\%=0 \symmtoperatorfont "25 \relax
+ \mst@Umathcode`\&=0 \symmtoperatorfont "26 \relax
+ \mst@Umathchardef\mst@varfam@mathhash = 7 \symmtoperatorfont "23 \relax
+ \mst@Umathchardef\mst@varfam@mathdollar = 7 \symmtoperatorfont "24 \relax
+ \mst@Umathchardef\mst@varfam@mathpercent = 7 \symmtoperatorfont "25 \relax
+ \mst@Umathchardef\mst@varfam@mathampersand = 7 \symmtoperatorfont "26 \relax
+ \mst@addtodo@easynonletters@U\#\mst@varfam@mathhash
+ \mst@addtodo@easynonletters@U\%\mst@varfam@mathpercent
+ \mst@addtodo@easynonletters@U\&\mst@varfam@mathampersand
\else
- \count@=\symmtoperatorfont
- \multiply\count@ by \@cclvi
- \advance\count@ by 35
- \mathcode`\#\count@
- \advance\count@ by \@ne
- \mathchardef\mathdollar\count@
- \advance\count@ by \@ne
- \mathcode`\%\count@
- \advance\count@ by \@ne
- \mathcode`\&\count@
- \count@=\symmtoperatorfont
- \multiply\count@ by \@cclvi
- \advance\count@ by 28707 % = "7023
- \mathchardef\mst@varfam@mathhash\count@
- \advance\count@ by \@ne
- \mathchardef\mst@varfam@mathdollar\count@
- \advance\count@ by \@ne
- \mathchardef\mst@varfam@mathpercent\count@
- \advance\count@ by \@ne
- \mathchardef\mst@varfam@mathampersand\count@
+ \count@=\symmtoperatorfont
+ \multiply\count@ by \@cclvi
+ \advance\count@ by 35
+ \mathcode`\#\count@
+ \advance\count@ by \@ne
+ \mathchardef\mathdollar\count@
+ \advance\count@ by \@ne
+ \mathcode`\%\count@
+ \advance\count@ by \@ne
+ \mathcode`\&\count@
+ \count@=\symmtoperatorfont
+ \multiply\count@ by \@cclvi
+ \advance\count@ by 28707 % = "7023
+ \mathchardef\mst@varfam@mathhash\count@
+ \advance\count@ by \@ne
+ \mathchardef\mst@varfam@mathdollar\count@
+ \advance\count@ by \@ne
+ \mathchardef\mst@varfam@mathpercent\count@
+ \advance\count@ by \@ne
+ \mathchardef\mst@varfam@mathampersand\count@
+ \mst@addtodo@easynonletters\#\mst@varfam@mathhash
+ \mst@addtodo@easynonletters\%\mst@varfam@mathpercent
+ \mst@addtodo@easynonletters\&\mst@varfam@mathampersand
+ \fi
\mst@do@easynonletters\expandafter{\the\mst@do@easynonletters
- \mathcode`\#=\mst@varfam@mathhash
- \let\mathdollar\mst@varfam@mathdollar
- \mathcode`\%=\mst@varfam@mathpercent
- \mathcode`\&=\mst@varfam@mathampersand}
+ \let\mathdollar\mst@varfam@mathdollar}%
+ \ifmst@everymath\else
+ \edef\mst@tmp{\ifmst@XeOrLua\mst@Umathcharnumdef\else\mathchardef\fi
+ \mathdollar=\the\mathdollar\relax}%
+ \mst@undo@easynonletters\expandafter\expandafter\expandafter
+ {\expandafter\mst@tmp\the\mst@undo@easynonletters}%
\fi
\fi
-\ifmst@symbolmisc\mst@infoline{symbolmisc: miscellaneous math symbols from Symbol font}
-\let\mst@prod\prod
+\ifmst@symbolmisc
+\mst@infoline{symbolmisc: miscellaneous math symbols from Symbol font}
\let\MToriginalprod\prod
\DeclareMathSymbol{\prodpsy}{\mathop}{mtpsymbol}{213}
-\protected\def\prod{\ifinner\prodpsy\else\mst@prod\fi}
-\let\mst@sum\sum
+\protected\def\prod{\ifinner\prodpsy\else\MToriginalprod\fi}
\let\MToriginalsum\sum
\DeclareMathSymbol{\sumpsy}{\mathop}{mtpsymbol}{229}
-\protected\def\sum{\ifinner\sumpsy\else\mst@sum\fi}
+\protected\def\sum{\ifinner\sumpsy\else\MToriginalsum\fi}
\DeclareMathSymbol{\mst@implies}{\mathrel}{mtpsymbol}{222}
-\DeclareRobustCommand*{\implies}{\;\mst@implies\;}
+\protected\def\implies{\;\mst@implies\;}
\DeclareMathSymbol{\mst@impliedby}{\mathrel}{mtpsymbol}{220}
-\DeclareRobustCommand*{\impliedby}{\;\mst@impliedby\;}
-\DeclareRobustCommand*{\iff}{\;\mst@impliedby\mathrel{\mkern-3mu}\mst@implies\;}
+\protected\def\impliedby{\;\mst@impliedby\;}
+\protected\def\iff{\;\mst@impliedby\mathrel{\mkern-3mu}\mst@implies\;}
\DeclareMathSymbol{\mst@iff}{\mathrel}{mtpsymbol}{219}
-\DeclareRobustCommand*{\shortiff}{\;\mst@iff\;}
-\DeclareMathSymbol{\mst@to}{\mathrel}{mtpsymbol}{174}
+\protected\def\shortiff{\;\mst@iff\;}
+\let\to\relax
+\DeclareMathSymbol{\to}{\mathrel}{mtpsymbol}{174}
\DeclareMathSymbol{\mst@trait}{\mathrel}{mtpsymbol}{190}
-\DeclareRobustCommand*\to{\mst@to}
-\DeclareRobustCommand*\longto{\mkern2mu\mst@trait\mathrel{\mkern-10mu}\mst@to}
-\DeclareRobustCommand*\mapsto{\mapstochar\mathrel{\mkern0.2mu}\mst@to}
-\DeclareRobustCommand*\longmapsto{%
-\mapstochar\mathrel{\mkern2mu}\mst@trait\mathrel{\mkern-10mu}\mst@to}
+\protected\def\longto{\mkern2mu\mst@trait\mathrel{\mkern-10mu}\to}
+\protected\def\mapsto{\mapstochar\mathrel{\mkern0.2mu}\to}
+\protected\def\longmapsto{%
+ \mapstochar\mathrel{\mkern2mu}\mst@trait\mathrel{\mkern-10mu}\to
+}
\DeclareMathSymbol{\aleph}{\mathord}{mtpsymbol}{192}
\DeclareMathSymbol{\inftypsy}{\mathord}{mtpsymbol}{165}
\DeclareMathSymbol{\emptyset}{\mathord}{mtpsymbol}{198}
@@ -1208,7 +1560,8 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\DeclareMathDelimiter{\langle}
{\mathopen}{mtpsymbol}{225}{largesymbols}{"0A}
\fi
-\ifmst@symbolre\mst@infoline{symbolre: \string\Re\space and \string\Im\space from Symbol font}
+\ifmst@symbolre
+\mst@infoline{symbolre: \string\Re\space and \string\Im\space from Symbol font}
\DeclareMathSymbol{\Re}{\mathord}{mtpsymbol}{"C2}
\DeclareMathSymbol{\Im}{\mathord}{mtpsymbol}{"C1}
\DeclareMathSymbol{\DotTriangle}{\mathord}{mtpsymbol}{92}
@@ -1249,11 +1602,8 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\DeclareMathSymbol{\mst@Tau}{\mst@mathord}{\mst@font@tbu}{"54}
\DeclareMathSymbol{\mst@Chi}{\mst@mathord}{\mst@font@tbu}{"58}
\ifx\mst@mathord\mathord
-%% attention le P de Symbol est un \Pi pas un \Rho
\DeclareMathSymbol{\mst@Rho}{\mathord}{mtpsymbol}{"52}
-%% attention le X de Symbol est un \Xi pas un \Chi
\DeclareMathSymbol{\mst@Chi}{\mathord}{mtpsymbol}{"43}
-%% attention le F de Symbol est un \Phi. Il n'y a pas de \Digamma
\DeclareMathSymbol{\mst@Gamma}{\mathord}{mtpsymbol}{"47}
\DeclareMathSymbol{\mst@Delta}{\mathord}{mtpsymbol}{"44}
\DeclareMathSymbol{\mst@Theta}{\mathord}{mtpsymbol}{"51}
@@ -1265,7 +1615,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\DeclareMathSymbol{\mst@Phi}{\mathord}{mtpsymbol}{"46}
\DeclareMathSymbol{\mst@Psi}{\mathord}{mtpsymbol}{"59}
\DeclareMathSymbol{\mst@Omega}{\mathord}{mtpsymbol}{"57}
- \else % de \mst@mathord=\mathord
+ \else
\DeclareMathSymbol\mst@Digamma {\mathalpha}{\mst@font@tbu}{"46}
\DeclareMathSymbol\mst@Gamma {\mathalpha}{\mst@font@tbu}{"00}
\DeclareMathSymbol\mst@Delta {\mathalpha}{\mst@font@tbu}{"01}
@@ -1278,8 +1628,8 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\DeclareMathSymbol\mst@Phi {\mathalpha}{\mst@font@tbu}{"08}
\DeclareMathSymbol\mst@Psi {\mathalpha}{\mst@font@tbu}{"09}
\DeclareMathSymbol\mst@Omega {\mathalpha}{\mst@font@tbu}{"0A}
- \fi % de \mst@mathord=\mathord
-\fi % fin de goahead
+ \fi
+\fi
\ifmst@goahead
\ifmst@eulergreek
\DeclareMathSymbol{\mst@alpha} {\mathalpha}{mteulervm}{"0B}
@@ -1582,7 +1932,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\let\mst@origdigamma\digamma
\let\mst@origpartial\partial
\let\mst@origwp\wp
- \let\mst@origell\ell }% \MTrecordstandardgreek
+ \let\mst@origell\ell }%
\MTrecordstandardgreek
\renewcommand*{\MTstandardgreek}{%
\let\Alpha\mst@origAlpha
@@ -1644,7 +1994,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\let\partial\mst@origpartial
\let\wp\mst@origwp
\let\ell\mst@origell
-}% \MTstandardgreek
+}%
\ifmst@greekplus
\def\mst@define@lowergreekletter#1#2{%
\protected\def#1{\ifcase\mst@mathalph
@@ -1724,7 +2074,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\mst@define@lowergreekletter\omega\mst@omega
\mst@define@lowergreekletter\varsigma\mst@varsigma
\mst@define@lowergreekletter\digamma\mst@digamma
-}% end of True branch of \ifmst@greekplus
+}%
\else
\renewcommand*{\MTcustomgreek}{%
\expanded{%
@@ -1741,7 +2091,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\let\noexpand\Rho\mst@Rho
\let\noexpand\Tau\mst@Tau
\let\noexpand\Chi\mst@Chi
- }% end of first big \expanded
+ }%
\ifmst@symbolgreek\else
\expanded{\let\noexpand\Digamma\mst@Digamma}%
\fi
@@ -1757,7 +2107,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\let\noexpand\Phi\mst@Phi
\let\noexpand\Psi\mst@Psi
\let\noexpand\Omega\mst@Omega
- }% end of second big \expanded
+ }%
\ifmst@selfGreek\else
\expanded{%
\let\noexpand\alpha\mst@alpha
@@ -1785,7 +2135,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\let\noexpand\psi\mst@psi
\let\noexpand\omega\mst@omega
\let\noexpand\varsigma\mst@varsigma
- }% end of third big \expanded
+ }%
\ifmst@LGRgreek
\expanded{\let\noexpand\digamma\mst@digamma}%
\fi
@@ -1800,9 +2150,9 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\ifmst@symbolgreek\else\let\ell\mst@ell\fi
\fi
\fi
-}% \MTcustomgreek
-\fi% end of else branch of \ifmst@greekplus
-\fi% end of \ifmst@customgreek
+}%
+\fi
+\fi
\let\Mathastextstandardgreek\MTstandardgreek
\let\Mathastextcustomgreek\MTcustomgreek
\ifmst@subdued\else\MTcustomgreek\fi
@@ -1819,7 +2169,6 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\def\mst@dothe@inodotstuff#1#2#3{%
\edef\mst@tmp@enc{#3}%
\if1\mst@OneifUniEnc
- % Unicode engine and font
\mst@Umathchardef#1="7 \symmtletterfont "0131 \relax
\mst@Umathchardef#2="7 \symmtletterfont "0237 \relax
\else
@@ -1827,7 +2176,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
{\csname\mst@tmp@enc\string\i\endcsname}
\DeclareMathSymbol{#2}{\mathalpha}{mtletterfont}
{\csname\mst@tmp@enc\string\j\endcsname}
- \fi}% \mst@dothe@inodotstuff
+ \fi}%
\ifmst@defaultimath\else\mst@infoline{\string\imath\space and \string\jmath\space}
\AtEndOfPackage{\AtBeginDocument{%
\protected\def\imath{\inodot}%
@@ -1865,67 +2214,57 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\let\add@unicode@accent\@firstoftwo
\if1\mst@OneifUniEnc
\ifmst@unimathaccents
- % \` -> \grave
\expandafter\xdef\csname mst@grave@mv#1\mst@robustifyingspace\endcsname
{\mst@Umathaccent
7
\number\symmtoperatorfont\space
\csname#2\string\`\endcsname{}\relax}%
- % \' -> \acute
\expandafter\xdef\csname mst@acute@mv#1\mst@robustifyingspace\endcsname
{\mst@Umathaccent
7
\number\symmtoperatorfont\space
\csname#2\string\'\endcsname{}\relax}%
- % \v -> \check
\expandafter\xdef\csname mst@check@mv#1\mst@robustifyingspace\endcsname
{\mst@Umathaccent
7
\number\symmtoperatorfont\space
\csname#2\string\v\endcsname{}\relax}%
- % \u -> \breve
\expandafter\xdef\csname mst@breve@mv#1\mst@robustifyingspace\endcsname
{\mst@Umathaccent
7
\number\symmtoperatorfont\space
\csname#2\string\u\endcsname{}\relax}%
- % \= -> \bar
\expandafter\xdef\csname mst@bar@mv#1\mst@robustifyingspace\endcsname
{\mst@Umathaccent
7
\number\symmtoperatorfont\space
\csname#2\string\=\endcsname{}\relax}%
- % \. -> \dot
\expandafter\xdef\csname mst@dot@mv#1\mst@robustifyingspace\endcsname
{\mst@Umathaccent
7
\number\symmtoperatorfont\space
\csname#2\string\.\endcsname{}\relax}%
- % \" -> \ddot
\expandafter\xdef\csname mst@ddot@mv#1\mst@robustifyingspace\endcsname
{\mst@Umathaccent
7
\number\symmtoperatorfont\space
\csname#2\string\"\endcsname{}\relax}%
- % \r -> \mathring
\expandafter\xdef\csname mst@mathring@mv#1\mst@robustifyingspace\endcsname
{\mst@Umathaccent
7
\number\symmtoperatorfont\space
\csname#2\string\r\endcsname{}\relax}%
- % \^ -> \hat
\expandafter\xdef\csname mst@hat@mv#1\mst@robustifyingspace\endcsname
{\mst@Umathaccent
7
\number\symmtoperatorfont\space
\csname#2\string\^\endcsname{}\relax}%
- % \~ -> \tilde
\expandafter\xdef\csname mst@tilde@mv#1\mst@robustifyingspace\endcsname
{\mst@Umathaccent
7
\number\symmtoperatorfont\space
\csname#2\string\~\endcsname{}\relax}%
- \else % false branch of ifmst@unimathaccents
+ \else
\AtEndOfPackage{\AtBeginDocument{%
\@tfor\@tempa:={grave}{acute}{check}{breve}{bar}%
{dot}{ddot}{mathring}{hat}{tilde}%
@@ -1938,7 +2277,6 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\csname mst@original@\@tempa\space\endcsname}%
}}%
\fi
- \ifmst@robust@obsessed@LaTeX@era
\@tfor\@tempa:={grave}{acute}{check}{breve}{bar}%
{dot}{ddot}{mathring}{hat}{tilde}%
\do
@@ -1946,52 +2284,41 @@ defaultbf,defaultit,defaultsf,defaulttt}}
{\noexpand\protect
\expandafter\noexpand\csname mst@\@tempa @mv#1 \endcsname}%
}%
- \fi
- \else % false branch of ifUniEnc
- % \` -> \grave
+ \else
\expandafter\mst@DeclareMathAccent\expandafter
{\csname mst@grave@mv#1\endcsname}{\mathalpha}{mtoperatorfont}%
{\csname#2\string\`\endcsname{}}
- % \' -> \acute
\expandafter\mst@DeclareMathAccent\expandafter
{\csname mst@acute@mv#1\endcsname}{\mathalpha}{mtoperatorfont}%
{\csname#2\string\'\endcsname{}}
- % \v -> \check
\expandafter\mst@DeclareMathAccent\expandafter
{\csname mst@check@mv#1\endcsname}{\mathalpha}{mtoperatorfont}%
{\csname#2\string\v\endcsname{}}
- % \u -> \breve
\expandafter\mst@DeclareMathAccent\expandafter
{\csname mst@breve@mv#1\endcsname}{\mathalpha}{mtoperatorfont}%
{\csname#2\string\u\endcsname{}}
- % \= -> \bar
\expandafter\mst@DeclareMathAccent\expandafter
{\csname mst@bar@mv#1\endcsname}{\mathalpha}{mtoperatorfont}%
{\csname#2\string\=\endcsname{}}
- % \. -> \dot
\expandafter\mst@DeclareMathAccent\expandafter
{\csname mst@dot@mv#1\endcsname}{\mathalpha}{mtoperatorfont}%
{\csname#2\string\.\endcsname{}}
- % \" -> \ddot
\expandafter\mst@DeclareMathAccent\expandafter
{\csname mst@ddot@mv#1\endcsname}{\mathalpha}{mtoperatorfont}%
{\csname#2\string\"\endcsname{}}
- % \r -> \mathring
\expandafter\mst@DeclareMathAccent\expandafter
{\csname mst@mathring@mv#1\endcsname}{\mathalpha}{mtoperatorfont}%
{\csname#2\string\r\endcsname{}}
- % \^ -> \hat
\expandafter\mst@DeclareMathAccent\expandafter
{\csname mst@hat@mv#1\endcsname}{\mathalpha}{mtoperatorfont}%
{\csname#2\string\^\endcsname{}}
- % \~ -> \tilde
\expandafter\mst@DeclareMathAccent\expandafter
{\csname mst@tilde@mv#1\endcsname}{\mathalpha}{mtoperatorfont}%
{\csname#2\string\~\endcsname{}}
\fi
\endgroup
}%
-\fi % \ifmst@mathaccents
+\fi
\newcommand*\MTDeclareVersion[6][]{%
\edef\mst@declareversionargs{{#1}{#2}{#3}{#4}{#5}{#6}}%
\edef\mst@version{#2}%
@@ -2002,14 +2329,14 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\MTDoNotDeclareVersion@\expandafter\@gobblefour
\fi
\relax\DeclareMathVersion{\mst@version}\MTDeclareVersion@
-}% \MTDeclareVersion
+}%
\newcommand*\MTDoNotDeclareVersion@[1][]{%
\PackageWarningNoLine{mathastext}{You asked to declare a version with name
`\mst@version'.^^J%
\@spaces Sorry but you are not allowed to do that.^^J%
\@spaces \ifmst@subdued Anyway the `subdued' option is in force\else
Use rather \string\Mathastext\space macro (with no optional argument)\fi
-}}%\MTDoNotDeclareVersion@
+}}%
\newcommand*\MTDeclareVersion@[1][]{%
\edef\mst@tmp{#1}%
\ifx\mst@tmp\empty\else
@@ -2021,7 +2348,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
inherits from `#1\string'\@gobble}%
\fi
\expandafter\MTDeclareVersion@@\mst@declareversionargs
-}% \MTDeclareVersion@
+}%
\newcommand*\MTDeclareVersion@@[6]{%
\expandafter\edef\csname mst@encoding@\mst@version\endcsname{#3}%
\expandafter\edef\csname mst@family@\mst@version\endcsname{#4}%
@@ -2042,36 +2369,56 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\ifx\mst@tmp\empty
\ifmst@italic
\SetSymbolFont{mtletterfont}{#2}{#3}{#4}{#5}{\mst@ltsh}%
-\immediate\write\m@ne{}%
-\PackageInfo{mathastext}{Latin letters in math version `#2\string'\MessageBreak
+ \immediate\write\m@ne{}%
+ \PackageInfo{mathastext}%
+ {\ifmst@noletters
+ \else
+ Latin letters in math version `#2\string'\MessageBreak
declared\on@line\MessageBreak
will use the font #3/#4/#5/\mst@ltsh
\ifmst@frenchmath\space(uppercase: #6)\fi\MessageBreak
+ \fi
Other characters (digits, ...) and \protect\log-like names\MessageBreak
- will be in `#6\string' shape\@gobble}%
-\immediate\write\m@ne{}%
+ \ifmst@noletters
+ will use the font #3/#4/#5/#6%
+ \else
+ will be in `#6\string' shape%
+ \fi\@gobble}%
+ \immediate\write\m@ne{}%
\expandafter\edef\csname mst@ltshape@\mst@version\endcsname{\mst@ltsh}%
\else
\SetSymbolFont{mtletterfont}{#2}{#3}{#4}{#5}{#6}%
-\immediate\write\m@ne{}%
-\PackageInfo{mathastext}{Latin letters in math version `#2\string'\MessageBreak
+ \ifmst@noletters
+ \else
+ \immediate\write\m@ne{}%
+ \PackageInfo{mathastext}%
+ {Latin letters in math version `#2\string'\MessageBreak
declared\on@line\MessageBreak
will use the fonts #3/#4/#5(\mst@bold)/#6\@gobble}%
-\immediate\write\m@ne{}%
+ \fi
+ \immediate\write\m@ne{}%
\expandafter\edef\csname mst@ltshape@\mst@version\endcsname{#6}%
\fi
- \else % #1 not empty
+ \else
\SetSymbolFont{mtletterfont}{#2}{#3}{#4}{#5}{#1}%
-\immediate\write\m@ne{}%
-\PackageInfo{mathastext}{Latin letters in math version `#2\string'\MessageBreak
+ \immediate\write\m@ne{}%
+ \PackageInfo{mathastext}%
+ {\ifmst@noletters
+ \else
+ Latin letters in math version `#2\string'\MessageBreak
declared\on@line\MessageBreak
will use the font #3/#4/#5/#1%
\ifmst@frenchmath\space(uppercase: #6)\fi\MessageBreak
+ \fi
Other characters (digits, ...) and
\protect\log-like names\MessageBreak
- will be in `#6\string' shape\@gobble}%
-\immediate\write\m@ne{}%
- \expandafter\edef\csname mst@ltshape@\mst@version\endcsname{#1}%
+ \ifmst@noletters
+ will use the font #3/#4/#5/#6%
+ \else
+ will be in `#6\string' shape%
+ \fi\@gobble}%
+ \immediate\write\m@ne{}%
+ \expandafter\edef\csname mst@ltshape@\mst@version\endcsname{#1}%
\fi
\SetMathAlphabet{\Mathnormalbold}{#2}{#3}{#4}{\mst@bold}%
{\csname mst@ltshape@\mst@version\endcsname}%
@@ -2174,12 +2521,12 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\expandafter\mst@dothe@hyphenstuff\mst@tmp
\fi
\fi
-}% \MTDeclareVersion@@
+}%
\let\MathastextDeclareVersion\MTDeclareVersion
-\newcommand*\MTversion {\@ifstar\MTversion@s\MTversion@ }
-\newcommand*\MTversion@s [1]{\mathversion{#1}\MTversion@@ }
+\newcommand*\MTversion {\@ifstar\MTversion@s\MTversion@}
+\newcommand*\MTversion@s [1]{\mathversion{#1}\MTversion@@}
\newcommand*\MTversion@ [2][]{%
- \mathversion{#2}% defines \math@version as expanded #2
+ \mathversion{#2}%
\edef\mst@tmpa{#1}%
\ifx\mst@tmpa\empty
\let\mst@tmp\math@version
@@ -2197,7 +2544,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\edef\ttdefault {\csname mst@ttdefault@\mst@tmp\endcsname}%
\usefont{\encodingdefault}{\familydefault}{\seriesdefault}{\shapedefault}%
\MTversion@@
-}% \MTversion@
+}%
\newcommand*\MTversion@@ {%
\MTexistsdoesskip
\MTforalldoesskip
@@ -2259,13 +2606,13 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\csname ifmst@greek@\math@version @upper@up\endcsname
\expandafter\let\csname ifmst@greek@lower@up\expandafter\endcsname
\csname ifmst@greek@\math@version @lower@up\endcsname
- \MTcustomgreek % new with 1.3d
+ \MTcustomgreek
\mst@nonsubduedhbar
\mst@nonsubduedinodot
\mst@nonsubduedmathaccents
\mst@nonsubduedminus
\fi
-}% \MTversion@@
+}%
\let\MathastextVersion\MTversion
\let\Mathastextversion\MTversion
\let\MTVersion\MTversion
@@ -2275,13 +2622,13 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\MTfamily{#3}
\MTseries{#4}
\MTshape{#5}
- \ifmst@italic\MTlettershape{\itdefault}\fi % was missing in v 1.14 and prior
+ \ifmst@italic\MTlettershape{\itdefault}\fi
\edef\mst@tmp{#1}
\ifx\mst@tmp\empty\else\MTlettershape{#1}\fi
\Mathastext}
\let\MathastextWillUse\MTWillUse
\let\Mathastextwilluse\MTWillUse
-\def\Mathastext {\@ifnextchar [\Mathastext@declare\Mathastext@ }
+\def\Mathastext {\@ifnextchar[\Mathastext@declare\Mathastext@}% ]
\def\Mathastext@declare [#1]{%
\edef\mst@tmp{#1}%
\ifx\mst@tmp\empty
@@ -2290,7 +2637,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\fi
\Mathastext@
{\MTDeclareVersion[\mst@ltsh]{#1}{\mst@enc}{\mst@fam}{\mst@ser}{\mst@opsh}}%
-}% \Mathastext@declare
+}%
\def\Mathastext@ {%
\mst@update@greeksh
\edef\mst@encoding@normal{\mst@enc}%
@@ -2326,7 +2673,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\def\mst@exists@skip@bold{0mu}%
\def\mst@forall@skip@bold{0mu}%
\def\mst@prime@skip@bold{0mu}%
- \else % not subdued
+ \else
\ifmst@italic
\ifmst@frenchmath
\mst@exists@muskip\mst@exists@skip\relax
@@ -2403,7 +2750,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
{\mst@ttdefault@bold}%
{\mst@series@bold}%
{\mst@shape@bold}%
- \fi % de \ifmst@subdued
+ \fi
\ifmst@needeuler
\SetSymbolFont{mteulervm}{bold}{U}{zeur}{\mst@boldvariant@normal}{n}%
\SetMathAlphabet{\MathEulerBold}{normal}%
@@ -2467,7 +2814,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\mst@infoline{Other characters (digits, ...) and \string\log-like names will be}%
\mst@infoline{typeset with the \mst@shape@normal\space shape.}%
\fi
- \fi % end of else branch \ifmst@subdued
+ \fi
\ifmst@nohbar\else
\mst@infoline{\string\hbar}%
\mst@dothe@hbarstuff
@@ -2502,7 +2849,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\let\mst@varfam@minus@mvbold\mst@varfam@minus@mvnormal
\fi
\fi
- \fi % minus
+ \fi
\ifmst@subdued
\mst@infoline{Subdued `normal\string' and `bold\string' math versions.}%
\fi
@@ -2510,7 +2857,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\mst@infoline{The \ifmst@frenchmath frenchmath \else
italic \fi option is in effect.}%
\fi
-}% \Mathastext@
+}%
\let\mathastext\Mathastext
\Mathastext
\ifmst@eulergreek
@@ -2562,6 +2909,7 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\MTnonlettersdonotobeymathxx
\MTeasynonlettersdonotobeymathxx
\MTmathstandardletters
+ \MTmathstandarddigits
\MTdonotfixfonts
}%
\AtBeginDocument {%
@@ -2574,19 +2922,22 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\MTprimedoesskip
\MTeasynonlettersobeymathxx
\MTicinmath
+ \MTmathactivedigits
\MTfixfonts
}%
+\ifmst@everymath
+ \AtBeginDocument{%
+ \everymath\expandafter{\the\everymath
+ \mst@the\mst@do@nonletters \let\mst@the\@gobble
+ \mst@theeasy\mst@do@easynonletters \let\mst@theeasy\@gobble
+ }%
+ \everydisplay\expandafter{\the\everydisplay
+ \mst@the\mst@do@nonletters \let\mst@the\@gobble
+ \mst@theeasy\mst@do@easynonletters \let\mst@theeasy\@gobble
+ }%
+ }
+\fi
\AtBeginDocument{%
- \everymath\expandafter{\the\everymath
- \mst@the\mst@do@nonletters \let\mst@the\@gobble
- \mst@theeasy\mst@do@easynonletters \let\mst@theeasy\@gobble
- \mst@thef\mst@do@az \let\mst@thef\@gobble
- \mst@theF\mst@do@AZ \let\mst@theF\@gobble}%
- \everydisplay\expandafter{\the\everydisplay
- \mst@the\mst@do@nonletters \let\mst@the\@gobble
- \mst@theeasy\mst@do@easynonletters \let\mst@theeasy\@gobble
- \mst@thef\mst@do@az \let\mst@thef\@gobble
- \mst@theF\mst@do@AZ \let\mst@theF\@gobble}%
\MTcustomizenewmcodes
\let\mst@original@hbar\hbar
\let\mst@original@imath\imath
@@ -2610,14 +2961,11 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\MTresetnewmcodes
\MTnoicinmath
\MTmathoperatorsdonotobeymathxx
- %\mst@subduedhbar
\let\inodot\imath
\let\jnodot\jmath
- %\mst@subduedmathaccents
\mst@subduedminus
\else
\mst@nonsubduedhbar
- % \mst@nonsubduedmathaccents % will get executed later
\mst@nonsubduedminus
\ifx\mst@itcorr\@undefined
\def\mst@itcorr{\ifnum\fam=\m@ne\/\fi}%
@@ -2633,10 +2981,10 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\fi
\fi
\fi
-}% \AtBeginDocument
+}%
\AtEndOfPackage{\AtBeginDocument{\ifmst@subdued\else\mst@nonsubduedmathaccents\fi}}%
\ifmst@subdued
-\AtBeginDocument{%
+ \AtBeginDocument{%
\def\mst@reserved#1\getanddefine@fonts\symletters#2#3\@nil{%
\def\mst@normalmv@letter{#2}}%
\expandafter\mst@reserved\mv@normal\@nil
@@ -2675,15 +3023,19 @@ defaultbf,defaultit,defaultsf,defaulttt}}
\else
\mst@tmp@enc
\fi/\mst@reste\endcsname}%
- \expandafter\SetSymbolFont@ \expandafter\mv@normal\mst@normalmv@letter\symmtletterfont
- \expandafter\SetSymbolFont@ \expandafter\mv@bold\mst@boldmv@letter\symmtletterfont
- \expandafter\SetSymbolFont@ \expandafter\mv@normal\mst@normalmv@operator\symmtoperatorfont
- \expandafter\SetSymbolFont@ \expandafter\mv@bold\mst@boldmv@operator\symmtoperatorfont
-\immediate\write\m@ne{}%
+ \expandafter\SetSymbolFont@
+ \expandafter\mv@normal\mst@normalmv@letter\symmtletterfont
+ \expandafter\SetSymbolFont@
+ \expandafter\mv@bold\mst@boldmv@letter\symmtletterfont
+ \expandafter\SetSymbolFont@
+ \expandafter\mv@normal\mst@normalmv@operator\symmtoperatorfont
+ \expandafter\SetSymbolFont@
+ \expandafter\mv@bold\mst@boldmv@operator\symmtoperatorfont
+ \immediate\write\m@ne{}%
\PackageInfo{mathastext}{...entering subdued mode...\MessageBreak ...done}%
-\immediate\write\m@ne{}%
-}% \AtBeginDocument
-\fi % \ifmst@subdued
+ \immediate\write\m@ne{}%
+ }%
+\fi
\expandafter \gdef \expandafter \@preamblecmds \expandafter {\@preamblecmds
\do\MTitgreek
\do\MTupgreek
diff --git a/Master/texmf-dist/tex/latex/media9/media9.sty b/Master/texmf-dist/tex/latex/media9/media9.sty
index c1e00febb4e..1ee3b2e3f3a 100644
--- a/Master/texmf-dist/tex/latex/media9/media9.sty
+++ b/Master/texmf-dist/tex/latex/media9/media9.sty
@@ -4,7 +4,6 @@
\bool_if:nTF{
\bool_lazy_and_p:nn {\cs_if_exist_p:N \pdfmanagement_if_active_p:} { \pdfmanagement_if_active_p: }
}{\@mix@testphasetrue}{
-%\input{media9.old.tex}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% media9.sty
@@ -39,8 +38,8 @@
%
% The Current Maintainer of this work is A. Grahn.
-\def\g@mix@date@tl{2022/08/04}
-\def\g@mix@version@tl{1.25}
+\def\g@mix@date@tl{2024/09/16}
+\def\g@mix@version@tl{1.29}
\NeedsTeXFormat{LaTeX2e}[2022-06-01]
\ProvidesExplPackage{media9}{\g@mix@date@tl}{\g@mix@version@tl}
@@ -52,7 +51,7 @@
% package options
\msg_set:nnnn{media9}{unknown~package~option}{Unknown~package~option~`#1'.}{
- Package option~'#1'~is~unknown;\\
+ Package~option~'#1'~is~unknown;\\
perhaps~it~is~spelled~incorrectly.
}
@@ -2446,8 +2445,8 @@
%
% The Current Maintainer of this work is A. Grahn.
-\def\g@mix@date@tl{2022/08/04}
-\def\g@mix@version@tl{1.25}
+\def\g@mix@date@tl{2024/09/16}
+\def\g@mix@version@tl{1.29}
\NeedsTeXFormat{LaTeX2e}[2022-06-01]
\ProvidesExplPackage{media9}{\g@mix@date@tl}{\g@mix@version@tl}
@@ -2459,7 +2458,7 @@
% package options
\msg_set:nnnn{media9}{unknown~package~option}{Unknown~package~option~`#1'.}{
- Package option~'#1'~is~unknown;\\
+ Package~option~'#1'~is~unknown;\\
perhaps~it~is~spelled~incorrectly.
}
diff --git a/Master/texmf-dist/tex/latex/media9/pdfbase.sty b/Master/texmf-dist/tex/latex/media9/pdfbase.sty
index 67ff708ad51..31b5e23deed 100644
--- a/Master/texmf-dist/tex/latex/media9/pdfbase.sty
+++ b/Master/texmf-dist/tex/latex/media9/pdfbase.sty
@@ -156,8 +156,8 @@
%
% The Current Maintainer of this work is A. Grahn.
-\def\g@pbs@date@tl{2022/08/04}
-\def\g@pbs@version@tl{0.55}
+\def\g@pbs@date@tl{2024/09/16}
+\def\g@pbs@version@tl{0.59}
\NeedsTeXFormat{LaTeX2e}[2022-06-01]
\ProvidesExplPackage{pdfbase}{\g@pbs@date@tl}{\g@pbs@version@tl}
@@ -168,7 +168,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\msg_gset:nnnn{pdfbase}{unknown~package~option}{Unknown~package~option~`#1'.}{
- Package option~'#1'~is~unknown;\\
+ Package~option~'#1'~is~unknown;\\
perhaps~it~is~spelled~incorrectly.
}
@@ -220,11 +220,11 @@
{dvipdfmx}{
\bool_gset_true:N\g_pbs_dvipdfmx_bool
\bool_gset_false:N\g_pbs_dvisvgm_bool
- }
+ }
{dvisvgm}{
\bool_gset_false:N\g_pbs_dvipdfmx_bool
\bool_gset_true:N\g_pbs_dvisvgm_bool
- }
+ }
}{ % otherwise let the L3 backend code decide
\str_case_e:nn{\c_sys_backend_str}{
{dvisvgm}{
@@ -270,6 +270,12 @@
\seq_new:N\g_pbs_bop_seq
\seq_new:N\g_pbs_eop_seq
+% column (boc, eoc) hooks
+\cs_new_protected:Nn\pbs_boc_action:n{\seq_gput_right:Nn\g_pbs_boc_seq{#1}}
+\cs_new_protected:Nn\pbs_eoc_action:n{\seq_gput_right:Nn\g_pbs_eoc_seq{#1}}
+\seq_new:N\g_pbs_boc_seq
+\seq_new:N\g_pbs_eoc_seq
+
\bool_new:N\g_pbs_lscape_bool %if we are inside landscape env
\bool_new:N\g_pbs_ocgbase_loaded_bool
\AtBeginDocument{
@@ -1105,8 +1111,8 @@
\mode_leave_vertical: % resources are managed automatically
%rescale box to fit within the papersize while distilling
\tl_gset:cx{scale_{pbs@obj\int_use:N\g_pbs_obj_int}}{\fp_eval:n{min(1.0,
- \dim_ratio:nn{\paperwidth}{\box_wd:N#5},
- \dim_ratio:nn{\paperheight}{\box_ht:N#5+\box_dp:N#5}
+ \dim_ratio:nn{\paperwidth}{\box_wd:N#5}/\the\mag*1000,
+ \dim_ratio:nn{\paperheight}{\box_ht:N#5+\box_dp:N#5}/\the\mag*1000
)}}
\box_scale:Nnn#5{
\tl_use:c{scale_{pbs@obj\int_use:N\g_pbs_obj_int}}
@@ -1302,33 +1308,38 @@
\tl_gput_left:Nx\g_pbs_fields_tl{#1\space}
}
-%modify output routine for output box insertions
-\bool_new:N\l_pbs_is_vertical_bool
+% modify page output routine for inserting actions at begin and end
\cs_set_eq:NN\pbs_outputpage_orig:\@outputpage
\cs_set_protected_nopar:Npn\@outputpage{
\int_gincr:N\g_pbs_page_int
- \box_if_vertical:cTF{@outputbox}{
- \bool_set_true:N\l_pbs_is_vertical_bool
- }{
- \bool_set_false:N\l_pbs_is_vertical_bool
- }
- \hbox_set:Nn\@outputbox{
+ \vbox_set:Nn\@outputbox{
%begin of page
- \hbox_overlap_right:n{\seq_map_inline:Nn\g_pbs_bop_seq{##1}}
+ \seq_map_inline:Nn\g_pbs_bop_seq{##1}
\box_use_drop:N\@outputbox
%end of page
- \hbox_overlap_right:n{\seq_map_inline:Nn\g_pbs_eop_seq{##1}}
- }
- \bool_if:NT\l_pbs_is_vertical_bool{
- \vbox_set:Nn\@outputbox{\box_use_drop:N\@outputbox}
+ \seq_map_inline:Nn\g_pbs_eop_seq{##1}
}
\pbs_outputpage_orig:
}
+% modify column making routine for inserting actions at begin and end
+\cs_set_eq:NN\pbs_makecol_orig:\@makecol
+\cs_set_protected_nopar:Npn\@makecol{
+ \vbox_set:Nn\@cclv{
+ %begin of column
+ \seq_map_inline:Nn\g_pbs_boc_seq{##1}
+ \vbox_unpack_drop:N\@cclv
+ %end of column
+ \seq_map_inline:Nn\g_pbs_eoc_seq{##1}
+ }
+ \pbs_makecol_orig:
+}
+
\AddToHook{shipout/foreground}{
%insert /Properties into current page's resources
\put(0,0){\pbs_insert_properties_entry:}
}
+
\AddToHook{shipout/background}{
% workaround for curious AR bug (pdf annot or link placed on
% OCG remains active although OCG is hidden)
@@ -1336,8 +1347,15 @@
% somewhere on the page.
\bool_if:NT\g_pbs_ocgbase_loaded_bool{
\put(1,-1){
+ \tl_if_exist:NF\g_pbs_blank_xform_tl{
+ \hbox_set:Nn\l_tmpa_box{\phantom{\rule{1pt}{1pt}}}
+ \pbs_pdfxform:nnnnn{0}{1}{}{}{\l_tmpa_box}
+ \tl_const:Ne\g_pbs_blank_xform_tl{\pbs_pdflastxform:}
+ }
\pbs_pdfannot:nnnn{3bp}{\c_zero_dim}{3bp}{
- /Ff~65537/FT/Btn/Subtype/Widget
+ /Ff~65537/FT/Btn/Subtype/Widget/F~4
+ /A~<</S/ResetForm>>% to make pdf.js happy
+ /AP~<</N~<</On~\g_pbs_blank_xform_tl>>>>/AS/On
/T~(pbs@ARFix@\int_use:N\g_pbs_page_int)
}
}
@@ -1435,8 +1453,8 @@
% `fstream', then
% {stream attributes as PDF key-value dictionary}{file name}
%
-% if #3 && #1 are both empty, an object reference will be reserved for later
-% use as #1
+% if #3 && #1 are both empty, an object reference will be reserved for
+% later use as #1
%
% \pbs_pdflastobj:
% inserts object ID of PDF object created/processed during most recent call
@@ -1471,9 +1489,9 @@
% --------
%
% \pbs_pdfxform:nnnnn
-% #1: add pgf/tikz resources (transparency, shading)? (0|1) %dvipdfmx/xetex
+% #1: add pgf/tikz resources (transparency, shading)? (0|1); dvipdfmx/xetex
% #2: write immediately to PDF? (0|1); eg 1 for appearances; pdftex/luatex
-% #3: additional resources %all BUT dvips
+% #3: additional resources; all BUT dvips
% #4: additional dictionary entries
% #5: savebox number
% creates PDF Form XObject from savebox content
@@ -1539,8 +1557,8 @@
%
% The Current Maintainer of this work is A. Grahn.
-\def\g@pbs@date@tl{2022/08/04}
-\def\g@pbs@version@tl{0.55}
+\def\g@pbs@date@tl{2024/09/16}
+\def\g@pbs@version@tl{0.59}
\NeedsTeXFormat{LaTeX2e}[2022-06-01]
\ProvidesExplPackage{pdfbase}{\g@pbs@date@tl}{\g@pbs@version@tl}
@@ -1551,7 +1569,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\msg_gset:nnnn{pdfbase}{unknown~package~option}{Unknown~package~option~`#1'.}{
- Package option~'#1'~is~unknown;\\
+ Package~option~'#1'~is~unknown;\\
perhaps~it~is~spelled~incorrectly.
}
@@ -1603,11 +1621,11 @@
{dvipdfmx}{
\bool_gset_true:N\g_pbs_dvipdfmx_bool
\bool_gset_false:N\g_pbs_dvisvgm_bool
- }
+ }
{dvisvgm}{
\bool_gset_false:N\g_pbs_dvipdfmx_bool
\bool_gset_true:N\g_pbs_dvisvgm_bool
- }
+ }
}{ % otherwise let the L3 backend code decide
\str_case_e:nn{\c_sys_backend_str}{
{dvisvgm}{
@@ -1653,8 +1671,16 @@
\seq_new:N\g_pbs_bop_seq
\seq_new:N\g_pbs_eop_seq
-\bool_new:N\g_pbs_lscape_bool %if we are inside landscape env
+% column (boc, eoc) hooks
+\cs_new_protected:Nn\pbs_boc_action:n{\seq_gput_right:Nn\g_pbs_boc_seq{#1}}
+\cs_new_protected:Nn\pbs_eoc_action:n{\seq_gput_right:Nn\g_pbs_eoc_seq{#1}}
+\seq_new:N\g_pbs_boc_seq
+\seq_new:N\g_pbs_eoc_seq
+
\bool_new:N\g_pbs_ocgbase_loaded_bool
+\AddToHook{package/ocgbase/after}{\bool_gset_true:N\g_pbs_ocgbase_loaded_bool}
+
+\bool_new:N\g_pbs_lscape_bool %if we are inside landscape env
\AtBeginDocument{
\iow_now:Nx\@mainaux{
\token_to_str:N\providecommand\token_to_str:N\pbs@newkey[2]{}
@@ -1666,7 +1692,6 @@
\tl_put_right:Nn\landscape{\bool_gset_true:N\g_pbs_lscape_bool}
\tl_put_left:Nn\endlandscape{\bool_gset_false:N\g_pbs_lscape_bool}
}
- \@ifpackageloaded{ocgbase}{\bool_gset_true:N\g_pbs_ocgbase_loaded_bool}{}
}
% writing to core objects in the PDF, using the new pdfmanagement interface
@@ -1851,7 +1876,9 @@
\xsb_addto_props:n{/rm@oc\int_use:N\g_pbs_oc_int\space#2}
\int_gincr:N\g_pbs_oc_int
}{
- \pdf_bdcobject:nx{#1}{\tl_use:c{g_pbs_objname_#2_tl}}
+ \tl_if_exist:cT{g_pbs_objname_#2_tl}{
+ \exp_args:Nne\pdf_bdcobject:nn{#1}{\tl_use:c{g_pbs_objname_#2_tl}}
+ }
}
}
@@ -1868,9 +1895,7 @@
%pgf + transparency related settings
\bool_new:N\g_pbs_pgfloaded_bool
\bool_gset_false:N\g_pbs_pgfloaded_bool
- \AtBeginDocument{
- \@ifpackageloaded{pgf}{\bool_gset_true:N\g_pbs_pgfloaded_bool}{}
- }
+ \AddToHook{package/pgf/after}{\bool_gset_true:N\g_pbs_pgfloaded_bool}
\int_new:N\g_pbs_obj_int %object ID
\bool_if:NTF\g_pbs_dvipdfmx_bool{ %dvipdfmx/XeTeX
\AtBeginDocument{
@@ -2042,7 +2067,9 @@
}
\cs_new_protected_nopar:Nn\pbs_pdfbdc:nn{
- \pdf_bdcobject:nx{#1}{\tl_use:c{g_pbs_objname_#2_tl}}
+ \tl_if_exist:cT{g_pbs_objname_#2_tl}{
+ \exp_args:Nne\pdf_bdcobject:nn{#1}{\tl_use:c{g_pbs_objname_#2_tl}}
+ }
}
}{
\bool_if:NTF\g_pbs_dvisvgm_bool{
@@ -2436,8 +2463,8 @@
\mode_leave_vertical: % resources are managed automatically
%rescale box to fit within the papersize while distilling
\tl_gset:cx{scale_{pbs@obj\int_use:N\g_pbs_obj_int}}{\fp_eval:n{min(1.0,
- \dim_ratio:nn{\paperwidth}{\box_wd:N#5},
- \dim_ratio:nn{\paperheight}{\box_ht:N#5+\box_dp:N#5}
+ \dim_ratio:nn{\paperwidth}{\box_wd:N#5}/\the\mag*1000,
+ \dim_ratio:nn{\paperheight}{\box_ht:N#5+\box_dp:N#5}/\the\mag*1000
)}}
\box_scale:Nnn#5{
\tl_use:c{scale_{pbs@obj\int_use:N\g_pbs_obj_int}}
@@ -2602,7 +2629,6 @@
}
}
}
-\cs_generate_variant:Nn\pdf_bdcobject:nn{nx}
\cs_new_eq:NN\pbs_pdfemc:\pdf_emc:
\cs_new_nopar:Nn\pbs_pdflastobj:{\g_pbs_pdflastobj_tl}
@@ -2610,29 +2636,33 @@
\cs_new_nopar:Nn\pbs_pdflastxform:{\g_pbs_pdflastxform_tl}
\cs_new_nopar:Nn\pbs_pdflastximage:{\g_pbs_pdflastximage_tl}
-%modify output routine for output box insertions
-\bool_new:N\l_pbs_is_vertical_bool
+% modify page output routine for inserting actions at begin and end
\cs_set_eq:NN\pbs_outputpage_orig:\@outputpage
\cs_set_protected_nopar:Npn\@outputpage{
\int_gincr:N\g_pbs_page_int
- \box_if_vertical:cTF{@outputbox}{
- \bool_set_true:N\l_pbs_is_vertical_bool
- }{
- \bool_set_false:N\l_pbs_is_vertical_bool
- }
- \hbox_set:Nn\@outputbox{
+ \vbox_set:Nn\@outputbox{
%begin of page
- \hbox_overlap_right:n{\seq_map_inline:Nn\g_pbs_bop_seq{##1}}
+ \seq_map_inline:Nn\g_pbs_bop_seq{##1}
\box_use_drop:N\@outputbox
%end of page
- \hbox_overlap_right:n{\seq_map_inline:Nn\g_pbs_eop_seq{##1}}
- }
- \bool_if:NT\l_pbs_is_vertical_bool{
- \vbox_set:Nn\@outputbox{\box_use_drop:N\@outputbox}
+ \seq_map_inline:Nn\g_pbs_eop_seq{##1}
}
\pbs_outputpage_orig:
}
+% modify column making routine for inserting actions at begin and end
+\cs_set_eq:NN\pbs_makecol_orig:\@makecol
+\cs_set_protected_nopar:Npn\@makecol{
+ \vbox_set:Nn\@cclv{
+ %begin of column
+ \seq_map_inline:Nn\g_pbs_boc_seq{##1}
+ \vbox_unpack_drop:N\@cclv
+ %end of column
+ \seq_map_inline:Nn\g_pbs_eoc_seq{##1}
+ }
+ \pbs_makecol_orig:
+}
+
\AddToHook{shipout/background}{
% workaround for curious AR bug (pdf annot or link placed on
% OCG remains active although OCG is hidden)
@@ -2640,8 +2670,14 @@
% somewhere on the page.
\bool_if:NT\g_pbs_ocgbase_loaded_bool{
\put(1,-1){
+ \tl_if_exist:NF\g_pbs_blank_xform_tl{
+ \hbox_set:Nn\l_tmpa_box{\phantom{\rule{1pt}{1pt}}}
+ \pbs_pdfxform:nnnnn{0}{1}{}{}{\l_tmpa_box}
+ \tl_const:Ne\g_pbs_blank_xform_tl{\pbs_pdflastxform:}
+ }
\pbs_pdfannot:nnnn{3bp}{\c_zero_dim}{3bp}{
- /Ff~65537/FT/Btn/Subtype/Widget
+ /Ff~65537/FT/Btn/Subtype/Widget/F~4
+ /AP~<</N~<</On~\g_pbs_blank_xform_tl>>>>/AS/On
/T~(pbs@ARFix@\int_use:N\g_pbs_page_int)
}
}
diff --git a/Master/texmf-dist/tex/latex/mercatormap/mercatormap.sty b/Master/texmf-dist/tex/latex/mercatormap/mercatormap.sty
index d2c8d61ae4c..b9f77b9715a 100644
--- a/Master/texmf-dist/tex/latex/mercatormap/mercatormap.sty
+++ b/Master/texmf-dist/tex/latex/mercatormap/mercatormap.sty
@@ -1,8 +1,8 @@
-%% The LaTeX package mercatormap - version 1.02 (2020/08/06)
+%% The LaTeX package mercatormap - version 1.2.0 (2024/08/05)
%% mercatormap.sty: geographic coordinates (Mercator projection) and map tiles for TikZ pictures
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2020-2024 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -17,24 +17,11 @@
%%
%% This work consists of all files listed in README
%%
-\RequirePackage{expl3}[2020/02/25]
-\RequirePackage{xparse}
-\ProvidesExplPackage{mercatormap}{2020/08/06}{1.02}
+\NeedsTeXFormat{LaTeX2e}[2023-11-01]
+\ProvidesExplPackage{mercatormap}{2024/08/05}{1.2.0}
{A Web Mercator projection package with map tile support}
-\@ifpackagelater { expl3 } { 2020/02/25 }
- { }
- {
- \PackageError { mercatormap } { Support~package~expl3~too~old }
- {
- You~need~to~update~your~installation~of~the~bundles~'l3kernel'~and~
- 'l3packages'.\MessageBreak
- Loading~mercatormap~will~abort!
- }
- \tex_endinput:D
- }
-\RequirePackage{siunitx}
-\RequirePackage{graphicx,tikz,pdftexcmds}
+\RequirePackage{siunitx,graphicx,tikz}
\ExplSyntaxOff
% space character problem if within explSyntax
@@ -51,8 +38,23 @@
\NewDocumentCommand\mermapsetmarker{ m } { \keys_set:nn { mermap/marker } {#1} }
-%---- constants ----------------------------------------------------------------
+%---- scratch variables --------------------------------------------------------
+
+\box_new:N \l__mermap_tmpa_box
+
+\clist_new:N \l__mermap_tmpa_clist
+\dim_new:N \l__mermap_tmpa_dim
+\dim_new:N \l__mermap_tmpb_dim
+
+\fp_new:N \l__mermap_tmpa_fp
+\fp_new:N \l__mermap_tmpb_fp
+
+\tl_new:N \g__mermap_tmpa_tl
+\tl_new:N \l__mermap_tmpa_tl
+\tl_new:N \l__mermap_tmpb_tl
+
+%---- constants ----------------------------------------------------------------
\fp_const:Nn \c__mermap_scale_radius_fp { 6371*pi/180 }
\fp_const:Nn \c__mermap_mean_radius_fp { 637100000cm }
@@ -235,16 +237,16 @@
\cs_new_nopar:Npn \__mermap_longitude_to_x:n #1
{
- \fp_set:Nn \l_tmpa_fp { #1-\l__mermap_mapwest_fp }
- \fp_sub:Nn \l_tmpa_fp { 360*floor(\l_tmpa_fp/360) }
- \fp_set:Nn \l_tmpa_fp
- { \l_tmpa_fp>\l__mermap_westeast_fp
- ?(\l_tmpa_fp-\l__mermap_westeast_fp>360-\l_tmpa_fp
- ?\l_tmpa_fp-360
- :\l_tmpa_fp)
- :\l_tmpa_fp
+ \fp_set:Nn \l__mermap_tmpa_fp { #1-\l__mermap_mapwest_fp }
+ \fp_sub:Nn \l__mermap_tmpa_fp { 360*floor(\l__mermap_tmpa_fp/360) }
+ \fp_set:Nn \l__mermap_tmpa_fp
+ { \l__mermap_tmpa_fp>\l__mermap_westeast_fp
+ ?(\l__mermap_tmpa_fp-\l__mermap_westeast_fp>360-\l__mermap_tmpa_fp
+ ?\l__mermap_tmpa_fp-360
+ :\l__mermap_tmpa_fp)
+ :\l__mermap_tmpa_fp
}
- \fp_set:Nn \l__mermap_cs_x_fp { \l_tmpa_fp*\l__mermap_cs_xfactor_fp }
+ \fp_set:Nn \l__mermap_cs_x_fp { \l__mermap_tmpa_fp*\l__mermap_cs_xfactor_fp }
}
@@ -328,7 +330,7 @@
}
-\prg_new_conditional:Npnn \__mermap_if_in_map:nn #1#2 { p, TF }
+\prg_new_conditional:Npnn \__mermap_if_in_map:nn #1#2 { p, T, F, TF }
{
\fp_compare:nNnTF {#1} > \l__mermap_mapnorth_fp
{
@@ -340,14 +342,14 @@
\prg_return_false:
}
{
- \fp_set:Nn \l_tmpa_fp { #2-\l__mermap_mapwest_fp }
- \fp_sub:Nn \l_tmpa_fp { 360*floor(\l_tmpa_fp/360) }
- \fp_compare:nNnTF \l_tmpa_fp > \l__mermap_westeast_fp
+ \fp_set:Nn \l__mermap_tmpa_fp { #2-\l__mermap_mapwest_fp }
+ \fp_sub:Nn \l__mermap_tmpa_fp { 360*floor(\l__mermap_tmpa_fp/360) }
+ \fp_compare:nNnTF \l__mermap_tmpa_fp > \l__mermap_westeast_fp
{
\prg_return_false:
}
{
- \fp_set:Nn \l__mermap_cs_x_fp { \l_tmpa_fp*\l__mermap_cs_xfactor_fp }
+ \fp_set:Nn \l__mermap_cs_x_fp { \l__mermap_tmpa_fp*\l__mermap_cs_xfactor_fp }
\__mermap_latitude_to_y:n {#1}
\pgfnoderename{mrclastpos}{mrcpos}
\pgfcoordinate{mrcpos}{
@@ -366,7 +368,7 @@
}
-\prg_new_conditional:Npnn \__mermap_if_in_vicinity:nn #1#2 { p, TF }
+\prg_new_conditional:Npnn \__mermap_if_in_vicinity:nn #1#2 { p, T, F, TF }
{
\fp_compare:nNnTF {#1} > \l__mermap_vic_north_fp
{
@@ -378,14 +380,14 @@
\prg_return_false:
}
{
- \fp_set:Nn \l_tmpa_fp { #2-\l__mermap_vic_west_fp }
- \fp_sub:Nn \l_tmpa_fp { 360*floor(\l_tmpa_fp/360) }
- \fp_compare:nNnTF \l_tmpa_fp > \l__mermap_vic_westeast_fp
+ \fp_set:Nn \l__mermap_tmpa_fp { #2-\l__mermap_vic_west_fp }
+ \fp_sub:Nn \l__mermap_tmpa_fp { 360*floor(\l__mermap_tmpa_fp/360) }
+ \fp_compare:nNnTF \l__mermap_tmpa_fp > \l__mermap_vic_westeast_fp
{
\prg_return_false:
}
{
- \fp_set:Nn \l__mermap_cs_x_fp { \l_tmpa_fp*\l__mermap_cs_xfactor_fp - \l__mermap_vic_dim_fp }
+ \fp_set:Nn \l__mermap_cs_x_fp { \l__mermap_tmpa_fp*\l__mermap_cs_xfactor_fp - \l__mermap_vic_dim_fp }
\__mermap_latitude_to_y:n {#1}
\pgfnoderename{mrclastpos}{mrcpos}
\pgfcoordinate{mrcpos}{
@@ -443,19 +445,13 @@
\NewExpandableDocumentCommand \mrcNPlat { m }
{
- \cs_if_exist_use:cF{__mermap__lat__#1}
- {
- \msg_error:nnx{ mercatormap }{ np-undefined }{ #1 }
- }
+ \cs_if_exist_use:cF{ __mermap__lat__#1 }{ 0 }
}
\NewExpandableDocumentCommand \mrcNPlon { m }
{
- \cs_if_exist_use:cF{__mermap__lon__#1}
- {
- \msg_error:nnx{ mercatormap }{ np-undefined }{ #1 }
- }
+ \cs_if_exist_use:cF{ __mermap__lon__#1 }{ 0 }
}
@@ -465,15 +461,75 @@
}
+\prg_new_conditional:Npnn \__mermap_if_NP_exists:n #1 { p, TF }
+ {
+ \cs_if_exist:cTF{ __mermap__lat__#1 }
+ {
+ \cs_if_exist:cTF{ __mermap__lon__#1 }
+ {
+ \prg_return_true:
+ }
+ {
+ \prg_return_false:
+ }
+ }
+ {
+ \prg_return_false:
+ }
+ }
+
+
+\NewDocumentCommand{\ifmrcNPexists}{ m }
+ {
+ \__mermap_if_NP_exists:nTF{ #1 }
+ }
+
+
+\prg_new_conditional:Npnn \__mermap_if_NP_in_map:n #1 { p, TF }
+ {
+ \__mermap_if_NP_exists:nTF { #1 }
+ {
+ \__mermap_if_in_map:nnTF{ \mrcNPlat{#1} }{ \mrcNPlon{#1} }
+ {
+ \prg_return_true:
+ }
+ {
+ \prg_return_false:
+ }
+ }
+ {
+ \prg_return_false:
+ }
+ }
+
+
\NewDocumentCommand{\ifmrcNPinmap}{ m }
{
- \__mermap_if_in_map:nnTF{\mrcNPlat{#1}}{\mrcNPlon{#1}}
+ \__mermap_if_NP_in_map:nTF { #1 }
+ }
+
+
+\prg_new_conditional:Npnn \__mermap_if_NP_in_vicinity:n #1 { p, TF }
+ {
+ \__mermap_if_NP_exists:nTF { #1 }
+ {
+ \__mermap_if_in_vicinity:nnTF{ \mrcNPlat{#1} }{ \mrcNPlon{#1} }
+ {
+ \prg_return_true:
+ }
+ {
+ \prg_return_false:
+ }
+ }
+ {
+ \prg_return_false:
+ }
}
\NewDocumentCommand{\ifmrcNPinvicinity}{ m }
{
- \__mermap_if_in_vicinity:nnTF{\mrcNPlat{#1}}{\mrcNPlon{#1}}
+ \__mermap_if_NP_in_vicinity:nTF{ #1 }
}
@@ -485,7 +541,7 @@
\char_set_catcode_other:n {`\"}
\tl_const:Nn \c__mermap_supply_call_boundaries_tl
- {%
+ {
\l__mermap_python_tl\c_space_tl boundaries
-u "\str_use:N\l__mermap_supply_url_str"
-at "\str_use:N\l__mermap_supply_attribution_str"
@@ -503,7 +559,7 @@
}
\tl_const:Nn \c__mermap_supply_call_reference_tl
- {%
+ {
\l__mermap_python_tl\c_space_tl reference
-u "\str_use:N\l__mermap_supply_url_str"
-at "\str_use:N\l__mermap_supply_attribution_str"
@@ -523,7 +579,7 @@
\tl_const:Nn \c__mermap_supply_call_areafit_tl
- {%
+ {
\l__mermap_python_tl\c_space_tl areafit
-u "\str_use:N\l__mermap_supply_url_str"
-at "\str_use:N\l__mermap_supply_attribution_str"
@@ -604,11 +660,11 @@
\cs_new:Npn \__mermap_supply_url_with_api_key:nnn #1#2#3
{
\str_set:Nn \l__mermap_supply_url_str {#1}
- \prop_get:NnNF \g__mermap_apikey_prop {#2} \l_tmpa_tl
+ \prop_get:NnNF \g__mermap_apikey_prop {#2} \l__mermap_tmpa_tl
{
\msg_error:nnx{ mercatormap }{ api-key-undefined }{ #2 }
}
- \str_put_right:NV \l__mermap_supply_url_str \l_tmpa_tl
+ \str_put_right:NV \l__mermap_supply_url_str \l__mermap_tmpa_tl
\str_put_right:Nn \l__mermap_supply_url_str {#3}
}
@@ -621,16 +677,16 @@
{
\msg_error:nnx{ mercatormap }{ np-undefined }{ ##1 }
}
- \fp_set:Nn \l_tmpa_fp { \mrcNPlat{##1} }
- \fp_compare:nNnT \l_tmpa_fp < \l__mermap_supply_south_fp
- { \fp_set_eq:NN \l__mermap_supply_south_fp \l_tmpa_fp }
- \fp_compare:nNnT \l_tmpa_fp > \l__mermap_supply_north_fp
- { \fp_set_eq:NN \l__mermap_supply_north_fp \l_tmpa_fp }
- \fp_set:Nn \l_tmpa_fp { \mrcNPlon{##1} }
- \fp_compare:nNnT \l_tmpa_fp < \l__mermap_supply_west_fp
- { \fp_set_eq:NN \l__mermap_supply_west_fp \l_tmpa_fp }
- \fp_compare:nNnT \l_tmpa_fp > \l__mermap_supply_east_fp
- { \fp_set_eq:NN \l__mermap_supply_east_fp \l_tmpa_fp }
+ \fp_set:Nn \l__mermap_tmpa_fp { \mrcNPlat{##1} }
+ \fp_compare:nNnT \l__mermap_tmpa_fp < \l__mermap_supply_south_fp
+ { \fp_set_eq:NN \l__mermap_supply_south_fp \l__mermap_tmpa_fp }
+ \fp_compare:nNnT \l__mermap_tmpa_fp > \l__mermap_supply_north_fp
+ { \fp_set_eq:NN \l__mermap_supply_north_fp \l__mermap_tmpa_fp }
+ \fp_set:Nn \l__mermap_tmpa_fp { \mrcNPlon{##1} }
+ \fp_compare:nNnT \l__mermap_tmpa_fp < \l__mermap_supply_west_fp
+ { \fp_set_eq:NN \l__mermap_supply_west_fp \l__mermap_tmpa_fp }
+ \fp_compare:nNnT \l__mermap_tmpa_fp > \l__mermap_supply_east_fp
+ { \fp_set_eq:NN \l__mermap_supply_east_fp \l__mermap_tmpa_fp }
}
}
@@ -662,14 +718,14 @@
{
\msg_error:nnn { mercatormap }{ input-area-marker }{ #1 }
}
- \tl_gset:Nx \g_tmpa_tl
+ \tl_gset:Nx \g__mermap_tmpa_tl
{
\exp_not:N\fp_set:Nn \exp_not:N\l__mermap_supply_west_fp { \fp_to_decimal:N\l__mermap_supply_west_fp }
\exp_not:N\fp_set:Nn \exp_not:N\l__mermap_supply_east_fp { \fp_to_decimal:N\l__mermap_supply_east_fp }
\exp_not:N\fp_set:Nn \exp_not:N\l__mermap_supply_south_fp { \fp_to_decimal:N\l__mermap_supply_south_fp }
\exp_not:N\fp_set:Nn \exp_not:N\l__mermap_supply_north_fp { \fp_to_decimal:N\l__mermap_supply_north_fp }
}
- \group_insert_after:N \g_tmpa_tl
+ \group_insert_after:N \g__mermap_tmpa_tl
\group_end:
}
@@ -715,18 +771,18 @@
_source .choice:,
area .code:n =
{
- \clist_set:Nn \l_tmpa_clist { #1 }
+ \clist_set:Nn \l__mermap_tmpa_clist { #1 }
\fp_set:Nn \l__mermap_supply_west_fp { inf }
\fp_set:Nn \l__mermap_supply_east_fp { -inf }
\fp_set:Nn \l__mermap_supply_south_fp { 89 }
\fp_set:Nn \l__mermap_supply_north_fp { -89 }
- \__mermap_supply_add_area_clist:N \l_tmpa_clist
+ \__mermap_supply_add_area_clist:N \l__mermap_tmpa_clist
},
area .value_required:n = true,
add~area .code:n =
{
- \clist_set:Nn \l_tmpa_clist { #1 }
- \__mermap_supply_add_area_clist:N \l_tmpa_clist
+ \clist_set:Nn \l__mermap_tmpa_clist { #1 }
+ \__mermap_supply_add_area_clist:N \l__mermap_tmpa_clist
},
area~from~marker~input .code:n =
{
@@ -756,20 +812,20 @@
flex~area~fit .code:n = {
\fp_compare:nNnF \l__mermap_tile_size_dim = \l__mermap_flex_tile_size_dim
{
- \fp_set:Nn \l_tmpa_fp { \l__mermap_tile_size_dim/\l__mermap_flex_tile_size_dim }
- \fp_set:Nn \l__mermap_supply_width_fp{\l__mermap_supply_width_fp*\l_tmpa_fp}
- \fp_set:Nn \l__mermap_supply_height_fp{\l__mermap_supply_height_fp*\l_tmpa_fp}
+ \fp_set:Nn \l__mermap_tmpa_fp { \l__mermap_tile_size_dim/\l__mermap_flex_tile_size_dim }
+ \fp_set:Nn \l__mermap_supply_width_fp{\l__mermap_supply_width_fp*\l__mermap_tmpa_fp}
+ \fp_set:Nn \l__mermap_supply_height_fp{\l__mermap_supply_height_fp*\l__mermap_tmpa_fp}
}
\fp_set:Nn \l__mermap_supply_width_fp{\l__mermap_supply_width_fp-(#1)/\l__mermap_flex_tile_size_dim}
\fp_set:Nn \l__mermap_supply_height_fp{\l__mermap_supply_height_fp-(#1)/\l__mermap_flex_tile_size_dim}
- \fp_set:Nn \l_tmpa_fp { min ( 180*\l__mermap_supply_width_fp / (\l__mermap_supply_east_fp-\l__mermap_supply_west_fp)
+ \fp_set:Nn \l__mermap_tmpa_fp { min ( 180*\l__mermap_supply_width_fp / (\l__mermap_supply_east_fp-\l__mermap_supply_west_fp)
, pi*\l__mermap_supply_height_fp / ln( tand(\l__mermap_supply_north_fp/2+45) / tand(\l__mermap_supply_south_fp/2+45) ) ) }
- \fp_set:Nn \l_tmpb_fp { ln(\l_tmpa_fp)/ln(2) }
- \fp_set:Nn \l_tmpb_fp { round(\l_tmpb_fp)/\l_tmpb_fp }
- \fp_set:Nn \l_tmpb_fp { \l_tmpa_fp^(\l_tmpb_fp-1+0.0000001) }
- \dim_set:Nn \l__mermap_tile_size_dim { \fp_to_dim:n { \l__mermap_flex_tile_size_dim / \l_tmpb_fp }}
- \fp_set:Nn \l__mermap_supply_width_fp { \l__mermap_supply_width_fp * \l_tmpb_fp + (#1)/\l__mermap_tile_size_dim }
- \fp_set:Nn \l__mermap_supply_height_fp { \l__mermap_supply_height_fp * \l_tmpb_fp + (#1)/\l__mermap_tile_size_dim }
+ \fp_set:Nn \l__mermap_tmpb_fp { ln(\l__mermap_tmpa_fp)/ln(2) }
+ \fp_set:Nn \l__mermap_tmpb_fp { round(\l__mermap_tmpb_fp)/\l__mermap_tmpb_fp }
+ \fp_set:Nn \l__mermap_tmpb_fp { \l__mermap_tmpa_fp^(\l__mermap_tmpb_fp-1+0.0000001) }
+ \dim_set:Nn \l__mermap_tile_size_dim { \fp_to_dim:n { \l__mermap_flex_tile_size_dim / \l__mermap_tmpb_fp }}
+ \fp_set:Nn \l__mermap_supply_width_fp { \l__mermap_supply_width_fp * \l__mermap_tmpb_fp + (#1)/\l__mermap_tile_size_dim }
+ \fp_set:Nn \l__mermap_supply_height_fp { \l__mermap_supply_height_fp * \l__mermap_tmpb_fp + (#1)/\l__mermap_tile_size_dim }
},
flex~area~fit .default:n = 0pt,
}
@@ -815,16 +871,13 @@
\msg_new:nnn { mercatormap }{ python-script }
- { Python~script~'maptiles.texpy'~is~created~(for~map~tile~download). }
+ { Python~script~'maptiles.texpy'~is~created~for~map~tile~download. }
\NewDocumentCommand \mrcactivatescript {}
{
\msg_info:nn { mercatormap }{ python-script }
- \group_begin:
- \def\@latex@warning@no@line##1{}% suppress filecontents warning
\file_input:n {\mrcpkgprefix mercatorpy.def}
- \group_end:
\bool_set_true:N \l__mermap_script_activated_bool
}
\@onlypreamble\mrcactivatescript
@@ -838,21 +891,21 @@
\cs_new:Npn \__mermap_create_definition_id:n #1
{
- \tl_set:Nx \l_tmpa_tl {#1}
- \tl_trim_spaces:N \l_tmpa_tl
- \str_set:Nx \l__mermap_definition_postfix_str {\tl_to_str:N \l_tmpa_tl}
+ \tl_set:Nx \l__mermap_tmpa_tl {#1}
+ \tl_trim_spaces:N \l__mermap_tmpa_tl
+ \str_set:Nx \l__mermap_definition_postfix_str {\tl_to_str:N \l__mermap_tmpa_tl}
\str_concat:NNN \l__mermap_definition_id_str
\l__mermap_definition_prefix_str \l__mermap_definition_postfix_str
}
\cs_new:Npn \__mermap_map:nn #1#2
{
- \tl_set:Nx \l_tmpa_tl {#2}
- \tl_trim_spaces:N \l_tmpa_tl
- \tl_if_empty:NT \l_tmpa_tl
+ \tl_set:Nx \l__mermap_tmpa_tl {#2}
+ \tl_trim_spaces:N \l__mermap_tmpa_tl
+ \tl_if_empty:NT \l__mermap_tmpa_tl
{
\int_gincr:N \g__mermap_automap_int
- \tl_set:Nx \l_tmpa_tl
+ \tl_set:Nx \l__mermap_tmpa_tl
{
automap-
\int_compare:nNnTF \g__mermap_automap_int<{10} {000}
@@ -865,7 +918,7 @@
\int_use:N \g__mermap_automap_int
}
}
- \str_set:Nx \l__mermap_definition_postfix_str {\tl_to_str:N \l_tmpa_tl}
+ \str_set:Nx \l__mermap_definition_postfix_str {\tl_to_str:N \l__mermap_tmpa_tl}
\str_concat:NNN \l__mermap_definition_id_str
\l__mermap_definition_prefix_str \l__mermap_definition_postfix_str
\__mermap_supplymap:n {#1}
@@ -886,12 +939,12 @@
{
\group_begin:
\keys_set:nn { mermap/supply } { #1 }
- \tl_set:Nx \l_tmpa_tl { \str_use:N\l__mermap_definition_id_str }
- \prop_if_in:NVT \g__mermap_definition_prop \l_tmpa_tl
+ \tl_set:Nx \l__mermap_tmpa_tl { \str_use:N\l__mermap_definition_id_str }
+ \prop_if_in:NVT \g__mermap_definition_prop \l__mermap_tmpa_tl
{
- \msg_warning:nnx { mercatormap }{ definition-id-used }{ \tl_use:N \l_tmpa_tl }
+ \msg_warning:nnx { mercatormap }{ definition-id-used }{ \tl_use:N \l__mermap_tmpa_tl }
}
- \prop_gput:NVn \g__mermap_definition_prop \l_tmpa_tl {}
+ \prop_gput:NVn \g__mermap_definition_prop \l__mermap_tmpa_tl {}
\bool_if:NT \l__mermap_script_activated_bool
{
\__mermap_supplymap_call:
@@ -927,10 +980,10 @@
\cs_new:Npn \__mermap_supplymap_call:
{
- \tl_set_eq:Nc \l_tmpa_tl {
+ \tl_set_eq:Nc \l__mermap_tmpa_tl {
c__mermap_supply_call_\l__mermap_supply_type_tl _tl }
- \tl_set:Nx \l__mermap_supply_call_tl \l_tmpa_tl
- \tl_set:Nx \l__mermap_mdfivesum_tl { \pdf@mdfivesum{\l__mermap_supply_call_tl} }
+ \tl_set:Nx \l__mermap_supply_call_tl \l__mermap_tmpa_tl
+ \tl_set:Nx \l__mermap_mdfivesum_tl { \str_mdfive_hash:e{\l__mermap_supply_call_tl} }
\file_if_exist:nTF {\l__mermap_definition_id_str.def}
{
\tl_clear:N \l__mermap_last_mdfivesum_tl
@@ -1031,8 +1084,8 @@
\cs_new_nopar:Npn \__mermap_set_flex_scale:nn #1#2
{
- \fp_set:Nn \l_tmpa_fp { 1+ln(\c__mermap_mean_radius_fp/#1*cosd(#2)*pi/\l__mermap_flex_tile_size_dim)/ln(2) }
- \keys_set:nn { mermap }{ flex~zoom=\l_tmpa_fp }
+ \fp_set:Nn \l__mermap_tmpa_fp { 1+ln(\c__mermap_mean_radius_fp/#1*cosd(#2)*pi/\l__mermap_flex_tile_size_dim)/ln(2) }
+ \keys_set:nn { mermap }{ flex~zoom=\l__mermap_tmpa_fp }
}
\use:x
@@ -1323,19 +1376,19 @@
\cs_new_nopar:Npn \__mermap_compute_network_step:nn #1#2
{
- \fp_set:Nn \l_tmpa_fp
+ \fp_set:Nn \l__mermap_tmpa_fp
{
min ( \l__mermap_network_pieces_int, round((#1)/\l__mermap_network_distance_dim) )
}
- \fp_set:Nn \l_tmpb_fp { (#2)/\l_tmpa_fp }
- \fp_set:Nn \l_tmpa_fp { floor(ln(\l_tmpb_fp)/ln(10)) }
- \fp_compare:nNnTF {\l_tmpa_fp} < {0}
+ \fp_set:Nn \l__mermap_tmpb_fp { (#2)/\l__mermap_tmpa_fp }
+ \fp_set:Nn \l__mermap_tmpa_fp { floor(ln(\l__mermap_tmpb_fp)/ln(10)) }
+ \fp_compare:nNnTF {\l__mermap_tmpa_fp} < {0}
{
- \fp_compare:nNnTF {\l_tmpa_fp} > {-5}
+ \fp_compare:nNnTF {\l__mermap_tmpa_fp} > {-5}
{
\use:x
{
- \exp_not:N\keys_set:nn { mermap }{ format~angle=decimal\fp_to_int:N\l_tmpa_fp}
+ \exp_not:N\keys_set:nn { mermap }{ format~angle=decimal\fp_to_int:N\l__mermap_tmpa_fp}
}
}
{
@@ -1345,25 +1398,25 @@
{
\keys_set:nn { mermap }{ format~angle=decimal-0 }
}
- \fp_set:Nn \l_tmpa_fp { 10^\l_tmpa_fp }
- \fp_set:Nn \l_tmpb_fp { \l_tmpb_fp/\l_tmpa_fp }
- \fp_compare:nNnTF {abs(\l_tmpb_fp-1)} < {abs(\l_tmpb_fp-2)}
+ \fp_set:Nn \l__mermap_tmpa_fp { 10^\l__mermap_tmpa_fp }
+ \fp_set:Nn \l__mermap_tmpb_fp { \l__mermap_tmpb_fp/\l__mermap_tmpa_fp }
+ \fp_compare:nNnTF {abs(\l__mermap_tmpb_fp-1)} < {abs(\l__mermap_tmpb_fp-2)}
{
- \fp_compare:nNnTF {abs(\l_tmpb_fp-1)} < {abs(\l_tmpb_fp-5)}
+ \fp_compare:nNnTF {abs(\l__mermap_tmpb_fp-1)} < {abs(\l__mermap_tmpb_fp-5)}
{
- \fp_set:Nn \l__mermap_result_fp {\l_tmpa_fp}
+ \fp_set:Nn \l__mermap_result_fp {\l__mermap_tmpa_fp}
}
{
- \fp_set:Nn \l__mermap_result_fp {5*\l_tmpa_fp}
+ \fp_set:Nn \l__mermap_result_fp {5*\l__mermap_tmpa_fp}
}
}
{
- \fp_compare:nNnTF {abs(\l_tmpb_fp-2)} < {abs(\l_tmpb_fp-5)}
+ \fp_compare:nNnTF {abs(\l__mermap_tmpb_fp-2)} < {abs(\l__mermap_tmpb_fp-5)}
{
- \fp_set:Nn \l__mermap_result_fp {2*\l_tmpa_fp}
+ \fp_set:Nn \l__mermap_result_fp {2*\l__mermap_tmpa_fp}
}
{
- \fp_set:Nn \l__mermap_result_fp {5*\l_tmpa_fp}
+ \fp_set:Nn \l__mermap_result_fp {5*\l__mermap_tmpa_fp}
}
}
}
@@ -1376,46 +1429,46 @@
\IfNoValueF {#1} { \keys_set:nn { mermap } {#1} }
\tl_use:N \l__mermap_tikz_map_clip_tl
\__mermap_compute_network_step:nn {\l__mermap_tex_height_fp}{\l__mermap_mapnorth_fp-\l__mermap_mapsouth_fp}
- \fp_set:Nn \l_tmpa_fp { ceil(\l__mermap_mapsouth_fp/\l__mermap_result_fp)*\l__mermap_result_fp}
- \fp_compare:nNnT {\l_tmpa_fp-\l__mermap_mapsouth_fp} < {1e-10}
+ \fp_set:Nn \l__mermap_tmpa_fp { ceil(\l__mermap_mapsouth_fp/\l__mermap_result_fp)*\l__mermap_result_fp}
+ \fp_compare:nNnT {\l__mermap_tmpa_fp-\l__mermap_mapsouth_fp} < {1e-10}
{
- \fp_add:Nn \l_tmpa_fp {\l__mermap_result_fp}
+ \fp_add:Nn \l__mermap_tmpa_fp {\l__mermap_result_fp}
}
- \fp_while_do:nNnn {\l_tmpa_fp} < {\l__mermap_mapnorth_fp}
+ \fp_while_do:nNnn {\l__mermap_tmpa_fp} < {\l__mermap_mapnorth_fp}
{
- \tl_set:Nn \l_tmpa_tl {\fp_use:N\l_tmpa_fp}
- \draw[gray,very~thin] (mrc~cs\c_colon_str lat=\l_tmpa_tl,lon=\mrcmapwest)
+ \tl_set:Nn \l__mermap_tmpa_tl {\fp_use:N\l__mermap_tmpa_fp}
+ \draw[gray,very~thin] (mrc~cs\c_colon_str lat=\l__mermap_tmpa_tl,lon=\mrcmapwest)
coordinate (mermap_temp)
node[right=1mm,inner~sep=0.5pt,black!50!gray,font=\l__mermap_network_font_tl,
fill=white,opacity=0.3,text~opacity=1,
- ]{\mrcformlat{\l_tmpa_tl}}
+ ]{\mrcformlat{\l__mermap_tmpa_tl}}
-- (mermap_temp -| mrcmap.east)
node[left=1mm,inner~sep=0.5pt,black!50!gray,font=\l__mermap_network_font_tl,
fill=white,opacity=0.3,text~opacity=1,
- ]{\mrcformlat{\l_tmpa_tl}}
+ ]{\mrcformlat{\l__mermap_tmpa_tl}}
;
- \fp_add:Nn \l_tmpa_fp {\l__mermap_result_fp}
+ \fp_add:Nn \l__mermap_tmpa_fp {\l__mermap_result_fp}
}
\__mermap_compute_network_step:nn {\l__mermap_tex_width_fp}{\l__mermap_mapeast_fp-\l__mermap_mapwest_fp}
- \fp_set:Nn \l_tmpa_fp { ceil(\l__mermap_mapwest_fp/\l__mermap_result_fp)*\l__mermap_result_fp}
- \fp_compare:nNnT {\l_tmpa_fp-\l__mermap_mapwest_fp} < {1e-10}
+ \fp_set:Nn \l__mermap_tmpa_fp { ceil(\l__mermap_mapwest_fp/\l__mermap_result_fp)*\l__mermap_result_fp}
+ \fp_compare:nNnT {\l__mermap_tmpa_fp-\l__mermap_mapwest_fp} < {1e-10}
{
- \fp_add:Nn \l_tmpa_fp {\l__mermap_result_fp}
+ \fp_add:Nn \l__mermap_tmpa_fp {\l__mermap_result_fp}
}
- \fp_while_do:nNnn {\l_tmpa_fp} < {\l__mermap_mapeast_fp}
+ \fp_while_do:nNnn {\l__mermap_tmpa_fp} < {\l__mermap_mapeast_fp}
{
- \tl_set:Nn \l_tmpa_tl {\fp_use:N\l_tmpa_fp}
- \draw[gray,very~thin] (mrc~cs\c_colon_str lon=\l_tmpa_tl,lat=\mrcmapsouth)
+ \tl_set:Nn \l__mermap_tmpa_tl {\fp_use:N\l__mermap_tmpa_fp}
+ \draw[gray,very~thin] (mrc~cs\c_colon_str lon=\l__mermap_tmpa_tl,lat=\mrcmapsouth)
coordinate (mermap_temp)
node[above=1mm,inner~sep=0.5pt,black!50!gray,font=\l__mermap_network_font_tl,
fill=white,opacity=0.3,text~opacity=1,
- ]{\mrcformlon{\l_tmpa_tl}}
+ ]{\mrcformlon{\l__mermap_tmpa_tl}}
-- (mermap_temp |- mrcmap.north)
node[below=1mm,inner~sep=0.5pt,black!50!gray,font=\l__mermap_network_font_tl,
fill=white,opacity=0.3,text~opacity=1,
- ]{\mrcformlon{\l_tmpa_tl}}
+ ]{\mrcformlon{\l__mermap_tmpa_tl}}
;
- \fp_add:Nn \l_tmpa_fp {\l__mermap_result_fp}
+ \fp_add:Nn \l__mermap_tmpa_fp {\l__mermap_result_fp}
}
\end{scope}
}
@@ -1488,26 +1541,26 @@
\cs_new_nopar:Npn \__mermap_pretty_distance:n #1
{
- \fp_set:Nn \l_tmpa_fp { #1 }
- \fp_compare:nNnTF \l_tmpa_fp < 5
+ \fp_set:Nn \l__mermap_tmpa_fp { #1 }
+ \fp_compare:nNnTF \l__mermap_tmpa_fp < 5
{
- \SI[round-mode=figures,round-precision=3,detect-all]{\fp_to_decimal:n{1000*\l_tmpa_fp}}{\meter}
+ \SI[round-mode=figures,round-precision=3,detect-all]{\fp_to_decimal:n{1000*\l__mermap_tmpa_fp}}{\meter}
}
{
- \SI[round-mode=figures,round-precision=3,detect-all]{\fp_to_decimal:N \l_tmpa_fp}{\kilo\meter}
+ \SI[round-mode=figures,round-precision=3,detect-all]{\fp_to_decimal:N \l__mermap_tmpa_fp}{\kilo\meter}
}
}
\cs_new_nopar:Npn \__mermap_pretty_length:n #1
{
- \fp_set:Nn \l_tmpa_fp { (#1)*\l__mermap_scale_fp }
- \fp_compare:nNnTF \l_tmpa_fp < 5
+ \fp_set:Nn \l__mermap_tmpa_fp { (#1)*\l__mermap_scale_fp }
+ \fp_compare:nNnTF \l__mermap_tmpa_fp < 5
{
- \SI[round-mode=figures,round-precision=3,detect-all]{\fp_to_decimal:n{1000*\l_tmpa_fp}}{\meter}
+ \SI[round-mode=figures,round-precision=3,detect-all]{\fp_to_decimal:n{1000*\l__mermap_tmpa_fp}}{\meter}
}
{
- \SI[round-mode=figures,round-precision=3,detect-all]{\fp_to_decimal:N \l_tmpa_fp}{\kilo\meter}
+ \SI[round-mode=figures,round-precision=3,detect-all]{\fp_to_decimal:N \l__mermap_tmpa_fp}{\kilo\meter}
}
}
@@ -1535,25 +1588,25 @@
\cs_new_nopar:Npn \__mermap_format_angle_minute:n #1
{
- \fp_set:Nn \l_tmpa_fp {floor(#1)}
- \fp_set:Nn \l_tmpb_fp {round((#1-\l_tmpa_fp)*60)}
+ \fp_set:Nn \l__mermap_tmpa_fp {floor(#1)}
+ \fp_set:Nn \l__mermap_tmpb_fp {round((#1-\l__mermap_tmpa_fp)*60)}
\ang[add-arc-degree-zero,add-arc-minute-zero]
{
- \fp_to_int:N \l_tmpa_fp ;
- \fp_to_int:N \l_tmpb_fp ;
+ \fp_to_int:N \l__mermap_tmpa_fp ;
+ \fp_to_int:N \l__mermap_tmpb_fp ;
}
}
\cs_new_nopar:Npn \__mermap_format_angle_second:n #1
{
- \fp_set:Nn \l_tmpa_fp {floor(#1)}
- \fp_set:Nn \l_tmpb_fp {floor((#1-\l_tmpa_fp)*60)}
+ \fp_set:Nn \l__mermap_tmpa_fp {floor(#1)}
+ \fp_set:Nn \l__mermap_tmpb_fp {floor((#1-\l__mermap_tmpa_fp)*60)}
\ang[add-arc-degree-zero,add-arc-minute-zero]
{
- \fp_to_int:N \l_tmpa_fp ;
- \fp_to_int:N \l_tmpb_fp ;
- \fp_to_int:n {round(((#1-\l_tmpa_fp)*60-\l_tmpb_fp)*60)}
+ \fp_to_int:N \l__mermap_tmpa_fp ;
+ \fp_to_int:N \l__mermap_tmpb_fp ;
+ \fp_to_int:n {round(((#1-\l__mermap_tmpa_fp)*60-\l__mermap_tmpb_fp)*60)}
}
}
@@ -1562,14 +1615,14 @@
\group_begin:
\IfNoValueF {#1}
{ \keys_set:nn { mermap } {#1} }
- \fp_set:Nn \l_tmpa_fp {#2}
- \fp_compare:nNnTF \l_tmpa_fp < 0
+ \fp_set:Nn \l__mermap_tmpa_fp {#2}
+ \fp_compare:nNnTF \l__mermap_tmpa_fp < 0
{
- \tl_set:Nx \l__mermap_temp_tl {\fp_to_decimal:n{-\l_tmpa_fp}}
+ \tl_set:Nx \l__mermap_temp_tl {\fp_to_decimal:n{-\l__mermap_tmpa_fp}}
\__mermap_format_south:n {\__mermap_format_angle:n{\l__mermap_temp_tl}}
}
{
- \tl_set:Nx \l__mermap_temp_tl {\fp_to_decimal:N \l_tmpa_fp}
+ \tl_set:Nx \l__mermap_temp_tl {\fp_to_decimal:N \l__mermap_tmpa_fp}
\__mermap_format_north:n {\__mermap_format_angle:n{\l__mermap_temp_tl}}
}
\group_end:
@@ -1580,14 +1633,14 @@
\group_begin:
\IfNoValueF {#1}
{ \keys_set:nn { mermap } {#1} }
- \fp_set:Nn \l_tmpa_fp {#2-360*floor((#2+180)/360)}
- \fp_compare:nNnTF \l_tmpa_fp < 0
+ \fp_set:Nn \l__mermap_tmpa_fp {#2-360*floor((#2+180)/360)}
+ \fp_compare:nNnTF \l__mermap_tmpa_fp < 0
{
- \tl_set:Nx \l__mermap_temp_tl {\fp_to_decimal:n{-\l_tmpa_fp}}
+ \tl_set:Nx \l__mermap_temp_tl {\fp_to_decimal:n{-\l__mermap_tmpa_fp}}
\__mermap_format_west:n{\__mermap_format_angle:n{\l__mermap_temp_tl}}
}
{
- \tl_set:Nx \l__mermap_temp_tl {\fp_to_decimal:N \l_tmpa_fp}
+ \tl_set:Nx \l__mermap_temp_tl {\fp_to_decimal:N \l__mermap_tmpa_fp}
\__mermap_format_east:n {\__mermap_format_angle:n{\l__mermap_temp_tl}}
}
\group_end:
@@ -1608,22 +1661,22 @@
{
\tl_if_empty:nTF {#5}
{
- \fp_set:Nn \l_tmpa_fp {0}
- \fp_set:Nn \l_tmpb_fp {0}
+ \fp_set:Nn \l__mermap_tmpa_fp {0}
+ \fp_set:Nn \l__mermap_tmpb_fp {0}
}
{
- \fp_set:Nn \l_tmpa_fp {#3*(#5)}
+ \fp_set:Nn \l__mermap_tmpa_fp {#3*(#5)}
\tl_if_empty:nTF {#6}
{
- \fp_set:Nn \l_tmpb_fp {#4*(#5)}
+ \fp_set:Nn \l__mermap_tmpb_fp {#4*(#5)}
}
{
- \fp_set:Nn \l_tmpb_fp {#4*(#6)}
+ \fp_set:Nn \l__mermap_tmpb_fp {#4*(#6)}
}
}
\tl_set:Nx \l__mermap_scalebar_at_tl
{
- {([xshift=\fp_to_dim:N\l_tmpa_fp,yshift=\fp_to_dim:N\l_tmpb_fp]mrcmap.#1)}
+ {([xshift=\fp_to_dim:N\l__mermap_tmpa_fp,yshift=\fp_to_dim:N\l__mermap_tmpb_fp]mrcmap.#1)}
}
\tl_set:Nn \l__mermap_scalebar_placement_tl {#2}
}
@@ -1691,60 +1744,56 @@
\begin{scope}[shift=(mrcscalebar.south~west)]
\__mermap_tikz_path_begin:n { fill=black, mrcscalebarmajor }
\pgfseteorule
- \fp_set:Nn \l_tmpa_fp {\l__mermap_scalebar_width_fp/\l__mermap_scale_fp} % Breite
+ \fp_set:Nn \l__mermap_tmpa_fp {\l__mermap_scalebar_width_fp/\l__mermap_scale_fp} % Breite
\pgfpathrectangle{\pgfpoint{0pt}{0pt}}
- {\pgfpoint{\fp_to_dim:N\l_tmpa_fp}{\l__mermap_scalebar_height_dim}}
+ {\pgfpoint{\fp_to_dim:N\l__mermap_tmpa_fp}{\l__mermap_scalebar_height_dim}}
\bool_if:NF \l__mermap_scalebar_transparent_bool
{
\__mermap_tikz_path_end:
\__mermap_tikz_path_begin:n { fill=white, mrcscalebarminor }
- \fp_set:Nn \l_tmpa_fp {\l__mermap_scalebar_width_fp/\l__mermap_scale_fp}
+ \fp_set:Nn \l__mermap_tmpa_fp {\l__mermap_scalebar_width_fp/\l__mermap_scale_fp}
}
- \fp_set:Nn \l_tmpb_fp {\l_tmpa_fp/\l__mermap_scalebar_partitions_int}
+ \fp_set:Nn \l__mermap_tmpb_fp {\l__mermap_tmpa_fp/\l__mermap_scalebar_partitions_int}
\bool_if:NTF \l__mermap_scalebar_double_bool
{
- \int_set:Nn \l_tmpa_int {1}
- \dim_set:Nn \l_tmpb_dim {\l__mermap_scalebar_height_dim/2}
- \dim_set:Nn \l_tmpa_dim {0.2pt-\l_tmpb_dim}
+ \dim_set:Nn \l__mermap_tmpb_dim {\l__mermap_scalebar_height_dim/2}
+ \dim_set:Nn \l__mermap_tmpa_dim {0.2pt-\l__mermap_tmpb_dim}
\int_compare:nNnTF \l__mermap_scalebar_partitions_int = 1
{
- \pgfpathrectangle{\pgfpoint{0.2pt}{\l_tmpb_dim}}
- {\pgfpoint{\fp_to_dim:n{\l_tmpb_fp-0.4pt}}{\l_tmpa_dim}}
+ \pgfpathrectangle{\pgfpoint{0.2pt}{\l__mermap_tmpb_dim}}
+ {\pgfpoint{\fp_to_dim:n{\l__mermap_tmpb_fp-0.4pt}}{\l__mermap_tmpa_dim}}
}
{
- \pgfpathrectangle{\pgfpoint{0.2pt}{\l_tmpb_dim}}
- {\pgfpoint{\fp_to_dim:n{\l_tmpb_fp-0.2pt}}{\l_tmpa_dim}}
+ \pgfpathrectangle{\pgfpoint{0.2pt}{\l__mermap_tmpb_dim}}
+ {\pgfpoint{\fp_to_dim:n{\l__mermap_tmpb_fp-0.2pt}}{\l__mermap_tmpa_dim}}
}
- \int_while_do:nNnn \l_tmpa_int < \l__mermap_scalebar_partitions_int
+ \int_step_inline:nn { \l__mermap_scalebar_partitions_int-1 }
{
- \dim_set:Nn \l_tmpa_dim {-\l_tmpa_dim}
- \int_compare:nNnTF {\l_tmpa_int+1} = \l__mermap_scalebar_partitions_int
+ \dim_set:Nn \l__mermap_tmpa_dim {-\l__mermap_tmpa_dim}
+ \int_compare:nNnTF {##1+1} = \l__mermap_scalebar_partitions_int
{
- \pgfpathrectangle{\pgfpoint{\fp_to_dim:n{\l_tmpa_int*\l_tmpb_fp}}{\l_tmpb_dim}}
- {\pgfpoint{\fp_to_dim:n{\l_tmpb_fp-0.2pt}}{\l_tmpa_dim}}
+ \pgfpathrectangle{\pgfpoint{\fp_to_dim:n{##1*\l__mermap_tmpb_fp}}{\l__mermap_tmpb_dim}}
+ {\pgfpoint{\fp_to_dim:n{\l__mermap_tmpb_fp-0.2pt}}{\l__mermap_tmpa_dim}}
}
{
- \pgfpathrectangle{\pgfpoint{\fp_to_dim:n{\l_tmpa_int*\l_tmpb_fp}}{\l_tmpb_dim}}
- {\pgfpoint{\fp_to_dim:N\l_tmpb_fp}{\l_tmpa_dim}}
+ \pgfpathrectangle{\pgfpoint{\fp_to_dim:n{##1*\l__mermap_tmpb_fp}}{\l__mermap_tmpb_dim}}
+ {\pgfpoint{\fp_to_dim:N\l__mermap_tmpb_fp}{\l__mermap_tmpa_dim}}
}
- \int_incr:N \l_tmpa_int
}
}
{
- \int_set:Nn \l_tmpa_int {1}
- \dim_set:Nn \l_tmpa_dim {\l__mermap_scalebar_height_dim-0.4pt}
- \int_while_do:nNnn \l_tmpa_int < \l__mermap_scalebar_partitions_int
+ \dim_set:Nn \l__mermap_tmpa_dim {\l__mermap_scalebar_height_dim-0.4pt}
+ \int_step_inline:nnnn { 1 }{ 2 }{ \l__mermap_scalebar_partitions_int-1 }
{
- \int_compare:nNnTF {\l_tmpa_int+1} = \l__mermap_scalebar_partitions_int
+ \int_compare:nNnTF {##1+1} = \l__mermap_scalebar_partitions_int
{
- \pgfpathrectangle{\pgfpoint{\fp_to_dim:n{\l_tmpa_int*\l_tmpb_fp}}{0.2pt}}
- {\pgfpoint{\fp_to_dim:n{\l_tmpb_fp-0.2pt}}{\l_tmpa_dim}}
+ \pgfpathrectangle{\pgfpoint{\fp_to_dim:n{##1*\l__mermap_tmpb_fp}}{0.2pt}}
+ {\pgfpoint{\fp_to_dim:n{\l__mermap_tmpb_fp-0.2pt}}{\l__mermap_tmpa_dim}}
}
{
- \pgfpathrectangle{\pgfpoint{\fp_to_dim:n{\l_tmpa_int*\l_tmpb_fp}}{0.2pt}}
- {\pgfpoint{\fp_to_dim:N\l_tmpb_fp}{\l_tmpa_dim}}
+ \pgfpathrectangle{\pgfpoint{\fp_to_dim:n{##1*\l__mermap_tmpb_fp}}{0.2pt}}
+ {\pgfpoint{\fp_to_dim:N\l__mermap_tmpb_fp}{\l__mermap_tmpa_dim}}
}
- \int_add:Nn \l_tmpa_int {2}
}
}
\__mermap_tikz_path_end:
@@ -2032,53 +2081,53 @@
\__mermap_new_marker_type:nn {pin}
{
- \tl_set:Nx \l_tmpa_tl {\fp_to_dim:N \l__mermap_marker_distance_fp}
+ \tl_set:Nx \l__mermap_tmpa_tl {\fp_to_dim:N \l__mermap_marker_distance_fp}
\path[fill=mrcmarkerfill,draw=none,fill~opacity=0.7]
- (0,0) -- (0.1,\l_tmpa_tl) -- (-0.1,\l_tmpa_tl) -- cycle;
+ (0,0) -- (0.1,\l__mermap_tmpa_tl) -- (-0.1,\l__mermap_tmpa_tl) -- cycle;
\node[fill=white,draw=none,text=mrcmarkertext,
above,font=\mrcmarkerfont,inner~sep=0.5mm,align=center,
line~width=0mm,xshift=\mrcmarkershift,
fill~opacity=0.7,text~opacity=1,xshift=0mm,mrcnodestyle,mrchyperpath]
- (pin_node) at (0,\l_tmpa_tl) {\mrcmarkercontents};
+ (pin_node) at (0,\l__mermap_tmpa_tl) {\mrcmarkercontents};
\path[draw=mrcmarkerdraw,fill=none,line~join=round,mrcpathstyle]
- (0,0) -- (0.1,\l_tmpa_tl) -- (pin_node.south~east) -- (pin_node.north~east)
+ (0,0) -- (0.1,\l__mermap_tmpa_tl) -- (pin_node.south~east) -- (pin_node.north~east)
-- (pin_node.north~west) -- (pin_node.south~west)
- -- (-0.1,\l_tmpa_tl) [line~join=bevel] -- cycle;
+ -- (-0.1,\l__mermap_tmpa_tl) [line~join=bevel] -- cycle;
}
\__mermap_new_marker_type:nn {pinflip}
{
- \tl_set:Nx \l_tmpa_tl {\fp_to_dim:N \l__mermap_marker_distance_fp}
+ \tl_set:Nx \l__mermap_tmpa_tl {\fp_to_dim:N \l__mermap_marker_distance_fp}
\path[fill=mrcmarkerfill,draw=none,fill~opacity=0.7]
- (0,0) -- (-0.1,-\l_tmpa_tl) -- (0.1,-\l_tmpa_tl) -- cycle;
+ (0,0) -- (-0.1,-\l__mermap_tmpa_tl) -- (0.1,-\l__mermap_tmpa_tl) -- cycle;
\node[fill=white,draw=none,text=mrcmarkertext,
below,font=\mrcmarkerfont,inner~sep=0.5mm,align=center,
line~width=0mm,xshift=\mrcmarkershift,
fill~opacity=0.7,text~opacity=1,xshift=0mm,mrcnodestyle,mrchyperpath]
- (pin_node) at (0,-\l_tmpa_tl) {\mrcmarkercontents};
+ (pin_node) at (0,-\l__mermap_tmpa_tl) {\mrcmarkercontents};
\path[draw=mrcmarkerdraw,fill=none,line~join=round,mrcpathstyle]
- (0,0) -- (-0.1,-\l_tmpa_tl) -- (pin_node.north~west) -- (pin_node.south~west)
+ (0,0) -- (-0.1,-\l__mermap_tmpa_tl) -- (pin_node.north~west) -- (pin_node.south~west)
-- (pin_node.south~east) -- (pin_node.north~east)
- -- (0.1,-\l_tmpa_tl) [line~join=bevel] -- cycle;
+ -- (0.1,-\l__mermap_tmpa_tl) [line~join=bevel] -- cycle;
}
\cs_new_nopar:Npn \__mermap_tikz_drop_path:n #1
{
- \tl_set:Nn \l_tmpa_tl {\fp_to_dim:N\l__mermap_marker_radius_fp}
- \tl_set:Nn \l_tmpb_tl {\fp_to_dim:n{\l__mermap_marker_radius_fp*0.552}}
+ \tl_set:Nn \l__mermap_tmpa_tl {\fp_to_dim:N\l__mermap_marker_radius_fp}
+ \tl_set:Nn \l__mermap_tmpb_tl {\fp_to_dim:n{\l__mermap_marker_radius_fp*0.552}}
\__mermap_tikz_path_begin:n
{
line~join=bevel,draw=mrcmarkerdraw,fill=mrcmarkerfill,mrcpathstyle,mrchyperpath
}
\pgfpathmoveto{\pgfpoint{0pt}{\fp_to_dim:n{-2*\l__mermap_marker_radius_fp-\l__mermap_marker_shift_fp}}}
- \pgfpathcurveto{\pgfpoint{\l_tmpb_tl}{-\l_tmpa_tl}}{\pgfpoint{\l_tmpa_tl}{-\l_tmpb_tl}}
- {\pgfpoint{\l_tmpa_tl}{0pt}}
- \pgfpathcurveto{\pgfpoint{\l_tmpa_tl}{\l_tmpb_tl}}{\pgfpoint{\l_tmpb_tl}{\l_tmpa_tl}}
- {\pgfpoint{0pt}{\l_tmpa_tl}}
- \pgfpathcurveto{\pgfpoint{-\l_tmpb_tl}{\l_tmpa_tl}}{\pgfpoint{-\l_tmpa_tl}{\l_tmpb_tl}}
- {\pgfpoint{-\l_tmpa_tl}{0pt}}
- \pgfpathcurveto{\pgfpoint{-\l_tmpa_tl}{-\l_tmpb_tl}}{\pgfpoint{-\l_tmpb_tl}{-\l_tmpa_tl}}
+ \pgfpathcurveto{\pgfpoint{\l__mermap_tmpb_tl}{-\l__mermap_tmpa_tl}}{\pgfpoint{\l__mermap_tmpa_tl}{-\l__mermap_tmpb_tl}}
+ {\pgfpoint{\l__mermap_tmpa_tl}{0pt}}
+ \pgfpathcurveto{\pgfpoint{\l__mermap_tmpa_tl}{\l__mermap_tmpb_tl}}{\pgfpoint{\l__mermap_tmpb_tl}{\l__mermap_tmpa_tl}}
+ {\pgfpoint{0pt}{\l__mermap_tmpa_tl}}
+ \pgfpathcurveto{\pgfpoint{-\l__mermap_tmpb_tl}{\l__mermap_tmpa_tl}}{\pgfpoint{-\l__mermap_tmpa_tl}{\l__mermap_tmpb_tl}}
+ {\pgfpoint{-\l__mermap_tmpa_tl}{0pt}}
+ \pgfpathcurveto{\pgfpoint{-\l__mermap_tmpa_tl}{-\l__mermap_tmpb_tl}}{\pgfpoint{-\l__mermap_tmpb_tl}{-\l__mermap_tmpa_tl}}
{\pgfpoint{0pt}{\fp_to_dim:n{-2*\l__mermap_marker_radius_fp-\l__mermap_marker_shift_fp}}}
\pgfpathclose
#1
@@ -2089,14 +2138,14 @@
{
\node[circle,inner~sep=0pt,font=\mrcmarkerfont,text=mrcmarkertext,mrcnodestyle]
{
- \hbox_set:Nn \l_tmpa_box {\mrcmarkercontents}
- \fp_compare:nNnT {\box_wd:N \l_tmpa_box} > {1.5*\l__mermap_marker_radius_fp}
+ \hbox_set:Nn \l__mermap_tmpa_box {\mrcmarkercontents}
+ \fp_compare:nNnT {\box_wd:N \l__mermap_tmpa_box} > {1.5*\l__mermap_marker_radius_fp}
{
- \box_resize_to_wd_and_ht:Nnn \l_tmpa_box
+ \box_resize_to_wd_and_ht:Nnn \l__mermap_tmpa_box
{\fp_to_dim:n {1.5*\l__mermap_marker_radius_fp}}
- {\box_ht:N \l_tmpa_box}
+ {\box_ht:N \l__mermap_tmpa_box}
}
- \box_use_drop:N \l_tmpa_box
+ \box_use_drop:N \l__mermap_tmpa_box
};
}
@@ -2153,22 +2202,22 @@
\__mermap_new_marker_type:nn {ringx}
{
- \tl_set:Nn \l_tmpa_tl {\fp_to_dim:N\l__mermap_marker_radius_fp}
+ \tl_set:Nn \l__mermap_tmpa_tl {\fp_to_dim:N\l__mermap_marker_radius_fp}
\path[draw=mrcmarkerdraw,very~thin]
- (45 \c_colon_str \l_tmpa_tl)--(225\c_colon_str \l_tmpa_tl)
- (135\c_colon_str \l_tmpa_tl)--(315\c_colon_str \l_tmpa_tl);
+ (45 \c_colon_str \l__mermap_tmpa_tl)--(225\c_colon_str \l__mermap_tmpa_tl)
+ (135\c_colon_str \l__mermap_tmpa_tl)--(315\c_colon_str \l__mermap_tmpa_tl);
\path[draw=mrcmarkerdraw,fill=mrcmarkerfill,mrcpathstyle,mrchyperpath,even~odd~rule]
- circle (\l_tmpa_tl) circle (\fp_to_dim:N\l__mermap_marker_inner_radius_fp);
+ circle (\l__mermap_tmpa_tl) circle (\fp_to_dim:N\l__mermap_marker_inner_radius_fp);
}
\__mermap_new_marker_type:nn {markx}
{
- \tl_set:Nn \l_tmpa_tl {\fp_to_dim:N\l__mermap_marker_radius_fp}
+ \tl_set:Nn \l__mermap_tmpa_tl {\fp_to_dim:N\l__mermap_marker_radius_fp}
\path[line~join=bevel,draw=mrcmarkerdraw,fill=mrcmarkerfill,mrcpathstyle,mrchyperpath]
- (0,0) -- (35 \c_colon_str \l_tmpa_tl) -- (55 \c_colon_str \l_tmpa_tl) -- cycle
- (0,0) -- (125 \c_colon_str \l_tmpa_tl) -- (145 \c_colon_str \l_tmpa_tl) -- cycle
- (0,0) -- (215 \c_colon_str \l_tmpa_tl) -- (235 \c_colon_str \l_tmpa_tl) -- cycle
- (0,0) -- (305 \c_colon_str \l_tmpa_tl) -- (325 \c_colon_str \l_tmpa_tl) -- cycle;
+ (0,0) -- (35 \c_colon_str \l__mermap_tmpa_tl) -- (55 \c_colon_str \l__mermap_tmpa_tl) -- cycle
+ (0,0) -- (125 \c_colon_str \l__mermap_tmpa_tl) -- (145 \c_colon_str \l__mermap_tmpa_tl) -- cycle
+ (0,0) -- (215 \c_colon_str \l__mermap_tmpa_tl) -- (235 \c_colon_str \l__mermap_tmpa_tl) -- cycle
+ (0,0) -- (305 \c_colon_str \l__mermap_tmpa_tl) -- (325 \c_colon_str \l__mermap_tmpa_tl) -- cycle;
}
@@ -2269,12 +2318,21 @@
\fp_new:N \l__mermap_b_x_fp
\fp_new:N \l__mermap_b_y_fp
\fp_new:N \l__mermap_b_z_fp
+\fp_new:N \l__mermap_alpha_fp
\fp_new:N \l__mermap_delta_lambda_fp
\fp_new:N \l__mermap_delta_phi_fp
+\fp_new:N \l__mermap_n_x_fp
+\fp_new:N \l__mermap_n_y_fp
+\fp_new:N \l__mermap_n_z_fp
\fp_new:N \l__mermap_psi_fp
+\fp_new:N \l__mermap_sin_psi_fp
+\fp_new:N \l__mermap_t_fp
+\fp_new:N \l__mermap_t_psi_fp
\fp_new:N \l__mermap_t_x_fp
\fp_new:N \l__mermap_t_y_fp
\fp_new:N \l__mermap_t_z_fp
+\fp_const:Nn \c__mermap_linearization_threshold_fp { 10e-9 }
+\bool_new:N \l__mermap_linearization_bool
\int_new:N \l__mermap_samples_int
@@ -2309,41 +2367,86 @@
}
-\cs_new:Npn \__mermap_draw_orthodrome:nnnnn #1#2#3#4#5
+\cs_new_protected:Npn \__mermap_draw_orthodrome:nnnnn #1#2#3#4#5
{
\__mermap_tikz_path_begin:n { draw,mermap_every_route,#1 }
- \fp_set:Nn \l__mermap_a_x_fp { cosd(#3)*cosd(#2) }
- \fp_set:Nn \l__mermap_a_y_fp { sind(#3)*cosd(#2) }
- \fp_set:Nn \l__mermap_a_z_fp { sind(#2) }
- \fp_set:Nn \l__mermap_b_x_fp { cosd(#5)*cosd(#4) }
- \fp_set:Nn \l__mermap_b_y_fp { sind(#5)*cosd(#4) }
- \fp_set:Nn \l__mermap_b_z_fp { sind(#4) }
-
- \fp_set:Nn \l_tmpa_fp { sind(#2)*sind(#4) + cosd(#2)*cosd(#4)*cosd(#5-(#3)) }
- \fp_set:Nn \l__mermap_psi_fp { acosd(\l_tmpa_fp) }
- \fp_set:Nn \l_tmpb_fp { sind(\l__mermap_psi_fp) }
-
- \fp_set:Nn \l__mermap_b_x_fp { (\l__mermap_b_x_fp - \l_tmpa_fp*\l__mermap_a_x_fp)/\l_tmpb_fp }
- \fp_set:Nn \l__mermap_b_y_fp { (\l__mermap_b_y_fp - \l_tmpa_fp*\l__mermap_a_y_fp)/\l_tmpb_fp }
- \fp_set:Nn \l__mermap_b_z_fp { (\l__mermap_b_z_fp - \l_tmpa_fp*\l__mermap_a_z_fp)/\l_tmpb_fp }
-
- \__mermap_pgf_moveto_point:nn {#2}{#3}
- \int_set:Nn \l_tmpa_int {1}
- \int_until_do:nNnn \l_tmpa_int > \l__mermap_samples_int
- {
- \fp_set:Nn \l_tmpa_fp { \l__mermap_psi_fp*\l_tmpa_int/\l__mermap_samples_int }
- \fp_set:Nn \l_tmpb_fp { sind(\l_tmpa_fp) }
- \fp_set:Nn \l_tmpa_fp { cosd(\l_tmpa_fp) }
- \fp_set:Nn \l__mermap_t_x_fp { \l_tmpa_fp*\l__mermap_a_x_fp + \l_tmpb_fp*\l__mermap_b_x_fp }
- \fp_set:Nn \l__mermap_t_y_fp { \l_tmpa_fp*\l__mermap_a_y_fp + \l_tmpb_fp*\l__mermap_b_y_fp }
- \fp_set:Nn \l__mermap_t_z_fp { \l_tmpa_fp*\l__mermap_a_z_fp + \l_tmpb_fp*\l__mermap_b_z_fp }
- \pgfpathlineto{\__mermap_unit_sphere_point:nnn {\l__mermap_t_x_fp}{\l__mermap_t_y_fp}{\l__mermap_t_z_fp}}
- \int_incr:N \l_tmpa_int
+ \__mermap_setup_orthodrome:nnnn { #2 }{ #3 }{ #4 }{ #5 }
+ \__mermap_pgf_moveto_point:nn { #2 }{ #3 }
+ \int_step_inline:nn { \l__mermap_samples_int }
+ {
+ \__mermap_point_on_orthodrome:n { ##1/\l__mermap_samples_int }
+ \__mermap_pgf_lineto_point:nn{ \l__mermap_cs_lat_fp }{ \l__mermap_cs_lon_fp }
}
\__mermap_tikz_path_end:
}
+\cs_new_protected:Npn \__mermap_setup_orthodrome:nnnn #1#2#3#4
+ {
+ \fp_set:Nn \l__mermap_a_x_fp { cosd(#2)*cosd(#1) }
+ \fp_set:Nn \l__mermap_a_y_fp { sind(#2)*cosd(#1) }
+ \fp_set:Nn \l__mermap_a_z_fp { sind(#1) }
+
+ \fp_set:Nn \l__mermap_b_x_fp { cosd(#4)*cosd(#3) }
+ \fp_set:Nn \l__mermap_b_y_fp { sind(#4)*cosd(#3) }
+ \fp_set:Nn \l__mermap_b_z_fp { sind(#3) }
+
+ \fp_set:Nn \l__mermap_psi_fp { acosd( sind(#1)*sind(#3) + cosd(#1)*cosd(#3)*cosd(#4-(#2)) ) }
+ \fp_set:Nn \l__mermap_sin_psi_fp { sind(\l__mermap_psi_fp) }
+
+ \bool_set:Nn \l__mermap_linearization_bool { \fp_compare_p:nNn \l__mermap_psi_fp < \c__mermap_linearization_threshold_fp }
+ }
+
+
+\cs_new_protected:Npn \__mermap_point_on_orthodrome:n #1
+ {
+ \fp_set:Nn \l__mermap_t_fp { #1 }
+
+ \bool_if:NTF \l__mermap_linearization_bool
+ {
+ \fp_set:Nn \l__mermap_tmpa_fp { 1 - \l__mermap_t_fp }
+ \fp_set_eq:NN \l__mermap_tmpb_fp \l__mermap_t_fp
+ }
+ {
+ \fp_set:Nn \l__mermap_t_psi_fp { \l__mermap_t_fp * \l__mermap_psi_fp }
+ \fp_set:Nn \l__mermap_tmpa_fp { sind( \l__mermap_psi_fp - \l__mermap_t_psi_fp ) / \l__mermap_sin_psi_fp }
+ \fp_set:Nn \l__mermap_tmpb_fp { sind( \l__mermap_t_psi_fp ) / \l__mermap_sin_psi_fp }
+ }
+
+ \fp_set:Nn \l__mermap_t_x_fp { \l__mermap_tmpa_fp*\l__mermap_a_x_fp + \l__mermap_tmpb_fp*\l__mermap_b_x_fp }
+ \fp_set:Nn \l__mermap_t_y_fp { \l__mermap_tmpa_fp*\l__mermap_a_y_fp + \l__mermap_tmpb_fp*\l__mermap_b_y_fp }
+ \fp_set:Nn \l__mermap_t_z_fp { \l__mermap_tmpa_fp*\l__mermap_a_z_fp + \l__mermap_tmpb_fp*\l__mermap_b_z_fp }
+
+ \fp_set:Nn \l__mermap_cs_lat_fp { asind(\l__mermap_t_z_fp) }
+ \fp_set:Nn \l__mermap_cs_lon_fp { sign(\l__mermap_t_y_fp)*acosd(\l__mermap_t_x_fp/sqrt(\l__mermap_t_x_fp^2+\l__mermap_t_y_fp^2)) }
+ }
+
+
+\cs_new_protected:Npn \__mermap_angle_at_orthodrome:
+ {
+ \bool_if:NTF \l__mermap_linearization_bool
+ {
+ \fp_set:Nn \l__mermap_alpha_fp { 90 }
+ }
+ {
+ \fp_set:Nn \l__mermap_tmpa_fp { cosd( \l__mermap_psi_fp - \l__mermap_t_psi_fp ) }
+ \fp_set:Nn \l__mermap_tmpb_fp { cosd( \l__mermap_t_psi_fp ) }
+ \fp_set:Nn \l__mermap_n_x_fp { \l__mermap_tmpb_fp*\l__mermap_b_x_fp - \l__mermap_tmpa_fp*\l__mermap_a_x_fp }
+ \fp_set:Nn \l__mermap_n_y_fp { \l__mermap_tmpb_fp*\l__mermap_b_y_fp - \l__mermap_tmpa_fp*\l__mermap_a_y_fp }
+ \fp_set:Nn \l__mermap_n_z_fp { \l__mermap_tmpb_fp*\l__mermap_b_z_fp - \l__mermap_tmpa_fp*\l__mermap_a_z_fp }
+ \fp_set:Nn \l__mermap_tmpa_fp { sqrt( \l__mermap_n_x_fp^2 + \l__mermap_n_y_fp^2 + \l__mermap_n_z_fp^2 ) }
+ \fp_set:Nn \l__mermap_n_x_fp { \l__mermap_n_x_fp / \l__mermap_tmpa_fp }
+ \fp_set:Nn \l__mermap_n_y_fp { \l__mermap_n_y_fp / \l__mermap_tmpa_fp }
+ \fp_set:Nn \l__mermap_n_z_fp { \l__mermap_n_z_fp / \l__mermap_tmpa_fp }
+ \fp_set:Nn \l__mermap_alpha_fp { acosd( \l__mermap_n_y_fp*cosd(\l__mermap_cs_lon_fp) - \l__mermap_n_x_fp*sind(\l__mermap_cs_lon_fp) ) }
+ \fp_compare:nNnT \l__mermap_n_z_fp < 0
+ {
+ \fp_set:Nn \l__mermap_alpha_fp { 360 - \l__mermap_alpha_fp }
+ }
+ }
+ }
+
+
\NewDocumentCommand \mrcdraworthodrome { O{} mmmm }
{
\__mermap_draw_orthodrome:nnnnn {#1}{#2}{#3}{#4}{#5}
@@ -2392,11 +2495,11 @@
\fp_set:Nn \l__mermap_delta_lambda_fp {(#4-(#2))/180*pi}
\fp_compare:nNnTF {abs(\l__mermap_delta_phi_fp)} < {1e-5}
{
- \fp_set:Nn \l_tmpa_fp { tand(#1) }
- \fp_set:Nn \l_tmpb_fp { \l__mermap_delta_lambda_fp*cosd(#1)
- /( 1 + (\l_tmpa_fp + (1+2*\l_tmpa_fp*\l_tmpa_fp)*\l__mermap_delta_phi_fp/3)*\l__mermap_delta_phi_fp/2 ) }
+ \fp_set:Nn \l__mermap_tmpa_fp { tand(#1) }
+ \fp_set:Nn \l__mermap_tmpb_fp { \l__mermap_delta_lambda_fp*cosd(#1)
+ /( 1 + (\l__mermap_tmpa_fp + (1+2*\l__mermap_tmpa_fp*\l__mermap_tmpa_fp)*\l__mermap_delta_phi_fp/3)*\l__mermap_delta_phi_fp/2 ) }
\fp_set:Nn \l__mermap_result_fp {
- sqrt( \l__mermap_delta_phi_fp*\l__mermap_delta_phi_fp + \l_tmpb_fp*\l_tmpb_fp ) }
+ sqrt( \l__mermap_delta_phi_fp*\l__mermap_delta_phi_fp + \l__mermap_tmpb_fp*\l__mermap_tmpb_fp ) }
}
{
\fp_set:Nn \l__mermap_result_fp { abs(\l__mermap_delta_phi_fp)
@@ -2422,11 +2525,314 @@
\NewDocumentCommand \mrcNPprettyloxodistance { mm }
{
- \__mermap_loxo_distance:nnnn {\mrcNPlat{#1}}{\mrcNPlon{#1}}{\mrcNPlat{#2}}{\mrcNPlon{#2}}
+ \__mermap_loxo_distance:nnnn { \mrcNPlat{#1} }{ \mrcNPlon{#1} }{ \mrcNPlat{#2} }{ \mrcNPlon{#2} }
\__mermap_pretty_distance:n { \l__mermap_result_fp }
}
+\cs_new_protected:Npn \__mermap_orthodrome_point:nnn #1#2#3
+ {
+ \__mermap_point_on_orthodrome:n { #3 }
+ \__mermap_set_named_position { #1 }{ \l__mermap_cs_lat_fp }{ \l__mermap_cs_lon_fp }
+ \IfNoValueF { #2 }
+ {
+ \__mermap_angle_at_orthodrome:
+ \cs_set:Npe #2 { \fp_to_decimal:N \l__mermap_alpha_fp }
+ }
+ }
+
+\NewDocumentCommand \mrcNPfromOrthoFraction { mo mm mm m }
+ {
+ \__mermap_setup_orthodrome:nnnn { #3 }{ #4 }{ #5 }{ #6 }
+ \__mermap_orthodrome_point:nnn { #1 }{ #2 }{ #7 }
+ }
+
+\NewDocumentCommand \mrcNPfromOrthoFractionNamed { mo m m m }
+ {
+ \__mermap_setup_orthodrome:nnnn { \mrcNPlat{#3} }{ \mrcNPlon{#3} }{ \mrcNPlat{#4} }{ \mrcNPlon{#4} }
+ \__mermap_orthodrome_point:nnn { #1 }{ #2 }{ #5 }
+ }
+
+\NewDocumentCommand \mrcNPfromOrthoDistance { mo mm mm m }
+ {
+ \__mermap_ortho_distance:nnnn { #3 }{ #4 }{ #5 }{ #6 }
+ \fp_compare:nNnTF \l__mermap_result_fp > { 0.001 }
+ {
+ \__mermap_setup_orthodrome:nnnn { #3 }{ #4 }{ #5 }{ #6 }
+ \__mermap_orthodrome_point:nnn { #1 }{ #2 }{ #7 / \l__mermap_result_fp }
+ }
+ {
+ \__mermap_set_named_position { #1 }{ #3 }{ #4 }
+ \IfNoValueF { #2 }
+ {
+ \cs_set:Npn #2 { 90 }
+ }
+ }
+ }
+
+\NewDocumentCommand \mrcNPfromOrthoDistanceNamed { mo m m m }
+ {
+ \__mermap_ortho_distance:nnnn { \mrcNPlat{#3} }{ \mrcNPlon{#3} }{ \mrcNPlat{#4} }{ \mrcNPlon{#4} }
+ \fp_compare:nNnTF \l__mermap_result_fp > { 0.001 }
+ {
+ \__mermap_setup_orthodrome:nnnn { \mrcNPlat{#3} }{ \mrcNPlon{#3} }{ \mrcNPlat{#4} }{ \mrcNPlon{#4} }
+ \__mermap_orthodrome_point:nnn { #1 }{ #2 }{ #5 / \l__mermap_result_fp }
+ }
+ {
+ \__mermap_set_named_position { #1 }{ \mrcNPlat{#3} }{ \mrcNPlon{#3} }
+ \IfNoValueF { #2 }
+ {
+ \cs_set:Npn #2 { 90 }
+ }
+ }
+ }
+
+
+%---- animations ---------------------------------------------------------------
+
+\bool_new:N \l__mermap_anim_drop_first_frame_bool
+\bool_new:N \l__mermap_anim_drop_last_frame_bool
+
+\fp_new:N \l__mermap_anim_a_lat_fp
+\fp_new:N \l__mermap_anim_a_lon_fp
+\fp_new:N \l__mermap_anim_a_scaledenom_fp
+\fp_new:N \l__mermap_anim_a_time_fp
+\fp_new:N \l__mermap_anim_b_lat_fp
+\fp_new:N \l__mermap_anim_b_lon_fp
+\fp_new:N \l__mermap_anim_b_scaledenom_fp
+\fp_new:N \l__mermap_anim_b_time_fp
+\fp_new:N \l_mermap_anim_angle_fp
+\fp_new:N \l_mermap_anim_lat_fp
+\fp_new:N \l_mermap_anim_lon_fp
+\fp_new:N \l_mermap_anim_scaledenom_fp
+\fp_new:N \l_mermap_anim_time_fp
+
+\int_new:N \l__mermap_anim_final_frame_int
+\int_new:N \l__mermap_anim_frames_int
+\int_new:N \l__mermap_anim_start_frame_int
+\int_new:N \l_mermap_anim_frame_int
+
+\seq_new:N \l__mermap_anim_scaledenom_seq
+
+\tl_new:N \l__mermap_anim_timescale_tl
+\tl_new:N \l__mermap_anim_timewarp_tl
+
+
+\NewExpandableDocumentCommand \mrcTimewarpIdentity { m }
+ {
+ #1
+ }
+
+\NewExpandableDocumentCommand \mrcTimewarpSlowStart { m m }
+ {
+ (#2)^(#1)
+ }
+
+\NewExpandableDocumentCommand \mrcTimewarpSlowFinal { m m }
+ {
+ 1 - (1-#2)^(#1)
+ }
+
+\NewExpandableDocumentCommand \mrcTimewarpSlowStartFinal { m m }
+ {
+ %1 - (1-#2)^(#1)
+ #2 <= 0.5
+ ? (2*(#2))^(#1) / 2
+ : 1 - (2-2*(#2))^(#1) / 2
+ }
+
+
+\NewDocumentEnvironment { mrcAnimation }{ m +b }
+ {
+ \keys_set:nn { mermap/anim }{ #1 }
+
+ \__mermap_anim_autocorrect_scaledenom_seq:
+ \int_compare:nNnT \l__mermap_anim_frames_int < 2
+ {
+ \int_set:Nn \l__mermap_anim_frames_int { 2 }
+ }
+ \bool_if:NTF \l__mermap_anim_drop_first_frame_bool
+ {
+ \int_set:Nn \l__mermap_anim_start_frame_int { 2 }
+ }
+ {
+ \int_set:Nn \l__mermap_anim_start_frame_int { 1 }
+ }
+ \bool_if:NTF \l__mermap_anim_drop_last_frame_bool
+ {
+ \int_set:Nn \l__mermap_anim_final_frame_int { \l__mermap_anim_frames_int-1 }
+ }
+ {
+ \int_set:Nn \l__mermap_anim_final_frame_int { \l__mermap_anim_frames_int }
+ }
+
+ \__mermap_setup_orthodrome:nnnn { \l__mermap_anim_a_lat_fp }{ \l__mermap_anim_a_lon_fp }
+ { \l__mermap_anim_b_lat_fp }{ \l__mermap_anim_b_lon_fp }
+
+ \__mermap_anim_pop_time_scale:NN \l__mermap_anim_a_time_fp \l__mermap_anim_a_scaledenom_fp
+ \__mermap_anim_pop_time_scale:NN \l__mermap_anim_b_time_fp \l__mermap_anim_b_scaledenom_fp
+
+ \int_step_variable:nnNn { \l__mermap_anim_start_frame_int }{ \l__mermap_anim_final_frame_int } \l_mermap_anim_frame_int
+ {
+ \fp_set:Nn \l_mermap_anim_time_fp { (\l_mermap_anim_frame_int-1)/(\l__mermap_anim_frames_int-1) }
+ \fp_set:Nn \l_mermap_anim_time_fp { \l__mermap_anim_timewarp_tl { \l_mermap_anim_time_fp } }
+
+ \__mermap_point_on_orthodrome:n { \l_mermap_anim_time_fp }
+ \fp_set_eq:NN \l_mermap_anim_lat_fp \l__mermap_cs_lat_fp
+ \fp_set_eq:NN \l_mermap_anim_lon_fp \l__mermap_cs_lon_fp
+ \__mermap_set_named_position{ AnimNP }{ \l_mermap_anim_lat_fp }{ \l_mermap_anim_lon_fp }
+
+ \__mermap_angle_at_orthodrome:
+ \fp_set_eq:NN \l_mermap_anim_angle_fp \l__mermap_alpha_fp
+
+ \fp_while_do:nNnn \l_mermap_anim_time_fp > \l__mermap_anim_b_time_fp
+ {
+ \fp_set_eq:NN \l__mermap_anim_a_time_fp \l__mermap_anim_b_time_fp
+ \fp_set_eq:NN \l__mermap_anim_a_scaledenom_fp \l__mermap_anim_b_scaledenom_fp
+ \__mermap_anim_pop_time_scale:NN \l__mermap_anim_b_time_fp \l__mermap_anim_b_scaledenom_fp
+ }
+ \fp_set:Nn \l_mermap_anim_scaledenom_fp
+ {
+ round ( exp (
+ ln(\l__mermap_anim_a_scaledenom_fp) +
+ ( ln(\l__mermap_anim_b_scaledenom_fp)-ln(\l__mermap_anim_a_scaledenom_fp) ) *
+ ( \l_mermap_anim_time_fp-\l__mermap_anim_a_time_fp ) / ( \l__mermap_anim_b_time_fp-\l__mermap_anim_a_time_fp )
+ ) )
+ }
+
+ #2
+ }
+ }{}
+
+
+\cs_new_protected:Npn \__mermap_anim_autocorrect_scaledenom_seq:
+ {
+ \seq_get_left:NN \l__mermap_anim_scaledenom_seq \l__mermap_anim_timescale_tl
+ \bool_lazy_any:nTF
+ {
+ { \seq_if_empty_p:N \l__mermap_anim_scaledenom_seq }
+ { \tl_if_empty_p:N \l__mermap_anim_timescale_tl }
+ { \quark_if_no_value_p:N \l__mermap_anim_timescale_tl }
+ }
+ {
+ \seq_set_split:Nnn \l__mermap_anim_scaledenom_seq { - }{ 0/25000 - 1/25000 },
+ }
+ {
+ \fp_compare:nNnF { \__mermap_anim_use_time:o \l__mermap_anim_timescale_tl } = 0
+ {
+ \seq_put_left:Ne \l__mermap_anim_scaledenom_seq { 0 / \__mermap_anim_use_scale:o \l__mermap_anim_timescale_tl }
+ }
+ }
+ \seq_get_right:NNF \l__mermap_anim_scaledenom_seq \l__mermap_anim_timescale_tl
+ {
+ \msg_error:nn{ mercatormap }{ anim-scaledenom-invalid }
+ }
+ \fp_compare:nNnF { \__mermap_anim_use_time:o \l__mermap_anim_timescale_tl } = 1
+ {
+ \seq_put_right:Ne \l__mermap_anim_scaledenom_seq { 1 / \__mermap_anim_use_scale:o \l__mermap_anim_timescale_tl }
+ }
+ \fp_set:Nn \l__mermap_anim_a_time_fp { -1 }
+ \seq_map_inline:Nn \l__mermap_anim_scaledenom_seq
+ {
+ \fp_set:Nn \l__mermap_anim_b_time_fp { \__mermap_anim_use_time:n { ##1 } }
+ \fp_compare:nNnTF \l__mermap_anim_a_time_fp < \l__mermap_anim_b_time_fp
+ {
+ \fp_set_eq:NN \l__mermap_anim_a_time_fp \l__mermap_anim_b_time_fp
+ }
+ {
+ \msg_error:nn{ mercatormap }{ anim-scaledenom-invalid }
+ }
+ }
+ }
+
+\cs_new_protected:Npn \__mermap_anim_pop_time_scale:NN #1#2
+ {
+ \seq_pop_left:NN \l__mermap_anim_scaledenom_seq \l__mermap_anim_timescale_tl
+ \fp_set:Nn #1 { \__mermap_anim_use_time:o \l__mermap_anim_timescale_tl }
+ \fp_set:Nn #2 { \__mermap_anim_use_scale:o \l__mermap_anim_timescale_tl }
+ }
+
+\msg_new:nnnn{ mercatormap }{ anim-scaledenom-invalid }
+ { The~animation~scale~denominator~sequence~is~invalid. }
+ {
+ Check~\seq_use:Nn \l__mermap_anim_scaledenom_seq { ~-~ }~with~the~documentation.~
+ Time~values~are~not~strictly~monotonically~increasing.
+ }
+
+\cs_new_protected_nopar:Npn \__mermap_anim_set_position:w #1 #2 / #3 \q_stop
+ {
+ \fp_set:cn { l__mermap_anim_#1_lat_fp }{ #2 }
+ \fp_set:cn { l__mermap_anim_#1_lon_fp }{ #3 }
+ }
+
+\cs_new_nopar:Npn \__mermap_anim_use_time:w #1 / #2 \q_stop
+ {
+ #1
+ }
+\cs_new_nopar:Npn \__mermap_anim_use_time:n #1
+ {
+ \__mermap_anim_use_time:w #1 \q_stop
+ }
+\cs_generate_variant:Nn \__mermap_anim_use_time:n { o }
+
+\cs_new_nopar:Npn \__mermap_anim_use_scale:w #1 / #2 \q_stop
+ {
+ #2
+ }
+\cs_new_nopar:Npn \__mermap_anim_use_scale:n #1
+ {
+ \__mermap_anim_use_scale:w #1 \q_stop
+ }
+\cs_generate_variant:Nn \__mermap_anim_use_scale:n { o }
+
+\keys_define:nn { mermap/anim }
+ {
+ start-position .code:n = \__mermap_anim_set_position:w { a } #1 \q_stop,
+ final-position .code:n = \__mermap_anim_set_position:w { b } #1 \q_stop,
+ position .meta:n = { start-position = #1, final-position = #1 },
+ named-start-position .code:n =
+ {
+ \fp_set:Nn \l__mermap_anim_a_lat_fp { \mrcNPlat{ #1 } }
+ \fp_set:Nn \l__mermap_anim_a_lon_fp { \mrcNPlon{ #1 } }
+ },
+ named-final-position .code:n =
+ {
+ \fp_set:Nn \l__mermap_anim_b_lat_fp { \mrcNPlat{ #1 } }
+ \fp_set:Nn \l__mermap_anim_b_lon_fp { \mrcNPlon{ #1 } }
+ },
+ named-position .meta:n = { named-start-position = #1, named-final-position = #1 },
+ frames .int_set:N = \l__mermap_anim_frames_int,
+ drop-first-frame .bool_set:N = \l__mermap_anim_drop_first_frame_bool,
+ drop-last-frame .bool_set:N = \l__mermap_anim_drop_last_frame_bool,
+ drop-no-frame .meta:n = { drop-first-frame=false, drop-last-frame=false },
+ scale-denominators .code:n = \seq_set_split:Nnn \l__mermap_anim_scaledenom_seq { - }{ #1 },
+ common-scale-denominator .meta:n = { scale-denominators = 0/#1 - 1/#1 },
+ timewarp .tl_set:N = \l__mermap_anim_timewarp_tl,
+ timewarp-identity .meta:n = { timewarp = \mrcTimewarpIdentity },
+ timewarp-slow-start .meta:n = { timewarp = \mrcTimewarpSlowStart{#1} },
+ timewarp-slow-start .default:n = 2,
+ timewarp-slow-final .meta:n = { timewarp = \mrcTimewarpSlowFinal{#1} },
+ timewarp-slow-final .default:n = 2,
+ timewarp-slow-start-final .meta:n = { timewarp = \mrcTimewarpSlowStartFinal{#1} },
+ timewarp-slow-start-final .default:n = 2,
+ }
+
+\keys_set:nn { mermap/anim }
+ {
+ position = 51.4779 / 0,
+ frames = 20,
+ drop-no-frame,
+ common-scale-denominator = 25000,
+ timewarp-identity,
+ }
+
+\NewExpandableDocumentCommand\mrcAnimFrame{}{\int_to_arabic:n \l_mermap_anim_frame_int}
+\NewExpandableDocumentCommand\mrcAnimTime{}{\fp_to_decimal:N \l_mermap_anim_time_fp}
+\NewExpandableDocumentCommand\mrcAnimScaleDenom{}{\fp_to_decimal:N \l_mermap_anim_scaledenom_fp}
+\NewExpandableDocumentCommand\mrcAnimLatitude{}{\fp_to_decimal:N \l_mermap_anim_lat_fp}
+\NewExpandableDocumentCommand\mrcAnimLongitude{}{\fp_to_decimal:N \l_mermap_anim_lon_fp}
+\NewExpandableDocumentCommand\mrcAnimAngle{}{\fp_to_decimal:N \l_mermap_anim_angle_fp}
+
%---- supplier -----------------------------------------------------------------
diff --git a/Master/texmf-dist/tex/latex/mercatormap/mercatorpy.def b/Master/texmf-dist/tex/latex/mercatormap/mercatorpy.def
index 670d8fca3bd..0df48609bf9 100644
--- a/Master/texmf-dist/tex/latex/mercatormap/mercatorpy.def
+++ b/Master/texmf-dist/tex/latex/mercatormap/mercatorpy.def
@@ -1,19 +1,19 @@
-\begin{filecontents*}[overwrite]{maptiles.texpy}
+\begin{filecontents}[force,noheader,nowarn]{maptiles.texpy}
"""
-The LaTeX package mercatormap - version 1.02 (2020/08/06)
+The LaTeX package mercatormap - version 1.2.0 (2024/08/05)
maptiles.texpy: Python script for map tile download
-------------------------------------------------------------------------------------------
-Copyright (c) 2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+Copyright (c) 2020-2024 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
-------------------------------------------------------------------------------------------
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.
+ https://www.latex-project.org/lppl.txt
+and version 1.3c or later is part of all distributions of LaTeX
+version 2008-05-04 or later.
This work has the LPPL maintenance status `author-maintained'.
@@ -28,7 +28,7 @@ from pathlib import Path
from PIL import Image
-packageversion = '1.02 (2020/08/06)'
+packageversion = '1.2.0 (2024/08/05)'
def gd(x):
@@ -531,5 +531,5 @@ if __name__ == '__main__':
print('No url for download given')
mapdef.save_map(args.definition, tiles_success, merge_success, wms_success)
-\end{filecontents*}
+\end{filecontents}
diff --git a/Master/texmf-dist/tex/latex/mercatormap/mercatorsupplier.def b/Master/texmf-dist/tex/latex/mercatormap/mercatorsupplier.def
index 1bf7866b7aa..a8063f8135a 100644
--- a/Master/texmf-dist/tex/latex/mercatormap/mercatorsupplier.def
+++ b/Master/texmf-dist/tex/latex/mercatormap/mercatorsupplier.def
@@ -1,15 +1,15 @@
-%% The LaTeX package mercatormap - version 1.02 (2020/08/06)
+%% The LaTeX package mercatormap - version 1.2.0 (2024/08/05)
%% mercatorsupplier.def: predefined map supplier list
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2020 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2020-2024 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% 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
+%% https://www.latex-project.org/lppl.txt
%% and version 1.3 or later is part of all distributions of LaTeX
%% version 2005/12/01 or later.
%%
@@ -46,7 +46,7 @@
attribution = {
Kartendaten:~\textcopyright\nobreakspace\href{https://openstreetmap.org/copyright}{OpenStreetMap}
\ Mitwirkende,~SRTM\nobreakspace\textbar\nobreakspace
- Kartendarstellung:~\textcopyright\nobreakspace\href{http://opentopomap.org/}{OpenTopoMap}
+ Kartendarstellung:~\textcopyright\nobreakspace\href{https://opentopomap.org/}{OpenTopoMap}
\ (\href{https://creativecommons.org/licenses/by-sa/3.0/}{CC-BY-SA})
},
attribution~print = {
@@ -61,12 +61,12 @@
{
__attribution_topplusopen .meta:nn = {mermap/supply} {
attribution = {
- \textcopyright\nobreakspace\href{http://www.bkg.bund.de}{Bundesamt~f\mrcumlaut{u}r~Kartographie~und~Geod\mrcumlaut{a}sie}\nobreakspace\the\year,
- \ \href{http://sg.geodatenzentrum.de/web_public/Datenquellen_TopPlus_Open.pdf}{Datenquellen}
+ Kartendarstellung:\nobreakspace\textcopyright\nobreakspace\href{https://www.bkg.bund.de}{BKG\nobreakspace(\the\year)},
+ \ \href{https://sgx.geodatenzentrum.de/web_public/Datenquellen_TopPlus_Open.pdf}{Datenquellen}
},
attribution~print = {
- \textcopyright\nobreakspace Bundesamt~f\mrcumlaut{u}r~Kartographie~und~Geod\mrcumlaut{a}sie\nobreakspace\the\year,
- \ Datenquellen:~\detokenize{http://sg.geodatenzentrum.de/web_public/Datenquellen_TopPlus_Open.pdf}
+ \textcopyright\nobreakspace BKG\nobreakspace(\the\year),
+ \ Datenquellen:~\detokenize{https://sgx.geodatenzentrum.de/web_public/Datenquellen_TopPlus_Open.pdf}
}
}
}
@@ -85,29 +85,121 @@
basename = tiles/tpo_web_grau,
}
-\cs_new:Npn \__mermap_new_supply_source_topplusopen:n #1
+\__mermap_new_supply_source:nn { topplusopen~web~light }
+ {
+ url = {https://sgx.geodatenzentrum.de/wmts_topplus_open/tile/1.0.0/web_light/default/WEBMERCATOR/{z}/{y}/{x}.png},
+ __attribution_topplusopen,
+ basename = tiles/tpo_web_light,
+ }
+
+\__mermap_new_supply_source:nn { topplusopen~web~light~grau }
+ {
+ url = {https://sgx.geodatenzentrum.de/wmts_topplus_open/tile/1.0.0/web_light_grau/default/WEBMERCATOR/{z}/{y}/{x}.png},
+ __attribution_topplusopen,
+ basename = tiles/tpo_web_light_grau,
+ }
+
+
+\cs_new:Npn \__mermap_new_supply_source_topplusopen:nn #1#2
{
\keys_define:nn { mermap/supply/_source }
{
topplusopen~#1 .meta:nn = {mermap/supply}{
- url = {https://sgx.geodatenzentrum.de/wms_topplus_open?service=wms&version=1.3.0&request=GetMap&Layers=#1&STYLES=default&CRS=EPSG:3857&bbox={xmin},{ymin},{xmax},{ymax}&width={width}&height={height}&Format=image/png},
+ url = {https://sgx.geodatenzentrum.de/wms_topplus_open_#2?service=wms&version=1.3.0&request=GetMap&Layers=#1&STYLES=default&CRS=EPSG:3857&bbox={xmin},{ymin},{xmax},{ymax}&width={width}&height={height}&Format=image/png},
__attribution_topplusopen,
basename = tiles/tpo,
},
topplusopen~#1~grau .meta:nn = {mermap/supply}{
- url = {https://sgx.geodatenzentrum.de/wms_topplus_open?service=wms&version=1.3.0&request=GetMap&Layers=#1_grau&STYLES=default&CRS=EPSG:3857&bbox={xmin},{ymin},{xmax},{ymax}&width={width}&height={height}&Format=image/png},
+ url = {https://sgx.geodatenzentrum.de/wms_topplus_open_#2?service=wms&version=1.3.0&request=GetMap&Layers=#1&STYLES=grau&CRS=EPSG:3857&bbox={xmin},{ymin},{xmax},{ymax}&width={width}&height={height}&Format=image/png},
__attribution_topplusopen,
basename = tiles/tpo,
},
}
}
-\__mermap_new_supply_source_topplusopen:n { p5 }
-\__mermap_new_supply_source_topplusopen:n { p10 }
-\__mermap_new_supply_source_topplusopen:n { p17.5 }
-\__mermap_new_supply_source_topplusopen:n { p25 }
-\__mermap_new_supply_source_topplusopen:n { p50 }
-\__mermap_new_supply_source_topplusopen:n { p100 }
-\__mermap_new_supply_source_topplusopen:n { p250 }
+\__mermap_new_supply_source_topplusopen:nn { p5 }{ p5 }
+\__mermap_new_supply_source_topplusopen:nn { p10 }{ p10 }
+\__mermap_new_supply_source_topplusopen:nn { p17.5 }{ p17 }
+\__mermap_new_supply_source_topplusopen:nn { p25 }{ p25 }
+\__mermap_new_supply_source_topplusopen:nn { p50 }{ p50 }
+\__mermap_new_supply_source_topplusopen:nn { p100 }{ p100 }
+\__mermap_new_supply_source_topplusopen:nn { p250 }{ p250 }
+
+
+\keys_define:nn { mermap/supply }
+ {
+ __attribution_thunderforest .meta:nn = {mermap/supply} {
+ attribution = {
+ Maps~\textcopyright\nobreakspace\href{https://www.thunderforest.com/}{Thunderforest},
+ \ Data~\textcopyright\nobreakspace\href{https://openstreetmap.org/copyright}{OpenStreetMap~contributors}
+ },
+ attribution~print = {
+ Maps~\textcopyright\nobreakspace www.thunderforest.com,
+ \ Data~\textcopyright\nobreakspace www.osm.org/copyright
+ }
+ }
+ }
+\__mermap_new_supply_source:nn { thunderforest~opencyclemap }
+ {
+ url~with~api~key = {https://tile.thunderforest.com/cycle/{z}/{x}/{y}.png?apikey=}{thunderforest}{},
+ __attribution_thunderforest,
+ basename = tiles/opencyclemap,
+ }
+\__mermap_new_supply_source:nn { thunderforest~transport }
+ {
+ url~with~api~key = {https://tile.thunderforest.com/transport/{z}/{x}/{y}.png?apikey=}{thunderforest}{},
+ __attribution_thunderforest,
+ basename = tiles/transport,
+ }
+\__mermap_new_supply_source:nn { thunderforest~landscape }
+ {
+ url~with~api~key = {https://tile.thunderforest.com/landscape/{z}/{x}/{y}.png?apikey=}{thunderforest}{},
+ __attribution_thunderforest,
+ basename = tiles/landscape,
+ }
+\__mermap_new_supply_source:nn { thunderforest~outdoors }
+ {
+ url~with~api~key = {https://tile.thunderforest.com/outdoors/{z}/{x}/{y}.png?apikey=}{thunderforest}{},
+ __attribution_thunderforest,
+ basename = tiles/outdoors,
+ }
+\__mermap_new_supply_source:nn { thunderforest~atlas }
+ {
+ url~with~api~key = {https://tile.thunderforest.com/atlas/{z}/{x}/{y}.png?apikey=}{thunderforest}{},
+ __attribution_thunderforest,
+ basename = tiles/atlas,
+ }
+\__mermap_new_supply_source:nn { thunderforest~transport-dark }
+ {
+ url~with~api~key = {https://tile.thunderforest.com/transport-dark/{z}/{x}/{y}.png?apikey=}{thunderforest}{},
+ __attribution_thunderforest,
+ basename = tiles/transport-dark,
+ }
+\__mermap_new_supply_source:nn { thunderforest~spinal-map }
+ {
+ url~with~api~key = {https://tile.thunderforest.com/spinal-map/{z}/{x}/{y}.png?apikey=}{thunderforest}{},
+ __attribution_thunderforest,
+ basename = tiles/spinal-map,
+ }
+\__mermap_new_supply_source:nn { thunderforest~pioneer }
+ {
+ url~with~api~key = {https://tile.thunderforest.com/pioneer/{z}/{x}/{y}.png?apikey=}{thunderforest}{},
+ __attribution_thunderforest,
+ basename = tiles/pioneer,
+ }
+\__mermap_new_supply_source:nn { thunderforest~mobile-atlas }
+ {
+ url~with~api~key = {https://tile.thunderforest.com/mobile-atlas/{z}/{x}/{y}.png?apikey=}{thunderforest}{},
+ __attribution_thunderforest,
+ basename = tiles/mobile-atlas,
+ }
+\__mermap_new_supply_source:nn { thunderforest~neighbourhood }
+ {
+ url~with~api~key = {https://tile.thunderforest.com/neighbourhood/{z}/{x}/{y}.png?apikey=}{thunderforest}{},
+ __attribution_thunderforest,
+ basename = tiles/neighbourhood,
+ }
+
+
%% openrouteservice mapsurfer is DISCONTINUED after June 2020
%% Therefore, the following source is DEPRECATED and will be removed in future
@@ -127,7 +219,7 @@
basename = tiles/mapsurfer,
}
-\keys_define:nn { mermap/supply }
+\keys_define:nn { mermap/supply }% DISCONTINUED after July 2023 and DEPRECATED
{
__attribution_stamen .meta:nn = {mermap/supply} {
attribution = {
@@ -144,67 +236,67 @@
}
}
}
-\__mermap_new_supply_source:nn { stamen~terrain }
+\__mermap_new_supply_source:nn { stamen~terrain }% DISCONTINUED after July 2023 and DEPRECATED
{
url = {https://stamen-tiles-a.a.ssl.fastly.net/terrain/{z}/{x}/{y}.png},
__attribution_stamen,
basename = tiles/terrain,
}
-\__mermap_new_supply_source:nn { stamen~terrain-background }
+\__mermap_new_supply_source:nn { stamen~terrain-background }% DISCONTINUED after July 2023 and DEPRECATED
{
url = {https://stamen-tiles-a.a.ssl.fastly.net/terrain-background/{z}/{x}/{y}.png},
__attribution_stamen,
basename = tiles/terrain-background,
}
-\__mermap_new_supply_source:nn { stamen~terrain-labels }
+\__mermap_new_supply_source:nn { stamen~terrain-labels }% DISCONTINUED after July 2023 and DEPRECATED
{
url = {https://stamen-tiles-a.a.ssl.fastly.net/terrain-labels/{z}/{x}/{y}.png},
__attribution_stamen,
basename = tiles/terrain-labels,
}
-\__mermap_new_supply_source:nn { stamen~terrain-lines }
+\__mermap_new_supply_source:nn { stamen~terrain-lines }% DISCONTINUED after July 2023 and DEPRECATED
{
url = {https://stamen-tiles-a.a.ssl.fastly.net/terrain-lines/{z}/{x}/{y}.png},
__attribution_stamen,
basename = tiles/terrain-lines,
}
-\__mermap_new_supply_source:nn { stamen~toner }
+\__mermap_new_supply_source:nn { stamen~toner }% DISCONTINUED after July 2023 and DEPRECATED
{
url = {https://stamen-tiles-a.a.ssl.fastly.net/toner/{z}/{x}/{y}.png},
__attribution_stamen,
basename = tiles/toner,
}
-\__mermap_new_supply_source:nn { stamen~toner-lite }
+\__mermap_new_supply_source:nn { stamen~toner-lite }% DISCONTINUED after July 2023 and DEPRECATED
{
url = {https://stamen-tiles-a.a.ssl.fastly.net/toner-lite/{z}/{x}/{y}.png},
__attribution_stamen,
basename = tiles/toner-lite,
}
-\__mermap_new_supply_source:nn { stamen~toner-hybrid }
+\__mermap_new_supply_source:nn { stamen~toner-hybrid }% DISCONTINUED after July 2023 and DEPRECATED
{
url = {https://stamen-tiles-a.a.ssl.fastly.net/toner-hybrid/{z}/{x}/{y}.png},
__attribution_stamen,
basename = tiles/toner-hybrid,
}
-\__mermap_new_supply_source:nn { stamen~toner-background }
+\__mermap_new_supply_source:nn { stamen~toner-background }% DISCONTINUED after July 2023 and DEPRECATED
{
url = {https://stamen-tiles-a.a.ssl.fastly.net/toner-background/{z}/{x}/{y}.png},
__attribution_stamen,
basename = tiles/toner-background,
}
-\__mermap_new_supply_source:nn { stamen~toner-labels }
+\__mermap_new_supply_source:nn { stamen~toner-labels }% DISCONTINUED after July 2023 and DEPRECATED
{
url = {https://stamen-tiles-a.a.ssl.fastly.net/toner-labels/{z}/{x}/{y}.png},
__attribution_stamen,
basename = tiles/toner-labels,
}
-\__mermap_new_supply_source:nn { stamen~toner-lines }
+\__mermap_new_supply_source:nn { stamen~toner-lines }% DISCONTINUED after July 2023 and DEPRECATED
{
url = {https://stamen-tiles-a.a.ssl.fastly.net/toner-lines/{z}/{x}/{y}.png},
__attribution_stamen,
basename = tiles/toner-lines,
}
-\__mermap_new_supply_source:nn { stamen~watercolor }
+\__mermap_new_supply_source:nn { stamen~watercolor }% DISCONTINUED after July 2023 and DEPRECATED
{
url = {https://stamen-tiles-a.a.ssl.fastly.net/watercolor/{z}/{x}/{y}.png},
attribution = {
@@ -221,72 +313,3 @@
},
basename = tiles/watercolor,
}
-
-\keys_define:nn { mermap/supply }
- {
- __attribution_thunderforest .meta:nn = {mermap/supply} {
- attribution = {
- Maps~\textcopyright\nobreakspace\href{https://www.thunderforest.com/}{Thunderforest},
- \ Data~\textcopyright\nobreakspace\href{https://openstreetmap.org/copyright}{OpenStreetMap~contributors}
- },
- attribution~print = {
- Maps~\textcopyright\nobreakspace www.thunderforest.com,
- \ Data~\textcopyright\nobreakspace www.osm.org/copyright
- }
- }
- }
-\__mermap_new_supply_source:nn { thunderforest~opencyclemap }
- {
- url~with~api~key = {https://tile.thunderforest.com/cycle/{z}/{x}/{y}.png?apikey=}{thunderforest}{},
- __attribution_thunderforest,
- basename = tiles/opencyclemap,
- }
-\__mermap_new_supply_source:nn { thunderforest~transport }
- {
- url~with~api~key = {https://tile.thunderforest.com/transport/{z}/{x}/{y}.png?apikey=}{thunderforest}{},
- __attribution_thunderforest,
- basename = tiles/transport,
- }
-\__mermap_new_supply_source:nn { thunderforest~landscape }
- {
- url~with~api~key = {https://tile.thunderforest.com/landscape/{z}/{x}/{y}.png?apikey=}{thunderforest}{},
- __attribution_thunderforest,
- basename = tiles/landscape,
- }
-\__mermap_new_supply_source:nn { thunderforest~outdoors }
- {
- url~with~api~key = {https://tile.thunderforest.com/outdoors/{z}/{x}/{y}.png?apikey=}{thunderforest}{},
- __attribution_thunderforest,
- basename = tiles/outdoors,
- }
-\__mermap_new_supply_source:nn { thunderforest~transport-dark }
- {
- url~with~api~key = {https://tile.thunderforest.com/transport-dark/{z}/{x}/{y}.png?apikey=}{thunderforest}{},
- __attribution_thunderforest,
- basename = tiles/transport-dark,
- }
-\__mermap_new_supply_source:nn { thunderforest~spinal-map }
- {
- url~with~api~key = {https://tile.thunderforest.com/spinal-map/{z}/{x}/{y}.png?apikey=}{thunderforest}{},
- __attribution_thunderforest,
- basename = tiles/spinal-map,
- }
-\__mermap_new_supply_source:nn { thunderforest~pioneer }
- {
- url~with~api~key = {https://tile.thunderforest.com/pioneer/{z}/{x}/{y}.png?apikey=}{thunderforest}{},
- __attribution_thunderforest,
- basename = tiles/pioneer,
- }
-\__mermap_new_supply_source:nn { thunderforest~mobile-atlas }
- {
- url~with~api~key = {https://tile.thunderforest.com/mobile-atlas/{z}/{x}/{y}.png?apikey=}{thunderforest}{},
- __attribution_thunderforest,
- basename = tiles/mobile-atlas,
- }
-\__mermap_new_supply_source:nn { thunderforest~neighbourhood }
- {
- url~with~api~key = {https://tile.thunderforest.com/neighbourhood/{z}/{x}/{y}.png?apikey=}{thunderforest}{},
- __attribution_thunderforest,
- basename = tiles/neighbourhood,
- }
-
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-Dnom.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-Dnom.fd
new file mode 100644
index 00000000000..9c0cbcf3f51
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-Dnom.fd
@@ -0,0 +1,67 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{LY1MFBOldstyle-Dnom.fd}
+ [2024/08/05 (autoinst) Font definitions for LY1/MFBOldstyle-Dnom.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{LY1}{MFBOldstyle-Dnom}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-Dnom}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-dnom-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Dnom}{bold}{n}{
+ <-> alias * MFBOldstyle-Dnom/b/n
+}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-Dnom}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-dnom-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Dnom}{regular}{it}{
+ <-> alias * MFBOldstyle-Dnom/m/it
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Dnom}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-dnom-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Dnom}{regular}{n}{
+ <-> alias * MFBOldstyle-Dnom/m/n
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Dnom}{m}{sl}{
+ <-> ssub * MFBOldstyle-Dnom/m/it
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Dnom}{regular}{sl}{
+ <-> ssub * MFBOldstyle-Dnom/regular/it
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-Dnom}{bx}{n}{
+ <-> ssub * MFBOldstyle-Dnom/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-Inf.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-Inf.fd
new file mode 100644
index 00000000000..19bae30bde1
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-Inf.fd
@@ -0,0 +1,67 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{LY1MFBOldstyle-Inf.fd}
+ [2024/08/05 (autoinst) Font definitions for LY1/MFBOldstyle-Inf.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{LY1}{MFBOldstyle-Inf}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-Inf}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-inf-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Inf}{bold}{n}{
+ <-> alias * MFBOldstyle-Inf/b/n
+}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-Inf}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-inf-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Inf}{regular}{it}{
+ <-> alias * MFBOldstyle-Inf/m/it
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Inf}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-inf-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Inf}{regular}{n}{
+ <-> alias * MFBOldstyle-Inf/m/n
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Inf}{m}{sl}{
+ <-> ssub * MFBOldstyle-Inf/m/it
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Inf}{regular}{sl}{
+ <-> ssub * MFBOldstyle-Inf/regular/it
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-Inf}{bx}{n}{
+ <-> ssub * MFBOldstyle-Inf/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-LF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-LF.fd
new file mode 100644
index 00000000000..80eb1fae4fa
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-LF.fd
@@ -0,0 +1,75 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{LY1MFBOldstyle-LF.fd}
+ [2024/08/05 (autoinst) Font definitions for LY1/MFBOldstyle-LF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{LY1}{MFBOldstyle-LF}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-LF}{m}{sc}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-lf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-LF}{regular}{sc}{
+ <-> alias * MFBOldstyle-LF/m/sc
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-LF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-lf-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-LF}{regular}{n}{
+ <-> alias * MFBOldstyle-LF/m/n
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-LF}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-lf-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-LF}{regular}{it}{
+ <-> alias * MFBOldstyle-LF/m/it
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-LF}{m}{sl}{
+ <-> ssub * MFBOldstyle-LF/m/it
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-LF}{regular}{sl}{
+ <-> ssub * MFBOldstyle-LF/regular/it
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-LF}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-lf-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-LF}{bold}{n}{
+ <-> alias * MFBOldstyle-LF/b/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-LF}{bx}{n}{
+ <-> ssub * MFBOldstyle-LF/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-Numr.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-Numr.fd
new file mode 100644
index 00000000000..acc9b87ad1d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-Numr.fd
@@ -0,0 +1,67 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{LY1MFBOldstyle-Numr.fd}
+ [2024/08/05 (autoinst) Font definitions for LY1/MFBOldstyle-Numr.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{LY1}{MFBOldstyle-Numr}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-Numr}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-numr-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Numr}{bold}{n}{
+ <-> alias * MFBOldstyle-Numr/b/n
+}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-Numr}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-numr-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Numr}{regular}{n}{
+ <-> alias * MFBOldstyle-Numr/m/n
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Numr}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-numr-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Numr}{regular}{it}{
+ <-> alias * MFBOldstyle-Numr/m/it
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Numr}{m}{sl}{
+ <-> ssub * MFBOldstyle-Numr/m/it
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Numr}{regular}{sl}{
+ <-> ssub * MFBOldstyle-Numr/regular/it
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-Numr}{bx}{n}{
+ <-> ssub * MFBOldstyle-Numr/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-OsF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-OsF.fd
new file mode 100644
index 00000000000..d3047c51edb
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-OsF.fd
@@ -0,0 +1,44 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{LY1MFBOldstyle-OsF.fd}
+ [2024/08/05 (autoinst) Font definitions for LY1/MFBOldstyle-OsF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{LY1}{MFBOldstyle-OsF}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-OsF}{m}{sc}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-osf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-OsF}{regular}{sc}{
+ <-> alias * MFBOldstyle-OsF/m/sc
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-OsF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-osf-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-OsF}{regular}{n}{
+ <-> alias * MFBOldstyle-OsF/m/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-Sup.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-Sup.fd
new file mode 100644
index 00000000000..b2d73b05161
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-Sup.fd
@@ -0,0 +1,67 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{LY1MFBOldstyle-Sup.fd}
+ [2024/08/05 (autoinst) Font definitions for LY1/MFBOldstyle-Sup.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{LY1}{MFBOldstyle-Sup}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-Sup}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-sup-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Sup}{regular}{it}{
+ <-> alias * MFBOldstyle-Sup/m/it
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Sup}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-sup-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Sup}{regular}{n}{
+ <-> alias * MFBOldstyle-Sup/m/n
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Sup}{m}{sl}{
+ <-> ssub * MFBOldstyle-Sup/m/it
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Sup}{regular}{sl}{
+ <-> ssub * MFBOldstyle-Sup/regular/it
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-Sup}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-sup-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-Sup}{bold}{n}{
+ <-> alias * MFBOldstyle-Sup/b/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-Sup}{bx}{n}{
+ <-> ssub * MFBOldstyle-Sup/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-TLF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-TLF.fd
new file mode 100644
index 00000000000..adfe1fd0d86
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-TLF.fd
@@ -0,0 +1,75 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{LY1MFBOldstyle-TLF.fd}
+ [2024/08/05 (autoinst) Font definitions for LY1/MFBOldstyle-TLF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{LY1}{MFBOldstyle-TLF}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-TLF}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-TLF}{regular}{it}{
+ <-> alias * MFBOldstyle-TLF/m/it
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-TLF}{m}{sc}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-tlf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-TLF}{regular}{sc}{
+ <-> alias * MFBOldstyle-TLF/m/sc
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-TLF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-TLF}{regular}{n}{
+ <-> alias * MFBOldstyle-TLF/m/n
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-TLF}{m}{sl}{
+ <-> ssub * MFBOldstyle-TLF/m/it
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-TLF}{regular}{sl}{
+ <-> ssub * MFBOldstyle-TLF/regular/it
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-TLF}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-TLF}{bold}{n}{
+ <-> alias * MFBOldstyle-TLF/b/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-TLF}{bx}{n}{
+ <-> ssub * MFBOldstyle-TLF/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-TOsF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-TOsF.fd
new file mode 100644
index 00000000000..317443d5afd
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/LY1MFBOldstyle-TOsF.fd
@@ -0,0 +1,44 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{LY1MFBOldstyle-TOsF.fd}
+ [2024/08/05 (autoinst) Font definitions for LY1/MFBOldstyle-TOsF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{LY1}{MFBOldstyle-TOsF}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{LY1}{MFBOldstyle-TOsF}{m}{sc}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-tosf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-TOsF}{regular}{sc}{
+ <-> alias * MFBOldstyle-TOsF/m/sc
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-TOsF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-tosf-ly1
+}{}
+
+\DeclareFontShape{LY1}{MFBOldstyle-TOsF}{regular}{n}{
+ <-> alias * MFBOldstyle-TOsF/m/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-Dnom.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-Dnom.fd
new file mode 100644
index 00000000000..05863d4d529
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-Dnom.fd
@@ -0,0 +1,67 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{OT1MFBOldstyle-Dnom.fd}
+ [2024/08/05 (autoinst) Font definitions for OT1/MFBOldstyle-Dnom.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{OT1}{MFBOldstyle-Dnom}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-Dnom}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-dnom-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Dnom}{regular}{it}{
+ <-> alias * MFBOldstyle-Dnom/m/it
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Dnom}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-dnom-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Dnom}{regular}{n}{
+ <-> alias * MFBOldstyle-Dnom/m/n
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Dnom}{m}{sl}{
+ <-> ssub * MFBOldstyle-Dnom/m/it
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Dnom}{regular}{sl}{
+ <-> ssub * MFBOldstyle-Dnom/regular/it
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-Dnom}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-dnom-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Dnom}{bold}{n}{
+ <-> alias * MFBOldstyle-Dnom/b/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-Dnom}{bx}{n}{
+ <-> ssub * MFBOldstyle-Dnom/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-Inf.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-Inf.fd
new file mode 100644
index 00000000000..664a74048be
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-Inf.fd
@@ -0,0 +1,67 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{OT1MFBOldstyle-Inf.fd}
+ [2024/08/05 (autoinst) Font definitions for OT1/MFBOldstyle-Inf.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{OT1}{MFBOldstyle-Inf}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-Inf}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-inf-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Inf}{regular}{n}{
+ <-> alias * MFBOldstyle-Inf/m/n
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Inf}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-inf-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Inf}{regular}{it}{
+ <-> alias * MFBOldstyle-Inf/m/it
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Inf}{m}{sl}{
+ <-> ssub * MFBOldstyle-Inf/m/it
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Inf}{regular}{sl}{
+ <-> ssub * MFBOldstyle-Inf/regular/it
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-Inf}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-inf-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Inf}{bold}{n}{
+ <-> alias * MFBOldstyle-Inf/b/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-Inf}{bx}{n}{
+ <-> ssub * MFBOldstyle-Inf/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-LF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-LF.fd
new file mode 100644
index 00000000000..2c468d897c7
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-LF.fd
@@ -0,0 +1,75 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{OT1MFBOldstyle-LF.fd}
+ [2024/08/05 (autoinst) Font definitions for OT1/MFBOldstyle-LF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{OT1}{MFBOldstyle-LF}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-LF}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-lf-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-LF}{bold}{n}{
+ <-> alias * MFBOldstyle-LF/b/n
+}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-LF}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-lf-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-LF}{regular}{it}{
+ <-> alias * MFBOldstyle-LF/m/it
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-LF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-lf-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-LF}{regular}{n}{
+ <-> alias * MFBOldstyle-LF/m/n
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-LF}{m}{sc}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-lf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-LF}{regular}{sc}{
+ <-> alias * MFBOldstyle-LF/m/sc
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-LF}{m}{sl}{
+ <-> ssub * MFBOldstyle-LF/m/it
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-LF}{regular}{sl}{
+ <-> ssub * MFBOldstyle-LF/regular/it
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-LF}{bx}{n}{
+ <-> ssub * MFBOldstyle-LF/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-Numr.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-Numr.fd
new file mode 100644
index 00000000000..c5df54304a2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-Numr.fd
@@ -0,0 +1,67 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{OT1MFBOldstyle-Numr.fd}
+ [2024/08/05 (autoinst) Font definitions for OT1/MFBOldstyle-Numr.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{OT1}{MFBOldstyle-Numr}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-Numr}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-numr-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Numr}{regular}{it}{
+ <-> alias * MFBOldstyle-Numr/m/it
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Numr}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-numr-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Numr}{regular}{n}{
+ <-> alias * MFBOldstyle-Numr/m/n
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Numr}{m}{sl}{
+ <-> ssub * MFBOldstyle-Numr/m/it
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Numr}{regular}{sl}{
+ <-> ssub * MFBOldstyle-Numr/regular/it
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-Numr}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-numr-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Numr}{bold}{n}{
+ <-> alias * MFBOldstyle-Numr/b/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-Numr}{bx}{n}{
+ <-> ssub * MFBOldstyle-Numr/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-OsF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-OsF.fd
new file mode 100644
index 00000000000..be09da5dfe6
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-OsF.fd
@@ -0,0 +1,44 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{OT1MFBOldstyle-OsF.fd}
+ [2024/08/05 (autoinst) Font definitions for OT1/MFBOldstyle-OsF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{OT1}{MFBOldstyle-OsF}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-OsF}{m}{sc}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-osf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-OsF}{regular}{sc}{
+ <-> alias * MFBOldstyle-OsF/m/sc
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-OsF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-osf-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-OsF}{regular}{n}{
+ <-> alias * MFBOldstyle-OsF/m/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-Sup.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-Sup.fd
new file mode 100644
index 00000000000..2351fc9901c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-Sup.fd
@@ -0,0 +1,67 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{OT1MFBOldstyle-Sup.fd}
+ [2024/08/05 (autoinst) Font definitions for OT1/MFBOldstyle-Sup.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{OT1}{MFBOldstyle-Sup}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-Sup}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-sup-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Sup}{bold}{n}{
+ <-> alias * MFBOldstyle-Sup/b/n
+}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-Sup}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-sup-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Sup}{regular}{it}{
+ <-> alias * MFBOldstyle-Sup/m/it
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Sup}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-sup-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Sup}{regular}{n}{
+ <-> alias * MFBOldstyle-Sup/m/n
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Sup}{m}{sl}{
+ <-> ssub * MFBOldstyle-Sup/m/it
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-Sup}{regular}{sl}{
+ <-> ssub * MFBOldstyle-Sup/regular/it
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-Sup}{bx}{n}{
+ <-> ssub * MFBOldstyle-Sup/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-TLF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-TLF.fd
new file mode 100644
index 00000000000..7eb5636a123
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-TLF.fd
@@ -0,0 +1,75 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{OT1MFBOldstyle-TLF.fd}
+ [2024/08/05 (autoinst) Font definitions for OT1/MFBOldstyle-TLF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{OT1}{MFBOldstyle-TLF}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-TLF}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-tlf-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-TLF}{bold}{n}{
+ <-> alias * MFBOldstyle-TLF/b/n
+}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-TLF}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-tlf-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-TLF}{regular}{it}{
+ <-> alias * MFBOldstyle-TLF/m/it
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-TLF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-tlf-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-TLF}{regular}{n}{
+ <-> alias * MFBOldstyle-TLF/m/n
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-TLF}{m}{sc}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-tlf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-TLF}{regular}{sc}{
+ <-> alias * MFBOldstyle-TLF/m/sc
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-TLF}{m}{sl}{
+ <-> ssub * MFBOldstyle-TLF/m/it
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-TLF}{regular}{sl}{
+ <-> ssub * MFBOldstyle-TLF/regular/it
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-TLF}{bx}{n}{
+ <-> ssub * MFBOldstyle-TLF/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-TOsF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-TOsF.fd
new file mode 100644
index 00000000000..4d0db0317ac
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/OT1MFBOldstyle-TOsF.fd
@@ -0,0 +1,44 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{OT1MFBOldstyle-TOsF.fd}
+ [2024/08/05 (autoinst) Font definitions for OT1/MFBOldstyle-TOsF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{OT1}{MFBOldstyle-TOsF}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{OT1}{MFBOldstyle-TOsF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-tosf-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-TOsF}{regular}{n}{
+ <-> alias * MFBOldstyle-TOsF/m/n
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-TOsF}{m}{sc}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-tosf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{MFBOldstyle-TOsF}{regular}{sc}{
+ <-> alias * MFBOldstyle-TOsF/m/sc
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-Dnom.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-Dnom.fd
new file mode 100644
index 00000000000..2c61008de9c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-Dnom.fd
@@ -0,0 +1,67 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{T1MFBOldstyle-Dnom.fd}
+ [2024/08/05 (autoinst) Font definitions for T1/MFBOldstyle-Dnom.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{MFBOldstyle-Dnom}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T1}{MFBOldstyle-Dnom}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-dnom-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Dnom}{regular}{n}{
+ <-> alias * MFBOldstyle-Dnom/m/n
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Dnom}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-dnom-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Dnom}{regular}{it}{
+ <-> alias * MFBOldstyle-Dnom/m/it
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Dnom}{m}{sl}{
+ <-> ssub * MFBOldstyle-Dnom/m/it
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Dnom}{regular}{sl}{
+ <-> ssub * MFBOldstyle-Dnom/regular/it
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{T1}{MFBOldstyle-Dnom}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-dnom-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Dnom}{bold}{n}{
+ <-> alias * MFBOldstyle-Dnom/b/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T1}{MFBOldstyle-Dnom}{bx}{n}{
+ <-> ssub * MFBOldstyle-Dnom/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-Inf.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-Inf.fd
new file mode 100644
index 00000000000..6f58c047b5b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-Inf.fd
@@ -0,0 +1,67 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{T1MFBOldstyle-Inf.fd}
+ [2024/08/05 (autoinst) Font definitions for T1/MFBOldstyle-Inf.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{MFBOldstyle-Inf}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{T1}{MFBOldstyle-Inf}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-inf-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Inf}{bold}{n}{
+ <-> alias * MFBOldstyle-Inf/b/n
+}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T1}{MFBOldstyle-Inf}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-inf-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Inf}{regular}{n}{
+ <-> alias * MFBOldstyle-Inf/m/n
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Inf}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-inf-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Inf}{regular}{it}{
+ <-> alias * MFBOldstyle-Inf/m/it
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Inf}{m}{sl}{
+ <-> ssub * MFBOldstyle-Inf/m/it
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Inf}{regular}{sl}{
+ <-> ssub * MFBOldstyle-Inf/regular/it
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T1}{MFBOldstyle-Inf}{bx}{n}{
+ <-> ssub * MFBOldstyle-Inf/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-LF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-LF.fd
new file mode 100644
index 00000000000..8e904607902
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-LF.fd
@@ -0,0 +1,75 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{T1MFBOldstyle-LF.fd}
+ [2024/08/05 (autoinst) Font definitions for T1/MFBOldstyle-LF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{MFBOldstyle-LF}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{T1}{MFBOldstyle-LF}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-lf-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-LF}{bold}{n}{
+ <-> alias * MFBOldstyle-LF/b/n
+}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T1}{MFBOldstyle-LF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-lf-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-LF}{regular}{n}{
+ <-> alias * MFBOldstyle-LF/m/n
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-LF}{m}{sc}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-lf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-LF}{regular}{sc}{
+ <-> alias * MFBOldstyle-LF/m/sc
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-LF}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-lf-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-LF}{regular}{it}{
+ <-> alias * MFBOldstyle-LF/m/it
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-LF}{m}{sl}{
+ <-> ssub * MFBOldstyle-LF/m/it
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-LF}{regular}{sl}{
+ <-> ssub * MFBOldstyle-LF/regular/it
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T1}{MFBOldstyle-LF}{bx}{n}{
+ <-> ssub * MFBOldstyle-LF/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-Numr.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-Numr.fd
new file mode 100644
index 00000000000..a8da7242611
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-Numr.fd
@@ -0,0 +1,67 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{T1MFBOldstyle-Numr.fd}
+ [2024/08/05 (autoinst) Font definitions for T1/MFBOldstyle-Numr.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{MFBOldstyle-Numr}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T1}{MFBOldstyle-Numr}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-numr-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Numr}{regular}{it}{
+ <-> alias * MFBOldstyle-Numr/m/it
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Numr}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-numr-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Numr}{regular}{n}{
+ <-> alias * MFBOldstyle-Numr/m/n
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Numr}{m}{sl}{
+ <-> ssub * MFBOldstyle-Numr/m/it
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Numr}{regular}{sl}{
+ <-> ssub * MFBOldstyle-Numr/regular/it
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{T1}{MFBOldstyle-Numr}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-numr-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Numr}{bold}{n}{
+ <-> alias * MFBOldstyle-Numr/b/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T1}{MFBOldstyle-Numr}{bx}{n}{
+ <-> ssub * MFBOldstyle-Numr/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-OsF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-OsF.fd
new file mode 100644
index 00000000000..2332b388489
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-OsF.fd
@@ -0,0 +1,44 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{T1MFBOldstyle-OsF.fd}
+ [2024/08/05 (autoinst) Font definitions for T1/MFBOldstyle-OsF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{MFBOldstyle-OsF}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T1}{MFBOldstyle-OsF}{m}{sc}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-osf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-OsF}{regular}{sc}{
+ <-> alias * MFBOldstyle-OsF/m/sc
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-OsF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-osf-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-OsF}{regular}{n}{
+ <-> alias * MFBOldstyle-OsF/m/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-Sup.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-Sup.fd
new file mode 100644
index 00000000000..fd14ac5df23
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-Sup.fd
@@ -0,0 +1,67 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{T1MFBOldstyle-Sup.fd}
+ [2024/08/05 (autoinst) Font definitions for T1/MFBOldstyle-Sup.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{MFBOldstyle-Sup}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T1}{MFBOldstyle-Sup}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-sup-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Sup}{regular}{n}{
+ <-> alias * MFBOldstyle-Sup/m/n
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Sup}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-sup-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Sup}{regular}{it}{
+ <-> alias * MFBOldstyle-Sup/m/it
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Sup}{m}{sl}{
+ <-> ssub * MFBOldstyle-Sup/m/it
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Sup}{regular}{sl}{
+ <-> ssub * MFBOldstyle-Sup/regular/it
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{T1}{MFBOldstyle-Sup}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-sup-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-Sup}{bold}{n}{
+ <-> alias * MFBOldstyle-Sup/b/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T1}{MFBOldstyle-Sup}{bx}{n}{
+ <-> ssub * MFBOldstyle-Sup/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-TLF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-TLF.fd
new file mode 100644
index 00000000000..d7c80e2171b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-TLF.fd
@@ -0,0 +1,75 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{T1MFBOldstyle-TLF.fd}
+ [2024/08/05 (autoinst) Font definitions for T1/MFBOldstyle-TLF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{MFBOldstyle-TLF}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{T1}{MFBOldstyle-TLF}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-TLF}{bold}{n}{
+ <-> alias * MFBOldstyle-TLF/b/n
+}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T1}{MFBOldstyle-TLF}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-TLF}{regular}{it}{
+ <-> alias * MFBOldstyle-TLF/m/it
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-TLF}{m}{sc}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-tlf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-TLF}{regular}{sc}{
+ <-> alias * MFBOldstyle-TLF/m/sc
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-TLF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-TLF}{regular}{n}{
+ <-> alias * MFBOldstyle-TLF/m/n
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-TLF}{m}{sl}{
+ <-> ssub * MFBOldstyle-TLF/m/it
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-TLF}{regular}{sl}{
+ <-> ssub * MFBOldstyle-TLF/regular/it
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T1}{MFBOldstyle-TLF}{bx}{n}{
+ <-> ssub * MFBOldstyle-TLF/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-TOsF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-TOsF.fd
new file mode 100644
index 00000000000..6f696037590
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/T1MFBOldstyle-TOsF.fd
@@ -0,0 +1,44 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{T1MFBOldstyle-TOsF.fd}
+ [2024/08/05 (autoinst) Font definitions for T1/MFBOldstyle-TOsF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{MFBOldstyle-TOsF}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T1}{MFBOldstyle-TOsF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-tosf-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-TOsF}{regular}{n}{
+ <-> alias * MFBOldstyle-TOsF/m/n
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-TOsF}{m}{sc}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-tosf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{MFBOldstyle-TOsF}{regular}{sc}{
+ <-> alias * MFBOldstyle-TOsF/m/sc
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-Dnom.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-Dnom.fd
new file mode 100644
index 00000000000..dd93afa56be
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-Dnom.fd
@@ -0,0 +1,67 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{T5MFBOldstyle-Dnom.fd}
+ [2024/08/05 (autoinst) Font definitions for T5/MFBOldstyle-Dnom.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T5}{MFBOldstyle-Dnom}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{T5}{MFBOldstyle-Dnom}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-dnom-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Dnom}{bold}{n}{
+ <-> alias * MFBOldstyle-Dnom/b/n
+}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T5}{MFBOldstyle-Dnom}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-dnom-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Dnom}{regular}{it}{
+ <-> alias * MFBOldstyle-Dnom/m/it
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Dnom}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-dnom-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Dnom}{regular}{n}{
+ <-> alias * MFBOldstyle-Dnom/m/n
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Dnom}{m}{sl}{
+ <-> ssub * MFBOldstyle-Dnom/m/it
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Dnom}{regular}{sl}{
+ <-> ssub * MFBOldstyle-Dnom/regular/it
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T5}{MFBOldstyle-Dnom}{bx}{n}{
+ <-> ssub * MFBOldstyle-Dnom/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-Inf.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-Inf.fd
new file mode 100644
index 00000000000..4aff4a0bf02
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-Inf.fd
@@ -0,0 +1,67 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{T5MFBOldstyle-Inf.fd}
+ [2024/08/05 (autoinst) Font definitions for T5/MFBOldstyle-Inf.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T5}{MFBOldstyle-Inf}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T5}{MFBOldstyle-Inf}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-inf-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Inf}{regular}{n}{
+ <-> alias * MFBOldstyle-Inf/m/n
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Inf}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-inf-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Inf}{regular}{it}{
+ <-> alias * MFBOldstyle-Inf/m/it
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Inf}{m}{sl}{
+ <-> ssub * MFBOldstyle-Inf/m/it
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Inf}{regular}{sl}{
+ <-> ssub * MFBOldstyle-Inf/regular/it
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{T5}{MFBOldstyle-Inf}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-inf-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Inf}{bold}{n}{
+ <-> alias * MFBOldstyle-Inf/b/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T5}{MFBOldstyle-Inf}{bx}{n}{
+ <-> ssub * MFBOldstyle-Inf/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-LF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-LF.fd
new file mode 100644
index 00000000000..20b7b6cc8a8
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-LF.fd
@@ -0,0 +1,75 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{T5MFBOldstyle-LF.fd}
+ [2024/08/05 (autoinst) Font definitions for T5/MFBOldstyle-LF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T5}{MFBOldstyle-LF}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{T5}{MFBOldstyle-LF}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-lf-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-LF}{bold}{n}{
+ <-> alias * MFBOldstyle-LF/b/n
+}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T5}{MFBOldstyle-LF}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-lf-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-LF}{regular}{it}{
+ <-> alias * MFBOldstyle-LF/m/it
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-LF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-lf-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-LF}{regular}{n}{
+ <-> alias * MFBOldstyle-LF/m/n
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-LF}{m}{sc}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-lf-sc-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-LF}{regular}{sc}{
+ <-> alias * MFBOldstyle-LF/m/sc
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-LF}{m}{sl}{
+ <-> ssub * MFBOldstyle-LF/m/it
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-LF}{regular}{sl}{
+ <-> ssub * MFBOldstyle-LF/regular/it
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T5}{MFBOldstyle-LF}{bx}{n}{
+ <-> ssub * MFBOldstyle-LF/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-Numr.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-Numr.fd
new file mode 100644
index 00000000000..c5e53dd36e9
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-Numr.fd
@@ -0,0 +1,67 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{T5MFBOldstyle-Numr.fd}
+ [2024/08/05 (autoinst) Font definitions for T5/MFBOldstyle-Numr.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T5}{MFBOldstyle-Numr}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T5}{MFBOldstyle-Numr}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-numr-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Numr}{regular}{n}{
+ <-> alias * MFBOldstyle-Numr/m/n
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Numr}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-numr-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Numr}{regular}{it}{
+ <-> alias * MFBOldstyle-Numr/m/it
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Numr}{m}{sl}{
+ <-> ssub * MFBOldstyle-Numr/m/it
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Numr}{regular}{sl}{
+ <-> ssub * MFBOldstyle-Numr/regular/it
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{T5}{MFBOldstyle-Numr}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-numr-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Numr}{bold}{n}{
+ <-> alias * MFBOldstyle-Numr/b/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T5}{MFBOldstyle-Numr}{bx}{n}{
+ <-> ssub * MFBOldstyle-Numr/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-OsF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-OsF.fd
new file mode 100644
index 00000000000..4b4bfd27399
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-OsF.fd
@@ -0,0 +1,44 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{T5MFBOldstyle-OsF.fd}
+ [2024/08/05 (autoinst) Font definitions for T5/MFBOldstyle-OsF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T5}{MFBOldstyle-OsF}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T5}{MFBOldstyle-OsF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-osf-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-OsF}{regular}{n}{
+ <-> alias * MFBOldstyle-OsF/m/n
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-OsF}{m}{sc}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-osf-sc-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-OsF}{regular}{sc}{
+ <-> alias * MFBOldstyle-OsF/m/sc
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-Sup.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-Sup.fd
new file mode 100644
index 00000000000..c58149a46ef
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-Sup.fd
@@ -0,0 +1,67 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{T5MFBOldstyle-Sup.fd}
+ [2024/08/05 (autoinst) Font definitions for T5/MFBOldstyle-Sup.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T5}{MFBOldstyle-Sup}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T5}{MFBOldstyle-Sup}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-sup-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Sup}{regular}{it}{
+ <-> alias * MFBOldstyle-Sup/m/it
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Sup}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-sup-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Sup}{regular}{n}{
+ <-> alias * MFBOldstyle-Sup/m/n
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Sup}{m}{sl}{
+ <-> ssub * MFBOldstyle-Sup/m/it
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Sup}{regular}{sl}{
+ <-> ssub * MFBOldstyle-Sup/regular/it
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{T5}{MFBOldstyle-Sup}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-sup-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-Sup}{bold}{n}{
+ <-> alias * MFBOldstyle-Sup/b/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T5}{MFBOldstyle-Sup}{bx}{n}{
+ <-> ssub * MFBOldstyle-Sup/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-TLF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-TLF.fd
new file mode 100644
index 00000000000..5d4e067775c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-TLF.fd
@@ -0,0 +1,75 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{T5MFBOldstyle-TLF.fd}
+ [2024/08/05 (autoinst) Font definitions for T5/MFBOldstyle-TLF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T5}{MFBOldstyle-TLF}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T5}{MFBOldstyle-TLF}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-tlf-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-TLF}{regular}{it}{
+ <-> alias * MFBOldstyle-TLF/m/it
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-TLF}{m}{sc}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-tlf-sc-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-TLF}{regular}{sc}{
+ <-> alias * MFBOldstyle-TLF/m/sc
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-TLF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-tlf-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-TLF}{regular}{n}{
+ <-> alias * MFBOldstyle-TLF/m/n
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-TLF}{m}{sl}{
+ <-> ssub * MFBOldstyle-TLF/m/it
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-TLF}{regular}{sl}{
+ <-> ssub * MFBOldstyle-TLF/regular/it
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{T5}{MFBOldstyle-TLF}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-tlf-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-TLF}{bold}{n}{
+ <-> alias * MFBOldstyle-TLF/b/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{T5}{MFBOldstyle-TLF}{bx}{n}{
+ <-> ssub * MFBOldstyle-TLF/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-TOsF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-TOsF.fd
new file mode 100644
index 00000000000..e377aa052ee
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/T5MFBOldstyle-TOsF.fd
@@ -0,0 +1,44 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{T5MFBOldstyle-TOsF.fd}
+ [2024/08/05 (autoinst) Font definitions for T5/MFBOldstyle-TOsF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T5}{MFBOldstyle-TOsF}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{T5}{MFBOldstyle-TOsF}{m}{sc}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-tosf-sc-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-TOsF}{regular}{sc}{
+ <-> alias * MFBOldstyle-TOsF/m/sc
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-TOsF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-tosf-t5
+}{}
+
+\DeclareFontShape{T5}{MFBOldstyle-TOsF}{regular}{n}{
+ <-> alias * MFBOldstyle-TOsF/m/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/TS1MFBOldstyle-LF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/TS1MFBOldstyle-LF.fd
new file mode 100644
index 00000000000..8a6b0384cc0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/TS1MFBOldstyle-LF.fd
@@ -0,0 +1,67 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{TS1MFBOldstyle-LF.fd}
+ [2024/08/05 (autoinst) Font definitions for TS1/MFBOldstyle-LF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{MFBOldstyle-LF}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{TS1}{MFBOldstyle-LF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-lf-ts1
+}{}
+
+\DeclareFontShape{TS1}{MFBOldstyle-LF}{regular}{n}{
+ <-> alias * MFBOldstyle-LF/m/n
+}{}
+
+\DeclareFontShape{TS1}{MFBOldstyle-LF}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-lf-ts1
+}{}
+
+\DeclareFontShape{TS1}{MFBOldstyle-LF}{regular}{it}{
+ <-> alias * MFBOldstyle-LF/m/it
+}{}
+
+\DeclareFontShape{TS1}{MFBOldstyle-LF}{m}{sl}{
+ <-> ssub * MFBOldstyle-LF/m/it
+}{}
+
+\DeclareFontShape{TS1}{MFBOldstyle-LF}{regular}{sl}{
+ <-> ssub * MFBOldstyle-LF/regular/it
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{TS1}{MFBOldstyle-LF}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-lf-ts1
+}{}
+
+\DeclareFontShape{TS1}{MFBOldstyle-LF}{bold}{n}{
+ <-> alias * MFBOldstyle-LF/b/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{TS1}{MFBOldstyle-LF}{bx}{n}{
+ <-> ssub * MFBOldstyle-LF/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/TS1MFBOldstyle-OsF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/TS1MFBOldstyle-OsF.fd
new file mode 100644
index 00000000000..e3f0e59f786
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/TS1MFBOldstyle-OsF.fd
@@ -0,0 +1,36 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{TS1MFBOldstyle-OsF.fd}
+ [2024/08/05 (autoinst) Font definitions for TS1/MFBOldstyle-OsF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{MFBOldstyle-OsF}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{TS1}{MFBOldstyle-OsF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-osf-ts1
+}{}
+
+\DeclareFontShape{TS1}{MFBOldstyle-OsF}{regular}{n}{
+ <-> alias * MFBOldstyle-OsF/m/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/TS1MFBOldstyle-TLF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/TS1MFBOldstyle-TLF.fd
new file mode 100644
index 00000000000..f25231bec92
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/TS1MFBOldstyle-TLF.fd
@@ -0,0 +1,67 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{TS1MFBOldstyle-TLF.fd}
+ [2024/08/05 (autoinst) Font definitions for TS1/MFBOldstyle-TLF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{MFBOldstyle-TLF}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{TS1}{MFBOldstyle-TLF}{m}{it}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Italic-tlf-ts1
+}{}
+
+\DeclareFontShape{TS1}{MFBOldstyle-TLF}{regular}{it}{
+ <-> alias * MFBOldstyle-TLF/m/it
+}{}
+
+\DeclareFontShape{TS1}{MFBOldstyle-TLF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-tlf-ts1
+}{}
+
+\DeclareFontShape{TS1}{MFBOldstyle-TLF}{regular}{n}{
+ <-> alias * MFBOldstyle-TLF/m/n
+}{}
+
+\DeclareFontShape{TS1}{MFBOldstyle-TLF}{m}{sl}{
+ <-> ssub * MFBOldstyle-TLF/m/it
+}{}
+
+\DeclareFontShape{TS1}{MFBOldstyle-TLF}{regular}{sl}{
+ <-> ssub * MFBOldstyle-TLF/regular/it
+}{}
+
+
+% ---- b = bold ----
+
+\DeclareFontShape{TS1}{MFBOldstyle-TLF}{b}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Bold-tlf-ts1
+}{}
+
+\DeclareFontShape{TS1}{MFBOldstyle-TLF}{bold}{n}{
+ <-> alias * MFBOldstyle-TLF/b/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\DeclareFontShape{TS1}{MFBOldstyle-TLF}{bx}{n}{
+ <-> ssub * MFBOldstyle-TLF/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/TS1MFBOldstyle-TOsF.fd b/Master/texmf-dist/tex/latex/mfb-oldstyle/TS1MFBOldstyle-TOsF.fd
new file mode 100644
index 00000000000..b53f26148ef
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/TS1MFBOldstyle-TOsF.fd
@@ -0,0 +1,36 @@
+%% Generated by autoinst on 2024/08/05
+%%
+\ProvidesFile{TS1MFBOldstyle-TOsF.fd}
+ [2024/08/05 (autoinst) Font definitions for TS1/MFBOldstyle-TOsF.]
+
+\ifcsname s@fct@alias\endcsname\else
+\gdef\s@fct@alias{\sub@sfcnt\@font@aliasinfo}
+\gdef\@font@aliasinfo#1{%
+ \@font@info{Font\space shape\space `\curr@fontshape'\space will
+ \space be\space aliased\MessageBreak to\space `\mandatory@arg'}%
+}
+\fi
+
+\expandafter\ifx\csname MFBOldstyle@scale\endcsname\relax
+ \let\MFBOldstyle@@scale\@empty
+\else
+ \edef\MFBOldstyle@@scale{s*[\csname MFBOldstyle@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{MFBOldstyle-TOsF}{}
+
+
+% ---- m = regular ----
+
+\DeclareFontShape{TS1}{MFBOldstyle-TOsF}{m}{n}{
+ <-> \MFBOldstyle@@scale MFBOldstyle-Regular-tosf-ts1
+}{}
+
+\DeclareFontShape{TS1}{MFBOldstyle-TOsF}{regular}{n}{
+ <-> alias * MFBOldstyle-TOsF/m/n
+}{}
+
+
+% ---- Extra 'ssub' rules to map 'bx' to 'b' ----
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/mfb-oldstyle/mfb-oldstyle.sty b/Master/texmf-dist/tex/latex/mfb-oldstyle/mfb-oldstyle.sty
new file mode 100644
index 00000000000..4bfbde6a576
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/mfb-oldstyle/mfb-oldstyle.sty
@@ -0,0 +1,93 @@
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{mfb-oldstyle}
+ [2024/08/05 (autoinst) Style file for MFBOldstyle fonts.]
+
+\RequirePackage{xkeyval}
+\newcommand*{\MFBOldstyle@scale}{1}
+\DeclareOptionX{scale}{\renewcommand*{\MFBOldstyle@scale}{#1}}
+\DeclareOptionX{scaled}{\renewcommand*{\MFBOldstyle@scale}{#1}}
+
+\DeclareOptionX{lining}{\edef\MFBOldstyle@figurestyle{LF}}
+\DeclareOptionX{oldstyle}{\edef\MFBOldstyle@figurestyle{OsF}}
+\DeclareOptionX{tabular}{\edef\MFBOldstyle@figurealign{T}}
+\DeclareOptionX{proportional}{\edef\MFBOldstyle@figurealign{}}
+\edef\MFBOldstyle@figurestyle{LF}
+\edef\MFBOldstyle@figurealign{}
+
+\DeclareOptionX{mainfont}{
+ \renewcommand{\familydefault}{\rmdefault}
+}
+\DeclareOptionX{bold}{\edef\bfseries@rm{bold}}
+\DeclareOptionX{regular}{\edef\mdseries@rm{regular}}
+
+\ProcessOptionsX\relax
+
+\RequirePackage[LY1,T1,T5]{fontenc}
+\RequirePackage{textcomp}
+\RequirePackage{ifthen}
+\RequirePackage{mweights}
+
+\IfFileExists{fontaxes.sty}{
+ \RequirePackage{fontaxes}
+ \fa@naming@exception{figures}{{superior}{proportional}}{Sup}
+ \fa@naming@exception{figures}{{superior}{tabular}}{Sup}
+ \def\supfigures{\@nomath\supfigures
+ \fontfigurestyle{superior}\selectfont}
+ \let\sufigures\supfigures
+ \DeclareTextFontCommand{\textsup}{\supfigures}
+ \let\textsu\textsup
+ \let\textsuperior\textsup
+ \let\@oldtextsuperscript\textsuperscript
+ \def\textsuperscript{\@ifstar\@oldtextsuperscript\textsup}
+ \def\@makefnmark{%
+ \mbox{\footnotemarkfont\textsuperscript{\@thefnmark}}}
+ \@ifundefined{ftntm@font}%
+ {\let\footnotemarkfont\normalfont}%
+ {\let\footnotemarkfont\ftntm@font}
+
+ \fa@naming@exception{figures}{{inferior}{proportional}}{Inf}
+ \fa@naming@exception{figures}{{inferior}{tabular}}{Inf}
+ \def\inffigures{\@nomath\inffigures
+ \fontfigurestyle{inferior}\selectfont}
+ \let\infigures\inffigures
+ \DeclareTextFontCommand{\textinf}{\inffigures}
+ \let\textin\textinf
+ \let\textinferior\textinf
+ \let\@oldtextsubscript\textsubscript
+ \def\textsubscript{\@ifstar\@oldtextsubscript\textinf}
+
+ \fa@naming@exception{figures}{{numerators}{proportional}}{Numr}
+ \fa@naming@exception{figures}{{numerator}{proportional}}{Numr}
+ \fa@naming@exception{figures}{{numerators}{tabular}}{Numr}
+ \fa@naming@exception{figures}{{numerator}{tabular}}{Numr}
+
+ \fa@naming@exception{figures}{{denominators}{proportional}}{Dnom}
+ \fa@naming@exception{figures}{{denominator}{proportional}}{Dnom}
+ \fa@naming@exception{figures}{{denominators}{tabular}}{Dnom}
+ \fa@naming@exception{figures}{{denominator}{tabular}}{Dnom}
+
+}{}
+
+% Here we implement the scale=MatchLowercase option.
+% If this is given, we must compute the correct value of
+% the "\MFBOldstyle@scale" parameter before loading the .fd files;
+% but to determine that value we of course need the font's x-height.
+% To avoid triggering the loading of .fd files,
+% we use plain TeX's \font primitive to load the testfont.
+% We then compute the ratio of the current x-height to our font's x-height;
+% this is the "\MFBOldstyle@scale" we will pass to the .fd files.
+\ifthenelse{\equal{\MFBOldstyle@scale}{MatchLowercase}}
+ { \newlength{\MFBOldstyle@currentx}
+ \settoheight{\MFBOldstyle@currentx}{x}
+ \newlength{\MFBOldstyle@xheight}
+ \settoheight{\MFBOldstyle@xheight}
+ {{\font\testfont=MFBOldstyle-Regular-osf-ot1 at \f@size pt\testfont x}}
+ \renewcommand*{\MFBOldstyle@scale}
+ {\strip@pt\dimexpr\number\numexpr\number\dimexpr\MFBOldstyle@currentx\relax*65536/\number\dimexpr\MFBOldstyle@xheight\relax\relax sp\relax}}
+ {}
+
+\renewcommand*
+ {\rmdefault}
+ {MFBOldstyle-\MFBOldstyle@figurealign\MFBOldstyle@figurestyle}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/minted/minted.sty b/Master/texmf-dist/tex/latex/minted/minted.sty
index bd7e756dcc5..7058dbcd4a6 100644
--- a/Master/texmf-dist/tex/latex/minted/minted.sty
+++ b/Master/texmf-dist/tex/latex/minted/minted.sty
@@ -5,19 +5,17 @@
%% The original source files were:
%%
%% minted.dtx (with options: `package')
-%% Copyright 2013--2022 Geoffrey M. Poore
-%% Copyright 2010--2011 Konrad Rudolph
%%
+%% Copyright (C) 2013-2024 by Geoffrey M. Poore <gpoore@gmail.com>
+%% Copyright (C) 2010-2011 by Konrad Rudolph <konrad_rudolph@madrat.net>
+%% --------------------------------------------------------------------------
%% This work may be distributed and/or modified under the
-%% conditions of the LaTeX Project Public License, either version 1.3
+%% conditions of the LaTeX Project Public License, either version 1.3c
%% of this license or (at your option) any later version.
%% The latest version of this license is in
-%% http://www.latex-project.org/lppl.txt
-%% and version 1.3 or later is part of all distributions of LaTeX
-%% version 2005/12/01 or later.
-%%
-%% Additionally, the project may be distributed under the terms of the new BSD
-%% license.
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008/05/04 or later.
%%
%% This work has the LPPL maintenance status `maintained'.
%%
@@ -25,1001 +23,1406 @@
%%
%% This work consists of the files minted.dtx and minted.ins
%% and the derived file minted.sty.
+%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{minted}
- [2023/12/18 v2.9 Yet another Pygments shim for LaTeX]
-\RequirePackage{keyval}
-\RequirePackage{kvoptions}
-\RequirePackage{fvextra}[2022/11/30]
-\RequirePackage{ifthen}
-\IfFileExists{shellesc.sty}
- {\RequirePackage{shellesc}
- \@ifpackagelater{shellesc}{2016/04/29}
- {}
- {\protected\def\ShellEscape{\immediate\write18 }}}
- {\protected\def\ShellEscape{\immediate\write18 }}
-\RequirePackage{ifplatform}
-\RequirePackage{pdftexcmds}
-\RequirePackage{etoolbox}
-\RequirePackage{xstring}
-\RequirePackage{lineno}
-\RequirePackage{framed}
+ [2024/09/22 v3.0.0 Yet another Pygments shim for LaTeX]
\RequirePackage{catchfile}
+\RequirePackage{etoolbox}
+\RequirePackage{fvextra}[2024/09/05]
+\RequirePackage{latex2pydata}[2024/05/16]
+\RequirePackage{pdftexcmds}
+\RequirePackage{pgfkeys}
+\RequirePackage{pgfopts}
+\RequirePackage{shellesc}
\AtEndPreamble{%
- \@ifpackageloaded{color}{}{%
- \@ifpackageloaded{xcolor}{}{\RequirePackage{xcolor}}}%
-}
-\DeclareVoidOption{chapter}{\def\minted@float@within{chapter}}
-\DeclareVoidOption{section}{\def\minted@float@within{section}}
-\DeclareBoolOption{newfloat}
-\DeclareBoolOption[true]{cache}
-\StrSubstitute{\jobname}{ }{_}[\minted@jobname]
-\StrSubstitute{\minted@jobname}{*}{_}[\minted@jobname]
-\StrSubstitute{\minted@jobname}{"}{}[\minted@jobname]
-\StrSubstitute{\minted@jobname}{'}{_}[\minted@jobname]
-\newcommand{\minted@cachedir}{\detokenize{_}minted-\minted@jobname}
-\let\minted@cachedir@windows\minted@cachedir
-\define@key{minted}{cachedir}{%
- \@namedef{minted@cachedir}{#1}%
- \StrSubstitute{\minted@cachedir}{/}{\@backslashchar}[\minted@cachedir@windows]}
-\DeclareBoolOption{finalizecache}
-\DeclareBoolOption{frozencache}
-\let\minted@outputdir\@empty
-\let\minted@outputdir@windows\@empty
-\define@key{minted}{outputdir}{%
- \@namedef{minted@outputdir}{#1/}%
- \StrSubstitute{\minted@outputdir}{/}%
- {\@backslashchar}[\minted@outputdir@windows]}
-\DeclareBoolOption{inputlanglinenos}
-\DeclareBoolOption{kpsewhich}
-\DeclareBoolOption{langlinenos}
-\DeclareBoolOption{draft}
-\DeclareComplementaryOption{final}{draft}
-\ProcessKeyvalOptions*
-\ifthenelse{\boolean{minted@newfloat}}{\RequirePackage{newfloat}}{\RequirePackage{float}}
-\ifcsname tikzifexternalizing\endcsname
- \tikzifexternalizing{\minted@drafttrue\minted@cachefalse}{}
+ \IfPackageLoadedTF{color}%
+ {}%
+ {\IfPackageLoadedTF{xcolor}{}{\RequirePackage{xcolor}}}}
+\def\minted@error#1{\PackageError{minted}{#1}{}}
+\def\minted@fatalerror#1{%
+ \minted@error{#1}%
+ \batchmode\read -1 to \minted@fatalerror@exitnow}
+\def\minted@warning#1{\PackageWarning{minted}{#1}}
+\edef\MintedExecutable{\detokenize{latexminted}}
+\edef\minted@executable@minversion{\detokenize{0.1.0}}
+\def\minted@executable@setminversioncomponents{%
+ \expandafter\minted@executable@setminversioncomponents@i
+ \minted@executable@minversion\relax}
+\begingroup
+\catcode`\.=12
+\gdef\minted@executable@setminversioncomponents@i#1.#2.#3\relax{%
+ \def\minted@executable@minmajor{#1}%
+ \def\minted@executable@minminor{#2}%
+ \def\minted@executable@minpatch{#3}}
+\endgroup
+\minted@executable@setminversioncomponents
+\let\minted@executable@version\relax
+\newbool{minted@executable@exists}
+\newbool{minted@executable@issupported}
+\begingroup
+\catcode`\-=12
+\catcode`\+=12
+\catcode`\:=12
+\def\minted@creationdatetotimestamp#1{%
+ \expandafter\minted@creationdatetotimestamp@i#1-\relax}
+\def\minted@creationdatetotimestamp@i#1:#2-#3\relax{%
+ \minted@creationdatetotimestamp@ii#2+\relax}
+\def\minted@creationdatetotimestamp@ii#1+#2\relax{%
+ #1}
+\expandafter\ifx\csname pdftexversion\endcsname\relax
\else
- \ifcsname tikzexternalrealjob\endcsname
- \minted@drafttrue
- \minted@cachefalse
- \else
- \fi
+ \xdef\minted@timestamp{\minted@creationdatetotimestamp{\pdfcreationdate}}
\fi
-\ifthenelse{\boolean{minted@finalizecache}}%
- {\ifthenelse{\boolean{minted@frozencache}}%
- {\PackageError{minted}%
- {Options "finalizecache" and "frozencache" are not compatible}%
- {Options "finalizecache" and "frozencache" are not compatible}}%
- {}}%
- {}
-\ifthenelse{\boolean{minted@cache}}%
- {\ifthenelse{\boolean{minted@frozencache}}%
- {}%
- {\AtEndOfPackage{\ProvideDirectory{\minted@outputdir\minted@cachedir}}}}%
- {}
-\newcommand{\minted@input}[1]{%
- \IfFileExists{#1}%
- {\input{#1}}%
- {\PackageError{minted}{Missing Pygments output; \string\inputminted\space
- was^^Jprobably given a file that does not exist--otherwise, you may need
- ^^Jthe outputdir package option, or may be using an incompatible build
- tool,^^Jor may be using frozencache with a missing file}%
- {This could be caused by using -output-directory or -aux-directory
- ^^Jwithout setting minted's outputdir, or by using a build tool that
- ^^Jchanges paths in ways minted cannot detect,
- ^^Jor using frozencache with a missing file.}}%
-}
-\newcommand{\minted@infile}{\minted@jobname.out.pyg}
-\newcommand{\minted@cachelist}{}
-\newcommand{\minted@addcachefile}[1]{%
- \expandafter\long\expandafter\gdef\expandafter\minted@cachelist\expandafter{%
- \minted@cachelist,^^J%
- \space\space#1}%
- \expandafter\gdef\csname minted@cached@#1\endcsname{}%
-}
-\newcommand{\minted@savecachelist}{%
- \ifdefempty{\minted@cachelist}{}{%
- \immediate\write\@mainaux{%
- \string\gdef\string\minted@oldcachelist\string{%
- \minted@cachelist\string}}%
- }%
-}
-\newcommand{\minted@cleancache}{%
- \ifcsname minted@oldcachelist\endcsname
- \def\do##1{%
- \ifthenelse{\equal{##1}{}}{}{%
- \ifcsname minted@cached@##1\endcsname\else
- \DeleteFile[\minted@outputdir\minted@cachedir]{##1}%
- \fi
- }%
- }%
- \expandafter\docsvlist\expandafter{\minted@oldcachelist}%
- \else
- \fi
-}
-\ifthenelse{\boolean{minted@draft}}%
- {\AtEndDocument{%
- \ifcsname minted@oldcachelist\endcsname
- \StrSubstitute{\minted@oldcachelist}{,}{,^^J }[\minted@cachelist]
- \minted@savecachelist
- \fi}}%
- {\ifthenelse{\boolean{minted@frozencache}}%
- {\AtEndDocument{%
- \ifcsname minted@oldcachelist\endcsname
- \StrSubstitute{\minted@oldcachelist}{,}{,^^J }[\minted@cachelist]
- \minted@savecachelist
- \fi}}%
- {\AtEndDocument{%
- \minted@savecachelist
- \minted@cleancache}}}%
-\ifwindows
- \providecommand{\DeleteFile}[2][]{%
- \ifthenelse{\equal{#1}{}}%
- {\IfFileExists{#2}{\ShellEscape{del #2}}{}}%
- {\IfFileExists{#1/#2}{%
- \StrSubstitute{#1}{/}{\@backslashchar}[\minted@windir]
- \ShellEscape{del \minted@windir\@backslashchar #2}}{}}}
+\expandafter\ifx\csname XeTeXrevision\endcsname\relax
\else
- \providecommand{\DeleteFile}[2][]{%
- \ifthenelse{\equal{#1}{}}%
- {\IfFileExists{#2}{\ShellEscape{rm #2}}{}}%
- {\IfFileExists{#1/#2}{\ShellEscape{rm #1/#2}}{}}}
+ \xdef\minted@timestamp{\minted@creationdatetotimestamp{\creationdate}}
\fi
-\ifwindows
- \newcommand{\ProvideDirectory}[1]{%
- \StrSubstitute{#1}{/}{\@backslashchar}[\minted@windir]
- \ShellEscape{if not exist \minted@windir\space mkdir \minted@windir}}
+\expandafter\ifx\csname directlua\endcsname\relax
\else
- \newcommand{\ProvideDirectory}[1]{%
- \ShellEscape{mkdir -p #1}}
+ \xdef\minted@timestamp{\minted@creationdatetotimestamp{\pdffeedback creationdate}}
\fi
-\newboolean{AppExists}
-\newread\minted@appexistsfile
-\newcommand{\TestAppExists}[1]{%
- \ifwindows
- \DeleteFile{\minted@jobname.aex}%
- \ShellEscape{for \string^\@percentchar i in (#1.exe #1.bat #1.cmd)
- do set > \minted@jobname.aex <nul: /p
- x=\string^\@percentchar \string~$PATH:i>> \minted@jobname.aex}%
- %$ <- balance syntax highlighting
- \immediate\openin\minted@appexistsfile\minted@jobname.aex
- \expandafter\def\expandafter\@tmp@cr\expandafter{\the\endlinechar}%
- \endlinechar=-1\relax
- \readline\minted@appexistsfile to \minted@apppathifexists
- \endlinechar=\@tmp@cr
- \ifthenelse{\equal{\minted@apppathifexists}{}}%
- {\AppExistsfalse}%
- {\AppExiststrue}%
- \immediate\closein\minted@appexistsfile
- \DeleteFile{\minted@jobname.aex}%
+\endgroup
+\ifcsname minted@timestamp\endcsname
+\else
+ \begingroup
+ \newcounter{minted@timestamp@hr}
+ \newcounter{minted@timestamp@min}
+ \setcounter{minted@timestamp@min}{\number\time}
+ \loop\unless\ifnum\value{minted@timestamp@min}<60\relax
+ \addtocounter{minted@timestamp@hr}{1}
+ \addtocounter{minted@timestamp@min}{-60}
+ \repeat
+ \xdef\minted@timestamp{%
+ \the\year
+ \ifnum\month<10 0\fi\the\month
+ \ifnum\day<10 0\fi\the\day
+ \ifnum\value{minted@timestamp@hr}<10 0\fi\theminted@timestamp@hr
+ \ifnum\value{minted@timestamp@min}<10 0\fi\theminted@timestamp@min}
+ \endgroup
+\fi
+\begingroup
+\catcode`\"=12
+\catcode`\'=12
+\gdef\minted@setjobnamemdfive#1#2\FV@Sentinel{%
+ \ifx#1"\relax
+ \let\minted@next\minted@setjobnamemdfive@dquoted
+ \else\ifx#1'\relax
+ \let\minted@next\minted@setjobnamemdfive@squoted
\else
- \ShellEscape{command -v #1 && touch \minted@jobname.aex}%
- \IfFileExists{\minted@jobname.aex}%
- {\AppExiststrue
- \DeleteFile{\minted@jobname.aex}}%
- {\AppExistsfalse}%
- \fi
+ \let\minted@next\minted@setjobnamemdfive@uquoted
+ \fi\fi
+ \minted@next#1#2\FV@Sentinel}
+\gdef\minted@setjobnamemdfive@dquoted#1#2\FV@Sentinel{%
+ \minted@setjobnamemdfive@dquoted@i#2"\FV@Sentinel}
+\gdef\minted@setjobnamemdfive@dquoted@i#1"#2\FV@Sentinel{%
+ \if\relax\detokenize{#2}\relax
+ \edef\MintedJobnameMdfive{\pdf@mdfivesum{\jobname}}%
+ \else\if\relax\detokenize\expandafter{\@gobble#2}\relax
+ \edef\MintedJobnameMdfive{\pdf@mdfivesum{#1}}%
+ \else
+ \edef\MintedJobnameMdfive{\pdf@mdfivesum{\jobname}}%
+ \fi\fi}
+\gdef\minted@setjobnamemdfive@squoted#1#2\FV@Sentinel{%
+ \minted@setjobnamemdfive@squoted@i#2'\FV@Sentinel}
+\gdef\minted@setjobnamemdfive@squoted@i#1'#2\FV@Sentinel{%
+ \if\relax\detokenize{#2}\relax
+ \edef\MintedJobnameMdfive{\pdf@mdfivesum{\jobname}}%
+ \else\if\relax\detokenize\expandafter{\@gobble#2}\relax
+ \edef\MintedJobnameMdfive{\pdf@mdfivesum{#1}}%
+ \else
+ \edef\MintedJobnameMdfive{\pdf@mdfivesum{\jobname}}%
+ \fi\fi}
+\gdef\minted@setjobnamemdfive@uquoted#1\FV@Sentinel{%
+ \edef\MintedJobnameMdfive{\pdf@mdfivesum{#1}}}
+\endgroup
+\expandafter\minted@setjobnamemdfive\jobname\FV@Sentinel
+\edef\MintedCacheIndexFilename{%
+ \detokenize{_}\MintedJobnameMdfive\detokenize{.index.minted}}
+\edef\MintedConfigFilename{%
+ \detokenize{_}\MintedJobnameMdfive\detokenize{.config.minted}}
+\edef\MintedDataFilename{%
+ \detokenize{_}\MintedJobnameMdfive\detokenize{.data.minted}}
+\edef\MintedErrlogFilename{%
+ \detokenize{_}\MintedJobnameMdfive\detokenize{.errlog.minted}}
+\edef\MintedMessageFilename{%
+ \detokenize{_}\MintedJobnameMdfive\detokenize{.message.minted}}
+\def\minted@pgfopts#1{%
+ \pgfkeys{/minted/pkg/.cd,#1}}
+\minted@pgfopts{
+ chapter/.code=\def\minted@float@within{chapter},
+ chapter/.value forbidden,
+ section/.code=\def\minted@float@within{section},
+ section/.value forbidden,
}
-\newcommand{\minted@optlistcl@g}{}
-\newcommand{\minted@optlistcl@g@i}{}
-\let\minted@lang\@empty
-\newcommand{\minted@optlistcl@lang}{}
-\newcommand{\minted@optlistcl@lang@i}{}
-\newcommand{\minted@optlistcl@cmd}{}
-\newcommand{\minted@optlistfv@g}{}
-\newcommand{\minted@optlistfv@g@i}{}
-\newcommand{\minted@optlistfv@lang}{}
-\newcommand{\minted@optlistfv@lang@i}{}
-\newcommand{\minted@optlistfv@cmd}{}
-\newcommand{\minted@configlang}[1]{%
- \def\minted@lang{#1}%
- \ifcsname minted@optlistcl@lang\minted@lang\endcsname\else
- \expandafter\gdef\csname minted@optlistcl@lang\minted@lang\endcsname{}%
- \fi
- \ifcsname minted@optlistcl@lang\minted@lang @i\endcsname\else
- \expandafter\gdef\csname minted@optlistcl@lang\minted@lang @i\endcsname{}%
- \fi
- \ifcsname minted@optlistfv@lang\minted@lang\endcsname\else
- \expandafter\gdef\csname minted@optlistfv@lang\minted@lang\endcsname{}%
- \fi
- \ifcsname minted@optlistfv@lang\minted@lang @i\endcsname\else
- \expandafter\gdef\csname minted@optlistfv@lang\minted@lang @i\endcsname{}%
- \fi
+\newbool{minted@newfloat}
+\minted@pgfopts{
+ newfloat/.is if=minted@newfloat,
}
-\ifwindows
- \newcommand{\minted@optlistcl@quote}[2]{%
- \detokenize{#1="#2"}}
-\else
- \newcommand{\minted@optlistcl@quote}[2]{%
- \detokenize{#1='#2'}}
-\fi
-\newcommand{\minted@addto@optlistcl}[3]{%
- \expandafter\def\expandafter#1\expandafter{#1%
- \minted@optlistcl@quote{#2}{#3}\space}}
-\newcommand{\minted@addto@optlistcl@lang}[3]{%
- \expandafter\let\expandafter\minted@tmp\csname #1\endcsname
- \expandafter\def\expandafter\minted@tmp\expandafter{\minted@tmp%
- \minted@optlistcl@quote{#2}{#3}\space}%
- \expandafter\let\csname #1\endcsname\minted@tmp}
-\newcommand{\minted@def@optcl}[4][]{%
- \ifthenelse{\equal{#1}{}}%
- {\define@key{minted@opt@g}{#2}{%
- \minted@addto@optlistcl{\minted@optlistcl@g}{#3}{#4}%
- \@namedef{minted@opt@g:#2}{#4}}%
- \define@key{minted@opt@g@i}{#2}{%
- \minted@addto@optlistcl{\minted@optlistcl@g@i}{#3}{#4}%
- \@namedef{minted@opt@g@i:#2}{#4}}%
- \define@key{minted@opt@lang}{#2}{%
- \minted@addto@optlistcl@lang{minted@optlistcl@lang\minted@lang}{#3}{#4}%
- \@namedef{minted@opt@lang\minted@lang:#2}{#4}}%
- \define@key{minted@opt@lang@i}{#2}{%
- \minted@addto@optlistcl@lang{%
- minted@optlistcl@lang\minted@lang @i}{#3}{#4}%
- \@namedef{minted@opt@lang\minted@lang @i:#2}{#4}}%
- \define@key{minted@opt@cmd}{#2}{%
- \minted@addto@optlistcl{\minted@optlistcl@cmd}{#3}{#4}%
- \@namedef{minted@opt@cmd:#2}{#4}}}%
- {\define@key{minted@opt@g}{#2}[#1]{%
- \minted@addto@optlistcl{\minted@optlistcl@g}{#3}{#4}%
- \@namedef{minted@opt@g:#2}{#4}}%
- \define@key{minted@opt@g@i}{#2}[#1]{%
- \minted@addto@optlistcl{\minted@optlistcl@g@i}{#3}{#4}%
- \@namedef{minted@opt@g@i:#2}{#4}}%
- \define@key{minted@opt@lang}{#2}[#1]{%
- \minted@addto@optlistcl@lang{minted@optlistcl@lang\minted@lang}{#3}{#4}%
- \@namedef{minted@opt@lang\minted@lang:#2}{#4}}%
- \define@key{minted@opt@lang@i}{#2}[#1]{%
- \minted@addto@optlistcl@lang{%
- minted@optlistcl@lang\minted@lang @i}{#3}{#4}%
- \@namedef{minted@opt@lang\minted@lang @i:#2}{#4}}%
- \define@key{minted@opt@cmd}{#2}[#1]{%
- \minted@addto@optlistcl{\minted@optlistcl@cmd}{#3}{#4}%
- \@namedef{minted@opt@cmd:#2}{#4}}}%
+\newbool{minted@debug}
+\minted@pgfopts{
+ debug/.is if=minted@debug,
}
-\begingroup
-\catcode`\!=0
-!catcode`!\=12
-!gdef!minted@escape#1{%
- !expandafter!minted@escape@i!detokenize{#1}\!FV@Sentinel}
-!gdef!minted@escape@i#1\#2!FV@Sentinel{%
- !if!relax!detokenize{#2}!relax
- !expandafter!@firstoftwo
- !else
- !expandafter!@secondoftwo
- !fi
- {#1!minted@escape@end\#2!FV@Sentinel}
- {#1!minted@escape@esc\#2!FV@Sentinel}}
-!gdef!minted@escape@end#1!FV@Sentinel{}
-!gdef!minted@escape@esc\#1#2!FV@Sentinel{%
- #1!minted@escape@i#2!FV@Sentinel}
-!endgroup
-\newcommand{\minted@addto@optlistcl@e}[3]{%
- \edef\minted@tmp{\minted@escape{#3}}%
- \expandafter\minted@addto@optlistcl@e@i\expandafter{\minted@tmp}{#1}{#2}}
-\def\minted@addto@optlistcl@e@i#1#2#3{%
- \expandafter\def\expandafter#2\expandafter{#2\minted@optlistcl@quote{#3}{#1}\space}}
-\newcommand{\minted@addto@optlistcl@lang@e}[3]{%
- \edef\minted@tmp{\minted@escape{#3}}%
- \expandafter\minted@addto@optlistcl@lang@e@i\expandafter{\minted@tmp}{#1}{#2}}
-\def\minted@addto@optlistcl@lang@e@i#1#2#3{%
- \expandafter\let\expandafter\minted@tmp\csname #2\endcsname
- \expandafter\def\expandafter\minted@tmp\expandafter{\minted@tmp\minted@optlistcl@quote{#3}{#1}\space}%
- \expandafter\let\csname #2\endcsname\minted@tmp}
-\newcommand{\minted@def@optcl@e}[4][]{%
- \ifthenelse{\equal{#1}{}}%
- {\define@key{minted@opt@g}{#2}{%
- \minted@addto@optlistcl@e{\minted@optlistcl@g}{#3}{#4}%
- \@namedef{minted@opt@g:#2}{#4}}%
- \define@key{minted@opt@g@i}{#2}{%
- \minted@addto@optlistcl@e{\minted@optlistcl@g@i}{#3}{#4}%
- \@namedef{minted@opt@g@i:#2}{#4}}%
- \define@key{minted@opt@lang}{#2}{%
- \minted@addto@optlistcl@lang@e{minted@optlistcl@lang\minted@lang}{#3}{#4}%
- \@namedef{minted@opt@lang\minted@lang:#2}{#4}}%
- \define@key{minted@opt@lang@i}{#2}{%
- \minted@addto@optlistcl@lang@e{%
- minted@optlistcl@lang\minted@lang @i}{#3}{#4}%
- \@namedef{minted@opt@lang\minted@lang @i:#2}{#4}}%
- \define@key{minted@opt@cmd}{#2}{%
- \minted@addto@optlistcl@e{\minted@optlistcl@cmd}{#3}{#4}%
- \@namedef{minted@opt@cmd:#2}{#4}}}%
- {\define@key{minted@opt@g}{#2}[#1]{%
- \minted@addto@optlistcl@e{\minted@optlistcl@g}{#3}{#4}%
- \@namedef{minted@opt@g:#2}{#4}}%
- \define@key{minted@opt@g@i}{#2}[#1]{%
- \minted@addto@optlistcl@e{\minted@optlistcl@g@i}{#3}{#4}%
- \@namedef{minted@opt@g@i:#2}{#4}}%
- \define@key{minted@opt@lang}{#2}[#1]{%
- \minted@addto@optlistcl@lang@e{minted@optlistcl@lang\minted@lang}{#3}{#4}%
- \@namedef{minted@opt@lang\minted@lang:#2}{#4}}%
- \define@key{minted@opt@lang@i}{#2}[#1]{%
- \minted@addto@optlistcl@lang@e{%
- minted@optlistcl@lang\minted@lang @i}{#3}{#4}%
- \@namedef{minted@opt@lang\minted@lang @i:#2}{#4}}%
- \define@key{minted@opt@cmd}{#2}[#1]{%
- \minted@addto@optlistcl@e{\minted@optlistcl@cmd}{#3}{#4}%
- \@namedef{minted@opt@cmd:#2}{#4}}}%
+\newbool{minted@cache}
+\booltrue{minted@cache}
+\minted@pgfopts{
+ cache/.is if=minted@cache,
+}
+\edef\minted@cachedir{\detokenize{_minted}}
+\minted@pgfopts{
+ cachedir/.estore in=\minted@cachedir,
+}
+\newbool{minted@frozencache}
+\minted@pgfopts{
+ frozencache/.is if=minted@frozencache,
+}
+\newbool{minted@lexerlinenos}
+\minted@pgfopts{
+ lexerlinenos/.is if=minted@lexerlinenos,
+ langlinenos/.is if=minted@lexerlinenos,
}
-\newcommand{\minted@def@optcl@switch}[2]{%
- \define@booleankey{minted@opt@g}{#1}%
- {\minted@addto@optlistcl{\minted@optlistcl@g}{#2}{True}%
- \@namedef{minted@opt@g:#1}{true}}
- {\minted@addto@optlistcl{\minted@optlistcl@g}{#2}{False}%
- \@namedef{minted@opt@g:#1}{false}}
- \define@booleankey{minted@opt@g@i}{#1}%
- {\minted@addto@optlistcl{\minted@optlistcl@g@i}{#2}{True}%
- \@namedef{minted@opt@g@i:#1}{true}}
- {\minted@addto@optlistcl{\minted@optlistcl@g@i}{#2}{False}%
- \@namedef{minted@opt@g@i:#1}{false}}
- \define@booleankey{minted@opt@lang}{#1}%
- {\minted@addto@optlistcl@lang{minted@optlistcl@lang\minted@lang}{#2}{True}%
- \@namedef{minted@opt@lang\minted@lang:#1}{true}}
- {\minted@addto@optlistcl@lang{minted@optlistcl@lang\minted@lang}{#2}{False}%
- \@namedef{minted@opt@lang\minted@lang:#1}{false}}
- \define@booleankey{minted@opt@lang@i}{#1}%
- {\minted@addto@optlistcl@lang{minted@optlistcl@lang\minted@lang @i}{#2}{True}%
- \@namedef{minted@opt@lang\minted@lang @i:#1}{true}}
- {\minted@addto@optlistcl@lang{minted@optlistcl@lang\minted@lang @i}{#2}{False}%
- \@namedef{minted@opt@lang\minted@lang @i:#1}{false}}
- \define@booleankey{minted@opt@cmd}{#1}%
- {\minted@addto@optlistcl{\minted@optlistcl@cmd}{#2}{True}%
- \@namedef{minted@opt@cmd:#1}{true}}
- {\minted@addto@optlistcl{\minted@optlistcl@cmd}{#2}{False}%
- \@namedef{minted@opt@cmd:#1}{false}}
+\newbool{minted@inputlexerlinenos}
+\minted@pgfopts{
+ inputlexerlinenos/.is if=minted@inputlexerlinenos,
+ inputlanglinenos/.is if=minted@inputlexerlinenos,
}
-\newcommand{\minted@def@optfv}[1]{%
- \define@key{minted@opt@g}{#1}{%
- \expandafter\def\expandafter\minted@optlistfv@g\expandafter{%
- \minted@optlistfv@g#1={##1},}%
- \@namedef{minted@opt@g:#1}{##1}}
- \define@key{minted@opt@g@i}{#1}{%
- \expandafter\def\expandafter\minted@optlistfv@g@i\expandafter{%
- \minted@optlistfv@g@i#1={##1},}%
- \@namedef{minted@opt@g@i:#1}{##1}}
- \define@key{minted@opt@lang}{#1}{%
- \expandafter\let\expandafter\minted@tmp%
- \csname minted@optlistfv@lang\minted@lang\endcsname
- \expandafter\def\expandafter\minted@tmp\expandafter{%
- \minted@tmp#1={##1},}%
- \expandafter\let\csname minted@optlistfv@lang\minted@lang\endcsname%
- \minted@tmp
- \@namedef{minted@opt@lang\minted@lang:#1}{##1}}
- \define@key{minted@opt@lang@i}{#1}{%
- \expandafter\let\expandafter\minted@tmp%
- \csname minted@optlistfv@lang\minted@lang @i\endcsname
- \expandafter\def\expandafter\minted@tmp\expandafter{%
- \minted@tmp#1={##1},}%
- \expandafter\let\csname minted@optlistfv@lang\minted@lang @i\endcsname%
- \minted@tmp
- \@namedef{minted@opt@lang\minted@lang @i:#1}{##1}}
- \define@key{minted@opt@cmd}{#1}{%
- \expandafter\def\expandafter\minted@optlistfv@cmd\expandafter{%
- \minted@optlistfv@cmd#1={##1},}%
- \@namedef{minted@opt@cmd:#1}{##1}}
+\newbool{minted@placeholder}
+\minted@pgfopts{
+ placeholder/.is if=minted@placeholder,
}
-\newcommand{\minted@def@optfv@switch}[1]{%
- \define@booleankey{minted@opt@g}{#1}%
- {\expandafter\def\expandafter\minted@optlistfv@g\expandafter{%
- \minted@optlistfv@g#1=true,}%
- \@namedef{minted@opt@g:#1}{true}}%
- {\expandafter\def\expandafter\minted@optlistfv@g\expandafter{%
- \minted@optlistfv@g#1=false,}%
- \@namedef{minted@opt@g:#1}{false}}%
- \define@booleankey{minted@opt@g@i}{#1}%
- {\expandafter\def\expandafter\minted@optlistfv@g@i\expandafter{%
- \minted@optlistfv@g@i#1=true,}%
- \@namedef{minted@opt@g@i:#1}{true}}%
- {\expandafter\def\expandafter\minted@optlistfv@g@i\expandafter{%
- \minted@optlistfv@g@i#1=false,}%
- \@namedef{minted@opt@g@i:#1}{false}}%
- \define@booleankey{minted@opt@lang}{#1}%
- {\expandafter\let\expandafter\minted@tmp%
- \csname minted@optlistfv@lang\minted@lang\endcsname
- \expandafter\def\expandafter\minted@tmp\expandafter{%
- \minted@tmp#1=true,}%
- \expandafter\let\csname minted@optlistfv@lang\minted@lang\endcsname%
- \minted@tmp
- \@namedef{minted@opt@lang\minted@lang:#1}{true}}%
- {\expandafter\let\expandafter\minted@tmp%
- \csname minted@optlistfv@lang\minted@lang\endcsname
- \expandafter\def\expandafter\minted@tmp\expandafter{%
- \minted@tmp#1=false,}%
- \expandafter\let\csname minted@optlistfv@lang\minted@lang\endcsname%
- \minted@tmp
- \@namedef{minted@opt@lang\minted@lang:#1}{false}}%
- \define@booleankey{minted@opt@lang@i}{#1}%
- {\expandafter\let\expandafter\minted@tmp%
- \csname minted@optlistfv@lang\minted@lang @i\endcsname
- \expandafter\def\expandafter\minted@tmp\expandafter{%
- \minted@tmp#1=true,}%
- \expandafter\let\csname minted@optlistfv@lang\minted@lang @i\endcsname%
- \minted@tmp
- \@namedef{minted@opt@lang\minted@lang @i:#1}{true}}%
- {\expandafter\let\expandafter\minted@tmp%
- \csname minted@optlistfv@lang\minted@lang @i\endcsname
- \expandafter\def\expandafter\minted@tmp\expandafter{%
- \minted@tmp#1=false,}%
- \expandafter\let\csname minted@optlistfv@lang\minted@lang @i\endcsname%
- \minted@tmp
- \@namedef{minted@opt@lang\minted@lang @i:#1}{false}}%
- \define@booleankey{minted@opt@cmd}{#1}%
- {\expandafter\def\expandafter\minted@optlistfv@cmd\expandafter{%
- \minted@optlistfv@cmd#1=true,}%
- \@namedef{minted@opt@cmd:#1}{true}}%
- {\expandafter\def\expandafter\minted@optlistfv@cmd\expandafter{%
- \minted@optlistfv@cmd#1=false,}%
- \@namedef{minted@opt@cmd:#1}{false}}%
+\gdef\minted@insertplaceholder{%
+ \ifbool{minted@isinline}%
+ {\begingroup
+ \fvset{extra=true}\Verb[formatcom=\color{red}\bfseries]{<MINTED>}%
+ \endgroup}%
+ {\begingroup
+ \par\noindent
+ \fvset{extra=true}\Verb[formatcom=\color{red}\bfseries]{<MINTED>}%
+ \par
+ \endgroup}}%
+\newbool{minted@verbatim}
+\minted@pgfopts{
+ verbatim/.is if=minted@verbatim,
+}
+\newbool{minted@fasthighlightmode}
+\newbool{minted@fasthighlightmode@open}
+\minted@pgfopts{
+ highlightmode/.is choice,
+ highlightmode/fast/.code=
+ \let\minted@highlightmode@init\minted@highlightmode@init@fast,
+ highlightmode/fastfirst/.code=
+ \let\minted@highlightmode@init\minted@highlightmode@init@fastfirst,
+ highlightmode/immediate/.code=
+ \let\minted@highlightmode@init\minted@highlightmode@init@immediate,
}
-\newboolean{minted@isinline}
-\newcommand{\minted@fvset}{%
- \expandafter\fvset\expandafter{\minted@optlistfv@g}%
- \expandafter\let\expandafter\minted@tmp%
- \csname minted@optlistfv@lang\minted@lang\endcsname
- \expandafter\fvset\expandafter{\minted@tmp}%
- \ifthenelse{\boolean{minted@isinline}}%
- {\expandafter\fvset\expandafter{\minted@optlistfv@g@i}%
- \expandafter\let\expandafter\minted@tmp%
- \csname minted@optlistfv@lang\minted@lang @i\endcsname
- \expandafter\fvset\expandafter{\minted@tmp}}%
+\def\minted@highlightmode@init@fast{%
+ \global\booltrue{minted@fasthighlightmode}}
+\def\minted@highlightmode@init@fastfirst{%
+ \IfFileExists{\minted@cachepath\MintedCacheIndexFilename}%
+ {\global\boolfalse{minted@fasthighlightmode}}
+ {\global\booltrue{minted@fasthighlightmode}}}
+\def\minted@highlightmode@init@immediate{%
+ \global\boolfalse{minted@fasthighlightmode}}
+\let\minted@highlightmode@init\minted@highlightmode@init@fastfirst
+\def\minted@fasthighlightmode@checkstart{%
+ \ifbool{minted@fasthighlightmode}%
+ {\pydatawritelistopen
+ \global\booltrue{minted@fasthighlightmode@open}}%
+ {}%
+ \global\let\minted@fasthighlightmode@checkstart\relax}
+\def\minted@fasthighlightmode@checkend{%
+ \ifbool{minted@fasthighlightmode@open}%
+ {\pydatasetfilename{\MintedDataFilename}%
+ \pydatawritelistclose
+ \pydataclosefilename{\MintedDataFilename}%
+ \global\boolfalse{minted@fasthighlightmode@open}%
+ \global\boolfalse{minted@fasthighlightmode}%
+ \begingroup
+ \minted@exec@batch
+ \ifx\minted@exec@warning\relax
+ \else
+ \expandafter\minted@exec@warning
+ \fi
+ \ifx\minted@exec@error\relax
+ \else
+ \expandafter\minted@exec@error
+ \fi
+ \endgroup
+ \global\boolfalse{minted@canexec}}%
{}%
- \expandafter\fvset\expandafter{\minted@optlistfv@cmd}%
+ \global\let\minted@fasthighlightmode@checkend\relax}
+\minted@pgfopts{
+ finalizecache/.code=\minted@error{%
+ Package option "finalizecache" is no longer needed with minted v3+},
}
-\newcommand{\minted@def@opt}[2][]{%
- \define@key{minted@opt@g}{#2}{%
- \@namedef{minted@opt@g:#2}{##1}}
- \define@key{minted@opt@g@i}{#2}{%
- \@namedef{minted@opt@g@i:#2}{##1}}
- \define@key{minted@opt@lang}{#2}{%
- \@namedef{minted@opt@lang\minted@lang:#2}{##1}}
- \define@key{minted@opt@lang@i}{#2}{%
- \@namedef{minted@opt@lang\minted@lang @i:#2}{##1}}
- \define@key{minted@opt@cmd}{#2}{%
- \@namedef{minted@opt@cmd:#2}{##1}}
- \ifstrempty{#1}{}{\@namedef{minted@opt@g:#2}{#1}}%
+\minted@pgfopts{
+ kpsewhich/.code=\minted@error{%
+ Package option "kpsewhich" is no longer needed with minted v3+},
}
-\newcommand{\minted@def@opt@detok}[2][]{%
- \define@key{minted@opt@g}{#2}{%
- \@namedef{minted@opt@g:#2}{\detokenize{##1}}}
- \define@key{minted@opt@g@i}{#2}{%
- \@namedef{minted@opt@g@i:#2}{\detokenize{##1}}}
- \define@key{minted@opt@lang}{#2}{%
- \@namedef{minted@opt@lang\minted@lang:#2}{\detokenize{##1}}}
- \define@key{minted@opt@lang@i}{#2}{%
- \@namedef{minted@opt@lang\minted@lang @i:#2}{\detokenize{##1}}}
- \define@key{minted@opt@cmd}{#2}{%
- \@namedef{minted@opt@cmd:#2}{\detokenize{##1}}}
- \ifstrempty{#1}{}{\@namedef{minted@opt@g:#2}{\detokenize{#1}}}%
+\minted@pgfopts{
+ outputdir/.code=\minted@error{%
+ Package option "outputdir" is no longer needed with minted v3+;
+ the output directory is automatically detected for TeX Live 2024+,
+ and the environment variable \detokenize{TEXMF_OUTPUT_DIRECTORY}
+ can be set manually in other cases},
}
-\newcommand{\minted@generate@PYGdef}[1]{%
- \ifthenelse{\boolean{minted@cache}}%
- {\def\minted@pygstylepath@load{\minted@outputdir\minted@cachedir/#1.pygstyle}%
- \minted@addcachefile{#1.pygstyle}}%
- {\def\minted@pygstylepath@load{\minted@outputdir\minted@jobname.out.pyg}}%
- \ifwindows
- \StrSubstitute{\minted@pygstylepath@load}%
- {/}{\@backslashchar}[\minted@pygstylepath@save]%
+\def\minted@outputdir{}
+\minted@pgfopts{
+ draft/.code=\minted@warning{%
+ Package option "draft" no longer has any effect with minted v3+},
+}
+\minted@pgfopts{
+ final/.code=\minted@warning{%
+ Package option "final" no longer has any effect with minted v3+},
+}
+\ProcessPgfOptions{/minted/pkg}
+\ifbool{minted@cache}{}{\def\minted@cachedir{}}%
+\ifbool{minted@newfloat}{\RequirePackage{newfloat}}{\RequirePackage{float}}
+\ifcsname tikzifexternalizing\endcsname
+ \ifx\tikzifexternalizing\relax
+ \else
+ \tikzifexternalizing{\booltrue{minted@placeholder}}{}
+ \fi
+\fi
+\def\minted@styleprefix{PYG}
+\newcounter{minted@tmpcnt}
+\def\minted@forcsvlist#1#2{%
+ \if\relax\detokenize\expandafter{\@gobble#2}\relax
+ \expandafter\minted@forcsvlist@exp
+ \else
+ \expandafter\minted@forcsvlist@i
+ \fi
+ {#2}{#1}}
+\def\minted@forcsvlist@exp#1#2{%
+ \expandafter\minted@forcsvlist@i\expandafter{#1}{#2}}
+\def\minted@forcsvlist@i#1#2{%
+ \forcsvlist{#2}{#1}}
+\def\minted@apptoprovidecs#1#2{%
+ \ifcsname#1\endcsname
\else
- \let\minted@pygstylepath@save\minted@pygstylepath@load
+ \expandafter\def\csname#1\endcsname{}%
\fi
- \IfFileExists{\minted@pygstylepath@load}%
+ \expandafter\let\expandafter\minted@tmp\csname#1\endcsname
+ \expandafter\def\expandafter\minted@tmp\expandafter{\minted@tmp#2}%
+ \expandafter\let\csname#1\endcsname\minted@tmp}
+\def\minted@const@pgfkeysnovalue{\pgfkeysnovalue}
+\def\minted@ensureatletter#1{%
+ \edef\minted@tmpatcat{\the\catcode`\@}%
+ \catcode`\@=11\relax
+ #1%
+ \catcode`\@=\minted@tmpatcat\relax}
+\setcounter{minted@tmpcnt}{48}
+\loop\unless\ifnum\value{minted@tmpcnt}>57\relax
+ \expandafter\let\csname minted@isnum\arabic{minted@tmpcnt}\endcsname\relax
+ \expandafter\let\csname minted@isalphanum\arabic{minted@tmpcnt}\endcsname\relax
+ \expandafter\let
+ \csname minted@isalphanumhyphenunderscore\arabic{minted@tmpcnt}\endcsname\relax
+ \stepcounter{minted@tmpcnt}
+\repeat
+\setcounter{minted@tmpcnt}{65}
+\loop\unless\ifnum\value{minted@tmpcnt}>90\relax
+ \expandafter\let\csname minted@isalpha\arabic{minted@tmpcnt}\endcsname\relax
+ \expandafter\let\csname minted@isalphanum\arabic{minted@tmpcnt}\endcsname\relax
+ \expandafter\let
+ \csname minted@isalphanumhyphenunderscore\arabic{minted@tmpcnt}\endcsname\relax
+ \stepcounter{minted@tmpcnt}
+\repeat
+\setcounter{minted@tmpcnt}{97}
+\loop\unless\ifnum\value{minted@tmpcnt}>122\relax
+ \expandafter\let\csname minted@isalpha\arabic{minted@tmpcnt}\endcsname\relax
+ \expandafter\let\csname minted@isalphanum\arabic{minted@tmpcnt}\endcsname\relax
+ \expandafter\let
+ \csname minted@isalphanumhyphenunderscore\arabic{minted@tmpcnt}\endcsname\relax
+ \stepcounter{minted@tmpcnt}
+\repeat
+\expandafter\let\csname minted@isalphanumhyphenunderscore45\endcsname\relax
+\expandafter\let\csname minted@isalphanumhyphenunderscore95\endcsname\relax
+\def\minted@ifalphanumhyphenunderscore#1#2#3{%
+ \if\relax\detokenize{#1}\relax
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+ {#3}%
+ {\expandafter\minted@ifalphanumhyphenunderscore@i\detokenize{#1}\FV@Sentinel{#2}{#3}}}
+\def\minted@ifalphanumhyphenunderscore@i#1#2\FV@Sentinel{%
+ \if\relax#2\relax
+ \expandafter\minted@ifalphanumhyphenunderscore@iii
+ \else
+ \expandafter\minted@ifalphanumhyphenunderscore@ii
+ \fi
+ #1#2\FV@Sentinel}
+\def\minted@ifalphanumhyphenunderscore@ii#1#2\FV@Sentinel{%
+ \ifcsname minted@isalphanumhyphenunderscore\number`#1\endcsname
+ \expandafter\minted@ifalphanumhyphenunderscore@i
+ \else
+ \expandafter\minted@ifalphanumhyphenunderscore@false
+ \fi
+ #2\FV@Sentinel}
+\def\minted@ifalphanumhyphenunderscore@iii#1\FV@Sentinel{%
+ \ifcsname minted@isalphanumhyphenunderscore\number`#1\endcsname
+ \expandafter\minted@ifalphanumhyphenunderscore@true
+ \else
+ \expandafter\minted@ifalphanumhyphenunderscore@false
+ \fi
+ \FV@Sentinel}
+\def\minted@ifalphanumhyphenunderscore@true\FV@Sentinel#1#2{#1}
+\def\minted@ifalphanumhyphenunderscore@false#1\FV@Sentinel#2#3{#3}
+\let\minted@lexer\@empty
+\newbool{minted@isinline}
+\newcounter{minted@tmpcodebufferlength}
+\newbool{minted@canexec}
+\booltrue{minted@canexec}
+\ifnum\csname c_sys_shell_escape_int\endcsname=0\relax
+ \boolfalse{minted@canexec}
+\fi
+\ifbool{minted@frozencache}{\boolfalse{minted@canexec}}{}
+\ifbool{minted@placeholder}{\boolfalse{minted@canexec}}{}
+\ifbool{minted@verbatim}{\boolfalse{minted@canexec}}{}
+\def\minted@ShellEscapeMaybeMessages#1{%
+ \let\minted@exec@warning\relax
+ \let\minted@exec@error\relax
+ \ifbool{minted@canexec}{\ShellEscape{#1}\minted@inputexecmessages}{}}
+\def\minted@ShellEscapeNoMessages#1{%
+ \ifbool{minted@canexec}{\ShellEscape{#1}}{}}
+\def\minted@execarg@debug{%
+ \ifbool{minted@debug}{\detokenize{ --debug }}{}}
+\def\minted@execarg@timestamp{%
+ \detokenize{ --timestamp }\minted@timestamp\detokenize{ }}
+\def\minted@exec@cleanfile#1{%
+ \minted@ShellEscapeNoMessages{%
+ \MintedExecutable\detokenize{ cleanfile }\minted@execarg@debug#1}}
+\def\minted@inputexecmessages{%
+ \minted@ensureatletter{\InputIfFileExists{\MintedMessageFilename}{}{}}}
+\def\minted@exec@batch{%
+ \minted@ShellEscapeMaybeMessages{%
+ \MintedExecutable
+ \detokenize{ batch }\minted@execarg@timestamp\minted@execarg@debug
+ \MintedJobnameMdfive}}
+\def\minted@exec@config{%
+ \minted@ShellEscapeMaybeMessages{%
+ \MintedExecutable
+ \detokenize{ config }\minted@execarg@timestamp\minted@execarg@debug
+ \MintedJobnameMdfive}}
+\def\minted@exec@styledef{%
+ \minted@ShellEscapeMaybeMessages{%
+ \MintedExecutable
+ \detokenize{ styledef }\minted@execarg@timestamp\minted@execarg@debug
+ \MintedJobnameMdfive}}
+\def\minted@exec@highlight{%
+ \minted@ShellEscapeMaybeMessages{%
+ \MintedExecutable
+ \detokenize{ highlight }\minted@execarg@timestamp\minted@execarg@debug
+ \MintedJobnameMdfive}}
+\def\minted@exec@clean{%
+ \minted@ShellEscapeNoMessages{%
+ \MintedExecutable
+ \detokenize{ clean }\minted@execarg@timestamp\minted@execarg@debug
+ \MintedJobnameMdfive}}
+\newbool{minted@diddetectconfig}
+\def\minted@detectconfig{%
+ \ifbool{minted@diddetectconfig}%
{}%
- {\ifthenelse{\boolean{minted@frozencache}}%
- {\PackageError{minted}%
- {Missing style definition for #1 with frozencache}%
- {Missing style definition for #1 with frozencache}}%
- {}%
- \ShellEscape{%
- \MintedPygmentize\space -S #1 -f latex -P commandprefix=PYG
- > \minted@pygstylepath@save
- }%
- }%
- \CatchFileDef{\minted@tmp@filecontents}%
- {\minted@pygstylepath@load}{\catcode`@=11\catcode`\%=14\catcode``=12\endlinechar=-1}%
- \begingroup
- \let\PYG\relax
- \minted@tmp@filecontents
- \ifx\PYG\relax
- \ifthenelse{\boolean{minted@frozencache}}%
- {\PackageError{minted}%
- {Outdated style definition for #1 with frozencache}%
- {Outdated style definition for #1 with frozencache}}%
- {}%
- \ShellEscape{%
- \MintedPygmentize\space -S #1 -f latex -P commandprefix=PYG
- > \minted@pygstylepath@save
- }%
- \CatchFileDef{\minted@tmp@filecontents}%
- {\minted@pygstylepath@load}{\catcode`@=11\catcode`\%=14\catcode``=12\endlinechar=-1}%
- \minted@tmp@filecontents
- \ifx\PYG\relax
- \PackageError{minted}%
- {Cannot find Pygments style #1}%
- {Cannot find Pygments style #1}%
+ {\ifx\minted@cachedir\@empty
+ \gdef\minted@cachepath{}%
+ \else
+ \gdef\minted@cachepath{\minted@cachedir/}%
\fi
+ \ifbool{minted@canexec}{\begingroup\minted@detectconfig@i\endgroup}{}%
+ \global\booltrue{minted@diddetectconfig}}}
+\def\minted@detectconfig@i{%
+ \global\let\minted@executable@version\relax
+ \global\let\minted@executable@timestamp\relax
+ \global\let\minted@config@timestamp\relax
+ \pydatasetfilename{\MintedDataFilename}%
+ \pydatawritedictopen
+ \pydatawritekeyvalue{command}{config}%
+ \pydatawritekeyedefvalue{jobname}{\jobname}%
+ \pydatawritekeyedefvalue{timestamp}{\minted@timestamp}%
+ \pydatawritekeyedefvalue{cachedir}{\minted@cachedir}%
+ \pydatawritedictclose
+ \pydataclosefilename{\MintedDataFilename}%
+ \minted@exec@config
+ \minted@ensureatletter{%
+ \InputIfFileExists{\MintedConfigFilename}{}{}}%
+ \ifx\minted@executable@version\relax
+ \expandafter\minted@detectconfig@noexecutable
+ \else
+ \expandafter\minted@detectconfig@ii
+ \fi}
+\def\minted@detectconfig@noexecutable{%
+ \global\boolfalse{minted@canexec}%
+ \ifnum\csname c_sys_shell_escape_int\endcsname=1\relax
+ \minted@error{minted v3+ executable is not installed or is not added to PATH}%
+ \else
+ \minted@error{minted v3+ executable is not installed, is not added to PATH,
+ or is not permitted with restricted shell escape}%
+ \fi}
+\def\minted@detectconfig@ii{%
+ \ifx\minted@timestamp\minted@config@timestamp
+ \expandafter\minted@detectconfig@iii
+ \else
+ \expandafter\minted@detectconfig@wrongtimestamp
+ \fi}
+\def\minted@detectconfig@wrongtimestamp{%
+ \ifx\minted@timestamp\minted@executable@timestamp
+ \minted@exec@cleanfile{\MintedConfigFilename}%
+ \global\boolfalse{minted@canexec}%
+ \minted@error{minted v3 Python executable could not find output directory;
+ upgrade to TeX distribution that supports \detokenize{TEXMF_OUTPUT_DIRECTORY}
+ or set environment variable \detokenize{TEXMF_OUTPUT_DIRECTORY} manually)}%
+ \else
+ \expandafter\minted@detectconfig@noexecutable
+ \fi}
+\def\minted@detectconfig@iii{%
+ \minted@exec@cleanfile{\MintedConfigFilename}%
+ \ifx\minted@exec@warning\relax
+ \else
+ \expandafter\minted@exec@warning
\fi
- \expandafter\global\expandafter\let\csname minted@PYGdef@#1\endcsname%
- \minted@tmp@filecontents
- \endgroup
-}
-\newcommand{\minted@defstyle}[1]{%
- \edef\minted@style{#1}%
- \ifcsname minted@PYGdef@\minted@style\endcsname\else
- \expandafter\minted@generate@PYGdef\expandafter{\minted@style}%
+ \ifx\minted@exec@error\relax
+ \expandafter\minted@detectconfig@iv
+ \else
+ \expandafter\minted@detectconfig@error
+ \fi}
+\def\minted@detectconfig@error{%
+ \global\boolfalse{minted@canexec}%
+ \minted@exec@error}
+\def\minted@detectconfig@iv{%
+ \expandafter\minted@detectconfig@v\minted@executable@version\relax}
+\begingroup
+\catcode`\.=12
+\gdef\minted@detectconfig@v#1.#2.#3\relax{%
+ \def\minted@executable@major{#1}%
+ \def\minted@executable@minor{#2}%
+ \def\minted@executable@patch{#3}%
+ \minted@detectconfig@vi}
+\endgroup
+\def\minted@detectconfig@vi{%
+ \ifnum\minted@executable@major>\minted@executable@minmajor\relax
+ \global\booltrue{minted@executable@issupported}%
+ \else\ifnum\minted@executable@major=\minted@executable@minmajor\relax
+ \ifnum\minted@executable@minor>\minted@executable@minminor\relax
+ \global\booltrue{minted@executable@issupported}%
+ \else\ifnum\minted@executable@minor=\minted@executable@minminor\relax
+ \ifnum\minted@executable@patch<\minted@executable@minpatch\relax
+ \else
+ \global\booltrue{minted@executable@issupported}%
+ \fi
+ \fi\fi
+ \fi\fi
+ \ifbool{minted@executable@issupported}%
+ {\ifx\minted@config@cachepath\relax
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+ {\global\boolfalse{minted@canexec}%
+ \minted@error{minted Python executable returned incomplete configuration data;
+ this may indicate a bug in minted or file corruption}}%
+ {\global\let\minted@cachepath\minted@config@cachepath
+ \minted@highlightmode@init}}%
+ {\global\boolfalse{minted@canexec}%
+ \minted@error{minted Python executable is version \minted@executable@version,
+ but version \minted@executable@minversion+ is required}}}
+\begingroup
+\catcode`\,=12
+\gdef\minted@optcats{fv,py,tex}
+\endgroup
+\def\minted@do#1{\expandafter\def\csname minted@optkeyslist@#1\endcsname{}}
+\minted@forcsvlist{\minted@do}{\minted@optcats}
+\begingroup
+\catcode`\,=12
+\gdef\minted@optscopes{global,lexer,globalinline,lexerinline,cmd}
+\gdef\minted@optscopes@onlyblock{global,lexer,cmd}
+\endgroup
+\let\minted@iflexerscope@lexer\relax
+\let\minted@iflexerscope@lexerinline\relax
+\def\minted@iflexerscope#1#2#3{%
+ \ifcsname minted@iflexerscope@#1\endcsname
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
\fi
- \csname minted@PYGdef@\minted@style\endcsname
- \minted@patch@PYGZsq
- \minted@patch@PYGZhy
- \ifthenelse{\equal{\minted@get@opt{ignorelexererrors}{true}}{true}}%
- {\let\PYG@tok@err\relax}{}}
-\ifthenelse{\boolean{minted@draft}}{\renewcommand{\minted@defstyle}[1]{}}{}
-\newcommand{\minted@patch@PYGZsq}{%
- \ifcsname PYGZsq\endcsname
- \expandafter\ifdefstring\expandafter{\csname PYGZsq\endcsname}{\char`\'}%
- {\minted@patch@PYGZsq@i}%
- {}%
+ {#2}{#3}}
+\def\minted@addoptkey#1#2{%
+ \ifcsname minted@optkeyslist@#1\endcsname
+ \else
+ \minted@fatalerror{Defining options under category "#1" is not supported}%
\fi
-}
+ \expandafter\let\expandafter\minted@tmp\csname minted@optkeyslist@#1\endcsname
+ \ifx\minted@tmp\@empty
+ \def\minted@tmp{#2}%
+ \else
+ \expandafter\def\expandafter\minted@tmp\expandafter{\minted@tmp,#2}%
+ \fi
+ \expandafter\let\csname minted@optkeyslist@#1\endcsname\minted@tmp}
+\newcommand*{\mintedpgfkeyscreate}[3][]{%
+ \mintedpgfkeyscreate@i{#1}{#2}{#3}}
\begingroup
-\catcode`\'=\active
-\gdef\minted@patch@PYGZsq@i{\gdef\PYGZsq{'}}
+\catcode`\==12
+\gdef\mintedpgfkeyscreate@i#1#2#3{%
+ \def\minted@do##1{%
+ \minted@do@i##1=\FV@Sentinel}%
+ \def\minted@do@i##1=##2\FV@Sentinel{%
+ \minted@do@ii##1<>\FV@Sentinel}%
+ \def\minted@do@ii##1<##2>##3\FV@Sentinel{%
+ \minted@addoptkey{#2}{##1}}%
+ \minted@forcsvlist{\minted@do}{#3}%
+ \csname minted@pgfkeyscreate@#2\endcsname{#1}{#3}}
\endgroup
-\newcommand{\minted@patch@PYGZhy}{%
- \ifcsname PYGZhy\endcsname
- \expandafter\ifdefstring\expandafter{\csname PYGZhy\endcsname}{\char`\-}%
- {\def\PYGZhy{\mbox{-}}}%
- {}%
+\def\minted@pgfkeyscreate@fv#1#2{%
+ \if\relax\detokenize{#1}\relax
+ \else
+ \minted@fatalerror{Processor macros are not supported in defining fancyvrb options}%
\fi
-}
-\newcommand{\minted@def@opt@switch}[2][false]{%
- \define@booleankey{minted@opt@g}{#2}%
- {\@namedef{minted@opt@g:#2}{true}}%
- {\@namedef{minted@opt@g:#2}{false}}
- \define@booleankey{minted@opt@g@i}{#2}%
- {\@namedef{minted@opt@g@i:#2}{true}}%
- {\@namedef{minted@opt@g@i:#2}{false}}
- \define@booleankey{minted@opt@lang}{#2}%
- {\@namedef{minted@opt@lang\minted@lang:#2}{true}}%
- {\@namedef{minted@opt@lang\minted@lang:#2}{false}}
- \define@booleankey{minted@opt@lang@i}{#2}%
- {\@namedef{minted@opt@lang\minted@lang @i:#2}{true}}%
- {\@namedef{minted@opt@lang\minted@lang @i:#2}{false}}
- \define@booleankey{minted@opt@cmd}{#2}%
- {\@namedef{minted@opt@cmd:#2}{true}}%
- {\@namedef{minted@opt@cmd:#2}{false}}%
- \@namedef{minted@opt@g:#2}{#1}%
-}
-\def\minted@get@opt#1#2{%
- \ifcsname minted@opt@cmd:#1\endcsname
- \csname minted@opt@cmd:#1\endcsname
+ \minted@forcsvlist{\minted@pgfkeycreate@fv}{#2}}
+\begingroup
+\catcode`\==12
+\gdef\minted@pgfkeycreate@fv#1{%
+ \minted@pgfkeycreate@fv@i#1=\FV@Sentinel}
+\gdef\minted@pgfkeycreate@fv@i#1=#2\FV@Sentinel{%
+ \if\relax\detokenize{#2}\relax
+ \expandafter\minted@pgfkeycreate@fv@ii
\else
- \ifminted@isinline
- \ifcsname minted@opt@lang\minted@lang @i:#1\endcsname
- \csname minted@opt@lang\minted@lang @i:#1\endcsname
- \else
- \ifcsname minted@opt@g@i:#1\endcsname
- \csname minted@opt@g@i:#1\endcsname
+ \expandafter\minted@pgfkeycreate@fv@iii
+ \fi
+ {#1}#2\FV@Sentinel}
+\gdef\minted@pgfkeycreate@fv@ii#1\FV@Sentinel{%
+ \minted@pgfkeycreate@fv@iv{#1}{\minted@const@pgfkeysnovalue}}
+\gdef\minted@pgfkeycreate@fv@iii#1#2=\FV@Sentinel{%
+ \minted@pgfkeycreate@fv@iv{#1}{#2}}
+\endgroup
+\def\minted@pgfkeycreate@fv@iv#1#2{%
+ \def\minted@do##1{%
+ \minted@iflexerscope{##1}%
+ {\minted@do@i{##1}{@\minted@lexer}}%
+ {\minted@do@i{##1}{}}}%
+ \def\minted@do@i##1##2{%
+ \pgfkeys{%
+ /minted/##1/.cd,
+ #1/.code=
+ \def\minted@tmp{####1}%
+ \ifx\minted@tmp\minted@const@pgfkeysnovalue
+ \begingroup\fvset{#1}\endgroup
+ \minted@apptoprovidecs{minted@fvoptlist@##1##2}{#1,}%
\else
- \ifcsname minted@opt@lang\minted@lang:#1\endcsname
- \csname minted@opt@lang\minted@lang:#1\endcsname
+ \begingroup\fvset{#1=####1}\endgroup
+ \minted@apptoprovidecs{minted@fvoptlist@##1##2}{#1=####1,}%
+ \fi,
+ }%
+ }%
+ \minted@forcsvlist{\minted@do}{\minted@optscopes}%
+ \ifx\minted@const@pgfkeysnovalue#2\relax
+ \else
+ \pgfkeys{%
+ /minted/global/.cd,
+ #1=#2,
+ }%
+ \fi}
+\def\minted@usefvopts{%
+ \ifbool{minted@isinline}%
+ {\minted@forcsvlist{\minted@usefvopts@do}{\minted@optscopes}}%
+ {\minted@forcsvlist{\minted@usefvopts@do}{\minted@optscopes@onlyblock}}}
+\def\minted@usefvopts@do#1{%
+ \minted@iflexerscope{#1}%
+ {\ifcsname minted@fvoptlist@#1@\minted@lexer\endcsname
+ \expandafter
+ \let\expandafter\minted@tmp\csname minted@fvoptlist@#1@\minted@lexer\endcsname
+ \expandafter\fvset\expandafter{\minted@tmp}%
+ \fi}%
+ {\ifcsname minted@fvoptlist@#1\endcsname
+ \expandafter
+ \let\expandafter\minted@tmp\csname minted@fvoptlist@#1\endcsname
+ \expandafter\fvset\expandafter{\minted@tmp}%
+ \fi}}
+\def\minted@useadditionalfvoptsnopy{%
+ \edef\minted@tmp{\mintedpyoptvalueof{gobble}}%
+ \ifx\minted@tmp\minted@const@pgfkeysnovalue
+ \else
+ \expandafter\minted@useadditionalfvoptsnopy@fvsetvk
+ \expandafter{\minted@tmp}{gobble}%
+ \fi
+ \edef\minted@tmp{\mintedpyoptvalueof{mathescape}}%
+ \ifx\minted@tmp\minted@const@pgfkeysnovalue
+ \else
+ \expandafter\minted@useadditionalfvoptsnopy@fvsetvk
+ \expandafter{\minted@tmp}{mathescape}%
+ \fi}
+\def\minted@useadditionalfvoptsnopy@fvsetvk#1#2{%
+ \fvset{#2=#1}}
+\def\minted@pgfkeyscreate@py#1#2{%
+ \minted@forcsvlist{\minted@pgfkeycreate@py{#1}}{#2}}
+\begingroup
+\catcode`\==12
+\catcode`\<=12
+\catcode`\>=12
+\gdef\minted@pgfkeycreate@py#1#2{%
+ \minted@pgfkeycreate@py@i{#1}#2=\FV@Sentinel}
+\gdef\minted@pgfkeycreate@py@i#1#2=#3\FV@Sentinel{%
+ \if\relax\detokenize{#3}\relax
+ \expandafter\minted@pgfkeycreate@py@ii
+ \else
+ \expandafter\minted@pgfkeycreate@py@iii
+ \fi
+ {#1}{#2}#3\FV@Sentinel}
+\gdef\minted@pgfkeycreate@py@ii#1#2\FV@Sentinel{%
+ \minted@pgfkeycreate@py@iv{#1}{\pgfkeysnovalue}#2<>\FV@Sentinel}
+\gdef\minted@pgfkeycreate@py@iii#1#2#3=\FV@Sentinel{%
+ \minted@pgfkeycreate@py@iv{#1}{#3}#2<>\FV@Sentinel}
+\gdef\minted@pgfkeycreate@py@iv#1#2#3<#4>#5\FV@Sentinel{%
+ \if\relax\detokenize{#4}\relax
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+ {\minted@pgfkeycreate@py@v{#1}{#3}{#2}{\minted@const@pgfkeysnovalue}}%
+ {\minted@pgfkeycreate@py@v{#1}{#3}{#2}{#4}}}
+\endgroup
+\def\minted@pgfkeycreate@py@v#1#2#3#4{%
+ \def\minted@do##1{%
+ \minted@iflexerscope{##1}%
+ {\minted@do@i{##1}{@\minted@lexer}}%
+ {\minted@do@i{##1}{}}}
+ \def\minted@do@i##1##2{%
+ \if\relax\detokenize{#1}\relax
+ \pgfkeys{%
+ /minted/##1/.cd,
+ #2/.code=\expandafter\def\csname minted@pyopt@##1##2@#2\endcsname{####1},
+ }%
+ \else
+ \pgfkeys{%
+ /minted/##1/.cd,
+ #2/.code=
+ \def\minted@tmp{####1}%
+ \ifx\minted@tmp\minted@const@pgfkeysnovalue
+ \expandafter\let\csname minted@pyopt@##1##2@#2\endcsname\minted@tmp
+ \else\ifcsname minted@opthandler@immediate@\string#1\endcsname
+ #1{minted@pyopt@##1##2@#2}{####1}%
\else
- \ifcsname minted@opt@g:#1\endcsname
- \csname minted@opt@g:#1\endcsname
- \else
- #2%
- \fi
- \fi
- \fi
- \fi
+ \expandafter\def\csname minted@pyopt@##1##2@#2\endcsname{#1{####1}}%
+ \fi\fi,
+ }%
+ \fi
+ \ifx\minted@const@pgfkeysnovalue#4\relax
+ \pgfkeys{%
+ /minted/##1/.cd,
+ #2/.value required,
+ }%
\else
- \ifcsname minted@opt@lang\minted@lang:#1\endcsname
- \csname minted@opt@lang\minted@lang:#1\endcsname
- \else
- \ifcsname minted@opt@g:#1\endcsname
- \csname minted@opt@g:#1\endcsname
- \else
- #2%
- \fi
- \fi
+ \pgfkeys{%
+ /minted/##1/.cd,
+ #2/.default=#4,
+ }%
\fi
- \fi
-}%
-\minted@def@optcl{encoding}{-P encoding}{#1}
-\minted@def@optcl{outencoding}{-P outencoding}{#1}
-\minted@def@optcl@e{escapeinside}{-P escapeinside}{#1}
-\minted@def@optcl@switch{stripnl}{-P stripnl}
-\minted@def@optcl@switch{stripall}{-P stripall}
-\minted@def@optcl@switch{python3}{-P python3}
-\minted@def@optcl@switch{funcnamehighlighting}{-P funcnamehighlighting}
-\minted@def@optcl@switch{startinline}{-P startinline}
-\ifthenelse{\boolean{minted@draft}}%
- {\minted@def@optfv{gobble}}%
- {\minted@def@optcl{gobble}{-F gobble:n}{#1}}
-\minted@def@optcl{codetagify}{-F codetagify:codetags}{#1}
-\minted@def@optcl{keywordcase}{-F keywordcase:case}{#1}
-\minted@def@optcl@switch{texcl}{-P texcomments}
-\minted@def@optcl@switch{texcomments}{-P texcomments}
-\minted@def@optcl@switch{mathescape}{-P mathescape}
-\minted@def@optfv@switch{linenos}
-\minted@def@opt@detok{style}
-\minted@def@optfv{frame}
-\minted@def@optfv{framesep}
-\minted@def@optfv{framerule}
-\minted@def@optfv{rulecolor}
-\minted@def@optfv{numbersep}
-\minted@def@optfv{numbers}
-\minted@def@optfv{firstnumber}
-\minted@def@optfv{stepnumber}
-\minted@def@optfv{firstline}
-\minted@def@optfv{lastline}
-\minted@def@optfv{baselinestretch}
-\minted@def@optfv{xleftmargin}
-\minted@def@optfv{xrightmargin}
-\minted@def@optfv{fillcolor}
-\minted@def@optfv{tabsize}
-\minted@def@optfv{fontfamily}
-\minted@def@optfv{fontsize}
-\minted@def@optfv{fontshape}
-\minted@def@optfv{fontseries}
-\minted@def@optfv{formatcom}
-\minted@def@optfv{label}
-\minted@def@optfv{labelposition}
-\minted@def@optfv{highlightlines}
-\minted@def@optfv{highlightcolor}
-\minted@def@optfv{space}
-\minted@def@optfv{spacecolor}
-\minted@def@optfv{tab}
-\minted@def@optfv{tabcolor}
-\minted@def@optfv{highlightcolor}
-\minted@def@optfv@switch{beameroverlays}
-\minted@def@optfv@switch{curlyquotes}
-\minted@def@optfv@switch{numberfirstline}
-\minted@def@optfv@switch{numberblanklines}
-\minted@def@optfv@switch{stepnumberfromfirst}
-\minted@def@optfv@switch{stepnumberoffsetvalues}
-\minted@def@optfv@switch{showspaces}
-\minted@def@optfv@switch{resetmargins}
-\minted@def@optfv@switch{samepage}
-\minted@def@optfv@switch{showtabs}
-\minted@def@optfv@switch{obeytabs}
-\minted@def@optfv@switch{breaklines}
-\minted@def@optfv@switch{breakbytoken}
-\minted@def@optfv@switch{breakbytokenanywhere}
-\minted@def@optfv{breakindent}
-\minted@def@optfv{breakindentnchars}
-\minted@def@optfv@switch{breakautoindent}
-\minted@def@optfv{breaksymbol}
-\minted@def@optfv{breaksymbolsep}
-\minted@def@optfv{breaksymbolsepnchars}
-\minted@def@optfv{breaksymbolindent}
-\minted@def@optfv{breaksymbolindentnchars}
-\minted@def@optfv{breaksymbolleft}
-\minted@def@optfv{breaksymbolsepleft}
-\minted@def@optfv{breaksymbolsepleftnchars}
-\minted@def@optfv{breaksymbolindentleft}
-\minted@def@optfv{breaksymbolindentleftnchars}
-\minted@def@optfv{breaksymbolright}
-\minted@def@optfv{breaksymbolsepright}
-\minted@def@optfv{breaksymbolseprightnchars}
-\minted@def@optfv{breaksymbolindentright}
-\minted@def@optfv{breaksymbolindentrightnchars}
-\minted@def@optfv{breakbefore}
-\minted@def@optfv{breakbeforesymbolpre}
-\minted@def@optfv{breakbeforesymbolpost}
-\minted@def@optfv@switch{breakbeforeinrun}
-\minted@def@optfv{breakafter}
-\minted@def@optfv@switch{breakafterinrun}
-\minted@def@optfv{breakaftersymbolpre}
-\minted@def@optfv{breakaftersymbolpost}
-\minted@def@optfv@switch{breakanywhere}
-\minted@def@optfv{breakanywheresymbolpre}
-\minted@def@optfv{breakanywheresymbolpost}
-\minted@def@optfv{fontencoding}
-\minted@def@opt{bgcolor}
-\minted@def@opt@switch{autogobble}
-\minted@def@opt@switch{ignorelexererrors}
-\newcommand{\minted@encoding}{\minted@get@opt{encoding}{UTF8}}
-\newenvironment{minted@snugshade*}[1]{%
- \def\FrameCommand##1{\hskip\@totalleftmargin
- \colorbox{#1}{##1}%
- \hskip-\linewidth \hskip-\@totalleftmargin \hskip\columnwidth}%
- \MakeFramed{\advance\hsize-\width
- \@totalleftmargin\z@ \linewidth\hsize
- \advance\labelsep\fboxsep
- \@setminipage}%
- }{\par\unskip\@minipagefalse\endMakeFramed}
-\newsavebox{\minted@bgbox}
-\newenvironment{minted@colorbg}[1]{%
- \setlength{\OuterFrameSep}{0pt}%
- \let\minted@tmp\FV@NumberSep
- \edef\FV@NumberSep{%
- \the\numexpr\dimexpr\minted@tmp+\number\fboxsep\relax sp\relax}%
- \medskip
- \begin{minted@snugshade*}{#1}}
- {\end{minted@snugshade*}%
- \medskip\noindent}
-\newwrite\minted@code
-\newcommand{\minted@savecode}[1]{
- \immediate\openout\minted@code\minted@jobname.pyg\relax
- \immediate\write\minted@code{\expandafter\detokenize\expandafter{#1}}%
- \immediate\closeout\minted@code}
-\newcounter{minted@FancyVerbLineTemp}
-\newcommand{\minted@write@detok}[1]{%
- \immediate\write\FV@OutFile{\detokenize{#1}}}
-\newcommand{\minted@FVB@VerbatimOut}[1]{%
- \setcounter{minted@FancyVerbLineTemp}{\value{FancyVerbLine}}%
- \@bsphack
- \begingroup
- \FV@UseKeyValues
- \FV@DefineWhiteSpace
- \def\FV@Space{\space}%
- \FV@DefineTabOut
- \let\FV@ProcessLine\minted@write@detok
- \immediate\openout\FV@OutFile #1\relax
- \let\FV@FontScanPrep\relax
- \let\@noligs\relax
- \FV@Scan}
-\newcommand{\minted@FVE@VerbatimOut}{%
- \immediate\closeout\FV@OutFile\endgroup\@esphack
- \setcounter{FancyVerbLine}{\value{minted@FancyVerbLineTemp}}}%
-\ifcsname MintedPygmentize\endcsname\else
- \newcommand{\MintedPygmentize}{pygmentize}
-\fi
-\newcounter{minted@pygmentizecounter}
-\ifwindows
- \newcommand{\MintedPython}{python}
-\else
- \newcommand{\MintedPython}{python3}
-\fi
-\newcommand{\minted@check@MintedPython}{%
- \ifcsname minted@MintedPython@\MintedPython\endcsname
+ }%
+ \minted@forcsvlist{\minted@do}{\minted@optscopes}%
+ \pgfkeys{%
+ /minted/global/.cd,
+ #2=#3,
+ }}
+\def\mintedpyoptvalueof#1{%
+ \ifbool{minted@isinline}%
+ {\minted@pyoptvalueof@inline{#1}}%
+ {\minted@pyoptvalueof@block{#1}}}
+\def\minted@pyoptvalueof@inline#1{%
+ \ifcsname minted@pyopt@cmd@#1\endcsname
+ \unexpanded\expandafter\expandafter\expandafter{%
+ \csname minted@pyopt@cmd@#1\endcsname}%
+ \else\ifcsname minted@pyopt@lexerinline@\minted@lexer @#1\endcsname
+ \unexpanded\expandafter\expandafter\expandafter{%
+ \csname minted@pyopt@lexerinline@\minted@lexer @#1\endcsname}%
+ \else\ifcsname minted@pyopt@globalinline@#1\endcsname
+ \unexpanded\expandafter\expandafter\expandafter{%
+ \csname minted@pyopt@globalinline@#1\endcsname}%
+ \else\ifcsname minted@pyopt@lexer@\minted@lexer @#1\endcsname
+ \unexpanded\expandafter\expandafter\expandafter{%
+ \csname minted@pyopt@lexer@\minted@lexer @#1\endcsname}%
\else
- \let\minted@altpython\minted@undefined
- \ifdefstring{\MintedPython}{python}{\def\minted@altpython{python3}}{}%
- \ifdefstring{\MintedPython}{python3}{\def\minted@altpython{python}}{}%
- \ifx\minted@altpython\minted@undefined\relax
- \TestAppExists{\MintedPython}%
- \ifAppExists
- \expandafter\global\expandafter\let%
- \csname minted@MintedPython@\MintedPython\endcsname\relax
- \else
- \PackageError{minted}%
- {Failed to find Python executable \MintedPython;
- check Python installation (including PATH),
- or redefine \string\MintedPython}%
- {Failed to find Python executable \MintedPython;
- check Python installation (including PATH),
- or redefine \string\MintedPython}%
- \fi
+ \unexpanded\expandafter\expandafter\expandafter{%
+ \csname minted@pyopt@global@#1\endcsname}%
+ \fi\fi\fi\fi}
+\def\minted@pyoptvalueof@block#1{%
+ \ifcsname minted@pyopt@cmd@#1\endcsname
+ \unexpanded\expandafter\expandafter\expandafter{%
+ \csname minted@pyopt@cmd@#1\endcsname}%
+ \else\ifcsname minted@pyopt@lexer@\minted@lexer @#1\endcsname
+ \unexpanded\expandafter\expandafter\expandafter{%
+ \csname minted@pyopt@lexer@\minted@lexer @#1\endcsname}%
+ \else
+ \unexpanded\expandafter\expandafter\expandafter{%
+ \csname minted@pyopt@global@#1\endcsname}%
+ \fi\fi}
+\def\minted@pgfkeyscreate@tex#1#2{%
+ \minted@forcsvlist{\minted@pgfkeycreate@tex{#1}}{#2}}
+\begingroup
+\catcode`\==12
+\gdef\minted@pgfkeycreate@tex#1#2{%
+ \minted@pgfkeycreate@tex@i{#1}#2=\FV@Sentinel}
+\gdef\minted@pgfkeycreate@tex@i#1#2=#3\FV@Sentinel{%
+ \if\relax\detokenize{#3}\relax
+ \expandafter\minted@pgfkeycreate@tex@ii
+ \else
+ \expandafter\minted@pgfkeycreate@tex@iii
+ \fi
+ {#1}{#2}#3\FV@Sentinel}
+\gdef\minted@pgfkeycreate@tex@ii#1#2\FV@Sentinel{%
+ \minted@pgfkeycreate@tex@iv{#1}{#2}{\pgfkeysnovalue}}
+\gdef\minted@pgfkeycreate@tex@iii#1#2#3=\FV@Sentinel{%
+ \minted@pgfkeycreate@tex@iv{#1}{#2}{#3}}
+\endgroup
+\def\minted@pgfkeycreate@tex@iv#1#2#3{%
+ \def\minted@do##1{%
+ \minted@iflexerscope{##1}%
+ {\minted@do@i{##1}{@\minted@lexer}}%
+ {\minted@do@i{##1}{}}}
+ \def\minted@do@i##1##2{%
+ \if\relax\detokenize{#1}\relax
+ \pgfkeys{%
+ /minted/##1/.cd,
+ #2/.code=\expandafter\def\csname minted@texopt@##1##2@#2\endcsname{####1},
+ #2/.value required,
+ }%
\else
- \ifcsname minted@MintedPython@\minted@altpython\endcsname
- \let\MintedPython\minted@altpython
- \else
- \TestAppExists{\MintedPython}%
- \ifAppExists
- \expandafter\global\expandafter\let%
- \csname minted@MintedPython@\MintedPython\endcsname\relax
- \else
- \TestAppExists{\minted@altpython}%
- \ifAppExists
- \expandafter\global\expandafter\let%
- \csname minted@MintedPython@\minted@altpython\endcsname\relax
- \let\MintedPython\minted@altpython
+ \pgfkeys{%
+ /minted/##1/.cd,
+ #2/.code=
+ \def\minted@tmp{####1}%
+ \ifx\minted@tmp\minted@const@pgfkeysnovalue
+ \expandafter\let\csname minted@texopt@##1##2@#2\endcsname\minted@tmp
+ \else\ifcsname minted@opthandler@immediate@\string#1\endcsname
+ #1{minted@texopt@##1##2@#2}{####1}%
\else
- \PackageError{minted}%
- {Failed to find Python executables python or python3;
- check Python installation (including PATH),
- or redefine \string\MintedPython}%
- {Failed to find Python executables python or python3;
- check Python installation (including PATH),
- or redefine \string\MintedPython}%
- \fi
- \fi
- \fi
+ \expandafter\def\csname minted@texopt@##1##2@#2\endcsname{#1{####1}}%
+ \fi\fi,
+ #2/.value required,
+ }%
\fi
- \fi
+ }%
+ \minted@forcsvlist{\minted@do}{\minted@optscopes}%
+ \pgfkeys{%
+ /minted/global/.cd,
+ #2=#3,
+ }}
+\def\mintedtexoptvalueof#1{%
+ \ifbool{minted@isinline}%
+ {\minted@texoptvalueof@inline{#1}}%
+ {\minted@texoptvalueof@block{#1}}}
+\def\minted@texoptvalueof@inline#1{%
+ \ifcsname minted@texopt@cmd@#1\endcsname
+ \unexpanded\expandafter\expandafter\expandafter{%
+ \csname minted@texopt@cmd@#1\endcsname}%
+ \else\ifcsname minted@texopt@lexerinline@\minted@lexer @#1\endcsname
+ \unexpanded\expandafter\expandafter\expandafter{%
+ \csname minted@texopt@lexerinline@\minted@lexer @#1\endcsname}%
+ \else\ifcsname minted@texopt@globalinline@#1\endcsname
+ \unexpanded\expandafter\expandafter\expandafter{%
+ \csname minted@texopt@globalinline@#1\endcsname}%
+ \else\ifcsname minted@texopt@lexer@\minted@lexer @#1\endcsname
+ \unexpanded\expandafter\expandafter\expandafter{%
+ \csname minted@texopt@lexer@\minted@lexer @#1\endcsname}%
+ \else
+ \unexpanded\expandafter\expandafter\expandafter{%
+ \csname minted@texopt@global@#1\endcsname}%
+ \fi\fi\fi\fi}
+\def\minted@texoptvalueof@block#1{%
+ \ifcsname minted@texopt@cmd@#1\endcsname
+ \unexpanded\expandafter\expandafter\expandafter{%
+ \csname minted@texopt@cmd@#1\endcsname}%
+ \else\ifcsname minted@texopt@lexer@\minted@lexer @#1\endcsname
+ \unexpanded\expandafter\expandafter\expandafter{%
+ \csname minted@texopt@lexer@\minted@lexer @#1\endcsname}%
+ \else
+ \unexpanded\expandafter\expandafter\expandafter{%
+ \csname minted@texopt@global@#1\endcsname}%
+ \fi\fi}
+\def\minted@usetexoptsnonpygments{}
+\def\minted@opthandler@deforrestrictedescape#1#2{%
+ \if\relax\detokenize{#2}\relax
+ \expandafter\def\csname#1\endcsname{#2}%
+ \else\if\relax\detokenize\expandafter{\@gobble#2}\relax
+ \ifcat\relax\noexpand#2%
+ \expandafter\expandafter\expandafter\minted@opthandler@deforrestrictedescape@i
+ \expandafter\@gobble\string#2\FV@Sentinel{#1}{#2}%
+ \else
+ \FVExtraDetokenizeREscVArg{\expandafter\def\csname#1\endcsname}{#2}%
+ \fi
+ \else
+ \FVExtraDetokenizeREscVArg{\expandafter\def\csname#1\endcsname}{#2}%
+ \fi\fi}
+\def\minted@opthandler@deforrestrictedescape@i#1#2\FV@Sentinel#3#4{%
+ \ifcsname minted@isalpha\number`#1\endcsname
+ \expandafter\def\csname#3\endcsname{#4}%
+ \else
+ \FVExtraDetokenizeREscVArg{\expandafter\def\csname#3\endcsname}{#4}%
+ \fi}
+\expandafter\let\csname
+ minted@opthandler@immediate@\string\minted@opthandler@deforrestrictedescape
+ \endcsname\relax
+\mintedpgfkeyscreate{fv}{
+ baselinestretch,
+ beameroverlays,
+ backgroundcolor,
+ backgroundcolorvphantom,
+ bgcolor,
+ bgcolorpadding,
+ bgcolorvphantom,
+ breakafter,
+ breakafterinrun,
+ breakaftersymbolpost,
+ breakaftersymbolpre,
+ breakanywhere,
+ breakanywhereinlinestretch,
+ breakanywheresymbolpost,
+ breakanywheresymbolpre,
+ breakautoindent,
+ breakbefore,
+ breakbeforeinrun,
+ breakbeforesymbolpost,
+ breakbeforesymbolpre,
+ breakbytoken,
+ breakbytokenanywhere,
+ breakindent,
+ breakindentnchars,
+ breaklines,
+ breaksymbol,
+ breaksymbolindent,
+ breaksymbolindentleft,
+ breaksymbolindentleftnchars,
+ breaksymbolindentnchars,
+ breaksymbolindentright,
+ breaksymbolindentrightnchars,
+ breaksymbolleft,
+ breaksymbolright,
+ breaksymbolsep,
+ breaksymbolsepleft,
+ breaksymbolsepleftnchars,
+ breaksymbolsepnchars,
+ breaksymbolsepright,
+ breaksymbolseprightnchars,
+ curlyquotes,
+ fillcolor,
+ firstline,
+ firstnumber,
+ fontencoding,
+ fontfamily,
+ fontseries,
+ fontshape,
+ fontsize,
+ formatcom,
+ frame,
+ framerule,
+ framesep,
+ highlightcolor,
+ highlightlines,
+ label,
+ labelposition,
+ lastline,
+ linenos,
+ listparameters,
+ numberblanklines,
+ numberfirstline,
+ numbers,
+ numbersep,
+ obeytabs,
+ resetmargins,
+ rulecolor,
+ samepage,
+ showspaces,
+ showtabs,
+ space,
+ spacecolor,
+ stepnumber,
+ stepnumberfromfirst,
+ stepnumberoffsetvalues,
+ tab,
+ tabcolor=black,
+ tabsize,
+ xleftmargin,
+ xrightmargin,
}
-\ifwindows
- \def\minted@opt@quote#1{\detokenize{"#1"}}
-\else
- \def\minted@opt@quote#1{\detokenize{'#1'}}
+\mintedpgfkeyscreate{py}{
+ autogobble<true>=false,
+ encoding=utf8,
+ funcnamehighlighting<true>=true,
+ gobble=0,
+ gobblefilter=0,
+ keywordcase=none,
+ literalenvname=MintedVerbatim,
+ mathescape<true>=false,
+ python3<true>=true,
+ rangeregexmatchnumber=1,
+ rangeregexdotall<true>=false,
+ rangeregexmultiline<true>=false,
+ startinline<true>=false,
+ stripall<true>=false,
+ stripnl<true>=false,
+ texcl<true>=false,
+ texcomments<true>=false,
+}
+\mintedpgfkeyscreate[\minted@opthandler@deforrestrictedescape]{py}{
+ codetagify=,
+ escapeinside=,
+ literatecomment=,
+ rangestartstring=,
+ rangestartafterstring=,
+ rangestopstring=,
+ rangestopbeforestring=,
+ rangeregex=,
+}
+\let\minted@tmplexer\minted@lexer
+\def\minted@lexer{php}
+\pgfkeys{
+ /minted/lexerinline/.cd,
+ startinline=true,
+}
+\let\minted@lexer\minted@tmplexer
+\mintedpgfkeyscreate{tex}{
+ envname=Verbatim,
+ ignorelexererrors=false,
+ style=default,
+}
+\pgfkeys{
+ /minted/globalinline/.cd,
+ envname=VerbEnv,
+}
+\expandafter\def\expandafter\minted@usetexoptsnonpygments\expandafter{%
+ \minted@usetexoptsnonpygments
+ \edef\minted@literalenvname{\mintedpyoptvalueof{literalenvname}}%
+ \edef\minted@envname{\mintedtexoptvalueof{envname}}%
+ \expandafter\def\expandafter\minted@literalenv\expandafter{%
+ \csname \minted@literalenvname\endcsname}%
+ \expandafter\def\expandafter\minted@endliteralenv\expandafter{%
+ \csname end\minted@literalenvname\endcsname}%
+ \expandafter\expandafter\expandafter
+ \let\expandafter\minted@literalenv\csname \minted@envname\endcsname
+ \expandafter\expandafter\expandafter
+ \let\expandafter\minted@endliteralenv\csname end\minted@envname\endcsname}%
+\ifcsname minted@def@optcl\endcsname
+ \ifx\minted@def@optcl\relax
+ \let\minted@def@optcl\minted@undefined
+ \fi
\fi
-\newcommand{\minted@pygmentize}[2][\minted@outputdir\minted@jobname.pyg]{%
- \minted@defstyle{\minted@get@opt{style}{default}}%
- \stepcounter{minted@pygmentizecounter}%
- \ifthenelse{\equal{\minted@get@opt{autogobble}{false}}{true}}%
- {\def\minted@codefile{\minted@outputdir\minted@jobname.pyg}}%
- {\def\minted@codefile{#1}}%
- \ifthenelse{\boolean{minted@isinline}}%
- {\def\minted@optlistcl@inlines{%
- \minted@optlistcl@g@i
- \csname minted@optlistcl@lang\minted@lang @i\endcsname}}%
- {\let\minted@optlistcl@inlines\@empty}%
- \def\minted@cmd{%
- \ifminted@kpsewhich
- \ifwindows
- \detokenize{for /f "usebackq tokens=*"}\space\@percentchar\detokenize{a in (`kpsewhich}\space\minted@codefile\detokenize{`) do}\space
- \fi
+\providecommand{\minted@def@optcl}[4][]{%
+ \minted@warning{Macro \string\minted@def@optcl\space is deprecated with minted v3
+ and no longer has any effect}}
+\newcounter{minted@numcachefiles}
+\def\minted@addcachefilename#1{%
+ \ifbool{minted@canexec}%
+ {\stepcounter{minted@numcachefiles}%
+ \expandafter
+ \xdef\csname minted@cachefile\arabic{minted@numcachefiles}\endcsname{#1}}%
+ {}}
+\def\minted@clean{%
+ \ifbool{minted@canexec}%
+ {\ifbool{minted@diddetectconfig}{\minted@clean@i}{}}%
+ {}}
+\def\minted@clean@i{%
+ \ifnum\value{minted@numcachefiles}>0\relax
+ \expandafter\minted@savecachelist
+ \fi
+ \ifbool{minted@fasthighlightmode}%
+ {}%
+ {\minted@exec@clean
+ \global\boolfalse{minted@canexec}}}
+\def\minted@savecachelist{%
+ \pydatasetfilename{\MintedDataFilename}%
+ \minted@fasthighlightmode@checkstart
+ \pydatawritedictopen
+ \pydatawritekeyvalue{command}{clean}%
+ \pydatawritekeyedefvalue{jobname}{\jobname}%
+ \pydatawritekeyedefvalue{timestamp}{\minted@timestamp}%
+ \pydatawritekeyedefvalue{cachepath}{\minted@cachepath}%
+ \pydatawritekey{cachefiles}%
+ \pydatawritemlvaluestart
+ \pydatawritemlvalueline{[}%
+ \setcounter{minted@tmpcnt}{1}%
+ \loop\unless\ifnum\value{minted@tmpcnt}>\value{minted@numcachefiles}\relax
+ \expandafter\minted@savecachelist@writecachefile\expandafter{%
+ \csname minted@cachefile\arabic{minted@tmpcnt}\endcsname}%
+ \expandafter\global\expandafter
+ \let\csname minted@cachefile\arabic{minted@tmpcnt}\endcsname\minted@undefined
+ \stepcounter{minted@tmpcnt}%
+ \repeat
+ \setcounter{minted@numcachefiles}{0}%
+ \pydatawritemlvalueline{]}%
+ \pydatawritemlvalueend
+ \pydatawritedictclose
+ \ifbool{minted@fasthighlightmode}{}{\pydataclosefilename{\MintedDataFilename}}}
+\begingroup
+\catcode`\"=12
+\catcode`\,=12
+\gdef\minted@savecachelist@writecachefile#1{%
+ \expandafter\pydatawritemlvalueline\expandafter{\expandafter"#1",}}
+\endgroup
+\AfterEndDocument{%
+ \minted@clean
+ \minted@fasthighlightmode@checkend}
+\def\minted@patch@PygmentsZsq{%
+ \ifcsname\minted@styleprefix Zsq\endcsname
+ \ifcsstring{\minted@styleprefix Zsq}{\char`\'}{\minted@patch@PygmentsZsq@i}{}%
+ \fi}
+\begingroup
+\catcode`\'=\active
+\gdef\minted@patch@PygmentsZsq@i{\def\PYGZsq{'}}
+\endgroup
+\def\minted@patch@PygmentsZhy{%
+ \ifcsname\minted@styleprefix Zhy\endcsname
+ \ifcsstring{\minted@styleprefix Zhy}{\char`\-}{\def\PYGZhy{\mbox{-}}}{}%
+ \fi}
+\def\minted@patch@ignorelexererrors{%
+ \edef\minted@tmp{\mintedtexoptvalueof{ignorelexererrors}}%
+ \ifdefstring{\minted@tmp}{true}%
+ {\expandafter\let\csname\minted@styleprefix @tok@err\endcsname\relax}%
+ {}}
+\def\minted@patch@PygmentsStyledef{%
+ \minted@patch@PygmentsZsq
+ \minted@patch@PygmentsZhy
+ \minted@patch@ignorelexererrors}
+\def\minted@VerbatimPygments{%
+ \expandafter\minted@VerbatimPygments@i\expandafter{%
+ \csname\minted@styleprefix\endcsname}}
+\def\minted@VerbatimPygments@i#1{%
+ \VerbatimPygments{#1}{#1}}
+\def\minted@standardcatcodes{%
+ \catcode`\\=0
+ \catcode`\{=1
+ \catcode`\}=2
+ \catcode`\#=6
+ \catcode`\ =10
+ \catcode`\@=11
+ \catcode`\`=12
+ \catcode`\==12
+ \catcode`\+=12
+ \catcode`\.=12
+ \catcode`\,=12
+ \catcode`\[=12
+ \catcode`\]=12
+ \catcode`\%=14}
+\def\minted@defstyle{%
+ \edef\minted@tmp{\mintedtexoptvalueof{style}}%
+ \expandafter\minted@defstyle@i\expandafter{\minted@tmp}}
+\def\minted@defstyle@i#1{%
+ \minted@ifalphanumhyphenunderscore{#1}%
+ {\minted@defstyle@ii{#1}}%
+ {\minted@error{Highlighting style is set to "#1" but only style names with
+ alphanumeric characters, hyphens, and underscores are supported;
+ falling back to default style}%
+ \minted@defstyle@ii{default}}}
+\def\minted@defstyle@ii#1{%
+ \ifcsname minted@styledef@#1\endcsname
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+ {\csname minted@styledef@#1\endcsname
+ \minted@patch@PygmentsStyledef
+ \minted@VerbatimPygments}%
+ {\minted@defstyle@load{#1}}}
+\def\minted@catchfiledef#1#2{%
+ \CatchFileDef{#1}{#2}{\minted@standardcatcodes\endlinechar=-1}}
+\def\minted@defstyle@load#1{%
+ \minted@detectconfig
+ \ifbool{minted@cache}%
+ {\edef\minted@styledeffilename{#1\detokenize{.style.minted}}%
+ \edef\minted@styledeffilepath{\minted@cachepath\minted@styledeffilename}%
+ \IfFileExists{\minted@styledeffilepath}%
+ {\minted@defstyle@input{#1}}%
+ {\ifbool{minted@canexec}%
+ {\minted@defstyle@generate{#1}}%
+ {\minted@error{Missing definition for highlighting style "#1" (minted executable
+ is unavailable or disabled); attempting to substitute fallback style}%
+ \minted@defstyle@fallback{#1}}}}%
+ {\edef\minted@styledeffilename{%
+ \detokenize{_}\MintedJobnameMdfive\detokenize{.style.minted}}%
+ \let\minted@styledeffilepath\minted@styledeffilename
+ \ifbool{minted@canexec}%
+ {\minted@defstyle@generate{#1}}%
+ {\minted@error{Missing definition for highlighting style "#1" (minted executable
+ is unavailable or disabled); attempting to substitute fallback style}%
+ \minted@defstyle@fallback{#1}}}}
+\def\minted@defstyle@input#1{%
+ \begingroup
+ \minted@catchfiledef{\minted@tmp}{\minted@styledeffilepath}%
+ \minted@tmp
+ \ifcsname\minted@styleprefix\endcsname
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+ {\expandafter\global\expandafter\let\csname minted@styledef@#1\endcsname\minted@tmp
+ \endgroup
+ \ifbool{minted@cache}{\minted@addcachefilename{\minted@styledeffilename}}{}%
+ \csname minted@styledef@#1\endcsname
+ \minted@patch@PygmentsStyledef
+ \minted@VerbatimPygments}%
+ {\endgroup
+ \ifbool{minted@canexec}%
+ {\minted@warning{Invalid or corrupted style definition file
+ "\minted@styledeffilename"; attempting to regenerate}%
+ \minted@defstyle@generate{#1}}%
+ {\minted@error{Invalid or corrupted style definition file
+ "\minted@styledeffilename"; attempting to substitute fallback style
+ (minted executable is unavailable or disabled)}%
+ \minted@defstyle@fallback{#1}}}}
+\def\minted@defstyle@generate#1{%
+ \pydatasetfilename{\MintedDataFilename}%
+ \minted@fasthighlightmode@checkstart
+ \pydatawritedictopen
+ \pydatawritekeyvalue{command}{styledef}%
+ \pydatawritekeyedefvalue{jobname}{\jobname}%
+ \pydatawritekeyedefvalue{timestamp}{\minted@timestamp}%
+ \pydatawritekeyedefvalue{currentfilepath}{\CurrentFilePath}%
+ \pydatawritekeyedefvalue{currentfile}{\CurrentFile}%
+ \pydatawritekeyedefvalue{inputlineno}{\the\inputlineno}%
+ \pydatawritekeyedefvalue{cachepath}{\minted@cachepath}%
+ \pydatawritekeyedefvalue{styledeffilename}{\minted@styledeffilename}%
+ \pydatawritekeyvalue{style}{#1}%
+ \pydatawritekeyedefvalue{commandprefix}{\minted@styleprefix}%
+ \pydatawritedictclose
+ \ifbool{minted@fasthighlightmode}%
+ {\minted@defstyle@fallback{#1}}%
+ {\pydataclosefilename{\MintedDataFilename}%
+ \begingroup
+ \minted@exec@styledef
+ \ifx\minted@exec@warning\relax
+ \else
+ \expandafter\minted@exec@warning
\fi
- \MintedPygmentize\space -l \minted@opt@quote{#2}
- -f latex -P commandprefix=PYG -F tokenmerge
- \minted@optlistcl@g \csname minted@optlistcl@lang\minted@lang\endcsname
- \minted@optlistcl@inlines
- \minted@optlistcl@cmd -o \minted@outputdir\minted@infile\space
- \ifminted@kpsewhich
- \ifwindows
- \@percentchar\detokenize{a}%
- \else
- \detokenize{`}kpsewhich \minted@codefile\space
- \detokenize{||} \minted@codefile\detokenize{`}%
- \fi
+ \ifx\minted@exec@error\relax
+ \expandafter\minted@defstyle@generate@i
\else
- \minted@codefile
- \fi}%
- % For debugging, uncomment: %%%%
- % \immediate\typeout{\minted@cmd}%
- % %%%%
- \ifthenelse{\boolean{minted@cache}}%
- {%
- \ifminted@frozencache
+ \expandafter\minted@defstyle@generate@error
+ \fi
+ {#1}}}
+\def\minted@defstyle@generate@i#1{%
+ \endgroup
+ \begingroup
+ \minted@catchfiledef{\minted@tmp}{\minted@styledeffilepath}%
+ \minted@tmp
+ \ifcsname\minted@styleprefix\endcsname
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+ {\expandafter\global\expandafter\let\csname minted@styledef@#1\endcsname\minted@tmp
+ \endgroup
+ \ifbool{minted@cache}{\minted@addcachefilename{\minted@styledeffilename}}{}%
+ \csname minted@styledef@#1\endcsname
+ \minted@patch@PygmentsStyledef
+ \minted@VerbatimPygments}%
+ {\endgroup
+ \minted@error{Failed to create style definition file "\minted@styledeffilename"
+ (no error message, see "\MintedErrlogFilename" if it exists);
+ attempting to substitute fallback style}%
+ \minted@defstyle@fallback{#1}}}
+\def\minted@defstyle@generate@error#1{%
+ \minted@exec@error
+ \endgroup
+ \minted@defstyle@fallback{#1}}
+\def\minted@defstyle@fallback#1{%
+ \ifstrequal{#1}{default}%
+ {\expandafter\global\expandafter
+ \let\csname minted@styledef@default\endcsname\minted@styledeffallback}%
+ {\ifcsname minted@styledef@default\endcsname
+ \else
+ \minted@defstyle@load{default}%
+ \fi
+ \expandafter\let\expandafter\minted@tmp\csname minted@styledef@default\endcsname
+ \expandafter\global\expandafter\let\csname minted@styledef@#1\endcsname\minted@tmp}}
+\def\minted@styledeffallback{%
+ \expandafter\def\csname\minted@styleprefix\endcsname##1##2{##2}%
+ \expandafter\def\csname\minted@styleprefix Zbs\endcsname{\char`\\}%
+ \expandafter\def\csname\minted@styleprefix Zus\endcsname{\char`\_}%
+ \expandafter\def\csname\minted@styleprefix Zob\endcsname{\char`\{}%
+ \expandafter\def\csname\minted@styleprefix Zcb\endcsname{\char`\}}%
+ \expandafter\def\csname\minted@styleprefix Zca\endcsname{\char`\^}%
+ \expandafter\def\csname\minted@styleprefix Zam\endcsname{\char`\&}%
+ \expandafter\def\csname\minted@styleprefix Zlt\endcsname{\char`\<}%
+ \expandafter\def\csname\minted@styleprefix Zgt\endcsname{\char`\>}%
+ \expandafter\def\csname\minted@styleprefix Zsh\endcsname{\char`\#}%
+ \expandafter\def\csname\minted@styleprefix Zpc\endcsname{\char`\%}%
+ \expandafter\def\csname\minted@styleprefix Zdl\endcsname{\char`\$}%
+ \expandafter\def\csname\minted@styleprefix Zhy\endcsname{\char`\-}%
+ \expandafter\def\csname\minted@styleprefix Zsq\endcsname{\char`\'}%
+ \expandafter\def\csname\minted@styleprefix Zdq\endcsname{\char`\"}%
+ \expandafter\def\csname\minted@styleprefix Zti\endcsname{\char`\~}%
+ \minted@patch@PygmentsStyledef
+ \minted@VerbatimPygments}
+\newcounter{minted@FancyVerbLineTemp}
+\def\minted@lexerlinenoson{%
+ \ifcsname c@minted@lexer\minted@lexer\endcsname
+ \else
+ \newcounter{minted@lexer\minted@lexer}%
+ \fi
+ \setcounter{minted@FancyVerbLineTemp}{\value{FancyVerbLine}}%
+ \setcounter{FancyVerbLine}{\value{minted@lexer\minted@lexer}}}
+\def\minted@lexerlinenosoff{%
+ \setcounter{minted@lexer\minted@lexer}{\value{FancyVerbLine}}%
+ \setcounter{FancyVerbLine}{\value{minted@FancyVerbLineTemp}}}
+\ifbool{minted@inputlexerlinenos}%
+ {\let\minted@inputlexerlinenoson\minted@lexerlinenoson
+ \let\minted@inputlexerlinenosoff\minted@lexerlinenosoff}%
+ {\let\minted@inputlexerlinenoson\relax
+ \let\minted@inputlexerlinenosoff\relax
+ \ifbool{minted@lexerlinenos}
+ {}%
+ {\let\minted@lexerlinenoson\relax
+ \let\minted@lexerlinenosoff\relax}}
+\def\minted@codewrapper#1{%
+ \ifcsname minted@inputfilepath\endcsname
+ \minted@inputlexerlinenoson
+ \else
+ \minted@lexerlinenoson
+ \fi
+ #1%
+ \ifcsname minted@inputfilepath\endcsname
+ \minted@inputlexerlinenosoff
+ \else
+ \minted@lexerlinenosoff
+ \fi}
+\def\minted@debug@input{%
+ \ifbool{minted@debug}%
+ {\immediate\typeout{%
+ minted debug: \string\input\space at
+ \ifx\CurrentFile\@empty\else\CurrentFile\space\fi line \the\inputlineno}}%
+ {}}
+\def\minted@highlight{%
+ \minted@defstyle
+ \pydatasetbuffername{minted@tmpdatabuffer}%
+ \pydatabufferkeyvalue{command}{highlight}%
+ \pydatabufferkey{code}%
+ \pydatabuffermlvaluestart
+ \setcounter{minted@tmpcnt}{1}%
+ \loop\unless\ifnum\value{minted@tmpcnt}>\value{minted@tmpcodebufferlength}\relax
+ \expandafter\let\expandafter
+ \minted@tmp\csname minted@tmpcodebufferline\arabic{minted@tmpcnt}\endcsname
+ \expandafter\pydatabuffermlvalueline\expandafter{\minted@tmp}%
+ \stepcounter{minted@tmpcnt}%
+ \repeat
+ \pydatabuffermlvalueend
+ \minted@highlight@i}
+\def\minted@highlightinputfile{%
+ \minted@defstyle
+ \edef\minted@inputfilemdfivesum{\pdf@filemdfivesum{\minted@inputfilepath}}%
+ \ifx\minted@inputfilemdfivesum\@empty
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi
+ {\minted@error{Cannot find input file "\minted@inputfilepath"; inserting placeholder}%
+ \minted@insertplaceholder}%
+ {\pydatasetbuffername{minted@tmpdatabuffer}%
+ \pydatabufferkeyvalue{command}{highlight}%
+ \pydatabufferkeyedefvalue{inputfilepath}{\minted@inputfilepath}%
+ \pydatabufferkeyedefvalue{inputfilemdfivesum}{\minted@inputfilemdfivesum}%
+ \minted@highlight@i}}
+\def\minted@def@FV@GetKeyValues@standardcatcodes{%
+ \let\minted@FV@GetKeyValues@orig\FV@GetKeyValues
+ \def\FV@GetKeyValues##1{%
+ \begingroup
+ \minted@standardcatcodes
+ \minted@FV@GetKeyValues@i{##1}}%
+ \def\minted@FV@GetKeyValues@i##1[##2]{%
+ \endgroup
+ \let\FV@GetKeyValues\minted@FV@GetKeyValues@orig
+ \let\minted@FV@GetKeyValues@i\minted@undefined
+ \FV@GetKeyValues{##1}[##2]}}
+\def\minted@highlight@i{%
+ \pydatabufferkeyedefvalue{pyopt.lexer}{\minted@lexer}%
+ \pydatabufferkeyedefvalue{pyopt.commandprefix}{\minted@styleprefix}%
+ \minted@forcsvlist{\minted@highlight@bufferpykeys}{\minted@optkeyslist@py}%
+ \ifbool{minted@cache}%
+ {\edef\minted@highlightfilename{\pydatabuffermdfivesum\detokenize{.highlight.minted}}%
+ \edef\minted@highlightfilepath{\minted@cachepath\minted@highlightfilename}%
+ \IfFileExists{\minted@highlightfilepath}%
+ {\minted@codewrapper{%
+ \minted@def@FV@GetKeyValues@standardcatcodes
+ \minted@debug@input
+ \input{\minted@highlightfilepath}}%
+ \minted@addcachefilename{\minted@highlightfilename}}%
+ {\ifbool{minted@canexec}%
+ {\minted@highlight@create}%
+ {\minted@error{Cannot highlight code (minted executable is unavailable or
+ disabled); attempting to typeset without highlighting}%
+ \minted@highlight@fallback}}}%
+ {\edef\minted@highlightfilename{%
+ \detokenize{_}\MintedJobnameMdfive\detokenize{.highlight.minted}}%
+ \let\minted@highlightfilepath\minted@highlightfilename
+ \ifbool{minted@canexec}%
+ {\minted@highlight@create}%
+ {\minted@error{Cannot highlight code (minted executable is unavailable or
+ disabled); attempting to typeset without highlighting}%
+ \minted@highlight@fallback}}%
+ \pydataclearbuffername{minted@tmpdatabuffer}}
+\def\minted@highlight@bufferpykeys#1{%
+ \edef\minted@tmp{\mintedpyoptvalueof{#1}}%
+ \ifx\minted@tmp\minted@const@pgfkeysnovalue
+ \else
+ \pydatabufferkeyedefvalue{pyopt.#1}{\minted@tmp}%
+ \fi}
+\def\minted@highlight@create{%
+ \pydatasetfilename{\MintedDataFilename}%
+ \minted@fasthighlightmode@checkstart
+ \pydatawritedictopen
+ \pydatawritebuffer
+ \pydatawritekeyedefvalue{jobname}{\jobname}%
+ \pydatawritekeyedefvalue{timestamp}{\minted@timestamp}%
+ \pydatawritekeyedefvalue{currentfilepath}{\CurrentFilePath}%
+ \pydatawritekeyedefvalue{currentfile}{\CurrentFile}%
+ \pydatawritekeyedefvalue{inputlineno}{\the\inputlineno}%
+ \pydatawritekeyedefvalue{cachepath}{\minted@cachepath}%
+ \pydatawritekeyedefvalue{highlightfilename}{\minted@highlightfilename}%
+ \pydatawritedictclose
+ \ifbool{minted@fasthighlightmode}%
+ {\minted@insertplaceholder}%
+ {\pydataclosefilename{\MintedDataFilename}%
+ \begingroup
+ \minted@exec@highlight
+ \IfFileExists{\minted@highlightfilepath}%
+ {\ifx\minted@exec@warning\relax
\else
- \ifthenelse{\equal{\minted@get@opt{autogobble}{false}}{true}}%
- {\edef\minted@hash{%
- \pdf@filemdfivesum{#1}%
- \pdf@mdfivesum{\minted@cmd\space%
- autogobble(\the\numexpr\FancyVerbStartNum\relax-%
- \the\numexpr\FancyVerbStopNum\relax)}}}%
- {\edef\minted@hash{%
- \pdf@filemdfivesum{#1}%
- \pdf@mdfivesum{\minted@cmd}}}%
- \edef\minted@infile{\minted@cachedir/\minted@hash.pygtex}%
- \IfFileExists{\minted@infile}{}{%
- \ifthenelse{\equal{\minted@get@opt{autogobble}{false}}{true}}{%
- \minted@autogobble{#1}}{}%
- \ShellEscape{\minted@cmd}}%
+ \expandafter\minted@exec@warning
\fi
- \ifthenelse{\boolean{minted@finalizecache}}%
- {%
- \edef\minted@cachefilename{listing\arabic{minted@pygmentizecounter}.pygtex}%
- \edef\minted@actualinfile{\minted@cachedir/\minted@cachefilename}%
- \ifwindows
- \StrSubstitute{\minted@infile}{/}{\@backslashchar}[\minted@infile@windows]
- \StrSubstitute{\minted@actualinfile}{/}{\@backslashchar}[\minted@actualinfile@windows]
- \ShellEscape{move /y \minted@outputdir\minted@infile@windows\space\minted@outputdir\minted@actualinfile@windows}%
- \else
- \ShellEscape{mv -f \minted@outputdir\minted@infile\space\minted@outputdir\minted@actualinfile}%
- \fi
- \let\minted@infile\minted@actualinfile
- \expandafter\minted@addcachefile\expandafter{\minted@cachefilename}%
- }%
- {\ifthenelse{\boolean{minted@frozencache}}%
- {%
- \edef\minted@cachefilename{listing\arabic{minted@pygmentizecounter}.pygtex}%
- \edef\minted@infile{\minted@cachedir/\minted@cachefilename}%
- \expandafter\minted@addcachefile\expandafter{\minted@cachefilename}}%
- {\expandafter\minted@addcachefile\expandafter{\minted@hash.pygtex}}%
- }%
- \minted@inputpyg}%
- {%
- \ifthenelse{\equal{\minted@get@opt{autogobble}{false}}{true}}{%
- \minted@autogobble{#1}}{}%
- \ShellEscape{\minted@cmd}%
- \minted@inputpyg}%
-}
-\def\minted@autogobble#1{%
- \edef\minted@argone@esc{#1}%
- \StrSubstitute{\minted@argone@esc}{\@backslashchar}{\@backslashchar\@backslashchar}[\minted@argone@esc]%
- \StrSubstitute{\minted@argone@esc}{"}{\@backslashchar"}[\minted@argone@esc]%
- \edef\minted@tmpfname@esc{\minted@outputdir\minted@jobname}%
- \StrSubstitute{\minted@tmpfname@esc}{\@backslashchar}{\@backslashchar\@backslashchar}[\minted@tmpfname@esc]%
- \StrSubstitute{\minted@tmpfname@esc}{"}{\@backslashchar"}[\minted@tmpfname@esc]%
- %Need a version of open() that supports encoding under Python 2
- \minted@check@MintedPython
- \edef\minted@autogobblecmd{%
- \ifminted@kpsewhich
- \ifwindows
- \detokenize{for /f "usebackq tokens=*" }\@percentchar\detokenize{a in (`kpsewhich} #1\detokenize{`) do}\space
+ \ifx\minted@exec@error\relax
+ \else
+ \expandafter\minted@exec@error
\fi
- \fi
- \MintedPython\detokenize{ -c "import sys; import os;
- import textwrap;
- from io import open;
- fname = }%
- \ifminted@kpsewhich
- \detokenize{sys.argv[1];}\space
+ \endgroup
+ \minted@codewrapper{%
+ \minted@def@FV@GetKeyValues@standardcatcodes
+ \minted@debug@input
+ \input{\minted@highlightfilepath}}%
+ \ifbool{minted@cache}{\minted@addcachefilename{\minted@highlightfilename}}{}}%
+ {\ifx\minted@exec@warning\relax
\else
- \detokenize{os.path.expanduser(os.path.expandvars(\"}\minted@argone@esc\detokenize{\"));}\space
+ \expandafter\minted@exec@warning
\fi
- \detokenize{f = open(fname, \"r\", encoding=\"}\minted@encoding\detokenize{\") if os.path.isfile(fname) else None;
- t = f.readlines() if f is not None else None;
- t_opt = t if t is not None else [];
- f.close() if f is not None else None;
- tmpfname = os.path.expanduser(os.path.expandvars(\"}\minted@tmpfname@esc.pyg\detokenize{\"));
- f = open(tmpfname, \"w\", encoding=\"}\minted@encoding\detokenize{\") if t is not None else None;
- fvstartnum = }\the\numexpr\FancyVerbStartNum\detokenize{;
- fvstopnum = }\the\numexpr\FancyVerbStopNum\detokenize{;
- s = max(0, fvstartnum-1);
- e = max(s, fvstopnum) if fvstopnum > 0 else len(t_opt);
- [f.write(textwrap.dedent(\"\".join(x))) for x in (t_opt[0:s], t_opt[s:e], t_opt[e:]) if x and t is not None];
- f.close() if t is not None else os.remove(tmpfname);"}%
- \ifminted@kpsewhich
- \ifwindows
- \space\@percentchar\detokenize{a}%
+ \ifx\minted@exec@error\relax
+ \minted@error{Minted executable failed during syntax highlighting
+ but returned no error message (see if "\MintedErrlogFilename" exists)}%
\else
- \space\detokenize{`}kpsewhich #1\space\detokenize{||} #1\detokenize{`}%
+ \expandafter\minted@exec@error
\fi
- \fi
- }%
- \ShellEscape{\minted@autogobblecmd}%
-}
-\newcommand{\minted@inputpyg}{%
- \VerbatimPygments{\PYG}{\PYG}%
- \ifthenelse{\boolean{minted@isinline}}%
- {\ifthenelse{\equal{\minted@get@opt{breaklines}{false}}{true}}%
- {\let\FV@BeginVBox\relax
- \let\FV@EndVBox\relax
- \def\FV@BProcessLine##1{\FancyVerbFormatLine{##1}}%
- \minted@inputpyg@inline}%
- {\minted@inputpyg@inline}}%
- {\minted@inputpyg@block}%
-}
-\def\minted@inputpyg@inline{%
- \ifthenelse{\equal{\minted@get@opt{bgcolor}{}}{}}%
- {\minted@input{\minted@outputdir\minted@infile}}%
- {\colorbox{\minted@get@opt{bgcolor}{}}{%
- \minted@input{\minted@outputdir\minted@infile}}}%
-}
-\def\minted@inputpyg@block{%
- \ifthenelse{\equal{\minted@get@opt{bgcolor}{}}{}}%
- {\minted@input{\minted@outputdir\minted@infile}}%
- {\begin{minted@colorbg}{\minted@get@opt{bgcolor}{}}%
- \minted@input{\minted@outputdir\minted@infile}%
- \end{minted@colorbg}}}
-\newcommand{\minted@langlinenoson}{%
- \ifcsname c@minted@lang\minted@lang\endcsname\else
- \newcounter{minted@lang\minted@lang}%
- \fi
- \setcounter{minted@FancyVerbLineTemp}{\value{FancyVerbLine}}%
- \setcounter{FancyVerbLine}{\value{minted@lang\minted@lang}}%
-}
-\newcommand{\minted@langlinenosoff}{%
- \setcounter{minted@lang\minted@lang}{\value{FancyVerbLine}}%
- \setcounter{FancyVerbLine}{\value{minted@FancyVerbLineTemp}}%
-}
-\ifbool{minted@langlinenos}{}{%
- \ifbool{minted@inputlanglinenos}{}{%
- \let\minted@langlinenoson\relax
- \let\minted@langlinenosoff\relax
- }
-}
-\ifbool{minted@inputlanglinenos}%
- {\def\minted@inputlanglinenoson{\minted@langlinenoson}%
- \def\minted@inputlanglinenosoff{\minted@langlinenosoff}}%
- {\let\minted@inputlanglinenoson\relax
- \let\minted@inputlanglinenosoff\relax}
+ \endgroup
+ \minted@highlight@fallback}}}
+\def\minted@highlight@fallback{%
+ \minted@insertplaceholder}
\newcommand{\setminted}[2][]{%
- \ifthenelse{\equal{#1}{}}%
- {\setkeys{minted@opt@g}{#2}}%
- {\minted@configlang{#1}%
- \setkeys{minted@opt@lang}{#2}}}
+ \ifstrempty{#1}%
+ {\pgfkeys{/minted/global/.cd,#2}}%
+ {\let\minted@tmplexer\minted@lexer
+ \edef\minted@lexer{#1}%
+ \pgfkeys{/minted/lexer/.cd,#2}%
+ \let\minted@lexer\minted@tmplexer}}
\newcommand{\setmintedinline}[2][]{%
- \ifthenelse{\equal{#1}{}}%
- {\setkeys{minted@opt@g@i}{#2}}%
- {\minted@configlang{#1}%
- \setkeys{minted@opt@lang@i}{#2}}}
-\setmintedinline[php]{startinline=true}
-\setminted{tabcolor=black}
-\setminted{stripnl=false}
+ \ifstrempty{#1}%
+ {\pgfkeys{/minted/globalinline/.cd,#2}}%
+ {\let\minted@tmplexer\minted@lexer
+ \edef\minted@lexer{#1}%
+ \pgfkeys{/minted/lexerinline/.cd,#2}%
+ \let\minted@lexer\minted@tmplexer}}
\newcommand{\usemintedstyle}[2][]{\setminted[#1]{style=#2}}
-\begingroup
-\catcode`\ =\active
-\catcode`\^^I=\active
-\gdef\minted@defwhitespace@retok{\def {\noexpand\FV@Space}\def^^I{\noexpand\FV@Tab}}%
-\endgroup
-\newcommand{\minted@writecmdcode}[1]{%
- \immediate\openout\minted@code\minted@jobname.pyg\relax
- \immediate\write\minted@code{\detokenize{#1}}%
- \immediate\closeout\minted@code}
\def\mintinline{%
\FVExtraRobustCommand\RobustMintInline\FVExtraUnexpandedReadStarOArgMArgBVArg}
\FVExtrapdfstringdefDisableCommands{%
@@ -1028,31 +1431,51 @@
\ifbool{FVExtraRobustCommandExpanded}%
{\@ifnextchar\bgroup
{\FVExtraReadVArg{\RobustMintInlineProcess{#1}{#2}}}%
- {\PackageError{minted}%
- {Inline delimiters must be paired curly braces in this context}%
- {Use curly braces as delimiters}}}%
+ {\minted@error{Inline delimiters must be paired curly braces in this context}}}%
{\FVExtraReadVArg{\RobustMintInlineProcess{#1}{#2}}}}
-\def\RobustMintInlineProcess#1#2#3{%
+\def\RobustMintInlineProcess@highlight#1#2#3{%
\begingroup
- \setboolean{minted@isinline}{true}%
- \minted@configlang{#2}%
- \setkeys{minted@opt@cmd}{#1}%
- \minted@fvset
- \RobustMintInlineProcess@i{#3}}
-\ifthenelse{\boolean{minted@draft}}%
- {\def\RobustMintInlineProcess@i#1{%
- \fvset{extra=true}%
- \Verb{#1}%
- \endgroup}}%
- {\def\RobustMintInlineProcess@i#1{%
- \FVExtraDetokenizeVArg{%
- \FVExtraRetokenizeVArg{\RobustMintInlineProcess@ii}{\FV@CatCodes}}{#1}}
- \def\RobustMintInlineProcess@ii#1{%
- \minted@writecmdcode{#1}%
- \let\Verbatim\VerbEnv
- \let\endVerbatim\endVerbEnv
- \expandafter\minted@pygmentize\expandafter{\minted@lang}%
- \endgroup}}
+ \booltrue{minted@isinline}%
+ \ifstrempty{#1}{}{\pgfkeys{/minted/cmd/.cd,#1}}%
+ \edef\minted@lexer{#2}%
+ \minted@usefvopts
+ \minted@usetexoptsnonpygments
+ \FVExtraDetokenizeVArg{%
+ \FVExtraRetokenizeVArg{\RobustMintInlineProcess@highlight@i}{\FV@CatCodes}}{#3}}
+\def\RobustMintInlineProcess@highlight@i#1{%
+ \expandafter\def\csname minted@tmpcodebufferline1\endcsname{#1}%
+ \setcounter{minted@tmpcodebufferlength}{1}%
+ \let\minted@highlight@fallback\RobustMintInlineProcess@highlight@fallback
+ \minted@highlight
+ \setcounter{minted@tmpcodebufferlength}{0}%
+ \endgroup}
+\def\RobustMintInlineProcess@highlight@fallback{%
+ \minted@useadditionalfvoptsnopy
+ \fvset{extra=true}%
+ \minted@codewrapper{%
+ \expandafter\let\expandafter\minted@tmp\csname minted@tmpcodebufferline1\endcsname
+ \expandafter\Verb\expandafter{\minted@tmp}}}
+\def\RobustMintInlineProcess@placeholder#1#2#3{%
+ \begingroup
+ \booltrue{minted@isinline}%
+ \minted@insertplaceholder
+ \endgroup}
+\def\RobustMintInlineProcess@verbatim#1#2#3{%
+ \begingroup
+ \booltrue{minted@isinline}%
+ \ifstrempty{#1}{}{\pgfkeys{/minted/cmd/.cd,#1}}%
+ \edef\minted@lexer{#2}%
+ \minted@usefvopts
+ \minted@useadditionalfvoptsnopy
+ \minted@usetexoptsnonpygments
+ \fvset{extra=true}%
+ \minted@codewrapper{\Verb{#3}}%
+ \endgroup}
+\ifbool{minted@placeholder}%
+ {\let\RobustMintInlineProcess\RobustMintInlineProcess@placeholder}%
+ {\ifbool{minted@verbatim}%
+ {\let\RobustMintInlineProcess\RobustMintInlineProcess@verbatim}%
+ {\let\RobustMintInlineProcess\RobustMintInlineProcess@highlight}}
\def\mint{%
\FVExtraRobustCommand\RobustMint\FVExtraUnexpandedReadStarOArgMArgBVArg}
\FVExtrapdfstringdefDisableCommands{%
@@ -1061,110 +1484,165 @@
\ifbool{FVExtraRobustCommandExpanded}%
{\@ifnextchar\bgroup
{\FVExtraReadVArg{\RobustMintProcess{#1}{#2}}}%
- {\PackageError{minted}%
- {Delimiters must be paired curly braces in this context}%
- {Use curly braces as delimiters}}}%
+ {\minted@error{Delimiters must be paired curly braces in this context}}}%
{\FVExtraReadVArg{\RobustMintProcess{#1}{#2}}}}
-\def\RobustMintProcess#1#2#3{%
+\def\RobustMintProcess@highlight#1#2#3{%
+ \begingroup
+ \ifstrempty{#1}{}{\pgfkeys{/minted/cmd/.cd,#1}}%
+ \edef\minted@lexer{#2}%
+ \minted@usefvopts
+ \minted@usetexoptsnonpygments
+ \FVExtraDetokenizeVArg{%
+ \FVExtraRetokenizeVArg{\RobustMintProcess@highlight@i}{\FV@CatCodes}}{#3}}
+\def\RobustMintProcess@highlight@i#1{%
+ \expandafter\def\csname minted@tmpcodebufferline1\endcsname{#1}%
+ \setcounter{minted@tmpcodebufferlength}{1}%
+ \let\minted@highlight@fallback\RobustMintProcess@highlight@fallback
+ \minted@highlight
+ \setcounter{minted@tmpcodebufferlength}{0}%
+ \endgroup}
+\def\RobustMintProcess@highlight@fallback{%
+ \minted@useadditionalfvoptsnopy
+ \minted@codewrapper{%
+ \VerbatimInsertBuffer[buffername=minted@tmpcodebuffer,insertenvname=\minted@envname]}}
+\def\RobustMintProcess@placeholder#1#2#3{%
+ \minted@insertplaceholder}
+\def\RobustMintProcess@verbatim#1#2#3{%
+ \begingroup
+ \ifstrempty{#1}{}{\pgfkeys{/minted/cmd/.cd,#1}}%
+ \edef\minted@lexer{#2}%
+ \minted@usefvopts
+ \minted@useadditionalfvoptsnopy
+ \minted@usetexoptsnonpygments
+ \FVExtraDetokenizeVArg{%
+ \FVExtraRetokenizeVArg{\RobustMintProcess@verbatim@i}{\FV@CatCodes}}{#3}}
+\def\RobustMintProcess@verbatim@i#1{%
+ \expandafter\def\csname minted@tmpcodebufferline1\endcsname{#1}%
+ \setcounter{minted@tmpcodebufferlength}{1}%
+ \minted@codewrapper{%
+ \VerbatimInsertBuffer[buffername=minted@tmpcodebuffer,insertenvname=\minted@envname]}%
+ \setcounter{minted@tmpcodebufferlength}{0}%
+ \endgroup}
+\ifbool{minted@placeholder}%
+ {\let\RobustMintProcess\RobustMintProcess@placeholder}%
+ {\ifbool{minted@verbatim}%
+ {\let\RobustMintProcess\RobustMintProcess@verbatim}%
+ {\let\RobustMintProcess\RobustMintProcess@highlight}}
+\newenvironment{minted}[2][]%
+ {\VerbatimEnvironment
+ \MintedBegin{#1}{#2}}%
+ {\MintedEnd}
+\def\MintedBegin@highlight#1#2{%
+ \ifstrempty{#1}{}{\pgfkeys{/minted/cmd/.cd,#1}}%
+ \edef\minted@lexer{#2}%
+ \minted@usefvopts
+ \minted@usetexoptsnonpygments
+ \begin{VerbatimBuffer}[buffername=minted@tmpcodebuffer,globalbuffer=true]}
+\def\MintedEnd@highlight{%
+ \end{VerbatimBuffer}%
+ \let\minted@highlight@fallback\MintedEnv@highlight@fallback
+ \minted@highlight
+ \VerbatimClearBuffer[buffername=minted@tmpcodebuffer]}
+\def\MintedEnv@highlight@fallback{%
+ \minted@useadditionalfvoptsnopy
+ \minted@codewrapper{%
+ \VerbatimInsertBuffer[buffername=minted@tmpcodebuffer,insertenvname=\minted@envname]}}
+\def\MintedBegin@placeholder#1#2{%
+ \begin{VerbatimBuffer}[buffername=minted@tmpcodebuffer]}
+\def\MintedEnd@placeholder{%
+ \end{VerbatimBuffer}%
+ \minted@insertplaceholder}
+\def\MintedBegin@verbatim#1#2{%
+ \ifstrempty{#1}{}{\pgfkeys{/minted/cmd/.cd,#1}}%
+ \edef\minted@lexer{#2}%
+ \minted@usefvopts
+ \minted@useadditionalfvoptsnopy
+ \minted@usetexoptsnonpygments
+ \begin{\minted@envname}}
+\def\MintedEnd@verbatim{%
+ \end{\minted@envname}}
+\ifbool{minted@placeholder}%
+ {\let\MintedBegin\MintedBegin@placeholder
+ \let\MintedEnd\MintedEnd@placeholder}%
+ {\ifbool{minted@verbatim}%
+ {\let\MintedBegin\MintedBegin@verbatim
+ \let\MintedEnd\MintedEnd@verbatim}%
+ {\let\MintedBegin\MintedBegin@highlight
+ \let\MintedEnd\MintedEnd@highlight}}
+\def\minted@readinputmintedargs#1#{%
+ \minted@readinputmintedargs@i{#1}}
+\def\minted@readinputmintedargs@i#1#2#3{%
+ \FVExtraAlwaysUnexpanded{\minted@readinputmintedargs#1{#2}{#3}}}
+\FVExtrapdfstringdefDisableCommands{%
+ \makeatletter
+ \def\minted@readinputmintedargs@i#1#2#3{%
+ \detokenize{<input from file "}#3\detokenize{">}}%
+ \makeatother}
+\def\inputminted{%
+ \FVExtraRobustCommand\RobustInputMinted\minted@readinputmintedargs}
+\FVExtrapdfstringdefDisableCommands{%
+ \def\RobustInputMinted{}}
+\newrobustcmd{\RobustInputMinted}[3][]{%
+ \RobustInputMintedProcess{#1}{#2}{#3}}
+\def\RobustInputMintedProcess@highlight#1#2#3{%
\begingroup
- \minted@configlang{#2}%
- \setkeys{minted@opt@cmd}{#1}%
- \minted@fvset
- \RobustMintProcess@i{#3}}
+ \ifstrempty{#1}{}{\pgfkeys{/minted/cmd/.cd,#1}}%
+ \edef\minted@lexer{#2}%
+ \edef\minted@inputfilepath{#3}%
+ \minted@usefvopts
+ \minted@usetexoptsnonpygments
+ \let\minted@highlight@fallback\RobustInputMintedProcess@highlight@fallback
+ \minted@highlightinputfile
+ \endgroup}
+\def\RobustInputMintedProcess@highlight@fallback{%
+ \minted@useadditionalfvoptsnopy
+ \minted@codewrapper{%
+ \csname\minted@envname Input\endcsname{\minted@inputfilepath}}}
+\def\RobustInputMintedProcess@placeholder#1#2#3{%
+ \minted@insertplaceholder}
+\def\RobustInputMintedProcess@verbatim#1#2#3{%
+ \begingroup
+ \ifstrempty{#1}{}{\pgfkeys{/minted/cmd/.cd,#1}}%
+ \edef\minted@lexer{#2}%
+ \edef\minted@inputfilepath{#3}%
+ \minted@usefvopts
+ \minted@useadditionalfvoptsnopy
+ \minted@usetexoptsnonpygments
+ \minted@codewrapper{%
+ \csname\minted@envname Input\endcsname{\minted@inputfilepath}}%
+ \endgroup}
+\ifbool{minted@placeholder}%
+ {\let\RobustInputMintedProcess\RobustInputMintedProcess@placeholder}%
+ {\ifbool{minted@verbatim}%
+ {\let\RobustInputMintedProcess\RobustInputMintedProcess@verbatim}%
+ {\let\RobustInputMintedProcess\RobustInputMintedProcess@highlight}}
+\newcommand{\newminted}[3][]{%
+ \ifstrempty{#1}%
+ {\newminted@i{#2code}{#2}{#3}}%
+ {\newminted@i{#1}{#2}{#3}}}
\begingroup
\catcode`\^^M=\active%
-\catcode`\<=1%
-\catcode`\>=2%
-\catcode`\{=12%
-\catcode`\}=12%
-\catcode`\!=0%
-\catcode`\\=12%
-!ifthenelse<!boolean<minted@draft>>%
- <!gdef!RobustMintProcess@i#1<%
- !FVExtraDetokenizeVArg<%
- !FVExtraRetokenizeVArg<!RobustMintProcess@ii><!FV@CatCodes>><#1>>%
- !gdef!RobustMintProcess@ii#1<%
- !minted@langlinenoson%
- !scantokens<%
- \begin{Verbatim}
- #1
- \end{Verbatim}
- !noexpand>%
- !minted@langlinenosoff%
- !endgroup!@doendpe>>%
- <!gdef!RobustMintProcess@i#1<%
- !FVExtraDetokenizeVArg<%
- !FVExtraRetokenizeVArg<!RobustMintProcess@ii><!FV@CatCodes>><#1>>%
- !gdef!RobustMintProcess@ii#1<%
- !minted@writecmdcode<#1>%
- !minted@langlinenoson%
- !expandafter!minted@pygmentize!expandafter<!minted@lang>%
- !minted@langlinenosoff%
- !endgroup!@doendpe>>%
-!endgroup
-\ifthenelse{\boolean{minted@draft}}%
- {\newenvironment{minted}[2][]
- {\VerbatimEnvironment
- \minted@configlang{#2}%
- \setkeys{minted@opt@cmd}{#1}%
- \minted@fvset
- \minted@langlinenoson
- \begin{Verbatim}}%
- {\end{Verbatim}%
- \minted@langlinenosoff}}%
- {\newenvironment{minted}[2][]
- {\VerbatimEnvironment
- \let\FVB@VerbatimOut\minted@FVB@VerbatimOut
- \let\FVE@VerbatimOut\minted@FVE@VerbatimOut
- \minted@configlang{#2}%
- \setkeys{minted@opt@cmd}{#1}%
- \minted@fvset
- \begin{VerbatimOut}[codes={\catcode`\^^I=12},firstline,lastline]{\minted@jobname.pyg}}%
- {\end{VerbatimOut}%
- \minted@langlinenoson
- \expandafter\minted@pygmentize\expandafter{\minted@lang}%
- \minted@langlinenosoff}}
-\ifthenelse{\boolean{minted@draft}}%
- {\newcommand{\inputminted}[3][]{%
- \begingroup
- \minted@configlang{#2}%
- \setkeys{minted@opt@cmd}{#1}%
- \minted@fvset
- \minted@inputlanglinenoson
- \VerbatimInput{#3}%
- \minted@inputlanglinenosoff
- \endgroup}}%
- {\newcommand{\inputminted}[3][]{%
- \begingroup
- \minted@configlang{#2}%
- \setkeys{minted@opt@cmd}{#1}%
- \minted@fvset
- \minted@inputlanglinenoson
- \minted@pygmentize[#3]{#2}%
- \minted@inputlanglinenosoff
- \endgroup}}
-\newcommand{\newminted}[3][]{
- \ifthenelse{\equal{#1}{}}
- {\def\minted@envname{#2code}}
- {\def\minted@envname{#1}}
- \newenvironment{\minted@envname}
- {\VerbatimEnvironment
- \begin{minted}[#3]{#2}}
- {\end{minted}}
- \newenvironment{\minted@envname *}[1]
- {\VerbatimEnvironment\begin{minted}[#3,##1]{#2}}
- {\end{minted}}}
+\gdef\newminted@i#1#2#3{%
+ \expandafter\def\csname#1@i\endcsname##1{%
+ \begin{minted}[#3,##1]{#2}^^M}%
+ \newenvironment{#1}%
+ {\VerbatimEnvironment%
+ \FVExtraReadOArgBeforeVEnv{\csname#1@i\endcsname}}%
+ {\end{minted}}%
+ \newenvironment{#1*}[1]%
+ {\VerbatimEnvironment%
+ \begin{minted}[#3,##1]{#2}}%
+ {\end{minted}}}%
+\endgroup
\newcommand{\newmint}[3][]{%
- \if\relax\detokenize{#1}\relax
- \def\minted@shortname{#2}%
- \else
- \def\minted@shortname{#1}%
- \fi
- \expandafter\newmint@i\expandafter{\minted@shortname}{#2}{#3}}
+ \ifstrempty{#1}%
+ {\edef\minted@tmp{#2}}%
+ {\edef\minted@tmp{#1}}
+ \expandafter\newmint@i\expandafter{\minted@tmp}{#2}{#3}}
\def\newmint@i#1#2#3{%
\expandafter\newcommand\csname#1\endcsname{%
\expandafter\FVExtraRobustCommand\csname RobustNewMint#1\endcsname
- \FVExtraUnexpandedReadStarOArgBVArg}%
+ \FVExtraUnexpandedReadStarOArgBVArg}%
\FVExtrapdfstringdefDisableCommands{%
\expandafter\def\csname RobustNewMint#1\endcsname{}}%
\expandafter\newrobustcmd\csname RobustNewMint#1\endcsname{%
@@ -1173,29 +1651,41 @@
\ifbool{FVExtraRobustCommandExpanded}%
{\@ifnextchar\bgroup
{\FVExtraReadVArg{\csname RobustNewMint#1@ii\endcsname{##1}}}%
- {\PackageError{minted}%
- {Delimiters must be paired curly braces in this context}%
- {Use curly braces as delimiters}}}%
+ {\minted@error{Delimiters must be paired curly braces in this context}}}%
{\FVExtraReadVArg{\csname RobustNewMint#1@ii\endcsname{##1}}}}
\expandafter\def\csname RobustNewMint#1@ii\endcsname##1##2{%
\RobustMintProcess{#3,##1}{#2}{##2}}}
-\newcommand{\newmintedfile}[3][]{
- \ifthenelse{\equal{#1}{}}
- {\def\minted@shortname{#2file}}
- {\def\minted@shortname{#1}}
- \expandafter\newcommand\csname\minted@shortname\endcsname[2][]{
- \inputminted[#3,##1]{#2}{##2}}}
+\def\minted@readnewmintedfileargs#1#{%
+ \minted@readnewmintedfileargs@i{#1}}
+\def\minted@readnewmintedfileargs@i#1#2{%
+ \FVExtraAlwaysUnexpanded{\minted@readnewmintedfileargs#1{#2}}}
+\FVExtrapdfstringdefDisableCommands{%
+ \makeatletter
+ \def\minted@readnewmintedfileargs@i#1#2{%
+ \detokenize{<input from file "}#2\detokenize{">}}%
+ \makeatother}
+\newcommand{\newmintedfile}[3][]{%
+ \ifstrempty{#1}%
+ {\edef\minted@tmp{#2file}}%
+ {\edef\minted@tmp{#1}}%
+ \expandafter\newmintedfile@i\expandafter{\minted@tmp}{#2}{#3}}
+\def\newmintedfile@i#1#2#3{%
+ \expandafter\newcommand\csname#1\endcsname{%
+ \expandafter\FVExtraRobustCommand\csname RobustNewMintedFile#1\endcsname
+ \minted@readnewmintedfileargs}%
+ \FVExtrapdfstringdefDisableCommands{%
+ \expandafter\def\csname RobustNewMintedFile#1\endcsname{}}%
+ \expandafter\newrobustcmd\csname RobustNewMintedFile#1\endcsname[2][]{%
+ \RobustInputMintedProcess{#3,##1}{#2}{##2}}}
\newcommand{\newmintinline}[3][]{%
- \if\relax\detokenize{#1}\relax
- \def\minted@shortname{#2inline}%
- \else
- \def\minted@shortname{#1}%
- \fi
- \expandafter\newmintinline@i\expandafter{\minted@shortname}{#2}{#3}}
+ \ifstrempty{#1}%
+ {\edef\minted@tmp{#2inline}}%
+ {\edef\minted@tmp{#1}}%
+ \expandafter\newmintinline@i\expandafter{\minted@tmp}{#2}{#3}}
\def\newmintinline@i#1#2#3{%
\expandafter\newcommand\csname#1\endcsname{%
\expandafter\FVExtraRobustCommand\csname RobustNewMintInline#1\endcsname
- \FVExtraUnexpandedReadStarOArgBVArg}%
+ \FVExtraUnexpandedReadStarOArgBVArg}%
\FVExtrapdfstringdefDisableCommands{%
\expandafter\def\csname RobustNewMintInline#1\endcsname{}}%
\expandafter\newrobustcmd\csname RobustNewMintInline#1\endcsname{%
@@ -1204,71 +1694,25 @@
\ifbool{FVExtraRobustCommandExpanded}%
{\@ifnextchar\bgroup
{\FVExtraReadVArg{\csname RobustNewMintInline#1@ii\endcsname{##1}}}%
- {\PackageError{minted}%
- {Inline delimiters must be paired curly braces in this context}%
- {Use curly braces as delimiters}}}%
+ {\minted@error{Inline delimiters must be paired curly braces in this context}}}%
{\FVExtraReadVArg{\csname RobustNewMintInline#1@ii\endcsname{##1}}}}
\expandafter\def\csname RobustNewMintInline#1@ii\endcsname##1##2{%
\RobustMintInlineProcess{#3,##1}{#2}{##2}}}
-\ifthenelse{\boolean{minted@newfloat}}%
+\ifbool{minted@newfloat}%
{\@ifundefined{minted@float@within}%
- {\DeclareFloatingEnvironment[fileext=lol,placement=tbp]{listing}}%
- {\def\minted@tmp#1{%
- \DeclareFloatingEnvironment[fileext=lol,placement=tbp, within=#1]{listing}}%
- \expandafter\minted@tmp\expandafter{\minted@float@within}}}%
+ {\DeclareFloatingEnvironment[fileext=lol,placement=tbp]{listing}}%
+ {\def\minted@tmp#1{%
+ \DeclareFloatingEnvironment[fileext=lol,placement=tbp,within=#1]{listing}}%
+ \expandafter\minted@tmp\expandafter{\minted@float@within}}}%
{\@ifundefined{minted@float@within}%
- {\newfloat{listing}{tbp}{lol}}%
- {\newfloat{listing}{tbp}{lol}[\minted@float@within]}}
+ {\newfloat{listing}{tbp}{lol}}%
+ {\newfloat{listing}{tbp}{lol}[\minted@float@within]}}
\ifminted@newfloat\else
\newcommand{\listingscaption}{Listing}
\floatname{listing}{\listingscaption}
\newcommand{\listoflistingscaption}{List of Listings}
\providecommand{\listoflistings}{\listof{listing}{\listoflistingscaption}}
\fi
-\AtEndOfPackage{%
- \ifthenelse{\boolean{minted@draft}}%
- {}%
- {%
- \ifthenelse{\boolean{minted@frozencache}}{}{%
- \ifnum\pdf@shellescape=1\relax\else
- \PackageError{minted}%
- {You must invoke LaTeX with the
- -shell-escape flag}%
- {Pass the -shell-escape flag to LaTeX. Refer to the minted.sty
- documentation for more information.}%
- \fi}%
- }%
-}
-\AtEndPreamble{%
- \ifthenelse{\boolean{minted@draft}}%
- {}%
- {%
- \ifthenelse{\boolean{minted@frozencache}}{}{%
- \TestAppExists{\MintedPygmentize}%
- \ifAppExists\else
- \PackageError{minted}%
- {You must have `pygmentize' installed
- to use this package}%
- {Refer to the installation instructions in the minted
- documentation for more information.}%
- \fi}%
- }%
-}
-\AfterEndDocument{%
- \ifthenelse{\boolean{minted@draft}}%
- {}%
- {\ifthenelse{\boolean{minted@frozencache}}%
- {}
- {\ifx\XeTeXinterchartoks\minted@undefined
- \else
- \DeleteFile[\minted@outputdir]{\minted@jobname.mintedcmd}%
- \DeleteFile[\minted@outputdir]{\minted@jobname.mintedmd5}%
- \fi
- \DeleteFile[\minted@outputdir]{\minted@jobname.pyg}%
- \DeleteFile[\minted@outputdir]{\minted@jobname.out.pyg}%
- }%
- }%
-}
\endinput
%%
%% End of file `minted.sty'.
diff --git a/Master/texmf-dist/tex/latex/minted/minted2.sty b/Master/texmf-dist/tex/latex/minted/minted2.sty
new file mode 100644
index 00000000000..e2431e47143
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/minted/minted2.sty
@@ -0,0 +1,1285 @@
+%%
+%% This is file `minted2.sty'.
+%%
+%% Copyright 2013--2024 Geoffrey M. Poore
+%% Copyright 2010--2011 Konrad Rudolph
+%%
+%% 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.
+%%
+%% Additionally, the project may be distributed under the terms of the new BSD
+%% license.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Geoffrey Poore.
+%%
+%% This work consists of the file minted2.sty.
+\NeedsTeXFormat{LaTeX2e}
+%%%% Begin minted2 modification
+%% \ProvidesPackage{minted}
+%% [2023/12/18 v2.9 Yet another Pygments shim for LaTeX]
+\ProvidesPackage{minted2}
+ [2024/05/09 v2.9 Yet another Pygments shim for LaTeX]
+\IfPackageLoadedTF{minted}%
+ {\PackageError{minted2}%
+ {Packages minted and minted2 cannot be loaded at the same time}{}%
+ \endinput}%
+ {}
+\@namedef{ver@minted.sty}{2023/12/18 v2.9 Yet another Pygments shim for LaTeX}
+\expandafter\let\expandafter\minted@tmp\csname opt@minted2.sty\endcsname
+\expandafter\let\csname opt@minted.sty\endcsname\minted@tmp
+\let\minted@tmp\relax
+%%%% End minted2 modification
+\RequirePackage{keyval}
+\RequirePackage{kvoptions}
+%%%% Begin minted2 modification
+\SetupKeyvalOptions{family=minted, prefix=minted@}
+%%%% End minted2 modification
+\RequirePackage{fvextra}[2022/11/30]
+\RequirePackage{ifthen}
+\IfFileExists{shellesc.sty}
+ {\RequirePackage{shellesc}
+ \@ifpackagelater{shellesc}{2016/04/29}
+ {}
+ {\protected\def\ShellEscape{\immediate\write18 }}}
+ {\protected\def\ShellEscape{\immediate\write18 }}
+\RequirePackage{ifplatform}
+\RequirePackage{pdftexcmds}
+\RequirePackage{etoolbox}
+\RequirePackage{xstring}
+\RequirePackage{lineno}
+\RequirePackage{framed}
+\RequirePackage{catchfile}
+\AtEndPreamble{%
+ \@ifpackageloaded{color}{}{%
+ \@ifpackageloaded{xcolor}{}{\RequirePackage{xcolor}}}%
+}
+\DeclareVoidOption{chapter}{\def\minted@float@within{chapter}}
+\DeclareVoidOption{section}{\def\minted@float@within{section}}
+\DeclareBoolOption{newfloat}
+\DeclareBoolOption[true]{cache}
+\StrSubstitute{\jobname}{ }{_}[\minted@jobname]
+\StrSubstitute{\minted@jobname}{*}{_}[\minted@jobname]
+\StrSubstitute{\minted@jobname}{"}{}[\minted@jobname]
+\StrSubstitute{\minted@jobname}{'}{_}[\minted@jobname]
+\newcommand{\minted@cachedir}{\detokenize{_}minted-\minted@jobname}
+\let\minted@cachedir@windows\minted@cachedir
+\define@key{minted}{cachedir}{%
+ \@namedef{minted@cachedir}{#1}%
+ \StrSubstitute{\minted@cachedir}{/}{\@backslashchar}[\minted@cachedir@windows]}
+\DeclareBoolOption{finalizecache}
+\DeclareBoolOption{frozencache}
+\let\minted@outputdir\@empty
+\let\minted@outputdir@windows\@empty
+\define@key{minted}{outputdir}{%
+ \@namedef{minted@outputdir}{#1/}%
+ \StrSubstitute{\minted@outputdir}{/}%
+ {\@backslashchar}[\minted@outputdir@windows]}
+\DeclareBoolOption{inputlanglinenos}
+\DeclareBoolOption{kpsewhich}
+\DeclareBoolOption{langlinenos}
+\DeclareBoolOption{draft}
+\DeclareComplementaryOption{final}{draft}
+\ProcessKeyvalOptions*
+\ifthenelse{\boolean{minted@newfloat}}{\RequirePackage{newfloat}}{\RequirePackage{float}}
+\ifcsname tikzifexternalizing\endcsname
+ \tikzifexternalizing{\minted@drafttrue\minted@cachefalse}{}
+\else
+ \ifcsname tikzexternalrealjob\endcsname
+ \minted@drafttrue
+ \minted@cachefalse
+ \else
+ \fi
+\fi
+\ifthenelse{\boolean{minted@finalizecache}}%
+ {\ifthenelse{\boolean{minted@frozencache}}%
+ {\PackageError{minted}%
+ {Options "finalizecache" and "frozencache" are not compatible}%
+ {Options "finalizecache" and "frozencache" are not compatible}}%
+ {}}%
+ {}
+\ifthenelse{\boolean{minted@cache}}%
+ {\ifthenelse{\boolean{minted@frozencache}}%
+ {}%
+ {\AtEndOfPackage{\ProvideDirectory{\minted@outputdir\minted@cachedir}}}}%
+ {}
+\newcommand{\minted@input}[1]{%
+ \IfFileExists{#1}%
+ {\input{#1}}%
+ {\PackageError{minted}{Missing Pygments output; \string\inputminted\space
+ was^^Jprobably given a file that does not exist--otherwise, you may need
+ ^^Jthe outputdir package option, or may be using an incompatible build
+ tool,^^Jor may be using frozencache with a missing file}%
+ {This could be caused by using -output-directory or -aux-directory
+ ^^Jwithout setting minted's outputdir, or by using a build tool that
+ ^^Jchanges paths in ways minted cannot detect,
+ ^^Jor using frozencache with a missing file.}}%
+}
+\newcommand{\minted@infile}{\minted@jobname.out.pyg}
+\newcommand{\minted@cachelist}{}
+\newcommand{\minted@addcachefile}[1]{%
+ \expandafter\long\expandafter\gdef\expandafter\minted@cachelist\expandafter{%
+ \minted@cachelist,^^J%
+ \space\space#1}%
+ \expandafter\gdef\csname minted@cached@#1\endcsname{}%
+}
+\newcommand{\minted@savecachelist}{%
+ \ifdefempty{\minted@cachelist}{}{%
+ \immediate\write\@mainaux{%
+ \string\gdef\string\minted@oldcachelist\string{%
+ \minted@cachelist\string}}%
+ }%
+}
+\newcommand{\minted@cleancache}{%
+ \ifcsname minted@oldcachelist\endcsname
+ \def\do##1{%
+ \ifthenelse{\equal{##1}{}}{}{%
+ \ifcsname minted@cached@##1\endcsname\else
+ \DeleteFile[\minted@outputdir\minted@cachedir]{##1}%
+ \fi
+ }%
+ }%
+ \expandafter\docsvlist\expandafter{\minted@oldcachelist}%
+ \else
+ \fi
+}
+\ifthenelse{\boolean{minted@draft}}%
+ {\AtEndDocument{%
+ \ifcsname minted@oldcachelist\endcsname
+ \StrSubstitute{\minted@oldcachelist}{,}{,^^J }[\minted@cachelist]
+ \minted@savecachelist
+ \fi}}%
+ {\ifthenelse{\boolean{minted@frozencache}}%
+ {\AtEndDocument{%
+ \ifcsname minted@oldcachelist\endcsname
+ \StrSubstitute{\minted@oldcachelist}{,}{,^^J }[\minted@cachelist]
+ \minted@savecachelist
+ \fi}}%
+ {\AtEndDocument{%
+ \minted@savecachelist
+ \minted@cleancache}}}%
+\ifwindows
+ \providecommand{\DeleteFile}[2][]{%
+ \ifthenelse{\equal{#1}{}}%
+ {\IfFileExists{#2}{\ShellEscape{del #2}}{}}%
+ {\IfFileExists{#1/#2}{%
+ \StrSubstitute{#1}{/}{\@backslashchar}[\minted@windir]
+ \ShellEscape{del \minted@windir\@backslashchar #2}}{}}}
+\else
+ \providecommand{\DeleteFile}[2][]{%
+ \ifthenelse{\equal{#1}{}}%
+ {\IfFileExists{#2}{\ShellEscape{rm #2}}{}}%
+ {\IfFileExists{#1/#2}{\ShellEscape{rm #1/#2}}{}}}
+\fi
+\ifwindows
+ \newcommand{\ProvideDirectory}[1]{%
+ \StrSubstitute{#1}{/}{\@backslashchar}[\minted@windir]
+ \ShellEscape{if not exist \minted@windir\space mkdir \minted@windir}}
+\else
+ \newcommand{\ProvideDirectory}[1]{%
+ \ShellEscape{mkdir -p #1}}
+\fi
+\newboolean{AppExists}
+\newread\minted@appexistsfile
+\newcommand{\TestAppExists}[1]{%
+ \ifwindows
+ \DeleteFile{\minted@jobname.aex}%
+ \ShellEscape{for \string^\@percentchar i in (#1.exe #1.bat #1.cmd)
+ do set > \minted@jobname.aex <nul: /p
+ x=\string^\@percentchar \string~$PATH:i>> \minted@jobname.aex}%
+ %$ <- balance syntax highlighting
+ \immediate\openin\minted@appexistsfile\minted@jobname.aex
+ \expandafter\def\expandafter\@tmp@cr\expandafter{\the\endlinechar}%
+ \endlinechar=-1\relax
+ \readline\minted@appexistsfile to \minted@apppathifexists
+ \endlinechar=\@tmp@cr
+ \ifthenelse{\equal{\minted@apppathifexists}{}}%
+ {\AppExistsfalse}%
+ {\AppExiststrue}%
+ \immediate\closein\minted@appexistsfile
+ \DeleteFile{\minted@jobname.aex}%
+ \else
+ \ShellEscape{command -v #1 && touch \minted@jobname.aex}%
+ \IfFileExists{\minted@jobname.aex}%
+ {\AppExiststrue
+ \DeleteFile{\minted@jobname.aex}}%
+ {\AppExistsfalse}%
+ \fi
+}
+\newcommand{\minted@optlistcl@g}{}
+\newcommand{\minted@optlistcl@g@i}{}
+\let\minted@lang\@empty
+\newcommand{\minted@optlistcl@lang}{}
+\newcommand{\minted@optlistcl@lang@i}{}
+\newcommand{\minted@optlistcl@cmd}{}
+\newcommand{\minted@optlistfv@g}{}
+\newcommand{\minted@optlistfv@g@i}{}
+\newcommand{\minted@optlistfv@lang}{}
+\newcommand{\minted@optlistfv@lang@i}{}
+\newcommand{\minted@optlistfv@cmd}{}
+\newcommand{\minted@configlang}[1]{%
+ \def\minted@lang{#1}%
+ \ifcsname minted@optlistcl@lang\minted@lang\endcsname\else
+ \expandafter\gdef\csname minted@optlistcl@lang\minted@lang\endcsname{}%
+ \fi
+ \ifcsname minted@optlistcl@lang\minted@lang @i\endcsname\else
+ \expandafter\gdef\csname minted@optlistcl@lang\minted@lang @i\endcsname{}%
+ \fi
+ \ifcsname minted@optlistfv@lang\minted@lang\endcsname\else
+ \expandafter\gdef\csname minted@optlistfv@lang\minted@lang\endcsname{}%
+ \fi
+ \ifcsname minted@optlistfv@lang\minted@lang @i\endcsname\else
+ \expandafter\gdef\csname minted@optlistfv@lang\minted@lang @i\endcsname{}%
+ \fi
+}
+\ifwindows
+ \newcommand{\minted@optlistcl@quote}[2]{%
+ \detokenize{#1="#2"}}
+\else
+ \newcommand{\minted@optlistcl@quote}[2]{%
+ \detokenize{#1='#2'}}
+\fi
+\newcommand{\minted@addto@optlistcl}[3]{%
+ \expandafter\def\expandafter#1\expandafter{#1%
+ \minted@optlistcl@quote{#2}{#3}\space}}
+\newcommand{\minted@addto@optlistcl@lang}[3]{%
+ \expandafter\let\expandafter\minted@tmp\csname #1\endcsname
+ \expandafter\def\expandafter\minted@tmp\expandafter{\minted@tmp%
+ \minted@optlistcl@quote{#2}{#3}\space}%
+ \expandafter\let\csname #1\endcsname\minted@tmp}
+\newcommand{\minted@def@optcl}[4][]{%
+ \ifthenelse{\equal{#1}{}}%
+ {\define@key{minted@opt@g}{#2}{%
+ \minted@addto@optlistcl{\minted@optlistcl@g}{#3}{#4}%
+ \@namedef{minted@opt@g:#2}{#4}}%
+ \define@key{minted@opt@g@i}{#2}{%
+ \minted@addto@optlistcl{\minted@optlistcl@g@i}{#3}{#4}%
+ \@namedef{minted@opt@g@i:#2}{#4}}%
+ \define@key{minted@opt@lang}{#2}{%
+ \minted@addto@optlistcl@lang{minted@optlistcl@lang\minted@lang}{#3}{#4}%
+ \@namedef{minted@opt@lang\minted@lang:#2}{#4}}%
+ \define@key{minted@opt@lang@i}{#2}{%
+ \minted@addto@optlistcl@lang{%
+ minted@optlistcl@lang\minted@lang @i}{#3}{#4}%
+ \@namedef{minted@opt@lang\minted@lang @i:#2}{#4}}%
+ \define@key{minted@opt@cmd}{#2}{%
+ \minted@addto@optlistcl{\minted@optlistcl@cmd}{#3}{#4}%
+ \@namedef{minted@opt@cmd:#2}{#4}}}%
+ {\define@key{minted@opt@g}{#2}[#1]{%
+ \minted@addto@optlistcl{\minted@optlistcl@g}{#3}{#4}%
+ \@namedef{minted@opt@g:#2}{#4}}%
+ \define@key{minted@opt@g@i}{#2}[#1]{%
+ \minted@addto@optlistcl{\minted@optlistcl@g@i}{#3}{#4}%
+ \@namedef{minted@opt@g@i:#2}{#4}}%
+ \define@key{minted@opt@lang}{#2}[#1]{%
+ \minted@addto@optlistcl@lang{minted@optlistcl@lang\minted@lang}{#3}{#4}%
+ \@namedef{minted@opt@lang\minted@lang:#2}{#4}}%
+ \define@key{minted@opt@lang@i}{#2}[#1]{%
+ \minted@addto@optlistcl@lang{%
+ minted@optlistcl@lang\minted@lang @i}{#3}{#4}%
+ \@namedef{minted@opt@lang\minted@lang @i:#2}{#4}}%
+ \define@key{minted@opt@cmd}{#2}[#1]{%
+ \minted@addto@optlistcl{\minted@optlistcl@cmd}{#3}{#4}%
+ \@namedef{minted@opt@cmd:#2}{#4}}}%
+}
+\begingroup
+\catcode`\!=0
+!catcode`!\=12
+!gdef!minted@escape#1{%
+ !expandafter!minted@escape@i!detokenize{#1}\!FV@Sentinel}
+!gdef!minted@escape@i#1\#2!FV@Sentinel{%
+ !if!relax!detokenize{#2}!relax
+ !expandafter!@firstoftwo
+ !else
+ !expandafter!@secondoftwo
+ !fi
+ {#1!minted@escape@end\#2!FV@Sentinel}
+ {#1!minted@escape@esc\#2!FV@Sentinel}}
+!gdef!minted@escape@end#1!FV@Sentinel{}
+!gdef!minted@escape@esc\#1#2!FV@Sentinel{%
+ #1!minted@escape@i#2!FV@Sentinel}
+!endgroup
+\newcommand{\minted@addto@optlistcl@e}[3]{%
+ \edef\minted@tmp{\minted@escape{#3}}%
+ \expandafter\minted@addto@optlistcl@e@i\expandafter{\minted@tmp}{#1}{#2}}
+\def\minted@addto@optlistcl@e@i#1#2#3{%
+ \expandafter\def\expandafter#2\expandafter{#2\minted@optlistcl@quote{#3}{#1}\space}}
+\newcommand{\minted@addto@optlistcl@lang@e}[3]{%
+ \edef\minted@tmp{\minted@escape{#3}}%
+ \expandafter\minted@addto@optlistcl@lang@e@i\expandafter{\minted@tmp}{#1}{#2}}
+\def\minted@addto@optlistcl@lang@e@i#1#2#3{%
+ \expandafter\let\expandafter\minted@tmp\csname #2\endcsname
+ \expandafter\def\expandafter\minted@tmp\expandafter{\minted@tmp\minted@optlistcl@quote{#3}{#1}\space}%
+ \expandafter\let\csname #2\endcsname\minted@tmp}
+\newcommand{\minted@def@optcl@e}[4][]{%
+ \ifthenelse{\equal{#1}{}}%
+ {\define@key{minted@opt@g}{#2}{%
+ \minted@addto@optlistcl@e{\minted@optlistcl@g}{#3}{#4}%
+ \@namedef{minted@opt@g:#2}{#4}}%
+ \define@key{minted@opt@g@i}{#2}{%
+ \minted@addto@optlistcl@e{\minted@optlistcl@g@i}{#3}{#4}%
+ \@namedef{minted@opt@g@i:#2}{#4}}%
+ \define@key{minted@opt@lang}{#2}{%
+ \minted@addto@optlistcl@lang@e{minted@optlistcl@lang\minted@lang}{#3}{#4}%
+ \@namedef{minted@opt@lang\minted@lang:#2}{#4}}%
+ \define@key{minted@opt@lang@i}{#2}{%
+ \minted@addto@optlistcl@lang@e{%
+ minted@optlistcl@lang\minted@lang @i}{#3}{#4}%
+ \@namedef{minted@opt@lang\minted@lang @i:#2}{#4}}%
+ \define@key{minted@opt@cmd}{#2}{%
+ \minted@addto@optlistcl@e{\minted@optlistcl@cmd}{#3}{#4}%
+ \@namedef{minted@opt@cmd:#2}{#4}}}%
+ {\define@key{minted@opt@g}{#2}[#1]{%
+ \minted@addto@optlistcl@e{\minted@optlistcl@g}{#3}{#4}%
+ \@namedef{minted@opt@g:#2}{#4}}%
+ \define@key{minted@opt@g@i}{#2}[#1]{%
+ \minted@addto@optlistcl@e{\minted@optlistcl@g@i}{#3}{#4}%
+ \@namedef{minted@opt@g@i:#2}{#4}}%
+ \define@key{minted@opt@lang}{#2}[#1]{%
+ \minted@addto@optlistcl@lang@e{minted@optlistcl@lang\minted@lang}{#3}{#4}%
+ \@namedef{minted@opt@lang\minted@lang:#2}{#4}}%
+ \define@key{minted@opt@lang@i}{#2}[#1]{%
+ \minted@addto@optlistcl@lang@e{%
+ minted@optlistcl@lang\minted@lang @i}{#3}{#4}%
+ \@namedef{minted@opt@lang\minted@lang @i:#2}{#4}}%
+ \define@key{minted@opt@cmd}{#2}[#1]{%
+ \minted@addto@optlistcl@e{\minted@optlistcl@cmd}{#3}{#4}%
+ \@namedef{minted@opt@cmd:#2}{#4}}}%
+}
+\newcommand{\minted@def@optcl@switch}[2]{%
+ \define@booleankey{minted@opt@g}{#1}%
+ {\minted@addto@optlistcl{\minted@optlistcl@g}{#2}{True}%
+ \@namedef{minted@opt@g:#1}{true}}
+ {\minted@addto@optlistcl{\minted@optlistcl@g}{#2}{False}%
+ \@namedef{minted@opt@g:#1}{false}}
+ \define@booleankey{minted@opt@g@i}{#1}%
+ {\minted@addto@optlistcl{\minted@optlistcl@g@i}{#2}{True}%
+ \@namedef{minted@opt@g@i:#1}{true}}
+ {\minted@addto@optlistcl{\minted@optlistcl@g@i}{#2}{False}%
+ \@namedef{minted@opt@g@i:#1}{false}}
+ \define@booleankey{minted@opt@lang}{#1}%
+ {\minted@addto@optlistcl@lang{minted@optlistcl@lang\minted@lang}{#2}{True}%
+ \@namedef{minted@opt@lang\minted@lang:#1}{true}}
+ {\minted@addto@optlistcl@lang{minted@optlistcl@lang\minted@lang}{#2}{False}%
+ \@namedef{minted@opt@lang\minted@lang:#1}{false}}
+ \define@booleankey{minted@opt@lang@i}{#1}%
+ {\minted@addto@optlistcl@lang{minted@optlistcl@lang\minted@lang @i}{#2}{True}%
+ \@namedef{minted@opt@lang\minted@lang @i:#1}{true}}
+ {\minted@addto@optlistcl@lang{minted@optlistcl@lang\minted@lang @i}{#2}{False}%
+ \@namedef{minted@opt@lang\minted@lang @i:#1}{false}}
+ \define@booleankey{minted@opt@cmd}{#1}%
+ {\minted@addto@optlistcl{\minted@optlistcl@cmd}{#2}{True}%
+ \@namedef{minted@opt@cmd:#1}{true}}
+ {\minted@addto@optlistcl{\minted@optlistcl@cmd}{#2}{False}%
+ \@namedef{minted@opt@cmd:#1}{false}}
+}
+\newcommand{\minted@def@optfv}[1]{%
+ \define@key{minted@opt@g}{#1}{%
+ \expandafter\def\expandafter\minted@optlistfv@g\expandafter{%
+ \minted@optlistfv@g#1={##1},}%
+ \@namedef{minted@opt@g:#1}{##1}}
+ \define@key{minted@opt@g@i}{#1}{%
+ \expandafter\def\expandafter\minted@optlistfv@g@i\expandafter{%
+ \minted@optlistfv@g@i#1={##1},}%
+ \@namedef{minted@opt@g@i:#1}{##1}}
+ \define@key{minted@opt@lang}{#1}{%
+ \expandafter\let\expandafter\minted@tmp%
+ \csname minted@optlistfv@lang\minted@lang\endcsname
+ \expandafter\def\expandafter\minted@tmp\expandafter{%
+ \minted@tmp#1={##1},}%
+ \expandafter\let\csname minted@optlistfv@lang\minted@lang\endcsname%
+ \minted@tmp
+ \@namedef{minted@opt@lang\minted@lang:#1}{##1}}
+ \define@key{minted@opt@lang@i}{#1}{%
+ \expandafter\let\expandafter\minted@tmp%
+ \csname minted@optlistfv@lang\minted@lang @i\endcsname
+ \expandafter\def\expandafter\minted@tmp\expandafter{%
+ \minted@tmp#1={##1},}%
+ \expandafter\let\csname minted@optlistfv@lang\minted@lang @i\endcsname%
+ \minted@tmp
+ \@namedef{minted@opt@lang\minted@lang @i:#1}{##1}}
+ \define@key{minted@opt@cmd}{#1}{%
+ \expandafter\def\expandafter\minted@optlistfv@cmd\expandafter{%
+ \minted@optlistfv@cmd#1={##1},}%
+ \@namedef{minted@opt@cmd:#1}{##1}}
+}
+\newcommand{\minted@def@optfv@switch}[1]{%
+ \define@booleankey{minted@opt@g}{#1}%
+ {\expandafter\def\expandafter\minted@optlistfv@g\expandafter{%
+ \minted@optlistfv@g#1=true,}%
+ \@namedef{minted@opt@g:#1}{true}}%
+ {\expandafter\def\expandafter\minted@optlistfv@g\expandafter{%
+ \minted@optlistfv@g#1=false,}%
+ \@namedef{minted@opt@g:#1}{false}}%
+ \define@booleankey{minted@opt@g@i}{#1}%
+ {\expandafter\def\expandafter\minted@optlistfv@g@i\expandafter{%
+ \minted@optlistfv@g@i#1=true,}%
+ \@namedef{minted@opt@g@i:#1}{true}}%
+ {\expandafter\def\expandafter\minted@optlistfv@g@i\expandafter{%
+ \minted@optlistfv@g@i#1=false,}%
+ \@namedef{minted@opt@g@i:#1}{false}}%
+ \define@booleankey{minted@opt@lang}{#1}%
+ {\expandafter\let\expandafter\minted@tmp%
+ \csname minted@optlistfv@lang\minted@lang\endcsname
+ \expandafter\def\expandafter\minted@tmp\expandafter{%
+ \minted@tmp#1=true,}%
+ \expandafter\let\csname minted@optlistfv@lang\minted@lang\endcsname%
+ \minted@tmp
+ \@namedef{minted@opt@lang\minted@lang:#1}{true}}%
+ {\expandafter\let\expandafter\minted@tmp%
+ \csname minted@optlistfv@lang\minted@lang\endcsname
+ \expandafter\def\expandafter\minted@tmp\expandafter{%
+ \minted@tmp#1=false,}%
+ \expandafter\let\csname minted@optlistfv@lang\minted@lang\endcsname%
+ \minted@tmp
+ \@namedef{minted@opt@lang\minted@lang:#1}{false}}%
+ \define@booleankey{minted@opt@lang@i}{#1}%
+ {\expandafter\let\expandafter\minted@tmp%
+ \csname minted@optlistfv@lang\minted@lang @i\endcsname
+ \expandafter\def\expandafter\minted@tmp\expandafter{%
+ \minted@tmp#1=true,}%
+ \expandafter\let\csname minted@optlistfv@lang\minted@lang @i\endcsname%
+ \minted@tmp
+ \@namedef{minted@opt@lang\minted@lang @i:#1}{true}}%
+ {\expandafter\let\expandafter\minted@tmp%
+ \csname minted@optlistfv@lang\minted@lang @i\endcsname
+ \expandafter\def\expandafter\minted@tmp\expandafter{%
+ \minted@tmp#1=false,}%
+ \expandafter\let\csname minted@optlistfv@lang\minted@lang @i\endcsname%
+ \minted@tmp
+ \@namedef{minted@opt@lang\minted@lang @i:#1}{false}}%
+ \define@booleankey{minted@opt@cmd}{#1}%
+ {\expandafter\def\expandafter\minted@optlistfv@cmd\expandafter{%
+ \minted@optlistfv@cmd#1=true,}%
+ \@namedef{minted@opt@cmd:#1}{true}}%
+ {\expandafter\def\expandafter\minted@optlistfv@cmd\expandafter{%
+ \minted@optlistfv@cmd#1=false,}%
+ \@namedef{minted@opt@cmd:#1}{false}}%
+}
+\newboolean{minted@isinline}
+\newcommand{\minted@fvset}{%
+ \expandafter\fvset\expandafter{\minted@optlistfv@g}%
+ \expandafter\let\expandafter\minted@tmp%
+ \csname minted@optlistfv@lang\minted@lang\endcsname
+ \expandafter\fvset\expandafter{\minted@tmp}%
+ \ifthenelse{\boolean{minted@isinline}}%
+ {\expandafter\fvset\expandafter{\minted@optlistfv@g@i}%
+ \expandafter\let\expandafter\minted@tmp%
+ \csname minted@optlistfv@lang\minted@lang @i\endcsname
+ \expandafter\fvset\expandafter{\minted@tmp}}%
+ {}%
+ \expandafter\fvset\expandafter{\minted@optlistfv@cmd}%
+}
+\newcommand{\minted@def@opt}[2][]{%
+ \define@key{minted@opt@g}{#2}{%
+ \@namedef{minted@opt@g:#2}{##1}}
+ \define@key{minted@opt@g@i}{#2}{%
+ \@namedef{minted@opt@g@i:#2}{##1}}
+ \define@key{minted@opt@lang}{#2}{%
+ \@namedef{minted@opt@lang\minted@lang:#2}{##1}}
+ \define@key{minted@opt@lang@i}{#2}{%
+ \@namedef{minted@opt@lang\minted@lang @i:#2}{##1}}
+ \define@key{minted@opt@cmd}{#2}{%
+ \@namedef{minted@opt@cmd:#2}{##1}}
+ \ifstrempty{#1}{}{\@namedef{minted@opt@g:#2}{#1}}%
+}
+\newcommand{\minted@def@opt@detok}[2][]{%
+ \define@key{minted@opt@g}{#2}{%
+ \@namedef{minted@opt@g:#2}{\detokenize{##1}}}
+ \define@key{minted@opt@g@i}{#2}{%
+ \@namedef{minted@opt@g@i:#2}{\detokenize{##1}}}
+ \define@key{minted@opt@lang}{#2}{%
+ \@namedef{minted@opt@lang\minted@lang:#2}{\detokenize{##1}}}
+ \define@key{minted@opt@lang@i}{#2}{%
+ \@namedef{minted@opt@lang\minted@lang @i:#2}{\detokenize{##1}}}
+ \define@key{minted@opt@cmd}{#2}{%
+ \@namedef{minted@opt@cmd:#2}{\detokenize{##1}}}
+ \ifstrempty{#1}{}{\@namedef{minted@opt@g:#2}{\detokenize{#1}}}%
+}
+\newcommand{\minted@generate@PYGdef}[1]{%
+ \ifthenelse{\boolean{minted@cache}}%
+ {\def\minted@pygstylepath@load{\minted@outputdir\minted@cachedir/#1.pygstyle}%
+ \minted@addcachefile{#1.pygstyle}}%
+ {\def\minted@pygstylepath@load{\minted@outputdir\minted@jobname.out.pyg}}%
+ \ifwindows
+ \StrSubstitute{\minted@pygstylepath@load}%
+ {/}{\@backslashchar}[\minted@pygstylepath@save]%
+ \else
+ \let\minted@pygstylepath@save\minted@pygstylepath@load
+ \fi
+ \IfFileExists{\minted@pygstylepath@load}%
+ {}%
+ {\ifthenelse{\boolean{minted@frozencache}}%
+ {\PackageError{minted}%
+ {Missing style definition for #1 with frozencache}%
+ {Missing style definition for #1 with frozencache}}%
+ {}%
+ \ShellEscape{%
+ \MintedPygmentize\space -S #1 -f latex -P commandprefix=PYG
+ > \minted@pygstylepath@save
+ }%
+ }%
+ \CatchFileDef{\minted@tmp@filecontents}%
+ {\minted@pygstylepath@load}{\catcode`@=11\catcode`\%=14\catcode``=12\endlinechar=-1}%
+ \begingroup
+ \let\PYG\relax
+ \minted@tmp@filecontents
+ \ifx\PYG\relax
+ \ifthenelse{\boolean{minted@frozencache}}%
+ {\PackageError{minted}%
+ {Outdated style definition for #1 with frozencache}%
+ {Outdated style definition for #1 with frozencache}}%
+ {}%
+ \ShellEscape{%
+ \MintedPygmentize\space -S #1 -f latex -P commandprefix=PYG
+ > \minted@pygstylepath@save
+ }%
+ \CatchFileDef{\minted@tmp@filecontents}%
+ {\minted@pygstylepath@load}{\catcode`@=11\catcode`\%=14\catcode``=12\endlinechar=-1}%
+ \minted@tmp@filecontents
+ \ifx\PYG\relax
+ \PackageError{minted}%
+ {Cannot find Pygments style #1}%
+ {Cannot find Pygments style #1}%
+ \fi
+ \fi
+ \expandafter\global\expandafter\let\csname minted@PYGdef@#1\endcsname%
+ \minted@tmp@filecontents
+ \endgroup
+}
+\newcommand{\minted@defstyle}[1]{%
+ \edef\minted@style{#1}%
+ \ifcsname minted@PYGdef@\minted@style\endcsname\else
+ \expandafter\minted@generate@PYGdef\expandafter{\minted@style}%
+ \fi
+ \csname minted@PYGdef@\minted@style\endcsname
+ \minted@patch@PYGZsq
+ \minted@patch@PYGZhy
+ \ifthenelse{\equal{\minted@get@opt{ignorelexererrors}{true}}{true}}%
+ {\let\PYG@tok@err\relax}{}}
+\ifthenelse{\boolean{minted@draft}}{\renewcommand{\minted@defstyle}[1]{}}{}
+\newcommand{\minted@patch@PYGZsq}{%
+ \ifcsname PYGZsq\endcsname
+ \expandafter\ifdefstring\expandafter{\csname PYGZsq\endcsname}{\char`\'}%
+ {\minted@patch@PYGZsq@i}%
+ {}%
+ \fi
+}
+\begingroup
+\catcode`\'=\active
+\gdef\minted@patch@PYGZsq@i{\gdef\PYGZsq{'}}
+\endgroup
+\newcommand{\minted@patch@PYGZhy}{%
+ \ifcsname PYGZhy\endcsname
+ \expandafter\ifdefstring\expandafter{\csname PYGZhy\endcsname}{\char`\-}%
+ {\def\PYGZhy{\mbox{-}}}%
+ {}%
+ \fi
+}
+\newcommand{\minted@def@opt@switch}[2][false]{%
+ \define@booleankey{minted@opt@g}{#2}%
+ {\@namedef{minted@opt@g:#2}{true}}%
+ {\@namedef{minted@opt@g:#2}{false}}
+ \define@booleankey{minted@opt@g@i}{#2}%
+ {\@namedef{minted@opt@g@i:#2}{true}}%
+ {\@namedef{minted@opt@g@i:#2}{false}}
+ \define@booleankey{minted@opt@lang}{#2}%
+ {\@namedef{minted@opt@lang\minted@lang:#2}{true}}%
+ {\@namedef{minted@opt@lang\minted@lang:#2}{false}}
+ \define@booleankey{minted@opt@lang@i}{#2}%
+ {\@namedef{minted@opt@lang\minted@lang @i:#2}{true}}%
+ {\@namedef{minted@opt@lang\minted@lang @i:#2}{false}}
+ \define@booleankey{minted@opt@cmd}{#2}%
+ {\@namedef{minted@opt@cmd:#2}{true}}%
+ {\@namedef{minted@opt@cmd:#2}{false}}%
+ \@namedef{minted@opt@g:#2}{#1}%
+}
+\def\minted@get@opt#1#2{%
+ \ifcsname minted@opt@cmd:#1\endcsname
+ \csname minted@opt@cmd:#1\endcsname
+ \else
+ \ifminted@isinline
+ \ifcsname minted@opt@lang\minted@lang @i:#1\endcsname
+ \csname minted@opt@lang\minted@lang @i:#1\endcsname
+ \else
+ \ifcsname minted@opt@g@i:#1\endcsname
+ \csname minted@opt@g@i:#1\endcsname
+ \else
+ \ifcsname minted@opt@lang\minted@lang:#1\endcsname
+ \csname minted@opt@lang\minted@lang:#1\endcsname
+ \else
+ \ifcsname minted@opt@g:#1\endcsname
+ \csname minted@opt@g:#1\endcsname
+ \else
+ #2%
+ \fi
+ \fi
+ \fi
+ \fi
+ \else
+ \ifcsname minted@opt@lang\minted@lang:#1\endcsname
+ \csname minted@opt@lang\minted@lang:#1\endcsname
+ \else
+ \ifcsname minted@opt@g:#1\endcsname
+ \csname minted@opt@g:#1\endcsname
+ \else
+ #2%
+ \fi
+ \fi
+ \fi
+ \fi
+}%
+\minted@def@optcl{encoding}{-P encoding}{#1}
+\minted@def@optcl{outencoding}{-P outencoding}{#1}
+\minted@def@optcl@e{escapeinside}{-P escapeinside}{#1}
+\minted@def@optcl@switch{stripnl}{-P stripnl}
+\minted@def@optcl@switch{stripall}{-P stripall}
+\minted@def@optcl@switch{python3}{-P python3}
+\minted@def@optcl@switch{funcnamehighlighting}{-P funcnamehighlighting}
+\minted@def@optcl@switch{startinline}{-P startinline}
+\ifthenelse{\boolean{minted@draft}}%
+ {\minted@def@optfv{gobble}}%
+ {\minted@def@optcl{gobble}{-F gobble:n}{#1}}
+\minted@def@optcl{codetagify}{-F codetagify:codetags}{#1}
+\minted@def@optcl{keywordcase}{-F keywordcase:case}{#1}
+\minted@def@optcl@switch{texcl}{-P texcomments}
+\minted@def@optcl@switch{texcomments}{-P texcomments}
+\minted@def@optcl@switch{mathescape}{-P mathescape}
+\minted@def@optfv@switch{linenos}
+\minted@def@opt@detok{style}
+\minted@def@optfv{frame}
+\minted@def@optfv{framesep}
+\minted@def@optfv{framerule}
+\minted@def@optfv{rulecolor}
+\minted@def@optfv{numbersep}
+\minted@def@optfv{numbers}
+\minted@def@optfv{firstnumber}
+\minted@def@optfv{stepnumber}
+\minted@def@optfv{firstline}
+\minted@def@optfv{lastline}
+\minted@def@optfv{baselinestretch}
+\minted@def@optfv{xleftmargin}
+\minted@def@optfv{xrightmargin}
+\minted@def@optfv{fillcolor}
+\minted@def@optfv{tabsize}
+\minted@def@optfv{fontfamily}
+\minted@def@optfv{fontsize}
+\minted@def@optfv{fontshape}
+\minted@def@optfv{fontseries}
+\minted@def@optfv{formatcom}
+\minted@def@optfv{label}
+\minted@def@optfv{labelposition}
+\minted@def@optfv{highlightlines}
+\minted@def@optfv{highlightcolor}
+\minted@def@optfv{space}
+\minted@def@optfv{spacecolor}
+\minted@def@optfv{tab}
+\minted@def@optfv{tabcolor}
+\minted@def@optfv{highlightcolor}
+\minted@def@optfv@switch{beameroverlays}
+\minted@def@optfv@switch{curlyquotes}
+\minted@def@optfv@switch{numberfirstline}
+\minted@def@optfv@switch{numberblanklines}
+\minted@def@optfv@switch{stepnumberfromfirst}
+\minted@def@optfv@switch{stepnumberoffsetvalues}
+\minted@def@optfv@switch{showspaces}
+\minted@def@optfv@switch{resetmargins}
+\minted@def@optfv@switch{samepage}
+\minted@def@optfv@switch{showtabs}
+\minted@def@optfv@switch{obeytabs}
+\minted@def@optfv@switch{breaklines}
+\minted@def@optfv@switch{breakbytoken}
+\minted@def@optfv@switch{breakbytokenanywhere}
+\minted@def@optfv{breakindent}
+\minted@def@optfv{breakindentnchars}
+\minted@def@optfv@switch{breakautoindent}
+\minted@def@optfv{breaksymbol}
+\minted@def@optfv{breaksymbolsep}
+\minted@def@optfv{breaksymbolsepnchars}
+\minted@def@optfv{breaksymbolindent}
+\minted@def@optfv{breaksymbolindentnchars}
+\minted@def@optfv{breaksymbolleft}
+\minted@def@optfv{breaksymbolsepleft}
+\minted@def@optfv{breaksymbolsepleftnchars}
+\minted@def@optfv{breaksymbolindentleft}
+\minted@def@optfv{breaksymbolindentleftnchars}
+\minted@def@optfv{breaksymbolright}
+\minted@def@optfv{breaksymbolsepright}
+\minted@def@optfv{breaksymbolseprightnchars}
+\minted@def@optfv{breaksymbolindentright}
+\minted@def@optfv{breaksymbolindentrightnchars}
+\minted@def@optfv{breakbefore}
+\minted@def@optfv{breakbeforesymbolpre}
+\minted@def@optfv{breakbeforesymbolpost}
+\minted@def@optfv@switch{breakbeforeinrun}
+\minted@def@optfv{breakafter}
+\minted@def@optfv@switch{breakafterinrun}
+\minted@def@optfv{breakaftersymbolpre}
+\minted@def@optfv{breakaftersymbolpost}
+\minted@def@optfv@switch{breakanywhere}
+\minted@def@optfv{breakanywheresymbolpre}
+\minted@def@optfv{breakanywheresymbolpost}
+\minted@def@optfv{fontencoding}
+\minted@def@opt{bgcolor}
+\minted@def@opt@switch{autogobble}
+\minted@def@opt@switch{ignorelexererrors}
+\newcommand{\minted@encoding}{\minted@get@opt{encoding}{UTF8}}
+\newenvironment{minted@snugshade*}[1]{%
+ \def\FrameCommand##1{\hskip\@totalleftmargin
+ \colorbox{#1}{##1}%
+ \hskip-\linewidth \hskip-\@totalleftmargin \hskip\columnwidth}%
+ \MakeFramed{\advance\hsize-\width
+ \@totalleftmargin\z@ \linewidth\hsize
+ \advance\labelsep\fboxsep
+ \@setminipage}%
+ }{\par\unskip\@minipagefalse\endMakeFramed}
+\newsavebox{\minted@bgbox}
+\newenvironment{minted@colorbg}[1]{%
+ \setlength{\OuterFrameSep}{0pt}%
+ \let\minted@tmp\FV@NumberSep
+ \edef\FV@NumberSep{%
+ \the\numexpr\dimexpr\minted@tmp+\number\fboxsep\relax sp\relax}%
+ \medskip
+ \begin{minted@snugshade*}{#1}}
+ {\end{minted@snugshade*}%
+ \medskip\noindent}
+\newwrite\minted@code
+\newcommand{\minted@savecode}[1]{
+ \immediate\openout\minted@code\minted@jobname.pyg\relax
+ \immediate\write\minted@code{\expandafter\detokenize\expandafter{#1}}%
+ \immediate\closeout\minted@code}
+\newcounter{minted@FancyVerbLineTemp}
+\newcommand{\minted@write@detok}[1]{%
+ \immediate\write\FV@OutFile{\detokenize{#1}}}
+\newcommand{\minted@FVB@VerbatimOut}[1]{%
+ \setcounter{minted@FancyVerbLineTemp}{\value{FancyVerbLine}}%
+ \@bsphack
+ \begingroup
+ \FV@UseKeyValues
+ \FV@DefineWhiteSpace
+ \def\FV@Space{\space}%
+ \FV@DefineTabOut
+ \let\FV@ProcessLine\minted@write@detok
+ \immediate\openout\FV@OutFile #1\relax
+ \let\FV@FontScanPrep\relax
+ \let\@noligs\relax
+ \FV@Scan}
+\newcommand{\minted@FVE@VerbatimOut}{%
+ \immediate\closeout\FV@OutFile\endgroup\@esphack
+ \setcounter{FancyVerbLine}{\value{minted@FancyVerbLineTemp}}}%
+\ifcsname MintedPygmentize\endcsname\else
+ \newcommand{\MintedPygmentize}{pygmentize}
+\fi
+\newcounter{minted@pygmentizecounter}
+\ifwindows
+ \newcommand{\MintedPython}{python}
+\else
+ \newcommand{\MintedPython}{python3}
+\fi
+\newcommand{\minted@check@MintedPython}{%
+ \ifcsname minted@MintedPython@\MintedPython\endcsname
+ \else
+ \let\minted@altpython\minted@undefined
+ \ifdefstring{\MintedPython}{python}{\def\minted@altpython{python3}}{}%
+ \ifdefstring{\MintedPython}{python3}{\def\minted@altpython{python}}{}%
+ \ifx\minted@altpython\minted@undefined\relax
+ \TestAppExists{\MintedPython}%
+ \ifAppExists
+ \expandafter\global\expandafter\let%
+ \csname minted@MintedPython@\MintedPython\endcsname\relax
+ \else
+ \PackageError{minted}%
+ {Failed to find Python executable \MintedPython;
+ check Python installation (including PATH),
+ or redefine \string\MintedPython}%
+ {Failed to find Python executable \MintedPython;
+ check Python installation (including PATH),
+ or redefine \string\MintedPython}%
+ \fi
+ \else
+ \ifcsname minted@MintedPython@\minted@altpython\endcsname
+ \let\MintedPython\minted@altpython
+ \else
+ \TestAppExists{\MintedPython}%
+ \ifAppExists
+ \expandafter\global\expandafter\let%
+ \csname minted@MintedPython@\MintedPython\endcsname\relax
+ \else
+ \TestAppExists{\minted@altpython}%
+ \ifAppExists
+ \expandafter\global\expandafter\let%
+ \csname minted@MintedPython@\minted@altpython\endcsname\relax
+ \let\MintedPython\minted@altpython
+ \else
+ \PackageError{minted}%
+ {Failed to find Python executables python or python3;
+ check Python installation (including PATH),
+ or redefine \string\MintedPython}%
+ {Failed to find Python executables python or python3;
+ check Python installation (including PATH),
+ or redefine \string\MintedPython}%
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+}
+\ifwindows
+ \def\minted@opt@quote#1{\detokenize{"#1"}}
+\else
+ \def\minted@opt@quote#1{\detokenize{'#1'}}
+\fi
+\newcommand{\minted@pygmentize}[2][\minted@outputdir\minted@jobname.pyg]{%
+ \minted@defstyle{\minted@get@opt{style}{default}}%
+ \stepcounter{minted@pygmentizecounter}%
+ \ifthenelse{\equal{\minted@get@opt{autogobble}{false}}{true}}%
+ {\def\minted@codefile{\minted@outputdir\minted@jobname.pyg}}%
+ {\def\minted@codefile{#1}}%
+ \ifthenelse{\boolean{minted@isinline}}%
+ {\def\minted@optlistcl@inlines{%
+ \minted@optlistcl@g@i
+ \csname minted@optlistcl@lang\minted@lang @i\endcsname}}%
+ {\let\minted@optlistcl@inlines\@empty}%
+ \def\minted@cmd{%
+ \ifminted@kpsewhich
+ \ifwindows
+ \detokenize{for /f "usebackq tokens=*"}\space\@percentchar\detokenize{a in (`kpsewhich}\space\minted@codefile\detokenize{`) do}\space
+ \fi
+ \fi
+ \MintedPygmentize\space -l \minted@opt@quote{#2}
+ -f latex -P commandprefix=PYG -F tokenmerge
+ \minted@optlistcl@g \csname minted@optlistcl@lang\minted@lang\endcsname
+ \minted@optlistcl@inlines
+ \minted@optlistcl@cmd -o \minted@outputdir\minted@infile\space
+ \ifminted@kpsewhich
+ \ifwindows
+ \@percentchar\detokenize{a}%
+ \else
+ \detokenize{`}kpsewhich \minted@codefile\space
+ \detokenize{||} \minted@codefile\detokenize{`}%
+ \fi
+ \else
+ \minted@codefile
+ \fi}%
+ % For debugging, uncomment: %%%%
+ % \immediate\typeout{\minted@cmd}%
+ % %%%%
+ \ifthenelse{\boolean{minted@cache}}%
+ {%
+ \ifminted@frozencache
+ \else
+ \ifthenelse{\equal{\minted@get@opt{autogobble}{false}}{true}}%
+ {\edef\minted@hash{%
+ \pdf@filemdfivesum{#1}%
+ \pdf@mdfivesum{\minted@cmd\space%
+ autogobble(\the\numexpr\FancyVerbStartNum\relax-%
+ \the\numexpr\FancyVerbStopNum\relax)}}}%
+ {\edef\minted@hash{%
+ \pdf@filemdfivesum{#1}%
+ \pdf@mdfivesum{\minted@cmd}}}%
+ \edef\minted@infile{\minted@cachedir/\minted@hash.pygtex}%
+ \IfFileExists{\minted@infile}{}{%
+ \ifthenelse{\equal{\minted@get@opt{autogobble}{false}}{true}}{%
+ \minted@autogobble{#1}}{}%
+ \ShellEscape{\minted@cmd}}%
+ \fi
+ \ifthenelse{\boolean{minted@finalizecache}}%
+ {%
+ \edef\minted@cachefilename{listing\arabic{minted@pygmentizecounter}.pygtex}%
+ \edef\minted@actualinfile{\minted@cachedir/\minted@cachefilename}%
+ \ifwindows
+ \StrSubstitute{\minted@infile}{/}{\@backslashchar}[\minted@infile@windows]
+ \StrSubstitute{\minted@actualinfile}{/}{\@backslashchar}[\minted@actualinfile@windows]
+ \ShellEscape{move /y \minted@outputdir\minted@infile@windows\space\minted@outputdir\minted@actualinfile@windows}%
+ \else
+ \ShellEscape{mv -f \minted@outputdir\minted@infile\space\minted@outputdir\minted@actualinfile}%
+ \fi
+ \let\minted@infile\minted@actualinfile
+ \expandafter\minted@addcachefile\expandafter{\minted@cachefilename}%
+ }%
+ {\ifthenelse{\boolean{minted@frozencache}}%
+ {%
+ \edef\minted@cachefilename{listing\arabic{minted@pygmentizecounter}.pygtex}%
+ \edef\minted@infile{\minted@cachedir/\minted@cachefilename}%
+ \expandafter\minted@addcachefile\expandafter{\minted@cachefilename}}%
+ {\expandafter\minted@addcachefile\expandafter{\minted@hash.pygtex}}%
+ }%
+ \minted@inputpyg}%
+ {%
+ \ifthenelse{\equal{\minted@get@opt{autogobble}{false}}{true}}{%
+ \minted@autogobble{#1}}{}%
+ \ShellEscape{\minted@cmd}%
+ \minted@inputpyg}%
+}
+\def\minted@autogobble#1{%
+ \edef\minted@argone@esc{#1}%
+ \StrSubstitute{\minted@argone@esc}{\@backslashchar}{\@backslashchar\@backslashchar}[\minted@argone@esc]%
+ \StrSubstitute{\minted@argone@esc}{"}{\@backslashchar"}[\minted@argone@esc]%
+ \edef\minted@tmpfname@esc{\minted@outputdir\minted@jobname}%
+ \StrSubstitute{\minted@tmpfname@esc}{\@backslashchar}{\@backslashchar\@backslashchar}[\minted@tmpfname@esc]%
+ \StrSubstitute{\minted@tmpfname@esc}{"}{\@backslashchar"}[\minted@tmpfname@esc]%
+ %Need a version of open() that supports encoding under Python 2
+ \minted@check@MintedPython
+ \edef\minted@autogobblecmd{%
+ \ifminted@kpsewhich
+ \ifwindows
+ \detokenize{for /f "usebackq tokens=*" }\@percentchar\detokenize{a in (`kpsewhich} #1\detokenize{`) do}\space
+ \fi
+ \fi
+ \MintedPython\detokenize{ -c "import sys; import os;
+ import textwrap;
+ from io import open;
+ fname = }%
+ \ifminted@kpsewhich
+ \detokenize{sys.argv[1];}\space
+ \else
+ \detokenize{os.path.expanduser(os.path.expandvars(\"}\minted@argone@esc\detokenize{\"));}\space
+ \fi
+ \detokenize{f = open(fname, \"r\", encoding=\"}\minted@encoding\detokenize{\") if os.path.isfile(fname) else None;
+ t = f.readlines() if f is not None else None;
+ t_opt = t if t is not None else [];
+ f.close() if f is not None else None;
+ tmpfname = os.path.expanduser(os.path.expandvars(\"}\minted@tmpfname@esc.pyg\detokenize{\"));
+ f = open(tmpfname, \"w\", encoding=\"}\minted@encoding\detokenize{\") if t is not None else None;
+ fvstartnum = }\the\numexpr\FancyVerbStartNum\detokenize{;
+ fvstopnum = }\the\numexpr\FancyVerbStopNum\detokenize{;
+ s = max(0, fvstartnum-1);
+ e = max(s, fvstopnum) if fvstopnum > 0 else len(t_opt);
+ [f.write(textwrap.dedent(\"\".join(x))) for x in (t_opt[0:s], t_opt[s:e], t_opt[e:]) if x and t is not None];
+ f.close() if t is not None else os.remove(tmpfname);"}%
+ \ifminted@kpsewhich
+ \ifwindows
+ \space\@percentchar\detokenize{a}%
+ \else
+ \space\detokenize{`}kpsewhich #1\space\detokenize{||} #1\detokenize{`}%
+ \fi
+ \fi
+ }%
+ \ShellEscape{\minted@autogobblecmd}%
+}
+\newcommand{\minted@inputpyg}{%
+ \VerbatimPygments{\PYG}{\PYG}%
+ \ifthenelse{\boolean{minted@isinline}}%
+ {\ifthenelse{\equal{\minted@get@opt{breaklines}{false}}{true}}%
+ {\let\FV@BeginVBox\relax
+ \let\FV@EndVBox\relax
+ \def\FV@BProcessLine##1{\FancyVerbFormatLine{##1}}%
+ \minted@inputpyg@inline}%
+ {\minted@inputpyg@inline}}%
+ {\minted@inputpyg@block}%
+}
+\def\minted@inputpyg@inline{%
+ \ifthenelse{\equal{\minted@get@opt{bgcolor}{}}{}}%
+ {\minted@input{\minted@outputdir\minted@infile}}%
+ {\colorbox{\minted@get@opt{bgcolor}{}}{%
+ \minted@input{\minted@outputdir\minted@infile}}}%
+}
+\def\minted@inputpyg@block{%
+ \ifthenelse{\equal{\minted@get@opt{bgcolor}{}}{}}%
+ {\minted@input{\minted@outputdir\minted@infile}}%
+ {\begin{minted@colorbg}{\minted@get@opt{bgcolor}{}}%
+ \minted@input{\minted@outputdir\minted@infile}%
+ \end{minted@colorbg}}}
+\newcommand{\minted@langlinenoson}{%
+ \ifcsname c@minted@lang\minted@lang\endcsname\else
+ \newcounter{minted@lang\minted@lang}%
+ \fi
+ \setcounter{minted@FancyVerbLineTemp}{\value{FancyVerbLine}}%
+ \setcounter{FancyVerbLine}{\value{minted@lang\minted@lang}}%
+}
+\newcommand{\minted@langlinenosoff}{%
+ \setcounter{minted@lang\minted@lang}{\value{FancyVerbLine}}%
+ \setcounter{FancyVerbLine}{\value{minted@FancyVerbLineTemp}}%
+}
+\ifbool{minted@langlinenos}{}{%
+ \ifbool{minted@inputlanglinenos}{}{%
+ \let\minted@langlinenoson\relax
+ \let\minted@langlinenosoff\relax
+ }
+}
+\ifbool{minted@inputlanglinenos}%
+ {\def\minted@inputlanglinenoson{\minted@langlinenoson}%
+ \def\minted@inputlanglinenosoff{\minted@langlinenosoff}}%
+ {\let\minted@inputlanglinenoson\relax
+ \let\minted@inputlanglinenosoff\relax}
+\newcommand{\setminted}[2][]{%
+ \ifthenelse{\equal{#1}{}}%
+ {\setkeys{minted@opt@g}{#2}}%
+ {\minted@configlang{#1}%
+ \setkeys{minted@opt@lang}{#2}}}
+\newcommand{\setmintedinline}[2][]{%
+ \ifthenelse{\equal{#1}{}}%
+ {\setkeys{minted@opt@g@i}{#2}}%
+ {\minted@configlang{#1}%
+ \setkeys{minted@opt@lang@i}{#2}}}
+\setmintedinline[php]{startinline=true}
+\setminted{tabcolor=black}
+\setminted{stripnl=false}
+\newcommand{\usemintedstyle}[2][]{\setminted[#1]{style=#2}}
+\begingroup
+\catcode`\ =\active
+\catcode`\^^I=\active
+\gdef\minted@defwhitespace@retok{\def {\noexpand\FV@Space}\def^^I{\noexpand\FV@Tab}}%
+\endgroup
+\newcommand{\minted@writecmdcode}[1]{%
+ \immediate\openout\minted@code\minted@jobname.pyg\relax
+ \immediate\write\minted@code{\detokenize{#1}}%
+ \immediate\closeout\minted@code}
+\def\mintinline{%
+ \FVExtraRobustCommand\RobustMintInline\FVExtraUnexpandedReadStarOArgMArgBVArg}
+\FVExtrapdfstringdefDisableCommands{%
+ \def\RobustMintInline{}}
+\newrobustcmd{\RobustMintInline}[2][]{%
+ \ifbool{FVExtraRobustCommandExpanded}%
+ {\@ifnextchar\bgroup
+ {\FVExtraReadVArg{\RobustMintInlineProcess{#1}{#2}}}%
+ {\PackageError{minted}%
+ {Inline delimiters must be paired curly braces in this context}%
+ {Use curly braces as delimiters}}}%
+ {\FVExtraReadVArg{\RobustMintInlineProcess{#1}{#2}}}}
+\def\RobustMintInlineProcess#1#2#3{%
+ \begingroup
+ \setboolean{minted@isinline}{true}%
+ \minted@configlang{#2}%
+ \setkeys{minted@opt@cmd}{#1}%
+ \minted@fvset
+ \RobustMintInlineProcess@i{#3}}
+\ifthenelse{\boolean{minted@draft}}%
+ {\def\RobustMintInlineProcess@i#1{%
+ \fvset{extra=true}%
+ \Verb{#1}%
+ \endgroup}}%
+ {\def\RobustMintInlineProcess@i#1{%
+ \FVExtraDetokenizeVArg{%
+ \FVExtraRetokenizeVArg{\RobustMintInlineProcess@ii}{\FV@CatCodes}}{#1}}
+ \def\RobustMintInlineProcess@ii#1{%
+ \minted@writecmdcode{#1}%
+ \let\Verbatim\VerbEnv
+ \let\endVerbatim\endVerbEnv
+ \expandafter\minted@pygmentize\expandafter{\minted@lang}%
+ \endgroup}}
+\def\mint{%
+ \FVExtraRobustCommand\RobustMint\FVExtraUnexpandedReadStarOArgMArgBVArg}
+\FVExtrapdfstringdefDisableCommands{%
+ \def\RobustMint{}}
+\newrobustcmd{\RobustMint}[2][]{%
+ \ifbool{FVExtraRobustCommandExpanded}%
+ {\@ifnextchar\bgroup
+ {\FVExtraReadVArg{\RobustMintProcess{#1}{#2}}}%
+ {\PackageError{minted}%
+ {Delimiters must be paired curly braces in this context}%
+ {Use curly braces as delimiters}}}%
+ {\FVExtraReadVArg{\RobustMintProcess{#1}{#2}}}}
+\def\RobustMintProcess#1#2#3{%
+ \begingroup
+ \minted@configlang{#2}%
+ \setkeys{minted@opt@cmd}{#1}%
+ \minted@fvset
+ \RobustMintProcess@i{#3}}
+\begingroup
+\catcode`\^^M=\active%
+\catcode`\<=1%
+\catcode`\>=2%
+\catcode`\{=12%
+\catcode`\}=12%
+\catcode`\!=0%
+\catcode`\\=12%
+!ifthenelse<!boolean<minted@draft>>%
+ <!gdef!RobustMintProcess@i#1<%
+ !FVExtraDetokenizeVArg<%
+ !FVExtraRetokenizeVArg<!RobustMintProcess@ii><!FV@CatCodes>><#1>>%
+ !gdef!RobustMintProcess@ii#1<%
+ !minted@langlinenoson%
+ !scantokens<%
+ \begin{Verbatim}
+ #1
+ \end{Verbatim}
+ !noexpand>%
+ !minted@langlinenosoff%
+ !endgroup!@doendpe>>%
+ <!gdef!RobustMintProcess@i#1<%
+ !FVExtraDetokenizeVArg<%
+ !FVExtraRetokenizeVArg<!RobustMintProcess@ii><!FV@CatCodes>><#1>>%
+ !gdef!RobustMintProcess@ii#1<%
+ !minted@writecmdcode<#1>%
+ !minted@langlinenoson%
+ !expandafter!minted@pygmentize!expandafter<!minted@lang>%
+ !minted@langlinenosoff%
+ !endgroup!@doendpe>>%
+!endgroup
+\ifthenelse{\boolean{minted@draft}}%
+ {\newenvironment{minted}[2][]
+ {\VerbatimEnvironment
+ \minted@configlang{#2}%
+ \setkeys{minted@opt@cmd}{#1}%
+ \minted@fvset
+ \minted@langlinenoson
+ \begin{Verbatim}}%
+ {\end{Verbatim}%
+ \minted@langlinenosoff}}%
+ {\newenvironment{minted}[2][]
+ {\VerbatimEnvironment
+ \let\FVB@VerbatimOut\minted@FVB@VerbatimOut
+ \let\FVE@VerbatimOut\minted@FVE@VerbatimOut
+ \minted@configlang{#2}%
+ \setkeys{minted@opt@cmd}{#1}%
+ \minted@fvset
+ \begin{VerbatimOut}[codes={\catcode`\^^I=12},firstline,lastline]{\minted@jobname.pyg}}%
+ {\end{VerbatimOut}%
+ \minted@langlinenoson
+ \expandafter\minted@pygmentize\expandafter{\minted@lang}%
+ \minted@langlinenosoff}}
+\ifthenelse{\boolean{minted@draft}}%
+ {\newcommand{\inputminted}[3][]{%
+ \begingroup
+ \minted@configlang{#2}%
+ \setkeys{minted@opt@cmd}{#1}%
+ \minted@fvset
+ \minted@inputlanglinenoson
+ \VerbatimInput{#3}%
+ \minted@inputlanglinenosoff
+ \endgroup}}%
+ {\newcommand{\inputminted}[3][]{%
+ \begingroup
+ \minted@configlang{#2}%
+ \setkeys{minted@opt@cmd}{#1}%
+ \minted@fvset
+ \minted@inputlanglinenoson
+ \minted@pygmentize[#3]{#2}%
+ \minted@inputlanglinenosoff
+ \endgroup}}
+\newcommand{\newminted}[3][]{
+ \ifthenelse{\equal{#1}{}}
+ {\def\minted@envname{#2code}}
+ {\def\minted@envname{#1}}
+ \newenvironment{\minted@envname}
+ {\VerbatimEnvironment
+ \begin{minted}[#3]{#2}}
+ {\end{minted}}
+ \newenvironment{\minted@envname *}[1]
+ {\VerbatimEnvironment\begin{minted}[#3,##1]{#2}}
+ {\end{minted}}}
+\newcommand{\newmint}[3][]{%
+ \if\relax\detokenize{#1}\relax
+ \def\minted@shortname{#2}%
+ \else
+ \def\minted@shortname{#1}%
+ \fi
+ \expandafter\newmint@i\expandafter{\minted@shortname}{#2}{#3}}
+\def\newmint@i#1#2#3{%
+ \expandafter\newcommand\csname#1\endcsname{%
+ \expandafter\FVExtraRobustCommand\csname RobustNewMint#1\endcsname
+ \FVExtraUnexpandedReadStarOArgBVArg}%
+ \FVExtrapdfstringdefDisableCommands{%
+ \expandafter\def\csname RobustNewMint#1\endcsname{}}%
+ \expandafter\newrobustcmd\csname RobustNewMint#1\endcsname{%
+ \FVExtraReadOArgBeforeVArg{\csname RobustNewMint#1@i\endcsname}}%
+ \expandafter\def\csname RobustNewMint#1@i\endcsname##1{%
+ \ifbool{FVExtraRobustCommandExpanded}%
+ {\@ifnextchar\bgroup
+ {\FVExtraReadVArg{\csname RobustNewMint#1@ii\endcsname{##1}}}%
+ {\PackageError{minted}%
+ {Delimiters must be paired curly braces in this context}%
+ {Use curly braces as delimiters}}}%
+ {\FVExtraReadVArg{\csname RobustNewMint#1@ii\endcsname{##1}}}}
+ \expandafter\def\csname RobustNewMint#1@ii\endcsname##1##2{%
+ \RobustMintProcess{#3,##1}{#2}{##2}}}
+\newcommand{\newmintedfile}[3][]{
+ \ifthenelse{\equal{#1}{}}
+ {\def\minted@shortname{#2file}}
+ {\def\minted@shortname{#1}}
+ \expandafter\newcommand\csname\minted@shortname\endcsname[2][]{
+ \inputminted[#3,##1]{#2}{##2}}}
+\newcommand{\newmintinline}[3][]{%
+ \if\relax\detokenize{#1}\relax
+ \def\minted@shortname{#2inline}%
+ \else
+ \def\minted@shortname{#1}%
+ \fi
+ \expandafter\newmintinline@i\expandafter{\minted@shortname}{#2}{#3}}
+\def\newmintinline@i#1#2#3{%
+ \expandafter\newcommand\csname#1\endcsname{%
+ \expandafter\FVExtraRobustCommand\csname RobustNewMintInline#1\endcsname
+ \FVExtraUnexpandedReadStarOArgBVArg}%
+ \FVExtrapdfstringdefDisableCommands{%
+ \expandafter\def\csname RobustNewMintInline#1\endcsname{}}%
+ \expandafter\newrobustcmd\csname RobustNewMintInline#1\endcsname{%
+ \FVExtraReadOArgBeforeVArg{\csname RobustNewMintInline#1@i\endcsname}}%
+ \expandafter\def\csname RobustNewMintInline#1@i\endcsname##1{%
+ \ifbool{FVExtraRobustCommandExpanded}%
+ {\@ifnextchar\bgroup
+ {\FVExtraReadVArg{\csname RobustNewMintInline#1@ii\endcsname{##1}}}%
+ {\PackageError{minted}%
+ {Inline delimiters must be paired curly braces in this context}%
+ {Use curly braces as delimiters}}}%
+ {\FVExtraReadVArg{\csname RobustNewMintInline#1@ii\endcsname{##1}}}}
+ \expandafter\def\csname RobustNewMintInline#1@ii\endcsname##1##2{%
+ \RobustMintInlineProcess{#3,##1}{#2}{##2}}}
+\ifthenelse{\boolean{minted@newfloat}}%
+ {\@ifundefined{minted@float@within}%
+ {\DeclareFloatingEnvironment[fileext=lol,placement=tbp]{listing}}%
+ {\def\minted@tmp#1{%
+ \DeclareFloatingEnvironment[fileext=lol,placement=tbp, within=#1]{listing}}%
+ \expandafter\minted@tmp\expandafter{\minted@float@within}}}%
+ {\@ifundefined{minted@float@within}%
+ {\newfloat{listing}{tbp}{lol}}%
+ {\newfloat{listing}{tbp}{lol}[\minted@float@within]}}
+\ifminted@newfloat\else
+\newcommand{\listingscaption}{Listing}
+\floatname{listing}{\listingscaption}
+\newcommand{\listoflistingscaption}{List of Listings}
+\providecommand{\listoflistings}{\listof{listing}{\listoflistingscaption}}
+\fi
+\AtEndOfPackage{%
+ \ifthenelse{\boolean{minted@draft}}%
+ {}%
+ {%
+ \ifthenelse{\boolean{minted@frozencache}}{}{%
+ \ifnum\pdf@shellescape=1\relax\else
+ \PackageError{minted}%
+ {You must invoke LaTeX with the
+ -shell-escape flag}%
+ {Pass the -shell-escape flag to LaTeX. Refer to the minted.sty
+ documentation for more information.}%
+ \fi}%
+ }%
+}
+\AtEndPreamble{%
+ \ifthenelse{\boolean{minted@draft}}%
+ {}%
+ {%
+ \ifthenelse{\boolean{minted@frozencache}}{}{%
+ \TestAppExists{\MintedPygmentize}%
+ \ifAppExists\else
+ \PackageError{minted}%
+ {You must have `pygmentize' installed
+ to use this package}%
+ {Refer to the installation instructions in the minted
+ documentation for more information.}%
+ \fi}%
+ }%
+}
+\AfterEndDocument{%
+ \ifthenelse{\boolean{minted@draft}}%
+ {}%
+ {\ifthenelse{\boolean{minted@frozencache}}%
+ {}
+ {\ifx\XeTeXinterchartoks\minted@undefined
+ \else
+ \DeleteFile[\minted@outputdir]{\minted@jobname.mintedcmd}%
+ \DeleteFile[\minted@outputdir]{\minted@jobname.mintedmd5}%
+ \fi
+ \DeleteFile[\minted@outputdir]{\minted@jobname.pyg}%
+ \DeleteFile[\minted@outputdir]{\minted@jobname.out.pyg}%
+ }%
+ }%
+}
+\endinput
+%%
+%% End of file `minted2.sty'.
diff --git a/Master/texmf-dist/tex/latex/mitthesis/mitthesis.cls b/Master/texmf-dist/tex/latex/mitthesis/mitthesis.cls
index e3643987e33..a41d201f0ea 100644
--- a/Master/texmf-dist/tex/latex/mitthesis/mitthesis.cls
+++ b/Master/texmf-dist/tex/latex/mitthesis/mitthesis.cls
@@ -7,8 +7,8 @@
%% MIT Libraries' requirements as of 2024.
%%
%% This file's version and date:
- \def\versionno{1.12}
- \def\versiondate{2024/07/02\space}
+ \def\versionno{1.16}
+ \def\versiondate{2024/09/06\space}
%%
%% Author: John H. Lienhard, V
%% Department of Mechanical Engineering
@@ -89,6 +89,7 @@
\IfPackageLoadedTF{graphicx}{\define@key{Gin}{alt}{}}{\relax}
}
}
+% Most compatibility commands will be dropped as time goes by ...
%%%%%%%%%%%%%% Options for the class %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -157,22 +158,28 @@
% pdf bookmarks. This is not automatic for \chapter*, which is the format of toc, lof, and lot.
\RequirePackage{etoolbox}% provides \patchcmd
+
\patchcmd{\tableofcontents}{\contentsname}{\pdfbookmark[0]{Table of Contents}{toc}\contentsname}{}{} % placement matters.
-\patchcmd{\listoffigures}{\chapter*{\listfigurename}}{\chapter*{\phantomsection\listfigurename}\addcontentsline{toc}{frontmatter}{\listfigurename}}{}{}
-\patchcmd{\listoftables}{\chapter*{\listtablename}}{\chapter*{\phantomsection\listtablename}\addcontentsline{toc}{frontmatter}{\listtablename}}{}{}
+
+%% Temporary accommodation of latex tagging. Rework once tagging structures have been finalized by LaTeX3 team.
+%% No guarantee that this hack is hierarchically correct.
+%% Current latex-lab places tags around \@schapter, which is harder to deal with here.
+\providecommand*\MakeLinkTarget{\@gobbletwo}
+
+\patchcmd{\listoffigures}{\chapter*{\listfigurename}}{\chapter*{\phantomsection\listfigurename}\MakeLinkTarget[chapter]{}\addcontentsline{toc}{frontmatter}{\listfigurename}}{}{}
+\patchcmd{\listoftables}{\chapter*{\listtablename}}{\chapter*{\phantomsection\listtablename}\MakeLinkTarget[chapter]{}\addcontentsline{toc}{frontmatter}{\listtablename}}{}{}
\NewCommandCopy\l@frontmatter\l@chapter
\NewCommandCopy\l@backmatter\l@chapter
\providecommand*{\toclevel@frontmatter}{0}% prevent warning, see hyperref manual Sec. 13.3
\providecommand*{\toclevel@backmatter}{0}
-%% if you want different formatting for front/back matter, change here (cf. report.cls). This approach preserves tagging hooks.
-\AtBeginDocument{
- \patchcmd{\l@frontmatter}{\bfseries}{\itshape}{}{}
- \patchcmd{\l@frontmatter}{\nobreak\hfil}{\upshape\nobreak\hfil}{}{}
- \patchcmd{\l@frontmatter}{1.0em}{3pt}{}{}
- \patchcmd{\l@backmatter}{\bfseries}{\itshape}{}{}
- \patchcmd{\l@backmatter}{\nobreak\hfil}{\upshape\nobreak\hfil}{}{}
-}
+
+%% if you want different formatting for front/back matter, change here (cf. report.cls).
+\patchcmd{\l@frontmatter}{\bfseries}{\itshape}{}{}
+\patchcmd{\l@frontmatter}{\nobreak\hfil}{\upshape\nobreak\hfil}{}{}
+\patchcmd{\l@frontmatter}{1.0em}{3pt}{}{}
+\patchcmd{\l@backmatter}{\bfseries}{\itshape}{}{}
+\patchcmd{\l@backmatter}{\nobreak\hfil}{\upshape\nobreak\hfil}{}{}
%%%%%%%%%%%%% Geometry, mathtools, graphics, design, fonts, hyperrefs, bookmarks, footnotes %%%%%%%%%%%%%%%%%%%
@@ -294,8 +301,10 @@
%%%%%%%%%%%% PDF bookmark strings %%%%%%%%%%%%%%%%
-%%% Since \bm may be useful in headings, use this fix to reduce frequency with which alternate
-%%% bookmark strings must be given with commands such as \section{ \texorpdfstring{texstring}{pdfstring} }
+%%% By early 2024, \pdfstring removes all robust commands from bookmarks, so that such commands
+%%% don't cause errors; the following pdfstringdisables serve to suppress warnings.
+
+%% \bm may be useful in headings, but let's disable in the associated bookmarks
\pdfstringdefDisableCommands{%
\def\bm#1#{\relax}%
}
@@ -323,7 +332,7 @@
}
%%% Here's a more cumbersome removal of the warning for $ (math shift) in pdfbookmarks.
-%%% Not implementing this by default, since novice authors may benefit from the warning.
+%%% Not implementing this by default, since novice authors may benefit from the warning. :-)
%%% https://tex.stackexchange.com/a/620360/119566
%\let\oldHyPsd@CatcodeWarning\HyPsd@CatcodeWarning
%\renewcommand{\HyPsd@CatcodeWarning}[1]{%
@@ -349,6 +358,10 @@
%%%%%%%%%%%% MACROS FOR HANDLING TITLE AND ABSTRACT PAGES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\AtBeginDocument{
+ \providecommand{\textls}[2][]{#2}% in case microtype is not loaded
+}
+
%%%%%%%%%% Degree Date Module %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\tl_new:N \g__dd_month_tl
@@ -361,18 +374,16 @@
\tl_gremove_all:No \g__dd_month_tl { \space }
\tl_gremove_all:No \g__dd_year_tl { \space }
\str_case_e:nnF
-% { \str_casefold:e { \tl_to_str:N \g__dd_month_tl } } % command not def'd until 2022/10/16
+% { \str_casefold:e { \tl_to_str:N \g__dd_month_tl } } % not def'd until 2022/10/16
{ \str_lowercase:f { \tl_to_str:N \g__dd_month_tl } }
{ {february}{} {may}{} {june}{} {september}{}}
{ \msg_error:nnn { \ClassName } { wrong_month } {#1} }
}
\msg_new:nnnn { \ClassName } { wrong_month } {The\ degree\ month\ must\ be\ one\ of\ February,\ May,\ June,\ or\ September.} {You\ cannot\ use\ #1\ as\ the\ degree\ month.}
-\cs_generate_variant:Nn \text_titlecase_first:n {V}
-\cs_generate_variant:Nn \text_titlecase_all:n {V}
\NewDocumentCommand\DegreeDate{mm}{% {month}{year}
\__dd_setdates:nn {#1}{#2}
- \cs_new:Npn \DegreeMonth { \text_titlecase_first:V { \str_lowercase:f \g__dd_month_tl } }
+ \cs_new:Npn \DegreeMonth { \text_titlecase_first:n { \text_lowercase:n \g__dd_month_tl } }
\cs_new:Npn \DegreeYear { \text_expand:n { \g__dd_year_tl } }% edited 2024/06/24
}
\msg_new:nnnn { \ClassName } { no_degree_date } {Missing\ degree\ date!}{
@@ -443,11 +454,11 @@
\int_incr:N \l__author_autcrcnt_int
\int_while_do:nNnn { \l__author_autcrcnt_int } < { \g_author_authorcnt_int }
{
- \tl_gput_right:Nx \g__author_ca_tl {,\ \seq_item:cn { g_author_name_seq } { \l__author_autcrcnt_int } }
+ \tl_gput_right:Nx \g__author_ca_tl {,~\seq_item:cn { g_author_name_seq } { \l__author_autcrcnt_int } }
\int_incr:N \l__author_autcrcnt_int
}
\int_compare:nNnT { \l__author_autcrcnt_int } = { \g_author_authorcnt_int } {
- \tl_gput_right:Nx \g__author_ca_tl {\ and\ \seq_item:cn { g_author_name_seq } { \l__author_autcrcnt_int } }
+ \tl_gput_right:Nx \g__author_ca_tl {~and~\seq_item:cn { g_author_name_seq } { \l__author_autcrcnt_int } }
}
\tl_set:Nn \l_tmpa_tl {\tl_item:Nn \g__author_ca_tl {-1} }% get last token
\str_case_e:nnT
@@ -455,6 +466,7 @@
{ {.}{} }
{ \__copyright_remove_period:N { \g__author_ca_tl } }% remove last token if it is a period
\__author_pdfcopyrightauthor:
+ \cs_gset:Npe \@author { \tl_use:N \g__author_ca_tl }% 2024/08/06
}
\cs_new:Nn \__copyright_remove_period:N
{
@@ -467,11 +479,11 @@
\int_until_do:nNnn { \l_tmpa_int } = { \g_author_authorcnt_int }
{
\int_incr:N \l_tmpa_int
- \tl_gput_right:Nx \g__author_pdfca_tl {,\ { \seq_item:cn { g_author_name_seq } { \l_tmpa_int } } }
- }
+ \tl_gput_right:Nx \g__author_pdfca_tl {;\ { \seq_item:cn { g_author_name_seq } { \l_tmpa_int } } }
+ % changed comma to semicolon for consistency with Dublin Core metadata format, 2024/08/30
+ }
}
-
\tl_new:N \g__author_namesize_tl
\tl_gset:Nn \g__author_namesize_tl { \large }
\cs_new:Nn \__author_block: {
@@ -568,12 +580,16 @@
% If for some reason you need to change "Thesis Supervisor" to a different string (say, "Doctoral Advisor")
% This construction removes leading and trailing spaces and lowercases the string.
-% Commands in output modules handle titlecasing.
\NewDocumentCommand\SupervisorDesignation{ m } {
- \tl_gset:Nn \g_titlepage_supervisor_designation_tl { \str_lowercase:f { \tl_trim_spaces:n {#1} } }
- \tl_gset:Nn \g_abstract_supervisor_designation_tl { \str_lowercase:f { \tl_trim_spaces:n {#1} } }
+ \tl_gset:Nn \g_titlepage_supervisor_designation_tl
+ { \cs_if_exist:NTF \text_titlecase_all:n % not def'd until 2023/07/08
+ { \text_titlecase_all:n { \text_lowercase:n { \tl_trim_spaces:n {#1} } } }
+ { \tl_trim_spaces:n {#1} }
+ }
+ \tl_gset:Nn \g_abstract_supervisor_designation_tl
+ { \text_titlecase_first:n { \text_lowercase:n { \tl_trim_spaces:n {#1} } } }
}
-
+
\cs_new:Nn \__supervisor_abstractblock: {
\int_zero_new:N \l__supervisor_supervisorno_int
\int_incr:N \l__supervisor_supervisorno_int
@@ -583,12 +599,12 @@
\msg_error:nn { \ClassName } { no_supervisor }
}
{\int_until_do:nNnn { \l__supervisor_supervisorno_int } = { \g_supervisor_supervisorcnt_int } {
- \text_titlecase_first:V { \g_abstract_supervisor_designation_tl } :\space
+ \g_abstract_supervisor_designation_tl :\space
\seq_item:cn { g_supervisor_name_seq } { \l__supervisor_supervisorno_int }\par
Title:\space \seq_item:cn { g_supervisor_title_seq } { \l__supervisor_supervisorno_int }\par\medskip
\int_incr:N \l__supervisor_supervisorno_int
}
- \text_titlecase_first:V { \g_abstract_supervisor_designation_tl } :\space
+ \g_abstract_supervisor_designation_tl :\space
\seq_item:cn { g_supervisor_name_seq } { \l__supervisor_supervisorno_int }\par
Title:\space \seq_item:cn { g_supervisor_title_seq } { \l__supervisor_supervisorno_int }\ignorespaces
}
@@ -629,8 +645,8 @@
{ Missing\ acceptor\ department,\ check\ for\ blank\ in\ \Acceptor{name}{department}{title}\ command. }{
You\ MUST\ provide\ the\ acceptor's\ department\ using\ the\ \Acceptor{name}{department}{title}\ command.}
\msg_new:nnn { \ClassName } { blank_acceptor_title }
- { Missing\ acceptor\ title\ (blank\ in\ \Acceptor{name}{department}{title}\ command).\ Perhaps\ you\ are\ trying\ to\ save\ vertical\ space?\
- You\ can\ put\ the\ acceptor\ title\ into\ department\ field\ instead.\ For\ consistency,\ I\ will\ omit\ titles\ of\ ALL\ acceptors.}
+ { Missing\ acceptor\ title\ (blank\ in\ \Acceptor{name}{department}{title}\ command).\space Perhaps\ you\ are\ trying\ to\ save\ vertical\ space?\space
+ You\ can\ put\ the\ acceptor\ title\ into\ department\ field\ instead.\space For\ consistency,\ I\ will\ omit\ titles\ of\ ALL\ acceptors.}
\cs_new_protected:Nn \__acceptor_data_add:nnn
{
@@ -720,10 +736,10 @@
\ of}
\par
\int_until_do:nNnn { \l__degree_degreeno_int } = { \g_degree_degreecnt_int } {
- \text_uppercase:n {\seq_item:cn { g_degree_name_seq } { \l__degree_degreeno_int }}\par and\par
+ \textls[60]{\text_uppercase:n {\seq_item:cn { g_degree_name_seq } { \l__degree_degreeno_int }}}\par and\par
\int_incr:N \l__degree_degreeno_int
}
- \text_uppercase:n {\seq_item:cn { g_degree_name_seq } { \l__degree_degreeno_int }}\par
+ \textls[60]{\text_uppercase:n {\seq_item:cn { g_degree_name_seq } { \l__degree_degreeno_int }}}\par
}
\msg_new:nnnn { \ClassName } { no_degree }
{ Missing\ degree!\ You\ must\ issue\ the\ \Degree{name}{department}\ command. }{
@@ -748,10 +764,10 @@
\ of}
\par\medskip
\int_until_do:nNnn { \l__degree_degreeno_int } = { \g_degree_degreecnt_int } {
- \text_uppercase:n {\seq_item:cn { g_degree_name_seq } { \l__degree_degreeno_int }}\par and\par
+ \textls[60]{\text_uppercase:n {\seq_item:cn { g_degree_name_seq } { \l__degree_degreeno_int }}}\par and\par
\int_incr:N \l__degree_degreeno_int
}
- \text_uppercase:n {\seq_item:cn { g_degree_name_seq } { \l__degree_degreeno_int }}\par\medskip
+ \textls[60]{\text_uppercase:n {\seq_item:cn { g_degree_name_seq } { \l__degree_degreeno_int }}}\par\medskip
}
%%%%%%%%%% End Degree Module %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -802,8 +818,7 @@
\int_gincr:N \g__signature_supno_int
Certified\ by: \> \seq_item:cn { g_supervisor_name_seq } { \g__signature_supno_int } \\
\> \seq_item:cn { g_supervisor_title_seq } { \g__signature_supno_int },\
- \text_titlecase_all:V { \g_titlepage_supervisor_designation_tl }\\[1em]
- %\ Thesis\ Supervisor\\[1em]
+ \g_titlepage_supervisor_designation_tl \\[1em]
}
\int_compare:nNnF { \g_acceptor_acceptorcnt_int } = {0} {
\int_do_while:nNnn { \g__signature_accno_int } < { \g_acceptor_acceptorcnt_int } {
@@ -889,6 +904,7 @@
\RenewDocumentCommand{\title}{m}
{
\__mitthesis_title:n { #1 }
+ \cs_gset:Npe \@title { \tl_use:N \g_mitthesis_title_tl } % 2024/08/06
\hypersetup{
pdftitle={\g_mitthesis_title_tl},
}
@@ -937,12 +953,12 @@
\tl_gset:Nn \g_copyright_copyrightlicencse_tl
{This\ work\ is\ licensed\ under\ a\ \mbox{\g_copyright_cclicensetext_tl}\ license.\par\g_copyright_mitpermission_tl}
\tl_gset:Nn \g_copyright_pdfrightstext_tl
- {This\ work\ is\ licensed\ under\ a\ \g_copyright_ccname_tl\ license.\ \g_copyright_mitpermission_tl}
+ {This\ work\ is\ licensed\ under\ a\ \g_copyright_ccname_tl\ license.\space \g_copyright_mitpermission_tl}
}{
\tl_gset:Nn \g_copyright_copyrightlicencse_tl
{All\ rights\ reserved. \par\g_copyright_mitpermission_tl}
\tl_gset:Nn \g_copyright_pdfrightstext_tl
- {All\ rights\ reserved.\ \g_copyright_mitpermission_tl}
+ {All\ rights\ reserved.\space \g_copyright_mitpermission_tl}
}
\int_compare:nNnTF {\g_author_authorcnt_int} > {1}
{
@@ -966,12 +982,12 @@
{\Large\textbf{\g_mitthesis_title_tl}
%\phantomsection\addcontentsline{toc}{chapter}{Title\ page}
\par}
- \__titlepage_blockskip:nn {12}{1.5}% new idea
+ \__titlepage_blockskip:nn {12}{1.5}
\__author_block:
\__titlepage_blockskip:nn {12}{1.5}
\__degree_block:
- at\ the\par
- \text_uppercase:n { \g_titlepage_institution_name_tl }\par
+ at~the\par
+ \textls[60]{\text_uppercase:n { \g_titlepage_institution_name_tl }}\par
\DegreeMonth\ \DegreeYear\par
\__titlepage_blockskip:nn {12}{2}
\copyright\space\DegreeYear\space\CopyrightAuthor\@.\c_space_token \g_copyright_copyrightlicencse_tl % \@. in case name ends with III, IV, V,...
@@ -981,7 +997,7 @@
}
}
\hypersetup{
- pdfcopyright={Copyright\ \DegreeYear\ by\ \CopyrightAuthor.\ \g_copyright_pdfrightstext_tl},
+ pdfcopyright={Copyright\ \DegreeYear\ by\ \CopyrightAuthor.\space \g_copyright_pdfrightstext_tl},
pdfauthor={\g__author_pdfca_tl},
pdfcaptionwriter = {\g__author_pdfca_tl},
}
diff --git a/Master/texmf-dist/tex/latex/mlacls/mla.cls b/Master/texmf-dist/tex/latex/mlacls/mla.cls
index 4a3613b4a99..9013a526b88 100644
--- a/Master/texmf-dist/tex/latex/mlacls/mla.cls
+++ b/Master/texmf-dist/tex/latex/mlacls/mla.cls
@@ -23,7 +23,7 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{mla}
- [2021/09/14 v1.0 MLA Paper Class]
+ [2024/09/13 v1.1 MLA Paper Class]
\LoadClass[letterpaper,12pt]{article}
\newcommand{\mladate}{%
@@ -54,6 +54,7 @@
\newif\ifMLA@pageheader
\newif\ifMLA@plainheadings
\newif\ifMLA@fullpage
+\newif\ifMLA@times
\DeclareOption{mla7}{\MLA@seventrue\MLA@eightfalse\MLA@eightaltfalse}
\DeclareOption{mla8}{\MLA@sevenfalse\MLA@eighttrue\MLA@eightaltfalse}
\DeclareOption{mla8alt}{\MLA@sevenfalse\MLA@eightfalse\MLA@eightalttrue}
@@ -71,6 +72,8 @@
\DeclareOption{plainheadings}{\MLA@plainheadingstrue}
\MLA@fullpagefalse
\DeclareOption{fullpage}{\MLA@fullpagetrue}
+\MLA@timestrue
+\DeclareOption{notimes}{\MLA@timesfalse}
\DeclareOption*{%
\ClassWarning{mla}{Unknown option `\CurrentOption'; ignoring}
}
@@ -80,7 +83,6 @@
\RequirePackage{fancyhdr}
\RequirePackage{fullpage}
\RequirePackage{ragged2e}
-\RequirePackage{newtxtext}
\RequirePackage{titlesec}
\RequirePackage{xstring}
\RequirePackage[american]{babel}
@@ -106,6 +108,9 @@
\ifMLA@notes
\RequirePackage{enotez}
\fi
+\ifMLA@times
+ \RequirePackage{newtxtext}
+\fi
\ifMLA@microtype
\RequirePackage{microtype}
\fi
@@ -211,6 +216,18 @@
topsep=0pt,
leftmargin=\parindent
}
+\addtolength{\skip\footins}{1pc}
+\renewcommand{\footnoterule}{%
+ \vfill
+ \kern -3pt\hrule width 0.4\columnwidth
+ \vskip 6pt
+}
+\renewcommand{\@makefnmark}{\@thefnmark}
+\renewcommand{\@makefntext}[1]{%
+ \leftskip 0.5in
+ \parindent -0.5in
+ \@makefnmark.~#1
+}
\renewenvironment{blockquote}{%
\list{}{\leftmargin 0.5in}
\item[]
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncv.cls b/Master/texmf-dist/tex/latex/moderncv/moderncv.cls
index 44b9e359144..20cedc8b615 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncv.cls
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncv.cls
@@ -1,5 +1,5 @@
%% start of file `moderncv.cls'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{moderncv}[2022-02-21 v2.3.1 modern curriculum vitae and letter document class]
+\ProvidesClass{moderncv}[2024-07-18 v2.4.1 modern curriculum vitae and letter document class]
%-------------------------------------------------------------------------------
@@ -103,7 +103,8 @@
\urlstyle{tt}
\AtEndPreamble{
\pagenumbering{arabic}% has to be issued before loading hyperref, as to set \thepage and hence to avoid hyperref issuing a warning and setting pdfpagelabels=false
- \RequirePackage[unicode]{hyperref}% unicode is required for unicode pdf metadata
+ \PassOptionsToPackage{unicode}{hyperref}
+ \RequirePackage{hyperref}
\hypersetup{
breaklinks,
pdfborder = 0 0 0,
@@ -114,10 +115,16 @@
bookmarksopen = true,
bookmarksdepth= 2,% to show sections and subsections
pdfauthor = {\@firstname{}~\@lastname{}},
- pdftitle = {\@firstname{}~\@lastname{}\notblank{\@title}{ -- \@title}{}},
+ pdftitle =
+ {\@firstname{}~\@lastname{}\expandafter\notblank\expandafter{\@title}{ -- \@title}{}}, %\notblank does not expand argument automatically
pdfsubject = {R\'{e}sum\'{e} of \@firstname{}~\@lastname{}},
pdfkeywords = {\@firstname{}~\@lastname{}, curriculum vit\ae{}, r\'{e}sum\'{e}}}}
+% pdftex not using pdfmanagement-testphase requires T1 font encoding in order to handle links containing special characters somewhat properly
+\ifpdftex
+ \IfPDFManagementActiveTF{}{\RequirePackage[T1]{fontenc}}
+\fi
+
% graphics
\RequirePackage{graphicx}
@@ -138,9 +145,9 @@
\@ifundefined{r@lastpage}{}{%
\ifthenelse{\pageref{lastpage}>1}{%
\newlength{\pagenumberwidth}%
- \settowidth{\pagenumberwidth}{\color{color2}\addressfont\itshape\strut\thepage/\pageref{lastpage}}%
+ \settowidth{\pagenumberwidth}{\color{color2}\pagenumberfont\strut\thepage/\pageref{lastpage}}%
\fancypagestyle{plain}{%
- \fancyfoot[r]{\parbox[b]{\pagenumberwidth}{\color{color2}\pagenumberfont\strut\thepage/\pageref{lastpage}}}}% the parbox is required to ensure alignment with a possible center footer (e.g., as in the casual style)
+ \fancyfoot[r]{\parbox[b]{\pagenumberwidth}{\color{color2}\pagenumberfont\strut\thepage/\protect\NoHyper\pageref{lastpage}\protect\endNoHyper}}}% the parbox is required to ensure alignment with a possible center footer (e.g., as in the casual style)
\pagestyle{plain}}{}}\fi}%
\AtEndDocument{\label{lastpage}}}
\pagestyle{plain}
@@ -231,8 +238,9 @@
\newcommand*{\email}[1]{\def\@email{#1}}
% defines one's home page (optional)
-% usage: \homepage{<url>}
-\newcommand*{\homepage}[1]{\def\@homepage{#1}}
+% usage: \homepage[<optional protocol>]{<url>}
+% where <optional protocol> should be either "https" (default) or "http"
+\NewDocumentCommand{\homepage}{O{https}m}{\def\@homepageprotocol{#1}\def\@homepage{#2}}
% adds a fixed/mobile/fax number to one's personal information (optional)
% usage: \phone[<optional type>]{<number>}
@@ -247,11 +255,41 @@
% http://latex.org/forum/viewtopic.php?t=12239
\def\SplitMyMacro#1/#2{#2}
-
-
+
+
% adds a social link to one's personal information (optional)
% usage: \social[<optional type>][<optional url>]{<account name>}
-% where <optional type> should be either "linkedin", "xing", "twitter", "github", "gitlab", "bitbucket" or "skype"
+% where <optional type> should be either:
+% - "linkedin"
+% - "xing"
+% - "twitter"
+% - "mastodon"
+% - "github"
+% - "gitlab"
+% - "stackoverflow"
+% - "bitbucket"
+% - "skype"
+% - "orcid"
+% - "researchgate"
+% - "researcherid"
+% - "telegram"
+% - "whatsapp"
+% - "signal"
+% - "matrix"
+% - "googlescholar"
+% - "codeberg"
+% - "discord"
+% - "twitch"
+% - "youtube"
+% - "tiktok"
+% - "instagram"
+% - "soundcloud"
+% - "steam
+% - "xbox"
+% - "playstation"
+% - "battlenet"
+% - "arxiv"
+% - "inspire"
\collectionnew{socials}
\NewDocumentCommand{\social}{O{}O{}m}{%
\ifthenelse{\equal{#2}{}}%
@@ -259,6 +297,7 @@
\ifthenelse{\equal{#1}{linkedin}} {\collectionadd[linkedin]{socials} {\protect\httpslink[#3]{www.linkedin.com/in/#3}}} {}%
\ifthenelse{\equal{#1}{xing}} {\collectionadd[xing]{socials} {\protect\httpslink[#3]{www.xing.com/profile/#3}}} {}%
\ifthenelse{\equal{#1}{twitter}} {\collectionadd[twitter]{socials} {\protect\httpslink[#3]{twitter.com/#3}}} {}%
+ \ifthenelse{\equal{#1}{mastodon}} {\collectionadd[mastodon]{socials} {\protect\httpslink[#3]{#3}}} {}%
\ifthenelse{\equal{#1}{github}} {\collectionadd[github]{socials} {\protect\httpslink[#3]{github.com/#3}}} {}%
\ifthenelse{\equal{#1}{gitlab}} {\collectionadd[gitlab]{socials} {\protect\httpslink[#3]{gitlab.com/#3}}} {}%
\ifthenelse{\equal{#1}{stackoverflow}}{\collectionadd[stackoverflow]{socials}{\protect\httpslink[#3]{stackoverflow.com/users/#3}}} {}%
@@ -271,7 +310,20 @@
\ifthenelse{\equal{#1}{whatsapp}} {\collectionadd[whatsapp]{socials} {\protect\httpslink[#3]{wa.me/#3}}} {}%
\ifthenelse{\equal{#1}{signal}} {\collectionadd[signal]{socials} {#3}} {}%
\ifthenelse{\equal{#1}{matrix}} {\collectionadd[matrix]{socials} {\httpslink[#3]{matrix.to/\#/#3}}} {}%
- \ifthenelse{\equal{#1}{googlescholar}}{\collectionadd[googlescholar]{socials}{\protect\httpslink[#3]{scholar.google.com/citations?user=#3}}} {}% {}%
+ \ifthenelse{\equal{#1}{googlescholar}}{\collectionadd[googlescholar]{socials}{\protect\httpslink[#3]{scholar.google.com/citations?user=#3}}} {}%
+ \ifthenelse{\equal{#1}{codeberg}} {\collectionadd[codeberg]{socials} {\protect\httpslink[#3]{codeberg.org/#3}}} {}%
+ \ifthenelse{\equal{#1}{discord}} {\collectionadd[discord]{socials} {#3}} {}%
+ \ifthenelse{\equal{#1}{twitch}} {\collectionadd[twitch]{socials} {\protect\httpslink[#3]{twitch.tv/#3}}} {}%
+ \ifthenelse{\equal{#1}{youtube}} {\collectionadd[youtube]{socials} {\protect\httpslink[#3]{youtube.com/#3}}} {}%
+ \ifthenelse{\equal{#1}{tiktok}} {\collectionadd[tiktok]{socials} {\protect\httpslink[#3]{tiktok.com/@#3}}} {}%
+ \ifthenelse{\equal{#1}{instagram}} {\collectionadd[instagram]{socials} {\protect\httpslink[#3]{instagram.com/#3}}} {}%
+ \ifthenelse{\equal{#1}{soundcloud}} {\collectionadd[soundcloud]{socials} {\protect\httpslink[#3]{soundcloud.com/#3}}} {}%
+ \ifthenelse{\equal{#1}{steam}} {\collectionadd[steam]{socials} {\protect\httpslink[#3]{steamcommunity.com/id/#3}}} {}%
+ \ifthenelse{\equal{#1}{xbox}} {\collectionadd[xbox]{socials} {\protect\httpslink[#3]{account.xbox.com/profile?gamertag=#3}}} {}%
+ \ifthenelse{\equal{#1}{playstation}} {\collectionadd[playstation]{socials} {#3}} {}%
+ \ifthenelse{\equal{#1}{battlenet}} {\collectionadd[battlenet]{socials} {#3}} {}%
+ \ifthenelse{\equal{#1}{arxiv}} {\collectionadd[arxiv]{socials} {\protect\httpslink[#3]{arxiv.org/a/#3}}} {}%
+ \ifthenelse{\equal{#1}{inspire}} {\collectionadd[inspire]{socials} {\protect\httpslink[#3]{inspirehep.net/authoris/#3}}} {}%
}
{\collectionadd[#1]{socials}{\protect\httpslink[#3]{#2}}}}%
@@ -312,6 +364,7 @@
\newcommand*{\linkedinsocialsymbol} {}
\newcommand*{\xingsocialsymbol} {}
\newcommand*{\twittersocialsymbol} {}
+\newcommand*{\mastodonsocialsymbol} {}
\newcommand*{\githubsocialsymbol} {}
\newcommand*{\gitlabsocialsymbol} {}
\newcommand*{\stackoverflowsocialsymbol}{}
@@ -325,6 +378,19 @@
\newcommand*{\whatsappsocialsymbol} {}
\newcommand*{\matrixsocialsymbol} {}
\newcommand*{\signalsocialsymbol} {}
+\newcommand*{\codebergsocialsymbol} {}
+\newcommand*{\discordsocialsymbol} {}
+\newcommand*{\twitchsocialsymbol} {}
+\newcommand*{\youtubesocialsymbol} {}
+\newcommand*{\tiktoksocialsymbol} {}
+\newcommand*{\instagramsocialsymbol} {}
+\newcommand*{\soundcloudsocialsymbol} {}
+\newcommand*{\steamsocialsymbol} {}
+\newcommand*{\xboxsocialsymbol} {}
+\newcommand*{\playstationsocialsymbol} {}
+\newcommand*{\battlenetsocialsymbol} {}
+\newcommand*{\arxivsocialsymbol} {}
+\newcommand*{\inspiresocialsymbol} {}
% other
%------
@@ -441,6 +507,8 @@
% styles
\newcommand*{\namestyle}[1]{{\namefont#1}}
+\NewDocumentCommand{\firstnamestyle}{+m}{{\namefont#1}}
+\NewDocumentCommand{\lastnamestyle}{+m}{{\namefont#1}}
\newcommand*{\titlestyle}[1]{{\titlefont#1}}
\newcommand*{\addressstyle}[1]{{\addressfont#1}}
\newcommand*{\quotestyle}[1]{{\quotefont#1}}
@@ -492,12 +560,16 @@
% usage: \cvdoubleitem[spacing]{header1}{text1}{header2}{text2}
\newcommand*{\cvdoubleitem}[5][.25em]{}
+% makes a resume line 3 headers and their corresponding text
+% usage: \cvtripleitem[spacing]{header1}{text1}{header2}{text2}{header3}{text3}
+\newcommand*{\cvtripleitem}[7][.1em]{}
+
% makes a resume line with a list item
-% usage: \cvlistitem[label]{item}
+% usage: \cvlistitem[spacing]{item}
\newcommand*{\cvlistitem}[2][\listitemsymbol]{}
% makes a resume line with 2 list items
-% usage: \cvlistdoubleitem[label]{item1}{item2}
+% usage: \cvlistdoubleitem[spacing]{item1}{item2}
\newcommand*{\cvlistdoubleitem}[3][\listitemsymbol]{}
% makes a typical resume job / education entry
@@ -510,25 +582,39 @@
% makes a generic hyperlink
% usage: \link[optional text]{link}
-\newcommand*{\link}[2][]{%
- \ifthenelse{\equal{#1}{}}%
- {\href{#2}{#2}}%
- {\href{#2}{#1}}}
+% uses pdfmanagement-testphase when available, which provides url encoding of special characters
+\NewDocumentCommand{\link}{O{}m}{%
+ \IfPDFManagementActiveTF{%
+ \ifthenelse{\equal{#1}{}}%
+ {\hrefurl[urlencode]{#2}{#2}}%
+ {\hrefurl[urlencode]{#2}{#1}}}{%
+ \ifthenelse{\equal{#1}{}}%
+ {\href{#2}{#2}}%
+ {\href{#2}{#1}}}}
% makes a http hyperlink
% usage: \httplink[optional text]{link}
-\newcommand*{\httplink}[2][]{%
- \ifthenelse{\equal{#1}{}}%
- {\href{http://#2}{#2}}%
- {\href{http://#2}{#1}}}
-
+% uses pdfmanagement-testphase when available, which provides url encoding of special characters
+\NewDocumentCommand{\httplink}{O{}m}{%
+ \IfPDFManagementActiveTF{%
+ \ifthenelse{\equal{#1}{}}%
+ {\hrefurl[urlencode]{http://#2}{#2}}%
+ {\hrefurl[urlencode]{http://#2}{#1}}}{%
+ \ifthenelse{\equal{#1}{}}%
+ {\href{http://#2}{#2}}%
+ {\href{http://#2}{#1}}}}
% makes an https hyperlink
% usage: \httpslink[optional text]{link}
-\newcommand*{\httpslink}[2][]{%
- \ifthenelse{\equal{#1}{}}%
- {\href{https://#2}{#2}}%
- {\href{https://#2}{#1}}}
+% uses pdfmanagement-testphase when available, which provides url encoding of special characters
+\NewDocumentCommand{\httpslink}{O{}m}{%
+ \IfPDFManagementActiveTF{%
+ \ifthenelse{\equal{#1}{}}%
+ {\hrefurl[urlencode]{https://#2}{#2}}%
+ {\hrefurl[urlencode]{https://#2}{#1}}}{%
+ \ifthenelse{\equal{#1}{}}%
+ {\href{https://#2}{#2}}%
+ {\href{https://#2}{#1}}}}
% makes an email hyperlink
% usage: \emaillink[optional text]{link}
@@ -712,8 +798,10 @@
% elements
\newcommand*{\recipient}[2]{\def\@recipientname{#1}\def\@recipientaddress{#2}}
\renewcommand*{\date}[1]{\def\@date{#1}}\date{\today}
+\newcommand*{\subject}[1]{\def\@subject{#1}}
\newcommand*{\opening}[1]{\def\@opening{#1}}
\newcommand*{\closing}[1]{\def\@closing{#1}}
+\newcommand*{\signature}[2]{\def\@signature{\includegraphics[scale=#1]{#2}}}
\newcommand*{\enclosure}[2][]{%
% if an optional argument is provided, use it to redefine \enclname
\ifthenelse{\equal{#1}{}}{}{\renewcommand*{\enclname}{#1}}%
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvbodyi.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvbodyi.sty
index 02ac2e3aa54..d3db954fef9 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvbodyi.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvbodyi.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvbodyi.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,13 +10,13 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvbodyi}[2022-02-21 v2.3.1 modern curriculum vitae and letter body variant: 1]
+\ProvidesPackage{moderncvbodyi}[2024-07-18 v2.4.1 modern curriculum vitae and letter body variant: 1]
%-------------------------------------------------------------------------------
% required packages
%-------------------------------------------------------------------------------
-% provides the commands for the skillmatrix as well as the command
+% provides the commands for the skillmatrix as well as the command
% \recompute@cvskillmatrix@lengths
\RequirePackage[moderncvbodyi]{moderncvskillmatrix}
@@ -29,9 +29,9 @@
\renewcommand*{\hintfont}{}
% styles
-\renewcommand*{\sectionstyle}[1]{{\sectionfont\textcolor{color1}{#1}}}
-\renewcommand*{\subsectionstyle}[1]{{\subsectionfont\textcolor{color1}{#1}}}
-\renewcommand*{\hintstyle}[1]{{\hintfont\textcolor{color0}{#1}}}
+\renewcommand*{\sectionstyle}[1]{{\sectionfont\textcolor{sectioncolor}{#1}}}
+\renewcommand*{\subsectionstyle}[1]{{\subsectionfont\textcolor{subsectioncolor}{#1}}}
+\renewcommand*{\hintstyle}[1]{{\hintfont\textcolor{hintstylecolor}{#1}}}
%-------------------------------------------------------------------------------
@@ -44,11 +44,14 @@
\@initializelength{\maincolumnwidth}
% used by \cvdoubleitem
\@initializelength{\doubleitemcolumnwidth}
+% used by \cvtripleitem
+\@initializelength{\tripleitemcolumnwidth}
% used by \cvlistitem
\@initializelength{\listitemsymbolwidth} \settowidth{\listitemsymbolwidth}{\listitemsymbol}
\@initializelength{\listitemcolumnwidth}
% used by \cvlistdoubleitem
\@initializelength{\listdoubleitemcolumnwidth}
+\@initializelength{\listitemsymbolspace} \setlength{\listitemsymbolspace}{0pt}
% default moderncv \photo (change the definition such that by default the photo and its box align with the section bars
\RenewDocumentCommand{\photo}{O{\hintscolumnwidth-0.8pt-2\fboxsep}O{0.4pt}m}{\def\@photowidth{#1}\def\@photoframewidth{#2}\def\@photo{#3}}%
@@ -59,6 +62,8 @@
\setlength{\listitemcolumnwidth}{\maincolumnwidth-\listitemsymbolwidth}%
\setlength{\doubleitemcolumnwidth}{\maincolumnwidth-\hintscolumnwidth-\separatorcolumnwidth-\separatorcolumnwidth}%
\setlength{\doubleitemcolumnwidth}{0.5\doubleitemcolumnwidth}%
+ \setlength{\tripleitemcolumnwidth}{\maincolumnwidth-2\hintscolumnwidth-3\separatorcolumnwidth}%
+ \setlength{\tripleitemcolumnwidth}{0.33\tripleitemcolumnwidth}%
\setlength{\listdoubleitemcolumnwidth}{\maincolumnwidth-\listitemsymbolwidth-\separatorcolumnwidth-\listitemsymbolwidth}%
\setlength{\listdoubleitemcolumnwidth}{0.5\listdoubleitemcolumnwidth}%
\recompute@cvskillmatrix@lengths
@@ -73,7 +78,7 @@
\par\addvspace{2.5ex}%
\phantomsection{}% reset the anchor for hyperrefs
\addcontentsline{toc}{section}{#2}%
- \cvitem[0ex]{\strut\raggedleft\raisebox{\baseletterheight}{\color{color1}\rule{\hintscolumnwidth}{0.95ex}}}{\strut\sectionstyle{#2}}%
+ \cvitem[0ex]{\strut\raggedleft\raisebox{\baseletterheight}{\color{bodyrulecolor}\rule{\hintscolumnwidth}{0.95ex}}}{\strut\sectionstyle{#2}}%
\par\nobreak\addvspace{1ex}\@afterheading}% to avoid a pagebreak after the heading
\RenewDocumentCommand{\subsection}{sm}{%
@@ -97,15 +102,28 @@
\hspace*{\separatorcolumnwidth}%
\begin{minipage}[t]{\doubleitemcolumnwidth}#5\end{minipage}}}
+\renewcommand*{\cvtripleitem}[7][.1em]{%
+ \cvitem[#1]{#2}{%
+ \begin{minipage}[t]{\tripleitemcolumnwidth}#3\end{minipage}%
+ \hfill% fill of \separatorcolumnwidth
+ \begin{minipage}[t]{\hintscolumnwidth}\raggedleft\hintstyle{#4}\end{minipage}%
+ \hspace*{\separatorcolumnwidth}%
+ \begin{minipage}[t]{\tripleitemcolumnwidth}#5\end{minipage}%
+ \hspace*{\separatorcolumnwidth}%
+ \begin{minipage}[t]{\hintscolumnwidth}\raggedleft\hintstyle{#6}\end{minipage}%
+ \hspace*{\separatorcolumnwidth}%
+ \begin{minipage}[t]{\tripleitemcolumnwidth}#7\end{minipage}}}
+
+
\renewcommand*{\cvlistitem}[2][.25em]{%
- \cvitem[#1]{}{\listitemsymbol\begin{minipage}[t]{\listitemcolumnwidth}#2\end{minipage}}}
+ \cvitem[#1]{}{\listitemsymbol\hspace{\listitemsymbolspace}\begin{minipage}[t]{\listitemcolumnwidth-\listitemsymbolspace}#2\end{minipage}}}
\renewcommand*{\cvlistdoubleitem}[3][.25em]{%
- \cvitem[#1]{}{\listitemsymbol\begin{minipage}[t]{\listdoubleitemcolumnwidth}#2\end{minipage}%
+ \cvitem[#1]{}{\listitemsymbol\hspace{\listitemsymbolspace}\begin{minipage}[t]{\listdoubleitemcolumnwidth-\listitemsymbolspace}#2\end{minipage}%
\hfill% fill of \separatorcolumnwidth
\ifthenelse{\equal{#3}{}}%
{}%
- {\listitemsymbol\begin{minipage}[t]{\listdoubleitemcolumnwidth}#3\end{minipage}}}}
+ {\listitemsymbol\hspace{\listitemsymbolspace}\begin{minipage}[t]{\listdoubleitemcolumnwidth-\listitemsymbolspace}#3\end{minipage}}}}
\renewcommand*{\cventry}[7][.25em]{%
\cvitem[#1]{#2}{%
@@ -162,13 +180,14 @@
\recomputecvlengths%
\setlength{\parskip}{6\p@}}
-\renewcommand*{\makeletterclosing}{
- \@closing\\[3em]%
+\renewcommand*{\makeletterclosing}{%
+ \@closing\ifthenelse{\isundefined{\@signature}}{\\[3em]}{\\[1em]}% shrink space when signature is set
+ \ifthenelse{\isundefined{\@signature}}{}{{\@signature\\}}
{\bfseries\@firstname~\@lastname}%
\ifthenelse{\isundefined{\@enclosure}}{}{%
\\%
\vfil%
- {\color{color2}\itshape\enclname: \@enclosure}}%
+ {\color{letterclosingcolor}\itshape\enclname: \@enclosure}}%
\vfil}
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvbodyii.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvbodyii.sty
index 02ac2e3aa54..d3db954fef9 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvbodyii.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvbodyii.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvbodyi.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,13 +10,13 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvbodyi}[2022-02-21 v2.3.1 modern curriculum vitae and letter body variant: 1]
+\ProvidesPackage{moderncvbodyi}[2024-07-18 v2.4.1 modern curriculum vitae and letter body variant: 1]
%-------------------------------------------------------------------------------
% required packages
%-------------------------------------------------------------------------------
-% provides the commands for the skillmatrix as well as the command
+% provides the commands for the skillmatrix as well as the command
% \recompute@cvskillmatrix@lengths
\RequirePackage[moderncvbodyi]{moderncvskillmatrix}
@@ -29,9 +29,9 @@
\renewcommand*{\hintfont}{}
% styles
-\renewcommand*{\sectionstyle}[1]{{\sectionfont\textcolor{color1}{#1}}}
-\renewcommand*{\subsectionstyle}[1]{{\subsectionfont\textcolor{color1}{#1}}}
-\renewcommand*{\hintstyle}[1]{{\hintfont\textcolor{color0}{#1}}}
+\renewcommand*{\sectionstyle}[1]{{\sectionfont\textcolor{sectioncolor}{#1}}}
+\renewcommand*{\subsectionstyle}[1]{{\subsectionfont\textcolor{subsectioncolor}{#1}}}
+\renewcommand*{\hintstyle}[1]{{\hintfont\textcolor{hintstylecolor}{#1}}}
%-------------------------------------------------------------------------------
@@ -44,11 +44,14 @@
\@initializelength{\maincolumnwidth}
% used by \cvdoubleitem
\@initializelength{\doubleitemcolumnwidth}
+% used by \cvtripleitem
+\@initializelength{\tripleitemcolumnwidth}
% used by \cvlistitem
\@initializelength{\listitemsymbolwidth} \settowidth{\listitemsymbolwidth}{\listitemsymbol}
\@initializelength{\listitemcolumnwidth}
% used by \cvlistdoubleitem
\@initializelength{\listdoubleitemcolumnwidth}
+\@initializelength{\listitemsymbolspace} \setlength{\listitemsymbolspace}{0pt}
% default moderncv \photo (change the definition such that by default the photo and its box align with the section bars
\RenewDocumentCommand{\photo}{O{\hintscolumnwidth-0.8pt-2\fboxsep}O{0.4pt}m}{\def\@photowidth{#1}\def\@photoframewidth{#2}\def\@photo{#3}}%
@@ -59,6 +62,8 @@
\setlength{\listitemcolumnwidth}{\maincolumnwidth-\listitemsymbolwidth}%
\setlength{\doubleitemcolumnwidth}{\maincolumnwidth-\hintscolumnwidth-\separatorcolumnwidth-\separatorcolumnwidth}%
\setlength{\doubleitemcolumnwidth}{0.5\doubleitemcolumnwidth}%
+ \setlength{\tripleitemcolumnwidth}{\maincolumnwidth-2\hintscolumnwidth-3\separatorcolumnwidth}%
+ \setlength{\tripleitemcolumnwidth}{0.33\tripleitemcolumnwidth}%
\setlength{\listdoubleitemcolumnwidth}{\maincolumnwidth-\listitemsymbolwidth-\separatorcolumnwidth-\listitemsymbolwidth}%
\setlength{\listdoubleitemcolumnwidth}{0.5\listdoubleitemcolumnwidth}%
\recompute@cvskillmatrix@lengths
@@ -73,7 +78,7 @@
\par\addvspace{2.5ex}%
\phantomsection{}% reset the anchor for hyperrefs
\addcontentsline{toc}{section}{#2}%
- \cvitem[0ex]{\strut\raggedleft\raisebox{\baseletterheight}{\color{color1}\rule{\hintscolumnwidth}{0.95ex}}}{\strut\sectionstyle{#2}}%
+ \cvitem[0ex]{\strut\raggedleft\raisebox{\baseletterheight}{\color{bodyrulecolor}\rule{\hintscolumnwidth}{0.95ex}}}{\strut\sectionstyle{#2}}%
\par\nobreak\addvspace{1ex}\@afterheading}% to avoid a pagebreak after the heading
\RenewDocumentCommand{\subsection}{sm}{%
@@ -97,15 +102,28 @@
\hspace*{\separatorcolumnwidth}%
\begin{minipage}[t]{\doubleitemcolumnwidth}#5\end{minipage}}}
+\renewcommand*{\cvtripleitem}[7][.1em]{%
+ \cvitem[#1]{#2}{%
+ \begin{minipage}[t]{\tripleitemcolumnwidth}#3\end{minipage}%
+ \hfill% fill of \separatorcolumnwidth
+ \begin{minipage}[t]{\hintscolumnwidth}\raggedleft\hintstyle{#4}\end{minipage}%
+ \hspace*{\separatorcolumnwidth}%
+ \begin{minipage}[t]{\tripleitemcolumnwidth}#5\end{minipage}%
+ \hspace*{\separatorcolumnwidth}%
+ \begin{minipage}[t]{\hintscolumnwidth}\raggedleft\hintstyle{#6}\end{minipage}%
+ \hspace*{\separatorcolumnwidth}%
+ \begin{minipage}[t]{\tripleitemcolumnwidth}#7\end{minipage}}}
+
+
\renewcommand*{\cvlistitem}[2][.25em]{%
- \cvitem[#1]{}{\listitemsymbol\begin{minipage}[t]{\listitemcolumnwidth}#2\end{minipage}}}
+ \cvitem[#1]{}{\listitemsymbol\hspace{\listitemsymbolspace}\begin{minipage}[t]{\listitemcolumnwidth-\listitemsymbolspace}#2\end{minipage}}}
\renewcommand*{\cvlistdoubleitem}[3][.25em]{%
- \cvitem[#1]{}{\listitemsymbol\begin{minipage}[t]{\listdoubleitemcolumnwidth}#2\end{minipage}%
+ \cvitem[#1]{}{\listitemsymbol\hspace{\listitemsymbolspace}\begin{minipage}[t]{\listdoubleitemcolumnwidth-\listitemsymbolspace}#2\end{minipage}%
\hfill% fill of \separatorcolumnwidth
\ifthenelse{\equal{#3}{}}%
{}%
- {\listitemsymbol\begin{minipage}[t]{\listdoubleitemcolumnwidth}#3\end{minipage}}}}
+ {\listitemsymbol\hspace{\listitemsymbolspace}\begin{minipage}[t]{\listdoubleitemcolumnwidth-\listitemsymbolspace}#3\end{minipage}}}}
\renewcommand*{\cventry}[7][.25em]{%
\cvitem[#1]{#2}{%
@@ -162,13 +180,14 @@
\recomputecvlengths%
\setlength{\parskip}{6\p@}}
-\renewcommand*{\makeletterclosing}{
- \@closing\\[3em]%
+\renewcommand*{\makeletterclosing}{%
+ \@closing\ifthenelse{\isundefined{\@signature}}{\\[3em]}{\\[1em]}% shrink space when signature is set
+ \ifthenelse{\isundefined{\@signature}}{}{{\@signature\\}}
{\bfseries\@firstname~\@lastname}%
\ifthenelse{\isundefined{\@enclosure}}{}{%
\\%
\vfil%
- {\color{color2}\itshape\enclname: \@enclosure}}%
+ {\color{letterclosingcolor}\itshape\enclname: \@enclosure}}%
\vfil}
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvbodyiii.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvbodyiii.sty
index 003f9f3e1b0..37d8d132009 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvbodyiii.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvbodyiii.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvbodyiii.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvbodyiii}[2022-02-21 v2.3.1 modern curriculum vitae and letter body variant: 3]
+\ProvidesPackage{moderncvbodyiii}[2024-07-18 v2.4.1 modern curriculum vitae and letter body variant: 3]
% rules type options: "fullrules", "shortrules", "mixedrules" (default) or "norules"
\@initializeif{\if@fullrules}\@fullrulesfalse
@@ -37,7 +37,7 @@
%-------------------------------------------------------------------------------
% required packages
%-------------------------------------------------------------------------------
-% provides the commands for the skillmatrix as well as the command
+% provides the commands for the skillmatrix as well as the command
% \recompute@cvskillmatrix@lengths
\RequirePackage[moderncvbodyiii]{moderncvskillmatrix}
@@ -61,16 +61,16 @@
\renewcommand*{\sectionstyle}[1]{{%
\if@center\centering\else%
\if@right\raggedleft\fi\fi%
- \sectionfont\textcolor{color1}{#1}%
+ \sectionfont\textcolor{sectioncolor}{#1}%
\if@shortrules\else%
\par\fi}}
\renewcommand*{\subsectionstyle}[1]{{%
\if@center\centering\else%
\if@right\raggedleft\fi\fi%
- \subsectionfont\textcolor{color1}{#1}%
+ \subsectionfont\textcolor{subsectioncolor}{#1}%
\if@shortrules\else\if@mixedrules\else%
\par\fi\fi}}
-\renewcommand*{\hintstyle}[1]{{\hintfont\textcolor{color0}{#1}}}
+\renewcommand*{\hintstyle}[1]{{\hintfont\textcolor{hintstylecolor}{#1}}}
%-------------------------------------------------------------------------------
@@ -83,11 +83,14 @@
\@initializelength{\maincolumnwidth}
% used by \cvdoubleitem
\@initializelength{\doubleitemcolumnwidth}
+% used by \cvtripleitem
+\@initializelength{\tripleitemcolumnwidth}
% used by \cvlistitem
\@initializelength{\listitemsymbolwidth} \settowidth{\listitemsymbolwidth}{\listitemsymbol}
\@initializelength{\listitemcolumnwidth}
% used by \cvlistdoubleitem
\@initializelength{\listdoubleitemcolumnwidth}
+\@initializelength{\listitemsymbolspace} \setlength{\listitemsymbolspace}{0pt}
% commands
\renewcommand*{\recomputecvbodylengths}{%
@@ -96,6 +99,8 @@
\setlength{\listitemcolumnwidth}{\maincolumnwidth-\listitemsymbolwidth}%
\setlength{\doubleitemcolumnwidth}{\maincolumnwidth-\separatorcolumnwidth}%
\setlength{\doubleitemcolumnwidth}{0.5\doubleitemcolumnwidth}%
+ \setlength{\tripleitemcolumnwidth}{\maincolumnwidth-2\separatorcolumnwidth}%
+ \setlength{\tripleitemcolumnwidth}{0.33\tripleitemcolumnwidth}%
\setlength{\listdoubleitemcolumnwidth}{\maincolumnwidth-\listitemsymbolwidth-\separatorcolumnwidth-\listitemsymbolwidth}%
\setlength{\listdoubleitemcolumnwidth}{0.5\listdoubleitemcolumnwidth}%
\recompute@cvskillmatrix@lengths
@@ -133,14 +138,14 @@
\newcommand*{\sectionrule}{}
\newcommand*{\subsectionrule}{}
\if@fullrules%
- \renewcommand*{\sectionrule}{\par\nobreak\vspace*{-.7\baselineskip}\leavevmode{\color{color1}\leaders\hbox{\rule{1pt}{0.4pt}}\hfill\kern0pt}}
- \renewcommand*{\subsectionrule}{\par\nobreak\vspace*{-.7\baselineskip}\leavevmode{\color{color1}\xleaders\hbox to 0.35em{\scriptsize.}\hfill}}\fi% different subsectionrules will not be perfectly aligned, but remaining space at the end of the fill will be distributed evenly between leaders, so it will be barely visible}
+ \renewcommand*{\sectionrule}{\par\nobreak\vspace*{-.7\baselineskip}\leavevmode{\color{bodyrulecolor}\leaders\hbox{\rule{1pt}{0.4pt}}\hfill\kern0pt}}
+ \renewcommand*{\subsectionrule}{\par\nobreak\vspace*{-.7\baselineskip}\leavevmode{\color{bodyrulecolor}\xleaders\hbox to 0.35em{\scriptsize.}\hfill}}\fi% different subsectionrules will not be perfectly aligned, but remaining space at the end of the fill will be distributed evenly between leaders, so it will be barely visible}
\if@shortrules%
- \renewcommand*{\sectionrule}{\leavevmode{\color{color1}\leaders\hbox{\rule{1pt}{0.4pt}}\hfill\kern0pt}}
- \renewcommand*{\subsectionrule}{\leavevmode{\color{color1}\xleaders\hbox to 0.35em{\scriptsize.}\hfill}}\fi% different subsectionrules will not be perfectly aligned, but remaining space at the end of the fill will be distributed evenly between leaders, so it will be barely visible}}
+ \renewcommand*{\sectionrule}{\leavevmode{\color{bodyrulecolor}\leaders\hbox{\rule{1pt}{0.4pt}}\hfill\kern0pt}}
+ \renewcommand*{\subsectionrule}{\leavevmode{\color{bodyrulecolor}\xleaders\hbox to 0.35em{\scriptsize.}\hfill}}\fi% different subsectionrules will not be perfectly aligned, but remaining space at the end of the fill will be distributed evenly between leaders, so it will be barely visible}}
\if@mixedrules%
- \renewcommand*{\sectionrule}{\par\nobreak\vspace*{-.7\baselineskip}\leavevmode{\color{color1}\leaders\hbox{\rule{1pt}{0.4pt}}\hfill\kern0pt}}
- \renewcommand*{\subsectionrule}{\leavevmode{\color{color1}\xleaders\hbox to 0.35em{\scriptsize.}\hfill}}\fi% different subsectionrules will not be perfectly aligned, but remaining space at the end of the fill will be distributed evenly between leaders, so it will be barely visible}}
+ \renewcommand*{\sectionrule}{\par\nobreak\vspace*{-.7\baselineskip}\leavevmode{\color{bodyrulecolor}\leaders\hbox{\rule{1pt}{0.4pt}}\hfill\kern0pt}}
+ \renewcommand*{\subsectionrule}{\leavevmode{\color{bodyrulecolor}\xleaders\hbox to 0.35em{\scriptsize.}\hfill}}\fi% different subsectionrules will not be perfectly aligned, but remaining space at the end of the fill will be distributed evenly between leaders, so it will be barely visible}}
\if@norules%
\renewcommand*{\sectionrule}{}
\renewcommand*{\subsectionrule}{}\fi
@@ -155,16 +160,24 @@
\begin{minipage}[t]{\doubleitemcolumnwidth}\ifstrempty{#4}{}{\hintstyle{#4}: }#5\end{minipage}%
\par\addvspace{#1}}
+\renewcommand*{\cvtripleitem}[7][.1em]{%
+ \begin{minipage}[t]{\tripleitemcolumnwidth}\hintstyle{#2}: #3\end{minipage}%
+ \hfill% fill of \separatorcolumnwidth
+ \begin{minipage}[t]{\tripleitemcolumnwidth}\hintstyle{#4}: #5\end{minipage}%
+ \hfill% fill of \separatorcolumnwidth
+ \begin{minipage}[t]{\tripleitemcolumnwidth}\ifstrempty{#6}{}{\hintstyle{#6}: }#7\end{minipage}%
+ \par\addvspace{#1}}
+
\renewcommand*{\cvlistitem}[2][.25em]{%
- \listitemsymbol\begin{minipage}[t]{\listitemcolumnwidth}#2\end{minipage}%
+ \listitemsymbol\hspace{\listitemsymbolspace}\begin{minipage}[t]{\listitemcolumnwidth-\listitemsymbolspace}#2\end{minipage}%
\par\addvspace{#1}}
\renewcommand*{\cvlistdoubleitem}[3][.25em]{%
- \cvitem[#1]{}{\listitemsymbol\begin{minipage}[t]{\listdoubleitemcolumnwidth}#2\end{minipage}%
+ \cvitem[#1]{}{\listitemsymbol\hspace{\listitemsymbolspace}\begin{minipage}[t]{\listdoubleitemcolumnwidth-\listitemsymbolspace}#2\end{minipage}%
\hfill% fill of \separatorcolumnwidth
\ifstrempty{#3}%
{}%
- {\listitemsymbol\begin{minipage}[t]{\listdoubleitemcolumnwidth}#3\end{minipage}}}}
+ {\listitemsymbol\hspace{\listitemsymbolspace}\begin{minipage}[t]{\listdoubleitemcolumnwidth-\listitemsymbolspace}#3\end{minipage}}}}
\renewcommand*{\cventry}[7][.25em]{
\begin{tabular*}{\maincolumnwidth}{l@{\extracolsep{\fill}}r}%
@@ -231,13 +244,14 @@
\recomputecvbodylengths%
\setlength{\parskip}{6\p@}}
-\renewcommand*{\makeletterclosing}{
- \@closing\\[3em]%
+\renewcommand*{\makeletterclosing}{%
+ \@closing\ifthenelse{\isundefined{\@signature}}{\\[3em]}{\\[1em]}% shrink space when signature is set
+ \ifthenelse{\isundefined{\@signature}}{}{{\@signature\\}}
{\bfseries\@firstname~\@lastname}%
\ifthenelse{\isundefined{\@enclosure}}{}{%
\\%
\vfil%
- {\color{color2}\itshape\enclname: \@enclosure}}%
+ {\color{letterclosingcolor}\itshape\enclname: \@enclosure}}%
\vfil}
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvbodyiv.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvbodyiv.sty
index 9127af18e8c..0d9fe6fb877 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvbodyiv.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvbodyiv.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvbodyiv.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,13 +10,13 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvbodyiv}[2022-02-21 v2.3.1 modern curriculum vitae and letter body variant: 4]
+\ProvidesPackage{moderncvbodyiv}[2024-07-18 v2.4.1 modern curriculum vitae and letter body variant: 4]
%-------------------------------------------------------------------------------
% required packages
%-------------------------------------------------------------------------------
-% provides the commands for the skillmatrix as well as the command
+% provides the commands for the skillmatrix as well as the command
% \recompute@cvskillmatrix@lengths
\RequirePackage[moderncvbodyiv]{moderncvskillmatrix}
@@ -29,9 +29,9 @@
\renewcommand*{\hintfont}{\bfseries}
% styles
-\renewcommand*{\sectionstyle}[1]{{\sectionfont\textcolor{color1}{#1}}}
-\renewcommand*{\subsectionstyle}[1]{{\subsectionfont\textcolor{color1}{#1}}}
-\renewcommand*{\hintstyle}[1]{{\hintfont\textcolor{color0}{#1}}}
+\renewcommand*{\sectionstyle}[1]{{\sectionfont\textcolor{sectioncolor}{#1}}}
+\renewcommand*{\subsectionstyle}[1]{{\subsectionfont\textcolor{subsectioncolor}{#1}}}
+\renewcommand*{\hintstyle}[1]{{\hintfont\textcolor{hintstylecolor}{#1}}}
%-------------------------------------------------------------------------------
@@ -49,6 +49,10 @@
\@initializelength{\listitemcolumnwidth}
% used by \cvlistdoubleitem
\@initializelength{\listdoubleitemcolumnwidth}
+% used by \cvtripleitem
+\@initializelength{\tripleitemcolumnwidth}
+\@initializelength{\listitemsymbolspace} \setlength{\listitemsymbolspace}{0pt}
+
% commands
\renewcommand*{\recomputecvbodylengths}{%
@@ -57,6 +61,8 @@
\setlength{\listitemcolumnwidth}{\maincolumnwidth-\listitemsymbolwidth}%
\setlength{\doubleitemcolumnwidth}{\maincolumnwidth-\separatorcolumnwidth}%
\setlength{\doubleitemcolumnwidth}{0.5\doubleitemcolumnwidth}%
+ \setlength{\tripleitemcolumnwidth}{\maincolumnwidth-2\separatorcolumnwidth}%
+ \setlength{\tripleitemcolumnwidth}{0.33\tripleitemcolumnwidth}%
\setlength{\listdoubleitemcolumnwidth}{\maincolumnwidth-\listitemsymbolwidth-\separatorcolumnwidth-\listitemsymbolwidth}%
\setlength{\listdoubleitemcolumnwidth}{0.5\listdoubleitemcolumnwidth}%
\recompute@cvskillmatrix@lengths
@@ -87,15 +93,23 @@
\begin{minipage}[t]{\doubleitemcolumnwidth}\ifthenelse{\equal{#4}{}}{}{\hintstyle{#4}: }#5\end{minipage}%
\par\addvspace{#1}}
+\renewcommand*{\cvtripleitem}[7][.1em]{%
+ \begin{minipage}[t]{\tripleitemcolumnwidth}\hintstyle{#2}: #3\end{minipage}%
+ \hfill% fill of \separatorcolumnwidth
+ \begin{minipage}[t]{\tripleitemcolumnwidth}\hintstyle{#4}: #5\end{minipage}%
+ \hfill% fill of \separatorcolumnwidth
+ \begin{minipage}[t]{\tripleitemcolumnwidth}\ifthenelse{\equal{#6}{}}{}{\hintstyle{#6}: }#7\end{minipage}%
+ \par\addvspace{#1}}
+
\renewcommand*{\cvlistitem}[2][.25em]{%
- \cvitem[#1]{}{\listitemsymbol\begin{minipage}[t]{\listitemcolumnwidth}#2\end{minipage}}}
+ \cvitem[#1]{}{\listitemsymbol\hspace{\listitemsymbolspace}\begin{minipage}[t]{\listitemcolumnwidth-\listitemsymbolspace}#2\end{minipage}}}
\renewcommand*{\cvlistdoubleitem}[3][.25em]{%
- \cvitem[#1]{}{\listitemsymbol\begin{minipage}[t]{\listdoubleitemcolumnwidth}#2\end{minipage}%
+ \cvitem[#1]{}{\listitemsymbol\hspace{\listitemsymbolspace}\begin{minipage}[t]{\listdoubleitemcolumnwidth-\listitemsymbolspace}#2\end{minipage}%
\hfill% fill of \separatorcolumnwidth
\ifthenelse{\equal{#3}{}}%
{}%
- {\listitemsymbol\begin{minipage}[t]{\listdoubleitemcolumnwidth}#3\end{minipage}}}}
+ {\listitemsymbol\hspace{\listitemsymbolspace}\begin{minipage}[t]{\listdoubleitemcolumnwidth-\listitemsymbolspace}#3\end{minipage}}}}
\@initializebox{\cventryyearbox}
\@initializelength{\cventrytitleboxwidth}
@@ -170,13 +184,14 @@
\recomputecvbodylengths%
\setlength{\parskip}{6\p@}}
-\renewcommand*{\makeletterclosing}{
- \@closing\\[3em]%
+\renewcommand*{\makeletterclosing}{%
+ \@closing\ifthenelse{\isundefined{\@signature}}{\\[3em]}{\\[1em]}% shrink space when signature is set
+ \ifthenelse{\isundefined{\@signature}}{}{{\@signature\\}}
{\bfseries\@firstname~\@lastname}%
\ifthenelse{\isundefined{\@enclosure}}{}{%
\\%
\vfil%
- {\color{color2}\itshape\enclname: \@enclosure}}%
+ {\color{letterclosingcolor}\itshape\enclname: \@enclosure}}%
\vfil}
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvbodyv.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvbodyv.sty
index 1f49692984d..f29e57786b4 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvbodyv.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvbodyv.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvbodyv.sty'.
-%% Copyright 2015-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2015-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,13 +10,13 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvbodyv}[2022-02-21 v2.3.1 modern curriculum vitae and letter body variant: 5]
+\ProvidesPackage{moderncvbodyv}[2024-07-18 v2.4.1 modern curriculum vitae and letter body variant: 5]
%-------------------------------------------------------------------------------
% required packages
%-------------------------------------------------------------------------------
-% provides the commands for the skillmatrix as well as the command
+% provides the commands for the skillmatrix as well as the command
% \recompute@cvskillmatrix@lengths
\RequirePackage[moderncvbodyv]{moderncvskillmatrix}
@@ -34,9 +34,9 @@
\renewcommand*{\hintfont}{\bfseries}
% styles
-\renewcommand*{\sectionstyle}[1]{{\sectionfont\textcolor{color1}{#1}}}
-\renewcommand*{\subsectionstyle}[1]{{\subsectionfont\textcolor{color1}{#1}}}
-\renewcommand*{\hintstyle}[1]{{\hintfont\textcolor{color0}{#1}}}
+\renewcommand*{\sectionstyle}[1]{{\sectionfont\textcolor{sectioncolor}{#1}}}
+\renewcommand*{\subsectionstyle}[1]{{\subsectionfont\textcolor{subsectioncolor}{#1}}}
+\renewcommand*{\hintstyle}[1]{{\hintfont\textcolor{hintstylecolor}{#1}}}
% lengths
% used by \cvitem (and all children command)
@@ -46,6 +46,8 @@
\@initializelength{\maincolumnwidth}
% used by \cvdoubleitem
\@initializelength{\doubleitemcolumnwidth}
+% used by \cvtripleitem
+\@initializelength{\tripleitemcolumnwidth}
% used by \cvlistitem
\@initializelength{\listitemsymbolwidth} \settowidth{\listitemsymbolwidth}{\listitemsymbol}
\@initializelength{\listitemcolumnwidth}
@@ -53,6 +55,7 @@
% used by \cvlistdoubleitem
\@initializelength{\listdoubleitemcolumnwidth}
%\@initializelength{\listdoubleitemmaincolumnwidth}
+\@initializelength{\listitemsymbolspace} \setlength{\listitemsymbolspace}{0pt}
% commands
\@initializecommand{\recomputecvbodylengths}{%
@@ -61,6 +64,8 @@
\setlength{\listitemcolumnwidth}{\maincolumnwidth-\listitemsymbolwidth}%
\setlength{\doubleitemcolumnwidth}{\maincolumnwidth-\separatorcolumnwidth}%
\setlength{\doubleitemcolumnwidth}{0.5\doubleitemcolumnwidth}%
+ \setlength{\tripleitemcolumnwidth}{\maincolumnwidth-2\separatorcolumnwidth}%
+ \setlength{\tripleitemcolumnwidth}{0.33\tripleitemcolumnwidth}%
\setlength{\listdoubleitemcolumnwidth}{\maincolumnwidth-\listitemsymbolwidth-\separatorcolumnwidth-\listitemsymbolwidth}%
\setlength{\listdoubleitemcolumnwidth}{0.5\listdoubleitemcolumnwidth}%
\recompute@cvskillmatrix@lengths
@@ -72,7 +77,8 @@
\addvspace{2.5ex}%
\phantomsection{}% reset the anchor for hyperrefs
\addcontentsline{toc}{section}{#2}%
- \noindent\rlap{\@cvitem{\raggedleft\sectionstyle{#2}}{}}%
+ % minipage for correct spacing with multiline sections #69
+ \noindent\rlap{\@cvitem{\begin{minipage}[t][1ex]{\hintscolumnwidth}\raggedleft\sectionstyle{#2}\end{minipage}}{}}%
\nobreak\@afterheading\@aftersectiontrue\ignorespaces}
%\@initializeif{\if@aftersubsection}\@aftersubsectionfalse%
@@ -83,7 +89,8 @@
\par\ignorespaces\fi%
\phantomsection{}% reset the anchor for hyperrefs
\addcontentsline{toc}{subsection}{#2}%
- \noindent\rlap{\@cvitem{\if@aftersection\else\@moderncvstrut{4pt}{24pt}\fi\raggedleft\subsectionstyle{#2}}{}}%
+ % minipage for correct spacing with multiline subsections #69
+ \noindent\rlap{\@cvitem{\begin{minipage}[t][1ex]{\hintscolumnwidth}\if@aftersection\else\@moderncvstrut{4pt}{24pt}\fi\raggedleft\subsectionstyle{#2}\end{minipage}}{}}%
\nobreak\@afterheading\@aftersectiontrue\ignorespaces}
\renewcommand*{\cvitem}[3][.5ex]{%
@@ -99,7 +106,7 @@
% underlying command to implement \cvitem, \subsection and \section
\newcommand*{\@cvitem}[3][.5ex]{%
- \arrayrulecolor{color1}%
+ \arrayrulecolor{bodyrulecolor}%
\setlength\arrayrulewidth{\separatorrulewidth}%
\if@aftersection\else%
\vspace*{-\separatorrulewidth}\fi% HACK; I don't understand where the space is coming from, nor what it's exact value is :(
@@ -117,15 +124,23 @@
\hfill% fill of \separatorcolumnwidth
\begin{minipage}[t]{\doubleitemcolumnwidth}\ifthenelse{\equal{#4}{}}{}{\hintstyle{#4}: }#5\end{minipage}}}
+\renewcommand*{\cvtripleitem}[7][.1ex]{%
+ \@cvitem[#1]{}{%
+ \begin{minipage}[t]{\tripleitemcolumnwidth}\hintstyle{#2}: #3\end{minipage}%
+ \hfill% fill of \separatorcolumnwidth
+ \begin{minipage}[t]{\tripleitemcolumnwidth}\hintstyle{#4}: #5\end{minipage}%
+ \hfill% fill of \separatorcolumnwidth
+ \begin{minipage}[t]{\tripleitemcolumnwidth}\ifthenelse{\equal{#6}{}}{}{\hintstyle{#6}: }#7\end{minipage}}}
+
\renewcommand*{\cvlistitem}[2][.5ex]{%
- \@cvitem[#1]{}{\listitemsymbol\begin{minipage}[t]{\listitemcolumnwidth}#2\end{minipage}}}
+ \@cvitem[#1]{}{\listitemsymbol\hspace{\listitemsymbolspace}\begin{minipage}[t]{\listitemcolumnwidth-\listitemsymbolspace}#2\end{minipage}}}
\renewcommand*{\cvlistdoubleitem}[3][.5ex]{%
- \@cvitem[#1]{}{\listitemsymbol\begin{minipage}[t]{\listdoubleitemcolumnwidth}#2\end{minipage}%
+ \@cvitem[#1]{}{\listitemsymbol\hspace{\listitemsymbolspace}\begin{minipage}[t]{\listdoubleitemcolumnwidth-\listitemsymbolspace}#2\end{minipage}%
\hfill% fill of \separatorcolumnwidth
\ifthenelse{\equal{#3}{}}%
{}%
- {\listitemsymbol\begin{minipage}[t]{\listdoubleitemcolumnwidth}#3\end{minipage}}}}
+ {\listitemsymbol\hspace{\listitemsymbolspace}\begin{minipage}[t]{\listdoubleitemcolumnwidth-\listitemsymbolspace}#3\end{minipage}}}}
\@initializebox{\cventryyearbox}
\@initializelength{\cventrytitleboxwidth}
@@ -165,7 +180,7 @@
{%
\bibliographyhead{\refname}%
% \small%
- \arrayrulecolor{color1}%
+ \arrayrulecolor{bodyrulecolor}%
\setlength\arrayrulewidth{\separatorrulewidth}%
\noindent%
\begin{tabular}[t]{@{}p{\hintscolumnwidth}@{\hspace{\separatorcolumnwidth}}|@{\hspace{\separatorcolumnwidth}}p{\maincolumnwidth}@{}}%
@@ -206,13 +221,14 @@
\recomputecvbodylengths%
\setlength{\parskip}{6\p@}}
-\renewcommand*{\makeletterclosing}{
- \@closing\\[3em]%
+\renewcommand*{\makeletterclosing}{%
+ \@closing\ifthenelse{\isundefined{\@signature}}{\\[3em]}{\\[1em]}% shrink space when signature is set
+ \ifthenelse{\isundefined{\@signature}}{}{{\@signature\\}}
{\bfseries \@firstname~\@lastname}%
\ifthenelse{\isundefined{\@enclosure}}{}{%
\\%
\vfill%
- {\color{color2}\itshape\enclname: \@enclosure}}}
+ {\color{letterclosingcolor}\itshape\enclname: \@enclosure}}}
\endinput
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvbodyvi.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvbodyvi.sty
new file mode 100644
index 00000000000..76e1a15c3ac
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvbodyvi.sty
@@ -0,0 +1,203 @@
+%% start of file `moderncvbodyvi.sty'.
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com).
+%% Copyright 2023 Javier Lopez-Gomez (javier.lopez.gomez@proton.me).
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License version 1.3c,
+% available at http://www.latex-project.org/lppl/.
+
+
+%-------------------------------------------------------------------------------
+% identification
+%-------------------------------------------------------------------------------
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{moderncvbodyvi}[2023/11/21 v2.0.0 modern curriculum vitae and letter body variant: 6]
+
+
+%-------------------------------------------------------------------------------
+% required packages
+%-------------------------------------------------------------------------------
+\RequirePackage{moderncvverticaltimeline}
+% No customization currently exists for `modercvbodyvi`; just reuse
+% `moderncvbodyi`. We might consider supporting a short table format (only skill
+% name and rating) in the future.
+\RequirePackage[moderncvbodyi,circle]{moderncvskillmatrix}
+
+
+%-------------------------------------------------------------------------------
+% overall body definition
+%-------------------------------------------------------------------------------
+% fonts
+\renewcommand*{\sectionfont}{\Large\upshape\bfseries}
+\renewcommand*{\subsectionfont}{\large\mdseries\upshape}
+\renewcommand*{\hintfont}{}
+
+% styles
+\renewcommand*{\sectionstyle}[1]{{\sectionfont\textcolor{color1}{#1}}}
+\renewcommand*{\subsectionstyle}[1]{{\subsectionfont\textcolor{color1}{#1}}}
+\renewcommand*{\hintstyle}[1]{{\hintfont\textcolor{color0}{#1}}}
+
+
+%-------------------------------------------------------------------------------
+% resume body definition
+%-------------------------------------------------------------------------------
+% lengths
+% used by \cvitem (and all children command)
+\@initializelength{\hintscolumnwidth} \setlength{\hintscolumnwidth}{0.175\textwidth}
+\@initializelength{\separatorcolumnwidth} \setlength{\separatorcolumnwidth}{0.025\textwidth}
+\@initializelength{\maincolumnwidth}
+% used by \cvdoubleitem
+\@initializelength{\doubleitemcolumnwidth}
+% used by \cvtripleitem
+\@initializelength{\tripleitemcolumnwidth}
+% used by \cvlistitem
+\@initializelength{\listitemsymbolwidth} \settowidth{\listitemsymbolwidth}{\listitemsymbol}
+\@initializelength{\listitemcolumnwidth}
+% used by \cvlistdoubleitem
+\@initializelength{\listdoubleitemcolumnwidth}
+\@initializelength{\listitemsymbolspace} \setlength{\listitemsymbolspace}{0pt}
+% default moderncv \photo (change the definition such that by default the photo and its box align with the section bars
+\RenewDocumentCommand{\photo}{O{\hintscolumnwidth-0.8pt-2\fboxsep}O{0.4pt}m}{\def\@photowidth{#1}\def\@photoframewidth{#2}\def\@photo{#3}}%
+
+% commands
+\renewcommand*{\recomputecvbodylengths}{%
+ % body lengths
+ \setlength{\maincolumnwidth}{\textwidth-\leftskip-\rightskip-\separatorcolumnwidth-\hintscolumnwidth}%
+ \setlength{\listitemcolumnwidth}{\maincolumnwidth-\listitemsymbolwidth}%
+ \setlength{\doubleitemcolumnwidth}{\maincolumnwidth-\hintscolumnwidth-\separatorcolumnwidth-\separatorcolumnwidth}%
+ \setlength{\doubleitemcolumnwidth}{0.5\doubleitemcolumnwidth}%
+ \setlength{\tripleitemcolumnwidth}{\maincolumnwidth-2\hintscolumnwidth-3\separatorcolumnwidth}%
+ \setlength{\tripleitemcolumnwidth}{0.33\tripleitemcolumnwidth}%
+ \setlength{\listdoubleitemcolumnwidth}{\maincolumnwidth-\listitemsymbolwidth-\separatorcolumnwidth-\listitemsymbolwidth}%
+ \setlength{\listdoubleitemcolumnwidth}{0.5\listdoubleitemcolumnwidth}%
+ \recompute@cvskillmatrix@lengths
+ % regular lengths
+ \setlength{\parskip}{0\p@}}
+
+\@initializelength{\baseletterheight}
+\settoheight{\baseletterheight}{\sectionstyle{o}}
+\setlength{\baseletterheight}{\baseletterheight-0.95ex}
+% The optional argument can be used to place a small icon near the section name.
+% E.g. `\section[\faBookmark]{Education}`
+\RenewDocumentCommand{\section}{sO{}m}{%
+ \tl@resetchain%
+ \par\addvspace{2.5ex}%
+ \phantomsection{}% reset the anchor for hyperrefs
+ \addcontentsline{toc}{section}{#3}%
+ \strut\sectionstyle{\textcolor{color1!55!white}{{#2}\rule{.75ex}{0pt}\rule{1pt}{\heightof{#3}}}%
+ \rule{.75ex}{0pt}#3}%
+ \par\nobreak\addvspace{1ex}\@afterheading}% to avoid a pagebreak after the heading
+
+\RenewDocumentCommand{\subsection}{sm}{%
+ \par\addvspace{1ex}%
+ \phantomsection{}% reset the anchor for hyperrefs
+ \addcontentsline{toc}{subsection}{#2}%
+ \cvitem[0ex]{}{\strut\subsectionstyle{#2}}%
+ \par\nobreak\addvspace{.5ex}\@afterheading}% to avoid a pagebreak after the heading
+
+\renewcommand*{\cvitem}[3][.25em]{%
+ \begin{tabular}{@{}p{\hintscolumnwidth}@{\hspace{\separatorcolumnwidth}}p{\maincolumnwidth}@{}}%
+ \raggedleft\hintstyle{#2} &{#3}%
+ \end{tabular}%
+ \par\addvspace{#1}}
+
+\renewcommand*{\cvdoubleitem}[5][.25em]{%
+ \cvitem[#1]{#2}{%
+ \begin{minipage}[t]{\doubleitemcolumnwidth}#3\end{minipage}%
+ \hfill% fill of \separatorcolumnwidth
+ \begin{minipage}[t]{\hintscolumnwidth}\raggedleft\hintstyle{#4}\end{minipage}%
+ \hspace*{\separatorcolumnwidth}%
+ \begin{minipage}[t]{\doubleitemcolumnwidth}#5\end{minipage}}}
+
+\renewcommand*{\cvtripleitem}[7][.1em]{%
+ \cvitem[#1]{#2}{%
+ \begin{minipage}[t]{\tripleitemcolumnwidth}#3\end{minipage}%
+ \hfill% fill of \separatorcolumnwidth
+ \begin{minipage}[t]{\hintscolumnwidth}\raggedleft\hintstyle{#4}\end{minipage}%
+ \hspace*{\separatorcolumnwidth}%
+ \begin{minipage}[t]{\tripleitemcolumnwidth}#5\end{minipage}%
+ \hspace*{\separatorcolumnwidth}%
+ \begin{minipage}[t]{\hintscolumnwidth}\raggedleft\hintstyle{#6}\end{minipage}%
+ \hspace*{\separatorcolumnwidth}%
+ \begin{minipage}[t]{\tripleitemcolumnwidth}#7\end{minipage}}}
+
+\renewcommand*{\cvlistitem}[2][.25em]{%
+ \cvitem[#1]{}{\listitemsymbol\hspace{\listitemsymbolspace}\begin{minipage}[t]{\listitemcolumnwidth-\listitemsymbolspace}#2\end{minipage}}}
+
+\renewcommand*{\cvlistdoubleitem}[3][.25em]{%
+ \cvitem[#1]{}{\listitemsymbol\hspace{\listitemsymbolspace}\begin{minipage}[t]{\listdoubleitemcolumnwidth-\listitemsymbolspace}#2\end{minipage}%
+ \hfill% fill of \separatorcolumnwidth
+ \ifthenelse{\equal{#3}{}}%
+ {}%
+ {\listitemsymbol\hspace{\listitemsymbolspace}\begin{minipage}[t]{\listdoubleitemcolumnwidth-\listitemsymbolspace}#3\end{minipage}}}}
+
+\renewcommand*{\cventry}[7][.25em]{%
+ \cvitem[#1]{\tl@milestone{#2}}{%
+ {\bfseries#3}%
+ \ifthenelse{\equal{#4}{}}{}{, {\slshape#4}}%
+ \ifthenelse{\equal{#5}{}}{}{, #5}%
+ \ifthenelse{\equal{#6}{}}{}{, #6}%
+ \strut%
+ \ifx&#7&%
+ \else{\newline{}\begin{minipage}[t]{\linewidth}\small#7\end{minipage}}\fi}}
+
+\@initializebox{\cvitemwithcommentbox}
+\@initializelength{\cvitemwithcommentskilllength}
+\@initializelength{\cvitemwithcommentcommentlength}
+\renewcommand*{\cvitemwithcomment}[4][.25em]{%
+ \savebox{\cvitemwithcommentbox}{{#3}}%
+ \setlength{\cvitemwithcommentskilllength}{\widthof{\usebox{\cvitemwithcommentbox}}}%
+ \setlength{\cvitemwithcommentcommentlength}{\maincolumnwidth-\separatorcolumnwidth-\cvitemwithcommentskilllength}%
+ \cvitem[#1]{#2}{%
+ \begin{minipage}[t]{\cvitemwithcommentskilllength}\usebox{\cvitemwithcommentbox}\end{minipage}%
+ \hfill% fill of \separatorcolumnwidth
+ \begin{minipage}[t]{\cvitemwithcommentcommentlength}\raggedleft\small\itshape#4\end{minipage}}}
+
+\renewenvironment{thebibliography}[1]%
+ {%
+ \bibliographyhead{\refname}%
+% \small%
+ \begin{list}{\bibliographyitemlabel}%
+ {%
+ \setlength{\topsep}{0pt}%
+ \setlength{\labelwidth}{\hintscolumnwidth}%
+ \setlength{\labelsep}{\separatorcolumnwidth}%
+ \leftmargin\labelwidth%
+ \advance\leftmargin\labelsep%
+ \@openbib@code%
+ \usecounter{enumiv}%
+ \let\p@enumiv\@empty%
+ \renewcommand\theenumiv{\@arabic\c@enumiv}}%
+ \sloppy%
+ \clubpenalty4000%\@clubpenalty \clubpenalty%
+ \widowpenalty4000%
+ \sfcode`\.\@m%
+ \sfcode `\=1000\relax}%
+ {%
+ \def\@noitemerr{\@latex@warning{Empty `thebibliography' environment}}%
+ \end{list}}
+
+
+%-------------------------------------------------------------------------------
+% letter style definition
+%-------------------------------------------------------------------------------
+% commands
+\renewcommand*{\recomputeletterbodylengths}{%
+ \recomputecvlengths%
+ \setlength{\parskip}{6\p@}}
+
+\renewcommand*{\makeletterclosing}{
+ \@closing\ifthenelse{\isundefined{\@signature}}{\\[3em]}{\\[1em]}% shrink space when signature is set
+ \ifthenelse{\isundefined{\@signature}}{}{{\@signature\\}}
+ {\bfseries\@firstname~\@lastname}%
+ \ifthenelse{\isundefined{\@enclosure}}{}{%
+ \\%
+ \vfil%
+ {\color{color2}\itshape\enclname: \@enclosure}}%
+ \vfil}
+
+
+\endinput
+
+
+%% end of file `moderncvbodyvi.sty'.
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcollection.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcollection.sty
index 5d3432e661e..bddc9a51776 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvcollection.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcollection.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvcollection.sty'.
-%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcollection}[2022-02-21 v2.3.1 moderncv collections]
+\ProvidesPackage{moderncvcollection}[2024-07-18 v2.4.1 moderncv collections]
%-------------------------------------------------------------------------------
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorblack.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorblack.sty
index ea3653eacef..29ba5bd410c 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorblack.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorblack.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvcolorblack.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,15 +10,17 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcolorblack}[2022-02-21 v2.3.1 modern curriculum vitae and letter color scheme: black]
+\ProvidesPackage{moderncvcolorblack}[2024-07-18 v2.4.1 modern curriculum vitae and letter color scheme: black]
%-------------------------------------------------------------------------------
% color scheme definition
%-------------------------------------------------------------------------------
-\definecolor{color0}{rgb}{0,0,0}% black
-\definecolor{color1}{rgb}{0,0,0}% black
-\definecolor{color2}{rgb}{0,0,0}% black
+\input{moderncvcolors.tex}
+
+\colorlet{color0}{black}% black
+\colorlet{color1}{black}% black
+\colorlet{color2}{black}% black
\endinput
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorblue.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorblue.sty
index b02992e1b39..779b3be956c 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorblue.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorblue.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvcolorblue.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,15 +10,17 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcolorblue}[2022-02-21 v2.3.1 modern curriculum vitae and letter color scheme: blue]
+\ProvidesPackage{moderncvcolorblue}[2024-07-18 v2.4.1 modern curriculum vitae and letter color scheme: blue]
%-------------------------------------------------------------------------------
% color scheme definition
%-------------------------------------------------------------------------------
-\definecolor{color0}{rgb}{0,0,0}% black
-\definecolor{color1}{rgb}{0.22,0.45,0.70}% light blue
-\definecolor{color2}{rgb}{0.45,0.45,0.45}% dark grey
+\input{moderncvcolors.tex}
+
+\colorlet{color0}{black}% black
+\colorlet{color1}{lightblue}% light blue
+\colorlet{color2}{darkgrey}% dark grey
\endinput
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorburgundy.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorburgundy.sty
index 775f033f233..aeeccf5ef6b 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorburgundy.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorburgundy.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvcolorburgundy.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,15 +10,17 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcolorburgundy}[2022-02-21 v2.3.1 modern curriculum vitae and letter color scheme: burgundy]
+\ProvidesPackage{moderncvcolorburgundy}[2024-07-18 v2.4.1 modern curriculum vitae and letter color scheme: burgundy]
%-------------------------------------------------------------------------------
% color scheme definition
%-------------------------------------------------------------------------------
-\definecolor{color0}{rgb}{0,0,0}% black
-\definecolor{color1}{rgb}{0.596078,0,0}% burgundy: 139/255 (0.545098) or 152/255 (0.596078)
-\definecolor{color2}{rgb}{0.45,0.45,0.45}% dark grey
+\input{moderncvcolors.tex}
+
+\colorlet{color0}{black}% black
+\colorlet{color1}{burgundy}% burgundy
+\colorlet{color2}{darkgrey}% dark grey
\endinput
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorcerulean.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorcerulean.sty
new file mode 100644
index 00000000000..1f7cce83c73
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorcerulean.sty
@@ -0,0 +1,32 @@
+%% start of file `moderncvcolorcerulean.sty'.
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com).
+%% Copyright 2023 Javier Lopez-Gomez (javier.lopez.gomez@proton.me).
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License version 1.3c,
+% available at http://www.latex-project.org/lppl/.
+
+
+%-------------------------------------------------------------------------------
+% identification
+%-------------------------------------------------------------------------------
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{moderncvcolorcerulean}[2023/11/21 v2.0.0 modern curriculum vitae and letter color scheme: cerulean]
+
+
+%-------------------------------------------------------------------------------
+% color scheme definition
+%-------------------------------------------------------------------------------
+\definecolor{color0}{rgb}{0,0,0}% black
+\definecolor{color1}{HTML}{0081a7}% cerulean
+\definecolor{color2}{HTML}{4d908e}% dark cyan
+\definecolor{headTL}{HTML}{00afb9}% verdigris
+\colorlet{headBR}{color1}
+\definecolor{headtext}{HTML}{ffffff}% white
+\colorlet{headhr}{color2}
+
+
+\endinput
+
+
+%% end of file `moderncvcolorcerulean.sty'.
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorgreen.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorgreen.sty
index 891c3290b5d..03c026ea07d 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorgreen.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorgreen.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvcolorgreen.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,15 +10,17 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcolorgreen}[2022-02-21 v2.3.1 modern curriculum vitae and letter color scheme: green]
+\ProvidesPackage{moderncvcolorgreen}[2024-07-18 v2.4.1 modern curriculum vitae and letter color scheme: green]
%-------------------------------------------------------------------------------
% color scheme definition
%-------------------------------------------------------------------------------
-\definecolor{color0}{rgb}{0,0,0}% black
-\definecolor{color1}{rgb}{0.35,0.70,0.30}% green
-\definecolor{color2}{rgb}{0.45,0.45,0.45}% dark grey
+\input{moderncvcolors.tex}
+
+\colorlet{color0}{black}% black
+\colorlet{color1}{green}% green
+\colorlet{color2}{darkgrey}% dark grey
\endinput
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorgrey.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorgrey.sty
index 37d2b57749d..6bd9184c0e6 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorgrey.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorgrey.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvcolorgrey.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,15 +10,17 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcolorgrey}[2022-02-21 v2.3.1 modern curriculum vitae and letter color scheme: grey]
+\ProvidesPackage{moderncvcolorgrey}[2024-07-18 v2.4.1 modern curriculum vitae and letter color scheme: grey]
%-------------------------------------------------------------------------------
% color scheme definition
%-------------------------------------------------------------------------------
-\definecolor{color0}{rgb}{0,0,0}% black
-\definecolor{color1}{rgb}{0.55,0.55,0.55}% dark grey
-\definecolor{color2}{rgb}{0.55,0.55,0.55}% dark grey
+\input{moderncvcolors.tex}
+
+\colorlet{color0}{black}% black
+\colorlet{color1}{darkgrey}% dark grey
+\colorlet{color2}{darkgrey}% dark grey
\endinput
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcolororange.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcolororange.sty
index f249fd7de9c..c4f612ab6db 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvcolororange.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcolororange.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvcolororange.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,15 +10,17 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcolororange}[2022-02-21 v2.3.1 modern curriculum vitae and letter color scheme: orange]
+\ProvidesPackage{moderncvcolororange}[2024-07-18 v2.4.1 modern curriculum vitae and letter color scheme: orange]
%-------------------------------------------------------------------------------
% color scheme definition
%-------------------------------------------------------------------------------
-\definecolor{color0}{rgb}{0,0,0}% black
-\definecolor{color1}{rgb}{0.95,0.55,0.15}% orange
-\definecolor{color2}{rgb}{0.45,0.45,0.45}% dark grey
+\input{moderncvcolors.tex}
+
+\colorlet{color0}{black}% black
+\colorlet{color1}{orange}% orange
+\colorlet{color2}{darkgrey}% dark grey
\endinput
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorpurple.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorpurple.sty
index 22053d78493..d0110526f19 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorpurple.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorpurple.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvcolorpurple.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,15 +10,17 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcolorpurple}[2022-02-21 v2.3.1 modern curriculum vitae and letter color scheme: purple]
+\ProvidesPackage{moderncvcolorpurple}[2024-07-18 v2.4.1 modern curriculum vitae and letter color scheme: purple]
%-------------------------------------------------------------------------------
% color scheme definition
%-------------------------------------------------------------------------------
-\definecolor{color0}{rgb}{0,0,0}% black
-\definecolor{color1}{rgb}{0.50,0.33,0.80}% purple
-\definecolor{color2}{rgb}{0.45,0.45,0.45}% dark grey
+\input{moderncvcolors.tex}
+
+\colorlet{color0}{black}% black
+\colorlet{color1}{purple}% purple
+\colorlet{color2}{darkgrey}% dark grey
\endinput
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorred.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorred.sty
index 68b1335c847..bc51d4adf53 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvcolorred.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcolorred.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvcolorred.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,15 +10,17 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcolorred}[2022-02-21 v2.3.1 modern curriculum vitae and letter color scheme: red]
+\ProvidesPackage{moderncvcolorred}[2024-07-18 v2.4.1 modern curriculum vitae and letter color scheme: red]
%-------------------------------------------------------------------------------
% color scheme definition
%-------------------------------------------------------------------------------
-\definecolor{color0}{rgb}{0,0,0}% black
-\definecolor{color1}{rgb}{0.95,0.20,0.20}% red
-\definecolor{color2}{rgb}{0.45,0.45,0.45}% dark grey
+\input{moderncvcolors.tex}
+
+\colorlet{color0}{black}% black
+\colorlet{color1}{red}% red
+\colorlet{color2}{darkgrey}% dark grey
\endinput
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcolors.tex b/Master/texmf-dist/tex/latex/moderncv/moderncvcolors.tex
new file mode 100644
index 00000000000..7f840ff059c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcolors.tex
@@ -0,0 +1,35 @@
+%-------------------------------------------------------------------------------
+% built-in colors
+%-------------------------------------------------------------------------------
+
+\definecolor{black}{RGB}{0, 0, 0}
+\definecolor{red}{rgb}{0.95, 0.20, 0.20}
+\definecolor{darkgrey}{rgb}{0.45, 0.45, 0.45}
+\definecolor{orange}{rgb}{0.95, 0.55, 0.15}
+\definecolor{burgundy}{rgb}{0.596078, 0, 0}% 139/255 (0.545098) or 152/255 (0.596078)
+\definecolor{purple}{rgb}{0.50, 0.33, 0.80}
+\definecolor{lightblue}{rgb}{0.22, 0.45, 0.70}
+\definecolor{green}{rgb}{0.35, 0.70, 0.30}
+
+%-------------------------------------------------------------------------------
+% default colors
+%-------------------------------------------------------------------------------
+
+\@ifundefined{\string\color@default-socialicon-color}{\colorlet{default-socialicon-color}{darkgrey}}{}
+
+%-------------------------------------------------------------------------------
+% colors for social icons
+%-------------------------------------------------------------------------------
+
+% \definecolor{weixin}{rgb}{.184, .533, .098}
+% \definecolor{linkedin}{HTML}{0a66c2}
+% \definecolor{orcid}{HTML}{a6ce39}
+% \definecolor{twitter}{RGB}{29, 155, 240}
+% \definecolor{facebook}{HTML}{1b74e4}
+% TODO: add more colors
+
+%-------------------------------------------------------------------------------
+% custom colors
+%-------------------------------------------------------------------------------
+
+% \definecolor{tsinghua}{HTML}{791CB5}
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvcompatibility.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvcompatibility.sty
index fb9a8c4363d..e8e0af713ff 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvcompatibility.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvcompatibility.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvcompatibility.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvcompatibility}[2022-02-21 v2.3.1 modern curriculum vitae and letter compatibility patches]
+\ProvidesPackage{moderncvcompatibility}[2024-07-18 v2.4.1 modern curriculum vitae and letter compatibility patches]
%-------------------------------------------------------------------------------
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvdebugtools.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvdebugtools.sty
index b28e409b541..c19651ab05b 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvdebugtools.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvdebugtools.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvdebugtools.sty'.
-%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvdebugtools}[2022-02-21 v2.3.1 modern curriculum vitae and letter debug tools]
+\ProvidesPackage{moderncvdebugtools}[2024-07-18 v2.4.1 modern curriculum vitae and letter debug tools]
%-------------------------------------------------------------------------------
@@ -32,7 +32,7 @@
\begin{tikzpicture}[remember picture,overlay]
\begin{pgfonlayer}{background}
\coordinate (a\thedebugrule);
- \draw[red,thin,#1]
+ \draw[red,thin,#1]
([xshift=#2]a\thedebugrule|-current page.north) -- ([xshift=#2]a\thedebugrule|-current page.south);
\end{pgfonlayer}
\end{tikzpicture}}
@@ -42,7 +42,7 @@
\begin{tikzpicture}[remember picture,overlay]
\begin{pgfonlayer}{background}
\coordinate (b\thedebugrule);
- \draw[red,thin,#1]
+ \draw[red,thin,#1]
([yshift=#2]b\thedebugrule-|current page.west) -- ([yshift=#2]b\thedebugrule-|current page.east);
\end{pgfonlayer}
\end{tikzpicture}}
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvfooti.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvfooti.sty
index 370365848fc..f1de51a44ef 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvfooti.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvfooti.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvfooti.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvfooti}[2022-02-21 v2.3.1 modern curriculum vitae and letter footer variant: 1]
+\ProvidesPackage{moderncvfooti}[2024-07-18 v2.4.1 modern curriculum vitae and letter footer variant: 1]
%-------------------------------------------------------------------------------
@@ -79,7 +79,7 @@
\fancyfoot[c]{%
\parbox[b]{\footwidth}{%
\centering%
- \color{color2}\addressfont%
+ \color{addresscolor}\addressfont%
\vspace{\baselineskip}% forces a white line to ensure space between main text and footer (as footer height can't be known in advance)
\ifthenelse{\isundefined{\@addressstreet}}{}{\addtofoot[]{\addresssymbol\@addressstreet}%
\ifthenelse{\equal{\@addresscity}{}}{}{\addtofoot[~--~]{\@addresscity}}% if \addresstreet is defined, \addresscity and \addresscountry will always be defined but could be empty
@@ -89,7 +89,8 @@
\collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number
\addtofoot{\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}}%
\ifthenelse{\isundefined{\@email}}{}{\addtofoot{\emailsymbol\emaillink{\@email}}}%
- \ifthenelse{\isundefined{\@homepage}}{}{\addtofoot{\homepagesymbol\httpslink{\@homepage}}}%
+ \ifthenelse{\isundefined{\@homepage}}{}{\addtofoot{\homepagesymbol%
+ \ifthenelse{\equal{\@homepageprotocol}{http}}{\httplink{\@homepage}}{\httpslink{\@homepage}}}}%
\collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link
\addtofoot{\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}}%
\ifthenelse{\isundefined{\@extrainfo}}{}{\addtofoot{\@extrainfo}}%
@@ -109,7 +110,7 @@
\fancyfoot[c]{%
\parbox[b]{\footwidth}{%
\centering%
- \addressfont\color{color2}%
+ \addressfont\color{addresscolor}%
\vspace{\baselineskip}% forces a white line to ensure space between main text and footer (as footer height can't be known in advance)
\vspace{-\baselineskip}% to cancel out the extra vertical space taken by the name (below) and ensure perfect alignment of letter and cv footers
\strut{\bfseries\upshape\@firstname~\@lastname}\\% the \strut is required to ensure the line is exactly \baselineskip tall
@@ -121,7 +122,8 @@
\collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number
\addtofoot{\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}}%
\ifthenelse{\isundefined{\@email}}{}{\addtofoot{\emailsymbol\emaillink{\@email}}}%
- \ifthenelse{\isundefined{\@homepage}}{}{\addtofoot{\homepagesymbol\httpslink{\@homepage}}}%
+ \ifthenelse{\isundefined{\@homepage}}{}{\addtofoot{\homepagesymbol%
+ \ifthenelse{\equal{\@homepageprotocol}{http}}{\httplink{\@homepage}}{\httpslink{\@homepage}}}}%
\collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link
\addtofoot{\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}}%
\ifthenelse{\isundefined{\@extrainfo}}{}{\addtofoot{\@extrainfo}}%
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvheadi.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvheadi.sty
index 087cf776e20..9dfb35a06c1 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvheadi.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvheadi.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvheadi.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvheadi}[2022-02-21 v2.3.1 modern curriculum vitae and letter header variant: 1]
+\ProvidesPackage{moderncvheadi}[2024-07-18 v2.4.1 modern curriculum vitae and letter header variant: 1]
% details options: "details" (default) or "nodetails"
\@initializeif{\if@details}\@detailsfalse
@@ -23,6 +23,11 @@
\@initializeif{\if@right}\@rightfalse
\DeclareOption{right} {\@leftfalse\@righttrue}
+% top options: align header elements by their top instead of their bottom
+% default: bottom
+\@initializeif{\if@top}\@topfalse
+\DeclareOption{top}{\@toptrue}
+
\DeclareOption*{}% avoid choking on unknown options
\ExecuteOptions{details,left}
\ProcessOptions*\relax% \ProcessOptions* processes the options in the order provided (i.e., with the later ones possibly overriding the former ones), while \ProcessOptions processes them in the order of the package
@@ -43,10 +48,12 @@
\renewcommand*{\quotefont}{\large\slshape}
% styles
-\renewcommand*{\namestyle}[1]{{\namefont\textcolor{color0}{#1}}}
-\renewcommand*{\titlestyle}[1]{{\titlefont\textcolor{color2}{#1}}}
-\renewcommand*{\addressstyle}[1]{{\addressfont\textcolor{color2}{#1}}}
-\renewcommand*{\quotestyle}[1]{{\quotefont\textcolor{color1}{#1}}}
+\renewcommand*{\namestyle}[1]{{\namefont\textcolor{namecolor}{#1}}}
+\renewcommand*{\firstnamestyle}[1]{{\namefont\textcolor{firstnamecolor}{#1}}}
+\renewcommand*{\lastnamestyle}[1]{{\namefont\textcolor{lastnamecolor}{#1}}}
+\renewcommand*{\titlestyle}[1]{{\titlefont\textcolor{titlecolor}{#1}}}
+\renewcommand*{\addressstyle}[1]{{\addressfont\textcolor{addresscolor}{#1}}}
+\renewcommand*{\quotestyle}[1]{{\quotefont\textcolor{quotecolor}{#1}}}
%-------------------------------------------------------------------------------
@@ -72,7 +79,7 @@
\collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link
\protected@edef\socialsdetails{\socialsdetails\protect\makenewline\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}}%
\savebox{\makecvheaddetailsbox}{%
- \addressfont\color{color2}%
+ \addressfont\color{addresscolor}%
\if@left\begin{tabular}[b]{@{}r@{}}\fi%
\if@right\begin{tabular}[b]{@{}l@{}}\fi%
\ifthenelse{\isundefined{\@addressstreet}}{}{\makenewline\addresssymbol\@addressstreet%
@@ -81,7 +88,8 @@
\ifthenelse{\isundefined{\@born}}{}{\makenewline\bornsymbol\@born}%
\phonesdetails% needs to be pre-rendered as loops and tabulars seem to conflict
\ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}%
- \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol\httpslink{\@homepage}}%
+ \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol%
+ \ifthenelse{\equal{\@homepageprotocol}{http}}{\httplink{\@homepage}}{\httpslink{\@homepage}}}%
\socialsdetails% needs to be pre-rendered as loops and tabulars seem to conflict
\ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}%
\end{tabular}
@@ -94,7 +102,7 @@
{%
\if@left%
\hspace*{\separatorcolumnwidth}\fi%
- \color{color1}%
+ \color{pictureframecolor}%
\setlength{\fboxrule}{\@photoframewidth}%
\ifdim\@photoframewidth=0pt%
\setlength{\fboxsep}{0pt}\fi%
@@ -112,9 +120,14 @@
\begin{minipage}[b]{\makecvheadnamewidth}%
\if@left\raggedright\fi%
\if@right\raggedleft\fi%
- \namestyle{\@firstname\ \@lastname}%
+ \firstnamestyle{\@firstname}~\lastnamestyle{\@lastname}%
\ifthenelse{\equal{\@title}{}}{}{\\[1.25em]\titlestyle{\@title}}%
\end{minipage}}%
+ % raise boxes if top option is set
+ \if@top%
+ \savebox{\makecvheadnamebox}{\raisebox{-\height+\baselineskip}{\usebox{\makecvheadnamebox}}}%
+ \savebox{\makecvheaddetailsbox}{\raisebox{-\height+\baselineskip}{\usebox{\makecvheaddetailsbox}}}%
+ \savebox{\makecvheadpicturebox}{\raisebox{-\height+\baselineskip}{\usebox{\makecvheadpicturebox}}}\fi%
% rendering
\if@left%
\usebox{\makecvheadnamebox}%
@@ -126,11 +139,17 @@
\rlap{\usebox{\makecvheaddetailsbox}}% \llap is used to suppress the width of the box, allowing overlap if the value of makecvheadnamewidth is forced
\hfill%
\usebox{\makecvheadnamebox}\fi%
- \\[2.5em]%
% optional quote
\ifthenelse{\isundefined{\@quote}}%
- {}%
- {{\centering\begin{minipage}{\quotewidth}\centering\quotestyle{\@quote}\end{minipage}\\[2.5em]}}%
+ {\vspace{2.5em}}%
+ {%
+ \\[2.5em]%
+ {%
+ \centering%
+ \begin{minipage}{\quotewidth}%
+ \centering%
+ \quotestyle{\@quote}%
+ \end{minipage}\\[2.5em]}}%
\par}% to avoid weird spacing bug at the first section if no blank line is left after \makecvhead
@@ -150,7 +169,7 @@
% optional detailed information
\if@details%
\raggedleft%
- \addressfont\textcolor{color2}{%
+ \addressfont\textcolor{addresscolor}{%
{\bfseries\upshape\@firstname~\@lastname}\@firstdetailselementfalse%
% optional detailed information
\ifthenelse{\isundefined{\@addressstreet}}{}{\makenewline\addresssymbol\@addressstreet%
@@ -159,9 +178,10 @@
\collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number
\makenewline\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}%
\ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}%
- \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol\httpslink{\@homepage}}%
+ \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol%
+ \ifthenelse{\equal{\@homepageprotocol}{http}}{\httplink{\@homepage}}{\httpslink{\@homepage}}}%
\ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}}\fi%
- \end{minipage}\\[1em]
+ \end{minipage}\\[2em]
% recipient block
\begin{minipage}[t]{.5\textwidth}
\raggedright%
@@ -173,6 +193,8 @@
\hfill% US style
% \\[1em]% UK style
\@date\\[2em]% US informal style: "January 1, 1900"; UK formal style: "01/01/1900"
+ % optional subject
+ \ifthenelse{\isundefined{\@subject}}{}{{\bfseries\@subject\\[2em]}}
% opening
\raggedright%
\@opening\\[1.5em]%
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvheadii.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvheadii.sty
index b699242ed46..a36c8e1af4b 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvheadii.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvheadii.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvheadii.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvheadii}[2022-02-21 v2.3.1 modern curriculum vitae and letter header variant: 2]
+\ProvidesPackage{moderncvheadii}[2024-07-18 v2.4.1 modern curriculum vitae and letter header variant: 2]
% details options: "details" or "nodetails" (default)
\@initializeif{\if@details}\@detailsfalse
@@ -47,10 +47,10 @@
\renewcommand*{\quotefont}{\large\slshape}
% styles
-\renewcommand*{\namestyle}[1]{{\namefont\textcolor{color0}{#1}}}
-\renewcommand*{\titlestyle}[1]{{\titlefont\textcolor{color2}{#1}}}
-\renewcommand*{\addressstyle}[1]{{\addressfont\textcolor{color2}{#1}}}
-\renewcommand*{\quotestyle}[1]{{\quotefont\textcolor{color1}{#1}}}
+\renewcommand*{\namestyle}[1]{{\namefont\textcolor{lastnamecolor}{#1}}}
+\renewcommand*{\titlestyle}[1]{{\titlefont\textcolor{titlecolor}{#1}}}
+\renewcommand*{\addressstyle}[1]{{\addressfont\textcolor{addresscolor}{#1}}}
+\renewcommand*{\quotestyle}[1]{{\quotefont\textcolor{quotecolor}{#1}}}
% commands
\@initializecommand{\makeheaddetailssymbol}{%
@@ -110,7 +110,7 @@
\setlength\fboxrule{\@photoframewidth}%
\ifdim\@photoframewidth=0pt%
\setlength{\fboxsep}{0pt}\fi%
- {\color{color1}\framebox{\includegraphics[width=\@photowidth]{\@photo}}}}}%
+ {\color{pictureframecolor}\framebox{\includegraphics[width=\@photowidth]{\@photo}}}}}%
% name (pre-rendering)
\@initializelength{\makecvheadpicturewidth}%
\settowidth{\makecvheadpicturewidth}{\usebox{\makecvheadpicturebox}}%
@@ -121,9 +121,9 @@
\if@right\raggedleft\fi%
\namefont%
\if@alternate% alternate design: first- and lastname in lowercase with no space in between (distinction is made by color difference)
- {\color{color2!50}\MakeLowercase\@firstname}{\color{color2}\MakeLowercase\@lastname}%
+ {\color{firstnamecolor}\MakeLowercase\@firstname}{\color{lastnamecolor}\MakeLowercase\@lastname}%
\else% default design: first- and lastname as given with a space in between
- {\color{color2!50}\@firstname} {\color{color2}\@lastname}\fi}}%
+ {\color{firstnamecolor}\@firstname} {\color{lastnamecolor}\@lastname}\fi}}%
% rendering
\if@left%
\usebox{\makecvheadnamebox}%
@@ -131,11 +131,11 @@
\if@right%
\usebox{\makecvheadpicturebox}%
\usebox{\makecvheadnamebox}\fi\\[-.35em]%
- {\color{color2!50}\rule{\textwidth}{.25ex}}%
+ {\color{headrulecolor}\rule{\textwidth}{.25ex}}%
% optional detailed information
\if@details{%
\\\null%
- \addressfont\color{color2}%
+ \addressfont\color{addresscolor}%
\ifthenelse{\isundefined{\@addressstreet}}{}{\addtomakeheaddetails{\addresssymbol\@addressstreet}%
\ifthenelse{\equal{\@addresscity}{}}{}{\addtomakeheaddetails[~--~]{\@addresscity}}% if \addresstreet is defined, \addresscity and \addresscountry will always be defined but could be empty
\ifthenelse{\equal{\@addresscountry}{}}{}{\addtomakeheaddetails[~--~]{\@addresscountry}}%
@@ -144,7 +144,8 @@
\collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number
\addtomakeheaddetails{\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}}%
\ifthenelse{\isundefined{\@email}}{}{\addtomakeheaddetails{\emailsymbol\emaillink{\@email}}}%
- \ifthenelse{\isundefined{\@homepage}}{}{\addtomakeheaddetails{\homepagesymbol\httpslink{\@homepage}}}%
+ \ifthenelse{\isundefined{\@homepage}}{}{\addtomakeheaddetails{\homepagesymbol%
+ \ifthenelse{\equal{\@homepageprotocol}{http}}{\httplink{\@homepage}}{\httpslink{\@homepage}}}}%
\collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link
\addtomakeheaddetails{\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}}%
\ifthenelse{\isundefined{\@extrainfo}}{}{\addtomakeheaddetails{\@extrainfo}}%
@@ -157,15 +158,18 @@
\titlestyle{\MakeLowercase\@title}%
\else%
\titlestyle{\@title}\fi%
- }\\[2.5em]%
+ }
% optional quote
\ifthenelse{\isundefined{\@quote}}%
- {}%
- {{\null\hfill%
+ {\vspace{2.5em}}%
+ {%
+ \\[2.5em]%
+ {%
+ \centering%
\begin{minipage}{\quotewidth}%
\centering%
\quotestyle{\@quote}%
- \end{minipage}\hfill\null\\[2.5em]}}%
+ \end{minipage}\\[2.5em]}}%
\par}% to avoid weird spacing bug at the first section if no blank line is left after \maketitle
@@ -189,7 +193,9 @@
% date
\hfill% US style
% \\[1em]% UK style
- \@date\\[2em]% US informal style: "January 1, 1900"; UK formal style: "01/01/1900"
+ \@date\\[3em]% US informal style: "January 1, 1900"; UK formal style: "01/01/1900"
+ % optional subject
+ \ifthenelse{\isundefined{\@subject}}{}{{\bfseries\@subject\\[3em]}}
% opening
\raggedright%
\@opening\\[1.5em]%
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvheadiii.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvheadiii.sty
index e4dbafd5ae8..51a3aa2444c 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvheadiii.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvheadiii.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvheadiii.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvheadiii}[2022-02-21 v2.3.1 modern curriculum vitae and letter header variant: 3]
+\ProvidesPackage{moderncvheadiii}[2024-07-18 v2.4.1 modern curriculum vitae and letter header variant: 3]
% details options: "details" (default) or "nodetails"
\@initializeif{\if@details}\@detailsfalse
@@ -36,10 +36,12 @@
\renewcommand*{\quotefont}{\large\slshape}
% styles
-\renewcommand*{\namestyle}[1]{{\namefont\textcolor{color1}{#1}}}
-\renewcommand*{\titlestyle}[1]{{\titlefont\textcolor{color2!85}{#1}}}
-\renewcommand*{\addressstyle}[1]{{\addressfont\textcolor{color2}{#1}}}
-\renewcommand*{\quotestyle}[1]{{\quotefont\textcolor{color1}{#1}}}
+\renewcommand*{\namestyle}[1]{{\namefont\textcolor{namecolor}{#1}}}
+\renewcommand*{\firstnamestyle}[1]{{\namefont\textcolor{firstnamecolor}{#1}}}
+\renewcommand*{\lastnamestyle}[1]{{\namefont\textcolor{lastnamecolor}{#1}}}
+\renewcommand*{\titlestyle}[1]{{\titlefont\textcolor{titlecolor}{#1}}}
+\renewcommand*{\addressstyle}[1]{{\addressfont\textcolor{addresscolor}{#1}}}
+\renewcommand*{\quotestyle}[1]{{\quotefont\textcolor{quotecolor}{#1}}}
% commands
\@initializecommand{\makeheaddetailssymbol}{%
@@ -81,12 +83,12 @@
\parbox{\makeheaddetailswidth}{%
\centering%
% name and title
- \namestyle{\@firstname~\@lastname}%
+ \firstnamestyle{\@firstname}~\lastnamestyle{\@lastname}%
\ifthenelse{\equal{\@title}{}}{}{\titlestyle{~|~\@title}}% \isundefined doesn't work on \@title, as LaTeX itself defines \@title (before it possibly gets redefined by \title)
% optional detailed information
\if@details{%
\\%
- \addressfont\color{color2}%
+ \addressfont\color{addresscolor}%
\ifthenelse{\isundefined{\@addressstreet}}{}{\addtomakeheaddetails{\addresssymbol\@addressstreet}%
\ifthenelse{\equal{\@addresscity}{}}{}{\addtomakeheaddetails[~--~]{\@addresscity}}% if \addresstreet is defined, \addresscity and \addresscountry will always be defined but could be empty
\ifthenelse{\equal{\@addresscountry}{}}{}{\addtomakeheaddetails[~--~]{\@addresscountry}}%
@@ -95,11 +97,12 @@
\collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number
\addtomakeheaddetails{\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}}%
\ifthenelse{\isundefined{\@email}}{}{\addtomakeheaddetails{\emailsymbol\emaillink{\@email}}}%
- \ifthenelse{\isundefined{\@homepage}}{}{\addtomakeheaddetails{\homepagesymbol\httpslink{\@homepage}}}%
+ \ifthenelse{\isundefined{\@homepage}}{}{\addtomakeheaddetails{\homepagesymbol%
+ \ifthenelse{\equal{\@homepageprotocol}{http}}{\httplink{\@homepage}}{\httpslink{\@homepage}}}}%
\collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link
\addtomakeheaddetails{\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}}%
\ifthenelse{\isundefined{\@extrainfo}}{}{\addtomakeheaddetails{\@extrainfo}}%
- \flushmakeheaddetails}\fi}\\[2.5em]}% need to force a \par after this to avoid weird spacing bug at the first section if no blank line is left after \makehead
+ \flushmakeheaddetails}\fi}}% need to force a \par after this to avoid weird spacing bug at the first section if no blank line is left after \makehead
%-------------------------------------------------------------------------------
@@ -117,8 +120,15 @@
\makehead%
% optional quote
\ifthenelse{\isundefined{\@quote}}%
- {}%
- {{\centering\begin{minipage}{\quotewidth}\centering\quotestyle{\@quote}\end{minipage}\\[2.5em]}}%
+ {\vspace{2.5em}}%
+ {%
+ \\[2.5em]%
+ {%
+ \centering%
+ \begin{minipage}{\quotewidth}%
+ \centering%
+ \quotestyle{\@quote}%
+ \end{minipage}\\[2.5em]}}%
\par}% to avoid weird spacing bug at the first section if no blank line is left after \maketitle}
@@ -132,9 +142,25 @@
\renewcommand*{\makeletterhead}{%
% recompute lengths (in case we are switching from letter to resume, or vice versa)
\recomputeletterlengths%
- % sender block
- \makehead%
- \par%
+ % sender contact info
+ \hfill%
+ \begin{minipage}{.5\textwidth}%
+ % optional detailed information
+ \if@details%
+ \raggedleft%
+ \addressfont\textcolor{color2}{%
+ {\bfseries\upshape\@firstname~\@lastname}\@firstdetailselementfalse%
+ % optional detailed information
+ \ifthenelse{\isundefined{\@addressstreet}}{}{\makenewline\addresssymbol\@addressstreet%
+ \ifthenelse{\equal{\@addresscity}{}}{}{\makenewline\@addresscity}% if \addresstreet is defined, \addresscity and addresscountry will always be defined but could be empty
+ \ifthenelse{\equal{\@addresscountry}{}}{}{\makenewline\@addresscountry}}%
+ \collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number
+ \makenewline\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}%
+ \ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}%
+ \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol%
+ \ifthenelse{\equal{\@homepageprotocol}{http}}{\httplink{\@homepage}}{\httpslink{\@homepage}}}%
+ \ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}}\fi%
+ \end{minipage}\\[2em]
% recipient block
\begin{minipage}[t]{.5\textwidth}
\raggedright%
@@ -145,7 +171,9 @@
% date
\hfill% US style
% \\[1em]% UK style
- \@date\\[2em]% US informal style: "January 1, 1900"; UK formal style: "01/01/1900"
+ \@date\\[3em]% US informal style: "January 1, 1900"; UK formal style: "01/01/1900"
+ % optional subject
+ \ifthenelse{\isundefined{\@subject}}{}{{\bfseries\@subject\\[3em]}}
% opening
\raggedright%
\@opening\\[1.5em]%
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvheadiv.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvheadiv.sty
index 9b59dacb9be..5a088fdb732 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvheadiv.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvheadiv.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvheadiv.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvheadiv}[2022-02-21 v2.3.1 modern curriculum vitae and letter header variant: 4]
+\ProvidesPackage{moderncvheadiv}[2024-07-18 v2.4.1 modern curriculum vitae and letter header variant: 4]
% details options: "details" (default) or "nodetails"
\@initializeif{\if@details}\@detailsfalse
@@ -38,10 +38,12 @@
\renewcommand*{\quotefont}{\large\itshape}
% styles
-\renewcommand*{\namestyle}[1]{{\namefont\textcolor{color0}{#1}}}
-\renewcommand*{\titlestyle}[1]{{\titlefont\textcolor{color2}{#1}}}
-\renewcommand*{\addressstyle}[1]{{\addressfont\textcolor{color2}{#1}}}
-\renewcommand*{\quotestyle}[1]{{\quotefont\textcolor{color1}{#1}}}
+\renewcommand*{\namestyle}[1]{{\namefont\textcolor{namecolor}{#1}}}
+\renewcommand*{\titlestyle}[1]{{\titlefont\textcolor{titlecolor}{#1}}}
+\renewcommand*{\addressstyle}[1]{{\addressfont\textcolor{addresscolor}{#1}}}
+\renewcommand*{\quotestyle}[1]{{\quotefont\textcolor{quotecolor}{#1}}}
+\renewcommand*{\firstnamestyle}[1]{{\namefont\textcolor{firstnamecolor}{#1}}}
+\renewcommand*{\lastnamestyle}[1]{{\namefont\textcolor{lastnamecolor}{#1}}}
%-------------------------------------------------------------------------------
@@ -80,7 +82,7 @@
\ifthenelse{\isundefined{\@photo}}%
{}%
{%
- \color{color1}%
+ \color{pictureframecolor}%
\setlength\fboxrule{\@photoframewidth}%
\ifdim\@photoframewidth=0pt%
\setlength{\fboxsep}{0pt}\fi%
@@ -91,7 +93,7 @@
{\setlength{\makecvheadnamewidth}{\textwidth-\makecvheadpicturewidth}}%
{}%
\begin{minipage}[b]{\makecvheadnamewidth}%
- \namestyle{\@firstname\ \@lastname}%
+ \firstnamestyle{\@firstname}~\lastnamestyle{\@lastname}%
\ifthenelse{\equal{\@title}{}}{}{\\[1.25em]\titlestyle{\@title}}%
\end{minipage}%
% optional photo
@@ -103,7 +105,7 @@
% optional details
\if@details%
\makecvheadinfo{%
- \addressfont\color{color2}%
+ \addressfont\color{addresscolor}%
\ifthenelse{\isundefined{\@addressstreet}}{}{\makenewline\addresssymbol\@addressstreet%
\ifthenelse{\equal{\@addresscity}{}}{}{\makenewline\@addresscity}% if \addresstreet is defined, \addresscity and \addresscountry will always be defined but could be empty
\ifthenelse{\equal{\@addresscountry}{}}{}{\makenewline\@addresscountry}}%
@@ -111,7 +113,8 @@
\collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number
\makenewline\hbox to 1.0em{\csname\collectionloopkey phonesymbol\endcsname}~\collectionloopitem}%
\ifthenelse{\isundefined{\@email}}{}{\makenewline\hbox to 1.0em{\emailsymbol}~\emaillink{\@email}}%
- \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\hbox to 1.0em{\homepagesymbol}~\httpslink{\@homepage}}%
+ \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\hbox to 1.0em{\homepagesymbol}~%
+ \ifthenelse{\equal{\@homepageprotocol}{http}}{\httplink{\@homepage}}{\httpslink{\@homepage}}}%
\collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link
\makenewline\hbox to 1.0em{\csname\collectionloopkey socialsymbol\endcsname}~\collectionloopitem}%
\ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}}\fi}
@@ -143,13 +146,15 @@
\@recipientaddress}\\[1em]%
% date
\@date\\[2em]%
+ % optional subject
+ \ifthenelse{\isundefined{\@subject}}{}{{\bfseries\@subject\\[2em]}}
% opening
\@opening\\[1.5em]%
% sender contact info
\if@details%
\hspace{0pt}%
\marginpar{%
- \addressfont\textcolor{color2}{%
+ \addressfont\textcolor{addresscolor}{%
{\bfseries\@firstname~\@lastname}\@firstdetailselementfalse%
\ifthenelse{\isundefined{\@addressstreet}}{}{\makenewline\addresssymbol\@addressstreet%
\ifthenelse{\equal{\@addresscity}{}}{}{\makenewline\@addresscity}% if \addresstreet is defined, \addresscity and \addresscountry will always be defined but could be empty
@@ -157,7 +162,8 @@
\collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number
\makenewline\hbox to 1.0em{\csname\collectionloopkey phonesymbol\endcsname}~\collectionloopitem}%
\ifthenelse{\isundefined{\@email}}{}{\makenewline\hbox to 1.0em{\emailsymbol}~\emaillink{\@email}}%
- \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\hbox to 1.0em{\homepagesymbol}~\httpslink{\@homepage}}%
+ \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\hbox to 1.0em{\homepagesymbol}~%
+ \ifthenelse{\equal{\@homepageprotocol}{http}}{\httplink{\@homepage}}{\httpslink{\@homepage}}}%
\collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link
\makenewline\hbox to 1.0em{\csname\collectionloopkey socialsymbol\endcsname}~\collectionloopitem}%
\ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}}}%
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvheadv.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvheadv.sty
index c4d40843240..e92233ef348 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvheadv.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvheadv.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvheadv.sty'.
-%% Copyright 2015-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2015-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvheadv}[2022-02-21 v2.3.1 modern curriculum vitae and letter header variant: 5]
+\ProvidesPackage{moderncvheadv}[2024-07-18 v2.4.1 modern curriculum vitae and letter header variant: 5]
% details options: "details" (default) or "nodetails"
\@initializeif{\if@details}\@detailsfalse
@@ -37,10 +37,12 @@
\renewcommand*{\quotefont}{\large\slshape}
% styles
-\renewcommand*{\namestyle}[1]{{\namefont\textcolor{color0}{#1}}}
-\renewcommand*{\titlestyle}[1]{{\titlefont\textcolor{color2}{#1}}}
-\renewcommand*{\addressstyle}[1]{{\addressfont\textcolor{color2}{#1}}}
-\renewcommand*{\quotestyle}[1]{{\quotefont\textcolor{color1}{#1}}}
+\renewcommand*{\namestyle}[1]{{\namefont\textcolor{namecolor}{#1}}}
+\renewcommand*{\firstnamestyle}[1]{{\namefont\textcolor{firstnamecolor}{#1}}}
+\renewcommand*{\lastnamestyle}[1]{{\namefont\textcolor{lastnamecolor}{#1}}}
+\renewcommand*{\titlestyle}[1]{{\titlefont\textcolor{titlecolor}{#1}}}
+\renewcommand*{\addressstyle}[1]{{\addressfont\textcolor{addresscolor}{#1}}}
+\renewcommand*{\quotestyle}[1]{{\quotefont\textcolor{quotecolor}{#1}}}
%-------------------------------------------------------------------------------
@@ -61,7 +63,7 @@
\ifthenelse{\isundefined{\@photo}}%
{}%
{%
- \color{color1}%
+ \color{pictureframecolor}%
\setlength{\fboxrule}{\@photoframewidth}%
\ifdim\@photoframewidth=0pt%
\setlength{\fboxsep}{0pt}\fi%
@@ -75,7 +77,7 @@
% optional details
\if@details%
\ifthenelse{\isundefined{\@photo}}{}{\\[0.5em]}%
- \addressfont\color{color2}%
+ \addressfont\color{addresscolor}%
\ifthenelse{\isundefined{\@addressstreet}}{}{\makenewline\addresssymbol\@addressstreet%
\ifthenelse{\equal{\@addresscity}{}}{}{\makenewline\@addresscity}% if \addresstreet is defined, \addresscity and \addresscountry will always be defined but could be empty
\ifthenelse{\equal{\@addresscountry}{}}{}{\makenewline\@addresscountry}}%
@@ -83,7 +85,8 @@
\collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number
\makenewline\csname\collectionloopkey phonesymbol\endcsname~\collectionloopitem}%
\ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol~\emaillink{\@email}}%
- \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol~\httpslink{\@homepage}}%
+ \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol~%
+ \ifthenelse{\equal{\@homepageprotocol}{http}}{\httplink{\@homepage}}{\httpslink{\@homepage}}}%
\collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link
\makenewline\csname\collectionloopkey socialsymbol\endcsname~\collectionloopitem}%
\ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}\fi}%
@@ -91,23 +94,32 @@
% name and optional title
\newlength{\makecvheadpictureboxskip}%
\setlength{\makecvheadpictureboxskip}{\totalheightof{\usebox{\makecvheadpicturebox}}}%
- \namestyle{\@firstname\ \@lastname}%
+ \firstnamestyle{\@firstname}~\lastnamestyle{\@lastname}%
\ifthenelse{\equal{\@title}{}}{
\ifthenelse{\isundefined{\@quote}}%
- {}%
- {\\[1.25em]\begin{minipage}{\quotewidth}\quotestyle{\@quote}\end{minipage}\\[2.5em]}
- }{
- \\[1.25em]\titlestyle{\@title}\\[2.5em]%
+ {}%
+ {%
+ \\[1.25em]%
+ \begin{minipage}{\quotewidth}%
+ \quotestyle{\@quote}%
+ \end{minipage}}%
+ }{%
+ \\[1.25em]%
+ \titlestyle{\@title}
% optional quote
\ifthenelse{\isundefined{\@quote}}%
- {}%
- {\begin{minipage}{\quotewidth}\quotestyle{\@quote}\end{minipage}\\[2.5em]}}}%
+ {\vspace{2.5em}}%
+ {%
+ \\[2.5em]%
+ \begin{minipage}{\quotewidth}%
+ \quotestyle{\@quote}
+ \end{minipage}}}}%
\par}% to avoid weird spacing bug at the first section if no blank line is left after \makecvhead
% underlying command to implement \makecvtitle, identical to \@cvitem from moderncvbodyv
\let\standarddoublebackslash\\%
\newcommand*{\@makecvtitle}[3][.5ex]{%
- \arrayrulecolor{color1}%
+ \arrayrulecolor{headrulecolor}%
\setlength\arrayrulewidth{1.2\p@}%
\if@aftersection\else%
\vspace*{-\arrayrulewidth}\fi% HACK; I don't understand where the space is coming from, nor what it's exact value is :(
@@ -137,7 +149,7 @@
% optional detailed information
\if@details%
\raggedleft%
- \addressfont\textcolor{color2}{%
+ \addressfont\textcolor{addresscolor}{%
{\bfseries\upshape\@firstname~\@lastname}\@firstdetailselementfalse%
% optional detailed information
\ifthenelse{\isundefined{\@addressstreet}}{}{\makenewline\addresssymbol\@addressstreet%
@@ -146,9 +158,10 @@
\collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number
\makenewline\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}%
\ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}%
- \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol\httpslink{\@homepage}}%
+ \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol%
+ \ifthenelse{\equal{\@homepageprotocol}{http}}{\httplink{\@homepage}}{\httpslink{\@homepage}}}%
\ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}}\fi%
- \end{minipage}\\[1em]
+ \end{minipage}\\[2em]
% recipient block
\begin{minipage}[t]{.5\textwidth}
\raggedright%
@@ -159,7 +172,9 @@
% date
\hfill% US style
% \\[1em]% UK style
- \@date\\[2em]% US informal style: "January 1, 1900"; UK formal style: "01/01/1900"
+ \@date\\[3em]% US informal style: "January 1, 1900"; UK formal style: "01/01/1900"
+ % optional subject
+ \ifthenelse{\isundefined{\@subject}}{}{{\bfseries\@subject\\[2em]}}
% opening
\raggedright%
\@opening\\[1.5em]%
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvheadvi.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvheadvi.sty
index 8595901901d..ecd6dbb0411 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvheadvi.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvheadvi.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvheadvi.sty'.
-%% Copyright 2015-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2015-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvheadvi}[2022-02-21 v2.3.1 modern curriculum vitae and letter header: 6]
+\ProvidesPackage{moderncvheadvi}[2024-07-18 v2.4.1 modern curriculum vitae and letter header: 6]
% details options: "details" (default) or "nodetails"
\@initializeif{\if@details}\@detailsfalse
@@ -24,7 +24,7 @@
\DeclareOption{right} {\@leftfalse\@righttrue}
\DeclareOption*{}% avoid choking on unknown options
-\ExecuteOptions{details, left}
+\ExecuteOptions{details,left}
\ProcessOptions*\relax% \ProcessOptions* processes the options in the order provided (i.e., with the later ones possibly overriding the former ones), while \ProcessOptions processes them in the order of the package
@@ -43,20 +43,22 @@
\renewcommand*{\quotefont}{\large\slshape}
% styles
-\renewcommand*{\namestyle}[1]{{\namefont\textcolor{color1}{#1}}}
-\renewcommand*{\titlestyle}[1]{{\titlefont\textcolor{color2!85}{#1}}}
-\renewcommand*{\addressstyle}[1]{{\addressfont\textcolor{color2}{#1}}}
-\renewcommand*{\quotestyle}[1]{{\quotefont\textcolor{color1}{#1}}}
+\renewcommand*{\namestyle}[1]{{\namefont\textcolor{namecolor}{#1}}}
+\renewcommand*{\firstnamestyle}[1]{{\namefont\textcolor{firstnamecolor}{#1}}}
+\renewcommand*{\lastnamestyle}[1]{{\namefont\textcolor{lastnamecolor}{#1}}}
+\renewcommand*{\titlestyle}[1]{{\titlefont\textcolor{titlecolor}{#1}}}
+\renewcommand*{\addressstyle}[1]{{\addressfont\textcolor{addresscolor}{#1}}}
+\renewcommand*{\quotestyle}[1]{{\quotefont\textcolor{quotecolor}{#1}}}
% commands
\@initializecommand{\makehead}{%
\setlength{\makeheaddetailswidth}{\textwidth}%
% name and title
\if@left\hfill\fi%
- \namestyle{\@firstname~\@lastname}%
+ \firstnamestyle{\@firstname}~\lastnamestyle{\@lastname}%
\ifthenelse{\equal{\@title}{}}{}{\titlestyle{~|~\@title}}\\[-.35em]% \isundefined doesn't work on \@title, as LaTeX itself defines \@title (before it possibly gets redefined by \title)
% rule
- {\color{color1}\rule{\textwidth}{.25ex}}}
+ {\color{bodyrulecolor}\rule{\textwidth}{.25ex}}}
%-------------------------------------------------------------------------------
% resume head definition
@@ -107,7 +109,7 @@
% optional detailed information
\if@details{%
\\\null%
- \addressfont\color{color2}%
+ \addressfont\color{addresscolor}%
\ifthenelse{\isundefined{\@addressstreet}}{}{\addtomakeheaddetails{\addresssymbol\@addressstreet}%
\ifthenelse{\equal{\@addresscity}{}}{}{\addtomakeheaddetails[~--~]{\@addresscity}}% if \addresstreet is defined, \addresscity and \addresscountry will always be defined but could be empty
\ifthenelse{\equal{\@addresscountry}{}}{}{\addtomakeheaddetails[~--~]{\@addresscountry}}%
@@ -116,7 +118,8 @@
\collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number
\addtomakeheaddetails{\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}}%
\ifthenelse{\isundefined{\@email}}{}{\addtomakeheaddetails{\emailsymbol\emaillink{\@email}}}%
- \ifthenelse{\isundefined{\@homepage}}{}{\addtomakeheaddetails{\homepagesymbol\httpslink{\@homepage}}}%
+ \ifthenelse{\isundefined{\@homepage}}{}{\addtomakeheaddetails{\homepagesymbol%
+ \ifthenelse{\equal{\@homepageprotocol}{http}}{\httplink{\@homepage}}{\httpslink{\@homepage}}}}%
\collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link
\addtomakeheaddetails{\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}}%
\ifthenelse{\isundefined{\@extrainfo}}{}{\addtomakeheaddetails{\@extrainfo}}%
@@ -154,7 +157,9 @@
% date
\hfill% US style
% \\[1em]% UK style
- \@date\\[2em]% US informal style: "January 1, 1900"; UK formal style: "01/01/1900"
+ \@date\\[3em]% US informal style: "January 1, 1900"; UK formal style: "01/01/1900"
+ % optional subject
+ \ifthenelse{\isundefined{\@subject}}{}{{\bfseries\@subject\\[3em]}}
% opening
\raggedright%
\@opening\\[1.5em]%
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvheadvii.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvheadvii.sty
new file mode 100644
index 00000000000..f0c259ec050
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvheadvii.sty
@@ -0,0 +1,226 @@
+%% start of file `moderncvheadvii.sty'.
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com).
+%% Copyright 2023 Javier Lopez-Gomez (javier.lopez.gomez@proton.me).
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License version 1.3c,
+% available at http://www.latex-project.org/lppl/.
+
+
+%-------------------------------------------------------------------------------
+% identification
+%-------------------------------------------------------------------------------
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{moderncvheadvii}[2023/11/21 v2.0.0 modern curriculum vitae and letter header variant: 7]
+
+% details options: "details" (default) or "nodetails"
+\@initializeif{\if@details}\@detailsfalse
+\DeclareOption{details} {\@detailstrue}
+\DeclareOption{nodetails} {\@detailsfalse}
+% QR options: "qr" (default) or "noqr". If "qr" is specified, a QR code is generated to point to the
+% homepage and placed near the details section
+\@initializeif{\if@headqr}\@headqrfalse
+\DeclareOption{qr} {\@headqrtrue}
+\DeclareOption{noqr} {\@headqrfalse}
+
+% left/right options: "left" (default) or "right"
+\@initializeif{\if@left} \@leftfalse
+\DeclareOption{left} {\@lefttrue\@rightfalse}
+\@initializeif{\if@right}\@rightfalse
+\DeclareOption{right} {\@leftfalse\@righttrue}
+
+\DeclareOption*{}% avoid choking on unknown options
+\ExecuteOptions{details,qr,left}
+\ProcessOptions*\relax% \ProcessOptions* processes the options in the order provided (i.e., with the later ones possibly overriding the former ones), while \ProcessOptions processes them in the order of the package
+
+
+%-------------------------------------------------------------------------------
+% required packages
+%-------------------------------------------------------------------------------
+\RequirePackage{qrcode}
+\RequirePackage{tikz}
+\usetikzlibrary{tikzmark,fit}
+
+
+%-------------------------------------------------------------------------------
+% overall head definition
+%-------------------------------------------------------------------------------
+\@ifundefined{\string\color@headTL}{\colorlet{headTL}{color1}}{}
+\@ifundefined{\string\color@headBR}{\colorlet{headBR}{color1}}{}
+\@ifundefined{\string\color@headtext}{\colorlet{headtext}{color2}}{}
+\@ifundefined{\string\color@headhr}{\colorlet{headhr}{color2}}{}
+
+% fonts
+\renewcommand*{\namefont}{\fontsize{30}{32}\rmfamily\mdseries\upshape}
+\renewcommand*{\titlefont}{\LARGE\mdseries\slshape}
+\renewcommand*{\addressfont}{\small\mdseries\slshape}
+\renewcommand*{\quotefont}{\large\slshape}
+
+% styles
+\renewcommand*{\namestyle}[1]{{\namefont\textcolor{headtext}{#1}}}
+\renewcommand*{\titlestyle}[1]{{\titlefont\textcolor{headtext}{#1}}}
+\renewcommand*{\addressstyle}[1]{{\addressfont\textcolor{headtext}{#1}}}
+\renewcommand*{\quotestyle}[1]{{\quotefont\textcolor{color0}{#1}}}
+
+
+%-------------------------------------------------------------------------------
+% resume head definition
+%-------------------------------------------------------------------------------
+% lengths
+\@initializelength{\quotewidth}
+\@initializelength{\makecvheadnamewidth}% optional makecvheadname width to force a certain width (if set/remains to 0pt, the width is calculated automatically)
+\renewcommand*{\recomputecvheadlengths}{%
+ \setlength{\quotewidth}{0.65\textwidth}}
+
+% commands
+\renewcommand*{\makecvhead}{%
+ % recompute lengths (in case we are switching from letter to resume, or vice versa)
+ \recomputecvlengths%
+ % optional detailed information (pre-rendering)
+ \@initializebox{\makecvheaddetailsbox}%
+ \if@details%
+ \def\phonesdetails{}%
+ \collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number
+ \protected@edef\phonesdetails{\phonesdetails\protect\makenewline\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}}%
+ \def\socialsdetails{}%
+ \collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link
+ \protected@edef\socialsdetails{\socialsdetails\protect\makenewline\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}}%
+ \savebox{\makecvheaddetailsbox}{%
+ \addressfont\color{headtext}%
+ \if@left\begin{tabular}[b]{@{}r@{}}\fi%
+ \if@right\begin{tabular}[b]{@{}l@{}}\fi%
+ \ifthenelse{\isundefined{\@addressstreet}}{}{\makenewline\addresssymbol\@addressstreet%
+ \ifthenelse{\equal{\@addresscity}{}}{}{\makenewline\@addresscity}% if \addresstreet is defined, \addresscity and addresscountry will always be defined but could be empty
+ \ifthenelse{\equal{\@addresscountry}{}}{}{\makenewline\@addresscountry}}%
+ \phonesdetails% needs to be pre-rendered as loops and tabulars seem to conflict
+ \ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}%
+ \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol\httplink{\@homepage}}%
+ \socialsdetails% needs to be pre-rendered as loops and tabulars seem to conflict
+ \ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}%
+ \end{tabular}
+ }\fi%
+ % optional photo (pre-rendering)
+ \@initializebox{\makecvheadpicturebox}%
+ \savebox{\makecvheadpicturebox}{%
+ \ifthenelse{\isundefined{\@photo}}%
+ {}%
+ {%
+ \if@right%
+ \hspace*{\separatorcolumnwidth}\fi%
+ \begin{tikzpicture}
+ \path[top color=headBR,bottom color=headTL,shading angle=45] (0,0) circle (\dimexpr\@photowidth/2+\@photoframewidth*2);
+ \path[fill=white] (0,0) circle (\dimexpr\@photowidth/2+\@photoframewidth);
+ \begin{scope}
+ \clip (0,0) circle (\dimexpr\@photowidth/2);
+ \node[inner sep=0pt] at (0,0) {\includegraphics[width=\@photowidth]{\@photo}};
+ \end{scope}
+ \end{tikzpicture}%
+ }%
+ \if@left%
+ \hspace*{\separatorcolumnwidth}\fi}%
+ % optional QR for homepage (pre-rendering)
+ \@initializebox{\makecvheadqrbox}%
+ \if@headqr%
+ \savebox{\makecvheadqrbox}{%
+ \ifthenelse{\isundefined{\@homepage}}{}{\tikz\node[inner sep=1ex,fill=white]{\qrcode[height=1.5cm]{\@homepage}};}%
+ }\fi%
+ % name and title (pre-rendering)
+ \@initializelength{\makecvheaddetailswidth}\settowidth{\makecvheaddetailswidth}{\usebox{\makecvheaddetailsbox}}%
+ \@initializelength{\makecvheadpicturewidth}\settowidth{\makecvheadpicturewidth}{\usebox{\makecvheadpicturebox}}%
+ \ifthenelse{\lengthtest{\makecvheadnamewidth=0pt}}% check for dummy value (equivalent to \ifdim\makecvheadnamewidth=0pt)
+ {\setlength{\makecvheadnamewidth}{\textwidth-\makecvheaddetailswidth-\makecvheadpicturewidth}}%
+ {}%
+ \@initializebox{\makecvheadnamebox}%
+ \savebox{\makecvheadnamebox}{%
+ \begin{minipage}[b]{\makecvheadnamewidth}%
+ \if@left\raggedright\fi%
+ \if@right\raggedleft\fi%
+ \namestyle{\@firstname\ {\scshape\@lastname}}%
+ \ifthenelse{\equal{\@title}{}}{}{\\[1.25em]\titlestyle{\@title}}%
+ \end{minipage}}%
+ % rendering
+ \begin{tikzpicture}[remember picture,overlay]
+ \node(head-bg) [top color=headTL,bottom color=headBR,shading angle=45,inner sep=0pt,
+ fit={(current page.north west)(current page.north east)(pic cs:head-end)}] {};
+ % Users may define `\@moderncvheadBackground` for additional background decoration
+ \ifthenelse{\isundefined{\@moderncvheadBackground}}{}{\@moderncvheadBackground}
+
+ \path[draw,line width=\@photoframewidth]
+ (head-bg.south west) edge[color=headhr!85!black] ([xshift=8em]head-bg.south west)
+ ([xshift=8em]head-bg.south west) edge[color=headhr] ([xshift=-8em]head-bg.south east)
+ ([xshift=-8em]head-bg.south east) edge[color=headhr!85!black] (head-bg.south east);
+ \end{tikzpicture}%
+ \if@left%
+ \usebox{\makecvheadpicturebox}%
+ \usebox{\makecvheadnamebox}%
+ \hfill%
+ \llap{\usebox{\makecvheaddetailsbox}}% \llap is used to suppress the width of the box, allowing overlap if the value of makecvheadnamewidth is forced
+ \usebox{\makecvheadqrbox}\fi%
+ \if@right%
+ \usebox{\makecvheadqrbox}%
+ \rlap{\usebox{\makecvheaddetailsbox}}% \llap is used to suppress the width of the box, allowing overlap if the value of makecvheadnamewidth is forced
+ \hfill%
+ \usebox{\makecvheadnamebox}%
+ \usebox{\makecvheadpicturebox}\fi%
+ \\[.15em]%
+ \tikzmark{head-end}\\[.15em]%
+ % optional quote
+ \ifthenelse{\isundefined{\@quote}}%
+ {}%
+ {{\centering\begin{minipage}{\quotewidth}\centering\quotestyle{\@quote}\end{minipage}\\[.15em]}}%
+ \par}% to avoid weird spacing bug at the first section if no blank line is left after \makecvhead
+
+
+%-------------------------------------------------------------------------------
+% letter head definition
+%-------------------------------------------------------------------------------
+% lengths
+%\renewcommand*{\recomputeletterheadlengths}{}
+
+% commands
+\renewcommand*{\makeletterhead}{%
+ % recompute lengths (in case we are switching from letter to resume, or vice versa)
+ \recomputeletterlengths%
+ % sender contact info
+ \hfill%
+ \begin{minipage}{.5\textwidth}%
+ % optional detailed information
+ \if@details%
+ \raggedleft%
+ \addressfont\textcolor{color2}{%
+ {\bfseries\upshape\@firstname~\@lastname}\@firstdetailselementfalse%
+ % optional detailed information
+ \ifthenelse{\isundefined{\@addressstreet}}{}{\makenewline\addresssymbol\@addressstreet%
+ \ifthenelse{\equal{\@addresscity}{}}{}{\makenewline\@addresscity}% if \addresstreet is defined, \addresscity and addresscountry will always be defined but could be empty
+ \ifthenelse{\equal{\@addresscountry}{}}{}{\makenewline\@addresscountry}}%
+ \collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number
+ \makenewline\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}%
+ \ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}%
+ \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol\httplink{\@homepage}}%
+ \ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}}\fi%
+ \end{minipage}\\[1em]
+ % recipient block
+ \begin{minipage}[t]{.5\textwidth}
+ \raggedright%
+ \addressfont%
+ {\bfseries\upshape\@recipientname}\\%
+ \@recipientaddress%
+ \end{minipage}
+ % date
+ \hfill% US style
+% \\[1em]% UK style
+ \@date\\[2em]% US informal style: "January 1, 1900"; UK formal style: "01/01/1900"
+ % optional subject
+ \ifthenelse{\isundefined{\@subject}}{}{{\bfseries\@subject\\[3em]}}
+ % opening
+ \raggedright%
+ \@opening\\[1.5em]%
+ % ensure no extra spacing after \makelettertitle due to a possible blank line
+% \ignorespacesafterend% not working
+ \hspace{0pt}\par\vspace{-\baselineskip}\vspace{-\parskip}}
+
+
+\endinput
+
+
+%% end of file `moderncvheadvii.sty'.
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncviconsacademic.sty b/Master/texmf-dist/tex/latex/moderncv/moderncviconsacademic.sty
index e1eae589aa6..cf7bbbb5365 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncviconsacademic.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncviconsacademic.sty
@@ -1,5 +1,5 @@
%% start of file `moderncviconsacademic.sty'.
-%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncviconsacademic}[2022-02-21 v2.3.1 modern curriculum vitae icons: academicons]
+\ProvidesPackage{moderncviconsacademic}[2024-07-18 v2.4.1 modern curriculum vitae icons: academicons]
%-------------------------------------------------------------------------------
@@ -18,7 +18,19 @@
%-------------------------------------------------------------------------------
% Package for academic icons
\RequirePackage{academicons}
+\RequirePackage{xcolor}
+%-------------------------------------------------------------------------------
+% set colors
+%-------------------------------------------------------------------------------
+\input{moderncvcolors.tex}
+
+\providecolor{orcid}{named}{default-socialicon-color}
+\providecolor{researchgate}{named}{default-socialicon-color}
+\providecolor{researcherid}{named}{default-socialicon-color}
+\providecolor{googlescholar}{named}{default-socialicon-color}
+\providecolor{arxiv}{named}{default-socialicon-color}
+\providecolor{inspire}{named}{default-socialicon-color}
%-------------------------------------------------------------------------------
% all symbols described in moderncv.cls
@@ -39,14 +51,16 @@
%\newcommand*{\stackoverflowsocialsymbol}{}
%\newcommand*{\bitbucketsocialsymbol} {}
%\newcommand*{\skypesocialsymbol} {}
-\renewcommand*{\orcidsocialsymbol} {{\small\aiOrcid}~}
-\renewcommand*{\researchgatesocialsymbol} {{\small\aiResearchGateSquare}~} % alternative: \aiResearchGate
-\renewcommand*{\researcheridsocialsymbol} {{\small\aiResearcherIDSquare}~} % alternative: \aiResearcherID
-\renewcommand*{\googlescholarsocialsymbol}{{\small\aiGoogleScholar}~}
+\renewcommand*{\orcidsocialsymbol} {{\color{orcid}\small\aiOrcid}~}
+\renewcommand*{\researchgatesocialsymbol} {{\color{researchgate}\small\aiResearchGateSquare}~} % alternative: \aiResearchGate
+\renewcommand*{\researcheridsocialsymbol} {{\color{researcherid}\small\aiResearcherIDSquare}~} % alternative: \aiResearcherID
+\renewcommand*{\googlescholarsocialsymbol}{{\color{googlescholar}\raisebox{-1pt}{\large\aiGoogleScholar}}~}
%\newcommand*{\telegramsocialsymbol} {}
%\newcommand*{\whatsappsocialsymbol} {}
%\newcommand*{\matrixsocialsymbol} {}
%\newcommand*{\signalsocialsymbol} {}
+\renewcommand*{\arxivsocialsymbol}{{\color{arxiv}{\small\aiarXiv}}~}
+\renewcommand*{\inspiresocialsymbol}{{\color{inspire}{\small\aiInspire}}~}
\endinput
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncviconsawesome.sty b/Master/texmf-dist/tex/latex/moderncv/moderncviconsawesome.sty
index 2a0ea3a23cd..a51729faa6f 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncviconsawesome.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncviconsawesome.sty
@@ -1,5 +1,5 @@
%% start of file `moderncviconsawesome.sty'.
-%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,13 +10,51 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncviconsawesome}[2022-02-21 v2.3.1 modern curriculum vitae icons: awesome]
+\ProvidesPackage{moderncviconsawesome}[2024-07-18 v2.4.1 modern curriculum vitae icons: awesome]
%-------------------------------------------------------------------------------
% required packages
%-------------------------------------------------------------------------------
% Font Awesome font
\RequirePackage{fontawesome5}
+\RequirePackage{xcolor}
+
+%-------------------------------------------------------------------------------
+% set colors
+%-------------------------------------------------------------------------------
+\input{moderncvcolors.tex}
+
+\providecolor{address}{named}{default-socialicon-color}
+\providecolor{mobilephone}{named}{default-socialicon-color}
+\providecolor{fixedphone}{named}{default-socialicon-color}
+\providecolor{faxphone}{named}{default-socialicon-color}
+\providecolor{email}{named}{default-socialicon-color}
+\providecolor{homepage}{named}{default-socialicon-color}
+\providecolor{googlescholar}{named}{default-socialicon-color}
+\providecolor{linkedin}{named}{default-socialicon-color}
+\providecolor{xing}{named}{default-socialicon-color}
+\providecolor{twitter}{named}{default-socialicon-color}
+\providecolor{mastodon}{named}{default-socialicon-color}
+\providecolor{github}{named}{default-socialicon-color}
+\providecolor{gitlab}{named}{default-socialicon-color}
+\providecolor{stackoverflow}{named}{default-socialicon-color}
+\providecolor{bitbucket}{named}{default-socialicon-color}
+\providecolor{skype}{named}{default-socialicon-color}
+\providecolor{orcid}{named}{default-socialicon-color}
+\providecolor{researchgate}{named}{default-socialicon-color}
+\providecolor{telegram}{named}{default-socialicon-color}
+\providecolor{whatsapp}{named}{default-socialicon-color}
+\providecolor{discord}{named}{default-socialicon-color}
+\providecolor{twitch}{named}{default-socialicon-color}
+\providecolor{youtube}{named}{default-socialicon-color}
+\providecolor{tiktok}{named}{default-socialicon-color}
+\providecolor{instagram}{named}{default-socialicon-color}
+\providecolor{soundcloud}{named}{default-socialicon-color}
+\providecolor{steam}{named}{default-socialicon-color}
+\providecolor{xbox}{named}{default-socialicon-color}
+\providecolor{playstation}{named}{default-socialicon-color}
+\providecolor{battlenet}{named}{default-socialicon-color}
+\providecolor{born}{named}{default-socialicon-color}
%-------------------------------------------------------------------------------
% all symbols described in moderncv.cls
@@ -28,28 +66,41 @@
%\renewcommand*{\addresssymbol} {}
-\renewcommand*{\mobilephonesymbol} {{\small\faMobile*}~} % alternative: \faMobile (solid style)
-\renewcommand*{\fixedphonesymbol} {{\small\faPhone*}~} % alternative: \faPhone (reversed)
-\renewcommand*{\faxphonesymbol} {{\small\faFax}~} % alternative: \faPrint
-\renewcommand*{\emailsymbol} {{\small\faEnvelope[regular]}~} % alternative: \faInbox, \faEnvelope (solid style)
-\renewcommand*{\homepagesymbol} {{\small\faGlobeAmericas}~} % alternative: \faHome, \faGlobe, \faGlobeEurope, \faGlobeAfrica, \faGlobeAsia
-\renewcommand*{\linkedinsocialsymbol} {{\small\faLinkedinIn}~} % alternative: \faLinkedin
-\renewcommand*{\xingsocialsymbol} {{\small\faXing}~} % alternative: \faXingSquare
-\renewcommand*{\twittersocialsymbol} {{\small\faTwitter}~} % alternative: \faTwitterSquare
-\renewcommand*{\githubsocialsymbol} {{\small\faGithub}~} % alternative: \faGithubSquare, \faGithub*
-\renewcommand*{\gitlabsocialsymbol} {{\small\faGitlab}~}
-\renewcommand*{\stackoverflowsocialsymbol}{{\small\faStackOverflow}~}
-\renewcommand*{\bitbucketsocialsymbol} {{\small\faBitbucket}~}
-\renewcommand*{\skypesocialsymbol} {{\small\faSkype}~}
-\renewcommand*{\orcidsocialsymbol} {{\small\faOrcid}~}
-\renewcommand*{\researchgatesocialsymbol} {{\small\faResearchgate}~}
+\renewcommand*{\mobilephonesymbol} {{\color{mobilephone}\small\faMobile*}~} % alternative: \faMobile (solid style)
+\renewcommand*{\fixedphonesymbol} {{\color{fixedphone}\small\faPhone*}~} % alternative: \faPhone (reversed)
+\renewcommand*{\faxphonesymbol} {{\color{faxphone}\small\faFax}~} % alternative: \faPrint
+\renewcommand*{\emailsymbol} {{\color{email}\small\faEnvelope[regular]}~} % alternative: \faInbox, \faEnvelope (solid style)
+\renewcommand*{\homepagesymbol} {{\color{homepage}\small\faGlobeAmericas}~} % alternative: \faHome, \faGlobe, \faGlobeEurope, \faGlobeAfrica, \faGlobeAsia
+\renewcommand*{\linkedinsocialsymbol} {{\color{linkedin}\small\faLinkedinIn}~} % alternative: \faLinkedin
+\renewcommand*{\xingsocialsymbol} {{\color{xing}\small\faXing}~} % alternative: \faXingSquare
+\renewcommand*{\twittersocialsymbol} {{\color{twitter}\small\faTwitter}~} % alternative: \faTwitterSquare
+\renewcommand*{\mastodonsocialsymbol} {{\color{mastodon}\small\faMastodon}~}
+\renewcommand*{\githubsocialsymbol} {{\color{github}\small\faGithub}~} % alternative: \faGithubSquare, \faGithub*
+\renewcommand*{\gitlabsocialsymbol} {{\color{gitlab}\small\faGitlab}~}
+\renewcommand*{\stackoverflowsocialsymbol}{{\color{stackoverflow}\small\faStackOverflow}~}
+\renewcommand*{\bitbucketsocialsymbol} {{\color{bitbucket}\small\faBitbucket}~}
+\renewcommand*{\skypesocialsymbol} {{\color{skype}\small\faSkype}~}
+\renewcommand*{\orcidsocialsymbol} {{\color{orcid}\small\faOrcid}~}
+\renewcommand*{\researchgatesocialsymbol} {{\color{researchgate}\small\faResearchgate}~}
%\renewcommand*{\researcheridsocialsymbol} {}
%\renewcommand*{\googlescholarsocialsymbol}{}
-\renewcommand*{\telegramsocialsymbol} {{\small\faTelegram}~}
-\renewcommand*{\whatsappsocialsymbol} {{\small\faWhatsapp}~}
+\renewcommand*{\telegramsocialsymbol} {{\color{telegram}\small\faTelegram}~}
+\renewcommand*{\whatsappsocialsymbol} {{\color{whatsapp}\small\faWhatsapp}~}
+\renewcommand*{\discordsocialsymbol} {{\color{discord}\small\faDiscord}~}
+\renewcommand*{\twitchsocialsymbol} {{\color{twitch}\small\faTwitch}~}
+\renewcommand*{\youtubesocialsymbol} {{\color{youtube}\small\faYoutube}~}
+\renewcommand*{\tiktoksocialsymbol} {{\color{tiktok}\small\faTiktok}~}
+\renewcommand*{\instagramsocialsymbol} {{\color{instagram}\small\faInstagram}~}
+\renewcommand*{\soundcloudsocialsymbol} {{\color{soundcloud}\small\faSoundcloud}~}
+\renewcommand*{\steamsocialsymbol} {{\color{steam}\small\faSteam}~}
+\renewcommand*{\xboxsocialsymbol} {{\color{xbox}\small\faXbox}~}
+\renewcommand*{\playstationsocialsymbol} {{\color{playstation}\small\faPlaystation}~}
+\renewcommand*{\battlenetsocialsymbol} {{\color{battlenet}\small\faBattleNet}~}
%\renewcommand*{\signalsocialsymbol} {}
%\renewcommand*{\matrixsocialsymbol} {}
-\renewcommand*{\bornsymbol} {{\small\faAsterisk}~} % alternative: \faBabyCarriage
+% \renewcommand*{\arxivsocialsymbol} {{\color{arxiv}{\small\faarXiv}}~}
+% \renewcommand*{\inspiresocialsymbol} {{\color{inspire}{\small\faInspire}}~}
+\renewcommand*{\bornsymbol} {{\color{born}\small\faAsterisk}~} % alternative: \faBabyCarriage
\endinput
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncviconsletters.sty b/Master/texmf-dist/tex/latex/moderncv/moderncviconsletters.sty
index 832e21035af..2dc6386d51d 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncviconsletters.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncviconsletters.sty
@@ -1,5 +1,5 @@
%% start of file `moderncviconsletters.sty'.
-%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncviconsletters}[2022-02-21 v2.3.1 modern curriculum vitae icons: letter]
+\ProvidesPackage{moderncviconsletters}[2024-07-18 v2.4.1 modern curriculum vitae icons: letter]
%-------------------------------------------------------------------------------
% symbols definition
@@ -31,6 +31,7 @@
\renewcommand*{\linkedinsocialsymbol} {\textbf{in}~}
\renewcommand*{\xingsocialsymbol} {\textbf{xi}~}
\renewcommand*{\twittersocialsymbol} {\textbf{tw}~}
+\renewcommand*{\mastodonsocialsymbol} {\textbf{ms}~}
\renewcommand*{\githubsocialsymbol} {\textbf{gh}~}
\renewcommand*{\gitlabsocialsymbol} {\textbf{gl}~}
\renewcommand*{\stackoverflowsocialsymbol}{\textbf{so}~}
@@ -45,6 +46,18 @@
\renewcommand*{\matrixsocialsymbol} {\textbf{ma}~}
\renewcommand*{\googlescholarsocialsymbol}{\textbf{gs}~}
\renewcommand*{\bornsymbol} {\textbf{B}~}
+\renewcommand*{\codebergsocialsymbol} {\textbf{cb}~}
+\renewcommand*{\twitchsocialsymbol} {\textbf{ttv}~}
+\renewcommand*{\youtubesocialsymbol} {\textbf{yt}~}
+\renewcommand*{\tiktoksocialsymbol} {\textbf{tok}~}
+\renewcommand*{\instagramsocialsymbol} {\textbf{insta}~}
+\renewcommand*{\soundcloudsocialsymbol} {\textbf{sc}~}
+\renewcommand*{\steamsocialsymbol} {\textbf{st}~}
+\renewcommand*{\xboxsocialsymbol} {\textbf{xb}~}
+\renewcommand*{\playstationsocialsymbol} {\textbf{psn}~}
+\renewcommand*{\battlenetsocialsymbol} {\textbf{bn}~}
+\renewcommand*{\arxivsocialsymbol} {\textbf{arx}~}
+\renewcommand*{\inspiresocialsymbol} {\textbf{ins}~}
\renewcommand*{\listitemsymbol} {\labelitemi~}
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncviconsmarvosym.sty b/Master/texmf-dist/tex/latex/moderncv/moderncviconsmarvosym.sty
index 0a1d8f107dc..2dbc71011ee 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncviconsmarvosym.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncviconsmarvosym.sty
@@ -1,5 +1,5 @@
%% start of file `moderncviconsmarvosym.sty'.
-%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncviconsmarvosym}[2022-02-21 v2.3.1 modern curriculum vitae icons: marvosym]
+\ProvidesPackage{moderncviconsmarvosym}[2024-07-18 v2.4.1 modern curriculum vitae icons: marvosym]
%-------------------------------------------------------------------------------
% all symbols described in moderncv.cls
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncviconssymbols.sty b/Master/texmf-dist/tex/latex/moderncv/moderncviconssymbols.sty
index 256304380e1..b6c1fb7b1d5 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncviconssymbols.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncviconssymbols.sty
@@ -1,5 +1,5 @@
%% start of file `moderncviconssymbols.sty'.
-%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -17,7 +17,7 @@
\RequirePackage{moderncviconsawesome}
\RequirePackage{moderncviconsacademic}
\else
- \ClassWarningNoLine{moderncv}{"academicons requires xetex/luatex to work. Using alternatives."}
+ \typeout{^^Jmoderncv: academicons requires XeTeX/LuaTeX to work. Using alternatives.^^J}
\ifpdftex
\RequirePackage{moderncviconsawesome}
\else
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncviconstikz.sty b/Master/texmf-dist/tex/latex/moderncv/moderncviconstikz.sty
index c3e9f40b0d4..e1a0248924d 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncviconstikz.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncviconstikz.sty
@@ -1,5 +1,5 @@
%% start of file `moderncviconstikz.sty'.
-%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2013-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncviconstikz}[2022-02-21 v2.3.1 modern curriculum vitae and letter icons: tickz]
+\ProvidesPackage{moderncviconstikz}[2024-07-18 v2.4.1 modern curriculum vitae and letter icons: tickz]
%-------------------------------------------------------------------------------
@@ -218,7 +218,7 @@
\protect\begin{tikzpicture}[x=0.11em, y=0.11em, xscale=0.015, yscale=-0.015, inner sep=0pt, outer sep=0pt]
\protect\begin{scope}[shift={(507,387)}]
\protect\path[fill=color2,line width=0.057pt]
- (105.2000,24.9000) .. controls (102.1000,16.0000) and (89.5000,16.0000) ..
+ (105.2000,24.9000) .. controls (102.1000,16.0000) and (89.5000,16.0000) ..
(86.3000,24.9000) -- (29.8000,199.7000) -- (161.7000,199.7000) .. controls
(161.7000,199.7000) and (105.2000,24.9000) .. (105.2000,24.9000) -- cycle
(0.9000,287.7000) .. controls (-1.7000,295.7000) and (1.2000,304.6000) ..
@@ -327,7 +327,7 @@
\protect\raisebox{-0.12em}{
\protect\begin{tikzpicture}[y=1.8pt, x=1.8pt, yscale=-0.15, xscale=0.15, inner sep=0pt, outer sep=0pt]
\protect\begin{scope}[shift={(507,387)}]
- \protect\path[fill=color2]
+ \protect\path[fill=color2]
(0.9360,0.7320) .. controls (0.9360,10.9053) and (0.9360,21.0787) ..
(0.9360,31.2520) .. controls (1.6673,31.2520) and (2.3987,31.2520) ..
(3.1300,31.2520) .. controls (3.3452,32.0075) and (2.8778,32.0803) ..
@@ -374,7 +374,7 @@
\protect\raisebox{-0.12em}{
\protect\begin{tikzpicture}[y=0.1pt, x=0.1pt, yscale=-0.13, xscale=0.13, inner sep=0pt, outer sep=0pt]
\protect\begin{scope}[shift={(507,387)}]
- \protect\path[fill=color2]
+ \protect\path[fill=color2]
(430.1000,180.9000) -- (437.8000,211.9000) .. controls (407.6000,219.3000)
and (378.7000,231.3000) .. (352.1000,247.3000) -- (335.7000,220.0000) ..
controls (365.0000,202.3000) and (396.9000,189.1000) .. (430.1000,180.9000) --
@@ -439,6 +439,25 @@
~}
}{}\par
+\ifdefempty{\codebergsocialsymbol} {
+ \renewcommand*{\codebergsocialsymbol} {
+ \protect\raisebox{-0.12em}{
+ \protect\begin{tikzpicture}[y=0.8pt, x=0.8pt, yscale=-1.0, xscale=1.0, inner sep=0pt, outer sep=0pt]
+ \protect\begin{scope}[shift={(507, 387)}]
+ \protect\path[scale=0.265, opacity=0.500, line cap=butt, line join=miter, line width=0.779pt, miter limit=2.00]
+ (11249.8942,-1872.9296)arc(269.285:169.240:0.201313 and 0.150) --
+ (11258.5852,-1839.4433)arc(66.699:32.084:23.067) --
+ (11250.0698,-1872.8557)arc(329.460:269.346:0.201313 and 0.150) -- cycle;
+
+ \protect\path[scale=0.265, fill=color2, line width=0.426pt]
+ (11249.3743,-1883.6959)arc(269.785:180.000:23.067)arc(180.001:147.920:23.067)
+ -- (11249.1480,-1873.2412)arc(209.929:330.071:0.360097 and 0.269) --
+ (11269.0053,-1848.3766)arc(32.082:-0.002:23.067)arc(360.000:270.000:23.067)arc(270.108:269.892:23.067)
+ -- cycle;
+ \protect\end{scope}
+ \protect\end{tikzpicture}}
+ ~}
+}{}\par
\endinput
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvskillmatrix.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvskillmatrix.sty
index 68b8db9a0aa..9f03be117a7 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvskillmatrix.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvskillmatrix.sty
@@ -2,30 +2,30 @@
%% Copyright 2021 David Seus (cryptointerest@posteo.de).
%
% This package provides a skill matrix template for the moderncv package.
-% Some recruiting firms require applicants to rate their skills, computer
-% skills, management tools, or similar in a table involving a graphical
-% illustration of their skill level. This package implements this idea
-% and provides the following commands to use within the moderncv
+% Some recruiting firms require applicants to rate their skills, computer
+% skills, management tools, or similar in a table involving a graphical
+% illustration of their skill level. This package implements this idea
+% and provides the following commands to use within the moderncv
% package:
-%
-%
+%
+%
% PUBLIC COMMANDS
% \cvskill{<1-5>}
% Illustrate skill level with little colored boxes.
-% By default five skill levels are predefined.
-%
-% Input:
+% By default five skill levels are predefined.
+%
+% Input:
% input_1: integer between 0 and 5
-%
-% Example usages:
+%
+% Example usages:
% \cvskill{3}
-%
-%
+%
+%
% \cvskilllegend[*][<post_padding>][<first_level>][<second_level>][<third_level>][<fourth_level>][<fifth_level>]{<name>}
% Print legend table explaining the meaning of \cvskill{1}...\cvskill{5}.
-%
+%
% Input:
-% asterix (optional): include vertical (dashed) lines. This behaviour depends on the body style.
+% asterix (optional): include vertical (dashed) lines. This behaviour depends on the body style.
% For the fancy style, the asterix has no meaning.
% input_1 (optional): padding length appended to the legend, default: <0.25em>
% input_2 (optional): string describing meaning of \cvskill{1}, default: <basic knowledge>
@@ -34,25 +34,25 @@
% input_5 (optional): string describing meaning of \cvskill{4}, default: <deepened expert knowledge>
% input_6 (optional): string describing meaning of \cvskill{5}, default: <expert/guru>
% input_7: string giving a name to the legend, default: <>
-%
+%
% Example usages:
% \cvskilllegend{} print default legend
% \cvskilllegend[0.5em]{Legend} print default legend, but adjust post padding and display the word ``Legend''.
% \cvskilllegend*[0.2em][Grundkenntnisse][Grundkenntnisse und eigene Erfahrung in Projekten][Umfangreiche Erfahrung in Projekten][Vertiefte Expertenkenntnisse][Experte/Guru]{Legende} Fully adjust legend to German example and including dashed lines
-%
+%
% Note:
% -The width of the columns can be adjusted by the \setcvskilllegendcolumns, see \setcvskilllegendcolumns
-% -The design of the table is such that the <second_level> entry stands in the first column but
+% -The design of the table is such that the <second_level> entry stands in the first column but
% occupies rows two and three. This has been done to accomodate english and german defaults.
% An alternative is provided by \cvskillplainlegend
-%
-%
+%
+%
% \cvskillplainlegend[*][<post_padding>][<first_level>][<second_level>][<third_level>][<fourth_level>][<fifth_level>]{<name>}
% Print alternative legend table explaining the meaning of \cvskill{1}...\cvskill{5}.
% In this legend, the first three skill levels are in one column
-%
+%
% Input:
-% asterix (optional): include vertical (dashed) lines. This behaviour depends on the body style.
+% asterix (optional): include vertical (dashed) lines. This behaviour depends on the body style.
% For the fancy style, the asterix has no meaning.
% input_1 (optional): padding length appended to the legend, default: <0.25em>
% input_2 (optional): string describing meaning of \cvskill{1}, default: <basic knowledge>
@@ -61,40 +61,40 @@
% input_5 (optional): string describing meaning of \cvskill{4}, default: <deepened expert knowledge>
% input_6 (optional): string describing meaning of \cvskill{5}, default: <expert/guru>
% input_7: string giving a name to the legend, default: <>
-%
+%
% Example usages:
% \cvskillplainlegend{} print default legend
% \cvskillplainlegend[0.5em]{Legend} print default legend, but adjust post padding and display the word ``Legend''.
% \cvskillplainlegend*[0.2em][Grundkenntnisse][Grundkenntnisse und eigene Erfahrung in Projekten][Umfangreiche Erfahrung in Projekten][Vertiefte Expertenkenntnisse][Experte/Guru]{Legende} Fully adjust legend to German example and including dashed lines
-%
+%
% Note:
% -The width of the columns can be adjusted by the \setcvskilllegendcolumns, see \setcvskilllegendcolumns
-%
-%
+%
+%
% \cvskillhead[<post_padding>][<Level>][<Skill>][<Years>][<Comment>]%
% add skill matrix line acting as header explaining the meaning of columns.
-%
+%
% Input:
% input_1 (optional): padding length appended to the legend, default: <0.25em>
% input_2 (optional): string naming the level column (2nd column), default: <Level>
% input_3 (optional): string naming the skill column (3nd column), default: <Skill>
% input_4 (optional): string naming the experience-in-years column (4th column), default: <Years>
% input_5 (optional): string naming the comment column (5th column), default: <Comment>
-%
+%
% Example usages:
% \cvskillhead print default head.
% \cvskillhead[0.5em] print default head, but adjust post padding.
% \cvskillhead[0.25em][Level][F\"ahigkeit][Jahre][Bemerkung] Fully adjust head to German example
-%
-% Note:
+%
+% Note:
% - The width of the columns can be adjusted by the \setcvskillcolumns command, see \setcvskillcolumns.
-%
-%
+%
+%
% \cvskillentry[*][<post_padding>]{<skill_cathegory>}{<0-5>}{<skill_name>}{<years_of_experience>}{<comment>}%
% add cvskill matrix row.
-%
+%
% Input:
-% asterix (optional): include horizontal (dashed) line above the entered line. This behaviour depends on the body style.
+% asterix (optional): include horizontal (dashed) line above the entered line. This behaviour depends on the body style.
% For the fancy style, the asterix has no meaning.
% input_1 (optional): padding length appended to the legend, default: <0.25em>
% input_2: string, naming skill cathegory, default: <>
@@ -102,98 +102,98 @@
% input_4: string, naming the skill, default: <>
% input_5: positive real number, stating the number of years of experience with this skill , default: <>
% input_6: string, explaining details w.r.t. that particual skill default: <>
-%
+%
% Example usages:
% \cvskillentry*{Language:}{3}{Python}{2}{I have done a million projects with Python}
% \cvskillentry{}{2}{Lilypond}{14}{So much sheet music! Man I'm the best!}
% \cvskillentry{}{3}{\LaTeX}{14}{Clearly I rock at \LaTeX}
% \cvskillentry*[1.5em]{OS:}{3}{Linux}{2}{I only use Archlinux}
-%
-% Note:
+%
+% Note:
% - The width of the columns can be adjusted by the \setcvskillcolumns command, see \setcvskillcolumns.
-%
-%
+%
+%
% \setcvskillcolumns[<width>][<factor>][<exp_width>]
% adjust column width of skill table
-%
-% The \cvskillentry command comes with default FIXED width definitions of the kill matrix for the columns
-% based on the author's own skill matrix. This is necessary to ensure that the entries are nicely aligned
+%
+% The \cvskillentry command comes with default FIXED width definitions of the kill matrix for the columns
+% based on the author's own skill matrix. This is necessary to ensure that the entries are nicely aligned
% and actually yield a decent looking table. The defaults depend on the style used and are chosen reasonably.
-% However, depending on the user input and the style that is used some of the columns might need adjustments.
-% The \setcvskillcolumns command provides means to influence the width of the first, the third and the fourth
+% However, depending on the user input and the style that is used some of the columns might need adjustments.
+% The \setcvskillcolumns command provides means to influence the width of the first, the third and the fourth
% skill matrix column. The second column containg the output of \cvskill remains fixed width. The last column,
% the comment column gets recalculated according to the setting of the other columns.
-%
+%
% Input
% Input_1 (optional): width smaller than \textwidth, default <\skillmatrix@hintscolumnwidth>
-% Input_2 (optional): float between 0 and 1 adjusting how much percent of the table width without
+% Input_2 (optional): float between 0 and 1 adjusting how much percent of the table width without
% the first column is used columns two, three and four. Through this parameter
% the width of the 3rd column (skill name) can be adjusted, default <\skillmatrix@columnwidth>
-% Input_3 (optional): width smaller than \textwidth, setting the width of the 4th column
+% Input_3 (optional): width smaller than \textwidth, setting the width of the 4th column
% (Years of experience), default <\cvskill@experiencewidth>
-%
+%
% Example usage
% \setcvskillcolumns[5em][][]% adjust first column. Same as \setcvskillcolumns[5em]
% \setcvskillcolumns[][0.45][]% adjust third (skill) column. Same as \setcvskillcolumns[][0.45]
% \setcvskillcolumns[][][\widthof{``Year''}]% adjust fourth (years) column.
-% \setcvskillcolumns[\widthof{``Language''}][0.48][]% adjust 1st and 3rd columns. Same as \setcvskillcolumns[\widthof{``Language''}][0.45]
+% \setcvskillcolumns[\widthof{``Language''}][0.48][]% adjust 1st and 3rd columns. Same as \setcvskillcolumns[\widthof{``Language''}][0.45]
% \setcvskillcolumns[\widthof{``Management Tools''}][0.6][3em]% ajust all at once.
-%
+%
% Note
% - For the styles 'classic' and 'casual' the first column is set to hintscolumnwidth such that
-% it aligns with the rest of the entries. A readjustment of the first column should therefor
-% be avoided. It is recomended to only use \setcvskillcolumns in the form of
+% it aligns with the rest of the entries. A readjustment of the first column should therefor
+% be avoided. It is recomended to only use \setcvskillcolumns in the form of
% \setcvskillcolumns[][<factor>][<width>], thereby leaving the defaults in place for the first column.
-%
-%
+%
+%
% \setcvskilllegendcolumns[<width>][<factor>]
% adjust column width of legend
-%
-% The \cvskilllegend command comes with default FIXED width definitions for the columns of the legend matrix
-% such that the default english and german examples look good.
-% However, depending on the user input (translation) and the style that is used some adjustment might be needed.
-% The \setcvskilllegendcolumns command provides means to influence all columns except the ones containing
+%
+% The \cvskilllegend command comes with default FIXED width definitions for the columns of the legend matrix
+% such that the default english and german examples look good.
+% However, depending on the user input (translation) and the style that is used some adjustment might be needed.
+% The \setcvskilllegendcolumns command provides means to influence all columns except the ones containing
% \cvskill commands. The second column containg the output of \cvskill remains fixed width. The last column,
% the comment column gets recalculated according to the setting of the other columns.
-%
+%
% Input
-% Input_1 (optional): length smaller than \textwidth influencing the width of the first column
-% where depending on the style the legend_string gets printed. In case the
-% string is left empty adjusting this width allows moving the legend horizontally.
+% Input_1 (optional): length smaller than \textwidth influencing the width of the first column
+% where depending on the style the legend_string gets printed. In case the
+% string is left empty adjusting this width allows moving the legend horizontally.
% Default <\skilllegend@hintscolumnwidth>
-% Input_2 (optional): float between 0 and 1 influencing the width of the left legend descritor column,
-% aka \cvskilllegend@leftdescriptorwidth. The desriptor column on the right,
+% Input_2 (optional): float between 0 and 1 influencing the width of the left legend descritor column,
+% aka \cvskilllegend@leftdescriptorwidth. The desriptor column on the right,
% \cvskilllegend@rightdescriptorwidth is influenced by the factor 1-<factor>.
% Default <\skilllegend@leftdesriptorfactor>
-%
+%
% Example usage
% \setcvskilllegendcolumns[][0.45]%% adjust left desriptor column.
% \setcvskilllegendcolumns[\widthof{``Legend''}][0.45]% adjust both left descriptor column and string column
-%
+%
% Note
-% - Due to implementation of \cvskilllegend for style 'fancy' (moderncvbodyv)
+% - Due to implementation of \cvskilllegend for style 'fancy' (moderncvbodyv)
% the first optional variable has no effect in this case.
% - For the styles 'classic' and 'casual' the first column is set to hintscolumnwidth such that
-% it aligns with the rest of the entries. A readjustment of the first column should therefor
-% be avoided. It is recomended to only use \cvskilllegend in the form of
+% it aligns with the rest of the entries. A readjustment of the first column should therefor
+% be avoided. It is recomended to only use \cvskilllegend in the form of
% \cvskilllegend[][<factor>], thereby leaving the defaults in place for the first column.
% - For style 'banking' the first column is set to align with the rest of the \cvskillentry entries
-% Therefor adjusting the first column can be used to widen the table while moving it around. If no
+% Therefor adjusting the first column can be used to widen the table while moving it around. If no
% legend string is used, setting \cvskilllegend[0em] maximises the real enstate for the legend.
-%
-%
+%
+%
% PRIVATE COMMANDS
-%
+%
% \recompute@cvskillmatrix@lengths
-% compute all lengths necessary for the skill matrix depending on
+% compute all lengths necessary for the skill matrix depending on
% the moderncv style (moderncvbody)
-%
+%
% Input: none
-%
+%
% Example usage (only internally in moderncvbody<i-v>.sty)
-% \recompute@cvskillmatrix@lengths
-%
-%
+% \recompute@cvskillmatrix@lengths
+%
+%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
% available at http://www.latex-project.org/lppl/.
@@ -203,10 +203,10 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvskillmatrix}[2022-02-21 v2.3.1 modern curriculum vitae and letter skill matrix]
+\ProvidesPackage{moderncvskillmatrix}[2024-07-18 v2.4.1 modern curriculum vitae and letter skill matrix]
-% The definitions need to be adjusted depending on which moderncvbody<i-v>.sty style is usde.
-% body type options: "moderncvbodyi" (default), "moderncvbodyii", "moderncvbodyiii", "moderncvbodyiv" or "moderncvbodyv"
+% The definitions need to be adjusted depending on which moderncvbody<i-v>.sty style is usde.
+% body type options: "moderncvbodyi" (default), "moderncvbodyii", "moderncvbodyiii", "moderncvbodyiv" or "moderncvbodyv"
\@initializeif{\if@moderncvbodyi}\@moderncvbodyifalse
\DeclareOption{moderncvbodyi}{\@moderncvbodyitrue\@moderncvbodyiifalse\@moderncvbodyiiifalse\@moderncvbodyivfalse\@moderncvbodyvfalse}
\@initializeif{\if@moderncvbodyii}\@moderncvbodyiifalse % this option is added in case moderncvbodyii gets implemented standalone
@@ -218,6 +218,10 @@
\@initializeif{\if@moderncvbodyv}\@moderncvbodyvfalse
\DeclareOption{moderncvbodyv}{\@moderncvbodyifalse\@moderncvbodyiifalse\@moderncvbodyiiifalse\@moderncvbodyivfalse\@moderncvbodyvtrue}
+% If option `circle` is specified, use circles instead of small rectangles for rating skills
+\@initializeif{\if@cvskillcircle}\@cvskillcirclefalse
+\DeclareOption{circle}{\@cvskillcircletrue}
+
\DeclareOption*{}% avoid choking on unknown options
\ExecuteOptions{moderncvbodyi}
\ProcessOptions*\relax% \ProcessOptions* processes the options in the order provided (i.e., with the later ones possibly overriding the former ones), while \ProcessOptions processes them in the order of the package
@@ -239,23 +243,29 @@
% %-------------------------------------------------------------------------------
% The code for the Skilllevel illustration with the little boxes.
% This is idea stolen from the limecv package, see https://github.com/opieters/limecv.git
-\@initializelength{\cvSkill@RectangleSize}
-\setlength{\cvSkill@RectangleSize}{1.2ex}
+\@initializelength{\cvSkill@ShapeSize}
+\if@cvskillcircle%
+ \setlength{\cvSkill@ShapeSize}{.7ex}%
+ \def\cvSkill@Shape#1{\tikz\filldraw[#1] (0, 0) circle (\cvSkill@ShapeSize);}
+\else
+ \setlength{\cvSkill@ShapeSize}{1.2ex}
+ \def\cvSkill@Shape#1{\tikz\filldraw[#1] (0, 0) rectangle (\cvSkill@ShapeSize, \cvSkill@ShapeSize);}
+\fi
\newcount\my@repeat@count
\DeclareDocumentCommand{\cvskill}{m}{%
% Illustrate skill level with little colored boxes.
-% By default five skill levels are predefined.
-%
-% Input:
+% By default five skill levels are predefined.
+%
+% Input:
% integer between 0 and 5
-% Example usage:
+% Example usage:
% \cvskill{3}
\begingroup
\my@repeat@count=\z@
- \@whilenum\my@repeat@count<#1\do{\tikz\filldraw[color1] (0, 0) rectangle (\cvSkill@RectangleSize, \cvSkill@RectangleSize);\advance%
+ \@whilenum\my@repeat@count<#1\do{\cvSkill@Shape{skillmatrixfullcolor}\advance%
\my@repeat@count\@ne\,}%
\my@repeat@count=\numexpr5-\z@\relax
- \@whilenum\my@repeat@count>#1\do{\tikz\filldraw[color2!30] (0, 0) rectangle (\cvSkill@RectangleSize, \cvSkill@RectangleSize);\advance%
+ \@whilenum\my@repeat@count>#1\do{\cvSkill@Shape{skillmatrixemptycolor}\advance%
\my@repeat@count\m@ne\,}%
\endgroup
}% end \cvskill
@@ -279,10 +289,10 @@
\@initializelength{\skilllegend@padding}
\@initializelength{\skilllegend@bodylength}
-% \separatorrulewidth is defined in moderncvbodyv.sty and we need to
+% \separatorrulewidth is defined in moderncvbodyv.sty and we need to
% define it to not throw an error in the other cases
\if@moderncvbodyv%
-%
+%
\else%
\@initializelength{\separatorrulewidth}
\setlength{\separatorrulewidth}{1ex}
@@ -292,13 +302,13 @@
%% DEFINITION \recompute@cvskillmatrix@lengths
% declare the command \recompute@cvskillmatrix@lengths empty
\DeclareDocumentCommand{\recompute@cvskillmatrix@lengths}{}{}%
-% compute all lengths necessary for the skill matrix depending on
+% compute all lengths necessary for the skill matrix depending on
% the moderncv style (moderncvbody)
-%
+%
% Input: none
-%
+%
% Example usage (only internally in moderncvbody<i-v>.sty)
-% \recompute@cvskillmatrix@lengths
+% \recompute@cvskillmatrix@lengths
% Definition of \recompute@cvskillmatrix@lengths for moderncvbodyi
\if@moderncvbodyi%
@@ -332,7 +342,7 @@
\setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width-\cvskill@experiencewidth}%
\setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-3\skillmatrix@padding}%
% lengths and definitions needed for the legends
- % note that \skillmatrix@padding also affects the appearance of legends
+ % note that \skillmatrix@padding also affects the appearance of legends
\setlength{\skilllegend@padding}{0.25ex}%
\setlength{\skilllegend@hintscolumnwidth}{\skillmatrix@hintscolumnwidth}%
\setlength{\skilllegend@bodylength}{\skillmatrix@bodylength}%
@@ -352,7 +362,7 @@
\setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width-\cvskill@experiencewidth}
\setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-3\skillmatrix@padding}%
% lengths and definitions needed for the legends
- % note that \skillmatrix@padding also affects the appearance of legends
+ % note that \skillmatrix@padding also affects the appearance of legends
\setlength{\skilllegend@padding}{0.25ex}
\setlength{\skilllegend@hintscolumnwidth}{0ex}%\skillmatrix@hintscolumnwidth
\setlength{\skilllegend@bodylength}{\maincolumnwidth}
@@ -371,7 +381,7 @@
\setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width-\cvskill@experiencewidth}%
\setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-3\skillmatrix@padding}%
% lengths and definitions needed for the legends
- % note that \skillmatrix@padding also affects the appearance of legends
+ % note that \skillmatrix@padding also affects the appearance of legends
\setlength{\skilllegend@padding}{0.25ex}%
\setlength{\skilllegend@hintscolumnwidth}{\skillmatrix@hintscolumnwidth}%
\setlength{\skilllegend@bodylength}{\maincolumnwidth}%
@@ -385,43 +395,43 @@
% \setcvskillcolumns[<width>][<factor>][<exp_width>]
\DeclareDocumentCommand{\setcvskillcolumns}{+O{\skillmatrix@hintscolumnwidth} +O{\skillmatrix@columnwidth} +O{\cvskill@experiencewidth}}{%
% adjust column width of skill table
-%
-% The \cvskillentry command comes with default FIXED width definitions of the kill matrix for the columns
-% based on the author's own skill matrix. This is necessary to ensure that the entries are nicely aligned
+%
+% The \cvskillentry command comes with default FIXED width definitions of the kill matrix for the columns
+% based on the author's own skill matrix. This is necessary to ensure that the entries are nicely aligned
% and actually yield a decent looking table. The defaults depend on the style used and are chosen reasonably.
-% However, depending on the user input and the style that is used some of the columns might need adjustments.
-% The \setcvskillcolumns command provides means to influence the width of the first, the third and the fourth
+% However, depending on the user input and the style that is used some of the columns might need adjustments.
+% The \setcvskillcolumns command provides means to influence the width of the first, the third and the fourth
% skill matrix column. The second column containg the output of \cvskill remains fixed width. The last column,
% the comment column gets recalculated according to the setting of the other columns.
-%
+%
% Input
% Input_1 (optional): width smaller than \textwidth, default <\skillmatrix@hintscolumnwidth>
-% Input_2 (optional): float between 0 and 1 adjusting how much percent of the table width without
+% Input_2 (optional): float between 0 and 1 adjusting how much percent of the table width without
% the first column is used columns two, three and four. Through this parameter
% the width of the 3rd column (skill name) can be adjusted, default <\skillmatrix@columnwidth>
-% Input_3 (optional): width smaller than \textwidth, setting the width of the 4th column
+% Input_3 (optional): width smaller than \textwidth, setting the width of the 4th column
% (Years of experience), default <\cvskill@experiencewidth>
-%
+%
% Example usage
% \setcvskillcolumns[5em][][]% adjust first column. Same as \setcvskillcolumns[5em]
% \setcvskillcolumns[][0.45][]% adjust third (skill) column. Same as \setcvskillcolumns[][0.45]
% \setcvskillcolumns[][][\widthof{``Year''}]% adjust fourth (years) column.
-% \setcvskillcolumns[\widthof{``Language''}][0.48][]% adjust 1st and 3rd columns. Same as \setcvskillcolumns[\widthof{``Language''}][0.45]
+% \setcvskillcolumns[\widthof{``Language''}][0.48][]% adjust 1st and 3rd columns. Same as \setcvskillcolumns[\widthof{``Language''}][0.45]
% \setcvskillcolumns[\widthof{``Management Tools''}][0.6][3em]% ajust all at once.
-%
+%
% Note
% - For the styles 'classic' and 'casual' the first column is set to hintscolumnwidth such that
-% it aligns with the rest of the entries. A readjustment of the first column should therefor
-% be avoided. It is recomended to only use \setcvskillcolumns in the form of
+% it aligns with the rest of the entries. A readjustment of the first column should therefor
+% be avoided. It is recomended to only use \setcvskillcolumns in the form of
% \setcvskillcolumns[][<factor>][<width>], thereby leaving the defaults in place for the first column.
-%
+%
\def\arg@new@hintscolumnwidth{#1}% <-- all these terminal % signs are necessary for the fancy style to not show weird spaces!!!
- \def\arg@new@bodyLengthFactor{#2}%
- \def\arg@new@experienceWidth{#3}%
- % Check for empty arguments. Defaults are given. Thus a call of \setcvskillcolumns
+ \def\arg@new@bodyLengthFactor{#2}%
+ \def\arg@new@experienceWidth{#3}%
+ % Check for empty arguments. Defaults are given. Thus a call of \setcvskillcolumns
% without any arguments leads to nonempty arguments \arg@new@hintscolumnwidth and
- % \def\arg@new@bodyLengthFactor{#2}. However, we need to take care of calls like
- % \setcvskillcolumns[], \setcvskillcolumns[][], \setcvskillcolumns[][][] or even
+ % \def\arg@new@bodyLengthFactor{#2}. However, we need to take care of calls like
+ % \setcvskillcolumns[], \setcvskillcolumns[][], \setcvskillcolumns[][][] or even
% \setcvskillcolumns[<somelength>][], \setcvskillcolumns[][<somefactor>] \setcvskillcolumns[][][<length>]
\ifdefempty{\arg@new@hintscolumnwidth}{%
% Case \setcvskillcolumns[], \setcvskillcolumns[][] or \setcvskillcolumns[][<somefactor>]
@@ -445,13 +455,13 @@
% \cvskill@descriptorwidth accordingly
\setlength{\cvskill@experiencewidth}{\arg@new@experienceWidth}%
\setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width-\cvskill@experiencewidth}%
- }%
+ }%
\setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width-\cvskill@experiencewidth}%
\setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-3\skillmatrix@padding}%
}%
% Case \setcvskillcolumns[] nothing needs to be done here recalculate lengths affected by the change
- }{%
- % Case \setcvskillcolumns, \setcvskillcolumns[<width>], \setcvskillcolumns[<width>][]
+ }{%
+ % Case \setcvskillcolumns, \setcvskillcolumns[<width>], \setcvskillcolumns[<width>][]
% or \setcvskillcolumns[<width>][<somefactor>]
\setlength{\skillmatrix@hintscolumnwidth}{\arg@new@hintscolumnwidth}%
\setlength{\skillmatrix@bodylength}{\maincolumnwidth-\skillmatrix@hintscolumnwidth-\separatorcolumnwidth}%
@@ -483,41 +493,41 @@
\setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-3\skillmatrix@padding}%
}%
}%
-%
+%
% \setcvskilllegendcolumns[<width>][<factor>]
\DeclareDocumentCommand{\setcvskilllegendcolumns}{+O{\skilllegend@hintscolumnwidth} +O{\skilllegend@leftdesriptorfactor}}{%
% adjust column width of legend
-%
-% The \cvskilllegend command comes with default FIXED width definitions for the columns of the legend matrix
-% such that the default english and german examples look good.
-% However, depending on the user input (translation) and the style that is used some adjustment might be needed.
-% The \setcvskilllegendcolumns command provides means to influence all columns except the ones containing
+%
+% The \cvskilllegend command comes with default FIXED width definitions for the columns of the legend matrix
+% such that the default english and german examples look good.
+% However, depending on the user input (translation) and the style that is used some adjustment might be needed.
+% The \setcvskilllegendcolumns command provides means to influence all columns except the ones containing
% \cvskill commands. The second column containg the output of \cvskill remains fixed width. The last column,
% the comment column gets recalculated according to the setting of the other columns.
-%
+%
% Input
-% Input_1 (optional): length smaller than \textwidth influencing the width of the first column
-% where depending on the style the legend_string gets printed. In case the
-% string is left empty adjusting this width allows moving the legend horizontally.
+% Input_1 (optional): length smaller than \textwidth influencing the width of the first column
+% where depending on the style the legend_string gets printed. In case the
+% string is left empty adjusting this width allows moving the legend horizontally.
% Default <\skilllegend@hintscolumnwidth>
-% Input_2 (optional): float between 0 and 1 influencing the width of the left legend descritor column,
-% aka \cvskilllegend@leftdescriptorwidth. The desriptor column on the right,
+% Input_2 (optional): float between 0 and 1 influencing the width of the left legend descritor column,
+% aka \cvskilllegend@leftdescriptorwidth. The desriptor column on the right,
% \cvskilllegend@rightdescriptorwidth is influenced by the factor 1-<factor>.
% Default <\skilllegend@leftdesriptorfactor>
-%
+%
% Example usage
% \setcvskilllegendcolumns[][0.45]%% adjust left desriptor column.
% \setcvskilllegendcolumns[\widthof{``Legend''}][0.45]% adjust both left descriptor column and string column
-%
+%
% Note
-% - Due to implementation of \cvskilllegend for style 'fancy' (moderncvbodyv)
+% - Due to implementation of \cvskilllegend for style 'fancy' (moderncvbodyv)
% the first optional variable has no effect in this case.
% - For the styles 'classic' and 'casual' the first column is set to hintscolumnwidth such that
-% it aligns with the rest of the entries. A readjustment of the first column should therefor
-% be avoided. It is recomended to only use \cvskilllegend in the form of
+% it aligns with the rest of the entries. A readjustment of the first column should therefor
+% be avoided. It is recomended to only use \cvskilllegend in the form of
% \cvskilllegend[][<factor>], thereby leaving the defaults in place for the first column.
% - For style 'banking' the first column is set to align with the rest of the \cvskillentry entries
-% Therefor adjusting the first column can be used to widen the table while moving it around. If no
+% Therefor adjusting the first column can be used to widen the table while moving it around. If no
% legend string is used, setting \cvskilllegend[0em] maximises the real enstate for the legend.
%
\def\arg@new@legend@hintscolumnwidth{#1}%
@@ -532,8 +542,8 @@
\RenewDocumentCommand{\skilllegend@leftdesriptorfactor}{}{\arg@new@legend@leftDescriptorFactor}%
}%
% % Case \setcvskilllegendcolumns[] nothing needs to be done here i.e. leave default values unaltered
- }{%
- % Case \setcvskilllegendcolumns, \setcvskilllegendcolumns[<width>], \setcvskilllegendcolumns[<width>][]
+ }{%
+ % Case \setcvskilllegendcolumns, \setcvskilllegendcolumns[<width>], \setcvskilllegendcolumns[<width>][]
% or \setcvskilllegendcolumns[<width>][<somefactor>]
\setlength{\skilllegend@hintscolumnwidth}{\arg@new@legend@hintscolumnwidth}%
\if@moderncvbodyi%
@@ -554,18 +564,18 @@
}%
}%
}%
-%
+%
% %-------------------------------------------------------------------------------
-% % \cvskilllegend
+% % \cvskilllegend
% %-------------------------------------------------------------------------------
% default legend style
% \cvskilllegend[*][<post_padding>][<first_level>][<second_level>][<third_level>][<fourth_level>][<fifth_level>]{<name>}
\NewDocumentCommand\skillLegend@FontSize{}{\scriptsize}
\DeclareDocumentCommand\cvskilllegend{s +O{} +O{} +O{} +O{} +O{} +O{} +m}{}%
% Print legend table explaining the meaning of \cvskill{1}...\cvskill{5}.
-%
+%
% Input:
-% asterix (optional): include vertical (dashed) lines. This behaviour depends on the body style.
+% asterix (optional): include vertical (dashed) lines. This behaviour depends on the body style.
% For the fancy style, the asterix has no meaning.
% input_1 (optional): padding length appended to the legend, default: <0.25em>
% input_2 (optional): string describing meaning of \cvskill{1}, default: <basic knowledge>
@@ -574,15 +584,15 @@
% input_5 (optional): string describing meaning of \cvskill{4}, default: <deepened expert knowledge>
% input_6 (optional): string describing meaning of \cvskill{5}, default: <expert/guru>
% input_7: string giving a name to the legend, default: <>
-%
+%
% Example usages:
% \cvskilllegend{} print default legend
% \cvskilllegend[0.5em]{Legend} print default legend, but adjust post padding and display the word ``Legend''.
% \cvskilllegend*[0.2em][Grundkenntnisse][Grundkenntnisse und eigene Erfahrung in Projekten][Umfangreiche Erfahrung in Projekten][Vertiefte Expertenkenntnisse][Experte/Guru]{Legende} Fully adjust legend to German example and including dashed lines
-%
+%
% Note:
% -The width of the columns can be adjusted by the \setcvskilllegendcolumns, see \setcvskilllegendcolumns
-% -The design of the table is such that the <second_level> entry stands in the first column but
+% -The design of the table is such that the <second_level> entry stands in the first column but
% occupies rows two and three. This has been done to accomodate english and german defaults.
% An alternative is provided by \cvskillplainlegend
@@ -596,7 +606,7 @@
\RenewDocumentCommand\cvskilllegend{s +O{.25em} +O{\skillLegend@defaultLevelOne} +O{\skillLegend@defaultLevelTwo} +O{\skillLegend@defaultLevelThree} +O{\skillLegend@defaultLevelFour} +O{\skillLegend@defaultLevelFive} +m}{%
\IfBooleanTF#1{% if a star is given, add dashed line
\begingroup%
- \arrayrulecolor{color1}%
+ \arrayrulecolor{bodyrulecolor}%
% calculate descriptor widths
\setlength{\cvskilllegend@leftdescriptorwidth}{\skilllegend@leftdesriptorfactor\skilllegend@bodylength-\cvskill@width-\skillmatrix@padding-3\skilllegend@padding}%
\setlength{\cvskilllegend@rightdescriptorwidth}{\skilllegend@bodylength-\skilllegend@leftdesriptorfactor\skilllegend@bodylength-\cvskill@width-\skillmatrix@padding-3\skilllegend@padding}%
@@ -610,7 +620,7 @@
\raggedleft\hintstyle{#8} & \cvskill{1}& & {\skillLegend@FontSize #3} & \cvskill{3}& &{\skillLegend@FontSize #5 } \\%
%
& \cvskill{2} & & \multirow{2}{\cvskilllegend@leftdescriptorwidth}{{\skillLegend@FontSize #4}} & \cvskill{4}& & {\skillLegend@FontSize #6 } \\%
- %
+ %
& & & & \cvskill{5}& & {\skillLegend@FontSize #7 }%
\end{tabular}%
\endgroup
@@ -629,7 +639,7 @@
\raggedleft\hintstyle{#8} & \cvskill{1}\, & \,{\skillLegend@FontSize #3} & \cvskill{3}\, &\,{\skillLegend@FontSize #5 } \\%
%
& \cvskill{2}\, & \,\multirow{2}{\cvskilllegend@leftdescriptorwidth}{{\skillLegend@FontSize #4}} & \cvskill{4}\, &\,{\skillLegend@FontSize #6 } \\%
- %
+ %
& & & \cvskill{5}\, &\,{\skillLegend@FontSize #7 }%
\end{tabular}%
\endgroup%
@@ -646,11 +656,11 @@
}%
\IfBooleanTF#1{% if a star is given, add dashed line
\begingroup%
- % recalculate desrciptor widths on the fly. Allows for different padding
+ % recalculate desrciptor widths on the fly. Allows for different padding
% in the stared and nonstared case
\setlength{\cvskilllegend@leftdescriptorwidth}{\skilllegend@leftdesriptorfactor\skilllegend@bodylength-\cvskill@width-\skillmatrix@padding-4\skilllegend@padding}%
\setlength{\cvskilllegend@rightdescriptorwidth}{\skilllegend@bodylength-\skilllegend@leftdesriptorfactor\skilllegend@bodylength-\cvskill@width-\skillmatrix@padding-4\skilllegend@padding}%
- \arrayrulecolor{color1}
+ \arrayrulecolor{bodyrulecolor}
\begin{tabular}{@{}p{\skilllegend@hintscolumnwidth}
@{\hspace{\separatorcolumnwidth}}p{\cvskill@width}@{\hspace{\skilllegend@padding}};{.6pt/1pt}%
p{2\skilllegend@padding}%
@@ -660,13 +670,13 @@
\raggedleft\hintstyle{} & \cvskill{1} & & {\skillLegend@FontSize #3} & \cvskill{3} & & {\skillLegend@FontSize #5 } \\
%
& \cvskill{2} & & \multirow{2}{\cvskilllegend@leftdescriptorwidth}{{\skillLegend@FontSize #4}} & \cvskill{4} & &{\skillLegend@FontSize #6 } \\
- %
- & & & & \cvskill{5}& & {\skillLegend@FontSize #7 }
+ %
+ & & & & \cvskill{5}& & {\skillLegend@FontSize #7 }
\end{tabular}%
\endgroup%
\par\addvspace{#2}}{
\begingroup%
- % oddly enough, we should only need to subtract 2 paddings in the descritorwidths.
+ % oddly enough, we should only need to subtract 2 paddings in the descritorwidths.
% but while testing I got overflow of text into the margin
\setlength{\cvskilllegend@leftdescriptorwidth}{\skilllegend@leftdesriptorfactor\skilllegend@bodylength-\cvskill@width-\skillmatrix@padding-4\skilllegend@padding}%
\setlength{\cvskilllegend@rightdescriptorwidth}{\skilllegend@bodylength-\skilllegend@leftdesriptorfactor\skilllegend@bodylength-\cvskill@width-\skillmatrix@padding-5\skilllegend@padding}%
@@ -678,8 +688,8 @@
\raggedleft\hintstyle{} & \cvskill{1} & {\skillLegend@FontSize #3} & \cvskill{3} & {\skillLegend@FontSize #5 } \\
%
& \cvskill{2} & \multirow{2}{\cvskilllegend@leftdescriptorwidth}{{\skillLegend@FontSize #4}} & \cvskill{4} &{\skillLegend@FontSize #6 } \\
- %
- & & & \cvskill{5} & {\skillLegend@FontSize #7 }
+ %
+ & & & \cvskill{5} & {\skillLegend@FontSize #7 }
\end{tabular}%
\endgroup%
\par\addvspace{#2}
@@ -697,7 +707,7 @@
}{%
\cvitem[-0.5em]{#8}{}%
}%
- \arrayrulecolor{color1}%
+ \arrayrulecolor{bodyrulecolor}%
\setlength\arrayrulewidth{\separatorrulewidth}%
\RenewDocumentCommand{\@starIndependentTabular}{}{%
\begingroup%
@@ -713,32 +723,32 @@
\@moderncvstrut{4pt}{16pt} & \cvskill{1}& {\skillLegend@FontSize #3} & \cvskill{3}& {\skillLegend@FontSize #5 }\\%
%
& \cvskill{2}& \multirow{2}{\cvskilllegend@leftdescriptorwidth}{{\skillLegend@FontSize #4}} & \cvskill{4}& {\skillLegend@FontSize #6 }\\%
- %
+ %
& & & \cvskill{5} & {\skillLegend@FontSize #7 }\\[#2]% the spacing needs to be inside the cell for the vertical rule to extend correctly
\end{tabular}%
\endgroup%
- \par\@aftersectionfalse\ignorespaces%
+ \par\@aftersectionfalse\ignorespaces%
}%
- % because of this weird style and the position of the parameter [#2], the dashed lines of the other version look bad. So no lines.
+ % because of this weird style and the position of the parameter [#2], the dashed lines of the other version look bad. So no lines.
\IfBooleanTF#1{%
\@starIndependentTabular%
- }{%
+ }{%
\@starIndependentTabular%
}%
}%
\fi
% %-------------------------------------------------------------------------------
-% % \cvskillplainlegend
+% % \cvskillplainlegend
% %-------------------------------------------------------------------------------
% alternative legend style
% \cvskillplainlegend[*][<post_padding>][<first_level>][<second_level>][<third_level>][<fourth_level>][<fifth_level>]{<name>}
\DeclareDocumentCommand\cvskillplainlegend{s +O{} +O{} +O{} +O{} +O{} +O{} +m}{}%
% Print alternative legend table explaining the meaning of \cvskill{1}...\cvskill{5}.
% In this legend, the first three skill levels are in one column
-%
+%
% Input:
-% asterix (optional): include vertical (dashed) lines. This behaviour depends on the body style.
+% asterix (optional): include vertical (dashed) lines. This behaviour depends on the body style.
% For the fancy style, the asterix has no meaning.
% input_1 (optional): padding length appended to the legend, default: <0.25em>
% input_2 (optional): string describing meaning of \cvskill{1}, default: <basic knowledge>
@@ -747,12 +757,12 @@
% input_5 (optional): string describing meaning of \cvskill{4}, default: <deepened expert knowledge>
% input_6 (optional): string describing meaning of \cvskill{5}, default: <expert/guru>
% input_7: string giving a name to the legend, default: <>
-%
+%
% Example usages:
% \cvskillplainlegend{} print default legend
% \cvskillplainlegend[0.5em]{Legend} print default legend, but adjust post padding and display the word ``Legend''.
% \cvskillplainlegend*[0.2em][Grundkenntnisse][Grundkenntnisse und eigene Erfahrung in Projekten][Umfangreiche Erfahrung in Projekten][Vertiefte Expertenkenntnisse][Experte/Guru]{Legende} Fully adjust legend to German example and including dashed lines
-%
+%
% Note:
% -The width of the columns can be adjusted by the \setcvskilllegendcolumns, see \setcvskilllegendcolumns
@@ -766,7 +776,7 @@
\RenewDocumentCommand\cvskillplainlegend{s +O{.25em} +O{\skillPlainLegend@defaultLevelOne} +O{\skillPlainLegend@defaultLevelTwo} +O{\skillPlainLegend@defaultLevelThree} +O{\skillPlainLegend@defaultLevelFour} +O{\skillPlainLegend@defaultLevelFive} +m}{%
\IfBooleanTF#1{% if a star is given, add dashed line
\begingroup%
- \arrayrulecolor{color1}%
+ \arrayrulecolor{bodyrulecolor}%
% calculate descriptor widths
\setlength{\cvskilllegend@leftdescriptorwidth}{\skilllegend@leftdesriptorfactor\skilllegend@bodylength-\cvskill@width-\skillmatrix@padding-3\skilllegend@padding}%
\setlength{\cvskilllegend@rightdescriptorwidth}{\skilllegend@bodylength-\skilllegend@leftdesriptorfactor\skilllegend@bodylength-\cvskill@width-\skillmatrix@padding-3\skilllegend@padding}%
@@ -780,7 +790,7 @@
\raggedleft\hintstyle{#8} & \cvskill{1}& & {\skillLegend@FontSize #3} & \cvskill{4}& &{\skillLegend@FontSize #6} \\%
%
& \cvskill{2} & & {\skillLegend@FontSize #4} & \cvskill{5}& & {\skillLegend@FontSize #7} \\%
- %
+ %
& \cvskill{3} & & {\skillLegend@FontSize #5} & & & %
\end{tabular}%
\endgroup%
@@ -799,7 +809,7 @@
\raggedleft\hintstyle{#8} & \cvskill{1} & {\skillLegend@FontSize #3} & \cvskill{4} &{\skillLegend@FontSize #6} \\%
%
& \cvskill{2} & {\skillLegend@FontSize #4} & \cvskill{5} &{\skillLegend@FontSize #7} \\%
- %
+ %
& \cvskill{3} & {\skillLegend@FontSize #5 } & & %
\end{tabular}%
\endgroup%
@@ -816,7 +826,7 @@
}%
\IfBooleanTF#1{% if a star is given, add dashed line
\begingroup%
- \arrayrulecolor{color1}
+ \arrayrulecolor{bodyrulecolor}
\setlength{\cvskilllegend@leftdescriptorwidth}{\skilllegend@leftdesriptorfactor\skilllegend@bodylength-\cvskill@width-\skillmatrix@padding-6\skilllegend@padding}%
\setlength{\cvskilllegend@rightdescriptorwidth}{\skilllegend@bodylength-\skilllegend@leftdesriptorfactor\skilllegend@bodylength-\cvskill@width-\skillmatrix@padding-6\skilllegend@padding}%
\begin{tabular}{@{}p{\skilllegend@hintscolumnwidth}
@@ -828,8 +838,8 @@
\raggedleft\hintstyle{} & \cvskill{1} & & {\skillLegend@FontSize#3} & \cvskill{4} & & {\skillLegend@FontSize#6}\\%
%
& \cvskill{2} & &{\skillLegend@FontSize#4} & \cvskill{5} & &{\skillLegend@FontSize#7}\\%
- %
- & \cvskill{3} & &{\skillLegend@FontSize#5} & & &%
+ %
+ & \cvskill{3} & &{\skillLegend@FontSize#5} & & &%
\end{tabular}%
\endgroup%
\par\addvspace{#2}}{
@@ -845,7 +855,7 @@
\raggedleft\hintstyle{} & \cvskill{1} & {\skillLegend@FontSize #3} & \cvskill{4} & {\skillLegend@FontSize #6} \\
%
& \cvskill{2} & {\skillLegend@FontSize #4} & \cvskill{5} & {\skillLegend@FontSize #7} \\
- %
+ %
& \cvskill{3} & {\skillLegend@FontSize #5} & & %
\end{tabular}%
\endgroup
@@ -863,7 +873,7 @@
}{%
\cvitem[-0.5em]{#8}{}%
}%
- \arrayrulecolor{color1}%
+ \arrayrulecolor{bodyrulecolor}%
\setlength\arrayrulewidth{\separatorrulewidth}%
\RenewDocumentCommand{\@starIndependentTabular}{}{%
\begingroup%
@@ -879,16 +889,16 @@
\@moderncvstrut{4pt}{16pt} & \cvskill{1} & {\skillLegend@FontSize #3} & \cvskill{4} & {\skillLegend@FontSize #6}\\%
%
& \cvskill{2} & {\skillLegend@FontSize #4} & \cvskill{5} & {\skillLegend@FontSize #7}\\%
- %
+ %
& \cvskill{3} & {\skillLegend@FontSize #5} & & \\[#2]% the spacing needs to be inside the cell for the vertical rule to extend correctly
\end{tabular}%
\endgroup%
- \par\@aftersectionfalse\ignorespaces%
+ \par\@aftersectionfalse\ignorespaces%
}%
- % because of this weird style and the position of the parameter [#2], the dashed lines of the other version look bad. So no lines.
+ % because of this weird style and the position of the parameter [#2], the dashed lines of the other version look bad. So no lines.
\IfBooleanTF#1{%
\@starIndependentTabular%
- }{%
+ }{%
\@starIndependentTabular%
}%
}%
@@ -900,20 +910,20 @@
\NewDocumentCommand\cvSkillMatrix@HeadFont{}{\normalfont}
\DeclareDocumentCommand\cvskillhead{+O{} +O{} +O{} +O{} +O{}}{}%
% add skill matrix line acting as header explaining the meaning of columns.
-%
+%
% Input:
% input_1 (optional): padding length appended to the legend, default: <0.25em>
% input_2 (optional): string naming the level column (2nd column), default: <Level>
% input_3 (optional): string naming the skill column (3nd column), default: <Skill>
% input_4 (optional): string naming the experience-in-years column (4th column), default: <Years>
% input_5 (optional): string naming the comment column (5th column), default: <Comment>
-%
+%
% Example usages:
% \cvskillhead print default head.
% \cvskillhead[0.5em] print default head, but adjust post padding.
% \cvskillhead[0.25em][Level][F\"ahigkeit][Jahre][Bemerkung] Fully adjust head to German example
-%
-% Note:
+%
+% Note:
% - The width of the columns can be adjusted by the \setcvskillcolumns command, see \setcvskillcolumns.
\NewDocumentCommand\skillMatrix@HeaderDefaultOne{}{Level}
@@ -924,13 +934,13 @@
\RenewDocumentCommand\cvskillhead{O{.25em} +O{\skillMatrix@HeaderDefaultOne} +O{\skillMatrix@HeaderDefaultTwo} +O{\skillMatrix@HeaderDefaultThree} +O{\skillMatrix@HeaderDefaultFour}}{%
\begingroup
\renewcommand{\arraystretch}{1.25}
- \arrayrulecolor{color1}
+ \arrayrulecolor{bodyrulecolor}
\begin{tabular}{@{}p{\skillmatrix@hintscolumnwidth}@{\hspace{\separatorcolumnwidth}}%
p{\cvskill@width}@{\hspace{\skillmatrix@padding}}%
p{\cvskill@descriptorwidth}@{\hspace{\skillmatrix@padding}}%
p{\cvskill@experiencewidth}@{\hspace{\skillmatrix@padding}}
p{\skillmatrix@commentwidth}@{}}%
- & \centering{\cvSkillMatrix@HeadFont #2} & \centering{\cvSkillMatrix@HeadFont #3} & \centering{\cvSkillMatrix@HeadFont #4} & {\cvSkillMatrix@HeadFont #5}
+ & \centering{\cvSkillMatrix@HeadFont #2} & \centering{\cvSkillMatrix@HeadFont #3} & \centering{\cvSkillMatrix@HeadFont #4} & {\cvSkillMatrix@HeadFont #5}
\end{tabular}%
\endgroup
\par\addvspace{#1}
@@ -938,7 +948,7 @@
% Definition of \cvskillhead valid moderncvbodyv
\if@moderncvbodyv%
\RenewDocumentCommand\cvskillhead{O{.25em} +O{\skillMatrix@HeaderDefaultOne} +O{\skillMatrix@HeaderDefaultTwo} +O{\skillMatrix@HeaderDefaultThree} +O{\skillMatrix@HeaderDefaultFour}}{%
- \arrayrulecolor{color1}%
+ \arrayrulecolor{bodyrulecolor}%
\setlength\arrayrulewidth{\separatorrulewidth}%
\vspace*{-\separatorrulewidth}% HACK; I don't understand where the space is coming from, nor what it's exact value is :(
\begingroup%
@@ -954,19 +964,19 @@
& & \centering{\cvSkillMatrix@HeadFont#2} & \centering{\cvSkillMatrix@HeadFont#3} & \centering{\cvSkillMatrix@HeadFont#4} & {\cvSkillMatrix@HeadFont#5} \\[#1]% the spacing needs to be inside the cell for the vertical rule to extend correctly
\end{tabular}%
\endgroup%
- \par\@aftersectionfalse\ignorespaces%
+ \par\@aftersectionfalse\ignorespaces%
}%
\fi
% %-------------------------------------------------------------------------------
-% % \cvskillentry
+% % \cvskillentry
% %-------------------------------------------------------------------------------
% \cvskillentry[*][<post_padding>]{<skill_cathegory>}{<0-5>}{<skill_name>}{<years_of_experience>}{<comment>}%
\DeclareDocumentCommand\cvskillentry{s +O{} +m +m +m +m +m}{}%
% add cvskill matrix row.
-%
+%
% Input:
-% asterix (optional): include horizontal (dashed) line above the entered line. This behaviour depends on the body style.
+% asterix (optional): include horizontal (dashed) line above the entered line. This behaviour depends on the body style.
% For the fancy style, the asterix has no meaning.
% input_1 (optional): padding length appended to the legend, default: <0.25em>
% input_2: string, naming skill cathegory, default: <>
@@ -974,14 +984,14 @@
% input_4: string, naming the skill, default: <>
% input_5: positive real number, stating the number of years of experience with this skill , default: <>
% input_6: string, explaining details w.r.t. that particual skill default: <>
-%
+%
% Example usages:
% \cvskillentry*{Language:}{3}{Python}{2}{I have done a million projects with Python}
% \cvskillentry{}{2}{Lilypond}{14}{So much sheet music! Man I'm the best!}
% \cvskillentry{}{3}{\LaTeX}{14}{Clearly I rock at \LaTeX}
% \cvskillentry*[1.5em]{OS:}{3}{Linux}{2}{I only use Archlinux}
-%
-% Note:
+%
+% Note:
% - The width of the columns can be adjusted by the \setcvskillcolumns command, see \setcvskillcolumns.
% Definition of \cvskillentry valid for moderncvbodyi, moderncvbodyii, moderncvbodyiii, moderncvbodyiv
@@ -990,7 +1000,7 @@
\IfBooleanTF{#1}{% If a star is seen a dotted line is drawn above the entry
\begingroup
\renewcommand{\arraystretch}{1.25}
- \arrayrulecolor{color1}
+ \arrayrulecolor{bodyrulecolor}
\begin{tabular}{@{}p{\skillmatrix@hintscolumnwidth}@{\hspace{\separatorcolumnwidth}}%
p{\cvskill@width}@{\hspace{\skillmatrix@padding}}%
p{\cvskill@descriptorwidth}@{\hspace{\skillmatrix@padding}}%
@@ -1018,7 +1028,7 @@
\if@moderncvbodyv%
\DeclareDocumentCommand\@starIndependentMatrixEntry{}{}%
\RenewDocumentCommand\cvskillentry{s O{.25em} +m +m +m +m +m}{%
- \arrayrulecolor{color1}%
+ \arrayrulecolor{bodyrulecolor}%
\setlength\arrayrulewidth{\separatorrulewidth}%
\vspace*{-\separatorrulewidth}% HACK; I don't understand where the space is coming from, nor what it's exact value is :(
%test for the star * in the command
@@ -1038,13 +1048,13 @@
}%
\IfBooleanTF{#1}{% the star does not do anything here
\@starIndependentMatrixEntry%
- }{%
+ }{%
\@starIndependentMatrixEntry%
}%
\par\@aftersectionfalse\ignorespaces%
}%
\fi
-%
+%
\endinput
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvstylebanking.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvstylebanking.sty
index afc20e5399b..6398480ef98 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvstylebanking.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvstylebanking.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvstylebanking.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvstylebanking}[2022-02-21 v2.3.1 modern curriculum vitae and letter style scheme: banking]
+\ProvidesPackage{moderncvstylebanking}[2024-07-18 v2.4.1 modern curriculum vitae and letter style scheme: banking]
% body rules type options: "fullrules", "shortrules", "mixedrules" (default) or "norules"
\@initializecommand{\moderncvstylebodyoptions}{}
@@ -24,6 +24,12 @@
\DeclareOption{center} {\edef\moderncvstylebodyoptions{\moderncvstylebodyoptions,center}}
\DeclareOption{right} {\edef\moderncvstylebodyoptions{\moderncvstylebodyoptions,right}}
+% head options
+\@initializecommand{\moderncvstyleheadoptions}{}
+\@initializeif{\if@datainhead}\@datainheadtrue
+\DeclareOption{details}{\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,details}}
+\DeclareOption{nodetails}{\@datainheadfalse\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,nodetails}}
+
% toggle use of symbol fonts.
\@initializeif{\if@symbols}\@symbolsfalse
\DeclareOption{symbols} {\@symbolstrue}
@@ -55,19 +61,45 @@
% symbols
\if@symbols
- \moderncvicons{symbols} % use symbols
+ \moderncvicons{symbols} % use symbols
\else
\moderncvicons{letters} % do not use symbols, use letters
\fi
-
+%-------------------------------------------------------------------------------
+% Colors
+%-------------------------------------------------------------------------------
+% head and footer
+\colorlet{lastnamecolor}{color1}
+\colorlet{namecolor}{lastnamecolor}
+\colorlet{headrulecolor}{lastnamecolor!50}
+\colorlet{firstnamecolor}{lastnamecolor!60}
+\colorlet{titlecolor}{color2!85}
+\colorlet{addresscolor}{color2}
+\colorlet{quotecolor}{color1}
+\colorlet{pictureframecolor}{color1}
+% body
+\colorlet{bodyrulecolor}{color1}
+\colorlet{sectioncolor}{color1}
+\colorlet{subsectioncolor}{color1}
+\colorlet{hintstylecolor}{color0}
+% letter
+\colorlet{letterclosingcolor}{color2}
+% skillmatrix
+\colorlet{skillmatrixfullcolor}{color1}
+\colorlet{skillmatrixemptycolor}{color2!30}
%-------------------------------------------------------------------------------
% header, body & footer
%-------------------------------------------------------------------------------
-\moderncvhead{3}
+\moderncvhead[\moderncvstyleheadoptions]{3}
\moderncvbody[\moderncvstylebodyoptions]{3}
+\if@datainhead
+% if data is shown in head, do not include the footer
+\else
+ \moderncvfoot{1}
+\fi
\endinput
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvstylecasual.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvstylecasual.sty
index eba5df696e8..1192c8911c5 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvstylecasual.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvstylecasual.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvstylecasual.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,12 +10,18 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvstylecasual}[2022-02-21 v2.3.1 modern curriculum vitae and letter style scheme: casual]
+\ProvidesPackage{moderncvstylecasual}[2024-07-18 v2.4.1 modern curriculum vitae and letter style scheme: casual]
% head section alignment options: "left" (default) or "right"
\@initializecommand{\moderncvstyleheadoptions}{}
\DeclareOption{left} {\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,left}}
\DeclareOption{right}{\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,right}}
+% head options alternate, details and no details
+\DeclareOption{alternate}{\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,alternate}}
+\@initializeif{\if@datainhead}\@datainheadfalse
+\DeclareOption{details}{\@datainheadtrue\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,details}}
+\DeclareOption{nodetails}{\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,nodetails}}
+
% toggle use of symbol fonts.
\@initializeif{\if@symbols}\@symbolsfalse
@@ -23,7 +29,7 @@
\DeclareOption{nosymbols} {\@symbolsfalse}
\DeclareOption*{}% avoid choking on unknown options
-\ExecuteOptions{right,symbols}
+\ExecuteOptions{right,symbols,nodetails}
\ProcessOptions*\relax% \ProcessOptions* processes the options in the order provided (i.e., with the later ones possibly overriding the former ones), while \ProcessOptions processes them in the order of the package
%-------------------------------------------------------------------------------
@@ -42,18 +48,46 @@
% symbols
\if@symbols
- \moderncvicons{symbols} % use symbols
+ \moderncvicons{symbols} % use symbols
\else
\moderncvicons{letters} % do not use symbols, use letters
\fi
+%-------------------------------------------------------------------------------
+% Colors
+%-------------------------------------------------------------------------------
+% head and footer
+\colorlet{lastnamecolor}{color2}
+\colorlet{namecolor}{lastnamecolor}
+\colorlet{headrulecolor}{lastnamecolor!50}
+\colorlet{firstnamecolor}{lastnamecolor!50}
+\colorlet{titlecolor}{color2}
+\colorlet{addresscolor}{color2}
+\colorlet{quotecolor}{color1}
+\colorlet{pictureframecolor}{color1}
+% body
+\colorlet{bodyrulecolor}{color1}
+\colorlet{sectioncolor}{color1}
+\colorlet{subsectioncolor}{color1}
+\colorlet{hintstylecolor}{color0}
+% letter
+\colorlet{letterclosingcolor}{color2}
+% skillmatrix
+\colorlet{skillmatrixfullcolor}{color1}
+\colorlet{skillmatrixemptycolor}{color2!30}
%-------------------------------------------------------------------------------
% header, body & footer
%-------------------------------------------------------------------------------
\moderncvhead[\moderncvstyleheadoptions]{2}
\moderncvbody{1}
-\moderncvfoot{1}
+% include foot only if nodetails option is active since otherwise we have two times the information
+% on the page
+\if@datainhead
+% if data is shown in head, do not include the footer
+\else
+ \moderncvfoot{1}
+\fi
\endinput
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvstyleclassic.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvstyleclassic.sty
index 3018cc67a79..07950bcfa58 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvstyleclassic.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvstyleclassic.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvstyleclassic.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,12 +10,17 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvstyleclassic}[2022-02-21 v2.3.1 modern curriculum vitae and letter style scheme: classic]
+\ProvidesPackage{moderncvstyleclassic}[2024-07-18 v2.4.1 modern curriculum vitae and letter style scheme: classic]
% head section alignment options: "left" (default) or "right"
\@initializecommand{\moderncvstyleheadoptions}{}
\DeclareOption{left} {\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,left}}
\DeclareOption{right}{\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,right}}
+\DeclareOption{top}{\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,top}}
+
+\@initializeif{\if@datainhead}\@datainheadtrue
+\DeclareOption{details}{\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,details}}
+\DeclareOption{nodetails}{\@datainheadfalse\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,nodetails}}
% toggle use of symbol fonts.
\@initializeif{\if@symbols}\@symbolsfalse
@@ -23,7 +28,7 @@
\DeclareOption{nosymbols} {\@symbolsfalse}
\DeclareOption*{}% avoid choking on unknown options
-\ExecuteOptions{left,symbols}
+\ExecuteOptions{left,symbols,details}
\ProcessOptions*\relax% \ProcessOptions* processes the options in the order provided (i.e., with the later ones possibly overriding the former ones), while \ProcessOptions processes them in the order of the package
%-------------------------------------------------------------------------------
@@ -42,17 +47,46 @@
% symbols
\if@symbols
- \moderncvicons{symbols} % use symbols
+ \moderncvicons{symbols} % use symbols
\else
\moderncvicons{letters} % do not use symbols, use letters
\fi
+%-------------------------------------------------------------------------------
+% Colors
+%-------------------------------------------------------------------------------
+% head and footer
+\colorlet{lastnamecolor}{color2}
+\colorlet{namecolor}{lastnamecolor}
+\colorlet{headrulecolor}{lastnamecolor!50}
+\colorlet{firstnamecolor}{lastnamecolor!50}
+\colorlet{titlecolor}{color2}
+\colorlet{addresscolor}{color2}
+\colorlet{quotecolor}{color1}
+\colorlet{pictureframecolor}{color1}
+% body
+\colorlet{bodyrulecolor}{color1}
+\colorlet{sectioncolor}{color1}
+\colorlet{subsectioncolor}{color1}
+\colorlet{hintstylecolor}{color0}
+% letter
+\colorlet{letterclosingcolor}{color2}
+% skillmatrix
+\colorlet{skillmatrixfullcolor}{color1}
+\colorlet{skillmatrixemptycolor}{color2!30}
%-------------------------------------------------------------------------------
% header, body & footer
%-------------------------------------------------------------------------------
\moderncvhead[\moderncvstyleheadoptions]{1}
\moderncvbody{1}
+% include foot only if nodetails option is active since otherwise we have two times the information
+% on the page
+\if@datainhead
+% if data is shown in head, do not include the footer
+\else
+ \moderncvfoot{1}
+\fi
\endinput
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvstylecontemporary.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvstylecontemporary.sty
new file mode 100644
index 00000000000..32f02ceb37f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvstylecontemporary.sty
@@ -0,0 +1,63 @@
+%% start of file `moderncvstylecontemporary.sty'.
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com).
+%% Copyright 2023 Javier Lopez-Gomez (javier.lopez.gomez@proton.me).
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License version 1.3c,
+% available at http://www.latex-project.org/lppl/.
+
+
+%-------------------------------------------------------------------------------
+% identification
+%-------------------------------------------------------------------------------
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{moderncvstylecontemporary}[2023/11/24 v2.0.0 modern curriculum vitae and letter style scheme: contemporary]
+
+% head section alignment options: "left" (default) or "right"
+\@initializecommand{\moderncvstyleheadoptions}{}
+\DeclareOption{left} {\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,left}}
+\DeclareOption{right}{\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,right}}
+\DeclareOption{qr} {\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,qr}}
+\DeclareOption{noqr}{\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,noqr}}
+
+\DeclareOption*{}% avoid choking on unknown options
+\ExecuteOptions{left,qr}
+\ProcessOptions*\relax% \ProcessOptions* processes the options in the order provided (i.e., with the later ones possibly overriding the former ones), while \ProcessOptions processes them in the order of the package
+
+%-------------------------------------------------------------------------------
+% fonts & icons
+%-------------------------------------------------------------------------------
+% Latin Modern fonts
+%\ifxetexorluatex
+% \setmainfont{Latin Modern Roman}
+% \setsansfont{Latin Modern Sans}
+% \setmathfont{Latin Modern Math}
+%\else
+ \IfFileExists{lmodern.sty}%
+ {\RequirePackage{lmodern}}%
+ {}
+%\fi
+
+% symbols
+\providecolor{default-socialicon-color}{named}{headtext}
+\moderncvicons{symbols}
+
+%-------------------------------------------------------------------------------
+% Colors
+%-------------------------------------------------------------------------------
+% skillmatrix
+\colorlet{bodyrulecolor}{color1}
+\colorlet{skillmatrixfullcolor}{color1}
+\colorlet{skillmatrixemptycolor}{color2!30}
+
+%-------------------------------------------------------------------------------
+% header, body & footer
+%-------------------------------------------------------------------------------
+\moderncvhead[\moderncvstyleheadoptions]{7}
+\moderncvbody{6}
+
+
+\endinput
+
+
+%% end of file `moderncvstylecontemporary.sty'.
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvstyleempty.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvstyleempty.sty
index a86560524c0..8dcce13aa5a 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvstyleempty.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvstyleempty.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvstyleempty.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,7 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvstyleempty}[2022-02-21 v2.3.1 modern curriculum vitae scheme: empty]
+\ProvidesPackage{moderncvstyleempty}[2024-07-18 v2.4.1 modern curriculum vitae scheme: empty]
%-------------------------------------------------------------------------------
% required packages
@@ -33,11 +33,34 @@
%-------------------------------------------------------------------------------
%-------------------------------------------------------------------------------
+% Colors
+%-------------------------------------------------------------------------------
+% head and footer
+\colorlet{lastnamecolor}{color2}
+% \colorlet{namecolor}{lastnamecolor}
+\colorlet{headrulecolor}{lastnamecolor!50}
+\colorlet{firstnamecolor}{lastnamecolor!50}
+\colorlet{titlecolor}{color2}
+\colorlet{addresscolor}{color2}
+\colorlet{quotecolor}{color1}
+\colorlet{pictureframecolor}{color1}
+% body
+\colorlet{bodyrulecolor}{color1}
+\colorlet{sectioncolor}{color1}
+\colorlet{subsectioncolor}{color1}
+\colorlet{hintstylecolor}{color0}
+% letter
+\colorlet{letterclosingcolor}{color2}
+% skillmatrix
+\colorlet{skillmatrixfullcolor}{color1}
+\colorlet{skillmatrixemptycolor}{color2!30}
+
+%-------------------------------------------------------------------------------
% fonts & icons
%-------------------------------------------------------------------------------
% symbols
\if@symbols
- \moderncvicons{symbols} % use symbols
+ \moderncvicons{symbols} % use symbols
\else
\moderncvicons{letters} % do not use symbols, use letters
\fi
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvstylefancy.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvstylefancy.sty
index 56de636100a..1ad8d8732f1 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvstylefancy.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvstylefancy.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvstylefancy.sty'.
-%% Copyright 2015-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2015-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,13 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvstylefancy}[2022-02-21 v2.3.1 modern curriculum vitae and letter style scheme: fancy]
+\ProvidesPackage{moderncvstylefancy}[2024-07-18 v2.4.1 modern curriculum vitae and letter style scheme: fancy]
+
+% headoptions
+\@initializecommand{\moderncvstyleheadoptions}{}
+\@initializeif{\if@datainhead}\@datainheadtrue
+\DeclareOption{details}{\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,details}}
+\DeclareOption{nodetails}{\@datainheadfalse\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,nodetails}}
% toggle use of symbol fonts.
\@initializeif{\if@symbols}\@symbolsfalse
@@ -18,10 +24,34 @@
\DeclareOption{nosymbols} {\@symbolsfalse}
\DeclareOption*{}% avoid choking on unknown options
-\ExecuteOptions{symbols}
+\ExecuteOptions{symbols,details}
\ProcessOptions*\relax% \ProcessOptions* processes the options in the order provided (i.e., with the later ones possibly overriding the former ones), while \ProcessOptions processes them in the order of the package
%-------------------------------------------------------------------------------
+% Colors
+%-------------------------------------------------------------------------------
+% head and footer
+\colorlet{lastnamecolor}{color1}
+\colorlet{namecolor}{lastnamecolor}
+\colorlet{headrulecolor}{color1}
+\colorlet{firstnamecolor}{lastnamecolor!50}
+\colorlet{titlecolor}{color2}
+\colorlet{addresscolor}{color2}
+\colorlet{quotecolor}{color1}
+\colorlet{pictureframecolor}{color1}
+% body
+\colorlet{bodyrulecolor}{color1}
+\colorlet{sectioncolor}{color1}
+\colorlet{subsectioncolor}{color1}
+\colorlet{hintstylecolor}{color0}
+% letter
+\colorlet{letterclosingcolor}{color2}
+% skillmatrix
+\colorlet{skillmatrixfullcolor}{color1}
+\colorlet{skillmatrixemptycolor}{color2!30}
+
+
+%-------------------------------------------------------------------------------
% fonts & icons
%-------------------------------------------------------------------------------
% EB Garamond font
@@ -38,7 +68,7 @@
% symbols
\if@symbols
- \moderncvicons{symbols} % use symbols
+ \moderncvicons{symbols} % use symbols
\else
\moderncvicons{letters} % do not use symbols, use letters
\fi
@@ -47,9 +77,16 @@
%-------------------------------------------------------------------------------
% header, body & footer
%-------------------------------------------------------------------------------
-\moderncvhead{5}
+\moderncvhead[\moderncvstyleheadoptions]{5}
\moderncvbody{5}
+% include foot only if nodetails option is active since otherwise we have two times the information
+% on the page
+\if@datainhead
+% if data is shown in head, do not include the footer
+\else
+ \moderncvfoot{1}
+\fi
\endinput
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvstyleoldstyle.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvstyleoldstyle.sty
index 78225e0a58c..37de3c57b32 100644
--- a/Master/texmf-dist/tex/latex/moderncv/moderncvstyleoldstyle.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvstyleoldstyle.sty
@@ -1,5 +1,5 @@
%% start of file `moderncvstyleoldstyle.sty'.
-%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Copyright 2006-2015 Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License version 1.3c,
@@ -10,7 +10,14 @@
% identification
%-------------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{moderncvstyleoldstyle}[2022-02-21 v2.3.1 modern curriculum vitae and letter style scheme: oldstyle]
+\ProvidesPackage{moderncvstyleoldstyle}[2024-07-18 v2.4.1 modern curriculum vitae and letter style scheme: oldstyle]
+
+% headoptions
+\@initializecommand{\moderncvstyleheadoptions}{}
+\@initializeif{\if@datainhead}\@datainheadtrue
+\DeclareOption{details}{\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,details}}
+\DeclareOption{nodetails}{\@datainheadfalse\edef\moderncvstyleheadoptions{\moderncvstyleheadoptions,nodetails}}
+
% toggle use of symbol fonts.
\@initializeif{\if@symbols}\@symbolsfalse
@@ -18,7 +25,7 @@
\DeclareOption{nosymbols} {\@symbolsfalse}
\DeclareOption*{}% avoid choking on unknown options
-\ExecuteOptions{symbols}
+\ExecuteOptions{symbols,details}
\ProcessOptions*\relax% \ProcessOptions* processes the options in the order provided (i.e., with the later ones possibly overriding the former ones), while \ProcessOptions processes them in the order of the package
%-------------------------------------------------------------------------------
@@ -51,11 +58,41 @@
%-------------------------------------------------------------------------------
+% Colors
+%-------------------------------------------------------------------------------
+% head and footer
+\colorlet{lastnamecolor}{color2}
+\colorlet{namecolor}{lastnamecolor}
+\colorlet{headrulecolor}{lastnamecolor!50}
+\colorlet{firstnamecolor}{lastnamecolor!50}
+\colorlet{titlecolor}{color2}
+\colorlet{addresscolor}{color2}
+\colorlet{quotecolor}{color1}
+\colorlet{pictureframecolor}{color1}
+% body
+\colorlet{bodyrulecolor}{color1}
+\colorlet{sectioncolor}{color1}
+\colorlet{subsectioncolor}{color1}
+\colorlet{hintstylecolor}{color0}
+% letter
+\colorlet{letterclosingcolor}{color2}
+% skillmatrix
+\colorlet{skillmatrixfullcolor}{color1}
+\colorlet{skillmatrixemptycolor}{color2!30}
+
+
+%-------------------------------------------------------------------------------
% header, body & footer
%-------------------------------------------------------------------------------
-\moderncvhead{4}
+\moderncvhead[\moderncvstyleheadoptions]{4}
\moderncvbody{4}
-
+% include foot only if nodetails option is active since otherwise we have two times the information
+% on the page
+\if@datainhead
+% if data is shown in head, do not include the footer
+\else
+ \moderncvfoot{1}
+\fi
\endinput
diff --git a/Master/texmf-dist/tex/latex/moderncv/moderncvverticaltimeline.sty b/Master/texmf-dist/tex/latex/moderncv/moderncvverticaltimeline.sty
new file mode 100644
index 00000000000..1ee94a5ef5a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/moderncv/moderncvverticaltimeline.sty
@@ -0,0 +1,79 @@
+%% start of file `moderncvverticaltimeline.sty'.
+%% Copyright 2023 Javier Lopez-Gomez (javier.lopez.gomez@proton.me).
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License version 1.3c,
+% available at http://www.latex-project.org/lppl/.
+
+
+%-------------------------------------------------------------------------------
+% identification
+%-------------------------------------------------------------------------------
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{moderncvverticaltimeline}[2023/11/29 v2.0.0 modern curriculum vitae vertical timeline]
+
+
+%-------------------------------------------------------------------------------
+% required packages
+%-------------------------------------------------------------------------------
+\RequirePackage{tikz}
+
+%-------------------------------------------------------------------------------
+% vertical timeline implementation
+%-------------------------------------------------------------------------------
+\tikzset{
+ tl_milestone/.style={circle,inner sep=1.5pt,draw=color0!20,label={west:#1}},
+ tl_link/.style={thick,densely dotted,color0!20},
+}
+
+\newcounter{tl@chainidx}\setcounter{tl@chainidx}{0}
+\newcounter{tl@nodeidx}\setcounter{tl@nodeidx}{0}
+
+% Mark the end of the current chain; any `\tl@milestone` issued afterward will be on a new timeline.
+\def\tl@resetchain{%
+ \stepcounter{tl@chainidx}%
+ \setcounter{tl@nodeidx}{0}%
+}
+
+% Create a node in the current timeline and link it to the previous node; if the previous milestone
+% is on the last shipped out page, draw a line that extends until the top margin. The argument is laid out as a label (default left).
+\def\tl@milestone#1{%
+ \edef\@tl@prev{tl-\thetl@chainidx-\thetl@nodeidx}%
+ \stepcounter{tl@nodeidx}%
+ \edef\@tl@this{tl-\thetl@chainidx-\thetl@nodeidx}%
+ \tikz[remember picture,overlay] {
+ \node[tl_milestone={#1}] (\@tl@this) {};
+ \ifnum\thetl@nodeidx>1
+ \pgfpointdiff{\pgfpointanchor{\@tl@prev}{center}}{\pgfpointanchor{\@tl@this}{center}}
+ \ifnum\pgf@y>0
+ \draw[tl_link] (\@tl@this) -- ([yshift=-1em] \@tl@this |- current page.north);
+ \else
+ \draw[tl_link] (\@tl@this) -- (\@tl@prev);
+ \fi
+ \fi
+ }
+}
+
+\AddToHook{shipout/background}{%
+ % If there are follow-up milestones in the current timeline, draw a line that extends until the bottom margin
+ \edef\@tl@prev{tl-\thetl@chainidx-\number\numexpr\thetl@nodeidx-1}%
+ \edef\@tl@this{tl-\thetl@chainidx-\thetl@nodeidx}%
+ \tikz[remember picture,overlay] {
+ \ifnum\thetl@nodeidx>1
+ \pgfpointdiff{\pgfpointanchor{\@tl@prev}{center}}{\pgfpointanchor{\@tl@this}{center}}
+ \ifnum\pgf@y>0
+ \draw[tl_link] (\@tl@prev) -- ([yshift=1em] \@tl@prev |- current page.south);
+ \fi
+ \fi
+ }
+}
+
+\AtEndDocument{\tl@resetchain}
+
+\let\@old@section=\section%
+\RenewDocumentCommand{\section}{sm}{\tl@resetchain\@old@section{#1}}
+
+\endinput
+
+
+%% end of file `moderncvverticaltimeline.sty'.
diff --git a/Master/texmf-dist/tex/latex/moderncv/tweaklist.sty b/Master/texmf-dist/tex/latex/moderncv/tweaklist.sty
index 3739c95f92b..c5f58700004 100644
--- a/Master/texmf-dist/tex/latex/moderncv/tweaklist.sty
+++ b/Master/texmf-dist/tex/latex/moderncv/tweaklist.sty
@@ -1,6 +1,6 @@
%% start of file `tweaklist.sty'.
%% Original by Jakob Schiotz, downloaded from http://dcwww.camd.dtu.dk/~schiotz/comp/LatexTips/tweaklist.sty; not found on ctan.
-%% Modified by Xavier Danaux (xdanaux@gmail.com), 2020-2022 moderncv maintainers (github.com/moderncv).
+%% Modified by Xavier Danaux (xdanaux@gmail.com), 2020-2024 moderncv maintainers (github.com/moderncv).
%
% The tweaklist.sty package redefines the itemize, enumerate and description packages, so that all parameters can be adjusted.
% This was done by copying the original definitions, and adding "hook commands" that are executed when entering the environment.
diff --git a/Master/texmf-dist/tex/latex/moloch/beamercolorthememoloch.sty b/Master/texmf-dist/tex/latex/moloch/beamercolorthememoloch.sty
index cf95d62b96b..d0e3a496e7b 100644
--- a/Master/texmf-dist/tex/latex/moloch/beamercolorthememoloch.sty
+++ b/Master/texmf-dist/tex/latex/moloch/beamercolorthememoloch.sty
@@ -23,7 +23,7 @@
%% ---------------------------------------------------------------------------
%% Copyright 2024 Johan Larsson and contributors
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{beamercolorthememoloch}[2024-03-06 v0.3.0 Moloch color theme] % x-release-please-version
+\ProvidesPackage{beamercolorthememoloch}[2024-07-09 v0.4.0 Moloch color theme] % x-release-please-version
\RequirePackage{pgfopts}
\pgfkeys{
/moloch/color/block/.cd,
diff --git a/Master/texmf-dist/tex/latex/moloch/beamerfontthememoloch.sty b/Master/texmf-dist/tex/latex/moloch/beamerfontthememoloch.sty
index 71b52aae8d7..756958d73b8 100644
--- a/Master/texmf-dist/tex/latex/moloch/beamerfontthememoloch.sty
+++ b/Master/texmf-dist/tex/latex/moloch/beamerfontthememoloch.sty
@@ -23,7 +23,8 @@
%% ---------------------------------------------------------------------------
%% Copyright 2024 Johan Larsson and contributors
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{beamerfontthememoloch}[2024-03-06 v0.3.0 Moloch font theme] % x-release-please-version
+\ProvidesPackage{beamerfontthememoloch}[2024-07-09 v0.4.0 Moloch font theme] % x-release-please-version
+\RequirePackage{etoolbox}
\RequirePackage{pgfopts}
\setbeamerfont{title}{size=\Large, series=\bfseries}
\setbeamerfont{author}{size=\small}
@@ -38,6 +39,131 @@
\setbeamerfont{caption name}{series=\bfseries}
\setbeamerfont{description item}{series=\bfseries}
\setbeamerfont{standout}{size=\Large, series=\bfseries}
+\pgfkeys{
+ /moloch/font/titleformat title/.cd,
+ .is choice,
+ regular/.code={%
+ \let\moloch@titleformat\@empty%
+ \setbeamerfont{title}{shape=\normalfont}%
+ },
+ smallcaps/.code={%
+ \let\moloch@titleformat\@empty%
+ \setbeamerfont{title}{shape=\scshape}%
+ },
+ allsmallcaps/.code={%
+ \let\moloch@titleformat\lowercase%
+ \setbeamerfont{title}{shape=\scshape}%
+ \PackageNote{beamerthememoloch}{%
+ Be aware that titleformat title=allsmallcaps can lead to problems%
+ }
+ },
+ allcaps/.code={%
+ \let\moloch@titleformat\uppercase%
+ \setbeamerfont{title}{shape=\normalfont}
+ \PackageNote{beamerthememoloch}{%
+ Be aware that titleformat title=allcaps can lead to problems%
+ }
+ },
+}
+\pgfkeys{
+ /moloch/font/titleformat subtitle/.cd,
+ .is choice,
+ regular/.code={%
+ \let\moloch@subtitleformat\@empty%
+ \setbeamerfont{subtitle}{shape=\normalfont}%
+ },
+ smallcaps/.code={%
+ \let\moloch@subtitleformat\@empty%
+ \setbeamerfont{subtitle}{shape=\scshape}%
+ },
+ allsmallcaps/.code={%
+ \let\moloch@subtitleformat\MakeLowercase%
+ \setbeamerfont{subtitle}{shape=\scshape}%
+ \PackageNote{beamerthememoloch}{%
+ Be aware that titleformat subtitle=allsmallcaps can lead to problems%
+ }
+ },
+ allcaps/.code={%
+ \let\moloch@subtitleformat\MakeUppercase%
+ \setbeamerfont{subtitle}{shape=\normalfont}%
+ \PackageNote{beamerthememoloch}{%
+ Be aware that titleformat subtitle=allcaps can lead to problems%
+ }
+ },
+}
+\pgfkeys{
+ /moloch/font/titleformat section/.cd,
+ .is choice,
+ regular/.code={%
+ \let\moloch@sectiontitleformat\@empty%
+ \setbeamerfont{section title}{shape=\normalfont}%
+ },
+ smallcaps/.code={%
+ \let\moloch@sectiontitleformat\@empty%
+ \setbeamerfont{section title}{shape=\scshape}%
+ },
+ allsmallcaps/.code={%
+ \let\moloch@sectiontitleformat\MakeLowercase%
+ \setbeamerfont{section title}{shape=\scshape}%
+ \PackageNote{beamerthememoloch}{%
+ Be aware that titleformat section=allsmallcaps can lead to problems%
+ }
+ },
+ allcaps/.code={%
+ \let\moloch@sectiontitleformat\MakeUppercase%
+ \setbeamerfont{section title}{shape=\normalfont}%
+ \PackageNote{beamerthememoloch}{%
+ Be aware that titleformat section=allcaps can lead to problems%
+ }
+ },
+}
+\pgfkeys{
+ /moloch/font/titleformat frame/.cd,
+ .is choice,
+ regular/.code={%
+ \let\moloch@frametitleformat\@empty%
+ \setbeamerfont{frametitle}{shape=\normalfont}%
+ },
+ smallcaps/.code={%
+ \let\moloch@frametitleformat\@empty%
+ \setbeamerfont{frametitle}{shape=\scshape}%
+ },
+ allsmallcaps/.code={%
+ \let\moloch@frametitleformat\MakeLowercase%
+ \setbeamerfont{frametitle}{shape=\scshape}%
+ \PackageNote{beamerthememoloch}{%
+ Be aware that titleformat frame=allsmallcaps can lead to problems%
+ }
+ },
+ allcaps/.code={%
+ \let\moloch@frametitleformat\MakeUppercase%
+ \setbeamerfont{frametitle}{shape=\normalfont}
+ \PackageNote{beamerthememoloch}{%
+ Be aware that titleformat frame=allcaps can lead to problems%
+ }
+ },
+}
+\pgfkeys{
+ /moloch/font/.cd,
+ titleformattitle/.code=\pgfkeysalso{titleformat title=#1},
+ titleformatsubtitle/.code=\pgfkeysalso{titleformat subtitle=#1},
+ titleformatsection/.code=\pgfkeysalso{titleformat section=#1},
+ titleformatframe/.code=\pgfkeysalso{titleformat frame=#1},
+}
+\newcommand{\moloch@font@setdefaults}{
+ \pgfkeys{/moloch/font/.cd,
+ titleformat title=regular,
+ titleformat subtitle=regular,
+ titleformat section=regular,
+ titleformat frame=regular,
+ }
+}
+\def\moloch@titleformat#1{#1}
+\def\moloch@subtitleformat#1{#1}
+\def\moloch@sectiontitleformat#1{#1}
+\def\moloch@frametitleformat#1{#1}
+\moloch@font@setdefaults
+\ProcessPgfPackageOptions{/moloch/font}
\endinput
%%
%% End of file `beamerfontthememoloch.sty'.
diff --git a/Master/texmf-dist/tex/latex/moloch/beamerinnerthememoloch.sty b/Master/texmf-dist/tex/latex/moloch/beamerinnerthememoloch.sty
index c64522e8a5b..8cbc634ec02 100644
--- a/Master/texmf-dist/tex/latex/moloch/beamerinnerthememoloch.sty
+++ b/Master/texmf-dist/tex/latex/moloch/beamerinnerthememoloch.sty
@@ -23,7 +23,7 @@
%% ---------------------------------------------------------------------------
%% Copyright 2024 Johan Larsson and contributors
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{beamerinnerthememoloch}[2024-03-06 v0.3.0 Moloch inner theme] % x-release-please-version
+\ProvidesPackage{beamerinnerthememoloch}[2024-07-09 v0.4.0 Moloch inner theme] % x-release-please-version
\RequirePackage{keyval}
\RequirePackage{calc}
\RequirePackage{pgfopts}
@@ -94,13 +94,14 @@
}
\setbeamertemplate{title}{
\raggedright%
- \inserttitle%
+ \moloch@titleformat{\inserttitle}%
\par%
\vspace*{0.2em}
}
\setbeamertemplate{subtitle}{
+ \vspace*{0.1em}
\raggedright%
- \insertsubtitle%
+ \moloch@subtitleformat{\insertsubtitle}%
\par%
\vspace*{0.2em}
}
@@ -109,6 +110,7 @@
\setbeamertemplate{title separator}{
\tikzexternaldisable%
\begin{tikzpicture}
+ \mmzUnmemoizable%
\fill[fg] (0,0) rectangle (\textwidth, \moloch@titleseparator@linewidth);
\end{tikzpicture}%
\tikzexternalenable%
@@ -134,7 +136,7 @@
\begin{center}
\usebeamercolor[fg]{section title}
\usebeamerfont{section title}
- \insertsectionhead\par
+ \moloch@sectiontitleformat{\insertsectionhead}\par
\ifx\insertsubsectionhead\@empty\else
\usebeamercolor[fg]{subsection title}
\usebeamerfont{subsection title}
@@ -148,7 +150,7 @@
\raggedright
\usebeamercolor[fg]{section title}
\usebeamerfont{section title}
- \insertsectionhead\\[-1ex]
+ \moloch@sectiontitleformat{\insertsectionhead}\\[-1ex]
\usebeamertemplate*{progress bar in section page}
\par
\ifx\insertsubsectionhead\@empty\else%
@@ -197,9 +199,10 @@
\setbeamertemplate{progress bar in section page}{
\pgfmathsetlength{\moloch@progressonsectionpage}{
\textwidth * min(1,\insertframenumber/\inserttotalframenumber)
- }
- \tikzexternaldisable
+ }%
+ \tikzexternaldisable%
\begin{tikzpicture}
+ \mmzUnmemoizable%
\fill[bg]
(0,0)
rectangle
@@ -209,7 +212,7 @@
rectangle
(\moloch@progressonsectionpage, \moloch@progressonsectionpage@linewidth);
\end{tikzpicture}
- \tikzexternalenable
+ \tikzexternalenable%
}
\def\inserttotalframenumber{100}
\setbeamertemplate{itemize item}{\(\bullet\)}
diff --git a/Master/texmf-dist/tex/latex/moloch/beamerouterthememoloch.sty b/Master/texmf-dist/tex/latex/moloch/beamerouterthememoloch.sty
index 311ef669812..1895dbc9402 100644
--- a/Master/texmf-dist/tex/latex/moloch/beamerouterthememoloch.sty
+++ b/Master/texmf-dist/tex/latex/moloch/beamerouterthememoloch.sty
@@ -23,7 +23,7 @@
%% ---------------------------------------------------------------------------
%% Copyright 2024 Johan Larsson and contributors
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{beamerouterthememoloch}[2024-03-06 v0.3.0 Moloch outer theme] % x-release-please-version
+\ProvidesPackage{beamerouterthememoloch}[2024-07-09 v0.4.0 Moloch outer theme] % x-release-please-version
\RequirePackage{calc}
\RequirePackage{pgfopts}
\pgfkeys{
@@ -90,23 +90,42 @@
\usebeamertemplate*{page number in head/foot}\vskip4pt%
\end{beamercolorbox}%
}
+\newlength{\moloch@frametitle@padding}
+\setlength{\moloch@frametitle@padding}{2.2ex}
+\newcommand{\moloch@frametitlestrut@start}{%
+ \rule{0pt}{\moloch@frametitle@padding +%
+ \totalheightof{%
+ \ifcsdef{moloch@frametitleformat}{\moloch@frametitleformat X}{X}%
+ }%
+}%
+}
+
+\newcommand{\moloch@frametitlestrut@end}{%
+ \vphantom{\rule[-\moloch@frametitle@padding]{0pt}{\moloch@frametitle@padding}}
+}
\defbeamertemplate{frametitle}{plain}{%
\nointerlineskip%
\begin{beamercolorbox}[%
wd=\paperwidth,%
- sep=1.1ex,%
- leftskip=0.5ex,%
- rightskip=\the\glueexpr 0.5ex plus 1fill\relax,%
+ leftskip=1.6ex,%
+ rightskip=\the\glueexpr 1.6ex plus 1fill\relax,%
]{frametitle}%
\usebeamerfont{frametitle}%
- \vbox{}\vskip-0.4ex%
- \strut\insertframetitle\nolinebreak\strut\par%
+ \moloch@frametitlestrut@start%
+ \moloch@frametitleformat{\insertframetitle}%
{%
\ifx\insertframesubtitle\@empty%
\else%
- {\usebeamerfont{framesubtitle}\vspace{-0.8ex}\usebeamercolor[fg]{framesubtitle}\strut\insertframesubtitle\strut\par}%
+ {%
+ \par%
+ \usebeamerfont{framesubtitle}%
+ \vspace{-0.8ex}%
+ \usebeamercolor[fg]{framesubtitle}%
+ \insertframesubtitle%
+ }%
\fi
}%
+ \moloch@frametitlestrut@end%
\end{beamercolorbox}%
}
\setbeamertemplate{frametitle continuation}{\romannumeral\insertcontinuationcount}
@@ -114,13 +133,14 @@
\newlength{\moloch@progressinheadfoot@linewidth}
\setlength{\moloch@progressinheadfoot@linewidth}{0.4pt}
\setbeamertemplate{progress bar in head/foot}{
- \nointerlineskip
+ \nointerlineskip%
\pgfmathsetlength{\moloch@progressinheadfoot}{%
\paperwidth * min(1,\insertframenumber/\inserttotalframenumber)%
- }
+ }%
\begin{beamercolorbox}[wd=\paperwidth]{progress bar in head/foot}
- \tikzexternaldisable
+ \tikzexternaldisable%
\begin{tikzpicture}
+ \mmzUnmemoizable%
\fill[bg]
(0,0)
rectangle
@@ -130,7 +150,7 @@
rectangle
(\moloch@progressinheadfoot, \moloch@progressinheadfoot@linewidth);
\end{tikzpicture}
- \tikzexternalenable
+ \tikzexternalenable%
\end{beamercolorbox}
}
\moloch@outer@setdefaults
diff --git a/Master/texmf-dist/tex/latex/moloch/beamerthememoloch.sty b/Master/texmf-dist/tex/latex/moloch/beamerthememoloch.sty
index ff2a2df3b70..4f47627e301 100644
--- a/Master/texmf-dist/tex/latex/moloch/beamerthememoloch.sty
+++ b/Master/texmf-dist/tex/latex/moloch/beamerthememoloch.sty
@@ -21,7 +21,7 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{beamerthememoloch}[2024-03-06 v0.3.0 Moloch Beamer theme] % x-release-please-version
+\ProvidesPackage{beamerthememoloch}[2024-07-09 v0.4.0 Moloch Beamer theme] % x-release-please-version
\RequirePackage{pgfopts}
\pgfkeys{/moloch/.cd,
.search also={
@@ -31,14 +31,50 @@
/moloch/font,
}
}
+\pgfkeys{
+ /moloch/titleformat plain/.cd,
+ .is choice,
+ regular/.code={%
+ \let\moloch@plaintitleformat\@empty%
+ \setbeamerfont{standout}{shape=\normalfont}%
+ },
+ smallcaps/.code={%
+ \let\moloch@plaintitleformat\@empty%
+ \setbeamerfont{standout}{shape=\scshape}%
+ },
+ allsmallcaps/.code={%
+ \let\moloch@plaintitleformat\MakeLowercase%
+ \setbeamerfont{standout}{shape=\scshape}%
+ },
+ allcaps/.code={%
+ \let\moloch@plaintitleformat\MakeUppercase%
+ \setbeamerfont{standout}{shape=\normalfont}%
+ },
+}
+\pgfkeys{
+ /moloch/titleformat/.code=\pgfkeysalso{
+ font/titleformat title=#1,
+ font/titleformat subtitle=#1,
+ font/titleformat section=#1,
+ font/titleformat frame=#1,
+ titleformat plain=#1,
+ }
+}
+\newcommand{\moloch@setdefaults}{
+ \pgfkeys{/moloch/.cd,
+ titleformat plain=regular,
+ }
+}
\providecommand{\tikzexternalenable}{}
\providecommand{\tikzexternaldisable}{}
+\providecommand{\mmzUnmemoizable}{}
\useinnertheme{moloch}
\useoutertheme{moloch}
\usecolortheme{moloch}
\usefonttheme{moloch}
\newcommand{\molochset}[1]{\pgfkeys{/moloch/.cd,#1}}
\newcommand{\mreducelistspacing}{\vspace{-\topsep}}
+\moloch@setdefaults
\ProcessPgfOptions{/moloch}
\endinput
%%
diff --git a/Master/texmf-dist/tex/latex/moremath/moremath.sty b/Master/texmf-dist/tex/latex/moremath/moremath.sty
new file mode 100644
index 00000000000..cc63871489b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/moremath/moremath.sty
@@ -0,0 +1,1245 @@
+%%
+%% This is file `moremath.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% moremath.dtx (with options: `package')
+%%
+%% This is a generated file.
+%%
+%%
+%% Copyright (C) 2024 Marcel Ilg
+%%
+%% 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
+%%
+%% https://www.latex-project.org/lppl.txt
+%%
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status ‘maintained’.
+%%
+%% The Current Maintainer of this work is Marcel Ilg.
+%%
+%% This work consists of the files listed in MANIFEST.md.
+%%
+
+\NeedsTeXFormat{LaTeX2e}[2022-11-01]
+\DeclareCurrentRelease{v0}{2024-07-15}
+\ProvidesExplPackage{moremath}
+ {2024-08-20}{v0.5.0}{More Math Macros}
+\msg_new:nnn { moremath } {load / bm}
+{
+ Option~'bm'~given.\\
+ Loading~the~bm~package~\msg_line_context:.
+}
+\msg_new:nnn {moremath} { load / disabling }
+{
+ Option~'#1'~given.\\
+ Disabling~#2~\msg_line_context:.
+}
+\bool_new:N \l__moremath_predef_vector_op_bool
+\bool_new:N \l__moremath_predef_operators_bool
+\bool_new:N \l__moremath_predef_crvector_bool
+\bool_new:N \l__moremath_predef_matrix_bool
+\bool_new:N \l__moremath_predef_abs_bool
+\keys_define:nn { moremath / load }
+{
+ bm .code:n = {
+ \msg_info:nn {moremath} {load / bm}
+ \RequirePackage{bm}
+ },
+ bm .value_forbidden:n = true,
+ bm. usage:n = load,
+ no-vector .bool_set_inverse:N = \l__moremath_predef_vector_op_bool,
+ no-vector .default:n = true,
+ no-vector .initial:n = false,
+ no-vector .usage:n = load,
+ no-operators .bool_set_inverse:N = \l__moremath_predef_operators_bool,
+ no-operators .default:n = true,
+ no-operators .initial:n = false,
+ no-operators .usage:n = load,
+ no-abs-shorthands .bool_set_inverse:N = \l__moremath_predef_abs_bool,
+ no-abs-shorthands .default:n = true,
+ no-abs-shorthands .initial:n = false,
+ no-abs-shorthands .usage:n = load,
+ no-matrix .bool_set_inverse:N = \l__moremath_predef_matrix_bool,
+ no-matrix .initial:n = false,
+ no-matrix .default:n = true,
+ no-matrix .usage:n =load,
+ no-crvector .bool_set_inverse:N = \l__moremath_predef_crvector_bool,
+ no-crvector .default:n = true,
+ no-crvector .initial:n = false,
+ no-crvector .usage:n = load,
+ nopredef .multichoice:,
+ nopredef / operators .meta:nn = { moremath / load }
+ {
+ no-operators = true
+ },
+ nopredef / vector .meta:nn = { moremath / load }
+ {
+ no-vector = true
+ },
+ nopredef / abs .meta:nn = { moremath / load }
+ {
+ no-abs-shorthands = true,
+ },
+ noperdef / matrix .meta:nn = { moremath / load }
+ {
+ no-matrix = true,
+ },
+ nopredef / crvector .meta:nn = {moremath / load}
+ {
+ no-crvector = true,
+ },
+ nopredef / all .meta:nn = { moremath / load }
+ {
+ no-operators = true,
+ no-vector = true,
+ no-abs-shorthands = true
+ },
+ nopredef .usage:n = load,
+ unknown .code:n = {\PassOptionsToPackage{\CurrentOption}{mathtools}},
+ unknown .usage:n = load,
+}
+\tl_new:N \l__moremath_nabla_tl
+\bool_new:N \l__moremath_nabla_arrow_bool
+\bool_new:N \l__moremath_nabla_arrow_bold_bool
+\tl_new:N \l__moremath_grad_op_tl
+\tl_new:N \l__moremath_laplacian_symb_tl
+\bool_new:N \l__moremath_laplacian_delta_bool
+\bool_new:N \l__moremath_laplacian_arrow_bool
+\tl_new:N \l__moremath_laplacian_tl
+\tl_new:N \l__moremath_dalembert_symb_tl
+\bool_new:N \l__moremath_vcenter_bool
+\keys_define:nn { moremath }
+{
+ % Symbol to use for the nabla
+ nabla .tl_set:N = \l__moremath_nabla_tl,
+ nabla .initial:n = {\nabla},
+ nabla .value_required:n = true,
+ % shall the nabla have an arrow over it
+ arrownabla .bool_set:N = \l__moremath_nabla_arrow_bool,
+ arrownabla .default:n = {true},
+ arrownabla .initial:n = {false},
+ % shall the nabla be bold
+ boldnabla .bool_set:N = \l__moremath_nabla_bold_bool,
+ boldnabla .default:n = {true},
+ boldnabla .initial:n = {false},
+ % Symbol to use for the gradient operator
+ grad-op .tl_set:N = \l__moremath_grad_op_tl,
+ grad-op .value_required:n = true,
+ % Symbol to use for the laplacian
+ laplacian-symb .tl_set:N = \l__moremath_laplacian_symb_tl,
+ laplacian-symb .initial:n = {\l__moremath_nabla_tl},
+ % shall the Laplace operator be a delta
+ delta-laplace .bool_set:N = \l__moremath_laplacian_delta_bool,
+ delta-laplace .initial:n = {false},
+ % shall the laplace operator have an arrow over itself
+ arrowlaplace .bool_set:N = \l__moremath_laplacian_arrow_bool,
+ arrowlaplace .default:n = {true},
+ arrowlaplace .initial:n = {false},
+ % overwrite the laplace operator
+ laplacian .tl_set:N = \l__moremath_laplacian_tl,
+ laplacian .value_required:n = true,
+ dalembert-symb .tl_set:N = \l__moremath_dalembert_symb_tl,
+ dalembert-symb .initial:n = {\square},
+ vcenter .bool_set:N = \l__moremath_vcenter_bool,
+ vcenter .initial:n = true,
+ vcenter .value_required:n = true,
+}% \keys_define:nn
+\keys_define:nn { moremath / matrix }
+{
+ delimiter .tl_set:N = \l__moremath_matrix_delim_tl,
+ delimiter .initial:n = {},
+ fill .tl_set:N = \l__moremath_matrix_fill_tl,
+ fill .initial:n = {},
+ align .tl_set:N = \l__moremath_matrix_align_tl,
+ align .initial:n = {c},
+ align .value_required:n = true,
+}
+\cs_new_protected:Nn \moremath_setup:n
+{
+ \keys_set:nn {moremath} {#1}
+}
+\NewDocumentCommand \moremathsetup {m}
+{
+ \moremath_setup:n {#1}
+}
+\cs_new_protected:Nn \__moremath_load_time_setup:
+{
+ \ProcessKeyOptions[ moremath / load ]
+}
+\__moremath_load_time_setup:
+\msg_new:nnn { moremath } { load / loading-amssymb }
+{
+ Vector~calculus~commands~enabled.\\
+ Loading~amssymb~package~\msg_line_context:.
+}
+\bool_if:NT \l__moremath_predef_vector_op_bool
+{
+ \msg_info:nn { moremath } { load / loading-amssymb }
+ \RequirePackage{amssymb}
+}
+\RequirePackage{mathtools}[2004/06/05]
+\cs_new_protected:Nn \__moremath_tex_vcenter:n
+{
+ \tex_vcenter:D {#1}
+}
+\cs_new_protected:Nn \__moremath_tex_mathpalette:Nn
+{
+ \mathpalette #1 {#2}
+}
+\cs_new_protected_nopar:Nn \__moremath_tex_mathsurround:n
+{
+ \tex_mathsurround:D = #1
+}
+\cs_new_protected_nopar:Nn \__moremath_tex_mathop:n
+{
+ \tex_mathop:D {#1}
+}
+\cs_new_nopar:Nn \__moremath_matrix_star_begin:nn
+{
+ \begin{ #1 matrix* } [ #2 ]
+}
+\cs_generate_variant:Nn \__moremath_matrix_star_begin:nn { nV, Vn, VV }
+\cs_new_nopar:Nn \__moremath_matrix_star_end:n
+{
+ \end{ #1 matrix* }
+}
+\cs_generate_variant:Nn \__moremath_matrix_star_end:n {V}
+\cs_new_protected_nopar:Nn \moremath_vcenter:n
+{
+ \__moremath_tex_mathpalette:Nn \__moremath_vcenter:Nn {#1}
+}
+\cs_new_protected_nopar:Nn \__moremath_vcenter:Nn
+{
+ \__moremath_tex_vcenter:n
+ {
+ \hbox:n
+ {
+ $
+ \__moremath_tex_mathsurround:n {0pt}
+ #1 {#2}
+ $
+ }
+ }
+}
+\msg_new:nnn { moremath } { csname-already-defined }
+{
+ Control~sequence~' #1 '~is~already~ defined.\\
+ Skipping~definition~\msg_line_context:
+}
+\msg_new:nnnn { moremath } { vcenter / only-in-math-mode }
+{
+ Command~#1~used~outside~math~mode~\msg_line_context:.
+}
+{
+ The~command~#1~may~only~be~used~inside~math~mode.
+}
+\cs_if_free:NTF \VCenterMath
+{
+ \NewDocumentCommand \VCenterMath { m }
+ {
+ \mode_if_math:TF
+ {
+ \moremath_vcenter:n {#1}
+ }{% \mode_if_math:TF FALSE BRANCH
+ \msg_error:nnn { moremath } { vcenter / only-in-math-mode } {\VCenterMath}
+ }
+ }
+}{% \cs_if_free:NTF \VCenterMath FALSE BRANCH
+ \msg_warning:nnn { moremath } { csname-already-defined } {\VCenterMath}
+}
+\DeclarePairedDelimiter{\__moremath_inparent:w}{\lparen}{\rparen}
+\DeclarePairedDelimiter{\__moremath_inbrack:w}{\lbrack}{\rbrack}
+\DeclarePairedDelimiter{\__moremath_inbrace:w}{\lbrace}{\rbrace}
+\DeclarePairedDelimiter{\__moremath_in_vert:w}{\lvert}{\rvert}
+\DeclarePairedDelimiter{\__moremath_in_Vert:w}{\lVert}{\rVert}
+\cs_new_protected:Nn \__moremath_operator:Nnn
+{
+ #1
+ % add superscript if present
+ \tl_if_empty:nF {#2} {^{#2}}
+ % add subscript if present
+ \tl_if_empty:nF {#3} { \c_math_subscript_token {#3} }
+}
+\cs_new_protected_nopar:Nn \moremath_delim_op_noscale:NNnnn
+{
+ \__moremath_operator:Nnn #1 {#3} {#4}
+ % #2 is the paired delimiter
+ #2 {#5}
+}
+
+\cs_new_protected_nopar:Nn \moremath_delim_op_autoscale:NNnnn
+{
+ \__moremath_operator:Nnn #1 {#3} {#4}
+ % #2 is the paired delimiter
+ #2 * {#5}
+}
+\cs_new_protected_nopar:Nn \moremath_delim_op_manuscale:NNnnnn
+{
+ \__moremath_operator:Nnn #1 {#4} {#5}
+ % #2 is the paired delimiter
+ #2 [ #3 ] {#6}
+}
+\cs_generate_variant:Nn \moremath_delim_op_manuscale:NNnnnn {NNVnnn}
+\msg_new:nnn { moremath } { delimop / already-defined-skip }
+{
+ Control~sequence~'#1'~is~already~defined.\\
+ Skipping~definition~of~delimited~operator~'#1'~\msg_line_context:.
+}
+\msg_new:nnn { moremath } { delimop / auto-manu-scale-conflict }
+{
+ Both~star~and~scale~cmd~given~to~'#1'.\\
+ Automatic~scaling~will~be~preferred,~the~size~command~will~be~
+ ignored~\msg_line_context:.
+}
+\cs_new_protected:Nn \moremath_new_delim_op_command:NNN
+{
+ \cs_if_free:NTF #1
+ {
+ \exp_args:NNe \NewDocumentCommand #1
+ { s o E{ ^ \char_generate:nn {`_} {8} }{{}{}} m }
+ {
+ \tl_if_novalue:nTF {##2}
+ {
+ % second argument empty
+ \bool_if:nTF {##1}
+ {
+ % star given
+ \moremath_delim_op_autoscale:NNnnn #2 #3 {##3} {##4} {##5}
+ }{
+ % star not given
+ \moremath_delim_op_noscale:NNnnn #2 #3 {##3} {##4} {##5}
+ }
+ }{
+ % second argument present
+ % star given?
+ \bool_if:nTF {##1}
+ {
+ % Warn if both star and scaling factor are present
+ \msg_warning:nnn { moremath } { delimop / auto-manu-scale-conflict }
+ {#1}
+ \moremath_delim_op_autoscale:NNnnn #2 #3 {##3} {##4} {##5}
+ }{ % FALSE BRANCH
+ \moremath_delim_op_manuscale:NNnnnn #2 #3 {##2} {##3} {##4} {##5}
+ }
+ }
+ }
+ }{ % \cs_if_free:nTF #1 FALSE BRANCH
+ \msg_warning:nnn { moremath } { delimop / already-defined-skip }
+ {#1}
+ }
+}
+
+\cs_generate_variant:Nn \moremath_new_delim_op_command:NNN {cNN}
+\NewDocumentCommand\DeclareDelimitedOperator { m m m }
+{
+ \msg_redirect_name:nnn { moremath } { delimop / already-defined-skip } { error }
+ \moremath_new_delim_op_command:NNN #1 #2 #3
+ \msg_redirect_name:nnn { moremath } { delimop / already-defined-skip } {}
+}
+\cs_new_protected:Nn \__moremath_new_delim_op_cmds:nN
+{
+ \moremath_new_delim_op_command:cNN {p #1} #2 \__moremath_inparent:w
+ \moremath_new_delim_op_command:cNN {b #1} #2 \__moremath_inbrack:w
+ \moremath_new_delim_op_command:cNN {B #1} #2 \__moremath_inbrace:w
+ \moremath_new_delim_op_command:cNN {v #1} #2 \__moremath_in_vert:w
+ \moremath_new_delim_op_command:cNN {V #1} #2 \__moremath_in_Vert:w
+}
+\bool_if:NTF \l__moremath_predef_operators_bool
+{
+\__moremath_new_delim_op_cmds:nN {arccos} \arccos
+\__moremath_new_delim_op_cmds:nN {arcsin} \arcsin
+\__moremath_new_delim_op_cmds:nN {arctan} \arctan
+\__moremath_new_delim_op_cmds:nN {arg} \arg
+\__moremath_new_delim_op_cmds:nN {cos} \cos
+\__moremath_new_delim_op_cmds:nN {cosh} \cosh
+\__moremath_new_delim_op_cmds:nN {cot} \cot
+\__moremath_new_delim_op_cmds:nN {coth} \coth
+\__moremath_new_delim_op_cmds:nN {csc} \csc
+\__moremath_new_delim_op_cmds:nN {deg} \deg
+\__moremath_new_delim_op_cmds:nN {det} \det
+\__moremath_new_delim_op_cmds:nN {dim} \dim
+\__moremath_new_delim_op_cmds:nN {exp} \exp
+\__moremath_new_delim_op_cmds:nN {gcd} \gcd
+\__moremath_new_delim_op_cmds:nN {hom} \hom
+\__moremath_new_delim_op_cmds:nN {inf} \inf
+\__moremath_new_delim_op_cmds:nN {injlim} \injlim
+\__moremath_new_delim_op_cmds:nN {ker} \ker
+\__moremath_new_delim_op_cmds:nN {lg} \lg
+\__moremath_new_delim_op_cmds:nN {lim} \lim
+\__moremath_new_delim_op_cmds:nN {liminf} \liminf
+\__moremath_new_delim_op_cmds:nN {limsup} \limsup
+\__moremath_new_delim_op_cmds:nN {ln} \ln
+\__moremath_new_delim_op_cmds:nN {log} \log
+\__moremath_new_delim_op_cmds:nN {max} \max
+\__moremath_new_delim_op_cmds:nN {min} \min
+\__moremath_new_delim_op_cmds:nN {Pr} \Pr
+\__moremath_new_delim_op_cmds:nN {projlim} \projlim
+\__moremath_new_delim_op_cmds:nN {sec} \sec
+\__moremath_new_delim_op_cmds:nN {sin} \sin
+\__moremath_new_delim_op_cmds:nN {sinh} \sinh
+\__moremath_new_delim_op_cmds:nN {sup} \sup
+\__moremath_new_delim_op_cmds:nN {tan} \tan
+\__moremath_new_delim_op_cmds:nN {tanh} \tanh
+\__moremath_new_delim_op_cmds:nN {varinjlim} \varinjlim
+\__moremath_new_delim_op_cmds:nN {varprojlim} \varprojlim
+\__moremath_new_delim_op_cmds:nN {varliminf} \varliminf
+\__moremath_new_delim_op_cmds:nN {varlimsup} \varlimsup
+}{
+ \msg_info:nnnn {moremath} {load /disabling} {no-operators}
+ {
+ predefined~delimited~operator~macros
+ }
+} % End of the conditional
+\cs_new_protected_nopar:Nn \__moremath_maybe_vcenter:n
+{
+ \bool_if:NTF \l__moremath_vcenter_bool
+ {
+ \moremath_vcenter:n {#1}
+ }{
+ #1
+ }
+}
+\cs_new_protected:Nn \__moremath_gradient_operator_get:
+{
+ \tl_if_empty:NTF \l__moremath_grad_op_tl
+ {
+ \__moremath_tex_mathop:n
+ {
+ \bool_if:NTF \l__moremath_nabla_arrow_bool
+ {
+ \vec
+ {
+ \__moremath_maybe_vcenter:n
+ {
+ \bool_if:NT \l__moremath_nabla_bold_bool
+ {
+ \boldsymbol
+ }
+ \l__moremath_nabla_tl
+ }
+ }
+ }{
+ \bool_if:NTF \l__moremath_nabla_bold_bool
+ {
+ \__moremath_maybe_vcenter:n
+ {
+ \boldsymbol
+ \l__moremath_nabla_tl
+ }
+ }{
+ \l__moremath_nabla_tl
+ }
+ }
+ }% \__moremath_tex_mathop:n
+ \nolimits
+ }{
+ \l__moremath_grad_op_tl
+ }
+}
+\cs_new_protected:Nn \__moremath_laplace_operator_get:
+{
+ \tl_if_empty:NTF \l__moremath_laplacian_tl
+ {
+ \__moremath_tex_mathop:n
+ {
+ \bool_if:NTF \l__moremath_laplacian_delta_bool
+ {
+ \Delta
+ }{
+ \bool_if:NTF \l__moremath_laplacian_arrow_bool
+ {
+ \vec{
+ \__moremath_maybe_vcenter:n
+ {
+ \bool_if:NT \l__moremath_nabla_bold_bool {\boldsymbol}
+ \l__moremath_laplacian_symb_tl
+ }
+ }
+ }{
+ \bool_if:NTF \l__moremath_nabla_bold_bool
+ {
+ \__moremath_maybe_vcenter:n
+ {
+ \boldsymbol
+ \l__moremath_laplacian_symb_tl
+ }
+ }{
+ \l__moremath_laplacian_symb_tl
+ }
+ }
+ }
+ }\nolimits
+ \bool_if:NF \l__moremath_laplacian_delta_bool
+ {
+ \c_math_superscript_token
+ {
+ 2
+ }
+ }
+ }{
+ \l__moremath_laplacian_tl
+ }
+}
+\cs_new_protected:Nn \__moremath_dalembert_operator_get:
+{
+ \__moremath_tex_mathop:n
+ {
+ \l__moremath_dalembert_symb_tl
+ }% \__moremath_tex_mathop:n
+ \nolimits
+}
+\cs_new_protected_nopar:Nn \moremath_gradient_operator:n
+{
+ \__moremath_gradient_operator_get:
+ \tl_if_empty:nF {#1} {\c_math_subscript_token {#1}}
+}
+\cs_new_protected_nopar:Nn \moremath_laplace_operator:n
+{
+ \__moremath_laplace_operator_get:
+ \tl_if_empty:nF {#1} {\c_math_subscript_token {#1}}
+}
+\cs_new_protected_nopar:Nn \moremath_divergence_operator:n
+{
+ {
+ \moremath_gradient_operator:n {#1}
+ }
+ \cdot
+}
+
+\cs_new_protected_nopar:Nn \moremath_curl_operator:n
+{
+ {
+ \moremath_gradient_operator:n {#1}
+ }
+ \times
+}
+\cs_new_protected:Nn \moremath_dalembert_operator:n
+{
+ \__moremath_dalembert_operator_get:
+ \tl_if_empty:nF {#1}
+ {
+ \c_math_subscript_token {#1}
+ }
+}
+\cs_new_protected_nopar:Nn \moremath_delim_nabla_op_noscale:NNnn
+{
+ #1 {#3} #2{#4}
+}
+\cs_new_protected_nopar:Nn \moremath_delim_nabla_op_autoscale:NNnn
+{
+ #1 {#3} #2 * {#4}
+}
+\cs_new_protected_nopar:Nn \moremath_delim_nabla_op_manuscale:NNnnn
+{
+ #1 {#4} #2 [#3] {#5}
+}
+\cs_generate_variant:Nn \moremath_delim_nabla_op_manuscale:NNnnn {NNVnn}
+\cs_new_protected:Nn \__moremath_parse_kv_args:nN
+{
+ \prop_set_from_keyval:Nn \l_tmpa_prop {#1}
+
+ \prop_pop:NnNT \l_tmpa_prop {scale} #2 {}
+
+ \keys_set:ne {moremath} {\prop_to_keyval:N \l_tmpa_prop}
+}
+\msg_new:nnn { moremath } { vector-calc / scale-star-conflict }
+{
+ Both~star~and~scaling~factor~given~to~'#1'.\\
+ Automatic~scaling~will~be~preferred,~the~size~command~'#2'~will~be~
+ ignored~\msg_line_context:.
+}
+\cs_new_protected:Nn \__moremath_new_delim_nabla_doc_cmd:NNN
+{
+ \cs_if_free:NTF #1
+ {
+ \exp_args:NNe \NewDocumentCommand #1
+ {
+ s ={scale} o E{ \char_generate:nn {`_}{8} }{ {} } m
+ }
+ { % command code
+ \group_begin:
+ % optional arguments given?
+ \tl_if_novalue:nF {##2}
+ {
+ \__moremath_parse_kv_args:nN {##2} \l_tmpa_tl
+ }
+ % star given?
+ \bool_if:nTF {##1}
+ {
+ % scale factor given?
+ \tl_if_empty:NF \l_tmpa_tl
+ {
+ \msg_warning:nnnV { moremath } { vector-calc / scale-star-conflict }
+ {#1} \l_tmpa_tl
+ }
+ \moremath_delim_nabla_op_autoscale:NNnn #2 #3 {##3} {##4}
+ }{ % \bool_if:nTF {##1} FALSE BRANCH
+ % scale factor given?
+ \tl_if_empty:NTF \l_tmpa_tl
+ {
+ \moremath_delim_nabla_op_noscale:NNnn #2 #3 {##3} {##4}
+ }{ % FALSE BRANCH
+ \moremath_delim_nabla_op_manuscale:NNVnn #2 #3 \l_tmpa_tl {##3} {##4}
+ }
+ } % \bool_if:nTF {##1}
+ \group_end:
+ }
+ }{ % \cs_if_free:NTF #1 FALSE BRANCH
+ \msg_warning:nnn { moremath } { vector-calc / already-defined-skip } {#1}
+ } % \cs_if_free:NTF #1
+}
+\cs_generate_variant:Nn \__moremath_new_delim_nabla_doc_cmd:NNN {cNN}
+\cs_new_protected:Nn \__moremath_new_nabla_doc_cmds:nN
+{
+ \__moremath_new_delim_nabla_doc_cmd:cNN { p #1 } #2 \__moremath_inparent:w
+ \__moremath_new_delim_nabla_doc_cmd:cNN { b #1 } #2 \__moremath_inbrack:w
+ \__moremath_new_delim_nabla_doc_cmd:cNN { B #1 } #2 \__moremath_inbrace:w
+ \__moremath_new_delim_nabla_doc_cmd:cNN { v #1 } #2 \__moremath_in_vert:w
+ \__moremath_new_delim_nabla_doc_cmd:cNN { V #1 } #2 \__moremath_in_Vert:w
+}
+\bool_if:NTF \l__moremath_predef_vector_op_bool
+{
+\msg_new:nnn { moremath } { vector-calc / already-defined-skip }
+{
+ Control~sequence~'#1'~is~already~defined.\\
+ Skipping~definition~\msg_line_context:.
+}
+\cs_if_free:NTF \grad
+{
+ \exp_args:NNe \NewDocumentCommand \grad { !o E{ \char_generate:nn {`_}{8} }{{}} }
+ {
+ \group_begin:
+ \tl_if_novalue:nF {#1}
+ {
+ \keys_set:nn {moremath} {#1}
+ }
+ \moremath_gradient_operator:n {#2}
+ \group_end:
+ }
+}{
+ \msg_warning:nnn {moremath} { vector-calc / already-defined-skip } {\grad}
+}
+
+\cs_if_free:NTF \divergence
+{
+ \exp_args:NNe \NewDocumentCommand \divergence
+ { !o E{ \char_generate:nn {`_} {8} }{{}} }
+ {
+ \group_begin:
+ \tl_if_novalue:nF {#1}
+ {
+ \keys_set:nn {moremath} {#1}
+ }
+ \moremath_divergence_operator:n {#2}
+ \group_end:
+ }
+}{
+ \msg_warning:nnn {moremath} { vector-calc / already-defined-skip } {\divergence}
+}
+
+\cs_if_free:NTF \curl
+{
+ \exp_args:NNe \NewDocumentCommand \curl
+ { !o E{ \char_generate:nn {`_}{8} }{{}} }
+ {
+ \group_begin:
+ \tl_if_novalue:nF {#1}
+ {
+ \keys_set:nn {moremath} {#1}
+ }
+ \moremath_curl_operator:n {#2}
+ \group_end:
+ }
+}{
+ \msg_warning:nnn {moremath} {vector-calc / already-defined-skip} {\curl}
+}
+
+\cs_if_free:NTF \laplacian
+{
+ \exp_args:NNe \NewDocumentCommand \laplacian
+ { !o E{ \char_generate:nn {`_}{8} }{{}} }
+ {
+ \group_begin:
+ \tl_if_novalue:nF {#1}
+ {
+ \keys_set:nn {moremath} {#1}
+ }
+ \moremath_laplace_operator:n {#2}
+ \group_end:
+ }
+}{
+ \msg_warning:nnn {moremath} { vector-calc / already-defined-skip }
+ {\laplacian}
+}
+\cs_if_free:NTF \quabla
+{
+ \exp_args:NNe \NewDocumentCommand \quabla
+ { !o E{ \char_generate:nn {`_} { 8 } }{{}} }
+ {
+ \group_begin:
+ \tl_if_novalue:nF {#1}
+ {
+ \keys_set:nn { moremath } {#1}
+ }
+ \moremath_dalembert_operator:n {#2}
+ \group_end:
+ }
+}{ % \cs_if_free:NTF \quabla FALSE BRANCH
+ \msg_warning:nnn { moremath } { vector-calc / already-defined-skip }
+ {\quabla}
+}
+\__moremath_new_nabla_doc_cmds:nN {grad} \moremath_gradient_operator:n
+\__moremath_new_nabla_doc_cmds:nN {div} \moremath_divergence_operator:n
+\__moremath_new_nabla_doc_cmds:nN {curl} \moremath_curl_operator:n
+\__moremath_new_nabla_doc_cmds:nN {laplacian} \moremath_laplace_operator:n
+\__moremath_new_nabla_doc_cmds:nN {quabla} \moremath_dalembert_operator:n
+}{ % IF NOT \l__moremath_predef_vector_op_bool
+ \msg_info:nnnn {moremath} { load /disabling } {no-vector}
+ {
+ predefined~vector~calculus~macros
+ }
+} % END \l__moremath_predef_vector_op_bool
+\seq_new:N \l__moremath_vector_entries_seq
+\cs_new_protected_nopar:Nn \__moremath_seq_to_column_vector:N
+{
+ \seq_use:Nn #1 {\\}
+}
+\cs_new_protected_nopar:Nn \__moremath_seq_to_row_vector:N
+{
+ \seq_use:Nn #1 {&}
+}
+\cs_new_protected_nopar:Nn \moremath_column_vector:nn
+{
+ \seq_clear:N \l__moremath_vector_entries_seq
+ \seq_set_from_clist:Nn \l__moremath_vector_entries_seq {#2}
+
+ \__moremath_matrix_star_begin:nV {#1} \l__moremath_matrix_align_tl
+ \__moremath_seq_to_column_vector:N \l__moremath_vector_entries_seq
+ \__moremath_matrix_star_end:n {#1}
+}
+\cs_new_protected_nopar:Nn \moremath_row_vector:nn
+{
+ \seq_clear:N \l__moremath_vector_entries_seq
+ \seq_set_from_clist:Nn \l__moremath_vector_entries_seq {#2}
+
+ \__moremath_matrix_star_begin:nV {#1} \l__moremath_matrix_align_tl
+ \__moremath_seq_to_row_vector:N \l__moremath_vector_entries_seq
+ \__moremath_matrix_star_end:n {#1}
+}
+\cs_generate_variant:Nn \moremath_column_vector:nn { Vn }
+\cs_generate_variant:Nn \moremath_row_vector:nn { Vn }
+\cs_new_protected_nopar:Nn \moremath_column_smallvector:nn
+{
+ \moremath_column_vector:nn {#1 small} {#2}
+}
+
+\cs_new_protected_nopar:Nn \moremath_row_smallvector:nn
+{
+ \moremath_row_vector:nn {#1 small} {#2}
+}
+\cs_generate_variant:Nn \moremath_column_smallvector:nn { Vn }
+\cs_generate_variant:Nn \moremath_row_smallvector:nn { Vn }
+\seq_clear_new:N \l__moremath_mat_diag_entries_seq
+\seq_clear_new:N \l__moremath_mat_row_entries_seq
+\cs_new_protected:Nn \__moremath_constr_diagmat_row:n
+{
+ \seq_clear:N \l__moremath_mat_row_entries_seq
+ \int_step_inline:nn {\seq_count:N \l__moremath_mat_diag_entries_seq}
+ {
+ \int_compare:nTF { #1 == ##1 }
+ {
+ \seq_put_right:Nx \l__moremath_mat_row_entries_seq
+ {
+ \seq_item:Nn \l__moremath_mat_diag_entries_seq { #1 }
+ }
+ }{ % false branch
+ \seq_put_right:NV \l__moremath_mat_row_entries_seq \l__moremath_matrix_fill_tl
+ } % \int_compare:nTF { #1 == ##1 }
+ }
+ \seq_use:Nn \l__moremath_mat_row_entries_seq { & } \\
+}
+
+\cs_new_protected:Nn \__moremath_constr_antidiagmat_row:n
+{
+ \seq_clear:N \l__moremath_mat_row_entries_seq
+ \int_step_inline:nn {\seq_count:N \l__moremath_mat_diag_entries_seq}
+ {
+ \int_compare:nTF { #1 == ##1 }
+ {
+ % as this is a anti diagonal matrix we put in the elements from the
+ % left so that the first entry is the right most entry
+ \seq_put_left:Nx \l__moremath_mat_row_entries_seq
+ {
+ \seq_item:Nn \l__moremath_mat_diag_entries_seq { #1 }
+ }
+ }{ % false branch
+ \seq_put_left:NV \l__moremath_mat_row_entries_seq \l__moremath_matrix_fill_tl
+ } % \int_compare:nTF { #1 == ##1 }
+ }
+ \seq_use:Nn \l__moremath_mat_row_entries_seq { & } \\
+}
+\cs_new_protected:Nn \moremath_diagonal_matrix:nn
+{
+ \seq_set_from_clist:Nn \l__moremath_mat_diag_entries_seq { #2 }
+ \__moremath_matrix_star_begin:nV { #1 } \l__moremath_matrix_align_tl
+ \int_step_function:nN { \seq_count:N \l__moremath_mat_diag_entries_seq }
+ \__moremath_constr_diagmat_row:n
+ \__moremath_matrix_star_end:n { #1 }
+}
+\cs_new_protected:Nn \moremath_antidiagonal_matrix:nn
+{
+ \seq_set_from_clist:Nn \l__moremath_mat_diag_entries_seq { #2 }
+ \__moremath_matrix_star_begin:nV { #1 } \l__moremath_matrix_align_tl
+ \int_step_function:nN { \seq_count:N \l__moremath_mat_diag_entries_seq }
+ \__moremath_constr_antidiagmat_row:n
+ \__moremath_matrix_star_end:n { #1 }
+}
+
+\cs_new_protected:Nn \moremath_diagonal_smallmatrix:nn
+{
+ \moremath_diagonal_matrix:nn {#1 small} {#2}
+}
+
+\cs_new_protected:Nn \moremath_antidiagonal_smallmatrix:nn
+{
+ \moremath_antidiagonal_matrix:nn {#1 small} {#2}
+}
+\cs_generate_variant:Nn \moremath_diagonal_matrix:nn { nV, Vn, VV }
+\cs_generate_variant:Nn \moremath_antidiagonal_matrix:nn { nV, Vn, VV }
+\cs_generate_variant:Nn \moremath_diagonal_smallmatrix:nn { nV, Vn, VV}
+\cs_generate_variant:Nn \moremath_antidiagonal_smallmatrix:nn { nV, Vn, VV }
+\cs_new_protected_nopar:Nn \__moremath_generate_one_filled_clist:Nn
+{
+ \seq_clear:N \l_tmpa_seq
+ \int_step_inline:nn {#2}
+ {
+ \seq_put_right:NV \l_tmpa_seq \c_one_int
+ }
+ \clist_set_from_seq:NN #1 \l_tmpa_seq
+}
+\cs_generate_variant:Nn \__moremath_generate_one_filled_clist:Nn { N V }
+\clist_new:N \l__moremath_id_entries_clist
+\cs_new_protected_nopar:Nn \moremath_id_matrix:n
+{
+ \clist_clear:N \l__moremath_id_entries_clist
+ \__moremath_generate_one_filled_clist:Nn \l__moremath_id_entries_clist {#1}
+ \moremath_diagonal_matrix:VV \l__moremath_matrix_delim_tl \l__moremath_id_entries_clist
+}
+\cs_new_protected_nopar:Nn \moremath_id_smallmatrix:n
+{
+ \clist_clear:N \l__moremath_id_entries_clist
+ \__moremath_generate_one_filled_clist:Nn \l__moremath_id_entries_clist {#1}
+ \moremath_diagonal_smallmatrix:VV \l__moremath_matrix_delim_tl \l__moremath_id_entries_clist
+}
+\cs_generate_variant:Nn \moremath_id_matrix:n { V }
+\cs_generate_variant:Nn \moremath_id_smallmatrix:n { V }
+\msg_new:nnnn { moremath } { matrix / already-defined-doc-cmd-skip }
+{
+ Control~sequence~'#1'~is~already~defined.\\
+ Skipping~definition~\msg_line_context:.
+}
+{
+ The~control~sequence~'#1'~has~already\\
+ been~defined~by~some~other~package.\\
+ And~I~am~refusing~to~overwrite~the~existing~definition,\\
+ therefore~I~am~skipping~the~definition~of~this~command.
+}
+\bool_if:nTF \l__moremath_predef_crvector_bool
+{
+\cs_if_free:NTF \cvector
+{
+ \NewDocumentCommand \cvector { o m }
+ {
+ \group_begin:
+ \tl_if_novalue:nF {#1}
+ {
+ \keys_set:nn { moremath / matrix } {#1}
+ }
+ \moremath_column_vector:Vn \l__moremath_matrix_delim_tl {#2}
+ \group_end:
+ }
+}{
+ % issue a warning message if the csname is already taken.
+ \msg_warning:nnn { moremath } { matrix / already-defined-doc-cmd-skip }
+ {
+ \cvector
+ }
+} % \cs_if_free:NTF \cvector
+\cs_if_free:NTF \rvector
+{
+ \NewDocumentCommand \rvector { o m }
+ {
+ \group_begin:
+ \tl_if_novalue:nF {#1}
+ {
+ \keys_set:nn { moremath / matrix } {#1}
+ }
+ \moremath_row_vector:Vn \l__moremath_matrix_delim_tl {#2}
+ \group_end:
+ }
+}{
+ % warn if csname is already taken
+ \msg_warning:nnn { moremath } { matrix / already-defined-doc-cmd-skip}
+ {
+ \rvector
+ }
+} % \cs_if_free:NTF \rvector
+\cs_if_free:NTF \smallcvector
+{
+ \NewDocumentCommand \smallcvector { o m }
+ {
+ \group_begin:
+ \tl_if_novalue:nF {#1}
+ {
+ \keys_set:nn {moremath / matrix} {#1}
+ }
+ \moremath_column_smallvector:Vn \l__moremath_matrix_delim_tl {#2}
+ \group_end:
+ }
+}{
+ % Issue a warning message if the csname is already taken
+ \msg_warning:nnn { moremath } { matrix / already-defined-doc-cmd-skip }
+ {
+ \smallcvector
+ }
+} % \cs_if_free:NTF \smallcvector
+
+\cs_if_free:NTF \smallrvector
+{
+ \NewDocumentCommand \smallrvector { o m }
+ {
+ \group_begin:
+ \tl_if_novalue:nF {#1}
+ {
+ \keys_set:nn { moremath / matrix } {#1}
+ }
+ \moremath_row_smallvector:Vn \l__moremath_matrix_delim_tl {#2}
+ \group_end:
+ }
+}{
+ % warn if csname is taken
+ \msg_warning:nnn { moremath } { matrix / already-defined-doc-cmd-skip }
+ {
+ \smallrvector
+ }
+}
+\cs_new_protected:Nn \__moremath_new_vector_shorth_doc_cmd:NNn
+{
+ \cs_if_free:NTF #1
+ {
+ \NewDocumentCommand #1 { o m }
+ {
+ \group_begin:
+ % set the delimiter key pre-set for this function
+ \keys_set:nn {moremath / matrix } {delimiter = #3}
+ \tl_if_novalue:nF {##1}
+ {
+ \keys_set:nn {moremath / matrix } {##1}
+ }
+ #2 \l__moremath_matrix_delim_tl {##2}
+ \group_end:
+ }
+ }{
+ % warn if csname is taken
+ \msg_warning:nnn { moremath } { matrix / already-defined-doc-cmd-skip }
+ {
+ #1
+ }
+ }
+}
+\__moremath_new_vector_shorth_doc_cmd:NNn \pcvector \moremath_column_vector:Vn {p}
+\__moremath_new_vector_shorth_doc_cmd:NNn \bcvector \moremath_column_vector:Vn {b}
+\__moremath_new_vector_shorth_doc_cmd:NNn \Bcvector \moremath_column_vector:Vn {B}
+\__moremath_new_vector_shorth_doc_cmd:NNn \vcvector \moremath_column_vector:Vn {v}
+\__moremath_new_vector_shorth_doc_cmd:NNn \Vcvector \moremath_column_vector:Vn {V}
+\__moremath_new_vector_shorth_doc_cmd:NNn \prvector \moremath_row_vector:Vn {p}
+\__moremath_new_vector_shorth_doc_cmd:NNn \brvector \moremath_row_vector:Vn {b}
+\__moremath_new_vector_shorth_doc_cmd:NNn \Brvector \moremath_row_vector:Vn {B}
+\__moremath_new_vector_shorth_doc_cmd:NNn \vrvector \moremath_row_vector:Vn {v}
+\__moremath_new_vector_shorth_doc_cmd:NNn \Vrvector \moremath_row_vector:Vn {V}
+\__moremath_new_vector_shorth_doc_cmd:NNn \psmallcvector \moremath_column_smallvector:Vn
+ {p}
+\__moremath_new_vector_shorth_doc_cmd:NNn \bsmallcvector \moremath_column_smallvector:Vn
+ {b}
+\__moremath_new_vector_shorth_doc_cmd:NNn \Bsmallcvector \moremath_column_smallvector:Vn
+ {B}
+\__moremath_new_vector_shorth_doc_cmd:NNn \vsmallcvector \moremath_column_smallvector:Vn
+ {v}
+\__moremath_new_vector_shorth_doc_cmd:NNn \Vsmallcvector \moremath_column_smallvector:Vn
+ {V}
+\__moremath_new_vector_shorth_doc_cmd:NNn \psmallrvector \moremath_row_smallvector:Vn {p}
+\__moremath_new_vector_shorth_doc_cmd:NNn \bsmallrvector \moremath_row_smallvector:Vn {b}
+\__moremath_new_vector_shorth_doc_cmd:NNn \Bsmallrvector \moremath_row_smallvector:Vn {B}
+\__moremath_new_vector_shorth_doc_cmd:NNn \vsmallrvector \moremath_row_smallvector:Vn {v}
+\__moremath_new_vector_shorth_doc_cmd:NNn \Vsmallrvector \moremath_row_smallvector:Vn {V}
+
+}{ % \bool_if:nTF \l__moremath_predef_crvector_bool FALSE PATH
+ \msg_info:nnnn {moremath} {load / disabling} {no-crvector}
+ {
+ commands~producing~row~and~column~vectors
+ }
+} % \bool_if:nTF \l__moremath_predef_crvector_bool
+\bool_if:nTF \l__moremath_predef_matrix_bool
+{
+\cs_if_free:NTF \diagmat
+{
+ \NewDocumentCommand \diagmat { o m }
+ {
+ \group_begin:
+ \tl_if_novalue:nF {#1}
+ {
+ \keys_set:nn { moremath / matrix } {#1}
+ }
+ \moremath_diagonal_matrix:Vn \l__moremath_matrix_delim_tl {#2}
+ \group_end:
+ }
+}{
+ \msg_warning:nnn {moremath} {matrix / already-defined-doc-cmd-skip}
+ {
+ \diagmat
+ }
+} % \cs_if_free:nTF \diagmat
+
+\cs_if_free:NTF \antidiagmat
+{
+ \NewDocumentCommand \antidiagmat { o m }
+ {
+ \group_begin:
+ \tl_if_novalue:nF {#1}
+ {
+ \keys_set:nn { moremath / matrix } {#1}
+ }
+ \moremath_antidiagonal_matrix:Vn \l__moremath_matrix_delim_tl {#2}
+ \group_end:
+ }
+}{
+ \msg_warning:nnn { moremath } { matrix / already-defined-doc-cmd-skip }
+ {
+ \antidiagmat
+ }
+} % \cs_if_free:nTF \antidiagmat
+
+\cs_if_free:NTF \smalldiagmat
+{
+ \NewDocumentCommand \smalldiagmat { o m }
+ {
+ \group_begin:
+ \tl_if_novalue:nF {#1}
+ {
+ \keys_set:nn { moremath / matrix } {#1}
+ }
+ \moremath_diagonal_smallmatrix:Vn \l__moremath_matrix_delim_tl {#2}
+ \group_end:
+ }
+}{
+ \msg_warning:nnn { moremath } { matrix / already-defined-doc-cmd-skip }
+ {
+ \smalldiagmat
+ }
+}
+
+\cs_if_free:NTF \smallantidiagmat
+{
+ \NewDocumentCommand \smallantidiagmat { o m }
+ {
+ \group_begin:
+ \tl_if_novalue:nF {#1}
+ {
+ \keys_set:nn { moremath / matrix } {#1}
+ }
+ \moremath_antidiagonal_smallmatrix:Vn \l__moremath_matrix_delim_tl {#2}
+ \group_end:
+ }
+}{
+ \msg_warning:nnn { moremath } { matrix / already-defined-doc-cmd-skip }
+ {
+ \smallantidiagmat
+ }
+}
+\cs_new_protected:Nn \__moremath_new_matrix_shorth_doc_cmd:NNn
+{
+ \cs_if_free:NTF #1
+ {
+ \NewDocumentCommand #1 { o m }
+ {
+ \group_begin:
+ \tl_if_empty:nF {#3}
+ {
+ \keys_set:nn { moremath / matrix }
+ {
+ delimiter = #3
+ }
+ } % \tl_if_empty:nF {#3}
+ \tl_if_novalue:nF {##1}
+ {
+ \keys_set:nn { moremath / matrix } {##1}
+ }
+ #2 \l__moremath_matrix_delim_tl {##2}
+ \group_end:
+ }
+ }{
+ \msg_warning:nnn { moremath } { matrix / already-defined-doc-cmd-skip }
+ {
+ #1
+ }
+ }
+}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \pdiagmat \moremath_diagonal_matrix:Vn {p}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \bdiagmat \moremath_diagonal_matrix:Vn {b}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \Bdiagmat \moremath_diagonal_matrix:Vn {B}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \vdiagmat \moremath_diagonal_matrix:Vn {v}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \Vdiagmat \moremath_diagonal_matrix:Vn {V}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \pantidiagmat
+ \moremath_antidiagonal_matrix:Vn {p}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \bantidiagmat
+ \moremath_antidiagonal_matrix:Vn {b}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \Bantidiagmat
+ \moremath_antidiagonal_matrix:Vn {B}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \vantidiagmat
+ \moremath_antidiagonal_matrix:Vn {v}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \Vantidiagmat
+ \moremath_antidiagonal_matrix:Vn {V}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \psmalldiagmat
+ \moremath_diagonal_smallmatrix:Vn {p}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \bsmalldiagmat
+ \moremath_diagonal_smallmatrix:Vn {b}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \Bsmalldiagmat
+ \moremath_diagonal_smallmatrix:Vn {B}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \vsmalldiagmat
+ \moremath_diagonal_smallmatrix:Vn {v}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \Vsmalldiagmat
+ \moremath_diagonal_smallmatrix:Vn {V}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \psmallantidiagmat
+ \moremath_antidiagonal_smallmatrix:Vn {p}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \bsmallantidiagmat
+ \moremath_antidiagonal_smallmatrix:Vn {b}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \Bsmallantidiagmat
+ \moremath_antidiagonal_smallmatrix:Vn {B}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \vsmallantidiagmat
+ \moremath_antidiagonal_smallmatrix:Vn {v}
+\__moremath_new_matrix_shorth_doc_cmd:NNn \Vsmallantidiagmat
+ \moremath_antidiagonal_smallmatrix:Vn {V}
+\cs_if_free:NTF \idmat
+{
+ \NewDocumentCommand \idmat { o m }
+ {
+ \group_begin:
+ \tl_if_novalue:nF {#1}
+ {
+ \keys_set:nn { moremath / matrix } {#1}
+ }
+ \moremath_id_matrix:n {#2}
+ \group_end:
+ }
+}{ % \cs_if_free:NTF \idmat FALSE BRANCH
+ \msg_warning:nnn { moremath } { matrix / already-defined-doc-cmd-skip }
+ {\idmat}
+}
+\cs_if_free:NTF \smallidmat
+{
+ \NewDocumentCommand \smallidmat { o m }
+ {
+ \group_begin:
+ \tl_if_novalue:nF {#1}
+ {
+ \keys_set:nn { moremath / matrix } {#1}
+ }
+ \moremath_id_smallmatrix:n {#2}
+ \group_end:
+ }
+}{ % \cs_if_free:NTF \smallidmat FALSE BRANCH
+ \msg_warning:nnn { moremath } { matrix / already-defined-doc-cmd-skip }
+ {\smallidmat}
+}
+\cs_new_protected:Nn \__moremath_new_id_matrix_doc_cmd:NNn
+{
+ \cs_if_free:NTF #1
+ {
+ \NewDocumentCommand #1 { o m }
+ {
+ \group_begin:
+ \tl_if_empty:nF {#3}
+ {
+ \keys_set:nn { moremath / matrix } {#3}
+ }
+ \tl_if_novalue:nF {##1}
+ {
+ \keys_set:nn { moremath / matrix } {##1}
+ }
+ #2 {##2}
+ \group_end:
+ }
+ }{ % \cs_if_free:NTF #1 FALSE BRANCH
+ \msg_warning:nnn { moremath } { matrix / already-defined-doc-cmd-skip }
+ {#1}
+ }
+}
+\__moremath_new_id_matrix_doc_cmd:NNn \pidmat \moremath_id_matrix:n { delimiter = p }
+\__moremath_new_id_matrix_doc_cmd:NNn \bidmat \moremath_id_matrix:n { delimiter = b }
+\__moremath_new_id_matrix_doc_cmd:NNn \Bidmat \moremath_id_matrix:n { delimiter = B }
+\__moremath_new_id_matrix_doc_cmd:NNn \vidmat \moremath_id_matrix:n { delimiter = v }
+\__moremath_new_id_matrix_doc_cmd:NNn \Vidmat \moremath_id_matrix:n { delimiter = V }
+\__moremath_new_id_matrix_doc_cmd:NNn \psmallidmat \moremath_id_smallmatrix:n
+ { delimiter = p }
+\__moremath_new_id_matrix_doc_cmd:NNn \bsmallidmat \moremath_id_smallmatrix:n
+ { delimiter = b }
+\__moremath_new_id_matrix_doc_cmd:NNn \Bsmallidmat \moremath_id_smallmatrix:n
+ { delimiter = B }
+\__moremath_new_id_matrix_doc_cmd:NNn \vsmallidmat \moremath_id_smallmatrix:n
+ { delimiter = v }
+\__moremath_new_id_matrix_doc_cmd:NNn \Vsmallidmat \moremath_id_smallmatrix:n
+ { delimiter = V }
+}{ % \bool_if:nTF \l__moremath_predef_matrix_bool FALSE BRANCH
+ \msg_info:nnnn {moremath} { load / disabling } { no-matrix }
+ {
+ (anti-)diagonal~matrix~commands
+ }
+} % \bool_if:nTF \l__moremath_predef_matrix_bool
+\msg_new:nnnn { moremath } { abs-shorth / csname-already-defined-skip }
+{
+ Control~sequence~'#1'~is~already~defined.\\
+ Skipping~declaration~of~paired~delimiter~\msg_line_context:.\\
+ Use~package~option~'no-abs-shorthands'~to~disable~the~paired\\
+ delimiter~shorthands.
+}{
+ The~control~sequence~'#1'~has~already~been\\
+ defined~by~something~else.\\
+ I~am~refusing~to~overwrite~its~existing~definition~and~instead~avoid\\
+ declaring~a~paired~delimiter.\\
+}
+\bool_if:NTF \l__moremath_predef_abs_bool
+{
+\cs_if_free:NTF \abs
+{
+ \DeclarePairedDelimiter \abs {\lvert} {\rvert}
+}{
+ % warn if the csname is taken
+ \msg_warning:nnn { moremath } { abs-shorth / csname-already-defined-skip }
+ {\abs}
+} % \cs_if_free:NTF \abs
+
+\cs_if_free:NTF \norm
+{
+ \DeclarePairedDelimiter \norm {\lVert} {\rVert}
+}{
+ % warn if csname is already taken
+ \msg_warning:nnn { moremath } { abs-shorth / csname-already-defined-skip }
+ {\norm}
+} % \cs_if_free:NTF
+}{
+ \msg_info:nnnn {moremath} {load / disabling} {no-abs-shorthands}
+ {
+ '\abs'~and~'\norm'~macros
+ }
+} % End of the conditional
+\endinput
+%%
+%% End of file `moremath.sty'.
diff --git a/Master/texmf-dist/tex/latex/msu-thesis/msu-thesis.cls b/Master/texmf-dist/tex/latex/msu-thesis/msu-thesis.cls
index 7f5955ab4a1..538a98da064 100644
--- a/Master/texmf-dist/tex/latex/msu-thesis/msu-thesis.cls
+++ b/Master/texmf-dist/tex/latex/msu-thesis/msu-thesis.cls
@@ -194,10 +194,11 @@
% Version 4.2 2024/02/18 Changed spacing for sections to address complaints about adjacent sectioning commands
% Version 4.2b 2024/05/16 Added version check for l3kernel.
% Version 4.3 2024/06/07 Fixed bug with TOCs when calc package was loaded; added \msuappendixdelim
+% Version 4.3b 2024/07/08 Fixed spurious page break with biblatex per chapter bibliographies
% Report bugs/problems/questions to <amunn@msu.edu>
%
-\def\msu@version{4.3}
-\def\msu@date{2024/06/07}
+\def\msu@version{4.3b}
+\def\msu@date{2024/07/08}
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{msu-thesis}[\msu@date\space Michigan State University Thesis Class version \msu@version]
\@ifundefined{ExplLoaderFileDate}
@@ -837,9 +838,10 @@ chapterapp.code = {
% This code probably needs to be revisited since it’s a unholy amalgam of old and new code
% Removed clearpage from the document level code in response to issue #26.
% Problem seems to only arise with biblatex so more testing is needed
+% Added test for natbib here 7/8/2024 because biblatex produces extra page
\newcommand\msu@addbibheadtotoc{%
\ifmsu@chapterbib
- \clearpage\phantomsection\addcontentsline{toc}{\msu@bibsection}{\bibtocname}
+ \@ifpackageloaded{natbib}{\clearpage}{}\phantomsection\addcontentsline{toc}{\msu@bibsection}{\bibtocname}
\else
\phantomsection\addcontentsline{toc}{chapter}{\bibtocname}
\fi
diff --git a/Master/texmf-dist/tex/latex/naive-ebnf/naive-ebnf.sty b/Master/texmf-dist/tex/latex/naive-ebnf/naive-ebnf.sty
index 5fd527fbf3a..b89baa7f1fb 100644
--- a/Master/texmf-dist/tex/latex/naive-ebnf/naive-ebnf.sty
+++ b/Master/texmf-dist/tex/latex/naive-ebnf/naive-ebnf.sty
@@ -31,7 +31,8 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{naive-ebnf}
-[2023-08-11 0.0.15 EBNF in Plain Text]
+[2024/09/06 0.0.16 EBNF in Plain Text]
+
@@ -138,6 +139,8 @@
{ >([^\s]) } {\\textgreater{}\1} \ebnf_tmp%
\regex_replace_all:nnN
{ ([^\s])'([^\s]) } {\1\\textquotesingle{}\2} \ebnf_tmp%
+ \regex_replace_all:nnN { \|\|\| }%
+ {\c{makebox}[#1][r]{ }} \ebnf_tmp%
\regex_replace_all:nnN
{ ([^\s])\|([^\s]) } {\1\\textbar{}\2} \ebnf_tmp%
%
diff --git a/Master/texmf-dist/tex/latex/newcomputermodern/newcomputermodern.sty b/Master/texmf-dist/tex/latex/newcomputermodern/newcomputermodern.sty
index 6318522d6ba..6edd20dc1b2 100644
--- a/Master/texmf-dist/tex/latex/newcomputermodern/newcomputermodern.sty
+++ b/Master/texmf-dist/tex/latex/newcomputermodern/newcomputermodern.sty
@@ -1,5 +1,5 @@
%\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{newcomputermodern}[v5.2.0 NewCM fonts by Antonis Tsolomitis]
+\ProvidesPackage{newcomputermodern}[v6.0.0 NewCM fonts by Antonis Tsolomitis]
\typeout{Loading NewCM fonts by Antonis Tsolomitis}
\RequirePackage{fontspec}
\RequirePackage{unicode-math}
diff --git a/Master/texmf-dist/tex/latex/newtx/newtx.sty b/Master/texmf-dist/tex/latex/newtx/newtx.sty
index 3c31a91788b..8d86b9aeaf4 100644
--- a/Master/texmf-dist/tex/latex/newtx/newtx.sty
+++ b/Master/texmf-dist/tex/latex/newtx/newtx.sty
@@ -1,6 +1,5 @@
\NeedsTeXFormat{LaTeX2e}
-
%Package to simplify loading of newtxmath with a text font family such as newtxtext for all latex engines, or for newtxtext and an otf math package.
\def\fileversion{1.751}
\def\filedate{2024/06/22}
@@ -298,6 +297,7 @@ propmathfigs,curlybraces,cochrho,cochf,alty,alth,liby,nochvw}
\or \def\tx@mathtotextfactor{.92} % 16, gel
\fi
+\def\tx@divide#1#2{\ntx@dima=\dimexpr 1pt * (\dimexpr #1 pt\relax) / \dimexpr #2pt\relax\relax}
%\show\ntx@Mopt
%\show\ntx@Topt
%\traceon
diff --git a/Master/texmf-dist/tex/latex/newtx/newtxmath.sty b/Master/texmf-dist/tex/latex/newtx/newtxmath.sty
index 020f9ff08cf..5fbcf14b08c 100644
--- a/Master/texmf-dist/tex/latex/newtx/newtxmath.sty
+++ b/Master/texmf-dist/tex/latex/newtx/newtxmath.sty
@@ -11,8 +11,8 @@
% of glyph collisions.
% These modifications are by Michael Sharpe, msharpe at ucsd dot edu
-\def\fileversion{1.75}
-\def\filedate{2024/06/18}
+\def\fileversion{1.754}
+\def\filedate{2024/09/22}
\ProvidesPackage{newtxmath}[\filedate\space v\fileversion ]
\@ifundefined{newtxmathLoaded}{}{\endinput}
@@ -390,7 +390,7 @@ amssymbols,uprightGreek,nosubscriptcorrection}
\fi
\fi
\fi
-
+\iftx@gel\edef\rmdefaultB{mingelasio}\fi
\iftx@minion\edef\rmdefaultB{MinionPro-TLF}\fi
\iftx@noto\edef\rmdefaultB{NotoSerif-TLF}\fi
\iftx@notosans\edef\rmdefaultB{NotoSans-TLF}\fi
@@ -3106,8 +3106,8 @@ $\hfil\displaystyle{#1}\hfil$\crcr%
\DeclareMathSizes{5} {5.5} {5.5} {5.5}
\DeclareMathSizes{6} {6.5} {5.5} {5.5}
\DeclareMathSizes{7} {7.3} {5.5} {5.5}
-\DeclareMathSizes{8} {8} {6.2} {5.5}
-\DeclareMathSizes{9} {9} {7.3} {5.5}
+\DeclareMathSizes{8} {8} {6} {5.5}
+\DeclareMathSizes{9} {9} {6.6} {5.5}
\DeclareMathSizes{10} {10} {7.3} {5.5}
\DeclareMathSizes{10.95}{10.95}{8} {6.1}
\DeclareMathSizes{11} {10.95}{8} {6.1}
diff --git a/Master/texmf-dist/tex/latex/nfssext-cfr/nfssext-cfr-nfss.sty b/Master/texmf-dist/tex/latex/nfssext-cfr/nfssext-cfr-nfss.sty
new file mode 100644
index 00000000000..7d72b81c902
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/nfssext-cfr/nfssext-cfr-nfss.sty
@@ -0,0 +1,554 @@
+%%
+%% This is file `nfssext-cfr-nfss.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% nfssext-cfr.dtx (with options: `sty-nfss')
+%% Additions and changes Copyright (C) 2008-2024 Clea F. Rees.
+%% Code from fontinstallationguide Copyright (C) 2002-2004 Philipp Lehman (see below)
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This work consists of all files listed in manifest.txt.
+%%
+%%
+%% The file nfssext-cfr-nfss.sty is a derived work under the terms of the LPPL.
+%% It is based on version 1.2 of nfssext.sty which is supplied with
+%% The Font Installation Guide by Philipp Lehman. A copy of The Font Installation Guide, including an
+%% unmodified version of nfssext.sty is available from
+%% https://tug.ctan.org/pkg/fontinstallationguide.
+%% nfssext.sty is part of the included archive figuide-examples.tar.gz
+%% which consists of examples and templates released under the LPPL.
+%% nfssext.sty is included in the files for tutorials 3, 5 and 6.
+%%
+%% The main modifications made to this file are described in nfssext-cfr.dtx.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\NeedsTeXFormat{LaTeX2e}
+\RequirePackage{svn-prov}
+\ProvidesPackageSVN[\filebase-nfss.sty]{$Id: nfssext-cfr.dtx 10366 2024-09-18 14:25:21Z cfrees $}[v1.0 \revinfo{} specially mangled by cfr; based on 2003/03/14 v1.2 Experimental NFSS Extensions; for old NFSS]
+\DefineFileInfoSVN
+\RequirePackage{ifthen}
+\newcommand*{\exfs@tempa}{}
+\newcommand*{\exfs@tempb}{}
+\newcommand*{\exfs@tempf}{}
+\newcommand*{\exfs@try@family}[2][]{%
+ \let\exfs@tempa\relax
+ \begingroup
+ \fontfamily{#2}\try@load@fontshape
+ \expandafter\ifx\csname\curr@fontshape\endcsname\relax
+ \edef\exfs@tempa{#1}%
+ \ifx\exfs@tempa\@empty
+ \PackageWarning{nfssext}{%
+ Font family '\f@encoding/#2' not available\MessageBreak
+ Ignoring font switch}%
+ \else
+ \PackageInfo{nfssext}{%
+ Font family '\f@encoding/#2' not available\MessageBreak
+ Font family '\f@encoding/#1' tried instead}%
+ \exfs@try@family{#1}%
+ \fi
+ \else
+ \gdef\exfs@tempa{\fontfamily{#2}\selectfont}%
+ \fi
+ \endgroup
+ \exfs@tempa}
+\newcommand*{\exfs@try@series}[2][]{%
+ \let\exfs@tempa\relax
+ \begingroup
+ \fontseries{#2}\try@load@fontshape
+ \expandafter\ifx\csname\curr@fontshape\endcsname\relax
+ \edef\exfs@tempa{#1}%
+ \ifx\exfs@tempa\@empty
+ \PackageWarning{nfssext-cfr}{%
+ Font series '\f@encoding/\f@family/#2' not available\MessageBreak
+ Ignoring font switch}%
+ \else
+ \PackageInfo{nfssext-cfr}{%
+ Font family '\f@encoding/\f@family/#2' not available\MessageBreak
+ Font family '\f@encoding/\f@family/#1' tried instead}%
+ \exfs@try@series{#1}%
+ \fi
+ \else
+ \gdef\exfs@tempa{\fontseries{#2}\selectfont}%
+ \fi
+ \endgroup
+ \exfs@tempa
+}
+\def\exfs@get@base#1#2#3#4\@nil{#1#2#3}
+\def\exfs@get@variants#1#2#3#4\@nil{#4}
+\def\exfs@next#1#2\@nil{#1}
+\def\exfs@shift#1#2\@nil{#2}
+\def\exfs@first#1#2\@nil{#1}
+\def\exfs@part#1#2\@nil{#2}
+\def\exfs@second#1#2#3\@nil{#2}
+\DeclareRobustCommand{\lnstyle}{%
+ \not@math@alphabet\lnstyle\relax
+ \exfs@try@family[\expandafter\exfs@get@base\f@family\@nil]%
+ {\expandafter\exfs@get@base\f@family\@nil x}%
+}
+\DeclareRobustCommand{\osstyle}{%
+ \not@math@alphabet\osstyle\relax
+ \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil j}}
+\DeclareRobustCommand{\instyle}{%
+ \not@math@alphabet\instyle\relax
+ \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil 0}}
+\DeclareRobustCommand{\sustyle}{%
+ \not@math@alphabet\sustyle\relax
+ \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil 1}}
+\DeclareRobustCommand{\swstyle}{%
+ \not@math@alphabet\swstyle\relax
+ \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil w}}
+\newcommand*\exfs@merge@families[1]{%
+ \edef\exfs@tempf{#1}%
+ \edef\tempa{\expandafter\exfs@get@variants\f@family\@nil}%
+ \edef\tempo{2j}%
+ \let\exfs@tempq\@empty
+ \def\exfs@tempg{}%
+ \newif\ifadded
+ \addedfalse
+ \ifx\tempa\@empty
+ \edef\exfs@tempq{\exfs@tempf}%
+ \addedtrue
+ \else
+ \gdef\set{0,1,2,a,d,e,f,h,j,l,p,q,s,t,v,w}% these are the variants to consider - the order here and in the font name is crucial
+ \ifx\tempo\exfs@tempf
+ \@for \xx:=\set \do {%
+ \ifx\tempa\@empty
+ \let\exfs@tempn\@empty
+ \else
+ \edef\exfs@tempn{\expandafter\exfs@next\tempa\@nil}%
+ \fi
+ \edef\tempt{2}%
+ \edef\tempj{j}%
+ \ifx\exfs@tempn\tempt
+ \edef\tempa{\expandafter\exfs@shift\tempa\@nil}%
+ \fi
+ \ifx\exfs@tempn\tempj % if the next variant is j, ignore it
+ \edef\tempa{\expandafter\exfs@shift\tempa\@nil}%
+ \fi
+ \ifx\tempt\xx
+ \edef\exfs@tempg{\exfs@tempg\xx}%
+ \else
+ \ifx\tempj\xx % if the current value is j, we're done
+ \edef\exfs@tempq{\exfs@tempg\xx\tempa}%
+ \let\tempa\@empty
+ \addedtrue
+ \else
+ \ifx\xx\exfs@tempn
+ \edef\exfs@tempg{\exfs@tempg\xx}%
+ \edef\tempa{\expandafter\exfs@shift\tempa\@nil}%
+ \fi
+ \fi
+ \fi
+ }%
+ \else
+ \@for \xx:=\set \do {%
+ \ifx\tempa\@empty
+ \ifadded
+ \else
+ \edef\exfs@tempq{\exfs@tempg\exfs@tempf}%
+ \addedtrue
+ \fi
+ \else
+ \edef\exfs@tempn{\expandafter\exfs@next\tempa\@nil}%
+ \ifx\exfs@tempn\exfs@tempf
+ \edef\exfs@tempq{\exfs@tempg\tempa}%
+ \addedtrue
+ \let\tempa\@empty
+ \else
+ \ifx\exfs@tempf\xx
+ \edef\exfs@tempq{\exfs@tempg\xx\tempa}%
+ \addedtrue
+ \let\tempa\@empty
+ \else
+ \ifx\exfs@tempn\xx
+ \edef\exfs@tempg{\exfs@tempg\xx}%
+ \edef\tempa{\expandafter\exfs@shift\tempa\@nil}%
+ \fi
+ \fi
+ \fi
+ \fi
+ }%
+ \fi
+ \fi
+ \ifx\exfs@tempq\@empty
+ \PackageError{nfssext-cfr}{Something is wrong here. Ignoring font switching command.}{}%
+ \else
+ \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil \exfs@tempq}%
+ \fi
+}
+\DeclareRobustCommand{\pstyle}{% proportional figures
+ \not@math@alphabet\pstyle\relax
+ \exfs@merge@families{2}}
+\DeclareRobustCommand{\tistyle}{% titling/display
+ \not@math@alphabet\tistyle\relax
+ \exfs@merge@families{d}}
+\DeclareRobustCommand{\ostyle}{% oldstyle figures (cf. original osstyle above)
+ \not@math@alphabet\ostyle\relax
+ \exfs@merge@families{j}}
+\DeclareRobustCommand{\postyle}{%
+ \not@math@alphabet\postyle\relax
+ \exfs@merge@families{2j}}
+\DeclareRobustCommand{\ltstyle}{%
+ \not@math@alphabet\ltstyle\relax
+ \exfs@merge@families{l}}
+\DeclareRobustCommand{\ofstyle}{%
+ \not@math@alphabet\ofstyle\relax
+ \exfs@merge@families{l}}
+\DeclareRobustCommand{\altstyle}{% alternative style
+ \not@math@alphabet\altstyle\relax
+ \exfs@merge@families{a}}
+\DeclareRobustCommand{\regstyle}{% ``regular'' style
+ \not@math@alphabet\regstyle\relax
+ \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil}}
+\DeclareRobustCommand{\embossstyle}{%
+ \not@math@alphabet\embossstyle\relax
+ \exfs@merge@families{e}}
+\DeclareRobustCommand{\ornamentalstyle}{% intended primarily for decorative initial fonts etc.
+ \not@math@alphabet\ornamentalstyle\relax
+ \exfs@merge@families{p}}
+\DeclareRobustCommand{\qtstyle}{% quotation style (assumes sans)
+ \not@math@alphabet\qtstyle\relax
+ \sffamily
+ \exfs@merge@families{q}}
+\DeclareRobustCommand{\shstyle}{%
+ \not@math@alphabet\shstyle\relax
+ \exfs@merge@families{h}}
+\DeclareRobustCommand{\swashstyle}{% an attempt to improve on \swstyle
+ \not@math@alphabet\swashstyle\relax
+ \exfs@merge@families{w}}
+\DeclareRobustCommand{\tmstyle}{% monowidth typewriter
+ \not@math@alphabet\tmstyle\relax
+ \exfs@unmerge@families{s}%
+ \exfs@unmerge@families{v}%
+ \exfs@merge@families{t}}
+\DeclareRobustCommand{\tvstyle}{% variable width typewriter
+ \not@math@alphabet\tvstyle\relax
+ \exfs@unmerge@families{s}%
+ \exfs@unmerge@families{t}%
+ \exfs@merge@families{v}}
+\newcounter{taken}%
+\newcommand*\exfs@unmerge@families[1]{%
+ \edef\exfs@tempf{#1}%
+ \edef\tempa{\expandafter\exfs@get@variants\f@family\@nil}%
+ \let\exfs@tempq\@empty
+ \edef\exfs@tempg{}%
+ \setcounter{taken}{0}%
+ \ifx\tempa\@empty
+ \edef\exfs@tempq{}%
+ \else
+ \whiledo{\value{taken}<1}{%
+ \edef\exfs@tempn{\expandafter\exfs@next\tempa\@nil}%
+ \ifx\exfs@tempf\exfs@tempn
+ \edef\tempa{\expandafter\exfs@shift\tempa\@nil}%
+ \edef\exfs@tempq{\exfs@tempg\tempa}%
+ \stepcounter{taken}%
+ \else
+ \edef\exfs@tempg{\exfs@tempg\exfs@tempn}%
+ \edef\tempa{\expandafter\exfs@shift\tempa\@nil}%
+ \ifx\tempa\@empty% if there are no variants left, we're done
+ \edef\exfs@tempq{\exfs@tempg}%
+ \stepcounter{taken}%
+ \fi
+ \fi
+ }%
+ \fi
+ \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil \exfs@tempq}%
+}
+\DeclareRobustCommand{\tstyle}{% tabular figures
+ \not@math@alphabet\tstyle\relax
+ \exfs@unmerge@families{2}}
+\DeclareRobustCommand{\lstyle}{% lining figures (cf. command above)
+ \not@math@alphabet\lstyle\relax
+ \exfs@unmerge@families{j}}
+\DeclareRobustCommand{\tlstyle}{%
+ \lstyle\tstyle}
+\DeclareRobustCommand{\plstyle}{%
+ \lstyle\pstyle}
+\DeclareRobustCommand{\tostyle}{%
+ \ostyle\tstyle}
+\newcommand*{\sidefault}{si}
+\DeclareRobustCommand{\sishape}{%
+ \not@math@alphabet\sishape\relax
+ \fontshape\sidefault\selectfont}
+\newcommand*{\oldefault}{ol}
+\DeclareRobustCommand{\olshape}{%
+ \not@math@alphabet\olshape\relax
+ \fontshape\oldefault\selectfont}
+\newcommand*{\scoldefault}{scol}
+\DeclareRobustCommand{\scolshape}{%
+ \not@math@alphabet\scolshape\relax
+ \fontshape\scoldefault\selectfont}
+\newcommand*{\udefault}{u}
+\DeclareRobustCommand{\ushape}{%
+ \not@math@alphabet\ushape\relax
+ \fontshape\udefault\selectfont}
+\newcommand*{\scudefault}{su}
+\DeclareRobustCommand{\scushape}{%
+ \not@math@alphabet\scushape\relax
+ \fontshape\scudefault\selectfont}
+\newcommand*{\uidefault}{ui}
+\DeclareRobustCommand{\uishape}{%
+ \not@math@alphabet\uishape\relax
+ \fontshape\uidefault\selectfont}
+\newcommand*{\ridefault}{ri}
+\DeclareRobustCommand{\rishape}{%
+ \not@math@alphabet\rishape\relax
+ \fontshape\ridefault\selectfont}
+\newcommand*{\exfs@merge@shape}[3]{%
+ \edef\exfs@tempa{#1}%
+ \edef\exfs@tempb{#2}%
+ \ifx\f@shape\exfs@tempb
+ \expandafter\ifx\csname\f@encoding/\f@family/\f@series/#3\endcsname\relax
+ \else
+ \edef\exfs@tempa{#3}%
+ \fi
+ \fi
+ \fontshape{\exfs@tempa}\selectfont}
+\newcommand*{\exfs@font@width}{%
+ \edef\exfs@tempf{\expandafter\exfs@first\f@series\@nil }%
+ \edef\exfs@temppart{\expandafter\exfs@part\f@series\@nil }%
+ \ifx\exfs@temppart\@empty
+ \def\exfs@width{}
+ \else
+ \edef\exfs@temps{\expandafter\exfs@second\f@series\@nil }%
+ \ifx\exfs@temps{b}
+ \edef\exfs@width{\expandafter\exfs@part\exfs@temps\@nil }%
+ \else
+ \ifx\exfs@temps{l}
+ \edef\exfs@width{\expandafter\exfs@part\exfs@temps\@nil }%
+ \else
+ \edef\exfs@width{\exfs@temppart}%
+ \fi
+ \fi
+ \fi
+ \exfs@width
+}
+\newcommand*{\exfs@merge@width}[1]{%
+ \edef\exfs@temph{#1}%
+ \edef\exfs@tempf{\expandafter\exfs@first\f@series\@nil }%
+ \edef\exfs@temppart{\expandafter\exfs@part\f@series\@nil }%
+ \def\tempb{b}%
+ \def\templ{l}%
+ \ifx\exfs@temppart\@empty
+ \def\exfs@series{\expandafter\exfs@tempf\exfs@temph}%
+ \else
+ \edef\exfs@temps{\expandafter\exfs@second\f@series\@nil }%
+ \ifx\exfs@temps\tempb
+ \def\exfs@series{\expandafter\exfs@tempf\exfs@temps\exfs@temph}%
+ \else
+ \ifx\exfs@temps\templ
+ \def\exfs@series{\expandafter\exfs@tempf\exfs@temps\exfs@temph}%
+ \else
+ \def\exfs@series{\expandafter\exfs@tempf\exfs@temph}%
+ \fi
+ \fi
+ \fi
+ \exfs@try@series{\exfs@series}%
+}
+\newcommand*{\exfs@unmerge@width}{%
+ \edef\exfs@tempf{\expandafter\exfs@first\f@series\@nil }%
+ \edef\exfs@temppart{\expandafter\exfs@part\f@series\@nil }%
+ \def\tempb{b}%
+ \def\templ{l}%
+ \ifx\exfs@temppart\@empty
+ \def\exfs@series{\expandafter\exfs@tempf}%
+ \else
+ \edef\exfs@temps{\expandafter\exfs@second\f@series\@nil }%
+ \ifx\exfs@temps\tempb
+ \def\exfs@series{\expandafter\exfs@tempf\exfs@temps}%
+ \else
+ \ifx\exfs@temps\templ
+ \def\exfs@series{\expandafter\exfs@tempf\exfs@temps}%
+ \else
+ \def\exfs@series{\expandafter\exfs@tempf}%
+ \fi
+ \fi
+ \fi
+ \exfs@try@series{\exfs@series}%
+}
+\DeclareRobustCommand{\regwidth}{%
+ \not@math@alphabet\regwidth\relax
+ \exfs@unmerge@width}
+\newcommand*{\nwdefault}{c}
+\DeclareRobustCommand{\nwwidth}{%
+ \not@math@alphabet\nwwidth\relax
+ \exfs@merge@width{\nwdefault}}
+\newcommand*{\cddefault}{c}
+\DeclareRobustCommand{\cdwidth}{%
+ \not@math@alphabet\cdwidth\relax
+ \exfs@merge@width{\cddefault}}
+\newcommand*{\ecdefault}{ec}
+\DeclareRobustCommand{\ecwidth}{%
+ \not@math@alphabet\ecwidth\relax
+ \exfs@merge@width{\ecdefault}}
+\newcommand*{\ucdefault}{uc}
+\DeclareRobustCommand{\ucwidth}{%
+ \not@math@alphabet\ucwidth\relax
+ \exfs@merge@width{\ucdefault}}
+\newcommand*{\etdefault}{x}
+\DeclareRobustCommand{\etwidth}{%
+ \not@math@alphabet\etwidth\relax
+ \exfs@merge@width{\etdefault}}
+\newcommand*{\epdefault}{x}
+\DeclareRobustCommand{\epwidth}{%
+ \not@math@alphabet\epwidth\relax
+ \exfs@merge@width{\epdefault}}
+\newcommand*{\exdefault}{ex}
+\DeclareRobustCommand{\exwidth}{%
+ \not@math@alphabet\exwidth\relax
+ \exfs@merge@width{\exdefault}}
+\newcommand*{\uxdefault}{ux}
+\DeclareRobustCommand{\uxwidth}{%
+ \not@math@alphabet\uxwidth\relax
+ \exfs@merge@width{\uxdefault}}
+\newcommand*{\exfs@merge@weight}[1]{%
+ \edef\exfs@tempg{#1}%
+ \edef\exfs@tempf{\expandafter\exfs@first\f@series\@nil }%
+ \edef\exfs@temppart{\expandafter\exfs@part\f@series\@nil }%
+ \def\templ{l}%
+ \def\tempb{b}%
+ \ifx\exfs@temppart\@empty
+ \def\exfs@series{\expandafter\exfs@tempg}%
+ \else
+ \edef\exfs@temps{\expandafter\exfs@second\f@series\@nil }%
+ \edef\exfs@tempw{\expandafter\exfs@part\exfs@temps\@nil }%
+ \ifx\exfs@temps\tempb
+ \def\exfs@series{\expandafter\exfs@tempg\exfs@tempw}%
+ \else
+ \ifx\exfs@temps\templ
+ \def\exfs@series{\expandafter\exfs@tempg\exfs@tempw}%
+ \else
+ \def\exfs@series{\expandafter\exfs@tempg\exfs@temppart}%
+ \fi
+ \fi
+ \fi
+ \ifx\exfs@tempg\exfs@series
+ \exfs@try@series{\exfs@series}%
+ \else
+ \exfs@try@series[\exfs@tempg]{\exfs@series}% assume user wants to change weight even if this changes back to the default width
+ \fi
+}
+\newcommand*{\mbdefault}{mb}
+\DeclareRobustCommand{\mbweight}{%
+ \not@math@alphabet\mbweight\relax
+ \exfs@merge@weight{\mbdefault}}
+\newcommand*{\dbdefault}{db}
+\DeclareRobustCommand{\dbweight}{%
+ \not@math@alphabet\dbweight\relax
+ \exfs@merge@weight{\dbdefault}}
+\newcommand*{\sbdefault}{sb}
+\DeclareRobustCommand{\sbweight}{%
+ \not@math@alphabet\sbweight\relax
+ \exfs@merge@weight{\sbdefault}}
+\newcommand*{\ebdefault}{eb}
+\DeclareRobustCommand{\ebweight}{%
+ \not@math@alphabet\ebweight\relax
+ \exfs@merge@weight{\ebdefault}}
+\newcommand*{\ubdefault}{ub}
+\DeclareRobustCommand{\ubweight}{%
+ \not@math@alphabet\ubweight\relax
+ \exfs@merge@weight{\ubdefault}}
+\newcommand*{\lgdefault}{l}
+\DeclareRobustCommand{\lgweight}{%
+ \not@math@alphabet\lgweight\relax
+ \exfs@merge@weight{\lgdefault}}
+\newcommand*{\eldefault}{el}
+\DeclareRobustCommand{\elweight}{%
+ \not@math@alphabet\elweight\relax
+ \exfs@merge@weight{\eldefault}}
+\newcommand*{\uldefault}{ul}
+\DeclareRobustCommand{\ulweight}{%
+ \not@math@alphabet\ulweight\relax
+ \exfs@merge@weight{\uldefault}}
+\DeclareRobustCommand{\itshape}{%
+ \not@math@alphabet\itshape\mathit
+ \exfs@merge@shape{\itdefault}{\scdefault}{\sidefault}}
+\DeclareRobustCommand{\scshape}{%
+ \not@math@alphabet\scshape\relax
+ \def\tempu{u}%
+ \def\tempo{ol}%
+ \ifx\f@shape\tempu
+ \exfs@merge@shape{\scdefault}{\udefault}{\scudefault}%
+ \else
+ \ifx\f@shape\tempo
+\exfs@merge@shape{\scdefault}{\oldefault}{\scoldefault}%
+\else
+ \exfs@merge@shape{\scdefault}{\itdefault}{\sidefault}%
+\fi
+ \fi
+}
+\DeclareRobustCommand{\upshape}{%
+ \not@math@alphabet\upshape\relax
+ \exfs@merge@shape{\updefault}{\sidefault}{\scdefault}}
+\DeclareRobustCommand{\dfshape}{%
+ \not@math@alphabet\dfshape\relax
+ \fontshape\shapedefault\selectfont}
+\newcommand*{\swshapedefault}{\itdefault}
+\DeclareRobustCommand{\swshape}{%
+ \not@math@alphabet\swshape\relax
+ \swstyle\fontshape\swshapedefault\selectfont}
+\DeclareTextFontCommand{\textln}{\lnstyle}
+\DeclareTextFontCommand{\textos}{\osstyle}
+\DeclareTextFontCommand{\textin}{\instyle}
+\DeclareTextFontCommand{\textsu}{\sustyle}
+\DeclareTextFontCommand{\textsi}{\sishape}
+\DeclareTextFontCommand{\textdf}{\dfshape}
+\DeclareTextFontCommand{\textsw}{\swshape}
+\DeclareTextFontCommand{\textti}{\tistyle}
+\DeclareTextFontCommand{\textlt}{\ltstyle}
+\DeclareTextFontCommand{\textof}{\ofstyle} % open-face (or outline or blank) style
+\DeclareTextFontCommand{\textalt}{\altstyle} % alternative style
+\DeclareTextFontCommand{\textreg}{\regstyle} % ``regular'' style
+\DeclareTextFontCommand{\emboss}{\embossstyle}
+\DeclareTextFontCommand{\textorn}{\ornamentalstyle} % intended primarily for decorative initials etc.
+\DeclareTextFontCommand{\textqt}{\qtstyle}
+\DeclareTextFontCommand{\textsh}{\shstyle} % shadowed style
+\DeclareTextFontCommand{\texttm}{\tmstyle}
+\DeclareTextFontCommand{\texttv}{\tvstyle}
+\DeclareTextFontCommand{\textl}{\lstyle}
+\DeclareTextFontCommand{\texto}{\ostyle}
+\DeclareTextFontCommand{\textp}{\pstyle}
+\DeclareTextFontCommand{\textt}{\tstyle}
+\DeclareTextFontCommand{\textpl}{\plstyle}
+\DeclareTextFontCommand{\textpo}{\postyle}
+\DeclareTextFontCommand{\texttl}{\tlstyle}
+\DeclareTextFontCommand{\textto}{\tostyle}
+\DeclareTextFontCommand{\textol}{\olshape} % outline
+\DeclareTextFontCommand{\textswash}{\swashstyle} % an attempt to improve on \textsw
+\DeclareTextFontCommand{\textu}{\ushape}
+\DeclareTextFontCommand{\textscu}{\scushape}
+\DeclareTextFontCommand{\textui}{\uishape} % upright italic
+\DeclareTextFontCommand{\textri}{\rishape} % reverse italic
+\DeclareTextFontCommand{\textnw}{\nwwidth}
+\DeclareTextFontCommand{\textcd}{\cdwidth}
+\DeclareTextFontCommand{\textec}{\ecwidth}
+\DeclareTextFontCommand{\textuc}{\ucwidth}
+\DeclareTextFontCommand{\textet}{\etwidth}
+\DeclareTextFontCommand{\textep}{\epwidth}
+\DeclareTextFontCommand{\textex}{\exwidth}
+\DeclareTextFontCommand{\textux}{\uxwidth}
+\DeclareTextFontCommand{\textrw}{\regwidth}
+\DeclareTextFontCommand{\textmb}{\mbweight}
+\DeclareTextFontCommand{\textdb}{\dbweight}
+\DeclareTextFontCommand{\textsb}{\sbweight}
+\DeclareTextFontCommand{\texteb}{\ebweight}
+\DeclareTextFontCommand{\textub}{\ubweight}
+\DeclareTextFontCommand{\textlg}{\lgweight}
+\DeclareTextFontCommand{\textel}{\elweight}
+\DeclareTextFontCommand{\textul}{\ulweight}
+\endinput
+%%
+%% End of file `nfssext-cfr-nfss.sty'.
diff --git a/Master/texmf-dist/tex/latex/nfssext-cfr/nfssext-cfr-nnfss.sty b/Master/texmf-dist/tex/latex/nfssext-cfr/nfssext-cfr-nnfss.sty
new file mode 100644
index 00000000000..02ef6549f9d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/nfssext-cfr/nfssext-cfr-nnfss.sty
@@ -0,0 +1,721 @@
+%%
+%% This is file `nfssext-cfr-nnfss.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% nfssext-cfr.dtx (with options: `sty-nnfss')
+%% Additions and changes Copyright (C) 2008-2024 Clea F. Rees.
+%% Code from fontinstallationguide Copyright (C) 2002-2004 Philipp Lehman (see below)
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This work consists of all files listed in manifest.txt.
+%%
+%%
+%% The file nfssext-cfr-nnfss.sty is a derived work under the terms of the LPPL.
+%% It is based on version 1.2 of nfssext.sty which is supplied with
+%% The Font Installation Guide by Philipp Lehman. A copy of The Font Installation Guide, including an
+%% unmodified version of nfssext.sty is available from
+%% https://tug.ctan.org/pkg/fontinstallationguide.
+%% nfssext.sty is part of the included archive figuide-examples.tar.gz
+%% which consists of examples and templates released under the LPPL.
+%% nfssext.sty is included in the files for tutorials 3, 5 and 6.
+%%
+%% The main modifications made to this file are described in nfssext-cfr.dtx.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\NeedsTeXFormat{LaTeX2e}
+\RequirePackage{svn-prov}
+\ProvidesPackageSVN[\filebase-nnfss.sty]{$Id: nfssext-cfr.dtx 10366 2024-09-18 14:25:21Z cfrees $}[v1.0 \revinfo{} extended New New Font Selection Scheme (NNFSS) based on 2003/03/14 v1.2 Experimental NFSS Extensions]
+\DefineFileInfoSVN
+\newcommand*{\exfs@tempa}{}
+\newcommand*{\exfs@tempb}{}
+\newcommand*{\exfs@tempf}{}
+\ExplSyntaxOn
+\hook_gput_code:nnn { cmd/wrong@fontshape/before } { . }
+{
+ \global\expandafter\expandafter\expandafter\let
+ \expandafter \csname exfs@fake@ \curr@fontshape\endcsname\relax
+}
+\ExplSyntaxOff
+\newcommand \exfs@info[2][nfssext-cfr]{%
+ \ifexfs@debug
+ \PackageWarning{#1}{Info: #2}%
+ \else
+ \PackageInfo{#1}{#2}%
+ \fi
+}
+\newcommand* \exfs@normalise[1]{%
+ \ifcsname exfs@fake@\curr@fontshape\endcsname
+ \exfs@info{Current font '\curr@fontshape' is fake.\MessageBreak
+ Normalising}%
+ \expandafter\csname f@#1\endcsname{\csname #1default\endcsname}\selectfont
+ \ifcsname exfs@fake@\curr@fontshape\endcsname
+ \f@series{\seriesdefault}\f@shape{\shapedefault}\selectfont
+ \ifcsname exfs@fake@\curr@fontshape\endcsname
+ \normalfont
+ \ifcsname exfs@fake@\curr@fontshape\endcsname
+ \PackageError{nfssext-cfr}{Default font appears to be fake!\MessageBreak
+ Switch \textbackslash normalfont yielded '\curr@fontshape'}
+ {This is highly unlikely, so the bug is probably in the phenomena\MessageBreak
+ rather than the noumena}%
+ \fi
+ \fi
+ \fi
+ \exfs@info{Normalised to '\curr@fontshape'}%
+ \else
+ \exfs@info{Current font '\curr@fontshape' appears real}%
+ \fi
+}
+\newcommand*{\exfs@try@family}[2][]{%
+ \let\exfs@tempa\relax
+ \begingroup % fel arall, bydd latex yn credu bod y family yn go iawn beth bynnag
+ \exfs@info{Trying Font family '\f@encoding/#2'}%
+ \fontfamily{#2}\try@load@fontshape
+ \expandafter\ifx\csname\curr@fontshape\endcsname\relax
+ \edef\exfs@tempa{#1}%
+ \ifx\exfs@tempa\@empty
+ \PackageWarning{nfssext}{%
+ Font family '\f@encoding/#2' not available\MessageBreak
+ Ignoring font switch}%
+ \else
+ \exfs@info[nfssext]{%
+ Font family '\f@encoding/#2' not available\MessageBreak
+ Font family '\f@encoding/#1' tried instead}%
+ \exfs@try@family{#1}%
+ \fi
+ \else
+ \exfs@info{Loading font family '\f@encoding/#2'}%
+ \gdef\exfs@tempa{\fontfamily{#2}\selectfont}%
+ \fi
+ \endgroup
+ \exfs@tempa}
+\newcommand*{\exfs@try@series}[2][]{%
+ \let\exfs@targetseries\relax
+ \edef\exfs@tempa{#2}%
+ \ifx\f@series\exfs@tempa\relax
+ \exfs@info{Current (\f@series) matches target (#2) series.\MessageBreak
+ Ignoring font switch}%
+ \else
+ \begingroup
+ \exfs@normalise{series}%
+ \edef\exfs@tempa{\f@encoding/\f@family/#2/\f@shape}%
+ \ifcsname \exfs@tempa\endcsname
+ \exfs@info{Switching series: \f@series\space -> #2}%
+ \gdef\exfs@targetseries{\fontseries{#2}\selectfont}%
+ \else
+ \edef\exfs@reserved{#1}%
+ \ifx\exfs@reserved\@empty
+ \PackageWarning{nfssext-cfr}{%
+ Font series '\f@encoding/\f@family/#2/\f@shape' not available\MessageBreak
+ Ignoring font change}%
+ \else
+ \PackageWarning{nfssext-cfr}{%
+ Font series '\f@encoding/\f@family/#2/\f@shape' not available\MessageBreak
+ Trying '\f@encoding/\f@family/#1/\f@shape'}%
+ \exfs@try@series{#1}%
+ \fi
+ \fi
+ \endgroup
+ \exfs@targetseries
+ \fi}
+\def\exfs@try@shapeshift#1{%
+ \edef\exfs@targetshape{\csname #1default\endcsname}%
+ \ifx\f@shape\exfs@targetshape\relax
+ \exfs@info{Current (\f@shape) matches target (#1) shape.\MessageBreak
+ Ignoring font switch}%
+ \else
+ \not@math@alphabet\edef\exfs@targetshape\relax
+ \exfs@info{\f@shape\space -> \exfs@targetshape\MessageBreak
+ Trying \f@encoding/\f@family/\f@series/\exfs@targetshape}%
+ \fontshape{\exfs@targetshape}\selectfont
+ \fi}
+\newcommand* \exfs@swshape{%
+ \let\exfs@targetsw\relax
+ \begingroup % angen neu beidio? angen - bendant!
+ \edef\exfs@tempa{\f@encoding/\f@family/\f@series/\swdefault}%
+ \edef\exfs@tempa@fake{exfs@fake@\exfs@tempa}%
+ \ifcsname \exfs@tempa\endcsname
+ \ifcsname exfs@fake@\exfs@tempa\endcsname
+ \exfs@swfamily
+ \else
+ \gdef\exfs@targetsw{\fontshape{\swdefault}\selectfont}% kernel
+ \fi
+ \else
+ \exfs@swfamily
+ \fi
+ \endgroup
+ \ifx\exfs@targetsw\relax
+ \PackageWarning{nfssext-cfr}{%
+ Cannot find any route to swash.\MessageBreak
+ Are you sure one is available?}%
+ \else
+ \exfs@targetsw
+ \exfs@info{Switch to swash resulted in '\curr@fontshape'}%
+ \fi
+}
+\newcommand* \exfs@swfamily{%
+ \let\exfs@targetsw\relax
+ \begingroup
+ \let\exfs@tempa\f@family
+ \exfs@merge@families{w}%
+ \ifx\exfs@tempa\f@family % try merge with current shape
+ \fontshape{n}%
+ \exfs@merge@families{w}% up & merge
+ \if\exfs@tempa\f@family
+ \fontshape\swshapedefault
+ \exfs@merge@families{w}% up & nfssext-cfr default/configured
+ \if\exfs@tempa\f@family
+ \exf@try@family{\expandafter\exfs@get@base\f@family\@nil w}% nfssext switch
+ \if\exfs@tempa\f@family % nfssext switch
+ \fontshape\swshapedefault\exfs@try@family{%
+ \expandafter\exfs@get@base\f@family\@nil w}% nfssext switch & shape
+ \if\exfs@tempa\f@family
+ \relax % rhodd y ffidl yn y to (give up)
+ \else
+ \gdef\exfs@targetsw{%
+ \fontshape\swshapedefault\expandafter\fontfamily{%
+ \exfs@get@base\f@family\@nil w}\selectfont
+ }% nfssext switch & shape
+ \fi % nfssext switch & shape
+ \else
+ \gdef\exfs@targetsw{\expandafter\fontfamily{%
+ \exfs@get@base\f@family\@nil w}\selectfont
+ }% nfssext switch
+ \fi % nfssext switch
+ \else
+ \gdef\exfs@targetsw{%
+ \fontshape\swshapedefault\exfs@merge@families{w}%
+ }% up & nfssext-cfr default/configured
+ \fi % up & nfssext-cfr default/configured
+ \else
+ \gdef\exfs@targetsw{%
+ \fontshape{n}\exfs@merge@families{w}%
+ }% up & merge
+ \fi % up & merge
+ \else
+ \gdef\exfs@targetsw{\exfs@merge@families{w}}% merge with current shape
+ \fi % merge with current shape
+ \endgroup
+}
+\def\exfs@get@base#1#2#3#4\@nil{#1#2#3}
+\def\exfs@get@variants#1#2#3#4\@nil{#4}
+\def\exfs@next#1#2\@nil{#1}
+\def\exfs@shift#1#2\@nil{#2}
+\def\exfs@first#1#2\@nil{#1}
+\def\exfs@part#1#2\@nil{#2}
+\def\exfs@second#1#2#3\@nil{#2}
+\def\exfs@series@splitter#1{%
+ \edef\exfs@weight{\expandafter\exfs@first#1\@nil}%
+ \edef\exfs@width{\expandafter\exfs@shift#1\@nil}%
+ \if\exfs@weight u\exfs@check@cx{u}%
+ \else\if\exfs@weight e\exfs@check@cx{e}%
+ \else\if\exfs@weight s\exfs@check@cx{s}%
+ \else\if\exfs@weight d\exfs@check@cx{d}%
+ \else\ifx\exfs@width\@empty % m dealt with elsewhere
+ \if\exfs@weight c\def\exfs@width{c}\let\exfs@weight\@empty
+ \else\if\exfs@weight x\def\exfs@width{x}\let\exfs@weight\@empty
+ \fi\fi
+ \fi\fi\fi\fi\fi
+ \exfs@info{#1 -> \exfs@weight:\exfs@width;}%
+}
+\def\exfs@check@cx#1{%
+ \edef\exfs@tempa{\expandafter\exfs@first\exfs@width\@nil}%
+ \if\exfs@tempa c\edef\exfs@width{#1c}\let\exfs@weight\@empty
+ \else\if\exfs@tempa x\edef\exfs@width{#1x}\let\exfs@weight\@empty
+ \else\edef\exfs@weighta{%
+ \exfs@weight\exfs@tempa
+ }\let\exfs@weight\exfs@weighta
+ \edef\exfs@widtha{%
+ \expandafter\exfs@shift\exfs@width\@nil
+ }\let\exfs@width\exfs@widtha
+ \fi\fi
+}
+\DeclareRobustCommand{\lnstyle}{%% anniffiniedig
+ \not@math@alphabet\lnstyle\relax
+ \exfs@try@family[\expandafter\exfs@get@base\f@family\@nil]%
+ {\expandafter\exfs@get@base\f@family\@nil x}}
+\DeclareRobustCommand{\osstyle}{%% anniffiniedig
+ \not@math@alphabet\osstyle\relax
+ \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil j}}
+\DeclareRobustCommand{\infstyle}{%% anniffiniedig
+ \not@math@alphabet\infstyle\relax
+ \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil 0}}
+\let\instyle\infstyle
+\DeclareRobustCommand{\sustyle}{%% anniffiniedig
+ \not@math@alphabet\sustyle\relax
+ \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil 1}}
+\DeclareRobustCommand{\swstyle}{%% anniffiniedig
+ \not@math@alphabet\swstyle\relax
+ \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil w}}
+\newif\ifexfs@added
+\newcommand*\exfs@merge@families[1]{%
+ \edef\exfs@vartomerge{#1}%
+ \edef\exfs@variants{\expandafter\exfs@get@variants\f@family\@nil}%
+ \exfs@info{Trying to merge variants #1 and \exfs@variants}%
+ \edef\tempo{2j}%
+ \let\exfs@tempq\@empty
+ \def\exfs@tempg{}%
+ \exfs@addedfalse
+ \ifx\exfs@variants\@empty
+ \edef\exfs@tempq{\exfs@vartomerge}%
+ \exfs@addedtrue
+ \else
+ \gdef\set{0,1,2,a,d,e,f,h,j,l,p,q,s,t,v,w}% these are the variants to consider - the order here and in the font name is crucial
+ \ifx\tempo\exfs@vartomerge
+ \@for \xx:=\set \do {%
+ \ifx\exfs@variants\@empty
+ \let\exfs@nextvariant\@empty
+ \else
+ \edef\exfs@nextvariant{\expandafter\exfs@next\exfs@variants\@nil}%
+ \fi
+ \if\exfs@nextvariant 2%
+ \edef\exfs@variants{\expandafter\exfs@shift\exfs@variants\@nil}%
+ \fi
+ \if\exfs@nextvariant j% if the next variant is j, ignore it
+ \edef\exfs@variants{\expandafter\exfs@shift\exfs@variants\@nil}%
+ \fi
+ \if\xx 2%
+ \edef\exfs@tempg{\exfs@tempg\xx}%
+ \else
+ \if\xx j% if the current value is j, we're done
+ \edef\exfs@tempq{\exfs@tempg\xx\exfs@variants}%
+ \let\exfs@variants\@empty
+ \exfs@addedtrue
+ \else
+ \ifx\xx\exfs@nextvariant
+ \edef\exfs@tempg{\exfs@tempg\xx}%
+ \edef\exfs@variants{\expandafter\exfs@shift\exfs@variants\@nil}%
+ \fi
+ \fi
+ \fi
+ }%
+ \else
+ \@for \xx:=\set \do {%
+ \ifx\exfs@variants\@empty
+ \ifexfs@added
+ \else
+ \edef\exfs@tempq{\exfs@tempg\exfs@vartomerge}%
+ \exfs@addedtrue
+ \fi
+ \else
+ \edef\exfs@nextvariant{\expandafter\exfs@next\exfs@variants\@nil}%
+ \ifx\exfs@nextvariant\exfs@vartomerge
+ \edef\exfs@tempq{\exfs@tempg\exfs@variants}%
+ \exfs@addedtrue
+ \let\exfs@variants\@empty
+ \else
+ \ifx\exfs@vartomerge\xx
+ \edef\exfs@tempq{\exfs@tempg\xx\exfs@variants}%
+ \exfs@addedtrue
+ \let\exfs@variants\@empty
+ \else
+ \ifx\exfs@nextvariant\xx
+ \edef\exfs@tempg{\exfs@tempg\xx}%
+ \edef\exfs@variants{\expandafter\exfs@shift\exfs@variants\@nil}%
+ \fi
+ \fi
+ \fi
+ \fi
+ }%
+ \fi
+ \fi
+ \ifx\exfs@tempq\@empty
+ \PackageError{nfssext-cfr}{Something is wrong here. Ignoring font switching command.}{}%
+ \else
+ \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil \exfs@tempq}%
+ \fi
+}
+\DeclareRobustCommand{\pstyle}{%% anniffiniedig proportional figures
+ \not@math@alphabet\pstyle\relax
+ \exfs@merge@families{2}}
+\DeclareRobustCommand{\ostyle}{%% anniffiniedig oldstyle figures (cf. original osstyle above)
+ \not@math@alphabet\ostyle\relax
+ \exfs@merge@families{j}}
+\DeclareRobustCommand{\postyle}{%% anniffiniedig
+ \not@math@alphabet\postyle\relax
+ \exfs@merge@families{2j}}
+\DeclareRobustCommand{\tistyle}{%% anniffiniedig titling/display
+ \not@math@alphabet\tistyle\relax
+ \exfs@merge@families{d}}
+\DeclareRobustCommand{\ltstyle}{%% anniffiniedig
+ \not@math@alphabet\ltstyle\relax
+ \exfs@merge@families{l}}
+\DeclareRobustCommand{\ofstyle}{%% anniffiniedig
+ \not@math@alphabet\ofstyle\relax
+ \exfs@merge@families{l}}
+\DeclareRobustCommand{\altstyle}{%% anniffiniedig alternative style
+ \not@math@alphabet\altstyle\relax
+ \exfs@merge@families{a}}
+\DeclareRobustCommand{\regstyle}{%% anniffiniedig 'regular' style
+ \not@math@alphabet\regstyle\relax
+ \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil}}
+\DeclareRobustCommand{\embossstyle}{%% anniffiniedig
+ \not@math@alphabet\embossstyle\relax
+ \exfs@merge@families{e}}
+\DeclareRobustCommand{\ornamentalstyle}{%% anniffiniedig intended primarily for decorative initial fonts etc.
+ \not@math@alphabet\ornamentalstyle\relax
+ \exfs@merge@families{p}}
+\DeclareRobustCommand{\qtstyle}{%% anniffiniedig quotation style (assumes sans)
+ \not@math@alphabet\qtstyle\relax
+ \sffamily
+ \exfs@merge@families{q}}
+\DeclareRobustCommand{\shstyle}{%% anniffiniedig
+ \not@math@alphabet\shstyle\relax
+ \exfs@merge@families{h}}
+\DeclareRobustCommand{\swashstyle}{%% anniffiniedig an attempt to improve on \swstyle
+ \not@math@alphabet\swashstyle\relax
+ \exfs@merge@families{w}}
+\DeclareRobustCommand{\tmstyle}{%% anniffiniedig monowidth typewriter
+ \not@math@alphabet\tmstyle\relax
+ \exfs@unmerge@families{s}%
+ \exfs@unmerge@families{v}%
+ \exfs@merge@families{t}}
+\DeclareRobustCommand{\tvstyle}{%% anniffiniedig variable width typewriter
+ \not@math@alphabet\tvstyle\relax
+ \exfs@unmerge@families{s}%
+ \exfs@unmerge@families{t}%
+ \exfs@merge@families{v}}
+\newif\ifexfs@take
+\newcommand*\exfs@unmerge@families[1]{%
+ \edef\exfs@tempf{#1}%
+ \edef\tempa{\expandafter\exfs@get@variants\f@family\@nil}%
+ \let\exfs@tempq\@empty
+ \edef\exfs@tempg{}%
+ \exfs@taketrue
+ \ifx\tempa\@empty
+ \edef\exfs@tempq{}%
+ \else
+ \loop
+ \edef\exfs@tempn{\expandafter\exfs@next\tempa\@nil}%
+ \ifx\exfs@tempf\exfs@tempn
+ \edef\tempa{\expandafter\exfs@shift\tempa\@nil}%
+ \edef\exfs@tempq{\exfs@tempg\tempa}%
+ \exfs@takefalse
+ \else
+ \edef\exfs@tempg{\exfs@tempg\exfs@tempn}%
+ \edef\tempa{\expandafter\exfs@shift\tempa\@nil}%
+ \ifx\tempa\@empty% if there are no variants left, we're done
+ \edef\exfs@tempq{\exfs@tempg}%
+ \exfs@takefalse
+ \fi
+ \fi
+ \ifexfs@take % \fi yn \repeat
+ \repeat
+ \fi
+ \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil \exfs@tempq}%
+}
+\DeclareRobustCommand{\tstyle}{%% anniffiniedig tabular figures
+ \not@math@alphabet\tstyle\relax
+ \exfs@unmerge@families{2}}
+\DeclareRobustCommand{\lstyle}{%% anniffiniedig lining figures (cf. command above)
+ \not@math@alphabet\lstyle\relax
+ \exfs@unmerge@families{j}}
+\DeclareRobustCommand{\tlstyle}{%% anniffiniedig
+ \lstyle\tstyle}
+\DeclareRobustCommand{\plstyle}{%% anniffiniedig
+ \lstyle\pstyle}
+\DeclareRobustCommand{\tostyle}{%% anniffiniedig
+ \ostyle\tstyle}
+\newcommand*{\sidefault}{si}% anniffiniedig
+\DeclareRobustCommand{\sishape}{%
+ \exfs@try@shapeshift{si}}
+\DeclareFontShapeChangeRule {n}{si}{scit}{scsl}% current; request (& trydedd); dewisiad cyntaf; ail ddewisiad
+\DeclareFontShapeChangeRule {it}{si}{scit}{scsl}
+\DeclareFontShapeChangeRule {sl}{si}{scit}{scsl}
+\DeclareFontShapeChangeRule {sc}{si}{scit}{scsl}
+\DeclareFontShapeChangeRule {si}{sc} {si} {}
+\DeclareFontShapeChangeRule {si}{it} {si} {}
+\DeclareFontShapeChangeRule {si}{sl} {scsl} {si}
+\DeclareFontShapeChangeRule {si}{scit} {scit} {si}% rhag ofn?!
+\DeclareFontShapeChangeRule {si}{ulc} {it} {}
+\DeclareFontShapeChangeRule {si}{up}{sc}{}
+\ExplSyntaxOn
+\bool_if:NT \g__exfs_compat_bool
+{
+ \DeclareFontShapeChangeRule {it}{sc}{si}{scsl}
+ \DeclareFontShapeChangeRule{sl}{sc}{scsl}{si}
+ \DeclareFontShapeChangeRule {sc}{it} {si} {scsl}
+ \DeclareFontShapeChangeRule {sc}{sl} {scsl} {si}
+ \DeclareFontShapeChangeRule {scsl}{it} {si} {scsl}
+}
+\ExplSyntaxOff
+\DeclareFontShapeChangeRule {ui}{sc}{scit}{scsl}
+\DeclareFontShapeChangeRule {ui}{scsl}{scsl}{scit}
+\DeclareFontShapeChangeRule {ui}{it}{it}{ui}
+\DeclareFontShapeChangeRule {ui}{ri}{ri}{ui}
+\DeclareFontShapeChangeRule {ui}{up}{n}{}
+\DeclareFontShapeChangeRule {ui}{ulc}{ui}{}
+\DeclareFontShapeChangeRule {ri}{sc}{scit}{scsl}
+\DeclareFontShapeChangeRule {ri}{scsl}{scsl}{scit}
+\DeclareFontShapeChangeRule {ri}{it}{it}{ri}
+\DeclareFontShapeChangeRule {ri}{ui}{ui}{ri}
+\DeclareFontShapeChangeRule {ri}{up}{n}{}
+\DeclareFontShapeChangeRule {ri}{ulc}{ri}{}
+\DeclareFontShapeChangeRule {ol} {sc} {scol} {} % <- seiliedig ar nfssext-cfr-nfss.sty \scshape
+\DeclareFontShapeChangeRule {ol} {ulc} {ol} {}
+\DeclareFontShapeChangeRule {ol} {up} {ol} {}
+\DeclareFontShapeChangeRule {scol} {sc} {scol} {}
+\DeclareFontShapeChangeRule {scol} {ulc} {ol} {}
+\DeclareFontShapeChangeRule {scol} {up} {scol} {}
+\DeclareFontShapeChangeRule {u}{sc}{su}{} % <- seiliedig ar nfssext-cfr-nfss.sty \scshape
+\DeclareFontShapeChangeRule {su}{ulc}{u}{}
+\DeclareFontShapeChangeRule {sc}{u}{su}{}
+\DeclareFontShapeChangeRule {su}{u}{su}{}
+\DeclareFontShapeChangeRule {su}{sc}{su}{}
+\newcommand*{\oldefault}{ol}% anniffiniedig
+\DeclareRobustCommand{\olshape}{%% anniffiniedig
+ \exfs@try@shapeshift{ol}}
+\newcommand*{\scoldefault}{scol}% anniffiniedig
+\DeclareRobustCommand{\scolshape}{%% anniffiniedig
+ \exfs@try@shapeshift{scol}}
+\newcommand*{\udefault}{u}% anniffiniedig
+\DeclareRobustCommand{\ushape}{%% anniffiniedig
+ \exfs@try@shapeshift{u}}
+\newcommand*{\scudefault}{su}% anniffiniedig
+\DeclareRobustCommand{\scushape}{%% anniffiniedig
+ \exfs@try@shapeshift{scu}}
+\newcommand*{\uidefault}{ui}% anniffiniedig
+\DeclareRobustCommand{\uishape}{% anniffiniedig
+ \exfs@try@shapeshift{ui}}
+\newcommand*{\ridefault}{ri}% anniffiniedig
+\DeclareRobustCommand{\rishape}{% anniffiniedig
+ \exfs@try@shapeshift{ri}}
+\newcommand*{\exfs@merge@width}[1]{%
+ \exfs@series@splitter{\f@series}%
+ \edef\exfs@temph{#1}%
+ \if\exfs@temph m\ifx\exfs@weight\@empty\else\let\exfs@temph\@empty\fi\fi
+ \if\exfs@weight m\ifx\exfs@temph\@empty\else\let\exfs@weight\@empty\fi\fi
+ \edef\exfs@series{\exfs@weight\exfs@temph}%
+ \exfs@info{Trying \exfs@series}%
+\exfs@try@series{\exfs@series}}
+\DeclareRobustCommand{\regwidth}{%% anniffiniedig
+\not@math@alphabet\regwidth\relax
+ \exfs@merge@width{m}}
+\newcommand*{\nwdefault}{c}% anniffiniedig
+\DeclareRobustCommand{\nwwidth}{%% anniffiniedig ond rheolau
+\not@math@alphabet\nwwidth\relax
+\exfs@merge@width{\nwdefault}}% neu \exfs@try@series ?
+\newcommand*{\cddefault}{c}% anniffiniedig
+\DeclareRobustCommand{\cdwidth}{% anniffiniedig ond rheolau
+\not@math@alphabet\cdwidth\relax
+\exfs@merge@width{\cddefault}}% neu \exfs@try@series ?
+\newcommand*{\ecdefault}{ec}% anniffiniedig
+\DeclareRobustCommand{\ecwidth}{%% anniffiniedig ond rheolau
+\not@math@alphabet\ecwidth\relax
+\exfs@merge@width{\ecdefault}}% neu \exfs@try@series ?
+\newcommand*{\ucdefault}{uc}% anniffiniedig
+\DeclareRobustCommand{\ucwidth}{%% anniffiniedig
+\not@math@alphabet\ucwidth\relax
+\exfs@merge@width{\ucdefault}}
+\newcommand*{\etdefault}{x}% anniffiniedig
+\DeclareRobustCommand{\etwidth}{%% anniffiniedig
+\not@math@alphabet\etwidth\relax
+\exfs@merge@width{\etdefault}}% neu \exfs@try@series ?
+\newcommand*{\epdefault}{x}% anniffiniedig
+\DeclareRobustCommand{\epwidth}{%% anniffiniedig ond rheolau
+\not@math@alphabet\epwidth\relax
+\exfs@merge@width{\epdefault}}% neu \exfs@try@series ?
+\newcommand*{\exdefault}{ex}% anniffiniedig
+\DeclareRobustCommand{\exwidth}{%% anniffiniedig
+\not@math@alphabet\exwidth\relax
+\exfs@merge@width{\exdefault}}
+\newcommand*{\uxdefault}{ux}% anniffiniedig
+\DeclareRobustCommand{\uxwidth}{%% anniffiniedig
+\not@math@alphabet\uxwidth\relax
+\exfs@merge@width{\uxdefault}}
+\newcommand*\mdwdefault{m}
+\DeclareRobustCommand{\mdwidth}{%% anniffiniedig
+ \not@math@alphabet\mdwidth\relax
+ \exfs@merge@width{\mdwdefault}}
+\newcommand*{\exfs@merge@weight}[1]{%
+ \exfs@series@splitter{\f@series}%
+ \let\exfs@tempg\f@series
+ \def\exfs@temph{#1}%
+ \if\exfs@temph m\relax
+ \ifx\exfs@width\@empty\relax
+ \else
+ \let\exfs@temph\@empty
+ \fi
+ \fi
+ \edef\exfs@series{\exfs@temph\exfs@width}%
+ \ifx\exfs@temph\exfs@series
+ \exfs@info{Trying \exfs@series}%
+ \exfs@try@series{\exfs@series}%
+ \else
+ \exfs@info{Trying \exfs@series, favouring \exfs@weight}%
+ \exfs@try@series[\exfs@weight]{\exfs@series}% assume user wants to change weight even if this changes back to the default width
+ \fi}
+\newcommand*{\mbdefault}{sb}% dim byd i'w gael ei wneud yma
+\DeclareRobustCommand{\mbweight}{%% anniffiniedig
+ \not@math@alphabet\mbweight\relax
+ \exfs@merge@weight{\mbdefault}}
+\newcommand*{\bddefault}{b}% dim byd i'w gael ei wneud yma
+\DeclareRobustCommand{\bfweight}{%% anniffiniedig
+ \not@math@alphabet\bfweight\relax
+ \exfs@merge@weight{\bddefault}}
+\DeclareRobustCommand{\bdweight}{%% anniffiniedig
+ \not@math@alphabet\bdweight\relax
+ \exfs@merge@weight{\bddefault}}
+\newcommand*\mwdefault{m}
+\DeclareRobustCommand{\mdweight}{%% anniffiniedig
+ \not@math@alphabet\mdweight\relax
+ \exfs@merge@weight{\mwdefault}}
+\newcommand*{\dbdefault}{db}% anniffiniedig
+\DeclareRobustCommand{\dbweight}{%% anniffiniedig
+\not@math@alphabet\dbweight\relax
+\exfs@merge@weight{\dbdefault}}
+\newcommand*{\sbdefault}{sb}% anniffiniedig
+\DeclareRobustCommand{\sbweight}{%% anniffiniedig ond rheolau
+\not@math@alphabet\sbweight\relax
+\exfs@merge@weight{\sbdefault}}% neu \exfs@try@series ?
+\newcommand*{\ebdefault}{eb}% anniffiniedig
+\DeclareRobustCommand{\ebweight}{%% anniffiniedig ond rheolau
+\not@math@alphabet\ebweight\relax
+\exfs@merge@weight{\ebdefault}}% neu \exfs@try@series ?
+\newcommand*{\ubdefault}{ub}% anniffiniedig
+\DeclareRobustCommand{\ubweight}{%% anniffiniedig ond rheolau
+\not@math@alphabet\ubweight\relax
+\exfs@merge@weight{\ubdefault}}% neu \exfs@try@series ?
+\newcommand*{\lgdefault}{l}% anniffiniedig
+\DeclareRobustCommand{\lgweight}{%% anniffiniedig ond rheolau
+\not@math@alphabet\lgweight\relax
+\exfs@merge@weight{\lgdefault}}% neu \exfs@try@series ?
+\newcommand*{\eldefault}{el}% anniffiniedig
+\DeclareRobustCommand{\elweight}{%% anniffiniedig ond rheolau
+\not@math@alphabet\elweight\relax
+\exfs@merge@weight{\eldefault}}% neu \exfs@try@series ?
+\newcommand*{\uldefault}{ul}% anniffiniedig
+\DeclareRobustCommand{\ulweight}{%% anniffiniedig ond rheolau
+\not@math@alphabet\ulweight\relax
+\exfs@merge@weight{\uldefault}}% neu \exfs@try@series ?
+\let\dfshape\normalshape
+\newcommand*{\swshapedefault}{\itdefault}
+\ExplSyntaxOn
+\hook_gput_code:nnn {begindocument}{.}
+{% compatibility with original nfss \swshape
+ \bool_if:NTF \g__exfs_compat_bool
+ {
+ \DeclareRobustCommand{\swshape}
+ {
+ \not@math@alphabet\swshape\relax
+ \swstyle\fontshape\swshapedefault\selectfont
+ }
+ \PackageWarning{nfssext-cfr}{
+ Overwriting ~ kernel ~ definition ~ of ~ \swshape \space (compat)
+ }
+ }{
+ \DeclareRobustCommand \swshape
+ {
+ \not@math@alphabet\swshape\relax
+ \exfs@swshape
+ }
+ \PackageWarning{nfssext-cfr}{
+ Overwriting ~ kernel ~ definition ~ of ~ \swshape \space (new)
+ }
+ }
+ \@ifpackageloaded{hyperref}{
+ \hook_gput_code:nnn { cmd/textin/before } { . }
+ {
+ \exfs@info{
+ Note ~ that ~ '\protect\textin' ~ is ~ defined ~ by ~ hyperref.\MessageBreak
+ Use ~ for ~ inferior ~ digits ~ will ~ yield ~ an\MessageBreak
+ undefined ~ command ~ error ~ in ~ document ~ font ~ encodings.\MessageBreak
+ Use ~ '\protect\textinf' ~ to ~ access ~ inferior ~ digits
+ }
+ }
+ }{
+ \DeclareTextFontCommand{\textin}{\infstyle}
+ }
+}
+\ExplSyntaxOff
+\DeclareTextFontCommand{\textln}{\lnstyle}% anniffiniedig
+\DeclareTextFontCommand{\textos}{\osstyle}% anniffiniedig
+\DeclareTextFontCommand{\textinf}{\infstyle}% anniffiniedig
+\DeclareTextFontCommand{\textsu}{\sustyle}% anniffiniedig
+\DeclareTextFontCommand{\textsi}{\sishape}% anniffiniedig
+\DeclareTextFontCommand{\textdf}{\dfshape}% anniffiniedig
+\DeclareTextFontCommand{\textti}{\tistyle}% anniffiniedig
+\DeclareTextFontCommand{\textlt}{\ltstyle}% anniffiniedig
+\DeclareTextFontCommand{\textof}{\ofstyle}% anniffiniedig % open-face (or outline or blank) style
+\DeclareTextFontCommand{\textalt}{\altstyle}% anniffiniedig % alternative style
+\DeclareTextFontCommand{\textreg}{\regstyle}% anniffiniedig % `regular' style
+\DeclareTextFontCommand{\emboss}{\embossstyle}% anniffiniedig
+\DeclareTextFontCommand{\textorn}{\ornamentalstyle}% anniffiniedig % intended primarily for decorative initials etc.
+\DeclareTextFontCommand{\textqt}{\qtstyle}% anniffiniedig
+\DeclareTextFontCommand{\textsh}{\shstyle}% anniffiniedig % shadowed style
+\DeclareTextFontCommand{\texttm}{\tmstyle}% anniffiniedig
+\DeclareTextFontCommand{\texttv}{\tvstyle}% anniffiniedig
+\DeclareTextFontCommand{\textl}{\lstyle}% anniffiniedig
+\DeclareTextFontCommand{\texto}{\ostyle}% anniffiniedig
+\DeclareTextFontCommand{\textp}{\pstyle}% anniffiniedig
+\DeclareTextFontCommand{\textt}{\tstyle}% anniffiniedig
+\DeclareTextFontCommand{\textpl}{\plstyle}% anniffiniedig
+\DeclareTextFontCommand{\textpo}{\postyle}% anniffiniedig
+\DeclareTextFontCommand{\texttl}{\tlstyle}% anniffiniedig
+\DeclareTextFontCommand{\textto}{\tostyle}% anniffiniedig
+\DeclareTextFontCommand{\textol}{\olshape}% anniffiniedig % outline
+\DeclareTextFontCommand{\textswash}{\swashstyle}% anniffiniedig % an attempt to improve on \textsw
+\DeclareTextFontCommand{\textu}{\ushape}% anniffiniedig % be' yw hwn?! <_ underlined?
+\DeclareTextFontCommand{\textscu}{\scushape}% anniffiniedig
+\DeclareTextFontCommand{\textui}{\uishape}% anniffiniedig % upright italic
+\DeclareTextFontCommand{\textri}{\rishape}% anniffiniedig % reverse italic
+\DeclareTextFontCommand{\textnw}{\nwwidth}% anniffiniedig
+\DeclareTextFontCommand{\textcd}{\cdwidth}% anniffiniedig
+\DeclareTextFontCommand{\textec}{\ecwidth}% anniffiniedig
+\DeclareTextFontCommand{\textuc}{\ucwidth}% anniffiniedig
+\DeclareTextFontCommand{\textet}{\etwidth}% anniffiniedig
+\DeclareTextFontCommand{\textep}{\epwidth}% anniffiniedig
+\DeclareTextFontCommand{\textex}{\exwidth}% anniffiniedig
+\DeclareTextFontCommand{\textux}{\uxwidth}% anniffiniedig
+\DeclareTextFontCommand{\textrw}{\regwidth}% anniffiniedig
+\DeclareTextFontCommand{\textmb}{\mbweight}% anniffiniedig
+\DeclareTextFontCommand{\textdb}{\dbweight}% anniffiniedig
+\DeclareTextFontCommand{\textbd}{\bdweight}% new?
+\DeclareTextFontCommand{\textsb}{\sbweight}% anniffiniedig
+\DeclareTextFontCommand{\texteb}{\ebweight}% anniffiniedig
+\DeclareTextFontCommand{\textub}{\ubweight}% anniffiniedig
+\DeclareTextFontCommand{\textlg}{\lgweight}% anniffiniedig
+\DeclareTextFontCommand{\textel}{\elweight}% anniffiniedig
+\DeclareTextFontCommand{\textul}{\ulweight}% anniffiniedig
+\patchcmd{\init@series@setup}{cmr,cmss,cmtt,lcmss,lcmtt,lmr,lmss,lmtt}{cmr,cmss,cmtt,lcmss,lcmtt,lmr,lmss,lmtt,clm,clm2,clm2j,clmj,clm2js,clm2s,clmjs,clms,clm2jt,clm2t,clmjt,clmt,clm2jv,clm2v,clmjv,clmv,clm2jqs,clm2qs,clmjqs,clmqs}{%
+ \PackageWarning{nfssext-cfr}{%
+ Patching font initialisation macro for serif.%
+ }%
+}{%
+ \PackageWarning{nfssext-cfr}{%
+ Failed to patch font initialisation macro for serif.%
+ }%
+}
+\patchcmd{\init@series@setup}{{cmr,cmss,cmtt,lcmss,lcmtt,lmr,lmss,lmtt}}{{cmr,cmss,cmtt,lcmss,lcmtt,lmr,lmss,lmtt,clm,clm2,clm2j,clmj,clm2js,clm2s,clmjs,clms,clm2jt,clm2t,clmjt,clmt,clm2jv,clm2v,clmjv,clmv,clm2jqs,clm2qs,clmjqs,clmqs}}{%
+ \PackageWarning{nfssext-cfr}{%
+ Patching font initialisation macro for sans.%
+ }%
+}{%
+ \PackageWarning{nfssext-cfr}{%
+ Failed to patch font initialisation macro for sans.%
+ }%
+}
+\patchcmd{\init@series@setup}{{cmr,cmss,cmtt,lcmss,lcmtt,lmr,lmss,lmtt}}{{cmr,cmss,cmtt,lcmss,lcmtt,lmr,lmss,lmtt,clm,clm2,clm2j,clmj,clm2js,clm2s,clmjs,clms,clm2jt,clm2t,clmjt,clmt,clm2jv,clm2v,clmjv,clmv,clm2jqs,clm2qs,clmjqs,clmqs}}{%
+ \PackageWarning{nfssext-cfr}{%
+ Patching font initialisation macro for typewriter.%
+ }%
+}{%
+ \PackageWarning{nfssext-cfr}{%
+ Failed to patch font initialisation macro for typewriter.%
+ }%
+}
+\endinput
+%%
+%% End of file `nfssext-cfr-nnfss.sty'.
diff --git a/Master/texmf-dist/tex/latex/nfssext-cfr/nfssext-cfr.sty b/Master/texmf-dist/tex/latex/nfssext-cfr/nfssext-cfr.sty
index 03d19d2e595..32438edbf1e 100644
--- a/Master/texmf-dist/tex/latex/nfssext-cfr/nfssext-cfr.sty
+++ b/Master/texmf-dist/tex/latex/nfssext-cfr/nfssext-cfr.sty
@@ -1,605 +1,152 @@
-%% nfssext-cfr.sty
-%% Additions and changes are copyright 2017 Clea F. Rees
-%% Code from nfssext.sty copyright 2003 Philipp Lehman (see below)
-%
-% 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 Clea F. Rees.
-%
-% This work consists of the file nfssext-cfr.sty.
-%
-% The file nfssext-cfr.sty is a derived work under the terms of the
-% LPPL. It is based on version 1.2 of nfssext.sty which is part of The
-% Font Installation Guide by Philipp Lehman. A copy of the The Font
-% Installation Guide, including the unmodified version of nfssext.sty
-% is available from
-% http://tug.ctan.org/cgi-bin/ctanPackageInformation.py?id=fontinstallationguide.
-% nfssext.sty is part of the included archive figuide-examples.tar.gz
-% which consists of examples and templates released under the LPPL.
-% nfssext.sty is included in the files for tutorials 3, 5 and 6.
-%
-% 2017-03-28: modify \tmstyle and \tvstyle to unmerge sans and other
-% typewriter before mergining appropriate variant
-%
+%%
+%% This is file `nfssext-cfr.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% nfssext-cfr.dtx (with options: `sty')
+%% Additions and changes Copyright (C) 2008-2024 Clea F. Rees.
+%% Code from fontinstallationguide Copyright (C) 2002-2004 Philipp Lehman (see below)
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This work consists of all files listed in manifest.txt.
+%%
+%%
+%% The file nfssext-cfr.sty is a derived work under the terms of the LPPL.
+%% It is based on version 1.2 of nfssext.sty which is supplied with
+%% The Font Installation Guide by Philipp Lehman. A copy of The Font Installation Guide, including an
+%% unmodified version of nfssext.sty is available from
+%% https://tug.ctan.org/pkg/fontinstallationguide.
+%% nfssext.sty is part of the included archive figuide-examples.tar.gz
+%% which consists of examples and templates released under the LPPL.
+%% nfssext.sty is included in the files for tutorials 3, 5 and 6.
+%%
+%% The main modifications made to this file are described in nfssext-cfr.dtx.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{svn-prov}
-\ProvidesPackageSVN{$Id: nfssext-cfr.sty 6140 2017-03-28 18:07:31Z cfrees $}[\revinfo{} specially mangled by cfr; based on 2003/03/14 v1.2 Experimental NFSS Extensions]
-%:cfr-added: use ifthen
-\RequirePackage{ifthen}
-%:end-added
-\newcommand*{\exfs@tempa}{}
-\newcommand*{\exfs@tempb}{}
-%:cfr-added: extra variable (\exfs@tempf)
-\newcommand*{\exfs@tempf}{}
-%:end-added
-\newcommand*{\exfs@try@family}[2][]{%
- \let\exfs@tempa\relax
- \begingroup
- \fontfamily{#2}\try@load@fontshape
- \expandafter\ifx\csname\curr@fontshape\endcsname\relax
- \edef\exfs@tempa{#1}%
- \ifx\exfs@tempa\@empty
- \PackageWarning{nfssext}{%
- Font family '\f@encoding/#2' not available\MessageBreak
- Ignoring font switch}%
- \else
- \PackageInfo{nfssext}{%
- Font family '\f@encoding/#2' not available\MessageBreak
- Font family '\f@encoding/#1' tried instead}%
- \exfs@try@family{#1}%
- \fi
- \else
- \gdef\exfs@tempa{\fontfamily{#2}\selectfont}%
- \fi
- \endgroup
- \exfs@tempa}
-%:cfr-added exfs@try@series
-\newcommand*{\exfs@try@series}[2][]{%
- \let\exfs@tempa\relax
- \begingroup
- \fontseries{#2}\try@load@fontshape
- \expandafter\ifx\csname\curr@fontshape\endcsname\relax
- \edef\exfs@tempa{#1}%
- \ifx\exfs@tempa\@empty
- \PackageWarning{nfssext-cfr}{%
- Font series '\f@encoding/\f@family/#2' not available\MessageBreak
- Ignoring font switch}%
- \else
- \PackageInfo{nfssext-cfr}{%
- Font family '\f@encoding/\f@family/#2' not available\MessageBreak
- Font family '\f@encoding/\f@family/#1' tried instead}%
- \exfs@try@series{#1}%
- \fi
- \else
- \gdef\exfs@tempa{\fontseries{#2}\selectfont}%
- \fi
- \endgroup
- \exfs@tempa}
-%:end-added
-\def\exfs@get@base#1#2#3#4\@nil{#1#2#3}
-%:cfr-added:more \exfs@ commands (get@variants, next, shift, first, part, second)
-\def\exfs@get@variants#1#2#3#4\@nil{#4}
-\def\exfs@next#1#2\@nil{#1}
-\def\exfs@shift#1#2\@nil{#2}
-\def\exfs@first#1#2\@nil{#1}
-\def\exfs@part#1#2\@nil{#2}
-\def\exfs@second#1#2#3\@nil{#2}
-%:end-added
-\DeclareRobustCommand{\lnstyle}{%
- \not@math@alphabet\lnstyle\relax
- \exfs@try@family[\expandafter\exfs@get@base\f@family\@nil]%
- {\expandafter\exfs@get@base\f@family\@nil x}}
-\DeclareRobustCommand{\osstyle}{%
- \not@math@alphabet\osstyle\relax
- \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil j}}
-\DeclareRobustCommand{\instyle}{%
- \not@math@alphabet\instyle\relax
- \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil 0}}
-\DeclareRobustCommand{\sustyle}{%
- \not@math@alphabet\sustyle\relax
- \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil 1}}
-\DeclareRobustCommand{\swstyle}{%
- \not@math@alphabet\swstyle\relax
- \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil w}}
-%:cfr-added - merge families
-\newcommand*\exfs@merge@families[1]{%
- \edef\exfs@tempf{#1}%
- \edef\tempa{\expandafter\exfs@get@variants\f@family\@nil}%
- \edef\tempo{2j}%
- \let\exfs@tempq\@empty
- \def\exfs@tempg{}%
- \newif\ifadded
- \addedfalse
- % check whether there are variants - if not just use the requested addition
- \ifx\tempa\@empty
- \edef\exfs@tempq{\exfs@tempf}%
- \addedtrue
- \else
- \gdef\set{0,1,2,a,d,e,f,h,j,l,p,q,s,t,v,w}% these are the variants to consider - the order here and in the font name is crucial
- \ifx\tempo\exfs@tempf
- \@for \xx:=\set \do {%
- % check whether there are variants left - if not set the ``next variant'' to empty
- \ifx\tempa\@empty
- \let\exfs@tempn\@empty
- \else
- % o/w get the next variant
- \edef\exfs@tempn{\expandafter\exfs@next\tempa\@nil}%
- \fi
- \edef\tempt{2}%
- \edef\tempj{j}%
- % if the next variant is 2 or j, ignore it
- \ifx\exfs@tempn\tempt
- \edef\tempa{\expandafter\exfs@shift\tempa\@nil}%
- \fi
- \ifx\exfs@tempn\tempj % if the next variant is j, ignore it
- \edef\tempa{\expandafter\exfs@shift\tempa\@nil}%
- \fi
- % see if the current value is either 2 or j and add it if so and if needed
- \ifx\tempt\xx
- \edef\exfs@tempg{\exfs@tempg\xx}%
- \else
- \ifx\tempj\xx % if the current value is j, we're done
- \edef\exfs@tempq{\exfs@tempg\xx\tempa}%
- \let\tempa\@empty
- \addedtrue
- \else
- % o/w see if the current value matches the next variant
- \ifx\xx\exfs@tempn
- \edef\exfs@tempg{\exfs@tempg\xx}%
- \edef\tempa{\expandafter\exfs@shift\tempa\@nil}%
- \fi
- \fi
- \fi
- }%
- \else
- \@for \xx:=\set \do {%
- % check whether there are variants left and, if not, add the addition if needed
- \ifx\tempa\@empty
- \ifadded
- \else
- \edef\exfs@tempq{\exfs@tempg\exfs@tempf}%
- \addedtrue
- \fi
- \else
- % o/w get the next variant
- \edef\exfs@tempn{\expandafter\exfs@next\tempa\@nil}%
- % if the new token equals the next variant, combine whatever is saved in \exfs@tempg with whatever remains in \tempa
- \ifx\exfs@tempn\exfs@tempf
- \edef\exfs@tempq{\exfs@tempg\tempa}%
- \addedtrue
- \let\tempa\@empty
- \else
- % o/w, if the current value matches the requested addition, add it in
- \ifx\exfs@tempf\xx
- \edef\exfs@tempq{\exfs@tempg\xx\tempa}%
- \addedtrue
- \let\tempa\@empty
- \else
- % o/w, if the current value matches the next variant, shift
- \ifx\exfs@tempn\xx
- \edef\exfs@tempg{\exfs@tempg\xx}%
- \edef\tempa{\expandafter\exfs@shift\tempa\@nil}%
- \fi
- \fi
- \fi
- \fi
- }%
- \fi
- \fi
- \ifx\exfs@tempq\@empty
- \PackageError{nfssext-cfr}{Something is wrong here. Ignoring font switching command.}{}%
- \else
- \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil \exfs@tempq}%
- \fi}
-\DeclareRobustCommand{\pstyle}{% proportional figures
- \not@math@alphabet\pstyle\relax
- \exfs@merge@families{2}}
-\DeclareRobustCommand{\tistyle}{% titling/display
- \not@math@alphabet\tistyle\relax
- \exfs@merge@families{d}}
-\DeclareRobustCommand{\ostyle}{% oldstyle figures (cf. original osstyle above)
- \not@math@alphabet\ostyle\relax
- \exfs@merge@families{j}}
-% combined command for proportional oldstyle
-\DeclareRobustCommand{\postyle}{%
- \not@math@alphabet\postyle\relax
- \exfs@merge@families{2j}}
-%note that this command is for use when the light version is a separate family rather than a weight variant (e.g. when you've got light, light bold etc. as well as regular weights)
-\DeclareRobustCommand{\ltstyle}{%
- \not@math@alphabet\ltstyle\relax
- \exfs@merge@families{l}}
-%let's hope there aren't any fonts with a light family *and* an outline/openface/blank version
-\DeclareRobustCommand{\ofstyle}{%
- \not@math@alphabet\ofstyle\relax
- \exfs@merge@families{l}}
-\DeclareRobustCommand{\altstyle}{% alternative style
- \not@math@alphabet\altstyle\relax
- \exfs@merge@families{a}}
-\DeclareRobustCommand{\regstyle}{% ``regular'' style
- \not@math@alphabet\regstyle\relax
- \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil}}
-\DeclareRobustCommand{\embossstyle}{%
- \not@math@alphabet\embossstyle\relax
- \exfs@merge@families{e}}
-\DeclareRobustCommand{\ornamentalstyle}{% intended primarily for decorative initial fonts etc.
- \not@math@alphabet\ornamentalstyle\relax
- \exfs@merge@families{p}}
-\DeclareRobustCommand{\qtstyle}{% quotation style (assumes sans)
- \not@math@alphabet\qtstyle\relax
- \sffamily
- \exfs@merge@families{q}}
-\DeclareRobustCommand{\shstyle}{%
- \not@math@alphabet\shstyle\relax
- \exfs@merge@families{h}}
-\DeclareRobustCommand{\swashstyle}{% an attempt to improve on \swstyle
- \not@math@alphabet\swashstyle\relax
- \exfs@merge@families{w}}
-\DeclareRobustCommand{\tmstyle}{% monowidth typewriter
- \not@math@alphabet\tmstyle\relax
- \exfs@unmerge@families{s}%
- \exfs@unmerge@families{v}%
- \exfs@merge@families{t}}
-\DeclareRobustCommand{\tvstyle}{% variable width typewriter
- \not@math@alphabet\tvstyle\relax
- \exfs@unmerge@families{s}%
- \exfs@unmerge@families{t}%
- \exfs@merge@families{v}}
-%:cfr-added - unmerge families
-\newcounter{taken}%
-\newcommand*\exfs@unmerge@families[1]{%
- \edef\exfs@tempf{#1}%
- \edef\tempa{\expandafter\exfs@get@variants\f@family\@nil}%
- \let\exfs@tempq\@empty
- \edef\exfs@tempg{}%
- \setcounter{taken}{0}%
- % check whether there are variants - if not do nothing
- \ifx\tempa\@empty
- \edef\exfs@tempq{}%
- \else
- % o/w go through the variants to find the one to delete
- \whiledo{\value{taken}<1}{%
- % get the next variant
- \edef\exfs@tempn{\expandafter\exfs@next\tempa\@nil}%
- % see if the next variant is the thing we seek and, if so, eliminate it
- \ifx\exfs@tempf\exfs@tempn
- \edef\tempa{\expandafter\exfs@shift\tempa\@nil}%
- \edef\exfs@tempq{\exfs@tempg\tempa}%
- \stepcounter{taken}%
- % o/w save the next variant and move on if any variants remain
- \else
- \edef\exfs@tempg{\exfs@tempg\exfs@tempn}%
- \edef\tempa{\expandafter\exfs@shift\tempa\@nil}%
- \ifx\tempa\@empty% if there are no variants left, we're done
- \edef\exfs@tempq{\exfs@tempg}%
- \stepcounter{taken}%
- \fi
- \fi
- }%
- \fi
- \exfs@try@family{\expandafter\exfs@get@base\f@family\@nil \exfs@tempq}}
-\DeclareRobustCommand{\tstyle}{% tabular figures
- \not@math@alphabet\tstyle\relax
- \exfs@unmerge@families{2}}
-\DeclareRobustCommand{\lstyle}{% lining figures (cf. command above)
- \not@math@alphabet\lstyle\relax
- \exfs@unmerge@families{j}}
-% make a combined command for tabular lining
-\DeclareRobustCommand{\tlstyle}{%
- \lstyle\tstyle}
-% proportional lining
-\DeclareRobustCommand{\plstyle}{%
- \lstyle\pstyle}
-% tabular oldstyle {?!}
-\DeclareRobustCommand{\tostyle}{%
- \ostyle\tstyle}
-%:end-added % si is italic sc
-\newcommand*{\sidefault}{si}
-\DeclareRobustCommand{\sishape}{%
- \not@math@alphabet\sishape\relax
- \fontshape\sidefault\selectfont}
-%:cfr-added - is this how outline shapes should be handled?
-\newcommand*{\oldefault}{ol}
-\DeclareRobustCommand{\olshape}{%
- \not@math@alphabet\olshape\relax
- \fontshape\oldefault\selectfont}
-\newcommand*{\scoldefault}{scol}
-\DeclareRobustCommand{\scolshape}{%
- \not@math@alphabet\scolshape\relax
- \fontshape\scoldefault\selectfont}
-%\DeclareRobustCommand{\olshape}{%
-% \not@math@alphabet\olshape\relax
-% \exfs@merge@shape{\oldefault}{\scdefault}{\scoldefault}}
-%:fudge
-\newcommand*{\udefault}{u}
-\DeclareRobustCommand{\ushape}{%
- \not@math@alphabet\ushape\relax
- \fontshape\udefault\selectfont}
-\newcommand*{\scudefault}{su}
-\DeclareRobustCommand{\scushape}{%
- \not@math@alphabet\scushape\relax
- \fontshape\scudefault\selectfont}
-%:upright italic
-\newcommand*{\uidefault}{ui}
-\DeclareRobustCommand{\uishape}{%
- \not@math@alphabet\uishape\relax
- \fontshape\uidefault\selectfont}
-%:can i do this for reverse italic?
-\newcommand*{\ridefault}{ri}
-\DeclareRobustCommand{\rishape}{%
- \not@math@alphabet\rishape\relax
- \fontshape\ridefault\selectfont}
-%:end-added
-\newcommand*{\exfs@merge@shape}[3]{%
- \edef\exfs@tempa{#1}%
- \edef\exfs@tempb{#2}%
- \ifx\f@shape\exfs@tempb
- \expandafter\ifx\csname\f@encoding/\f@family/\f@series/#3\endcsname\relax
- \else
- \edef\exfs@tempa{#3}%
- \fi
- \fi
- \fontshape{\exfs@tempa}\selectfont}
-%:cfr-added - merge width changes into series
-\newcommand*{\exfs@font@width}{%
- \edef\exfs@tempf{\expandafter\exfs@first\f@series\@nil }%
- \edef\exfs@temppart{\expandafter\exfs@part\f@series\@nil }%
- \ifx\exfs@temppart\@empty
- \def\exfs@width{}
- \else
- \edef\exfs@temps{\expandafter\exfs@second\f@series\@nil }%
- \ifx\exfs@temps{b}
- \edef\exfs@width{\expandafter\exfs@part\exfs@temps\@nil }%
- \else
- \ifx\exfs@temps{l}
- \edef\exfs@width{\expandafter\exfs@part\exfs@temps\@nil }%
- \else
- \edef\exfs@width{\exfs@temppart}%
- \fi
- \fi
- \fi
- \exfs@width
- }
-\newcommand*{\exfs@merge@width}[1]{%
- \edef\exfs@temph{#1}%
- \edef\exfs@tempf{\expandafter\exfs@first\f@series\@nil }%
- \edef\exfs@temppart{\expandafter\exfs@part\f@series\@nil }%
- \def\tempb{b}%
- \def\templ{l}%
- \ifx\exfs@temppart\@empty
- \def\exfs@series{\expandafter\exfs@tempf\exfs@temph}%
- \else
- \edef\exfs@temps{\expandafter\exfs@second\f@series\@nil }%
- \ifx\exfs@temps\tempb
- \def\exfs@series{\expandafter\exfs@tempf\exfs@temps\exfs@temph}%
- \else
- \ifx\exfs@temps\templ
- \def\exfs@series{\expandafter\exfs@tempf\exfs@temps\exfs@temph}%
- \else
- \def\exfs@series{\expandafter\exfs@tempf\exfs@temph}%
- \fi
- \fi
- \fi
- \exfs@try@series{\exfs@series}}
-% \fontseries\exfs@series\selectfont}
-\newcommand*{\exfs@unmerge@width}{%
- \edef\exfs@tempf{\expandafter\exfs@first\f@series\@nil }%
- \edef\exfs@temppart{\expandafter\exfs@part\f@series\@nil }%
- \def\tempb{b}%
- \def\templ{l}%
- \ifx\exfs@temppart\@empty
- \def\exfs@series{\expandafter\exfs@tempf}%
- \else
- \edef\exfs@temps{\expandafter\exfs@second\f@series\@nil }%
- \ifx\exfs@temps\tempb
- \def\exfs@series{\expandafter\exfs@tempf\exfs@temps}%
- \else
- \ifx\exfs@temps\templ
- \def\exfs@series{\expandafter\exfs@tempf\exfs@temps}%
- \else
- \def\exfs@series{\expandafter\exfs@tempf}%
- \fi
- \fi
- \fi
- \exfs@try@series{\exfs@series}}
-\DeclareRobustCommand{\regwidth}{%
- \not@math@alphabet\regwidth\relax
- \exfs@unmerge@width}
-\newcommand*{\nwdefault}{c}
-\DeclareRobustCommand{\nwwidth}{%
- \not@math@alphabet\nwwidth\relax
- \exfs@merge@width{\nwdefault}}
-\newcommand*{\cddefault}{c}
-\DeclareRobustCommand{\cdwidth}{%
- \not@math@alphabet\cdwidth\relax
- \exfs@merge@width{\cddefault}}
-\newcommand*{\ecdefault}{ec}
-\DeclareRobustCommand{\ecwidth}{%
- \not@math@alphabet\ecwidth\relax
- \exfs@merge@width{\ecdefault}}
-\newcommand*{\ucdefault}{uc}
-\DeclareRobustCommand{\ucwidth}{%
- \not@math@alphabet\ucwidth\relax
- \exfs@merge@width{\ucdefault}}
-\newcommand*{\etdefault}{x}
-\DeclareRobustCommand{\etwidth}{%
- \not@math@alphabet\etwidth\relax
- \exfs@merge@width{\etdefault}}
-\newcommand*{\epdefault}{x}
-\DeclareRobustCommand{\epwidth}{%
- \not@math@alphabet\epwidth\relax
- \exfs@merge@width{\epdefault}}
-\newcommand*{\exdefault}{ex}
-\DeclareRobustCommand{\exwidth}{%
- \not@math@alphabet\exwidth\relax
- \exfs@merge@width{\exdefault}}
-\newcommand*{\uxdefault}{ux}
-\DeclareRobustCommand{\uxwidth}{%
- \not@math@alphabet\uxwidth\relax
- \exfs@merge@width{\uxdefault}}
-%:cfr-added merge weight changes into series
-\newcommand*{\exfs@merge@weight}[1]{%
- \edef\exfs@tempg{#1}%
- \edef\exfs@tempf{\expandafter\exfs@first\f@series\@nil }%
- \edef\exfs@temppart{\expandafter\exfs@part\f@series\@nil }%
- \def\templ{l}%
- \def\tempb{b}%
- %:case when there's no second part, so the single character must be the weight and should be replaced
- \ifx\exfs@temppart\@empty
- \def\exfs@series{\expandafter\exfs@tempg}%
- %:case when there's a second part
- \else
- %:get first character of second part
- \edef\exfs@temps{\expandafter\exfs@second\f@series\@nil }%
- \edef\exfs@tempw{\expandafter\exfs@part\exfs@temps\@nil }%
- %:is the first character b? if so, it is part of the weight and should be replaced
- \ifx\exfs@temps\tempb
- \def\exfs@series{\expandafter\exfs@tempg\exfs@tempw}%
- \else
- %:is the first character l? if so, it is part of the weight and should be replaced
- \ifx\exfs@temps\templ
- \def\exfs@series{\expandafter\exfs@tempg\exfs@tempw}%
- \else
- %:o/w the first character is part of the width and should be retained
- \def\exfs@series{\expandafter\exfs@tempg\exfs@temppart}%
- \fi
- \fi
- \fi
- %\fontseries\exfs@series\selectfont}
- \ifx\exfs@tempg\exfs@series
- \exfs@try@series{\exfs@series}%
- \else
- \exfs@try@series[\exfs@tempg]{\exfs@series}% assume user wants to change weight even if this changes back to the default width
- \fi}
-\newcommand*{\mbdefault}{mb}
-\DeclareRobustCommand{\mbweight}{%
- \not@math@alphabet\mbweight\relax
- \exfs@merge@weight{\mbdefault}}
-\newcommand*{\dbdefault}{db}
-\DeclareRobustCommand{\dbweight}{%
- \not@math@alphabet\dbweight\relax
- \exfs@merge@weight{\dbdefault}}
-\newcommand*{\sbdefault}{sb}
-\DeclareRobustCommand{\sbweight}{%
- \not@math@alphabet\sbweight\relax
- \exfs@merge@weight{\sbdefault}}
-\newcommand*{\ebdefault}{eb}
-\DeclareRobustCommand{\ebweight}{%
- \not@math@alphabet\ebweight\relax
- \exfs@merge@weight{\ebdefault}}
-\newcommand*{\ubdefault}{ub}
-\DeclareRobustCommand{\ubweight}{%
- \not@math@alphabet\ubweight\relax
- \exfs@merge@weight{\ubdefault}}
-\newcommand*{\lgdefault}{l}
-%note - use this if light is a variant weight, rather than a separate family
-\DeclareRobustCommand{\lgweight}{%
- \not@math@alphabet\lgweight\relax
- \exfs@merge@weight{\lgdefault}}
-\newcommand*{\eldefault}{el}
-\DeclareRobustCommand{\elweight}{%
- \not@math@alphabet\elweight\relax
- \exfs@merge@weight{\eldefault}}
-\newcommand*{\uldefault}{ul}
-\DeclareRobustCommand{\ulweight}{%
- \not@math@alphabet\ulweight\relax
- \exfs@merge@weight{\uldefault}}
-%:end-added
-\DeclareRobustCommand{\itshape}{%
- \not@math@alphabet\itshape\mathit
- \exfs@merge@shape{\itdefault}{\scdefault}{\sidefault}}
-% original
-%\DeclareRobustCommand{\scshape}{%
-% \not@math@alphabet\scshape\relax
-% \exfs@merge@shape{\scdefault}{\itdefault}{\sidefault}}
-%:cfr-altered: \scshape
-\DeclareRobustCommand{\scshape}{%
- \not@math@alphabet\scshape\relax
- \def\tempu{u}%
- \def\tempo{ol}%
- \ifx\f@shape\tempu
- \exfs@merge@shape{\scdefault}{\udefault}{\scudefault}%
- \else
- \ifx\f@shape\tempo
- \exfs@merge@shape{\scdefault}{\oldefault}{\scoldefault}%
- \else
- \exfs@merge@shape{\scdefault}{\itdefault}{\sidefault}%
- \fi
- \fi}
-%:end-altered
-\DeclareRobustCommand{\upshape}{%
- \not@math@alphabet\upshape\relax
- \exfs@merge@shape{\updefault}{\sidefault}{\scdefault}}
-\DeclareRobustCommand{\dfshape}{%
- \not@math@alphabet\dfshape\relax
- \fontshape\shapedefault\selectfont}
-\newcommand*{\swshapedefault}{\itdefault}
-\DeclareRobustCommand{\swshape}{%
- \not@math@alphabet\swshape\relax
- \swstyle\fontshape\swshapedefault\selectfont}
-\DeclareTextFontCommand{\textln}{\lnstyle}
-\DeclareTextFontCommand{\textos}{\osstyle}
-\DeclareTextFontCommand{\textin}{\instyle}
-\DeclareTextFontCommand{\textsu}{\sustyle}
-\DeclareTextFontCommand{\textsi}{\sishape}
-\DeclareTextFontCommand{\textdf}{\dfshape}
-\DeclareTextFontCommand{\textsw}{\swshape}
-%:cfr-added
-%:families
-\DeclareTextFontCommand{\textti}{\tistyle}
-\DeclareTextFontCommand{\textlt}{\ltstyle}
-\DeclareTextFontCommand{\textof}{\ofstyle} % open-face (or outline or blank) style
-\DeclareTextFontCommand{\textalt}{\altstyle} % alternative style
-\DeclareTextFontCommand{\textreg}{\regstyle} % ``regular'' style
-\DeclareTextFontCommand{\emboss}{\embossstyle}
-\DeclareTextFontCommand{\textorn}{\ornamentalstyle} % intended primarily for decorative initials etc.
-\DeclareTextFontCommand{\textqt}{\qtstyle}
-\DeclareTextFontCommand{\textsh}{\shstyle} % shadowed style
-\DeclareTextFontCommand{\texttm}{\tmstyle}
-\DeclareTextFontCommand{\texttv}{\tvstyle}
-%:families - figures
-\DeclareTextFontCommand{\textl}{\lstyle}
-\DeclareTextFontCommand{\texto}{\ostyle}
-\DeclareTextFontCommand{\textp}{\pstyle}
-\DeclareTextFontCommand{\textt}{\tstyle}
-\DeclareTextFontCommand{\textpl}{\plstyle}
-\DeclareTextFontCommand{\textpo}{\postyle}
-\DeclareTextFontCommand{\texttl}{\tlstyle}
-\DeclareTextFontCommand{\textto}{\tostyle}
-%:shapes
-\DeclareTextFontCommand{\textol}{\olshape} % outline
-\DeclareTextFontCommand{\textswash}{\swashstyle} % an attempt to improve on \textsw
-\DeclareTextFontCommand{\textu}{\ushape}
-\DeclareTextFontCommand{\textscu}{\scushape}
-\DeclareTextFontCommand{\textui}{\uishape} % upright italic
-\DeclareTextFontCommand{\textri}{\rishape} % reverse italic
-%:widths
-\DeclareTextFontCommand{\textnw}{\nwwidth}
-\DeclareTextFontCommand{\textcd}{\cdwidth}
-\DeclareTextFontCommand{\textec}{\ecwidth}
-\DeclareTextFontCommand{\textuc}{\ucwidth}
-\DeclareTextFontCommand{\textet}{\etwidth}
-\DeclareTextFontCommand{\textep}{\epwidth}
-\DeclareTextFontCommand{\textex}{\exwidth}
-\DeclareTextFontCommand{\textux}{\uxwidth}
-\DeclareTextFontCommand{\textrw}{\regwidth}
-%:weights
-\DeclareTextFontCommand{\textmb}{\mbweight}
-\DeclareTextFontCommand{\textdb}{\dbweight}
-\DeclareTextFontCommand{\textsb}{\sbweight}
-\DeclareTextFontCommand{\texteb}{\ebweight}
-\DeclareTextFontCommand{\textub}{\ubweight}
-\DeclareTextFontCommand{\textlg}{\lgweight}
-\DeclareTextFontCommand{\textel}{\elweight}
-\DeclareTextFontCommand{\textul}{\ulweight}
-%end-added
+\ProvidesPackageSVN[\filebase.sty]{$Id: nfssext-cfr.dtx 10366 2024-09-18 14:25:21Z cfrees $}[v1.0 \revinfo{} extensions for NFSS and NNFSS; based on 2003/03/14 v1.2 Experimental NFSS Extensions]
+\DefineFileInfoSVN
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newif\if@nfssextcfr@digonnew
+\@nfssextcfr@digonnewtrue
+\@ifundefined{ExplLoaderFileDate}{%
+ \IfFileExists{expl3.sty}{%
+ \RequirePackage{expl3}%
+ }{%
+ \RequirePackage{nfssext-cfr-nfss}%
+ \@nfssextcfr@digonnewfalse
+ }%
+}{}
+\if@nfssextcfr@digonnew
+ \@ifl@t@r\ExplLoaderFileDate{2022-02-24}{%
+ }{%
+ \RequirePackage{nfssext-cfr-nfss}%
+ \@nfssextcfr@digonnewfalse
+ }%
+\fi
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\if@nfssextcfr@digonnew
+\newif\ifexfs@debug
+\ExplSyntaxOn
+\prop_gput:Nnn \g_msg_module_name_prop { nfssext-cfr } { exfs }
+\keys_define:nn { exfs }
+{
+ compat .bool_gset:N = \g__exfs_compat_bool,
+ compat .default:n = true,
+ compat .initial:n = false,
+ compat .usage:n = preamble,
+ debug .legacy_if_gset:n = exfs@debug,
+ debug .initial:n = false,
+ debug .default:n = true,
+ force .bool_gset:N = \g__exfs_force_bool,
+ force .default:n = true,
+ force .initial:n = false,
+ force .usage:n = preamble,
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\providecommand \IfFormatAtLeastTF { \@ifl@t@r \fmtversion }
+\IfFormatAtLeastTF { 2022-06-01 }
+{
+ \ProcessKeyOptions [ exfs ]
+}{
+ \RequirePackage { l3keys2e }
+ \ProcessKeysOptions { exfs }
+ \NewDocumentCommand \ProcessKeyOptions { o }
+ {
+ \IfValueTF { #1 } { \ProcessKeysOptions { #1 } }
+ { \PackageError{nfssext-cfr}{
+ Optional~argument~mandatory~on~kernels~this~old.\MessageBreak
+ Please~specify~the~module~whose~keys~should~be~processed
+ }{
+ \protect\ProcessKeyOptions~only~passes~keys~to~
+ \protect\ProcessKeyOptions\MessageBreak
+ on~older~kernels~for~the~convenience~of~package~authors.~
+ Since~\protect\ProcessKeysOptions\MessageBreak
+ takes~an~argument,~the~optional~argument~to~
+ \protect\ProcessKeyOptions~is~required
+ }
+ }
+ }
+}
+\IfFormatAtLeastTF { 2020-10-01 }{
+}{
+ \RequirePackage { xparse }
+ \providecommand \ExpandArgs [1]
+ { \cs_if_exist_use:c { exp_args:N #1 } }
+}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\RequirePackage{etoolbox}
+\msg_new:nnn { nfssext-cfr } { compat }
+{
+ You ~ or ~ a ~ font-support ~ package ~ have ~ loaded ~ me ~ ( line ~ \msg_line_number: ) ~ with ~ the ~ compat ~ option. ~
+ This ~ means ~ the ~ package ~ may ~ require ~ updating. ~
+ Update ~ the ~ package ~ if ~ necessary ~ and ~ use ~ compat=false ~ when ~ loading ~ me.
+}
+\msg_new:nnn { nfssext-cfr } { force }
+{
+ You ~ or ~ a ~ font-support ~ package ~ have ~ loaded ~ me ~ ( line ~ \msg_line_number: ) ~ with ~ the ~ force ~ option. ~
+ This ~ is ~ a ~ desperate ~ measure ~ of ~ last ~ resort. ~
+ **Breakage ~ is ~ expected.**
+}
+\hook_gput_code:nnn { begindocument/before } { . }
+{
+ \cs_if_exist:NTF \init@series@setup
+ {
+ \bool_if:NTF \g__exfs_force_bool
+ {
+ \msg_warning:nn { nfssext-cfr } { force }
+ \RequirePackage {nfssext-cfr-nfss}
+ }{
+ \bool_if:NT \g__exfs_compat_bool
+ {
+ \msg_warning:nn { nfssext-cfr } { compat }
+ }
+ \RequirePackage {nfssext-cfr-nnfss}
+ }
+ }{% achosiad heb broblemau - diolch byth!
+ \RequirePackage {nfssext-cfr-nfss}
+ }
+}
+\cs_new_protected_nopar:Nn \__exfs_set:n
+{
+ \keys_set:nn { exfs } { #1 }
+}
+\cs_set_eq:NN \nfssextset \__exfs_set:n
+\ExplSyntaxOff
\newcommand*{\DeclareTextOrnament}[7]{%
\expandafter\def\csname#1@orn\@roman#2\endcsname{#3/#4/#5/#6/#7}}
\begingroup
@@ -626,16 +173,19 @@
\selectfont\char\exfs@tempa
\endgroup
\fi}
-%:add microtype hooks
-%:partly from microtype docs; partly from MinionPro package
\def\nfssextcfr@MT@Hook{%
-% \DeclareMicrotypeVariants{x,j,w,a,d,0,1}% this is the default declaration according to the docs
-% \DeclareMicrotypeVariants*{2,e,h,l}% this should *append* the variants (what do I use 'f' for? better take it out...)
- \DeclareMicrotypeVariants*{2,2d,2dj,2j,dj,e,h,l}% is this necessary or would the previous line be enough?
- }
+ \DeclareMicrotypeVariants*{2,2d,2dj,2j,dj,e,h,l}% is this necessary or would the previous line be enough?
+}
\@ifpackageloaded{microtype}{%
- \nfssextcfr@MT@Hook}{%
+ \PackageWarning{nfssext-cfr}{%
+ You have loaded me (or a font support package which loads me)\MessageBreak
+ after loading microtype, but microtype should be loaded after\MessageBreak
+ all font defaults have been setup}%
+ \nfssextcfr@MT@Hook
+}{%
\@ifundefined{Microtype@Hook}{%
- \let\Microtype@Hook\nfssextcfr@MT@Hook}{% MinionPro has \global before this
- \g@addto@macro\Microtype@Hook{\nfssextcfr@MT@Hook}}}
+ \let\Microtype@Hook\nfssextcfr@MT@Hook}{% MinionPro has \global before this
+ \g@addto@macro\Microtype@Hook{\nfssextcfr@MT@Hook}}}
\endinput
+%%
+%% End of file `nfssext-cfr.sty'.
diff --git a/Master/texmf-dist/tex/latex/nicematrix/nicematrix.sty b/Master/texmf-dist/tex/latex/nicematrix/nicematrix.sty
index f08f221f1d0..153a9e97135 100644
--- a/Master/texmf-dist/tex/latex/nicematrix/nicematrix.sty
+++ b/Master/texmf-dist/tex/latex/nicematrix/nicematrix.sty
@@ -18,8 +18,8 @@
%% and version 1.3 or later is part of all distributions of
%% LaTeX version 2005/12/01 or later.
%%
-\def\myfileversion{6.28b}
-\def\myfiledate{2024/06/29}
+\def\myfileversion{6.28c}
+\def\myfiledate{2024/08/22}
\RequirePackage{pgfcore}
\usepgfmodule{shapes}
\RequirePackage{l3keys2e}
@@ -811,7 +811,7 @@
\tl_new:N \l__nicematrix_xdots_color_tl
\tl_new:N \l__nicematrix_delimiters_color_tl
\bool_new:N \l__nicematrix_delimiters_max_width_bool
-\keys_define:nn { NiceMatrix / xdots }
+\keys_define:nn { nicematrix / xdots }
{
shorten-start .code:n =
\hook_gput_code:nnn { begindocument } { . }
@@ -855,7 +855,7 @@
draw-first .code:n = \prg_do_nothing: ,
unknown .code:n = \__nicematrix_error:n { Unknown~key~for~xdots }
}
-\keys_define:nn { NiceMatrix / rules }
+\keys_define:nn { nicematrix / rules }
{
color .tl_set:N = \l__nicematrix_rules_color_tl ,
color .value_required:n = true ,
@@ -863,7 +863,7 @@
width .value_required:n = true ,
unknown .code:n = \__nicematrix_error:n { Unknown~key~for~rules }
}
-\keys_define:nn { NiceMatrix / Global }
+\keys_define:nn { nicematrix / Global }
{
ampersand-in-blocks .bool_set:N = \l__nicematrix_amp_in_blocks_bool ,
ampersand-in-blocks .default:n = true ,
@@ -875,7 +875,7 @@
rounded-corners .dim_set:N = \l__nicematrix_tab_rounded_corners_dim ,
rounded-corners .default:n = 4 pt ,
custom-line .code:n = \__nicematrix_custom_line:n { #1 } ,
- rules .code:n = \keys_set:nn { NiceMatrix / rules } { #1 } ,
+ rules .code:n = \keys_set:nn { nicematrix / rules } { #1 } ,
rules .value_required:n = true ,
standard-cline .bool_set:N = \l__nicematrix_standard_cline_bool ,
standard-cline .default:n = true ,
@@ -889,7 +889,7 @@
cell-space-bottom-limit = #1 ,
} ,
cell-space-limits .value_required:n = true ,
- xdots .code:n = \keys_set:nn { NiceMatrix / xdots } { #1 } ,
+ xdots .code:n = \keys_set:nn { nicematrix / xdots } { #1 } ,
light-syntax .code:n =
\bool_set_true:N \l__nicematrix_light_syntax_bool
\bool_set_false:N \l__nicematrix_light_syntax_expanded_bool ,
@@ -965,7 +965,7 @@
pgf-node-code .tl_set:N = \l__nicematrix_pgf_node_code_tl ,
pgf-node-code .value_required:n = true
}
-\keys_define:nn { NiceMatrix / Env }
+\keys_define:nn { nicematrix / environments }
{
corners .clist_set:N = \l__nicematrix_corners_clist ,
corners .default:n = { NW , SW , NE , SE } ,
@@ -1006,7 +1006,7 @@
color-inside .value_forbidden:n = true ,
colortbl-like .meta:n = color-inside
}
-\keys_define:nn { NiceMatrix / notes }
+\keys_define:nn { nicematrix / notes }
{
para .bool_set:N = \l__nicematrix_notes_para_bool ,
para .default:n = true ,
@@ -1046,62 +1046,62 @@
detect-duplicates .default:n = true ,
unknown .code:n = \__nicematrix_error:n { Unknown~key~for~notes }
}
-\keys_define:nn { NiceMatrix / delimiters }
+\keys_define:nn { nicematrix / delimiters }
{
max-width .bool_set:N = \l__nicematrix_delimiters_max_width_bool ,
max-width .default:n = true ,
color .tl_set:N = \l__nicematrix_delimiters_color_tl ,
color .value_required:n = true ,
}
-\keys_define:nn { NiceMatrix }
+\keys_define:nn { nicematrix }
{
NiceMatrixOptions .inherit:n =
- { NiceMatrix / Global } ,
- NiceMatrixOptions / xdots .inherit:n = NiceMatrix / xdots ,
- NiceMatrixOptions / rules .inherit:n = NiceMatrix / rules ,
- NiceMatrixOptions / notes .inherit:n = NiceMatrix / notes ,
- NiceMatrixOptions / sub-matrix .inherit:n = NiceMatrix / sub-matrix ,
- SubMatrix / rules .inherit:n = NiceMatrix / rules ,
- CodeAfter / xdots .inherit:n = NiceMatrix / xdots ,
- CodeBefore / sub-matrix .inherit:n = NiceMatrix / sub-matrix ,
- CodeAfter / sub-matrix .inherit:n = NiceMatrix / sub-matrix ,
+ { nicematrix / Global } ,
+ NiceMatrixOptions / xdots .inherit:n = nicematrix / xdots ,
+ NiceMatrixOptions / rules .inherit:n = nicematrix / rules ,
+ NiceMatrixOptions / notes .inherit:n = nicematrix / notes ,
+ NiceMatrixOptions / sub-matrix .inherit:n = nicematrix / sub-matrix ,
+ SubMatrix / rules .inherit:n = nicematrix / rules ,
+ CodeAfter / xdots .inherit:n = nicematrix / xdots ,
+ CodeBefore / sub-matrix .inherit:n = nicematrix / sub-matrix ,
+ CodeAfter / sub-matrix .inherit:n = nicematrix / sub-matrix ,
NiceMatrix .inherit:n =
{
- NiceMatrix / Global ,
- NiceMatrix / Env ,
+ nicematrix / Global ,
+ nicematrix / environments ,
} ,
- NiceMatrix / xdots .inherit:n = NiceMatrix / xdots ,
- NiceMatrix / rules .inherit:n = NiceMatrix / rules ,
+ NiceMatrix / xdots .inherit:n = nicematrix / xdots ,
+ NiceMatrix / rules .inherit:n = nicematrix / rules ,
NiceTabular .inherit:n =
{
- NiceMatrix / Global ,
- NiceMatrix / Env
+ nicematrix / Global ,
+ nicematrix / environments
} ,
- NiceTabular / xdots .inherit:n = NiceMatrix / xdots ,
- NiceTabular / rules .inherit:n = NiceMatrix / rules ,
- NiceTabular / notes .inherit:n = NiceMatrix / notes ,
+ NiceTabular / xdots .inherit:n = nicematrix / xdots ,
+ NiceTabular / rules .inherit:n = nicematrix / rules ,
+ NiceTabular / notes .inherit:n = nicematrix / notes ,
NiceArray .inherit:n =
{
- NiceMatrix / Global ,
- NiceMatrix / Env ,
+ nicematrix / Global ,
+ nicematrix / environments ,
} ,
- NiceArray / xdots .inherit:n = NiceMatrix / xdots ,
- NiceArray / rules .inherit:n = NiceMatrix / rules ,
+ NiceArray / xdots .inherit:n = nicematrix / xdots ,
+ NiceArray / rules .inherit:n = nicematrix / rules ,
pNiceArray .inherit:n =
{
- NiceMatrix / Global ,
- NiceMatrix / Env ,
+ nicematrix / Global ,
+ nicematrix / environments ,
} ,
- pNiceArray / xdots .inherit:n = NiceMatrix / xdots ,
- pNiceArray / rules .inherit:n = NiceMatrix / rules ,
+ pNiceArray / xdots .inherit:n = nicematrix / xdots ,
+ pNiceArray / rules .inherit:n = nicematrix / rules ,
}
-\keys_define:nn { NiceMatrix / NiceMatrixOptions }
+\keys_define:nn { nicematrix / NiceMatrixOptions }
{
delimiters / color .tl_set:N = \l__nicematrix_delimiters_color_tl ,
delimiters / color .value_required:n = true ,
delimiters / max-width .bool_set:N = \l__nicematrix_delimiters_max_width_bool ,
delimiters / max-width .default:n = true ,
- delimiters .code:n = \keys_set:nn { NiceMatrix / delimiters } { #1 } ,
+ delimiters .code:n = \keys_set:nn { nicematrix / delimiters } { #1 } ,
delimiters .value_required:n = true ,
width .dim_set:N = \l__nicematrix_width_dim ,
width .value_required:n = true ,
@@ -1121,9 +1121,9 @@
allow-duplicate-names .code:n =
\__nicematrix_msg_redirect_name:nn { Duplicate~name } { none } ,
allow-duplicate-names .value_forbidden:n = true ,
- notes .code:n = \keys_set:nn { NiceMatrix / notes } { #1 } ,
+ notes .code:n = \keys_set:nn { nicematrix / notes } { #1 } ,
notes .value_required:n = true ,
- sub-matrix .code:n = \keys_set:nn { NiceMatrix / sub-matrix } { #1 } ,
+ sub-matrix .code:n = \keys_set:nn { nicematrix / sub-matrix } { #1 } ,
sub-matrix .value_required:n = true ,
matrix / columns-type .tl_set:N = \l__nicematrix_columns_type_tl ,
matrix / columns-type .value_required:n = true ,
@@ -1132,8 +1132,8 @@
unknown .code:n = \__nicematrix_error:n { Unknown~key~for~NiceMatrixOptions }
}
\NewDocumentCommand \NiceMatrixOptions { m }
- { \keys_set:nn { NiceMatrix / NiceMatrixOptions } { #1 } }
-\keys_define:nn { NiceMatrix / NiceMatrix }
+ { \keys_set:nn { nicematrix / NiceMatrixOptions } { #1 } }
+\keys_define:nn { nicematrix / NiceMatrix }
{
last-col .code:n = \tl_if_empty:nTF { #1 }
{
@@ -1149,13 +1149,13 @@
delimiters / color .value_required:n = true ,
delimiters / max-width .bool_set:N = \l__nicematrix_delimiters_max_width_bool ,
delimiters / max-width .default:n = true ,
- delimiters .code:n = \keys_set:nn { NiceMatrix / delimiters } { #1 } ,
+ delimiters .code:n = \keys_set:nn { nicematrix / delimiters } { #1 } ,
delimiters .value_required:n = true ,
small .bool_set:N = \l__nicematrix_small_bool ,
small .value_forbidden:n = true ,
unknown .code:n = \__nicematrix_error:n { Unknown~key~for~NiceMatrix }
}
-\keys_define:nn { NiceMatrix / NiceArray }
+\keys_define:nn { nicematrix / NiceArray }
{
small .bool_set:N = \l__nicematrix_small_bool ,
small .value_forbidden:n = true ,
@@ -1166,7 +1166,7 @@
l .code:n = \__nicematrix_error:n { r~or~l~with~preamble } ,
unknown .code:n = \__nicematrix_error:n { Unknown~key~for~NiceArray }
}
-\keys_define:nn { NiceMatrix / pNiceArray }
+\keys_define:nn { nicematrix / pNiceArray }
{
first-col .code:n = \int_zero:N \l__nicematrix_first_col_int ,
last-col .code:n = \tl_if_empty:nF {#1}
@@ -1177,7 +1177,7 @@
delimiters / color .value_required:n = true ,
delimiters / max-width .bool_set:N = \l__nicematrix_delimiters_max_width_bool ,
delimiters / max-width .default:n = true ,
- delimiters .code:n = \keys_set:nn { NiceMatrix / delimiters } { #1 } ,
+ delimiters .code:n = \keys_set:nn { nicematrix / delimiters } { #1 } ,
delimiters .value_required:n = true ,
small .bool_set:N = \l__nicematrix_small_bool ,
small .value_forbidden:n = true ,
@@ -1185,12 +1185,12 @@
l .code:n = \__nicematrix_error:n { r~or~l~with~preamble } ,
unknown .code:n = \__nicematrix_error:n { Unknown~key~for~NiceMatrix }
}
-\keys_define:nn { NiceMatrix / NiceTabular }
+\keys_define:nn { nicematrix / NiceTabular }
{
width .code:n = \dim_set:Nn \l__nicematrix_width_dim { #1 }
\bool_set_true:N \l__nicematrix_width_used_bool ,
width .value_required:n = true ,
- notes .code:n = \keys_set:nn { NiceMatrix / notes } { #1 } ,
+ notes .code:n = \keys_set:nn { nicematrix / notes } { #1 } ,
tabularnote .tl_gset:N = \g__nicematrix_tabularnote_tl ,
tabularnote .value_required:n = true ,
caption .tl_set:N = \l__nicematrix_caption_tl ,
@@ -1206,14 +1206,14 @@
l .code:n = \__nicematrix_error:n { r~or~l~with~preamble } ,
unknown .code:n = \__nicematrix_error:n { Unknown~key~for~NiceTabular }
}
-\keys_define:nn { NiceMatrix / CodeAfter }
+\keys_define:nn { nicematrix / CodeAfter }
{
delimiters / color .tl_set:N = \l__nicematrix_delimiters_color_tl ,
delimiters / color .value_required:n = true ,
- rules .code:n = \keys_set:nn { NiceMatrix / rules } { #1 } ,
+ rules .code:n = \keys_set:nn { nicematrix / rules } { #1 } ,
rules .value_required:n = true ,
- xdots .code:n = \keys_set:nn { NiceMatrix / xdots } { #1 } ,
- sub-matrix .code:n = \keys_set:nn { NiceMatrix / sub-matrix } { #1 } ,
+ xdots .code:n = \keys_set:nn { nicematrix / xdots } { #1 } ,
+ sub-matrix .code:n = \keys_set:nn { nicematrix / sub-matrix } { #1 } ,
sub-matrix .value_required:n = true ,
unknown .code:n = \__nicematrix_error:n { Unknown~key~for~CodeAfter }
}
@@ -1839,11 +1839,11 @@
\bool_if:NT \g__nicematrix_recreate_cell_nodes_bool
{ \tl_put_left:Nn \__nicematrix_node_for_cell: \__nicematrix_patch_node_for_cell: }
}
-\keys_define:nn { NiceMatrix / CodeBefore }
+\keys_define:nn { nicematrix / CodeBefore }
{
create-cell-nodes .bool_gset:N = \g__nicematrix_recreate_cell_nodes_bool ,
create-cell-nodes .default:n = true ,
- sub-matrix .code:n = \keys_set:nn { NiceMatrix / sub-matrix } { #1 } ,
+ sub-matrix .code:n = \keys_set:nn { nicematrix / sub-matrix } { #1 } ,
sub-matrix .value_required:n = true ,
delimiters / color .tl_set:N = \l__nicematrix_delimiters_color_tl ,
delimiters / color .value_required:n = true ,
@@ -1851,7 +1851,7 @@
}
\NewDocumentCommand \__nicematrix_CodeBefore_keys: { O { } }
{
- \keys_set:nn { NiceMatrix / CodeBefore } { #1 }
+ \keys_set:nn { nicematrix / CodeBefore } { #1 }
\__nicematrix_CodeBefore:w
}
\cs_new_protected:Npn \__nicematrix_CodeBefore:w #1 \q_stop
@@ -1999,8 +1999,8 @@
\tl_if_empty:NF \g__nicematrix_pre_code_before_tl
{ \bool_set_true:N \l__nicematrix_code_before_bool }
\bool_if:NTF \g__nicematrix_delims_bool
- { \keys_set:nn { NiceMatrix / pNiceArray } }
- { \keys_set:nn { NiceMatrix / NiceArray } }
+ { \keys_set:nn { nicematrix / pNiceArray } }
+ { \keys_set:nn { nicematrix / NiceArray } }
{ #3 , #5 }
\__nicematrix_set_CT@arc@:o \l__nicematrix_rules_color_tl
\bool_if:nTF { #6 } \__nicematrix_CodeBefore_Body:w \__nicematrix_pre_array:
@@ -2013,7 +2013,7 @@
\skip_horizontal:N \l__nicematrix_right_margin_dim
\skip_horizontal:N \l__nicematrix_extra_right_margin_dim
- % % awful workaround
+ % awful workaround
\int_compare:nNnT \g__nicematrix_col_total_int = \c_one_int
{
\dim_compare:nNnT \l__nicematrix_columns_width_dim > \c_zero_dim
@@ -2910,6 +2910,18 @@
{ } % for the name of the block
}
}
+ \RenewDocumentCommand \cellcolor { O { } m }
+ {
+ \__nicematrix_test_color_inside:
+ \tl_gput_right:Nx \g__nicematrix_pre_code_before_tl
+ {
+ \__nicematrix_rectanglecolor [ ##1 ]
+ { \exp_not:n { ##2 } }
+ { \int_use:N \c@iRow - \int_use:N \c@jCol }
+ { \int_use:N \c@iRow - \int_eval:n { \c@jCol + #1 } }
+ }
+ \ignorespaces
+ }
\cs_set_nopar:Npn \@sharp { #3 }
\@arstrut
\@preamble
@@ -3734,7 +3746,7 @@
\bool_set_true:N \l__nicematrix_last_col_without_value_bool
\int_set:Nn \l__nicematrix_last_col_int { -1 }
}
- \keys_set:nn { NiceMatrix / NiceMatrix } { ##1 }
+ \keys_set:nn { nicematrix / NiceMatrix } { ##1 }
\__nicematrix_begin_of_NiceMatrix:nV { #1 } \l__nicematrix_columns_type_tl
}
{ \use:c { end #1 NiceArray } }
@@ -3747,7 +3759,7 @@
\bool_set_true:N \l__nicematrix_last_col_without_value_bool
\int_set:Nn \l__nicematrix_last_col_int { -1 }
}
- \keys_set:nn { NiceMatrix / NiceMatrix } { #1 }
+ \keys_set:nn { nicematrix / NiceMatrix } { #1 }
\bool_lazy_or:nnT
{ \clist_if_empty_p:N \l__nicematrix_vlines_clist }
{ \l__nicematrix_except_borders_bool }
@@ -3762,7 +3774,7 @@
\dim_compare:nNnT \l__nicematrix_width_dim = \c_zero_dim
{ \dim_set_eq:NN \l__nicematrix_width_dim \linewidth }
\str_gset:Nn \g__nicematrix_name_env_str { NiceTabular }
- \keys_set:nn { NiceMatrix / NiceTabular } { #1 , #3 }
+ \keys_set:nn { nicematrix / NiceTabular } { #1 , #3 }
\tl_if_empty:NF \l__nicematrix_short_caption_tl
{
\tl_if_empty:NT \l__nicematrix_caption_tl
@@ -3807,7 +3819,7 @@
\str_gset:Nn \g__nicematrix_name_env_str { NiceTabularX }
\dim_zero_new:N \l__nicematrix_width_dim
\dim_set:Nn \l__nicematrix_width_dim { #1 }
- \keys_set:nn { NiceMatrix / NiceTabular } { #2 , #4 }
+ \keys_set:nn { nicematrix / NiceTabular } { #2 , #4 }
\__nicematrix_settings_for_tabular:
\NiceArray { #3 }
}
@@ -3820,7 +3832,7 @@
{
\str_gset:Nn \g__nicematrix_name_env_str { NiceTabular* }
\dim_set:Nn \l__nicematrix_tabular_width_dim { #1 }
- \keys_set:nn { NiceMatrix / NiceTabular } { #2 , #4 }
+ \keys_set:nn { nicematrix / NiceTabular } { #2 , #4 }
\__nicematrix_settings_for_tabular:
\NiceArray { #3 }
}
@@ -4006,7 +4018,7 @@
\cs_gset_eq:NN \CT@arc@ \__nicematrix_old_CT@arc@
}
\NewDocumentCommand \__nicematrix_CodeAfter_keys: { O { } }
- { \keys_set:nn { NiceMatrix / CodeAfter } { #1 } }
+ { \keys_set:nn { nicematrix / CodeAfter } { #1 } }
\cs_new_protected:Npn \__nicematrix_adjust_pos_of_blocks_seq:
{
\seq_gset_map_x:NNn \g__nicematrix_pos_of_blocks_seq \g__nicematrix_pos_of_blocks_seq
@@ -4393,7 +4405,7 @@
\int_compare:nNnT { #1 } = \l__nicematrix_last_row_int
{ \color { nicematrix-last-row } }
}
- \keys_set:nn { NiceMatrix / xdots } { #3 }
+ \keys_set:nn { nicematrix / xdots } { #3 }
\tl_if_empty:oF \l__nicematrix_xdots_color_tl { \color { \l__nicematrix_xdots_color_tl } }
\__nicematrix_actually_draw_Ldots:
\group_end:
@@ -4445,7 +4457,7 @@
\int_compare:nNnT { #1 } = \l__nicematrix_last_row_int
{ \color { nicematrix-last-row } }
}
- \keys_set:nn { NiceMatrix / xdots } { #3 }
+ \keys_set:nn { nicematrix / xdots } { #3 }
\tl_if_empty:oF \l__nicematrix_xdots_color_tl { \color { \l__nicematrix_xdots_color_tl } }
\__nicematrix_actually_draw_Cdots:
\group_end:
@@ -4541,7 +4553,7 @@
\int_compare:nNnT { #2 } = \l__nicematrix_last_col_int
{ \color { nicematrix-last-col } }
}
- \keys_set:nn { NiceMatrix / xdots } { #3 }
+ \keys_set:nn { nicematrix / xdots } { #3 }
\tl_if_empty:oF \l__nicematrix_xdots_color_tl
{ \color { \l__nicematrix_xdots_color_tl } }
\__nicematrix_actually_draw_Vdots:
@@ -4627,7 +4639,7 @@
\__nicematrix_find_extremities_of_line:nnnn { #1 } { #2 } 1 1
\group_begin:
\__nicematrix_open_shorten:
- \keys_set:nn { NiceMatrix / xdots } { #3 }
+ \keys_set:nn { nicematrix / xdots } { #3 }
\tl_if_empty:oF \l__nicematrix_xdots_color_tl { \color { \l__nicematrix_xdots_color_tl } }
\__nicematrix_actually_draw_Ddots:
\group_end:
@@ -4658,11 +4670,14 @@
{ \l__nicematrix_y_final_dim - \l__nicematrix_y_initial_dim }
}
{
- \dim_set:Nn \l__nicematrix_y_final_dim
+ \dim_compare:nNnF \g__nicematrix_delta_x_one_dim = \c_zero_dim
{
- \l__nicematrix_y_initial_dim +
- ( \l__nicematrix_x_final_dim - \l__nicematrix_x_initial_dim ) *
- \dim_ratio:nn \g__nicematrix_delta_y_one_dim \g__nicematrix_delta_x_one_dim
+ \dim_set:Nn \l__nicematrix_y_final_dim
+ {
+ \l__nicematrix_y_initial_dim +
+ ( \l__nicematrix_x_final_dim - \l__nicematrix_x_initial_dim ) *
+ \dim_ratio:nn \g__nicematrix_delta_y_one_dim \g__nicematrix_delta_x_one_dim
+ }
}
}
}
@@ -4676,7 +4691,7 @@
\__nicematrix_find_extremities_of_line:nnnn { #1 } { #2 } 1 { -1 }
\group_begin:
\__nicematrix_open_shorten:
- \keys_set:nn { NiceMatrix / xdots } { #3 }
+ \keys_set:nn { nicematrix / xdots } { #3 }
\tl_if_empty:oF \l__nicematrix_xdots_color_tl { \color { \l__nicematrix_xdots_color_tl } }
\__nicematrix_actually_draw_Iddots:
\group_end:
@@ -4707,11 +4722,14 @@
{ \l__nicematrix_y_final_dim - \l__nicematrix_y_initial_dim }
}
{
- \dim_set:Nn \l__nicematrix_y_final_dim
+ \dim_compare:nNnF \g__nicematrix_delta_x_two_dim = \c_zero_dim
{
- \l__nicematrix_y_initial_dim +
- ( \l__nicematrix_x_final_dim - \l__nicematrix_x_initial_dim ) *
- \dim_ratio:nn \g__nicematrix_delta_y_two_dim \g__nicematrix_delta_x_two_dim
+ \dim_set:Nn \l__nicematrix_y_final_dim
+ {
+ \l__nicematrix_y_initial_dim +
+ ( \l__nicematrix_x_final_dim - \l__nicematrix_x_initial_dim ) *
+ \dim_ratio:nn \g__nicematrix_delta_y_two_dim \g__nicematrix_delta_x_two_dim
+ }
}
}
}
@@ -5064,7 +5082,7 @@
\l__nicematrix_last_col_int { \__nicematrix_error:nn { in~last~col } \Ddots }
}
{
- \keys_set_known:nn { NiceMatrix / Ddots } { #1 }
+ \keys_set_known:nn { nicematrix / Ddots } { #1 }
\__nicematrix_instruction_of_type:nnn \l__nicematrix_draw_first_bool { Ddots }
{ #1 , down = #2 , up = #3 , middle = #4 }
}
@@ -5090,7 +5108,7 @@
\l__nicematrix_last_col_int { \__nicematrix_error:nn { in~last~col } \Iddots }
}
{
- \keys_set_known:nn { NiceMatrix / Ddots } { #1 }
+ \keys_set_known:nn { nicematrix / Ddots } { #1 }
\__nicematrix_instruction_of_type:nnn \l__nicematrix_draw_first_bool { Iddots }
{ #1 , down = #2 , up = #3 , middle = #4 }
}
@@ -5100,7 +5118,7 @@
\bool_gset_true:N \g__nicematrix_empty_cell_bool
}
}
-\keys_define:nn { NiceMatrix / Ddots }
+\keys_define:nn { nicematrix / Ddots }
{
draw-first .bool_set:N = \l__nicematrix_draw_first_bool ,
draw-first .default:n = true ,
@@ -5210,7 +5228,7 @@
{ \color { nicematrix-last-row } }
}
- \keys_set:nn { NiceMatrix / xdots } { #4 }
+ \keys_set:nn { nicematrix / xdots } { #4 }
\tl_if_empty:oF \l__nicematrix_xdots_color_tl { \color { \l__nicematrix_xdots_color_tl } }
\__nicematrix_actually_draw_Ldots:
\group_end:
@@ -5291,7 +5309,7 @@
\int_compare:nNnT { #2 } = \g__nicematrix_col_total_int
{ \color { nicematrix-last-col } }
}
- \keys_set:nn { NiceMatrix / xdots } { #4 }
+ \keys_set:nn { nicematrix / xdots } { #4 }
\tl_if_empty:oF \l__nicematrix_xdots_color_tl { \color { \l__nicematrix_xdots_color_tl } }
\__nicematrix_actually_draw_Vdots:
\group_end:
@@ -5303,10 +5321,10 @@
\peek_remove_spaces:n
{
\bool_gset_true:N \g__nicematrix_rotate_bool
- \keys_set:nn { NiceMatrix / rotate } { #1 }
+ \keys_set:nn { nicematrix / rotate } { #1 }
}
}
-\keys_define:nn { NiceMatrix / rotate }
+\keys_define:nn { nicematrix / rotate }
{
c .code:n = \bool_gset_true:N \g__nicematrix_rotate_c_bool ,
c .value_forbidden:n = true ,
@@ -5328,7 +5346,7 @@
\exp_args:NNo \NewDocumentCommand \__nicematrix_line \l__nicematrix_argspec_tl
{
\group_begin:
- \keys_set:nn { NiceMatrix / xdots } { #1 , #4 , down = #5 , up = #6 }
+ \keys_set:nn { nicematrix / xdots } { #1 , #4 , down = #5 , up = #6 }
\tl_if_empty:oF \l__nicematrix_xdots_color_tl { \color { \l__nicematrix_xdots_color_tl } }
\use:e
{
@@ -5382,7 +5400,7 @@
}
}
\cs_generate_variant:Nn \__nicematrix_put_in_row_style:n { e }
-\keys_define:nn { NiceMatrix / RowStyle }
+\keys_define:nn { nicematrix / RowStyle }
{
cell-space-top-limit .dim_set:N = \l_tmpa_dim ,
cell-space-top-limit .value_required:n = true ,
@@ -5414,7 +5432,7 @@
\int_set_eq:NN \l__nicematrix_key_nb_rows_int \c_one_int
\dim_zero:N \l_tmpa_dim
\dim_zero:N \l_tmpb_dim
- \keys_set:nn { NiceMatrix / RowStyle } { #1 }
+ \keys_set:nn { nicematrix / RowStyle } { #1 }
\tl_if_empty:NF \l_tmpa_tl
{
\tl_gput_right:Nx \g__nicematrix_pre_code_before_tl
@@ -5669,7 +5687,7 @@
{ 1 - 1 }
{ \int_use:N \c@iRow - \int_use:N \c@jCol }
}
-\keys_define:nn { NiceMatrix / rowcolors }
+\keys_define:nn { nicematrix / rowcolors }
{
respect-blocks .bool_set:N = \l__nicematrix_respect_blocks_bool ,
respect-blocks .default:n = true ,
@@ -5685,7 +5703,7 @@
\seq_set_split:Nnn \l__nicematrix_colors_seq { , } { #3 }
\tl_clear_new:N \l__nicematrix_cols_tl
\cs_set_nopar:Npn \l__nicematrix_cols_tl { - }
- \keys_set:nn { NiceMatrix / rowcolors } { #4 }
+ \keys_set:nn { nicematrix / rowcolors } { #4 }
\int_zero_new:N \l__nicematrix_color_int
\int_set_eq:NN \l__nicematrix_color_int \c_one_int
\bool_if:NT \l__nicematrix_respect_blocks_bool
@@ -6043,7 +6061,7 @@
}
}
}
-\keys_define:nn { NiceMatrix / Rules }
+\keys_define:nn { nicematrix / Rules }
{
position .int_set:N = \l__nicematrix_position_int ,
position .value_required:n = true ,
@@ -6055,7 +6073,7 @@
{ \int_set_eq:NN \l__nicematrix_end_int \c@jCol }
{ \int_set:Nn \l__nicematrix_end_int { #1 } }
}
-\keys_define:nn { NiceMatrix / RulesBis }
+\keys_define:nn { nicematrix / RulesBis }
{
multiplicity .int_set:N = \l__nicematrix_multiplicity_int ,
multiplicity .initial:n = 1 ,
@@ -6082,7 +6100,7 @@
{
\group_begin:
\int_set_eq:NN \l__nicematrix_end_int \c@iRow
- \keys_set_known:nnN { NiceMatrix / Rules } { #1 } \l__nicematrix_other_keys_tl
+ \keys_set_known:nnN { nicematrix / Rules } { #1 } \l__nicematrix_other_keys_tl
\int_compare:nNnT \l__nicematrix_position_int < { \c@jCol + 2 }
\__nicematrix_vline_i:
\group_end:
@@ -6149,7 +6167,7 @@
\cs_new_protected:Npn \__nicematrix_vline_ii:
{
\tl_clear:N \l__nicematrix_tikz_rule_tl
- \keys_set:nV { NiceMatrix / RulesBis } \l__nicematrix_other_keys_tl
+ \keys_set:nV { nicematrix / RulesBis } \l__nicematrix_other_keys_tl
\bool_if:NTF \l__nicematrix_dotted_bool
\__nicematrix_vline_iv:
{
@@ -6269,7 +6287,7 @@
\group_begin:
\int_zero_new:N \l__nicematrix_end_int
\int_set_eq:NN \l__nicematrix_end_int \c@jCol
- \keys_set_known:nnN { NiceMatrix / Rules } { #1 } \l__nicematrix_other_keys_tl
+ \keys_set_known:nnN { nicematrix / Rules } { #1 } \l__nicematrix_other_keys_tl
\__nicematrix_hline_i:
\group_end:
}
@@ -6337,7 +6355,7 @@
\cs_new_protected:Npn \__nicematrix_hline_ii:
{
\tl_clear:N \l__nicematrix_tikz_rule_tl
- \keys_set:nV { NiceMatrix / RulesBis } \l__nicematrix_other_keys_tl
+ \keys_set:nV { nicematrix / RulesBis } \l__nicematrix_other_keys_tl
\bool_if:NTF \l__nicematrix_dotted_bool
\__nicematrix_hline_iv:
{
@@ -6501,7 +6519,7 @@
\str_clear_new:N \l__nicematrix_ccommand_str
\str_clear_new:N \l__nicematrix_letter_str
\tl_clear_new:N \l__nicematrix_other_keys_tl
- \keys_set_known:nnN { NiceMatrix / custom-line } { #1 } \l__nicematrix_other_keys_tl
+ \keys_set_known:nnN { nicematrix / custom-line } { #1 } \l__nicematrix_other_keys_tl
\bool_lazy_all:nTF
{
{ \str_if_empty_p:N \l__nicematrix_letter_str }
@@ -6511,7 +6529,7 @@
{ \__nicematrix_error:n { No~letter~and~no~command } }
{ \exp_args:No \__nicematrix_custom_line_i:n \l__nicematrix_other_keys_tl }
}
-\keys_define:nn { NiceMatrix / custom-line }
+\keys_define:nn { nicematrix / custom-line }
{
letter .str_set:N = \l__nicematrix_letter_str ,
letter .value_required:n = true ,
@@ -6525,7 +6543,7 @@
\bool_set_false:N \l__nicematrix_tikz_rule_bool
\bool_set_false:N \l__nicematrix_dotted_rule_bool
\bool_set_false:N \l__nicematrix_color_bool
- \keys_set:nn { NiceMatrix / custom-line-bis } { #1 }
+ \keys_set:nn { nicematrix / custom-line-bis } { #1 }
\bool_if:NT \l__nicematrix_tikz_rule_bool
{
\IfPackageLoadedTF { tikz }
@@ -6558,7 +6576,7 @@
}
\tl_const:Nn \c__nicematrix_forbidden_letters_tl { lcrpmbVX|()[]!@<> }
\str_const:Nn \c__nicematrix_forbidden_letters_str { lcrpmbVX|()[]!@<> }
-\keys_define:nn { NiceMatrix / custom-line-bis }
+\keys_define:nn { nicematrix / custom-line-bis }
{
multiplicity .int_set:N = \l__nicematrix_multiplicity_int ,
multiplicity .initial:n = 1 ,
@@ -6580,7 +6598,7 @@
\bool_new:N \l__nicematrix_dotted_rule_bool
\bool_new:N \l__nicematrix_tikz_rule_bool
\bool_new:N \l__nicematrix_color_bool
-\keys_define:nn { NiceMatrix / custom-line-width }
+\keys_define:nn { nicematrix / custom-line-width }
{
multiplicity .int_set:N = \l__nicematrix_multiplicity_int ,
multiplicity .initial:n = 1 ,
@@ -6636,7 +6654,7 @@
\bool_set_false:N \l__nicematrix_tikz_rule_bool
\bool_set_false:N \l__nicematrix_total_width_bool
\bool_set_false:N \l__nicematrix_dotted_rule_bool
- \keys_set_known:nn { NiceMatrix / custom-line-width } { #1 }
+ \keys_set_known:nn { nicematrix / custom-line-width } { #1 }
\bool_if:NF \l__nicematrix_total_width_bool
{
\bool_if:NTF \l__nicematrix_dotted_rule_bool
@@ -6842,7 +6860,7 @@
}
}
\bool_new:N \l__nicematrix_block_auto_columns_width_bool
-\keys_define:nn { NiceMatrix / NiceMatrixBlock }
+\keys_define:nn { nicematrix / NiceMatrixBlock }
{
auto-columns-width .code:n =
{
@@ -6855,7 +6873,7 @@
{
\int_gincr:N \g__nicematrix_NiceMatrixBlock_int
\dim_zero:N \l__nicematrix_columns_width_dim
- \keys_set:nn { NiceMatrix / NiceMatrixBlock } { #1 }
+ \keys_set:nn { nicematrix / NiceMatrixBlock } { #1 }
\bool_if:NT \l__nicematrix_block_auto_columns_width_bool
{
\cs_if_exist:cT
@@ -7082,7 +7100,7 @@
{ \int_use:N \g__nicematrix_env_int - \__nicematrix_i: - \__nicematrix_j: \l__nicematrix_suffix_tl}
}
}
-\keys_define:nn { NiceMatrix / Block / FirstPass }
+\keys_define:nn { nicematrix / Block / FirstPass }
{
j .code:n = \str_set:Nn \l__nicematrix_hpos_block_str j
\bool_set_true:N \l__nicematrix_p_block_bool ,
@@ -7162,7 +7180,7 @@
{ \str_set:NV \l__nicematrix_hpos_block_str \l__nicematrix_hpos_cell_tl }
}
{ \str_set_eq:NN \l__nicematrix_hpos_block_str \c__nicematrix_c_str }
- \keys_set_known:nn { NiceMatrix / Block / FirstPass } { #3 }
+ \keys_set_known:nn { nicematrix / Block / FirstPass } { #3 }
\tl_set:Nx \l_tmpa_tl
{
{ \int_use:N \c@iRow }
@@ -7180,11 +7198,11 @@
\l__nicematrix_X_bool { \exp_args:Nee \__nicematrix_Block_v:nnnnn }
{ \tl_if_empty_p:n { #5 } } { \exp_args:Nee \__nicematrix_Block_v:nnnnn }
{ \int_compare_p:nNn \l_tmpa_int = \c_one_int }
- { \exp_args:Nee \__nicematrix_Block_iv:nnnnn }
+ { \exp_args:Nee \__nicematrix_Block_iv:nnnnn }
{ \int_compare_p:nNn \l_tmpb_int = \c_one_int }
- { \exp_args:Nee \__nicematrix_Block_iv:nnnnn }
- }
- { \exp_args:Nee \__nicematrix_Block_v:nnnnn }
+ { \exp_args:Nee \__nicematrix_Block_iv:nnnnn }
+ }
+ { \exp_args:Nee \__nicematrix_Block_v:nnnnn }
{ \l_tmpa_int } { \l_tmpb_int } { #3 } { #4 } { #5 }
}
\cs_new_protected:Npn \__nicematrix_Block_iv:nnnnn #1 #2 #3 #4 #5
@@ -7214,10 +7232,16 @@
\int_compare:nNnT { #1 } = \c_one_int
{
\int_if_zero:nTF \c@iRow
- \l__nicematrix_code_for_first_row_tl
+ {
+ \cs_set_eq:NN \Block \__nicematrix_NullBlock:
+ \l__nicematrix_code_for_first_row_tl
+ }
{
\int_compare:nNnT \c@iRow = \l__nicematrix_last_row_int
- \l__nicematrix_code_for_last_row_tl
+ {
+ \cs_set_eq:NN \Block \__nicematrix_NullBlock:
+ \l__nicematrix_code_for_last_row_tl
+ }
}
\g__nicematrix_row_style_tl
}
@@ -7442,7 +7466,7 @@
{ \exp_not:n { #4 #5 } }
}
}
-\keys_define:nn { NiceMatrix / Block / SecondPass }
+\keys_define:nn { nicematrix / Block / SecondPass }
{
ampersand-in-blocks .bool_set:N = \l__nicematrix_amp_in_blocks_bool ,
ampersand-in-blocks .default:n = true ,
@@ -7566,7 +7590,7 @@
\group_begin:
\int_compare:nNnT { #1 } = { #3 }
{ \str_set:Nn \l__nicematrix_vpos_block_str { t } }
- \keys_set:nn { NiceMatrix / Block / SecondPass } { #5 }
+ \keys_set:nn { nicematrix / Block / SecondPass } { #5 }
\tl_if_in:nnT { #6 } { & } { \bool_set_true:N \l__nicematrix_ampersand_bool }
\bool_lazy_and:nnT
\l__nicematrix_vlines_block_bool
@@ -8000,7 +8024,7 @@
\group_begin:
\tl_clear:N \l__nicematrix_draw_tl
\dim_set_eq:NN \l__nicematrix_line_width_dim \arrayrulewidth
- \keys_set_known:nn { NiceMatrix / BlockStroke } { #1 }
+ \keys_set_known:nn { nicematrix / BlockStroke } { #1 }
\pgfpicture
\pgfrememberpicturepositiononpagetrue
\pgf@relevantforpicturesizefalse
@@ -8046,7 +8070,7 @@
\endpgfpicture
\group_end:
}
-\keys_define:nn { NiceMatrix / BlockStroke }
+\keys_define:nn { nicematrix / BlockStroke }
{
color .tl_set:N = \l__nicematrix_draw_tl ,
draw .code:n =
@@ -8059,7 +8083,7 @@
\cs_new_protected:Npn \__nicematrix_vlines_block:nnn #1 #2 #3
{
\dim_set_eq:NN \l__nicematrix_line_width_dim \arrayrulewidth
- \keys_set_known:nn { NiceMatrix / BlockBorders } { #1 }
+ \keys_set_known:nn { nicematrix / BlockBorders } { #1 }
\__nicematrix_cut_on_hyphen:w #2 \q_stop
\tl_set_eq:NN \l__nicematrix_tmpc_tl \l_tmpa_tl
\tl_set_eq:NN \l__nicematrix_tmpd_tl \l_tmpb_tl
@@ -8083,7 +8107,7 @@
\cs_new_protected:Npn \__nicematrix_hlines_block:nnn #1 #2 #3
{
\dim_set_eq:NN \l__nicematrix_line_width_dim \arrayrulewidth
- \keys_set_known:nn { NiceMatrix / BlockBorders } { #1 }
+ \keys_set_known:nn { nicematrix / BlockBorders } { #1 }
\__nicematrix_cut_on_hyphen:w #2 \q_stop
\tl_set_eq:NN \l__nicematrix_tmpc_tl \l_tmpa_tl
\tl_set_eq:NN \l__nicematrix_tmpd_tl \l_tmpb_tl
@@ -8107,13 +8131,13 @@
\cs_new_protected:Npn \__nicematrix_stroke_borders_block:nnn #1 #2 #3
{
\dim_set_eq:NN \l__nicematrix_line_width_dim \arrayrulewidth
- \keys_set_known:nn { NiceMatrix / BlockBorders } { #1 }
+ \keys_set_known:nn { nicematrix / BlockBorders } { #1 }
\dim_compare:nNnTF \l__nicematrix_rounded_corners_dim > \c_zero_dim
{ \__nicematrix_error:n { borders~forbidden } }
{
\tl_clear_new:N \l__nicematrix_borders_tikz_tl
\keys_set:nV
- { NiceMatrix / OnlyForTikzInBorders }
+ { nicematrix / OnlyForTikzInBorders }
\l__nicematrix_borders_clist
\__nicematrix_cut_on_hyphen:w #2 \q_stop
\tl_set_eq:NN \l__nicematrix_tmpc_tl \l_tmpa_tl
@@ -8148,7 +8172,7 @@
\clist_if_in:NnT \l__nicematrix_borders_clist { top }
{ \__nicematrix_stroke_horizontal:n \l__nicematrix_tmpc_tl }
}
-\keys_define:nn { NiceMatrix / OnlyForTikzInBorders }
+\keys_define:nn { nicematrix / OnlyForTikzInBorders }
{
tikz .code:n =
\cs_if_exist:NTF \tikzpicture
@@ -8199,7 +8223,7 @@
( \l_tmpa_dim , \pgf@y ) -- ( \l_tmpb_dim , \pgf@y ) ;
}
}
-\keys_define:nn { NiceMatrix / BlockBorders }
+\keys_define:nn { nicematrix / BlockBorders }
{
borders .clist_set:N = \l__nicematrix_borders_clist ,
rounded-corners .dim_set:N = \l__nicematrix_rounded_corners_dim ,
@@ -8212,7 +8236,7 @@
\__nicematrix_clip_with_rounded_corners:
\clist_map_inline:nn { #5 }
{
- \keys_set_known:nnN { NiceMatrix / SpecialOffset } { ##1 } \l_tmpa_tl
+ \keys_set_known:nnN { nicematrix / SpecialOffset } { ##1 } \l_tmpa_tl
\use:e { \exp_not:N \path [ \l_tmpa_tl ] }
(
[
@@ -8233,8 +8257,12 @@
\end { tikzpicture }
}
\cs_generate_variant:Nn \__nicematrix_block_tikz:nnnnn { n n n n V }
-\keys_define:nn { NiceMatrix / SpecialOffset }
+\keys_define:nn { nicematrix / SpecialOffset }
{ offset .dim_set:N = \l__nicematrix_offset_dim }
+\cs_new_protected:Npn \__nicematrix_NullBlock:
+ { \__nicematrix_collect_options:n { \__nicematrix_NullBlock_i: } }
+\NewExpandableDocumentCommand \__nicematrix_NullBlock_i: { m m D < > { } +m }
+ { }
\cs_set_protected:Npn \__nicematrix_renew_matrix:
{
\RenewDocumentEnvironment { pmatrix } { }
@@ -8253,7 +8281,7 @@
{ \BNiceMatrix }
{ \endBNiceMatrix }
}
-\keys_define:nn { NiceMatrix / Auto }
+\keys_define:nn { nicematrix / Auto }
{
columns-type .tl_set:N = \l__nicematrix_columns_type_tl ,
columns-type .value_required:n = true ,
@@ -8264,7 +8292,7 @@
delimiters / color .value_required:n = true ,
delimiters / max-width .bool_set:N = \l__nicematrix_delimiters_max_width_bool ,
delimiters / max-width .default:n = true ,
- delimiters .code:n = \keys_set:nn { NiceMatrix / delimiters } { #1 } ,
+ delimiters .code:n = \keys_set:nn { nicematrix / delimiters } { #1 } ,
delimiters .value_required:n = true ,
rounded-corners .dim_set:N = \l__nicematrix_tab_rounded_corners_dim ,
rounded-corners .default:n = 4 pt
@@ -8275,7 +8303,7 @@
\cs_new_protected:Npn \__nicematrix_auto_nice_matrix:nnnnnn #1 #2 #3 #4 #5 #6
{
\group_begin:
- \keys_set_known:nnN { NiceMatrix / Auto } { #6 } \l_tmpa_tl
+ \keys_set_known:nnN { nicematrix / Auto } { #6 } \l_tmpa_tl
\use:e
{
\exp_not:N \begin { NiceArrayWithDelims } { #1 } { #2 }
@@ -8468,7 +8496,7 @@
{ }
\endpgfpicture
}
-\keys_define:nn { NiceMatrix / sub-matrix }
+\keys_define:nn { nicematrix / sub-matrix }
{
extra-height .dim_set:N = \l__nicematrix_submatrix_extra_height_dim ,
extra-height .value_required:n = true ,
@@ -8489,14 +8517,14 @@
hvlines .meta:n = { hlines, vlines } ,
hvlines .value_forbidden:n = true
}
-\keys_define:nn { NiceMatrix }
+\keys_define:nn { nicematrix }
{
- SubMatrix .inherit:n = NiceMatrix / sub-matrix ,
- NiceArray / sub-matrix .inherit:n = NiceMatrix / sub-matrix ,
- pNiceArray / sub-matrix .inherit:n = NiceMatrix / sub-matrix ,
- NiceMatrixOptions / sub-matrix .inherit:n = NiceMatrix / sub-matrix ,
+ SubMatrix .inherit:n = nicematrix / sub-matrix ,
+ NiceArray / sub-matrix .inherit:n = nicematrix / sub-matrix ,
+ pNiceArray / sub-matrix .inherit:n = nicematrix / sub-matrix ,
+ NiceMatrixOptions / sub-matrix .inherit:n = nicematrix / sub-matrix ,
}
-\keys_define:nn { NiceMatrix / SubMatrix }
+\keys_define:nn { nicematrix / SubMatrix }
{
delimiters / color .tl_set:N = \l__nicematrix_delimiters_color_tl ,
delimiters / color .value_required:n = true ,
@@ -8522,7 +8550,7 @@
{ \__nicematrix_error:n { Invalid~name } }
} ,
name .value_required:n = true ,
- rules .code:n = \keys_set:nn { NiceMatrix / rules } { #1 } ,
+ rules .code:n = \keys_set:nn { nicematrix / rules } { #1 } ,
rules .value_required:n = true ,
code .tl_set:N = \l__nicematrix_code_tl ,
code .value_required:n = true ,
@@ -8605,7 +8633,7 @@
{ \__nicematrix_error:nn { Construct~too~large } { \SubMatrix } }
{
\str_clear_new:N \l__nicematrix_submatrix_name_str
- \keys_set:nn { NiceMatrix / SubMatrix } { #5 }
+ \keys_set:nn { nicematrix / SubMatrix } { #5 }
\pgfpicture
\pgfrememberpicturepositiononpagetrue
\pgf@relevantforpicturesizefalse
@@ -8884,7 +8912,7 @@
\peek_remove_spaces:n
{ \__nicematrix_brace:nnnnn { #2 } { #3 } { #4 } { #1 , #5 } { over } }
}
-\keys_define:nn { NiceMatrix / Brace }
+\keys_define:nn { nicematrix / Brace }
{
left-shorten .bool_set:N = \l__nicematrix_brace_left_shorten_bool ,
left-shorten .default:n = true ,
@@ -8915,7 +8943,7 @@
}
{
\tl_clear:N \l_tmpa_tl
- \keys_set:nn { NiceMatrix / Brace } { #4 }
+ \keys_set:nn { nicematrix / Brace } { #4 }
\tl_if_empty:NF \l_tmpa_tl { \color { \l_tmpa_tl } }
\pgfpicture
\pgfrememberpicturepositiononpagetrue
@@ -9049,7 +9077,7 @@
\bool_new:N \l__nicematrix_not_empty_bool
\bool_new:N \l__nicematrix_empty_bool
-\keys_define:nn { NiceMatrix / TikzEveryCell }
+\keys_define:nn { nicematrix / TikzEveryCell }
{
not-empty .code:n =
\bool_lazy_or:nnTF
@@ -9073,7 +9101,7 @@
\IfPackageLoadedTF { tikz }
{
\group_begin:
- \keys_set:nn { NiceMatrix / TikzEveryCell } { #1 }
+ \keys_set:nn { nicematrix / TikzEveryCell } { #1 }
\tl_set:Nn \l_tmpa_tl { { #2 } }
\seq_map_inline:Nn \g__nicematrix_pos_of_blocks_seq
{ \__nicematrix_for_a_block:nnnnn ##1 }
@@ -9314,7 +9342,7 @@
renew-dots,~and~
renew-matrix.
}
-\keys_define:nn { NiceMatrix / Package }
+\keys_define:nn { nicematrix / Package }
{
renew-dots .bool_set:N = \l__nicematrix_renew_dots_bool ,
renew-dots .value_forbidden:n = true ,
@@ -9327,7 +9355,7 @@
no-test-for-array .default:n = true ,
unknown .code:n = \__nicematrix_error:n { Unknown~key~for~package }
}
-\ProcessKeysOptions { NiceMatrix / Package }
+\ProcessKeysOptions { nicematrix / Package }
\__nicematrix_msg_new:nn { footnote~with~footnotehyper~package }
{
You~can't~use~the~option~'footnote'~because~the~package~
diff --git a/Master/texmf-dist/tex/latex/ocgx2/ocgbase.sty b/Master/texmf-dist/tex/latex/ocgx2/ocgbase.sty
index bf4edf432b7..e182f8670d5 100644
--- a/Master/texmf-dist/tex/latex/ocgx2/ocgbase.sty
+++ b/Master/texmf-dist/tex/latex/ocgx2/ocgbase.sty
@@ -100,8 +100,8 @@
%
% The Current Maintainer of this work is A. Grahn.
-\def\g@ocgbase@date@tl{2022/08/04}
-\def\g@ocgbase@version@tl{0.22}
+\def\g@ocgbase@date@tl{2024/09/15}
+\def\g@ocgbase@version@tl{0.24}
\ProvidesExplPackage{ocgbase}{\g@ocgbase@date@tl}{\g@ocgbase@version@tl}
{support package for ocgx2.sty}
@@ -167,10 +167,8 @@
%global Order list
\tl_new:N\l_ocgbase_ocgorderentry_tl
\tl_new:N\l_ocgbase_ocgorder_tl
- \tl_if_exist:cT{g_ocgbase_nd_0_chld_tl}{
- \ocgbase_build_order:Nn\l_ocgbase_ocgorder_tl{
- \tl_use:c{g_ocgbase_nd_0_chld_tl}
- }
+ \seq_if_empty:NF\g_ocgbase_order_root_seq{
+ \ocgbase_build_order:Nn\l_ocgbase_ocgorder_tl{root}
}
\tl_if_empty:NF\l_ocgbase_ocgorder_tl{
\pbs_pdfobj:nnn{}{array}{\l_ocgbase_ocgorder_tl}
@@ -228,98 +226,45 @@
\cs_new_nopar:Nn\ocgbase_last_ocg:{\g_ocgbase_last_ocg_tl}
-\int_new:N\g_ocgbase_nd_int %node id
-\seq_new:N\g_ocgbase_tree_nd_stack_seq %stack with open ocg node id
-\seq_new:N\g_ocgbase_tree_ocg_stack_seq %stack with open ocg obj number
-\seq_gpush:Nn\g_ocgbase_tree_nd_stack_seq{0} %push root node
-\seq_gpush:Nn\g_ocgbase_tree_ocg_stack_seq{null} %push root node
+\seq_new:N\g_ocgbase_open_ocg_seq %stack with open ocg ref
+\seq_new:N\g_ocgbase_order_root_seq %seq taking ocg ref /Order root
-%macro for starting OCG object (and nested children) insertion into Order
+%macro for starting OCG object (and nested children) insertion into order
%hierarchy (shown as tree structure in the viewers `Layers' tab
\cs_new_protected_nopar:Nn\ocgbase_tree_node_begin:n{ % #1: OCG obj
- %get the parent node from stack
- \seq_get:NN\g_ocgbase_tree_nd_stack_seq\l__ocgbase_prnt_tl
- \tl_if_exist:cTF{g_ocgbase_nd_\l__ocgbase_prnt_tl _chld_tl}{
- %parent has >=1 children (i. e. my older siblings), traverse them
- \tl_set:Nv\l__ocgbase_prev_sbl_tl{g_ocgbase_nd_\l__ocgbase_prnt_tl _chld_tl}
- \tl_set:Nx\l__ocgbase_cur_ocg_tl{#1}
- \ocgbase_traverse_siblings:NN\l__ocgbase_prev_sbl_tl\l__ocgbase_cur_ocg_tl
- \str_if_empty:NTF\l__ocgbase_cur_ocg_tl{
- %I am the first child of my parent to refer to OCG #1
- \int_gincr:N\g_ocgbase_nd_int
- \tl_set:Nx\l__ocgbase_cur_nd_tl{\int_use:N\g_ocgbase_nd_int}
- %set myself as my next-older sibling's `next sibling'
- \tl_gset:cV{
- g_ocgbase_nd_\l__ocgbase_prev_sbl_tl _sbl_tl}\l__ocgbase_cur_nd_tl
- }{
- %there is already a sibling referring to OCG #1; no new node needs be
- %created
- \tl_set:NV\l__ocgbase_cur_nd_tl\l__ocgbase_prev_sbl_tl
- }
- }{
- %I am the very first child of my parent
- \int_gincr:N\g_ocgbase_nd_int
- \tl_set:Nx\l__ocgbase_cur_nd_tl{\int_use:N\g_ocgbase_nd_int}
- %set myself as my parent's first child
- \tl_gset:cV{g_ocgbase_nd_\l__ocgbase_prnt_tl _chld_tl}\l__ocgbase_cur_nd_tl
+ % get parent (either currently open ocg or root)
+ \seq_get:NNF\g_ocgbase_open_ocg_seq\l__ocgbase_prnt_tl{
+ \tl_set:Nn\l__ocgbase_prnt_tl{root}
}
- %set the OCG I am referring to
- \tl_gset:cx{g_ocgbase_nd_\l__ocgbase_cur_nd_tl _ocg_tl}{#1}
- %push current node and its associated OCG obj on the stacks
- \seq_gpush:NV\g_ocgbase_tree_nd_stack_seq\l__ocgbase_cur_nd_tl
- \seq_gpush:Nx\g_ocgbase_tree_ocg_stack_seq{#1}
-}
-
-%macro that ends insertion of OCG and sub-OCGs into Order tree
-\cs_new_protected:Nn\ocgbase_tree_node_end:{
- \seq_get:NN\g_ocgbase_tree_nd_stack_seq\l_tempa_tl
- \seq_get:NN\g_ocgbase_tree_ocg_stack_seq\l_tempb_tl
- \str_if_eq:eeT{
- \cs_if_exist_use:c{g_ocgbase_nd_\l_tempa_tl _ocg_tl}
- }{
- \l_tempb_tl
- }{
- \seq_gpop:NN\g_ocgbase_tree_nd_stack_seq\g_trash_tl
- \seq_gpop:NN\g_ocgbase_tree_ocg_stack_seq\g_trash_tl
+ %push current ocg ref on stack with open ocgs
+ \seq_gpush:Nx\g_ocgbase_open_ocg_seq{#1}
+ %create seq for current ocg if not yet existing and
+ %append ocg ref to its parent seq
+ \seq_if_exist:cF{g_ocgbase_order_#1_seq}{
+ \seq_new:c{g_ocgbase_order_#1_seq}
+ \seq_gput_right:cx{g_ocgbase_order_ \l__ocgbase_prnt_tl _seq}{#1}
}
}
-% helper macro (recursive); traverses siblings to find either
-% the node which refers to the same OCG (arg #2 remains un-modified), or
-% the last sibling inserted (arg #2 is cleared);
-% the node id of the sibling found is returned in arg #1
-\cs_new_protected:Nn\ocgbase_traverse_siblings:NN{
- % #1: current node (in/out), #2: OCG obj (in/out)
- \str_if_eq:eeF{#2}{\tl_use:c{g_ocgbase_nd_#1_ocg_tl}}{
- \tl_if_exist:cTF{g_ocgbase_nd_#1_sbl_tl}{
- \tl_set:Nv#1{g_ocgbase_nd_#1_sbl_tl}
- \ocgbase_traverse_siblings:NN#1#2
- }{
- \tl_clear:N#2
- }
- }
+%macro that ends insertion of current OCG into order tree
+\cs_new_protected:Nn\ocgbase_tree_node_end:{
+ %pop top ocg ref from stack with open ocgs
+ \seq_gpop:NN\g_ocgbase_open_ocg_seq\g_trash_tl
}
+%macro that builds global ocg order from hierarchy and saves it into tl var
\cs_new_protected_nopar:Nn\ocgbase_build_order:Nn{
% (recursive macro)
% #1: tl var to which the OCG order is written (output)
- % #2: starting node id (input; usually `1')
- \tl_set:Nx\l__ocgbase_cur_nd_tl{#2}
- % first, append the OCG obj the current node is referring to
- \tl_put_right:Nx#1{~\tl_use:c{g_ocgbase_nd_\l__ocgbase_cur_nd_tl _ocg_tl}}
- % second, traverse the tree starting with the first child node
- \tl_if_exist:cT{g_ocgbase_nd_\l__ocgbase_cur_nd_tl _chld_tl}{
- \seq_gpush:NV\g_ocgbase_tree_nd_stack_seq\l__ocgbase_cur_nd_tl
- \tl_put_right:Nn#1{~[}
- \ocgbase_build_order:Nn#1{
- \tl_use:c{g_ocgbase_nd_\l__ocgbase_cur_nd_tl _chld_tl}}
- \tl_put_right:Nn#1{~]}
- \seq_gpop:NN\g_ocgbase_tree_nd_stack_seq\l__ocgbase_cur_nd_tl
- }
- % third, traverse the tree starting with the next sibling node
- \tl_if_exist:cT{g_ocgbase_nd_\l__ocgbase_cur_nd_tl _sbl_tl}{
- \ocgbase_build_order:Nn#1{
- \tl_use:c{g_ocgbase_nd_\l__ocgbase_cur_nd_tl _sbl_tl}}
+ % #2: starting node (input; usually `root')
+ \seq_map_inline:cn{g_ocgbase_order_#2_seq}{
+ % first, append ocg ref to result tl var
+ \tl_put_right:Nx#1{~##1}
+ \seq_if_empty:cF{g_ocgbase_order_##1_seq}{
+ \tl_put_right:Nn#1{~[}
+ \ocgbase_build_order:Nn#1{##1}
+ \tl_put_right:Nn#1{~]}
+ }
}
}
@@ -433,7 +378,7 @@
% \ocgbase@tree@node@end
% #1: OCG PDF object
% macro pair (begin and end) for inserting OCG object and its children
-% into Order hierarchy (shown as tree structure in the viewers `Layers' tab
+% into order hierarchy (shown as tree structure in the viewers `Layers' tab
%
% --------
%
@@ -479,8 +424,8 @@
%
% The Current Maintainer of this work is A. Grahn.
-\def\g@ocgbase@date@tl{2022/08/04}
-\def\g@ocgbase@version@tl{0.22}
+\def\g@ocgbase@date@tl{2024/09/15}
+\def\g@ocgbase@version@tl{0.24}
\ProvidesExplPackage{ocgbase}{\g@ocgbase@date@tl}{\g@ocgbase@version@tl}
{support package for ocgx2.sty}
@@ -535,25 +480,23 @@
\AddToHook{shipout/lastpage}{
\tl_if_empty:NF\g_ocgbase_ocgs_tl{
%global OCG array
- \pbs_pdfobj:nnn{}{array}{\g_ocgbase_ocgs_tl}
- \tl_set:Nx\l_ocgbase_ocgarray_tl{\pbs_pdflastobj:}
- \tl_new:N\l_ocgbase_offocgentry_tl
+ \pdf_object_unnamed_write:ne{array}{\g_ocgbase_ocgs_tl}
+ \tl_set:Nx\l_ocgbase_ocgarray_tl{\pdf_object_ref_last:}
%global OFF list
+ \tl_new:N\l_ocgbase_offocgentry_tl
\seq_if_empty:NF\g_ocgbase_offocgs_seq{
- \pbs_pdfobj:nnn{}{array}{\seq_use:Nn\g_ocgbase_offocgs_seq{~}}
- \tl_set:Nx\l_ocgbase_offocgentry_tl{/OFF~\pbs_pdflastobj:}
+ \pdf_object_unnamed_write:ne{array}{\seq_use:Nn\g_ocgbase_offocgs_seq{~}}
+ \tl_set:Nx\l_ocgbase_offocgentry_tl{/OFF~\pdf_object_ref_last:}
}
%global Order list
\tl_new:N\l_ocgbase_ocgorderentry_tl
\tl_new:N\l_ocgbase_ocgorder_tl
- \tl_if_exist:cT{g_ocgbase_nd_0_chld_tl}{
- \ocgbase_build_order:Nn\l_ocgbase_ocgorder_tl{
- \tl_use:c{g_ocgbase_nd_0_chld_tl}
- }
+ \seq_if_empty:NF\g_ocgbase_order_root_seq{
+ \ocgbase_build_order:Nn\l_ocgbase_ocgorder_tl{root}
}
\tl_if_empty:NF\l_ocgbase_ocgorder_tl{
- \pbs_pdfobj:nnn{}{array}{\l_ocgbase_ocgorder_tl}
- \tl_set:Nx\l_ocgbase_ocgorderentry_tl{/Order~\pbs_pdflastobj:}
+ \pdf_object_unnamed_write:ne{array}{\l_ocgbase_ocgorder_tl}
+ \tl_set:Nx\l_ocgbase_ocgorderentry_tl{/Order~\pdf_object_ref_last:}
}
%generate RBGroups entry (radio button groups)
\tl_new:N\l_ocgbase_rbtn_groups_tl
@@ -566,16 +509,19 @@
}
\tl_new:N\l_ocgbase_rbgroupsentry_tl
\tl_if_empty:NF\l_ocgbase_rbtn_groups_tl{
- \pbs_pdfobj:nnn{}{array}{\l_ocgbase_rbtn_groups_tl}
- \tl_set:Nx\l_ocgbase_rbgroupsentry_tl{/RBGroups~\pbs_pdflastobj:}
+ \pdf_object_unnamed_write:ne{array}{\l_ocgbase_rbtn_groups_tl}
+ \tl_set:Nx\l_ocgbase_rbgroupsentry_tl{/RBGroups~\pdf_object_ref_last:}
}
\pdfmanagement_add:nnx{Catalog/OCProperties}{OCGs}{\g_ocgbase_ocgs_tl}
\pdfmanagement_add:nnx{Catalog/OCProperties}{D}{<<
- /AS~[
- <</Event/View /Category[/View] /OCGs~\l_ocgbase_ocgarray_tl>>
- <</Event/Print /Category[/Print] /OCGs~\l_ocgbase_ocgarray_tl>>
- <</Event/Export/Category[/Export]/OCGs~\l_ocgbase_ocgarray_tl>>
- ]
+ /Name~(OC~default~configuration)
+ \pdfmeta_standard_verify:nT{Catalog_OCProperties_no_AS}{ %for pdf/a compliance
+ /AS~[
+ <</Event/View /Category[/View] /OCGs~\l_ocgbase_ocgarray_tl>>
+ <</Event/Print /Category[/Print] /OCGs~\l_ocgbase_ocgarray_tl>>
+ <</Event/Export/Category[/Export]/OCGs~\l_ocgbase_ocgarray_tl>>
+ ]
+ }
/BaseState/ON~\l_ocgbase_offocgentry_tl
\l_ocgbase_ocgorderentry_tl
\l_ocgbase_rbgroupsentry_tl
@@ -586,12 +532,10 @@
}
%macro for inserting new OCG object
-\cs_generate_variant:Nn\pdf_object_new:nn{xn}
-\cs_generate_variant:Nn\pdf_object_write:nn{xx}
\int_new:N\g_ocgbase_int
\cs_new_protected_nopar:Nn\ocgbase_new_ocg:nnn{
- \pdf_object_new:xn{g_object_\int_use:N\g_ocgbase_int _pdf}{dict}
- \pdf_object_write:xx{g_object_\int_use:N\g_ocgbase_int _pdf}{
+ \exp_args:Ne\pdf_object_new:n{g_object_\int_use:N\g_ocgbase_int _pdf}
+ \exp_args:Neee\pdf_object_write:nnn{g_object_ \int_use:N\g_ocgbase_int _pdf}{dict}{
/Type/OCG/Name~(#1)~\str_if_eq:eeF{#2}{}{/Usage<<#2>>}
}
\tl_gput_right:Nx\g_ocgbase_ocgs_tl{~\pdf_object_ref_last:}
@@ -612,98 +556,45 @@
\cs_new_nopar:Nn\ocgbase_last_ocg:{\g_ocgbase_last_ocg_tl}
-\int_new:N\g_ocgbase_nd_int %node id
-\seq_new:N\g_ocgbase_tree_nd_stack_seq %stack with open ocg node id
-\seq_new:N\g_ocgbase_tree_ocg_stack_seq %stack with open ocg obj number
-\seq_gpush:Nn\g_ocgbase_tree_nd_stack_seq{0} %push root node
-\seq_gpush:Nn\g_ocgbase_tree_ocg_stack_seq{null} %push root node
+\seq_new:N\g_ocgbase_open_ocg_seq %stack with open ocg ref
+\seq_new:N\g_ocgbase_order_root_seq %seq taking ocg ref /Order root
-%macro for starting OCG object (and nested children) insertion into Order
+%macro for starting OCG object (and nested children) insertion into order
%hierarchy (shown as tree structure in the viewers `Layers' tab
\cs_new_protected_nopar:Nn\ocgbase_tree_node_begin:n{ % #1: OCG obj
- %get the parent node from stack
- \seq_get:NN\g_ocgbase_tree_nd_stack_seq\l__ocgbase_prnt_tl
- \tl_if_exist:cTF{g_ocgbase_nd_\l__ocgbase_prnt_tl _chld_tl}{
- %parent has >=1 children (i. e. my older siblings), traverse them
- \tl_set:Nv\l__ocgbase_prev_sbl_tl{g_ocgbase_nd_\l__ocgbase_prnt_tl _chld_tl}
- \tl_set:Nx\l__ocgbase_cur_ocg_tl{#1}
- \ocgbase_traverse_siblings:NN\l__ocgbase_prev_sbl_tl\l__ocgbase_cur_ocg_tl
- \str_if_empty:NTF\l__ocgbase_cur_ocg_tl{
- %I am the first child of my parent to refer to OCG #1
- \int_gincr:N\g_ocgbase_nd_int
- \tl_set:Nx\l__ocgbase_cur_nd_tl{\int_use:N\g_ocgbase_nd_int}
- %set myself as my next-older sibling's `next sibling'
- \tl_gset:cV{
- g_ocgbase_nd_\l__ocgbase_prev_sbl_tl _sbl_tl}\l__ocgbase_cur_nd_tl
- }{
- %there is already a sibling referring to OCG #1; no new node needs be
- %created
- \tl_set:NV\l__ocgbase_cur_nd_tl\l__ocgbase_prev_sbl_tl
- }
- }{
- %I am the very first child of my parent
- \int_gincr:N\g_ocgbase_nd_int
- \tl_set:Nx\l__ocgbase_cur_nd_tl{\int_use:N\g_ocgbase_nd_int}
- %set myself as my parent's first child
- \tl_gset:cV{g_ocgbase_nd_\l__ocgbase_prnt_tl _chld_tl}\l__ocgbase_cur_nd_tl
+ % get parent (either currently open ocg or root)
+ \seq_get:NNF\g_ocgbase_open_ocg_seq\l__ocgbase_prnt_tl{
+ \tl_set:Nn\l__ocgbase_prnt_tl{root}
}
- %set the OCG I am referring to
- \tl_gset:cx{g_ocgbase_nd_\l__ocgbase_cur_nd_tl _ocg_tl}{#1}
- %push current node and its associated OCG obj on the stacks
- \seq_gpush:NV\g_ocgbase_tree_nd_stack_seq\l__ocgbase_cur_nd_tl
- \seq_gpush:Nx\g_ocgbase_tree_ocg_stack_seq{#1}
-}
-
-%macro that ends insertion of OCG and sub-OCGs into Order tree
-\cs_new_protected:Nn\ocgbase_tree_node_end:{
- \seq_get:NN\g_ocgbase_tree_nd_stack_seq\l_tempa_tl
- \seq_get:NN\g_ocgbase_tree_ocg_stack_seq\l_tempb_tl
- \str_if_eq:eeT{
- \cs_if_exist_use:c{g_ocgbase_nd_\l_tempa_tl _ocg_tl}
- }{
- \l_tempb_tl
- }{
- \seq_gpop:NN\g_ocgbase_tree_nd_stack_seq\g_trash_tl
- \seq_gpop:NN\g_ocgbase_tree_ocg_stack_seq\g_trash_tl
+ %push current ocg ref on stack with open ocgs
+ \seq_gpush:Nx\g_ocgbase_open_ocg_seq{#1}
+ %create seq for current ocg if not yet existing and
+ %append ocg ref to its parent seq
+ \seq_if_exist:cF{g_ocgbase_order_#1_seq}{
+ \seq_new:c{g_ocgbase_order_#1_seq}
+ \seq_gput_right:cx{g_ocgbase_order_ \l__ocgbase_prnt_tl _seq}{#1}
}
}
-% helper macro (recursive); traverses siblings to find either
-% the node which refers to the same OCG (arg #2 remains un-modified), or
-% the last sibling inserted (arg #2 is cleared);
-% the node id of the sibling found is returned in arg #1
-\cs_new_protected:Nn\ocgbase_traverse_siblings:NN{
- % #1: current node (in/out), #2: OCG obj (in/out)
- \str_if_eq:eeF{#2}{\tl_use:c{g_ocgbase_nd_#1_ocg_tl}}{
- \tl_if_exist:cTF{g_ocgbase_nd_#1_sbl_tl}{
- \tl_set:Nv#1{g_ocgbase_nd_#1_sbl_tl}
- \ocgbase_traverse_siblings:NN#1#2
- }{
- \tl_clear:N#2
- }
- }
+%macro that ends insertion of current OCG into order tree
+\cs_new_protected:Nn\ocgbase_tree_node_end:{
+ %pop top ocg ref from stack with open ocgs
+ \seq_gpop:NN\g_ocgbase_open_ocg_seq\g_trash_tl
}
+%macro that builds global ocg order from hierarchy and saves it into tl var
\cs_new_protected_nopar:Nn\ocgbase_build_order:Nn{
% (recursive macro)
% #1: tl var to which the OCG order is written (output)
- % #2: starting node id (input; usually `1')
- \tl_set:Nx\l__ocgbase_cur_nd_tl{#2}
- % first, append the OCG obj the current node is referring to
- \tl_put_right:Nx#1{~\tl_use:c{g_ocgbase_nd_\l__ocgbase_cur_nd_tl _ocg_tl}}
- % second, traverse the tree starting with the first child node
- \tl_if_exist:cT{g_ocgbase_nd_\l__ocgbase_cur_nd_tl _chld_tl}{
- \seq_gpush:NV\g_ocgbase_tree_nd_stack_seq\l__ocgbase_cur_nd_tl
- \tl_put_right:Nn#1{~[}
- \ocgbase_build_order:Nn#1{
- \tl_use:c{g_ocgbase_nd_\l__ocgbase_cur_nd_tl _chld_tl}}
- \tl_put_right:Nn#1{~]}
- \seq_gpop:NN\g_ocgbase_tree_nd_stack_seq\l__ocgbase_cur_nd_tl
- }
- % third, traverse the tree starting with the next sibling node
- \tl_if_exist:cT{g_ocgbase_nd_\l__ocgbase_cur_nd_tl _sbl_tl}{
- \ocgbase_build_order:Nn#1{
- \tl_use:c{g_ocgbase_nd_\l__ocgbase_cur_nd_tl _sbl_tl}}
+ % #2: starting node (input; usually `root')
+ \seq_map_inline:cn{g_ocgbase_order_#2_seq}{
+ % first, append ocg ref to result tl var
+ \tl_put_right:Nx#1{~##1}
+ \seq_if_empty:cF{g_ocgbase_order_##1_seq}{
+ \tl_put_right:Nn#1{~[}
+ \ocgbase_build_order:Nn#1{##1}
+ \tl_put_right:Nn#1{~]}
+ }
}
}
@@ -740,7 +631,7 @@
% OC-marked content
\cs_new_protected_nopar:Nn\ocgbase_oc_bdc:n{\pbs_pdfbdc:nn{OC}{#1}}
-\cs_new_protected_nopar:Nn\ocgbase_oc_emc:{\pbs_pdfemc:}
+\cs_new_eq:NN\ocgbase_oc_emc:\pbs_pdfemc:
%stack of PDF obj references of currently open OCGs
\seq_new:N\g_ocgbase_open_stack_seq
diff --git a/Master/texmf-dist/tex/latex/ocgx2/ocgx2.sty b/Master/texmf-dist/tex/latex/ocgx2/ocgx2.sty
index a1081f88ac5..84d14323952 100644
--- a/Master/texmf-dist/tex/latex/ocgx2/ocgx2.sty
+++ b/Master/texmf-dist/tex/latex/ocgx2/ocgx2.sty
@@ -43,11 +43,11 @@
%
% The Current Maintainer of this work is A. Grahn.
- \def\g@ocgxii@date@tl{2024/03/18}
- \def\g@ocgxii@version@tl{0.57}
+ \def\g@ocgxii@date@tl{2024/09/16}
+ \def\g@ocgxii@version@tl{0.60}
\ProvidesExplPackage{ocgx2}{\g@ocgxii@date@tl}{\g@ocgxii@version@tl}
- {ports `ocgx' functionality to dvips+ps2pdf, xelatex and dvipdfmx}
+ {ports~`ocgx'~functionality~to~dvips+ps2pdf,~xelatex~and~dvipdfmx}
%creating global definitions
\cs_new_protected:Npn\ocgxii@newkey#1#2{\tl_gset:cx{#1}{#2}}
@@ -1579,8 +1579,8 @@
%
% The Current Maintainer of this work is A. Grahn.
-\def\g@ocgxii@date@tl{2024/03/18}
-\def\g@ocgxii@version@tl{0.57}
+\def\g@ocgxii@date@tl{2024/09/16}
+\def\g@ocgxii@version@tl{0.60}
\ProvidesExplPackage{ocgx2}{\g@ocgxii@date@tl}{\g@ocgxii@version@tl}
{ports `ocgx' functionality to dvips+ps2pdf, xelatex and dvipdfmx}
@@ -1810,8 +1810,8 @@
\cs_set_eq:NN\And \ocgxii_protected_dummy_cs:n
\cs_set_eq:NN\Or \ocgxii_protected_dummy_cs:n
\ocgxii_ocmd_read_visbility:xN{#2}\l_ocgxii_ocmd_visibility_tl
- \pdf_object_new:xn{g_object_\int_use:N\g_ocgbase_int _pdf}{dict}
- \pdf_object_write:xx{g_object_\int_use:N\g_ocgbase_int _pdf}{
+ \exp_args:Ne\pdf_object_new:n{g_object_\int_use:N\g_ocgbase_int _pdf}
+ \exp_args:Neee\pdf_object_write:nnn{g_object_\int_use:N\g_ocgbase_int _pdf}{dict}{
/Type/OCMD\l_ocgxii_ocmd_visibility_tl
}
\tl_gset:cx{g_pbs_objname_\pdf_object_ref_last: _tl}{
@@ -2385,104 +2385,132 @@
%
\bool_if:nTF{\l_ocgxii_nobreak_bool || \l_ocgxii_mouse_triggers_bool}{
\hbox_set:Nn\l_tmpa_box{#6}
- \bool_if:NTF\l_ocgxii_mouse_triggers_bool{
- % e,d,x mouse triggers require (non-breakable) /Widget annot
- \pdfannot_dict_put:nnn{link/GoTo}{Subtype}{/Widget}
- \pdfannot_dict_remove:nn{link/GoTo}{Border}
- }{
- \pdfannot_dict_put:nnn{link/GoTo}{Border}{[0~0~0]}
- }
- \pdfannot_dict_remove:nn{link/GoTo}{C}
- \pbs_pdfannot:nnnn{
- \dim_use:N\box_wd:N\l_tmpa_box}{
- \dim_use:N\box_ht:N\l_tmpa_box}{
- \dim_use:N\box_dp:N\l_tmpa_box
- }{
- \pdfannot_dict_use:n{link/GoTo}
+ % suppress annots with SetOCGState Action Subtype for pdf/a compliance
+ \pdfmeta_standard_verify:nT{annot_action_A}{
\bool_if:NTF\l_ocgxii_mouse_triggers_bool{
- /Ff~65536/FT/Btn/BS<</W~0>>
- /T~(ocgx2@\int_use:N\g_ocgxii_widcount_int)
- %treat mouse-up as mouse-click --> handle through /A dictionary
- \str_if_eq:eeF{}{
- \l_ocgxii_toswitch_u_tl\l_ocgxii_toshow_u_tl\l_ocgxii_tohide_u_tl
- }{
- /A <</S/SetOCGState/State [
- \str_if_eq:VnF\l_ocgxii_toswitch_u_tl{}{
- /Toggle~\l_ocgxii_toswitch_u_tl
- }
- \str_if_eq:VnF\l_ocgxii_toshow_u_tl{}{
- /ON~\l_ocgxii_toshow_u_tl
- }
- \str_if_eq:VnF\l_ocgxii_tohide_u_tl{}{
- /OFF~\l_ocgxii_tohide_u_tl
- }
- ]>>
- }
- % other mouse triggers need add. actions dict
- /AA <<
- %\str_if_eq:eeF{}{ % mouse-up
- % \l_ocgxii_toswitch_u_tl\l_ocgxii_toshow_u_tl\l_ocgxii_tohide_u_tl
- %}{
- % /U <</S/SetOCGState/State [
- % \str_if_eq:VnF\l_ocgxii_toswitch_u_tl{}{
- % /Toggle~\l_ocgxii_toswitch_u_tl
- % }
- % \str_if_eq:VnF\l_ocgxii_toshow_u_tl{}{
- % /ON~\l_ocgxii_toshow_u_tl
- % }
- % \str_if_eq:VnF\l_ocgxii_tohide_u_tl{}{
- % /OFF~\l_ocgxii_tohide_u_tl
- % }
- % ]>>
- %}
- \str_if_eq:eeF{}{ % mouse-down
- \l_ocgxii_toswitch_d_tl\l_ocgxii_toshow_d_tl\l_ocgxii_tohide_d_tl
- }{
- /D <</S/SetOCGState/State [
- \str_if_eq:VnF\l_ocgxii_toswitch_d_tl{}{
- /Toggle~\l_ocgxii_toswitch_d_tl
- }
- \str_if_eq:VnF\l_ocgxii_toshow_d_tl{}{
- /ON~\l_ocgxii_toshow_d_tl
- }
- \str_if_eq:VnF\l_ocgxii_tohide_d_tl{}{
- /OFF~\l_ocgxii_tohide_d_tl
- }
- ]>>
- }
- \str_if_eq:eeF{}{ % mouse-enter
- \l_ocgxii_toswitch_e_tl\l_ocgxii_toshow_e_tl\l_ocgxii_tohide_e_tl
- }{
- /E <</S/SetOCGState/State [
- \str_if_eq:VnF\l_ocgxii_toswitch_e_tl{}{
- /Toggle~\l_ocgxii_toswitch_e_tl
- }
- \str_if_eq:VnF\l_ocgxii_toshow_e_tl{}{
- /ON~\l_ocgxii_toshow_e_tl
- }
- \str_if_eq:VnF\l_ocgxii_tohide_e_tl{}{
- /OFF~\l_ocgxii_tohide_e_tl
- }
- ]>>
- }
- \str_if_eq:eeF{}{ % mouse-exit
- \l_ocgxii_toswitch_x_tl\l_ocgxii_toshow_x_tl\l_ocgxii_tohide_x_tl
+ % e,d,x mouse triggers require (non-breakable) /Widget annot
+ \pdfannot_dict_put:nnn{link/GoTo}{Subtype}{/Widget}
+ \pdfannot_dict_remove:nn{link/GoTo}{Border}
+ }{
+ \pdfannot_dict_put:nnn{link/GoTo}{Border}{[0~0~0]}
+ }
+ \pdfannot_dict_remove:nn{link/GoTo}{C}
+ \pbs_pdfannot:nnnn{
+ \dim_use:N\box_wd:N\l_tmpa_box}{
+ \dim_use:N\box_ht:N\l_tmpa_box}{
+ \dim_use:N\box_dp:N\l_tmpa_box
+ }{
+ \pdfannot_dict_use:n{link/GoTo}
+ \bool_if:NTF\l_ocgxii_mouse_triggers_bool{
+ /Ff~65536/FT/Btn/BS<</W~0>>
+ /T~(ocgx2@\int_use:N\g_ocgxii_widcount_int)
+ %treat mouse-up as mouse-click --> handle through /A dictionary
+ \str_if_eq:eeF{}{
+ \l_ocgxii_toswitch_u_tl\l_ocgxii_toshow_u_tl\l_ocgxii_tohide_u_tl
}{
- /X <</S/SetOCGState/State [
- \str_if_eq:VnF\l_ocgxii_toswitch_x_tl{}{
- /Toggle~\l_ocgxii_toswitch_x_tl
+ /A <</S/SetOCGState/State [
+ \str_if_eq:VnF\l_ocgxii_toswitch_u_tl{}{
+ /Toggle~\l_ocgxii_toswitch_u_tl
}
- \str_if_eq:VnF\l_ocgxii_toshow_x_tl{}{
- /ON~\l_ocgxii_toshow_x_tl
+ \str_if_eq:VnF\l_ocgxii_toshow_u_tl{}{
+ /ON~\l_ocgxii_toshow_u_tl
}
- \str_if_eq:VnF\l_ocgxii_tohide_x_tl{}{
- /OFF~\l_ocgxii_tohide_x_tl
+ \str_if_eq:VnF\l_ocgxii_tohide_u_tl{}{
+ /OFF~\l_ocgxii_tohide_u_tl
}
]>>
}
- >>
- }{
- %mouse-up alone
+ % other mouse triggers need add. actions dict
+ /AA <<
+ %\str_if_eq:eeF{}{ % mouse-up
+ % \l_ocgxii_toswitch_u_tl\l_ocgxii_toshow_u_tl\l_ocgxii_tohide_u_tl
+ %}{
+ % /U <</S/SetOCGState/State [
+ % \str_if_eq:VnF\l_ocgxii_toswitch_u_tl{}{
+ % /Toggle~\l_ocgxii_toswitch_u_tl
+ % }
+ % \str_if_eq:VnF\l_ocgxii_toshow_u_tl{}{
+ % /ON~\l_ocgxii_toshow_u_tl
+ % }
+ % \str_if_eq:VnF\l_ocgxii_tohide_u_tl{}{
+ % /OFF~\l_ocgxii_tohide_u_tl
+ % }
+ % ]>>
+ %}
+ \str_if_eq:eeF{}{ % mouse-down
+ \l_ocgxii_toswitch_d_tl\l_ocgxii_toshow_d_tl\l_ocgxii_tohide_d_tl
+ }{
+ /D <</S/SetOCGState/State [
+ \str_if_eq:VnF\l_ocgxii_toswitch_d_tl{}{
+ /Toggle~\l_ocgxii_toswitch_d_tl
+ }
+ \str_if_eq:VnF\l_ocgxii_toshow_d_tl{}{
+ /ON~\l_ocgxii_toshow_d_tl
+ }
+ \str_if_eq:VnF\l_ocgxii_tohide_d_tl{}{
+ /OFF~\l_ocgxii_tohide_d_tl
+ }
+ ]>>
+ }
+ \str_if_eq:eeF{}{ % mouse-enter
+ \l_ocgxii_toswitch_e_tl\l_ocgxii_toshow_e_tl\l_ocgxii_tohide_e_tl
+ }{
+ /E <</S/SetOCGState/State [
+ \str_if_eq:VnF\l_ocgxii_toswitch_e_tl{}{
+ /Toggle~\l_ocgxii_toswitch_e_tl
+ }
+ \str_if_eq:VnF\l_ocgxii_toshow_e_tl{}{
+ /ON~\l_ocgxii_toshow_e_tl
+ }
+ \str_if_eq:VnF\l_ocgxii_tohide_e_tl{}{
+ /OFF~\l_ocgxii_tohide_e_tl
+ }
+ ]>>
+ }
+ \str_if_eq:eeF{}{ % mouse-exit
+ \l_ocgxii_toswitch_x_tl\l_ocgxii_toshow_x_tl\l_ocgxii_tohide_x_tl
+ }{
+ /X <</S/SetOCGState/State [
+ \str_if_eq:VnF\l_ocgxii_toswitch_x_tl{}{
+ /Toggle~\l_ocgxii_toswitch_x_tl
+ }
+ \str_if_eq:VnF\l_ocgxii_toshow_x_tl{}{
+ /ON~\l_ocgxii_toshow_x_tl
+ }
+ \str_if_eq:VnF\l_ocgxii_tohide_x_tl{}{
+ /OFF~\l_ocgxii_tohide_x_tl
+ }
+ ]>>
+ }
+ >>
+ }{
+ %mouse-up alone
+ /A <</S/SetOCGState
+ /State [
+ \str_if_eq:VnF{\l_ocgxii_toswitch_u_tl}{}{
+ /Toggle~\l_ocgxii_toswitch_u_tl}~
+ \str_if_eq:VnF{\l_ocgxii_toshow_u_tl}{}{/ON~\l_ocgxii_toshow_u_tl}~
+ \str_if_eq:VnF{\l_ocgxii_tohide_u_tl}{}{/OFF~\l_ocgxii_tohide_u_tl}
+ ]
+ >>
+ }
+ }
+ \bool_if:NT\l_ocgxii_mouse_triggers_bool{
+ \pbs_appendtofields:n{\pbs_pdflastann:}
+ \int_gincr:N\g_ocgxii_widcount_int
+ }
+ }
+ \box_use_drop:N\l_tmpa_box
+ }{
+ % suppress annots with SetOCGState Action Subtype for pdf/a compliance
+ \pdfmeta_standard_verify:nTF{annot_action_A}{
+ \bool_if:NF\g_ocgxii_hyperref_loaded_bool{
+ \pdfannot_dict_put:nnn{link/GoTo}{Border}{[0~0~0]}
+ }
+ %line-breakable annotation
+ \pbs_pdflink:nn{
+ %look and feel of hyperref internal links
+ \pdfannot_dict_use:n{link/GoTo}
/A <</S/SetOCGState
/State [
\str_if_eq:VnF{\l_ocgxii_toswitch_u_tl}{}{
@@ -2491,33 +2519,12 @@
\str_if_eq:VnF{\l_ocgxii_tohide_u_tl}{}{/OFF~\l_ocgxii_tohide_u_tl}
]
>>
+ }{
+ \hook_use:n{pdfannot/link/GoTo/begin}
+ #6
+ \hook_use:n{pdfannot/link/GoTo/end}
}
- }\box_use_drop:N\l_tmpa_box
- \bool_if:NT\l_ocgxii_mouse_triggers_bool{
- \pbs_appendtofields:n{\pbs_pdflastann:}
- \int_gincr:N\g_ocgxii_widcount_int
- }
- }{
- \bool_if:NF\g_ocgxii_hyperref_loaded_bool{
- \pdfannot_dict_put:nnn{link/GoTo}{Border}{[0~0~0]}
- }
- %line-breakable annotation
- \pbs_pdflink:nn{
- %look and feel of hyperref internal links
- \pdfannot_dict_use:n{link/GoTo}
- /A <</S/SetOCGState
- /State [
- \str_if_eq:VnF{\l_ocgxii_toswitch_u_tl}{}{
- /Toggle~\l_ocgxii_toswitch_u_tl}~
- \str_if_eq:VnF{\l_ocgxii_toshow_u_tl}{}{/ON~\l_ocgxii_toshow_u_tl}~
- \str_if_eq:VnF{\l_ocgxii_tohide_u_tl}{}{/OFF~\l_ocgxii_tohide_u_tl}
- ]
- >>
- }{
- \hook_use:n{pdfannot/link/GoTo/begin}
- #6
- \hook_use:n{pdfannot/link/GoTo/end}
- }
+ }{#6}
}
\group_end:
}
diff --git a/Master/texmf-dist/tex/latex/outilsgeomtikz/OutilsGeomTikz.sty b/Master/texmf-dist/tex/latex/outilsgeomtikz/OutilsGeomTikz.sty
index bb79723d21a..5f6cd304105 100644
--- a/Master/texmf-dist/tex/latex/outilsgeomtikz/OutilsGeomTikz.sty
+++ b/Master/texmf-dist/tex/latex/outilsgeomtikz/OutilsGeomTikz.sty
@@ -2,7 +2,8 @@
% licence........: Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{OutilsGeomTikz}[2023/12/13 v0.1.5 Outils geometriques en TikZ]
+\ProvidesPackage{OutilsGeomTikz}[2024/08/29 v0.1.6 Outils geometriques en TikZ]
+% 0.1.6 Correction de bugs avec pdflatex + amélioration de la gestion des rotations/échelles des labels (tks Cyril I. ^^)
% 0.1.5 Modification de la graduation intérieure pour les rapporteurs 180°
% 0.1.4 Possibilité de positionner les outils avec deux points (angle calculé automatiquement)
% 0.1.3 Ajout du pourcenteur
@@ -60,7 +61,8 @@
Origine=\xdef\REGLposOrigin{#1},%
Rotation=\def\REGLangle{#1},%
Opacite=\def\REGLopac{#1},%
- PosVal=\def\REGLposval{#1}
+ PosVal=\def\REGLposval{#1},%
+ EchelleValeurs=\def\REGLechlabel{#1}
}
\setKVdefault[RegleGeom]{%
@@ -74,7 +76,8 @@
AfficheValeurs=true,%
Fond=false,%
Opacite=0.5,%
- PosVal=m
+ PosVal=m,%
+ EchelleValeurs=0.8
}
\NewDocumentCommand{\tkzRegle}{ O{} }{%
@@ -88,7 +91,7 @@
}{}%
\xdef\REGLlongueur{\fpeval{max(3,\REGLlongueur)}}%valeurs mini
\xdef\REGLlargeur{\fpeval{max(1.5,\REGLlargeur)}}
- \begin{scope}[shift={(\REGLposOrigin)},rotate=\REGLangle,scale=\REGLechelle]
+ \begin{scope}[shift={(\REGLposOrigin)},rotate=\REGLangle,scale=\REGLechelle,transform shape]
\ifboolKV[RegleGeom]{Fond}
{%
\begin{scope}
@@ -104,13 +107,13 @@
\ifboolKV[RegleGeom]{AfficheValeurs}%
{%
\IfSubStr{\REGLposval}{h}
- {\foreach \i in {0,1,...,\REGLlongueur} \draw[\REGLcouleur] (\i,{-0.5}) node[inner sep=1pt,outer sep=1pt,rotate=\REGLangle,scale={0.8*\REGLechelle},font=\small,below] {$\i$} ;}
+ {\foreach \i in {0,1,...,\REGLlongueur} {\draw[\REGLcouleur] (\i,{-0.5}) node[inner sep=1pt,outer sep=1pt,scale={\REGLechlabel},font=\small,below] {$\i$} ;}}
{}
\IfSubStr{\REGLposval}{m}
- {\foreach \i in {0,1,...,\REGLlongueur} \draw[\REGLcouleur] (\i,{-0.5*\REGLlargeur}) node[inner sep=1pt,outer sep=1pt,rotate=\REGLangle,scale={0.8*\REGLechelle},font=\small] {$\i$} ;}
+ {\foreach \i in {0,1,...,\REGLlongueur} {\draw[\REGLcouleur] (\i,{-0.5*\REGLlargeur}) node[inner sep=1pt,outer sep=1pt,scale={\REGLechlabel},font=\small] {$\i$} ;}}
{}
\IfSubStr{\REGLposval}{b}
- {\foreach \i in {0,1,...,\REGLlongueur} \draw[\REGLcouleur] (\i,{-\REGLlargeur+0.5}) node[inner sep=1pt,outer sep=1pt,rotate=\REGLangle,scale={0.8*\REGLechelle},font=\small,above] {\rotatebox{180}{$\fpeval{trunc(\REGLlongueur)-\i}$}} ;}
+ {\foreach \i in {0,1,...,\REGLlongueur} {\draw[\REGLcouleur] (\i,{-\REGLlargeur+0.5}) node[inner sep=1pt,outer sep=1pt,scale={\REGLechlabel},font=\small,above] {\rotatebox{180}{$\fpeval{trunc(\REGLlongueur)-\i}$}} ;}}
{}
}%
{}%
@@ -126,7 +129,8 @@
CouleurFond=\def\REGLREPcouleurfond{#1},%
Origine=\def\REGLREPposOrigin{#1},%
Rotation=\def\REGLREPangle{#1},%
- Opacite=\def\REGLREPopac{#1}
+ Opacite=\def\REGLREPopac{#1},%
+ EchelleValeurs=\def\REGLREPechlabel{#1}
}
\setKVdefault[RegleRepereGeom]{%
@@ -140,7 +144,8 @@
AfficheValeurs=true,%
Fond=false,%
Opacite=0.5,%
- Retourne=false
+ Retourne=false,%
+ EchelleValeurs=0.8
}
\NewDocumentCommand{\tkzRegleRepere}{ O{} }{%
@@ -154,7 +159,7 @@
\pgfmathanglebetweenpoints{\pgfpointanchor{\REGLREPposOrigin}{center}}{\pgfpointanchor{\tmppointdeux}{center}}%
\edef\REGLREPangle{\pgfmathresult}%
}{}%
- \begin{scope}[shift={(\REGLREPposOrigin)},rotate=\REGLREPangle,scale=\REGLREPechelle]
+ \begin{scope}[shift={(\REGLREPposOrigin)},rotate=\REGLREPangle,scale=\REGLREPechelle,transform shape]
%bases de la règle-repère
\ifboolKV[RegleRepereGeom]{Fond}%
{\draw[draw=none,fill=\REGLREPcouleurfond!10!white,fill opacity=\REGLREPopac,rounded corners] (-0.5,0) rectangle++ ({\REGLREPlongueur+1},{-\REGLREPlargeur}) ;}%
@@ -175,12 +180,12 @@
{%
\ifboolKV[RegleRepereGeom]{Retourne}%
{%
- {\foreach \i in {0,1,...,\REGLREPlongueur} \draw[\REGLREPcouleur] (\i,{-0.5}) node[inner sep=1pt,outer sep=1pt,rotate=\REGLREPangle,scale={0.8*\REGLREPechelle},font=\small,below] {$\fpeval{-trunc(0.5*\REGLREPlongueur)+\i}$} ;}
- {\foreach \i in {0,1,...,\REGLREPlongueur} \draw[\REGLREPcouleur] (\i,{-\REGLREPlargeur+0.5}) node[inner sep=1pt,outer sep=1pt,rotate=\REGLREPangle,scale={0.8*\REGLREPechelle},font=\small,above] {\rotatebox{180}{$\inteval{\REGLREPlongueur-\i}$}} ;}
+ {\foreach \i in {0,1,...,\REGLREPlongueur} {\draw[\REGLREPcouleur] (\i,{-0.5}) node[inner sep=1pt,outer sep=1pt,scale={\REGLREPechlabel},font=\small,below] {$\fpeval{-trunc(0.5*\REGLREPlongueur)+\i}$} ;}}
+ {\foreach \i in {0,1,...,\REGLREPlongueur} {\draw[\REGLREPcouleur] (\i,{-\REGLREPlargeur+0.5}) node[inner sep=1pt,outer sep=1pt,scale={\REGLREPechlabel},font=\small,above] {\rotatebox{180}{$\inteval{\REGLREPlongueur-\i}$}} ;}}
}%
{%
- {\foreach \i in {0,1,...,\REGLREPlongueur} \draw[\REGLREPcouleur] (\i,{-0.5}) node[inner sep=1pt,outer sep=1pt,rotate=\REGLREPangle,scale={0.8*\REGLREPechelle},font=\small,below] {$\i$} ;}
- {\foreach \i in {0,1,...,\REGLREPlongueur} \draw[\REGLREPcouleur] (\i,{-\REGLREPlargeur+0.5}) node[inner sep=1pt,outer sep=1pt,rotate=\REGLREPangle,scale={0.8*\REGLREPechelle},font=\small,above] {\rotatebox{180}{$\fpeval{trunc(0.5*\REGLREPlongueur)-\i}$}} ;}
+ {\foreach \i in {0,1,...,\REGLREPlongueur} {\draw[\REGLREPcouleur] (\i,{-0.5}) node[inner sep=1pt,outer sep=1pt,scale={\REGLREPechlabel},font=\small,below] {$\i$} ;}}
+ {\foreach \i in {0,1,...,\REGLREPlongueur} {\draw[\REGLREPcouleur] (\i,{-\REGLREPlargeur+0.5}) node[inner sep=1pt,outer sep=1pt,scale={\REGLREPechlabel},font=\small,above] {\rotatebox{180}{$\fpeval{trunc(0.5*\REGLREPlongueur)-\i}$}} ;}}
}%
}
{}%
@@ -196,7 +201,8 @@
CouleurFond=\def\REQcouleurfond{#1},%
Origine=\def\REQposOrigin{#1},%
Rotation=\def\REQangle{#1},%
- Opacite=\def\REQopac{#1}
+ Opacite=\def\REQopac{#1},%
+ EchelleValeurs=\def\REQechlabel{#1}
}
\setKVdefault[RequerreGeom]{%
@@ -209,7 +215,8 @@
Rotation=0,%
AfficheValeurs=true,%
Fond=false,%
- Opacite=0.5
+ Opacite=0.5,%
+ EchelleValeurs=0.8
}
\NewDocumentCommand{\tkzRequerre}{ O{} }{%
@@ -223,7 +230,7 @@
\pgfmathanglebetweenpoints{\pgfpointanchor{\REQposOrigin}{center}}{\pgfpointanchor{\tmppointdeux}{center}}%
\edef\REQangle{\pgfmathresult}%
}{}%
- \begin{scope}[shift={(\REQposOrigin)},rotate=\REQangle,scale=\REQechelle]
+ \begin{scope}[shift={(\REQposOrigin)},rotate=\REQangle,scale=\REQechelle,transform shape]
\ifboolKV[RequerreGeom]{Fond}
{
\fill[draw=none,rounded corners,fill=\REQcouleurfond!10!white,fill opacity=\REQopac] ({-\REQlongueur*0.5},0) rectangle ({\REQlongueur*0.5},{-\REQlargeur}) ;
@@ -243,10 +250,10 @@
\end{scope}
\ifboolKV[RequerreGeom]{AfficheValeurs}%
{%
- \draw[\REQcouleur] (0,-0.5) node[inner sep=1pt,outer sep=1pt,rotate=\REQangle,scale={0.8*\REQechelle},font=\small,below] {$0$} ;
+ \draw[\REQcouleur] (0,-0.5) node[inner sep=1pt,outer sep=1pt,scale={\REQechlabel},font=\small,below] {$0$} ;
\foreach \i in {1,2,...,\fpeval{0.5*\REQlongueur-0.5}}{%
- \draw[\REQcouleur] (\i,-0.5) node[inner sep=1pt,outer sep=1pt,rotate=\REQangle,scale={0.8*\REQechelle},font=\small,below] {$\i$} ;
- \draw[\REQcouleur] (-\i,-0.5) node[inner sep=1pt,outer sep=1pt,rotate=\REQangle,scale={0.8*\REQechelle},font=\small,below] {$-\i$} ;}
+ \draw[\REQcouleur] (\i,-0.5) node[inner sep=1pt,outer sep=1pt,scale={\REQechlabel},font=\small,below] {$\i$} ;
+ \draw[\REQcouleur] (-\i,-0.5) node[inner sep=1pt,outer sep=1pt,scale={\REQechlabel},font=\small,below] {$-\i$} ;}
}%
{}%
\end{scope}
@@ -260,7 +267,8 @@
CouleurFond=\def\EQcouleurfond{#1},%
Origine=\def\EQposOrigin{#1},%
Rotation=\def\EQangle{#1},%
- Opacite=\def\EQopac{#1}
+ Opacite=\def\EQopac{#1},%
+ EchelleValeurs=\def\EQechlabel{#1}
}
\setKVdefault[EquerreGeom]{%
@@ -273,7 +281,8 @@
AfficheValeurs=true,%
Fond=false,%
Opacite=0.5,%
- PetitCote=false
+ PetitCote=false,%
+ EchelleValeurs=0.8
}
\NewDocumentCommand{\tkzEquerre}{ O{} }{%
@@ -293,7 +302,7 @@
\edef\EQangle{\fpeval{\pgfmathresult-90}}%
}%
}{}%
- \begin{scope}[shift={(\EQposOrigin)},rotate=\EQangle,scale=\EQechelle]
+ \begin{scope}[shift={(\EQposOrigin)},rotate=\EQangle,scale=\EQechelle,transform shape]
\ifboolKV[EquerreGeom]{Fond}
{%
\begin{scope} %diff extérieur-intérieur
@@ -318,10 +327,12 @@
\foreach \y in {0,1,...,\fpeval{0.925*\EQlongueur}} {\draw[\EQcouleur] (0,\y)--(0.4,\y) ;}
\ifboolKV[EquerreGeom]{AfficheValeurs}%
{%
- \foreach \i in {1,2,...,\fpeval{0.9*\EQlongueur-1}}
- \draw[\EQcouleur] (0.4,\i) node[inner sep=1pt,outer sep=1pt,rotate=\EQangle,scale={0.8*\EQechelle},font=\small,right] {\rotatebox{90}{$\i$}} ;
- \foreach \i in {1,2,...,\fpeval{0.9*\EQlargeur-0.5}}
- \draw[\EQcouleur] (\i,0.4) node[inner sep=1pt,outer sep=1pt,rotate=\EQangle,scale={0.8*\EQechelle},font=\small,above] {\rotatebox{180}{$\i$}} ;
+ \foreach \i in {1,2,...,\fpeval{0.9*\EQlongueur-1}}{%
+ \draw[\EQcouleur] (0.4,\i) node[inner sep=1pt,outer sep=1pt,scale={\EQechlabel},font=\small,right] {\rotatebox{90}{$\i$}} ;
+ }%
+ \foreach \i in {1,2,...,\fpeval{0.9*\EQlargeur-0.5}}{%
+ \draw[\EQcouleur] (\i,0.4) node[inner sep=1pt,outer sep=1pt,scale={\EQechlabel},font=\small,above] {\rotatebox{180}{$\i$}} ;
+ }%
}%
{}%
\end{scope}
@@ -336,7 +347,8 @@
CouleurFond=\def\RAPPcouleurfond{#1},%
Origine=\def\RAPPposOrigin{#1},%
Rotation=\def\RAPPangle{#1},%
- Opacite=\def\RAPPopac{#1}
+ Opacite=\def\RAPPopac{#1},%
+ EchelleValeurs=\def\RAPPechlabel{#1}
}
\setKVdefault[RapporteurGeom]{%
@@ -350,13 +362,14 @@
Fond=false,%
Opacite=0.5,%
Complet=false,%
- GraduationsInt=false
+ GraduationsInt=false,%
+ EchelleValeurs=0.8
}
\NewDocumentCommand{\tkzRapporteur}{ O{} }{%
\useKVdefault[RapporteurGeom]%
\setKV[RapporteurGeom]{#1}%
- \begin{scope}[shift={(\RAPPposOrigin)},rotate=\RAPPangle,scale=\RAPPechelle,every node/.style={rotate=\RAPPangle}]
+ \begin{scope}[shift={(\RAPPposOrigin)},rotate=\RAPPangle,scale=\RAPPechelle,transform shape]
\ifboolKV[RapporteurGeom]{Complet}
{
%fond
@@ -382,27 +395,27 @@
%valeurs si booléen
\ifboolKV[RapporteurGeom]{AfficheAngles}
{%
- \draw[\RAPPcouleur] (0:2.75) node[rotate=90,scale=\fpeval{0.8*\RAPPechelle*\RAPPechangle},font=\tiny] {$0$} ;
- \draw[\RAPPcouleur] (180:3.25) node[rotate=90,scale=\fpeval{0.8*\RAPPechelle*\RAPPechangle},font=\tiny] {$\pm 180$} ;
- \draw[\RAPPcouleur] (180:2.75) node[rotate=90,scale=\fpeval{0.8*\RAPPechelle*\RAPPechangle},font=\tiny] {$\pm \pi$} ;
+ \draw[\RAPPcouleur] (0:2.75) node[rotate=90,scale=\fpeval{\RAPPechlabel*\RAPPechangle},font=\tiny] {$0$} ;
+ \draw[\RAPPcouleur] (180:3.25) node[rotate=90,scale=\fpeval{\RAPPechlabel*\RAPPechangle},font=\tiny] {$\pm 180$} ;
+ \draw[\RAPPcouleur] (180:2.75) node[rotate=90,scale=\fpeval{\RAPPechlabel*\RAPPechangle},font=\tiny] {$\pm \pi$} ;
\foreach \i in {0,10,...,170}
- {\draw[\RAPPcouleur] (\i:3.25) node[rotate={\i-90},scale=\fpeval{0.8*\RAPPechelle*\RAPPechangle},font=\tiny] {$\i$} ;}
- \draw[\RAPPcouleur] (30:2.75) node[rotate={30-90},scale=\fpeval{0.8*\RAPPechelle*\RAPPechangle},font=\tiny] {$\nicefrac{\pi}{6}$} ;
- \draw[\RAPPcouleur] (45:2.75) node[rotate={45-90},scale=\fpeval{0.8*\RAPPechelle*\RAPPechangle},font=\tiny] {$\nicefrac{\pi}{4}$} ;
- \draw[\RAPPcouleur] (60:2.75) node[rotate={60-90},scale=\fpeval{0.8*\RAPPechelle*\RAPPechangle},font=\tiny] {$\nicefrac{\pi}{3}$} ;
- \draw[\RAPPcouleur] (90:2.75) node[rotate={90-90},scale=\fpeval{0.8*\RAPPechelle*\RAPPechangle},font=\tiny] {$\nicefrac{\pi}{2}$} ;
- \draw[\RAPPcouleur] (120:2.75) node[rotate={120-90},scale=\fpeval{0.8*\RAPPechelle*\RAPPechangle},font=\tiny] {$\nicefrac{2\pi}{3}$} ;
- \draw[\RAPPcouleur] (135:2.75) node[rotate={135-90},scale=\fpeval{0.8*\RAPPechelle*\RAPPechangle},font=\tiny] {$\nicefrac{3\pi}{4}$} ;
- \draw[\RAPPcouleur] (150:2.75) node[rotate={150-90},scale=\fpeval{0.8*\RAPPechelle*\RAPPechangle},font=\tiny] {$\nicefrac{5\pi}{6}$} ;
+ {\draw[\RAPPcouleur] (\i:3.25) node[rotate={\i-90},scale=\fpeval{\RAPPechlabel*\RAPPechangle},font=\tiny] {$\i$} ;}
+ \draw[\RAPPcouleur] (30:2.75) node[rotate={30-90},scale=\fpeval{\RAPPechlabel*\RAPPechangle},font=\tiny] {$\nicefrac{\pi}{6}$} ;
+ \draw[\RAPPcouleur] (45:2.75) node[rotate={45-90},scale=\fpeval{\RAPPechlabel*\RAPPechangle},font=\tiny] {$\nicefrac{\pi}{4}$} ;
+ \draw[\RAPPcouleur] (60:2.75) node[rotate={60-90},scale=\fpeval{\RAPPechlabel*\RAPPechangle},font=\tiny] {$\nicefrac{\pi}{3}$} ;
+ \draw[\RAPPcouleur] (90:2.75) node[rotate={90-90},scale=\fpeval{\RAPPechlabel*\RAPPechangle},font=\tiny] {$\nicefrac{\pi}{2}$} ;
+ \draw[\RAPPcouleur] (120:2.75) node[rotate={120-90},scale=\fpeval{\RAPPechlabel*\RAPPechangle},font=\tiny] {$\nicefrac{2\pi}{3}$} ;
+ \draw[\RAPPcouleur] (135:2.75) node[rotate={135-90},scale=\fpeval{\RAPPechlabel*\RAPPechangle},font=\tiny] {$\nicefrac{3\pi}{4}$} ;
+ \draw[\RAPPcouleur] (150:2.75) node[rotate={150-90},scale=\fpeval{\RAPPechlabel*\RAPPechangle},font=\tiny] {$\nicefrac{5\pi}{6}$} ;
\foreach \i in {10,20,...,170}
- {\draw[\RAPPcouleur] ({-\i}:3.25) node[rotate={270-\i},scale=\fpeval{0.8*\RAPPechelle*\RAPPechangle},font=\tiny] {$-\i$} ;}
- \draw[\RAPPcouleur] (-30:2.75) node[rotate={270-30},scale=\fpeval{0.8*\RAPPechelle*\RAPPechangle},font=\tiny] {$\nicefrac{-\pi}{6}$} ;
- \draw[\RAPPcouleur] (-45:2.75) node[rotate={270-45},scale=\fpeval{0.8*\RAPPechelle*\RAPPechangle},font=\tiny] {$\nicefrac{-\pi}{4}$} ;
- \draw[\RAPPcouleur] (-60:2.75) node[rotate={270-60},scale=\fpeval{0.8*\RAPPechelle*\RAPPechangle},font=\tiny] {$\nicefrac{-\pi}{3}$} ;
- \draw[\RAPPcouleur] (-90:2.75) node[rotate={270-90},scale=\fpeval{0.8*\RAPPechelle*\RAPPechangle},font=\tiny] {$\nicefrac{-\pi}{2}$} ;
- \draw[\RAPPcouleur] (-120:2.75) node[rotate={270-120},scale=\fpeval{0.8*\RAPPechelle*\RAPPechangle},font=\tiny] {$\nicefrac{-2\pi}{3}$} ;
- \draw[\RAPPcouleur] (-135:2.75) node[rotate={270-135},scale=\fpeval{0.8*\RAPPechelle*\RAPPechangle},font=\tiny] {$\nicefrac{-3\pi}{4}$} ;
- \draw[\RAPPcouleur] (-150:2.75) node[rotate={270-150},scale=\fpeval{0.8*\RAPPechelle*\RAPPechangle},font=\tiny] {$\nicefrac{-5\pi}{6}$} ;
+ {\draw[\RAPPcouleur] ({-\i}:3.25) node[rotate={270-\i},scale=\fpeval{\RAPPechlabel*\RAPPechangle},font=\tiny] {$-\i$} ;}
+ \draw[\RAPPcouleur] (-30:2.75) node[rotate={270-30},scale=\fpeval{\RAPPechlabel*\RAPPechangle},font=\tiny] {$\nicefrac{-\pi}{6}$} ;
+ \draw[\RAPPcouleur] (-45:2.75) node[rotate={270-45},scale=\fpeval{\RAPPechlabel*\RAPPechangle},font=\tiny] {$\nicefrac{-\pi}{4}$} ;
+ \draw[\RAPPcouleur] (-60:2.75) node[rotate={270-60},scale=\fpeval{\RAPPechlabel*\RAPPechangle},font=\tiny] {$\nicefrac{-\pi}{3}$} ;
+ \draw[\RAPPcouleur] (-90:2.75) node[rotate={270-90},scale=\fpeval{\RAPPechlabel*\RAPPechangle},font=\tiny] {$\nicefrac{-\pi}{2}$} ;
+ \draw[\RAPPcouleur] (-120:2.75) node[rotate={270-120},scale=\fpeval{\RAPPechlabel*\RAPPechangle},font=\tiny] {$\nicefrac{-2\pi}{3}$} ;
+ \draw[\RAPPcouleur] (-135:2.75) node[rotate={270-135},scale=\fpeval{\RAPPechlabel*\RAPPechangle},font=\tiny] {$\nicefrac{-3\pi}{4}$} ;
+ \draw[\RAPPcouleur] (-150:2.75) node[rotate={270-150},scale=\fpeval{\RAPPechlabel*\RAPPechangle},font=\tiny] {$\nicefrac{-5\pi}{6}$} ;
}{}
}
{
@@ -440,9 +453,9 @@
\ifboolKV[RapporteurGeom]{AfficheAngles}
{%
\foreach \i in {0,10,...,180}
- {\draw[\RAPPcouleur] (\i:3.2) node[rotate={\i-90},scale=\fpeval{\RAPPechelle*\RAPPechangle},font=\tiny] {\i} ;}
+ {\draw[\RAPPcouleur] (\i:3.2) node[rotate={\i-90},scale=\fpeval{\RAPPechangle},font=\tiny] {\i} ;}
\foreach \i in {0,10,...,180}
- {\draw[\RAPPcouleur] (\i:2.7) node[rotate={\i-90},scale=\fpeval{\RAPPechelle*\RAPPechangle},font=\tiny] {\inteval{180-\i}} ;}
+ {\draw[\RAPPcouleur] (\i:2.7) node[rotate={\i-90},scale=\fpeval{\RAPPechangle},font=\tiny] {\inteval{180-\i}} ;}
}{}
}
\end{scope}
@@ -455,7 +468,8 @@
CouleurFond=\def\POURCcouleurfond{#1},%
Origine=\def\POURCposOrigin{#1},%
Rotation=\def\POURCangle{#1},%
- Opacite=\def\POURCopac{#1}
+ Opacite=\def\POURCopac{#1},%
+ EchelleValeurs=\def\POURCechlabel{#1}
}
\setKVdefault[Pourcenteur]{%
@@ -468,13 +482,14 @@
AfficheValeurs=true,%
Fond=false,%
Opacite=0.5,%
- Decoration=true
+ Decoration=true,%
+ EchelleValeurs=0.8
}
\NewDocumentCommand{\tkzPourcenteur}{ O{} }{%
\useKVdefault[Pourcenteur]%
\setKV[Pourcenteur]{#1}%
- \begin{scope}[shift={(\POURCposOrigin)},rotate=\POURCangle,scale=\POURCechelle,every node/.style={rotate=\POURCangle}]
+ \begin{scope}[shift={(\POURCposOrigin)},rotate=\POURCangle,scale=\POURCechelle,transform shape]
\ifboolKV[Pourcenteur]{Fond}
{%
\fill[draw=none,fill=\POURCcouleurfond!10!white,fill opacity=\POURCopac] (0,0) circle[radius=3] ;
@@ -483,7 +498,7 @@
\draw[\POURCcouleur,semithick] (0,0) circle[radius=3] ;
\draw[\POURCcouleur,semithick] ({-0.15*3},0)--({0.15*3},0) (0,{-0.15*3})--(0,{0.15*3}) ;
\foreach \pct in {0,1,...,199}
- {\draw[\POURCcouleur,thin] ({0.5*\pct*3.6}:{3})--({0.5*\pct*3.6}:{3-0.2}) ;}
+ {\draw[\POURCcouleur,thin] ({0.5*\pct*3.6}:{3})--({0.5*\pct*3.6}:{3-0.2}) ;}
\foreach \pct in {0,10,...,90}{%
\draw[\POURCcouleur,thin] ({(\pct+1)*3.6}:{3})--({(\pct+1)*3.6}:{3-0.35}) ;
\filldraw[\POURCcouleur] ({(\pct+1)*3.6}:{3-0.35}) circle[fill=\POURCcouleur,radius=0.75pt] ;
@@ -505,14 +520,14 @@
\foreach \pct in {5,10,15,20,30,35,40,45,55,60,65,70,80,85,90,95}{%
\draw[\POURCcouleur,semithick] ({\pct*3.6}:{3})--({\pct*3.6}:{3-0.5}) ;
\ifboolKV[Pourcenteur]{AfficheValeurs}
- {\draw ({-\pct*3.6+90}:{3-0.6}) node[\POURCcouleur,rotate={-3.6*\pct},scale=\fpeval{0.8*\POURCechelle*\POURCechangle},font=\tiny] {\pct\,\%} ;}{}
+ {\draw ({-\pct*3.6+90}:{3-0.6}) node[\POURCcouleur,rotate={-3.6*\pct},scale=\fpeval{\POURCechlabel*\POURCechangle},font=\tiny] {\pct\,\%} ;}{}
}
\foreach \pct in {0,25,50,75}{%
\draw[\POURCcouleur,semithick] ({\pct*3.6}:{3})--({\pct*3.6}:{3-0.5}) ;
\ifboolKV[Pourcenteur]{AfficheValeurs}
{%
- \draw ({-\pct*3.6+90}:{3-0.61}) node[\POURCcouleur,rotate={-3.6*\pct},scale=\fpeval{0.8*\POURCechelle*\POURCechangle},font=\scriptsize\bfseries] {\pct\,\%} ;
- \draw ({-\pct*3.6+90}:{2+0.15}) node[\POURCcouleur,rotate={-3.6*\pct},scale=\fpeval{0.8*\POURCechelle*\POURCechangle},font=\tiny\bfseries] {\pct\,\%} ;
+ \draw ({-\pct*3.6+90}:{3-0.61}) node[\POURCcouleur,rotate={-3.6*\pct},scale=\fpeval{\POURCechlabel*\POURCechangle},font=\scriptsize\bfseries] {\pct\,\%} ;
+ \draw ({-\pct*3.6+90}:{2+0.15}) node[\POURCcouleur,rotate={-3.6*\pct},scale=\fpeval{\POURCechlabel*\POURCechangle},font=\tiny\bfseries] {\pct\,\%} ;
}{}%
}
\draw[\POURCcouleur,semithick] (0,1)--(0,2) (1.6,0)--(2,0) (0,-1.6)--(0,-2) (-1.6,0)--(-2,0) ;
@@ -533,7 +548,7 @@
CouleurFond=\def\RAPPEQcouleurfond{#1},%
Origine=\def\RAPPEQposOrigin{#1},%
Rotation=\def\RAPPEQangle{#1},%
- Opacite=\def\RAPPEQopac{#1}
+ Opacite=\def\RAPPEQopac{#1},%
}
\setKVdefault[RapporteurEquerreGeom]{%
@@ -561,7 +576,7 @@
\pgfmathanglebetweenpoints{\pgfpointanchor{\RAPPEQposOrigin}{center}}{\pgfpointanchor{\tmppointdeux}{center}}%
\edef\RAPPEQangle{\pgfmathresult}%
}{}%
- \begin{scope}[shift={(\RAPPEQposOrigin)},rotate=\RAPPEQangle,scale=\RAPPEQechelle,every node/.style={rotate=\RAPPEQangle}]
+ \begin{scope}[shift={(\RAPPEQposOrigin)},rotate=\RAPPEQangle,scale=\RAPPEQechelle,transform shape]
%fond
\ifboolKV[RapporteurEquerreGeom]{Fond}
{%
@@ -591,16 +606,16 @@
\ifboolKV[RapporteurEquerreGeom]{AfficheAngles}
{%
\foreach \i in {10,20,...,170}
- {\draw[\RAPPEQcouleur] ({-\i}:{0.6125*\RAPPEQlargeur}) node[rotate={90-\i},scale=\fpeval{\RAPPEQlargeur/8*\RAPPEQechelle*\RAPPEQechangle},font=\tiny] {\i} ;}
+ {\draw[\RAPPEQcouleur] ({-\i}:{0.6125*\RAPPEQlargeur}) node[rotate={90-\i},scale=\fpeval{\RAPPEQlargeur/8*\RAPPEQechangle},font=\tiny] {\i} ;}
%angles "extérieurs"
\foreach \i in {10,20,...,170}
- {\draw[\RAPPEQcouleur] ({-\i}:{0.6375*\RAPPEQlargeur}) node[rotate={90-\i},scale=\fpeval{\RAPPEQlargeur/8*\RAPPEQechelle*\RAPPEQechangle},font=\tiny] {\inteval{180-\i}} ;}
+ {\draw[\RAPPEQcouleur] ({-\i}:{0.6375*\RAPPEQlargeur}) node[rotate={90-\i},scale=\fpeval{\RAPPEQlargeur/8*\RAPPEQechangle},font=\tiny] {\inteval{180-\i}} ;}
}%
{}%
\ifboolKV[RapporteurEquerreGeom]{AfficheValeurs}
{%
\foreach \i in {-1,0,1}
- {\draw[\RAPPEQcouleur] ({\i},-0.375) node[scale=\fpeval{\RAPPEQechelle*\RAPPEQechangle},font=\tiny] {$\i$} ;}
+ {\draw[\RAPPEQcouleur] ({\i},-0.375) node[scale=\fpeval{\RAPPEQechangle},font=\tiny] {$\i$} ;}
}%
{}%
%tracés intérieurs
diff --git a/Master/texmf-dist/tex/latex/overarrows/overarrows.sty b/Master/texmf-dist/tex/latex/overarrows/overarrows.sty
index f954f12b55b..db0b1b04322 100644
--- a/Master/texmf-dist/tex/latex/overarrows/overarrows.sty
+++ b/Master/texmf-dist/tex/latex/overarrows/overarrows.sty
@@ -17,10 +17,11 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{overarrows}
-[2023/02/15 v1.1 Custom extensible arrows over math expressions]
+[2024/07/11 v1.2 Custom extensible arrows over math expressions]
\newif\ifovar@option@oldarrows@
\newif\ifovar@option@esvect@ \ovar@option@esvect@true \PassOptionsToPackage{f}{esvect}
\newif\ifovar@option@tikz@
+\newif\ifovar@option@pstricks@
\newif\ifovar@option@pstarrows@
\newif\ifovar@detectsubscripts@
\newif\ifovar@option@subother@
@@ -54,6 +55,7 @@
\DeclareOption{esvecth}{\ovar@option@esvect@true\PassOptionsToPackage{h}{esvect}}
\DeclareOption{old-arrows}{\ovar@option@oldarrows@true}
\DeclareOption{tikz}{\ovar@option@tikz@true}
+\DeclareOption{pstricks}{\ovar@option@pstricks@true}
\DeclareOption{pstarrows}{\ovar@option@pstarrows@true}
\DeclareOption{subscripts}{\ovar@detectsubscripts@true}
\DeclareOption{subother}{\ovar@option@subother@true}
@@ -117,35 +119,70 @@
\ProcessOptions\relax
\RequirePackage{amsmath}
\RequirePackage{etoolbox}
-\let\ovar@rightarrow\rightarrow
-\let\ovar@leftarrow\leftarrow
+\def\ovar@rightarrow{\rightarrow}
+\def\ovar@leftarrow{\leftarrow}
\ifovar@option@oldarrows@
\RequirePackage[old]{old-arrows}
- \let\ovar@rightarrow\varrightarrow
- \let\ovar@leftarrow\varleftarrow
+ \def\ovar@rightarrow{\varrightarrow}
+ \def\ovar@leftarrow{\varleftarrow}
\fi
\ifovar@option@esvect@
\RequirePackage{esvect}
+ \DeclareFontFamily{U}{esvect}{}
+ \DeclareFontShape{U}{esvect}{m}{n}{
+ <-5.5> vect5
+ <5.5-6.5> vect6
+ <6.5-7.5> vect7
+ <7.5-8.5> vect8
+ <8.5-9.5> vect9
+ <9.5-> vect10
+ }{}
\fi
\ifovar@option@tikz@
\RequirePackage{tikz}
\usetikzlibrary{arrows.meta}
\fi
+\ifovar@option@pstricks@
+ \RequirePackage{pstricks-add}
+\fi
\ifovar@option@pstarrows@
\RequirePackage[pstarrows]{pict2e}
\fi
+\DeclareHookRule{begindocument}{overarrows}{after}{unicode-math-luatex}
+\DeclareHookRule{begindocument}{overarrows}{after}{unicode-math-xetex}
+\AddToHook{begindocument}[overarrows]
+ {%
+ \ifdef{\relbareda}
+ {%
+ \gdef\ovar@auto@middle{\relbareda}
+ \gdef\ovar@auto@trim@middle{1}
+ }
+ {%
+ \gdef\ovar@auto@middle{\relbar}
+ \gdef\ovar@auto@trim@middle{2.5}
+ }%
+ \@ifpackageloaded{unicode-math}
+ {%
+ \check@mathfonts
+ \iffontchar\textfont\tw@\string"23AF
+ \gdef\ovar@auto@middle{\mathrel\harrowextender}
+ \gdef\ovar@auto@trim@middle{0}
+ \fi
+ }
+ {}%
+ }
\newcommand{\SetOverArrowsSubscriptCommand}[1]{\global\let\ovar@subcmd=#1}
\SetOverArrowsSubscriptCommand{_}
\ifovar@option@subother@
\begingroup
\catcode `_=12
- \AddToHook{begindocument/end}{\SetOverArrowsSubscriptCommand{_}}
+ \SetOverArrowsSubscriptCommand{_}%
\endgroup
\fi
\ifovar@option@subactive@
\begingroup
\catcode `_=13
- \AddToHook{begindocument/end}{\SetOverArrowsSubscriptCommand{_}}
+ \SetOverArrowsSubscriptCommand{_}%
\endgroup
\fi
\RequirePackage{pgfkeys}
@@ -286,12 +323,17 @@
}
}
},
+ middle config/harrowextender/.code={%
+ \pgfkeysalso{%
+ middle={\harrowextender},
+ trim middle={0},
+ }
+ },
middle config/auto/.code={%
- \ifovar@option@esvect@
- \pgfkeysalso{middle config=relbareda}
- \else
- \pgfkeysalso{middle config=relbar}
- \fi
+ \pgfkeysalso{%
+ middle={\ovar@auto@middle},
+ trim middle={\ovar@auto@trim@middle},
+ }
},
amsmath/.is choice,%
amsmath/mimic/.code=\pgfkeysalso{%
@@ -369,6 +411,39 @@
shift right=-2,
min length=12,
}
+\SetOverArrowsMethod[lens]{pstricks}{%
+ no arrow macro hook/.code={%
+ \ovar@set{%
+ arrow macro/.expanded={%
+ $\noexpand\mkern \expandonce{\ovar@shift@left} mu\noexpand\relax$%
+ \noexpand\begin{pspicture}\expandonce{\ovar@pstricks@geometry}%
+ \noexpand\psset{linewidth=\expandonce{\ovar@pstricks@linethickness}}%
+ \noexpand\psset{\expandonce{\ovar@pstricks@psset}}%
+ \expandonce{\ovar@pstricks@command}%
+ \noexpand\end{pspicture}%
+ $\noexpand\mkern \expandonce{\ovar@shift@right} mu\noexpand\relax$%
+ }
+ }
+ },
+ pstricks command/.store in=\ovar@pstricks@command,
+ psset/.store in=\ovar@pstricks@psset,
+ geometry/.store in=\ovar@pstricks@geometry,
+ line thickness/.store in=\ovar@pstricks@linethickness,
+ pstricks command/.value required,
+ psset/.value required,
+ geometry/.value required,
+ line thickness/.value required,
+ arrow/.style={pstricks command={\psline{##1}(0,0)(\overarrowlength,0)}},%
+ arrow/.value required,%
+ thinner/.style={line thickness={\overarrowsmallerthickness}},%
+ thinner/.value forbidden,%
+ shift right=-2,
+ min length=12,
+ geometry={(0,-0.5ex)(\overarrowlength,0.5ex)},%
+ line thickness={\overarrowthickness},%
+ arrow={->},%
+ psset={},%
+}
\SetOverArrowsMethod[lens]{picture}{%
no arrow macro hook/.code={%
\ovar@set{%
@@ -413,28 +488,61 @@
\newlength{\overarrowlength}
\newlength{\overarrowthickness}
\newlength{\overarrowsmallerthickness}
-\newlength{\ovar@extralength}
\newlength{\ovar@tempdim}
\def\ovar@set@arrowlength#1#2#3{%
\settowidth{\ovar@tempdim}{$\m@th#2\mskip #1 mu\relax$}%
\settowidth{\overarrowlength}{$\m@th#2#3$}%
\ifdim \overarrowlength < \ovar@tempdim \overarrowlength=\ovar@tempdim\fi%
}
-\def\ovar@set@arrowthickness#1{% use rule thickness=\fontdimen 8 font family 3
+\def\ovar@rulethickness@fontdimen{8}
+\def\ovar@rulethickness@family{3}
+\def\ovar@set@arrowthickness#1{%
\ifx#1\displaystyle%
- \overarrowthickness = \fontdimen 8 \textfont 3%
- \overarrowsmallerthickness = \fontdimen 8 \scriptfont 3%
+ \overarrowthickness =
+ \fontdimen \ovar@rulethickness@fontdimen \textfont \ovar@rulethickness@family%
+ \overarrowsmallerthickness =
+ \fontdimen \ovar@rulethickness@fontdimen \scriptfont \ovar@rulethickness@family%
\else\ifx#1\textstyle%
- \overarrowthickness = \fontdimen 8 \textfont 3%
- \overarrowsmallerthickness = \fontdimen 8 \scriptfont 3%
+ \overarrowthickness =
+ \fontdimen \ovar@rulethickness@fontdimen \textfont \ovar@rulethickness@family%
+ \overarrowsmallerthickness =
+ \fontdimen \ovar@rulethickness@fontdimen \scriptfont \ovar@rulethickness@family%
\else\ifx#1\scriptstyle%
- \overarrowthickness = \fontdimen 8 \scriptfont 3%
- \overarrowsmallerthickness = \fontdimen 8 \scriptscriptfont 3%
+ \overarrowthickness =
+ \fontdimen \ovar@rulethickness@fontdimen \scriptfont \ovar@rulethickness@family%
+ \overarrowsmallerthickness =
+ \fontdimen \ovar@rulethickness@fontdimen \scriptscriptfont \ovar@rulethickness@family%
\else%
- \overarrowthickness = \fontdimen 8 \scriptscriptfont 3%
+ \overarrowthickness =
+ \fontdimen \ovar@rulethickness@fontdimen \scriptscriptfont \ovar@rulethickness@family%
\overarrowsmallerthickness = \overarrowthickness%
\fi\fi\fi%
}
+\def\ovar@set@arrowthickness@UM@lua#1{%
+ \overarrowthickness = \Umathoverbarrule #1
+ \ifx#1\displaystyle%
+ \overarrowsmallerthickness = \Umathoverbarrule \textstyle%
+ \else\ifx#1\textstyle%
+ \overarrowsmallerthickness = \Umathoverbarrule \scriptstyle%
+ \else%
+ \overarrowsmallerthickness = \Umathoverbarrule \scriptscriptstyle%
+ \fi\fi%
+}
+\AddToHook{begindocument}[overarrows]
+ {%
+ \@ifpackageloaded{unicode-math-luatex}
+ {%
+ \global\let\ovar@set@arrowthickness\ovar@set@arrowthickness@UM@lua
+ }
+ {%
+ \@ifpackageloaded{unicode-math-xetex}
+ {%
+ \gdef\ovar@rulethickness@fontdimen{54}
+ \gdef\ovar@rulethickness@family{2}
+ }
+ {}
+ }
+ }
\def\ovar@stackover@@#1#2#3#4#5#6{\vbox{\ialign{##\crcr%
$#5\mskip #1 mu\relax$\crcr%
\noalign{#2\nointerlineskip}#4\crcr%
@@ -467,16 +575,27 @@
\ovar@stackunder@{#2}{#3}{#4}{#5}{#6}%
}
\def\ovar@stack@lens{\ovar@stackover@lens}
-\NewDocumentCommand{\DeclareOverArrowCommand}{ O{symb} m m }{%
+\ExplSyntaxOn
+\cs_new_protected:Npn \__overarrows_processor_strip_escape_char:n #1
+ {
+ \regex_match:nnTF { ^\cC. } { #1 }
+ { \tl_set:Nx \ProcessedArgument { \cs_to_str:N #1 } }
+ { \tl_set:Nx \ProcessedArgument { #1 } }
+ }
+\cs_new_eq:NN \ovar@cmdname@processor \__overarrows_processor_strip_escape_char:n
+\ExplSyntaxOff
+\NewDocumentCommand{\DeclareOverArrowCommand}{
+ O{symb} >{\ovar@cmdname@processor} m m
+}{%
\begingroup
\ovar@set@common
\ifcsdef{ovar@set@#1}{%
\csuse{ovar@set@#1}
}{%
\PackageError{overarrows}{Unknown method #1}
- {Try with 'symb', 'tikz' or 'picture'}
+ {Try with 'symb', 'tikz', 'pstriks' or 'picture'}
}
- \ovar@set{#3 }
+ \ovar@set{#3}
\ifdef{\ovar@macro@arrow}{}{%
\ovar@set{no arrow macro hook}
}
@@ -519,12 +638,16 @@
\fi
\endgroup
}
-\NewDocumentCommand{\ProvideOverArrowCommand}{ O{symb} m m }{%
+\NewDocumentCommand{\ProvideOverArrowCommand}{
+ O{symb} >{\ovar@cmdname@processor} m m
+}{%
\ifcsdef{#2}{}{
\DeclareOverArrowCommand[#1]{#2}{#3}
}
}
-\NewDocumentCommand{\NewOverArrowCommand}{ O{symb} m m }{%
+\NewDocumentCommand{\NewOverArrowCommand}{
+ O{symb} >{\ovar@cmdname@processor} m m
+}{%
\ifcsdef{#2}{%
\PackageError{overarrows}{Command \csname #2\endcsname already defined}%
{You have used \protect\NewOverArrowCommand\space with a command that
@@ -534,7 +657,9 @@
\DeclareOverArrowCommand[#1]{#2}{#3}
}
}
-\NewDocumentCommand{\RenewOverArrowCommand}{ O{symb} m m }{%
+\NewDocumentCommand{\RenewOverArrowCommand}{
+ O{symb} >{\ovar@cmdname@processor} m m
+}{%
\ifcsundef{#2}{%
\PackageError{overarrows}{Command \csname #2\endcsname undefined}%
{You have used \protect\RenewOverArrowCommand\space with a command that was
@@ -544,148 +669,151 @@
\DeclareOverArrowCommand[#1]{#2}{#3}
}
}
+\newsavebox\ovar@tempbox
\def\ovar@starversion#1#2#3{%
- #1#2{#3}%
- \settowidth{\ovar@extralength}{$\m@th#1#2{#3}$}
- \settowidth{\ovar@tempdim}{$\m@th#2{#3}$}
- \deflength{\ovar@extralength}{0.5\ovar@extralength-0.5\ovar@tempdim}%
- \kern-\ovar@extralength%
+ \sbox{\ovar@tempbox}{$\m@th #1#2{#3}$}%
+ \usebox{\ovar@tempbox}%
+ \settowidth{\ovar@tempdim}{$\m@th #2{#3}$}%
+ \kern\dimeval{0.5\ovar@tempdim - 0.5\wd\ovar@tempbox}%
}
\ifovar@option@esvect@
\let\esvectvv\vv
\undef\vv
- \NewOverArrowCommand{vv}{esvect, middle config=auto}
-\fi
-\ifovar@option@overrightarrow@
- \DeclareOverArrowCommand{overrightarrow}{%
- amsmath, middle config=relbar,
- end=\ovar@rightarrow,
- right arrow,
- }
-\fi
-\ifovar@option@underrightarrow@
- \DeclareOverArrowCommand{underrightarrow}{%
- amsmath, middle config=relbar,
- end=\ovar@rightarrow,
- right arrow,
- arrow under,
- }
-\fi
-\ifovar@option@overleftarrow@
- \DeclareOverArrowCommand{overleftarrow}{%
- amsmath, middle config=relbar,
- start=\ovar@leftarrow,
- end=\relbar,
- left arrow,
- }
-\fi
-\ifovar@option@underleftarrow@
- \DeclareOverArrowCommand{underleftarrow}{%
- amsmath, middle config=relbar,
- start=\ovar@leftarrow,
- end=\relbar,
- left arrow,
- arrow under,
- }
-\fi
-\ifovar@option@overleftrightarrow@
- \DeclareOverArrowCommand{overleftrightarrow}{%
- amsmath, middle config=relbar,
- start=\ovar@leftarrow,
- end=\ovar@rightarrow,
- center arrow,
- }
-\fi
-\ifovar@option@underleftrightarrow@
- \DeclareOverArrowCommand{underleftrightarrow}{%
- amsmath, middle config=relbar,
- start=\ovar@leftarrow,
- end=\ovar@rightarrow,
- center arrow,
- arrow under,
- }
-\fi
-\ifovar@option@overrightharpoonup@
- \DeclareOverArrowCommand{overrightharpoonup}{%
- amsmath, middle config=relbar,
- end=\rightharpoonup,
- right arrow,
- }
-\fi
-\ifovar@option@underrightharpoonup@
- \DeclareOverArrowCommand{underrightharpoonup}{%
- amsmath, middle config=relbar,
- end=\rightharpoonup,
- right arrow,
- arrow under,
- }
+ \NewOverArrowCommand{\vv}{esvect, middle config = relbareda}
\fi
-\ifovar@option@overrightharpoondown@
- \DeclareOverArrowCommand{overrightharpoondown}{%
- amsmath, middle config=relbar,
- end=\rightharpoondown,
- right arrow,
- }
-\fi
-\ifovar@option@underrightharpoondown@
- \DeclareOverArrowCommand{underrightharpoondown}{%
- amsmath, middle config=relbar,
- end=\rightharpoondown,
- right arrow,
- arrow under,
- }
-\fi
-\ifovar@option@overleftharpoonup@
- \DeclareOverArrowCommand{overleftharpoonup}{%
- amsmath, middle config=relbar,
- start=\leftharpoonup,
- end=\relbar,
- left arrow,
- }
-\fi
-\ifovar@option@underleftharpoonup@
- \DeclareOverArrowCommand{underleftharpoonup}{%
- amsmath, middle config=relbar,
- start=\leftharpoonup,
- end=\relbar,
- left arrow,
- arrow under,
- }
-\fi
-\ifovar@option@overleftharpoondown@
- \DeclareOverArrowCommand{overleftharpoondown}{%
- amsmath, middle config=relbar,
- start=\leftharpoondown,
- end=\relbar,
- left arrow,
- }
-\fi
-\ifovar@option@underleftharpoondown@
- \DeclareOverArrowCommand{underleftharpoondown}{%
- amsmath, middle config=relbar,
- start=\leftharpoondown,
- end=\relbar,
- left arrow,
- arrow under,
- }
-\fi
-\ifovar@option@overbar@
- \DeclareOverArrowCommand{overbar}{%
- amsmath, middle config=relbar,
- start={\std@minus}, end={\std@minus},% \relbar is defined with \mathsm@sh
- shift leftright=0,
- space after arrow=-0.3ex,
- }
-\fi
-\ifovar@option@underbar@
- \DeclareOverArrowCommand{underbar}{%
- amsmath, middle config=relbar,
- start={\std@minus}, end={\std@minus},% \relbar is defined with \mathsm@sh
- shift leftright=0,
- arrow under,
- space before arrow=-0.3ex,
+\AddToHook{begindocument}[overarrows]
+ {
+ \ifovar@option@overrightarrow@
+ \DeclareOverArrowCommand{\overrightarrow}{%
+ amsmath, middle config=relbar,
+ end=\ovar@rightarrow,
+ right arrow,
+ }
+ \fi
+ \ifovar@option@underrightarrow@
+ \DeclareOverArrowCommand{\underrightarrow}{%
+ amsmath, middle config=relbar,
+ end=\ovar@rightarrow,
+ right arrow,
+ arrow under,
+ }
+ \fi
+ \ifovar@option@overleftarrow@
+ \DeclareOverArrowCommand{\overleftarrow}{%
+ amsmath, middle config=relbar,
+ start=\ovar@leftarrow,
+ end=\relbar,
+ left arrow,
+ }
+ \fi
+ \ifovar@option@underleftarrow@
+ \DeclareOverArrowCommand{\underleftarrow}{%
+ amsmath, middle config=relbar,
+ start=\ovar@leftarrow,
+ end=\relbar,
+ left arrow,
+ arrow under,
+ }
+ \fi
+ \ifovar@option@overleftrightarrow@
+ \DeclareOverArrowCommand{\overleftrightarrow}{%
+ amsmath, middle config=relbar,
+ start=\ovar@leftarrow,
+ end=\ovar@rightarrow,
+ center arrow,
+ }
+ \fi
+ \ifovar@option@underleftrightarrow@
+ \DeclareOverArrowCommand{\underleftrightarrow}{%
+ amsmath, middle config=relbar,
+ start=\ovar@leftarrow,
+ end=\ovar@rightarrow,
+ center arrow,
+ arrow under,
+ }
+ \fi
+ \ifovar@option@overrightharpoonup@
+ \DeclareOverArrowCommand{\overrightharpoonup}{%
+ amsmath, middle config=relbar,
+ end=\rightharpoonup,
+ right arrow,
+ }
+ \fi
+ \ifovar@option@underrightharpoonup@
+ \DeclareOverArrowCommand{\underrightharpoonup}{%
+ amsmath, middle config=relbar,
+ end=\rightharpoonup,
+ right arrow,
+ arrow under,
+ }
+ \fi
+ \ifovar@option@overrightharpoondown@
+ \DeclareOverArrowCommand{\overrightharpoondown}{%
+ amsmath, middle config=relbar,
+ end=\rightharpoondown,
+ right arrow,
+ }
+ \fi
+ \ifovar@option@underrightharpoondown@
+ \DeclareOverArrowCommand{\underrightharpoondown}{%
+ amsmath, middle config=relbar,
+ end=\rightharpoondown,
+ right arrow,
+ arrow under,
+ }
+ \fi
+ \ifovar@option@overleftharpoonup@
+ \DeclareOverArrowCommand{\overleftharpoonup}{%
+ amsmath, middle config=relbar,
+ start=\leftharpoonup,
+ end=\relbar,
+ left arrow,
+ }
+ \fi
+ \ifovar@option@underleftharpoonup@
+ \DeclareOverArrowCommand{\underleftharpoonup}{%
+ amsmath, middle config=relbar,
+ start=\leftharpoonup,
+ end=\relbar,
+ left arrow,
+ arrow under,
+ }
+ \fi
+ \ifovar@option@overleftharpoondown@
+ \DeclareOverArrowCommand{\overleftharpoondown}{%
+ amsmath, middle config=relbar,
+ start=\leftharpoondown,
+ end=\relbar,
+ left arrow,
+ }
+ \fi
+ \ifovar@option@underleftharpoondown@
+ \DeclareOverArrowCommand{\underleftharpoondown}{%
+ amsmath, middle config=relbar,
+ start=\leftharpoondown,
+ end=\relbar,
+ left arrow,
+ arrow under,
+ }
+ \fi
+ \ifovar@option@overbar@
+ \DeclareOverArrowCommand{\overbar}{%
+ amsmath, middle config=relbar,
+ start={\std@minus}, end={\std@minus},% \relbar is defined with \mathsm@sh
+ shift leftright=0,
+ space after arrow=-0.3ex,
+ }
+ \fi
+ \ifovar@option@underbar@
+ \DeclareOverArrowCommand{\underbar}{%
+ amsmath, middle config=relbar,
+ start={\vphantom{+}\std@minus}, end={\std@minus},% \relbar is defined with \mathsm@sh
+ shift leftright=0,
+ arrow under,
+ space before arrow=-0.3ex,
+ }
+ \fi
}
-\fi
\newcommand{\ovar@testmathstyles}[2][]{
\begingroup
\newcommand*{\ovar@row@teststyle}[1]{%
@@ -728,7 +856,9 @@
\end{displaymath}
}
\endgroup
-\NewDocumentCommand{\TestOverArrow}{ s o m }{
+\NewDocumentCommand{\TestOverArrow}{
+ s o >{\ovar@cmdname@processor} m
+}{%
\ifcsdef{#3}{}{%
\PackageWarning{overarrows}{Unknown name '#3' passed to
\protect\TestOverArrow}
diff --git a/Master/texmf-dist/tex/latex/pagelayout/pagelayout.cls b/Master/texmf-dist/tex/latex/pagelayout/pagelayout.cls
index 8e7d3616aef..655ed59bd2b 100644
--- a/Master/texmf-dist/tex/latex/pagelayout/pagelayout.cls
+++ b/Master/texmf-dist/tex/latex/pagelayout/pagelayout.cls
@@ -13,8 +13,8 @@
%%
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
-\ProvidesClass{pagelayout}[2024/01/17 Layout graphic rich documents]
-\def\pagelayoutversion{1.1.0}
+\ProvidesClass{pagelayout}[2024/07/31 Layout graphic rich documents]
+\def\pagelayoutversion{1.1.1}
% packages
\RequirePackage{pgfopts}
@@ -372,7 +372,11 @@
\pal@outermargin=\ifdim\pal@gridoutermargin=\pal@undefdim\pal@gridmargin\else\pal@gridoutermargin\fi
\height=\dimexpr\pal@pageheight - \pal@topmargin - \pal@bottommargin\relax
- \width=\dimexpr\pal@pagewidth - \pal@innermargin - \pal@outermargin\relax
+ \ifpal@isdoublepage
+ \width=\dimexpr2\pal@pagewidth - 2\pal@outermargin\relax
+ \else
+ \width=\dimexpr\pal@pagewidth - \pal@innermargin - \pal@outermargin\relax
+ \fi
\ifdim\dimexpr\pal@gridoptionheight\relax=\pal@undefdim
\else
\pal@gridheightdiff=\dimexpr0.5\height - 0.5\dimexpr\pal@gridoptionheight\relax\relax
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Indication/PanneauRouteC24a.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Indication/PanneauRouteC24a.pdf
new file mode 100644
index 00000000000..3b5ec7e8a4c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Indication/PanneauRouteC24a.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB14_80.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB14_80.pdf
new file mode 100644
index 00000000000..890d68ee510
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB14_80.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB1j.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB1j.pdf
new file mode 100644
index 00000000000..5a98b386726
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB1j.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB30_30.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB30_30.pdf
new file mode 100644
index 00000000000..2e158110165
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB30_30.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b1.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b1.pdf
new file mode 100644
index 00000000000..91952f39a87
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b1.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b2.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b2.pdf
new file mode 100644
index 00000000000..ec8a30e4374
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b2.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b3.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b3.pdf
new file mode 100644
index 00000000000..92fd45c47f9
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b3.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b4.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b4.pdf
new file mode 100644
index 00000000000..02b47faac07
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b4.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b5.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b5.pdf
new file mode 100644
index 00000000000..6d3a6716b7e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Interdiction/PanneauRouteB6b5.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB49VL.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB49VL.pdf
new file mode 100644
index 00000000000..d737b9b2032
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB49VL.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50a.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50a.pdf
new file mode 100644
index 00000000000..a3ef5fd0ce7
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50a.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50b.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50b.pdf
new file mode 100644
index 00000000000..f5bb08180f2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50b.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50c.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50c.pdf
new file mode 100644
index 00000000000..3fecb25982a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50c.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50d.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50d.pdf
new file mode 100644
index 00000000000..250253b066f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50d.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50e.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50e.pdf
new file mode 100644
index 00000000000..853cc07c531
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB50e.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB51_30.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB51_30.pdf
new file mode 100644
index 00000000000..08e96de6170
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB51_30.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB52.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB52.pdf
new file mode 100644
index 00000000000..a14e1a111d3
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB52.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB53.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB53.pdf
new file mode 100644
index 00000000000..13e4ce3ac3a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB53.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB54.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB54.pdf
new file mode 100644
index 00000000000..ce71fbd4b1c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB54.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB55.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB55.pdf
new file mode 100644
index 00000000000..099108818f9
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB55.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB56.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB56.pdf
new file mode 100644
index 00000000000..a721b753c27
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB56.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB57.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB57.pdf
new file mode 100644
index 00000000000..f1b433d19ba
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB57.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB58.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB58.pdf
new file mode 100644
index 00000000000..2f96cdbec47
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB58.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB59.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB59.pdf
new file mode 100644
index 00000000000..02bc961ed8a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Obligation/PanneauRouteB59.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/PanneauxRoute.sty b/Master/texmf-dist/tex/latex/panneauxroute/PanneauxRoute.sty
index d94943962b7..68021ef1486 100644
--- a/Master/texmf-dist/tex/latex/panneauxroute/PanneauxRoute.sty
+++ b/Master/texmf-dist/tex/latex/panneauxroute/PanneauxRoute.sty
@@ -5,7 +5,11 @@
% : Licence CC BY-SA 3.0 for svg source (http://sig974.free.fr/?p=1520)
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{PanneauxRoute}[2023/08/14 v0.1.0 Panneaux de signalisation fr]
+\ProvidesPackage{PanneauxRoute}[2024/09/14 v0.1.2 Panneaux de signalisation fr]
+
+%------Historique
+% 0.1.2 Ajout des panneaux divers
+% 0.1.1 Ajout du panneau B14 (80)
% 0.1.0 Version initiale
%------Packages utiles
@@ -56,8 +60,20 @@
\NewDocumentCommand\prFinRoutePrio{ O{height=1.15cm} }{\AffPanneau[#1]{AB7}}
\NewDocumentCommand\prRondPoint{ O{height=1.15cm} }{\AffPanneau[#1]{AB25}}
+\NewDocumentCommand\prDosAneTemp{ O{height=1.15cm} }{\AffPanneau[#1]{AK2}}
+\NewDocumentCommand\prChaussGlissTemp{ O{height=1.15cm} }{\AffPanneau[#1]{AK4}}
+\NewDocumentCommand\prChausRetTemp{ O{height=1.15cm} }{\AffPanneau[#1]{AK3}}
+\NewDocumentCommand\prTravauxTemp{ O{height=1.15cm} }{\AffPanneau[#1]{AK5}}
+\NewDocumentCommand\prDangerTemp{ O{height=1.15cm} }{\AffPanneau[#1]{AK14}}
+\NewDocumentCommand\prFeuxTemp{ O{height=1.15cm} }{\AffPanneau[#1]{AK17}}
+\NewDocumentCommand\prGraviersTemp{ O{height=1.15cm} }{\AffPanneau[#1]{AK22}}
+\NewDocumentCommand\prBouchonTemp{ O{height=1.15cm} }{\AffPanneau[#1]{AK30}}
+\NewDocumentCommand\prAccidentTemp{ O{height=1.15cm} }{\AffPanneau[#1]{AK31}}
+\NewDocumentCommand\prBrouillardTemp{ O{height=1.15cm} }{\AffPanneau[#1]{AK32}}
+
\NewDocumentCommand\prCircInterd{ O{height=1.15cm} }{\AffPanneau[#1]{B0}}
\NewDocumentCommand\prSensInterdit{ O{height=1.15cm} }{\AffPanneau[#1]{B1}}
+\NewDocumentCommand\prSensInterditJ{ O{height=1.15cm} }{\AffPanneau[#1]{B1j}}
\NewDocumentCommand\prInterdTournG{ O{height=1.15cm} }{\AffPanneau[#1]{B2a}}
\NewDocumentCommand\prInterdTournD{ O{height=1.15cm} }{\AffPanneau[#1]{B2b}}
\NewDocumentCommand\prInterdDemiTour{ O{height=1.15cm} }{\AffPanneau[#1]{B2c}}
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK14.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK14.pdf
new file mode 100644
index 00000000000..8b388c78e4f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK14.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK17.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK17.pdf
new file mode 100644
index 00000000000..27845490800
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK17.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK2.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK2.pdf
new file mode 100644
index 00000000000..521f95a618d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK2.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK22.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK22.pdf
new file mode 100644
index 00000000000..7596e846eb5
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK22.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK3.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK3.pdf
new file mode 100644
index 00000000000..3871b514b2f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK3.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK30.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK30.pdf
new file mode 100644
index 00000000000..2c0aac367ad
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK30.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK31.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK31.pdf
new file mode 100644
index 00000000000..18e5e37d90e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK31.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK32.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK32.pdf
new file mode 100644
index 00000000000..7f59c16d001
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK32.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK4.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK4.pdf
new file mode 100644
index 00000000000..bcee3bff90d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK4.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK5.pdf b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK5.pdf
new file mode 100644
index 00000000000..236c455af6a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/panneauxroute/Temporaire/PanneauRouteAK5.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/pas-tableur/pas-tableur.sty b/Master/texmf-dist/tex/latex/pas-tableur/pas-tableur.sty
index a2de8687f22..84928cd92d6 100644
--- a/Master/texmf-dist/tex/latex/pas-tableur/pas-tableur.sty
+++ b/Master/texmf-dist/tex/latex/pas-tableur/pas-tableur.sty
@@ -1,6 +1,6 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
-% pas-tableur.sty v2.05 encodage : UTF8 %
+% pas-tableur.sty v2.06 encodage : UTF8 %
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
@@ -8,8 +8,8 @@
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-\def\fileversion{2.04}
-\def\filedate{2023/04/16}
+\def\fileversion{2.06}
+\def\filedate{2024/09/14}
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesClass{pas-tableur}[%
\filedate\space v\fileversion\space
@@ -102,7 +102,14 @@
%
%==> Macro etoilee : \tableur*{A/<l1>,B/<l2>,...}. Tableur avec colonnes de largeurs differentes
%
-\newcommand{\tableur@star}[2][1]
+% Modifiée dans la version 2.06 sur la suggestion de Emiel van Miltenburg
+
+\newcommand{\tableur@star}[2][1]
+ {
+ \IfSubStr{#2}{,}{\tableur@star@columns[#1]{#2}}{\tableur@star@onecolumn[#1]{#2}}
+ }
+
+\newcommand{\tableur@star@columns}[2][1]
{%
\xdef\list@of@col{#2}%
% Placement de la premiere cellule en-tête
@@ -139,7 +146,39 @@
}%
}%
\fi%
- } % --> Fin de \tableur*
+ }
+
+\newcommand{\tableur@star@onecolumn}[2][1]
+ {%
+ % Placement de la premiere cellule en-tête
+ \StrBefore{#2}{/}[\first@name] % Récupère la partie avant "/"
+ \StrBehind{#2}{/}[\first@width] % Récupère la partie après "/"
+ \pastab@draw@cell{\first@width}{\first@name}{0}{}{\first@name}
+ % Placement des en-têtes de lignes
+ \pastab@draw@cell{\numline@width}{numline1}{2}{\first@name.south west}{1}
+ \ifnum#1>1%
+ \foreach \num@line [remember=\num@line as \lastnum (initially 1)] in {2,...,#1}
+ {%
+ \pastab@draw@cell{\numline@width}{numline\num@line}{3}{numline\lastnum.south east}{\num@line}%
+ }%
+ \fi%
+ % Trace de la grille
+ \foreach \name/\w in {#2}
+ {%
+ \pastableur@grid{\w}{\name}{1}{\name.south}%
+ }%
+ \ifnum#1>1%
+ \foreach\numline [remember=\numline as \lastnumline (initially 1)] in {2,...,#1}
+ {%
+ \foreach \name/\w in {#2}
+ {%
+ \pastableur@grid{\w}{\name}{\numline}{cell\name-\lastnumline.south}%
+ }%
+ }%
+ \fi%
+ }
+
+% --> Fin de \tableur*
%
%==> Macro non etoilee : \tableur{A,B,C,...} ou \tableur{A-C}
%
@@ -302,7 +341,6 @@
\newcommand*\multiSelec[2]
{%
\fill[blueSelec,opacity=0.5] ($(cell#1.north west)+(0.25pt,-0.25pt)$) rectangle ($(cell#2.south east)+(-0.25pt,0.25pt)$);%
- \draw[very thick] (cell#1.south west) rectangle (cell#1.north east);%
\fill[black] ($(cell#2.south east)+(-0.5pt,0.5pt)$) rectangle +(3pt,-3pt);%
%
%==> On colorie les en-têtes "colonnes"
@@ -328,10 +366,51 @@
\pastableur@colorcell{numline\i}{0}
\node[celhead,minimum width=\numline@width,minimum height=\line@height] at (numline\i) {\helvbx\i};%
}%
+ \draw[very thick] (cell#1.south west) rectangle (cell#1.north east);%
}% fin de \multiSelec
%
%
%
+
+%
+% Selection de plusieurs cellules : \multimultiSelec{A-1}{A-2}{A-3}
+% Proposition de Emiel van Miltenburg pour la version 2.06 le 2024/09/14
+%
+\newcommand*\multimultiSelec[3]
+{%
+ \fill[blueSelec,opacity=0.5] ($(cell#1.north west)+(0.25pt,-0.25pt)$) rectangle ($(cell#3.south east)+(-0.25pt,0.25pt)$);%
+
+ \fill[black] ($(cell#3.south east)+(-0.5pt,0.5pt)$) rectangle +(3pt,-3pt);%
+ %
+ %==> On colorie les en-têtes "colonnes"
+ %
+ \StrChar{#1}{1}[\str@start] % par exemple, "G"
+ \StrChar{#2}{1}[\str@end] % par exemple, "L"
+ \StrBetween{\col@names}{\str@start}{\str@end}[\str@col] % retourne par exemple "HIJK"
+ \edef\str@col{\str@start\str@col\str@end} % retourne alors "GHIJKL"
+ \StrLen{\str@col}[\nb@columns] % nombre d'en-têtes "colonnes" \`a colorier
+ \foreach \i in {1,...,\nb@columns}
+ {%
+ \StrChar{\str@col}{\i}[\name]%
+ \pastableur@colorcell{\name}{1}
+ \node at (\name) {\helvbx\name};%
+ }%
+ %
+ %==> On colorie les en-têtes "lignes"
+ %
+ \StrGobbleLeft{#1}{2}[\first@num]%
+ \StrGobbleLeft{#2}{2}[\second@num]%
+ \foreach \i in {\first@num,...,\second@num}
+ {%
+ \pastableur@colorcell{numline\i}{0}
+ \node[celhead,minimum width=\numline@width,minimum height=\line@height] at (numline\i) {\helvbx\i};%
+ }%
+ \draw[very thick] (cell#2.south west) rectangle (cell#1.north east);%
+}% fin de \multimultiSelec
+%
+%
+%
+
\newlength\pastableur@decal
\newcommand{\pastableur@colorcell}[2] % #1 : name, #2 : 0=en-tetes "lignes" / 1=en-tetes "colonnes"
{%
diff --git a/Master/texmf-dist/tex/latex/passopt/passopt.sty b/Master/texmf-dist/tex/latex/passopt/passopt.sty
new file mode 100644
index 00000000000..d74c698d27a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/passopt/passopt.sty
@@ -0,0 +1,56 @@
+%
+% ***************** THE PASSOPT PACKAGE *****************
+%
+% Copyright (C) 2024 by Qu Yi <toquyi@163.com>
+%
+% This work may be distributed and/or modified under the
+% conditions of the CC-BY 4.0 License.
+% The latest version of this license is in
+% https://creativecommons.org/licenses/by/4.0/legalcode
+\NeedsTeXFormat{LaTeX2e}[2021/11/15]
+\ProvidesExplPackage{passopt}{2024/07/17}{1.01a}
+ {Passing options to packages or classes}
+
+\cs_generate_variant:Nn \tl_if_blank:nTF { v }
+\cs_new_protected:Npn \po_add_before_hook:nnn #1#2
+ { \hook_gput_code:nnn { #1/#2/before } { passopt } }
+\cs_new_protected:Npn \po_set_options_list:nnnnn #1#2#3#4#5
+ {
+ \po_add_before_hook:nnn {#1} {#5}
+ {
+ \cs_set:cpx { @raw@opt@#5.#2 }
+ {
+ \IfBooleanTF{#3}
+ {\exp_not:o {#4}}
+ {
+ \tl_if_blank:vTF { @raw@opt@#5.#2 }
+ { \exp_not:o {#4} }
+ { \exp_not:v { @raw@opt@#5.#2 },\exp_not:o {#4} }
+ }
+ }
+ \exp_args:Nc \protected@edef { opt@#5.#2 }
+ {
+ \exp_last_unbraced:Nv
+ \zap@space { @raw@opt@#5.#2 }~\@empty
+ }
+ }
+ }
+\cs_new_protected:Npn \po_clear_options_list:nnn #1#2#3
+ {
+ \po_add_before_hook:nnn {#1} {#3}
+ {
+ \tl_clear:c { @raw@opt@#3.#2 }
+ \tl_clear:c { opt@#3.#2 }
+ }
+ }
+\NewDocumentCommand{\SetOptionsToPackage}{smm}
+ {\po_set_options_list:nnnnn { package } { sty } {#1} {#2} {#3}}
+\NewDocumentCommand{\SetOptionsToClass}{smm}
+ {\po_set_options_list:nnnnn { class } { cls } {#1} {#2} {#3}}
+\cs_new_protected:Npn \ClearPackageOptions #1
+ { \po_clear_options_list:nnn { package } { sty } {#1} }
+\cs_new_protected:Npn \ClearClassOptions #1
+ { \po_clear_options_list:nnn { class } { cls } {#1} }
+\endinput
+%
+% End of file `passopt.sty'. \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/color-ltx.sty b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/color-ltx.sty
index 08170653e8d..a8ced5210e0 100644
--- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/color-ltx.sty
+++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/color-ltx.sty
@@ -24,7 +24,7 @@
%% This file has the LPPL maintenance status "maintained".
%%
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{color-ltx}[2024-05-23 v0.96i
+\ProvidesPackage{color-ltx}[2024-09-29 v0.96m
Standard LaTeX Color (patched for l3color, part of pdfmanagement-testphase, original version 2022/01/06 v1.3d) (DPC)]
\edef\Gin@codes{%
\catcode`\noexpand\^^A\the\catcode`\^^A\relax
@@ -186,7 +186,7 @@
\InputIfFileExists{mathcolor.ltx}{}{}
\def\color@setgroup{\begingroup\set@color}
\let\color@begingroup\begingroup
-\def\color@endgroup{\endgraf\endgroup}
+\def\color@endgroup{\endgraf\@endpefalse\endgroup}
\def\color@hbox{\hbox\bgroup\color@begingroup}
\def\color@vbox{\vbox\bgroup\color@begingroup}
\def\color@endbox{\color@endgroup\egroup}
diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/colorspace-patches-tmp-ltx.sty b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/colorspace-patches-tmp-ltx.sty
index 95a0b0a6120..8a7c2a1b32c 100644
--- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/colorspace-patches-tmp-ltx.sty
+++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/colorspace-patches-tmp-ltx.sty
@@ -19,8 +19,9 @@
%
% for those people who are interested.
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
-\ProvidesExplPackage{colorspace-patches-tmp-ltx}{2024-05-23}{0.96i}
- {temporay patches to for the colorspace package to test pdfresource management ... UF}
+\ProvidesExplPackage{colorspace-patches-tmp-ltx}{2024-09-29}{0.96m}
+ {temporary patches for the colorspace package to test pdfresource management ... UF}
+
% colorspace can define more models, that l3color can't yet handle.
\cs_set_protected:Npn \expl@color@set@@nnn #1#2#3
@@ -71,7 +72,7 @@
\RemoveFromHook{begindocument}[colorspace]
-\hook_gput_code:nnn {enddocument} {pdf}
+\hook_gput_code:nnn {begindocument/end} {pdf}
{
\def\spc@elt#1#2
{
diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/hgeneric-testphase.def b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/hgeneric-testphase.def
index 5f4fd80f487..54cff3f5938 100644
--- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/hgeneric-testphase.def
+++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/hgeneric-testphase.def
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: hyperref-generic.dtx
-\ProvidesFile{hgeneric-testphase.def}[2024-05-23 v0.96i %
+\ProvidesFile{hgeneric-testphase.def}[2024-09-29 v0.96m %
generic Hyperref driver for the LaTeX PDF management testphase bundle]
\RequirePackage{etoolbox} %why?
@@ -399,7 +399,7 @@
%\tl_set:cn {@#1}{#2}
\AddToDocumentProperties[hyperref]{#1}{#2}
}
-\cs_generate_variant:Nn \__hyp_store_metadata:nn {en,ne,ee}
+\cs_generate_variant:Nn \__hyp_store_metadata:nn {en,ne,ee,no,eo}
\hook_new:n{hyp/link/cite}
\keys_define:nn { hyp }
{
@@ -437,20 +437,27 @@
{
\define@key{BKM}{color}
{
- \__hyp_color_set:ne {__hyp/tmpa}{#1}
- \color_export:nVN
- {__hyp/tmpa}
- \g__hyp_bordercolormodel_str
- \BKM@color
+ \tl_if_blank:nTF {#1}
+ { \cs_set_eq:NN\BKM@color\@empty }
+ {
+ \__hyp_color_set:ne {__hyp/tmpa}{#1}
+ \color_export:nVN
+ {__hyp/tmpa}
+ \g__hyp_bordercolormodel_str
+ \BKM@color
+ }
}
}
-\legacy_if:nT { Hy@bookmarks }
+\legacy_if:nTF { Hy@bookmarks }
{
\AddToHook{begindocument/before}[hyperref/bookmark]
{
\RequirePackage{bookmark}
}
}
+ {
+ \AddToHook{begindocument/before}[hyperref/bookmark]{}
+ }
\legacy_if:nT {Hy@draft}
{
\PassOptionsToPackage{draft}{bookmark}
@@ -464,6 +471,7 @@
\cs_generate_variant:Nn \__hyp_property_record:nn {ee}
\box_new:N \l__hyp_tmpa_box
\tl_new:N \l__hyp_tmpa_tl
+\tl_new:N \l__hyp_tmpb_tl
\seq_new:N \l__hyp_tmpa_seq
\int_new:N \l__hyp_tmpa_int
\str_new:N \l__hyp_tmpa_str
@@ -593,6 +601,7 @@
{
\__hyp_text_pdfstring:noN { #1 }{ \l__hyp_text_enc_info_print_tl } #2
}
+\cs_generate_variant:Nn \__hyp_text_pdfstring_info:nN {eN,oN}
\cs_new_protected:Npn\__hyp_PageLabels_gpush:
{
\pdfmanagement_add:nne {Catalog} {PageLabels}{<</Nums[\HyPL@Labels]>>}
@@ -2206,13 +2215,16 @@
}
\regex_new:N\l__hyp_optlang_regex
\regex_set:Nn\l__hyp_optlang_regex {\A\[([A-Za-z\-]+)\](.*)}
+\cs_generate_variant:Nn\clist_item:nn{on}
\cs_new_protected:Npn \__hyp_setup_info_key:nn #1 #2
{
\keys_define:nn { hyp }
{
pdf#1 .code:n =
{
- \tl_if_blank:nTF {##1}
+ \tl_set:Ne\l__hyp_tmpa_tl {\text_expand:n{##1}}
+ \__hyp_store_metadata:no {pdf#1}{\l__hyp_tmpa_tl}
+ \tl_if_empty:NTF \l__hyp_tmpa_tl
{
\str_case:nnF { #1 }
{
@@ -2232,45 +2244,44 @@
}
}
{
- \tl_set:Ne\l__hyp_tmpa_tl {\clist_item:nn{##1}{1}}
+ \tl_set:Ne\l__hyp_tmpb_tl {\clist_item:on{\l__hyp_tmpa_tl}{1}}
\exp_args:NNV
- \regex_extract_once:NnN \l__hyp_optlang_regex \l__hyp_tmpa_tl\l__hyp_tmpa_seq
+ \regex_extract_once:NnN \l__hyp_optlang_regex \l__hyp_tmpb_tl\l__hyp_tmpa_seq
\seq_if_empty:NTF\l__hyp_tmpa_seq
{
- \__hyp_text_pdfstring_info:nN {##1}\l__hyp_tmpa_str
+ \__hyp_text_pdfstring_info:oN {\l__hyp_tmpa_tl}\l__hyp_tmpa_str
}
{
- \exp_args:Ne
- \__hyp_text_pdfstring_info:nN {\seq_item:Nn \l__hyp_tmpa_seq{3}}\l__hyp_tmpa_str
+ \__hyp_text_pdfstring_info:eN {\seq_item:Nn \l__hyp_tmpa_seq{3}}\l__hyp_tmpa_str
}
\str_if_eq:VnF\l__hyp_tmpa_str{<FEFF>}
{
\pdfmanagement_add:nne {Info}{#2}{\l__hyp_tmpa_str}
}
}
- \__hyp_store_metadata:nn {pdf#1}{##1}
}
}
\keys_define:nn { hyp / info }
{
#2 .code:n =
{
+ \tl_set:Ne\l__hyp_tmpa_tl {\text_expand:n{##1}}
+ \__hyp_store_metadata:eo {pdf\str_lowercase:n{#1}}{\l__hyp_tmpa_tl}
\tl_if_blank:nTF {##1}
{
\pdfmanagement_remove:nn {Info}{#2}
}
{
- \__hyp_text_pdfstring_info:nN {##1}\l__hyp_tmpa_str
+ \__hyp_text_pdfstring_info:oN {\l__hyp_tmpa_tl}\l__hyp_tmpa_str
\str_if_eq:VnF\l__hyp_tmpa_str{<FEFF>}
{
\pdfmanagement_add:nne {Info}{#2}{\l__hyp_tmpa_str}
}
}
- \exp_args:Ne \__hyp_store_metadata:nn {pdf\str_lowercase:n{#1}}{##1}
}
,unknown .code:n =
{
- \__hyp_text_pdfstring_info:nN {##1}\l__hyp_tmpa_str
+ \__hyp_text_pdfstring_info:eN {##1}\l__hyp_tmpa_str
\str_if_eq:VnF\l__hyp_tmpa_str{<FEFF>}
{
\exp_args:Nno
diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvipdfmx.def b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvipdfmx.def
index 90eab781036..66e2654e36a 100644
--- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvipdfmx.def
+++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvipdfmx.def
@@ -20,7 +20,7 @@
%%
%% File: l3backend-testphase.dtx
\ProvidesExplFile
- {l3backend-testphase-dvipdfmx.def}{2024-05-23}{}
+ {l3backend-testphase-dvipdfmx.def}{2024-09-29}{}
{LaTeX~PDF~management~testphase~bundle~backend~support: dvipdfmx}
\cs_generate_variant:Nn \__kernel_backend_literal:n { e }
\cs_generate_variant:Nn \__pdf_backend:n { e }
diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvips.def b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvips.def
index 3d6b1557ff4..20af21ab26a 100644
--- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvips.def
+++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvips.def
@@ -20,7 +20,7 @@
%%
%% File: l3backend-testphase.dtx
\ProvidesExplFile
- {l3backend-testphase-dvips.def}{2024-05-23}{}
+ {l3backend-testphase-dvips.def}{2024-09-29}{}
{LaTeX~PDF~management~testphase~bundle~backend~support: dvips}
\cs_generate_variant:Nn \__kernel_backend_postscript:n { e }
\cs_generate_variant:Nn \__pdf_backend_pdfmark:n { e }
diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvisvgm.def b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvisvgm.def
index b7a6718fc4e..3be79d71124 100644
--- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvisvgm.def
+++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvisvgm.def
@@ -20,7 +20,7 @@
%%
%% File: l3backend-testphase.dtx
\ProvidesExplFile
- {l3backend-testphase-dvisvgm.def}{2024-05-23}{}
+ {l3backend-testphase-dvisvgm.def}{2024-09-29}{}
{LaTeX~PDF~management~testphase~bundle~backend~support: dvisvgm}
\bool_if:NT \l__pdfmanagement_delayed_shipout_bool
{
diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-luatex.def b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-luatex.def
index e6a50bbf1f4..39c0e7e4742 100644
--- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-luatex.def
+++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-luatex.def
@@ -20,7 +20,7 @@
%%
%% File: l3backend-testphase.dtx
\ProvidesExplFile
- {l3backend-testphase-luatex.def}{2024-05-23}{}
+ {l3backend-testphase-luatex.def}{2024-09-29}{}
{LaTeX~PDF~management~testphase~bundle~backend~support: PDF output (LuaTeX)}
\cs_generate_variant:Nn \__kernel_backend_literal_page:n { e }
\bool_if:NT \l__pdfmanagement_delayed_shipout_bool
diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-pdftex.def b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-pdftex.def
index 0ba773707fd..75469255746 100644
--- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-pdftex.def
+++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-pdftex.def
@@ -20,7 +20,7 @@
%%
%% File: l3backend-testphase.dtx
\ProvidesExplFile
- {l3backend-testphase-pdftex.def}{2024-05-23}{}
+ {l3backend-testphase-pdftex.def}{2024-09-29}{}
{LaTeX~PDF~management~testphase~bundle~backend~support: PDF output (pdfTeX)}
\cs_generate_variant:Nn \__kernel_backend_literal_page:n { e }
\bool_if:NT \l__pdfmanagement_delayed_shipout_bool
diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-xetex.def b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-xetex.def
index dd1bdb8cc0d..c29a76a19a8 100644
--- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-xetex.def
+++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-xetex.def
@@ -20,7 +20,7 @@
%%
%% File: l3backend-testphase.dtx
\ProvidesExplFile
- {l3backend-testphase-xetex.def}{2024-05-23}{}
+ {l3backend-testphase-xetex.def}{2024-09-29}{}
{LaTeX~PDF~management~testphase~bundle~backend~support: XeTeX}
\cs_generate_variant:Nn \__kernel_backend_literal:n { e }
\cs_generate_variant:Nn \__pdf_backend:n { e }
diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3pdffield-testphase.sty b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3pdffield-testphase.sty
index 8309f4c507d..6c37dc8c22c 100644
--- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3pdffield-testphase.sty
+++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3pdffield-testphase.sty
@@ -27,7 +27,7 @@
%% File: l3pdffield.dtx
\NeedsTeXFormat{LaTeX2e}
-\ProvidesExplPackage{l3pdffield-testphase}{2024-05-23}{0.96i}%
+\ProvidesExplPackage{l3pdffield-testphase}{2024-09-29}{0.96m}%
{form fields}
\csname HyField@NeedAppearancesfalse\endcsname % suppress NeedAppearances
\str_new:N \l__pdffield_tmpa_str
@@ -1762,6 +1762,8 @@
%% File: l3pdfpdffield-choice.dtx
+
+
\RequirePackage{l3draw}
\seq_new:N \l__pdffield_choice_values_seq
\seq_new:N \l__pdffield_choice_defaultvalues_seq
diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-firstaid.sty b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-firstaid.sty
index 30be81ed8ec..afa15df4993 100644
--- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-firstaid.sty
+++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-firstaid.sty
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: pdfmanagement-firstaid.dtx
-\ProvidesExplPackage{pdfmanagement-firstaid}{2024-05-23}{0.96i}
+\ProvidesExplPackage{pdfmanagement-firstaid}{2024-09-29}{0.96m}
{LaTeX PDF management testphase bundle / firstaid-patches}
\clist_map_inline:nn
diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-testphase.ltx b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-testphase.ltx
index 8f56ce40317..8d362291023 100644
--- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-testphase.ltx
+++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-testphase.ltx
@@ -27,7 +27,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: pdfmanagement-testphase.dtx
-\ProvidesExplFile{pdfmanagement-testphase.ltx}{2024-05-23}{0.96i}
+\ProvidesExplFile{pdfmanagement-testphase.ltx}{2024-09-29}{0.96m}
{PDF~management~code~(testphase)}
\bool_new:N\l__pdfmanagement_delayed_shipout_bool
\msg_new:nnn {pdfmanagement}{delayed-shipout}
@@ -419,7 +419,7 @@
\pdfdict_if_exist:nTF { g__pdf_Core/#1 }
{
\cs_if_exist:cTF
- { __pdfmanagement_handler/#1/?_gput:nn } %general, name independant handler
+ { __pdfmanagement_handler/#1/?_gput:nn } %general, name independent handler
{ \use:c {__pdfmanagement_handler/#1/?_gput:nn} {#2} {#3} }
{
\cs_if_exist:cTF
@@ -455,7 +455,7 @@
\pdfdict_if_exist:nTF { g__pdf_Core/#1 }
{
\cs_if_exist:cTF
- { __pdfmanagement_handler/#1/?_gremove:n } %general, name independant handler
+ { __pdfmanagement_handler/#1/?_gremove:n } %general, name independent handler
{ \use:c {__pdfmanagement_handler/#1/?_gremove:n} {#2} }
{
\cs_if_exist:cTF
@@ -491,7 +491,7 @@
\cs_new_protected:Npn \__pdfmanagement_show:Nn #1#2
{
\cs_if_exist:cTF
- { __pdfmanagement_handler/#2/?_show: } %general, name independant handler
+ { __pdfmanagement_handler/#2/?_show: } %general, name independent handler
{ \use:c {__pdfmanagement_handler/#2/?_show:} }
{
\prop_if_exist:cTF { \__kernel_pdfdict_name:n { g__pdf_Core/#2 } }
@@ -1080,6 +1080,13 @@
\prop_map_function:NN \g__pdfmanagement_documentproperties_prop \msg_show_item:nn
}
}
+\NewDocumentCommand\LogDocumentProperties {}
+ {
+ \msg_log:nne {pdfmanagement}{show-properties}
+ {
+ \prop_map_function:NN \g__pdfmanagement_documentproperties_prop \msg_show_item:nn
+ }
+ }
%% File: l3pdfannot.dtx
\cs_if_exist:NF \bitset_new:Nn
{ \RequirePackage { l3bitset } }
@@ -1313,6 +1320,7 @@
%% File: l3pdfmeta.dtx
+
\msg_new:nnn {pdf }{unknown-standard}{The~standard~'#1'~is~unknown~and~has~been~ignored}
\msg_new:nnn {pdf }{wrong-pdfversion}
{PDF~version~#1~is~too~#2~for~standard~'#3'.}
@@ -1414,6 +1422,8 @@
{ \__pdf_backend_omit_info:n {1} }
\pdfmeta_standard_verify:nF { no_CharSet }
{ \__pdf_backend_omit_charset:n {1} }
+ \pdfmeta_standard_verify:nF { omit_CID }
+ { \__pdf_backend_omit_cidset:n {1} }
\pdfmeta_standard_verify:nnF { min_pdf_version }
{ \pdf_version: }
{ \msg_warning:nneee {pdf}{wrong-pdfversion}
@@ -1461,7 +1471,10 @@
%
%===============
% Rule 6.1.13-1 CosDocument, isOptionalContentPresent == false
- ,Catalog_no_OCProperties =
+ ,Catalog_no_OCProperties =
+ % Rule 6.9-4 The AS key shall not appear in any optional content configuration dictionary.
+ % actually only starting with A-2 but doesn't harm here either
+ ,Catalog_OCProperties_no_AS=
%===============
% Rule 6.6.1-1: PDAction, S == "GoTo" || S == "GoToR" || S == "Thread"
% || S == "URI" || S == "Named" || S == "SubmitForm"
@@ -1508,6 +1521,13 @@
{ embed_content}
\prop_gput:cnn
{ g__pdfmeta_standard_pdf/A-2B_prop }{max_pdf_version}{1.7}
+\prop_gput:cnn
+ { g__pdfmeta_standard_pdf/A-2B_prop }{omit_CID}{}
+\prop_gremove:cn
+ { g__pdfmeta_standard_pdf/A-2B_prop }
+ { Catalog_no_OCProperties }
+
+ %A-2u ==============
\prop_new:c { g__pdfmeta_standard_pdf/A-2U_prop }
\prop_gset_eq:cc
{ g__pdfmeta_standard_pdf/A-2U_prop }
@@ -1585,7 +1605,8 @@
{ g__pdfmeta_standard_pdf/A-4_prop }{conformance}
\prop_gremove:cn
{ g__pdfmeta_standard_pdf/A-4_prop }{max_pdf_version}
-
+\prop_gremove:cn
+ { g__pdfmeta_standard_pdf/A-4_prop }{Catalog_OCProperties_no_AS}
\prop_new:c { g__pdfmeta_standard_pdf/A-4F_prop }
\prop_gset_eq:cc
{ g__pdfmeta_standard_pdf/A-4F_prop }
@@ -1808,6 +1829,15 @@
_pdfstandard / UA-1 .code:n =
{
\AddToDocumentProperties [document]{pdfstandard-UA}{{1}{}}
+ \AddToHook{begindocument/before}
+ {
+ \pdf_version_compare:NnF < {2.0}
+ {
+ \msg_warning:nneee
+ {pdf}{wrong-pdfversion}
+ {\pdf_version:}{high}{UA-1}
+ }
+ }
},
_pdfstandard / UA-2 .code:n =
{
@@ -1818,6 +1848,12 @@
{
\__pdfmeta_xmp_wtpdf_accessibility_declaration:
\__pdfmeta_xmp_wtpdf_reuse_declaration:
+ \pdf_version_compare:NnT < {2.0}
+ {
+ \msg_warning:nneee
+ {pdf}{wrong-pdfversion}
+ {\pdf_version:}{low}{UA-2}
+ }
}
},
xmp .choice:,
@@ -1866,7 +1902,8 @@
}
,debug / xmp-export .default:n = true
}
-\msg_new:nnn{pdfmeta}{namespace-defined}{The~xmlns~namespace~`#1`~is~already~declared}
+\msg_new:nnn{pdfmeta}{xmp-defined}{The~XMP~#1~`#2`~is~already~declared}
+\msg_new:nnn{pdfmeta}{xmp-undefined}{The~XMP~#1~`#2`~is~undefined}
\msg_new:nnn{pdfmeta}{colorprofile-undefined}{The~colorprofile~`#1`~is~unknown}
\bool_lazy_or:nnTF
{ \sys_if_engine_luatex_p: }
@@ -1945,7 +1982,7 @@
\tl_new:N \l__pdfmeta_xmp_currentdate_tl
\seq_new:N \l__pdfmeta_xmp_currentdate_seq
\cs_new_protected:Npn \__pdfmeta_xmp_date_get:nNN #1 #2 #3
- %#1 property, #2 tl var with PDF date, #3 seq for splitted date
+ %#1 property, #2 tl var with PDF date, #3 seq for split date
{
\tl_set:Ne #2 { \GetDocumentProperties{#1} }
\tl_if_blank:VTF #2
@@ -2187,63 +2224,78 @@
\__pdfmeta_xmp_indent:n{4} xmlns:\exp_not:n{#1="#2"}
}
}
-\cs_generate_variant:Nn \__pdfmeta_xmp_xmlns_new:nn {ne}
\__pdfmeta_xmp_xmlns_new:nn {pdf} {http://ns.adobe.com/pdf/1.3/}
\__pdfmeta_xmp_xmlns_new:nn {xmpRights}{http://ns.adobe.com/xap/1.0/rights/}
\__pdfmeta_xmp_xmlns_new:nn {dc} {http://purl.org/dc/elements/1.1/}
\__pdfmeta_xmp_xmlns_new:nn {photoshop}{http://ns.adobe.com/photoshop/1.0/}
\__pdfmeta_xmp_xmlns_new:nn {xmp} {http://ns.adobe.com/xap/1.0/}
\__pdfmeta_xmp_xmlns_new:nn {xmpMM} {http://ns.adobe.com/xap/1.0/mm/}
-\__pdfmeta_xmp_xmlns_new:ne {stEvt}
+\__pdfmeta_xmp_xmlns_new:nn {stEvt}
{http://ns.adobe.com/xap/1.0/sType/ResourceEvent\c_hash_str}
\__pdfmeta_xmp_xmlns_new:nn {pdfaid} {http://www.aiim.org/pdfa/ns/id/}
\__pdfmeta_xmp_xmlns_new:nn {pdfuaid} {http://www.aiim.org/pdfua/ns/id/}
\__pdfmeta_xmp_xmlns_new:nn {pdfx} {http://ns.adobe.com/pdfx/1.3/}
\__pdfmeta_xmp_xmlns_new:nn {pdfxid} {http://www.npes.org/pdfx/ns/id/}
\__pdfmeta_xmp_xmlns_new:nn {prism} {http://prismstandard.org/namespaces/basic/3.0/}
-\__pdfmeta_xmp_xmlns_new:ne {stFnt} {http://ns.adobe.com/xap/1.0/sType/Font\c_hash_str}
+\__pdfmeta_xmp_xmlns_new:nn {stFnt} {http://ns.adobe.com/xap/1.0/sType/Font\c_hash_str}
\__pdfmeta_xmp_xmlns_new:nn {Iptc4xmpCore}{http://iptc.org/std/Iptc4xmpCore/1.0/xmlns/}
\__pdfmeta_xmp_xmlns_new:nn {pdfaExtension}{http://www.aiim.org/pdfa/ns/extension/}
-\__pdfmeta_xmp_xmlns_new:ne {pdfaSchema}{http://www.aiim.org/pdfa/ns/schema\c_hash_str}
-\__pdfmeta_xmp_xmlns_new:ne {pdfaProperty}{http://www.aiim.org/pdfa/ns/property\c_hash_str}
-\__pdfmeta_xmp_xmlns_new:ne {pdfaType} {http://www.aiim.org/pdfa/ns/type\c_hash_str}
-\__pdfmeta_xmp_xmlns_new:ne {pdfaField}{http://www.aiim.org/pdfa/ns/field\c_hash_str}
+\__pdfmeta_xmp_xmlns_new:nn {pdfaSchema}{http://www.aiim.org/pdfa/ns/schema\c_hash_str}
+\__pdfmeta_xmp_xmlns_new:nn {pdfaProperty}{http://www.aiim.org/pdfa/ns/property\c_hash_str}
+\__pdfmeta_xmp_xmlns_new:nn {pdfaType} {http://www.aiim.org/pdfa/ns/type\c_hash_str}
+\__pdfmeta_xmp_xmlns_new:nn {pdfaField}{http://www.aiim.org/pdfa/ns/field\c_hash_str}
\seq_new:N \l__pdfmeta_xmp_schema_seq
\cs_new_protected:Npn \__pdfmeta_xmp_schema_new:nnn #1 #2 #3
%#1 name #2 prefix, #3 text
{
- \seq_put_right:Nn \l__pdfmeta_xmp_schema_seq { #2 }
- \tl_new:c { g__pdfmeta_xmp_schema_#2_tl }
- \tl_new:c { g__pdfmeta_xmp_schema_#2_properties_tl }
- \tl_gput_right:cn { g__pdfmeta_xmp_schema_#2_tl }
+ \tl_if_exist:cTF { g__pdfmeta_xmp_schema_#2_tl }
{
- \__pdfmeta_xmp_add_packet_open_attr:nnn{rdf}{li}{rdf:parseType="Resource"}
- \__pdfmeta_xmp_add_packet_line:nnn {pdfaSchema}{schema}{#1}
- \__pdfmeta_xmp_add_packet_line:nnn {pdfaSchema}{prefix}{#2}
- \__pdfmeta_xmp_add_packet_line:nnn {pdfaSchema}{namespaceURI}{#3}
- \__pdfmeta_xmp_add_packet_open:nn {pdfaSchema}{property}
- \__pdfmeta_xmp_add_packet_open:nn{rdf}{Seq}
- \tl_use:c { g__pdfmeta_xmp_schema_#2_properties_tl }
- \__pdfmeta_xmp_add_packet_close:nn{rdf}{Seq}
- \__pdfmeta_xmp_add_packet_close:nn {pdfaSchema}{property}
- \cs_if_exist_use:c {__pdfmeta_xmp_schema_#2_additions:}
- \__pdfmeta_xmp_add_packet_close:nn{rdf}{li}
+ \msg_warning:nnnn{pdfmeta}{xmp-defined}{schema}{#2}
+ }
+ {
+ \seq_put_right:Nn \l__pdfmeta_xmp_schema_seq { #2 }
+ \tl_new:c { g__pdfmeta_xmp_schema_#2_tl }
+ \tl_new:c { g__pdfmeta_xmp_schema_#2_properties_tl }
+ \tl_gput_right:cn { g__pdfmeta_xmp_schema_#2_tl }
+ {
+ \__pdfmeta_xmp_add_packet_open_attr:nnn{rdf}{li}{rdf:parseType="Resource"}
+ \__pdfmeta_xmp_add_packet_line:nnn {pdfaSchema}{schema}{#1}
+ \__pdfmeta_xmp_add_packet_line:nnn {pdfaSchema}{prefix}{#2}
+ \__pdfmeta_xmp_add_packet_line:nnn {pdfaSchema}{namespaceURI}{#3}
+ \__pdfmeta_xmp_add_packet_open:nn {pdfaSchema}{property}
+ \__pdfmeta_xmp_add_packet_open:nn{rdf}{Seq}
+ \tl_use:c { g__pdfmeta_xmp_schema_#2_properties_tl }
+ \__pdfmeta_xmp_add_packet_close:nn{rdf}{Seq}
+ \__pdfmeta_xmp_add_packet_close:nn {pdfaSchema}{property}
+ \cs_if_exist_use:c {__pdfmeta_xmp_schema_#2_additions:}
+ \__pdfmeta_xmp_add_packet_close:nn{rdf}{li}
+ }
}
}
-
+\prop_new:N\g__pdfmeta_xmp_schema_property_prop
\cs_new_protected:Npn \__pdfmeta_xmp_property_new:nnnnn #1 #2 #3 #4 #5 %
%#1 schema #2 name, #3 type, #4 category #5 description
{
- \tl_gput_right:cn { g__pdfmeta_xmp_schema_#1_properties_tl }
+ \tl_if_exist:cTF { g__pdfmeta_xmp_schema_#1_properties_tl }
+ {
+ \prop_get:NeNF \g__pdfmeta_xmp_schema_property_prop {#1:#2}\l__pdfmeta_tmpa_tl
+ {
+ \prop_gput:Nee \g__pdfmeta_xmp_schema_property_prop {#1:#2}{#3}
+ \tl_gput_right:cn { g__pdfmeta_xmp_schema_#1_properties_tl }
+ {
+ \__pdfmeta_xmp_add_packet_open:nn {rdf}{li~rdf:parseType="Resource"}
+ \__pdfmeta_xmp_add_packet_line:nnn {pdfaProperty}{name}{#2}
+ \__pdfmeta_xmp_add_packet_line:nnn {pdfaProperty}{valueType}{#3}
+ \__pdfmeta_xmp_add_packet_line:nnn {pdfaProperty}{category}{#4}
+ \__pdfmeta_xmp_add_packet_line:nnn {pdfaProperty}{description}{#5}
+ \__pdfmeta_xmp_add_packet_close:nn{rdf}{li}
+ }
+ }
+ }
{
- \__pdfmeta_xmp_add_packet_open:nn {rdf}{li~rdf:parseType="Resource"}
- \__pdfmeta_xmp_add_packet_line:nnn {pdfaProperty}{name}{#2}
- \__pdfmeta_xmp_add_packet_line:nnn {pdfaProperty}{valueType}{#3}
- \__pdfmeta_xmp_add_packet_line:nnn {pdfaProperty}{category}{#4}
- \__pdfmeta_xmp_add_packet_line:nnn {pdfaProperty}{description}{#5}
- \__pdfmeta_xmp_add_packet_close:nn{rdf}{li}
- }
+ \msg_warning:nnnn{pdfmeta}{xmp-undefined}{schema}{#1}
+ }
}
\cs_new_protected:Npn \__pdfmeta_xmp_add_packet_field:nnn #1 #2 #3 %
@@ -2275,6 +2327,12 @@
{Integer}
{internal}
{Year~of~standard}
+\__pdfmeta_xmp_property_new:nnnnn
+ {pdfaid}
+ {rev}
+ {Integer}
+ {internal}
+ {Revision~year~of~standard}
\__pdfmeta_xmp_schema_new:nnn
{PDF/UA~Universal~Accessibility~Schema}
{pdfuaid}
@@ -2443,7 +2501,7 @@
}
\cs_new_protected:Npn \__pdfmeta_xmp_schema_enable_pdfd:
{
- \__pdfmeta_xmp_xmlns_new:ne {pdfd}{http://pdfa.org/declarations/}
+ \__pdfmeta_xmp_xmlns_new:nn {pdfd}{http://pdfa.org/declarations/}
\__pdfmeta_xmp_schema_new:nnn
{PDF~Declarations~Schema}
{pdfd}
@@ -2806,9 +2864,11 @@
\cs_new_protected:Npn \pdfmeta_xmp_xmlns_new:nn #1 #2
{
\prop_if_in:NnTF \g__pdfmeta_xmp_xmlns_prop {#1}
- {\msg_warning:nnn{pdfmeta}{namespace-defined}{#1}}
+ {\msg_warning:nnnn{pdfmeta}{xmp-defined}{xmlns~namespace}{#1}}
{\__pdfmeta_xmp_xmlns_new:nn {#1}{#2}}
}
+\cs_set_eq:NN \pdfmeta_xmp_schema_new:nnn \__pdfmeta_xmp_schema_new:nnn
+\cs_set_eq:NN \pdfmeta_xmp_property_new:nnnnn \__pdfmeta_xmp_property_new:nnnnn
\cs_new_protected:Npn \pdfmeta_xmp_add_declaration:n #1 %conformsTo uri
{
\__pdfmeta_xmp_schema_enable_pdfd:
diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-testphase.sty b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-testphase.sty
index 5eb909751ee..f78f2e9fc3a 100644
--- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-testphase.sty
+++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-testphase.sty
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: pdfmanagement-testphase.dtx
-\ProvidesExplPackage{pdfmanagement-testphase}{2024-05-23}{0.96i}
+\ProvidesExplPackage{pdfmanagement-testphase}{2024-09-29}{0.96m}
{LaTeX PDF management testphase bundle}
\providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion}
\IfFormatAtLeastTF{2020-10-01}{}{
diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/xcolor-patches-tmp-ltx.sty b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/xcolor-patches-tmp-ltx.sty
index cc220aa313e..a429ca97547 100644
--- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/xcolor-patches-tmp-ltx.sty
+++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/xcolor-patches-tmp-ltx.sty
@@ -1,6 +1,6 @@
%% LaTeX2e file `xcolor-patches-tmp-ltx.sty'
%%
-\ProvidesPackage{xcolor-patches-tmp-ltx}[2024-05-23 v0.96i patch xcolor for l3color]
+\ProvidesPackage{xcolor-patches-tmp-ltx}[2024-09-29 v0.96m patch xcolor for l3color]
\@ifundefined{color_set:nn}{\RequirePackage{l3color}}{}
\ExplSyntaxOn
diff --git a/Master/texmf-dist/tex/latex/pdfpages/pdfpages.sty b/Master/texmf-dist/tex/latex/pdfpages/pdfpages.sty
index 62890e82891..2c9076f90db 100644
--- a/Master/texmf-dist/tex/latex/pdfpages/pdfpages.sty
+++ b/Master/texmf-dist/tex/latex/pdfpages/pdfpages.sty
@@ -24,12 +24,12 @@
%% Please send error reports and suggestions for improvements to
%% Andreas MATTHIAS <andreas.matthias@gmail.com>.
%%
-\def\AM@fileversion{v0.6a}
+\def\AM@fileversion{v0.6b}
\def\AM@Git@Date@process$#1: #2 #3${\AM@Git@Date@process@i#2\END}
\def\AM@Git@Date@process@i#1-#2-#3\END{\def\AM@Git@Date{#1/#2/#3}}
\def\AM@Git@SHA@process$#1: #2${\def\AM@Git@SHA{#2}}
-\AM@Git@Date@process$Date: 2024-05-29 13:40:24 +0200 $
-\AM@Git@SHA@process$SHA-1: 8248eea896cba74c6d712bddc3e4ae8d4c403081 $
+\AM@Git@Date@process$Date: 2024-08-20 15:16:01 +0200 $
+\AM@Git@SHA@process$SHA-1: 8cc873330fc0863d9d32e017e64c98d9f04f579d $
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{pdfpages}
[\AM@Git@Date\space\AM@fileversion\space
diff --git a/Master/texmf-dist/tex/latex/pdfpages/ppdvipdfmx.def b/Master/texmf-dist/tex/latex/pdfpages/ppdvipdfmx.def
index 6f36c0a652b..49bc11c8c41 100644
--- a/Master/texmf-dist/tex/latex/pdfpages/ppdvipdfmx.def
+++ b/Master/texmf-dist/tex/latex/pdfpages/ppdvipdfmx.def
@@ -24,12 +24,12 @@
%% Please send error reports and suggestions for improvements to
%% Andreas MATTHIAS <andreas.matthias@gmail.com>.
%%
-\def\AM@fileversion{v0.6a}
+\def\AM@fileversion{v0.6b}
\def\AM@Git@Date@process$#1: #2 #3${\AM@Git@Date@process@i#2\END}
\def\AM@Git@Date@process@i#1-#2-#3\END{\def\AM@Git@Date{#1/#2/#3}}
\def\AM@Git@SHA@process$#1: #2${\def\AM@Git@SHA{#2}}
-\AM@Git@Date@process$Date: 2024-05-29 13:40:24 +0200 $
-\AM@Git@SHA@process$SHA-1: 8248eea896cba74c6d712bddc3e4ae8d4c403081 $
+\AM@Git@Date@process$Date: 2024-08-20 15:16:01 +0200 $
+\AM@Git@SHA@process$SHA-1: 8cc873330fc0863d9d32e017e64c98d9f04f579d $
\ProvidesFile{ppdvipdfmx.def}
[\AM@Git@Date\space\AM@fileversion\space
Pdfpages driver for dvipdfmx (AM)]
diff --git a/Master/texmf-dist/tex/latex/pdfpages/ppdvips.def b/Master/texmf-dist/tex/latex/pdfpages/ppdvips.def
index b44308c0fe7..32569a0ef4d 100644
--- a/Master/texmf-dist/tex/latex/pdfpages/ppdvips.def
+++ b/Master/texmf-dist/tex/latex/pdfpages/ppdvips.def
@@ -24,12 +24,12 @@
%% Please send error reports and suggestions for improvements to
%% Andreas MATTHIAS <andreas.matthias@gmail.com>.
%%
-\def\AM@fileversion{v0.6a}
+\def\AM@fileversion{v0.6b}
\def\AM@Git@Date@process$#1: #2 #3${\AM@Git@Date@process@i#2\END}
\def\AM@Git@Date@process@i#1-#2-#3\END{\def\AM@Git@Date{#1/#2/#3}}
\def\AM@Git@SHA@process$#1: #2${\def\AM@Git@SHA{#2}}
-\AM@Git@Date@process$Date: 2024-05-29 13:40:24 +0200 $
-\AM@Git@SHA@process$SHA-1: 8248eea896cba74c6d712bddc3e4ae8d4c403081 $
+\AM@Git@Date@process$Date: 2024-08-20 15:16:01 +0200 $
+\AM@Git@SHA@process$SHA-1: 8cc873330fc0863d9d32e017e64c98d9f04f579d $
\ProvidesFile{ppdvips.def}
[\AM@Git@Date\space\AM@fileversion\space
Pdfpages driver for dvips (AM)]
diff --git a/Master/texmf-dist/tex/latex/pdfpages/ppluatex.def b/Master/texmf-dist/tex/latex/pdfpages/ppluatex.def
index d885101ed45..5047ce749f2 100644
--- a/Master/texmf-dist/tex/latex/pdfpages/ppluatex.def
+++ b/Master/texmf-dist/tex/latex/pdfpages/ppluatex.def
@@ -24,12 +24,12 @@
%% Please send error reports and suggestions for improvements to
%% Andreas MATTHIAS <andreas.matthias@gmail.com>.
%%
-\def\AM@fileversion{v0.6a}
+\def\AM@fileversion{v0.6b}
\def\AM@Git@Date@process$#1: #2 #3${\AM@Git@Date@process@i#2\END}
\def\AM@Git@Date@process@i#1-#2-#3\END{\def\AM@Git@Date{#1/#2/#3}}
\def\AM@Git@SHA@process$#1: #2${\def\AM@Git@SHA{#2}}
-\AM@Git@Date@process$Date: 2024-05-29 13:40:24 +0200 $
-\AM@Git@SHA@process$SHA-1: 8248eea896cba74c6d712bddc3e4ae8d4c403081 $
+\AM@Git@Date@process$Date: 2024-08-20 15:16:01 +0200 $
+\AM@Git@SHA@process$SHA-1: 8cc873330fc0863d9d32e017e64c98d9f04f579d $
\ProvidesFile{ppluatex.def}
[\AM@Git@Date\space\AM@fileversion\space
Pdfpages driver for LuaTeX (AM)]
diff --git a/Master/texmf-dist/tex/latex/pdfpages/ppnull.def b/Master/texmf-dist/tex/latex/pdfpages/ppnull.def
index 153a63b3a87..fd4175617f2 100644
--- a/Master/texmf-dist/tex/latex/pdfpages/ppnull.def
+++ b/Master/texmf-dist/tex/latex/pdfpages/ppnull.def
@@ -24,12 +24,12 @@
%% Please send error reports and suggestions for improvements to
%% Andreas MATTHIAS <andreas.matthias@gmail.com>.
%%
-\def\AM@fileversion{v0.6a}
+\def\AM@fileversion{v0.6b}
\def\AM@Git@Date@process$#1: #2 #3${\AM@Git@Date@process@i#2\END}
\def\AM@Git@Date@process@i#1-#2-#3\END{\def\AM@Git@Date{#1/#2/#3}}
\def\AM@Git@SHA@process$#1: #2${\def\AM@Git@SHA{#2}}
-\AM@Git@Date@process$Date: 2024-05-29 13:40:24 +0200 $
-\AM@Git@SHA@process$SHA-1: 8248eea896cba74c6d712bddc3e4ae8d4c403081 $
+\AM@Git@Date@process$Date: 2024-08-20 15:16:01 +0200 $
+\AM@Git@SHA@process$SHA-1: 8cc873330fc0863d9d32e017e64c98d9f04f579d $
\ProvidesFile{ppnull.def}
[\AM@Git@Date\space\AM@fileversion\space
Pdfpages dummy driver (AM)]
diff --git a/Master/texmf-dist/tex/latex/pdfpages/pppdftex.def b/Master/texmf-dist/tex/latex/pdfpages/pppdftex.def
index 442aae7e70e..67d1af500b6 100644
--- a/Master/texmf-dist/tex/latex/pdfpages/pppdftex.def
+++ b/Master/texmf-dist/tex/latex/pdfpages/pppdftex.def
@@ -24,12 +24,12 @@
%% Please send error reports and suggestions for improvements to
%% Andreas MATTHIAS <andreas.matthias@gmail.com>.
%%
-\def\AM@fileversion{v0.6a}
+\def\AM@fileversion{v0.6b}
\def\AM@Git@Date@process$#1: #2 #3${\AM@Git@Date@process@i#2\END}
\def\AM@Git@Date@process@i#1-#2-#3\END{\def\AM@Git@Date{#1/#2/#3}}
\def\AM@Git@SHA@process$#1: #2${\def\AM@Git@SHA{#2}}
-\AM@Git@Date@process$Date: 2024-05-29 13:40:24 +0200 $
-\AM@Git@SHA@process$SHA-1: 8248eea896cba74c6d712bddc3e4ae8d4c403081 $
+\AM@Git@Date@process$Date: 2024-08-20 15:16:01 +0200 $
+\AM@Git@SHA@process$SHA-1: 8cc873330fc0863d9d32e017e64c98d9f04f579d $
\ProvidesFile{pppdftex.def}
[\AM@Git@Date\space\AM@fileversion\space
Pdfpages driver for pdfTeX (AM)]
diff --git a/Master/texmf-dist/tex/latex/pdfpages/ppvtex.def b/Master/texmf-dist/tex/latex/pdfpages/ppvtex.def
index d5a2a88c130..a1a0fb7e56a 100644
--- a/Master/texmf-dist/tex/latex/pdfpages/ppvtex.def
+++ b/Master/texmf-dist/tex/latex/pdfpages/ppvtex.def
@@ -24,12 +24,12 @@
%% Please send error reports and suggestions for improvements to
%% Andreas MATTHIAS <andreas.matthias@gmail.com>.
%%
-\def\AM@fileversion{v0.6a}
+\def\AM@fileversion{v0.6b}
\def\AM@Git@Date@process$#1: #2 #3${\AM@Git@Date@process@i#2\END}
\def\AM@Git@Date@process@i#1-#2-#3\END{\def\AM@Git@Date{#1/#2/#3}}
\def\AM@Git@SHA@process$#1: #2${\def\AM@Git@SHA{#2}}
-\AM@Git@Date@process$Date: 2024-05-29 13:40:24 +0200 $
-\AM@Git@SHA@process$SHA-1: 8248eea896cba74c6d712bddc3e4ae8d4c403081 $
+\AM@Git@Date@process$Date: 2024-08-20 15:16:01 +0200 $
+\AM@Git@SHA@process$SHA-1: 8cc873330fc0863d9d32e017e64c98d9f04f579d $
\ProvidesFile{ppvtex.def}
[\AM@Git@Date\space\AM@fileversion\space
Pdfpages driver for VTeX (AM)]
diff --git a/Master/texmf-dist/tex/latex/pdfpages/ppxetex.def b/Master/texmf-dist/tex/latex/pdfpages/ppxetex.def
index b1bd4a1f989..90f8a7831c7 100644
--- a/Master/texmf-dist/tex/latex/pdfpages/ppxetex.def
+++ b/Master/texmf-dist/tex/latex/pdfpages/ppxetex.def
@@ -24,12 +24,12 @@
%% Please send error reports and suggestions for improvements to
%% Andreas MATTHIAS <andreas.matthias@gmail.com>.
%%
-\def\AM@fileversion{v0.6a}
+\def\AM@fileversion{v0.6b}
\def\AM@Git@Date@process$#1: #2 #3${\AM@Git@Date@process@i#2\END}
\def\AM@Git@Date@process@i#1-#2-#3\END{\def\AM@Git@Date{#1/#2/#3}}
\def\AM@Git@SHA@process$#1: #2${\def\AM@Git@SHA{#2}}
-\AM@Git@Date@process$Date: 2024-05-29 13:40:24 +0200 $
-\AM@Git@SHA@process$SHA-1: 8248eea896cba74c6d712bddc3e4ae8d4c403081 $
+\AM@Git@Date@process$Date: 2024-08-20 15:16:01 +0200 $
+\AM@Git@SHA@process$SHA-1: 8cc873330fc0863d9d32e017e64c98d9f04f579d $
\ProvidesFile{ppxetex.def}
[\AM@Git@Date\space\AM@fileversion\space
Pdfpages driver for XeTeX (AM)]
@@ -47,10 +47,10 @@
}
\def\AM@getpagecount{%
\expandafter\filename@parse\expandafter{\AM@currentdocname}%
- \edef\type@ext{%
- \noexpand\lowercase{%
- \noexpand\def\noexpand\type@ext{.\filename@ext}}}%
- \type@ext
+ \begingroup\edef\x{%
+ \lowercase{\endgroup
+ \def\noexpand\type@ext{\expandafter\scantokens\expandafter{\filename@ext\noexpand}}}}%
+ \x
\ifx\type@ext\AM@pdf@ext
\ifdefined\subfix
\let\AM@import@path\@empty
@@ -68,7 +68,7 @@
\def\AM@pagecount{1}%
\fi
}
-\def\AM@pdf@ext{.pdf}
+\def\AM@pdf@ext{pdf}
\begingroup
\def\gobble@nil#1\@nil{}
\ifnum\XeTeXversion=0
diff --git a/Master/texmf-dist/tex/latex/pgf-periodictable/pgf-PeriodicTable.sty b/Master/texmf-dist/tex/latex/pgf-periodictable/pgf-PeriodicTable.sty
index 3768fc4f249..41e135194ff 100644
--- a/Master/texmf-dist/tex/latex/pgf-periodictable/pgf-PeriodicTable.sty
+++ b/Master/texmf-dist/tex/latex/pgf-periodictable/pgf-PeriodicTable.sty
@@ -1,4 +1,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Hugo Gomes @ 09/09/2024 v2.1.4
+% Hugo Gomes @ 07/08/2024 v2.1.3
+% Hugo Gomes @ 01/08/2024 v2.1.2
+% Hugo Gomes @ 07/07/2024 v2.1.1
% Hugo Gomes @ 03/04/2024 v2.1.0a
% Hugo Gomes @ 14/02/2024 v2.1.0
% Hugo Gomes @ 29/05/2023 v2.0.1
@@ -7,7 +11,7 @@
% Hugo Gomes @ 10/10/2022 v1.0.0
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\NeedsTeXFormat{LaTeX2e}%
-\ProvidesPackage{pgf-PeriodicTable}[03/04/2024 pgf-PeriodicTable v2.1.0a]%%
+\ProvidesPackage{pgf-PeriodicTable}[08/09/2024 pgf-PeriodicTable v2.1.4]%%
\RequirePackage{tikz}%
\usetikzlibrary{fadings}%
\tikzfading[name=aumentax, left color=transparent!80, right color=transparent!1]%
@@ -16,11 +20,19 @@
\tikzfading[name=diminuiy, bottom color=transparent!80, top color=transparent!1]%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% check the engine and load font packages
-\ifx\pdfliteral\undefined\relax% XeLaTeX or LuaLaTeX
-\RequirePackage{fontspec}[2020/02/03]\edef\pgfPT@fontspec{1}%
-\else% pdfLaTeX
-\RequirePackage[T1]{fontenc}\edef\pgfPT@fontspec{0}%
-\fi%
+% changed in v2.1.3
+% pdfLaTeX --------------------------------------------------
+\ifx\pdftexversion\undefined\else%
+\RequirePackage[T1]{fontenc}\edef\pgfPT@fontspec{0}\edef\pgfPT@engine{0}%
+\fi% -----------------------------------------------------------
+% LuaLaTeX --------------------------------------------------
+\ifx\directlua\undefined\else%
+\RequirePackage{fontspec}[2020/02/03]\edef\pgfPT@fontspec{1}\edef\pgfPT@engine{1}%
+\fi% -----------------------------------------------------------
+% XeLaTeX ---------------------------------------------------
+\ifx\XeTeXrevision\undefined\else%
+\RequirePackage{fontspec}[2020/02/03]\edef\pgfPT@fontspec{1}\edef\pgfPT@engine{2}%
+\fi% -----------------------------------------------------------
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% ifs to user language and list of user translations available
\newif\ifpgfPT@user@lang\pgfPT@user@langfalse%
@@ -190,10 +202,10 @@ font,IUPAC,capitalize element names=false,show title,show period numbers,show gr
show legend,legend acronyms,legend back color,show legend pins,show extra legend,legend radio color,%
legend CS color,legend Z color,show blocks=false,show families=false,show MNM line,show periodic variations=false,%
show label LaAc,title font,title color,cell width,cell height,cell style,label font,period label color,group label color,%
-label LaAc font,Z list,CS solid, CS liquid,CS gas,CS synt,CS font,CS render mode,CS outline color,CS outline width,%
+label LaAc font,group numbers,Roman label color,Z list,CS solid, CS liquid,CS gas,CS synt,CS font,CS render mode,CS outline color,CS outline width,%
Z backcolor,Z color,Z font,Z align,Z padding,Z use box width=false,name color,name font,name align,Ar color,Ar font,Ar label,Ar precision,%
R color,R font,Rcov color,Rcov font,Rion color,Rion font,Ei color,Ei font,eneg color,eneg font,eaff color,eaff font,%
-O color,O font,Tmelt color,Tmelt font,TmeltC color,TmeltC font,Tboil color,Tboil font,TboilC color,TboilC font,%
+O color,O font,O Roman=false,Tmelt color,Tmelt font,TmeltC color,TmeltC font,Tboil color,Tboil font,TboilC color,TboilC font,%
eDist color,eDist font,eDist sep,eConfign color,eConfign font,eConfignl color,eConfignl font,d color,d font,Cp color,Cp font,%
kT color,kT font,ls color,ls font,ls align,ls,lsa color,lsa font,lsb color,lsb font,lsc color,lsc font,lsca color,lsca font,%
DiscY color,DiscY font,DiscY BC scale,DiscC color,DiscC font,spectra color,spectra font,MNM line color,MNM line width,%DiscC,
@@ -661,6 +673,16 @@ d unit,d precision,E precision,ls unit,ls precision,T precision,Cp precision,kT
\fi%
% O -> Oxidation States
\ifpgfPT@O\relax%
+ \ifpgfPTORoman% new in v2.1.1
+ \ifnum\Z=25\relax% Mn
+ \node[font=\pgfPTOfont,text=\pgfPTOcolor,text width=\pgfPT@data@O@wd,text centered]%
+ at ([xshift=\pgfPT@data@O@x,yshift=-\pgfPT@data@O@y]\Z) {\vbox to\pgfPT@data@O@ht{\vfil\pgfPT@box@zerodepth{\resizebox{.95\linewidth}{\height}{\pgfPT@data@ORoman}}
+ \vfil}};%
+ \else%
+ \node[font=\pgfPTOfont,text=\pgfPTOcolor,text width=\pgfPT@data@O@wd,text centered]%
+ at ([xshift=\pgfPT@data@O@x,yshift=-\pgfPT@data@O@y]\Z) {\vbox to\pgfPT@data@O@ht{\vfil\pgfPT@box@zerodepth{\pgfPT@data@ORoman}\vfil}};%
+ \fi%
+ \else%
\ifnum\Z=25\relax% Mn
\node[font=\pgfPTOfont,text=\pgfPTOcolor,text width=\pgfPT@data@O@wd,text centered]%
at ([xshift=\pgfPT@data@O@x,yshift=-\pgfPT@data@O@y]\Z) {\vbox to\pgfPT@data@O@ht{\vfil\pgfPT@box@zerodepth{\resizebox{.95\linewidth}{\height}{\pgfPT@data@O}}
@@ -669,6 +691,7 @@ d unit,d precision,E precision,ls unit,ls precision,T precision,Cp precision,kT
\node[font=\pgfPTOfont,text=\pgfPTOcolor,text width=\pgfPT@data@O@wd,text centered]%
at ([xshift=\pgfPT@data@O@x,yshift=-\pgfPT@data@O@y]\Z) {\vbox to\pgfPT@data@O@ht{\vfil\pgfPT@box@zerodepth{\pgfPT@data@O}\vfil}};%
\fi%
+ \fi%
\fi%
% Tmelt -> Melting Point (Kelvin)
\ifpgfPT@Tmelt\relax%
@@ -1188,15 +1211,21 @@ d unit,d precision,E precision,ls unit,ls precision,T precision,Cp precision,kT
% groups -->
\ifpgfPTgrlabels%
\global\pgfPTis@labeldrawnfalse%
+\pgfPT@gr@numbers{\pgfPTgrnum}% new in v2.1.1
\ifpgfPTIUPACMMIX%
\foreach \group in {1,2,4,5,...,18} {%
\edef\pgfPT@@grlist{\csname pgfPT@cells@G\@Roman\group\endcsname}%
\foreach \Zsearch in \pgfPT@@grlist{%
\foreach \Z in \pgfPT@@cellslist {%
\ifnum\Z=\Zsearch\global\pgfPTis@labeldrawntrue%
- {\pgfPTlabfont\pgfPTnumberfont\ifpgfPT@zhnumbers@gr\let\pgfPT@printnum\zhnumber\else\let\pgfPT@printnum\relax\fi%
- \node[above,font=\pgfPTlabfont,text=\pgfPTlabgrcolor] at%
- ([xshift=\pgfPT@@xshift,yshift=\pgfPT@grlabel@yshift]\Z) {\pgfPT@printnum{\group}};}\breakforeach\fi%
+ {\pgfPTlabfont\pgfPTnumberfont\colorlet{pgfPT@grcolor}{\pgfPTlabgrcolor}\ifpgfPT@zhnumbers@gr\let\pgfPT@printnum\zhnumber\else%
+ \ifpgfPT@grRoman\let\pgfPT@printnum\pgfPT@gr@Roman\colorlet{pgfPT@grcolor}{\pgfPTRomanlabgrcolor}\else\let\pgfPT@printnum\relax\fi\fi%
+ \node[above,font=\pgfPTlabfont,text=pgfPT@grcolor] at%
+ ([xshift=\pgfPT@@xshift,yshift=\pgfPT@grlabel@yshift]\Z) {\pgfPT@printnum{\group}};
+ \ifpgfPT@grarabic\colorlet{pgfPT@grcolor}{\pgfPTlabgrcolor}%
+ \node[above,font=\pgfPTlabfont,text=pgfPT@grcolor] at%
+ ([xshift=\pgfPT@@xshift,yshift=\pgfPT@grlabel@yshift+2ex]\Z) {\group};\fi}%
+ \breakforeach\fi%
}%
\ifpgfPTis@labeldrawn\global\pgfPTis@labeldrawnfalse\breakforeach\fi%
}%
@@ -1205,9 +1234,14 @@ d unit,d precision,E precision,ls unit,ls precision,T precision,Cp precision,kT
\foreach \Zsearch in \pgfPT@cells@GIIILaAc{%
\foreach \Z in \pgfPT@@cellslist {%
\ifnum\Z=\Zsearch\global\pgfPTis@labeldrawntrue%
- {\pgfPTlabfont\pgfPTnumberfont\ifpgfPT@zhnumbers@gr\let\pgfPT@printnum\zhnumber\else\let\pgfPT@printnum\relax\fi%
- \node[above,font=\pgfPTlabfont,text=\pgfPTlabgrcolor] at%
- ([xshift=\pgfPT@@xshift,yshift=\pgfPT@grlabel@yshift]\Z) {\pgfPT@printnum{3}};}\breakforeach\fi%
+ {\pgfPTlabfont\pgfPTnumberfont\colorlet{pgfPT@grcolor}{\pgfPTlabgrcolor}\ifpgfPT@zhnumbers@gr\let\pgfPT@printnum\zhnumber\else%
+ \ifpgfPT@grRoman\let\pgfPT@printnum\pgfPT@gr@Roman\colorlet{pgfPT@grcolor}{\pgfPTRomanlabgrcolor}\else\let\pgfPT@printnum\relax\fi\fi%
+ \node[above,font=\pgfPTlabfont,text=pgfPT@grcolor] at%
+ ([xshift=\pgfPT@@xshift,yshift=\pgfPT@grlabel@yshift]\Z) {\pgfPT@printnum{3}};
+ \ifpgfPT@grarabic\colorlet{pgfPT@grcolor}{\pgfPTlabgrcolor}%
+ \node[above,font=\pgfPTlabfont,text=pgfPT@grcolor] at%
+ ([xshift=\pgfPT@@xshift,yshift=\pgfPT@grlabel@yshift+2ex]\Z) {3};\fi}%
+ \breakforeach\fi%
}%
\ifpgfPTis@labeldrawn\global\pgfPTis@labeldrawnfalse\breakforeach\fi%
}%
@@ -1217,9 +1251,14 @@ d unit,d precision,E precision,ls unit,ls precision,T precision,Cp precision,kT
\foreach \Zsearch in \pgfPT@@grlist{%
\foreach \Z in \pgfPT@@cellslist {%
\ifnum\Z=\Zsearch\global\pgfPTis@labeldrawntrue%
- {\pgfPTlabfont\pgfPTnumberfont\ifpgfPT@zhnumbers@gr\let\pgfPT@printnum\zhnumber\else\let\pgfPT@printnum\relax\fi%
- \node[above,font=\pgfPTlabfont,text=\pgfPTlabgrcolor] at%
- ([xshift=\pgfPT@@xshift,yshift=\pgfPT@grlabel@yshift]\Z) {\pgfPT@printnum{\group}};}\breakforeach\fi%
+ {\pgfPTlabfont\pgfPTnumberfont\colorlet{pgfPT@grcolor}{\pgfPTlabgrcolor}\ifpgfPT@zhnumbers@gr\let\pgfPT@printnum\zhnumber\else%
+ \ifpgfPT@grRoman\let\pgfPT@printnum\pgfPT@gr@Roman\colorlet{pgfPT@grcolor}{\pgfPTRomanlabgrcolor}\else\let\pgfPT@printnum\relax\fi\fi%
+ \node[above,font=\pgfPTlabfont,text=pgfPT@grcolor] at%
+ ([xshift=\pgfPT@@xshift,yshift=\pgfPT@grlabel@yshift]\Z) {\pgfPT@printnum{\group}};%
+ \ifpgfPT@grarabic\colorlet{pgfPT@grcolor}{\pgfPTlabgrcolor}%
+ \node[above,font=\pgfPTlabfont,text=pgfPT@grcolor] at%
+ ([xshift=\pgfPT@@xshift,yshift=\pgfPT@grlabel@yshift+2ex]\Z) {\group};\fi}%
+ \breakforeach\fi%
}%
\ifpgfPTis@labeldrawn\global\pgfPTis@labeldrawnfalse\breakforeach\fi%
}%
@@ -2408,7 +2447,7 @@ d unit,d precision,E precision,ls unit,ls precision,T precision,Cp precision,kT
\tikz{%
\node[text width=\pgfPT@boxwd,text centered,inner sep=0pt] (exFlag) at (0,0) {\includegraphics[height=\pgfPT@boxht]{flags/\pgfPT@country@flag.pdf}};%
\global\pgfPT@countc=0%
- \node[below right,text width=3.75*\pgfPTcellwd,inner xsep=0pt] at ([xshift=.025*\pgfPTcellwd]exFlag.north east) {%
+ \node[below right,text width=2.2*\pgfPTcellwd,inner xsep=0pt] at ([xshift=.025*\pgfPTcellwd]exFlag.north east) {%
\@for\pgfPT@tmp:=\pgfPTlanguages\do{%
\ifnum\pgfPT@countc=0\relax%
\pgfPT@box@zerodepth{\csname pgfPT@country@name@\pgfPT@tmp\endcsname}%
@@ -2979,7 +3018,9 @@ rectangle
\fi% \pgfPT@element@count=118
\fi\fi% min=1 & max 118
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\@pgfPT@resetlayers% Restoring pgf layers to those used in the document
+% corrected in v2.1.2: \@pgfPT@resetlayers -> \pgfsetlayers{\@pgfPT@resetlayers}
+% ... Warning: Missing character: There is no m (U+006D) in font nullfont! ...
+\pgfsetlayers{\@pgfPT@resetlayers}% Restoring pgf layers to those used in the document
\fontseries{\seriesdefault}\fontshape{\shapedefault}\fontfamily{\familydefault}\selectfont% Restoring the font settings to normal mode in the document
}% end tikz
}%
@@ -3054,15 +3095,14 @@ rectangle
% renders text via pdfliteral: -------------
% #1 outline width width #2 txt #3 #4 #5 rgb stroke color #6 #7 #8 rgb fill color -----------
% #9 txt render mode (0 - fill 1 - stroke 2 - fill then stroke ---------
-\ifx\pdfliteral\undefined\relax%
-\ifx\pdfextension\undefined\relax% XeLaTeX
-\def\pgfPT@lt[#1](#2)(#3,#4,#5)(#6,#7,#8)(#9){\special{pdf:literal direct #1 w #3 #4 #5 RG #6 #7 #8 rg #9 Tr}#2\special{pdf:literal direct 0 0 0 rg 1 w 0 Tr}}%
-\else% LuaLaTeX
-\protected\def\pdfliteral{\pdfextension literal}
+% changed in v2.1.3
+\ifcase\pgfPT@engine\relax% pdfLaTeX
\def\pgfPT@lt[#1](#2)(#3,#4,#5)(#6,#7,#8)(#9){\pdfliteral direct {#1 w #3 #4 #5 RG #6 #7 #8 rg #9 Tr}{#2}\pdfliteral direct {0 0 0 rg 1 w 0 Tr}}%
-\fi%
-\else% pdfLaTeX
+\or% LuaLaTeX
+\protected\def\pdfliteral{\pdfextension literal}%
\def\pgfPT@lt[#1](#2)(#3,#4,#5)(#6,#7,#8)(#9){\pdfliteral direct {#1 w #3 #4 #5 RG #6 #7 #8 rg #9 Tr}{#2}\pdfliteral direct {0 0 0 rg 1 w 0 Tr}}%
+\or% XeLaTeX
+\def\pgfPT@lt[#1](#2)(#3,#4,#5)(#6,#7,#8)(#9){\special{pdf:literal direct #1 w #3 #4 #5 RG #6 #7 #8 rg #9 Tr}#2\special{pdf:literal direct 0 0 0 rg 1 w 0 Tr}}%
\fi%
% END !! \pgfPT@lt --------------------------------------------------------------------------------
%
@@ -3073,9 +3113,10 @@ rectangle
% auxiliary macros to set the rgb components of one color ---------------------------------------
% with use of \extractcolorspecs from xcolor package ---------------------------------------------
% each component is stored in \pgfPT@r, g or b & s or f -------------------------------------
-\def\pgfPT@extract@rgb@stroke#1{\extractcolorspecs{#1}{\pgfPTcolmodel}{\pgfPTcolinfo}\expandafter\pgfPT@set@rgb@stroke\pgfPTcolinfo\relax}%
+% v3.1.3: added conversion of the color to rgb :: \colorlet{#1}[rgb]{#1}
+\def\pgfPT@extract@rgb@stroke#1{\colorlet{#1}[rgb]{#1}\extractcolorspecs{#1}{\pgfPTcolmodel}{\pgfPTcolinfo}\expandafter\pgfPT@set@rgb@stroke\pgfPTcolinfo\relax}%
\def\pgfPT@set@rgb@stroke#1,#2,#3\relax{\def\pgfPT@rs{#1}\def\pgfPT@gs{#2}\def\pgfPT@bs{#3}}%
-\def\pgfPT@extract@rgb@fill#1{\extractcolorspecs{#1}{\pgfPTcolmodel}{\pgfPTcolinfo}\expandafter\pgfPT@set@rgb@fill\pgfPTcolinfo\relax}%
+\def\pgfPT@extract@rgb@fill#1{\colorlet{#1}[rgb]{#1}\extractcolorspecs{#1}{\pgfPTcolmodel}{\pgfPTcolinfo}\expandafter\pgfPT@set@rgb@fill\pgfPTcolinfo\relax}%
\def\pgfPT@set@rgb@fill#1,#2,#3\relax{\def\pgfPT@rf{#1}\def\pgfPT@gf{#2}\def\pgfPT@bf{#3}}%
% END !! \pgfPT@color macros ------------------------------------------------------------------
%
diff --git a/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.backcolors.keys.tex b/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.backcolors.keys.tex
index 076f588ca02..b9e45c2b5ef 100644
--- a/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.backcolors.keys.tex
+++ b/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.backcolors.keys.tex
@@ -6,24 +6,25 @@
%
% defining PGF keys: the colors of the cells of the periodic table to be drawn -----------------
% list names available to use in key 'back color scheme', e.g. ----------------------------------
-% back color scheme=CPK or back color scheme=Wikipedia ------------------------------
+% v2.1.4 -> add prefix pgfPT to the built-in names
+% back color scheme=pgfPTCPK or back color scheme=pgfPTWikipedia ------------------
% if back color scheme=solid the back color key is used to fill the cells -------------------
-\def\pgfPT@backColorsScheme@default{.769/.812/.961,.678/.733/.925,.871/.89/.875,.922/.886/.71,.8/.878/.859,.706/.871/.827,.612/.859/.796,.42/.89/.769,.671/.608/.749,.588/.655/.89,.871/.89/.875,.922/.886/.71,.8/.878/.859,.706/.871/.827,.612/.859/.796,.42/.89/.769,.671/.608/.749,.588/.655/.89,.871/.89/.875,.922/.886/.71,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.8/.878/.859,.706/.871/.827,.612/.859/.796,.42/.89/.769,.671/.608/.749,.588/.655/.89,.871/.89/.875,.922/.886/.71,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.8/.878/.859,.706/.871/.827,.612/.859/.796,.42/.89/.769,.671/.608/.749,.588/.655/.89,.871/.89/.875,.922/.886/.71,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.8/.878/.859,.706/.871/.827,.612/.859/.796,.42/.89/.769,.671/.608/.749,.588/.655/.89,.871/.89/.875,.922/.886/.71,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.78/.788/.741,.78/.788/.741,.78/.788/.741,.78/.788/.741,.78/.788/.741,.78/.788/.741,.78/.788/.741,.78/.788/.741,.78/.788/.741}%
-\def\pgfPT@backColorsScheme@Soft{.843/.839/.659,.843/.839/.659,.945/.941/.918,.945/.941/.918,.843/.839/.659,.843/.839/.659,.843/.839/.659,.843/.839/.659,.843/.839/.659,.843/.839/.659,.945/.941/.918,.945/.941/.918,.945/.941/.918,.973/.945/.78,.843/.839/.659,.843/.839/.659,.843/.839/.659,.843/.839/.659,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.973/.945/.78,.843/.839/.659,.843/.839/.659,.843/.839/.659,.843/.839/.659,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.843/.839/.659,.843/.839/.659,.843/.839/.659,.945/.941/.918,.945/.941/.918,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.843/.839/.659,.843/.839/.659,.945/.941/.918,.945/.941/.918,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918}%
-\def\pgfPT@backColorsScheme@Jmol{1/1/1,.851/1/1,.8/.502/1,.761/1/0,1/.71/.71,.565/.565/.565,.188/.314/.973,1/.051/.051,.565/.878/.314,.702/.89/.961,.671/.361/.949,.541/1/0,.749/.651/.651,.941/.784/.627,1/.502/0,1/1/.188,.122/.941/.122,.502/.82/.89,.561/.251/.831,.239/1/0,.902/.902/.902,.749/.761/.78,.651/.651/.671,.541/.6/.78,.612/.478/.78,.878/.4/.2,.941/.565/.627,.314/.816/.314,.784/.502/.2,.49/.502/.69,.761/.561/.561,.4/.561/.561,.741/.502/.89,1/.631/0,.651/.161/.161,.361/.722/.82,.439/.18/.69,0/1/0,.58/1/1,.58/.878/.878,.451/.761/.788,.329/.71/.71,.231/.62/.62,.141/.561/.561,.039/.49/.549,0/.412/.522,.753/.753/.753,1/.851/.561,.651/.459/.451,.4/.502/.502,.62/.388/.71,.831/.478/0,.58/0/.58,.259/.62/.69,.341/.09/.561,0/.788/0,.439/.831/1,1/1/.78,.851/1/.78,.78/1/.78,.639/1/.78,.561/1/.78,.38/1/.78,.271/1/.78,.188/1/.78,.122/1/.78,0/1/.612,0/.902/.459,0/.831/.322,0/.749/.22,0/.671/.141,.302/.761/1,.302/.651/1,.129/.58/.839,.149/.49/.671,.149/.4/.588,.09/.329/.529,.816/.816/.878,1/.82/.137,.722/.722/.816,.651/.329/.302,.341/.349/.38,.62/.31/.71,.671/.361/0,.459/.31/.271,.259/.51/.588,.259/0/.4,0/.49/0,.439/.671/.98,0/.729/1,0/.631/1,0/.561/1,0/.502/1,0/.42/1,.329/.361/.949,.471/.361/.89,.541/.31/.89,.631/.212/.831,.702/.122/.831,.702/.122/.729,.702/.051/.651,.741/.051/.529,.78/0/.4,.8/0/.349,.82/0/.31,.851/0/.271,.878/0/.22,.902/0/.18,.922/0/.149,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1}%
-\def\pgfPT@backColorsScheme@CPK{1/1/1,0/1/1,.467/0/1,0/.467/0,1/.667/.467,.133/.133/.133,.133/.2/1,1/.133/0,.122/.941/.122,0/1/1,.467/0/1,0/.467/0,.867/.467/1,.867/.467/1,1/.6/0,1/.898/.133,.122/.941/.122,0/1/1,.467/0/1,0/.467/0,1/.667/.467,.6/.6/.6,1/.667/.467,1/.667/.467,1/.667/.467,.867/.467/0,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.6/.133/0,0/1/1,.467/0/1,0/.467/0,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.4/0/.733,0/1/1,.467/0/1,0/.467/0,1/.667/.467,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.467/0/1,0/.467/0,1/.667/.467,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1}%
-\def\pgfPT@backColorsScheme@Rasmol{1/1/1,1/.753/.796,.698/.133/.133,1/.078/.576,0/1/0,.784/.784/.784,.561/.561/1,.941/0/0,.855/.647/.125,1/.078/.576,0/0/1,.133/.545/.133,.502/.502/.565,.855/.647/.125,1/.647/0,1/.784/.196,0/1/0,1/.078/.576,1/.078/.576,.502/.502/.565,1/.078/.576,.502/.502/.565,1/.078/.576,.502/.502/.565,.502/.502/.565,1/.647/0,1/.078/.576,.647/.165/.165,.647/.165/.165,.647/.165/.165,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,.647/.165/.165,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,.502/.502/.565,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,.627/.125/.941,1/.078/.576,1/.078/.576,1/.647/0,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,.855/.647/.125,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1}%
-\def\pgfPT@backColorsScheme@RasmolNew{1/1/1,1/.753/.796,.698/.129/.129,1/.078/.58,0/1/.004,.827/.827/.827,.529/.808/.902,1/0/0,.855/.647/.129,1/.078/.58,0/0/1,.133/.545/.137,.412/.412/.412,.855/.647/.129,1/.667/0,1/1/0,0/1/.004,1/.078/.576,1/.078/.576,.412/.412/.412,1/.078/.58,.412/.412/.412,1/.078/.58,.412/.412/.412,.412/.412/.412,1/.667/0,1/.078/.58,.502/.157/.157,.502/.157/.157,.502/.157/.157,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,.502/.157/.157,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,.412/.412/.412,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,.627/.125/.945,1/.078/.576,1/.078/.576,1/.667/0,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,.855/.647/.129,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576}%
-\def\pgfPT@backColorsScheme@Wikipedia{.941/1/.561,.753/1/1,1/.4/.4,1/.871/.678,.8/.8/.6,.941/1/.561,.941/1/.561,.941/1/.561,.941/1/.561,.753/1/1,1/.4/.4,1/.871/.678,.8/.8/.8,.8/.8/.6,.941/1/.561,.941/1/.561,.941/1/.561,.753/1/1,1/.4/.4,1/.871/.678,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,.8/.8/.8,.8/.8/.6,.8/.8/.6,.941/1/.561,.941/1/.561,.753/1/1,1/.4/.4,1/.871/.678,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,.8/.8/.8,.8/.8/.8,.8/.8/.6,.8/.8/.6,.941/1/.561,.753/1/1,1/.4/.4,1/.871/.678,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,.8/.8/.8,.8/.8/.8,.8/.8/.8,.8/.8/.8,.8/.8/.8,.753/1/1,1/.4/.4,1/.871/.678,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,.91/.91/.91,.91/.91/.91,.91/.91/.91,.91/.91/.91,.91/.91/.91,.91/.91/.91,.91/.91/.91,.91/.91/.91,.91/.91/.91,.91/.91/.91}%
-\def\pgfPT@backColorsScheme@MNM{.91/.839/.659,.91/.839/.659,.886/.886/.847,.886/.886/.847,.878/.816/.753,.91/.839/.659,.91/.839/.659,.91/.839/.659,.91/.839/.659,.91/.839/.659,.886/.886/.847,.886/.886/.847,.886/.886/.847,.878/.816/.753,.91/.839/.659,.91/.839/.659,.91/.839/.659,.91/.839/.659,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.878/.816/.753,.878/.816/.753,.91/.839/.659,.91/.839/.659,.91/.839/.659,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.878/.816/.753,.878/.816/.753,.91/.839/.659,.91/.839/.659,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.91/.839/.659,.91/.839/.659,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847}%
-\def\pgfPT@backColorsScheme@PS{.553/.706/.89,.553/.706/.89,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,.553/.706/.89,.553/.706/.89,.553/.706/.89,.553/.706/.89,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,.553/.706/.89,.553/.706/.89,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,.714/.867/.91,.553/.706/.89,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,.647/.647/.647,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,.553/.706/.89,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,.647/.647/.647,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,.714/.867/.91,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,.553/.706/.89,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647}%
-\def\pgfPT@backColorsScheme@Radio{.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.957/.933/0,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.957/.933/0,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0}%
-\def\pgfPT@backColorsScheme@Blocks{1/.937/.671,1/.937/.671,1/.937/.671,1/.937/.671,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,1/.937/.671,1/.937/.671,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,1/.937/.671,1/.937/.671,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,1/.937/.671,1/.937/.671,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,1/.937/.671,1/.937/.671,.98/.667/.541,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,1/.937/.671,1/.937/.671,.98/.667/.541,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635}%
+\def\pgfPT@backColorsScheme@pgfPTdefault{.769/.812/.961,.678/.733/.925,.871/.89/.875,.922/.886/.71,.8/.878/.859,.706/.871/.827,.612/.859/.796,.42/.89/.769,.671/.608/.749,.588/.655/.89,.871/.89/.875,.922/.886/.71,.8/.878/.859,.706/.871/.827,.612/.859/.796,.42/.89/.769,.671/.608/.749,.588/.655/.89,.871/.89/.875,.922/.886/.71,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.8/.878/.859,.706/.871/.827,.612/.859/.796,.42/.89/.769,.671/.608/.749,.588/.655/.89,.871/.89/.875,.922/.886/.71,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.8/.878/.859,.706/.871/.827,.612/.859/.796,.42/.89/.769,.671/.608/.749,.588/.655/.89,.871/.89/.875,.922/.886/.71,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.631/.6/.435,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.8/.878/.859,.706/.871/.827,.612/.859/.796,.42/.89/.769,.671/.608/.749,.588/.655/.89,.871/.89/.875,.922/.886/.71,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.522/.49/.329,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.62/.604/.522,.78/.788/.741,.78/.788/.741,.78/.788/.741,.78/.788/.741,.78/.788/.741,.78/.788/.741,.78/.788/.741,.78/.788/.741,.78/.788/.741}%
+\def\pgfPT@backColorsScheme@pgfPTSoft{.843/.839/.659,.843/.839/.659,.945/.941/.918,.945/.941/.918,.843/.839/.659,.843/.839/.659,.843/.839/.659,.843/.839/.659,.843/.839/.659,.843/.839/.659,.945/.941/.918,.945/.941/.918,.945/.941/.918,.973/.945/.78,.843/.839/.659,.843/.839/.659,.843/.839/.659,.843/.839/.659,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.973/.945/.78,.843/.839/.659,.843/.839/.659,.843/.839/.659,.843/.839/.659,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.843/.839/.659,.843/.839/.659,.843/.839/.659,.945/.941/.918,.945/.941/.918,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.827/.824/1,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.843/.839/.659,.843/.839/.659,.945/.941/.918,.945/.941/.918,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.71/.706/1,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918,.945/.941/.918}%
+\def\pgfPT@backColorsScheme@pgfPTJmol{1/1/1,.851/1/1,.8/.502/1,.761/1/0,1/.71/.71,.565/.565/.565,.188/.314/.973,1/.051/.051,.565/.878/.314,.702/.89/.961,.671/.361/.949,.541/1/0,.749/.651/.651,.941/.784/.627,1/.502/0,1/1/.188,.122/.941/.122,.502/.82/.89,.561/.251/.831,.239/1/0,.902/.902/.902,.749/.761/.78,.651/.651/.671,.541/.6/.78,.612/.478/.78,.878/.4/.2,.941/.565/.627,.314/.816/.314,.784/.502/.2,.49/.502/.69,.761/.561/.561,.4/.561/.561,.741/.502/.89,1/.631/0,.651/.161/.161,.361/.722/.82,.439/.18/.69,0/1/0,.58/1/1,.58/.878/.878,.451/.761/.788,.329/.71/.71,.231/.62/.62,.141/.561/.561,.039/.49/.549,0/.412/.522,.753/.753/.753,1/.851/.561,.651/.459/.451,.4/.502/.502,.62/.388/.71,.831/.478/0,.58/0/.58,.259/.62/.69,.341/.09/.561,0/.788/0,.439/.831/1,1/1/.78,.851/1/.78,.78/1/.78,.639/1/.78,.561/1/.78,.38/1/.78,.271/1/.78,.188/1/.78,.122/1/.78,0/1/.612,0/.902/.459,0/.831/.322,0/.749/.22,0/.671/.141,.302/.761/1,.302/.651/1,.129/.58/.839,.149/.49/.671,.149/.4/.588,.09/.329/.529,.816/.816/.878,1/.82/.137,.722/.722/.816,.651/.329/.302,.341/.349/.38,.62/.31/.71,.671/.361/0,.459/.31/.271,.259/.51/.588,.259/0/.4,0/.49/0,.439/.671/.98,0/.729/1,0/.631/1,0/.561/1,0/.502/1,0/.42/1,.329/.361/.949,.471/.361/.89,.541/.31/.89,.631/.212/.831,.702/.122/.831,.702/.122/.729,.702/.051/.651,.741/.051/.529,.78/0/.4,.8/0/.349,.82/0/.31,.851/0/.271,.878/0/.22,.902/0/.18,.922/0/.149,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1}%
+\def\pgfPT@backColorsScheme@pgfPTCPK{1/1/1,0/1/1,.467/0/1,0/.467/0,1/.667/.467,.133/.133/.133,.133/.2/1,1/.133/0,.122/.941/.122,0/1/1,.467/0/1,0/.467/0,.867/.467/1,.867/.467/1,1/.6/0,1/.898/.133,.122/.941/.122,0/1/1,.467/0/1,0/.467/0,1/.667/.467,.6/.6/.6,1/.667/.467,1/.667/.467,1/.667/.467,.867/.467/0,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.6/.133/0,0/1/1,.467/0/1,0/.467/0,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.4/0/.733,0/1/1,.467/0/1,0/.467/0,1/.667/.467,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.467/0/1,0/.467/0,1/.667/.467,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,.867/.467/1,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/.667/.467,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1}%
+\def\pgfPT@backColorsScheme@pgfPTRasmol{1/1/1,1/.753/.796,.698/.133/.133,1/.078/.576,0/1/0,.784/.784/.784,.561/.561/1,.941/0/0,.855/.647/.125,1/.078/.576,0/0/1,.133/.545/.133,.502/.502/.565,.855/.647/.125,1/.647/0,1/.784/.196,0/1/0,1/.078/.576,1/.078/.576,.502/.502/.565,1/.078/.576,.502/.502/.565,1/.078/.576,.502/.502/.565,.502/.502/.565,1/.647/0,1/.078/.576,.647/.165/.165,.647/.165/.165,.647/.165/.165,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,.647/.165/.165,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,.502/.502/.565,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,.627/.125/.941,1/.078/.576,1/.078/.576,1/.647/0,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,.855/.647/.125,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1,1/1/1}%
+\def\pgfPT@backColorsScheme@pgfPTRasmolNew{1/1/1,1/.753/.796,.698/.129/.129,1/.078/.58,0/1/.004,.827/.827/.827,.529/.808/.902,1/0/0,.855/.647/.129,1/.078/.58,0/0/1,.133/.545/.137,.412/.412/.412,.855/.647/.129,1/.667/0,1/1/0,0/1/.004,1/.078/.576,1/.078/.576,.412/.412/.412,1/.078/.58,.412/.412/.412,1/.078/.58,.412/.412/.412,.412/.412/.412,1/.667/0,1/.078/.58,.502/.157/.157,.502/.157/.157,.502/.157/.157,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,.502/.157/.157,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,.412/.412/.412,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,.627/.125/.945,1/.078/.576,1/.078/.576,1/.667/0,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,.855/.647/.129,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576,1/.078/.576}%
+\def\pgfPT@backColorsScheme@pgfPTWikipedia{.941/1/.561,.753/1/1,1/.4/.4,1/.871/.678,.8/.8/.6,.941/1/.561,.941/1/.561,.941/1/.561,.941/1/.561,.753/1/1,1/.4/.4,1/.871/.678,.8/.8/.8,.8/.8/.6,.941/1/.561,.941/1/.561,.941/1/.561,.753/1/1,1/.4/.4,1/.871/.678,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,.8/.8/.8,.8/.8/.6,.8/.8/.6,.941/1/.561,.941/1/.561,.753/1/1,1/.4/.4,1/.871/.678,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,.8/.8/.8,.8/.8/.8,.8/.8/.6,.8/.8/.6,.941/1/.561,.753/1/1,1/.4/.4,1/.871/.678,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.749/1,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,.8/.8/.8,.8/.8/.8,.8/.8/.8,.8/.8/.8,.8/.8/.8,.753/1/1,1/.4/.4,1/.871/.678,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.6/.8,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,1/.753/.753,.91/.91/.91,.91/.91/.91,.91/.91/.91,.91/.91/.91,.91/.91/.91,.91/.91/.91,.91/.91/.91,.91/.91/.91,.91/.91/.91,.91/.91/.91}%
+\def\pgfPT@backColorsScheme@pgfPTMNM{.91/.839/.659,.91/.839/.659,.886/.886/.847,.886/.886/.847,.878/.816/.753,.91/.839/.659,.91/.839/.659,.91/.839/.659,.91/.839/.659,.91/.839/.659,.886/.886/.847,.886/.886/.847,.886/.886/.847,.878/.816/.753,.91/.839/.659,.91/.839/.659,.91/.839/.659,.91/.839/.659,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.878/.816/.753,.878/.816/.753,.91/.839/.659,.91/.839/.659,.91/.839/.659,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.878/.816/.753,.878/.816/.753,.91/.839/.659,.91/.839/.659,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.91/.839/.659,.91/.839/.659,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847,.886/.886/.847}%
+\def\pgfPT@backColorsScheme@pgfPTPS{.553/.706/.89,.553/.706/.89,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,.553/.706/.89,.553/.706/.89,.553/.706/.89,.553/.706/.89,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,.553/.706/.89,.553/.706/.89,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,.714/.867/.91,.553/.706/.89,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,.647/.647/.647,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,.553/.706/.89,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,.647/.647/.647,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,.714/.867/.91,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,.553/.706/.89,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,1/.878/.718,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647,.647/.647/.647}%
+\def\pgfPT@backColorsScheme@pgfPTRadio{.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.957/.933/0,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.957/.933/0,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.761/.839/.604,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0,.957/.933/0}%
+\def\pgfPT@backColorsScheme@pgfPTBlocks{1/.937/.671,1/.937/.671,1/.937/.671,1/.937/.671,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,1/.937/.671,1/.937/.671,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,1/.937/.671,1/.937/.671,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,1/.937/.671,1/.937/.671,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,1/.937/.671,1/.937/.671,.98/.667/.541,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,1/.937/.671,1/.937/.671,.98/.667/.541,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.757/.835/.914,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.98/.667/.541,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635,.718/.871/.635}%
% user defined color schemes(s): -----------------------------------------------------------------
% \pgfPTnewcolorscheme[<trailing color (default=1/1/1 e.g. white)>]{name}{list} -----
\def\pgfPTnewColorScheme{\@ifnextchar[\pgfPT@newColorScheme@withoptions{\pgfPT@newColorScheme@noptions}}%
\def\pgfPT@newColorScheme@withoptions[#1/#2/#3]#4#5{%
-\expandafter\def\csname pgfPT@backColorsScheme@#4\endcsname{#5,#1/#2/#3}%
+\expandafter\gdef\csname pgfPT@backColorsScheme@#4\endcsname{#5,#1/#2/#3}%
\definecolor{cpgfPTTMP}{rgb}{#1,#2,#3}%
\xglobal\colorlet{cpgfPTTMP}{cpgfPTTMP}%
}%
@@ -36,20 +37,20 @@
\pgfkeys{/pgfPerTable/.cd,%
back color scheme/.get=\pgfPTbcs,%
back color scheme/.store in=\pgfPTbcs,%
-back color scheme/.default=default,%
+back color scheme/.default=pgfPTdefault,%
back color/.get=\pgfPTbcsolid,%
back color/.store in=\pgfPTbcsolid,%
back color/.default=white,%
-csSoft/.style={back color scheme=Soft},%
-csJmol/.style={back color scheme=Jmol},%
-csCPK/.style={back color scheme=CPK},%
-csRasmol/.style={back color scheme=Rasmol},%
-csRasmolNew/.style={back color scheme=RasmolNew},%
-csWikipedia/.style={back color scheme=Wikipedia},%
-csMNM/.style={back color scheme=MNM},%
-csPS/.style={back color scheme=PS},%
-csRadio/.style={back color scheme=Radio},%
-csBlocks/.style={back color scheme=Blocks},%
+csSoft/.style={back color scheme=pgfPTSoft},%
+csJmol/.style={back color scheme=pgfPTJmol},%
+csCPK/.style={back color scheme=pgfPTCPK},%
+csRasmol/.style={back color scheme=pgfPTRasmol},%
+csRasmolNew/.style={back color scheme=pgfPTRasmolNew},%
+csWikipedia/.style={back color scheme=pgfPTWikipedia},%
+csMNM/.style={back color scheme=pgfPTMNM},%
+csPS/.style={back color scheme=pgfPTPS},%
+csRadio/.style={back color scheme=pgfPTRadio},%
+csBlocks/.style={back color scheme=pgfPTBlocks},%
csSolid/.style={back color scheme=solid,back color=#1}%
}% STYLES -> csSoft,csJmol,csCPK,csRasmol,csRasmolNew,csWikipedia,csMNM,csPS,csRadio,csBlocks,csSolid
% setting keys with default values ---------------------------------------------------------------
@@ -59,7 +60,7 @@ csSolid/.style={back color scheme=solid,back color=#1}%
\def\pgfPTcolorSchemeInfo{%
\global\pgfPT@dima=0pt\relax%
\foreach \Z in {1,...,118}{\path (-\pgfPTcellwd,-10pt*\Z) rectangle node[midway,font=\tiny\bfseries] {Z=\Z} ++(\pgfPTcellwd,-10pt);}%
-\foreach \cs in {default,Soft,Jmol,CPK,Rasmol,RasmolNew,Wikipedia,MNM,PS,Radio,Blocks}{%
+\foreach \cs in {pgfPTdefault,pgfPTSoft,pgfPTJmol,pgfPTCPK,pgfPTRasmol,pgfPTRasmolNew,pgfPTWikipedia,pgfPTMNM,pgfPTPS,pgfPTRadio,pgfPTBlocks}{%
\node[below right,text width=\pgfPTcellwd,text centered,font=\tiny,inner xsep=0pt] at (\pgfPT@dima,0pt) {\cs};%
\path (\pgfPTcellwd+\pgfPT@dima,0pt) rectangle node[midway,font=\tiny\bfseries] {(r,g,b)} ++(2*\pgfPTcellwd,-10pt);%
\edef\pgfPT@@colorlist{\csname pgfPT@backColorsScheme@\cs\endcsname}%
diff --git a/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.buildcell.tex b/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.buildcell.tex
index a9a3699c363..7684834830a 100644
--- a/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.buildcell.tex
+++ b/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.buildcell.tex
@@ -38,7 +38,9 @@
\newif\ifpgfPT@dot\pgfPT@dotfalse%
\newif\ifpgfPT@unnamedcell\pgfPT@unnamedcelltrue%
\newdimen\pgfPT@cell@collumnwd\pgfPT@cell@collumnwd=0pt%
+\newdimen\pgfPT@cell@collumnwd@unnamedcell\pgfPT@cell@collumnwd@unnamedcell=0pt%
\newdimen\pgfPT@cell@lineht\pgfPT@cell@lineht=0pt%
+\newdimen\pgfPT@cell@lineht@unnamedcell\pgfPT@cell@lineht@unnamedcell=0pt%
\newdimen\pgfPT@tmpx\pgfPT@tmpx=0pt%
\newdimen\pgfPT@tmpy\pgfPT@tmpy=0pt%
\newdimen\pgfPT@tmpwd\pgfPT@tmpwd=0pt%
@@ -47,10 +49,10 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\def\pgfPTbuildcellstyle#1(#2,#3)[#4]{\pgfPT@unnamedcellfalse\relax%
\pgfPTbuildcell(#2,#3)[#4]%
-\expandafter\edef\csname pgfPT@cellcontents@#1\endcsname{\pgfPT@cellcontents}%
-\expandafter\edef\csname ppfPT@thebuildcellcom@#1\endcsname{\textbackslash pgfPTbuildcell(\detokenize{#2},\detokenize{#3})\%\par[\detokenize{#4}]}%
-\expandafter\edef\csname pgfPT@nlinhas@#1\endcsname{#2}%
-\expandafter\edef\csname pgfPT@ncolunas@#1\endcsname{#3}%
+\expandafter\xdef\csname pgfPT@cellcontents@#1\endcsname{\pgfPT@cellcontents}%
+\expandafter\xdef\csname ppfPT@thebuildcellcom@#1\endcsname{\textbackslash pgfPTbuildcell(\detokenize{#2},\detokenize{#3})\%\par[\detokenize{#4}]}%
+\expandafter\xdef\csname pgfPT@nlinhas@#1\endcsname{#2}%
+\expandafter\xdef\csname pgfPT@ncolunas@#1\endcsname{#3}%
\pgfPT@unnamedcelltrue\relax%
}%
\def\pgfPT@builtincellstyle#1(#2,#3)[#4]{\pgfPT@unnamedcellfalse\relax%
@@ -66,7 +68,8 @@
% \pgfPTbuildcell(<lines>,<columns>)[<entries>]
%
\def\pgfPTbuildcell(#1,#2)[#3]{%
-\ifpgfPT@unnamedcell\gdef\ppfPT@thebuildcellcom{\textbackslash pgfPTbuildcell(\detokenize{#1},\detokenize{#2})\%\par[\detokenize{#3}]}\fi%
+\ifpgfPT@unnamedcell\gdef\pgfPT@numlinhas@unnamedcell{#1}\gdef\pgfPT@numcolunas@unnamedcell{#2}%
+\gdef\ppfPT@thebuildcellcom{\textbackslash pgfPTbuildcell(\detokenize{#1},\detokenize{#2})\%\par[\detokenize{#3}]}\fi%
\gdef\pgfPT@numlinhas{#1}\gdef\pgfPT@numcolunas{#2}%
\pgfPT@cellcontentssize=0%
\xdef\pgfPT@cellcontents{}% vanishes list contents
@@ -74,6 +77,10 @@
\pgfmathsetlength{\pgfPT@cell@lineht}{\pgfPTcellht/#1}%
\global\pgfPT@cell@lineht=\pgfPT@cell@lineht%
\global\pgfPT@cell@collumnwd=\pgfPT@cell@collumnwd%
+\ifpgfPT@unnamedcell%
+\global\pgfPT@cell@lineht@unnamedcell=\pgfPT@cell@lineht%
+\global\pgfPT@cell@collumnwd@unnamedcell=\pgfPT@cell@collumnwd%
+\fi%
\expandafter\pgfPTg@bblespaces#3\relax%
\@for\@tmp:=\pgfPT@listn@spaces\do{\expandafter\pgfPT@buildcellcontents\@tmp\relax}%
\ifpgfPT@unnamedcell\global\let\pgfPT@cellcontents@unnamed\pgfPT@cellcontents\relax\fi%
@@ -186,7 +193,7 @@
\@for\pgfPT@tmp:=\pgfPT@builtincells@names\do{\edef\pgfPT@tempb{\pgfPT@tmp}\ifx\pgfPT@tempa\pgfPT@tempb\relax\def\pgfPT@builtin{1}\fi}%
\ifnum\pgfPT@builtin=1\relax\textit{Built-in style}\else\textit{User style}\fi\ \textbf{#2}\relax%
\if\pgfPT@preview@cellcontents\@empty\relax%
-\textit{ doesn't exist!}%
+\textit{ doesn't exist!} (\pgfPT@preview@cellcontents)%
\else%
\edef\pgfPT@numlinhas{\csname pgfPT@nlinhas@#2\endcsname}%
\edef\pgfPT@numcolunas{\csname pgfPT@ncolunas@#2\endcsname}%
@@ -204,6 +211,8 @@
\\ [2pt]The build command:\\ \textcolor{green!70!black}{\footnotesize\ppfPT@thebuildcellcom}\\ %
\else\textbf{Using the last cell built}%
\edef\pgfPT@preview@cellcontents{\csname pgfPT@cellcontents@unnamed\endcsname}%
+\let\pgfPT@numlinhas\pgfPT@numlinhas@unnamedcell\let\pgfPT@numcolunas\pgfPT@numcolunas@unnamedcell%
+\let\pgfPT@cell@lineht\pgfPT@cell@lineht@unnamedcell\let\pgfPT@cell@collumnwd\pgfPT@cell@collumnwd@unnamedcell%
\\ [2pt]The build command:\\ \textcolor{green!70!black}{\footnotesize\ppfPT@thebuildcellcom}\\ %
\fi\fi%
\makebox[\linewidth][c]{%
@@ -354,7 +363,7 @@ at (-.5*\pgfPT@cell@collumnwd+\pgfPT@cell@collumnwd*\coluna,\pgfPT@cell@lineht)
% wd -> \pgfPT@<what>@wd
% ht -> \pgfPT@<what>@ht
% and turning the if<what> to true
-% what -> \@pgfPT@<what>rtue
+% what -> \@pgfPT@<what>true
\ifdim\pgfPTcellwd=34pt\relax%
\xdef\pgfPT@loadcell@scaleX{1}%
\else%
diff --git a/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.data.tex b/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.data.tex
index 62d62e0f898..0a87ee38dda 100644
--- a/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.data.tex
+++ b/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.data.tex
@@ -142,122 +142,122 @@
}%
% ############################ THE DATA #############################
%
-\def\pgfPT@data@i{H/CS,1.008/Ar,[1.0078\noexpand\pgfPT@virgula1.0082]/Arstar,0/radio,53/R,32/Rcov,139.9\noexpand\pgfPT@espaco(1-)/Rion,1312/Ei,2.2/eneg,72.77/eaff,\noexpand\pgfPT@pm1/O,13.99/Tmelt,-259.16/TmeltC,20.271/Tboil,-252.879/TboilC,1/eDist,::1s+1/eConfign,::1s+1/eConfignl,0.08988/d,28.836/Cp,0.1805/kT,hex/ls,470/lsa,470/lsb,340/lsc,0.72/lsca,1766/DiscY,21/DiscC,1/spectra,gasoso/cor}%
-\def\pgfPT@data@ii{He/CS,4.0026/Ar,4.0026/Arstar,0/radio,31/R,46/Rcov,---/Rion,2372.3/Ei,---/eneg,0/eaff,---/O,---/Tmelt,---/TmeltC,4.222/Tboil,-268.928/TboilC,2/eDist,::1s+2/eConfign,::1s+2/eConfignl,0.1786/d,20.786/Cp,0.1513/kT,fcc/ls,424.4/lsa,/lsb,/lsc,/lsca,1895/DiscY,19/DiscC,1/spectra,gasoso/cor}%
-\def\pgfPT@data@iii{Li/CS,6.94/Ar,[6.938\noexpand\pgfPT@virgula6.997] /Arstar,0/radio,167/R,133/Rcov,76\noexpand\pgfPT@espaco(1+)/Rion,520.2/Ei,0.98/eneg,59.63/eaff,+1/O,453.65/Tmelt,180.5/TmeltC,1603/Tboil,1330/TboilC,2\noexpand\pgfPTeDistsep1/eDist,[He]::2s+1/eConfign,[He]::2s+1/eConfignl,534/d,24.86/Cp,84.8/kT,bcc/ls,350.93/lsa,/lsb,/lsc,/lsca,1817/DiscY,18/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@iv{Be/CS,9.0122/Ar,9.0122/Arstar,0/radio,112/R,10/Rcov,45\noexpand\pgfPT@espaco(2+)/Rion,899.5/Ei,1.57/eneg,0/eaff,+2/O,1560/Tmelt,1287/TmeltC,2742/Tboil,2469/TboilC,2\noexpand\pgfPTeDistsep2/eDist,[He]::2s+2/eConfign,[He]::2s+2/eConfignl,1850/d,16.443/Cp,200/kT,hcp/ls,228.56/lsa,/lsb,358.32/lsc,1.57/lsca,1798/DiscY,5/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@v{B/CS,10.81/Ar,[10.806\noexpand\pgfPT@virgula10.821] /Arstar,0/radio,87/R,85/Rcov,27\noexpand\pgfPT@espaco(3+)/Rion,800.6/Ei,2.04/eneg,26.99/eaff,+3/O,2349/Tmelt,2076/TmeltC,4200/Tboil,3927/TboilC,2\noexpand\pgfPTeDistsep3/eDist,[He]::2s+2\noexpand\pgfPT@virgula2p+1/eConfign,[He]::2s+2\noexpand\pgfPT@virgula2p+1/eConfignl,2340/d,11.087/Cp,27.4/kT,rho/ls,505.66/lsa,/lsb,/lsc,/lsca,1808/DiscY,7/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@vi{C/CS,12.011/Ar,[12.009\noexpand\pgfPT@virgula12.012]/Arstar,0/radio,67/R,75/Rcov,16\noexpand\pgfPT@espaco(4+)/Rion,1086.5/Ei,2.55/eneg,121.78/eaff,0\noexpand\pgfPT@virgula\noexpand\pgfPT@pm1\noexpand\pgfPT@virgula\noexpand\pgfPT@pm2\noexpand\pgfPT@virgula\noexpand\pgfPT@pm3\noexpand\pgfPT@virgula\noexpand\pgfPT@pm4/O,3823/Tmelt,3550/TmeltC,4300/Tboil,4027/TboilC,2\noexpand\pgfPTeDistsep4/eDist,[He]::2s+2\noexpand\pgfPT@virgula2p+2/eConfign,[He]::2s+2\noexpand\pgfPT@virgula2p+2/eConfignl,2267/d,8.517/Cp,140/kT,hex/ls,246.12/lsa,/lsb,670.79/lsc,2.73/lsca,3750\noexpand\pgfPT@scaletxt{\pgfPTDiscYBCscale}{\noexpand\pgfPT@espaco\noexpand\pgfPT@BClabel}/DiscY,12/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@vii{N/CS,14.007/Ar,[14.006\noexpand\pgfPT@virgula14.008]/Arstar,0/radio,56/R,71/Rcov,146\noexpand\pgfPT@espaco(3-)\noexpand\pgfPT@virgula16\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula13\noexpand\pgfPT@espaco(5+)/Rion,1402.3/Ei,3.04/eneg,0/eaff,\noexpand\pgfPT@pm3\noexpand\pgfPT@virgula+4\noexpand\pgfPT@virgula+5/O,63.15/Tmelt,-210/TmeltC,77.355/Tboil,-195.795/TboilC,2\noexpand\pgfPTeDistsep5/eDist,[He]::2s+2\noexpand\pgfPT@virgula2p+3/eConfign,[He]::2s+2\noexpand\pgfPT@virgula2p+3/eConfignl,1.251/d,29.124/Cp,0.02583/kT,hex/ls,386.1/lsa,386.1/lsb,626.5/lsc,1.62/lsca,1772/DiscY,21/DiscC,1/spectra,gasoso/cor}%
-\def\pgfPT@data@viii{O/CS,15.999/Ar,[15.999\noexpand\pgfPT@virgula16.000]/Arstar,0/radio,48/R,63/Rcov,140\noexpand\pgfPT@espaco(2-)/Rion,1313.9/Ei,3.44/eneg,140.98/eaff,--2/O,54.36/Tmelt,-218.79/TmeltC,90.188/Tboil,-182.962/TboilC,2\noexpand\pgfPTeDistsep6/eDist,[He]::2s+2\noexpand\pgfPT@virgula2p+4/eConfign,[He]::2s+2\noexpand\pgfPT@virgula2p+4/eConfignl,1.429/d,29.378/Cp,0.02658/kT,mono/ls,540.3/lsa,342.9/lsb,508.6/lsc,0.94/lsca,1771/DiscY,19/DiscC,1/spectra,gasoso/cor}%
-\def\pgfPT@data@ix{F/CS,18.998/Ar,18.998/Arstar,0/radio,42/R,64/Rcov,133\noexpand\pgfPT@espaco(1-)/Rion,1681/Ei,3.98/eneg,328.16/eaff,--1/O,53.48/Tmelt,-219.67/TmeltC,85.04/Tboil,-188.11/TboilC,2\noexpand\pgfPTeDistsep7/eDist,[He]::2s+2\noexpand\pgfPT@virgula2p+5/eConfign,[He]::2s+2\noexpand\pgfPT@virgula2p+5/eConfignl,1.7/d,31.304/Cp,0.0277/kT,mono/ls,550/lsa,328/lsb,728/lsc,1.32/lsca,1886/DiscY,5/DiscC,1/spectra,gasoso/cor}%
-\def\pgfPT@data@x{Ne/CS,20.18/Ar,20.18/Arstar,0/radio,38/R,67/Rcov,---/Rion,2080.7/Ei,---/eneg,0/eaff,---/O,24.56/Tmelt,-248.59/TmeltC,27.104/Tboil,-246.046/TboilC,2\noexpand\pgfPTeDistsep8/eDist,[He]::2s+2\noexpand\pgfPT@virgula2p+6/eConfign,[He]::2s+2\noexpand\pgfPT@virgula2p+6/eConfignl,0.9002/d,20.786/Cp,0.0491/kT,fcc/ls,442.9/lsa,/lsb,/lsc,/lsca,1898/DiscY,21/DiscC,1/spectra,gasoso/cor}%
-\def\pgfPT@data@xi{Na/CS,22.99/Ar,22.99/Arstar,0/radio,190/R,155/Rcov,102\noexpand\pgfPT@espaco(1+)/Rion,495.8/Ei,0.93/eneg,52.87/eaff,+1/O,370.944/Tmelt,97.794/TmeltC,1156.09/Tboil,882.94/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep1/eDist,[Ne]::3s+1/eConfign,[Ne]::3s+1/eConfignl,968/d,28.23/Cp,142/kT,bcc/ls,429.06/lsa,/lsb,/lsc,/lsca,1807/DiscY,21/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xii{Mg/CS,24.305/Ar,[24.304\noexpand\pgfPT@virgula24.307] /Arstar,0/radio,145/R,139/Rcov,72\noexpand\pgfPT@espaco(2+)/Rion,737.7/Ei,1.31/eneg,0/eaff,+2/O,923/Tmelt,650/TmeltC,1363/Tboil,1090/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Ne]::3s+2/eConfign,[Ne]::3s+2/eConfignl,1738/d,24.869/Cp,156/kT,hcp/ls,320.94/lsa,/lsb,521.05/lsc,1.62/lsca,1755/DiscY,21/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xiii{Al/CS,26.982/Ar,26.982/Arstar,0/radio,118/R,126/Rcov,53.5\noexpand\pgfPT@espaco(3+)/Rion,577.5/Ei,1.61/eneg,41.76/eaff,+3/O,933.47/Tmelt,660.32/TmeltC,2743/Tboil,2470/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep3/eDist,[Ne]::3s+2\noexpand\pgfPT@virgula3p+1/eConfign,[Ne]::3s+2\noexpand\pgfPT@virgula3p+1/eConfignl,2700/d,24.2/Cp,237/kT,fcc/ls,404.95/lsa,/lsb,/lsc,/lsca,1824/DiscY,2/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xiv{Si/CS,28.085/Ar,[28.084\noexpand\pgfPT@virgula28.086]/Arstar,0/radio,111/R,116/Rcov,40\noexpand\pgfPT@espaco(4+)/Rion,786.5/Ei,1.9/eneg,134.07/eaff,\noexpand\pgfPT@pm4/O,1687/Tmelt,1414/TmeltC,3538/Tboil,3265/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep4/eDist,[Ne]::3s+2\noexpand\pgfPT@virgula3p+2/eConfign,[Ne]::3s+2\noexpand\pgfPT@virgula3p+2/eConfignl,2330/d,19.789/Cp,149/kT,dia/ls,543.095/lsa,/lsb,/lsc,/lsca,1823/DiscY,18/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xv{P/CS,30.974/Ar,30.974/Arstar,0/radio,98/R,111/Rcov,212\noexpand\pgfPT@espaco(3-)\noexpand\pgfPT@virgula44\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula38\noexpand\pgfPT@espaco(5+)/Rion,1011.8/Ei,2.19/eneg,72.04/eaff,\noexpand\pgfPT@pm3\noexpand\pgfPT@virgula+5/O,317.3/Tmelt,44.15/TmeltC,550/Tboil,277/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep5/eDist,[Ne]::3s+2\noexpand\pgfPT@virgula3p+3/eConfign,[Ne]::3s+2\noexpand\pgfPT@virgula3p+3/eConfignl,1823/d,23.824/Cp,0.236/kT,tric/ls,1145/lsa,550.3/lsb,1126.1/lsc,0.98/lsca,1669/DiscY,8/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xvi{S/CS,32.06/Ar,[32.059\noexpand\pgfPT@virgula32.076]/Arstar,0/radio,88/R,103/Rcov,184\noexpand\pgfPT@espaco(2-)\noexpand\pgfPT@virgula37\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula29\noexpand\pgfPT@espaco(6+)/Rion,999.6/Ei,2.58/eneg,200.41/eaff,\noexpand\pgfPT@pm2\noexpand\pgfPT@virgula+4\noexpand\pgfPT@virgula+6/O,388.36/Tmelt,115.21/TmeltC,717.8/Tboil,444.6/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep6/eDist,[Ne]::3s+2\noexpand\pgfPT@virgula3p+4/eConfign,[Ne]::3s+2\noexpand\pgfPT@virgula3p+4/eConfignl,1960/d,22.75/Cp,0.205/kT,fcort/ls,1046.5/lsa,1286.6/lsb,2448.6/lsc,2.34/lsca,500\noexpand\pgfPT@scaletxt{\pgfPTDiscYBCscale}{\noexpand\pgfPT@espaco\noexpand\pgfPT@BClabel}/DiscY,12/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xvii{Cl/CS,35.45/Ar,[35.446\noexpand\pgfPT@virgula35.457]/Arstar,0/radio,79/R,99/Rcov,181\noexpand\pgfPT@espaco(1-)\noexpand\pgfPT@virgula12\noexpand\pgfPT@espaco(5+)\noexpand\pgfPT@virgula27\noexpand\pgfPT@espaco(7+)/Rion,1251.2/Ei,3.16/eneg,348.58/eaff,\noexpand\pgfPT@pm1\noexpand\pgfPT@virgula+3\noexpand\pgfPT@virgula+5\noexpand\pgfPT@virgula+7/O,171.6/Tmelt,-101.5/TmeltC,239.11/Tboil,-34.04/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep7/eDist,[Ne]::3s+2\noexpand\pgfPT@virgula3p+5/eConfign,[Ne]::3s+2\noexpand\pgfPT@virgula3p+5/eConfignl,3.2/d,33.949/Cp,0.0089/kT,bcort/ls,622.35/lsa,445.61/lsb,817.85/lsc,1.31/lsca,1774/DiscY,18/DiscC,1/spectra,gasoso/cor}%
-\def\pgfPT@data@xviii{Ar/CS,39.95/Ar,[39.792\noexpand\pgfPT@virgula39.963]/Arstar,0/radio,71/R,96/Rcov,---/Rion,1520.6/Ei,---/eneg,0/eaff,0/O,83.81/Tmelt,-189.34/TmeltC,87.302/Tboil,-185.848/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep8/eDist,[Ne]::3s+2\noexpand\pgfPT@virgula3p+6/eConfign,[Ne]::3s+2\noexpand\pgfPT@virgula3p+6/eConfignl,1.784/d,20.786/Cp,0.01772/kT,fcc/ls,525.6/lsa,/lsb,/lsc,/lsca,1894/DiscY,21/DiscC,1/spectra,gasoso/cor}%
-\def\pgfPT@data@xix{K/CS,39.098/Ar,39.098/Arstar,0/radio,243/R,196/Rcov,138\noexpand\pgfPT@espaco(1+)/Rion,418.8/Ei,0.82/eneg,48.38/eaff,+1/O,336.7/Tmelt,63.5/TmeltC,1032/Tboil,759/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep1/eDist,[Ar]::4s+1/eConfign,[Ar]::4s+1/eConfignl,890/d,29.6/Cp,102.5/kT,bcc/ls,532.8/lsa,/lsb,/lsc,/lsca,1807/DiscY,21/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xx{Ca/CS,40.078/Ar,40.078(4) /Arstar,0/radio,194/R,171/Rcov,100\noexpand\pgfPT@espaco(2+)/Rion,589.8/Ei,1/eneg,2.37/eaff,+2/O,1115/Tmelt,842/TmeltC,1757/Tboil,1484/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Ar]::4s+2/eConfign,[Ar]::4s+2/eConfignl,1550/d,25.929/Cp,201/kT,fcc/ls,558.84/lsa,/lsb,/lsc,/lsca,1808/DiscY,21/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xxi{Sc/CS,44.956/Ar,44.956/Arstar,0/radio,184/R,148/Rcov,74.5\noexpand\pgfPT@espaco(3+)/Rion,633.1/Ei,1.36/eneg,18/eaff,+3/O,1814/Tmelt,1541/TmeltC,3109/Tboil,2836/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Ar]::3d+1\noexpand\pgfPT@virgula4s+2/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+1/eConfignl,2985/d,25.52/Cp,15.8/kT,hcp/ls,330.9/lsa,/lsb,527.33/lsc,1.59/lsca,1879/DiscY,18/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xxii{Ti/CS,47.867/Ar,47.867/Arstar,0/radio,176/R,136/Rcov,86\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula67\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula60.5\noexpand\pgfPT@espaco(4+)/Rion,658.8/Ei,1.54/eneg,7.29/eaff,+2\noexpand\pgfPT@virgula+3\noexpand\pgfPT@virgula+4/O,1941/Tmelt,1668/TmeltC,3560/Tboil,3287/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep10\noexpand\pgfPTeDistsep2/eDist,[Ar]::3d+2\noexpand\pgfPT@virgula4s+2/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+2/eConfignl,4506/d,25.06/Cp,21.9/kT,hcp/ls,295.03/lsa,/lsb,468.31/lsc,1.59/lsca,1791/DiscY,21/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xxiii{V/CS,50.942/Ar,50.942/Arstar,0/radio,171/R,134/Rcov,79\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula64\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula58\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula54\noexpand\pgfPT@espaco(5+)/Rion,650.9/Ei,1.63/eneg,50.91/eaff,+2\noexpand\pgfPT@virgula+3\noexpand\pgfPT@virgula+4\noexpand\pgfPT@virgula+5/O,2183/Tmelt,1910/TmeltC,3680/Tboil,3407/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep11\noexpand\pgfPTeDistsep2/eDist,[Ar]::3d+3\noexpand\pgfPT@virgula4s+2/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+3/eConfignl,6110/d,24.89/Cp,30.7/kT,bcc/ls,302.31/lsa,/lsb,/lsc,/lsca,1830/DiscY,23/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xxiv{Cr/CS,51.996/Ar,51.996/Arstar,0/radio,166/R,122/Rcov,73\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula61.5\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula44\noexpand\pgfPT@espaco(6+)/Rion,652.9/Ei,1.66/eneg,65.21/eaff,+2\noexpand\pgfPT@virgula+3\noexpand\pgfPT@virgula+6/O,2180/Tmelt,1907/TmeltC,2755/Tboil,2482/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep13\noexpand\pgfPTeDistsep1/eDist,[Ar]::3d+5\noexpand\pgfPT@virgula4s+1/eConfign,[Ar]::4s+1\noexpand\pgfPT@virgula3d+5/eConfignl,7150/d,23.35/Cp,93.9/kT,bcc/ls,288.46/lsa,/lsb,/lsc,/lsca,1797/DiscY,5/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xxv{Mn/CS,54.938/Ar,54.938/Arstar,0/radio,161/R,119/Rcov,67\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula58\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula53\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula25.5\noexpand\pgfPT@espaco(6+)\noexpand\pgfPT@virgula46\noexpand\pgfPT@espaco(7+)/Rion,717.3/Ei,1.55/eneg,0/eaff,+2\noexpand\pgfPT@virgula+3\noexpand\pgfPT@virgula+4\noexpand\pgfPT@virgula+6\noexpand\pgfPT@virgula+7/O,1519/Tmelt,1246/TmeltC,2334/Tboil,2061/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep13\noexpand\pgfPTeDistsep2/eDist,[Ar]::3d+5\noexpand\pgfPT@virgula4s+2/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+5/eConfignl,7210/d,26.32/Cp,7.81/kT,bcc/ls,891.39/lsa,/lsb,/lsc,/lsca,1774/DiscY,18/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xxvi{Fe/CS,55.845/Ar,55.845(2)/Arstar,0/radio,156/R,116/Rcov,61\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula55\noexpand\pgfPT@espaco(3+)/Rion,762.5/Ei,1.83/eneg,14.79/eaff,+2\noexpand\pgfPT@virgula+3/O,1811/Tmelt,1538/TmeltC,3134/Tboil,2861/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep14\noexpand\pgfPTeDistsep2/eDist,[Ar]::3d+6\noexpand\pgfPT@virgula4s+2/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+6/eConfignl,7860/d,25.1/Cp,80.4/kT,bcc/ls,286.64/lsa,/lsb,/lsc,/lsca,2000\noexpand\pgfPT@scaletxt{\pgfPTDiscYBCscale}{\noexpand\pgfPT@espaco\noexpand\pgfPT@BClabel}/DiscY,3/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xxvii{Co/CS,58.933/Ar,58.933/Arstar,0/radio,152/R,111/Rcov,65\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula54.5\noexpand\pgfPT@espaco(3+)/Rion,760.4/Ei,1.88/eneg,63.9/eaff,+2\noexpand\pgfPT@virgula+3/O,1768/Tmelt,1495/TmeltC,3200/Tboil,2927/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep15\noexpand\pgfPTeDistsep2/eDist,[Ar]::3d+7\noexpand\pgfPT@virgula4s+2/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+7/eConfignl,8900/d,24.81/Cp,100/kT,hcp/ls,250.71/lsa,/lsb,406.95/lsc,1.62/lsca,1735/DiscY,18/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xxviii{Ni/CS,58.693/Ar,58.693/Arstar,0/radio,149/R,110/Rcov,69\noexpand\pgfPT@espaco(2+)/Rion,737.1/Ei,1.91/eneg,111.65/eaff,+2/O,1728/Tmelt,1455/TmeltC,3003/Tboil,2730/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep16\noexpand\pgfPTeDistsep2/eDist,[Ar]::3d+8\noexpand\pgfPT@virgula4s+2/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+8/eConfignl,8908/d,26.07/Cp,90.9/kT,fcc/ls,352.4/lsa,/lsb,/lsc,/lsca,1751/DiscY,18/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xxix{Cu/CS,63.546/Ar,63.546(3)/Arstar,0/radio,145/R,112/Rcov,77\noexpand\pgfPT@espaco(1+)\noexpand\pgfPT@virgula73\noexpand\pgfPT@espaco(2+)/Rion,745.5/Ei,1.9/eneg,119.24/eaff,+1\noexpand\pgfPT@virgula+2/O,1357.77/Tmelt,1084.62/TmeltC,2835/Tboil,2562/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep1/eDist,[Ar]::3d+10\noexpand\pgfPT@virgula4s+1/eConfign,[Ar]::4s+1\noexpand\pgfPT@virgula3d+10/eConfignl,8960/d,24.44/Cp,401/kT,fcc/ls,361.47/lsa,/lsb,/lsc,/lsca,8000\noexpand\pgfPT@scaletxt{\pgfPTDiscYBCscale}{\noexpand\pgfPT@espaco\noexpand\pgfPT@BClabel}/DiscY,12/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xxx{Zn/CS,65.38/Ar,65.38(2)/Arstar,0/radio,142/R,118/Rcov,74\noexpand\pgfPT@espaco(2+)/Rion,906.4/Ei,1.65/eneg,0/eaff,+2/O,692.68/Tmelt,419.53/TmeltC,1180/Tboil,907/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep2/eDist,[Ar]::3d+10\noexpand\pgfPT@virgula4s+2/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+10/eConfignl,7140/d,25.39/Cp,116/kT,hcp/ls,266.49/lsa,/lsb,494.68/lsc,1.86/lsca,1746/DiscY,8/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xxxi{Ga/CS,69.723/Ar,69.723/Arstar,0/radio,136/R,124/Rcov,62\noexpand\pgfPT@espaco(3+)/Rion,578.8/Ei,1.81/eneg,29.06/eaff,+3/O,302.9146/Tmelt,29.7646/TmeltC,2673/Tboil,2400/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep3/eDist,[Ar]::3d+10\noexpand\pgfPT@virgula4s+2\noexpand\pgfPT@virgula4p+1/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+10\noexpand\pgfPT@virgula4p+1/eConfignl,5910/d,25.86/Cp,40.6/kT,bcort/ls,452.58/lsa,451.86/lsb,765.7/lsc,1.69/lsca,1875/DiscY,5/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xxxii{Ge/CS,72.63/Ar,72.630(8)/Arstar,0/radio,125/R,121/Rcov,73\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula53\noexpand\pgfPT@espaco(4+)/Rion,762/Ei,2.01/eneg,118.94/eaff,+2\noexpand\pgfPT@virgula\noexpand\pgfPT@pm4/O,1211.4/Tmelt,938.25/TmeltC,3106/Tboil,2833/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep4/eDist,[Ar]::3d+10\noexpand\pgfPT@virgula4s+2\noexpand\pgfPT@virgula4p+2/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+10\noexpand\pgfPT@virgula4p+2/eConfignl,5323/d,23.222/Cp,60.2/kT,dia/ls,565.791/lsa,/lsb,/lsc,/lsca,1886/DiscY,8/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xxxiii{As/CS,74.922/Ar,74.922/Arstar,0/radio,114/R,121/Rcov,58\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula46\noexpand\pgfPT@espaco(5+)/Rion,947/Ei,2.18/eneg,77.65/eaff,\noexpand\pgfPT@pm3\noexpand\pgfPT@virgula+5/O,1090/Tmelt,817/TmeltC,887/Tboil,614/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep5/eDist,[Ar]::3d+10\noexpand\pgfPT@virgula4s+2\noexpand\pgfPT@virgula4p+3/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+10\noexpand\pgfPT@virgula4p+3/eConfignl,5727/d,24.64/Cp,50.2/kT,rho/ls,375.98/lsa,375.98/lsb,1054.75/lsc,2.81/lsca,1250/DiscY,12/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xxxiv{Se/CS,78.971/Ar,78.971(8)/Arstar,0/radio,103/R,116/Rcov,198\noexpand\pgfPT@espaco(2-)\noexpand\pgfPT@virgula50\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula42\noexpand\pgfPT@espaco(6+)/Rion,941/Ei,2.55/eneg,194.96/eaff,\noexpand\pgfPT@pm2\noexpand\pgfPT@virgula+4\noexpand\pgfPT@virgula+6/O,494/Tmelt,221/TmeltC,958/Tboil,685/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep6/eDist,[Ar]::3d+10\noexpand\pgfPT@virgula4s+2\noexpand\pgfPT@virgula4p+4/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+10\noexpand\pgfPT@virgula4p+4/eConfignl,4810/d,25.363/Cp,0.519/kT,mono/ls,905.4/lsa,908.3/lsb,1160.1/lsc,1.28/lsca,1817/DiscY,18/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xxxv{Br/CS,79.904/Ar,[79.901\noexpand\pgfPT@virgula79.907]/Arstar,0/radio,94/R,114/Rcov,196\noexpand\pgfPT@espaco(1-)\noexpand\pgfPT@virgula59\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula31\noexpand\pgfPT@espaco(5+)/Rion,1139.9/Ei,2.96/eneg,324.54/eaff,\noexpand\pgfPT@pm1\noexpand\pgfPT@virgula+3\noexpand\pgfPT@virgula+5/O,265.8/Tmelt,-7.3/TmeltC,332/Tboil,58.8/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep7/eDist,[Ar]::3d+10\noexpand\pgfPT@virgula4s+2\noexpand\pgfPT@virgula4p+5/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+10\noexpand\pgfPT@virgula4p+5/eConfignl,3102.8/d,75.69/Cp,0.122/kT,bcort/ls,672.65/lsa,464.51/lsb,870.23/lsc,1.29/lsca,1825/DiscY,5/DiscC,1/spectra,liquido/cor}%
-\def\pgfPT@data@xxxvi{Kr/CS,83.798/Ar,83.798(2)/Arstar,0/radio,88/R,117/Rcov,---/Rion,1350.8/Ei,3/eneg,0/eaff,0/O,115.78/Tmelt,-157.37/TmeltC,119.735/Tboil,-153.415/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8/eDist,[Ar]::3d+10\noexpand\pgfPT@virgula4s+2\noexpand\pgfPT@virgula4p+6/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+10\noexpand\pgfPT@virgula4p+6/eConfignl,3.749/d,20.786/Cp,0.00943/kT,fcc/ls,570.6/lsa,/lsb,/lsc,/lsca,1898/DiscY,21/DiscC,1/spectra,gasoso/cor}%
-\def\pgfPT@data@xxxvii{Rb/CS,85.468/Ar,85.468/Arstar,0/radio,265/R,210/Rcov,152\noexpand\pgfPT@espaco(1+)/Rion,403/Ei,0.82/eneg,46.88/eaff,+1/O,312.45/Tmelt,39.3/TmeltC,961/Tboil,688/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep1/eDist,[Kr]::5s+1/eConfign,[Kr]::5s+1/eConfignl,1532/d,31.06/Cp,58.2/kT,bcc/ls,558.5/lsa,/lsb,/lsc,/lsca,1861/DiscY,8/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xxxviii{Sr/CS,87.62/Ar,87.62/Arstar,0/radio,219/R,185/Rcov,118\noexpand\pgfPT@espaco(2+)/Rion,549.5/Ei,0.95/eneg,5.02/eaff,+2/O,1050/Tmelt,777/TmeltC,1650/Tboil,1382/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Kr]::5s+2/eConfign,[Kr]::5s+2/eConfignl,2640/d,26.4/Cp,35.4/kT,fcc/ls,608.49/lsa,/lsb,/lsc,/lsca,1787/DiscY,21/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xxxix{Y/CS,88.906/Ar,88.906/Arstar,0/radio,212/R,163/Rcov,90\noexpand\pgfPT@espaco(3+)/Rion,600/Ei,1.22/eneg,29.6/eaff,+3/O,1799/Tmelt,1526/TmeltC,3203/Tboil,2930/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Kr]::4d+1\noexpand\pgfPT@virgula5s+2/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+1/eConfignl,4472/d,26.53/Cp,17.2/kT,hcp/ls,364.74/lsa,/lsb,573.06/lsc,1.57/lsca,1794/DiscY,4/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xl{Zr/CS,91.224/Ar,91.224(2)/Arstar,0/radio,206/R,154/Rcov,72\noexpand\pgfPT@espaco(4+)/Rion,640.1/Ei,1.33/eneg,41.81/eaff,+4/O,2128/Tmelt,1855/TmeltC,4650/Tboil,4377/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep10\noexpand\pgfPTeDistsep2/eDist,[Kr]::4d+2\noexpand\pgfPT@virgula5s+2/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+2/eConfignl,6520/d,25.36/Cp,22.6/kT,hcp/ls,323.2/lsa,/lsb,514.7/lsc,1.59/lsca,1789/DiscY,8/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xli{Nb/CS,92.906/Ar,92.906/Arstar,0/radio,198/R,147/Rcov,64\noexpand\pgfPT@espaco(5+)/Rion,652.1/Ei,1.6/eneg,88.52/eaff,+5/O,2750/Tmelt,2477/TmeltC,5017/Tboil,4744/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep12\noexpand\pgfPTeDistsep1/eDist,[Kr]::4d+4\noexpand\pgfPT@virgula5s+1/eConfign,[Kr]::5s+1\noexpand\pgfPT@virgula4d+4/eConfignl,8570/d,24.6/Cp,53.7/kT,bcc/ls,330.04/lsa,/lsb,/lsc,/lsca,1801/DiscY,21/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xlii{Mo/CS,95.95/Ar,95.95/Arstar,0/radio,190/R,138/Rcov,65\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula59\noexpand\pgfPT@espaco(6+)/Rion,684.3/Ei,2.16/eneg,72.1/eaff,+4\noexpand\pgfPT@virgula+6/O,2896/Tmelt,2623/TmeltC,4912/Tboil,4639/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep13\noexpand\pgfPTeDistsep1/eDist,[Kr]::4d+5\noexpand\pgfPT@virgula5s+1/eConfign,[Kr]::5s+1\noexpand\pgfPT@virgula4d+5/eConfignl,10280/d,24.06/Cp,138/kT,bcc/ls,314.69/lsa,/lsb,/lsc,/lsca,1781/DiscY,18/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xliii{Tc/CS,[98]/Ar,/Arstar,1/radio,183/R,128/Rcov,64.5\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula56\noexpand\pgfPT@espaco(7+)/Rion,702/Ei,1.9/eneg,53/eaff,+4\noexpand\pgfPT@virgula+7/O,2430/Tmelt,2157/TmeltC,4538/Tboil,4265/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep13\noexpand\pgfPTeDistsep2/eDist,[Kr]::4d+5\noexpand\pgfPT@virgula5s+2/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+5/eConfignl,11000/d,24.27/Cp,50.6/kT,hcp/ls,273.5/lsa,/lsb,438.8/lsc,1.6/lsca,1937/DiscY,11/DiscC,1/spectra,sintetico/cor}%
-\def\pgfPT@data@xliv{Ru/CS,101.07/Ar,101.07/Arstar,0/radio,178/R,125/Rcov,68\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula62\noexpand\pgfPT@espaco(4+)/Rion,710.2/Ei,2.2/eneg,100.96/eaff,+3\noexpand\pgfPT@virgula+4/O,2607/Tmelt,2334/TmeltC,4423/Tboil,4150/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep15\noexpand\pgfPTeDistsep1/eDist,[Kr]::4d+7\noexpand\pgfPT@virgula5s+1/eConfign,[Kr]::5s+1\noexpand\pgfPT@virgula4d+7/eConfignl,12450/d,24.06/Cp,117/kT,hcp/ls,270.55/lsa,/lsb,428.16/lsc,1.58/lsca,1844/DiscY,15/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xlv{Rh/CS,102.91/Ar,102.91/Arstar,0/radio,173/R,125/Rcov,66.5\noexpand\pgfPT@espaco(3+)/Rion,719.7/Ei,2.28/eneg,110.27/eaff,+3/O,2237/Tmelt,1964/TmeltC,3968/Tboil,3695/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep16\noexpand\pgfPTeDistsep1/eDist,[Kr]::4d+8\noexpand\pgfPT@virgula5s+1/eConfign,[Kr]::5s+1\noexpand\pgfPT@virgula4d+8/eConfignl,12410/d,24.98/Cp,150/kT,fcc/ls,380.34/lsa,/lsb,/lsc,/lsca,1804/DiscY,21/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xlvi{Pd/CS,106.42/Ar,106.42/Arstar,0/radio,169/R,120/Rcov,86\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula61.5\noexpand\pgfPT@espaco(4+)/Rion,804.4/Ei,2.2/eneg,54.24/eaff,0\noexpand\pgfPT@virgula+2\noexpand\pgfPT@virgula+4/O,1828.05/Tmelt,1554.9/TmeltC,3236/Tboil,2963/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18/eDist,[Kr]::4d+10/eConfign,[Kr]::4d+10/eConfignl,12023/d,25.98/Cp,71.8/kT,fcc/ls,389.02/lsa,/lsb,/lsc,/lsca,1802/DiscY,21/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xlvii{Ag/CS,107.87/Ar,107.87/Arstar,0/radio,165/R,128/Rcov,115\noexpand\pgfPT@espaco(1+)/Rion,731/Ei,1.93/eneg,125.86/eaff,+1/O,1234.93/Tmelt,961.78/TmeltC,2483/Tboil,2210/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep1/eDist,[Kr]::4d+10\noexpand\pgfPT@virgula5s+1/eConfign,[Kr]::5s+1\noexpand\pgfPT@virgula4d+10/eConfignl,10490/d,25.35/Cp,429/kT,fcc/ls,408.57/lsa,/lsb,/lsc,/lsca,3000\noexpand\pgfPT@scaletxt{\pgfPTDiscYBCscale}{\noexpand\pgfPT@espaco\noexpand\pgfPT@BClabel}/DiscY,0/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xlviii{Cd/CS,112.41/Ar,112.41/Arstar,0/radio,161/R,136/Rcov,95\noexpand\pgfPT@espaco(2+)/Rion,867.8/Ei,1.69/eneg,0/eaff,+2/O,594.22/Tmelt,321.07/TmeltC,1040/Tboil,767/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep2/eDist,[Kr]::4d+10\noexpand\pgfPT@virgula5s+2/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+10/eConfignl,8650/d,26.02/Cp,96.6/kT,hcp/ls,297.88/lsa,/lsb,561.67/lsc,1.89/lsca,1817/DiscY,8/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xlix{In/CS,114.82/Ar,114.82/Arstar,0/radio,156/R,142/Rcov,80\noexpand\pgfPT@espaco(3+)/Rion,558.3/Ei,1.78/eneg,37.04/eaff,+3/O,429.75/Tmelt,156.6/TmeltC,2345/Tboil,2072/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep3/eDist,[Kr]::4d+10\noexpand\pgfPT@virgula5s+2\noexpand\pgfPT@virgula5p+1/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+10\noexpand\pgfPT@virgula5p+1/eConfignl,7310/d,26.74/Cp,81.8/kT,tetr/ls,325.17/lsa,/lsb,494.59/lsc,1.52/lsca,1863/DiscY,8/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@l{Sn/CS,118.71/Ar,118.71/Arstar,0/radio,145/R,140/Rcov,118\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula69\noexpand\pgfPT@espaco(4+)/Rion,708.6/Ei,1.96/eneg,107.3/eaff,+2\noexpand\pgfPT@virgula\noexpand\pgfPT@pm4/O,505.08/Tmelt,231.93/TmeltC,2875/Tboil,2602/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep4/eDist,[Kr]::4d+10\noexpand\pgfPT@virgula5s+2\noexpand\pgfPT@virgula5p+2/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+10\noexpand\pgfPT@virgula5p+2/eConfignl,7265/d,25.77/Cp,66.8/kT,ctetr/ls,583.1/lsa,/lsb,318.1/lsc,0.55/lsca,3000\noexpand\pgfPT@scaletxt{\pgfPTDiscYBCscale}{\noexpand\pgfPT@espaco\noexpand\pgfPT@BClabel}/DiscY,0/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@li{Sb/CS,121.76/Ar,121.76/Arstar,0/radio,133/R,140/Rcov,76\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula60\noexpand\pgfPT@espaco(5+)/Rion,834/Ei,2.05/eneg,101.06/eaff,\noexpand\pgfPT@pm3\noexpand\pgfPT@virgula+5/O,903.78/Tmelt,630.63/TmeltC,1908/Tboil,1635/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep5/eDist,[Kr]::4d+10\noexpand\pgfPT@virgula5s+2\noexpand\pgfPT@virgula5p+3/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+10\noexpand\pgfPT@virgula5p+3/eConfignl,6697/d,25.23/Cp,24.4/kT,rho/ls,430.7/lsa,/lsb,1127.3/lsc,2.62/lsca,815/DiscY,12/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lii{Te/CS,127.6/Ar,127.60(3)/Arstar,0/radio,123/R,136/Rcov,221\noexpand\pgfPT@espaco(2-)\noexpand\pgfPT@virgula97\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula56\noexpand\pgfPT@espaco(6+)/Rion,869.3/Ei,2.1/eneg,190.16/eaff,\noexpand\pgfPT@pm2\noexpand\pgfPT@virgula+4\noexpand\pgfPT@virgula+6/O,722.66/Tmelt,449.51/TmeltC,1261/Tboil,988/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep6/eDist,[Kr]::4d+10\noexpand\pgfPT@virgula5s+2\noexpand\pgfPT@virgula5p+4/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+10\noexpand\pgfPT@virgula5p+4/eConfignl,6240/d,25.73/Cp,3/kT,rho/ls,445.72/lsa,/lsb,592.9/lsc,1.33/lsca,1782/DiscY,14/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@liii{I/CS,126.9/Ar,126.9/Arstar,0/radio,115/R,133/Rcov,220\noexpand\pgfPT@espaco(1-)\noexpand\pgfPT@virgula95\noexpand\pgfPT@espaco(5+)\noexpand\pgfPT@virgula53\noexpand\pgfPT@espaco(7+)/Rion,1008.4/Ei,2.66/eneg,295.15/eaff,\noexpand\pgfPT@pm1\noexpand\pgfPT@virgula+3\noexpand\pgfPT@virgula+5\noexpand\pgfPT@virgula+7/O,386.85/Tmelt,113.7/TmeltC,457.4/Tboil,184.3/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep7/eDist,[Kr]::4d+10\noexpand\pgfPT@virgula5s+2\noexpand\pgfPT@virgula5p+5/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+10\noexpand\pgfPT@virgula5p+5/eConfignl,4933/d,54.44/Cp,0.449/kT,bcort/ls,726.97/lsa,479.03/lsb,979.42/lsc,1.35/lsca,1811/DiscY,5/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@liv{Xe/CS,131.29/Ar,131.29/Arstar,0/radio,108/R,131/Rcov,---/Rion,1170.4/Ei,2.6/eneg,0/eaff,0/O,161.4/Tmelt,-111.75/TmeltC,165.051/Tboil,-108.099/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8/eDist,[Kr]::4d+10\noexpand\pgfPT@virgula5s+2\noexpand\pgfPT@virgula5p+6/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+10\noexpand\pgfPT@virgula5p+6/eConfignl,5.894/d,20.786/Cp,0.00565/kT,fcc/ls,620.23/lsa,/lsb,/lsc,/lsca,1898/DiscY,21/DiscC,1/spectra,gasoso/cor}%
-\def\pgfPT@data@lv{Cs/CS,132.91/Ar,132.91/Arstar,0/radio,298/R,232/Rcov,167\noexpand\pgfPT@espaco(1+)/Rion,375.7/Ei,0.79/eneg,45.51/eaff,+1/O,301.7/Tmelt,28.5/TmeltC,944/Tboil,671/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep1/eDist,[Xe]::6s+1/eConfign,[Xe]::6s+1/eConfignl,1930/d,32.21/Cp,35.9/kT,bcc/ls,614.1/lsa,/lsb,/lsc,/lsca,1860/DiscY,8/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lvi{Ba/CS,137.33/Ar,137.33/Arstar,0/radio,253/R,196/Rcov,135\noexpand\pgfPT@espaco(2+)/Rion,502.9/Ei,0.89/eneg,13.95/eaff,+2/O,1000/Tmelt,727/TmeltC,1910/Tboil,1637/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::6s+2/eConfign,[Xe]::6s+2/eConfignl,3510/d,28.07/Cp,18.4/kT,bcc/ls,501.9/lsa,/lsb,/lsc,/lsca,1808/DiscY,21/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lvii{La/CS,138.91/Ar,138.91/Arstar,0/radio,226/R,180/Rcov,103.2\noexpand\pgfPT@espaco(3+)/Rion,538.1/Ei,1.1/eneg,53.8/eaff,+3/O,1193/Tmelt,920/TmeltC,3737/Tboil,3464/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Xe]::5d+1\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula5d+1/eConfignl,6162/d,27.11/Cp,13.4/kT,hex/ls,377.2/lsa,/lsb,1214.4/lsc,3.22/lsca,1838/DiscY,18/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lviii{Ce/CS,140.12/Ar,140.12/Arstar,0/radio,210/R,163/Rcov,101\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula87\noexpand\pgfPT@espaco(4+)/Rion,534.4/Ei,1.12/eneg,55/eaff,+3\noexpand\pgfPT@virgula+4/O,1068/Tmelt,795/TmeltC,3716/Tboil,3443/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep19\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+1\noexpand\pgfPT@virgula5d+1\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+1\noexpand\pgfPT@virgula5d+1/eConfignl,6770/d,26.94/Cp,11.3/kT,hex/ls,362/lsa,/lsb,599/lsc,1.65/lsca,1803/DiscY,9/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lix{Pr/CS,140.91/Ar,140.91/Arstar,0/radio,247/R,17/Rcov,99\noexpand\pgfPT@espaco(3+)/Rion,527/Ei,1.13/eneg,10.54/eaff,+3/O,1208/Tmelt,935/TmeltC,3403/Tboil,3130/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep21\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+3\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+3/eConfignl,6770/d,27.2/Cp,12.5/kT,hex/ls,367.21/lsa,/lsb,1183.26/lsc,3.22/lsca,1885/DiscY,1/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lx{Nd/CS,144.24/Ar,144.24/Arstar,0/radio,206/R,17/Rcov,98.3\noexpand\pgfPT@espaco(3+)/Rion,533.1/Ei,1.14/eneg,9.41/eaff,+3/O,1297/Tmelt,1024/TmeltC,3347/Tboil,3074/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep22\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+4\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+4/eConfignl,7010/d,27.45/Cp,16.5/kT,hex/ls,365.82/lsa,/lsb,1179.66/lsc,3.22/lsca,1885/DiscY,1/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxi{Pm/CS,[145]/Ar,[145]/Arstar,1/radio,205/R,173/Rcov,97\noexpand\pgfPT@espaco(3+)/Rion,540/Ei,1.13/eneg,12.45/eaff,+3/O,1315/Tmelt,1042/TmeltC,3273/Tboil,3000/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep23\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+5\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+5/eConfignl,7260/d,---/Cp,17.9/kT,hex/ls,365/lsa,/lsb,1165/lsc,3.19/lsca,1945/DiscY,22/DiscC,1/spectra,sintetico/cor}%
-\def\pgfPT@data@lxii{Sm/CS,150.36/Ar,150.36(2)/Arstar,0/radio,238/R,172/Rcov,95.8\noexpand\pgfPT@espaco(3+)/Rion,544.5/Ei,1.17/eneg,15.63/eaff,+3/O,1345/Tmelt,1072/TmeltC,2173/Tboil,1900/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep24\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+6\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+6/eConfignl,7520/d,29.54/Cp,13.3/kT,rho/ls,362.1/lsa,/lsb,2625/lsc,7.25/lsca,1879/DiscY,5/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxiii{Eu/CS,151.96/Ar,151.96/Arstar,0/radio,231/R,168/Rcov,117\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula94.7\noexpand\pgfPT@espaco(3+)/Rion,547.1/Ei,1.2/eneg,11.2/eaff,+2\noexpand\pgfPT@virgula+3/O,1099/Tmelt,826/TmeltC,1802/Tboil,1529/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep25\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+7\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+7/eConfignl,5244/d,27.66/Cp,13.9/kT,bcc/ls,458.1/lsa,/lsb,/lsc,/lsca,1901/DiscY,5/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxiv{Gd/CS,157.25/Ar,157.25(3)/Arstar,0/radio,233/R,169/Rcov,93.5\noexpand\pgfPT@espaco(3+)/Rion,593.4/Ei,1.2/eneg,13.22/eaff,+3/O,1585/Tmelt,1312/TmeltC,3273/Tboil,3000/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep25\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+7\noexpand\pgfPT@virgula5d+1\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+7\noexpand\pgfPT@virgula5d+1/eConfignl,7900/d,37.03/Cp,10.6/kT,hcp/ls,363.6/lsa,/lsb,578.26/lsc,1.59/lsca,1880/DiscY,20/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxv{Tb/CS,158.93/Ar,158.93/Arstar,0/radio,225/R,168/Rcov,92.3\noexpand\pgfPT@espaco(3+)/Rion,565.8/Ei,1.2/eneg,12.67/eaff,+3/O,1629/Tmelt,1356/TmeltC,3396/Tboil,3123/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep27\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+9\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+9/eConfignl,8230/d,28.91/Cp,11.1/kT,hcp/ls,360.1/lsa,/lsb,569.36/lsc,1.58/lsca,1843/DiscY,18/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxvi{Dy/CS,162.5/Ar,162.5/Arstar,0/radio,228/R,167/Rcov,91.2\noexpand\pgfPT@espaco(3+)/Rion,573/Ei,1.22/eneg,33.96/eaff,+3/O,1680/Tmelt,1407/TmeltC,2840/Tboil,2567/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep28\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+10\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+10/eConfignl,8540/d,27.7/Cp,10.7/kT,hcp/ls,359.3/lsa,/lsb,565.37/lsc,1.57/lsca,1886/DiscY,5/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxvii{Ho/CS,164.93/Ar,164.93/Arstar,0/radio,226/R,166/Rcov,90.1\noexpand\pgfPT@espaco(3+)/Rion,581/Ei,1.23/eneg,32.61/eaff,+3/O,1734/Tmelt,1461/TmeltC,2873/Tboil,2600/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep29\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+11\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+11/eConfignl,8790/d,27.15/Cp,16.2/kT,hcp/ls,357.73/lsa,/lsb,561.58/lsc,1.57/lsca,1878/DiscY,20/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxviii{Er/CS,167.26/Ar,167.26/Arstar,0/radio,226/R,165/Rcov,89\noexpand\pgfPT@espaco(3+)/Rion,589.3/Ei,1.24/eneg,30.1/eaff,+3/O,1802/Tmelt,1529/TmeltC,3141/Tboil,2868/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep30\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+12\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+12/eConfignl,9066/d,28.12/Cp,14.5/kT,hcp/ls,355.88/lsa,/lsb,558.74/lsc,1.57/lsca,1843/DiscY,18/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxix{Tm/CS,168.93/Ar,168.93/Arstar,0/radio,222/R,164/Rcov,88\noexpand\pgfPT@espaco(3+)/Rion,596.7/Ei,1.25/eneg,99/eaff,+3/O,1818/Tmelt,1545/TmeltC,2223/Tboil,1950/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep31\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+13\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+13/eConfignl,9320/d,27.03/Cp,16.9/kT,hcp/ls,353.75/lsa,/lsb,555.46/lsc,1.57/lsca,1879/DiscY,18/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxx{Yb/CS,173.05/Ar,173.05/Arstar,0/radio,222/R,170/Rcov,86.8\noexpand\pgfPT@espaco(3+)/Rion,603.4/Ei,1.1/eneg,0/eaff,+3/O,1097/Tmelt,824/TmeltC,1703/Tboil,1430/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14/eConfignl,6900/d,26.74/Cp,38.5/kT,fcc/ls,548.47/lsa,/lsb,/lsc,/lsca,1878/DiscY,20/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxxi{Lu/CS,174.97/Ar,174.97/Arstar,0/radio,217/R,162/Rcov,86.1\noexpand\pgfPT@espaco(3+)/Rion,523.5/Ei,1.27/eneg,23.04/eaff,+3/O,1925/Tmelt,1652/TmeltC,3675/Tboil,3402/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+1\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+1/eConfignl,9841/d,26.86/Cp,16.4/kT,hcp/ls,350.31/lsa,/lsb,555.09/lsc,1.58/lsca,1906/DiscY,6/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxxii{Hf/CS,178.49/Ar,178.49(2)/Arstar,0/radio,208/R,152/Rcov,71\noexpand\pgfPT@espaco(4+)/Rion,658.5/Ei,1.3/eneg,17.18/eaff,+4/O,2506/Tmelt,2233/TmeltC,4876/Tboil,4603/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep10\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+2\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+2/eConfignl,13310/d,25.73/Cp,23/kT,hcp/ls,319.64/lsa,/lsb,505.11/lsc,1.58/lsca,1922/DiscY,2/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxxiii{Ta/CS,180.95/Ar,180.95/Arstar,0/radio,200/R,146/Rcov,64\noexpand\pgfPT@espaco(5+)/Rion,761/Ei,1.5/eneg,31/eaff,+5/O,3290/Tmelt,3017/TmeltC,5731/Tboil,5458/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep11\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+3\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+3/eConfignl,16690/d,25.36/Cp,57.5/kT,bcc/ls,330.26/lsa,/lsb,/lsc,/lsca,1802/DiscY,18/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxxiv{W/CS,183.84/Ar,183.84/Arstar,0/radio,193/R,137/Rcov,66\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula60\noexpand\pgfPT@espaco(6+)/Rion,770/Ei,2.36/eneg,78.76/eaff,+4\noexpand\pgfPT@virgula+6/O,3695/Tmelt,3422/TmeltC,6203/Tboil,5930/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep12\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+4\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+4/eConfignl,19250/d,24.27/Cp,173/kT,bcc/ls,316.52/lsa,/lsb,/lsc,/lsca,1783/DiscY,17/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxxv{Re/CS,186.21/Ar,186.21/Arstar,0/radio,188/R,131/Rcov,63\noexpand\pgfPT@espaco(4+)/Rion,760/Ei,1.9/eneg,5.83/eaff,+4/O,3459/Tmelt,3186/TmeltC,5869/Tboil,5596/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep13\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+5\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+5/eConfignl,21020/d,25.48/Cp,48/kT,hcp/ls,276.1/lsa,/lsb,445.8/lsc,1.62/lsca,1925/DiscY,8/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxxvi{Os/CS,190.23/Ar,190.23(3)/Arstar,0/radio,185/R,129/Rcov,63\noexpand\pgfPT@espaco(4+)/Rion,840/Ei,2.2/eneg,103.99/eaff,+4/O,3306/Tmelt,3033/TmeltC,5285/Tboil,5012/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep14\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+6\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+6/eConfignl,22590/d,24.7/Cp,87.6/kT,hcp/ls,273.43/lsa,/lsb,431.73/lsc,1.58/lsca,1803/DiscY,21/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxxvii{Ir/CS,192.22/Ar,192.22/Arstar,0/radio,180/R,122/Rcov,68\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula62.5\noexpand\pgfPT@espaco(4+)/Rion,880/Ei,2.2/eneg,150.91/eaff,+3\noexpand\pgfPT@virgula+4/O,2719/Tmelt,2446/TmeltC,4403/Tboil,4130/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep15\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+7\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+7/eConfignl,22560/d,25.1/Cp,147/kT,fcc/ls,383.92/lsa,/lsb,/lsc,/lsca,1803/DiscY,7/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxxviii{Pt/CS,195.08/Ar,195.08/Arstar,0/radio,177/R,123/Rcov,80\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula62.5\noexpand\pgfPT@espaco(4+)/Rion,870/Ei,2.28/eneg,205.04/eaff,+2\noexpand\pgfPT@virgula+4/O,2041.4/Tmelt,1768.3/TmeltC,4098/Tboil,3825/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep17\noexpand\pgfPTeDistsep1/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+9\noexpand\pgfPT@virgula6s+1/eConfign,[Xe]::6s+1\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+9/eConfignl,21450/d,25.86/Cp,71.6/kT,fcc/ls,392.35/lsa,/lsb,/lsc,/lsca,1735/DiscY,13/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxxix{Au/CS,196.97/Ar,196.97/Arstar,0/radio,174/R,124/Rcov,137\noexpand\pgfPT@espaco(1+)\noexpand\pgfPT@virgula85\noexpand\pgfPT@espaco(3+)/Rion,890.1/Ei,2.54/eneg,222.75/eaff,+1\noexpand\pgfPT@virgula+3/O,1337.33/Tmelt,1064.18/TmeltC,3243/Tboil,2970/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep1/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6s+1/eConfign,[Xe]::6s+1\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+10/eConfignl,19300/d,25.418/Cp,318/kT,fcc/ls,407.83/lsa,/lsb,/lsc,/lsca,4000\noexpand\pgfPT@scaletxt{\pgfPTDiscYBCscale}{\noexpand\pgfPT@espaco\noexpand\pgfPT@BClabel}/DiscY,100/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxxx{Hg/CS,200.59/Ar,200.59/Arstar,0/radio,171/R,133/Rcov,119\noexpand\pgfPT@espaco(1+)\noexpand\pgfPT@virgula102\noexpand\pgfPT@espaco(2+)/Rion,1007.1/Ei,2/eneg,0/eaff,+1\noexpand\pgfPT@virgula+2/O,234.32/Tmelt,-38.83/TmeltC,629.88/Tboil,356.73/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+10/eConfignl,13534/d,27.983/Cp,8.3/kT,rho/ls,300.9/lsa,/lsb,/lsc,/lsca,1500\noexpand\pgfPT@scaletxt{\pgfPTDiscYBCscale}{\noexpand\pgfPT@espaco\noexpand\pgfPT@BClabel}/DiscY,3/DiscC,1/spectra,liquido/cor}%
-\def\pgfPT@data@lxxxi{Tl/CS,204.38/Ar,[204.38\noexpand\pgfPT@virgula204.39]/Arstar,0/radio,156/R,144/Rcov,150\noexpand\pgfPT@espaco(1+)\noexpand\pgfPT@virgula88.5\noexpand\pgfPT@espaco(3+)/Rion,589.4/Ei,1.62/eneg,30.88/eaff,+1\noexpand\pgfPT@virgula+3/O,577/Tmelt,304/TmeltC,1746/Tboil,1473/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep3/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6s+2\noexpand\pgfPT@virgula6p+1/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6p+1/eConfignl,11850/d,26.32/Cp,46.1/kT,hcp/ls,345.66/lsa,/lsb,552.48/lsc,1.6/lsca,1861/DiscY,21/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxxxii{Pb/CS,207.2/Ar,207.2/Arstar,0/radio,154/R,144/Rcov,119\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula77.5\noexpand\pgfPT@espaco(4+)/Rion,715.6/Ei,1.87/eneg,34.42/eaff,+2\noexpand\pgfPT@virgula+4/O,600.61/Tmelt,327.46/TmeltC,2022/Tboil,1749/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep4/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6s+2\noexpand\pgfPT@virgula6p+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6p+2/eConfignl,11340/d,26.65/Cp,35.3/kT,fcc/ls,495.02/lsa,/lsb,/lsc,/lsca,3800\noexpand\pgfPT@scaletxt{\pgfPTDiscYBCscale}{\noexpand\pgfPT@espaco\noexpand\pgfPT@BClabel}/DiscY,3/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxxxiii{Bi/CS,208.98/Ar,208.98/Arstar,0/radio,143/R,151/Rcov,103\noexpand\pgfPT@espaco(3+)/Rion,703/Ei,2.02/eneg,90.92/eaff,+3/O,544.7/Tmelt,271.5/TmeltC,1837/Tboil,1564/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep5/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6s+2\noexpand\pgfPT@virgula6p+3/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6p+3/eConfignl,9780/d,25.52/Cp,7.97/kT,mono/ls,667.4/lsa,611.7/lsb,330.4/lsc,0.5/lsca,1400/DiscY,12/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxxxiv{Po/CS,[209]/Ar,/Arstar,1/radio,135/R,145/Rcov,223\noexpand\pgfPT@espaco(2-)\noexpand\pgfPT@virgula94\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula67\noexpand\pgfPT@espaco(6+)/Rion,812.1/Ei,2/eneg,136/eaff,\noexpand\pgfPT@pm2\noexpand\pgfPT@virgula+4\noexpand\pgfPT@virgula+5\noexpand\pgfPT@virgula+6/O,527/Tmelt,254/TmeltC,1235/Tboil,962/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep6/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6s+2\noexpand\pgfPT@virgula6p+4/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6p+4/eConfignl,9196/d,26.4/Cp,0/kT,sc/ls,335.9/lsa,/lsb,/lsc,/lsca,1898/DiscY,5/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxxxv{At/CS,[210]/Ar,/Arstar,1/radio,127/R,147/Rcov,62\noexpand\pgfPT@espaco(7+)/Rion,899.003/Ei,2.2/eneg,233.09/eaff,\noexpand\pgfPT@pm1\noexpand\pgfPT@virgula+3\noexpand\pgfPT@virgula+5\noexpand\pgfPT@virgula+7/O,575/Tmelt,302/TmeltC,503/Tboil,230/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep7/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6s+2\noexpand\pgfPT@virgula6p+5/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6p+5/eConfignl,---/d,---/Cp,1.7/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1940/DiscY,22/DiscC,0/spectra,solido/cor}%
-\def\pgfPT@data@lxxxvi{Rn/CS,[222]/Ar,/Arstar,1/radio,120/R,142/Rcov,---/Rion,1037/Ei,2.2/eneg,0/eaff,+2\noexpand\pgfPT@virgula+6/O,202/Tmelt,-71/TmeltC,211.5/Tboil,-61.7/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6s+2\noexpand\pgfPT@virgula6p+6/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6p+6/eConfignl,9.73/d,20.786/Cp,0.00361/kT,fcc/ls,---/lsa,/lsb,/lsc,/lsca,1899/DiscY,8/DiscC,1/spectra,gasoso/cor}%
-\def\pgfPT@data@lxxxvii{Fr/CS,[223]/Ar,/Arstar,1/radio,---/R,---/Rcov,180\noexpand\pgfPT@espaco(1+)/Rion,380/Ei,0.7/eneg,46.89/eaff,+1/O,281/Tmelt,8/TmeltC,890/Tboil,620/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep1/eDist,[Rn]::7s+1/eConfign,[Rn]::7s+1/eConfignl,---/d,31.8/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1939/DiscY,5/DiscC,0/spectra,solido/cor}%
-\def\pgfPT@data@lxxxviii{Ra/CS,[226]/Ar,/Arstar,1/radio,---/R,201/Rcov,148\noexpand\pgfPT@espaco(2+)/Rion,509.3/Ei,0.9/eneg,9.65/eaff,+2/O,973/Tmelt,700/TmeltC,2010/Tboil,1737/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Rn]::7s+2/eConfign,[Rn]::7s+2/eConfignl,5500/d,---/Cp,18.6/kT,bcc/ls,514.8/lsa,/lsb,/lsc,/lsca,1898/DiscY,5/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@lxxxix{Ac/CS,[227]/Ar,/Arstar,1/radio,---/R,186/Rcov,106.5\noexpand\pgfPT@espaco(3+)/Rion,499/Ei,1.1/eneg,33.77/eaff,+3/O,1323/Tmelt,1050/TmeltC,3471/Tboil,3198/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Rn]::6d+1\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula6d+1/eConfignl,10000/d,27.2/Cp,12/kT,fcc/ls,587/lsa,/lsb,/lsc,/lsca,1902/DiscY,5/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xc{Th/CS,232.04/Ar,232.04/Arstar,1/radio,---/R,175/Rcov,/Rion,587/Ei,1.3/eneg,58.63/eaff,+4/O,2115/Tmelt,1842/TmeltC,5061/Tboil,4788/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep10\noexpand\pgfPTeDistsep2/eDist,[Rn]::6d+2\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula6d+2/eConfignl,11700/d,26.23/Cp,54/kT,fcc/ls,508.42/lsa,/lsb,/lsc,/lsca,1829/DiscY,18/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xci{Pa/CS,231.04/Ar,231.04/Arstar,1/radio,---/R,169/Rcov,90\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula78\noexpand\pgfPT@espaco(5+)/Rion,568/Ei,1.5/eneg,53.03/eaff,+5/O,1841/Tmelt,1568/TmeltC,4273/Tboil,4000/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep20\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+2\noexpand\pgfPT@virgula6d+1\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+2\noexpand\pgfPT@virgula6d+1/eConfignl,15370/d,---/Cp,47/kT,tetr/ls,392.5/lsa,/lsb,323.8/lsc,0.82/lsca,1913/DiscY,10/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xcii{U/CS,238.03/Ar,238.03/Arstar,1/radio,---/R,170/Rcov,76\noexpand\pgfPT@espaco(5+)/Rion,597.6/Ei,1.38/eneg,30.39/eaff,+4\noexpand\pgfPT@virgula+6/O,1405.3/Tmelt,1132.2/TmeltC,4404/Tboil,4131/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep21\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+3\noexpand\pgfPT@virgula6d+1\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+3\noexpand\pgfPT@virgula6d+1/eConfignl,19100/d,27.665/Cp,27.5/kT,bcort/ls,285.37/lsa,586.95/lsb,495.48/lsc,1.74/lsca,1789/DiscY,8/DiscC,1/spectra,solido/cor}%
-\def\pgfPT@data@xciii{Np/CS,[237]/Ar,/Arstar,1/radio,---/R,171/Rcov,110\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula87\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula71\noexpand\pgfPT@espaco(7+)/Rion,604.5/Ei,1.36/eneg,45.85/eaff,+5/O,917/Tmelt,644/TmeltC,4273/Tboil,4000/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep22\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+4\noexpand\pgfPT@virgula6d+1\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+4\noexpand\pgfPT@virgula6d+1/eConfignl,20200/d,29.46/Cp,6.3/kT,bcort/ls,666.3/lsa,472.3/lsb,488.7/lsc,0.73/lsca,1940/DiscY,22/DiscC,1/spectra,sintetico/cor}%
-\def\pgfPT@data@xciv{Pu/CS,[244]/Ar,/Arstar,1/radio,---/R,172/Rcov,100\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula74\noexpand\pgfPT@espaco(5+)\noexpand\pgfPT@virgula71\noexpand\pgfPT@espaco(6+)/Rion,584.7/Ei,1.28/eneg,0/eaff,+4/O,912.5/Tmelt,639.4/TmeltC,3501/Tboil,3228/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep24\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+6\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+6/eConfignl,19816/d,35.5/Cp,6.74/kT,mono/ls,618.3/lsa,482.2/lsb,1096.3/lsc,1.77/lsca,1940/DiscY,22/DiscC,1/spectra,sintetico/cor}%
-\def\pgfPT@data@xcv{Am/CS,[243]/Ar,/Arstar,1/radio,---/R,166/Rcov,126\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula97.5\noexpand\pgfPT@espaco(3+)/Rion,578/Ei,1.13/eneg,9.93/eaff,+3/O,1449/Tmelt,1176/TmeltC,2880/Tboil,2607/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep25\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+7\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+7/eConfignl,12000/d,62.7/Cp,10/kT,hex/ls,346.81/lsa,/lsb,1124.1/lsc,3.24/lsca,1944/DiscY,22/DiscC,1/spectra,sintetico/cor}%
-\def\pgfPT@data@xcvi{Cm/CS,[247]/Ar,/Arstar,1/radio,---/R,166/Rcov,97\noexpand\pgfPT@espaco(3+)/Rion,581/Ei,1.28/eneg,27.17/eaff,+3/O,1613/Tmelt,1340/TmeltC,3383/Tboil,3110/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep25\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+7\noexpand\pgfPT@virgula6d+1\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+7\noexpand\pgfPT@virgula6d+1/eConfignl,13510/d,---/Cp,---/kT,hex/ls,349.6/lsa,/lsb,1133.1/lsc,3.24/lsca,1944/DiscY,22/DiscC,1/spectra,sintetico/cor}%
-\def\pgfPT@data@xcvii{Bk/CS,[247]/Ar,/Arstar,1/radio,---/R,---/Rcov,96\noexpand\pgfPT@espaco(3+)/Rion,601/Ei,1.3/eneg,0/eaff,+3/O,1323/Tmelt,1050/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep27\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+9\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+9/eConfignl,14780/d,---/Cp,10/kT,hex/ls,341.6/lsa,/lsb,1106.9/lsc,3.24/lsca,1949/DiscY,22/DiscC,1/spectra,sintetico/cor}%
-\def\pgfPT@data@xcviii{Cf/CS,[251]/Ar,/Arstar,1/radio,---/R,---/Rcov,95\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula82.1\noexpand\pgfPT@espaco(4+)/Rion,608/Ei,1.3/eneg,0/eaff,+3/O,1173/Tmelt,900/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep28\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+10\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+10/eConfignl,15100/d,---/Cp,---/kT,hex/ls,338/lsa,/lsb,1102.5/lsc,3.26/lsca,1950/DiscY,22/DiscC,1/spectra,sintetico/cor}%
-\def\pgfPT@data@xcix{Es/CS,[252]/Ar,/Arstar,1/radio,---/R,---/Rcov,83.5\noexpand\pgfPT@espaco(3+)/Rion,619/Ei,1.3/eneg,0/eaff,+3/O,1133/Tmelt,860/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep29\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+11\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+11/eConfignl,8840/d,---/Cp,---/kT,fcc/ls,575/lsa,/lsb,/lsc,/lsca,1952/DiscY,22/DiscC,1/spectra,sintetico/cor}%
-\def\pgfPT@data@c{Fm/CS,[257]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,627/Ei,1.3/eneg,33.96/eaff,+3/O,1800/Tmelt,1527/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep30\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+12\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+12/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1952/DiscY,22/DiscC,0/spectra,sintetico/cor}%
-\def\pgfPT@data@ci{Md/CS,[258]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,635/Ei,1.3/eneg,93.91/eaff,+3/O,1100/Tmelt,827/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep31\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+13\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+13/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1955/DiscY,22/DiscC,0/spectra,sintetico/cor}%
-\def\pgfPT@data@cii{No/CS,[259]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,642/Ei,1.3/eneg,0/eaff,+2/O,1100/Tmelt,827/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1966/DiscY,24/DiscC,0/spectra,sintetico/cor}%
-\def\pgfPT@data@ciii{Lr/CS,[266]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,470/Ei,1.3/eneg,0/eaff,+3/O,1900/Tmelt,1627/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep3/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula7s+2\noexpand\pgfPT@virgula7p+1/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula7p+1/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1961/DiscY,22/DiscC,0/spectra,sintetico/cor}%
-\def\pgfPT@data@civ{Rf/CS,[267]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-580/Ei,---/eneg,---/eaff,+4/O,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep10\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+2\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+2/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1969/DiscY,16/DiscC,0/spectra,sintetico/cor}%
-\def\pgfPT@data@cv{Db/CS,[268]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-665/Ei,---/eneg,---/eaff,+5/O,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep11\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+3\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+3/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1970/DiscY,16/DiscC,0/spectra,sintetico/cor}%
-\def\pgfPT@data@cvi{Sg/CS,[269]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-757/Ei,---/eneg,---/eaff,+6/O,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep12\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+4\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+4/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1974/DiscY,22/DiscC,0/spectra,sintetico/cor}%
-\def\pgfPT@data@cvii{Bh/CS,[270]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-740/Ei,---/eneg,---/eaff,+7/O,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep13\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+5\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+5/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1981/DiscY,8/DiscC,0/spectra,sintetico/cor}%
-\def\pgfPT@data@cviii{Hs/CS,[270]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-730/Ei,---/eneg,---/eaff,+8/O,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep14\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+6\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+6/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1984/DiscY,8/DiscC,0/spectra,sintetico/cor}%
-\def\pgfPT@data@cix{Mt/CS,[278]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-800/Ei,---/eneg,---/eaff,---/O,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep15\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+7\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+7/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1982/DiscY,8/DiscC,0/spectra,sintetico/cor}%
-\def\pgfPT@data@cx{Ds/CS,[281]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-960/Ei,---/eneg,---/eaff,---/O,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep16\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+8\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+8/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1994/DiscY,8/DiscC,0/spectra,sintetico/cor}%
-\def\pgfPT@data@cxi{Rg/CS,[282]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-1020/Ei,---/eneg,151/eaff,---/O,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep17\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+9\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+9/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1994/DiscY,8/DiscC,0/spectra,sintetico/cor}%
-\def\pgfPT@data@cxii{Cn/CS,[285]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-1155/Ei,---/eneg,---/eaff,+2/O,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+10/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1996/DiscY,8/DiscC,0/spectra,sintetico/cor}%
-\def\pgfPT@data@cxiii{Nh/CS,[286]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-707.2/Ei,---/eneg,66.6/eaff,---/O,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep3/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7s+2\noexpand\pgfPT@virgula7p+1/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7p+1/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,2004/DiscY,16/DiscC,0/spectra,sintetico/cor}%
-\def\pgfPT@data@cxiv{Fl/CS,[289]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-832.2/Ei,---/eneg,---/eaff,---/O,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep4/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7s+2\noexpand\pgfPT@virgula7p+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7p+2/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1998/DiscY,15/DiscC,0/spectra,sintetico/cor}%
-\def\pgfPT@data@cxv{Mc/CS,[290]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-538.3/Ei,---/eneg,35.3/eaff,---/O,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep5/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7s+2\noexpand\pgfPT@virgula7p+3/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7p+3/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,2003/DiscY,16/DiscC,0/spectra,sintetico/cor}%
-\def\pgfPT@data@cxvi{Lv/CS,[293]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-663.9/Ei,---/eneg,74.9/eaff,---/O,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep6/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7s+2\noexpand\pgfPT@virgula7p+4/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7p+4/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,2000/DiscY,15/DiscC,0/spectra,sintetico/cor}%
-\def\pgfPT@data@cxvii{Ts/CS,[294]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-736.9/Ei,---/eneg,165.9/eaff,---/O,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep7/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7s+2\noexpand\pgfPT@virgula7p+5/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7p+5/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,2009/DiscY,100/DiscC,0/spectra,sintetico/cor}%
-\def\pgfPT@data@cxviii{Og/CS,[294]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-860.1/Ei,---/eneg,5.4/eaff,---/O,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7s+2\noexpand\pgfPT@virgula7p+6/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7p+6/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,2002/DiscY,16/DiscC,0/spectra,sintetico/cor}%
+\def\pgfPT@data@i{H/CS,1.008/Ar,[1.0078\noexpand\pgfPT@virgula1.0082]/Arstar,0/radio,53/R,32/Rcov,139.9\noexpand\pgfPT@espaco(1-)/Rion,1312/Ei,2.2/eneg,72.77/eaff,\noexpand\pgfPT@pm1/O,\noexpand\pgfPT@pm I/ORoman,13.99/Tmelt,-259.16/TmeltC,20.271/Tboil,-252.879/TboilC,1/eDist,::1s+1/eConfign,::1s+1/eConfignl,0.08988/d,28.836/Cp,0.1805/kT,hex/ls,470/lsa,470/lsb,340/lsc,0.72/lsca,1766/DiscY,21/DiscC,1/spectra,gasoso/cor}%
+\def\pgfPT@data@ii{He/CS,4.0026/Ar,4.0026/Arstar,0/radio,31/R,46/Rcov,---/Rion,2372.3/Ei,---/eneg,0/eaff,---/O,---/ORoman,---/Tmelt,---/TmeltC,4.222/Tboil,-268.928/TboilC,2/eDist,::1s+2/eConfign,::1s+2/eConfignl,0.1786/d,20.786/Cp,0.1513/kT,fcc/ls,424.4/lsa,/lsb,/lsc,/lsca,1895/DiscY,19/DiscC,1/spectra,gasoso/cor}%
+\def\pgfPT@data@iii{Li/CS,6.94/Ar,[6.938\noexpand\pgfPT@virgula6.997] /Arstar,0/radio,167/R,133/Rcov,76\noexpand\pgfPT@espaco(1+)/Rion,520.2/Ei,0.98/eneg,59.63/eaff,+1/O,+I/ORoman,453.65/Tmelt,180.5/TmeltC,1603/Tboil,1330/TboilC,2\noexpand\pgfPTeDistsep1/eDist,[He]::2s+1/eConfign,[He]::2s+1/eConfignl,534/d,24.86/Cp,84.8/kT,bcc/ls,350.93/lsa,/lsb,/lsc,/lsca,1817/DiscY,18/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@iv{Be/CS,9.0122/Ar,9.0122/Arstar,0/radio,112/R,10/Rcov,45\noexpand\pgfPT@espaco(2+)/Rion,899.5/Ei,1.57/eneg,0/eaff,+2/O,+II/ORoman,1560/Tmelt,1287/TmeltC,2742/Tboil,2469/TboilC,2\noexpand\pgfPTeDistsep2/eDist,[He]::2s+2/eConfign,[He]::2s+2/eConfignl,1850/d,16.443/Cp,200/kT,hcp/ls,228.56/lsa,/lsb,358.32/lsc,1.57/lsca,1798/DiscY,5/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@v{B/CS,10.81/Ar,[10.806\noexpand\pgfPT@virgula10.821] /Arstar,0/radio,87/R,85/Rcov,27\noexpand\pgfPT@espaco(3+)/Rion,800.6/Ei,2.04/eneg,26.99/eaff,+3/O,+III/ORoman,2349/Tmelt,2076/TmeltC,4200/Tboil,3927/TboilC,2\noexpand\pgfPTeDistsep3/eDist,[He]::2s+2\noexpand\pgfPT@virgula2p+1/eConfign,[He]::2s+2\noexpand\pgfPT@virgula2p+1/eConfignl,2340/d,11.087/Cp,27.4/kT,rho/ls,505.66/lsa,/lsb,/lsc,/lsca,1808/DiscY,7/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@vi{C/CS,12.011/Ar,[12.009\noexpand\pgfPT@virgula12.012]/Arstar,0/radio,67/R,75/Rcov,16\noexpand\pgfPT@espaco(4+)/Rion,1086.5/Ei,2.55/eneg,121.78/eaff,0\noexpand\pgfPT@virgula\noexpand\pgfPT@pm1\noexpand\pgfPT@virgula\noexpand\pgfPT@pm2\noexpand\pgfPT@virgula\noexpand\pgfPT@pm3\noexpand\pgfPT@virgula\noexpand\pgfPT@pm4/O,0\noexpand\pgfPT@virgula\noexpand\pgfPT@pm I\noexpand\pgfPT@virgula\noexpand\pgfPT@pm II\noexpand\pgfPT@virgula\noexpand\pgfPT@pm III\noexpand\pgfPT@virgula\noexpand\pgfPT@pm IV/ORoman,3823/Tmelt,3550/TmeltC,4300/Tboil,4027/TboilC,2\noexpand\pgfPTeDistsep4/eDist,[He]::2s+2\noexpand\pgfPT@virgula2p+2/eConfign,[He]::2s+2\noexpand\pgfPT@virgula2p+2/eConfignl,2267/d,8.517/Cp,140/kT,hex/ls,246.12/lsa,/lsb,670.79/lsc,2.73/lsca,3750\noexpand\pgfPT@scaletxt{\pgfPTDiscYBCscale}{\noexpand\pgfPT@espaco\noexpand\pgfPT@BClabel}/DiscY,12/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@vii{N/CS,14.007/Ar,[14.006\noexpand\pgfPT@virgula14.008]/Arstar,0/radio,56/R,71/Rcov,146\noexpand\pgfPT@espaco(3-)\noexpand\pgfPT@virgula16\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula13\noexpand\pgfPT@espaco(5+)/Rion,1402.3/Ei,3.04/eneg,0/eaff,\noexpand\pgfPT@pm3\noexpand\pgfPT@virgula+4\noexpand\pgfPT@virgula+5/O,\noexpand\pgfPT@pm III\noexpand\pgfPT@virgula+IV\noexpand\pgfPT@virgula+V/ORoman,63.15/Tmelt,-210/TmeltC,77.355/Tboil,-195.795/TboilC,2\noexpand\pgfPTeDistsep5/eDist,[He]::2s+2\noexpand\pgfPT@virgula2p+3/eConfign,[He]::2s+2\noexpand\pgfPT@virgula2p+3/eConfignl,1.251/d,29.124/Cp,0.02583/kT,hex/ls,386.1/lsa,386.1/lsb,626.5/lsc,1.62/lsca,1772/DiscY,21/DiscC,1/spectra,gasoso/cor}%
+\def\pgfPT@data@viii{O/CS,15.999/Ar,[15.999\noexpand\pgfPT@virgula16.000]/Arstar,0/radio,48/R,63/Rcov,140\noexpand\pgfPT@espaco(2-)/Rion,1313.9/Ei,3.44/eneg,140.98/eaff,--2/O,--II/ORoman,54.36/Tmelt,-218.79/TmeltC,90.188/Tboil,-182.962/TboilC,2\noexpand\pgfPTeDistsep6/eDist,[He]::2s+2\noexpand\pgfPT@virgula2p+4/eConfign,[He]::2s+2\noexpand\pgfPT@virgula2p+4/eConfignl,1.429/d,29.378/Cp,0.02658/kT,mono/ls,540.3/lsa,342.9/lsb,508.6/lsc,0.94/lsca,1771/DiscY,19/DiscC,1/spectra,gasoso/cor}%
+\def\pgfPT@data@ix{F/CS,18.998/Ar,18.998/Arstar,0/radio,42/R,64/Rcov,133\noexpand\pgfPT@espaco(1-)/Rion,1681/Ei,3.98/eneg,328.16/eaff,--1/O,--I/ORoman,53.48/Tmelt,-219.67/TmeltC,85.04/Tboil,-188.11/TboilC,2\noexpand\pgfPTeDistsep7/eDist,[He]::2s+2\noexpand\pgfPT@virgula2p+5/eConfign,[He]::2s+2\noexpand\pgfPT@virgula2p+5/eConfignl,1.7/d,31.304/Cp,0.0277/kT,mono/ls,550/lsa,328/lsb,728/lsc,1.32/lsca,1886/DiscY,5/DiscC,1/spectra,gasoso/cor}%
+\def\pgfPT@data@x{Ne/CS,20.18/Ar,20.18/Arstar,0/radio,38/R,67/Rcov,---/Rion,2080.7/Ei,---/eneg,0/eaff,---/O,---/ORoman,24.56/Tmelt,-248.59/TmeltC,27.104/Tboil,-246.046/TboilC,2\noexpand\pgfPTeDistsep8/eDist,[He]::2s+2\noexpand\pgfPT@virgula2p+6/eConfign,[He]::2s+2\noexpand\pgfPT@virgula2p+6/eConfignl,0.9002/d,20.786/Cp,0.0491/kT,fcc/ls,442.9/lsa,/lsb,/lsc,/lsca,1898/DiscY,21/DiscC,1/spectra,gasoso/cor}%
+\def\pgfPT@data@xi{Na/CS,22.99/Ar,22.99/Arstar,0/radio,190/R,155/Rcov,102\noexpand\pgfPT@espaco(1+)/Rion,495.8/Ei,0.93/eneg,52.87/eaff,+1/O,+I/ORoman,370.944/Tmelt,97.794/TmeltC,1156.09/Tboil,882.94/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep1/eDist,[Ne]::3s+1/eConfign,[Ne]::3s+1/eConfignl,968/d,28.23/Cp,142/kT,bcc/ls,429.06/lsa,/lsb,/lsc,/lsca,1807/DiscY,21/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xii{Mg/CS,24.305/Ar,[24.304\noexpand\pgfPT@virgula24.307] /Arstar,0/radio,145/R,139/Rcov,72\noexpand\pgfPT@espaco(2+)/Rion,737.7/Ei,1.31/eneg,0/eaff,+2/O,+II/ORoman,923/Tmelt,650/TmeltC,1363/Tboil,1090/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Ne]::3s+2/eConfign,[Ne]::3s+2/eConfignl,1738/d,24.869/Cp,156/kT,hcp/ls,320.94/lsa,/lsb,521.05/lsc,1.62/lsca,1755/DiscY,21/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xiii{Al/CS,26.982/Ar,26.982/Arstar,0/radio,118/R,126/Rcov,53.5\noexpand\pgfPT@espaco(3+)/Rion,577.5/Ei,1.61/eneg,41.76/eaff,+3/O,+III/ORoman,933.47/Tmelt,660.32/TmeltC,2743/Tboil,2470/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep3/eDist,[Ne]::3s+2\noexpand\pgfPT@virgula3p+1/eConfign,[Ne]::3s+2\noexpand\pgfPT@virgula3p+1/eConfignl,2700/d,24.2/Cp,237/kT,fcc/ls,404.95/lsa,/lsb,/lsc,/lsca,1824/DiscY,2/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xiv{Si/CS,28.085/Ar,[28.084\noexpand\pgfPT@virgula28.086]/Arstar,0/radio,111/R,116/Rcov,40\noexpand\pgfPT@espaco(4+)/Rion,786.5/Ei,1.9/eneg,134.07/eaff,\noexpand\pgfPT@pm4/O,\noexpand\pgfPT@pm IV/ORoman,1687/Tmelt,1414/TmeltC,3538/Tboil,3265/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep4/eDist,[Ne]::3s+2\noexpand\pgfPT@virgula3p+2/eConfign,[Ne]::3s+2\noexpand\pgfPT@virgula3p+2/eConfignl,2330/d,19.789/Cp,149/kT,dia/ls,543.095/lsa,/lsb,/lsc,/lsca,1823/DiscY,18/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xv{P/CS,30.974/Ar,30.974/Arstar,0/radio,98/R,111/Rcov,212\noexpand\pgfPT@espaco(3-)\noexpand\pgfPT@virgula44\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula38\noexpand\pgfPT@espaco(5+)/Rion,1011.8/Ei,2.19/eneg,72.04/eaff,\noexpand\pgfPT@pm3\noexpand\pgfPT@virgula+5/O,\noexpand\pgfPT@pm III\noexpand\pgfPT@virgula+V/ORoman,317.3/Tmelt,44.15/TmeltC,550/Tboil,277/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep5/eDist,[Ne]::3s+2\noexpand\pgfPT@virgula3p+3/eConfign,[Ne]::3s+2\noexpand\pgfPT@virgula3p+3/eConfignl,1823/d,23.824/Cp,0.236/kT,tric/ls,1145/lsa,550.3/lsb,1126.1/lsc,0.98/lsca,1669/DiscY,8/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xvi{S/CS,32.06/Ar,[32.059\noexpand\pgfPT@virgula32.076]/Arstar,0/radio,88/R,103/Rcov,184\noexpand\pgfPT@espaco(2-)\noexpand\pgfPT@virgula37\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula29\noexpand\pgfPT@espaco(6+)/Rion,999.6/Ei,2.58/eneg,200.41/eaff,\noexpand\pgfPT@pm2\noexpand\pgfPT@virgula+4\noexpand\pgfPT@virgula+6/O,\noexpand\pgfPT@pm II\noexpand\pgfPT@virgula+IV\noexpand\pgfPT@virgula+VI/ORoman,388.36/Tmelt,115.21/TmeltC,717.8/Tboil,444.6/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep6/eDist,[Ne]::3s+2\noexpand\pgfPT@virgula3p+4/eConfign,[Ne]::3s+2\noexpand\pgfPT@virgula3p+4/eConfignl,1960/d,22.75/Cp,0.205/kT,fcort/ls,1046.5/lsa,1286.6/lsb,2448.6/lsc,2.34/lsca,500\noexpand\pgfPT@scaletxt{\pgfPTDiscYBCscale}{\noexpand\pgfPT@espaco\noexpand\pgfPT@BClabel}/DiscY,12/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xvii{Cl/CS,35.45/Ar,[35.446\noexpand\pgfPT@virgula35.457]/Arstar,0/radio,79/R,99/Rcov,181\noexpand\pgfPT@espaco(1-)\noexpand\pgfPT@virgula12\noexpand\pgfPT@espaco(5+)\noexpand\pgfPT@virgula27\noexpand\pgfPT@espaco(7+)/Rion,1251.2/Ei,3.16/eneg,348.58/eaff,\noexpand\pgfPT@pm1\noexpand\pgfPT@virgula+3\noexpand\pgfPT@virgula+5\noexpand\pgfPT@virgula+7/O,\noexpand\pgfPT@pm I\noexpand\pgfPT@virgula+III\noexpand\pgfPT@virgula+V\noexpand\pgfPT@virgula+VII/ORoman,171.6/Tmelt,-101.5/TmeltC,239.11/Tboil,-34.04/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep7/eDist,[Ne]::3s+2\noexpand\pgfPT@virgula3p+5/eConfign,[Ne]::3s+2\noexpand\pgfPT@virgula3p+5/eConfignl,3.2/d,33.949/Cp,0.0089/kT,bcort/ls,622.35/lsa,445.61/lsb,817.85/lsc,1.31/lsca,1774/DiscY,18/DiscC,1/spectra,gasoso/cor}%
+\def\pgfPT@data@xviii{Ar/CS,39.95/Ar,[39.792\noexpand\pgfPT@virgula39.963]/Arstar,0/radio,71/R,96/Rcov,---/Rion,1520.6/Ei,---/eneg,0/eaff,0/O,0/ORoman,83.81/Tmelt,-189.34/TmeltC,87.302/Tboil,-185.848/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep8/eDist,[Ne]::3s+2\noexpand\pgfPT@virgula3p+6/eConfign,[Ne]::3s+2\noexpand\pgfPT@virgula3p+6/eConfignl,1.784/d,20.786/Cp,0.01772/kT,fcc/ls,525.6/lsa,/lsb,/lsc,/lsca,1894/DiscY,21/DiscC,1/spectra,gasoso/cor}%
+\def\pgfPT@data@xix{K/CS,39.098/Ar,39.098/Arstar,0/radio,243/R,196/Rcov,138\noexpand\pgfPT@espaco(1+)/Rion,418.8/Ei,0.82/eneg,48.38/eaff,+1/O,+I/ORoman,336.7/Tmelt,63.5/TmeltC,1032/Tboil,759/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep1/eDist,[Ar]::4s+1/eConfign,[Ar]::4s+1/eConfignl,890/d,29.6/Cp,102.5/kT,bcc/ls,532.8/lsa,/lsb,/lsc,/lsca,1807/DiscY,21/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xx{Ca/CS,40.078/Ar,40.078(4) /Arstar,0/radio,194/R,171/Rcov,100\noexpand\pgfPT@espaco(2+)/Rion,589.8/Ei,1/eneg,2.37/eaff,+2/O,+II/ORoman,1115/Tmelt,842/TmeltC,1757/Tboil,1484/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Ar]::4s+2/eConfign,[Ar]::4s+2/eConfignl,1550/d,25.929/Cp,201/kT,fcc/ls,558.84/lsa,/lsb,/lsc,/lsca,1808/DiscY,21/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xxi{Sc/CS,44.956/Ar,44.956/Arstar,0/radio,184/R,148/Rcov,74.5\noexpand\pgfPT@espaco(3+)/Rion,633.1/Ei,1.36/eneg,18/eaff,+3/O,+III/ORoman,1814/Tmelt,1541/TmeltC,3109/Tboil,2836/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Ar]::3d+1\noexpand\pgfPT@virgula4s+2/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+1/eConfignl,2985/d,25.52/Cp,15.8/kT,hcp/ls,330.9/lsa,/lsb,527.33/lsc,1.59/lsca,1879/DiscY,18/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xxii{Ti/CS,47.867/Ar,47.867/Arstar,0/radio,176/R,136/Rcov,86\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula67\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula60.5\noexpand\pgfPT@espaco(4+)/Rion,658.8/Ei,1.54/eneg,7.29/eaff,+2\noexpand\pgfPT@virgula+3\noexpand\pgfPT@virgula+4/O,+II\noexpand\pgfPT@virgula+III\noexpand\pgfPT@virgula+IV/ORoman,1941/Tmelt,1668/TmeltC,3560/Tboil,3287/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep10\noexpand\pgfPTeDistsep2/eDist,[Ar]::3d+2\noexpand\pgfPT@virgula4s+2/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+2/eConfignl,4506/d,25.06/Cp,21.9/kT,hcp/ls,295.03/lsa,/lsb,468.31/lsc,1.59/lsca,1791/DiscY,21/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xxiii{V/CS,50.942/Ar,50.942/Arstar,0/radio,171/R,134/Rcov,79\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula64\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula58\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula54\noexpand\pgfPT@espaco(5+)/Rion,650.9/Ei,1.63/eneg,50.91/eaff,+2\noexpand\pgfPT@virgula+3\noexpand\pgfPT@virgula+4\noexpand\pgfPT@virgula+5/O,+II\noexpand\pgfPT@virgula+III\noexpand\pgfPT@virgula+IV\noexpand\pgfPT@virgula+V/ORoman,2183/Tmelt,1910/TmeltC,3680/Tboil,3407/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep11\noexpand\pgfPTeDistsep2/eDist,[Ar]::3d+3\noexpand\pgfPT@virgula4s+2/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+3/eConfignl,6110/d,24.89/Cp,30.7/kT,bcc/ls,302.31/lsa,/lsb,/lsc,/lsca,1830/DiscY,23/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xxiv{Cr/CS,51.996/Ar,51.996/Arstar,0/radio,166/R,122/Rcov,73\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula61.5\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula44\noexpand\pgfPT@espaco(6+)/Rion,652.9/Ei,1.66/eneg,65.21/eaff,+2\noexpand\pgfPT@virgula+3\noexpand\pgfPT@virgula+6/O,+II\noexpand\pgfPT@virgula+III\noexpand\pgfPT@virgula+VI/ORoman,2180/Tmelt,1907/TmeltC,2755/Tboil,2482/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep13\noexpand\pgfPTeDistsep1/eDist,[Ar]::3d+5\noexpand\pgfPT@virgula4s+1/eConfign,[Ar]::4s+1\noexpand\pgfPT@virgula3d+5/eConfignl,7150/d,23.35/Cp,93.9/kT,bcc/ls,288.46/lsa,/lsb,/lsc,/lsca,1797/DiscY,5/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xxv{Mn/CS,54.938/Ar,54.938/Arstar,0/radio,161/R,119/Rcov,67\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula58\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula53\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula25.5\noexpand\pgfPT@espaco(6+)\noexpand\pgfPT@virgula46\noexpand\pgfPT@espaco(7+)/Rion,717.3/Ei,1.55/eneg,0/eaff,+2\noexpand\pgfPT@virgula+3\noexpand\pgfPT@virgula+4\noexpand\pgfPT@virgula+6\noexpand\pgfPT@virgula+7/O,+II\noexpand\pgfPT@virgula+III\noexpand\pgfPT@virgula+IV\noexpand\pgfPT@virgula+VI\noexpand\pgfPT@virgula+VII/ORoman,1519/Tmelt,1246/TmeltC,2334/Tboil,2061/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep13\noexpand\pgfPTeDistsep2/eDist,[Ar]::3d+5\noexpand\pgfPT@virgula4s+2/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+5/eConfignl,7210/d,26.32/Cp,7.81/kT,bcc/ls,891.39/lsa,/lsb,/lsc,/lsca,1774/DiscY,18/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xxvi{Fe/CS,55.845/Ar,55.845(2)/Arstar,0/radio,156/R,116/Rcov,61\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula55\noexpand\pgfPT@espaco(3+)/Rion,762.5/Ei,1.83/eneg,14.79/eaff,+2\noexpand\pgfPT@virgula+3/O,+II\noexpand\pgfPT@virgula+III/ORoman,1811/Tmelt,1538/TmeltC,3134/Tboil,2861/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep14\noexpand\pgfPTeDistsep2/eDist,[Ar]::3d+6\noexpand\pgfPT@virgula4s+2/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+6/eConfignl,7860/d,25.1/Cp,80.4/kT,bcc/ls,286.64/lsa,/lsb,/lsc,/lsca,2000\noexpand\pgfPT@scaletxt{\pgfPTDiscYBCscale}{\noexpand\pgfPT@espaco\noexpand\pgfPT@BClabel}/DiscY,3/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xxvii{Co/CS,58.933/Ar,58.933/Arstar,0/radio,152/R,111/Rcov,65\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula54.5\noexpand\pgfPT@espaco(3+)/Rion,760.4/Ei,1.88/eneg,63.9/eaff,+2\noexpand\pgfPT@virgula+3/O,+II\noexpand\pgfPT@virgula+III/ORoman,1768/Tmelt,1495/TmeltC,3200/Tboil,2927/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep15\noexpand\pgfPTeDistsep2/eDist,[Ar]::3d+7\noexpand\pgfPT@virgula4s+2/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+7/eConfignl,8900/d,24.81/Cp,100/kT,hcp/ls,250.71/lsa,/lsb,406.95/lsc,1.62/lsca,1735/DiscY,18/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xxviii{Ni/CS,58.693/Ar,58.693/Arstar,0/radio,149/R,110/Rcov,69\noexpand\pgfPT@espaco(2+)/Rion,737.1/Ei,1.91/eneg,111.65/eaff,+2/O,+II/ORoman,1728/Tmelt,1455/TmeltC,3003/Tboil,2730/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep16\noexpand\pgfPTeDistsep2/eDist,[Ar]::3d+8\noexpand\pgfPT@virgula4s+2/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+8/eConfignl,8908/d,26.07/Cp,90.9/kT,fcc/ls,352.4/lsa,/lsb,/lsc,/lsca,1751/DiscY,18/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xxix{Cu/CS,63.546/Ar,63.546(3)/Arstar,0/radio,145/R,112/Rcov,77\noexpand\pgfPT@espaco(1+)\noexpand\pgfPT@virgula73\noexpand\pgfPT@espaco(2+)/Rion,745.5/Ei,1.9/eneg,119.24/eaff,+1\noexpand\pgfPT@virgula+2/O,+I\noexpand\pgfPT@virgula+II/ORoman,1357.77/Tmelt,1084.62/TmeltC,2835/Tboil,2562/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep1/eDist,[Ar]::3d+10\noexpand\pgfPT@virgula4s+1/eConfign,[Ar]::4s+1\noexpand\pgfPT@virgula3d+10/eConfignl,8960/d,24.44/Cp,401/kT,fcc/ls,361.47/lsa,/lsb,/lsc,/lsca,8000\noexpand\pgfPT@scaletxt{\pgfPTDiscYBCscale}{\noexpand\pgfPT@espaco\noexpand\pgfPT@BClabel}/DiscY,12/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xxx{Zn/CS,65.38/Ar,65.38(2)/Arstar,0/radio,142/R,118/Rcov,74\noexpand\pgfPT@espaco(2+)/Rion,906.4/Ei,1.65/eneg,0/eaff,+2/O,+II/ORoman,692.68/Tmelt,419.53/TmeltC,1180/Tboil,907/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep2/eDist,[Ar]::3d+10\noexpand\pgfPT@virgula4s+2/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+10/eConfignl,7140/d,25.39/Cp,116/kT,hcp/ls,266.49/lsa,/lsb,494.68/lsc,1.86/lsca,1746/DiscY,8/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xxxi{Ga/CS,69.723/Ar,69.723/Arstar,0/radio,136/R,124/Rcov,62\noexpand\pgfPT@espaco(3+)/Rion,578.8/Ei,1.81/eneg,29.06/eaff,+3/O,+III/ORoman,302.9146/Tmelt,29.7646/TmeltC,2673/Tboil,2400/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep3/eDist,[Ar]::3d+10\noexpand\pgfPT@virgula4s+2\noexpand\pgfPT@virgula4p+1/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+10\noexpand\pgfPT@virgula4p+1/eConfignl,5910/d,25.86/Cp,40.6/kT,bcort/ls,452.58/lsa,451.86/lsb,765.7/lsc,1.69/lsca,1875/DiscY,5/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xxxii{Ge/CS,72.63/Ar,72.630(8)/Arstar,0/radio,125/R,121/Rcov,73\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula53\noexpand\pgfPT@espaco(4+)/Rion,762/Ei,2.01/eneg,118.94/eaff,+2\noexpand\pgfPT@virgula\noexpand\pgfPT@pm4/O,+II\noexpand\pgfPT@virgula\noexpand\pgfPT@pm IV/ORoman,1211.4/Tmelt,938.25/TmeltC,3106/Tboil,2833/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep4/eDist,[Ar]::3d+10\noexpand\pgfPT@virgula4s+2\noexpand\pgfPT@virgula4p+2/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+10\noexpand\pgfPT@virgula4p+2/eConfignl,5323/d,23.222/Cp,60.2/kT,dia/ls,565.791/lsa,/lsb,/lsc,/lsca,1886/DiscY,8/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xxxiii{As/CS,74.922/Ar,74.922/Arstar,0/radio,114/R,121/Rcov,58\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula46\noexpand\pgfPT@espaco(5+)/Rion,947/Ei,2.18/eneg,77.65/eaff,\noexpand\pgfPT@pm3\noexpand\pgfPT@virgula+5/O,\noexpand\pgfPT@pm III\noexpand\pgfPT@virgula+V/ORoman,1090/Tmelt,817/TmeltC,887/Tboil,614/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep5/eDist,[Ar]::3d+10\noexpand\pgfPT@virgula4s+2\noexpand\pgfPT@virgula4p+3/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+10\noexpand\pgfPT@virgula4p+3/eConfignl,5727/d,24.64/Cp,50.2/kT,rho/ls,375.98/lsa,375.98/lsb,1054.75/lsc,2.81/lsca,1250/DiscY,12/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xxxiv{Se/CS,78.971/Ar,78.971(8)/Arstar,0/radio,103/R,116/Rcov,198\noexpand\pgfPT@espaco(2-)\noexpand\pgfPT@virgula50\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula42\noexpand\pgfPT@espaco(6+)/Rion,941/Ei,2.55/eneg,194.96/eaff,\noexpand\pgfPT@pm2\noexpand\pgfPT@virgula+4\noexpand\pgfPT@virgula+6/O,\noexpand\pgfPT@pm II\noexpand\pgfPT@virgula+IV\noexpand\pgfPT@virgula+VI/ORoman,494/Tmelt,221/TmeltC,958/Tboil,685/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep6/eDist,[Ar]::3d+10\noexpand\pgfPT@virgula4s+2\noexpand\pgfPT@virgula4p+4/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+10\noexpand\pgfPT@virgula4p+4/eConfignl,4810/d,25.363/Cp,0.519/kT,mono/ls,905.4/lsa,908.3/lsb,1160.1/lsc,1.28/lsca,1817/DiscY,18/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xxxv{Br/CS,79.904/Ar,[79.901\noexpand\pgfPT@virgula79.907]/Arstar,0/radio,94/R,114/Rcov,196\noexpand\pgfPT@espaco(1-)\noexpand\pgfPT@virgula59\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula31\noexpand\pgfPT@espaco(5+)/Rion,1139.9/Ei,2.96/eneg,324.54/eaff,\noexpand\pgfPT@pm1\noexpand\pgfPT@virgula+3\noexpand\pgfPT@virgula+5/O,\noexpand\pgfPT@pm I\noexpand\pgfPT@virgula+III\noexpand\pgfPT@virgula+V/ORoman,265.8/Tmelt,-7.3/TmeltC,332/Tboil,58.8/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep7/eDist,[Ar]::3d+10\noexpand\pgfPT@virgula4s+2\noexpand\pgfPT@virgula4p+5/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+10\noexpand\pgfPT@virgula4p+5/eConfignl,3102.8/d,75.69/Cp,0.122/kT,bcort/ls,672.65/lsa,464.51/lsb,870.23/lsc,1.29/lsca,1825/DiscY,5/DiscC,1/spectra,liquido/cor}%
+\def\pgfPT@data@xxxvi{Kr/CS,83.798/Ar,83.798(2)/Arstar,0/radio,88/R,117/Rcov,---/Rion,1350.8/Ei,3/eneg,0/eaff,0/O,0/ORoman,115.78/Tmelt,-157.37/TmeltC,119.735/Tboil,-153.415/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8/eDist,[Ar]::3d+10\noexpand\pgfPT@virgula4s+2\noexpand\pgfPT@virgula4p+6/eConfign,[Ar]::4s+2\noexpand\pgfPT@virgula3d+10\noexpand\pgfPT@virgula4p+6/eConfignl,3.749/d,20.786/Cp,0.00943/kT,fcc/ls,570.6/lsa,/lsb,/lsc,/lsca,1898/DiscY,21/DiscC,1/spectra,gasoso/cor}%
+\def\pgfPT@data@xxxvii{Rb/CS,85.468/Ar,85.468/Arstar,0/radio,265/R,210/Rcov,152\noexpand\pgfPT@espaco(1+)/Rion,403/Ei,0.82/eneg,46.88/eaff,+1/O,+I/ORoman,312.45/Tmelt,39.3/TmeltC,961/Tboil,688/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep1/eDist,[Kr]::5s+1/eConfign,[Kr]::5s+1/eConfignl,1532/d,31.06/Cp,58.2/kT,bcc/ls,558.5/lsa,/lsb,/lsc,/lsca,1861/DiscY,8/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xxxviii{Sr/CS,87.62/Ar,87.62/Arstar,0/radio,219/R,185/Rcov,118\noexpand\pgfPT@espaco(2+)/Rion,549.5/Ei,0.95/eneg,5.02/eaff,+2/O,+II/ORoman,1050/Tmelt,777/TmeltC,1650/Tboil,1382/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Kr]::5s+2/eConfign,[Kr]::5s+2/eConfignl,2640/d,26.4/Cp,35.4/kT,fcc/ls,608.49/lsa,/lsb,/lsc,/lsca,1787/DiscY,21/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xxxix{Y/CS,88.906/Ar,88.906/Arstar,0/radio,212/R,163/Rcov,90\noexpand\pgfPT@espaco(3+)/Rion,600/Ei,1.22/eneg,29.6/eaff,+3/O,+III/ORoman,1799/Tmelt,1526/TmeltC,3203/Tboil,2930/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Kr]::4d+1\noexpand\pgfPT@virgula5s+2/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+1/eConfignl,4472/d,26.53/Cp,17.2/kT,hcp/ls,364.74/lsa,/lsb,573.06/lsc,1.57/lsca,1794/DiscY,4/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xl{Zr/CS,91.224/Ar,91.224(2)/Arstar,0/radio,206/R,154/Rcov,72\noexpand\pgfPT@espaco(4+)/Rion,640.1/Ei,1.33/eneg,41.81/eaff,+4/O,+IV/ORoman,2128/Tmelt,1855/TmeltC,4650/Tboil,4377/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep10\noexpand\pgfPTeDistsep2/eDist,[Kr]::4d+2\noexpand\pgfPT@virgula5s+2/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+2/eConfignl,6520/d,25.36/Cp,22.6/kT,hcp/ls,323.2/lsa,/lsb,514.7/lsc,1.59/lsca,1789/DiscY,8/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xli{Nb/CS,92.906/Ar,92.906/Arstar,0/radio,198/R,147/Rcov,64\noexpand\pgfPT@espaco(5+)/Rion,652.1/Ei,1.6/eneg,88.52/eaff,+5/O,+V/ORoman,2750/Tmelt,2477/TmeltC,5017/Tboil,4744/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep12\noexpand\pgfPTeDistsep1/eDist,[Kr]::4d+4\noexpand\pgfPT@virgula5s+1/eConfign,[Kr]::5s+1\noexpand\pgfPT@virgula4d+4/eConfignl,8570/d,24.6/Cp,53.7/kT,bcc/ls,330.04/lsa,/lsb,/lsc,/lsca,1801/DiscY,21/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xlii{Mo/CS,95.95/Ar,95.95/Arstar,0/radio,190/R,138/Rcov,65\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula59\noexpand\pgfPT@espaco(6+)/Rion,684.3/Ei,2.16/eneg,72.1/eaff,+4\noexpand\pgfPT@virgula+6/O,+IV\noexpand\pgfPT@virgula+VI/ORoman,2896/Tmelt,2623/TmeltC,4912/Tboil,4639/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep13\noexpand\pgfPTeDistsep1/eDist,[Kr]::4d+5\noexpand\pgfPT@virgula5s+1/eConfign,[Kr]::5s+1\noexpand\pgfPT@virgula4d+5/eConfignl,10280/d,24.06/Cp,138/kT,bcc/ls,314.69/lsa,/lsb,/lsc,/lsca,1781/DiscY,18/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xliii{Tc/CS,[98]/Ar,/Arstar,1/radio,183/R,128/Rcov,64.5\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula56\noexpand\pgfPT@espaco(7+)/Rion,702/Ei,1.9/eneg,53/eaff,+4\noexpand\pgfPT@virgula+7/O,+IV\noexpand\pgfPT@virgula+VII/ORoman,2430/Tmelt,2157/TmeltC,4538/Tboil,4265/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep13\noexpand\pgfPTeDistsep2/eDist,[Kr]::4d+5\noexpand\pgfPT@virgula5s+2/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+5/eConfignl,11000/d,24.27/Cp,50.6/kT,hcp/ls,273.5/lsa,/lsb,438.8/lsc,1.6/lsca,1937/DiscY,11/DiscC,1/spectra,sintetico/cor}%
+\def\pgfPT@data@xliv{Ru/CS,101.07/Ar,101.07/Arstar,0/radio,178/R,125/Rcov,68\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula62\noexpand\pgfPT@espaco(4+)/Rion,710.2/Ei,2.2/eneg,100.96/eaff,+3\noexpand\pgfPT@virgula+4/O,+III\noexpand\pgfPT@virgula+IV/ORoman,2607/Tmelt,2334/TmeltC,4423/Tboil,4150/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep15\noexpand\pgfPTeDistsep1/eDist,[Kr]::4d+7\noexpand\pgfPT@virgula5s+1/eConfign,[Kr]::5s+1\noexpand\pgfPT@virgula4d+7/eConfignl,12450/d,24.06/Cp,117/kT,hcp/ls,270.55/lsa,/lsb,428.16/lsc,1.58/lsca,1844/DiscY,15/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xlv{Rh/CS,102.91/Ar,102.91/Arstar,0/radio,173/R,125/Rcov,66.5\noexpand\pgfPT@espaco(3+)/Rion,719.7/Ei,2.28/eneg,110.27/eaff,+3/O,+III/ORoman,2237/Tmelt,1964/TmeltC,3968/Tboil,3695/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep16\noexpand\pgfPTeDistsep1/eDist,[Kr]::4d+8\noexpand\pgfPT@virgula5s+1/eConfign,[Kr]::5s+1\noexpand\pgfPT@virgula4d+8/eConfignl,12410/d,24.98/Cp,150/kT,fcc/ls,380.34/lsa,/lsb,/lsc,/lsca,1804/DiscY,21/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xlvi{Pd/CS,106.42/Ar,106.42/Arstar,0/radio,169/R,120/Rcov,86\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula61.5\noexpand\pgfPT@espaco(4+)/Rion,804.4/Ei,2.2/eneg,54.24/eaff,0\noexpand\pgfPT@virgula+2\noexpand\pgfPT@virgula+4/O,0\noexpand\pgfPT@virgula+II\noexpand\pgfPT@virgula+IV/ORoman,1828.05/Tmelt,1554.9/TmeltC,3236/Tboil,2963/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18/eDist,[Kr]::4d+10/eConfign,[Kr]::4d+10/eConfignl,12023/d,25.98/Cp,71.8/kT,fcc/ls,389.02/lsa,/lsb,/lsc,/lsca,1802/DiscY,21/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xlvii{Ag/CS,107.87/Ar,107.87/Arstar,0/radio,165/R,128/Rcov,115\noexpand\pgfPT@espaco(1+)/Rion,731/Ei,1.93/eneg,125.86/eaff,+1/O,+I/ORoman,1234.93/Tmelt,961.78/TmeltC,2483/Tboil,2210/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep1/eDist,[Kr]::4d+10\noexpand\pgfPT@virgula5s+1/eConfign,[Kr]::5s+1\noexpand\pgfPT@virgula4d+10/eConfignl,10490/d,25.35/Cp,429/kT,fcc/ls,408.57/lsa,/lsb,/lsc,/lsca,3000\noexpand\pgfPT@scaletxt{\pgfPTDiscYBCscale}{\noexpand\pgfPT@espaco\noexpand\pgfPT@BClabel}/DiscY,0/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xlviii{Cd/CS,112.41/Ar,112.41/Arstar,0/radio,161/R,136/Rcov,95\noexpand\pgfPT@espaco(2+)/Rion,867.8/Ei,1.69/eneg,0/eaff,+2/O,+II/ORoman,594.22/Tmelt,321.07/TmeltC,1040/Tboil,767/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep2/eDist,[Kr]::4d+10\noexpand\pgfPT@virgula5s+2/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+10/eConfignl,8650/d,26.02/Cp,96.6/kT,hcp/ls,297.88/lsa,/lsb,561.67/lsc,1.89/lsca,1817/DiscY,8/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xlix{In/CS,114.82/Ar,114.82/Arstar,0/radio,156/R,142/Rcov,80\noexpand\pgfPT@espaco(3+)/Rion,558.3/Ei,1.78/eneg,37.04/eaff,+3/O,+III/ORoman,429.75/Tmelt,156.6/TmeltC,2345/Tboil,2072/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep3/eDist,[Kr]::4d+10\noexpand\pgfPT@virgula5s+2\noexpand\pgfPT@virgula5p+1/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+10\noexpand\pgfPT@virgula5p+1/eConfignl,7310/d,26.74/Cp,81.8/kT,tetr/ls,325.17/lsa,/lsb,494.59/lsc,1.52/lsca,1863/DiscY,8/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@l{Sn/CS,118.71/Ar,118.71/Arstar,0/radio,145/R,140/Rcov,118\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula69\noexpand\pgfPT@espaco(4+)/Rion,708.6/Ei,1.96/eneg,107.3/eaff,+2\noexpand\pgfPT@virgula\noexpand\pgfPT@pm4/O,+II\noexpand\pgfPT@virgula\noexpand\pgfPT@pm IV/ORoman,505.08/Tmelt,231.93/TmeltC,2875/Tboil,2602/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep4/eDist,[Kr]::4d+10\noexpand\pgfPT@virgula5s+2\noexpand\pgfPT@virgula5p+2/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+10\noexpand\pgfPT@virgula5p+2/eConfignl,7265/d,25.77/Cp,66.8/kT,ctetr/ls,583.1/lsa,/lsb,318.1/lsc,0.55/lsca,3000\noexpand\pgfPT@scaletxt{\pgfPTDiscYBCscale}{\noexpand\pgfPT@espaco\noexpand\pgfPT@BClabel}/DiscY,0/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@li{Sb/CS,121.76/Ar,121.76/Arstar,0/radio,133/R,140/Rcov,76\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula60\noexpand\pgfPT@espaco(5+)/Rion,834/Ei,2.05/eneg,101.06/eaff,\noexpand\pgfPT@pm3\noexpand\pgfPT@virgula+5/O,\noexpand\pgfPT@pm III\noexpand\pgfPT@virgula+V/ORoman,903.78/Tmelt,630.63/TmeltC,1908/Tboil,1635/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep5/eDist,[Kr]::4d+10\noexpand\pgfPT@virgula5s+2\noexpand\pgfPT@virgula5p+3/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+10\noexpand\pgfPT@virgula5p+3/eConfignl,6697/d,25.23/Cp,24.4/kT,rho/ls,430.7/lsa,/lsb,1127.3/lsc,2.62/lsca,815/DiscY,12/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lii{Te/CS,127.6/Ar,127.60(3)/Arstar,0/radio,123/R,136/Rcov,221\noexpand\pgfPT@espaco(2-)\noexpand\pgfPT@virgula97\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula56\noexpand\pgfPT@espaco(6+)/Rion,869.3/Ei,2.1/eneg,190.16/eaff,\noexpand\pgfPT@pm2\noexpand\pgfPT@virgula+4\noexpand\pgfPT@virgula+6/O,\noexpand\pgfPT@pm II\noexpand\pgfPT@virgula+IV\noexpand\pgfPT@virgula+VI/ORoman,722.66/Tmelt,449.51/TmeltC,1261/Tboil,988/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep6/eDist,[Kr]::4d+10\noexpand\pgfPT@virgula5s+2\noexpand\pgfPT@virgula5p+4/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+10\noexpand\pgfPT@virgula5p+4/eConfignl,6240/d,25.73/Cp,3/kT,rho/ls,445.72/lsa,/lsb,592.9/lsc,1.33/lsca,1782/DiscY,14/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@liii{I/CS,126.9/Ar,126.9/Arstar,0/radio,115/R,133/Rcov,220\noexpand\pgfPT@espaco(1-)\noexpand\pgfPT@virgula95\noexpand\pgfPT@espaco(5+)\noexpand\pgfPT@virgula53\noexpand\pgfPT@espaco(7+)/Rion,1008.4/Ei,2.66/eneg,295.15/eaff,\noexpand\pgfPT@pm1\noexpand\pgfPT@virgula+3\noexpand\pgfPT@virgula+5\noexpand\pgfPT@virgula+7/O,\noexpand\pgfPT@pm I\noexpand\pgfPT@virgula+III\noexpand\pgfPT@virgula+V\noexpand\pgfPT@virgula+VII/ORoman,386.85/Tmelt,113.7/TmeltC,457.4/Tboil,184.3/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep7/eDist,[Kr]::4d+10\noexpand\pgfPT@virgula5s+2\noexpand\pgfPT@virgula5p+5/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+10\noexpand\pgfPT@virgula5p+5/eConfignl,4933/d,54.44/Cp,0.449/kT,bcort/ls,726.97/lsa,479.03/lsb,979.42/lsc,1.35/lsca,1811/DiscY,5/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@liv{Xe/CS,131.29/Ar,131.29/Arstar,0/radio,108/R,131/Rcov,---/Rion,1170.4/Ei,2.6/eneg,0/eaff,0/O,0/ORoman,161.4/Tmelt,-111.75/TmeltC,165.051/Tboil,-108.099/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8/eDist,[Kr]::4d+10\noexpand\pgfPT@virgula5s+2\noexpand\pgfPT@virgula5p+6/eConfign,[Kr]::5s+2\noexpand\pgfPT@virgula4d+10\noexpand\pgfPT@virgula5p+6/eConfignl,5.894/d,20.786/Cp,0.00565/kT,fcc/ls,620.23/lsa,/lsb,/lsc,/lsca,1898/DiscY,21/DiscC,1/spectra,gasoso/cor}%
+\def\pgfPT@data@lv{Cs/CS,132.91/Ar,132.91/Arstar,0/radio,298/R,232/Rcov,167\noexpand\pgfPT@espaco(1+)/Rion,375.7/Ei,0.79/eneg,45.51/eaff,+1/O,+I/ORoman,301.7/Tmelt,28.5/TmeltC,944/Tboil,671/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep1/eDist,[Xe]::6s+1/eConfign,[Xe]::6s+1/eConfignl,1930/d,32.21/Cp,35.9/kT,bcc/ls,614.1/lsa,/lsb,/lsc,/lsca,1860/DiscY,8/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lvi{Ba/CS,137.33/Ar,137.33/Arstar,0/radio,253/R,196/Rcov,135\noexpand\pgfPT@espaco(2+)/Rion,502.9/Ei,0.89/eneg,13.95/eaff,+2/O,+II/ORoman,1000/Tmelt,727/TmeltC,1910/Tboil,1637/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::6s+2/eConfign,[Xe]::6s+2/eConfignl,3510/d,28.07/Cp,18.4/kT,bcc/ls,501.9/lsa,/lsb,/lsc,/lsca,1808/DiscY,21/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lvii{La/CS,138.91/Ar,138.91/Arstar,0/radio,226/R,180/Rcov,103.2\noexpand\pgfPT@espaco(3+)/Rion,538.1/Ei,1.1/eneg,53.8/eaff,+3/O,+III/ORoman,1193/Tmelt,920/TmeltC,3737/Tboil,3464/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Xe]::5d+1\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula5d+1/eConfignl,6162/d,27.11/Cp,13.4/kT,hex/ls,377.2/lsa,/lsb,1214.4/lsc,3.22/lsca,1838/DiscY,18/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lviii{Ce/CS,140.12/Ar,140.12/Arstar,0/radio,210/R,163/Rcov,101\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula87\noexpand\pgfPT@espaco(4+)/Rion,534.4/Ei,1.12/eneg,55/eaff,+3\noexpand\pgfPT@virgula+4/O,+III\noexpand\pgfPT@virgula+IV/ORoman,1068/Tmelt,795/TmeltC,3716/Tboil,3443/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep19\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+1\noexpand\pgfPT@virgula5d+1\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+1\noexpand\pgfPT@virgula5d+1/eConfignl,6770/d,26.94/Cp,11.3/kT,hex/ls,362/lsa,/lsb,599/lsc,1.65/lsca,1803/DiscY,9/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lix{Pr/CS,140.91/Ar,140.91/Arstar,0/radio,247/R,17/Rcov,99\noexpand\pgfPT@espaco(3+)/Rion,527/Ei,1.13/eneg,10.54/eaff,+3/O,+III/ORoman,1208/Tmelt,935/TmeltC,3403/Tboil,3130/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep21\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+3\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+3/eConfignl,6770/d,27.2/Cp,12.5/kT,hex/ls,367.21/lsa,/lsb,1183.26/lsc,3.22/lsca,1885/DiscY,1/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lx{Nd/CS,144.24/Ar,144.24/Arstar,0/radio,206/R,17/Rcov,98.3\noexpand\pgfPT@espaco(3+)/Rion,533.1/Ei,1.14/eneg,9.41/eaff,+3/O,+III/ORoman,1297/Tmelt,1024/TmeltC,3347/Tboil,3074/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep22\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+4\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+4/eConfignl,7010/d,27.45/Cp,16.5/kT,hex/ls,365.82/lsa,/lsb,1179.66/lsc,3.22/lsca,1885/DiscY,1/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxi{Pm/CS,[145]/Ar,[145]/Arstar,1/radio,205/R,173/Rcov,97\noexpand\pgfPT@espaco(3+)/Rion,540/Ei,1.13/eneg,12.45/eaff,+3/O,+III/ORoman,1315/Tmelt,1042/TmeltC,3273/Tboil,3000/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep23\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+5\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+5/eConfignl,7260/d,---/Cp,17.9/kT,hex/ls,365/lsa,/lsb,1165/lsc,3.19/lsca,1945/DiscY,22/DiscC,1/spectra,sintetico/cor}%
+\def\pgfPT@data@lxii{Sm/CS,150.36/Ar,150.36(2)/Arstar,0/radio,238/R,172/Rcov,95.8\noexpand\pgfPT@espaco(3+)/Rion,544.5/Ei,1.17/eneg,15.63/eaff,+3/O,+III/ORoman,1345/Tmelt,1072/TmeltC,2173/Tboil,1900/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep24\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+6\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+6/eConfignl,7520/d,29.54/Cp,13.3/kT,rho/ls,362.1/lsa,/lsb,2625/lsc,7.25/lsca,1879/DiscY,5/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxiii{Eu/CS,151.96/Ar,151.96/Arstar,0/radio,231/R,168/Rcov,117\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula94.7\noexpand\pgfPT@espaco(3+)/Rion,547.1/Ei,1.2/eneg,11.2/eaff,+2\noexpand\pgfPT@virgula+3/O,+II\noexpand\pgfPT@virgula+III/ORoman,1099/Tmelt,826/TmeltC,1802/Tboil,1529/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep25\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+7\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+7/eConfignl,5244/d,27.66/Cp,13.9/kT,bcc/ls,458.1/lsa,/lsb,/lsc,/lsca,1901/DiscY,5/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxiv{Gd/CS,157.25/Ar,157.25(3)/Arstar,0/radio,233/R,169/Rcov,93.5\noexpand\pgfPT@espaco(3+)/Rion,593.4/Ei,1.2/eneg,13.22/eaff,+3/O,+III/ORoman,1585/Tmelt,1312/TmeltC,3273/Tboil,3000/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep25\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+7\noexpand\pgfPT@virgula5d+1\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+7\noexpand\pgfPT@virgula5d+1/eConfignl,7900/d,37.03/Cp,10.6/kT,hcp/ls,363.6/lsa,/lsb,578.26/lsc,1.59/lsca,1880/DiscY,20/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxv{Tb/CS,158.93/Ar,158.93/Arstar,0/radio,225/R,168/Rcov,92.3\noexpand\pgfPT@espaco(3+)/Rion,565.8/Ei,1.2/eneg,12.67/eaff,+3/O,+III/ORoman,1629/Tmelt,1356/TmeltC,3396/Tboil,3123/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep27\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+9\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+9/eConfignl,8230/d,28.91/Cp,11.1/kT,hcp/ls,360.1/lsa,/lsb,569.36/lsc,1.58/lsca,1843/DiscY,18/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxvi{Dy/CS,162.5/Ar,162.5/Arstar,0/radio,228/R,167/Rcov,91.2\noexpand\pgfPT@espaco(3+)/Rion,573/Ei,1.22/eneg,33.96/eaff,+3/O,+III/ORoman,1680/Tmelt,1407/TmeltC,2840/Tboil,2567/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep28\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+10\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+10/eConfignl,8540/d,27.7/Cp,10.7/kT,hcp/ls,359.3/lsa,/lsb,565.37/lsc,1.57/lsca,1886/DiscY,5/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxvii{Ho/CS,164.93/Ar,164.93/Arstar,0/radio,226/R,166/Rcov,90.1\noexpand\pgfPT@espaco(3+)/Rion,581/Ei,1.23/eneg,32.61/eaff,+3/O,+III/ORoman,1734/Tmelt,1461/TmeltC,2873/Tboil,2600/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep29\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+11\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+11/eConfignl,8790/d,27.15/Cp,16.2/kT,hcp/ls,357.73/lsa,/lsb,561.58/lsc,1.57/lsca,1878/DiscY,20/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxviii{Er/CS,167.26/Ar,167.26/Arstar,0/radio,226/R,165/Rcov,89\noexpand\pgfPT@espaco(3+)/Rion,589.3/Ei,1.24/eneg,30.1/eaff,+3/O,+III/ORoman,1802/Tmelt,1529/TmeltC,3141/Tboil,2868/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep30\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+12\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+12/eConfignl,9066/d,28.12/Cp,14.5/kT,hcp/ls,355.88/lsa,/lsb,558.74/lsc,1.57/lsca,1843/DiscY,18/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxix{Tm/CS,168.93/Ar,168.93/Arstar,0/radio,222/R,164/Rcov,88\noexpand\pgfPT@espaco(3+)/Rion,596.7/Ei,1.25/eneg,99/eaff,+3/O,+III/ORoman,1818/Tmelt,1545/TmeltC,2223/Tboil,1950/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep31\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+13\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+13/eConfignl,9320/d,27.03/Cp,16.9/kT,hcp/ls,353.75/lsa,/lsb,555.46/lsc,1.57/lsca,1879/DiscY,18/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxx{Yb/CS,173.05/Ar,173.05/Arstar,0/radio,222/R,170/Rcov,86.8\noexpand\pgfPT@espaco(3+)/Rion,603.4/Ei,1.1/eneg,0/eaff,+3/O,+III/ORoman,1097/Tmelt,824/TmeltC,1703/Tboil,1430/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14/eConfignl,6900/d,26.74/Cp,38.5/kT,fcc/ls,548.47/lsa,/lsb,/lsc,/lsca,1878/DiscY,20/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxxi{Lu/CS,174.97/Ar,174.97/Arstar,0/radio,217/R,162/Rcov,86.1\noexpand\pgfPT@espaco(3+)/Rion,523.5/Ei,1.27/eneg,23.04/eaff,+3/O,+III/ORoman,1925/Tmelt,1652/TmeltC,3675/Tboil,3402/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+1\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+1/eConfignl,9841/d,26.86/Cp,16.4/kT,hcp/ls,350.31/lsa,/lsb,555.09/lsc,1.58/lsca,1906/DiscY,6/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxxii{Hf/CS,178.49/Ar,178.49(2)/Arstar,0/radio,208/R,152/Rcov,71\noexpand\pgfPT@espaco(4+)/Rion,658.5/Ei,1.3/eneg,17.18/eaff,+4/O,+IV/ORoman,2506/Tmelt,2233/TmeltC,4876/Tboil,4603/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep10\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+2\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+2/eConfignl,13310/d,25.73/Cp,23/kT,hcp/ls,319.64/lsa,/lsb,505.11/lsc,1.58/lsca,1922/DiscY,2/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxxiii{Ta/CS,180.95/Ar,180.95/Arstar,0/radio,200/R,146/Rcov,64\noexpand\pgfPT@espaco(5+)/Rion,761/Ei,1.5/eneg,31/eaff,+5/O,+V/ORoman,3290/Tmelt,3017/TmeltC,5731/Tboil,5458/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep11\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+3\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+3/eConfignl,16690/d,25.36/Cp,57.5/kT,bcc/ls,330.26/lsa,/lsb,/lsc,/lsca,1802/DiscY,18/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxxiv{W/CS,183.84/Ar,183.84/Arstar,0/radio,193/R,137/Rcov,66\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula60\noexpand\pgfPT@espaco(6+)/Rion,770/Ei,2.36/eneg,78.76/eaff,+4\noexpand\pgfPT@virgula+6/O,+IV\noexpand\pgfPT@virgula+VI/ORoman,3695/Tmelt,3422/TmeltC,6203/Tboil,5930/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep12\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+4\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+4/eConfignl,19250/d,24.27/Cp,173/kT,bcc/ls,316.52/lsa,/lsb,/lsc,/lsca,1783/DiscY,17/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxxv{Re/CS,186.21/Ar,186.21/Arstar,0/radio,188/R,131/Rcov,63\noexpand\pgfPT@espaco(4+)/Rion,760/Ei,1.9/eneg,5.83/eaff,+4/O,+IV/ORoman,3459/Tmelt,3186/TmeltC,5869/Tboil,5596/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep13\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+5\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+5/eConfignl,21020/d,25.48/Cp,48/kT,hcp/ls,276.1/lsa,/lsb,445.8/lsc,1.62/lsca,1925/DiscY,8/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxxvi{Os/CS,190.23/Ar,190.23(3)/Arstar,0/radio,185/R,129/Rcov,63\noexpand\pgfPT@espaco(4+)/Rion,840/Ei,2.2/eneg,103.99/eaff,+4/O,+IV/ORoman,3306/Tmelt,3033/TmeltC,5285/Tboil,5012/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep14\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+6\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+6/eConfignl,22590/d,24.7/Cp,87.6/kT,hcp/ls,273.43/lsa,/lsb,431.73/lsc,1.58/lsca,1803/DiscY,21/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxxvii{Ir/CS,192.22/Ar,192.22/Arstar,0/radio,180/R,122/Rcov,68\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula62.5\noexpand\pgfPT@espaco(4+)/Rion,880/Ei,2.2/eneg,150.91/eaff,+3\noexpand\pgfPT@virgula+4/O,+III\noexpand\pgfPT@virgula+IV/ORoman,2719/Tmelt,2446/TmeltC,4403/Tboil,4130/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep15\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+7\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+7/eConfignl,22560/d,25.1/Cp,147/kT,fcc/ls,383.92/lsa,/lsb,/lsc,/lsca,1803/DiscY,7/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxxviii{Pt/CS,195.08/Ar,195.08/Arstar,0/radio,177/R,123/Rcov,80\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula62.5\noexpand\pgfPT@espaco(4+)/Rion,870/Ei,2.28/eneg,205.04/eaff,+2\noexpand\pgfPT@virgula+4/O,+II\noexpand\pgfPT@virgula+IV/ORoman,2041.4/Tmelt,1768.3/TmeltC,4098/Tboil,3825/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep17\noexpand\pgfPTeDistsep1/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+9\noexpand\pgfPT@virgula6s+1/eConfign,[Xe]::6s+1\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+9/eConfignl,21450/d,25.86/Cp,71.6/kT,fcc/ls,392.35/lsa,/lsb,/lsc,/lsca,1735/DiscY,13/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxxix{Au/CS,196.97/Ar,196.97/Arstar,0/radio,174/R,124/Rcov,137\noexpand\pgfPT@espaco(1+)\noexpand\pgfPT@virgula85\noexpand\pgfPT@espaco(3+)/Rion,890.1/Ei,2.54/eneg,222.75/eaff,+1\noexpand\pgfPT@virgula+3/O,+I\noexpand\pgfPT@virgula+III/ORoman,1337.33/Tmelt,1064.18/TmeltC,3243/Tboil,2970/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep1/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6s+1/eConfign,[Xe]::6s+1\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+10/eConfignl,19300/d,25.418/Cp,318/kT,fcc/ls,407.83/lsa,/lsb,/lsc,/lsca,4000\noexpand\pgfPT@scaletxt{\pgfPTDiscYBCscale}{\noexpand\pgfPT@espaco\noexpand\pgfPT@BClabel}/DiscY,100/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxxx{Hg/CS,200.59/Ar,200.59/Arstar,0/radio,171/R,133/Rcov,119\noexpand\pgfPT@espaco(1+)\noexpand\pgfPT@virgula102\noexpand\pgfPT@espaco(2+)/Rion,1007.1/Ei,2/eneg,0/eaff,+1\noexpand\pgfPT@virgula+2/O,+I\noexpand\pgfPT@virgula+II/ORoman,234.32/Tmelt,-38.83/TmeltC,629.88/Tboil,356.73/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep2/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6s+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+10/eConfignl,13534/d,27.983/Cp,8.3/kT,rho/ls,300.9/lsa,/lsb,/lsc,/lsca,1500\noexpand\pgfPT@scaletxt{\pgfPTDiscYBCscale}{\noexpand\pgfPT@espaco\noexpand\pgfPT@BClabel}/DiscY,3/DiscC,1/spectra,liquido/cor}%
+\def\pgfPT@data@lxxxi{Tl/CS,204.38/Ar,[204.38\noexpand\pgfPT@virgula204.39]/Arstar,0/radio,156/R,144/Rcov,150\noexpand\pgfPT@espaco(1+)\noexpand\pgfPT@virgula88.5\noexpand\pgfPT@espaco(3+)/Rion,589.4/Ei,1.62/eneg,30.88/eaff,+1\noexpand\pgfPT@virgula+3/O,+I\noexpand\pgfPT@virgula+III/ORoman,577/Tmelt,304/TmeltC,1746/Tboil,1473/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep3/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6s+2\noexpand\pgfPT@virgula6p+1/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6p+1/eConfignl,11850/d,26.32/Cp,46.1/kT,hcp/ls,345.66/lsa,/lsb,552.48/lsc,1.6/lsca,1861/DiscY,21/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxxxii{Pb/CS,207.2/Ar,207.2/Arstar,0/radio,154/R,144/Rcov,119\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula77.5\noexpand\pgfPT@espaco(4+)/Rion,715.6/Ei,1.87/eneg,34.42/eaff,+2\noexpand\pgfPT@virgula+4/O,+II\noexpand\pgfPT@virgula+IV/ORoman,600.61/Tmelt,327.46/TmeltC,2022/Tboil,1749/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep4/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6s+2\noexpand\pgfPT@virgula6p+2/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6p+2/eConfignl,11340/d,26.65/Cp,35.3/kT,fcc/ls,495.02/lsa,/lsb,/lsc,/lsca,3800\noexpand\pgfPT@scaletxt{\pgfPTDiscYBCscale}{\noexpand\pgfPT@espaco\noexpand\pgfPT@BClabel}/DiscY,3/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxxxiii{Bi/CS,208.98/Ar,208.98/Arstar,0/radio,143/R,151/Rcov,103\noexpand\pgfPT@espaco(3+)/Rion,703/Ei,2.02/eneg,90.92/eaff,+3/O,+III/ORoman,544.7/Tmelt,271.5/TmeltC,1837/Tboil,1564/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep5/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6s+2\noexpand\pgfPT@virgula6p+3/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6p+3/eConfignl,9780/d,25.52/Cp,7.97/kT,mono/ls,667.4/lsa,611.7/lsb,330.4/lsc,0.5/lsca,1400/DiscY,12/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxxxiv{Po/CS,[209]/Ar,/Arstar,1/radio,135/R,145/Rcov,223\noexpand\pgfPT@espaco(2-)\noexpand\pgfPT@virgula94\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula67\noexpand\pgfPT@espaco(6+)/Rion,812.1/Ei,2/eneg,136/eaff,\noexpand\pgfPT@pm2\noexpand\pgfPT@virgula+4\noexpand\pgfPT@virgula+5\noexpand\pgfPT@virgula+6/O,\noexpand\pgfPT@pm II\noexpand\pgfPT@virgula+IV\noexpand\pgfPT@virgula+V\noexpand\pgfPT@virgula+VI/ORoman,527/Tmelt,254/TmeltC,1235/Tboil,962/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep6/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6s+2\noexpand\pgfPT@virgula6p+4/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6p+4/eConfignl,9196/d,26.4/Cp,0/kT,sc/ls,335.9/lsa,/lsb,/lsc,/lsca,1898/DiscY,5/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxxxv{At/CS,[210]/Ar,/Arstar,1/radio,127/R,147/Rcov,62\noexpand\pgfPT@espaco(7+)/Rion,899.003/Ei,2.2/eneg,233.09/eaff,\noexpand\pgfPT@pm1\noexpand\pgfPT@virgula+3\noexpand\pgfPT@virgula+5\noexpand\pgfPT@virgula+7/O,\noexpand\pgfPT@pm I\noexpand\pgfPT@virgula+III\noexpand\pgfPT@virgula+V\noexpand\pgfPT@virgula+VII/ORoman,575/Tmelt,302/TmeltC,503/Tboil,230/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep7/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6s+2\noexpand\pgfPT@virgula6p+5/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6p+5/eConfignl,---/d,---/Cp,1.7/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1940/DiscY,22/DiscC,0/spectra,solido/cor}%
+\def\pgfPT@data@lxxxvi{Rn/CS,[222]/Ar,/Arstar,1/radio,120/R,142/Rcov,---/Rion,1037/Ei,2.2/eneg,0/eaff,+2\noexpand\pgfPT@virgula+6/O,+II\noexpand\pgfPT@virgula+VI/ORoman,202/Tmelt,-71/TmeltC,211.5/Tboil,-61.7/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8/eDist,[Xe]::4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6s+2\noexpand\pgfPT@virgula6p+6/eConfign,[Xe]::6s+2\noexpand\pgfPT@virgula4f+14\noexpand\pgfPT@virgula5d+10\noexpand\pgfPT@virgula6p+6/eConfignl,9.73/d,20.786/Cp,0.00361/kT,fcc/ls,---/lsa,/lsb,/lsc,/lsca,1899/DiscY,8/DiscC,1/spectra,gasoso/cor}%
+\def\pgfPT@data@lxxxvii{Fr/CS,[223]/Ar,/Arstar,1/radio,---/R,---/Rcov,180\noexpand\pgfPT@espaco(1+)/Rion,380/Ei,0.7/eneg,46.89/eaff,+1/O,+I/ORoman,281/Tmelt,8/TmeltC,890/Tboil,620/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep1/eDist,[Rn]::7s+1/eConfign,[Rn]::7s+1/eConfignl,---/d,31.8/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1939/DiscY,5/DiscC,0/spectra,solido/cor}%
+\def\pgfPT@data@lxxxviii{Ra/CS,[226]/Ar,/Arstar,1/radio,---/R,201/Rcov,148\noexpand\pgfPT@espaco(2+)/Rion,509.3/Ei,0.9/eneg,9.65/eaff,+2/O,+II/ORoman,973/Tmelt,700/TmeltC,2010/Tboil,1737/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Rn]::7s+2/eConfign,[Rn]::7s+2/eConfignl,5500/d,---/Cp,18.6/kT,bcc/ls,514.8/lsa,/lsb,/lsc,/lsca,1898/DiscY,5/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@lxxxix{Ac/CS,[227]/Ar,/Arstar,1/radio,---/R,186/Rcov,106.5\noexpand\pgfPT@espaco(3+)/Rion,499/Ei,1.1/eneg,33.77/eaff,+3/O,+III/ORoman,1323/Tmelt,1050/TmeltC,3471/Tboil,3198/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Rn]::6d+1\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula6d+1/eConfignl,10000/d,27.2/Cp,12/kT,fcc/ls,587/lsa,/lsb,/lsc,/lsca,1902/DiscY,5/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xc{Th/CS,232.04/Ar,232.04/Arstar,1/radio,---/R,175/Rcov,/Rion,587/Ei,1.3/eneg,58.63/eaff,+4/O,+IV/ORoman,2115/Tmelt,1842/TmeltC,5061/Tboil,4788/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep10\noexpand\pgfPTeDistsep2/eDist,[Rn]::6d+2\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula6d+2/eConfignl,11700/d,26.23/Cp,54/kT,fcc/ls,508.42/lsa,/lsb,/lsc,/lsca,1829/DiscY,18/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xci{Pa/CS,231.04/Ar,231.04/Arstar,1/radio,---/R,169/Rcov,90\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula78\noexpand\pgfPT@espaco(5+)/Rion,568/Ei,1.5/eneg,53.03/eaff,+5/O,+V/ORoman,1841/Tmelt,1568/TmeltC,4273/Tboil,4000/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep20\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+2\noexpand\pgfPT@virgula6d+1\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+2\noexpand\pgfPT@virgula6d+1/eConfignl,15370/d,---/Cp,47/kT,tetr/ls,392.5/lsa,/lsb,323.8/lsc,0.82/lsca,1913/DiscY,10/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xcii{U/CS,238.03/Ar,238.03/Arstar,1/radio,---/R,170/Rcov,76\noexpand\pgfPT@espaco(5+)/Rion,597.6/Ei,1.38/eneg,30.39/eaff,+4\noexpand\pgfPT@virgula+6/O,+IV\noexpand\pgfPT@virgula+VI/ORoman,1405.3/Tmelt,1132.2/TmeltC,4404/Tboil,4131/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep21\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+3\noexpand\pgfPT@virgula6d+1\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+3\noexpand\pgfPT@virgula6d+1/eConfignl,19100/d,27.665/Cp,27.5/kT,bcort/ls,285.37/lsa,586.95/lsb,495.48/lsc,1.74/lsca,1789/DiscY,8/DiscC,1/spectra,solido/cor}%
+\def\pgfPT@data@xciii{Np/CS,[237]/Ar,/Arstar,1/radio,---/R,171/Rcov,110\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula87\noexpand\pgfPT@espaco(4+)\noexpand\pgfPT@virgula71\noexpand\pgfPT@espaco(7+)/Rion,604.5/Ei,1.36/eneg,45.85/eaff,+5/O,+V/ORoman,917/Tmelt,644/TmeltC,4273/Tboil,4000/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep22\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+4\noexpand\pgfPT@virgula6d+1\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+4\noexpand\pgfPT@virgula6d+1/eConfignl,20200/d,29.46/Cp,6.3/kT,bcort/ls,666.3/lsa,472.3/lsb,488.7/lsc,0.73/lsca,1940/DiscY,22/DiscC,1/spectra,sintetico/cor}%
+\def\pgfPT@data@xciv{Pu/CS,[244]/Ar,/Arstar,1/radio,---/R,172/Rcov,100\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula74\noexpand\pgfPT@espaco(5+)\noexpand\pgfPT@virgula71\noexpand\pgfPT@espaco(6+)/Rion,584.7/Ei,1.28/eneg,0/eaff,+4/O,+IV/ORoman,912.5/Tmelt,639.4/TmeltC,3501/Tboil,3228/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep24\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+6\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+6/eConfignl,19816/d,35.5/Cp,6.74/kT,mono/ls,618.3/lsa,482.2/lsb,1096.3/lsc,1.77/lsca,1940/DiscY,22/DiscC,1/spectra,sintetico/cor}%
+\def\pgfPT@data@xcv{Am/CS,[243]/Ar,/Arstar,1/radio,---/R,166/Rcov,126\noexpand\pgfPT@espaco(2+)\noexpand\pgfPT@virgula97.5\noexpand\pgfPT@espaco(3+)/Rion,578/Ei,1.13/eneg,9.93/eaff,+3/O,+III/ORoman,1449/Tmelt,1176/TmeltC,2880/Tboil,2607/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep25\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+7\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+7/eConfignl,12000/d,62.7/Cp,10/kT,hex/ls,346.81/lsa,/lsb,1124.1/lsc,3.24/lsca,1944/DiscY,22/DiscC,1/spectra,sintetico/cor}%
+\def\pgfPT@data@xcvi{Cm/CS,[247]/Ar,/Arstar,1/radio,---/R,166/Rcov,97\noexpand\pgfPT@espaco(3+)/Rion,581/Ei,1.28/eneg,27.17/eaff,+3/O,+III/ORoman,1613/Tmelt,1340/TmeltC,3383/Tboil,3110/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep25\noexpand\pgfPTeDistsep9\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+7\noexpand\pgfPT@virgula6d+1\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+7\noexpand\pgfPT@virgula6d+1/eConfignl,13510/d,---/Cp,---/kT,hex/ls,349.6/lsa,/lsb,1133.1/lsc,3.24/lsca,1944/DiscY,22/DiscC,1/spectra,sintetico/cor}%
+\def\pgfPT@data@xcvii{Bk/CS,[247]/Ar,/Arstar,1/radio,---/R,---/Rcov,96\noexpand\pgfPT@espaco(3+)/Rion,601/Ei,1.3/eneg,0/eaff,+3/O,+III/ORoman,1323/Tmelt,1050/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep27\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+9\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+9/eConfignl,14780/d,---/Cp,10/kT,hex/ls,341.6/lsa,/lsb,1106.9/lsc,3.24/lsca,1949/DiscY,22/DiscC,1/spectra,sintetico/cor}%
+\def\pgfPT@data@xcviii{Cf/CS,[251]/Ar,/Arstar,1/radio,---/R,---/Rcov,95\noexpand\pgfPT@espaco(3+)\noexpand\pgfPT@virgula82.1\noexpand\pgfPT@espaco(4+)/Rion,608/Ei,1.3/eneg,0/eaff,+3/O,+III/ORoman,1173/Tmelt,900/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep28\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+10\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+10/eConfignl,15100/d,---/Cp,---/kT,hex/ls,338/lsa,/lsb,1102.5/lsc,3.26/lsca,1950/DiscY,22/DiscC,1/spectra,sintetico/cor}%
+\def\pgfPT@data@xcix{Es/CS,[252]/Ar,/Arstar,1/radio,---/R,---/Rcov,83.5\noexpand\pgfPT@espaco(3+)/Rion,619/Ei,1.3/eneg,0/eaff,+3/O,+III/ORoman,1133/Tmelt,860/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep29\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+11\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+11/eConfignl,8840/d,---/Cp,---/kT,fcc/ls,575/lsa,/lsb,/lsc,/lsca,1952/DiscY,22/DiscC,1/spectra,sintetico/cor}%
+\def\pgfPT@data@c{Fm/CS,[257]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,627/Ei,1.3/eneg,33.96/eaff,+3/O,+III/ORoman,1800/Tmelt,1527/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep30\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+12\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+12/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1952/DiscY,22/DiscC,0/spectra,sintetico/cor}%
+\def\pgfPT@data@ci{Md/CS,[258]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,635/Ei,1.3/eneg,93.91/eaff,+3/O,+III/ORoman,1100/Tmelt,827/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep31\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+13\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+13/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1955/DiscY,22/DiscC,0/spectra,sintetico/cor}%
+\def\pgfPT@data@cii{No/CS,[259]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,642/Ei,1.3/eneg,0/eaff,+2/O,+II/ORoman,1100/Tmelt,827/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1966/DiscY,24/DiscC,0/spectra,sintetico/cor}%
+\def\pgfPT@data@ciii{Lr/CS,[266]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,470/Ei,1.3/eneg,0/eaff,+3/O,+III/ORoman,1900/Tmelt,1627/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep3/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula7s+2\noexpand\pgfPT@virgula7p+1/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula7p+1/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1961/DiscY,22/DiscC,0/spectra,sintetico/cor}%
+\def\pgfPT@data@civ{Rf/CS,[267]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-580/Ei,---/eneg,---/eaff,+4/O,+IV/ORoman,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep10\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+2\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+2/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1969/DiscY,16/DiscC,0/spectra,sintetico/cor}%
+\def\pgfPT@data@cv{Db/CS,[268]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-665/Ei,---/eneg,---/eaff,+5/O,+V/ORoman,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep11\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+3\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+3/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1970/DiscY,16/DiscC,0/spectra,sintetico/cor}%
+\def\pgfPT@data@cvi{Sg/CS,[269]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-757/Ei,---/eneg,---/eaff,+6/O,+VI/ORoman,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep12\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+4\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+4/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1974/DiscY,22/DiscC,0/spectra,sintetico/cor}%
+\def\pgfPT@data@cvii{Bh/CS,[270]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-740/Ei,---/eneg,---/eaff,+7/O,+VII/ORoman,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep13\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+5\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+5/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1981/DiscY,8/DiscC,0/spectra,sintetico/cor}%
+\def\pgfPT@data@cviii{Hs/CS,[270]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-730/Ei,---/eneg,---/eaff,+8/O,+VIII/ORoman,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep14\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+6\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+6/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1984/DiscY,8/DiscC,0/spectra,sintetico/cor}%
+\def\pgfPT@data@cix{Mt/CS,[278]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-800/Ei,---/eneg,---/eaff,---/O,---/ORoman,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep15\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+7\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+7/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1982/DiscY,8/DiscC,0/spectra,sintetico/cor}%
+\def\pgfPT@data@cx{Ds/CS,[281]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-960/Ei,---/eneg,---/eaff,---/O,---/ORoman,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep16\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+8\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+8/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1994/DiscY,8/DiscC,0/spectra,sintetico/cor}%
+\def\pgfPT@data@cxi{Rg/CS,[282]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-1020/Ei,---/eneg,151/eaff,---/O,---/ORoman,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep17\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+9\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+9/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1994/DiscY,8/DiscC,0/spectra,sintetico/cor}%
+\def\pgfPT@data@cxii{Cn/CS,[285]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-1155/Ei,---/eneg,---/eaff,+2/O,+II/ORoman,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep2/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7s+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+10/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1996/DiscY,8/DiscC,0/spectra,sintetico/cor}%
+\def\pgfPT@data@cxiii{Nh/CS,[286]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-707.2/Ei,---/eneg,66.6/eaff,---/O,---/ORoman,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep3/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7s+2\noexpand\pgfPT@virgula7p+1/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7p+1/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,2004/DiscY,16/DiscC,0/spectra,sintetico/cor}%
+\def\pgfPT@data@cxiv{Fl/CS,[289]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-832.2/Ei,---/eneg,---/eaff,---/O,---/ORoman,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep4/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7s+2\noexpand\pgfPT@virgula7p+2/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7p+2/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,1998/DiscY,15/DiscC,0/spectra,sintetico/cor}%
+\def\pgfPT@data@cxv{Mc/CS,[290]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-538.3/Ei,---/eneg,35.3/eaff,---/O,---/ORoman,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep5/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7s+2\noexpand\pgfPT@virgula7p+3/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7p+3/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,2003/DiscY,16/DiscC,0/spectra,sintetico/cor}%
+\def\pgfPT@data@cxvi{Lv/CS,[293]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-663.9/Ei,---/eneg,74.9/eaff,---/O,---/ORoman,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep6/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7s+2\noexpand\pgfPT@virgula7p+4/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7p+4/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,2000/DiscY,15/DiscC,0/spectra,sintetico/cor}%
+\def\pgfPT@data@cxvii{Ts/CS,[294]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-736.9/Ei,---/eneg,165.9/eaff,---/O,---/ORoman,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep7/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7s+2\noexpand\pgfPT@virgula7p+5/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7p+5/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,2009/DiscY,100/DiscC,0/spectra,sintetico/cor}%
+\def\pgfPT@data@cxviii{Og/CS,[294]/Ar,/Arstar,1/radio,---/R,---/Rcov,---/Rion,-860.1/Ei,---/eneg,5.4/eaff,---/O,---/ORoman,---/Tmelt,---/TmeltC,---/Tboil,---/TboilC,2\noexpand\pgfPTeDistsep8\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep32\noexpand\pgfPTeDistsep18\noexpand\pgfPTeDistsep8/eDist,[Rn]::5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7s+2\noexpand\pgfPT@virgula7p+6/eConfign,[Rn]::7s+2\noexpand\pgfPT@virgula5f+14\noexpand\pgfPT@virgula6d+10\noexpand\pgfPT@virgula7p+6/eConfignl,---/d,---/Cp,---/kT,---/ls,---/lsa,/lsb,/lsc,/lsca,2002/DiscY,16/DiscC,0/spectra,sintetico/cor}%
\endinput
diff --git a/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.drawing.keys.tex b/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.drawing.keys.tex
index 8c09f620e15..140577bcce1 100644
--- a/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.drawing.keys.tex
+++ b/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.drawing.keys.tex
@@ -189,6 +189,12 @@ group label color/.default=blue!50!black,%
label LaAc font/.get=\pgfPTlabLaAcfont,%
label LaAc font/.store in=\pgfPTlabLaAcfont,%
label LaAc font/.default=\footnotesize\itshape,%
+group numbers/.get=\pgfPTgrnum,% new in v2.1.1
+group numbers/.store in=\pgfPTgrnum,%
+group numbers/.default=arabic,%
+Roman label color/.get=\pgfPTRomanlabgrcolor,% new in v2.1.1
+Roman label color/.store in=\pgfPTRomanlabgrcolor,%
+Roman label color/.default=blue!70!white,%
LaAc/.code=\pgfPT@LaAcstyle{#1},%
LaAc/.default={s=true,f=\footnotesize\itshape},%
per/.code=\pgfPT@perstyle{#1},%
@@ -199,7 +205,30 @@ per+gr/.code=\pgfPT@pergrstyle{#1},%
per+gr/.default={pc=red!50!black,gc=blue!50!black,f=\small\bfseries}%
}%
% setting keys with default values ---------------------------------------------------------------
-\pgfkeys{/pgfPerTable/.cd,label font,period label color,group label color,label LaAc font}%
+\pgfkeys{/pgfPerTable/.cd,label font,period label color,group label color,label LaAc font,group numbers,Roman label color}%
+% Groups in 'old' Roman numerals
+% CAS (USA) ; old IUPAC (Europe) ->
+\newif\ifpgfPT@grRoman@CAS\newif\ifpgfPT@grRoman\newif\ifpgfPT@grarabic%
+\def\pgfPT@gr@numbers#1{\edef\@pgfPT@grnum@atual{#1}\relax%
+\edef\@pgfPT@grnum@CAS{CAS}\edef\@pgfPT@grnum@IUPAC{IUPAC}%
+\edef\@pgfPT@grnum@CASarabic{CAS*}\edef\@pgfPT@grnum@IUPACarabic{IUPAC*}%
+\pgfPT@grRoman@CASfalse\pgfPT@grRomanfalse\pgfPT@grarabicfalse%
+\ifx\@pgfPT@grnum@atual\@pgfPT@grnum@CAS\relax\pgfPT@grRoman@CAStrue\pgfPT@grRomantrue\else%
+\ifx\@pgfPT@grnum@atual\@pgfPT@grnum@IUPAC\relax\pgfPT@grRomantrue\else%
+\ifx\@pgfPT@grnum@atual\@pgfPT@grnum@CASarabic\relax\pgfPT@grRoman@CAStrue\pgfPT@grRomantrue\pgfPT@grarabictrue\else%
+\ifx\@pgfPT@grnum@atual\@pgfPT@grnum@IUPACarabic\relax\pgfPT@grRomantrue\pgfPT@grarabictrue\fi\fi\fi\fi%
+}%
+\def\pgfPT@gr@Roman#1{\edef\@pgfPT@Z@atual{#1}\relax%
+\ifpgfPT@grRoman@CAS% CAS
+\ifcase\@pgfPT@Z@atual\relax\or I\hspace{.1ex}A\or II\hspace{.1ex}A\or III\hspace{.1ex}B\or IV\hspace{.1ex}B\or V\hspace{.1ex}B\or VI\hspace{.1ex}B\or VII\hspace{.1ex}B\or%
+\tikz{\path (0,0);\draw[line width=.2ex] (.1*\pgfPTcellwd,-.55ex) -- (.1*\pgfPTcellwd,0) -- (1.2*\pgfPTcellwd,0);}\or VIII\hspace{.1ex}B\or\tikz[xscale=-1]{\path (0,0);\draw[line width=.2ex] (.1*\pgfPTcellwd,-.55ex) -- (.1*\pgfPTcellwd,0) -- (1.2*\pgfPTcellwd,0);}%
+\or I\hspace{.1ex}B\or II\hspace{.1ex}B\or III\hspace{.1ex}A\or IV\hspace{.1ex}A\or V\hspace{.1ex}A\or VI\hspace{.1ex}A\or VII\hspace{.1ex}A\or VIII\hspace{.1ex}A\fi%
+\else% old IUPAC
+\ifcase\@pgfPT@Z@atual\relax\or I\hspace{.1ex}A\or II\hspace{.1ex}A\or III\hspace{.1ex}A\or IV\hspace{.1ex}A\or V\hspace{.1ex}A\or VI\hspace{.1ex}A\or VII\hspace{.1ex}A\or
+\tikz{\path (0,0);\draw[line width=.2ex] (.1*\pgfPTcellwd,-.55ex) -- (.1*\pgfPTcellwd,0) -- (1.2*\pgfPTcellwd,0);}\or VIII\hspace{.1ex}A\or\tikz[xscale=-1]{\path (0,0);\draw[line width=.2ex] (.1*\pgfPTcellwd,-.55ex) -- (.1*\pgfPTcellwd,0) -- (1.2*\pgfPTcellwd,0);}%
+\or I\hspace{.1ex}B\or II\hspace{.1ex}B\or III\hspace{.1ex}B\or IV\hspace{.1ex}B\or V\hspace{.1ex}B\or VI\hspace{.1ex}B\or VII\hspace{.1ex}B\or0\fi%
+\fi%
+}%
% end !! PGF keys: labels of periods and groups ------------------------------------------------
%
% defining PGF keys: the cells of the periodic table to be drawn -------------------------------
@@ -347,7 +376,7 @@ name color/.store in=\pgfPTnamecolor,%
name color/.default=black,%
name font/.get=\pgfPTnamefont,%
name font/.store in=\pgfPTnamefont,%
-name font/.default=\fontseries{l}\selectfont\tiny,%
+name font/.default=\tiny,% \fontseries{l}\selectfont (removed @ v2.1.2)
name align/.get=\pgfPTnamealign,% new v1.0.0
name align/.store in=\pgfPTnamealign,% left|center|right
name align/.default=center%
@@ -444,16 +473,18 @@ eaff font/.default=\tiny\bfseries%
% setting keys with default values -----------------------------------------------------------------
\pgfkeys{/pgfPerTable/.cd,eaff color,eaff font}%
% end !!
+\newif\ifpgfPTORoman% new in v2.1.1
\pgfkeys{/pgfPerTable/.cd,%
O color/.get=\pgfPTOcolor,%
O color/.store in=\pgfPTOcolor,%
O color/.default=black,%
O font/.get=\pgfPTOfont,%
O font/.store in=\pgfPTOfont,%
-O font/.default=\tiny\bfseries%
+O font/.default=\tiny\bfseries,%
+O Roman/.is if=pgfPTORoman% new in v2.1.1
}%
% setting keys with default values -----------------------------------------------------------------
-\pgfkeys{/pgfPerTable/.cd,O color,O font}%
+\pgfkeys{/pgfPerTable/.cd,O color,O font,O Roman=false}%
% end !!
\pgfkeys{/pgfPerTable/.cd,%
Tmelt color/.get=\pgfPTTmeltcolor,%
diff --git a/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.names.tex b/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.names.tex
index 2c321dcd349..d4135f61b98 100644
--- a/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.names.tex
+++ b/Master/texmf-dist/tex/latex/pgf-periodictable/pgfPT.names.tex
@@ -27,7 +27,7 @@
\def\pgfPT@nomes@iii{l\'{i}tio/pt,lithium/en,lithium/fr,Lithium/de,litio/it,litio/es,l\'{i}tio/br,\pgfPT@user@CSname@Li/user}%
\def\pgfPT@nomes@iv{ber\'{i}lio/pt,beryllium/en,b\'{e}ryllium/fr,Beryllium/de,berillio/it,berilio/es,ber\'{i}lio/br,\pgfPT@user@CSname@Be/user}%
\def\pgfPT@nomes@v{boro/pt,boron/en,bore/fr,Bor/de,boro/it,boro/es,boro/br,\pgfPT@user@CSname@B/user}%
-\def\pgfPT@nomes@vi{carbono/pt,carbon/en,carbone/fr,Kohlenstoff/de,carbonio/it,carb\'{o}n/es,carbono/br,\pgfPT@user@CSname@C/user}%
+\def\pgfPT@nomes@vi{carbono/pt,carbon/en,carbone/fr,Kohlenstoff/de,carbonio/it,carbono/es,carbono/br,\pgfPT@user@CSname@C/user}%
\def\pgfPT@nomes@vii{azoto/pt,nitrogen/en,azote/fr,Stickstoff/de,azoto/it,nitr\'{o}geno/es,nitrog\^{e}nio/br,\pgfPT@user@CSname@N/user}%
\def\pgfPT@nomes@viii{oxig\'{e}nio/pt,oxygen/en,oxyg\`{e}ne/fr,Sauerstoff/de,ossigeno/it,ox\'{i}geno/es,oxig\^{e}nio/br,\pgfPT@user@CSname@O/user}%
\def\pgfPT@nomes@ix{fl\'{u}or/pt,fluorine/en,fluor/fr,Fluor/de,fluoro/it,fl\'{u}or/es,fl\'{u}or/br,\pgfPT@user@CSname@F/user}%
@@ -47,7 +47,7 @@
\def\pgfPT@nomes@xxiii{van\'{a}dio/pt,vanadium/en,vanadium/fr,Vanadium/de,vanadio/it,vanadio/es,van\'{a}dio/br,\pgfPT@user@CSname@V/user}%
\def\pgfPT@nomes@xxiv{cr\'{o}mio/pt,chromium/en,chrome/fr,Chrom/de,cromo/it,cromo/es,cr\^{o}mio/br,\pgfPT@user@CSname@Cr/user}%
\def\pgfPT@nomes@xxv{mangan\'{e}sio/pt,manganese/en,mangan\`{e}se/fr,Mangan/de,manganese/it,manganeso/es,mangan\^{e}s/br,\pgfPT@user@CSname@Mn/user}%
-\def\pgfPT@nomes@xxvi{ferro/pt,iron/en,fer/fr,Eisen/de,ferro/it,planchar/es,ferro/br,\pgfPT@user@CSname@Fe/user}%
+\def\pgfPT@nomes@xxvi{ferro/pt,iron/en,fer/fr,Eisen/de,ferro/it,hierro/es,ferro/br,\pgfPT@user@CSname@Fe/user}%
\def\pgfPT@nomes@xxvii{cobalto/pt,cobalt/en,cobalt/fr,Kobalt/de,cobalto/it,cobalto/es,cobalto/br,\pgfPT@user@CSname@Co/user}%
\def\pgfPT@nomes@xxviii{n\'{i}quel/pt,nickel/en,nickel/fr,Nickel/de,nichel/it,n\'{i}quel/es,n\'{i}quel/br,\pgfPT@user@CSname@Ni/user}%
\def\pgfPT@nomes@xxix{cobre/pt,copper/en,cuivre/fr,Kupfer/de,rame/it,cobre/es,cobre/br,\pgfPT@user@CSname@Cu/user}%
@@ -82,7 +82,7 @@
\def\pgfPT@nomes@lviii{c\'{e}rio/pt,cerium/en,c\'{e}rium/fr,Cer/de,cerio/it,cerio/es,c\'{e}rio/br,\pgfPT@user@CSname@Ce/user}%
\def\pgfPT@nomes@lix{praseod\'{i}mio/pt,praseodymium/en,pras\'{e}odyme/fr,Praseodym/de,praseodimio/it,praseodimio/es,praseod\'{i}mio/br,\pgfPT@user@CSname@Pr/user}%
\def\pgfPT@nomes@lx{neod\'{i}mio/pt,neodymium/en,n\'{e}odyme/fr,Neodym/de,neodimio/it,neodimio/es,neod\'{i}mio/br,\pgfPT@user@CSname@Nd/user}%
-\def\pgfPT@nomes@lxi{prom\'{e}cio/pt,promethium/en,prom\'{e}thium/fr,Promethium/de,prometeo/it,prometeo/es,prom\'{e}cio/br,\pgfPT@user@CSname@Pm/user}%
+\def\pgfPT@nomes@lxi{prom\'{e}cio/pt,promethium/en,prom\'{e}thium/fr,Promethium/de,prometeo/it,prometio/es,prom\'{e}cio/br,\pgfPT@user@CSname@Pm/user}%
\def\pgfPT@nomes@lxii{sam\'{a}rio/pt,samarium/en,samarium/fr,Samarium/de,samario/it,samario/es,sam\'{a}rio/br,\pgfPT@user@CSname@Sm/user}%
\def\pgfPT@nomes@lxiii{eur\'{o}pio/pt,europium/en,europium/fr,Europium/de,europium/it,europio/es,eur\'{o}pio/br,\pgfPT@user@CSname@Eu/user}%
\def\pgfPT@nomes@lxiv{gadol\'{i}nio/pt,gadolinium/en,gadolinium/fr,Gadolinium/de,gadolinio/it,gadolinio/es,gadol\'{i}nio/br,\pgfPT@user@CSname@Gd/user}%
@@ -124,20 +124,20 @@
\def\pgfPT@nomes@c{f\'{e}rmio/pt,fermium/en,fermium/fr,Rermium/de,fermium/it,fermio/es,f\'{e}rmio/br,\pgfPT@user@CSname@Fm/user}%
\def\pgfPT@nomes@ci{mendel\'{e}vio/pt,mendelevium/en,mendelevium/fr,Mendelevium/de,mendelevio/it,mendelevio/es,mendel\'{e}vio/br,\pgfPT@user@CSname@Md/user}%
\def\pgfPT@nomes@cii{nob\'{e}lio/pt,nobelium/en,nobelium/fr,Nobelium/de,nobelium/it,nobelio/es,nob\'{e}lio/br,\pgfPT@user@CSname@No/user}%
-\def\pgfPT@nomes@ciii{laur\^{e}ncio/pt,lawrencium/en,lawrencium/fr,Lawrencium/de,laurenzio/it,lawrencium/es,laur\^{e}ncio/br,\pgfPT@user@CSname@Lr/user}%
+\def\pgfPT@nomes@ciii{laur\^{e}ncio/pt,lawrencium/en,lawrencium/fr,Lawrencium/de,laurenzio/it,lawrencio/es,laur\^{e}ncio/br,\pgfPT@user@CSname@Lr/user}%
\def\pgfPT@nomes@civ{rutherf\'{o}rdio/pt,rutherfordium/en,rutherfordium/fr,Rutherfordium/de,rutherfordium/it,rutherfordio/es,rutherf\'{o}rdio/br,\pgfPT@user@CSname@Rf/user}%
-\def\pgfPT@nomes@cv{d\'{u}bnio/pt,dubnium/en,dubnium/fr,Dubnium/de,dubnio/it,dubnium/es,d\'{u}bnio/br,\pgfPT@user@CSname@Db/user}%
+\def\pgfPT@nomes@cv{d\'{u}bnio/pt,dubnium/en,dubnium/fr,Dubnium/de,dubnio/it,dubnio/es,d\'{u}bnio/br,\pgfPT@user@CSname@Db/user}%
\def\pgfPT@nomes@cvi{seab\'{o}rgio/pt,seaborgium/en,seaborgium/fr,Seaborgium/de,seaborgio/it,seaborgio/es,seab\'{o}rgio/br,\pgfPT@user@CSname@Sg/user}%
-\def\pgfPT@nomes@cvii{b\'{o}rio/pt,bohrium/en,bohrium/fr,Bohrium/de,bohrio/it,bohrium/es,b\'{o}hrio/br,\pgfPT@user@CSname@Bh/user}%
-\def\pgfPT@nomes@cviii{h\'{a}ssio/pt,hassium/en,hassium/fr,Hassium/de,hassio/it,hassium/es,h\'{a}ssio/br,\pgfPT@user@CSname@Hs/user}%
+\def\pgfPT@nomes@cvii{b\'{o}rio/pt,bohrium/en,bohrium/fr,Bohrium/de,bohrio/it,bohrio/es,b\'{o}hrio/br,\pgfPT@user@CSname@Bh/user}%
+\def\pgfPT@nomes@cviii{h\'{a}ssio/pt,hassium/en,hassium/fr,Hassium/de,hassio/it,hasio/es,h\'{a}ssio/br,\pgfPT@user@CSname@Hs/user}%
\def\pgfPT@nomes@cix{meitn\'{e}rio/pt,meitnerium/en,meitnerium/fr,Meitnerium/de,meitnerio/it,meitnerio/es,meitn\'{e}rio/br,\pgfPT@user@CSname@Mt/user}%
-\def\pgfPT@nomes@cx{darmst\'{a}dio/pt,darmstadtium/en,darmstadtium/fr,Darmstadtium/de,darmstadtium/it,darmstadtium/es,darmst\'{a}dtio/br,\pgfPT@user@CSname@Ds/user}%
+\def\pgfPT@nomes@cx{darmst\'{a}dio/pt,darmstadtium/en,darmstadtium/fr,Darmstadtium/de,darmstadtium/it,darmstatio/es,darmst\'{a}dtio/br,\pgfPT@user@CSname@Ds/user}%
\def\pgfPT@nomes@cxi{roentg\'{e}nio/pt,roentgenium/en,roentgenium/fr,R\"{o}ntgenium/de,roentgenio/it,roentgenio/es,roentg\^{e}nio/br,\pgfPT@user@CSname@Rg/user}%
\def\pgfPT@nomes@cxii{copern\'{i}cio/pt,copernicium/en,copernicium/fr,Copernicium/de,copernicium/it,copernicio/es,copern\'{i}cio/br,\pgfPT@user@CSname@Cn/user}%
\def\pgfPT@nomes@cxiii{nip\'{o}nio/pt,nihonium/en,nihonium/fr,Nihonium/de,nihonium/it,nihonio/es,nip\^{o}nio/br,\pgfPT@user@CSname@Nh/user}%
\def\pgfPT@nomes@cxiv{fler\'{o}vio/pt,flerovium/en,flerovium/fr,Flerovium/de,flerovio/it,flerovio/es,fler\'{o}vio/br,\pgfPT@user@CSname@Fl/user}%
\def\pgfPT@nomes@cxv{mosc\'{o}vio/pt,moscovium/en,moscovium/fr,Moscovium/de,moscovium/it,moscovio/es,mosc\'{o}vio/br,\pgfPT@user@CSname@Mc/user}%
-\def\pgfPT@nomes@cxvi{liverm\'{o}rio/pt,livermorium/en,livermorium/fr,Livermorium/de,livermorio/it,livermorium/es,liverm\'{o}rio/br,\pgfPT@user@CSname@Lv/user}%
+\def\pgfPT@nomes@cxvi{liverm\'{o}rio/pt,livermorium/en,livermorium/fr,Livermorium/de,livermorio/it,livermorio/es,liverm\'{o}rio/br,\pgfPT@user@CSname@Lv/user}%
\def\pgfPT@nomes@cxvii{tenesso/pt,tennessine/en,tennessine/fr,Tenness/de,tennessine/it,teneso/es,tenesso/br,\pgfPT@user@CSname@Ts/user}%
\def\pgfPT@nomes@cxviii{ogan\'{e}sson/pt,oganesson/en,oganesson/fr,Oganesson/de,oganesson/it,oganes\'{o}n/es,oganess\^{o}nio/br,\pgfPT@user@CSname@Og/user}%
\endinput%
diff --git a/Master/texmf-dist/tex/latex/pgf-spectra/pgf-spectra.data.LSE.tex b/Master/texmf-dist/tex/latex/pgf-spectra/pgf-spectra.data.LSE.tex
index 53303b35f6c..9bb4004bfb6 100644
--- a/Master/texmf-dist/tex/latex/pgf-spectra/pgf-spectra.data.LSE.tex
+++ b/Master/texmf-dist/tex/latex/pgf-spectra/pgf-spectra.data.LSE.tex
@@ -31,12 +31,12 @@
% (see Es, Bk...)
%
\protected\def\pgfspectra@elt@data#1{\relax\ignorespaces\global\pgfspectra@datanotfoundtrue\relax%
-\pgfspectra@elt@search{#1}{H}{[92.6226 15 0],[93.0748 20 0],[93.7803 30 0],[94.9743 50 0],[97.2537 100 0],[102.5722 300 0],[121.5668 1000 0],[121.5674 500 0],[383.5384 5 0],[388.9049 6 0],[397.0072 8 0],[410.174 15 0],[434.047 30 0],[486.133 80 0],[656.272 120 0],[656.2852 180 0],[954.597 5 0],[1004.94 7 0],[1093.81 12 0],[1281.81 20 0],[1875.1 40 0],[2165.5301 5 0],[2625.15 8 0],[4051.1602 15 0],[4652.5102 4 0],[7457.8 6 0],[12368.5 3 0]}{ALLx1000x1000x0x0x0x0x0}{UVx1000x1000x0x0x0x0x0}{VISx180x180x0x0x0x0x0}{IVx40x40x0x0x0x0x0}%
-\pgfspectra@elt@search{#1}{He}{[23.1454 15 1],[23.2584 20 1],[23.4347 30 1],[23.7331 50 1],[24.3027 100 1],[25.6317 300 1],[30.378 1000 1],[30.3786 500 1],[32.0293 10 0],[50.55 2 0],[50.5684 3 0],[50.5912 4 0],[50.62 5 0],[50.657 7 0],[50.7058 10 0],[50.7718 15 0],[50.8643 20 0],[50.9998 25 0],[51.2098 35 0],[51.5616 50 0],[52.2213 100 0],[53.703 400 0],[58.4334 1000 0],[59.1412 50 0],[95.87 5 1],[97.211 6 1],[99.236 8 1],[102.527 15 1],[108.494 30 1],[121.509 35 1],[121.517 50 1],[164.034 120 1],[164.047 180 1],[238.54 7 1],[251.12 9 1],[257.76 50 0],[272.319 1 0],[273.33 12 1],[276.38 2 0],[281.82 10 0],[282.908 4 0],[294.511 10 0],[301.37 40 0],[318.774 20 0],[320.296 3 1],[320.31 15 1],[335.455 1 0],[344.759 2 0],[358.727 1 0],[361.364 3 0],[363.423 2 0],[370.5 3 0],[373.286 1 0],[381.9607 10 0],[381.976 1 0],[388.865 500 0],[396.4729 20 0],[400.927 1 0],[402.6191 50 0],[402.636 5 0],[412.082 12 0],[412.099 2 0],[414.376 3 0],[438.7929 10 0],[443.755 3 0],[447.1479 200 0],[447.168 25 0],[468.54 6 1],[468.57 30 1],[471.3146 30 0],[471.338 4 0],[492.1931 20 0],[501.5678 100 0],[504.774 10 0],[541.152 5 1],[587.562 500 0],[587.597 100 0],[656.01 8 1],[667.815 100 0],[686.748 3 0],[706.519 200 0],[706.571 30 0],[728.135 50 0],[781.615 1 0],[836.169 2 0],[906.327 2 0],[921.034 2 0],[946.361 10 0],[951.66 4 0],[952.617 3 0],[952.927 1 0],[960.342 1 0],[970.26 3 0],[1002.773 6 0],[1003.116 2 0],[1012.36 15 1],[1013.85 1 0],[1031.123 10 0],[1031.154 2 0],[1066.765 3 0],[1082.909 300 0],[1083.025 1000 0],[1083.034 2000 0],[1091.305 9 0],[1091.71 3 0],[1162.64 4 1],[1196.912 30 0],[1252.752 20 0],[1278.499 50 0],[1279.057 20 0],[1284.596 7 0],[1296.845 10 0],[1298.489 2 0],[1508.364 12 0],[1700.2471 200 0],[1855.5551 1 0],[1863.6801 6 1],[1868.534 500 0],[1869.723 200 0],[1908.9381 100 0],[1954.308 20 0],[2058.1301 1000 0],[2112.007 80 0],[2112.143 10 0],[2113.2029 20 0],[3090.85 3 1],[4047.8898 4 0]}{ALLx2000x2000x1000x0x0x0x0}{UVx1000x1000x1000x0x0x0x0}{VISx500x500x30x0x0x0x0}{IVx2000x2000x15x0x0x0x0}%
+\pgfspectra@elt@search{#1}{H}{[92.6226 15 0],[93.0748 20 0],[93.7803 30 0],[94.9743 50 0],[97.2537 100 0],[102.5722 300 0],[121.5668 1000 0],[121.5674 500 0],[383.5384 5 0],[388.9049 6 0],[397.0072 8 0],[410.174 15 0],[434.047 30 0],[486.133 80 0],[656.272 120 0],[656.2852 180 0],[954.597 5 0],[1004.94 7 0],[1093.81 12 0],[1281.81 20 0],[1875.1 40 0],[2165.5301 5 0],[2625.15 8 0]}{ALLx1000x1000x0x0x0x0x0}{UVx1000x1000x0x0x0x0x0}{VISx180x180x0x0x0x0x0}{IVx40x40x0x0x0x0x0}%,[4051.1602 15 0],[4652.5102 4 0],[7457.8 6 0],[12368.5 3 0]
+\pgfspectra@elt@search{#1}{He}{[23.1454 15 1],[23.2584 20 1],[23.4347 30 1],[23.7331 50 1],[24.3027 100 1],[25.6317 300 1],[30.378 1000 1],[30.3786 500 1],[32.0293 10 0],[50.55 2 0],[50.5684 3 0],[50.5912 4 0],[50.62 5 0],[50.657 7 0],[50.7058 10 0],[50.7718 15 0],[50.8643 20 0],[50.9998 25 0],[51.2098 35 0],[51.5616 50 0],[52.2213 100 0],[53.703 400 0],[58.4334 1000 0],[59.1412 50 0],[95.87 5 1],[97.211 6 1],[99.236 8 1],[102.527 15 1],[108.494 30 1],[121.509 35 1],[121.517 50 1],[164.034 120 1],[164.047 180 1],[238.54 7 1],[251.12 9 1],[257.76 50 0],[272.319 1 0],[273.33 12 1],[276.38 2 0],[281.82 10 0],[282.908 4 0],[294.511 10 0],[301.37 40 0],[318.774 20 0],[320.296 3 1],[320.31 15 1],[335.455 1 0],[344.759 2 0],[358.727 1 0],[361.364 3 0],[363.423 2 0],[370.5 3 0],[373.286 1 0],[381.9607 10 0],[381.976 1 0],[388.865 500 0],[396.4729 20 0],[400.927 1 0],[402.6191 50 0],[402.636 5 0],[412.082 12 0],[412.099 2 0],[414.376 3 0],[438.7929 10 0],[443.755 3 0],[447.1479 200 0],[447.168 25 0],[468.54 6 1],[468.57 30 1],[471.3146 30 0],[471.338 4 0],[492.1931 20 0],[501.5678 100 0],[504.774 10 0],[541.152 5 1],[587.562 500 0],[587.597 100 0],[656.01 8 1],[667.815 100 0],[686.748 3 0],[706.519 200 0],[706.571 30 0],[728.135 50 0],[781.615 1 0],[836.169 2 0],[906.327 2 0],[921.034 2 0],[946.361 10 0],[951.66 4 0],[952.617 3 0],[952.927 1 0],[960.342 1 0],[970.26 3 0],[1002.773 6 0],[1003.116 2 0],[1012.36 15 1],[1013.85 1 0],[1031.123 10 0],[1031.154 2 0],[1066.765 3 0],[1082.909 300 0],[1083.025 1000 0],[1083.034 2000 0],[1091.305 9 0],[1091.71 3 0],[1162.64 4 1],[1196.912 30 0],[1252.752 20 0],[1278.499 50 0],[1279.057 20 0],[1284.596 7 0],[1296.845 10 0],[1298.489 2 0],[1508.364 12 0],[1700.2471 200 0],[1855.5551 1 0],[1863.6801 6 1],[1868.534 500 0],[1869.723 200 0],[1908.9381 100 0],[1954.308 20 0],[2058.1301 1000 0],[2112.007 80 0],[2112.143 10 0],[2113.2029 20 0],[3090.85 3 1]}{ALLx2000x2000x1000x0x0x0x0}{UVx1000x1000x1000x0x0x0x0}{VISx500x500x30x0x0x0x0}{IVx2000x2000x15x0x0x0x0}%,[4047.8898 4 0]
\pgfspectra@elt@search{#1}{Li}{[149.293 3 1],[149.297 5 1],[149.304 1 1],[165.308 3 1],[165.313 5 1],[165.321 1 1],[233.688 3 1],[233.691 5 1],[233.7 2 1],[239.439 1 0],[242.543 3 0],[247.506 10 0],[255.17 24 1],[256.231 15 0],[265.729 2 1],[265.73 3 1],[272.824 0 1],[272.829 5 1],[272.832 2 1],[273.047 3 1],[273.055 1 1],[274.12 5 0],[293.402 2 1],[293.407 2 1],[293.412 5 1],[293.425 1 1],[302.912 3 1],[302.914 3 1],[315.531 3 1],[315.533 4 1],[319.626 1 1],[319.633 9 1],[319.636 4 1],[319.933 5 1],[319.943 2 1],[323.266 17 0],[371.4 1 1],[371.416 5 1],[371.427 6 1],[371.429 8 1],[371.44 7 1],[371.441 10 1],[371.451 1 1],[371.458 0 1],[371.87 3 0],[379.472 6 0],[391.53 20 0],[391.535 20 0],[398.548 10 0],[398.554 10 0],[413.256 40 0],[413.262 40 0],[427.307 20 0],[427.313 20 0],[432.542 5 1],[432.547 5 1],[432.554 1 1],[460.283 13 0],[460.289 13 0],[467.151 0 1],[467.165 6 1],[467.17 2 1],[467.806 3 1],[467.829 1 1],[488.132 4 1],[488.139 4 1],[488.149 1 1],[497.166 8 0],[497.175 8 0],[548.355 600 1],[548.565 600 1],[610.354 320 0],[610.365 320 0],[670.776 3600 0],[670.791 3600 0],[812.623 48 0],[812.645 48 0]}{ALLx3600x3600x600x0x0x0x0}{UVx24x17x24x0x0x0x0}{VISx3600x3600x600x0x0x0x0}{IVx48x48x0x0x0x0x0}%
-\pgfspectra@elt@search{#1}{Be}{[7.61 1 2],[7.648 2 2],[7.853 3 2],[7.866 4 2],[7.892 1 2],[8.189 5 2],[8.238 10 2],[8.32 20 2],[8.476 30 2],[8.831 50 2],[10.025 100 2],[50.999 3 2],[54.931 2 2],[58.208 6 2],[66.132 4 2],[67.559 8 2],[72.559 4 2],[72.571 5 1],[74.358 5 1],[74.623 7 2],[76.775 2 2],[77.537 8 1],[84.206 20 1],[92.525 2 1],[94.356 10 1],[97.327 10 1],[102.693 8 1],[103.632 5 1],[104.823 15 1],[111.469 1 2],[114.303 20 1],[119.719 60 1],[121.312 2 2],[121.432 1 2],[136.225 2 2],[140.152 1 2],[142.126 10 2],[142.286 5 2],[143.517 1 2],[144.077 2 2],[151.23 20 1],[151.243 60 1],[166.149 100 0],[175.469 2 2],[177.612 15 1],[177.634 20 1],[191.703 3 2],[192.967 5 0],[194.368 10 0],[195.497 60 2],[196.459 50 0],[198.513 5 0],[199.801 60 0],[205.59 50 0],[205.601 100 0],[207.694 75 2],[208.038 60 2],[211.856 25 2],[212.227 15 2],[212.557 10 0],[212.568 20 0],[212.72 15 2],[213.725 5 2],[214.5 25 0],[217.499 55 0],[217.51 55 0],[219.157 5 2],[234.861 950 0],[235.066 20 0],[235.071 60 0],[235.083 200 0],[241.334 2 1],[241.346 16 1],[245.384 20 1],[249.454 35 0],[249.458 35 0],[249.473 100 0],[250.743 16 1],[261.799 5 1],[261.813 20 1],[265.045 100 0],[265.055 60 0],[265.062 200 0],[265.069 60 0],[265.076 100 0],[269.746 5 1],[269.758 20 1],[272.888 20 1],[273.805 30 0],[289.813 20 0],[289.819 10 0],[289.825 20 0],[298.606 30 0],[298.642 10 0],[301.933 60 0],[301.949 30 0],[301.953 30 0],[301.96 20 0],[304.652 10 1],[304.669 30 1],[311.081 10 0],[311.092 10 0],[311.099 20 0],[313.042 480 1],[313.107 320 1],[319.381 20 0],[319.71 20 1],[319.715 30 1],[320.86 20 0],[322.963 60 0],[323.352 2 1],[324.162 10 1],[324.183 30 1],[326.902 15 0],[327.458 100 1],[327.467 30 1],[328.291 30 0],[332.101 30 0],[332.109 30 0],[332.134 220 0],[334.543 20 0],[336.763 60 0],[345.137 5 0],[345.518 300 0],[347.656 20 0],[351.554 300 0],[355.5 10 0],[372.036 100 2],[373.63 100 0],[381.345 700 0],[386.513 40 0],[386.542 80 0],[386.551 1 0],[386.572 6 0],[386.603 100 0],[424.914 90 2],[425.305 100 0],[425.376 60 0],[436.066 300 1],[436.099 500 1],[440.794 400 0],[448.552 2 2],[448.73 100 2],[449.509 1 2],[449.78 140 2],[457.266 12 0],[467.333 700 1],[467.342 1000 1],[470.937 6 0],[482.816 200 1],[484.916 40 0],[485.822 2 1],[508.775 80 0],[521.812 8 1],[521.833 20 1],[525.586 3 1],[527.028 64 1],[527.081 500 1],[540.304 20 1],[541.021 20 1],[614.201 140 2],[622.911 10 0],[627.943 16 1],[627.973 30 1],[647.354 30 0],[654.789 60 1],[655.836 60 1],[656.452 30 0],[663.644 2 1],[675.672 1 1],[675.713 2 1],[678.656 30 0],[688.422 1 0],[688.444 6 0],[698.275 100 0],[715.44 6 0],[715.465 40 0],[720.913 100 0],[740.12 3 1],[740.143 2 1],[755.19 10 0],[761.868 10 0],[761.888 20 0],[809.006 60 0],[815.899 5 0],[815.924 10 0],[825.407 4 0],[828.707 10 0],[854.736 30 0],[854.767 60 0],[880.137 300 0],[888.218 6 0],[919.045 40 0],[924.392 20 0],[934.389 1 1],[939.274 40 0],[947.643 2 1],[947.703 16 1],[984.732 20 0],[989.563 10 0],[989.596 20 0],[993.978 80 0],[1009.552 16 1],[1009.573 20 1],[1011.992 60 1],[1033.103 80 0],[1106.646 30 0],[1117.373 1 1],[1149.639 120 0],[1162.516 2 1],[1166.025 2 1],[1209.536 100 1],[1209.818 30 1],[1464.392 100 0],[1464.475 60 0],[1615.772 200 0],[1785.5381 80 0],[1785.6631 120 0],[1814.3539 100 0],[3177.5051 160 0],[3177.8699 200 0]}{ALLx1000x950x1000x140x0x0x0}{UVx950x950x480x100x0x0x0}{VISx1000x700x1000x140x0x0x0}{IVx300x300x100x0x0x0x0}%
-\pgfspectra@elt@search{#1}{B}{[4.859 30 4],[5.268 10 3],[6.031 30 3],[34.4 160 3],[38.5 450 3],[41.18 40 2],[41.87 285 3],[51.077 20 2],[51.085 40 2],[51.824 150 2],[51.827 75 2],[67.7 110 2],[67.714 160 2],[69.395 70 1],[73.136 40 1],[73.144 40 1],[75.848 40 2],[75.867 70 2],[88.254 110 1],[88.268 110 1],[98.467 40 1],[108.188 110 1],[108.207 110 1],[111.22 70 3],[116.89 450 3],[117.09 70 3],[123.016 110 1],[136.246 220 1],[160.046 70 0],[160.073 120 0],[162.358 160 1],[162.377 110 1],[162.402 220 1],[162.416 70 1],[162.434 160 1],[166.304 100 0],[166.687 150 0],[166.729 200 0],[181.786 150 0],[181.837 200 0],[182.591 300 0],[182.641 300 0],[184.281 110 1],[195.383 20 2],[206.578 550 2],[206.638 250 0],[206.665 250 0],[206.693 100 0],[206.719 300 0],[206.723 450 2],[207.709 160 2],[208.891 500 0],[208.957 500 0],[222.03 70 1],[223.409 40 2],[223.459 70 2],[232.303 40 1],[232.867 40 1],[239.32 40 1],[239.505 220 1],[245.969 40 1],[245.99 40 1],[249.677 1000 0],[249.773 1000 0],[252.47 70 3],[253.03 160 3],[282.168 450 3],[282.457 70 3],[282.585 285 3],[291.808 160 1],[303.226 110 1],[317.933 70 1],[332.318 110 1],[332.36 110 1],[345.129 450 1],[412.193 285 1],[419.479 110 1],[424.298 40 2],[424.361 70 2],[447.21 110 1],[447.285 110 1],[448.705 220 2],[449.773 360 2],[478.421 70 1],[494.038 110 1],[608.044 110 1],[628.547 70 1],[703.02 70 1],[703.19 40 1],[783.525 110 2],[784.141 70 2],[866.722 20 0],[866.857 70 0],[1166.004 800 0],[1166.247 570 0],[1562.908 125 0],[1624.038 200 0],[1624.467 250 0],[1899.433 235 0]}{ALLx1000x1000x450x550x450x30x0}{UVx1000x1000x450x550x450x30x0}{VISx360x0x285x360x0x0x0}{IVx800x800x0x110x0x0x0}%
-\pgfspectra@elt@search{#1}{C}{[3.4973 110 4],[4.0268 450 4],[22.719 110 4],[24.491 250 3],[24.866 160 4],[24.874 160 4],[28.914 200 3],[28.923 250 3],[31.242 570 3],[31.246 500 3],[37.169 250 2],[37.175 250 2],[37.178 150 2],[38.403 650 3],[38.418 700 3],[38.6203 500 2],[41.952 400 3],[41.971 500 3],[45.0734 200 2],[45.946 400 2],[45.952 500 2],[45.963 570 2],[51.1522 250 2],[53.5288 250 2],[53.808 300 2],[53.8149 350 2],[53.8312 400 2],[57.4281 350 2],[59.5022 9 1],[68.7053 30 1],[68.7345 50 1],[85.8092 10 1],[85.8559 20 1],[90.3624 30 1],[90.3962 60 1],[90.4142 150 1],[90.448 30 1],[97.703 800 2],[100.986 9 1],[101.008 10 1],[101.037 10 1],[103.6337 80 1],[103.7018 150 1],[115.791 150 0],[115.8019 150 0],[115.8035 150 0],[117.493 370 2],[117.526 350 2],[117.559 330 2],[117.571 500 2],[117.599 350 2],[117.637 370 2],[118.8992 150 0],[118.9447 150 0],[118.9631 200 0],[119.3009 300 0],[119.3031 300 0],[119.324 300 0],[119.3264 300 0],[119.3393 100 0],[119.3649 150 0],[119.3679 150 0],[119.4064 100 0],[119.4488 100 0],[126.1552 100 0],[127.7245 250 0],[127.7282 250 0],[127.7513 300 0],[127.755 300 0],[128.0333 200 0],[131.1363 100 0],[132.3951 9 1],[132.9578 120 0],[132.96 120 0],[133.4532 150 1],[133.5708 300 1],[135.4288 100 0],[135.584 150 0],[136.4164 120 0],[145.9032 100 0],[146.3336 200 0],[146.7402 120 0],[148.1764 150 0],[154.8202 1000 3],[155.0774 900 3],[156.031 150 0],[156.0683 400 0],[156.0708 400 0],[156.1341 100 0],[156.1438 400 0],[165.6266 150 0],[165.6928 120 0],[165.7008 300 0],[165.738 120 0],[165.7907 120 0],[165.8122 150 0],[175.1823 500 0],[193.0905 1000 0],[216.294 250 2],[227.091 40 4],[227.725 5 4],[227.792 20 4],[229.687 800 2],[247.856 800 0],[250.912 250 1],[251.206 350 1],[252.441 200 3],[252.998 300 3],[257.483 250 1],[269.775 150 2],[272.485 110 2],[272.53 150 2],[272.59 150 2],[274.128 350 1],[274.649 250 1],[283.671 1000 1],[283.76 800 1],[298.211 200 2],[299.262 800 1],[387.619 350 1],[387.641 350 1],[387.666 350 1],[391.898 570 1],[392.069 800 1],[405.606 150 2],[406.794 200 2],[406.891 250 2],[407.026 250 2],[407.452 250 1],[407.585 350 1],[416.286 150 2],[418.69 250 2],[426.7 800 1],[426.726 1000 1],[432.556 200 2],[464.742 600 2],[465.025 520 2],[465.147 375 2],[465.83 200 3],[466.586 200 2],[477.175 200 0],[493.205 200 0],[494.388 5 4],[494.456 5 4],[505.217 200 0],[513.294 350 1],[513.328 350 1],[514.349 350 1],[514.516 570 1],[515.109 400 1],[538.034 300 0],[564.807 250 1],[566.247 350 1],[569.592 450 2],[580.133 250 3],[581.198 200 3],[582.642 150 2],[588.977 570 1],[589.159 350 1],[600.113 200 0],[600.603 250 0],[600.718 110 0],[601.068 150 0],[601.322 300 0],[601.484 250 0],[657.805 800 1],[658.288 570 1],[658.761 200 0],[674.438 150 2],[678.39 250 1],[703.725 150 2],[711.318 250 0],[711.519 250 0],[711.563 250 1],[711.699 200 0],[711.99 350 1],[723.132 800 1],[723.642 1000 1],[761.265 150 2],[772.62 90 3],[786.089 200 0],[805.862 200 0],[819.648 300 2],[833.299 150 2],[833.515 520 0],[850.032 300 2],[906.143 250 0],[906.247 200 0],[907.828 200 0],[908.851 250 0],[909.483 450 0],[911.18 300 0],[940.573 800 0],[960.303 150 0],[962.08 250 0],[965.844 300 0],[1068.308 200 0],[1069.125 300 0],[1161.929 12 0],[1162.883 23 0],[1165.885 13 0],[1165.968 47 0],[1166.963 24 0],[1174.822 85 0],[1175.332 142 0],[1175.476 114 0],[1177.754 11 0],[1189.291 17 0],[1189.575 30 0],[1261.41 26 0],[1350.227 20 0],[1439.965 38 0],[1440.325 16 0],[1442.012 61 0],[1442.903 12 0],[1444.224 13 0],[1655.966 12 0],[1689.0381 50 0],[1733.8561 10 0],[1744.86 11 0],[1813.9801 13 0],[1972.199 23 0]}{ALLx1000x1000x1000x800x1000x450x0}{UVx1000x1000x1000x800x1000x450x0}{VISx1000x300x1000x600x250x5x0}{IVx800x800x0x300x0x0x0}%
+\pgfspectra@elt@search{#1}{Be}{[10.025 100 2],[50.999 3 2],[54.931 2 2],[58.208 6 2],[66.132 4 2],[67.559 8 2],[72.559 4 2],[72.571 5 1],[74.358 5 1],[74.623 7 2],[76.775 2 2],[77.537 8 1],[84.206 20 1],[92.525 2 1],[94.356 10 1],[97.327 10 1],[102.693 8 1],[103.632 5 1],[104.823 15 1],[111.469 1 2],[114.303 20 1],[119.719 60 1],[121.312 2 2],[121.432 1 2],[136.225 2 2],[140.152 1 2],[142.126 10 2],[142.286 5 2],[143.517 1 2],[144.077 2 2],[151.23 20 1],[151.243 60 1],[166.149 100 0],[175.469 2 2],[177.612 15 1],[177.634 20 1],[191.703 3 2],[192.967 5 0],[194.368 10 0],[195.497 60 2],[196.459 50 0],[198.513 5 0],[199.801 60 0],[205.59 50 0],[205.601 100 0],[207.694 75 2],[208.038 60 2],[211.856 25 2],[212.227 15 2],[212.557 10 0],[212.568 20 0],[212.72 15 2],[213.725 5 2],[214.5 25 0],[217.499 55 0],[217.51 55 0],[219.157 5 2],[234.861 950 0],[235.066 20 0],[235.071 60 0],[235.083 200 0],[241.334 2 1],[241.346 16 1],[245.384 20 1],[249.454 35 0],[249.458 35 0],[249.473 100 0],[250.743 16 1],[261.799 5 1],[261.813 20 1],[265.045 100 0],[265.055 60 0],[265.062 200 0],[265.069 60 0],[265.076 100 0],[269.746 5 1],[269.758 20 1],[272.888 20 1],[273.805 30 0],[289.813 20 0],[289.819 10 0],[289.825 20 0],[298.606 30 0],[298.642 10 0],[301.933 60 0],[301.949 30 0],[301.953 30 0],[301.96 20 0],[304.652 10 1],[304.669 30 1],[311.081 10 0],[311.092 10 0],[311.099 20 0],[313.042 480 1],[313.107 320 1],[319.381 20 0],[319.71 20 1],[319.715 30 1],[320.86 20 0],[322.963 60 0],[323.352 2 1],[324.162 10 1],[324.183 30 1],[326.902 15 0],[327.458 100 1],[327.467 30 1],[328.291 30 0],[332.101 30 0],[332.109 30 0],[332.134 220 0],[334.543 20 0],[336.763 60 0],[345.137 5 0],[345.518 300 0],[347.656 20 0],[351.554 300 0],[355.5 10 0],[372.036 100 2],[373.63 100 0],[381.345 700 0],[386.513 40 0],[386.542 80 0],[386.551 1 0],[386.572 6 0],[386.603 100 0],[424.914 90 2],[425.305 100 0],[425.376 60 0],[436.066 300 1],[436.099 500 1],[440.794 400 0],[448.552 2 2],[448.73 100 2],[449.509 1 2],[449.78 140 2],[457.266 12 0],[467.333 700 1],[467.342 1000 1],[470.937 6 0],[482.816 200 1],[484.916 40 0],[485.822 2 1],[508.775 80 0],[521.812 8 1],[521.833 20 1],[525.586 3 1],[527.028 64 1],[527.081 500 1],[540.304 20 1],[541.021 20 1],[614.201 140 2],[622.911 10 0],[627.943 16 1],[627.973 30 1],[647.354 30 0],[654.789 60 1],[655.836 60 1],[656.452 30 0],[663.644 2 1],[675.672 1 1],[675.713 2 1],[678.656 30 0],[688.422 1 0],[688.444 6 0],[698.275 100 0],[715.44 6 0],[715.465 40 0],[720.913 100 0],[740.12 3 1],[740.143 2 1],[755.19 10 0],[761.868 10 0],[761.888 20 0],[809.006 60 0],[815.899 5 0],[815.924 10 0],[825.407 4 0],[828.707 10 0],[854.736 30 0],[854.767 60 0],[880.137 300 0],[888.218 6 0],[919.045 40 0],[924.392 20 0],[934.389 1 1],[939.274 40 0],[947.643 2 1],[947.703 16 1],[984.732 20 0],[989.563 10 0],[989.596 20 0],[993.978 80 0],[1009.552 16 1],[1009.573 20 1],[1011.992 60 1],[1033.103 80 0],[1106.646 30 0],[1117.373 1 1],[1149.639 120 0],[1162.516 2 1],[1166.025 2 1],[1209.536 100 1],[1209.818 30 1],[1464.392 100 0],[1464.475 60 0],[1615.772 200 0],[1785.5381 80 0],[1785.6631 120 0],[1814.3539 100 0],[3177.5051 160 0],[3177.8699 200 0]}{ALLx1000x950x1000x140x0x0x0}{UVx950x950x480x100x0x0x0}{VISx1000x700x1000x140x0x0x0}{IVx300x300x100x0x0x0x0}%[7.61 1 2],[7.648 2 2],[7.853 3 2],[7.866 4 2],[7.892 1 2],[8.189 5 2],[8.238 10 2],[8.32 20 2],[8.476 30 2],[8.831 50 2],
+\pgfspectra@elt@search{#1}{B}{[34.4 160 3],[38.5 450 3],[41.18 40 2],[41.87 285 3],[51.077 20 2],[51.085 40 2],[51.824 150 2],[51.827 75 2],[67.7 110 2],[67.714 160 2],[69.395 70 1],[73.136 40 1],[73.144 40 1],[75.848 40 2],[75.867 70 2],[88.254 110 1],[88.268 110 1],[98.467 40 1],[108.188 110 1],[108.207 110 1],[111.22 70 3],[116.89 450 3],[117.09 70 3],[123.016 110 1],[136.246 220 1],[160.046 70 0],[160.073 120 0],[162.358 160 1],[162.377 110 1],[162.402 220 1],[162.416 70 1],[162.434 160 1],[166.304 100 0],[166.687 150 0],[166.729 200 0],[181.786 150 0],[181.837 200 0],[182.591 300 0],[182.641 300 0],[184.281 110 1],[195.383 20 2],[206.578 550 2],[206.638 250 0],[206.665 250 0],[206.693 100 0],[206.719 300 0],[206.723 450 2],[207.709 160 2],[208.891 500 0],[208.957 500 0],[222.03 70 1],[223.409 40 2],[223.459 70 2],[232.303 40 1],[232.867 40 1],[239.32 40 1],[239.505 220 1],[245.969 40 1],[245.99 40 1],[249.677 1000 0],[249.773 1000 0],[252.47 70 3],[253.03 160 3],[282.168 450 3],[282.457 70 3],[282.585 285 3],[291.808 160 1],[303.226 110 1],[317.933 70 1],[332.318 110 1],[332.36 110 1],[345.129 450 1],[412.193 285 1],[419.479 110 1],[424.298 40 2],[424.361 70 2],[447.21 110 1],[447.285 110 1],[448.705 220 2],[449.773 360 2],[478.421 70 1],[494.038 110 1],[608.044 110 1],[628.547 70 1],[703.02 70 1],[703.19 40 1],[783.525 110 2],[784.141 70 2],[866.722 20 0],[866.857 70 0],[1166.004 800 0],[1166.247 570 0],[1562.908 125 0],[1624.038 200 0],[1624.467 250 0],[1899.433 235 0]}{ALLx1000x1000x450x550x450x30x0}{UVx1000x1000x450x550x450x30x0}{VISx360x0x285x360x0x0x0}{IVx800x800x0x110x0x0x0}%[4.859 30 4],[5.268 10 3],[6.031 30 3],
+\pgfspectra@elt@search{#1}{C}{[22.719 110 4],[24.491 250 3],[24.866 160 4],[24.874 160 4],[28.914 200 3],[28.923 250 3],[31.242 570 3],[31.246 500 3],[37.169 250 2],[37.175 250 2],[37.178 150 2],[38.403 650 3],[38.418 700 3],[38.6203 500 2],[41.952 400 3],[41.971 500 3],[45.0734 200 2],[45.946 400 2],[45.952 500 2],[45.963 570 2],[51.1522 250 2],[53.5288 250 2],[53.808 300 2],[53.8149 350 2],[53.8312 400 2],[57.4281 350 2],[59.5022 9 1],[68.7053 30 1],[68.7345 50 1],[85.8092 10 1],[85.8559 20 1],[90.3624 30 1],[90.3962 60 1],[90.4142 150 1],[90.448 30 1],[97.703 800 2],[100.986 9 1],[101.008 10 1],[101.037 10 1],[103.6337 80 1],[103.7018 150 1],[115.791 150 0],[115.8019 150 0],[115.8035 150 0],[117.493 370 2],[117.526 350 2],[117.559 330 2],[117.571 500 2],[117.599 350 2],[117.637 370 2],[118.8992 150 0],[118.9447 150 0],[118.9631 200 0],[119.3009 300 0],[119.3031 300 0],[119.324 300 0],[119.3264 300 0],[119.3393 100 0],[119.3649 150 0],[119.3679 150 0],[119.4064 100 0],[119.4488 100 0],[126.1552 100 0],[127.7245 250 0],[127.7282 250 0],[127.7513 300 0],[127.755 300 0],[128.0333 200 0],[131.1363 100 0],[132.3951 9 1],[132.9578 120 0],[132.96 120 0],[133.4532 150 1],[133.5708 300 1],[135.4288 100 0],[135.584 150 0],[136.4164 120 0],[145.9032 100 0],[146.3336 200 0],[146.7402 120 0],[148.1764 150 0],[154.8202 1000 3],[155.0774 900 3],[156.031 150 0],[156.0683 400 0],[156.0708 400 0],[156.1341 100 0],[156.1438 400 0],[165.6266 150 0],[165.6928 120 0],[165.7008 300 0],[165.738 120 0],[165.7907 120 0],[165.8122 150 0],[175.1823 500 0],[193.0905 1000 0],[216.294 250 2],[227.091 40 4],[227.725 5 4],[227.792 20 4],[229.687 800 2],[247.856 800 0],[250.912 250 1],[251.206 350 1],[252.441 200 3],[252.998 300 3],[257.483 250 1],[269.775 150 2],[272.485 110 2],[272.53 150 2],[272.59 150 2],[274.128 350 1],[274.649 250 1],[283.671 1000 1],[283.76 800 1],[298.211 200 2],[299.262 800 1],[387.619 350 1],[387.641 350 1],[387.666 350 1],[391.898 570 1],[392.069 800 1],[405.606 150 2],[406.794 200 2],[406.891 250 2],[407.026 250 2],[407.452 250 1],[407.585 350 1],[416.286 150 2],[418.69 250 2],[426.7 800 1],[426.726 1000 1],[432.556 200 2],[464.742 600 2],[465.025 520 2],[465.147 375 2],[465.83 200 3],[466.586 200 2],[477.175 200 0],[493.205 200 0],[494.388 5 4],[494.456 5 4],[505.217 200 0],[513.294 350 1],[513.328 350 1],[514.349 350 1],[514.516 570 1],[515.109 400 1],[538.034 300 0],[564.807 250 1],[566.247 350 1],[569.592 450 2],[580.133 250 3],[581.198 200 3],[582.642 150 2],[588.977 570 1],[589.159 350 1],[600.113 200 0],[600.603 250 0],[600.718 110 0],[601.068 150 0],[601.322 300 0],[601.484 250 0],[657.805 800 1],[658.288 570 1],[658.761 200 0],[674.438 150 2],[678.39 250 1],[703.725 150 2],[711.318 250 0],[711.519 250 0],[711.563 250 1],[711.699 200 0],[711.99 350 1],[723.132 800 1],[723.642 1000 1],[761.265 150 2],[772.62 90 3],[786.089 200 0],[805.862 200 0],[819.648 300 2],[833.299 150 2],[833.515 520 0],[850.032 300 2],[906.143 250 0],[906.247 200 0],[907.828 200 0],[908.851 250 0],[909.483 450 0],[911.18 300 0],[940.573 800 0],[960.303 150 0],[962.08 250 0],[965.844 300 0],[1068.308 200 0],[1069.125 300 0],[1161.929 12 0],[1162.883 23 0],[1165.885 13 0],[1165.968 47 0],[1166.963 24 0],[1174.822 85 0],[1175.332 142 0],[1175.476 114 0],[1177.754 11 0],[1189.291 17 0],[1189.575 30 0],[1261.41 26 0],[1350.227 20 0],[1439.965 38 0],[1440.325 16 0],[1442.012 61 0],[1442.903 12 0],[1444.224 13 0],[1655.966 12 0],[1689.0381 50 0],[1733.8561 10 0],[1744.86 11 0],[1813.9801 13 0],[1972.199 23 0]}{ALLx1000x1000x1000x800x1000x450x0}{UVx1000x1000x1000x800x1000x450x0}{VISx1000x300x1000x600x250x5x0}{IVx800x800x0x300x0x0x0}%[3.4973 110 4],[4.0268 450 4],
\pgfspectra@elt@search{#1}{N}{[16.6947 52 4],[18.175 400 3],[18.6069 52 4],[18.6153 62 4],[19.17 400 3],[19.29 400 3],[19.687 500 3],[19.723 500 3],[20.26 500 3],[20.594 500 3],[20.597 500 3],[20.603 500 3],[20.9303 90 4],[21.72 500 3],[21.79 500 3],[22.34 500 3],[22.512 800 3],[22.521 800 3],[23.412 600 3],[23.42 600 3],[23.425 600 3],[23.607 550 3],[23.799 500 3],[23.87 500 3],[23.88 600 3],[23.962 500 3],[24.72 900 3],[24.7561 90 4],[24.7706 120 4],[24.843 500 3],[24.846 500 3],[24.848 500 3],[25.795 500 2],[25.85 650 2],[25.919 700 2],[26.009 800 2],[26.045 600 3],[26.128 800 2],[26.291 500 2],[26.523 500 2],[26.527 500 2],[26.6196 150 4],[26.6379 200 4],[26.87 500 2],[27.099 650 3],[28.342 250 3],[28.348 300 3],[28.358 350 3],[28.556 600 3],[29.77 600 3],[29.782 700 3],[30.032 650 3],[30.3123 90 3],[30.328 500 3],[31.4715 150 2],[31.485 200 2],[31.4877 90 2],[31.5053 150 3],[32.2503 120 3],[32.257 150 3],[32.2724 200 3],[32.3175 120 3],[32.326 600 2],[33.505 300 3],[33.835 500 2],[34.02 500 2],[35.193 500 3],[35.198 500 2],[35.306 700 3],[36.2833 120 2],[36.2881 150 2],[36.2946 150 2],[36.2985 90 2],[37.4204 300 2],[37.4441 350 2],[38.748 500 2],[42.077 500 3],[45.1869 250 2],[45.2226 300 2],[46.374 650 3],[64.4634 285 1],[64.4837 360 1],[64.5178 450 1],[64.75 140 0],[66.0286 360 1],[67.1016 170 1],[67.1386 285 1],[67.163 150 1],[67.1773 160 1],[67.2001 170 1],[68.4996 500 2],[68.5513 570 2],[68.5816 650 2],[68.6335 500 2],[69.27 350 0],[71.3518 90 4],[71.386 150 4],[74.6984 285 1],[74.8195 150 4],[74.8291 200 4],[76.3336 500 2],[76.4359 570 2],[76.5148 570 3],[77.1544 250 2],[77.1901 300 2],[77.2385 350 2],[77.2891 200 2],[77.2975 150 2],[77.5965 650 1],[88.567 90 0],[90.9697 90 0],[91.0278 80 0],[91.0645 40 0],[91.5612 450 1],[91.5962 450 1],[91.6012 550 1],[91.6701 650 1],[92.1992 520 3],[92.1992 520 3],[92.2519 500 3],[92.2519 500 3],[92.3057 480 3],[92.4283 520 3],[95.3415 90 0],[95.3655 100 0],[95.397 130 0],[95.5335 1000 3],[96.399 130 0],[96.4626 115 0],[96.5041 70 0],[97.9842 650 2],[97.9919 700 2],[98.979 900 2],[99.1514 700 2],[99.1579 1000 2],[103.616 150 3],[106.7614 90 0],[106.8612 60 0],[107.871 90 3],[108.399 450 1],[108.458 600 1],[108.5546 430 1],[108.5701 650 1],[109.7237 175 0],[109.8095 115 0],[109.826 115 0],[110.036 105 0],[110.0465 40 0],[110.1291 90 0],[113.4165 360 0],[113.4415 385 0],[113.498 410 0],[114.365 105 0],[116.3884 130 0],[116.4206 60 0],[116.4325 105 0],[116.7448 270 0],[116.8334 105 0],[116.8417 60 0],[116.8536 195 0],[117.651 230 0],[117.663 105 0],[117.7695 195 0],[118.3031 500 2],[118.455 570 2],[118.801 90 3],[119.955 410 0],[120.0223 385 0],[120.071 360 0],[122.5026 175 0],[122.537 160 0],[122.841 130 0],[122.879 160 0],[123.8821 1000 4],[124.2804 900 4],[124.3179 360 0],[124.3306 315 0],[131.054 290 0],[131.095 250 0],[131.9 230 0],[131.968 315 0],[132.657 115 0],[132.792 115 0],[138.7371 150 2],[141.194 360 0],[149.2625 700 0],[149.282 490 0],[149.4675 640 0],[154.9336 90 4],[161.633 200 4],[161.969 350 4],[171.855 1000 3],[172.9945 250 2],[174.2729 775 0],[174.5252 700 0],[174.7848 570 2],[175.1218 350 2],[175.1657 650 2],[180.4486 150 2],[180.5669 200 2],[184.642 150 2],[186.037 90 4],[188.506 350 2],[188.522 400 2],[190.799 200 2],[191.955 150 2],[191.977 150 2],[192.065 300 2],[192.084 150 2],[192.13 200 2],[206.401 200 2],[206.442 250 2],[206.868 120 2],[207.109 90 2],[208.034 90 3],[209.553 160 1],[209.62 70 1],[209.686 110 1],[211.759 90 2],[212.15 90 2],[213.018 110 1],[214.278 160 1],[214.731 90 2],[218.82 200 2],[218.838 150 2],[220.609 160 1],[228.669 160 1],[228.844 110 1],[231.649 220 1],[231.669 160 1],[231.705 285 1],[231.809 90 3],[246.127 160 1],[247.769 150 3],[249.683 110 1],[249.697 70 1],[252.022 110 1],[252.079 160 1],[252.223 220 1],[259.094 110 1],[264.565 250 3],[264.618 300 3],[264.696 350 3],[268.218 250 2],[268.92 90 2],[270.984 160 1],[279.922 110 1],[282.364 110 1],[285.916 60 4],[288.527 160 1],[297.452 90 4],[298.078 150 4],[298.131 250 4],[299.843 60 4],[300.683 220 1],[307.825 90 3],[336.734 120 2],[343.715 360 1],[346.337 90 3],[347.871 570 3],[348.299 500 3],[348.496 400 3],[374.754 90 3],[375.467 90 2],[377.105 120 2],[383.837 285 1],[391.9 360 1],[393.852 90 2],[395.585 450 1],[399.5 1000 1],[399.863 150 2],[400.358 200 2],[403.508 360 1],[404.131 550 1],[404.353 360 1],[405.776 150 3],[409.733 250 2],[409.994 140 0],[410.343 200 2],[410.995 185 0],[417.616 285 1],[419.576 120 2],[420.01 150 2],[422.774 285 1],[423.691 285 1],[423.705 220 1],[424.178 450 1],[433.291 90 2],[434.568 120 2],[437.911 300 2],[443.274 285 1],[444.703 650 1],[451.091 90 2],[451.486 120 2],[453.041 360 1],[460.148 550 1],[460.373 350 4],[460.633 90 3],[460.716 450 1],[461.387 360 1],[461.998 250 4],[462.139 450 1],[463.054 870 1],[463.414 90 2],[464.064 120 2],[464.308 550 1],[478.813 285 1],[480.329 450 1],[484.738 180 0],[485.882 90 2],[486.715 150 2],[489.511 285 1],[491.494 160 0],[493.512 210 0],[494.456 200 4],[495.023 160 0],[496.398 350 0],[498.737 285 1],[499.436 450 1],[500.148 650 1],[500.27 360 1],[500.515 870 1],[500.732 550 1],[501.062 450 1],[501.639 360 1],[502.566 360 1],[504.51 550 1],[528.12 185 0],[529.268 140 0],[531.435 90 2],[532.082 200 2],[532.718 150 2],[549.567 450 1],[553.536 285 1],[566.663 650 1],[567.602 550 1],[567.956 870 1],[568.621 450 1],[571.077 450 1],[574.73 285 1],[575.25 700 0],[576.475 240 0],[582.954 265 0],[585.404 235 0],[592.781 360 1],[593.178 550 1],[594.024 285 1],[594.165 650 1],[595.239 285 1],[599.943 160 0],[600.847 210 0],[616.776 285 1],[637.962 360 1],[638.077 150 3],[641.165 185 0],[642.064 210 0],[642.302 210 0],[642.832 210 0],[643.768 185 0],[644.094 235 0],[645.411 90 2],[645.79 185 0],[646.702 120 2],[646.844 300 0],[648.171 265 0],[648.205 750 1],[648.27 360 0],[648.375 300 0],[648.48 325 0],[649.122 160 0],[649.954 210 0],[650.631 185 0],[661.056 750 1],[662.254 185 0],[663.694 185 0],[664.496 235 0],[664.65 185 0],[665.346 235 0],[665.651 210 0],[672.262 185 0],[739.864 210 0],[740.612 160 0],[740.624 265 0],[742.364 685 0],[744.229 785 0],[746.831 900 0],[760.88 185 0],[761.846 60 4],[776.224 450 1],[818.487 400 0],[818.802 400 0],[820.036 250 0],[821.072 300 0],[821.634 570 0],[822.314 400 0],[824.239 400 0],[843.874 550 1],[856.774 500 0],[859.4 570 0],[862.924 650 0],[865.589 500 0],[867.608 220 1],[868.028 700 0],[868.34 650 0],[868.615 500 0],[868.743 110 1],[869.9 110 1],[870.325 500 0],[871.054 160 1],[871.17 570 0],[871.883 500 0],[872.889 250 0],[874.736 200 0],[938.68 500 0],[939.279 570 0],[946.068 250 0],[986.333 200 0],[986.541 160 1],[986.821 110 1],[988.739 160 1],[989.109 220 1],[996.186 160 1],[996.934 220 1],[1002.327 285 1],[1003.545 220 1],[1006.515 220 1],[1007.012 160 1],[1010.513 250 0],[1010.889 300 0],[1011.248 350 0],[1011.464 400 0],[1012.627 110 1],[1053.957 250 0],[1207.451 200 0],[1218.682 380 0],[1228.897 225 0],[1232.876 290 0],[1238.165 310 0],[1243.84 180 0],[1246.125 510 0],[1246.962 920 0],[1342.961 500 0],[1358.133 840 0],[1358.773 180 0],[1360.227 180 0],[1362.418 290 0],[1475.707 250 0],[1486.887 100 0],[1496.66 160 0],[1558.227 180 0],[1751.658 120 0],[1758.4859 100 0],[1787.826 100 0]}{ALLx1000x920x1000x1000x1000x1000x0}{UVx1000x775x650x1000x1000x1000x0}{VISx1000x900x1000x300x150x350x0}{IVx920x920x550x0x0x0x0}%
\pgfspectra@elt@search{#1}{O}{[12.4616 80 4],[13.5523 110 4],[13.8109 80 4],[13.9029 110 4],[15.1447 80 4],[15.1477 110 4],[15.1546 150 4],[16.4574 80 4],[16.4657 110 4],[16.4709 80 4],[16.6235 80 4],[16.799 150 4],[17.0219 110 4],[17.2169 450 4],[18.5745 250 4],[19.2751 375 4],[19.2799 450 4],[19.2906 520 4],[19.3003 80 4],[19.4593 200 4],[19.586 150 3],[19.601 200 3],[20.2161 80 4],[20.2224 80 4],[20.2283 80 4],[20.2334 80 4],[20.2393 150 4],[20.378 110 4],[20.382 150 4],[20.385 100 4],[20.389 200 4],[20.394 100 4],[20.718 110 3],[20.724 150 3],[20.7794 300 4],[21.504 150 4],[21.5103 200 4],[21.5245 250 4],[21.6018 250 4],[22.0352 520 4],[22.7372 80 4],[22.7469 80 4],[22.7511 150 4],[22.7549 80 4],[22.7634 80 4],[22.7689 80 4],[23.1823 150 4],[23.346 140 3],[23.35 150 3],[23.352 110 3],[23.356 200 3],[23.36 110 3],[23.836 90 3],[23.857 180 3],[24.8459 110 4],[25.256 110 3],[25.295 110 3],[25.308 150 3],[26.039 300 3],[26.056 250 3],[26.434 80 2],[26.448 110 2],[26.697 110 2],[26.698 150 2],[26.703 150 2],[27.738 150 2],[27.963 300 3],[27.994 375 3],[28.571 110 3],[28.584 150 3],[28.6448 110 4],[29.562 80 2],[29.566 110 2],[29.572 120 2],[30.341 150 2],[30.346 150 2],[30.352 140 2],[30.362 160 2],[30.369 160 2],[30.38 250 2],[30.56 200 2],[30.566 250 2],[30.57 190 2],[30.577 300 2],[30.584 190 2],[30.662 200 3],[30.688 150 3],[32.0979 450 2],[32.845 300 2],[32.874 250 2],[34.531 300 2],[35.514 110 2],[35.533 90 2],[35.547 80 2],[35.902 200 2],[35.922 190 2],[35.938 150 2],[37.38 210 2],[37.4 200 2],[37.408 300 2],[37.416 190 2],[37.433 200 2],[37.444 210 2],[39.5558 450 2],[43.498 300 2],[50.7391 800 2],[50.7683 900 2],[50.8182 1000 2],[52.5795 1000 2],[53.783 250 1],[53.826 300 1],[53.909 220 1],[53.955 200 1],[53.985 150 1],[55.333 700 3],[55.4075 775 3],[55.4514 850 3],[55.5261 700 3],[59.7818 700 2],[59.9598 1000 2],[60.8398 580 3],[60.97 110 2],[60.9829 640 3],[61.004 160 2],[61.075 200 2],[61.085 100 2],[61.6952 270 3],[61.7005 150 3],[61.7036 200 3],[62.4617 520 3],[62.513 580 3],[62.5852 640 3],[62.973 1000 4],[64.4148 150 1],[67.295 200 1],[67.377 150 1],[68.1272 230 4],[68.5544 70 0],[70.2332 800 2],[70.2822 800 2],[70.2899 900 2],[70.385 1000 2],[71.8484 900 1],[71.8562 600 1],[74.4794 70 0],[75.8678 700 4],[75.9441 640 4],[76.0228 580 4],[76.0445 775 4],[76.1128 640 4],[76.2003 700 4],[77.0793 70 0],[77.1056 90 0],[77.4518 520 4],[77.5321 70 0],[77.9734 200 3],[77.9821 315 3],[77.9912 360 3],[77.9997 200 3],[78.7711 640 3],[79.0109 520 3],[79.0199 700 3],[79.1973 70 0],[79.666 300 1],[80.22 200 3],[80.2255 160 3],[80.4267 90 0],[80.4848 70 0],[80.5295 70 0],[80.581 80 0],[83.2762 240 1],[83.2927 600 2],[83.3332 450 1],[83.3742 780 2],[83.4467 600 1],[83.5096 600 2],[83.5292 800 2],[87.7879 40 0],[92.1296 130 3],[92.1366 160 3],[92.2008 80 0],[92.3367 200 3],[92.3433 130 3],[93.5193 90 0],[94.8686 40 0],[97.1738 90 0],[97.6448 40 0],[98.8773 160 0],[99.0204 40 0],[102.5762 250 0],[102.7431 90 0],[103.923 160 0],[104.0942 60 0],[115.2152 40 0],[130.2168 900 0],[130.4858 600 0],[130.6029 300 0],[133.8612 200 3],[134.2992 130 3],[134.3512 230 3],[137.1292 640 4],[147.689 160 2],[150.672 160 4],[159.001 285 2],[159.133 160 2],[164.368 315 4],[170.7996 160 4],[176.012 220 2],[176.042 110 2],[176.322 220 2],[176.448 220 2],[176.778 750 2],[176.824 550 2],[177.167 360 2],[177.3 110 2],[177.385 110 2],[177.916 220 2],[178.103 160 2],[178.485 160 2],[178.966 220 2],[184.826 110 2],[185.662 110 2],[187.278 285 2],[187.287 285 2],[187.494 285 2],[192.004 160 2],[192.075 110 2],[192.152 110 2],[192.349 220 2],[192.382 110 2],[192.694 110 2],[201.327 360 2],[202.696 160 2],[204.567 220 2],[205.274 160 2],[228.342 30 1],[228.489 30 1],[229.332 110 1],[230.035 200 1],[231.305 30 1],[231.612 30 1],[231.679 30 1],[231.968 50 1],[232.215 30 1],[233.931 30 1],[239.044 200 2],[239.433 80 2],[241.16 110 1],[242.284 80 2],[242.555 80 1],[243.356 250 1],[243.606 80 1],[243.883 80 2],[244.426 80 1],[244.555 300 1],[244.9372 200 3],[245.004 200 3],[245.499 200 2],[249.344 200 3],[249.377 200 3],[250.773 200 3],[250.919 230 3],[251.72 200 3],[255.806 200 2],[268.753 80 2],[269.549 110 2],[273.334 300 1],[274.746 110 1],[278.101 1000 4],[278.699 920 4],[278.985 775 4],[283.626 160 3],[292.145 160 3],[294.133 200 4],[294.165 210 4],[295.968 80 2],[297.229 265 0],[298.378 250 2],[301.763 80 2],[302.345 80 2],[304.302 80 2],[304.713 200 2],[305.93 110 2],[306.342 460 3],[307.161 410 3],[312.171 80 2],[312.262 160 1],[312.944 220 1],[313.286 110 2],[313.482 450 1],[313.844 285 1],[314.466 160 4],[320.966 160 3],[323.857 80 2],[326.098 200 2],[326.546 300 2],[326.731 80 2],[327.098 220 1],[327.352 220 1],[327.769 220 1],[328.759 360 1],[330.515 160 1],[330.66 160 1],[331.23 80 2],[334.074 110 2],[334.808 230 3],[334.911 270 3],[335.427 160 3],[337.54 200 3],[337.72 220 1],[337.806 130 3],[338.12 360 3],[338.552 360 3],[339.025 285 1],[339.679 270 3],[340.352 360 3],[340.738 220 1],[340.966 230 3],[340.984 160 1],[341.169 410 3],[341.364 230 3],[344.41 80 2],[345.512 80 2],[347.081 285 1],[348.983 200 3],[349.224 160 3],[356.039 230 3],[356.333 270 3],[369.87 80 2],[370.275 80 2],[370.337 80 2],[370.724 110 2],[371.275 220 1],[371.508 110 2],[372.593 315 3],[372.733 285 1],[372.903 360 3],[373.685 410 3],[373.992 160 1],[374.4 110 2],[374.489 230 3],[374.949 360 1],[375.467 150 2],[375.721 80 2],[375.987 250 2],[379.126 110 2],[380.314 160 1],[382.341 120 0],[391.196 450 1],[391.929 160 1],[394.729 185 0],[394.748 160 0],[394.759 140 0],[395.437 220 1],[395.461 100 0],[396.159 200 2],[397.326 450 1],[398.22 220 1],[406.99 160 1],[407.216 285 1],[407.587 450 1],[408.391 80 1],[408.714 50 1],[408.927 150 1],[409.724 110 1],[410.5 220 1],[411.922 285 1],[412.399 100 4],[413.281 160 1],[414.606 50 1],[415.33 220 1],[418.546 285 1],[418.979 450 1],[423.327 80 0],[425.374 50 1],[425.398 50 1],[427.547 50 1],[430.378 50 1],[431.714 285 1],[433.686 160 1],[434.556 220 1],[434.943 285 1],[436.69 220 1],[436.825 100 0],[439.595 220 1],[441.491 450 1],[441.698 285 1],[444.821 160 1],[445.238 160 1],[446.545 50 1],[446.628 50 1],[446.783 50 1],[446.941 50 1],[459.097 360 1],[459.617 285 1],[460.939 80 1],[463.885 160 1],[464.181 360 1],[464.914 450 1],[465.084 160 1],[466.164 360 1],[467.623 285 1],[469.921 220 1],[470.536 285 1],[492.46 160 1],[493.027 230 4],[494.306 220 1],[532.91 135 0],[532.968 160 0],[533.074 190 0],[543.518 90 0],[543.578 110 0],[543.686 135 0],[557.734 120 0],[559.237 110 2],[559.791 130 4],[595.839 160 0],[595.858 190 0],[599.528 80 0],[604.623 160 0],[604.644 190 0],[604.649 110 0],[610.627 100 0],[615.598 400 0],[615.677 450 0],[615.818 490 0],[625.683 80 0],[626.155 100 0],[636.634 100 0],[637.432 100 0],[645.36 320 0],[645.444 360 0],[645.598 400 0],[650.024 130 4],[660.491 80 0],[665.383 100 0],[700.192 360 0],[700.223 450 0],[715.67 210 0],[725.415 400 0],[725.445 450 0],[725.453 320 0],[747.644 210 0],[747.724 100 0],[747.908 120 0],[748.067 120 0],[770.675 100 0],[777.194 870 0],[777.417 810 0],[777.539 750 0],[788.627 80 0],[794.315 100 0],[794.717 100 0],[794.755 235 0],[795.08 210 0],[795.216 185 0],[798.194 110 0],[798.24 135 0],[798.698 190 0],[798.733 135 0],[799.507 250 0],[822.182 400 0],[822.765 265 0],[823.002 265 0],[823.3 325 0],[823.535 120 0],[842.616 120 0],[844.625 810 0],[844.636 1000 0],[844.676 935 0],[882.043 325 0],[905.701 160 0],[911.829 120 0],[913.471 80 0],[915.014 80 0],[915.148 80 0],[915.601 235 0],[926.081 450 0],[926.084 490 0],[926.094 450 0],[926.258 400 0],[926.267 540 0],[926.277 590 0],[926.594 490 0],[926.601 640 0],[939.919 185 0],[948.116 120 0],[948.288 120 0],[948.743 235 0],[949.271 140 0],[949.797 265 0],[949.93 160 0],[950.559 235 0],[952.196 210 0],[952.336 120 0],[952.396 120 0],[952.828 100 0],[962.213 100 0],[962.529 120 0],[967.738 160 0],[969.466 80 0],[969.491 65 0],[974.15 235 0],[976.065 235 0],[990.905 120 0],[993.698 140 0],[994.041 120 0],[999.531 160 0],[1042.118 120 0],[1128.634 590 0],[1128.691 640 0],[1128.702 490 0],[1128.732 490 0],[1129.51 490 0],[1129.768 540 0],[1130.238 590 0],[1135.869 265 0],[1246.402 490 0],[1257.004 450 0],[1299.077 120 0],[1307.691 160 0],[1316.389 700 0],[1316.485 750 0],[1316.511 640 0],[1621.206 160 0],[1796.6699 120 0],[1802.1211 590 0],[1804.148 120 0],[1804.2189 120 0],[1804.623 120 0],[1822.923 140 0],[1824.3631 540 0],[2617.3561 140 0]}{ALLx1000x1000x900x1000x850x1000x0}{UVx1000x900x900x1000x850x1000x0}{VISx870x870x450x200x0x230x0}{IVx1000x1000x0x0x0x0x0}%
\pgfspectra@elt@search{#1}{F}{[13.454 8 4],[14.795 8 4],[14.8 10 4],[15.251 8 4],[15.854 8 4],[16.227 8 4],[16.35 8 4],[16.356 10 4],[16.598 18 4],[16.618 20 4],[16.979 6 3],[16.984 6 3],[17.107 6 3],[17.47 8 4],[17.637 8 3],[17.843 10 4],[17.859 8 4],[18.152 8 3],[18.157 8 3],[18.298 8 4],[18.672 8 4],[18.679 8 4],[18.684 10 4],[18.697 8 4],[18.701 8 4],[18.724 6 3],[19.057 12 4],[19.084 14 4],[19.197 8 4],[19.639 10 3],[19.645 12 3],[19.976 10 3],[19.98 10 3],[19.985 10 3],[19.993 10 3],[20 10 3],[20.009 14 3],[20.101 12 3],[20.106 14 3],[20.11 12 3],[20.116 16 3],[20.122 12 3],[20.555 8 4],[20.825 18 3],[21.385 14 3],[21.406 14 3],[22.077 14 3],[22.694 12 3],[22.71 10 3],[23.012 10 2],[23.322 12 3],[23.339 10 3],[23.986 14 3],[24.002 14 3],[24.008 18 3],[24.015 14 3],[24.028 14 3],[24.037 14 3],[25.103 20 3],[25.572 10 2],[25.577 12 2],[25.586 14 2],[26.171 14 2],[26.175 12 2],[26.381 16 2],[27.023 12 3],[27.969 14 2],[31.522 16 2],[31.554 14 2],[31.575 12 2],[37.53 6 1],[38.09 6 1],[40.704 8 1],[41.965 28 3],[42.005 30 3],[42.073 32 3],[42.951 20 2],[43.015 22 2],[43.022 16 2],[43.076 30 3],[43.091 10 1],[43.155 8 1],[43.564 8 1],[45.718 14 1],[46.429 18 2],[46.437 20 4],[46.511 20 2],[46.537 22 4],[46.598 24 4],[46.699 20 4],[47.195 8 1],[47.2 12 1],[47.271 10 1],[47.302 8 1],[48.46 18 1],[49.057 26 3],[49.1 32 3],[49.738 10 3],[49.783 12 3],[49.88 14 3],[50.616 18 4],[50.808 20 4],[50.839 24 2],[51.364 10 1],[51.397 14 4],[51.408 12 4],[51.494 14 1],[52.459 16 4],[52.529 18 4],[52.63 20 4],[54.685 14 1],[54.787 12 1],[54.832 10 1],[54.852 8 1],[56.769 24 2],[56.775 22 2],[57.064 28 3],[57.13 28 3],[57.139 30 3],[57.266 32 3],[60.567 18 1],[60.629 16 1],[60.68 20 1],[60.692 14 1],[60.747 16 1],[60.806 18 1],[63.014 16 2],[63.02 18 2],[64.767 14 4],[64.777 20 4],[64.787 22 4],[64.797 14 4],[65.403 26 4],[65.612 24 2],[65.687 26 2],[65.723 22 4],[65.733 28 4],[65.833 28 2],[67.612 28 3],[67.715 26 3],[67.722 30 3],[67.899 26 3],[67.921 32 3],[75.704 12 4],[78.039 3 0],[78.052 2 0],[78.238 2 0],[79.188 2.4 0],[79.254 2 0],[79.442 2 0],[80.696 30 0],[80.96 25 0],[95.187 100 0],[95.483 200 0],[95.555 150 0],[95.852 100 0],[97.24 4 0],[97.39 70 0],[97.622 20 0],[97.651 8 0],[97.775 20 0],[108.231 12 4],[108.839 14 4],[112.976 8 1],[121.903 16 2],[126.687 16 2],[126.771 18 2],[129.754 14 2],[132.706 8 1],[132.811 10 1],[133.359 8 1],[134.36 10 1],[134.404 8 1],[135.992 14 2],[140.061 10 1],[140.714 8 1],[149.309 12 1],[149.324 10 1],[149.331 8 1],[149.893 22 2],[150.201 24 2],[150.418 22 2],[150.479 28 2],[150.63 26 2],[150.677 22 2],[155.302 20 2],[155.759 22 2],[156.373 20 2],[156.554 20 2],[162.34 20 2],[165.076 20 2],[167.039 26 2],[167.74 28 2],[170.213 8 1],[171.699 20 2],[174.475 8 1],[174.555 10 1],[174.739 12 1],[177.009 24 2],[177.067 30 2],[177.293 22 2],[177.336 28 2],[179.165 32 2],[180.303 22 2],[180.47 20 2],[180.59 34 2],[183.93 22 2],[183.997 24 2],[184.014 22 2],[190.076 16 2],[202.744 20 2],[203.032 24 2],[217.144 8 3],[221.717 24 2],[222.918 2 4],[225.272 4 4],[229.829 10 3],[245.063 4 4],[245.158 8 3],[245.207 24 2],[245.692 10 3],[246.133 2 4],[246.485 26 2],[247.029 26 2],[247.873 24 2],[248.437 30 2],[254.277 24 2],[255.611 20 1],[258.004 24 2],[258.381 26 2],[259.323 24 2],[259.553 26 2],[259.928 28 2],[262.501 26 2],[262.97 28 2],[265.644 24 2],[269.398 2 4],[270.23 2 4],[270.396 2 4],[270.717 4 4],[275.555 26 2],[275.963 32 2],[278.815 24 2],[281.145 32 2],[282.074 8 3],[282.613 10 3],[283.399 28 2],[283.563 30 2],[286.033 30 2],[286.286 24 2],[287.14 20 1],[288.758 28 2],[288.945 30 2],[290.53 24 2],[291.329 28 2],[291.634 32 2],[293.249 28 2],[299.428 28 2],[299.721 24 2],[299.753 26 2],[299.947 24 2],[303.925 26 2],[303.975 24 2],[304.28 32 2],[304.914 30 2],[305.999 24 1],[311.362 28 2],[311.57 32 2],[312.154 36 2],[312.479 28 2],[313.423 28 2],[314.699 28 2],[315.349 28 1],[317.417 36 2],[317.476 34 2],[320.276 34 1],[321.4 24 2],[326.408 28 1],[341.465 28 1],[341.645 30 1],[341.68 28 1],[341.7 32 1],[347.296 32 1],[347.331 30 1],[347.478 34 1],[350.139 38 1],[350.145 40 1],[350.157 40 1],[350.284 36 1],[350.296 40 1],[350.311 42 1],[350.537 34 1],[350.552 40 1],[350.563 44 1],[352.289 32 1],[353.687 30 1],[354.177 32 1],[359.052 32 1],[359.41 1.2 0],[359.869 34 1],[360.139 36 1],[360.284 38 1],[366.817 2.4 0],[370.453 36 1],[371.035 32 1],[373.957 32 1],[380.583 28 1],[384.709 54 1],[384.999 52 1],[385.167 50 1],[389.848 1 0],[389.883 38 1],[390.193 36 1],[390.382 34 1],[393.069 1.6 0],[393.426 1 0],[394.856 1 0],[397.204 30 1],[397.267 32 1],[397.478 34 1],[402.473 48 1],[402.501 44 1],[402.549 46 1],[408.391 32 1],[410.307 38 1],[410.322 34 1],[410.351 40 1],[410.371 36 1],[410.387 34 1],[410.916 34 1],[411.654 32 1],[411.921 30 1],[420.715 28 1],[422.516 34 1],[424.412 30 1],[424.623 40 1],[424.639 38 1],[424.659 36 1],[424.677 34 1],[424.684 32 1],[427.536 34 1],[427.753 32 1],[427.893 32 1],[429.917 40 1],[442.03 28 2],[442.735 24 2],[443.232 24 2],[444.653 32 1],[444.672 34 1],[444.719 36 1],[447.999 28 2],[473.438 28 1],[485.939 34 1],[493.326 32 1],[496.065 1.2 0],[500.2 28 1],[501.254 30 2],[511.099 32 2],[517.325 30 1],[523.041 3 0],[527.901 2.4 0],[554.052 3.6 0],[555.243 2.4 0],[557.733 2 0],[558.927 32 1],[562.406 4 0],[562.693 2.4 0],[565.915 3 0],[566.753 8 0],[567.167 18 0],[568.914 3.6 0],[570.082 5 0],[570.731 5 0],[575.317 28 2],[576.12 24 2],[595.015 2.4 0],[595.919 5 0],[596.528 14 0],[599.443 10 0],[601.583 30 0],[603.804 16 0],[604.754 180 0],[608.011 20 0],[609.182 30 2],[612.55 28 2],[614.976 160 0],[621.087 80 0],[623.357 26 2],[623.965 2600 0],[624.79 28 1],[634.851 2000 0],[636.305 28 2],[641.365 1600 0],[656.969 90 0],[658.039 60 0],[665.041 80 0],[669.048 360 0],[670.828 80 0],[677.398 1400 0],[679.553 300 0],[683.426 1800 0],[685.603 10000 0],[687.022 1600 0],[690.248 3000 0],[690.982 1200 0],[696.635 800 0],[703.747 9000 0],[712.789 6000 0],[717.99 26 1],[720.236 3000 0],[721.179 26 1],[730.903 200 0],[731.102 3000 0],[731.43 140 0],[733.196 1000 0],[733.677 24 2],[735.494 26 2],[739.869 2000 0],[742.565 800 0],[748.272 440 0],[748.916 500 0],[751.492 180 0],[755.224 1000 0],[757.338 1000 0],[760.717 1400 0],[775.47 3600 0],[780.021 3000 0],[787.918 60 0],[789.859 100 0],[793.631 70 0],[795.632 60 0],[801.601 16 1],[804.093 200 0],[807.552 180 0],[807.752 70 0],[812.656 70 0],[812.926 120 0],[815.951 60 0],[817.934 120 0],[819.124 60 0],[820.863 70 0],[821.473 500 0],[823.077 600 0],[823.219 100 0],[827.462 300 0],[829.858 400 0],[830.24 120 0],[880.758 180 0],[890.092 200 0],[891.278 60 0],[902.549 70 0],[904.21 80 0],[917.868 70 0],[943.367 40 0],[950.53 5 0],[966.204 2.4 0],[973.434 5 0],[982.211 3 0],[990.265 2.4 0],[1004.798 16 1],[1028.545 3 0],[1086.231 4 0]}{ALLx10000x10000x54x36x32x28x0}{UVx200x200x44x36x32x28x0}{VISx10000x10000x54x32x0x0x0}{IVx3000x3000x16x0x0x0x0}%
@@ -44,7 +44,7 @@
\pgfspectra@elt@search{#1}{Na}{[10.628 100 4],[10.63 100 4],[10.64 100 4],[10.649 100 4],[10.793 200 4],[10.802 200 4],[11.082 200 4],[11.088 200 4],[11.151 100 4],[11.201 300 4],[11.47 100 4],[11.474 100 4],[11.799 400 4],[12.004 100 4],[12.518 400 4],[12.522 400 4],[12.529 500 4],[12.543 300 4],[12.546 300 4],[12.59 200 4],[12.621 100 4],[12.656 200 4],[12.661 100 4],[12.744 400 4],[12.747 400 4],[12.803 400 4],[12.805 400 4],[13.068 200 4],[13.135 300 4],[13.141 200 4],[13.164 300 4],[13.316 500 4],[13.339 400 4],[13.427 200 4],[13.579 300 4],[13.585 300 4],[13.6551 4 3],[13.6854 4 3],[13.881 200 4],[13.892 300 4],[13.9961 4 3],[14.2232 7 3],[14.2359 6 3],[14.6064 8 3],[14.6302 7 3],[14.864 400 4],[14.886 300 4],[15.0298 9 3],[15.0543 7 3],[15.064 7 3],[15.0687 8 3],[15.113 400 4],[15.1299 7 3],[15.5083 7 3],[15.524 7 3],[15.5448 7 3],[15.551 8 3],[15.6537 8 3],[15.721 300 4],[16.2448 12 3],[16.319 10 3],[16.362 300 4],[16.8411 12 3],[16.8546 10 3],[18.395 5 2],[18.935 5 2],[19.0445 10 3],[19.38 5 2],[19.404 5 2],[19.417 5 2],[19.429 5 2],[19.468 6 2],[19.553 6 2],[19.9772 10 3],[20.215 6 2],[20.219 6 2],[20.249 8 2],[20.271 5 2],[20.272 7 2],[20.276 8 2],[20.306 8 2],[20.328 8 2],[20.333 8 2],[20.549 10 3],[20.73 10 2],[21.534 10 2],[21.586 12 2],[21.612 12 2],[22.987 15 2],[23.059 12 2],[25.052 50 2],[25.137 30 2],[26.69 25 2],[26.765 70 2],[26.787 50 2],[26.863 50 2],[27.208 20 2],[27.245 20 2],[30.015 160 1],[30.02 160 1],[30.132 90 1],[30.144 100 1],[30.245 60 1],[30.715 800 4],[30.826 1000 4],[31.9644 10 3],[33.255 800 4],[33.391 900 4],[36.032 800 4],[36.037 800 4],[36.076 10 3],[37.208 300 1],[37.638 350 1],[37.814 100 2],[38.01 70 2],[40.072 1000 4],[40.8684 12 3],[40.9614 10 3],[41.0372 15 3],[41.1334 10 3],[41.2242 13 3],[44.505 500 4],[44.519 600 4],[45.99 600 4],[46.105 850 4],[46.326 1000 4],[129.397 60 1],[132.774 50 1],[133.676 7 2],[133.736 7 2],[134.067 8 2],[134.239 9 2],[134.273 10 2],[134.754 45 1],[135.528 11 2],[136.19 12 2],[137.234 11 2],[137.469 90 1],[140.468 90 1],[142.089 10 2],[144.419 10 2],[144.931 12 2],[149.521 45 1],[149.601 40 1],[149.773 45 1],[150.641 80 1],[150.691 60 1],[151.31 70 1],[151.963 60 1],[156.287 11 2],[156.529 10 2],[158.05 10 3],[158.218 11 3],[158.233 10 3],[158.398 11 3],[158.414 12 3],[158.699 10 3],[158.705 12 3],[159.818 10 2],[161.395 10 3],[161.592 11 3],[161.857 12 3],[165.547 11 3],[165.792 60 1],[168.894 11 2],[169.929 10 2],[170.197 15 3],[170.241 10 3],[171.112 10 2],[172.827 11 2],[173.111 10 2],[175.548 10 2],[177.657 90 1],[177.824 40 1],[178.304 60 1],[178.719 80 1],[178.885 45 1],[179.841 80 1],[180.126 45 1],[180.707 15 2],[180.709 90 1],[180.838 60 1],[181.077 10 2],[181.167 11 2],[181.681 10 2],[182.17 50 1],[183.387 45 1],[183.522 10 2],[183.522 80 1],[183.789 45 1],[183.894 10 2],[184.182 60 1],[184.436 11 2],[184.502 70 1],[184.753 12 2],[184.759 10 2],[184.956 15 2],[185.015 45 1],[185.038 12 2],[185.119 70 1],[185.317 80 1],[185.592 10 2],[185.671 10 2],[186.121 10 2],[186.645 45 1],[187.337 45 1],[187.508 60 1],[188.066 10 2],[188.191 160 1],[188.509 50 1],[188.574 45 1],[188.739 10 2],[188.747 20 2],[189.075 15 2],[190.016 15 2],[191.845 10 2],[192.396 11 2],[192.626 14 2],[192.724 12 2],[193.274 12 2],[193.389 13 2],[194.352 10 2],[194.643 12 2],[195.091 12 2],[195.124 14 2],[196.076 12 3],[196.508 11 3],[196.76 10 3],[197.716 10 2],[198.557 13 2],[199.568 10 2],[200.421 10 2],[200.522 11 2],[200.847 11 2],[201.187 15 2],[201.417 11 2],[201.703 12 2],[201.839 10 3],[202.856 12 2],[203.113 12 2],[203.59 11 2],[204.166 12 2],[204.329 12 2],[204.482 10 2],[204.544 10 2],[205.148 11 2],[206.036 10 2],[206.66 15 2],[208.291 13 2],[210.633 12 3],[211.453 10 3],[214.072 15 2],[214.454 14 2],[215.576 10 3],[220.283 15 2],[222.593 15 2],[222.853 80 1],[223.033 30 2],[223.219 16 2],[224.67 20 2],[225.147 14 2],[227.842 15 2],[228.566 13 2],[230.358 80 1],[230.999 15 2],[231.565 300 1],[238.699 18 2],[239.328 130 1],[239.403 17 2],[240.101 100 1],[240.659 15 2],[242.099 300 1],[242.473 300 1],[243.914 200 1],[244.15 250 1],[244.872 200 1],[245.218 200 1],[245.931 25 2],[246.885 18 2],[247.473 20 2],[249.315 1000 1],[249.703 25 2],[250.284 300 1],[250.63 450 1],[251.026 17 2],[251.546 600 1],[253.025 15 2],[253.154 600 1],[254.28 14 2],[258.631 550 1],[259.496 600 1],[261.181 850 1],[262.741 300 1],[263.181 300 1],[264.853 160 1],[265.131 200 1],[265.981 200 1],[266.1 850 1],[266.346 200 1],[266.646 350 1],[267.183 1000 1],[267.404 200 1],[267.809 850 1],[280.871 650 1],[280.952 850 1],[281.829 350 1],[282.987 600 1],[283.956 800 1],[284.172 1000 1],[285.281 16 0],[285.301 15 0],[285.651 650 1],[285.949 800 1],[286.102 350 1],[287.128 750 1],[287.295 650 1],[288.115 900 1],[288.626 850 1],[289.395 700 1],[290.114 900 1],[290.472 800 1],[290.492 1100 1],[291.752 1100 1],[291.905 1100 1],[291.985 1200 1],[292.095 1300 1],[292.349 1000 1],[293.088 750 1],[293.408 850 1],[293.774 950 1],[294.266 450 1],[294.57 800 1],[294.75 950 1],[295.124 1200 1],[295.24 1100 1],[296.012 850 1],[296.574 450 1],[297.073 500 1],[297.424 600 1],[297.499 750 1],[297.713 1000 1],[297.966 1100 1],[298.063 1100 1],[298.419 1300 1],[300.415 550 1],[300.744 750 1],[300.914 750 1],[300.948 450 1],[301.54 600 1],[301.734 450 1],[302.907 400 1],[303.708 400 1],[304.56 400 1],[305.367 550 1],[305.535 550 1],[305.616 550 1],[305.738 550 1],[305.795 550 1],[305.872 550 1],[306.025 700 1],[306.135 800 1],[306.438 500 1],[306.622 500 1],[306.654 500 1],[307.433 550 1],[307.832 550 1],[308.025 550 1],[308.706 550 1],[308.826 450 1],[309.204 550 1],[309.273 550 1],[309.445 650 1],[309.555 650 1],[310.358 500 1],[310.44 500 1],[311.145 450 1],[311.369 500 1],[312.294 400 1],[312.442 1700 1],[312.521 600 1],[312.938 600 1],[313.548 2500 1],[313.786 1700 1],[314.571 950 1],[314.928 2000 1],[316.374 2000 1],[317.509 700 1],[317.906 1000 1],[318.979 1700 1],[321.219 1600 1],[323.493 700 1],[325.796 1500 1],[326.021 650 1],[327.422 950 1],[328.56 1700 1],[330.135 1700 1],[330.237 19 0],[330.298 18 0],[330.496 1500 1],[331.804 1000 1],[332.769 950 1],[342.686 6 0],[353.305 1500 1],[363.127 1200 1],[371.107 850 1],[408.137 200 1],[411.37 300 1],[412.308 250 1],[423.326 250 1],[423.899 2 0],[424.037 200 1],[424.09 250 1],[424.208 3 0],[427.364 4 0],[427.679 5 0],[428.784 2 0],[429.101 3 0],[429.248 250 1],[429.286 250 1],[430.881 250 1],[430.904 250 1],[432.091 250 1],[432.14 6 0],[432.462 7 0],[433.729 250 1],[434.149 4 0],[434.411 250 1],[434.474 5 0],[436.86 200 1],[437.522 200 1],[438.749 200 1],[439.003 8 0],[439.281 250 1],[439.334 9 0],[440.512 200 1],[441.989 6 0],[442.325 7 0],[444.67 200 1],[444.741 200 1],[445.474 200 1],[445.523 200 1],[445.721 200 1],[447.463 200 1],[447.88 200 1],[448.167 200 1],[449.015 200 1],[449.087 200 1],[449.418 10 0],[449.766 11 0],[449.962 200 1],[450.697 200 1],[451.921 200 1],[452.498 200 1],[453.332 200 1],[454.163 7 0],[454.519 8 0],[455.153 200 1],[459.092 160 1],[472.223 160 1],[473.11 160 1],[473.25 100 1],[474.167 160 1],[476.879 160 1],[478.879 100 1],[481.475 50 1],[483.526 50 1],[514.311 60 1],[519.165 100 1],[520.333 50 1],[520.855 80 1],[539.063 60 1],[540.046 70 1],[541.455 90 1],[568.2633 5 0],[568.8204 9 0],[588.995 32 0],[589.5924 16 0],[617.525 60 1],[619.926 70 1],[623.468 70 1],[626.001 80 1],[627.474 80 1],[631.08 60 1],[635.283 60 1],[635.805 60 1],[636.115 70 1],[636.641 70 1],[637.891 60 1],[647.529 50 1],[651.421 90 1],[652.468 80 1],[653.07 130 1],[654.404 130 1],[654.575 130 1],[655.243 80 1],[780.978 4 0],[781.024 3 0],[818.3256 5 0],[819.4824 9 0],[864.992 7 0],[865.089 6 0],[915.388 4 0],[946.594 6 0],[996.128 7 0],[1057.228 3 0],[1074.644 10 0],[1074.929 9 0],[1083.487 8 0],[1138.145 11 0],[1140.378 12 0],[1476.748 115 0],[2205.6439 30 0],[2208.367 27 0],[2334.841 24 0],[2337.9131 24 0]}{ALLx2500x115x2500x100x15x1000x0}{UVx2500x19x2500x100x15x1000x0}{VISx300x32x300x0x0x0x0}{IVx115x115x0x0x0x0x0}%
\pgfspectra@elt@search{#1}{Mg}{[11.816 40 3],[11.881 80 3],[12.359 70 3],[12.465 240 3],[12.986 300 3],[13.281 300 3],[14.695 400 3],[14.741 300 3],[14.754 300 3],[17.08 15 2],[17.139 15 2],[18.007 350 3],[18.062 400 3],[18.08 400 3],[18.134 350 3],[18.224 15 2],[18.297 12 2],[18.651 20 2],[18.72 20 2],[18.853 10 2],[23.173 100 2],[23.426 80 2],[25.158 5 4],[27.658 35 4],[31.23 10 4],[32.099 4000 3],[32.331 3000 3],[35.109 20 4],[35.22 18 4],[35.309 30 4],[35.33 15 4],[35.422 18 4],[35.533 20 4],[80.041 40 3],[85.729 150 3],[86.674 30 3],[91.903 50 3],[92.978 30 3],[94.67 8 1],[94.677 9 1],[100.876 40 3],[102.596 14 1],[102.611 12 1],[102.641 30 3],[103.741 250 3],[104.437 80 3],[105.576 60 3],[121.099 300 3],[123.994 25 1],[124.04 20 1],[124.851 6 1],[124.993 8 1],[127.124 8 1],[127.194 9 1],[127.272 8 1],[127.343 11 1],[127.483 10 2],[128.07 11 2],[130.671 11 1],[130.788 12 1],[130.828 12 1],[130.944 14 1],[134.219 300 3],[134.657 800 3],[134.668 300 3],[135.205 600 3],[136.545 14 1],[136.726 15 1],[136.77 15 1],[136.942 18 1],[138.446 900 3],[138.577 500 3],[138.753 800 3],[139.127 12 2],[139.339 15 2],[140.468 300 3],[140.936 1000 3],[143.114 10 2],[143.753 500 3],[143.764 1000 3],[144.742 300 3],[145.954 300 3],[145.962 400 3],[147.6 20 1],[147.801 25 1],[148.089 20 1],[148.151 400 3],[148.29 30 1],[149.045 350 3],[149.55 300 3],[157.271 16 2],[158.624 12 2],[160.711 300 3],[164.593 1 0],[165.116 1 0],[165.831 2 0],[166.843 5 0],[168.302 500 3],[168.341 10 0],[168.709 13 2],[169.728 13 2],[169.881 400 3],[170.706 15 0],[172.204 10 2],[173.484 40 1],[173.762 50 1],[173.884 22 2],[174.756 12 2],[174.78 20 0],[174.893 18 2],[175.065 40 1],[175.346 50 1],[177.298 15 2],[178.325 20 2],[179.458 14 2],[180.066 15 2],[182.793 30 0],[184.417 300 3],[185.819 13 2],[187.949 12 2],[190.85 10 2],[192.39 12 2],[193.067 13 2],[193.784 11 2],[202.582 9 0],[203.955 15 2],[205.549 15 2],[206.49 25 2],[208.59 15 2],[209.196 20 2],[209.793 13 2],[211.277 15 2],[213.406 16 2],[217.77 20 2],[232.958 3 1],[239.515 20 2],[244.957 6 1],[246.775 15 2],[249.054 10 2],[251.84 12 3],[252.919 10 2],[253.479 4 3],[255.723 1 0],[256.094 1 0],[256.226 1 0],[256.494 1 0],[257.091 1 0],[257.225 1 0],[257.494 2 0],[257.789 1 0],[258.059 1 0],[258.422 1 0],[258.556 2 0],[258.828 3 0],[259.189 1 0],[259.323 1 0],[259.597 2 0],[260.25 2 0],[260.385 4 0],[260.662 5 0],[261.336 1 0],[261.473 2 0],[261.751 3 0],[262.866 3 0],[263.005 6 0],[263.287 8 0],[264.48 2 0],[264.621 3 0],[264.906 4 0],[266.076 8 1],[266.082 8 1],[266.812 6 0],[266.955 8 0],[267.246 10 0],[269.372 3 0],[269.518 5 0],[269.814 6 0],[273.199 8 0],[273.349 10 0],[273.653 12 0],[276.522 5 0],[276.834 7 0],[277.669 38 0],[277.827 32 0],[277.983 90 0],[278.129 8 0],[278.142 32 0],[278.297 36 0],[279.079 13 1],[279.553 1000 1],[279.806 16 1],[280.27 600 1],[280.976 3 0],[281.111 2 0],[281.178 1 0],[284.672 12 0],[284.675 12 0],[284.834 14 0],[284.842 14 0],[285.165 16 0],[285.166 16 0],[285.213 6000 0],[290.292 2 0],[290.636 4 0],[291.545 3 0],[291.545 3 0],[292.875 2 1],[293.654 3 1],[293.674 10 0],[293.674 10 0],[293.847 12 0],[293.847 12 0],[294.2 2 0],[294.2 13 0],[296.787 1 1],[297.17 1 1],[309.108 20 0],[309.299 22 0],[309.69 14 0],[310.471 9 1],[310.481 8 1],[316.898 6 1],[317.271 6 1],[317.578 7 1],[319.762 2 0],[329.905 12 2],[330.639 13 2],[332.993 17 0],[333.215 6 0],[333.59 12 2],[333.668 9 0],[334.258 11 2],[336.141 12 2],[338.124 10 2],[338.29 11 2],[338.737 11 2],[353.504 7 1],[353.886 8 1],[354.952 7 1],[355.337 8 1],[370.674 10 2],[382.93 140 0],[383.23 300 0],[383.829 500 0],[384.824 8 1],[384.891 1 0],[385.04 7 1],[385.396 2 0],[385.496 1 0],[385.886 2 0],[387.831 3 0],[389.191 2 0],[389.33 2 0],[389.557 3 0],[390.386 4 0],[393.84 6 0],[398.421 1 0],[398.675 8 0],[405.469 2 0],[405.75 10 0],[407.506 3 0],[408.183 2 0],[416.51 4 0],[416.727 15 0],[435.191 20 0],[435.453 6 0],[438.038 6 0],[438.464 9 1],[439.059 10 1],[442.8 8 1],[443.399 9 1],[443.649 5 1],[443.66 4 1],[448.116 14 1],[448.133 13 1],[453.429 6 1],[457.11 28 0],[462.13 3 0],[470.299 7 0],[473.003 10 0],[473.959 6 1],[473.971 5 1],[485.11 7 1],[491.6 10 2],[516.733 75 0],[517.268 220 0],[518.361 400 0],[526.421 8 1],[526.437 7 1],[534.598 1 0],[540.154 9 1],[550.96 2 0],[552.841 6 0],[571.109 30 0],[578.531 5 0],[578.556 4 0],[583.982 10 2],[591.643 7 1],[591.816 6 1],[625.675 15 2],[631.872 10 0],[631.924 9 0],[631.949 7 0],[634.674 10 1],[634.696 9 1],[654.597 11 1],[662.044 5 1],[662.057 6 1],[663.083 2 0],[678.145 7 1],[678.785 8 1],[681.286 7 1],[681.927 8 1],[689.49 4 0],[696.54 6 0],[706.041 8 0],[719.317 10 0],[729.106 10 0],[738.7 5 0],[738.769 12 0],[758.076 4 1],[765.76 20 0],[765.915 19 0],[765.99 17 0],[769.016 8 0],[769.155 15 0],[772.261 1 0],[774.634 1 0],[775.93 1 0],[778.65 5 1],[779.098 4 1],[781.114 3 0],[787.705 12 1],[788.167 2 0],[789.637 13 1],[793.081 7 0],[804.773 3 0],[804.985 5 0],[805.423 7 0],[809.872 10 0],[811.522 9 1],[812.043 8 1],[815.464 1 0],[815.913 2 0],[820.984 10 0],[821.303 20 0],[821.399 10 1],[822.292 7 1],[823.319 7 1],[823.464 11 1],[830.331 7 0],[830.56 9 0],[831.026 10 0],[834.612 15 0],[846.648 2 0],[846.884 5 0],[847.369 7 0],[871.018 10 0],[871.269 12 0],[871.783 13 0],[873.499 10 1],[873.602 17 0],[874.566 11 1],[880.676 14 0],[882.432 10 1],[883.508 11 1],[892.357 20 0],[898.903 7 0],[899.169 9 0],[899.716 10 0],[921.825 14 1],[924.427 13 1],[924.65 12 0],[925.578 30 0],[932.754 10 1],[934.054 10 1],[941.496 25 0],[942.981 17 0],[943.276 19 0],[943.878 20 0],[950.245 8 0],[950.311 7 0],[950.343 5 0],[963.189 12 1],[963.243 11 1],[995.32 15 0],[998.32 15 0],[998.647 17 0],[999.321 18 0],[1009.216 14 1],[1039.176 5 1],[1039.223 6 1],[1081.108 35 0],[1091.423 11 1],[1091.527 7 1],[1095.178 10 1],[1095.332 25 0],[1095.73 27 0],[1096.545 28 0],[1103.21 15 0],[1103.366 14 0],[1125.593 5 1],[1125.635 4 1],[1182.818 45 0],[1208.366 30 0],[1487.762 28 0],[1502.499 35 0],[1504.024 30 0],[1504.77 25 0],[1574.071 6 0],[1574.899 8 0],[1576.584 10 0],[1710.866 30 0],[2639.29 5 0]}{ALLx6000x6000x1000x100x4000x35x0}{UVx6000x6000x1000x100x4000x35x0}{VISx500x500x14x15x0x0x0}{IVx45x45x14x0x0x0x0}%
\pgfspectra@elt@search{#1}{Al}{[10.38 300 4],[10.388 400 4],[10.407 250 4],[10.418 250 4],[10.795 600 4],[10.806 300 4],[10.811 300 4],[11.85 250 4],[12.403 400 3],[12.553 900 4],[12.607 800 4],[12.973 700 3],[13.041 800 4],[13.085 1000 4],[13.1 900 4],[13.144 900 4],[13.263 500 4],[16.007 800 3],[16.169 700 3],[27.869 1000 4],[28.139 900 4],[48.6884 70 2],[48.6912 30 2],[51.1138 250 2],[51.1191 150 2],[56.0317 500 2],[56.0433 200 2],[67.0068 100 2],[67.1118 200 2],[69.5829 500 2],[69.6217 400 2],[72.5683 200 2],[72.6915 300 2],[85.5034 400 2],[85.6746 500 2],[89.2024 400 2],[89.3887 50 2],[89.3897 450 2],[102.734 500 3],[104.217 800 3],[104.852 700 3],[105.89 500 3],[106.143 500 3],[106.489 600 3],[106.657 500 3],[106.826 250 4],[106.944 600 3],[108.867 500 4],[109.014 300 4],[110.574 400 3],[111.882 600 3],[112.561 500 3],[113.682 400 3],[115.03 300 4],[116.259 10 2],[116.262 5 2],[116.542 350 4],[116.848 250 4],[117.743 40 1],[119.1812 50 1],[119.85 400 3],[122.055 400 3],[123.719 900 3],[124.021 600 3],[124.086 700 3],[124.879 700 3],[125.762 900 3],[126.418 800 3],[127.276 1000 3],[128.77 500 4],[133.006 400 4],[133.79 400 3],[135.018 150 1],[135.052 400 4],[135.281 100 2],[135.282 5 2],[135.286 70 2],[136.335 400 4],[136.92 600 4],[137.37 300 4],[137.662 500 3],[137.967 600 2],[138.413 800 2],[138.879 500 3],[143.194 600 3],[144.182 700 3],[144.587 400 4],[144.751 800 3],[145.526 300 4],[145.796 600 3],[147.564 600 4],[148.605 300 4],[148.689 700 3],[149.479 800 3],[150.837 700 4],[151.907 400 3],[152.614 1000 4],[153.754 800 3],[153.912 500 4],[153.983 800 1],[155.019 500 3],[155.725 1000 3],[155.903 500 3],[156.416 700 3],[156.9385 100 1],[157.79 300 4],[158.204 900 3],[158.446 800 3],[158.928 400 3],[158.987 350 4],[159.6059 125 1],[160.5766 700 2],[160.665 400 3],[161.1814 100 2],[161.1874 800 2],[161.781 400 3],[162.5627 150 1],[162.754 600 3],[163.682 500 3],[163.906 800 3],[164.4235 100 1],[164.4809 100 1],[167.0787 1000 1],[168.625 100 1],[171.944 800 1],[172.1244 500 1],[172.1271 900 1],[172.4952 500 1],[172.4984 900 1],[176.0104 350 1],[176.1975 300 1],[176.3 290 0],[176.3869 500 1],[176.3952 700 1],[176.564 450 0],[176.5815 300 1],[176.638 450 0],[176.7731 400 1],[176.914 450 0],[181.856 1000 3],[182.8588 600 1],[183.2837 400 1],[183.4808 250 1],[185.4716 1000 2],[185.5929 300 1],[185.8026 700 1],[185.998 120 1],[186.2311 1000 1],[186.279 600 2],[188.116 700 3],[192.9978 200 1],[193.1048 150 1],[193.2377 200 1],[193.4503 400 1],[193.4713 150 1],[193.584 300 2],[193.5863 15 2],[193.5949 200 2],[193.6907 150 1],[193.9261 220 1],[199.0531 700 1],[201.6052 150 1],[201.6234 150 1],[201.6368 100 1],[207.4008 200 1],[209.4264 700 1],[209.4744 150 1],[209.4791 300 1],[209.5104 100 1],[209.5141 200 1],[215.07 60 0],[218.1 60 0],[226.91 400 0],[226.922 120 0],[231.249 60 0],[231.353 70 0],[231.748 90 0],[231.906 60 0],[232.156 140 0],[236.705 460 0],[236.761 110 0],[236.811 110 0],[236.93 180 0],[237.022 140 0],[237.073 70 0],[237.207 160 0],[237.312 850 0],[237.335 170 0],[237.357 110 0],[237.84 60 0],[239.9 110 2],[251.33 60 0],[251.587 400 3],[256.798 240 0],[257.51 480 0],[257.54 60 0],[263.155 80 1],[263.77 110 1],[265.248 150 0],[266.039 200 0],[266.917 160 1],[276.277 285 2],[276.287 220 2],[281.619 650 1],[283.796 90 0],[284.01 90 0],[290.693 450 2],[304.128 150 1],[305.007 360 0],[305.468 60 0],[305.714 450 0],[306.429 90 0],[306.614 60 0],[307.464 150 1],[308.2153 4500 0],[309.271 7200 0],[309.2839 1800 0],[320.82 500 3],[326.721 500 3],[328.513 600 3],[334.446 400 3],[334.852 360 2],[335.088 290 2],[342.892 150 1],[343.935 70 0],[344.364 150 0],[344.486 70 0],[345.822 70 0],[347.354 500 3],[347.981 60 0],[348.263 60 0],[349.223 900 3],[350.846 800 3],[351.128 500 3],[351.756 700 3],[352.703 400 3],[354.108 500 3],[358.656 450 1],[358.707 360 1],[358.745 290 1],[360.163 870 2],[360.193 550 2],[361.236 750 2],[365.106 220 1],[365.11 110 1],[365.498 150 1],[365.5 290 1],[370.211 450 2],[371.312 550 2],[390.068 450 1],[393.2 60 0],[394.4006 4500 0],[396.152 9000 0],[398.014 110 2],[399.586 110 1],[408.245 110 2],[408.861 150 2],[414.237 110 2],[414.992 650 2],[415.017 650 2],[422.681 290 1],[436.464 110 2],[447.989 650 2],[447.997 650 2],[451.256 760 2],[452.894 550 2],[452.919 870 2],[458.582 150 1],[458.819 110 1],[466.68 550 1],[470.115 110 2],[470.141 150 2],[489.876 110 1],[490.277 110 1],[490.41 110 2],[510.752 70 0],[515.101 110 2],[516.389 110 2],[528.021 150 1],[528.377 290 1],[528.585 150 1],[531.232 110 1],[531.607 220 1],[537.184 150 1],[555.706 180 0],[555.795 110 0],[559.323 450 1],[569.66 1200 2],[572.273 1000 2],[585.362 110 1],[597.194 220 1],[600.176 290 1],[600.188 220 1],[600.642 450 1],[605.521 110 2],[606.111 150 1],[606.843 290 1],[606.853 110 1],[607.323 450 1],[618.157 110 1],[618.168 150 1],[618.228 290 1],[618.245 220 1],[618.342 450 1],[620.152 450 1],[620.17 360 1],[622.618 290 1],[623.178 360 1],[624.336 450 1],[633.574 450 1],[669.602 360 0],[669.867 230 0],[708.397 60 0],[708.464 70 0],[736.157 110 0],[736.23 140 0],[760.616 60 0],[761.482 90 0],[763.537 220 2],[766.026 150 2],[768.197 220 2],[783.531 230 0],[783.613 290 0],[788.179 360 2],[788.252 150 2],[790.551 290 2],[799.305 60 0],[800.319 90 0],[806.597 70 0],[807.535 110 0],[824.359 290 2],[827.511 360 2],[864.07 290 1],[877.287 360 0],[877.39 450 0],[882.891 110 0],[884.128 180 0],[891.29 90 0],[892.356 140 0],[908.991 60 0],[913.995 70 0],[929.065 150 1],[929.075 110 1],[957.152 290 2],[960.599 360 2],[1007.629 150 1],[1076.836 110 0],[1078.204 140 0],[1087.298 110 0],[1089.173 230 0],[1125.319 450 0],[1125.488 570 0],[1312.341 570 0],[1315.076 450 0],[1671.8961 230 0],[1675.0561 300 0],[1676.3359 140 0],[2109.3039 300 0],[2116.375 360 0]}{ALLx9000x9000x1000x1200x1000x1000x0}{UVx7200x7200x1000x1000x1000x1000x0}{VISx9000x9000x550x1200x0x0x0}{IVx570x570x290x360x0x0x0}%
-\pgfspectra@elt@search{#1}{Si}{[7.861 1 4],[7.89 1 4],[8.081 2 4],[8.111 2 4],[8.518 10 4],[8.558 6 4],[9.045 4 4],[9.085 4 4],[9.644 15 4],[9.714 10 4],[9.821 2 4],[11.786 20 4],[11.897 20 4],[45.782 4 3],[45.816 3 3],[51.512 2 3],[51.635 3 3],[56.661 8 2],[64.576 2 3],[65.222 6 2],[65.333 8 2],[67.348 5 2],[74.994 5 3],[80.007 5 2],[80.51 10 1],[81.505 7 3],[81.813 8 3],[82.052 20 1],[82.341 9 2],[84.372 20 1],[84.577 40 1],[85.014 10 1],[88.34 5 2],[88.972 100 1],[89.2 200 1],[89.941 10 1],[90.174 20 1],[91.301 10 1],[91.385 20 1],[92.981 20 1],[93.909 7 2],[96.795 9 2],[98.987 100 1],[99.268 200 1],[99.352 10 2],[99.479 13 2],[99.739 16 2],[100.537 7 2],[102.07 25 1],[102.369 50 1],[103.116 7 2],[103.392 8 2],[103.705 7 2],[105.705 30 1],[105.75 15 1],[106.663 8 3],[108.322 6 2],[110.837 14 2],[110.997 16 2],[111.323 18 2],[112.249 8 3],[112.744 20 1],[112.791 40 1],[112.834 10 3],[114.055 6 2],[114.158 7 2],[114.228 6 2],[114.431 8 2],[114.496 6 2],[114.511 8 2],[114.518 7 2],[115.5 6 2],[115.596 6 2],[115.81 7 2],[116.026 6 2],[116.158 8 2],[117.437 5 2],[117.443 6 2],[117.8 8 2],[119.042 100 1],[119.328 200 1],[119.45 250 1],[119.739 100 1],[120.651 30 2],[120.653 30 2],[120.752 9 2],[121.046 10 2],[121.612 10 1],[122.391 20 1],[122.425 20 1],[122.497 10 1],[122.681 50 1],[122.689 20 1],[122.699 40 1],[122.76 100 1],[122.844 10 1],[122.862 25 1],[122.875 150 1],[122.939 200 1],[123.543 7 2],[123.592 10 1],[124.674 100 1],[124.843 150 1],[125.009 100 1],[125.043 150 1],[125.116 200 1],[125.528 10 0],[125.649 40 0],[125.88 50 0],[126.042 1000 1],[126.473 2000 1],[126.502 200 1],[128.035 6 2],[129.454 17 2],[129.673 14 2],[129.889 15 2],[129.896 18 2],[130.115 14 2],[130.332 16 2],[130.437 100 1],[130.559 50 1],[130.927 200 1],[130.946 20 1],[131.259 13 2],[134.147 8 2],[134.239 7 2],[134.339 6 2],[134.687 100 1],[134.854 100 1],[135.006 150 1],[135.052 20 1],[135.066 20 1],[135.264 100 1],[135.372 100 1],[136.16 8 2],[136.237 5 2],[136.347 7 2],[136.526 8 2],[136.705 7 2],[136.944 5 2],[137.303 5 2],[138.799 5 2],[139.376 15 3],[140.277 12 3],[140.907 10 1],[141.022 20 1],[141.697 10 1],[141.724 13 2],[143.369 6 2],[143.577 8 2],[143.617 7 2],[144.173 5 2],[144.72 6 2],[145.725 5 2],[147.465 15 1],[148.487 15 1],[148.502 90 1],[148.522 30 1],[148.551 100 1],[150.024 12 2],[150.119 10 2],[150.187 9 2],[150.606 6 2],[150.91 100 1],[151.207 50 1],[151.357 30 1],[151.691 60 1],[152.672 500 1],[153.345 1000 1],[156.245 10 1],[156.285 15 1],[156.377 10 1],[157.387 50 0],[157.482 50 0],[159.241 50 0],[159.455 150 0],[159.493 50 0],[159.795 30 0],[162.287 100 0],[162.571 30 0],[162.943 300 0],[162.992 200 0],[163.113 75 0],[163.398 50 0],[163.461 1 3],[165.335 30 0],[166.452 30 0],[166.637 50 0],[166.762 100 0],[166.852 100 0],[167.259 100 0],[167.332 7 2],[167.52 200 0],[168.268 30 0],[168.682 30 0],[168.929 50 0],[169.079 30 0],[169.329 50 0],[169.551 50 0],[169.62 200 0],[169.794 200 0],[170.042 50 0],[170.063 30 0],[170.286 30 0],[170.443 50 0],[171.083 10 1],[171.13 20 1],[172.253 6 3],[172.738 5 3],[174.388 30 0],[174.74 50 0],[175.311 30 0],[176.366 50 0],[176.503 40 0],[176.56 30 0],[176.606 30 0],[177.063 30 0],[177.092 100 0],[177.683 100 0],[178.323 50 0],[179.912 100 0],[180.8 150 1],[180.909 50 0],[181.407 500 0],[181.692 200 1],[181.745 10 1],[182.245 50 0],[183.651 200 0],[183.801 30 0],[184.115 100 0],[184.144 200 0],[184.255 9 2],[184.377 200 0],[184.551 300 0],[184.61 100 0],[184.747 400 0],[184.814 200 0],[184.874 100 0],[185.067 500 0],[185.179 30 0],[185.246 200 0],[185.315 50 0],[186.932 20 1],[187.023 15 1],[187.31 100 0],[187.484 500 0],[187.581 100 0],[188.185 200 0],[188.77 200 0],[189.325 200 0],[190.133 1000 0],[190.246 100 1],[190.466 50 0],[191.062 50 1],[194.167 50 1],[194.459 15 1],[194.933 10 1],[194.956 100 1],[195.497 100 0],[198.443 30 0],[199.185 50 0],[201.097 30 0],[205.483 50 0],[205.865 50 1],[205.901 50 1],[206.119 40 0],[206.552 30 0],[207.202 200 1],[207.27 200 1],[210.321 30 0],[211.463 30 0],[212.018 3 3],[212.412 100 0],[212.747 4 3],[213.399 10 1],[213.64 30 1],[213.656 50 1],[214.791 50 0],[217.689 5 2],[220.798 110 0],[221.089 115 0],[221.174 110 0],[221.667 120 0],[221.806 120 0],[221.891 50 0],[228.704 5 3],[229.103 35 0],[229.548 6 2],[229.687 10 2],[230.093 8 2],[230.306 55 0],[230.819 10 2],[232.856 2 3],[233.44 30 1],[233.461 30 1],[234.42 10 1],[234.954 10 1],[235.017 20 1],[235.309 20 1],[235.63 100 1],[235.718 30 1],[235.797 50 1],[236.02 10 1],[236.676 2 3],[236.697 30 1],[237.099 3 3],[237.426 20 1],[242.845 10 1],[243.515 300 0],[243.877 65 0],[244.336 65 0],[244.948 11 2],[245.212 70 0],[248.282 2 3],[248.32 6 2],[248.538 1 3],[250.69 425 0],[251.432 375 0],[251.6113 500 0],[251.751 7 3],[251.9202 350 0],[252.4108 425 0],[252.8509 450 0],[253.2381 110 0],[254.182 25 2],[254.609 10 2],[255.921 14 2],[256.3679 30 0],[256.8641 85 0],[257.7151 45 0],[263.1282 190 0],[264.079 11 2],[265.551 14 2],[267.219 1 3],[267.512 4 3],[267.525 4 3],[267.757 1 3],[268.221 10 1],[272.381 3 3],[281.711 9 2],[283.149 7 2],[283.962 5 2],[288.1579 1000 0],[288.751 10 1],[289.513 3 3],[290.428 300 1],[290.447 2 3],[290.569 500 1],[295.915 5 2],[297.0355 55 0],[297.152 1 3],[298.052 5 2],[298.7645 150 0],[300.6739 50 0],[301.309 5 2],[302.0004 75 0],[302.155 20 1],[303 100 1],[303.473 6 2],[303.729 8 2],[304.093 9 2],[304.157 20 1],[304.219 30 1],[304.369 100 1],[304.385 10 1],[304.393 7 2],[304.508 5 2],[304.577 10 1],[304.83 50 1],[305.318 150 1],[306.824 7 2],[308.624 25 2],[308.646 6 2],[309.342 20 2],[309.365 5 2],[309.683 16 2],[312.627 6 2],[314.737 7 2],[314.956 7 3],[316.161 8 2],[316.571 9 3],[318.513 16 2],[318.602 13 2],[318.897 150 1],[319.225 50 1],[319.309 150 1],[319.421 50 1],[319.469 50 1],[319.541 100 1],[319.65 14 2],[319.951 200 1],[320.249 20 1],[320.387 100 1],[321.003 200 1],[321.055 15 2],[321.466 75 1],[321.625 7 2],[321.799 15 1],[322.044 10 1],[322.301 20 1],[323.05 12 2],[323.395 14 2],[324.162 15 2],[324.419 1 3],[325.34 7 2],[325.374 5 2],[325.48 7 2],[325.866 12 2],[327.046 6 2],[327.626 10 2],[327.926 7 2],[333.314 300 1],[333.982 500 1],[348.691 15 2],[352.594 9 2],[356.967 8 2],[359.047 20 2],[362.254 8 2],[363.945 5 2],[364.512 6 2],[368.14 7 2],[368.215 5 2],[376.244 8 3],[377.315 6 3],[379.141 20 2],[379.611 25 2],[380.654 30 2],[384.246 7 2],[385.366 100 1],[385.602 500 1],[386.26 200 1],[390.5523 300 0],[392.447 20 2],[394.749 6 2],[395.574 10 1],[396.384 6 2],[397.746 10 1],[398.124 5 2],[399.177 15 1],[399.801 10 1],[403.139 1 3],[403.806 2 3],[407.545 20 1],[407.678 15 1],[408.885 10 3],[410.186 5 2],[410.242 8 2],[410.2936 70 0],[411.55 5 2],[411.61 9 3],[412.807 300 1],[413.089 500 1],[418.335 10 1],[419.072 100 1],[419.813 50 1],[421.241 7 3],[431.41 3 3],[432.818 5 3],[433.85 9 2],[434.14 8 2],[437.763 8 2],[440.373 2 3],[440.59 6 2],[440.672 8 2],[441.165 1 3],[449.405 6 2],[455.262 30 2],[455.4 8 2],[456.782 25 2],[457.476 20 2],[461.127 1 3],[461.966 7 2],[462.142 100 1],[462.172 150 1],[462.862 3 3],[463.124 9 3],[463.828 7 2],[465.432 10 3],[465.692 3 3],[466.587 8 2],[466.714 1 3],[467.33 2 3],[468.302 9 2],[468.38 7 2],[471.665 16 2],[473.052 7 2],[478.2991 50 0],[479.2212 35 0],[479.2324 80 0],[480.043 8 2],[481.333 15 2],[481.972 16 2],[482.897 18 2],[488.32 15 1],[490.699 20 1],[493.28 20 1],[494.745 1 3],[494.7607 30 0],[495.011 3 3],[500.6061 40 0],[504.103 1000 1],[505.598 1000 1],[509.142 10 2],[511.376 7 2],[511.412 8 2],[518.19 100 1],[518.525 100 1],[519.286 200 1],[519.726 5 2],[520.241 500 1],[529.519 30 1],[530.497 2 3],[530.949 1 3],[540.534 100 1],[541.724 15 1],[542.892 15 1],[543.289 15 1],[543.862 100 1],[544.726 20 1],[545.146 6 2],[545.449 15 1],[545.645 100 1],[546.643 500 1],[546.687 500 1],[546.921 100 1],[547.305 7 2],[549.323 40 0],[549.645 200 1],[551.7535 35 0],[554.074 100 1],[557.666 150 1],[562.2221 30 0],[563.297 100 1],[563.948 200 1],[564.5611 90 0],[566.066 150 1],[566.5554 80 0],[566.956 1000 1],[568.144 30 1],[568.4484 120 0],[568.881 300 1],[569.0425 100 0],[570.1105 90 0],[570.137 200 1],[570.46 7 2],[570.637 100 1],[570.8397 160 0],[571.629 8 2],[573.973 20 2],[574.7667 45 0],[575.3625 45 0],[575.422 45 0],[576.2977 45 0],[577.2145 70 0],[578.0384 70 0],[578.573 30 1],[579.3071 90 0],[579.49 30 1],[579.7859 100 0],[580.047 150 1],[580.674 200 1],[582.78 30 1],[584.613 50 1],[586.748 10 1],[586.84 300 1],[587.3764 40 0],[589.879 10 2],[591.522 150 1],[594.8545 200 0],[595.756 500 1],[597.893 500 1],[606.745 10 1],[608.006 20 1],[608.667 10 1],[612.5021 90 0],[613.1574 85 0],[613.185 90 0],[614.2487 100 0],[614.5015 100 0],[615.5134 160 0],[623.732 160 0],[623.8287 40 0],[624.3813 125 0],[624.4468 125 0],[625.4188 180 0],[631.446 7 2],[633.1954 45 0],[634.71 1000 1],[637.136 1000 1],[652.436 6 2],[652.6609 45 0],[652.7199 45 0],[655.5462 45 0],[666.052 50 1],[666.5 15 1],[666.756 5 3],[667.188 100 1],[669.938 20 1],[670.121 7 3],[671.704 50 1],[672.1853 100 0],[674.164 30 0],[675.028 20 1],[681.845 30 1],[682.982 50 1],[683.156 6 2],[684.8568 30 0],[685.165 7 2],[697.6523 80 0],[699.836 3 3],[700.3567 180 0],[700.5883 180 0],[701.728 30 0],[701.7646 90 0],[703.4903 250 0],[704.794 6 3],[706.841 4 3],[716.469 70 0],[716.5545 200 0],[718.489 70 0],[719.358 65 0],[719.39 30 0],[722.6206 100 0],[723.5326 100 0],[723.582 60 0],[725.0625 180 0],[727.5294 160 0],[728.281 40 0],[728.9173 400 0],[729.026 55 0],[737.3 35 0],[740.5774 375 0],[740.9082 200 0],[741.535 40 0],[741.5946 275 0],[742.3497 425 0],[742.46 85 0],[746.189 5 2],[746.262 8 2],[746.632 9 2],[761.236 12 2],[763.05 2 3],[765.456 4 3],[767.875 4 3],[768.0267 100 0],[771.879 5 3],[772.382 6 3],[772.564 2 3],[773.047 1 3],[774.271 40 0],[775.291 1 3],[780.0008 30 0],[784.88 400 1],[784.972 500 1],[784.9967 30 0],[791.8386 90 0],[793.2349 120 0],[794.4001 140 0],[797.0306 35 0],[803.5619 35 0],[809.3241 70 0],[810.286 9 2],[810.345 11 2],[819.043 7 2],[819.116 6 2],[819.168 8 2],[823.0642 35 0],[824.061 1 3],[826.257 9 2],[826.564 5 2],[826.932 8 2],[827.138 5 2],[827.194 6 2],[844.3982 40 0],[850.1547 40 0],[850.2221 60 0],[853.6165 40 0],[855.678 120 0],[864.8462 50 0],[872.8011 40 0],[874.2451 75 0],[875.2009 100 0],[879.0389 35 0],[895.725 2 3],[901.816 1 3],[941.272 100 1],[941.3506 100 0],[1037.1269 30 0],[1058.5141 120 0],[1060.3431 120 0],[1066.0975 120 0],[1069.4251 30 0],[1072.7408 30 0],[1074.9384 60 0],[1078.455 30 0],[1078.6856 80 0],[1082.7091 140 0],[1084.3854 60 0],[1086.879 30 0],[1086.9541 130 0],[1088.2802 30 0],[1088.5336 30 0],[1097.9308 80 0],[1098.2061 30 0],[1101.7965 80 0],[1118.76 13 0],[1128.984 12 0],[1161.109 12 0],[1198.419 370 0],[1199.157 220 0],[1203.151 440 0],[1210.353 150 0],[1227.068 120 0],[1317.69 11 0],[1588.839 190 0],[1596.004 40 0],[1606.003 95 0],[1609.48 20 0],[1616.371 60 0],[1621.568 11 0],[1638.155 16 0],[1668.077 29 0],[1732.7289 28 0],[1872.29 26 0],[1938.5939 15 0],[1943.2971 48 0],[1949.3381 13 0],[1972.25 110 0],[1992.8881 31 0],[2091.7131 12 0],[2135.424 21 0],[2206.2711 12 0]}{ALLx2000x1000x2000x30x15x20x0}{UVx2000x1000x2000x30x15x20x0}{VISx1000x425x1000x30x10x0x0}{IVx500x440x500x11x2x0x0}%
+\pgfspectra@elt@search{#1}{Si}{[11.786 20 4],[11.897 20 4],[45.782 4 3],[45.816 3 3],[51.512 2 3],[51.635 3 3],[56.661 8 2],[64.576 2 3],[65.222 6 2],[65.333 8 2],[67.348 5 2],[74.994 5 3],[80.007 5 2],[80.51 10 1],[81.505 7 3],[81.813 8 3],[82.052 20 1],[82.341 9 2],[84.372 20 1],[84.577 40 1],[85.014 10 1],[88.34 5 2],[88.972 100 1],[89.2 200 1],[89.941 10 1],[90.174 20 1],[91.301 10 1],[91.385 20 1],[92.981 20 1],[93.909 7 2],[96.795 9 2],[98.987 100 1],[99.268 200 1],[99.352 10 2],[99.479 13 2],[99.739 16 2],[100.537 7 2],[102.07 25 1],[102.369 50 1],[103.116 7 2],[103.392 8 2],[103.705 7 2],[105.705 30 1],[105.75 15 1],[106.663 8 3],[108.322 6 2],[110.837 14 2],[110.997 16 2],[111.323 18 2],[112.249 8 3],[112.744 20 1],[112.791 40 1],[112.834 10 3],[114.055 6 2],[114.158 7 2],[114.228 6 2],[114.431 8 2],[114.496 6 2],[114.511 8 2],[114.518 7 2],[115.5 6 2],[115.596 6 2],[115.81 7 2],[116.026 6 2],[116.158 8 2],[117.437 5 2],[117.443 6 2],[117.8 8 2],[119.042 100 1],[119.328 200 1],[119.45 250 1],[119.739 100 1],[120.651 30 2],[120.653 30 2],[120.752 9 2],[121.046 10 2],[121.612 10 1],[122.391 20 1],[122.425 20 1],[122.497 10 1],[122.681 50 1],[122.689 20 1],[122.699 40 1],[122.76 100 1],[122.844 10 1],[122.862 25 1],[122.875 150 1],[122.939 200 1],[123.543 7 2],[123.592 10 1],[124.674 100 1],[124.843 150 1],[125.009 100 1],[125.043 150 1],[125.116 200 1],[125.528 10 0],[125.649 40 0],[125.88 50 0],[126.042 1000 1],[126.473 2000 1],[126.502 200 1],[128.035 6 2],[129.454 17 2],[129.673 14 2],[129.889 15 2],[129.896 18 2],[130.115 14 2],[130.332 16 2],[130.437 100 1],[130.559 50 1],[130.927 200 1],[130.946 20 1],[131.259 13 2],[134.147 8 2],[134.239 7 2],[134.339 6 2],[134.687 100 1],[134.854 100 1],[135.006 150 1],[135.052 20 1],[135.066 20 1],[135.264 100 1],[135.372 100 1],[136.16 8 2],[136.237 5 2],[136.347 7 2],[136.526 8 2],[136.705 7 2],[136.944 5 2],[137.303 5 2],[138.799 5 2],[139.376 15 3],[140.277 12 3],[140.907 10 1],[141.022 20 1],[141.697 10 1],[141.724 13 2],[143.369 6 2],[143.577 8 2],[143.617 7 2],[144.173 5 2],[144.72 6 2],[145.725 5 2],[147.465 15 1],[148.487 15 1],[148.502 90 1],[148.522 30 1],[148.551 100 1],[150.024 12 2],[150.119 10 2],[150.187 9 2],[150.606 6 2],[150.91 100 1],[151.207 50 1],[151.357 30 1],[151.691 60 1],[152.672 500 1],[153.345 1000 1],[156.245 10 1],[156.285 15 1],[156.377 10 1],[157.387 50 0],[157.482 50 0],[159.241 50 0],[159.455 150 0],[159.493 50 0],[159.795 30 0],[162.287 100 0],[162.571 30 0],[162.943 300 0],[162.992 200 0],[163.113 75 0],[163.398 50 0],[163.461 1 3],[165.335 30 0],[166.452 30 0],[166.637 50 0],[166.762 100 0],[166.852 100 0],[167.259 100 0],[167.332 7 2],[167.52 200 0],[168.268 30 0],[168.682 30 0],[168.929 50 0],[169.079 30 0],[169.329 50 0],[169.551 50 0],[169.62 200 0],[169.794 200 0],[170.042 50 0],[170.063 30 0],[170.286 30 0],[170.443 50 0],[171.083 10 1],[171.13 20 1],[172.253 6 3],[172.738 5 3],[174.388 30 0],[174.74 50 0],[175.311 30 0],[176.366 50 0],[176.503 40 0],[176.56 30 0],[176.606 30 0],[177.063 30 0],[177.092 100 0],[177.683 100 0],[178.323 50 0],[179.912 100 0],[180.8 150 1],[180.909 50 0],[181.407 500 0],[181.692 200 1],[181.745 10 1],[182.245 50 0],[183.651 200 0],[183.801 30 0],[184.115 100 0],[184.144 200 0],[184.255 9 2],[184.377 200 0],[184.551 300 0],[184.61 100 0],[184.747 400 0],[184.814 200 0],[184.874 100 0],[185.067 500 0],[185.179 30 0],[185.246 200 0],[185.315 50 0],[186.932 20 1],[187.023 15 1],[187.31 100 0],[187.484 500 0],[187.581 100 0],[188.185 200 0],[188.77 200 0],[189.325 200 0],[190.133 1000 0],[190.246 100 1],[190.466 50 0],[191.062 50 1],[194.167 50 1],[194.459 15 1],[194.933 10 1],[194.956 100 1],[195.497 100 0],[198.443 30 0],[199.185 50 0],[201.097 30 0],[205.483 50 0],[205.865 50 1],[205.901 50 1],[206.119 40 0],[206.552 30 0],[207.202 200 1],[207.27 200 1],[210.321 30 0],[211.463 30 0],[212.018 3 3],[212.412 100 0],[212.747 4 3],[213.399 10 1],[213.64 30 1],[213.656 50 1],[214.791 50 0],[217.689 5 2],[220.798 110 0],[221.089 115 0],[221.174 110 0],[221.667 120 0],[221.806 120 0],[221.891 50 0],[228.704 5 3],[229.103 35 0],[229.548 6 2],[229.687 10 2],[230.093 8 2],[230.306 55 0],[230.819 10 2],[232.856 2 3],[233.44 30 1],[233.461 30 1],[234.42 10 1],[234.954 10 1],[235.017 20 1],[235.309 20 1],[235.63 100 1],[235.718 30 1],[235.797 50 1],[236.02 10 1],[236.676 2 3],[236.697 30 1],[237.099 3 3],[237.426 20 1],[242.845 10 1],[243.515 300 0],[243.877 65 0],[244.336 65 0],[244.948 11 2],[245.212 70 0],[248.282 2 3],[248.32 6 2],[248.538 1 3],[250.69 425 0],[251.432 375 0],[251.6113 500 0],[251.751 7 3],[251.9202 350 0],[252.4108 425 0],[252.8509 450 0],[253.2381 110 0],[254.182 25 2],[254.609 10 2],[255.921 14 2],[256.3679 30 0],[256.8641 85 0],[257.7151 45 0],[263.1282 190 0],[264.079 11 2],[265.551 14 2],[267.219 1 3],[267.512 4 3],[267.525 4 3],[267.757 1 3],[268.221 10 1],[272.381 3 3],[281.711 9 2],[283.149 7 2],[283.962 5 2],[288.1579 1000 0],[288.751 10 1],[289.513 3 3],[290.428 300 1],[290.447 2 3],[290.569 500 1],[295.915 5 2],[297.0355 55 0],[297.152 1 3],[298.052 5 2],[298.7645 150 0],[300.6739 50 0],[301.309 5 2],[302.0004 75 0],[302.155 20 1],[303 100 1],[303.473 6 2],[303.729 8 2],[304.093 9 2],[304.157 20 1],[304.219 30 1],[304.369 100 1],[304.385 10 1],[304.393 7 2],[304.508 5 2],[304.577 10 1],[304.83 50 1],[305.318 150 1],[306.824 7 2],[308.624 25 2],[308.646 6 2],[309.342 20 2],[309.365 5 2],[309.683 16 2],[312.627 6 2],[314.737 7 2],[314.956 7 3],[316.161 8 2],[316.571 9 3],[318.513 16 2],[318.602 13 2],[318.897 150 1],[319.225 50 1],[319.309 150 1],[319.421 50 1],[319.469 50 1],[319.541 100 1],[319.65 14 2],[319.951 200 1],[320.249 20 1],[320.387 100 1],[321.003 200 1],[321.055 15 2],[321.466 75 1],[321.625 7 2],[321.799 15 1],[322.044 10 1],[322.301 20 1],[323.05 12 2],[323.395 14 2],[324.162 15 2],[324.419 1 3],[325.34 7 2],[325.374 5 2],[325.48 7 2],[325.866 12 2],[327.046 6 2],[327.626 10 2],[327.926 7 2],[333.314 300 1],[333.982 500 1],[348.691 15 2],[352.594 9 2],[356.967 8 2],[359.047 20 2],[362.254 8 2],[363.945 5 2],[364.512 6 2],[368.14 7 2],[368.215 5 2],[376.244 8 3],[377.315 6 3],[379.141 20 2],[379.611 25 2],[380.654 30 2],[384.246 7 2],[385.366 100 1],[385.602 500 1],[386.26 200 1],[390.5523 300 0],[392.447 20 2],[394.749 6 2],[395.574 10 1],[396.384 6 2],[397.746 10 1],[398.124 5 2],[399.177 15 1],[399.801 10 1],[403.139 1 3],[403.806 2 3],[407.545 20 1],[407.678 15 1],[408.885 10 3],[410.186 5 2],[410.242 8 2],[410.2936 70 0],[411.55 5 2],[411.61 9 3],[412.807 300 1],[413.089 500 1],[418.335 10 1],[419.072 100 1],[419.813 50 1],[421.241 7 3],[431.41 3 3],[432.818 5 3],[433.85 9 2],[434.14 8 2],[437.763 8 2],[440.373 2 3],[440.59 6 2],[440.672 8 2],[441.165 1 3],[449.405 6 2],[455.262 30 2],[455.4 8 2],[456.782 25 2],[457.476 20 2],[461.127 1 3],[461.966 7 2],[462.142 100 1],[462.172 150 1],[462.862 3 3],[463.124 9 3],[463.828 7 2],[465.432 10 3],[465.692 3 3],[466.587 8 2],[466.714 1 3],[467.33 2 3],[468.302 9 2],[468.38 7 2],[471.665 16 2],[473.052 7 2],[478.2991 50 0],[479.2212 35 0],[479.2324 80 0],[480.043 8 2],[481.333 15 2],[481.972 16 2],[482.897 18 2],[488.32 15 1],[490.699 20 1],[493.28 20 1],[494.745 1 3],[494.7607 30 0],[495.011 3 3],[500.6061 40 0],[504.103 1000 1],[505.598 1000 1],[509.142 10 2],[511.376 7 2],[511.412 8 2],[518.19 100 1],[518.525 100 1],[519.286 200 1],[519.726 5 2],[520.241 500 1],[529.519 30 1],[530.497 2 3],[530.949 1 3],[540.534 100 1],[541.724 15 1],[542.892 15 1],[543.289 15 1],[543.862 100 1],[544.726 20 1],[545.146 6 2],[545.449 15 1],[545.645 100 1],[546.643 500 1],[546.687 500 1],[546.921 100 1],[547.305 7 2],[549.323 40 0],[549.645 200 1],[551.7535 35 0],[554.074 100 1],[557.666 150 1],[562.2221 30 0],[563.297 100 1],[563.948 200 1],[564.5611 90 0],[566.066 150 1],[566.5554 80 0],[566.956 1000 1],[568.144 30 1],[568.4484 120 0],[568.881 300 1],[569.0425 100 0],[570.1105 90 0],[570.137 200 1],[570.46 7 2],[570.637 100 1],[570.8397 160 0],[571.629 8 2],[573.973 20 2],[574.7667 45 0],[575.3625 45 0],[575.422 45 0],[576.2977 45 0],[577.2145 70 0],[578.0384 70 0],[578.573 30 1],[579.3071 90 0],[579.49 30 1],[579.7859 100 0],[580.047 150 1],[580.674 200 1],[582.78 30 1],[584.613 50 1],[586.748 10 1],[586.84 300 1],[587.3764 40 0],[589.879 10 2],[591.522 150 1],[594.8545 200 0],[595.756 500 1],[597.893 500 1],[606.745 10 1],[608.006 20 1],[608.667 10 1],[612.5021 90 0],[613.1574 85 0],[613.185 90 0],[614.2487 100 0],[614.5015 100 0],[615.5134 160 0],[623.732 160 0],[623.8287 40 0],[624.3813 125 0],[624.4468 125 0],[625.4188 180 0],[631.446 7 2],[633.1954 45 0],[634.71 1000 1],[637.136 1000 1],[652.436 6 2],[652.6609 45 0],[652.7199 45 0],[655.5462 45 0],[666.052 50 1],[666.5 15 1],[666.756 5 3],[667.188 100 1],[669.938 20 1],[670.121 7 3],[671.704 50 1],[672.1853 100 0],[674.164 30 0],[675.028 20 1],[681.845 30 1],[682.982 50 1],[683.156 6 2],[684.8568 30 0],[685.165 7 2],[697.6523 80 0],[699.836 3 3],[700.3567 180 0],[700.5883 180 0],[701.728 30 0],[701.7646 90 0],[703.4903 250 0],[704.794 6 3],[706.841 4 3],[716.469 70 0],[716.5545 200 0],[718.489 70 0],[719.358 65 0],[719.39 30 0],[722.6206 100 0],[723.5326 100 0],[723.582 60 0],[725.0625 180 0],[727.5294 160 0],[728.281 40 0],[728.9173 400 0],[729.026 55 0],[737.3 35 0],[740.5774 375 0],[740.9082 200 0],[741.535 40 0],[741.5946 275 0],[742.3497 425 0],[742.46 85 0],[746.189 5 2],[746.262 8 2],[746.632 9 2],[761.236 12 2],[763.05 2 3],[765.456 4 3],[767.875 4 3],[768.0267 100 0],[771.879 5 3],[772.382 6 3],[772.564 2 3],[773.047 1 3],[774.271 40 0],[775.291 1 3],[780.0008 30 0],[784.88 400 1],[784.972 500 1],[784.9967 30 0],[791.8386 90 0],[793.2349 120 0],[794.4001 140 0],[797.0306 35 0],[803.5619 35 0],[809.3241 70 0],[810.286 9 2],[810.345 11 2],[819.043 7 2],[819.116 6 2],[819.168 8 2],[823.0642 35 0],[824.061 1 3],[826.257 9 2],[826.564 5 2],[826.932 8 2],[827.138 5 2],[827.194 6 2],[844.3982 40 0],[850.1547 40 0],[850.2221 60 0],[853.6165 40 0],[855.678 120 0],[864.8462 50 0],[872.8011 40 0],[874.2451 75 0],[875.2009 100 0],[879.0389 35 0],[895.725 2 3],[901.816 1 3],[941.272 100 1],[941.3506 100 0],[1037.1269 30 0],[1058.5141 120 0],[1060.3431 120 0],[1066.0975 120 0],[1069.4251 30 0],[1072.7408 30 0],[1074.9384 60 0],[1078.455 30 0],[1078.6856 80 0],[1082.7091 140 0],[1084.3854 60 0],[1086.879 30 0],[1086.9541 130 0],[1088.2802 30 0],[1088.5336 30 0],[1097.9308 80 0],[1098.2061 30 0],[1101.7965 80 0],[1118.76 13 0],[1128.984 12 0],[1161.109 12 0],[1198.419 370 0],[1199.157 220 0],[1203.151 440 0],[1210.353 150 0],[1227.068 120 0],[1317.69 11 0],[1588.839 190 0],[1596.004 40 0],[1606.003 95 0],[1609.48 20 0],[1616.371 60 0],[1621.568 11 0],[1638.155 16 0],[1668.077 29 0],[1732.7289 28 0],[1872.29 26 0],[1938.5939 15 0],[1943.2971 48 0],[1949.3381 13 0],[1972.25 110 0],[1992.8881 31 0],[2091.7131 12 0],[2135.424 21 0],[2206.2711 12 0]}{ALLx2000x1000x2000x30x15x20x0}{UVx2000x1000x2000x30x15x20x0}{VISx1000x425x1000x30x10x0x0}{IVx500x440x500x11x2x0x0}%[7.861 1 4],[7.89 1 4],[8.081 2 4],[8.111 2 4],[8.518 10 4],[8.558 6 4],[9.045 4 4],[9.085 4 4],[9.644 15 4],[9.714 10 4],[9.821 2 4],
\pgfspectra@elt@search{#1}{P}{[25.559 80 4],[25.567 50 4],[28.2301 90 3],[30.4996 90 3],[31.058 110 4],[31.134 150 4],[32.847 300 4],[32.878 250 4],[34.723 150 4],[34.82 200 4],[35.9293 120 3],[35.9899 150 3],[36.1514 120 3],[36.1629 150 3],[37.1299 120 3],[37.1504 150 3],[37.2001 200 3],[37.856 110 4],[38.8318 500 3],[38.95 250 4],[39.07 300 4],[41.003 150 4],[41.4604 120 3],[41.4999 200 3],[41.5805 250 3],[44.4245 250 3],[44.5158 300 3],[47.1146 90 2],[47.56 375 4],[48.4278 90 2],[49.818 120 2],[53.463 110 4],[53.499 80 4],[54.257 520 4],[54.492 600 4],[56.8038 250 3],[56.9853 200 2],[58.1831 200 2],[62.9008 350 3],[62.9914 400 3],[63.1779 500 3],[64.8482 350 3],[67.39 450 4],[75.651 300 3],[77.6353 300 3],[81.024 10 1],[82.3179 650 3],[82.473 700 3],[82.7932 800 3],[84.4646 200 2],[84.5038 150 2],[84.5664 250 2],[84.7019 250 3],[84.7669 300 2],[84.8016 200 2],[84.8465 120 2],[84.8639 150 2],[84.9799 350 3],[85.0392 200 3],[85.2686 250 2],[85.5624 350 2],[85.9406 200 2],[85.9652 500 2],[85.9729 250 2],[86.544 10 1],[86.545 450 4],[87.139 600 4],[87.7476 700 3],[91.3971 300 2],[91.712 300 2],[91.8665 350 2],[92.1849 250 2],[95.0655 1000 3],[99.762 250 4],[99.7999 200 2],[100.038 150 4],[100.3598 250 2],[102.5563 570 3],[102.8096 500 3],[103.0517 570 3],[103.3111 500 3],[103.5517 500 3],[111.798 900 4],[111.8551 570 3],[112.801 700 4],[120.6422 200 3],[124.982 20 1],[130.187 20 1],[130.447 20 1],[130.468 15 1],[130.548 35 1],[130.987 25 1],[131.07 60 1],[133.4808 500 2],[133.5705 200 3],[134.4327 650 2],[134.4845 300 2],[136.6695 500 3],[137.2674 400 3],[137.349 20 0],[137.706 20 0],[137.7282 350 3],[137.793 20 0],[137.94 25 0],[137.962 150 4],[138.0463 250 2],[138.1089 150 2],[138.147 25 0],[138.505 250 4],[143.013 50 0],[144.783 375 4],[145.289 30 1],[148.4507 500 3],[148.7788 400 3],[148.9098 300 3],[149.136 50 0],[149.299 40 0],[150.2228 350 2],[150.4663 250 2],[153.251 80 1],[153.59 120 1],[153.639 80 1],[154.229 120 1],[154.843 60 0],[161.05 450 4],[161.8632 150 2],[161.8907 200 2],[167.107 70 0],[167.168 180 0],[167.248 90 0],[167.461 230 0],[167.971 300 0],[168.599 120 0],[169.406 100 0],[170.641 60 0],[177.499 250 0],[178.287 200 0],[178.768 180 0],[184.719 100 0],[185.122 80 0],[185.891 150 0],[185.943 150 0],[186.2762 250 3],[186.2893 120 3],[186.358 200 3],[188.8523 650 3],[191.0183 200 3],[198.5682 120 3],[198.5851 150 3],[198.6114 200 3],[198.7022 150 3],[202.348 100 0],[203.347 150 0],[213.547 100 0],[213.618 200 0],[214.914 200 0],[215.294 100 0],[215.408 150 0],[218.029 200 4],[218.642 150 4],[242.44 375 4],[244.093 450 4],[244.124 200 4],[247.7823 200 3],[247.807 150 3],[247.8256 250 3],[248.419 100 1],[253.399 500 0],[253.561 700 0],[255.325 600 0],[255.49 500 0],[260.5506 250 3],[260.606 150 1],[261.1147 200 2],[262.618 100 1],[263.2713 300 2],[263.676 90 1],[264.4295 400 3],[268.0133 200 2],[272.4764 300 3],[272.877 400 3],[272.912 200 3],[273.9309 500 3],[273.9872 250 3],[274.0223 200 3],[289.5241 250 2],[296.1 300 4],[296.1242 200 3],[297.855 450 4],[317.509 700 4],[318.6186 250 2],[320.404 520 4],[321.9307 300 2],[323.3536 150 2],[323.3602 400 2],[330.892 150 1],[334.7736 650 3],[336.4467 570 3],[337.1122 400 3],[341.3543 200 3],[341.934 125 1],[342.5 100 1],[355.6546 200 2],[357.7526 200 2],[373.3393 200 3],[390.4812 200 2],[391.4314 250 2],[395.7641 300 2],[397.8307 350 2],[405.744 200 2],[405.9312 400 2],[408.0084 300 2],[408.318 150 4],[409.495 110 4],[417.848 100 1],[422.2195 500 2],[424.672 350 2],[424.9656 300 3],[428.86 200 1],[438.535 200 1],[442.071 400 1],[442.8171 200 2],[445.246 100 1],[446.3 150 1],[446.3668 200 2],[446.798 120 1],[447.526 200 1],[447.9776 250 2],[449.924 200 1],[453.081 120 1],[454.0288 250 3],[454.1112 250 3],[454.8056 150 3],[454.8449 200 3],[455.483 120 1],[455.807 120 1],[458.171 120 1],[458.804 500 1],[458.986 500 1],[460.208 600 1],[462.67 300 1],[465.831 300 1],[486.442 200 1],[492.72 150 1],[494.353 500 1],[495.439 300 1],[496.971 300 1],[515.672 110 4],[519.141 150 1],[523.5499 150 3],[525.352 300 1],[529.613 400 1],[531.607 250 1],[534.475 300 1],[537.82 250 1],[538.688 300 1],[540.972 200 1],[542.591 400 1],[545.074 400 1],[545.831 100 0],[546.12 125 1],[547.775 200 0],[548.355 200 1],[549.973 200 1],[550.719 200 1],[554.114 200 1],[558.327 200 1],[558.834 250 1],[572.771 100 1],[598.9774 150 3],[602.418 500 1],[603.404 400 1],[604.312 500 1],[605.55 250 1],[605.786 100 1],[608.3409 150 2],[608.782 350 1],[609.768 150 0],[614.2605 150 3],[616.559 350 1],[619.901 180 0],[623.229 100 1],[636.727 200 1],[640.9204 150 2],[643.532 250 1],[643.631 130 1],[645.999 600 1],[648.444 150 2],[648.6381 150 2],[650.346 600 1],[650.797 600 1],[671.328 150 1],[671.3939 150 3],[671.5906 120 3],[671.742 120 0],[699.269 150 2],[716.545 100 0],[717.512 150 0],[717.666 120 0],[744.3657 200 3],[750.576 100 0],[784.563 250 1],[811.3528 150 2],[827.807 120 0],[836.784 150 0],[853.146 100 0],[861.385 100 0],[863.762 150 0],[874.154 250 0],[887.217 50 0],[952.578 30 0],[959.354 25 0],[973.474 20 0],[975.073 25 0],[979.679 50 0],[1008.422 25 0],[1052.945 6 0],[1058.152 8 0]}{ALLx1000x700x600x650x1000x900x0}{UVx1000x700x150x650x1000x900x0}{VISx600x200x600x500x300x150x0}{IVx250x250x250x150x0x0x0}%
\pgfspectra@elt@search{#1}{S}{[43.74 5 4],[43.82 5 4],[43.96 5 4],[51.93 20 3],[52.01 20 3],[52.08 40 3],[52.2 20 3],[52.25 20 3],[55.12 20 3],[65.25 40 3],[65.3 40 3],[65.36 70 3],[65.4 40 3],[65.56 70 3],[65.59 20 3],[65.73 110 3],[65.83 40 4],[65.98 70 4],[66.09 40 3],[66.14 160 3],[66.32 110 4],[66.37 40 3],[66.48 40 3],[66.61 70 3],[67.62 5 4],[67.73 5 4],[67.81 20 4],[68.03 40 4],[68.09 110 4],[68.16 40 4],[68.62 5 4],[68.69 5 4],[68.98 5 4],[69.17 5 4],[69.35 20 4],[72.95 70 2],[73.242 110 2],[73.52 70 2],[73.85 70 2],[74.49 110 3],[74.84 110 3],[75.02 110 3],[75.38 110 3],[78.65 285 4],[78.9 70 2],[79.67 70 2],[79.83 40 3],[80.05 70 3],[80.4 70 3],[80.97 70 3],[81.6 110 3],[82.49 70 2],[83.63 70 2],[84.92 160 4],[85.22 110 4],[85.48 220 4],[85.79 110 4],[86.05 110 4],[88.36 20 4],[88.45 20 4],[88.58 5 4],[90.09 20 4],[90.28 5 4],[90.59 20 4],[90.69 40 1],[91.05 40 1],[91.27 40 1],[93.74 40 1],[93.77 40 1],[99.6 20 1],[100.05 20 1],[101.44 20 1],[101.95 20 1],[106.27 160 3],[107.3 160 3],[107.35 70 3],[107.71 285 2],[109.66 20 1],[110.23 40 1],[110.84 20 3],[111.09 20 3],[113.1 20 1],[113.16 20 1],[119.4 70 2],[120.1 70 2],[123.41 40 1],[125.05 40 1],[125.38 110 1],[125.95 110 1],[127.0782 275 0],[127.7216 250 0],[129.5653 280 0],[130.2337 275 0],[130.2863 235 0],[130.311 235 0],[130.343 245 0],[130.5883 260 0],[131.0194 265 0],[131.6542 355 0],[131.6618 290 0],[132.3515 375 0],[132.6643 355 0],[138.1552 775 0],[138.551 710 0],[138.8435 960 0],[138.9154 640 0],[139.2588 775 0],[139.6112 1000 0],[140.9337 300 0],[142.503 510 0],[143.328 425 0],[143.6968 300 0],[144.8229 300 0],[147.2972 425 0],[147.3995 550 0],[147.438 300 0],[148.1665 355 0],[148.3039 485 0],[148.3233 300 0],[148.5622 330 0],[148.715 390 0],[162.4 20 3],[162.92 20 3],[166.6688 680 0],[168.753 640 0],[180.7311 710 0],[182.0343 680 0],[182.6245 640 0],[190.0286 710 0],[191.4698 550 0],[238.7 20 3],[239.89 40 3],[246.05 110 2],[248.96 110 2],[249.62 160 2],[249.91 160 2],[250.82 220 2],[262.91 20 1],[263.69 70 2],[266.54 220 2],[267 40 1],[268.05 70 2],[269.18 110 2],[270.28 110 2],[271.89 220 2],[272.14 110 2],[272.68 220 2],[273.11 220 2],[274.1 110 2],[275.69 285 2],[277.52 110 2],[278.55 160 2],[279.74 70 2],[284.77 40 1],[285.6 70 2],[286.35 110 2],[290.43 160 2],[296.48 70 2],[298.6 160 2],[309.75 110 3],[311.77 40 3],[323.42 70 2],[332.49 70 2],[349.73 110 2],[363.2 160 2],[366.2 70 2],[370.94 110 2],[371.78 160 2],[383.83 160 2],[386.76 285 0],[390.2 285 0],[392.86 160 2],[393.33 360 1],[412.08 450 0],[414.23 280 1],[414.51 360 1],[415.31 450 1],[416.27 450 1],[425.36 360 2],[428.5 110 2],[433.27 70 2],[469.41 450 0],[469.54 285 0],[469.62 160 0],[471.62 280 1],[481.55 450 1],[492.41 360 1],[492.53 450 1],[499.35 285 0],[542.86 360 1],[543.28 650 1],[545.38 1000 1],[547.36 1000 1],[550.97 1000 1],[556.49 280 1],[560.61 1000 1],[564 450 1],[564.03 450 1],[564.7 280 1],[565.99 650 1],[566.47 450 1],[570.61 160 0],[581.92 450 1],[605.27 450 0],[628.64 280 1],[628.71 450 1],[630.55 450 1],[631.27 450 1],[638.49 280 1],[639.73 280 1],[639.8 280 1],[641.37 360 1],[674.36 160 0],[674.88 285 0],[675.72 450 0],[757.9 450 0],[762.98 450 0],[768.61 285 0],[769.67 450 0],[792.4 1000 0],[792.88 160 0],[793.03 285 0],[793.17 450 0],[796.74 450 0],[796.74 450 1],[831.47 450 0],[831.47 450 1],[858.56 450 0],[868.05 285 0],[869.47 450 0],[887.45 360 0],[888.25 110 0],[888.42 220 0],[903.59 160 0],[921.29 450 0],[922.81 450 0],[923.75 450 0],[941.35 285 0],[942.19 285 0],[943.71 285 0],[964.99 650 0],[967.23 450 0],[968.08 450 0],[969.37 450 0],[969.73 285 0],[973.97 285 0],[974.19 110 0],[993.23 285 0],[994.98 285 0],[995.89 285 0],[1045.55 285 0],[1045.68 70 0],[1045.95 285 0]}{ALLx1000x1000x1000x360x160x285x0}{UVx1000x1000x110x285x160x285x0}{VISx1000x450x1000x360x0x0x0}{IVx1000x1000x450x0x0x0x0}%
\pgfspectra@elt@search{#1}{Cl}{[28.733 30 4],[31.962 30 3],[33.184 20 3],[37.378 30 4],[39.015 40 4],[39.243 50 4],[40.627 10 2],[41.137 40 2],[41.181 40 2],[43.783 40 3],[46.486 40 3],[48.617 80 3],[53.473 80 3],[53.567 70 3],[53.615 60 3],[53.653 30 4],[53.701 40 4],[53.746 30 4],[53.761 90 3],[53.803 50 4],[53.812 60 3],[53.868 40 4],[54.223 80 4],[54.23 60 4],[54.287 40 4],[54.511 100 4],[54.633 60 4],[54.763 100 4],[54.922 50 3],[55.002 40 3],[55.202 70 3],[55.33 60 3],[55.462 70 3],[55.623 60 2],[55.661 70 2],[55.712 70 2],[55.9305 35 1],[56.153 70 2],[56.168 70 2],[56.174 70 2],[57.1904 40 1],[57.4406 80 1],[58.624 50 1],[60.15 50 3],[60.459 50 3],[60.635 50 2],[60.89 40 3],[61.207 40 3],[61.8057 70 1],[61.9982 60 1],[62.0298 80 1],[62.128 40 2],[62.6735 70 1],[63.319 40 4],[63.532 40 4],[63.5881 80 1],[63.6626 100 1],[65.0894 100 1],[65.37 40 3],[65.9811 100 1],[66.1841 130 1],[66.3074 200 1],[67.038 30 2],[67.313 30 2],[68.192 40 4],[68.2053 150 1],[68.317 40 4],[68.7656 150 1],[68.893 40 4],[69.3594 150 1],[72.5271 200 1],[72.8951 250 1],[74.521 40 3],[77.7562 200 1],[78.758 500 1],[78.874 500 1],[79.3342 500 1],[83.143 40 3],[83.484 50 3],[83.497 50 3],[83.9297 600 1],[83.9599 800 1],[84.081 40 3],[84.093 60 3],[84.141 700 1],[85.1691 500 1],[88.313 40 4],[88.8026 200 1],[89.3549 200 1],[89.434 40 4],[89.491 10 4],[93.628 10 2],[96.1499 200 1],[96.992 3 0],[97.321 50 3],[97.756 60 3],[97.79 40 3],[97.8284 4 0],[98.495 70 3],[98.575 40 3],[99.8372 2.5 0],[99.8432 2.5 0],[100.2346 7.5 0],[100.528 50 2],[100.878 60 2],[101.3664 15 0],[101.502 70 2],[102.5553 9 0],[106.3831 600 1],[106.7945 300 1],[107.1036 900 1],[107.1767 600 1],[107.523 500 1],[107.908 500 1],[108.4667 20 0],[108.5171 20 0],[108.5304 25 0],[108.806 40 0],[109.0271 35 0],[109.0982 25 0],[109.2437 25 0],[109.4769 40 0],[109.5148 35 0],[109.5662 35 0],[109.5797 40 0],[109.681 25 0],[109.7369 30 0],[109.8068 20 0],[109.9523 20 0],[110.7528 50 0],[113.9214 80 1],[116.7148 80 0],[117.9293 300 0],[118.8774 120 0],[120.1353 90 0],[133.5726 300 0],[134.724 1000 0],[135.1657 500 0],[136.3447 1200 0],[137.3116 250 0],[137.9528 2000 0],[138.9693 2500 0],[138.9957 2000 0],[139.6527 1200 0],[144.147 50 1],[152.8569 50 1],[153.721 30 3],[153.93 20 3],[154.2942 50 1],[154.519 20 3],[154.915 20 3],[155.8144 50 1],[156.505 50 1],[162.286 20 3],[182.25 60 2],[182.84 50 2],[185.7488 50 1],[190.161 50 2],[198.361 50 2],[199.737 45 1],[200.684 40 2],[203.2116 45 1],[208.8583 35 1],[209.1458 35 1],[225.307 70 2],[226.895 50 2],[227.834 50 2],[228.393 70 2],[232.35 60 2],[233.645 50 2],[234.064 60 2],[235.967 60 2],[237.037 60 2],[241.642 70 2],[242.779 17 1],[243.407 36 1],[244.714 60 2],[244.858 60 2],[248.691 50 2],[249.853 34 1],[250.274 47 1],[253.248 50 2],[254.696 26 1],[254.988 50 1],[256.484 46 1],[258.067 60 2],[260.331 32 1],[260.359 50 2],[263.267 50 2],[263.318 50 2],[265.872 95 1],[266.554 60 2],[267.695 75 1],[268.804 120 1],[270.136 40 3],[271.037 70 2],[272.403 50 3],[275.123 50 3],[277.064 40 3],[278.247 70 3],[283.54 40 3],[291.205 41 1],[296.556 60 2],[299.665 95 1],[300.606 50 1],[305.796 95 1],[306.313 50 3],[307.132 130 1],[307.668 60 3],[309.219 140 1],[310.446 60 2],[312.372 120 1],[313.934 80 2],[316.787 20 3],[319.145 90 2],[328.98 70 2],[331.543 190 1],[332.057 70 2],[332.906 80 2],[332.91 120 1],[334.042 90 2],[335.335 250 1],[339.289 80 2],[339.345 80 2],[353.003 90 2],[356.068 80 2],[360.21 90 2],[361.285 80 2],[362.269 70 2],[365.695 70 2],[367.028 70 2],[368.205 70 2],[370.545 60 2],[370.734 60 2],[372.045 80 2],[372.654 2 0],[374.881 80 2],[374.996 120 1],[377.935 50 2],[378.117 100 1],[379.876 150 1],[380.518 190 1],[380.946 130 1],[382.02 170 1],[382.759 280 1],[383.335 450 1],[384.32 250 1],[384.537 310 1],[384.565 390 1],[384.58 150 1],[385.099 1000 1],[385.137 790 1],[385.165 120 1],[386.083 2500 1],[386.099 440 1],[386.137 100 1],[391.387 150 1],[391.663 110 1],[392.587 50 2],[394.482 2 0],[399.15 70 2],[401.85 60 2],[405.907 60 2],[410.423 50 2],[410.479 2 0],[410.683 50 2],[413.25 1000 1],[420.967 6.5 0],[422.642 5 0],[426.458 6 0],[436.327 10 0],[436.95 10 0],[437.091 40 2],[437.293 500 1],[437.99 10 0],[438.975 10 0],[439.04 9 0],[440.303 9 0],[443.849 10 0],[447.53 9 0],[448.991 150 1],[452.619 10 0],[460.098 8 0],[460.821 50 2],[462.3938 4 0],[465.404 5 0],[466.1208 8 0],[469.1523 4.5 0],[470.314 30 2],[472.1255 4 0],[474.0729 4.5 0],[476.865 430 1],[478.132 1300 1],[479.455 9900 1],[481.006 2900 1],[481.947 1600 1],[486.375 10 2],[489.677 8100 1],[490.478 4700 1],[491.773 2600 1],[497.164 1 2],[499.548 1000 1],[507.826 2600 1],[509.9789 3 0],[521.794 5600 1],[522.136 2300 1],[539.212 1500 1],[542.323 9900 1],[542.351 1000 1],[544.337 1900 1],[544.421 1000 1],[545.702 560 1],[553.2162 4 0],[579.6305 5 0],[579.9914 4.5 0],[585.6742 3 0],[594.858 10 0],[601.9812 5 0],[608.261 3.5 0],[609.469 190 1],[611.443 16 0],[614.0245 20 0],[619.4757 16 0],[639.866 16 0],[643.4833 15 0],[653.143 15 0],[666.167 140 1],[667.843 15 0],[668.602 130 1],[671.341 120 1],[684.029 15 0],[693.2903 30 0],[698.1886 30 0],[708.6814 60 0],[725.662 750 0],[741.411 500 0],[746.237 55 0],[748.947 55 0],[749.2118 70 0],[754.7072 1100 0],[767.242 230 0],[770.2828 45 0],[771.7581 700 0],[774.497 1000 0],[776.916 220 0],[777.109 65 0],[782.136 220 0],[783.075 170 0],[787.822 300 0],[789.334 22 0],[789.931 230 0],[791.508 180 0],[792.4645 300 0],[793.389 210 0],[793.5012 170 0],[795.252 65 0],[797.472 150 0],[797.697 130 0],[798.06 60 0],[799.785 290 0],[801.561 220 0],[802.333 110 0],[805.107 40 0],[808.451 170 0],[808.556 220 0],[808.667 300 0],[808.773 130 0],[809.467 25 0],[819.442 250 0],[819.913 220 0],[820.021 220 0],[820.378 80 0],[821.204 1800 0],[822.045 300 0],[822.174 2000 0],[833.331 1800 0],[836.071 100 1],[836.184 56 1],[837.594 9990 0],[838.267 18 1],[839.202 10 1],[840.6199 40 0],[842.825 1500 0],[846.734 220 0],[855.044 220 0],[857.524 2000 0],[857.802 75 0],[858.597 7500 0],[862.854 45 0],[864.171 30 0],[868.626 350 0],[891.292 220 0],[894.806 300 0],[903.8982 200 0],[904.543 250 0],[906.9656 100 0],[907.317 200 0],[912.115 750 0],[919.1731 300 0],[919.7596 50 0],[928.886 400 0],[939.3862 150 0],[945.21 350 0],[948.6964 50 0],[958.4801 100 0],[959.222 350 0],[963.2509 25 0],[970.2439 100 0],[974.4426 25 0],[980.7057 20 0],[987.597 40 0],[1039.2549 33.1 0],[1043.283 3.8 1],[1050.662 1 1],[1050.912 1.4 1],[1051.246 1.9 1],[1051.417 2.5 1],[1080.147 0.9 1],[1088.542 0.5 1],[1095.571 0.1 1],[1112.305 30 0],[1139.262 23.1 0],[1140.969 26.9 0],[1143.633 100 0],[1172.056 18 0],[1186.676 19.5 0],[1202.17 17.2 0],[1324.38 35 0],[1329.6 31 0],[1334.68 55 0],[1382.17 52.5 0],[1436.97 14.8 0],[1493.17 29.4 0],[1510.8 26.9 0],[1546.51 38.1 0],[1546.76 16.9 0],[1552.03 109.4 0],[1573.01 148.7 0],[1581.84 19.3 0],[1586.97 278 0],[1588.33 27.7 0],[1592.89 34.2 0],[1596 73.5 0],[1597.05 28.3 0],[1607.76 12.9 0],[1619.85 25.9 0],[1937.0301 22.7 0],[1975.5301 71.7 0],[1976.6801 18.5 0],[2019.94 22.7 0],[2037.01 8.5 0],[2447 10 0]}{ALLx9990x9990x9900x90x90x100x0}{UVx2500x2500x900x90x90x100x0}{VISx9900x1100x9900x70x0x0x0}{IVx9990x9990x100x0x0x0x0}%
@@ -66,7 +66,7 @@
\pgfspectra@elt@search{#1}{As}{[60.07 25 4],[61.6 40 4],[71.55 120 4],[73.48 150 4],[73.72 60 4],[76.124 165 1],[80.283 165 1],[84.99 185 2],[86.63 185 2],[87.17 510 2],[88.9 325 2],[92.75 325 2],[93.72 325 2],[95.36 325 2],[96.38 325 2],[98.77 250 4],[102.196 340 1],[102.95 250 4],[105.16 40 4],[105.66 60 4],[108.235 340 1],[113.94 500 1],[114.931 615 1],[117.22 120 2],[118.151 555 1],[118.987 555 1],[119.638 615 1],[119.656 615 1],[120.744 340 1],[120.93 185 2],[121.117 800 1],[121.81 800 1],[122.315 340 1],[124.131 760 1],[124.308 965 1],[124.567 870 1],[125.858 800 1],[126.377 965 1],[126.634 800 1],[126.759 800 1],[128.099 715 1],[128.754 715 1],[130.57 715 1],[130.774 340 1],[133.315 760 1],[134.155 965 1],[135.593 760 1],[136.977 965 1],[137.365 800 1],[137.507 1000 1],[137.578 760 1],[139.464 800 1],[140.031 800 1],[144.859 500 1],[155.888 500 1],[157.099 500 1],[159.36 100 0],[166.055 500 1],[175.86 100 0],[180.615 170 0],[186.034 340 1],[189.042 1000 0],[191.294 500 1],[193.759 800 0],[197.262 585 0],[199.035 170 0],[199.113 100 0],[199.543 100 0],[200.334 230 0],[200.919 100 0],[201.332 100 0],[211.299 100 0],[214.408 100 0],[216.552 135 0],[225.31 150 3],[226.32 200 3],[228.812 350 0],[230.1 200 3],[234.984 350 0],[237.077 100 0],[238.118 135 0],[241.75 250 3],[244.61 150 3],[245.4 250 3],[245.653 170 0],[246.14 200 3],[260.2 340 1],[278.022 170 0],[283.0359 300 1],[283.1164 300 1],[286.044 100 0],[288.4406 300 1],[292.63 80 2],[295.9572 615 1],[298.2 185 2],[300.3819 300 1],[310.88 150 3],[311.6516 300 1],[384.26 340 1],[392.26 325 2],[403.72 185 2],[419.0082 715 1],[419.74 615 1],[424.2982 615 1],[431.5657 500 1],[432.3867 500 1],[433.664 500 1],[435.2145 500 1],[435.2864 425 1],[437.117 375 1],[442.7106 615 1],[443.1562 615 1],[445.8469 715 1],[446.1075 340 1],[446.6348 715 1],[447.446 500 1],[449.423 800 1],[450.7659 850 1],[453.974 615 1],[454.3483 715 1],[460.2427 615 1],[462.9787 340 1],[470.7586 340 1],[473.067 340 1],[488.8557 340 1],[506.898 100 0],[510.558 340 1],[510.755 500 1],[512.134 100 0],[514.163 100 0],[523.138 425 1],[533.123 500 1],[540.813 100 0],[545.132 135 0],[549.7727 340 1],[555.809 425 1],[565.132 425 1],[611.007 425 1],[617.027 500 1],[651.174 300 1],[709.227 300 1],[710.272 300 1],[799.053 340 1],[817.451 300 1],[842.891 100 0],[856.471 100 0],[865.414 100 0],[882.173 135 0],[886.966 100 0],[926.728 135 0],[930.061 200 0],[959.795 230 0],[962.67 290 0],[983.376 230 0],[988.605 100 0],[990.055 140 0],[991.571 170 0],[992.305 290 0],[1001.063 100 0],[1002.404 290 0],[1045.309 100 0],[1057.502 100 0],[1061.407 170 0]}{ALLx1000x1000x1000x510x250x250x0}{UVx1000x1000x1000x510x250x250x0}{VISx850x135x850x325x0x0x0}{IVx340x290x340x0x0x0x0}%
\pgfspectra@elt@search{#1}{Se}{[59.6 285 4],[60.1 285 4],[60.87 220 4],[61.3 360 4],[61.43 285 4],[63.6 285 3],[65.27 360 3],[65.42 285 3],[67.01 450 3],[67.19 285 3],[70.92 220 2],[70.94 220 2],[72.06 220 2],[72.28 220 3],[72.43 360 2],[72.64 285 2],[73.46 285 3],[73.72 220 2],[74.19 220 2],[74.64 450 3],[75.9 285 3],[75.91 450 4],[77.65 285 3],[77.73 285 2],[78.58 285 4],[79.08 220 2],[80.38 285 3],[80.43 285 4],[80.87 360 4],[81.48 220 4],[82.07 220 4],[82.85 285 1],[83.03 360 4],[83.27 360 1],[83.95 450 4],[84.3 360 2],[84.58 360 4],[87.92 220 2],[90.66 285 1],[91.29 360 1],[95.37 285 2],[95.44 220 2],[95.47 220 2],[95.96 360 3],[97.41 160 2],[97.48 360 2],[99.67 450 3],[101.34 360 1],[101.4 360 1],[103.36 450 1],[104.96 450 1],[105.74 360 1],[107.98 285 2],[109.47 360 4],[109.78 285 1],[109.91 360 2],[111.92 450 2],[114.19 360 1],[115.1 220 4],[115.6 220 1],[115.69 285 1],[116.85 285 1],[119.23 450 1],[120.57 220 1],[122.76 450 4],[123.49 220 1],[129.1 285 1],[130.72 220 3],[130.89 285 1],[131.44 285 3],[140.54 100 0],[140.64 100 0],[140.66 100 0],[143.53 120 0],[143.58 120 0],[144.48 100 0],[144.68 100 0],[144.7 100 0],[144.92 150 0],[145.63 120 0],[150.09 150 0],[153.04 250 0],[153.13 150 0],[153.18 200 0],[154.71 120 0],[156.03 120 0],[157.53 150 0],[157.76 150 0],[157.79 150 0],[157.95 150 0],[158 200 0],[158.75 150 0],[159.32 150 0],[160.65 250 0],[161.07 100 0],[161.13 100 0],[161.74 200 0],[162.12 150 0],[162.27 100 0],[162.62 120 0],[164.34 150 0],[167.12 250 0],[167.53 250 0],[169.07 250 0],[179.33 250 0],[179.53 300 0],[185.52 300 0],[185.88 250 0],[189.86 400 0],[191.38 350 0],[191.92 300 0],[196.09 500 0],[199.51 150 0],[203.98 500 0],[205.75 285 2],[207.48 500 0],[209 220 3],[213.66 285 3],[216.42 500 0],[216.52 160 3],[216.66 160 3],[233.28 150 0],[241.35 600 0],[254.8 300 0],[266.55 360 3],[272.43 285 3],[276.72 285 2],[277.38 220 2],[295.16 160 3],[303.87 220 1],[304.13 220 1],[337.98 285 2],[338.72 450 2],[341.39 450 2],[342.84 285 2],[345.78 450 2],[354.36 360 2],[357.02 285 2],[363.76 450 2],[371.17 360 2],[373.87 450 2],[374.3 285 2],[380.09 450 2],[404.67 360 2],[407.02 285 1],[408.32 220 2],[416.91 450 2],[417.53 360 1],[418.09 450 1],[432.87 120 0],[433.03 100 0],[438.29 285 1],[444.6 285 1],[444.92 220 1],[446.76 285 1],[463.79 220 2],[473.08 500 0],[473.9 400 0],[474.22 300 0],[484.06 285 1],[484.5 360 1],[522.75 450 1],[530.54 360 1],[536.55 100 0],[536.99 120 0],[537.41 110 0],[552.24 285 1],[556.69 285 1],[586.63 285 1],[605.6 450 1],[630.38 285 2],[632.56 200 0],[644.42 360 1],[649.05 285 1],[653.5 285 1],[683.13 150 0],[699.069 120 0],[699.1792 100 0],[701.0809 200 0],[701.3875 150 0],[706.2065 300 0],[757.51 200 0],[758.34 250 0],[759.22 150 0],[760.68 120 0],[800.1 300 0],[803.64 200 0],[806.09 120 0],[806.53 120 0],[808.11 120 0],[809.32 150 0],[809.47 150 0],[814.93 180 0],[815.2 150 0],[815.77 200 0],[816.31 180 0],[818.29 150 0],[818.5 100 0],[819.46 120 0],[844.047 150 0],[845.038 150 0],[874.233 150 0],[891.886 300 0],[896.969 100 0],[900.197 200 0],[903.861 200 0],[908.314 80 0],[908.879 120 0],[914.083 80 0],[918.188 60 0],[927.112 60 0],[943.25 100 0],[982.558 60 0],[1021.725 200 0],[1030.745 377 0],[1032.726 900 0],[1038.636 640 0],[1065.03 124 0],[1193.456 125 0],[1194.687 275 0],[1194.792 100 0],[1195.227 105 0],[1195.264 170 0],[1196.604 100 0],[1197.293 205 0],[1197.307 115 0],[1481.793 315 0],[1491.747 410 0],[1515.144 500 0],[1546.906 115 0],[1547.1 320 0],[1552.097 265 0],[1561.84 395 0],[1562.038 115 0],[1665.9439 360 0],[1681.3779 505 0],[1681.776 165 0],[1686.6539 205 0],[1697.2711 115 0],[2137.424 235 0],[2144.2561 680 0],[2147.348 415 0],[2171.6359 270 0],[2173.06 240 0],[2313.366 105 0],[2338.885 150 0],[2362.817 110 0],[2414.818 265 0],[2415.923 170 0],[2420.4439 185 0],[2438.599 375 0],[2441.367 160 0],[2447.117 225 0],[2501.751 255 0],[2512.743 510 0]}{ALLx900x900x450x450x450x450x0}{UVx600x600x450x450x450x450x0}{VISx500x500x450x450x0x0x0}{IVx900x900x0x0x0x0x0}%
\pgfspectra@elt@search{#1}{Br}{[37.973 70 3],[40.037 70 3],[46.837 60 4],[48.211 80 4],[53.197 90 4],[54.543 100 3],[54.79 100 4],[54.977 70 4],[55.976 100 3],[56.919 100 3],[57.659 100 3],[58.51 100 3],[58.671 100 3],[59.751 100 3],[60.009 100 3],[60.127 100 3],[60.703 100 3],[61.11 45 2],[61.785 100 3],[61.987 100 3],[62.04 30 2],[62.103 80 4],[63.014 100 3],[63.222 80 4],[64.223 100 3],[64.544 70 4],[65.264 40 4],[65.754 80 4],[66.153 100 3],[66.554 50 2],[67.719 50 2],[67.78 30 2],[67.962 80 4],[68.351 100 3],[68.768 45 2],[69.02 40 2],[69.699 35 2],[69.772 100 3],[71.168 30 1],[71.539 100 3],[72.7 30 2],[73.1 100 3],[73.64 30 2],[76.963 25 2],[80.012 100 3],[81.295 70 4],[81.366 100 3],[81.548 25 1],[81.779 25 2],[85.081 100 4],[85.527 15 4],[85.619 35 1],[88.923 100 1],[89.664 50 1],[90.599 50 1],[92.256 30 1],[94.897 100 1],[94.9 35 2],[96.04 40 2],[98.49 45 2],[98.493 50 1],[101.21 50 1],[101.554 100 1],[103.702 50 1],[104.16 60 4],[104.9 100 1],[106.476 45 1],[106.915 100 4],[107.187 50 1],[108.054 50 4],[110.15 25 0],[111.213 90 4],[113.459 30 0],[113.629 25 0],[114.356 100 4],[117.723 25 0],[117.89 40 0],[118.928 100 0],[118.938 25 0],[118.95 100 0],[119.837 50 0],[120.976 80 0],[121.073 100 0],[121.601 75 0],[122.113 100 0],[122.187 90 0],[122.324 100 0],[122.441 120 0],[122.69 120 0],[122.805 75 0],[123.243 750 0],[124.39 120 0],[124.959 80 0],[125.166 150 0],[125.58 100 0],[125.92 150 0],[126.166 120 0],[126.62 120 0],[127.482 90 3],[127.948 100 0],[128.626 100 0],[130.991 300 0],[131.35 25 2],[131.674 300 0],[131.737 100 0],[131.77 200 0],[138.46 1200 0],[140.29 25 2],[142.975 15 4],[144.26 40 4],[144.99 300 0],[147.035 15 4],[148.845 5000 0],[153.174 3000 0],[154.065 2500 0],[157.484 3000 0],[157.639 2000 0],[158.231 2500 0],[163.34 7500 0],[170.351 100 3],[213.379 100 3],[214.502 100 3],[225.721 100 3],[227.273 100 3],[228.517 35 1],[228.76 35 1],[229.344 40 2],[230.74 100 3],[231.329 30 2],[231.73 50 1],[233.693 40 1],[238.645 35 1],[238.67 50 1],[238.869 30 1],[238.896 45 1],[238.969 50 1],[239.221 35 1],[239.242 40 1],[240.816 100 3],[241.158 100 3],[246.239 30 2],[248.26 30 2],[248.85 30 1],[249.114 70 3],[249.522 30 1],[249.925 35 2],[252.17 45 1],[252.949 35 2],[254.148 40 1],[255.109 35 2],[255.692 40 1],[257.083 35 2],[257.317 30 2],[258.119 100 3],[258.499 40 2],[258.914 50 2],[259.448 30 2],[259.598 40 2],[260.62 45 2],[260.815 35 2],[261.313 50 2],[261.626 35 2],[262.652 50 2],[262.923 35 2],[263.96 35 2],[266.14 60 3],[267.153 35 2],[269.017 35 1],[271.377 40 1],[273.583 35 2],[274.652 35 1],[277.05 30 2],[278.528 30 2],[280.416 30 2],[280.755 30 1],[282.087 70 3],[284.288 100 3],[289.34 40 1],[290.771 110 3],[291.718 40 1],[292.696 40 2],[293.622 30 2],[296.721 40 1],[296.9 35 2],[297.226 50 1],[298.186 30 1],[298.587 30 1],[298.653 30 1],[299.404 40 2],[301.648 30 1],[302.076 50 2],[303.363 30 2],[303.645 35 2],[304.118 50 3],[307.442 50 2],[309.194 35 2],[311.729 35 2],[314.781 30 2],[317.408 40 2],[332.108 30 2],[333.307 45 2],[334.964 50 2],[338.056 50 3],[338.525 30 2],[342.382 35 1],[344.736 45 2],[348.758 40 2],[350.647 30 2],[351.736 45 2],[354.016 50 2],[355.108 30 2],[356.243 50 2],[360.071 45 2],[360.68 30 1],[369.353 25 2],[371.43 35 1],[381.565 120 0],[382.026 45 2],[383.469 35 1],[387.121 30 1],[389.163 40 1],[390.124 30 1],[390.395 20 2],[391.42 30 1],[391.438 50 1],[391.951 35 1],[392.409 40 1],[392.955 30 1],[393.969 35 1],[395.061 35 1],[398.038 50 1],[399.236 150 0],[402.404 30 1],[413.566 30 1],[414.02 30 1],[417.963 40 1],[419.345 30 1],[422.389 100 1],[423.689 30 1],[429.139 30 1],[436.514 200 0],[436.56 100 1],[442.514 150 0],[444.174 1000 0],[447.261 1000 0],[447.772 2000 0],[449.042 100 0],[450.655 35 2],[451.344 300 0],[451.974 20 2],[452.559 1500 0],[452.96 30 1],[454.292 50 1],[457.574 300 0],[460.136 30 1],[461.458 250 0],[462.27 35 1],[464.202 30 1],[465.198 30 1],[467.87 50 1],[469.317 40 1],[470.485 50 1],[471.976 35 1],[472.036 40 1],[472.82 30 1],[473.541 30 1],[474.264 40 1],[475.228 250 0],[476.6 35 1],[477.94 40 1],[478.031 400 0],[478.519 160 0],[478.55 50 1],[480.233 30 1],[481.67 50 1],[481.846 30 1],[484.481 35 1],[484.875 35 1],[492.112 40 1],[492.879 40 1],[493.066 45 1],[494.551 30 1],[497.976 400 0],[503.874 30 1],[505.464 30 1],[516.438 40 1],[517.587 15 2],[518.001 30 1],[518.235 50 1],[519.39 30 1],[523.823 50 1],[527.268 30 1],[530.41 35 1],[533.057 40 1],[533.205 50 1],[539.548 120 0],[542.278 40 1],[542.499 35 1],[543.507 30 1],[544.68 10 2],[546.622 120 0],[547.847 35 1],[548.879 30 1],[549.506 30 1],[550.669 50 1],[558.994 35 1],[571.871 30 1],[583.078 30 1],[585.208 180 0],[594.048 160 0],[612.214 240 0],[614.86 4000 0],[616.174 30 1],[617.739 200 0],[633.548 150 0],[635.073 6000 0],[635.294 40 1],[641.032 250 0],[648.356 180 0],[651.462 100 0],[654.457 2000 0],[654.809 150 0],[655.98 5000 0],[657.131 100 0],[657.914 180 0],[658.217 2000 0],[662.047 150 0],[663.162 5000 0],[668.228 2000 0],[669.213 1000 0],[672.828 800 0],[676.006 200 0],[677.948 200 0],[678.674 220 0],[679.004 650 0],[679.148 160 0],[686.115 180 0],[700.519 1000 0],[719.28 10 2],[726.045 200 0],[734.851 1000 0],[751.296 4000 0],[759.161 160 0],[759.507 180 0],[761.641 200 0],[767.31 10 2],[780.302 3000 0],[782.723 120 0],[788.145 250 0],[788.157 250 0],[792.581 250 0],[793.868 3000 0],[794.794 300 0],[795.018 300 0],[797.844 800 0],[797.857 1000 0],[798.994 3000 0],[802.635 200 0],[802.654 250 0],[813.152 3000 0],[815.265 100 0],[815.375 1000 0],[815.4 2500 0],[824.686 500 0],[826.496 1500 0],[827.244 7500 0],[833.47 2000 0],[834.37 1000 0],[838.404 120 0],[844.655 4000 0],[847.745 400 0],[851.338 150 0],[855.773 100 0],[856.628 100 0],[863.866 2000 0],[869.853 400 0],[879.347 1000 0],[881.996 1500 0],[882.522 2500 0],[888.898 400 0],[889.762 3000 0],[893.24 600 0],[894.939 180 0],[896.4 900 0],[902.442 35 1],[916.606 3000 0],[917.363 1500 0],[917.816 2000 0],[926.542 4000 0],[932.086 1500 0],[943.404 30 1],[979.348 600 0],[989.64 1000 0],[1014.008 300 0],[1023.774 600 0],[1029.962 100 0],[1037.765 150 0],[1045.796 3000 0],[1074.214 100 0],[1075.592 300 0],[1321.717 170 0],[1435.457 180 0],[1488.87 125 0],[1673.1189 180 0],[1856.8311 120 0],[1973.3619 350 0],[2028.173 100 0],[2062.467 100 0],[2178.724 120 0],[2286.565 400 0],[2351.315 100 0],[2834.65 50 0],[3038.085 50 0],[3163.0131 60 0],[3269.39 12 0],[3418.1871 15 0],[3834.575 15 0],[3996.4359 12 0]}{ALLx7500x7500x100x50x110x100x0}{UVx7500x7500x100x50x110x100x0}{VISx6000x6000x100x45x0x0x0}{IVx7500x7500x35x0x0x0x0}%
-\pgfspectra@elt@search{#1}{Kr}{[46.735 30 2],[47.216 150 4],[48.439 100 4],[49.625 250 4],[50.077 120 4],[50.72 200 4],[54.086 30 2],[54.804 60 4],[56.564 30 2],[56.916 30 2],[57.198 30 2],[57.983 30 2],[58.514 30 2],[58.596 30 2],[59.37 30 2],[59.41 30 2],[59.641 30 2],[60.017 40 2],[60.367 30 2],[60.586 50 2],[60.647 35 2],[61.112 50 2],[61.672 35 2],[62.145 40 2],[62.28 45 2],[62.502 50 2],[62.576 30 2],[62.859 45 2],[63.004 50 2],[63.309 35 2],[63.787 120 4],[63.998 50 2],[64.641 60 2],[65.12 50 2],[65.972 50 2],[66.486 30 2],[67.234 40 2],[67.285 35 2],[67.657 35 2],[68.013 35 2],[68.368 35 2],[68.625 45 2],[68.798 45 2],[69.193 45 2],[69.561 50 2],[69.805 30 2],[70.836 50 2],[70.885 600 4],[71.4 50 2],[72.204 100 2],[72.94 60 1],[74.67 30 2],[76.118 200 1],[76.398 100 1],[76.62 60 1],[77.103 200 1],[77.369 60 1],[78.21 200 1],[78.372 100 1],[78.597 60 2],[80.576 7 3],[81.682 18 3],[81.815 60 1],[83.038 60 1],[83.766 50 2],[84.204 22 3],[84.406 100 1],[85.473 50 2],[86.258 60 2],[86.482 60 1],[86.887 60 1],[87.084 40 2],[87.608 50 2],[88.414 200 1],[88.63 1000 1],[89.101 400 1],[89.781 75 2],[91.139 200 1],[91.743 2000 1],[94.544 50 0],[94.654 50 0],[95.106 20 0],[95.34 50 0],[96.337 50 0],[96.497 2000 1],[98.729 50 2],[100.106 100 0],[100.355 100 0],[103.002 100 0],[115.874 30 2],[116.487 200 0],[123.584 650 0],[163.882 6 2],[191.409 6 2],[223.734 3 3],[229.126 6 3],[232.93 3 3],[233.675 4 3],[234.827 4 3],[235.85 3 3],[238.805 3 3],[239.394 40 2],[241.69 4 3],[242.804 3 3],[244.268 5 3],[245.17 4 3],[245.974 6 3],[246.477 100 1],[247.406 5 3],[249.248 60 1],[249.401 40 2],[251.7 4 3],[251.802 5 3],[251.938 6 3],[252.45 5 3],[254.6 5 3],[254.7 6 3],[255.808 4 3],[256.325 30 2],[258.69 3 3],[260.617 5 3],[260.95 10 3],[261.53 8 3],[262.111 7 3],[263.976 60 2],[268.032 30 2],[268.119 40 2],[271.24 80 1],[273.055 3 3],[274.818 8 3],[277.47 6 3],[282.96 3 3],[283.3 100 1],[283.608 3 3],[284.1 30 2],[285.116 30 2],[285.3 5 3],[285.93 3 3],[287.061 50 2],[289.218 100 2],[290.917 30 2],[295.256 50 2],[299.222 60 2],[302.23 50 2],[302.445 80 2],[304.693 50 2],[305.672 30 2],[306.313 60 2],[309.716 40 2],[311.225 60 2],[312.061 30 2],[312.439 100 2],[314.135 60 2],[314.201 3 3],[318.911 100 2],[319.121 80 2],[322.499 6 3],[323.952 40 2],[324.044 40 2],[324.569 300 2],[326.17 3 3],[326.481 150 2],[326.848 100 2],[327.165 30 2],[328.589 30 2],[330.475 30 2],[331.147 50 2],[332.575 200 2],[333.076 60 2],[334.248 50 2],[335.193 100 2],[337.496 40 2],[343.946 100 2],[347.465 70 2],[348.859 100 2],[350.742 200 2],[356.423 100 2],[360.788 100 1],[363.1889 200 1],[364.134 30 2],[365.3928 250 1],[366.5324 80 0],[366.901 150 1],[367.9559 100 0],[368.6182 80 1],[369.065 30 2],[371.802 300 1],[371.8595 200 1],[372.135 150 1],[374.1638 200 1],[374.48 150 1],[375.4245 80 1],[377.8089 500 1],[378.3095 500 1],[380.93 3 3],[386.058 5 3],[386.87 40 2],[387.544 150 1],[390.6177 150 1],[392.0081 200 1],[393.429 5 3],[399.484 100 1],[399.7793 100 1],[405.7037 300 1],[406.5128 300 1],[406.737 50 2],[408.8337 500 1],[409.8729 250 1],[410.9248 100 1],[413.133 40 2],[414.5122 250 1],[415.446 40 2],[425.058 150 1],[427.3969 1000 0],[428.2967 100 0],[429.2923 600 1],[430.049 200 1],[431.781 500 1],[431.8551 400 0],[431.9579 1000 0],[432.298 150 1],[435.1359 100 0],[435.5477 3000 1],[436.2641 500 0],[436.969 200 1],[437.6121 800 0],[438.654 300 1],[439.9965 200 0],[442.5189 100 0],[443.1685 500 1],[443.6812 600 1],[445.3917 600 0],[446.3689 800 0],[447.5014 800 1],[448.988 400 1],[450.2353 600 0],[452.314 400 1],[455.661 200 1],[457.7209 800 1],[458.2978 300 1],[459.28 150 1],[461.5292 500 1],[461.9166 1000 1],[463.3885 800 1],[465.8876 2000 1],[468.0406 500 1],[469.1301 100 1],[469.436 200 1],[473.9002 3000 1],[476.2435 300 1],[476.5744 1000 1],[481.176 300 1],[482.518 300 1],[483.2077 800 1],[484.6612 700 1],[485.72 150 1],[494.559 300 1],[501.645 20 2],[502.24 200 1],[508.652 250 1],[512.573 400 1],[520.832 500 1],[530.866 200 1],[533.341 500 1],[546.817 200 1],[550.143 10 2],[556.2224 500 0],[557.0288 2000 0],[558.0386 80 0],[564.9561 100 0],[568.189 400 1],[569.035 200 1],[583.2855 100 0],[587.0914 3000 0],[599.222 200 1],[599.3849 60 0],[603.717 10 2],[605.6125 60 0],[607.838 10 2],[631.022 10 2],[642.018 300 1],[642.1026 100 0],[645.6288 200 0],[657.007 150 1],[669.9228 60 0],[690.4678 100 0],[721.313 250 1],[722.4104 100 0],[728.7258 80 0],[728.978 400 1],[740.702 400 1],[742.5541 60 0],[743.578 200 1],[748.6862 100 0],[752.446 300 1],[758.7411 1000 0],[760.1544 2000 0],[764.116 150 1],[768.5244 1000 0],[769.4538 1200 0],[773.569 250 1],[774.6827 150 0],[785.4821 800 0],[791.3423 200 0],[792.8597 180 0],[793.322 200 1],[797.362 120 1],[798.2401 100 0],[805.9503 1500 0],[810.4364 4000 0],[811.2899 6000 0],[813.2967 60 0],[819.0054 3000 0],[820.272 200 1],[821.8365 80 0],[826.324 3000 0],[827.2353 100 0],[828.105 1500 0],[829.8107 5000 0],[841.243 100 0],[850.887 3000 0],[876.411 150 0],[877.6748 6000 0],[892.8692 2000 0],[923.848 500 1],[929.382 500 1],[932.099 200 1],[936.195 300 1],[936.2082 100 0],[940.282 200 1],[947.093 200 1],[957.752 500 1],[960.58 500 1],[961.961 400 1],[966.334 200 1],[971.16 200 1],[975.1758 2000 0],[980.314 500 1],[985.6314 500 0],[1022.146 1000 1],[1118.7108 100 0],[1125.7711 200 0],[1125.9126 150 0],[1145.7481 500 0],[1179.2425 150 0],[1181.9377 1500 0],[1199.7105 600 0],[1207.7224 160 0],[1286.1892 100 0],[1317.7412 1100 0],[1362.2415 1000 0],[1363.422 2400 0],[1365.8394 800 0],[1371.1036 200 0],[1373.8851 600 0],[1397.4027 150 0],[1404.5657 550 0],[1410.4298 140 0],[1440.222 180 0],[1442.6793 2000 0],[1451.784 100 0],[1473.4436 1600 0],[1476.2672 550 0],[1476.5472 450 0],[1496.1894 400 0],[1500.5307 120 0],[1520.9526 140 0],[1523.9615 1700 0],[1532.648 130 0],[1533.4958 1500 0],[1537.2037 700 0],[1547.4026 200 0],[1568.102 180 0],[1582.009 120 0],[1672.6514 200 0],[1678.5129 2000 0],[1685.3488 1000 0],[1689.0441 2400 0],[1689.6754 1600 0],[1693.5807 1800 0],[1709.8771 600 0],[1736.7605 700 0],[1740.4443 120 0],[1761.6854 150 0],[1784.2736 650 0],[1800.2229 700 0],[1816.7314 2600 0],[1839.9785 100 0],[1858.0896 150 0],[1869.6295 300 0],[1878.5461 170 0],[1879.7703 200 0],[2020.9879 140 0],[2042.3965 300 0],[2044.6971 140 0],[2116.5471 600 0],[2190.2514 1800 0],[2248.5775 120 0],[2334.0416 180 0],[2426.0506 120 0],[2429.2221 180 0],[2523.382 600 0],[2861.0551 180 0],[2865.5721 1000 0],[2876.9711 150 0],[2882.249 140 0],[2923.6689 300 0],[3066.3539 300 0],[3097.916 300 0],[3930.0602 500 0],[3948.652 1100 0],[3955.725 220 0],[3957.2602 100 0],[3958.8398 1400 0],[3958.9602 1100 0],[3995.4801 500 0],[3996.6602 300 0],[4030.6102 1300 0],[4068.516 250 0]}{ALLx6000x6000x3000x300x22x600x0}{UVx2000x650x2000x300x22x600x0}{VISx3000x3000x3000x50x5x0x0}{IVx6000x6000x1000x0x0x0x0}%
+\pgfspectra@elt@search{#1}{Kr}{[46.735 30 2],[47.216 150 4],[48.439 100 4],[49.625 250 4],[50.077 120 4],[50.72 200 4],[54.086 30 2],[54.804 60 4],[56.564 30 2],[56.916 30 2],[57.198 30 2],[57.983 30 2],[58.514 30 2],[58.596 30 2],[59.37 30 2],[59.41 30 2],[59.641 30 2],[60.017 40 2],[60.367 30 2],[60.586 50 2],[60.647 35 2],[61.112 50 2],[61.672 35 2],[62.145 40 2],[62.28 45 2],[62.502 50 2],[62.576 30 2],[62.859 45 2],[63.004 50 2],[63.309 35 2],[63.787 120 4],[63.998 50 2],[64.641 60 2],[65.12 50 2],[65.972 50 2],[66.486 30 2],[67.234 40 2],[67.285 35 2],[67.657 35 2],[68.013 35 2],[68.368 35 2],[68.625 45 2],[68.798 45 2],[69.193 45 2],[69.561 50 2],[69.805 30 2],[70.836 50 2],[70.885 600 4],[71.4 50 2],[72.204 100 2],[72.94 60 1],[74.67 30 2],[76.118 200 1],[76.398 100 1],[76.62 60 1],[77.103 200 1],[77.369 60 1],[78.21 200 1],[78.372 100 1],[78.597 60 2],[80.576 7 3],[81.682 18 3],[81.815 60 1],[83.038 60 1],[83.766 50 2],[84.204 22 3],[84.406 100 1],[85.473 50 2],[86.258 60 2],[86.482 60 1],[86.887 60 1],[87.084 40 2],[87.608 50 2],[88.414 200 1],[88.63 1000 1],[89.101 400 1],[89.781 75 2],[91.139 200 1],[91.743 2000 1],[94.544 50 0],[94.654 50 0],[95.106 20 0],[95.34 50 0],[96.337 50 0],[96.497 2000 1],[98.729 50 2],[100.106 100 0],[100.355 100 0],[103.002 100 0],[115.874 30 2],[116.487 200 0],[123.584 650 0],[163.882 6 2],[191.409 6 2],[223.734 3 3],[229.126 6 3],[232.93 3 3],[233.675 4 3],[234.827 4 3],[235.85 3 3],[238.805 3 3],[239.394 40 2],[241.69 4 3],[242.804 3 3],[244.268 5 3],[245.17 4 3],[245.974 6 3],[246.477 100 1],[247.406 5 3],[249.248 60 1],[249.401 40 2],[251.7 4 3],[251.802 5 3],[251.938 6 3],[252.45 5 3],[254.6 5 3],[254.7 6 3],[255.808 4 3],[256.325 30 2],[258.69 3 3],[260.617 5 3],[260.95 10 3],[261.53 8 3],[262.111 7 3],[263.976 60 2],[268.032 30 2],[268.119 40 2],[271.24 80 1],[273.055 3 3],[274.818 8 3],[277.47 6 3],[282.96 3 3],[283.3 100 1],[283.608 3 3],[284.1 30 2],[285.116 30 2],[285.3 5 3],[285.93 3 3],[287.061 50 2],[289.218 100 2],[290.917 30 2],[295.256 50 2],[299.222 60 2],[302.23 50 2],[302.445 80 2],[304.693 50 2],[305.672 30 2],[306.313 60 2],[309.716 40 2],[311.225 60 2],[312.061 30 2],[312.439 100 2],[314.135 60 2],[314.201 3 3],[318.911 100 2],[319.121 80 2],[322.499 6 3],[323.952 40 2],[324.044 40 2],[324.569 300 2],[326.17 3 3],[326.481 150 2],[326.848 100 2],[327.165 30 2],[328.589 30 2],[330.475 30 2],[331.147 50 2],[332.575 200 2],[333.076 60 2],[334.248 50 2],[335.193 100 2],[337.496 40 2],[343.946 100 2],[347.465 70 2],[348.859 100 2],[350.742 200 2],[356.423 100 2],[360.788 100 1],[363.1889 200 1],[364.134 30 2],[365.3928 250 1],[366.5324 80 0],[366.901 150 1],[367.9559 100 0],[368.6182 80 1],[369.065 30 2],[371.802 300 1],[371.8595 200 1],[372.135 150 1],[374.1638 200 1],[374.48 150 1],[375.4245 80 1],[377.8089 500 1],[378.3095 500 1],[380.93 3 3],[386.058 5 3],[386.87 40 2],[387.544 150 1],[390.6177 150 1],[392.0081 200 1],[393.429 5 3],[399.484 100 1],[399.7793 100 1],[405.7037 300 1],[406.5128 300 1],[406.737 50 2],[408.8337 500 1],[409.8729 250 1],[410.9248 100 1],[413.133 40 2],[414.5122 250 1],[415.446 40 2],[425.058 150 1],[427.3969 1000 0],[428.2967 100 0],[429.2923 600 1],[430.049 200 1],[431.781 500 1],[431.8551 400 0],[431.9579 1000 0],[432.298 150 1],[435.1359 100 0],[435.5477 3000 1],[436.2641 500 0],[436.969 200 1],[437.6121 800 0],[438.654 300 1],[439.9965 200 0],[442.5189 100 0],[443.1685 500 1],[443.6812 600 1],[445.3917 600 0],[446.3689 800 0],[447.5014 800 1],[448.988 400 1],[450.2353 600 0],[452.314 400 1],[455.661 200 1],[457.7209 800 1],[458.2978 300 1],[459.28 150 1],[461.5292 500 1],[461.9166 1000 1],[463.3885 800 1],[465.8876 2000 1],[468.0406 500 1],[469.1301 100 1],[469.436 200 1],[473.9002 3000 1],[476.2435 300 1],[476.5744 1000 1],[481.176 300 1],[482.518 300 1],[483.2077 800 1],[484.6612 700 1],[485.72 150 1],[494.559 300 1],[501.645 20 2],[502.24 200 1],[508.652 250 1],[512.573 400 1],[520.832 500 1],[530.866 200 1],[533.341 500 1],[546.817 200 1],[550.143 10 2],[556.2224 500 0],[557.0288 2000 0],[558.0386 80 0],[564.9561 100 0],[568.189 400 1],[569.035 200 1],[583.2855 100 0],[587.0914 3000 0],[599.222 200 1],[599.3849 60 0],[603.717 10 2],[605.6125 60 0],[607.838 10 2],[631.022 10 2],[642.018 300 1],[642.1026 100 0],[645.6288 200 0],[657.007 150 1],[669.9228 60 0],[690.4678 100 0],[721.313 250 1],[722.4104 100 0],[728.7258 80 0],[728.978 400 1],[740.702 400 1],[742.5541 60 0],[743.578 200 1],[748.6862 100 0],[752.446 300 1],[758.7411 1000 0],[760.1544 2000 0],[764.116 150 1],[768.5244 1000 0],[769.4538 1200 0],[773.569 250 1],[774.6827 150 0],[785.4821 800 0],[791.3423 200 0],[792.8597 180 0],[793.322 200 1],[797.362 120 1],[798.2401 100 0],[805.9503 1500 0],[810.4364 4000 0],[811.2899 6000 0],[813.2967 60 0],[819.0054 3000 0],[820.272 200 1],[821.8365 80 0],[826.324 3000 0],[827.2353 100 0],[828.105 1500 0],[829.8107 5000 0],[841.243 100 0],[850.887 3000 0],[876.411 150 0],[877.6748 6000 0],[892.8692 2000 0],[923.848 500 1],[929.382 500 1],[932.099 200 1],[936.195 300 1],[936.2082 100 0],[940.282 200 1],[947.093 200 1],[957.752 500 1],[960.58 500 1],[961.961 400 1],[966.334 200 1],[971.16 200 1],[975.1758 2000 0],[980.314 500 1],[985.6314 500 0],[1022.146 1000 1],[1118.7108 100 0],[1125.7711 200 0],[1125.9126 150 0],[1145.7481 500 0],[1179.2425 150 0],[1181.9377 1500 0],[1199.7105 600 0],[1207.7224 160 0],[1286.1892 100 0],[1317.7412 1100 0],[1362.2415 1000 0],[1363.422 2400 0],[1365.8394 800 0],[1371.1036 200 0],[1373.8851 600 0],[1397.4027 150 0],[1404.5657 550 0],[1410.4298 140 0],[1440.222 180 0],[1442.6793 2000 0],[1451.784 100 0],[1473.4436 1600 0],[1476.2672 550 0],[1476.5472 450 0],[1496.1894 400 0],[1500.5307 120 0],[1520.9526 140 0],[1523.9615 1700 0],[1532.648 130 0],[1533.4958 1500 0],[1537.2037 700 0],[1547.4026 200 0],[1568.102 180 0],[1582.009 120 0],[1672.6514 200 0],[1678.5129 2000 0],[1685.3488 1000 0],[1689.0441 2400 0],[1689.6754 1600 0],[1693.5807 1800 0],[1709.8771 600 0],[1736.7605 700 0],[1740.4443 120 0],[1761.6854 150 0],[1784.2736 650 0],[1800.2229 700 0],[1816.7314 2600 0],[1839.9785 100 0],[1858.0896 150 0],[1869.6295 300 0],[1878.5461 170 0],[1879.7703 200 0],[2020.9879 140 0],[2042.3965 300 0],[2044.6971 140 0],[2116.5471 600 0],[2190.2514 1800 0],[2248.5775 120 0],[2334.0416 180 0],[2426.0506 120 0],[2429.2221 180 0],[2523.382 600 0],[2861.0551 180 0],[2865.5721 1000 0],[2876.9711 150 0],[2882.249 140 0],[2923.6689 300 0],[3066.3539 300 0],[3097.916 300 0],[3930.0602 500 0],[3948.652 1100 0],[3955.725 220 0],[3957.2602 100 0],[3958.8398 1400 0],[3958.9602 1100 0],[3995.4801 500 0],[3996.6602 300 0]}{ALLx6000x6000x3000x300x22x600x0}{UVx2000x650x2000x300x22x600x0}{VISx3000x3000x3000x50x5x0x0}{IVx6000x6000x1000x0x0x0x0}%,[4030.6102 1300 0],[4068.516 250 0]
\pgfspectra@elt@search{#1}{Rb}{[46.585 3 2],[47.488 1 1],[48.1118 4 1],[48.243 3.5 2],[48.247 3 2],[48.283 50 2],[48.484 30 2],[48.966 50 2],[48.996 10 2],[49.348 60 2],[49.743 9 1],[49.782 5 2],[50.028 10 2],[50.833 3 2],[50.8434 2 1],[51.3266 15 1],[51.679 40 2],[53.0173 30 1],[53.364 80 2],[53.3801 7.5 1],[53.586 120 2],[54.2887 4 1],[55.5036 20 1],[55.619 120 2],[55.836 50 2],[56.477 70 2],[56.671 150 2],[57.282 100 2],[57.665 150 2],[57.963 250 2],[58.126 150 2],[58.234 50 2],[58.677 80 2],[58.9419 250 1],[59.142 10 2],[59.365 90 2],[59.494 100 2],[59.518 1 3],[59.588 130 2],[59.849 120 2],[60.209 45 2],[60.551 5 2],[60.728 50 2],[61.331 40 2],[61.967 50 2],[62.083 2 2],[62.224 10 2],[63.006 25 2],[64.3878 150 1],[64.567 50 2],[66.376 2.5 3],[67.481 2 2],[69.7049 300 1],[71.1187 600 1],[71.624 2.5 3],[73.341 2 3],[74.085 5 3],[74.1456 1000 1],[74.986 2 3],[75.375 2 3],[76.904 500 2],[77.154 1 3],[77.689 2.5 3],[81.528 250 2],[81.792 0.9 3],[85.018 1.5 3],[98.8 1 3],[160.412 100 1],[164.496 20 1],[170.752 20 1],[171.685 60 1],[176.05 500 1],[180.347 20 1],[180.968 50 1],[186.533 50 1],[188.942 50 1],[195.424 50 1],[195.654 30 1],[197.142 20 1],[198.319 50 1],[204.223 30 1],[205.221 30 1],[205.28 50 1],[206.892 200 1],[207.15 100 1],[207.595 1000 1],[209.029 100 1],[210.806 20 1],[211.65 30 1],[212.525 100 1],[212.982 40 1],[214.31 20 1],[214.383 3000 1],[215.321 10 2],[216.459 25 2],[219.036 20 1],[219.799 60 1],[219.826 60 1],[220.786 30 1],[221.708 1000 1],[222.379 20 1],[223.772 40 1],[225.065 50 1],[225.143 20 1],[225.419 80 1],[225.455 20 1],[226.354 20 1],[226.394 50 1],[226.8 10 2],[228.682 50 1],[229.171 500 1],[229.88 30 1],[230.012 15 2],[230.414 50 2],[230.445 15 2],[231.246 25 2],[233.301 25 1],[233.339 200 1],[233.707 20 2],[234.19 10 2],[234.537 20 2],[234.981 10 2],[235.311 35 1],[235.396 30 1],[235.697 40 1],[235.804 30 1],[236.427 30 1],[236.432 20 1],[236.515 20 1],[236.751 30 1],[237.321 20 1],[238.044 15 2],[238.129 10 2],[238.534 200 1],[240.594 25 1],[241.846 15 2],[243.417 40 1],[245.914 80 1],[247.22 5000 1],[248.456 30 1],[248.47 70 1],[249.638 200 1],[250.267 20 1],[251.418 25 1],[252.424 100 1],[256.186 30 2],[257.371 10 2],[257.707 10 2],[258.683 20 2],[259.456 20 1],[262.376 40 1],[263.175 100 2],[263.683 35 2],[264.558 40 1],[265.668 10 2],[268.41 100 1],[271.176 100 1],[271.386 10 2],[274.101 25 1],[279.886 50 2],[280.027 15 2],[280.758 50 2],[281.215 50 1],[283.851 35 1],[284.544 10 2],[286.977 15 2],[287.388 75 1],[290.369 50 2],[294.962 15 2],[295.101 10 2],[295.607 200 2],[296.745 50 2],[296.813 15 2],[297.074 50 2],[298.74 25 2],[302.361 35 2],[303.962 20 2],[304.148 20 2],[305.136 100 1],[307.07 25 2],[308.202 0.2 0],[308.684 50 2],[308.858 25 1],[309.849 10 2],[311.136 50 2],[311.257 1 0],[311.306 0.3 0],[311.482 25 2],[311.892 12 2],[314.89 500 1],[315.754 2.5 0],[315.826 0.5 0],[316.1 120 1],[316.934 10 2],[322.26 20 2],[322.798 5 0],[322.916 0.6 0],[327.099 200 1],[328.641 50 2],[332.149 150 1],[333.016 10 2],[334.055 120 1],[334.692 20 2],[334.872 6 0],[335.082 7.5 0],[335.389 75 1],[339.303 120 1],[341.558 75 1],[343.418 100 1],[343.926 25 2],[346.15 150 1],[349.268 10 2],[352.139 300 1],[353.155 300 1],[354.115 100 1],[358.705 10 0],[359.157 4 0],[360.06 500 1],[360.064 1000 1],[363.98 60 1],[364.626 40 1],[364.756 35 1],[366.274 100 1],[366.381 90 1],[366.672 35 1],[367.566 30 1],[369.958 250 1],[374.633 35 1],[379.681 350 1],[380.19 250 1],[382.666 100 1],[386.074 45 1],[390.729 25 1],[392.22 50 1],[392.644 250 1],[394.051 2500 1],[397.815 100 1],[402.949 170 1],[408.388 250 1],[410.428 200 1],[413.611 170 1],[419.308 350 1],[420.18 100 0],[421.553 50 0],[424.44 9000 1],[426.658 50 1],[427.025 25 1],[427.314 1500 1],[428.797 250 1],[429.397 150 1],[430.626 50 1],[434.696 100 1],[437.712 250 1],[444.01 30 1],[446.947 100 1],[449.392 40 1],[451.904 70 1],[453.034 300 1],[453.379 50 1],[454.074 40 1],[457.177 2000 1],[462.242 300 1],[463.189 35 1],[464.857 1000 1],[465.928 50 1],[473.045 100 1],[475.53 100 1],[475.782 40 1],[477.595 3000 1],[478.283 500 1],[485.534 30 1],[488.559 150 1],[508.7987 0.2 0],[513.2471 0.2 0],[515.0134 1 0],[515.208 1000 1],[516.458 30 1],[516.5023 0.1 0],[516.5142 0.2 0],[516.965 0.1 0],[519.5278 1.5 0],[523.3968 0.2 0],[526.0034 2 0],[526.0228 0.1 0],[527.051 20 1],[532.238 0.3 0],[536.2601 4 0],[539.0568 0.4 0],[543.1532 7.5 0],[543.183 0.3 0],[551.255 50 1],[552.278 500 1],[557.8788 0.6 0],[563.599 500 1],[564.7774 4 0],[565.375 2 0],[569.915 300 1],[572.4121 6 0],[572.4614 0.3 0],[573.964 20 1],[607.0755 7.5 0],[613.527 20 1],[615.9626 3 0],[619.908 100 1],[620.6309 7.5 0],[626.94 30 1],[629.8325 12 0],[629.9224 0.5 0],[645.833 1000 1],[655.562 100 1],[656.081 500 1],[677.507 300 1],[727.9997 10 0],[731.652 30 1],[740.8173 15 0],[761.8933 20 0],[775.7651 30 0],[775.9436 6 0],[780.027 9000 0],[792.526 0.5 0],[792.554 0.4 0],[794.76 4500 0],[827.141 4 0],[827.171 3 0],[860.396 200 1],[886.8512 4 0],[886.8852 3 0],[897.888 30 1],[902.177 30 1],[922.464 0.3 0],[923.425 0.2 0],[924.641 50 1],[933.887 30 1],[937.35 20 1],[939.136 30 1],[947.932 100 1],[949.372 70 1],[952.265 3 0],[952.305 0.5 0],[954.018 2 0],[961.299 30 1],[967.154 30 1],[968.905 200 1],[977.606 20 1],[993.476 20 1],[1007.5282 3.5 0],[1007.5708 3 0],[1323.517 10 0],[1344.281 2 0],[1344.357 3 0],[1366.501 7.5 0],[1475.241 100 0],[1528.843 80 0],[1528.948 15 0],[2252.965 2 0],[2293.2471 1 0],[2731.4311 0.4 0],[2790.5369 0.2 0]}{ALLx9000x9000x9000x500x5x0x0}{UVx5000x10x5000x500x5x0x0}{VISx9000x100x9000x0x0x0x0}{IVx9000x9000x200x0x0x0x0}%
\pgfspectra@elt@search{#1}{Sr}{[28.431 2.4 3],[29.109 2.4 3],[29.119 2.4 3],[29.322 2.4 3],[29.812 3 3],[30.012 3 3],[30.027 2.4 3],[30.167 2.4 3],[30.718 5 2],[31.611 10 2],[32.161 10 2],[33.067 25 2],[35.162 100 2],[35.88 15 2],[36.349 50 2],[37.121 30 2],[37.853 4 3],[39.244 15 3],[39.3 10 3],[39.49 9 3],[39.622 10 3],[39.992 8 3],[40.385 7 3],[40.694 7 3],[41.293 6 3],[41.307 8 3],[41.532 8 3],[41.978 6 3],[43.021 5 3],[43.065 6 3],[43.724 200 2],[44.273 5 3],[47.176 5 3],[48.42 5 3],[49.179 375 2],[50.704 250 2],[50.814 5 3],[51.438 750 2],[51.728 2 4],[53.419 5 3],[54.051 1.2 4],[56.275 500 2],[57.801 5 4],[62.493 6 4],[64.223 5 4],[64.921 10 4],[65.915 4 4],[66.094 5 4],[66.443 40 3],[66.993 1.8 4],[68.623 7 4],[71.035 20 3],[71.579 1.2 4],[74.782 2.4 4],[86.232 1.8 4],[96.837 4 2],[97.578 4 2],[99.298 5 2],[102.523 10 2],[104.491 7 2],[105.774 4 2],[106.02 5 2],[109.877 4 2],[112.549 7 2],[114.024 4 2],[116.827 4 2],[118.209 4 2],[118.921 4 3],[123.623 10 2],[124.414 6 3],[124.475 4 3],[124.487 4 3],[125.778 4 3],[126.862 4 3],[133.113 4 3],[134.79 6 3],[136.115 4 3],[140.867 5 3],[159.274 4 3],[167.703 5 3],[170.516 4 3],[172.423 4 3],[172.953 5 3],[173.212 4 3],[177.725 4 3],[194.058 4 2],[195.844 6 2],[196.692 6 2],[199.461 4 3],[206.863 5 2],[209.959 10 2],[210.438 4 3],[211.431 5 2],[211.79 4 3],[211.848 6 2],[211.952 10 2],[213.312 10 2],[214.28 6 2],[214.574 4 2],[215.284 280 1],[216.596 280 1],[217.891 6 2],[218.014 6 2],[219.088 10 2],[220.386 10 2],[221.799 4 3],[221.95 10 2],[222.005 10 2],[223.041 4 3],[224.049 4 3],[225.338 4 3],[226.703 10 2],[227.371 20 2],[227.787 10 2],[231.033 6 2],[231.495 10 2],[233.479 10 2],[234.013 20 2],[234.697 10 3],[235.734 4 3],[240.417 10 2],[241.052 6 2],[242.81 32 0],[243.893 4 3],[244.141 5 3],[245.403 10 2],[248.279 6 3],[248.357 5 3],[248.652 20 2],[250.057 3.6 3],[250.359 10 2],[250.802 4 3],[253.403 4 3],[254.802 3.6 3],[255.56 8 3],[256.947 24 0],[257.104 8 3],[257.158 5 3],[258.934 3 3],[259.91 6 2],[262.035 5 3],[262.116 4 3],[262.269 7 2],[264.216 4 3],[264.296 6 2],[264.851 6 2],[265.466 7 2],[272.247 8 2],[278.6 10 2],[282.142 10 2],[283.053 3 3],[287.486 6 2],[292.934 6 2],[293.183 40 0],[293.46 1.8 3],[298.3 6 2],[300.261 20 2],[301.232 40 2],[301.929 2 3],[302.173 20 2],[305.983 6 2],[306.143 10 2],[310.425 6 2],[318.261 10 2],[323.539 20 2],[326.652 1.8 3],[330.173 60 0],[330.272 6 2],[332.999 60 0],[335.125 80 0],[336.633 60 0],[338.071 130 1],[343.076 10 2],[346.446 190 1],[347.489 24 1],[356.643 1.8 3],[374.105 1.8 3],[387.426 6 2],[393.64 6 2],[393.672 6 2],[394.08 60 0],[395.875 6 2],[396.926 120 0],[397.004 60 0],[403.038 260 0],[403.238 60 0],[407.771 9200 1],[409.403 6 2],[409.702 6 2],[410.563 6 2],[416.18 40 1],[421.552 6400 1],[429.857 1.8 3],[430.545 68 1],[433.58 7 2],[443.804 70 0],[460.733 13000 0],[468.508 1.8 3],[472.228 640 0],[474.192 440 0],[478.432 280 0],[481.188 960 0],[483.208 720 0],[485.504 100 0],[486.87 120 0],[487.249 600 0],[487.606 120 0],[487.632 400 0],[489.198 200 0],[496.226 1600 0],[496.794 260 0],[507.109 6 2],[513.034 6 2],[515.607 160 0],[515.826 7 2],[522.22 280 0],[522.511 400 0],[522.927 400 0],[523.855 560 0],[525.69 960 0],[525.771 8 2],[526.221 6 2],[528.832 6 2],[532.982 70 0],[539.103 6 2],[544.348 8 2],[545.084 300 0],[546.39 6 2],[548.084 1400 0],[548.612 220 0],[550.417 700 0],[552.183 520 0],[553.481 400 0],[554.005 400 0],[554.336 50 0],[566.466 6 2],[568.972 6 2],[597.01 40 0],[634.575 50 0],[636.394 50 0],[636.996 70 0],[638.075 200 0],[638.65 180 0],[638.824 120 0],[640.847 1800 0],[644.668 50 0],[646.579 50 0],[650.4 1100 0],[654.679 200 0],[655.026 340 0],[661.726 600 0],[664.354 160 0],[679.105 360 0],[687.838 960 0],[689.259 240 0],[707.01 1100 0],[715.309 12 0],[716.724 50 0],[723.227 40 0],[730.941 500 0],[762.15 100 0],[767.306 80 0],[785 10 0],[786.69 6 0],[787.4 4 0],[842.28 40 0],[850.569 24 1],[868.891 40 1],[871.956 6 1],[917 8 0],[920.45 6 0],[928.39 4 0],[929.41 20 0],[930.66 3 0],[931.92 6 0],[938.045 12 0],[941.125 8 0],[944.895 80 0],[959.6 120 0],[962.47 60 0],[963.81 20 0],[964.77 20 1],[1003.666 60 1],[1032.731 200 1],[1087.27 1.4 1],[1091.488 40 1],[1098.4 2 0],[1122.457 2.6 1],[1124.125 140 0],[1201.476 20 1],[1223.62 4 0],[1244.59 12 1],[1247.96 4 0],[1249.5 8 0],[1265.22 3 0],[1297.47 15 1],[1312.38 20 1],[1352.28 3 0],[1714.09 3 0],[1717.05 6 0],[1744.74 10 0],[1762.6 0.8 1],[1774.3 6 0],[1975.96 3 0],[2026.14 46 0],[2070.0699 24 0],[2076.45 8 0],[2077.8699 3 0],[2602.36 6 0]}{ALLx13000x13000x9200x750x40x10x0}{UVx750x80x280x750x40x10x0}{VISx13000x13000x9200x8x1.8x0x0}{IVx200x140x200x0x0x0x0}%
\pgfspectra@elt@search{#1}{Y}{[21.18 0.3 3],[21.451 0.3 3],[21.597 0.6 3],[21.739 0.6 3],[22.171 1.2 3],[22.218 0.3 3],[22.298 0.6 3],[22.884 0.2 3],[22.894 2 3],[22.978 0.3 3],[23.517 0.3 3],[23.577 2.5 3],[24.212 0.1 3],[24.23 3 3],[24.414 0.3 3],[26.372 0.3 3],[26.464 15 3],[27.24 3 3],[27.303 15 3],[27.86 1 3],[28.918 0.5 4],[29.999 5 4],[31.289 0.3 4],[31.335 20 4],[32.047 4 4],[32.169 4 4],[32.558 15 4],[32.657 20 4],[32.834 17.5 4],[33.04 5 4],[33.309 90 4],[33.38 50 4],[33.512 10 4],[33.514 40 4],[33.662 50 4],[33.902 50 4],[34.002 20 4],[34.042 0.5 4],[34.459 50 4],[34.965 10 4],[34.975 0.2 4],[35.136 1 4],[35.398 10 4],[35.556 10 4],[35.586 90 3],[37.042 30 3],[37.205 30 4],[37.996 40 4],[38.682 50 3],[39.777 20 4],[40.345 30 4],[40.881 0.1 4],[40.931 20 4],[41.503 20 4],[41.818 10 4],[41.859 15 4],[41.979 5 4],[42.074 30 4],[42.503 60 3],[42.787 0.1 4],[43.075 5 4],[43.766 10 4],[44.162 0.3 4],[44.296 3 4],[45.197 0.2 4],[45.584 1.5 4],[45.784 8.5 4],[47.31 30 3],[58.498 400 4],[63.097 200 4],[64.368 0.1 2],[64.669 0.4 2],[65.387 0.6 2],[65.698 1 2],[66.874 2.5 2],[67.198 4 2],[69.172 10 2],[69.385 0.4 2],[69.52 20 2],[72.791 0.9 2],[72.847 0.4 2],[72.883 0.2 2],[72.973 2 2],[73.049 60 2],[73.27 1.5 2],[73.436 80 2],[77.078 1.5 2],[77.179 1 2],[80.426 2 2],[80.52 500 2],[80.618 7.5 2],[80.897 15 2],[80.992 700 2],[85.564 10 2],[85.782 6 2],[98.423 2.5 2],[98.796 1.5 2],[98.921 1500 2],[99.637 2500 2],[99.919 2 2],[100.056 15 2],[100.335 2.5 2],[100.658 100 2],[100.786 120 2],[107.752 12 2],[108.135 50 2],[108.463 7.5 2],[108.839 35 2],[109.525 25 2],[109.587 2.5 2],[110.321 15 2],[128.974 300 2],[130.696 250 2],[131.451 500 2],[131.61 150 2],[133.404 400 2],[154.908 0.8 2],[155.381 1.5 2],[163.514 3 2],[164.043 7.5 2],[177.98 20 2],[178.605 60 2],[204.193 1 2],[204.207 0.5 2],[206.058 150 2],[206.898 400 2],[212.798 1000 2],[219.116 1600 2],[220.076 800 2],[220.603 800 2],[224.306 35 1],[226.141 15 2],[226.157 8 2],[228.434 1000 2],[231.992 0.3 2],[232.731 1000 2],[235.42 5 0],[236.723 5000 2],[237.383 3 -1],[238.524 5 -1],[241.393 2.5 1],[241.464 4000 2],[242.22 56 1],[246.061 6 1],[249.042 2.5 0],[254.028 1.2 -1],[254.757 1.4 -1],[255.017 1 -1],[268.165 2 0],[269.421 6 0],[269.539 2.6 0],[271.03 10 2],[271.054 9 2],[272.3 9.5 0],[273.008 2.2 0],[273.485 2.2 1],[274.253 7 0],[276.01 14 0],[278.011 0.5 2],[278.521 3 1],[278.559 1.2 1],[279.12 1.2 0],[279.144 7 2],[280.011 3 1],[280.327 2 2],[280.7 10 2],[281.364 2.6 0],[281.704 9000 2],[281.886 1.8 0],[282.256 4.5 0],[282.537 2.2 1],[282.638 4.5 1],[285.443 7 1],[285.63 2.6 1],[285.787 1.1 1],[286.767 600 2],[288.648 9.5 0],[289.769 1.8 1],[289.882 1.4 1],[291.341 600 2],[291.774 150 2],[291.856 160 2],[291.905 16 0],[293.003 1.8 1],[294.053 1.5 2],[294.601 9900 2],[294.84 39 0],[294.848 2 2],[296.496 35 0],[297.042 600 2],[297.391 1.8 1],[297.459 48 0],[298.055 3 1],[298.426 75 0],[299.526 7 0],[299.694 14 0],[300.526 7 0],[301.393 140 2],[301.885 150 2],[301.895 5.5 0],[302.173 13 0],[302.228 9 0],[302.649 2.6 1],[303.659 3 1],[304.484 4.5 0],[304.537 19 0],[304.711 2.2 0],[305.522 6 1],[308.685 6 1],[309.17 5.5 0],[309.376 2.2 1],[309.588 9.5 1],[311.181 4.5 0],[311.204 5.5 1],[311.428 2.2 0],[312.877 6 1],[312.993 8 1],[313.517 9.5 1],[317.306 11 1],[317.941 22 1],[319.131 7 0],[319.562 230 1],[320.027 220 1],[320.332 220 1],[321.669 390 1],[324.228 620 1],[326.71 0.3 2],[327.68 2.5 2],[328.091 31 1],[330.847 1.9 1],[332.789 470 1],[334.038 5.5 0],[336.2 16 1],[338.859 8.5 0],[339.704 4.5 0],[341.247 8.5 0],[344.882 20 1],[345.095 7 0],[346.788 11 1],[348.573 17 0],[349.609 170 1],[352.153 8 0],[354.601 4.5 1],[354.901 390 1],[355.18 13 0],[355.269 54 0],[355.876 17 0],[357.143 19 0],[357.605 26 0],[358.452 330 1],[358.775 30 0],[358.969 10 0],[359.292 280 0],[360.073 1000 1],[360.192 620 1],[361.105 780 1],[362.094 430 0],[362.871 190 1],[363.312 780 1],[366.461 300 1],[366.849 4.5 1],[369.253 17 0],[371.03 1300 1],[371.812 6 0],[373.861 6 0],[374.755 120 1],[374.989 5 0],[377.433 1000 1],[377.656 140 1],[378.23 5 1],[378.87 740 1],[381.835 130 1],[383.288 400 1],[384.787 7 1],[386.696 50 2],[387.682 8 0],[387.828 48 1],[388.777 3 0],[390.074 300 2],[390.459 6 0],[391.458 400 2],[391.825 5 0],[393.011 6 0],[393.066 24 1],[395.036 440 1],[395.16 15 1],[395.509 6 0],[398.26 360 1],[398.75 4 0],[403.96 380 2],[403.983 94 0],[404.011 300 2],[404.764 240 0],[407.738 940 0],[408.122 9 0],[408.371 200 0],[410.238 990 0],[410.639 6 0],[411.081 8 0],[412.161 12 2],[412.492 32 1],[412.831 890 0],[414.285 750 0],[415.763 10 0],[416.752 240 0],[417.414 200 0],[417.754 800 1],[419.928 12 1],[420.47 38 1],[421.302 8 0],[421.354 4 0],[421.78 16 0],[422.063 28 0],[422.425 8 0],[423.573 60 1],[423.594 220 0],[425.12 30 0],[430.23 36 0],[430.963 280 1],[431.63 5 0],[433.078 11 0],[433.729 3 0],[434.465 6 0],[434.879 44 0],[435.233 6 0],[435.27 6 0],[435.773 12 0],[435.873 80 1],[436.603 12 0],[437.494 1200 1],[437.561 15 0],[437.933 8 0],[438.548 3 0],[438.774 10 0],[439.401 3 0],[439.467 3 0],[439.802 180 1],[442.259 89 1],[443.734 8 0],[444.366 10 0],[444.663 13 0],[446.527 2 0],[447.389 4 0],[447.572 17 0],[447.696 18 0],[447.745 16 0],[448.728 11 0],[448.747 30 0],[449.175 3 0],[449.242 2.5 0],[450.595 50 0],[451.358 5 0],[451.401 8 0],[452.205 4 0],[452.725 89 0],[452.78 44 0],[454.432 10 0],[455.937 10 0],[456.439 3 0],[457.356 6 0],[458.132 3.5 0],[458.177 3 0],[459.655 13 0],[460.48 9.5 0],[461.3 4 0],[464.37 200 0],[465.832 20 0],[465.889 7 0],[466.747 8.5 0],[467.082 6 0],[467.484 200 0],[467.835 6 0],[468.232 26 1],[468.977 8.5 0],[469.681 18 0],[470.885 3.5 0],[472.585 6 0],[472.853 17 0],[473.237 6 0],[473.762 200 2],[474.14 8.5 0],[475.279 16 0],[476.098 41 0],[478.018 1.7 0],[478.104 12 0],[478.658 16 1],[478.689 17 0],[479.93 18 0],[480.431 5 0],[480.481 7 0],[481.738 8.5 -1],[481.82 14 -1],[481.964 14 0],[482.213 12 0],[482.331 19 1],[483.915 6 0],[483.987 77 0],[484.568 55 0],[485.269 41 0],[485.425 12 0],[485.487 89 1],[485.67 5 0],[485.984 33 0],[487.965 5 0],[488.369 190 1],[488.628 5 0],[488.665 4 0],[489.344 9.5 0],[490.012 110 1],[490.611 10 0],[490.9 4.5 0],[492.187 15 0],[493.093 3.5 0],[495.066 4.5 0],[497.43 12 0],[498.213 12 1],[500.697 10 0],[507.021 7.5 0],[507.219 7.5 0],[508.742 110 1],[508.818 3 0],[510.288 750 2],[511.911 21 1],[512.04 130 2],[512.321 45 1],[513.52 18 0],[519.643 12 1],[520.041 96 1],[520.572 150 1],[523.81 1000 2],[524.081 18 0],[526.358 300 2],[528.982 6 1],[532.078 4.5 1],[538.062 7.5 0],[538.364 400 2],[540.278 22 1],[541.703 2.4 0],[542.437 9 0],[543.824 19 0],[546.646 71 0],[546.847 10 0],[547.339 9 1],[548.074 9 1],[549.317 6 0],[549.559 3.5 0],[549.741 24 1],[550.345 30 0],[550.99 25 1],[551.364 6 0],[552.163 12 0],[552.676 2.4 0],[552.754 74 0],[554.163 3.5 0],[554.45 12 0],[554.602 9 1],[555.643 7.5 0],[556.281 600 2],[556.727 60 2],[556.775 6 0],[557.224 400 2],[557.742 18 0],[558.108 2.4 0],[558.187 62 0],[559.096 2.1 0],[559.412 2.1 0],[559.548 40 2],[560.208 300 2],[560.633 12 0],[562.391 1.5 0],[563.013 56 0],[563.225 2.4 0],[563.289 2.1 0],[564.469 12 0],[564.847 12 0],[566.294 74 1],[567.527 9 0],[569.363 1.8 0],[570.673 16 0],[572.061 2.4 0],[572.889 7.5 1],[573.012 15 -1],[573.209 2.1 0],[574.385 9 0],[574.693 1.8 -1],[576.422 2.4 -1],[576.564 7.5 0],[577.395 3.5 0],[578.169 10 1],[580 1.5 -1],[581.858 1.5 -1],[582.187 3 0],[583.227 2.1 0],[583.807 0.9 -1],[585.883 1.5 -1],[587.183 1.5 0],[587.614 2.4 -1],[587.996 2.4 0],[589.394 2.4 -1],[590.296 3.5 0],[591.219 2.4 -1],[593.11 2.4 -1],[593.908 9 -1],[594.572 4.5 0],[595.002 2.4 0],[595.641 7.5 -1],[597.204 130 -1],[598.186 5 0],[598.764 100 -1],[600.36 74 -1],[600.465 12 -1],[600.919 12 0],[601.987 62 -1],[602.341 12 0],[603.66 50 -1],[605.381 42 -1],[607.278 13 -1],[608.8 5 0],[608.935 21 -1],[609.678 16 -1],[610.782 13 -1],[611.473 13 -1],[612.738 7.5 -1],[613.206 140 -1],[613.504 12 0],[613.843 15 0],[614.836 110 -1],[615.172 12 -1],[616.508 82 -1],[618.223 56 -1],[619.173 120 0],[619.982 59 -1],[621.796 45 -1],[622.259 30 0],[623.672 27 -1],[625.105 4.5 0],[627.501 12 -1],[629.546 6 -1],[631.62 2.4 -1],[633.81 2.4 -1],[635.948 1.5 -1],[636.987 1.5 -1],[640.201 7.5 0],[643.5 100 0],[643.718 2.4 0],[650.123 1.8 -1],[651.833 1.8 -1],[653.584 1.8 -1],[653.86 9 0],[655.384 1.2 -1],[655.739 7 0],[657.258 1.2 -1],[657.685 3.5 0],[658.487 2.3 0],[661.375 9.5 1],[662.249 1.4 0],[663.649 1.9 0],[665.061 4 0],[666.44 2.1 0],[668.758 15 0],[669.183 1.4 0],[669.475 0.7 0],[669.926 1.6 0],[670.071 7 0],[671.32 3.5 0],[673.599 4 0],[679.371 19 0],[679.541 7 1],[680.315 1.2 0],[681.516 2.1 0],[683.249 1.4 1],[684.524 4.5 0],[685.824 1.4 1],[688.722 2.9 0],[689.6 2.1 1],[690.826 0.9 0],[693.352 1.4 0],[695.031 2.4 0],[695.168 1 1],[695.804 1 0],[697.988 2.4 0],[700.897 1.3 0],[700.993 1 0],[703.518 1.9 0],[705.294 2.9 0],[705.428 1.3 0],[707.513 0.9 0],[712.792 1.1 0],[719.166 3.5 0],[719.593 1 0],[725.458 200 2],[726.417 3.5 1],[729.308 0.9 0],[733.062 0.9 0],[733.296 0.5 1],[734.646 5 0],[739.877 1.1 0],[745.03 2.9 1],[749.488 1.7 0],[753.671 0.7 0],[755.871 900 2],[756.313 3.5 0],[761.772 0.8 0],[762.294 1.9 0],[765.289 0.7 0],[768.949 0.5 0],[769.8 0.8 0],[771.989 1.9 0],[772.408 1.9 0],[778.842 1.3 0],[779.632 1.3 0],[780.252 0.6 0],[781.216 1.7 0],[785.552 2.9 0],[786.453 600 2],[788.19 11 1],[791.671 800 2],[798.941 40 2],[799.143 1000 2],[799.933 1 0],[817.141 800 2],[832.961 0.9 0],[834.443 2.4 0],[836.564 0.8 0],[845.036 1.7 0],[852.894 0.8 0],[864.509 400 2],[879.621 1000 2],[880.062 9.5 0],[883.585 1.9 1],[911.659 800 2]}{ALLx9900x990x1300x9900x90x400x140}{UVx9900x430x1300x9900x90x400x5}{VISx1200x990x1200x1000x0x0x140}{IVx1000x9.5x11x1000x0x0x0}%
@@ -80,10 +80,10 @@
\pgfspectra@elt@search{#1}{Ag}{[70.98 40 2],[71.385 40 2],[71.773 20 2],[71.853 40 2],[72.696 60 2],[73.004 70 2],[73.028 30 2],[73.083 5 1],[73.094 30 2],[73.657 40 2],[73.813 20 2],[74.098 40 2],[74.229 40 2],[74.83 40 2],[75.28 6 1],[75.573 30 2],[75.827 20 2],[76.719 40 2],[76.833 50 2],[76.961 30 2],[77.638 70 2],[78.291 40 2],[78.576 30 2],[78.908 40 2],[79.235 50 2],[79.654 40 2],[79.791 50 2],[79.941 80 2],[80.888 60 2],[81.612 30 2],[82.239 36 2],[83.811 40 2],[100.532 3 1],[106.549 2 1],[107.223 2.4 1],[107.422 50 1],[110.703 30 1],[111.246 30 1],[119.583 12 1],[122.333 10 1],[124.08 10 1],[124.687 10 1],[125.681 11 1],[125.755 11 1],[126.663 10 1],[127.367 14 1],[129.751 13 1],[131.12 17 1],[131.381 11 1],[131.461 10 1],[132.384 12 1],[134.209 12 1],[134.257 10 1],[134.662 14 1],[135.354 10 1],[136.45 30 1],[137.322 24 2],[137.476 24 2],[139.6 20 1],[140.493 22 2],[141.093 20 1],[141.39 24 2],[141.429 24 2],[141.972 18 1],[142.861 24 2],[143.26 19 1],[145.274 24 2],[145.641 40 2],[146.472 20 1],[146.623 10 1],[147.144 20 2],[148.901 60 2],[150.737 10 0],[151.508 30 2],[151.563 20 0],[152.423 20 2],[152.704 24 2],[154.114 30 2],[154.858 10 0],[155.089 30 2],[155.304 26 2],[155.516 20 1],[158.741 26 2],[158.928 24 2],[161.379 20 2],[161.914 26 2],[163.446 20 2],[164.45 20 1],[165.152 12 0],[165.21 10 0],[165.224 20 2],[165.36 26 2],[165.443 60 2],[165.618 140 2],[165.71 30 2],[166.154 20 2],[167.075 26 2],[167.614 30 2],[168.107 20 2],[168.282 24 1],[169.351 100 2],[170.506 40 2],[170.811 2 0],[170.886 30 2],[170.927 10 0],[171.768 26 2],[172.227 40 2],[172.676 30 2],[172.814 50 2],[173.644 25 1],[174.734 40 2],[174.964 24 2],[175.089 30 2],[175.103 150 2],[176.057 20 2],[176.262 30 2],[176.614 2 0],[176.87 30 2],[177.181 20 2],[178.385 20 2],[179.037 15 1],[179.17 20 2],[179.269 20 2],[179.39 30 2],[180.224 30 2],[180.226 30 2],[180.277 20 2],[180.823 60 2],[181.683 50 2],[182.245 30 2],[182.883 70 2],[183.233 50 2],[183.25 24 2],[183.431 20 2],[183.61 50 2],[183.864 30 2],[184.014 80 2],[184.696 20 2],[184.771 4 0],[184.993 24 2],[185.633 30 2],[185.891 24 2],[186.039 20 2],[186.064 20 2],[186.712 70 2],[186.81 30 2],[187.255 20 2],[187.345 80 2],[188.036 50 2],[188.957 60 2],[191.692 80 2],[191.708 120 2],[192.53 40 2],[194.632 30 2],[194.844 20 2],[195.762 140 2],[195.927 24 2],[196.086 20 2],[196.689 80 2],[196.738 20 1],[197.592 120 2],[197.703 100 2],[198.187 30 2],[198.702 40 2],[199.516 26 2],[200.024 120 2],[200.73 60 2],[201.149 40 2],[201.365 30 2],[201.596 30 1],[203.398 30 1],[204.133 30 2],[205.317 30 2],[205.383 30 2],[205.699 40 2],[206.117 40 0],[206.985 20 0],[208.104 40 2],[211.382 16 1],[214.56 12 1],[214.647 60 2],[214.919 30 2],[216.189 120 2],[216.621 30 2],[217 3 0],[218.676 10 1],[221.123 30 2],[222.953 12 1],[223.84 20 2],[224.643 20 1],[224.651 100 2],[224.874 15 1],[228.003 15 1],[228.65 20 2],[230.956 6 0],[231.004 140 2],[231.26 2 0],[231.705 14 1],[232.029 16 1],[232.468 14 1],[233.14 16 1],[235.792 14 1],[237.502 10 0],[238.685 20 2],[239.569 60 2],[241.141 15 1],[241.323 18 1],[243.781 20 1],[244.793 16 1],[246.962 20 2],[247.384 16 1],[250.663 12 1],[256.287 20 2],[257.563 10 0],[266.049 12 1],[272.177 12 0],[276.754 15 1],[282.439 20 0],[292.677 2 0],[293.842 4 0],[309.91 4 0],[313.002 6 0],[317.058 2 0],[318.07 18 1],[321.567 3 0],[322.515 2 0],[323.318 3 0],[326.735 20 1],[328.068 11000 0],[330.567 2 0],[338.289 5600 0],[340.378 2 0],[346.916 6 0],[347.582 14 1],[349.528 16 1],[350.192 4 0],[350.803 4 0],[351.338 3 0],[352.112 2 0],[354.261 10 0],[354.716 2 0],[355.701 2 0],[358.667 4 0],[362.349 2 0],[362.468 10 0],[368.246 15 1],[368.25 6 0],[368.334 16 1],[370.92 10 0],[372.742 2 0],[375.314 4 0],[381.094 40 0],[381.178 10 0],[384.074 20 0],[384.785 3 0],[390.741 10 0],[390.931 10 1],[391.44 10 0],[392.01 14 1],[392.801 2 0],[394.043 2 0],[394.297 2 0],[394.943 12 1],[398.158 20 0],[398.519 14 1],[399.215 2 0],[405.548 20 0],[408.343 2 0],[408.591 16 1],[418.548 20 1],[421.096 18 0],[421.282 20 0],[431.107 10 0],[439.623 4 0],[447.604 10 0],[455.6 4 0],[461.569 6 0],[462.004 16 1],[462.046 10 1],[466.848 12 0],[467.76 6 0],[478.84 20 1],[479.62 4 0],[484.782 6 0],[487.41 20 0],[488.821 4 0],[491.75 2 0],[493.575 2 0],[499.289 4 0],[502.735 16 1],[512.35 3 0],[520.908 200 0],[533.362 2 0],[546.55 200 0],[547.155 20 0],[547.538 4 0],[554.567 4 0],[555.958 2 0],[566.734 20 0],[608.378 2 0],[626.85 2 0],[662.108 4 0],[735.996 4 0],[768.778 64 0],[800.54 5 1],[825.47 3 1],[827.352 100 0],[832.44 4 1],[837.95 3 1],[840.38 5 1],[849.25 3 1],[864.57 6 0],[870.485 2 0],[874.76 2.4 1],[900.09 3 1],[1255.1 2 0],[1681.95 12 0],[1741.6699 4 0],[1830.79 3 0],[1838.2301 3 0]}{ALLx11000x11000x50x150x0x0x0}{UVx11000x11000x50x150x0x0x0}{VISx200x200x20x0x0x0x0}{IVx100x100x5x0x0x0x0}%
\pgfspectra@elt@search{#1}{Cd}{[42.701 50 3],[43.788 20 3],[44.785 50 3],[48.09 60 3],[48.949 10 3],[49.3 70 3],[49.513 70 3],[49.814 70 3],[49.853 70 3],[50.409 80 3],[50.42 70 3],[50.45 70 3],[50.631 80 3],[50.801 60 3],[50.895 50 3],[50.955 70 3],[50.981 25 3],[51.14 70 3],[51.3 80 3],[51.45 70 3],[51.942 60 3],[52.097 15 3],[52.441 80 3],[52.447 70 3],[52.477 50 3],[52.51 70 3],[52.519 60 3],[52.707 70 3],[53.079 50 3],[53.109 80 3],[53.151 80 3],[53.429 70 3],[53.677 70 3],[53.724 50 3],[54.09 60 3],[54.174 70 3],[54.26 80 3],[54.655 80 3],[54.801 40 3],[54.833 20 3],[54.89 15 3],[55.127 25 3],[55.29 20 3],[55.306 60 3],[55.405 80 3],[56.026 25 3],[56.416 10 3],[56.701 60 3],[67.739 8 2],[68.458 15 2],[72.07 10 2],[106.223 20 3],[111.816 150 3],[112.6 30 3],[113.408 20 3],[113.904 15 3],[115.464 20 3],[115.573 10 3],[116.465 100 3],[116.578 20 3],[116.73 40 3],[117.973 20 3],[118.307 15 3],[118.34 100 3],[119.413 40 3],[119.563 20 3],[119.647 30 3],[119.893 20 3],[121.538 15 3],[122.352 20 3],[124.606 20 3],[124.656 15 3],[124.994 15 3],[125.6 100 1],[126.647 30 3],[127.441 15 3],[128.563 20 3],[128.758 20 3],[129.643 150 1],[129.946 20 3],[130.436 40 3],[130.607 30 3],[131.689 15 3],[132.185 15 3],[132.555 20 3],[132.65 100 1],[134.097 30 3],[134.615 15 3],[135.478 30 3],[135.811 20 3],[136.255 30 3],[137.048 60 3],[137.091 150 1],[138.098 30 3],[138.36 5 2],[139.21 15 2],[139.678 10 2],[139.765 20 3],[140.368 30 3],[140.658 15 3],[141.628 25 2],[141.889 60 3],[142.029 5 2],[142.054 8 2],[142.983 15 3],[143.286 5 2],[144.608 20 2],[144.754 20 3],[144.755 25 2],[145.263 20 3],[145.574 30 2],[146.597 15 3],[146.614 8 2],[146.667 15 3],[147.197 5 2],[148.295 15 3],[149.179 20 3],[149.181 15 2],[151.101 5 2],[151.165 10 2],[151.313 5 2],[151.426 200 1],[152.355 10 2],[152.84 15 2],[152.93 30 2],[153.21 5 2],[154.517 50 2],[154.757 25 2],[155.007 10 2],[155.045 20 2],[155.089 15 2],[155.218 5 2],[155.648 5 2],[156.066 15 2],[156.603 5 2],[156.898 15 2],[157.02 20 3],[157.158 200 1],[158.239 10 2],[159.873 20 3],[160.042 20 3],[160.159 40 2],[160.487 20 2],[160.664 20 2],[160.728 10 2],[160.891 15 2],[160.961 10 2],[161.251 15 2],[162.287 15 3],[162.527 15 2],[162.854 25 2],[165.187 20 2],[165.563 25 2],[166.86 100 1],[167.815 30 2],[169.97 10 2],[170.247 50 1],[170.716 40 2],[172.193 10 2],[172.295 40 2],[172.441 50 1],[172.566 30 2],[173.9 25 2],[174.569 5 2],[174.767 40 2],[174.815 15 2],[176.882 30 2],[177.306 40 2],[178.584 100 1],[178.919 30 2],[179.34 75 2],[179.61 15 2],[180.057 5 2],[182.341 40 2],[182.77 100 1],[184.466 50 2],[185.113 40 2],[185.137 20 2],[185.585 40 2],[185.667 200 2],[187.408 150 2],[188.649 15 2],[190.348 15 2],[190.998 25 2],[191.057 15 2],[192.223 300 1],[193.959 10 2],[194.354 100 1],[196.554 40 1],[198.689 30 1],[198.881 15 2],[199.543 200 1],[200.06 20 2],[200.407 15 2],[200.749 100 1],[201.612 15 2],[203.245 50 1],[203.623 75 1],[203.983 40 2],[204.561 50 2],[206.125 10 2],[208.791 75 2],[209.6 150 1],[209.745 10 2],[210.047 5 2],[211.16 50 2],[214.441 1000 1],[215.506 50 1],[218.779 100 1],[218.813 5 2],[219.456 1000 1],[221.843 5 2],[222.443 5 2],[226.502 1000 1],[228.8022 1500 0],[231.277 1000 1],[232.107 200 1],[237.682 40 1],[241.824 7 2],[241.869 50 1],[242.636 10 2],[246.973 50 1],[248.793 40 1],[249.1 3 0],[249.558 40 1],[249.981 25 2],[250.891 10 0],[250.911 50 1],[251.622 30 1],[251.859 15 0],[252.5196 25 0],[254.4613 50 0],[255.198 50 1],[255.3465 25 0],[256.5789 3 0],[257.293 500 1],[258.0106 50 0],[258.487 3 0],[259.2026 30 0],[260.2048 25 0],[261.881 15 2],[262.8979 50 0],[263.056 5 2],[263.219 40 0],[263.942 75 0],[265.923 40 1],[266.0325 50 0],[266.82 25 1],[267.262 50 1],[267.754 100 0],[267.7748 25 0],[270.7 50 1],[271.2505 75 0],[273.382 50 0],[274.854 1000 1],[276.3894 100 0],[276.423 50 0],[276.699 20 2],[277.4958 50 0],[280.559 30 2],[282.319 30 1],[283.69 200 0],[285.646 25 1],[286.818 100 0],[288.0767 200 0],[288.1224 50 0],[291.467 200 1],[292.787 50 1],[292.927 200 1],[298.062 1000 0],[298.1362 200 0],[298.1845 50 0],[303.06 50 1],[303.572 10 2],[308.0822 150 0],[308.148 25 1],[308.2593 30 0],[309.234 100 1],[313.3167 200 0],[314.679 50 1],[325.033 150 1],[325.2524 300 0],[326.1055 300 0],[334.321 50 1],[338.549 50 1],[338.888 30 1],[340.3652 800 0],[341.749 50 1],[344.242 50 1],[346.443 100 1],[346.62 1000 0],[346.7655 800 0],[348.308 25 1],[349.544 150 1],[349.9952 25 0],[352.411 100 1],[353.569 100 1],[361.0508 1000 0],[361.2873 800 0],[361.4453 60 0],[364.9558 20 0],[398.1926 10 0],[402.912 100 1],[413.477 200 1],[414.149 50 1],[428.508 100 1],[430.6672 8 0],[441.241 100 1],[441.2989 3 0],[441.563 1000 1],[444.045 30 1],[466.2352 8 0],[467.8149 200 0],[474.469 30 1],[479.9912 300 0],[488.172 50 1],[502.55 50 1],[508.5822 1000 0],[515.466 6 0],[526.801 100 1],[527.16 100 1],[533.748 1000 1],[537.813 1000 1],[538.189 200 1],[584.33 40 1],[588.022 50 1],[609.9142 300 0],[611.149 100 0],[632.5166 100 0],[633.0013 30 0],[635.472 400 1],[635.998 500 1],[643.847 2000 0],[646.494 400 1],[656.765 25 1],[672.578 500 1],[675.919 100 1],[677.8116 30 0],[723.701 50 1],[728.438 100 1],[734.567 1000 0],[806.699 50 1],[820.0309 5 0],[929.2 20 0],[1165.5 15 0],[1449.1 35 0],[1571.2 80 0],[1912.5 55 0],[2437.8 25 0],[2545.5 35 0]}{ALLx2000x2000x1000x200x150x0x0}{UVx1500x1500x1000x200x150x0x0}{VISx2000x2000x1000x0x0x0x0}{IVx80x80x50x0x0x0x0}%
\pgfspectra@elt@search{#1}{In}{[36.867 3 4],[37.01 3 4],[37.282 5 4],[37.294 5 4],[37.495 1 4],[37.584 3 4],[37.607 3 4],[37.679 5 4],[37.861 8.5 4],[37.924 1.5 4],[38.027 4.5 4],[38.156 5.5 4],[38.214 4.5 4],[38.276 5.5 4],[38.305 5 4],[38.621 8.5 4],[38.67 5 4],[38.866 1.5 4],[38.891 7 4],[39.003 5.5 4],[39.092 5.5 4],[39.229 4.5 4],[39.246 4.5 4],[39.36 0.5 4],[39.389 12.5 4],[39.574 5.5 4],[39.773 1.5 4],[39.979 5 4],[40.005 4.5 4],[40.057 12.5 4],[40.239 12.5 4],[40.533 1.5 4],[40.728 4.5 4],[40.736 1.5 4],[40.795 4.5 4],[41.743 4.5 4],[41.845 1 4],[42.316 1 4],[67.733 4 3],[68.453 7.5 3],[68.531 3.5 2],[69.162 2.5 2],[72.064 4 3],[78.217 0.5 2],[88.224 5 2],[89.084 5 2],[91.587 5 2],[91.745 1 2],[92.683 2.5 2],[140.308 15 2],[143.485 15 2],[147.034 2 3],[148.77 10 2],[149.414 10 2],[151.262 2.5 3],[152.35 2.5 3],[152.478 5 2],[153.021 10 2],[153.203 3.5 3],[153.295 15 2],[156.892 4 3],[156.933 1.5 3],[160.15 6 3],[160.508 0.5 3],[160.659 3.5 3],[162.542 50 2],[162.848 5 3],[164.228 10 2],[164.8 1 0],[165.18 4 3],[165.562 5 3],[166.738 0.5 3],[167.064 2.5 3],[167.616 0.5 0],[167.807 6 3],[170.202 2 3],[170.253 10 2],[170.711 7.5 3],[171.154 2.5 0],[172.189 3.5 3],[174.123 1 0],[174.765 6 3],[174.81 5 3],[174.883 50 2],[175.849 0.5 0],[176.788 1 2],[176.877 5 3],[177.301 6 3],[178.915 4 3],[179.338 6 3],[181.071 0.5 2],[184.241 15 2],[184.467 6 3],[185.03 20 2],[185.11 4.5 3],[185.584 4.5 3],[185.664 7.5 3],[186.298 7.5 2],[187.408 7.5 3],[190.352 2.5 3],[193.958 2.5 3],[194.331 1.5 3],[200.473 3 3],[210.117 0.5 3],[210.389 5 1],[211.231 4 3],[215.408 15 2],[215.442 1 2],[216.688 5 1],[217.99 1 0],[218.24 1 0],[218.74 1 0],[219.084 1 0],[219.567 7.5 1],[219.741 1 0],[219.952 5 2],[220.224 1 0],[220.528 25 1],[221.114 1.5 0],[222.513 2 3],[223.07 2.5 0],[223.218 2.5 2],[224.166 1.5 0],[225.579 15 1],[225.999 5 0],[226.126 10 2],[226.626 2.5 2],[227.241 2.5 2],[227.284 2.5 2],[227.82 2.5 0],[228.164 20 1],[228.375 1 0],[229.833 1 0],[229.87 1 0],[230.09 5 2],[230.249 1 0],[230.605 50 1],[230.686 12.5 0],[230.932 1.5 0],[230.975 1 0],[231.321 45 1],[231.509 1 0],[232.34 15 1],[232.441 2.5 0],[232.492 1.5 0],[232.795 35 1],[233.276 1.5 0],[233.457 40 1],[234.019 5 0],[234.59 4 0],[234.656 2.5 0],[235.075 25 1],[235.87 2.5 0],[237.814 7.5 0],[237.9 5 0],[238.263 55 1],[238.954 20 0],[239.318 20 1],[239.918 5 0],[240.647 25 1],[240.876 25 1],[241.906 25 1],[241.92 25 1],[242.72 35 1],[242.986 10 0],[243.099 5 0],[243.273 25 1],[244.263 30 1],[244.79 50 1],[245.323 30 1],[246.008 30 0],[246.802 15 0],[248.615 35 1],[248.862 55 1],[248.895 45 1],[249.859 40 1],[249.96 50 1],[250.099 45 1],[250.816 30 1],[251.231 55 1],[252.137 50 0],[252.298 5 0],[252.741 50 2],[255.356 35 1],[255.444 80 1],[256.015 550 0],[256.513 35 1],[259.875 35 1],[260.176 100 0],[260.404 25 1],[265.47 45 1],[266.263 50 1],[266.865 70 1],[267.456 70 1],[268.312 40 1],[271.026 800 0],[271.394 150 0],[272.552 25 2],[272.615 40 2],[274.975 65 1],[275.388 350 0],[277.537 20 0],[279.876 30 1],[281.897 45 1],[283.692 90 0],[285.814 15 0],[286.568 40 1],[289.018 60 1],[293.263 550 0],[294.105 50 1],[295.701 10 0],[296.617 30 1],[298.28 50 2],[299.94 55 1],[300.808 50 2],[300.882 15 2],[303.936 4000 0],[305.115 4 0],[309.98 55 1],[310.18 90 1],[313.86 65 1],[314.275 40 1],[314.67 65 1],[315.577 75 1],[315.84 50 1],[317.63 45 1],[319.811 45 1],[325.609 6500 0],[325.856 1500 0],[329.355 15 2],[333.85 45 1],[335.091 4 2],[337.659 37.5 1],[340.428 50 1],[343.84 55 1],[356.232 2.5 2],[369.391 90 1],[370.813 47.5 1],[371.614 190 1],[371.83 60 1],[371.872 80 1],[372.34 80 1],[379.521 85 1],[379.921 115 1],[383.465 125 1],[384.218 100 1],[385.282 50 2],[388.978 50 1],[390.207 50 1],[392.212 30 1],[393.44 32.5 1],[396.235 125 1],[400.466 60 1],[401.392 70 1],[402.377 50 2],[403.232 75 2],[405.694 205 1],[406.23 25 2],[407.157 50 2],[407.293 50 2],[410.176 8500 0],[420.514 70 1],[421.304 50 1],[421.966 55 1],[425.268 50 2],[437.287 75 1],[450.078 75 1],[450.958 20 2],[451.131 9000 0],[454.901 55 1],[457.085 70 1],[457.802 90 1],[457.84 90 1],[461.608 70 1],[461.717 85 1],[462.014 125 1],[462.07 75 1],[462.73 85 1],[463.704 70 1],[463.816 190 1],[464.458 110 1],[465.562 180 1],[465.674 160 1],[468.111 95 1],[468.48 225 1],[487.837 1.5 0],[490.706 45 1],[492.493 35 1],[497.377 75 1],[510.936 40 1],[511.514 50 1],[511.74 70 1],[512.08 135 1],[512.175 100 1],[512.985 40 1],[517.542 120 1],[518.444 70 1],[524.877 100 2],[525.432 15 0],[526.274 6 0],[530.945 75 1],[541.141 40 1],[541.845 70 1],[543.67 110 1],[549.75 65 1],[550.708 70 1],[551.3 160 1],[552.328 125 1],[553.65 65 1],[555.545 95 1],[557.69 120 1],[563.67 100 1],[564.515 50 2],[570.85 80 1],[570.991 25 0],[572.18 50 1],[572.317 20 2],[572.768 25 0],[581.95 50 2],[585.315 105 1],[590.34 245 1],[591.54 130 1],[591.878 60 1],[606.29 65 1],[609.595 125 1],[610.866 105 1],[611.59 90 1],[612.87 115 1],[612.94 120 1],[613.21 160 1],[614 75 1],[614.323 45 1],[614.81 70 1],[614.95 95 1],[616.115 40 1],[616.245 90 1],[619.772 100 2],[622.428 50 1],[622.83 140 1],[623.11 70 1],[630.48 135 1],[636.23 145 1],[646.9 150 1],[654.12 105 1],[675.188 95 1],[676.59 90 1],[678.372 50 1],[684.744 4 0],[689.15 160 1],[690.013 2 0],[718.29 190 1],[725.5 90 1],[727.65 105 1],[730.34 90 1],[735.06 160 1],[763.27 50 1],[768.29 50 1],[774.07 105 1],[777.696 50 1],[778.9 90 1],[780.68 35 1],[781.45 35 1],[784.09 45 1],[805.078 10 0],[822.7 120 1],[823.866 15 0],[831.492 7.5 0],[843.455 25 1],[867.895 15 0],[868.263 10 0],[870.025 25 0],[881.35 50 1],[883.26 40 1],[889.447 20 0],[917.008 5 0],[919.77 60 1],[920.2 60 1],[921.3 110 1],[924.11 80 1],[934.983 20 0],[937.027 30 0],[942.799 10 0],[997.786 50 0],[1025.703 100 0],[1071.742 30 0],[1074.431 50 0],[1133.472 10 0],[1173.148 10 0],[1291.259 5 0],[1342.996 4.5 0],[1382.448 2.5 0],[1431.625 3 0],[1441.92 1.5 0],[1466.866 3 0],[1471.908 3.5 0],[1650.4311 1 0],[2229.1061 3 0],[2387.9131 3.5 0]}{ALLx9000x9000x245x100x7.5x12.5x0}{UVx6500x6500x190x50x7.5x12.5x0}{VISx9000x9000x245x100x0x0x0}{IVx120x100x120x0x0x0x0}%
-\pgfspectra@elt@search{#1}{Sn}{[1.6 7 1],[35.514 120 4],[36.101 150 4],[37.255 100 4],[60.523 50 3],[61.904 50 3],[62.873 50 3],[75.301 100 2],[76.062 50 2],[77.579 75 2],[78.468 50 2],[89.992 1 1],[90.822 50 3],[91.092 200 2],[91.74 2 1],[93.563 1 1],[94.583 3 1],[95.45 4 1],[95.625 500 3],[98.513 7 1],[99.721 4 1],[101.092 50 2],[101.626 2 1],[101.972 500 3],[104.078 4 1],[104.132 1 1],[104.449 1000 3],[104.884 50 2],[105.837 100 3],[105.859 50 3],[106.21 3 1],[107.341 1000 3],[108.75 200 3],[108.935 200 4],[109.692 300 3],[110.324 50 3],[110.819 8 1],[111.934 0 3],[112.068 200 3],[113.279 100 4],[113.929 1000 2],[115.833 1000 2],[115.905 4 1],[116.074 200 4],[116.109 200 2],[116.143 10 1],[116.158 100 2],[116.294 3 1],[117.626 100 4],[118.051 4 1],[118.062 100 2],[118.425 1000 2],[118.992 100 4],[118.999 200 2],[120.406 200 2],[120.572 100 4],[121.052 2000 2],[121.51 100 2],[121.814 100 2],[121.907 9 1],[122.37 13 1],[123.017 100 2],[123.138 100 2],[124.3 11 1],[124.363 500 2],[125.138 2000 4],[125.992 1000 2],[127.631 40 2],[128.381 100 4],[129.086 20 1],[129.436 200 4],[130.22 100 4],[130.597 1000 2],[131.455 1000 3],[131.659 20 1],[132.734 1000 2],[133.47 200 2],[134.605 200 2],[134.765 1000 2],[136.971 200 2],[138.674 1000 2],[140.052 25 1],[141.061 500 2],[143.752 1000 3],[144.977 200 2],[147.515 20 1],[148.922 9 1],[153.29 100 3],[157.036 1000 2],[167.429 50 2],[173.721 10 0],[175.146 15 0],[175.33 10 0],[175.8 7 1],[176.498 20 0],[177.34 20 0],[179.075 30 0],[180.46 80 0],[181.134 15 1],[181.171 500 2],[181.304 30 0],[181.574 40 0],[181.931 25 0],[182.3 120 0],[183.189 9 1],[184.875 50 0],[185.2 30 0],[186.032 200 0],[186.142 20 0],[186.552 20 0],[186.596 30 0],[187.329 15 0],[188.264 30 0],[188.605 80 0],[189.14 100 0],[189.729 20 0],[189.991 12 1],[190.93 50 0],[191.161 40 0],[191.352 20 0],[192.531 80 0],[192.677 20 0],[192.795 15 0],[192.89 40 0],[193.317 25 0],[194.186 500 2],[194.269 20 0],[195.215 150 0],[195.552 50 2],[196.021 15 0],[197.146 30 0],[197.76 50 0],[198.42 80 0],[199.188 15 0],[199.498 20 0],[200.805 25 0],[201.576 30 0],[202.698 30 0],[204.066 50 0],[204.09 20 0],[205.403 50 0],[205.831 70 0],[206.4 20 0],[206.858 80 0],[207.289 100 0],[207.308 100 0],[208.062 25 0],[209.158 30 0],[209.435 40 0],[209.639 200 0],[210.093 100 0],[211.393 100 0],[212.126 50 0],[214.073 25 0],[214.143 20 0],[214.846 15 0],[214.863 1 1],[214.873 40 0],[215.143 20 0],[215.154 30 1],[217.132 80 0],[219.449 150 0],[219.934 300 0],[220.965 400 0],[220.967 4 1],[221.105 40 0],[223.172 80 0],[224.605 400 0],[224.607 6 1],[225.117 60 0],[226.719 30 0],[226.891 400 0],[228.226 20 0],[228.668 200 0],[231.723 600 0],[233.48 300 0],[235.484 1000 0],[235.79 20 0],[236.034 3 1],[236.833 22 1],[238.072 60 0],[238.454 4 1],[240.815 100 0],[242.17 800 0],[242.949 1000 0],[243.352 1 1],[244.898 15 1],[245.524 60 0],[247.64 20 0],[248.339 300 0],[248.348 13 1],[248.699 10 1],[249.57 200 0],[252.261 5 1],[252.392 90 0],[253.117 80 0],[254.655 400 0],[255.801 40 0],[257.158 500 0],[259.442 200 0],[263.694 50 0],[266.124 200 0],[266.493 2 1],[270.651 700 0],[272.782 2 1],[276.178 20 0],[277.981 150 0],[278.503 80 0],[278.796 60 0],[281.259 60 0],[281.358 80 0],[282.552 2 1],[283.999 1400 0],[284.642 1 1],[285.062 200 0],[286.332 1000 0],[291.28 1 1],[291.354 200 0],[291.982 6 1],[299.1 3 1],[299.444 7 1],[300.914 700 0],[301.218 1 1],[302.394 8 1],[303.28 200 0],[303.412 850 0],[304.75 12 1],[309.469 6 1],[314.184 60 0],[317.505 550 0],[321.871 40 0],[326.234 550 0],[328.321 50 1],[333.062 110 0],[335.197 60 1],[340.748 2 1],[347.246 10 1],[353.757 7 1],[357.545 11 1],[358.239 3 1],[362.008 2 1],[362.054 6 1],[365.578 40 0],[371.523 6 1],[380.102 280 0],[384.144 4 1],[429.465 1 1],[452.474 40 0],[457.913 1 1],[458.029 1 1],[487.722 2 1],[494.431 3 1],[497.973 20 0],[507.114 2 1],[507.267 2 1],[517.454 20 0],[533.236 10 1],[556.195 20 1],[558.892 25 1],[559.62 2 1],[563.171 500 0],[575.359 15 0],[579.72 1 1],[579.918 15 1],[592.544 50 0],[597.03 100 0],[603.77 150 0],[605.486 200 -1],[606.9 250 0],[607.346 100 0],[607.748 6 1],[607.97 5 1],[614.971 400 0],[615.46 200 0],[617.15 150 0],[631.078 100 0],[635.435 40 0],[645.35 70 1],[676.145 8 1],[684.405 25 1],[719.14 20 1],[738.779 10 1],[739.86 20 0],[740.862 1 1],[768.53 30 0],[774.18 13 1],[775.497 100 0],[790.4 3 1],[803.05 100 0],[803.93 30 0],[811.409 200 0],[812.1 30 0],[834.935 30 0],[835.704 80 0],[842.272 300 0],[855.26 400 0],[868.17 50 0],[901.895 30 0],[941.086 50 0],[941.537 80 0],[961.64 150 0],[974.11 50 0],[974.28 100 0],[980.538 300 0],[985.052 500 0],[1045.647 25 0],[1080.758 11 0],[1089.4 54 0],[1119.185 70 0],[1127.766 56 0],[1133.697 17 0],[1145.459 200 0],[1161.626 200 0],[1167.077 76 0],[1169.445 25 0],[1173.978 258 0],[1182.518 96 0],[1183.582 106 0],[1193.299 254 0],[1200.95 48 0],[1231.324 111 0],[1233.56 33 0],[1253.087 42 0],[1253.65 42 0],[1278.82 37 0],[1288.85 89 0],[1298.17 187 0],[1300.03 20 0],[1301.85 187 0],[1308.15 68 0],[1346.02 378 0],[1360.82 144 0],[1501.82 13 0],[1546.42 30 0],[1700.05 20 0],[1780.75 10 0],[2062.2199 20 0],[2086.1699 40 0],[2168.6199 8 0],[2213.1699 4 0],[2299.7199 3 0],[2432.7199 4 0],[2473.8199 4 0]}{ALLx2000x1400x70x2000x1000x2000x200}{UVx2000x1400x60x2000x1000x2000x0}{VISx500x500x70x0x0x0x200}{IVx500x500x3x0x0x0x0}%
+\pgfspectra@elt@search{#1}{Sn}{[35.514 120 4],[36.101 150 4],[37.255 100 4],[60.523 50 3],[61.904 50 3],[62.873 50 3],[75.301 100 2],[76.062 50 2],[77.579 75 2],[78.468 50 2],[89.992 1 1],[90.822 50 3],[91.092 200 2],[91.74 2 1],[93.563 1 1],[94.583 3 1],[95.45 4 1],[95.625 500 3],[98.513 7 1],[99.721 4 1],[101.092 50 2],[101.626 2 1],[101.972 500 3],[104.078 4 1],[104.132 1 1],[104.449 1000 3],[104.884 50 2],[105.837 100 3],[105.859 50 3],[106.21 3 1],[107.341 1000 3],[108.75 200 3],[108.935 200 4],[109.692 300 3],[110.324 50 3],[110.819 8 1],[111.934 0 3],[112.068 200 3],[113.279 100 4],[113.929 1000 2],[115.833 1000 2],[115.905 4 1],[116.074 200 4],[116.109 200 2],[116.143 10 1],[116.158 100 2],[116.294 3 1],[117.626 100 4],[118.051 4 1],[118.062 100 2],[118.425 1000 2],[118.992 100 4],[118.999 200 2],[120.406 200 2],[120.572 100 4],[121.052 2000 2],[121.51 100 2],[121.814 100 2],[121.907 9 1],[122.37 13 1],[123.017 100 2],[123.138 100 2],[124.3 11 1],[124.363 500 2],[125.138 2000 4],[125.992 1000 2],[127.631 40 2],[128.381 100 4],[129.086 20 1],[129.436 200 4],[130.22 100 4],[130.597 1000 2],[131.455 1000 3],[131.659 20 1],[132.734 1000 2],[133.47 200 2],[134.605 200 2],[134.765 1000 2],[136.971 200 2],[138.674 1000 2],[140.052 25 1],[141.061 500 2],[143.752 1000 3],[144.977 200 2],[147.515 20 1],[148.922 9 1],[153.29 100 3],[157.036 1000 2],[167.429 50 2],[173.721 10 0],[175.146 15 0],[175.33 10 0],[175.8 7 1],[176.498 20 0],[177.34 20 0],[179.075 30 0],[180.46 80 0],[181.134 15 1],[181.171 500 2],[181.304 30 0],[181.574 40 0],[181.931 25 0],[182.3 120 0],[183.189 9 1],[184.875 50 0],[185.2 30 0],[186.032 200 0],[186.142 20 0],[186.552 20 0],[186.596 30 0],[187.329 15 0],[188.264 30 0],[188.605 80 0],[189.14 100 0],[189.729 20 0],[189.991 12 1],[190.93 50 0],[191.161 40 0],[191.352 20 0],[192.531 80 0],[192.677 20 0],[192.795 15 0],[192.89 40 0],[193.317 25 0],[194.186 500 2],[194.269 20 0],[195.215 150 0],[195.552 50 2],[196.021 15 0],[197.146 30 0],[197.76 50 0],[198.42 80 0],[199.188 15 0],[199.498 20 0],[200.805 25 0],[201.576 30 0],[202.698 30 0],[204.066 50 0],[204.09 20 0],[205.403 50 0],[205.831 70 0],[206.4 20 0],[206.858 80 0],[207.289 100 0],[207.308 100 0],[208.062 25 0],[209.158 30 0],[209.435 40 0],[209.639 200 0],[210.093 100 0],[211.393 100 0],[212.126 50 0],[214.073 25 0],[214.143 20 0],[214.846 15 0],[214.863 1 1],[214.873 40 0],[215.143 20 0],[215.154 30 1],[217.132 80 0],[219.449 150 0],[219.934 300 0],[220.965 400 0],[220.967 4 1],[221.105 40 0],[223.172 80 0],[224.605 400 0],[224.607 6 1],[225.117 60 0],[226.719 30 0],[226.891 400 0],[228.226 20 0],[228.668 200 0],[231.723 600 0],[233.48 300 0],[235.484 1000 0],[235.79 20 0],[236.034 3 1],[236.833 22 1],[238.072 60 0],[238.454 4 1],[240.815 100 0],[242.17 800 0],[242.949 1000 0],[243.352 1 1],[244.898 15 1],[245.524 60 0],[247.64 20 0],[248.339 300 0],[248.348 13 1],[248.699 10 1],[249.57 200 0],[252.261 5 1],[252.392 90 0],[253.117 80 0],[254.655 400 0],[255.801 40 0],[257.158 500 0],[259.442 200 0],[263.694 50 0],[266.124 200 0],[266.493 2 1],[270.651 700 0],[272.782 2 1],[276.178 20 0],[277.981 150 0],[278.503 80 0],[278.796 60 0],[281.259 60 0],[281.358 80 0],[282.552 2 1],[283.999 1400 0],[284.642 1 1],[285.062 200 0],[286.332 1000 0],[291.28 1 1],[291.354 200 0],[291.982 6 1],[299.1 3 1],[299.444 7 1],[300.914 700 0],[301.218 1 1],[302.394 8 1],[303.28 200 0],[303.412 850 0],[304.75 12 1],[309.469 6 1],[314.184 60 0],[317.505 550 0],[321.871 40 0],[326.234 550 0],[328.321 50 1],[333.062 110 0],[335.197 60 1],[340.748 2 1],[347.246 10 1],[353.757 7 1],[357.545 11 1],[358.239 3 1],[362.008 2 1],[362.054 6 1],[365.578 40 0],[371.523 6 1],[380.102 280 0],[384.144 4 1],[429.465 1 1],[452.474 40 0],[457.913 1 1],[458.029 1 1],[487.722 2 1],[494.431 3 1],[497.973 20 0],[507.114 2 1],[507.267 2 1],[517.454 20 0],[533.236 10 1],[556.195 20 1],[558.892 25 1],[559.62 2 1],[563.171 500 0],[575.359 15 0],[579.72 1 1],[579.918 15 1],[592.544 50 0],[597.03 100 0],[603.77 150 0],[605.486 200 -1],[606.9 250 0],[607.346 100 0],[607.748 6 1],[607.97 5 1],[614.971 400 0],[615.46 200 0],[617.15 150 0],[631.078 100 0],[635.435 40 0],[645.35 70 1],[676.145 8 1],[684.405 25 1],[719.14 20 1],[738.779 10 1],[739.86 20 0],[740.862 1 1],[768.53 30 0],[774.18 13 1],[775.497 100 0],[790.4 3 1],[803.05 100 0],[803.93 30 0],[811.409 200 0],[812.1 30 0],[834.935 30 0],[835.704 80 0],[842.272 300 0],[855.26 400 0],[868.17 50 0],[901.895 30 0],[941.086 50 0],[941.537 80 0],[961.64 150 0],[974.11 50 0],[974.28 100 0],[980.538 300 0],[985.052 500 0],[1045.647 25 0],[1080.758 11 0],[1089.4 54 0],[1119.185 70 0],[1127.766 56 0],[1133.697 17 0],[1145.459 200 0],[1161.626 200 0],[1167.077 76 0],[1169.445 25 0],[1173.978 258 0],[1182.518 96 0],[1183.582 106 0],[1193.299 254 0],[1200.95 48 0],[1231.324 111 0],[1233.56 33 0],[1253.087 42 0],[1253.65 42 0],[1278.82 37 0],[1288.85 89 0],[1298.17 187 0],[1300.03 20 0],[1301.85 187 0],[1308.15 68 0],[1346.02 378 0],[1360.82 144 0],[1501.82 13 0],[1546.42 30 0],[1700.05 20 0],[1780.75 10 0],[2062.2199 20 0],[2086.1699 40 0],[2168.6199 8 0],[2213.1699 4 0],[2299.7199 3 0],[2432.7199 4 0],[2473.8199 4 0]}{ALLx2000x1400x70x2000x1000x2000x200}{UVx2000x1400x60x2000x1000x2000x0}{VISx500x500x70x0x0x0x200}{IVx500x500x3x0x0x0x0}%[1.6 7 1],
\pgfspectra@elt@search{#1}{Sb}{[69.118 10 2],[69.12 1 1],[69.869 10 2],[69.922 3 4],[72.286 15 2],[72.481 8 2],[73.233 15 2],[74.606 1 4],[76.443 1 1],[81.485 1 1],[83.1 6 4],[84.939 1 1],[85.508 2 1],[87.684 4 1],[89.802 1 4],[92.107 4 1],[98.357 6 1],[99.962 15 2],[100.113 6 1],[100.943 6 1],[101.194 40 2],[105.221 6 1],[105.627 8 1],[105.658 10 2],[105.732 8 1],[106.59 40 2],[106.993 20 2],[107.043 20 2],[107.376 5 2],[107.381 6 1],[107.582 30 2],[107.81 5 2],[108.406 20 2],[109.834 10 2],[110.432 8 4],[113.543 10 2],[115.149 30 2],[115.774 40 2],[116.696 12 2],[120.52 50 2],[121.064 50 2],[122.6 12 4],[123.03 6 1],[127.498 8 1],[130.669 20 2],[132.74 8 1],[135.804 6 1],[137.958 8 2],[138.47 8 1],[140.418 20 2],[140.783 6 1],[142.957 10 2],[143.076 10 0],[143.649 8 1],[146.419 10 0],[148.657 20 0],[149.136 40 0],[150.57 12 4],[151.257 50 0],[152.447 12 4],[153.274 120 0],[153.506 80 0],[156.551 6 1],[157.611 8 1],[158.136 7 1],[159.996 80 0],[160.698 10 1],[161.28 200 0],[162.33 100 0],[165.12 50 0],[165.704 20 1],[166.26 100 0],[167.389 15 2],[169.885 50 0],[171.023 3 2],[171.184 15 2],[171.693 80 0],[171.745 150 0],[172.343 150 0],[172.533 15 2],[173.619 100 0],[173.643 8 1],[175.779 50 0],[176.23 12 2],[176.576 100 0],[178.087 100 0],[178.824 100 0],[180.018 150 0],[181.05 50 0],[181.42 80 0],[182.95 100 0],[183.932 12 2],[185.889 60 0],[186.817 50 0],[187.115 300 0],[188.256 150 0],[189.128 70 0],[189.939 70 0],[192.708 100 0],[194.613 10 2],[195.039 200 0],[196.43 80 0],[198.605 60 0],[199.06 6 1],[202.4 50 0],[202.949 60 0],[203.977 70 0],[204.957 150 0],[205.41 3 2],[206.343 50 0],[206.833 1000 0],[207.956 100 0],[209.185 2 2],[209.841 50 0],[211.848 80 0],[212.7 5 2],[212.739 100 0],[213.705 50 0],[213.969 100 0],[214.18 10 1],[214.183 50 0],[214.486 100 0],[215.891 50 0],[217.581 1500 0],[217.919 250 0],[217.925 6 1],[220.132 200 0],[220.845 300 0],[220.85 6 1],[222.073 150 0],[222.198 100 0],[222.493 120 0],[222.515 6 1],[226.251 300 0],[228.898 120 0],[229.344 150 0],[230.646 300 0],[231.147 2500 0],[231.589 150 0],[237.367 400 0],[238.364 300 0],[239.522 100 0],[242.213 150 0],[242.635 250 0],[244.551 400 0],[247.832 400 0],[248.044 150 0],[248.046 8 1],[250.771 5 2],[251.054 100 0],[252.852 2000 0],[252.854 15 1],[256.775 10 1],[257.406 150 0],[259.013 15 2],[259.805 1500 0],[259.809 500 0],[261.231 300 0],[261.42 1 2],[261.717 12 2],[261.763 1 2],[265.26 200 0],[265.655 12 1],[266.939 20 2],[267.064 300 0],[268.276 200 0],[269.225 120 0],[271.89 150 0],[276.995 400 0],[278.587 5 2],[279.027 20 2],[285.109 12 1],[285.111 100 0],[287.792 1000 0],[296.61 12 1],[298.096 15 1],[302.983 500 0],[303.401 12 1],[304.067 12 1],[323.252 600 0],[324.128 20 1],[326.751 700 0],[333.661 20 2],[338.309 12 1],[338.315 100 0],[349.846 15 1],[350.407 50 2],[351.906 15 2],[352.047 12 1],[353.345 15 2],[355.918 40 2],[356.625 40 2],[363.78 25 1],[363.783 250 0],[372.278 20 1],[372.279 200 0],[373.89 30 2],[385.022 20 1],[403.355 200 0],[403.356 20 1],[413.363 20 1],[414.054 15 1],[419.517 15 1],[421.907 20 1],[426.509 40 2],[431.432 20 1],[434.483 12 1],[435.216 50 2],[441.142 12 1],[444.648 12 1],[450.692 12 1],[451.45 15 1],[459.189 30 2],[459.69 30 1],[459.909 20 1],[460.477 15 1],[464.732 30 1],[467.574 20 1],[469.291 30 2],[471.126 40 1],[473.544 12 1],[475.781 20 1],[476.536 20 1],[476.691 12 1],[478.403 30 1],[480.201 20 1],[483.282 20 1],[487.724 20 1],[494.74 15 1],[504.456 15 1],[516.632 12 1],[517.655 15 1],[523.894 20 1],[524.771 1 2],[535.424 20 1],[546.408 15 1],[549.032 30 0],[555.61 40 0],[556.813 15 1],[560.219 30 0],[563.202 100 0],[563.975 30 1],[569.08 1 2],[571.73 1 2],[583.034 60 0],[584.55 3 2],[589.509 15 1],[600.521 100 1],[605.341 20 1],[607.98 30 1],[613.004 50 1],[615.494 20 1],[624.67 5 2],[628.76 3 2],[630.276 12 1],[661.149 20 0],[664.744 30 1],[668.801 15 1],[680.667 6 1],[764.828 30 0],[784.444 80 0],[792.465 200 0],[796.955 40 0],[841.169 60 0],[857.264 150 0],[861.955 100 0],[868.27 30 0],[913.221 30 0],[951.868 400 0],[986.678 30 0],[994.914 400 0],[1007.849 200 0],[1026.101 300 0],[1036.433 50 0],[1048.83 50 0],[1058.56 200 0],[1067.741 1000 0],[1074.194 800 0],[1079.411 80 0],[1083.973 600 0],[1086.858 200 0],[1087.955 400 0],[1101.279 300 0],[1107.995 40 0],[1108.498 30 0],[1110.484 50 0],[1110.852 50 0],[1118.961 30 0],[1126.623 150 0],[1186.337 30 0],[1195.77 1 0],[1211.606 5 0],[1227.66 2 0],[1246.675 2 0]}{ALLx2500x2500x100x50x0x12x0}{UVx2500x2500x25x50x0x12x0}{VISx200x200x100x50x0x0x0}{IVx1000x1000x0x0x0x0x0}%
\pgfspectra@elt@search{#1}{Te}{[79.96 3 1],[80.228 4 1],[94.262 3 1],[100.373 3 1],[100.78 3 1],[101.427 2.5 1],[102.279 2.5 1],[105.7 3 1],[105.951 4 1],[106.886 3 1],[107.766 4 1],[109.011 3 1],[114.404 3 1],[115.31 2.5 1],[116.142 5 1],[117.434 5 1],[117.579 6 1],[120.854 4.5 1],[121.3 2.5 1],[122.098 4.5 1],[125.362 4.5 1],[127.052 4.5 1],[127.476 3.5 1],[130.653 4 1],[132.492 5 1],[133.642 3.5 1],[134.52 3.5 1],[136.324 4.5 1],[136.673 4 1],[137.48 5 1],[139.522 3 1],[143.952 3 1],[146.525 3 1],[148.956 3.5 1],[160.799 4 1],[160.841 5 1],[161.315 5 1],[163.891 3 1],[165.54 2.5 0],[168.85 2.5 0],[170 3 0],[170.158 3 1],[170.8 2.5 0],[175.1 3 0],[175.94 2.5 0],[177.5 2.5 0],[179.57 3 0],[179.63 3 0],[182.24 5 0],[182.55 3 0],[185.06 3 0],[185.21 3 0],[185.38 3 0],[185.72 4 0],[186.04 3 0],[196.288 1.5 1],[199.483 3.5 0],[200.02 3 0],[200.202 13000 0],[207.09 4 0],[208.116 3250 0],[214.281 9000 0],[214.725 1600 0],[215.985 180 0],[220.874 4.5 0],[225.549 5 0],[225.902 250 0],[226.552 5 0],[237.306 10 1],[238.326 600 0],[238.578 750 0],[238.782 10 1],[240.163 5 1],[243.647 5 1],[243.869 25 1],[253.072 60 0],[256.782 10 1],[257.496 5 1],[257.61 2.5 1],[257.924 3.5 1],[259.112 5 1],[259.285 5 1],[260.572 5 1],[262.192 2.5 1],[262.486 5 1],[262.796 10 1],[264.189 10 1],[264.848 10 1],[264.966 50 1],[265.77 20 1],[266.11 40 1],[267.713 55 0],[271.158 10 1],[276.965 3 0],[284.117 5 1],[284.615 5 1],[285.829 50 1],[286.1 10 1],[286.882 20 1],[289.541 75 1],[291.989 15 1],[294.211 25 1],[294.668 25 1],[296.729 35 1],[297.367 10 1],[297.59 25 1],[299.704 7.5 1],[301.202 7.5 1],[301.758 25 1],[302.331 10 1],[304.7 35 1],[305.246 10 1],[306.316 5 1],[307.356 7.5 1],[310.444 4 1],[313.258 5 1],[316.066 10 1],[317.514 50 0],[318.983 5 1],[321.121 2.5 1],[325.68 30 1],[326.877 15 1],[328.263 15 1],[332.192 20 1],[332.311 20 1],[332.922 30 1],[335.21 30 1],[336.279 30 1],[337.41 12.5 1],[340.679 75 1],[341.963 10 1],[344.225 25 1],[345.512 20 1],[345.688 10 1],[348.032 10 1],[348.367 20 1],[348.611 10 1],[352.111 25 1],[355.219 25 1],[361.178 50 1],[361.757 25 1],[364.446 20 1],[367.926 10 1],[372.566 15 1],[379.722 20 1],[380.092 10 1],[390.567 10 1],[391.854 10 1],[393.149 15 1],[394.798 10 1],[396.922 20 1],[397.594 12.5 1],[398.177 10 1],[400.652 25 1],[401.169 10 1],[402.973 15 1],[404.717 20 1],[404.888 15 1],[407.348 7.5 1],[410.104 15 1],[412.732 35 1],[416.355 15 1],[416.977 50 1],[417.929 15 1],[421.131 12.5 1],[422.573 40 1],[424.647 15 1],[425.115 10 1],[426.111 50 1],[426.436 15 1],[427.343 30 1],[428.585 40 1],[432.09 20 1],[436.128 15 1],[436.4 75 1],[437.712 15 1],[438.51 37.5 1],[439.6 30 1],[447.863 85 1],[453.707 40 1],[455.778 50 1],[463.062 35 1],[464.112 50 1],[465.437 90 1],[468.691 100 1],[469.638 50 1],[470.653 50 1],[476.605 50 1],[477.156 35 1],[478.487 50 1],[482.714 50 1],[483.128 75 1],[484.29 75 1],[486.512 65 1],[486.624 100 1],[488.522 40 1],[490.444 40 1],[496.188 30 1],[500.082 30 1],[508.3 4 0],[514.87 3.5 0],[544.984 25 1],[548.795 25 1],[557.635 75 1],[564.926 75 1],[566.62 50 1],[570.812 100 1],[573.35 3.5 0],[575.585 75 1],[578.91 4 0],[593.615 25 1],[597.468 50 1],[627.35 4 0],[634.97 4 0],[636.713 25 1],[640.59 4 0],[645.67 3.5 0],[661.34 4 0],[664.858 5 1],[666.02 4 0],[669 4 0],[679 5 0],[683.76 10 0],[685.47 10 0],[701.606 5 1],[703.913 5 1],[719.11 7.5 0],[723.662 5 1],[726.35 10 0],[728.09 4 0],[728.926 5 1],[744.539 5 1],[746.098 6 1],[746.875 7.5 1],[748.126 5 1],[755.68 5 0],[768.861 3 1],[775.91 7.5 0],[781.879 4 1],[786.161 4 1],[792.169 7.5 1],[794.314 7.5 1],[795.034 5 1],[797.29 10 0],[805.615 3 1],[806.14 15 0],[808.25 5 0],[812.244 5 1],[813.039 4 1],[815.447 4 1],[818.644 10 1],[819.094 3 1],[825.15 5 0],[827.353 7.5 1],[827.66 5 0],[829.11 5 0],[835.58 7.5 0],[837.212 5 1],[846.98 3.5 0],[849.22 4 0],[850.08 4 0],[852.14 6 0],[853.568 5 1],[857.578 6 1],[860.463 5 1],[862.168 4 1],[863.21 3.5 0],[867.295 7.5 1],[870.109 6 0],[873.381 5 1],[875.818 102.5 0],[883.152 6 0],[885.115 9 0],[889.792 3 1],[900.437 40.5 0],[904.339 9 0],[919.68 6 0],[920.678 7.5 0],[920.764 8.5 0],[946.9 6 0],[972.274 2830 0],[978.554 92.5 0],[984.23 54.5 0],[986.892 266 0],[990.261 59 0],[995.63 344.5 0],[995.993 18.5 0],[997.713 162.5 0],[997.931 68 0],[998.585 22.5 0],[1005.141 2975 0],[1009.101 2048.5 0],[1009.957 52 0],[1010.605 139.5 0],[1011.808 190.5 0],[1015.106 148 0],[1030.056 198.5 0],[1032.305 102.5 0],[1049.357 372.5 0],[1050.986 98.5 0],[1091.834 940 0],[1100.78 149 0],[1108.956 5100 0],[1116.374 254 0],[1148.723 3310 0],[1197.896 140 0],[1256.624 94 0],[1258.919 194.5 0],[1280.55 80.5 0],[1310.418 200 0],[1324.775 790 0],[1331.663 241.5 0],[1403.709 108.5 0],[1407.253 72 0],[1433.574 217 0],[1441.746 110 0],[1451.351 525 0],[1455.468 64.5 0],[1545.245 740 0],[1554.623 1215 0],[1640.39 1880 0],[1730.3539 980 0],[1829.159 1390 0],[1877.7301 197 0],[1962.352 134.5 0],[2014.7539 119.5 0],[2104.373 510 0],[2160.25 232 0],[2179.9641 18.5 0],[2255.5289 37 0],[2275.566 24 0],[2329.4939 13.5 0],[2397.8699 8.5 0],[2405.9039 12.5 0],[2642.8619 6.5 0],[2653.917 19 0],[2655.374 7.5 0],[2717.926 3.5 0]}{ALLx13000x13000x100x0x0x0x0}{UVx13000x13000x75x0x0x0x0}{VISx100x10x100x0x0x0x0}{IVx5100x5100x10x0x0x0x0}%
-\pgfspectra@elt@search{#1}{I}{[36.378 3 4],[38.074 3.6 4],[56.553 4.5 4],[60.186 0.5 3],[60.757 5 4],[61.246 0.6 3],[61.517 0.4 3],[65.422 0.4 3],[65.456 0.4 3],[65.58 0.2 1],[65.9 0.6 1],[66.398 0.8 1],[66.452 0.8 1],[66.506 0.8 1],[66.57 15 1],[66.681 0.6 2],[70.511 0.8 2],[71.955 100 1],[72.298 100 1],[78.464 0.7 2],[78.48 0.7 2],[79.552 0.8 2],[79.816 100 1],[83.41 120 1],[84.78 60 1],[86.597 0.5 2],[87.349 150 1],[87.594 100 1],[87.984 200 1],[88.188 150 1],[89.1 100 1],[89.317 100 1],[91.928 0.7 3],[92.038 0.5 2],[96.117 0.6 2],[100.057 120 1],[100.335 100 1],[101.858 400 1],[103.466 1000 1],[105.474 150 1],[106.634 200 1],[107.521 300 1],[107.858 0.6 2],[109.42 0.8 2],[110.5 500 1],[111.116 250 1],[111.722 150 1],[112.525 350 1],[113.15 200 1],[113.975 120 1],[113.98 1000 1],[115.467 150 1],[115.987 100 1],[116.056 1000 1],[116.648 2000 1],[116.705 150 1],[117.584 500 1],[117.865 1000 1],[118.734 1500 1],[119.085 1000 1],[119.529 1.5 0],[119.888 500 1],[120.022 700 1],[121.841 20 0],[122.089 2000 1],[122.405 60 0],[122.408 60 0],[122.889 50 0],[123.406 2000 1],[124.466 0.4 2],[125.134 60 0],[125.235 0.8 2],[125.915 250 0],[125.951 300 0],[126.127 80 0],[126.757 60 0],[126.76 60 0],[127.526 150 0],[128.94 300 0],[130.034 1000 0],[130.298 300 0],[130.693 0.5 2],[131.395 300 0],[131.754 300 0],[133.019 200 0],[133.652 2000 1],[135.51 500 0],[135.797 300 0],[136.097 500 0],[136.111 300 0],[136.771 250 0],[136.822 250 0],[138.323 400 0],[139.075 300 0],[139.29 200 0],[140.001 200 0],[142.549 800 0],[144.626 500 0],[145.318 500 0],[145.739 500 0],[145.747 500 0],[145.798 1000 0],[145.879 250 0],[145.915 400 0],[146.583 250 0],[148.592 100 0],[149.289 500 0],[150.704 500 0],[151.468 500 0],[151.805 1500 0],[152.645 250 0],[159.358 500 0],[161.76 500 0],[164.078 250 0],[170.207 1500 0],[178.276 1200 0],[179.909 500 0],[183.038 7500 0],[184.445 1500 0],[206.163 200 0],[222.443 0.1 2],[223.812 0.1 2],[224.93 0.5 3],[224.931 0.3 2],[230.938 0.2 2],[234.084 0.4 3],[234.085 0.3 2],[235.043 0.3 2],[235.346 0.2 2],[236.113 0.7 3],[236.774 0.4 2],[236.775 0.5 3],[237.145 0.2 2],[237.245 0.3 2],[237.245 0.6 3],[237.646 0.7 3],[237.647 0.4 2],[238.528 0.4 3],[238.711 0.8 3],[238.712 0.4 2],[239.2 0.6 3],[239.201 0.3 2],[240.305 0.4 3],[240.306 0.2 2],[240.363 0.2 2],[240.801 10 1],[241.485 0.2 2],[241.845 0.2 3],[241.849 0.2 2],[241.885 0.2 2],[241.918 10 1],[242.389 0.3 3],[242.391 0.2 2],[242.61 0.9 3],[242.612 0.5 2],[243.485 0.6 3],[243.488 0.3 2],[246.25 0.2 2],[246.668 0.3 3],[246.669 0.3 2],[246.696 0.3 3],[246.699 0.3 2],[247.535 0.8 3],[247.536 0.6 2],[248.551 0.4 3],[248.924 0.5 3],[248.927 0.4 2],[249.32 0.4 3],[249.321 0.2 2],[249.427 0.2 2],[249.474 10 1],[249.516 0.3 2],[249.607 0.2 2],[250.138 0.2 3],[250.141 0.3 2],[251.374 0.3 3],[251.682 0.2 2],[251.974 0.8 3],[251.975 0.6 2],[252.172 0.4 2],[252.172 0.6 3],[253.198 0.4 3],[253.199 0.3 2],[253.36 10 1],[253.427 20 1],[253.754 0.5 3],[253.756 0.2 2],[254.567 0.8 3],[254.571 0.7 2],[256.624 100 1],[258.279 200 1],[259.346 30 1],[264.077 0.4 2],[264.077 0.4 3],[264.211 0.4 2],[264.211 0.5 3],[265.223 0.8 3],[265.225 0.6 2],[268.898 20 1],[273.012 50 1],[276.515 2 1],[280.859 20 1],[281.845 0.3 3],[281.848 0.2 2],[283.944 0.2 2],[286.467 0.4 2],[286.468 0.6 3],[287.863 150 1],[288.515 0.4 2],[291.097 0.4 3],[291.098 0.3 2],[291.733 0.5 3],[291.735 0.3 2],[293.111 0.2 2],[299.387 100 1],[300.568 0.2 2],[306.917 0.4 3],[306.923 0.3 2],[307.875 500 1],[315.388 0.3 2],[316.103 20 1],[317.011 0.4 3],[317.014 0.3 2],[317.507 100 1],[318.164 0.4 3],[318.166 0.3 2],[321.012 0.4 3],[321.014 0.3 2],[321.348 0.6 3],[321.349 0.4 2],[322.49 0.6 3],[322.493 0.4 2],[330.047 0.2 2],[335.553 30 1],[342.499 25 1],[347.953 0.2 2],[349.741 30 1],[352.69 50 1],[354.69 0.4 3],[354.692 0.3 2],[361.381 0.3 2],[374.214 20 1],[375.44 0.2 2],[375.455 0.2 2],[396.316 0.3 2],[407.714 0.3 2],[410.223 20 0],[412.921 20 0],[413.415 10 0],[432.184 50 0],[445.286 30 1],[459.977 20 1],[463.245 30 1],[466.648 50 1],[467.553 100 1],[476.331 25 0],[486.232 100 0],[491.694 20 0],[498.692 100 1],[506.537 40 1],[511.929 1000 0],[514.973 20 1],[516.12 300 1],[517.619 30 1],[521.627 60 1],[522.897 50 1],[523.457 100 0],[524.571 300 1],[526.936 50 1],[529.978 40 1],[532.28 40 1],[533.822 1000 1],[534.515 500 1],[536.986 100 1],[540.542 80 1],[540.736 80 1],[542.706 60 0],[543.583 300 1],[543.8 100 1],[546.462 200 1],[549.15 80 1],[549.694 100 1],[550.472 100 1],[552.206 60 1],[559.852 60 1],[560.032 100 1],[561.289 150 1],[562.569 1000 1],[567.808 100 1],[569.091 200 1],[570.205 50 1],[571.053 400 1],[573.827 100 1],[576.072 100 1],[576.433 100 0],[577.483 50 1],[578.702 50 1],[589.403 200 0],[595.025 500 1],[598.486 30 0],[602.408 200 0],[606.893 50 1],[607.498 200 1],[608.243 100 0],[612.749 200 1],[619.188 80 0],[620.486 100 1],[621.31 50 0],[624.448 80 0],[625.749 90 1],[629.398 100 0],[631.313 50 0],[633.037 80 0],[633.35 40 0],[633.785 200 0],[633.944 100 0],[635.916 50 0],[656.649 100 0],[658.375 200 0],[658.527 100 0],[661.966 500 0],[666.111 50 0],[666.596 60 1],[669.729 50 0],[671.883 30 1],[673.203 40 0],[681.257 400 1],[695.878 100 1],[698.978 50 0],[708.521 20 1],[712.005 50 0],[712.205 120 0],[714.206 200 0],[716.479 100 0],[719.166 40 0],[722.73 70 0],[723.678 100 0],[723.784 50 0],[735.135 50 1],[740.206 500 0],[741.05 100 0],[741.648 50 0],[746.899 500 0],[749.052 50 0],[755.418 200 0],[755.665 50 0],[770.02 200 0],[779.898 50 1],[789.798 60 0],[796.948 50 0],[800.363 100 0],[804.374 9900 0],[806.57 30 0],[809.076 100 0],[816.938 80 0],[822.257 50 0],[824.005 400 0],[839.33 1000 0],[841.46 15 1],[848.611 100 0],[866.495 150 0],[870.08 50 0],[874.822 25 0],[885.324 100 0],[885.38 200 0],[885.75 300 0],[889.85 100 0],[896.469 40 0],[899.313 40 0],[902.24 500 0],[905.833 1500 0],[909.886 100 0],[911.391 1200 0],[912.803 60 0],[919.53 3 1],[922.774 60 0],[933.505 100 0],[942.671 400 0],[942.715 300 0],[948.033 1 1],[959.822 200 0],[964.961 200 0],[965.306 300 0],[973.173 500 0],[1000.305 50 0],[1013.116 75 0],[1023.882 100 0],[1037.52 40 0],[1039.174 40 0],[1040.549 0.6 1],[1046.654 500 0],[1108.468 0.1 1],[1123.656 40 0],[1155.846 35 0],[1177.834 32 0],[1199.686 45 0],[1203.369 30 0],[1230.458 15 0],[1314.916 6 0],[1395.827 14 0],[1428.702 20 0],[1446 10 0],[1503.257 22.5 0],[1552.865 10.5 0],[1603.733 15 0],[1827.5711 1.5 0],[1834.852 2 0],[1898.241 1.5 0],[1907.017 3.5 0],[1910.5119 11 0],[1937.002 5 0],[2064.8689 1 0],[2218.3029 22 0],[2222.6529 15 0],[2230.9211 3 0],[2442.082 3.2 0],[2736.542 1.2 0],[2757.3051 0.9 0],[3036.193 1 0],[3038.3881 0.8 0],[3429.573 1 0],[3451.3109 0.9 0],[4022.8539 0.3 0],[4163.3801 0.2 0]}{ALLx9900x9900x2000x0.8x0.9x5x0}{UVx7500x7500x2000x0.8x0.9x5x0}{VISx1000x1000x1000x0.3x0x0x0}{IVx9900x9900x15x0x0x0x0}%
+\pgfspectra@elt@search{#1}{I}{[36.378 3 4],[38.074 3.6 4],[56.553 4.5 4],[60.186 0.5 3],[60.757 5 4],[61.246 0.6 3],[61.517 0.4 3],[65.422 0.4 3],[65.456 0.4 3],[65.58 0.2 1],[65.9 0.6 1],[66.398 0.8 1],[66.452 0.8 1],[66.506 0.8 1],[66.57 15 1],[66.681 0.6 2],[70.511 0.8 2],[71.955 100 1],[72.298 100 1],[78.464 0.7 2],[78.48 0.7 2],[79.552 0.8 2],[79.816 100 1],[83.41 120 1],[84.78 60 1],[86.597 0.5 2],[87.349 150 1],[87.594 100 1],[87.984 200 1],[88.188 150 1],[89.1 100 1],[89.317 100 1],[91.928 0.7 3],[92.038 0.5 2],[96.117 0.6 2],[100.057 120 1],[100.335 100 1],[101.858 400 1],[103.466 1000 1],[105.474 150 1],[106.634 200 1],[107.521 300 1],[107.858 0.6 2],[109.42 0.8 2],[110.5 500 1],[111.116 250 1],[111.722 150 1],[112.525 350 1],[113.15 200 1],[113.975 120 1],[113.98 1000 1],[115.467 150 1],[115.987 100 1],[116.056 1000 1],[116.648 2000 1],[116.705 150 1],[117.584 500 1],[117.865 1000 1],[118.734 1500 1],[119.085 1000 1],[119.529 1.5 0],[119.888 500 1],[120.022 700 1],[121.841 20 0],[122.089 2000 1],[122.405 60 0],[122.408 60 0],[122.889 50 0],[123.406 2000 1],[124.466 0.4 2],[125.134 60 0],[125.235 0.8 2],[125.915 250 0],[125.951 300 0],[126.127 80 0],[126.757 60 0],[126.76 60 0],[127.526 150 0],[128.94 300 0],[130.034 1000 0],[130.298 300 0],[130.693 0.5 2],[131.395 300 0],[131.754 300 0],[133.019 200 0],[133.652 2000 1],[135.51 500 0],[135.797 300 0],[136.097 500 0],[136.111 300 0],[136.771 250 0],[136.822 250 0],[138.323 400 0],[139.075 300 0],[139.29 200 0],[140.001 200 0],[142.549 800 0],[144.626 500 0],[145.318 500 0],[145.739 500 0],[145.747 500 0],[145.798 1000 0],[145.879 250 0],[145.915 400 0],[146.583 250 0],[148.592 100 0],[149.289 500 0],[150.704 500 0],[151.468 500 0],[151.805 1500 0],[152.645 250 0],[159.358 500 0],[161.76 500 0],[164.078 250 0],[170.207 1500 0],[178.276 1200 0],[179.909 500 0],[183.038 7500 0],[184.445 1500 0],[206.163 200 0],[222.443 0.1 2],[223.812 0.1 2],[224.93 0.5 3],[224.931 0.3 2],[230.938 0.2 2],[234.084 0.4 3],[234.085 0.3 2],[235.043 0.3 2],[235.346 0.2 2],[236.113 0.7 3],[236.774 0.4 2],[236.775 0.5 3],[237.145 0.2 2],[237.245 0.3 2],[237.245 0.6 3],[237.646 0.7 3],[237.647 0.4 2],[238.528 0.4 3],[238.711 0.8 3],[238.712 0.4 2],[239.2 0.6 3],[239.201 0.3 2],[240.305 0.4 3],[240.306 0.2 2],[240.363 0.2 2],[240.801 10 1],[241.485 0.2 2],[241.845 0.2 3],[241.849 0.2 2],[241.885 0.2 2],[241.918 10 1],[242.389 0.3 3],[242.391 0.2 2],[242.61 0.9 3],[242.612 0.5 2],[243.485 0.6 3],[243.488 0.3 2],[246.25 0.2 2],[246.668 0.3 3],[246.669 0.3 2],[246.696 0.3 3],[246.699 0.3 2],[247.535 0.8 3],[247.536 0.6 2],[248.551 0.4 3],[248.924 0.5 3],[248.927 0.4 2],[249.32 0.4 3],[249.321 0.2 2],[249.427 0.2 2],[249.474 10 1],[249.516 0.3 2],[249.607 0.2 2],[250.138 0.2 3],[250.141 0.3 2],[251.374 0.3 3],[251.682 0.2 2],[251.974 0.8 3],[251.975 0.6 2],[252.172 0.4 2],[252.172 0.6 3],[253.198 0.4 3],[253.199 0.3 2],[253.36 10 1],[253.427 20 1],[253.754 0.5 3],[253.756 0.2 2],[254.567 0.8 3],[254.571 0.7 2],[256.624 100 1],[258.279 200 1],[259.346 30 1],[264.077 0.4 2],[264.077 0.4 3],[264.211 0.4 2],[264.211 0.5 3],[265.223 0.8 3],[265.225 0.6 2],[268.898 20 1],[273.012 50 1],[276.515 2 1],[280.859 20 1],[281.845 0.3 3],[281.848 0.2 2],[283.944 0.2 2],[286.467 0.4 2],[286.468 0.6 3],[287.863 150 1],[288.515 0.4 2],[291.097 0.4 3],[291.098 0.3 2],[291.733 0.5 3],[291.735 0.3 2],[293.111 0.2 2],[299.387 100 1],[300.568 0.2 2],[306.917 0.4 3],[306.923 0.3 2],[307.875 500 1],[315.388 0.3 2],[316.103 20 1],[317.011 0.4 3],[317.014 0.3 2],[317.507 100 1],[318.164 0.4 3],[318.166 0.3 2],[321.012 0.4 3],[321.014 0.3 2],[321.348 0.6 3],[321.349 0.4 2],[322.49 0.6 3],[322.493 0.4 2],[330.047 0.2 2],[335.553 30 1],[342.499 25 1],[347.953 0.2 2],[349.741 30 1],[352.69 50 1],[354.69 0.4 3],[354.692 0.3 2],[361.381 0.3 2],[374.214 20 1],[375.44 0.2 2],[375.455 0.2 2],[396.316 0.3 2],[407.714 0.3 2],[410.223 20 0],[412.921 20 0],[413.415 10 0],[432.184 50 0],[445.286 30 1],[459.977 20 1],[463.245 30 1],[466.648 50 1],[467.553 100 1],[476.331 25 0],[486.232 100 0],[491.694 20 0],[498.692 100 1],[506.537 40 1],[511.929 1000 0],[514.973 20 1],[516.12 300 1],[517.619 30 1],[521.627 60 1],[522.897 50 1],[523.457 100 0],[524.571 300 1],[526.936 50 1],[529.978 40 1],[532.28 40 1],[533.822 1000 1],[534.515 500 1],[536.986 100 1],[540.542 80 1],[540.736 80 1],[542.706 60 0],[543.583 300 1],[543.8 100 1],[546.462 200 1],[549.15 80 1],[549.694 100 1],[550.472 100 1],[552.206 60 1],[559.852 60 1],[560.032 100 1],[561.289 150 1],[562.569 1000 1],[567.808 100 1],[569.091 200 1],[570.205 50 1],[571.053 400 1],[573.827 100 1],[576.072 100 1],[576.433 100 0],[577.483 50 1],[578.702 50 1],[589.403 200 0],[595.025 500 1],[598.486 30 0],[602.408 200 0],[606.893 50 1],[607.498 200 1],[608.243 100 0],[612.749 200 1],[619.188 80 0],[620.486 100 1],[621.31 50 0],[624.448 80 0],[625.749 90 1],[629.398 100 0],[631.313 50 0],[633.037 80 0],[633.35 40 0],[633.785 200 0],[633.944 100 0],[635.916 50 0],[656.649 100 0],[658.375 200 0],[658.527 100 0],[661.966 500 0],[666.111 50 0],[666.596 60 1],[669.729 50 0],[671.883 30 1],[673.203 40 0],[681.257 400 1],[695.878 100 1],[698.978 50 0],[708.521 20 1],[712.005 50 0],[712.205 120 0],[714.206 200 0],[716.479 100 0],[719.166 40 0],[722.73 70 0],[723.678 100 0],[723.784 50 0],[735.135 50 1],[740.206 500 0],[741.05 100 0],[741.648 50 0],[746.899 500 0],[749.052 50 0],[755.418 200 0],[755.665 50 0],[770.02 200 0],[779.898 50 1],[789.798 60 0],[796.948 50 0],[800.363 100 0],[804.374 9900 0],[806.57 30 0],[809.076 100 0],[816.938 80 0],[822.257 50 0],[824.005 400 0],[839.33 1000 0],[841.46 15 1],[848.611 100 0],[866.495 150 0],[870.08 50 0],[874.822 25 0],[885.324 100 0],[885.38 200 0],[885.75 300 0],[889.85 100 0],[896.469 40 0],[899.313 40 0],[902.24 500 0],[905.833 1500 0],[909.886 100 0],[911.391 1200 0],[912.803 60 0],[919.53 3 1],[922.774 60 0],[933.505 100 0],[942.671 400 0],[942.715 300 0],[948.033 1 1],[959.822 200 0],[964.961 200 0],[965.306 300 0],[973.173 500 0],[1000.305 50 0],[1013.116 75 0],[1023.882 100 0],[1037.52 40 0],[1039.174 40 0],[1040.549 0.6 1],[1046.654 500 0],[1108.468 0.1 1],[1123.656 40 0],[1155.846 35 0],[1177.834 32 0],[1199.686 45 0],[1203.369 30 0],[1230.458 15 0],[1314.916 6 0],[1395.827 14 0],[1428.702 20 0],[1446 10 0],[1503.257 22.5 0],[1552.865 10.5 0],[1603.733 15 0],[1827.5711 1.5 0],[1834.852 2 0],[1898.241 1.5 0],[1907.017 3.5 0],[1910.5119 11 0],[1937.002 5 0],[2064.8689 1 0],[2218.3029 22 0],[2222.6529 15 0],[2230.9211 3 0],[2442.082 3.2 0],[2736.542 1.2 0],[2757.3051 0.9 0],[3036.193 1 0],[3038.3881 0.8 0],[3429.573 1 0],[3451.3109 0.9 0]}{ALLx9900x9900x2000x0.8x0.9x5x0}{UVx7500x7500x2000x0.8x0.9x5x0}{VISx1000x1000x1000x0.3x0x0x0}{IVx9900x9900x15x0x0x0x0}%,[4022.8539 0.3 0],[4163.3801 0.2 0]
\pgfspectra@elt@search{#1}{Xe}{[65.78 8 2],[66.01 8 2],[67.38 9 2],[67.4 9 2],[67.66 9 2],[69.4 10 2],[69.85 20 2],[70.51 12 2],[72.12 10 2],[73.1 15 2],[73.33 10 2],[74.041 350 1],[74.26 15 2],[75.6 10 2],[76.15 10 2],[76.91 10 2],[77.91 25 2],[79.29 15 2],[79.61 12 2],[80.2 15 2],[80.307 350 1],[82.32 25 2],[82.49 30 2],[85.3 25 2],[88.08 600 1],[88.554 350 1],[88.93 15 2],[89.4 20 2],[89.6 20 2],[92.587 600 1],[93.54 250 1],[96.55 10 2],[97.277 800 1],[97.668 700 1],[100.34 35 2],[101.77 35 2],[103.244 500 1],[103.768 700 1],[104.131 1100 1],[104.78 10 2],[104.827 1000 1],[105.192 1200 1],[106.64 12 2],[107.448 2000 1],[108.386 600 1],[110.043 1200 1],[113.03 30 2],[115.847 600 1],[116.963 250 1],[118.305 800 1],[119.204 250 0],[123.21 25 2],[124.476 600 1],[125.02 250 0],[129.559 1000 0],[146.961 600 0],[266.898 80 2],[271.733 100 2],[281.445 30 2],[281.591 40 2],[282.745 30 2],[284.765 40 2],[286.24 30 2],[286.473 200 1],[287.11 80 2],[287.124 60 2],[287.17 30 2],[289.522 150 1],[289.662 30 2],[290.66 50 2],[291.189 40 2],[291.236 80 2],[294.02 40 2],[294.52 60 2],[294.75 40 2],[294.81 40 2],[297.047 80 2],[297.932 400 1],[299.287 40 2],[300.425 30 2],[301.743 100 1],[302.381 100 2],[308.35 40 2],[309.11 50 2],[310.646 30 2],[312.887 300 1],[313.83 100 2],[315.082 80 2],[318.52 40 2],[324.286 100 2],[326.898 80 2],[328.782 30 2],[330.155 80 2],[333.16 40 2],[335.8 30 2],[336.672 200 1],[338.412 80 2],[340.007 2 0],[341.837 2 0],[342 2 0],[344.266 3 0],[344.42 60 2],[345.42 70 2],[345.87 100 2],[346.126 100 1],[346.822 40 2],[346.981 4 0],[347.236 4 0],[350.674 5 0],[352.283 80 2],[354.23 50 2],[354.986 10 0],[355.21 50 2],[355.404 10 0],[356.14 40 2],[357.97 100 2],[358.36 80 2],[359.54 100 2],[360.606 100 2],[360.7 40 2],[361.032 15 0],[361.306 8 0],[361.59 100 2],[362.31 40 2],[362.408 600 2],[363.306 6 0],[366.991 10 0],[367.667 50 2],[368.59 40 0],[369.349 40 0],[377.63 40 2],[378.102 300 2],[384.15 100 2],[387.78 200 2],[388.05 60 2],[390.791 100 1],[392.255 500 2],[395.059 300 2],[403.759 100 1],[405.007 200 2],[405.746 200 1],[406.04 60 2],[409.889 100 1],[410.91 100 2],[414.57 100 2],[415.804 200 1],[418.01 1000 1],[419.315 500 1],[420.848 300 1],[420.947 100 1],[421.372 300 1],[421.56 100 1],[422.3 300 1],[423.825 400 1],[424.538 500 1],[425.157 100 1],[428.59 30 2],[429.64 500 1],[431.051 500 1],[433.052 1000 1],[436.92 200 1],[437.378 100 1],[439.32 500 1],[439.577 500 1],[440.688 200 1],[441.607 150 1],[443.42 50 2],[444.813 500 1],[446.21 100 2],[446.219 1000 1],[448.086 500 1],[452.186 100 1],[456.91 100 2],[457.01 100 2],[464.14 100 2],[467.37 30 2],[468.357 60 2],[472.36 30 2],[473.4152 600 0],[475.73 100 2],[479.2619 150 0],[480.702 500 0],[482.971 400 0],[484.329 300 0],[486.95 40 2],[491.651 500 0],[492.3152 500 0],[497.171 200 1],[497.271 400 1],[498.877 300 1],[499.117 100 1],[502.828 200 0],[504.492 200 1],[508.062 1000 1],[512.242 300 1],[512.57 100 1],[517.882 100 1],[518.804 300 1],[519.137 400 1],[519.21 100 1],[523.9 60 2],[526.044 500 1],[526.195 500 1],[529.222 2000 1],[530.927 300 1],[531.387 1000 1],[533.933 2000 1],[536.32 200 1],[536.71 30 2],[536.807 200 1],[537.239 500 1],[539.28 100 0],[540.1 50 2],[541.915 3000 1],[543.896 800 1],[544.545 300 1],[545.045 200 1],[546.039 400 1],[547.261 1000 1],[549.486 100 1],[552.44 40 2],[552.553 200 1],[553.107 600 1],[556.662 100 0],[561.667 300 1],[565.938 300 1],[566.756 600 1],[567.091 150 1],[569.575 100 0],[569.961 200 1],[571.61 200 1],[572.691 500 1],[575.103 500 1],[575.865 300 1],[577.639 300 1],[581.596 100 1],[582.389 300 0],[582.48 150 0],[587.502 100 0],[589.329 300 1],[589.499 100 0],[590.513 200 1],[593.417 100 0],[594.553 500 1],[597.113 300 1],[597.646 2000 1],[600.892 200 1],[603.62 1000 1],[605.115 2000 1],[609.35 600 1],[609.759 1500 1],[610.143 400 1],[611.508 100 1],[614.645 100 1],[617.83 150 0],[617.966 120 0],[618.242 300 0],[619.407 500 1],[619.826 100 0],[620.597 60 2],[622.002 100 1],[622.17 25 2],[623.82 60 2],[625.905 60 2],[627.082 500 1],[627.754 400 1],[628.441 100 1],[628.601 100 0],[630.086 250 1],[631.806 500 0],[634.396 400 1],[635.635 600 1],[637.528 200 1],[639.799 100 1],[646.97 300 0],[647.284 150 0],[648.776 120 0],[649.872 100 0],[650.418 200 0],[651.283 300 1],[652.865 200 1],[653.316 100 0],[659.501 1000 1],[659.556 100 0],[659.725 400 1],[659.884 100 1],[666.892 150 0],[669.432 300 1],[672.801 200 0],[678.871 150 1],[679.037 100 1],[680.574 1000 1],[682.732 200 0],[687.211 100 0],[688.216 300 0],[691.022 80 1],[692.553 100 0],[694.211 800 1],[697.618 100 0],[699.088 2000 1],[708.215 150 1],[711.96 500 0],[714.75 50 1],[714.903 200 1],[716.483 500 1],[728.434 100 1],[730.18 200 1],[733.93 200 1],[738.6 100 0],[739.379 150 0],[754.845 300 1],[758.468 200 0],[761.857 80 1],[764.202 500 0],[764.391 100 0],[767.066 200 1],[778.704 60 1],[780.265 100 0],[788.132 100 0],[788.74 300 0],[796.734 500 0],[802.967 100 0],[805.726 200 0],[806.134 150 0],[810.198 100 0],[815.18 150 1],[817.102 100 0],[820.634 700 0],[823.1635 10000 0],[826.652 500 0],[828.0116 7000 0],[834.682 2000 0],[834.724 100 1],[840.919 2000 0],[851.519 50 1],[857.601 200 0],[860.423 50 1],[864.854 250 0],[869.22 100 0],[869.686 200 0],[871.619 50 1],[873.939 300 0],[875.82 100 0],[881.941 5000 0],[886.232 300 0],[890.873 200 0],[893.083 200 0],[895.225 1000 0],[898.105 100 0],[898.757 200 0],[904.545 400 0],[916.265 500 0],[916.752 100 0],[937.476 100 0],[951.338 200 0],[959.135 50 1],[968.532 150 0],[969.868 50 1],[971.816 100 0],[979.97 2000 0],[992.319 3000 0],[1083.837 100 0],[1174.201 90 0],[1223.524 375 0],[1225.776 100 0],[1259.02 300 0],[1262.3391 2500 0],[1354.415 250 0],[1365.7055 2000 0],[1414.2444 1250 0],[1424.096 800 0],[1436.499 375 0],[1466.081 140 0],[1473.2806 3000 0],[1509.972 100 0],[1541.8394 2500 0],[1555.713 150 0],[1597.954 250 0],[1603.99 100 0],[1605.328 1000 0],[1655.449 125 0],[1672.815 1500 0],[1732.577 1500 0],[1878.8131 350 0],[2018.7189 150 0],[2026.2242 3000 0],[2147.009 250 0],[2319.333 1250 0],[2327.9539 110 0],[2482.4711 1800 0],[2514.584 175 0],[2626.908 2000 0],[2651.0859 2500 0],[2838.1539 250 0],[2858.225 750 0],[2938.441 300 0],[2944.8061 150 0],[2964.958 100 0],[2981.3619 100 0],[3025.3141 600 0],[3047.5461 1500 0],[3050.4119 100 0],[3079.418 500 0],[3106.923 6000 0],[3133.601 125 0],[3160.791 550 0],[3229.308 100 0],[3273.926 1800 0],[3366.6691 3500 0],[3401.4672 150 0],[3433.527 450 0],[3474.4 170 0],[3507.025 5000 0],[3524.6922 110 0],[3620.9211 250 0],[3623.1738 150 0],[3650.8359 450 0],[3678.8828 850 0],[3868.598 140 0],[3873.782 175 0],[3893.9602 270 0],[3995.5141 120 0]}{ALLx10000x10000x3000x600x0x0x0}{UVx2000x1000x2000x600x0x0x0}{VISx3000x600x3000x500x0x0x0}{IVx10000x10000x150x0x0x0x0}%
\pgfspectra@elt@search{#1}{Cs}{[55.691 15 2],[58.415 50 2],[58.44 10 2],[59.1044 5 1],[60.301 240 2],[60.7291 1 1],[60.785 120 2],[60.794 160 2],[61.2786 0.8 1],[61.401 2000 2],[62.115 300 2],[63.586 120 2],[63.767 60 2],[63.817 400 2],[63.9356 40 1],[65.7112 2 1],[65.794 5 2],[66.382 90 2],[66.46 90 2],[66.625 500 2],[66.8386 10 1],[67.306 360 2],[67.96 80 2],[68.755 160 2],[69.16 1000 2],[69.943 160 2],[70.34 30 3],[70.389 700 2],[71.025 200 2],[71.8138 300 1],[72.179 4000 2],[72.22 4000 2],[73.156 1000 2],[73.195 60 2],[73.666 200 2],[74.029 2400 2],[74.223 30 2],[74.994 200 2],[75.038 300 2],[75.518 300 2],[75.882 240 2],[75.99 1.2 2],[77.361 1.4 3],[78.773 60 2],[80.195 15 2],[80.8761 300 1],[81.3837 300 1],[81.402 40 2],[81.735 3 2],[82.034 160 2],[82.364 0.8 3],[82.48 30 3],[82.599 40 2],[83.039 1500 2],[83.739 20 2],[84.337 0.8 2],[84.792 50 2],[86.183 3 3],[87.484 40 3],[89.692 30 3],[90.127 700 1],[92.035 3000 2],[92.166 100 2],[92.302 20 3],[92.6657 800 1],[93.267 5 2],[98.614 40 3],[99.514 10 3],[105.479 5000 2],[106.891 30 3],[117.865 26 1],[119.155 16 1],[202.505 5 1],[203.515 12 1],[207.743 16 1],[208.005 16 1],[208.871 16 1],[209.197 16 1],[209.95 3 1],[211.265 5 1],[214.675 20 1],[217.96 26 1],[218.214 5 1],[218.947 26 1],[221.315 5 1],[222.051 20 1],[222.888 26 1],[225.458 50 1],[225.782 40 1],[225.835 5 1],[226.761 70 1],[227.383 70 1],[228.668 5 1],[230.771 5 1],[231.568 8 1],[232.107 26 1],[234.313 16 1],[235.444 26 1],[235.785 5 1],[236.481 26 1],[239.286 50 1],[241.489 16 1],[243.271 5 1],[244.324 5 1],[247.607 26 1],[248.041 8 1],[251.572 26 1],[252.366 3 1],[253.908 26 1],[253.917 5 1],[255.065 12 1],[255.117 26 1],[256.817 26 1],[256.869 50 1],[257.303 200 1],[257.454 26 1],[257.674 26 1],[259.009 26 1],[260.944 50 1],[261.627 26 1],[262.795 5 1],[263.714 16 1],[264.469 5 1],[264.807 26 1],[265.171 40 1],[266.024 5 1],[266.979 26 1],[267.117 3 1],[267.324 8 1],[268.66 26 1],[268.941 5 1],[270.119 3 1],[272.421 26 1],[273.007 5 1],[273.388 5 1],[274.823 50 1],[274.984 16 1],[275.781 12 1],[276.197 16 1],[276.61 5 1],[277.699 50 1],[278.824 26 1],[278.98 26 1],[279.332 5 1],[279.45 26 1],[279.941 26 1],[281.694 100 1],[282.027 5 1],[282.904 5 1],[282.942 5 1],[284.619 26 1],[285.242 16 1],[286.637 16 1],[288.119 50 1],[288.374 5 1],[289.975 16 1],[291.465 16 1],[293.109 100 1],[294.095 100 1],[294.225 16 1],[294.98 6 1],[296.838 4 1],[297.085 5 1],[300.127 20 1],[301.204 16 1],[302.037 3 1],[306.098 3 1],[306.66 20 1],[308.087 5 1],[309.231 20 1],[318.094 16 1],[326.592 160 1],[326.713 160 1],[327.163 100 1],[332.943 20 1],[336.856 160 1],[355.98 20 1],[356.511 20 1],[365.107 3 1],[368.01 3 1],[368.764 3 1],[369.948 20 1],[373.254 3 1],[373.434 20 1],[375.14 3 1],[378.542 70 1],[380.51 100 1],[387.016 3 1],[387.6143 30 0],[388.8608 16 0],[389.698 200 1],[390.693 70 1],[392.558 100 1],[395.95 70 1],[396.519 100 1],[397.8 30 1],[404.718 70 1],[405.396 40 1],[406.796 100 1],[406.877 100 1],[407.336 14 1],[411.929 12 1],[412.121 100 1],[413.2 20 1],[415.127 70 1],[415.861 70 1],[419.32 12 1],[421.313 100 1],[422.112 40 1],[423.219 100 1],[423.441 70 1],[424.197 20 1],[427.174 20 1],[427.71 400 1],[428.835 200 1],[429.2 40 1],[430.064 100 1],[430.794 10 1],[432.758 10 1],[433.024 70 1],[436.328 400 1],[437.302 100 1],[438.443 80 1],[438.876 20 1],[439.691 40 1],[439.95 70 1],[440.385 70 1],[440.525 200 1],[441.021 70 1],[442.405 20 1],[443.571 70 1],[444.4 20 1],[445.344 40 1],[445.768 40 1],[445.918 40 1],[449.366 20 1],[450.152 200 1],[450.671 40 1],[450.683 20 1],[451.55 20 1],[452.285 30 1],[452.672 200 1],[453.894 160 1],[455.5276 80 0],[456.698 30 1],[457.179 30 1],[459.3169 40 0],[460.376 500 1],[460.999 20 1],[461.613 30 1],[462.309 70 1],[464.651 100 1],[465.654 30 1],[467.028 70 1],[469.561 20 1],[470.179 100 1],[473.298 70 1],[473.966 70 1],[474.913 20 1],[476.362 100 1],[478.636 40 1],[483.016 160 1],[487.002 160 1],[495.284 160 1],[497.259 100 1],[504.38 160 1],[505.27 100 1],[505.987 100 1],[508.177 20 1],[509.66 80 1],[522.7 300 1],[524.937 160 1],[527.404 80 1],[530.661 70 1],[534.916 70 1],[537.097 160 1],[541.969 100 1],[546.5944 1 0],[550.2884 1 0],[556.302 200 1],[563.5212 2.2 0],[566.4018 6 0],[574.5724 1.6 0],[581.418 70 1],[583.116 100 1],[583.8835 1 0],[584.5141 6 0],[592.565 100 1],[601.049 16 0],[603.4089 6 0],[612.862 80 1],[621.31 24 0],[621.7599 3 0],[635.4555 10 0],[641.954 20 1],[643.1969 3 0],[647.2623 3 0],[649.553 40 1],[653.644 40 1],[658.602 6 0],[658.651 40 0],[662.866 7 0],[672.3284 40 0],[682.4652 20 0],[687.0455 20 0],[695.552 80 1],[697.3297 40 0],[698.3491 7 0],[722.8536 40 0],[727.99 12 0],[727.9957 40 0],[760.8903 30 0],[794.3882 60 0],[799.068 12 0],[801.5724 20 0],[805.335 12 0],[807.892 12 0],[807.9033 70 0],[852.1122 200 0],[876.1415 40 0],[894.346 120 0],[917.2322 70 0],[920.8538 20 0],[1002.4359 70 0],[1012.3414 20 0],[1012.3602 80 0],[1358.831 28 0],[1360.257 3 0],[1375.883 3 0],[1469.493 70 0],[1792.3619 2.4 0],[1792.4211 1.8 0],[1916.2529 5 0],[1916.3199 4 0],[2131.1461 10 0],[2131.2289 9 0],[2576.349 20 0],[2576.4699 18 0],[3942.1219 40 0],[3942.4078 36 0]}{ALLx5000x200x800x5000x40x0x0}{UVx5000x0x800x5000x40x0x0}{VISx500x80x500x0x0x0x0}{IVx200x200x0x0x0x0x0}%
\pgfspectra@elt@search{#1}{Ba}{[40.382 1 2],[40.712 0.4 2],[42.012 1.4 2],[42.384 0.8 2],[44.895 1.8 2],[45.696 1.6 2],[55.548 2.8 2],[58.757 2.8 2],[64.727 3.6 2],[65.336 1.8 2],[74.312 3 2],[79.489 8000 3],[92.374 10000 3],[109.741 2.4 2],[111.367 3 2],[111.601 2.2 2],[113.305 2.8 2],[115.176 2.4 2],[117.062 2.4 2],[120.729 2.6 2],[121.892 2.2 2],[122.455 2.4 2],[128.853 2.4 2],[129.918 2.2 2],[130.74 2.2 2],[130.887 2.4 2],[131.572 2.4 2],[133.401 2.4 2],[135.471 2.2 2],[136.953 2.2 2],[141.661 2.2 2],[147.885 2.4 2],[148.672 40 1],[150.401 80 1],[151.068 2.4 2],[151.422 2.4 2],[155.438 60 1],[156.561 2.4 2],[156.612 2.4 2],[157.273 40 1],[157.455 2.4 2],[159.68 2.4 2],[161.095 2.4 2],[161.578 2.4 2],[167.451 20 1],[169.437 80 1],[171.153 2.4 2],[186.174 2.4 2],[188.392 2.4 2],[190.415 20 1],[192.47 100 1],[197.476 2.2 2],[199.954 60 1],[200.13 2 2],[200.84 3 2],[202.245 2.6 2],[202.395 80 1],[203.884 2 2],[207.043 2.4 2],[207.168 2.4 2],[207.6 2 2],[208.135 2.4 2],[213.487 2 2],[215.637 3.2 2],[216.076 2 2],[221.47 100 1],[223.033 4 2],[224.561 160 1],[225.473 200 1],[228.068 6 2],[230.424 280 1],[232.351 7 2],[233.11 12 2],[233.527 400 1],[234.758 38 1],[247.673 5 2],[250.507 5 2],[251.228 8 2],[252.383 8 2],[252.851 12 1],[253.092 5 2],[255.954 10 2],[257.048 5 2],[259.664 1.6 0],[263.478 20 1],[268.189 8 2],[270.263 1.6 0],[274.578 6 2],[277.136 3.6 1],[278.528 3 0],[293.895 5 2],[296.005 5 2],[296.248 6 2],[301.422 4 2],[304.342 6 2],[307.158 20 0],[307.914 8 2],[310.392 6 2],[310.821 2 0],[311.922 6 2],[313.26 1.6 0],[313.572 1.6 0],[313.77 2 0],[315.27 6 2],[315.534 2 0],[315.567 2 0],[315.805 2.4 0],[315.854 2.4 0],[316.56 5 0],[317.369 3 0],[318.316 6 0],[318.396 3 0],[319.391 2 0],[319.517 5 2],[320.37 5 0],[322.163 6 0],[322.219 8 0],[323.504 5 2],[326.196 10 0],[326.234 12 0],[328.15 8 0],[328.165 5 2],[328.177 3 0],[328.679 4 2],[332.28 10 0],[335.68 16 0],[336.818 10 2],[336.968 6 2],[337.708 12 0],[337.739 4 0],[342.032 14 0],[342.101 5 0],[342.148 6 0],[346.374 8 0],[350.111 40 0],[352.497 16 0],[353.135 6 0],[354.466 16 0],[354.768 4 0],[355.245 20 1],[356.773 40 1],[357.628 20 1],[357.762 6 0],[357.967 16 0],[359.657 40 1],[363.064 8 0],[363.683 8 0],[364.918 5 2],[368.847 4 0],[373.575 80 1],[381.669 40 1],[384.28 40 1],[385.476 20 1],[388.933 4 0],[389.178 280 1],[389.265 4 0],[390.991 8 0],[391.473 100 1],[392.685 5 2],[393.572 10 0],[393.787 4 0],[393.967 40 1],[394.951 100 1],[399.306 5 2],[399.34 16 0],[399.566 6 0],[403.626 60 1],[405.371 3.6 2],[408.377 40 1],[408.486 6 0],[413.066 300 1],[413.243 4 0],[416.6 40 1],[421.604 100 1],[426.795 160 1],[428.31 20 0],[428.78 60 1],[429.76 40 1],[430.932 160 1],[432.3 4 0],[432.573 120 1],[432.674 40 1],[432.962 60 1],[435.033 16 0],[440.254 12 0],[440.523 80 1],[443.189 8 0],[448.898 12 0],[449.364 10 0],[450.592 8 0],[450.963 40 1],[452.317 12 0],[452.493 26 1],[455.403 13000 1],[457.385 8 0],[457.964 16 0],[459.975 6 0],[461.992 4 0],[462.833 5 0],[464.41 60 1],[467.362 6 0],[469.162 7 0],[469.744 3 2],[470.043 4 0],[470.894 160 1],[472.644 8 0],[484.346 160 1],[484.714 60 1],[485.084 40 1],[487.765 6 0],[489.997 80 1],[490.29 3 0],[493.409 4000 1],[494.735 1.6 0],[495.715 200 1],[499.781 60 1],[501.3 200 1],[504.955 2 2],[509.754 2 2],[510.225 2.4 2],[513.454 2 2],[515.994 4 0],[526.703 4 0],[536.135 160 1],[539.16 200 1],[542.105 40 1],[542.455 20 0],[542.879 40 1],[548.03 60 1],[551.905 40 0],[553.548 200 0],[562.04 4 0],[568.018 2 0],[577.762 80 0],[578.418 160 1],[580.023 20 0],[580.569 4 0],[582.628 30 0],[585.368 560 1],[590.764 3 0],[597.17 20 0],[598.125 160 1],[599.709 20 0],[599.8 2 2],[599.985 60 1],[601.947 20 0],[606.312 40 0],[610.199 2.6 2],[611.078 60 0],[613.583 80 1],[614.172 4000 1],[634.168 30 0],[637.711 2 2],[637.891 100 1],[638.376 2 2],[645.085 18 0],[648.291 30 0],[649.69 2400 1],[649.876 60 0],[652.617 1.6 2],[652.731 30 0],[659.533 600 0],[665.41 30 0],[667.527 300 0],[669.384 360 0],[676.962 200 1],[686.569 120 0],[686.785 60 0],[687.409 200 1],[705.994 1200 0],[709.549 1.6 2],[712.033 480 0],[719.524 120 0],[722.884 120 0],[728.03 600 0],[739.241 240 0],[741.753 60 0],[745.978 180 0],[748.808 120 0],[763.69 90 0],[764.291 120 0],[767.209 360 0],[778.048 240 0],[783.957 36 0],[790.575 300 0],[791.134 120 0],[821.024 180 0],[830.869 1.6 2],[855.997 360 0],[871.074 20 1],[873.771 20 1],[879.976 60 0],[886.098 60 0],[891.499 90 0],[921.969 60 0],[930.808 60 0],[932.458 60 0],[937.006 300 0],[945.592 60 0],[952.176 1.6 2],[958.937 90 0],[960.888 180 0],[964.572 60 0],[983.037 300 0],[1000.108 180 0],[1003.21 120 0],[1023.323 240 0],[1047.126 60 0],[1079.125 24 0],[1101.269 36 0],[1111.442 30 0],[1130.304 48 0],[1169.745 24 0],[1320.73 24 0],[1381.05 24 0],[1407.79 24 0],[1500.04 24 0],[2071.2 24 0],[2551.5699 30 0],[2922.39 30 0]}{ALLx13000x1200x13000x12x10000x0x0}{UVx10000x40x400x12x10000x0x0}{VISx13000x1200x13000x5x0x0x0}{IVx360x360x20x1.6x0x0x0}%
@@ -115,7 +115,7 @@
\pgfspectra@elt@search{#1}{Pb}{[36.74 0.2 4],[37.253 0.2 4],[38.787 0.2 4],[39.438 0.2 4],[42.464 0.5 4],[43.103 0.3 4],[43.66 0.3 4],[43.847 0.2 4],[43.891 0.6 4],[45.345 0.4 4],[46.17 0.3 4],[47.536 0.8 3],[47.835 0.7 3],[49.62 0.3 4],[49.638 1 3],[49.994 1.2 3],[51.507 0.9 3],[52.978 1.4 3],[57.016 2 3],[57.39 0.8 3],[58.452 0.8 3],[64.85 1 3],[65.61 0.9 3],[69.442 0.4 4],[69.62 0.8 4],[70.373 2 4],[70.629 0.4 4],[70.766 0.6 4],[73.085 0.5 4],[74.946 1.2 4],[75.252 1 4],[75.58 1 4],[76.109 1 3],[76.276 0.6 4],[76.587 1 4],[76.745 1.8 4],[76.949 1.8 4],[77.142 1.4 4],[78.279 1.4 4],[78.705 1 4],[79.702 1.5 4],[79.98 0.5 4],[80.207 1.8 3],[80.282 1.2 3],[80.963 1.8 4],[81.232 0.5 4],[81.259 1 3],[81.41 0.8 4],[82.009 0.8 4],[82.207 0.8 3],[82.552 0.5 4],[82.741 1 3],[82.932 0.8 4],[83.26 1.2 3],[84.099 0.8 3],[84.288 0.8 3],[84.594 1.2 3],[84.604 0.2 1],[84.988 0.2 1],[85.198 0.5 4],[85.557 0.3 1],[85.764 1.8 3],[85.902 0.8 3],[86.233 1.6 3],[86.3 0.3 1],[86.397 2 4],[86.71 1 4],[87.044 1.4 3],[87.371 0.6 1],[87.796 0.2 1],[87.996 1.2 3],[88.035 0.7 3],[88.05 0.6 4],[88.39 1.8 4],[88.496 1.4 3],[88.499 1.4 3],[88.837 1.4 4],[88.968 0.8 1],[89.072 1.6 3],[89.44 1.4 4],[89.608 1.2 4],[89.63 0.3 1],[90.851 1.2 3],[91.509 0.8 4],[91.571 1.4 4],[91.79 1.2 3],[91.809 1.2 4],[92.028 1.2 4],[92.066 1.2 4],[92.212 1 3],[92.249 1.2 3],[92.452 0.7 3],[92.644 0.5 1],[92.764 1 3],[93.22 1.4 3],[93.7 0.8 3],[94.074 0.6 4],[94.62 0.8 4],[95.093 0.6 4],[95.285 0.7 3],[95.435 1.2 4],[95.495 0.4 4],[95.528 1 4],[95.876 0.2 1],[96.021 0.2 1],[96.101 0.1 2],[96.438 0.4 4],[96.536 0.3 1],[96.723 1 1],[97.256 0.9 1],[98.217 0.8 1],[98.671 1 1],[98.914 0.6 4],[99.589 1 1],[100.181 0.6 1],[100.542 0.8 4],[101.244 0.8 3],[101.661 1 1],[102.861 1.4 3],[103.05 0.3 2],[103.205 2 3],[104.124 1.6 3],[104.414 1.8 3],[104.89 1.2 2],[104.982 1 1],[105.077 1 1],[105.126 1 4],[105.653 1.5 3],[105.926 0.4 4],[106.066 1 1],[106.558 0.9 1],[106.92 0.4 2],[107.209 1.2 3],[107.47 0.3 2],[107.988 0.7 3],[108.081 1.8 3],[108.417 2 3],[108.886 1 4],[108.994 0.6 3],[109.652 0.9 4],[109.947 0.7 3],[110.394 1 1],[110.479 0.6 4],[110.843 1 1],[110.984 1 1],[111.53 0.6 3],[111.608 2 3],[111.867 0.4 2],[111.957 1 1],[112.133 0.4 4],[112.136 1 1],[113.314 1 1],[113.75 1 4],[113.784 1.8 3],[114.277 0.8 3],[114.493 1.4 3],[114.591 0.4 1],[115.236 0.4 4],[115.788 1.2 4],[116.7 0.4 2],[118.543 1.4 4],[118.995 2 3],[120.363 1 1],[123.12 1 1],[123.35 1.1 4],[124.847 1 4],[125.06 0.4 2],[126.69 0.1 2],[126.755 0.8 3],[129.082 0.8 3],[129.11 1 3],[131.305 2 3],[132.392 0.8 3],[133.165 1 1],[133.52 1 1],[134.306 1.2 3],[134.837 1 1],[138.894 1.6 3],[139.702 0.6 3],[140.026 1.8 3],[140.434 1 3],[143.396 1 1],[144.935 0.3 1],[151.076 0.7 3],[151.242 1 1],[153.571 1.4 3],[155.31 2 2],[161.01 0.1 2],[163.575 0.8 4],[167.153 1 1],[168.215 1 1],[171.123 0.4 2],[172.675 2 1],[174 0.2 0],[176.664 0.2 0],[179.467 0.2 0],[179.667 1 1],[179.839 0.8 3],[180.287 0.2 4],[181.297 0.5 0],[182.205 1 1],[184.3 0.2 4],[186.876 0.4 0],[188.867 0.2 4],[189.319 0.8 3],[189.702 0.2 4],[190.477 1 0],[191.433 0.2 4],[191.974 0.4 4],[192.1471 0.7 1],[195.796 0.5 4],[195.934 1.2 3],[197.244 0.4 0],[197.316 1.6 3],[197.788 0.2 0],[199.16 0.2 0],[199.231 0.2 0],[199.858 0.2 4],[199.883 1 4],[202.202 0.5 0],[204.258 1 3],[204.934 1.2 3],[205.088 0.5 0],[205.328 0.8 0],[207.845 0.8 4],[207.922 1.2 3],[211.1758 0.6 0],[211.5066 1 0],[214.255 1 4],[215.196 0.8 3],[215.401 1.5 3],[216.797 1 4],[217 50 0],[217.558 0.7 0],[217.746 1.2 3],[218.7888 0.7 0],[218.9603 0.8 0],[220.3534 1 1],[223.7425 2 0],[224.686 2 0],[224.689 2.5 0],[225.901 2 4],[227.666 1 4],[230.149 0.8 4],[233.2418 15 0],[235.953 1.6 3],[238.8797 18 0],[239.3792 55 0],[239.9597 14 0],[240.194 32 0],[241.1734 32 0],[241.761 1.6 3],[242.481 1.5 4],[244.3829 15 0],[244.6181 16 0],[247.6378 13 0],[252.669 0.8 1],[257.66 0.8 1],[257.726 8 0],[260.838 0.2 1],[261.3655 50 0],[261.4175 90 0],[262.8262 16 0],[263.4256 0.4 1],[265.7094 1 0],[266.3154 70 0],[269.7541 1 0],[280.1995 2500 0],[282.258 10 0],[282.3189 1400 0],[283.3053 3500 0],[284.0557 0.6 1],[286.424 0.4 3],[286.45 0.4 3],[287.3311 1400 0],[288.73 0.3 1],[291.4442 0.3 1],[294.743 0.2 1],[294.853 0.3 1],[296.646 1.5 0],[297.2991 1.5 0],[297.814 0.4 3],[298.0157 1.5 0],[298.6876 0.4 1],[301.639 1 1],[304.385 1 2],[305.256 0.4 3],[308.908 0.4 2],[310.274 0.4 2],[311.8894 15 0],[313.781 1 2],[317.65 1 2],[322.0528 60 0],[322.117 0.4 3],[322.9613 10 0],[324.0186 40 0],[324.284 0.5 2],[326.2355 20 0],[353.017 0.1 2],[357.2729 3500 0],[358.987 0.7 2],[363.9568 5000 0],[367.1491 2000 0],[368.3462 7000 0],[368.931 0.7 2],[370.602 0.3 2],[371.3982 1 1],[372.869 0.5 2],[373.9935 2500 0],[385.408 1.2 2],[395.192 0.8 2],[396.248 0.4 3],[401.9632 1500 0],[403.116 0.3 2],[404.98 0.4 3],[405.7807 9500 0],[406.2136 1400 0],[409.454 0.3 2],[411.076 0.5 1],[411.335 0.4 1],[412.811 0.2 2],[415.282 1 1],[415.7814 1 0],[416.8033 1000 0],[424.214 0.9 1],[424.492 2 1],[427.266 0.8 2],[429.382 0.7 1],[429.665 0.6 1],[434.0413 20 0],[435.274 1 1],[438.646 2 1],[449.615 1 3],[449.934 0.6 2],[453.46 1.6 3],[457.121 0.7 2],[457.9051 1 1],[458.227 1 1],[459.645 0.1 2],[460.54 0.8 3],[476.112 0.6 2],[479.859 0.4 2],[480.936 0.4 4],[482.686 0.1 2],[485.506 0.2 2],[500.5416 100 0],[500.6572 10 0],[504.258 5 1],[506.512 0.3 2],[507.058 1 1],[507.453 1 1],[507.635 1 0],[508.9484 5 0],[509.001 2 0],[510.7242 1 0],[511.164 1 1],[519.156 0.4 2],[520.1437 200 0],[536.764 1 1],[537.2099 1 1],[552.397 0.5 2],[554.425 1 1],[560.885 2 1],[569.2346 4 0],[577.941 0.3 2],[585.796 0.6 2],[589.5624 20 0],[591.454 0.2 3],[600.1862 200 0],[600.958 0.9 1],[601.1667 50 0],[604.117 0.8 1],[605.9356 50 0],[607.574 4 1],[608.1409 4 1],[611.052 5 0],[615.989 1 1],[623.5266 10 0],[665.099 0.5 4],[666.02 5 1],[675.32 0.4 4],[689.211 1 0],[712.894 0.5 0],[719.36 2 1],[722.8965 2000 0],[730.468 0.5 0],[733.015 0.8 0],[734.6676 1 0],[755.897 1 1],[763.256 1 1],[773.296 0.4 1],[780.9259 2 0],[781.797 0.5 0],[782.901 0.6 0],[789.6737 0.5 0],[815.691 0.2 1],[816.8001 1 0],[819.1886 0.6 0],[821.7711 0.5 0],[825.561 0.8 0],[827.269 4 0],[833.554 0.6 1],[839.568 1 1],[840.9384 2 0],[847.8492 1 0],[853.217 0.8 0],[854.495 0.7 1],[870.99 0.7 1],[871.939 0.5 1],[872.281 0.5 0],[885.7457 1 0],[905.082 1 1],[906.343 1 1],[924.528 0.2 1],[929.3476 0.8 0],[938.435 0.5 0],[938.589 0.5 0],[943.805 1.5 0],[960.4297 1.5 0],[960.873 0.6 0],[967.4351 1.5 0],[1029.0458 20 0],[1043.432 0.5 0],[1049.8965 10 0],[1064.9249 5 0],[1075.941 0.5 0],[1075.974 0.7 0],[1088.6688 1.5 0],[1096.953 4 0],[1105.922 0.6 0],[1133.308 0.3 0],[1147.949 0.2 1],[1148.876 0.2 0],[1162.791 0.5 1],[1256.137 0.1 0]}{ALLx9500x9500x5x2x2x2x0}{UVx7000x7000x2x2x2x2x0}{VISx9500x9500x5x1.2x1.6x0.5x0}{IVx20x20x1x0x0x0x0}%
\pgfspectra@elt@search{#1}{Bi}{[35.577 1 4],[36.952 1 4],[42.07 6 3],[42.978 1 4],[43.12 6 3],[43.563 1 4],[48.839 2 4],[49.272 1 4],[56.362 3 4],[59.073 1 2],[67.076 5 2],[67.887 2 4],[68.688 6 4],[70.654 1 4],[73.071 5 4],[73.817 10 4],[77.516 4 2],[79.05 6 3],[79.06 6 3],[79.25 8 3],[80.365 6 2],[82.03 10 3],[82.29 9 3],[82.49 12 3],[84.986 6 4],[85.568 5 4],[86.445 15 4],[87.26 15 3],[87.68 8 3],[88.017 6 4],[91.67 9 3],[92.093 7 2],[92.39 12 3],[92.548 6 2],[92.981 6 4],[94.33 15 3],[96.76 9 3],[96.88 8 3],[98.98 8 3],[103.999 25 2],[104.576 50 2],[105.181 30 2],[105.888 15 1],[108.547 20 1],[109.92 10 1],[110.34 24 3],[112.88 7 3],[113.86 6 3],[113.901 20 2],[113.946 15 4],[113.98 6 3],[114.591 15 2],[114.97 7 3],[116.319 8 1],[116.706 8 1],[122.464 50 2],[122.543 10 1],[123.278 15 1],[124.105 10 1],[126.535 10 1],[128.373 15 1],[130.618 10 1],[131.7 60 3],[132.546 20 1],[132.684 40 2],[132.947 20 1],[134.612 60 2],[135.007 20 1],[137.261 25 1],[137.602 15 1],[139.392 20 1],[142.333 35 2],[142.352 35 2],[143.683 45 1],[144.794 25 1],[145.511 50 1],[146.1 60 2],[146.214 25 1],[148.693 35 1],[150.25 20 1],[152.057 40 1],[153.317 40 1],[153.677 30 1],[153.806 35 1],[156.367 20 1],[157.37 40 1],[159.179 60 1],[160.158 25 1],[160.64 60 2],[160.97 40 1],[161.138 40 1],[165.281 20 1],[169.15 20 2],[174.929 20 1],[177.711 80 1],[178.747 60 1],[179.193 70 1],[182.38 70 1],[183.432 20 2],[186.39 10 2],[190.241 100 1],[191 30 3],[191.212 10 2],[195.453 9000 0],[196.013 7000 0],[198.826 10 2],[198.935 25 1],[202.075 20 2],[202.115 20 2],[202.121 7000 0],[206.17 9000 0],[206.89 45 1],[207.322 10 2],[207.337 14 2],[209.3 30 3],[210.342 15 2],[211.026 4600 0],[213.363 2500 0],[214.34 15 1],[214.346 15 1],[218.69 60 1],[221.355 30 2],[221.4 40 1],[222.825 360 0],[223.061 1700 0],[227.658 340 0],[231.1 100 3],[232.6 100 3],[236.812 16 1],[236.825 12 1],[237.6 100 3],[240.088 190 0],[241.46 75 2],[243.76 10 2],[250.1 10 1],[251.569 25 0],[252.449 70 0],[254.45 20 1],[262.791 700 0],[262.9 100 3],[267.7 100 3],[269.3 12 1],[269.676 280 0],[271.33 20 1],[273.05 140 0],[276.7 100 3],[277.2 100 3],[278.052 360 0],[278.6 100 3],[280.342 15 1],[280.37 11 1],[280.53 12 1],[280.962 140 0],[284.2 100 3],[284.74 30 2],[285.56 80 2],[289.798 4000 0],[292.4 100 3],[293.3 100 3],[293.6 100 3],[293.67 15 1],[293.83 3200 0],[295.04 20 1],[296.34 12 1],[298.903 2800 0],[299.334 700 0],[301.2 100 3],[302.464 2400 0],[303.487 60 0],[304.2 100 3],[306.772 9000 0],[307.666 140 0],[311.5 35 2],[323.9 100 3],[339.721 550 0],[343.083 10 1],[343.123 12 1],[345.1 40 2],[347.38 40 2],[348.55 35 2],[351.085 500 0],[354.08 15 2],[359.611 380 0],[361.34 45 2],[364.3 100 3],[365.42 12 1],[368.2 100 3],[369.532 50 2],[369.568 50 2],[373.4 100 3],[379.25 70 1],[381.11 12 1],[381.58 20 1],[384.58 10 1],[386.39 30 1],[386.8 100 3],[407.91 40 1],[409.72 10 1],[412.153 140 0],[412.186 140 0],[422.46 12 2],[425.94 75 1],[427.2 25 1],[430.17 70 1],[432.78 25 2],[433.98 12 1],[434.05 25 1],[434.2 30 3],[437.94 12 1],[447.68 25 1],[456.084 30 2],[456.154 30 2],[470.53 60 1],[472.252 600 0],[473.03 30 1],[474.97 20 1],[479.74 40 2],[490.82 12 1],[491.66 10 1],[496.97 12 1],[499.36 20 1],[507.93 45 2],[509.16 10 1],[512.43 50 1],[514.43 60 1],[520.15 20 1],[520.92 75 1],[527.03 40 1],[534.7 30 3],[539.78 10 1],[555.235 10 0],[559.941 3 0],[565.52 20 1],[571.92 40 1],[574.255 6 0],[581.83 12 1],[586.02 20 1],[597.3 20 1],[605.91 15 1],[612.8 15 1],[613.482 6 0],[647.573 3 0],[647.624 3 0],[649.77 15 1],[657.72 10 1],[660.02 40 1],[662.34 12 2],[680.86 50 1],[699.112 4 0],[703.3 12 1],[703.615 2 0],[738.1 10 1],[738.1 10 2],[750.233 2 0],[755.1 12 2],[759.8 25 2],[763.7 10 1],[763.7 10 2],[775 10 1],[783.87 3 0],[784.033 2 0],[796.5 20 1],[800.8 40 2],[805 12 1],[807 50 2],[810 20 2],[832.8 15 1],[838.8 15 1],[853.2 30 1],[854.454 2 0],[857.974 1 0],[865.3 25 1],[867.1 15 2],[875.488 2 0],[876.154 3 0],[886.3 25 1],[890.781 2 0],[893.4 20 2],[965.704 2000 0],[982.778 40 0],[1010.45 20 0],[1013.88 15 0],[1030.06 20 0],[1053.619 20 0],[1107.244 50 0],[1155.16 15 0],[1171.037 1500 0],[1199.949 40 0],[1216.508 200 0],[1237.464 10 0],[1269.004 200 0],[1281.78 100 0],[1433.05 200 0],[1600.15 50 0],[2255.16 60 0]}{ALLx9000x9000x100x80x100x15x0}{UVx9000x9000x100x80x100x15x0}{VISx600x600x75x45x100x0x0}{IVx2000x2000x30x50x0x0x0}%
\pgfspectra@elt@search{#1}{Po}{[213.902 250 0],[220.38 300 -1],[222.067 300 0],[222.213 200 0],[228.422 200 -1],[234.461 250 0],[242.172 250 0],[242.609 300 0],[245.008 1500 0],[248.394 700 0],[249.053 700 0],[250.218 200 -1],[253.495 300 0],[255.733 300 0],[255.801 1500 0],[256.231 400 -1],[257.88 300 -1],[258.764 400 0],[263.701 200 -1],[264.536 300 0],[266.333 700 -1],[267.167 200 0],[276.192 600 0],[280.026 400 0],[282.411 250 0],[286.601 300 0],[291.931 400 0],[295.892 600 0],[300.321 2500 0],[306.931 450 0],[311.595 200 -1],[318.902 400 0],[324.024 600 0],[328.638 250 0],[332.86 600 0],[348.979 300 -1],[349.365 200 -1],[358.833 400 -1],[367.136 200 -1],[386.193 500 0],[405.198 200 -1],[417.052 1200 0],[423.613 250 -1],[441.558 200 -1],[449.321 800 0],[461.144 350 0],[486.712 200 -1],[487.624 400 0],[494.681 450 -1],[532.323 350 0],[574.485 300 0],[796.262 600 0],[843.387 300 0],[861.826 500 0],[922.787 250 -1]}{ALLx2500x2500x0x0x0x0x700}{UVx2500x2500x0x0x0x0x700}{VISx1200x1200x0x0x0x0x450}{IVx600x600x0x0x0x0x250}%
-\pgfspectra@elt@search{#1}{At}{[216.225 8 0],[224.401 10 0]}{ALLx10x10x0x0x0x0x0x0}{UVx10x10x0x0x0x0x0x0}{VISx0x0x0x0x0x0x0}{IVx0x0x0x0x0x0x0}
+\pgfspectra@elt@search{#1}{At}{[216.225 8 0],[224.401 10 0]}{ALLx10x10x0x0x0x0x0x0}{UVx10x10x0x0x0x0x0x0}{VISx0x0x0x0x0x0x0}{IVx0x0x0x0x0x0x0}%
\pgfspectra@elt@search{#1}{Rn}{[351.46 5 0],[373.989 10 0],[375.365 20 0],[391.72 10 0],[394.172 10 0],[395.236 10 0],[422.606 10 0],[430.776 80 0],[433.578 7 0],[434.96 100 0],[443.505 40 0],[445.925 50 0],[450.848 50 0],[457.772 50 0],[460.938 50 0],[472.176 30 0],[572.258 6 0],[606.192 10 0],[620.075 6 0],[638.045 6 0],[655.749 10 0],[660.643 10 0],[662.723 15 0],[666.96 6 0],[670.428 8 0],[675.181 20 0],[680.679 6 0],[683.695 8 0],[683.757 8 0],[689.116 10 0],[699.89 10 0],[705.542 200 0],[726.811 100 0],[729.1 20 0],[732.098 6 0],[741.904 10 0],[745 300 0],[747.089 8 0],[748.313 8 0],[751.413 8 0],[751.692 8 0],[752.393 6 0],[759.755 6 0],[760.128 8 0],[765.748 10 0],[773.843 10 0],[774.664 20 0],[780.982 100 0],[804.9 20 0],[809.951 100 0],[817.384 6 0],[827.096 100 0],[831.451 8 0],[834.974 6 0],[838.105 10 0],[848.748 10 0],[849.489 10 0],[852.095 20 0],[860.007 100 0],[863.976 10 0],[867.583 15 0],[880.775 10 0],[932.702 50 0],[994.857 6 0],[1010.613 5 0]}{ALLx300x300x0x0x0x0x0}{UVx20x20x0x0x0x0x0}{VISx300x300x0x0x0x0x0}{IVx100x100x0x0x0x0x0}%
\pgfspectra@elt@search{#1}{Ra}{[236.973 8 1],[246.055 8 1],[247.55 10 1],[258.661 8 1],[264.373 10 1],[270.896 20 1],[279.521 10 1],[281.376 30 1],[303.344 10 1],[310.18 5 0],[364.955 100 1],[381.442 200 1],[419.409 8 1],[424.472 8 1],[434.064 100 1],[443.627 20 1],[453.311 30 1],[464.129 8 0],[468.228 100 1],[469.928 8 0],[482.591 100 0],[485.607 10 0],[485.941 10 1],[492.753 10 1],[509.756 10 0],[520.593 10 0],[528.328 10 0],[532.029 10 0],[539.98 10 0],[540.023 20 0],[540.681 20 0],[548.213 8 0],[550.198 10 0],[555.357 10 0],[555.585 20 0],[561.666 10 0],[566.081 50 0],[581.363 20 1],[620.03 30 0],[633.69 10 0],[644.62 20 0],[648.732 20 0],[659.334 10 1],[671.932 10 1],[698.022 20 0],[711.85 20 0],[714.121 50 0],[722.516 20 0],[731.027 10 0],[783.812 20 0],[801.97 50 1],[817.731 6 0],[833.507 5 0],[993.221 5 0]}{ALLx200x100x200x0x0x0x0}{UVx100x5x100x0x0x0x0}{VISx200x100x200x0x0x0x0}{IVx50x20x50x0x0x0x0}%
\pgfspectra@elt@search{#1}{Ac}{[206.2 20 3],[210 8 1],[250.212 30 3],[255.808 100 3],[262.644 1000 2],[268.29 50 2],[271.25 20 1],[272.623 10 1],[276.018 10 1],[278.156 10 1],[279.083 5 3],[279.39 50 3],[279.759 20 1],[280.676 20 1],[283.347 8 1],[284.716 150 1],[289.52 8 1],[289.682 30 1],[292.302 30 1],[295.255 2000 2],[299.417 200 1],[304.33 500 1],[306.936 200 1],[307.807 100 1],[308.604 100 1],[308.737 100 1],[311.283 200 1],[312.016 100 1],[315.309 500 1],[315.441 600 1],[316.481 200 1],[322.47 20 3],[323.059 300 1],[323.77 150 1],[326.091 500 1],[331.801 100 1],[338.353 200 1],[339.278 2000 2],[341.384 200 1],[341.777 500 1],[348.116 500 1],[348.759 3000 2],[348.953 200 1],[352.924 100 1],[353.463 100 1],[355.499 200 1],[356.559 1000 1],[369.488 100 1],[375.667 300 1],[379.982 200 1],[386.312 2000 1],[391.447 100 1],[406.16 400 1],[408.844 3000 1],[416.84 3000 1],[417.998 100 0],[418.312 20 0],[419.44 20 0],[420.969 300 1],[435.913 300 1],[438.453 20 0],[438.641 1000 1],[439.671 20 0],[441.309 2000 2],[446.273 20 0],[450.72 1000 1],[456.987 3000 2],[460.545 500 1],[471.658 10 0],[472.016 400 1],[481.222 300 1],[494.518 100 1],[495.823 100 1],[496.087 100 1],[519.321 8 2],[544.638 150 1],[573.205 300 1],[575.897 400 1],[591.085 1000 1],[616.475 600 1],[616.783 200 1],[624.283 400 1],[635.986 20 0],[669.127 20 0],[729.04 6 0],[786.61 6 0]}{ALLx3000x100x3000x3000x100x0x0}{UVx3000x0x1000x3000x100x0x0}{VISx3000x100x3000x3000x0x0x0}{IVx6x6x0x0x0x0x0}%
diff --git a/Master/texmf-dist/tex/latex/pgf-spectra/pgf-spectra.sty b/Master/texmf-dist/tex/latex/pgf-spectra/pgf-spectra.sty
index 308c9bcc780..2135d346677 100644
--- a/Master/texmf-dist/tex/latex/pgf-spectra/pgf-spectra.sty
+++ b/Master/texmf-dist/tex/latex/pgf-spectra/pgf-spectra.sty
@@ -7,9 +7,10 @@
% Hugo Gomes @ 21/02/2023 (v2.2.0)
% Hugo Gomes @ 25/04/2023 (v3.0.0)
% Hugo Gomes @ 27/04/2023 (v3.0.1)
+% Hugo Gomes @ 07/07/2024 (v3.0.1a)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\NeedsTeXFormat{LaTeX2e}%
-\ProvidesPackage{pgf-spectra}[27/04/2023 pgf-spectra v3.0.1]%
+\ProvidesPackage{pgf-spectra}[07/07/2024 pgf-spectra v3.0.1a]%
\RequirePackage{tikz}%
\DeclareOption{LSE}{\input{pgf-spectra.data.LSE.tex}\xdef\pgfspectra@DATASET{1}}%
\DeclareOption{NIST}{\input{pgf-spectra.data.NIST.tex}\xdef\pgfspectra@DATASET{0}}%
@@ -640,15 +641,15 @@ precision=1,unit={}% NEW v3.0.0 (for data library)
\fi%
}%
\def\pgfspectra@utils@put@label{\ignorespaces%
- \ifx\pgfspectra@elt@chemsym\undefined\def\pgfspectra@elt@chemsym{}\fi%
+ \ifx\pgfspectra@elt@chemsym\undefined\def\pgfspectra@elt@chemsym{}\else\fi%
\pgfspectra@get@label@position%
\ifnum\pgfspectra@begin>\pgfspectra@end%
\ifcase\pgfspectra@label@position%
%west
\ifpgfspectra@drawaxis%\ifpgfspectra@axislabel%
- \node[\pgfspectra@labelfontcolor,font=\pgfspectra@labelfont,left,minimum width=2em,align=right] at (-2.5*\@pgfspectra@axis@height-\pgfspectra@width,0.5*\pgfspectra@height-1.25*\@pgfspectra@axis@height) {\pgfspectra@labelbtext\pgfspectra@elt@chemsym\pgfspectra@labelatext};%
+ \node[\pgfspectra@labelfontcolor,font=\pgfspectra@labelfont,left,minimum width=2.1em,align=right] at (-2.5*\@pgfspectra@axis@height-\pgfspectra@width,0.5*\pgfspectra@height-1.25*\@pgfspectra@axis@height) {\pgfspectra@labelbtext\pgfspectra@elt@chemsym\pgfspectra@labelatext};%
\else%
- \node[\pgfspectra@labelfontcolor,font=\pgfspectra@labelfont,left,minimum width=2em,align=right] at (-\pgfspectra@width,0.5*\pgfspectra@height) {\pgfspectra@labelbtext\pgfspectra@elt@chemsym\pgfspectra@labelatext};%
+ \node[\pgfspectra@labelfontcolor,font=\pgfspectra@labelfont,left,minimum width=2.1em,align=right] at (-\pgfspectra@width,0.5*\pgfspectra@height) {\pgfspectra@labelbtext\pgfspectra@elt@chemsym\pgfspectra@labelatext};%
\fi%
\or%north west
\ifpgfspectra@drawaxis%
@@ -693,9 +694,9 @@ precision=1,unit={}% NEW v3.0.0 (for data library)
\ifcase\pgfspectra@label@position%
%west
\ifpgfspectra@drawaxis%
- \node[\pgfspectra@labelfontcolor,font=\pgfspectra@labelfont,left,minimum width=2em,align=right] at (-2.5*\@pgfspectra@axis@height,0.5*\pgfspectra@height-1.25*\@pgfspectra@axis@height) {\pgfspectra@labelbtext\pgfspectra@elt@chemsym\pgfspectra@labelatext};%
+ \node[\pgfspectra@labelfontcolor,font=\pgfspectra@labelfont,left,minimum width=2.1em,align=right] at (-2.5*\@pgfspectra@axis@height,0.5*\pgfspectra@height-1.25*\@pgfspectra@axis@height) {\pgfspectra@labelbtext\pgfspectra@elt@chemsym\pgfspectra@labelatext};%
\else%
- \node[\pgfspectra@labelfontcolor,font=\pgfspectra@labelfont,left,minimum width=2em,align=right] at (0,0.5*\pgfspectra@height) {\pgfspectra@labelbtext\pgfspectra@elt@chemsym\pgfspectra@labelatext};%
+ \node[\pgfspectra@labelfontcolor,font=\pgfspectra@labelfont,left,minimum width=2.1em,align=right] at (0,0.5*\pgfspectra@height) {\pgfspectra@labelbtext\pgfspectra@elt@chemsym\pgfspectra@labelatext};%
\fi%
\or%north west
\ifpgfspectra@drawaxis%
diff --git a/Master/texmf-dist/tex/latex/pgfornament-han/beamerthemeTianQing.sty b/Master/texmf-dist/tex/latex/pgfornament-han/beamerthemeTianQing.sty
index 7d4bdfea491..b612979423a 100644
--- a/Master/texmf-dist/tex/latex/pgfornament-han/beamerthemeTianQing.sty
+++ b/Master/texmf-dist/tex/latex/pgfornament-han/beamerthemeTianQing.sty
@@ -1,4 +1,4 @@
-% beamerthemeXiaoshan.sty v1.01 2023/10/29
+% beamerthemeXiaoshan.sty v1.02 2024/09/19
% by LianTze Lim (liantze@gmail.com)
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{beamerthemeTianQing}
@@ -35,12 +35,20 @@
\setbeamerfont{section name}{family=\kaishu,size=\Large}
\setbeamerfont{section title}{family=\kaishu,size=\huge}
\setbeamerfont{section in toc}{family=\kaishu,size=\large}
+\setbeamerfont{block title}{family=\kaishu\romankai,series=\bfseries}
\setbeamercolor{alerted text}{fg=樱桃色}
\setbeamercolor{example text}{fg=绿沉}
\setbeamercolor{block title}{fg=宝蓝}
\setbeamercolor{mini frame}{bg=天青色}
+\newlength{\TQTopDecoWidth}
+\newlength{\TQBottomDecoWidth}
+\setlength{\TQTopDecoWidth}{.5\paperheight}
+\setlength{\TQBottomDecoWidth}{.2\paperheight}
+\newcommand{\TQTopDecoOpacity}{.2}
+\newcommand{\TQBottomDecoOpacity}{.9}
+
\AddToHook{begindocument/before}{%
\newsavebox{\bulletboxone}
\savebox{\bulletboxone}{\usebeamercolor[fg]{structure}\tikz\node[line width=0pt,inner sep=0pt,outer sep=0pt]{\pgfornamenthan[height=1ex]{43}};}
@@ -55,12 +63,12 @@
\savebox{\topcornermotif}{%
\usebeamercolor{deco outline}%
\usebeamercolor{top deco}%
- \tikzset{pgfornamentstyle/.style={rotate=30,color=top deco.fg,draw=deco outline.fg,opacity=.2,inner sep=0pt,ultra thick}}\pgfornamenthan[width=.5\paperheight]{64}}
+ \tikzset{pgfornamentstyle/.style={rotate=30,color=top deco.fg,draw=deco outline.fg,opacity=\TQTopDecoOpacity,inner sep=0pt,ultra thick}}\pgfornamenthan[width=\TQTopDecoWidth]{64}}
\newsavebox{\bottomcornermotif}
\savebox{\bottomcornermotif}{%
\usebeamercolor{structure}%
- \tikzset{pgfornamentstyle/.style={color=structure.fg,opacity=.9,inner sep=0pt,very thick}}\pgfornamenthan[width=.2\paperheight,symmetry=v]{74}}%
+ \tikzset{pgfornamentstyle/.style={color=structure.fg,opacity=\TQBottomDecoOpacity,inner sep=0pt,very thick}}\pgfornamenthan[width=\TQBottomDecoWidth,symmetry=v]{74}}%
}
\setbeamertemplate{itemize item}{\raisebox{.08\ccwd}{\usebox{\bulletboxone}}}
@@ -108,7 +116,7 @@
coltitle = alerted text.fg!70!black,
colback = alerted text.bg,
halign title = flush center,
- fonttitle=\kaishu\romankai\bfseries,
+ fonttitle=\usebeamerfont{block title alerted},
title = #2,
#1
}
@@ -128,7 +136,7 @@
coltitle = example text.fg!70!black,
colback = example text.bg,
halign title = flush center,
- fonttitle=\kaishu\romankai\bfseries,
+ fonttitle=\usebeamerfont{block title example},
title = #2,
#1
}
@@ -150,7 +158,7 @@
coltitle = block title.fg!70!black,
colback = block title.bg,
halign title = flush center,
- fonttitle=\kaishu\romankai\bfseries,
+ fonttitle=\usebeamerfont{block title},
title = #2,
#1
}
diff --git a/Master/texmf-dist/tex/latex/pgfornament/pgfornament.sty b/Master/texmf-dist/tex/latex/pgfornament/pgfornament.sty
index 27406e8bbf1..fad27cbb742 100644
--- a/Master/texmf-dist/tex/latex/pgfornament/pgfornament.sty
+++ b/Master/texmf-dist/tex/latex/pgfornament/pgfornament.sty
@@ -17,7 +17,7 @@
% Inspired from psvectorian P Fradin H Voss
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{tikz,pgfopts}
-\ProvidesPackage{pgfornament}[2020/05/26 v1.2 vector ornaments]
+\ProvidesPackage{pgfornament}[2024/08/14 v1.3 vector ornaments]
\gdef\pgfOrnamentsObject{pgflibraryvectorian.code.tex}
\gdef\OrnamentsFamily{vectorian}
\pgfkeys{%
@@ -138,7 +138,7 @@ baseline={([yshift=\pgfornamentydelta]current bounding box.\pgfornamentanchor)},
\pgftransformscale{\pgfornamentscale}%
\pgf@@ornament{#2}%
\end{tikzpicture}%
-\tikzset{pgfornamentstyle/.style={cm={1,0,0,1,(0,0)}}}
+\tikzset{pgfornamentstyle/.style={cm={1,0,0,1,(0,0)}}}%
}% end pgfornament
\gdef\ornamenttopos{.5}
@@ -180,8 +180,8 @@ baseline={([yshift=\pgfornamentydelta]current bounding box.\pgfornamentanchor)},
\pgfextractx{\pgf@x}{\pgfpointanchor{#2}{#3 west}}
\pgf@xb=\pgf@x
\advance\pgf@xb by -\pgf@xa
-\node[inner sep=0pt] at ($(#1.#3 east)!.5!(#2.#3 west)$) {\pgfornament[width=\pgf@xb]{#4}} ;
-}
+\node[inner sep=0pt] at ($(#1.#3 east)!.5!(#2.#3 west)$) {\pgfornament[width=\pgf@xb]{#4}};
+}%
\def\pgfornamentvline#1#2#3#4{%
\pgfextracty{\pgf@y}{\pgfpointanchor{#1}{south #3}}
\pgf@ya=\pgf@y
@@ -203,7 +203,7 @@ baseline={([yshift=\pgfornamentydelta]current bounding box.\pgfornamentanchor)},
\pgfmathsetmacro{#1}{atan2(\pgf@x,\pgf@y)}%
}%
\makeatother
-\newcommand{\resetpgfornamentstyle}{\tikzset{pgfornamentstyle/.style={}}}
+\newcommand{\resetpgfornamentstyle}{\tikzset{pgfornamentstyle/.style={}}}%
% 2020 Changing vector objects
\def\newpgfornamentfamily#1{%
@@ -219,11 +219,10 @@ baseline={([yshift=\pgfornamentydelta]current bounding box.\pgfornamentanchor)},
/ornamentline/.search also={/tikz}}
\def\pgfornamentline{\pgfutil@ifnextchar[{\pgf@ornamentline}{\pgf@ornamentline[]}}%
\def\pgf@ornamentline[#1]#2#3#4#5{%
-
\pgfqkeys{/ornamentline}{#1}%
\pgfmathsetmacro\nbo{#4}
\path (#2) -- (#3) foreach \i in {0,...,\nbo} {coordinate[pos=\i/\nbo] (p\i)}
[color=\ornamentcolor] foreach \i [count=\j] in {0,...,\number\numexpr\nbo-1} { (p\i) to [ornament=#5] (p\j)};
-}
+}%
\makeatother
\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/pgfplotsthemebeamer/pgfplotsthemebeamer.sty b/Master/texmf-dist/tex/latex/pgfplotsthemebeamer/pgfplotsthemebeamer.sty
new file mode 100644
index 00000000000..23006e89c57
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/pgfplotsthemebeamer/pgfplotsthemebeamer.sty
@@ -0,0 +1,37 @@
+% !TeX root = ./testing/test.tex
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% The pgfplotsthemebeamer package
+% Using colours from the current beamer theme in pgfplots
+% Maintained by samcarter
+%
+% Project repository and bug tracker:
+% https://github.com/samcarter/pgfplotstheme-beamer
+%
+% Released under the LaTeX Project Public License v1.3c or later
+% See http://www.latex-project.org/lppl.txt
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ProvidesPackage{pgfplotsthemebeamer}[2024/08/02 version v0.2 PGFplots colours based the colours of the current beamer theme]
+
+% error if used with a class other than beamer
+\IfClassLoadedF{beamer}{%
+ \PackageError{pgfplotsthemebeamer}{This pgfplots theme needs to be used in conjunction with the beamer class}{}
+}
+
+% setting up colours
+\RequirePackage{pgfplots}
+\pgfplotsset{
+ beamercolors/.style={
+ cycle multi list={
+ mark=*\\mark=x\\mark=square*\\mark=o\\mark=+\\mark=square\\\nextlist
+ structure.fg\\alerted text.fg\\example text.fg\\
+ }
+ }
+}
+
+% making beamercolors default if package is loaded with `all` option
+\DeclareOption{all}{
+ \pgfplotsset{beamercolors}
+}
+\ProcessOptions\relax
diff --git a/Master/texmf-dist/tex/latex/photobook/photobook.cls b/Master/texmf-dist/tex/latex/photobook/photobook.cls
index a2a84809e8b..ae2ecac6b6c 100644
--- a/Master/texmf-dist/tex/latex/photobook/photobook.cls
+++ b/Master/texmf-dist/tex/latex/photobook/photobook.cls
@@ -38,6 +38,7 @@
%
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
%
+%
% XXX ASAP: imagecell: photobook@imagecell@left and photobook@imagecell@top
% should explicitly account for clearence@left and clearence@top resp.
% XXX ASAP: imagecell: clearance should have the same semantics as cliptocell
@@ -88,12 +89,25 @@
% cell/cell* depend on absolute mode being set globally
%
%
+% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
+%
+% Work around an issue with calc's \ratio{..}{..} breaking into an
+% "Arythmetic overflow" when working with large images.
+% (see Issues section for more info)
+%
+% NOTE: if the error persists just make this smaller but note that the
+% smaller this gets the greater the error can be for very small
+% images
+%
+\def\CalcOverflowFactor{0.1}%
+
+
%----------------------------------------------------------------------
%%% NOTE: \def\<module-name>@[A-Z]+ macros will be visible to both the
%%% code and the generated docs...
-\edef\photobook@FILEVERSION{v0.1.29}
-\edef\photobook@FILEDATE{2023-08-24}
+\edef\photobook@FILEVERSION{v0.1.31}
+\edef\photobook@FILEDATE{2024-07-19}
%% \documentclass{ltxdoc}
@@ -248,26 +262,27 @@
%% \begin{minipage}{\textwidth}
%% \begin{verbatim}
%%
+%% <-------------------------------------------------> paperwidth
%% <---> bleed <---> bleed
-%%
-%% + - - - - - - - - - - - - - - - - - - - - - - + - + ^
-%% . . . | bleed
-%% . +-----------------------------------------+----- v . . ---
-%% . | ^ . . = .
-%% . | . . . . . . | . . . = . ^
-%% . |<-- blockwidth ------------------------->= . |
-%% . | . | . . . = . |
-%% . | | . . = . textheight
-%% . | . Page | . . . = . |
-%% . | blockheight . . = . |
-%% . | . | . . <--> bindingoffset |
-%% . | | . . = . |
-%% . | . . . . . . | . <--> gutteroffset v
-%% . | v . . = .
-%% . +-----------------------------------------+----- ^ . . ---
-%% . . . . | bleed
-%% + - - - - - - - - - - - - - - - - - - - - - - + - + v
-%% . .
+%% paperheight v
+%% + - - - - - - - - - - - - - - - - - - - - - - + - + ^ . . . ---
+%% . . . | bleed .
+%% . +-----------------------------------------+----- v . . ---
+%% . | ^ . . = . .
+%% . | . . . . . . | . . . = . ^
+%% . |<-- blockwidth ------------------------->= . | .
+%% . | . | . . . = . |
+%% . | | . . = . textheight .
+%% . | . Page | . . . = . |
+%% . | blockheight . . = . | .
+%% . | . | . . <--> bindingoffset |
+%% . | | . . = . | .
+%% . | . . . . . . | . <--> gutteroffset v
+%% . | v . . = . .
+%% . +-----------------------------------------+----- ^ . . ---
+%% . . . . | bleed .
+%% + - - - - - - - - - - - - - - - - - - - - - - + - + v . . . ---
+%% . . ^
%% | <-- textwidth --------------> . |
%% ^ gutter
%%
@@ -278,6 +293,9 @@
%% account for |\gutteroffset|, namely macros that do not display content
%% with bleeds.
%%
+%% Also note that bleeds are included in \href{https://ctan.org/pkg/geometry}{geometry}'s
+%% |\paperwidth| and |\paperheight|.
+%%
% NOTE: if blockwidth/blockheight are set they will force recalculations
% and overriding of the paperwidth/paperheight if they were changed
% by the user code anywhere between \documentclass[..]{photobook}
@@ -917,7 +935,7 @@
%% \DescribeMacro{\imageblockoffsettop=<ratio>}
%
-%% The ration by which the image is raised in |\ImagePage{..}| and
+%% The ratio by which the image is raised in |\ImagePage{..}| and
%% derived templates.
%%
\edef\imageblockoffsettop{\photobook@imageblockoffsettop}
@@ -2515,8 +2533,9 @@
% NOTE: here we calculate image/cell eccentricity to decide
% to fit to width or heigh of cell...
% NOTE: did I say that I "love" how LaTeX does basic math??
+ % NOTE: \ratio{..}{..} here can break, see Issues for more info...
\setlength\photobook@imagecell@imgratio{%
- 1pt * \ratio{\wd\photobook@imagebox}{\ht\photobook@imagebox}}%
+ 1pt * \ratio{\CalcOverflowFactor\wd\photobook@imagebox}{\CalcOverflowFactor\ht\photobook@imagebox}}%
\setlength\photobook@imagecell@cellratio{%
1pt * \ratio{\cellwidth}{\cellheight}}%
\ifdim \photobook@imagecell@imgratio < \photobook@imagecell@cellratio%
@@ -2524,7 +2543,7 @@
\includegraphics[%
keepaspectratio,
width=\photobook@imagecell@scale\dimexpr
- + \cellwidth
+ \cellwidth
- \photobook@imagecell@clearance@left
- \photobook@imagecell@clearance@right \relax]{#3}}%
\else%
@@ -2532,7 +2551,7 @@
\includegraphics[%
keepaspectratio,
height=\photobook@imagecell@scale\dimexpr
- + \cellheight
+ \cellheight
- \photobook@imagecell@clearance@top
- \photobook@imagecell@clearance@bottom \relax]{#3}}%
\fi\fi\fi%
@@ -4848,8 +4867,9 @@
% align center -> check if image fits vertically...
\ifphotobook@ImagePageFit@centered\else%
\sbox{\photobook@imagebox}{\includegraphics{#3}}%
+ % NOTE: \ratio{..}{..} here can break, see Issues for more info...
\setlength\photobook@ImagePageFit@imgratio{%
- 1pt * \ratio{\wd\photobook@imagebox}{\ht\photobook@imagebox}}%
+ 1pt * \ratio{\CalcOverflowFactor\wd\photobook@imagebox}{\CalcOverflowFactor\ht\photobook@imagebox}}%
% NOTE: subtracting \bindingoffset from \cellwidth here makes sure that
% we avoid offsetting images close enough in ratio to the page and
% messing up bleeds...
@@ -5692,6 +5712,26 @@
%----------------------------------------------------------------------
+%%%% Issues
+%
+%% \subsection*{Large images can cause "Arythmetic overflow"}
+%
+%% \DescribeMacro{\CalcOverflowFactor=0.1}
+%
+%% If the issue occurs set |\CalcOverflowFactor| to a smaller value.
+%% But note, a value too small can lead to errors in the affected macros,
+%% a good value is between 0.1 and 0.01.
+%%
+%% Also note that it is recommended to pre-size images the print outside
+%% of \LaTeX.
+%%
+%% Affected macros: |\imagecell[fill]{..}{..}|, |\ImagePageFit|.
+%%
+% The issue occurs in the calc's |\ratio{..}{..}| macro when calculating
+% image proportions.
+%
+%
+%----------------------------------------------------------------------
% Index...
%
% XXX this prints trash at this point...
diff --git a/Master/texmf-dist/tex/latex/polyglossia/arabicnumbers.sty b/Master/texmf-dist/tex/latex/polyglossia/arabicnumbers.sty
index c45aa22a654..b5c37d61db3 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/arabicnumbers.sty
+++ b/Master/texmf-dist/tex/latex/polyglossia/arabicnumbers.sty
@@ -43,24 +43,23 @@
\fi
}
\def\abjad@zero{}
-\def\abjad@three{ج\ifabjad@jim@notail\char"200D\fi}
+\def\abjad@one{ا}
+\def\abjad@three{ج\ifabjad@jim@notail\Uchar"200D\fi}
\def\abj@num@i@iso#1{%
- \ifcase#1\or ا\or ب\or\abjad@three\or د%
- \or ه\char"200D\or و\or ز\or ح\or ط\fi%
- \ifnum#1=\z@\abjad@zero\fi}
+ \ifcase#1\abjad@zero\or \abjad@one\or ب\or\abjad@three\or د%
+ \or ه\Uchar"200D\or و\or ز\or ح\or ط\fi}
\def\abj@num@i#1{%
- \ifcase#1\or ا\or ب\or\abjad@three\or د%
- \or ه\or و\or ز\or ح\or ط\fi%
- \ifnum#1=\z@\abjad@zero\fi}
+ \ifcase#1\abjad@zero\or\abjad@one\or ب\or\abjad@three\or د%
+ \or ه\or و\or ز\or ح\or ط\fi}
\def\abj@num@ii#1{%
\ifcase#1\or ي\or ك\or ل\or م\or ن%
- \or س\or ع\or ف\or ص\fi%
- \ifnum#1=\z@\fi\abj@num@i}
+ \or س\or ع\or ف\or ص\fi
+ \abj@num@i}
\def\abj@num@iii#1{%
\ifcase#1\or ق\or ر\or ش\or ت\or ث%
- \or خ\or ذ\or ض\or ظ\fi%
- \ifnum#1=\z@\fi\abj@num@ii}
+ \or خ\or ذ\or ض\or ظ\fi
+ \abj@num@ii}
\def\abj@num@iv#1{%
\ifcase#1\or غ\fi
- \ifnum#1=\z@\fi\abj@num@iii}
+ \abj@num@iii}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/cal-util.def b/Master/texmf-dist/tex/latex/polyglossia/cal-util.def
index 85576f39f71..fa6e325029e 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/cal-util.def
+++ b/Master/texmf-dist/tex/latex/polyglossia/cal-util.def
@@ -45,7 +45,7 @@
%% This is an algorithm from Reingold & Dershowitz,
-%% Calendrical Calculations, The Millenium Edition
+%% Calendrical Calculations, The Millennium Edition
%%
\def\@FixedFromGregorian#1#2#3#4{%
\setcounter{tmpA}{(#1-1)*365}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-acadien.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-acadian.ldf
index 36d3136d29b..a2eaae84fab 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-acadien.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-acadian.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-acadien.ldf}[polyglossia: module for Canadian (Acadian) French]
% We provide this as a babel alias
-\xpg@load@master@language{french}
+\InheritGlossFile{french}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-aeb.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-aeb.ldf
index 2e1a3a0719a..764c92b8f31 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-aeb.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-aeb.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-aeb.ldf}[polyglossia: module for aeb (Arabic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{arabic}
+\InheritGlossFile{arabic}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-af.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-af.ldf
index f47e9adcbda..640399a7072 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-af.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-af.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-af.ldf}[polyglossia: module for af (Afrikaans)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{afrikaans}
+\InheritGlossFile{afrikaans}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-afb.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-afb.ldf
index 7eb4a47a7dd..bb92a313eb2 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-afb.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-afb.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-afb.ldf}[polyglossia: module for afb (Arabic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{arabic}
+\InheritGlossFile{arabic}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-afrikaans.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-afrikaans.ldf
index 33d1f12831c..5befce7a866 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-afrikaans.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-afrikaans.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-afrikaans.ldf}[polyglossia: module for Afrikaans]
@@ -16,22 +16,21 @@
% BCP-47 compliant aliases
\setlanguagealias*{afrikaans}{af}
-\define@boolkey{afrikaans}[afrikaans@]{babelshorthands}[true]{}
-
+\DeclareKeys[polyglossia/gloss/afrikaans]
+ {
+ babelshorthands.if = afrikaans@babelshorthands,
+ babelshorthands.default:n = true,
+ }
% Register default options
-\xpg@initialize@gloss@options{afrikaans}{babelshorthands=false}
+\InitializeGlossOptions{afrikaans}{babelshorthands=false}
\ifsystem@babelshorthands
- \setkeys{afrikaans}{babelshorthands=true}
+ \SetGlossOptions{afrikaans}{babelshorthands=true}
\else
- \setkeys{afrikaans}{babelshorthands=false}
+ \SetGlossOptions{afrikaans}{babelshorthands=false}
\fi
-\ifcsundef{initiate@active@char}{%
- \input{babelsh.def}%
- \initiate@active@char{"}%
- \shorthandoff{"}%
-}{}
+\InitializeBabelShorthands
\def\afrikaans@shorthands{%
\xpg@activate@shorthands%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-albanian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-albanian.ldf
index 06a4cd6c681..6d66dd23c80 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-albanian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-albanian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-albanian.ldf}[polyglossia: module for Albanian]
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-am.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-am.ldf
index 649198b3789..a49b871c05b 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-am.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-am.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-am.ldf}[polyglossia: module for am (Amharic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{amharic}
+\InheritGlossFile{amharic}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-american.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-american.ldf
index f456ab17a0e..57b5419eaae 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-american.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-american.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-american.ldf}[polyglossia: module for American English]
% We provide this as a babel alias
-\xpg@load@master@language{english}
+\InheritGlossFile{english}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-amharic.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-amharic.ldf
index 38c225672ac..9d67c71642d 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-amharic.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-amharic.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-amharic.ldf}[polyglossia: module for Amharic]
\PolyglossiaSetup{amharic}{
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-apd.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-apd.ldf
index b52bfa6942c..8e2f1a39613 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-apd.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-apd.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-apd.ldf}[polyglossia: module for apd (Arabic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{arabic}
+\InheritGlossFile{arabic}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-IQ.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-IQ.ldf
index 22340aeff1c..f8bf0310728 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-IQ.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-IQ.ldf
@@ -1,10 +1,10 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ar-IQ.ldf}[polyglossia: module for ar-IQ (Arabic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{arabic}
+\InheritGlossFile{arabic}
\SetLanguageKeys{arabic}{bcp47=ar-IQ,bcp47-language=ar,bcp47-region=IQ}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-JO.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-JO.ldf
index 83fd1b49ad9..3b76069cd86 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-JO.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-JO.ldf
@@ -1,10 +1,10 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ar-JO.ldf}[polyglossia: module for ar-JO (Arabic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{arabic}
+\InheritGlossFile{arabic}
\SetLanguageKeys{arabic}{bcp47=ar-JO,bcp47-language=ar,bcp47-region=JO}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-LB.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-LB.ldf
index 69a13896196..da70c805f62 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-LB.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-LB.ldf
@@ -1,10 +1,10 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ar-LB.ldf}[polyglossia: module for ar-LB (Arabic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{arabic}
+\InheritGlossFile{arabic}
\SetLanguageKeys{arabic}{bcp47=ar-LB,bcp47-language=ar,bcp47-region=LB}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-MR.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-MR.ldf
index 6176cfabdcb..4b95987fccd 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-MR.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-MR.ldf
@@ -1,10 +1,10 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ar-MR.ldf}[polyglossia: module for ar-MR (Arabic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{arabic}
+\InheritGlossFile{arabic}
\SetLanguageKeys{arabic}{bcp47=ar-MR,bcp47-language=ar,bcp47-region=MR}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-PS.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-PS.ldf
index 821d107bbc9..475202a4582 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-PS.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-PS.ldf
@@ -1,10 +1,10 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ar-PS.ldf}[polyglossia: module for ar-PS (Arabic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{arabic}
+\InheritGlossFile{arabic}
\SetLanguageKeys{arabic}{bcp47=ar-PS,bcp47-language=ar,bcp47-region=PS}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-SY.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-SY.ldf
index f736606934f..de54d55975b 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-SY.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-SY.ldf
@@ -1,10 +1,10 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ar-SY.ldf}[polyglossia: module for ar-SY (Arabic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{arabic}
+\InheritGlossFile{arabic}
\SetLanguageKeys{arabic}{bcp47=ar-SY,bcp47-language=ar,bcp47-region=SY}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-YE.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-YE.ldf
index 06759e39b51..0d2decc24e9 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-YE.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ar-YE.ldf
@@ -1,10 +1,10 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ar-YE.ldf}[polyglossia: module for ar-YE (Arabic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{arabic}
+\InheritGlossFile{arabic}
\SetLanguageKeys{arabic}{bcp47=ar-YE,bcp47-language=ar,bcp47-region=YE}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ar.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ar.ldf
index f35c8e67727..8d6e79bb471 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ar.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ar.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ar.ldf}[polyglossia: module for ar (Arabic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{arabic}
+\InheritGlossFile{arabic}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-arabic.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-arabic.ldf
index 3d478f02757..7dfc5531765 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-arabic.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-arabic.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-arabic.ldf}[polyglossia: module for Arabic]
\RequireBidi
@@ -38,104 +38,112 @@
\setlanguagealias*[locale=default]{arabic}{apd}
\setlanguagealias*[locale=mashriq]{arabic}{ar-PS}
-\define@boolkey{arabic}[arabic@]{abjadalph}[true]{}
-
\newif\ifeastern@numerals
-\define@choicekey*+{arabic}{numerals}[\xpg@val\xpg@nr]{mashriq,maghrib,eastern,western}[mashriq]{%
- \ifcase\xpg@nr\relax
- % mashriq:
- \eastern@numeralstrue%
- \or
- % maghrib:
- \eastern@numeralsfalse
- \or
- % eastern:
- \eastern@numeralstrue%
- \or
- % western:
- \eastern@numeralsfalse
- \fi
- \xpg@info{Option: Arabic, numerals=\xpg@val}%
-}{\xpg@warning{Unknown Arabic numerals option `#1'}}
-
-%this is needed for \abjad in arabicnumbers.sty
-\define@boolkey{arabic}[arabic@]{abjadjimnotail}[true]{%
- \ifarabic@abjadjimnotail
- \abjad@jim@notailtrue%
- \else
- \abjad@jim@notailfalse
- \fi}
-
-\define@choicekey*+{arabic}{locale}[\xpg@val\xpg@nr]{default,mashriq,libya,algeria,tunisia,morocco,mauritania}[default]{%
- \ifcase\xpg@nr\relax
- % default:
- \eastern@numeralstrue%
- \SetLanguageKeys{arabic}{bcp47=ar-YE,bcp47-language=ar}%
- \xpg@info{Option: arabic, locale=default}%
- \or
- % mashriq:
- \eastern@numeralstrue%
- \SetLanguageKeys{arabic}{bcp47=ar-IQ,bcp47-language=ar}%
- \xpg@info{Option: arabic, locale=mashriq}%
- \or
- % libya:
- \eastern@numeralstrue%
- \SetLanguageKeys{arabic}{bcp47=ayl,bcp47-language=ar,bcp47-region=LY}%
- \xpg@info{Option: arabic, locale=libya}%
- \or
- % algeria:
- \eastern@numeralsfalse%
- \SetLanguageKeys{arabic}{bcp47=arq,bcp47-language=ar,bcp47-region=DZ,bcp47-extension-u=nu-latn}%
- \xpg@info{Option: arabic, locale=algeria}%
- \or
- % tunisia:
- \eastern@numeralsfalse%
- \SetLanguageKeys{arabic}{bcp47=aeb,bcp47-language=ar,bcp47-region=TN,bcp47-extension-u=nu-latn}%
- \xpg@info{Option: arabic, locale=tunisia}%
- \or
- % morocco:
- \eastern@numeralsfalse%
- \SetLanguageKeys{arabic}{bcp47=ary,bcp47-language=ar,bcp47-region=MA,bcp47-extension-u=nu-latn}%
- \xpg@info{Option: arabic, locale=morocco}%
- \or
- % mauritania:
- \eastern@numeralstrue%
- \SetLanguageKeys{arabic}{bcp47=ar-MR,bcp47-language=ar,bcp47-region=MR}%
- \xpg@info{Option: arabic, locale=mauritania}%
- \fi
- \gdef\@@arabic@month{\@arabic@month{#1}}
- }{\xpg@warning{Unknown Arabic locale `#1'}}
-
\newif\if@hijrical
-\define@choicekey*+{arabic}{calendar}[\xpg@val\xpg@nr]{gregorian,hijri,islamic}[gregorian]{%
- \ifcase\xpg@nr\relax
- % gregorian:
- \@hijricalfalse
- \or
- % hijri:
- \@hijricaltrue
- \or
- % islamic:
- \@hijricaltrue
- \fi
- \xpg@info{Option: Arabic, calendar=\xpg@val}%
-}{\xpg@warning{Unknown Arabic calendar option `#1'}}
-
-
-\define@key{arabic}{hijricorrection}[0]{%
- \gdef\arabic@hijri@correction{#1}}%
-
\newif\ifarabic@customsep\arabic@customsepfalse
-\def\xpg@sepmark{}
-\define@key{arabic}{sectionsep}[.]{%
- \arabic@customseptrue%
- \gdef\xpg@sepmark{#1}%
-}
+
+\DeclareKeys[polyglossia/gloss/arabic]
+ {
+ hijricorrection.code = \gdef\arabic@hijri@correction{#1},
+ hijricorrection.default:n = 0,
+ sectionsep.code = \gdef\xpg@sepmark{#1}\arabic@customseptrue,
+ sectionsep.default:n = .,
+ abjadalph.if = arabic@abjadalph,
+ abjadalph.default:n = true,
+ abjadjimnotail.if = abjad@jim@notail,
+ abjadjimnotail.default:n = true,
+ numerals.choice:,
+ numerals / mashriq.code =
+ {%
+ \eastern@numeralstrue
+ },
+ numerals / maghrib.code =
+ {%
+ \eastern@numeralsfalse
+ },
+ numerals / eastern.code =
+ {%
+ \eastern@numeralstrue
+ },
+ numerals / western.code =
+ {%
+ \eastern@numeralsfalse
+ },
+ numerals.default:n = mashriq,
+ numerals/unknown.code = \xpg@warning{Unknown Arabic numerals option `#1'},
+ locale.choice:,
+ locale / default.code =
+ {%
+ \eastern@numeralstrue
+ \def\abjad@one{ا}%
+ \SetLanguageKeys{arabic}{bcp47=ar-YE,bcp47-language=ar}%
+ \gdef\@@arabic@month{\@arabic@month{#1}}%
+ },
+ locale / mashriq.code =
+ {%
+ \eastern@numeralstrue
+ \def\abjad@one{ا}%
+ \SetLanguageKeys{arabic}{bcp47=ar-IQ,bcp47-language=ar}%
+ \gdef\@@arabic@month{\@arabic@month{#1}}%
+ },
+ locale / libya.code =
+ {%
+ \eastern@numeralstrue
+ \def\abjad@one{ا}%
+ \SetLanguageKeys{arabic}{bcp47=ayl,bcp47-language=ar,bcp47-region=LY}%
+ \gdef\@@arabic@month{\@arabic@month{#1}}%
+ },
+ locale / algeria.code =
+ {%
+ \eastern@numeralsfalse
+ \def\abjad@one{أ}%
+ \SetLanguageKeys{arabic}{bcp47=arq,bcp47-language=ar,bcp47-region=DZ,bcp47-extension-u=nu-latn}%
+ \gdef\@@arabic@month{\@arabic@month{#1}}%
+ },
+ locale / tunisia.code =
+ {%
+ \eastern@numeralsfalse
+ \def\abjad@one{أ}%
+ \SetLanguageKeys{arabic}{bcp47=aeb,bcp47-language=ar,bcp47-region=TN,bcp47-extension-u=nu-latn}%
+ \gdef\@@arabic@month{\@arabic@month{#1}}%
+ },
+ locale / morocco.code =
+ {%
+ \eastern@numeralsfalse
+ \def\abjad@one{أ}%
+ \SetLanguageKeys{arabic}{bcp47=ary,bcp47-language=ar,bcp47-region=MA,bcp47-extension-u=nu-latn}%
+ \gdef\@@arabic@month{\@arabic@month{#1}}%
+ },
+ locale / mauritania.code =
+ {%
+ \eastern@numeralstrue
+ \def\abjad@one{ا}%
+ \SetLanguageKeys{arabic}{bcp47=ar-MR,bcp47-language=ar,bcp47-region=MR}%
+ \gdef\@@arabic@month{\@arabic@month{#1}}%
+ },
+ locale.default:n = default,
+ locale/unknown.code = \xpg@warning{Unknown Arabic locale `#1'},
+ calendar.choice:,
+ calendar / gregorian.code =
+ {%
+ \@hijricalfalse
+ },
+ calendar / hijri.code =
+ {%
+ \@hijricaltrue
+ },
+ calendar / islamic.code =
+ {%
+ \@hijricaltrue
+ },
+ calendar.default:n = gregorian,
+ calendar/unknown.code = \xpg@warning{Unknown Arabic calendar option `#1'}
+ }
% Register default options
-\xpg@initialize@gloss@options{arabic}{locale=default,calendar=gregorian,numerals=mashriq,hijricorrection=0,abjadjimnotail=false}
+\InitializeGlossOptions{arabic}{locale=default,calendar=gregorian,numerals=mashriq,hijricorrection=0,abjadjimnotail=false}
% Register alias options
-\xpg@set@alias@values{arabic}{calendar}{islamic}{hijri}
+\SetLanguageAliasValues{arabic}{calendar}{islamic,hijri}
\def\arabicgregmonth@default#1{\ifcase#1%
% Egypt, Sudan, Yemen and Golf states
@@ -155,9 +163,12 @@
\def\arabicgregmonth@mauritania#1{\ifcase#1%
\or يناير\or فبراير\or مارس\or إبريل\or مايو\or يونيو\or يوليو\or أغشت\or شتمبر\or أكتوبر\or نوفمبر\or دجمبر\fi}
-\def\@arabic@month#1{\ifcsdef{arabicgregmonth@#1}{\expandafter\csname arabicgregmonth@#1\endcsname}%
-{\xpg@warning{Option `locale=#1' is not defined for Arabic: using `default' instead}%
-\arabicgregmonth@default}}
+\def\@arabic@month#1{%
+ \@ifundefined{arabicgregmonth@#1}%
+ {\xpg@warning{Option `locale=#1' is not defined for Arabic: using `default' instead}%
+ \arabicgregmonth@default}%
+ {\expandafter\csname arabicgregmonth@#1\endcsname}%
+}
%\Hijritoday is now locale-aware and will format the date with this macro:
\DefineFormatHijriDate{arabic}{\@ensure@RTL{\arabicnumber{\value{Hijriday}}%
@@ -189,18 +200,18 @@
}
\def\datearabic{%
\def\today{%
- \if@hijrical%
+ \if@hijrical
\Hijritoday[\arabic@hijri@correction]%
\else%
- \if@RTL%
+ \if@RTL
\arabicnumber\day\space\@@arabic@month{\month}%
\space\arabicnumber\year%
\else% in LR environment we format the gregorian date within \textenglish
- \ifcsdef{english@loaded}{\textenglish{\today}}%else US format
- {\normalfontlatin\ifcase\month\or January\or February\or March\or April\or May\or June\or%
- July\or August\or September\or October\or November\or December\fi%
+ \iflanguageloaded{english}{\textenglish{\today}}%else US format
+ {\normalfontlatin\ifcase\month\or January\or February\or March\or April\or May\or June\or
+ July\or August\or September\or October\or November\or December\fi
\space\number\day,\space\number\year}%
- \fi%
+ \fi
\fi}}
% Use \providecommand here as the ldf file might
@@ -226,10 +237,9 @@
\or ح\or ط\or ي\or ك\or ل\or م\or ن%
\or س\or ع\or ف\or ص\or ق\or ر\or ش%
\or ت\or ث\or خ\or ذ\or ض\or ظ\or غ%
- \else\xpg@ill@value{#1}{arabic@abjad@alph}\fi%
+ \else\xpg@ill@value{#1}{arabic@abjad@alph}\fi
}
-
\def\abjadmaghribi#1{%
\ifnum#1>1999\xpg@ill@value{#1}{abjad}%
\else
@@ -252,111 +262,111 @@
%maghribi س -> ص ص -> ض ش -> س ض -> ظ ظ -> غ غ -> ش
\def\abj@maghribi@num@ii#1{%
- \ifcase#1\or ي\or ك\or ل\or م\or ن%
+ \ifcase#1\abjad@zero\or ي\or ك\or ل\or م\or ن%
\or ص\or ع\or ف\or ض\fi
- \ifnum#1=\z@\abjad@zero\fi\abj@num@i}
+ \abj@num@i}
\def\abj@maghribi@num@iii#1{%
\ifcase#1\or ق\or ر\or س\or ت\or ث%
\or خ\or ذ\or ظ\or غ\fi
- \ifnum#1=\z@\fi\abj@maghribi@num@ii}
+ \abj@maghribi@num@ii}
\def\abj@maghribi@num@iv#1{%
\ifcase#1\or ش\fi
- \ifnum#1=\z@\fi\abj@maghribi@num@iii}
+ \abj@maghribi@num@iii}
\def\arabic@numbers{%
\ifarabic@abjadalph
- \let\@alph\abjadalph%
- \let\@Alph\abjadalph%
+ \let\@alph\abjadalph
+ \let\@Alph\abjadalph
\else
- \let\@alph\abjad%
- \let\@Alph\abjad%
+ \let\@alph\abjad
+ \let\@Alph\abjad
\fi
}
\def\noarabic@numbers{%
- \let\@alph\latin@alph%
- \let\@Alph\latin@Alph%
+ \let\@alph\latin@alph
+ \let\@Alph\latin@Alph
}
% Store original definition
\let\xpg@save@arabic\@arabic
\def\arabic@globalnumbers{%
- \let\@arabic\arabicnumber%
+ \let\@arabic\arabicnumber
\renewcommand\thefootnote{\localnumeral*{footnote}}%
\renewcommand\theequation{\localnumeral*{equation}}%
}
\def\noarabic@globalnumbers{%
- \let\@arabic\xpg@save@arabic%
+ \let\@arabic\xpg@save@arabic
}
\def\arabic@xetex@capsformat{%
- \let\xpg@save@sepmark\@SepMark%
+ \let\xpg@save@sepmark\@SepMark
\SepMark{\xpg@sepmark}
}
\def\noarabic@xetex@capsformat{%
- \ifcsdef{xpg@save@sepmark}{%
+ \ifcsname xpg@save@sepmark\endcsname
\SepMark{\xpg@save@sepmark}
- }{}%
+ \fi
}
\def\arabic@luatex@capsformat{%
%
% change chapter and part headings
\ifarabic@customsep
- \ifcsdef{chapter}{%
- \let\xpg@save@thesection\thesection%
+ \ifcsname chapter\endcsname
+ \let\xpg@save@thesection\thesection
\renewcommand*\thesection{\thechapter\xpg@sepmark\@arabic\c@section}
- \let\xpg@save@theequation\theequation%
+ \let\xpg@save@theequation\theequation
\renewcommand*\theequation{%
\ifnum \c@chapter>\z@ \thechapter\xpg@sepmark\fi\@arabic\c@equation}
- \let\xpg@save@thefigure\thefigure%
+ \let\xpg@save@thefigure\thefigure
\renewcommand*\thefigure{%
\ifnum\c@chapter>\z@\thechapter\xpg@sepmark\fi\@arabic\c@figure}
- \let\xpg@save@thetable\thetable%
+ \let\xpg@save@thetable\thetable
\renewcommand*\thetable{%
\ifnum\c@chapter>\z@\thechapter\xpg@sepmark\fi\@arabic\c@table}
- }{}
- \let\xpg@save@thesubsection\thesubsection%
+ \fi
+ \let\xpg@save@thesubsection\thesubsection
\renewcommand\thesubsection
{\thesection\xpg@sepmark\@arabic\c@subsection}
- \let\xpg@save@thesubsubsection\thesubsubsection%
+ \let\xpg@save@thesubsubsection\thesubsubsection
\renewcommand\thesubsubsection{\thesubsection\xpg@sepmark\@arabic\c@subsubsection}
- \let\xpg@save@theparagraph\theparagraph%
+ \let\xpg@save@theparagraph\theparagraph
\renewcommand\theparagraph
{\thesubsubsection\xpg@sepmark\@arabic\c@paragraph}
- \let\xpg@save@thesubparagraph\thesubparagraph%
+ \let\xpg@save@thesubparagraph\thesubparagraph
\renewcommand\thesubparagraph{\theparagraph\xpg@sepmark\@arabic\c@subparagraph}
- \fi% (end \ifarabic@customsep)
+ \fi % (end \ifarabic@customsep)
}
\def\noarabic@luatex@capsformat{%
- \ifcsdef{xpg@save@thesection}{%
- \let\thesection\xpg@save@thesection%
- }{}%
- \ifcsdef{xpg@save@theequation}{%
- \let\theequation\xpg@save@theequation%
- }{}%
- \ifcsdef{xpg@save@thefigure}{%
- \let\thefigure\xpg@save@thefigure%
- }{}%
- \ifcsdef{xpg@save@thetable}{%
- \let\thetable\xpg@save@thetable%
- }{}%
- \ifcsdef{xpg@save@thesubsection}{%
- \let\thesubsection\xpg@save@thesubsection%
- \ifcsdef{xpg@save@thesubsubsection}{%
- \let\thesubsubsection\xpg@save@thesubsubsection%
- }{}%
- }{}%
- \ifcsdef{xpg@save@theparagraph}{%
- \let\theparagraph\xpg@save@theparagraph%
- }{}%
- \ifcsdef{xpg@save@thesubparagraph}{%
- \let\thesubparagraph\xpg@save@thesubparagraph%
- }{}%
+ \ifcsname xpg@save@thesection\endcsname
+ \let\thesection\xpg@save@thesection
+ \fi
+ \ifcsname xpg@save@theequation\endcsname
+ \let\theequation\xpg@save@theequation
+ \fi
+ \ifcsname xpg@save@thefigure\endcsname
+ \let\thefigure\xpg@save@thefigure
+ \fi
+ \ifcsname xpg@save@thetable\endcsname
+ \let\thetable\xpg@save@thetable
+ \fi
+ \ifcsname xpg@save@thesubsection\endcsname
+ \let\thesubsection\xpg@save@thesubsection
+ \ifcsname xpg@save@thesubsubsection\endcsname
+ \let\thesubsubsection\xpg@save@thesubsubsection
+ \fi
+ \fi
+ \ifcsname xpg@save@theparagraph\endcsname
+ \let\theparagraph\xpg@save@theparagraph
+ \fi
+ \ifcsname xpg@save@thesubparagraph\endcsname
+ \let\thesubparagraph\xpg@save@thesubparagraph
+ \fi
}
\def\blockextras@arabic{%
@@ -368,7 +378,7 @@
\fi
\fi
}
-%
+
\def\noextras@arabic{%
\ifarabic@customsep
\ifxetex
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-armenian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-armenian.ldf
index ea904ad5e3a..5a167dd8c2c 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-armenian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-armenian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-armenian.ldf}[polyglossia: module for Armenian]
@@ -21,43 +21,49 @@
\newif\if@eastern@armenian
\@eastern@armenianfalse
-\define@choicekey*+{armenian}{variant}[\xpg@val\xpg@nr]{western,eastern}[western]{%
- \ifcase\xpg@nr\relax
- % western:
- \@eastern@armenianfalse%
- \or
- % eastern:
- \@eastern@armeniantrue%
- \fi
- \xpg@info{Option: Armenian, variant=\xpg@val}%
-}{\xpg@warning{Unknown Armenian variant `#1'}}
\newif\if@armenian@numerals
\@armenian@numeralsfalse
-\define@key{armenian}{numerals}[armenian]{%
- \ifstrequal{#1}{arabic}{%
- \@armenian@numeralsfalse%
- \SetLanguageKeys{armenian}{bcp47-extension-u=nu-latn}%
- }{%
- \@armenian@numeralstrue%
- \SetLanguageKeys{armenian}{bcp47-extension-u={}}%
- }%
-}
-\define@boolkey{armenian}[armenian@]{capitalyiwn}[true]{%
- \ifarmenian@capitalyiwn
- % MakeUppercase capitalizes the ligature of letters ech and yiwn (U+0587)
- % to capital ech and yiwn (also the output if Armenian is not selected at all)
- \SetLanguageKeys{armenian}{bcp47-casing=hy-x-yiwn,bcp47-extension-x=yiwn}
- \else
- % Capitalize ech and yiwn ligature to capital ech and vew,
- % following Armenian spelling reform
- \SetLanguageKeys{armenian}{bcp47-casing=hy,bcp47-extension-x={}}
- \fi
-}
+\DeclareKeys[polyglossia/gloss/armenian]
+ {
+ variant.choice:,
+ variant / western.code =
+ {%
+ \@eastern@armenianfalse
+ },
+ variant / eastern.code =
+ {%
+ \@eastern@armeniantrue
+ },
+ variant.default:n = western,
+ variant/unknown.code = \xpg@warning{Unknown Armenian variant `#1'},
+ numerals.choice:,
+ numerals / armenian.code =
+ {%
+ \@armenian@numeralstrue
+ \SetLanguageKeys{armenian}{bcp47-extension-u={}}%
+ },
+ numerals / arabic.code =
+ {%
+ \@armenian@numeralsfalse
+ \SetLanguageKeys{armenian}{bcp47-extension-u=nu-latn}%
+ },
+ numerals.default:n = armenian,
+ capitalyiwn.choice:,
+ capitalyiwn / true.code =
+ {%
+ \SetLanguageKeys{armenian}{bcp47-casing=hy-x-yiwn,bcp47-extension-x=yiwn}%
+ },
+ capitalyiwn / false.code =
+ {%
+ \SetLanguageKeys{armenian}{bcp47-casing=hy,bcp47-extension-x={}}%
+ },
+ capitalyiwn.default:n = true
+ }
% Register default options
-\xpg@initialize@gloss@options{armenian}{numerals=armenian,variant=western}
+\InitializeGlossOptions{armenian}{numerals=armenian,variant=western}
% Taken from ArmTeX. Audit!
\def\captionsarmenian{%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-arq.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-arq.ldf
index e2ef5273c56..64421d29059 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-arq.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-arq.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-arq.ldf}[polyglossia: module for arq (Arabic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{arabic}
+\InheritGlossFile{arabic}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ary.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ary.ldf
index ad64804b5ee..aff989a8ed1 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ary.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ary.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ary.ldf}[polyglossia: module for ary (Arabic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{arabic}
+\InheritGlossFile{arabic}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-arz.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-arz.ldf
index 0dd998cbe5a..fe6defdfd98 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-arz.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-arz.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-arz.ldf}[polyglossia: module for arz (Arabic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{arabic}
+\InheritGlossFile{arabic}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ast.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ast.ldf
index e9f5095fccf..0bd2d6607b4 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ast.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ast.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ast.ldf}[polyglossia: module for ast (Asturian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{asturian}
+\InheritGlossFile{asturian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-asturian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-asturian.ldf
index 44babd93ef5..a2d29dd5ac5 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-asturian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-asturian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
% Translated by Xuacu <xuacusk8 at gmail dot com>
% Contributed by Kevin Godby <godbyk at gmail dot com>
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-australian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-australian.ldf
index c624020f9ac..fd9506e201d 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-australian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-australian.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-australian.ldf}[polyglossia: module for Australian English]
% We provide this as a babel alias
-\xpg@load@master@language{english}
+\InheritGlossFile{english}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-austrian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-austrian.ldf
index b7ef2e504b6..dd079ba151f 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-austrian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-austrian.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-austrian.ldf}[polyglossia: module for Austrian German (old spelling)]
% We provide this as a babel alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ayl.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ayl.ldf
index 815db99c2ec..9543ecd0cec 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ayl.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ayl.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ayl.ldf}[polyglossia: module for ayl (Arabic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{arabic}
+\InheritGlossFile{arabic}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-bahasa.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-bahasa.ldf
index b8a13680aa1..a966cf7cdad 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-bahasa.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-bahasa.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-bahasa.ldf}[polyglossia: module for Bahasa Indonesia]
% We provide this as a babel alias
-\xpg@load@master@language{malay}
+\InheritGlossFile{malay}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-bahasai.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-bahasai.ldf
index 37a604e050f..093f3bcd3a2 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-bahasai.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-bahasai.ldf
@@ -1,10 +1,10 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-bahasai.ldf}[polyglossia: module for Bahasa Indonesia]
% We only provide this gloss for babel compatibility. Since bahasai is
% a malay variety, we use 'malay' with variant 'indonesian' now.
-\xpg@load@master@language{malay}
+\InheritGlossFile{malay}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-bahasam.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-bahasam.ldf
index f879535507c..a333b16ea27 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-bahasam.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-bahasam.ldf
@@ -1,10 +1,10 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-bahasam.ldf}[polyglossia: module for Bahasa Melayu]
% We only provide this gloss for babel compatibility. Since bahasam is
% a malay variety, we use 'malay' with variant 'malaysian' now.
-\xpg@load@master@language{malay}
+\InheritGlossFile{malay}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-basque.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-basque.ldf
index b4ab3525f5a..112d8d31ab6 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-basque.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-basque.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-basque.ldf}[polyglossia: module for Basque]
\PolyglossiaSetup{basque}{
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-be-tarask.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-be-tarask.ldf
index 02d49ffff15..dc5ffa64a6e 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-be-tarask.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-be-tarask.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-be-tarask.ldf}[polyglossia: module for be-tarask (Belarusian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{belarusian}
+\InheritGlossFile{belarusian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-be.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-be.ldf
index efa0abbd949..39cf456b886 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-be.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-be.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-be.ldf}[polyglossia: module for be (Belarusian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{belarusian}
+\InheritGlossFile{belarusian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-belarusian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-belarusian.ldf
index b5eb8753728..a32c2c13095 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-belarusian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-belarusian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-belarusian.ldf}[polyglossia: module for Belarusian]
@@ -26,63 +26,68 @@
\setlanguagealias*{belarusian}{be}
\def\belarusian@spelling{modern}
-\define@choicekey*+{belarusian}{spelling}[\xpg@val\xpg@nr]{modern,classic,tarask}[modern]{%
- \ifcase\xpg@nr\relax
- % modern:
- \def\belarusian@spelling{modern}%
- \SetLanguageKeys{belarusian}{bcp47=be,bcp47-variant=1959acad}%
- \or
- % classic:
- \def\belarusian@spelling{tarask}%
- \SetLanguageKeys{belarusian}{bcp47=be-tarask,bcp47-variant=tarask}%
- \or
- % tarask:
- \def\belarusian@spelling{tarask}%
- \SetLanguageKeys{belarusian}{bcp47=be-tarask,bcp47-variant=tarask}%
- \fi
-}{\xpg@warning{Unknown Belarusian spelling `#1'}}
-
\newif\ifcyrillic@numerals
\newif\ifcyrillic@asbuk@numerals
-\define@choicekey*+{belarusian}{numerals}[\xpg@val\xpg@nr]{arabic,cyrillic,cyrillic-trad,cyrillic-alph}[arabic]{%
- \ifcase\xpg@nr\relax
- % arabic:
- \cyrillic@numeralsfalse%
- \cyrillic@asbuk@numeralsfalse%
- \or
- % cyrillic:
- \cyrillic@numeralstrue%
- \cyrillic@asbuk@numeralsfalse%
- \or
- % cyrillic-trad:
- \cyrillic@numeralstrue%
- \cyrillic@asbuk@numeralsfalse%
- \or
- % cyrillic-alph:
- \cyrillic@numeralstrue%
- \cyrillic@asbuk@numeralstrue%
- \fi
- \xpg@info{Option: Belarusian, numerals=\xpg@val}%
-}{\xpg@warning{Unknown Belarusian numerals value `#1'}}
-\define@boolkey{belarusian}[belarusian@]{babelshorthands}[true]{}
+\DeclareKeys[polyglossia/gloss/belarusian]
+ {
+ babelshorthands.if = belarusian@babelshorthands,
+ babelshorthands.default:n = true,
+ spelling.choice:,
+ spelling / modern.code =
+ {%
+ \def\belarusian@spelling{modern}%
+ \SetLanguageKeys{belarusian}{bcp47=be,bcp47-variant=1959acad}%
+ },
+ spelling / classic.code =
+ {%
+ \def\belarusian@spelling{tarask}%
+ \SetLanguageKeys{belarusian}{bcp47=be-tarask,bcp47-variant=tarask}%
+ },
+ spelling / tarask.code =
+ {%
+ \def\belarusian@spelling{tarask}%
+ \SetLanguageKeys{belarusian}{bcp47=be-tarask,bcp47-variant=tarask}%
+ },
+ spelling.default:n = modern,
+ spelling/unknown.code = \xpg@warning{Unknown Belarusian spelling `#1'},
+ numerals.choice:,
+ numerals / arabic.code =
+ {%
+ \cyrillic@numeralsfalse
+ \cyrillic@asbuk@numeralsfalse
+ },
+ numerals / cyrillic.code =
+ {%
+ \cyrillic@numeralstrue
+ \cyrillic@asbuk@numeralsfalse
+ },
+ numerals / cyrillic-trad.code =
+ {%
+ \cyrillic@numeralstrue
+ \cyrillic@asbuk@numeralsfalse
+ },
+ numerals / cyrillic-alph.code =
+ {%
+ \cyrillic@numeralstrue
+ \cyrillic@asbuk@numeralstrue
+ },
+ numerals.default:n = arabic,
+ numerals/unknown.code = \xpg@warning{Unknown Belarusian numerals value `#1'}
+ }
% Register default options
-\xpg@initialize@gloss@options{belarusian}{babelshorthands=false,numerals=arabic,spelling=modern}
+\InitializeGlossOptions{belarusian}{babelshorthands=false,numerals=arabic,spelling=modern}
% Register alias options
-\xpg@set@alias@values{belarusian}{spelling}{classic}{tarask}
+\SetLanguageAliasValues{belarusian}{spelling}{classic,tarask}
\ifsystem@babelshorthands
- \setkeys{belarusian}{babelshorthands=true}
+ \SetGlossOptions{belarusian}{babelshorthands=true}
\else
- \setkeys{belarusian}{babelshorthands=false}
+ \SetGlossOptions{belarusian}{babelshorthands=false}
\fi
-\ifcsundef{initiate@active@char}{%
- \input{babelsh.def}%
- \initiate@active@char{"}%
- \shorthandoff{"}%
-}{}
+\InitializeBabelShorthands
\def\belarusian@shorthands{%
\xpg@activate@shorthands%
@@ -118,7 +123,7 @@
\def\@Ccdash{\leavevmode
\nobreak\cyrdash\nobreak\hskip.35em\ignorespaces}%
\ifx\cyrdash\undefined
- \def\cyrdash{\hbox to.8em{\textendash\hss\textendash}}%
+ \def\cyrdash{\leavevmode\hbox to.8em{\textendash\hss\textendash}}%
\fi
\declare@shorthand{belarusian}{",}{\nobreak\hskip.2em\ignorespaces}%
}
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-bengali.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-bengali.ldf
index bbddce0fe8f..476eee7d7ca 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-bengali.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-bengali.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
% Translations provided by সাজেদুর রহিম জোয়ারদার <toshazed@gmail.com>
% TODO implement Bengali calendar
@@ -27,30 +27,36 @@
\newif\ifbengali@devanagari@numerals
\newif\ifbengali@bengali@numerals
-\define@choicekey*+{bengali}{numerals}[\xpg@val\xpg@nr]{Devanagari,Bengali,Western}[Devanagari]{%
- \ifcase\xpg@nr\relax
- % Devanagari:
- \bengali@bengali@numeralsfalse%
- \bengali@devanagari@numeralstrue%
- \or
- % Bengali:
- \bengali@bengali@numeralstrue%
- \bengali@devanagari@numeralsfalse%
- \or
- % Western:
- \bengali@bengali@numeralsfalse%
- \bengali@devanagari@numeralsfalse%
- \fi
- \xpg@info{Option: Bengali, numerals=\xpg@val}%
-}{\xpg@warning{Unknown Bengali numeral `#1'}}
\def\extras@bengali{}
\def\noextras@bengali{}
-\define@boolkey{bengali}[bengali@]{changecounternumbering}[true]{}
+\DeclareKeys[polyglossia/gloss/bengali]
+ {
+ changecounternumbering.if = bengali@changecounternumbering,
+ changecounternumbering.default:n = true,
+ numerals.choice:,
+ numerals / devanagari.code =
+ {%
+ \bengali@bengali@numeralsfalse
+ \bengali@devanagari@numeralstrue
+ },
+ numerals / bengali.code =
+ {%
+ \bengali@bengali@numeralstrue
+ \bengali@devanagari@numeralsfalse
+ },
+ numerals / western.code =
+ {%
+ \bengali@bengali@numeralsfalse
+ \bengali@devanagari@numeralsfalse
+ },
+ numerals.default:n = devanagari,
+ numerals/unknown.code = \xpg@warning{Unknown Bengali numeral `#1'}
+ }
% Register default options
-\xpg@initialize@gloss@options{bengali}{changecounternumbering=false,numerals=Devanagari}
+\InitializeGlossOptions{bengali}{changecounternumbering=false,numerals=Devanagari}
\def\captionsbengali{%
\def\refname{তথ্যসূত্রসমূহ}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-bg.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-bg.ldf
index d75aff3a6e9..960b5027336 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-bg.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-bg.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-bg.ldf}[polyglossia: module for bg (Bulgarian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{bulgarian}
+\InheritGlossFile{bulgarian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-bn.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-bn.ldf
index 2c868f96eec..bcb64153926 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-bn.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-bn.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-bn.ldf}[polyglossia: module for bn (Bengali)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{bengali}
+\InheritGlossFile{bengali}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-bo.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-bo.ldf
index 0f590f9da3a..a87872198c1 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-bo.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-bo.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-bo.ldf}[polyglossia: module for bo (Tibetan)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{tibetan}
+\InheritGlossFile{tibetan}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-bosnian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-bosnian.ldf
index e94edab0a53..d01a5c5b334 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-bosnian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-bosnian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-bosnian.ldf}[polyglossia: module for Bosnian]
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-br.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-br.ldf
index 5ad3f56ef00..e6d50a9b8cb 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-br.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-br.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-br.ldf}[polyglossia: module for br (Breton)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{breton}
+\InheritGlossFile{breton}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-brazil.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-brazil.ldf
index f5c681c9f32..8dc9fb7fd46 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-brazil.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-brazil.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-brazil.ldf}[polyglossia: module for Brazilian Portuguese]
@@ -6,6 +6,6 @@
% 'brazil' was selected in accordance with babel.
% Since brazil is a variety of portuguese, we use 'portuguese' now.
-\xpg@load@master@language{portuguese}
+\InheritGlossFile{portuguese}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-breton.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-breton.ldf
index 3d0b34a99f9..62a658788ef 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-breton.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-breton.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-breton.ldf}[polyglossia: module for Breton]
\PolyglossiaSetup{breton}{
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-british.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-british.ldf
index ccf3a39ccfd..47de0faae4c 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-british.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-british.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-british.ldf}[polyglossia: module for British English]
% We provide this as a babel alias
-\xpg@load@master@language{english}
+\InheritGlossFile{english}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-bs.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-bs.ldf
index 335992a52e5..afbe48289e1 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-bs.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-bs.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-bs.ldf}[polyglossia: module for bs (Bosnian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{bosnian}
+\InheritGlossFile{bosnian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-bulgarian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-bulgarian.ldf
index c7976480e5b..a4062e493e6 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-bulgarian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-bulgarian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-bulgarian.ldf}[polyglossia: module for Bulgarian]
\PolyglossiaSetup{bulgarian}{
@@ -61,15 +61,15 @@
\def\figurename{Фигура}%
\def\tablename{Таблица}%
%\def\thepart{}%
- %\def\partname{}%
+ \def\partname{Част}%
\def\pagename{Стр.}%
\def\seename{вж.}%
\def\alsoname{вж.\ също и}%
\def\enclname{Приложения}%
\def\ccname{копия}%
- %\def\headtoname{}%
- \def\proofname{Proof}%
- \def\glossaryname{Glossary}%
+ \def\headtoname{За}%
+ \def\proofname{Доказателство}%
+ \def\glossaryname{Притурка}%
}
\def\datebulgarian{%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ca.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ca.ldf
index b8d173e11f1..bfa2f310766 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ca.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ca.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ca.ldf}[polyglossia: module for ca (Catalan)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{catalan}
+\InheritGlossFile{catalan}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-canadian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-canadian.ldf
index 249bd57c9f1..451529dff02 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-canadian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-canadian.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-canadian.ldf}[polyglossia: module for Canadian English]
% We provide this as a babel alias
-\xpg@load@master@language{english}
+\InheritGlossFile{english}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-canadien.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-canadien.ldf
index 8cfed1e4da2..47aa61e6a49 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-canadien.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-canadien.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-canadien.ldf}[polyglossia: module for Canadian French]
% We provide this as a babel alias
-\xpg@load@master@language{french}
+\InheritGlossFile{french}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-catalan.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-catalan.ldf
index 37566fd974d..cd7f34b68a2 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-catalan.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-catalan.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-catalan.ldf}[polyglossia: module for Catalan]
\PolyglossiaSetup{catalan}{
@@ -16,21 +16,21 @@
% BCP-47 compliant aliases
\setlanguagealias*{catalan}{ca}
-\define@boolkey{catalan}[catalan@]{babelshorthands}[true]{}
+\DeclareKeys[polyglossia/gloss/catalan]
+ {
+ babelshorthands.if = catalan@babelshorthands,
+ babelshorthands.default:n = true,
+ }
\ifsystem@babelshorthands
- \setkeys{catalan}{babelshorthands=true}
+ \SetGlossOptions{catalan}{babelshorthands=true}
\else
- \setkeys{catalan}{babelshorthands=false}
+ \SetGlossOptions{catalan}{babelshorthands=false}
\fi
% Register default options
-\xpg@initialize@gloss@options{catalan}{babelshorthands=false}
+\InitializeGlossOptions{catalan}{babelshorthands=false}
-\ifcsundef{initiate@active@char}{%
- \input{babelsh.def}%
- \initiate@active@char{"}%
- \shorthandoff{"}%
-}{}
+\InitializeBabelShorthands
%%% adapted from Babel's catalan.ldf
\newdimen\leftllkern \newdimen\rightllkern \newdimen\raiselldim
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-chinese.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-chinese.ldf
index 05621e02298..f322958cfb1 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-chinese.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-chinese.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-chinese.ldf}[polyglossia: module for Chinese]
@@ -22,52 +22,75 @@
\setlanguagealias*[variant=simplified]{chinese}{zh-CN}
\setlanguagealias*[variant=traditional]{chinese}{zh-TW}
-\providebool{chinese@traditional}
+\@ifundefined{ifchinese@traditional}%
+ {\newif\ifchinese@traditional}{}
-\def\chinese@variant{chinese}
-
-\newif\ifchinese@numerals
-\define@key{chinese}{numerals}[arabic]{%
- \ifstrequal{#1}{chinese}%
- {\chinese@numeralstrue%
- \SetLanguageKeys{chinese}{bcp47-extension-u=nu-hant}%
- }{\chinese@numeralsfalse%
- \SetLanguageKeys{chinese}{bcp47-extension-u=nu-latn}%
- }%
-}
+\@ifundefined{ifchinese@numerals}%
+ {\newif\ifchinese@numerals}{}
+\def\chinese@variant{chinese}
-\define@choicekey*+{chinese}{variant}[\xpg@val\xpg@nr]{cn,simplified,tw,traditional}[cn]{%
- \ifcase\xpg@nr\relax
- % cn:
- \chinese@traditionalfalse
- \SetLanguageKeys{chinese}{language={Chinese Simplified},langtag=ZHS,bcp47=zh-CN,bcp47-language=zh,bcp47-region=CN,bcp47-script=Hans}%
- \xpg@info{Option: Chinese, variant=simplified}%
- \or
- % simplified:
- \chinese@traditionalfalse
- \SetLanguageKeys{chinese}{language={Chinese Simplified},langtag=ZHS,bcp47=zh-CN,bcp47-language=zh,bcp47-region=CN,bcp47-script=Hans}%
- \xpg@info{Option: Chinese, variant=simplified}%
- \or
- % tw:
- \chinese@traditionaltrue
- \SetLanguageKeys{chinese}{language={Chinese Traditional},langtag=ZHT,bcp47=zh-TW,bcp47-language=zh,bcp47-region=TW,bcp47-script=Hant}%
- \xpg@info{Option: Chinese, variant=traditional}%
- \or
- % traditional:
- \chinese@traditionaltrue
- \SetLanguageKeys{chinese}{language={Chinese Traditional},langtag=ZHT,bcp47=zh-TW,bcp47-language=zh,bcp47-region=TW,bcp47-script=Hant}%
- \xpg@info{Option: Chinese, variant=traditional}%
- \fi
-}{\xpg@warning{Unknown Chinese variant `#1'}}
+\DeclareKeys[polyglossia/gloss/chinese]
+ {
+ variant.choice:,
+ variant / cn.code =
+ {%
+ \chinese@traditionalfalse
+ \SetLanguageKeys{chinese}{language={Chinese Simplified},langtag=ZHS,bcp47=zh-CN,bcp47-language=zh,bcp47-region=CN,bcp47-script=Hans}%
+ },
+ variant / simplified.code =
+ {%
+ \chinese@traditionalfalse
+ \SetLanguageKeys{chinese}{language={Chinese Simplified},langtag=ZHS,bcp47=zh-CN,bcp47-language=zh,bcp47-region=CN,bcp47-script=Hans}%
+ },
+ variant / tw.code =
+ {%
+ \chinese@traditionaltrue
+ \SetLanguageKeys{chinese}{language={Chinese Traditional},langtag=ZHT,bcp47=zh-TW,bcp47-language=zh,bcp47-region=TW,bcp47-script=Hant}%
+ },
+ variant / traditional.code =
+ {%
+ \chinese@traditionaltrue
+ \SetLanguageKeys{chinese}{language={Chinese Traditional},langtag=ZHT,bcp47=zh-TW,bcp47-language=zh,bcp47-region=TW,bcp47-script=Hant}%
+ },
+ variant.default:n = cn,
+ variant/unknown.code = \xpg@warning{Unknown Chinese variant `#1'},
+ numerals.choice:,
+ numerals / arabic.code =
+ {%
+ \chinese@numeralsfalse
+ \SetLanguageKeys{chinese}{bcp47-extension-u=nu-latn}%
+ },
+ numerals / chinese.code =
+ {%
+ \chinese@numeralstrue
+ \SetLanguageKeys{chinese}{bcp47-extension-u=nu-hant}%
+ },
+ numerals.default:n = arabic,
+ numerals/unknown.code = \xpg@warning{Unknown Chinese numerals value `#1'}
+ }
% Register default options
-\xpg@initialize@gloss@options{chinese}{variant=cn,numerals=arabic}
-%\xpg@initialize@gloss@options{chinese}{variant=tw,numerals=arabic}
+\InitializeGlossOptions{chinese}{variant=cn,numerals=arabic}
+%\InitializeGlossOptions{chinese}{variant=tw,numerals=arabic}
% Register alias options
-\xpg@set@alias@values{chinese}{variant}{cn}{simplified}
-\xpg@set@alias@values{chinese}{variant}{tw}{traditional}
+\SetLanguageAliasValues{chinese}{variant}{cn,simplified}
+\SetLanguageAliasValues{chinese}{variant}{tw,traditional}
+
+\providecommand*\presection{}
+\providecommand*\presubsection{}
+\providecommand*\presubsubsection{}
+\providecommand*\postsection{}
+\providecommand*\postsubsection{}
+\providecommand*\postsubsubsection{}
+\let\xpg@save@presection\presection
+\let\xpg@save@presubsection\presubsection
+\let\xpg@save@presubsubsection\presubsubsection
+\let\xpg@save@postsection\postsection
+\let\xpg@save@postsubsection\postsubsection
+\let\xpg@save@postsubsubsection\postsubsubsection
+\let\xpg@save@seccntformat\@seccntformat
\def\chinese@capsformat{%
\def\@seccntformat##1{%
@@ -89,6 +112,16 @@
\def\presubsubsection{第}%
}
+\def\nochinese@capsformat{%
+ \let\presection\xpg@save@presection%
+ \let\presubsection\xpg@save@presubsection%
+ \let\presubsubsection\xpg@save@presubsubsection%
+ \let\postsection\xpg@save@postsection%
+ \let\postsubsection\xpg@save@postsubsection%
+ \let\postsubsubsection\xpg@save@postsubsubsection%
+ \let\@seccntformat\xpg@save@seccntformat%
+}
+
\def\captionschinese{%
\ifchinese@traditional
\captions@chinese@traditional
@@ -118,7 +151,7 @@
\def\enclname{附件}%
\def\ccname{抄送}%
\def\headtoname{收件人}%
- \def\\glossaryname{詞彙表}%
+ \def\glossaryname{詞彙表}%
}
\def\captions@chinese@simplified{%
\def\contentsname{目录}%
@@ -141,7 +174,7 @@
\def\enclname{附件}%
\def\ccname{抄送}%
\def\headtoname{收件人}%
- \def\\glossaryname{词汇表}%
+ \def\glossaryname{词汇表}%
}
\newcount\c@TempJNum%
@@ -267,16 +300,60 @@
}%
}
+\ifluatex
+ \@ifundefined{xpg@attr@cjkspacing}{\newattribute\xpg@attr@cjkspacing}{}
+ \directlua{ require"polyglossia-cjk-spacing" }
+ \def\chinese@simplified@spacing {\xpg@attr@cjkspacing=\thr@@} % chinese simplified
+ \def\chinese@traditional@spacing{\xpg@attr@cjkspacing=4\relax} % chinese traditional
+ \def\nochinese@spacing{\unsetattribute\xpg@attr@cjkspacing}
+\else
+ \@ifundefined{xpg@orig@XeTeXlinebreakskip}{\newskip\xpg@orig@XeTeXlinebreakskip}{}
+ \xpg@orig@XeTeXlinebreakskip=\XeTeXlinebreakskip
+ \def\chinese@simplified@spacing{%
+ \XeTeXlinebreaklocale "zh"%
+ \XeTeXlinebreakskip = 0pt plus 0.1em minus 0.01em%
+ }
+ \let\chinese@traditional@spacing\chinese@simplified@spacing
+ \def\nochinese@spacing{%
+ \XeTeXlinebreakskip=\xpg@orig@XeTeXlinebreakskip%
+ \XeTeXlinebreaklocale ""%
+ }
+\fi
+
\def\noextras@chinese{%
- \chinese@capsformat%
+ \nochinese@capsformat%
+ \nochinese@spacing%
}
\def\blockextras@chinese{%
\chinese@capsformat%
+ \ifchinese@traditional
+ \chinese@traditional@spacing%
+ \else
+ \chinese@simplified@spacing%
+ \fi%
}
\def\inlineextras@chinese{%
\chinese@capsformat%
+ \ifchinese@traditional
+ \chinese@traditional@spacing%
+ \else
+ \chinese@simplified@spacing%
+ \fi%
}
+
+\ifxetex
+ % \XeTeXlinebreaklocale is global,
+ % so we need to reset after nested language got closed
+ \def\nestedextras@chinese{%
+ \ifchinese@traditional
+ \chinese@traditional@spacing%
+ \else
+ \chinese@simplified@spacing%
+ \fi%
+ }
+\fi
+
% Based on contributions of Toru Inagaki, Norio Iwase, François Charette
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ckb-Arab.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ckb-Arab.ldf
index f216864f4c6..99e58d07798 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ckb-Arab.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ckb-Arab.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ckb-Arab.ldf}[polyglossia: module for ckb-Arab (Kurdish)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{kurdish}
+\InheritGlossFile{kurdish}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ckb-Latn.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ckb-Latn.ldf
index 73db9067eff..bcc49a399da 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ckb-Latn.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ckb-Latn.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ckb-Latn.ldf}[polyglossia: module for ckb-Latn (Kurdish)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{kurdish}
+\InheritGlossFile{kurdish}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ckb.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ckb.ldf
index 360d484e8c2..0e98a403ba5 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ckb.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ckb.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ckb.ldf}[polyglossia: module for ckb (Kurdish)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{kurdish}
+\InheritGlossFile{kurdish}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-classiclatin.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-classiclatin.ldf
new file mode 100644
index 00000000000..bfb41cdbb00
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-classiclatin.ldf
@@ -0,0 +1,9 @@
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
+%
+\ProvidesFile{gloss-classiclatin.ldf}[polyglossia: module for classic Latin]
+
+% We provide this as a babel alias
+
+\InheritGlossFile{latin}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-cop.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-cop.ldf
index 2f7e8653738..2d77ac75545 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-cop.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-cop.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-cop.ldf}[polyglossia: module for cop (Coptic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{coptic}
+\InheritGlossFile{coptic}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-coptic.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-coptic.ldf
index 0cff5d46d13..b307313b155 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-coptic.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-coptic.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-coptic.ldf}[polyglossia: module for Coptic]
\PolyglossiaSetup{coptic}{
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-croatian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-croatian.ldf
index 15b7bc02a01..2c9e035f274 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-croatian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-croatian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-croatian.ldf}[polyglossia: module for Croatian]
\PolyglossiaSetup{croatian}{
@@ -20,40 +20,40 @@
\RequirePackage{luavlna}
\fi
-\define@boolkey{croatian}[croatian@]{babelshorthands}[true]{}
-
-\define@boolkey{croatian}[croatian@]{disabledigraphs}[true]{}
-
-% Alias kept for backwards compatibility. Please do not remove
-\define@boolkey{croatian}[croatian@]{disableligatures}[true]{%
- \xpg@warning{The option disableligatures is deprected.\MessageBreak
- Please use disabledigraphs instead}%
- \ifcroatian@disableligatures
- \croatian@disabledigraphstrue
- \else
- \croatian@disabledigraphsfalse
- \fi
-}
-
-\define@boolkey{croatian}[croatian@]{splithyphens}[true]{}
-
-\define@boolkey{croatian}[croatian@]{localalph}[true]{}
+\DeclareKeys[polyglossia/gloss/croatian]
+ {
+ babelshorthands.if = croatian@babelshorthands,
+ babelshorthands.default:n = true,
+ disabledigraphs.if = croatian@disabledigraphs,
+ disabledigraphs.default:n = true,
+ splithyphens.if = croatian@splithyphens,
+ splithyphens.default:n = true,
+ localalph.if = croatian@localalph,
+ localalph.default:n = true,
+ disableligatures.choices:nn = { true, false }
+ {%
+ \xpg@warning{The option disableligatures is deprecated.\MessageBreak
+ Please use disabledigraphs instead}%
+ \ifcase\UseName{l_keys_choice_int}\or
+ \croatian@disabledigraphstrue
+ \or
+ \croatian@disabledigraphsfalse
+ \fi
+ },
+ disableligatures.default:n = true,
+ }
% Register default options
-\xpg@initialize@gloss@options{croatian}{babelshorthands=false,disabledigraphs=false,
+\InitializeGlossOptions{croatian}{babelshorthands=false,disabledigraphs=false,
splithyphens=true,localalph=true}
\ifsystem@babelshorthands
- \setkeys{croatian}{babelshorthands=true}
+ \SetGlossOptions{croatian}{babelshorthands=true}
\else
- \setkeys{croatian}{babelshorthands=false}
+ \SetGlossOptions{croatian}{babelshorthands=false}
\fi
-\ifcsundef{initiate@active@char}{%
- \input{babelsh.def}%
- \initiate@active@char{"}%
- \shorthandoff{"}%
-}{}
+\InitializeBabelShorthands
\let\xpg@hyphen@char-
\def\croatian@@splhyphen#1{%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-cy.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-cy.ldf
index bcf199e0747..5242ba58730 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-cy.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-cy.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-cy.ldf}[polyglossia: module for cy (Welsh)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{welsh}
+\InheritGlossFile{welsh}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-cz.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-cz.ldf
index d3775620eed..164ebcd141b 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-cz.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-cz.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-cz.ldf}[polyglossia: module for cz (Czech)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{czech}
+\InheritGlossFile{czech}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-czech.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-czech.ldf
index 858f3d4ae6c..d60fd051fd8 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-czech.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-czech.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-czech.ldf}[polyglossia: module for Czech]
@@ -21,26 +21,26 @@
\RequirePackage{luavlna}
\fi
-\define@boolkey{czech}[czech@]{babelshorthands}[true]{}
-
-\define@boolkey{czech}[czech@]{splithyphens}[true]{}
-
-\define@boolkey{czech}[czech@]{vlna}[true]{}
+\DeclareKeys[polyglossia/gloss/czech]
+ {
+ babelshorthands.if = czech@babelshorthands,
+ babelshorthands.default:n = true,
+ splithyphens.if = czech@splithyphens,
+ splithyphens.default:n = true,
+ vlna.if = czech@vlna,
+ vlna.default:n = true
+ }
% Register default options
-\xpg@initialize@gloss@options{czech}{babelshorthands=false,splithyphens=true,vlna=true}
+\InitializeGlossOptions{czech}{babelshorthands=false,splithyphens=true,vlna=true}
\ifsystem@babelshorthands
- \setkeys{czech}{babelshorthands=true}
+ \SetGlossOptions{czech}{babelshorthands=true}
\else
- \setkeys{czech}{babelshorthands=false}
+ \SetGlossOptions{czech}{babelshorthands=false}
\fi
-\ifcsundef{initiate@active@char}{%
- \input{babelsh.def}%
- \initiate@active@char{"}%
- \shorthandoff{"}%
-}{}
+\InitializeBabelShorthands
\def\czech@@splithyphen#1{%
\def\czech@sh@tmp{%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-da.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-da.ldf
index ff3dda30d0a..75001758963 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-da.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-da.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-da.ldf}[polyglossia: module for da (Danish)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{danish}
+\InheritGlossFile{danish}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-danish.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-danish.ldf
index 6126beaeb8b..7f98ba74532 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-danish.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-danish.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-danish.ldf}[polyglossia: module for Danish]
\PolyglossiaSetup{danish}{
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-AT-1901.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-AT-1901.ldf
index 6ec76bdff99..1d4716cc788 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-AT-1901.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-AT-1901.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de-AT-1901.ldf}[polyglossia: module for de-AT-1901 (Austrian German, old spelling)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-AT-1996.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-AT-1996.ldf
index 0354d8b16fc..51aafd52c02 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-AT-1996.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-AT-1996.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de-AT-1996.ldf}[polyglossia: module for de-AT-1996 (Austrian German)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-AT.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-AT.ldf
index 5e016be933d..b9dd535f033 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-AT.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-AT.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de-AT.ldf}[polyglossia: module for de-AT (Austrian German)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-CH-1901.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-CH-1901.ldf
index 1df826fee1d..fb69ea8dd31 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-CH-1901.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-CH-1901.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de-CH-1901.ldf}[polyglossia: module for de-CH-1901 (Swiss German, old spelling)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-CH-1996.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-CH-1996.ldf
index 7ccf3664967..dcbff2cabf6 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-CH-1996.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-CH-1996.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de-CH-1996.ldf}[polyglossia: module for de-CH-1996 (Swiss German)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-CH.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-CH.ldf
index d99f0594d75..50dbdd12a4d 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-CH.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-CH.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de-CH.ldf}[polyglossia: module for de-CH (Swiss German)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-DE-1901.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-DE-1901.ldf
index 1f4a987a1b4..c29fb7f8887 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-DE-1901.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-DE-1901.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de-DE-1901.ldf}[polyglossia: module for de-DE-1901 (Germany's German, old spelling)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-DE-1996.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-DE-1996.ldf
index 9114631dcf1..600aaf6e54e 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-DE-1996.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-DE-1996.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de-DE-1996.ldf}[polyglossia: module for de-DE-1996 (Germany's German)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-DE.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-DE.ldf
index 174cfc6ea0a..65b6e86b215 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-DE.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-DE.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de-DE.ldf}[polyglossia: module for de-DE (Germany's German)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-AT-1901.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-AT-1901.ldf
index 97852bb8e02..9e250002536 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-AT-1901.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-AT-1901.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de-AT-1901-Latf.ldf}[polyglossia: module for de-AT-1901-Latf (Austrian German, old spelling)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-AT-1996.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-AT-1996.ldf
index a87e11a509c..ea0b6c72b35 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-AT-1996.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-AT-1996.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de-AT-1996-Latf.ldf}[polyglossia: module for de-AT-1996-Latf (Austrian German)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-AT.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-AT.ldf
index 41eb5a93b9b..77f5ff3cc2a 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-AT.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-AT.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de-AT-Latf.ldf}[polyglossia: module for de-AT-Latf (Austrian German)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-CH-1901.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-CH-1901.ldf
index 05d331c364b..109304a6d00 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-CH-1901.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-CH-1901.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de-CH-1901-Latf.ldf}[polyglossia: module for de-CH-1901-Latf (Swiss German, old spelling)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-CH-1996.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-CH-1996.ldf
index 3e256710167..e133756a801 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-CH-1996.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-CH-1996.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de-CH-1996-Latf.ldf}[polyglossia: module for de-CH-1996-Latf (Swiss German)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-CH.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-CH.ldf
index db4d3494874..354e31d09fe 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-CH.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-CH.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de-CH-Latf.ldf}[polyglossia: module for de-CH-Latf (Swiss German)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-DE-1901.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-DE-1901.ldf
index 4b7f9f97bad..1ab860716be 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-DE-1901.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-DE-1901.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de-DE-1901-Latf.ldf}[polyglossia: module for de-DE-1901-Latf (Germany's German, old spelling)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-DE-1996.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-DE-1996.ldf
index a4324450320..a92f9560343 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-DE-1996.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-DE-1996.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de-DE-1996-Latf.ldf}[polyglossia: module for de-DE-1996-Latf (Germany's German)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-DE.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-DE.ldf
index 19649f6f98b..78379253041 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-DE.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf-DE.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de-DE-Latf.ldf}[polyglossia: module for de-DE-Latf (Germany's German)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf.ldf
index 2eddf761c4d..f2965a187b2 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de-Latf.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de-Latf.ldf}[polyglossia: module for de-Latf (German)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-de.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-de.ldf
index 5f15ee4e843..129984e5453 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-de.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-de.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-de.ldf}[polyglossia: module for de (German)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-divehi.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-divehi.ldf
index 10debfabfa6..93a829f5271 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-divehi.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-divehi.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-divehi.ldf}[polyglossia: module for Divehi]
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-dsb.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-dsb.ldf
index 03e4a24986b..03e5af1f054 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-dsb.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-dsb.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-dsb.ldf}[polyglossia: module for dsb (Sorbian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{sorbian}
+\InheritGlossFile{sorbian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-dutch.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-dutch.ldf
index f679e7f039c..87f134bc6de 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-dutch.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-dutch.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-dutch.ldf}[polyglossia: module for Dutch]
\PolyglossiaSetup{dutch}{
@@ -15,24 +15,24 @@
% BCP-47 compliant aliases
\setlanguagealias*{dutch}{nl}
-\define@boolkey{dutch}[dutch@]{babelshorthands}[true]{}
-
-\define@boolkey{dutch}[dutch@]{tremahyphenation}[true]{}
+\DeclareKeys[polyglossia/gloss/dutch]
+ {
+ babelshorthands.if = dutch@babelshorthands,
+ babelshorthands.default:n = true,
+ tremahyphenation.if = dutch@tremahyphenation,
+ tremahyphenation.default:n = true
+ }
% Register default options
-\xpg@initialize@gloss@options{dutch}{babelshorthands=false,tremahyphenation=true}
+\InitializeGlossOptions{dutch}{babelshorthands=false,tremahyphenation=true}
\ifsystem@babelshorthands
- \setkeys{dutch}{babelshorthands=true}
+ \SetGlossOptions{dutch}{babelshorthands=true}
\else
- \setkeys{dutch}{babelshorthands=false}
+ \SetGlossOptions{dutch}{babelshorthands=false}
\fi
-\ifcsundef{initiate@active@char}{%
- \input{babelsh.def}%
- \initiate@active@char{"}%
- \shorthandoff{"}%
-}{}
+\InitializeBabelShorthands
\def\xpg@trema#1{\allowhyphens\discretionary{-}{#1}{\"{#1}}\allowhyphens}
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-dv.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-dv.ldf
index 95ba8b33b3c..226c2563bca 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-dv.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-dv.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-dv.ldf}[polyglossia: module for dv (Divehi)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{divehi}
+\InheritGlossFile{divehi}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ecclesiasticlatin.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ecclesiasticlatin.ldf
new file mode 100644
index 00000000000..8341a31bffc
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ecclesiasticlatin.ldf
@@ -0,0 +1,9 @@
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
+%
+\ProvidesFile{gloss-ecclesiasticlatin.ldf}[polyglossia: module for ecclesiastic Latin]
+
+% We provide this as a babel alias
+
+\InheritGlossFile{latin}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-el-monoton.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-el-monoton.ldf
index 3b2763da549..ddf60b4dfed 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-el-monoton.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-el-monoton.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-el-monoton.ldf}[polyglossia: module for el-monoton (Greek)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{greek}
+\InheritGlossFile{greek}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-el-polyton.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-el-polyton.ldf
index f36384c04de..87b5c481d73 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-el-polyton.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-el-polyton.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-el-polyton.ldf}[polyglossia: module for el-polyton (Greek)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{greek}
+\InheritGlossFile{greek}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-el.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-el.ldf
index 23acc8b54cf..456bbff4257 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-el.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-el.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-el.ldf}[polyglossia: module for el (Greek)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{greek}
+\InheritGlossFile{greek}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-en-AU.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-en-AU.ldf
index a75c84a3a61..e01c1f9c819 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-en-AU.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-en-AU.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-en-AU.ldf}[polyglossia: module for en-AU (Australian English)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{english}
+\InheritGlossFile{english}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-en-CA.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-en-CA.ldf
index 3253e418ab7..74f1eb912e2 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-en-CA.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-en-CA.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
-\ProvidesFile{gloss-en-CA.ldf}[polyglossia: module for en-CA (Canadan English)]
+\ProvidesFile{gloss-en-CA.ldf}[polyglossia: module for en-CA (Canadian English)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{english}
+\InheritGlossFile{english}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-en-GB.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-en-GB.ldf
index fb958322bf4..3eb708baf40 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-en-GB.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-en-GB.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-en-GB.ldf}[polyglossia: module for en-GB (British English)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{english}
+\InheritGlossFile{english}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-en-NZ.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-en-NZ.ldf
index 15db1b4a330..4d97546562f 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-en-NZ.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-en-NZ.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-en-NZ.ldf}[polyglossia: module for en-NZ (Newzealand English)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{english}
+\InheritGlossFile{english}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-en-US.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-en-US.ldf
index 55e3c76b979..7c4f5842c94 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-en-US.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-en-US.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-en-US.ldf}[polyglossia: module for en-US (American English)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{english}
+\InheritGlossFile{english}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-en.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-en.ldf
index 2fc32374054..ce078fd7059 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-en.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-en.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-en.ldf}[polyglossia: module for en (English)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{english}
+\InheritGlossFile{english}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-english.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-english.ldf
index 87da24e5e21..f1bbcf05398 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-english.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-english.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-english.ldf}[polyglossia: module for English]
@@ -30,9 +30,12 @@
\setlanguagealias[variant=canadian]{english}{canadian}
\setlanguagealias[variant=newzealand]{english}{newzealand}
-\providebool{british@hyphen}
-\providebool{english@ordinalmonthday}
-\providebool{british@dateformat}
+\@ifundefined{ifbritish@hyphen}%
+ {\newif\ifbritish@hyphen}{}
+\@ifundefined{ifenglish@ordinalmonthday}%
+ {\newif\ifenglish@ordinalmonthday}{}
+\@ifundefined{ifbritish@dateformat}%
+ {\newif\ifbritish@dateformat}{}
% US English (\l@english) is default
% Initialize its settings
@@ -41,49 +44,46 @@
\english@ordinalmonthdayfalse
\british@dateformatfalse
-% Option ordinalmonthday
-\define@boolkey{english}[english@]{ordinalmonthday}[true]{}
-
-\define@choicekey*+{english}{variant}[\xpg@val\xpg@nr]{uk,british,us,american,usmax,australian,newzealand,canadian}[us]{%
- \ifcase\xpg@nr\relax
+\DeclareKeys[polyglossia/gloss/english]
+ {
+ ordinalmonthday.if = english@ordinalmonthday,
+ ordinalmonthday.default:n = true,
+ variant.choices:nn = { uk, british, us, american, usmax, australian, newzealand, canadian }
+ {%
+ \ifcase\UseName{l_keys_choice_int}\or
% uk:
\british@hyphentrue
\british@dateformattrue
\english@ordinalmonthdaytrue
\SetLanguageKeys{english}{babelname=british,bcp47=en-GB,bcp47-language=en,bcp47-region=GB}%
- \xpg@info{Option: English, variant=british}%
\or
% british:
\british@hyphentrue
\british@dateformattrue
\english@ordinalmonthdaytrue
\SetLanguageKeys{english}{babelname=british,bcp47=en-GB,bcp47-language=en,bcp47-region=GB}%
- \xpg@info{Option: english variant=british}%
\or
% us:
\british@hyphenfalse
\british@dateformatfalse
\english@ordinalmonthdayfalse
\SetLanguageKeys{english}{babelname=american,bcp47=en-US,bcp47-language=en,bcp47-region=US}%
- \xpg@info{Option: English, variant=american}%
\or
% american:
\british@hyphenfalse
\british@dateformatfalse
\english@ordinalmonthdayfalse
\SetLanguageKeys{english}{babelname=american,bcp47=en-US,bcp47-language=en,bcp47-region=US}%
- \xpg@info{Option: English, variant=american}%
\or
% usmax:
\british@hyphenfalse
\british@dateformatfalse
\english@ordinalmonthdayfalse
\SetLanguageKeys{english}{babelname=american,bcp47=en-US,bcp47-language=en,bcp47-region=US}%
- \xpg@info{Option: english variant=american (with additional patterns)}%
- \xpg@ifdefined{usenglishmax}{}%
+ \IfLanguageDefinedF{usenglishmax}%
{\xpg@warning{No hyphenation patterns were loaded for "US English Max"\MessageBreak
I will use the standard patterns for US English instead}%
- \adddialect\l@usenglishmax\l@english\relax%
+ \adddialect\l@usenglishmax\l@english
}%
\def\english@variant{usenglishmax}%
\or
@@ -94,8 +94,7 @@
\british@dateformattrue
\english@ordinalmonthdayfalse
\SetLanguageKeys{english}{babelname=australian,bcp47=en-AU,bcp47-language=en,bcp47-region=AU}%
- \xpg@info{Option: English, variant=australian}%
- \adddialect\l@australian\l@english%
+ \adddialect\l@australian\l@english
\or
% newzealand:
% These use the british hyphenation patterns
@@ -104,8 +103,7 @@
\british@dateformattrue
\english@ordinalmonthdayfalse
\SetLanguageKeys{english}{babelname=newzealand,bcp47=en-NZ,bcp47-language=en,bcp47-region=NZ}%
- \xpg@info{Option: English, variant=newzealand}%
- \adddialect\l@newzealand\l@english%
+ \adddialect\l@newzealand\l@english
\or
% canadian:
% This is currently equivalent to usenglish (as in babel)
@@ -113,45 +111,35 @@
\british@dateformatfalse
\english@ordinalmonthdayfalse
\SetLanguageKeys{english}{babelname=canadian,bcp47=en-CA,bcp47-language=en,bcp47-region=CA}%
- \xpg@info{Option: English, variant=american}%
- \adddialect\l@canadian\l@english%
+ \adddialect\l@canadian\l@english
\fi
\ifbritish@hyphen
- \xpg@ifdefined{ukenglish}{}%
+ \IfLanguageDefinedF{ukenglish}%
{\xpg@warning{No hyphenation patterns were loaded for British English\MessageBreak
I will use the patterns for US English instead}%
- \adddialect\l@ukenglish\l@english\relax%
+ \adddialect\l@ukenglish\l@english
}%
\def\english@variant{ukenglish}%
\fi
-}{\xpg@warning{Unknown English variant `#1'}}
+ },
+ variant.default:n = us,
+ variant/unknown.code = \xpg@warning{Unknown English variant `#1'},
+ }
% Register default options
-\xpg@initialize@gloss@options{english}{variant=us,ordinalmonthday=false}
+\InitializeGlossOptions{english}{variant=us,ordinalmonthday=false}
% Register alias options
-\xpg@set@alias@values{english}{variant}{us}{american}
-\xpg@set@alias@values{english}{variant}{uk}{british}
+\SetLanguageAliasValues{english}{variant}{us,american}
+\SetLanguageAliasValues{english}{variant}{uk,british}
\ifxetex
% Check if \l@english is defined. If not, try to set it to some variety
- % (specific order as in the csv list below), or null language if everything fails
- \xpg@ifdefined{english}{}{%
- \def\do##1{%
- \xpg@ifdefined{#1}%
- {\csletcs{l@english}{l@#1}\listbreak}%
- {%
- \xpg@warning{No hyphenation patterns for English found"\MessageBreak
- I will use the 'null' language instead}%
- \adddialect\l@english0
- }%
- }%
- \docsvlist{british, american, usenglishmax, australian, newzealand}
- \xpg@ifdefined{english}{}{}
- }%
+ % (specific order as in the csv list), or null language if everything fails
+ \TryPatternWithFallback{english}{british, american, usenglishmax, australian, newzealand}
\fi
\def\english@language{%
- \polyglossia@setup@language@patterns{\english@variant}%
+ \SetupPolyglossiaLangPatterns{\english@variant}%
}%
\def\captionsenglish{%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-eo.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-eo.ldf
index 6c0cb13ecdc..a5d24deeb0b 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-eo.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-eo.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-eo.ldf}[polyglossia: module for eo (Esperanto)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{esperanto}
+\InheritGlossFile{esperanto}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-es-ES.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-es-ES.ldf
index 0b0555e3727..70f60cb8e31 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-es-ES.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-es-ES.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-es-ES.ldf}[polyglossia: module for es-ES (Spain's Spanish)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{spanish}
+\InheritGlossFile{spanish}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-es-MX.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-es-MX.ldf
index 9e459726429..28ad8c60d35 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-es-MX.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-es-MX.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-es-MX.ldf}[polyglossia: module for es-MX (Mexican Spanish)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{spanish}
+\InheritGlossFile{spanish}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-es.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-es.ldf
index fb470d36c9c..19e07362d82 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-es.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-es.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-es.ldf}[polyglossia: module for es (Spanish)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{spanish}
+\InheritGlossFile{spanish}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-esperanto.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-esperanto.ldf
index bd4e63a4a40..e83ba9cdd09 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-esperanto.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-esperanto.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-esperanto.ldf}[polyglossia: module for Esperanto]
\PolyglossiaSetup{esperanto}{
@@ -29,10 +29,10 @@
\def\figurename{Figuro}%
\def\tablename{Tabelo}%
%\def\thepart{}%
- %\def\partname{}%
+ \def\partname{Parto}%
\def\pagename{Paĝo}%
\def\seename{vidu}%
- \def\alsoname{Parto}%
+ \def\alsoname{vidu ankaŭ}%
\def\enclname{Aldono(j)}%
\def\ccname{Kopie al}%
\def\headtoname{Al}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-estonian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-estonian.ldf
index 5dfb90ea569..3ae068c0e83 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-estonian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-estonian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-estonian.ldf}[polyglossia: module for Estonian]
\PolyglossiaSetup{estonian}{
@@ -38,7 +38,7 @@
\def\ccname{Koopia(d)}%
%\def\headtoname{}%
\def\proofname{Korrektuur}%
- \def\glossaryname{Glossary}% <-- need translation
+ \def\glossaryname{Sõnastik}%
}
\def\dateestonian{%
\def\today{\number\day.\space\ifcase\month\or
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-et.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-et.ldf
index 5ab0c3f3bae..43b2c150748 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-et.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-et.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-et.ldf}[polyglossia: module for et (Estonian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{estonian}
+\InheritGlossFile{estonian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-eu.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-eu.ldf
index 98448839b1f..009c53cecce 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-eu.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-eu.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-eu.ldf}[polyglossia: module for eu (Basque)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{basque}
+\InheritGlossFile{basque}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-fa.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-fa.ldf
index 08c337bdfb0..09cc80b5f3c 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-fa.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-fa.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-fa.ldf}[polyglossia: module for fa (Persian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{persian}
+\InheritGlossFile{persian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-farsi.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-farsi.ldf
index 09ae993ea43..28ceff04ce6 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-farsi.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-farsi.ldf
@@ -1,10 +1,10 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-farsi.ldf}[polyglossia: module for Farsi]
% We only provide this gloss for babel compatibility.
% The proper English language name is Persian.
-\xpg@load@master@language{persian}
+\InheritGlossFile{persian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-fi.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-fi.ldf
index 3b03ab4b433..1624f23a2ce 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-fi.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-fi.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-fi.ldf}[polyglossia: module for fi (Finnish)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{finnish}
+\InheritGlossFile{finnish}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-finnish.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-finnish.ldf
index 3bd83a947d3..5e33e87f194 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-finnish.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-finnish.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-finnish.ldf}[polyglossia: module for Finnish]
\PolyglossiaSetup{finnish}{
@@ -16,51 +16,54 @@
% BCP-47 compliant aliases
\setlanguagealias*{finnish}{fi}
-\define@boolkey{finnish}[finnish@]{babelshorthands}[true]{}
-
\newif\if@finnish@schoolhyphens
\newif\if@finnish@babelhyphens
-\define@choicekey*+{finnish}{hyphens}[\xpg@val\xpg@nr]{default,school,babel}[default]{%
- \ifcase\xpg@nr\relax
- % default:
- \@finnish@schoolhyphensfalse
- \@finnish@babelhyphensfalse
- \or
- % school:
- \@finnish@schoolhyphenstrue
- \@finnish@babelhyphensfalse
- \or
- % babel:
- \@finnish@schoolhyphensfalse
- \@finnish@babelhyphenstrue
- \fi
- \xpg@info{Option: Finnish, hyphens=\xpg@val}%
-}{\xpg@warning{Unknown Finnish hyphens `#1'}}
-
-% backwards compatibility
-\define@boolkey{finnish}[finnish@]{schoolhyphens}[true]{%
- \iffinnish@schoolhyphens
- \@finnish@schoolhyphenstrue
- \@finnish@babelhyphensfalse
- \else
- \@finnish@schoolhyphensfalse
- \fi
-}
+
+\DeclareKeys[polyglossia/gloss/finnish]
+ {
+ babelshorthands.if = finnish@babelshorthands,
+ babelshorthands.default:n = true,
+ hyphens.choice:,
+ hyphens / default.code =
+ {%
+ \@finnish@schoolhyphensfalse
+ \@finnish@babelhyphensfalse
+ },
+ hyphens / school.code =
+ {%
+ \@finnish@schoolhyphenstrue
+ \@finnish@babelhyphensfalse
+ },
+ hyphens / babel.code =
+ {%
+ \@finnish@schoolhyphensfalse
+ \@finnish@babelhyphenstrue
+ },
+ hyphens.default:n = default,
+ hyphens/unknown.code = \xpg@warning{Unknown Finnish hyphens `#1'},
+ schoolhyphens.choice:,
+ schoolhyphens / true.code =
+ {%
+ \@finnish@schoolhyphenstrue
+ \@finnish@babelhyphensfalse
+ },
+ schoolhyphens / false.code =
+ {%
+ \@finnish@schoolhyphensfalse
+ },
+ schoolhyphens.default:n = true
+ }
% Register default options
-\xpg@initialize@gloss@options{finnish}{babelshorthands=false,hyphens=default}
+\InitializeGlossOptions{finnish}{babelshorthands=false,hyphens=default}
\ifsystem@babelshorthands
- \setkeys{finnish}{babelshorthands=true}
+ \SetGlossOptions{finnish}{babelshorthands=true}
\else
- \setkeys{finnish}{babelshorthands=false}
+ \SetGlossOptions{finnish}{babelshorthands=false}
\fi
-\ifcsundef{initiate@active@char}{%
- \input{babelsh.def}%
- \initiate@active@char{"}%
- \shorthandoff{"}%
-}{}
+\InitializeBabelShorthands
\def\finnish@shorthands{%
\xpg@activate@shorthands%
@@ -105,15 +108,15 @@
\def\finnish@language{%
\if@finnish@schoolhyphens
- \xpg@ifdefined{schoolfinnish}{%
- \polyglossia@setup@language@patterns{schoolfinnish}%
+ \IfLanguageDefinedTF{schoolfinnish}{%
+ \SetupPolyglossiaLangPatterns{schoolfinnish}%
}{%
\xpg@warning{Finnish 'School' hyphenation patterns (schoolfinnish) not available.\MessageBreak
I will use the standard patterns for Finnish instead}%
- \polyglossia@setup@language@patterns{finnish}%
+ \SetupPolyglossiaLangPatterns{finnish}%
}%
\else
- \polyglossia@setup@language@patterns{finnish}%
+ \SetupPolyglossiaLangPatterns{finnish}%
\fi
}
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-fr-CA-u-sd-canb.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-fr-CA-u-sd-canb.ldf
index 49e1c088687..33586fd863a 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-fr-CA-u-sd-canb.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-fr-CA-u-sd-canb.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-fr-CA-u-sd-canb.ldf}[polyglossia: module for fr-CA-u-sd-canb (Canadian French, Acadian subvariety)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{french}
+\InheritGlossFile{french}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-fr-CA.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-fr-CA.ldf
index 8c8058a00e9..2e5c89f0d4b 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-fr-CA.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-fr-CA.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-fr-CA.ldf}[polyglossia: module for fr-CA (Canadian French)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{french}
+\InheritGlossFile{french}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-fr-CH.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-fr-CH.ldf
index b8c2126df7c..25cc652cee4 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-fr-CH.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-fr-CH.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-fr-CH.ldf}[polyglossia: module for fr-CH (Swiss French)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{french}
+\InheritGlossFile{french}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-fr-FR.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-fr-FR.ldf
index 41f1eb0ad50..92682395655 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-fr-FR.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-fr-FR.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-fr-FR.ldf}[polyglossia: module for fr-FR (France's French)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{french}
+\InheritGlossFile{french}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-fr.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-fr.ldf
index 672c6de8939..b42b42741f5 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-fr.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-fr.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-fr.ldf}[polyglossia: module for fr (French)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{french}
+\InheritGlossFile{french}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-french.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-french.ldf
index 2b0c795cdeb..401f4981c23 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-french.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-french.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-french.ldf}[polyglossia: module for French]
@@ -28,43 +28,9 @@
\setlanguagealias[variant=canadian]{french}{canadien}
\def\french@variant{french}
-\define@choicekey*+{french}{variant}[\xpg@val\xpg@nr]{french,canadian,acadian,swiss}[french]{%
- \ifcase\xpg@nr\relax
- % french:
- \def\french@variant{french}%
- \SetLanguageKeys{french}{babelname=french,bcp47=fr-FR,bcp47-language=fr,bcp47-region=FR}%
- \french@thincolonspacefalse
- \or
- % canadian:
- \def\french@variant{canadien}%
- \SetLanguageKeys{french}{babelname=canadien,bcp47=fr-CA,bcp47-language=fr,bcp47-region=CA,bcp47-extension-u=sd-caqc}%
- \xpg@ifdefined{canadien}{}%
- {\xpg@warning{No hyphenation patterns were loaded for "French (Canada)"\MessageBreak
- I will use the standard patterns for French instead}%
- \adddialect\l@canadien\l@french\relax}%
- \french@thincolonspacefalse
- \or
- % acadian:
- \def\french@variant{acadian}%
- \SetLanguageKeys{french}{babelname=acadian,bcp47=fr-CA-u-sd-canb,bcp47-language=fr,bcp47-region=CA,bcp47-extension-u=sd-canb}%
- \xpg@ifdefined{acadian}{}%
- {\xpg@warning{No hyphenation patterns were loaded for "French (Canada, Acadian)"\MessageBreak
- I will use the standard patterns for French instead}%
- \adddialect\l@acadian\l@french\relax}%
- \french@thincolonspacefalse
- \or
- % swiss:
- \def\french@variant{swissfrench}%
- \SetLanguageKeys{french}{babelname=french,bcp47=fr-CH,bcp47-language=fr,bcp47-region=CH}%
- \adddialect\l@swissfrench\l@french\relax%
- \french@thincolonspacetrue
- \fi
- \xpg@info{Option: French, variant=\xpg@val}%
-}{\xpg@warning{Unknown French variant `#1'}}
-
\def\french@language{%
- \polyglossia@setup@language@patterns{\french@variant}%
+ \SetupPolyglossiaLangPatterns{\french@variant}%
}%
\ifluatex
@@ -84,91 +50,103 @@
% Save original footnote definition
% Do this at the end of the preamble to catch other
% packages' footnote changes (#391)
-\AtEndPreamble{%
+\AddToHook{begindocument/before}{%
\let\xpg@orig@makefntext\@makefntext
}
-\define@boolkey{french}[french@]{frenchfootnote}[true]{}
-
-\define@boolkey{french}[french@]{autospacing}[true]{}
-\french@autospacingtrue
-
-\define@boolkey{french}[french@]{frenchpart}[true]{}
-\french@frenchparttrue
-
-\newif\iffrench@autospaceguillemets
-\define@boolkey{french}[french@]{autospaceguillemets}[true]{}
-\french@autospaceguillemetstrue
-
-\newif\iffrench@thincolonspace
-\define@boolkey{french}[french@]{thincolonspace}[true]{}
-\french@thincolonspacefalse
-
-% Backwards compatibility
-\define@boolkey{french}[french@]{automaticspacesaroundguillemets}[true]{%
- \iffrench@automaticspacesaroundguillemets
- \setkeys{french}{autospaceguillemets=true}%
- \else
- \setkeys{french}{autospaceguillemets=false}%
- \fi
-}
-
% name is for compatibility with babel
\let\french@ttfamilyORI\ttfamily
\DeclareRobustCommand\french@ttfamilyFB{\nofrench@punctuation\french@ttfamilyORI}
-% Allow to switch on autospacing in ttfamily context
-\define@boolkey{french}[french@]{autospacetypewriter}[true]{}
-\french@autospacetypewriterfalse
-
-% This is how babel-french has it
-\define@boolkey{french}[french@]{OriginalTypewriter}[true]{%
- \iffrench@OriginalTypewriter
- \setkeys{french}{autospacetypewriter=false}%
- \else
- \setkeys{french}{autospacetypewriter=true}%
- \fi
-}
-
% Configuration of item labels
\def\french@itemi{\textemdash}
\def\french@itemii{\textemdash}
\def\french@itemiii{\textemdash}
\def\french@itemiv{\textemdash}
-\define@key{french}{itemlabels}[\textemdash]{%
- \def\french@itemi{#1}
- \def\french@itemii{#1}
- \def\french@itemiii{#1}
- \def\french@itemiv{#1}
-}
-
-\define@key{french}{itemlabeli}[\textemdash]{%
- \def\french@itemi{#1}
-}
-
-\define@key{french}{itemlabelii}[\textemdash]{%
- \def\french@itemii{#1}
-}
-
-\define@key{french}{itemlabeliii}[\textemdash]{%
- \def\french@itemiii{#1}
-}
-
-\define@key{french}{itemlabeliv}[\textemdash]{%
- \def\french@itemiv{#1}
-}
+\newif\iffrench@autospacetypewriter
+\french@autospacetypewriterfalse
+\newif\iffrench@autospacing
+\french@autospacingtrue
+\newif\iffrench@frenchpart
+\french@frenchparttrue
+\newif\iffrench@autospaceguillemets
+\french@autospaceguillemetstrue
-\define@boolkey{french}[french@]{frenchitemlabels}[true]{}
+\DeclareKeys[polyglossia/gloss/french]
+ {
+ variant.choice:,
+ variant / french.code =
+ {%
+ \def\french@variant{french}%
+ \SetLanguageKeys{french}{babelname=french,bcp47=fr-FR,bcp47-language=fr,bcp47-region=FR}%
+ \french@thincolonspacefalse
+ },
+ variant / canadian.code =
+ {%
+ \def\french@variant{canadien}%
+ \SetLanguageKeys{french}{babelname=canadien,bcp47=fr-CA,bcp47-language=fr,bcp47-region=CA,bcp47-extension-u=sd-caqc}%
+ \IfLanguageDefinedF{canadien}%
+ {\xpg@warning{No hyphenation patterns were loaded for "French (Canada)"\MessageBreak
+ I will use the standard patterns for French instead}%
+ \adddialect\l@canadien\l@french\relax}%
+ \french@thincolonspacefalse
+ },
+ variant / acadian.code =
+ {%
+ \def\french@variant{acadian}%
+ \SetLanguageKeys{french}{babelname=acadian,bcp47=fr-CA-u-sd-canb,bcp47-language=fr,bcp47-region=CA,bcp47-extension-u=sd-canb}%
+ \IfLanguageDefinedF{acadian}%
+ {\xpg@warning{No hyphenation patterns were loaded for "French (Canada, Acadian)"\MessageBreak
+ I will use the standard patterns for French instead}%
+ \adddialect\l@acadian\l@french\relax}%
+ \french@thincolonspacefalse
+ },
+ variant / swiss.code =
+ {%
+ \def\french@variant{swissfrench}%
+ \SetLanguageKeys{french}{babelname=french,bcp47=fr-CH,bcp47-language=fr,bcp47-region=CH}%
+ \adddialect\l@swissfrench\l@french\relax%
+ \french@thincolonspacetrue
+ },
+ variant.default:n = french,
+ variant/unknown.code = \xpg@warning{Unknown French variant `#1'},
+ frenchfootnote.if = french@frenchfootnote,
+ frenchfootnote.default:n = true,
+ autospacing.if = french@autospacing,
+ autospacing.default:n = true,
+ frenchpart.if = french@frenchpart,
+ frenchpart.default:n = true,
+ autospaceguillemets.if = french@autospaceguillemets,
+ autospaceguillemets.default:n = true,
+ thincolonspace.if = french@thincolonspace,
+ thincolonspace.default:n = true,
+ automaticspacesaroundguillemets.meta:n = {autospaceguillemets=#1},
+ autospacetypewriter.if = french@autospacetypewriter,
+ autospacetypewriter.default:n = true,
+ originaltypewriter.meta:n = {autospacetypewriter=#1},
+ itemlabeli.store = \french@itemi,
+ itemlabelii.store = \french@itemii,
+ itemlabeliii.store = \french@itemiii,
+ itemlabeliv.store = \french@itemiv,
+ frenchitemlabels.if = french@frenchitemlabels,
+ frenchitemlabels.default:n = true,
+ itemlabels.code =
+ \def\french@itemi{#1}%
+ \def\french@itemii{#1}%
+ \def\french@itemiii{#1}%
+ \def\french@itemiv{#1},
+ itemlabels.default:n = \textemdash
+ }
% Register default options
-\xpg@initialize@gloss@options{french}{variant=french,autospacing=true,thincolonspace=false,
+\InitializeGlossOptions{french}{variant=french,autospacing=true,thincolonspace=false,
autospaceguillemets=true,autospacetypewriter=false,
frenchfootnote=false,frenchitemlabels=false,
itemlabels=\textemdash,itemlabeli=\textemdash,itemlabelii=\textemdash,
itemlabeliii=\textemdash,itemlabeliv=\textemdash}
% Register alias options
-\xpg@set@alias@values{french}{variant}{canadian}{acadian}
+\SetLanguageAliasValues{french}{variant}{canadian,acadian}
\def\french@fontsetup{%
@@ -339,100 +317,100 @@
\def\french@capsformat{%
% Change part heading
% With titlesec
- \ifcsdef{titleformat}{%
- \ifcsdef{NR@part}{% Hyperref (nameref)
- \let\xpg@save@part@format\NR@part%
- \patchcmd{\NR@part}%
- {\partname\nobreakspace\thepart}%
- {\xpg@french@part\nobreakspace\partname}%
- {}%
- {\xpg@warning{Failed to patch part for French}}%
- }{% not hyperref
- \ifcsdef{@part}{%
- \let\xpg@save@part@format\@part%
- \patchcmd{\@part}%
+ \@ifundefined{titleformat}{%
+ % With KOMA
+ \@ifundefined{sectionformat}{%
+ % With memoir
+ \@ifundefined{@memptsize}{% (not \ifdefined\@memptsize)
+ % With standard classes
+ \@ifundefined{NR@part}{% not hyperref
+ \@ifundefined{@part}{}{%
+ \let\xpg@save@part@format\@part%
+ \patchcmd{\@part}%
+ {\partname\nobreakspace\thepart}%
+ {\xpg@french@part\nobreakspace\partname}%
+ {}%
+ {\@ifundefined{part}{}{\xpg@warning{Failed to patch part for French}}}%
+ }% (end \ifdefined \@part)
+ }{% Hyperref
+ \let\xpg@save@part@format\NR@part%
+ \patchcmd{\NR@part}%
{\partname\nobreakspace\thepart}%
{\xpg@french@part\nobreakspace\partname}%
{}%
{\xpg@warning{Failed to patch part for French}}%
- }{}%
- }%
- }{% (not \ifdefined\titleformat)
- % With KOMA
- \ifcsdef{sectionformat}{%
- \ifcsdef{partformat}{%
- \let\xpg@save@part@format\partformat%
- \renewcommand{\partformat}{\xpg@french@part~\partname}%
- }{}%
- }{% (not \ifdefined\sectionformat)
- % With memoir
- \ifcsdef{@memptsize}{%
- \ifcsdef{NR@part}{% Hyperref (nameref)
- \let\xpg@save@part@format\NR@part%
- \patchcmd{\NR@part}{\printpartname \partnamenum \printpartnum}%
- {\partnamefont\xpg@french@part\partnamenum\printpartname}%
- {}%
- {\xpg@warning{Failed to patch part for French}}%
- }{% not hyperref
- \ifcsdef{@part}{%
+ }% (end \ifdefined\NR@part)
+ }{%
+ \@ifundefined{NR@part}{% not hyperref
+ \@ifundefined{@part}{}{%
\let\xpg@save@part@format\@part%
\patchcmd{\@part}{\printpartname \partnamenum \printpartnum}%
{\partnamefont\xpg@french@part\partnamenum\printpartname}%
{}%
{\xpg@warning{Failed to patch part for French}}%
- }{}%
- }%
- }{% (not \ifdefined\@memptsize)
- % With standard classes
- \ifcsdef{NR@part}{% Hyperref
+ }%
+ }{% Hyperref (nameref)
\let\xpg@save@part@format\NR@part%
- \patchcmd{\NR@part}%
+ \patchcmd{\NR@part}{\printpartname \partnamenum \printpartnum}%
+ {\partnamefont\xpg@french@part\partnamenum\printpartname}%
+ {}%
+ {\xpg@warning{Failed to patch part for French}}%
+ }%
+ }% (end \ifdefined\@memptsize)
+ }{% (\ifdefined\sectionformat)
+ \@ifundefined{partformat}{}{%
+ \let\xpg@save@part@format\partformat%
+ \renewcommand{\partformat}{\xpg@french@part~\partname}%
+ }%
+ }% (end \ifdefined\sectionformat)
+ }{% (\ifdefined\titleformat)
+ \@ifundefined{NR@part}{% not hyperref
+ \@ifundefined{@part}{}{%
+ \let\xpg@save@part@format\@part%
+ \patchcmd{\@part}%
{\partname\nobreakspace\thepart}%
{\xpg@french@part\nobreakspace\partname}%
{}%
{\xpg@warning{Failed to patch part for French}}%
- }{% not hyperref
- \ifcsdef{@part}{%
- \let\xpg@save@part@format\@part%
- \patchcmd{\@part}%
- {\partname\nobreakspace\thepart}%
- {\xpg@french@part\nobreakspace\partname}%
- {}%
- {\ifcsdef{part}{\xpg@warning{Failed to patch part for French}}{}}%
- }{}% (end \ifdefined \NR@part)
- }% (end \ifdefined\@part)
- }% (end \ifdefined\@memptsize)
- }% (end \ifdefined\sectionformat)
+ }%
+ }{% Hyperref (nameref)
+ \let\xpg@save@part@format\NR@part%
+ \patchcmd{\NR@part}%
+ {\partname\nobreakspace\thepart}%
+ {\xpg@french@part\nobreakspace\partname}%
+ {}%
+ {\xpg@warning{Failed to patch part for French}}%
+ }%
}% (end \ifdefined\titleformat)
}
\def\nofrench@capsformat{%
% Reset chapter and part heading
- \ifcsdef{titleformat}{%
- % With titlesec
- \ifcsdef{xpg@save@part@format}{%
- \ifcsdef{NR@part}{%
- \let\NR@part\xpg@save@part@format%
- }{%
- \let\@part\xpg@save@part@format%
- }%
- }{}%
- }{% (not \ifdefined\titleformat)
- \ifcsdef{sectionformat}{%
- % With KOMA
- \ifcsdef{xpg@save@part@format}{%
- \let\partformat\xpg@save@part@format
- }{}%
- }{%
+ \@ifundefined{titleformat}{%
+ \@ifundefined{sectionformat}{%
% With memoir and standard classes
- \ifcsdef{xpg@save@part@format}{%
- \ifcsdef{NR@part}{%
- \let\NR@part\xpg@save@part@format%
- }{%
+ \@ifundefined{xpg@save@part@format}{}{%
+ \@ifundefined{NR@part}{%
\let\@part\xpg@save@part@format%
+ }{%
+ \let\NR@part\xpg@save@part@format%
}%
- }{}%
+ }%
+ }{%
+ % With KOMA
+ \@ifundefined{xpg@save@part@format}{}{%
+ \let\partformat\xpg@save@part@format
+ }%
}% (end \ifdefined\sectionformat)
+ }{% (\ifdefined\titleformat)
+ % With titlesec
+ \@ifundefined{xpg@save@part@format}{}{%
+ \@ifundefined{NR@part}{%
+ \let\@part\xpg@save@part@format%
+ }{%
+ \let\NR@part\xpg@save@part@format%
+ }%
+ }%
}% (end \ifdefined\titleformat)
}
@@ -443,7 +421,7 @@
\if@xpg@french@footnote@set%
\else%
\iffrench@frenchfootnote%
- \ifdefstring{\xpg@main@language}{french}{%
+ \IfMainLanguageTF{french}{%
\ifx\@makefntext\undefined\else%
\long\def\french@makefntext##1{%
\parindent1em \noindent\quad%
@@ -467,7 +445,7 @@
\if@xpg@french@itemlabels@set%
\else%
\iffrench@frenchitemlabels
- \ifdefstring{\xpg@main@language}{french}{%
+ \IfMainLanguageTF{french}{%
\renewcommand{\labelitemi}{\french@itemi}%
\renewcommand{\labelitemii}{\french@itemii}%
\renewcommand{\labelitemiii}{\french@itemiii}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-friulan.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-friulan.ldf
index 2db31a34152..70e3ae0d475 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-friulan.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-friulan.ldf
@@ -1,10 +1,10 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-friulan.ldf}[polyglossia: module for Friulian]
% We only provide this gloss for babel compatibility.
-\xpg@load@master@language{friulian}
+\InheritGlossFile{friulian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-friulian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-friulian.ldf
index 49b69eaf9dd..579f2af366d 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-friulian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-friulian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-friulian.ldf}[polyglossia: module for Friulian]
@@ -52,7 +52,7 @@
Lui\or Avost\or Setembar\or Otobar\or Novembar\or Dicembar%
\fi\space dal\space\number\year}}
-\AtEndPreamble{% the user or the class might define different values
+\AddToHook{begindocument/before}{% the user or the class might define different values
\edef\xpgfu@savedvalues{%
\clubpenalty=\the\clubpenalty\space
\@clubpenalty=\the\@clubpenalty\space
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-fur.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-fur.ldf
index ca0671bbe9a..807487e9cc8 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-fur.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-fur.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-fur.ldf}[polyglossia: module for fur (Friulian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{friulian}
+\InheritGlossFile{friulian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ga.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ga.ldf
index 02fd9e40091..4c9287deae4 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ga.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ga.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ga.ldf}[polyglossia: module for ga (Gaelic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{gaelic}
+\InheritGlossFile{gaelic}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-gaelic.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-gaelic.ldf
index 2cbf5adbc5e..f78c7250274 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-gaelic.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-gaelic.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-gaelic.ldf}[polyglossia: module for Gaelic]
@@ -22,23 +22,28 @@
\setlanguagealias[variant=scottish]{gaelic}{scottish}
\def\gaelic@variant{irish}
-\define@choicekey*+{gaelic}{variant}[\xpg@val\xpg@nr]{irish,scottish}[irish]{%
- \ifcase\xpg@nr\relax
- % irish:
- \gdef\gaelic@variant{irish}%
- \SetLanguageKeys{gaelic}{language=Irish,langtag=IRI,babelname=irish,bcp47=ga,bcp47-language=ga}%
- \xpg@fontsetup@latin{gaelic}%
- \or
- % scottish:
- \gdef\gaelic@variant{scottish}%
- \SetLanguageKeys{gaelic}{language=Gaelic,langtag=GAE,babelname=scottish,bcp47=gd,bcp47-language=gd}%
- \xpg@fontsetup@latin{gaelic}%
- \fi
- \xpg@info{Option: gaelic, variant=\xpg@val}%
-}{\xpg@warning{Unknown gaelic variant `#1'}}
+
+\DeclareKeys[polyglossia/gloss/gaelic]
+ {
+ variant.choice:,
+ variant / irish.code =
+ {%
+ \gdef\gaelic@variant{irish}%
+ \SetLanguageKeys{gaelic}{language=Irish,langtag=IRI,babelname=irish,bcp47=ga,bcp47-language=ga}%
+ \SetupLatinPolyglossiaFont{gaelic}%
+ },
+ variant / scottish.code =
+ {%
+ \gdef\gaelic@variant{scottish}%
+ \SetLanguageKeys{gaelic}{language=Gaelic,langtag=GAE,babelname=scottish,bcp47=gd,bcp47-language=gd}%
+ \SetupLatinPolyglossiaFont{gaelic}%
+ },
+ variant.default:n = irish,
+ variant/unknown.code = \xpg@warning{Unknown gaelic variant `#1'}
+ }
% Register default options
-\xpg@initialize@gloss@options{gaelic}{variant=irish}
+\InitializeGlossOptions{gaelic}{variant=irish}
\def\captionsgaelic@irish{%
\def\refname{Tagairtí}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-galician.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-galician.ldf
index 469af7e8cde..1e489682f15 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-galician.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-galician.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-galician.ldf}[polyglossia: module for Galician]
\PolyglossiaSetup{galician}{
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-gd.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-gd.ldf
index 94842fd4d52..58045731450 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-gd.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-gd.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-gd.ldf}[polyglossia: module for gd (Gaelic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{gaelic}
+\InheritGlossFile{gaelic}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-georgian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-georgian.ldf
index e58cede44b3..9a5b693adf4 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-georgian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-georgian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-georgian.ldf}[polyglossia: module for Georgian]
@@ -18,34 +18,37 @@
\setlanguagealias*{georgian}{ka}
\newif\ifgeorgian@numerals
-\define@key{georgian}{numerals}[arabic]{%
- \ifstrequal{#1}{georgian}%
- {\georgian@numeralstrue%
- \SetLanguageKeys{georgian}{bcp47-extension-u=nu-geor}%
- }%
- {\georgian@numeralsfalse%
- \SetLanguageKeys{georgian}{bcp47-extension-u=nu-latn}%
- }%
-}
-
-\define@boolkey{georgian}[georgian@]{babelshorthands}[true]{}
-\define@boolkey{georgian}[georgian@]{oldmonthnames}[true]{}
+\DeclareKeys[polyglossia/gloss/georgian]
+ {
+ babelshorthands.if = georgian@babelshorthands,
+ babelshorthands.default:n = true,
+ oldmonthnames.if = georgian@oldmonthnames,
+ oldmonthnames.default:n = true,
+ numerals.choice:,
+ numerals / arabic.code =
+ {%
+ \georgian@numeralsfalse
+ \SetLanguageKeys{georgian}{bcp47-extension-u=nu-latn}%
+ },
+ numerals / georgian.code =
+ {%
+ \georgian@numeralstrue
+ \SetLanguageKeys{georgian}{bcp47-extension-u=nu-geor}%
+ },
+ numerals.default:n = arabic
+ }
% Register default options
-\xpg@initialize@gloss@options{georgian}{babelshorthands=false,oldmonthnames=false,numerals=arabic}
+\InitializeGlossOptions{georgian}{babelshorthands=false,oldmonthnames=false,numerals=arabic}
\ifsystem@babelshorthands
- \setkeys{georgian}{babelshorthands=true}
+ \SetGlossOptions{georgian}{babelshorthands=true}
\else
- \setkeys{georgian}{babelshorthands=false}
+ \SetGlossOptions{georgian}{babelshorthands=false}
\fi
-\ifcsundef{initiate@active@char}{%
- \input{babelsh.def}%
- \initiate@active@char{"}%
- \shorthandoff{"}%
-}{}
+\InitializeBabelShorthands
\def\georgian@shorthands{%
\xpg@activate@shorthands%
@@ -80,7 +83,7 @@
\def\@Ccdash{\leavevmode
\nobreak\cyrdash\nobreak\hskip.35em\ignorespaces}%
\ifx\cyrdash\undefined
- \def\cyrdash{\hbox to.8em{\textendash\hss\textendash}}%
+ \def\cyrdash{\leavevmode\hbox to.8em{\textendash\hss\textendash}}%
\fi
\declare@shorthand{georgian}{",}{\nobreak\hskip.2em\ignorespaces}%
}
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-german.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-german.ldf
index 918b759eb80..1980f9d179e 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-german.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-german.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-german.ldf}[polyglossia: module for German]
@@ -47,51 +47,11 @@
\newif\if@german@oldspelling
\@german@oldspellingfalse
-\define@choicekey*+{german}{spelling}[\xpg@val\xpg@nr]{new,old,1901,1996}[new]{%
- \ifcase\xpg@nr\relax
- % new:
- \@german@oldspellingfalse
- \or
- % old:
- \@german@oldspellingtrue
- \or
- % 1901:
- \@german@oldspellingtrue
- \or
- % 1996:
- \@german@oldspellingfalse
- \fi
- \german@set@babelname%
- \xpg@info{Option: German, spelling=\xpg@val}%
-}{\xpg@warning{Unknown German spelling `#1'}}
\newif\if@austrian@locale
\@austrian@localefalse
\newif\if@swiss@locale
\@swiss@localefalse
-\define@choicekey*+{german}{variant}[\xpg@val\xpg@nr]{german,austrian,swiss}[german]{%
- \ifcase\xpg@nr\relax
- % german:
- \@swiss@localefalse%
- \@austrian@localefalse%
- \or
- % austrian:
- \@austrian@localetrue%
- \@swiss@localefalse%
- \or
- % swiss:
- \@swiss@localetrue%
- \@austrian@localefalse%
- \xpg@ifdefined{swissgerman}{}%
- {%
- \xpg@warning{No hyphenation patterns were loaded for "Swiss German (Old Spelling)"\MessageBreak
- I will use the standard patterns for German (old spelling) instead}%
- \adddialect\l@swissgerman\l@german\relax%
- }%
- \fi
- \german@set@babelname%
- \xpg@info{Option: German, variant=\xpg@val}%
-}{\xpg@warning{Unknown German variant `#1'}}
\def\german@set@babelname{%
\if@german@oldspelling
@@ -140,58 +100,110 @@
}
\newif\if@german@blackletter
-\define@choicekey*+{german}{script}[\xpg@val\xpg@nr]{latin,blackletter,fraktur}[latin]{%
- \ifcase\xpg@nr\relax
- % latin:
- \@german@blackletterfalse%
- \or
- % blackletter:
- \@german@blacklettertrue%
- \or
- % fraktur:
- \@german@blacklettertrue%
- \fi
- \german@set@babelname%
- \xpg@info{Option: German, script=\xpg@val}%
-}{\xpg@warning{Unknown German script `#1'}}
-\define@boolkey{german}[german@]{capitaleszett}[true]{%
- \ifgerman@capitaleszett
- % MakeUppercase capitalizes the eszett (U+00DF) with U+1E9E
- \SetLanguageKeys{german}{bcp47-casing=de-x-eszett,bcp47-extension-x=eszett}
- \else
- % Capitalize eszett as <SS>
- \SetLanguageKeys{german}{bcp47-casing=de,bcp47-extension-x={}}
- \fi
-}
-
-
-% Option defunc'ed, as both XeTeX and LuaTeX meanwhile
-% use the experimental German hyphenation patterns by default.
-\define@boolkey{german}[german@]{latesthyphen}[true]{}
-
-\define@boolkey{german}[german@]{babelshorthands}[true]{}
+\DeclareKeys[polyglossia/gloss/german]
+ {
+ babelshorthands.if = german@babelshorthands,
+ babelshorthands.default:n = true,
+ latesthyphen.if = german@latesthyphen,
+ latesthyphen.default:n = true,
+ capitaleszett.choice:,
+ capitaleszett / true.code =
+ {% MakeUppercase capitalizes the eszett (U+00DF) with U+1E9E
+ \SetLanguageKeys{german}{bcp47-casing=de-x-eszett,bcp47-extension-x=eszett}%
+ },
+ capitaleszett / false.code =
+ {% Capitalize eszett as <SS>
+ \SetLanguageKeys{german}{bcp47-casing=de,bcp47-extension-x={}}%
+ },
+ capitaleszett.default:n = true,
+ script.choice:,
+ script / latin.code =
+ {%
+ \@german@blackletterfalse
+ \german@set@babelname
+ },
+ script / blackletter.code =
+ {%
+ \@german@blacklettertrue
+ \german@set@babelname
+ },
+ script / fraktur.code =
+ {%
+ \@german@blacklettertrue
+ \german@set@babelname
+ },
+ script.default:n = latin,
+ script/unknown.code = \xpg@warning{Unknown German script `#1'},
+ spelling.choice:,
+ spelling / new.code =
+ {%
+ \@german@oldspellingfalse
+ \german@set@babelname
+ },
+ spelling / old.code =
+ {%
+ \@german@oldspellingtrue
+ \german@set@babelname
+ },
+ spelling / 1901.code =
+ {%
+ \@german@oldspellingtrue
+ \german@set@babelname
+ },
+ spelling / 1996.code =
+ {%
+ \@german@oldspellingfalse
+ \german@set@babelname
+ },
+ spelling.default:n = new,
+ spelling/unknown.code = \xpg@warning{Unknown German spelling `#1'},
+ variant.choice:,
+ variant / german.code =
+ {%
+ \@swiss@localefalse
+ \@austrian@localefalse
+ \german@set@babelname
+ },
+ variant / austrian.code =
+ {%
+ \@austrian@localetrue
+ \@swiss@localefalse
+ \german@set@babelname
+ },
+ variant / swiss.code =
+ {%
+ \@swiss@localetrue
+ \@austrian@localefalse
+ \IfLanguageDefinedF{swissgerman}
+ {%
+ \xpg@warning{No hyphenation patterns were loaded for "Swiss German (Old Spelling)"\MessageBreak
+ I will use the standard patterns for German (old spelling) instead}%
+ \adddialect\l@swissgerman\l@german\relax
+ }%
+ \german@set@babelname
+ },
+ variant.default:n = german,
+ variant/unknown.code = \xpg@warning{Unknown German variant `#1'}
+ }
+
-\setkeys{german}{spelling,script,variant}
+\SetGlossOptions{german}{spelling,script,variant}
% Register default options
-\xpg@initialize@gloss@options{german}{variant=german,spelling=new,script=latin,babelshorthands=false}
+\InitializeGlossOptions{german}{variant=german,spelling=new,script=latin,babelshorthands=false}
% Register alias options
-\xpg@set@alias@values{german}{spelling}{new}{1996}
-\xpg@set@alias@values{german}{spelling}{old}{1901}
-\xpg@set@alias@values{german}{script}{blackletter}{fraktur}
+\SetLanguageAliasValues{german}{spelling}{new,1996}
+\SetLanguageAliasValues{german}{spelling}{old,1901}
+\SetLanguageAliasValues{german}{script}{blackletter,fraktur}
\ifsystem@babelshorthands
- \setkeys{german}{babelshorthands=true}
+ \SetGlossOptions{german}{babelshorthands=true}
\else
- \setkeys{german}{babelshorthands=false}
+ \SetGlossOptions{german}{babelshorthands=false}
\fi
-\ifcsundef{initiate@active@char}{%
- \input{babelsh.def}%
- \initiate@active@char{"}%
- \shorthandoff{"}%
-}{}
+\InitializeBabelShorthands
\def\german@shorthands{%
\xpg@activate@shorthands%
@@ -313,15 +325,15 @@
\def\german@language{%
\if@german@oldspelling
\if@swiss@locale
- \polyglossia@setup@language@patterns{swissgerman}%
+ \SetupPolyglossiaLangPatterns{swissgerman}%
\else
- \polyglossia@setup@language@patterns{german}%
+ \SetupPolyglossiaLangPatterns{german}%
\fi
\if@austrian@locale
\adddialect\l@austrian\l@german%
\fi
\else
- \polyglossia@setup@language@patterns{ngerman}%
+ \SetupPolyglossiaLangPatterns{ngerman}%
\if@austrian@locale
\adddialect\l@naustrian\l@ngerman%
\fi
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-germanb.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-germanb.ldf
index d5b6a8768b2..625478d0561 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-germanb.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-germanb.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-germanb.ldf}[polyglossia: module for German (old spelling)]
% We provide this as a babel alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-gl.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-gl.ldf
index 11c6fdff929..9b8442935e3 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-gl.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-gl.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-gl.ldf}[polyglossia: module for gl (Galician)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{galician}
+\InheritGlossFile{galician}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-grc.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-grc.ldf
index 82184ffaaa4..17733e08e61 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-grc.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-grc.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-grc.ldf}[polyglossia: module for grc (Greek)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{greek}
+\InheritGlossFile{greek}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-greek.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-greek.ldf
index 537379cb7f4..cfc57f0b639 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-greek.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-greek.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-greek.ldf}[polyglossia: module for Greek]
@@ -22,7 +22,7 @@
% BCP-47 compliant aliases
\setlanguagealias*[variant=ancient]{greek}{grc}
-\setlanguagealias*[varant=polytonic]{greek}{el-polyton}
+\setlanguagealias*[variant=polytonic]{greek}{el-polyton}
\setlanguagealias*[variant=monotonic]{greek}{el-monoton}
\setlanguagealias*{greek}{el}
@@ -42,44 +42,9 @@
\newif\if@greek@ancient\@greek@ancientfalse
\newif\if@greek@poly\@greek@polyfalse
-\define@choicekey*+{greek}{variant}[\xpg@val\xpg@nr]{monotonic,mono,polytonic,poly,ancient,ancientgreek}[monotonic]{%
- \xpg@ifdefined{greek}{}{%
- \xpg@nopatterns{greek}%
- \adddialect\l@greek\l@nohyphenation
- }%
- \ifcase\xpg@nr\relax
- % monotonic:
- \@greek@polyfalse
- \@greek@ancientfalse
- \or
- % mono:
- \@greek@polyfalse
- \@greek@ancientfalse
- \or
- % polytonic:
- \@greek@polytrue
- \@greek@ancientfalse
- \or
- % poly:
- \@greek@polytrue
- \@greek@ancientfalse
- \or
- % ancient:
- \@greek@polyfalse
- \@greek@ancienttrue
- \or
- % ancientgreek:
- \@greek@polyfalse
- \@greek@ancienttrue
- \fi
- \greek@set@langdata
- \xpg@info{Option: Greek, variant=\xpg@val}%
-}{\xpg@warning{Unknown Greek variant `#1'}}
-
-
\def\greek@set@langdata{%
\if@greek@ancient
- \xpg@ifdefined{ancientgreek}{}%
+ \IfLanguageDefinedF{ancientgreek}%
{\xpg@warning{No hyphenation patterns were loaded for Ancient Greek\MessageBreak
I will use the patterns loaded for \string\l@greek\space instead}%
\adddialect\l@ancientgreek\l@greek\relax}%
@@ -89,7 +54,7 @@
\SetLanguageKeys{greek}{babelname=greek,bcp47=grc,bcp47-language=grc,bcp47-variant={}}%
\else
\if@greek@poly
- \xpg@ifdefined{polygreek}{}%
+ \IfLanguageDefinedF{polygreek}%
{\xpg@warning{No hyphenation patterns were loaded for Polytonic Greek\MessageBreak
I will use the patterns loaded for \string\l@greek\space instead}%
\adddialect\l@polygreek\l@greek\relax}%
@@ -98,7 +63,7 @@
\def\dategreek{\datepolygreek}%
\SetLanguageKeys{greek}{babelname=polutonikogreek,bcp47=el-polyton,bcp47-language=el,bcp47-variant=polyton}%
\else% monotonic greek
- \xpg@ifdefined{monogreek}{}%
+ \IfLanguageDefinedF{monogreek}%
{\xpg@warning{No hyphenation patterns were loaded for Monotonic Greek\MessageBreak
I will use the patterns loaded for \string\l@greek\space instead}%
\adddialect\l@monogreek\l@greek\relax}%
@@ -112,42 +77,85 @@
\def\greek@language{%
- \polyglossia@setup@language@patterns{\greek@variant}%
+ \SetupPolyglossiaLangPatterns{\greek@variant}%
}
\newif\if@greek@numerals
-\define@choicekey*+{greek}{numerals}[\xpg@val\xpg@nr]{greek,arabic}[greek]{%
- \ifcase\xpg@nr\relax
- % greek:
- \@greek@numeralstrue%
- \SetLanguageKeys{greek}{bcp47-extension-u=nu-grek}%
- \or
- % arabic:
- \@greek@numeralsfalse%
- \SetLanguageKeys{greek}{bcp47-extension-u=nu-latn}%
- \fi
- \xpg@info{Option: Greek, numerals=\xpg@val}%
-}{\xpg@warning{Unknown Greek numerals value `#1'}}
-
-\define@boolkey{greek}[greek@]{capitaliota}[true]{%
- \ifgreek@capitaliota
- % \MakeUppercase converts the ypogegrammeni (subscript muted iota) to capital iota
- \SetLanguageKeys{greek}{bcp47-casing=el-x-iota,bcp47-extension-x=iota}
- \else
- % \MakeUppercase retains the subscript versions (default)
- \SetLanguageKeys{greek}{bcp47-casing=el,bcp47-extension-x={}}
- \fi
-}
-
-\define@boolkey{greek}{attic}[true]{\xpg@warning{Greek option `attic' is no longer required.}}
+\DeclareKeys[polyglossia/gloss/greek]
+ {
+ variant.choices:nn = { monotonic, mono,polytonic, poly,ancient, ancientgreek }
+ {%
+ \CheckHyphenationPatterns{greek}%
+ \ifcase\UseName{l_keys_choice_int}\or
+ % monotonic:
+ \@greek@polyfalse
+ \@greek@ancientfalse
+ \or
+ % mono:
+ \@greek@polyfalse
+ \@greek@ancientfalse
+ \or
+ % polytonic:
+ \@greek@polytrue
+ \@greek@ancientfalse
+ \or
+ % poly:
+ \@greek@polytrue
+ \@greek@ancientfalse
+ \or
+ % ancient:
+ \@greek@polyfalse
+ \@greek@ancienttrue
+ \or
+ % ancientgreek:
+ \@greek@polyfalse
+ \@greek@ancienttrue
+ \fi
+ \greek@set@langdata
+ },
+ variant.default:n = monotonic,
+ variant/unknown.code = \xpg@warning{Unknown Greek variant `#1'},
+ numerals.choice:,
+ numerals / greek.code =
+ {%
+ \@greek@numeralstrue
+ \SetLanguageKeys{greek}{bcp47-extension-u=nu-grek}%
+ },
+ numerals / arabic.code =
+ {%
+ \@greek@numeralsfalse
+ \SetLanguageKeys{greek}{bcp47-extension-u=nu-latn}%
+ },
+ numerals.default:n = greek,
+ numerals/unknown.code = \xpg@warning{Unknown Greek numerals value `#1'},
+ capitaliota.choice:,
+ capitaliota / true.code =
+ {%
+ \@greek@capitaliotatrue
+ % \MakeUppercase converts the ypogegrammeni (subscript muted iota) to capital iota
+ \SetLanguageKeys{greek}{bcp47-casing=el-x-iota,bcp47-extension-x=iota}%
+ },
+ capitaliota / false.code =
+ {%
+ \@greek@capitaliotafalse
+ % \MakeUppercase retains the subscript versions (default)
+ \SetLanguageKeys{greek}{bcp47-casing=el,bcp47-extension-x={}}%
+ },
+ capitaliota.default:n = true,
+ attic.choices:nn = { true, false }
+ {%
+ \xpg@warning{Greek option `attic' is no longer required.}
+ },
+ capitaliota.default:n = true,
+ }
% Register default options
-\xpg@initialize@gloss@options{greek}{variant=monotonic,numerals=greek}
+\InitializeGlossOptions{greek}{variant=monotonic,numerals=greek}
% Register alias options
-\xpg@set@alias@values{greek}{variant}{monotonic}{mono}
-\xpg@set@alias@values{greek}{variant}{polytonic}{poly}
+\SetLanguageAliasValues{greek}{variant}{monotonic,mono}
+\SetLanguageAliasValues{greek}{variant}{polytonic,poly}
\def\monogreekcaptions{%
\def\refname{Αναφορές}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-he.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-he.ldf
index 80a60baa797..ee5c85a6589 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-he.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-he.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-he.ldf}[polyglossia: module for he (Hebrew)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{hebrew}
+\InheritGlossFile{hebrew}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-hebrew.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-hebrew.ldf
index 7ee62033e1d..b866f508ff4 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-hebrew.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-hebrew.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-hebrew.ldf}[polyglossia: module for Hebrew]
@@ -24,41 +24,48 @@
% BCP-47 compliant aliases
\setlanguagealias*{hebrew}{he}
-% hebrewcal options
-\define@key{hebrew}{marcheshvan}[true]{\setkeys{hebrewcal}{marcheshvan=#1}}
-\define@key{hebrew}{transliteration}[alt]{\setkeys{hebrewcal}{transliteration=#1}}
-\define@key{hebrew}{fullyear}[true]{\setkeys{hebrewcal}{fullyear=#1}}
-
\newif\if@calendar@hebrew
-\define@choicekey*+{hebrew}{calendar}[\xpg@val\xpg@nr]{hebrew,gregorian}[gregorian]{%
- \ifcase\xpg@nr\relax
- % hebrew:
- \@calendar@hebrewtrue
- \or
- % gregorian:
- \@calendar@hebrewfalse
- \fi
- \xpg@info{Option: Hebrew, calendar=\xpg@val}%
-}{\xpg@warning{Unknown Hebrew calendar `#1'}}
-
\newif\if@hebrew@numerals
-\define@choicekey*+{hebrew}{numerals}[\xpg@val\xpg@nr]{hebrew,arabic}[arabic]{%
- \ifcase\xpg@nr\relax
- % hebrew:
- \@hebrew@numeralstrue
- \SetLanguageKeys{hebrew}{bcp47-extension-u=nu-hebr}%
- \or
- % arabic:
- \@hebrew@numeralsfalse
- \SetLanguageKeys{hebrew}{bcp47-extension-u=nu-latn}%
- \fi
- \xpg@info{Option: Hebrew, numerals=\xpg@val}%
-}{\xpg@warning{Unknown Hebrew numerals value `#1'}}
-\setkeys{hebrew}{numerals}
+\DeclareKeys[polyglossia/gloss/hebrew]
+ {
+ marcheshvan.code = \setkeys{hebrewcal}{marcheshvan=#1},
+ marcheshvan.default:n = true,
+ transliteration.code = \setkeys{hebrewcal}{transliteration=#1},
+ transliteration.default:n = alt,
+ fullyear.code = \setkeys{hebrewcal}{fullyear=#1},
+ fullyear.default:n = true,
+ calendar.choice:,
+ calendar / hebrew.code =
+ {%
+ \@calendar@hebrewtrue
+ },
+ calendar / gregorian.code =
+ {%
+ \@calendar@hebrewfalse
+ },
+ calendar.default:n = gregorian,
+ calendar/unknown.code = \xpg@warning{Unknown Hebrew calendar `#1'},
+ numerals.choice:,
+ numerals / hebrew.code =
+ {%
+ \@hebrew@numeralstrue
+ \SetLanguageKeys{hebrew}{bcp47-extension-u=nu-hebr}%
+ },
+ numerals / arabic.code =
+ {%
+ \@hebrew@numeralsfalse
+ \SetLanguageKeys{hebrew}{bcp47-extension-u=nu-latn}%
+ },
+ numerals.default:n = arabic,
+ numerals/unknown.code = \xpg@warning{Unknown Hebrew numerals value `#1'}
+ }
+
+
+\SetGlossOptions{hebrew}{numerals}
% Register default options
-\xpg@initialize@gloss@options{hebrew}{numerals=arabic,calendar=gregorian,marcheshvan=false,fullyear=false}
+\InitializeGlossOptions{hebrew}{numerals=arabic,calendar=gregorian,marcheshvan=false,fullyear=false}
\def\captionshebrew{%
\def\prefacename{מבוא}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-hi.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-hi.ldf
index 24ac6a0ea58..f95ff044ad4 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-hi.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-hi.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-hi.ldf}[polyglossia: module for hi (Hindi)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{hindi}
+\InheritGlossFile{hindi}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-hindi.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-hindi.ldf
index 7803b17ef44..f2603cff064 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-hindi.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-hindi.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
% UTF-8 strings kindly provided by Zdenĕk Wagner, 10-03-2008
% with corrections and additional contributions by Anshuman Pandey
@@ -25,8 +25,7 @@
\ifx\l@hindi\@undefined%
\ifx\l@sanskrit\@undefined%
- \xpg@nopatterns{Hindi}%
- \adddialect\l@hindi\l@nohyphenation%
+ \XPGNoPatternsFallback{hindi}%
\else
\xpg@warning{No hyphenation patterns were loaded for Hindi\MessageBreak
I will use the patterns for Sanskrit instead}
@@ -35,26 +34,31 @@
\fi
\def\hindi@language{%
- \polyglossia@setup@language@patterns{hindi}%
+ \SetupPolyglossiaLangPatterns{hindi}%
}
\newif\ifhindi@devanagari@numerals
\hindi@devanagari@numeralstrue
-\define@choicekey*+{hindi}{numerals}[\xpg@val\xpg@nr]{Devanagari,Western}[Devanagari]{%
- \ifcase\xpg@nr\relax
- % Devanagari:
- \hindi@devanagari@numeralstrue%
- \SetLanguageKeys{hindi}{bcp47-extension-u=nu-deva}%
- \or
- % Western:
- \hindi@devanagari@numeralsfalse%
- \SetLanguageKeys{hindi}{bcp47-extension-u=nu-latn}%
- \fi
- \xpg@info{Option: Hindi, numerals=\xpg@val}%
-}{\xpg@warning{Unknown Hindi numeral `#1'}}
+
+\DeclareKeys[polyglossia/gloss/hindi]
+ {
+ numerals.choice:,
+ numerals / devanagari.code =
+ {%
+ \hindi@devanagari@numeralstrue
+ \SetLanguageKeys{hindi}{bcp47-extension-u=nu-deva}%
+ },
+ numerals / western.code =
+ {%
+ \hindi@devanagari@numeralsfalse
+ \SetLanguageKeys{hindi}{bcp47-extension-u=nu-latn}%
+ },
+ numerals.default:n = devanagari,
+ numerals/unknown.code = \xpg@warning{Unknown Hindi numeral `#1'}
+ }
% Register default options
-\xpg@initialize@gloss@options{hindi}{numerals=devanagari}
+\InitializeGlossOptions{hindi}{numerals=devanagari}
\newcommand{\hindinumerals}[2]{\hindinumber{#2}}
@@ -74,6 +78,7 @@
\def\contentsname{विषय सूची}%
\def\enclname{}%
\def\figurename{चित्र}% रेखाचित्र
+ \def\glossaryname{शब्दार्थ सूची}%
\def\headpagename{पृष्ठ}%
\def\headtoname{}%
\def\indexname{सूची}%
@@ -85,6 +90,7 @@
\def\pagename{पृष्ठ}%
\def\partname{खण्ड}%
\def\prefacename{प्रस्तावना}% प्राक्कथन
+ \def\proofname{प्रमाण}%
\def\refname{हवाले}%
\def\tablename{तालिका}%
\def\seename{देखिए}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-hr.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-hr.ldf
index 9354b06cadc..f0e1fa462f8 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-hr.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-hr.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-hr.ldf}[polyglossia: module for hr (Croatian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{croatian}
+\InheritGlossFile{croatian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-hsb.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-hsb.ldf
index f2c872c2c41..68e8b65c00d 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-hsb.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-hsb.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-hsb.ldf}[polyglossia: module for hsb (Higher Sorbian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{sorbian}
+\InheritGlossFile{sorbian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-hu.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-hu.ldf
index 9700f33025b..47ed150e040 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-hu.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-hu.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-hu.ldf}[polyglossia: module for hu (Hungarian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{hungarian}
+\InheritGlossFile{hungarian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-hungarian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-hungarian.ldf
index a846c750bb8..29b51e5d417 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-hungarian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-hungarian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-hungarian.ldf}[polyglossia: module for Hungarian]
@@ -25,53 +25,61 @@
\newif\if@hungarian@swapcaptions
\newif\if@hungarian@swapheadings
\newif\if@hungarian@swapheaders
-\define@choicekey*+{hungarian}{swapstrings}[\xpg@val\xpg@nr]{all,captions,headings,headers,hheaders,none}[all]{%
- \ifcase\xpg@nr\relax
- % all:
- \@hungarian@swapcaptionstrue%
- \@hungarian@swapheadingstrue%
- \@hungarian@swapheaderstrue%
- \or
- % captions:
- \@hungarian@swapcaptionstrue%
- \@hungarian@swapheadingsfalse%
- \@hungarian@swapheadersfalse%
- \or
- % headings:
- \@hungarian@swapcaptionsfalse%
- \@hungarian@swapheadingstrue%
- \@hungarian@swapheadersfalse%
- \or
- % headers:
- \@hungarian@swapcaptionsfalse%
- \@hungarian@swapheadingsfalse%
- \@hungarian@swapheaderstrue%
- \or
- % hheaders:
- \@hungarian@swapcaptionsfalse%
- \@hungarian@swapheadingstrue%
- \@hungarian@swapheaderstrue%
- \or
- % none:
- \@hungarian@swapcaptionsfalse%
- \@hungarian@swapheadingsfalse%
- \@hungarian@swapheadersfalse%
- \fi
- \xpg@info{Option: Hungarian, swapstrings=\xpg@val}%
-}{\xpg@warning{Unknown Hungarian swapstrings value `#1'}}
-% Force punctuation: 1) after section type counters; 2) after @chapapp in the running head
-\define@boolkey{hungarian}[hungarian@]{forceheadingpunctuation}[true]{}
+\DeclareKeys[polyglossia/gloss/hungarian]
+ {
+ forceheadingpunctuation.if = hungarian@forceheadingpunctuation,
+ forceheadingpunctuation.default:n = true,
+ swapstrings.choice:,
+ swapstrings / all.code =
+ {%
+ \@hungarian@swapcaptionstrue
+ \@hungarian@swapheadingstrue
+ \@hungarian@swapheaderstrue
+ },
+ swapstrings / captions.code =
+ {%
+ \@hungarian@swapcaptionstrue
+ \@hungarian@swapheadingsfalse
+ \@hungarian@swapheadersfalse
+ },
+ swapstrings / headings.code =
+ {%
+ \@hungarian@swapcaptionsfalse
+ \@hungarian@swapheadingstrue
+ \@hungarian@swapheadersfalse
+ },
+ swapstrings / headers.code =
+ {%
+ \@hungarian@swapcaptionsfalse
+ \@hungarian@swapheadingsfalse
+ \@hungarian@swapheaderstrue
+ },
+ swapstrings / hheaders.code =
+ {%
+ \@hungarian@swapcaptionsfalse
+ \@hungarian@swapheadingstrue
+ \@hungarian@swapheaderstrue
+ },
+ swapstrings / none.code =
+ {%
+ \@hungarian@swapcaptionsfalse
+ \@hungarian@swapheadingsfalse
+ \@hungarian@swapheadersfalse
+ },
+ swapstrings.default:n = all,
+ swapstrings/unknown.code = \xpg@warning{Unknown Hungarian swapstrings value `#1'}
+ }
% Register default options
% forceheadinpunctuatin is recommended, but the default value is false for compatibility reasons
-\xpg@initialize@gloss@options{hungarian}{swapstrings=all,
+\InitializeGlossOptions{hungarian}{swapstrings=all,
forceheadingpunctuation=false}
\def\hungarian@language{%
- \polyglossia@setup@language@patterns{hungarian}%
- \xpg@ifdefined{hungarian}{\adddialect\l@magyar\l@hungarian}{}%
+ \SetupPolyglossiaLangPatterns{hungarian}%
+ \IfLanguageDefinedT{hungarian}{\adddialect\l@magyar\l@hungarian}%
}%
\def\captionshungarian{%
@@ -143,120 +151,104 @@
% change chapter and part headings
\if@hungarian@swapheadings
% With titlesec
- \ifcsdef{titleformat}{%
- \ifcsdef{NR@part}{% Hyperref (nameref)
- \let\xpg@save@part@format\NR@part%
- \patchcmd{\NR@part}%
- {\partname\nobreakspace\thepart}%
- {\thepart.\nobreakspace\partname}%
- {}%
- {\xpg@warning{Failed to patch part for Hungarian}}%
- }{% not hyperref
- \ifcsdef{@part}{%
- \let\xpg@save@part@format\@part%
- \patchcmd{\@part}%
- {\partname\nobreakspace\thepart}%
- {\thepart.\nobreakspace\partname}%
- {}%
- {\xpg@warning{Failed to patch part for Hungarian}}%
- }{}%
- }
- \ifcsdef{chapter}{%
- \titleformat\chapter[display]%
- {\@ifundefined{ttl@fil}{\raggedright}{\ttl@fil}\ttl@fonts\ttl@sizes6}
- {\thechapter.\space\@chapapp}{.8\baselineskip}{\ttl@sizes\z@\ttl@passexplicit}
- }{}%
- }{% (not \ifdefined\titleformat)
+ \@ifundefined{titleformat}{%
% With KOMA
- \ifcsdef{sectionformat}{%
- \ifcsdef{partformat}{%
- \let\xpg@save@part@format\partformat%
- \renewcommand{\partformat}{\thepart.~\partname}%
- }{}%
- \ifcsdef{chapterformat}{%
- \let\xpg@save@chap@format\chapterformat%
- \renewcommand{\chapterformat}{\mbox{\thechapter\autodot%
- \IfUsePrefixLine{\nobreakspace\chapapp}{\enskip}}}%
- }{}%
- }{% (not \ifdefined\sectionformat)
- % With memoir
- \ifcsdef{@memptsize}{%
- \ifcsdef{@makechapterhead}{%
- \let\xpg@save@chap@format\@makechapterhead%
- \patchcmd{\@makechapterhead}{\printchaptername \chapternamenum \printchapternum}%
- {\printchapternum.\chapternamenum\printchaptername}%
- {}%
- {\xpg@warning{Failed to patch chapter for Hungarian}}%
- }{}%
- \ifcsdef{NR@part}{% Hyperref (nameref)
- \let\xpg@save@part@format\NR@part%
- \patchcmd{\NR@part}{\printpartname \partnamenum \printpartnum}%
- {\printpartnum.\partnamenum\printpartname}%
- {}%
- {\xpg@warning{Failed to patch part for Hungarian}}%
- }{% not hyperref
- \ifcsdef{@part}{%
- \let\xpg@save@part@format\@part%
- \patchcmd{\@part}{\printpartname \partnamenum \printpartnum}%
- {\printpartnum.\partnamenum\printpartname}%
- {}%
- {\xpg@warning{Failed to patch part for Hungarian}}%
- }{}%
- }%
- }{% (not \ifdefined\@memptsize)
+ \@ifundefined{sectionformat}{%
+ % Memoir?
+ \@ifundefined{@memptsize}{%
% With standard classes
- \ifcsdef{@makechapterhead}{%
+ \@ifundefined{@makechapterhead}{}{%
\let\xpg@save@chap@format\@makechapterhead%
\patchcmd{\@makechapterhead}%
{\@chapapp\space \thechapter}%
{\thechapter.\space \@chapapp}%
{}%
{\xpg@warning{Failed to patch chapter for Hungarian}}%
- }{}%
- \ifcsdef{NR@part}{% Hyperref (nameref)
+ }%
+ \@ifundefined{NR@part}{% not hyperref
+ \@ifundefined{@part}{}{%
+ \let\xpg@save@part@format\@part%
+ \patchcmd{\@part}%
+ {\partname\nobreakspace\thepart}%
+ {\thepart.\nobreakspace\partname}%
+ {}%
+ {\@ifundefined{part}{}{\xpg@warning{Failed to patch part for Hungarian}}}%
+ }% (end \ifdefined\@part)
+ }{% Hyperref (nameref)
\let\xpg@save@part@format\NR@part%
\patchcmd{\NR@part}%
{\partname\nobreakspace\thepart}%
{\thepart.\nobreakspace\partname}%
{}%
{\xpg@warning{Failed to patch part for Hungarian}}%
- }{% not hyperref
- \ifcsdef{@part}{%
- \let\xpg@save@part@format\@part%
- \patchcmd{\@part}%
- {\partname\nobreakspace\thepart}%
- {\thepart.\nobreakspace\partname}%
- {}%
- {\ifcsdef{part}{\xpg@warning{Failed to patch part for Hungarian}}{}}%
- }{}% (end \ifdefined\@part)
}% (end not hyperref)
- }% (end \ifdefined\@memptsize)
- }% (end \ifdefined\sectionformat)
+ }{% with memoir (\ifdefined\@memptsize)
+ \@ifundefined{@makechapterhead}{}{%
+ \let\xpg@save@chap@format\@makechapterhead%
+ \patchcmd{\@makechapterhead}{\printchaptername \chapternamenum \printchapternum}%
+ {\printchapternum.\chapternamenum\printchaptername}%
+ {}%
+ {\xpg@warning{Failed to patch chapter for Hungarian}}%
+ }%
+ \@ifundefined{NR@part}{% not hyperref
+ \@ifundefined{@part}{}{%
+ \let\xpg@save@part@format\@part%
+ \patchcmd{\@part}{\printpartname \partnamenum \printpartnum}%
+ {\printpartnum.\partnamenum\printpartname}%
+ {}%
+ {\xpg@warning{Failed to patch part for Hungarian}}%
+ }%
+ }{% Hyperref (nameref)
+ \let\xpg@save@part@format\NR@part%
+ \patchcmd{\NR@part}{\printpartname \partnamenum \printpartnum}%
+ {\printpartnum.\partnamenum\printpartname}%
+ {}%
+ {\xpg@warning{Failed to patch part for Hungarian}}%
+ }%
+ }% (end \ifdefined\@memptsize)
+ }{% (\ifdefined\sectionformat)
+ \@ifundefined{partformat}{}{%
+ \let\xpg@save@part@format\partformat%
+ \renewcommand{\partformat}{\thepart.~\partname}%
+ }%
+ \@ifundefined{chapterformat}{}{%
+ \let\xpg@save@chap@format\chapterformat%
+ \renewcommand{\chapterformat}{\mbox{\thechapter\autodot%
+ \IfUsePrefixLine{\nobreakspace\chapapp}{\enskip}}}%
+ }%
+ }% (end \ifdefined\sectionformat)
+ }{% (\ifdefined\titleformat)
+ \@ifundefined{NR@part}{% not hyperref
+ \@ifundefined{@part}{}{%
+ \let\xpg@save@part@format\@part%
+ \patchcmd{\@part}%
+ {\partname\nobreakspace\thepart}%
+ {\thepart.\nobreakspace\partname}%
+ {}%
+ {\xpg@warning{Failed to patch part for Hungarian}}%
+ }%
+ }{% Hyperref (nameref)
+ \let\xpg@save@part@format\NR@part%
+ \patchcmd{\NR@part}%
+ {\partname\nobreakspace\thepart}%
+ {\thepart.\nobreakspace\partname}%
+ {}%
+ {\xpg@warning{Failed to patch part for Hungarian}}%
+ }%
+ \@ifundefined{chapter}{}{%
+ \titleformat\chapter[display]%
+ {\@ifundefined{ttl@fil}{\raggedright}{\ttl@fil}\ttl@fonts\ttl@sizes6}
+ {\thechapter.\space\@chapapp}{.8\baselineskip}{\ttl@sizes\z@\ttl@passexplicit}
+ }%
}% (end \ifdefined\titleformat)
\fi% (end \if@hungarian@swapheadings)
%
% Change running headers
\if@hungarian@swapheaders
- \ifcsdef{chapterformat}{%
- % With KOMA
- \let\xpg@save@chaptermark@format\chaptermarkformat%
- \renewcommand*\chaptermarkformat{%
- \thechapter\autodot\ \IfChapterUsesPrefixLine{\chapapp\@hungarian@forced@dot\enskip}{}}
- }{% (not \ifdefined\chapterformat)
- \ifcsdef{@memptsize}{%
- % With memoir
- \let\xpg@save@chaptermark@format\chaptermark%
- \renewcommand*\chaptermark[1]{%
- \markboth{\memUChead{%
- \ifnum \c@secnumdepth >\m@ne
- \ifbool{@mainmatter}{%
- \thechapter.\ \@chapapp\@hungarian@forced@dot\ %
- }{}%
- \fi
- ##1}}{}}%
- }{% (not \ifdefined\@memptsize)
+ \@ifundefined{chapterformat}{%
+ \@ifundefined{@memptsize}{%
% With standard classes
- \ifcsdef{chaptermark}{%
+ \@ifundefined{chaptermark}{}{%
\ifpatchable{\chaptermark}%
{\@chapapp\ \thechapter.}%
{\let\xpg@save@chaptermark@format\chaptermark%
@@ -266,8 +258,24 @@
{}%
{\xpg@warning{Failed to patch chaptermark for Hungarian}}}%
{}%
- }{}% (end \ifdefined\chaptermark)
+ }% (end \ifdefined\chaptermark)
+ }{% (\ifdefined\@memptsize)
+ % With memoir
+ \let\xpg@save@chaptermark@format\chaptermark%
+ \renewcommand*\chaptermark[1]{%
+ \markboth{\memUChead{%
+ \ifnum \c@secnumdepth >\m@ne
+ \ifbool{@mainmatter}{%
+ \thechapter.\ \@chapapp\@hungarian@forced@dot\ %
+ }{}%
+ \fi
+ ##1}}{}}%
}% (end \ifdefined\@memptsize)
+ }{% (\ifdefined\chapterformat)
+ % With KOMA
+ \let\xpg@save@chaptermark@format\chaptermarkformat%
+ \renewcommand*\chaptermarkformat{%
+ \thechapter\autodot\ \IfChapterUsesPrefixLine{\chapapp\@hungarian@forced@dot\enskip}{}}
}% (end \ifdefined\chapterformat)
\fi% (end \if@hungarian@swapheaders)
}
@@ -279,70 +287,70 @@
\let\fnum@figure\xpg@save@fnum@figure%
%
% Reset chapter and part heading
- \ifcsdef{titleformat}{%
+ \@ifundefined{titleformat}{%
+ \@ifundefined{sectionformat}{%
+ % With memoir and standard classes
+ \@ifundefined{xpg@save@part@format}{}{%
+ \@ifundefined{NR@part}{%
+ \let\@part\xpg@save@part@format%
+ }{%
+ \let\NR@part\xpg@save@part@format%
+ }%
+ }%
+ \@ifundefined{xpg@save@chap@format}{}{%
+ \let\@makechapterhead\xpg@save@chap@format
+ }%
+ }{%
+ % With KOMA
+ \@ifundefined{xpg@save@part@format}{}{%
+ \let\partformat\xpg@save@part@format
+ }%
+ \@ifundefined{xpg@save@chap@format}{}{%
+ \let\chapterformat\xpg@save@chap@format
+ }%
+ }% (end \ifdefined\sectionformat)
+ }{% (\ifdefined\titleformat)
% With titlesec
- \ifcsdef{xpg@save@part@format}{%
- \ifcsdef{NR@part}{%
- \let\NR@part\xpg@save@part@format%
- }{%
+ \@ifundefined{xpg@save@part@format}{}{%
+ \@ifundefined{NR@part}{%
\let\@part\xpg@save@part@format%
+ }{%
+ \let\NR@part\xpg@save@part@format%
}%
- }{}%
- \ifcsdef{chapter}{%
+ }%
+ \@ifundefined{chapter}{}{%
\titleformat\chapter[display]%
{\@ifundefined{ttl@fil}{\raggedright}{\ttl@fil}\ttl@fonts\ttl@sizes6}
{\@chapapp\space\thechapter}{.8\baselineskip}{\ttl@sizes\z@\ttl@passexplicit}
- }{}%
- }{% (not \ifdefined\titleformat)
- \ifcsdef{sectionformat}{%
- % With KOMA
- \ifcsdef{xpg@save@part@format}{%
- \let\partformat\xpg@save@part@format
- }{}%
- \ifcsdef{xpg@save@chap@format}{%
- \let\chapterformat\xpg@save@chap@format
- }{}%
- }{%
- % With memoir and standard classes
- \ifcsdef{xpg@save@part@format}{%
- \ifcsdef{NR@part}{%
- \let\NR@part\xpg@save@part@format%
- }{%
- \let\@part\xpg@save@part@format%
- }%
- }{}%
- \ifcsdef{xpg@save@chap@format}{%
- \let\@makechapterhead\xpg@save@chap@format
- }{}%
- }% (end \ifdefined\sectionformat)
+ }%
}% (end \ifdefined\titleformat)
%
% Reset headers
- \ifcsdef{chaptermarkformat}{%
- % With KOMA
- \ifcsdef{xpg@save@chaptermark@format}{%
- \let\chaptermarkformat\xpg@save@chaptermark@format%
- }{}%
- }{%
- \ifcsdef{chaptermark}{%
+ \@ifundefined{chaptermarkformat}{%
+ \@ifundefined{chaptermark}{}{%
% With memoir and standard classes
- \ifcsdef{xpg@save@chaptermark@format}{%
+ \@ifundefined{xpg@save@chaptermark@format}{}{%
\let\chaptermark\xpg@save@chaptermark@format%
- }{}%
- }{}% (end \ifdefined\chaptermark)
- }% (end \ifdefined\chapterformat)
+ }%
+ }% (end \ifdefined\chaptermark)
+ }{%
+ % With KOMA
+ \@ifundefined{xpg@save@chaptermark@format}{}{%
+ \let\chaptermarkformat\xpg@save@chaptermark@format%
+ }%
+ }% (end \ifdefined\chaptermarkformat)
}
% Hungarian needs 1) trailing dots in chapter headings; 2) trailing dot in section, subsection, etc, counters
\def\@hungarian@forced@dot{}
\def\xpg@save@autodot{}
-\ifdef{\KOMAScript}{%
+\ifdef{\KOMAClassName}{%
\providecommand*\autodot{}%
\let\xpg@save@autodot\autodot%
}{}
% The following is based on some ideas from gloss-russian.ldf
\def\hungarian@sectsformat{%
\ifhungarian@forceheadingpunctuation%
- \ifdef{\KOMAScript}{%
+ \ifdef{\KOMAClassName}{%
\renewcommand*\autodot{.}%
}{%
\def\@seccntformat##1{\csname pre##1\endcsname%
@@ -368,7 +376,7 @@
%
\def\nohungarian@sectsformat{%
\ifhungarian@forceheadingpunctuation%
- \ifdef{\KOMAScript}{%
+ \ifdef{\KOMAClassName}{%
\let\autodot\xpg@save@autodot%
}{%
\def\@seccntformat##1{\csname the##1\endcsname\quad}% = LaTeX kernel
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-hy.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-hy.ldf
index ee335e8b4dd..b6f49d2b33a 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-hy.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-hy.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-hy.ldf}[polyglossia: module for hy (Armenian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{armenian}
+\InheritGlossFile{armenian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ia.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ia.ldf
index 1652403941d..5affad8c964 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ia.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ia.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ia.ldf}[polyglossia: module for ia (Interlingua)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{interlingua}
+\InheritGlossFile{interlingua}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-icelandic.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-icelandic.ldf
index 4415bbab088..9aaf77a1201 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-icelandic.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-icelandic.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-icelandic.ldf}[polyglossia: module for Icelandic]
\PolyglossiaSetup{icelandic}{
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-id.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-id.ldf
index e72a43d5f51..a9f38697584 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-id.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-id.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-id.ldf}[polyglossia: module for id (Malay)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{malay}
+\InheritGlossFile{malay}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-interlingua.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-interlingua.ldf
index d105dae74c7..94ce192a52a 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-interlingua.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-interlingua.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-interlingua.ldf}[polyglossia: module for Interlingua]
\PolyglossiaSetup{interlingua}{
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-irish.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-irish.ldf
index ed1fc5af650..b1455f6242a 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-irish.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-irish.ldf
@@ -1,10 +1,10 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-irish.ldf}[polyglossia: module for Irish]
% We only provide this gloss for babel compatibility. Since irish is
% a gaelic variety, we use 'gaelic' with variant 'irish' now.
-\xpg@load@master@language{gaelic}
+\InheritGlossFile{gaelic}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-is.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-is.ldf
index aed4195b8d1..e5f58354a9c 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-is.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-is.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-is.ldf}[polyglossia: module for is (Icelandic)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{icelandic}
+\InheritGlossFile{icelandic}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-it.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-it.ldf
index e3bf7d00df8..92cccf90957 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-it.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-it.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-it.ldf}[polyglossia: module for it (Italian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{italian}
+\InheritGlossFile{italian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-italian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-italian.ldf
index edf9d4f79e9..a646035f855 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-italian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-italian.ldf
@@ -1,5 +1,5 @@
% !TEX encoding = UTF-8 Unicode
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-italian.ldf}[polyglossia: module for Italian]
\PolyglossiaSetup{italian}{
@@ -18,24 +18,22 @@
% BCP-47 compliant aliases
\setlanguagealias*{italian}{it}
-
-%%% CHANGES START %%% by Enrico Gregorio
-\define@boolkey{italian}[italian@]{babelshorthands}[true]{}
+\DeclareKeys[polyglossia/gloss/italian]
+ {
+ babelshorthands.if = italian@babelshorthands,
+ babelshorthands.default:n = true,
+ }
% Register default options
-\xpg@initialize@gloss@options{italian}{babelshorthands=false}
+\InitializeGlossOptions{italian}{babelshorthands=false}
\ifsystem@babelshorthands
- \setkeys{italian}{babelshorthands=true}
+ \SetGlossOptions{italian}{babelshorthands=true}
\else
- \setkeys{italian}{babelshorthands=false}
+ \SetGlossOptions{italian}{babelshorthands=false}
\fi
-\ifcsundef{initiate@active@char}{%
- \input{babelsh.def}%
- \initiate@active@char{"}%
- \shorthandoff{"}%
-}{}
+\InitializeBabelShorthands
\def\italian@shorthands{%
\xpg@activate@shorthands%
@@ -115,7 +113,7 @@
%%% CHANGES START %%% by Enrico Gregorio
\let\xpgit@savedvalues\empty
-\AtEndPreamble{% the user or the class might define different values
+\AddToHook{begindocument/before}{% the user or the class might define different values
\edef\xpgit@savedvalues{%
\clubpenalty=\the\clubpenalty\space
\@clubpenalty=\the\@clubpenalty\space
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ja.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ja.ldf
index 7329e61bdc9..609950fc65c 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ja.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ja.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ja.ldf}[polyglossia: module for ja (Japanese)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{japanese}
+\InheritGlossFile{japanese}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-japanese.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-japanese.ldf
index 5d90a303747..805e25e78c6 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-japanese.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-japanese.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-japanese.ldf}[polyglossia: module for Japanese]
@@ -20,6 +20,20 @@
% BCP-47 compliant aliases
\setlanguagealias*{japanese}{ja}
+\providecommand*\presection{}
+\providecommand*\presubsection{}
+\providecommand*\presubsubsection{}
+\providecommand*\postsection{}
+\providecommand*\postsubsection{}
+\providecommand*\postsubsubsection{}
+\let\xpg@save@presection\presection
+\let\xpg@save@presubsection\presubsection
+\let\xpg@save@presubsubsection\presubsubsection
+\let\xpg@save@postsection\postsection
+\let\xpg@save@postsubsection\postsubsection
+\let\xpg@save@postsubsubsection\postsubsubsection
+\let\xpg@save@seccntformat\@seccntformat
+
\def\japanese@capsformat{%
\def\@seccntformat##1{%
\csname pre##1\endcsname%
@@ -34,6 +48,16 @@
\def\presubsubsection{第}%
}
+\def\nojapanese@capsformat{%
+ \let\presection\xpg@save@presection%
+ \let\presubsection\xpg@save@presubsection%
+ \let\presubsubsection\xpg@save@presubsubsection%
+ \let\postsection\xpg@save@postsection%
+ \let\postsubsection\xpg@save@postsubsection%
+ \let\postsubsubsection\xpg@save@postsubsubsection%
+ \let\@seccntformat\xpg@save@seccntformat%
+}
+
\def\captionsjapanese{%
\def\refname{参考文献}%
\def\abstractname{概要}%
@@ -215,16 +239,46 @@
}%
}
+\ifluatex
+ \@ifundefined{xpg@attr@cjkspacing}{\newattribute\xpg@attr@cjkspacing}{}
+ \directlua{ require"polyglossia-cjk-spacing" }
+ \def\japanese@spacing{\xpg@attr@cjkspacing=\@ne}
+ \def\nojapanese@spacing{\unsetattribute\xpg@attr@cjkspacing}
+\else
+ \@ifundefined{xpg@orig@XeTeXlinebreakskip}{\newskip\xpg@orig@XeTeXlinebreakskip}{}
+ \xpg@orig@XeTeXlinebreakskip=\XeTeXlinebreakskip
+ \def\japanese@spacing{%
+ \XeTeXlinebreaklocale "ja"%
+ \XeTeXlinebreakskip = 0pt plus 0.1em minus 0.01em%
+ }
+ \def\nojapanese@spacing{%
+ \XeTeXlinebreakskip=\xpg@orig@XeTeXlinebreakskip%
+ \XeTeXlinebreaklocale ""%
+ }
+\fi
+
\def\noextras@japanese{%
- \japanese@capsformat%
+ \nojapanese@capsformat%
+ \nojapanese@spacing%
}
\def\blockextras@japanese{%
- \japanese@capsformat%
+ \japanese@capsformat%
+ \japanese@spacing%
}
\def\inlineextras@japanese{%
- \japanese@capsformat%
+ \japanese@capsformat%
+ \japanese@spacing%
}
+
+\ifxetex
+ % \XeTeXlinebreaklocale is global,
+ % so we need to reset after nested language got closed
+ \def\nestedextras@japanese{%
+ \japanese@spacing%
+ }
+\fi
+
% Based on contributions of Toru Inagaki, Norio Iwase, François Charette
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ka.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ka.ldf
index dc0fb85531e..884d438d8f9 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ka.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ka.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ka.ldf}[polyglossia: module for ka (Georgian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{georgian}
+\InheritGlossFile{georgian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-kannada.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-kannada.ldf
index 1ea7dfce332..aef2fc70e0e 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-kannada.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-kannada.ldf
@@ -1,5 +1,5 @@
%% gloss-kannada.ldf
-%% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+%% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%%
%% Copyright 2011 Aravinda VK <hallimanearavind AT gmail.com>,
%% Shankar Prasad <prasad.mvs AT gmail.com>,
@@ -53,12 +53,20 @@
\def\tmp@western{Western}
\newif\ifkannada@numerals
\kannada@numeralstrue
-
-\define@key{kannada}{numerals}[Kannada]{%
- \def\@tmpa{#1}%
- \ifx\@tmpa\tmp@western
- \kannada@numeralsfalse
- \fi}
+
+\DeclareKeys[polyglossia/gloss/kannada]
+ {
+ numerals.choice:,
+ numerals / kannada.code =
+ {%
+ \kannada@numeralstrue
+ },
+ numerals / western.code =
+ {%
+ \kannada@numeralsfalse
+ },
+ numerals.default:n = kannada
+ }
\def\captionskannada{%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-khmer.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-khmer.ldf
index 9c9ec53f328..7b8444da0d8 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-khmer.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-khmer.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-khmer.ldf}[polyglossia: module for Khmer]
\PolyglossiaSetup{khmer}{
@@ -19,18 +19,24 @@
\newif\if@khmer@numerals
\def\tmp@khmer{khmer}
-\define@key{khmer}{numerals}[arabic]{%
- \def\@tmpa{#1}%
- \ifx\@tmpa\tmp@khmer%
- \@khmer@numeralstrue%
- \SetLanguageKeys{khmer}{bcp47-extension-u=nu-khmr}%
- \else%
- \@khmer@numeralsfalse%
- \SetLanguageKeys{khmer}{bcp47-extension-u=nu-latn}%
- \fi%
-}
-\setkeys{khmer}{numerals}
+\DeclareKeys[polyglossia/gloss/khmer]
+ {
+ numerals.choice:,
+ numerals / khmer.code =
+ {%
+ \@khmer@numeralstrue
+ \SetLanguageKeys{khmer}{bcp47-extension-u=nu-khmr}%
+ },
+ numerals / arabic.code =
+ {%
+ \@khmer@numeralsfalse
+ \SetLanguageKeys{khmer}{bcp47-extension-u=nu-latn}%
+ },
+ numerals.default:n = arabic
+ }
+
+\SetGlossOptions{khmer}{numerals}
\def\captionskhmer{%
\def\prefacename{អារម្ភកថា}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-km.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-km.ldf
index b37d1706ab6..8780f9607a1 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-km.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-km.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-km.ldf}[polyglossia: module for km (Khmer)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{khmer}
+\InheritGlossFile{khmer}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-kmr-Arab.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-kmr-Arab.ldf
index 523a68916e4..1d531a5c74a 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-kmr-Arab.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-kmr-Arab.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-kmr-Arab.ldf}[polyglossia: module for kmr-Arab (Kurdish)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{kurdish}
+\InheritGlossFile{kurdish}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-kmr-Latn.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-kmr-Latn.ldf
index dfc34ce7ee9..292b4be633e 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-kmr-Latn.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-kmr-Latn.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-kmr-Latn.ldf}[polyglossia: module for kmr-Latn (Kurdish)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{kurdish}
+\InheritGlossFile{kurdish}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-kmr.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-kmr.ldf
index a908ee2d815..08db6b0ca78 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-kmr.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-kmr.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-kmr.ldf}[polyglossia: module for kmr (Kurdish)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{kurdish}
+\InheritGlossFile{kurdish}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-kn.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-kn.ldf
index 66c45035a90..04304f4d68c 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-kn.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-kn.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-kn.ldf}[polyglossia: module for kn (Kannada)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{kannada}
+\InheritGlossFile{kannada}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ko.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ko.ldf
index bf767b7cda9..69f94cc04bd 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ko.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ko.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ko.ldf}[polyglossia: module for ko (Korean)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{korean}
+\InheritGlossFile{korean}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-korean.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-korean.ldf
index 48464c50d25..e720d797fee 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-korean.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-korean.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-korean.ldf}[polyglossia: module for Korean]
@@ -18,40 +18,48 @@
% BCP-47 compliant aliases
\setlanguagealias*{korean}{ko}
-% variant : plain (0), classic (1), or modern (2)
-\define@choicekey{korean}{variant}[\xpg@val\xpg@nr]{plain,classic,modern}[plain]{%
- \let\xpg@korean@variant\xpg@nr
-}
-% captions : hangul (0) or hanja (1)
-\define@choicekey{korean}{captions}[\xpg@val\xpg@nr]{hangul,hanja}[hangul]{%
- \let\xpg@korean@captions\xpg@nr
-}
-% swapstrings: all (0), headings (1), headers (2), or none (3)
\newif\if@korean@swapheadings
\newif\if@korean@swapheaders
-\define@choicekey*+{korean}{swapstrings}[\xpg@val\xpg@nr]{all,headings,headers,none}[all]{%
- \ifcase\xpg@nr\relax
- % all:
- \@korean@swapheadingstrue%
- \@korean@swapheaderstrue%
- \or
- % headings:
- \@korean@swapheadingstrue%
- \@korean@swapheadersfalse%
- \or
- % headers:
- \@korean@swapheadingsfalse%
- \@korean@swapheaderstrue%
- \or
- % none:
- \@korean@swapheadingsfalse%
- \@korean@swapheadersfalse%
- \fi
- \xpg@info{Option: Korean, swapstrings=\xpg@val}%
-}{\xpg@warning{Unknown Korean swapstrings value `#1'}}
+
+\DeclareKeys[polyglossia/gloss/korean]
+ {
+ variant.choices:nn = { plain, classic, modern }
+ {%
+ \edef\xpg@korean@variant{\the\numexpr\UseName{l_keys_choice_int}-1\relax}%
+ },
+ variant.default:n = plain,
+ captions.choices:nn = { hangul, hanja }
+ {%
+ \edef\xpg@korean@captions{\the\numexpr\UseName{l_keys_choice_int}-1\relax}%
+ },
+ captions.default:n = hangul,
+ swapstrings.choice:,
+ swapstrings / all.code =
+ {%
+ \@korean@swapheadingstrue
+ \@korean@swapheaderstrue
+ },
+ swapstrings / headings.code =
+ {%
+ \@korean@swapheadingstrue
+ \@korean@swapheadersfalse
+ },
+ swapstrings / headers.code =
+ {%
+ \@korean@swapheadingsfalse
+ \@korean@swapheaderstrue
+ },
+ swapstrings / none.code =
+ {%
+ \@korean@swapheadingsfalse
+ \@korean@swapheadersfalse
+ },
+ swapstrings.default:n = all,
+ swapstrings/unknown.code = \xpg@warning{Unknown Korean swapstrings value `#1'}
+ }
% Register default options
-\xpg@initialize@gloss@options{korean}{variant=plain,swapstrings=all,captions=hangul}
+\InitializeGlossOptions{korean}{variant=plain,swapstrings=all,captions=hangul}
\def\captionskorean{%
\ifcase\xpg@korean@captions\relax
@@ -113,60 +121,48 @@
% change chapter and part headings
\if@korean@swapheadings
% With titlesec
- \ifcsdef{titleformat}{%
- \ifcsdef{NR@part}{% Hyperref (nameref)
- \let\xpg@save@part@format\NR@part
- \patchcmd{\NR@part}%
- {\partname\nobreakspace\thepart}%
- {\koreanTHEname\nobreakspace \thepart\nobreakspace \partname}%
- {}%
- {\xpg@warning{Failed to patch part for Korean}}%
- }{% not hyperref
- \ifcsdef{@part}{%
- \let\xpg@save@part@format\@part
- \patchcmd{\@part}%
+ \@ifundefined{titleformat}{%
+ % With KOMA
+ \@ifundefined{sectionformat}{%
+ % With memoir
+ \@ifundefined{@memptsize}{%
+ % With standard classes
+ \@ifundefined{@makechapterhead}{}{%
+ \let\xpg@save@chap@format\@makechapterhead
+ \patchcmd{\@makechapterhead}%
+ {\@chapapp\space \thechapter}%
+ {%
+ \ifx\@chapapp\korean@appendix@chapapp
+ \appendixname\space \thechapter
+ \else
+ \koreanTHEname\space \thechapter\space \@chapapp
+ \fi
+ }%
+ {}%
+ {\xpg@warning{Failed to patch chapter for Korean}}%
+ }%
+ \@ifundefined{NR@part}{% not hyperref
+ \@ifundefined{@part}{}{%
+ \ifpatchable{\@part}%
+ {\partname\nobreakspace\thepart}%
+ {\let\xpg@save@part@format\@part
+ \patchcmd{\@part}%
+ {\partname\nobreakspace\thepart}%
+ {\koreanTHEname\nobreakspace \thepart\nobreakspace \partname}%
+ {}%
+ {\@ifundefined{part}{}{\xpg@warning{Failed to patch part for Korean}}}}%
+ {}%
+ }% (end \ifdefined\@part)
+ }{% Hyperref (nameref)
+ \let\xpg@save@part@format\NR@part
+ \patchcmd{\NR@part}%
{\partname\nobreakspace\thepart}%
{\koreanTHEname\nobreakspace \thepart\nobreakspace \partname}%
{}%
{\xpg@warning{Failed to patch part for Korean}}%
- }{}%
- }
- \ifcsdef{chapter}{%
- \titleformat\chapter[display]%
- {\@ifundefined{ttl@fil}{\raggedright}{\ttl@fil}\ttl@fonts\ttl@sizes6}%
- {%
- \ifx\@chapapp\korean@appendix@chapapp
- \appendixname\space \thechapter
- \else
- \koreanTHEname\space \thechapter\space \@chapapp
- \fi
- }{.8\baselineskip}{\ttl@sizes\z@\ttl@passexplicit}%
- }{}%
- }{% (not \ifdefined\titleformat)
- % With KOMA
- \ifcsdef{sectionformat}{%
- \ifcsdef{partformat}{%
- \let\xpg@save@part@format\partformat
- \renewcommand*{\partformat}{\koreanTHEname~\thepart~\partname}%
- }{}%
- \ifcsdef{chapterformat}{%
- \let\xpg@save@chap@format\chapterformat
- \renewcommand*{\chapterformat}{\mbox{%
- \IfChapterUsesPrefixLine
- {%
- \ifx\@chapapp\korean@appendix@chapapp
- \chapapp\nobreakspace \thechapter\autodot
- \else
- \koreanTHEname\nobreakspace \thechapter\nobreakspace \chapapp\autodot
- \fi
- }%
- {\thechapter\autodot\enskip}%
- }}%
- }{}%
- }{% (not \ifdefined\sectionformat)
- % With memoir
- \ifcsdef{@memptsize}{%
- \ifcsdef{@makechapterhead}{%
+ }% (end not hyperref)
+ }{% (\ifdefined\@memptsize)
+ \@ifundefined{@makechapterhead}{}{%
\let\xpg@save@chap@format\@makechapterhead
\patchcmd{\@makechapterhead}%
{\printchaptername \chapternamenum \printchapternum}%
@@ -184,19 +180,9 @@
\ifpatchable\printchaptername\@chapapp
{\chapnamefont\koreanTHEname\chapternamenum}{}}%
\fi
- }{}%
- \ifcsdef{NR@part}{% Hyperref (nameref)
- \let\xpg@save@part@format\NR@part
- \patchcmd{\NR@part}%
- {\printpartname \partnamenum \printpartnum}%
- {\printkoreanpartthe \printpartnum\partnamenum \printpartname}%
- {}%
- {\xpg@warning{Failed to patch part for Korean}}%
- \ifdefined\printkoreanpartthe\else
- \def\printkoreanpartthe{\partnamefont\koreanTHEname\partnamenum}%
- \fi
- }{% not hyperref
- \ifcsdef{@part}{%
+ }%
+ \@ifundefined{NR@part}{% not hyperref
+ \@ifundefined{@part}{}{%
\let\xpg@save@part@format\@part
\patchcmd{\@part}%
{\printpartname \partnamenum \printpartnum}%
@@ -206,84 +192,77 @@
\ifdefined\printkoreanpartthe\else
\def\printkoreanpartthe{\partnamefont\koreanTHEname\partnamenum}%
\fi
- }{}%
- }%
- }{% (not \ifdefined\@memptsize)
- % With standard classes
- \ifcsdef{@makechapterhead}{%
- \let\xpg@save@chap@format\@makechapterhead
- \patchcmd{\@makechapterhead}%
- {\@chapapp\space \thechapter}%
- {%
- \ifx\@chapapp\korean@appendix@chapapp
- \appendixname\space \thechapter
- \else
- \koreanTHEname\space \thechapter\space \@chapapp
- \fi
- }%
- {}%
- {\xpg@warning{Failed to patch chapter for Korean}}%
- }{}%
- \ifcsdef{NR@part}{% Hyperref (nameref)
+ }%
+ }{% Hyperref (nameref)
\let\xpg@save@part@format\NR@part
\patchcmd{\NR@part}%
- {\partname\nobreakspace\thepart}%
- {\koreanTHEname\nobreakspace \thepart\nobreakspace \partname}%
+ {\printpartname \partnamenum \printpartnum}%
+ {\printkoreanpartthe \printpartnum\partnamenum \printpartname}%
{}%
{\xpg@warning{Failed to patch part for Korean}}%
- }{% not hyperref
- \ifcsdef{@part}{%
- \ifpatchable{\@part}%
- {\partname\nobreakspace\thepart}%
- {\let\xpg@save@part@format\@part
- \patchcmd{\@part}%
- {\partname\nobreakspace\thepart}%
- {\koreanTHEname\nobreakspace \thepart\nobreakspace \partname}%
- {}%
- {\ifcsdef{part}{\xpg@warning{Failed to patch part for Korean}}{}}}%
- {}%
- }{}% (end \ifdefined\@part)
- }% (end not hyperref)
+ \ifdefined\printkoreanpartthe\else
+ \def\printkoreanpartthe{\partnamefont\koreanTHEname\partnamenum}%
+ \fi
+ }%
}% (end \ifdefined\@memptsize)
+ }{% (\ifdefined\sectionformat)
+ \@ifundefined{partformat}{}{%
+ \let\xpg@save@part@format\partformat
+ \renewcommand*{\partformat}{\koreanTHEname~\thepart~\partname}%
+ }%
+ \@ifundefined{chapterformat}{}{%
+ \let\xpg@save@chap@format\chapterformat
+ \renewcommand*{\chapterformat}{\mbox{%
+ \IfChapterUsesPrefixLine
+ {%
+ \ifx\@chapapp\korean@appendix@chapapp
+ \chapapp\nobreakspace \thechapter\autodot
+ \else
+ \koreanTHEname\nobreakspace \thechapter\nobreakspace \chapapp\autodot
+ \fi
+ }%
+ {\thechapter\autodot\enskip}%
+ }}%
+ }%
}% (end \ifdefined\sectionformat)
+ }{% (\ifdefined\titleformat)
+ \@ifundefined{NR@part}{% not hyperref
+ \@ifundefined{@part}{}{%
+ \let\xpg@save@part@format\@part
+ \patchcmd{\@part}%
+ {\partname\nobreakspace\thepart}%
+ {\koreanTHEname\nobreakspace \thepart\nobreakspace \partname}%
+ {}%
+ {\xpg@warning{Failed to patch part for Korean}}%
+ }%
+ }{% Hyperref (nameref)
+ \let\xpg@save@part@format\NR@part
+ \patchcmd{\NR@part}%
+ {\partname\nobreakspace\thepart}%
+ {\koreanTHEname\nobreakspace \thepart\nobreakspace \partname}%
+ {}%
+ {\xpg@warning{Failed to patch part for Korean}}%
+ }%
+ \@ifundefined{chapter}{}{%
+ \titleformat\chapter[display]%
+ {\@ifundefined{ttl@fil}{\raggedright}{\ttl@fil}\ttl@fonts\ttl@sizes6}%
+ {%
+ \ifx\@chapapp\korean@appendix@chapapp
+ \appendixname\space \thechapter
+ \else
+ \koreanTHEname\space \thechapter\space \@chapapp
+ \fi
+ }{.8\baselineskip}{\ttl@sizes\z@\ttl@passexplicit}%
+ }%
}% (end \ifdefined\titleformat)
\fi % (end \if@korean@swapheadings)
%
% Change running headers
\if@korean@swapheaders
- \ifcsdef{chapterformat}{%
- % With KOMA
- \let\xpg@save@chaptermark@format\chaptermarkformat
- \renewcommand*\chaptermarkformat{%
- \IfChapterUsesPrefixLine
- {%
- \ifx\@chapapp\korean@appendix@chapapp
- \chapapp\ \thechapter\autodot
- \else
- \koreanTHEname\ \thechapter\ \chapapp\autodot
- \fi
- }%
- {\thechapter\autodot}%
- \enskip
- }%
- }{% (not \ifdefined\chapterformat)
- \ifcsdef{@memptsize}{%
- % With memoir
- \let\xpg@save@chaptermark@format\chaptermark
- \patchcmd{\chaptermark}%
- {\@chapapp\ \@nameuse{thechapter}}%
- {%
- \ifx\@chapapp\korean@appendix@chapapp
- \appendixname\ \@nameuse{thechapter}%
- \else
- \koreanTHEname\ \@nameuse{thechapter}\ \@chapapp
- \fi
- }%
- {}%
- {\xpg@warning{Failed to patch chaptermark for Korean}}%
- }{% (not \ifdefined\@memptsize)
+ \@ifundefined{chapterformat}{%
+ \@ifundefined{@memptsize}{%
% With standard classes
- \ifcsdef{chaptermark}{%
+ \@ifundefined{chaptermark}{}{%
\ifpatchable{\chaptermark}%
{\@chapapp\ \thechapter}%
{\let\xpg@save@chaptermark@format\chaptermark
@@ -299,65 +278,94 @@
{}%
{\xpg@warning{Failed to patch chaptermark for Korean}}}%
{}%
- }{}% (end \ifdefined\chaptermark)
+ }% (end \ifdefined\chaptermark)
+ }{% (\ifdefined\@memptsize)
+ % With memoir
+ \let\xpg@save@chaptermark@format\chaptermark
+ \patchcmd{\chaptermark}%
+ {\@chapapp\ \@nameuse{thechapter}}%
+ {%
+ \ifx\@chapapp\korean@appendix@chapapp
+ \appendixname\ \@nameuse{thechapter}%
+ \else
+ \koreanTHEname\ \@nameuse{thechapter}\ \@chapapp
+ \fi
+ }%
+ {}%
+ {\xpg@warning{Failed to patch chaptermark for Korean}}%
}% (end \ifdefined\@memptsize)
+ }{% (\ifdefined\chapterformat)
+ % With KOMA
+ \let\xpg@save@chaptermark@format\chaptermarkformat
+ \renewcommand*\chaptermarkformat{%
+ \IfChapterUsesPrefixLine
+ {%
+ \ifx\@chapapp\korean@appendix@chapapp
+ \chapapp\ \thechapter\autodot
+ \else
+ \koreanTHEname\ \thechapter\ \chapapp\autodot
+ \fi
+ }%
+ {\thechapter\autodot}%
+ \enskip
+ }%
}% (end \ifdefined\chapterformat)
\fi % (end \if@korean@swapheaders)
}
\def\nokorean@headingsformat{%
% Reset chapter and part heading
- \ifcsdef{titleformat}{%
+ \@ifundefined{titleformat}{%
+ \@ifundefined{sectionformat}{%
+ % With memoir and standard classes
+ \@ifundefined{xpg@save@part@format}{}{%
+ \@ifundefined{NR@part}{%
+ \let\@part\xpg@save@part@format
+ }{%
+ \let\NR@part\xpg@save@part@format
+ }%
+ }%
+ \@ifundefined{xpg@save@chap@format}{}{%
+ \let\@makechapterhead\xpg@save@chap@format
+ }%
+ }{%
+ % With KOMA
+ \@ifundefined{xpg@save@part@format}{}{%
+ \let\partformat\xpg@save@part@format
+ }%
+ \@ifundefined{xpg@save@chap@format}{}{%
+ \let\chapterformat\xpg@save@chap@format
+ }%
+ }% (end \ifdefined\sectionformat)
+ }{% (\ifdefined\titleformat)
% With titlesec
- \ifcsdef{xpg@save@part@format}{%
- \ifcsdef{NR@part}{%
- \let\NR@part\xpg@save@part@format
- }{%
+ \@ifundefined{xpg@save@part@format}{}{%
+ \@ifundefined{NR@part}{%
\let\@part\xpg@save@part@format
+ }{%
+ \let\NR@part\xpg@save@part@format
}%
- }{}%
- \ifcsdef{chapter}{%
+ }%
+ \@ifundefined{chapter}{}{%
\titleformat\chapter[display]%
{\@ifundefined{ttl@fil}{\raggedright}{\ttl@fil}\ttl@fonts\ttl@sizes6}%
{\@chapapp\space\thechapter}{.8\baselineskip}{\ttl@sizes\z@\ttl@passexplicit}%
- }{}%
- }{% (not \ifdefined\titleformat)
- \ifcsdef{sectionformat}{%
- % With KOMA
- \ifcsdef{xpg@save@part@format}{%
- \let\partformat\xpg@save@part@format
- }{}%
- \ifcsdef{xpg@save@chap@format}{%
- \let\chapterformat\xpg@save@chap@format
- }{}%
- }{%
- % With memoir and standard classes
- \ifcsdef{xpg@save@part@format}{%
- \ifcsdef{NR@part}{%
- \let\NR@part\xpg@save@part@format
- }{%
- \let\@part\xpg@save@part@format
- }%
- }{}%
- \ifcsdef{xpg@save@chap@format}{%
- \let\@makechapterhead\xpg@save@chap@format
- }{}%
- }% (end \ifdefined\sectionformat)
+ }%
}% (end \ifdefined\titleformat)
%
% Reset headers
- \ifcsdef{chaptermarkformat}{%
- % With KOMA
- \ifcsdef{xpg@save@chaptermark@format}{%
- \let\chaptermarkformat\xpg@save@chaptermark@format
- }{}%
- }{%
- \ifcsdef{chaptermark}{%
+ \@ifundefined{chaptermarkformat}{%
+ \@ifundefined{chaptermark}{}{%
% With memoir and standard classes
- \ifcsdef{xpg@save@chaptermark@format}{%
+ \@ifundefined{xpg@save@chaptermark@format}{}{%
\let\chaptermark\xpg@save@chaptermark@format
- }{}%
- }{}% (end \ifdefined\chaptermark)
+ }%
+ }% (end \ifdefined\chaptermark)
+ }{%
+ % With KOMA
+ \@ifundefined{xpg@save@chaptermark@format}{}{%
+ \let\chaptermarkformat\xpg@save@chaptermark@format
+ }%
}% (end \ifdefined\chapterformat)
}
@@ -421,13 +429,18 @@
\XeTeXinterchartokenstate\z@
\XeTeXlinebreakpenalty\z@
\XeTeXlinebreakskip\z@skip
- \XeTeXlinebreaklocale "en"
+ \XeTeXlinebreaklocale ""
\noextras@korean@common
}
+ % \XeTeXlinebreaklocale is global,
+ % so we need to reset after nested language got closed
+ \def\nestedextras@korean{%
+ \XeTeXlinebreaklocale "ko"\relax
+ }
\else % luatex
- \def\inlineextras@korean{\xpg@attr@korean\xpg@korean@variant\relax}
+ \def\inlineextras@korean{\xpg@attr@cjkspacing\xpg@korean@variant\relax}
\def\noextras@korean{%
- \unsetattribute\xpg@attr@korean
+ \unsetattribute\xpg@attr@cjkspacing
\noextras@korean@common
}
\fi
@@ -447,7 +460,7 @@
\let\newattribute\newluatexattribute
\let\unsetattribute\unsetluatexattribute
\fi
-\newattribute\xpg@attr@korean
+\newattribute\xpg@attr@cjkspacing
\newattribute\xpg@attr@autojosa
% user commands for Josa
% Josa : particles in Korean grammar that immediately follow a noun or pronoun.
@@ -468,7 +481,7 @@
\protected\def\로{\으 로}
\def\xpg@reset@josa {\global\let\xpg@josa@zwang\z@}\xpg@reset@josa
% load lua file for korean
-\directlua{ require "polyglossia-korean" }
+\directlua{ require "polyglossia-cjk-spacing" }
\endinput\fi
% XeTeX
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ku-Arab.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ku-Arab.ldf
index 339368062c8..cd3dd2b095a 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ku-Arab.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ku-Arab.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ku-Arab.ldf}[polyglossia: module for ku-Arab (Kurdish)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{kurdish}
+\InheritGlossFile{kurdish}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ku-Latn.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ku-Latn.ldf
index 31f0b817406..7101900dd18 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ku-Latn.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ku-Latn.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ku-Latn.ldf}[polyglossia: module for ku-Latn (Kurdish)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{kurdish}
+\InheritGlossFile{kurdish}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ku.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ku.ldf
index 59805fb6261..2f8ccbff8b3 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ku.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ku.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ku.ldf}[polyglossia: module for ku (Kurdish)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{kurdish}
+\InheritGlossFile{kurdish}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-kurdish.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-kurdish.ldf
index e114fd118aa..7f0f9fd3131 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-kurdish.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-kurdish.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
% Created on September 1, 2019
% Last updated on May 17, 2020
@@ -41,36 +41,9 @@
\newif\if@kurdish@kurmanji
\def\kurdish@variant{sorani}
-\define@choicekey*+{kurdish}{variant}[\xpg@val\xpg@nr]{sorani,kurmanji}[sorani]{%
- \ifcase\xpg@nr\relax
- % sorani:
- \def\kurdish@variant{sorani}%
- \@kurdish@kurmanjifalse%
- \or
- % kurmanji:
- \def\kurdish@variant{kurmanji}%
- \@kurdish@kurmanjitrue%
- \fi
- \kurdish@set@variety%
- \xpg@info{Option: kurdish, variant=\xpg@val}%
-}{\xpg@warning{Unknown Kurdish variant `#1'}}
\newif\if@kurdish@latin
\newif\if@kurdish@arabic
-\define@choicekey*+{kurdish}{script}[\xpg@val\xpg@nr]{arabic,latin}{%
- \ifcase\xpg@nr\relax
- % arabic:
- \@kurdish@latinfalse%
- \@kurdish@arabictrue%
- \or
- % latin:
- \@kurdish@latintrue%
- \@kurdish@arabicfalse%
- \fi
- \kurdish@set@variety%
- \xpg@info{Option: kurdish, script=\xpg@val}%
-}{\xpg@warning{Unknown Kurdish script `#1'}}
-
\newif\if@western@numerals
\newif\if@force@western@numerals
@@ -87,7 +60,7 @@
\SetLanguageKeys{kurdish}{script=Latin,direction=LR,scripttag=latn,babelname=kurdish,bcp47=ckb-Arab,bcp47-language=ckb,bcp47-script=Arab,bcp47-casing=ckb-Arab}%
\fi
\def\kurdish@script{latin}
- \xpg@fontsetup@latin{kurdish}%
+ \SetupLatinPolyglossiaFont{kurdish}%
\else
\if@kurdish@arabic% arabic explicitly set
\if@kurdish@kurmanji
@@ -97,61 +70,84 @@
\else
\SetLanguageKeys{kurdish}{script=Arabic,direction=RL,scripttag=arab,babelname=kurdish,bcp47=ckb-Arab,bcp47-language=ckb,bcp47-script=Arab,bcp47-casing=ckb-Arab}%
\fi
- \xpg@fontsetup@nonlatin{kurdish}%
+ \SetupNonLatinPolyglossiaFont{kurdish}%
\else% sorani=arabic, kurmanji=latin
\if@kurdish@kurmanji
\@western@numeralstrue%
\SetLanguageKeys{kurdish}{script=Latin,direction=LR,scripttag=latn,babelname=kurmanji,bcp47=kmr-Latn,bcp47-language=kmr,bcp47-script=Latn,bcp47-casing=kmr-Latn}%
- \xpg@fontsetup@latin{kurdish}%
+ \SetupLatinPolyglossiaFont{kurdish}%
\def\kurdish@script{latin}
\else
\SetLanguageKeys{kurdish}{script=Arabic,direction=RL,scripttag=arab,babelname=kurdish,bcp47=ckb-Arab,bcp47-language=ckb,bcp47-script=Arab,bcp47-casing=ckb-Arab}%
- \xpg@fontsetup@nonlatin{kurdish}%
+ \SetupNonLatinPolyglossiaFont{kurdish}%
\fi
\fi
\fi
}
\newif\if@western@numerals
-\define@choicekey*+{kurdish}{numerals}[\xpg@val\xpg@nr]{eastern,western}[eastern]{%
- \ifcase\xpg@nr\relax
- % eastern:
- \@western@numeralsfalse%
- \or
- % western:
- \@western@numeralstrue%
- \@force@western@numeralstrue%
- \fi
- \xpg@info{Option: Kurdish, numerals=\xpg@val}%
-}{\xpg@warning{Unknown Kurdish numerals option `#1'}}
\newif\ifkurdish@customsep\kurdish@customsepfalse
\def\xpg@sepmark{}
-\define@key{kurdish}{sectionsep}[.]{%
- \kurdish@customseptrue%
- \gdef\xpg@sepmark{#1}%
-}
-
-%this is needed for \abjad in arabicnumbers.sty
-\define@boolkey{kurdish}[kurdish@]{abjadjimnotail}[true]{%
- \ifkurdish@abjadjimnotail
- \abjad@jim@notailtrue%
- \else
- \abjad@jim@notailfalse
- \fi%
-}
-
-% NOT YET USED
-\define@key{kurdish}{locale}[default]{%
- \def\@kurdish@locale{#1}}
%TODO add option for CALENDAR
+\DeclareKeys[polyglossia/gloss/kurdish]
+ {
+ variant.choice:,
+ variant / sorani.code =
+ {%
+ \def\kurdish@variant{sorani}%
+ \@kurdish@kurmanjifalse
+ \kurdish@set@variety
+ },
+ variant / kurmanji.code =
+ {%
+ \def\kurdish@variant{kurmanji}%
+ \@kurdish@kurmanjitrue
+ \kurdish@set@variety
+ },
+ variant.default:n = sorani,
+ variant/unknown.code = \xpg@warning{Unknown Kurdish variant `#1'},
+ script.choice:,
+ script / arabic.code =
+ {%
+ \@kurdish@latinfalse
+ \@kurdish@arabictrue
+ \kurdish@set@variety
+ },
+ script / latin.code =
+ {%
+ \@kurdish@latintrue
+ \@kurdish@arabicfalse
+ \kurdish@set@variety
+ },
+ script.default:n = sorani,
+ script/unknown.code = \xpg@warning{Unknown Kurdish script `#1'},
+ numerals.choice:,
+ numerals / eastern.code =
+ {%
+ \@western@numeralsfalse
+ },
+ numerals / western.code =
+ {%
+ \@western@numeralstrue
+ \@force@western@numeralstrue
+ },
+ numerals.default:n = eastern,
+ numerals/unknown.code = \xpg@warning{Unknown Kurdish numerals value `#1'},
+ sectionsep.code = \gdef\xpg@sepmark{#1}\kurdish@customseptrue,
+ sectionsep.default:n = .,
+ abjadjimnotail.if = abjad@jim@notail,
+ abjadjimnotail.default:n = true,
+ locale.store = \@kurdish@locale
+ }
+
% Register default options
-\xpg@initialize@gloss@options{kurdish}{variant=sorani,locale=default,script=arabic,abjadjimnotail=false,numerals=eastern}
+\InitializeGlossOptions{kurdish}{variant=sorani,locale=default,script=arabic,abjadjimnotail=false,numerals=eastern}
\def\kurdish@language{%
- \polyglossia@setup@language@patterns{\kurdish@pattern}%
+ \SetupPolyglossiaLangPatterns{\kurdish@pattern}%
}%
\def\kurdishNativemonth#1{\ifcase#1%
@@ -404,16 +400,16 @@
}
\def\nokurdish@xetex@capsformat{%
- \ifcsdef{xpg@save@sepmark}{%
+ \ifcsname xpg@save@sepmark\endcsname%
\SepMark{\xpg@save@sepmark}
- }{}%
+ \fi%
}
\def\kurdish@luatex@capsformat{%
%
% change chapter and part headings
\ifkurdish@customsep
- \ifcsdef{chapter}{%
+ \ifcsname chapter\endcsname%
\let\xpg@save@thesection\thesection%
\renewcommand*\thesection{\thechapter\xpg@sepmark\@arabic\c@section}
\let\xpg@save@theequation\theequation%
@@ -425,7 +421,7 @@
\let\xpg@save@thetable\thetable%
\renewcommand*\thetable{%
\ifnum\c@chapter>\z@\thechapter\xpg@sepmark\fi\@arabic\c@table}
- }{}
+ \fi%
\let\xpg@save@thesubsection\thesubsection%
\renewcommand\thesubsection
{\thesection\xpg@sepmark\@arabic\c@subsection}
@@ -440,30 +436,30 @@
}
\def\nokurdish@luatex@capsformat{%
- \ifcsdef{xpg@save@thesection}{%
+ \ifcsname xpg@save@thesection\endcsname%
\let\thesection\xpg@save@thesection%
- }{}%
- \ifcsdef{xpg@save@theequation}{%
+ \fi%
+ \ifcsname xpg@save@theequation\endcsname%
\let\theequation\xpg@save@theequation%
- }{}%
- \ifcsdef{xpg@save@thefigure}{%
+ \fi%
+ \ifcsname xpg@save@thefigure\endcsname%
\let\thefigure\xpg@save@thefigure%
- }{}%
- \ifcsdef{xpg@save@thetable}{%
+ \fi%
+ \ifcsname xpg@save@thetable\endcsname%
\let\thetable\xpg@save@thetable%
- }{}%
- \ifcsdef{xpg@save@thesubsection}{%
+ \fi%
+ \ifcsname xpg@save@thesubsection\endcsname%
\let\thesubsection\xpg@save@thesubsection%
- \ifcsdef{xpg@save@thesubsubsection}{%
+ \ifcsname xpg@save@thesubsubsection\endcsname%
\let\thesubsubsection\xpg@save@thesubsubsection%
- }{}%
- }{}%
- \ifcsdef{xpg@save@theparagraph}{%
+ \fi%
+ \fi%
+ \ifcsname xpg@save@theparagraph\endcsname%
\let\theparagraph\xpg@save@theparagraph%
- }{}%
- \ifcsdef{xpg@save@thesubparagraph}{%
+ \fi%
+ \ifcsname xpg@save@thesubparagraph\endcsname%
\let\thesubparagraph\xpg@save@thesubparagraph%
- }{}%
+ \fi%
}
\def\blockextras@kurdish{%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-kurmanji.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-kurmanji.ldf
index db4eabba41d..622cec28a9b 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-kurmanji.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-kurmanji.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-kurmanji.ldf}[polyglossia: module for Kurmanji Kurdish]
% We provide this gloss for babel compatibility.
-\xpg@load@master@language{kurdish}
+\InheritGlossFile{kurdish}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-la-x-classic.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-la-x-classic.ldf
index abb9bc4bf2f..92bf3d90364 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-la-x-classic.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-la-x-classic.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-la-xclassic.ldf}[polyglossia: module for la-xclassic (Latin)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{latin}
+\InheritGlossFile{latin}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-la-x-ecclesia.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-la-x-ecclesia.ldf
index b00755c8ace..ce81a43267a 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-la-x-ecclesia.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-la-x-ecclesia.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-la-xecclesiastic.ldf}[polyglossia: module for la-xecclesiastic (Latin)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{latin}
+\InheritGlossFile{latin}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-la-x-medieval.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-la-x-medieval.ldf
index 0d75aaf005a..3050d190040 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-la-x-medieval.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-la-x-medieval.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-la-xmedieval.ldf}[polyglossia: module for la-xmedieval (Latin)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{latin}
+\InheritGlossFile{latin}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-la.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-la.ldf
index c1e3e26ece0..99600faf727 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-la.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-la.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-la.ldf}[polyglossia: module for la (Latin)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{latin}
+\InheritGlossFile{latin}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-lao.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-lao.ldf
index 4d979bb93c1..23587f106b3 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-lao.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-lao.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-lao.ldf}[polyglossia: module for Lao]
@@ -22,14 +22,23 @@
\newif\if@lao@numerals
\def\tmp@lao{lao}
-\define@key{lao}{numerals}[arabic]{%
- \def\@tmpa{#1}%
- \ifx\@tmpa\tmp@lao\@lao@numeralstrue\else
- \@lao@numeralsfalse\fi
-}
+
+\DeclareKeys[polyglossia/gloss/lao]
+ {
+ numerals.choice:,
+ numerals / arabic.code =
+ {%
+ \@lao@numeralsfalse
+ },
+ numerals / lao.code =
+ {%
+ \@lao@numeralstrue
+ },
+ numerals.default:n = arabic
+ }
% Register default options
-\xpg@initialize@gloss@options{lao}{numerals=arabic}
+\InitializeGlossOptions{lao}{numerals=arabic}
% Translations provided by Brian Wilson <bountonw at gmail.com>
\def\captionslao{%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-latex.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-latex.ldf
index 18d83e92114..f2bcb54772d 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-latex.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-latex.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-latex.ldf}[polyglossia: module for default language]
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-latin.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-latin.ldf
index 2fc092c0638..c1285ae2705 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-latin.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-latin.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-latin.ldf}[polyglossia: module for Latin]
@@ -33,6 +33,9 @@
\bool_new:N \l_polyglossia_latin_use_v_bool
\bool_new:N \l_polyglossia_latin_use_ligatures_bool
\bool_new:N \l_polyglossia_latin_capitalize_month_bool
+\bool_new:N \l_polyglossia_latin_babelshorthands_bool
+\bool_new:N \l_polyglossia_latin_prosodic_shorthands_bool
+\bool_new:N \l_polyglossia_latin_ecclesiastic_footnotes_bool
\cs_new:Npn \polyglossia_latin_classical_character_codes:
{
@@ -68,11 +71,11 @@
\cs_new:Npn \polyglossia_latin_use_modern_patterns:
{
- \xpg@ifdefined {latin}
+ \IfLanguageDefinedTF {latin}
{
\def \latin@language
{
- \polyglossia@setup@language@patterns {latin}
+ \SetupPolyglossiaLangPatterns {latin}
\str_case:Vn \l_polyglossia_latin_variant_str
{
{classic} { \adddialect \l@classiclatin \l@latin }
@@ -96,11 +99,11 @@
\cs_new:Npn \polyglossia_latin_set_patterns:n #1
% #1 may be "classiclatin" or "liturgicallatin"
{
- \xpg@ifdefined {#1}
+ \IfLanguageDefinedTF {#1}
{
\def \latin@language
{
- \polyglossia@setup@language@patterns {#1}
+ \SetupPolyglossiaLangPatterns {#1}
\str_case:Vn \l_polyglossia_latin_variant_str
{
{classic} {
@@ -316,7 +319,8 @@
% Save original footnote definition
% Do this at the end of the preamble to catch other
% packages' footnote changes (#391)
-\AtEndPreamble{%
+\hook_gput_code:nnn { begindocument / before } {.}
+{
\cs_if_exist:NT \@makefntext
{
\cs_set_eq:NN \polyglossia_latin_original_footnote:n \@makefntext
@@ -340,40 +344,27 @@
\cs_new:Npn \polyglossia_latin_apply_footnote_option:
{
- \str_if_eq:VnTF \xpg@main@language {latin}
+ \IfMainLanguageTF {latin}
{
\cs_if_exist:NT \@makefntext
{
- \iflatin@ecclesiasticfootnotes
+ \bool_if:NTF \l_polyglossia_latin_ecclesiastic_footnotes_bool
+ {
\let \@makefntext \polyglossia_latin_variant_footnote:n
- \else
+ }
+ {
\let \@makefntext \polyglossia_latin_original_footnote:n
- \fi
+ }
}
}
{
- \iflatin@ecclesiasticfootnotes
- \msg_warning:nn {polyglossia} {latin / ineffective footnote option}
- \fi
- }
- }
-
-\define@boolkey {latin} [latin@] {ecclesiasticfootnotes} [true]
- {
- \token_if_eq_meaning:NNTF \@onlypreamble \@notprerr
- {
- % within the document
- \polyglossia_latin_apply_footnote_option:
- }
- {
- % within the preamble
- % The application of the option has to be postponed as the main
- % language may be undefined when the option is called.
- \AtBeginDocument { \polyglossia_latin_apply_footnote_option: }
+ \bool_if:NT \l_polyglossia_latin_ecclesiastic_footnotes_bool
+ {
+ \msg_warning:nn {polyglossia} {latin / ineffective footnote option}
+ }
}
}
-
%%%%% Language variants: classic, medieval, modern, and ecclesiastic
\str_new:N \l_polyglossia_latin_variant_str
@@ -436,58 +427,6 @@
\polyglossia_latin_use_modern_patterns:
}
-\define@key{latin}{variant}
- {
- \str_case:nnF {#1}
- {
- {classic}
- {
- \msg_info:nnn {polyglossia} {latin / language variant} {classic}
- \polyglossia_latin_classic_settings:
- }
- {medieval}
- {
- \msg_info:nnn {polyglossia} {latin / language variant} {medieval}
- \polyglossia_latin_medieval_settings:
- }
- {modern}
- {
- \msg_info:nnn {polyglossia} {latin / language variant} {modern}
- \polyglossia_latin_modern_settings:
- }
- {ecclesiastic}
- {
- \msg_info:nnn {polyglossia} {latin / language variant} {ecclesiastic}
- \polyglossia_latin_ecclesiastic_settings:
- }
- }
- {
- \msg_warning:nnn {polyglossia} {latin / illegal language variant} {#1}
- }
- }
-
-
-%%%%% Boolean options concerning spelling
-
-\define@boolkey{latin}[latin@]{usej}[true]
- {
- \iflatin@usej
- \bool_set_true:N \l_polyglossia_latin_use_j_bool
- \else
- \bool_set_false:N \l_polyglossia_latin_use_j_bool
- \fi
- }
-
-\define@boolkey{latin}[latin@]{capitalizemonth}[true]
- {
- \iflatin@capitalizemonth
- \bool_set_true:N \l_polyglossia_latin_capitalize_month_bool
- \else
- \bool_set_false:N \l_polyglossia_latin_capitalize_month_bool
- \fi
- }
-
-
%%%%% Hyphenation variants: classic, liturgical, and modern
\msg_new:nnn {polyglossia} {latin / hyphenation variant}
@@ -500,23 +439,6 @@
The~Latin~hyphenation~variant~"#1"~is~undefined~\msg_line_context:.
}
-\define@key {latin} {hyphenation}
- {
- \str_case:nnTF {#1}
- {
- {classic} { \polyglossia_latin_set_patterns:n {classiclatin} }
- {liturgical} { \polyglossia_latin_set_patterns:n {liturgicallatin} }
- {modern} { \polyglossia_latin_use_modern_patterns: }
- }
- {
- \msg_info:nnn {polyglossia} {latin / hyphenation variant} {#1}
- }
- {
- \msg_warning:nnn {polyglossia} {latin / illegal hyphenation variant} {#1}
- }
- }
-
-
%%%%% Latin captions and date
\def \captionslatin
@@ -588,30 +510,89 @@
}
}
-
-%%%%% Latin shorthands
-
-\define@boolkey{latin}[latin@]{babelshorthands}[true]
- {
- }
-
-\define@boolkey{latin}[latin@]{prosodicshorthands}[true]
+\DeclareKeys[polyglossia/gloss/latin]
{
+ babelshorthands.bool_set:N = \l_polyglossia_latin_babelshorthands_bool,
+ babelshorthands.default:n = true,
+ prosodicshorthands.bool_set:N = \l_polyglossia_latin_prosodic_shorthands_bool,
+ prosodicshorthands.default:n = true,
+ usej.bool_set:N = \l_polyglossia_latin_use_j_bool,
+ capitalizemonth.bool_set:N = \l_polyglossia_latin_capitalize_month_bool,
+ hyphenation.code =
+ \str_case:nnTF {#1}
+ {
+ {classic} { \polyglossia_latin_set_patterns:n {classiclatin} }
+ {liturgical} { \polyglossia_latin_set_patterns:n {liturgicallatin} }
+ {modern} { \polyglossia_latin_use_modern_patterns: }
+ }
+ {
+ \msg_info:nnn {polyglossia} {latin / hyphenation variant} {#1}
+ }
+ {
+ \msg_warning:nnn {polyglossia} {latin / illegal hyphenation variant} {#1}
+ },
+ variant.code =
+ \str_case:nnF {#1}
+ {
+ {classic}
+ {
+ \msg_info:nnn {polyglossia} {latin / language variant} {classic}
+ \polyglossia_latin_classic_settings:
+ }
+ {medieval}
+ {
+ \msg_info:nnn {polyglossia} {latin / language variant} {medieval}
+ \polyglossia_latin_medieval_settings:
+ }
+ {modern}
+ {
+ \msg_info:nnn {polyglossia} {latin / language variant} {modern}
+ \polyglossia_latin_modern_settings:
+ }
+ {ecclesiastic}
+ {
+ \msg_info:nnn {polyglossia} {latin / language variant} {ecclesiastic}
+ \polyglossia_latin_ecclesiastic_settings:
+ }
+ }
+ {
+ \msg_warning:nnn {polyglossia} {latin / illegal language variant} {#1}
+ },
+ ecclesiasticfootnotes.choices:nn = { true, false }
+ {
+ \ifcase\UseName{l_keys_choice_int}\or
+ \bool_set_true:N \l_polyglossia_latin_ecclesiastic_footnotes_bool
+ \else
+ \bool_set_false:N \l_polyglossia_latin_ecclesiastic_footnotes_bool
+ \fi
+ \xpg_if_in_preamble:TF
+ {
+ % within the preamble
+ % The application of the option has to be postponed as the main
+ % language may be undefined when the option is called.
+ \AtBeginDocument { \polyglossia_latin_apply_footnote_option: }
+ }
+ {
+ % within the document
+ \polyglossia_latin_apply_footnote_option:
+ }
+ },
+ ecclesiasticfootnotes.default:n = true
}
% Register default options
-\xpg@initialize@gloss@options{latin}{variant=modern,hyphenation=modern,babelshorthands=false,
+\InitializeGlossOptions{latin}{variant=modern,hyphenation=modern,babelshorthands=false,
prosodicshorthands=false,ecclesiasticfootnotes=false,
usej=false,capitalizemonth=true}
\ifsystem@babelshorthands
- \setkeys{latin}{babelshorthands=true}
+ \SetGlossOptions{latin}{babelshorthands=true}
\else
- \setkeys{latin}{babelshorthands=false}
+ \SetGlossOptions{latin}{babelshorthands=false}
\fi
\ExplSyntaxOff % babelsh.def does not support expl3 syntax
-\ifcsundef{initiate@active@char}{\input{babelsh.def}}{}
+\@ifundefined{initiate@active@char}{\input{babelsh.def}}{}
\ExplSyntaxOn
\initiate@active@char {"}
@@ -637,19 +618,20 @@
% For the aux file:
\protected@write \@auxout { }
{
+ \ProvideDocumentCommand \shorthandoff{sm}{} % #643
\shorthandoff {=}
\shorthandoff* {^} % #582
}
\AtBeginDocument
{
- \str_if_eq:VnTF \xpg@main@language {latin}
+ \IfMainLanguageTF {latin}
{
- \iflatin@prosodicshorthands
- \else
+ \bool_if:NF \l_polyglossia_latin_prosodic_shorthands_bool
+ {
\shorthandoff {=}
\shorthandoff* {^}
- \fi
+ }
}
{
% The following command should not be called if the main language
@@ -1011,7 +993,7 @@
\let \xpgla@savedvalues \empty
-\AtEndPreamble
+\hook_gput_code:nnn { begindocument / before } {.}
{
\edef \xpgla@savedvalues
{
@@ -1024,12 +1006,14 @@
\def \noextras@latin
{
- \iflatin@babelshorthands
+ \bool_if:NT \l_polyglossia_latin_babelshorthands_bool
+ {
\polyglossia_latin_no_shorthands:
- \fi
- \iflatin@prosodicshorthands
+ }
+ \bool_if:NT \l_polyglossia_latin_prosodic_shorthands_bool
+ {
\polyglossia_latin_no_prosodic_shorthands:
- \fi
+ }
\xpgla@savedvalues
\polyglossia_latin_no_punctuation_spacing:
\polyglossia_latin_modern_character_codes:
@@ -1045,16 +1029,20 @@
{
\polyglossia_latin_punctuation_spacing:
}
- \iflatin@babelshorthands
+ \bool_if:NTF \l_polyglossia_latin_babelshorthands_bool
+ {
\polyglossia_latin_shorthands:
- \else
+ }
+ {
\polyglossia_latin_no_shorthands:
- \fi
- \iflatin@prosodicshorthands
+ }
+ \bool_if:NTF \l_polyglossia_latin_prosodic_shorthands_bool
+ {
\polyglossia_latin_prosodic_shorthands:
- \else
+ }
+ {
\polyglossia_latin_no_prosodic_shorthands:
- \fi
+ }
}
\def \blockextras@latin
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-latinclassic.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-latinclassic.ldf
deleted file mode 100644
index 496d8356dde..00000000000
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-latinclassic.ldf
+++ /dev/null
@@ -1,9 +0,0 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
-%
-\ProvidesFile{gloss-latinclassic.ldf}[polyglossia: module for classic Latin]
-
-% We provide this as a babel alias
-
-\xpg@load@master@language{latin}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-latinecclesiastic.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-latinecclesiastic.ldf
deleted file mode 100644
index aab9c456d44..00000000000
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-latinecclesiastic.ldf
+++ /dev/null
@@ -1,9 +0,0 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
-%
-\ProvidesFile{gloss-latinecclesiastic.ldf}[polyglossia: module for ecclesiastic Latin]
-
-% We provide this as a babel alias
-
-\xpg@load@master@language{latin}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-latinmedieval.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-latinmedieval.ldf
deleted file mode 100644
index 1f76e51ba2b..00000000000
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-latinmedieval.ldf
+++ /dev/null
@@ -1,9 +0,0 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
-%
-\ProvidesFile{gloss-latinmedieval.ldf}[polyglossia: module for medieval Latin]
-
-% We provide this as a babel alias
-
-\xpg@load@master@language{latin}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-latvian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-latvian.ldf
index 495a2384b07..e59a7798e3a 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-latvian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-latvian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-latvian.ldf}[polyglossia: module for Latvian]
\PolyglossiaSetup{latvian}{
@@ -25,12 +25,12 @@
\def\contentsname{Saturs}%
\def\listfigurename{Attēlu saraksts}%
\def\listtablename{Tabulu saraksts}%
- \def\indexname{Index}%
+ \def\indexname{Priekšmetu rādītājs}%
\def\figurename{Att.}%
\def\tablename{Tabula}%
\def\partname{Daļa}%
- \def\enclname{encl}%
- \def\ccname{cc}%
+ \def\enclname{Pielikumā}%
+ \def\ccname{Kopija(s)}%
\def\headtoname{To}%
\def\pagename{lpp.}%
\def\seename{sk.}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-lithuanian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-lithuanian.ldf
index c3f389702bb..95116bac6e3 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-lithuanian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-lithuanian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
% Translated by Paulius Sladkevičius <komsas@gmail.com>
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-lo.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-lo.ldf
index dbb6a3406a2..d6790701b6a 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-lo.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-lo.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-lo.ldf}[polyglossia: module for lo (Lao)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{lao}
+\InheritGlossFile{lao}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-lowersorbian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-lowersorbian.ldf
index a754a11e9e2..ef03f24ffe2 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-lowersorbian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-lowersorbian.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-lowersorbian.ldf}[polyglossia: module for Lower Sorbian]
% We provide this as a babel alias
-\xpg@load@master@language{sorbian}
+\InheritGlossFile{sorbian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-lsorbian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-lsorbian.ldf
index 4f054727f6e..cad1b920dcb 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-lsorbian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-lsorbian.ldf
@@ -1,10 +1,10 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-lsorbian.ldf}[polyglossia: module for Lower Sorbian]
% We only provide this gloss for babel compatibility. Since lsorbian is
% a sorbian variety, we use 'sorbian' with variant 'lower' now.
-\xpg@load@master@language{sorbian}
+\InheritGlossFile{sorbian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-lt.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-lt.ldf
index a229c22f599..d1d2172128e 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-lt.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-lt.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-lt.ldf}[polyglossia: module for lt (Lithuanian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{lithuanian}
+\InheritGlossFile{lithuanian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-lv.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-lv.ldf
index 872db3d41eb..83fe7ad2f75 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-lv.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-lv.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-lv.ldf}[polyglossia: module for lv (Latvian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{latvian}
+\InheritGlossFile{latvian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-macedonian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-macedonian.ldf
index 7d1465ee3d5..371cb4292b0 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-macedonian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-macedonian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-macedonian.ldf}[polyglossia: module for Macedonian]
\PolyglossiaSetup{macedonian}{
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-magyar.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-magyar.ldf
index 034802242c0..efdbca6fcb9 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-magyar.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-magyar.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-magyar.ldf}[polyglossia: module for Hungarian (Magyar)]
% We only provide this gloss for babel compatibility.
-\xpg@load@master@language{hungarian}
+\InheritGlossFile{hungarian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-malay.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-malay.ldf
index c890ffcd2b9..8e43e5d6299 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-malay.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-malay.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-malay.ldf}[polyglossia: module for Malay]
@@ -26,65 +26,44 @@
% Backwards compat. alias
\setlanguagealias[variant=malaysian]{malay}{bahasam}
-\providebool{malay@melayu}
+\@ifundefined{ifmalay@melayu}%
+ {\newif\ifmalay@melayu}{}
\malay@melayufalse
\def\malay@variant{malay}
-\define@choicekey*+{malay}{variant}[\xpg@val\xpg@nr]{indonesian,malaysian}[malaysian]{%
- \ifcase\xpg@nr\relax
- % indonesian:
- \def\malay@variant{indonesian}%
- \malay@melayufalse
- \or
- % malaysian:
- \def\malay@variant{malay}%
- \malay@melayutrue
- \fi
- \ifmalay@melayu
- \SetLanguageKeys{malay}{language=Malay,langtag=MLY,babelname=bahasam,bcp47=zsm,bcp47-language=zsm}%
- \xpg@fontsetup@latin{malay}%
- % Check if \l@malay is defined. If not, try to set it to some variety
- % (specific order as in the csv list below), or null language if everything fails
- \xpg@ifdefined{malay}{}{%
- \def\do##1{%
- \xpg@ifdefined{##1}%
- {\csletcs{l@malay}{l@##1}\listbreak}%
- {}%
- }%
- \docsvlist{melayu,bahasam,bahasai,indonesian,indon,bahasa}
- \xpg@ifdefined{malay}{}{%
- \xpg@warning{No hyphenation patterns for Malay (Malaysian) found\MessageBreak
- I will use the 'null' language instead}%
- \adddialect\l@malay0%
- }%
- }%
- \else
- \SetLanguageKeys{malay}{language=Indonesian,langtag=IND,babelname=bahasa,bcp47=id,bcp47-language=id}%
- \xpg@fontsetup@latin{malay}%
- % Check if \l@indonesian is defined. If not, try to set it to some variety
- % (specific order as in the csv list below), or null language if everything fails
- \xpg@ifdefined{indonesian}{}{%
- \def\do##1{%
- \xpg@ifdefined{##1}%
- {\csletcs{l@indonesian}{l@##1}\listbreak}%
- {}%
- }%
- \docsvlist{indon,bahasai,bahasam,malay,melayu,bahasa}
- \xpg@ifdefined{indonesian}{}{%
- \xpg@warning{No hyphenation patterns for Malay (Indonesian) found\MessageBreak
- I will use the 'null' language instead}%
- \adddialect\l@indonesian0
- }%
- }%
- \fi
- \xpg@info{Option: malay, variant=\xpg@val}%
-}{\xpg@warning{Unknown malay variant `#1'}}
+
+\DeclareKeys[polyglossia/gloss/malay]
+ {
+ variant.choice:,
+ variant / indonesian.code =
+ {%
+ \def\malay@variant{indonesian}%
+ \malay@melayufalse
+ \SetLanguageKeys{malay}{language=Indonesian,langtag=IND,babelname=bahasa,bcp47=id,bcp47-language=id}%
+ \SetupLatinPolyglossiaFont{malay}%
+ % Check if \l@indonesian is defined. If not, try to set it to some variety
+ % (specific order as in the csv list), or null language if everything fails
+ \TryPatternWithFallback{indonesian}{indon,bahasai,bahasam,malay,melayu,bahasa}%
+ },
+ variant / malaysian.code =
+ {%
+ \def\malay@variant{malay}%
+ \malay@melayutrue
+ \SetLanguageKeys{malay}{language=Malay,langtag=MLY,babelname=bahasam,bcp47=zsm,bcp47-language=zsm}%
+ \SetupLatinPolyglossiaFont{malay}%
+ % Check if \l@malay is defined. If not, try to set it to some variety
+ % (specific order as in the csv list), or null language if everything fails
+ \TryPatternWithFallback{malay}{melayu,bahasam,bahasai,indonesian,indon,bahasa}%
+ },
+ variant.default:n = malaysian,
+ variant/unknown.code = \xpg@warning{Unknown malay variant `#1'},
+ }
% Register default options
-\xpg@initialize@gloss@options{malay}{variant=malaysian}
+\InitializeGlossOptions{malay}{variant=malaysian}
\def\malay@language{%
- \polyglossia@setup@language@patterns{\malay@variant}%
+ \SetupPolyglossiaLangPatterns{\malay@variant}%
}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-malayalam.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-malayalam.ldf
index 44def596e77..87f686780af 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-malayalam.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-malayalam.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-malayalam.ldf}[polyglossia: module for Malayalam]
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-marathi.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-marathi.ldf
index 79b48a24c5a..6402f6ea1c8 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-marathi.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-marathi.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
% Translations provided by Abhijit Navale <abhi_navale@live.in>
% Ordinals (1-100) added by Niranjan Tambe <niranjanvikastambe@gmail.com> on 14th December, 2019
@@ -28,21 +28,25 @@
\newif\ifmarathi@devanagari@numerals
\marathi@devanagari@numeralstrue
-\define@choicekey*+{marathi}{numerals}[\xpg@val\xpg@nr]{Western,Devanagari}[Devanagari]{%
- \ifcase\xpg@nr\relax
- % Western:
- \marathi@devanagari@numeralsfalse%
- \SetLanguageKeys{marathi}{bcp47-extension-u=nu-latn}%
- \or
- % Devanagari:
- \marathi@devanagari@numeralstrue%
- \SetLanguageKeys{marathi}{bcp47-extension-u=nu-deva}%
- \fi
- \xpg@info{Option: Marathi, numerals=\xpg@val}%
-}{\xpg@warning{Unknown Marathi numerals value `#1'}}
+\DeclareKeys[polyglossia/gloss/marathi]
+ {
+ numerals.choice:,
+ numerals / western.code =
+ {%
+ \marathi@devanagari@numeralsfalse
+ \SetLanguageKeys{marathi}{bcp47-extension-u=nu-latn}%
+ },
+ numerals / devanagari.code =
+ {%
+ \marathi@devanagari@numeralstrue
+ \SetLanguageKeys{marathi}{bcp47-extension-u=nu-deva}%
+ },
+ numerals.default:n = devanagari,
+ numerals/unknown.code = \xpg@warning{Unknown Marathi numerals value `#1'}
+ }
% Register default options
-\xpg@initialize@gloss@options{marathi}{numerals=Devanagari}
+\InitializeGlossOptions{marathi}{numerals=Devanagari}
\newcommand{\marathinumerals}[2]{\marathinumber{#2}}
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-medievallatin.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-medievallatin.ldf
new file mode 100644
index 00000000000..204a0fc0643
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-medievallatin.ldf
@@ -0,0 +1,9 @@
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
+%
+\ProvidesFile{gloss-medievallatin.ldf}[polyglossia: module for medieval Latin]
+
+% We provide this as a babel alias
+
+\InheritGlossFile{latin}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-mk.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-mk.ldf
index d5795bc39d3..f1956bdedb9 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-mk.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-mk.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-mk.ldf}[polyglossia: module for mk (Macedonian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{macedonian}
+\InheritGlossFile{macedonian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ml.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ml.ldf
index 74ebd5902fa..c3c8cccbba3 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ml.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ml.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ml.ldf}[polyglossia: module for ml (Malayalam)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{malayalam}
+\InheritGlossFile{malayalam}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-mn.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-mn.ldf
index f19bfb63f24..d4c39c4b607 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-mn.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-mn.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-mn.ldf}[polyglossia: module for mn (Mongolian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{mongolian}
+\InheritGlossFile{mongolian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-mongolian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-mongolian.ldf
index 04d4fe1e4da..edfce3ba719 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-mongolian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-mongolian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-mongolian.ldf}[polyglossia: module for Mongolian]
@@ -30,43 +30,46 @@
\newif\ifcyrillic@numerals
\newif\ifcyrillic@asbuk@numerals
-\define@choicekey*+{mongolian}{numerals}[\xpg@val\xpg@nr]{arabic,cyrillic,cyrillic-trad,cyrillic-alph}[arabic]{%
- \ifcase\xpg@nr\relax
- % arabic:
- \cyrillic@numeralsfalse%
- \cyrillic@asbuk@numeralsfalse%
- \or
- % cyrillic:
- \cyrillic@numeralstrue%
- \cyrillic@asbuk@numeralsfalse%
- \or
- % cyrillic-trad:
- \cyrillic@numeralstrue%
- \cyrillic@asbuk@numeralsfalse%
- \or
- % cyrillic-alph:
- \cyrillic@numeralstrue%
- \cyrillic@asbuk@numeralstrue%
- \fi
- \xpg@info{Option: Mongolian, numerals=\xpg@val}%
-}{\xpg@warning{Unknown Mongolian numerals value `#1'}}
-\define@boolkey{mongolian}[mongolian@]{babelshorthands}[true]{}
+\DeclareKeys[polyglossia/gloss/mongolian]
+ {
+ babelshorthands.if = mongolian@babelshorthands,
+ babelshorthands.default:n = true,
+ numerals.choice:,
+ numerals / arabic.code =
+ {%
+ \cyrillic@numeralsfalse
+ \cyrillic@asbuk@numeralsfalse
+ },
+ numerals / cyrillic.code =
+ {%
+ \cyrillic@numeralstrue
+ \cyrillic@asbuk@numeralsfalse
+ },
+ numerals / cyrillic-trad.code =
+ {%
+ \cyrillic@numeralstrue
+ \cyrillic@asbuk@numeralsfalse
+ },
+ numerals / cyrillic-alph.code =
+ {%
+ \cyrillic@numeralstrue
+ \cyrillic@asbuk@numeralstrue
+ },
+ numerals.default:n = arabic,
+ numerals/unknown.code = \xpg@warning{Unknown Mongolian numerals value `#1'}
+ }
% Register default options
-\xpg@initialize@gloss@options{mongolian}{babelshorthands=false,numerals=arabic}
+\InitializeGlossOptions{mongolian}{babelshorthands=false,numerals=arabic}
\ifsystem@babelshorthands
- \setkeys{mongolian}{babelshorthands=true}
+ \SetGlossOptions{mongolian}{babelshorthands=true}
\else
- \setkeys{mongolian}{babelshorthands=false}
+ \SetGlossOptions{mongolian}{babelshorthands=false}
\fi
-\ifcsundef{initiate@active@char}{%
- \input{babelsh.def}%
- \initiate@active@char{"}%
- \shorthandoff{"}%
-}{}
+\InitializeBabelShorthands
\def\mongolian@shorthands{%
\xpg@activate@shorthands%
@@ -102,7 +105,7 @@
\def\@Ccdash{\leavevmode
\nobreak\cyrdash\nobreak\hskip.35em\ignorespaces}%
\ifx\cyrdash\undefined
- \def\cyrdash{\hbox to.8em{\textendash\hss\textendash}}%
+ \def\cyrdash{\leavevmode\hbox to.8em{\textendash\hss\textendash}}%
\fi
\declare@shorthand{mongolian}{",}{\nobreak\hskip.2em\ignorespaces}%
}
@@ -119,7 +122,7 @@
\def\bibname{Номзүй}%
\def\chaptername{Бүлэг}%
\def\appendixname{Хавсралт}%
- \ifcsundef{thechapter}%
+ \@ifundefined{thechapter}%
{\def\contentsname{Агуулга}}%
{\def\contentsname{Гарчиг}}%
\def\listfigurename{Зургийн жагсаалт}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-mr.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-mr.ldf
index fa37ee180c0..c03ea34f8f5 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-mr.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-mr.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-mr.ldf}[polyglossia: module for mr (Marathi)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{marathi}
+\InheritGlossFile{marathi}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-naustrian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-naustrian.ldf
index 01cb9a28833..53b02f23a5c 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-naustrian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-naustrian.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-naustrian.ldf}[polyglossia: module for Austrian German (current spelling)]
% We provide this as a babel alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-nb.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-nb.ldf
index 715d6a22841..580eaea1594 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-nb.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-nb.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-nb.ldf}[polyglossia: module for nb (Norwegian)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{norwegian}
+\InheritGlossFile{norwegian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-newzealand.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-newzealand.ldf
index 298913ccb8d..3fc12f2e3ba 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-newzealand.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-newzealand.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-newzealand.ldf}[polyglossia: module for Newzealand English]
% We provide this as a babel alias
-\xpg@load@master@language{english}
+\InheritGlossFile{english}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ngerman.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ngerman.ldf
index cb77aa6be8d..4e9f8e5b886 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ngerman.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ngerman.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ngerman.ldf}[polyglossia: module for German (current spelling)]
% We provide this as a babel alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-nko.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-nko.ldf
index a7b7712520d..623de02539e 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-nko.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-nko.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-nko.ldf}[Polyglossia: module for N’Ko]
\PolyglossiaSetup{nko}{%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-norsk.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-norsk.ldf
index d000c9c1e38..e03f920d27a 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-norsk.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-norsk.ldf
@@ -1,11 +1,11 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-norsk.ldf}[polyglossia: module for Norwegian (Bokmal)]
% We only provide this gloss for babel compatibility. Since norsk is
% actually norwegian bokmal, we use 'norwegian' with variant 'bokmal' now.
-\xpg@load@master@language{norwegian}
+\InheritGlossFile{norwegian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-norwegian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-norwegian.ldf
index 544c8b7df79..bafaf96e5fb 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-norwegian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-norwegian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-norwegian.ldf}[polyglossia: module for Norwegian]
\PolyglossiaSetup{norwegian}{
@@ -20,28 +20,32 @@
\setlanguagealias[variant=nynorsk]{norwegian}{nynorsk}
\def\norwegian@variant{nynorsk}
-\define@choicekey*+{norwegian}{variant}[\xpg@val\xpg@nr]{nynorsk,bokmal}[nynorsk]{%
- \ifcase\xpg@nr\relax
- % nynorsk:
- \def\norwegian@variant{nynorsk}%
- \SetLanguageKeys{norwegian}{langtag=NYN,babelname=nynorsk,bcp47=nn,bcp47-language=nn}%
- \xpg@fontsetup@latin{norwegian}%
- \or
- % bokmal:
- \def\norwegian@variant{norsk}%
- \SetLanguageKeys{norwegian}{langtag=NOR,babelname=norsk,bcp47=nb,bcp47-language=nb}%
- \xpg@fontsetup@latin{norwegian}%
- \fi
- \xpg@info{Option: norwegian, variant=\xpg@val}%
-}{\xpg@warning{Unknown norwegian variant `#1'}}
+\DeclareKeys[polyglossia/gloss/norwegian]
+ {
+ variant.choice:,
+ variant / nynorsk.code =
+ {%
+ \def\norwegian@variant{nynorsk}%
+ \SetLanguageKeys{norwegian}{langtag=NYN,babelname=nynorsk,bcp47=nn,bcp47-language=nn}%
+ \SetupLatinPolyglossiaFont{norwegian}%
+ },
+ variant / bokmal.code =
+ {%
+ \def\norwegian@variant{norsk}%
+ \SetLanguageKeys{norwegian}{langtag=NOR,babelname=norsk,bcp47=nb,bcp47-language=nb}%
+ \SetupLatinPolyglossiaFont{norwegian}%
+ },
+ variant.default:n = nynorsk,
+ variant/unknown.code = \xpg@warning{Unknown norwegian variant `#1'}
+ }
% Register default options
-\xpg@initialize@gloss@options{norwegian}{variant=nynorsk}
+\InitializeGlossOptions{norwegian}{variant=nynorsk}
\def\norwegian@language{%
- \polyglossia@setup@language@patterns{\norwegian@variant}%
+ \SetupPolyglossiaLangPatterns{\norwegian@variant}%
}%
\def\captionsnorwegian@nynorsk{%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-nswissgerman.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-nswissgerman.ldf
index 5fa656d2a50..b57f684c275 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-nswissgerman.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-nswissgerman.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-nswissgerman.ldf}[polyglossia: module for Swiss German (current spelling)]
% We provide this as a babel alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-nynorsk.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-nynorsk.ldf
index 648d2b346d4..e014dfbcf60 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-nynorsk.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-nynorsk.ldf
@@ -1,11 +1,11 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-nynorsk.ldf}[polyglossia: module for Norwegian (Nynorsk)]
% We only provide this gloss for babel compatibility. Since nynorsk is
% a norwegian variety, we use 'norwegian' with variant 'nynorsk' now.
-\xpg@load@master@language{norwegian}
+\InheritGlossFile{norwegian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-occitan.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-occitan.ldf
index a383b92b28f..da29e0b5672 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-occitan.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-occitan.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
%%
%% This is file `gloss-occitan.ldf',
@@ -34,19 +34,19 @@
% BCP-47 compliant aliases
\setlanguagealias*{occitan}{oc}
-\define@boolkey{occitan}[occitan@]{babelshorthands}[true]{}
+\DeclareKeys[polyglossia/gloss/occitan]
+ {
+ babelshorthands.if = occitan@babelshorthands,
+ babelshorthands.default:n = true
+ }
\ifsystem@babelshorthands
- \setkeys{occitan}{babelshorthands=true}
+ \SetGlossOptions{occitan}{babelshorthands=true}
\else
- \setkeys{occitan}{babelshorthands=false}
+ \SetGlossOptions{occitan}{babelshorthands=false}
\fi
-\ifcsundef{initiate@active@char}{%
- \input{babelsh.def}%
- \initiate@active@char{"}%
- \shorthandoff{"}%
-}{}
+\InitializeBabelShorthands
\def\occitan@shorthands{%
\xpg@activate@shorthands%
@@ -138,7 +138,7 @@
\def\today{\occitanday\space \occitanmonth\space de~\number\year}%
}
\let\xpgoc@savedvalues\empty
-\AtEndPreamble{% the user or the class might define different values
+\AddToHook{begindocument/before}{% the user or the class might define different values
\edef\xpgoc@savedvalues{%
\clubpenalty=\the\clubpenalty\space
\@clubpenalty=\the\@clubpenalty\space
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-odia.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-odia.ldf
index 7efbd533912..77a1c64c0e9 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-odia.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-odia.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
% Translations provided by ଅଶୋକ ଦାସ୍ <das@pas.rochester.edu> and ଅଭିଷେକ ଜେନା <avisekjena@gmail.com>
% TODO implement Odia calendar
@@ -30,32 +30,37 @@
\newif\ifodia@devanagari@numerals
\newif\ifodia@odia@numerals
-\define@choicekey*+{odia}{numerals}[\xpg@val\xpg@nr]{Devanagari,Odia,Western}[Devanagari]{%
- \ifcase\xpg@nr\relax
- % Devanagari:
- \odia@odia@numeralsfalse%
- \odia@devanagari@numeralstrue%
- \SetLanguageKeys{odia}{bcp47=or,bcp47-language=or,bcp47-extension-u=nu-deva}%
- \or
- % Odia:
- \odia@odia@numeralstrue%
- \odia@devanagari@numeralsfalse%
- \or
- % Western:
- \odia@odia@numeralsfalse%
- \odia@devanagari@numeralsfalse%
- \SetLanguageKeys{odia}{bcp47=or,bcp47-language=or,bcp47-extension-u=nu-latn}%
- \fi
- \xpg@info{Option: Odia, numerals=\xpg@val}%
-}{\xpg@warning{Unknown Odia numeral `#1'}}
-
\def\extras@odia{}
\def\noextras@odia{}
-\define@boolkey{odia}[odia@]{changecounternumbering}[true]{}
+\DeclareKeys[polyglossia/gloss/odia]
+ {
+ changecounternumbering.if = odia@changecounternumbering,
+ changecounternumbering.default:n = true,
+ numerals.choice:,
+ numerals / devanagari.code =
+ {%
+ \odia@odia@numeralsfalse
+ \odia@devanagari@numeralstrue
+ \SetLanguageKeys{odia}{bcp47=or,bcp47-language=or,bcp47-extension-u=nu-deva}%
+ },
+ numerals / odia.code =
+ {%
+ \odia@odia@numeralstrue
+ \odia@devanagari@numeralsfalse
+ },
+ numerals / western.code =
+ {%
+ \odia@odia@numeralsfalse
+ \odia@devanagari@numeralsfalse
+ \SetLanguageKeys{odia}{bcp47=or,bcp47-language=or,bcp47-extension-u=nu-latn}%
+ },
+ numerals.default:n = devanagari,
+ numerals/unknown.code = \xpg@warning{Unknown Odia numeral `#1'}
+ }
% Register default options
-\xpg@initialize@gloss@options{odia}{changecounternumbering=false,numerals=Devanagari}
+\InitializeGlossOptions{odia}{changecounternumbering=false,numerals=Devanagari}
\def\captionsodia{%
\def\refname{ସନ୍ଦର୍ଭ}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-or.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-or.ldf
index a864d2040e0..3fb94208cac 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-or.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-or.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-odia.ldf}[polyglossia: module for or (Odia)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{odia}
+\InheritGlossFile{odia}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-pa.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-pa.ldf
index c54ec572b9c..d91c55f137e 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-pa.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-pa.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-pa.ldf}[polyglossia: module for pa (Punjabi)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{punjabi}
+\InheritGlossFile{punjabi}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-persian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-persian.ldf
index ae1a9b0d288..4b2a383f050 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-persian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-persian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-persian.ldf}[polyglossia: module for Persian]
@@ -27,42 +27,36 @@
\setlanguagealias{persian}{farsi}
\newif\if@western@numerals
-\define@choicekey*+{persian}{numerals}[\xpg@val\xpg@nr]{eastern,western}[eastern]{%
- \ifcase\xpg@nr\relax
- % eastern:
- \@western@numeralsfalse%
- \SetLanguageKeys{persian}{bcp47-extension-u=nu-arab}%
- \or
- % western:
- \@western@numeralstrue%
- \SetLanguageKeys{persian}{bcp47-extension-u=nu-latn}%
- \fi
- \xpg@info{Option: Persian, numerals=\xpg@val}%
-}{\xpg@warning{Unknown Persian numerals option `#1'}}
-
\newif\ifpersian@customsep\persian@customsepfalse
\def\xpg@sepmark{}
-\define@key{persian}{sectionsep}[.]{%
- \persian@customseptrue%
- \gdef\xpg@sepmark{#1}%
-}
-
-%this is needed for \abjad in arabicnumbers.sty
-\define@boolkey{persian}[persian@]{abjadjimnotail}[true]{%
- \ifpersian@abjadjimnotail
- \abjad@jim@notailtrue%
- \else
- \abjad@jim@notailfalse
- \fi}
-
-% NOT YET USED
-\define@key{persian}{locale}[default]{%
- \def\@persian@locale{#1}}
%TODO add option for CALENDAR
+\DeclareKeys[polyglossia/gloss/persian]
+ {
+ sectionsep.code = \gdef\xpg@sepmark{#1}\persian@customseptrue,
+ sectionsep.default:n = .,
+ abjadjimnotail.if = abjad@jim@notail,
+ abjadjimnotail.default:n = true,
+ locale.store = \@persian@locale,
+ locale.default:n = default,
+ numerals.choice:,
+ numerals / eastern.code =
+ {%
+ \@western@numeralsfalse
+ \SetLanguageKeys{persian}{bcp47-extension-u=nu-arab}%
+ },
+ numerals / western.code =
+ {%
+ \@western@numeralstrue
+ \SetLanguageKeys{persian}{bcp47-extension-u=nu-latn}%
+ },
+ numerals.default:n = eastern,
+ numerals/unknown.code = \xpg@warning{Unknown Persian numerals option `#1'}
+ }
+
% Register default options
-\xpg@initialize@gloss@options{persian}{locale=default,numerals=eastern,abjadjimnotail=false}
+\InitializeGlossOptions{persian}{locale=default,numerals=eastern,abjadjimnotail=false}
\def\farsigregmonth#1{\ifcase#1%
\or ژانویه\or فوریه\or مارس\or آوریل\or مه\or ژوئن\or ژوئیه\or اوت\or سپتامبر\or اکتبر\or نوامبر\or دسامبر\fi}
@@ -147,16 +141,16 @@
}
\def\nopersian@xetex@capsformat{%
- \ifcsdef{xpg@save@sepmark}{%
+ \ifcsname xpg@save@sepmark\endcsname%
\SepMark{\xpg@save@sepmark}
- }{}%
+ \fi%
}
\def\persian@luatex@capsformat{%
%
% change chapter and part headings
\ifpersian@customsep
- \ifcsdef{chapter}{%
+ \ifcsname chapter\endcsname%
\let\xpg@save@thesection\thesection%
\renewcommand*\thesection{\thechapter\xpg@sepmark\@arabic\c@section}
\let\xpg@save@theequation\theequation%
@@ -168,7 +162,7 @@
\let\xpg@save@thetable\thetable%
\renewcommand*\thetable{%
\ifnum\c@chapter>\z@\thechapter\xpg@sepmark\fi\@arabic\c@table}
- }{}
+ \fi%
\let\xpg@save@thesubsection\thesubsection%
\renewcommand\thesubsection
{\thesection\xpg@sepmark\@arabic\c@subsection}
@@ -183,30 +177,30 @@
}
\def\nopersian@luatex@capsformat{%
- \ifcsdef{xpg@save@thesection}{%
+ \ifcsname xpg@save@thesection\endcsname%
\let\thesection\xpg@save@thesection%
- }{}%
- \ifcsdef{xpg@save@theequation}{%
+ \fi%
+ \ifcsname xpg@save@theequation\endcsname%
\let\theequation\xpg@save@theequation%
- }{}%
- \ifcsdef{xpg@save@thefigure}{%
+ \fi%
+ \ifcsname xpg@save@thefigure\endcsname%
\let\thefigure\xpg@save@thefigure%
- }{}%
- \ifcsdef{xpg@save@thetable}{%
+ \fi%
+ \ifcsname xpg@save@thetable\endcsname%
\let\thetable\xpg@save@thetable%
- }{}%
- \ifcsdef{xpg@save@thesubsection}{%
+ \fi%
+ \ifcsname xpg@save@thesubsection\endcsname%
\let\thesubsection\xpg@save@thesubsection%
- \ifcsdef{xpg@save@thesubsubsection}{%
+ \ifcsname xpg@save@thesubsubsection\endcsname%
\let\thesubsubsection\xpg@save@thesubsubsection%
- }{}%
- }{}%
- \ifcsdef{xpg@save@theparagraph}{%
+ \fi%
+ \fi%
+ \ifcsname xpg@save@theparagraph\endcsname%
\let\theparagraph\xpg@save@theparagraph%
- }{}%
- \ifcsdef{xpg@save@thesubparagraph}{%
+ \fi%
+ \ifcsname xpg@save@thesubparagraph\endcsname%
\let\thesubparagraph\xpg@save@thesubparagraph%
- }{}%
+ \fi%
}
\def\blockextras@persian{%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-piedmontese.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-piedmontese.ldf
index 1b6b9b537d1..4d88d68cd25 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-piedmontese.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-piedmontese.ldf
@@ -1,5 +1,5 @@
% !TEX encoding = UTF-8 Unicode
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-piedmontese.ldf}[2013/02/12 v1.0 polyglossia: module for Piedmontese]
\makeatletter
@@ -17,19 +17,19 @@
% BCP-47 compliant aliases
\setlanguagealias*{piedmontese}{pms}
-\define@boolkey{piedmontese}[piedmontese@]{babelshorthands}[true]{}
+\DeclareKeys[polyglossia/gloss/piedmontese]
+ {
+ babelshorthands.if = piedmontese@babelshorthands,
+ babelshorthands.default:n = true
+ }
\ifsystem@babelshorthands
- \setkeys{piedmontese}{babelshorthands=true}
+ \SetGlossOptions{piedmontese}{babelshorthands=true}
\else
- \setkeys{piedmontese}{babelshorthands=false}
+ \SetGlossOptions{piedmontese}{babelshorthands=false}
\fi
-\ifcsundef{initiate@active@char}{%
- \input{babelsh.def}%
- \initiate@active@char{"}%
- \shorthandoff{"}%
-}{}
+\InitializeBabelShorthands
\def\piedmontese@shorthands{%
\xpg@activate@shorthands%
@@ -93,7 +93,7 @@
ëd luj\or d'agost\or dë stèmber\or d'otóber\or ëd novèmber\or dë dzèmber%
\fi\space dal\space\number\year}}
-\AtEndPreamble{%
+\AddToHook{begindocument/before}{%
\edef\xpgpms@savedvalues{%
\clubpenalty=\the\clubpenalty\space
\@clubpenalty=\the\@clubpenalty\space
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-polish.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-polish.ldf
index 48ceed5bbb6..34f6d90d320 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-polish.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-polish.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-polish.ldf}[polyglossia: module for Polish]
@@ -20,26 +20,26 @@
\RequirePackage{luavlna}
\fi
-\define@boolkey{polish}[polish@]{babelshorthands}[true]{}
-
-\define@boolkey{polish}[polish@]{splithyphens}[true]{}
-
-\define@boolkey{polish}[polish@]{vlna}[true]{}
+\DeclareKeys[polyglossia/gloss/polish]
+ {
+ babelshorthands.if = polish@babelshorthands,
+ babelshorthands.default:n = true,
+ splithyphens.if = polish@splithyphens,
+ splithyphens.default:n = true,
+ vlna.if = polish@vlna,
+ vlna.default:n = true,
+ }
% Register default options
-\xpg@initialize@gloss@options{polish}{babelshorthands=false,splithyphens=true,vlna=true}
+\InitializeGlossOptions{polish}{babelshorthands=false,splithyphens=true,vlna=true}
\ifsystem@babelshorthands
- \setkeys{polish}{babelshorthands=true}
+ \SetGlossOptions{polish}{babelshorthands=true}
\else
- \setkeys{polish}{babelshorthands=false}
+ \SetGlossOptions{polish}{babelshorthands=false}
\fi
-\ifcsundef{initiate@active@char}{%
- \input{babelsh.def}%
- \initiate@active@char{"}%
- \shorthandoff{"}%
-}{}
+\InitializeBabelShorthands
\let\xpg@hyphen@char-
\def\polish@@splhyphen#1{%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-polutonikogreek.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-polutonikogreek.ldf
index 68f53eb1f22..9b6148cedd0 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-polutonikogreek.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-polutonikogreek.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-polutonikogreek.ldf}[polyglossia: module for polytonic Greek]
% We provide this as a babel alias
-\xpg@load@master@language{greek}
+\InheritGlossFile{greek}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-portuges.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-portuges.ldf
index 6111b581193..3595060f874 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-portuges.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-portuges.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-portuges.ldf}[polyglossia: module for Portuguese]
@@ -7,6 +7,6 @@
% introduced it in 8.3 filename times). Since polyglossia uses full
% English language names, we use 'portuguese' now.
-\xpg@load@master@language{portuguese}
+\InheritGlossFile{portuguese}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-portuguese.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-portuguese.ldf
index bb03525be7e..bad8ef2d8d2 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-portuguese.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-portuguese.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-portuguese.ldf}[polyglossia: module for Portuguese]
@@ -28,41 +28,42 @@
\fi
\def\portuguese@variant{portuges}
-\define@choicekey*+{portuguese}{variant}[\xpg@val\xpg@nr]{portuguese,brazilian}[portuguese]{%
- \ifcase\xpg@nr\relax
- % portuguese:
- \def\portuguese@variant{portuges}%
- \SetLanguageKeys{portuguese}{babelname=portuges,bcp47=pt-PT,bcp47-language=pt,bcp47-region=PT}%
- \or
- % brazilian:
- \def\portuguese@variant{brazil}%
- \SetLanguageKeys{portuguese}{babelname=brazil,bcp47=pt-BR,bcp47-language=pt,bcp47-region=BR}%
- % There are no specific brazil patterns
- \adddialect\l@brazil\l@portuges\relax%
- \fi
- \xpg@info{Option: portuguese, variant=\xpg@val}%
-}{\xpg@warning{Unknown portuguese variant `#1'}}
-
-\define@boolkey{portuguese}[portuguese@]{babelshorthands}[true]{}
-
-\define@boolkey{portuguese}[portuguese@]{splithyphens}[true]{}
+
+\DeclareKeys[polyglossia/gloss/portuguese]
+ {
+ babelshorthands.if = portuguese@babelshorthands,
+ babelshorthands.default:n = true,
+ splithyphens.if = portuguese@splithyphens,
+ splithyphens.default:n = true,
+ variant.choice:,
+ variant / portuguese.code =
+ {%
+ \def\portuguese@variant{portuges}%
+ \SetLanguageKeys{portuguese}{babelname=portuges,bcp47=pt-PT,bcp47-language=pt,bcp47-region=PT}%
+ },
+ variant / brazilian.code =
+ {%
+ \def\portuguese@variant{brazil}%
+ \SetLanguageKeys{portuguese}{babelname=brazil,bcp47=pt-BR,bcp47-language=pt,bcp47-region=BR}%
+ % There are no specific brazil patterns
+ \adddialect\l@brazil\l@portuges\relax
+ },
+ variant.default:n = portuguese,
+ variant/unknown.code = \xpg@warning{Unknown portuguese variant `#1'},
+ }
% Register default options
-\xpg@initialize@gloss@options{portuguese}{variant=portuguese,
+\InitializeGlossOptions{portuguese}{variant=portuguese,
babelshorthands=false,
splithyphens=true}
\ifsystem@babelshorthands
- \setkeys{portuguese}{babelshorthands=true}
+ \SetGlossOptions{portuguese}{babelshorthands=true}
\else
- \setkeys{portuguese}{babelshorthands=false}
+ \SetGlossOptions{portuguese}{babelshorthands=false}
\fi
-\ifcsundef{initiate@active@char}{%
- \input{babelsh.def}%
- \initiate@active@char{"}%
- \shorthandoff{"}%
-}{}
+\InitializeBabelShorthands
\let\xpg@hyphen@char-
\def\portuguese@@splhyphen#1{%
@@ -131,7 +132,7 @@
}
\def\portuguese@language{%
- \polyglossia@setup@language@patterns{\portuguese@variant}%
+ \SetupPolyglossiaLangPatterns{\portuguese@variant}%
}%
\def\captionsportuguese@portuges{%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-punjabi.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-punjabi.ldf
index 48eacd30e7f..dd350cb47ef 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-punjabi.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-punjabi.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
% UTF-8 strings kindly provided by
% Arvinder Singh Kang, <17-11-2022>
@@ -25,26 +25,31 @@
\def\punjabi@language{%
% patterns are spelled panjabi
- \polyglossia@setup@language@patterns{panjabi}%
+ \SetupPolyglossiaLangPatterns{panjabi}%
}
\newif\ifpunjabi@gurmukhi@numerals
\punjabi@gurmukhi@numeralstrue
-\define@choicekey*+{punjabi}{numerals}[\xpg@val\xpg@nr]{Gurmukhi,Western}[Gurmukhi]{%
- \ifcase\xpg@nr\relax
- % Gurmukhi:
- \punjabi@gurmukhi@numeralstrue%
- \SetLanguageKeys{punjabi}{bcp47-extension-u=nu-guru}%
- \or
- % Western:
- \punjabi@gurmukhi@numeralsfalse%
- \SetLanguageKeys{punjabi}{bcp47-extension-u=nu-latn}%
- \fi
- \xpg@info{Option: Punjabi, numerals=\xpg@val}%
-}{\xpg@warning{Unknown Punjabi numeral `#1'}}
+
+\DeclareKeys[polyglossia/gloss/punjabi]
+ {
+ numerals.choice:,
+ numerals / gurmukhi.code =
+ {%
+ \punjabi@gurmukhi@numeralstrue
+ \SetLanguageKeys{punjabi}{bcp47-extension-u=nu-guru}%
+ },
+ numerals / western.code =
+ {%
+ \punjabi@gurmukhi@numeralsfalse
+ \SetLanguageKeys{punjabi}{bcp47-extension-u=nu-latn}%
+ },
+ numerals.default:n = gurmukhi,
+ numerals/unknown.code = \xpg@warning{Unknown Punjabi numeral `#1'}
+ }
% Register default options
-\xpg@initialize@gloss@options{punjabi}{numerals=gurmukhi}
+\InitializeGlossOptions{punjabi}{numerals=gurmukhi}
\newcommand{\punjabinumerals}[2]{\punjabinumber{#2}}
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-romanian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-romanian.ldf
index 290dad9c71b..e7a43d19326 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-romanian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-romanian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-romanian.ldf}[polyglossia: module for Romanian]
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-romansh.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-romansh.ldf
index aa50a200003..f5d6d9a8cda 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-romansh.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-romansh.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-romansh.ldf}[polyglossia: module for Romansh]
\makeatletter
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-russian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-russian.ldf
index 8dcf535ebf5..850c39bc363 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-russian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-russian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-russian.ldf}[polyglossia: module for Russian]
@@ -27,11 +27,6 @@
\setlanguagealias*[spelling=old]{russian}{ru-petr1708}
\newif\if@russian@modern
-\define@key{russian}{spelling}[modern]{%
- \ifstrequal{#1}{old}%
- {\@russian@modernfalse\SetLanguageKeys{russian}{bcp47=ru-petr1708,bcp47-variant=petr1708}}%
- {\@russian@moderntrue\SetLanguageKeys{russian}{bcp47=ru,bcp47-variant=luna1918}}%
-}
\def\captionsrussian{%
\if@russian@modern\captionsrussian@modern\else\captionsrussian@old\fi%
@@ -43,49 +38,68 @@
\newif\ifcyrillic@numerals
\newif\ifcyrillic@asbuk@numerals
-\define@choicekey*+{russian}{numerals}[\xpg@val\xpg@nr]{arabic,cyrillic,cyrillic-trad,cyrillic-alph}[arabic]{%
- \ifcase\xpg@nr\relax
- % arabic:
- \cyrillic@numeralsfalse%
- \cyrillic@asbuk@numeralsfalse%
- \SetLanguageKeys{russian}{bcp47-extension-u=nu-latn}%
- \or
- % cyrillic:
- \cyrillic@numeralstrue%
- \cyrillic@asbuk@numeralsfalse%
- \SetLanguageKeys{russian}{bcp47-extension-u=nu-cyrl}%
- \or
- % cyrillic-trad:
- \cyrillic@numeralstrue%
- \cyrillic@asbuk@numeralsfalse%
- \SetLanguageKeys{russian}{bcp47-extension-u=nu-cyrl}%
- \or
- % cyrillic-alph:
- \cyrillic@numeralstrue%
- \cyrillic@asbuk@numeralstrue%
- \SetLanguageKeys{russian}{bcp47-extension-u=nu-cyrl}%
- \fi
- \xpg@info{Option: Russian, numerals=\xpg@val}%
-}{\xpg@warning{Unknown Russian numerals value `#1'}}
-
-\define@boolkey{russian}[russian@]{indentfirst}[true]{%
- \ifrussian@indentfirst
- \SetLanguageKeys{russian}{indentfirst=true}%
- \else
- \SetLanguageKeys{russian}{indentfirst=false}%
- \fi%
-}
-\define@boolkey{russian}[russian@]{babelshorthands}[true]{}
-
-% Force punctuation after heading number
-\define@boolkey{russian}[russian@]{forceheadingpunctuation}[true]{}
-
-% Define some math functions
-\define@boolkey{russian}[russian@]{mathfunctions}[true]{}
+\DeclareKeys[polyglossia/gloss/russian]
+ {
+ babelshorthands.if = russian@babelshorthands,
+ babelshorthands.default:n = true,
+ forceheadingpunctuation.if = russian@forceheadingpunctuation,
+ forceheadingpunctuation.default:n = true,
+ mathfunctions.if = russian@mathfunctions,
+ mathfunctions.default:n = true,
+ spelling.choice:,
+ spelling / modern.code =
+ {%
+ \@russian@moderntrue
+ \SetLanguageKeys{russian}{bcp47=ru,bcp47-variant=luna1918}%
+ },
+ spelling / old.code =
+ {%
+ \@russian@modernfalse
+ \SetLanguageKeys{russian}{bcp47=ru-petr1708,bcp47-variant=petr1708}%
+ },
+ spelling.default:n = modern,
+ numerals.choice:,
+ numerals / arabic.code =
+ {%
+ \cyrillic@numeralsfalse
+ \cyrillic@asbuk@numeralsfalse
+ \SetLanguageKeys{russian}{bcp47-extension-u=nu-latn}%
+ },
+ numerals / cyrillic.code =
+ {%
+ \cyrillic@numeralstrue
+ \cyrillic@asbuk@numeralsfalse
+ \SetLanguageKeys{russian}{bcp47-extension-u=nu-cyrl}%
+ },
+ numerals / cyrillic-trad.code =
+ {%
+ \cyrillic@numeralstrue
+ \cyrillic@asbuk@numeralsfalse
+ \SetLanguageKeys{russian}{bcp47-extension-u=nu-cyrl}%
+ },
+ numerals / cyrillic-alph.code =
+ {%
+ \cyrillic@numeralstrue
+ \cyrillic@asbuk@numeralstrue
+ \SetLanguageKeys{russian}{bcp47-extension-u=nu-cyrl}%
+ },
+ numerals.default:n = arabic,
+ numerals/unknown.code = \xpg@warning{Unknown Russian numerals value `#1'},
+ indentfirst.choice:,
+ indentfirst / true.code =
+ {%
+ \SetLanguageKeys{russian}{indentfirst=true}%
+ },
+ indentfirst / false.code =
+ {%
+ \SetLanguageKeys{russian}{indentfirst=false}%
+ },
+ indentfirst.default:n = true,
+ }
% Register default options
-\xpg@initialize@gloss@options{russian}{babelshorthands=false,
+\InitializeGlossOptions{russian}{babelshorthands=false,
spelling=modern,
numerals=arabic,
indentfirst=true,
@@ -94,16 +108,12 @@
\ifsystem@babelshorthands
- \setkeys{russian}{babelshorthands=true}
+ \SetGlossOptions{russian}{babelshorthands=true}
\else
- \setkeys{russian}{babelshorthands=false}
+ \SetGlossOptions{russian}{babelshorthands=false}
\fi
-\ifcsundef{initiate@active@char}{%
- \input{babelsh.def}%
- \initiate@active@char{"}%
- \shorthandoff{"}%
-}{}
+\InitializeBabelShorthands
\def\russian@shorthands{%
\xpg@activate@shorthands%
@@ -138,7 +148,7 @@
\def\@Ccdash{\leavevmode
\nobreak\cyrdash\nobreak\hskip.35em\ignorespaces}%
\ifx\cyrdash\undefined
- \def\cyrdash{\hbox to.8em{\textendash\hss\textendash}}%
+ \def\cyrdash{\leavevmode\hbox to.8em{\textendash\hss\textendash}}%
\fi
\declare@shorthand{russian}{",}{\nobreak\hskip.2em\ignorespaces}%
}
@@ -155,7 +165,7 @@
\def\bibname{Литература}%
\def\chaptername{Глава}%
\def\appendixname{Приложение}%
- \ifcsundef{thechapter}%
+ \@ifundefined{thechapter}%
{\def\contentsname{Содержание}}%
{\def\contentsname{Оглавление}}%
\def\listfigurename{Список иллюстраций}%
@@ -198,7 +208,7 @@
\def\bibname{Библіографія}%
\def\chaptername{Глава}%
\def\appendixname{Приложеніе}%
- \ifcsundef{thechapter}%
+ \@ifundefined{thechapter}%
{\def\contentsname{Содержаніе}}%
{\def\contentsname{Оглавленіе}}%
\def\listfigurename{Списокъ иллюстрацій}%
@@ -237,14 +247,14 @@
% Russian needs trailing dots in all headings
\def\xpg@save@autodot{}
-\ifdef{\KOMAScript}{%
+\ifdef{\KOMAClassName}{%
\providecommand*\autodot{}%
\let\xpg@save@autodot\autodot%
-}
+}{}
\def\russian@capsformat{%
\ifrussian@forceheadingpunctuation%
- \ifdef{\KOMAScript}{%
+ \ifdef{\KOMAClassName}{%
\renewcommand*\autodot{.}%
}{%
% The following is based on some ideas from ruscor.sty
@@ -270,7 +280,7 @@
\def\norussian@capsformat{%
\ifrussian@forceheadingpunctuation%
- \ifdef{\KOMAScript}{%
+ \ifdef{\KOMAClassName}{%
\let\autodot\xpg@save@autodot%
}{%
\def\@seccntformat##1{\csname the##1\endcsname\quad}% = LaTeX kernel
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-sami.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-sami.ldf
index 9efe055865f..529131beaec 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-sami.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-sami.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-sami.ldf}[polyglossia: module for Sami]
@@ -28,19 +28,19 @@
% % northern:
% \def\sami@variant{samin}%
% \SetLanguageKeys{sami}{language=Northern Sami,langtag=NSM}%
-% \xpg@fontsetup@latin{sami}%
+% \SetupLatinPolyglossiaFont{sami}%
% \or
% % other:
% \def\sami@variant{}%
% \SetLanguageKeys{sami}{language= Sami,langtag=}%
-% \xpg@fontsetup@latin{sami}%
+% \SetupLatinPolyglossiaFont{sami}%
% \fi
% \xpg@info{Option: sami, variant=\xpg@val}%
%}{\xpg@warning{Unknown sami variant `#1'}}
%\def\sami@language{%
-% \polyglossia@setup@language@patterns{\sami@variant}%
+% \SetupPolyglossiaLangPatterns{\sami@variant}%
%}%
\def\captionssami@northern{%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-samin.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-samin.ldf
index 0801e7423ab..48f923acf56 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-samin.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-samin.ldf
@@ -1,10 +1,10 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-samin.ldf}[polyglossia: module for Northern Sami]
% We only provide this gloss for babel compatibility. Since samin is
% a sami variety, we use 'sami' with variant 'northern' now.
-\xpg@load@master@language{sami}
+\InheritGlossFile{sami}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-sanskrit.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-sanskrit.ldf
index 094c6f6691d..197f773cf62 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-sanskrit.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-sanskrit.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-sanskrit.ldf}[polyglossia: module for Sanskrit]
@@ -27,56 +27,55 @@
\setlanguagealias*[script=gujarati]{sanskrit}{sa-Gujr}
\setlanguagealias*[script=latin]{sanskrit}{sa-Latn}
-\define@key{sanskrit}{Script}[devanagari]{%
- \ifcsdef{fontsetup@sanskrit@#1}%
- {\csname fontsetup@sanskrit@#1\endcsname}%
- {\xpg@error{`#1' is not a valid script for Sanskrit}%
- }%
-}
-
-\define@key{sanskrit}{script}[devanagari]{\setkeys{sanskrit}{Script=#1}}
-
\def\fontsetup@sanskrit@devanagari{%
- \SetLanguageKeys{sanskrit}{scripttag=deva,script=Devanagari,bcp47=sa-Deva,bcp47-language=sa,bcp47-script=Deva,bcp47-casing=sa-Deva}
- \xpg@fontsetup@nonlatin{sanskrit}}
+ \SetLanguageKeys{sanskrit}{scripttag=deva,script=Devanagari,bcp47=sa-Deva,bcp47-language=sa,bcp47-script=Deva,bcp47-casing=sa-Deva}%
+ \SetupNonLatinPolyglossiaFont{sanskrit}}
\def\fontsetup@sanskrit@gujarati{%
- \SetLanguageKeys{sanskrit}{scripttag=gujr,script=Gujarati,bcp47=sa-Gujr,bcp47-language=sa,bcp47-script=Gujr,bcp47-casing=sa-Gujr}
- \xpg@fontsetup@nonlatin{sanskrit}}
+ \SetLanguageKeys{sanskrit}{scripttag=gujr,script=Gujarati,bcp47=sa-Gujr,bcp47-language=sa,bcp47-script=Gujr,bcp47-casing=sa-Gujr}%
+ \SetupNonLatinPolyglossiaFont{sanskrit}}
\def\fontsetup@sanskrit@malayalam{%
- \SetLanguageKeys{sanskrit}{scripttag=mlym,script=Malayalam,bcp47=sa-Mlym,bcp47-language=sa,bcp47-script=Mlym,bcp47-casing=sa-Mlym}
- \xpg@fontsetup@nonlatin{sanskrit}}
+ \SetLanguageKeys{sanskrit}{scripttag=mlym,script=Malayalam,bcp47=sa-Mlym,bcp47-language=sa,bcp47-script=Mlym,bcp47-casing=sa-Mlym}%
+ \SetupNonLatinPolyglossiaFont{sanskrit}}
\def\fontsetup@sanskrit@bengali{%
- \SetLanguageKeys{sanskrit}{scripttag=beng,script=Bengali,bcp47=sa-Beng,bcp47-language=sa,bcp47-script=Beng,bcp47-casing=sa-Beng}
- \xpg@fontsetup@nonlatin{sanskrit}}
+ \SetLanguageKeys{sanskrit}{scripttag=beng,script=Bengali,bcp47=sa-Beng,bcp47-language=sa,bcp47-script=Beng,bcp47-casing=sa-Beng}%
+ \SetupNonLatinPolyglossiaFont{sanskrit}}
\def\fontsetup@sanskrit@kannada{%
- \SetLanguageKeys{sanskrit}{scripttag=knda,script=Kannada,bcp47=sa-Knda,bcp47-language=sa,bcp47-script=Knda,bcp47-casing=sa-Knda}
- \xpg@fontsetup@nonlatin{sanskrit}}
+ \SetLanguageKeys{sanskrit}{scripttag=knda,script=Kannada,bcp47=sa-Knda,bcp47-language=sa,bcp47-script=Knda,bcp47-casing=sa-Knda}%
+ \SetupNonLatinPolyglossiaFont{sanskrit}}
\def\fontsetup@sanskrit@telugu{%
- \SetLanguageKeys{sanskrit}{scripttag=telu,script=Telugu,bcp47=sa-Relu,bcp47-language=sa,bcp47-script=Relu,bcp47-casing=sa-Relu}
- \xpg@fontsetup@nonlatin{sanskrit}}
+ \SetLanguageKeys{sanskrit}{scripttag=telu,script=Telugu,bcp47=sa-Relu,bcp47-language=sa,bcp47-script=Relu,bcp47-casing=sa-Relu}%
+ \SetupNonLatinPolyglossiaFont{sanskrit}}
\def\fontsetup@sanskrit@latin{%
- \SetLanguageKeys{sanskrit}{scripttag=latn,script=Latin,bcp47=sa-Latn,bcp47-language=sa,bcp47-script=Latn,bcp47-casing=sa-Latn}
- \xpg@fontsetup@latin{sanskrit}}
+ \SetLanguageKeys{sanskrit}{scripttag=latn,script=Latin,bcp47=sa-Latn,bcp47-language=sa,bcp47-script=Latn,bcp47-casing=sa-Latn}%
+ \SetupLatinPolyglossiaFont{sanskrit}}
\newif\ifsanskrit@devanagari@numerals
\sanskrit@devanagari@numeralstrue
-\define@choicekey*+{sanskrit}{numerals}[\xpg@val\xpg@nr]{devanagari,western}[devanagari]{%
- \ifcase\xpg@nr\relax
- % devanagari:
- \sanskrit@devanagari@numeralstrue%
- \SetLanguageKeys{sanskrit}{bcp47-extension-u=nu-deva}%
- \or
- % western:
- \sanskrit@devanagari@numeralsfalse%
- \SetLanguageKeys{sanskrit}{bcp47-extension-u=nu-latn}%
- \fi
- \xpg@info{Option: Sanskrit, numerals=\xpg@val}%
-}{\xpg@warning{Unknown Sanskrit numeral `#1'}}
+\DeclareKeys[polyglossia/gloss/sanskrit]
+ {
+ script.code = \@ifundefined{fontsetup@sanskrit@#1}%
+ {\xpg@error{`#1' is not a valid script for Sanskrit}}%
+ {\csname fontsetup@sanskrit@#1\endcsname},
+ script.default:n = devanagari,
+ numerals.choice:,
+ numerals / devanagari.code =
+ {%
+ \sanskrit@devanagari@numeralstrue
+ \SetLanguageKeys{sanskrit}{bcp47-extension-u=nu-deva}%
+ },
+ numerals / western.code =
+ {%
+ \sanskrit@devanagari@numeralsfalse
+ \SetLanguageKeys{sanskrit}{bcp47-extension-u=nu-latn}%
+ },
+ numerals.default:n = devanagari,
+ numerals/unknown.code = \xpg@warning{Unknown Sanskrit numeral `#1'}
+ }
% Register default options
-\xpg@initialize@gloss@options{sanskrit}{script=devanagari,numerals=devanagari}
+\InitializeGlossOptions{sanskrit}{script=devanagari,numerals=devanagari}
% Use \providecommand here as the ldf file might
% be reloaded via BCP.
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-scottish.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-scottish.ldf
index a53cd0c6d3f..a6a75400469 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-scottish.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-scottish.ldf
@@ -1,10 +1,10 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-scottish.ldf}[polyglossia: module for Scottish Gaelic]
% We only provide this gloss for babel compatibility. Since scottish is
% a gaelic variety, we use 'gaelic' with variant 'scottish' now.
-\xpg@load@master@language{gaelic}
+\InheritGlossFile{gaelic}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-serbian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-serbian.ldf
index 3a80bdd1370..aea350d0273 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-serbian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-serbian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-serbian.ldf}[polyglossia: module for Serbian]
%TODO split into gloss-serbiancyr.ldf and gloss-serbianlat.ldf
@@ -39,88 +39,96 @@
\fi
\newif\if@serbian@cyr
-\define@choicekey*+{serbian}{Script}[\xpg@val\xpg@nr]{cyrillic,latin}[cyrillic]{%
- \ifcase\xpg@nr\relax
- % cyrillic:
- \@serbian@cyrtrue
- \xpg@fontsetup@nonlatin{serbian}%
- \or
- % latin:
- \@serbian@cyrfalse
- \xpg@fontsetup@latin{serbian}%
- %TODO \def\serbian@language{\language=\l@serbianlat}%
- % or should we use Croatian patterns as a fallback for the time being???
- \fi
- \serbian@set@languagekeys%
- \xpg@info{Option: Serbian, script=\xpg@val}%
-}{\xpg@warning{Unknown Serbian script `#1'}}
-
-\define@key{serbian}{script}[cyrillic]{\setkeys{serbian}{Script=#1}}
-
\newif\if@serbian@ijekavian
-\define@choicekey*+{serbian}{variant}[\xpg@val\xpg@nr]{ekavian,ijekavian}[ekavian]{%
- \ifcase\xpg@nr\relax
- % ekavian:
- \@serbian@ijekavianfalse%
- \or
- % ijekavian:
- \@serbian@ijekaviantrue%
- \fi
- \serbian@set@languagekeys%
- \xpg@info{Option: Serbian, variant=\xpg@val}%
-}{\xpg@warning{Unknown Serbian variant `#1'}}
\newif\ifcyrillic@numerals
\newif\ifcyrillic@asbuk@numerals
-\define@choicekey*+{serbian}{numerals}[\xpg@val\xpg@nr]{arabic,cyrillic,cyrillic-trad,cyrillic-alph}[arabic]{%
- \ifcase\xpg@nr\relax
- % arabic:
- \cyrillic@numeralsfalse%
- \cyrillic@asbuk@numeralsfalse%
- \SetLanguageKeys{serbian}{bcp47-extension-u=nu-latn}%
- \or
- % cyrillic:
- \cyrillic@numeralstrue%
- \cyrillic@asbuk@numeralsfalse%
- \SetLanguageKeys{serbian}{bcp47-extension-u=nu-cyrl}%
- \or
- % cyrillic-trad:
- \cyrillic@numeralstrue%
- \cyrillic@asbuk@numeralsfalse%
- \SetLanguageKeys{serbian}{bcp47-extension-u=nu-cyrl}%
- \or
- % cyrillic-alph:
- \cyrillic@numeralstrue%
- \cyrillic@asbuk@numeralstrue%
- \SetLanguageKeys{serbian}{bcp47-extension-u=nu-cyrl}%
- \fi
- \xpg@info{Option: Serbian, numerals=\xpg@val}%
-}{\xpg@warning{Unknown Serbian numerals value `#1'}}
-
-\define@boolkey{serbian}[serbian@]{splithyphens}[true]{}
-
-\define@boolkey{serbian}[serbian@]{datei}[true]{}
\def\serbian@set@languagekeys{%
\if@serbian@cyr
\if@serbian@ijekavian
- \SetLanguageKeys{serbian}{scripttag=cyrl,script=Cyrillic,babelname=serbianc,bcp47=sr-Cyrl-ijekavsk,bcp47-language=sr,bcp47-script=Cyrl,bcp47-variant=ijekavsk,bcp47-casing=sr-Cyrl}
+ \SetLanguageKeys{serbian}{scripttag=cyrl,script=Cyrillic,babelname=serbianc,bcp47=sr-Cyrl-ijekavsk,bcp47-language=sr,bcp47-script=Cyrl,bcp47-variant=ijekavsk,bcp47-casing=sr-Cyrl}%
\else
- \SetLanguageKeys{serbian}{scripttag=cyrl,script=Cyrillic,babelname=serbianc,bcp47=sr-Cyrl,bcp47-language=sr,bcp47-script=Cyrl,bcp47-variant=ekavsk,bcp47-casing=sr-Cyrl}
+ \SetLanguageKeys{serbian}{scripttag=cyrl,script=Cyrillic,babelname=serbianc,bcp47=sr-Cyrl,bcp47-language=sr,bcp47-script=Cyrl,bcp47-variant=ekavsk,bcp47-casing=sr-Cyrl}%
\fi
\else
\if@serbian@ijekavian
- \SetLanguageKeys{serbian}{scripttag=latn,script=Latin,babelname=serbian,bcp47=sr-Latn-ijekavsk,bcp47-language=sr,bcp47-script=Latn,bcp47-variant=ijekavsk,bcp47-casing=sr-Latn}
+ \SetLanguageKeys{serbian}{scripttag=latn,script=Latin,babelname=serbian,bcp47=sr-Latn-ijekavsk,bcp47-language=sr,bcp47-script=Latn,bcp47-variant=ijekavsk,bcp47-casing=sr-Latn}%
\else
- \SetLanguageKeys{serbian}{scripttag=latn,script=Latin,babelname=serbian,bcp47=sr-Latn,bcp47-language=sr,bcp47-script=Latn,bcp47-variant=ekavsk,bcp47-casing=sr-Latn}
+ \SetLanguageKeys{serbian}{scripttag=latn,script=Latin,babelname=serbian,bcp47=sr-Latn,bcp47-language=sr,bcp47-script=Latn,bcp47-variant=ekavsk,bcp47-casing=sr-Latn}%
\fi
- \fi%
+ \fi
}
-\setkeys{serbian}{Script,numerals}
+\DeclareKeys[polyglossia/gloss/serbian]
+ {
+ splithyphens.if = serbian@splithyphens,
+ splithyphens.default:n = true,
+ datei.if = serbian@datei,
+ datei.default:n = true,
+ variant.choice:,
+ variant / ekavian.code =
+ {%
+ \@serbian@ijekavianfalse
+ \serbian@set@languagekeys
+ },
+ variant / ijekavian.code =
+ {%
+ \@serbian@ijekaviantrue
+ \serbian@set@languagekeys
+ },
+ variant.default:n = ekavian,
+ variant/unknown.code = \xpg@warning{Unknown Serbian variant `#1'},
+ script.choice:,
+ script / cyrillic.code =
+ {%
+ \@serbian@cyrtrue
+ \SetupNonLatinPolyglossiaFont{serbian}%
+ \serbian@set@languagekeys
+ },
+ script / latin.code =
+ {%
+ \@serbian@cyrfalse
+ \SetupLatinPolyglossiaFont{serbian}%
+ %TODO \def\serbian@language{\language=\l@serbianlat}%
+ % or should we use Croatian patterns as a fallback for the time being???
+ \serbian@set@languagekeys
+ },
+ script.default:n = cyrillic,
+ script/unknown.code = \xpg@warning{Unknown Serbian script `#1'},
+ numerals.choice:,
+ numerals / arabic.code =
+ {%
+ \cyrillic@numeralsfalse
+ \cyrillic@asbuk@numeralsfalse
+ \SetLanguageKeys{serbian}{bcp47-extension-u=nu-latn}%
+ },
+ numerals / cyrillic.code =
+ {%
+ \cyrillic@numeralstrue
+ \cyrillic@asbuk@numeralsfalse
+ \SetLanguageKeys{serbian}{bcp47-extension-u=nu-cyrl}%
+ },
+ numerals / cyrillic-trad.code =
+ {%
+ \cyrillic@numeralstrue
+ \cyrillic@asbuk@numeralsfalse
+ \SetLanguageKeys{serbian}{bcp47-extension-u=nu-cyrl}%
+ },
+ numerals / cyrillic-alph.code =
+ {%
+ \cyrillic@numeralstrue
+ \cyrillic@asbuk@numeralstrue
+ \SetLanguageKeys{serbian}{bcp47-extension-u=nu-cyrl}%
+ },
+ numerals.default:n = arabic,
+ numerals/unknown.code = \xpg@warning{Unknown Serbian numerals value `#1'}
+ }
+
+\SetGlossOptions{serbian}{script,numerals}
% Register default options
-\xpg@initialize@gloss@options{serbian}{script=cyrillic,numerals=arabic,splithyphens=true}
+\InitializeGlossOptions{serbian}{script=cyrillic,numerals=arabic,splithyphens=true}
\def\captionsserbian{%
\if@serbian@cyr\captionsserbian@cyr\else\captionsserbian@lat\fi
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-serbianc.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-serbianc.ldf
index 7e395fbb602..6026ddd6098 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-serbianc.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-serbianc.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-serbianc.ldf}[polyglossia: module for Serbian (cyrillic)]
% We provide this as a babel alias
-\xpg@load@master@language{serbian}
+\InheritGlossFile{serbian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-slovak.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-slovak.ldf
index 863b9babde3..b845f3bbba1 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-slovak.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-slovak.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-slovak.ldf}[polyglossia: module for Slovak]
@@ -19,26 +19,26 @@
\RequirePackage{luavlna}
\fi
-\define@boolkey{slovak}[slovak@]{babelshorthands}[true]{}
-
-\define@boolkey{slovak}[slovak@]{splithyphens}[true]{}
-
-\define@boolkey{slovak}[slovak@]{vlna}[true]{}
+\DeclareKeys[polyglossia/gloss/slovak]
+ {
+ babelshorthands.if = slovak@babelshorthands,
+ babelshorthands.default:n = true,
+ splithyphens.if = slovak@splithyphens,
+ splithyphens.default:n = true,
+ vlna.if = slovak@vlna,
+ vlna.default:n = true,
+ }
% Register default options
-\xpg@initialize@gloss@options{slovak}{babelshorthands=false,splithyphens=true,vlna=true}
+\InitializeGlossOptions{slovak}{babelshorthands=false,splithyphens=true,vlna=true}
\ifsystem@babelshorthands
- \setkeys{slovak}{babelshorthands=true}
+ \SetGlossOptions{slovak}{babelshorthands=true}
\else
- \setkeys{slovak}{babelshorthands=false}
+ \SetGlossOptions{slovak}{babelshorthands=false}
\fi
-\ifcsundef{initiate@active@char}{%
- \input{babelsh.def}%
- \initiate@active@char{"}%
- \shorthandoff{"}%
-}{}
+\InitializeBabelShorthands
\let\xpg@hyphen@char-
\def\slovak@@splhyphen#1{%
@@ -214,7 +214,7 @@
\def\contentsname{Obsah}%
\def\listfigurename{Zoznam obrázkov}%
\def\listtablename{Zoznam tabuliek}%
- \def\indexname{Index}%
+ \def\indexname{Register}%
\def\figurename{Obrázok}%
\def\tablename{Tabuľka}%
%\def\thepart{}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-slovene.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-slovene.ldf
index 4b932a45446..d8f84351b31 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-slovene.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-slovene.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-slovene.ldf}[polyglossia: module for Slovenian]
% We provide this as a babel alias
-\xpg@load@master@language{slovenian}
+\InheritGlossFile{slovenian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-slovenian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-slovenian.ldf
index 2b574559ead..da90692bc3f 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-slovenian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-slovenian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-slovenian.ldf}[polyglossia: module for Slovenian]
@@ -19,10 +19,14 @@
% Babel aliases
\setlanguagealias{slovenian}{slovene}
-\define@boolkey{slovenian}[slovenian@]{localalph}[true]{}
+\DeclareKeys[polyglossia/gloss/slovenian]
+ {
+ localalph.if = slovenian@localalph,
+ localalph.default:n = true
+ }
% Register default options
-\xpg@initialize@gloss@options{slovenian}{localalph=false}
+\InitializeGlossOptions{slovenian}{localalph=false}
\def\captionsslovenian{%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-sorbian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-sorbian.ldf
index 27b0274d218..117c40f3cb4 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-sorbian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-sorbian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-sorbian.ldf}[polyglossia: module for Sorbian]
@@ -26,60 +26,40 @@
\setlanguagealias[variant=upper]{sorbian}{uppersorbian}
\def\sorbian@variant{usorbian}
-\define@choicekey*+{sorbian}{variant}[\xpg@val\xpg@nr]{upper,lower}[upper]{%
- \ifcase\xpg@nr\relax
- % upper:
- \def\sorbian@variant{usorbian}%
- \SetLanguageKeys{sorbian}{language=Upper Sorbian,langtag=USB,babelname=uppersorbian,bcp47=hsb,bcp47-language=hsb}%
- \xpg@fontsetup@latin{sorbian}%
- % Check if \l@usorbian is defined. If not, try to set it to some variety
- % (specific order as in the csv list below), or null language if everything fails
- \xpg@ifdefined{usorbian}{}{%
- \def\do##1{%
- \xpg@ifdefined{##1}%
- {\csletcs{l@usorbian}{l@##1}\listbreak}%
- {}%
- }%
- \docsvlist{uppersorbian}
- \xpg@ifdefined{usorbian}{}{%
- \xpg@warning{No hyphenation patterns for Upper Sorbian found\MessageBreak
- I will use the 'null' language instead}%
- \adddialect\l@usorbian0%
- }
- }%
- \or
- % lower:
- \def\sorbian@variant{lsorbian}%
- \SetLanguageKeys{sorbian}{language=Lower Sorbian,langtag=LSB,babelname=lowersorbian,bcp47=dsb,bcp47-language=dsb}%
- \xpg@fontsetup@latin{sorbian}%
- % Check if \l@lsorbian is defined. If not, try to set it to some variety
- % (specific order as in the csv list below), or null language if everything fails
- \xpg@ifdefined{lsorbian}{}{%
- \def\do##1{%
- \xpg@ifdefined{##1}%
- {\csletcs{l@lsorbian}{l@##1}\listbreak}%
- {}%
- }%
- \docsvlist{lowersorbian,Lsorbian,usorbian,uppersorbian}
- \xpg@ifdefined{lsorbian}{}{%
- \xpg@warning{No hyphenation patterns for Lower Sorbian found\MessageBreak
- I will use the 'null' language instead}%
- \adddialect\l@lsorbian0%
- }
- }%
- \fi
- \xpg@info{Option: sorbian, variant=\xpg@val}%
-}{\xpg@warning{Unknown sorbian variant `#1'}}
-
-
-\define@boolkey{sorbian}[sorbian@]{olddate}[true]{}
+
+\DeclareKeys[polyglossia/gloss/sorbian]
+ {
+ olddate.if = sorbian@olddate,
+ olddate.default:n = true,
+ variant.choice:,
+ variant / upper.code =
+ {%
+ \def\sorbian@variant{usorbian}%
+ \SetLanguageKeys{sorbian}{language=Upper Sorbian,langtag=USB,babelname=uppersorbian,bcp47=hsb,bcp47-language=hsb}%
+ \SetupLatinPolyglossiaFont{sorbian}%
+ % Check if \l@usorbian is defined. If not, try to set it to some variety
+ % (specific order as in the csv list), or null language if everything fails
+ \TryPatternWithFallback{usorbian}{uppersorbian}%
+ },
+ variant / lower.code =
+ {%
+ \def\sorbian@variant{lsorbian}%
+ \SetLanguageKeys{sorbian}{language=Lower Sorbian,langtag=LSB,babelname=lowersorbian,bcp47=dsb,bcp47-language=dsb}%
+ \SetupLatinPolyglossiaFont{sorbian}%
+ % Check if \l@lsorbian is defined. If not, try to set it to some variety
+ % (specific order as in the csv list), or null language if everything fails
+ \TryPatternWithFallback{lsorbian}{lowersorbian,Lsorbian,usorbian,uppersorbian}%
+ },
+ variant.default:n = upper,
+ variant/unknown.code = \xpg@warning{Unknown sorbian variant `#1'}
+ }
% Register default options
-\xpg@initialize@gloss@options{sorbian}{variant=upper,olddate=false}
+\InitializeGlossOptions{sorbian}{variant=upper,olddate=false}
\def\sorbian@language{%
- \polyglossia@setup@language@patterns{\sorbian@variant}%
+ \SetupPolyglossiaLangPatterns{\sorbian@variant}%
}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-spanish.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-spanish.ldf
index c7f6358f047..c1f3452bb5f 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-spanish.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-spanish.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-spanish.ldf}[polyglossia: module for Spanish]
@@ -27,52 +27,58 @@
\newif\if@spanish@mexico
\@spanish@mexicofalse
-\define@choicekey*+{spanish}{variant}[\xpg@val\xpg@nr]{spanish,mexican}[spanish]{%
- \ifcase\xpg@nr\relax
- % spanish:
- \@spanish@mexicofalse%
- \SetLanguageKeys{spanish}{babelname=spanish,bcp47=es-ES,bcp47-region=ES}%
- \or
- % mexican:
- \@spanish@mexicotrue%
- \SetLanguageKeys{spanish}{babelname=spanishmx,bcp47=es-MX,bcp47-region=MX}%
- \fi
- \xpg@info{Option: spanish, variant=\xpg@val}%
-}{\xpg@warning{Unknown spanish variant `#1'}}
% Localized math operators à la babel
\newif\ifspanish@accentedoperators
\newif\ifspanish@spacedoperators
\newif\ifspanish@locoperators
-\define@choicekey*+{spanish}{spanishoperators}[\xpg@val\xpg@nr]{all,accented,spaced,none}[all]{%
- \ifcase\xpg@nr\relax
- % all:
- \spanish@locoperatorstrue%
- \spanish@accentedoperatorstrue%
- \spanish@spacedoperatorstrue%
- \or
- % accented:
- \spanish@locoperatorsfalse%
- \spanish@accentedoperatorstrue%
- \spanish@spacedoperatorsfalse%
- \or
- % spaced:
- \spanish@locoperatorsfalse%
- \spanish@accentedoperatorsfalse%
- \spanish@spacedoperatorstrue%
- \or
- % none:
- \spanish@locoperatorsfalse%
- \spanish@accentedoperatorsfalse%
- \spanish@spacedoperatorsfalse%
- \fi
- \xpg@info{Option: Spanish, spanishoperators=\xpg@val}%
-}{\xpg@warning{Unknown spanishoperators value `#1'}}
-
+\DeclareKeys[polyglossia/gloss/spanish]
+ {
+ variant.choice:,
+ variant / spanish.code =
+ {%
+ \@spanish@mexicofalse
+ \SetLanguageKeys{spanish}{babelname=spanish,bcp47=es-ES,bcp47-region=ES}%
+ },
+ variant / mexican.code =
+ {%
+ \@spanish@mexicotrue
+ \SetLanguageKeys{spanish}{babelname=spanishmx,bcp47=es-MX,bcp47-region=MX}%
+ },
+ variant.default:n = spanish,
+ variant/unknown.code = \xpg@warning{Unknown spanish variant `#1'},
+ spanishoperators.choice:,
+ spanishoperators / all.code =
+ {%
+ \spanish@locoperatorstrue
+ \spanish@accentedoperatorstrue
+ \spanish@spacedoperatorstrue
+ },
+ spanishoperators / accented.code =
+ {%
+ \spanish@locoperatorsfalse
+ \spanish@accentedoperatorstrue
+ \spanish@spacedoperatorsfalse
+ },
+ spanishoperators / spaced.code =
+ {%
+ \spanish@locoperatorsfalse
+ \spanish@accentedoperatorsfalse
+ \spanish@spacedoperatorstrue
+ },
+ spanishoperators / none.code =
+ {%
+ \spanish@locoperatorsfalse
+ \spanish@accentedoperatorsfalse
+ \spanish@spacedoperatorsfalse
+ },
+ spanishoperators.default:n = all,
+ spanishoperators/unknown.code = \xpg@warning{Unknown spanishoperators value `#1'}
+ }
% Register default options
-\xpg@initialize@gloss@options{spanish}{variant=spanish,spanishoperators=none}
+\InitializeGlossOptions{spanish}{variant=spanish,spanishoperators=none}
\let\xpg@save@lim\lim
\let\xpg@save@limsup\limsup
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-spanishmx.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-spanishmx.ldf
index 850f5564ec5..8d126e739ac 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-spanishmx.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-spanishmx.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-spanishmx.ldf}[polyglossia: module for Mexican Spanish]
% We provide this as a babel alias
-\xpg@load@master@language{spanish}
+\InheritGlossFile{spanish}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-swedish.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-swedish.ldf
index a47304f1291..d65e5dba85e 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-swedish.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-swedish.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-swedish.ldf}[polyglossia: module for Swedish]
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-swissgerman.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-swissgerman.ldf
index fe679140556..08bed4a210d 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-swissgerman.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-swissgerman.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-swissgerman.ldf}[polyglossia: module for Swiss German (old spelling)]
% We provide this as a babel alias
-\xpg@load@master@language{german}
+\InheritGlossFile{german}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-syriac.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-syriac.ldf
index 7bd32c3ddcd..6ad71c2ad06 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-syriac.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-syriac.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-syriac.ldf}[polyglossia: module for Syriac]
@@ -22,34 +22,37 @@
% BCP-47 compliant aliases
\setlanguagealias*{syriac}{syr}
-\def\syriacnumber#1{\@syriacnumber{#1}}%
+\def\syriacnumber#1{\@syriacnumber{#1}}
\newif\if@eastern@numerals
-\define@choicekey*+{syriac}{numerals}[\xpg@val\xpg@nr]{eastern,western,abjad}[eastern]{%
- \ifcase\xpg@nr\relax
- % eastern:
- \@eastern@numeralstrue
- \SetLanguageKeys{syriac}{bcp47-extension-u=nu-syrc}%
- \or
- % western:
- \@eastern@numeralsfalse
- \SetLanguageKeys{syriac}{bcp47-extension-u=nu-latn}%
- \or
- % abjad:
- \let\syriacnumber\abjadsyriac%
- \fi
- \xpg@info{Option: Syriac, numerals=\xpg@val}%
-}{\xpg@warning{Unknown Syriac numerals option `#1'}}
-
\newif\ifsyriac@customsep\syriac@customsepfalse
\def\xpg@sepmark{}
-\define@key{syriac}{sectionsep}[.]{%
- \syriac@customseptrue%
- \gdef\xpg@sepmark{#1}%
-}
+
+\DeclareKeys[polyglossia/gloss/syriac]
+ {
+ sectionsep.code = \gdef\xpg@sepmark{#1}\syriac@customseptrue,
+ sectionsep.default:n = .,
+ numerals.choice:,
+ numerals / eastern.code =
+ {%
+ \@eastern@numeralstrue
+ \SetLanguageKeys{syriac}{bcp47-extension-u=nu-syrc}%
+ },
+ numerals / western.code =
+ {%
+ \@eastern@numeralsfalse
+ \SetLanguageKeys{syriac}{bcp47-extension-u=nu-latn}%
+ },
+ numerals / abjad.code =
+ {%
+ \let\syriacnumber\abjadsyriac
+ },
+ numerals.default:n = eastern,
+ numerals/unknown.code = \xpg@warning{Unknown Syriac numerals option `#1'}
+ }
% Register default options
-\xpg@initialize@gloss@options{syriac}{numerals=western}
+\InitializeGlossOptions{syriac}{numerals=western}
%\define@key{polyglossia}{syriaclocale}[default]{%
% \def\@syriac@locale{#1}}
@@ -136,13 +139,13 @@
\IfCharIsAvailableTF{0661}%
{\@ensure@LTR{\protect\arabicdigits{\number#1}}}%
{\@ensure@LTR{\arabicdigits{\number#1}}
- \ifcsdef{arabicfont}%
- {\@ensure@LTR{\protect\arabicdigits{\number#1}}%
- \xpg@warning{You have specified the option numerals=eastern for Syriac, but the Syriac font does not contain the appropriate glyphs:
- I am using \string\arabicfont instead}}%
+ \@ifundefined{arabicfont}%
{\number#1%%% <---changed from \RL{\protect\reset@font\protect\number#1}%
\xpg@warning{You have specified the option numerals=eastern for Syriac, but the Syriac font does not contain the appropriate glyphs:
since \string\arabicfont is not defined, we'll use Western numerals instead}}%
+ {\@ensure@LTR{\protect\arabicdigits{\number#1}}%
+ \xpg@warning{You have specified the option numerals=eastern for Syriac, but the Syriac font does not contain the appropriate glyphs:
+ I am using \string\arabicfont instead}}%
}%
\else
%%\RL{\protect\reset@font\number#1}%
@@ -180,16 +183,16 @@
}
\def\nosyriac@xetex@capsformat{%
- \ifcsdef{xpg@save@sepmark}{%
+ \ifcsname xpg@save@sepmark\endcsname%
\SepMark{\xpg@save@sepmark}
- }{}%
+ \fi%
}
\def\syriac@luatex@capsformat{%
%
% change chapter and part headings
\ifsyriac@customsep
- \ifcsdef{chapter}{%
+ \ifcsname chapter\endcsname%
\let\xpg@save@thesection\thesection%
\renewcommand*\thesection{\thechapter\xpg@sepmark\@arabic\c@section}
\let\xpg@save@theequation\theequation%
@@ -201,7 +204,7 @@
\let\xpg@save@thetable\thetable%
\renewcommand*\thetable{%
\ifnum\c@chapter>\z@\thechapter\xpg@sepmark\fi\@arabic\c@table}
- }{}
+ \fi%
\let\xpg@save@thesubsection\thesubsection%
\renewcommand\thesubsection
{\thesection\xpg@sepmark\@arabic\c@subsection}
@@ -216,30 +219,30 @@
}
\def\nosyriac@luatex@capsformat{%
- \ifcsdef{xpg@save@thesection}{%
+ \ifcsname xpg@save@thesection\endcsname%
\let\thesection\xpg@save@thesection%
- }{}%
- \ifcsdef{xpg@save@theequation}{%
+ \fi%
+ \ifcsname xpg@save@theequation\endcsname%
\let\theequation\xpg@save@theequation%
- }{}%
- \ifcsdef{xpg@save@thefigure}{%
+ \fi%
+ \ifcsname xpg@save@thefigure\endcsname%
\let\thefigure\xpg@save@thefigure%
- }{}%
- \ifcsdef{xpg@save@thetable}{%
+ \fi%
+ \ifcsname xpg@save@thetable\endcsname%
\let\thetable\xpg@save@thetable%
- }{}%
- \ifcsdef{xpg@save@thesubsection}{%
+ \fi%
+ \ifcsname xpg@save@thesubsection\endcsname%
\let\thesubsection\xpg@save@thesubsection%
- \ifcsdef{xpg@save@thesubsubsection}{%
+ \ifcsname xpg@save@thesubsubsection\endcsname%
\let\thesubsubsection\xpg@save@thesubsubsection%
- }{}%
- }{}%
- \ifcsdef{xpg@save@theparagraph}{%
+ \fi%
+ \fi%
+ \ifcsname xpg@save@theparagraph\endcsname%
\let\theparagraph\xpg@save@theparagraph%
- }{}%
- \ifcsdef{xpg@save@thesubparagraph}{%
+ \fi%
+ \ifcsname xpg@save@thesubparagraph\endcsname%
\let\thesubparagraph\xpg@save@thesubparagraph%
- }{}%
+ \fi%
}
\def\blockextras@syriac{%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-tamil.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-tamil.ldf
index 3d737cfe785..d52d85b6d51 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-tamil.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-tamil.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-tamil.ldf}[polyglossia: module for Tamil]
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-telugu.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-telugu.ldf
index 25f4b29971f..0b63e04c6c9 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-telugu.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-telugu.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-telugu.ldf}[polyglossia: module for Telugu]
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-thai.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-thai.ldf
index ed530fbac5c..023a27bca08 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-thai.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-thai.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-thai.ldf}[polyglossia: module for Thai]
%% This is partly based on thai-latex for Babel:
@@ -29,19 +29,25 @@
\newif\if@thai@numerals
\def\tmp@thai{thai}
-\define@key{thai}{numerals}[arabic]{%
- \def\@tmpa{#1}%
- \ifx\@tmpa\tmp@thai
- \@thai@numeralstrue%
- \SetLanguageKeys{thai}{bcp47-extension-u=nu-thai}%
- \else
- \@thai@numeralsfalse%
- \SetLanguageKeys{thai}{bcp47-extension-u=nu-latn}%
- \fi
-}
+
+\DeclareKeys[polyglossia/gloss/thai]
+ {
+ numerals.choice:,
+ numerals / arabic.code =
+ {%
+ \@thai@numeralsfalse
+ \SetLanguageKeys{thai}{bcp47-extension-u=nu-latn}%
+ },
+ numerals / thai.code =
+ {%
+ \@thai@numeralstrue
+ \SetLanguageKeys{thai}{bcp47-extension-u=nu-thai}%
+ },
+ numerals.default:n = arabic,
+ }
% Register default options
-\xpg@initialize@gloss@options{thai}{numerals=arabic}
+\InitializeGlossOptions{thai}{numerals=arabic}
\def\captionsthai{%
\def\refname{หนังสืออ้างอิง}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-tibetan.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-tibetan.ldf
index 70de9a9ac24..f3209145bf2 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-tibetan.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-tibetan.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-tibetan.ldf}[polyglossia: module for Tibetan]
%% Copyright 2013 Elie Roux
@@ -24,20 +24,18 @@
\setlanguagealias*{tibetan}{bo}
\newif\if@tibetan@numerals
-\def\tmp@tibetan{tibetan}
-\define@key{tibetan}{numerals}[tibetan]{%
- \def\@tmpa{#1}%
- \ifx\@tmpa\tmp@tibetan
- \@tibetan@numeralstrue%
- \SetLanguageKeys{tibetan}{bcp47-extension-u=nu-tibt}%
- \else
- \@tibetan@numeralsfalse%
- \SetLanguageKeys{tibetan}{bcp47-extension-u=nu-latn}%
- \fi%
-}
+\DeclareKeys[polyglossia/gloss/tibetan]
+ {
+ numerals.choice:,
+ numerals/tibetan.code = \@tibetan@numeralstrue
+ \SetLanguageKeys{tibetan}{bcp47-extension-u=nu-tibt},
+ numerals/arabic.code = \@tibetan@numeralsfalse
+ \SetLanguageKeys{tibetan}{bcp47-extension-u=nu-latn},
+ numerals.default:n = tibetan
+ }
\ifluatex
- \newluatexattribute\xpg@tibteol %
+ \newattribute\xpg@tibteol %
\directlua{polyglossia.load_tibt_eol()}%
\fi
@@ -62,7 +60,7 @@
}
% Register default options
-\xpg@initialize@gloss@options{tibetan}{numerals=tibetan}
+\InitializeGlossOptions{tibetan}{numerals=tibetan}
% some are known, but very few
% a few come from "Standardizing Tibetan Terms of Information Technology"
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-turkish.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-turkish.ldf
index a6784ae276b..f8d1b16154d 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-turkish.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-turkish.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-turkish.ldf}[polyglossia: module for Turkish]
\RequirePackage{hijrical}
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-turkmen.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-turkmen.ldf
index 9ec398470e3..eee9e39a2d8 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-turkmen.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-turkmen.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-turkmen.ldf}[polyglossia: module for Turkmen]
%% Translations provided by Nazar Annagurban <nazartm at gmail dot com>
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ug.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ug.ldf
index 8093324dd00..1958f48ef74 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ug.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ug.ldf
@@ -1,8 +1,8 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ug.ldf}[polyglossia: module for ug (Uyghur)]
% BCP 47 tag for Uyghur
-\xpg@load@master@language{uyghur}
+\InheritGlossFile{uyghur}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ukrainian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ukrainian.ldf
index bf09149725d..94275336a50 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ukrainian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ukrainian.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-ukrainian.ldf}[polyglossia: module for Ukrainian]
% Strings taken from Babel
@@ -26,51 +26,52 @@
\newif\ifcyrillic@numerals
\newif\ifcyrillic@asbuk@numerals
-\define@choicekey*+{ukrainian}{numerals}[\xpg@val\xpg@nr]{arabic,cyrillic,cyrillic-trad,cyrillic-alph}[arabic]{%
- \ifcase\xpg@nr\relax
- % arabic:
- \cyrillic@numeralsfalse%
- \cyrillic@asbuk@numeralsfalse%
- \SetLanguageKeys{ukrainian}{bcp47-extension-u=nu-latn}%
- \or
- % cyrillic:
- \cyrillic@numeralstrue%
- \cyrillic@asbuk@numeralsfalse%
- \SetLanguageKeys{ukrainian}{bcp47-extension-u=nu-cyrl}%
- \or
- % cyrillic-trad:
- \cyrillic@numeralstrue%
- \cyrillic@asbuk@numeralsfalse%
- \SetLanguageKeys{ukrainian}{bcp47-extension-u=nu-cyrl}%
- \or
- % cyrillic-alph:
- \cyrillic@numeralstrue%
- \cyrillic@asbuk@numeralstrue%
- \SetLanguageKeys{ukrainian}{bcp47-extension-u=nu-cyrl}%
- \fi
- \xpg@info{Option: Ukrainian, numerals=\xpg@val}%
-}{\xpg@warning{Unknown Ukrainian numerals value `#1'}}
-
-% Define some math functions
-\define@boolkey{ukrainian}[ukrainian@]{mathfunctions}[true]{}
+\DeclareKeys[polyglossia/gloss/ukrainian]
+ {
+ babelshorthands.if = ukrainian@babelshorthands,
+ babelshorthands.default:n = true,
+ mathfunctions.if = ukrainian@mathfunctions,
+ mathfunctions.default:n = true,
+ numerals.choice:,
+ numerals / arabic.code =
+ {%
+ \cyrillic@numeralsfalse
+ \cyrillic@asbuk@numeralsfalse
+ \SetLanguageKeys{ukrainian}{bcp47-extension-u=nu-latn}%
+ },
+ numerals / cyrillic.code =
+ {%
+ \cyrillic@numeralstrue
+ \cyrillic@asbuk@numeralsfalse
+ \SetLanguageKeys{ukrainian}{bcp47-extension-u=nu-cyrl}%
+ },
+ numerals / cyrillic-trad.code =
+ {%
+ \cyrillic@numeralstrue
+ \cyrillic@asbuk@numeralsfalse
+ \SetLanguageKeys{ukrainian}{bcp47-extension-u=nu-cyrl}%
+ },
+ numerals / cyrillic-alph.code =
+ {%
+ \cyrillic@numeralstrue
+ \cyrillic@asbuk@numeralstrue
+ \SetLanguageKeys{ukrainian}{bcp47-extension-u=nu-cyrl}%
+ },
+ numerals.default:n = arabic,
+ numerals/unknown.code = \xpg@warning{Unknown Ukrainian numerals value `#1'}
+ }
% Register default options
-\xpg@initialize@gloss@options{ukrainian}{numerals=arabic,mathfunctions=true}
-
-\define@boolkey{ukrainian}[ukrainian@]{babelshorthands}[true]{}
+\InitializeGlossOptions{ukrainian}{numerals=arabic,mathfunctions=true}
\ifsystem@babelshorthands
- \setkeys{ukrainian}{babelshorthands=true}
+ \SetGlossOptions{ukrainian}{babelshorthands=true}
\else
- \setkeys{ukrainian}{babelshorthands=false}
+ \SetGlossOptions{ukrainian}{babelshorthands=false}
\fi
-\ifcsundef{initiate@active@char}{%
- \input{babelsh.def}%
- \initiate@active@char{"}%
- \shorthandoff{"}%
-}{}
+\InitializeBabelShorthands
\def\ukrainian@shorthands{%
\xpg@activate@shorthands%
@@ -107,7 +108,7 @@
\def\@Ccdash{\leavevmode
\nobreak\cyrdash\nobreak\hskip.35em\ignorespaces}%
\ifx\cyrdash\undefined
- \def\cyrdash{\hbox to.8em{\textendash\hss\textendash}}%
+ \def\cyrdash{\leavevmode\hbox to.8em{\textendash\hss\textendash}}%
\fi
\declare@shorthand{ukrainian}{",}{\nobreak\hskip.2em\ignorespaces}%
}
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-uppersorbian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-uppersorbian.ldf
index 9ca440a885c..9e25f61d2ea 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-uppersorbian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-uppersorbian.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-uppersorbian.ldf}[polyglossia: module for Upper Sorbian]
% We provide this as a babel alias
-\xpg@load@master@language{sorbian}
+\InheritGlossFile{sorbian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-urdu.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-urdu.ldf
index f95459e7d5b..fa9a1695d98 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-urdu.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-urdu.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
%%% Adapted from a file contributed by Kamal Abdali
\ProvidesFile{gloss-urdu.ldf}[polyglossia: module for Urdu]
@@ -25,52 +25,46 @@
\setlanguagealias*{urdu}{ur}
\newif\if@western@numerals
-\define@choicekey*+{urdu}{numerals}[\xpg@val\xpg@nr]{eastern,western}[eastern]{%
- \ifcase\xpg@nr\relax
- % eastern:
- \@western@numeralsfalse%
- \SetLanguageKeys{urdu}{bcp47-extension-u=nu-arab}%
- \or
- % western:
- \@western@numeralstrue%
- \SetLanguageKeys{urdu}{bcp47-extension-u=nu-latn}%
- \fi
- \xpg@info{Option: Urdu, numerals=\xpg@val}%
-}{\xpg@warning{Unknown Urdu numerals option `#1'}}
-
\newif\ifurdu@customsep\urdu@customsepfalse
\def\xpg@sepmark{}
-\define@key{urdu}{sectionsep}[.]{%
- \urdu@customseptrue%
- \gdef\xpg@sepmark{#1}%
-}
-
-%this is needed for \abjad in arabicnumbers.sty
-\define@boolkey{urdu}[urdu@]{abjadjimnotail}[true]{%
- \ifurdu@abjadjimnotail
- \abjad@jim@notailtrue%
- \else
- \abjad@jim@notailfalse
- \fi%
-}
-
\newif\if@hijrical
-\define@choicekey*+{urdu}{calendar}[\xpg@val\xpg@nr]{gregorian,hijri}[gregorian]{%
- \ifcase\xpg@nr\relax
- % gregorian:
- \@hijricalfalse
- \or
- % hijri:
- \@hijricaltrue
- \fi
- \xpg@info{Option: Urdu, calendar=\xpg@val}%
-}{\xpg@warning{Unknown Urdu calendar option `#1'}}
-\define@key{urdu}{hijricorrection}[0]{%
- \gdef\urdu@hijri@correction{#1}}%
+\DeclareKeys[polyglossia/gloss/urdu]
+ {
+ abjadjimnotail.if = abjad@jim@notail,
+ abjadjimnotail.default:n = true,
+ sectionsep.code = \gdef\xpg@sepmark{#1}\urdu@customseptrue,
+ sectionsep.default:n = .,
+ hijricorrection.code = \gdef\urdu@hijri@correction{#1},
+ hijricorrection.default:n = 0,
+ calendar.choice:,
+ calendar / gregorian.code =
+ {%
+ \@hijricalfalse
+ },
+ calendar / hijri.code =
+ {%
+ \@hijricaltrue
+ },
+ calendar.default:n = gregorian,
+ calendar/unknown.code = \xpg@warning{Unknown Urdu calendar option `#1'},
+ numerals.choice:,
+ numerals / eastern.code =
+ {%
+ \@western@numeralsfalse
+ \SetLanguageKeys{urdu}{bcp47-extension-u=nu-arab}%
+ },
+ numerals / western.code =
+ {%
+ \@western@numeralstrue
+ \SetLanguageKeys{urdu}{bcp47-extension-u=nu-latn}%
+ },
+ numerals.default:n = eastern,
+ numerals/unknown.code = \xpg@warning{Unknown Urdu numerals option `#1'}
+ }
% This should set the defaults
-\setkeys{urdu}{calendar,numerals,hijricorrection}
+\SetGlossOptions{urdu}{calendar,numerals,hijricorrection}
\def\urdugregmonth#1{\ifcase#1%
\or جنوری\or فروری\or مارچ\or اپریل\or مئی\or جون\or جولائی\or اگست\or ستمبر\or اکتوبر\or نومبر\or دسمبر\fi}
@@ -157,16 +151,16 @@
}
\def\nourdu@xetex@capsformat{%
- \ifcsdef{xpg@save@sepmark}{%
+ \ifcsname xpg@save@sepmark\endcsname%
\SepMark{\xpg@save@sepmark}
- }{}%
+ \fi%
}
\def\urdu@luatex@capsformat{%
%
% change chapter and part headings
\ifurdu@customsep
- \ifcsdef{chapter}{%
+ \ifcsname chapter\endcsname%
\let\xpg@save@thesection\thesection%
\renewcommand*\thesection{\thechapter\xpg@sepmark\@arabic\c@section}
\let\xpg@save@theequation\theequation%
@@ -178,7 +172,7 @@
\let\xpg@save@thetable\thetable%
\renewcommand*\thetable{%
\ifnum\c@chapter>\z@\thechapter\xpg@sepmark\fi\@arabic\c@table}
- }{}
+ \fi%
\let\xpg@save@thesubsection\thesubsection%
\renewcommand\thesubsection
{\thesection\xpg@sepmark\@arabic\c@subsection}
@@ -193,30 +187,30 @@
}
\def\nourdu@luatex@capsformat{%
- \ifcsdef{xpg@save@thesection}{%
+ \ifcsname xpg@save@thesection\endcsname%
\let\thesection\xpg@save@thesection%
- }{}%
- \ifcsdef{xpg@save@theequation}{%
+ \fi%
+ \ifcsname xpg@save@theequation\endcsname%
\let\theequation\xpg@save@theequation%
- }{}%
- \ifcsdef{xpg@save@thefigure}{%
+ \fi%
+ \ifcsname xpg@save@thefigure\endcsname%
\let\thefigure\xpg@save@thefigure%
- }{}%
- \ifcsdef{xpg@save@thetable}{%
+ \fi%
+ \ifcsname xpg@save@thetable\endcsname%
\let\thetable\xpg@save@thetable%
- }{}%
- \ifcsdef{xpg@save@thesubsection}{%
+ \fi%
+ \ifcsname xpg@save@thesubsection\endcsname%
\let\thesubsection\xpg@save@thesubsection%
- \ifcsdef{xpg@save@thesubsubsection}{%
+ \ifcsname xpg@save@thesubsubsection\endcsname%
\let\thesubsubsection\xpg@save@thesubsubsection%
- }{}%
- }{}%
- \ifcsdef{xpg@save@theparagraph}{%
+ \fi%
+ \fi%
+ \ifcsname xpg@save@theparagraph\endcsname%
\let\theparagraph\xpg@save@theparagraph%
- }{}%
- \ifcsdef{xpg@save@thesubparagraph}{%
+ \fi%
+ \ifcsname xpg@save@thesubparagraph\endcsname%
\let\thesubparagraph\xpg@save@thesubparagraph%
- }{}%
+ \fi%
}
\def\blockextras@urdu{%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-usorbian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-usorbian.ldf
index 028f7987e0d..e9a9cf545eb 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-usorbian.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-usorbian.ldf
@@ -1,10 +1,10 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-usorbian.ldf}[polyglossia: module for Upper Sorbian]
% We only provide this gloss for babel compatibility. Since usorbian is
% a sorbian variety, we use 'sorbian' with variant 'upper' now.
-\xpg@load@master@language{sorbian}
+\InheritGlossFile{sorbian}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-uyghur.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-uyghur.ldf
index 4d2c0bde96b..633f5f8b4a5 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-uyghur.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-uyghur.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-uyghur.ldf}[polyglossia: module for Uyghur]
%% Translations provided by Osman Tursun (Github Account: neouyghur)
@@ -22,62 +22,72 @@
\newif\if@uyghur@swapcaptions
\newif\if@uyghur@swapheadings
\newif\if@uyghur@swapheaders
-\define@choicekey*+{uyghur}{swapstrings}[\xpg@val\xpg@nr]{all,captions,headings,headers,hheaders,none}[all]{%
- \ifcase\xpg@nr\relax
- % all:
- \@uyghur@swapcaptionstrue%
- \@uyghur@swapheadingstrue%
- \@uyghur@swapheaderstrue%
- \or
- % captions:
- \@uyghur@swapcaptionstrue%
- \@uyghur@swapheadingsfalse%
- \@uyghur@swapheadersfalse%
- \or
- % headings:
- \@uyghur@swapcaptionsfalse%
- \@uyghur@swapheadingstrue%
- \@uyghur@swapheadersfalse%
- \or
- % headers:
- \@uyghur@swapcaptionsfalse%
- \@uyghur@swapheadingsfalse%
- \@uyghur@swapheaderstrue%
- \or
- % hheaders:
- \@uyghur@swapcaptionsfalse%
- \@uyghur@swapheadingstrue%
- \@uyghur@swapheaderstrue%
- \or
- % none:
- \@uyghur@swapcaptionsfalse%
- \@uyghur@swapheadingsfalse%
- \@uyghur@swapheadersfalse%
- \fi
- \xpg@info{Option: Uyghur, swapstrings=\xpg@val}%
-}{\xpg@warning{Unknown Uyghur swapstrings value `#1'}}
-
\newif\if@uyghur@ordchapter
\newif\if@uyghur@romchapter
-\define@choicekey*+{uyghur}{chapterformat}[\xpg@val\xpg@nr]{ordinal,roman,arabic}[ordinal]{%
- \ifcase\xpg@nr\relax
- % ordinal:
- \@uyghur@ordchaptertrue%
- \@uyghur@romchapterfalse%
- \or
- % roman:
- \@uyghur@ordchapterfalse%
- \@uyghur@romchaptertrue%
- \or
- % arabic:
- \@uyghur@ordchapterfalse%
- \@uyghur@romchapterfalse%
- \fi
- \xpg@info{Option: Uyghur, chapterformat=\xpg@val}%
-}{\xpg@warning{Unknown Uyghur chapterformat value `#1'}}
+
+\DeclareKeys[polyglossia/gloss/uyghur]
+ {
+ chapterformat.choice:,
+ chapterformat / ordinal.code =
+ {%
+ \@uyghur@ordchaptertrue
+ \@uyghur@romchapterfalse
+ },
+ chapterformat / roman.code =
+ {%
+ \@uyghur@ordchapterfalse
+ \@uyghur@romchaptertrue
+ },
+ chapterformat / arabic.code =
+ {%
+ \@uyghur@ordchapterfalse
+ \@uyghur@romchapterfalse
+ },
+ chapterformat.default:n = ordinal,
+ chapterformat/unknown.code = \xpg@warning{Unknown Uyghur chapterformat value `#1'},
+ swapstrings.choice:,
+ swapstrings / all.code =
+ {%
+ \@uyghur@swapcaptionstrue
+ \@uyghur@swapheadingstrue
+ \@uyghur@swapheaderstrue
+ },
+ swapstrings / captions.code =
+ {%
+ \@uyghur@swapcaptionstrue
+ \@uyghur@swapheadingsfalse
+ \@uyghur@swapheadersfalse
+ },
+ swapstrings / headings.code =
+ {%
+ \@uyghur@swapcaptionsfalse
+ \@uyghur@swapheadingstrue
+ \@uyghur@swapheadersfalse
+ },
+ swapstrings / headers.code =
+ {%
+ \@uyghur@swapcaptionsfalse
+ \@uyghur@swapheadingsfalse
+ \@uyghur@swapheaderstrue
+ },
+ swapstrings / hheaders.code =
+ {%
+ \@uyghur@swapcaptionsfalse
+ \@uyghur@swapheadingstrue
+ \@uyghur@swapheaderstrue
+ },
+ swapstrings / none.code =
+ {%
+ \@uyghur@swapcaptionsfalse
+ \@uyghur@swapheadingsfalse
+ \@uyghur@swapheadersfalse
+ },
+ swapstrings.default:n = all,
+ swapstrings/unknown.code = \xpg@warning{Unknown Uyghur swapstrings value `#1'}
+ }
% Register default options
-\xpg@initialize@gloss@options{uyghur}{swapstrings=all,chapterformat=ordinal}
+\InitializeGlossOptions{uyghur}{swapstrings=all,chapterformat=ordinal}
\def\captionsuyghur{%
@@ -125,120 +135,104 @@
% change chapter and part headings
\if@uyghur@swapheadings
% With titlesec
- \ifcsdef{titleformat}{%
- \ifcsdef{H@old@part}{% Hyperref
- \let\xpg@save@part@format\H@old@part%
- \patchcmd{\H@old@part}%
- {\partname\nobreakspace\thepart}%
- {\the@uyghur@part\nobreakspace\partname}%
- {}%
- {\xpg@warning{Failed to patch part for Uyghur}}%
- }{% not hyperref
- \ifcsdef{@part}{%
- \let\xpg@save@part@format\@part%
- \patchcmd{\@part}%
- {\partname\nobreakspace\thepart}%
- {\the@uyghur@part\nobreakspace\partname}%
- {}%
- {\xpg@warning{Failed to patch part for Uyghur}}%
- }{}%
- }
- \ifcsdef{chapter}{%
- \titleformat\chapter[display]%
- {\@ifundefined{ttl@fil}{\raggedright}{\ttl@fil}\ttl@fonts\ttl@sizes6}
- {\the@uyghur@chapter\space\@chapapp}{.8\baselineskip}{\ttl@sizes\z@\ttl@passexplicit}
- }{}%
- }{% (not \ifdefined\titleformat)
+ \@ifundefined{titleformat}{%
% With KOMA
- \ifcsdef{sectionformat}{%
- \ifcsdef{partformat}{%
- \let\xpg@save@part@format\partformat%
- \renewcommand{\partformat}{\the@uyghur@part~\partname}%
- }{}%
- \ifcsdef{chapterformat}{%
- \let\xpg@save@chap@format\chapterformat%
- \renewcommand{\chapterformat}{\mbox{\the@uyghur@chapter%
- \IfUsePrefixLine{\nobreakspace\chapapp}{\enskip}}}%
- }{}%
- }{% (not \ifdefined\sectionformat)
+ \@ifundefined{sectionformat}{%
% With memoir
- \ifcsdef{@memptsize}{%
- \ifcsdef{@makechapterhead}{%
- \let\xpg@save@chap@format\@makechapterhead%
- \patchcmd{\@makechapterhead}{\printchaptername \chapternamenum \printchapternum}%
- {\chapnumfont\the@uyghur@chapter\chapternamenum\printchaptername}%
- {}%
- {\xpg@warning{Failed to patch chapter for Uyghur}}%
- }{}%
- \ifcsdef{H@old@part}{% Hyperref
- \let\xpg@save@part@format\H@old@part%
- \patchcmd{\H@old@part}{\printpartname \partnamenum \printpartnum}%
- {\chapnumfont\the@uyghur@part\partnamenum\printpartname}%
- {}%
- {\xpg@warning{Failed to patch part for Uyghur}}%
- }{% not hyperref
- \ifcsdef{@part}{%
- \let\xpg@save@part@format\@part%
- \patchcmd{\@part}{\printpartname \partnamenum \printpartnum}%
- {\chapnumfont\the@uyghur@part\partnamenum\printpartname}%
- {}%
- {\xpg@warning{Failed to patch part for Uyghur}}%
- }{}%
- }%
- }{% (not \ifdefined\@memptsize)
+ \@ifundefined{@memptsize}{%
% With standard classes
- \ifcsdef{@makechapterhead}{%
+ \@ifundefined{@makechapterhead}{}{%
\let\xpg@save@chap@format\@makechapterhead%
\patchcmd{\@makechapterhead}%
{\@chapapp\space \thechapter}%
{\the@uyghur@chapter\space \@chapapp}%
{}%
{\xpg@warning{Failed to patch chapter for Uyghur}}%
- }{}%
- \ifcsdef{H@old@part}{% Hyperref
+ }%
+ \@ifundefined{H@old@part}{% not hyperref
+ \@ifundefined{@part}{}{%
+ \let\xpg@save@part@format\@part%
+ \patchcmd{\@part}%
+ {\partname\nobreakspace\thepart}%
+ {\the@uyghur@part\nobreakspace\partname}%
+ {}%
+ {\@ifundefined{part}{}{\xpg@warning{Failed to patch part for Uyghur}}}%
+ }% (end \ifdefined\@part)
+ }{% Hyperref
\let\xpg@save@part@format\H@old@part%
\patchcmd{\H@old@part}%
{\partname\nobreakspace\thepart}%
{\the@uyghur@part\nobreakspace\partname}%
{}%
{\xpg@warning{Failed to patch part for Uyghur}}%
- }{% not hyperref
- \ifcsdef{@part}{%
- \let\xpg@save@part@format\@part%
- \patchcmd{\@part}%
- {\partname\nobreakspace\thepart}%
- {\the@uyghur@part\nobreakspace\partname}%
- {}%
- {\ifcsdef{part}{\xpg@warning{Failed to patch part for Uyghur}}{}}%
- }{}% (end \ifdefined\@part)
}% (end not hyperref)
- }% (end \ifdefined\@memptsize)
- }% (end \ifdefined\sectionformat)
+ }{% (\ifdefined\@memptsize)
+ \@ifundefined{@makechapterhead}{}{%
+ \let\xpg@save@chap@format\@makechapterhead%
+ \patchcmd{\@makechapterhead}{\printchaptername \chapternamenum \printchapternum}%
+ {\chapnumfont\the@uyghur@chapter\chapternamenum\printchaptername}%
+ {}%
+ {\xpg@warning{Failed to patch chapter for Uyghur}}%
+ }%
+ \@ifundefined{H@old@part}{% not hyperref
+ \@ifundefined{@part}{}{%
+ \let\xpg@save@part@format\@part%
+ \patchcmd{\@part}{\printpartname \partnamenum \printpartnum}%
+ {\chapnumfont\the@uyghur@part\partnamenum\printpartname}%
+ {}%
+ {\xpg@warning{Failed to patch part for Uyghur}}%
+ }%
+ }{% Hyperref
+ \let\xpg@save@part@format\H@old@part%
+ \patchcmd{\H@old@part}{\printpartname \partnamenum \printpartnum}%
+ {\chapnumfont\the@uyghur@part\partnamenum\printpartname}%
+ {}%
+ {\xpg@warning{Failed to patch part for Uyghur}}%
+ }%
+ }% (end \ifdefined\@memptsize)
+ }{% (\ifdefined\sectionformat)
+ \@ifundefined{partformat}{}{%
+ \let\xpg@save@part@format\partformat%
+ \renewcommand{\partformat}{\the@uyghur@part~\partname}%
+ }%
+ \@ifundefined{chapterformat}{}{%
+ \let\xpg@save@chap@format\chapterformat%
+ \renewcommand{\chapterformat}{\mbox{\the@uyghur@chapter%
+ \IfUsePrefixLine{\nobreakspace\chapapp}{\enskip}}}%
+ }%
+ }% (end \ifdefined\sectionformat)
+ }{% (\ifdefined\titleformat)
+ \@ifundefined{H@old@part}{% not hyperref
+ \@ifundefined{@part}{}{%
+ \let\xpg@save@part@format\@part%
+ \patchcmd{\@part}%
+ {\partname\nobreakspace\thepart}%
+ {\the@uyghur@part\nobreakspace\partname}%
+ {}%
+ {\xpg@warning{Failed to patch part for Uyghur}}%
+ }%
+ }{% Hyperref
+ \let\xpg@save@part@format\H@old@part%
+ \patchcmd{\H@old@part}%
+ {\partname\nobreakspace\thepart}%
+ {\the@uyghur@part\nobreakspace\partname}%
+ {}%
+ {\xpg@warning{Failed to patch part for Uyghur}}%
+ }%
+ \@ifundefined{chapter}{}{%
+ \titleformat\chapter[display]%
+ {\@ifundefined{ttl@fil}{\raggedright}{\ttl@fil}\ttl@fonts\ttl@sizes6}
+ {\the@uyghur@chapter\space\@chapapp}{.8\baselineskip}{\ttl@sizes\z@\ttl@passexplicit}
+ }%
}% (end \ifdefined\titleformat)
\fi% (end \if@uyghur@swapheadings)
%
% Change running headers
\if@uyghur@swapheaders
- \ifcsdef{chapterformat}{%
- % With KOMA
- \let\xpg@save@chaptermark@format\chaptermarkformat%
- \renewcommand*\chaptermarkformat{%
- \the@uyghur@chapter\ \IfChapterUsesPrefixLine{\chapapp\enskip}{}}
- }{% (not \ifdefined\chapterformat)
- \ifcsdef{@memptsize}{%
- % With memoir
- \let\xpg@save@chaptermark@format\chaptermark%
- \renewcommand*\chaptermark[1]{%
- \markboth{\memUChead{%
- \ifnum \c@secnumdepth >\m@ne
- \ifbool{@mainmatter}{%
- \the@uyghur@chapter\ \@chapapp\ %
- }{}%
- \fi
- ##1}}{}}%
- }{% (not \ifdefined\@memptsize)
+ \@ifundefined{chapterformat}{%
+ \@ifundefined{@memptsize}{%
% With standard classes
- \ifcsdef{chaptermark}{%
+ \@ifundefined{chaptermark}{}{%
\ifpatchable{\chaptermark}%
{\@chapapp\ \thechapter.}%
{\let\xpg@save@chaptermark@format\chaptermark%
@@ -248,21 +242,38 @@
{}%
{\xpg@warning{Failed to patch chaptermark for Uyghur}}}%
{}%
- }{}% (end \ifdefined\sectionmark)
- \ifcsdef{sectionmark}{%
- \ifpatchable{\sectionmark}%
- {\thesection.}%
- {\let\xpg@save@sectionmark@format\sectionmark%
- \patchcmd{\sectionmark}%
- {\thesection.}%
- {\thesection}%
- {}%
- {\xpg@warning{Failed to patch sectionmark for Uyghur}}}%
- {}%
- }{}% (end \ifdefined\chaptermark)
+ }% (end \ifdefined\sectionmark)
+ \@ifundefined{sectionmark}{}{%
+ \ifpatchable{\sectionmark}%
+ {\thesection.}%
+ {\let\xpg@save@sectionmark@format\sectionmark%
+ \patchcmd{\sectionmark}%
+ {\thesection.}%
+ {\thesection}%
+ {}%
+ {\xpg@warning{Failed to patch sectionmark for Uyghur}}%
+ }%
+ {}%
+ }% (end \ifdefined\chaptermark)
+ }{% (\ifdefined\@memptsize)
+ % With memoir
+ \let\xpg@save@chaptermark@format\chaptermark%
+ \renewcommand*\chaptermark[1]{%
+ \markboth{\memUChead{%
+ \ifnum \c@secnumdepth >\m@ne
+ \ifbool{@mainmatter}{%
+ \the@uyghur@chapter\ \@chapapp\ %
+ }{}%
+ \fi
+ ##1}}{}}%
}% (end \ifdefined\@memptsize)
+ }{% (\ifdefined\chapterformat)
+ % With KOMA
+ \let\xpg@save@chaptermark@format\chaptermarkformat%
+ \renewcommand*\chaptermarkformat{%
+ \the@uyghur@chapter\ \IfChapterUsesPrefixLine{\chapapp\enskip}{}}
}% (end \ifdefined\chapterformat)
- \fi% (end \if@uyghur@swapheaders)
+ \fi% (end \if@uyghur@swapheaders)
}
\def\nouyghur@capsformat{%
@@ -272,62 +283,62 @@
\let\fnum@figure\xpg@save@fnum@figure%
%
% Reset chapter and part heading
- \ifcsdef{titleformat}{%
+ \@ifundefined{titleformat}{%
+ \@ifundefined{sectionformat}{%
+ % With memoir and standard classes
+ \@ifundefined{xpg@save@part@format}{}{%
+ \@ifundefined{H@old@part}{%
+ \let\@part\xpg@save@part@format%
+ }{%
+ \let\H@old@part\xpg@save@part@format%
+ }%
+ }%
+ \@ifundefined{xpg@save@chap@format}{}{%
+ \let\@makechapterhead\xpg@save@chap@format
+ }%
+ }{%
+ % With KOMA
+ \@ifundefined{xpg@save@part@format}{}{%
+ \let\partformat\xpg@save@part@format
+ }%
+ \@ifundefined{xpg@save@chap@format}{}{%
+ \let\chapterformat\xpg@save@chap@format
+ }%
+ }% (end \ifdefined\sectionformat)
+ }{% (\ifdefined\titleformat)
% With titlesec
- \ifcsdef{xpg@save@part@format}{%
- \ifcsdef{H@old@part}{%
- \let\H@old@part\xpg@save@part@format%
- }{%
+ \@ifundefined{xpg@save@part@format}{}{%
+ \@ifundefined{H@old@part}{%
\let\@part\xpg@save@part@format%
+ }{%
+ \let\H@old@part\xpg@save@part@format%
}%
- }{}%
- \ifcsdef{chapter}{%
+ }%
+ \@ifundefined{chapter}{}{%
\titleformat\chapter[display]%
{\@ifundefined{ttl@fil}{\raggedright}{\ttl@fil}\ttl@fonts\ttl@sizes6}
{\@chapapp\space\thechapter}{.8\baselineskip}{\ttl@sizes\z@\ttl@passexplicit}
- }{}%
- }{% (not \ifdefined\titleformat)
- \ifcsdef{sectionformat}{%
- % With KOMA
- \ifcsdef{xpg@save@part@format}{%
- \let\partformat\xpg@save@part@format
- }{}%
- \ifcsdef{xpg@save@chap@format}{%
- \let\chapterformat\xpg@save@chap@format
- }{}%
- }{%
- % With memoir and standard classes
- \ifcsdef{xpg@save@part@format}{%
- \ifcsdef{H@old@part}{%
- \let\H@old@part\xpg@save@part@format%
- }{%
- \let\@part\xpg@save@part@format%
- }%
- }{}%
- \ifcsdef{xpg@save@chap@format}{%
- \let\@makechapterhead\xpg@save@chap@format
- }{}%
- }% (end \ifdefined\sectionformat)
+ }%
}% (end \ifdefined\titleformat)
%
% Reset headers
- \ifcsdef{chaptermarkformat}{%
- % With KOMA
- \ifcsdef{xpg@save@chaptermark@format}{%
- \let\chaptermarkformat\xpg@save@chaptermark@format%
- }{}%
- }{%
- \ifcsdef{chaptermark}{%
+ \@ifundefined{chaptermarkformat}{%
+ \@ifundefined{chaptermark}{}{%
% With memoir and standard classes
- \ifcsdef{xpg@save@chaptermark@format}{%
+ \@ifundefined{xpg@save@chaptermark@format}{}{%
\let\chaptermark\xpg@save@chaptermark@format%
- }{}%
- }{}% (end \ifdefined\chaptermark)
- \ifcsdef{sectionmark}{%
- \ifcsdef{xpg@save@sectionmark@format}{%
+ }%
+ }% (end \ifdefined\chaptermark)
+ \@ifundefined{sectionmark}{}{%
+ \@ifundefined{xpg@save@sectionmark@format}{}{%
\let\sectionmark\xpg@save@sectionmark@format%
- }{}%
- }{}% (end \ifdefined\sectionmark)
+ }%
+ }% (end \ifdefined\sectionmark)
+ }{%
+ % With KOMA
+ \@ifundefined{xpg@save@chaptermark@format}{}{%
+ \let\chaptermarkformat\xpg@save@chaptermark@format%
+ }%
}% (end \ifdefined\chapterformat)
}
@@ -363,22 +374,22 @@
\let\the@uyghur@chapter\thechapter
\def\uyghur@chapterformat{%
- \ifcsdef{part}{%
+ \@ifundefined{part}{}{%
\if@uyghur@ordchapter%
\renewcommand{\the@uyghur@part}{\uyghurord{part}}%
\fi%
\if@uyghur@romchapter%
\renewcommand{\the@uyghur@part}{\Roman{part}}%
\fi%
- }{}%
- \ifcsdef{chapter}{%
+ }%
+ \@ifundefined{chapter}{}{%
\if@uyghur@ordchapter%
\renewcommand{\the@uyghur@chapter}{\uyghurord{chapter}}%
\fi%
\if@uyghur@romchapter%
\renewcommand{\the@uyghur@chapter}{\Roman{chapter}}%
\fi%
- }{}%
+ }%
}
\def\uyghur@numbers{%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-vietnamese.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-vietnamese.ldf
index d223d38d3a2..05f0769e8d2 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-vietnamese.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-vietnamese.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-vietnamese.ldf}[polyglossia: module for Vietnamese]
%% Strings contributed by Daniel Owens < dhowens . pmbx . net >
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-welsh.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-welsh.ldf
index 5b68cfa9d9c..264b5833e1a 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-welsh.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-welsh.ldf
@@ -1,4 +1,4 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-welsh.ldf}[polyglossia: module for Welsh]
@@ -15,21 +15,26 @@
% BCP-47 compliant aliases
\setlanguagealias*{welsh}{cy}
-\providebool{welsh@formaldate}
+\@ifundefined{ifwelsh@formaldate}%
+ {\newif\ifwelsh@formaldate}{}
-\define@choicekey*+{welsh}{date}[\xpg@val\xpg@nr]{long,short}[short]{%
- \ifcase\xpg@nr\relax
- % long:
- \welsh@formaldatetrue
- \or
- % accented:
- \welsh@formaldatefalse
- \fi
- \xpg@info{Option: Welsh, date=\xpg@val}%
-}{\xpg@warning{Unknown date value `#1'}}
+\DeclareKeys[polyglossia/gloss/welsh]
+ {
+ date.choice:,
+ date / long.code =
+ {%
+ \welsh@formaldatetrue
+ },
+ date / short.code =
+ {%
+ \welsh@formaldatefalse
+ },
+ date.default:n = short,
+ date/unknown.code = \xpg@warning{Unknown date value `#1'},
+ }
% Register default options
-\xpg@initialize@gloss@options{welsh}{date=short}
+\InitializeGlossOptions{welsh}{date=short}
\def\captionswelsh{%
\def\refname{Cyfeiriadau}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-zh-CN.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-zh-CN.ldf
index 13a85e1f67e..5e922469913 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-zh-CN.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-zh-CN.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-zh-CN.ldf}[polyglossia: module for zh-CN (Chinese)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{chinese}
+\InheritGlossFile{chinese}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-zh-TW.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-zh-TW.ldf
index 10792a0d386..38e6a2656f6 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-zh-TW.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-zh-TW.ldf
@@ -1,9 +1,9 @@
-% Language definition file (part of polyglossia v2.1 -- 2024/03/07)
+% Language definition file (part of polyglossia v2.3 -- 2024/09/23)
%
\ProvidesFile{gloss-zh-TW.ldf}[polyglossia: module for zh-TW (Chinese)]
% We provide this as a bcp47-compliant alias
-\xpg@load@master@language{chinese}
+\InheritGlossFile{chinese}
\endinput
diff --git a/Master/texmf-dist/tex/latex/polyglossia/hebrewcal.sty b/Master/texmf-dist/tex/latex/polyglossia/hebrewcal.sty
index c949624724e..679d2bfe6dd 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/hebrewcal.sty
+++ b/Master/texmf-dist/tex/latex/polyglossia/hebrewcal.sty
@@ -73,7 +73,7 @@
\ifnum#1<5000
\Hebrewnumeral{#1}%
\else
- \ifnum#1<6000 % current millenium, print without thousands
+ \ifnum#1<6000 % current millennium, print without thousands
\@tempcnta=#1\relax
\if@xpg@hebrew@fullyear\else\advance\@tempcnta by -5000\fi
\Hebrewnumeral{\@tempcnta}%
diff --git a/Master/texmf-dist/tex/latex/polyglossia/hijrical.sty b/Master/texmf-dist/tex/latex/polyglossia/hijrical.sty
index 79da8d0020b..2d396f5f71c 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/hijrical.sty
+++ b/Master/texmf-dist/tex/latex/polyglossia/hijrical.sty
@@ -16,7 +16,7 @@ l3calc. Please update expl3!
\@ifundefined{@Remainder}{\input{cal-util.def}}{}
%% The following functions are straightforward implementation
-%% of Reingold & Dershowitz, Calendrical Calculations, The Millenium Edition
+%% of Reingold & Dershowitz, Calendrical Calculations, The Millennium Edition
%%
\def\@FixedFromHijri#1#2#3#4{% year,month,day,counter
diff --git a/Master/texmf-dist/tex/latex/polyglossia/polyglossia-korean.lua b/Master/texmf-dist/tex/latex/polyglossia/polyglossia-cjk-spacing.lua
index 59ec736b49d..4c1ba185455 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/polyglossia-korean.lua
+++ b/Master/texmf-dist/tex/latex/polyglossia/polyglossia-cjk-spacing.lua
@@ -1,6 +1,6 @@
--
--- polyglossia-korean.lua
--- part of polyglossia v2.1 -- 2024/03/07
+-- polyglossia-cjk-spacing.lua
+-- part of polyglossia v2.3 -- 2024/09/23
--
local glyph_id = node.id"glyph"
@@ -8,13 +8,17 @@ local hbox_id = node.id"hlist"
local vbox_id = node.id"vlist"
local glue_id = node.id"glue"
local penalty_id = node.id"penalty"
-local disc_id = node.id"disc"
+local whatsit_id = node.id"whatsit"
+local math_id = node.id"math"
--
--- attr_korean: variant = plain (0), classic (1), modern (2)
+-- attr_cjk: variant = plain: 0, JP/classic: 1, KR/modern: 2, SC: 3, TC: 4
--
-local attr_korean = luatexbase.attributes["xpg@attr@korean"]
-local attr_josa = luatexbase.attributes["xpg@attr@autojosa"]
+local attr_cjk = luatexbase.attributes["xpg@attr@cjkspacing"]
+--
+-- attr_josa: ONLY For Korean. DO NOT declare \newattribute for other langs
+--
+local attr_josa = luatexbase.attributes["xpg@attr@autojosa"]
--
-- characters after which linebreak is not allowed
@@ -63,9 +67,9 @@ local nobr_after = {
-- characters before which linebreak is not allowed
-- (currently, not much differences among the followings)
-- 1: normal chars
--- 2: hangul jamo vowels and trailing consonants
+-- 2: hangul jamo vowels and trailing consonants plus combinings
-- 3: kana small letters
--- 0: dashes (supress visible spacing)
+-- 0: dashes (suppress visible spacing after this char)
--
local nobr_before = setmetatable({
[0x21] = 1, -- ! EXCLAMATION MARK
@@ -76,7 +80,7 @@ local nobr_before = setmetatable({
[0x2D] = 0, -- - HYPHEN-MINUS
[0x2E] = 1, -- . FULL STOP
[0x2F] = 0, -- / SOLIDUS
- [0x3A] = 0, -- : COLON
+ [0x3A] = 1, -- : COLON
[0x3B] = 1, -- ; SEMICOLON
[0x3E] = 1, -- > GREATER-THAN SIGN
[0x3F] = 1, -- ? QUESTION MARK
@@ -88,11 +92,11 @@ local nobr_before = setmetatable({
[0xBB] = 1, -- » RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
[0x2013] = 0, -- – EN DASH
[0x2014] = 0, -- — EM DASH
- [0x2015] = 1, -- ― HORIZONTAL BAR
+ [0x2015] = 0, -- ― HORIZONTAL BAR
[0x2019] = 1, -- ’ RIGHT SINGLE QUOTATION MARK
[0x201D] = 1, -- ” RIGHT DOUBLE QUOTATION MARK
- [0x2025] = 1, -- ‥ TWO DOT LEADER
- [0x2026] = 1, -- … HORIZONTAL ELLIPSIS
+ [0x2025] = 0, -- ‥ TWO DOT LEADER
+ [0x2026] = 0, -- … HORIZONTAL ELLIPSIS
[0x232A] = 1, -- 〉 RIGHT-POINTING ANGLE BRACKET
[0x3001] = 1, -- 、 IDEOGRAPHIC COMMA
[0x3002] = 1, -- 。 IDEOGRAPHIC FULL STOP
@@ -124,10 +128,10 @@ local nobr_before = setmetatable({
[0x308E] = 3, -- ゎ HIRAGANA LETTER SMALL WA
[0x3095] = 3, -- ゕ HIRAGANA LETTER SMALL KA
[0x3096] = 3, -- ゖ HIRAGANA LETTER SMALL KE
- [0x3099] = 1, -- COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK
- [0x309A] = 1, -- COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
- [0x309B] = 1, -- ゛ KATAKANA-HIRAGANA VOICED SOUND MARK
- [0x309C] = 1, -- ゜ KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
+ [0x3099] = 2, -- COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK
+ [0x309A] = 2, -- COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
+ [0x309B] = 2, -- ゛ KATAKANA-HIRAGANA VOICED SOUND MARK
+ [0x309C] = 2, -- ゜ KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
[0x309D] = 1, -- ゝ HIRAGANA ITERATION MARK
[0x309E] = 1, -- ゞ HIRAGANA VOICED ITERATION MARK
[0x30A0] = 1, -- ゠ KATAKANA-HIRAGANA DOUBLE HYPHEN
@@ -147,9 +151,9 @@ local nobr_before = setmetatable({
[0x30FC] = 1, -- ー KATAKANA-HIRAGANA PROLONGED SOUND MARK
[0x30FD] = 1, -- ヽ KATAKANA ITERATION MARK
[0x30FE] = 1, -- ヾ KATAKANA VOICED ITERATION MARK
- [0xFE30] = 1, -- ︰ PRESENTATION FORM FOR VERTICAL TWO DOT LEADER
- [0xFE31] = 1, -- ︱ PRESENTATION FORM FOR VERTICAL EM DASH
- [0xFE32] = 1, -- ︲ PRESENTATION FORM FOR VERTICAL EN DASH
+ [0xFE30] = 0, -- ︰ PRESENTATION FORM FOR VERTICAL TWO DOT LEADER
+ [0xFE31] = 0, -- ︱ PRESENTATION FORM FOR VERTICAL EM DASH
+ [0xFE32] = 0, -- ︲ PRESENTATION FORM FOR VERTICAL EN DASH
[0xFE36] = 1, -- ︶ PRESENTATION FORM FOR VERTICAL RIGHT PARENTHESIS
[0xFE38] = 1, -- ︸ PRESENTATION FORM FOR VERTICAL RIGHT CURLY BRACKET
[0xFE3A] = 1, -- ︺ PRESENTATION FORM FOR VERTICAL RIGHT TORTOISE SHELL BRACKET
@@ -176,18 +180,18 @@ local nobr_before = setmetatable({
[0xFF63] = 1, -- 」 HALFWIDTH RIGHT CORNER BRACKET
[0xFF64] = 1, -- 、 HALFWIDTH IDEOGRAPHIC COMMA
[0xFF65] = 1, -- ・ HALFWIDTH KATAKANA MIDDLE DOT
- [0xFF9E] = 1, -- ゙ HALFWIDTH KATAKANA VOICED SOUND MARK
- [0xFF9F] = 1, -- ゚ HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK
+ [0xFF9E] = 2, -- ゙ HALFWIDTH KATAKANA VOICED SOUND MARK
+ [0xFF9F] = 2, -- ゚ HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK
}, { __index = function(_,c)
if c >= 0x1160 and c <= 0x11FF then return 2 end
if c >= 0xD7B0 and c <= 0xD7FF then return 2 end
- if c >= 0x302A and c <= 0x302F then return 1 end
+ if c >= 0x302A and c <= 0x302F then return 2 end -- tone marks
if c >= 0x31F0 and c <= 0x31FF then return 3 end
if c >= 0xFF67 and c <= 0xFF70 then return 3 end
- if c >= 0xFE00 and c <= 0xFE0F then return 1 end
+ if c >= 0xFE00 and c <= 0xFE0F then return 2 end -- variation selectors
if c >= 0xFE10 and c <= 0xFE19 and not (c == 0xFE17) then return 1 end
if c >= 0xFE50 and c <= 0xFE58 then return 1 end
- if c >= 0xE0100 and c <= 0xE01EF then return 1 end
+ if c >= 0xE0100 and c <= 0xE01EF then return 2 end -- variation selecters
end
})
@@ -205,6 +209,7 @@ local function is_cjk (c)
or c >= 0xFF00 and c <= 0xFFEF
or c >= 0x1F100 and c <= 0x1F2FF
or c >= 0x20000 and c <= 0x2FA1F
+ or c >= 0x30000 and c <= 0x323AF
or nobr_after[c] and c > 0x2014
or nobr_before[c] and c > 0x2014
end
@@ -244,8 +249,28 @@ local charclass = setmetatable({
}, { __index = function() return 0 end })
--
+-- get character class
+-- var : variant = plain, JP/classic, KR/modern, SC, TC
+-- c : codepoint
+--
+local function get_charclass (var, c)
+ if var < 3 then
+ return charclass[c]
+ elseif var == 3 then
+ -- SC : these are left aligned
+ return (c == 0xFF01 or c == 0xFF1F) and 4 -- FULLWIDTH EXCLAMATION/QUESTION MARK
+ or (c == 0xFF1A or c == 0xFF1B) and 2 -- FULLWIDTH COLON/SEMICOLON
+ or charclass[c]
+ end
+ -- TC : these are center aligned
+ return (c == 0x3001 or c == 0xFF0C) and 3 -- IDEOGRAPHIC/FULLWIDTH COMMA
+ or (c == 0x3002 or c == 0xFF0E) and 3 -- IDEOGRAPHIC/FULLWIDTH FULL STOP -- 5 ?
+ or charclass[c]
+end
+
+--
-- table for spacing between char classes
--- 1 stands for 0.5*fontsize when variant=classic
+-- 1 stands for 0.5*fontsize when variant = JP/classic or SC or TC
--
local intercharclass = { [0] =
{ [0] = nil, {1,1}, nil, {.5,.5} },
@@ -277,7 +302,7 @@ end
--
-- return 0.5*fontsize of given fontid
--- space: true if variant=modern; then 0.5*interword_space
+-- space: true if variant=KR/modern; then 0.5*interword_space
--
local function get_font_size (fid, space)
local size = font.getparameters(fid)
@@ -291,7 +316,7 @@ end
--
-- charclass 1 thru 4 will be packed in \hbox to 0.5em{\hss? curr \hss?}
--- when variant=classic/modern
+-- when variant ~= plain
--
local function glyph_to_box (head, curr, class)
local g, h = curr
@@ -320,7 +345,7 @@ end
--
-- insert spacing defined as charclass[a][b] between a and b
-- f: fontid
--- var: variant = plain, classic, modern
+-- var: variant = plain, JP/classic, KR/modern, SC, TC
-- cc: charclass of current char
-- nc: charclass of next char
-- nobr: linebreak is not allowed
@@ -339,12 +364,16 @@ end
--
-- insert inter-character spacing in other normal cases
--- f: fontid
--- var: variant = plain, classic, modern
--- x: true between cjk and non-cjk (a little more spacing)
+-- f: fontid
+-- var: variant = plain, JP/classic, KR/modern, SC, TC
+-- nobr: no linebreak
+-- x: true between cjk and non-cjk (a little more spacing)
--
-local function insert_penalty_glue (head, curr, f, var, x)
- if var ~= 1 then
+local function insert_penalty_glue (head, curr, f, var, nobr, x)
+ if nobr then
+ local penalty = get_new_penalty(10000)
+ head, curr = node.insert_after(head, curr, penalty)
+ elseif var == 0 or var == 2 then
local penalty = get_new_penalty(50)
head, curr = node.insert_after(head, curr, penalty)
end
@@ -360,53 +389,66 @@ end
--
-- main process for linebreak and inter-character spacing
--- lb: true if pre_linebreak_filter
--
-local function korean_break (head, lb)
+local function cjk_break (head)
local curr = head
while curr do
- if curr.id == glyph_id then
- local var = node.has_attribute(curr, attr_korean)
+ if attr_cjk and (curr.id == glyph_id or curr.id == math_id and curr.subtype == 1) then
+ local var = node.has_attribute(curr, attr_cjk)
if var then
- local c, f = curr.char or 0, curr.font or 0
- local cc, cjkc = charclass[c], is_cjk(c)
+ local c, f = curr.char or 0, curr.font
+ local cc, cjkc = get_charclass(var, c), is_cjk(c)
-- compress cjk punctuations when charclass is 1 thru 4
if var > 0 and cc > 0 and cc < 5 then
head, curr = glyph_to_box(head, curr, cc)
end
- local next = curr.next
- if next and next.id == glyph_id then
+ local next = node.getnext(curr)
+ while next and next.id == whatsit_id do -- skip whatsit nodes
+ curr, next = next, node.getnext(next)
+ end
+
+ if next and node.has_attribute(next, attr_cjk)
+ and (next.id == glyph_id or next.id == math_id and next.subtype == 0) then
+
local n = next.char or 0
- local nc = charclass[n]
+ f = f or next.font or 0 -- in case of curr == math_off
+
+ -- skip combining. or dash+dash case to suppress stretching
+ if nobr_before[n] == 2 or (nobr_before[c] == 0 and nobr_before[n] == 0) then
+ goto skip_combining
+ end
+
+ local nc = get_charclass(var, n)
local nobr = nobr_before[n] or nobr_after[c]
-- insert spacing as of intercharclass
if var > 0 and intercharclass[cc][nc] then
head, curr = insert_cjk_penalty_glue(head, curr, f, var, cc, nc, nobr)
- -- or insert spacing when linebreak is allowed
- elseif not nobr then
+ else
local cjkn = is_cjk(n)
-- if curr or next is cjk char
if cjkc or cjkn then
- -- if between cjk and non-cjk
- if var > 0 and not (cjkc and cjkn) and nobr_before[c] ~= 0 then
- head, curr = insert_penalty_glue(head, curr, f, var, true)
+ -- plain variant / cjk+cjk / nobr cjk+noncjk / after dash
+ -- : insert a 0pt glue
+ if var == 0 or (cjkc and cjkn) or nobr or nobr_before[c] == 0 then
+ head, curr = insert_penalty_glue(head, curr, f, var, nobr)
- -- or under pre_linebreak_filter
- elseif lb then
- head, curr = insert_penalty_glue(head, curr, f, var)
+ -- other cases: insert a small glue
+ else
+ head, curr = insert_penalty_glue(head, curr, f, var, nobr, true)
end
end
end
end
end
end
- curr = curr.next
+ ::skip_combining::
+ curr = node.getnext(curr)
end
return head
end
@@ -420,7 +462,7 @@ end
local function reorder_tm (head)
local curr, tone = node.slide(head)
while curr do
- if curr.id == glyph_id and node.has_attribute(curr, attr_korean) then
+ if curr.id == glyph_id and node.has_attribute(curr, attr_cjk) then
local f = font.getfont(curr.font) or font.fonts[curr.font]
if f and f.hb then -- harfbuzz do the right thing
tone = nil
@@ -436,7 +478,7 @@ local function reorder_tm (head)
end
end
end
- curr = curr.prev
+ curr = node.getprev(curr)
end
return head
end
@@ -523,7 +565,7 @@ local function get_prev_char (p)
local pc = get_prev_char(node.slide(p.head))
if pc then return pc end
end
- p = p.prev
+ p = node.getprev(p)
end
end
@@ -538,10 +580,10 @@ local function auto_josa (head)
if josa then
local cc = curr.char or 0
if josa == 0 then
- josa = josa_code[get_prev_char(curr.prev) or 0x30]
+ josa = josa_code[get_prev_char(node.getprev(curr)) or 0x30]
end
if cc == 0xC774 then
- local n = curr.next
+ local n = node.getnext(curr)
if n and n.char and n.char >= 0xAC00 and n.char <= 0xD7A3 then
else
cc = 0xAC00
@@ -560,7 +602,7 @@ local function auto_josa (head)
node.unset_attribute(curr, attr_josa)
end
end
- curr = curr.next
+ curr = node.getnext(curr)
end
for _,v in ipairs(tofree) do node.free(v) end
return head
@@ -571,39 +613,13 @@ end
-- As char value of glyphs can be changed by opentype GSUB process,
-- we have to occupy the first position among callback functions.
--
-local prepend_to_callback
-if luatexbase.base_add_to_callback then
- prepend_to_callback = function(name, func, desc)
- luatexbase.add_to_callback(name, func, desc, 1)
- end
-else
- prepend_to_callback = function(name, func, desc)
- local t = { {func, desc} }
- for _,v in ipairs(luatexbase.callback_descriptions(name)) do
- table.insert(t, {luatexbase.remove_from_callback(name, v)})
- end
- for _,v in ipairs(t) do
- luatexbase.add_to_callback(name, v[1], v[2])
- end
- end
-end
-
-prepend_to_callback ("pre_linebreak_filter",
- function(head)
- head = auto_josa(head)
- head = korean_break(head, true)
- head = reorder_tm(head)
- return head
- end,
- "polyglossia.lang_korean")
-
-prepend_to_callback ("hpack_filter",
- function(head)
- head = auto_josa(head)
- head = korean_break(head)
- head = reorder_tm(head)
- return head
- end,
- "polyglossia.lang_korean")
+luatexbase.add_to_callback( "pre_shaping_filter",
+function(head)
+ if attr_josa then head = auto_josa(head) end
+ head = cjk_break(head)
+ if attr_josa then head = reorder_tm(head) end
+ return head
+end,
+"polyglossia.lang_cjk_spacing")
-- vim:ft=lua:tw=0:sw=4:ts=4:expandtab
diff --git a/Master/texmf-dist/tex/latex/polyglossia/polyglossia-french.lua b/Master/texmf-dist/tex/latex/polyglossia/polyglossia-french.lua
index c2a1a27bebe..ffb6327b2f4 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/polyglossia-french.lua
+++ b/Master/texmf-dist/tex/latex/polyglossia/polyglossia-french.lua
@@ -1,6 +1,6 @@
--
-- polyglossia-punct.lua
--- part of polyglossia v2.1 -- 2024/03/07
+-- part of polyglossia v2.3 -- 2024/09/23
--
require('polyglossia-punct')
diff --git a/Master/texmf-dist/tex/latex/polyglossia/polyglossia-latin.lua b/Master/texmf-dist/tex/latex/polyglossia/polyglossia-latin.lua
index 982f6ba8d4f..46838b40a06 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/polyglossia-latin.lua
+++ b/Master/texmf-dist/tex/latex/polyglossia/polyglossia-latin.lua
@@ -1,6 +1,6 @@
--
-- polyglossia-latin.lua
--- part of polyglossia v2.1 -- 2024/03/07
+-- part of polyglossia v2.3 -- 2024/09/23
--
require('polyglossia-punct')
diff --git a/Master/texmf-dist/tex/latex/polyglossia/polyglossia-punct.lua b/Master/texmf-dist/tex/latex/polyglossia/polyglossia-punct.lua
index 99e538b1613..a19b2152b62 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/polyglossia-punct.lua
+++ b/Master/texmf-dist/tex/latex/polyglossia/polyglossia-punct.lua
@@ -1,13 +1,12 @@
--
-- polyglossia-punct.lua
--- part of polyglossia v2.1 -- 2024/03/07
+-- part of polyglossia v2.3 -- 2024/09/23
--
require('polyglossia') -- just in case...
local add_to_callback = luatexbase.add_to_callback
-local remove_from_callback = luatexbase.remove_from_callback
-local priority_in_callback = luatexbase.priority_in_callback
+local declare_callback_rule = luatexbase.declare_callback_rule
local new_attribute = luatexbase.new_attribute
local node = node
@@ -331,13 +330,16 @@ local function activate(lang)
-- important to be able to intermix languages with different spacings
-- in one paragraph.
tex.setattribute(punct_attr, id)
- for _, callback_name in ipairs{ "pre_linebreak_filter", "hpack_filter" } do
- if not priority_in_callback(callback_name, "polyglossia-punct.process") then
- add_to_callback(callback_name, process, "polyglossia-punct.process", 1)
- end
- end
end
+add_to_callback("pre_linebreak_filter",process,"polyglossia-punct.process")
+add_to_callback("hpack_filter",process,"polyglossia-punct.process")
+declare_callback_rule("pre_linebreak_filter",
+ "polyglossia-punct.process", "before", "luaotfload.node_processor")
+declare_callback_rule("hpack_filter",
+ "polyglossia-punct.process", "before", "luaotfload.node_processor")
+
+
local function deactivate()
tex.setattribute(punct_attr, -0x7FFFFFFF) -- this value means "unset"
-- Though it would make compilation slightly faster, it is not possible to
diff --git a/Master/texmf-dist/tex/latex/polyglossia/polyglossia-sanskrit.lua b/Master/texmf-dist/tex/latex/polyglossia/polyglossia-sanskrit.lua
index 61b891ac283..d21386e5fba 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/polyglossia-sanskrit.lua
+++ b/Master/texmf-dist/tex/latex/polyglossia/polyglossia-sanskrit.lua
@@ -1,6 +1,6 @@
--
-- polyglossia-sanskrit.lua
--- part of polyglossia v2.1 -- 2024/03/07
+-- part of polyglossia v2.3 -- 2024/09/23
--
require('polyglossia-punct')
diff --git a/Master/texmf-dist/tex/latex/polyglossia/polyglossia-tibt.lua b/Master/texmf-dist/tex/latex/polyglossia/polyglossia-tibt.lua
index 8247e2deb33..aa3a9e430e3 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/polyglossia-tibt.lua
+++ b/Master/texmf-dist/tex/latex/polyglossia/polyglossia-tibt.lua
@@ -1,30 +1,28 @@
--
-- polyglossia-tibt.lua
--- part of polyglossia v2.1 -- 2024/03/07
+-- part of polyglossia v2.3 -- 2024/09/23
--
require('polyglossia') -- just in case...
local add_to_callback = luatexbase.add_to_callback
local remove_from_callback = luatexbase.remove_from_callback
+local declare_callback_rule = luatexbase.declare_callback_rule
local priority_in_callback = luatexbase.priority_in_callback
local next, type = next, type
-
-local nodes, fonts, node = nodes, fonts, node
-
-local nodecodes = nodes.nodecodes --- <= preloaded node.types()
+local node = node
local insert_node_before = node.insert_before
local insert_node_after = node.insert_after
-local remove_node = nodes.remove
+local remove_node = node.remove
local copy_node = node.copy
local has_attribute = node.has_attribute
local end_of_math = node.end_of_math
if not end_of_math then -- luatex < .76
local traverse_nodes = node.traverse_id
- local math_code = nodecodes.math
+ local math_code = node.id('math_char')
local end_of_math = function (n)
for n in traverse_nodes(math_code, n.next) do
return n
@@ -32,10 +30,10 @@ if not end_of_math then -- luatex < .76
end
end
--- node types as of April 2013
-local glyph_code = nodecodes.glyph
-local penalty_code = nodecodes.penalty
-local kern_code = nodecodes.kern
+-- node types as of April 2024
+local glyph_code = node.id('glyph')
+local penalty_code = node.id('penalty')
+local kern_code = node.id('kern')
-- we make a new node, so that we can copy it later on
local penalty_node = node.new(penalty_code)
@@ -66,7 +64,6 @@ local function process(head)
end
end
elseif id == math_code then
- -- warning: this is a feature of luatex > 0.76
start = end_of_math(start) -- weird, can return nil .. no math end?
end
if start then
@@ -79,15 +76,13 @@ end
local callback_name = "pre_linebreak_filter"
local function activate()
- if not priority_in_callback (callback_name, "polyglossia-tibt.process") then
- add_to_callback(callback_name, process, "polyglossia-tibt.process", 1)
- end
+ add_to_callback(callback_name, process, "polyglossia-tibt.process")
+ declare_callback_rule(callback_name,
+ "polyglossia-tibt.process", "before", "luaotfload.node_processor")
end
local function desactivate()
- if priority_in_callback (callback_name, "polyglossia-tibt.process") then
- remove_from_callback(callback_name, "polyglossia-tibt.process")
- end
+ remove_from_callback(callback_name, "polyglossia-tibt.process")
end
polyglossia.activate_tibt_eol = activate
diff --git a/Master/texmf-dist/tex/latex/polyglossia/polyglossia.lua b/Master/texmf-dist/tex/latex/polyglossia/polyglossia.lua
index c07d8d9ac49..1c7c818910d 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/polyglossia.lua
+++ b/Master/texmf-dist/tex/latex/polyglossia/polyglossia.lua
@@ -1,6 +1,6 @@
--
-- polyglossia.lua
--- part of polyglossia v2.1 -- 2024/03/07
+-- part of polyglossia v2.3 -- 2024/09/23
--
local module_name = "polyglossia"
@@ -76,7 +76,7 @@ local function newloader(langentry)
end
-- language info will be written into the .log file
- local s = { "Language data for " .. langentry }
+ local s = { }
for k, v in pairs(langdata) do
if type(v) == 'table' then -- for 'synonyms'
s[#s+1] = k .. "\t" .. table.concat(v,',')
@@ -84,7 +84,10 @@ local function newloader(langentry)
s[#s+1] = k .. "\t" .. tostring(v)
end
end
- log_info(table.concat(s,"\n"))
+ local a = {}
+ for _,n in pairs(s) do table.insert(a, n) end
+ table.sort(a)
+ log_info("Language data for " .. langentry .. "\n" .. table.concat(a,"\n"))
--
-- LaTeX's \newlanguage increases language register (count19),
@@ -94,7 +97,7 @@ local function newloader(langentry)
-- this possible situation, our newloader() function will
-- unfortunately overwrite the language \lang@xyz.
--
- -- Threfore here we will compare LaTeX's \newlanguage number with
+ -- Therefore here we will compare LaTeX's \newlanguage number with
-- LuaTeX's lang.new() id and select the bigger one for our new
-- language object. Also we will update LaTeX's language register
-- by this new id, so that another possible \newlanguage should not
@@ -109,7 +112,7 @@ local function newloader(langentry)
local newlangid = math.max(langcnt, langid)
-- set language register for possible \newlanguage
tex.setcount('global', lang_register, newlangid)
- -- get new lang object if needeed
+ -- get new lang object if needed
if langid ~= newlangid then
langobject = lang.new(newlangid)
end
diff --git a/Master/texmf-dist/tex/latex/polyglossia/polyglossia.sty b/Master/texmf-dist/tex/latex/polyglossia/polyglossia.sty
index 20f6538d448..0e8b8f1c302 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/polyglossia.sty
+++ b/Master/texmf-dist/tex/latex/polyglossia/polyglossia.sty
@@ -1,32 +1,27 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesExplPackage
- {polyglossia} {2024/03/07} {v2.1}
+ {polyglossia} {2024/09/23} {v2.3}
{Modern multilingual typesetting with XeLaTeX and LuaLaTeX}
+% TODO Handle remaining uses in the gloss files (\patchcmd)
+% and remove package call afterwards
\RequirePackage{etoolbox}
-\RequirePackage{xkeyval}[2008/08/13]
% Will raise error if used with anything else than XeTeX or LuaTeX
\RequirePackage{fontspec}[2010/06/08]% v2.0
\RequirePackage{iftex}
\prg_generate_conditional_variant:Nnn \clist_if_in:Nn {Ne} {TF, T, F} % check if needed
-% correct a bug in tracklang
-\AddToHook{package/tracklang/after}{%
- \IfPackageAtLeastTF{tracklang}{2019/08/30}
- {}
- {\cs_gset_eq:NN \AddTrackedLangage \AddTrackedLanguage}
-}
-
%% The following is for compatibility with Babel-aware package:
% \languageshorthands is provided by babelsh.def, which is
% only loaded by some glosses, but some classes presuppose
% it is there generally. So let's provide a stub:
\ProvideDocumentCommand \languageshorthands { m } {}
% These have to be provided at the end of the preamble
-\AddToHook{begindocument/before}{
- \cs_gset_eq:NN \bbl@set@language \xpg@set@language@aux % for biblatex
- \cs_gset_eq:NN \bbl@main@language \xpg@main@language % for biblatex
+\hook_gput_code:nnn {begindocument/before} {.}
+{
+ \cs_gset_eq:NN \bbl@set@language \xpg_set_language_aux:nn % for biblatex
+ \cs_gset_eq:NN \bbl@main@language \xpg_main_language_tl % for biblatex
\ProvideDocumentCommand \texorpdfstring { m m } { #1 } % dummy command if hyperref is not loaded
}
@@ -35,16 +30,31 @@
%% \l@nohyphenation is defined in polyglossia.lua
\sys_if_engine_luatex:TF
{
- \RequirePackage{luatexbase} % already included by fontspec, but needed here
- \RequireLuaModule{polyglossia}
+ \lua_load_module:n{polyglossia}
+ \prg_new_conditional:Nnn \xpg_if_script:n { TF, T, F }
+ {
+ \fontspec_if_fontspec_font:TF
+ {
+ \lua_now:e
+ {
+ if~ luaotfload.aux.provides_script(font.current(), '#1')~ then~
+ token.put_next(token.create('prg_return_true:'))~
+ else~
+ token.put_next(token.create('prg_return_false:'))~
+ end
+ }
+ }
+ { \prg_return_false: }
+ }
}{
- \cs_if_free:cT { l@nohyphenation }
- { \chardef\l@nohyphenation=255 }
+ \cs_if_free:cT { l@nohyphenation }
+ { \chardef\l@nohyphenation=255 }
+ \prg_set_eq_conditional:NNn \xpg_if_script:n \fontspec_if_script:n { TF, T, F }
}
-% Which version of XeTeX do we use? What is the boudary class? 4095 or 255
+% Which version of XeTeX do we use? What is the boundary class? 4095 or 255
\cs_if_exist:cTF { e@alloc@intercharclass@top }
- { \let\xpg@boundaryclass=\e@alloc@intercharclass@top }
+ { \cs_gset_eq:NN \xpg@boundaryclass \e@alloc@intercharclass@top }
{ \chardef\xpg@boundaryclass=\@cclv }
% Useful for getting list of loaded languages and variants. Like babel's bbl@loaded
@@ -71,135 +81,207 @@
}
%% Internal hooks
-% select language hook
-\cs_new_nopar:Nn \__xpg_at_begin_document_selectlanguage: {}
-% \disablehyphenation hook
-\cs_new_nopar:Nn \__xpg_at_begin_document_hyphenation: {}
+% select defaultlanguage hook. Since we only want the
+% last definition of this, we do not use a \hook
+\cs_new_nopar:Nn \__xpg_selectdefaultlanguage: {}
+% things to be done after the above
+\hook_new:n { polyglossia / selectdefaultlanguage / after }
-% hook to be executed at begin of document
-\cs_new_nopar:Nn \__xpg_at_begin_document:
+% things to be executed at begin of document
+\hook_gput_code:nnn {begindocument} {.}
{
% save various command
- \let\latin@alph\@alph % TODO rename when we have the C locale
- \let\latin@Alph\@Alph % TODO rename when we have the C locale
+ \cs_gset_eq:cc{latin@alph}{@alph}% TODO rename when we have the C locale
+ \cs_gset_eq:cc{latin@Alph}{@Alph}% TODO rename when we have the C locale
% push to C language gloss
- \let\polyglossia@Clang@@arabic\@arabic
- \let\polyglossia@Clang@arabic\arabic
+ \cs_gset_eq:cc{xpg_Clang_arabic}{@arabic}
\xpg_initial_setup:
% apply \familydefault changes
- \xpg@set@familydefault
-}
-
-\AddToHook{begindocument}{
- \__xpg_at_begin_document:
+ \xpg_set_familydefault:
}
% The following needs to go after any \AtBeginDocument (also of packages
% loaded after \set[main|other]language
-% Track whether the main language has been set
-\bool_new:N \g_xpg_main_lang_set_bool
-\AddToHook{begindocument/end}{
+\hook_gput_code:nnn {begindocument/end} {.}
+{
% now we have the C locale definition: select the language
- \__xpg_at_begin_document_selectlanguage:
- \bool_gset_true:N \g_xpg_main_lang_set_bool
- % If hyphenation disabling has been requested in preamble, do it now
- \__xpg_at_begin_document_hyphenation:
+ \__xpg_selectdefaultlanguage:
+ % Do the things that need to be done after default language selection
+ \hook_use_once:n { polyglossia / selectdefaultlanguage / after }
}
-%% custom message macros
-\providecommand*{\xpg@error}[1]{
- \PackageError{polyglossia}{#1}{}
+%
+% MESSAGES
+%
+
+% message templates
+\msg_new:nnn { polyglossia } { general } { #1 }
+
+\msg_new:nnn { polyglossia } { languagenotloaded }
+{
+ The~ language~ #1~ is~ not~ loaded.~ You~ must~ load~ it~ in~ order~ to~ use~ it.
+}
+\msg_redirect_name:nnn { polyglossia } { languagenotloaded } { critical }
+
+\msg_new:nnn { polyglossia } { languagenolongerloaded }
+{
+ The~ language~ #1~ is~ no~ longer~ loaded.~ Please~ rerun~ LaTeX.
}
+\msg_redirect_name:nnn { polyglossia } { languagenolongerloaded } { warning }
-\providecommand*{\xpg@warning}[1]{
- \PackageWarning{polyglossia}{#1}
+\msg_new:nnn { polyglossia } { unknownlocalnumeral }
+{
+ Unknown~ key~ "#1"~ in~ \string\localnumeral.
}
-\providecommand*{\xpg@info}[1]{
- \PackageInfo{polyglossia}
- {#1\@gobble}
-} %% the \@gobble is to prevent displaying the line nr
+\msg_new:nnn { polyglossia } { localnumeralemptyvalue }
+{
+ Keys~ of~ \string\localnumeral~ must~ have~ a~ value.
+}
-%TODO change all instances of \xpg@nopatterns in gloss-*.ldf files
-\providecommand*{\xpg@nopatterns@fallback}[2][nohyphenation]{
- \xpg@warning{No~ hyphenation~ patterns~ were~ loaded~ for~ `#2'\MessageBreak
- I~ will~ use~ \string\language=\string\l@ #1\space instead}
- \expandafter\adddialect\csname l@#2\expandafter\endcsname\csname l@#1\endcsname\relax}
+\msg_new:nnn { polyglossia } { illvalue }
+{
+ Illegal~ value~ (#1)~ for~ #2!
+}
-\providecommand*{\xpg@nopatterns}[1]{
- \xpg@warning{No~ hyphenation~ patterns~ were~ loaded~ for~ `#1'\MessageBreak
- I~ will~ use~ \string\language=\string\l@nohyphenation\space instead}
- %%TODO? \expandafter\adddialect\csname l@#1\endcsname\l@nohyphenation\relax
- }
+\msg_new:nnn { polyglossia } { illarg }
+{
+ Invalid~ argument~ (#1)~ for~ #2!
+}
-\def\xpg@ill@value#1#2{
- \xpg@warning{Illegal~ value~ (#1)~ for~ #2}}
+\msg_new:nnn { polyglossia } { nopatterns }
+{
+ No~ hyphenation~ patterns~ were~ loaded~ for~ `#2' \iow_newline:
+ I~ will~ use~ \string\language=\string\l@ #1\space instead.
+}
-% error out if lang is not loaded
-\cs_new_nopar:Nn \xpg_error_if_lang_not_loaded:n
+\msg_new:nnn { polyglossia } { undefcmd }
{
- \seq_if_in:NeF \__xpg_langs_loaded {#1}
- {
- \xpg@error{language~ #1~ is~ not~ loaded.~ Please~ load~ it~ before~ using~ it.}
- }
+ \tl_to_str:N {#1} ~ is~ not~ defined!
}
-\msg_new:nnn { polyglossia } { languagenotloaded }
+%% custom message macros
+\cs_new_nopar:Nn \xpg_error_msg:n
{
- The~ language~ #1~ is~ not~ loaded.~ You~ should~ load~ it.
+ \exp_args:Nnne \msg_error:nnn { polyglossia } { general } { #1 }
}
-\msg_redirect_name:nnn { polyglossia } { languagenotloaded } { critical }
-\msg_new:nnn { polyglossia } { languagenolongerloaded }
+\cs_new_nopar:Nn \xpg_warning_msg:n
{
- The~ language~ #1~ is~ no~ longer~ loaded.~ Please~ rerun~ LaTeX.
+ \exp_args:Nnne \msg_warning:nnn { polyglossia } { general } { #1 }
}
-\msg_redirect_name:nnn { polyglossia } { languagenolongerloaded } { warning }
-\msg_new:nnn { polyglossia } { unknownlocalnumeral }
+\cs_new_nopar:Nn \xpg_info_msg:n
{
- Unknown~ key~ "#1"~ in~ \string\localnumeral.
+ \exp_args:Nnne \msg_info:nnn { polyglossia } { general } { #1 }
}
-\msg_new:nnn { polyglossia } { localnumeralemptyvalue }
+\cs_new_nopar:Nn \xpg_no_patterns_msg:n
+{
+ \msg_warning:nnnn { polyglossia } { nopatterns } { nohyphenation } { #1 }
+}
+
+\cs_new_nopar:Nn \xpg_ill_value_msg:nn
+{
+ \msg_warning:nnnn { polyglossia } { illvalue } { #1 } { #2 }
+}
+
+\cs_new_nopar:Nn \xpg_ill_arg_msg:nn
{
- Keys~ of~ \string\localnumeral~ must~ have~ value.
+ \msg_error:nnnn { polyglossia } { illarg } { #1 } { #2 }
}
+% error out if lang is not loaded
+\cs_new_nopar:Nn \xpg_error_if_lang_not_loaded:n
+{
+ \seq_if_in:NeF \__xpg_langs_loaded {#1}
+ {
+ \msg_error:nnn { polyglossia } { languagenotloaded } { #1 }
+ }
+}
%% use macro if defined, else warn that it is not
\cs_new_nopar:Nn \__xpg_use_or_warn:N
{
\cs_if_exist_use:NF {#1}
{
- \xpg@warning { \tl_to_str:N {#1} ~ is~ not~ defined }
+ \msg_error:nnn { polyglossia } { undefcmd } { #1 }
}
}
\cs_generate_variant:Nn \__xpg_use_or_warn:N {c}
+% gloss message interface
+\cs_set_eq:cc { xpg@error } { xpg_error_msg:n }
+\cs_set_eq:cc { xpg@warning } { xpg_warning_msg:n }
+\cs_set_eq:cc { xpg@info } { xpg_info_msg:n }
+\cs_set_eq:cc { xpg@ill@value } { xpg_ill_value_msg:nn }
+
+
+\NewDocumentCommand \XPGNoPatternsFallback { O{ nohyphenation } m }
+{
+ \msg_warning:nnnn { polyglossia } { nopatterns } { #1 } { #2 }
+ \exp_args:Ncc \adddialect {l@#2} {l@#1}
+}
+
+\NewDocumentCommand \CheckHyphenationPatterns { m }
+{
+ \xpg_if_language_defined:nF {#1}
+ {
+ \XPGNoPatternsFallback{#1}
+ }
+}
+
+%
+% END MESSAGES
+
%% ensure directionality if bidi is loaded, else ignore
-\def\@@ensure@dir#1{\ifcsundef{@ensure@dir}{#1}{\@ensure@dir{#1}}}
-\def\@@ensure@maindir#1{\ifcsundef{@ensure@maindir}{#1}{\@ensure@maindir{#1}}}
+%%% FIXME still used?
+\cs_new_nopar:Npn \@@ensure@dir #1
+{
+ \cs_if_exist_use:c{@ensure@dir}{#1}
+}
-%% Used by the language definitions files for right-to-left languages
-\NewDocumentCommand \RequireBidi {}
+\cs_new_nopar:Npn \@@ensure@maindir #1
+{
+ \cs_if_exist_use:c{@ensure@maindir}{#1}
+}
+
+% if we are in the document preamble run T else F
+\prg_set_conditional:Nnn \xpg_if_in_preamble: {T, F, TF}
{
- \sys_if_engine_luatex:TF
- {\ifx\@onlypreamble\@notprerr\else\RequirePackage{luabidi}\fi}
- {\ifx\@onlypreamble\@notprerr\else\RequirePackage{bidi}\fi}
+ \cs_if_eq:NNTF { \@onlypreamble } { \@notprerr }
+ {
+ \prg_return_false:
+ }
+ {
+ \prg_return_true:
+ }
}
-% if #1 is LR run #2 else #3
+%% Used by the language definitions files for right-to-left languages
+\DeclareDocumentCommand \RequireBidi {}
+ {
+ \xpg_if_in_preamble:T
+ {
+ \sys_if_engine_luatex:TF
+ { \RequirePackage{luabidi} }
+ { \RequirePackage{bidi} }
+ }
+ \DeclareDocumentCommand \RequireBidi {} {}
+ }
+
+% if #1 is LR run T else F
\prg_set_conditional:Nnn \__xpg_if_LR_str:n {p, T, F, TF}
{
- \str_case_e:nnF{#1}{
+ \str_case_e:nnF{#1}
+ {
{LR}{\prg_return_true:}
{RL}{\prg_return_false:}
}
{
- \xpg@error{Unknown~ direction~#1}
+ \xpg_error_msg:n {Unknown~ direction~#1}
\prg_return_false:
}
}
@@ -212,17 +294,18 @@
{
\__xpg_if_LR_str:nF {#1}
{
- \xpg@error{right-to-left,~ but~ (lua)bidi~ package~ was~ not~ loaded!}
+ \xpg_error_msg:n {right-to-left,~ but~ (lua)bidi~ package~ was~ not~ loaded!}
}
}
\cs_new_nopar:Nn \__xpg_set_text_direction:n
{
\__xpg_if_LR_str:nF {#1}
{
- \xpg@error{right-to-left,~ but~ (lua)bidi~ package~ was~ not~ loaded!}
+ \xpg_error_msg:n {right-to-left,~ but~ (lua)bidi~ package~ was~ not~ loaded!}
}
}
-\AddToHook{package/bidi/after}{
+\hook_gput_code:nnn {package/bidi/after} {.}
+{
\cs_gset_nopar:Nn \__xpg_set_par_direction:n
{
\__xpg_if_LR_str:nTF{#1}
@@ -244,7 +327,8 @@
}
}
}
-\AddToHook{package/luabidi/after}{
+\hook_gput_code:nnn {package/luabidi/after} {.}
+{
\cs_gset_nopar:Nn \__xpg_set_par_direction:n
{
\__xpg_if_LR_str:nTF{#1}
@@ -273,13 +357,21 @@
{ \cs_new_nopar:Nn \__xpg_setRTLmain: { \@RTLmaintrue\setnonlatin } }
%% compatibility with babel
-\let\addto\gappto % gappto is defined in etoolbox
+\cs_set:Npn \addto #1 #2
+{
+ \cs_if_exist:NF { #1 }
+ { \cs_new:Npn { #1 } {} }
+ \tl_gput_right:Nn { #1 } { #2 }
+}
-%% NEW EXPERIMENTAL SETUP INTERFACE FOR GLOSS FILES
+%% SETUP INTERFACE FOR GLOSS FILES
%% options currently available:
%% language : the name of the language (as understood by fontspec)
%% hyphennames : the different hyphenation patterns to try (comma separated list)
-%%% TODO: if pattern is prefixed by !, then it should be loaded as a fallback, with \xpg@nopatterns@fallback - i.e. with a warning: e.g. sanskrit for hindi, or catalan for asturian. – Also for languages with variants! (English and German, etc.)
+%%% TODO: if pattern is prefixed by !, then it should be loaded as a fallback,
+%%%% with \CheckHyphenationPatterns - i.e. with a warning: e.g. sanskrit for hindi,
+%%%% or catalan for asturian. – Also for languages with variants!
+%%%% (English and German, etc.)
%% script : the name of the script (as understood by fontspec) – default is Latin
%% scripttag : the OpenType tag for the script
%% langtag : the OpenType tag for the language
@@ -287,19 +379,20 @@
%% frenchspacing : boolean
%% indentfirst : boolean
%% fontsetup : boolean
-%% TODO: nouppercase : boolean (for scripts like Arabic, Devanagari, etc which have no concept of uppercase/lowercase)
+%% TODO: nouppercase : boolean (for scripts like Arabic, Devanagari, etc which have
+%% no concept of uppercase/lowercase)
%% TODO: localalph = {<alph_csname>,<Alph_csname>}
%% TODO: localnumeral = <csname>
%% or even better localdigits = {0123456789} for fully automatic setup
-\newcommand*\PolyglossiaSetup[2]{
+\NewDocumentCommand \PolyglossiaSetup { m m }
+{
\__xpg_keys_define_lang:n{#1}
\keys_set:nn { polyglossia / #1 } { #2 }
\__xpg_setup_hyphen:n {#1}
%define booleans etoolbox style and set defaults
%% TODO ? \providetoggle{#1@setup@done}%
- % we initialize these so that we can use \gappto below
- \csgdef{init@extras@#1}{}
- \csgdef{init@noextras@#1}{} % we don't use this yet: remove?
+ % we initialize this so that we can append below
+ \cs_gset:cpn {init@extras@#1} {}
% here we do the fontsetup:
\__xpg_auto_setupfont:n { #1 }
%% TODO? \toggletrue{#1@setup@done}
@@ -318,35 +411,41 @@
\clist_map_inline:nn { #1 } { \keys_set:nn { polyglossia / ##1 } { #2 } }
}
-
+\bool_new:N \l__xpg_have_hyphen_bool
% setup hyphennames from a str list of hyphen
\cs_new:Nn \__xpg_setup_hyphen:n
{
- \clist_set:Ne{\l_tmpa_clist}{\prop_item:Nn \g_xpg_langsetup_prop {#1 / hyphennames}}
- \providebool{havehyphen}
- \boolfalse{havehyphen}
+ \clist_set:Ne{\l_tmpa_clist}{\prop_item:Nn \l_xpg_langsetup_prop {#1 / hyphennames}}
+ \bool_set_false:N \l__xpg_have_hyphen_bool
% for each hyphen in the set until we find one that works
- \clist_map_inline:Nn \l_tmpa_clist {
- \ifbool{havehyphen}{}{
+ \clist_map_inline:Nn \l_tmpa_clist
+ {
+ \bool_if:NF \l__xpg_have_hyphen_bool
+ {
% check if language hyphenname is defined
- \__xpg_check_if_exist_l@:nF{#1}{
+ \__xpg_pattern_check_if_exists:nF{#1}
+ {
% if not, first consider nohyphenation
\str_if_eq:nnTF{##1}{nohyphenation}
{
\cs_gset_eq:cc{l@#1}{l@##1}
- \global\booltrue{havehyphen}
- }{
+ \bool_gset_true:N \l__xpg_have_hyphen_bool
+ }
+ {
% then test if hyphenation is defined
- \xpg@ifdefined{##1}{
+ \xpg_if_language_defined:nT {##1}
+ {
% test if language hyphenation is nohyphenation
- \cs_if_eq:cNF{l@#1}{\l@nohyphenation}{\global\booltrue{havehyphen}}{%
+ \cs_if_eq:cNTF{l@#1}{\l@nohyphenation}
+ { \bool_gset_true:N \l__xpg_have_hyphen_bool }
+ {
% if false define language to hyphenation if it is not equal...
\str_if_eq:nnF{#1}{##1}{\cs_gset_eq:cc{l@#1}{l@##1}}
% ...and load
- \xpg@set@hyphenation@patterns{##1}
- \global\booltrue{havehyphen}
- }
- }{}
+ \xpg_set_hyphenation_patterns:n {##1}
+ \bool_gset_true:N \l__xpg_have_hyphen_bool
+ }
+ }
}
}
}
@@ -354,19 +453,17 @@
% if l@#1 does not yet exist,
% we assign it to nohyphenation
% we do this here in case and if the hyphennames key was omitted
- \ifbool{havehyphen}{}{
- \xpg@ifdefined{#1}{}
- {
- \xpg@nopatterns{#1}
- \expandafter\adddialect\csname l@#1\endcsname\l@nohyphenation\relax
- }
+ \bool_if:NF \l__xpg_have_hyphen_bool
+ {
+ \CheckHyphenationPatterns{#1}
}
- \csdef{#1@language}{
- \polyglossia@setup@language@patterns{#1}
+ \cs_gset:cpn {#1@language}
+ {
+ \SetupPolyglossiaLangPatterns{#1}
}
% setup hyphenmins
\clist_set:Ne \l_tmpa_clist
- { \prop_item:Nn \g_xpg_langsetup_prop {#1 / hyphenmins} }
+ { \prop_item:Nn \l_xpg_langsetup_prop {#1 / hyphenmins} }
\cs_if_eq:cNF {l@#1} \l@nohyphenation
{
\use:x
@@ -378,7 +475,8 @@
}
}
-\newcommand*\polyglossia@setup@language@patterns[1]{
+\NewDocumentCommand \SetupPolyglossiaLangPatterns { m }
+{
\bool_if:NTF \g__xpg_hyphenation_disabled_bool
{
\tl_gset:Ne \g__xpg_lastlanguage_tl {\the\csname l@#1\endcsname}
@@ -392,32 +490,29 @@
\language=\l@nohyphenation
}
{
- \xpg@set@hyphenation@patterns{#1}
+ \xpg_set_hyphenation_patterns:n {#1}
}
}
{
% Since this function is sometimes called from the gloss files
% directly, we need to check whether the requested hyphenname exists.
- \xpg@ifdefined{#1}{}
- {
- \xpg@nopatterns{#1}
- \expandafter\adddialect\csname l@#1\endcsname\l@nohyphenation\relax%
- }
- \xpg@set@hyphenation@patterns{#1}
+ \CheckHyphenationPatterns{#1}
+ \xpg_set_hyphenation_patterns:n {#1}
}
}
}
-\prop_new:N \g_xpg_langsetup_prop
+\prop_new_linked:N \l_xpg_langsetup_prop
\cs_new_protected:Npn \__xpg_keys_define_lang:n #1
{
- \keys_define:nn {polyglossia}{
+ \keys_define:nn {polyglossia}
+ {
% the script font
#1 / script
.code:n = {
- \prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/script}{##1}
- \prop_gput:Nne{\g_xpg_langsetup_prop}{#1/lcscript}
+ \prop_put:Nnn \l_xpg_langsetup_prop {#1/script}{##1}
+ \prop_put:Nne \l_xpg_langsetup_prop {#1/lcscript}
{\tl_if_empty:nF{##1}{\str_lowercase:n{##1}}}
},
#1 / script
@@ -426,84 +521,89 @@
.initial:n = latin,
% the opentype script tag
#1 / scripttag
- .code:n = {\prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/scripttag}{##1}},
+ .code:n = {\prop_put:Nnn \l_xpg_langsetup_prop {#1/scripttag}{##1}},
#1 / scripttag
.default:n = {},
#1 / scripttag
.initial:n = {},
% the language full name
#1 / language
- .code:n = {\prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/language}{##1}},
+ .code:n = {\prop_put:Nnn \l_xpg_langsetup_prop {#1/language}{##1}},
#1 / language
.value_required:n = true,
#1 / language
.initial:x = {\str_uppercase:n#1},
% the language tag
#1 / langtag
- .code:n = {\prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/langtag}{##1}},
+ .code:n = {\prop_put:Nnn \l_xpg_langsetup_prop {#1/langtag}{##1}},
#1 / langtag
.value_required:n = true,
#1 / langtag
.initial:n = {},
% the BCP-47 tag
#1 / bcp47
- .code:n = {\prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/bcp47}{##1}},
+ .code:n = {\prop_put:Nnn \l_xpg_langsetup_prop {#1/bcp47}{##1}},
#1 / bcp47
.value_required:n = true,
#1 / bcp47
.initial:n = {},
% the BCP-47 language tag
#1 / bcp47-language
- .code:n = {\prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/bcp47-language}{##1}},
+ .code:n = {\prop_put:Nnn \l_xpg_langsetup_prop {#1/bcp47-language}{##1}},
#1 / bcp47-language
.value_required:n = true,
#1 / bcp47-language
.initial:n = {},
% the BCP-47 region tag
#1 / bcp47-region
- .code:n = {\prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/bcp47-region}{##1}},
+ .code:n = {\prop_put:Nnn \l_xpg_langsetup_prop {#1/bcp47-region}{##1}},
#1 / bcp47-region
.value_required:n = false,
#1 / bcp47-region
.initial:n = {},
% the BCP-47 script tag
#1 / bcp47-script
- .code:n = {\prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/bcp47-script}{##1}},
+ .code:n =
+ {
+ \prop_put:Nnn \l_xpg_langsetup_prop {#1/bcp47-script}{##1}
+ \prop_put:Nne \l_xpg_langsetup_prop {#1/lc-bcp47-script}
+ {\tl_if_empty:nF{##1}{\str_lowercase:n{##1}}}
+ },
#1 / bcp47-script
.value_required:n = true,
#1 / bcp47-script
- .initial:n = {},
+ .initial:n = {Latn},
% the BCP-47 variant tag
#1 / bcp47-variant
- .code:n = {\prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/bcp47-variant}{##1}},
+ .code:n = {\prop_put:Nnn \l_xpg_langsetup_prop {#1/bcp47-variant}{##1}},
#1 / bcp47-variant
.value_required:n = false,
#1 / bcp47-variant
.initial:n = {},
% the BCP-47 extension-t tag
#1 / bcp47-extension-t
- .code:n = {\prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/bcp47-extension-t}{##1}},
+ .code:n = {\prop_put:Nnn \l_xpg_langsetup_prop {#1/bcp47-extension-t}{##1}},
#1 / bcp47-extension-t
.value_required:n = false,
#1 / bcp47-extension-t
.initial:n = {},
% the BCP-47 extension-u tag
#1 / bcp47-extension-u
- .code:n = {\prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/bcp47-extension-u}{##1}},
+ .code:n = {\prop_put:Nnn \l_xpg_langsetup_prop {#1/bcp47-extension-u}{##1}},
#1 / bcp47-extension-u
.value_required:n = false,
#1 / bcp47-extension-u
.initial:n = {},
% the BCP-47 extension-x tag
#1 / bcp47-extension-x
- .code:n = {\prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/bcp47-extension-x}{##1}},
+ .code:n = {\prop_put:Nnn \l_xpg_langsetup_prop {#1/bcp47-extension-x}{##1}},
#1 / bcp47-extension-x
.value_required:n = false,
#1 / bcp47-extension-x
.initial:n = {},
% the BCP-47 casing alias
#1 / bcp47-casing
- .code:n = {\prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/bcp47-casing}{##1}},
+ .code:n = {\prop_put:Nnn \l_xpg_langsetup_prop {#1/bcp47-casing}{##1}},
#1 / bcp47-casing
.value_required:n = false,
#1 / bcp47-casing
@@ -512,7 +612,7 @@
#1 / hyphennames
.code:n = {
\clist_set:Nn{\l_tmpa_clist}{##1}
- \prop_gput:Nne{\g_xpg_langsetup_prop}{#1/hyphennames}{\clist_use:Nn \l_tmpa_clist {,}}
+ \prop_put:Nne \l_xpg_langsetup_prop {#1/hyphennames}{\clist_use:Nn \l_tmpa_clist {,}}
},
#1 / hyphennames
.value_required:n = true,
@@ -525,8 +625,8 @@
{LR}{}
{RL}{\RequireBidi}
}
- {\prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/direction}{##1}}
- {\xpg@error{Unknown~ direction~ "##1"~ for~ language~ "#1"}}
+ { \prop_put:Nnn \l_xpg_langsetup_prop {#1/direction}{##1} }
+ { \xpg_error_msg:n {Unknown~ direction~ "##1"~ for~ language~ "#1"} }
},
#1 / direction
.value_required:n = true,
@@ -537,9 +637,9 @@
.code:n = {
% check syntax
\int_compare:nNnF { \clist_count:n {##1} } = {2}
- {\xpg@error{hypenmins~should~be~a~list~of~two~entries,~got~"##1"}}
+ { \xpg_error_msg:n {hypenmins~should~be~a~list~of~two~entries,~got~"##1"} }
% set prop
- \prop_gput:Nnn \g_xpg_langsetup_prop {#1/hyphenmins} {##1}
+ \prop_put:Nnn \l_xpg_langsetup_prop {#1/hyphenmins} {##1}
},
#1 / hyphenmins
.value_required:n = true,
@@ -550,9 +650,9 @@
.code:n = {
% check syntax
\int_compare:nNnF { \clist_count:n {##1} } = {1}
- {\xpg@error{totalhyphenhypenmin~should~be~a~single~entry,~got~"##1"}}
+ { \xpg_error_msg:n {totalhyphenhypenmin~should~be~a~single~entry,~got~"##1"} }
% set prop
- \prop_gput:Nnn \g_xpg_langsetup_prop {#1/totalhyphenmin} {##1}
+ \prop_put:Nnn \l_xpg_langsetup_prop {#1/totalhyphenmin} {##1}
},
#1 / totalhyphenmin
.value_required:n = false,
@@ -571,35 +671,35 @@
% environment name
#1 / envname
.code:n = {
- \prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/envname}{##1}
+ \prop_put:Nnn \l_xpg_langsetup_prop {#1/envname}{##1}
},
#1/ envname.value_required:n = true,
#1/ envname.initial:n = {#1},
% babel name
#1 / babelname
.code:n = {
- \prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/babelname}{##1}
+ \prop_put:Nnn \l_xpg_langsetup_prop {#1/babelname}{##1}
},
#1/ babelname.value_required:n = true,
#1/ babelname.initial:n = {#1},
% default numerals
#1 / localnumeral
. code:n = {
- \prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/localnumeral}{##1}
- \prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/Localnumeral}{##1}
+ \prop_put:Nnn \l_xpg_langsetup_prop {#1/localnumeral}{##1}
+ \prop_put:Nnn \l_xpg_langsetup_prop {#1/Localnumeral}{##1}
},
#1 / localnumeral.value_required:n = true,
- #1 / localnumeral.initial:n = {polyglossia@C@localnumeral},
+ #1 / localnumeral.initial:n = {xpg_C_localnumeral:nn},
% uppercased
#1 / Localnumeral
. code:n = {
- \prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/Localnumeral}{##1}
+ \prop_put:Nnn \l_xpg_langsetup_prop {#1/Localnumeral}{##1}
},
#1 / Localnumeral.value_required:n = true,
- #1 / Localnumeral.initial:n = {polyglossia@C@localnumeral},
+ #1 / Localnumeral.initial:n = {xpg_C_localnumeral:nn},
% environment define command (by default create the environment)
#1 / DefineCommandsCmd
- .code:n = {\prop_gput:Nnn{\g_xpg_langsetup_prop}{#1/DefineCommandsCmd}{##1}},
+ .code:n = {\prop_put:Nnn \l_xpg_langsetup_prop {#1/DefineCommandsCmd}{##1}},
#1 / DefineCommandsCmd
.value_required:n = true,
#1 / DefineCommandsCmd
@@ -607,9 +707,20 @@
}
}
+\DeclareExpandableDocumentCommand \babelname { }
+ {
+ \prop_item:Ne \l_xpg_langsetup_prop { \languagename / babelname }
+ }
+
+\DeclareExpandableDocumentCommand \mainbabelname { }
+ {
+ \prop_item:Ne \l_xpg_langsetup_prop { \mainlanguagename / babelname }
+ }
+
% TODO move to C module
-\newcommand*{\polyglossia@C@localnumeral}[2]{
- \polyglossia@Clang@@arabic{#2}
+\cs_new:Nn \xpg_C_localnumeral:nn
+{
+ \xpg_Clang_arabic{#2}
}
\cs_new:Npn \__xpg_localnumeral_parse:nn #1 #2
@@ -633,7 +744,7 @@
\__xpg_localnumeral_parse:nn
} { #2 }
}
- { \use:c { \prop_item:Ne \g_xpg_langsetup_prop
+ { \use:c { \prop_item:Ne \l_xpg_langsetup_prop
{ \languagename / #3 } } { } { #1 } }
}
@@ -668,31 +779,31 @@
\cs_new_nopar:Npn \__xpg_indent_first:n #1
{
\bool_if:cTF { g__xpg_#1_if_bool }
- { \french@indent } { \nofrench@indent }
+ { \__xpg_french_indent: } { \__xpg_no_french_indent: }
}
\cs_new:Nn \__xpg_lang_set_par_direction:n
{
- \prop_get:NeNTF \g_xpg_langsetup_prop {#1/direction} \l_tmpa_tl
+ \prop_get:NeNTF \l_xpg_langsetup_prop {#1/direction} \l_tmpa_tl
{
\__xpg_set_par_direction:n{\l_tmpa_tl}
}
{
- \xpg@error{Could~ not~ retrieve~ key~ direction~ for~ language~ "#1"}
- \prop_show:N{\g_xpg_langsetup_prop}
+ \xpg_error_msg:n {Could~ not~ retrieve~ key~ direction~ for~ language~ "#1"}
+ \prop_show:N{\l_xpg_langsetup_prop}
}
}
\cs_new:Nn \__xpg_lang_set_text_direction:nn
{
- \prop_get:NeNTF \g_xpg_langsetup_prop {#1/direction} \l_tmpa_tl
+ \prop_get:NeNTF \l_xpg_langsetup_prop {#1/direction} \l_tmpa_tl
{
\__xpg_set_text_direction:n{\l_tmpa_tl}{#2}
}
{
- \xpg@error{Could~ not~ retrieve~ key~ direction~ for~ language~ "#1"}
- \prop_show:N{\g_xpg_langsetup_prop}
+ \xpg_error_msg:n {Could~ not~ retrieve~ key~ direction~ for~ language~ "#1"}
+ \prop_show:N{\l_xpg_langsetup_prop}
}
}
@@ -704,17 +815,12 @@
\DeclareDocumentCommand \disablehyphenation {}
{
- \bool_if:NTF \g_xpg_main_lang_set_bool
- {
- \__xpg_disable_hyphenation:
- }
- {
- % we have to postpone the execution until the main language
- % has been set (#125).
- \cs_gset_nopar:Nn \__xpg_at_begin_document_hyphenation: {
- \__xpg_disable_hyphenation:
- }
- }
+ % we have to postpone the execution until the main language
+ % has been set (#125).
+ \hook_gput_code:nnn { polyglossia / selectdefaultlanguage / after } {.}
+ {
+ \__xpg_disable_hyphenation:
+ }
}
\cs_new:Nn \__xpg_disable_hyphenation:
@@ -723,7 +829,7 @@
{
\bool_gset_true:N \g__xpg_hyphenation_disabled_bool
\tl_gset:Ne \g__xpg_lastlanguage_tl { \the\language }
- % We do not call \xpg@set@hyphenation@patterns here to avoid a warning message.
+ % We do not call \xpg_set_hyphenation_patterns:n here to avoid a warning message.
% "nohyphenation" is not listed in language.dat.lua.
\language=\l@nohyphenation
}
@@ -735,19 +841,19 @@
{
\bool_gset_false:N \g__xpg_hyphenation_disabled_bool
\language=\tl_use:N{\g__xpg_lastlanguage_tl}
- }%
+ }
}
\cs_new:Npn \__xpg_auto_setupfont:n #1
{
\bool_if:cTF { g__xpg_#1_fontsetup_bool }
{
- \str_if_eq:eeTF{\prop_item:Nn{\g_xpg_langsetup_prop}{#1/lcscript}}{latin}
- {\xpg@fontsetup@latin{#1}}
- {\xpg@fontsetup@nonlatin{#1}}
+ \str_if_eq:eeTF{\prop_item:Nn{\l_xpg_langsetup_prop}{#1/lcscript}}{latin}
+ {\SetupLatinPolyglossiaFont{#1}}
+ {\SetupNonLatinPolyglossiaFont{#1}}
}
{
- \xpg@info{Skipping~ automatic~ font~ setup~ for~ language~ #1}
+ \xpg_info_msg:n{Skipping~ automatic~ font~ setup~ for~ language~ #1}
}
}
@@ -759,44 +865,44 @@
\bool_if:nTF{\tl_if_empty_p:n{#1} || \tl_if_empty_p:n{#2}}
{
% maybe an error ?
- \xpg@warning{Asking~ to~ add~ empty~ feature~to~ main~ font~
+ \xpg_warning_msg:n{Asking~ to~ add~ empty~ feature~to~ main~ font~
(Language="#2"~ to~ langtag~ "#1")}
}
{
- \str_if_eq:nnTF{#2}{Turkish}{
+ \str_if_eq:nnTF{#2}{Turkish}
+ {
\fontspec_if_language:nTF {TRK}
{
\addfontfeature{Language=Turkish}
}
{
- \fontspec_if_language:nTF {TUR}
+ \fontspec_if_language:nT {TUR}
{
\addfontfeature{Language=Turkish}
- }{}
+ }
}
}{
- \fontspec_if_language:nTF{#1}
+ \fontspec_if_language:nT{#1}
{
\addfontfeature{Language=#2}
}
- {}
}
}
}
-\cs_generate_variant:Nn \__xpg_add_font_feature_language:nn { on , no, oo , Vn, nV, VV , xn, nx, xx}
+\cs_generate_variant:Nn \__xpg_add_font_feature_language:nn { ee }
-% add fontfeature Script=#2 to scripttag #1
-% do nothing if #1 or #2 is empty
+% add fontfeature Script=#3 to scripttag #2 for family #1
+% do nothing if #2 or #3 is empty
\cs_new:Nn \__xpg_add_font_feature_script:nnn
{
\bool_if:nTF{\tl_if_empty_p:n{#2} || \tl_if_empty_p:n{#3}}
{
% maybe an error ?
- \xpg@warning{Asking~ to~ add~ empty~ feature~to~ main~ font
+ \xpg_warning_msg:n{Asking~ to~ add~ empty~ feature~to~ main~ font
(Script="#3"~ to~ scripttag~ "#2")}
}
{
- \fontspec_if_script:nTF{#2}
+ \xpg_if_script:nTF{#2}
{\addfontfeature{Script=#3}}
{
\tl_set:Nn \xpg_ffamily_tl {}
@@ -817,6 +923,8 @@
% Strip font family name for error message
% Courtesy of egreg, https://tex.stackexchange.com/a/613996
\str_set:Nx \xpg_fname_str { \fontname\font }
+ % Remove name: prefix
+ \regex_replace_once:nnN { name: } { } \xpg_fname_str
% Remove all after :
\regex_replace_once:nnN { \:.* } { } \xpg_fname_str
% ... and all after /
@@ -828,118 +936,58 @@
\regex_replace_once:nnN { \.[^\.]* \Z } { } \xpg_fname_str
% ... and, finally, quotation marks
\regex_replace_once:nnN { " } { } \xpg_fname_str
- \xpg@error{
- The~ current~ main ~ \xpg_ffamily_tl\space font,~ \xpg_fname_str,~ does~ not~ contain~ the~"#3"~ script!\MessageBreak
- Please~ define~\csname\tl_if_empty:nF{#3}{\str_lowercase:n{#3}}font\xpg_ffamilysh_tl\endcsname~
- with~ \string\newfontfamily\space command
+ \xpg_error_msg:n
+ {
+ The~ current~ main ~ \xpg_ffamily_tl\space font,~ \xpg_fname_str,~ does~ not~ contain~ the~"#3"~ script! \iow_newline:
+ Please~ define~\csname\tl_if_empty:nF{#3}{\str_lowercase:n{#3}}font\xpg_ffamilysh_tl\endcsname~
+ with~ \string\newfontfamily\space command
}
}
}
}
-\cs_generate_variant:Nn \__xpg_add_font_feature_script:nnn { non , nno, noo , nVn, nnV, nVV , nxn, nnx, nxx}
-
-\def\xpg@fontsetup@latin#1{
- \begingroup
- \csgdef{#1@font@rm}{
- \cs_if_exist_use:cF{#1font}{
- \rmfamilylatin
- \__xpg_add_font_feature_language:xx{\prop_item:Nn{\g_xpg_langsetup_prop}{#1/langtag}}
- {\prop_item:Nn{\g_xpg_langsetup_prop}{#1/language}}
- }
- }
- \csgdef{#1@font@sf}{
- \cs_if_exist_use:cF{#1fontsf}{
- \sffamilylatin
- \__xpg_add_font_feature_language:xx{\prop_item:Nn{\g_xpg_langsetup_prop}{#1/langtag}}
- {\prop_item:Nn{\g_xpg_langsetup_prop}{#1/language}}
- }
- }
- \csgdef{#1@font@tt}{
- \cs_if_exist_use:cF{#1fonttt}{
- \ttfamilylatin
- \__xpg_add_font_feature_language:xx{\prop_item:Nn{\g_xpg_langsetup_prop}{#1/langtag}}
- {\prop_item:Nn{\g_xpg_langsetup_prop}{#1/language}}
- }
- }
- \endgroup
-}
+\cs_generate_variant:Nn \__xpg_add_font_feature_script:nnn { nee }
-\def\xpg@fontsetup@nonlatin#1{
- \begingroup
- \csgdef{#1@font@rm}{
- \cs_if_exist_use:cF{#1font}
- {
- \providetoggle{#1@use@script@font}
- \str_if_eq:nnTF{\prop_item:Nn{\g_xpg_langsetup_prop}{#1/script}}{\prop_item:Nn{\g_xpg_langsetup_prop}{#1/language}}
- {\rmfamilylatin}
- {\cs_if_exist_use:cTF{\prop_item:Nn{\g_xpg_langsetup_prop}{#1/lcscript} font}
- {
- \toggletrue{#1@use@script@font}
- }
- {
- \rmfamilylatin
- }
- }
- \iftoggle{#1@use@script@font}{}{
- \__xpg_add_font_feature_script:nxx{rm}
- {\prop_item:Nn{\g_xpg_langsetup_prop}{#1/scripttag}}
- {\prop_item:Nn{\g_xpg_langsetup_prop}{#1/script}}
- }%
- \__xpg_add_font_feature_language:xx{\prop_item:Nn{\g_xpg_langsetup_prop}{#1/langtag}}
- {\prop_item:Nn{\g_xpg_langsetup_prop}{#1/language}}
- }%
- \def\familytype{rm}
- }%
- \csgdef{#1@font@sf}{
- \cs_if_exist_use:cF{#1fontsf}
+%% TODO: probably can be cleaned a little more
+\cs_new_protected:Npn \__xpg_setup_font:nnnnn #1 #2 #3 #4 #5 % #1 = lang, #2 = family, #3 = family, #4 = gobble, #5 gobble
+ {
+ \cs_set_protected_nopar:cpn { #1@font@#2 }
{
- \providetoggle{#1@use@script@fontsf}
- \str_if_eq:nnTF{\prop_item:Nn{\g_xpg_langsetup_prop}{#1/script}}{\prop_item:Nn{\g_xpg_langsetup_prop}{#1/language}}
- {\sffamilylatin}
- {\cs_if_exist_use:cTF{\prop_item:Nn{\g_xpg_langsetup_prop}{#1/lcscript} fontsf}
+ \cs_if_exist_use:cF{ #1font#3 }
{
- \toggletrue{#1@use@script@fontsf}
- }
- {
- \sffamilylatin
- }
- }
- \iftoggle{#1@use@script@fontsf}{}{
- \__xpg_add_font_feature_script:nxx{sf}
- {\prop_item:Nn{\g_xpg_langsetup_prop}{#1/scripttag}}
- {\prop_item:Nn{\g_xpg_langsetup_prop}{#1/script}}
- }%
- \__xpg_add_font_feature_language:xx{\prop_item:Nn{\g_xpg_langsetup_prop}{#1/langtag}}
- {\prop_item:Nn{\g_xpg_langsetup_prop}{#1/language}}
- }%
- \def\familytype{sf}
- }%
- \csgdef{#1@font@tt}{
- \cs_if_exist_use:cF{#1fonttt}
- {
- \providetoggle{#1@use@script@fonttt}
- \str_if_eq:nnTF{\prop_item:Nn{\g_xpg_langsetup_prop}{#1/script}}{\prop_item:Nn{\g_xpg_langsetup_prop}{#1/language}}
- {\ttfamilylatin}
- {\cs_if_exist_use:cTF{\prop_item:Nn{\g_xpg_langsetup_prop}{#1/lcscript} fonttt}
- {
- \toggletrue{#1@use@script@fonttt}
- }
- {
- \ttfamilylatin
- }
- }
- \iftoggle{#1@use@script@fonttt}{}{
- \__xpg_add_font_feature_script:nxx{tt}
- {\prop_item:Nn{\g_xpg_langsetup_prop}{#1/scripttag}}
- {\prop_item:Nn{\g_xpg_langsetup_prop}{#1/script}}
- }
- \__xpg_add_font_feature_language:xx{\prop_item:Nn{\g_xpg_langsetup_prop}{#1/langtag}}
- {\prop_item:Nn{\g_xpg_langsetup_prop}{#1/language}}
+ \cs_if_exist_use:cF { \prop_item:Nn \l_xpg_langsetup_prop { #1 / lc-bcp47-script } font#3 }
+ {
+ #4 { \prop_item:Nn \l_xpg_langsetup_prop { #1 / lcscript } font#3 }
+ {
+ \use:c { #2familylatin }
+ #5
+ {
+ \__xpg_add_font_feature_script:nee { #2 }
+ { \prop_item:Nn \l_xpg_langsetup_prop { #1 / scripttag } }
+ { \prop_item:Nn \l_xpg_langsetup_prop { #1 / script } }
+ }
+ }
+ }
+ \__xpg_add_font_feature_language:ee
+ { \prop_item:Nn \l_xpg_langsetup_prop { #1 / langtag } }
+ { \prop_item:Nn \l_xpg_langsetup_prop { #1 / language } }
+ }
+ \tl_set:Nn \familytype { #2 }
}
- \def\familytype{tt}
}
- \endgroup
-}
+
+\NewDocumentCommand \SetupLatinPolyglossiaFont { m }
+ {
+ \__xpg_setup_font:nnnnn { #1 } { rm } { } { \use_ii:nn } { \use_none:n }
+ \__xpg_setup_font:nnnnn { #1 } { sf } { sf } { \use_ii:nn } { \use_none:n }
+ \__xpg_setup_font:nnnnn { #1 } { tt } { tt } { \use_ii:nn } { \use_none:n }
+ }
+
+\NewDocumentCommand \SetupNonLatinPolyglossiaFont { m }
+ {
+ \__xpg_setup_font:nnnnn { #1 } { rm } { } { \cs_if_exist_use:cF } { \use:n }
+ \__xpg_setup_font:nnnnn { #1 } { sf } { sf } { \cs_if_exist_use:cF } { \use:n }
+ \__xpg_setup_font:nnnnn { #1 } { tt } { tt } { \cs_if_exist_use:cF } { \use:n }
+ }
%%% END OF PolyglossiaSetup
@@ -948,40 +996,53 @@
\cs_new_nopar:Nn \__xpg_local_marks:n { }
\cs_new_nopar:Nn \__xpg_enable_local_marks:
{
- \xpg@info{Option:~ localmarks}
+ \xpg_info_msg:n{Option:~ localmarks}
\cs_gset_nopar:Nn \__xpg_local_marks:n
{
- \def\xpg@tmp@lang{##1}
- \DeclareRobustCommand\markboth[2]{
- \begingroup
- \let\label\relax \let\index\relax \let\glossary\relax
- \unrestored@protected@xdef\@themark
- {
- {\lowercase{\foreignlanguage{\xpg@tmp@lang}}{\protect\@@ensure@maindir{####1}}}
- {\lowercase{\foreignlanguage{\xpg@tmp@lang}}{\protect\@@ensure@maindir{####2}}}
- }
- \@temptokena \expandafter{\@themark}
- \mark{\the\@temptokena}
- \endgroup
- \if@nobreak\ifvmode\nobreak\fi\fi
- }
- \DeclareRobustCommand\markright[1]{
- \begingroup
- \let\label\relax \let\index\relax \let\glossary\relax
- \expandafter\@markright\@themark
- {\lowercase{\foreignlanguage{\xpg@tmp@lang}}{\protect\@@ensure@maindir{####1}}}
- \@temptokena \expandafter{\@themark}
- \mark{\the\@temptokena}
- \endgroup
- \if@nobreak\ifvmode\nobreak\fi\fi
- }
+ \DeclareDocumentCommand \markboth { m m }
+ {
+ \group_begin:
+ \cs_set_eq:cc { label } { relax }
+ \cs_set_eq:cc { index } { relax }
+ \cs_set_eq:cc { glossary } { relax }
+ \unrestored@protected@xdef\@themark
+ {
+ {\foreignlanguage{##1}{\protect\@@ensure@maindir{####1}}}
+ {\foreignlanguage{##1}{\protect\@@ensure@maindir{####2}}}
+ }
+ \@temptokena \expandafter{\@themark}
+ \mark_insert:nn{2e-left}{####1}
+ \mark_insert:nn{2e-right}{####2}
+ \tl_if_empty:nF{####2}{ \mark_insert:nn{2e-right-nonempty}{####2} }
+ \mark{\the\@temptokena}
+ \group_end:
+ \if@nobreak\ifvmode\nobreak\fi\fi
+ }
+ \DeclareDocumentCommand \markright { m }
+ {
+ \group_begin:
+ \cs_set_eq:cc { label } { relax }
+ \cs_set_eq:cc { index } { relax }
+ \cs_set_eq:cc { glossary } { relax }
+ \expandafter\@markright\@themark
+ {\foreignlanguage{##1}{\protect\@@ensure@maindir{####1}}}
+ \@temptokena \expandafter{\@themark}
+ \mark_insert:nn{2e-right}{####1}
+ \tl_if_empty:nF{####1}{ \mark_insert:nn{2e-right-nonempty}{####1} }
+ \mark{\the\@temptokena}
+ \group_end:
+ \if@nobreak\ifvmode\nobreak\fi\fi
+ }
}
}
%we call this macro when a gloss file is not found for a given language
-\def\xpg@nogloss#1{
- \xpg@warning{File~ gloss-#1.ldf~ do~ not~ exists!\MessageBreak
- I~ will~ nevertheless~ try~ to~ use~ hyphenation~ patterns~ for~ #1.}
+\cs_new_nopar:Nn \__xpg_no_gloss:n
+{
+ \xpg_warning_msg:n
+ {File~ gloss-#1.ldf~ do~ not~ exists! \iow_newline:
+ I~ will~ nevertheless~ try~ to~ use~ hyphenation~ patterns~ for~ #1.}
+
\PolyglossiaSetup{#1}{hyphenmins={2,3},hyphennames={#1},fontsetup=true}
% the above amounts to:
%\ifcsundef{l@#1}%
@@ -990,59 +1051,64 @@
%\csdef{#1@language}{\language=\csname l@#1\endcsname}%
}
-\newcommand{\xpg@input}[1]{
+\cs_new_nopar:Nn \xpg_input:n
+{
% Store catcode of @ before making at letter
- \chardef\xpg@saved@at@catcode\catcode`\@
- \makeatletter
- \input{#1}
+ \cs_set_protected_nopar:Npx \__xpg_restore_at_catcode:
+ { \char_set_catcode:nn { `@ } { \char_value_catcode:n {`\@ } } }
+ \char_set_catcode_letter:N @
+ \file_input:n { #1 }
% restore former @ catcode
- \catcode`\@=\xpg@saved@at@catcode
+ \__xpg_restore_at_catcode:
}
% try to load a language file
-\cs_new:Nn \__xpg_load_lang_definition:nn {
- \file_if_exist:nTF{gloss-#2.ldf}
+\cs_new:Nn \__xpg_load_lang_definition:nn
+{
+ \file_if_exist:nTF{gloss-#2.ldf}
{
- % Temporarily force catcode of ~ to 13 since babelsh.def
+ \tl_set:Nn \xpg__tmp_default_options_tl { #1 }
+ % Temporarily force catcode of ~ to 13 (active) since babelsh.def
% requires it. This is needed particularly with LaTeX3
% packages which force \ExplSyntaxOn (#425)
- \protected\edef\xpg@restore@tilde@catcode{\catcode 126 = \the\catcode 126\relax}
- \catcode 126 = 13
- \xpg@input{gloss-#2.ldf}
- \setkeys{#2}{#1}
+ \cs_gset_protected:Npx \__xpg_restore_tilde_catcode:
+ { \char_set_catcode:nn { 126 } { \char_value_catcode:n { 126 } } }
+ \char_set_catcode_active:n { 126 }
+ \xpg_input:n {gloss-#2.ldf}
% restore former ~ catcode
- \xpg@restore@tilde@catcode
+ \__xpg_restore_tilde_catcode:
}
{
- \xpg@nogloss{#2}
+ \__xpg_no_gloss:n {#2}
}
}
\cs_generate_variant:Nn \__xpg_load_lang_definition:nn { ee }
% load a master language from an alias file
-\newcommand*\xpg@load@master@language[1] {
- \xpg@input{gloss-#1.ldf}
+\NewDocumentCommand \InheritGlossFile { m }
+{
\seq_if_in:NeF \__xpg_langs_loaded {#1}
{
+ \xpg_input:n {gloss-#1.ldf}
% define environment and command if not alias
\str_if_eq:eeT {\prop_item:Ne \__xpg_alias {#1/target}} {#1} {
- \use:c{\prop_item:Nn{\g_xpg_langsetup_prop}
+ \use:c{\prop_item:Nn{\l_xpg_langsetup_prop}
{#1/DefineCommandsCmd}}
{#1}
}
+ \seq_gput_right:Nn \__xpg_langs_loaded {#1}
}
\__xpg_register_language:nn{}{#1}
- \seq_gput_right:Nn \__xpg_langs_loaded {#1}
}
-\prop_new:N \__xpg_alias
+\prop_new_linked:N \__xpg_alias
% define environment and command if not alias
\cs_new:Nn \xpg_define_language_commands:n {
\str_if_eq:eeT {\prop_item:Ne \__xpg_alias {#1/target}} {#1}
{
\exp_args:Ne
- \NewDocumentEnvironment {\prop_item:Nn{\g_xpg_langsetup_prop}{#1/envname}} { O{} }
+ \NewDocumentEnvironment {\prop_item:Nn{\l_xpg_langsetup_prop}{#1/envname}} { O{} }
{
\otherlanguage [ ##1 ] { #1 }
}
@@ -1070,7 +1136,7 @@
% target to self fall back to language table
\str_if_eq:eeTF { \prop_item:Ne \__xpg_alias {#1/target} } { #1 }
{
- \prop_item:Nn{\g_xpg_langsetup_prop} {#1/#2}
+ \prop_item:Nn{\l_xpg_langsetup_prop} {#1/#2}
}
% load alias by recursion
{
@@ -1193,20 +1259,29 @@
\clist_if_in:NeF \xpg@loaded {#2}{
\clist_gput_right:Ne \xpg@loaded {#2}
}
- % Register the language options
- \__xpg_set_language_options:nnn {#2} {#1} {@xpg@set@langvariant}
+ \group_begin:
+ % set language options
+ \__xpg_set_language_options:nn {#2} {#1}
% register babelname
- \prop_get:NeN \g_xpg_langsetup_prop {#2/babelname} \l_tmpa_tl
+ \prop_get:NeN \l_xpg_langsetup_prop {#2/babelname} \l_tmpa_tl
\clist_if_in:NeF \xpg@bloaded {\l_tmpa_tl}{
\clist_gput_right:Ne \xpg@bloaded {\l_tmpa_tl}
}
% register BCP-47 ID
- \prop_get:NeN \g_xpg_langsetup_prop {#2/bcp47} \l_tmpa_tl
+ \prop_get:NeN \l_xpg_langsetup_prop {#2/bcp47} \l_tmpa_tl
\clist_if_in:NeF \xpg@bcp@loaded {\l_tmpa_tl}{
\clist_gput_right:Ne \xpg@bcp@loaded {\l_tmpa_tl}
}
+ % register variant
+ \prop_get:NnNT \l_xpg_curropt_prop {#2/variant} \l_tmpa_tl {
+ \clist_if_in:NeF \xpg@vloaded {\l_tmpa_tl}{
+ \clist_gput_right:Ne \xpg@vloaded {\l_tmpa_tl}
+ }}
+ \group_end:
}
+\prop_new_linked:N \l_xpg_curropt_prop
+
\DeclareDocumentCommand \setdefaultlanguage { O{} m }
{
% latex is an internal language, so do not record
@@ -1221,12 +1296,13 @@
\__xpg_load_lang_definition:nn{#1}{#2}
% define environment and command if not alias
\str_if_eq:eeT {\prop_item:Ne \__xpg_alias {#2/target}} {#2} {
- \use:c{\prop_item:Ne{\g_xpg_langsetup_prop}
+ \use:c{\prop_item:Ne{\l_xpg_langsetup_prop}
{#2/DefineCommandsCmd}}
{#2}
}
\seq_gput_right:Ne \__xpg_langs_loaded {#2}
}
+ \cs_set_nopar:Npe \mainlanguagevariant { \prop_item:Ne \l_xpg_curropt_prop { \xpg_alias_base_lang:n{#2} / variant } }
\exp_args:Nee \__xpg_set_default_language:nn {\xpg_alias_add_to_option_i:nn{#2}{#1}}
{\xpg_alias_base_lang:n{#2}}
}
@@ -1234,70 +1310,23 @@
\cs_new:Nn \__xpg_set_default_language:nn
{
- \gdef\xpg@main@language{#2}
- \tl_if_blank:nTF {#1}
- {
- \cs_gset_nopar:Npn \mainlanguagevariant {}
- }
- {
- % Register the language options
- \__xpg_set_language_options:nnn {#2} {#1} {@xpg@main@langvariant}
- }
- \csgdef{#2@gvar}{\mainlanguagevariant}
+ \tl_gset:Nn \xpg_main_language_tl {#2}
%% The following settings are for the default language and script
% this tells bidi.sty or luabidi.sty that the document is RTL
- \__xpg_if_LR_str:eF{\prop_item:Nn{\g_xpg_langsetup_prop}{#2/direction}}
+ \__xpg_if_LR_str:eF{\prop_item:Nn{\l_xpg_langsetup_prop}{#2/direction}}
{
\__xpg_setRTLmain:
}
- \cs_gset_nopar:Nn \__xpg_at_begin_document_selectlanguage: {
+ \cs_gset_nopar:Nn \__xpg_selectdefaultlanguage:
+ {
\selectbackgroundlanguage{#2}
- \selectlanguage[#1]{#2}%
+ \selectlanguage[#1]{#2}
}
- \xpg@info{Default~ language~ is~ #2}
- \polyglossia@set@language@name[#1]{#2}
+ \str_if_eq:eeF { #2 } { latex }
+ { \xpg_info_msg:n{Default~ language~ is~ #2} }
+ \xpg_set_language_name:n { #2 }
\cs_gset_nopar:Npn \mainlanguagename {#2}
- % Store babelname of main language (for external packages such as biblatex)
- \cs_gset_nopar:Npe \mainbabelname { \prop_item:Nn \g_xpg_langsetup_prop {#2/babelname} }
- % Store babelname of current language (for external packages such as biblatex)
- \cs_gset_eq:NN \babelname \mainbabelname
- \cs_gset_eq:cc{#2@gbabelname}{babelname}%
- % Store BCP-47 ID and subtags of main language:
- % 1. store main.* (sub)tags
- \cs_gset_nopar:cpe {bcp47.main.tag} { \prop_item:Nn \g_xpg_langsetup_prop { #2 / bcp47 } }
- \cs_gset_nopar:cpe {bcp47.main.language} { \prop_item:Nn \g_xpg_langsetup_prop { #2 / bcp47-language } }
- \cs_gset_nopar:cpe {bcp47.main.region} { \prop_item:Nn \g_xpg_langsetup_prop { #2 / bcp47-region } }
- \cs_gset_nopar:cpe {bcp47.main.script} { \prop_item:Nn \g_xpg_langsetup_prop { #2 / bcp47-script } }
- \cs_gset_nopar:cpe {bcp47.main.variant} { \prop_item:Nn \g_xpg_langsetup_prop { #2 / bcp47-variant } }
- \cs_gset_nopar:cpe {bcp47.main.extension.t} { \prop_item:Nn \g_xpg_langsetup_prop { #2 / bcp47extension-t } }
- \cs_gset_nopar:cpe {bcp47.main.extension.u} { \prop_item:Nn \g_xpg_langsetup_prop { #2 / bcp47-extension-u } }
- \cs_gset_nopar:cpe {bcp47.main.extension.x} { \prop_item:Nn \g_xpg_langsetup_prop { #2 / bcp47-extension-x } }
- % For casing, we fall back to language if bcp47-casing is not explicitly set
- \cs_set_nopar:cpx {tmpcasing} { \prop_item:Ne \g_xpg_langsetup_prop { #2 / bcp47-casing } }
- \str_if_empty:NTF \tmpcasing
- { \cs_gset_nopar:cpe {bcp47.main.casing} { \prop_item:Nn \g_xpg_langsetup_prop {#2 / bcp47-language} } }
- { \cs_gset_nopar:cpe {bcp47.main.casing} { \tmpcasing } }
- % 2. Store lang (sub)tags
- \cs_gset_eq:cc {bcp47.tag} {bcp47.main.tag}
- \cs_gset_eq:cc {bcp47.language} {bcp47.main.language}
- \cs_gset_eq:cc {bcp47.region} {bcp47.main.region}
- \cs_gset_eq:cc {bcp47.script} {bcp47.main.script}
- \cs_gset_eq:cc {bcp47.variant} {bcp47.main.variant}
- \cs_gset_eq:cc {bcp47.extension.t} {bcp47.main.extension.t}
- \cs_gset_eq:cc {bcp47.extension.u} {bcp47.main.extension.u}
- \cs_gset_eq:cc {bcp47.extension.x} {bcp47.main.extension.x}
- \cs_gset_eq:cc {bcp47.casing} {bcp47.main.casing}
- % 3. Store global language BCP47 settings (with default subtags as set by main language options)
- \cs_gset_eq:cc{#2@g.bcp47.tag}{bcp47.tag}
- \cs_gset_eq:cc{#2@g.bcp47.language}{bcp47.language}
- \cs_gset_eq:cc{#2@g.bcp47.region}{bcp47.region}
- \cs_gset_eq:cc{#2@g.bcp47.script}{bcp47.script}
- \cs_gset_eq:cc{#2@g.bcp47.variant}{bcp47.variant}
- \cs_gset_eq:cc{#2@g.bcp47.extension.t}{bcp47.extension.t}
- \cs_gset_eq:cc{#2@g.bcp47.extension.u}{bcp47.extension.u}
- \cs_gset_eq:cc{#2@g.bcp47.extension.x}{bcp47.extension.x}
- \cs_gset_eq:cc{#2@g.bcp47.casing}{bcp47.casing}
}
\DeclareCommandCopy \setmainlanguage \setdefaultlanguage
@@ -1308,11 +1337,11 @@
{
\str_case:nnF {#1}
{
- {bcp-47} { \csuse{bcp47.tag} }
- {bcp47} { \csuse{bcp47.tag} }
+ {bcp-47} { \use:c{bcp47.tag} }
+ {bcp47} { \use:c{bcp47.tag} }
}
{
- \xpg@error{Invalid~ \string\languageid\space argument:~ #1}
+ \xpg_ill_arg_msg:nn { #1 } { \languageid }
}
}
@@ -1322,11 +1351,11 @@
{
\str_case:nnF {#1}
{
- {bcp-47} { \csuse{bcp47.main.tag} }
- {bcp47} { \csuse{bcp47.main.tag} }
+ {bcp-47} { \use:c{bcp47.main.tag} }
+ {bcp47} { \use:c{bcp47.main.tag} }
}
{
- \xpg@error{Invalid~ \string\mainlanguageid\space argument:~ #1}
+ \xpg_ill_arg_msg:nn { #1 } { \mainlanguageid }
}
}
% Kernel command to access to BCP-47 data.
@@ -1346,281 +1375,205 @@
% and main.* variants thereof
% See https://github.com/latex3/latex2e/issues/1035
\DeclareExpandableDocumentCommand \BCPdata {m}
+ {
+ \cs_if_exist_use:cF{bcp47.#1}
+ { \xpg_ill_arg_msg:nn { #1 } { \BCPdata } }
+ }
+
+\clist_map_inline:nn
+ {
+ language, region, script, variant,
+ extension.t, extension.u, extension.x
+ }{
+ \tl_set:Nn \l_tmpa_tl { #1 }
+ \tl_replace_once:Nnn \l_tmpa_tl { . } { - }
+ \cs_gset_nopar:cpe { bcp47.#1 }
+ {
+ \exp_not:n { \prop_item:Ne \l_xpg_langsetup_prop } { \exp_not:N \languagename / bcp47-\l_tmpa_tl }
+ }
+ \cs_gset_nopar:cpe { bcp47.main.#1 }
+ {
+ \exp_not:n { \prop_item:Ne \l_xpg_langsetup_prop } { \exp_not:N \mainlanguagename / bcp47-\l_tmpa_tl }
+ }
+ }
+\cs_gset_nopar:cpn { bcp47.casing }
+ {
+ \tl_if_empty:eTF { \prop_item:Ne \l_xpg_langsetup_prop { \languagename / bcp47-casing } }
+ {
+ \prop_item:Ne \l_xpg_langsetup_prop { \languagename / bcp47-language }
+ }{
+ \prop_item:Ne \l_xpg_langsetup_prop { \languagename / bcp47-casing }
+ }
+ }
+\cs_gset_nopar:cpn { bcp47.main.casing }
+ {
+ \tl_if_empty:eTF { \prop_item:Ne \l_xpg_langsetup_prop { \mainlanguagename / bcp47-casing } }
+ {
+ \prop_item:Ne \l_xpg_langsetup_prop { \mainlanguagename / bcp47-language }
+ }{
+ \prop_item:Ne \l_xpg_langsetup_prop { \mainlanguagename / bcp47-casing }
+ }
+ }
+\cs_gset_nopar:cpn { bcp47.tag }
+ {
+ \prop_item:Ne \l_xpg_langsetup_prop { \languagename / bcp47 }
+ }
+\cs_gset_nopar:cpn { bcp47.main.tag }
+ {
+ \prop_item:Ne \l_xpg_langsetup_prop { \mainlanguagename / bcp47 }
+ }
+
+\cs_new_nopar:Npn \languagevariant
+ {
+ \prop_item:Ne \l_xpg_curropt_prop { \languagename / variant }
+ }
+
+\cs_new:Nn \xpg_set_language_name:n
{
- \cs_if_exist_use:cF{bcp47.#1}
- { \xpg@error{Invalid~ \string\BCPdata\space argument:~ #1} }
-}
-
-% main babel name
-\cs_new_nopar:Npn \mainlanguagename {}
-\cs_new_nopar:Npn \mainbabelname {}
-\cs_new_nopar:cpn {bcp47.main.tag} {}
-\cs_new_nopar:cpn {bcp47.main.language} {}
-\cs_new_nopar:cpn {bcp47.main.region} {}
-\cs_new_nopar:cpn {bcp47.main.script} {}
-\cs_new_nopar:cpn {bcp47.main.variant} {}
-\cs_new_nopar:cpn {bcp47.main.extension.t} {}
-\cs_new_nopar:cpn {bcp47.main.extension.u} {}
-\cs_new_nopar:cpn {bcp47.main.extension.x} {}
-\cs_new_nopar:cpn {bcp47.main.casing} {}
-\cs_new_nopar:Npn \mainlanguagevariant {}%
-% Store main language variant for external packages
-\define@key{xpg@main@langvariant}{variant}{
- \cs_gset_nopar:Npn \mainlanguagevariant {#1}
-}
-
-\cs_new_nopar:Npn \babelname {}
-\def\languagevariant{}
-% Store current language variant for external packages
-\define@key{xpg@set@langvariant}{variant}{
- \def\languagevariant{#1}
-}
-
-\newcommand*\polyglossia@set@language@name[2][]{
- \def\languagename{#2}
- \tl_if_blank:nTF {#1}{
- \ifcsundef{#2@gvar}{\def\languagevariant{}}{\def\languagevariant{\csuse{#2@gvar}}}
- }{
- % Register the language options
- \__xpg_set_language_options:nnn {#2} {#1} {@xpg@set@langvariant}
- \cs_set_eq:cc{#2@var}{languagevariant}
- }%
+ \cs_set:Npn \languagename { #1 }
}
-
-\newcommand*{\resetdefaultlanguage}[2][]{
+\NewDocumentCommand \resetdefaultlanguage { O{} m }
+{
\__xpg_reset_default_language:nn
{\xpg_alias_add_to_option_i:nn{#2}{#1}}
{\xpg_alias_base_lang:n{#2}}
}
-\cs_new:Nn \__xpg_store_bcp_info:nn
-{
- % Store BCP-47 ID and subtags of current language
- \tl_if_blank:nTF {#1}{
- % tag (e.g., en-US)
- \ifcsundef{#2@g.bcp47.tag}{
- \csedef{bcp47.tag}{ \prop_item:Nn{ \g_xpg_langsetup_prop}{ #2 / bcp47 } }
- }{
- \csedef{bcp47.tag}{\csuse{#2@g.bcp47.tag}}
- }
- % language (e.g., en)
- \ifcsundef{#2@g.bcp47.language}{
- \csedef{bcp47.language}{ \prop_item:Nn{ \g_xpg_langsetup_prop}{ #2 / bcp47-language } }
- }{
- \csedef{bcp47.language}{\csuse{#2@g.bcp47.language}}
- }
- % region (e.g., US)
- \ifcsundef{#2@g.bcp47.region}{%
- \csedef{bcp47.region}{ \prop_item:Nn{ \g_xpg_langsetup_prop}{ #2 / bcp47-region } }
- }{
- \csedef{bcp47.region}{\csuse{#2@g.bcp47.region}}%
- }
- % script (e.g., Latn)
- \ifcsundef{#2@g.bcp47.script}{
- \csedef{bcp47.script}{ \prop_item:Nn{ \g_xpg_langsetup_prop}{ #2 / bcp47-script } }
- }{
- \csedef{bcp47.script}{\csuse{#2@g.bcp47.script}}
- }
- % variant (e.g., 1996)
- \ifcsundef{#2@g.bcp47.variant}{
- \csedef{bcp47.variant}{ \prop_item:Nn{ \g_xpg_langsetup_prop}{ #2 / bcp47-variant } }
- }{
- \csedef{bcp47.variant}{\csuse{#2@g.bcp47.variant}}
- }
- % extension.t (tranformation)
- \ifcsundef{#2@g.bcp47.extension.t}{%
- \csedef{bcp47.extension.t}{ \prop_item:Nn{ \g_xpg_langsetup_prop}{ #2 / bcp47-extension-t } }
- }{
- \csedef{bcp47.extension.t}{\csuse{#2@g.bcp47.extension.t}}
- }
- % extension.u (additional locale information)
- \ifcsundef{#2@g.bcp47.extension.u}{%
- \csedef{bcp47.extension.u}{ \prop_item:Nn{ \g_xpg_langsetup_prop}{ #2 / bcp47-extension-u } }
- }{
- \csedef{bcp47.extension.u}{\csuse{#2@g.bcp47.extension.u}}
- }
- % extension.x (private use area)
- \ifcsundef{#2@g.bcp47.extension.x}{
- \csedef{bcp47.extension.x}{ \prop_item:Nn{ \g_xpg_langsetup_prop}{ #2 / bcp47-extension-x } }
- }{
- \csedef{bcp47.extension.x}{\csuse{#2@g.bcp47.extension.x}}
- }
- % casing
- \ifcsundef{#2@g.bcp47.casing}{
- % For casing, we fall back to language if bcp47-casing is not explicitly set
- \cs_set_nopar:cpx {tmpcasing} { \prop_item:Ne \g_xpg_langsetup_prop { #2 / bcp47-casing } }
- \str_if_empty:NTF \tmpcasing
- { \cs_gset_eq:cc {bcp47.casing} {bcp47.language} }
- { \csedef{bcp47.casing}{ \tmpcasing } }
- }{
- \csedef{bcp47.casing}{\csuse{#2@g.bcp47.casing}}
- }
- }{
- \csedef{bcp47.tag}{ \prop_item:Nn{ \g_xpg_langsetup_prop}{ #2 / bcp47 } }
- \csedef{bcp47.language}{ \prop_item:Nn{ \g_xpg_langsetup_prop}{ #2 / bcp47-language } }
- \csedef{bcp47.region}{ \prop_item:Nn{ \g_xpg_langsetup_prop}{ #2 / bcp47-region } }
- \csedef{bcp47.script}{ \prop_item:Nn{ \g_xpg_langsetup_prop}{ #2 / bcp47-script } }
- \csedef{bcp47.variant}{ \prop_item:Nn{ \g_xpg_langsetup_prop}{ #2 / bcp47-variant } }
- \csedef{bcp47.extension.t}{ \prop_item:Nn{ \g_xpg_langsetup_prop}{ #2 / bcp47-extension-t } }
- \csedef{bcp47.extension.u}{ \prop_item:Nn{ \g_xpg_langsetup_prop}{ #2 / bcp47-extension-u } }
- \csedef{bcp47.extension.x}{ \prop_item:Nn{ \g_xpg_langsetup_prop}{ #2 / bcp47-extension-x } }
- % For casing, we fall back to language if bcp47-casing is not explicitly set
- \cs_set_nopar:cpx {tmpcasing} { \prop_item:Ne \g_xpg_langsetup_prop { #2 / bcp47-casing } }
- \str_if_empty:NTF \tmpcasing
- { \cs_gset_eq:cc {bcp47.casing} {bcp47.language} }
- { \csedef{bcp47.casing}{ \tmpcasing } }
- }
-}
-
\cs_new:Nn \__xpg_reset_default_language:nn
{
\xpg_error_if_lang_not_loaded:n{#2}
% disable globalnumbers of previously defined default language
- \csuse{no\xpg@main@language @globalnumbers}
- \csuse{noextras@\xpg@main@language}%
+ \use:c{no\xpg_main_language_tl @globalnumbers}
+ \use:c{noextras@\xpg_main_language_tl}
% This is a hook for external packages which want to access variants
% via babelname (such as biblatex)
- \cs_if_exist_use:c{noextras@bbl@\mainbabelname}%
- \csuse{init@noextras@\xpg@main@language}%
- \polyglossia@set@language@name[#1]{#2}%
- \__xpg_if_LR_str:eF{\prop_item:Ne{\g_xpg_langsetup_prop}{#2/direction}}
+ \cs_if_exist_use:c{noextras@bbl@\mainbabelname}
+ \use:c{init@noextras@\xpg_main_language_tl}
+ \xpg_set_language_name:n { #2 }
+ \__xpg_if_LR_str:eF{\prop_item:Ne{\l_xpg_langsetup_prop}{#2/direction}}
{
\@rlmaintrue\@rl@footnotetrue
}
- \selectlanguage[#1]{#2}%
- \selectbackgroundlanguage{#2}%
- % Store babelname of current language (for external packages such as biblatex)
- \tl_if_blank:nTF {#1}{%
- \ifcsundef{#2@gbabelname}{
- \edef\babelname{\prop_item:Nn{\g_xpg_langsetup_prop}{#2/babelname}}
- }{
- \edef\babelname{\csuse{#2@gbabelname}}
- }
- }{
- \edef\babelname{\prop_item:Nn{\g_xpg_langsetup_prop}{#2/babelname}}
- }
- % Store variant
- \tl_if_blank:nTF {#1}
- {
- \cs_gset_nopar:Npn \mainlanguagevariant {}
- }
- {
- % Register the language options
- \__xpg_set_language_options:nnn {#2} {#1} {@xpg@main@langvariant}
- }
- \csgdef{#2@gvar}{\mainlanguagevariant}
- % Store BCP-47 id of current language
- \__xpg_store_bcp_info:nn {#1}{#2}
+ \selectlanguage[#1]{#2}
+ \selectbackgroundlanguage{#2}
+ \cs_set_nopar:Npe \mainlanguagevariant { \prop_item:Ne \l_xpg_curropt_prop { \xpg_alias_base_lang:n{#2} / variant } }
}
% This saves the normalfont for the latin script since we may change normalfont in other scripts
-\let\normalfontlatin=\normalfont
+\cs_set_eq:cc { normalfontlatin } { normalfont }
% Provide default fonts (as set with \setmainfont, \setsansfont and \setmonofont)
% for Latin scripts and as a fallback for non-Latin scripts.
-\DeclareRobustCommand\xpg@defaultfont@rm{
+\cs_set_protected:Nn \xpg_defaultfont_rm:
+{
\tl_if_empty:NF{\g__fontspec_nfss_enc_tl}{\fontencoding{\g__fontspec_nfss_enc_tl}}
\fontfamily\rmdefault
- \ifdefined\UseHook\UseHook{rmfamily}\fi
+ \hook_use:n { rmfamily }
\selectfont
}
-\DeclareRobustCommand\xpg@defaultfont@sf{
+
+\cs_set_protected:Nn \xpg_defaultfont_sf:
+{
\tl_if_empty:NF{\g__fontspec_nfss_enc_tl}{\fontencoding{\g__fontspec_nfss_enc_tl}}
\fontfamily\sfdefault
- \ifdefined\UseHook\UseHook{sffamily}\fi
+ \hook_use:n { sffamily }
\selectfont
}
-\DeclareRobustCommand\xpg@defaultfont@tt{
+
+\cs_set_protected:Nn \xpg_defaultfont_tt:
+{
\tl_if_empty:NF{\g__fontspec_nfss_enc_tl}{\fontencoding{\g__fontspec_nfss_enc_tl}}
\fontfamily\ttdefault
- \ifdefined\UseHook\UseHook{ttfamily}\fi
+ \hook_use:n { ttfamily }
\selectfont
}
-\def\xpg@patch@fontfamilies{
+\cs_new:Nn \__xpg_patch_fontfamilies:
+{
% This robustifies the redefinitions of \<xx>family (suggestion by Enrico Gregorio)
% e.g. to prevent expansion of the \familytype redefinition in auxiliary files
- \csgappto{rmfamily~}{\def\familytype{rm}}
- \csgappto{sffamily~}{\def\familytype{sf}}
- \csgappto{ttfamily~}{\def\familytype{tt}}
+ \tl_put_right:cn {rmfamily~} {\tl_set:Nn \familytype {rm}}
+ \tl_put_right:cn {sffamily~} {\tl_set:Nn \familytype {sf}}
+ \tl_put_right:cn {ttfamily~} {\tl_set:Nn \familytype {tt}}
}
% These switches activate the default fonts
% Note that a simple \let\rmfamilylatin=\rmfamily
% does not work reliably (see #24)
-\cs_gset_eq:cc{rmfamilylatin}{xpg@defaultfont@rm}
-\cs_gset_eq:cc{sffamilylatin}{xpg@defaultfont@sf}
-\cs_gset_eq:cc{ttfamilylatin}{xpg@defaultfont@tt}
-
-\def\xpg@set@familydefault{
- % We need the \edef route here in order
- % to detect both \renewcommand and \let
- % changes.
- \edef\tempa{\familydefault}
- \edef\tempb{\sfdefault}
- \ifcsequal{tempa}{tempb}
- {\def\familytype{sf}}
- {\edef\tempb{\ttdefault}
- \ifcsequal{tempa}{tempb}
- {\def\familytype{tt}}
- {\def\familytype{rm}}}
- \xpg@patch@fontfamilies
+\cs_set_eq:cc{rmfamilylatin}{xpg_defaultfont_rm:}
+\cs_set_eq:cc{sffamilylatin}{xpg_defaultfont_sf:}
+\cs_set_eq:cc{ttfamilylatin}{xpg_defaultfont_tt:}
+
+\cs_new:Nn \xpg_set_familydefault:
+{
+ \tl_set:Ne \l_tmpa_tl { \familydefault }
+ \tl_set:Ne \l_tmpb_tl { \sfdefault }
+ \tl_if_eq:NNTF \l_tmpa_tl \l_tmpb_tl
+ { \tl_set:Nn \familytype {sf} }
+ { \tl_set_eq:NN \l_tmpb_tl \ttdefault
+ \tl_if_eq:NNTF \l_tmpa_tl \l_tmpb_tl
+ { \tl_set:Nn \familytype {tt} }
+ { \tl_set:Nn \familytype {rm} }
+ }
+ \__xpg_patch_fontfamilies:
% This (re-)saves the normalfont for the latin script since we may
% change normalfont in other scripts
- \let\normalfontlatin=\normalfont
+ \cs_set_eq:cc{ normalfontlatin }{ normalfont }
% And for all cases, we also reset \<xx>familylatin
- \cs_gset_eq:cc{rmfamilylatin}{xpg@defaultfont@rm}
- \cs_gset_eq:cc{sffamilylatin}{xpg@defaultfont@sf}
- \cs_gset_eq:cc{ttfamilylatin}{xpg@defaultfont@tt}
-}
-
-\def\resetfontlatin{
- \DeclareRobustCommand\rmfamily{\xpg@defaultfont@rm}
- \DeclareRobustCommand\sffamily{\xpg@defaultfont@sf}
- \DeclareRobustCommand\ttfamily{\xpg@defaultfont@tt}
- \xpg@patch@fontfamilies
- \global\let\normalfont=\normalfontlatin
-}
-
-\def\selectfontfamilylatin{
- \def\tmp@tt{tt}\def\tmp@sf{sf}
- \ifx\familytype\tmp@tt
- \ttfamilylatin
- \else\ifx\familytype\tmp@sf
- \sffamilylatin
- \else\rmfamilylatin\fi\fi}
-
-\def\xpg@select@fontfamily#1{
- \def\tmp@tt{tt}\def\tmp@sf{sf}
- \ifx\familytype\tmp@tt
- \__xpg_use_or_warn:c{#1@font@tt}
- \else\ifx\familytype\tmp@sf
- \__xpg_use_or_warn:c{#1@font@sf}
- \else\__xpg_use_or_warn:c{#1@font@rm}\fi\fi}
-
-\def\xpg@set@normalfont#1{
- \letcs{\rmfamily}{#1@font@rm}
- \letcs{\sffamily}{#1@font@sf}
- \letcs{\ttfamily}{#1@font@tt}
- \robustify\rmfamily
- \robustify\sffamily
- \robustify\ttfamily
- \gdef\normalfont{\protect\xpg@select@fontfamily{#1}
- \fontseries{\seriesdefault}\selectfont
- \fontshape{\shapedefault}
- \ifdefined\UseHook\UseHook{normalfont}\fi
- \selectfont}
- \gdef\reset@font{\protect\normalfont}
-}
-
-\let\@@fterindentfalse\@afterindentfalse
-\def\french@indent{
- \let\@afterindentfalse\@afterindenttrue
+ \cs_set_eq:cc{ rmfamilylatin }{ xpg_defaultfont_rm: }
+ \cs_set_eq:cc{ sffamilylatin }{ xpg_defaultfont_sf: }
+ \cs_set_eq:cc{ ttfamilylatin }{ xpg_defaultfont_tt: }
+}
+
+\cs_set_nopar:Nn \xpg_select_fontfamily:n
+{
+ \str_if_eq:VnTF \familytype { tt }
+ { \__xpg_use_or_warn:c { #1@font@tt } }
+ { \str_if_eq:VnTF \familytype { sf }
+ { \__xpg_use_or_warn:c { #1@font@sf } }
+ { \__xpg_use_or_warn:c { #1@font@rm } }
+ }
+}
+
+\cs_set_protected:Npn \xpg_select_default_fontfamily:n #1
+ {
+ \tl_set:Ne \l_tmpa_tl { \familydefault }
+ \tl_set:Ne \l_tmpb_tl { \sfdefault }
+ \tl_if_eq:NNTF \l_tmpa_tl \l_tmpb_tl
+ { \tl_set:Nn \familytype {sf} }
+ { \tl_set_eq:NN \l_tmpb_tl \ttdefault
+ \tl_if_eq:NNTF \l_tmpa_tl \l_tmpb_tl
+ { \tl_set:Nn \familytype {tt} }
+ { \tl_set:Nn \familytype {rm} }
+ }
+ \xpg_select_fontfamily:n{#1}
+ }
+
+\cs_new_nopar:Nn \xpg_set_normalfont:n
+{
+ \cs_set_eq:cc { rmfamily } { #1@font@rm }
+ \cs_set_eq:cc { sffamily } { #1@font@sf }
+ \cs_set_eq:cc { ttfamily } { #1@font@tt }
+ \cs_set_nopar:Npn \normalfont
+ { \xpg_select_default_fontfamily:n {#1}
+ \fontseries{\seriesdefault}\selectfont
+ \fontshape{\shapedefault}
+ \hook_use:n { normalfont }
+ \selectfont
+ }
+ \cs_set_nopar:Npn \reset@font {\protect\normalfont}
+}
+
+\cs_gset_eq:cc { @@fterindentfalse } { @afterindentfalse }
+\cs_new_nopar:Nn \__xpg_french_indent:
+{
+ \cs_set_eq:cc { @afterindentfalse } { @afterindenttrue }
\@afterindenttrue
}
-\def\nofrench@indent{
- \let\@afterindentfalse\@@fterindentfalse
+\cs_new_nopar:Nn \__xpg_no_french_indent:
+{
+ \cs_set_eq:cc { @afterindentfalse } { @@fterindentfalse }
\@afterindentfalse
}
@@ -1631,10 +1584,10 @@
\cs_new:Nn \__xpg_select_background_language:n
{
- \str_if_eq:eeTF{\prop_item:Nn{\g_xpg_langsetup_prop}{#1/lcscript}}{latin}
+ \str_if_eq:eeTF { \prop_item:Nn{\l_xpg_langsetup_prop}{#1/lcscript} } { latin }
{}
- {\xpg@set@normalfont{#1}}
- \csuse{#1@globalnumbers}
+ { \xpg_set_normalfont:n{#1} }
+ \use:c{#1@globalnumbers}
}
\cs_generate_variant:Nn \__xpg_select_background_language:n {e}
% Declare secondary language #2 with language options #1
@@ -1645,7 +1598,7 @@
\__xpg_load_lang_definition:ee {#1} {#2}
% define environment and command if not alias
\str_if_eq:eeT {\prop_item:Ne \__xpg_alias {#2/target}} {#2} {
- \use:c{\prop_item:Ne{\g_xpg_langsetup_prop}
+ \use:c{\prop_item:Ne{\l_xpg_langsetup_prop}
{#2/DefineCommandsCmd}}
{#2}
}
@@ -1658,28 +1611,13 @@
\cs_new:Nn \__xpg_set_otherlanguage:nn
{
\__xpg_register_language:nn{#1}{#2}
- % If a variant is set, store it.
- \gdef\otherlanguagevariant{}
- % Register the language options
- \__xpg_set_language_options:nnn {#2} {#1} {@xpg@other@langvariant}
-
- \csgdef{#2@gvar}{\otherlanguagevariant}
- \prop_get:NeNT \g_xpg_langsetup_prop {#2/babelname} \l_tmpa_tl
- { \xdef\otherlanguagebabelname{\l_tmpa_tl} }
- \cs_gset_eq:cc{#2@gbabelname}{otherlanguagebabelname}
}
\cs_generate_variant:Nn \__xpg_set_otherlanguage:nn { ee }
-
-% Store main language variant for external packages
-\define@key{xpg@other@langvariant}{variant}{
- \gdef\otherlanguagevariant{#1}
-}
-
\NewDocumentCommand \setotherlanguages { m }
- {
+{
\clist_map_function:eN { #1 } \setotherlanguage
- }
+}
\cs_set:Nn \xpg_common_language:
{% FIXME is this really needed???
@@ -1702,7 +1640,8 @@
% for specific (esp. tag-based) aliases
% where \text<alias> would cause clashes
% (e.g., \textit)
-\newcommand\textlang[3][]{
+\NewDocumentCommand \textlang { O{} m +m }
+{
\__xpg_textlanguage:een {#1} {#2} {#3}
}
@@ -1711,45 +1650,21 @@
% inside case changing commands (e.g. \MakeUppercase)
\tl_put_right:Nn \l_text_case_exclude_arg_tl { \textlang }
-% Alias to {<lang>}, but more suitable
-% for specific (esp. tag-based) aliases
-% where {<alias>} would cause clashes
-% (e.g., \fi)
-\DeclareEnvironmentCopy { lang } { otherlanguage }
-
% wrapper for foreignlanguage and otherlanguage*
-\newcommand*\polyglossia@setforeignlanguage[2][]{
- \select@@language[#1]{#2}
+\cs_new_nopar:Nn \xpg_set_foreign_language:nn
+{
+ \xpg_select_language:nn { #1 } { #2 }
\__xpg_register_language:nn{#1}{#2}
- % Store babelname of current language (for external packages such as biblatex)
- \tl_if_blank:nTF {#1}{
- \ifcsundef{#2@gbabelname}{
- \edef\babelname{\prop_item:Nn{\g_xpg_langsetup_prop}{#2/babelname}}
- }{
- \edef\babelname{\csuse{#2@gbabelname}}
- }
- }{
- \edef\babelname{\prop_item:Nn{\g_xpg_langsetup_prop}{#2/babelname}}
- }
- % Store BCP-47 id of current language
- \__xpg_store_bcp_info:nn {#1}{#2}
-}
-
-% Expandable lowercasing. We use this to assure keyval
-% options are lowercased (also when used in \MakeUppercase
-% contexts e.g. in headings)
-% Macro adapted from tudscr.sty
-\newcommand*\xpg@str@lowercase[2]{
- \protected@edef#1{
- \lowercase{\def\noexpand#1{#2}}
- }#1
}
% lowercase options before passing to setkeys
-\cs_new:Nn \__xpg_set_keys:nn
+\NewDocumentCommand \SetGlossOptions { m m }
{
- \xpg@str@lowercase{\xpg@tmp@opts}{#2}
- \exp_args:Nne \setkeys{#1}{\xpg@tmp@opts}
+ % \text_lowercase:n fully expands
+ % (as opposed to \str_lowercase:n)
+ \use:c { xpg_#1_default_options_tl }
+ \exp_args:Ne \keys_set:ne{ polyglossia / gloss / #1 }{ \text_lowercase:n {#2} }
+ \tl_set:Ne \xpg__current_options_tl { #2 }
}
% joint code of \foreignlanguage, otherlanguage*
@@ -1759,56 +1674,25 @@
\cs_new:Nn \xpg_otherlanguage:nn
{
\xpg_error_if_lang_not_loaded:n{#2}
- \__xpg_set_keys:nn{#2}{#1}
- \polyglossia@setforeignlanguage[#1]{#2}
+ \SetGlossOptions{#2}{#1}
+ \xpg_set_foreign_language:nn { #1 } { #2 }
% Hook for external packages such as biblatex
\polyglossia@language@switched
% buggy restoration heure
- \csuse{inlineextras@#2}
+ \use:c{inlineextras@#2}
% This is a hook for external packages which want to access variants
% via babelname (such as biblatex)
\cs_if_exist_use:c{inlineextras@bbl@\babelname}
}
\DeclareDocumentCommand { \foreignlanguage } { O{} m +m }
- {
+{
\__xpg_foreignlanguage:eeen {#1} {#2} {\xpg_alias_base_lang:n{#2}} {#3}
- }
+}
% prevent case changing of language name in \foreignlanguage
\tl_put_right:Nn \l_text_case_exclude_arg_tl { \foreignlanguage }
-% Direct access to polyglossia@setforeignlanguage
-% used in captions
-\newcommand{\setforeignlanguage}[2][]
-{
- \polyglossia@setforeignlanguage[#1]{#2}
-}
-
-% Stack to store matrix languages
-\seq_new:N \__xpg_current_matrixlang_stack
-
-% Store embedding language when an embedded language is switched to
-\cs_new_nopar:Nn \__xpg_store_matrixlang:
-{
- \seq_gput_left:Nn \__xpg_current_matrixlang_stack \languagename
-}
-
-% When an embedded language is closed, reset to the embedding language
-% and remove stored matrix language from stack
-\cs_new_nopar:Nn \__xpg_reset_to_matrixlang:
-{
- % if stack is empty, use main language
- \seq_gpop_left:NNTF \__xpg_current_matrixlang_stack \l_tmpa_tl
- { \cs_set_eq:NN \__xpg_current_matrixlang \l_tmpa_tl }
- { \cs_set_eq:NN \__xpg_current_matrixlang \mainlanguagename }
- % Reset the language's/script's font families if the embedding script is latin
- \str_if_eq:eeT{\prop_item:Ne{\g_xpg_langsetup_prop}{\__xpg_current_matrixlang/lcscript}}{latin}
- {\resetfontlatin}
- % In case a \<lang>font is defined, re-activate that
- \exp_args:Ne \xpg@set@normalfont{\__xpg_current_matrixlang}
-}
-
% internal wrapper for foreign language
% #1 option
% #2 alias
@@ -1820,12 +1704,11 @@
{
\msg_show:nnn { polyglossia } { languagenotloaded } {#2}
}{
- \__xpg_store_matrixlang:
\group_begin:
\xpg_otherlanguage:nn{ \xpg_alias_add_to_option_i:nn{#2}{#1} }{ #3 }
\__xpg_lang_set_text_direction:nn{#3}{#4}
\group_end:
- \__xpg_reset_to_matrixlang:
+ \cs_if_exist_use:c{ nestedextras@\languagename }
}
}
\cs_generate_variant:Nn \__xpg_foreignlanguage:nnnn {eeen}
@@ -1834,11 +1717,10 @@
% otherlanguage* is the environment equivalent of \foreignlanguage
\DeclareDocumentEnvironment { otherlanguage* } { O{} m }
{
- \__xpg_store_matrixlang:
\__xpg_otherlanguage:eee { #1 } { #2 } { \xpg_alias_base_lang:n { #2 } }
}{
- \egroup% \group_end: does not work here!
- \__xpg_reset_to_matrixlang:
+ \c_group_end_token% \group_end: does not work here!
+ \cs_if_exist_use:c{ nestedextras@\languagename }
}
% internal wrapper
@@ -1853,7 +1735,7 @@
}{
\xpg_otherlanguage:nn{ \xpg_alias_add_to_option_i:nn{#2}{#1} }{ #3 }
\__xpg_lang_set_text_direction:nn{#3}%
- \bgroup% \group_begin: does not work here!
+ \c_group_begin_token% \group_begin: does not work here!
}
}
\cs_generate_variant:Nn \__xpg_otherlanguage:nnn { eee }
@@ -1869,9 +1751,6 @@
}
\cs_generate_variant:Nn \__xpg_textlanguage:nnn {een}
-% Track whether we are in an inline lang (\text...) switch
-\bool_new:N \l__xpg_inline_lang_bool
-
% use by \text<lang> and \textlang. Equivalent to \foreignlanguage,
% except that dates are localized.
% #1: option
@@ -1885,41 +1764,41 @@
\msg_show:nnn { polyglossia } { languagenotloaded } {#2}
}
{
- \__xpg_store_matrixlang:
\group_begin:
- \bool_set_true:N \l__xpg_inline_lang_bool
\xpg_otherlanguage:nn{#1}{#3}
- \csuse{date#3}
+ \use:c{date#3}
% This is a hook for external packages which want to access variants
% via babelname (such as biblatex)
\cs_if_exist_use:c{date@bbl@\babelname}
\__xpg_lang_set_text_direction:nn{#3}{#4}
\group_end:
- \__xpg_reset_to_matrixlang:
+ \cs_if_exist_use:c{ nestedextras@\languagename }
}
}
\cs_generate_variant:Nn \__xpg_textlanguage:nnnn {nnen}
% Define language-specific hyphenation exceptions
-\newcommand\pghyphenation[3][]{
- \bgroup
- \xpg_error_if_lang_not_loaded:n{#2}
- \setkeys{#2}{#1}
- \select@@language[#1]{#2}
- \hyphenation{#3}
- \egroup
-}
+\NewDocumentCommand \pghyphenation {O{} m m}
+ {
+ \begin{hyphenrules}[#1]{#2}
+ \hyphenation{#3}
+ \end{hyphenrules}
+ }
% Hook that other package authors can use
% (for instance biblatex):
% Do not rename!
-\newcommand*{\xpg@hook@setlanguage}{}
+\cs_set_nopar:Npn \xpg@hook@setlanguage {}
-\def\xpg@pop@language@i#1#2{
- \xpg@set@language@aux[#1]{#2}
+\cs_set_nopar:Nn \__xpg_pop_language:nn
+{
+ \xpg_set_language_aux:nn { #1 } { #2 }
\xpg@hook@setlanguage
- \let\emp@langname\@undefined}
+% FIXME This seems to be a very old relict.
+% The macro is nowhere used. Probably remove.
+% \let\emp@langname\@undefined
+}
\DeclareDocumentCommand \selectlanguage {s O{} m}
{
@@ -1938,131 +1817,125 @@
\cs_new:Nn \__xpg_select_language:nnn
{
% Register the language options
- \__xpg_set_language_options:nnn {#3} {#2} {@xpg@set@langvariant}
+ \__xpg_set_language_options:nn {#3} {#2}
\IfBooleanTF { #1 } % The starred variant does not write to the aux
{
- \xpg@set@language@nonaux[#2]{#3}
+ \xpg_set_language_nonaux:nn { #2 } { #3 }
}{
- \cs_set_nopar:Npe \xpg@pop@language { \exp_not:N \xpg@pop@language@i {#2} {#3} }
- \group_insert_after:N \xpg@pop@language
- \xpg@set@language@aux[#2]{#3}
+ \cs_set_nopar:Ne \xpg_pop_language: { \exp_not:N \__xpg_pop_language:nn { #2 } { #3 } }
+ \group_insert_after:N \xpg_pop_language:
+ \xpg_set_language_aux:nn { #2 } { #3 }
}
- \__xpg_register_language:nn{#2}{#3}
+ \__xpg_register_language:nn { #2 } { #3 }
}
\cs_generate_variant:Nn \__xpg_select_language:nnn { nee, nne }
-
% set lang option #2 for lang #1
-\cs_new:Nn \__xpg_set_language_options:nnn
+\cs_new:Nn \__xpg_set_language_options:nn
{
- \tl_if_blank:nF {#2}
+ \cs_if_exist:cT { xpg_#1_default_options_prop }
{
- % If the optional argument sets a value for the key “variant”, copy it to xpg@langvariant
- \clist_map_inline:nn { #2 } {
- \xpg@parsevariantkeyvalue##1=#3:#1\relax
- }%
- \__xpg_set_keys:nn{#1}{#2}
+ \prop_concat:ccc { l_xpg_curropt_prop } { l_xpg_curropt_prop }
+ { xpg_#1_default_options_prop }
}
+ \xpg__keyval_parser:eeN { #2 } { #1 } \l_xpg_curropt_prop
+ \SetGlossOptions{#1}{#2}
}
% Initialize default language options, so that
% \iflanguageoption has the info it needs also
% for default settings
-\newcommand*\xpg@initialize@gloss@options[2]{
- \__xpg_set_language_options:nnn {#1} {#2} {@xpg@set@langvariant}
-}
+\NewDocumentCommand \InitializeGlossOptions { m m }
+{
+ \tl_new:c { xpg_#1_default_options_tl }
+ \prop_new:c { xpg_#1_default_options_prop }
+ \keys_precompile:nec { polyglossia / gloss / #1 }
+ { \text_lowercase:n { #2, \xpg__tmp_default_options_tl } }
+ { xpg_#1_default_options_tl }
+ \xpg__keyval_parser:enc { #2, \xpg__tmp_default_options_tl } { #1 }
+ { xpg_#1_default_options_prop }
+ \prop_concat:ccc { l_xpg_curropt_prop } { l_xpg_curropt_prop }
+ { xpg_#1_default_options_prop }
+ \use:c { xpg_#1_default_options_tl }
+ \__xpg_set_language_options:nn {#1} {#2}
+}
+\tl_new:N \xpg__tmp_default_options_tl
+\tl_new:N \xpg__current_options_tl
+\cs_generate_variant:Nn \keys_precompile:nnN { nec }
% Record synonymous keyvals such as variant=us and variant=american
-% Syntax: \xpg@set@alias@values{<lang>}{<key>}{<val>}{<alias vals, comma-separated>}
-\newcommand*\xpg@set@alias@values[4]{%
- \prop_if_exist:cF { xpg@alias@keyvals@#1@#3 }
- { \prop_new:c {xpg@alias@keyvals@#1@#3} }
- \prop_put:cnn { xpg@alias@keyvals@#1@#3 }
- {#2}{#4}
- \prop_if_exist:cF { xpg@alias@keyvals@#1@#4 }
- { \prop_new:c {xpg@alias@keyvals@#1@#4} }
- \prop_put:cnn { xpg@alias@keyvals@#1@#4 }
- {#2}{#3}
-}
-
-% Patch xkeyval to record default values of keys
-\pretocmd{\XKV@define@default}{%
- \csgdef{xpg@default@opt@\XKV@header #1}{#2}
-}{}{\xpg@warning{Patching xkeyval failed!}}
-
-% Helper to get and register option keyvals
-\def\xpg@parsevariantkeyvalue#1=#2@#3:#4\relax{
- \def\@tmpa{#1}
- \def\@tmpb{variant}
- % variant values are stored in specific macros
- % (\xpg@main@langvariant, \xpg@other@langvariant
- % and \xpg@set@langvariant)
- \ifx\@tmpa\@tmpb\setkeys{#3}{#1=#2}\fi
- \tl_if_empty:nTF{#2}
- {
- \ifcsdef{xpg@default@opt@KV@#4@#1}
- {\xpg@store@opt@keyval#1:\csuse{xpg@default@opt@KV@#4@#1}=:#4\relax}
- {}%
- }
- { \xpg@store@opt@keyval#1:#2:#4\relax }
-}%
-
-% Store option keys and values
-% This strips trailing '=' from values.
-\def\xpg@store@opt@keyval#1:#2=:#3\relax{
- \prop_if_exist:cF { xpg@current@options@#3 }
- { \prop_new:c {xpg@current@options@#3} }
- \prop_put:cnn { xpg@current@options@#3 }
- {#1}{#2}
+% Syntax: \SetLanguageAliasValues{<lang>}{<key>}{<alias vals, comma-separated>}
+\int_new:N \l_xpg_alias_keyvals_int
+\int_set:Nn \l_xpg_alias_keyvals_int { 2 }
+\NewDocumentCommand \SetLanguageAliasValues { m m m }
+{
+ \clist_map_inline:nn { #3 }
+ {
+ \int_const:cn { c_xpg_alias_keyvals_#1_#2_##1_int } { \l_xpg_alias_keyvals_int }
+ }
+ \int_incr:N \l_xpg_alias_keyvals_int
}
+\cs_new:Npn \xpg__keyval_parser:nnN #1 #2 #3 % #1 = key-vals, #2 = language, #3 = prop
+ {
+ \keyval_parse:nnn
+ { \xpg__keyval_parser_default:nnn { #2 } { #3 } }
+ { \xpg__keyval_parser_nondefault:nnnn { #2 } { #3 } }
+ { #1 }
+ }
+\cs_generate_variant:Nn \xpg__keyval_parser:nnN { eeN, enc }
+
+\cs_new:Npn \xpg__keyval_parser_default:nnn #1 #2 #3 % #1 = lang, #2 = prop, #3 = key
+ {
+ \str_set:Nn \l_tempa_str { #1 / #3 }
+ \str_concat:NNN \l_tempa_str \c__keys_default_root_str \l_tempa_str
+ \prop_put:Nne #2 { #1 / #3 } { \use:c { \l_tempa_str } }
+ }
+
+\cs_new:Npn \xpg__keyval_parser_nondefault:nnnn #1 #2 #3 #4 % #1 = lang, #2 = prop, #3 = key, #4 = value
+ {
+ \prop_put:Nnn #2 { #1 / #3 } { #4 }
+ }
\prg_set_conditional:Npnn \__xpg_check_option_value:NNN #1#2#3 { p , T , F , TF }
-{
- \prop_get:cnNTF {xpg@current@options@#1} {#2} \l_tmpa_tl
- {
- \str_if_eq:eeTF{\l_tmpa_tl}{#3}
- {\prg_return_true:}
+ {
+ \bool_lazy_or:nnTF
+ {
+ \str_if_eq_p:ee { \prop_item:Nn \l_xpg_curropt_prop { #1 / #2 } } { #3 }
+ } {
+ \int_compare_p:nNn
{
- \prop_get:cnNTF {xpg@alias@keyvals@#1@#3} {#2} \l_tmpb_tl
- {
- \clist_set:Ne{\l_tmpa_clist}{\l_tmpb_tl}
- \providetoggle{xpgvalfound}
- \togglefalse{xpgvalfound}
- \clist_map_inline:Nn \l_tmpa_clist {
- \str_if_eq:eeT{##1}{\l_tmpa_tl}
- { \toggletrue{xpgvalfound} }
- }
- \iftoggle{xpgvalfound}{\prg_return_true:}{\prg_return_false:}
- }
- {
- \prg_return_false:
- }
- }
- }
- {
- \prg_return_false:
- }
+ \cs_if_exist_use:cF { c_xpg_alias_keyvals_#1_#2_#3_int } { 0 }
+ } = {
+ \cs_if_exist_use:cF { c_xpg_alias_keyvals_#1_#2_\prop_item:Nn \l_xpg_curropt_prop { #1 / #2 }_int } { 1 }
+ }
+ } { \prg_return_true: } { \prg_return_false: }
+ }
+
+\prg_set_conditional:Npnn \xpg_if_main_language:n #1 { T, F, TF }
+{
+ \str_if_eq:VnTF \xpg_main_language_tl { #1 }
+ { \prg_return_true: }
+ { \prg_return_false: }
}
+\cs_set_eq:NN \IfMainLanguageTF \xpg_if_main_language:nTF
+
+\cs_set_eq:NN \IfMainLanguageT \xpg_if_main_language:nT
+
+\cs_set_eq:NN \IfMainLanguageF \xpg_if_main_language:nF
+
% Test if option value is set
\DeclareDocumentCommand \iflanguageoption { m m m m m }
{
\__xpg_check_option_value:NNNTF{#1}{#2}{#3}{#4}{#5}
}
-
-% Append any variant to csv list of variants
-\define@key{xpg@langvariant}{variant}{
- \clist_if_in:NeF \xpg@vloaded {#1}{
- \clist_gput_right:Ne \xpg@vloaded {#1}
- }
-}
-
% Test if language is loaded
\DeclareDocumentCommand \iflanguageloaded { m m m }
{
- \AddToHook{begindocument/end}{
+ \hook_gput_code:nnn {begindocument/end} {.}
+ {
\clist_if_in:NeTF \xpg@loaded{#1}{#2}{#3}
}
}
@@ -2070,7 +1943,8 @@
% Same for babellanguage is loaded
\DeclareDocumentCommand \ifbabellanguageloaded { m m m }
{
- \AddToHook{begindocument/end}{
+ \hook_gput_code:nnn {begindocument/end} {.}
+ {
\clist_if_in:NeTF \xpg@bloaded{#1}{#2}{#3}
}
}
@@ -2078,7 +1952,8 @@
% Same for languageid
\DeclareDocumentCommand \iflanguageidloaded { m m m m }
{
- \AddToHook{begindocument/end}{
+ \hook_gput_code:nnn {begindocument/end} {.}
+ {
\str_case:nnTF {#1}
{
{bcp-47} { \clist_if_in:NeTF \xpg@bcp@loaded{#2}{#3}{#4} }
@@ -2086,7 +1961,7 @@
}
{}
{
- \xpg@error{Invalid~ \string\iflanguageidloaded\space argument:~ #1}
+ \xpg_ill_arg_msg:nn { #1 } { \iflanguageidloaded }
}
}%
}
@@ -2116,53 +1991,51 @@
}
-\newcommand*{\xpg@set@language@nonaux}[2][]{
- \@select@language[#1]{#2}
+\cs_new_nopar:Nn \xpg_set_language_nonaux:nn
+{
+ \__xpg_start_language:nn { #1 } { #2 }
}
-\newcommand*{\xpg@set@language@aux}[2][]{
- % Store babelname of current language (for external packages such as biblatex)
- \tl_if_blank:nTF {#1}{
- \ifcsundef{#2@gbabelname}{
- \edef\babelname{\prop_item:Nn{\g_xpg_langsetup_prop}{#2/babelname}}
- }{
- \edef\babelname{\csuse{#2@gbabelname}}
- }
- }{
- \edef\babelname{\prop_item:Nn{\g_xpg_langsetup_prop}{#2/babelname}}
- }
- % Store BCP-47 id of current language
- \__xpg_store_bcp_info:nn {#1}{#2}
- \@select@language[#1]{#2}
+\cs_new_nopar:Nn \xpg_set_language_aux:nn
+{
+ \__xpg_start_language:nn { #1 } { #2 }
% Write to the aux
- \xpg@set@language@only@aux[#1]{#2}
+ \xpg_set_language_only_aux:nn { #1 } { #2 }
}
-\newcommand*{\xpg@set@language@only@aux}[2][]{
+\cs_new_nopar:Nn \xpg_set_language_only_aux:nn
+{
% Write to the aux (toc files)
\if@filesw
\addtocontents{toc}{\selectlanguage*[#1]{#2}}
\fi
}
-\AtBeginDocument{
- \if@filesw
- \immediate\write\@mainaux
- {\ProvideDocumentCommand\selectlanguage{sO{}m}{}}
- \fi
-}
+\hook_gput_code:nnn {begindocument} {.}
+ {
+ \if@filesw
+ \immediate\write\@mainaux
+ {\ProvideDocumentCommand\selectlanguage{sO{}m}{}}
+ \fi
-% Since captions might float to other language regions,
-% we need to change the language here (#542)
-\AddToHook{cmd/caption/before}{
- \ifhmode\unskip\fi
- \addtocontents{lof}{\protect\setforeignlanguage{\languagename}}
- \addtocontents{lot}{\protect\setforeignlanguage{\languagename}}
-}
+ % we need to redefine \@caption to intrude the currently active language
+ % for the lot/lof.
+ % Since captions might float to other language regions,
+ % we need to specify the language here (#542)
+ \cs_set_eq:cc { __xpg_save_caption:n } { @caption }
+ \cs_new:Npn \xpg@current@opts {}
+
+ \cs_set:Npn \@caption #1 [#2] #3
+ {
+ % we might be outside of l3 catcode regime
+ \tl_set_eq:NN \xpg@current@opts \xpg__current_options_tl
+ \__xpg_save_caption:n { #1 } [ { \selectlanguage*[\xpg@current@opts]{\languagename}#2 } ] { #3 }
+ }
+ }
% check if language is defined
-\prg_set_conditional:Npnn \__xpg_check_if_exist_l@:n #1 { F, TF }
+\prg_set_conditional:Npnn \__xpg_pattern_check_if_exists:n #1 { F, TF }
{
\bool_lazy_and:nnTF
{ \cs_if_exist_p:c { l@#1 } }
@@ -2171,82 +2044,125 @@
{ \prg_return_false: }
}
-\def\polyglossia@luatex@load@lang#1{
+\cs_new_nopar:Nn \__xpg_luatex_load_lang:n
+{
% if \l@#1 is not properly defined, call lua function newloader(#1),
% and assign the returned number to \l@#1
- \__xpg_check_if_exist_l@:nF {#1}
+ \__xpg_pattern_check_if_exists:nF {#1}
{
\directlua { token.set_char('l@#1', polyglossia.newloader'#1') }
}
}
-% This check is also used by biblatex, so don't
-% rename silently.
-\newcommand\xpg@ifdefined[3]{
+% check if language is defined
+\prg_set_conditional:Npnn \xpg_if_language_defined:n #1 { T, F, TF }
+{
% With luatex, we first need to define \l@#1.
\sys_if_engine_luatex:T
{
- \polyglossia@luatex@load@lang{#1}
+ \__xpg_luatex_load_lang:n {#1}
}
- \__xpg_check_if_exist_l@:nTF{#1}{#2}{#3}
+ \__xpg_pattern_check_if_exists:nTF{#1}
+ { \prg_return_true: }
+ { \prg_return_false: }
+}
+
+% Aliases for gloss files
+\cs_gset_eq:cc { IfLanguageDefinedTF } { xpg_if_language_defined:nTF }
+\cs_gset_eq:cc { IfLanguageDefinedT } { xpg_if_language_defined:nT }
+\cs_gset_eq:cc { IfLanguageDefinedF } { xpg_if_language_defined:nF }
+
+% Check if patterns for language #1 is defined. If not, try
+% the comma-separated list of fallbacks in #2
+\NewDocumentCommand \TryPatternWithFallback { m m }
+{
+ \xpg_if_language_defined:nF { #1 }
+ {
+ \clist_clear_new:N \l_xpg_lang_patterns
+ \clist_set:Ne \l_xpg_lang_patterns { #2 }
+ \bool_set_false:N \l_tmpa_bool
+ \clist_map_inline:Nn \l_xpg_lang_patterns
+ {
+ \xpg_if_language_defined:nT { ##1 }
+ {
+ \cs_gset_eq:cc { l@#1 } { l@##1 }
+ \bool_set_true:N \l_tmpa_bool
+ \clist_map_break:
+ }
+ }
+ \bool_if:NF \l_tmpa_bool
+ {
+ \xpg_warning_msg:n
+ {No~ hyphenation~ patterns~ for~ #1~ found \iow_newline:
+ Falling~ back~ to~ the~ default~ patterns~ (=~English)!}
+ \exp_args:Nc \adddialect {l@#1} 0
+ }
+ }
}
+% This old term is used by biblatex, so don't drop!
+\cs_gset_eq:cc { xpg@ifdefined } { xpg_if_language_defined:nTF }
+
% Set \bbl@hyphendata@\the\language, which is (lua)babel's
% hyphenation pattern hook
% FIXME Clarifiy why/when this is needed.
-\newcommand*\xpg@set@bbl@hyphendata[1]{
+\cs_new:Nn \xpg_set_bbl_hyphendata:n
+{
\sys_if_engine_luatex:T
{
- \ifcsdef{bbl@hyphendata@#1}{}{
- \global\@namedef{bbl@hyphendata@\the\language}{}
+ \cs_if_exist:cF {bbl@hyphendata@#1}
+ {
+ \cs_gset:cpn {bbl@hyphendata@\the\language} {}
}
}
}
% Set hyphenation patterns for a given language. This does the right
% thing both for XeTeX and LuaTeX
-\newcommand*\xpg@set@hyphenation@patterns[1]{
- \sys_if_engine_luatex:T { \polyglossia@luatex@load@lang{#1} }
+\cs_new:Nn \xpg_set_hyphenation_patterns:n
+{
+ \sys_if_engine_luatex:T { \__xpg_luatex_load_lang:n {#1} }
\language=\csname l@#1\endcsname
}
-\newcommand*\@select@language[2][]{
+\cs_new:Nn \__xpg_start_language:nn
+{
% hook for compatibility with biblatex
- \select@language{#2}
- \xpg@set@bbl@hyphendata{\the\language}
+ \select@language { #2 }
+ \xpg_set_bbl_hyphendata:n {\the\language}
\xpg_initial_setup:
- \select@@language[#1]{#2}%
+ \xpg_select_language:nn { #1 } { #2 }
% Hook for external packages such as biblatex
- \polyglossia@language@switched%
- \__xpg_lang_set_par_direction:n{#2}
- \csuse{captions#2}%
- \csuse{date#2}%
+ \polyglossia@language@switched
+ \__xpg_lang_set_par_direction:n {#2}
+ \use:c {captions#2}
+ \use:c {date#2}
% These are hooks for external packages which want to access variants
% via babelname (such as biblatex)
- \cs_if_exist_use:c{captions@bbl@\babelname}
- \cs_if_exist_use:c{date@bbl@\babelname}
- \__xpg_local_marks:n{#2}
- \csuse{init@extras@#2}%
+ \cs_if_exist_use:c {captions@bbl@\babelname}
+ \cs_if_exist_use:c {date@bbl@\babelname}
+ \__xpg_local_marks:n {#2}
+ \use:c {init@extras@#2}
\__xpg_indent_first:n { #2 }
- \csuse{blockextras@#2}%
+ \cs_if_exist_use:c {blockextras@#2}
% This is a hook for external packages which want to access variants
% via babelname (such as biblatex)
- \cs_if_exist_use:c{blockextras@bbl@\babelname}
- }
+ \cs_if_exist_use:c {blockextras@bbl@\babelname}
+}
% hook for compatibility with biblatex
% (probably no longer used due to the
% more general hook that follows, but
% we keep it for backwards comp.)
-\def\select@language#1{}
+\cs_set:Npn \select@language #1 {}
% Hook for external packages such as biblatex
% do not rename!
-\def\polyglossia@language@switched{}
+\cs_new:Npn \polyglossia@language@switched {}
-% remove all custumization for language #1
+% remove all customization for language #1
\cs_new:Npn \noextrascurrent #1
-{%
+{
\cs_if_exist_use:c{noextras@#1}%
% This is a hook for external packages which want to access variants
% via babelname (such as biblatex)
@@ -2254,160 +2170,105 @@
}
% Common code for `\select@language' and `\foreignlanguage'.
-\newcommand{\select@@language}[2][]{%
+\cs_new:Nn \xpg_select_language:nn
+{
% disable the extras and number settings of the previous language
\cs_if_exist:cT{languagename}
{
\noextrascurrent{\languagename}
\cs_if_exist_use:c{no\languagename @numbers}
\sys_if_engine_xetex:T{
- \__xpg_if_LR_str:eTF{\prop_item:Ne{\g_xpg_langsetup_prop}{\languagename/direction}}
+ \__xpg_if_LR_str:eTF{\prop_item:Ne{\l_xpg_langsetup_prop}{\languagename/direction}}
{
- \__xpg_if_LR_str:eF{\prop_item:Nn{\g_xpg_langsetup_prop}{#2/direction}}
+ \__xpg_if_LR_str:eF{\prop_item:Nn{\l_xpg_langsetup_prop}{#2/direction}}
{\setnonlatin} % LTR -> RTL
}
{
- \__xpg_if_LR_str:eT{\prop_item:Nn{\g_xpg_langsetup_prop}{#2/direction}}
+ \__xpg_if_LR_str:eT{\prop_item:Nn{\l_xpg_langsetup_prop}{#2/direction}}
{\setlatin} % RTL -> LTR
}
}
}
- \polyglossia@set@language@name[#1]{#2}
- % Set the language's/script's font families
- \str_if_eq:eeT{\prop_item:Nn{\g_xpg_langsetup_prop}{#2/lcscript}} {latin}
- {
- \resetfontlatin
- }
- \bool_if:NF \l__xpg_inline_lang_bool
- { % This for non-inline font switches
- % in case a \<lang>font is defined
- \xpg@set@normalfont{#2}
- }
- \xpg@select@fontfamily{#2}
+ \xpg_set_language_name:n { #2 }
+ \xpg_set_normalfont:n { #2 }
+ \xpg_select_fontfamily:n { #2 }
\__xpg_use_or_warn:c{#2@language}
\cs_if_exist_use:c{#2@numbers}
- \use@localhyphenmins[#1]{#2}
+ \__xpg_use_localhyphenmins:nn { #1 } { #2 }
\__xpg_french_spacing:n { #2 }
}
-\let\xpg@pop@language\relax
+\cs_undefine:N \xpg_pop_language:
-%
-% Keep track of the active (nested) languages and options
-%
-\clist_new:N \l_xpg_lang_stack
-
-\cs_new:Nn \__xpg_stack_language:nn
-{
- \clist_gpush:Nn \l_xpg_lang_stack {#1:#2}
-}
+\DeclareDocumentEnvironment { otherlanguage } { O{} m }
+ {
+ \selectlanguage[#1]{#2}
+ } { }
-\cs_generate_variant:Nn \__xpg_stack_language:nn {nx}
+% Alias to {<lang>}, but more suitable
+% for specific (esp. tag-based) aliases
+% where {<alias>} would cause clashes
+% (e.g., \fi)
+\DeclareEnvironmentCopy { lang } { otherlanguage }
-\cs_new:Nn \__xpg_unstack_language:n
+\NewDocumentCommand \setlocalhyphenmins { m m m }
{
- \clist_gpop:NNTF \l_xpg_lang_stack \l_tmpa_tl {
- % Stored format = options:language => split:
- \seq_set_split:Nne \l_tmpa_seq {:} \l_tmpa_tl
- \seq_get_left:NN \l_tmpa_seq \l_tmpb_tl
- \seq_get_right:NN \l_tmpa_seq \l_tmpc_tl
- % Execute passed command with language and maybe options
- % and re-set stored language's keys
- \tl_if_empty:NTF \l_tmpb_tl {\cs_if_exist_use:c{#1}{\l_tmpc_tl}}
- {\__xpg_set_keys:nn{\l_tmpc_tl}{\l_tmpb_tl}
- \cs_if_exist_use:c{#1}[\l_tmpb_tl]{\l_tmpc_tl}
- }
- }
- {}
-}
-
-\DeclareDocumentEnvironment { otherlanguage } { O{} m }
- {
- % Get real current (pre-switch) options (incl. defaults)
- \clist_clear_new:N \l_xpg_current_options
- \prop_if_exist:cF { xpg@current@options@\languagename }
- { \prop_new:c {xpg@current@options@\languagename} }
- \prop_map_inline:cn {xpg@current@options@\languagename}
+ \xpg_if_language_defined:nTF{#1}
+ {
+ \cs_if_eq:ccTF { l@#1 } { l@nohyphenation }
{
- \clist_put_right:Nn \l_xpg_current_options {##1=##2}
+ \xpg_warning_msg:n {\string\setlocalhyphenmin\space~ useless~ for~ unhyphenated~ language~ #1}
+ }{
+ \providehyphenmins{#1}{#2#3}
}
- % Store current (pre-switch) options and language on stack
- \__xpg_stack_language:nx{\clist_use:Nn \l_xpg_current_options {,}}{\languagename}
- \selectlanguage[#1]{#2}
- }
- {
- % restore previous language in aux file and remove closed one from stack
- \__xpg_unstack_language:n{xpg@set@language@only@aux}
- }
-
-\newcommand{\setlocalhyphenmins}[3]{
- \xpg@ifdefined{#1}{
- \expandafter\ifx\csname l@#1\endcsname\l@nohyphenation
- \xpg@warning{\string\setlocalhyphenmin\space~ useless~ for~ unhyphenated~ language~ #1}
- \else
- \providehyphenmins{#1}{#2#3}
- \fi
}{
- \xpg@warning{\string\setlocalhyphenmin\space~ useless~ for~ unknown~ language~ #1}
+ \xpg_warning_msg:n {\string\setlocalhyphenmin\space~ useless~ for~ unknown~ language~ #1}
}
}
% \setlanghyphenmins[options]{lang}{l}{r}
-\newcommand*\setlanghyphenmins[4][]{%
+\NewDocumentCommand \setlanghyphenmins { O{} m m m }
+{
% Check for real language name and options
- \edef\xpg@tmp@opts{\xpg_alias_add_to_option_i:nn{#2}{#1}}
- \edef\xpg@tmp@lang{\xpg_alias_base_lang:n{#2}}
- \bgroup
- \xpg_error_if_lang_not_loaded:n{\xpg@tmp@lang}
- \__xpg_set_keys:nn{\xpg@tmp@lang}{\xpg@tmp@opts}
+ \tl_set:Nx \l_tmp_opts_tl { \xpg_alias_add_to_option_i:nn{#2}{#1} }
+ \tl_set:Nx \l_tmp_lang_tl { \xpg_alias_base_lang:n{#2} }
+ \c_group_begin_token
+ \xpg_error_if_lang_not_loaded:n{\l_tmp_lang_tl}
+ \SetGlossOptions{\l_tmp_lang_tl}{ \l_tmp_opts_tl }
% Store bcp47.tag@hypenmins
- \tl_if_blank:nTF {\xpg@tmp@opts}{%
- \ifcsundef{\csname xpg@tmp@lang\endcsname @g.bcp47.tag}{
- \csedef{tmp@bcp47.tag}{\prop_item:Ne{\g_xpg_langsetup_prop}{ \xpg@tmp@lang / bcp47 }}
- }{
- \csedef{tmp@bcp47.tag}{\csuse{#2@g.bcp47.tag}}
- }
- }{
- \csedef{tmp@bcp47.tag}{\prop_item:Ne{\g_xpg_langsetup_prop}{ \xpg@tmp@lang / bcp47 }}
- }
- \csgdef{\csname tmp@bcp47.tag\endcsname @hyphenmins}{{#3}{#4}}
- \egroup
+ \cs_set_nopar:cpe {tmp@bcp47.tag} { \prop_item:Ne{\l_xpg_langsetup_prop}{ \l_tmp_lang_tl / bcp47 } }
+ \cs_gset:cpn {\csname tmp@bcp47.tag\endcsname @hyphenmins} {{#3}{#4}}
+ \c_group_end_token
}
-% \use@localhypenmins[options]{lang}
-\newcommand*\use@localhyphenmins[2][]{
- \bgroup
- \xpg_error_if_lang_not_loaded:n{#2}
- \__xpg_set_keys:nn{#2}{#1}
+% \__xpg_use_localhyphenmins:nn {options}{lang}
+\cs_new_nopar:Nn \__xpg_use_localhyphenmins:nn
+{
+ \c_group_begin_token
+ \xpg_error_if_lang_not_loaded:n {#2}
+ \SetGlossOptions {#2} {#1}
% Use bcp47.tag@hypenmins
- \tl_if_blank:nTF {#1}{
- \ifcsundef{#2@g.bcp47.tag}{
- \csxdef{tmp@bcp47.tag}{\prop_item:Nn{\g_xpg_langsetup_prop}{ #2 / bcp47 }}
- }{
- \csxdef{tmp@bcp47.tag}{\csuse{#2@g.bcp47.tag}}
- }
- }{
- \csxdef{tmp@bcp47.tag}{\prop_item:Nn{\g_xpg_langsetup_prop}{ #2 / bcp47 }}
- }
- \egroup
- \ifcsundef{\csname tmp@bcp47.tag\endcsname @hyphenmins}{
- \ifcsundef{#2hyphenmins}{}
+ \cs_gset_nopar:cpe {tmp@bcp47.tag} { \prop_item:Nn{\l_xpg_langsetup_prop}{ #2 / bcp47 } }
+ \c_group_end_token
+ \cs_if_exist:cTF {\csname tmp@bcp47.tag\endcsname @hyphenmins}
+ {
+ \tl_set:Ne \l_tmpa_tl { \use:c{\csname tmp@bcp47.tag\endcsname @hyphenmins} }
+ \expandafter \set@hyphenmins \l_tmpa_tl
+ }{
+ \cs_if_exist:cT{#2hyphenmins}
{
\expandafter\expandafter\expandafter\set@hyphenmins\csname #2hyphenmins\endcsname\relax
}
- }{
- \edef\tmpa{\csuse{\csname tmp@bcp47.tag\endcsname @hyphenmins}}
- \expandafter\expandafter\expandafter\set@hyphenmins\tmpa\relax
}
- \sys_if_engine_luatex:T{
+ \sys_if_engine_luatex:T
+ {
% Set \totalhyphenmin if specified
- \prop_get:NeNTF \g_xpg_langsetup_prop {#2/totalhyphenmin} \l_tmpa_tl
+ \prop_get:NeNT \l_xpg_langsetup_prop {#2/totalhyphenmin} \l_tmpb_tl
{
- \xpg@info{totalhyphenmin: '\l_tmpa_tl'}
- \expandafter\hyphenationmin \l_tmpa_tl
+ \xpg_info_msg:n {totalhyphenmin: '\l_tmpb_tl'}
+ \expandafter\hyphenationmin \l_tmpb_tl
}
- {}
}
}
@@ -2419,23 +2280,26 @@
\DeclareDocumentEnvironment { hyphenrules } { O{} m }
{
% Check for real language name and options
- \edef\xpg@tmp@opts{\xpg_alias_add_to_option_i:nn{#2}{#1}}
- \edef\xpg@tmp@lang{\xpg_alias_base_lang:n{#2}}
+ \tl_set:Nx \l_tmp_opts_tl { \xpg_alias_add_to_option_i:nn{#2}{#1} }
+ \tl_set:Nx \l_tmp_lang_tl { \xpg_alias_base_lang:n{#2} }
% Register the language options
- \__xpg_set_language_options:nnn {\xpg@tmp@lang} {\xpg@tmp@opts} {@xpg@set@langvariant}
+ \__xpg_set_language_options:nn { \l_tmp_lang_tl } { \l_tmp_opts_tl }
% Now switch patterns
- \__xpg_use_or_warn:c{\use:c{xpg@tmp@lang}@language}
+ \__xpg_use_or_warn:c{\use:c{l_tmp_lang_tl}@language}
% And activate hyphenmins
- \use@localhyphenmins[\xpg@tmp@opts]{\xpg@tmp@lang}
+ \__xpg_use_localhyphenmins:nn { \l_tmp_opts_tl } { \l_tmp_lang_tl }
}
{ }
-\AddToHook{begindocument/before}{
- \IfPackageLoadedTF{bidi}{
- \providecommand*{\aemph}[1]{$\overline{\hboxR{#1}}$}
+\hook_gput_code:nnn {begindocument/before} {.}
+{
+ \IfPackageLoadedTF{bidi}
+ {
+ \ProvideDocumentCommand \aemph { m } { $\overline{\hboxR{#1}}$ }
}{}
- \IfPackageLoadedTF{luabidi}{
- \providecommand*{\aemph}[1]{$\overline{\hbox{\RL{#1}}}$}
+ \IfPackageLoadedTF{luabidi}
+ {
+ \ProvideDocumentCommand \aemph { m } { $\overline{\hbox{\RL{#1}}}$ }
}{}
}
@@ -2469,7 +2333,8 @@
.value_required:n = true,
}
-\keys_set:nn { polyglossia } {
+\keys_set:nn { polyglossia }
+{
localmarks = false,
verbose = true,
babelshorthands = false,
@@ -2486,23 +2351,35 @@
\sys_if_engine_luatex:T{
\str_if_eq:eeF{\g_xpg_luatex_renderer_str}{none}
{
- \xpg@info{Setting~ LuaTeX~ font~ renderer~ to~ \g_xpg_luatex_renderer_str}
+ \xpg_info_msg:n{Setting~ LuaTeX~ font~ renderer~ to~ \g_xpg_luatex_renderer_str}
\exp_args:Ne \defaultfontfeatures{Renderer=\g_xpg_luatex_renderer_str}
}
}
-\bool_if:nF \g_xpg_verbose_bool {
- \gdef\@latex@info#1{\relax} % no latex info
- \gdef\@font@info#1{\relax} % no latex font info
- \gdef\@font@warning#1{\relax} % no latex font warnings
- \gdef\zf@PackageInfo#1{\relax} % no fontspec info
- \gdef\xpg@info#1{\relax} % no polyglossia info
+\bool_if:nF \g_xpg_verbose_bool
+{
+ \cs_gset_nopar:Npn \@latex@info #1 { \relax } % no latex info
+ \cs_gset_nopar:Npn \@font@info #1 { \relax } % no latex font info
+ \cs_gset_nopar:Npn \@font@warning #1 { \relax } % no latex font warnings
+ \msg_redirect_module:nnn { fontspec } { info } { none } % no fontspec info
+ \msg_redirect_module:nnn { polyglossia } { info } { none } % no polyglossia info
}
\bool_if:nT \g_xpg_localmarks_bool {
\__xpg_enable_local_marks:
}
+% common code to initiate babelshordhands in glosses
+\cs_new:Npn \InitializeBabelShorthands
+{
+ \cs_if_exist:cF {initiate@active@char}
+ {
+ \file_input:n {babelsh.def}
+ \initiate@active@char{"}
+ \shorthandoff{"}
+ }
+}
+
% Control shorthand (de-)activation
% This checks that the shorthand char is only deactivated
% if we have activated it ourselves and hence keeps
@@ -2530,21 +2407,22 @@
% Inherit shorthands in other languages
\NewDocumentCommand \inheritbabelshorthands { m m }
{
- \AddToHook{begindocument/before}{
+ \hook_gput_code:nnn {begindocument/before} {.}
+ {
% Load the involved languages if necessary
% Error if they do not exist
\tl_set:Nn \l__xpg_tmpa_lang_tl { \xpg_alias_base_lang:n{#1} }
\clist_if_in:NeF \xpg@loaded {\l__xpg_tmpa_lang_tl}{
\file_if_exist:nTF{gloss-\l__xpg_tmpa_lang_tl .ldf}
{ \setotherlanguage{#1} }
- { \xpg@error{ Source~ language~ #1,~ used~ in~
+ { \xpg_error_msg:n { Source~ language~ #1,~ used~ in~
\string\inheritbabelshorthands,~ does~ not~ exist } }
}
\tl_set:Nn \l__xpg_tmpb_lang_tl { \xpg_alias_base_lang:n{#2} }
\clist_if_in:NeF \xpg@loaded {\l__xpg_tmpb_lang_tl}{
\file_if_exist:nTF{gloss-\l__xpg_tmpb_lang_tl .ldf}
{ \setotherlanguage{#2} }
- { \xpg@error{ Target~ language~ #2,~ used~ in~
+ { \xpg_error_msg:n { Target~ language~ #2,~ used~ in~
\string\inheritbabelshorthands,~ does~ not~ exist } }
}
% Test whether the requested shorthands exist
@@ -2556,7 +2434,7 @@
{ \bool_set_true:N \l__xpg_no_shorthands_bool }
\bool_if:nT { \l__xpg_no_shorthands_bool }
{
- \xpg@error{ No~ babel~ shorthands~ exist~ for~ language~ #1 }
+ \xpg_error_msg:n { No~ babel~ shorthands~ exist~ for~ language~ #1 }
}
% If so, apply:
\bool_if:nF { \l__xpg_no_shorthands_bool }
@@ -2581,7 +2459,7 @@
\iflanguageloaded{\l__xpg_tmpa_lang_tl}{
\use:c{\l__xpg_tmpa_lang_tl @shorthands}
}{
- \xpg@error{ Language~ #1,~ requested~ in~
+ \xpg_error_msg:n { Language~ #1,~ requested~ in~
\string\startbabelshorthands,~ is~ not~ loaded }
}
}
diff --git a/Master/texmf-dist/tex/latex/polyomino/polyomino.sty b/Master/texmf-dist/tex/latex/polyomino/polyomino.sty
new file mode 100644
index 00000000000..7a855901188
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/polyomino/polyomino.sty
@@ -0,0 +1,286 @@
+%% polyomino.sty
+%% Copyright 2024 Matthias Floré
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3c
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3c or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This work has the LPPL maintenance status `maintained'.
+%
+% The Current Maintainer of this work is Matthias Floré.
+%
+% This work consists of the files polyomino.pdf, polyomino.sty,
+% polyomino.tex and README.md.
+\NeedsTeXFormat{LaTeX2e}
+\RequirePackage{tikz}
+\ProvidesExplPackage{polyomino}{2024/08/01}{1.0}{Polyominoes using TikZ and LaTeX3}
+
+%%> \subsection{Variables and variants}
+
+\bool_new:N \l__polyomino_grid_bool
+\bool_new:N \l__polyomino_pic_bool
+
+\int_new:N \l__polyomino_col_int
+\int_new:N \l__polyomino_dir_int
+\int_new:N \l__polyomino_max_int
+\int_new:N \l__polyomino_row_int
+\int_new:N \l__polyomino_x_int
+\int_new:N \l__polyomino_y_int
+
+\seq_new:N \l__polyomino_add_seq
+\seq_new:N \l__polyomino_cols_seq
+
+\tl_new:N \l__polyomino_path_tl
+\tl_new:N \l__polyomino_pic_tl
+
+\cs_generate_variant:Nn \tl_map_inline:nn { en }
+
+%%> \subsection{Pgfkeys}
+
+\pgfkeys
+ {
+ / polyomino /. is~family ,
+ / polyomino /. search~also = / polyomino / p_2 ,
+ / polyomino ,
+ at /. initial = { ( 0 , 0 ) } ,
+ empty~cell /. initial = . ,
+ grid /. code = \bool_set:Nn \l__polyomino_grid_bool { \cs:w c_#1_bool \cs_end: } ,
+ grid /. default = true ,
+ grid = false ,
+ grid~style /. style = { grid_style /. style = {#1} } ,
+ grid_style /. style = {} ,
+ row~sep /. initial = { , } ,
+ }
+
+\pgfkeys
+ {%a separate key family so that the second argument of the key p only accepts keys which apply to a separate polyomino
+ / polyomino / p_2 /. is~family ,
+ / polyomino / p_2 ,
+ connected /. code = \bool_set_false:N \l__polyomino_pic_bool ,
+ connected /. value~forbidden ,
+ discrete /. code = \bool_set_true:N \l__polyomino_pic_bool ,
+ discrete /. value~forbidden ,
+ p /. style~2~args = { #1__style /. style = {#2} } ,%2 underscores to avoid the same name as for example the key style_style
+ pic /. code =
+ {
+ \bool_set_true:N \l__polyomino_pic_bool
+ \tl_set:Nn \l__polyomino_pic_tl {#1}
+ } ,
+ style /. style = { style_style /. style = {#1} } ,
+ style_style /. style = {} ,
+ }
+
+%%> \subsection{The command \textbackslash polyomino}
+
+\NewDocumentCommand \polyomino { O {} m }
+ {
+ {%note the double braces {{...}} so that the contents is in a group and in particular, \pgfkeys is applied locally
+ \pgfkeys { / polyomino , #1 }
+ \int_zero:N \l__polyomino_col_int
+ \int_set:Nn \l__polyomino_row_int { 1 }
+ \seq_clear:N \l__polyomino_cols_seq
+ \tl_map_inline:en {#2}
+ %it is convenient that this ignores spaces in #2
+ %e argument specifier for the case that #2 is given by a command or contains a command
+ {
+ \tl_if_eq:neTF {##1} { \pgfkeysvalueof { / polyomino / row~sep } }
+ {
+ \seq_put_right:NV \l__polyomino_cols_seq \l__polyomino_col_int
+ \int_incr:N \l__polyomino_row_int
+ \int_zero:N \l__polyomino_col_int
+ }
+ {
+ \int_incr:N \l__polyomino_col_int
+ \tl_clear_new:c { l__polyomino_\int_use:N \l__polyomino_row_int _\int_use:N \l__polyomino_col_int _tl }
+ \tl_if_eq:neF {##1} { \pgfkeysvalueof { / polyomino / empty~cell } }
+ { \tl_set:cn { l__polyomino_\int_use:N \l__polyomino_row_int _\int_use:N \l__polyomino_col_int _tl } {##1} }
+ \tl_gclear_new:c { g__polyomino_\int_use:N \l__polyomino_row_int _\int_use:N \l__polyomino_col_int _tl }
+ }
+ }
+ \seq_put_right:NV \l__polyomino_cols_seq \l__polyomino_col_int
+ \int_set:Nn \l__polyomino_max_int { \fp_eval:n { max ( \seq_use:Nn \l__polyomino_cols_seq { , } ) } }
+ \seq_map_indexed_inline:Nn \l__polyomino_cols_seq
+ {
+ \tl_clear_new:c { l__polyomino_##1_0_tl }
+ \int_step_inline:nnn { ##2 + 1 } { \l__polyomino_max_int + 1 }
+ { \tl_clear_new:c { l__polyomino_##1_####1_tl } }
+ }
+ \int_step_inline:nnn { 0 } { \l__polyomino_max_int + 1 }
+ {
+ \tl_clear_new:c { l__polyomino_0_##1_tl }
+ \tl_clear_new:c { l__polyomino_\int_eval:n { \l__polyomino_row_int + 1 }_##1_tl }
+ }
+ \pgfkeys
+ {
+ / tikz ,
+ shift /. expanded = { \pgfkeysvalueof { / polyomino / at } } ,
+ shift = { ( 0 , \seq_count:N \l__polyomino_cols_seq ) }
+ }
+ \seq_map_indexed_inline:Nn \l__polyomino_cols_seq
+ {
+ \int_step_inline:nn {##2}
+ {
+ \tl_if_empty:cF { l__polyomino_##1_####1_tl }
+ {
+ {%note the double braces {{...}} so that \pgfkeys is applied locally
+ \pgfkeys { / polyomino / p_2 , \cs:w l__polyomino_##1_####1_tl \cs_end: __style }
+ \bool_if:NTF \l__polyomino_pic_bool
+ { \pic [ / polyomino / p_2 / style_style ] at ( ####1 - 0.5 , 0.5 - ##1 ) { code = { \l__polyomino_pic_tl } } ; }
+ {
+ \seq_clear:N \l__polyomino_add_seq
+ \tl_if_eq:ccF { l__polyomino_##1_####1_tl } { l__polyomino_##1_\int_eval:n { ####1 - 1 }_tl }
+ {
+ \tl_if_empty:cT { g__polyomino_##1_####1_tl }
+ {
+ \int_set:Nn \l__polyomino_dir_int { 1 }
+ \int_set:Nn \l__polyomino_col_int {####1}
+ \int_set:Nn \l__polyomino_row_int {##1}
+ \int_set:Nn \l__polyomino_x_int {####1}
+ \int_set:Nn \l__polyomino_y_int { 1 - ##1 }
+ \tl_build_begin:N \l__polyomino_path_tl
+ \fp_do_until:nn { ####1 - 1 = \l__polyomino_x_int && 1 - ##1 = \l__polyomino_y_int }
+ {
+ %concerning \tl_build_put_right:Ne \l__polyomino_path_tl,
+ %for example (0,0)--(0,1)--(0,2) results in a larger file size than (0,0)--(0,2)
+ \tl_if_eq:ccTF
+ { l__polyomino_##1_####1_tl }
+ {
+ l__polyomino
+ _\int_eval:n
+ { \l__polyomino_row_int + \clist_item:nn { 0 , 1 , 0 , -1 } { \l__polyomino_dir_int } }
+ _\int_eval:n
+ { \l__polyomino_col_int + \clist_item:nn { 1 , 0 , -1 , 0 } { \l__polyomino_dir_int } }
+ _tl
+ }
+ {
+ \tl_if_eq:ccTF
+ { l__polyomino_##1_####1_tl }
+ {
+ l__polyomino
+ _\int_eval:n
+ { \l__polyomino_row_int + \clist_item:nn { -1 , 1 , 1 , -1 } { \l__polyomino_dir_int } }
+ _\int_eval:n
+ { \l__polyomino_col_int + \clist_item:nn { 1 , 1 , -1 , -1 } { \l__polyomino_dir_int } }
+ _tl
+ }
+ {
+ \tl_build_put_right:Ne \l__polyomino_path_tl
+ { -- ( \int_use:N \l__polyomino_x_int , \int_use:N \l__polyomino_y_int ) }
+ \int_add:Nn \l__polyomino_row_int
+ { \clist_item:nn { -1 , 1 , 1 , -1 } { \l__polyomino_dir_int } }
+ \int_add:Nn \l__polyomino_col_int
+ { \clist_item:nn { 1 , 1 , -1 , -1 } { \l__polyomino_dir_int } }
+ \int_compare:nNnTF { \l__polyomino_dir_int } = { 1 }
+ { \int_set:Nn \l__polyomino_dir_int { 4 } }
+ { \int_decr:N \l__polyomino_dir_int }
+ }
+ {
+ \int_add:Nn \l__polyomino_row_int
+ { \clist_item:nn { 0 , 1 , 0 , -1 } { \l__polyomino_dir_int } }
+ \int_add:Nn \l__polyomino_col_int
+ { \clist_item:nn { 1 , 0 , -1 , 0 } { \l__polyomino_dir_int } }
+ }
+ \tl_if_empty:cTF
+ { g__polyomino_\int_use:N \l__polyomino_row_int _\int_use:N \l__polyomino_col_int _tl }
+ {
+ \seq_put_right:Ne \l__polyomino_add_seq
+ { \int_use:N \l__polyomino_row_int _\int_use:N \l__polyomino_col_int }
+ }
+ {
+ \bool_set_true:N \l__polyomino_pic_bool
+ \int_set:Nn \l__polyomino_x_int { ####1 - 1 }
+ \int_set:Nn \l__polyomino_y_int { 1 - ##1 }
+ }
+ }
+ {
+ \tl_build_put_right:Ne \l__polyomino_path_tl
+ { -- ( \int_use:N \l__polyomino_x_int , \int_use:N \l__polyomino_y_int ) }
+ \int_compare:nNnTF { \l__polyomino_dir_int } = { 4 }
+ { \int_set:Nn \l__polyomino_dir_int { 1 } }
+ { \int_incr:N \l__polyomino_dir_int }
+ }
+ \bool_if:NF \l__polyomino_pic_bool
+ {
+ \int_add:Nn \l__polyomino_x_int { \clist_item:nn { 1 , 0 , -1 , 0 } { \l__polyomino_dir_int } }
+ \int_add:Nn \l__polyomino_y_int { \clist_item:nn { 0 , -1 , 0 , 1 } { \l__polyomino_dir_int } }
+ }
+ }
+ \tl_build_end:N \l__polyomino_path_tl
+ \bool_if:NF \l__polyomino_pic_bool
+ { \fill [ / polyomino / p_2 / style_style ] ( ####1 - 1 , 1 - ##1 ) \l__polyomino_path_tl -- cycle ; }
+ }
+ }
+ \tl_gset:cn { g__polyomino_##1_####1_tl } { c }
+ \seq_map_inline:Nn \l__polyomino_add_seq
+ { \tl_gset:cn { g__polyomino_########1_tl } { c } }
+ }
+ }
+ }
+ }
+ }
+ \bool_if:NT \l__polyomino_grid_bool
+ {
+ \int_step_inline:nn { \seq_count:N \l__polyomino_cols_seq - 1 }
+ {
+ \int_zero:N \l__polyomino_col_int
+ \int_zero:N \l__polyomino_x_int
+ \int_set:Nn \l__polyomino_y_int
+ { \int_min:nn { \seq_item:Nn \l__polyomino_cols_seq {##1} } { \seq_item:Nn \l__polyomino_cols_seq { ##1 + 1 } } }
+ \int_while_do:nNnn { \l__polyomino_x_int } < { \l__polyomino_y_int }
+ {
+ \bool_do_while:nn
+ {
+ \tl_if_eq_p:cc
+ { l__polyomino_##1_\int_use:N \l__polyomino_x_int _tl }
+ { l__polyomino_\int_eval:n { ##1 + 1 }_\int_use:N \l__polyomino_x_int _tl }
+ &&
+ ! \tl_if_empty_p:c { g__polyomino_##1_\int_use:N \l__polyomino_x_int _tl }
+ &&
+ \int_compare_p:nNn { \l__polyomino_x_int } < { \l__polyomino_y_int + 1 }
+ }
+ { \int_incr:N \l__polyomino_x_int }
+ \int_compare:nNnT { \l__polyomino_x_int } > { \l__polyomino_col_int + 1 }
+ {
+ \draw [ / polyomino / grid_style ]
+ ( \int_use:N \l__polyomino_col_int , -##1 ) -- ( \int_use:N \l__polyomino_x_int - 1 , -##1 ) ;
+ }
+ \int_set_eq:NN \l__polyomino_col_int \l__polyomino_x_int
+ }
+ }
+ \int_set:Nn \l__polyomino_x_int { \seq_count:N \l__polyomino_cols_seq }
+ \int_step_inline:nn { \l__polyomino_max_int - 1 }
+ {
+ \int_zero:N \l__polyomino_row_int
+ \int_zero:N \l__polyomino_y_int
+ \int_while_do:nNnn { \l__polyomino_y_int } < { \l__polyomino_x_int }
+ {
+ \bool_do_while:nn
+ {
+ \tl_if_eq_p:cc
+ { l__polyomino_\int_use:N \l__polyomino_y_int _##1_tl }
+ { l__polyomino_\int_use:N \l__polyomino_y_int _\int_eval:n { ##1 + 1 }_tl }
+ &&
+ ! \tl_if_empty_p:c { g__polyomino_\int_use:N \l__polyomino_y_int _##1_tl }
+ &&
+ \int_compare_p:nNn { \l__polyomino_y_int } < { \l__polyomino_x_int + 1 }
+ &&
+ \int_compare_p:nNn {##1} < { \seq_item:Nn \l__polyomino_cols_seq { \l__polyomino_y_int } + 0 }
+ }
+ { \int_incr:N \l__polyomino_y_int }
+ \int_compare:nNnT { \l__polyomino_y_int } > { \l__polyomino_row_int + 1 }
+ {
+ \draw [ / polyomino / grid_style ]
+ ( ##1 , -\int_use:N \l__polyomino_row_int ) -- ( ##1 , 1 - \int_use:N \l__polyomino_y_int ) ;
+ }
+ \int_set_eq:NN \l__polyomino_row_int \l__polyomino_y_int
+ }
+ }
+ }
+ }
+ }
+
+\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCAllumettes.tex b/Master/texmf-dist/tex/latex/profcollege/PfCAllumettes.tex
index f603c71f965..dea7c68cb9d 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCAllumettes.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCAllumettes.tex
@@ -1,6 +1,10 @@
%%%
% Allumettes
%%%
+\def\filedateAllu{2024/08/04}%
+\def\fileversionAllu{0.1}%
+\message{-- \filedateAllu\space v\fileversionAllu}
+%
\setKVdefault[Allumettes]{Impression=false,Echelles=false}%
\defKV[Allumettes]{Echelle=\setKV[Allumettes]{Echelles}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCArbreCalcul.tex b/Master/texmf-dist/tex/latex/profcollege/PfCArbreCalcul.tex
new file mode 100644
index 00000000000..347c56f6401
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCArbreCalcul.tex
@@ -0,0 +1,546 @@
+%%%
+% Arbre de calculs
+%%%
+\def\filedateArbreC{2024/08/04}%
+\def\fileversionArbreC{0.1}%
+\message{-- \filedateArbreC\space v\fileversionArbreC}%
+\newtoks\toklistearbre%
+\newtoks\toklistearbrefractions%
+\newtoks\toklistearbreexpressions%
+
+\def\UpdatetoksArbreCalcul#1\nil{\IfDecimal{#1}{\addtotok\toklistearbre{#1,}}{\addtotok\toklistearbre{"#1",}}}%
+\def\UpdatetoksArbreFractions#1\nil{\addtotok\toklistearbrefractions{"#1",}}%
+\def\UpdatetoksArbreExpressions#1\nil{\addtotok\toklistearbreexpressions{"#1",}}%
+
+\setKVdefault[ArbreCalcul]{Correction=false,Couleur=LightSteelBlue,Substitue=7,Litteral=false,Largeur=8mm,LargeurC=8mm,Ecart=1.5cm,Hauteur=10mm,Lettre="x",CouleurDepart=LightGreen,Fractions=false,Nombres={},Expressions={},Etape=infinity}%
+\defKV[ArbreCalcul]{Fraction=\setKV[ArbreCalcul]{Fractions}}%
+
+\NewDocumentCommand\ArbreCalcul{om}{%
+ \useKVdefault[ArbreCalcul]%
+ \setKV[ArbreCalcul]{#1}%
+ \toklistearbre{}%
+ \toklistearbrefractions{}%
+ \toklistearbreexpressions{}%
+ \infixtoRPN{#2}%
+ \setsepchar{ }\ignoreemptyitems%
+ \readlist*\ListeNombres{\RPN}%
+ \reademptyitems%
+ \foreachitem\compteur\in\ListeNombres{\expandafter\UpdatetoksArbreCalcul\compteur\nil}%
+ \ifboolKV[ArbreCalcul]{Fractions}{%
+ \xdef\Foo{\useKV[ArbreCalcul]{Nombres}}%
+ \setsepchar{,}\ignoreemptyitems%
+ \readlist*\ListeFractions{\Foo}%
+ \reademptyitems
+ \foreachitem\compteur\in\ListeFractions{\expandafter\UpdatetoksArbreFractions\compteur\nil}%
+ \BuildArbreCalculFraction{\the\toklistearbre}{\the\toklistearbrefractions}%
+ }{%
+ \ifboolKV[ArbreCalcul]{Litteral}{
+ \xdef\Foo{\useKV[ArbreCalcul]{Nombres}}%
+ \setsepchar{,}\ignoreemptyitems%
+ \readlist*\ListeFractions{\Foo}%
+ \reademptyitems
+ \foreachitem\compteur\in\ListeFractions{\expandafter\UpdatetoksArbreFractions\compteur\nil}%
+ \xdef\Foo{\useKV[ArbreCalcul]{Expressions}}%
+ \setsepchar{,}\ignoreemptyitems%
+ \readlist*\ListeExpressions{\Foo}%
+ \reademptyitems
+ \foreachitem\compteur\in\ListeExpressions{\expandafter\UpdatetoksArbreExpressions\compteur\nil}%
+% listarbre : \the\toklistearbre%
+%
+% listfracions : \the\toklistearbrefractions
+%
+% listexpressions : \the\toklistearbreexpressions
+ \BuildArbreCalculLitteral{\the\toklistearbre}{\the\toklistearbrefractions}{\the\toklistearbreexpressions}%
+ }{%
+ \BuildArbreCalcul{\the\toklistearbre}%
+ }%
+ }%
+}%
+
+\NewDocumentCommand\BuildArbreCalcul{m}{%
+ \ifluatex
+ \mplibforcehmode
+ \begin{mplibcode}
+ boolean Correction,Litteral,Allume[];
+ Correction=\useKV[ArbreCalcul]{Correction};
+ Litteral=\useKV[ArbreCalcul]{Litteral};
+
+ NombreSubstitue=\useKV[ArbreCalcul]{Substitue};
+
+ etape=0;
+ Etape=\useKV[ArbreCalcul]{Etape};
+
+ color Evidence,CoulDepart;
+ Evidence=\useKV[ArbreCalcul]{Couleur};
+ CoulDepart=\useKV[ArbreCalcul]{CouleurDepart};
+
+ pair pointprec;
+
+ path base[];
+ base1=unitsquare xscaled \useKV[ArbreCalcul]{Largeur} yscaled 5mm;
+ base2=fullcircle scaled 5mm;
+ base3=unitsquare xscaled \useKV[ArbreCalcul]{LargeurC} yscaled 5mm;
+
+ vardef BlocCalcul(expr Ba,Bb,op,cha,chb)=%
+ % Ba point gauche
+ % Bb point droite
+ % op opération à afficher
+ etape:=etape+1;
+ save $;
+ picture $;
+ path cc[];
+ pair Bc;
+ Bc=(0.5*(xpart(Ba)+xpart(Bb)),if ypart(Bb)<ypart(Ba):ypart(Bb) else:ypart(Ba) fi -0.75u);
+ pointprec:=Bc+u*(0,-0.75);
+ $=image(
+ if Allume[numeropoint-1]=true:
+ cc1=base3 shifted (Ba-center base3);
+ else:
+ cc1=base1 shifted (Ba-center base1);
+ fi;
+ if Allume[numeropoint]=true:
+ cc2=base3 shifted (Bb-center base3);
+ else:
+ cc2=base1 shifted (Bb-center base1);
+ fi;
+
+ cc3=(fullcircle scaled 5mm) shifted Bc;
+ cc4=base3 shifted (pointprec-center base3);
+ if op="mul":
+ label(TEX("$\times$"),Bc);
+ ValeurPile[numeropoint-1]:=cha*chb;
+ elseif op="add":
+ label(TEX("$+$"),Bc);
+ ValeurPile[numeropoint-1]:=cha+chb;
+ elseif op="sub":
+ label(TEX("$\_$"),Bc);
+ ValeurPile[numeropoint-1]:=cha-chb;
+ elseif op="div":
+ label(TEX("$\div$"),Bc);
+ ValeurPile[numeropoint-1]:=cha/chb;
+ fi;
+ if Correction:
+ if etape<Etape+1:
+ fill cc4 withcolor Evidence;
+ label(TEX("\num{"&decimal(ValeurPile[numeropoint-1])&"}"),pointprec);
+ fi;
+ fi;
+ for l=1 upto 4:
+ trace cc[l];
+ endfor;
+ draw (Ba--Bc) cutbefore cc1 cutafter cc3;
+ draw (Bb--Bc) cutbefore cc2 cutafter cc3;
+ draw (Bc--pointprec) cutbefore cc3 cutafter cc4;
+ );
+ $
+ enddef;
+
+ numeric Valeurs[];
+ numeric Valeursa[];
+
+ string Operations[];
+
+ numeric numeropoint;
+ numeropoint=0;
+
+ numeric ValeurPile[];
+
+ vardef RecupDonnees(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ if numeric p_:
+ Valeurs[n]=p_;
+ Operations[n]="";
+ else:
+ Valeurs[n]=infinity;
+ Operations[n]=p_;
+ fi;
+ endfor;
+ n:=n+1;
+ Operations[n]="stop";
+ nbtotal=n;
+ for k=1 upto nbtotal:
+ ValeurPile[k]=0;
+ endfor;
+ enddef;
+
+ pair A[];
+ ecart=\useKV[ArbreCalcul]{Ecart};
+
+ RecupDonnees(#1);
+
+ A[0]=(0,0);
+ k=0;
+ nbetape:=0;
+
+ for p_=#1:
+ k:=k+1;
+ if numeric p_:
+ numeropoint:=numeropoint+1;
+ if unknown A[numeropoint]:A[numeropoint]-A[numeropoint-1]=ecart*(1,0);Allume[numeropoint]=false; else:
+ A[numeropoint]:=A[numeropoint-1]+ecart*(1,0); Allume[numeropoint]:=false;
+ fi;
+ if Valeurs[k]=0:Valeursa[k]:=NombreSubstitue else: Valeursa[k]=Valeurs[k] fi;
+ if Operations[k+1]="neg":
+ if Valeurs[k]=0:fill (base1 shifted (A[numeropoint]-center base1)) withcolor CoulDepart; if Litteral:
+ label(TEX("$\useKV[ArbreCalcul]{Lettre}$"),A[numeropoint]);
+ else:
+ label(TEX("\num{"&decimal(-Valeursa[k])&"}"),A[numeropoint]);
+ fi;
+ else:
+ label(TEX("\num{"&decimal(-Valeursa[k])&"}"),A[numeropoint]);
+ fi;
+ ValeurPile[numeropoint]:=-Valeursa[k];
+ else:
+ if Valeurs[k]=0:fill (base1 shifted (A[numeropoint]-center base1)) withcolor CoulDepart;if Litteral:
+ label(TEX("$\useKV[ArbreCalcul]{Lettre}$"),A[numeropoint]);
+ else:
+ label(TEX("\num{"&decimal(Valeursa[k])&"}"),A[numeropoint]);
+ fi;
+ else:
+ label(TEX("\num{"&decimal(Valeursa[k])&"}"),A[numeropoint]);
+ fi;
+ ValeurPile[numeropoint]:=Valeursa[k];
+ fi;
+ elseif string p_:
+ if p_<>"neg":
+ trace BlocCalcul(A[numeropoint-1],A[numeropoint],Operations[k],ValeurPile[numeropoint-1],ValeurPile[numeropoint]);
+ A[numeropoint-1]:=pointprec;
+ Allume[numeropoint-1]:=true;
+ numeropoint:=numeropoint-1;
+ fi;
+ fi;
+ endfor;
+ \end{mplibcode}
+ \fi
+}%
+
+\NewDocumentCommand\BuildArbreCalculFraction{mm}{%
+ \ifluatex
+ \mplibforcehmode
+ \begin{mplibcode}
+ boolean Correction,Allume[];
+ Correction=\useKV[ArbreCalcul]{Correction};
+
+ string Fraction;
+ Fraction=\useKV[ArbreCalcul]{Fraction};
+
+ color Evidence,CoulDepart;
+ Evidence=\useKV[ArbreCalcul]{Couleur};
+ CoulDepart=\useKV[ArbreCalcul]{CouleurDepart};
+
+ pair pointprec;
+
+ path base[];
+ base1=unitsquare xscaled \useKV[ArbreCalcul]{Largeur} yscaled \useKV[ArbreCalcul]{Hauteur};
+ base2=fullcircle scaled 5mm;
+ base3=unitsquare xscaled \useKV[ArbreCalcul]{LargeurC} yscaled \useKV[ArbreCalcul]{Hauteur};
+
+ vardef BlocCalcul(expr Ba,Bb,op,cha,chb)=%
+ % Ba point gauche
+ % Bb point droite
+ % op opération à afficher
+ etape:=etape+1;
+ save $;
+ picture $;
+ path cc[];
+ pair Bc;
+ Bc=(0.5*(xpart(Ba)+xpart(Bb)),if ypart(Bb)<ypart(Ba):ypart(Bb) else:ypart(Ba) fi -0.75u);
+ pointprec:=Bc+u*(0,-1.25);
+ $=image(
+ if Allume[numeropoint-1]=true:
+ cc1=base3 shifted (Ba-center base3);
+ else:
+ cc1=base1 shifted (Ba-center base1);
+ fi;
+ if Allume[numeropoint]=true:
+ cc2=base3 shifted (Bb-center base3);
+ else:
+ cc2=base1 shifted (Bb-center base1);
+ fi;
+ cc3=(fullcircle scaled 5mm) shifted Bc;
+ cc4=base3 shifted (pointprec-center base3);
+ if op="mul":
+ label(TEX("$\times$\MulFraction[Seul][3]{"&cha&"}{"&chb&"}[\ResultatMul]"),Bc);
+ ValeurPile[numeropoint-1]:="\ResultatMul";
+ elseif op="add":
+ label(TEX("$+$\AddFraction[Seul][3]{"&cha&"}{"&chb&"}[\ResultatAdd]"),Bc);
+ ValeurPile[numeropoint-1]:="\ResultatAdd";
+ elseif op="sub":
+ label(TEX("$\_$\SousFraction[Seul][3]{"&cha&"}{"&chb&"}[\ResultatSous]"),Bc);
+ ValeurPile[numeropoint-1]:="\ResultatSous";
+ elseif op="div":
+ label(TEX("$\div$\DivFraction[Seul][3]{"&cha&"}{"&chb&"}[\ResultatDiv]"),Bc);
+ ValeurPile[numeropoint-1]:="\ResultatDiv";
+ fi;
+ if Correction:
+ if etape<Etape+1:
+ fill cc4 withcolor Evidence;
+ label(TEX("$\displaystyle\tofrac{"&ValeurPile[numeropoint-1]&"}$"),pointprec);
+ fi;
+ fi;
+ for l=1 upto 4:
+ trace cc[l];
+ endfor;
+ draw (Ba--Bc) cutbefore cc1 cutafter cc3;
+ draw (Bb--Bc) cutbefore cc2 cutafter cc3;
+ draw (Bc--pointprec) cutbefore cc3 cutafter cc4;
+ );
+ $
+ enddef;
+
+ numeric Valeurs[];
+ string Valeursa[];
+
+ string Operations[];
+
+ numeric numeropoint;
+ numeropoint=0;
+
+ string ValeurPile[];
+
+ vardef RecupDonnees(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ if numeric p_:
+ Valeurs[n]=p_;
+ Operations[n]="";
+ else:
+ Valeurs[n]=infinity;
+ Operations[n]=p_;
+ fi;
+ endfor;
+ n:=n+1;
+ Operations[n]="stop";
+ nbtotal=n;
+ for k=1 upto nbtotal:
+ ValeurPile[k]="0";
+ endfor;
+ enddef;
+
+ vardef RecupFractions(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ Valeursa[n]=p_;
+ endfor;
+ enddef;
+
+ pair A[];
+ ecart=\useKV[ArbreCalcul]{Ecart};
+
+ RecupDonnees(#1);
+ RecupFractions(#2);
+
+ etape=0;
+ Etape=\useKV[ArbreCalcul]{Etape};
+
+ A[0]=(0,0);
+ k=0;
+ nbetape:=0;
+
+ for p_=#1:
+ k:=k+1;
+ if numeric p_:
+ numeropoint:=numeropoint+1;
+ if unknown A[numeropoint]:A[numeropoint]-A[numeropoint-1]=ecart*(1,0);Allume[numeropoint]=false; else:
+ A[numeropoint]:=A[numeropoint-1]+ecart*(1,0); Allume[numeropoint]:=false;
+ fi;
+ if Valeurs[k]=0:Valeursa[Valeurs[k]]:=\useKV[ArbreCalcul]{Fraction} fi;
+ if Operations[k+1]="neg":
+ if Valeurs[k]=0:fill (base1 shifted (A[numeropoint]-center base1)) withcolor CoulDepart;
+ label(TEX("$\displaystyle\tofrac{"&-Valeursa[Valeurs[k]]&"}$"),A[numeropoint]);
+ else:
+ label(TEX("$\displaystyle\tofrac{"&-Valeursa[Valeurs[k]]&"}$"),A[numeropoint]);
+ fi;
+ ValeurPile[numeropoint]:=decimal(-Valeursa[Valeurs[k]]);
+ else:
+ if Valeurs[k]=0:fill (base1 shifted (A[numeropoint]-center base1)) withcolor CoulDepart;
+ label(TEX("$\displaystyle\tofrac{"&Valeursa[Valeurs[k]]&"}$"),A[numeropoint]);
+ else:
+ label(TEX("$\displaystyle\tofrac{"&Valeursa[Valeurs[k]]&"}$"),A[numeropoint]);
+ fi;
+ ValeurPile[numeropoint]:=Valeursa[Valeurs[k]];
+ fi;
+ elseif string p_:
+ if p_<>"neg":
+ trace BlocCalcul(A[numeropoint-1],A[numeropoint],Operations[k],ValeurPile[numeropoint-1],ValeurPile[numeropoint]);
+ A[numeropoint-1]:=pointprec;
+ Allume[numeropoint-1]:=true;
+ numeropoint:=numeropoint-1;
+ fi;
+ fi;
+ endfor;
+ \end{mplibcode}
+ \fi
+}%
+
+\NewDocumentCommand\BuildArbreCalculLitteral{mmm}{%
+ \ifluatex
+ \mplibforcehmode
+ \begin{mplibcode}
+ boolean Correction,Allume[];
+ Correction=\useKV[ArbreCalcul]{Correction};
+
+ color Evidence,CoulDepart;
+ Evidence=\useKV[ArbreCalcul]{Couleur};
+ CoulDepart=\useKV[ArbreCalcul]{CouleurDepart};
+
+ pair pointprec;
+
+ path base[];
+ base1=unitsquare xscaled \useKV[ArbreCalcul]{Largeur} yscaled \useKV[ArbreCalcul]{Hauteur};
+ base2=fullcircle scaled 5mm;
+ base3=unitsquare xscaled \useKV[ArbreCalcul]{LargeurC} yscaled \useKV[ArbreCalcul]{Hauteur};
+
+ vardef BlocCalcul(expr Ba,Bb,op,cha,chb)=%
+ % Ba point gauche
+ % Bb point droite
+ % op opération à afficher
+ etape:=etape+1;
+ save $;
+ picture $;
+ path cc[];
+ pair Bc;
+ Bc=(0.5*(xpart(Ba)+xpart(Bb)),if ypart(Bb)<ypart(Ba):ypart(Bb) else:ypart(Ba) fi -0.75u);
+ pointprec:=Bc+u*(0,-1.25);
+ $=image(
+ if Allume[numeropoint-1]=true:
+ cc1=base3 shifted (Ba-center base3);
+ else:
+ cc1=base1 shifted (Ba-center base1);
+ fi;
+ if Allume[numeropoint]=true:
+ cc2=base3 shifted (Bb-center base3);
+ else:
+ cc2=base1 shifted (Bb-center base1);
+ fi;
+ cc3=(fullcircle scaled 5mm) shifted Bc;
+ cc4=base3 shifted (pointprec-center base3);
+ if op="mul":
+ label(TEX("$\times$"),Bc);
+ ValeurPile[numeropoint-1]:="";
+ elseif op="add":
+ label(TEX("$+$"),Bc);
+ ValeurPile[numeropoint-1]:="";
+ elseif op="sub":
+ label(TEX("$\_$"),Bc);
+ ValeurPile[numeropoint-1]:="";
+ elseif op="div":
+ label(TEX("$\div$"),Bc);
+ ValeurPile[numeropoint-1]:="";
+ fi;
+ if Correction:
+ if etape<Etape+1:
+ fill cc4 withcolor Evidence;
+ label(TEX("$"&Valeursc[etape]&"$"),pointprec);
+ fi;
+ fi;
+ for l=1 upto 4:
+ trace cc[l];
+ endfor;
+ draw (Ba--Bc) cutbefore cc1 cutafter cc3;
+ draw (Bb--Bc) cutbefore cc2 cutafter cc3;
+ draw (Bc--pointprec) cutbefore cc3 cutafter cc4;
+ );
+ $
+ enddef;
+
+ numeric Valeurs[];
+ string Valeursa[];
+ string Valeursc[];
+
+ string Operations[];
+
+ numeric numeropoint;
+ numeropoint=0;
+
+ string ValeurPile[];
+
+ vardef RecupDonnees(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ if numeric p_:
+ Valeurs[n]=p_;
+ Operations[n]="";
+ else:
+ Valeurs[n]=infinity;
+ Operations[n]=p_;
+ fi;
+ endfor;
+ n:=n+1;
+ Operations[n]="stop";
+ nbtotal=n;
+ for k=1 upto nbtotal:
+ ValeurPile[k]="0";
+ endfor;
+ enddef;
+
+ vardef RecupFractions(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ Valeursa[n]=p_;
+ endfor;
+ enddef;
+
+ vardef RecupCorrections(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ Valeursc[n]=p_;
+ endfor;
+ enddef;
+
+ pair A[];
+ ecart=\useKV[ArbreCalcul]{Ecart};
+
+ RecupDonnees(#1);
+ RecupFractions(#2);
+ RecupCorrections(#3);
+
+ etape=0;
+ Etape=\useKV[ArbreCalcul]{Etape};
+
+ A[0]=(0,0);
+ k=0;
+ nbetape:=0;
+
+ for p_=#1:
+ k:=k+1;
+ if numeric p_:
+ numeropoint:=numeropoint+1;
+ if unknown A[numeropoint]:A[numeropoint]-A[numeropoint-1]=ecart*(1,0);Allume[numeropoint]=false; else:
+ A[numeropoint]:=A[numeropoint-1]+ecart*(1,0); Allume[numeropoint]:=false;
+ fi;
+ if Valeurs[k]=0:Valeursa[Valeurs[k]]:=\useKV[ArbreCalcul]{Lettre} fi;
+ if Operations[k+1]="neg":
+ if Valeurs[k]=0:fill (base1 shifted (A[numeropoint]-center base1)) withcolor CoulDepart;
+ label(TEX("$"&-Valeursa[Valeurs[k]]&"$"),A[numeropoint]);
+ else:
+ label(TEX("$"&-Valeursa[Valeurs[k]]&"$"),A[numeropoint]);
+ fi;
+ ValeurPile[numeropoint]:=decimal(-Valeursa[Valeurs[k]]);
+ else:
+ if Valeurs[k]=0:fill (base1 shifted (A[numeropoint]-center base1)) withcolor CoulDepart;
+ label(TEX("$"&Valeursa[Valeurs[k]]&"$"),A[numeropoint]);
+ else:
+ label(TEX("$"&Valeursa[Valeurs[k]]&"$"),A[numeropoint]);
+ fi;
+ ValeurPile[numeropoint]:=Valeursa[Valeurs[k]];
+ fi;
+ elseif string p_:
+ if p_<>"neg":
+ trace BlocCalcul(A[numeropoint-1],A[numeropoint],Operations[k],ValeurPile[numeropoint-1],ValeurPile[numeropoint]);
+ A[numeropoint-1]:=pointprec;
+ Allume[numeropoint-1]:=true;
+ numeropoint:=numeropoint-1;
+ fi;
+ fi;
+ endfor;
+ \end{mplibcode}
+ \fi
+}% \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCArbreChiffre.tex b/Master/texmf-dist/tex/latex/profcollege/PfCArbreChiffre.tex
index f724c16fda8..26d5cb021af 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCArbreChiffre.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCArbreChiffre.tex
@@ -2,6 +2,9 @@
% ArbreChiffre
%%%
% https://tex.stackexchange.com/questions/112975/how-to-print-the-permutation-of-s-u-v-a-t-with-latex
+\def\filedateArbreCh{2024/08/04}%
+\def\fileversionArbreCh{0.1}%
+\message{-- \filedateArbreCh\space v\fileversionArbreCh}%
\def\recurse#1#2#3#4\endmarker{%
\dopermute{#1#3}#2#4\endmarker
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCAssemblagesSolides.tex b/Master/texmf-dist/tex/latex/profcollege/PfCAssemblagesSolides.tex
index 5521dbb4193..7f04a083238 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCAssemblagesSolides.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCAssemblagesSolides.tex
@@ -1,6 +1,10 @@
%%%
% Assemblages solides
%%%
+\def\filedateAssemblageS{2024/08/04}%
+\def\fileversionAssemblageS{0.1}%
+\message{-- \filedateAssemblageS\space v\fileversionAssemblageS}%
+%
\setKVdefault[Assemblage]{Phi=30,Theta=20,Distance=50,Anglez=0,Anglex=0,Largeur=1.5,Profondeur=0.75,Hauteur=1,RayonBoule=1,RayonCone=1,RayonCylindre=1,HauteurPrisme=1,HauteurPyramideA=1,HauteurPyramideB=1,HauteurConeA=1,HauteurConeB=1,HauteurCylindre=1,Cotes=3,Trace=false,Type=Pyramides}%
\defKV[Assemblage]{Traces=\setKV[Assemblage]{Trace}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCAutomatismes.tex b/Master/texmf-dist/tex/latex/profcollege/PfCAutomatismes.tex
index fbf80943d41..bb000dee6a5 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCAutomatismes.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCAutomatismes.tex
@@ -1,6 +1,10 @@
%%%
% Automatismes
%%%
+\def\filedateAutomatismes{2024/08/04}%
+\def\fileversionAutomatismes{0.1}%
+\message{-- \filedateAutomatismes\space v\fileversionAutomatismes}%
+%
\NewDocumentCommand\ChoixAleaMixold{mmmm}{%
\ChoixAlea{1}{2}{\Autograine}%
\ifnum\Autograine=1\relax%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCAutonomie.tex b/Master/texmf-dist/tex/latex/profcollege/PfCAutonomie.tex
index b75161ffcc9..3e72a725755 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCAutonomie.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCAutonomie.tex
@@ -1,4 +1,10 @@
-%%% Autonomie %%%
+%%%
+%Autonomie
+%%%
+\def\filedateAutonomie{2024/08/04}%
+\def\fileversionAutonomie{0.1}%
+\message{-- \filedateAutonomie\space v\fileversionAutonomie}%
+%
\setKVdefault[Autonomie]{AfficheMarge=false,TitreEnigme=Enigme,TitreAtoi=\`A toi,Enigme=false,TexteCorrection=\bfseries Correction,ARemplir=false,Deux=false,Landscape=false}%
\newcommand\Autonomie[3][]{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCBarreNiveaux.tex b/Master/texmf-dist/tex/latex/profcollege/PfCBarreNiveaux.tex
index 8ee730bbfb3..d56f096d7eb 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCBarreNiveaux.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCBarreNiveaux.tex
@@ -1,6 +1,10 @@
%%%
% Barres de niveaux
%%%
+\def\filedateBarreNiveaux{2024/08/04}%
+\def\fileversionBarreNiveaux{0.1}%
+\message{-- \filedateBarreNiveaux\space v\fileversionBarreNiveaux}%
+%
\setKVdefault[ClesBarre]{Niveau=false,LimiteI=25,LimiteF=50,LimiteS=75,TexteOrigine=0,TexteReference=100,CouleurGraduation=white,CouleurFond=gray!50,CouleurBarre=black,Graduation=false,Nom=D\'efaut,Pas=10,CouleurI=red,CouleurF=orange,CouleurS=yellow,CouleurM=green}
\newlength{\barrewidth}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCBarresCalculs.tex b/Master/texmf-dist/tex/latex/profcollege/PfCBarresCalculs.tex
index 12b50770251..47537abe92f 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCBarresCalculs.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCBarresCalculs.tex
@@ -1,6 +1,9 @@
%%%
% Barres de calculs
%%%
+\def\filedateBarresCalculs{2024/08/04}%
+\def\fileversionBarresCalculs{0.1}%
+\message{-- \filedateBarresCalculs\space v\fileversionBarresCalculs}%
\setKVdefault[SuiteBarre]{Litteral=false,Perso=false,Decimaux=false}
\NewDocumentCommand\BarresCalculs{o m m}{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCBillard.tex b/Master/texmf-dist/tex/latex/profcollege/PfCBillard.tex
index 6faf8038038..dc0082cef84 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCBillard.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCBillard.tex
@@ -1,6 +1,10 @@
%%%
% Billard
%%%
+\def\filedateBillard{2024/08/28}%
+\def\fileversionBillard{0.1a}%
+\message{-- \filedateBillard\space v\fileversionBillard}%
+%
\newtoks\tokPfCMotBillard{}%
\def\UpdateTokBillard#1\nil{\addtotok\tokPfCMotBillard{"#1"}}%
@@ -227,11 +231,9 @@
}%
\def\MPBillardSolution#1#2#3{%
- % \mplibcodeinherit{enable}%
\mplibforcehmode
\xdef\PfCNomBillard{\useKV[ClesBillard]{Nom}}
\begin{mplibcode}[\PfCNomBillard]
-% Figure(0,0,\useKV[ClesBillard]{Longueur}+2cm,\useKV[ClesBillard]{Largeur}+3cm);
trace rec;
% Tracés
drawarrow Pt[1]--(Pt[1]+1.5cm*unitvector(Pt[2]-Pt[1])) withpen pencircle scaled 1.25;
@@ -253,14 +255,16 @@
else:
dotlabel.bot(TEX(substring(0,1) of #1),Pt[1]);
fi;
+ path segmenttest;
for k=2 upto BLong:
- if (demidroite(1/1000[Pt[k-1],Pt[k]],Pt[k]) intersectiontimes cote[1])<>(-1,-1):
+ segmenttest:=(9/10)[Pt[k-1],Pt[k]]--(11/10)[Pt[k-1],Pt[k]];
+ if segmenttest intersectiontimes cote[1]<>(-1,-1):
dotlabel.bot(TEX(substring(k-1,k) of #1),Pt[k]);
- elseif (demidroite(1/1000[Pt[k-1],Pt[k]],Pt[k]) intersectiontimes cote[2])<>(-1,-1):
+ elseif segmenttest intersectiontimes cote[2]<>(-1,-1):
dotlabel.rt(TEX(substring(k-1,k) of #1),Pt[k]);
- elseif (demidroite(1/1000[Pt[k-1],Pt[k]],Pt[k]) intersectiontimes cote[3])<>(-1,-1):
+ elseif segmenttest intersectiontimes cote[3]<>(-1,-1):
dotlabel.top(TEX(substring(k-1,k) of #1),Pt[k]);
- elseif (demidroite(1/1000[Pt[k-1],Pt[k]],Pt[k]) intersectiontimes cote[4])<>(-1,-1):
+ elseif segmenttest intersectiontimes cote[4]<>(-1,-1):
dotlabel.lft(TEX(substring(k-1,k) of #1),Pt[k]);
fi;
endfor;
@@ -270,5 +274,4 @@
label.top(TEX(substring(k-1,k) of #1),((xpart(Co),5mm)-center Reponse)+(k-1)*(7mm,0)+(2.5mm,0));
endfor;
\end{mplibcode}%
-% \mplibcodeinherit{disable}%
}% \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCBonSortie.tex b/Master/texmf-dist/tex/latex/profcollege/PfCBonSortie.tex
index 25408ad5fed..c783f90d8e3 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCBonSortie.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCBonSortie.tex
@@ -1,6 +1,10 @@
%%%
% Bon de sortie
%%%
+\def\filedateBonSortie{2024/08/04}%
+\def\fileversionBonSortie{0.1}%
+\message{-- \filedateBonSortie\space v\fileversionBonSortie}%
+%
\newcommand\BonSortieBandeau{%
Nom : \hfill Date : \hspace*{3cm}
}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCBonbon.tex b/Master/texmf-dist/tex/latex/profcollege/PfCBonbon.tex
index 08be71cd4f0..8c897fa4deb 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCBonbon.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCBonbon.tex
@@ -1,9 +1,13 @@
%%%
% Bonbon
%%%
+\def\filedateBonbon{2024/08/04}%
+\def\fileversionBonbon{0.1}%
+\message{-- \filedateBonbon\space v\fileversionBonbon}%
+%
\setKVdefault[Bonbon]{CouleurUn=red,Bicolore=false,Echelle=1}%
\defKV[Bonbon]{CouleurDeux=\setKV[Bonbon]{Bicolore}}%
-
+%
\NewDocumentCommand\Bonbon{o}{%
\useKVdefault[Bonbon]%
\setKV[Bonbon]{#1}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCCAN.tex b/Master/texmf-dist/tex/latex/profcollege/PfCCAN.tex
index f77aea497a2..cb8dd56fd27 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCCAN.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCCAN.tex
@@ -1,3 +1,10 @@
+%%%
+% CAN
+%
+\def\filedateCAN{2024/08/04}%
+\def\fileversionCAN{0.1}%
+\message{-- \filedateCAN\space v\fileversionCAN}%
+%
% Gestion de l'aléatoire (pour la CAN)
\newcommand\ChoixAlea[4][]{%
\ifx\bla#1\bla%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCCalculatrice.tex b/Master/texmf-dist/tex/latex/profcollege/PfCCalculatrice.tex
index d2a189e29b5..c97b32472fd 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCCalculatrice.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCCalculatrice.tex
@@ -1,6 +1,9 @@
%%%
% Calculatrice
%%%
+\def\filedateCalculatrice{2024/08/04}%
+\def\fileversionCalculatrice{0.1}%
+\message{-- \filedateCalculatrice\space v\fileversionCalculatrice}%
%https://tex.stackexchange.com/questions/290321/mimicking-a-calculator-inputs-and-screen
\definecolor{lightorange}{rgb}{0.9,0.4,0}%
\definecolor{lightestorange}{rgb}{1,0.8,0.5}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCCalculsCroises.tex b/Master/texmf-dist/tex/latex/profcollege/PfCCalculsCroises.tex
index d17a6c9f556..eb9b8b739d1 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCCalculsCroises.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCCalculsCroises.tex
@@ -1,6 +1,10 @@
%%%
% Calculs Croises
%%%
+\def\filedateCalculsCroises{2024/08/04}%
+\def\fileversionCalculsCroises{0.1}%
+\message{-- \filedateCalculsCroises\space v\fileversionCalculsCroises}%
+%
\setKVdefault[CalculsCroises]{Largeur=20pt,Solution=false,Inverse=false,Creation=false,Graines=false,Vide=false,Couleur=LightGray,Negatifs=false,Aide=false,CouleurS=blue}
\defKV[CalculsCroises]{Graine=\setKV[CalculsCroises]{Graines}}%
\defKV[CalculsCroises]{ListeNombres=\setKV[CalculsCroises]{Aide}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCCalculsDetailles.tex b/Master/texmf-dist/tex/latex/profcollege/PfCCalculsDetailles.tex
new file mode 100644
index 00000000000..df321d523a2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCCalculsDetailles.tex
@@ -0,0 +1,147 @@
+%%%
+% Calculs détaillés
+%%%
+\def\filedateCDetailles{2024/08/24}%
+\def\fileversionCDetailles{0.1}%
+\message{-- \filedateCDetailles\space v\fileversionCDetailles}
+%
+\setKVdefault[CalculAuto]{Under=false,OverB=false,OverC=false,UnderB=false,UnderC=false,Cadre=false,Fluo=false,Evidence=false,Lettres={A,B,C,D,E},Couleur=Purple}
+
+\newcounter{PfCNbCalculs}
+\newcounter{PfCNbSousCalculs}
+\newcounter{PfCNbMarque}
+
+\NewDocumentCommand\PfCMarquePriorite{m}{%
+ \ifboolKV[CalculAuto]{OverB}{%
+ \Overbrace{#1}%
+ }{%
+ \ifboolKV[CalculAuto]{OverC}{%
+ \Overcrochet{#1}%
+ }{%
+ \ifboolKV[CalculAuto]{UnderC}{%
+ \Undercrochet{#1}%
+ }{%
+ \ifboolKV[CalculAuto]{UnderB}{%
+ \Underbrace{#1}%
+ }{%
+ \ifboolKV[CalculAuto]{Cadre}{%
+ \PfCFbox{CCalculAuto}{#1}
+ }{%
+ \ifboolKV[CalculAuto]{Fluo}{%
+ \Surligner[CCalculAuto]{#1}
+ }{%
+ \ifboolKV[CalculAuto]{Under}{%
+ \mathunderline{CCalculAuto}{#1}%
+ }{%
+ \ifboolKV[CalculAuto]{Evidence}{%
+ \mathcolor{CCalculAuto}{#1}%
+ }{%
+ #1%
+ }%
+ }%
+ }%
+ }%
+ }%
+ }%
+ }%
+ }%
+}%
+
+\NewDocumentCommand\CalculDetaille{om}{%
+ \useKVdefault[CalculAuto]%
+ \setKV[CalculAuto]{#1}%
+ \colorlet{CCalculAuto}{\useKV[CalculAuto]{Couleur}}%
+ \setcounter{PfCNbCalculs}{0}%
+ \setsepchar{§}\ignoreemptyitems%
+ \readlist*\ListeNombresCalculs{#2}%
+ \reademptyitems%
+ \xdef\PfCFooListeLettres{\useKV[CalculAuto]{Lettres}}%
+ \setsepchar{,}\ignoreemptyitems%
+ \readlist*\ListeLettres{\PfCFooListeLettres}%
+ \reademptyitems%
+ \xdef\PfCNbMaxLignesCalculs{0}%
+ \foreachitem\compteur\in\ListeNombresCalculs{%
+ \stepcounter{PfCNbCalculs}%
+ \itemtomacro\ListeNombresCalculs[\compteurcnt]\Titi%
+ \setsepchar{,}\ignoreemptyitems%
+ \readlist*\ListeNombresCalculsDetails{\Titi}%
+ \reademptyitems%
+ \expandafter\xdef\csname NbLignesCalculs\Alph{PfCNbCalculs}\endcsname{\ListeNombresCalculsDetailslen}%
+ \xdef\PfCNbMaxLignesCalculs{\fpeval{max(\PfCNbMaxLignesCalculs,\ListeNombresCalculsDetailslen)}}%
+ \setcounter{PfCNbSousCalculs}{0}%
+ \foreachitem\compteura\in\ListeNombresCalculsDetails{%
+ \stepcounter{PfCNbSousCalculs}%
+ \StrSubstitute{\compteura}{*}{\times}[\PfCCalculAutoUn]%
+ \StrSubstitute{\PfCCalculAutoUn}{:}{\div}[\PfCCalculAutoDeux]%
+ \StrCount{\PfCCalculAutoDeux}{<}[\NbInf]%
+ \ifnum\fpeval{\NbInf}=0\relax%
+ \expandafter\xdef\csname NbMarqueLigneCalcul\Alph{PfCNbCalculs}\Alph{PfCNbSousCalculs}\endcsname{1}%
+ \expandafter\xdef\csname LigneCalcul\Alph{PfCNbCalculs}\Alph{PfCNbSousCalculs}A\endcsname{\PfCCalculAutoDeux}%
+ \else%
+ \xdef\PfCExpressionDepart{\PfCCalculAutoDeux}%
+ \setcounter{PfCNbMarque}{0}%
+ \foreach\xx in{1,...,\NbInf}{%
+ \StrBefore{\PfCExpressionDepart}{<}[\PfCDevant]%
+ \StrBetween{\PfCExpressionDepart}{<}{>}[\PfCAEncadrer]%
+ \stepcounter{PfCNbMarque}%
+ \expandafter\xdef\csname LigneCalcul\Alph{PfCNbCalculs}\Alph{PfCNbSousCalculs}\Alph{PfCNbMarque}\endcsname{\PfCDevant}%
+ \stepcounter{PfCNbMarque}%
+ \expandafter\xdef\csname LigneCalcul\Alph{PfCNbCalculs}\Alph{PfCNbSousCalculs}\Alph{PfCNbMarque}\endcsname{<\PfCAEncadrer}%
+ \StrBehind{\PfCExpressionDepart}{>}[\PfCExpressionDepartA]%
+ \xdef\PfCExpressionDepart{\PfCExpressionDepartA}%
+ }%
+ \stepcounter{PfCNbMarque}%
+ \expandafter\xdef\csname LigneCalcul\Alph{PfCNbCalculs}\Alph{PfCNbSousCalculs}\Alph{PfCNbMarque}\endcsname{\PfCExpressionDepart}%
+ \expandafter\xdef\csname NbMarqueLigneCalcul\Alph{PfCNbCalculs}\Alph{PfCNbSousCalculs}\endcsname{\thePfCNbMarque}%
+ \fi
+ }%
+ }%
+ %%%%%%%%%
+ \setcounter{PfCNbSousCalculs}{0}%
+ \[%
+ \begin{aligned}
+ \xintFor* ##2 in{\xintSeq{1}{\PfCNbMaxLignesCalculs}}\do{%
+ \stepcounter{PfCNbSousCalculs}%
+ \setcounter{PfCNbCalculs}{0}%
+ \xintFor* ##1 in{\xintSeq{1}{\ListeNombresCalculslen}}\do{%
+ \stepcounter{PfCNbCalculs}%
+ \ifnum##2>\fpeval{\csname NbLignesCalculs\Alph{PfCNbCalculs}\endcsname}\relax%
+ \uppercase{&}
+ \else
+ \ListeLettres[\thePfCNbCalculs]\uppercase{&}=\xdef\Tata{\csname NbMarqueLigneCalcul\Alph{PfCNbCalculs}\Alph{PfCNbSousCalculs}\endcsname}\setcounter{PfCNbMarque}{0}\xintFor*##3 in{\xintSeq{1}{\Tata}}\do{%
+ \stepcounter{PfCNbMarque}
+ \xdef\Toto{\csname LigneCalcul\Alph{PfCNbCalculs}\Alph{PfCNbSousCalculs}\Alph{PfCNbMarque}\endcsname}\StrChar{\Toto}{1}[\PfCATester]
+ \IfStrEq{\PfCATester}{<}{\StrBehind{\Toto}{<}[\PfCAEncadrer]\PfCMarquePriorite{\PfCAEncadrer}}{\Toto}
+ }
+ \fi\xintifForLast{&}{}
+ }\\
+ }
+ \end{aligned}
+ \]
+}%
+
+\def\Underbrace#1{%
+ \ifx#1\bla\bla\else\color{CCalculAuto}\underbrace{{\color{black}#1}}\color{black}\fi%
+}%
+\def\Undercrochet#1{%
+ \ifx#1\bla\bla\else\color{CCalculAuto}\underbracket{{\color{black}#1}}\color{black}\fi%
+}%
+\def\Overbrace#1{%
+ \ifx#1\bla\bla\else\color{CCalculAuto}\overbrace{{\color{black}#1}}\color{black}\fi%
+}%
+\def\Overcrochet#1{%
+ \ifx#1\bla\bla\else\color{CCalculAuto}\overbracket{{\color{black}#1}}\color{black}\fi%
+}%
+\def\PfCFbox#1#2{%
+ \ifx#2\bla\bla\else\setlength{\fboxrule}{1pt}\fcolorbox{#1}{white}{$\displaystyle#2$}\fi%
+}%
+
+\NewDocumentCommand{\Surligner}{O{yellow}m}{%
+ \ifx#2\bla\bla\else
+ \ifmmode%
+ \colorbox{#1}{$\displaystyle#2$}%
+ \else%
+ \colorbox{#1}{#2}%
+ \fi%
+ \fi
+}% \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCCalculsFractions.tex b/Master/texmf-dist/tex/latex/profcollege/PfCCalculsFractions.tex
index fdf037ef818..cc19c93e548 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCCalculsFractions.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCCalculsFractions.tex
@@ -1,4 +1,11 @@
-\setKVdefault[CalculsFractions]{Couleurs=false,Negatif=false}%
+%%%
+% Calculs fractions
+%
+\def\filedateCalculsFractions{2024/08/04}%
+\def\fileversionCalculsFractions{0.1}%
+\message{-- \filedateCalculsFractions\space v\fileversionCalculsFractions}%
+%
+\setKVdefault[CalculsFractions]{Couleurs=false,Negatif=false,Seul=false}%
\defKV[CalculsFractions]{Couleur=\setKV[CalculsFractions]{Couleurs}\setKV[ClesSimplification]{Couleur=#1}}%
\NewDocumentCommand\tofrac{m}{%
@@ -50,7 +57,7 @@
\xdef\PfCNumD{1}%
}{%
\StrCut{#5}{/}\PfCNumC\PfCNumD%
- }
+ }%
\xdef\PfCAddFoo{\PfCNumA/\PfCNumB,\PfCNumC/\PfCNumD}%
\setsepchar[*]{,*/}\ignoreemptyitems%
\readlist*\ListeFractions{\PfCAddFoo}%
@@ -69,6 +76,7 @@
\xdef\PfCAddDenoSimp{\fpeval{\PfCAddDenoFin/\PfCAddPgcd}}%
\xdef\PfCAddSumSimp{\PfCAddNumSimp/\PfCAddDenoSimp}%
\IfValueT{#6}{\xdef#6{\PfCAddSumSimp}}%
+ \ifboolKV[CalculsFractions]{Seul}{}{%
% Partie affichage
\ensuremath{%
\IfValueTF{#3}{%
@@ -103,6 +111,7 @@
}{\tofrac{#4}\PfCFractionOp\tofrac{#5}
}%
}%
+ }%
}%
\NewDocumentCommand\SousFraction{oommo}{%
@@ -127,17 +136,18 @@
\xdef\PfCMulFoo{\PfCNumA/\PfCNumB,\PfCNumC/\PfCNumD}%
\setsepchar[*]{,*/}\ignoreemptyitems%
\readlist*\ListeFractions{\PfCMulFoo}%
- \reademptyitems
+ \reademptyitems%
\setsepchar{,}%
% Calculs
- \xdef\PfCMulNumFin{\fpeval{(\ListeFractions[1,1])*(\ListeFractions[2,1])}}
- \xdef\PfCMulDenoFin{\fpeval{\ListeFractions[1,2]*\ListeFractions[2,2]}}
+ \xdef\PfCMulNumFin{\fpeval{(\ListeFractions[1,1])*(\ListeFractions[2,1])}}%
+ \xdef\PfCMulDenoFin{\fpeval{\ListeFractions[1,2]*\ListeFractions[2,2]}}%
\PGCD{\fpeval{abs(\PfCMulNumFin)}}{\fpeval{abs(\PfCMulDenoFin)}}\xdef\PfCMulPgcd{\pgcd}%
\xdef\PfCMulNumSimp{\fpeval{\PfCMulNumFin/\PfCMulPgcd}}%
\xdef\PfCMulDenoSimp{\fpeval{\PfCMulDenoFin/\PfCMulPgcd}}%
\xdef\PfCMulPdtSimp{\PfCMulNumSimp/\PfCMulDenoSimp}%
\IfValueT{#5}{\xdef#5{\PfCMulPdtSimp}}%
- \ensuremath{%
+ \ifboolKV[CalculsFractions]{Seul}{}{%
+ \ensuremath{%
\IfValueTF{#2}{%
\ifnum#2=3\relax
\ifboolKV[CalculsFractions]{Negatif}{%
@@ -154,7 +164,8 @@
\fi
\fi
}{\tofrac{#3}\times\tofrac{#4}
- }
+ }%
+ }%
}%
}%
@@ -186,6 +197,7 @@
\xdef\PfCDivDenoSimp{\fpeval{\PfCDivDenoFin/\PfCDivPgcd}}%
\xdef\PfCDivPdtSimp{\PfCDivNumSimp/\PfCDivDenoSimp}%
\IfValueT{#5}{\xdef#5{\PfCDivPdtSimp}}%
+ \ifboolKV[CalculsFractions]{Seul}{}{%
\ensuremath{%
\IfValueTF{#2}{%
\ifnum#2=4\relax
@@ -207,4 +219,5 @@
}{\tofrac{#3}\div\tofrac{#4}
}
}%
+ }%
}% \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCCalisson.tex b/Master/texmf-dist/tex/latex/profcollege/PfCCalisson.tex
index 929b1fb28e9..dd2fe56db37 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCCalisson.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCCalisson.tex
@@ -1,6 +1,10 @@
%%%
% Calisson
%%%
+\def\filedateCalisson{2024/08/04}%
+\def\fileversionCalisson{0.1}%
+\message{-- \filedateCalisson\space v\fileversionCalisson}%
+%
\setKVdefault[Calisson]{Taille=3,Solution=false,Rayon=5cm,Couleur=red,CouleurTrace=black}%
\def\UpdatetoksCalissong#1\nil{\addtotok\tokcalissonlistetracesg{,"#1"}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCCartesJeux.tex b/Master/texmf-dist/tex/latex/profcollege/PfCCartesJeux.tex
index 1e2075d91af..98bb4b8b3cf 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCCartesJeux.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCCartesJeux.tex
@@ -1,6 +1,10 @@
%%%
% Cards
%%%
+\def\filedateCartesJeux{2024/08/04}%
+\def\fileversionCartesJeux{0.1}%
+\message{-- \filedateCartesJeux\space v\fileversionCartesJeux}%
+%
\setKVdefault[Cards]{Formats=false,Largeur=165,Hauteur=250,HauteurTheme=40,Marge=12,Landscape=false,Couleur=Cornsilk,CouleurAr=Cornsilk,Theme=Th\'eor\`eme\\de
Pythagore,ThemeSol=Solution,AfficheTheme=false,Trame=false,Jointes=false,TrameVisible=false,RayonArc=5pt,Titre=false,NomTitre=Jeu 1,Loop,JaiQuia=false,Eleve=false,BackgroundAv=false,BackgroundAr=false,%ImageAv=4813762.jpg,ImageAr=4813762.jpg,
AffichageSolution=true,SolutionSeule=false,%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCCartesMentales.tex b/Master/texmf-dist/tex/latex/profcollege/PfCCartesMentales.tex
index ea9b30af037..90812c7e9ea 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCCartesMentales.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCCartesMentales.tex
@@ -1,6 +1,10 @@
%%%
% Cartes Mentales
%%%
+\def\filedateCarteMentale{2024/08/04}%
+\def\fileversionCarteMentale{0.1}%
+\message{-- \filedateCarteMentale\space v\fileversionCarteMentale}%
+%
\setKVdefault[ClesMentales]{Nom={Bulle}, Largeur=5cm, Ancre={0,0},Pointilles=false,CTrace=black,CFond=white,Epaisseur=1pt,Rayon=1}%
\newenvironment{Mind}{\begin{tikzpicture}}{\end{tikzpicture}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCCartographie.tex b/Master/texmf-dist/tex/latex/profcollege/PfCCartographie.tex
index 2b5ef28fbc2..4396dc6f87b 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCCartographie.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCCartographie.tex
@@ -1,7 +1,11 @@
%%%
% Cartographie
%%%
-\setKVdefault[Cartographie]{Echelle=1,Carte=false,All=false,Europe=false,Asie=false,Amsud=false,Amnord=false,Amcentre=false,Caraibes=false,Afrique=false,AfficheEchelle=false,PaysSeul=false,VillesSup=false,VillesSupI=false,Capitales=false,Impression=false,Fleuves=false,CouleurFond=ciel,Largeur=12,Hauteur=12,Arborescence="/usr/local/texlive/2023/texmf-dist/metapost/profcollege/",Projection=false,TypeProjection="mercator",CouleurPays=Cornsilk,Pasl=2,PasL=2,Codes=false,Epaisseur=2,ModeleCouleur=5,Boussole=false,Allegee=1}
+\def\filedateCartographie{2024/08/04}%
+\def\fileversionCartographie{0.1}%
+\message{-- \filedateCartographie\space v\fileversionCartographie}%
+%
+\setKVdefault[Cartographie]{Echelle=1,Carte=false,All=false,Europe=false,Asie=false,Amsud=false,Amnord=false,Amcentre=false,Caraibes=false,Afrique=false,AfficheEchelle=false,PaysSeul=false,VillesSup=false,VillesSupI=false,Capitales=false,Impression=false,Fleuves=false,CouleurFond=ciel,Largeur=12,Hauteur=12,Arborescence="/usr/local/texlive/2024/texmf-dist/metapost/profcollege/",Projection=false,TypeProjection="mercator",CouleurPays=Cornsilk,Pasl=2,PasL=2,Codes=false,Epaisseur=2,ModeleCouleur=5,Boussole=false,Allegee=1,Maillage=false}
\defKV[Cartographie]{EchelleCarte=\setKV[Cartographie]{Carte}}
\defKV[Cartographie]{Pays=\setKV[Cartographie]{PaysSeul}}
\defKV[Cartographie]{Villes=\setKV[Cartographie]{VillesSup}}
@@ -13,8 +17,8 @@
\useKVdefault[Cartographie]%
\setKV[Cartographie]{#1}%
\mplibforcehmode%
+ \mplibnumbersystem{double}%
\ifboolKV[Cartographie]{Projection}{%
- \mplibnumbersystem{double}%
\begin{mplibcode}
input PfCMonde;
string arborescence;
@@ -217,9 +221,8 @@
Villes(\useKV[Cartographie]{VillesI});
fi;
\end{mplibcode}
- \mplibnumbersystem{scaled}%
}{%
-% \mplibforcehmode
+ % \mplibforcehmode
\begin{mplibcode}
input PfCMonde;
@@ -253,9 +256,11 @@
fi;
else:
couleurfond:=\useKV[Cartographie]{CouleurFond};
+ color couleurimpression;
+ couleurimpression:=Cornsilk;
if Impression:
noncolore:=true;
- payscolor:=0.85white;
+ payscolor:=couleurimpression;%0.85white
couleurfond:=white;
couleurfleuve:=couleurfond;
fi;
@@ -314,8 +319,7 @@
elseif t=8:lrt
fi
enddef;
-
-
+
if Carte:
Echelle:=\useKV[Cartographie]{AfficheEchelle};
figure(-0.5u*LargeurCadre,-0.5u*HauteurCadre,0.5u*LargeurCadre,0.5u*HauteurCadre);
@@ -365,11 +369,53 @@
fi;
else:
- draw(0,0)--(50,50);
- mappemonde(#2,#3);
+ boolean maillagecoord;
+ maillagecoord=\useKV[Cartographie]{Maillage};
+ if VillesSupI:
+ lacs:=false;
+ fi;
+
+ mappemonde(#2,#3);
+
+ vardef Villes(text t)=
+ pair CoordVille;
+ string NomVille;
+ n:=0;
+ for p_:=t:
+ n:=n+1;
+ if n=1:
+ %nblec:=p;
+ else:
+ if pair p_:
+ CoordVille:=Projgeo(rayon*(cosd(ypart(p_))*cosd(xpart(p_)),cosd(ypart(p_))*sind(xpart(p_)),sind(ypart(p_))));
+ elseif string p_:
+ NomVille:=p_;
+ else:
+ marque_p:="croix";
+ pointe(CoordVille);
+ label.position(p_)(TEX(""&NomVille&""),CoordVille);
+ fi;
+ fi;
+ endfor;
+ drawoptions();
+ enddef;
+
+
+ if Codes:
+ \useKV[Cartographie]{Traces};
+ fi;
+ if VillesSupI:
+ Villes(\useKV[Cartographie]{VillesI});
+ label.ulft(TEX("\tiny\ang{0}"),Projgeo(rayon*(1,0,0)));
+ label.ulft(TEX("\tiny\ang{10}"),Projgeo(rayon*(cosd(10),0,sind(10))));
+ fill (fullcircle scaled 0.75mm) shifted Projgeo(rayon*(cosd(10),0,sind(10)));
+ label.llft(TEX("\tiny\ang{10}"),Projgeo(rayon*(cosd(10),sind(10),0)));
+ fill (fullcircle scaled 0.75mm) shifted Projgeo(rayon*(cosd(10),sind(10),0));
+ fi;
fi;
\end{mplibcode}
}
+ \mplibnumbersystem{scaled}%
\else
\PackageWarning{ProfCollege}{"La commande Cartographie n'est compatible qu'avec LuaLaTeX."}
\fi
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCCheque.tex b/Master/texmf-dist/tex/latex/profcollege/PfCCheque.tex
new file mode 100644
index 00000000000..531af4efc12
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCCheque.tex
@@ -0,0 +1,125 @@
+%%%
+% PfCCheque
+%%%
+\def\filedateCheque{2024/09/03}%
+\def\fileversionCheque{0.1}%
+\message{-- \filedateCheque\space v\fileversionCheque}%
+\newlength{\oldbaseline}
+\newlength{\PfCTailleCursive}
+
+\setKVdefault[Cheque]{Sigle=CMF,Banque=Crédit Mathématique de France,Date=\today,Lieu={},Lire=false,Destinataire=Institut Curie,Solution=false,Longueur=15,Taille=\normalsize,Ajust=0pt}
+
+%https://tex.stackexchange.com/questions/406015/defining-macro-gsetlength-as-global-setlength-reliable
+\makeatletter
+\gdef\gsetlength#1#2{%
+ \begingroup
+ \setlength\skip@{#2}% Local assignment to a scratch register.
+ \global#1=\skip@ % Global assignement to #1;
+ % \relax is not necessary because of the following \endgroup.
+ \endgroup % \skip@ is restored by end of group.
+}
+\makeatother
+
+\NewDocumentCommand{\Cheque}{om}{%
+ \useKVdefault[Cheque]%
+ \setKV[Cheque]{#1}%
+ \setbox1=\hbox{\useKV[Cheque]{Taille}\myfontCursive abcdefghijklmnopqrstuvwxyz}%
+ {\useKV[Cheque]{Taille}\myfontCursive\gsetlength{\oldbaseline}{\baselineskip}\normalsize}%
+ \setlength{\PfCTailleCursive}{0.5\ht1+\useKV[Cheque]{Ajust}}%
+ \BuildCheque{#2}%
+}%
+
+\NewDocumentCommand{\BuildCheque}{m}{%
+ \ifluatex
+ \mplibforcehmode
+ \begin{mplibcode}
+ boolean Solution,Lire;
+ Solution=\useKV[Cheque]{Solution};
+ Lire=\useKV[Cheque]{Lire};
+ Longueur=\useKV[Cheque]{Longueur};
+ baselinecp=\fpeval{\oldbaseline};
+ %
+ pair A,B,C,D,M[],N[];
+ A=(0,0);
+ B-A=u*(Longueur,0);
+ C-B=u*(0,5);
+ D-C=A-B;
+ %
+ M1=1/3[D,A];
+ %
+ picture Payez;
+ Payez=image(
+ label.rt(TEX("Payez contre ce chèque"),M1);
+ );
+ %
+ M20=(xpart(M1),ypart(llcorner Payez));
+ M2-M20=(0,-baselinecp);
+ M3-M2=u*(0,-0.5);
+ M4-M3=M2-M1;
+ M5-M4=u*(0.4*Longueur,-0.25);
+ M6-M4=u*(0,-0.25)+u*(0.5,0);
+ M7-M6=u*(2,0);
+ %
+ A:=(xpart(M4),ypart(M6)-1u);
+ B:=A+C-D;
+ %
+ N1=1/2[M1,M2]+0.8*(B-A);
+ N2-N1=M2-M1;
+ N3-N2=0.18*(B-A);
+ N4-N3=N1-N2;
+ drawoptions(withcolor NavyBlue);
+ picture BaseLettre;
+ %%%%%%%%%%%%%%%%
+ fill polygone(A,B,C,D) withcolor 0.8[LightSteelBlue,white];
+ trace polygone(A,B,C,D);
+ draw Payez;
+ label.rt(TEX("{\sffamily \Huge \useKV[Cheque]{Sigle}}"),D+u*(0,-0.5));
+ label.rt(TEX("{\sffamily \useKV[Cheque]{Banque}}"),D+u*(0,-1));
+ trace (lrcorner Payez)--(0.75[(xpart(M1),ypart(lrcorner Payez)),(xpart(M1+B-A),ypart(lrcorner Payez))]);
+ label.rt(TEX("\tiny non endossable sauf au profit d'une banque ou d'un établissement assimilé."),M1+u*(0,-0.300));
+ trace 1/90[M2,M2+B-A]--(0.75[M2,M2+B-A]);
+ label.rt(TEX("À \useKV[Cheque]{Destinataire}"),M3);
+ trace 1/45[M3+u*(0,-0.2),M3+u*(0,-0.2)+B-A]--(0.75[M3+u*(0,-0.2),M3+u*(0,-0.2)+B-A]);
+ fill polygone(N1,N2,N3,N4) withcolor white;
+ trace polygone(N1,N2,N3,N4) withpen pencircle scaled 1.2 withcolor NavyBlue;
+ if Lire=false:
+ label.rt(TEX("\si{\EuRo}~#1"),iso(N1,N2));
+ else:
+ if Solution:
+ label.rt(TEX("\si{\EuRo}~\num{#1}"),iso(N1,N2));
+ fi;
+ fi;
+ label.rt(TEX("À~\hbox to"&decimal(Longueur/5)&"cm{\hrulefill}\quad Le~\hbox to"&decimal(Longueur/5)&"cm{\hrulefill}"),M5);
+ label.top(TEX("\Huge \si{\EuRo}uro"),iso(N4,N1)+u*(0,1));
+ label(TEX("\tiny « à régler exclusivement en euros »"),iso(N4,N1)+u*(-0.5,1));
+ label(TEX("\ChoixAlea{100000}{999999}{\numcheque}\numcheque"),iso(M6,M7));
+ trace cotationmil(M6,M7,2.5mm,25,TEX("\scriptsize chèque \no"));
+ %%
+% drawoptions(withcolor red);
+% draw (llcorner Payez)--(llcorner Payez+B-A);
+% draw M2--(M2+B-A);
+% drawoptions();
+ picture Sous;
+ Sous=image(%
+ label(TEX("\begin{minipage}{\fpeval{0.75*"&decimal(Longueur)&"}cm}
+ \hspace{"&decimal(abs(lrcorner Payez-llcorner Payez))&"pt}\myfontCursive\useKV[Cheque]{Taille}\Ecriture{#1}~euros
+ \end{minipage}"),(0,0));
+ );
+ pair PointBase,PointTest,Decalage;
+ PointBase=1/2[M20,M2+(u*0.75Longueur,0)];
+ PointTest=(0,0);%
+ if abs(llcorner Sous-ulcorner Sous)>baselinecp:
+ Decalage=(8pt,\fpeval{\PfCTailleCursive});
+ else:
+ Decalage=(8pt,2*\fpeval{\PfCTailleCursive});
+ fi;
+ if Lire:
+ draw Sous shifted (PointBase-PointTest+Decalage);
+ else:
+ if Solution:
+ draw Sous shifted (PointBase-PointTest+Decalage);
+ fi;
+ fi;
+ \end{mplibcode}
+ \fi%
+}% \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCCible.tex b/Master/texmf-dist/tex/latex/profcollege/PfCCible.tex
index d29fdccf9de..91e8f28e042 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCCible.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCCible.tex
@@ -1,6 +1,10 @@
%%%
% Cibles
%%%
+\def\filedateCible{2024/08/04}%
+\def\fileversionCible{0.1}%
+\message{-- \filedateCible\space v\fileversionCible}%
+%
\newtoks\toklisteciblea%
\def\UpdatetoksCibleA#1\nil{\addtotok\toklisteciblea{"#1",}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCCibleQOp.tex b/Master/texmf-dist/tex/latex/profcollege/PfCCibleQOp.tex
index 336b10651d0..c33f5242b37 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCCibleQOp.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCCibleQOp.tex
@@ -1,3 +1,10 @@
+%%%
+% Cible 4 opérations
+%%%
+\def\filedateCibleQOp{2024/08/04}%
+\def\fileversionCibleQOp{0.1}%
+\message{-- \filedateCibleQOp\space v\fileversionCibleQOp}%
+
\newcount\anpcqo\newcount\bnpcqo\newcount\cnpcqo%
\NewDocumentCommand\PfCCQODiviseurs{m}{%#1 : le nombre entier \`a tester
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCColorilude.tex b/Master/texmf-dist/tex/latex/profcollege/PfCColorilude.tex
index 33a1ef2446e..9c446f6b435 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCColorilude.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCColorilude.tex
@@ -1,4 +1,10 @@
-%%% Colorilude %%%
+%%%
+% Colorilude
+%%%
+\def\filedateColorilude{2024/08/04}%
+\def\fileversionColorilude{0.1}%
+\message{-- \filedateColorilude\space v\fileversionColorilude}%
+%
\setKVdefault[Colorilude]{Largeur=10,Lignes=10,Legende=false,Coef=0.6,Solution=false,CartonReponse=false,Resultats=false}
\newcommand\dispogpfc[3][]{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCCompteBon.tex b/Master/texmf-dist/tex/latex/profcollege/PfCCompteBon.tex
index 1d5339b114c..bbf219e431a 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCCompteBon.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCCompteBon.tex
@@ -1,6 +1,10 @@
%%%
% Le compte est bon
%%%
+\def\filedateCompteBon{2024/08/04}%
+\def\fileversionCompteBon{0.1}%
+\message{-- \filedateCompteBon\space v\fileversionCompteBon}%
+%
\setKVdefault[CompteBon]{NombreCalculs=5,NombrePlaques=4,Solution=false,Relatifs=false,Original=false,Graines=false,Plaques=6,CDot=false}
\defKV[CompteBon]{Graine=\setKV[CompteBon]{Graines}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCConversion.tex b/Master/texmf-dist/tex/latex/profcollege/PfCConversion.tex
index e6ed80f0125..86da03a0784 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCConversion.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCConversion.tex
@@ -1,3 +1,10 @@
+%%%
+% Conversion
+%%%
+\def\filedateConversion{2024/08/04}%
+\def\fileversionConversion{0.1}%
+\message{-- \filedateConversion\space v\fileversionConversion}%
+
\setKVdefault[ClesConversion]{Longueur,Aire=false,Vol=false,Masses=false,Capas=false,Sans=false,Completes=false}%
\defKV[ClesConversion]{Complete=\setKV[ClesConversion]{Completes}}%
\defKV[ClesConversion]{Masse=\setKV[ClesConversion]{Longueur=false}\setKV[ClesConversion]{Masses}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCCritere.tex b/Master/texmf-dist/tex/latex/profcollege/PfCCritere.tex
index 34c96a9b069..4818b941c78 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCCritere.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCCritere.tex
@@ -1,6 +1,10 @@
%%%
% Criteres de divisibilite
%%%
+\def\filedateCritere{2024/08/04}%
+\def\fileversionCritere{0.1}%
+\message{-- \filedateCritere\space v\fileversionCritere}%
+%
\setKVdefault[Critere]{Div=2,Remarque=false,All=false,RemarqueAll=false}
\NewDocumentCommand\Critere{om}{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCCryptarithme.tex b/Master/texmf-dist/tex/latex/profcollege/PfCCryptarithme.tex
index bfa2e8c76af..1494c2adc6c 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCCryptarithme.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCCryptarithme.tex
@@ -1,6 +1,10 @@
%%%
% Cryptarithmes
%%%
+\def\filedateCrypta{2024/08/04}%
+\def\fileversionCrypta{0.1}%
+\message{-- \filedateCrypta\space v\fileversionCrypta}%
+%
\setKVdefault[Crypta]{Solution=false,ListeLettres={A,B,C,D,E,F,G,H,I,J},Tableau=false}%
\defKV[Crypta]{Indices=\setKV[Crypta]{Tableau}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCDecDeci.tex b/Master/texmf-dist/tex/latex/profcollege/PfCDecDeci.tex
index b2db7fd38b0..861821ce823 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCDecDeci.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCDecDeci.tex
@@ -1,6 +1,10 @@
%%%
% Décomposition décimale
%%
+\def\filedateDecDeci{2024/08/04}%
+\def\fileversionDecDeci{0.1}%
+\message{-- \filedateDecDeci\space v\fileversionDecDeci}%
+%
\setKVdefault[DecompDeci]{Parentheses,Colore=false,CouleurU=Blue,CouleurD=Red,CouleurC=Green,Fleches=false,Details=false,ResultatSeul=false,SansMul=false}
\newcounter{PfCNbDecDeci}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCDecompFracDeci.tex b/Master/texmf-dist/tex/latex/profcollege/PfCDecompFracDeci.tex
index b045c64f63b..1e627c2e3f7 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCDecompFracDeci.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCDecompFracDeci.tex
@@ -1,7 +1,12 @@
%%%
% D\'ecomposition de fractions d\'ecimales
%%%
-\setKVdefault[ClesFracDeci]{Complete=false,SansZero=false,Remediation=false,Longueur=1cm}
+\def\filedateDecompFracDeci{2024/08/13}%
+\def\fileversionDecompFracDeci{0.1a}%
+\message{-- \filedateDecompFracDeci\space v\fileversionDecompFracDeci}%
+%
+\setKVdefault[ClesFracDeci]{Complete=false,SansZero=false,Remediation=false,Longueur=1cm,Vides=false}%
+\defKV[ClesFracDeci]{Vide=\setKV[ClesFracDeci]{Remediation}\setKV[ClesFracDeci]{Vides}}%
\newlength{\PfCLongueurP}%
\newcommand\FractionDecimale[2][]{%
@@ -26,7 +31,7 @@
\xintifboolexpr{\PartieEntiereFractionDeci == 0}{}{\ifboolKV[ClesFracDeci]{Remediation}{\pointilles[\PfCLongueurP]}{\num{\PartieEntiereFractionDeci}}+}%
\xintFor* ##1 in {\xintSeq{1}{\LongueurPartieDecimale}}\do{%
\StrMid{\PartieDecimaleFractionDeci}{##1}{##1}[\ChiffrePartieDecimale]%
- \xintifForFirst{}{\xintifboolexpr{\ChiffrePartieDecimale == 0}{}{+}}\xintifboolexpr{\ChiffrePartieDecimale == 0}{}{\frac{\ifboolKV[ClesFracDeci]{Remediation}{\pointilles[\PfCLongueurP]}{\num{\ChiffrePartieDecimale}}}{\num{\fpeval{10**(\LongueurFracDeciDeno-1-\LongueurPartieDecimale+##1)}}}}%
+ \xintifForFirst{}{\xintifboolexpr{\ChiffrePartieDecimale == 0}{}{+}}\xintifboolexpr{\ChiffrePartieDecimale == 0}{}{\frac{\ifboolKV[ClesFracDeci]{Remediation}{\pointilles[\PfCLongueurP]}{\num{\ChiffrePartieDecimale}}}{\ifboolKV[ClesFracDeci]{Vides}{\pointilles[\PfCLongueurP]}{\num{\fpeval{10**(\LongueurFracDeciDeno-1-\LongueurPartieDecimale+##1)}}}}}%
}%
}%
}{%
@@ -38,20 +43,20 @@
\StrGobbleLeft{\FractionDeciNum}{\fpeval{\LongueurPartieEntiere}}[\DecompositionFracDeciComplete]%
% on affiche la partie décimale.
\xintFor* ##1 in {\xintSeq{1}{\fpeval{\LongueurFracDeciNum-\LongueurPartieEntiere}}}\do{%
- \xintifForFirst{}{+}\StrMid{\DecompositionFracDeciComplete}{##1}{##1}[\ChiffrePartieDecimale]\frac{\ifboolKV[ClesFracDeci]{Remediation}{\pointilles[\PfCLongueurP]}{\num{\ChiffrePartieDecimale}}}{\num{\fpeval{10**##1}}}%
+ \xintifForFirst{}{+}\StrMid{\DecompositionFracDeciComplete}{##1}{##1}[\ChiffrePartieDecimale]\frac{\ifboolKV[ClesFracDeci]{Remediation}{\pointilles[\PfCLongueurP]}{\num{\ChiffrePartieDecimale}}}{\ifboolKV[ClesFracDeci]{Vides}{\pointilles[\PfCLongueurP]}{\num{\fpeval{10**##1}}}}%
}%
}%
}{%
\ensuremath{%
\xintFor* ##1 in {\xintSeq{1}{\LongueurPartieDecimale}}\do{%
\StrMid{\PartieDecimaleFractionDeci}{##1}{##1}[\ChiffrePartieDecimale]%
- \xintifForFirst{}{+}\frac{\ifboolKV[ClesFracDeci]{Remediation}{\pointilles[\PfCLongueurP]}{\num{\ChiffrePartieDecimale}}}{\num{\fpeval{10**(\LongueurFracDeciDeno-1-\LongueurPartieDecimale+##1)}}}%
+ \xintifForFirst{}{+}\frac{\ifboolKV[ClesFracDeci]{Remediation}{\pointilles[\PfCLongueurP]}{\num{\ChiffrePartieDecimale}}}{\ifboolKV[ClesFracDeci]{Vides}{\pointilles[\PfCLongueurP]}{\num{\fpeval{10**(\LongueurFracDeciDeno-1-\LongueurPartieDecimale+##1)}}}}%
}%
}%
}%
}{%
\ensuremath{%
- \xintifboolexpr{\PartieEntiereFractionDeci == 0}{}{\ifboolKV[ClesFracDeci]{Remediation}{\pointilles[\PfCLongueurP]}{\num{\PartieEntiereFractionDeci}}+}\frac{\ifboolKV[ClesFracDeci]{Remediation}{\pointilles[\PfCLongueurP]}{\num{\PartieDecimaleFractionDeci}}}{\num{\FractionDeciDeno}}%
+ \xintifboolexpr{\PartieEntiereFractionDeci == 0}{}{\ifboolKV[ClesFracDeci]{Remediation}{\pointilles[\PfCLongueurP]}{\num{\PartieEntiereFractionDeci}}+}\frac{\ifboolKV[ClesFracDeci]{Remediation}{\pointilles[\PfCLongueurP]}{\num{\PartieDecimaleFractionDeci}}}{\ifboolKV[ClesFracDeci]{Vides}{\pointilles[\PfCLongueurP]}{\num{\FractionDeciDeno}}}%
}%
}%
}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCDecomposerNombrePremier.tex b/Master/texmf-dist/tex/latex/profcollege/PfCDecomposerNombrePremier.tex
index bf1a28e3334..a741919482c 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCDecomposerNombrePremier.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCDecomposerNombrePremier.tex
@@ -1,10 +1,19 @@
%%%
% Nombre Premier
%%%
-\setKVdefault[ClesNombrePremier]{Tableau=false,TableauVide=false,TableauVertical=false,TableauVerticalVide=false,Exposant=false,Longue=false,All=false,Arbre=false,ArbreVide=false,ArbreComplet=false,ArbreDessine=false,ArbreDessineVide=false,Entoure=false,Entourefin=false,Diviseurs=false,DiviseursT=false,Dot=\dotfill,Impose=false,ImposeAll=false,Potence=false,Decalage=10,Vide=false,CouleurFeuillage=ForestGreen,CouleurTronc=BurlyWood,CouleurFruits=Red,CouleurTexte=white}%
+\def\filedateDecompNbPremier{2024/09/01}%
+\def\fileversionDecompNbPremier{0.1a}%
+\message{-- \filedateDecompNbPremier\space v\fileversionDecompNbPremier}%
+%
+\setKVdefault[ClesNombrePremier]{Tableau=false,TableauVide=false,TableauVertical=false,TableauVerticalVide=false,Exposant=false,Longue=false,All=false,Arbre=false,ArbreVide=false,ArbreComplet=false,ArbreDessine=false,ArbreDessineVide=false,Entoure=false,Entourefin=false,Diviseurs=false,DiviseursT=false,Dot=\dotfill,Impose=false,ImposeAll=false,Potence=false,Decalage=10,Vide=false,CouleurFeuillage=ForestGreen,CouleurTronc=BurlyWood,CouleurFruits=Red,CouleurTexte=white,Poisson=false,Echelle=1cm,AngleArete=45,CouleurPoisson=white,Visible=false,Solution=false}%
\defKV[ClesNombrePremier]{Nombre=\ifboolKV[ClesNombrePremier]{ArbreDessine}{}{\ifboolKV[ClesNombrePremier]{ArbreDessineVide}{}{\setKV[ClesNombrePremier]{Impose}}}}%
\defKV[ClesNombrePremier]{AllNombre=\setKV[ClesNombrePremier]{ImposeAll}}%
-\defKV[ClesNombrePremier]{Impression=\setKV[ClesNombrePremier]{CouleurFeuillage=white,CouleurTronc=white,CouleurFruits=gris,CouleurTexte=black}}
+\defKV[ClesNombrePremier]{Impression=\setKV[ClesNombrePremier]{CouleurFeuillage=white,CouleurTronc=white,CouleurFruits=gris,CouleurTexte=black}}%
+\defKV[ClesNombrePremier]{ElementsVisibles=\setKV[ClesNombrePremier]{Visible}\setKV[ClesNombrePremier]{Vide}}%
+\defKV[ClesNombrePremier]{CouleurSolution=\setKV[ClesNombrePremier]{Solution}}%
+
+\newtoks\tokNPElementsVisibles%
+\def\UpdatetoksElementAfficher#1\nil{\addtotok\tokNPElementsVisibles{#1,}}%
\newcommand\Decomposition[2][]{%
\useKVdefault[ClesNombrePremier]%
@@ -26,6 +35,136 @@
\ifboolKV[ClesNombrePremier]{ArbreDessineVide}{\setKV[ClesNombrePremier]{Vide=true}\MPArbreDessine{#2}{\useKV[ClesNombrePremier]{Nombre}}}{}%
\ifboolKV[ClesNombrePremier]{Diviseurs}{\ListeDiviseur{#2}}{}%
\ifboolKV[ClesNombrePremier]{DiviseursT}{\ListeDiviseurT{#2}}{}%
+ \ifboolKV[ClesNombrePremier]{Poisson}{%
+ \tokNPElementsVisibles{}%
+ \PfCTousLesDiviseurs{#2}%
+ \ifboolKV[ClesNombrePremier]{Visible}{%
+ \xdef\foo{\useKV[ClesNombrePremier]{ElementsVisibles}}%
+ \readlist*\ListeElementsAAfficher{\foo}%
+ }{%
+ \xdef\foo{-1}\readlist*\ListeElementsAAfficher{\foo}%
+ }%
+ \foreachitem\compteur\in\ListeElementsAAfficher{\expandafter\UpdatetoksElementAfficher\compteur\nil}%
+ \MPFish{\PfCPileDiviseurs}{#2}{\the\tokNPElementsVisibles}%
+ }{}%
+}%
+
+\newcommand\PfCTousLesDiviseurs[1]{%
+ %#1 : le nombre entier \`a tester
+ \xdef\anpl{#1}%\relax%
+ \xdef\bnpl{2}%\relax%
+ \xdef\pilebl{2}%\relax%
+ \xdef\PfCPileDiviseurs{1}%
+ \loop
+ \ifnum\fpeval{\bnpl}<\fpeval{\anpl}\relax
+ \modulo{\fpeval{\anpl}}{\fpeval{\bnpl}}
+ \ifnum\remainder=0\relax
+ \xdef\PfCPileDiviseurs{\PfCPileDiviseurs,\fpeval{\bnpl}}%
+ \fi
+ \xdef\bnpl{\fpeval{\bnpl+1}}%
+ \repeat
+ \xdef\PfCPileDiviseurs{\PfCPileDiviseurs,#1}%
+}%%
+
+\def\MPFish#1#2#3{
+ \ifluatex
+ \mplibforcehmode%
+ \mplibnumbersystem{double}%
+ \begin{mplibcode}
+ Echelle=\useKV[ClesNombrePremier]{Echelle};
+ AngleArete=\useKV[ClesNombrePremier]{AngleArete};
+
+ boolean Vide,Visible,Solution;
+ Vide=\useKV[ClesNombrePremier]{Vide};
+ Visible=\useKV[ClesNombrePremier]{Visible};
+ Solution=\useKV[ClesNombrePremier]{Solution};
+
+ color CoulTete,CoulSol;
+ CoulTete=\useKV[ClesNombrePremier]{CouleurPoisson};
+ if Solution:
+ CoulSol=\useKV[ClesNombrePremier]{CouleurSolution};
+ fi;
+
+ numeric Diviseurs[];
+ vardef LectureDiviseurs(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ Diviseurs[n]=p_;
+ endfor;
+ enddef;
+
+ LectureDiviseurs(#1);
+ TotalDiviseurs:=n;
+
+ boolean RETOUR;
+ RETOUR=false;
+
+ vardef TestVisible(expr nrt)=
+ RETOUR:=false;
+ for p_=#3:
+ if p_=nrt:
+ RETOUR:=true;
+ fi;
+ endfor;
+ enddef;
+
+
+ pair Ah[],Ab[],O[],Ac;
+ O0=(0,0);
+ O[-1]=O0+Echelle*(0,1);
+ O[-2]=O0+Echelle*(0,-1);
+ fill (arccercle(O[-1],O[-2],O0)--cycle) withcolor CoulTete;
+ trace arccercle(O[-1],O[-2],O0)--cycle;
+ label.lft(TEX("\num{"&decimal(#2)&"}"),O0);
+ %
+ for k=1 upto (TotalDiviseurs div 2):
+ if k=1:Echelle:=Echelle/2;fi;
+ O[k]-O[k-1]=Echelle*(1,0);
+ if k=1:Echelle:=Echelle*2;fi;
+ Ah[k]-O[k]=Echelle*(cosd(AngleArete),sind(AngleArete));
+ Ab[k]-O[k]=Echelle*(cosd(AngleArete),-sind(AngleArete));
+ draw O[k-1]--O[k];
+ draw Ah[k]--O[k]--Ab[k];
+ if Vide=false:
+ label.top(TEX("\num{"&decimal(Diviseurs[k])&"}"),Ah[k]);
+ label.bot(TEX("\num{"&decimal(Diviseurs[TotalDiviseurs+1-k])&"}"),Ab[k]);
+ else:
+ if Visible:
+ TestVisible(Diviseurs[k]);
+ if RETOUR:
+ label.top(TEX("\num{"&decimal(Diviseurs[k])&"}"),Ah[k]);
+ else:
+ if Solution:
+ drawoptions(withcolor CoulSol);
+ label.top(TEX("\num{"&decimal(Diviseurs[k])&"}"),Ah[k]);
+ drawoptions();
+ fi;
+ fi;
+ TestVisible(Diviseurs[TotalDiviseurs+1-k]);
+ if RETOUR:
+ label.bot(TEX("\num{"&decimal(Diviseurs[TotalDiviseurs+1-k])&"}"),Ab[k]);
+ else:
+ if Solution:
+ drawoptions(withcolor CoulSol);
+ label.bot(TEX("\num{"&decimal(Diviseurs[TotalDiviseurs+1-k])&"}"),Ab[k]);
+ drawoptions();
+ fi;
+ fi;
+ fi;
+ fi;
+ endfor;
+ if (TotalDiviseurs mod 2)<>0:
+ Ac-O[TotalDiviseurs div 2]=Echelle*(1,0);
+ draw Ac--O[TotalDiviseurs div 2];
+ if Vide=false:
+ label.rt(TEX("\num{"&decimal(Diviseurs[(TotalDiviseurs+1) div 2])&"}"),Ac);
+ fi;
+ fi;
+ \end{mplibcode}
+ \else
+ %
+ \fi
}%
\def\MPArbre#1{%
@@ -824,13 +963,13 @@
\begin{tabular}{c|c}%
1&\num{#1}\\
\xintFor* ##1 in {\xintSeq {1}{\fpeval{(\cnpT+1)/2}}}\do{%
- \DiviseurNumero{#1}{##1}\num{\fpeval{\dnpT}}\uppercase{&}\DiviseurNumero{#1}{##1}\xintifboolexpr{\dnpT=\fpeval{#1/\dnpT}}{}{\num{\fpeval{#1/\dnpT}}}\\
+ \DiviseurNumero{#1}{##1}\num{\fpeval{\dnpT}}\uppercase{&}\DiviseurNumero{#1}{##1}\xintifboolexpr{\dnpT==\fpeval{#1/\dnpT}}{\num{\fpeval{\dnpT}}}{\num{\fpeval{#1/\dnpT}}}\\
}
\end{tabular}%
\else%
\begin{tabular}{c|c}
1&\num{#1}
- \ifnum\cnpT>2\relax\\
+ \ifnum\cnpT>1\relax\\
\xintFor* ##1 in {\xintSeq {1}{\fpeval{\cnpT/2}}}\do{%
\DiviseurNumero{#1}{##1}\num{\fpeval{\dnpT}}\uppercase{&}\DiviseurNumero{#1}{##1}\num{\fpeval{#1/\dnpT}}\\
}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCDefiCalc.tex b/Master/texmf-dist/tex/latex/profcollege/PfCDefiCalc.tex
index 6d850f80126..089b51658ab 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCDefiCalc.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCDefiCalc.tex
@@ -1,6 +1,10 @@
%%%
% Defi Calculatrice
%%%
+\def\filedateDefiCalc{2024/08/04}%
+\def\fileversionDefiCalc{0.1}%
+\message{-- \filedateDefiCalc\space v\fileversionDefiCalc}%
+%
\setKVdefault[DefiCalculatrice]{NbCasesNoires=6,ListeTouches={!},Impression=false}%
\newtoks\toktexteecran{}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCDefiTables.tex b/Master/texmf-dist/tex/latex/profcollege/PfCDefiTables.tex
index 340d598e2f8..79ad1064ebd 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCDefiTables.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCDefiTables.tex
@@ -1,7 +1,10 @@
%%%
% Defi Table
%%%
-
+\def\filedateDefiTables{2024/08/04}%
+\def\fileversionDefiTables{0.1}%
+\message{-- \filedateDefiTables\space v\fileversionDefiTables}%
+%
\setKVdefault[DefiTable]{Solution=false,Math=false,LargeurT=5mm,Graines=false,Creation=false,ValeurMin=1,ValeurMax=10,Restreint=false}
\defKV[DefiTable]{Graine=\setKV[DefiTable]{Graines}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCDessinAlgo.tex b/Master/texmf-dist/tex/latex/profcollege/PfCDessinAlgo.tex
index 85274cac81c..092aa5e8257 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCDessinAlgo.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCDessinAlgo.tex
@@ -1,6 +1,10 @@
%%%
% Dessin Algo
%%%
+\def\filedateDessinAlgo{2024/08/04}%
+\def\fileversionDessinAlgo{0.1}%
+\message{-- \filedateDessinAlgo\space v\fileversionDessinAlgo}%
+%
\newtoks\tokDessinAlgo%
\def\UpdatetoksDA#1\nil{\addtotok\tokDessinAlgo{#1,}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCDessinGradue.tex b/Master/texmf-dist/tex/latex/profcollege/PfCDessinGradue.tex
index 3bfacac68c2..bd83bb62404 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCDessinGradue.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCDessinGradue.tex
@@ -1,6 +1,10 @@
%%%
% Dessin Gradue
%%%
+\def\filedateDessinGradue{2024/08/04}%
+\def\fileversionDessinGradue{0.1}%
+\message{-- \filedateDessinGradue\space v\fileversionDessinGradue}%
+%
\setKVdefault[DessinGradue]{Lignes=10,Debut=-5,Fin=5,Pas=10,Solution=false,EcartVertical=1.5,LignesIdentiques,Longueur=10,Echelle=1,Droites=false,DemiDroites=false,OrigineVariable=false,Code=false}
\defKV[DessinGradue]{Traces=\setKV[DessinGradue]{Code}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCDessinerRatio.tex b/Master/texmf-dist/tex/latex/profcollege/PfCDessinerRatio.tex
index 27922bdd038..bbb24cb99cd 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCDessinerRatio.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCDessinerRatio.tex
@@ -1,6 +1,10 @@
%%%
% Lien : ratio
%%%
+\def\filedateDessinRatio{2024/08/04}%
+\def\fileversionDessinRatio{0.1}%
+\message{-- \filedateDessinRatio\space v\fileversionDessinRatio}%
+%
\setKVdefault[ClesRatio]{FigureCours=false,Figure=false,Longueur=5cm,TexteTotal=quantit\'e,TextePart=part,Tableau=false,GrandeurA=Grandeur A,GrandeurB=Part(s),Largeur=1cm,Stretch=1,Nom=false,CouleurUn=gris,CouleurDeux=0.5gris+0.5blanc,CouleurTrois=white,CouleurTab=gray!15,ModeleCouleur=5}
\newcommand\MPTest[9][]{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCDiagrammeRadar.tex b/Master/texmf-dist/tex/latex/profcollege/PfCDiagrammeRadar.tex
index cbed30414d5..70180f2a315 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCDiagrammeRadar.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCDiagrammeRadar.tex
@@ -1,6 +1,10 @@
%%%
% Radar
%%%
+\def\filedateRadar{2024/08/04}%
+\def\fileversionRadar{0.1}%
+\message{-- \filedateRadar\space v\fileversionRadar}%
+%
\setKVdefault[ClesRadar]{Rayon=3cm,Reference=20,MoyenneClasse=false,Disciplines=false,Pas=5}
\newtoks\toklisteradara%pour la moyenne de l'\'el\`eve
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCDistributivite.tex b/Master/texmf-dist/tex/latex/profcollege/PfCDistributivite.tex
index ad0dd8885d8..b8a9dc57fc5 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCDistributivite.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCDistributivite.tex
@@ -1,6 +1,9 @@
%%%
% Distributivit\'e
%%%
+\def\filedateDistributivite{2024/08/04}%
+\def\fileversionDistributivite{0.1}%
+\message{-- \filedateDistributivite\space v\fileversionDistributivite}%
% https://tex.stackexchange.com/questions/168972/draw-arrows-to-show-multiplication-pattern-distributive-property/169278?noredirect=1
\newcommand\Tikzmark[1]{%
\tikz[remember picture,baseline,inner sep=0pt]{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCDobble.tex b/Master/texmf-dist/tex/latex/profcollege/PfCDobble.tex
index 2767a20c500..c00592b393f 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCDobble.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCDobble.tex
@@ -1,8 +1,10 @@
%%%
% dobble
%%%
+\def\filedateDobble{2024/08/04}%
+\def\fileversionDobble{0.1}%
+\message{-- \filedateDobble\space v\fileversionDobble}%
% by Maxime Chupin
-
\NewDocumentCommand\dobble{m}{%
\directlua{
require('PfCdobble.lua')
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCDomino.tex b/Master/texmf-dist/tex/latex/profcollege/PfCDomino.tex
index 49cf667c163..338dc07bb7b 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCDomino.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCDomino.tex
@@ -1,6 +1,10 @@
%%%
% Domino
%%%
+\def\filedateDomino{2024/08/04}%
+\def\fileversionDomino{0.1}%
+\message{-- \filedateDomino\space v\fileversionDomino}%
+%
\newtcolorbox{MyDominoMini}[1][]{%
enhanced,
nobeforeafter,
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCDontCountDots.tex b/Master/texmf-dist/tex/latex/profcollege/PfCDontCountDots.tex
index e395500a3c3..ea6761035e2 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCDontCountDots.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCDontCountDots.tex
@@ -1,3 +1,9 @@
+%%%
+% Ne compte pas
+%%%
+\def\filedateDontCount{2024/08/04}%
+\def\fileversionDontCount{0.1}%
+\message{-- \filedateDontCount\space v\fileversionDontCount}%
% D'après twitter : https://twitter.com/DavidKButlerUoA/status/1700612346258002030/photo/1
\setKVdefault[NCPP]{Largeur=5,Longueur=7,Unite=5mm,Rayon=1mm,Multiple=3,Couleur=black,Solution=false,Graines=false}%
\defKV[NCPP]{Graine=\setKV[NCPP]{Graines}\PfCGraineAlea{#1}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCEcrireunQCM.tex b/Master/texmf-dist/tex/latex/profcollege/PfCEcrireunQCM.tex
index 6fc7a945935..372efa97842 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCEcrireunQCM.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCEcrireunQCM.tex
@@ -1,7 +1,11 @@
%%%
% QCM
%%%
-\setKVdefault[ClesQCM]{Reponses=3,Solution=false,Stretch=1,Largeur=60pt,Couleur=gray!15,Titre=false,Nom=R\'eponse,NomV=Vrai,NomF=Faux,Alph=false,AlphT=false,VF=false,Depart=1,Alterne=false,Noms={A/B/C},Multiple=false,Parties={Yeux,Nez,Bouche},CouleurAlt=gray!15,Seul=false}%
+\def\filedateQCM{2024/08/04}%
+\def\fileversionQCM{0.1}%
+\message{-- \filedateQCM\space v\fileversionQCM}%
+%
+\setKVdefault[ClesQCM]{Reponses=3,Solution=false,Stretch=1,Largeur=60pt,Couleur=gray!15,Titre=false,Nom=R\'eponse,NomV=Vrai,NomF=Faux,Alph=false,AlphT=false,VF=false,Depart=1,Alterne=false,Noms={A/B/C},Multiple=false,Parties={Yeux,Nez,Bouche},CouleurAlt=gray!15,Seul=false,ACompleter=false,AllSeul=false}%
\newlength{\LargeurQCM}%
\newlength{\PfCLargeurQCM}%
\newcounter{QuestionQCM}%
@@ -12,6 +16,8 @@
\setcounter{TotalQCMSeul}{0}%
\setcounter{TotalQCMSeulSol}{0}%
%
+\def\PfCTexteReponseEleve{Ma réponse}%
+%
\setKVdefault[QCMSeul]{Melange=false,Solution=false,EnColonne=false,LabelLettre=false}%
\defKV[QCMSeul]{Colonnes=\setKV[QCMSeul]{EnColonne}}%
%
@@ -32,6 +38,23 @@
\fi%
}%
+\NewDocumentCommand\PfCQCMSMultiChoixLabelSol{mm}{%
+ \xdef\PfCFooChoixLabel{\ListeQCM[#1,\fpeval{\NumeroReponse}]}%
+ \setsepchar{-}%
+ \readlist*\PfCSolListeReponses{\PfCFooChoixLabel}%
+ \xdef\RetiensSiSol{0}%
+ \xintFor* ##3 in{\xintSeq{1}{\PfCSolListeReponseslen}}\do{%
+ \ifnum#2=\PfCSolListeReponses[##3]\relax%
+ \xdef\RetiensSiSol{\fpeval{\RetiensSiSol+1}}%
+ \fi%
+ }%
+ \ifnum\RetiensSiSol>0\relax%
+ $\blacksquare$%
+ \else%
+ $\square$%
+ \fi%
+}%
+
\NewDocumentCommand\QCMSeul{om}{%
\useKVdefault[QCMSeul]%
\setKV[QCMSeul]{#1}%
@@ -90,150 +113,193 @@
%
\ifdef{\QCM}{%
\PackageWarning{ProfCollege}{La commande \noexpand\QCM étant définie par la classe du document, ProfCollege modifie sa commande \noexpand\QCM en \noexpand\QCMPfC.}%
- \newcommand\QCMPfC[2][]{%
- \useKVdefault[ClesQCM]%
- \setKV[ClesQCM]{#1}%
- \ifboolKV[ClesQCM]{Seul}{%
- \QCMSeul[#1]{#2}%
+\newcommand\QCMPfC[2][]{%
+ \useKVdefault[ClesQCM]%
+ \setKV[ClesQCM]{#1}%
+ \ifboolKV[ClesQCM]{Seul}{%
+ \QCMSeul[#1]{#2}%
+ }{%
+ \colorlet{PfCCouleurAlterneQCM}{\useKV[ClesQCM]{CouleurAlt}}%
+ \setcounter{QuestionQCM}{\fpeval{\useKV[ClesQCM]{Depart}-1}}%
+ \setcounter{TitreQCM}{0}
+ \setsepchar[*]{,*&}\ignoreemptyitems%
+ \readlist*\ListeQCM{#2}%
+ \renewcommand{\arraystretch}{\useKV[ClesQCM]{Stretch}}%
+ \xdef\NBcases{\fpeval{\useKV[ClesQCM]{Reponses}+1}}%
+ \ifboolKV[ClesQCM]{Multiple}{%
+ \setlength{\LargeurQCM}{\fpeval{(\linewidth-\useKV[ClesQCM]{Reponses}*(3*\tabcolsep+\useKV[ClesQCM]{Largeur}))}pt}%
+ \xdef\ListeNom{\useKV[ClesQCM]{Noms}}%
+ \setsepchar[*]{/}%
+ \readlist*\ListeNomsMul{\ListeNom}%
+ \begin{tabular}{|p{\LargeurQCM}|*{\useKV[ClesQCM]{Reponses}}{>{\centering\arraybackslash}p{\useKV[ClesQCM]{Largeur}}|}}%
+ \cline{2-\NBcases}%
+ \multicolumn{1}{c|}{}\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
+ &\ListeNomsMul[##2]}%
+ \\
+ \hline%
+ \xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{%
+ \stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
+ &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{\ListeQCM[##1,\fpeval{##2+1}]==1}{$\boxtimes$}{$\square$}}{$\square$}%
+ }\\
+ }%
+ \hline%
+ \end{tabular}%
+ \renewcommand{\arraystretch}{1}%
}{%
- \colorlet{PfCCouleurAlterneQCM}{\useKV[ClesQCM]{CouleurAlt}}%
- \setcounter{QuestionQCM}{\fpeval{\useKV[ClesQCM]{Depart}-1}}%
- \setcounter{TitreQCM}{0}
- \setsepchar[*]{,*&}\ignoreemptyitems%
- \readlist*\ListeQCM{#2}%
- \renewcommand{\arraystretch}{\useKV[ClesQCM]{Stretch}}%
- \xdef\NBcases{\fpeval{\useKV[ClesQCM]{Reponses}+1}}%
- \ifboolKV[ClesQCM]{Multiple}{%
- \setlength{\LargeurQCM}{\fpeval{(\linewidth-\useKV[ClesQCM]{Reponses}*(3*\tabcolsep+\useKV[ClesQCM]{Largeur}))}pt}%
- \xdef\ListeNom{\useKV[ClesQCM]{Noms}}%
- \setsepchar[*]{/}%
- \readlist*\ListeNomsMul{\ListeNom}%
+ \ifboolKV[ClesQCM]{VF}{%
+ \setKV[ClesQCM]{Reponses=2}%
+ \setlength{\PfCLargeurQCM}{\useKV[ClesQCM]{Largeur}}%
+ \setlength{\LargeurQCM}{\linewidth-6\tabcolsep-2\PfCLargeurQCM-4\arrayrulewidth}%
+ \xdef\NBcases{\fpeval{\useKV[ClesQCM]{Reponses}+1}}%
\begin{tabular}{|p{\LargeurQCM}|*{\useKV[ClesQCM]{Reponses}}{>{\centering\arraybackslash}p{\useKV[ClesQCM]{Largeur}}|}}%
\cline{2-\NBcases}%
- \multicolumn{1}{c|}{}\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
- &\ListeNomsMul[##2]}%
- \\
+ \multicolumn{1}{c|}{}&\useKV[ClesQCM]{NomV}&\useKV[ClesQCM]{NomF}\\
\hline%
\xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{%
\stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
- &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{\ListeQCM[##1,\fpeval{##2+1}]==1}{$\boxtimes$}{$\square$}}{$\square$}%
- }\\
+ &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{##2==\ListeQCM[##1,2]}{$\boxtimes$}{$\square$}}{$\square$}%
+ }\\
}%
\hline%
- \end{tabular}%
- \renewcommand{\arraystretch}{1}%
+ \end{tabular}
}{%
- \ifboolKV[ClesQCM]{VF}{%
- \setKV[ClesQCM]{Reponses=2}%
- % \renewcommand{\arraystretch}{\useKV[ClesQCM]{Stretch}}%
- \setlength{\PfCLargeurQCM}{\useKV[ClesQCM]{Largeur}}%
- \setlength{\LargeurQCM}{\linewidth-6\tabcolsep-2\PfCLargeurQCM-4\arrayrulewidth}%
- \xdef\NBcases{\fpeval{\useKV[ClesQCM]{Reponses}+1}}%
- \begin{tabular}{|p{\LargeurQCM}|*{\useKV[ClesQCM]{Reponses}}{>{\centering\arraybackslash}p{\useKV[ClesQCM]{Largeur}}|}}%
- \cline{2-\NBcases}%
- \multicolumn{1}{c|}{}&\useKV[ClesQCM]{NomV}&\useKV[ClesQCM]{NomF}\\
- \hline%
- \xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{%
- \stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
- &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{##2==\ListeQCM[##1,2]}{$\boxtimes$}{$\square$}}{$\square$}%
- }\\
- }%
- \hline%
- \end{tabular}
+ \ifboolKV[ClesQCM]{ACompleter}{%
+ \xdef\PfCTotalCases{\fpeval{\useKV[ClesQCM]{Reponses}+1}}%
}{%
- \setlength{\LargeurQCM}{\fpeval{(\linewidth-2*\tabcolsep-\useKV[ClesQCM]{Reponses}*(2*\tabcolsep+\useKV[ClesQCM]{Largeur}))}pt}%
- \begin{tabular}{|p{\LargeurQCM}|*{\useKV[ClesQCM]{Reponses}}{>{\centering\arraybackslash}p{\useKV[ClesQCM]{Largeur}}|}}%
- \ifboolKV[ClesQCM]{Titre}{\cline{2-\NBcases}%
- \multicolumn{1}{c|}{}\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
- &\stepcounter{TitreQCM}\useKV[ClesQCM]{Nom} \ifboolKV[ClesQCM]{AlphT}{\Alph{TitreQCM}}{##2}}%
- \\
- }{}
- \hline%
- \xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{%
- \stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
- &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Solution}{\PfCSolCellColor{##1}{##2}}{}\ListeQCM[##1,##2+1]%
- }\\
- }%
- \hline%
- \end{tabular}%
+ \xdef\PfCTotalCases{\useKV[ClesQCM]{Reponses}}%
}%
+ \setlength{\LargeurQCM}{\fpeval{(\linewidth-2*\tabcolsep-\PfCTotalCases*(2*\tabcolsep+\useKV[ClesQCM]{Largeur}))}pt}%
+ \xdef\NumeroReponse{\fpeval{\useKV[ClesQCM]{Reponses}+2}}%
+ \begin{tabular}{|p{\LargeurQCM}|*{\PfCTotalCases}{>{\centering\arraybackslash}p{\useKV[ClesQCM]{Largeur}}|}}%
+ % \ifboolKV[ClesQCM]{Titre}{\cline{2-\NBcases}%
+ \ifboolKV[ClesQCM]{Titre}{\cline{2-\fpeval{\PfCTotalCases+1}}%
+ \multicolumn{1}{c|}{}\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
+ &\stepcounter{TitreQCM}\useKV[ClesQCM]{Nom} \ifboolKV[ClesQCM]{AlphT}{\Alph{TitreQCM}}{##2}}\ifnum\fpeval{\PfCTotalCases-\useKV[ClesQCM]{Reponses}}>0\relax\uppercase{&}\PfCTexteReponseEleve\fi%
+ \\
+ }{}%
+ \hline%
+ \xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{%
+ \stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
+ &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Solution}{\PfCSolCellColor{##1}{##2}}{}\ListeQCM[##1,\fpeval{##2+1}]
+ }\ifnum\fpeval{\PfCTotalCases-\useKV[ClesQCM]{Reponses}}>0\relax\uppercase{&}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\fi\\
+ }%
+ \hline%
+ \end{tabular}%
}%
- \renewcommand{\arraystretch}{1}%
}%
+ \renewcommand{\arraystretch}{1}%
}%
+}%
}{%
- \newcommand\QCM[2][]{%
- \useKVdefault[ClesQCM]%
- \setKV[ClesQCM]{#1}%
- \ifboolKV[ClesQCM]{Seul}{%
- \QCMSeul[#1]{#2}%
+\newcommand\QCM[2][]{%
+ \useKVdefault[ClesQCM]%
+ \setKV[ClesQCM]{#1}%
+ \ifboolKV[ClesQCM]{AllSeul}{%
+ \setKV[QCMSeul]{#1}
+ \setsepchar[*]{,*&}\ignoreemptyitems%
+ \readlist*\ListeQCM{#2}%
+ \reademptyitems%
+ \setcounter{QuestionQCM}{\fpeval{\useKV[ClesQCM]{Depart}-1}}%
+ \xdef\NumeroReponse{\fpeval{\useKV[ClesQCM]{Reponses}+2}}%
+ \begin{enumerate}
+ \xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{%
+ \item\ListeQCM[##1,1]%
+ \ifboolKV[QCMSeul]{EnColonne}{\begin{multicols}{\useKV[QCMSeul]{Colonnes}}}{}%
+ \ifboolKV[QCMSeul]{LabelLettre}{
+ \begin{enumerate}[label=\Alph{*}/]
+ }{%
+ \begin{enumerate}[label=$\square$]
+ }%
+ \xintFor* ##2 in{\xintSeq{1}{\fpeval{\NumeroReponse-2}}}\do{%
+ \xdef\Titi{##2}
+ \ifboolKV[QCMSeul]{Solution}{%
+ \item[\PfCQCMSMultiChoixLabelSol{##1}{##2}]%
+ }{%
+ \item%
+ }%
+ \ListeQCM[##1,\fpeval{##2+1}]
+ }%
+ \end{enumerate}
+ \ifboolKV[QCMSeul]{EnColonne}{\end{multicols}}{}%
+ }%
+ \end{enumerate}
+ }{%
+ \ifboolKV[ClesQCM]{Seul}{%
+ \QCMSeul[#1]{#2}%
+ }{%
+ \colorlet{PfCCouleurAlterneQCM}{\useKV[ClesQCM]{CouleurAlt}}%
+ \setcounter{QuestionQCM}{\fpeval{\useKV[ClesQCM]{Depart}-1}}%
+ \setcounter{TitreQCM}{0}
+ \setsepchar[*]{,*&}\ignoreemptyitems%
+ \readlist*\ListeQCM{#2}%
+ \renewcommand{\arraystretch}{\useKV[ClesQCM]{Stretch}}%
+ \xdef\NBcases{\fpeval{\useKV[ClesQCM]{Reponses}+1}}%
+ \ifboolKV[ClesQCM]{Multiple}{%
+ \setlength{\LargeurQCM}{\fpeval{(\linewidth-\useKV[ClesQCM]{Reponses}*(3*\tabcolsep+\useKV[ClesQCM]{Largeur}))}pt}%
+ \xdef\ListeNom{\useKV[ClesQCM]{Noms}}%
+ \setsepchar[*]{/}%
+ \readlist*\ListeNomsMul{\ListeNom}%
+ \begin{tabular}{|p{\LargeurQCM}|*{\useKV[ClesQCM]{Reponses}}{>{\centering\arraybackslash}p{\useKV[ClesQCM]{Largeur}}|}}%
+ \cline{2-\NBcases}%
+ \multicolumn{1}{c|}{}\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
+ &\ListeNomsMul[##2]}%
+ \\
+ \hline%
+ \xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{%
+ \stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
+ &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{\ListeQCM[##1,\fpeval{##2+1}]==1}{$\boxtimes$}{$\square$}}{$\square$}%
+ }\\
+ }%
+ \hline%
+ \end{tabular}%
+ \renewcommand{\arraystretch}{1}%
}{%
- \colorlet{PfCCouleurAlterneQCM}{\useKV[ClesQCM]{CouleurAlt}}%
- \setcounter{QuestionQCM}{\fpeval{\useKV[ClesQCM]{Depart}-1}}%
- \setcounter{TitreQCM}{0}
- \setsepchar[*]{,*&}\ignoreemptyitems%
- \readlist*\ListeQCM{#2}%
- \renewcommand{\arraystretch}{\useKV[ClesQCM]{Stretch}}%
- \xdef\NBcases{\fpeval{\useKV[ClesQCM]{Reponses}+1}}%
- \ifboolKV[ClesQCM]{Multiple}{%
- \setlength{\LargeurQCM}{\fpeval{(\linewidth-\useKV[ClesQCM]{Reponses}*(3*\tabcolsep+\useKV[ClesQCM]{Largeur}))}pt}%
- \xdef\ListeNom{\useKV[ClesQCM]{Noms}}%
- \setsepchar[*]{/}%
- \readlist*\ListeNomsMul{\ListeNom}%
+ \ifboolKV[ClesQCM]{VF}{%
+ \setKV[ClesQCM]{Reponses=2}%
+ \setlength{\PfCLargeurQCM}{\useKV[ClesQCM]{Largeur}}%
+ \setlength{\LargeurQCM}{\linewidth-6\tabcolsep-2\PfCLargeurQCM-4\arrayrulewidth}%
+ \xdef\NBcases{\fpeval{\useKV[ClesQCM]{Reponses}+1}}%
\begin{tabular}{|p{\LargeurQCM}|*{\useKV[ClesQCM]{Reponses}}{>{\centering\arraybackslash}p{\useKV[ClesQCM]{Largeur}}|}}%
\cline{2-\NBcases}%
- \multicolumn{1}{c|}{}\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
- &\ListeNomsMul[##2]}%
- \\
+ \multicolumn{1}{c|}{}&\useKV[ClesQCM]{NomV}&\useKV[ClesQCM]{NomF}\\
\hline%
\xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{%
\stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
- &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{\ListeQCM[##1,\fpeval{##2+1}]==1}{$\boxtimes$}{$\square$}}{$\square$}%
- }\\
+ &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{##2==\ListeQCM[##1,2]}{$\boxtimes$}{$\square$}}{$\square$}%
+ }\\
}%
\hline%
- \end{tabular}%
- \renewcommand{\arraystretch}{1}%
+ \end{tabular}
}{%
- \ifboolKV[ClesQCM]{VF}{%
- \setKV[ClesQCM]{Reponses=2}%
- \setlength{\PfCLargeurQCM}{\useKV[ClesQCM]{Largeur}}%
- \setlength{\LargeurQCM}{\linewidth-6\tabcolsep-2\PfCLargeurQCM-4\arrayrulewidth}%
- \xdef\NBcases{\fpeval{\useKV[ClesQCM]{Reponses}+1}}%
- \begin{tabular}{|p{\LargeurQCM}|*{\useKV[ClesQCM]{Reponses}}{>{\centering\arraybackslash}p{\useKV[ClesQCM]{Largeur}}|}}%
- \cline{2-\NBcases}%
- \multicolumn{1}{c|}{}&\useKV[ClesQCM]{NomV}&\useKV[ClesQCM]{NomF}\\
- \hline%
- \xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{%
- \stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
- &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{##2==\ListeQCM[##1,2]}{$\boxtimes$}{$\square$}}{$\square$}%
- }\\
- }%
- \hline%
- \end{tabular}
+ \ifboolKV[ClesQCM]{ACompleter}{%
+ \xdef\PfCTotalCases{\fpeval{\useKV[ClesQCM]{Reponses}+1}}%
}{%
- \setlength{\LargeurQCM}{\fpeval{(\linewidth-2*\tabcolsep-\useKV[ClesQCM]{Reponses}*(2*\tabcolsep+\useKV[ClesQCM]{Largeur}))}pt}%
- \xdef\NumeroReponse{\fpeval{\useKV[ClesQCM]{Reponses}+2}}%
- \begin{tabular}{|p{\LargeurQCM}|*{\useKV[ClesQCM]{Reponses}}{>{\centering\arraybackslash}p{\useKV[ClesQCM]{Largeur}}|}}%
- \ifboolKV[ClesQCM]{Titre}{\cline{2-\NBcases}%
- \multicolumn{1}{c|}{}\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
- &\stepcounter{TitreQCM}\useKV[ClesQCM]{Nom} \ifboolKV[ClesQCM]{AlphT}{\Alph{TitreQCM}}{##2}}%
- \\
- }{}%
- \hline%
- \xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{%
- \stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
- &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Solution}{\PfCSolCellColor{##1}{##2}}{}\ListeQCM[##1,\fpeval{##2+1}]%
- }\\
- }%
- \hline%
- \end{tabular}%
+ \xdef\PfCTotalCases{\useKV[ClesQCM]{Reponses}}%
}%
+ \setlength{\LargeurQCM}{\fpeval{(\linewidth-2*\tabcolsep-\PfCTotalCases*(2*\tabcolsep+\useKV[ClesQCM]{Largeur}))}pt}%
+ \xdef\NumeroReponse{\fpeval{\useKV[ClesQCM]{Reponses}+2}}%
+ \begin{tabular}{|p{\LargeurQCM}|*{\PfCTotalCases}{>{\centering\arraybackslash}p{\useKV[ClesQCM]{Largeur}}|}}%
+ % \ifboolKV[ClesQCM]{Titre}{\cline{2-\NBcases}%
+ \ifboolKV[ClesQCM]{Titre}{\cline{2-\fpeval{\PfCTotalCases+1}}%
+ \multicolumn{1}{c|}{}\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
+ &\stepcounter{TitreQCM}\useKV[ClesQCM]{Nom} \ifboolKV[ClesQCM]{AlphT}{\Alph{TitreQCM}}{##2}}\ifnum\fpeval{\PfCTotalCases-\useKV[ClesQCM]{Reponses}}>0\relax\uppercase{&}\PfCTexteReponseEleve\fi%
+ \\
+ }{}%
+ \hline%
+ \xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{%
+ \stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{%
+ &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\ifboolKV[ClesQCM]{Solution}{\PfCSolCellColor{##1}{##2}}{}\ListeQCM[##1,\fpeval{##2+1}]
+ }\ifnum\fpeval{\PfCTotalCases-\useKV[ClesQCM]{Reponses}}>0\relax\uppercase{&}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{PfCCouleurAlterneQCM}\fi}{}\fi\\
+ }%
+ \hline%
+ \end{tabular}%
}%
- \renewcommand{\arraystretch}{1}%
}%
+ \renewcommand{\arraystretch}{1}%
}%
}%
+}%
+}%
\NewDocumentCommand\PfCSolCellColor{mm}{%
\xdef\PfCFooSolColor{\ListeQCM[#1,\NumeroReponse]}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCEcritureLettres.tex b/Master/texmf-dist/tex/latex/profcollege/PfCEcritureLettres.tex
index 11ae58b5b71..f80bc938669 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCEcritureLettres.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCEcritureLettres.tex
@@ -1,6 +1,10 @@
%%%
% Ecriture des nombres en lettres
%%%
+\def\filedateEcrireLettres{2024/08/04}%
+\def\fileversionEcrireLettres{0.1}%
+\message{-- \filedateEcrireLettres\space v\fileversionEcrireLettres}%
+%
\setKVdefault[ClesEcriture]{Math=false,Majuscule=false,E=false,Tradition=false,Zero=false}%
\newcommand\EcriturePluriel[1]{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCEcritureUnites.tex b/Master/texmf-dist/tex/latex/profcollege/PfCEcritureUnites.tex
index c4503954b3b..05e593623cd 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCEcritureUnites.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCEcritureUnites.tex
@@ -1,6 +1,10 @@
%%%
% Ecritures d'unit\'es
%%%
+\def\filedateEcrireUnites{2024/08/04}%
+\def\fileversionEcrireUnites{0.1}%
+\message{-- \filedateEcrireUnites\space v\fileversionEcrireUnites}%
+%
\setKVdefault[Unites]{m=false,km=false,hm=false,ha=false,dam=false,a=false,dm=false,cm=true,mm=false,um=false,nm=false,g=true,t=false,q=false,kg=false,hg=false,dag=false,dg=false,cg=false,mg=false,ug=false,ng=false,mmin=false,kmh=true,kms=false,ms=false,mh=false,kgm=false,gcm=true,L=true,kL=false,hL=false,daL=false,dL=false,cL=false,mL=false,l=true,kl=false,hl=false,dal=false,dl=false,cl=false,ml=false,Go=true,Mo=false,ko=false,To=false,o=false,kWh=true,C=true,K=false,F=false,Nombre,US=false,UK=false,CFA=false,CFP=false,CHF=false,Euro=false,Precision=2}%
\defKV[Unites]{Dots=\setKV[Unites]{Nombre=false}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCEngrenagesBase.tex b/Master/texmf-dist/tex/latex/profcollege/PfCEngrenagesBase.tex
index df5743e4399..58553f57f8b 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCEngrenagesBase.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCEngrenagesBase.tex
@@ -1,22 +1,26 @@
%%%
% Engrenages
%%%
+\def\filedateEngrenages{2024/08/04}%
+\def\fileversionEngrenages{0.1}%
+\message{-- \filedateEngrenages\space v\fileversionEngrenages}%
+%
\newtoks\tokPfCEngrenages%
\def\UpdatetoksEngrenages#1/#2\nil{\addtotok\tokPfCEngrenages{#1,#2,}}%
-\setKVdefault[Engrenages]{Couleur=LightSteelBlue,Unite=3mm,ListeCouleurs={LightSteelBlue}}
+\setKVdefault[Engrenages]{Couleur=LightSteelBlue,Unite=3mm,ListeCouleurs={?}}%
\NewDocumentCommand\Engrenages{o m}{%
\newtoks\toklistecouleur%
\toklistecouleur{}%
- \tokPfCEngrenages{}
+ \tokPfCEngrenages{}%
\useKVdefault[Engrenages]%
\setKV[Engrenages]{#1}%
\setsepchar[*]{,*/}%
\ignoreemptyitems
\readlist*\ListePfCEngrenages{#2}%
- \setsepchar{,}
- \xdef\PfCFooEngrenages{}
+ \setsepchar{,}%
+ \xdef\PfCFooEngrenages{}%
\foreachitem\compteur\in\ListePfCEngrenages{%
\xdef\PfCFooEngrenages{\PfCFooEngrenages \ListePfCEngrenages[\compteurcnt,1],\ListePfCEngrenages[\compteurcnt,2],}%
}%
@@ -102,19 +106,19 @@
fi;
endfor;
);
-}
+}%
\NewDocumentCommand\BuildEngrenages{mm}{%
- \ifluatex
- \mplibforcehmode
- \begin{mplibcode}
+ \ifluatex%
+ \mplibforcehmode%
+ \begin{mplibcode}%
input PfCEngrenages;
\BuildEngrenagesCode{#1}{#2}
trace EngrenageFinal;
- \end{mplibcode}
- \else
+ \end{mplibcode}%
+ \else%
\begin{mpost}[mpsettings={input PfCEngrenages;\BuildEngrenagesCode{#1}{#2}}]
trace EngrenageFinal;
- \end{mpost}
- \fi
+ \end{mpost}%
+ \fi%
}% \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCEnigmeAire.tex b/Master/texmf-dist/tex/latex/profcollege/PfCEnigmeAire.tex
index 345f7416560..1840d8b0e39 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCEnigmeAire.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCEnigmeAire.tex
@@ -1,6 +1,10 @@
%%%
% Enigme Aire
%%%
+\def\filedateEnigmeAire{2024/08/04}%
+\def\fileversionEnigmeAire{0.1}%
+\message{-- \filedateEnigmeAire\space v\fileversionEnigmeAire}%
+%
\setKVdefault[EnigmeAire]{Modele=A,Couleur=LightSteelBlue,Echelle=7mm,Etape=1,Solution=false,Graines=false}
\defKV[EnigmeAire]{Graine=\setKV[EnigmeAire]{Graines}}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCEnquete.tex b/Master/texmf-dist/tex/latex/profcollege/PfCEnquete.tex
index 678b268c57d..5dfc36587cb 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCEnquete.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCEnquete.tex
@@ -1,6 +1,10 @@
%%%
% Enquête
%%%
+\def\filedateEnquete{2024/08/04}%
+\def\fileversionEnquete{0.1}%
+\message{-- \filedateEnquete\space v\fileversionEnquete}%
+%
\setKVdefault[ClesEnquete]{Perso=Qui ?,Objet=Quoi ?,Lieu=Où ?,Largeur=4.5cm}
\newcommand\Enquete[1][]{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCEratosthene.tex b/Master/texmf-dist/tex/latex/profcollege/PfCEratosthene.tex
index 192e470e66b..5374c485d2a 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCEratosthene.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCEratosthene.tex
@@ -1,3 +1,10 @@
+%%%
+% Crible Eratostene
+%%%
+\def\filedateEratos{2024/08/04}%
+\def\fileversionEratos{0.1}%
+\message{-- \filedateEratos\space v\fileversionEratos}%
+%
\setKVdefault[ClesEra]{Premier=false,Nombre=1,CouleurP=Cornsilk!50,CouleurNP=Crimson!15,Colonnes=10,Lignes=10,Hauteur=24pt}%
\NewDocumentCommand\TestPremier{m}{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCFactorisation.tex b/Master/texmf-dist/tex/latex/profcollege/PfCFactorisation.tex
index 823f2036237..bdcea30d9db 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCFactorisation.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCFactorisation.tex
@@ -1,3 +1,10 @@
+%%%
+% Factorisation
+%%%
+\def\filedateFactorisation{2024/08/04}%
+\def\fileversionFactorisation{0.1}%
+\message{-- \filedateFactorisation\space v\fileversionFactorisation}%
+%
\setKVdefault[Facto]{Aide=false,AideMul=false,Couleur=Crimson,NomExpression=A,Lettre=x,Details,Formel=false,VariableSup=false,ParenthesesFin=false,Finale=false,Type=0}
\defKV[Facto]{Litteral=\setKV[Facto]{Details=false}}
\defKV[Facto]{AutreVariable=\setKV[Facto]{VariableSup}}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCFicheMemo.tex b/Master/texmf-dist/tex/latex/profcollege/PfCFicheMemo.tex
index 511e47da2f1..e2dfc25f137 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCFicheMemo.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCFicheMemo.tex
@@ -1,6 +1,10 @@
%%%
% Fiche m\'emorisation active
%%%
+\def\filedateFicheMemo{2024/08/04}%
+\def\fileversionFicheMemo{0.1}%
+\message{-- \filedateFicheMemo\space v\fileversionFicheMemo}%
+%
\setKVdefault[ClesFicheMemo]{TexteReponses=Réponses,TexteQuestions=Questions,Solution=false,Largeur=\linewidth}
\newcommand\FicheMemo[3][]{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCFonctionAffine.tex b/Master/texmf-dist/tex/latex/profcollege/PfCFonctionAffine.tex
index 77c683b1486..26777eaac0e 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCFonctionAffine.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCFonctionAffine.tex
@@ -1,6 +1,10 @@
%%%
% Fonction Affine
%%%
+\def\filedateAffine{2024/08/04}%
+\def\fileversionAffine{0.1}%
+\message{-- \filedateAffine\space v\fileversionAffine}%
+%
\setKVdefault[ClesAffine]{Nom=f,Variable=x,CoefDir=a,OrdoOrig=b,Ligne=false,Image=false,Antecedent=false,Graphique=false,Retrouve=false,ProgCalcul=false,Unitex=1,Unitey=1,VoirCoef=false,ACoef=0,Redaction=false,Ecriture=false,Definition=false,Centre=false}%ACoefficient=false%: inutile ?
\newcommand\FonctionAffine[5][]{%
@@ -58,24 +62,30 @@
}%
}{%
\ifboolKV[ClesAffine]{Retrouve}{%
- On sait que $\useKV[ClesAffine]{Nom}$ est une fonction affine. Donc elle s'\'ecrit sous la forme : \[\useKV[ClesAffine]{Nom}(\useKV[ClesAffine]{Variable})=\useKV[ClesAffine]{CoefDir}\useKV[ClesAffine]{Variable}+\useKV[ClesAffine]{OrdoOrig}\]
- Or, $\useKV[ClesAffine]{Nom}(\num{#2})=\num{#3}$ et $\useKV[ClesAffine]{Nom}(\num{#4})=\num{#5}$. Par cons\'equent, d'apr\`es la propri\'et\'e des accroissements :
+ \xdef\OrdOrigine{\fpeval{#3-(#3-#5)*#2/(#2-#4)}}%%
+ On sait que $\useKV[ClesAffine]{Nom}$ est une fonction affine. Donc elle s'\'ecrit sous la forme : \[\useKV[ClesAffine]{Nom}(\useKV[ClesAffine]{Variable})=\useKV[ClesAffine]{CoefDir}\useKV[ClesAffine]{Variable}+\useKV[ClesAffine]{OrdoOrig}.\]
+ Or, $\useKV[ClesAffine]{Nom}(\num{#2})=\num{#3}$ et $\useKV[ClesAffine]{Nom}(\num{#4})=\num{#5}$. \ifnum\fpeval{#3-#5}=0
+ Les images de \num{#2} et \num{#4} sont égales à \num{#3}. La fonction affine cherchée est donc constante et s'écrit :
+ \[\useKV[ClesAffine]{Nom}:\useKV[ClesAffine]{Variable}\mapsto\num{\OrdOrigine}.\]
+ \else
+ Par cons\'equent, d'apr\`es la propri\'et\'e des accroissements :
\begin{align*}
\useKV[ClesAffine]{CoefDir}&=\frac{\useKV[ClesAffine]{Nom}(\num{#2})-\useKV[ClesAffine]{Nom}(\num{#4})}{\num{#2}-\xintifboolexpr{#4<0}{(\num{#4})}{\num{#4}}}\\
\useKV[ClesAffine]{CoefDir}&=\frac{\num{#3}-\xintifboolexpr{#5<0}{(\num{#5})}{\num{#5}}}{\num{\fpeval{#2-#4}}}\\
\useKV[ClesAffine]{CoefDir}&=\frac{\num{\fpeval{#3-#5}}}{\num{\fpeval{#2-#4}}}%\\
\SSimpliTest{\fpeval{#3-#5}}{\fpeval{#2-#4}}\ifthenelse{\boolean{Simplification}}{\\\useKV[ClesAffine]{CoefDir}&=\SSimplifie{\fpeval{#3-#5}}{\fpeval{#2-#4}}}{}%
\end{align*}
- La fonction $\useKV[ClesAffine]{Nom}$ s'\'ecrit alors sous la forme $\displaystyle\useKV[ClesAffine]{Nom}(\useKV[ClesAffine]{Variable})=\SSimplifie{\fpeval{#3-#5}}{\fpeval{#2-#4}}\useKV[ClesAffine]{Variable}+\useKV[ClesAffine]{OrdoOrig}$.
+ \def\PfCQuotientAffine{\fpeval{(#3-#5)/(#2-#4)}}%
+ La fonction $\useKV[ClesAffine]{Nom}$ s'\'ecrit alors sous la forme $\displaystyle\useKV[ClesAffine]{Nom}(\useKV[ClesAffine]{Variable})=\ifnum\fpeval{abs(\PfCQuotientAffine)}=1\relax\Affichage[Lettre={\useKV[ClesAffine]{Variable}}]{0}{\PfCQuotientAffine}{0}\else\SSimplifie{\fpeval{#3-#5}}{\fpeval{#2-#4}}\useKV[ClesAffine]{Variable}\fi+\useKV[ClesAffine]{OrdoOrig}$.
\\De plus, comme $\useKV[ClesAffine]{Nom}(\num{#2})=\num{#3}$, alors :
\begin{align*}
- \SSimplifie{\fpeval{#3-#5}}{\fpeval{#2-#4}}\times\xintifboolexpr{#2<0}{(\num{#2})}{\num{#2}}+\useKV[ClesAffine]{OrdoOrig}&=\num{#3}\\
+ \ifnum\PfCQuotientAffine=1\relax\else\SSimplifie{\fpeval{#3-#5}}{\fpeval{#2-#4}}\times\xintifboolexpr{#2<0}{(\num{#2})}{\num{#2}}+\useKV[ClesAffine]{OrdoOrig}\uppercase{&}=\num{#3}\\\fi
\SSimplifie{\fpeval{(#3-#5)*#2}}{\fpeval{#2-#4}}+\useKV[ClesAffine]{OrdoOrig}&=\num{#3}\\
\useKV[ClesAffine]{OrdoOrig}&=\num{\fpeval{#3-(#3-#5)*#2/(#2-#4)}}
\end{align*}
- \xdef\OrdOrigine{\fpeval{#3-(#3-#5)*#2/(#2-#4)}}
La fonction affine $\useKV[ClesAffine]{Nom}$ cherch\'ee est :
- \[\useKV[ClesAffine]{Nom}:\useKV[ClesAffine]{Variable}\mapsto\SSimplifie{\fpeval{#3-#5}}{\fpeval{#2-#4}}\useKV[ClesAffine]{Variable}\xintifboolexpr{\OrdOrigine==0}{}{\xintifboolexpr{\OrdOrigine>0}{+\num{\OrdOrigine}}{-\num{\fpeval{0-\OrdOrigine}}}}\]
+ \[\useKV[ClesAffine]{Nom}:\useKV[ClesAffine]{Variable}\mapsto\ifnum\fpeval{abs(\PfCQuotientAffine)}=1\relax\Affichage[Lettre={\useKV[ClesAffine]{Variable}}]{0}{\PfCQuotientAffine}{\OrdOrigine}\else\SSimplifie{\fpeval{#3-#5}}{\fpeval{#2-#4}}\useKV[ClesAffine]{Variable}\xintifboolexpr{\OrdOrigine==0}{}{\xintifboolexpr{\OrdOrigine>0}{+\num{\OrdOrigine}}{-\num{\fpeval{0-\OrdOrigine}}}}\fi.\]
+ \fi
}{%
%
}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCFractionAireCarre.tex b/Master/texmf-dist/tex/latex/profcollege/PfCFractionAireCarre.tex
index dbfe8109d21..8fe19930167 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCFractionAireCarre.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCFractionAireCarre.tex
@@ -1,6 +1,10 @@
%%%
% Fraction d'aire d'un carré
%%%
+\def\filedateFractionCarre{2024/08/04}%
+\def\fileversionFractionCarre{0.1}%
+\message{-- \filedateFractionCarre\space v\fileversionFractionCarre}%
+%
\setKVdefault[JeuAireCarre]{Couleur=LightSteelBlue,CouleurFond=Cornsilk,Perso=false,Graines=false,Parts=3,Longueur=4,NbPoints=2,Angle=0}%
\defKV[JeuAireCarre]{Graine=\setKV[JeuAireCarre]{Graines}\PfCGraineAlea{#1}}%
\defKV[JeuAireCarre]{ListeParts=\setKV[JeuAireCarre]{Perso}\xdef\PfCFooJeuAireCarre{#1}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCFractionNombre.tex b/Master/texmf-dist/tex/latex/profcollege/PfCFractionNombre.tex
index 52512fb83ef..20d1d1e93ac 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCFractionNombre.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCFractionNombre.tex
@@ -1,6 +1,10 @@
%%%
% Fraction Nombre
%%%
+\def\filedateFractionNombre{2024/08/04}%
+\def\fileversionFractionNombre{0.1}%
+\message{-- \filedateFractionNombre\space v\fileversionFractionNombre}%
+%
\newtoks\tokFractionNombrePerso%
\def\UpdatetoksFN#1\nil{\addtotok\tokFractionNombrePerso{"#1",}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCFrise.tex b/Master/texmf-dist/tex/latex/profcollege/PfCFrise.tex
index a07d2a931bd..c56b2c6f4f6 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCFrise.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCFrise.tex
@@ -1,6 +1,10 @@
%%%
% Frise temporelle
%%%
+\def\filedateFrise{2024/08/04}%
+\def\fileversionFrise{0.1}%
+\message{-- \filedateFrise\space v\fileversionFrise}%
+%
\setKVdefault[ClesFrise]{Longueur=8cm,Fleches=false,Ecart=5mm,Sup=false}%
\newtoks\toklistefrise%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCFubuki.tex b/Master/texmf-dist/tex/latex/profcollege/PfCFubuki.tex
index 0ce7af2ffa4..fd1f973bfd1 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCFubuki.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCFubuki.tex
@@ -1,3 +1,10 @@
+%%%
+% Fubuki
+%%%
+\def\filedateFubuki{2024/08/04}%
+\def\fileversionFubuki{0.1}%
+\message{-- \filedateFubuki\space v\fileversionFubuki}%
+%
\setKVdefault[Fubuki]{Largeur=20pt,Solution=false,Indice=false,Sommes=false,Couleur=LightSteelBlue,Perso=false,Vierge=false}%
\defKV[Fubuki]{Graine=\PfCGraineAlea{#1}}%
\defKV[Fubuki]{Indices=\setKV[Fubuki]{Indice}\xdef\PfCFooListeIndices{#1}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCFutoshiki.tex b/Master/texmf-dist/tex/latex/profcollege/PfCFutoshiki.tex
index 4603265e0e5..300bdd43d0c 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCFutoshiki.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCFutoshiki.tex
@@ -1,6 +1,10 @@
%%%
% Futoshiki
%%%
+\def\filedateFutoshiki{2024/08/04}%
+\def\fileversionFutoshiki{0.1}%
+\message{-- \filedateFutoshiki\space v\fileversionFutoshiki}%
+%
\setKVdefault[Futo]{Largeur=15pt,Solution=false,CouleurSolution=Black,CouleurCase=Cornsilk,StyleTexte={}}
\newlength\PfCFutoHeight
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCGaram.tex b/Master/texmf-dist/tex/latex/profcollege/PfCGaram.tex
index 7e04378a93b..fd5a97439cf 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCGaram.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCGaram.tex
@@ -1,17 +1,21 @@
%%%
% Garam
%%%
-\setKVdefault[Garam]{Taille=7,Largeur=15pt,Solution=false,CouleurSolution=Black}
+\def\filedateGaram{2024/08/04}%
+\def\fileversionGaram{0.1}%
+\message{-- \filedateGaram\space v\fileversionGaram}%
+%
+\setKVdefault[Garam]{Taille=7,Largeur=15pt,Solution=false}%
+\defKV[Garam]{CouleurSolution=\setKV[Garam]{Solution}\colorlet{PfCGaramCoulSol}{#1}}%
\newlength\PfCGaramHeight
\NewDocumentCommand\Garam{o m}{%
- \useKVdefault[Garam]
+ \useKVdefault[Garam]%
\setKV[Garam]{#1}%
\setlength{\PfCGaramHeight}{\useKV[Garam]{Largeur}+\tabcolsep}%
\reademptyitems%
\setsepchar[*]{§*,*/}%
\readlist*\PfCListeGaram{#2}%
- \colorlet{PfCGaramCoulSol}{\useKV[Garam]{CouleurSolution}}%
\begin{NiceTabular}{*{\useKV[Garam]{Taille}}{m{\useKV[Garam]{Largeur}}}}
\CodeBefore
\xintFor* ##1 in{\xintSeq{2}{\fpeval{\useKV[Garam]{Taille}}}}\do{%
@@ -26,7 +30,7 @@
\rule{0pt}{\PfCGaramHeight}\xintFor* ##2 in {\xintSeq{1}{\useKV[Garam]{Taille}}}\do{%
\xintifForFirst{}{&}\StrChar{\PfCListeGaram[##1,##2,1]}{1}[\PfCCaracGaram]%
\IfStrEq{\PfCCaracGaram}{*}{\Block[draw,fill=black]{1-1}{}}{%
- \IfStrEq{\PfCCaracGaram}{!}{\Block{}{\ifboolKV[Garam]{Solution}{\StrGobbleLeft{\PfCListeGaram[##1,##2,1]}{1}}{}}}{\Block{}{\color{PfCGaramCoulSol}\PfCListeGaram[##1,##2,1]}}%
+ \IfStrEq{\PfCCaracGaram}{!}{\Block{}{\ifboolKV[Garam]{Solution}{\color{PfCGaramCoulSol}\StrGobbleLeft{\PfCListeGaram[##1,##2,1]}{1}}{}}}{\Block{}{\PfCListeGaram[##1,##2,1]}}%
}%
}\\
}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCGeometrie.tex b/Master/texmf-dist/tex/latex/profcollege/PfCGeometrie.tex
index ad7e495f044..9bb83ad50d6 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCGeometrie.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCGeometrie.tex
@@ -1,6 +1,10 @@
%%%
% Geometrie
%%%
+\def\filedateGeometrie{2024/08/04}%
+\def\fileversionGeometrie{0.1}%
+\message{-- \filedateGeometrie\space v\fileversionGeometrie}%
+%
\setKVdefault[Geometrie]{CoinBG={(0,0)},CoinHD={(10u,10u)},TypeTrace="Instruments",Clip,Cadres=false,Epaisseur=1,Pointilles=false,Ombre=false,Couleur=black,Ecart=2,ModeleCouleur=5}%
\defKV[Geometrie]{Cadre=\setKV[Geometrie]{Cadres}\setKV[Geometrie]{Clip=false}}%
@@ -42,6 +46,9 @@
elseif \useKV[Geometrie]{TypeTrace}="Espace":
typetrace:="3D";
typerepre:="persp";
+ elseif \useKV[Geometrie]{TypeTrace}="Schema":
+ input PfCSketch;
+ sketchypaths;
fi;
xa:=xpart(Coinbg);
xb:=xpart(Coinhd);
@@ -120,6 +127,9 @@
elseif \useKV[Geometrie]{TypeTrace}="Espace":
typetrace:="3D";
typerepre:="persp";
+ elseif \useKV[Geometrie]{TypeTrace}="Schema":
+ input PfCSketch;
+ sketchypaths;
fi;}
]%
xa:=xpart(Coinbg);
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCGrades.tex b/Master/texmf-dist/tex/latex/profcollege/PfCGrades.tex
index 6155c43ca1d..d86c6e4e420 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCGrades.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCGrades.tex
@@ -1,8 +1,12 @@
%%%
% Grades
%%%
-\setKVdefault[Grades]{Solution=false,Longueur=9,Largeur=9,Echelle=8mm,Graines=false}
-\defKV[Grades]{Graine=\setKV[Grades]{Graines}}
+\def\filedateGrades{2024/08/04}%
+\def\fileversionGrades{0.1}%
+\message{-- \filedateGrades\space v\fileversionGrades}%
+%
+\setKVdefault[Grades]{Solution=false,Longueur=9,Largeur=9,Echelle=8mm,Graines=false}%
+\defKV[Grades]{Graine=\setKV[Grades]{Graines}}%
\NewDocumentCommand\Grades{o}{%
\useKVdefault[Grades]%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCGrimuku.tex b/Master/texmf-dist/tex/latex/profcollege/PfCGrimuku.tex
index 81e667533a3..9185b768929 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCGrimuku.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCGrimuku.tex
@@ -1,6 +1,10 @@
%%%
% Grimuku
%%%
+\def\filedateGrimuku{2024/08/04}%
+\def\fileversionGrimuku{0.1}%
+\message{-- \filedateGrimuku\space v\fileversionGrimuku}%
+%
\setKVdefault[Grimuku]{TLargeur=7,Solution=false,Largeur=30pt,CouleurCase=0.7white}%
\defKV[Grimuku]{CouleurSolution=\setKV[Grimuku]{Solution}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCHiddenMessage.tex b/Master/texmf-dist/tex/latex/profcollege/PfCHiddenMessage.tex
index f472e078443..65948f59498 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCHiddenMessage.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCHiddenMessage.tex
@@ -1,6 +1,10 @@
%%%
% Message caché
%%%
+\def\filedateHidden{2024/08/04}%
+\def\fileversionHidden{0.1}%
+\message{-- \filedateHidden\space v\fileversionHidden}%
+%
\setKVdefault[Hidden]{TLargeur=5,THauteur=3,Solution=false,Hauteur=70pt,Largeur=120pt,Jeu=false,Solution}
\defKV[Hidden]{Plateau=\setKV[Hidden]{Jeu}\setKV[Hidden]{Solution=false}}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCHorloge.tex b/Master/texmf-dist/tex/latex/profcollege/PfCHorloge.tex
index 1133714ecdc..01af381977a 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCHorloge.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCHorloge.tex
@@ -1,7 +1,11 @@
%%%
% Horloges
%%%
-\setKVdefault[ClesHorloge]{Aiguilles,Numerique=false,Secondes,Cadre,Rayon=1,Impression=false}
+\def\filedateHorloge{2024/08/12}%
+\def\fileversionHorloge{0.1a}%
+\message{-- \filedateHorloge\space v\fileversionHorloge}%
+%
+\setKVdefault[ClesHorloge]{Aiguilles,Numerique=false,Secondes,Cadre,Rayon=1,Impression=false,Sombre=false}
\NewDocumentCommand\Horloge{ }{%On désactive les :
\begingroup
@@ -62,13 +66,19 @@
\ifluatex
\mplibforcehmode
\begin{mplibcode}
- boolean Secondes,Impression;
+ boolean Secondes,Impression,Sombre;
Secondes=\useKV[ClesHorloge]{Secondes};
Impression=\useKV[ClesHorloge]{Impression};
+ Sombre=\useKV[ClesHorloge]{Sombre};
if Impression:
+ if Sombre:
+ LightSteelBlue:=0.8*white;
+ Crimson:=black;
+ else:
LightSteelBlue:=0.9*white;
Crimson:=0.5*white;
fi;
+ fi;
u:=0.5u;
draw Afficheur(#1 div10,0);
draw Afficheur(#1 mod10,0) shifted(u*(1,0));
@@ -80,9 +90,21 @@
draw Afficheur(#3 div10,0) shifted(u*(6,0));
draw Afficheur(#3 mod10,0) shifted(u*(7,0));
fi;
+ if Sombre:
+ draw bbox currentpicture;
+ fi;
\end{mplibcode}
\else
- \begin{mpost}[mpsettings={boolean Secondes;Secondes=\useKV[ClesHorloge]{Secondes};}]
+ \begin{mpost}[mpsettings={boolean Secondes,Impression,Sombre;Secondes=\useKV[ClesHorloge]{Secondes};Impression=\useKV[ClesHorloge]{Impression};Sombre=\useKV[ClesHorloge]{Sombre};}]
+ if Impression:
+ if Sombre:
+ LightSteelBlue:=0.8*white;
+ Crimson:=black;
+ else:
+ LightSteelBlue:=0.9*white;
+ Crimson:=0.5*white;
+ fi;
+ fi;
u:=0.5u;
draw Afficheur(#1 div10,0);
draw Afficheur(#1 mod10,0) shifted(u*(1,0));
@@ -94,6 +116,9 @@
draw Afficheur(#3 div10,0) shifted(u*(6,0));
draw Afficheur(#3 mod10,0) shifted(u*(7,0));
fi;
+ if Sombre:
+ draw bbox currentpicture;
+ fi;
\end{mpost}
\fi
}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCInfixRPN.sty b/Master/texmf-dist/tex/latex/profcollege/PfCInfixRPN.sty
new file mode 100644
index 00000000000..a0851a5dd5e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCInfixRPN.sty
@@ -0,0 +1,538 @@
+%%
+%% This is file `infix-RPN.tex',
+%%
+%% IMPORTANT NOTICE:
+%%
+%% Package `infix-RPN.tex'
+%%
+%% Main code:
+%% Jean-Côme Charpentier <jean-come.charpentier@wanadoo.fr>
+%%
+%% Contributions by
+%% Christophe Jorssen <christophe.jorssen@libre.fr.invalid>
+%% `libre' is the french word for `free' :-)
+%%
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN archives
+%% in directory CTAN:/macros/latex/base/lppl.txt.
+%%
+%% DESCRIPTION:
+%% `infix-RPN' is a package to convert infix expressions to
+%% Reverse Polish Notation
+%%
+%%
+\def\RCS$#1: #2 ${\expandafter\def\csname RCS#1\endcsname{#2}}
+\RCS$Revision: 1.7 $
+\RCS$Date: 2004-07-06 23:41:52+02 $
+
+\def\fileversion{0.11}
+\csname infixRPNLoaded\endcsname
+\let\infixRPNLoaded\endinput
+\message{`infix-RPN' v\fileversion\space (Rev \RCSRevision, \RCSDate), J.-C.Charpentier/C.Jorssen}
+
+\edef\PfCopAtCode{\the\catcode`\@}
+\edef\PfCopHatCode{\the\catcode`\^}
+\edef\PfCopUnderscoreCode{\the\catcode`\_}
+\catcode`\@=11\relax
+\catcode`\^=12\relax
+\catcode`\_=11\relax
+
+\def\s@pow{exp}
+\def\s@lpar{(}
+\def\s@rpar{)}
+\def\s@comma{,}
+
+\def\DeclareNewPSOperator{%
+ \bgroup
+ \catcode`\_=11\relax
+ \DeclareNewPSOperator@i
+}
+
+\def\DeclareNewPSOperator@i#1{%
+ \expandafter\ifx\csname PS@operator@list\endcsname\relax
+ \gdef\PS@operator@list{#1}%
+ \else
+ \xdef\PS@operator@list{#1,\PS@operator@list}%
+ \fi
+ \expandafter\gdef\csname s@#1\endcsname{#1}%
+ \egroup
+}
+
+\DeclareNewPSOperator{add}
+\DeclareNewPSOperator{sub}
+\DeclareNewPSOperator{mul}
+\DeclareNewPSOperator{div}
+\DeclareNewPSOperator{exp}
+\DeclareNewPSOperator{abs}
+\DeclareNewPSOperator{sin}
+\DeclareNewPSOperator{cos}
+\DeclareNewPSOperator{atan}
+\DeclareNewPSOperator{neg}
+\DeclareNewPSOperator{ceiling}
+\DeclareNewPSOperator{floor}
+\DeclareNewPSOperator{truncate}
+\DeclareNewPSOperator{sqrt}
+\DeclareNewPSOperator{ln}
+\DeclareNewPSOperator{log}
+
+
+\newcount\@parenthesis
+\newcount\token@cpt
+\newif\if@begin@token
+\newif\if@in@number
+\newif\if@in@decimal
+\newif\if@in@name
+\newif\if@sign
+\def\@tokencreate#1{%
+ \expandafter\xdef\csname PfCop@token\the\token@cpt\endcsname{#1}%
+ \global\advance\token@cpt\@ne
+ \expandafter\global
+ \expandafter\let\csname PfCop@token\the\token@cpt\endcsname\relax
+ \global\advance\token@cpt\m@ne
+}
+\def\@tokenappend#1{%
+ \expandafter\xdef\csname PfCop@token\the\token@cpt\endcsname
+ {\csname PfCop@token\the\token@cpt\endcsname#1}%
+}
+\def\@tokensingle#1{%
+ \edef\@arg{#1}%
+ \if@in@name
+ \global\advance\token@cpt\@ne
+ \@in@namefalse
+ \fi
+ \if@in@number
+ \global\advance\token@cpt\@ne
+ \@in@numberfalse
+ \@in@decimalfalse
+ \fi
+ \ifx\@arg\s@add
+ \if@sign
+ % ignore + sign
+ \global\advance\token@cpt\m@ne
+ \else
+ \@tokencreate{#1}%
+ \fi
+ \else\ifx\@arg\s@sub
+ \if@sign
+ \@tokencreate{\s@neg}%
+ \else
+ \@tokencreate{#1}%
+ \fi
+ \else
+ \@tokencreate{#1}%
+ \fi\fi
+ \global\advance\token@cpt\@ne
+}
+\def\@tokenuse#1{%
+ \expandafter\ifx\csname PfCop@token#1\endcsname\s@comma%
+ \else
+ \xdef\RPN{\RPN\space\csname PfCop@token#1\endcsname}%
+ \fi
+}
+
+\let\endscanline\relax
+\def\scan@line{%
+ \begingroup
+ \catcode`\ =12
+ \@parenthesis=\z@
+ \@in@numberfalse
+ \@in@decimalfalse
+ \@in@namefalse
+ \global\token@cpt=\@ne
+ \global\@signtrue
+ \scan@@line
+}
+\def\scan@@line#1{\scan@@@line#1\endscanline\endgroup}
+\def\scan@@@line#1#2\endscanline{%
+ \PfCop@testchar{#1}%
+ \ifPfCop@isdigit
+ \global\@signfalse
+ \if@in@number
+ \@tokenappend{#1}%
+ \else \if@in@name
+ \@in@namefalse
+ \@in@numbertrue
+ \@tokenappend{#1}%
+ \else
+ \@in@numbertrue
+ \@tokencreate{#1}%
+ \fi\fi
+ \fi
+ \ifPfCop@isplus
+ \@tokensingle{\s@add}%
+ \global\@signtrue
+ \fi
+ \ifPfCop@isminus
+ \@tokensingle{\s@sub}%
+ \global\@signtrue
+ \fi
+ \ifPfCop@ismultiply
+ \@tokensingle{\s@mul}%
+ \global\@signtrue
+ \fi
+ \ifPfCop@isdivide
+ \@tokensingle{\s@div}%
+ \global\@signtrue
+ \fi
+ \ifPfCop@ispower
+ \@tokensingle{\s@pow}%
+ \global\@signtrue
+ \fi
+ \ifPfCop@isdecimalsep
+ \global\@signfalse
+ \if@in@decimal
+ \errmessage{Syntax error: number with multiple separators!}%
+ \else \if@in@number
+ \@in@decimaltrue
+ \@tokenappend{.}%
+ \else
+ \@tokencreate{.}%
+ \@in@numbertrue
+ \@in@decimaltrue
+ \fi\fi
+ \fi
+ \ifPfCop@iscomma
+ \@tokensingle{,}%
+ \global\@signtrue
+ \fi
+ \ifPfCop@islparenthesis
+ \@tokensingle{(}%
+ \global\@signtrue
+ \fi
+ \ifPfCop@isrparenthesis
+ \global\@signfalse
+ \@tokensingle{)}%
+ \fi
+ \ifPfCop@isspace
+ \if@in@number
+ \@in@numberfalse
+ \@in@decimalfalse
+ \global\advance\token@cpt\@ne
+ \else \if@in@name
+ \@in@namefalse
+ \global\advance\token@cpt\@ne
+ \fi\fi
+ \fi
+ \ifPfCop@isother
+ \global\@signfalse
+ \if@in@name
+ \@tokenappend{#1}%
+ \else \if@in@number
+ \@in@numberfalse
+ \@in@decimalfalse
+ \@in@nametrue
+ \@tokenappend{#1}%
+ \else
+ \@in@nametrue
+ \@tokencreate{#1}%
+ \fi\fi
+ \fi
+ \def\arg{#2}%
+ \ifx\empty\arg
+ \let\next\relax
+ \else
+ \let\next\scan@@@line
+ \fi
+ \expandafter\next\arg\endscanline
+}
+\count255=`\0 \edef\PfCop@numbegin{\the\count255}
+\count255=`\9 \edef\PfCop@numend{\the\count255}
+\count255=`\+ \edef\PfCop@plus{\the\count255}
+\count255=`\- \edef\PfCop@minus{\the\count255}
+\count255=`\* \edef\PfCop@multiply{\the\count255}
+\count255=`\/ \edef\PfCop@divide{\the\count255}
+\count255=`\^ \edef\PfCop@power{\the\count255}
+\count255=`\. \edef\PfCop@dot{\the\count255}
+\count255=`\, \edef\PfCop@comma{\the\count255}
+\count255=`\( \edef\PfCop@lparenthesis{\the\count255}
+\count255=`\) \edef\PfCop@rparenthesis{\the\count255}
+\edef\PfCop@space{32}
+\newif\ifPfCop@isdigit
+\newif\ifPfCop@isplus
+\newif\ifPfCop@isminus
+\newif\ifPfCop@ismultiply
+\newif\ifPfCop@isdivide
+\newif\ifPfCop@ispower
+\newif\ifPfCop@isdecimalsep
+\newif\ifPfCop@iscomma
+\newif\ifPfCop@islparenthesis
+\newif\ifPfCop@isrparenthesis
+\newif\ifPfCop@isspace
+\newif\ifPfCop@isother
+\def\PfCop@testchar#1{%
+ \PfCop@isdigitfalse
+ \PfCop@isplusfalse
+ \PfCop@isminusfalse
+ \PfCop@ismultiplyfalse
+ \PfCop@isdividefalse
+ \PfCop@ispowerfalse
+ \PfCop@isdecimalsepfalse
+ \PfCop@iscommafalse
+ \PfCop@islparenthesisfalse
+ \PfCop@isrparenthesisfalse
+ \PfCop@isspacefalse
+ \PfCop@isotherfalse
+ \count255=`#1\relax
+ \ifnum\count255=\PfCop@plus \relax
+ \PfCop@isplustrue
+ \else \ifnum\count255=\PfCop@minus \relax
+ \PfCop@isminustrue
+ \else \ifnum\count255=\PfCop@multiply \relax
+ \PfCop@ismultiplytrue
+ \else \ifnum\count255=\PfCop@divide \relax
+ \PfCop@isdividetrue
+ \else \ifnum\count255=\PfCop@power \relax
+ \PfCop@ispowertrue
+ \else \ifnum\count255=\PfCop@dot \relax
+ \PfCop@isdecimalseptrue
+ \else \ifnum\count255=\PfCop@comma \relax
+ \PfCop@iscommatrue
+ \else \ifnum\count255=\PfCop@lparenthesis \relax
+ \PfCop@islparenthesistrue
+ \else \ifnum\count255=\PfCop@rparenthesis \relax
+ \PfCop@isrparenthesistrue
+ \else \ifnum\count255=\PfCop@space \relax
+ \PfCop@isspacetrue
+ \else \ifnum\count255<\PfCop@numbegin \relax
+ \PfCop@isothertrue
+ \else \ifnum\count255>\PfCop@numend \relax
+ \PfCop@isothertrue
+ \else \PfCop@isdigittrue
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
+}
+
+\def\search@term#1#2{%
+ \begingroup
+ \count1=#1\relax
+ \count255=#2\relax
+ \ifnum\count1=\count255
+ \@tokenuse{#1}%
+ \else
+ \count5=\count255
+ \count7=\count1
+ \advance\count7\m@ne
+ \count3=\z@
+ \loop
+ \ifnum\count5>\count7
+ \expandafter\ifx\csname PfCop@token\the\count5\endcsname\s@rpar\relax
+ \advance\@parenthesis\@ne
+ \fi
+ \expandafter\ifx\csname PfCop@token\the\count5\endcsname\s@lpar\relax
+ \advance\@parenthesis\m@ne
+ \fi
+ \expandafter\ifx\csname PfCop@token\the\count5\endcsname\s@add\relax
+ \ifnum\@parenthesis=\z@
+ \count3=\count5
+ \count5=\z@
+ \fi
+ \fi
+ \expandafter\ifx\csname PfCop@token\the\count5\endcsname\s@sub\relax
+ \ifnum\@parenthesis=\z@
+ \count3=\count5
+ \count5=\z@
+ \fi
+ \fi
+ \expandafter\ifx\csname PfCop@token\the\count5\endcsname\s@comma\relax
+ \ifnum\@parenthesis=\z@
+ \count3=\count5
+ \count5=\z@
+ \fi
+ \fi
+ \advance\count5\m@ne
+ \repeat
+ \ifnum\count3=\z@
+ \ifnum\@parenthesis=\z@
+ \search@factor{\the\count1}{\the\count255}%
+ \else
+ \errmessage{Syntax error: unbalanced parenthesis!}%
+ \fi
+ \else
+ \advance\count3\m@ne
+ \search@term{\the\count1}{\the\count3}%
+ \advance\count3\tw@
+ \search@term{\the\count3}{\the\count255}%
+ \advance\count3\m@ne
+ \@tokenuse{\the\count3}%
+ \fi
+ \fi
+ \endgroup
+}
+\def\search@factor#1#2{%
+ \begingroup
+ \count1=#1\relax
+ \count255=#2\relax
+ \ifnum\count1=\count255
+ \@tokenuse{\the\count1}%
+ \else
+ \count5=\count255
+ \count7=\count1
+ \advance\count7\m@ne
+ \count3=\z@
+ \loop
+ \ifnum\count5>\count7
+ \expandafter\ifx\csname PfCop@token\the\count5\endcsname\s@rpar\relax
+ \advance\@parenthesis\@ne
+ \fi
+ \expandafter\ifx\csname PfCop@token\the\count5\endcsname\s@lpar\relax
+ \advance\@parenthesis\m@ne
+ \fi
+ \expandafter\ifx\csname PfCop@token\the\count5\endcsname\s@mul\relax
+ \ifnum\@parenthesis=\z@
+ \count3=\count5
+ \count5=\z@
+ \fi
+ \fi
+ \expandafter\ifx\csname PfCop@token\the\count5\endcsname\s@div\relax
+ \ifnum\@parenthesis=\z@
+ \count3=\count5
+ \count5=\z@
+ \fi
+ \fi
+ \advance\count5\m@ne
+ \repeat
+ \ifnum\count3=\z@
+ \ifnum\@parenthesis=\z@
+ \search@power{\the\count1}{\the\count255}%
+ \else
+ \errmessage{! Syntax error: unbalanced parenthesis}%
+ \fi
+ \else
+ \advance\count3\m@ne
+ \search@factor{\the\count1}{\the\count3}%
+ \advance\count3\tw@
+ \search@factor{\the\count3}{\the\count255}%
+ \advance\count3\m@ne
+ \@tokenuse{\the\count3}%
+ \fi
+ \fi
+ \endgroup
+}
+\def\search@power#1#2{%
+ \begingroup
+ \count1=#1\relax
+ \count255=#2\relax
+ \ifnum\count1=\count255
+ \@tokenuse{#1}%
+ \else
+ \count5=\count255
+ \count7=\count1
+ \advance\count7\m@ne
+ \count3=\z@
+ \loop
+ \ifnum\count5>\count7
+ \expandafter\ifx\csname PfCop@token\the\count5\endcsname\s@rpar\relax
+ \advance\@parenthesis\@ne
+ \fi
+ \expandafter\ifx\csname PfCop@token\the\count5\endcsname\s@lpar\relax
+ \advance\@parenthesis\m@ne
+ \fi
+ \expandafter\ifx\csname PfCop@token\the\count5\endcsname\s@pow\relax
+ \ifnum\@parenthesis=\z@
+ \count3=\count5
+ \count5=\z@
+ \fi
+ \fi
+ \advance\count5\m@ne
+ \repeat
+ \ifnum\count3=\z@
+ \ifnum\@parenthesis=\z@
+ \search@primary{\the\count1}{\the\count255}%
+ \else
+ \errmessage{Syntax error: unbalanced parenthesis}%
+ \fi
+ \else
+ \advance\count3\m@ne
+ \search@power{\the\count1}{\the\count3}%
+ \advance\count3\tw@
+ \search@power{\the\count3}{\the\count255}%
+ \advance\count3\m@ne
+ \@tokenuse{\the\count3}%
+ \fi
+ \fi
+ \endgroup
+}
+\def\search@primary#1#2{%
+ \begingroup
+ \count1=#1\relax
+ \count255=#2\relax
+ \ifnum\count1=\count255
+ \@tokenuse{#1}%
+ \else
+ \edef\current@cnt{#1}%
+ \expandafter\compare@PS@operator\PS@operator@list,\@nil
+ \expandafter\ifx\csname PfCop@token#1\endcsname\s@lpar\relax
+ \expandafter\ifx\csname PfCop@token#2\endcsname\s@rpar\relax
+ \advance\count1\@ne
+ \advance\count255\m@ne
+ \search@term{\the\count1}{\the\count255}%
+ \else
+ \errmessage{Syntax error: Garbage after parenthesis
+ (tokens '#1' to '#2')}%
+ \fi
+ \fi
+ \fi
+ \endgroup
+}
+
+%\let\@nil\relax
+%\let\@nil\@empty
+
+%\def\compare@PS@operator#1,#2\@nil{%
+% \def\@tempa{#1}%
+% \def\@tempb{#2}%
+% \expandafter\ifx\csname PfCop@token\current@cnt\endcsname\@tempa%
+% \advance\count1\@ne
+% \search@primary{\the\count1}{\the\count255}%
+% \advance\count1\m@ne
+% \@tokenuse{\the\count1}%
+% \fi
+% \ifx\@tempb\empty
+% \let\next\relax
+% \let\@tempb\relax
+% \else
+% \let\next\compare@PS@operator
+% \fi
+% \expandafter\next\@tempb\@nil
+%}
+
+\let\@nil\undefined
+
+\def\compare@PS@operator#1,#2\@nil{%
+ \def\@tempa{#1}%
+ \def\@tempb{#2}%
+ \expandafter\ifx\csname PfCop@token\current@cnt\endcsname\@tempa%
+ \advance\count1\@ne
+ \search@primary{\the\count1}{\the\count255}%
+ \advance\count1\m@ne
+ \@tokenuse{\the\count1}%
+ \fi
+ \ifx\@tempb\empty
+ \let\next\@gobble
+ \else
+ \let\next\compare@PS@operator
+ \fi
+ \expandafter\next\@tempb\@nil
+}
+
+
+\def\infixtoRPN{%
+ \begingroup
+ \catcode`\ =12
+ \catcode`\^=12
+ \infixt@RPN
+}
+\def\infixt@RPN#1{%
+ \xdef\@expression{#1}%
+ \endgroup
+ \def\RPN{}%
+ \expandafter\scan@line\expandafter{\@expression}%
+ \expandafter\ifx\csname PfCop@token\the\token@cpt\endcsname\relax
+ \advance\token@cpt\m@ne
+ \fi
+ \search@term{1}{\the\token@cpt}%
+}
+
+\catcode`\@=\PfCopAtCode\relax
+\catcode`\^=\PfCopHatCode\relax
+\catcode`\_=\PfCopUnderscoreCode\relax
+\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCJeton.tex b/Master/texmf-dist/tex/latex/profcollege/PfCJeton.tex
index e3012070f27..68523efce53 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCJeton.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCJeton.tex
@@ -1,6 +1,10 @@
%%%
% Jeton
%%%
+\def\filedateJeton{2024/08/04}%
+\def\fileversionJeton{0.1}%
+\message{-- \filedateJeton\space v\fileversionJeton}%
+%
\setKVdefault[Jeton]{Diametre=5mm,Impression=false}%
\NewDocumentCommand\Jeton{om}{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCJeuRangement.tex b/Master/texmf-dist/tex/latex/profcollege/PfCJeuRangement.tex
index 6508e6cd1a9..df2f709271b 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCJeuRangement.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCJeuRangement.tex
@@ -1,3 +1,10 @@
+%%%
+% Jeu Rangement
+%%%
+\def\filedateJeuRangement{2024/08/04}%
+\def\fileversionJeuRangement{0.1}%
+\message{-- \filedateJeuRangement\space v\fileversionJeuRangement}%
+%
\setKVdefault[JeuRgt]{Creation=false,Deno=12,Graines=false,Largeur=15pt,Hauteur=20pt,Negatif=false,Decimaux=false,Solution=false,ValeurMin=2,ValeurMax=50,Exposants=false}
\defKV[JeuRgt]{Graine=\setKV[JeuRgt]{Graines}}%
\defKV[JeuRgt]{Exposant=\setKV[JeuRgt]{Exposants}\setKV[JeuRgt]{Deno=1}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCKakurasu.tex b/Master/texmf-dist/tex/latex/profcollege/PfCKakurasu.tex
index 944d295e8fe..d608320b3e5 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCKakurasu.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCKakurasu.tex
@@ -1,6 +1,10 @@
%%%
% Kakurasu
%%%
+\def\filedateKakurasu{2024/08/04}%
+\def\fileversionKakurasu{0.1}%
+\message{-- \filedateKakurasu\space v\fileversionKakurasu}%
+%
\setKVdefault[Kakurasu]{Solution=false,Longueur=6,Largeur=6,Echelle=8mm,Graines=false,Trace=false}
\defKV[Kakurasu]{Graine=\setKV[Kakurasu]{Graines}}
\defKV[Kakurasu]{Traces=\setKV[Kakurasu]{Trace}}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCKakuro.tex b/Master/texmf-dist/tex/latex/profcollege/PfCKakuro.tex
index adf0aba7d21..b480f442757 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCKakuro.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCKakuro.tex
@@ -1,6 +1,10 @@
%%%
% Kakuro
%%%
+\def\filedateKakuro{2024/08/04}%
+\def\fileversionKakuro{0.1}%
+\message{-- \filedateKakuro\space v\fileversionKakuro}%
+%
\setKVdefault[Kakuro]{CouleurCase=LightGray,TLargeur=5,THauteur=5,Solution=false,Largeur=2em,Aide=false,CouleurSolution=Black,Tailles=false}%,Taille=5
\defKV[Kakuro]{ListeNombres=\setKV[Kakuro]{Aide}}%
\defKV[Kakuro]{Taille=\setKV[Kakuro]{Tailles}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCKenKen.tex b/Master/texmf-dist/tex/latex/profcollege/PfCKenKen.tex
index e28efc379f5..21a16dbc783 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCKenKen.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCKenKen.tex
@@ -1,6 +1,10 @@
%%%
% KenKen
%%%
+\def\filedateKenken{2024/08/04}%
+\def\fileversionKenken{0.1}%
+\message{-- \filedateKenken\space v\fileversionKenken}%
+%
\setKVdefault[ClesKK]{Solution=false,Taille=3,Largeur=2em,Aide=false}%
\defKV[ClesKK]{Nombre=\setKV[ClesKK]{Aide}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCLabyrintheJeu.tex b/Master/texmf-dist/tex/latex/profcollege/PfCLabyrintheJeu.tex
index 5922748104b..f60cbce35ec 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCLabyrintheJeu.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCLabyrintheJeu.tex
@@ -1,8 +1,12 @@
%%%
% Labyrinthe
%%%
-\setKVdefault[Labyrinthe]{Lignes=6,Colonnes=3,Longueur=4,Hauteur=2,Passages=false,EcartH=1,EcartV=1,CouleurF=gray!50,Texte=\color{black},SensImpose=false,Slop}
-
+\def\filedateLabyJeu{2024/08/04}%
+\def\fileversionLabyJeu{0.1}%
+\message{-- \filedateLabyJeu\space v\fileversionLabyJeu}%
+%
+\setKVdefault[Labyrinthe]{Lignes=6,Colonnes=3,Longueur=4,Hauteur=2,Passages=false,EcartH=1,EcartV=1,CouleurF=gray!50,Texte=\color{black},SensImpose=false,Slop}%
+%
\tikzset{FDirect/.style={-stealth}}
\tikzset{FIndirect/.style={stealth-}}
\tikzset{FBidirect/.style={stealth-stealth}}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCLabyrintheNombre.tex b/Master/texmf-dist/tex/latex/profcollege/PfCLabyrintheNombre.tex
index b610849ea51..769617eb902 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCLabyrintheNombre.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCLabyrintheNombre.tex
@@ -1,6 +1,10 @@
%%%
% Labyrinthe Nombre
%%%
+\def\filedateLabyNombre{2024/08/04}%
+\def\fileversionLabyNombre{0.1}%
+\message{-- \filedateLabyNombre\space v\fileversionLabyNombre}%
+%
\setKVdefault[ClesLabyNb]{Multiple=5,XDepart=0,YDepart=0,Longueur=7,Largeur=4,Solution=false,Echelle=1,Angle=0,Couleur=red,Murs=false,Nom=Ex1,CouleurChemin=LightSteelBlue,DoubleOperation=false,Multiplication=false,Chemin=false,EntreeSortie=false,Entree="Nord",Sortie="Sud",SortieUnique=true,Graines=false,XArrivees=false,YArrivees=false,ArriveeX=5,ArriveeY=5}
\defKV[ClesLabyNb]{Graine=\setKV[ClesLabyNb]{Graines}}
\defKV[ClesLabyNb]{XArrivee=\setKV[ClesLabyNb]{XArrivees}\setKV[ClesLabyNb]{ArriveeX=#1}}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCLego.tex b/Master/texmf-dist/tex/latex/profcollege/PfCLego.tex
index 901eb0a54bb..80bc5ddc1a4 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCLego.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCLego.tex
@@ -1,6 +1,10 @@
%%%
% Lego
%%%
+\def\filedateLego{2024/09/01}%
+\def\fileversionLego{0.1a}%
+\message{-- \filedateLego\space v\fileversionLego}%
+%
\setKVdefault[Lego]{Echelle=1,Couleur=LightSteelBlue,Unite=8,Diviseur=2,Perso=false,Plaque=false,Largeura=2,Largeurb=2,Unique=false}%
\defKV[Lego]{ListePerso=\setKV[Lego]{Perso}\xdef\PfCFooLegoListePerso{#1}}%
@@ -27,10 +31,14 @@
}{%
\xdef\PfCNbCouleurs{\fpeval{floor(\useKV[Lego]{Unite}/\useKV[Lego]{Diviseur})}}%
}%
- \ChoixCouleur{\PfCNbCouleurs}%
\ifboolKV[Lego]{Perso}{%
+ \setsepchar{,}\ignoreemptyitems%
+ \readlist*\ListeAvantChoixCouleurs{\PfCFooLegoListePerso}%
+ \ChoixCouleur{\ListeAvantChoixCouleurslen}%
+ \reademptyitems%
\BuildBarreLego{\FooCouleur}{\PfCFooLegoListePerso}%
}{%
+ \ChoixCouleur{\PfCNbCouleurs}%
\BuildBarreLego{\FooCouleur}{}%
}%
}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCMentalo.tex b/Master/texmf-dist/tex/latex/profcollege/PfCMentalo.tex
index 84176c0d1ff..0c024facd2a 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCMentalo.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCMentalo.tex
@@ -1,6 +1,10 @@
%%%
% Mentalo
%%%
+\def\filedateMentalo{2024/08/04}%
+\def\fileversionMentalo{0.1}%
+\message{-- \filedateMentalo\space v\fileversionMentalo}%
+%
\NewDocumentCommand\PfCNumold{m}{%
\xintifboolexpr{#1<0}{(\num{#1})}{\num{#1}}%
}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCMidpoint.tex b/Master/texmf-dist/tex/latex/profcollege/PfCMidpoint.tex
index 0813f66c446..4fea05dcbb7 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCMidpoint.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCMidpoint.tex
@@ -1,6 +1,10 @@
%%%
% Midpoint
%%%
+\def\filedateMidpoint{2024/08/04}%
+\def\fileversionMidpoint{0.1}%
+\message{-- \filedateMidpoint\space v\fileversionMidpoint}%
+%
\setKVdefault[MidPoint]{Solution=false,Graines=false,Hard=false}
\defKV[MidPoint]{Graine=\setKV[MidPoint]{Graines}}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCModeleBarre.tex b/Master/texmf-dist/tex/latex/profcollege/PfCModeleBarre.tex
index a05ae0075b6..e894a9ebc6f 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCModeleBarre.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCModeleBarre.tex
@@ -1,6 +1,10 @@
%%%
% Modele en barre
%%%
+\def\filedateModeleBarre{2024/08/04}%
+\def\fileversionModeleBarre{0.1}%
+\message{-- \filedateModeleBarre\space v\fileversionModeleBarre}%
+%
\setKVdefault[ClesModeleBarre]{Hauteur=0.5cm,Largeur=1cm,Separation={0},Homogene=false,Multiplicatif=false,MultiplicatifH=false,MultiplicatifB=false}%Separation pour conserver le lien avec les équations.
\defKV[ClesModeleBarre]{Longueur=\setKV[ClesModeleBarre]{Homogene}}%
\defKV[ClesModeleBarre]{AccoladesH=\setKV[ClesModeleBarre]{MultiplicatifH}\setKV[ClesModeleBarre]{Multiplicatif}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCMosaique.tex b/Master/texmf-dist/tex/latex/profcollege/PfCMosaique.tex
index 91936d597b1..af964995ef7 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCMosaique.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCMosaique.tex
@@ -1,6 +1,10 @@
%%%
% Mosaique
%%%
+\def\filedateMosaique{2024/08/04}%
+\def\fileversionMosaique{0.1}%
+\message{-- \filedateMosaique\space v\fileversionMosaique}%
+%
\setKVdefault[ClesMosaique]{Largeur=2,Hauteur=2,Solution=false,Type=1,Label,Echelle=1cm}
\newcommand\DessineMosaique[2][]{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCMotsCodes.tex b/Master/texmf-dist/tex/latex/profcollege/PfCMotsCodes.tex
index 0929b761971..088f417c35d 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCMotsCodes.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCMotsCodes.tex
@@ -1,6 +1,10 @@
%%%
% Mots Cod\'es
%%%
+\def\filedateMotsCodes{2024/08/04}%
+\def\fileversionMotsCodes{0.1}%
+\message{-- \filedateMotsCodes\space v\fileversionMotsCodes}%
+%
\setKVdefault[MotsCodes]{LargeurT=1cm,Colonnes=5,Largeur=3cm,Solution=false,Math=false}%
\newcommand\MotsCodes[2][]{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCMotsCroises.tex b/Master/texmf-dist/tex/latex/profcollege/PfCMotsCroises.tex
index 4e6734dd7b4..5310516799b 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCMotsCroises.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCMotsCroises.tex
@@ -1,6 +1,10 @@
%%%
% Mots croisés
%%%
+\def\filedateMotsCroises{2024/08/04}%
+\def\fileversionMotsCroises{0.1}%
+\message{-- \filedateMotsCroises\space v\fileversionMotsCroises}%
+%
\setKVdefault[ClesCroises]{Lignes=6,Colonnes=8,Solution=false,Croises=false,Couleur=gray,Largeur=1em}
\newcounter{PfCLettreHorizontal}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCMotsEmpiles.tex b/Master/texmf-dist/tex/latex/profcollege/PfCMotsEmpiles.tex
index 1c42d433a6a..c8ec37bc5d8 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCMotsEmpiles.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCMotsEmpiles.tex
@@ -1,6 +1,10 @@
%%%
% Mots empilés
%%%
+\def\filedateMotsEmpiles{2024/08/04}%
+\def\fileversionMotsEmpiles{0.1}%
+\message{-- \filedateMotsEmpiles\space v\fileversionMotsEmpiles}%
+%
\setKVdefault[ClesMotEmpile]{Colonne=4,Solution=false,Couleur=black}
\newcounter{CompteurMotEmpile}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCMulArt.tex b/Master/texmf-dist/tex/latex/profcollege/PfCMulArt.tex
index 27156c00b7f..99425418732 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCMulArt.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCMulArt.tex
@@ -1,6 +1,10 @@
%%%
% Mulart
%%%
+\def\filedateMulArt{2024/08/04}%
+\def\fileversionMulArt{0.1}%
+\message{-- \filedateMulArt\space v\fileversionMulArt}%
+%
\setKVdefault[TabMul]{Multiple=2,Cibles=false,Largeur=20pt,Couleurs=false,Graines=false,Operations=false,Enonce=false,SchemaEnonce=false}
\defKV[TabMul]{Couleur=\setKV[TabMul]{Couleurs}}
\defKV[TabMul]{Graine=\setKV[TabMul]{Graines}\PfCGraineAlea{#1}}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCMulJal.tex b/Master/texmf-dist/tex/latex/profcollege/PfCMulJal.tex
index befce7a1106..3f9ba37758d 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCMulJal.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCMulJal.tex
@@ -1,6 +1,10 @@
%%%
% Multiplication par jalousie
%%%
+\def\filedateMulJal{2024/08/04}%
+\def\fileversionMulJal{0.1}%
+\message{-- \filedateMulJal\space v\fileversionMulJal}%
+%
\setKVdefault[MulJal]{Solution=false,CouleurTab=gray!15}%
\defKV[MulJal]{CouleurSolution=\setKV[MulJal]{Solution}}%
%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCMulJap.tex b/Master/texmf-dist/tex/latex/profcollege/PfCMulJap.tex
index e0457471e18..8fdf37c5b30 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCMulJap.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCMulJap.tex
@@ -1,6 +1,10 @@
%%%
% Multiplication Japonaise
%%%
+\def\filedateMulJap{2024/08/04}%
+\def\fileversionMulJap{0.1}%
+\message{-- \filedateMulJap\space v\fileversionMulJap}%
+%
\setKVdefault[MulJap]{Couleur=Orange,Bloc=false,DessinSeul=false}
\defKV[MulJap]{CouleurBloc=\setKV[MulJap]{Bloc}}
@@ -229,5 +233,6 @@
endfor;
fi;
\end{mplibcode}
+ \mplibnumbersystem{scaled}
\fi
}% \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCMulPiecesPuzzle.tex b/Master/texmf-dist/tex/latex/profcollege/PfCMulPiecesPuzzle.tex
index 56a7ad6943b..aaf98ffe6ac 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCMulPiecesPuzzle.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCMulPiecesPuzzle.tex
@@ -1,12 +1,16 @@
%%%
% Pièces de puzzle pour multiplication
%%%
+\def\filedateMulPiecesPuzzle{2024/08/04}%
+\def\fileversionMulPiecesPuzzle{0.1}%
+\message{-- \filedateMulPiecesPuzzle\space v\fileversionMulPiecesPuzzle}%
+%
%https://mirror.gutenberg-asso.fr/tex.loria.fr/prod-graph/metafun.pdf
\newtoks\toklistepuzzlea%
\def\UpdatetoksPuzzleA#1\nil{\addtotok\toklistepuzzlea{"#1",}}%
-\setKVdefault[ClesPuzzleMul]{Solution=false,Unite=1cm,Couleur=LightSteelBlue}
+\setKVdefault[ClesPuzzleMul]{Solution=false,Unite=1cm,Couleur=LightSteelBlue,Cube=false}
\NewDocumentCommand\PuzzleMul{om}{%
\useKVdefault[ClesPuzzleMul]%
@@ -17,8 +21,12 @@
\xdef\HauteurPuzzle{\PfCListePuzzlelen}%
\toklistepuzzlea{}%
\foreachitem\compteur\in\PfCListePuzzle{\expandafter\UpdatetoksPuzzleA\compteur\nil}%
- \BuildPuzzle{\the\toklistepuzzlea}%
-}
+ \ifboolKV[ClesPuzzleMul]{Cube}{%
+ \BuildPuzzleEspace{\the\toklistepuzzlea}%
+ }{%
+ \BuildPuzzle{\the\toklistepuzzlea}%
+ }%
+}%
\def\BuildPuzzleCode{%
def PreDrawPuzzle ( expr ww, hh, uu ) =
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCNombreAstral.tex b/Master/texmf-dist/tex/latex/profcollege/PfCNombreAstral.tex
index 428cd8d37c7..df1903bc0ea 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCNombreAstral.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCNombreAstral.tex
@@ -1,6 +1,10 @@
%%%
% Nombre Astral
%%%
+\def\filedateNombreAstral{2024/08/04}%
+\def\fileversionNombreAstral{0.1}%
+\message{-- \filedateNombreAstral\space v\fileversionNombreAstral}%
+%
\setKVdefault[NombreAstral]{Solution=false,Graines=false,Echelle=1,Couleur=LightSteelBlue,Horizontal=false}
\defKV[NombreAstral]{Graine=\setKV[NombreAstral]{Graines}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCNonogramme.tex b/Master/texmf-dist/tex/latex/profcollege/PfCNonogramme.tex
index 8adfbd5654e..d63fd9c70f1 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCNonogramme.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCNonogramme.tex
@@ -1,3 +1,10 @@
+%%%
+% Nonogramme
+%%%
+\def\filedateNonogramme{2024/08/04}%
+\def\fileversionNonogramme{0.1}%
+\message{-- \filedateNonogramme\space v\fileversionNonogramme}%
+%
\setKVdefault[Nono]{Largeur=10pt,Taille=5,Unite=1cm,Solution=false,Enonce=true}
\newtoks\toklistenonoa%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCNotionFonction.tex b/Master/texmf-dist/tex/latex/profcollege/PfCNotionFonction.tex
index 117c2a09059..265beb92f9b 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCNotionFonction.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCNotionFonction.tex
@@ -1,6 +1,10 @@
%%%
% Fonction
%%%
+\def\filedateFonction{2024/08/04}%
+\def\fileversionFonction{0.1}%
+\message{-- \filedateFonction\space v\fileversionFonction}%
+%
\setKVdefault[ClesFonction]{Nom=f,Variable=x,Calcul=x,Tableau=false,Largeur=5mm,Ecriture=false,Definition=false,Points=false,Tangentes=false,PasX=1,PasY=1,UniteX=1,UniteY=1,Prolonge=false,Trace=false,Catmull=false,Splines=false,Lagrange=false,Epaisseur=1,Couleur=black,CouleurTrace=black,PointsCourbe=true,Codes=false,Origine={(0,0)},Vide=false}
\defKV[ClesFonction]{Traces=\setKV[ClesFonction]{Codes}}%
@@ -22,18 +26,20 @@
\setKV[TraceG]{#1}%
\tokPfCListeDesFonctions{}%
\tokPfCListeDesNomsFonctions{}%
- \xdef\PfCFooFn{\useKV[ClesFonction]{Calcul}}
- \xdef\PfCFooNomFn{\useKV[TraceG]{NomCourbe}}
+ \xdef\PfCFooFn{\useKV[ClesFonction]{Calcul}}%
+ \xdef\PfCFooNomFn{\useKV[TraceG]{NomCourbe}}%
\ifx\bla\PfCFooFn\bla%
- \else
- \readlist*\ListeDesFonctions{\PfCFooFn}
+ \else%
+ \setsepchar{,}\ignoreemptyitems
+ \readlist*\ListeDesFonctions{\PfCFooFn}%
+ \reademptyitems
\foreachitem\compteur\in\ListeDesFonctions{\expandafter\UpdatePfCListeDesFonctions\compteur\nil}%
- \fi
- \ifx\bla\PfCFooNomFn\bla
- \else
- \readlist*\ListeDesNomsFonctions{\PfCFooNomFn}
+ \fi%
+ \ifx\bla\PfCFooNomFn\bla%
+ \else%
+ \readlist*\ListeDesNomsFonctions{\PfCFooNomFn}%
\foreachitem\compteur\in\ListeDesNomsFonctions{\expandafter\UpdatePfCListeDesNomsFonctions\compteur\nil}%
- \fi
+ \fi%
\tokPfCLabelX{}%
\tokPfCLabelY{}%
\addtotok\tokPfCLabelX{"\useKV[TraceG]{LabelX}"}%
@@ -79,7 +85,7 @@
\MPCourbeNew{\PfCFooListePoints}%
}%
}%
- }
+ }%
}{%
\setsepchar{,}\ignoreemptyitems%
\readlist*\ListeFonction{#2}%
@@ -1247,6 +1253,17 @@ vardef Lagrange(expr valeur)(text t)=
%
RetiensCouleur(\useKV[TraceG]{CouleurTrace});
%
+ numeric styletrace[];
+ vardef RetiensStyle(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ styletrace[n]=p_;
+ endfor;
+ enddef;
+ %
+ RetiensStyle(\useKV[TraceG]{StyleTrace});
+ %
pair Origine,DecalageOrigine;
Origine=(xmin,ymin)+\useKV[TraceG]{Origine};
DecalageOrigine=\useKV[TraceG]{Origine};
@@ -1303,6 +1320,19 @@ vardef Lagrange(expr valeur)(text t)=
n:=0;
for p_=texto:
n:=n+1;
+ if unknown styletrace[n]:
+ drawoptions();
+ else:
+ if styletrace[n]=1:
+ drawoptions(dashed evenly);
+ elseif styletrace[n]=2:
+ drawoptions(dashed withdots);
+ elseif styletrace[n]=3:
+ drawoptions(dashed dashpattern(on6 off3 on1.5 off3));
+ else:
+ drawoptions();
+ fi;
+ fi;
draw courbe[n](borneinf[n],bornesup[n],100)(scantokens p_) withpen (pencircle scaled Epaisseur) withcolor if unknown colortrace[n]:black else: colortrace[n] fi;
endfor;
enddef;
@@ -1417,6 +1447,9 @@ vardef Lagrange(expr valeur)(text t)=
trace u*(xmin-grillex,k)--u*(xmax+grillex,k);
endfor;
drawoptions();
+ else:
+ grillex:=0;
+ grilley:=0;
fi;
if Graduations:
for k=gradx step gradx until (((xmax-xmin)-xpart(DecalageOrigine))*pasx):
@@ -1468,11 +1501,12 @@ vardef Lagrange(expr valeur)(text t)=
else:
DessineCourbes(#1);
NommeCourbes(#2);
- if Grille:
clip currentpicture to polygone(u*(xmin-grillex,ymin-grilley),u*(xmax+grillex,ymin-grilley),u*(xmax+grillex,ymax+grilley),u*(xmin-grillex,ymax+grilley));
+ if Grille:
+ %clip currentpicture to polygone(u*(xmin-grillex,ymin-grilley),u*(xmax+grillex,ymin-grilley),u*(xmax+grillex,ymax+grilley),u*(xmin-grillex,ymax+grilley));
draw polygone(u*(xmin-grillex,ymin-grilley),u*(xmax+grillex,ymin-grilley),u*(xmax+grillex,ymax+grilley),u*(xmin-grillex,ymax+grilley)) withcolor 0.75white;
else:
- clip currentpicture to polygone(u*(xmin,ymin),u*(xmax,ymin),u*(xmax,ymax),u*(xmin,ymax));
+ %clip currentpicture to polygone(u*(xmin,ymin),u*(xmax,ymin),u*(xmax,ymax),u*(xmin,ymax));
fi;
%
if Code:
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCNumberHive.tex b/Master/texmf-dist/tex/latex/profcollege/PfCNumberHive.tex
index ee37a5b2f18..96019b3d831 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCNumberHive.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCNumberHive.tex
@@ -1,6 +1,10 @@
%%%
% Number Hive
%%%
+\def\filedateNumberHive{2024/08/04}%
+\def\fileversionNumberHive{0.1}%
+\message{-- \filedateNumberHive\space v\fileversionNumberHive}%
+%
\setKVdefault[NumberHive]{Negatif=false,Produit=false,Niveau=8,Double=false,ListeCouleurs={Cornsilk,LightSteelBlue},CouleurCase=false,Jeton=false,Graines=false,Aide=false,UniteHexa=6mm}%
\defKV[NumberHive]{Cases=\setKV[NumberHive]{CouleurCase}}%
\defKV[NumberHive]{Jetons=\setKV[NumberHive]{Jeton}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCNumerationsAnciennes.tex b/Master/texmf-dist/tex/latex/profcollege/PfCNumerationsAnciennes.tex
index a864165fba1..b9560bb504b 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCNumerationsAnciennes.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCNumerationsAnciennes.tex
@@ -1,3 +1,10 @@
+%%%
+% Numerations anciennes
+%%%
+\def\filedateNumAnciennes{2024/08/04}%
+\def\fileversionNumAnciennes{0.1}%
+\message{-- \filedateNumAnciennes\space v\fileversionNumAnciennes}%
+%
\setKVdefault[NumerationAncienne]{Couleur=black}%
\NewDocumentCommand\Chinoise{om}{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCOperationsTrou.tex b/Master/texmf-dist/tex/latex/profcollege/PfCOperationsTrou.tex
index 347ca499bcf..ca9f72976e9 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCOperationsTrou.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCOperationsTrou.tex
@@ -1,11 +1,11 @@
%%%
% Op\'erations pos\'es à trou
%%%
-%% D'après https://tex.stackexchange.com/questions/277246/drawing-a-circle-around-the-numbers-in-xlop-package
-
-%\begin{document}%
+\def\filedateOpTrou{2024/08/04}%
+\def\fileversionOpTrou{0.1}%
+\message{-- \filedateOpTrou\space v\fileversionOpTrou}%
%
-%\end{document}
+%% D'après https://tex.stackexchange.com/questions/277246/drawing-a-circle-around-the-numbers-in-xlop-package
\newcommand\PfCchiffre[2]{\tikz[remember picture] \node[inner sep=0pt](#1){#2};}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCPapiers.tex b/Master/texmf-dist/tex/latex/profcollege/PfCPapiers.tex
index 0bb41363ec6..3929600a6e6 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCPapiers.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCPapiers.tex
@@ -1,6 +1,10 @@
%%%
% Papiers
%%%
+\def\filedatePapiers{2024/08/04}%
+\def\fileversionPapiers{0.1}%
+\message{-- \filedatePapiers\space v\fileversionPapiers}%
+%
\setKVdefault[Papiers]{Cinq=true,Seyes=false,Echelle=8,Isometrique=false,IsometriquePointe=false,Millimetre=false,Triangle=false,Largeur=5,Hauteur=4,Couleur=black,Grille=-1,GrillePointe=-1,PageEntiere=false,ZoneTexte=false,Baseline=false,CodeAfter=false}%
\defKV[Papiers]{Traces=\setKV[Papiers]{CodeAfter}}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCPatronPaves.tex b/Master/texmf-dist/tex/latex/profcollege/PfCPatronPaves.tex
index dfbd3a5d233..904f272411a 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCPatronPaves.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCPatronPaves.tex
@@ -1,7 +1,13 @@
%%%
% Patrons de pavés droits et cubes
%%%
-\setKVdefault[ClesPatron]{Cube,Arete=1cm,ListeCouleurs={white},Pave=false,Largeur=2cm,Hauteur=1.5cm,Profondeur=1cm,Codes=false}%
+\def\filedatePatronspaves{2024/08/04}%
+\def\fileversionPatronspaves{0.1}%
+\message{-- \filedatePatronspaves\space v\fileversionPatronspaves}%
+%
+\setKVdefault[ClesPatron]{Cube,Arete=1cm,ListeCouleurs={white},Pave=false,Largeur=2cm,Hauteur=1.5cm,Profondeur=1cm,Codes=false,AColorier=false}%
+%EcartColorier est en nombre de parts pour le cube, en mm pour le pavé.
+\defKV[ClesPatron]{EcartColorier=\setKV[ClesPatron]{AColorier}}%
\defKV[ClesPatron]{Traces=\setKV[ClesPatron]{Codes}}%
\newtoks\toklistepatron%
@@ -30,7 +36,7 @@
}%
}%
-\setsepchar{,}\ignoreemptyitems
+\setsepchar{,}\ignoreemptyitems%
\readlist*\ListePatronsCube{%
{ooxo,xxxx,ooxo},%
{oxoo,xxxx,xooo},%
@@ -78,7 +84,7 @@
{poho,lpho,poho,lohp},%
{poho,loho,plhl,loho},%
{poho,loho,plho,lohp},%
- {poho,loho,poho,lphp},%
+ {poho,loho,poho,lphp},%20
{phlh,holo,polo,holo},%
{phlo,holp,polo,holo},%
{phlo,holo,polh,holo},%
@@ -88,17 +94,17 @@
{polo,hplo,polo,holp},%
{polo,holo,phlh,holo},%
{polo,holo,phlo,holp},%
- {polo,holo,polo,hplp},%
+ {polo,holo,polo,hplp},%30
{hlpo,lopo,hopl,pool},%
{hopo,lhpo,hopl,pool},%
{hopo,lopo,hlph,pool},%
{lhpo,hopo,loph,pooh},%
{lopo,hlpo,loph,pooh},%
- {lopo,hopo,lhoh,pooh},%
+ {lopo,hopo,lhph,pooh},%
{plho,loho,pohl,hool},%
{poho,lpho,pohl,hool},%
{poho,loho,plhl,hool},%
- {lpho,poho,lohp,hoop},%
+ {lpho,poho,lohp,hoop},%40
{loho,plho,lohp,hoop},%
{loho,poho,lphp,hoop},%
{phlo,holo,polh,looh},%
@@ -108,23 +114,23 @@
{holo,phlo,holp,loop},%
{holo,polo,hplp,loop},%
{hpo,lpo,hpl,pol,hol},%
- {lpo,hpo,lph,poh,loh},%
- {pho,plo,phl,hol,pol},%
+ {lpo,hpo,lph,poh,loh},%50
+ {pho,lho,phl,hol,pol},%
{hpoo,lpho,pohl,hool},%
{lpoo,hplo,polh,looh},%
- {phoo,lhpo,hopl,pool}
-}
+ {phoo,lhpo,hopl,pool}%
+}%
\readlist*\ListePatronsPaveCouleurs{%
- {Orange,Crimson,Orange,LightGreen,Crimson,LightGreen},
- {Orange,Crimson,LightGreen,Orange,Crimson,LightGreen},
- {Orange,Crimson,LightGreen,Crimson,Orange,LightGreen},
- {Orange,Crimson,LightGreen,Crimson,LightGreen,Orange},
- {Crimson,Orange,LightGreen,Orange,Crimson,LightGreen},
- {Crimson,Orange,LightGreen,Crimson,Orange,LightGreen},
- {Crimson,Orange,LightGreen,Crimson,LightGreen,Orange},
- {Crimson,LightGreen,Orange,Crimson,Orange,LightGreen},
- {Crimson,LightGreen,Orange,Crimson,LightGreen,Orange},
+ {Orange,Crimson,Orange,LightGreen,Crimson,LightGreen},%
+ {Orange,Crimson,LightGreen,Orange,Crimson,LightGreen},%
+ {Orange,Crimson,LightGreen,Crimson,Orange,LightGreen},%
+ {Orange,Crimson,LightGreen,Crimson,LightGreen,Orange},%
+ {Crimson,Orange,LightGreen,Orange,Crimson,LightGreen},%
+ {Crimson,Orange,LightGreen,Crimson,Orange,LightGreen},%
+ {Crimson,Orange,LightGreen,Crimson,LightGreen,Orange},%
+ {Crimson,LightGreen,Orange,Crimson,Orange,LightGreen},%
+ {Crimson,LightGreen,Orange,Crimson,LightGreen,Orange},%
{Crimson,LightGreen,Crimson,Orange,LightGreen,Orange},%10
{LightGreen,Crimson,LightGreen,Orange,Crimson,Orange},%
{LightGreen,Crimson,Orange,LightGreen,Crimson,Orange},%
@@ -169,9 +175,277 @@
{Crimson,Orange,Crimson,LightGreen,Orange,LightGreen},%
{Crimson,LightGreen,Orange,Crimson,LightGreen,Orange},%
{LightGreen,Crimson,Orange,LightGreen,Crimson,Orange},%
- {Crimson,Orange,LightGreen,Crimson,Orange,LightGreen}%
+ {Crimson,Orange,LightGreen,Crimson,Orange,LightGreen}%
+}%
+\reademptyitems%
+
+\def\MPPatronPaveCode{%
+ Largeur=\useKV[ClesPatron]{Largeur};
+ Hauteur=\useKV[ClesPatron]{Hauteur};
+ Profondeur=\useKV[ClesPatron]{Profondeur};
+ %
+ pair C[],M[],N[],O[],P[];
+ %
+ color Col[],CoulDefaut;
+ CoulDefaut=white;
+ %
+ boolean Codes,Allume[][],AColorier;
+ Codes=\useKV[ClesPatron]{Codes};
+ AColorier=\useKV[ClesPatron]{AColorier};
+ if AColorier:
+ EcartColorier=\useKV[ClesPatron]{EcartColorier}*1mm;
+ fi;
+ %
+ numeric DecalCol[];
+ %
+ vardef Allumage(text t)=
+ nblignes:=0;
+ for p_=t:
+ Long:=length p_;
+ nblignes:=nblignes+1;
+ for k=0 upto Long-1:
+ Allume[nblignes][k]=false;
+ endfor;
+ endfor;
+ enddef;
+ %
+ vardef LectureLargeur(text t)=
+ for p_=t:
+ Long:=length p_;
+ endfor;
+ for k=1 upto Long-1:
+ for p_=t:
+ if substring(k,k+1) of p_="o":
+ if k=1:
+ if (substring(0,1) of p_="h") and (substring(1,2) of p_="p"):
+ DecalCol[k]:=Largeur;
+ fi;
+ if (substring(0,1) of p_="h") and (substring(1,2) of p_="l"):
+ DecalCol[k]:=Profondeur;
+ fi;
+ if (substring(0,1) of p_="p") and (substring(1,2) of p_="h"):
+ DecalCol[k]:=Largeur;
+ fi;
+ if (substring(0,1) of p_="p") and (substring(1,2) of p_="l"):
+ DecalCol[k]:=Hauteur;
+ fi;
+ if (substring(0,1) of p_="l") and (substring(1,2) of p_="h"):
+ DecalCol[k]:=Profondeur;
+ fi;
+ if (substring(0,1) of p_="l") and (substring(1,2) of p_="p"):
+ DecalCol[k]:=Hauteur;
+ fi;
+ fi;
+ elseif substring(k,k+1) of p_="l":
+ DecalCol[k]:=Largeur;
+ elseif substring(k,k+1) of p_="h":
+ DecalCol[k]:=Hauteur;
+ elseif substring(k,k+1) of p_="p":
+ DecalCol[k]:=Profondeur;
+ fi;
+ endfor;
+ endfor;
+ enddef;
+ %
+ vardef Patron(text t)=
+ path PathPave;
+ nblignes:=-1;
+ NBLignes:=0;
+ nbcol:=0;
+ nbfaces:=0;
+ for p_=t:
+ Long:=length p_;
+ nbcolonnes:=0;
+ NBColonnes:=0;
+ if substring(0,1) of p_="h":
+ YEchelle:=Hauteur;
+ elseif substring(0,1) of p_="l":
+ YEchelle:=Largeur;
+ elseif substring(0,1) of p_="p":
+ YEchelle:=Profondeur;
+ fi;
+ nblignes:=nblignes-YEchelle;
+ NBLignes:=NBLignes+1;
+ for k=1 upto Long-1:
+ if substring(k,k+1) of p_="o":
+ if k=1:
+ PathPave:=(unitsquare scaled 0) shifted ((0,-1));
+ fi;
+ elseif substring(k,k+1) of p_="l":
+ nbcol:=nbcol+1;
+ PathPave:=(unitsquare xscaled Largeur yscaled YEchelle) shifted ((nbcolonnes,nblignes));
+ Allume[NBLignes][NBColonnes]:=true;
+ nbfaces:=nbfaces+1;
+ C[nbfaces]=center PathPave;
+ M[nbfaces]=point(0) of PathPave;
+ N[nbfaces]=point(1) of PathPave;
+ O[nbfaces]=point(2) of PathPave;
+ P[nbfaces]=point(3) of PathPave;
+ elseif substring(k,k+1) of p_="h":
+ nbcol:=nbcol+1;
+ PathPave:=(unitsquare xscaled Hauteur yscaled YEchelle) shifted ((nbcolonnes,nblignes));
+ Allume[NBLignes][NBColonnes]:=true;
+ nbfaces:=nbfaces+1;
+ C[nbfaces]=center PathPave;
+ M[nbfaces]=point(0) of PathPave;
+ N[nbfaces]=point(1) of PathPave;
+ O[nbfaces]=point(2) of PathPave;
+ P[nbfaces]=point(3) of PathPave;
+ elseif substring(k,k+1) of p_="p":
+ nbcol:=nbcol+1;
+ PathPave:=(unitsquare xscaled Profondeur yscaled YEchelle) shifted ((nbcolonnes,nblignes));
+ Allume[NBLignes][NBColonnes]:=true;
+ nbfaces:=nbfaces+1;
+ C[nbfaces]=center PathPave;
+ M[nbfaces]=point(0) of PathPave;
+ N[nbfaces]=point(1) of PathPave;
+ O[nbfaces]=point(2) of PathPave;
+ P[nbfaces]=point(3) of PathPave;
+ fi;
+ if (unknown Col[nbcol]):
+ else:
+ if Col[nbcol]=white:
+ else:
+ if AColorier=false:
+ fill PathPave withcolor Col[nbcol];
+ fi;
+ fi;
+ fi;
+ if nbfaces>0:
+ trace M[nbfaces]--P[nbfaces];
+ trace N[nbfaces]--O[nbfaces];
+ trace P[nbfaces]--O[nbfaces];
+ trace M[nbfaces]--N[nbfaces];
+ fi;
+ nbcolonnes:=nbcolonnes+DecalCol[k];
+ NBColonnes:=NBColonnes+1;
+ endfor;
+ endfor;
+ enddef;
+ %
+ vardef EffectuerTraces=
+ if Codes:
+ \useKV[ClesPatron]{Traces};
+ fi;
+ enddef;
+}%
+
+\def\MPPatronPave#1#2{%
+ \ifluatex
+ \mplibforcehmode
+ \begin{mplibcode}
+ \MPPatronPaveCode
+ n:=0;
+ for p_=#2:
+ n:=n+1;
+ if color p_:
+ Col[n]=p_;
+ else:
+ Col[n]=CoulDefaut;
+ fi;
+ endfor;
+ %
+ LectureLargeur(#1);
+ Allumage(#1);
+ if AColorier:
+ drawoptions(dashed evenly);
+ fi;
+ Patron(#1);
+ if AColorier:
+ drawoptions();
+ toto:=0;
+ for l=1 upto NBLignes:
+ for k=0 upto NBColonnes-1:
+ if Allume[l][k]:
+ toto:=toto+1;
+ % trait vertical gauche
+ if k=0:
+% trace M[toto]--P[toto];
+ tpoints:=floor(abs(M[toto]-P[toto])/EcartColorier);
+ for t=1 upto tpoints-1:
+ trace ((t/tpoints)[M[toto],P[toto]])--((t/tpoints)[M[toto],P[toto]]+(2*unitvector(P[toto]-M[toto])) rotated -90);
+ endfor;
+ else:
+ if Allume[l][k-1]=false:
+ % trace M[toto]--P[toto] dashed evenly;
+ tpoints:=floor(abs(M[toto]-P[toto])/EcartColorier);
+ for t=1 upto tpoints-1:
+ trace ((t/tpoints)[M[toto],P[toto]])--((t/tpoints)[M[toto],P[toto]]+(2*unitvector(P[toto]-M[toto])) rotated -90);
+ endfor;
+ fi;
+ fi;
+% % trait vertical droit
+ if k=Long-1:
+ % trace N[toto]--O[toto] dashed evenly;
+ tpoints:=floor(abs(N[toto]-O[toto])/EcartColorier);
+ for t=1 upto tpoints-1:
+ trace ((t/tpoints)[N[toto],O[toto]])--((t/tpoints)[N[toto],O[toto]]+(2*unitvector(O[toto]-N[toto])) rotated 90);
+ endfor;
+ else:
+ if Allume[l][k+1]=false:
+ %% trace N[toto]--O[toto] dashed evenly;
+ tpoints:=floor(abs(N[toto]-O[toto])/EcartColorier);
+ for t=1 upto tpoints-1:
+ trace ((t/tpoints)[N[toto],O[toto]])--((t/tpoints)[N[toto],O[toto]]+(2*unitvector(O[toto]-N[toto])) rotated 90);
+ endfor;
+ fi;
+ fi;
+% % trait horizontal haut
+ if l=1:
+ % trace P[toto]--O[toto] dashed evenly;
+ tpoints:=floor(abs(P[toto]-O[toto])/EcartColorier);
+ for t=1 upto tpoints-1:
+ trace ((t/tpoints)[P[toto],O[toto]])--((t/tpoints)[P[toto],O[toto]]+(2*unitvector(O[toto]-P[toto])) rotated -90);
+ endfor;
+ else:
+ if Allume[l-1][k]=false:
+ % trace P[toto]--O[toto] dashed evenly;
+ tpoints:=floor(abs(P[toto]-O[toto])/EcartColorier);
+ for t=1 upto tpoints-1:
+ trace ((t/tpoints)[P[toto],O[toto]])--((t/tpoints)[P[toto],O[toto]]+(2*unitvector(O[toto]-P[toto])) rotated -90);
+ endfor;
+ fi;
+ fi;
+% % trait horizontal bas
+ if l=NBLignes:
+ %% trace M[toto]--N[toto] dashed evenly;
+ tpoints:=floor(abs(M[toto]-N[toto])/EcartColorier);
+ for t=1 upto tpoints-1:
+ trace ((t/tpoints)[M[toto],N[toto]])--((t/tpoints)[M[toto],N[toto]]+(2*unitvector(M[toto]-N[toto])) rotated -90);
+ endfor;
+ else:
+ if Allume[l+1][k]=false:
+ %% trace M[toto]--N[toto] dashed evenly;
+ tpoints:=floor(abs(M[toto]-N[toto])/EcartColorier);
+ for t=1 upto tpoints-1:
+ trace ((t/tpoints)[M[toto],N[toto]])--((t/tpoints)[M[toto],N[toto]]+(2*unitvector(M[toto]-N[toto])) rotated -90);
+ endfor;
+ fi;
+ fi;
+ fi;
+ endfor;
+ endfor;
+ fi;
+ EffectuerTraces;
+ \end{mplibcode}
+ \else
+ \begin{mpost}[mpsettings={\MPPatronPaveCode;}]
+ n:=0;
+ for p_=#2:
+ n:=n+1;
+ if color p_:
+ Col[n]=p_;
+ else:
+ Col[n]=CoulDefaut;
+ fi;
+ endfor;
+ %
+ LectureLargeur(#1);
+ Patron(#1);
+ EffectuerTraces;
+ \end{mpost}
+ \fi
}%
-\reademptyitems
\def\MPPatronCubeCode{%
Arete=\useKV[ClesPatron]{Arete};
@@ -181,6 +455,185 @@
color Col[],CoulDefaut;
CoulDefaut=white;
%
+ boolean Codes,Allume[][],AColorier;
+ Codes=\useKV[ClesPatron]{Codes};
+ AColorier=\useKV[ClesPatron]{AColorier};
+ if AColorier:
+ EcartColorier=\useKV[ClesPatron]{EcartColorier};
+ fi;
+ %
+ vardef Allumage(text t)=
+ nblignes:=-1;
+ for p_=t:
+ Long:=length p_;
+ nblignes:=nblignes+1;
+ for k=0 upto Long-1:
+ Allume[nblignes][k]=false;
+ endfor;
+ endfor;
+ enddef;
+ %
+ vardef Patron(text t)=
+ nblignes:=-1;
+ nbcol:=0;
+ nbfaces:=0;
+ for p_=t:
+ Long:=length p_;
+ nblignes:=nblignes+1;
+ nbcolonnes:=0;
+ for k=0 upto Long-1:
+ nbcolonnes:=nbcolonnes+1;
+ if substring(k,k+1) of p_="x":
+ Allume[nblignes][k]:=true;
+ nbfaces:=nbfaces+1;
+ nbcol:=nbcol+1;
+ if (unknown Col[nbcol]):
+ else:
+ if Col[nbcol]=white:
+ else:
+ if AColorier=false:
+ fill ((unitsquare scaled Arete) shifted (Arete*(nbcolonnes,-nblignes))) withcolor Col[nbcol];
+ fi;
+ fi;
+ fi;
+ C[nbfaces]=(center unitsquare scaled Arete) shifted (Arete*(nbcolonnes,-nblignes));
+ M[nbfaces]=point(0) of ((unitsquare scaled Arete) shifted (Arete*(nbcolonnes,-nblignes)));
+ N[nbfaces]=point(1) of ((unitsquare scaled Arete) shifted (Arete*(nbcolonnes,-nblignes)));
+ O[nbfaces]=point(2) of ((unitsquare scaled Arete) shifted (Arete*(nbcolonnes,-nblignes)));
+ P[nbfaces]=point(3) of ((unitsquare scaled Arete) shifted (Arete*(nbcolonnes,-nblignes)));
+ trace M[nbfaces]--P[nbfaces];
+ trace N[nbfaces]--O[nbfaces];
+ trace P[nbfaces]--O[nbfaces];
+ trace M[nbfaces]--N[nbfaces];
+ fi;
+ endfor;
+ endfor;
+ enddef;
+ %
+ vardef EffectuerTraces=
+ if Codes:
+ \useKV[ClesPatron]{Traces};
+ fi;
+ enddef;
+}%
+
+\def\MPPatronCube#1#2{%
+ \ifluatex
+ \mplibforcehmode
+ \begin{mplibcode}
+ \MPPatronCubeCode
+ %
+ n:=0;
+ for p_=#2:
+ n:=n+1;
+ if color p_:
+ Col[n]=p_;
+ else:
+ Col[n]=CoulDefaut;
+ fi;
+ endfor;
+ %
+ Allumage(#1);
+ if AColorier:
+ drawoptions(dashed withdots scaled 0.5);
+ fi;
+ Patron(#1);
+ if AColorier:
+ drawoptions();
+ toto:=0;
+ for l=0 upto nblignes:
+ for k=0 upto Long-1:
+ if Allume[l][k]:
+ toto:=toto+1;
+ % trait vertical gauche
+ if k=0:
+% trace M[toto]--P[toto] dashed evenly;
+ for t=1 upto EcartColorier-1:
+ trace ((t/EcartColorier)[M[toto],P[toto]])--((t/EcartColorier)[M[toto],P[toto]]+(2*unitvector(P[toto]-M[toto])) rotated -90);
+ endfor;
+ else:
+ if Allume[l][k-1]=false:
+% trace M[toto]--P[toto] dashed evenly;
+ for t=1 upto EcartColorier-1:
+ trace ((t/EcartColorier)[M[toto],P[toto]])--((t/EcartColorier)[M[toto],P[toto]]+(2*unitvector(P[toto]-M[toto])) rotated -90);
+ endfor;
+ fi;
+ fi;
+ % trait vertical droit
+ if k=Long-1:
+ % trace N[toto]--O[toto] dashed evenly;
+ for t=1 upto EcartColorier-1:
+ trace ((t/EcartColorier)[N[toto],O[toto]])--((t/EcartColorier)[N[toto],O[toto]]+(2*unitvector(O[toto]-N[toto])) rotated 90);
+ endfor;
+ else:
+ if Allume[l][k+1]=false:
+% trace N[toto]--O[toto] dashed evenly;
+ for t=1 upto EcartColorier-1:
+ trace ((t/EcartColorier)[N[toto],O[toto]])--((t/EcartColorier)[N[toto],O[toto]]+(2*unitvector(O[toto]-N[toto])) rotated 90);
+ endfor;
+ fi;
+ fi;
+ % trait horizontal haut
+ if l=0:
+% trace P[toto]--O[toto] dashed evenly;
+ for t=1 upto EcartColorier-1:
+ trace ((t/EcartColorier)[P[toto],O[toto]])--((t/EcartColorier)[P[toto],O[toto]]+(2*unitvector(O[toto]-P[toto])) rotated -90);
+ endfor;
+ else:
+ if Allume[l-1][k]=false:
+% trace P[toto]--O[toto] dashed evenly;
+ for t=1 upto EcartColorier-1:
+ trace ((t/EcartColorier)[P[toto],O[toto]])--((t/EcartColorier)[P[toto],O[toto]]+(2*unitvector(O[toto]-P[toto])) rotated -90);
+ endfor;
+ fi;
+ fi;
+ % trait horizontal bas
+ if l=nblignes:
+% trace M[toto]--N[toto] dashed evenly;
+ for t=1 upto EcartColorier-1:
+ trace ((t/EcartColorier)[M[toto],N[toto]])--((t/EcartColorier)[M[toto],N[toto]]+(2*unitvector(M[toto]-N[toto])) rotated -90);
+ endfor;
+ else:
+ if Allume[l+1][k]=false:
+% trace M[toto]--N[toto] dashed evenly;
+ for t=1 upto EcartColorier-1:
+ trace ((t/EcartColorier)[M[toto],N[toto]])--((t/EcartColorier)[M[toto],N[toto]]+(2*unitvector(M[toto]-N[toto])) rotated -90);
+ endfor;
+ fi;
+ fi;
+ fi;
+ endfor;
+ endfor;
+ fi;
+ EffectuerTraces;
+ \end{mplibcode}
+ \else
+ \begin{mpost}[mpsettings={\MPPatronCubeCode;}]
+ %
+ n:=0;
+ for p_=#2:
+ n:=n+1;
+ if color p_:
+ Col[n]=p_;
+ else:
+ Col[n]=CoulDefaut;
+ fi;
+ endfor;
+ %
+ Patron(#1);
+ EffectuerTraces;
+ \end{mpost}
+ \fi
+}
+
+\def\MPPatronCubeCodeold{%
+ Arete=\useKV[ClesPatron]{Arete};
+ %
+ pair C[],M[],N[],O[],P[];
+ %
+ color Col[],CoulDefaut;
+ CoulDefaut=white;
+ %
boolean Codes;
Codes=\useKV[ClesPatron]{Codes};
vardef Patron(text t)=
@@ -221,7 +674,7 @@
enddef;
}%
-\def\MPPatronCube#1#2{%
+\def\MPPatronCubeold#1#2{%
\ifluatex
\mplibforcehmode
\begin{mplibcode}
@@ -259,7 +712,7 @@
\fi
}
-\def\MPPatronPaveCode{%
+\def\MPPatronPaveCodeold{%
Largeur=\useKV[ClesPatron]{Largeur};
Hauteur=\useKV[ClesPatron]{Hauteur};
Profondeur=\useKV[ClesPatron]{Profondeur};
@@ -330,7 +783,7 @@
for k=1 upto Long-1:
if substring(k,k+1) of p_="o":
if k=1:
- PathPave:=(unitsquare scaled 0);
+ PathPave:=(unitsquare scaled 0) shifted ((0,-1));
fi;
elseif substring(k,k+1) of p_="l":
nbcol:=nbcol+1;
@@ -380,7 +833,7 @@
enddef;
}%
-\def\MPPatronPave#1#2{%
+\def\MPPatronPaveold#1#2{%
\ifluatex
\mplibforcehmode
\begin{mplibcode}
@@ -397,7 +850,7 @@
%
LectureLargeur(#1);
Patron(#1);
- EffectuerTraces;
+ %EffectuerTraces;
\end{mplibcode}
\else
\begin{mpost}[mpsettings={\MPPatronPaveCode;}]
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCPattern.tex b/Master/texmf-dist/tex/latex/profcollege/PfCPattern.tex
index 29fa45c08fe..fb6f0bf9f3a 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCPattern.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCPattern.tex
@@ -1,6 +1,10 @@
%%%
% Visual Pattern
%%%
+\def\filedatePattern{2024/08/04}%
+\def\fileversionPattern{0.1}%
+\message{-- \filedatePattern\space v\fileversionPattern}%
+%
\setKVdefault[Pattern]{Type=1,Etape=3}
\NewDocumentCommand\VisualPattern{o}{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCPavage.tex b/Master/texmf-dist/tex/latex/profcollege/PfCPavage.tex
index 2d25df1b990..4dabb044116 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCPavage.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCPavage.tex
@@ -1,6 +1,10 @@
%%%
% Pavage
%%%
+\def\filedatePavage{2024/08/04}%
+\def\fileversionPavage{0.1}%
+\message{-- \filedatePavage\space v\fileversionPavage}%
+%
\setKVdefault[Pavage]{%
Before=false,
Niveau=3,
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCPixelArt.tex b/Master/texmf-dist/tex/latex/profcollege/PfCPixelArt.tex
index 77eecfcb428..503e2e1182d 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCPixelArt.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCPixelArt.tex
@@ -1,11 +1,16 @@
%%%
% PixelArt
%%%
+\def\filedatePixelArt{2024/08/04}%
+\def\fileversionPixelArt{0.1}%
+\message{-- \filedatePixelArt\space v\fileversionPixelArt}%
+%
\newtoks\toklistePANombre%
\def\UpdatetoksPANombre#1\nil{\addtotok\toklistePANombre{"#1",}}%
-\setKVdefault[ClesPixelArt]{Largeur=29,Hauteur=29,Solution=false,Lettres=ABCDEFGHIJK,Nombres=false,ListeCouleurs={Orange,Red,LightGray,Maroon,Purple,black,black,Plum,Orange,White,White},Unite=5mm,Geant=false,HauteurD=1,LargeurD=1,Complet=false,Numero=1,Separations=false}%
+\setKVdefault[ClesPixelArt]{Largeur=29,Hauteur=29,Solution=false,Lettres=ABCDEFGHIJK,Nombres=false,ListeCouleurs={Orange,Red,LightGray,Maroon,Purple,black,black,Plum,Orange,White,White},Unite=5mm,Geant=false,HauteurD=1,LargeurD=1,Complet=false,Numero=1,Separations=false,Deforme=false,Coefx=0.25,Coefy=0.25,Borne=false,Graines=false}%
\defKV[ClesPixelArt]{ListeNombres=\setKV[ClesPixelArt]{Nombres}}%
+\defKV[ClesPixelArt]{Graine=\setKV[ClesPixelArt]{Graines}}%
\NewDocumentCommand\PixelArt{o m}{%
\toklistePANombre{}%
@@ -26,17 +31,23 @@
}%
}%
}{%
- \quotient{\fpeval{\useKV[ClesPixelArt]{Numero}-1}}{\fpeval{\useKV[ClesPixelArt]{Hauteur}/\useKV[ClesPixelArt]{HauteurD}}}%
- \modulo{\fpeval{\useKV[ClesPixelArt]{Numero}-1}}{\fpeval{\useKV[ClesPixelArt]{Hauteur}/\useKV[ClesPixelArt]{HauteurD}}}%
-% quotient = \the\intquotient -- remainder = \the\remainder :
+% \quotient{\fpeval{\useKV[ClesPixelArt]{Numero}-1}}{\fpeval{\useKV[ClesPixelArt]{Hauteur}/\useKV[ClesPixelArt]{HauteurD}}}%
+% \modulo{\fpeval{\useKV[ClesPixelArt]{Numero}-1}}{\fpeval{\useKV[ClesPixelArt]{Hauteur}/\useKV[ClesPixelArt]{HauteurD}}}%
+ \quotient{\fpeval{\useKV[ClesPixelArt]{Numero}-1}}{\fpeval{\useKV[ClesPixelArt]{Largeur}/\useKV[ClesPixelArt]{LargeurD}}}%
+ \modulo{\fpeval{\useKV[ClesPixelArt]{Numero}-1}}{\fpeval{\useKV[ClesPixelArt]{Largeur}/\useKV[ClesPixelArt]{LargeurD}}}%
+% quotient = \the\intquotient -- remainder = \the\remainder :\\
\BuildPixelArtGeant{#2}{\useKV[ClesPixelArt]{Lettres}}{\ListeAvantCouleurs}{\the\toklistePANombre}{\the\intquotient}{\the\remainder}%
}%
}{%
- \BuildPixelArt{#2}{\useKV[ClesPixelArt]{Lettres}}{\ListeAvantCouleurs}{\the\toklistePANombre}%
+ \ifboolKV[ClesPixelArt]{Deforme}{%
+ \BuildPixelArtDeforme{#2}{\useKV[ClesPixelArt]{Lettres}}{\ListeAvantCouleurs}{\the\toklistePANombre}%
+ }{%
+ \BuildPixelArt{#2}{\useKV[ClesPixelArt]{Lettres}}{\ListeAvantCouleurs}{\the\toklistePANombre}%
+ }%
}%
}%
-\NewDocumentCommand\BuildPixelArt{m m m m}{%
+\NewDocumentCommand\BuildPixelArtDeforme{m m m m}{%
\ifluatex
\mplibforcehmode
\begin{mplibcode}
@@ -46,6 +57,39 @@
hauteurd:=\useKV[ClesPixelArt]{HauteurD};
Unite:=\useKV[ClesPixelArt]{Unite};
+ %Deformation
+ Coefx=\useKV[ClesPixelArt]{Coefx};
+ Coefy=\useKV[ClesPixelArt]{Coefy};
+ boolean Borne,Graines;
+ Borne=\useKV[ClesPixelArt]{Borne};
+ Graines=\useKV[ClesPixelArt]{Graines};
+ if Graines:
+ randomseed:=\useKV[ClesPixelArt]{Graine};
+ fi;
+ %
+ pair M[][];
+ for l=1 upto hauteur+1:
+ for c=1 upto largeur+1:
+ if Borne:
+ if (l=1) or (l=hauteur+1):
+ M[l][c]=Unite*(c,l)+Unite*(-Coefx+uniformdeviate(2*Coefx),0);
+ if (c=1) or (c=largeur+1):
+ M[l][c]:=Unite*(c,l);
+ fi;
+ else:
+ if (c=1) or (c=largeur+1):
+ M[l][c]=Unite*(c,l-1)+Unite*(0,uniformdeviate(Coefy));
+ else:
+ M[l][c]=Unite*(c,l)+Unite*(-Coefx+uniformdeviate(2*Coefx),-Coefy+uniformdeviate(2*Coefy));
+ fi;
+ fi;
+ else:
+ M[l][c]=Unite*(c,l)+Unite*(-Coefx+uniformdeviate(2*Coefx),-Coefy+uniformdeviate(2*Coefy));
+ fi;
+ %dotlabel("",M[l][c]);
+ endfor;
+ endfor;
+
boolean Solution,Nombres,Separations;
Solution:=\useKV[ClesPixelArt]{Solution};
Nombres:=\useKV[ClesPixelArt]{Nombres};
@@ -54,7 +98,7 @@
string BaseLettres;
BaseLettres=str #2;
numeric EchelleScale;
- EchelleScale=Unite/5mm;
+ EchelleScale=Unite/10mm;
color ColorEntier[],ColFond;
n:=0;
@@ -84,11 +128,107 @@
if Nombres:
for m=0 upto (length BaseLettres-1):
if (substring(p,p+1) of p_)=substring(m,m+1) of BaseLettres:
- label(TEX(RetiensNombres[m+1]) scaled EchelleScale,((l-1)*Unite,(h-1)*Unite));
+ label(TEX(RetiensNombres[m+1]) scaled EchelleScale,iso(M[h+1][l],M[h][l],M[h][l+1],M[h+1][l+1]));
fi;
endfor;
else:
- label(TEX(substring(p,p+1) of p_) scaled EchelleScale,((l-1)*Unite,(h-1)*Unite));
+ label(TEX(substring(p,p+1) of p_) scaled EchelleScale,iso(M[h+1][l],M[h][l],M[h][l+1],M[h+1][l+1]));
+ fi;
+ if Solution:
+ for m=0 upto (length BaseLettres-1):
+ if (substring(p,p+1) of p_)=substring(m,m+1) of BaseLettres:
+ ColFond:=ColorEntier[m+1];
+ fi;
+ endfor;
+ if unknown ColFond: else: fill polygone(M[h+1][l],M[h][l],M[h][l+1],M[h+1][l+1]) withcolor ColFond fi;
+ fi;
+ trace polygone(M[h+1][l],M[h][l],M[h][l+1],M[h+1][l+1]);
+ fi;
+ endfor;
+ endfor;
+ closefrom nomfichier;
+ enddef;
+
+ Lecturecsv("#1");
+% if Separations:
+% drawoptions(withcolor Purple);
+% for k=hauteur step -hauteurd until 0:
+% draw (Unite*(-1,k-0.5)--Unite*(largeur,k-0.5)) withpen pencircle scaled 1.25;
+% endfor;
+% for k=0 step largeurd until largeur:
+% draw (Unite*(k-0.5,hauteur+0.125)--Unite*(k-0.5,-0.875)) withpen pencircle scaled 1.25;
+% endfor;
+% drawoptions();
+% fi;
+ \end{mplibcode}
+\fi
+}%
+
+\NewDocumentCommand\BuildPixelArt{m m m m}{%
+ \ifluatex
+ \mplibforcehmode
+ \begin{mplibcode}
+ largeur:=\useKV[ClesPixelArt]{Largeur};
+ hauteur:=\useKV[ClesPixelArt]{Hauteur};
+ largeurd:=\useKV[ClesPixelArt]{LargeurD};
+ hauteurd:=\useKV[ClesPixelArt]{HauteurD};
+ Unite:=\useKV[ClesPixelArt]{Unite};
+
+ boolean Solution,Nombres,Separations;
+ Solution:=\useKV[ClesPixelArt]{Solution};
+ Nombres:=\useKV[ClesPixelArt]{Nombres};
+ Separations:=\useKV[ClesPixelArt]{Separations};
+
+ string BaseLettres;
+ BaseLettres=str #2;
+ numeric EchelleScale;
+ EchelleScale=Unite/5mm;
+
+ color ColorEntier[],ColFond;
+ n:=0;
+ for p_=#3:
+ n:=n+1;
+ ColorEntier[n]:=p_;
+ endfor;
+
+ string RetiensNombres[];
+ if Nombres:
+ k:=0;
+ for p_=#4:
+ k:=k+1;
+ RetiensNombres[k]=p_;
+ endfor;
+ else:
+ m:=0;
+ for p_=0 upto n-1:
+ m:=m+1;
+ RetiensNombres[m]=substring(p_,p_+1) of BaseLettres;
+ endfor;
+ fi;
+
+ picture Etiquette[];
+ for k=1 upto n:
+ Etiquette[k]=image(
+ label(TEX(RetiensNombres[k]) scaled EchelleScale,(0,0));
+ );
+ endfor;
+
+ vardef Lecturecsv(expr nomfichier)=
+ for h=hauteur downto 1:
+ string p_;
+ p_=readfrom nomfichier;
+ l:=0;
+ for p=0 step 2 until 2*largeur-2:
+ l:=l+1;
+ if Solution=false:
+ if (substring(p,p+1) of p_)="-":
+ else:
+ for m=0 upto (length BaseLettres-1):
+ if (substring(p,p+1) of p_)=substring(m,m+1) of BaseLettres:
+ draw Etiquette[m+1] shifted((l-1)*Unite,(h-1)*Unite);
+ fi;
+ endfor;
+ fi;
fi;
if Solution:
for m=0 upto (length BaseLettres-1):
@@ -99,7 +239,6 @@
if unknown ColFond: else: fill (unitsquare scaled Unite) shifted ((l-1)*Unite-0.5*Unite,(h-1)*Unite-0.5*Unite) withcolor ColFond fi;
fi;
trace (unitsquare scaled Unite) shifted ((l-1)*Unite-0.5*Unite,(h-1)*Unite-0.5*Unite);
- fi;
endfor;
endfor;
closefrom nomfichier;
@@ -118,10 +257,12 @@
fi;
\end{mplibcode}
\else
- \begin{mpost}[mpsettings={largeur:=\useKV[ClesPixelArt]{Largeur}; hauteur:=\useKV[ClesPixelArt]{Hauteur}; Unite:=\useKV[ClesPixelArt]{Unite}; boolean Solution,Nombres; Solution:=\useKV[ClesPixelArt]{Solution}; Nombres:=\useKV[ClesPixelArt]{Nombres};}]
+ \begin{mpost}[mpsettings={largeur:=\useKV[ClesPixelArt]{Largeur}; hauteur:=\useKV[ClesPixelArt]{Hauteur}; Unite:=\useKV[ClesPixelArt]{Unite}; boolean Solution,Nombres,Separations; Solution:=\useKV[ClesPixelArt]{Solution}; Nombres:=\useKV[ClesPixelArt]{Nombres}; Separations:=\useKV[ClesPixelArt]{Separations};}]
string BaseLettres;
BaseLettres=str #2;
-
+ numeric EchelleScale;
+ EchelleScale=Unite/5mm;
+
color ColorEntier[],ColFond;
n:=0;
for p_=#3:
@@ -131,13 +272,26 @@
string RetiensNombres[];
if Nombres:
- n:=0;
+ k:=0;
for p_=#4:
- n:=n+1;
- RetiensNombres[n]=p_;
+ k:=k+1;
+ RetiensNombres[k]=p_;
+ endfor;
+ else:
+ m:=0;
+ for p_=0 upto n-1:
+ m:=m+1;
+ RetiensNombres[m]=substring(p_,p_+1) of BaseLettres;
endfor;
fi;
-
+
+ picture Etiquette[];
+ for k=1 upto n:
+ Etiquette[k]=image(
+ label(LATEX(RetiensNombres[k]) scaled EchelleScale,(0,0));
+ );
+ endfor;
+
vardef Lecturecsv(expr nomfichier)=
for h=hauteur downto 1:
string p_;
@@ -145,16 +299,15 @@
l:=0;
for p=0 step 2 until 2*largeur-2:
l:=l+1;
+ if Solution=false:
if (substring(p,p+1) of p_)="-":
else:
- if Nombres:
for m=0 upto (length BaseLettres-1):
if (substring(p,p+1) of p_)=substring(m,m+1) of BaseLettres:
- label(LATEX(RetiensNombres[m+1]),((l-1)*Unite,(h-1)*Unite));
+ draw Etiquette[m+1] shifted((l-1)*Unite,(h-1)*Unite);
fi;
endfor;
- else:
- label(LATEX(substring(p,p+1) of p_),((l-1)*Unite,(h-1)*Unite));
+ fi;
fi;
if Solution:
for m=0 upto (length BaseLettres-1):
@@ -165,21 +318,30 @@
if unknown ColFond: else: fill (unitsquare scaled Unite) shifted ((l-1)*Unite-0.5*Unite,(h-1)*Unite-0.5*Unite) withcolor ColFond fi;
fi;
trace (unitsquare scaled Unite) shifted ((l-1)*Unite-0.5*Unite,(h-1)*Unite-0.5*Unite);
- fi;
endfor;
endfor;
closefrom nomfichier;
enddef;
Lecturecsv("#1");
+ if Separations:
+ drawoptions(withcolor Purple);
+ for k=hauteur step -hauteurd until 0:
+ draw (Unite*(-1,k-0.5)--Unite*(largeur,k-0.5)) withpen pencircle scaled 1.25;
+ endfor;
+ for k=0 step largeurd until largeur:
+ draw (Unite*(k-0.5,hauteur+0.125)--Unite*(k-0.5,-0.875)) withpen pencircle scaled 1.25;
+ endfor;
+ drawoptions();
+ fi;
\end{mpost}
\fi
-}
+}%
\NewDocumentCommand\BuildPixelArtGeant{m m m m m m}{%
- \ifluatex
- \mplibforcehmode
- \begin{mplibcode}
+ \ifluatex%
+ \mplibforcehmode%
+ \begin{mplibcode}%
largeur:=\useKV[ClesPixelArt]{Largeur};
hauteur:=\useKV[ClesPixelArt]{Hauteur};
largeurd:=\useKV[ClesPixelArt]{LargeurD};
@@ -251,5 +413,5 @@
Lecturecsv("#1");
\end{mplibcode}
- \fi
-} \ No newline at end of file
+ \fi%
+}% \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCPourcentage.tex b/Master/texmf-dist/tex/latex/profcollege/PfCPourcentage.tex
index 1f6f18b19b3..03177d14dc8 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCPourcentage.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCPourcentage.tex
@@ -1,6 +1,10 @@
%%%
% Application : pourcentage
%%%
+\def\filedatePourcentage{2024/08/04}%
+\def\fileversionPourcentage{0.1}%
+\message{-- \filedatePourcentage\space v\fileversionPourcentage}%
+%
\setKVdefault[ClesPourcentage]{Appliquer,Calculer=false,Augmenter=false,Reduire=false,Fractionnaire=false,Decimal,Formule=false,Concret=false,GrandeurA=Grandeur A,GrandeurB=Total,Largeur=1cm,MotReduction=diminution,AideTableau=false,ColorFill=white,CouleurTab=gray!15}
\defKV[ClesPourcentage]{Unite=\setKV[ClesPourcentage]{Concret}}
\newcommand\Pourcentage[3][]{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCProbaFrequence.tex b/Master/texmf-dist/tex/latex/profcollege/PfCProbaFrequence.tex
new file mode 100644
index 00000000000..e3a5f04b628
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCProbaFrequence.tex
@@ -0,0 +1,189 @@
+%%%
+% Probabilité et fréquence
+%%%
+\def\filedateProbaFrequence{2024/08/04}%
+\def\fileversionProbaFrequence{0.1}%
+\message{-- \filedateProbaFrequence\space v\fileversionProbaFrequence}%
+%
+\setKVdefault[PfCFrequence]{Couleur=false,Lancers=1,Legende=false}%
+\defKV[PfCFrequence]{ListeCouleurs=\setKV[PfCFrequence]{Couleur}}%
+\defKV[PfCFrequence]{Legendes=\setKV[PfCFrequence]{Legende}\setsepchar{,}\reademptyitems\readlist*\PfMListeLegendes{#1}\reademptyitems}%
+
+\newtoks\tokPfMListeObjets%
+\newtoks\tokPfMListeLegendes%
+\def\UpdatetoksObj#1\nil{\addtotok\tokPfMListeObjets{#1,}}%
+\def\UpdatetoksLegendes#1\nil{\addtotok\tokPfMListeLegendes{"#1",}}%
+
+\NewDocumentCommand\ProbaFrequence{om}{%
+ % #1 options
+ % #2 répartition
+ \tokPfMListeObjets{}%
+ \tokPfMListeLegendes{}%
+ \useKVdefault[PfCFrequence]%
+ \setKV[PfCFrequence]{#1}%
+ \setsepchar{,}\ignoreemptyitems%
+ \readlist*\PfMListeObjets{#2}%
+ \reademptyitems%
+ \foreachitem\compteur\in\PfMListeObjets{\expandafter\UpdatetoksObj\compteur\nil}%
+ \ifboolKV[PfCFrequence]{Legende}{%
+ \foreachitem\compteur\in\PfMListeLegendes{\expandafter\UpdatetoksLegendes\compteur\nil}%
+ }{}%
+ \BuildFrequence{\the\tokPfMListeObjets}{\the\tokPfMListeLegendes}%
+}%
+
+\NewDocumentCommand\BuildFrequence{mm}{%
+ \ifluatex
+ \mplibnumbersystem{decimal}%
+ \begin{Geometrie}[CoinBG={u*(-5,0)},CoinHD={u*(7.5,7.5)}]%6 en ordonnee
+ Lancers = \useKV[PfCFrequence]{Lancers};
+ LegendeVide=0;
+ %
+ color Col[];
+ if \useKV[PfCFrequence]{Couleur}:
+ n:=0;
+ for p_=\useKV[PfCFrequence]{ListeCouleurs}:
+ n:=n+1;
+ if color p_:
+ Col[n]=p_;
+ else:
+ LegendeVide:=n;
+ fi;
+ endfor;
+ fi;
+ %
+ string Legende[];
+ vardef EcrireLegendes(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ if p_="":
+ LegendeVide:=n;
+ else:
+ Legende[n]=p_;
+ fi;
+ endfor;
+ n:=0;
+ enddef;
+ %
+ vardef LectureDonnees(text t)=
+ numeric A[];
+ numeric SommeTotale;
+ SommeTotale=0;
+ n:=0;
+ for p_=t:
+ n:=incr(n);
+ A[n]=p_;
+ SommeTotale:=SommeTotale+p_;
+ endfor;
+ total:=n;
+ enddef;
+ %
+ LectureDonnees(#1);
+ if \useKV[PfCFrequence]{Legende}:
+ EcrireLegendes(#2);
+ fi;
+ %
+ numeric borne[];
+ borne0=0;
+ for k=1 upto total:
+ borne[k]=borne[k-1]+A[k];
+ endfor;
+ %
+ x.u:=5mm;
+ y.u:=5mm;
+ quad.u:=5mm;
+ unites(1/(170*Lancers),5);
+ origine((1,4));
+ % grille
+ for k=1 upto 11:
+ draw (pp(0,0)--pp(0,1.1)) shifted(pp(k*Lancers*100,0)-pp(0,0)) withcolor gris;
+ draw (pp(0,0)--pp(Lancers*(1000+100),0)) shifted(pp(0,k/10)-pp(0,0)) withcolor gris;
+ endfor;
+ % axe
+ drawarrow pp(0,0)--pp(0,1.1);
+ drawarrow pp(0,0)--pp(Lancers*(1000+100),0);
+ % tiret
+ for k=1 upto 10:
+ draw (pp(k*Lancers*100,0)+u*(0,-0.05))--(pp(k*Lancers*100,0)+u*(0,0.05));
+ endfor;
+ numeric nb[],freq[];
+ pair Freq[][];
+ for k=1 upto total:
+ nb[k]:=0;
+ freq[k]=0;
+ endfor;
+ %
+ for k=1 upto (Lancers*1000):
+ nn:=floor(uniformdeviate(SommeTotale))+1;
+ if nn=0:
+ message("il est nul...");
+ fi;
+ for l=1 upto total:
+ if (nn>borne[l-1]) and (nn<borne[l]+1):
+ nb[l]:=nb[l]+1;
+ fi;
+ freq[l]:=nb[l]/k;
+ Freq[l][k]=pp(k,freq[l]);
+ endfor;
+ endfor;
+ %
+ def Style=enddef;
+ def Stylea=dashed evenly enddef;
+ def Styleb=dashed withdots scaled 1/2 enddef;
+ def Stylec=dashed dashpattern(on 1 off 1) enddef;
+ def Styled=dashed withdots scaled 1/4 enddef;
+ def Stylee=dashed dashpattern(on 6 off2) enddef;
+ parc:=0;
+ for l=1 upto total:
+ if \useKV[PfCFrequence]{Couleur}=false:
+ if (l mod 6)=1:
+ elseif (l mod 6)=2:
+ drawoptions(Stylea);
+ elseif (l mod 6)=3:
+ drawoptions(Styleb);
+ elseif (l mod 6)=4:
+ drawoptions(Stylec);
+ elseif (l mod 6)=5:
+ drawoptions(Styled);
+ else:
+ drawoptions(Stylee);
+ fi;
+ if \useKV[PfCFrequence]{Legende}:
+ parc:=incr(parc);
+ if l<>LegendeVide:
+ draw pp(Lancers*400*((parc-1) mod 3),-0.25-0.1*((parc-1) div 3))--pp(Lancers*400*((parc-1) mod 3)+125,-0.25-0.1*((parc-1) div 3));
+ label.rt(TEX(Legende[l]),pp(Lancers*400*((parc-1) mod 3)+125,-0.25-0.1*((parc-1) div 3)));
+ else:
+ parc:=parc-1;
+ fi;
+ fi;
+ fi;
+ %
+ if l<>LegendeVide:
+ if Lancers<1:
+ trace Freq[l][1]
+ for k=2 upto (1000*Lancers):
+ --Freq[l][k]
+ endfor withcolor if unknown Col[l]:black else:Col[l] fi;
+ else:
+ trace Freq[l][1]
+ for k=5 step 4 until (1000*Lancers):
+ --Freq[l][k]
+ endfor withcolor if unknown Col[l]:black else:Col[l] fi;
+ fi;
+ fi;
+ endfor;
+ drawoptions();
+ for k=1 upto 10 :
+ label.bot(TEX("\scriptsize\num{"&decimal((100*k)*Lancers)&"}"),pp(Lancers*100k,0));
+ endfor;
+ for k=2 step 2 until 10:
+ label.lft(TEX("\scriptsize\num{"&decimal(k/10)&"}"),pp(0,k/10));
+ endfor;
+ label.llft(TEX("\scriptsize 0"),pp(0,0));
+ label.urt(TEX("Fréquence"),pp(0,1));
+ label.bot(TEX("Nombre de lancers"),pp(0.5*Lancers*(1000+200),-0.075));
+ \end{Geometrie}
+ \mplibnumbersystem{scaled}
+ \fi
+}% \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCProbabilites.tex b/Master/texmf-dist/tex/latex/profcollege/PfCProbabilites.tex
index 7ed834a61ea..73bafa9ba27 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCProbabilites.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCProbabilites.tex
@@ -1,7 +1,11 @@
%%%
% Proba
%%%
-\setKVdefault[ClesProba]{Echelle=false,Arbre=false,Branche=2,Angle=60,Rayon=0.25,LongueurEchelle=5,Affichage=0,Grille=1,Incline}
+\def\filedateProba{2024/08/15}%
+\def\fileversionProba{0.1a}%
+\message{-- \filedateProba\space v\fileversionProba}%
+%
+\setKVdefault[ClesProba]{Echelle=false,Arbre=false,Branche=2,Angle=60,Rayon=0.25,LongueurEchelle=5,Affichage=0,Grille=1,Incline,SansProba=false}
\def\Updatetoksproba#1/#2\nil{\addtotok\toklistepointproba{"#1","\footnotesize #2",}}
\def\Updatetoksprobapdf#1/#2\nil{\addtotok\toklistepointproba{"#1","\noexpand\footnotesize #2",}}
@@ -35,6 +39,8 @@
\ifluatex
\mplibforcehmode
\begin{mplibcode}
+ boolean SansProba;
+ SansProba=\useKV[ClesProba]{SansProba};
pair A,B,C[],D[];%les noeuds de l'arbre
%Figure(-10u,-10u,10u,10u);
A=u*(1,1);
@@ -58,8 +64,10 @@
fi;
marque_s:=marque_s*2;
labeloffset:=labeloffset*3;
+ if SansProba=false:
label.bot(btex 0 etex,A);
label.bot(btex 1 etex,B);
+ fi;
labeloffset:=labeloffset/3;
n:=1;%compter les informations
k:=1;% compter les informations noeud pour les placer
@@ -93,7 +101,7 @@
toto(#2);
\end{mplibcode}
\else
- \begin{mpost}[mpsettings={input PfCGeometrie;}]
+ \begin{mpost}[mpsettings={input PfCGeometrie;boolean SansProba;SansProba=\useKV[ClesProba]{SansProba};}]
pair A,B,C[],D[];%les noeuds de l'arbre
Figure(-10u,-10u,10u,10u);
A=u*(1,1);
@@ -117,8 +125,10 @@
fi;
marque_s:=marque_s*2;
labeloffset:=labeloffset*3;
+ if SansProba=false:
label.bot(btex 0 etex,A);
label.bot(btex 1 etex,B);
+ fi;
labeloffset:=labeloffset/3;
n:=1;%compter les informations
k:=1;% compter les informations noeud pour les placer
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCProgrammeCalcul.tex b/Master/texmf-dist/tex/latex/profcollege/PfCProgrammeCalcul.tex
index f1bdc0307fe..871f80d6508 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCProgrammeCalcul.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCProgrammeCalcul.tex
@@ -1,6 +1,10 @@
%%%%
% Prog de calculs "simples"
%%%%
+\def\filedateProgCalcul{2024/08/04}%
+\def\fileversionProgCalcul{0.1}%
+\message{-- \filedateProgCalcul\space v\fileversionProgCalcul}%
+%
\setKVdefault[ClesProg]{%
Ecart=2em,%
Direct,%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCPropor.tex b/Master/texmf-dist/tex/latex/profcollege/PfCPropor.tex
index 1e6526f41b0..1c8aba3324b 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCPropor.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCPropor.tex
@@ -1,6 +1,10 @@
%%%
% Proportionnalit\'e
%%%
+\def\filedatePropor{2024/09/04}%
+\def\fileversionPropor{0.1a}%
+\message{-- \filedatePropor\space v\fileversionPropor}%
+%
\setKVdefault[ClesPropor]{GrandeurA=Grandeur A,GrandeurB=Grandeur B,Largeur=1cm,Math=false,Stretch=1,ColorFill=white,CouleurTab=gray!15,Vertical=false,Simple=false,Condense=false}%
\tikzstyle{FlechePropor}=[-stealth]
@@ -201,49 +205,51 @@
\NewDocumentCommand\FlechePCG{mm}{%
\begin{tikzpicture}[remember picture,overlay,node distance=\getstrut\ht]%
- \node[inner sep=0pt] (MilieuH-#1) at ($(ProporG-#1)!0.25!(ProporD-#1)$) {};%
- \node[inner sep=0pt] (MilieuH-#2) at ($(ProporG-#2)!0.25!(ProporD-#2)$) {};%
- \node[inner sep=0pt] (MilieuB-#1) at ($(ProporG-#1)!0.75!(ProporD-#1)$) {};%
- \node[inner sep=0pt] (MilieuB-#2) at ($(ProporG-#2)!0.75!(ProporD-#2)$) {};%
+ \node[inner sep=0pt] (MilieuH-#1) at ($(ProporH-#1)!\PfCCoeffH!(ProporB-#1)$) {};%
+ \node[inner sep=0pt] (MilieuH-#2) at ($(ProporH-#2)!\PfCCoeffH!(ProporB-#2)$) {};%
+ \node[inner sep=0pt] (MilieuB-#1) at ($(ProporH-#1)!\PfCCoeffB!(ProporB-#1)$) {};%
+ \node[inner sep=0pt] (MilieuB-#2) at ($(ProporH-#2)!\PfCCoeffB!(ProporB-#2)$) {};%
\xintifboolexpr{#1<#2}{%
\coordinate[right of=MilieuH-#1] (aux1);%
- \coordinate[right of=MilieuH-#2] (aux2);%
- \coordinate[left of=MilieuB-#1] (aux3);%
+ \coordinate[left of=MilieuH-#2] (aux2);%
+ \coordinate[right of=MilieuB-#1] (aux3);%
\coordinate[left of=MilieuB-#2] (aux4);%
- \draw[out=30,in=-30,gray] (aux3) to (aux4);
+ \draw[FlechePropor,gray] (aux4) -- (aux1);
+ \draw[out=-30,in=30,gray] (aux2) to (aux4);
}{%
- \coordinate[right of=MilieuH-#1] (aux1);%
+ \coordinate[left of=MilieuH-#1] (aux1);%
\coordinate[right of=MilieuH-#2] (aux2);%
\coordinate[left of=MilieuB-#1] (aux3);%
- \coordinate[left of=MilieuB-#2] (aux4);%
- \draw[out=-30,in=30,gray] (aux3) to (aux4);
+ \coordinate[right of=MilieuB-#2] (aux4);%
+ \draw[FlechePropor,gray] (aux1) -- (aux4);
+ \draw[out=30,in=-30,gray] (aux3) to (aux1);
}%
\draw[gray] (aux2) -- (aux3);
- \draw[FlechePropor,gray] (aux4) -- (aux1);
\end{tikzpicture}%
}%
\NewDocumentCommand\FlechePCD{mm}{%
\begin{tikzpicture}[remember picture,overlay,node distance=\getstrut\ht]%
- \node[inner sep=0pt] (MilieuH-#1) at ($(ProporG-#1)!0.25!(ProporD-#1)$) {};%
- \node[inner sep=0pt] (MilieuH-#2) at ($(ProporG-#2)!0.25!(ProporD-#2)$) {};%
- \node[inner sep=0pt] (MilieuB-#1) at ($(ProporG-#1)!0.75!(ProporD-#1)$) {};%
- \node[inner sep=0pt] (MilieuB-#2) at ($(ProporG-#2)!0.75!(ProporD-#2)$) {};%
+ \node[inner sep=0pt] (MilieuH-#1) at ($(ProporH-#1)!\PfCCoeffH!(ProporB-#1)$) {};%
+ \node[inner sep=0pt] (MilieuH-#2) at ($(ProporH-#2)!\PfCCoeffH!(ProporB-#2)$) {};%
+ \node[inner sep=0pt] (MilieuB-#1) at ($(ProporH-#1)!\PfCCoeffB!(ProporB-#1)$) {};%
+ \node[inner sep=0pt] (MilieuB-#2) at ($(ProporH-#2)!\PfCCoeffB!(ProporB-#2)$) {};%
\xintifboolexpr{#1<#2}{%
\coordinate[right of=MilieuH-#1] (aux1);%
- \coordinate[right of=MilieuH-#2] (aux2);%
- \coordinate[left of=MilieuB-#1] (aux3);%
+ \coordinate[left of=MilieuH-#2] (aux2);%
+ \coordinate[right of=MilieuB-#1] (aux3);%
\coordinate[left of=MilieuB-#2] (aux4);%
- \draw[out=150,in=-150,gray] (aux1) to (aux2);
+ \draw[FlechePropor,gray] (aux3) -- (aux2);
+ \draw[out=-150,in=150,gray] (aux1) to (aux3);
}{%
- \coordinate[right of=MilieuH-#1] (aux1);%
+ \coordinate[left of=MilieuH-#1] (aux1);%
\coordinate[right of=MilieuH-#2] (aux2);%
\coordinate[left of=MilieuB-#1] (aux3);%
- \coordinate[left of=MilieuB-#2] (aux4);%
- \draw[out=-150,in=150,gray] (aux1) to (aux2);
+ \coordinate[right of=MilieuB-#2] (aux4);%
+ \draw[FlechePropor,gray] (aux2) -- (aux3);
+ \draw[out=-150,in=150,gray] (aux2) to (aux4);
}%
\draw[gray] (aux4) -- (aux1);
- \draw[FlechePropor,gray] (aux2) -- (aux3);
\end{tikzpicture}%
}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCProprietesDroites.tex b/Master/texmf-dist/tex/latex/profcollege/PfCProprietesDroites.tex
index ad9f1b0edbe..fc74fea9c5a 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCProprietesDroites.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCProprietesDroites.tex
@@ -1,6 +1,10 @@
%%%
% Ppt\'es des droites (6eme)
%%%
+\def\filedatePptesDroites{2024/08/04}%
+\def\fileversionPptesDroites{0.1}%
+\message{-- \filedatePptesDroites\space v\fileversionPptesDroites}%
+%
\setKVdefault[ClesDroites]{Brouillon=false,CitePropriete=false,Num=1,Figure=false,Remediation=false,FigureSeule=false}
\newcommand\Redaction[4][]{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCPuissanceQuatre.tex b/Master/texmf-dist/tex/latex/profcollege/PfCPuissanceQuatre.tex
index 1d8a9299390..d51387cd78f 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCPuissanceQuatre.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCPuissanceQuatre.tex
@@ -1,30 +1,40 @@
%%%
% Puissances 4
%%%
-\setKVdefault[ClesPQuatre]{Couleur=Gray,Largeur=2cm,LargeurUn=2cm,Multiplication,Entier,Nombre,Exposant=false,Libre=false,Texte=false,Echelle=2}%
+\def\filedatePquatre{2024/08/04}%
+\def\fileversionPquatre{0.1}%
+\message{-- \filedatePquatre\space v\fileversionPquatre}%
+%
+\setKVdefault[ClesPQuatre]{Couleur=Gray,Largeur=2cm,LargeurUn=2cm,Multiplication,Entier,Nombre,Exposant=false,Libre=false,Texte=false,Echelle=2,Correction=false}%
\defKV[ClesPQuatre]{Addition=\setKV[ClesPQuatre]{Multiplication=false}}%
\defKV[ClesPQuatre]{Relatif=\setKV[ClesPQuatre]{Entier=false}}%
\defKV[ClesPQuatre]{Puissance=\setKV[ClesPQuatre]{Exposant}}%
\defKV[ClesPQuatre]{Autre=\setKV[ClesPQuatre]{Nombre=false}\setKV[ClesPQuatre]{Libre}}%
\defKV[ClesPQuatre]{Consignes=\setKV[ClesPQuatre]{Texte}}%
+\defKV[ClesPQuatre]{Solution=\setKV[ClesPQuatre]{Correction}\setsepchar{,}\ignoreemptyitems\readlist*\PQuatreListeS{#1}\reademptyitems}%
+\defKV[ClesPQuatre]{Graine=\PfCGraineAlea{#1}}%
\newtoks\toklistePQuatreh%
\newtoks\toklistePQuatrev%
+\newtoks\toklistePQuatres%
\def\UpdatetoksPQuatreh#1\nil{\addtotok\toklistePQuatreh{"#1",}}%
\def\UpdatetoksPQuatrev#1\nil{\addtotok\toklistePQuatrev{"#1",}}%
+\def\UpdatetoksPQuatres#1\nil{\addtotok\toklistePQuatres{"#1",}}%
\NewDocumentCommand\PQuatre{o +m}{%
\useKVdefault[ClesPQuatre]%
\toklistePQuatreh{}%
\toklistePQuatrev{}%
+ \toklistePQuatres{}%
\setKV[ClesPQuatre]{#1}%
\ifboolKV[ClesPQuatre]{Nombre}{%
\ifboolKV[ClesPQuatre]{Exposant}{%
- \def\PQuatreListe{$10^{-10}$,$10^{-9}$,$10^{-8}$,$10^{-7}$,$10^{-6}$,$10^{-5}$,$10^{-4}$,$10^{-3}$,$10^{-2}$,$10^{2}$,$10^{3}$,$10^{4}$,$10^{5}$,$10^{6}$,$10^{7}$,$10^{8}$,$10^{9}$,$10^{10}$}%
+ \def\PQuatreListe{-10,-9,-8,-7,-6,-5,-4,-3,-2,2,3,4,5,6,7,8,9,10}%
\MelangeListe{\PQuatreListe}{7}%
- \readlist*\PQuatreListeH{\faa}%
+ \ignoreemptyitems\readlist*\PQuatreListeH{\faa}%
\MelangeListe{\PQuatreListe}{7}%
- \readlist*\PQuatreListeV{\faa}%
+ \ignoreemptyitems\readlist*\PQuatreListeV{\faa}%
+ \reademptyitems
\foreachitem\compteur\in\PQuatreListeH{\expandafter\UpdatetoksPQuatreh\compteur\nil}%
\foreachitem\compteur\in\PQuatreListeV{\expandafter\UpdatetoksPQuatrev\compteur\nil}%
}{%
@@ -39,7 +49,7 @@
\foreachitem\compteur\in\PQuatreListeV{\expandafter\UpdatetoksPQuatrev\compteur\nil}%
}{%
% On choisit aléatoirement les listes de nombres de -10 à -2 union 2 à 10 en faisant deux listes : horizontale et verticale
- \def\PQuatreListe{$-10$,$-9$,$-8$,$-7$,$-6$,$-5$,$-4$,$-3$,$-2$,2,3,4,5,6,7,8,9,10}%
+ \def\PQuatreListe{-10,-9,-8,-7,-6,-5,-4,-3,-2,2,3,4,5,6,7,8,9,10}%
\MelangeListe{\PQuatreListe}{7}%
\readlist*\PQuatreListeH{\faa}%
\MelangeListe{\PQuatreListe}{7}%
@@ -55,6 +65,10 @@
\setsepchar{,}%
\foreachitem\compteur\in\PQuatreListes[1]{\expandafter\UpdatetoksPQuatrev\compteur\nil}%
\foreachitem\compteur\in\PQuatreListes[2]{\expandafter\UpdatetoksPQuatreh\compteur\nil}%
+ % On crée éventuellement la liste des solutions
+ \ifboolKV[ClesPQuatre]{Correction}{%
+ \foreachitem\compteur\in\PQuatreListeS{\expandafter\UpdatetoksPQuatres\compteur\nil}%
+ }{}%
}%
% Une fois les listes construites, on dessine et on place les listes.
\PQuatreGrille{\the\toklistePQuatrev}{\the\toklistePQuatreh}%
@@ -69,10 +83,12 @@
PQEchelle=\useKV[ClesPQuatre]{Echelle};
color PQfond;
PQfond=\useKV[ClesPQuatre]{Couleur};
- boolean PQLibre,PQMultiplication,PQTexte;
+ boolean PQLibre,PQMultiplication,PQTexte,Correction,Exposant;
PQLibre:=\useKV[ClesPQuatre]{Libre};
PQMultiplication=\useKV[ClesPQuatre]{Multiplication};
PQTexte:=\useKV[ClesPQuatre]{Texte};
+ Correction=\useKV[ClesPQuatre]{Correction};
+ Exposant=\useKV[ClesPQuatre]{Exposant};
if PQTexte:
string PQConsignes;
@@ -111,6 +127,12 @@
if PQLibre:
if PQTexte:
label.llft(TEX("\begin{minipage}{"&decimal(PQLargeurUn)&"pt}"&PQConsignes&"\end{minipage}") scaled PQEchelle,A);
+ else:
+ if PQMultiplication:
+ label.llft(TEX("$\times$") scaled PQEchelle,A);
+ else:
+ label.llft(TEX("$+$") scaled PQEchelle,A);
+ fi;
fi;
else:
if PQMultiplication:
@@ -119,24 +141,72 @@
label.llft(TEX("$+$") scaled PQEchelle,A);
fi;
fi;
+ %
+ string Textev[];
+ string Texteh[];
labeloffset:=labeloffset/2;
vardef Vertical(text t)=
n:=0;
for p_=t:
+ if PQLibre:
label.lft(TEX(p_) scaled PQEchelle,A+(0,n*PQLargeur+PQLargeur/2));
+ else:
+ if Exposant:
+ label.lft(TEX("$10^{"&p_&"}$") scaled PQEchelle,A+(0,n*PQLargeur+PQLargeur/2));
+ else:
+ label.lft(TEX("\num{"&p_&"}") scaled PQEchelle,A+(0,n*PQLargeur+PQLargeur/2));
+ fi;
+ Textev[n]=p_;
+ fi;
n:=n+1;
endfor;
enddef;
vardef Horizontal(text t)=
n:=0;
for p_=t:
+ if PQLibre:
label.bot(TEX(p_) scaled PQEchelle,A+(n*PQLargeur+PQLargeur/2,0));
+ else:
+ if Exposant:
+ label.bot(TEX("$10^{"&p_&"}$") scaled PQEchelle,A+(n*PQLargeur+PQLargeur/2,0));
+ else:
+ label.bot(TEX("\num{"&p_&"}") scaled PQEchelle,A+(n*PQLargeur+PQLargeur/2,0));
+ fi;
+ Texteh[n]=p_;
+ fi;
n:=n+1;
endfor;
enddef;
labeloffset:=labeloffset*4;
Vertical(#1);
Horizontal(#2);
+ % on affiche la solution
+ vardef AfficheSolution(text t)=
+ n:=0;
+ for p_=t:
+ label(TEX(p_),M[n mod nclargeur][n div nchauteur]);
+ n:=n+1;
+ endfor;
+ enddef;
+ if Correction:
+ if PQLibre=false:
+ for k=0 upto (nclargeur-1):
+ for l=0 upto (nchauteur-1):
+ if Exposant:
+ label(TEX("\Large$10^{\fpeval{"&Texteh[k]&"+"&Textev[l]&"}}$"),M[k][l]);
+ else:
+ if PQMultiplication:
+ label(TEX("\Huge\num{\fpeval{"&Texteh[k]&"*"&Textev[l]&"}}"),M[k][l]);
+ else:
+ label(TEX("\Huge\num{\fpeval{"&Texteh[k]&"+"&Textev[l]&"}}"),M[k][l]);
+ fi;
+ fi;
+ endfor;
+ endfor;
+ else:
+ AfficheSolution(\the\toklistePQuatres);
+ fi;
+ fi;
\end{mplibcode}
\else%
\begin{mpost}[mpsettings={Largeur=\useKV[ClesPQuatre]{Largeur};Largeur=\useKV[ClesPQuatre]{Largeur};LargeurUn=\useKV[ClesPQuatre]{LargeurUn};Echelle=\useKV[ClesPQuatre]{Echelle};color fond;fond=\useKV[ClesPQuatre]{Couleur};boolean Libre,Multiplication,Texte;Libre:=\useKV[ClesPQuatre]{Libre};Multiplication=\useKV[ClesPQuatre]{Multiplication};Texte:=\useKV[ClesPQuatre]{Texte};if Texte:string Consignes;Consignes=\useKV[ClesPQuatre]{Consignes};fi;}]
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCPuzzleSommePyramide.tex b/Master/texmf-dist/tex/latex/profcollege/PfCPuzzleSommePyramide.tex
index 7f00ac287e1..865982ee356 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCPuzzleSommePyramide.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCPuzzleSommePyramide.tex
@@ -1,6 +1,10 @@
%%%
% Puzzle Somme Pyramide
%%%
+\def\filedatePuzzleSommePyramide{2024/08/04}%
+\def\fileversionPuzzleSommePyramide{0.1}%
+\message{-- \filedatePuzzleSommePyramide\space v\fileversionPuzzleSommePyramide}%
+%
\setKVdefault[ClesPuzzleP]{Largeur=40pt,Etages=4,Graines=false,Solutions=false,Jeu,EnonceQuestion=false,NbLignes=7}
\defKV[ClesPuzzleP]{Graine=\setKV[ClesPuzzleP]{Graines}}%
\defKV[ClesPuzzleP]{Solution=\setKV[ClesPuzzleP]{Solutions}\setKV[ClesPuzzleP]{Jeu=false}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCPyraVoca.tex b/Master/texmf-dist/tex/latex/profcollege/PfCPyraVoca.tex
index bfda6963006..983a8b1eb95 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCPyraVoca.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCPyraVoca.tex
@@ -1,6 +1,10 @@
%%%
% PyraVoca
%%%
+\def\filedatePyraVoca{2024/08/04}%
+\def\fileversionPyraVoca{0.1}%
+\message{-- \filedatePyraVoca\space v\fileversionPyraVoca}%
+%
\newlength{\PfCPyraVocaHauteur}
\setKVdefault[PyraVoca]{Solution=false,Largeur=15pt}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCPyramideCalculs.tex b/Master/texmf-dist/tex/latex/profcollege/PfCPyramideCalculs.tex
index fdd5c7b6852..0b00e0e4acc 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCPyramideCalculs.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCPyramideCalculs.tex
@@ -1,6 +1,10 @@
%%%
% Pyramide de calculs
%%%
+\def\filedatePyraCalc{2024/08/04}%
+\def\fileversionPyraCalc{0.1}%
+\message{-- \filedatePyraCalc\space v\fileversionPyraCalc}%
+%
\newcommand\DessinePyramideNombreMul[1]{%
\ifluatex
\mplibforcehmode
@@ -241,7 +245,7 @@
\fi
}%
-\setKVdefault[ClesPyramide]{Etages=5,Largeur=2cm,Hauteur=1cm,Vide=false,Inverse=false,Double=false,Couleur=Crimson,Multiplication=false,CouleurNombre=blue,Produit=false,Solution=false,Aide=false,Cote=4cm}%
+\setKVdefault[ClesPyramide]{ToutesOperations=false,Etages=5,Largeur=2cm,Hauteur=1cm,Vide=false,Inverse=false,Double=false,Couleur=Crimson,Multiplication=false,CouleurNombre=blue,Produit=false,Solution=false,Aide=false,Cote=4cm}%
\newtoks\toklistecaseP%
\def\UpdatetoksPyramide#1\nil{\addtotok\toklistecaseP{"#1",}}%
@@ -250,6 +254,9 @@
\NewDocumentCommand\PyramideNombre{o m}{%
\useKVdefault[ClesPyramide]%
\setKV[ClesPyramide]{#1}%
+ \ifboolKV[ClesPyramide]{ToutesOperations}{%
+ \PyramideOp[#1]{#2}%
+ }{%
\ifboolKV[ClesPyramide]{Multiplication}{%
\ifx\bla#2\bla%
\setKV[ClesPyramide]{Vide=true}%
@@ -278,4 +285,302 @@
}{Le nombre d'éléments dans la liste des propositions n'est pas compatible avec le nombre d'étages choisi.}%
\fi%
}%
+}%
+}%
+
+\setKVdefault[PyramideOp]{Rayon=5mm,Graines=false,Etages=5,Solution=false,Relatifs=false,Case=-1}
+\defKV[PyramideOp]{Graine=\setKV[PyramideOp]{Graines}}
+\defKV[PyramideOp]{CouleurSolution=\setKV[PyramideOp]{Solution}}
+
+\NewDocumentCommand\PyramideOp{om}{%
+ \useKVdefault[PyramideOp]%
+ \setKV[PyramideOp]{#1}%
+ \ifboolKV[PyramideOp]{Relatifs}{%
+ \BuildPyramideOpRelatifs{#2}%
+ }{%
+ \BuildPyramideOp{#2}%
+ }%
+}%
+
+\NewDocumentCommand\BuildPyramideOp{m}{%
+ \ifluatex
+ \mplibforcehmode
+ \mplibnumbersystem{double}
+ \begin{mplibcode}
+ Etages=\useKV[PyramideOp]{Etages};
+ Rayon=\useKV[PyramideOp]{Rayon};
+ Case=\useKV[PyramideOp]{Case};
+
+ boolean Graines,Solution,Allume[][];
+
+ Graines=\useKV[PyramideOp]{Graines};
+ if Graines:
+ randomseed:=\useKV[PyramideOp]{Graine};
+ fi;
+
+ Solution=\useKV[PyramideOp]{Solution};
+ if Solution:
+ color CouleurSolution;
+ CouleurSolution=\useKV[PyramideOp]{CouleurSolution};
+ fi;
+
+ vardef ChoixOperation(expr Nba,Nbb)=
+ if (Nba<Nbb) or (Nba=Nbb):
+ if Nba*Nbb>200:
+ ChoixOp:=ceiling(uniformdeviate(1));
+ else:
+ ChoixOp:=ceiling(uniformdeviate(2));
+ fi;
+ else:
+ if (Nba mod Nbb)<>0:
+ if Nba*Nbb>200:
+ ChoixAlea:=uniformdeviate(1);
+ if ChoixAlea<0.5:
+ ChoixOp:=1;
+ else:
+ ChoixOp:=3;
+ fi;
+ else:
+ ChoixOp:=ceiling(uniformdeviate(3));
+ fi;
+ else:
+ if Nba*Nbb>200:
+ ChoixAlea:=uniformdeviate(1);
+ if ChoixAlea<0.5:
+ ChoixOp:=1;
+ else:
+ ChoixOp:=ceiling(2+uniformdeviate(2));
+ fi;
+ else:
+ ChoixOp:=ceiling(uniformdeviate(4));
+ fi;
+ fi;
+ fi;
+ enddef;
+
+ numeric Nb[][],ChoixOp[][];
+
+ pair M[][],N[][];
+
+ for k=0 upto Etages-1:
+ for l=0 upto Etages-1-k:
+ M[k][l]=Rayon*(1,1)+2*Rayon*(l,k)+k*2*Rayon*(0.5,-1+cosd(30));
+ Allume[k][l]=false;
+ endfor;
+ endfor;
+ for k=0 upto Etages-2:
+ for l=0 upto Etages-2-k:
+ N[k][l]=Rayon*(1,1)+(Rayon,0)+2*Rayon*(l,k)+k*2*Rayon*(0.5,-1+cosd(30));
+ endfor;
+ endfor;
+
+ n:=0;
+
+ for p_=#1:
+ Nb[0][n]=p_;
+ if n=Case:
+ if n<Etages-1:
+ Allume[1][n]:=true;
+ else:
+ Allume[1][n-1]:=true;
+ fi;
+ else:
+ Allume[0][n]:=true;
+ fi;
+ n:=n+1;
+ endfor;
+
+ string Op[][];
+
+ % Détermination des opérations et des valeurs à indiquer.
+ for k=0 upto Etages-1:
+ for l=0 upto Etages-2-k:
+ ChoixOperation(Nb[k][l],Nb[k][l+1]);
+ if ChoixOp=1:
+ Op[k][l]="$+$";
+ Nb[k+1][l]=Nb[k][l]+Nb[k][l+1];
+ elseif ChoixOp=2:
+ Op[k][l]="$\times$";
+ Nb[k+1][l]=Nb[k][l]*Nb[k][l+1];
+ elseif ChoixOp=3:
+ Op[k][l]="$\_$";
+ Nb[k+1][l]=Nb[k][l]-Nb[k][l+1];
+ elseif ChoixOp=4:
+ Op[k][l]="$\div$";
+ Nb[k+1][l]=Nb[k][l]/Nb[k][l+1];
+ fi;
+ endfor;
+ endfor;
+ %Affichage
+ for k=0 upto Etages-1:
+ for l=0 upto Etages-1-k:
+ if Allume[k][l]=false:
+ if Solution:
+ fill cercles(M[k][l],Rayon) withcolor CouleurSolution;
+ label(decimal(Nb[k][l]),M[k][l]);
+ fi;
+ else:
+ label(decimal(Nb[k][l]),M[k][l]);
+ fi;
+ trace cercles(M[k][l],Rayon);
+ endfor;
+ endfor;
+ for k=0 upto Etages-2:
+ for l=0 upto Etages-2-k:
+ fill cercles(N[k][l],2mm) withcolor 0.8white;
+ trace cercles(N[k][l],2mm);
+ label(TEX(Op[k][l]),N[k][l]);
+ endfor;
+ endfor;
+ \end{mplibcode}
+ \mplibnumbersystem{scaled}
+ \fi
+}
+
+\NewDocumentCommand\BuildPyramideOpRelatifs{m}{%
+ \ifluatex
+ \mplibforcehmode
+ \mplibnumbersystem{double}
+ \begin{mplibcode}
+ Etages=\useKV[PyramideOp]{Etages};
+ Rayon=\useKV[PyramideOp]{Rayon};
+ Case=\useKV[PyramideOp]{Case};
+
+ boolean Graines,Solution,Allume[][];
+
+ Graines=\useKV[PyramideOp]{Graines};
+ if Graines:
+ randomseed:=\useKV[PyramideOp]{Graine};
+ fi;
+
+ Solution=\useKV[PyramideOp]{Solution};
+ if Solution:
+ color CouleurSolution;
+ CouleurSolution=\useKV[PyramideOp]{CouleurSolution};
+ fi;
+
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ vardef ChoixOperation(expr Nba,Nbb)=
+ if (Nba=Nbb):
+ if Nba*Nbb>200:
+ ChoixOp:=ceiling(uniformdeviate(1));
+ else:
+ ChoixOp:=ceiling(uniformdeviate(2));
+ fi;
+ elseif (Nba+Nbb=0):
+ if abs(Nba*Nbb)>200:
+ ChoixOp:=3;
+ else:
+ ChoixAlea:=uniformdeviate(1);
+ if ChoixAlea<0.5:
+ ChoixOp:=2;
+ else:
+ ChoixOp:=3;
+ fi;
+ fi;
+ else:
+ if (abs(Nba) mod abs(Nbb))<>0:
+ if abs(Nba*Nbb)>200:
+ ChoixAlea:=uniformdeviate(1);
+ if ChoixAlea<0.5:
+ ChoixOp:=1;
+ else:
+ ChoixOp:=3;
+ fi;
+ else:
+ ChoixOp:=ceiling(uniformdeviate(3));
+ fi;
+ else:
+ if abs(Nba*Nbb)>200:
+ ChoixAlea:=uniformdeviate(1);
+ if ChoixAlea<0.5:
+ ChoixOp:=1;
+ else:
+ ChoixOp:=ceiling(2+uniformdeviate(2));
+ fi;
+ else:
+ ChoixOp:=ceiling(uniformdeviate(4));
+ fi;
+ fi;
+ fi;
+ enddef;
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+ numeric Nb[][],ChoixOp[][];
+
+ pair M[][],N[][];
+
+ for k=0 upto Etages-1:
+ for l=0 upto Etages-1-k:
+ M[k][l]=Rayon*(1,1)+2*Rayon*(l,k)+k*2*Rayon*(0.5,-1+cosd(30));
+ Allume[k][l]=false;
+ endfor;
+ endfor;
+ for k=0 upto Etages-2:
+ for l=0 upto Etages-2-k:
+ N[k][l]=Rayon*(1,1)+(Rayon,0)+2*Rayon*(l,k)+k*2*Rayon*(0.5,-1+cosd(30));
+ endfor;
+ endfor;
+
+ n:=0;
+
+ for p_=#1:
+ Nb[0][n]=p_;
+ if n=Case:
+ if n<Etages-1:
+ Allume[1][n]:=true;
+ else:
+ Allume[1][n-1]:=true;
+ fi;
+ else:
+ Allume[0][n]:=true;
+ fi;
+ n:=n+1;
+ endfor;
+
+ string Op[][];
+
+ % Détermination des opérations et des valeurs à indiquer.
+ for k=0 upto Etages-1:
+ for l=0 upto Etages-2-k:
+ ChoixOperation(Nb[k][l],Nb[k][l+1]);
+ if ChoixOp=1:
+ Op[k][l]="$+$";
+ Nb[k+1][l]=Nb[k][l]+Nb[k][l+1];
+ elseif ChoixOp=2:
+ Op[k][l]="$\times$";
+ Nb[k+1][l]=Nb[k][l]*Nb[k][l+1];
+ elseif ChoixOp=3:
+ Op[k][l]="$\_$";
+ Nb[k+1][l]=Nb[k][l]-Nb[k][l+1];
+ elseif ChoixOp=4:
+ Op[k][l]="$\div$";
+ Nb[k+1][l]=Nb[k][l]/Nb[k][l+1];
+ fi;
+ endfor;
+ endfor;
+ %Affichage
+ for k=0 upto Etages-1:
+ for l=0 upto Etages-1-k:
+ if Allume[k][l]=false:
+ if Solution:
+ fill cercles(M[k][l],Rayon) withcolor CouleurSolution;
+ label(TEX("\num{"&decimal(Nb[k][l])&"}"),M[k][l]);
+ fi;
+ else:
+ label(TEX("\num{"&decimal(Nb[k][l])&"}"),M[k][l]);
+ fi;
+ trace cercles(M[k][l],Rayon);
+ endfor;
+ endfor;
+ for k=0 upto Etages-2:
+ for l=0 upto Etages-2-k:
+ fill cercles(N[k][l],2mm) withcolor 0.8white;
+ trace cercles(N[k][l],2mm);
+ label(TEX(Op[k][l]),N[k][l]);
+ endfor;
+ endfor;
+ \end{mplibcode}
+ \mplibnumbersystem{scaled}
+ \fi
}% \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCPythagore.tex b/Master/texmf-dist/tex/latex/profcollege/PfCPythagore.tex
index 5c922d98b04..f5c95d91e42 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCPythagore.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCPythagore.tex
@@ -1,6 +1,10 @@
%%%
% Le th\'eor\`eme de Pythagore
%%%
+\def\filedatePythagore{2024/08/04}%
+\def\fileversionPythagore{0.1}%
+\message{-- \filedatePythagore\space v\fileversionPythagore}%
+%
\setKVdefault[ClesPythagore]{Exact=false,AvantRacine=false,Racine=false,Entier=false,Egalite=false,Precision=2,Soustraction=false,Figure=false,FigureSeule=false,Angle=0,Echelle=1cm,Reciproque=false,ReciColonnes=false,Faible=false,Unite=cm,EnchaineA=false,EnchaineB=false,EnchaineC=false,Perso=false,AllPerso=false,SansMots=false,Decalage=5mm,ModeleCouleur=5}%
\defKV[ClesPythagore]{ValeurA=\setKV[ClesPythagore]{EnchaineA}}%
\defKV[ClesPythagore]{ValeurB=\setKV[ClesPythagore]{EnchaineB}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCQuestionsFlash.tex b/Master/texmf-dist/tex/latex/profcollege/PfCQuestionsFlash.tex
index 8edee39f164..5bcf626ddcf 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCQuestionsFlash.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCQuestionsFlash.tex
@@ -1,6 +1,10 @@
%%%
% Questions Flash
%%%
+\def\filedateQFlash{2024/08/04}%
+\def\fileversionQFlash{0.1}%
+\message{-- \filedateQFlash\space v\fileversionQFlash}%
+%
\tcbset{Expression/.style={colback=white,valign=center,left=0mm,right=0mm,top=1mm,bottom=1mm,colframe=white}}%
\tcbset{ExpressionSerie1/.style={colback=\useKV[ClesFlash]{Couleur1},left=0mm,right=0mm,top=1mm,bottom=1mm}}%
\tcbset{ExpressionSerie2/.style={colback=\useKV[ClesFlash]{Couleur2},left=0mm,right=0mm,top=1mm,bottom=1mm}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCQuestionsRelier.tex b/Master/texmf-dist/tex/latex/profcollege/PfCQuestionsRelier.tex
index 9745bb144c1..8aee438e624 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCQuestionsRelier.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCQuestionsRelier.tex
@@ -1,9 +1,16 @@
%%%
% R\'eponses \`a relier
%%%
+\def\filedateQRelier{2024/08/04}%
+\def\fileversionQRelier{0.1}%
+\message{-- \filedateQRelier\space v\fileversionQRelier}%
+%
\setKVdefault[ClesRelie]{Solution=false,LargeurG=5cm,LargeurD=2cm,Stretch=1.5,Ecart=2cm,Couleur=black}%
\defKV[ClesRelie]{Graine=\PfCGraineAlea{#1}}%
+\newcounter{NbRelie}%
+\newcounter{NbRelieD}
+
\NewDocumentCommand\Relie{som}{%
\useKVdefault[ClesRelie]%
\setKV[ClesRelie]{#2}%
@@ -33,7 +40,13 @@
\itemtomacro\ListeRelie[##1,1]\untest%
\ifx\bla\untest\bla%
\else%
- \tikz[remember picture,overlay]{\draw[PfCRelieCouleurTrace] (RelieG-##1) -- (RelieD-\ListeRelie[##1,3]);}%
+ \itemtomacro\ListeRelie[##1,3]\Foo
+ \setsepchar{-}\ignoreemptyitems%
+ \readlist*\ListeRelieReponses{\Foo}%
+ \reademptyitems
+ \foreachitem\compteur\in\ListeRelieReponses{%
+ \tikz[remember picture,overlay]{\draw[PfCRelieCouleurTrace] (RelieG-##1) -- (RelieD-\ListeRelieReponses[\compteurcnt]);}%
+ }
\fi
}%
}{%
@@ -41,49 +54,39 @@
}%
}%
-\newcommand\Relieold[2][]{%
- \useKVdefault[ClesRelie]%
- \setKV[ClesRelie]{#1}%
- \setsepchar[*]{,*/}\reademptyitems%
- \readlist*\ListeRelie{#2}%
- \ignoreemptyitems
- \buildtabrelie%
- \ifboolKV[ClesRelie]{Solution}{%
- \colorlet{PfCRelieCouleurTrace}{\useKV[ClesRelie]{Couleur}}%
- \xintFor* ##1 in {\xintSeq {1}{\ListeRelielen}}\do{%
- \itemtomacro\ListeRelie[##1,1]\untest
- \ifx\bla\untest\bla%
- \else
- \tikz[remember picture,overlay]{\draw[PfCRelieCouleurTrace] (RelieG-##1) -- (RelieD-\ListeRelie[##1,3]);}%
- \fi
- }%
- }{%
- }%
-}%
-
-\newcounter{NbRelie}%
-
\def\buildtabrelie{%
\setcounter{NbRelie}{0}%
+ \setcounter{NbRelieD}{0}%
\renewcommand{\arraystretch}{\useKV[ClesRelie]{Stretch}}%
- \begin{tabular}{p{\useKV[ClesRelie]{LargeurG}}cp{\useKV[ClesRelie]{Ecart}}>{\tikz[remember
- picture]{\node[name=RelieD-\theNbRelie,inner
- sep=0pt]{};\fill[] (RelieD-\theNbRelie) circle[radius=1.5pt]}}cp{\useKV[ClesRelie]{LargeurD}}}%
- \xintFor* ##1 in {\xintSeq {1}{\ListeRelielen}}\do{\ListeRelie[##1,1]\itemtomacro\ListeRelie[##1,1]\untest%
-\ifx\bla\untest\bla%
+ \begin{tabular}{p{\useKV[ClesRelie]{LargeurG}}cp{\useKV[ClesRelie]{Ecart}}cp{\useKV[ClesRelie]{LargeurD}}}%
+ \xintFor* ##1 in {\xintSeq {1}{\ListeRelielen}}\do{%
+ \ListeRelie[##1,1]\itemtomacro\ListeRelie[##1,1]\untest%
+ \ifx\bla\untest\bla%
\uppercase{&}\stepcounter{NbRelie}%
\else
\uppercase{&}\stepcounter{NbRelie}\tikz[remember
picture,overlay]{\node[name=RelieG-\theNbRelie,inner
sep=0pt]{};\fill[]
(RelieG-\theNbRelie) circle[radius=1.5pt];}
-\fi&&&\ListeRelie[##1,2]\\}%
+ \fi&&
+ \itemtomacro\ListeRelie[##1,2]\untest
+ \ifx\bla\untest\bla\else\stepcounter{NbRelieD}\tikz[remember
+ picture]{\node[name=RelieD-\theNbRelieD,inner
+ sep=0pt]{};\fill[] (RelieD-\theNbRelieD) circle[radius=1.5pt]}
+ \fi
+ &\itemtomacro\ListeRelie[##1,2]\untest%
+ \ifx\bla\untest\bla
+ \else
+ \ListeRelie[##1,2]
+ \fi\\}%
\end{tabular}%
- \setcounter{NbRelie}{0}%
+ %\setcounter{NbRelie}{0}%
+ %\setcounter{NbRelieD}{0}%
}%
\def\buildtabrelieauto{%
\setcounter{NbRelie}{0}%
+ \setcounter{NbRelieD}{0}%
\xdef\PfCFooListeNbQ{1}%
\xintFor* ##1 in{\xintSeq{2}{\ListeRelielen}}\do{%
\xdef\PfCFooListeNbQ{\PfCFooListeNbQ,##1}%
@@ -110,4 +113,5 @@
\fi&&&\itemtomacro\PfCListeReponsesMelangees[##1]\PfCNumReponses\ListeRelie[\PfCNumReponses,2]\\}%
\end{tabular}%
\setcounter{NbRelie}{0}%
-}% \ No newline at end of file
+}%
+
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCQuiSuisJe.tex b/Master/texmf-dist/tex/latex/profcollege/PfCQuiSuisJe.tex
index aa896d11856..119b5d0944c 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCQuiSuisJe.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCQuiSuisJe.tex
@@ -1,6 +1,10 @@
%%%
% Qui suis-je
%%%
+\def\filedateQsuisuisje{2024/08/04}%
+\def\fileversionQsuisuisje{0.1}%
+\message{-- \filedateQsuisuisje\space v\fileversionQsuisuisje}%
+%
\setKVdefault[Quisuisje]{Solution=false,Largeur=5mm,Colonnes=5,CodePerso=false,TexteA=Lettre,TexteB=R\'esultat du calcul}%
\newcommand\QuisuisjeEnonce{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCRLE.tex b/Master/texmf-dist/tex/latex/profcollege/PfCRLE.tex
index a8f035a577c..8fabde9116c 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCRLE.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCRLE.tex
@@ -1,6 +1,10 @@
%%%
% Codage RLE
%%%
+\def\filedateRLE{2024/08/04}%
+\def\fileversionRLE{0.1}%
+\message{-- \filedateRLE\space v\fileversionRLE}%
+%
\setKVdefault[RLE]{Largeur=10pt,Taille=5,Unite=1cm,Solution=false,Enonce=true}
\newtoks\toklisterle
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCRangementNombres.tex b/Master/texmf-dist/tex/latex/profcollege/PfCRangementNombres.tex
index 1c48ab8efcc..ca58c321fdb 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCRangementNombres.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCRangementNombres.tex
@@ -1,6 +1,10 @@
%%%
% Rangement des nombres
%%%
+\def\filedateRgtNb{2024/08/04}%
+\def\fileversionRgtNb{0.1}%
+\message{-- \filedateRgtNb\space v\fileversionRgtNb}%
+%
\setKVdefault[ClesRgt]{Croissant,Decroissant=false,Strict,Fraction=false,Details=false,Seul=false}%
\dtlexpandnewvalue%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCRapido.tex b/Master/texmf-dist/tex/latex/profcollege/PfCRapido.tex
index fa3a16bf7e7..cb24c2b4043 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCRapido.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCRapido.tex
@@ -1,6 +1,10 @@
%%%
% Rapido
%%%
+\def\filedateRapido{2024/08/04}%
+\def\fileversionRapido{0.1}%
+\message{-- \filedateRapido\space v\fileversionRapido}%
+%
%% D'après https://www.facebook.com/groups/994675223903586/user/100017057226847
%% et une programmation de Laurent Lassale-Carrere
\newcounter{PfCnexo}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCRappelsFormules.tex b/Master/texmf-dist/tex/latex/profcollege/PfCRappelsFormules.tex
index c2a4d959541..1d204baf909 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCRappelsFormules.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCRappelsFormules.tex
@@ -1,6 +1,10 @@
%%%
% Formules
%%%
+\def\filedateRapFormules{2024/08/04}%
+\def\fileversionRapFormules{0.1}%
+\message{-- \filedateRapFormules\space v\fileversionRapFormules}%
+%
\setKVdefault[ClesFormule]{Perimetre=false,Aire=false,Volume=false,Surface=carr\'e,Solide=pav\'e,Angle=0,Ancre={(0,0)},Largeur=5cm,Couleur=white,EchelleEspace=70,Echelle=1cm}
\def\MPFigureCarreCode{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCRecyclage.tex b/Master/texmf-dist/tex/latex/profcollege/PfCRecyclage.tex
index 371688f120c..f99ced507ff 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCRecyclage.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCRecyclage.tex
@@ -1,6 +1,10 @@
%%%
% Logos Recyclage
%%%
+\def\filedateRecyclage{2024/08/04}%
+\def\fileversionRecyclage{0.1}%
+\message{-- \filedateRecyclage\space v\fileversionRecyclage}%
+%
\setKVdefault[Recyclage]{Ticket,Papier=false,Verre=false,Bouteille=false,Carton=false,Couleurs}%
\defKV[Recyclage]{Couleur=\setKV[Recyclage]{Couleurs=false}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCReperage.tex b/Master/texmf-dist/tex/latex/profcollege/PfCReperage.tex
index 23e7bd2775b..d2dec508171 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCReperage.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCReperage.tex
@@ -1,6 +1,10 @@
%%%
% Reperage
%%%
+\def\filedateReperage{2024/08/04}%
+\def\fileversionReperage{0.1}%
+\message{-- \filedateReperage\space v\fileversionReperage}%
+%
\setKVdefault[ClesReperage]{Unitex=1,Pasx=1,Unitey=1,Pasy=1,Unitez=1,Pasz=1,DemiDroite=false,Droite=false,Plan=false,Trace=false,ListeSegment={},Espace=false,Sphere=false,AnglePhi=30,CouleurLa=white,CouleurLon=Tomato,AffichageUnites=true,MarquePrimaire=true,AffichageNom=false,AffichageGrad=false,AffichageAbs=0,AffichageCoord=false,LectureCoord=false,ValeurUnitex=1,ValeurUnitey=1,ValeurOrigine=0,NomOrigine=O,EchelleEspace=50,CouleurCoord=black,Thermometre=false,Mercure=false,CouleurMercure=black,Celsius,Kelvin=false,Farenheit=false,ValeurMin=-4000,ValeurMax=4000,ValeurMiny=-4000,ValeurMaxy=4000,Etages=4,Code=false,Globe=false,Rho=1500,Phi=22,Theta=10,CouleurE=orange,CouleurG=green,Axes=false,TypeProj="persp",Niveaux=false,Decale=false,Tiret=false,Cadre=false,ModeleCouleur=5,EchelleCroix=1,CouleurCroix=black}
\defKV[ClesReperage]{Traces=\setKV[ClesReperage]{Code}}%
\defKV[ClesReperage]{Niveau=\setKV[ClesReperage]{Etages=#1}\setKV[ClesReperage]{Niveaux}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCRepresentationGraphique.tex b/Master/texmf-dist/tex/latex/profcollege/PfCRepresentationGraphique.tex
index 390c1a9caac..47ed10c3761 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCRepresentationGraphique.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCRepresentationGraphique.tex
@@ -1,7 +1,11 @@
%%%
% Diff\'erentes représentations graphiques
%%%
-\setKVdefault[TraceG]{Millimetre=false,Grille=false,Graduations=false,PasGradX=1,PasGradY=1,PasGrilleX=1,PasGrilleY=1,Xmin=-5.5,Xmax=5.5,Xstep=1,Ymin=-5.5,Ymax=5.5,Ystep=1,Bornea=-5.5,Borneb=5.5,LabelX={},LabelY={},LegendeX=false,LegendeY=false,LabelC=0.5,NomCourbe={},Origine={(5.5,5.5)},Fonction=false,Points=false,Invisible=false,CouleurPoint=red,CouleurTrace=black,Epaisseur=1,Relie=false,RelieSegment=false,Marque=dot,Code=false,Vide=false,NbPointsCourbe=100,Tiret=false}%
+\def\filedateRepGraph{2024/08/20}%
+\def\fileversionRepGraph{0.1a}%
+\message{-- \filedateRepGraph\space v\fileversionRepGraph}%
+%
+\setKVdefault[TraceG]{Millimetre=false,Grille=false,Graduations=false,PasGradX=1,PasGradY=1,PasGrilleX=1,PasGrilleY=1,Xmin=-5.5,Xmax=5.5,Xstep=1,Ymin=-5.5,Ymax=5.5,Ystep=1,Bornea=-5.5,Borneb=5.5,LabelX={},LabelY={},LegendeX=false,LegendeY=false,LabelC=0.5,NomCourbe={},Origine={(5.5,5.5)},Fonction=false,Points=false,Invisible=false,CouleurPoint=red,CouleurTrace=black,Epaisseur=1,Relie=false,RelieSegment=false,Marque=dot,Code=false,Vide=false,NbPointsCourbe=100,Tiret=false,StyleTrace=0,Date=false}%
\defKV[TraceG]{Traces=\setKV[TraceG]{Code}}%
\defKV[TraceG]{LabelX=\setKV[TraceG]{LegendeX}}%
\defKV[TraceG]{LabelY=\setKV[TraceG]{LegendeY}}%
@@ -35,6 +39,8 @@
y.u=1cm/\useKV[TraceG]{Ystep};
grillex=\useKV[TraceG]{PasGrilleX};
grilley=\useKV[TraceG]{PasGrilleY};
+ pasgradx=\useKV[TraceG]{PasGradX};
+ pasgrady=\useKV[TraceG]{PasGradY};
pos=\useKV[TraceG]{LabelC};
marque_p:=str \useKV[TraceG]{Marque};
@@ -49,6 +55,9 @@
LegendeX:=\useKV[TraceG]{LegendeX};
LegendeY:=\useKV[TraceG]{LegendeY};
+ boolean Date;
+ Date=\useKV[TraceG]{Date};
+
boolean Relie;
Relie=\useKV[TraceG]{Relie};
@@ -73,12 +82,16 @@
fi;
if Graduations:
- for k=0 step grillex until (xmax-xmin):
+ for k=0 step pasgradx until (xmax-xmin):
trace ((0,-0.5mm)--(0,0.5mm)) shifted ((k*x.u,0) shifted Origine) withpen pencircle scaled1.25;
+ if Date:
+ label.bot(TEX(decimal(xmin+k)),(k*x.u,0) shifted Origine);
+ else:
label.bot(TEX("\num{"&decimal(xmin+k)&"}"),(k*x.u,0) shifted Origine);
+ fi;
endfor;
label.ulft(TEX("\num{"&decimal(ymin)&"}"),(0,0) shifted Origine);
- for k=grilley step grilley until (ymax-ymin):
+ for k=pasgrady step pasgrady until (ymax-ymin):
trace ((-0.5mm,0)--(0.5mm,0)) shifted ((0,k*y.u) shifted Origine) withpen pencircle scaled1.25;
label.lft(TEX("\num{"&decimal(ymin+k)&"}"),(0,k*y.u) shifted Origine);
endfor;
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCRepresenterEntier.tex b/Master/texmf-dist/tex/latex/profcollege/PfCRepresenterEntier.tex
index 9ab7b24341f..15f69191319 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCRepresenterEntier.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCRepresenterEntier.tex
@@ -1,6 +1,10 @@
%%%
% Représenter un entier dans une base
%%%
+\def\filedateRepEntier{2024/08/04}%
+\def\fileversionRepEntier{0.1}%
+\message{-- \filedateRepEntier\space v\fileversionRepEntier}%
+%
\setKVdefault[ClesRBase]{Base=10,Echelle=1,Unite=false,Compact=false,Impression=false,ListeCouleurs={Tomato,LightSteelBlue,LightGreen,Cornsilk}}%
\newcommand\RepresenterEntier[2][]{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCRepresenterFraction.tex b/Master/texmf-dist/tex/latex/profcollege/PfCRepresenterFraction.tex
index 6660693348a..2beb3ee5ed3 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCRepresenterFraction.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCRepresenterFraction.tex
@@ -1,7 +1,11 @@
%%%
% Fractions
%%%
-\setKVdefault[ClesFraction]{Rayon=2cm,Disque,Regulier=false,Segment=false,Rectangle=false,Longueur=5cm,Largeur=2cm,Cotes=5,Triangle=false,Parts=3,Eprouvette=false,Couleur=green,Reponse=false,Multiple=1,Hachures=false,Epaisseur=1}
+\def\filedateRepFrac{2024/08/30}%
+\def\fileversionRepFrac{0.1a}%
+\message{-- \filedateRepFrac\space v\fileversionRepFrac}%
+%
+\setKVdefault[ClesFraction]{Rayon=2cm,Disque,Regulier=false,Segment=false,Rectangle=false,Longueur=5cm,Largeur=2cm,Cotes=5,Triangle=false,Parts=3,Eprouvette=false,Couleur=green,Reponse=false,Multiple=1,Hachures=false,Epaisseur=1,Aleatoire=false}
\def\MPFractionEprouvetteCode{%
Hauteur=\useKV[ClesFraction]{Longueur};
@@ -80,6 +84,7 @@
\ifluatex
\mplibforcehmode
\begin{mplibcode}
+ % Pas d'aléa ici : l'eau ne peut pas être en lévitation :)
\MPFractionEprouvetteCode
trace eprouvette(#2,#1);
\end{mplibcode}
@@ -90,6 +95,107 @@
\fi
}
+\def\MPFractionRegulierCodeAlea{%
+ Rayon=\useKV[ClesFraction]{Rayon};
+ Cotes=\useKV[ClesFraction]{Cotes};
+ color ColPolyReg;
+ ColPolyReg=\useKV[ClesFraction]{Couleur};
+ boolean Hachures,Reponse;
+ Reponse=\useKV[ClesFraction]{Reponse};
+ Hachures=\useKV[ClesFraction]{Hachures};
+ Epaisseur=\useKV[ClesFraction]{Epaisseur};
+ pair O,A[],B[];
+ O=u*(0,0);
+ path cc,cd;
+ cc=cercles(O,Rayon);
+ for k=0 upto Cotes:
+ A[k]=pointarc(cc,k*(360/Cotes));
+ endfor;
+ cd=polygone(A0 for k=1 upto Cotes-1:,A[k] endfor);
+ path part[];
+ vardef FractionPolyReg(expr nume,deno)=
+ for k=0 upto deno:
+ B[k]=point(k*(Cotes/deno)) of cd;
+ dotlabel("",B[k]);
+ endfor;
+ for k=0 upto deno-1:
+ part[k]=O--B[k] for l=1 upto Cotes-1:if (B[k]--B[k+1]) intersectiontimes (O--A[l])<>(-1,-1):--A[l] fi endfor --B[k+1]--cycle;%O--arccercle(B[k],B[k+1],O)--cycle;
+ endfor;
+ m=(nume div deno);
+ if (nume mod deno)=0:m:=m-1; fi;
+ picture RetourFraction;
+ RetourFraction=image(%
+ Reste=((nume div deno)+1)*deno;
+ RetiensPart=0;
+ if Reponse:
+ if m>0:
+ for l=0 upto (m-1):
+ for k=0 upto deno-1:
+ if RetiensPart<nume:
+ if Reste>(nume-RetiensPart):
+ test:=uniformdeviate(1);
+ if test>0.5:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(part[k] shifted(l*(2*Rayon+0.5cm,0)),1.5*360/deno,0.25,0) withcolor ColPolyReg;
+ else:
+ fill part[k] shifted(l*(2*Rayon+0.5cm,0)) withcolor ColPolyReg;
+ fi;
+ fi;
+ else:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(part[k] shifted(l*(2*Rayon+0.5cm,0)),1.5*360/deno,0.25,0) withcolor ColPolyReg;
+ else:
+ fill part[k] shifted(l*(2*Rayon+0.5cm,0)) withcolor ColPolyReg;
+ fi;
+ fi;
+ fi;
+ Reste:=Reste-1;
+ endfor;
+ endfor;
+ fi;
+ for k=0 upto deno-1:
+ if RetiensPart<nume:
+ if Reste>(nume-RetiensPart):
+ test:=uniformdeviate(1);
+ if test>0.5:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(part[k] shifted(m*(2*Rayon+0.5cm,0)),1.5*360/deno,0.25,0) withcolor ColPolyReg;
+ else:
+ fill part[k] shifted(m*(2*Rayon+0.5cm,0)) withcolor ColPolyReg;
+ fi;
+ fi;
+ else:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(part[k] shifted(m*(2*Rayon+0.5cm,0)),1.5*360/deno,0.25,0) withcolor ColPolyReg;
+ else:
+ fill part[k] shifted(m*(2*Rayon+0.5cm,0)) withcolor ColPolyReg;
+ fi;
+ fi;
+ fi;
+ Reste:=Reste-1;
+ endfor;
+ fi;
+ drawoptions(withpen pencircle scaled Epaisseur);
+ for l=0 upto m:
+ draw cd shifted(l*(2*Rayon+0.5cm,0));
+ for k=0 upto (deno-1):
+ draw segment(O,B[k]) shifted(l*(2*Rayon+0.5cm,0));
+ endfor;
+ endfor;
+ drawoptions();
+ );
+ RetourFraction
+ enddef;
+}%
+
\def\MPFractionRegulierCode{%
Rayon=\useKV[ClesFraction]{Rayon};
Cotes=\useKV[ClesFraction]{Cotes};
@@ -168,7 +274,13 @@
\ifluatex
\mplibforcehmode
\begin{mplibcode}
+ boolean Alea;
+ Alea=\useKV[ClesFraction]{Aleatoire};
+ if Alea:
+ \MPFractionRegulierCodeAlea;
+ else:
\MPFractionRegulierCode
+ fi;
trace FractionPolyReg(#1,#2);
\end{mplibcode}
\else
@@ -178,6 +290,122 @@
\fi
}%
+\def\MPFractionTriangleCodeAlea{%
+ Longueur:=\useKV[ClesFraction]{Longueur};
+ nbparts:=\useKV[ClesFraction]{Parts};
+ color ColTriangle;
+ ColTriangle=\useKV[ClesFraction]{Couleur};
+ boolean Hachures,Reponse;
+ Reponse=\useKV[ClesFraction]{Reponse};
+ Hachures=\useKV[ClesFraction]{Hachures};
+ Epaisseur=\useKV[ClesFraction]{Epaisseur};
+ nbtriangle=0;
+ %
+ vardef Ligne(expr longueur)=
+ for k=0 upto 2*(longueur-1):
+ nbtriangle:=nbtriangle+1;
+ if (k mod 2)=0:
+ M[nbtriangle]=(Tria shifted(0.5*k*(1/nbparts)*(B-A))) shifted((nbparts-longueur)*(1/nbparts)*(C-A));
+ else:
+ M[nbtriangle]=(Trir shifted(0.5*(k-1)*(1/nbparts)*(B-A))) shifted((nbparts-longueur)*(1/nbparts)*(C-A));
+ fi;
+ endfor;
+ enddef;
+ %
+ pair A,B,C;
+ A=u*(0.5,0.5);
+ B-A=(Longueur,0);
+ C=rotation(B,A,60);
+ %
+ path Tria,Trir,M[];
+ Tria=polygone(A,(1/nbparts)[A,B],(1/nbparts)[A,C]);
+ Trir=symetrie(Tria,(1/nbparts)[A,B],(1/nbparts)[A,C]);
+ %
+ for k=nbparts downto 1:
+ Ligne(k);
+ endfor;
+ %
+ picture FondTriangle;
+ FondTriangle=image(
+ for k=1 upto nbtriangle:
+ trace M[k];
+ endfor;
+ );
+ %
+ vardef FractionTriangle(expr nume,deno)=
+ m:=nume div deno;
+ if (nume mod deno)=0:
+ m:=m-1;
+ fi;
+ picture RetourFraction;
+ RetourFraction=image(
+ Reste=((nume div deno)+1)*deno;
+ RetiensPart=0;
+ if Reponse:
+ if m>0:
+ for l=0 upto (m-1):
+ for k=1 upto nbtriangle:
+ if RetiensPart<nume:
+ if Reste>(nume-RetiensPart):
+ test:=uniformdeviate(1);
+ if test>0.5:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(M[k] shifted(l*(Longueur+1cm,0)),90,0.2,0) withcolor ColTriangle;
+ else:
+ fill M[k] shifted(l*(Longueur+1cm,0)) withcolor ColTriangle;
+ fi;
+ fi;
+ else:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(M[k] shifted(l*(Longueur+1cm,0)),90,0.2,0) withcolor ColTriangle;
+ else:
+ fill M[k] shifted(l*(Longueur+1cm,0)) withcolor ColTriangle;
+ fi;
+ fi;
+ fi;
+ Reste:=Reste-1;
+ endfor;
+ endfor;
+ fi;
+ for k=1 upto nbtriangle:
+ if RetiensPart<nume:
+ if Reste>(nume-RetiensPart):
+ test:=uniformdeviate(1);
+ if test>0.5:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(M[k] shifted(m*(Longueur+1cm,0)),90,0.2,0) withcolor ColTriangle;
+ else:
+ fill M[k] shifted(m*(Longueur+1cm,0)) withcolor ColTriangle;
+ fi;
+ fi;
+ else:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(M[k] shifted(m*(Longueur+1cm,0)),90,0.2,0) withcolor ColTriangle;
+ else:
+ fill M[k] shifted(m*(Longueur+1cm,0)) withcolor ColTriangle;
+ fi;
+ fi;
+ fi;
+ Reste:=Reste-1;
+ endfor;
+ fi;
+ drawoptions(withpen pencircle scaled Epaisseur);
+ for l=0 upto m:
+ trace FondTriangle shifted(l*(Longueur+1cm,0));
+ endfor;
+ );
+ RetourFraction
+enddef;
+}%
+
\def\MPFractionTriangleCode{%
Longueur:=\useKV[ClesFraction]{Longueur};
nbparts:=\useKV[ClesFraction]{Parts};
@@ -241,7 +469,7 @@
trace hachurage(polygone(A,B,C) shifted(l*(Longueur+1cm,0)),90,0.2,0) withcolor ColTriangle;
drawoptions(withpen pencircle scaled Epaisseur);
else:
- remplis polygone(A,B,C) withcolor ColRectangle;
+ remplis polygone(A,B,C) withcolor ColTriangle;
fi;
fi;
for k=1 upto nbparts:
@@ -260,7 +488,13 @@
\ifluatex
\mplibforcehmode
\begin{mplibcode}
- \MPFractionTriangleCode
+ boolean Alea;
+ Alea=\useKV[ClesFraction]{Aleatoire};
+ if Alea:
+ \MPFractionTriangleCodeAlea;
+ else:
+ \MPFractionTriangleCode;
+ fi;
draw FractionTriangle(#1,#2);
\end{mplibcode}
\else
@@ -270,6 +504,117 @@
\fi
}%
+\def\MPFractionRectangleCodeAlea{%
+ Longueur=\useKV[ClesFraction]{Longueur};
+ Largeur=\useKV[ClesFraction]{Largeur};
+ color ColRectangle;
+ ColRectangle=\useKV[ClesFraction]{Couleur};
+ boolean Hachures,Reponse;
+ Reponse=\useKV[ClesFraction]{Reponse};
+ Hachures=\useKV[ClesFraction]{Hachures};
+ Epaisseur=\useKV[ClesFraction]{Epaisseur};
+ Multiple=\useKV[ClesFraction]{Multiple};
+ %
+ pair A,B,C,D,M[],N[],R[],S[];
+ A=(0,0);
+ B-A=(Longueur,0);
+ C-B=(0,Largeur);
+ D-C=A-B;
+ vardef FractionRectangle(expr nume,deno)=
+ m=nume div deno;
+ if (nume mod deno)=0:
+ m:=m-1;
+ fi;
+ numeric parts;
+ parts=(deno div Multiple);
+ for k=0 upto parts:
+ M[k]=(k/parts)[A,B];
+ N[k]=(k/parts)[D,C];
+ endfor;
+ if Multiple>1:
+ for k=0 upto Multiple:
+ R[k]=(k/Multiple)[A,D];
+ S[k]=(k/Multiple)[B,C];
+ endfor;
+ fi;
+ picture FondRectangle;
+ FondRectangle=image(%
+ path case[];
+ for k=0 upto Multiple-1:
+ for l=0 step Multiple until (deno-1):
+ case[k*(deno div Multiple)+(l div Multiple)]=(unitsquare xscaled (Multiple*abs(A-B)/deno) yscaled (abs(D-A)/Multiple)) shifted (((l/deno)[A,B]-A)+((k/Multiple)[A,D]-A));
+ trace case[k*(deno div Multiple)+(l div Multiple)];
+ endfor;
+ endfor;
+ );
+ picture RetourRectangle;
+ RetourRectangle=image(
+ Reste=((nume div deno)+1)*deno;
+ RetiensPart=0;
+ if Reponse:
+ if m>0:
+ for l=0 upto (m-1):
+ for k=0 upto deno-1:
+ if RetiensPart<nume:
+ if Reste>(nume-RetiensPart):
+ test:=uniformdeviate(1);
+ if test>0.5:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(case[k] shifted(l*(Longueur+1cm,0)),45,0.25,0) withcolor ColRectangle;
+ else:
+ fill case[k] shifted(l*(Longueur+1cm,0)) withcolor ColRectangle;
+ fi;
+ fi;
+ else:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(case[k] shifted(l*(Longueur+1cm,0)),45,0.25,0) withcolor ColRectangle;
+ else:
+ fill case[k] shifted(l*(Longueur+1cm,0)) withcolor ColRectangle;
+ fi;
+ fi;
+ fi;
+ Reste:=Reste-1;
+ endfor;
+ endfor;
+ fi;
+ for k=0 upto deno-1:
+ if RetiensPart<nume:
+ if Reste>(nume-RetiensPart):
+ test:=uniformdeviate(1);
+ if test>0.5:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(case[k] shifted(m*(Longueur+1cm,0)),45,0.25,0) withcolor ColRectangle;
+ else:
+ fill case[k] shifted(m*(Longueur+1cm,0)) withcolor ColRectangle;
+ fi;
+ fi;
+ else:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(case[k] shifted(m*(Longueur+1cm,0)),45,0.25,0) withcolor ColRectangle;
+ else:
+ fill case[k] shifted(m*(Longueur+1cm,0)) withcolor ColRectangle;
+ fi;
+ fi;
+ fi;
+ Reste:=Reste-1;
+ endfor;
+ fi;
+ for l=0 upto m:
+ trace FondRectangle shifted(l*(Longueur+1cm,0));
+ endfor;
+ );
+ RetourRectangle
+ enddef;
+}%
+
\def\MPFractionRectangleCode{%
Longueur=\useKV[ClesFraction]{Longueur};
Largeur=\useKV[ClesFraction]{Largeur};
@@ -378,7 +723,13 @@
\ifluatex%
\mplibforcehmode%
\begin{mplibcode}
- \MPFractionRectangleCode
+ boolean Alea;
+ Alea=\useKV[ClesFraction]{Aleatoire};
+ if Alea:
+ \MPFractionRectangleCodeAlea;
+ else:
+ \MPFractionRectangleCode;
+ fi;
trace FractionRectangle(#1,#2);
\end{mplibcode}
\else%
@@ -388,6 +739,101 @@
\fi%
}%
+\def\MPFractionDisqueCodeAlea{%
+ Rayon=\useKV[ClesFraction]{Rayon};
+ Epaisseur=\useKV[ClesFraction]{Epaisseur};
+ color ColDisque;
+ ColDisque=\useKV[ClesFraction]{Couleur};
+ boolean Hachures,Reponse;
+ Hachures=\useKV[ClesFraction]{Hachures};
+ Reponse:=\useKV[ClesFraction]{Reponse};
+ %
+ pair A,B[];
+ A=(0,0);
+ path cc,part[];
+ cc=cercles(A,Rayon);
+ vardef FractionDisque(expr nume,deno)=
+ for k=0 upto deno+1:
+ B[k]=pointarc(cc,(360/deno)*k);
+ endfor;
+ for k=0 upto deno-1:
+ part[k]=A--arccercle(B[k],B[k+1],A)--cycle;
+ endfor;
+ m=(nume div deno);
+ if (nume mod deno)=0:m:=m-1; fi;
+ picture RetourFraction;
+ RetourFraction=image(%
+ Reste=((nume div deno)+1)*deno;
+ RetiensPart=0;
+ if Reponse:
+ if m>0:
+ for l=0 upto (m-1):
+ for k=0 upto deno-1:
+ if RetiensPart<nume:
+ if Reste>(nume-RetiensPart):
+ test:=uniformdeviate(1);
+ if test>0.5:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(part[k] shifted(l*(2*Rayon+1cm,0)),1.5*360/deno,0.25,0) withcolor ColDisque;
+ else:
+ fill part[k] shifted(l*(2*Rayon+1cm,0)) withcolor ColDisque;
+ fi;
+ fi;
+ else:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(part[k] shifted(l*(2*Rayon+1cm,0)),1.5*360/deno,0.25,0) withcolor ColDisque;
+ else:
+ fill part[k] shifted(l*(2*Rayon+1cm,0)) withcolor ColDisque;
+ fi;
+ fi;
+ fi;
+ Reste:=Reste-1;
+ endfor;
+ endfor;
+ fi;
+ for k=0 upto deno-1:
+ if RetiensPart<nume:
+ if Reste>(nume-RetiensPart):
+ test:=uniformdeviate(1);
+ if test>0.5:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(part[k] shifted(m*(2*Rayon+1cm,0)),1.5*360/deno,0.25,0) withcolor ColDisque;
+ else:
+ fill part[k] shifted(m*(2*Rayon+1cm,0)) withcolor ColDisque;
+ fi;
+ fi;
+ else:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(part[k] shifted(m*(2*Rayon+1cm,0)),1.5*360/deno,0.25,0) withcolor ColDisque;
+ else:
+ fill part[k] shifted(m*(2*Rayon+1cm,0)) withcolor ColDisque;
+ fi;
+ fi;
+ fi;
+ Reste:=Reste-1;
+ endfor;
+ fi;
+ drawoptions(withpen pencircle scaled Epaisseur);
+ for l=0 upto m:
+ draw cc shifted(l*(2*Rayon+1cm,0));
+ for k=0 upto (deno-1):
+ draw segment(A,B[k]) shifted(l*(2*Rayon+1cm,0));
+ endfor;
+ endfor;
+ drawoptions();
+ );
+ RetourFraction
+ enddef;
+}%
+
\def\MPFractionDisqueCode{%
Rayon=\useKV[ClesFraction]{Rayon};
Epaisseur=\useKV[ClesFraction]{Epaisseur};
@@ -444,7 +890,13 @@
\ifluatex
\mplibforcehmode
\begin{mplibcode}
+ boolean Alea;
+ Alea=\useKV[ClesFraction]{Aleatoire};
+ if Alea:
+ \MPFractionDisqueCodeAlea;
+ else:
\MPFractionDisqueCode
+ fi;
trace FractionDisque(#1,#2);
\end{mplibcode}
\else
@@ -454,6 +906,115 @@
\fi
}
+\def\MPFractionSegmentCodeAlea{%
+ Longueur=\useKV[ClesFraction]{Longueur};
+ color ColSegment;
+ ColSegment=\useKV[ClesFraction]{Couleur};
+ boolean Hachures,Reponse;
+ Reponse=\useKV[ClesFraction]{Reponse};
+ Hachures=\useKV[ClesFraction]{Hachures};
+ Epaisseur=\useKV[ClesFraction]{Epaisseur};
+ %
+ pair A,C,B[];
+ A=(0,0);
+ C-A=(Longueur,0);
+ %
+ path part[];
+ %
+ vardef FractionSegment(expr nume,deno)=
+ for k=0 upto deno:
+ B[k]=(k/deno)[A,C];
+ endfor;
+ for k=0 upto deno-1:
+ part[k]=polygone(B[k]+u*(0,-0.15),B[k+1]+u*(0,-0.15),B[k+1]+u*(0,0.15),B[k]+u*(0,0.15));
+ endfor;
+ m=nume div deno;
+ picture RetourFraction;
+ RetourFraction=image(
+ Reste=((nume div deno)+1)*deno;
+ RetiensPart=0;
+ % Reponse
+ if Reponse:
+ if m>0:
+ for l=0 upto (m-1):
+ for k=0 upto deno-1:
+ if RetiensPart<nume:
+ if Reste>(nume-RetiensPart):
+ test:=uniformdeviate(1);
+ if test>0.5:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(part[k] shifted(l*(Longueur+1cm,0)),120,0.2,0) withcolor ColSegment;
+ drawoptions();
+ else:
+ draw (segment(B[k],B[k+1]) shifted(l*(Longueur+1cm,0))) withpen pencircle scaled 2 withcolor ColSegment;
+ fi;
+ fi;
+ else:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(part[k] shifted(l*(Longueur+1cm,0)),120,0.2,0) withcolor ColSegment;
+ drawoptions();
+ else:
+ draw (segment(B[k],B[k+1]) shifted(l*(Longueur+1cm,0))) withpen pencircle scaled 2 withcolor ColSegment;
+ fi;
+ fi;
+ fi;
+ Reste:=Reste-1;
+ endfor;
+ endfor;
+ fi;
+ for k=0 upto deno-1:
+ if RetiensPart<nume:
+ if Reste>(nume-RetiensPart):
+ test:=uniformdeviate(1);
+ if test>0.5:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(part[k] shifted(m*(Longueur+1cm,0)),120,0.2,0) withcolor ColSegment;
+ drawoptions();
+ else:
+ draw (segment(B[k],B[k+1]) shifted(m*(Longueur+1cm,0))) withpen pencircle scaled 2 withcolor ColSegment;
+ fi;
+ fi;
+ else:
+ RetiensPart:=RetiensPart+1;
+ if Hachures:
+ drawoptions(withpen pencircle scaled Epaisseur);
+ draw hachurage(part[k] shifted(m*(Longueur+1cm,0)),120,0.2,0) withcolor ColSegment;
+ else:
+ draw (segment(B[k],B[k+1]) shifted(m*(Longueur+1cm,0))) withpen pencircle scaled 2 withcolor ColSegment;
+ fi;
+ fi;
+ fi;
+ Reste:=Reste-1;
+ endfor;
+ fi;
+ %fin Reponse
+ if Hachures:drawoptions(withpen pencircle scaled Epaisseur);fi;
+ % draw (segment(B[0],B[nume mod deno]) shifted(m*(Longueur+1cm,0)));
+ for l=0 upto m:
+ draw segment(A,C) shifted(l*(Longueur+1cm,0));
+ endfor;
+ marque_p:="tiretv";
+ for l=0 upto m-1:
+ for k=0 upto deno:
+ pointe(B[k] shifted(l*(Longueur+1cm,0)));
+ endfor;
+ endfor;
+ if (nume mod deno)<>0:
+ for k=0 upto deno:
+ pointe(B[k] shifted(m*(Longueur+1cm,0)));
+ endfor;
+ fi;
+ );
+ RetourFraction
+ enddef;
+}
+
\def\MPFractionSegmentCode{%
Longueur=\useKV[ClesFraction]{Longueur};
color ColSegment;
@@ -525,7 +1086,13 @@
\ifluatex
\mplibforcehmode
\begin{mplibcode}
+ boolean Alea;
+ Alea=\useKV[ClesFraction]{Aleatoire};
+ if Alea:
+ \MPFractionSegmentCodeAlea;
+ else:
\MPFractionSegmentCode
+ fi;
trace FractionSegment(#1,#2);
\end{mplibcode}
\else
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCRepresenterTableur.tex b/Master/texmf-dist/tex/latex/profcollege/PfCRepresenterTableur.tex
index 0e6162aa765..9b1bcaa8b1b 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCRepresenterTableur.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCRepresenterTableur.tex
@@ -1,9 +1,15 @@
%%%
% Tableur
%%%
-\setKVdefault[Tableur]{Colonnes=4,Largeur=30pt,LargeurUn=30pt,Bandeau=true,Formule={},Cellule=A1,Ligne=0,Colonne=0,PasL=1,PasC=1,Selection=false,DebutColonnes=0,DebutLignes=0,LargeurNombre=10pt}%
+\def\filedateRepTab{2024/08/21}%
+\def\fileversionRepTab{0.1a}%
+\message{-- \filedateRepTab\space v\fileversionRepTab}%
+%
+\setKVdefault[Tableur]{Colonnes=4,Largeur=30pt,LargeurUn=30pt,Bandeau=true,Formule={},Cellule=A1,Ligne=0,Colonne=0,PasL=1,PasC=1,Selection=false,DebutColonnes=0,DebutLignes=0,LargeurNombre=10pt,Apres=false,ApresBandeau=false}%
%Idee de P. Nuns
\defKV[Tableur]{Couleur=\setKV[Tableur]{Selection}}%
+\defKV[Tableur]{CodeAfter=\setKV[Tableur]{Apres}}%
+\defKV[Tableur]{CodeAfterBandeau=\setKV[Tableur]{ApresBandeau}}%
%
%Bas\'e sur un code de Christian T\'ell\'ech\'ea.
@@ -20,6 +26,9 @@
\ifremain@lines#2\\\@nil{\addtot@b&\subst@eol#2\@nil}{\addtot@b{#2\CodeAfter\xintifboolexpr{\useKV[Tableur]{Ligne}==0 || \useKV[Tableur]{Colonne}==0}{}{%
\tikz\node at (row-\fpeval{\useKV[Tableur]{Ligne}+1+\useKV[Tableur]{PasL}}-|col-\fpeval{\useKV[Tableur]{Colonne}+1+\useKV[Tableur]{PasC}}) {\tiny$\blacksquare$};%
}%
+ \ifboolKV[Tableur]{Apres}{%
+ \useKV[Tableur]{CodeAfter}%
+ }{}%
\end{NiceTabular}}}}%
\long\def\collectcp@body#1\end{\subst@eol#1\@nil\end}%
@@ -103,6 +112,10 @@
\ifboolKV[Tableur]{Bandeau}{%
\begin{NiceTabular}{p{\PfCTableurLargeur}p{10pt}p{50pt}p{\PfCLongInter}}%
\Block[draw,l]{}{\useKV[Tableur]{Cellule}}&\Block[draw]{}{\scriptsize$\blacktriangledown$}&\Block{}{$f_x$\hfill$\sum$~\scriptsize$\blacktriangledown$\hfill$=$}&\Block[draw]{}{\useKV[Tableur]{Formule}\hfill\scriptsize$\blacktriangledown$}\\
+ \CodeAfter
+ \ifboolKV[Tableur]{ApresBandeau}{%
+ \useKV[Tableur]{CodeAfterBandeau}%
+ }{}%
\end{NiceTabular}%
\nopagebreak%
\\%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCReseauxSociaux.tex b/Master/texmf-dist/tex/latex/profcollege/PfCReseauxSociaux.tex
index 996e33c0265..2ccc0748f66 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCReseauxSociaux.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCReseauxSociaux.tex
@@ -1,6 +1,10 @@
%%%
% Twitter
%%%
+\def\filedateReseaux{2024/08/04}%
+\def\fileversionReseaux{0.1}%
+\message{-- \filedateReseaux\space v\fileversionReseaux}%
+%
\setKVdefault[Twitter]{Largeur=0.95\linewidth,Auteur=Christophe,Date=\today,Url=ViveLaTeX,EchelleLogo=0.035,Logo=DrStrange,Publie=false}%
\NewDocumentEnvironment{Twitter}{o+b}{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCResoudreEquation.tex b/Master/texmf-dist/tex/latex/profcollege/PfCResoudreEquation.tex
index a5ce8ebf635..795a79e833e 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCResoudreEquation.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCResoudreEquation.tex
@@ -1,6 +1,10 @@
%%%
% Equations
%%%
+\def\filedateEquation{2024/08/04}%
+\def\fileversionEquation{0.1}%
+\message{-- \filedateEquation\space v\fileversionEquation}%
+%
\setKVdefault[ClesEquation]{Ecart=0.5,Fleches=false,FlecheDiv=false,Laurent=false,Decomposition=false,Terme=false,Composition=false,Symbole=false,ModeleBarre=false,Decimal=false,Entier=false,Lettre=x,Solution=false,LettreSol=true,Bloc=false,Simplification=false,CouleurTerme=black,CouleurCompo=black,CouleurSous=red,CouleurSymbole=orange,Verification=false,Nombre=0,Egalite=false,Produit=false,Facteurs=false,Carre=false,Exact=false,Pose=false,Equivalence=false}
\newcommand\rightcomment[4]{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCRondeInfernale.tex b/Master/texmf-dist/tex/latex/profcollege/PfCRondeInfernale.tex
index 9fc7f3446d6..26a78fcc2f6 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCRondeInfernale.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCRondeInfernale.tex
@@ -1,6 +1,10 @@
%%%
% Ronde infernale
%%%
+\def\filedateRondeI{2024/08/04}%
+\def\fileversionRondeI{0.1}%
+\message{-- \filedateRondeI\space v\fileversionRondeI}%
+%
\newcommand\TestNombrePremier[1]{%
% #1 le nombre \`a tester
\newcount\anp\newcount\bnp\newcount\cnp%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCRose.tex b/Master/texmf-dist/tex/latex/profcollege/PfCRose.tex
index d6059cdd7ec..3798a26f748 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCRose.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCRose.tex
@@ -1,6 +1,10 @@
%%%
% Rose
%%%
+\def\filedateRose{2024/08/04}%
+\def\fileversionRose{0.1}%
+\message{-- \filedateRose\space v\fileversionRose}%
+%
\setKVdefault[ClesRose]{Vide=false,Couleur=white,Produits=false,Solution=false,Rayon=2cm,Petales=7,Aide=false,FacteurMin=2,FacteurMax=10,ProduitVide=false,CaseVide=false,Polygone=false,Nom=Rose1,Creation=false,Addition=false,Melange=false,CDot=false}%
\defKV[ClesRose]{LesNombres=\setKV[ClesRose]{Creation}}%
\defKV[ClesRose]{LesProduits=\setKV[ClesRose]{Creation}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCScratch.tex b/Master/texmf-dist/tex/latex/profcollege/PfCScratch.tex
index 0315d8d3a87..778ee151749 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCScratch.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCScratch.tex
@@ -1,6 +1,10 @@
%%%%
% Scratch
%%%%
+\def\filedateScratch{2024/08/04}%
+\def\fileversionScratch{0.1}%
+\message{-- \filedateScratch\space v\fileversionScratch}%
+%
\newlength{\longbarreheight}
\setlength{\longbarreheight}{2.1ex+3pt}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCSerpent.tex b/Master/texmf-dist/tex/latex/profcollege/PfCSerpent.tex
index cd38bd90a25..e4352613d7e 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCSerpent.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCSerpent.tex
@@ -1,10 +1,14 @@
%%%
% Serpent
%%%
+\def\filedateSerpent{2024/08/04}%
+\def\fileversionSerpent{0.1}%
+\message{-- \filedateSerpent\space v\fileversionSerpent}%
+%
\newtoks\tokListeSerpentPerso{}%
\def\UpdatetoksSerpent#1\nil{\addtotok\tokListeSerpentPerso{"#1"}}%
-\setKVdefault[Serpent]{Cases=9,Case=1,Solution=false,PasQuad=7mm,ValeurMin=2,ValeurMax=10,Creation=false,Graines=false}
+\setKVdefault[Serpent]{Cases=9,Case=1,Solution=false,PasQuad=7mm,ValeurMin=2,ValeurMax=10,Creation=false,Graines=false,Direct=false,Disque=false,Spirale=false}
\defKV[Serpent]{CouleurSolution=\setKV[Serpent]{Solution}}%
\defKV[Serpent]{Perso=\setKV[Serpent]{Creation}\xdef\PfCFooCheminSerpent{#1}}%+Liste des déplacements
\defKV[Serpent]{Graine=\setKV[Serpent]{Graines}}%
@@ -19,7 +23,14 @@
\BuildSerpent{\the\tokListeSerpentPerso}%
\reademptyitems%
}{%
- \BuildSerpent{}%
+ \ifboolKV[Serpent]{Direct}{%
+ \BuildSerpentDirect{}%
+ }{\ifboolKV[Serpent]{Spirale}{%
+ %\BuildSerpentSpirale{}%
+ }{%
+ \BuildSerpent{}%
+ }%
+ }%
}%
}%
@@ -29,10 +40,11 @@
\mplibnumbersystem{double}%
\begin{mplibcode}
%
- boolean Solution,Perso,Graines;
+ boolean Solution,Perso,Graines,Disque;
Solution=\useKV[Serpent]{Solution};
Perso=\useKV[Serpent]{Creation};
Graines=\useKV[Serpent]{Graines};
+ Disque=\useKV[Serpent]{Disque};
%
if Graines:
randomseed:=\useKV[Serpent]{Graine};
@@ -210,7 +222,11 @@
fi;
fi;
for k=1 upto LongueurChemin:
+ if Disque:
+ trace (fullcircle scaled (2*PasQuad)) shifted (N[k]+PasQuad*(1,1));
+ else:
trace (unitsquare scaled (2*PasQuad)) shifted N[k];
+ fi;
endfor;
for k=1 upto LongueurChemin-1:
drawarrow (center (unitsquare scaled (2*PasQuad)) shifted N[k])--(center (unitsquare scaled (2*PasQuad)) shifted N[k+1]) cutbefore ((unitsquare scaled (2*PasQuad)) shifted N[k]) cutafter ((unitsquare scaled (2*PasQuad)) shifted N[k+1]);
@@ -363,4 +379,193 @@
\end{mplibcode}
\mplibnumbersystem{scaled}%
\fi
+}%
+
+\NewDocumentCommand\BuildSerpentDirect{m}{%
+ \ifluatex%
+ \mplibforcehmode%
+ \mplibnumbersystem{double}%
+ \begin{mplibcode}
+ %
+ boolean Solution,Graines,Disque;
+ Solution=\useKV[Serpent]{Solution};
+ Graines=\useKV[Serpent]{Graines};
+ Disque=\useKV[Serpent]{Disque};
+ %
+ if Graines:
+ randomseed:=\useKV[Serpent]{Graine};
+ fi;
+ %
+ color CoulSolution;
+ if Solution:
+ CoulSolution=\useKV[Serpent]{CouleurSolution};
+ fi;
+ %
+ numeric LongueurChemin,Depart;
+ LongueurChemin=\useKV[Serpent]{Cases};
+ ValeurMin=\useKV[Serpent]{ValeurMin};
+ ValeurMax=\useKV[Serpent]{ValeurMax};
+ CaseDepart=\useKV[Serpent]{Case};
+ Depart=ValeurMin+floor(uniformdeviate(ValeurMax-ValeurMin+1));
+ %
+ PasQuad=5mm;%\useKV[Serpent]{PasQuad};
+ %
+ pair N[];
+ N[1]:=4*PasQuad*(0,0);
+ for k=2 upto LongueurChemin:
+ N[k]=N[k-1]+4*PasQuad*(1,0);
+ endfor;
+ % Tracage
+ if CaseDepart=1:
+ label(TEX("\Large"&decimal(Depart)),N[1] shifted(PasQuad*(1,1)));
+ else:
+ if Solution:
+ label(TEX("\Large"&decimal(Depart)),N[1] shifted(PasQuad*(1,1))) withcolor CoulSolution;
+ fi;
+ fi;
+ for k=1 upto LongueurChemin:
+ if Disque:
+ trace (fullcircle scaled (2*PasQuad)) shifted (N[k]+PasQuad*(1,1));
+ else:
+ trace (unitsquare scaled (2*PasQuad)) shifted N[k];
+ fi;
+ endfor;
+ %
+ path cheminfleche[];
+ path CheminFlecheBase;
+ CheminFlecheBase=(0,2*PasQuad){dir45}..(4*PasQuad,2*PasQuad);
+ for k=1 upto LongueurChemin-1:
+ cheminfleche[k]=CheminFlecheBase shifted (N[k]+(PasQuad,0));
+ %cheminfleche[k]=(center (unitsquare scaled (2*PasQuad)) shifted N[k]){dir45}..(center (unitsquare scaled (2*PasQuad)) shifted N[k+1]) cutbefore ((unitsquare scaled (2*PasQuad)) shifted N[k]) cutafter ((unitsquare scaled (2*PasQuad)) shifted N[k+1]);
+ drawarrow cheminfleche[k];
+ endfor;
+ %%drawoptions();
+ boolean PremierChiffre;
+ PremierChiffre=true;
+ %% Test Premier
+ vardef TestPremier(expr nombre)=
+ nbdiviseur:=0;
+ nbdiv:=0;
+ for k=2 upto nombre:
+ if (nombre mod k)=0:
+ nbdiviseur:=nbdiviseur+1;
+ if k<11:
+ nbdiv:=nbdiv+1;
+ Diviseur[nbdiv]:=k;
+ fi;
+ fi;
+ endfor;
+ if nbdiviseur>1:
+ PremierChiffre:=false;
+ else:
+ PremierChiffre:=true;
+ fi;
+ enddef;
+ % Les opérations
+ numeric Chiffre[];
+ pair St[];
+ Chiffre[1]=Depart;
+ %
+ vardef EcrireSomme(expr tt)=
+ Somme:=5+ceiling(uniformdeviate(10));
+ Chiffre[tt]=Chiffre[tt-1]+Somme;
+ St[tt]=point(0.5*length cheminfleche[tt-1]) of cheminfleche[tt-1];
+ label.top(TEX("$+"&decimal(Somme)&"$"),St[tt]);
+ enddef;
+ %
+ vardef EcrireProduit(expr tt)=
+ Multiple:=1+ceiling(uniformdeviate(8));
+ Chiffre[tt]=Chiffre[tt-1]*Multiple;
+ St[tt]=point(0.5*length cheminfleche[tt-1]) of cheminfleche[tt-1];
+ label.top(TEX("$\PfCSymbolTimes"&decimal(Multiple)&"$"),St[tt]);
+ enddef;
+ %
+ vardef EcrireDifferenceCent(expr tt)=
+ Difference:=ceiling(Chiffre[tt-1]-15+uniformdeviate(10));
+ Chiffre[tt]=Chiffre[tt-1]-Difference;
+ St[tt]=point(0.5*length cheminfleche[tt-1]) of cheminfleche[tt-1];
+ label.top(TEX("$-"&decimal(Difference)&"$"),St[tt]);
+ enddef;
+ %
+ vardef EcrireDifference(expr tt)=
+ Difference:=if Chiffre[tt-1]<20:1+floor(uniformdeviate(Chiffre[tt-1]-1)) else: 5+ceiling(uniformdeviate(10)) fi;
+ Chiffre[tt]=Chiffre[tt-1]-Difference;
+ St[tt]=point(0.5*length cheminfleche[tt-1]) of cheminfleche[tt-1];
+ label.top(TEX("$-"&decimal(Difference)&"$"),St[tt]);
+ enddef;
+ %
+ vardef EcrireQuotient(expr tt)=
+ choixdiv:=ceiling(nbdiv);
+ Quotient:=Diviseur[choixdiv];
+ Chiffre[tt]=Chiffre[tt-1] div Quotient;
+ St[tt]=point(0.5*length cheminfleche[tt-1]) of cheminfleche[tt-1];
+ label.top(TEX("$\PfCSymbolDiv"&decimal(Quotient)&"$"),St[tt]);
+ enddef;
+ %
+ for k=2 upto LongueurChemin:
+ if (Chiffre[k-1]=1) or (Chiffre[k-1]=0):
+ % On additionne ou on multiplie si c'est un
+ if Chiffre[k-1]=1:
+ alea:=ceiling(uniformdeviate(2));
+ if alea=1:
+ EcrireSomme(k);
+ else:
+ EcrireProduit(k);
+ fi;
+ else:
+ EcrireSomme(k);
+ fi;
+ else:
+ TestPremier(Chiffre[k-1]);
+ if PremierChiffre:
+ if Chiffre[k-1]>100:
+ EcrireDifferenceCent(k);
+ else:
+ alea:=ceiling(uniformdeviate(3));
+ if alea=1:
+ EcrireSomme(k);
+ elseif alea=2:
+ EcrireDifference(k);
+ elseif alea=3:
+ EcrireProduit(k);
+ fi;
+ fi;
+ if k=CaseDepart:
+ label(TEX("\Large"&decimal(Chiffre[k])),N[k] shifted(PasQuad*(1,1)));
+ elseif Solution:
+ label(TEX("\Large"&decimal(Chiffre[k])),N[k] shifted(PasQuad*(1,1))) withcolor CoulSolution;
+ fi;
+ else:
+ if Chiffre[k-1]>100:
+ alea:=ceiling(uniformdeviate(2));
+ if alea=1:
+ EcrireDifferenceCent(k);
+ else:
+ EcrireQuotient(k);
+ fi;
+ else:
+ alea:=ceiling(uniformdeviate(4));
+ if alea=1:
+ EcrireSomme(k);
+ elseif alea=2:
+ EcrireDifference(k);
+ elseif alea=3:
+ EcrireProduit(k);
+ elseif alea=4:
+ EcrireQuotient(k);
+ fi;
+ fi;
+ fi;
+ fi;
+ if k=CaseDepart:
+ label(TEX("\Large"&decimal(Chiffre[k])),N[k] shifted(PasQuad*(1,1)));
+ else:
+ if Solution:
+ label(TEX("\Large"&decimal(Chiffre[k])),N[k] shifted(PasQuad*(1,1))) withcolor CoulSolution;
+ fi;
+ fi;
+ endfor;
+ \end{mplibcode}
+ \mplibnumbersystem{scaled}%
+ \fi
}% \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCShikaku.tex b/Master/texmf-dist/tex/latex/profcollege/PfCShikaku.tex
index 04084cadcae..8f6616ff3e0 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCShikaku.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCShikaku.tex
@@ -1,6 +1,10 @@
%%%
% Shikaku
%%%
+\def\filedateShikaku{2024/08/04}%
+\def\fileversionShikaku{0.1}%
+\message{-- \filedateShikaku\space v\fileversionShikaku}%
+%
\newcounter{PfCShikakuNom}
\setcounter{PfCShikakuNom}{0}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCSimplifierFraction.tex b/Master/texmf-dist/tex/latex/profcollege/PfCSimplifierFraction.tex
index 94429def365..9fb16f325df 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCSimplifierFraction.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCSimplifierFraction.tex
@@ -1,6 +1,10 @@
%%%
% Simplification
%%%
+\def\filedateSimpFraction{2024/08/13}%
+\def\fileversionSimpFraction{0.1a}%
+\message{-- \filedateSimpFraction\space v\fileversionSimpFraction}%
+%
\makeatletter%by christian Tellechea
% Calcul du PGCD de #1 et #2
\newcount\cnt@a\newcount\cnt@b\newcount\pgcd
@@ -160,7 +164,7 @@
\ifboolKV[ClesSimplification]{Debut}{%
\ensuremath{%
\whiledo{\PfCDivCom>1}{%
- \frac{\mathcolor{PfCSimpliCol}{\num{\the\PfCDivCom}}\times\num{\fpeval{\PfCNumerateurDiv/\the\PfCDivCom}}}{\mathcolor{PfCSimpliCol}{\num{\the\PfCDivCom}}\times\num{\fpeval{\PfCDenominateurDiv/\the\PfCDivCom}}}=\frac{\num{\fpeval{\PfCNumerateurDiv/\PfCDivCom}}}{\num{\fpeval{\PfCDenominateurDiv/\PfCDivCom}}}%
+ \frac{\mathcolor{PfCSimpliCol}{\num{\the\PfCDivCom}}\times\ifboolKV[ClesSimplification]{ACompleter}{\pointilles[20pt]}{\num{\fpeval{\PfCNumerateurDiv/\the\PfCDivCom}}}}{\mathcolor{PfCSimpliCol}{\num{\the\PfCDivCom}}\times\ifboolKV[ClesSimplification]{ACompleter}{\pointilles[20pt]}{\num{\fpeval{\PfCDenominateurDiv/\the\PfCDivCom}}}}=\frac{\ifboolKV[ClesSimplification]{ACompleter}{\pointilles[20pt]}{\num{\fpeval{\PfCNumerateurDiv/\PfCDivCom}}}}{\ifboolKV[ClesSimplification]{ACompleter}{\pointilles[20pt]}{\num{\fpeval{\PfCDenominateurDiv/\PfCDivCom}}}}%
\xdef\PfCNumerateurDiv{\fpeval{\PfCNumerateurDiv/\PfCDivCom}}%
\xdef\PfCDenominateurDiv{\fpeval{\PfCDenominateurDiv/\PfCDivCom}}%
\DiviseurCommun{\PfCNumerateurDiv}{\PfCDenominateurDiv}%
@@ -170,7 +174,7 @@
}{%
\ensuremath{%
\whiledo{\PfCDivCom>1}{%
- \frac{\num{\fpeval{\PfCNumerateurDiv/\the\PfCDivCom}}\times\mathcolor{PfCSimpliCol}{\num{\the\PfCDivCom}}}{\num{\fpeval{\PfCDenominateurDiv/\the\PfCDivCom}}\times\mathcolor{PfCSimpliCol}{\num{\the\PfCDivCom}}}=\frac{\num{\fpeval{\PfCNumerateurDiv/\PfCDivCom}}}{\num{\fpeval{\PfCDenominateurDiv/\PfCDivCom}}}%
+ \frac{\ifboolKV[ClesSimplification]{ACompleter}{\pointilles[20pt]}{\num{\fpeval{\PfCNumerateurDiv/\the\PfCDivCom}}}\times\mathcolor{PfCSimpliCol}{\num{\the\PfCDivCom}}}{\ifboolKV[ClesSimplification]{ACompleter}{\pointilles[20pt]}{\num{\fpeval{\PfCDenominateurDiv/\the\PfCDivCom}}}\times\mathcolor{PfCSimpliCol}{\num{\the\PfCDivCom}}}=\frac{\ifboolKV[ClesSimplification]{ACompleter}{\pointilles[20pt]}{\num{\fpeval{\PfCNumerateurDiv/\PfCDivCom}}}}{\ifboolKV[ClesSimplification]{ACompleter}{\pointilles[20pt]}{\num{\fpeval{\PfCDenominateurDiv/\PfCDivCom}}}}%
\xdef\PfCNumerateurDiv{\fpeval{\PfCNumerateurDiv/\PfCDivCom}}%
\xdef\PfCDenominateurDiv{\fpeval{\PfCDenominateurDiv/\PfCDivCom}}%
\DiviseurCommun{\PfCNumerateurDiv}{\PfCDenominateurDiv}%
@@ -180,7 +184,7 @@
}%
}%
-\setKVdefault[ClesSimplification]{Details=false,All=false,Longue=false,Fleches=false,Contraire=0,Couleur=black,Debut=false,Impose=false,Decomposition=false,DecompositionSeule=false}%
+\setKVdefault[ClesSimplification]{Details=false,All=false,Longue=false,Fleches=false,Contraire=0,Couleur=black,Debut=false,Impose=false,Decomposition=false,DecompositionSeule=false,ACompleter=false}%
\defKV[ClesSimplification]{Nombre=\setKV[ClesSimplification]{Impose}}%
\newcounter{NbFrac}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCSolides.tex b/Master/texmf-dist/tex/latex/profcollege/PfCSolides.tex
index 9da7bce2594..8ed8899a371 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCSolides.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCSolides.tex
@@ -1,11 +1,127 @@
%%%
% Solide et sections
%%%
-\setKVdefault[ClesSolides]{Nom=cube,Aretes,Sommets,Pointilles,Largeur=1.5,Hauteur=1,Profondeur=0.75,ListeSommets={A,B,C,D,E,F,G,H},Rho=1500,Phi=30,Theta=20,Distance=50,Code=false,Couleur=white,Anglex=0,RayonCone=1,HauteurCone=2,HauteurPyramide=2,SommetsPyramide=5,Reguliere=false,DecalageSommet={(0,0,0)},RayonCylindre=1,HauteurCylindre=2,RayonSphere=1,AutoLabel=true,Sections=false,CoefSection=0.3,Axes=false,PointsSection={M,N,O,P},RemplisSection=false,ObjetSection={0.5,E,H,0.25,F,G,G,B}}%
+\def\filedateSolides{2024/08/20}%
+\def\fileversionSolides{0.1a}%
+\message{-- \filedateSolides\space v\fileversionSolides}%
+%
+\setKVdefault[ClesSolides]{Nom=cube,Aretes,Sommets,Pointilles,Largeur=1.5,Hauteur=1,Profondeur=0.75,ListeSommets={A,B,C,D,E,F,G,H},Rho=1500,Phi=30,Theta=20,Distance=50,Code=false,Couleur=white,Anglex=0,Arete=1,RayonCone=1,HauteurCone=2,HauteurPrisme=2,SommetsPrisme=6,HauteurPyramide=2,SommetsPyramide=5,Reguliere=false,DecalageSommet={(0,0,0)},RayonCylindre=1,HauteurCylindre=2,RayonSphere=1,AutoLabel=true,Sections=false,CoefSection=0.3,Axes=false,PointsSection={M,N,O,P},RemplisSection=false,ObjetSection={0.5,E,H,0.25,F,G,G,B}}%
\defKV[ClesSolides]{Traces=\setKV[ClesSolides]{Code}}%
\defKV[ClesSolides]{Section=\setKV[ClesSolides]{Sections}}%
\defKV[ClesSolides]{CouleurSection=\setKV[ClesSolides]{RemplisSection}}%
+\newcommand\MPSolidePrisme[4]{%
+ \ifluatex
+ \mplibnumbersystem{double}
+ \mplibforcehmode
+ \begin{mplibcode}
+ input PfCSolid;
+
+ boolean Pointilles,TraceArete,NommeSommets,Code,AutoLabel,Sections,RemplisSection;
+ AutoLabel:=\useKV[ClesSolides]{AutoLabel};
+ Pointilles=\useKV[ClesSolides]{Pointilles};
+ TraceArete=\useKV[ClesSolides]{Aretes};
+ NommeSommets=\useKV[ClesSolides]{Sommets};
+ Code=\useKV[ClesSolides]{Code};
+ Sections:=\useKV[ClesSolides]{Sections};
+ RemplisSection=\useKV[ClesSolides]{RemplisSection};
+ if RemplisSection:color CouleurSection;CouleurSection=\useKV[ClesSolides]{CouleurSection};fi;
+
+ color PfCOutColor;
+ PfCOutColor=Cornsilk;%\useKV[ClesSolides]{Couleur};
+
+ string Section;
+ if Sections:Section=\useKV[ClesSolides]{Section};fi;
+
+ %Initialisation
+ PfCRho=\useKV[ClesSolides]{Rho};
+ PfCPhi=\useKV[ClesSolides]{Phi};
+ PfCTheta=\useKV[ClesSolides]{Theta};
+ PfCDistance=\useKV[ClesSolides]{Distance};
+ anglerotationx=\useKV[ClesSolides]{Anglex};
+ hauteurprisme=\useKV[ClesSolides]{HauteurPrisme};
+ nombresommets=\useKV[ClesSolides]{SommetsPrisme};
+ Initialisation(PfCRho,PfCPhi,PfCTheta,PfCDistance);
+ typetrace:="3D";
+ typerepre:="persp";
+ eclairage:=false;
+ incolor:=white;
+ outcolor:=white;
+ if Pointilles=false:
+ pointilles:="non";
+ fi;
+
+ Ferme1:=true;
+
+ color A,B,C,D,E,F,G,H;
+ color Sommet[];
+
+ NbS:=nombresommets;
+
+ color TS[];
+
+ ecartangle=360/(NbS/2);
+ for k=1 upto (NbS/2):
+ repereangle:=(k-2)*ecartangle+(ecartangle*0.25+uniformdeviate(floor(ecartangle/2)));
+ TS[k]:=(cosd(repereangle),-sind(repereangle),0);
+ endfor;
+ TS[NbS/2+1]:=TS[1];
+
+ for k=1 upto (NbS/2):
+ TS[NbS/2+1+k]:=TS[k]+(0,0,hauteurprisme);
+ endfor;
+ TS[NbS+2]:=TS[NbS/2+2];
+
+ angx:=anglerotationx;
+ for k=1 upto (NbS+2):
+ TS[k]:=RotXYZ(TS[k]);
+ endfor;
+ angx:=0;
+
+ ObjetNew1(%
+ TS1, for k=2 upto (NbS+1):TS[k], endfor TS[NbS+2]
+ )(%
+ NbS/2, for p_=1 upto NbS/2:p_, endfor
+ NbS/2, for p_=NbS/2+1 downto NbS+2:p_, endfor
+ for p=1 upto NbS/2:
+ 4,p,p+1,NbS/2+1+p+1,NbS/2+1+p,%
+ endfor
+ );
+ %AffichageObjet1;
+
+ NF:=(NbS/2+2);
+ Fc[100*(NbS/2+1)]:=NbS/2;
+ for k=1 upto NbS/2:
+ Fc[100*(NbS/2+1)+k]:=k;
+ endfor;
+ Fc[100*(NbS/2+2)]:=NbS/2;
+ for k=1 upto NbS/2:
+ Fc[100*(NbS/2+2)+k]:=NbS+2-k;
+ endfor;
+ for l=1 upto NbS/2:
+ Fc[l*100]:=4;
+ %for k=1 upto 4:
+ Fc[l*100+1]:=l;Fc[l*100+4]:=l+1;Fc[l*100+3]:=NbS/2+1+l+1;Fc[l*100+2]:=NbS/2+1+l;
+ %Fc[101]:=1;Fc[102]:=2;Fc[103]:=6;Fc[104]:=5;
+ %endfor;
+ endfor;
+ DefinirSommets(#1);
+ DessineObjet;
+% picture Depart;
+% Depart=currentpicture;
+% currentpicture:=nullpicture;
+% for k=1 upto 8:
+% dotlabel.top(decimal(k),Projette(TS[k]));
+% endfor;
+ u:=1cm;
+ if Code:
+ \useKV[ClesSolides]{Traces};
+ fi;
+ \end{mplibcode}
+ \mplibnumbersystem{scaled}
+ \fi
+}
+
\newcommand\MPSolideCylindre[3]{%
\ifluatex
\mplibnumbersystem{double}
@@ -380,7 +496,6 @@
if Code:
\useKV[ClesSolides]{Traces};
fi;
-
\end{mplibcode}
\mplibnumbersystem{scaled}
\fi
@@ -622,7 +737,7 @@
% trace polygone(MSection1,MSection2,MSection3,MSection4);
color dcer,ccer;
% 1er cote -> ok
- DotLabel("",RetiensDefSection[4]);
+ %DotLabel("",RetiensDefSection[4]);
dcer:=Oeil-RetiensDefSection[4];
ccer:=Normal(RetiensDefSection[4],RetiensDefSection[2],RetiensDefSection[1]);
draw chemin(MSection1,MSection2) if (ProduitScalaire(dcer,ccer)<0):dashed evenly fi;
@@ -927,7 +1042,7 @@
\foreachitem\compteur\in\ListeNomSommet{\expandafter\UpdatetoksSolide\compteur\nil}%\the\toksolidelistesommets%
\IfStrEqCase{\useKV[ClesSolides]{Nom}}{%
{cube}{%
- \MPSolidePave{\useKV[ClesSolides]{ListeSommets}}{\the\toksolidelistesommets}{1,1,1}{\useKV[ClesSolides]{PointsSection}}{\useKV[ClesSolides]{ObjetSection}}%
+ \MPSolidePave{\useKV[ClesSolides]{ListeSommets}}{\the\toksolidelistesommets}{\useKV[ClesSolides]{Arete},\useKV[ClesSolides]{Arete},\useKV[ClesSolides]{Arete}}{\useKV[ClesSolides]{PointsSection}}{\useKV[ClesSolides]{ObjetSection}}%
}%
{pave}{%
\MPSolidePave{\useKV[ClesSolides]{ListeSommets}}{\the\toksolidelistesommets}{\useKV[ClesSolides]{Profondeur},\useKV[ClesSolides]{Largeur},\useKV[ClesSolides]{Hauteur}}{\useKV[ClesSolides]{PointsSection}}{\useKV[ClesSolides]{ObjetSection}}%
@@ -935,6 +1050,9 @@
{cone}{%
\MPSolideCone{\useKV[ClesSolides]{ListeSommets}}{\the\toksolidelistesommets}{\useKV[ClesSolides]{PointsSection}}%
}%
+ {prisme}{%
+ \MPSolidePrisme{\useKV[ClesSolides]{ListeSommets}}{\the\toksolidelistesommets}{}{\useKV[ClesSolides]{PointsSection}}%
+ }%
{pyramide}{%
\MPSolidePyramide{\useKV[ClesSolides]{ListeSommets}}{\the\toksolidelistesommets}{\useKV[ClesSolides]{DecalageSommet}}{\useKV[ClesSolides]{PointsSection}}%
}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCSommeAngles.tex b/Master/texmf-dist/tex/latex/profcollege/PfCSommeAngles.tex
index df62edfbce7..f0a1e12cc9b 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCSommeAngles.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCSommeAngles.tex
@@ -1,6 +1,10 @@
%%%
% Somme des angles
%%%
+\def\filedateSommeAngles{2024/08/04}%
+\def\fileversionSommeAngles{0.1}%
+\message{-- \filedateSommeAngles\space v\fileversionSommeAngles}%
+%
\setKVdefault[ClesSommeAngle]{Detail=true,Isocele=false,Rectangle=false,Figure=false,FigureSeule=false,Angle=0,Perso=false,Echelle=1cm}%
\def\MPFigureSommeAngle#1#2#3#4#5{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCSquaro.tex b/Master/texmf-dist/tex/latex/profcollege/PfCSquaro.tex
index 9de4a7afdf9..7afe0e55fb0 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCSquaro.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCSquaro.tex
@@ -1,10 +1,21 @@
%%%
% Squaro
%%%
-\setKVdefault[Squaro]{Solution=false,Longueur=8,Largeur=8,Echelle=8mm,Nom=Jeu1,Graines=false}
+\def\filedateSquarO{2024/08/04}%
+\def\fileversionSquarO{0.1}%
+\message{-- \filedateSquarO\space v\fileversionSquarO}%
+%
+\newtoks\tokPfCSquaro%
+\def\UpdatetoksSquaro#1\nil{\addtotok\tokPfCSquaro{#1,}}%
+
+\setKVdefault[Squaro]{Solution=false,Longueur=8,Largeur=8,Echelle=8mm,Nom=Jeu1,Graines=false,Persos=false}
\defKV[Squaro]{Graine=\setKV[Squaro]{Graines}}%
+\defKV[Squaro]{Perso=\setKV[Squaro]{Persos}\setsepchar{,}\ignoreemptyitems\readlist*\ListeSquaroPerso{#1}\reademptyitems%
+ \foreachitem\compteur\in\ListeSquaroPerso{\expandafter\UpdatetoksSquaro\compteur\nil}%
+}%
\NewDocumentCommand\SquarO{o}{%
+ \tokPfCSquaro{}%
\useKVdefault[Squaro]%
\setKV[Squaro]{#1}%
\BuildSquaro%
@@ -14,9 +25,10 @@
numeric Longueur,Largeur;
Longueur=\useKV[Squaro]{Longueur};
Largeur=\useKV[Squaro]{Largeur};
- boolean Solution,Graines;
+ boolean Solution,Graines,Persos;
Solution=\useKV[Squaro]{Solution};
Graines=\useKV[Squaro]{Graines};
+ Persos=\useKV[Squaro]{Persos};
if Graines:
randomseed:=\useKV[Squaro]{Graine};
fi;
@@ -26,13 +38,35 @@
p:=0;
pair A[];%centre des carrés.
boolean Allume[][];
-}
+ %
+ if Persos:
+ n:=0;
+ for p_=\the\tokPfCSquaro:
+ n:=n+1;
+ ligne:=(n-1) div (Largeur+2);
+ colonne:=(n-1) mod (Longueur+1);
+ Allume[ligne][colonne]=if p_=1:true else:false fi;
+ endfor;
+ else:
+ for k=0 upto Largeur:
+ for l=0 upto Longueur:
+ m:=uniformdeviate(1);
+ if m<0.5:
+ Allume[k][l]=true;
+ else:
+ Allume[k][l]=false;
+ fi;
+ endfor;
+ endfor;
+ fi;
+}%
\NewDocumentCommand\BuildSquaro{}{%
\ifluatex
\mplibforcehmode
\begin{mplibcode}
\BuildSquarobase
+ %
for k=0 upto Longueur-1:
for l=0 upto Largeur-1:
p:=p+1;
@@ -40,21 +74,18 @@
trace (unitsquare scaled u) shifted A[p];
endfor;
endfor;
-
+ %
for k=0 upto Largeur:
for l=0 upto Longueur:
- m:=uniformdeviate(1);
- if m<0.5:
- Allume[k][l]=true;
+ if Allume[k][l]:
fill cercles(u*(l,-k+1),1mm) if Solution=false:withcolor white fi;
else:
- Allume[k][l]=false;
fill cercles(u*(l,-k+1),1mm) withcolor white;
fi;
trace cercles(u*(l,-k+1),1mm);
endfor;
endfor;
-
+ %
for k=0 upto Largeur-1:
for l=0 upto Longueur-1:
Retiens:=0;
@@ -67,29 +98,28 @@
endfor;
\end{mplibcode}
\else
- \begin{mpost}[mpsettings={\BuildSquarobase}]
- for k=0 upto Longueur-1:
+ \begin{mpost}[mpsettings={\BuildSquarobase}]
+ %
+ %
+ for k=0 upto Longueur-1:
for l=0 upto Largeur-1:
p:=p+1;
A[p]=u*(k,-l);
trace (unitsquare scaled u) shifted A[p];
- endfor;
- endfor;
-
- for k=0 upto Largeur:
- for l=0 upto Longueur:
- m:=uniformdeviate(1);
- if m<0.5:
- Allume[k][l]=true;
+ endfor;
+ endfor;
+ %
+ for k=0 upto Largeur:
+ for l=0 upto Longueur:
+ if Allume[k][l]:
fill cercles(u*(l,-k+1),1mm) if Solution=false:withcolor white fi;
else:
- Allume[k][l]=false;
fill cercles(u*(l,-k+1),1mm) withcolor white;
fi;
trace cercles(u*(l,-k+1),1mm);
- endfor;
- endfor;
-
+ endfor;
+ endfor;
+ %
for k=0 upto Largeur-1:
for l=0 upto Longueur-1:
Retiens:=0;
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCStatistiques.tex b/Master/texmf-dist/tex/latex/profcollege/PfCStatistiques.tex
index 98566be426a..5d7b786d8e4 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCStatistiques.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCStatistiques.tex
@@ -1,6 +1,10 @@
%%%
% Statistiques
%%%
+\def\filedateStat{2024/08/04}%
+\def\fileversionStat{0.1}%
+\message{-- \filedateStat\space v\fileversionStat}%
+%
\newcommand\NbDonnees{}%
\newcommand\SommeDonnees{}%
\newcommand\EffectifTotal{}%
@@ -18,7 +22,7 @@ Tableau=false,Stretch=1,Frequence=false,EffectifTotal=false,%
Etendue=false,Moyenne=false,SET=false,ValeurExacte=false,MoyenneA,Somme,Mediane=false,DetailsMediane=false,UneMediane=false,QuartileUn=false,QuartileTrois=false,Total=false,Concret=false,%
Largeur=1cm,Precision=2,PrecisionF=0,Donnee=Valeurs,Effectif=Effectif,Grille=false,Origine=0,Angle=false,SemiAngle=false,Qualitatif=false,Classes=false,TableauVide=false,ECC=false,Coupure=10,CouleurTab=gray!15,Graphique=false,Batons=true,Centre=false,CentreVide=false,Crochets=false,%
% Pour les diags batons
-EpaisseurBatons=1,ListeCouleursB={a},Lecture=false,LectureFine=false,AideLecture=false,Reponses=false,DonneesSup=false,AbscisseRotation=false,Tiret=false,AngleRotationAbscisse=0,Pasx=1,Pasy=1,Unitex=0.5,Unitey=0.5,Depart=0,CouleurDefaut=black,Date=false,GrandNombrey=false,GrandNombrex=false,PasGrillex=1,PasGrilley=1,%
+EpaisseurBatons=1,ListeCouleursB={a},Lecture=false,LectureFine=false,AideLecture=false,Reponses=false,DonneesSup=false,AbscisseRotation=false,Tiret=false,Pasx=1,Pasy=1,Unitex=0.5,Unitey=0.5,Depart=0,CouleurDefaut=black,Date=false,GrandNombrey=false,GrandNombrex=false,PasGrillex=1,PasGrilley=1,%
% Pour les diags circulaires
Rayon=3cm,AffichageAngle=false,AffichageDonnee=false,ListeCouleurs={white},Hachures=false,ListeHachures={60},LectureInverse=false,EcartHachures=0.25,EpaisseurHachures=1,Legende,LegendeVide=false,ACompleter=false,DebutAngle=0,%on utilisera également la clé CouleurDefaut
%Pour les représentations
@@ -466,7 +470,6 @@ ModeleCouleur=5%
unitex:=\useKV[ClesStat]{Unitex}*cm;
unitey:=\useKV[ClesStat]{Unitey}*cm;
xpartorigine:=\useKV[ClesStat]{Origine};
- AngleRotation=\useKV[ClesStat]{AngleRotationAbscisse};
boolean Rotation,Lecture,LectureFine,AideLecture,DonneesSup,Reponses,Qualitatif,Tiret,LegendeVide,Retour,GrandNombrex,GrandNombrey,Date,Grille;
GrandNombrex=\useKV[ClesStat]{GrandNombrex};
GrandNombrey=\useKV[ClesStat]{GrandNombrey};
@@ -478,6 +481,11 @@ ModeleCouleur=5%
fi;
Date:=\useKV[ClesStat]{Date};
Rotation=\useKV[ClesStat]{AbscisseRotation};
+ if Rotation:
+ AngleRotation=\useKV[ClesStat]{AngleRotationAbscisse};
+ else:
+ AngleRotation=0;
+ fi;
Lecture:=\useKV[ClesStat]{Lecture};
LectureFine:=\useKV[ClesStat]{LectureFine};
AideLecture:=\useKV[ClesStat]{AideLecture};
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCTableauDoubleEntree.tex b/Master/texmf-dist/tex/latex/profcollege/PfCTableauDoubleEntree.tex
new file mode 100644
index 00000000000..f13fe2fad5b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCTableauDoubleEntree.tex
@@ -0,0 +1,62 @@
+%%%
+% Tableau Double Entree
+%%%
+\def\filedateTDE{2024/08/15}%
+\def\fileversionTDE{0.1a}%
+\message{-- \filedateTDE\space v\fileversionTDE}%
+
+\setKVdefault[TDE]{Colonnes=5,Lignes=4,Legende={},LegendesH={B,C,D,Total},LegendesV={1,2,Total},Couleur=Cornsilk,Vide=false,Totaux,Questions=false,Stretch=1}%
+
+\NewDocumentCommand\TableauDoubleEntree{om}{%
+ \useKVdefault[TDE]%
+ \setKV[TDE]{#1}%
+ \xdef\PfCFooH{\useKV[TDE]{LegendesH}}%
+ \xdef\PfCFooV{\useKV[TDE]{LegendesV}}%
+ \setsepchar{,}\reademptyitems%
+ \readlist*\ListeH{\PfCFooH}%
+ \readlist*\ListeV{\PfCFooV}%
+ \readlist*\ListeDonnees{#2}%
+ \ifboolKV[TDE]{Totaux}{}{%
+ % Vider les lignes du total
+ \xintFor* ##1 in{\xintSeq{1}{\fpeval{\ListeVlen-1}}}\do{%
+ \xintFor* ##2 in{\xintSeq{1}{\fpeval{\ListeHlen-0}}}\do{%
+ \modulo{\fpeval{##2+(##1-1)*(\ListeHlen-0)}}{\fpeval{\ListeHlen-0}}%
+ \ifnum\remainder=0\relax%
+ \xdef\ListeDonneesSansTotauxAv{\ListeDonneesSansTotauxAv,}%
+ \else%
+ \ifnum\fpeval{##2+(##1-1)*(\ListeHlen-0)}=1\relax%
+ \xdef\ListeDonneesSansTotauxAv{\ListeDonnees[\fpeval{##2+(##1-1)*(\ListeHlen-0)}]}%
+ \else%
+ \xdef\ListeDonneesSansTotauxAv{\ListeDonneesSansTotauxAv,\ListeDonnees[\fpeval{##2+(##1-1)*(\ListeHlen-0)}]}%
+ \fi%
+ \fi%
+ }%
+ }%
+ % On ajoute la dernière ligne qui est vide
+ \xintFor* ##2 in{\xintSeq{1}{\fpeval{\ListeHlen-0}}}\do{%
+ \xdef\ListeDonneesSansTotauxAv{\ListeDonneesSansTotauxAv,}%
+ }%
+ % On relit la liste des données.
+ \setsepchar{,}\reademptyitems%
+ \readlist*\ListeDonnees{\ListeDonneesSansTotauxAv}%
+ \reademptyitems%
+ }%
+ %
+ % Pour vider le tableau, on utilise la clé <Vide>.
+ % On choisit quelques éléments ^^ à écrire
+ \ifboolKV[TDE]{Questions}{%
+ %en réflexion (voir v5)
+ }{}%
+ %
+ \colorlet{PfCColorTDE}{\useKV[TDE]{Couleur}}%
+ \renewcommand{\arraystretch}{\useKV[TDE]{Stretch}}%
+ \begin{tabular}{|*{\fpeval{\ListeHlen+1}}{c|}}
+ \hline
+ \cellcolor{PfCColorTDE}\useKV[TDE]{Legende}\xintFor*##1 in{\xintSeq{1}{\ListeHlen}}\do{\uppercase{&}\cellcolor{PfCColorTDE}\ListeH[##1]}\\
+ \hline
+ \xintFor* ##1 in{\xintSeq{1}{\ListeVlen}}\do{
+ \cellcolor{PfCColorTDE}\ListeV[##1]\xintFor*##2 in{\xintSeq{1}{\ListeHlen}}\do{\uppercase{&}\ifboolKV[TDE]{Vide}{}{\ListeDonnees[\fpeval{(##2-0)+(##1-1)*(\ListeHlen-0)}]}}\\
+ \hline
+ }
+ \end{tabular}
+}% \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCTableauxUnites.tex b/Master/texmf-dist/tex/latex/profcollege/PfCTableauxUnites.tex
index 75270180d37..933fcb80a2b 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCTableauxUnites.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCTableauxUnites.tex
@@ -1,7 +1,11 @@
%%%
% Tableaux d'unit\'es
%%%
-\setKVdefault[ClesTableaux]{Virgule=true,Incline=false,Entiers=false,Decimaux=false,Milliards=false,Millions=false,Micro=false,Nano=false,Partie=false,CouleurG=gray!15,CouleurM=gray!15,Couleurm=gray!15,Couleuru=gray!15,Couleurd=gray!15,Classes=false,Nombres=false,Puissances=false,NbLignes=2,Metre=false,Are=false,Capacite=false,Carre=false,CarreA=false,Cube=false,Litre=false,Gramme=false,Fleches=false,FlechesB=false,FlechesH=false,Colonnes=false,Prefixes=false,Escalier=false,CubeA=false,Taille=5,Largeur=4.75em,Nom=PfCTableau,CodeAfter={},PuissancesSeules=false,Colonne=-1,Octet=false,CouleurGN=white,CadreGN=black,Tabcolsep=0.275\tabcolsep,Exterieur=false,Condense=false}%
+\def\filedateTableaux{2024/08/15}%
+\def\fileversionTableaux{0.1a}%
+\message{-- \filedateTableaux\space v\fileversionTableaux}%
+\message{`PfCTableauxUnites.tex' v\fileversionTableaux\space (\filedateTableaux)}
+\setKVdefault[ClesTableaux]{Virgule=true,Incline=false,Entiers=false,Decimaux=false,Milliards=false,Millions=false,Micro=false,Nano=false,Partie=false,CouleurG=gray!15,CouleurM=gray!15,Couleurm=gray!15,Couleuru=gray!15,Couleurd=gray!15,Classes=false,Nombres=false,Puissances=false,NbLignes=2,Metre=false,Are=false,Capacite=false,Carre=false,CarreA=false,Cube=false,Litre=false,Gramme=false,Fleches=false,FlechesB=false,FlechesH=false,Colonnes=false,Prefixes=false,Escalier=false,CubeA=false,Taille=5,Largeur=4.75em,Nom=PfCTableau,CodeAfter={},PuissancesSeules=false,Colonne=-1,Octet=false,CouleurGN=white,CadreGN=black,Tabcolsep=0.275\tabcolsep,Exterieur=false,Condense=false,DoubleEntree=false}%
\defKV[ClesTableaux]{ColonnesSup=\setKV[ClesTableaux]{Exterieur}}%
%
\newcommand\PfCTBstrut{\rule[-1.2ex]{0pt}{3.8ex}}% Top and Bottom strut
@@ -52,7 +56,10 @@
\xdef\PfCCoefConversion{10}%
}{}%
\PfCTableauIncline%
- }{%
+ }{%Fin Escalier
+ \ifboolKV[ClesTableaux]{DoubleEntree}{%
+ \TableauDoubleEntree[#1]{#2}%
+ }{}%
%
%%% Clé Octet
%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCTablesOperations.tex b/Master/texmf-dist/tex/latex/profcollege/PfCTablesOperations.tex
index 3399cbecff9..df109d964a8 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCTablesOperations.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCTablesOperations.tex
@@ -1,6 +1,10 @@
%%%
% Tables Addition-Multiplication
%%%
+\def\filedateTableOp{2024/08/04}%
+\def\fileversionTableOp{0.1}%
+\message{-- \filedateTableOp\space v\fileversionTableOp}%
+%
\setKVdefault[Tables]{Addition=false,Soustraction=false,Multiplication,Seul=false,Debut=0,Fin=10,Couleur=white,Inverse=false}
% pour m\'emoire
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCTectonic.tex b/Master/texmf-dist/tex/latex/profcollege/PfCTectonic.tex
index df859b0453b..3026bf9be0a 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCTectonic.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCTectonic.tex
@@ -1,6 +1,10 @@
%%%
% Tectonic
%%%
+\def\filedateTectonic{2024/08/04}%
+\def\fileversionTectonic{0.1}%
+\message{-- \filedateTectonic\space v\fileversionTectonic}%
+%
\setKVdefault[ClesTectonic]{CouleurCase=LightGray,TLargeur=5,THauteur=5,Solution=false,Largeur=25pt,CouleurSolution=black,Tailles=false,Aide=false}%
\defKV[ClesTectonic]{Taille=\setKV[ClesTectonic]{Tailles}}%
\defKV[ClesTectonic]{ListeNombres=\setKV[ClesTectonic]{Aide}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCThales.tex b/Master/texmf-dist/tex/latex/profcollege/PfCThales.tex
index d4adb5be013..140bde3f234 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCThales.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCThales.tex
@@ -1,6 +1,10 @@
%%%
% Thales
%%%
+\def\filedateThales{2024/08/04}%
+\def\fileversionThales{0.1}%
+\message{-- \filedateThales\space v\fileversionThales}%
+%
\newcount\ppcm%
\newcommand\PPCM[2]{%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCTicketCaisse.tex b/Master/texmf-dist/tex/latex/profcollege/PfCTicketCaisse.tex
index 1c460e36939..2286b083329 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCTicketCaisse.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCTicketCaisse.tex
@@ -1,8 +1,16 @@
%%%
% Ticket de caisse
%%%
+\def\filedateTicketCaisse{2024/08/04}%
+\def\fileversionTicketCaisse{0.1}%
+\message{-- \filedateTicketCaisse\space v\fileversionTicketCaisse}%
+%
\newcounter{PfCNbInsulte}%
+\newcounter{PfCChoixService}%
\setcounter{PfCNbInsulte}{0}%
+\setcounter{PfCChoixService}{0}%
+%
+\newlength\PfCTicketLarg
\NewDocumentCommand\PfCPrixInsulte{sm}{%
\setsepchar{,}\ignoreemptyitems%
@@ -67,15 +75,17 @@
}%
\makeatother
-\setKVdefault[TicketCaisse]{Largeur=222,Especes=50,Enseigne=Au comptoir des maths,DateAchat=\today,HeureAchat=15:13:34,Taches=false,Rendu,Total,UK=false,US=false,CFA=false,CFP=false,CHF=false,Euro=false,Solution=false}
+\setKVdefault[TicketCaisse]{Largeur=222pt,Especes=50,Simple=false,Taxes=false,SansRendu=false,Enseigne=Au comptoir des maths,DateAchat=\today,HeureAchat=15:13:34,Taches=false,Rendu,Total,SousTotal=false,UK=false,US=false,CFA=false,CFP=false,CHF=false,Euro=false,Solution=false}
\defKV[TicketCaisse]{Couleur=\colorlet{PfCTicketCouleurSolution}{#1}\setKV[TicketCaisse]{Solution}}
+\defKV[TicketCaisse]{Service=\setKV[TicketCaisse]{Taxes}}
-\NewDocumentCommand\TicketCaisse{om}{%
+\NewDocumentCommand\TicketCaisse{som}{%
\setcounter{PfCNbInsulte}{0}%
\useKVdefault[TicketCaisse]%
- \setKV[TicketCaisse]{#1}%
+ \setKV[TicketCaisse]{#2}%
+ \setlength{\PfCTicketLarg}{\useKV[TicketCaisse]{Largeur}}%
\setsepchar[*]{,*/}%
- \readlist*\ListeAchats{#2}%
+ \readlist*\ListeAchats{#3}%
% On fait trois listes pour les retenir
% Liste Quantités
\xdef\PfCFooQuantites{}%
@@ -122,9 +132,123 @@
\xintFor* ##1 in{\xintSeq{1}{\ListeAchatslen}}\do{%
\xdef\PfCTCTotal{\fpeval{\PfCTCTotal+\ListeQuantites[##1]*\ListePUnitaires[##1]}}%
}%
-% Le coût total est \PfCTCTotal\\
+ \ifboolKV[TicketCaisse]{Taxes}{%
+ % On décompose la clé
+ \StrChar{\useKV[TicketCaisse]{Service}}{1}[\MyLetter]%
+ % Si le premier caractère est !, il faut regarder si le deuxième caractère est une étoile
+ \IfStrEq{\MyLetter}{!}{%
+ \StrChar{\useKV[TicketCaisse]{Service}}{2}[\MyLettera]%
+ \IfStrEq{\MyLettera}{*}{%
+ \StrGobbleLeft{\useKV[TicketCaisse]{Service}}{2}[\PfCTCValeurService]
+ \setcounter{PfCChoixService}{3}%
+ }{%
+ \StrGobbleLeft{\useKV[TicketCaisse]{Service}}{1}[\PfCTCValeurService]
+ \setcounter{PfCChoixService}{1}%
+ }%
+ }{%il faut regarder si c'est une étoile
+ \StrChar{\useKV[TicketCaisse]{Service}}{1}[\MyLettera]%
+ \IfStrEq{\MyLettera}{*}{%
+ \StrGobbleLeft{\useKV[TicketCaisse]{Service}}{1}[\PfCTCValeurService]
+ \setcounter{PfCChoixService}{2}
+ }{%
+ \xdef\PfCTCValeurService{\useKV[TicketCaisse]{Service}}%
+ \setcounter{PfCChoixService}{0}
+ }%
+ }%
+ % On fait les calculs associés à la clé.
+ \xdef\PfCTCSousTotal{\PfCTCTotal}%
+ \xdef\PfCTCService{\fpeval{\PfCTCValeurService*\PfCTCSousTotal/100}}%
+ \xdef\PfCTCTotal{\fpeval{\PfCTCSousTotal+\PfCTCService}}%
+ }{}%
+ % Le coût total est \PfCTCTotal\\
+ \IfBooleanTF{#1}{%
+ \ttfamily
+ \begin{tabular}{|m{0.48\PfCTicketLarg}m{0.13\PfCTicketLarg}m{0.165\PfCTicketLarg}m{0.225\PfCTicketLarg}|}%
+ \hline
+ &&&\\%
+ \multicolumn{4}{|c|}{\Large\bfseries\useKV[TicketCaisse]{Enseigne}}\\%
+ &&&\\%
+ \hline%
+ &&&\\%
+ \footnotesize\sc Description&\centering \footnotesize\sc Qte.&\centering\footnotesize\sc P.u.&\hfill\footnotesize\sc Prix \ifboolKV[TicketCaisse]{Taxes}{H.T.}{Net}\\%
+ &&&\\%
+ \xintFor* ##1 in{\xintSeq{1}{\ListeAchatslen}}\do{%
+ \ListeElements[##1]&%
+ \centering
+ \footnotesize%
+ \StrChar{\ListeAchats[##1,1]}{1}[\MyLetter]%
+ \IfStrEq{\MyLetter}{!}{\PfCPrixInsulte*{\ListeQuantites[##1]}}{\xintifboolexpr{\fpeval{\ListeQuantites[##1]}==1}{}{\num{\ListeQuantites[##1]}}}%
+ &
+ \hfill
+ \footnotesize
+ %Savoir si le nombre d'articles est affiché
+ \StrChar{\ListeAchats[##1,1]}{1}[\MyLetter]%
+ % Si le nombre d'articles n'est pas affiché, il faut impérativement afficher le prix unitaire
+ \IfStrEq{\MyLetter}{!}{%
+ \PrixTicket{\ListePUnitaires[##1]}%
+ }{%
+ % On regarde si on affiche le prix unitaire
+ \StrChar{\ListeAchats[##1,3]}{1}[\MyLettera]%
+ % Si c'est un !, on affiche pas
+ % Sinon, on affiche
+ \IfStrEq{\MyLettera}{!}{%
+ \PfCPrixInsulte*{\PrixTicket{\ListePUnitaires[##1]}}%
+ }{%
+ \xintifboolexpr{\fpeval{\ListeQuantites[##1]}==1}{}{%
+ \PrixTicket{\ListePUnitaires[##1]}%
+ }%
+ }%
+ }%
+ &\hfill
+ \StrChar{\ListeAchats[##1,3]}{1}[\MyLetter]%
+ % Si le premier caractère est !, il faut regarder si le deuxième caractère est une étoile
+ \IfStrEq{\MyLetter}{!}{%
+ \StrChar{\ListeAchats[##1,3]}{2}[\MyLettera]%
+ \IfStrEq{\MyLettera}{*}{%
+ \PfCPrixInsulte*{\PrixTicket{\fpeval{\ListeQuantites[##1]*\ListePUnitaires[##1]}}}%
+ }{%
+ \PrixTicket{\fpeval{\ListeQuantites[##1]*\ListePUnitaires[##1]}}%
+ }%
+ }{%il faut regarder si c'est une étoile
+ \StrChar{\ListeAchats[##1,3]}{1}[\MyLettera]%
+ \IfStrEq{\MyLettera}{*}{%
+ \PfCPrixInsulte{\PrixTicket{\fpeval{\ListeQuantites[##1]*\ListePUnitaires[##1]}}}%
+ }{%
+ \PrixTicket{\fpeval{\ListeQuantites[##1]*\ListePUnitaires[##1]}}%
+ }%
+ }%
+ \\
+ }%
+ &&&\\%
+ \hline%
+ &&&\\
+ % Partie Service
+ \ifboolKV[TicketCaisse]{Taxes}{%
+ Total H.T.\uppercase{&}\uppercase{&}\uppercase{&}\hfill\ifboolKV[TicketCaisse]{SousTotal}{\ifnum\thePfCNbInsulte=0\relax\PrixTicket{\PfCTCSousTotal}\else\PfCPrixInsulte*{\PrixTicket{\PfCTCSousTotal}}\fi}{\PfCPrixInsulte*{\PrixTicket{\PfCTCSousTotal}}}
+ \\%
+ Service %
+ \ifodd\thePfCChoixService\relax \PfCPrixInsulte{\num{\PfCTCValeurService}}\else\num{\PfCTCValeurService}\fi~\si{\percent}%
+ &&&\hfill
+ \ifnum\thePfCChoixService>1\relax \PfCPrixInsulte{\PrixTicket{\PfCTCService}}\else\PrixTicket{\PfCTCService}\fi%
+ \\
+ &&&\\
+ \hline
+ &&&\\
+ }{}%
+ \ifboolKV[TicketCaisse]{Simple}{}{%
+ Total\ifboolKV[TicketCaisse]{Taxes}{ T.T.C.}{}&&&\hfill\ifboolKV[TicketCaisse]{Total}{\ifnum\thePfCNbInsulte=0\relax\PrixTicket{\PfCTCTotal}\else\PfCPrixInsulte*{\PrixTicket{\PfCTCTotal}}\fi}{\PfCPrixInsulte*{\PrixTicket{\PfCTCTotal}}}\\%
+ \ifboolKV[TicketCaisse]{SansRendu}{}{%
+ Espèces&&&\hfill\PrixTicket{\useKV[TicketCaisse]{Especes}}\\%
+ Rendu&&&\hfill\ifboolKV[TicketCaisse]{Rendu}{\PrixTicket{\fpeval{\useKV[TicketCaisse]{Especes}-\PfCTCTotal}}}{\PfCPrixInsulte*{\PrixTicket{\fpeval{\useKV[TicketCaisse]{Especes}-\PfCTCTotal}}}}\\%
+ }
+ &&&\\%
+ }%
+ \multicolumn{4}{|c|}{\footnotesize\useKV[TicketCaisse]{DateAchat}\qquad\useKV[TicketCaisse]{HeureAchat}}\\%
+ \hline
+ \end{tabular}
+ }{%
{\ttfamily%
- \begin{NiceTabular}{m{107pt}m{29pt}m{36pt}m{50pt}}%
+ \begin{NiceTabular}{m{0.48\PfCTicketLarg}m{0.13\PfCTicketLarg}m{0.165\PfCTicketLarg}m{0.225\PfCTicketLarg}}%
\CodeBefore
\tikz\node[opacity=0.2,yshift=-1.5cm] at ($(1-|1)!0.5!(1-|last)$) {\Large\bfseries\reflectbox{
\begin{tabular}{c}
@@ -148,7 +272,7 @@
\\%
\Cdots\\%
\\%
- \Block[l]{}{\footnotesize\sc Description}&\Block{}{\footnotesize\sc Qte.}&\Block{}{\footnotesize\sc P.u.}&\Block[r]{}{\footnotesize\sc Prix Net}\\%
+ \Block[l]{}{\footnotesize\sc Description}&\Block{}{\footnotesize\sc Qte.}&\Block{}{\footnotesize\sc P.u.}&\Block[r]{}{\footnotesize\sc Prix \ifboolKV[TicketCaisse]{Taxes}{H.T.}{Net}}\\%
\\%
\xintFor* ##1 in{\xintSeq{1}{\ListeAchatslen}}\do{%
\ListeElements[##1]&%
@@ -200,11 +324,28 @@
}%
\\%
\Cdots\\%
- Total&&&\Block[r]{}{\ifboolKV[TicketCaisse]{Total}{\ifnum\thePfCNbInsulte=0\relax\PrixTicket{\PfCTCTotal}\else\PfCPrixInsulte*{\PrixTicket{\PfCTCTotal}}\fi}{\PfCPrixInsulte*{\PrixTicket{\PfCTCTotal}}}}\\%
- Espèces&&&\Block[r]{}{\PrixTicket{\useKV[TicketCaisse]{Especes}}}\\%
- Rendu&&&\Block[r]{}{\ifboolKV[TicketCaisse]{Rendu}{\PrixTicket{\fpeval{\useKV[TicketCaisse]{Especes}-\PfCTCTotal}}}{\PfCPrixInsulte*{\PrixTicket{\fpeval{\useKV[TicketCaisse]{Especes}-\PfCTCTotal}}}}}\\%
+ % Partie Service
+ \ifboolKV[TicketCaisse]{Taxes}{%
+ Total H.T.&&&\Block[r]{}{\ifboolKV[TicketCaisse]{SousTotal}{\ifnum\thePfCNbInsulte=0\relax\PrixTicket{\PfCTCSousTotal}\else\PfCPrixInsulte*{\PrixTicket{\PfCTCSousTotal}}\fi}{\PfCPrixInsulte*{\PrixTicket{\PfCTCSousTotal}}}
+ }\\%
+ Service %
+ \ifodd\thePfCChoixService\relax \PfCPrixInsulte{\num{\PfCTCValeurService}}\else\num{\PfCTCValeurService}\fi~\si{\percent}%
+ &&&\Block[r]{}{%
+ \ifnum\thePfCChoixService>1\relax \PfCPrixInsulte{\PrixTicket{\PfCTCService}}\else\PrixTicket{\PfCTCService}\fi%
+ }\\
+ \Cdots\\
+ \\
+ }{}%
+ \ifboolKV[TicketCaisse]{Simple}{}{%
+ Total\ifboolKV[TicketCaisse]{Taxes}{ T.T.C.}{}&&&\Block[r]{}{\ifboolKV[TicketCaisse]{Total}{\ifnum\thePfCNbInsulte=0\relax\PrixTicket{\PfCTCTotal}\else\PfCPrixInsulte*{\PrixTicket{\PfCTCTotal}}\fi}{\PfCPrixInsulte*{\PrixTicket{\PfCTCTotal}}}}\\%
+ \ifboolKV[TicketCaisse]{SansRendu}{}{%
+ Espèces&&&\Block[r]{}{\PrixTicket{\useKV[TicketCaisse]{Especes}}}\\%
+ Rendu&&&\Block[r]{}{\ifboolKV[TicketCaisse]{Rendu}{\PrixTicket{\fpeval{\useKV[TicketCaisse]{Especes}-\PfCTCTotal}}}{\PfCPrixInsulte*{\PrixTicket{\fpeval{\useKV[TicketCaisse]{Especes}-\PfCTCTotal}}}}}\\%
+ }
\\%
- \Block{1-4}{\footnotesize\useKV[TicketCaisse]{DateAchat}\qquad\useKV[TicketCaisse]{HeureAchat}}&&&\\%
+ }%
+ \Block{1-4}{\footnotesize\useKV[TicketCaisse]{DateAchat}\qquad\useKV[TicketCaisse]{HeureAchat}}&&&\\%
\end{NiceTabular}
}%
+ }
}% \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCTortueBase.tex b/Master/texmf-dist/tex/latex/profcollege/PfCTortueBase.tex
index 949c781ce78..05a6524e987 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCTortueBase.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCTortueBase.tex
@@ -1,6 +1,10 @@
%%%
% Tortue
%%%
+\def\filedateTortue{2024/08/04}%
+\def\fileversionTortue{0.1}%
+\message{-- \filedateTortue\space v\fileversionTortue}%
+%
\setKVdefault[Tortue]{%
Pas=0.2mm,%Déplacement,
Etapes=false,%Pour arrêter la construction à une étape particulière
@@ -18,9 +22,10 @@
Axes=false,%Affichage des axes ou pas
Origine={(0,0)},%Origine des axes
Cases=false,%Se déplace-t-on sur des cases ?
+ Trace=false%
}
\defKV[Tortue]{Etape=\setKV[Tortue]{Etapes}}%choix de l'étape d'arrêt
-
+\defKV[Tortue]{Traces=\setKV[Tortue]{Trace}}%
\newcounter{PfCTortue}
\setcounter{PfCTortue}{0}
@@ -178,6 +183,9 @@
\ifboolKV[Tortue]{Etapes}{%
\immediate\write\turtle@out{drawoptions(withcolor DarkGreen);label(btex \noexpand\Large\noexpand\ding{40} etex rotated RetiensAngle[Total] scaled 1.5,A[Total]);}%
}{\ifboolKV[Tortue]{TortueF}{\immediate\write\turtle@out{drawoptions(withcolor DarkGreen);label(btex \noexpand\Large\noexpand\ding{40} etex rotated RetiensAngle[k] scaled 1.5,A[k]);}}{}}%
+ \ifboolKV[Tortue]{Trace}{%
+ \immediate\write\turtle@out{\useKV[Tortue]{Traces}}%
+ }{}%
\immediate\closeout\turtle@out%
\restorecomparemode%
}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCTrigonometrie.tex b/Master/texmf-dist/tex/latex/profcollege/PfCTrigonometrie.tex
index 38fe05ce606..0bd7a90da63 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCTrigonometrie.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCTrigonometrie.tex
@@ -1,6 +1,10 @@
%%%
% Trigonom\'etrie
%%%
+\def\filedateTrigo{2024/08/04}%
+\def\fileversionTrigo{0.1}%
+\message{-- \filedateTrigo\space v\fileversionTrigo}%
+%
\def\MPFigTrigo#1#2#3#4#5#6#7#8{%
\ifluatex
% \mplibcodeinherit{enable}
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCTrio.tex b/Master/texmf-dist/tex/latex/profcollege/PfCTrio.tex
index 560258ff59d..06c0a77e3bc 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCTrio.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCTrio.tex
@@ -1,3 +1,10 @@
+%%%
+%Trio
+%%%
+\def\filedateTrio{2024/08/04}%
+\def\fileversionTrio{0.1}%
+\message{-- \filedateTrio\space v\fileversionTrio}%
+%
\newlength\PfCTrioHauteur%
\newcounter{PfCTrioLettre}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCTriominos.tex b/Master/texmf-dist/tex/latex/profcollege/PfCTriominos.tex
index efc6cd24b31..b2ece6c0d49 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCTriominos.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCTriominos.tex
@@ -1,6 +1,10 @@
%%%
% Triominos
%%%
+\def\filedateTriominos{2024/08/04}%
+\def\fileversionTriominos{0.1}%
+\message{-- \filedateTriominos\space v\fileversionTriominos}%
+%
\setKVdefault[ClesTriomino]{Longueur=5cm,Etages=3,Ecart=0.6,AffichagePiece=false,Hexagone=false,Recapitulatif=false,Colonnes=2}%
\defKV[ClesTriomino]{Piece=\setKV[ClesTriomino]{AffichagePiece=true}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCUrneProba.tex b/Master/texmf-dist/tex/latex/profcollege/PfCUrneProba.tex
new file mode 100644
index 00000000000..0d00e039c41
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCUrneProba.tex
@@ -0,0 +1,932 @@
+%%%
+% Urne et probabilités
+%%%
+\def\filedateUrneProba{2024/08/04}%
+\def\fileversionUrneProba{0.1}%
+\message{-- \filedateUrneProba\space v\fileversionUrneProba}%
+%
+\newtoks\tokUrneListeCouleurs%
+\newtoks\tokUrneListeColonnes%
+\newtoks\tokUrneListeNombres%
+
+\def\UpdatetoksUrneCouleurs#1\nil{\addtotok\tokUrneListeCouleurs{#1,}}%
+\def\UpdatetoksUrneNombres#1\nil{\addtotok\tokUrneListeNombres{"#1",}}%
+\def\UpdatetoksUrneColonnes#1\nil{\addtotok\tokUrneListeColonnes{"#1",}}%
+
+\setKVdefault[PfCUrne]{Couleurs=false,Nombres=false,Pas=4,Echelle=1,Repartition={1,2,3},Double=false,RepartitionC={1,2,3},RepartitionN={1,2,3},Roue=false,Rayon=3,Tableau=false,SansRemise=false,Solution=false,Codes=false,CouleurLigne=0.85white,CouleurColonne=0.85white,Different=false,RepartitionLigne={1,2,3},RepartitionColonne={1,2,3},Impression,Casino=false}%
+\defKV[PfCUrne]{Traces=\setKV[PfCUrne]{Codes}}%
+\defKV[PfCUrne]{ListeCouleurs=\setKV[PfCUrne]{Couleurs}\setsepchar{,}\ignoreemptyitems\readlist*\ListeCouleursAv{#1}\reademptyitems}%
+\defKV[PfCUrne]{ListeNombres=\setKV[PfCUrne]{Nombres}\setsepchar{,}\ignoreemptyitems\readlist*\ListeNombresAv{#1}\reademptyitems}%
+\defKV[PfCUrne]{ListeColonne=\setsepchar{,}\ignoreemptyitems\readlist*\ListeCouleursAv{#1}\reademptyitems}%
+\defKV[PfCUrne]{ListeLigne=\setsepchar{,}\ignoreemptyitems\readlist*\ListeNombresAv{#1}\reademptyitems}%
+
+\NewDocumentCommand\BuildRoulette{}{%
+ \ifluatex
+ \begin{Geometrie}[Cadre="aucun"]
+ u:=\useKV[PfCUrne]{Echelle}*1cm;
+
+ color colzero,colrouge,coltoura,coltourb,colbarre;
+
+ boolean Impression;
+ Impression=\useKV[PfCUrne]{Impression};
+
+ if Impression=false:
+ colzero=green;
+ colrouge=red;
+ coltoura=(179,103,0)/256;
+ coltourb=(179,111,48)/256;%(184,114,50)/256;
+ colbarre=0.7529white;
+ else:
+ colzero=white;
+ colrouge=white;
+ coltoura=black;
+ coltourb=black;
+ colbarre=black;
+ fi;
+ pair O,A[],B[],C[],D[];
+ path cc[];
+ O=(0,0);
+ cc1=cercles(O,2u);
+ cc2=cercles(O,2.75u);
+ cc3=cercles(O,3.5u);
+ cc4=cercles(O,3.7u);
+ cc5=cercles(O,4u);
+ cc6=cercles(O,3.125u);
+ cc7=cercles(O,2.375u);
+ if Impression=false:
+ fill cc5 withcolor coltoura;
+ fill cc4 withcolor coltourb;
+ fill cc1 withcolor coltoura;
+ trace cc1 withpen pencircle scaled 1.05;
+ trace cc5 withpen pencircle scaled 1.05;
+ trace cc4 withpen pencircle scaled 1.05;
+ trace cc3 withpen pencircle scaled 1.05;
+ else:
+ fill cc5;
+ fill cc4 withcolor white;
+ trace cc1;
+ trace cc3;
+ fi;
+ for k=0 upto 38:
+ A[k]=pointarc(cc3,90-k*(360/37));
+ B[k]=pointarc(cc1,90-k*(360/37));
+ endfor;
+ na:=1;
+ for p_=32,15,19,4,21,2,25,17,34,6,27,13,36,11,30,8,23,10,5,24,16,33,1,20,14,31,9,22,18,29,7,28,12,35,3,26,0:
+ if (na mod 2)=0:
+ fill arccercle(A[na],A[na-1],O)--B[na-1]--reverse(arccercle(B[na],B[na-1],O))--cycle;
+ drawoptions(withcolor white);
+ label(TEX("\textbf{"&decimal(p_)&"}") rotated (-na*(360/37)),pointarc(cc6,90+0.5*(360/37)-na*(360/37)));
+ drawoptions();
+ else:
+ if p_=0:
+ fill arccercle(A[na],A[na-1],O)--B[na-1]--reverse(arccercle(B[na],B[na-1],O))--cycle withcolor colzero;
+ else:
+ fill arccercle(A[na],A[na-1],O)--B[na-1]--reverse(arccercle(B[na],B[na-1],O))--cycle withcolor colrouge;
+ fi;
+ if Impression=false:
+ drawoptions(withcolor white);
+ fi;
+ label(TEX("\textbf{"&decimal(p_)&"}") rotated (-na*(360/37)),pointarc(cc6,90+0.5*(360/37)-na*(360/37)));
+ if Impression=false:
+ drawoptions();
+ fi;
+ fi;
+ trace arccercle(A[na],A[na-1],O)--B[na-1]--reverse(arccercle(B[na],B[na-1],O))--cycle;
+ na:=na+1;
+ endfor;
+ trace cc2;
+ fill cercles(pointarc(cc7,90+0.5*(360/37)),0.125u);%dotlabel("",);
+ % barre
+ cc8=cercles(O,1.5u);
+ cc9=cercles(O,0.25u);
+ fill cc9 withcolor colbarre;
+ pair E[];
+ anglebase=floor(uniformdeviate(360));
+ E1=pointarc(cc8,anglebase);
+ E4=pointarc(cc8,anglebase+6);
+ E3=symetrie(E1,O);
+ E2=symetrie(E4,O);
+ E5=pointarc(cc8,anglebase+90);
+ E8=pointarc(cc8,anglebase+6+90);
+ E7=symetrie(E5,O);
+ E6=symetrie(E8,O);
+ fill polygone(E1,E2,E3,E4) withcolor colbarre;
+ fill polygone(E5,E6,E7,E8) withcolor colbarre;
+ pair F[];
+ F1=(E1--iso(E1,E2)) intersectionpoint cc9;
+ F2=(E4--iso(E3,E4)) intersectionpoint cc9;
+ F3=(E5--iso(E6,E5)) intersectionpoint cc9;
+ F4=(E8--iso(E7,E8)) intersectionpoint cc9;
+ F5=(E3--iso(E4,E3)) intersectionpoint cc9;
+ F6=(E2--iso(E2,E1)) intersectionpoint cc9;
+ F7=(E7--iso(E8,E7)) intersectionpoint cc9;
+ F8=(E6--iso(E6,E5)) intersectionpoint cc9;
+ trace E1--E4--F2--arccercle(F2,F3,O)--E5--E8--F4--arccercle(F4,F5,O)--E3--E2--F6--arccercle(F6,F7,O)--E7--E6--F8--arccercle(F8,F1,O)--cycle;
+ \end{Geometrie}
+ \fi
+}%
+
+\NewDocumentCommand\BuildTableauDoubleEntreeDifferent{mmmm}{%
+ % #1 : les labels en colonne
+ % #2 : les labels en ligne
+ % #3 : la répartition en colonne
+ % #4 : la répartition en ligne
+ \ifluatex
+ \mplibforcehmode
+ \begin{mplibcode}
+ u:=\useKV[PfCUrne]{Echelle}*1cm;
+ numeric RetiensNumC[],RetiensNumL[];
+ %
+ vardef RecupRepartition(text t)=
+ n:=0;
+ for p_=t:
+ RetiensNumL[n]=p_;
+ n:=n+1;
+ endfor;
+ totallignes=n;
+ enddef;
+ %
+ vardef RecupRepartitionC(text t)=
+ n:=0;
+ for p_=t:
+ RetiensNumC[n]=p_;
+ n:=n+1;
+ endfor;
+ totalcolonnes=n;
+ enddef;
+ %
+ string Colonnes[];
+ vardef RecuperationColonnes(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ Colonnes[n]=p_;
+ endfor;
+ enddef;
+ %
+ string Lignes[];
+ vardef RecuperationLignes(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ Lignes[n]=p_;
+ endfor;
+ enddef;
+ %
+ boolean Solution, Codes;
+ Solution=\useKV[PfCUrne]{Solution};
+ Codes=\useKV[PfCUrne]{Codes};
+ %
+ color ColLigne,ColColonne;
+ ColLigne=\useKV[PfCUrne]{CouleurLigne};
+ ColColonne=\useKV[PfCUrne]{CouleurColonne};
+ %
+ RecupRepartitionC(#3);
+ RecupRepartition(#4);
+ RecuperationColonnes(#1);
+ RecuperationLignes(#2);
+
+ pair A[][],C[][];
+ for k=0 upto totallignes+1:
+ for l=0 upto totalcolonnes+1:
+ A[k][l]=(0,0) shifted(u*(l,-k));
+ C[k][l]=A[k][l] shifted(u*(0.5,-0.5));
+ endfor;
+ endfor;
+
+ fill polygone(A[0][1],A[0][totalcolonnes+1],A[1][totalcolonnes+1],A[1][1]) withcolor ColLigne;
+ fill polygone(A[1][0],A[totallignes+1][0],A[totallignes+1][1],A[1][1]) withcolor ColColonne;
+ for k=1 upto totalcolonnes:
+ label(TEX(Colonnes[RetiensNumC[k-1]]),iso(A[1][k],A[0][k+1]));
+ endfor;
+ for k=1 upto totallignes:
+ label(TEX(Lignes[RetiensNumL[k-1]]),iso(A[k][0],A[k+1][1]));
+ endfor;
+ %
+ for k=1 upto totallignes:
+ trace segment(A[k][0],A[k][totalcolonnes+1]);
+ endfor;
+ for k=1 upto totalcolonnes:
+ trace segment(A[0][k],A[totallignes+1][k]);
+ endfor;
+ trace A[1][0]--A[totallignes+1][0]--A[totallignes+1][totalcolonnes+1]--A[0][totalcolonnes+1]--A[0][1];
+ labeloffset:=labeloffset*4;
+ label.top(TEX("Tirage 1"),iso(A[0][1],A[0][totalcolonnes+1]));
+ label.lft(TEX("Tirage 2") rotated 90,iso(A[totallignes+1][0],A[1][0]));
+ labeloffset:=labeloffset/4;
+
+ path ccsol[][];
+
+ if Solution:
+ for k=1 upto totallignes:
+ for l=1 upto totalcolonnes:
+ label(TEX(Colonnes[RetiensNumC[l-1]]&"--"&Lignes[RetiensNumL[k-1]]),iso(A[k][l],A[k+1][l+1]));
+ endfor;
+ endfor;
+ fi;
+
+ if Codes:
+ \useKV[PfCUrne]{Traces};
+ fi;
+ \end{mplibcode}
+ \fi
+}%
+
+\NewDocumentCommand\BuildTableauDoubleEntree{mmm}{%
+ \ifluatex
+ \mplibforcehmode
+ \begin{mplibcode}
+ u:=\useKV[PfCUrne]{Echelle}*1cm;
+ numeric RetiensNum[];
+ %
+ vardef RecupRepartition(text t)=
+ n:=0;
+ for p_=t:
+ RetiensNum[n]=p_;
+ n:=n+1;
+ endfor;
+ totalboules=n;
+ enddef;
+ %
+ color Col[];
+ vardef RecuperationCouleurs(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ Col[n]=p_;
+ endfor;
+ enddef;
+ %
+ string Nombres[];
+ vardef RecuperationNombres(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ Nombres[n]=p_;
+ endfor;
+ enddef;
+ %
+ numeric Pas,Rayon;
+ Pas=\useKV[PfCUrne]{Pas};
+ Rayon=\useKV[PfCUrne]{Rayon};
+ %
+ boolean Couleurs, Nombres, Roue, Solution, SansRemise, Codes;
+ Couleurs=\useKV[PfCUrne]{Couleurs};
+ Nombres=\useKV[PfCUrne]{Nombres};
+ Roue=\useKV[PfCUrne]{Roue};
+ Solution=\useKV[PfCUrne]{Solution};
+ SansRemise=\useKV[PfCUrne]{SansRemise};
+ Codes=\useKV[PfCUrne]{Codes};
+
+ color ColLigne,ColColonne;
+ ColLigne=\useKV[PfCUrne]{CouleurLigne};
+ ColColonne=\useKV[PfCUrne]{CouleurColonne};
+
+ RecupRepartition(#3);
+ if Couleurs:
+ RecuperationCouleurs(#1);
+ fi;
+ if Nombres:
+ RecuperationNombres(#2);
+ fi;
+
+ pair O;
+ pair A[][],C[][];
+ for k=0 upto totalboules+1:
+ for l=0 upto totalboules+1:
+ A[k][l]:=(0,0) shifted(u*(l,-k));
+ endfor;
+ endfor;
+
+ for k=0 upto totalboules:
+ for l=0 upto totalboules:
+ C[k][l]=A[k][l] shifted(u*(0.5,-0.5));
+ endfor;
+ endfor;
+
+ if Couleurs:
+ drawoptions(withpen pencircle scaled 0.75);
+ for k=1 upto totalboules:
+ fill cercles(iso(A[1][k],A[0][k+1]),0.35u) withcolor Col[RetiensNum[k-1]];
+ fill cercles(iso(A[k][0],A[k+1][1]),0.35u) withcolor Col[RetiensNum[k-1]];
+ trace cercles(iso(A[1][k],A[0][k+1]),0.35u);
+ trace cercles(iso(A[k][0],A[k+1][1]),0.35u);
+ endfor;
+ drawoptions();
+ else:
+ fill polygone(A[0][1],A[0][totalboules+1],A[1][totalboules+1],A[1][1]) withcolor ColLigne;
+ fill polygone(A[1][0],A[totalboules+1][0],A[totalboules+1][1],A[1][1]) withcolor ColColonne;
+ for k=1 upto totalboules:
+ label(TEX(Nombres[RetiensNum[k-1]]),iso(A[1][k],A[0][k+1]));
+ label(TEX(Nombres[RetiensNum[k-1]]),iso(A[k][0],A[k+1][1]));
+ endfor;
+ fi;
+ if SansRemise:
+ for k=1 upto totalboules:
+ draw 1/8[A[k][k],A[k+1][k+1]]--7/8[A[k][k],A[k+1][k+1]];
+ draw 1/8[A[k+1][k],A[k][k+1]]--7/8[A[k+1][k],A[k][k+1]];
+ endfor;
+ fi;
+ for k=1 upto totalboules:
+ trace segment(A[k][0],A[k][totalboules+1]);
+ trace segment(A[0][k],A[totalboules+1][k]);
+ endfor;
+ trace A[1][0]--A[totalboules+1][0]--A[totalboules+1][totalboules+1]--A[0][totalboules+1]--A[0][1];
+ labeloffset:=labeloffset*4;
+ label.top(TEX("Tirage 1"),iso(A[0][1],A[0][totalboules+1]));
+ label.lft(TEX("Tirage 2") rotated 90,iso(A[totalboules+1][0],A[1][0]));
+ labeloffset:=labeloffset/4;
+
+ path ccsol[][];
+
+ if Solution:
+ if Couleurs:
+ drawoptions(withpen pencircle scaled 0.75);
+ for k=1 upto totalboules:
+ for l=1 upto totalboules:
+ ccsol[k][l]=cercles(iso(A[k][l],A[k+1][l+1]),0.25u);
+ if SansRemise:
+ if k<>l:
+ fill arccercle(pointarc(ccsol[k][l],315),pointarc(ccsol[k][l],135),iso(A[k][l],A[k+1][l+1]))--iso(A[k][l],A[k+1][l+1])--cycle withcolor Col[RetiensNum[l-1]];
+ fill arccercle(pointarc(ccsol[k][l],135),pointarc(ccsol[k][l],315),iso(A[k][l],A[k+1][l+1]))--iso(A[k][l],A[k+1][l+1])--cycle withcolor Col[RetiensNum[k-1]];
+ trace segment(pointarc(ccsol[k][l],135),pointarc(ccsol[k][l],315));
+ trace ccsol[k][l];
+ fi;
+ else:
+ fill arccercle(pointarc(ccsol[k][l],315),pointarc(ccsol[k][l],135),iso(A[k][l],A[k+1][l+1]))--iso(A[k][l],A[k+1][l+1])--cycle withcolor Col[RetiensNum[l-1]];
+ fill arccercle(pointarc(ccsol[k][l],135),pointarc(ccsol[k][l],315),iso(A[k][l],A[k+1][l+1]))--iso(A[k][l],A[k+1][l+1])--cycle withcolor Col[RetiensNum[k-1]];
+ trace segment(pointarc(ccsol[k][l],135),pointarc(ccsol[k][l],315));
+ trace ccsol[k][l];
+ fi;
+ endfor;
+ endfor;
+ drawoptions();
+ else:
+ for k=1 upto totalboules:
+ for l=1 upto totalboules:
+ if SansRemise:
+ if k<>l:
+ label(TEX(Nombres[RetiensNum[l-1]]&"--"&Nombres[RetiensNum[k-1]]),iso(A[k][l],A[k+1][l+1]));
+ fi;
+ else:
+ label(TEX(Nombres[RetiensNum[l-1]]&"--"&Nombres[RetiensNum[k-1]]),iso(A[k][l],A[k+1][l+1]));
+ fi;
+ endfor;
+ endfor;
+ fi;
+ fi;
+
+ if Codes:
+ \useKV[PfCUrne]{Traces};
+ fi;
+ \end{mplibcode}
+ \fi
+}%
+
+\NewDocumentCommand\BuildUrne{mmm}{%
+ \ifluatex
+ \mplibforcehmode
+ \begin{mplibcode}
+ u:=\useKV[PfCUrne]{Echelle}*1cm;
+ numeric RetiensNum[];
+ vardef RecupRepartition(text t)=
+ n:=0;
+ for p_=t:
+ RetiensNum[n]=p_;
+ n:=n+1;
+ endfor;
+ totalboules=n;
+ enddef;
+
+ color Col[];
+ vardef RecuperationCouleurs(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ Col[n]=p_;
+ endfor;
+ enddef;
+
+ string Nombres[];
+ vardef RecuperationNombres(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ Nombres[n]=p_;
+ endfor;
+ enddef;
+
+ numeric Pas,Rayon;
+ Pas=\useKV[PfCUrne]{Pas};
+ Rayon=\useKV[PfCUrne]{Rayon};
+
+ boolean Couleurs, Nombres, Roue;
+ Couleurs=\useKV[PfCUrne]{Couleurs};
+ Nombres=\useKV[PfCUrne]{Nombres};
+ Roue=\useKV[PfCUrne]{Roue};
+
+ RecupRepartition(#3);
+ if Couleurs:
+ RecuperationCouleurs(#1);
+ fi;
+ if Nombres:
+ RecuperationNombres(#2);
+ fi;
+
+ pair O;
+ pair A[],B[];
+
+ if Roue:
+ O=(0,0);
+ path cc;
+ cc=cercles(O,Rayon*u);
+ angd=180/totalboules;
+ angr=360/totalboules;
+ for k=1 upto totalboules:
+ A[k]=17/20[O,pointarc(cc,angd+(k-1)*angr)];
+ endfor;
+ drawarrow rotation((O+u*(0,1.35*Rayon))--(O+u*(0,1.1*Rayon)),O,angd);
+ % trace cc;
+ B[0]=pointarc(cc,0);
+ for k=1 upto totalboules:
+ B[k]=pointarc(cc,k*angr);
+ if Couleurs:
+ fill O--arccercle(B[k-1],B[k],O)--cycle withcolor if unknown Col[RetiensNum[k-1]]:white else: Col[RetiensNum[k-1]] fi;
+ else:
+ label(TEX(Nombres[RetiensNum[k-1]]),A[k]);
+ fi;
+ endfor;
+ trace cc;
+ for k=1 upto totalboules:
+ trace O--B[k];
+ endfor;
+ else:
+ for k=0 upto (totalboules div Pas)-1:
+ for l=0 upto Pas-1:
+ rang:=k*Pas+l;
+ A[rang]=u*(0.5,0.5)+u*(l,k);
+ if Couleurs:
+ fill cercles(A[rang],0.5u) withcolor if unknown Col[RetiensNum[rang]]:white else: Col[RetiensNum[rang]] fi;
+ else:
+ label(TEX(Nombres[RetiensNum[rang]]),A[rang]);
+ fi;
+ %trace cercles(A[k*Pas+l],0.5u);
+ endfor;
+ endfor;
+ for k=0 upto (totalboules mod Pas)-1:
+ rang:=(totalboules div Pas)*Pas+k;
+ A[rang]=u*(0.5,0.5)+u*(k+0.5,totalboules div Pas-1+cosd(30));
+ if Couleurs:
+ fill cercles(A[rang],0.5u) withcolor if unknown Col[RetiensNum[rang]]:white else: Col[RetiensNum[rang]] fi;
+ else:
+ label(TEX(Nombres[RetiensNum[rang]]),A[rang]);
+ fi;
+ %trace cercles(A[(totalboules div Pas)*Pas+k],0.5u);
+ endfor;
+ %
+ for k=0 upto (totalboules div Pas)-1:
+ for l=0 upto Pas-1:
+ rang:=k*Pas+l;
+ trace cercles(A[rang],0.5u);
+ endfor;
+ endfor;
+ for k=0 upto (totalboules mod Pas)-1:
+ rang:=(totalboules div Pas)*Pas+k;
+ trace cercles(A[rang],0.5u);
+ endfor;
+ %
+ drawoptions(withpen pencircle scaled 1.2);
+ if totalboules<Pas:
+ trace u*(0,(totalboules div Pas)+1.15)--u*(0,0-(1-cosd(30)))--u*(Pas,0-(1-cosd(30)))--u*(Pas,(totalboules div Pas)+1.15);
+ else:
+ trace u*(0,(totalboules div Pas)+1.15)--u*(0,0)--u*(Pas,0)--u*(Pas,(totalboules div Pas)+1.15);
+ fi;
+ fi;
+ \end{mplibcode}
+ \else
+ \begin{mpost}[mpsettings={u:=\useKV[PfCUrne]{Echelle}*1cm;numeric Pas;Pas=\useKV[PfCUrne]{Pas}; boolean Couleurs, Nombres; Couleurs=\useKV[PfCUrne]{Couleurs}; Nombres=\useKV[PfCUrne]{Nombres};}]
+ numeric RetiensNum[];
+ vardef RecupRepartition(text t)=
+ n:=0;
+ for p_=t:
+ RetiensNum[n]=p_;
+ n:=n+1;
+ endfor;
+ totalboules=n;
+ enddef;
+
+ color Col[];
+ vardef RecuperationCouleurs(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ Col[n]=p_;
+ endfor;
+ enddef;
+
+ string Nombres[];
+ vardef RecuperationNombres(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ Nombres[n]=p_;
+ endfor;
+ enddef;
+
+ RecupRepartition(#3);
+ if Couleurs:
+ RecuperationCouleurs(#1);
+ fi;
+ if Nombres:
+ RecuperationNombres(#2);
+ fi;
+
+ pair A[];
+
+ for k=0 upto (totalboules div Pas)-1:
+ for l=0 upto Pas-1:
+ rang:=k*Pas+l;
+ A[rang]=u*(0.5,0.5)+u*(l,k);
+ if Couleurs:
+ fill cercles(A[rang],0.5u) withcolor if unknown Col[RetiensNum[rang]]:white else: Col[RetiensNum[rang]] fi;
+ else:
+ label(LATEX(Nombres[RetiensNum[rang]]),A[rang]);
+ fi;
+ %trace cercles(A[k*Pas+l],0.5u);
+ endfor;
+ endfor;
+ for k=0 upto (totalboules mod Pas)-1:
+ rang:=(totalboules div Pas)*Pas+k;
+ A[rang]=u*(0.5,0.5)+u*(k+0.5,totalboules div Pas-1+cosd(30));
+ if Couleurs:
+ fill cercles(A[rang],0.5u) withcolor if unknown Col[RetiensNum[rang]]:white else: Col[RetiensNum[rang]] fi;
+ else:
+ label(LATEX(Nombres[RetiensNum[rang]]),A[rang]);
+ fi;
+ %trace cercles(A[(totalboules div Pas)*Pas+k],0.5u);
+ endfor;
+ %
+ for k=0 upto (totalboules div Pas)-1:
+ for l=0 upto Pas-1:
+ rang:=k*Pas+l;
+ trace cercles(A[rang],0.5u);
+ endfor;
+ endfor;
+ for k=0 upto (totalboules mod Pas)-1:
+ rang:=(totalboules div Pas)*Pas+k;
+ trace cercles(A[rang],0.5u);
+ endfor;
+ %
+ drawoptions(withpen pencircle scaled 1.2);
+ if totalboules<Pas:
+ trace u*(0,(totalboules div Pas)+1.15)--u*(0,0-(1-cosd(30)))--u*(Pas,0-(1-cosd(30)))--u*(Pas,(totalboules div Pas)+1.15);
+ else:
+ trace u*(0,(totalboules div Pas)+1.15)--u*(0,0)--u*(Pas,0)--u*(Pas,(totalboules div Pas)+1.15);
+ fi;
+ \end{mpost}
+ \fi
+}%
+
+\NewDocumentCommand\BuildUrneDouble{mmmm}{%
+ % #1 Liste Couleurs
+ % #2 Liste Nombres
+ % #3 Repartition des couleurs
+ % #4 Repartition des nombres
+ \ifluatex
+ \mplibforcehmode
+ \begin{mplibcode}
+ u:=\useKV[PfCUrne]{Echelle}*1cm;
+ numeric RetiensC[],RetiensNum[];
+ vardef RecupRepartitionC(text t)=
+ n:=0;
+ for p_=t:
+ RetiensC[n]=p_;
+ n:=n+1;
+ endfor;
+ totalboules=n;
+ enddef;
+
+ vardef RecupRepartition(text t)=
+ n:=0;
+ for p_=t:
+ RetiensNum[n]=p_;
+ n:=n+1;
+ endfor;
+ enddef;
+
+ color Col[];
+ vardef RecuperationCouleurs(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ Col[n]=p_;
+ endfor;
+ enddef;
+
+ string Nombres[];
+ vardef RecuperationNombres(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ Nombres[n]=p_;
+ endfor;
+ enddef;
+
+ numeric Pas,Rayon;
+ Pas=\useKV[PfCUrne]{Pas};
+ Rayon=\useKV[PfCUrne]{Rayon};
+
+ boolean Roue;
+ Roue=\useKV[PfCUrne]{Roue};
+
+ RecupRepartitionC(#3);
+ RecupRepartition(#4);
+ RecuperationCouleurs(#1);
+ RecuperationNombres(#2);
+
+ pair O;
+ pair A[],B[];
+
+ if Roue:
+ O=(0,0);
+ path cc;
+ cc=cercles(O,Rayon*u);
+ angd=180/totalboules;
+ angr=360/totalboules;
+ for k=1 upto totalboules:
+ A[k]=17/20[O,pointarc(cc,angd+(k-1)*angr)];
+ endfor;
+ B[0]=pointarc(cc,0);
+ for k=1 upto totalboules:
+ B[k]=pointarc(cc,k*angr);
+ fill O--arccercle(B[k-1],B[k],O)--cycle withcolor if unknown Col[RetiensC[k-1]]:white else: Col[RetiensC[k-1]] fi;
+ label(TEX(Nombres[RetiensNum[k-1]]),A[k]);
+ endfor;
+ trace cc;
+ for k=1 upto totalboules:
+ trace O--B[k];
+ endfor;
+ drawarrow rotation((O+u*(0,1.35*Rayon))--(O+u*(0,1.1*Rayon)),O,angd);
+ else:
+ for k=0 upto (totalboules div Pas)-1:
+ for l=0 upto Pas-1:
+ rang:=k*Pas+l;
+ A[rang]=u*(0.5,0.5)+u*(l,k);
+ fill cercles(A[rang],0.5u) withcolor if unknown Col[RetiensC[rang]]:white else: Col[RetiensC[rang]] fi;
+ label(TEX(Nombres[RetiensNum[rang]]),A[rang]);
+ endfor;
+ endfor;
+ for k=0 upto (totalboules mod Pas)-1:
+ rang:=(totalboules div Pas)*Pas+k;
+ A[rang]=u*(0.5,0.5)+u*(k+0.5,totalboules div Pas-1+cosd(30));
+ fill cercles(A[rang],0.5u) withcolor if unknown Col[RetiensC[rang]]:white else: Col[RetiensC[rang]] fi;
+ label(TEX(Nombres[RetiensNum[rang]]),A[rang]);
+ endfor;
+ %
+ for k=0 upto (totalboules div Pas)-1:
+ for l=0 upto Pas-1:
+ rang:=k*Pas+l;
+ trace cercles(A[rang],0.5u);
+ endfor;
+ endfor;
+ for k=0 upto (totalboules mod Pas)-1:
+ rang:=(totalboules div Pas)*Pas+k;
+ trace cercles(A[rang],0.5u);
+ endfor;
+ %
+ drawoptions(withpen pencircle scaled 1.2);
+ if totalboules<Pas:
+ trace u*(0,(totalboules div Pas)+1.15)--u*(0,0-(1-cosd(30)))--u*(Pas,0-(1-cosd(30)))--u*(Pas,(totalboules div Pas)+1.15);
+ else:
+ trace u*(0,(totalboules div Pas)+1.15)--u*(0,0)--u*(Pas,0)--u*(Pas,(totalboules div Pas)+1.15);
+ fi;
+ fi;
+ \end{mplibcode}
+ \else
+ \begin{mpost}[mpsettings={u:=\useKV[PfCUrne]{Echelle}*1cm;numeric RetiensC[],RetiensNum[];numeric Pas,Rayon;Pas=\useKV[PfCUrne]{Pas};Rayon=\useKV[PfCUrne]{Rayon};boolean Roue;Roue=\useKV[PfCUrne]{Roue};}]
+ vardef RecupRepartitionC(text t)=
+ n:=0;
+ for p_=t:
+ RetiensC[n]=p_;
+ n:=n+1;
+ endfor;
+ totalboules=n;
+ enddef;
+
+ vardef RecupRepartition(text t)=
+ n:=0;
+ for p_=t:
+ RetiensNum[n]=p_;
+ n:=n+1;
+ endfor;
+ enddef;
+
+ color Col[];
+ vardef RecuperationCouleurs(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ Col[n]=p_;
+ endfor;
+ enddef;
+
+ string Nombres[];
+ vardef RecuperationNombres(text t)=
+ n:=0;
+ for p_=t:
+ n:=n+1;
+ Nombres[n]=p_;
+ endfor;
+ enddef;
+
+ RecupRepartitionC(#3);
+ RecupRepartition(#4);
+ RecuperationCouleurs(#1);
+ RecuperationNombres(#2);
+
+ pair O;
+ pair A[],B[];
+
+ if Roue:
+ O=(0,0);
+ path cc;
+ cc=cercles(O,Rayon*1cm);
+ angd=180/totalboules;
+ angr=360/totalboules;
+ for k=1 upto totalboules:
+ A[k]=17/20[O,pointarc(cc,angd+(k-1)*angr)];
+ endfor;
+ B[0]=pointarc(cc,0);
+ for k=1 upto totalboules:
+ B[k]=pointarc(cc,k*angr);
+ fill O--arccercle(B[k-1],B[k],O)--cycle withcolor if unknown Col[RetiensC[k-1]]:white else: Col[RetiensC[k-1]] fi;
+ label(LATEX(Nombres[RetiensNum[k-1]]),A[k]);
+ endfor;
+ trace cc;
+ for k=1 upto totalboules:
+ trace O--B[k];
+ endfor;
+ else:
+ for k=0 upto (totalboules div Pas)-1:
+ for l=0 upto Pas-1:
+ rang:=k*Pas+l;
+ A[rang]=u*(0.5,0.5)+u*(l,k);
+ fill cercles(A[rang],0.5u) withcolor if unknown Col[RetiensC[rang]]:white else: Col[RetiensC[rang]] fi;
+ label(LATEX(Nombres[RetiensNum[rang]]),A[rang]);
+ endfor;
+ endfor;
+ for k=0 upto (totalboules mod Pas)-1:
+ rang:=(totalboules div Pas)*Pas+k;
+ A[rang]=u*(0.5,0.5)+u*(k+0.5,totalboules div Pas-1+cosd(30));
+ fill cercles(A[rang],0.5u) withcolor if unknown Col[RetiensC[rang]]:white else: Col[RetiensC[rang]] fi;
+ label(LATEX(Nombres[RetiensNum[rang]]),A[rang]);
+ endfor;
+ %
+ for k=0 upto (totalboules div Pas)-1:
+ for l=0 upto Pas-1:
+ rang:=k*Pas+l;
+ trace cercles(A[rang],0.5u);
+ endfor;
+ endfor;
+ for k=0 upto (totalboules mod Pas)-1:
+ rang:=(totalboules div Pas)*Pas+k;
+ trace cercles(A[rang],0.5u);
+ endfor;
+ %
+ drawoptions(withpen pencircle scaled 1.2);
+ if totalboules<Pas:
+ trace u*(0,(totalboules div Pas)+1.15)--u*(0,0-(1-cosd(30)))--u*(Pas,0-(1-cosd(30)))--u*(Pas,(totalboules div Pas)+1.15);
+ else:
+ trace u*(0,(totalboules div Pas)+1.15)--u*(0,0)--u*(Pas,0)--u*(Pas,(totalboules div Pas)+1.15);
+ fi;
+ fi;
+ \end{mpost}
+ \fi
+}%
+
+\NewDocumentCommand\SchemaProba{o}{%
+ \useKVdefault[PfCUrne]%
+ \setKV[PfCUrne]{#1}%
+ \tokUrneListeCouleurs{}%
+ \tokUrneListeNombres{}%
+ \tokUrneListeColonnes{}%
+ \ifboolKV[PfCUrne]{Casino}{%
+ \BuildRoulette%
+ }{%
+ \ifboolKV[PfCUrne]{Tableau}{%
+ \ifboolKV[PfCUrne]{Different}{%
+ \xdef\PfCFooRepartitionC{\useKV[PfCUrne]{RepartitionColonne}}%
+ \xdef\PfCFooRepartitionL{\useKV[PfCUrne]{RepartitionLigne}}%
+ \setsepchar{,}\ignoreemptyitems%
+ \readlist*\ListeRepartitionCAv{\PfCFooRepartitionC}%
+ \readlist*\ListeRepartitionLAv{\PfCFooRepartitionL}%
+ % Repartition : \showitems\ListeRepartitionAv[]%
+ \xdef\PfCFooListeRepartitionC{}%
+ \xdef\PfCFooListeRepartitionL{}%
+ \xdef\PfCTotalC{0}%
+ \xdef\PfCTotalL{0}%
+ \xintFor* ##1 in{\xintSeq{1}{\ListeRepartitionCAvlen}}\do{%
+ \xintFor* ##2 in{\xintSeq{1}{\ListeRepartitionCAv[##1]}}\do{%
+ \xdef\PfCFooListeRepartitionC{\PfCFooListeRepartitionC,##1}%
+ \xdef\PfCTotalC{\fpeval{\PfCTotalC+1}}%
+ }%
+ }%
+ \xintFor* ##1 in{\xintSeq{1}{\ListeRepartitionLAvlen}}\do{%
+ \xintFor* ##2 in{\xintSeq{1}{\ListeRepartitionLAv[##1]}}\do{%
+ \xdef\PfCFooListeRepartitionL{\PfCFooListeRepartitionL,##1}%
+ \xdef\PfCTotalL{\fpeval{\PfCTotalL+1}}%
+ }%
+ }%
+ \foreachitem\compteur\in\ListeCouleursAv{\expandafter\UpdatetoksUrneColonnes\compteur\nil}%
+ \foreachitem\compteur\in\ListeNombresAv{\expandafter\UpdatetoksUrneNombres\compteur\nil}%
+ \BuildTableauDoubleEntreeDifferent{\the\tokUrneListeColonnes}{\the\tokUrneListeNombres}{\PfCFooListeRepartitionC}{\PfCFooListeRepartitionL}%
+ }{%
+ \xdef\PfCFooRepartition{\useKV[PfCUrne]{Repartition}}%
+ \setsepchar{,}\ignoreemptyitems%
+ \readlist*\ListeRepartitionAv{\PfCFooRepartition}%
+ \xdef\PfCFooListeRepartition{}%
+ \xdef\PfCTotal{0}%
+ \xintFor* ##1 in{\xintSeq{1}{\ListeRepartitionAvlen}}\do{%
+ \xintFor* ##2 in{\xintSeq{1}{\ListeRepartitionAv[##1]}}\do{%
+ \xdef\PfCFooListeRepartition{\PfCFooListeRepartition,##1}%
+ \xdef\PfCTotal{\fpeval{\PfCTotal+1}}%
+ }%
+ }%
+ \ifboolKV[PfCUrne]{Couleurs}{%
+ \foreachitem\compteur\in\ListeCouleursAv{\expandafter\UpdatetoksUrneCouleurs\compteur\nil}%
+ \BuildTableauDoubleEntree{\the\tokUrneListeCouleurs}{}{\PfCFooListeRepartition}%
+ }{%
+ \ifboolKV[PfCUrne]{Nombres}{%
+ \foreachitem\compteur\in\ListeNombresAv{\expandafter\UpdatetoksUrneNombres\compteur\nil}%
+ \BuildTableauDoubleEntree{}{\the\tokUrneListeNombres}{\PfCFooListeRepartition}%
+ }{}%
+ }%
+ }%
+ }{%
+ \ifboolKV[PfCUrne]{Double}{%
+ \xdef\PfCFooRepartitionC{\useKV[PfCUrne]{RepartitionC}}%
+ \xdef\PfCFooRepartitionN{\useKV[PfCUrne]{RepartitionN}}%
+ \setsepchar{,}\ignoreemptyitems%
+ \readlist*\ListeRepartitionCAv{\PfCFooRepartitionC}%
+ \readlist*\ListeRepartitionNAv{\PfCFooRepartitionN}%
+ % Repartition : \showitems\ListeRepartitionAv[]%
+ \xdef\PfCFooListeRepartitionC{}%
+ \xdef\PfCFooListeRepartitionN{}%
+ \xdef\PfCTotalC{0}%
+ \xdef\PfCTotalN{0}%
+ \xintFor* ##1 in{\xintSeq{1}{\ListeRepartitionCAvlen}}\do{%
+ \xintFor* ##2 in{\xintSeq{1}{\ListeRepartitionCAv[##1]}}\do{%
+ \xdef\PfCFooListeRepartitionC{\PfCFooListeRepartitionC,##1}%
+ \xdef\PfCTotalC{\fpeval{\PfCTotalC+1}}%
+ }%
+ }%
+ \xintFor* ##1 in{\xintSeq{1}{\ListeRepartitionNAvlen}}\do{%
+ \xintFor* ##2 in{\xintSeq{1}{\ListeRepartitionNAv[##1]}}\do{%
+ \xdef\PfCFooListeRepartitionN{\PfCFooListeRepartitionN,##1}%
+ \xdef\PfCTotalN{\fpeval{\PfCTotalN+1}}%
+ }%
+ }%
+ \MelangeListe{\PfCFooListeRepartitionC}{\PfCTotalC}%
+ \xdef\ListeRepartitionCouleurs{\faa}%
+ \foreachitem\compteur\in\ListeCouleursAv{\expandafter\UpdatetoksUrneCouleurs\compteur\nil}%
+ \MelangeListe{\PfCFooListeRepartitionN}{\PfCTotalN}%
+ \xdef\ListeRepartitionNombres{\faa}%
+ \foreachitem\compteur\in\ListeNombresAv{\expandafter\UpdatetoksUrneNombres\compteur\nil}%
+ \BuildUrneDouble{\the\tokUrneListeCouleurs}{\the\tokUrneListeNombres}{\ListeRepartitionCouleurs}{\ListeRepartitionNombres}%
+ }{%
+ \xdef\PfCFooRepartition{\useKV[PfCUrne]{Repartition}}%
+ \setsepchar{,}\ignoreemptyitems%
+ \readlist*\ListeRepartitionAv{\PfCFooRepartition}%
+ % Repartition : \showitems\ListeRepartitionAv[]%
+ \xdef\PfCFooListeRepartition{}%
+ \xdef\PfCTotal{0}%
+ \xintFor* ##1 in{\xintSeq{1}{\ListeRepartitionAvlen}}\do{%
+ \xintFor* ##2 in{\xintSeq{1}{\ListeRepartitionAv[##1]}}\do{%
+ \xdef\PfCFooListeRepartition{\PfCFooListeRepartition,##1}%
+ \xdef\PfCTotal{\fpeval{\PfCTotal+1}}%
+ }%
+ }%
+ \ifboolKV[PfCUrne]{Couleurs}{%
+ \MelangeListe{\PfCFooListeRepartition}{\PfCTotal}%
+ \xdef\ListeRepartitionCouleurs{\faa}%
+ \foreachitem\compteur\in\ListeCouleursAv{\expandafter\UpdatetoksUrneCouleurs\compteur\nil}%
+ % Couleurs :\\
+ % La répartition est : \ListeRepartitionCouleurs\\
+ % Les couleurs sont : \the\tokUrneListeCouleurs.\\
+ \BuildUrne{\the\tokUrneListeCouleurs}{}{\ListeRepartitionCouleurs}%
+ }{%
+ \ifboolKV[PfCUrne]{Nombres}{%
+ \MelangeListe{\PfCFooListeRepartition}{\PfCTotal}%
+ \xdef\ListeRepartitionNombres{\faa}%
+ \foreachitem\compteur\in\ListeNombresAv{\expandafter\UpdatetoksUrneNombres\compteur\nil}%
+ % Nombres :\\
+ % La répartition est : \ListeRepartitionNombres\\
+ % Les nombres sont : \the\tokUrneListeNombres.\\
+ \BuildUrne{}{\the\tokUrneListeNombres}{\ListeRepartitionNombres}%
+ }{}%
+ }%
+ }%
+}%
+}%
+}% \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCVisualisationMulDeci.tex b/Master/texmf-dist/tex/latex/profcollege/PfCVisualisationMulDeci.tex
index 54a1a079cc6..99024a43586 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCVisualisationMulDeci.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCVisualisationMulDeci.tex
@@ -1,6 +1,10 @@
%%%
% Visualisation Multiplication Décimaux
%%%
+\def\filedateVisuMulDeci{2024/08/04}%
+\def\fileversionVisuMulDeci{0.1}%
+\message{-- \filedateVisuMulDeci\space v\fileversionVisuMulDeci}%
+%
\setKVdefault[VisMulDec]{Couleur=Orange,CouleurUnite=DarkGreen,Dixiemes=false,Unite=2}%
\newtoks\toksvismuldec%
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCVueCubes.tex b/Master/texmf-dist/tex/latex/profcollege/PfCVueCubes.tex
index 9365b7e6216..196358d9bf8 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCVueCubes.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCVueCubes.tex
@@ -1,6 +1,10 @@
%%%
% Vue Cubes
%%%
+\def\filedateVueCubes{2024/08/26}%
+\def\fileversionVueCubes{0.1a}%
+\message{-- \filedateVueCubes\space v\fileversionVueCubes}%
+%
\setKVdefault[VueCubes]{Solution=false,Hauteur=5,Profondeur=4,Largeur=3,Angle=60,Nom=Ex1,Trou=false,Echelle=0.25,CouleurCube=LightSteelBlue,CouleurFleche=LightGray,Face=false,Creation=false,Grilles=false,Seul=false,Perso=false,EclateX=0,EclateZ=0,EclateY=0}
\newtoks\toklisteVueCube%
@@ -30,9 +34,9 @@
\readlist*\PfCListeHauteursCubes{#2}%
\reademptyitems%
\foreachitem\compteur\in\PfCListeHauteursCubes{\expandafter\UpdatetoksVueCube\compteur\nil}%
- \BuildVueCubes{\useKV[VueCubes]{Angle}}{\the\toklisteVueCube}%
+ \BuildVueCubes{\useKV[VueCubes]{Angle}}{\the\toklisteVueCube}{\useKV[VueCubes]{Nom}}%
}{%
- \BuildVueCubes{\useKV[VueCubes]{Angle}}{}%
+ \BuildVueCubes{\useKV[VueCubes]{Angle}}{}{\useKV[VueCubes]{Nom}}%
}%
}%
}%
@@ -100,11 +104,13 @@
\fi
}
-\NewDocumentCommand\BuildVueCubes{m m}{%
+\NewDocumentCommand\BuildVueCubes{m m m}{%
\ifluatex
\mplibforcehmode
\xdef\PfCVueCubeNom{\useKV[VueCubes]{Nom}}%
\begin{mplibcode}[\PfCVueCubeNom]
+ string NomRetenu;
+ NomRetenu=str #3;
input PfCSolid;
intensite:=1.5;
@@ -176,6 +182,9 @@
endfor;
fi;
+ write decimal(TotalObj) to "PfCNombreCubes"&NomRetenu&".tex";%
+ write EOF to "PfCNombreCubes"&NomRetenu&".tex";%
+
% Pour la fleche
path Fleche;
color A[];
diff --git a/Master/texmf-dist/tex/latex/profcollege/PfCYohaku.tex b/Master/texmf-dist/tex/latex/profcollege/PfCYohaku.tex
index c710834b934..942e66c111c 100644
--- a/Master/texmf-dist/tex/latex/profcollege/PfCYohaku.tex
+++ b/Master/texmf-dist/tex/latex/profcollege/PfCYohaku.tex
@@ -1,6 +1,10 @@
%%%
% Yohaku
%%%
+\def\filedateYohaku{2024/08/04}%
+\def\fileversionYohaku{0.1}%
+\message{-- \filedateYohaku\space v\fileversionYohaku}%
+%
\setKVdefault[Yohaku]{Taille=2,Largeur=1cm,Hauteur=1cm,Addition,Multiplication=false,Perso=false,Limite=50,Relatif=false,Negatif=false,Pair=false,Impair=false,Premier=false,Solution=false,Visible=false,Bordure=false,CouleurResultat=gray!15,Ligne=0,Colonne=0,PasL=0,PasC=0,CouleurZone=gray!25}%
\defKV[Yohaku]{Case=\setKV[Yohaku]{Visible}}%
diff --git a/Master/texmf-dist/tex/latex/profcollege/ProfCollege.sty b/Master/texmf-dist/tex/latex/profcollege/ProfCollege.sty
index ca3b52ba9ad..df794a8d866 100644
--- a/Master/texmf-dist/tex/latex/profcollege/ProfCollege.sty
+++ b/Master/texmf-dist/tex/latex/profcollege/ProfCollege.sty
@@ -2,9 +2,9 @@
% licence : Released under the LaTeX Project Public License v1.3c
% or later, see http://www.latex-project.org/lppl.txtf
\NeedsTeXFormat{LaTeX2e}%
-\def\filedate{2024/05/18}%
+\def\filedate{2024/09/04}%
\let\PfCfiledate\filedate%
-\def\fileversion{0.99-A-f}%
+\def\fileversion{0.99-A-j}%
\let\PfCfileversion\fileversion%
\ProvidesPackage{ProfCollege}[\filedate\space v\fileversion\space Aide pour utiliser LaTeX au college]%
@@ -124,7 +124,6 @@
\RequirePackage{listofitems}%
\RequirePackage{datatool}%
\RequirePackage{multido}%
-
\RequirePackage{xlop}%
\RequirePackage{tcolorbox}%
@@ -341,6 +340,37 @@
\fi
}%
+\newlength{\PfCLongueurBarreHor}
+\setKVdefault[PfCLigneCompleter]{Ecart=20pt,Couleurs=false}%
+\defKV[PfCLigneCompleter]{Couleur=\setKV[PfCLigneCompleter]{Couleurs}}%
+
+\NewDocumentCommand\ListeACompleter{som}{%
+ \useKVdefault[PfCLigneCompleter]%
+ \setKV[PfCLigneCompleter]{#2}%
+ \ifboolKV[PfCLigneCompleter]{Couleurs}{\colorlet{PfCLC}{\useKV[PfCLigneCompleter]{Couleur}}}{}%
+ \setlength{\PfCLongueurBarreHor}{\useKV[PfCLigneCompleter]{Ecart}}%
+ \setsepchar{,}\reademptyitems%
+ \readlist*\ListeTiti{#3}%
+ \foreachitem\compteur\in\ListeTiti{%
+ \itemtomacro\ListeTiti[\compteurcnt]\PfCCaractere%
+ \StrChar{\PfCCaractere}{1}[\RetiensElmt]%
+ \IfStrEq{\RetiensElmt}{!}{%
+ \IfBooleanTF{#1}{%
+ \ifboolKV[PfCLigneCompleter]{Couleurs}{\colorlet{saved}{.}\color{PfCLC}}{}\StrGobbleLeft{\PfCCaractere}{1}\ifboolKV[PfCLigneCompleter]{Couleurs}{\color{saved}}{}%
+ }{%
+ \hbox to \PfCLongueurBarreHor{\hrulefill}%
+ }
+ }{%
+ \ListeTiti[\compteurcnt]%
+ }%
+ \ifnum\compteurcnt=\ListeTitilen\relax%
+ .%
+ \else%
+ ,
+ \fi%
+ }%
+}%
+
%https://tex.stackexchange.com/questions/128991/frac-or-inference-rule-with-dotted-line
\newcommand\PfCfrac[2]{%
\ooalign{$\genfrac{}{}{0pt}{0}{#1}{#2}$\cr\PfCdotover\cr}%
@@ -637,18 +667,18 @@
\tikzset{face/.style={shape=circle,minimum size=4ex,shading=radial,outer sep=0pt, inner color=white!50!yellow,outer color= yellow!70!orange}}
\newcommand\emoticon[2][]{%
-\scalebox{.5}{\begin{tikzpicture}
-\node[face,#1,draw,thick] (emoticon) {};
+\scalebox{.5}{\begin{tikzpicture}%
+\node[face,#1,draw,thick] (emoticon) {};%
%% The eyes are fixed.
\draw[fill=white] (-1ex,0ex) ..controls (-0.5ex,0.2ex)and(0.5ex,0.2ex)..(1ex,0.0ex) ..controls ( 1.5ex,1.5ex)and( 0.2ex,1.7ex)..(0ex,0.4ex) ..controls (-0.2ex,1.7ex)and(-1.5ex,1.5ex)..(-1ex,0ex)--cycle;
#2%
\end{tikzpicture}}%
-}
+}%
-\newcommand\pupils{
+\newcommand\pupils{%
%% standard pupils
-\fill[shift={(0.5ex,0.5ex)},rotate=80] (0,0) ellipse (0.3ex and 0.15ex);
-\fill[shift={(-0.5ex,0.5ex)},rotate=100] (0,0) ellipse (0.3ex and 0.15ex);}
+\fill[shift={(0.5ex,0.5ex)},rotate=80] (0,0) ellipse (0.3ex and 0.15ex);%
+\fill[shift={(-0.5ex,0.5ex)},rotate=100] (0,0) ellipse (0.3ex and 0.15ex);}%
\def\RKsmallsmile{%
\emoticon{%
@@ -656,14 +686,14 @@
%% mouth
\draw[thick] (-0.5ex,-1ex)..controls (-0.25ex,-1.25ex)and(0.25ex,-1.25ex)..(0.5ex,-1ex);
}%\emoticon
-}
+}%
\def\RKsmile{%
\emoticon{%
\pupils
\draw[thick] (-1ex,-1ex)..controls (-0.5ex,-1.5ex)and(0.5ex,-1.5ex)..(1ex,-1ex);
}%\emoticon
-}
+}%
\def\RKbigsmile{%
\emoticon{%
@@ -671,7 +701,7 @@
%% mouth
\draw[thick] (-1.5ex,-0.5ex)..controls (-0.7ex,-1.7ex)and(0.7ex,-1.7ex)..(1.5ex,-0.5ex);
}%\emoticon
-}
+}%
\def\RKsad{%
\emoticon{%
@@ -681,7 +711,7 @@
%% mouth
\draw[thick] (-1ex,-1ex)..controls(-0.5ex,-0.5ex)and(0.5ex,-0.5ex)..(1ex,-1ex);
}%\emoticon
-}
+}%
\def\RKneutral{%
\emoticon{%
@@ -691,7 +721,7 @@
%% mouth
\draw[thick] (-0.5ex,-1ex)--(0.5ex,-1ex);
}%\emoticon
-}
+}%
\def\RKconfused{%
\emoticon{%
@@ -716,19 +746,19 @@
(-1.00ex,1.00ex)--(-1.20ex,1.10ex)
(-0.35ex,1.15ex)--(-0.25ex,1.35ex);
}%\emoticon
-}
+}%
\def\RKangry{%
\emoticon{%
%% pupils
-\fill[shift={( 0.5ex,0.5ex)},rotate=90] (0,0) ellipse (0.3ex and 0.15ex);
-\fill[shift={(-0.5ex,0.5ex)},rotate=90] (0,0) ellipse (0.3ex and 0.15ex);
+\fill[shift={( 0.5ex,0.5ex)},rotate=90] (0,0) ellipse (0.3ex and 0.15ex);%
+\fill[shift={(-0.5ex,0.5ex)},rotate=90] (0,0) ellipse (0.3ex and 0.15ex);%
%% mouth
-\draw[thick] (-1ex,-1ex)..controls(-0.5ex,-0.5ex)and(0.5ex,-0.5ex)..(1ex,-1ex);
+\draw[thick] (-1ex,-1ex)..controls(-0.5ex,-0.5ex)and(0.5ex,-0.5ex)..(1ex,-1ex);%
%% eyebrows
-\draw[thick] (0.2ex,1.15ex)--(0.5ex,1.6ex)(-0.2ex,1.15ex)--(-0.5ex,1.6ex);
+\draw[thick] (0.2ex,1.15ex)--(0.5ex,1.6ex)(-0.2ex,1.15ex)--(-0.5ex,1.6ex);%
}%\emoticon
-}
+}%
\def\RKlookup{%
\emoticon{%
@@ -826,6 +856,11 @@
\def\PfCSymbolTimes{\times}%
\def\PfCSymbolDiv{\div}%
+\input{PfCCheque}
+\input{PfCCalculsDetailles}
+\input{PfCTableauDoubleEntree}
+\input{PfCUrneProba}
+\input{PfCProbaFrequence}
\input{PfCVisualisationMulDeci}
\input{PfCArbreChiffre}
\input{PfCAssemblagesSolides}
@@ -971,4 +1006,8 @@
\input{PfCDomino}
\input{PfCProgrammeCalcul}
\input{PfCPapiers}
-\input{PfCScratch} \ No newline at end of file
+\input{PfCScratch}
+
+\RequirePackage{PfCInfixRPN}
+
+\input{PfCArbreCalcul} \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty b/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty
index c13d91729ab..238b07908d1 100644
--- a/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty
+++ b/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty
@@ -1,9 +1,15 @@
-% Author : C. Pierquet
-% licence : Released under the LaTeX Project Public License v1.3c
-% or later, see http://www.latex-project.org/lppl.txtf
+% Author.............: C. Pierquet
+% licence............: Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf
+% licence cliparts...: CC0 from openclipart
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{ProfLycee}[2024/05/31 3.04c Aide pour l'utilisation de LaTeX en lycee]
+\ProvidesPackage{ProfLycee}[2024/09/27 3.05b Aide pour l'utilisation de LaTeX en lycee]
+% 3.05b Mise en standby des commandes liées à minted (attente de compatibilité complète avec tcblisting) + Clé [ValeursTan] pour les cercles trigo
+% 3.05a Conversions entre bases + vectorial clipart (de openclipart)
+% 3.04g Ajout de clés pour les arbres de probas
+% 3.04f Ajout de clés pour la coloration des nombres et Piton
+% 3.04e Commandes prix/angle/pourcent en lien avec siunitx
+% 3.04d PitonInputFile et styles
% 3.04c Max et min pour des fonctions
% 3.04b Travail sur la loi binomiale + Ajout de clés pour les environnements graphiques
% 3.04a Améliorations de la partie graphiques tikz (intégrales, axes) + Factorielle
@@ -167,15 +173,15 @@
\input{proflycee-tools-espace.tex}
}%
{}%
- \IfSubStr{#1}{minted}%
- {%
- \if@build
- \RequirePackage[outputdir=build]{minted} %on charge minted avec le répertoire build
- \fi
- \tcbuselibrary{minted} %on charge minted via la librairie tcbox
- \input{proflycee-tools-minted.tex}
- }%
- {}%
+ % \IfSubStr{#1}{minted}%
+ % {%
+ % \if@build
+ % \RequirePackage[outputdir=build]{minted} %on charge minted avec le répertoire build
+ % \fi
+ % \tcbuselibrary{minted} %on charge minted via la librairie tcbox
+ % \input{proflycee-tools-minted.tex}
+ % }%
+ % {}%
\IfSubStr{#1}{pythontex}%
{%
\RequirePackage[gobble=auto]{pythontex}
@@ -232,5 +238,7 @@
\input{proflycee-tools-competences.tex}
%%------Examens
\input{proflycee-tools-exams.tex}
+%%------Cliparts
+\input{proflycee-tools-cliparts.tex}
\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-bronze-cup.pdf b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-bronze-cup.pdf
new file mode 100644
index 00000000000..3ca7af1aacd
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-bronze-cup.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-bronze-medal-flat.pdf b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-bronze-medal-flat.pdf
new file mode 100644
index 00000000000..83f7d914898
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-bronze-medal-flat.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-bronze-medal.pdf b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-bronze-medal.pdf
new file mode 100644
index 00000000000..0e4712cece9
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-bronze-medal.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-checked.pdf b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-checked.pdf
new file mode 100644
index 00000000000..238d76df4ef
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-checked.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-crossed.pdf b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-crossed.pdf
new file mode 100644
index 00000000000..94f04537b2d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-crossed.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-gold-cup.pdf b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-gold-cup.pdf
new file mode 100644
index 00000000000..e1b1a5fb464
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-gold-cup.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-gold-medal-flat.pdf b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-gold-medal-flat.pdf
new file mode 100644
index 00000000000..424fc345ab1
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-gold-medal-flat.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-gold-medal.pdf b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-gold-medal.pdf
new file mode 100644
index 00000000000..3246c386930
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-gold-medal.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-mouse-center.pdf b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-mouse-center.pdf
new file mode 100644
index 00000000000..bc036614218
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-mouse-center.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-mouse-left.pdf b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-mouse-left.pdf
new file mode 100644
index 00000000000..40f843b8643
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-mouse-left.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-mouse-right.pdf b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-mouse-right.pdf
new file mode 100644
index 00000000000..323710e0976
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-mouse-right.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-mouse.pdf b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-mouse.pdf
new file mode 100644
index 00000000000..b8e69cd5243
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-mouse.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-notok.pdf b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-notok.pdf
new file mode 100644
index 00000000000..0fed35ca1eb
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-notok.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-ok.pdf b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-ok.pdf
new file mode 100644
index 00000000000..43cac49c385
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-ok.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-silver-cup.pdf b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-silver-cup.pdf
new file mode 100644
index 00000000000..9ba7602d269
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-silver-cup.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-silver-medal-flat.pdf b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-silver-medal-flat.pdf
new file mode 100644
index 00000000000..70d0ca8d8bc
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-silver-medal-flat.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-silver-medal.pdf b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-silver-medal.pdf
new file mode 100644
index 00000000000..ced83f9d17f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/pflcliparts/pfl-silver-medal.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-arithm.tex b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-arithm.tex
index a021fea9374..a2008c15df8 100644
--- a/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-arithm.tex
+++ b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-arithm.tex
@@ -1902,4 +1902,65 @@
}%
}
+%====CONVERSIONS ENTRE BASES
+\ExplSyntaxOn
+%commande interne (stockage ou non)
+\NewDocumentCommand\pflbasetobase{ m m m }{%
+ %1=init
+ %2=fin
+ %3=nb
+ \ifnum#2=10%
+ \int_from_base:nn {#3}{#1}%
+ \else%
+ \int_to_Base:nn {\int_from_base:nn {#3}{#1}}{#2}%
+ \fi%
+}
+
+\NewDocumentCommand\tmpresconvbases{ m m m O{\tmpconvres} }{%
+ %1=init
+ %2=fin
+ %3=nb
+ \ifnum#2=10%
+ \xdef#4{\int_from_base:nn {#3}{#1}}%
+ \else%
+ \xdef#4{\int_to_Base:nn {\int_from_base:nn {#3}{#1}}{#2}}%
+ \fi%
+}
+\ExplSyntaxOff
+
+%commande interne split adaptée de https://tex.stackexchange.com/questions/171007/split-a-character-string-n-by-n // unbonpetit // CC BY-SA 3.0
+\NewDocumentCommand\tmpStrSplit{ O{\,} m m O{\tmpsplitres} }{%
+ %1=espace / %2=nb caract / %3=chaîne / %4=macro de stockage
+ \xdef\splitstring{#3}\let\splitresult\empty%
+ \loop%
+ \StrLen\splitstring[\tempa]%
+ \StrSplit\splitstring{\number\numexpr\tempa-#2}\splitstring\tempb%
+ \xdef\splitresult{\unless\ifx\splitstring\empty#1\fi\tempb\splitresult}%
+ \unless\ifx\splitstring\empty%
+ \repeat%
+ \xdef#4{\splitresult}%
+}
+
+\NewDocumentCommand\ConversionEntreBases{ s O{\,} m m }{%
+ %calculs internes
+ \StrCut{#3}{->}{\tmpbaseinit}{\tmpbasefin}%
+ \tmpresconvbases{\tmpbaseinit}{\tmpbasefin}{#4}%\tmpconvres
+ %affichage
+ \ensuremath{%
+ \ifnum\tmpbaseinit=2%
+ \tmpStrSplit{4}{#4}%
+ {\tmpsplitres}\IfBooleanT{#1}{_{\tmpbaseinit}}%
+ \else%
+ {#4}\IfBooleanT{#1}{_{\tmpbaseinit}}%
+ \fi%
+ =%
+ \ifnum\tmpbasefin=2%
+ \tmpStrSplit[#2]{4}{\tmpconvres}%
+ {\tmpsplitres}\IfBooleanT{#1}{_{\tmpbasefin}}%
+ \else%
+ {\tmpconvres}\IfBooleanT{#1}{_{\tmpbasefin}}%
+ \fi%
+ }%
+}
+
\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-cliparts.tex b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-cliparts.tex
new file mode 100644
index 00000000000..13645695a7d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-cliparts.tex
@@ -0,0 +1,126 @@
+% proflycee-tools-cliparts.tex
+% Copyright 2024 Cédric Pierquet
+% Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txt
+% logos from CC0 opencliparts (users Firkin & Juhele & qubodup & TzeenieWheenie & jetxee)
+
+%====DIMENSIONS
+\newlength{\tmpcharacterheightinline}
+\newlength{\tmpcharacterdepthinline}
+
+%====MACRO PRINCIPALE
+\NewDocumentCommand\InsererClipart{ s O{} m }{%
+ \IfBooleanTF{#1}%
+ {%
+ \IfFileExists{pfl-#3.pdf}{\includegraphics[#2]{pfl-#3.pdf}}{}%
+ }%
+ {%
+ \settototalheight{\tmpcharacterheightinline}{\hbox{AZERTYUIOPQSDFGHJKLMWXCVBNazertyuiopqsdfghjklmwxcvbn}}%
+ \settodepth{\tmpcharacterdepthinline}{\hbox{AZERTYUIOPQSDFGHJKLMWXCVBNazertyuiopqsdfghjklmwxcvbn}}%
+ \IfFileExists{pfl-#3.pdf}{\raisebox{-\tmpcharacterdepthinline}{\includegraphics[height=\tmpcharacterheightinline]{pfl-#3.pdf}}}{}%
+ }%
+}
+
+%====ALIASES
+\NewDocumentCommand\pflimgcoupeb{ s O{} }{%
+ \IfBooleanTF{#1}%
+ {\InsererClipart*[#2]{bronze-cup}}%
+ {\InsererClipart{bronze-cup}}%
+}
+
+\NewDocumentCommand\pflimgmedb{ s O{} }{%
+ \IfBooleanTF{#1}%
+ {\InsererClipart*[#2]{bronze-medal}}%
+ {\InsererClipart{bronze-medal}}%
+}
+
+\NewDocumentCommand\pflimgmedbp{ s O{} }{%
+ \IfBooleanTF{#1}%
+ {\InsererClipart*[#2]{bronze-medal-flat}}%
+ {\InsererClipart{bronze-medal-flat}}%
+}
+
+\NewDocumentCommand\pflimgverif{ s O{} }{%
+ \IfBooleanTF{#1}%
+ {\InsererClipart*[#2]{checked}}%
+ {\InsererClipart{checked}}%
+}
+
+\NewDocumentCommand\pflimgnonverif{ s O{} }{%
+ \IfBooleanTF{#1}%
+ {\InsererClipart*[#2]{crossed}}%
+ {\InsererClipart{crossed}}%
+}
+
+\NewDocumentCommand\pflimgcoupeo{ s O{} }{%
+ \IfBooleanTF{#1}%
+ {\InsererClipart*[#2]{gold-cup}}%
+ {\InsererClipart{gold-cup}}%
+}
+
+\NewDocumentCommand\pflimgmedo{ s O{} }{%
+ \IfBooleanTF{#1}%
+ {\InsererClipart*[#2]{gold-medal}}%
+ {\InsererClipart{gold-medal}}%
+}
+
+\NewDocumentCommand\pflimgmedop{ s O{} }{%
+ \IfBooleanTF{#1}%
+ {\InsererClipart*[#2]{gold-medal-flat}}%
+ {\InsererClipart{gold-medal-flat}}%
+}
+
+\NewDocumentCommand\pflimgsouris{ s O{} }{%
+ \IfBooleanTF{#1}%
+ {\InsererClipart*[#2]{mouse}}%
+ {\InsererClipart{mouse}}%
+}
+
+\NewDocumentCommand\pflimgsourisg{ s O{} }{%
+ \IfBooleanTF{#1}%
+ {\InsererClipart*[#2]{mouse-left}}%
+ {\InsererClipart{mouse-left}}%
+}
+
+\NewDocumentCommand\pflimgsourisc{ s O{} }{%
+ \IfBooleanTF{#1}%
+ {\InsererClipart*[#2]{mouse-center}}%
+ {\InsererClipart{mouse-center}}%
+}
+
+\NewDocumentCommand\pflimgsourisd{ s O{} }{%
+ \IfBooleanTF{#1}%
+ {\InsererClipart*[#2]{mouse-right}}%
+ {\InsererClipart{mouse-right}}%
+}
+
+\NewDocumentCommand\pflimgko{ s O{} }{%
+ \IfBooleanTF{#1}%
+ {\InsererClipart*[#2]{notok}}%
+ {\InsererClipart{notok}}%
+}
+
+\NewDocumentCommand\pflimgok{ s O{} }{%
+ \IfBooleanTF{#1}%
+ {\InsererClipart*[#2]{ok}}%
+ {\InsererClipart{ok}}%
+}
+
+\NewDocumentCommand\pflimgcoupea{ s O{} }{%
+ \IfBooleanTF{#1}%
+ {\InsererClipart*[#2]{silver-cup}}%
+ {\InsererClipart{silver-cup}}%
+}
+
+\NewDocumentCommand\pflimgmeda{ s O{} }{%
+ \IfBooleanTF{#1}%
+ {\InsererClipart*[#2]{silver-medal}}%
+ {\InsererClipart{silver-medal}}%
+}
+
+\NewDocumentCommand\pflimgmedap{ s O{} }{%
+ \IfBooleanTF{#1}%
+ {\InsererClipart*[#2]{silver-medal-flat}}%
+ {\InsererClipart{silver-medal-flat}}%
+}
+
+\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-ecritures.tex b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-ecritures.tex
index 0a1555c4e96..f524c41cf31 100644
--- a/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-ecritures.tex
+++ b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-ecritures.tex
@@ -10,6 +10,39 @@
\RequirePackage{mleftright} %pour une meilleure gestion des espacements avec \left \right :-)
%\RequirePackage{mathrsfs}%pour \mathscr (à voir...)
+%===UNITÉS
+
+\NewDocumentCommand\pflprix{ o m }{%
+ \IfValueTF{#1}%
+ {%
+ \num[round-mode=places,round-precision=#1]{#2}\,\text{€}%
+ }%
+ {%
+ \num{#2}\,\text{€}%
+ }%
+}
+
+\NewDocumentCommand\pflangle{ o m }{%
+ \IfValueTF{#1}%
+ {%
+ \num[round-mode=places,round-precision=#1]{#2}\text{\textdegree}%
+ }%
+ {%
+ \num{#2}\text{\textdegree}%
+ }%
+}
+
+\NewDocumentCommand\pflpcent{ o m }{%
+ \IfValueTF{#1}%
+ {%
+ \num[round-mode=places,round-precision=#1]{#2}\,\%%
+ }%
+ {%
+ \num{#2}\,\%%
+ }%
+}
+
+
%===ENSEMBLES CLASSIQUES
\ifthenelse{\isundefined{\N}}%
{%
diff --git a/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-minted.tex b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-minted.tex
index af4aebf3846..42b23be551e 100644
--- a/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-minted.tex
+++ b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-minted.tex
@@ -2,6 +2,7 @@
% Copyright 2023-2024 Cédric Pierquet
% Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txt
+%3.05b En standy pour le moment...
%3.00g Modif mineure pour la marge gauche
%2.7.5 Argument optionnel pour les numéros de lignes + changement déclaration environnements
%2.7.3 Correction de la couleur des bordures
diff --git a/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-piton.tex b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-piton.tex
index 418c5aa8cca..52ef7389550 100644
--- a/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-piton.tex
+++ b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-piton.tex
@@ -2,6 +2,8 @@
% Copyright 2023-2024 Cédric Pierquet
% Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txt
+%3.04f Ajout de clés pour la coloration des nombres et Piton
+%3.04d PitonInputFile et styles, pour compatibilité pfm
%3.03c Thonny via piton + modification clé gobble ?
%3.01f PseudoCode via piton (?)
%3.01e Correction du comportement de la console repl piton/pyluatex
@@ -41,7 +43,7 @@
BarreTitre=true,%
Titre={{\scriptsize\faCode}~~Code Python},%
EspacementV=0.5\baselineskip,%
- CouleurNombres=orange
+ CouleurNombres={orange!75!black}
}
%==Style Moderne
@@ -159,7 +161,7 @@
\useKVdefault[envpiton]%
\setKV[envpiton]{#1}% on paramètres les nouvelles clés et on les simplifie
%------les styles piton
- \SetPitonStyle{ Number = \color{\CODPITcolnb} }
+ \SetPitonStyle[Python]{ Number = \color{\CODPITcolnb} }
\ifboolKV[envpiton]{Lignes}%si lignes=true
{\PitonOptions{left-margin=0.75em,line-numbers={skip-empty-lines=false,label-empty-lines=true,#3}}}%left-margin=auto,
{}%
@@ -220,6 +222,57 @@
\endtcolorbox%
}
+%inputfile
+\NewDocumentCommand\CodePitonFichier{ O{} m D<>{} }{%
+ {\tcbset{reset}
+ \useKVdefault[envpiton]%
+ \setKV[envpiton]{#1}% on paramètres les nouvelles clés et on les simplifie
+ %------les styles piton
+ \SetPitonStyle[Python]{ Number = \color{\CODPITcolnb} }
+ \ifboolKV[envpiton]{Lignes}%si lignes=true
+ {\PitonOptions{left-margin=0.75em,line-numbers,line-numbers={skip-empty-lines=false,label-empty-lines=true,#3}}}%left-margin=auto,
+ {}%
+ \PitonOptions{break-lines,indent-broken-lines,continuation-symbol={\;}}%,numbers-sep=0.65em}%language=Python}
+ %------les styles tcbox
+ \IfEq{\CODPITstyle}{Moderne}%style Moderne (défaut)
+ {%
+ \tcbset{cadre/.style={}}
+ \tcbset{titre/.style={}}
+ \tcbset{stylebase/.style={stylepiton,colframe=CouleurVertForet,colback=CouleurVertForet!5,width=\CODPITlargeur,fontupper=\CODPITfonte,fontlower=\CODPITfonte,\CODPITalign,leftupper=0.75em}}
+ \ifboolKV[envpiton]{Filigrane}%si filigrane
+ {\tcbset{filigrane/.style={watermark text={\faPython},watermark opacity=0.175,watermark zoom=0.50}}}%
+ {\tcbset{filigrane/.style={}}}%
+ }
+ {}%
+ \IfEq{\CODPITstyle}{Classique}%style Classique
+ {%
+ \ifboolKV[envpiton]{Lignes}%si lignes=true
+ {\tcbset{stylebase/.style={thonnystylelineos,leftupper=0.75em,width=\CODPITlargeur,colframe=darkgray!50!black,fontupper=\CODPITfonte,fontlower=\CODPITfonte,\CODPITalign}}}%
+ {\tcbset{stylebase/.style={thonnystyle,leftupper=0.4em,width=\CODPITlargeur,colframe=darkgray!50!black,fontupper=\CODPITfonte,fontlower=\CODPITfonte,\CODPITalign}}}%
+ \ifboolKV[envpiton]{Filigrane}%si filigrane
+ {\tcbset{filigrane/.style={watermark text={\faPython},watermark opacity=0.25,watermark zoom=0.50}}}%
+ {\tcbset{filigrane/.style={}}}%
+ \ifboolKV[envpiton]{BarreTitre}%
+ {%
+ \ifboolKV[envpiton]{Cadre}
+ {\tcbset{cadre/.style={}}}%
+ {\tcbset{cadre/.style={boxrule=0pt,frame hidden}}}%
+ \tcbset{titre/.style={lefttitle=0.4em,title={\CODPITtitre},fonttitle=\bfseries\footnotesize\sffamily,colbacktitle=darkgray!50!black}}
+ }%
+ {%
+ \tcbset{titre/.style={notitle}}
+ \ifboolKV[envpiton]{Cadre}
+ {\tcbset{cadre/.style={}}}
+ {\tcbset{cadre/.style={boxrule=0pt,frame hidden}}}
+ }
+ }
+ {}%
+ %on crée la boîte
+ \tcolorbox[stylebase,filigrane,cadre,titre]
+ \PitonInputFile{#2}
+ \endtcolorbox}%
+}
+
%piton >= 2.4
\NewPitonEnvironment{PseudoCodePiton}{ O{} m D<>{} }%
{%
@@ -317,6 +370,86 @@
\endtcolorbox%
}
+%--inputfile
+\NewDocumentCommand\PseudoCodePitonFichier{ O{} m D<>{} }{%
+ {\tcbset{reset}
+ \useKVdefault[envpcpiton]%
+ \setKV[envpcpiton]{#1}% on paramètres les nouvelles clés et on les simplifie
+ %------les styles piton
+ \ifboolKV[envpcpiton]{Lignes}%si lignes=true
+ {\PitonOptions{left-margin=0.75em,all-line-numbers}}%left-margin=auto,
+ {}%
+ \PitonOptions{break-lines,indent-broken-lines,language=minimal,continuation-symbol={\;}}%,numbers-sep=0.65em}%
+ \SetPitonStyle{ Number = }
+ \ifboolKV[envpcpiton]{Couleurs}%
+ {%
+ \SetPitonIdentifier[minimal]{Algorithme,Fonction,Début,Paramètre,Paramètres,Faire,Fin,Si,Pour,Tant,Que,que,alors,Alors,Sinon,SinonSi,FinSi,FinPour,FinTantQue,TantQue,Variable,Variables,Procédure}{\color{MotsClesPseudoCodeA}}
+ \SetPitonIdentifier[minimal]{Afficher,Renvoyer,Saisir}{\color{MotsClesPseudoCodeB}}
+ % \PitonOptions{
+ % identifiers =
+ % {
+ % names = {Algorithme,Fonction,Début,Paramètre,Paramètres,allant,Faire,Fin,Si,Pour,Tant,Que,que,alors,Alors,Sinon,SinonSi,FinSi,FinPour,FinTantQue,TantQue,Variable,Variables,Procédure},
+ % style = \color{MotsClesPseudoCodeA}
+ % } ,
+ % identifiers =
+ % {
+ % names = {Afficher,Retourner,Saisir},
+ % style = \color{MotsClesPseudoCodeB}
+ % }
+ % }%
+ \SetPitonStyle
+ {
+ String = \color{MotsClesPseudoCodeChaine},
+ Comment = \itshape\color{gray},
+ }
+ }%
+ {%
+ \SetPitonStyle
+ {
+ String = ,
+ Comment = \itshape
+ }
+ }%
+ %------les styles tcbox
+ \IfEq{\CODPITPCstyle}{Moderne}%style Moderne (défaut)
+ {%
+ \tcbset{cadre/.style={}}
+ \tcbset{titre/.style={}}
+ \tcbset{stylebase/.style={stylepcpiton,colframe=CouleurVertForet,colback=CouleurVertForet!5,width=\CODPITPClargeur,fontupper=\CODPITPCfonte,fontlower=\CODPITPCfonte,\CODPITPCalign,leftupper=0.75em}}
+ \ifboolKV[envpcpiton]{Filigrane}%si filigrane
+ {\tcbset{filigrane/.style={watermark text={\faCode},watermark opacity=0.175,watermark zoom=0.50}}}%
+ {\tcbset{filigrane/.style={}}}%
+ }
+ {}%
+ \IfEq{\CODPITPCstyle}{Classique}%style Classique
+ {%
+ \ifboolKV[envpcpiton]{Lignes}%si lignes=true
+ {\tcbset{stylebase/.style={thonnypcstylelineos,leftupper=0.75em,width=\CODPITPClargeur,colframe=darkgray!50!black,fontupper=\CODPITPCfonte,fontlower=\CODPITPCfonte,\CODPITPCalign}}}%
+ {\tcbset{stylebase/.style={thonnypcstyle,leftupper=0.4em,width=\CODPITPClargeur,colframe=darkgray!50!black,fontupper=\CODPITPCfonte,fontlower=\CODPITPCfonte,\CODPITPCalign}}}%
+ \ifboolKV[envpcpiton]{Filigrane}%si filigrane
+ {\tcbset{filigrane/.style={watermark text={\faCode},watermark opacity=0.25,watermark zoom=0.50}}}%
+ {\tcbset{filigrane/.style={}}}%
+ \ifboolKV[envpcpiton]{BarreTitre}%
+ {%
+ \ifboolKV[envpcpiton]{Cadre}
+ {\tcbset{cadre/.style={}}}%
+ {\tcbset{cadre/.style={boxrule=0pt,frame hidden}}}%
+ \tcbset{titre/.style={lefttitle=0.4em,title={\CODPITPCtitre},fonttitle=\bfseries\footnotesize\sffamily,colbacktitle=darkgray!50!black}}
+ }%
+ {%
+ \tcbset{titre/.style={notitle}}
+ \ifboolKV[envpcpiton]{Cadre}
+ {\tcbset{cadre/.style={}}}
+ {\tcbset{cadre/.style={boxrule=0pt,frame hidden}}}
+ }
+ }
+ {}%
+ %on crée la boîte
+ \tcolorbox[stylebase,filigrane,cadre,titre]
+ \PitonInputFile{#2}%
+ \endtcolorbox}%
+}
+
%======CONSOLE PYLUATEX (package à charger manuellement !!)
\tcbset{consolepylua/.style={%base de la boîte
enhanced,colback=white,colframe=CouleurVertForet,sharp corners,boxrule=1pt,%
@@ -345,12 +478,14 @@
\defKV[consolepyluatex]{%
Largeur=\def\ConsPyluaLarg{#1},
- Alignement=\def\ConsPyluaAlign{#1}
+ Alignement=\def\ConsPyluaAlign{#1},%
+ CouleurNombres=\def\CODPITcolnb{#1}
}
\setKVdefault[consolepyluatex]{%
Logo=true,%
Largeur=\linewidth,%
- Alignement=flush left
+ Alignement=flush left,%
+ CouleurNombres={orange!75!black}
}
\NewDocumentEnvironment{ConsolePiton}{ O{} D<>{} m }%
@@ -360,6 +495,7 @@
{
\restoreKV[consolepyluatex]% revenir au valeurs par défaut
\setKV[consolepyluatex]{#2}% lit les arguments optionnels
+ \SetPitonStyle[Python]{ Number = \color{\CODPITcolnb} }
\PitonOptions{width={\ConsPyluaLarg-5mm},break-lines,end-of-broken-line={\,},continuation-symbol={\;},#1}
%\PitonOptions{width={\ConsPyluaLarg-5mm},#1}
\PyLTVerbatimEnv
@@ -392,14 +528,16 @@
NomFichier=\def\thonnypitonfilename{#1},%
NomConsole=\def\thonnypitonshellname{#1},%
IntroConsole=\def\thonnypitonintroconsole{#1},%
- Gobble=\def\thonnypitongobble{#1}
+ Gobble=\def\thonnypitongobble{#1},%
+ CouleurNombres=\def\CODPITcolnb{#1}
}
\setKVdefault[pitonthonny]{%
NomFichier=script.py,%
NomConsole=console,%
IntroConsole={Python 3.11.6 /usr/bin/python},%
- Gobble={}
+ Gobble={},%
+ CouleurNombres={orange!75!black}
}
\NewPitonEnvironment{PitonThonnyEditor}{ D<>{} O{} m }%
@@ -407,6 +545,7 @@
\restoreKV[pitonthonny]%
\setKV[pitonthonny]{#1}%
\settowidth{\LargeurNumbersThonny}{\footnotesize\texttt{00}}%
+ \SetPitonStyle[Python]{Number=\color{\CODPITcolnb}}
\PitonOptions{left-margin=\LargeurNumbersThonny+1mm,line-numbers={skip-empty-lines=false,label-empty-lines=true},break-lines,indent-broken-lines,continuation-symbol={}}%
%--gestion du gobble
\IfStrEqCase{\thonnypitongobble}{%
@@ -428,6 +567,19 @@
\endtcolorbox%
}%
+\NewDocumentCommand\PitonThonnyEditorFichier{ D<>{} O{\linewidth} m }{%
+ {\restoreKV[pitonthonny]%
+ \setKV[pitonthonny]{#1}%
+ \settowidth{\LargeurNumbersThonny}{\footnotesize\texttt{00}}%
+ \SetPitonStyle[Python]{Number=\color{\CODPITcolnb}}
+ \PitonOptions{left-margin=\LargeurNumbersThonny+1mm,line-numbers,line-numbers={skip-empty-lines=false,label-empty-lines=true},break-lines,indent-broken-lines,continuation-symbol={}}%
+ \tcbset{tcbthonnypiton/.style={title=\vphantom{pf}\thonnypitonfilename\:\textcolor{gray}{×}},before skip=0.33\baselineskip,after skip=0.33\baselineskip}%
+ \tcolorbox[sharp corners=all,enhanced,size=small,width=#2,colframe=gray,colback=lightgray!5,tcbthonnypiton,fonttitle=\scriptsize\sffamily,coltitle=black,
+ attach boxed title to top left={yshift*=-0.4pt},fontupper=\footnotesize,bottom=-0.25mm,boxed title style={size=tight,colback=lightgray!15,sharp corners=all,boxrule=0.4pt,boxsep=2pt},boxrule=0.4pt,overlay={\begin{tcbclipinterior}\fill[draw=none,gray!25] ([shift={(0.4pt,0.4pt)}]frame.south west) rectangle ([shift={(\LargeurNumbersThonny+1mm+0.8pt,-0.4pt)}]frame.north west) ;\end{tcbclipinterior}}]%
+ \PitonInputFile{#3}
+ \endtcolorbox}%
+}%
+
\NewDocumentEnvironment{PitonThonnyConsole}{ D<>{} O{} m }%
{
\restoreKV[pitonthonny]%
@@ -435,6 +587,7 @@
\PyLTVerbatimEnv%
\tcbset{tcbthonnypitonconsole/.style={title=\vphantom{pf}\thonnypitonshellname\:\textcolor{gray}{×}},before skip=0.33\baselineskip,after skip=0.33\baselineskip}%
\noindent%
+ \SetPitonStyle[Python]{Number=\color{\CODPITcolnb}}
%--gestion du gobble
\IfStrEqCase{\thonnypitongobble}{%
{auto}{\PitonOptions{auto-gobble}}%
diff --git a/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-probas.tex b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-probas.tex
index 92cff337721..e80cbb4d4c6 100644
--- a/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-probas.tex
+++ b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-probas.tex
@@ -245,7 +245,10 @@
StyleTrait=\def\PLAPtypetrait{#1},%
EpaisseurTrait=\def\PLAPeptrait{#1},%
PositionProbas=\def\PLAPposprob{#1},%
- CouleurFond=\def\PLAPcolback{#1}
+ CouleurFond=\def\PLAPcolback{#1},%
+ CouleurTraits=\def\PLAPcolarc{#1},%
+ CouleurProbas=\def\PLAPcolprobas{#1},%
+ CouleurNoeuds=\def\PLAPcolnoeuds{#1}
}
\setKVdefault[PLTIKZARBRE]{%
@@ -260,7 +263,10 @@
StyleTrait={},%
EpaisseurTrait=semithick,%
PositionProbas={},%
- CouleurFond=white
+ CouleurFond=white,%
+ CouleurTraits=black,%
+ CouleurProbas=black,%
+ CouleurNoeuds=black
}
\NewDocumentCommand\IntPlaceProbasArbre{ m m m m m }{%
@@ -285,14 +291,14 @@
\readlist*\PLARBREDONNES{#2}%
\begin{tikzpicture}[x=\PLAPunite,y=\PLAPunite]
%styles
- \tikzstyle{noeud} = [font=\PLAPfont]
- \tikzstyle{probas}= [font=\PLAPfontproba]
+ \tikzstyle{noeud} = [font=\PLAPfont,text=\PLAPcolnoeuds]
+ \tikzstyle{probas}= [font=\PLAPfontproba,text=\PLAPcolprobas]
\ifboolKV[PLTIKZARBRE]{InclineProbas}
{\tikzstyle{PLetiquette}=[pos=0.525,sloped,inner sep=2pt,outer sep=2pt,rectangle]}
{\tikzstyle{PLetiquette}=[pos=0.525,inner sep=2pt,outer sep=2pt,rectangle]}
\ifboolKV[PLTIKZARBRE]{Fleche}
- {\tikzstyle{PLfleche}=[->,>=latex,\PLAPtypetrait,\PLAPeptrait]}
- {\tikzstyle{PLfleche}=[\PLAPtypetrait,\PLAPeptrait]}
+ {\tikzstyle{PLfleche}=[->,>=latex,\PLAPtypetrait,\PLAPeptrait,\PLAPcolarc]}
+ {\tikzstyle{PLfleche}=[\PLAPtypetrait,\PLAPeptrait,\PLAPcolarc]}
%arbre2x2
\IfEq{\PLAPtype}{2x2}
{%
@@ -576,14 +582,14 @@
\readlist*\PLARBREDONNES{#2}
\begin{tikzpicture}[x=\PLAPunite,y=\PLAPunite]
%styles
- \tikzstyle{noeud} = [font=\PLAPfont]
- \tikzstyle{probas}= [font=\PLAPfontproba]
+ \tikzstyle{noeud} = [font=\PLAPfont,text=\PLAPcolnoeuds]
+ \tikzstyle{probas}= [font=\PLAPfontproba,text=\PLAPcolprobas]
\ifboolKV[PLTIKZARBRE]{InclineProbas}
{\tikzstyle{PLetiquette}=[pos=0.525,sloped,inner sep=2pt,outer sep=2pt,rectangle]}
{\tikzstyle{PLetiquette}=[pos=0.525,inner sep=2pt,outer sep=2pt,rectangle]}
\ifboolKV[PLTIKZARBRE]{Fleche}
- {\tikzstyle{PLfleche}=[->,>=latex,\PLAPtypetrait,\PLAPeptrait]}
- {\tikzstyle{PLfleche}=[\PLAPtypetrait,\PLAPeptrait]}
+ {\tikzstyle{PLfleche}=[->,>=latex,\PLAPtypetrait,\PLAPeptrait,\PLAPcolarc]}
+ {\tikzstyle{PLfleche}=[\PLAPtypetrait,\PLAPeptrait,\PLAPcolarc]}
%arbre2x2
\IfEq{\PLAPtype}{2x2}
{%
diff --git a/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-stats.tex b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-stats.tex
index cd01f4393b3..89fe8945032 100644
--- a/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-stats.tex
+++ b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-stats.tex
@@ -75,6 +75,69 @@
\expandafter\def\csname\RegLinCoeffrd\endcsname{\fpeval{\csname\RegLinCoeffr\endcsname*\csname\RegLinCoeffr\endcsname}}
}
+\defKV[coeffregquad]{%
+ NomCoeffa=\def\RegQuadCoeffa{#1},%
+ NomCoeffb=\def\RegQuadCoeffb{#1},%
+ NomCoeffc=\def\RegQuadCoeffc{#1},%
+ NomXmin=\def\RegQuadCoeffXmin{#1},%
+ NomXmax=\def\RegQuadCoeffXmax{#1}
+}
+
+\setKVdefault[coeffregquad]{%
+ NomCoeffa=COEFFa,%
+ NomCoeffb=COEFFb,%
+ NomCoeffc=COEFFc,%
+ NomXmin=LXmin,%
+ NomXmax=LXmax
+}
+
+\newcommand\CalculsRegQuad[3][]{%
+ \useKVdefault[coeffregquad]%
+ \setKV[coeffregquad]{#1}% on paramètres les nouvelles clés et on les simplifie
+ %xmin et xmax
+ \expandafter\def\csname\RegQuadCoeffXmin\endcsname{\xintfloateval{min(#2)}}%
+ \expandafter\def\csname\RegQuadCoeffXmax\endcsname{\xintfloateval{max(#2)}}%
+ %listes des données
+ \def\xliste{#2}%
+ \def\yliste{#3}%
+ \readlist*\LX{\xliste}%
+ \readlist*\LY{\yliste}%
+ %taille des listes
+ \def\LNB{\inteval{\LXlen}}
+ %somme importantes
+ \xdef\LXSomme{0}%
+ \xdef\LXCSomme{0}%
+ \xdef\LYSomme{0}%
+ \xdef\LXXSomme{0}%
+ \xdef\LXYSomme{0}%
+ \xdef\LXXCSomme{0}%
+ \xdef\LXCXCSomme{0}%
+ \xdef\LXCYSomme{0}%
+ %calculs
+ \foreach \i in {1,2,...,\LNB}{%
+ \xdef\LXSomme{\xintfloateval{\LXSomme+\LX[\i]}}%
+ \xdef\LXCSomme{\xintfloateval{\LXCSomme+(\LX[\i])^2}}%
+ }%
+ \foreach \i in {1,2,...,\LNB}{%
+ \xdef\LYSomme{\xintfloateval{\LYSomme+\LY[\i]}}%
+ }%
+ \xdef\LXmoy{\xintfloateval{\LXSomme/\LNB}}%
+ \xdef\LYmoy{\xintfloateval{\LYSomme/\LNB}}%
+ \xdef\LXCmoy{\xintfloateval{\LXCSomme/\LNB}}%
+ %calculs suites
+ \foreach \i in {1,2,...,\LNB}{%
+ \xdef\LXXSomme{\xintfloateval{\LXXSomme+(\LX[\i]-\LXmoy)^2}}%
+ \xdef\LXYSomme{\xintfloateval{\LXYSomme+(\LX[\i]-\LXmoy)*(\LY[\i]-\LYmoy)}}%
+ \xdef\LXXCSomme{\xintfloateval{\LXXCSomme+(\LX[\i]-\LXmoy)*((\LX[\i])*(\LX[\i])-\LXCmoy)}}%
+ \xdef\LXCXCSomme{\xintfloateval{\LXCXCSomme+((\LX[\i])^2-\LXCmoy)^2}}%
+ \xdef\LXCYSomme{\xintfloateval{\LXCYSomme+((\LX[\i])^2-\LXCmoy)*(\LY[\i]-\LYmoy)}}%
+ }%
+ %COEFFS OK
+ \expandafter\def\csname\RegQuadCoeffb\endcsname{\xintfloateval{(\LXYSomme*\LXCXCSomme-\LXCYSomme*\LXXCSomme)/(\LXXSomme*\LXCXCSomme-(\LXXCSomme)^2)}}%
+ \expandafter\def\csname\RegQuadCoeffa\endcsname{\xintfloateval{(\LXCYSomme*\LXXSomme-\LXYSomme*\LXXCSomme)/(\LXXSomme*\LXCXCSomme-(\LXXCSomme)^2)}}%
+ \expandafter\def\csname\RegQuadCoeffc\endcsname{\xintfloateval{\LYmoy-\csname\RegQuadCoeffb\endcsname*\LXmoy-\csname\RegQuadCoeffa\endcsname*\LXCmoy}}%
+}
+
%pour un nuage en TiKz
\defKV[nuagereglin]{%
Couleur=\def\RegLinNuageCouleur{#1},%
diff --git a/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-trigo.tex b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-trigo.tex
index 6efa608f731..f47c9a33bfd 100644
--- a/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-trigo.tex
+++ b/Master/texmf-dist/tex/latex/proflycee/proflycee-tools-trigo.tex
@@ -35,7 +35,8 @@
Equationsin=false,%
cos=45,%
sin=30,%
- CouleurSol=blue
+ CouleurSol=blue,%
+ ValeursTan=false
}
\newcommand\CercleTrigo[1][]{%
@@ -43,6 +44,28 @@
\setKV[cercletrigo]{#1}
\tikzset{PLval/.style={inner sep=1pt,font=\PLcerclevaleurs,fill=\PLcerclefond}}
\tikzset{PLagl/.style={inner sep=1pt,font=\PLcercleangles,fill=\PLcerclefond}}
+ %tangente ?
+ \ifboolKV[cercletrigo]{ValeursTan}%
+ {%
+ \draw[\PLcerclethick,dotted,gray] (30:\PLcerclerayon)--({\PLcerclerayon},{sqrt(3)/3*\PLcerclerayon}) ;
+ \draw[\PLcerclethick,dotted,gray] (45:\PLcerclerayon)--({\PLcerclerayon},{\PLcerclerayon}) ;
+ \draw[\PLcerclethick,dotted,gray] (60:\PLcerclerayon)--({\PLcerclerayon},{sqrt(3)*\PLcerclerayon}) ;
+ \draw[\PLcerclethick,dotted,gray] (-30:\PLcerclerayon)--({\PLcerclerayon},{-sqrt(3)/3*\PLcerclerayon}) ;
+ \draw[\PLcerclethick,dotted,gray] (-45:\PLcerclerayon)--({\PLcerclerayon},{-\PLcerclerayon}) ;
+ \draw[\PLcerclethick,dotted,gray] (-60:\PLcerclerayon)--({\PLcerclerayon},{-sqrt(3)*\PLcerclerayon}) ;
+ \draw[\PLcerclethick] ({\PLcerclerayon},{-1.8*\PLcerclerayon}) -- ({\PLcerclerayon},{1.8*\PLcerclerayon}) ;
+ \ifboolKV[cercletrigo]{AffValeurs}
+ {%
+ \draw[] ([xshift=-2pt]{\PLcerclerayon},{\PLcerclerayon})--++(4pt,0) node[right=2pt,PLval] {$1$} ;
+ \draw[] ([xshift=-2pt]{\PLcerclerayon},{-\PLcerclerayon})--++(4pt,0) node[right=2pt,PLval] {$-1$} ;
+ \draw[] ([xshift=-2pt]{\PLcerclerayon},{sqrt(3)*\PLcerclerayon})--++(4pt,0) node[right=2pt,PLval] {$\sqrt{3}$} ;
+ \draw[] ([xshift=-2pt]{\PLcerclerayon},{-sqrt(3)*\PLcerclerayon})--++(4pt,0) node[right=2pt,PLval] {$-\sqrt{3}$} ;
+ \draw[] ([xshift=-2pt]{\PLcerclerayon},{sqrt(3)/3*\PLcerclerayon})--++(4pt,0) node[right=2pt,PLval] {$\tfrac{\sqrt{3}}{3}$} ;
+ \draw[] ([xshift=-2pt]{\PLcerclerayon},{-sqrt(3)/3*\PLcerclerayon})--++(4pt,0) node[right=2pt,PLval] {$-\tfrac{\sqrt{3}}{3}$} ;
+ }%
+ {}%
+ }%
+ {}%
%valeurs remarquables
\ifboolKV[cercletrigo]{AffAngles}
{%valeursdudessus
diff --git a/Master/texmf-dist/tex/latex/profmaquette/ProfMaquette.sty b/Master/texmf-dist/tex/latex/profmaquette/ProfMaquette.sty
index 9aa462bb76f..06a082376d5 100644
--- a/Master/texmf-dist/tex/latex/profmaquette/ProfMaquette.sty
+++ b/Master/texmf-dist/tex/latex/profmaquette/ProfMaquette.sty
@@ -2,20 +2,33 @@
% licence : Released under the LaTeX Project Public License v1.3c
% or later, see http://www.latex-project.org/lppl.txtf
\NeedsTeXFormat{LaTeX2e}%
-\def\filedate{2024/05/02}%
+\def\filedate{2024/09/17}%
\let\PfMfiledate\filedate%
-\def\fileversion{0.94}%
+\def\fileversion{0.99}%
\let\PfMfileversion\fileversion%
\ProvidesPackage{ProfMaquette}[\filedate\space v\fileversion\space Maquettage de documents]%
\newif\if@Dyslexie \@Dyslexiefalse
+\newif\if@CAN \@CANfalse
+\newif\if@Revision \@Revisionfalse
+\newif\if@AssembleCorrections \@AssembleCorrectionsfalse
+\newif\if@Personnel \@Personnelfalse
\DeclareOption{Dyslexie}{\@Dyslexietrue}
+\DeclareOption{CAN}{\@CANtrue}
+\DeclareOption{Revision}{\@Revisiontrue}
+\DeclareOption{AssembleCorrections}{\@AssembleCorrectionstrue}
+\DeclareOption{Personnel}{\@Personneltrue}
\ProcessOptions\relax
+
+\if@AssembleCorrections
+ \AddToHook{env/document/end}[AC]{\PfMAffichageTousCorriges}%
+\fi
+
% packages nécessaires
\RequirePackage{verbatim}%
-
+\RequirePackage{xintexpr}
\RequirePackage{calc}%
\RequirePackage{xlop}%
@@ -34,31 +47,33 @@
\RequirePackage{modulus}%
\RequirePackage{ragged2e}%
-
+\RequirePackage{fontawesome5}
\makeatletter
\gdef\PfMFontSize{\@ptsize}
%\gdef\PfMFontSize{\f@size}
\makeatother
%définition des clés
\RequirePackage{simplekv}%
-\setKVdefault[Boulot]{Dys=false,Taille=14,Cours=false,Base=false,BaseHTML=false,CAN=false,Fiche=false,DM=false,DS=false,IE=false,Kholle=false,RecapBrevet=false,PdT=false,Parcours=false,Contrat=false,FdR=false,ParcoursPerso=false,OlympiadesAPMEP=false,CorrigeInverse=false,CorrigeSeul=false,CorrigeApres=false,CorrigeFin=false,CorrigeAll=false,Brevet=false,BaremeComplet=false,BaremeGlobal=false,CorrectionColonnes=false,Epaisseur=0pt,VersSolution=false,AvecEntrainement=false,Small=false,Footnotesize=false,Scriptsize=false,AllDirect=false,AllPouce=false}%Les deux derniers pour essayer de mettre tous les exercices d'un même fichier en mode Reponse, en mode Indice. Pas implanté, pas testé
+\setKVdefault[Boulot]{Graine=1,Dys=false,Taille=14,Cours=false,Base=false,BaseHTML=false,CAN=false,Fiche=false,DM=false,DS=false,IE=false,Kholle=false,RecapBrevet=false,PdT=false,Parcours=false,Contrat=false,FdR=false,ParcoursPerso=false,OlympiadesAPMEP=false,LivreHeros=false,CorrigeInverse=false,CorrigeSeul=false,CorrigeApres=false,CorrigeFin=false,CorrigeAll=false,Brevet=false,BaremeComplet=false,BaremeGlobal=false,CorrectionColonnes=false,EntrainementColonnes=false,Epaisseur=0pt,EEpaisseur=0pt,ESansSaut=false,VersSolution=false,AvecEntrainement=false,Small=false,Footnotesize=false,Scriptsize=false,AllDirect=false,AllPouce=false,Input=false}%Les deux derniers pour essayer de mettre tous les exercices d'un même fichier en mode Reponse, en mode Indice. Pas implanté, pas testé
\defKV[Boulot]{Colonnes=\setKV[Boulot]{CorrectionColonnes}}%
-\setKVdefault[Cours]{Couleur=Crimson,Theme=Trace écrite,NomExercice=Exercice}%
+\defKV[Boulot]{EColonnes=\setKV[Boulot]{EntrainementColonnes}}%
+\setKVdefault[Cours]{Couleur=Crimson,Theme=Trace \'ecrite,NomExercice=Exercice}%
\setKVdefault[DM]{Numero=1,Date=\today,Classe={},Niveau=3,Code=\jobname}%
\setKVdefault[DS]{Numero=1,Date=\today,Classe={},Niveau=3,Code=\jobname,Calculatrice=false,Sujet=A}%
-\setKVdefault[Fiche]{Theme=Les nombres décimaux,Date=\today,Niveau=6,Classe={},Code={},NomExercice=Exercice,}%
-\setKVdefault[PdT]{Theme=Les nombres décimaux,Date=\today,Niveau=6,Classe={},Code={},NomExercice=Exercice}%
-\setKVdefault[FdR]{Theme=Les nombres décimaux,Date=\today,Niveau=6,Classe={},Code={},NomExercice=Exercice}%
-\setKVdefault[Parcours]{Theme=Les nombres décimaux,Date=\today,Niveau=6,Classe={},Code={},NomExercice=Exercice,Vertical=false}%
-\setKVdefault[Contrat]{Theme=Les nombres décimaux,Date=\today,Niveau=6,Classe={},Code={},NomExercice=Exercice}%
+\setKVdefault[Fiche]{Theme=Les nombres d\'ecimaux,Date=\today,Niveau=6,Classe={},Code={},NomExercice=Exercice,}%
+\setKVdefault[PdT]{Theme=Les nombres d\'ecimaux,Date=\today,Niveau=6,Classe={},Code={},NomExercice=Exercice}%
+\setKVdefault[FdR]{Theme=Les nombres d\'ecimaux,Date=\today,Niveau=6,Classe={},Code={},NomExercice=Exercice}%
+\setKVdefault[Parcours]{Theme=Les nombres d\'ecimaux,Date=\today,Niveau=6,Classe={},Code={},NomExercice=Exercice,Vertical=false,Plan=false,Court=false}%
+\setKVdefault[Contrat]{Theme=Les nombres d\'ecimaux,Date=\today,Niveau=6,Classe={},Code={},NomExercice=Exercice}%
+\setKVdefault[OlympiadesAPMEP]{Theme=Les nombres d\'ecimaux}%
\setKVdefault[ParcoursPerso]{Fichier={}}%
\setKVdefault[IE]{Nom=\'Evaluation,Sujets=false,Theme={},Numero=1,Date=\today,Classe={},Niveau=3,Code=\jobname,Calculatrice=false}%
\defKV[IE]{Sujet=\setKV[IE]{Sujets}}%
-\setKVdefault[RecapBrevet]{Theme=Les nombres décimaux,Date=\today,Code={},NomExercice=Exercice}%
-\setKVdefault[Kholle]{Sujet=1,Numero=1,Date=15,Niveau=TSI-1,Code=\jobname,Lieu=Lycée
+\setKVdefault[RecapBrevet]{Theme=Les nombres d\'ecimaux,Date=\today,Code={},NomExercice=Exercice}%
+\setKVdefault[Kholle]{Sujet=1,Numero=1,Date=15,Niveau=TSI-1,Code=\jobname,Lieu=Lyc\'ee
du Hainaut (Valenciennes),NomEleve=Albert Einstein,CR=false}%
\setKVdefault[CAN]{Date=\today,Niveau=6,Duree=9,CoefQ=0.4,CoefR=0.35,CoefJ=0.1}%
-\setKVdefault[ClesExercices]{NbQuestions=1,PasTitre=false,AffichageSource=false,BaremeTotal,BaremeDetaille=false,MotPoint=point,AffichageTitre=false,Calculatrice=true,Oral=false,Difficulte=0,AffichageCompetence=false,PasCorrige=false,Direct=false,Pouce=false,Parcours=false,Contrat=false,FdR=false,Routes=false,Stops=false,Background=white,Cadre=gray!50,Numerote,Ligne=false,Doublespacing=false,Onehalfspacing=false,Cadres=false,TitreSol=false,NonUtilise=false,Profile=false,PasEntrainement=false}%
+\setKVdefault[ClesExercices]{NbQuestions=1,PasTitre=false,AffichageSource=false,BaremeTotal,BaremeDetaille=false,MotPoint=point,AffichageTitre=false,Calculatrice=true,Oral=false,Difficulte=0,AffichageCompetence=false,PasCorrige=false,Direct=false,Pouce=false,Parcours=false,Contrat=false,FdR=false,Routes=false,Stops=false,Background=white,Cadre=gray!50,Numerote,Ligne=false,Doublespacing=false,Onehalfspacing=false,Cadres=false,Grilles=false,Cinq=false,Huit=false,TitreSol=false,NonUtilise=false,Profile=false,AEntretenir=false,Fragile=false,AvecIndications=false,ACompleter=false,Aide=0,Score=0,EchelleSeyes=8,Ajout={},TitreCorrige=Corrigé de l'exercice}%
\defKV[ClesExercices]{TitreSolution=\setKV[ClesExercices]{TitreSol}}%
\defKV[ClesExercices]{Source=\setKV[ClesExercices]{AffichageSource}}%
\defKV[ClesExercices]{Titre=\setKV[ClesExercices]{AffichageTitre}}%
@@ -69,18 +84,28 @@
\defKV[ClesExercices]{Stop=\setKV[ClesExercices]{Stops}}%
\defKV[ClesExercices]{Lignes=\setKV[ClesExercices]{Ligne}}%
\defKV[ClesExercices]{Encart=\setKV[ClesExercices]{Cadres}}%
+\defKV[ClesExercices]{CinqCinq=\setKV[ClesExercices]{Grilles}\setKV[ClesExercices]{Cinq}}%
+\defKV[ClesExercices]{Seyes=\setKV[ClesExercices]{Grilles}\setKV[ClesExercices]{Huit}}%
\def\PfMTexteEncart{Indique ton travail ci-dessous.}%
-\setKVdefault[SchemaParcours]{Colonnes=100,Rayon=2.5mm,Largeur=7.5mm,Couleur=LightSteelBlue,Csv=false}%
+\setKVdefault[SchemaParcours]{Colonnes=100,Rayon=2.5mm,Largeur=7.5mm,Couleur=gray!70}%,Csv=false}%
\setKVdefault[SchemaContrat]{Ecart=7mm,Rayon=2.5mm}%
-\setKVdefault[SchemaFdR]{Ecart=7mm,Colonnes=100,Rayon=2.5mm,Largeur=7.5mm,Couleur=LightSteelBlue,Csv=false}%
+\setKVdefault[SchemaFdR]{Ecart=7mm,Colonnes=100,Rayon=2.5mm,Largeur=7.5mm,Couleur=gray!70}%,Csv=false}%
+% Commande pour retenir le nombre d'exercices par maquette.Utile seulement pour la clé AssembleCorrection
+\xdef\PfMRetiensLienExoMa{}%
+\xdef\PfMRetiensLienDefMa{}%
+% Commande pour passer des options à travers la clé Input. Elle remplace \input :)
+\NewDocumentCommand\Input{om}{%
+ \def\Relecture{\setKV[ClesExercices]{#1}}%
+ \input{#2}%
+ \def\Relecture{}%
+}%
% Sucres
\makeatletter%
\NewDocumentCommand\PfMDotfill{}{%
\leavevmode%
\cleaders\hb@xt@.44em{\hss\xleaders\hrule width0.33em\hss}\hfill%
\kern\z@}%
-
-%\makeatother%
+\makeatother%
%
\NewDocumentCommand\PfMpointilles{o}{%
\IfNoValueTF{#1}{\PfMDotfill}{\makebox[#1]{\PfMDotfill}}%
@@ -88,7 +113,15 @@
%
\NewDocumentCommand\PfMNbLignesRestantes{}{%
\edef\measurepage{\dimexpr\pagegoal-\pagetotal\relax}%
+ \edef\measurepagemax{\dimexpr\textheight\relax}%
+ % \edef\measurepage{\dimeval{\pagegoal-\pagetotal-\baselineskip}}%
\xdef\PfMResteLignes{\fpeval{trunc((\the\measurepage)/(\baselineskip),0)}}%
+ \xdef\PfMResteLignesMax{\fpeval{trunc((\the\measurepagemax)/(\baselineskip),0)}}%
+ \ifnum\PfMResteLignesMax<\PfMResteLignes\relax
+ \xdef\PfMResteLignes{\PfMResteLignesMax}
+ \fi
+ %\xdef\PfMResteLignes{\dimeval{trunc((\the\measurepage)/(\baselineskip),0)}}%
+ %Il reste \PfMResteLignes{} lignes alors que le nombre maximal de lignes sur une page est \PfMResteLignesMax{}.
}%
\NewDocumentCommand\PfMLignesFinales{}{%
@@ -123,28 +156,37 @@
\newlength\PfMLargeurJury%
\newlength\PfMEspaceAvantLignes%
\newlength\PfMEspaceApresLignes%
-\newlength\PfMLargeurComp
+\newlength\PfMLargeurComp%
\newlength\CRRHauteur%
\newlength\PfMEcartSupInterMots%
-\setlength{\CRRHauteur}{10cm}
+\newlength\PfMCoefcompetences%
+\def\PfMCoefCompetences{0.85}%
+\setlength{\CRRHauteur}{10cm}%
\setlength{\PfMHauteurAppreciation}{5cm}%
\setlength{\PfMHauteurRemarque}{5cm}%
-\setlength{\PfMEspaceAvantLignes}{1em}
-\setlength{\PfMEspaceApresLignes}{1em}
+\setlength{\PfMEspaceAvantLignes}{1em}%
+\setlength{\PfMEspaceApresLignes}{1em}%
\setlength{\PfMEcartSupInterMots}{1pt}%
+\setlength{\PfMCoefcompetences}{0.7\linewidth}%
% définition des compteurs
\newcounter{PfMMaquette}%Pour compter le nombres de "travaux"
\setcounter{PfMMaquette}{0}%
+\newcounter{PfMMaquetteSol}[PfMMaquette]%Pour compter le nombres de "travaux" dans les corrections
+\setcounter{PfMMaquetteSol}{0}%
\newcounter{PfMSection}%Pour le barème et ne pas faire obstruction à section
\setcounter{PfMSection}{0}%
\newcounter{PfMExo}[PfMMaquette]%Numéro des exercices
\setcounter{PfMExo}{0}%
-\newcounter{PfMExoSol}%Pour repérer les valeurs aléatoires construites automatiquement dans la solution
+%\newcounter{PfMExoSolAlea}%Pour repérer les valeurs aléatoires construites automatiquement dans la solution
+%\setcounter{PfMExoSolAlea}{0}%
+\newcounter{PfMExoSol}[PfMMaquette]%
\setcounter{PfMExoSol}{0}%
\newcounter{PfMExoEntrai}%Pour repérer les entrainements
\setcounter{PfMExoEntrai}{0}%
\newcounter{PfMCorrigeParcoursPerso}%affichage des solutions ou pas dans le cadre d'un parcours perso
\setcounter{PfMCorrigeParcoursPerso}{0}%
+\newcounter{PfMRetiensMapourPP}%Pour retenir le numéro de la maquette de référence pour les parcours perso
+\setcounter{PfMRetiensMapourPP}{0}%
\newcounter{PfMSOS}%Numéro des SOS dans les parcours fléchés
\setcounter{PfMSOS}{0}%
\newcounter{PfMAlea}%Pour repérer les valeurs aléatoires construites automatiquement
@@ -152,12 +194,17 @@
\newcounter{RetiensSol}%Pour l'affichage des solutions
\newcounter{RetiensRep}%Pour l'affichage des reponses.
\newcounter{RetiensInd}%Pour l'affichage des indices.
+\newcounter{RetiensIndic}%Pour l'affichage des indications.
+\newcounter{PfMRetiensQr}%Pour l'affichage des entrainements
\setcounter{RetiensSol}{0}%
\setcounter{RetiensRep}{0}%
\setcounter{RetiensInd}{0}%
+\setcounter{RetiensIndic}{0}%
+\setcounter{PfMRetiensQr}{0}%
\newcounter{PfMNbLogo}%Pour décaler les logos sur la ligne haute de tcolorbox
\setcounter{PfMNbLogo}{0}%
\newcount\Orientation%Pour le schéma des parcours
+\newcount\TotalParcoursTikz%Pour le total des exos à utiliser dans l'affichage des parcours tikz
\newcounter{PfMCNNumQ}%
\newcounter{Nbcolonnes}
@@ -166,6 +213,8 @@
\newif\ifPfMDeuxColonnes
\newif\ifPfMRectoVerso
+\newif\ifPfMRevision
+
\makeatletter
\if@twocolumn
\PfMDeuxColonnestrue
@@ -179,6 +228,11 @@
\else
\PfMRectoVersofalse
\fi
+\if@Revision
+ \PfMRevisiontrue
+\else
+ \PfMRevisionfalse
+\fi
\makeatother
% couleurs
@@ -228,6 +282,22 @@
\ifboolKV[Boulot]{CAN}{}{\end{tcolorbox}}%
}%
+\tcbset{%
+ indications/.style={
+ empty,
+ right=0pt,
+ left=0mm,
+ top=0pt,
+ bottom=0pt,
+ frame engine=path,
+ % colframe=Crimson!10,
+ frame hidden,
+ notitle,
+ sharp corners=west,
+ borderline west={3pt}{0pt}{black!50}
+ }
+}
+
%% Option french pour les mathématiques
% By CT
\NewDocumentCommand\TypoMathFrance{}{%
@@ -291,7 +361,7 @@
\NewDocumentCommand\RepartirEffectifTotal{mmm}{%
% #1 valeur de l'effectif total
% #2 nombre de valeurs à obtenir
- % #3 écart acceptable :) autour de la moyenen
+ % #3 écart acceptable :) autour de la moyenne
\xdef\PfCSLEffectifs{}%
\xdef\PfCValeurMoyenneTemp{\fpeval{floor(#1/#2)}}%
\xdef\PfCRetiensRETSomme{}%
@@ -405,7 +475,6 @@
\RenewDocumentCommand\ChoixAlea{s o m m m}{%
\IfBooleanTF{#1}{%
\stepcounter{PfMAlea}%
-% je sauvegarde la valeur \thePfMExo-\thePfMAlea
\IfNoValueTF{#2}{%
\expandafter\xdef\csname valeur\Roman{PfMExo}\roman{PfMAlea}\endcsname{\fpeval{randint(#3,#4)}}%
\expandafter\xdef\csname #5\endcsname{\csname valeur\Roman{PfMExo}\roman{PfMAlea}\endcsname}%
@@ -791,7 +860,8 @@
\setcounter{Melquestions}{0}%
\setsepchar{\item}\ignoreemptyitems%
\readlist*\ListeTest{#2}%
-% La liste des éléments retenus est \showitems*\ListeTest[]
+ \reademptyitems
+ % La liste des éléments retenus est \showitems*\ListeTest[]\par
\IfNoValueTF{#1}{%
\ChoixAleaMultiMix{\ListeTestlen}{1}{\ListeTestlen}{0}{\ListeShuffleA}%
\xdef\MelangeValeurTotale{\ListeTestlen}%
@@ -802,6 +872,8 @@
\ExporteListe{ListeShuffle}{\ListeShuffleA}%
\setsepchar{,}\ignoreemptyitems%
\readlist*\ListeNumQ{\ListeShuffleA}%
+ \reademptyitems
+ % L'ordre des questions est \ListeNumQ[]
\setcounter{Comptequestions}{1}%
\begin{enumerate}
\loop%
@@ -815,11 +887,15 @@
\NewDocumentEnvironment{Enumelangesol}{b}{%
\setcounter{Melquestions}{0}%
- \setsepchar{\item}%
+ \setsepchar{\item}\ignoreemptyitems%
\readlist*\ListeTest{#1}%
+ \reademptyitems
\RestoreListe{ListeShuffle}%
\setsepchar{,}\ignoreemptyitems%
\readlist*\ListeNumQ{\ListeShuffle}%
+ \reademptyitems
+% la liste des éléments retenus est \showitems*\ListeTest[]\par
+% L'ordre des questions est \ListeNumQ[]\par
\setcounter{Comptequestions}{1}%
\begin{enumerate}
\loop%
@@ -882,7 +958,7 @@
}
\def\buildtabcompetences{%
- \[\begin{tabular}{|p{0.70\linewidth}|*{3}{>{\centering\arraybackslash}p{0.05\linewidth}|}}
+ \[\begin{tabular}{|p{\PfMCoefcompetences}|*{3}{>{\centering\arraybackslash}p{0.05\linewidth}|}}
\cline{2-4}
\multicolumn{1}{c|}{}&\PfMCompNA&\PfMCompECA&\PfMCompA\\
\hline
@@ -892,7 +968,7 @@
}%
\def\Buildtabcompetences#1#2{%
- \setlength{\PfMLargeurComp}{\fpeval{0.85-0.05*#1}\linewidth-\fpeval{2*(#1-3)}\tabcolsep}%
+ \setlength{\PfMLargeurComp}{\fpeval{\PfMCoefCompetences-0.05*#1}\linewidth-\fpeval{2*(#1-3)}\tabcolsep}%
\[\begin{tabular}{|p{\PfMLargeurComp}|*{#1}{>{\centering\arraybackslash}p{0.05\linewidth}|}}%
\cline{2-\fpeval{1+#1}}%
\multicolumn{1}{c|}{}\xintFor* ##1 in{\xintSeq{1}{#1}}\do{%
@@ -914,7 +990,7 @@
\def\SolutionWrite{%
\setcounter{PfMAlea}{0}%
\@bsphack%
- \immediate\openout \verbatim@out "\jobname-Ex\thePfMExo.sol"%
+ \immediate\openout \verbatim@out "\jobname-Ma\thePfMMaquette-Ex\thePfMExo.sol"%
\let\do\@makeother\dospecials%
\catcode`\^^M\active%
\def\verbatim@processline{%
@@ -924,7 +1000,7 @@
\def\SolutionWritePP{%
\@bsphack
- \immediate\openout \verbatim@out "\jobname-PPEx\thePfMExo.sol" %
+ \immediate\openout \verbatim@out "\jobname-Ma\thePfMMaquette-PPEx\thePfMExo.sol" %
\let\do\@makeother\dospecials
\catcode`\^^M\active
\def\verbatim@processline{%
@@ -934,7 +1010,7 @@
\def\ReponseWrite{%
\@bsphack
- \immediate\openout \verbatim@out "\jobname-Ex\thePfMExo.rep" %
+ \immediate\openout \verbatim@out "\jobname-Ma\thePfMMaquette-Ex\thePfMExo.rep" %
\let\do\@makeother\dospecials
\catcode`\^^M\active
\def\verbatim@processline{%
@@ -944,7 +1020,7 @@
\def\IndiceWrite{%
\@bsphack
- \immediate\openout \verbatim@out "\jobname-Ex\thePfMExo.cdp" %coup de pouce
+ \immediate\openout \verbatim@out "\jobname-Ma\thePfMMaquette-Ex\thePfMExo.cdp" %coup de pouce
\let\do\@makeother\dospecials
\catcode`\^^M\active
\def\verbatim@processline{%
@@ -953,7 +1029,7 @@
\def\endIndiceWrite{\immediate\closeout\verbatim@out\@esphack}
\makeatother
-\def\SolutionNow{\textbf{Correction de l'exercice --}\par\nopagebreak\setcounter{PfMExoSol}{\thePfMExo}\setcounter{PfMAlea}{0}\PfMAffichageHideItemSolution}
+\def\SolutionNow{\textbf{\csname PfMTNomSol\Roman{PfMExo}\endcsname~--}\par\nopagebreak\setcounter{PfMExoSol}{\thePfMExo}\setcounter{PfMAlea}{0}\PfMAffichageHideItemSolution}%\setcounter{PfMExoSolAlea}{\thePfMExo}
\def\endSolutionNow{\par\goodbreak\PfMshowitems}
\def\ReponseNow{\textbf{Réponse(s) de l'exercice --}\par\nopagebreak\PfMAffichageHideItemSolution}
@@ -965,6 +1041,48 @@
\NewDocumentEnvironment{Solution}{}{}{}%
\NewDocumentEnvironment{Reponse}{}{}{}%
\NewDocumentEnvironment{Indice}{}{}{}%
+\NewDocumentEnvironment{PfMHide}{+b}{}{}%
+\NewDocumentEnvironment{PfMSeek}{+b}{#1}{}%
+
+\NewDocumentEnvironment{AideA}{+b}{%
+ \ifnum\fpeval{\useKV[ClesExercices]{Aide}}>0\relax%
+ \begin{PfMSeek}%
+ #1
+ \end{PfMSeek}%
+ \else%
+ \begin{PfMHide}%
+ #1
+ \end{PfMHide}
+ \fi%
+}{%
+}%
+
+\NewDocumentEnvironment{AideB}{+b}{%
+ \ifnum\fpeval{\useKV[ClesExercices]{Aide}}>1\relax%
+ \begin{PfMSeek}%
+ #1
+ \end{PfMSeek}
+ \else%
+ \begin{PfMHide}%
+ #1
+ \end{PfMHide}
+ \fi%
+}{%
+}%
+
+\NewDocumentEnvironment{Indications}{+b}{%
+ \ifnum\theRetiensIndic=1\relax%
+ \textbf{\PfMTexteDesIndications :}\par%
+ \else%
+ \begin{PfMHide}%
+ \fi%
+ #1
+}{%
+ \ifnum\theRetiensIndic=1\relax%
+ \else
+ \end{PfMHide}%
+ \fi%
+}%
\NewDocumentCommand\PfMChoixAffichageCorrection{}{%
\ifboolKV[Boulot]{CorrigeAll}{%
@@ -1050,28 +1168,76 @@
}%
}%
-\def\PfMTexteDuCorrige{Corrigé de l'exercice}
-\def\PfMTexteDeLEntrainement{Automatisme(s) lié(s) à l'exercice}
+\NewDocumentCommand\PfMChoixEntrainement{}{%
+ \setcounter{PfMRetiensQr}{0}%
+ \ifboolKV[ClesExercices]{AEntretenir}{\setcounter{PfMRetiensQr}{1}}{}%
+}%
+
+\NewDocumentCommand\PfMChoixAffichageEntrainement{}{%
+ \ifnum\thePfMRetiensQr=1\relax%
+ \let\Entrainement\EntrainementWrite\let\endEntrainement\endEntrainementWrite%
+ \else%
+ \let\Entrainement\comment\let\endEntrainement\endcomment
+ \fi%
+}%
+
+\def\PfMTexteDuCorrige{Corrigé de l'exercice}%
+\def\PfMTexteDeLEntrainement{Automatisme(s) lié(s) à l'exercice}%
+\def\PfMTexteDesIndications{Indications}%
\NewDocumentCommand\PfMAffichageCorrige{}{%
\ifboolKV[Boulot]{CAN}{%
\xintFor* ##1 in{\xintSeq{1}{\PfMCANTotalExo}}\do{%
\setcounter{PfMExoSol}{##1}%
\setcounter{PfMAlea}{0}%
- \IfFileExists{\jobname-Ex##1.sol}{\textbf{Question\ifnum\PfMCANTotalExo=1\relax\else~\ifboolKV[Boulot]{CorrigeSeul}{##1}{\ref{TestCAN-##1}}:\fi}~\input{\jobname-Ex##1.sol}\par\goodbreak}{}%page-\thePfMMaquette-##1
+ \IfFileExists{\jobname-Ma\thePfMMaquette-Ex##1.sol}{\textbf{Question\ifnum\PfMCANTotalExo=1\relax\else~\ifboolKV[Boulot]{CorrigeSeul}{##1}{\ref{TestCAN-##1}}:\fi}~\input{\jobname-Ma\thePfMMaquette-Ex##1.sol}\par\goodbreak}{}%
}%
}{%
\setcounter{PfMExoSol}{0}%
+ %\setcounter{PfMExoSolAlea}{0}%
\xintFor* ##1 in{\xintSeq{1}{\thePfMExo}}\do{%
- \refstepcounter{PfMExoSol}%{##1}%
- \label{pagesol-\thePfMMaquette-\thePfMExoSol}
+ \refstepcounter{PfMExoSol}%
+ %\stepcounter{PfMExoSolAlea}%
+ \label{pagesol-\thePfMMaquette-\thePfMExoSol}%
+ \setcounter{PfMAlea}{0}%
+ \def\PfMTexteDuCorrige{\csname PfMTNomSol\Roman{PfMExoSol}\endcsname}
+ \IfFileExists{\jobname-Ma\thePfMMaquette-Ex##1.sol}{\PfMAffichageHideItemSolution\textbf{\PfMTexteDuCorrige\ifnum\thePfMExo=1\relax\else~\ifboolKV[Boulot]{CorrigeSeul}{##1}{\ref{page-\thePfMMaquette-##1}}\fi\PfMAffichageTitreSolution}\par\nopagebreak\input{\jobname-Ma\thePfMMaquette-Ex##1.sol}\par\goodbreak}{\IfFileExists{\jobname-Ma\thePfMMaquette-Ex##1.rep}{\PfMAffichageHideItemSolution\textbf{Réponse(s) seule(s) de l'exercice\ifnum\thePfMExo=1\relax\else~\ifboolKV[Boulot]{CorrigeSeul}{##1}{\ref{page-\thePfMMaquette-##1}}\fi}\par\nopagebreak\input{\jobname-Ma\thePfMMaquette-Ex##1.rep}\par\goodbreak}{%
+ \IfFileExists{\jobname-Ma\thePfMMaquette-Ex##1.cdp}{\PfMAffichageHideItemSolution\textbf{Indice(s) pour l'exercice\ifnum\thePfMExo=1\relax\else~\ifboolKV[Boulot]{CorrigeSeul}{##1}{\ref{page-\thePfMMaquette-##1}}\fi}\par\nopagebreak\input{\jobname-Ma\thePfMMaquette-Ex##1.cdp}\par\goodbreak}{}%
+ }%
+ }%
+ \PfMshowitems%
+ }%
+ }%
+}%
+
+% Tous les corrigés
+\NewDocumentCommand\PfMAffichageTousCorriges{}{%
+ \setsepchar{,}\ignoreemptyitems%
+ \readlist*\ListeNombreExoMq{\PfMRetiensLienExoMa}%
+ \reademptyitems%
+ \xintFor* ##2 in{\xintSeq{1}{\thePfMMaquette}}\do{%
+ \refstepcounter{PfMMaquetteSol}%
+ \setcounter{PfMExoSol}{0}%
+ %\setcounter{PfMExoSolAlea}{0}%
+ \ifPfMRectoVerso%
+ \cleardoublepage%
+ \else%
+ \clearpage%
+ \fi%
+ \input{\jobname-DefiMq-##2}
+ \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}%
+ \xintFor* ##1 in{\xintSeq{1}{\ListeNombreExoMq[##2]}}\do{%
+ \stepcounter{PfMExoSol}%
+ %\stepcounter{PfMExoSolAlea}%
+ \label{pagesol-\thePfMMaquetteSol-\thePfMExoSol}%
\setcounter{PfMAlea}{0}%
- \IfFileExists{\jobname-Ex##1.sol}{\PfMAffichageHideItemSolution\textbf{\PfMTexteDuCorrige\ifnum\thePfMExo=1\relax\else~\ifboolKV[Boulot]{CorrigeSeul}{##1}{\ref{page-\thePfMMaquette-##1}}\fi\PfMAffichageTitreSolution}\par\nopagebreak\input{\jobname-Ex##1.sol}\par\goodbreak}{\IfFileExists{\jobname-Ex##1.rep}{\PfMAffichageHideItemSolution\textbf{Réponse(s) seule(s) de l'exercice\ifnum\thePfMExo=1\relax\else~\ifboolKV[Boulot]{CorrigeSeul}{##1}{\ref{page-\thePfMMaquette-##1}}\fi}\par\nopagebreak\input{\jobname-Ex##1.rep}\par\goodbreak}{%
- \IfFileExists{\jobname-Ex##1.cdp}{\PfMAffichageHideItemSolution\textbf{Indice(s) pour l'exercice\ifnum\thePfMExo=1\relax\else~\ifboolKV[Boulot]{CorrigeSeul}{##1}{\ref{page-\thePfMMaquette-##1}}\fi}\par\nopagebreak\input{\jobname-Ex##1.cdp}\par\goodbreak}{}%
+ \IfFileExists{\jobname-Ma##2-Ex##1.sol}{\PfMAffichageHideItemSolution\textbf{\PfMTexteDuCorrige\ifnum\thePfMExo=1\relax\else~\ifboolKV[Boulot]{CorrigeSeul}{##1}{\ref{page-##2-##1}}\fi\PfMAffichageTitreSolution}\par\nopagebreak\input{\jobname-Ma##2-Ex##1.sol}\par\goodbreak}{\IfFileExists{\jobname-Ma##2-Ex##1.rep}{\PfMAffichageHideItemSolution\textbf{Réponse(s) seule(s) de l'exercice\ifnum\thePfMExo=1\relax\else~\ifboolKV[Boulot]{CorrigeSeul}{##1}{\ref{page-##2-##1}}\fi}\par\nopagebreak\input{\jobname-Ma##2-Ex##1.rep}\par\goodbreak}{%
+ \IfFileExists{\jobname-Ma##2-Ex##1.cdp}{\PfMAffichageHideItemSolution\textbf{Indice(s) pour l'exercice\ifnum\thePfMExo=1\relax\else~\ifboolKV[Boulot]{CorrigeSeul}{##1}{\ref{page-##2-##1}}\fi}\par\nopagebreak\input{\jobname-Ma##2-Ex##1.cdp}\par\goodbreak}{}%
}%
}%
\PfMshowitems%
}%
+ \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}%
}%
}%
@@ -1080,28 +1246,40 @@
\makeatletter
\def\EntrainementWrite{%
\@bsphack%
- \immediate\openout \verbatim@out "\jobname-Ex\thePfMExo.qrc"%
+ \immediate\openout \verbatim@out "\jobname-Ma\thePfMMaquette-Ex\thePfMExo.qrc"%
\let\do\@makeother\dospecials%
\catcode`\^^M\active%
\def\verbatim@processline{%
\immediate\write\verbatim@out{\the\verbatim@line}}%
\verbatim@start}%
\def\endEntrainementWrite{\immediate\closeout\verbatim@out\@esphack}%
-
-\let\Entrainement\EntrainementWrite\let\endEntrainement\endEntrainementWrite%
\makeatother
\NewDocumentCommand\PfMAffichageEntrainement{}{%
- \clearpage
+ \ifboolKV[Boulot]{ESansSaut}{\vfill}{%
+ \ifPfMDeuxColonnes
+ \newpage
+ \else
+ \ifPfMRectoVerso
+ \cleardoublepage
+ \else
+ \clearpage
+ \fi
+ \fi
+ }%
\TikzAutomatismes
+ \setlength{\columnseprule}{\useKV[Boulot]{EEpaisseur}}%
+ \ifboolKV[Boulot]{EntrainementColonnes}{\begin{multicols}{\useKV[Boulot]{EColonnes}}}{}%
\setcounter{PfMExoEntrai}{0}%
\xintFor* ##1 in{\xintSeq{1}{\thePfMExo}}\do{%
\refstepcounter{PfMExoEntrai}%
- \IfFileExists{\jobname-Ex##1.qrc}{%
+ \IfFileExists{\jobname-Ma\thePfMMaquette-Ex##1.qrc}{%
\begin{center}
- \label{pageentrai-\thePfMMaquette-\thePfMExoEntrai}%
- \textbf{\PfMTexteDeLEntrainement\ifnum\thePfMExo=1\relax\else~\ref{page-\thePfMMaquette-##1}\fi}\par\nopagebreak\input{\jobname-Ex##1.qrc}\end{center}}{}%
+ \label{pageentrai-\thePfMMaquette-\thePfMExoEntrai}%
+ \textbf{\PfMTexteDeLEntrainement\ifnum\thePfMExo=1\relax\else~\ref{page-\thePfMMaquette-##1}\fi}\par\nopagebreak\input{\jobname-Ma\thePfMMaquette-Ex##1.qrc}\end{center}%
+ }{}%
}%
+ \ifboolKV[Boulot]{EntrainementColonnes}{\end{multicols}}{}%
}%
\NewDocumentCommand\TikzAutomatismes{}{%
@@ -1111,6 +1289,7 @@
\end{center}
\end{tcolorbox}%
}%
+
%%%%%%%% BAREME %%%%%%%%%%%
%% Bareme
\newlength{\brouillon}
@@ -1128,17 +1307,23 @@
\newcommand*\brm[1]{%
\ifboolKV[Boulot]{Fiche}{}{%
- \immediate\write\@auxout{%
- \string\opadd*{#1}%
- {total\the\c@PfMSection-\the\c@PfMExo}%
- {total\the\c@PfMSection-\the\c@PfMExo}%
- \string\opcopy{\thePfMExo}{TotalExo}%
+ \ifboolKV[Boulot]{FdR}{}{%
+ \ifboolKV[Boulot]{Contrat}{}{%
+ \ifboolKV[Boulot]{Parcours}{}{%
+ \immediate\write\@auxout{%
+ \string\opadd*{#1}%
+ {total\the\c@PfMSection-\the\c@PfMExo}%
+ {total\the\c@PfMSection-\the\c@PfMExo}%
+ \string\opcopy{\thePfMExo}{TotalExo}%
+ }%
+ \ifboolKV[ClesExercices]{BaremeDetaille}{%
+ \setlength{\brouillon}{\BaremeEspace@Marge-\linewidth+\textwidth}%
+ \makebox[0pt][r]{\footnotesize\FranPt{#1}\hspace*{\brouillon}}%
+ \ignorespaces%
+ }{}%
+ }%
+ }%
}%
- \ifboolKV[ClesExercices]{BaremeDetaille}{%
- \setlength{\brouillon}{\BaremeEspace@Marge-\linewidth+\textwidth}%
- \makebox[0pt][r]{\footnotesize\FranPt{#1}\hspace*{\brouillon}}%
- \ignorespaces%
- }{}%
}%
}%
@@ -1178,11 +1363,25 @@
\@ifundefined{Op@total#1}{recompilez}%
{%
\opunzero{total#1}% on ne sait jamais
- \opset{decimalsepsymbol={,}}
+ \opset{decimalsepsymbol={,}}%
\opprint{total#1}~%
- \opset{decimalsepsymbol={.}}
+ \opset{decimalsepsymbol={.}}%
+ \useKV[ClesExercices]{MotPoint}%
\opcmp{total#1}{2}%
- \ifopge \useKV[ClesExercices]{MotPoint}s\else \useKV[ClesExercices]{MotPoint}\fi
+ \ifopge s\fi%
+ }%
+}
+
+\newcommand\ScoreMaximal{%
+ \@ifundefined{Op@ScoreTotal\thePfMMaquette}{recompilez}%
+ {%
+ \opunzero{ScoreTotal\thePfMMaquette}% on ne sait jamais
+ \opset{decimalsepsymbol={,}}%
+ \opprint{ScoreTotal\thePfMMaquette}~%
+ \opset{decimalsepsymbol={.}}%
+ \useKV[ClesExercices]{MotPoint}%
+ \opcmp{ScoreTotal\thePfMMaquette}{2}%
+ \ifopge s\fi%
}%
}
@@ -1251,12 +1450,12 @@
\NewDocumentCommand{\PfMLienVersEntrainement}{}{%
\ifboolKV[Boulot]{AvecEntrainement}{%
- \ifboolKV[ClesExercices]{PasEntrainement}{}{%
+ \ifboolKV[ClesExercices]{AEntretenir}{%
\node[%
fill=tcbcolback,%
anchor=center,rotate=45%
] at ($(frame.north east)!0.75!(frame.south east)$){\hyperref[pageentrai-\thePfMMaquette-\thePfMExo]{\faDumbbell}};%
- }%
+ }{}%
}{}%
}%
@@ -1288,6 +1487,7 @@
colback=LightSteelBlue,
colbacklower=white,
frame hidden,
+ overlay=\useKV[ClesExercices]{Ajout}%
}%
}%
@@ -1300,6 +1500,7 @@
title=\ifboolKV[ClesExercices]{AffichageTitre}{\useKV[ClesExercices]{Titre}}{},%
coltitle=black,
frame hidden,
+ overlay=\useKV[ClesExercices]{Ajout}%
}
}
@@ -1307,7 +1508,6 @@
%%% Base des exercices DM
\tcbset{%
tikzdm/.style={%
- %lowerbox=ignored,
enhanced,
breakable,
colback=white,
@@ -1328,6 +1528,8 @@
},%
overlay unbroken and first={%
%
+ \useKV[ClesExercices]{Ajout}%
+ %
\PfMAffichageSource%
%
\ifboolKV[ClesExercices]{BaremeTotal}{%
@@ -1346,21 +1548,23 @@
}%
}%
-\NewDocumentEnvironment{exerciceDM}{so+b}{%
+\NewDocumentEnvironment{exerciceDM}{so}{%
\setcounter{PfMAlea}{0}%
+ % Mettre les indications hors-jeu
+ \setcounter{RetiensIndic}{0}
\useKVdefault[ClesExercices]%
\setKV[ClesExercices]{#2}%
+ \ifboolKV[Boulot]{Input}{\Relecture}{}%
\ifboolKV[ClesExercices]{NonUtilise}{%
% Mettre la correction hors-jeu
\setKV[ClesExercices]{PasCorrige}%
\PfMChoixCorrection%
+ \begin{PfMHide}
}{%
\IfBooleanTF{#1}{%
\setKV[ClesExercices]{Numerote=false}%
}{}%
- \refstepcounter{PfMSection}%
- \PfMChoixCorrection%
- \refstepcounter{PfMExo}%
+ \PfMAvantLesExercices%
\ifboolKV[Boulot]{CorrigeSeul}{}{%
\PfMChoixTitreSolution%
\immediate\write\@auxout{%
@@ -1376,12 +1580,11 @@
label=page-\thePfMMaquette-\thePfMExo,%
]%
\ifboolKV[Boulot]{Dys}{\raggedright}{}%
- #3
}%
}%
}{%
- \ifboolKV[ClesExercices]{NonUtilise}{}{%
- \ifboolKV[Boulot]{CorrigeSeul}{}{
+ \ifboolKV[ClesExercices]{NonUtilise}{\end{PfMHide}}{%
+ \ifboolKV[Boulot]{CorrigeSeul}{}{
\end{tcolorbox}%
\PfMApresLesExercices%
}%
@@ -1508,24 +1711,25 @@
\immediate\write\@auxout{\noexpand\expandafter\gdef\noexpand\csname \Roman{PfMMaquette}Contrat#1\endcsname{\csname \Roman{PfMMaquette}confiance#1\endcsname}}%
}%
-
-\NewDocumentEnvironment{exerciceContrat}{so+b}{%
+\NewDocumentEnvironment{exerciceContrat}{so}{%
\setcounter{PfMAlea}{0}%
\setcounter{PfMNbLogo}{1}%
+ % Mettre les indications hors-jeu
+ \setcounter{RetiensIndic}{0}
\useKVdefault[ClesExercices]%
\setKV[ClesExercices]{#2}%
+ \ifboolKV[Boulot]{Input}{\Relecture}{}%
\ifboolKV[ClesExercices]{NonUtilise}{%
% Mettre la correction hors-jeu
\setKV[ClesExercices]{PasCorrige}%
\PfMChoixCorrection%
+ \begin{PfMHide}
}{%
\IfBooleanTF{#1}{%
\setKV[ClesExercices]{Numerote=false}%
}{}%
\setKV[ClesExercices]{BaremeTotal=false,BaremeDetaille=false}%
- \refstepcounter{PfMSection}%
- \PfMChoixCorrection%
- \refstepcounter{PfMExo}%
+ \PfMAvantLesExercices%
\ifboolKV[Boulot]{CorrigeSeul}{}{%
\PfMChoixTitreSolution%
\immediate\write\@auxout{\string\opcopy{\thePfMExo}{\Roman{PfMMaquette}-ContratTotalExo}}%
@@ -1546,18 +1750,16 @@
label=page-\thePfMMaquette-\thePfMExo
]
\ifboolKV[Boulot]{Dys}{\raggedright}{}%
- #3
}%
}%
}{%
- \ifboolKV[ClesExercices]{NonUtilise}{}{%
+ \ifboolKV[ClesExercices]{NonUtilise}{\end{PfMHide}}{%
\ifboolKV[Boulot]{CorrigeSeul}{}{%
\end{tcolorbox}
\PfMApresLesExercices%
}%
}%
}%
-
%%% Contrat %%%
\tcbset{%
usercontrat/.style={%
@@ -1606,7 +1808,9 @@
anchor=west,
xshift=10pt,
] at (frame.north west){\bfseries\sffamily \useKV[Contrat]{NomExercice} \thePfMExo\ifboolKV[ClesExercices]{AffichageTitre}{ : \useKV[ClesExercices]{Titre}}{}};
- %%
+ %%
+ \useKV[ClesExercices]{Ajout}%
+ %%
\PfMAffichageLogos%
%%
\PfMAffichageCompetencesTravaillees%
@@ -1799,7 +2003,7 @@
\xdef\RetiensLeDepart{0}%
\xdef\RetiensLesReponses{0}%
\xdef\RetiensNonAffichees{0}%
- \xdef\RetiensEtage{0}
+ \xdef\RetiensEtage{0}%
\xintFor* ##1 in{\xintSeq{1}{\ListeRouteHautelen}}\do{%
\xintifboolexpr{\ListeRouteHaute[##1]==0}{%
\xdef\RetiensEtage{\fpeval{\RetiensEtage+1}}%
@@ -1814,7 +2018,7 @@
\xintifboolexpr{\fpeval{\RetiensLesReponses-1}==\RetiensNonAffichees}{%
% %
}{%
- \xintFor* ##2 in{\xintSeq{\fpeval{\RetiensLeDepart+1}}{\fpeval{\RetiensLeDepart+\RetiensLesReponses}}}\do{
+ \xintFor* ##2 in{\xintSeq{\fpeval{\RetiensLeDepart+1}}{\fpeval{\RetiensLeDepart+\RetiensLesReponses}}}\do{%
\xintifboolexpr{\ListeRouteHaute[##2]<0}{%
\draw (B-##2) to (B-\fpeval{##2+1});%
}{%
@@ -1863,24 +2067,28 @@
\fi
\immediate\write\@auxout{\noexpand\expandafter\gdef\noexpand\csname \Roman{PfMMaquette}FdR#1\endcsname{\csname \Roman{PfMMaquette}route#1\endcsname}}%
}%
-
-\NewDocumentEnvironment{exerciceFdR}{so+b}{%
+
+\def\Relecture{}%
+
+\NewDocumentEnvironment{exerciceFdR}{so}{%
\setcounter{PfMAlea}{0}%
\setcounter{PfMNbLogo}{1}%
+ % Mettre les indications hors-jeu
+ \setcounter{RetiensIndic}{0}
\useKVdefault[ClesExercices]%
\setKV[ClesExercices]{#2}%
+ \ifboolKV[Boulot]{Input}{\Relecture}{}%
\ifboolKV[ClesExercices]{NonUtilise}{%
% Mettre la correction hors-jeu
\setKV[ClesExercices]{PasCorrige}%
\PfMChoixCorrection%
+ \begin{PfMHide}
}{%
\IfBooleanTF{#1}{%
\setKV[ClesExercices]{Numerote=false}%
}{}%
\setKV[ClesExercices]{BaremeTotal=false,BaremeDetaille=false}%
- \stepcounter{PfMSection}%
- \PfMChoixCorrection%
- \refstepcounter{PfMExo}%
+ \PfMAvantLesExercices%
\ifboolKV[Boulot]{CorrigeSeul}{}{%
\PfMChoixTitreSolution%
\immediate\write\@auxout{\string\opcopy{\thePfMExo}{\Roman{PfMMaquette}-FdRTotalExo}}%
@@ -1914,11 +2122,10 @@
label=page-\thePfMMaquette-\thePfMExo
]
\ifboolKV[Boulot]{Dys}{\raggedright}{}%
- #3
}%
}%
}{%
- \ifboolKV[ClesExercices]{NonUtilise}{}{%
+ \ifboolKV[ClesExercices]{NonUtilise}{\end{PfMHide}}{%
\ifboolKV[Boulot]{CorrigeSeul}{}{%
\end{tcolorbox}
\PfMApresLesExercices%
@@ -1945,7 +2152,7 @@
\string\opcopy{\thePfMExo}{TotalExo}%
}%
\@bsphack%
- \immediate\openout \verbatim@out "\jobname-Ex\thePfMExo.can"%
+ \immediate\openout \verbatim@out "\jobname-Ma\thePfMMaquette-Ex\thePfMExo.can"%
\let\do\@makeother\dospecials%
\catcode`\^^M\active%
\def\verbatim@processline{\immediate\write\verbatim@out{\the\verbatim@line}}%
@@ -1970,7 +2177,6 @@
\tcbset{%
usercan/.style={%
enhanced,
- % spread upwards=-1cm,colback=gray!5%
frame hidden,
colback=white,
middle=24pt,
@@ -2030,7 +2236,6 @@
\Large\sffamily Course aux nombres (Correction)
\end{center}
\hfill\useKV[CAN]{Niveau}%
- %\par{\tiny\useKV[CAN]{Code}}\hfill{\scriptsize\useKV[CAN]{Date}}%
\end{tcolorbox}%
}
%%% FdR %%%
@@ -2080,7 +2285,9 @@
anchor=west,
xshift=10pt,
] at (frame.north west){\bfseries\sffamily \useKV[FdR]{NomExercice} \thePfMExo\ifboolKV[ClesExercices]{AffichageTitre}{ : \useKV[ClesExercices]{Titre}}{}};
- %%
+ %%
+ \useKV[ClesExercices]{Ajout}%
+ %%
\PfMAffichageLogos
%%
\PfMAffichageCompetencesTravaillees%
@@ -2112,19 +2319,33 @@
\reademptyitems%
\xdef\PfMFooTestA{\ListeExercicesPA[1]}%
\ifnum\ListeExercicesPAlen>1\relax%
- \xintFor* ##1 in{\xintSeq{2}{\ListeExercicesPAlen}}\do{%
- \xdef\PfMFooTestA{\PfMFooTestA,\ListeExercicesPA[##1]}%
- }%
+ \xintFor* ##1 in{\xintSeq{2}{\ListeExercicesPAlen}}\do{%
+ \xdef\PfMFooTestA{\PfMFooTestA,\ListeExercicesPA[##1]}%
+ }%
\fi%
- \ifboolKV[Parcours]{Vertical}{%
- \BuildParcoursTikzV{\ParcoursTotalExo}{\PfMFooTestA}%
+ \ifboolKV[Parcours]{Plan}{%
+ \BuildParcoursPlan{\ParcoursTotalExo}{\PfMFooTestA}%
}{%
- \BuildParcoursTikz{\ParcoursTotalExo}{\PfMFooTestA}%
+ \ifboolKV[Parcours]{Vertical}{%
+ \BuildParcoursTikzV{\ParcoursTotalExo}{\PfMFooTestA}%
+ }{%
+ \BuildParcoursTikz{\ParcoursTotalExo}{\PfMFooTestA}%
+ }%
}%
}%
}%
%\makeatother
+\NewDocumentCommand\BuildParcoursPlan{mm}{%
+ \setsepchar{,}%
+ \readlist*\ListeRetiens{#2}%
+ \begin{enumerate}
+ \foreachitem\compteur\in\ListeRetiens{%
+ \item[$\square$] Exercice \ref{page-\thePfMMaquette-\ListeRetiens[\compteurcnt]}%
+ }%
+ \end{enumerate}
+}%
+
\NewDocumentCommand\BuildParcoursTikzV{mm}{%
\setsepchar{,}%
\readlist*\ListeRetiens{#2}%
@@ -2155,8 +2376,13 @@
\begin{tikzpicture}[anchor=center,baseline=-1.25mm]
% On place les points
\Orientation=1\relax
+ \ifboolKV[Parcours]{Court}{%
+ \TotalParcoursTikz=\ListeRetienslen%
+ }{%
+ \TotalParcoursTikz=#1%
+ }%
\coordinate[anchor=base,baseline=-1.25mm] (A-1) at (0,0);%
- \xintFor* ##1 in{\xintSeq{2}{\fpeval{#1+1}}}\do{%
+ \xintFor* ##1 in{\xintSeq{2}{\fpeval{\the\TotalParcoursTikz+1}}}\do{%
\modulo{##1}{\useKV[SchemaParcours]{Colonnes}}%
\ifnum\remainder=0\relax%
\Orientation=\numexpr\Orientation*(-1)\relax%
@@ -2165,17 +2391,23 @@
\coordinate[xshift=\the\Orientation*\PfMLargeurSchemaParcours] (A-##1) at (A-\fpeval{##1-1});%
\fi%
}%
- \foreach\i in{2,...,#1}{%
- \draw[line width=1pt] (A-\fpeval{\i-1}) -- (A-\i);%
- }%
- %
- \draw[line width=1pt,>=latex,->] (A-#1)--(A-\fpeval{#1+1});
- %
- \xintFor* ##1 in{\xintSeq{1}{#1}}\do{%
- \draw[fill=white,dashed](A-##1) circle (2.5mm) node{##1};%
+ \foreach\i in{1,...,\the\TotalParcoursTikz}{%
+ \draw[line width=1pt] (A-\i) -- (A-\fpeval{\i+1});%
}%
- \foreachitem\compteur\in\ListeRetiens{%
- \draw[fill=PfMCouleurSP](A-\ListeRetiens[\compteurcnt]) circle (2.5mm) node{\ref{page-\thePfMMaquette-\ListeRetiens[\compteurcnt]}};%
+% %
+ \draw[line width=1pt,>=latex,->] (A-\the\TotalParcoursTikz)--(A-\fpeval{\the\TotalParcoursTikz+1});
+% %
+ \ifboolKV[Parcours]{Court}{%
+ \foreachitem\compteur\in\ListeRetiens{%
+ \draw[fill=PfMCouleurSP](A-\compteurcnt) circle (2.5mm) node{\ref{page-\thePfMMaquette-\ListeRetiens[\compteurcnt]}};%
+ }%
+ }{%
+ \xintFor* ##1 in{\xintSeq{1}{\the\TotalParcoursTikz}}\do{%
+ \draw[fill=white,dashed](A-##1) circle (2.5mm) node{##1};%
+ }%
+ \foreachitem\compteur\in\ListeRetiens{%
+ \draw[fill=PfMCouleurSP](A-\ListeRetiens[\compteurcnt]) circle (2.5mm) node{\ref{page-\thePfMMaquette-\ListeRetiens[\compteurcnt]}};%
+ }%
}%
\end{tikzpicture}%
}%
@@ -2195,7 +2427,7 @@
\stepcounter{PfMExo}%
\PfMChoixCorrection%
\@bsphack%
- \immediate\openout \verbatim@out "\jobname-PPEx\thePfMExo.tex" %
+ \immediate\openout \verbatim@out "\jobname-Ma\thePfMMaquette-PPEx\thePfMExo.tex" %
\immediate\write\verbatim@out{\string\begin{exercice}}
\let\do\@makeother\dospecials%
\catcode`\^^M\active%
@@ -2205,23 +2437,25 @@
\def\endexerciceParcoursPerso{\immediate\write\verbatim@out{\string\end{exercice}}\immediate\closeout\verbatim@out\@esphack}%
-\NewDocumentEnvironment{exerciceParcours}{so+b}{%
+\NewDocumentEnvironment{exerciceParcours}{so}{%
\setcounter{PfMAlea}{0}%
\setcounter{PfMNbLogo}{1}%
+ % Mettre les indications hors-jeu
+ \setcounter{RetiensIndic}{0}
\useKVdefault[ClesExercices]%
\setKV[ClesExercices]{#2}%
+ \ifboolKV[Boulot]{Input}{\Relecture}{}%
\ifboolKV[ClesExercices]{NonUtilise}{%
% Mettre la correction hors-jeu
\setKV[ClesExercices]{PasCorrige}%
\PfMChoixCorrection%
+ \begin{PfMHide}
}{%
\IfBooleanTF{#1}{%
\setKV[ClesExercices]{Numerote=false}%
}{}%
\setKV[ClesExercices]{BaremeTotal=false,BaremeDetaille=false}%
- \refstepcounter{PfMSection}%
- \PfMChoixCorrection%
- \refstepcounter{PfMExo}%
+ \PfMAvantLesExercices%
\ifboolKV[Boulot]{CorrigeSeul}{}{%
\PfMChoixTitreSolution%
\immediate\write\@auxout{\string\opcopy{\thePfMExo}{\Roman{PfMMaquette}-ParcoursTotalExo}}%
@@ -2242,11 +2476,10 @@
label=page-\thePfMMaquette-\thePfMExo
]
\ifboolKV[Boulot]{Dys}{\raggedright}{}%
- #3
}%
}%
}{%
- \ifboolKV[ClesExercices]{NonUtilise}{}{%
+ \ifboolKV[ClesExercices]{NonUtilise}{\end{PfMHide}}{%
\ifboolKV[Boulot]{CorrigeSeul}{}{%
\end{tcolorbox}
\PfMApresLesExercices%
@@ -2310,17 +2543,158 @@
}%
}%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\NewDocumentCommand\PfMScore{m}{%
+ \immediate\write\@auxout{%
+ \string\opadd*{#1}{ScoreTotal\thePfMMaquette}{ScoreTotal\thePfMMaquette}%
+ }%
+ \num{#1} pt\xintifboolexpr{#1>2 || #1==2}{s}{}%
+}%
+
+\def\PfMMPGrilleCode{%
+ PapierLargeur=floor(\mpdim{\linewidth}/(5mm));
+ color PapierCouleur;
+ PapierCouleur=0.8white;
+ %
+ vardef Papier(expr nb,score)=
+ path horizon,verticon;
+ horizon=(0,0)--(PapierLargeur*5mm,0);
+ verticon=(0,0)--(0,abs(nb)*5mm);
+ picture Papiers;
+ Papiers=image(
+ drawoptions(withcolor PapierCouleur);
+ for k=0 upto PapierLargeur:
+ draw verticon shifted((k*5mm,0));
+ endfor;
+ for k=0 upto abs(nb):
+ draw horizon shifted((0,k*5mm));
+ endfor;
+ drawoptions();
+ if nb<0:
+ path cc,cd,ce;
+ cd=(unitsquare xscaled (3*5mm) yscaled (abs(nb)*5mm)) shifted(5mm*(PapierLargeur-3,0));
+ ce=(unitsquare scaled (2*5mm)) shifted(5mm*(PapierLargeur-2.5,1));
+ cc=(unitsquare xscaled (6*5mm) yscaled (2*5mm)) shifted(5mm*(PapierLargeur-10,1));
+ fill cd withcolor PapierCouleur;
+ fill ce withcolor white;
+ fill cc withcolor white;
+ %drawoptions(withpen pencircle scaled 1);
+ draw ce;
+ draw cc;
+ draw cd;
+ draw polygone((0,0),(PapierLargeur*5mm,0),5mm*(PapierLargeur,abs(nb)),5mm*(0,abs(nb)));
+ if score>0:
+ label.bot(TEX("\PfMScore{"&decimal(score)&"}"),5mm*(PapierLargeur-1.5,1));
+ fi;
+ fi;
+ );
+ Papiers
+ enddef;
+}%
+
+\def\PfMPapierCinqCinq#1#2{%
+ \begin{center}
+ \ifluatex%
+ \mplibforcehmode%
+ \begin{mplibcode}%
+ \PfMMPGrilleCode
+ trace Papier(#1,#2);
+ \end{mplibcode}%
+ \else%
+ \begin{mpost}[mpsettings={\PfMMPGrilleCode}]
+ trace Papier(#1,#2);
+ \end{mpost}%
+ \fi%
+ \end{center}
+}%
+
+\def\PfMMPSeyesCode{%
+ u:=\useKV[ClesExercices]{EchelleSeyes}*1mm;
+ PapierLargeur=floor(\mpdim{\linewidth}/(u));
+ color PapierCouleur;
+ PapierCouleur=0.8white;%\useKV[Papiers]{Couleur};
+ vardef Seyes(expr nb,score)=
+ path horizon,verticon;
+ horizon=(0,0)--u*(PapierLargeur,0);
+ verticon=(0,0)--u*(0,abs(nb));
+ picture PapierSeyes;
+ PapierSeyes=image(
+ drawoptions(withcolor PapierCouleur);
+ for k=0 upto (PapierLargeur):
+ draw verticon shifted((k*u,0));
+ endfor;
+ for k=0 step 0.25 until abs(nb):
+ draw horizon shifted((0,k*u)) withpen pencircle scaled 0.5;
+ endfor;
+ for k=0 upto abs(nb):
+ draw horizon shifted((0,k*u)) withpen pencircle scaled 1.25;
+ endfor;
+ drawoptions();
+ if nb<0:
+ path cc,cd,ce;
+ cd=(unitsquare xscaled (2*u) yscaled (abs(nb)*u)) shifted(u*(PapierLargeur-2,0));
+ ce=(unitsquare scaled (1*u)) shifted(u*(PapierLargeur-1.5,1));
+ cc=(unitsquare xscaled (4*u) yscaled (1*u)) shifted(u*(PapierLargeur-7,1));
+ fill cd withcolor PapierCouleur;
+ fill ce withcolor white;
+ fill cc withcolor white;
+ draw cc;
+ draw cd;
+ draw ce;
+ draw polygone((0,0),(PapierLargeur*u,0),u*(PapierLargeur,abs(nb)),u*(0,abs(nb)));
+ if score>0:
+ label.bot(TEX("\PfMScore{"&decimal(score)&"}"),u*(PapierLargeur-1,1));
+ fi;
+ fi;
+ );
+ PapierSeyes
+ enddef;
+}%
+
+\def\PfMPapierSeyes#1#2{%
+ \begin{center}
+ \ifluatex%
+ \mplibforcehmode%
+ \begin{mplibcode}%
+ \PfMMPSeyesCode
+ trace Seyes(#1,#2);
+ \end{mplibcode}%
+ \else%
+ \begin{mpost}[mpsettings={\PfMMPSeyesCode}]%
+ trace Seyes(#1,#2);
+ \end{mpost}
+ \fi%
+ \end{center}
+}%
+
\NewDocumentCommand\PfMApresLesExercices{}{%
\ifboolKV[ClesExercices]{Ligne}{%
- % \vspace{\PfMEspaceAvantLignes}
- \PfMSetStretch\PfMLignespointilles{\useKV[ClesExercices]{Lignes}}%
+ \vspace*{\PfMEspaceAvantLignes}%
+ \PfMSetStretch\PfMLignespointilles{\useKV[ClesExercices]{Lignes}}%
\par\vspace*{\PfMEspaceApresLignes}\par%
}{}%
\par%
\ifboolKV[ClesExercices]{Cadres}{%
- \begin{PfMtcbEncart}%
- %
- \end{PfMtcbEncart}%
+ \begin{PfMtcbEncart}%
+ %
+ \end{PfMtcbEncart}%
+ }{}%
+ \ifboolKV[ClesExercices]{Grilles}{%
+ \ifboolKV[ClesExercices]{Cinq}{%
+ \PfMPapierCinqCinq{\useKV[ClesExercices]{CinqCinq}}{\useKV[ClesExercices]{Score}}%
+ }{}%
+ \ifboolKV[ClesExercices]{Huit}{%
+ \PfMPapierSeyes{\useKV[ClesExercices]{Seyes}}{\useKV[ClesExercices]{Score}}%
+ }{}%
+ }{}%
+ \ifboolKV[ClesExercices]{Profile}{\PfMshowitems}{}%
+ \ifboolKV[ClesExercices]{ACompleter}{%
+ \IfHookExistsTF{env/center/begin}{\RemoveFromHook{env/center/begin}[*]}{}%
+ \IfHookExistsTF{env/center/end}{\RemoveFromHook{env/center/end}[*]}{}%
+ \IfHookExistsTF{env/itemize/begin}{\RemoveFromHook{env/itemize/begin}[*]}{}%
+ \IfHookExistsTF{env/itemize/end}{\RemoveFromHook{env/itemize/end}[*]}{}%
+ \IfHookExistsTF{env/description/begin}{\RemoveFromHook{env/description/begin}[*]}{}%
+ \IfHookExistsTF{env/description/end}{\RemoveFromHook{env/description/end}[*]}{}%
}{}%
}%
@@ -2329,7 +2703,7 @@
\expandafter\xdef\csname PfMEcrireTitreSol\endcsname{\csname PfMTSol\Roman{PfMExoSol}\endcsname}%
\ifx\bla\PfMEcrireTitreSol\bla%
\else
- \PfMEcrireTitreSol%
+ ~:~\PfMEcrireTitreSol%
\fi%
}%
@@ -2342,6 +2716,10 @@
}%
}%
+\NewDocumentCommand\PfMChoixNomCorrection{}{%
+ \expandafter\xdef\csname PfMTNomSol\Roman{PfMExo}\endcsname{\useKV[ClesExercices]{TitreCorrige}}
+}%
+
\NewDocumentCommand\PfMChoixHideItemSolution{}{%
\ifboolKV[ClesExercices]{Profile}{%
% J'ai un élève à profil : Je dois me souvenir que la correction doit être profilée. Le compteur PfMExo vaut \thePfMExo
@@ -2361,68 +2739,106 @@
\fi%
}%
-\newbox\PfMBoxSauvegarde%
+\NewDocumentCommand\PfMAvantLesExercices{}{%
+ \ifboolKV[ClesExercices]{AvecIndications}{\setcounter{RetiensIndic}{1}}{}%
+ \ifboolKV[ClesExercices]{Profile}{\PfMhideitems}{}%
+ \refstepcounter{PfMSection}%
+ \PfMChoixCorrection%
+ \PfMChoixEntrainement%
+ \refstepcounter{PfMExo}%
+ \PfMChoixNomCorrection%
+ \ifboolKV[ClesExercices]{ACompleter}{%
+ \let\oldenumerate\enumerate%
+ \let\oldendenumerate\endenumerate%
+ \let\enumerate\autoenumerate%
+ \let\endenumerate\endautoenumerate%
+ \AddToHook{env/center/begin}[Bcenter]{\let\item\olditem}%
+ \AddToHook{env/center/end}[Ecenter]{\let\item\litem}%
+ \AddToHook{env/description/begin}[Bdescription]{\let\item\olditem}%
+ \AddToHook{env/description/end}[Edescription]{\let\item\litem}%
+ \AddToHook{env/itemize/begin}[Bitemize]{\let\item\olditem}%
+ \AddToHook{env/itemize/end}[Eitemize]{\let\item\litem}%
+ }{}%
+}%
-\NewDocumentEnvironment{exerciceFiche}{so+b}{%
+\NewDocumentEnvironment{exerciceFiche}{so}{%
\setcounter{PfMAlea}{0}%
\setcounter{PfMNbLogo}{1}%
+ % Mettre les indications hors-jeu
+ \setcounter{RetiensIndic}{0}
\useKVdefault[ClesExercices]%
\setKV[ClesExercices]{#2}%
+ \ifboolKV[Boulot]{Input}{\Relecture}{}%
\ifboolKV[ClesExercices]{NonUtilise}{%
% Mettre la correction hors-jeu
\setKV[ClesExercices]{PasCorrige}%
\PfMChoixCorrection%
+ \begin{PfMHide}
}{%
\IfBooleanTF{#1}{%
\setKV[ClesExercices]{Numerote=false}%
}{}%
- \ifboolKV[ClesExercices]{Profile}{\PfMhideitems}{}%
\colorlet{ColExoFiche}{\useKV[ClesExercices]{Background}}%
\colorlet{PfMCadreFiche}{\useKV[ClesExercices]{Cadre}}%
\setKV[ClesExercices]{BaremeTotal=false,BaremeDetaille=false}%
- \refstepcounter{PfMSection}%
- \PfMChoixCorrection%
- \refstepcounter{PfMExo}%
+ \PfMAvantLesExercices%
\ifboolKV[Boulot]{CorrigeSeul}{}{%
- \PfMChoixTitreSolution%
- \PfMChoixHideItemSolution%
- \begin{tcolorbox}[%
- tikzfiche,
- label is label,
- label=page-\thePfMMaquette-\thePfMExo
- ]
- \ifboolKV[Boulot]{Dys}{\raggedright}{}%
- %
- #3
+ \PfMChoixTitreSolution%
+ \PfMChoixHideItemSolution%
+ \begin{tcolorbox}[%
+ tikzfiche,
+ label is label,
+ label=page-\thePfMMaquette-\thePfMExo
+ ]
+ \ifboolKV[Boulot]{Dys}{\raggedright}{}%
}%
}%
}{%
- \ifboolKV[ClesExercices]{NonUtilise}{}{%
+ \ifboolKV[ClesExercices]{NonUtilise}{\end{PfMHide}}{%
\ifboolKV[Boulot]{CorrigeSeul}{}{
\end{tcolorbox}%
- \ifboolKV[ClesExercices]{Profile}{\PfMshowitems}{}%
+ % \ifboolKV[ClesExercices]{Profile}{\PfMshowitems}{}%
\PfMApresLesExercices%
}%
}%
}%
+%\makeatletter
+\NewDocumentCommand\TikzOlympiadesAPMEPCor{m}{%
+ \ifPfMRectoVerso%
+ \cleardoublepage%
+ \else%
+ \clearpage%
+ \fi%
+ \setKV[OlympiadesAPMEP]{#1}%
+ \begin{tcolorbox}[colback=colLogo]
+ \begin{Dispo}*{\normalsize\logoapmep{\scale@logo}}
+ \Large\sffamily \useKV[OlympiadesAPMEP]{Theme}
+
+ (Correction)%
+ \end{Dispo}
+ \end{tcolorbox}%
+}%
+%\makeatother
+
\NewDocumentEnvironment{exerciceOlympiadesAPMEP}{so}{%
\setcounter{PfMAlea}{0}%
\setcounter{PfMNbLogo}{1}%
+ % Mettre les indications hors-jeu
+ \setcounter{RetiensIndic}{0}
\useKVdefault[ClesExercices]%
\setKV[ClesExercices]{#2}%
+ \ifboolKV[Boulot]{Input}{\Relecture}{}%
\ifboolKV[ClesExercices]{NonUtilise}{%
% Mettre la correction hors-jeu
\setKV[ClesExercices]{PasCorrige}%
\PfMChoixCorrection%
+ \begin{PfMHide}
}{%
\IfBooleanTF{#1}{%
\setKV[ClesExercices]{Numerote=false}%
}{}%
- \ifboolKV[ClesExercices]{Profile}{\PfMhideitems}{}%
- \colorlet{ColExoFiche}{\useKV[ClesExercices]{Background}}%
- \colorlet{PfMCadreFiche}{\useKV[ClesExercices]{Cadre}}%
- \setKV[ClesExercices]{BaremeTotal=false,BaremeDetaille=false}%
+ \PfMAvantLesExercices%
\refstepcounter{PfMSection}%
\PfMChoixCorrection%
\refstepcounter{PfMExo}%
@@ -2438,29 +2854,30 @@
}%
}%
}{%
- \ifboolKV[ClesExercices]{NonUtilise}{}{%
+ \ifboolKV[ClesExercices]{NonUtilise}{\end{PfMHide}}{%
\end{tcolorbox}%
- \ifboolKV[ClesExercices]{Profile}{\PfMshowitems}{}%
+ %\ifboolKV[ClesExercices]{Profile}{\PfMshowitems}{}%
\PfMApresLesExercices%
- }
+ }%
}%
-\NewDocumentEnvironment{exerciceDS}{so+b}{%
+\NewDocumentEnvironment{exerciceDS}{so}{%
\setcounter{PfMAlea}{0}%
+ % Mettre les indications hors-jeu
+ \setcounter{RetiensIndic}{0}
\useKVdefault[ClesExercices]%
\setKV[ClesExercices]{#2}%
+ \ifboolKV[Boulot]{Input}{\Relecture}{}%
\ifboolKV[ClesExercices]{NonUtilise}{%
% Mettre la correction hors-jeu
\setKV[ClesExercices]{PasCorrige}%
\PfMChoixCorrection%
+ \begin{PfMHide}
}{%
\IfBooleanTF{#1}{%
\setKV[ClesExercices]{Numerote=false}%
}{}%
- \ifboolKV[ClesExercices]{Profile}{\PfMhideitems}{}%
- \refstepcounter{PfMSection}%
- \PfMChoixCorrection%
- \refstepcounter{PfMExo}%
+ \PfMAvantLesExercices
\ifboolKV[Boulot]{CorrigeSeul}{}{%
\PfMChoixTitreSolution%
\immediate\write\@auxout{%
@@ -2476,11 +2893,10 @@
label=page-\thePfMMaquette-\thePfMExo
]
\ifboolKV[Boulot]{Dys}{\raggedright}{}%
- #3
}%
}%
}{%
- \ifboolKV[ClesExercices]{NonUtilise}{}{%
+ \ifboolKV[ClesExercices]{NonUtilise}{\end{PfMHide}}{%
\ifboolKV[Boulot]{CorrigeSeul}{}{%
\end{tcolorbox}%
\PfMApresLesExercices%
@@ -2490,8 +2906,11 @@
\NewDocumentEnvironment{ExerciceRecapBrevet}{so}{%
\setcounter{PfMAlea}{0}%
+ % Mettre les indications hors-jeu
+ \setcounter{RetiensIndic}{0}
\useKVdefault[ClesExercices]%
\setKV[ClesExercices]{#2}%
+ \ifboolKV[Boulot]{Input}{\Relecture}{}%
\IfBooleanTF{#1}{%
\setKV[ClesExercices]{Numerote=false}%
}{}%
@@ -2518,6 +2937,7 @@
}%
\makeatother
+
%%% Recap Brevet
%%% Style Brevet
\tcbset{%
@@ -2575,6 +2995,7 @@
at (frame.north east)%
{\footnotesize\sffamily \total{\the\c@PfMSection-\the\c@PfMExo}};%
}{}%
+ \useKV[ClesExercices]{Ajout}%
}%
}%
}%
@@ -2608,6 +3029,8 @@
xshift=10pt,
] at (frame.north west){\bfseries\sffamily \useKV[PdT]{NomExercice} \thePfMExo\ifboolKV[ClesExercices]{AffichageTitre}{ : \useKV[ClesExercices]{Titre}}{}};
}
+ %%
+ \useKV[ClesExercices]{Ajout}%
%%
\PfMAffichageLogos%
%
@@ -2655,8 +3078,11 @@
\newenvironment{exercicePdT}[1][]{%
\setcounter{PfMAlea}{0}%
\setcounter{PfMNbLogo}{1}
+ % Mettre les indications hors-jeu
+ \setcounter{RetiensIndic}{0}
\useKVdefault[ClesExercices]%
\setKV[ClesExercices]{#1}%
+ \ifboolKV[Boulot]{Input}{\Relecture}{}%
\setKV[ClesExercices]{BaremeTotal=false,BaremeDetaille=false}%
\refstepcounter{PfMSection}%
\PfMChoixCorrection%
@@ -2704,6 +3130,17 @@
\end{tikzpicture}%
}%
+\NewDocumentCommand\CheminNeutre{m}{%
+ \setsepchar[*]{,*/}%
+ \readlist*\ListeCheminVrai{#1}%
+ \setsepchar{,}%
+ \begin{tikzpicture}[remember picture,overlay]%
+ \foreachitem\compteur\in\ListeCheminVrai{%
+ \draw[cheminPdT] (\ListeCheminVrai[\compteurcnt,1]) to (\ListeCheminVrai[\compteurcnt,2]);%
+ }%
+ \end{tikzpicture}%
+}%
+
\NewDocumentCommand\CheminFaux{m}{%
\setsepchar[*]{,*/}%
\readlist*\ListeCheminVrai{#1}%
@@ -2785,8 +3222,11 @@
}%
\NewDocumentEnvironment{exerciceKholle}{o}{%
+ % Mettre les indications hors-jeu
+ \setcounter{RetiensIndic}{0}
\useKVdefault[ClesExercices]%
\setKV[ClesExercices]{#1}%
+ \ifboolKV[Boulot]{Input}{\Relecture}{}%
\setKV[ClesExercices]{BaremeTotal=false,BaremeDetaille=false}%
\PfMChoixCorrection%
\refstepcounter{PfMExo}%
@@ -2803,8 +3243,11 @@
\newenvironment{exerciceBase}[1][]{%
\setcounter{PfMAlea}{0}%
\setcounter{PfMNbLogo}{1}
+ % Mettre les indications hors-jeu
+ \setcounter{RetiensIndic}{0}
\useKVdefault[ClesExercices]
\setKV[ClesExercices]{#1}
+ \ifboolKV[Boulot]{Input}{\Relecture}{}%
\setKV[ClesExercices]{BaremeTotal=false,BaremeDetaille=false}
\refstepcounter{PfMExo}
\tcolorbox[%
@@ -2816,8 +3259,11 @@
\newenvironment{exerciceBaseHTML}[1][]{%
\setcounter{PfMAlea}{0}%
\setcounter{PfMNbLogo}{1}
+ % Mettre les indications hors-jeu
+ \setcounter{RetiensIndic}{0}
\useKVdefault[ClesExercices]
\setKV[ClesExercices]{#1}
+ \ifboolKV[Boulot]{Input}{\Relecture}{}%
\setKV[ClesExercices]{BaremeTotal=false,BaremeDetaille=false}
\refstepcounter{PfMExo}
\tcolorbox[%
@@ -3056,6 +3502,8 @@
anchor=west,
xshift=\kvtcb@leftlower,
] at (frame.north west){\bfseries\sffamily\useKV[Fiche]{NomExercice}\ifboolKV[ClesExercices]{Numerote}{ \thePfMExo}{}\ifboolKV[ClesExercices]{AffichageTitre}{\ifboolKV[ClesExercices]{Numerote}{~:~}{\xdef\PfMTitiLgNE{\useKV[Fiche]{NomExercice}}\IfStrEq{\PfMTitiLgNE}{}{}{~:~}}\useKV[ClesExercices]{Titre}}{}};
+ %%
+ \useKV[ClesExercices]{Ajout}%
%%
\PfMAffichageLogos%
%
@@ -3083,14 +3531,16 @@
% colframe=PfMCadreFiche,
frame hidden,
overlay unbroken and first={%
- \draw[colLogo,line width=1pt] ([yshift=-10pt]frame.north west)--([yshift=-10pt]frame.north east);
+ \draw[colLogo,line width=1pt] ([yshift=-12pt]frame.north west)--([yshift=-12pt]frame.north east);
\node[%
name=A,
fill=ColExoFiche,
anchor=west,
xshift=\kvtcb@leftlower,
] at (frame.north west){\color{colLogo}\resizebox{1em}{!}{\carreEntoure{}}~\Large\bfseries\sffamily\useKV[Fiche]{NomExercice}\ifboolKV[ClesExercices]{Numerote}{ \thePfMExo}{}\ifboolKV[ClesExercices]{AffichageTitre}{\ifboolKV[ClesExercices]{Numerote}{.~}{\xdef\PfMTitiLgNE{\useKV[Fiche]{NomExercice}}\IfStrEq{\PfMTitiLgNE}{}{}{.~}}\useKV[ClesExercices]{Titre}}{}};
- %%
+ %%
+ \useKV[ClesExercices]{Ajout}%
+ %%
\PfMAffichageLogos%
%
\PfMAffichageCompetencesTravaillees%
@@ -3149,7 +3599,9 @@
anchor=west,
xshift=10pt,
] at (frame.north west){\bfseries\sffamily \useKV[Parcours]{NomExercice} \thePfMExo\ifboolKV[ClesExercices]{AffichageTitre}{ : \useKV[ClesExercices]{Titre}}{}};
- %%
+ %%
+ \useKV[ClesExercices]{Ajout}%
+ %%
\PfMAffichageLogos%
%%
\PfMAffichageCompetencesTravaillees%
@@ -3230,6 +3682,8 @@
title=Exercice\ifboolKV[ClesExercices]{Numerote}{ \thePfMExo}{}\ifboolKV[ClesExercices]{AffichageTitre}{ : \useKV[ClesExercices]{Titre}}{},
overlay unbroken and first={%
%
+ \useKV[ClesExercices]{Ajout}%
+ %
\PfMAffichageSource%
%
\ifboolKV[ClesExercices]{BaremeTotal}{%
@@ -3274,7 +3728,7 @@
\clearpage
\begin{minipage}{0.6\linewidth}
\begin{tcolorbox}[userie]%
- \sffamily \useKV[IE]{Nom} \useKV[IE]{Numero} : \useKV[IE]{Theme} \ifboolKV[IE]{Sujets}{\scriptsize(Sujet \useKV[IE]{Sujet})}{}
+ \sffamily \useKV[IE]{Nom} \useKV[IE]{Numero} : \useKV[IE]{Theme} \ifboolKV[IE]{Sujets}{{\scriptsize(Sujet \useKV[IE]{Sujet})}}{}
\vspace{1em}
\par{\tiny\useKV[IE]{Code}}\hfill{\scriptsize\useKV[IE]{Date}}
\end{tcolorbox}%
@@ -3299,42 +3753,39 @@
\end{tcolorbox}%
}%
-\NewDocumentCommand\Recapitulatif{mm}{%
- \setKV[Boulot]{#1}%
- \DTLforeach*{dataperso}{\Prenom=PrenomEleve,\Nom=NomEleve,\RecapListeExo=ListeExo}{%
- \ifboolKV[Boulot]{Dys}{%
- \begin{Maquette}[Fiche,Dys]{#2,Code=\normalsize\Prenom~\Nom}%
- }{%
- \begin{Maquette}[Fiche]{#2,Code=\normalsize\Prenom~\Nom}%
- }%
+\NewDocumentCommand\PfMRecapitulatif{mm}{%
+ \setKV[Boulot]{#1}%
+ \setcounter{PfMRetiensMapourPP}{\thePfMMaquette}%
+ \DTLforeach*{dataperso}{\Prenom=PrenomEleve,\Nom=NomEleve,\RecapListeExo=ListeExo}{%
+ \ifboolKV[Boulot]{Dys}{%
+ \begin{Maquette}[Fiche,Dys]{#2,Code=\normalsize\Prenom~\Nom}%
+ }{%
+ \begin{Maquette}[Fiche]{#2,Code=\normalsize\Prenom~\Nom}%
+ }%
+ \readlist*\ListeExercices{\RecapListeExo}%
+ \ifnum\fpeval{\ListeExerciceslen}=1\relax{}
+ \setKVdefault[ClesExercices]{Numerote=false}
+ \input{\jobname-Ma\thePfMRetiensMapourPP-PPEx\ListeExercices[1].tex}%
+ \setKVdefault[ClesExercices]{Numerote}
+ \else
+ \foreach\i in{1,...,\ListeExerciceslen}{%
+ \input{\jobname-Ma\thePfMRetiensMapourPP-PPEx\ListeExercices[\i].tex}%
+ }
+ \fi
+ \ifnum\thePfMCorrigeParcoursPerso=1\relax%
+ % \RecapitulatifCorrection{#2}%
+ \clearpage
+ \TikzFicheCor{#1,Code=\normalsize\Prenom~\Nom}%
\readlist*\ListeExercices{\RecapListeExo}%
\ifnum\fpeval{\ListeExerciceslen}=1\relax{}
- \setKVdefault[ClesExercices]{Numerote=false}
-% \begin{exercice}*
- \input{\jobname-PPEx\ListeExercices[1].tex}%
- % \end{exercice}%
- \setKVdefault[ClesExercices]{Numerote}
+ \textbf{Corrigé de l'exercice} : \input{\jobname-Ma\thePfMMaquette-PPEx\ListeExercices[1].sol}\par\goodbreak%
\else
\foreach\i in{1,...,\ListeExerciceslen}{%
- % \begin{exercice}
- \input{\jobname-PPEx\ListeExercices[\i].tex}%
- % \end{exercice}%
- }
- \fi
- \ifnum\thePfMCorrigeParcoursPerso=1\relax%
- % \RecapitulatifCorrection{#2}%
- \clearpage
- \TikzFicheCor{#1,Code=\normalsize\Prenom~\Nom}%
- \readlist*\ListeExercices{\RecapListeExo}%
- \ifnum\fpeval{\ListeExerciceslen}=1\relax{}
- \textbf{Corrigé de l'exercice} : \input{\jobname-PPEx\ListeExercices[1].sol}\par\goodbreak%
- \else
- \foreach\i in{1,...,\ListeExerciceslen}{%
- \textbf{Corrigé de l'exercice \i} : \input{\jobname-PPEx\ListeExercices[\i].sol}\par\goodbreak%
- }%
- \fi%
+ \textbf{Corrigé de l'exercice \i} : \input{\jobname-Ma\thePfMMaquette-PPEx\ListeExercices[\i].sol}\par\goodbreak%
+ }%
\fi%
- \end{Maquette}%
+ \fi%
+ \end{Maquette}%
}%
}%
@@ -3344,7 +3795,7 @@
\TikzFicheCor{#1,Code=\normalsize\Prenom~\Nom}%
\readlist*\ListeExercices{\RecapListeExo}%
\foreach\i in{1,...,\ListeExerciceslen}{%
- \IfFileExists{\jobname-PPEx\ListeExercices[\i].sol}{\textbf{Corrigé de l'exercice \i} : \input{\jobname-PPEx\ListeExercices[\i].sol}\par\goodbreak}{}%
+ \IfFileExists{\jobname-PPEx\ListeExercices[\i].sol}{\textbf{Corrigé de l'exercice \i} : \input{\jobname-Ma\thePfMMaquette-PPEx\ListeExercices[\i].sol}\par\goodbreak}{}%
}%
}%
}%
@@ -3363,14 +3814,6 @@
}{%
\ifnum\thePfMMaquette=1\relax%
\else%
- %\ifnum\PfMFontSize=0\relax%
- % \fontsize{10}{\fpeval{1.2*10}}%
- %\else\ifnum\PfMFontSize=1\relax%
- % \fontsize{11}{\fpeval{1.2*11}}%
- % \else%
- % \fontsize{12}{\fpeval{1.2*12}}%
- % \fi%
- %\fi%
\fontsize{\fpeval{10+\PfMFontSize}}{\fpeval{1.2*(10+\PfMFontSize)}}%
\selectfont%
\renewcommand{\JustifyingParindent}{\parindent}
@@ -3395,9 +3838,17 @@
}%
%% Pour factoriser l'appel aux corrections dans l'environnement Maquette
+\makeatletter
\NewDocumentCommand\PfMPrepareCorrection{m}{%
\useKVdefault[Boulot]%
\setKV[Boulot]{#1}%
+ \if@CAN
+ \ifnum\thepage<5\relax
+ \xintFor* ##1 in{\xintSeq{1}{\fpeval{5-\thepage}}}\do{%
+ ~\clearpage%
+ }%
+ \fi%
+ \fi%
\if@Dyslexie%
\setKV[Boulot]{Dys}%
\fi%
@@ -3405,6 +3856,7 @@
\setlength{\columnseprule}{\useKV[Boulot]{Epaisseur}}%
\PfMChangerTailleCorrection%
}%
+\makeatother
\NewDocumentCommand\PfMAffichageCorrectionColonnes{}{%
\ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}%
@@ -3418,9 +3870,95 @@
\ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}%
}%
+% GameBook
+\tcbset{%
+ userlivreheros/.style={%
+ spread upwards=-1cm,colback=Ivory,colframe=black!25!Ivory%
+ }%
+}%
+
+\setKVdefault[LivreHeros]{Theme=Les nombres d\'ecimaux}
+
+\NewDocumentCommand\vaen{m}{\ref{#1}}%
+
+\NewDocumentCommand\TikzLivreHeros{}{%
+ \begin{tcolorbox}[userlivreheros]%
+ \begin{center}
+ \Large\sffamily \useKV[LivreHeros]{Theme}
+ \end{center}
+ \end{tcolorbox}%
+}%
+
+\tcbset{%
+ tikzLH/.style={%
+ before skip=1em,
+ enhanced,
+ coltitle=black,
+ colbacktitle=black!10!Ivory,
+ colframe=white,
+ colback=white,
+ attach boxed title to top center={yshift=-2mm},
+ label is label
+ }%
+}%
+
+\newcounter{PfMGameBook}[PfMMaquette]
+\setcounter{PfMGameBook}{0}
+
+\makeatletter
+\def\ExoGBWrite{%
+ \setcounter{PfMAlea}{0}%
+ \PfMChoixCorrection%
+ \stepcounter{PfMExo}%
+ \immediate\write\@auxout{%
+ \string\opcopy{\thePfMExo}{TotalExo}%
+ }%
+ \@bsphack%
+ \immediate\openout \verbatim@out "\jobname-Ma\thePfMMaquette-Ex\thePfMExo.gb"%
+ \let\do\@makeother\dospecials%
+ \catcode`\^^M\active%
+ \def\verbatim@processline{\immediate\write\verbatim@out{\the\verbatim@line}}%
+ \verbatim@start}%
+\def\endExoGBWrite{\immediate\closeout\verbatim@out\@esphack}%
+\makeatother
+%%%%
+
%%%%%%%%%%%%%%% Debut Maquette %%%%%%%
% Environnement englobant le tout.
\makeatletter
+\newwrite\PfMfile@out%
+
+\IfClassLoadedTF{beamer}{%
+ %-> tex.stackexchange.com/questions/605282/beamer-custom-frame-environment-with-options
+ \NewDocumentEnvironment{Maquette}{om}{%
+ \setcounter{RetiensSol}{0}%
+ \setcounter{RetiensRep}{0}%
+ \setcounter{RetiensInd}{0}%
+ % on remet à zéro le compteur des exercices
+ %\setcounter{PfMExo}{0}%
+ \setcounter{PfMSOS}{0}%
+ % nouvelles valeurs.
+ \stepcounter{PfMMaquette}%
+ \IfHookExistsTF{env/exercice/after}{\RemoveFromHook{env/exercice/after}[*]\AddToHook{env/exercice/after}[ChoixExo]{\PfMChoixAffichageCorrection\PfMChoixAffichageEntrainement}}{\AddToHook{env/exercice/after}[ChoixExo]{\PfMChoixAffichageCorrection\PfMChoixAffichageEntrainement}}%
+ \useKVdefault[FdR]%
+ \setKV[FdR]{#1}%
+ \let\exercice\exerciceBeamer\let\endexercice\endexerciceBeamer%
+ \begin{frame}[environment=Maquette,fragile]
+ \setcounter{PfMExo}{10}%
+ \PfCGraineAlea{\useKV[Boulot]{Graine}}%
+ \frametitle{\useKV[FdR]{Theme}\hfill\raisebox{-0.25\height}{\mplibforcehmode\begin{mplibcode}
+ labeloffset:=1pt;
+ fill cercle((0,0),4mm) withcolor white;
+ trace cercle((0,0),4mm) withcolor \mpcolor{Evidence!50};
+ drawoptions(withcolor 0.5white);
+ label.top(TEX("\tiny alea\TeX"),(0,0));
+ drawoptions(withcolor \mpcolor{Evidence});
+ label.bot(TEX("\tiny SL \& CP$^2$"),(0,0));
+ \end{mplibcode}}~\phantom{t}}
+ }{%
+ \end{frame}
+ }
+}{
\NewDocumentEnvironment{Maquette}{om}{%
% on remet à zéro les compteurs de solutions : inutile ?
\setcounter{RetiensSol}{0}%
@@ -3431,43 +3969,58 @@
\setcounter{PfMSOS}{0}%
% nouvelles valeurs.
\stepcounter{PfMMaquette}%
+ \immediate\write\@auxout{%
+ \string\opcopy{0}{ScoreTotal\thePfMMaquette}
+ }%
+ %%\opadd*{#1}{ScoreTotal\thePfMMaquette}{ScoreTotal\thePfMMaquette}%
+ \if@AssembleCorrections
+ \immediate\openout\PfMfile@out \jobname-DefiMq-\thePfMMaquette.tex%
+ \immediate\write\PfMfile@out{\unexpanded{\useKVdefault[Boulot]}}%
+ \immediate\write\PfMfile@out{\unexpanded{\setKV[Boulot]{#1}}}%
+ \immediate\write\PfMfile@out{\TikzFicheCor{\unexpanded{#2}}}%
+ \immediate\closeout\PfMfile@out%
+ \fi
% options de boulot
\IfHookExistsTF{env/Maquette/after}{\RemoveFromHook{env/Maquette/after}[*]}{}%
- %\IfHookExistsTF{env/exercice/after}{\RemoveFromHook{env/exercice/after}[*]}{}%
- % \AddToHook{env/exercice/after}[ChoixExo]{\PfMChoixAffichageCorrection}%
+ \AddToHook{env/Maquette/after}[RetiensExo]{\xdef\PfMRetiensLienExoMa{\PfMRetiensLienExoMa,\thePfMExo}}
+ %--------------
\useKVdefault[Boulot]%
\setKV[Boulot]{#1}%
\ifboolKV[Boulot]{CorrigeSeul}{\setKV[Boulot]{CorrigeFin}}{}%
- \if@Dyslexie
- \setKV[Boulot]{Dys}
- \fi
+ \if@Dyslexie%
+ \setKV[Boulot]{Dys}%
+ \fi%
\PfMBasculeDys%
- \IfHookExistsTF{env/exercice/after}{\RemoveFromHook{env/exercice/after}[*]\AddToHook{env/exercice/after}[ChoixExo]{\PfMChoixAffichageCorrection}}{\AddToHook{env/exercice/after}[ChoixExo]{\PfMChoixAffichageCorrection}}%
+ \IfHookExistsTF{env/exercice/after}{\RemoveFromHook{env/exercice/after}[*]\AddToHook{env/exercice/after}[ChoixExo]{\PfMChoixAffichageCorrection\PfMChoixAffichageEntrainement}}{\AddToHook{env/exercice/after}[ChoixExo]{\PfMChoixAffichageCorrection\PfMChoixAffichageEntrainement}}%
% Test
\IfHookExistsTF{env/exercice/begin}{\RemoveFromHook{env/exercice/begin}[*]}{}%
\IfHookExistsTF{env/Maquette/end}{\RemoveFromHook{env/Maquette/end}[*]}{}%
+% \ifboolKV[Boulot]{Diaporama}{%
+% }{%
\ifboolKV[Boulot]{OlympiadesAPMEP}{%
- \setKV[OlympiadesAPMEP]{#2}%\TikzOlympiadesAPMEP%
- \let\exercice\exerciceOlympiadesAPMEP\let\endexercice\endexerciceOlympiadesAPMEP%
- \ifboolKV[Boulot]{CorrigeFin}{%
- \AddToHook{env/Maquette/after}[Correction]{%
- \PfMPrepareCorrection{#1}%
- \PfMAffichageCorrectionColonnes%
- }%
- }{}%
- }{%
- \ifboolKV[Boulot]{CAN}{%
+ % \input{PfMMaquetteOlympAPMEP}%
+ \setKV[OlympiadesAPMEP]{#2}%\TikzOlympiadesAPMEP%
+ \let\exercice\exerciceOlympiadesAPMEP\let\endexercice\endexerciceOlympiadesAPMEP%
+ \ifboolKV[Boulot]{CorrigeFin}{%
+ \AddToHook{env/Maquette/after}[Correction]{%
+ \PfMPrepareCorrection{#1}%
+ \TikzOlympiadesAPMEPCor{#2}%
+ \PfMAffichageCorrectionColonnes%
+ }%
+ }{}%
+ }{%
+ \ifboolKV[Boulot]{CAN}{%
+ % \input{PfMMaquetteCAN.tex}
\setKV[CAN]{#2}%
- %\ifboolKV[Boulot]{CorrigeSeul}{}{\TikzCAN}%
\setcounter{PfMCNNumQ}{0}%
\setlength{\PfMLargeurQuestion}{\useKV[CAN]{CoefQ}\linewidth}\setlength{\PfMLargeurReponse}{\useKV[CAN]{CoefR}\linewidth}\setlength{\PfMLargeurJury}{\useKV[CAN]{CoefJ}\linewidth}%
\let\exercice\ExoCANWrite\let\endexercice\endExoCANWrite%
\AddToHook{env/exercice/begin}{\setcounter{PfMAlea}{0}}%
\AddToHook{env/Maquette/end}{%
- \xdef\PfMAncienneGraine{\PfMChoisisGraineAlea{123456789}}
+ \xdef\PfMAncienneGraine{\PfMChoisisGraineAlea{123456789}}%
\xdef\PfMCANTotalExo{\thePfMExo}%
\setbox\PfMSauvegardeBox\vbox{%
- \PfMGraineAlea{\thePfMMaquette}
+ \PfMGraineAlea{\thePfMMaquette}%
\setcounter{PfMExo}{0}%
\renewcommand{\arraystretch}{2}%
\begin{longtable}{|c|m{\PfMLargeurQuestion}|>{\centering\arraybackslash}m{\PfMLargeurReponse}|m{\PfMLargeurJury}|}%
@@ -3476,21 +4029,21 @@
\hline%
\endhead%
\xintFor* ##1 in {\xintSeq{1}{\PfMCANTotalExo}}\do{%
- \refstepcounter{PfMCNNumQ}\ttfamily{\thePfMCNNumQ}\label{TestCAN-\thePfMCNNumQ}&\Complement{}\stepcounter{PfMExo}\setcounter{PfMAlea}{0}\input{\jobname-Ex##1.can}&\CNReponse&\\
+ \refstepcounter{PfMCNNumQ}\ttfamily{\thePfMCNNumQ}\label{TestCAN-\thePfMCNNumQ}&\Complement{}\stepcounter{PfMExo}\setcounter{PfMAlea}{0}\input{\jobname-Ma\thePfMMaquette-Ex##1.can}&\CNReponse&\\
\hline%
}%
\end{longtable}%
\renewcommand{\arraystretch}{1}%
- }
+ }%
\ifboolKV[Boulot]{CorrigeInverse}{%
- \PfMPrepareCorrection{#1}%
- \TikzCANCor{#2}%
- \PfMAffichageCorrectionColonnes%
- \clearpage
- \normalsize%
- \TikzCAN%
- \PfMGraineAlea{\thePfMMaquette}%
- \setcounter{PfMCNNumQ}{0}%
+ \PfMPrepareCorrection{#1}%
+ \TikzCANCor{#2}%
+ \PfMAffichageCorrectionColonnes%
+ \clearpage
+ \normalsize%
+ \TikzCAN%
+ \PfMGraineAlea{\thePfMMaquette}%
+ \setcounter{PfMCNNumQ}{0}%
\setcounter{PfMExo}{0}%
\renewcommand{\arraystretch}{2}%
\begin{longtable}{|c|m{\PfMLargeurQuestion}|>{\centering\arraybackslash}m{\PfMLargeurReponse}|m{\PfMLargeurJury}|}%
@@ -3499,7 +4052,7 @@
\hline%
\endhead%
\xintFor* ##1 in {\xintSeq{1}{\PfMCANTotalExo}}\do{%
- \refstepcounter{PfMCNNumQ}\ttfamily{\thePfMCNNumQ}\label{TestCAN-\thePfMCNNumQ}&\Complement{}\stepcounter{PfMExo}\setcounter{PfMAlea}{0}\input{\jobname-Ex##1.can}&\CNReponse&\\
+ \refstepcounter{PfMCNNumQ}\ttfamily{\thePfMCNNumQ}\label{TestCAN-\thePfMCNNumQ}&\Complement{}\stepcounter{PfMExo}\setcounter{PfMAlea}{0}\input{\jobname-Ma\thePfMMaquette-Ex##1.can}&\CNReponse&\\
\hline%
}%
\end{longtable}%
@@ -3508,7 +4061,7 @@
\PfMGraineAlea{\PfMAncienneGraine}%
\TikzCAN%
\setcounter{PfMCNNumQ}{0}%
- \setcounter{PfMExo}{0}%
+ \setcounter{PfMExo}{0}%
\renewcommand{\arraystretch}{2}%
\begin{longtable}{|c|m{\PfMLargeurQuestion}|>{\centering\arraybackslash}m{\PfMLargeurReponse}|m{\PfMLargeurJury}|}%
\hhline{~---}%
@@ -3516,233 +4069,279 @@
\hline%
\endhead%
\xintFor* ##1 in {\xintSeq{1}{\PfMCANTotalExo}}\do{%
- \refstepcounter{PfMCNNumQ}\ttfamily{\thePfMCNNumQ}\label{TestCAN-\thePfMCNNumQ}&\Complement{}\stepcounter{PfMExo}\setcounter{PfMAlea}{0}\input{\jobname-Ex##1.can}&\CNReponse&\\
+ \refstepcounter{PfMCNNumQ}\ttfamily{\thePfMCNNumQ}\label{TestCAN-\thePfMCNNumQ}&\Complement{}\stepcounter{PfMExo}\setcounter{PfMAlea}{0}\input{\jobname-Ma\thePfMMaquette-Ex##1.can}&\CNReponse&\\
\hline%
}%
\end{longtable}%
\renewcommand{\arraystretch}{1}%
- \ifboolKV[Boulot]{CorrigeFin}{\ifboolKV[Boulot]{CorrigeInverse}{}{\clearpage
- \PfMPrepareCorrection{#1}%
- \TikzCANCor{#2}%
- \PfMAffichageCorrectionColonnes%
- }
- }{}
- }
+ \ifboolKV[Boulot]{CorrigeFin}{%
+ \ifboolKV[Boulot]{CorrigeInverse}{}{%
+ \clearpage
+ \PfMPrepareCorrection{#1}%
+ \TikzCANCor{#2}%
+ \PfMAffichageCorrectionColonnes%
+ }%
+ }{}%
+ }%
}%
}{%
\ifboolKV[Boulot]{FdR}{%
- \ifboolKV[Boulot]{CorrigeSeul}{}{%
- \setKV[FdR]{#2}\TikzFdR%
- }
- \let\exercice\exerciceFdR\let\endexercice\endexerciceFdR%
- \ifboolKV[Boulot]{AvecEntrainement}{%
- \AddToHook{env/Maquette/end}[Haltere]{%
- \PfMAffichageEntrainementColonnes%
- }%
- }{}%
- \ifboolKV[Boulot]{CorrigeFin}{%
- \AddToHook{env/Maquette/after}[Correction]{%
- \PfMPrepareCorrection{#1}%
- \TikzFdRCor{#2}%
- \PfMAffichageCorrectionColonnes
+ % \input{PfMMaquetteFdR.tex}%
+ \ifboolKV[Boulot]{CorrigeSeul}{}{%
+ \setKV[FdR]{#2}\TikzFdR%
}%
- }{}%
- }{%
- \ifboolKV[Boulot]{Contrat}{%
- \ifboolKV[Boulot]{CorrigeSeul}{}{%
- \setKV[Contrat]{#2}\TikzContrat%
- }
- \let\exercice\exerciceContrat\let\endexercice\endexerciceContrat%
- \ifboolKV[Boulot]{AvecEntrainement}{%
- \AddToHook{env/Maquette/end}[Haltere]{%
- \PfMAffichageEntrainementColonnes%
- }%
- }{}%
- \ifboolKV[Boulot]{CorrigeFin}{%
+ \let\exercice\exerciceFdR\let\endexercice\endexerciceFdR%
+ \ifboolKV[Boulot]{AvecEntrainement}{%
+ \AddToHook{env/Maquette/end}[Haltere]{%
+ \PfMAffichageEntrainementColonnes%
+ }%
+ }{}%
+ \ifboolKV[Boulot]{CorrigeFin}{%
\AddToHook{env/Maquette/after}[Correction]{%
\PfMPrepareCorrection{#1}%
- \TikzContratCor{#2}%
- \PfMAffichageCorrectionColonnes%
- }%
- }{}%
- }{%
- \ifboolKV[Boulot]{Cours}{%
- \setKV[Cours]{#2}%
- \TikzCours%
- \let\exercice\exerciceFiche\let\endexercice\endexerciceFiche%
- \ifboolKV[Boulot]{CorrigeFin}{%
- \AddToHook{env/Maquette/after}[Correction]{%
- \PfMPrepareCorrection{#1}%
- \TikzFicheCor{#2}%
- \PfMAffichageCorrectionColonnes
- }%
- }{}%
- }{%
- \ifboolKV[Boulot]{RecapBrevet}{%
- \setKV[RecapBrevet]{#2}%
- \TikzRecapBrevet%
- \let\exercice\ExerciceRecapBrevet\let\endexercice\endExerciceRecapBrevet%
- \ifboolKV[Boulot]{CorrigeFin}{%
- \AddToHook{env/Maquette/after}[Correction]{%
- \PfMPrepareCorrection{#1}%
- \TikzRecapBrevetCor{#2}%
- \PfMAffichageCorrectionColonnes%
- }%
- }{}%
- }{%
- \ifboolKV[Boulot]{ParcoursPerso}{%
- \setKV[ParcoursPerso]{#2}%
- \DTLloaddb[noheader,keys={PrenomEleve,NomEleve,ListeExo}]{dataperso}{\useKV[ParcoursPerso]{Fichier}.csv}%
- \let\exercice\exerciceParcoursPerso\let\endexercice\endexerciceParcoursPerso%
- \ifboolKV[Boulot]{CorrigeFin}{\setcounter{PfMCorrigeParcoursPerso}{1}}{}%
- \setcounter{PfMExo}{0}%
- \AtEndDocument{%
- \Recapitulatif{#1}{#2}%
- }%
- }{%
- \ifboolKV[Boulot]{Parcours}{%
- \ifboolKV[Boulot]{CorrigeSeul}{}{%
- \setKV[Parcours]{#2}\TikzParcours%
- }
- \let\exercice\exerciceParcours\let\endexercice\endexerciceParcours%
- \ifboolKV[Boulot]{AvecEntrainement}{%
- \AddToHook{env/Maquette/end}[Haltere]{%
- \PfMAffichageEntrainementColonnes%
- }%
- }{}%
- \ifboolKV[Boulot]{CorrigeFin}{%
- \AddToHook{env/Maquette/after}[Correction]{%
- \PfMPrepareCorrection{#1}%
- \TikzParcoursCor{#2}
- \PfMAffichageCorrectionColonnes
- }%
+ \TikzFdRCor{#2}%
+ \PfMAffichageCorrectionColonnes%
+ }%
}{}%
}{%
- \ifboolKV[Boulot]{PdT}{%
- \ifboolKV[Boulot]{CorrigeSeul}{}{%
- \setKV[PdT]{#2}\TikzPdT%
- }
- \let\exercice\exercicePdT\let\endexercice\endexercicePdT%
+ \ifboolKV[Boulot]{Contrat}{%
+ % \input{PfMMaquetteContrat.tex}%
+ \ifboolKV[Boulot]{CorrigeSeul}{}{%
+ \setKV[Contrat]{#2}\TikzContrat%
+ }%
+ \let\exercice\exerciceContrat\let\endexercice\endexerciceContrat%
+ \ifboolKV[Boulot]{AvecEntrainement}{%
+ \AddToHook{env/Maquette/end}[Haltere]{%
+ \PfMAffichageEntrainementColonnes%
+ }%
+ }{}%
\ifboolKV[Boulot]{CorrigeFin}{%
- \AddToHook{env/Maquette/after}[Correction]{%
- \PfMPrepareCorrection{#1}%
- \TikzPdTCor{#2}%
- \PfMAffichageCorrectionColonnes%
+ \AddToHook{env/Maquette/after}[Correction]{%
+ \PfMPrepareCorrection{#1}%
+ \TikzContratCor{#2}%
+ \PfMAffichageCorrectionColonnes%
}%
}{}%
}{%
- \ifboolKV[Boulot]{DM}{%
- \ifboolKV[Boulot]{CorrigeSeul}{}{%
- \setKV[DM]{#2}\TikzDM%
- }
- \let\exercice\exerciceDM\let\endexercice\endexerciceDM%
+ \ifboolKV[Boulot]{Cours}{%
+ % \input{PfMMaquetteCours.tex}%
+ \setKV[Cours]{#2}%
+ \TikzCours%
+ \let\exercice\exerciceFiche\let\endexercice\endexerciceFiche%
\ifboolKV[Boulot]{CorrigeFin}{%
- \AddToHook{env/Maquette/after}[Correction]{%
- \PfMPrepareCorrection{#1}%
- \TikzDMCor{#2}%
- \PfMAffichageCorrectionColonnes%
+ \AddToHook{env/Maquette/after}[Correction]{%
+ \PfMPrepareCorrection{#1}%
+ \TikzFicheCor{#2}%
+ \PfMAffichageCorrectionColonnes%
}%
}{}%
}{%
- \ifboolKV[Boulot]{Fiche}{%
- \ifboolKV[Boulot]{CorrigeSeul}{}{%
- \setKV[Fiche]{#2}%
- \TikzFiche%
+ \ifboolKV[Boulot]{RecapBrevet}{%
+ % \input{PfMMaquetteRecapBrevet.tex}%
+ \setKV[RecapBrevet]{#2}%
+ \TikzRecapBrevet%
+ \let\exercice\ExerciceRecapBrevet\let\endexercice\endExerciceRecapBrevet%
+ \ifboolKV[Boulot]{CorrigeFin}{%
+ \AddToHook{env/Maquette/after}[Correction]{%
+ \PfMPrepareCorrection{#1}%
+ \TikzRecapBrevetCor{#2}%
+ \PfMAffichageCorrectionColonnes%
}%
- \let\exercice\exerciceFiche\let\endexercice\endexerciceFiche%
- \ifboolKV[Boulot]{AvecEntrainement}{%
+ }{}%
+ }{%
+ \ifboolKV[Boulot]{ParcoursPerso}{%
+ % \input{PfMMaquetteParcoursPerso.tex}%
+ \setKV[ParcoursPerso]{#2}%
+ \DTLloaddb[noheader,keys={PrenomEleve,NomEleve,ListeExo}]{dataperso}{\useKV[ParcoursPerso]{Fichier}.csv}%
+ \let\exercice\exerciceParcoursPerso\let\endexercice\endexerciceParcoursPerso%
+ \ifboolKV[Boulot]{CorrigeFin}{\setcounter{PfMCorrigeParcoursPerso}{1}}{}%
+ \setcounter{PfMExo}{0}%
+ \AtEndDocument{%
+ \PfMRecapitulatif{#1}{#2}%
+ }%
+ }{%
+ \ifboolKV[Boulot]{Parcours}{%
+ % \input{PfMMaquetteParcours.tex}%
+ \ifboolKV[Boulot]{CorrigeSeul}{}{%
+ \setKV[Parcours]{#2}\TikzParcours%
+ }%
+ \let\exercice\exerciceParcours\let\endexercice\endexerciceParcours%
+ \ifboolKV[Boulot]{AvecEntrainement}{%
\AddToHook{env/Maquette/end}[Haltere]{%
\PfMAffichageEntrainementColonnes%
}%
}{}%
- \ifboolKV[Boulot]{CorrigeFin}{%
- \ifboolKV[Boulot]{CorrigeAll}{%
- \AddToHook{env/Maquette/after}[Correction]{%
- \PfMPrepareCorrection{#1}%
- \TikzFicheCor{#2}%
- \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}%
- \xintFor* ##1 in{\xintSeq{1}{\thePfMExo}}\do{%
- \IfFileExists{\jobname-Ex##1.sol}{\textbf{Corrigé de l'exercice ##1}\par\nopagebreak\input{\jobname-Ex##1.sol}\par\goodbreak}{}%
- }%
- \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}%
- \TikzFicheCorRep{#2}%
- \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}%
- \xintFor* ##1 in{\xintSeq{1}{\thePfMExo}}\do{%
- \IfFileExists{\jobname-Ex##1.rep}{\textbf{Réponse(s) de l'exercice ##1}\par\nopagebreak\input{\jobname-Ex##1.rep}\par\goodbreak}{}%
- }%
- \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}%
- \TikzFicheCorInd{#2}%
- \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}%
- \xintFor* ##1 in{\xintSeq{1}{\thePfMExo}}\do{%
- \IfFileExists{\jobname-Ex##1.cdp}{\textbf{Indice(s) pour l'exercice ##1}\par\nopagebreak\input{\jobname-Ex##1.cdp}\par\goodbreak}{}%
- }%
- \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}%
- }%
- }{%
- \AddToHook{env/Maquette/after}[Correction]{%
- \useKVdefault[Boulot]%
- \setKV[Boulot]{#1}%
- %%
- \if@Dyslexie
- \setKV[Boulot]{Dys}
- \fi
- \PfMBasculeDys%
- \setlength{\columnseprule}{\useKV[Boulot]{Epaisseur}}%
- \TikzFicheCor{#2}%
- \PfMChangerTailleCorrection%
- \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}%
- \PfMAffichageCorrige%
- \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}%
- }%
- }%
- }{}%
- }{%
- \ifboolKV[Boulot]{DS}{%
- \ifboolKV[Boulot]{CorrigeSeul}{}{%
- \setKV[DS]{#2}\TikzDS%
- }%
- \let\exercice\exerciceDS\let\endexercice\endexerciceDS%
- \ifboolKV[Boulot]{BaremeComplet}{%
- \begin{center}
- \TableauRecapitulatif
- \end{center}
- }{}%
- \ifboolKV[Boulot]{CorrigeFin}{%
+ \ifboolKV[Boulot]{CorrigeFin}{%
\AddToHook{env/Maquette/after}[Correction]{%
- \PfMPrepareCorrection{#1}
- \TikzDSCor{#2}%
+ \PfMPrepareCorrection{#1}%
+ \TikzParcoursCor{#2}%
\PfMAffichageCorrectionColonnes%
- }%
- }{}%
- }{%
- \ifboolKV[Boulot]{IE}{%
- \ifboolKV[Boulot]{CorrigeSeul}{}{%
- \setKV[IE]{#2}\TikzIE%
- }
- \let\exercice\exerciceDS\let\endexercice\endexerciceDS%On garde exerciceDS
- \ifboolKV[Boulot]{CorrigeFin}{%
- \AddToHook{env/Maquette/after}[Correction]{%
- \PfMPrepareCorrection{#1}
- \TikzIECor{#2}%
- \PfMAffichageCorrectionColonnes
}%
}{}%
}{%
- \ifboolKV[Boulot]{Kholle}{%
- \setKV[Kholle]{#2}%
- \TikzKholle%
- \let\exercice\exerciceKholle\let\endexercice\endexerciceKholle%
- \ifboolKV[Kholle]{CR}{}{%
+ \ifboolKV[Boulot]{PdT}{%
+ % \input{PfMMaquettePdT.tex}%
+ \ifboolKV[Boulot]{CorrigeSeul}{}{%
+ \setKV[PdT]{#2}\TikzPdT%
+ }%
+ \let\exercice\exercicePdT\let\endexercice\endexercicePdT%
+ \ifboolKV[Boulot]{CorrigeFin}{%
+ \AddToHook{env/Maquette/after}[Correction]{%
+ \PfMPrepareCorrection{#1}%
+ \TikzPdTCor{#2}%
+ \PfMAffichageCorrectionColonnes%
+ }%
+ }{}%
+ }{%
+ \ifboolKV[Boulot]{DM}{%
+ % \input{PfMMaquetteDM.tex}%
+ \ifboolKV[Boulot]{CorrigeSeul}{}{%
+ \setKV[DM]{#2}\TikzDM%
+ }%
+ \let\exercice\exerciceDM\let\endexercice\endexerciceDM%
\ifboolKV[Boulot]{CorrigeFin}{%
\AddToHook{env/Maquette/after}[Correction]{%
- \TikzKholleCor{#2}%
- \TikzKholleCor{#2}%
- \TikzKholleCor{#2}%
- \PfMAffichageCorrige%
+ \PfMPrepareCorrection{#1}%
+ \TikzDMCor{#2}%
+ \PfMAffichageCorrectionColonnes%
}%
}{}%
+ }{%
+ \ifboolKV[Boulot]{Fiche}{%
+ \ifboolKV[Boulot]{CorrigeSeul}{}{%
+ \setKV[Fiche]{#2}%
+ \TikzFiche%
+ }%
+ \let\exercice\exerciceFiche\let\endexercice\endexerciceFiche%
+ \ifboolKV[Boulot]{AvecEntrainement}{%
+ \AddToHook{env/Maquette/end}[Haltere]{%
+ \PfMAffichageEntrainementColonnes%
+ }%
+ }{}%
+ \ifboolKV[Boulot]{CorrigeFin}{%
+ \ifboolKV[Boulot]{CorrigeAll}{%
+ \AddToHook{env/Maquette/after}[Correction]{%
+ \PfMPrepareCorrection{#1}%
+ \TikzFicheCor{#2}%
+ \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}%
+ \xintFor* ##1 in{\xintSeq{1}{\thePfMExo}}\do{%
+ \IfFileExists{\jobname-Ma\thePfMMaquette-Ex##1.sol}{\textbf{Corrigé de l'exercice ##1}\par\nopagebreak\input{\jobname-Ma\thePfMMaquette-Ex##1.sol}\par\goodbreak}{}%
+ }%
+ \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}%
+ \TikzFicheCorRep{#2}%
+ \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}%
+ \xintFor* ##1 in{\xintSeq{1}{\thePfMExo}}\do{%
+ \IfFileExists{\jobname-Ma\thePfMMaquette-Ex##1.rep}{\textbf{Réponse(s) de l'exercice ##1}\par\nopagebreak\input{\jobname-Ma\thePfMMaquette-Ex##1.rep}\par\goodbreak}{}%
+ }%
+ \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}%
+ \TikzFicheCorInd{#2}%
+ \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}%
+ \xintFor* ##1 in{\xintSeq{1}{\thePfMExo}}\do{%
+ \IfFileExists{\jobname-Ma\thePfMMaquette-Ex##1.cdp}{\textbf{Indice(s) pour l'exercice ##1}\par\nopagebreak\input{\jobname-Ma\thePfMMaquette-Ex##1.cdp}\par\goodbreak}{}%
+ }%
+ \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}%
+ }%
+ }{%
+ \AddToHook{env/Maquette/after}[Correction]{%
+% \useKVdefault[Boulot]%
+% \setKV[Boulot]{#1}%
+% %%
+% \if@Dyslexie
+% \setKV[Boulot]{Dys}%
+% \fi
+% \PfMBasculeDys%
+% \setlength{\columnseprule}{\useKV[Boulot]{Epaisseur}}%
+ \if@AssembleCorrections
+ \else
+ \PfMPrepareCorrection{#1}%
+ \TikzFicheCor{#2}%
+ \PfMAffichageCorrectionColonnes%
+ \fi%
+ }%
+ }%
+ }{}%
+ }{%
+ \ifboolKV[Boulot]{DS}{%
+ % \input{PfMMaquetteDS.tex}%
+ \ifboolKV[Boulot]{CorrigeSeul}{}{%
+ \setKV[DS]{#2}\TikzDS%
+ }%
+ \let\exercice\exerciceDS\let\endexercice\endexerciceDS%
+ \ifboolKV[Boulot]{BaremeComplet}{%
+ \begin{center}
+ \TableauRecapitulatif
+ \end{center}
+ }{}%
+ \ifboolKV[Boulot]{CorrigeFin}{%
+ \AddToHook{env/Maquette/after}[Correction]{%
+ \PfMPrepareCorrection{#1}%
+ \TikzDSCor{#2}%
+ \PfMAffichageCorrectionColonnes%
+ }%
+ }{}%
+ }{%
+ \ifboolKV[Boulot]{IE}{%
+ % \input{PfMMaquetteIE.tex}%
+ \ifboolKV[Boulot]{CorrigeSeul}{}{%
+ \setKV[IE]{#2}\TikzIE%
+ }%
+ \let\exercice\exerciceDS\let\endexercice\endexerciceDS%On garde exerciceDS
+ \ifboolKV[Boulot]{CorrigeFin}{%
+ \AddToHook{env/Maquette/after}[Correction]{%
+ \PfMPrepareCorrection{#1}%
+ \TikzIECor{#2}%
+ \PfMAffichageCorrectionColonnes%
+ }%
+ }{}%
+ }{%
+ \ifboolKV[Boulot]{Kholle}{%
+ % \input{PfMMaquetteKholle.tex}%
+ \setKV[Kholle]{#2}%
+ \TikzKholle%
+ \let\exercice\exerciceKholle\let\endexercice\endexerciceKholle%
+ \ifboolKV[Kholle]{CR}{}{%
+ \ifboolKV[Boulot]{CorrigeFin}{%
+ \AddToHook{env/Maquette/after}[Correction]{%
+ \TikzKholleCor{#2}%
+ \TikzKholleCor{#2}%
+ \TikzKholleCor{#2}%
+ \PfMAffichageCorrige%
+ }%
+ }{}%
+ }%
+ }{%
+ \ifboolKV[Boulot]{LivreHeros}{%
+ \setKV[LivreHeros]{#2}%
+ \TikzLivreHeros%
+ \let\exercice\ExoGBWrite\let\endexercice\endExoGBWrite%
+ \AddToHook{env/Maquette/end}{%
+ \xdef\PfMListeExoGB{}%
+ \xintFor* ##1 in{\xintSeq{2}{\thePfMExo}}\do{%
+ \xdef\PfMListeExoGB{\PfMListeExoGB,##1}%
+ }%
+ \MelangeListe{\PfMListeExoGB}{\fpeval{\thePfMExo-1}}%
+ \xdef\PfMFooMelange{1,\faa}%
+ \setsepchar{,}\ignoreemptyitems\readlist*\ListePerm{\PfMFooMelange}\reademptyitems%
+ \phantomsection{}
+ \addcontentsline{toc}{section}{\useKV[LivreHeros]{Theme}}%
+ \setlength{\columnseprule}{\useKV[Boulot]{Epaisseur}}%
+ \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}%
+ \xintFor* ##1 in{\xintSeq{1}{\thePfMExo}}\do{%
+ \itemtomacro\ListePerm[##1]\PfMPermute%
+ \begin{tcolorbox}[tikzLH,title=##1]%
+ \refstepcounter{PfMGameBook}%
+ \input{\jobname-Ma\thePfMMaquette-Ex\PfMPermute.gb}%
+ \end{tcolorbox}%
+ }%
+ \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}%
+ }%
+ }{}%
+ }%
+ }%
+ }%
+ }%
}%
- }{}%
+ }%
}%
}%
}%
@@ -3751,11 +4350,7 @@
}%
}%
}%
-}%
-}%
-}%
-}%
-}%
+}
}{}%
\makeatother
%D'après JCC
@@ -4391,8 +4986,9 @@
\BaremeEspaceMarge{-82pt}
}
-\AddToHook{env/multicols/begin}{\setcounter{Nbcolonnes}{2}}%
-\AddToHook{env/multicols/after}{\setcounter{Nbcolonnes}{4}}%
+%\AddToHook{env/multicols/begin}{\setcounter{Nbcolonnes}{2}}%
+%\AddToHook{env/multicols/after}{\setcounter{Nbcolonnes}{4}}%
+
\NewDocumentEnvironment{Dispo}{sm+b}{%
\ifPfMDeuxColonnes
\IfBooleanTF{#1}{%
@@ -4468,4 +5064,117 @@
}%
\fi%
\end{align*}
-}{}% \ No newline at end of file
+}{}%
+
+\def\RetiensEchelle{1cm}
+\def\ChoixNbQuestions{3}
+\makeatletter
+\if@CAN
+ \AddToHook{env/document/before}{%
+ \ProvidesPackage{ProfMaquette}[Mode CAN (CP)]%
+ \RequirePackage{pgfmorepages}
+ \pgfmorepagesloadextralayouts
+ \pgfpagesuselayout{4 on 2, book format}[a4paper,landscape]
+ }
+\fi
+
+\if@Revision
+ \AddToHook{env/document/before}{%
+ \ProvidesPackage{ProfMaquette}[Mode Revision (CP)]%
+ \setcounter{Nbcolonnes}{2}%
+ \def\RetiensEchelle{0.5cm}
+ \RequirePackage{pgfmorepages}
+ \pgfmorepagesloadextralayouts
+ \pgfpagesuselayout{4 on 2, book format}[a4paper]
+ }
+\fi
+
+\if@Personnel
+ \input{PfMPerso.cfg}
+\fi
+\makeatother
+
+\IfClassLoadedTF{beamer}{}{%
+ % enumitem obligatoire ^^
+% mais pas compatible beamer
+\RequirePackage{enumitem}
+% d'après https://tex.stackexchange.com/questions/164613/adding-code-at-the-end-of-each-list-item
+\newif\iffirstlegal\firstlegalfalse% We need a toggle to track whether the item is first in the list or not
+
+\newlist{Test}{enumerate}{3}
+
+\def\PfMPar{\par}
+
+\NewDocumentCommand\litem{}{}
+
+\let\olditem\item% save the standard definition of \item in a macro, \olditem
+
+\setlist[Test,1]{%
+ leftmargin=*,
+ label=\arabic*.,
+ before={%
+ \setcounter{PfMProfondeur}{1}%
+ \setcounter{PfMNbLignesFinitem}{0}
+ \firstlegaltrue% set the toggle for first item in the list to true
+ \def\Primeitem{\iffirstlegal\olditem\stepcounter{PfMNbLignesFinitem}%
+ \firstlegalfalse
+ \else
+ \ifnum\PfMListeDesAjoutsdeLignes[\thePfMNbLignesFinitem]>1\relax\PfMPar\Lignespointilles{\PfMListeDesAjoutsdeLignes[\thePfMNbLignesFinitem]}\else\ifnum\PfMListeDesAjoutsdeLignes[\thePfMNbLignesFinitem]=1\relax\PfMPar\pointilles\fi\fi%
+ \olditem\stepcounter{PfMNbLignesFinitem}%
+ \fi
+ }% new, temporary defition of \item
+ \let\litem\Primeitem
+ \let\item\litem
+ },
+ after={%
+ \ifnum\PfMListeDesAjoutsdeLignes[\thePfMNbLignesFinitem]>0\relax\PfMPar\Lignespointilles{\PfMListeDesAjoutsdeLignes[\thePfMNbLignesFinitem]}\else\ifnum\PfMListeDesAjoutsdeLignes[\thePfMNbLignesFinitem]=1\relax\PfMPar\pointilles\fi\fi%
+ % fill for final item in list
+ \let\litem\olditem% restore standard definition of \item
+ \let\item\olditem
+ \setcounter{PfMProfondeur}{0}%
+ }%
+}%
+
+\setlist[Test,2]{%
+ leftmargin=*,
+ label=(\alph*),
+ before={%
+ \setcounter{PfMProfondeur}{2}%
+ \setcounter{PfMNbLignesFinitemi}{0}
+ \firstlegaltrue%
+ \def\Seconditem{\iffirstlegal\olditem\stepcounter{PfMNbLignesFinitemi}\firstlegalfalse\else%
+ \ifnum\PfMListeDesAjoutsdeLignesi[\thePfMNbLignesFinitemi]>1\relax\PfMPar\Lignespointilles{\PfMListeDesAjoutsdeLignesi[\thePfMNbLignesFinitemi]}\else\ifnum\PfMListeDesAjoutsdeLignesi[\thePfMNbLignesFinitemi]=1\relax\PfMPar\pointilles\fi
+ \fi%
+ \olditem\stepcounter{PfMNbLignesFinitemi}
+ \fi
+ }% new, temporary defition of \item
+ \let\litem\Seconditem
+ \let\item\litem
+ },
+ after={%
+ \ifnum\PfMListeDesAjoutsdeLignesi[\thePfMNbLignesFinitemi]>1\relax\PfMPar\Lignespointilles{\PfMListeDesAjoutsdeLignesi[\thePfMNbLignesFinitemi]}\else\ifnum\PfMListeDesAjoutsdeLignesi[\thePfMNbLignesFinitemi]=1\relax\PfMPar\pointilles\fi
+ \fi%
+% % fill for final item in list
+ \let\litem\Primeitem%
+ \let\item\litem
+ \setcounter{PfMProfondeur}{1}%
+ }%
+}
+
+\newcounter{PfMNbLignesFinitem}
+\newcounter{PfMNbLignesFinitemi}
+\newcounter{PfMProfondeur}
+\setcounter{PfMProfondeur}{0}%
+
+\NewDocumentEnvironment{autoenumerate}{O{}m +b}{%
+ \setsepchar{,}\ignoreemptyitems%
+ \ifnum\thePfMProfondeur=0\relax%
+ \readlist*\PfMListeDesAjoutsdeLignes{#2}%
+ \else%
+ \readlist*\PfMListeDesAjoutsdeLignesi{#2}%
+ \fi%
+ \begin{Test}[#1]%
+ #3
+ \end{Test}%
+}{}%
+} \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/prtec/prtec.cls b/Master/texmf-dist/tex/latex/prtec/prtec.cls
index 9bd3af2237a..9bd46e5ba1c 100644
--- a/Master/texmf-dist/tex/latex/prtec/prtec.cls
+++ b/Master/texmf-dist/tex/latex/prtec/prtec.cls
@@ -1,12 +1,14 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%% This file provides the prtec class for formatting conference papers according to
-%% the Pacific Rim Thermal Engineering Conference (PRTEC) requirements as of April 2019.
+%% the Pacific Rim Thermal Engineering Conference (PRTEC) requirements as of July 2024.
%%
%% The prtec.cls file should be used with the files prtec.bst (for citations) and prtec-template.tex.
%%
%%
-%% This file is version 1.06 dated 2019/08/20.
+%% This file is version and date:
+ \def\versionno{1.07}
+ \def\versiondate{2024/07/07\space}
%%
%% Author: John H. Lienhard V
%% Department of Mechanical Engineering
@@ -34,7 +36,7 @@
%%
%% LICENSE:
%%
-%% Copyright (c) 2019 John H. Lienhard
+%% Copyright (c) 2024 John H. Lienhard
%%
%% Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
%% associated documentation files (the "Software"), to deal in the Software without restriction,
@@ -54,33 +56,14 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{prtec}[2019/08/20 PRTEC paper format]
+\ProvidesClass{prtec}[\versiondate\ PRTEC paper format]
-\LoadClass[twoside,11pt]{article}
-% Two-sided layout not used in PRTEC's specs, but is included anyway.
+\LoadClass[11pt]{article}
%%%%%%%%%%%%%% Options for the class %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\RequirePackage{ifthen}
-\newboolean{DefaultSups}
-\setboolean{DefaultSups}{true}
-
-\RequirePackage{kvoptions}
-\RequirePackage{kvsetkeys}
-\SetupKeyvalOptions{
- family=prtec,
- prefix=prtec@,
- setkeys=\kvsetkeys,
-}
-
-%%% set key nodefaultsups to obtain newtx superiors font for footnotes.
-\define@key{prtec}{nodefaultsups}[false]{%
- \setboolean{DefaultSups}{#1}
-}
-
-\ProcessKeyvalOptions*
-
%% option to omit PRTEC footer and header
\DeclareOption{nofoot}{%
@@ -96,13 +79,10 @@
%% Access many options from newtxmath
%% See newtxmath documentation for details
-\DeclareOption{upint,smallerops,varvw,varg,slantedGreek,frenchmath,varbb,cmbraces}{\PassOptionsToPackage{}{newtxmath}}
+\DeclareOption{upint,smallerops,varvw,varg,slantedGreek,frenchmath,varbb,cmbraces,subscriptcorrection}{\PassOptionsToPackage{}{newtxmath}}
%% Option for slightly larger small capitals font
-\DeclareOption{largesc}{\PassOptionsToPackage{}{newtxtext}}
-
-%% Option not to use latex default superscripts, instead using the newtxtext superiors font [nodefaultsups]
-\ifthenelse{\boolean{DefaultSups}}{\PassOptionsToPackage{defaultsups}{newtxtext}}{\relax}
+\DeclareOption{largesc}{\PassOptionsToPackage{largesc=true}{newtxtext}}
%% Suppress warnings about any omitted keys as unused global options
\DeclareOption*{}
@@ -112,8 +92,8 @@
%%%%%%%%%%%%% end options %%%%%%%%%%%%%%%%%%%
-\RequirePackage[a4paper, left=20mm, right=20mm, top=20mm, bottom = 20mm, footskip=10mm, includefoot, headsep=2mm]{geometry}
-% conforms to PRTEC 19 required margins
+\RequirePackage[a4paper, left=20mm, right=20mm, top=20mm, bottom=20mm, headsep=3mm, includefoot ]{geometry}
+% conforms to PRTEC24 required margins
\RequirePackage{parskip}
@@ -122,8 +102,9 @@
\renewcommand*{\bibfont}{\footnotesize}
\RequirePackage{graphicx}
-\RequirePackage[hyperref,fixpdftex,dvipsnames,svgnames,x11names]{xcolor}
-\RequirePackage{xparse}
+\RequirePackage[dvipsnames,svgnames,x11names]{xcolor}
+
+\ifdefined\NewDocumentCommand\else\RequirePackage{xparse}\fi
%%%%%%%%%%%%%%%%%%%%%%%%
@@ -136,14 +117,10 @@
%%%% FONT related %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\RequirePackage{mathtools} % extends amsmath
-\RequirePackage[utf8]{inputenc}
\RequirePackage[]{newtxtext}
\RequirePackage[]{newtxmath}
% See package documentation
-%% override \textsu if using default superiors
-\ifthenelse{\boolean{DefaultSups}}{\let\textsu\textsuperscript}{\relax}
-
\RequirePackage{bm} % load after all other math packages, to give greater access to bold math
@@ -163,19 +140,19 @@
\RequirePackage{fancyhdr}
\pagestyle{fancy}
-\setlength{\headheight}{22.53pt}
+\setlength{\headheight}{24pt}
\fancyfoot{}
-\fancyfoot[CE,CO]{\thepage}
-\fancyfoot[RO,LE]{}
+\fancyfoot[C,C]{\thepage}
+\fancyfoot[R,L]{}
\fancyhead{}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
\fancypagestyle{title}{%
\fancyhf{} % clear all header and footer fields
-\fancyfoot[LO,RE]{Copyright~\textcopyright~\the\year\ The Author(s). Distributed by JSME, KSME, and ASTFE with permission.}
-\fancyfoot[LE,RO]{\thepage}
-\fancyhead[LE,RO]{\bfseries\sffamily \HeaderConfName}
+\fancyfoot[L]{Copyright~\textcopyright~\the\year\ The Author(s). Distributed by JSME, KSME, and ASTFE with permission.}
+\fancyfoot[R]{\thepage}
+\fancyhead[R]{\bfseries\sffamily \HeaderConfName}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}}
@@ -196,10 +173,9 @@
\noindent\makebox[2ex][r]{\@makefnmark}#1}
-
%%%%%%%%% CAPTION RELATED %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\RequirePackage[labelfont={sf,bf},hypcap=false]{caption}
+\RequirePackage[labelfont={bf},hypcap=false]{caption}
\RequirePackage[hypcap=false,list=true]{subcaption}
\captionsetup[figure]{name=Fig.,labelfont={bf},textfont={}, labelsep=quad} %textformat=period,
@@ -207,15 +183,12 @@
%%%%%%%%%%%%%%%%%% Section headings %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% wish to accommodate hyperref
-
-\RequirePackage{textcase} %% Allows uppercase titles and captions without errors from math and citations
\RequirePackage[raggedright,indentafter]{titlesec}
% PRTEC specifies 12 pt headings
-\titleformat{\section}{\bfseries\mathversion{bold}\large\centering}{\thesection.}{0.5em}{\MakeTextUppercase}
-\titleformat{name=\section,numberless}{\bfseries\mathversion{bold}\large\centering}{}{0em}{\MakeTextUppercase}
+\titleformat{\section}{\bfseries\mathversion{bold}\large\centering}{\thesection.}{0.5em}{\MakeUppercase}
+\titleformat{name=\section,numberless}{\bfseries\mathversion{bold}\large\centering}{}{0em}{\MakeUppercase}
\titleformat{\subsection}[runin]{\bfseries}{\thesubsection}{0.5em}{\mathversion{bold}\noindent}[\hspace*{0.5em}]
\titleformat{\subsubsection}[runin]{\itshape}{}{0em}{\noindent\underline}[.\hspace*{0.5em}]
@@ -230,88 +203,81 @@
\setcounter{section}{0}
\pdfbookmark[0]{Appendices}{appendices}
\renewcommand\thesection{\Alph{section}}
- \titleformat{\section}{\bfseries\mathversion{bold}\large\centering}{APPENDIX \thesection:}{0.5em}{\MakeTextUppercase}
+ \titleformat{\section}{\bfseries\mathversion{bold}\large\centering}{APPENDIX \thesection:}{0.5em}{\MakeUppercase}
}
%%%%%%%%%%%%% hyperref %%%%%%%%%%%%%%%%%%%
-\RequirePackage{hyperxmp} %% to fix transfer of metadata to Acrobat pdf
-
-\RequirePackage[%
- unicode, % Unicode encoded PDF strings
- psdextra, % additional support for math in pdf bookmarks
- pdfborder={0 0 0},%
- bookmarks=true, %
- bookmarksnumbered=true,%
- bookmarksopen=true,%
- bookmarksopenlevel=1,%
- colorlinks=true,%%% <=== set false to get black type, but do so in .tex file
+\RequirePackage[psdextra]{hyperref}
+
+\hypersetup{
+ colorlinks=true,
+ pdfborder={0 0 0},
+ bookmarksnumbered=true,
+ bookmarksopen=true,
+ bookmarksopenlevel=1,
+ pdfpagelayout=SinglePage,
+ pdfdisplaydoctitle=true,
+ pdfstartview=Fit,
+ pdfnewwindow=true,
linkcolor=blue, %
- citecolor=blue, % SeaGreen4,%
- urlcolor=blue, % Red3,%
- breaklinks=true,%
- pdftitle={}, % <=== add in .tex file
- pdfkeywords={}, % <=== add in .tex file
- pdfnewwindow=true,%
- pdfpagelayout=TwoPageRight,%
- pdfauthor={}, % <=== add in .tex file
- pdfdisplaydoctitle=true%
- ]{hyperref}
-
+ citecolor=blue, %
+ urlcolor=blue, %
+ filecolor=violet,%
+}
\urlstyle{same} % don't switch to typewriter font
\RequirePackage{doi} % provides hyperlinks for doi in bibliography
\renewcommand{\doitext}{doi:~} % change the default, {doi:}, to this for PRTEC specification
-%% Since \bm is useful in headings, this fix will reduce frequency with which
-%% alternate pdfstrings must be given in section command as \section[pdfstring]{texstring}
+%% Since \bm may be useful in headings, this fix will reduce frequency with which
+%% alternate pdfstrings must be given in revised section command as \section[pdfstring]{texstring}
\pdfstringdefDisableCommands{%
\def\bm#1#{\relax}%
}
-%% Let's also make sure \NoCaseChange in section headings won't break pdf bookmarks
+% Let's disable \( and \) in pdf bookmarks
+\pdfstringdefDisableCommands{%
+ \def\({\relax}%
+ \def\){\relax}%
+}
+
+% Let's also make sure \NoCaseChange in section headings won't break pdf bookmarks
\pdfstringdefDisableCommands{%
\let\NoCaseChange\relax%
}
-%% Let's just remove citations from pdf bookmarks
+% Let's just remove citations from pdf bookmarks
\pdfstringdefDisableCommands{%
\def\cite{\@gobble}%
}
-%% Let's make sure footnotes in section headings don't break pdf bookmarks.
+%% Ensure that tag color does not follow \eqref into bookmarks
+\pdfstringdefDisableCommands{%
+ \def\eqref#1{(\ref{#1})}%
+}
+
+% Let's make sure footnotes in section headings don't break pdf bookmarks.
+% Revised footnote command above is already robust
+
\RequirePackage{etoolbox}
-\robustify{\footnote}
+\robustify\footnote
\pdfstringdefDisableCommands{%
\def\footnote#1{}%
}
-
%% Let's also add \footnote to the \TextUppercase exception list, so that footnote text won't be capitalized
-%% if given in section headings
-\RequirePackage{xpatch}
-\xpatchcmd{\@uclcnotmath}{\@nonchangecase\ref}{\@nonchangecase\ref\@nonchangecase\footnote}{}{}
-
-
-%%% Create an optional argument for unnumbered sections and set pdf bookmark (thru \addcontentsline).
-%%% The optional argument will manually set the pdf bookmark for that section; can be used to avoid hyperref
-%%% errors when macros are in section titles.
-%%% There should not be errors for $$, \cite, \ref, \label, \footnote, or \bm with current construction.
-\let\svsection\section
-\RenewDocumentCommand{\section}{s o m}{%
- \IfBooleanTF {#1}
- {\svsection*{#3}\phantomsection
- {\IfNoValueTF {#2}
- {\addcontentsline{toc}{section}{#3} }
- {\addcontentsline{toc}{section}{#2} }
- }
- }
- {\IfNoValueTF {#2}
- {\svsection{#3}}
- {\svsection[#2]{#3}}
- }
-}
+%% if given in section headings. Ditto for \eqref
+%
+\ifx\AddToNoCaseChangeList\@undefined % see https://github.com/John02139/asmeconf/issues/5
+ \patchcmd{\@uclcnotmath}{\@nonchangecase\ref}{\@nonchangecase\ref\@nonchangecase\footnote}{\typeout{PRTEC patched textcase nonchangecase to include footnote.}}{}
+ \patchcmd{\@uclcnotmath}{\@nonchangecase\ref}{\@nonchangecase\ref\@nonchangecase\eqref}{\typeout{PRTEC patched textcase nonchangecase to include eqref.}}{}
+\else
+ \AddToNoCaseChangeList{\eqref \footnote}
+\fi
+
+%%% There should be no errors for section headings with \(, \), \cite, \ref, \eqref, \label, \footnote, \NoCaseChange, or \bm
%%%%%%%%%%%%% Define special environments %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -321,7 +287,7 @@
\providecommand{\@keywords}{\relax}
-\DeclareDocumentCommand{\keywords}{m}{%
+\NewDocumentCommand{\keywords}{m}{%
\IfNoValueTF{#1}{%
\relax}{%
\long\def\@keywords{\par\medskip\noindent{\bfseries\small KEYWORDS: }{\small #1}}%
@@ -331,7 +297,7 @@
\DeclareDocumentEnvironment{abstract}{}{%
\section*{Abstract}%
}
- {\@keywords\bigskip%
+ {\@keywords\ignorespacesafterend%
}
@@ -347,7 +313,7 @@
%% If the second argument of \entry is omitted, a bold section heading is produced, e.g. \entry{Greek Letters}
-\DeclareDocumentCommand{\entry}{m g}{%
+\NewDocumentCommand{\entry}{m g}{%
\IfNoValueTF{#2}{%
\item[\itshape#1\hfill]\smallskip
}{%
@@ -388,7 +354,7 @@
\providecommand\@ConfCity{\hbox{ }}
\newcommand{\HeaderConfName}{%
-\parbox{\linewidth}{\raggedleft\bfseries\sffamily%
+\parbox{\linewidth}{\raggedleft\bfseries\sffamily\small%
\@ConfName\linebreak[4]%\par%
\@ConfDate\@CDsep\@ConfCity%
}%
@@ -400,7 +366,7 @@
\newcommand{\PaperNo}{%
\vspace*{-4.7mm}%
\parbox{\linewidth}{\raggedleft\bfseries\sffamily\Large%
-\MakeTextUppercase{\@paperno}%
+\MakeUppercase{\@paperno}%
}%
}
@@ -410,7 +376,7 @@
\newcommand{\PaperTitle}{%
\par\vspace*{6mm}%
\parbox{\linewidth}{\centering{\bfseries\Large%
-\MakeTextUppercase{\@papertitle}%
+\MakeUppercase{\@papertitle}%
\thispagestyle{title}\par} %% <=== \par gets the font leading to stick so that lines space properly
}%
}
@@ -429,13 +395,13 @@
\NewCoffin{\AffiliationsBlock}
\SetHorizontalCoffin\AffiliationsBlock{}
-\DeclareDocumentCommand{\SetAuthors}{m}{%
+\NewDocumentCommand{\SetAuthors}{m}{%
\SetHorizontalCoffin\AuthorBlock{%
\parbox{\linewidth}{\centering\bfseries\ignorespaces#1\ignorespaces}%
}
}
-\DeclareDocumentCommand{\SetAffiliation}{m m}{%
+\NewDocumentCommand{\SetAffiliation}{m m}{%
\SetVerticalCoffin\AffiliationBlock{\textwidth}{%
\centering\footnotemark[#1]#2\ignorespaces%
}
@@ -448,7 +414,7 @@
\newif\ifCA\CAfalse
\newcommand{\CAemail}[1]{\gdef\@CAemail{#1}}
-\DeclareDocumentCommand{\CorrespondingAuthor}{m}{%
+\NewDocumentCommand{\CorrespondingAuthor}{m}{%
\global\CAtrue%
\CAemail{#1}%
$^\ast$%
@@ -457,13 +423,13 @@
%%% flag for joint first authors (two or more)
\newif\ifJA\JAfalse
-\DeclareDocumentCommand{\JointFirstAuthor}{}{%
+\NewDocumentCommand{\JointFirstAuthor}{}{%
\global\JAtrue%
$^\dagger$%
}
%%% Affiliation mark
-\DeclareDocumentCommand{\affil}{m}{%
+\NewDocumentCommand{\affil}{m}{%
{\mdseries\footnotemark[#1]}%
}
@@ -475,11 +441,11 @@
\oldaffil{#1}\futurelet\nextToken\isOthernote}
\newcommand\isOthernote{%
- \ifx\CorrespondingAuthor\nextToken\textsu{\mdseries,}%
+ \ifx\CorrespondingAuthor\nextToken\textsuperscript{\mdseries,}%
\else%
- \ifx\JointFirstAuthor\nextToken\textsu{\mdseries,}%
+ \ifx\JointFirstAuthor\nextToken\textsuperscript{\mdseries,}%
\else
- \ifx\affil\nextToken\textsu{\mdseries,}%
+ \ifx\affil\nextToken\textsuperscript{\mdseries,}%
\fi%
\fi%
\fi%
@@ -494,7 +460,7 @@
\renewcommand\JointFirstAuthor{%
\oldJointFirstAuthor\futurelet\nextToken\isOthernote}
-\DeclareDocumentCommand{\SetAuthorBlock}{}{%
+\NewDocumentCommand{\SetAuthorBlock}{}{%
\let\savethefootnote\thefootnote
\JoinCoffins\AuthorBlock[hc,b]\AffiliationsBlock[hc,t](0pt,-\baselineskip)
\centerline{\TypesetCoffin\AuthorBlock}
@@ -511,7 +477,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% Make the title section
-\DeclareDocumentCommand{\MakeTitlePage}{}{%
+\NewDocumentCommand{\MakeTitlePage}{}{%
\PaperNo
\PaperTitle
\vspace*{2\baselineskip}
diff --git a/Master/texmf-dist/tex/latex/pst-coil/pst-coil.sty b/Master/texmf-dist/tex/latex/pst-coil/pst-coil.sty
index d5b0311532b..1def1526c09 100644
--- a/Master/texmf-dist/tex/latex/pst-coil/pst-coil.sty
+++ b/Master/texmf-dist/tex/latex/pst-coil/pst-coil.sty
@@ -1,4 +1,4 @@
-%% $Id: pst-coil.sty 539 2011-07-12 08:22:33Z herbert $
+%% $Id: pst-coil.sty 930 2024-08-13 18:19:44Z herbert $
\RequirePackage{pstricks}
\ProvidesPackage{pst-coil}[2010/02/01 package wrapper for
pst-coil.tex (hv)]
diff --git a/Master/texmf-dist/tex/latex/pst-node/pst-node.sty b/Master/texmf-dist/tex/latex/pst-node/pst-node.sty
index 43edb5aa2b0..4fe6a63aa2c 100644
--- a/Master/texmf-dist/tex/latex/pst-node/pst-node.sty
+++ b/Master/texmf-dist/tex/latex/pst-node/pst-node.sty
@@ -1,10 +1,10 @@
-% $Id: pst-node.sty 438 2022-01-31 17:45:26Z herbert $
+% $Id: pst-node.sty 919 2024-07-10 18:31:27Z herbert $
%%
%% This is file `pst-node.sty'.
%%
%% IMPORTANT NOTICE:
%%
-%% pst-node.sty Copyright (C) 2004-2017 Herbert Voss <voss@perce.de>
+%% pst-node.sty Copyright (C) 2004-2024 Herbert Voss <voss@perce.de>
%% Rolf Niepraschk <Rolf.Niepraschk@ptb.de>
%%
%% This package may be distributed under the terms of the LaTeX Project
@@ -14,7 +14,7 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{pst-node}
- [2012/09/18 v1.01 LaTeX wrapper for `pst-node' (HV)]
+ [2024/07/10 v1.02 LaTeX wrapper for `pst-node' (HV)]
%
\newif\ifpst@OldVersion\pst@OldVersionfalse
\DeclareOption{97}{\pst@OldVersiontrue}
@@ -32,13 +32,14 @@
\@addtofilelist{pst-node97.pro}}{}%
\else
\RequirePackage{pstricks}
-\ProvidesPackage{pst-node}[2010/04/22 package wrapper for pst-node.tex]
+\ProvidesPackage{pst-node}[2024/07/10 package wrapper for pst-node.tex]
\input{pst-node.tex}
\ProvidesFile{pst-node.tex}
[\filedate\space \fileversion\space `pst-node' (tvz,hv)]
\IfFileExists{pst-node.pro}{%
\ProvidesFile{pst-node.pro}
- [2011/09/18 v. 1.14, PostScript prologue file (hv)]
+ [2024/07/10 v. 1.15a, PostScript prologue file (hv)]
\@addtofilelist{pst-node.pro}}{}%
\fi
+
\endinput
diff --git a/Master/texmf-dist/tex/latex/quizztex/quizztex.sty b/Master/texmf-dist/tex/latex/quizztex/quizztex.sty
index ee18c46d0d9..fc199309aeb 100644
--- a/Master/texmf-dist/tex/latex/quizztex/quizztex.sty
+++ b/Master/texmf-dist/tex/latex/quizztex/quizztex.sty
@@ -4,7 +4,9 @@
% : 'Tout le monde veut prendre sa place' is a Tradematk from Air Productions.
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{quizztex}[2023/11/05 0.1.2 Construire des quizz 'comme dans les jeux' ]
+\ProvidesPackage{quizztex}[2024/09/10 0.1.4 Construire des quizz 'comme dans les jeux' ]
+%0.1.4 Macro pour modifier les paramètres par défaut des clés
+%0.1.3 Annulation du chargement de tikz.babel
%0.1.2 Passage \tikzstyle vers \tikzset (merci à Sam C.)
%0.1.1 Amélioration de la gestion des réponses dans WWTBAM + Position des Jokers (cc P. Bideault ;-))
%0.1.0 Version initiale
@@ -18,7 +20,8 @@
\RequirePackage{calc}
\RequirePackage{varwidth}
%------Librairies
-\usetikzlibrary{calc,positioning,shapes.geometric,babel,fadings}
+\usetikzlibrary{calc,positioning,shapes.geometric,fadings}
+%\usetikzlibrary{babel}
%------Longueurs globales
\newlength{\HauteurQuest}
@@ -120,6 +123,8 @@
PositionJokers=centre
}
+\newcommand\SetDefautMillions[1]{\setKVdefault[wwtbam]{#1}}
+
\NewDocumentCommand\LettreChoixMillions{ m }{%
\textcolor{\CouleurLettreWWTBAM}{\large\sffamily\bfseries{\vphantom{Q}#1}\,:}%
}
@@ -565,6 +570,8 @@
EchellePoints=1
}
+\newcommand\SetDefautPlace[1]{\setKVdefault[TLMVPSP]{#1}}
+
\NewDocumentCommand\QuizzPrendrePlace{ O{} m m m m m }{%clés + questions + 4 réponses
\useKVdefault[TLMVPSP]%
\setKV[TLMVPSP]{#1}%
diff --git a/Master/texmf-dist/tex/latex/quran/quran-transde.def b/Master/texmf-dist/tex/latex/quran/quran-transde.def
index ab355f920a2..b243a37ea86 100644
--- a/Master/texmf-dist/tex/latex/quran/quran-transde.def
+++ b/Master/texmf-dist/tex/latex/quran/quran-transde.def
@@ -1,6 +1,6 @@
%% This is file `quran-transde.def',
%%
-%% Copyright © 2015-2023
+%% Copyright © 2015-2024
%% Seiied-Mohammad-Javad Razavian <javadr@gmail.com>
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% The Current Maintainer of this work is Seiied-Mohammad-Javad Razavian.
%%
-%% to one who has devoted his life to Quran
+%% To one who has devoted his life to Quran
%%
\let\qt@doqt@orig\qt@doqt
\let\ToggleBasmalah@orig\ToggleBasmalah
diff --git a/Master/texmf-dist/tex/latex/quran/quran-transen.def b/Master/texmf-dist/tex/latex/quran/quran-transen.def
index 7cdc00da00b..bc6ef6534d5 100644
--- a/Master/texmf-dist/tex/latex/quran/quran-transen.def
+++ b/Master/texmf-dist/tex/latex/quran/quran-transen.def
@@ -1,6 +1,6 @@
%% This is file `quran-transen.def',
%%
-%% Copyright © 2015-2023
+%% Copyright © 2015-2024
%% Seiied-Mohammad-Javad Razavian <javadr@gmail.com>
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% The Current Maintainer of this work is Seiied-Mohammad-Javad Razavian.
%%
-%% to one who has devoted his life to Quran
+%% To one who has devoted his life to Quran
%%
\let\qt@doqt@orig\qt@doqt
\let\ToggleBasmalah@orig\ToggleBasmalah
diff --git a/Master/texmf-dist/tex/latex/quran/quran-transfa.def b/Master/texmf-dist/tex/latex/quran/quran-transfa.def
index 3fb57246611..3a0b0e2f44e 100644
--- a/Master/texmf-dist/tex/latex/quran/quran-transfa.def
+++ b/Master/texmf-dist/tex/latex/quran/quran-transfa.def
@@ -1,6 +1,6 @@
%% This is file `quran-transfa.def',
%%
-%% Copyright © 2015-2023
+%% Copyright © 2015-2024
%% Seiied-Mohammad-Javad Razavian <javadr@gmail.com>
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% The Current Maintainer of this work is Seiied-Mohammad-Javad Razavian.
%%
-%% to one who has devoted his life to Quran
+%% To one who has devoted his life to Quran
%%
\let\qt@doqt@orig\qt@doqt%
\let\ToggleBasmalah@orig\ToggleBasmalah%
diff --git a/Master/texmf-dist/tex/latex/quran/quran-transfr.def b/Master/texmf-dist/tex/latex/quran/quran-transfr.def
index 15f36dc79e3..e4de0642941 100644
--- a/Master/texmf-dist/tex/latex/quran/quran-transfr.def
+++ b/Master/texmf-dist/tex/latex/quran/quran-transfr.def
@@ -1,6 +1,6 @@
%% This is file `quran-transfr.def',
%%
-%% Copyright © 2015-2023
+%% Copyright © 2015-2024
%% Seiied-Mohammad-Javad Razavian <javadr@gmail.com>
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% The Current Maintainer of this work is Seiied-Mohammad-Javad Razavian.
%%
-%% to one who has devoted his life to Quran
+%% To one who has devoted his life to Quran
%%
\let\qt@doqt@orig\qt@doqt%
\let\ToggleBasmalah@orig\ToggleBasmalah%
diff --git a/Master/texmf-dist/tex/latex/quran/quran-translt.def b/Master/texmf-dist/tex/latex/quran/quran-translt.def
index 4517366824a..e4e1403d9fc 100644
--- a/Master/texmf-dist/tex/latex/quran/quran-translt.def
+++ b/Master/texmf-dist/tex/latex/quran/quran-translt.def
@@ -1,6 +1,6 @@
%% This is file `quran-translt.def',
%%
-%% Copyright © 2015-2023
+%% Copyright © 2015-2024
%% Seiied-Mohammad-Javad Razavian <javadr@gmail.com>
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% The Current Maintainer of this work is Seiied-Mohammad-Javad Razavian.
%%
-%% to one who has devoted his life to Quran
+%% To one who has devoted his life to Quran
%%
\bidi@newrobustcmd\q@b[1]{\textbf{#1}}%
\bidi@newrobustcmd\q@i[1]{\textit{#1}}%
diff --git a/Master/texmf-dist/tex/latex/quran/quran.sty b/Master/texmf-dist/tex/latex/quran/quran.sty
index bbd4b9fec8a..f63cd80b3cb 100644
--- a/Master/texmf-dist/tex/latex/quran/quran.sty
+++ b/Master/texmf-dist/tex/latex/quran/quran.sty
@@ -1,6 +1,6 @@
%% This is file `quran.sty',
%%
-%% Copyright © 2015-2023
+%% Copyright © 2015-2024
%% Seiied-Mohammad-Javad Razavian <javadr@gmail.com>
%%
%% This work may be distributed and/or modified under the
@@ -17,11 +17,11 @@
%%
%% The Current Maintainer of this work is Seiied-Mohammad-Javad Razavian.
%%
-%% to one who has devoted his life to Quran
+%% To one who has devoted his life to Quran
%%
\NeedsTeXFormat{LaTeX2e}
-\def\qurandate{2023/08/01}
-\def\quranversion{2.2}
+\def\qurandate{2024/09/07}
+\def\quranversion{2.3}
\ProvidesPackage{quran}[\qurandate\space v\quranversion^^JAn easy way to typeset the whole or any parts of the holy Quran]
\RequirePackage{ifxetex}
\RequirePackage{biditools}
diff --git a/Master/texmf-dist/tex/latex/quran/qurantext-de.translation.def b/Master/texmf-dist/tex/latex/quran/qurantext-de.translation.def
index ba64f29d5dd..9e2b2029227 100644
--- a/Master/texmf-dist/tex/latex/quran/qurantext-de.translation.def
+++ b/Master/texmf-dist/tex/latex/quran/qurantext-de.translation.def
@@ -1,6 +1,6 @@
%% This is file `qurantext-de.translation.def',
%%
-%% Copyright © 2015-2023
+%% Copyright © 2015-2024
%% Seiied-Mohammad-Javad Razavian <javadr@gmail.com>
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% The Current Maintainer of this work is Seiied-Mohammad-Javad Razavian.
%%
-%% to one who has devoted his life to Quran
+%% To one who has devoted his life to Quran
%%
\qt@newcmd\qurantrans@de@i{Im Namen Allahs, des Allerbarmers, des Barmherzigen!\qt@no{(1)}}
\qt@newcmd\qurantrans@de@ii{Alles Lob gebührt Allah, dem Herrn der Welten\qt@no{(2)}}
diff --git a/Master/texmf-dist/tex/latex/quran/qurantext-en.translation.def b/Master/texmf-dist/tex/latex/quran/qurantext-en.translation.def
index b75d7b21eae..bdb5965e6fd 100644
--- a/Master/texmf-dist/tex/latex/quran/qurantext-en.translation.def
+++ b/Master/texmf-dist/tex/latex/quran/qurantext-en.translation.def
@@ -1,6 +1,6 @@
%% This is file `qurantext-en.translation.def',
%%
-%% Copyright © 2015-2023
+%% Copyright © 2015-2024
%% Seiied-Mohammad-Javad Razavian <javadr@gmail.com>
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% The Current Maintainer of this work is Seiied-Mohammad-Javad Razavian.
%%
-%% to one who has devoted his life to Quran
+%% To one who has devoted his life to Quran
%%
\qt@newcmd\qurantrans@en@i{In the name of Allah, most benevolent, ever-merciful.\qt@no{(1)}}
\qt@newcmd\qurantrans@en@ii{ALL PRAISE BE to Allah, Lord of all the worlds,\qt@no{(2)}}
diff --git a/Master/texmf-dist/tex/latex/quran/qurantext-en.transliteration.def b/Master/texmf-dist/tex/latex/quran/qurantext-en.transliteration.def
index 33298a42d9d..efeab9a81e1 100644
--- a/Master/texmf-dist/tex/latex/quran/qurantext-en.transliteration.def
+++ b/Master/texmf-dist/tex/latex/quran/qurantext-en.transliteration.def
@@ -1,6 +1,6 @@
%% This is file `qurantext-de.transliteration.def',
%%
-%% Copyright © 2015-2023
+%% Copyright © 2015-2024
%% Seiied-Mohammad-Javad Razavian <javadr@gmail.com>
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% The Current Maintainer of this work is Seiied-Mohammad-Javad Razavian.
%%
-%% to one who has devoted his life to Quran
+%% To one who has devoted his life to Quran
%%
\qt@newcmd\qurantrans@lt@i{Bismi All\q@u{a}hi a\q@b{l}rra\q@u{h}m\q@u{a}ni a\q@b{l}rra\q@u{h}eem\q@b{i}\qt@no{(1)}}
\qt@newcmd\qurantrans@lt@ii{Al\q@u{h}amdu lill\q@u{a}hi rabbi alAA\q@u{a}lameen\q@b{a}\qt@no{(2)}}
diff --git a/Master/texmf-dist/tex/latex/quran/qurantext-fa.translation.def b/Master/texmf-dist/tex/latex/quran/qurantext-fa.translation.def
index 4fd97196e7f..beaee873b88 100644
--- a/Master/texmf-dist/tex/latex/quran/qurantext-fa.translation.def
+++ b/Master/texmf-dist/tex/latex/quran/qurantext-fa.translation.def
@@ -1,6 +1,6 @@
%% This is file `qurantext-fa.translation.def',
%%
-%% Copyright © 2015-2023
+%% Copyright © 2015-2024
%% Seiied-Mohammad-Javad Razavian <javadr@gmail.com>
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% The Current Maintainer of this work is Seiied-Mohammad-Javad Razavian.
%%
-%% to one who has devoted his life to Quran
+%% To one who has devoted his life to Quran
%%
\qt@newcmd\qurantrans@fa@i{به نام خداوند رحمتگر مهربان\qt@no{(1)}}
\qt@newcmd\qurantrans@fa@ii{ستايش خدايى را كه پروردگار جهانيان،\qt@no{(2)}}
diff --git a/Master/texmf-dist/tex/latex/quran/qurantext-fr.translation.def b/Master/texmf-dist/tex/latex/quran/qurantext-fr.translation.def
index b214969da28..d5b63cef6fd 100644
--- a/Master/texmf-dist/tex/latex/quran/qurantext-fr.translation.def
+++ b/Master/texmf-dist/tex/latex/quran/qurantext-fr.translation.def
@@ -1,6 +1,6 @@
%% This is file `qurantext-fr.translation.def',
%%
-%% Copyright © 2015-2023
+%% Copyright © 2015-2024
%% Seiied-Mohammad-Javad Razavian <javadr@gmail.com>
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% The Current Maintainer of this work is Seiied-Mohammad-Javad Razavian.
%%
-%% to one who has devoted his life to Quran
+%% To one who has devoted his life to Quran
%%
\qt@newcmd\qurantrans@fr@i{Au nom d'Allah, le Tout Miséricordieux, le Très Miséricordieux.\qt@no{(1)}}
\qt@newcmd\qurantrans@fr@ii{Louange à Allah, Seigneur de l'univers.\qt@no{(2)}}
diff --git a/Master/texmf-dist/tex/latex/quran/qurantext-simple.def b/Master/texmf-dist/tex/latex/quran/qurantext-simple.def
index 6df9b7a3a41..71f1109b6ea 100644
--- a/Master/texmf-dist/tex/latex/quran/qurantext-simple.def
+++ b/Master/texmf-dist/tex/latex/quran/qurantext-simple.def
@@ -1,6 +1,6 @@
%% This is file `qurantext-simple.def',
%%
-%% Copyright © 2015-2023
+%% Copyright © 2015-2024
%% Seiied-Mohammad-Javad Razavian <javadr@gmail.com>
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% The Current Maintainer of this work is Seiied-Mohammad-Javad Razavian.
%%
-%% to one who has devoted his life to Quran
+%% To one who has devoted his life to Quran
%%
\qt@newcmd\qurantext@i{بِسمِ اللَّهِ الرَّحمـٰنِ الرَّحيمِ\qt@no{﴿١﴾}}
\qt@newcmd\qurantext@ii{الحَمدُ لِلَّهِ رَبِّ العالَمينَ\qt@no{﴿٢﴾}}
diff --git a/Master/texmf-dist/tex/latex/quran/qurantext-uthmani-min.def b/Master/texmf-dist/tex/latex/quran/qurantext-uthmani-min.def
index 2d35cc582f7..0c3e6ea1861 100644
--- a/Master/texmf-dist/tex/latex/quran/qurantext-uthmani-min.def
+++ b/Master/texmf-dist/tex/latex/quran/qurantext-uthmani-min.def
@@ -1,6 +1,6 @@
%% This is file `qurantext-uthmani-min.def',
%%
-%% Copyright © 2015-2023
+%% Copyright © 2015-2024
%% Seiied-Mohammad-Javad Razavian <javadr@gmail.com>
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% The Current Maintainer of this work is Seiied-Mohammad-Javad Razavian.
%%
-%% to one who has devoted his life to Quran
+%% To one who has devoted his life to Quran
%%
\qt@newcmd\qurantext@i{بِسمِ اللَّهِ الرَّحمـٰنِ الرَّحيمِ\qt@no{﴿١﴾}}
\qt@newcmd\qurantext@ii{الحَمدُ لِلَّهِ رَبِّ العـٰلَمينَ\qt@no{﴿٢﴾}}
diff --git a/Master/texmf-dist/tex/latex/quran/qurantext-uthmani.def b/Master/texmf-dist/tex/latex/quran/qurantext-uthmani.def
index 387ce7f3643..e5bc607cd38 100644
--- a/Master/texmf-dist/tex/latex/quran/qurantext-uthmani.def
+++ b/Master/texmf-dist/tex/latex/quran/qurantext-uthmani.def
@@ -1,6 +1,6 @@
%% This is file `qurantext-uthmani.def',
%%
-%% Copyright © 2015-2023
+%% Copyright © 2015-2024
%% Seiied-Mohammad-Javad Razavian <javadr@gmail.com>
%%
%% This work may be distributed and/or modified under the
@@ -17,7 +17,7 @@
%%
%% The Current Maintainer of this work is Seiied-Mohammad-Javad Razavian.
%%
-%% to one who has devoted his life to Quran
+%% To one who has devoted his life to Quran
%%
\qt@newcmd\qurantext@i{بِسْمِ ٱللَّهِ ٱلرَّحْمَـٰنِ ٱلرَّحِيمِ\qt@no{﴿١﴾}}
\qt@newcmd\qurantext@ii{ٱلْحَمْدُ لِلَّهِ رَبِّ ٱلْعَـٰلَمِينَ\qt@no{﴿٢﴾}}
diff --git a/Master/texmf-dist/tex/latex/randexam/randexam.cls b/Master/texmf-dist/tex/latex/randexam/randexam.cls
index ec5d1c43c27..dacc079cb0a 100644
--- a/Master/texmf-dist/tex/latex/randexam/randexam.cls
+++ b/Master/texmf-dist/tex/latex/randexam/randexam.cls
@@ -6,7 +6,7 @@
% ----------------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{randexam}[2024-02-18 v2024E Make an exam paper and its randomized variants]
+\ProvidesClass{randexam}[2024-07-09 v2024F Make an exam paper and its randomized variants]
%% Old LaTeX release could not recognize date format like 2022-11-01
%\@ifl@t@r\fmtversion{2022-11-01}{}{
@@ -786,7 +786,8 @@
\UseExamTemplate{examdata}{default}
}
-\preto{\@enddocumenthook}{\printquestions\rdxm@stop@random}
+%% this equals to \AddToHook{enddocument}[randexam]{...}
+\AtEndDocument{\printquestions\rdxm@stop@random}
\newcommand\ignorepars{\@ifnextchar\par{\expandafter\ignorepars\@gobble}{}}
@@ -1228,6 +1229,11 @@
\mbox{}\nobreak\hfill$\cdots\cdots$\solutionpointstext{#1}
\par\noindent\ignorespaces
}
+
+%% \eqno would cause extra space after a $$...$$ equation
+%% this bug was fixed in latex release 2023-06-01
+%% see https://github.com/latex3/latex2e/issues/1059
+%% \tag is used in a \[...\] equation hence no problem with it
\newcommand{\pointseqno}[1]{\eqno{\cdots\cdots\text{\solutionpointstext{#1}}}}
\newcommand{\pointstag}[1]{\tag*{$\cdots\cdots$\solutionpointstext{#1}}}
@@ -1374,6 +1380,9 @@
\RequirePackage{extarrows}
\newcommand{\e}{\mathrm{e}}
\newcommand{\R}{\mathbb{R}}
+ \newcommand{\jacobi}[2]{{\left(\frac{##1}{##2}\right)}}
+ \newcommand{\ii}{\mathrm{i}}
+ \newcommand{\Zi}{\mathbb{Z}[\ii]}
\DeclareMathOperator{\arccot}{arccot}
\DeclareMathOperator{\Corr}{\rho}
\DeclareMathOperator{\Cov}{Cov}
diff --git a/Master/texmf-dist/tex/latex/randintlist/randintlist.sty b/Master/texmf-dist/tex/latex/randintlist/randintlist.sty
new file mode 100644
index 00000000000..4c15af336e6
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/randintlist/randintlist.sty
@@ -0,0 +1,246 @@
+% Author : C. Pierquet
+% licence : Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf
+
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{randintlist}[2024/09/24 0.1.1 Create a list of random numbers with or without multiple values]
+
+%------History
+% 0.1.1 Possibility to exclude values
+% 0.1.0 Initial version
+
+%------Packages
+\RequirePackage{simplekv}
+\RequirePackage{listofitems}
+\RequirePackage{randomlist}
+\RequirePackage{xintexpr}
+\RequirePackage{xstring}
+\RequirePackage{ifthen}
+
+%-----Macros (latex3) for sorting and seed
+\ExplSyntaxOn
+\cs_new_eq:NN \randintseed \sys_gset_rand_seed:n
+\NewDocumentCommand\intascsortlist{m}
+{
+ \clist_sort:Nn #1
+ {
+ \fp_compare:nNnTF {##1} > {##2}
+ { \sort_return_swapped: }
+ { \sort_return_same: }
+ }
+}
+\NewDocumentCommand\intdessortlist{m}
+{
+ \clist_sort:Nn #1
+ {
+ \fp_compare:nNnTF {##1} < {##2}
+ { \sort_return_swapped: }
+ { \sort_return_same: }
+ }
+}
+\ExplSyntaxOff
+
+%----Internal macro (latex2) for testing if element is in list
+\newcommand\ifintvalueinlist[2]{\IfSubStr{,#2,}{,#1,}}
+
+\newcommand\boolvalueinlist[2]{\IfSubStr{,#2,}{,#1,}{\def\resisinlist{1}}{\def\resisinlist{0}}}
+
+\newcommand\xintifintvalueinlist[4]{%
+ \IfSubStr{,#2,}{,#1,}{\xdef\RESTMPVALUE{1}}{\xdef\RESTMPVALUE{0}}%
+ \xintifboolexpr{ \RESTMPVALUE == 1}{#3}{#4}%
+}
+
+%----Macro for generating
+\defKV[randomlistintegers]{%
+ min=\def\TAEEmin{#1},%
+ max=\def\TAEEmax{#1},%
+ nb=\def\TAEEnb{#1},%
+ sep=\def\TAEEsep{#1},%
+ sort=\def\TAEEtri{#1},%
+ seed=\def\TAEEseed{#1},%
+ exclude=\def\TAEEexcluded{#1}
+}
+
+\setKVdefault[randomlistintegers]{%
+ min=1,%
+ max=50,%
+ nb=6,%
+ sep={,},%
+ sort=no,%
+ repeat=false,%
+ seed={-},%
+ exclude={}
+}
+
+\NewList{tmprandintlist}
+
+\NewDocumentCommand\randintlist{ O{} m }{%1=keys,2=listname
+ \useKVdefault[randomlistintegers]%
+ \setKV[randomlistintegers]{#1}%
+ \ifboolKV[randomlistintegers]{repeat}%repeat or not
+ {%repeat allowed
+ \IfStrEq{\TAEEseed}{-}%
+ {}%
+ {%
+ \randintseed{\TAEEseed}%
+ }%
+ %list creation of first element
+ \def\resisinlist{1}%
+ \whiledo{\resisinlist=1}{%
+ \xdef\tmpresrandint{\fpeval{randint(\TAEEmin,\TAEEmax)}}%
+ \boolvalueinlist{\tmpresrandint}{\TAEEexcluded}%
+ }%
+ \xdef#2{\tmpresrandint}%
+ %list creation of other elements
+ \xintFor* ##1 in {\xintSeq{2}{\TAEEnb}}%
+ \do{%
+ \def\resisinlist{1}%
+ \whiledo{\resisinlist=1}{%
+ \xdef\tmpresrandint{\fpeval{randint(\TAEEmin,\TAEEmax)}}%
+ \boolvalueinlist{\tmpresrandint}{\TAEEexcluded}%
+ }%
+ \xdef#2{#2,\tmpresrandint}%
+ }%
+ }%
+ {%no repeating
+ %randomize numbers
+ \IfStrEq{\TAEEseed}{-}%
+ {}%
+ {%
+ \RLsetrandomseed{\TAEEseed}%
+ }%
+ \ClearList{tmprandintlist}%clearing the list
+ \xintFor* ##1 in {\xintSeq{\TAEEmin}{\TAEEmax}}%
+ \do{%
+ \ifintvalueinlist{##1}{\TAEEexcluded}%
+ {}%
+ {%
+ \InsertRandomItem{tmprandintlist}{##1}%
+ }%
+ }%
+ %list creation (first then other)
+ \xdef#2{\tmprandintlist[0]}%
+ \xintFor* ##1 in {\xintSeq{1}{\TAEEnb-1}}%
+ \do{%
+ \xdef#2{#2,\tmprandintlist[##1]}%
+ }%
+ }%
+ %sorting
+ \IfStrEq{\TAEEtri}{asc}%if ascending
+ {\intascsortlist{#2}}%
+ {}%
+ \IfStrEq{\TAEEtri}{des}%if descending
+ {\intdessortlist{#2}}%
+ {}%
+ \StrSubstitute{#2}{,}{\TAEEsep}[#2]%swipping separator if necessary
+}
+
+%-----Macro for extracting
+\NewDocumentCommand\getitemfromrandintlist{ O{,} m m }{%
+ \IfEq{#1}{/}%
+ {%
+ \setsepchar[.]{#1}%
+ }%
+ {%
+ \setsepchar{#1}%
+ }%
+ \readlist*\TMPLISTRANDINT{#2}%
+ \TMPLISTRANDINT[#3]%
+}
+
+%-----french version
+\defKV[randomlisteentiers]{%
+ Min=\def\TAEEmin{#1},%
+ Max=\def\TAEEmax{#1},%
+ Nb=\def\TAEEnb{#1},%
+ Sep=\def\TAEEsep{#1},%
+ Tri=\def\TAEEtri{#1},%
+ Graine=\def\TAEEseed{#1},%
+ Exclure=\def\TAEEexcluded{#1}
+}
+
+\setKVdefault[randomlisteentiers]{%
+ Min=1,%
+ Max=50,%
+ Nb=6,%
+ Sep={,},%
+ Tri=non,%
+ Repet=false,%
+ Graine={-},%
+ Exclure={}
+}
+
+\NewDocumentCommand\ListeRandint{ O{} m }{%1=keys,2=listname
+ \useKVdefault[randomlisteentiers]%
+ \setKV[randomlisteentiers]{#1}%
+ \ifboolKV[randomlisteentiers]{Repet}%repeat or not
+ {%repeat allowed
+ \IfStrEq{\TAEEseed}{-}%
+ {}%
+ {%
+ \randintseed{\TAEEseed}%
+ }%
+ %list creation of first element
+ \def\resisinlist{1}%
+ \whiledo{\resisinlist=1}{%
+ \xdef\tmpresrandint{\fpeval{randint(\TAEEmin,\TAEEmax)}}%
+ \boolvalueinlist{\tmpresrandint}{\TAEEexcluded}%
+ }%
+ \xdef#2{\tmpresrandint}%
+ %list creation of other elements
+ \xintFor* ##1 in {\xintSeq{2}{\TAEEnb}}%
+ \do{%
+ \def\resisinlist{1}%
+ \whiledo{\resisinlist=1}{%
+ \xdef\tmpresrandint{\fpeval{randint(\TAEEmin,\TAEEmax)}}%
+ \boolvalueinlist{\tmpresrandint}{\TAEEexcluded}%
+ }%
+ \xdef#2{#2,\tmpresrandint}%
+ }%
+ }%
+ {%no repeating
+ %randomize numbers
+ \IfStrEq{\TAEEseed}{-}%
+ {}%
+ {%
+ \RLsetrandomseed{\TAEEseed}%
+ }%
+ \ClearList{tmprandintlist}%clearing the list
+ \xintFor* ##1 in {\xintSeq{\TAEEmin}{\TAEEmax}}%
+ \do{%
+ \ifintvalueinlist{##1}{\TAEEexcluded}%
+ {}%
+ {%
+ \InsertRandomItem{tmprandintlist}{##1}%
+ }%
+ }%
+ %list creation (first then other)
+ \xdef#2{\tmprandintlist[0]}%
+ \xintFor* ##1 in {\xintSeq{1}{\TAEEnb-1}}%
+ \do{%
+ \xdef#2{#2,\tmprandintlist[##1]}%
+ }%
+ }%
+ %sorting
+ \IfStrEq{\TAEEtri}{croiss}%if ascending
+ {\intascsortlist{#2}}%
+ {}%
+ \IfStrEq{\TAEEtri}{decroiss}%if descending
+ {\intdessortlist{#2}}%
+ {}%
+ \StrSubstitute{#2}{,}{\TAEEsep}[#2]%swipping separator if necessary
+}
+
+%-----Macro for extracting
+\NewDocumentCommand\ExtraireEltListeRandint{ O{,} m m }{%
+ \IfEq{#1}{/}%
+ {%
+ \setsepchar[.]{#1}%
+ }%
+ {%
+ \setsepchar{#1}%
+ }%
+ \readlist*\TMPLISTRANDINT{#2}%
+ \TMPLISTRANDINT[#3]%
+}
+
+\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/regulatory/regulatory.sty b/Master/texmf-dist/tex/latex/regulatory/regulatory.sty
index 2e89a19a376..2755a8ac9bd 100644
--- a/Master/texmf-dist/tex/latex/regulatory/regulatory.sty
+++ b/Master/texmf-dist/tex/latex/regulatory/regulatory.sty
@@ -19,9 +19,9 @@
% example1-nl.tex, example2-nl.tex,
% example1-en.tex, example2-en.tex,
% md-example.tex, example.md,
-% fc-dutch.def and regulatory.sty
+% regulatory.sty
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{regulatory}[2024/01/27 0.0.3 Xerdi's Regulatory Package]
+\ProvidesPackage{regulatory}[2024/09/04 0.0.4 Xerdi's Regulatory Package]
\RequirePackage{pgfopts}
\RequirePackage{xifthen}
diff --git a/Master/texmf-dist/tex/latex/reledmac/reledpar.sty b/Master/texmf-dist/tex/latex/reledmac/reledpar.sty
index 91b0c3f8394..96a1d832947 100644
--- a/Master/texmf-dist/tex/latex/reledmac/reledpar.sty
+++ b/Master/texmf-dist/tex/latex/reledmac/reledpar.sty
@@ -28,7 +28,7 @@
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{reledpar}[2024/05/11 v2.25.6a reledmac extension for parallel texts]%
+\ProvidesPackage{reledpar}[2024/07/23 v2.25.7 reledmac extension for parallel texts]%
\RequirePackage{xspace}%
\RequirePackage{xkeyval}
@@ -2244,7 +2244,6 @@
\renewcommand{\thestanzaR}{%
\textbf{\arabic{stanzaR}}%
}
-\newif\ifl@dusedbabel
\patchcmd{\bbl@set@language}%
{\select@language{\languagename}}%
{\edef\languagename{#1}\select@language{\languagename}}%
@@ -2256,11 +2255,9 @@
\gdef\theledlanguageR{}
\AtBeginDocument{%
- \@ifundefined{xpg@main@language}{%
+ \@ifpackageloaded{babel}{%
\@ifundefined{bbl@main@language}{%
- \l@dusedbabelfalse
}{%
- \l@dusedbabeltrue
\let\l@doldselectlanguage\selectlanguage
\let\l@doldbbl@set@language\bbl@set@language
\renewcommand{\selectlanguage}[1]{%
@@ -2276,23 +2273,26 @@
\gdef\theledlanguageL{\bbl@main@language}%
\gdef\theledlanguageR{\bbl@main@language}%
}%
- }
- {%
- \@ifpackagelater{polyglossia}{2022/04/10}{}{\led@err@polyglossiaTooOld}%
- \let\old@otherlanguage\otherlanguage%
- \renewcommand{\otherlanguage}[2][]{%
- \selectlanguage[#1]{#2}%
- \xpg@set@language@only@aux[#1]{#2}%
- \ifledRcol \gdef\theledlanguageR{#2}%
- \else \gdef\theledlanguageL{#2}%
- \fi}%
+ }{}%
+ \@ifpackageloaded{polyglossia}{%
+ \@ifpackagelater{polyglossia}{2024/07/15}{}{\led@err@polyglossiaTooOld}%
\renewcommand{\l@duselanguage}[1]{%
\csuse{no\languagename @numbers}%
- \expandafter\@select@language\expandafter{#1}%
+ \selectlanguage*{#1}%
}%
- \xdef\theledlanguageL{\xpg@main@language}%
- \xdef\theledlanguageR{\xpg@main@language}%
- }%
+ \AddToHook{env/Leftside/begin}{%
+ \AddToHookNext{cmd/polyglossia@language@switched/after}{%
+ \xdef\theledlanguageL{\languagename}%
+ }%
+ }%
+ \AddToHook{env/Rightside/begin}{%
+ \AddToHookNext{cmd/polyglossia@language@switched/after}{%
+ \xdef\theledlanguageR{\languagename}%
+ }%
+ }%
+ \xdef\theledlanguageL{\mainlanguagename}%
+ \xdef\theledlanguageR{\mainlanguagename}%
+ }{}%
}%
\newcount\l@dc@maxchunks
\newcommand{\maxchunks}[1]{\l@dc@maxchunks=#1}
diff --git a/Master/texmf-dist/tex/latex/reptheorem/reptheorem.sty b/Master/texmf-dist/tex/latex/reptheorem/reptheorem.sty
index 2d12f462221..ea3a91171b8 100644
--- a/Master/texmf-dist/tex/latex/reptheorem/reptheorem.sty
+++ b/Master/texmf-dist/tex/latex/reptheorem/reptheorem.sty
@@ -18,14 +18,14 @@
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Jesse Sraat.
+%% The Current Maintainer of this work is Jesse Straat.
%%
%% This work consists of the main file reptheorem.dtx
%% and the derived files
%% reptheorem.sty, reptheorem.pdf, reptheorem.ins
%%
-\ProvidesPackage{reptheorem}[2024-03-27 v1.0 Reptheorem package]
+\ProvidesPackage{reptheorem}[2024-09-22 v1.2 Reptheorem package]
\def\reptheorem@theoremfile{\relax}
\NewDocumentCommand{\theoremfile}{ O{\jobname.thm} }{
\def\reptheorem@theoremfile{#1}
@@ -49,60 +49,71 @@ File #1 not found. I will not import any theorems.%
\begin{#1}\label{#2}
}
#4
-\end{#1}
+\expandafter\gdef\csname thmtype@#2\endcsname{#1}%
\expandafter\long\expandafter\gdef\csname thm@#2\endcsname{#4}%
+\IfValueT{#3}{% Only save theorem name if it exists
\expandafter\gdef\csname thmdesc@#2\endcsname{#3}%
-\long\gdef\@thmoutput{%
+}
+\expandafter\long\expandafter\gdef\csname thmoutput@#2\endcsname{%
+\string\expandafter\string\gdef\noexpand%
+\csname thmtype@#2\string\endcsname{#1}%
+^^J%
\string\expandafter\string\long\string\expandafter%
\string\gdef\noexpand\csname thm@#2\string\endcsname{#4}%
+\IfValueT{#3}{
^^J%
-\string\expandafter\string\expandafter%
-\string\gdef\noexpand\csname thmdesc@#2\string\endcsname{#3}%
+\string\expandafter\string\gdef\noexpand%
+\csname thmdesc@#2\string\endcsname{#3}%
}
-\write\@auxout{\@thmoutput}
+}
+\write\@auxout{\csname thmoutput@#2\endcsname}
\if\reptheorem@theoremfile\relax
\else
-\write\@thmlist{\@thmoutput}
+\write\@thmlist{\csname thmoutput@#2\endcsname}
\fi
+\end{#1}
}{}
\newcounter{old@counter}
-\NewDocumentCommand{\repthm}{ m m +o }{
+\NewDocumentCommand{\repthm}{ m +o }{
\begingroup
-\setcounter{old@counter}{\value{#1}}
- \def\thetheorem{\ref{#2}}
+\ifcsname thmtype@#1\endcsname%
+\expandafter\let\expandafter\@@thmtype\csname thmtype@#1\endcsname%
+\else%
+\def\@@thmtype{theorem}%
+\fi%
+\setcounter{old@counter}{\value{\@@thmtype}}
+ \def\thetheorem{\ref{#1}}
\let\@@theoremnotdefined\relax
-\ifcsname thm@#2\endcsname% Check if theorem is even defined
-\expandafter\edef\expandafter\@@thmdesc{\csname thmdesc@#2\endcsname}%
-\expandafter\let\expandafter\@@thm\csname thm@#2\endcsname
-\IfValueTF{\@@thmdesc}{% Check if theorem has name
-\begin{#1}[\@@thmdesc]
+\ifcsname thm@#1\endcsname% Check if theorem is even defined
+\expandafter\let\expandafter\@@thm\csname thm@#1\endcsname
+\ifcsname thmdesc@#1\endcsname % Check if theorem has name
+\begin{\@@thmtype}[\csname thmdesc@#1\endcsname]
\@@thm
-\end{#1}
-}{% No optionals
-\begin{#1}
+\end{\@@thmtype}
+\else % No optionals
+\begin{\@@thmtype}
\@@thm
-\end{#1}
-}
+\end{\@@thmtype}
+\fi
\else
-\IfValueTF{#3}{
-\begin{#1}
-#3
-\end{#1}
+\IfValueTF{#2}{
+\begin{\@@thmtype}
+#2
+\end{\@@thmtype}
}{% No theorem or alt text provided: throw warning
-\begin{#1}
-\end{#1}
+\begin{\@@thmtype}
+\end{\@@thmtype}
\PackageWarning{reptheorem}{%
-Theorem #2 not defined; rebuild your project.
+Theorem #1 not defined; rebuild your project.
If the issue persists, create the theorem using
\begin{makethm} or consider adding alt text to \repthm
using the optional parameter%
}
}
\fi
-\setcounter{#1}{\value{old@counter}}
+\setcounter{\@@thmtype}{\value{old@counter}}
\endgroup
}
-
\endinput
%%
%% End of file `reptheorem.sty'.
diff --git a/Master/texmf-dist/tex/latex/resolsysteme/ResolSysteme.sty b/Master/texmf-dist/tex/latex/resolsysteme/ResolSysteme.sty
index a7e95078fa9..5a8d27b31c6 100644
--- a/Master/texmf-dist/tex/latex/resolsysteme/ResolSysteme.sty
+++ b/Master/texmf-dist/tex/latex/resolsysteme/ResolSysteme.sty
@@ -2,7 +2,8 @@
% licence........: Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{ResolSysteme}[2024/06/22 v0.1.7 Quelques commandes pour travailler avec des matrices et des sytemes lineaires]
+\ProvidesPackage{ResolSysteme}[2024/07/04 v0.1.8 Quelques commandes pour travailler avec des matrices et des sytemes lineaires]
+% 0.1.8 Correction de bugs dans certains calculs, amélioration de la documentation
% 0.1.7 Correction de bugs dans certains calculs
% 0.1.6 Correction de bugs dans certains calculs
% 0.1.5 Inverse d'une matrice en 4x4 (même en normal !) + Système 4x4 (en normal !)
diff --git a/Master/texmf-dist/tex/latex/responsive/responsive.sty b/Master/texmf-dist/tex/latex/responsive/responsive.sty
index 65e5061f455..289f04ca8bb 100644
--- a/Master/texmf-dist/tex/latex/responsive/responsive.sty
+++ b/Master/texmf-dist/tex/latex/responsive/responsive.sty
@@ -3,7 +3,7 @@
\RequirePackage{expl3,l3keys2e}
\RequirePackage{kvoptions}
\ProvidesExplPackage{responsive}
-{2023-12-15}{0.1}{Responsive design for LaTeX}
+{2024-07-14}{v0.1a}{Responsive design for LaTeX}
%%%%%%%%%%%%%%%%%%%%%%
% keyval processing %
@@ -168,6 +168,10 @@
\@setfontsize#1{\resp_multiply_note:nnn\resp_font_size{#2}{1}}{\resp_multiply_note:nnn\resp_line_skip{#2}{\l_resp_lineheight_multiplier}}
}
+% This is a dummy definition. It should restore page dimensions using the Geometry package if it is loaded.
+% The correct definition is added in \AtBeginDocument
+\cs_set:Npn\resp_reset_geometry{}
+
% recalculate \textheight and \headheight with the changed font size
% this is necessary to prevent the underfull \vbox messages from the output rutine
\cs_set:Npn\resp_textheight:n {
@@ -182,6 +186,9 @@
\setlength\headheight{\resp_font_size}
\setlength\headsep {1.5\resp_font_size}
\setlength\footskip{\fp_to_dim:n{2*\resp_font_size+1}}
+ \setlength\topmargin{\fp_to_dim:n{(\paperheight-\textheight -\headheight-\headsep-\footskip)/2 - 1in}}
+ \resp_reset_geometry
+ % \addtolength\topmargin{\topskip}
}
% the functionality to fix the textheight should be available as a document command
@@ -355,6 +362,9 @@
% setup font sizes at the begin document, in order to support Geometry etc.
\AtBeginDocument{
+ \@ifpackageloaded{geometry}{
+ \cs_set:Npn\resp_reset_geometry{\Gm@process}
+ }{}
% set the default font size, based on numbers of characters we want to show on a line of text
% \fonttobox[32]\textwidth{\tl_range:Nnn\l_resp_charlist_tl{1}{\l_resp_charlines_int}}%
\bool_if:NTF\l_resp_no_execute {}{
diff --git a/Master/texmf-dist/tex/latex/romande/romande.sty b/Master/texmf-dist/tex/latex/romande/romande.sty
deleted file mode 100644
index f4c8068795b..00000000000
--- a/Master/texmf-dist/tex/latex/romande/romande.sty
+++ /dev/null
@@ -1,21 +0,0 @@
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{romande}[2010/06/27 v2.1 romande]
-\RequirePackage{xkeyval}
-\RequirePackage[T1]{fontenc}
-\RequirePackage{textcomp}
-\RequirePackage{nfssext-cfr}
-%:boolkey for alternative encoding as default
-\define@boolkey{romande.sty}[romande@]{alt}[true]{%
- \relax}
-%:defaults to ensure everything is defined to something
-\ExecuteOptionsX{alt=false}
-%:options override defaults
-\ProcessOptionsX
-%:make RomandeADF default roman font, implementing option for alternative encoding as applicable
-\ifromande@alt
- \renewcommand{\rmdefault}{yrda}%
-\else
- \renewcommand{\rmdefault}{yrd}%
-\fi
-\endinput
-%% end romande.sty
diff --git a/Master/texmf-dist/tex/latex/romandeadf/romande.sty b/Master/texmf-dist/tex/latex/romandeadf/romande.sty
new file mode 100644
index 00000000000..3ffee072c45
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/romandeadf/romande.sty
@@ -0,0 +1,64 @@
+%%
+%% This is file `romande.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% romandeadf.dtx (with options: `sty')
+%% Copyright (C) 2010-2024 Clea F. Rees.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008-05-04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% romandeadf. You may however distribute the package romandeadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\NeedsTeXFormat{LaTeX2e}
+\RequirePackage{svn-prov}
+\ProvidesPackageSVN[romande.sty]{$Id: romandeadf.dtx 10366 2024-09-18 14:25:21Z cfrees $}[v2.1 \revinfo]
+\DefineFileInfoSVN[romande]
+\RequirePackage[T1]{fontenc}
+\RequirePackage{nfssext-cfr}[2024/01/01]
+\IfFormatAtLeastTF {2020-02-02}{%
+ \DeclareEncodingSubset{TS1}{yrd}{1}%
+ \DeclareEncodingSubset{TS1}{yrda}{1}%
+ \DeclareEncodingSubset{TS1}{yrdw}{1}%
+ \DeclareEncodingSubset{TS1}{yrdaw}{1}%
+}{%
+ \RequirePackage{textcomp}}
+\UndeclareTextCommand{\textperthousand}{T1}
+\ExplSyntaxOn
+\keys_define:nn { romande }
+{
+ alt .bool_set:N = \g__romande_alt_bool,
+ alt .default:n = true,
+ alt .initial:n = false,
+ scale .tl_set:N = \yrd@scale,
+ scale .initial:V = \@empty,
+}
+\ProcessKeyOptions[romande]
+\tl_new:N \g__romande_rm_tl
+\tl_gset:Nn \g__romande_rm_tl {yrd}
+\bool_if:NT \g__romande_alt_bool
+{
+ \tl_gput_right:Nn \g__romande_rm_tl {a}
+}
+\renewcommand{\rmdefault}{\g__romande_rm_tl}
+\ExplSyntaxOff
+%% end romande.sty
+\endinput
+%%
+%% End of file `romande.sty'.
diff --git a/Master/texmf-dist/tex/latex/romande/t1yrd.fd b/Master/texmf-dist/tex/latex/romandeadf/t1yrd.fd
index 2c135c8cad3..23e3edf286d 100644
--- a/Master/texmf-dist/tex/latex/romande/t1yrd.fd
+++ b/Master/texmf-dist/tex/latex/romandeadf/t1yrd.fd
@@ -5,43 +5,58 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1yrd.fd}
- [2010/07/10 Fontinst v1.933 font definitions for T1/yrd.]
+ [2024/08/12 Fontinst v1.933 font definitions for T1/yrd.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yrd@scale\endcsname\relax
+ \let\yrd@@scale\@empty
+\else
+ \edef\yrd@@scale{s*[\csname yrd@scale\endcsname]}%
+\fi
\DeclareFontFamily{T1}{yrd}{}
\DeclareFontShape{T1}{yrd}{m}{n}{
- <-> yrdr8t
+ <-> \yrd@@scale yrdr8t
}{}
\DeclareFontShape{T1}{yrd}{m}{sc}{
- <-> yrdrc8t
+ <-> \yrd@@scale yrdrc8t
}{}
\DeclareFontShape{T1}{yrd}{m}{it}{
- <-> yrdri8t
+ <-> \yrd@@scale yrdri8t
}{}
\DeclareFontShape{T1}{yrd}{m}{sl}{
- <-> yrdri8t
+ <-> \yrd@@scale yrdri8t
}{}
\DeclareFontShape{T1}{yrd}{db}{n}{
- <-> yrdd8t
+ <-> \yrd@@scale yrdd8t
}{}
\DeclareFontShape{T1}{yrd}{db}{sc}{
- <-> yrddc8t
+ <-> \yrd@@scale yrddc8t
}{}
\DeclareFontShape{T1}{yrd}{db}{it}{
- <-> yrddi8t
+ <-> \yrd@@scale yrddi8t
}{}
\DeclareFontShape{T1}{yrd}{db}{sl}{
- <-> yrddi8t
+ <-> \yrd@@scale yrddi8t
}{}
-\DeclareFontShape{T1}{yrd}{m}{si}{<->ssub * yrd/m/sc}{}
+\DeclareFontShape{T1}{yrd}{m}{scit}{<->ssub * yrd/m/sc}{}
+\DeclareFontShape{T1}{yrd}{db}{scit}{<->ssub * yrd/m/scit}{}
+\DeclareFontShape{T1}{yrd}{b}{scit}{<->ssub * yrd/db/scit}{}
+\DeclareFontShape{T1}{yrd}{bx}{scit}{<->ssub * yrd/b/scit}{}
+\DeclareFontShape{T1}{yrd}{m}{scsl}{<->ssub * yrd/m/scit}{}
+\DeclareFontShape{T1}{yrd}{db}{scsl}{<->ssub * yrd/m/scsl}{}
+\DeclareFontShape{T1}{yrd}{b}{scsl}{<->ssub * yrd/db/scsl}{}
+\DeclareFontShape{T1}{yrd}{bx}{scsl}{<->ssub * yrd/b/scsl}{}
+\DeclareFontShape{T1}{yrd}{m}{si}{<->ssub * yrd/m/scsl}{}
\DeclareFontShape{T1}{yrd}{db}{si}{<->ssub * yrd/m/si}{}
\DeclareFontShape{T1}{yrd}{b}{si}{<->ssub * yrd/db/si}{}
\DeclareFontShape{T1}{yrd}{bx}{si}{<->ssub * yrd/b/si}{}
diff --git a/Master/texmf-dist/tex/latex/romande/t1yrda.fd b/Master/texmf-dist/tex/latex/romandeadf/t1yrda.fd
index fcaeb4673c3..c333ce1ce09 100644
--- a/Master/texmf-dist/tex/latex/romande/t1yrda.fd
+++ b/Master/texmf-dist/tex/latex/romandeadf/t1yrda.fd
@@ -5,35 +5,50 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1yrda.fd}
- [2010/07/10 Fontinst v1.933 font definitions for T1/yrda.]
+ [2024/08/12 Fontinst v1.933 font definitions for T1/yrda.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yrd@scale\endcsname\relax
+ \let\yrd@@scale\@empty
+\else
+ \edef\yrd@@scale{s*[\csname yrd@scale\endcsname]}%
+\fi
\DeclareFontFamily{T1}{yrda}{}
\DeclareFontShape{T1}{yrda}{m}{n}{
- <-> yrdra8t
+ <-> \yrd@@scale yrdra8t
}{}
\DeclareFontShape{T1}{yrda}{m}{sc}{
- <-> yrdrc8t
+ <-> \yrd@@scale yrdrc8t
}{}
\DeclareFontShape{T1}{yrda}{m}{it}{
- <-> yrdrai8t
+ <-> \yrd@@scale yrdrai8t
}{}
\DeclareFontShape{T1}{yrda}{db}{n}{
- <-> yrdda8t
+ <-> \yrd@@scale yrdda8t
}{}
\DeclareFontShape{T1}{yrda}{db}{sc}{
- <-> yrddc8t
+ <-> \yrd@@scale yrddc8t
}{}
\DeclareFontShape{T1}{yrda}{db}{it}{
- <-> yrddai8t
+ <-> \yrd@@scale yrddai8t
}{}
-\DeclareFontShape{T1}{yrda}{m}{si}{<->ssub * yrda/m/sc}{}
+\DeclareFontShape{T1}{yrda}{m}{scit}{<->ssub * yrda/m/sc}{}
+\DeclareFontShape{T1}{yrda}{db}{scit}{<->ssub * yrda/m/scit}{}
+\DeclareFontShape{T1}{yrda}{b}{scit}{<->ssub * yrda/db/scit}{}
+\DeclareFontShape{T1}{yrda}{bx}{scit}{<->ssub * yrda/b/scit}{}
+\DeclareFontShape{T1}{yrda}{m}{scsl}{<->ssub * yrda/m/scit}{}
+\DeclareFontShape{T1}{yrda}{db}{scsl}{<->ssub * yrda/m/scsl}{}
+\DeclareFontShape{T1}{yrda}{b}{scsl}{<->ssub * yrda/db/scsl}{}
+\DeclareFontShape{T1}{yrda}{bx}{scsl}{<->ssub * yrda/b/scsl}{}
+\DeclareFontShape{T1}{yrda}{m}{si}{<->ssub * yrda/m/scsl}{}
\DeclareFontShape{T1}{yrda}{db}{si}{<->ssub * yrda/m/si}{}
\DeclareFontShape{T1}{yrda}{b}{si}{<->ssub * yrda/db/si}{}
\DeclareFontShape{T1}{yrda}{bx}{si}{<->ssub * yrda/b/si}{}
diff --git a/Master/texmf-dist/tex/latex/romande/t1yrdaw.fd b/Master/texmf-dist/tex/latex/romandeadf/t1yrdaw.fd
index d3cdb3d3ec6..48757d9f46d 100644
--- a/Master/texmf-dist/tex/latex/romande/t1yrdaw.fd
+++ b/Master/texmf-dist/tex/latex/romandeadf/t1yrdaw.fd
@@ -5,20 +5,27 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1yrdaw.fd}
- [2010/07/10 Fontinst v1.933 font definitions for T1/yrdaw.]
+ [2024/08/12 Fontinst v1.933 font definitions for T1/yrdaw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yrd@scale\endcsname\relax
+ \let\yrd@@scale\@empty
+\else
+ \edef\yrd@@scale{s*[\csname yrd@scale\endcsname]}%
+\fi
\DeclareFontFamily{T1}{yrdaw}{}
\DeclareFontShape{T1}{yrdaw}{m}{it}{
- <-> yrdraiw8t
+ <-> \yrd@@scale yrdraiw8t
}{}
\DeclareFontShape{T1}{yrdaw}{m}{n}{
- <-> yrdraiw8t
+ <-> \yrd@@scale yrdraiw8t
}{}
\DeclareFontShape{T1}{yrdaw}{m}{sc}{
- <-> yrdraiw8t
+ <-> \yrd@@scale yrdraiw8t
}{}
\DeclareFontShape{T1}{yrdaw}{db}{it}{<->ssub * yrdaw/m/it}{}
@@ -34,7 +41,15 @@
\DeclareFontShape{T1}{yrdaw}{db}{sc}{<->ssub * yrdaw/m/sc}{}
\DeclareFontShape{T1}{yrdaw}{b}{sc}{<->ssub * yrdaw/db/sc}{}
\DeclareFontShape{T1}{yrdaw}{bx}{sc}{<->ssub * yrdaw/b/sc}{}
-\DeclareFontShape{T1}{yrdaw}{m}{si}{<->ssub * yrdaw/m/sc}{}
+\DeclareFontShape{T1}{yrdaw}{m}{scit}{<->ssub * yrdaw/m/sc}{}
+\DeclareFontShape{T1}{yrdaw}{db}{scit}{<->ssub * yrdaw/m/scit}{}
+\DeclareFontShape{T1}{yrdaw}{b}{scit}{<->ssub * yrdaw/db/scit}{}
+\DeclareFontShape{T1}{yrdaw}{bx}{scit}{<->ssub * yrdaw/b/scit}{}
+\DeclareFontShape{T1}{yrdaw}{m}{scsl}{<->ssub * yrdaw/m/scit}{}
+\DeclareFontShape{T1}{yrdaw}{db}{scsl}{<->ssub * yrdaw/m/scsl}{}
+\DeclareFontShape{T1}{yrdaw}{b}{scsl}{<->ssub * yrdaw/db/scsl}{}
+\DeclareFontShape{T1}{yrdaw}{bx}{scsl}{<->ssub * yrdaw/b/scsl}{}
+\DeclareFontShape{T1}{yrdaw}{m}{si}{<->ssub * yrdaw/m/scsl}{}
\DeclareFontShape{T1}{yrdaw}{db}{si}{<->ssub * yrdaw/m/si}{}
\DeclareFontShape{T1}{yrdaw}{b}{si}{<->ssub * yrdaw/db/si}{}
\DeclareFontShape{T1}{yrdaw}{bx}{si}{<->ssub * yrdaw/b/si}{}
diff --git a/Master/texmf-dist/tex/latex/romande/t1yrdw.fd b/Master/texmf-dist/tex/latex/romandeadf/t1yrdw.fd
index b3a26bde38e..bdeb1497978 100644
--- a/Master/texmf-dist/tex/latex/romande/t1yrdw.fd
+++ b/Master/texmf-dist/tex/latex/romandeadf/t1yrdw.fd
@@ -5,20 +5,27 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1yrdw.fd}
- [2010/07/10 Fontinst v1.933 font definitions for T1/yrdw.]
+ [2024/08/12 Fontinst v1.933 font definitions for T1/yrdw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yrd@scale\endcsname\relax
+ \let\yrd@@scale\@empty
+\else
+ \edef\yrd@@scale{s*[\csname yrd@scale\endcsname]}%
+\fi
\DeclareFontFamily{T1}{yrdw}{}
\DeclareFontShape{T1}{yrdw}{m}{it}{
- <-> yrdriw8t
+ <-> \yrd@@scale yrdriw8t
}{}
\DeclareFontShape{T1}{yrdw}{m}{n}{
- <-> yrdriw8t
+ <-> \yrd@@scale yrdriw8t
}{}
\DeclareFontShape{T1}{yrdw}{m}{sc}{
- <-> yrdriw8t
+ <-> \yrd@@scale yrdriw8t
}{}
\DeclareFontShape{T1}{yrdw}{db}{it}{<->ssub * yrdw/m/it}{}
@@ -34,7 +41,15 @@
\DeclareFontShape{T1}{yrdw}{db}{sc}{<->ssub * yrdw/m/sc}{}
\DeclareFontShape{T1}{yrdw}{b}{sc}{<->ssub * yrdw/db/sc}{}
\DeclareFontShape{T1}{yrdw}{bx}{sc}{<->ssub * yrdw/b/sc}{}
-\DeclareFontShape{T1}{yrdw}{m}{si}{<->ssub * yrdw/m/sc}{}
+\DeclareFontShape{T1}{yrdw}{m}{scit}{<->ssub * yrdw/m/sc}{}
+\DeclareFontShape{T1}{yrdw}{db}{scit}{<->ssub * yrdw/m/scit}{}
+\DeclareFontShape{T1}{yrdw}{b}{scit}{<->ssub * yrdw/db/scit}{}
+\DeclareFontShape{T1}{yrdw}{bx}{scit}{<->ssub * yrdw/b/scit}{}
+\DeclareFontShape{T1}{yrdw}{m}{scsl}{<->ssub * yrdw/m/scit}{}
+\DeclareFontShape{T1}{yrdw}{db}{scsl}{<->ssub * yrdw/m/scsl}{}
+\DeclareFontShape{T1}{yrdw}{b}{scsl}{<->ssub * yrdw/db/scsl}{}
+\DeclareFontShape{T1}{yrdw}{bx}{scsl}{<->ssub * yrdw/b/scsl}{}
+\DeclareFontShape{T1}{yrdw}{m}{si}{<->ssub * yrdw/m/scsl}{}
\DeclareFontShape{T1}{yrdw}{db}{si}{<->ssub * yrdw/m/si}{}
\DeclareFontShape{T1}{yrdw}{b}{si}{<->ssub * yrdw/db/si}{}
\DeclareFontShape{T1}{yrdw}{bx}{si}{<->ssub * yrdw/b/si}{}
diff --git a/Master/texmf-dist/tex/latex/romande/ts1yrd.fd b/Master/texmf-dist/tex/latex/romandeadf/ts1yrd.fd
index 4a5f6cf09db..f98ca7f1e05 100644
--- a/Master/texmf-dist/tex/latex/romande/ts1yrd.fd
+++ b/Master/texmf-dist/tex/latex/romandeadf/ts1yrd.fd
@@ -5,35 +5,50 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1yrd.fd}
- [2010/07/10 Fontinst v1.933 font definitions for TS1/yrd.]
+ [2024/08/12 Fontinst v1.933 font definitions for TS1/yrd.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yrd@scale\endcsname\relax
+ \let\yrd@@scale\@empty
+\else
+ \edef\yrd@@scale{s*[\csname yrd@scale\endcsname]}%
+\fi
\DeclareFontFamily{TS1}{yrd}{}
\DeclareFontShape{TS1}{yrd}{m}{n}{
- <-> yrdr8c
+ <-> \yrd@@scale yrdr8c
}{}
\DeclareFontShape{TS1}{yrd}{m}{sc}{
- <-> yrdr8c
+ <-> \yrd@@scale yrdr8c
}{}
\DeclareFontShape{TS1}{yrd}{m}{it}{
- <-> yrdri8c
+ <-> \yrd@@scale yrdri8c
}{}
\DeclareFontShape{TS1}{yrd}{db}{n}{
- <-> yrdd8c
+ <-> \yrd@@scale yrdd8c
}{}
\DeclareFontShape{TS1}{yrd}{db}{sc}{
- <-> yrdd8c
+ <-> \yrd@@scale yrdd8c
}{}
\DeclareFontShape{TS1}{yrd}{db}{it}{
- <-> yrddi8c
+ <-> \yrd@@scale yrddi8c
}{}
-\DeclareFontShape{TS1}{yrd}{m}{si}{<->ssub * yrd/m/sc}{}
+\DeclareFontShape{TS1}{yrd}{m}{scit}{<->ssub * yrd/m/sc}{}
+\DeclareFontShape{TS1}{yrd}{db}{scit}{<->ssub * yrd/m/scit}{}
+\DeclareFontShape{TS1}{yrd}{b}{scit}{<->ssub * yrd/db/scit}{}
+\DeclareFontShape{TS1}{yrd}{bx}{scit}{<->ssub * yrd/b/scit}{}
+\DeclareFontShape{TS1}{yrd}{m}{scsl}{<->ssub * yrd/m/scit}{}
+\DeclareFontShape{TS1}{yrd}{db}{scsl}{<->ssub * yrd/m/scsl}{}
+\DeclareFontShape{TS1}{yrd}{b}{scsl}{<->ssub * yrd/db/scsl}{}
+\DeclareFontShape{TS1}{yrd}{bx}{scsl}{<->ssub * yrd/b/scsl}{}
+\DeclareFontShape{TS1}{yrd}{m}{si}{<->ssub * yrd/m/scsl}{}
\DeclareFontShape{TS1}{yrd}{db}{si}{<->ssub * yrd/m/si}{}
\DeclareFontShape{TS1}{yrd}{b}{si}{<->ssub * yrd/db/si}{}
\DeclareFontShape{TS1}{yrd}{bx}{si}{<->ssub * yrd/b/si}{}
diff --git a/Master/texmf-dist/tex/latex/romande/ts1yrda.fd b/Master/texmf-dist/tex/latex/romandeadf/ts1yrda.fd
index 1bc227e625f..39ae7bbf20a 100644
--- a/Master/texmf-dist/tex/latex/romande/ts1yrda.fd
+++ b/Master/texmf-dist/tex/latex/romandeadf/ts1yrda.fd
@@ -5,35 +5,50 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1yrda.fd}
- [2010/07/10 Fontinst v1.933 font definitions for TS1/yrda.]
+ [2024/08/12 Fontinst v1.933 font definitions for TS1/yrda.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yrd@scale\endcsname\relax
+ \let\yrd@@scale\@empty
+\else
+ \edef\yrd@@scale{s*[\csname yrd@scale\endcsname]}%
+\fi
\DeclareFontFamily{TS1}{yrda}{}
\DeclareFontShape{TS1}{yrda}{m}{n}{
- <-> yrdr8c
+ <-> \yrd@@scale yrdr8c
}{}
\DeclareFontShape{TS1}{yrda}{m}{sc}{
- <-> yrdr8c
+ <-> \yrd@@scale yrdr8c
}{}
\DeclareFontShape{TS1}{yrda}{m}{it}{
- <-> yrdri8c
+ <-> \yrd@@scale yrdri8c
}{}
\DeclareFontShape{TS1}{yrda}{db}{n}{
- <-> yrdd8c
+ <-> \yrd@@scale yrdd8c
}{}
\DeclareFontShape{TS1}{yrda}{db}{sc}{
- <-> yrdd8c
+ <-> \yrd@@scale yrdd8c
}{}
\DeclareFontShape{TS1}{yrda}{db}{it}{
- <-> yrddi8c
+ <-> \yrd@@scale yrddi8c
}{}
-\DeclareFontShape{TS1}{yrda}{m}{si}{<->ssub * yrda/m/sc}{}
+\DeclareFontShape{TS1}{yrda}{m}{scit}{<->ssub * yrda/m/sc}{}
+\DeclareFontShape{TS1}{yrda}{db}{scit}{<->ssub * yrda/m/scit}{}
+\DeclareFontShape{TS1}{yrda}{b}{scit}{<->ssub * yrda/db/scit}{}
+\DeclareFontShape{TS1}{yrda}{bx}{scit}{<->ssub * yrda/b/scit}{}
+\DeclareFontShape{TS1}{yrda}{m}{scsl}{<->ssub * yrda/m/scit}{}
+\DeclareFontShape{TS1}{yrda}{db}{scsl}{<->ssub * yrda/m/scsl}{}
+\DeclareFontShape{TS1}{yrda}{b}{scsl}{<->ssub * yrda/db/scsl}{}
+\DeclareFontShape{TS1}{yrda}{bx}{scsl}{<->ssub * yrda/b/scsl}{}
+\DeclareFontShape{TS1}{yrda}{m}{si}{<->ssub * yrda/m/scsl}{}
\DeclareFontShape{TS1}{yrda}{db}{si}{<->ssub * yrda/m/si}{}
\DeclareFontShape{TS1}{yrda}{b}{si}{<->ssub * yrda/db/si}{}
\DeclareFontShape{TS1}{yrda}{bx}{si}{<->ssub * yrda/b/si}{}
diff --git a/Master/texmf-dist/tex/latex/romande/ts1yrdaw.fd b/Master/texmf-dist/tex/latex/romandeadf/ts1yrdaw.fd
index 777c6c38a22..9c6851807bf 100644
--- a/Master/texmf-dist/tex/latex/romande/ts1yrdaw.fd
+++ b/Master/texmf-dist/tex/latex/romandeadf/ts1yrdaw.fd
@@ -5,20 +5,27 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1yrdaw.fd}
- [2010/07/10 Fontinst v1.933 font definitions for TS1/yrdaw.]
+ [2024/08/12 Fontinst v1.933 font definitions for TS1/yrdaw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yrd@scale\endcsname\relax
+ \let\yrd@@scale\@empty
+\else
+ \edef\yrd@@scale{s*[\csname yrd@scale\endcsname]}%
+\fi
\DeclareFontFamily{TS1}{yrdaw}{}
\DeclareFontShape{TS1}{yrdaw}{m}{it}{
- <-> yrdriw8c
+ <-> \yrd@@scale yrdriw8c
}{}
\DeclareFontShape{TS1}{yrdaw}{m}{n}{
- <-> yrdriw8c
+ <-> \yrd@@scale yrdriw8c
}{}
\DeclareFontShape{TS1}{yrdaw}{m}{sc}{
- <-> yrdriw8c
+ <-> \yrd@@scale yrdriw8c
}{}
\DeclareFontShape{TS1}{yrdaw}{db}{it}{<->ssub * yrdaw/m/it}{}
@@ -34,7 +41,15 @@
\DeclareFontShape{TS1}{yrdaw}{db}{sc}{<->ssub * yrdaw/m/sc}{}
\DeclareFontShape{TS1}{yrdaw}{b}{sc}{<->ssub * yrdaw/db/sc}{}
\DeclareFontShape{TS1}{yrdaw}{bx}{sc}{<->ssub * yrdaw/b/sc}{}
-\DeclareFontShape{TS1}{yrdaw}{m}{si}{<->ssub * yrdaw/m/sc}{}
+\DeclareFontShape{TS1}{yrdaw}{m}{scit}{<->ssub * yrdaw/m/sc}{}
+\DeclareFontShape{TS1}{yrdaw}{db}{scit}{<->ssub * yrdaw/m/scit}{}
+\DeclareFontShape{TS1}{yrdaw}{b}{scit}{<->ssub * yrdaw/db/scit}{}
+\DeclareFontShape{TS1}{yrdaw}{bx}{scit}{<->ssub * yrdaw/b/scit}{}
+\DeclareFontShape{TS1}{yrdaw}{m}{scsl}{<->ssub * yrdaw/m/scit}{}
+\DeclareFontShape{TS1}{yrdaw}{db}{scsl}{<->ssub * yrdaw/m/scsl}{}
+\DeclareFontShape{TS1}{yrdaw}{b}{scsl}{<->ssub * yrdaw/db/scsl}{}
+\DeclareFontShape{TS1}{yrdaw}{bx}{scsl}{<->ssub * yrdaw/b/scsl}{}
+\DeclareFontShape{TS1}{yrdaw}{m}{si}{<->ssub * yrdaw/m/scsl}{}
\DeclareFontShape{TS1}{yrdaw}{db}{si}{<->ssub * yrdaw/m/si}{}
\DeclareFontShape{TS1}{yrdaw}{b}{si}{<->ssub * yrdaw/db/si}{}
\DeclareFontShape{TS1}{yrdaw}{bx}{si}{<->ssub * yrdaw/b/si}{}
diff --git a/Master/texmf-dist/tex/latex/romande/ts1yrdw.fd b/Master/texmf-dist/tex/latex/romandeadf/ts1yrdw.fd
index 77c8aa7b0dd..afd23b69b8c 100644
--- a/Master/texmf-dist/tex/latex/romande/ts1yrdw.fd
+++ b/Master/texmf-dist/tex/latex/romandeadf/ts1yrdw.fd
@@ -5,20 +5,27 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1yrdw.fd}
- [2010/07/10 Fontinst v1.933 font definitions for TS1/yrdw.]
+ [2024/08/12 Fontinst v1.933 font definitions for TS1/yrdw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yrd@scale\endcsname\relax
+ \let\yrd@@scale\@empty
+\else
+ \edef\yrd@@scale{s*[\csname yrd@scale\endcsname]}%
+\fi
\DeclareFontFamily{TS1}{yrdw}{}
\DeclareFontShape{TS1}{yrdw}{m}{it}{
- <-> yrdriw8c
+ <-> \yrd@@scale yrdriw8c
}{}
\DeclareFontShape{TS1}{yrdw}{m}{n}{
- <-> yrdriw8c
+ <-> \yrd@@scale yrdriw8c
}{}
\DeclareFontShape{TS1}{yrdw}{m}{sc}{
- <-> yrdriw8c
+ <-> \yrd@@scale yrdriw8c
}{}
\DeclareFontShape{TS1}{yrdw}{db}{it}{<->ssub * yrdw/m/it}{}
@@ -34,7 +41,15 @@
\DeclareFontShape{TS1}{yrdw}{db}{sc}{<->ssub * yrdw/m/sc}{}
\DeclareFontShape{TS1}{yrdw}{b}{sc}{<->ssub * yrdw/db/sc}{}
\DeclareFontShape{TS1}{yrdw}{bx}{sc}{<->ssub * yrdw/b/sc}{}
-\DeclareFontShape{TS1}{yrdw}{m}{si}{<->ssub * yrdw/m/sc}{}
+\DeclareFontShape{TS1}{yrdw}{m}{scit}{<->ssub * yrdw/m/sc}{}
+\DeclareFontShape{TS1}{yrdw}{db}{scit}{<->ssub * yrdw/m/scit}{}
+\DeclareFontShape{TS1}{yrdw}{b}{scit}{<->ssub * yrdw/db/scit}{}
+\DeclareFontShape{TS1}{yrdw}{bx}{scit}{<->ssub * yrdw/b/scit}{}
+\DeclareFontShape{TS1}{yrdw}{m}{scsl}{<->ssub * yrdw/m/scit}{}
+\DeclareFontShape{TS1}{yrdw}{db}{scsl}{<->ssub * yrdw/m/scsl}{}
+\DeclareFontShape{TS1}{yrdw}{b}{scsl}{<->ssub * yrdw/db/scsl}{}
+\DeclareFontShape{TS1}{yrdw}{bx}{scsl}{<->ssub * yrdw/b/scsl}{}
+\DeclareFontShape{TS1}{yrdw}{m}{si}{<->ssub * yrdw/m/scsl}{}
\DeclareFontShape{TS1}{yrdw}{db}{si}{<->ssub * yrdw/m/si}{}
\DeclareFontShape{TS1}{yrdw}{b}{si}{<->ssub * yrdw/db/si}{}
\DeclareFontShape{TS1}{yrdw}{bx}{si}{<->ssub * yrdw/b/si}{}
diff --git a/Master/texmf-dist/tex/latex/rpgicons/rpgicons-l3.sty b/Master/texmf-dist/tex/latex/rpgicons/rpgicons-l3.sty
index 3103502bf3c..cc33d61bf2f 100644
--- a/Master/texmf-dist/tex/latex/rpgicons/rpgicons-l3.sty
+++ b/Master/texmf-dist/tex/latex/rpgicons/rpgicons-l3.sty
@@ -10,8 +10,8 @@
%
% This work has the LPPL maintenance status `maintained'.
%
-\ProvidesExplPackage {rpgicons-l3} {2024-05-15} {1.8.3}
- {rpg Icons Package (l3 Variant)}
+\ProvidesExplPackage {rpgicons-l3} {2024-08-08} {1.8.4}
+ {RPG Icons Package (l3 Variant)}
\bool_new:N \l__rpgicons_unicode_mode_bool
\sys_if_engine_luatex:T {
@@ -792,22 +792,22 @@
\draw_path_lineto:n { 0cm , -.425cm }
\draw_path_moveto:n { -.425cm , 0cm }
\draw_path_lineto:n { .425cm , 0cm }
- \draw_path_moveto:n { \draw_point_polar:nnn { 30 } { .325cm } { .225cm } }
- \draw_path_lineto:n { \draw_point_polar:nn { 30 } { .4cm} }
- \draw_path_moveto:n { \draw_point_polar:nnn { 60 } { .325cm } { .225cm } }
- \draw_path_lineto:n { \draw_point_polar:nn { 60 } { .4cm} }
- \draw_path_moveto:n { \draw_point_polar:nnn { 120 } { .325cm } { .225cm } }
- \draw_path_lineto:n { \draw_point_polar:nn { 120 } { .4cm} }
- \draw_path_moveto:n { \draw_point_polar:nnn { 150 } { .325cm } { .225cm } }
- \draw_path_lineto:n { \draw_point_polar:nn { 150 } { .4cm} }
- \draw_path_moveto:n { \draw_point_polar:nnn { 210 } { .325cm } { .225cm } }
- \draw_path_lineto:n { \draw_point_polar:nn { 210 } { .4cm} }
- \draw_path_moveto:n { \draw_point_polar:nnn { 240 } { .325cm } { .225cm } }
- \draw_path_lineto:n { \draw_point_polar:nn { 240 } { .4cm} }
- \draw_path_moveto:n { \draw_point_polar:nnn { 300 } { .325cm } { .225cm } }
- \draw_path_lineto:n { \draw_point_polar:nn { 300 } { .4cm} }
- \draw_path_moveto:n { \draw_point_polar:nnn { 330 } { .325cm } { .225cm } }
- \draw_path_lineto:n { \draw_point_polar:nn { 330 } { .4cm} }
+ \draw_path_moveto:n { \draw_point_polar:nnn { .325cm } { .225cm } { 30 } }
+ \draw_path_lineto:n { \draw_point_polar:nn { .4cm } { 30 } }
+ \draw_path_moveto:n { \draw_point_polar:nnn { .325cm } { .225cm } { 60 } }
+ \draw_path_lineto:n { \draw_point_polar:nn { .4cm } { 60 } }
+ \draw_path_moveto:n { \draw_point_polar:nnn { .325cm } { .225cm } { 120 } }
+ \draw_path_lineto:n { \draw_point_polar:nn { .4cm } { 120 } }
+ \draw_path_moveto:n { \draw_point_polar:nnn { .325cm } { .225cm } { 150 } }
+ \draw_path_lineto:n { \draw_point_polar:nn { .4cm } { 150 } }
+ \draw_path_moveto:n { \draw_point_polar:nnn { .325cm } { .225cm } { 210 } }
+ \draw_path_lineto:n { \draw_point_polar:nn { .4cm } { 210 } }
+ \draw_path_moveto:n { \draw_point_polar:nnn { .325cm } { .225cm } { 240 } }
+ \draw_path_lineto:n { \draw_point_polar:nn { .4cm } { 240 } }
+ \draw_path_moveto:n { \draw_point_polar:nnn { .325cm } { .225cm } { 300 } }
+ \draw_path_lineto:n { \draw_point_polar:nn { .4cm } { 300 } }
+ \draw_path_moveto:n { \draw_point_polar:nnn { .325cm } { .225cm } { 330 } }
+ \draw_path_lineto:n { \draw_point_polar:nn { .4cm } { 330 } }
}
\cs_new:Npn \rpgicons_draw_shape_illusion: {
@@ -1546,7 +1546,7 @@
}
\cs_new:Npn \rpgicons_draw_frame_damage: {
- \draw_path_circle:nn { 0cm , 0cm } { .45cm }
+ \draw_path_circle:nn { 0cm , 0cm } { .5cm }
}
% USER COMMANDS
@@ -1910,7 +1910,7 @@
}
\cs_if_exist:NF \spell { \cs_new_eq:NN \spell \RPGIconsSpell }
-\NewDocumentCommand { \RPGIconsSpellschool } { O{positive} m O{} } {
+\NewDocumentCommand { \RPGIconsSpellschool } { O{negative} m O{} } {
\group_begin:
\keys_set_groups:nne { rpgicons / local ~ options } { extra } {#3}
\keys_set:ne { rpgicons / local ~ options } { \clist_use:Nn \l_rpgicons_types_every_spellschool_style_clist { , } }
diff --git a/Master/texmf-dist/tex/latex/rpgicons/rpgicons-pgf.sty b/Master/texmf-dist/tex/latex/rpgicons/rpgicons-pgf.sty
index 0e0c0371874..dd75a7b4c0b 100644
--- a/Master/texmf-dist/tex/latex/rpgicons/rpgicons-pgf.sty
+++ b/Master/texmf-dist/tex/latex/rpgicons/rpgicons-pgf.sty
@@ -11,7 +11,7 @@
% This work has the LPPL maintenance status `maintained'.
%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{rpgicons-pgf}[2024-05-15 rpg Icons Package (PGF Variant) (1.8.3)]
+\ProvidesPackage{rpgicons-pgf}[2024-08-08 RPG Icons Package (PGF Variant) (1.8.4)]
% provide pics option
\newif\ifrpgicons@pics\rpgicons@picsfalse
diff --git a/Master/texmf-dist/tex/latex/rpgicons/rpgicons.sty b/Master/texmf-dist/tex/latex/rpgicons/rpgicons.sty
index 8079232a4fb..63a5fa2fc08 100644
--- a/Master/texmf-dist/tex/latex/rpgicons/rpgicons.sty
+++ b/Master/texmf-dist/tex/latex/rpgicons/rpgicons.sty
@@ -10,8 +10,8 @@
%
% This work has the LPPL maintenance status `maintained'.
%
-\ProvidesExplPackage {rpgicons} {2024-05-15} {1.8.3}
- {rpg Icons Package}
+\ProvidesExplPackage {rpgicons} {2024-08-08} {1.8.4}
+ {RPG Icons Package}
\bool_new:N \l__rpgicons_use_legacy_variant_bool
\clist_new:N \l__rpgicons_forwarded_options_clist
diff --git a/Master/texmf-dist/tex/latex/rub-kunstgeschichte/rub-kunstgeschichte.cls b/Master/texmf-dist/tex/latex/rub-kunstgeschichte/rub-kunstgeschichte.cls
index ce7e04a509a..55e34820747 100644
--- a/Master/texmf-dist/tex/latex/rub-kunstgeschichte/rub-kunstgeschichte.cls
+++ b/Master/texmf-dist/tex/latex/rub-kunstgeschichte/rub-kunstgeschichte.cls
@@ -30,9 +30,45 @@
\NeedsTeXFormat{LaTeX2e}[2022-06-01]
\ProvidesClass{rub-kunstgeschichte}
- [2024-05-26 v0.1.0 RUB KGI class]
+ [2024-09-06 v0.2.0 RUB Kunstgeschichte class]
+%% Class options
+\DeclareKeys[rubkgi]{
+ biblatex.store = \@rubkgi@biblatexOptions,
+ biblatex.usage = load
+}
+\DeclareKeys[rubkgi]{
+ hyperref.code = \PassOptionsToPackage{#1}{hyperref},
+ hyperref.usage = load
+}
+%% TeX switch to decide wether to load the parskip package
+\newif\if@rubkgi@parskip
+\@rubkgi@parskiptrue
+\DeclareKeys[rubkgi]{
+ parskip.if = @rubkgi@parskip,
+ parskip.usage = load,
+ noparskip.ifnot = @rubkgi@parskip,
+ noparskip.usage = load
+}
+\ProcessKeyOptions[rubkgi]
%% Load base class with 12pt base font size
\LoadClass[12pt]{article}
+%% biblatex options
+\PassOptionsToPackage{
+ backend=biber,
+ singletitle=true,
+ autocite=footnote,
+ autopunct=false
+}{biblatex}
+%% biblatex-dw package
+\PassOptionsToPackage{
+ style=authortitle-dw,
+ firstfull=true,
+ addyear=true
+}{biblatex}
+%% pass biblatex class options along
+\PassOptionsToPackage{\@rubkgi@biblatexOptions}{biblatex}
+%% load biblatex
+\RequirePackage{biblatex}
%% Set 1.5 times line spacing
\RequirePackage[onehalfspacing]{setspace}
%% Set a4 paper size and margins
@@ -40,6 +76,14 @@
a4paper,
top=2cm,left=2cm,bottom=2cm,right=4cm
]{geometry}
+%% Avoid paragraph indentation
+\if@rubkgi@parskip
+ \RequirePackage{parskip}
+\fi
+%% Hyperref
+\RequirePackage{hyperref}
+\hypersetup{hidelinks=true}
+
\endinput
%%
%% End of file `rub-kunstgeschichte.cls'.
diff --git a/Master/texmf-dist/tex/latex/scrhack/scrhack-2023-07-07.sty b/Master/texmf-dist/tex/latex/scrhack/scrhack-2023-07-07.sty
new file mode 100644
index 00000000000..9c5eb1b3b73
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/scrhack/scrhack-2023-07-07.sty
@@ -0,0 +1,190 @@
+%%
+%% This is file `scrhack-2023-07-07.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% scrhack-2023-07-07.dtx (with options: `package,identify')
+%% scrhack-2023-07-07.dtx (with options: `package,option')
+%% scrhack-2023-07-07.dtx (with options: `package,body')
+%%
+%% IMPORTANT NOTICE:
+%%
+%% For the copyright see the source file.
+%%
+%% Any modified versions of this file must be renamed
+%% with new filenames distinct from scrhack-2023-07-07.sty.
+%%
+%% For distribution of the original source see the terms
+%% for copying and modification in the file scrhack-2023-07-07.dtx scrhack-2023-07-07.dtx scrhack-2023-07-07.dtx.
+%%
+%% This generated file may be distributed as long as the
+%% original source files, as listed above, are part of the
+%% same distribution. (The sources need not necessarily be
+%% in the same archive or directory.)
+%%% using: package,identify
+\ProvidesPackage{scrhack}[%
+ 2024-04-17 v3.42
+ legacy version of package scrhack%
+]
+%%% using: package,option
+\RequirePackage{scrkbase}[2022-11-11]
+\@ifpackagelater{scrkbase}{2023-07-14}{%
+ \PackageInfo{scrhack}{KOMA-Script >= 3.42 detected.\MessageBreak
+ In this case you should not use this legacy version of\MessageBreak
+ scrhack, but should be able to use the current version\MessageBreak
+ or even replace loading scrhack by loading really\MessageBreak
+ needed third-party patches, e.g., floatbytocbasic.\MessageBreak
+ But you are the boss ..}%
+}{%
+ \@ifpackagelater{scrkbase}{2022-11-11}{%
+ \PackageWarningNoLine{scrhack}{KOMA-Script < 3.42 detected.\MessageBreak
+ In this case the original scrhack of that version\MessageBreak
+ should also be installed and used instead of this\MessageBreak
+ legacy package}%
+ }{%
+ \PackageError{scrhack}{incompatible KOMA-Script < v3.39 detected}{%
+ This error is fatal!\MessageBreak
+ Loading of scrhack will be aborted!}%
+ \expandafter\let\csname ver@scrhack.sty\endcsname\undefined
+ \endinput
+ }%
+}
+\KOMA@ifkey{hyperref}{@scrhack@hyperref}%
+\KOMAExecuteOptions{hyperref=true}%
+\KOMA@ifkey{floatrow}{@scrhack@floatrow}
+\KOMAExecuteOptions{floatrow=true}
+\KOMA@ifkey{float}{@scrhack@float}%
+\KOMAExecuteOptions{float=true}%
+\KOMA@ifkey{listings}{@scrhack@listings}
+\KOMAExecuteOptions{listings=true}
+\RequirePackage{xpatch}%
+\KOMA@ifkey{nomencl}{@scrhack@nomencl}
+\KOMAExecuteOptions{nomencl=true}
+\KOMA@ifkey{setspace}{@scrhack@setspace}
+\KOMAExecuteOptions{setspace=true}
+\RequirePackage{xpatch}%
+\KOMA@ifkey{lscape}{@scrhack@lscape}%
+\KOMAExecuteOptions{lscape=true}%
+\KOMA@ifkey{standardsections}{@scrhack@standardsections}
+\KOMAExecuteOptions{standardsections=false}
+\KOMAProcessOptions\relax
+%%% using: package,body
+\newcommand{\scr@ifexpected}[2]{%
+ \begingroup
+ \let\@tempa#1
+ #2
+ \ifx\@tempa#1
+ \aftergroup\@firstoftwo
+ \else
+ \aftergroup\@secondoftwo
+ \fi
+ \endgroup
+}
+\newcommand*{\scr@hack@load}[2]{%
+ \expandafter\ifx\csname ver@#2.#1\endcsname\relax
+ \expandafter\@secondoftwo
+ \else
+ \expandafter\ifx\csname ver@#2.hak\endcsname\relax
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \else
+ \expandafter\expandafter\expandafter\@secondoftwo
+ \fi
+ \fi
+ {%
+ \PackageInfo{scrhack}{loading #2 hack}%
+ \edef\reserved@a{%
+ \noexpand\makeatletter\noexpand\input{#2.hak}%
+ \noexpand\catcode`\noexpand\@\the\catcode`\@\relax
+ }\reserved@a
+ }{%
+ \PackageInfo{scrhack}{ignorring #2 hack}%
+ }%
+}
+\BeforePackage{hyperref}{%
+ \scr@ifundefinedorrelax{hy@insteadofrefstepcounter}{}{%
+ \PackageInfo{scrhack}{hyperref hack deactivated because of\MessageBreak
+ detection of KOMA-Script class, that doesn't\MessageBreak
+ need that hack,}%
+ \KOMAExecuteOptions[scrhack.sty]{hyperref=false}%
+ }%
+}
+\AfterPackage*{hyperref}{%
+ \if@scrhack@hyperref
+ \@ifpackagelater{hyperref}{2009/11/24}{%
+ \PackageInfo{scrhack}{hyperref hack deactivated because of\MessageBreak
+ detection of hyperref version, that doesn't\MessageBreak
+ need that hack,}%
+ \KOMAExecuteOptions[scrhack.sty]{hyperref=false}%
+ }{%
+ \AtEndOfPackage{%
+ \KOMA@key[scrhack.sty]{hyperref}[true]{%
+ \PackageWarning{scrhack}{option `hyperref=#1' ignored}%
+ \FamilyKeyStateProcessed
+ }%
+ \if@scrhack@hyperref\scr@hack@load\@pkgextension{hyperref}\fi
+ }%
+ }%
+ \fi
+}
+\AfterPackage*{floatrow}{%
+ \KOMAoptions{float=false}%
+ \PackageInfo{scrhack}{option `float' deactivated}%
+ \KOMA@key[scrhack.sty]{floatrow}{%
+ \PackageWarning{scrhack}{option `floatrow' ignored}%
+ \FamilyKeyStateProcessed
+ }%
+ \if@scrhack@floatrow\scr@hack@load\@pkgextension{floatrow}\fi
+}
+\AfterPackage*{float}{%
+ \KOMA@key[scrhack.sty]{float}{%
+ \PackageWarning{scrhack}{option `float' ignored}%
+ \FamilyKeyStateProcessed
+ }%
+ \if@scrhack@float\scr@hack@load\@pkgextension{float}\fi
+}
+\AfterPackage*{listings}{%
+ \@ifpackagelater{lstmisc}{2024/02/15}{%
+ \PackageInfo{scrhack}{listings hack deactivated because of\MessageBreak
+ detection of listings version, that doesn't\MessageBreak
+ need that hack,}%
+ \KOMAExecuteOptions[scrhack.sty]{listings=false}%
+ }{%
+ \if@scrhack@listings\scr@hack@load\@pkgextension{listings}\fi
+ }%
+ \KOMA@key[scrhack.sty]{listings}[true]{%
+ \PackageWarning{scrhack}{option `listings=#1' ignored}%
+ \FamilyKeyStateProcessed
+ }%
+}
+\AfterPackage*{nomencl}{%
+ \KOMA@key[scrhack.sty]{nomencl}{%
+ \PackageWarning{scrhack}{option `nomencl' ignored}%
+ \FamilyKeyStateProcessed
+ }%
+ \if@scrhack@nomencl\scr@hack@load\@pkgextension{nomencl}\fi
+}
+\AfterPackage*{setspace}{%
+ \KOMA@key[scrhack.sty]{setspace}{%
+ \PackageWarning{scrhack}{option `setspace' ignored}%
+ \FamilyKeyStateProcessed
+ }%
+ \if@scrhack@setspace\scr@hack@load\@pkgextension{setspace}\fi
+}
+\AfterPackage*{lscape}{%
+ \if@scrhack@lscape\scr@hack@load\@pkgextension{lscape}\else
+ \KOMA@key[scrhack.sty]{lscape}{%
+ \PackageWarning{scrhack}{option `lscape' ignored}%
+ \FamilyKeyStateProcessed
+ }%
+ \fi
+}
+\AtEndOfPackage{%
+ \if@scrhack@standardsections
+ \PackageInfo{scrhack}{loading standard classes sections hack}%
+ \input{standardsections.hak}%
+ \fi
+}
+\endinput
+%%
+%% End of file `scrhack-2023-07-07.sty'.
diff --git a/Master/texmf-dist/tex/latex/scrhack/scrhack.sty b/Master/texmf-dist/tex/latex/scrhack/scrhack.sty
new file mode 100644
index 00000000000..82ab328aaf5
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/scrhack/scrhack.sty
@@ -0,0 +1,390 @@
+%%
+%% This is file `scrhack.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% scrhack.dtx (with options: `package')
+%%
+%% IMPORTANT NOTICE:
+%%
+%% For the copyright see the source file.
+%%
+%% Any modified versions of this file must be renamed
+%% with new filenames distinct from scrhack.sty.
+%%
+%% For distribution of the original source see the terms
+%% for copying and modification in the file scrhack.dtx.
+%%
+%% This generated file may be distributed as long as the
+%% original source files, as listed above, are part of the
+%% same distribution. (The sources need not necessarily be
+%% in the same archive or directory.)
+\providecommand\DeclareRelease[3]{}
+\providecommand\DeclareCurrentRelease[2]{}
+\DeclareRelease{v3.41}{2023-07-07}{scrhack-2023-07-07.sty}
+\DeclareCurrentRelease{}{2023-07-15}
+\ProvidesPackage{scrhack}
+ [2024-09-04 v3.42
+ scrhack emulation package]
+\ifnum 0=\ifcsname IfFormatAtLeastTF\endcsname
+ \IfFormatAtLeastTF{2022-06-01}{1}{0}%
+ \else
+ 0%
+ \fi\relax
+ \PackageError{scrhack}{LaTeX kernel too old}{%
+ The package needs at least LaTeX 2022-06-01.\MessageBreak
+ This error is fatal. Loading will be aborted.%
+ }%
+ \endinput
+\fi
+\ExplSyntaxOn
+\msg_new:nnn { scrhack } { option-too-late }
+ {
+ option~`#1'~after~loading~package~`#2'~ignored.
+ }
+\msg_new:nnn { scrhack } { deprecated-option }
+ {
+ deprecated~option~`#1'~ignored.
+ }
+\DeclareKeys{%
+ float .code = \__scrhack_switch_float:n { #1 },
+ float .default:n = true,
+ float .usage = preamble,
+}
+\bool_new:N \__scrhack_float_bool
+
+\cs_new:Nn \__scrhack_switch_float:n
+ {
+ \str_case_e:nnF { \str_foldcase:n { #1 } }
+ {
+ {true} {
+ \@ifpackageloaded { floatbytocbasic }
+ {
+ \msg_info:nnnn { scrhack } { option-too-late }
+ { float = true } { floatbytocbasic }
+ }
+ {
+ \bool_if:NF \__scrhack_float_bool
+ {
+ \hook_gput_code:nnn { package/float/after } { scrhack }
+ {
+ \RequirePackage { floatbytocbasic }
+ }
+ \bool_gset_true:N \__scrhack_float_bool
+ }
+ }
+ }
+ {false} {
+ \@ifpackageloaded { floatbytocbasic }
+ {
+ \msg_warning:nnnn { scrhack } { option-too-late }
+ { float=false } { floatbytocbasic }
+ }
+ {
+ \bool_if:NT \__scrhack_float_bool
+ {
+ \hook_gremove_code:nn { package/float/after } { scrhack }
+ }
+ \bool_gset_false:N \@s@_float_bool
+ }
+ }
+ }
+ {
+ \msg_warning:nnn { keys } { boolean-values-only } { float }
+ }
+ }
+\SetKeys{float=true}
+\DeclareKeys{%
+ floatrow .code = \__scrhack_switch_floatrow:n { #1 },
+ floatrow .default:n = true,
+ floatrow .usage = preamble,
+}
+\bool_new:N \__scrhack_floatrow_bool
+
+\cs_new:Nn \__scrhack_switch_floatrow:n
+ {
+ \str_case_e:nnF { \str_foldcase:n { #1 } }
+ {
+ {true} {
+ \@ifpackageloaded { floatrowbytocbasic }
+ {
+ \msg_info:nnnn { scrhack } { option-too-late }
+ { floatrow = true } { floatrowbytocbasic }
+ }
+ {
+ \bool_if:NF \__scrhack_floatrow_bool
+ {
+ \hook_gput_code:nnn { package/floatrow/after }
+ { scrhack }
+ {
+ \RequirePackage { floatrowbytocbasic }
+ }
+ \bool_gset_true:N \__scrhack_floatrow_bool
+ }
+ }
+ }
+ {false} {
+ \@ifpackageloaded { floatrowbytocbasic }
+ {
+ \msg_warning:nnnn { scrhack } { option-too-late }
+ { floatrow=false } { floatrowbytocbasic }
+ }
+ {
+ \bool_if:NT \__scrhack_floatrow_bool
+ {
+ \hook_gremove_code:nn { package/floatrow/after }
+ { scrhack }
+ }
+ \bool_gset_false:N \@s@_floatrow_bool
+ }
+ }
+ }
+ {
+ \msg_warning:nnn { keys } { boolean-values-only } { floatrow }
+ }
+ }
+\SetKeys{floatrow=true}
+\DeclareKeys{%
+ hyperref .code = \__scrhack_switch_hyperref:n { #1 },
+ hyperref .default:n = true,
+ hyperref .usage = preamble,
+}
+\cs_new:Nn \__scrhack_switch_hyperref:n
+ {
+ \str_case_e:nnF { \str_foldcase:n { #1 } }
+ {
+ {true} {
+ \msg_warning:nnn { scrhack } { deprecated-option }
+ { hyperref=#1 }
+ }
+ {false} {
+ \msg_info:nnn { scrhack } { deprecated-option }
+ { hyperref=#1 }
+ }
+ }
+ {
+ \msg_warning:nnn { keys } { boolean-values-only } { hyperref }
+ }
+ }
+\DeclareKeys{%
+ listings .code = \__scrhack_switch_listings:n { #1 },
+ listings .default:n = true,
+ listings .usage = preamble,
+}
+\cs_new:Nn \__scrhack_switch_listings:n
+ {
+ \str_case_e:nnF { \str_foldcase:n { #1 } }
+ {
+ {true} {
+ \msg_warning:nnn { scrhack } { deprecated-option }
+ { listings=#1 }
+ }
+ {false} {
+ \msg_info:nnn { scrhack } { deprecated-option }
+ { listings=#1 }
+ }
+ }
+ {
+ \msg_warning:nnn { keys } { boolean-values-only } { listings }
+ }
+ }
+\DeclareKeys{%
+ lscape .code = \__scrhack_switch_lscape:n { #1 },
+ lscape .default:n = true,
+ lscape .usage = preamble,
+}
+\bool_new:N \__scrhack_lscape_bool
+
+\cs_new:Nn \__scrhack_switch_lscape:n
+ {
+ \str_case_e:nnF { \str_foldcase:n { #1 } }
+ {
+ {true} {
+ \@ifpackageloaded { lscapeenhanced }
+ {
+ \msg_info:nnnn { scrhack } { option-too-late }
+ { lscape = true } { lscapeenhanced }
+ }
+ {
+ \bool_if:NF \__scrhack_lscape_bool
+ {
+ \hook_gput_code:nnn { package/lscape/after }
+ { scrhack }
+ {
+ \RequirePackage { lscapeenhanced }
+ }
+ \bool_gset_true:N \__scrhack_lscape_bool
+ }
+ }
+ }
+ {false} {
+ \@ifpackageloaded { lscapeenhanced }
+ {
+ \msg_warning:nnnn { scrhack } { option-too-late }
+ { lscape=false } { lscapeenhanced }
+ }
+ {
+ \bool_if:NT \__scrhack_lscape_bool
+ {
+ \hook_gremove_code:nn { package/lscape/after }
+ { scrhack }
+ }
+ \bool_gset_false:N \@s@_lscape_bool
+ }
+ }
+ }
+ {
+ \msg_warning:nnn { keys } { boolean-values-only } { lscape }
+ }
+ }
+\SetKeys{lscape=true}
+\DeclareKeys{%
+ nomencl .code = \__scrhack_switch_nomencl:n { #1 },
+ nomencl .default:n = true,
+ nomencl .usage = preamble,
+}
+\cs_new:Nn \__scrhack_switch_nomencl:n
+ {
+ \str_case_e:nnF { \str_foldcase:n { #1 } }
+ {
+ {true} {
+ \msg_warning:nnn { scrhack } { deprecated-option }
+ { nomencl=#1 }
+ }
+ {false} {
+ \msg_info:nnn { scrhack } { deprecated-option }
+ { nomencl=#1 }
+ }
+ }
+ {
+ \msg_warning:nnn { keys } { boolean-values-only } { nomencl }
+ }
+ }
+\DeclareKeys{%
+ setspace .code = \__scrhack_switch_setspace:n { #1 },
+ setspace .default:n = true,
+ setspace .usage = preamble,
+}
+\bool_new:N \__scrhack_setspace_bool
+
+\cs_new:Nn \__scrhack_switch_setspace:n
+ {
+ \str_case_e:nnF { \str_foldcase:n { #1 } }
+ {
+ {true} {
+ \@ifpackageloaded { setspaceenhanced }
+ {
+ \msg_info:nnnn { scrhack } { option-too-late }
+ { setspace = true } { setspaceenhanced }
+ }
+ {
+ \bool_if:NF \__scrhack_setspace_bool
+ {
+ \hook_gput_code:nnn { package/setspace/after } { scrhack }
+ {
+ \exp_last_unbraced:Ne \RequirePackage
+ {
+ [ \use:c { @raw@opt@setspace.sty },
+ byselectfont,
+ keepfontsize ]
+ }
+ { setspaceenhanced }
+ }
+ \bool_gset_true:N \__scrhack_setspace_bool
+ }
+ }
+ }
+ {false} {
+ \@ifpackageloaded { setspaceenhanced }
+ {
+ \msg_warning:nnnn { scrhack } { option-too-late }
+ { setspace=false } { setspaceenhanced }
+ }
+ {
+ \bool_if:NT \__scrhack_setspace_bool
+ {
+ \hook_gremove_code:nn { package/setspace/after } { scrhack }
+ }
+ \bool_gset_false:N \@s@_setspace_bool
+ }
+ }
+ }
+ {
+ \msg_warning:nnn { keys } { boolean-values-only } { setspace }
+ }
+ }
+\SetKeys{setspace=true}
+\DeclareKeys{%
+ standardsections .code = \__scrhack_switch_standardsectioning:n { #1 },
+ standardsections .default:n = true,
+ standardsections .usage = preamble,
+}
+\bool_new:N \__scrhack_standardsectioning_bool
+
+\cs_new:Nn \__scrhack_switch_standardsectioning:n
+ {
+ \str_case_e:nnF { \str_foldcase:n { #1 } }
+ {
+ {true} {
+ \@ifpackageloaded { standardsectioning }
+ {
+ \msg_info:nnnn { scrhack } { option-too-late }
+ { standardsectioning = true } { standardsectioning }
+ }
+ {
+ \bool_if:NF \__scrhack_standardsectioning_bool
+ {
+ \str_set:Nx \l_tmpa_str { \cs_meaning:N \normalsize }
+ \str_if_in:NnTF
+ \l_tmpa_str
+ { \@latex@error }
+ {
+ \hook_gput_code:nnn { class/after } { scrhack }
+ {
+ \RequirePackage { standardsectioning }
+ \exp_args:Nnnx \hook_gput_code:nnn
+ { begindocument/before } { scrhack }
+ {
+ \exp_not:N \cs_gset:Npn
+ \exp_after:wN \exp_not:N
+ \cs:w ver@standardsectioning.sty \cs_end:
+ {
+ \cs:w ver@standardsectioning.sty \cs_end:
+ }
+ }
+ \cs_undefine:c { var@standardsectioning.sty }
+ }
+ \bool_gset_true:N \__scrhack_standardsectioning_bool
+ }
+ {
+ \RequirePackage{ standardsectioning }
+ \bool_gset_false:N \__scrhack_standardsectioning_bool
+ }
+ }
+ }
+ }
+ {false} {
+ \@ifpackageloaded { standardsectioning }
+ {
+ \msg_warning:nnnn { scrhack } { option-too-late }
+ { standardsectioning=false } { standardsectioning }
+ }
+ {
+ \bool_if:NT \__scrhack_standardsectioning_bool
+ {
+ \hook_gremove_code:nn { class/after } { scrhack }
+ }
+ \bool_gset_false:N \@s@_standardsectioning_bool
+ }
+ }
+ }
+ {
+ \msg_warning:nnn { keys } { boolean-values-only } { standardsectioning }
+ }
+ }
+\ExplSyntaxOff
+\ProcessKeyOptions\relax
+\endinput
+%%
+%% End of file `scrhack.sty'.
diff --git a/Master/texmf-dist/tex/latex/se2thesis/se2colors.sty b/Master/texmf-dist/tex/latex/se2thesis/se2colors.sty
index a11d6f6325c..eb255fb341e 100644
--- a/Master/texmf-dist/tex/latex/se2thesis/se2colors.sty
+++ b/Master/texmf-dist/tex/latex/se2thesis/se2colors.sty
@@ -48,7 +48,7 @@
\endinput
}%
\providecommand \IfFormatAtLeastTF { \@ifl@t@r \fmtversion }
-\ProvidesExplPackage {se2colors} {2024-06-25} {4.2.0}
+\ProvidesExplPackage {se2colors} {2024-09-19} {4.3.4}
{A colour support package for the se2thesis bundle}
\keys_define:nn { seiicolors }
{
diff --git a/Master/texmf-dist/tex/latex/se2thesis/se2fonts.sty b/Master/texmf-dist/tex/latex/se2thesis/se2fonts.sty
index adaf3be8b75..a6fceb645c0 100644
--- a/Master/texmf-dist/tex/latex/se2thesis/se2fonts.sty
+++ b/Master/texmf-dist/tex/latex/se2thesis/se2fonts.sty
@@ -48,7 +48,7 @@
\endinput
}%
\providecommand \IfFormatAtLeastTF { \@ifl@t@r \fmtversion }
-\ProvidesExplPackage {se2fonts} {2024-06-25} {4.2.0}
+\ProvidesExplPackage {se2fonts} {2024-09-19} {4.3.4}
{A font-selection support package for the se2thesis bundle}
\msg_new:nnnn { seiifonts } { pdflatex-used }
{ You~ are~ using~ pdfLaTeX~ with~ the~ se2fonts~ packages.}
@@ -78,6 +78,7 @@
{ Switch~ to~ pdfTeX~ or~ (preferably)~ LuaTeX. }
\msg_error:nn { seiifonts } { xetex-not-supported }
}
+\RequirePackage{mismath}
\ifengineTF { \luatexengine }
{
\RequirePackage{fontspec}
diff --git a/Master/texmf-dist/tex/latex/se2thesis/se2packages.sty b/Master/texmf-dist/tex/latex/se2thesis/se2packages.sty
index 0b93beca7d5..afbe012bdd7 100644
--- a/Master/texmf-dist/tex/latex/se2thesis/se2packages.sty
+++ b/Master/texmf-dist/tex/latex/se2thesis/se2packages.sty
@@ -48,7 +48,7 @@
\endinput
}%
\providecommand \IfFormatAtLeastTF { \@ifl@t@r \fmtversion }
-\ProvidesExplPackage {se2packages} {2024-06-25} {4.2.0}
+\ProvidesExplPackage {se2packages} {2024-09-19} {4.3.4}
{Supporting packages for the se2thesis bundle}
\bool_new:N \l__slcd_packages_csquotes_bool
\bool_new:N \l__slcd_packages_booktabs_bool
diff --git a/Master/texmf-dist/tex/latex/se2thesis/se2thesis.cls b/Master/texmf-dist/tex/latex/se2thesis/se2thesis.cls
index 9ce66446581..72836dca419 100644
--- a/Master/texmf-dist/tex/latex/se2thesis/se2thesis.cls
+++ b/Master/texmf-dist/tex/latex/se2thesis/se2thesis.cls
@@ -48,7 +48,7 @@
\endinput
}%
\providecommand \IfFormatAtLeastTF { \@ifl@t@r \fmtversion }
-\ProvidesExplClass {se2thesis} {2024-06-25} {4.2.0}
+\ProvidesExplClass {se2thesis} {2024-09-19} {4.3.4}
{A thesis class for the Chair of Software Engineering II}
\prg_new_conditional:Nnn \slcd_package_if_loaded:n { p, T, F, TF }
{
@@ -335,10 +335,9 @@
\DeclareNewLayer[
mode=picture,
foreground,
- align=tr,
- hoffset=\oddsidemargin+1.5in+\textwidth,
+ hoffset=\paperwidth-\coverpagerightmargin-\box_wd:N \l__slcd_logo_box,
voffset=\coverpagetopmargin+1.5in+\ht\strutbox,
- width=\textwidth - \box_wd:N \l__slcd_logo_box,
+ width=\box_wd:N \l__slcd_logo_box,
height=\box_ht:N \l__slcd_logo_box,
contents={\putUL{\box_use:N \l__slcd_logo_box}},
]{title.seii.logo}
@@ -532,7 +531,10 @@
\renewcommand*{\@lowertitleback}{%
\group_begin:
\noindent\textbf{\@author}:\\
- \emph{\@title}\\
+ \group_begin:
+ \let\\\relax
+ \emph{\@title}
+ \group_end:\\
\tl_if_eq:NnT \l__slcd_thesis_type_tl { bachelor }
{ \GetTranslation{Bachelor-thesis},~ }
\tl_if_eq:NnT \l__slcd_thesis_type_tl { master }
diff --git a/Master/texmf-dist/tex/latex/se2thesis/se2translations-english.trsl b/Master/texmf-dist/tex/latex/se2thesis/se2translations-english.trsl
index 0a68a9ef062..beb56a91447 100644
--- a/Master/texmf-dist/tex/latex/se2thesis/se2translations-english.trsl
+++ b/Master/texmf-dist/tex/latex/se2thesis/se2translations-english.trsl
@@ -32,7 +32,7 @@
%% se2packages.sty,
%% se2thesis-master-thesis-example.bib, and
%% se2thesis-master-thesis-example.pdf
-\ProvideDictionaryFor{English}{se2translations}[2024/06/25]
+\ProvideDictionaryFor{English}{se2translations}[2024/09/19]
\ProvideDictTranslation{abstract}{abstract}
\ProvideDictTranslation{Abstract}{Abstract}
\ProvideDictTranslation{acknowledgement}{acknowledgement}
@@ -57,10 +57,10 @@
\ProvideDictTranslation{External}{External Examiner}
\ProvideDictTranslation{degreeprogramme}{programme}
\ProvideDictTranslation{Degreeprogramme}{Programme}
-\ProvideDictTranslation{Bachelor-thesis}{Bachelor Thesis}
-\ProvideDictTranslation{Bachelor-thesis-proposal}{Bachelor Thesis Proposal}
-\ProvideDictTranslation{Master-thesis}{Master Thesis}
-\ProvideDictTranslation{Master-thesis-proposal}{Master Thesis Proposal}
+\ProvideDictTranslation{Bachelor-thesis}{Bachelor's Thesis}
+\ProvideDictTranslation{Bachelor-thesis-proposal}{Bachelor's Thesis Proposal}
+\ProvideDictTranslation{Master-thesis}{Master's Thesis}
+\ProvideDictTranslation{Master-thesis-proposal}{Master's Thesis Proposal}
\ProvideDictTranslation{PhD-thesis}{PhD Thesis}
\ProvideDictTranslation{PhD-thesis-proposal}{PhD Thesis Proposal}
\ProvideDictTranslation{date}{date}
diff --git a/Master/texmf-dist/tex/latex/se2thesis/se2translations-german.trsl b/Master/texmf-dist/tex/latex/se2thesis/se2translations-german.trsl
index c4b8dda368f..5cf14e800fe 100644
--- a/Master/texmf-dist/tex/latex/se2thesis/se2translations-german.trsl
+++ b/Master/texmf-dist/tex/latex/se2thesis/se2translations-german.trsl
@@ -32,7 +32,7 @@
%% se2packages.sty,
%% se2thesis-master-thesis-example.bib, and
%% se2thesis-master-thesis-example.pdf
-\ProvideDictionaryFor{German}{se2translations}[2024/06/25]
+\ProvideDictionaryFor{German}{se2translations}[2024/09/19]
\ProvideDictTranslation{abstract}{Zusammenfassung}
\ProvideDictTranslation{Abstract}{Zusammenfassung}
\ProvideDictTranslation{acknowledgement}{Danksagung}
diff --git a/Master/texmf-dist/tex/latex/sepfootnotes/sepfootnotes.sty b/Master/texmf-dist/tex/latex/sepfootnotes/sepfootnotes.sty
index d953d300226..f99b9770c0a 100644
--- a/Master/texmf-dist/tex/latex/sepfootnotes/sepfootnotes.sty
+++ b/Master/texmf-dist/tex/latex/sepfootnotes/sepfootnotes.sty
@@ -1,4 +1,4 @@
-%% Copyright (C) 2013-2016 Eduardo C. Lourenço de Lima
+%% Copyright (C) 2013-2024 Eduardo C. Lourenço de Lima
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
@@ -11,19 +11,23 @@
%% version 2005/12/01 or later.
%%
\NeedsTeXFormat {LaTeX2e} [1996/06/01]
-\ProvidesPackage {sepfootnotes} [2016/07/18 v0.3c Footnotes in separate file]
+\ProvidesPackage {sepfootnotes} [2024/07/05 v0.3d Footnotes in separate file]
\newcommand\sep@packagename{sepfootnotes}
+%{% options
+
\DeclareOption {quiet} {\sep@opt@quiettrue}
\DeclareOption {warn} {\sep@opt@warntrue}
\DeclareOption {error} {\sep@opt@errortrue}
\DeclareOption {global} {\sep@opt@globaltrue}
+\DeclareOption {after} {\sep@opt@aftertrue}
\newif \ifsep@opt@quiet
\newif \ifsep@opt@warn
\newif \ifsep@opt@error
\newif \ifsep@opt@global
+\newif \ifsep@opt@after
\sep@opt@warntrue
@@ -38,10 +42,10 @@
\sep@opt@warnfalse
\fi
+%}%
+%{% public
-% ********************************* Public ************************************
-
-% ==================== shared by footnotes and endnotes =======================
+%{% footnotes and endnotes
\newcommand\sep@new [1]
{\newcounter{#1note}%
@@ -52,7 +56,8 @@
\expandafter\newcommand\csname #1quicknote\endcsname [1] {\sep@namereplace {#1} {sepfootnotes@tmp@quick} {##1}\csname #1note\endcsname{sepfootnotes@tmp@quick}}\relax
}
-% -------------------------------- footnotes ----------------------------------
+%}%
+%{% footnotes
\newcommand\newfootnotes{\@ifstar\sep@newfootnotesfree\sep@newfootnotes}
@@ -73,7 +78,8 @@
\@addtoreset {#2note} {#1}%
\expandafter\renewcommand\csname the#2mark\endcsname {\fnsymbol {#2note}}}
-% -------------------------------- endnotes -----------------------------------
+%}%
+%{% endnotes
\newcommand\newendnotes [1]
{\sep@new {#1}%
@@ -88,8 +94,8 @@
\expandafter\newcommand\csname #1notesize\endcsname {\footnotesize}%
\newenvironment {#1notes} {\csname #1notesize\endcsname\setlength\parskip\footnotesep} {}}
-
-% ------------------------------ commentnotes --------------------------------
+%}%
+%{% commentnotes
\newcommand\newcommentnotes [1]
{\newfootnotes*{#1}\relax
@@ -107,62 +113,114 @@
\@addtoreset {#2note} {#1}\relax
\expandafter\renewcommand\csname the#2mark\endcsname {\fnsymbol {#2note}}}
-% ********************************* Private ***********************************
+%}%
+
+%}%
+%{% private
-% ---------------------------------- files ------------------------------------
+%{% files
\newcommand\sep@filename [1] {\jobname.ent-#1}
\newcommand\sep@openout [1] {\expandafter \newwrite\csname sep@fileout#1\endcsname\immediate\expandafter\openout\csname sep@fileout#1\endcsname=\sep@filename#1\relax}
\newcommand\sep@write [2] {\immediate \write\csname sep@fileout#1\endcsname {#2}}
\newcommand\sep@close [1] {\immediate\expandafter\closeout\csname sep@fileout#1\endcsname\relax}
-% ---------------------------------- table ------------------------------------
+%}%
+%{% names
+
+%{% \sep@nameuse <prefix> <key>
\newcommand\sep@nameuse [2]
{\@ifundefined{sepfootnotes@text@#1@#2}
- {\ifsep@opt@error
- \PackageError {\sep@packagename} {`#2' has not been assigned a content}
- {`#2' has not been assigned a content.\MessageBreak
- Solution: Define `#2'\MessageBreak
- Try: \@backslashchar #1notecontent{#2}{<content>}}\relax
- \fi
- \ifsep@opt@warn
- \PackageWarning {\sep@packagename} {`#2' has not been assigned a content}\relax
- \fi}
+ {\sep@warning@undefined{#1}{#2}}
{\@nameuse{sepfootnotes@text@#1@#2}}}
+%}%
+%{% \sep@namedef <prefix> <key> <content>
+
\newcommand\sep@namedef [3]
-{\@ifundefined{sepfootnotes@text@#1@#2}
+{\ifsep@opt@after\sep@namereplace{#1}{#2}{#3}\else
+ \@ifundefined{sepfootnotes@text@#1@#2}
{\ifsep@opt@global\global\fi\@namedef{sepfootnotes@text@#1@#2}{#3}}
- {\ifsep@opt@error
- \PackageError {\sep@packagename} {`#2' is already in use}
- {`#2' is already in use.\MessageBreak
- Solution: Use another key.\MessageBreak
- Try: \@backslashchar #1notecontent{<key>}{<content>}}\relax
- \fi
- \ifsep@opt@warn
- \PackageWarning {\sep@packagename} {`#2' is already in use}
- \fi}}
+ {\sep@warning@already{#1}{#2}}\fi}
+
+%}%
+%{% \sep@namereplace <prefix> <key> <content>
+
+\newcommand\sep@namereplace [3]
+{%
+ \ifsep@opt@after
+ \global\@namedef{sepfootnotes@text@#1@#2}{#3}%
+ \write\@auxout{\expandafter\unexpanded\expandafter{\global\@namedef {sepfootnotes@text@#1@#2}{#3}}}%
+ \else
+ \ifsep@opt@global\global\fi\@namedef{sepfootnotes@text@#1@#2}{#3}%
+ \fi
+}
+
+%}%
+
+%{% \sep@warning@undefined <prefix> <key>
+
+\newcommand \sep@warning@undefined [2]
+{\ifsep@opt@error
+ \PackageError
+ {\sep@packagename}
+ {`#2' has not been assigned a content}
+ {`#2' has not been assigned a content.\MessageBreak
+ Solution: Define `#2'\MessageBreak
+ Try: \@backslashchar #1notecontent{#2}{<content>}}%
+ \fi
+ \ifsep@opt@warn
+ \PackageWarning
+ {\sep@packagename}
+ {`#2' has not been assigned a content}%
+ \fi
+}
-\newcommand\sep@namereplace [3] {\ifsep@opt@global\global\fi\@namedef{sepfootnotes@text@#1@#2}{#3}}
+%}%
+%{% \sep@warning@already <prefix> <key>
+
+\newcommand \sep@warning@already [2]
+{\ifsep@opt@error
+ \PackageError
+ {\sep@packagename}
+ {`#2' is already in use}
+ {`#2' is already in use.\MessageBreak
+ Solution: Use another key.\MessageBreak
+ Try: \@backslashchar #1notecontent{<key>}{<content>}}%
+ \fi
+ \ifsep@opt@warn
+ \PackageWarning
+ {\sep@packagename}
+ {`#2' is already in use}%
+ \fi
+}
-% ---------------------------------- marks ------------------------------------
+%}%
+
+%}%
+%{% marks
\newcommand\sep@markset [1] {\protected@xdef\@thefnmark{\csname the#1mark\endcsname}}
\newcommand\sep@mark [2] {\stepcounter {#1note}\sep@markset {#1}\@footnotemark}
-% ---------------------- cross-references and counters ------------------------
+%}%
+%{% cross-references and counters
\newcommand\sep@refsetcounter [2] {\setcounter{#1}{#2}\protected@edef\@currentlabel{\csname p@#1\endcsname\csname the#1\endcsname}}
\newcommand\sep@refstepcounter [1] {\stepcounter {#1}\protected@edef\@currentlabel{\csname p@#1\endcsname\csname the#1\endcsname}}
-% ********************************* Default ***********************************
+%}%
+
+%}%
+%{% default
-% ------------------------- footnotes: \sepfootnote ---------------------------
+%% The default \sepfootnote apparatus relies on \footnote
-%% Default: The default \sepfootnote family relies on \footnote
\newfootnotes{sepfoot}
+%}%
+
\endinput
%%
%% End of file `sepfootnotes.sty'.
diff --git a/Master/texmf-dist/tex/latex/sidenotes/caesar_book.cls b/Master/texmf-dist/tex/latex/sidenotes/caesar_book.cls
index 685f736aefa..c1f24a16ad3 100644
--- a/Master/texmf-dist/tex/latex/sidenotes/caesar_book.cls
+++ b/Master/texmf-dist/tex/latex/sidenotes/caesar_book.cls
@@ -1,20 +1,13 @@
\NeedsTeXFormat{LaTeX2e}
-\ProvidesFile{caesar_book.cls}[2020/03/24 v1.00a Caesar book]
-% Load the amsmath and the mhchem package before loading microtype
-\RequirePackage{amsmath}% better math handling
-\RequirePackage[version=3]{mhchem}% chemical formulas
+\ProvidesFile{caesar_book.cls}[2024/09/12 v1.20 Caesar book]
\LoadClassWithOptions{book}% this is derived from the book class
\RequirePackage{sidenotes}% put annotations, tables and figures in the margin
-\captionsetup{font=footnotesize, skip=4pt}
-\RequirePackage[maxfloats=45]{morefloats}% a lot of marginals need more float 'memory'
+\captionsetup{font=footnotesize, skip=4pt} % use values matching the style
+\extrafloats{45}% a lot of marginals need more float 'memory'
\RequirePackage{marginfix}% automatically adjust the side-floats nicely
-\newcommand{\caesar@letterspace}[1]{#1}% allow LuaLaTeX, LaTeX letterspacing
\RequirePackage{microtype}% microtypography
-\@ifpackagelater{microtype}{2011/08/18}% xxx allow LaTeX and earlier microtype
-{\renewcommand{\caesar@letterspace}[1]{\textls{#1}}}%
-{\AtEndDocument{\ClassWarningNoLine{caesar_book}{Need newest microtype for letterspacing.}}}
%
-% Set page layout geometry -- default is science-book format
+% Set page layout geometry - default is science-book format
% this means a (portrait) paper size of 170mm x 240mm
%
\RequirePackage{geometry}
@@ -24,7 +17,9 @@
%
\renewcommand{\normalsize}{\fontsize{10pt}{13pt}\selectfont}%
\renewcommand{\footnotesize}{\fontsize{8pt}{10pt}\selectfont}%
-% fullwidth environment, text across textwidth+marginparsep+marginparwidth
+%
+% fullwidth environment, text across textwidth + marginparsep + marginparwidth
+%
\newlength{\overhang}
\setlength{\overhang}{\marginparwidth}
\addtolength{\overhang}{\marginparsep}
@@ -38,7 +33,9 @@
{\end{adjustwidth*}}%
{\end{adjustwidth}}%
}
+%
% set up the fonts
+%
\RequirePackage{ifluatex}
\ifluatex% in LuaLateX we use fontspec
\RequirePackage{fontspec}%
@@ -47,14 +44,15 @@
\setmainfont[Ligatures=TeX, Numbers=OldStyle]{Tex Gyre Pagella}% free Palatino clone
\setmonofont{Tex Gyre Cursor}% works okay with palatino
\setsansfont{Tex Gyre Heros}% work okay with palatino
- \mhchemoptions{textfontcommand=\addfontfeature{Numbers=Lining}} % use lining numbers for chemical formulas
\else% in LaTeX we load fonts differently
\IfFileExists{mathpazo.sty}{\RequirePackage[osf,sc]{mathpazo}}{}% palatino clone for math
\IfFileExists{helvet.sty}{\RequirePackage[scaled=0.90]{helvet}}{}% helvetica is sans serif font
\IfFileExists{beramono.sty}{\RequirePackage[scaled=0.85]{beramono}}{}% beramono is tt font
\RequirePackage[T1]{fontenc}% finally load fontenc
\fi
-% nice headings and TOC
+%
+% nice headings, TOC, page numbering ...
+%
\RequirePackage{titlesec,titletoc}% load the helper package
\setcounter{secnumdepth}{-1}% no numbering at all
\titleformat{\chapter}[display]{\relax\itshape\huge}{}{0pt}{\huge\rmfamily\itshape}[]% chapter format
@@ -75,7 +73,7 @@
\renewcommand{\headrulewidth}{0pt}% The running heads and feet do not have rules
\renewcommand{\footrulewidth}{0pt}
\fancyhf{}% set up the page numbering
-{\fancyfoot[LE,RO]{\thepage}}
+\fancyfoot[LE,RO]{\thepage}
\fancypagestyle{plain}{%
\fancyhf{}
}
@@ -87,14 +85,13 @@
\@savemarbox\@marbox{\marginparstyle#1}% marginparstyle is a prefix to the marginpar text now
\global\setbox\@currbox\copy\@marbox % the rest of the definition is taken from original LaTeX
\@xympar}
-\renewcommand*{\marginfont}{\marginparstyle}
+\@ifpackageloaded{marginnote}{\renewcommand*{\marginfont}{\marginparstyle}}{} % adjust marginnote font in the same way
% setup itemize and enumerate
\RequirePackage{enumitem}
\setlist[itemize]{leftmargin=*}
-%\renewcommand{\labelitemi}{}
-% compatibility with T-L
%
% titlepage
+%
\RequirePackage{ifthen}
\newcommand{\publisher}[1]{\gdef\caesar@publisher{#1}}
\gdef\caesar@thesis{}
@@ -106,7 +103,7 @@
% first count the number of lines in the title
\begin{fullwidth}
\raggedright%
- \setbox0\vbox{\noindent\fontsize{30}{38}\selectfont\caesar@letterspace{\MakeTextUppercase{\@title}}\par
+ \setbox0\vbox{\noindent\fontsize{30}{38}\selectfont\textls{\MakeTextUppercase{\@title}}\par
\count@\z@
\loop
\unskip\unpenalty\unskip\unpenalty\unskip
@@ -124,12 +121,12 @@
\sffamily%
%\begin{fullwidth}%
\vspace*{0em}% one line extra space
- \noindent\LARGE\caesar@letterspace{\MakeTextUppercase{\@author}}\par
+ \noindent\LARGE\textls{\MakeTextUppercase{\@author}}\par
\vfill%
- \noindent\fontsize{30}{38}\selectfont\textcolor{darkgray}{\caesar@letterspace{\MakeTextUppercase{\@title}}}\par
+ \noindent\fontsize{30}{38}\selectfont\textcolor{darkgray}{\textls{\MakeTextUppercase{\@title}}}\par
\vfill%
\vspace{\caesar@titlespace}%
- \noindent\Large\caesar@letterspace{\MakeTextUppercase{\caesar@publisher}}\par
+ \noindent\Large\textls{\MakeTextUppercase{\caesar@publisher}}\par
%\end{fullwidth}%
}%
\thispagestyle{empty}%
@@ -146,6 +143,9 @@
\section*{\caesar@thesis\@author}
%
}
+%
+% higher level macros go here
+%
\newcommand\newthought[1]{%
\addvspace{1.0\baselineskip plus 0.5ex minus 0.2ex}%
\noindent\textsc{#1}%
diff --git a/Master/texmf-dist/tex/latex/sidenotes/sidenotes.sty b/Master/texmf-dist/tex/latex/sidenotes/sidenotes.sty
index 7b21e85bd06..c517b817c68 100644
--- a/Master/texmf-dist/tex/latex/sidenotes/sidenotes.sty
+++ b/Master/texmf-dist/tex/latex/sidenotes/sidenotes.sty
@@ -13,10 +13,10 @@
%% about the files the work consists of.
%%
\RequirePackage{l3keys2e}%
-\ProvidesExplPackage{sidenotes}{2016/04/21}{1.00}{rich text in the margin for LaTeX}
-\RequirePackage{marginnote} % provides an offset option for the marginals instead of a float
-\RequirePackage{caption} % handles the captions (in the margin)
-\RequirePackage{xparse} % new LaTeX3 syntax to define macros and environments
+\ProvidesExplPackage{sidenotes}{2024/09/12}{1.20}{Rich text in the margin for LaTeX}
+\RequirePackage{marginnote} % Provides an offset option for the marginals instead of a float
+\RequirePackage{caption} % Handles the captions (in the margin)
+\RequirePackage{xparse} % New LaTeX3 syntax to define macros and environments
\RequirePackage[strict]{changepage} % Changepage package for symmetric twoside handling
\ExplSyntaxOn
\keys_define:nn { sidenotes }
@@ -26,7 +26,7 @@
\ProcessKeysOptions { sidenotes }
\newcounter{sidenote} % make a counter
\setcounter{sidenote}{1} % init the counter
-\DeclareExpandableDocumentCommand{\IfNoValueOrEmptyTF}{ m m m }
+\DeclareExpandableDocumentCommand{\IfNoValueOrEmptyTF}{ m +m +m }
{
\IfNoValueTF{#1}
{#2}
@@ -57,7 +57,7 @@
{\@sidenotes@thesidenotemark{,}}
{}
}
-\NewDocumentCommand \@sidenotes@placemarginal { m m }
+\NewDocumentCommand \@sidenotes@placemarginal { +m +m }
{
\IfNoValueOrEmptyTF{#1}
{\marginpar{#2}}
@@ -159,9 +159,11 @@
{
\begin{figure}[#1]
\begin{autoadjustwidth}{}{-\@sidenotes@extrawidth}
+ \begin{minipage}{\linewidth}
\captionsetup{style=widefigure}
}
{
+\end{minipage}
\end{autoadjustwidth}
\end{figure}
}
@@ -170,9 +172,11 @@
{
\begin{table}[#1]
\begin{autoadjustwidth}{}{-\@sidenotes@extrawidth}
+ \begin{minipage}{\linewidth}
\captionsetup{style=widetable}
}
{
+\end{minipage}
\end{autoadjustwidth}
\end{table}
}
diff --git a/Master/texmf-dist/tex/latex/sillypage/sillypage.sty b/Master/texmf-dist/tex/latex/sillypage/sillypage.sty
index 2c304af0505..a78ae795dc8 100644
--- a/Master/texmf-dist/tex/latex/sillypage/sillypage.sty
+++ b/Master/texmf-dist/tex/latex/sillypage/sillypage.sty
@@ -22,8 +22,8 @@
%% and version 1.3c or later is part of all distributions of LaTeX version
%% 2005/12/01 or later.
%%
-\def\sillypageDate{2023-03-04}
-\def\sillypageVersion{1.6}
+\def\sillypageDate{2024-07-23}
+\def\sillypageVersion{1.7}
\ProvidesExplPackage
{sillypage} {\sillypageDate} {\sillypageVersion}
{The silly walk as page numbering style}
@@ -36,19 +36,45 @@
\newcommand*\@silly { \__silly_step:n }
\cs_new:Npn \__silly_step:n #1
{
+ \UseTaggingSocket{__silly/begin}{#1}
+ \SuspendTagging{__silly}
\__silly_step_aux:eN
{ \int_eval:n { \int_mod:nn { #1-1 } { \silly@steps } +1 } }
\c_false_bool
+ \ResumeTagging{__silly}
+ \UseTaggingSocket{__silly/end}
}
\NewDocumentCommand \sillynumeral { m } { \__silly_numeral:n {#1} }
\newcommand*\@sillynumeral { \__silly_numeral:n }
\cs_new:Npn \__silly_numeral:n #1
{
+ \UseTaggingSocket{__silly/begin}{#1}
+ \SuspendTagging{__silly}
\exp_args:Ne \str_map_function:nN
{ \int_to_base:nn {#1} { 12 } } \__silly_numeral_aux:n
+ \ResumeTagging{__silly}
+ \UseTaggingSocket{__silly/end}
}
\cs_new:Npn \__silly_numeral_aux:n #1
{ \__silly_step_aux:eN { "\char_uppercase:N #1+1 } \c_true_bool }
+
+\NewSocket{tagsupport/__silly/begin}{1}
+\NewSocket{tagsupport/__silly/end}{0}
+\NewSocketPlug{tagsupport/__silly/begin}{tagged}
+ {
+ \mode_leave_vertical:
+ \tag_mc_end_push:
+ \tag_struct_begin:n {tag=Span}
+ \tag_mc_begin:n {actualtext=#1}
+ }
+\NewSocketPlug{tagsupport/__silly/end}{tagged}
+ {
+ \tag_mc_end:
+ \tag_struct_end:
+ \tag_mc_begin_pop:n{}
+ }
+\AssignSocketPlug{tagsupport/__silly/begin}{tagged}
+\AssignSocketPlug{tagsupport/__silly/end}{tagged}
\cs_new:Npn \__silly_step_aux:nN #1 #2
{
\cs_if_exist_use:cF { texorpdfstring } { \use_i:nn }
diff --git a/Master/texmf-dist/tex/latex/sim-os-menus/sim-os-menus.sty b/Master/texmf-dist/tex/latex/sim-os-menus/sim-os-menus.sty
index 01da065abb9..ee8a15a8eba 100644
--- a/Master/texmf-dist/tex/latex/sim-os-menus/sim-os-menus.sty
+++ b/Master/texmf-dist/tex/latex/sim-os-menus/sim-os-menus.sty
@@ -2,7 +2,9 @@
% licence : Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{sim-os-menus}[2023/11/14 0.1.1 Present 'context menu'/'terminal'/'windows', with TikZ or tcolorbox (en of fr commands)]
+\ProvidesPackage{sim-os-menus}[2024/09/28 0.1.3 Present 'context menu'/'terminal'/'windows', with TikZ or tcolorbox (en or fr commands)]
+% 0.1.3 DirTree avec forest
+% 0.1.2 Ajout d'une visionneuse type python
% 0.1.1 French version of the commands
% 0.1.0 Initial version
@@ -794,4 +796,180 @@
\endtcolorbox%
}
+%====PYVIEWER (OK) 0.1.2
+\tcbset{StylePYViewer/.style={%
+ enhanced,boxrule=1pt,arc=3pt,before skip=\baselineskip,after skip=\baselineskip,%
+ colframe=gray,colback=lightgray!5,colbacktitle=lightgray!15,colupper=black,coltitle=black,titlerule=0.4pt,left=3pt,top=2pt,bottom=2pt,right=2pt,middle=0pt,fonttitle=\bfseries\small\sffamily
+ }
+}
+
+\setKVdefault[PYVisionn]{Titre={Éditeur Python},Align={center},Largeur={\linewidth},AlignH={flush left},Icones=true}
+
+\NewDocumentCommand\PYVIewerTitre{ s }{%
+ \IfBooleanTF{#1}%
+ {%
+ \begin{tblr}{colsep=4pt,rowsep=0pt,width=\linewidth,colspec={l|[1pt]X[c]|[1pt]c},cells={font=\footnotesize}}
+ \vphantom{p}\useKV[PYVisionn]{Titre} && \faPython \\
+ \end{tblr}
+ }%
+ {%
+ \begin{tblr}{colsep=4pt,rowsep=0pt,width=\linewidth,colspec={l|[1pt]l|[1pt]l|[1pt]l|[1pt]X[c]|[1pt]c},cells={font=\footnotesize}}
+ \vphantom{p}\useKV[PYVisionn]{Titre} & \faFile*[regular]~~\faIcon[regular]
+ {file-code}~~\faSave&\faPlay~~\faStop&\faBug&& \faPython \\
+ \end{tblr}
+ }%
+}
+
+\NewDocumentEnvironment{VisionnPY}{ O{} m }
+{%
+ \restoreKV[PYVisionn]%
+ \setKV[PYVisionn]{#1}%
+ \tcolorbox[StylePYViewer,{\useKV[PYVisionn]{Align}},title={\ifboolKV[PYVisionn]{Icones}{\PYVIewerTitre}{\PYVIewerTitre*}},width={\useKV[PYVisionn]{Largeur}},halign={\useKV[PYVisionn]{AlignH}},#2]
+}%
+{%
+ \endtcolorbox%
+}
+
+\setKVdefault[PYViewer]{title={Python editor},align={center},width={\linewidth},halign={flush left},icons=true}
+
+\NewDocumentCommand\PYVIewerTitle{ s }{%
+ \IfBooleanTF{#1}%
+ {%
+ \begin{tblr}{colsep=4pt,rowsep=0pt,width=\linewidth,colspec={l|[1pt]X[c]|[1pt]c},cells={font=\footnotesize}}
+ \vphantom{p}\useKV[PYViewer]{title} && \faPython \\
+ \end{tblr}
+ }%
+ {%
+ \begin{tblr}{colsep=4pt,rowsep=0pt,width=\linewidth,colspec={l|[1pt]l|[1pt]l|[1pt]l|[1pt]X[c]|[1pt]c},cells={font=\footnotesize}}
+ \vphantom{p}\useKV[PYViewer]{title} & \faFile*[regular]~~\faIcon[regular]
+ {file-code}~~\faSave&\faPlay~~\faStop&\faBug&& \faPython \\
+ \end{tblr}
+ }%
+}
+
+\NewDocumentEnvironment{PYViewer}{ O{} m }
+{%
+ \restoreKV[PYViewer]%
+ \setKV[PYViewer]{#1}%
+ \tcolorbox[StylePYViewer,{\useKV[PYViewer]{align}},title={\ifboolKV[PYViewer]{icons}{\PYVIewerTitle}{\PYVIewerTitle*}},width={\useKV[PYViewer]{width}},halign={\useKV[PYViewer]{halign}},#2]
+}%
+{%
+ \endtcolorbox%
+}
+
+%====FOLDERTREEE (forest)
+\RequirePackage{forest}
+\useforestlibrary{edges}
+
+%\def\foldertreecolor{yellow!50!pink}
+%\def\filefoldertreecolor{gray}
+
+\NewDocumentCommand\dirforest{ s O{\foldertreecolor} }{%
+ \IfBooleanTF{#1}{}{\scalebox{0.85}[0.85]{\color{#2}\foldertreeiconfolder}\hspace{0.25em}}%
+}
+
+\NewDocumentCommand\fileforest{ s O{\filefoldertreecolor} }{%
+ \IfBooleanTF{#1}{}{\scalebox{0.85}[0.85]{\color{#2}\foldertreeiconfile}\hspace{0.25em}}%
+}
+
+\tikzset{FTdir/.style={inner sep=1pt,execute at begin node=\vphantom{(pL)}\dirforest}}
+\tikzset{FTfile/.style={inner sep=1pt,execute at begin node=\vphantom{(pL)}\fileforest}}
+\tikzset{FTedge/.style={semithick,darkgray}}
+
+\defKV[forestdirtree]{%
+ font=\def\forestditreefont{#1},%
+ coliconfolder=\def\foldertreecolor{#1},%
+ iconfolder=\def\foldertreeiconfolder{#1},%
+ coliconfile=\def\filefoldertreecolor{#1},%
+ vsep=\def\filefoldertreevsep{#1},%
+ iconfile=\def\foldertreeiconfile{#1}
+}
+
+\setKVdefault[forestdirtree]{%
+ font=\footnotesize\ttfamily,%
+ coliconfolder=gray,%
+ coliconfile=gray,%
+ iconfolders=true,%
+ iconfiles=false,%
+ vsep=0.15em,%
+ iconfolder={\faFolderOpen},%
+ iconfile={\faIcon*[regular]{file}}
+}
+
+\NewDocumentEnvironment{ForestDirTree}{ O{} m +b }
+{
+ \restoreKV[forestdirtree]%
+ \setKV[forestdirtree]{#1}%
+ \ifboolKV[forestdirtree]{iconfolders}%
+ {%
+ \tikzset{FTdir/.style={inner sep=1pt,execute at begin node=\vphantom{(pL)}\dirforest}}%
+ }%
+ {%
+ \tikzset{FTdir/.style={inner sep=1pt,execute at begin node=\vphantom{(pL)}\dirforest*}}%
+ }%
+ \ifboolKV[forestdirtree]{iconfiles}%
+ {%
+ \tikzset{FTfile/.style={inner sep=1pt,execute at begin node=\vphantom{(pL)}\fileforest}}%
+ }%
+ {%
+ \tikzset{FTfile/.style={inner sep=1pt,execute at begin node=\vphantom{(pL)}\fileforest*}}%
+ }%
+ \forest
+ for tree={s sep=\filefoldertreevsep,folder,grow'=0,folder indent=0.5em,fit=band,font=\forestditreefont,edge={FTedge},#2}
+ #3
+}%
+{%
+ \endforest%
+}
+
+\tikzset{ADdos/.style={inner sep=1pt,execute at begin node=\vphantom{(pL)}\dirforest}}
+\tikzset{ADfic/.style={inner sep=1pt,execute at begin node=\vphantom{(pL)}\fileforest}}
+\tikzset{ADtrait/.style={semithick,darkgray}}
+
+\defKV[forestarbor]{%
+ Police=\def\forestditreefont{#1},%
+ CoulIcoD=\def\foldertreecolor{#1},%
+ CoulIcoF=\def\filefoldertreecolor{#1},%
+ EspaceV=\def\filefoldertreevsep{#1},%
+ IcoD=\def\foldertreeiconfolder{#1},%
+ IcoF=\def\foldertreeiconfile{#1}
+}
+
+\setKVdefault[forestarbor]{%
+ Police=\footnotesize\ttfamily,%
+ CoulIcoD=gray,%
+ CoulIcoF=gray,%
+ AffIcoD=true,%
+ AffIcoF=false,%
+ EspaceV=0.15em,%
+ IcoD={\faFolderOpen},%
+ IcoF={\faIcon*[regular]{file}}
+}
+
+\NewDocumentEnvironment{ArborDossiers}{ O{} m +b }
+{
+ \restoreKV[forestarbor]%
+ \setKV[forestarbor]{#1}%
+ \ifboolKV[forestarbor]{AffIcoD}%
+ {%
+ \tikzset{ADdos/.style={inner sep=1pt,execute at begin node=\vphantom{(pL)}\dirforest}}%
+ }%
+ {%
+ \tikzset{ADdos/.style={inner sep=1pt,execute at begin node=\vphantom{(pL)}\dirforest*}}%
+ }%
+ \ifboolKV[forestarbor]{AffIcoF}%
+ {%
+ \tikzset{ADfic/.style={inner sep=1pt,execute at begin node=\vphantom{(pL)}\fileforest}}%
+ }%
+ {%
+ \tikzset{ADfic/.style={inner sep=1pt,execute at begin node=\vphantom{(pL)}\fileforest*}}%
+ }%
+ \forest
+ for tree={s sep=\filefoldertreevsep,folder,grow'=0,folder indent=0.5em,fit=band,font=\forestditreefont,edge={ADtrait},#2}
+ #3
+}%
+{%
+ \endforest%
+}
+
\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/simpleicons/simpleicons.sty b/Master/texmf-dist/tex/latex/simpleicons/simpleicons.sty
index 38f443abb0b..849470e8326 100644
--- a/Master/texmf-dist/tex/latex/simpleicons/simpleicons.sty
+++ b/Master/texmf-dist/tex/latex/simpleicons/simpleicons.sty
@@ -1,6 +1,6 @@
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{simpleicons}[2024/06/28 12.4.0 Simple Icons 12.4.0 Logos]
+\ProvidesPackage{simpleicons}[2024/09/27 13.11.0 Simple Icons 13.11.0 Logos]
\RequirePackage{iftex}
diff --git a/Master/texmf-dist/tex/latex/simpleicons/simpleiconsglyphs-pdftex.tex b/Master/texmf-dist/tex/latex/simpleicons/simpleiconsglyphs-pdftex.tex
index 5d38055f8e5..e3ab26aa171 100644
--- a/Master/texmf-dist/tex/latex/simpleicons/simpleiconsglyphs-pdftex.tex
+++ b/Master/texmf-dist/tex/latex/simpleicons/simpleiconsglyphs-pdftex.tex
@@ -5,433 +5,433 @@
\expandafter\def\csname simpleicon@1passwordicon\endcsname {\simpleiconsmapone\symbol{3}}
\expandafter\def\csname simpleicon@2fasicon\endcsname {\simpleiconsmapone\symbol{4}}
\expandafter\def\csname simpleicon@2kicon\endcsname {\simpleiconsmapone\symbol{5}}
- \expandafter\def\csname simpleicon@365datascienceicon\endcsname {\simpleiconsmapone\symbol{6}}
- \expandafter\def\csname simpleicon@3micon\endcsname {\simpleiconsmapone\symbol{7}}
- \expandafter\def\csname simpleicon@42icon\endcsname {\simpleiconsmapone\symbol{8}}
- \expandafter\def\csname simpleicon@4chanicon\endcsname {\simpleiconsmapone\symbol{9}}
- \expandafter\def\csname simpleicon@4dicon\endcsname {\simpleiconsmapone\symbol{10}}
- \expandafter\def\csname simpleicon@500pxicon\endcsname {\simpleiconsmapone\symbol{11}}
- \expandafter\def\csname simpleicon@7zipicon\endcsname {\simpleiconsmapone\symbol{12}}
- \expandafter\def\csname simpleicon@99designsicon\endcsname {\simpleiconsmapone\symbol{13}}
- \expandafter\def\csname simpleicon@9gagicon\endcsname {\simpleiconsmapone\symbol{14}}
- \expandafter\def\csname simpleicon@abbotticon\endcsname {\simpleiconsmapone\symbol{15}}
- \expandafter\def\csname simpleicon@abbrobotstudioicon\endcsname {\simpleiconsmapone\symbol{16}}
- \expandafter\def\csname simpleicon@abbvieicon\endcsname {\simpleiconsmapone\symbol{17}}
- \expandafter\def\csname simpleicon@aboutdotmeicon\endcsname {\simpleiconsmapone\symbol{18}}
- \expandafter\def\csname simpleicon@abstracticon\endcsname {\simpleiconsmapone\symbol{19}}
- \expandafter\def\csname simpleicon@abusedotchicon\endcsname {\simpleiconsmapone\symbol{20}}
- \expandafter\def\csname simpleicon@academiaicon\endcsname {\simpleiconsmapone\symbol{21}}
- \expandafter\def\csname simpleicon@accentureicon\endcsname {\simpleiconsmapone\symbol{22}}
- \expandafter\def\csname simpleicon@accusofticon\endcsname {\simpleiconsmapone\symbol{23}}
- \expandafter\def\csname simpleicon@acericon\endcsname {\simpleiconsmapone\symbol{24}}
- \expandafter\def\csname simpleicon@acmicon\endcsname {\simpleiconsmapone\symbol{25}}
- \expandafter\def\csname simpleicon@actigraphicon\endcsname {\simpleiconsmapone\symbol{26}}
- \expandafter\def\csname simpleicon@activisionicon\endcsname {\simpleiconsmapone\symbol{27}}
- \expandafter\def\csname simpleicon@activitypubicon\endcsname {\simpleiconsmapone\symbol{28}}
- \expandafter\def\csname simpleicon@actixicon\endcsname {\simpleiconsmapone\symbol{29}}
- \expandafter\def\csname simpleicon@acuraicon\endcsname {\simpleiconsmapone\symbol{30}}
- \expandafter\def\csname simpleicon@adafruiticon\endcsname {\simpleiconsmapone\symbol{31}}
- \expandafter\def\csname simpleicon@adblockicon\endcsname {\simpleiconsmapone\symbol{32}}
- \expandafter\def\csname simpleicon@adblockplusicon\endcsname {\simpleiconsmapone\symbol{33}}
- \expandafter\def\csname simpleicon@adguardicon\endcsname {\simpleiconsmapone\symbol{34}}
- \expandafter\def\csname simpleicon@adidasicon\endcsname {\simpleiconsmapone\symbol{35}}
- \expandafter\def\csname simpleicon@adminericon\endcsname {\simpleiconsmapone\symbol{36}}
- \expandafter\def\csname simpleicon@adobeicon\endcsname {\simpleiconsmapone\symbol{37}}
- \expandafter\def\csname simpleicon@adobeacrobatreadericon\endcsname {\simpleiconsmapone\symbol{38}}
- \expandafter\def\csname simpleicon@adobeaftereffectsicon\endcsname {\simpleiconsmapone\symbol{39}}
- \expandafter\def\csname simpleicon@adobeauditionicon\endcsname {\simpleiconsmapone\symbol{40}}
- \expandafter\def\csname simpleicon@adobecreativecloudicon\endcsname {\simpleiconsmapone\symbol{41}}
- \expandafter\def\csname simpleicon@adobedreamweavericon\endcsname {\simpleiconsmapone\symbol{42}}
- \expandafter\def\csname simpleicon@adobefontsicon\endcsname {\simpleiconsmapone\symbol{43}}
- \expandafter\def\csname simpleicon@adobeillustratoricon\endcsname {\simpleiconsmapone\symbol{44}}
- \expandafter\def\csname simpleicon@adobeindesignicon\endcsname {\simpleiconsmapone\symbol{45}}
- \expandafter\def\csname simpleicon@adobelightroomicon\endcsname {\simpleiconsmapone\symbol{46}}
- \expandafter\def\csname simpleicon@adobelightroomclassicicon\endcsname {\simpleiconsmapone\symbol{47}}
- \expandafter\def\csname simpleicon@adobephotoshopicon\endcsname {\simpleiconsmapone\symbol{48}}
- \expandafter\def\csname simpleicon@adobepremiereproicon\endcsname {\simpleiconsmapone\symbol{49}}
- \expandafter\def\csname simpleicon@adobexdicon\endcsname {\simpleiconsmapone\symbol{50}}
- \expandafter\def\csname simpleicon@adonisjsicon\endcsname {\simpleiconsmapone\symbol{51}}
- \expandafter\def\csname simpleicon@adpicon\endcsname {\simpleiconsmapone\symbol{52}}
- \expandafter\def\csname simpleicon@adrollicon\endcsname {\simpleiconsmapone\symbol{53}}
- \expandafter\def\csname simpleicon@adventofcodeicon\endcsname {\simpleiconsmapone\symbol{54}}
- \expandafter\def\csname simpleicon@adyenicon\endcsname {\simpleiconsmapone\symbol{55}}
- \expandafter\def\csname simpleicon@aegisauthenticatoricon\endcsname {\simpleiconsmapone\symbol{56}}
- \expandafter\def\csname simpleicon@aerlingusicon\endcsname {\simpleiconsmapone\symbol{57}}
- \expandafter\def\csname simpleicon@aerofloticon\endcsname {\simpleiconsmapone\symbol{58}}
- \expandafter\def\csname simpleicon@aeromexicoicon\endcsname {\simpleiconsmapone\symbol{59}}
- \expandafter\def\csname simpleicon@aerospikeicon\endcsname {\simpleiconsmapone\symbol{60}}
- \expandafter\def\csname simpleicon@aewicon\endcsname {\simpleiconsmapone\symbol{61}}
- \expandafter\def\csname simpleicon@affineicon\endcsname {\simpleiconsmapone\symbol{62}}
- \expandafter\def\csname simpleicon@affinityicon\endcsname {\simpleiconsmapone\symbol{63}}
- \expandafter\def\csname simpleicon@affinitydesignericon\endcsname {\simpleiconsmapone\symbol{64}}
- \expandafter\def\csname simpleicon@affinityphotoicon\endcsname {\simpleiconsmapone\symbol{65}}
- \expandafter\def\csname simpleicon@affinitypublishericon\endcsname {\simpleiconsmapone\symbol{66}}
- \expandafter\def\csname simpleicon@aframeicon\endcsname {\simpleiconsmapone\symbol{67}}
- \expandafter\def\csname simpleicon@afterpayicon\endcsname {\simpleiconsmapone\symbol{68}}
- \expandafter\def\csname simpleicon@agoraicon\endcsname {\simpleiconsmapone\symbol{69}}
- \expandafter\def\csname simpleicon@aibicon\endcsname {\simpleiconsmapone\symbol{70}}
- \expandafter\def\csname simpleicon@aidungeonicon\endcsname {\simpleiconsmapone\symbol{71}}
- \expandafter\def\csname simpleicon@aiohttpicon\endcsname {\simpleiconsmapone\symbol{72}}
- \expandafter\def\csname simpleicon@aiqfomeicon\endcsname {\simpleiconsmapone\symbol{73}}
- \expandafter\def\csname simpleicon@airasiaicon\endcsname {\simpleiconsmapone\symbol{74}}
- \expandafter\def\csname simpleicon@airbnbicon\endcsname {\simpleiconsmapone\symbol{75}}
- \expandafter\def\csname simpleicon@airbrakeicon\endcsname {\simpleiconsmapone\symbol{76}}
- \expandafter\def\csname simpleicon@airbusicon\endcsname {\simpleiconsmapone\symbol{77}}
- \expandafter\def\csname simpleicon@airbyteicon\endcsname {\simpleiconsmapone\symbol{78}}
- \expandafter\def\csname simpleicon@aircallicon\endcsname {\simpleiconsmapone\symbol{79}}
- \expandafter\def\csname simpleicon@aircanadaicon\endcsname {\simpleiconsmapone\symbol{80}}
- \expandafter\def\csname simpleicon@airchinaicon\endcsname {\simpleiconsmapone\symbol{81}}
- \expandafter\def\csname simpleicon@airfranceicon\endcsname {\simpleiconsmapone\symbol{82}}
- \expandafter\def\csname simpleicon@airindiaicon\endcsname {\simpleiconsmapone\symbol{83}}
- \expandafter\def\csname simpleicon@airplayaudioicon\endcsname {\simpleiconsmapone\symbol{84}}
- \expandafter\def\csname simpleicon@airplayvideoicon\endcsname {\simpleiconsmapone\symbol{85}}
- \expandafter\def\csname simpleicon@airtableicon\endcsname {\simpleiconsmapone\symbol{86}}
- \expandafter\def\csname simpleicon@airtelicon\endcsname {\simpleiconsmapone\symbol{87}}
- \expandafter\def\csname simpleicon@airtransaticon\endcsname {\simpleiconsmapone\symbol{88}}
- \expandafter\def\csname simpleicon@ajvicon\endcsname {\simpleiconsmapone\symbol{89}}
- \expandafter\def\csname simpleicon@akamaiicon\endcsname {\simpleiconsmapone\symbol{90}}
- \expandafter\def\csname simpleicon@akauntingicon\endcsname {\simpleiconsmapone\symbol{91}}
- \expandafter\def\csname simpleicon@akiflowicon\endcsname {\simpleiconsmapone\symbol{92}}
- \expandafter\def\csname simpleicon@alacrittyicon\endcsname {\simpleiconsmapone\symbol{93}}
- \expandafter\def\csname simpleicon@alamyicon\endcsname {\simpleiconsmapone\symbol{94}}
- \expandafter\def\csname simpleicon@albertheijnicon\endcsname {\simpleiconsmapone\symbol{95}}
- \expandafter\def\csname simpleicon@albyicon\endcsname {\simpleiconsmapone\symbol{96}}
- \expandafter\def\csname simpleicon@alchemyicon\endcsname {\simpleiconsmapone\symbol{97}}
- \expandafter\def\csname simpleicon@aldinordicon\endcsname {\simpleiconsmapone\symbol{98}}
- \expandafter\def\csname simpleicon@aldisudicon\endcsname {\simpleiconsmapone\symbol{99}}
- \expandafter\def\csname simpleicon@alfaromeoicon\endcsname {\simpleiconsmapone\symbol{100}}
- \expandafter\def\csname simpleicon@alfredicon\endcsname {\simpleiconsmapone\symbol{101}}
- \expandafter\def\csname simpleicon@algoliaicon\endcsname {\simpleiconsmapone\symbol{102}}
- \expandafter\def\csname simpleicon@algorandicon\endcsname {\simpleiconsmapone\symbol{103}}
- \expandafter\def\csname simpleicon@alibabacloudicon\endcsname {\simpleiconsmapone\symbol{104}}
- \expandafter\def\csname simpleicon@alibabadotcomicon\endcsname {\simpleiconsmapone\symbol{105}}
- \expandafter\def\csname simpleicon@alienwareicon\endcsname {\simpleiconsmapone\symbol{106}}
- \expandafter\def\csname simpleicon@aliexpressicon\endcsname {\simpleiconsmapone\symbol{107}}
- \expandafter\def\csname simpleicon@alipayicon\endcsname {\simpleiconsmapone\symbol{108}}
- \expandafter\def\csname simpleicon@allegroicon\endcsname {\simpleiconsmapone\symbol{109}}
- \expandafter\def\csname simpleicon@alliedmoddersicon\endcsname {\simpleiconsmapone\symbol{110}}
- \expandafter\def\csname simpleicon@allocineicon\endcsname {\simpleiconsmapone\symbol{111}}
- \expandafter\def\csname simpleicon@alltrailsicon\endcsname {\simpleiconsmapone\symbol{112}}
- \expandafter\def\csname simpleicon@almalinuxicon\endcsname {\simpleiconsmapone\symbol{113}}
- \expandafter\def\csname simpleicon@alpinedotjsicon\endcsname {\simpleiconsmapone\symbol{114}}
- \expandafter\def\csname simpleicon@alpinelinuxicon\endcsname {\simpleiconsmapone\symbol{115}}
- \expandafter\def\csname simpleicon@alteryxicon\endcsname {\simpleiconsmapone\symbol{116}}
- \expandafter\def\csname simpleicon@altiumdesignericon\endcsname {\simpleiconsmapone\symbol{117}}
- \expandafter\def\csname simpleicon@alwaysdataicon\endcsname {\simpleiconsmapone\symbol{118}}
- \expandafter\def\csname simpleicon@alxicon\endcsname {\simpleiconsmapone\symbol{119}}
- \expandafter\def\csname simpleicon@amazonicon\endcsname {\simpleiconsmapone\symbol{120}}
- \expandafter\def\csname simpleicon@amazonalexaicon\endcsname {\simpleiconsmapone\symbol{121}}
- \expandafter\def\csname simpleicon@amazonapigatewayicon\endcsname {\simpleiconsmapone\symbol{122}}
- \expandafter\def\csname simpleicon@amazoncloudwatchicon\endcsname {\simpleiconsmapone\symbol{123}}
- \expandafter\def\csname simpleicon@amazoncognitoicon\endcsname {\simpleiconsmapone\symbol{124}}
- \expandafter\def\csname simpleicon@amazondocumentdbicon\endcsname {\simpleiconsmapone\symbol{125}}
- \expandafter\def\csname simpleicon@amazondynamodbicon\endcsname {\simpleiconsmapone\symbol{126}}
- \expandafter\def\csname simpleicon@amazonec2icon\endcsname {\simpleiconsmapone\symbol{127}}
- \expandafter\def\csname simpleicon@amazonecsicon\endcsname {\simpleiconsmapone\symbol{128}}
- \expandafter\def\csname simpleicon@amazoneksicon\endcsname {\simpleiconsmapone\symbol{129}}
- \expandafter\def\csname simpleicon@amazonelasticacheicon\endcsname {\simpleiconsmapone\symbol{130}}
- \expandafter\def\csname simpleicon@amazonfiretvicon\endcsname {\simpleiconsmapone\symbol{131}}
- \expandafter\def\csname simpleicon@amazongamesicon\endcsname {\simpleiconsmapone\symbol{132}}
- \expandafter\def\csname simpleicon@amazoniamicon\endcsname {\simpleiconsmapone\symbol{133}}
- \expandafter\def\csname simpleicon@amazonlumberyardicon\endcsname {\simpleiconsmapone\symbol{134}}
- \expandafter\def\csname simpleicon@amazonlunaicon\endcsname {\simpleiconsmapone\symbol{135}}
- \expandafter\def\csname simpleicon@amazonmusicicon\endcsname {\simpleiconsmapone\symbol{136}}
- \expandafter\def\csname simpleicon@amazonpayicon\endcsname {\simpleiconsmapone\symbol{137}}
- \expandafter\def\csname simpleicon@amazonprimeicon\endcsname {\simpleiconsmapone\symbol{138}}
- \expandafter\def\csname simpleicon@amazonrdsicon\endcsname {\simpleiconsmapone\symbol{139}}
- \expandafter\def\csname simpleicon@amazonredshifticon\endcsname {\simpleiconsmapone\symbol{140}}
- \expandafter\def\csname simpleicon@amazonroute53icon\endcsname {\simpleiconsmapone\symbol{141}}
- \expandafter\def\csname simpleicon@amazons3icon\endcsname {\simpleiconsmapone\symbol{142}}
- \expandafter\def\csname simpleicon@amazonsimpleemailserviceicon\endcsname {\simpleiconsmapone\symbol{143}}
- \expandafter\def\csname simpleicon@amazonsqsicon\endcsname {\simpleiconsmapone\symbol{144}}
- \expandafter\def\csname simpleicon@amazonwebservicesicon\endcsname {\simpleiconsmapone\symbol{145}}
- \expandafter\def\csname simpleicon@amdicon\endcsname {\simpleiconsmapone\symbol{146}}
- \expandafter\def\csname simpleicon@amebaicon\endcsname {\simpleiconsmapone\symbol{147}}
- \expandafter\def\csname simpleicon@americanairlinesicon\endcsname {\simpleiconsmapone\symbol{148}}
- \expandafter\def\csname simpleicon@americanexpressicon\endcsname {\simpleiconsmapone\symbol{149}}
- \expandafter\def\csname simpleicon@amgicon\endcsname {\simpleiconsmapone\symbol{150}}
- \expandafter\def\csname simpleicon@ampicon\endcsname {\simpleiconsmapone\symbol{151}}
- \expandafter\def\csname simpleicon@amulicon\endcsname {\simpleiconsmapone\symbol{152}}
- \expandafter\def\csname simpleicon@anaicon\endcsname {\simpleiconsmapone\symbol{153}}
- \expandafter\def\csname simpleicon@anacondaicon\endcsname {\simpleiconsmapone\symbol{154}}
- \expandafter\def\csname simpleicon@analogueicon\endcsname {\simpleiconsmapone\symbol{155}}
- \expandafter\def\csname simpleicon@andelaicon\endcsname {\simpleiconsmapone\symbol{156}}
- \expandafter\def\csname simpleicon@androidicon\endcsname {\simpleiconsmapone\symbol{157}}
- \expandafter\def\csname simpleicon@androidautoicon\endcsname {\simpleiconsmapone\symbol{158}}
- \expandafter\def\csname simpleicon@androidstudioicon\endcsname {\simpleiconsmapone\symbol{159}}
- \expandafter\def\csname simpleicon@angularicon\endcsname {\simpleiconsmapone\symbol{160}}
- \expandafter\def\csname simpleicon@anilisticon\endcsname {\simpleiconsmapone\symbol{161}}
- \expandafter\def\csname simpleicon@animalplaneticon\endcsname {\simpleiconsmapone\symbol{162}}
- \expandafter\def\csname simpleicon@ankermakeicon\endcsname {\simpleiconsmapone\symbol{163}}
- \expandafter\def\csname simpleicon@ankiicon\endcsname {\simpleiconsmapone\symbol{164}}
- \expandafter\def\csname simpleicon@ansibleicon\endcsname {\simpleiconsmapone\symbol{165}}
- \expandafter\def\csname simpleicon@answericon\endcsname {\simpleiconsmapone\symbol{166}}
- \expandafter\def\csname simpleicon@ansysicon\endcsname {\simpleiconsmapone\symbol{167}}
- \expandafter\def\csname simpleicon@antaicon\endcsname {\simpleiconsmapone\symbol{168}}
- \expandafter\def\csname simpleicon@antdesignicon\endcsname {\simpleiconsmapone\symbol{169}}
- \expandafter\def\csname simpleicon@antena3icon\endcsname {\simpleiconsmapone\symbol{170}}
- \expandafter\def\csname simpleicon@anthropicicon\endcsname {\simpleiconsmapone\symbol{171}}
- \expandafter\def\csname simpleicon@anycubicicon\endcsname {\simpleiconsmapone\symbol{172}}
- \expandafter\def\csname simpleicon@anydeskicon\endcsname {\simpleiconsmapone\symbol{173}}
- \expandafter\def\csname simpleicon@anytypeicon\endcsname {\simpleiconsmapone\symbol{174}}
- \expandafter\def\csname simpleicon@aolicon\endcsname {\simpleiconsmapone\symbol{175}}
- \expandafter\def\csname simpleicon@apacheicon\endcsname {\simpleiconsmapone\symbol{176}}
- \expandafter\def\csname simpleicon@apacheairflowicon\endcsname {\simpleiconsmapone\symbol{177}}
- \expandafter\def\csname simpleicon@apacheanticon\endcsname {\simpleiconsmapone\symbol{178}}
- \expandafter\def\csname simpleicon@apachecassandraicon\endcsname {\simpleiconsmapone\symbol{179}}
- \expandafter\def\csname simpleicon@apachecloudstackicon\endcsname {\simpleiconsmapone\symbol{180}}
- \expandafter\def\csname simpleicon@apachecordovaicon\endcsname {\simpleiconsmapone\symbol{181}}
- \expandafter\def\csname simpleicon@apachecouchdbicon\endcsname {\simpleiconsmapone\symbol{182}}
- \expandafter\def\csname simpleicon@apachedruidicon\endcsname {\simpleiconsmapone\symbol{183}}
- \expandafter\def\csname simpleicon@apacheechartsicon\endcsname {\simpleiconsmapone\symbol{184}}
- \expandafter\def\csname simpleicon@apacheflinkicon\endcsname {\simpleiconsmapone\symbol{185}}
- \expandafter\def\csname simpleicon@apachefreemarkericon\endcsname {\simpleiconsmapone\symbol{186}}
- \expandafter\def\csname simpleicon@apachegroovyicon\endcsname {\simpleiconsmapone\symbol{187}}
- \expandafter\def\csname simpleicon@apacheguacamoleicon\endcsname {\simpleiconsmapone\symbol{188}}
- \expandafter\def\csname simpleicon@apachehadoopicon\endcsname {\simpleiconsmapone\symbol{189}}
- \expandafter\def\csname simpleicon@apachehbaseicon\endcsname {\simpleiconsmapone\symbol{190}}
- \expandafter\def\csname simpleicon@apachehiveicon\endcsname {\simpleiconsmapone\symbol{191}}
- \expandafter\def\csname simpleicon@apachejmetericon\endcsname {\simpleiconsmapone\symbol{192}}
- \expandafter\def\csname simpleicon@apachekafkaicon\endcsname {\simpleiconsmapone\symbol{193}}
- \expandafter\def\csname simpleicon@apachekylinicon\endcsname {\simpleiconsmapone\symbol{194}}
- \expandafter\def\csname simpleicon@apachemavenicon\endcsname {\simpleiconsmapone\symbol{195}}
- \expandafter\def\csname simpleicon@apachenetbeansideicon\endcsname {\simpleiconsmapone\symbol{196}}
- \expandafter\def\csname simpleicon@apacheopenofficeicon\endcsname {\simpleiconsmapone\symbol{197}}
- \expandafter\def\csname simpleicon@apacheparqueticon\endcsname {\simpleiconsmapone\symbol{198}}
- \expandafter\def\csname simpleicon@apachepulsaricon\endcsname {\simpleiconsmapone\symbol{199}}
- \expandafter\def\csname simpleicon@apacherocketmqicon\endcsname {\simpleiconsmapone\symbol{200}}
- \expandafter\def\csname simpleicon@apachesolricon\endcsname {\simpleiconsmapone\symbol{201}}
- \expandafter\def\csname simpleicon@apachesparkicon\endcsname {\simpleiconsmapone\symbol{202}}
- \expandafter\def\csname simpleicon@apachestormicon\endcsname {\simpleiconsmapone\symbol{203}}
- \expandafter\def\csname simpleicon@apachesuperseticon\endcsname {\simpleiconsmapone\symbol{204}}
- \expandafter\def\csname simpleicon@apachetomcaticon\endcsname {\simpleiconsmapone\symbol{205}}
- \expandafter\def\csname simpleicon@aparaticon\endcsname {\simpleiconsmapone\symbol{206}}
- \expandafter\def\csname simpleicon@apifoxicon\endcsname {\simpleiconsmapone\symbol{207}}
- \expandafter\def\csname simpleicon@apmterminalsicon\endcsname {\simpleiconsmapone\symbol{208}}
- \expandafter\def\csname simpleicon@apollographqlicon\endcsname {\simpleiconsmapone\symbol{209}}
- \expandafter\def\csname simpleicon@apostropheicon\endcsname {\simpleiconsmapone\symbol{210}}
- \expandafter\def\csname simpleicon@appianicon\endcsname {\simpleiconsmapone\symbol{211}}
- \expandafter\def\csname simpleicon@appiumicon\endcsname {\simpleiconsmapone\symbol{212}}
- \expandafter\def\csname simpleicon@appleicon\endcsname {\simpleiconsmapone\symbol{213}}
- \expandafter\def\csname simpleicon@applearcadeicon\endcsname {\simpleiconsmapone\symbol{214}}
- \expandafter\def\csname simpleicon@applemusicicon\endcsname {\simpleiconsmapone\symbol{215}}
- \expandafter\def\csname simpleicon@applenewsicon\endcsname {\simpleiconsmapone\symbol{216}}
- \expandafter\def\csname simpleicon@applepayicon\endcsname {\simpleiconsmapone\symbol{217}}
- \expandafter\def\csname simpleicon@applepodcastsicon\endcsname {\simpleiconsmapone\symbol{218}}
- \expandafter\def\csname simpleicon@appletvicon\endcsname {\simpleiconsmapone\symbol{219}}
- \expandafter\def\csname simpleicon@appsignalicon\endcsname {\simpleiconsmapone\symbol{220}}
- \expandafter\def\csname simpleicon@appsmithicon\endcsname {\simpleiconsmapone\symbol{221}}
- \expandafter\def\csname simpleicon@appstoreicon\endcsname {\simpleiconsmapone\symbol{222}}
- \expandafter\def\csname simpleicon@appveyoricon\endcsname {\simpleiconsmapone\symbol{223}}
- \expandafter\def\csname simpleicon@appwriteicon\endcsname {\simpleiconsmapone\symbol{224}}
- \expandafter\def\csname simpleicon@aquaicon\endcsname {\simpleiconsmapone\symbol{225}}
- \expandafter\def\csname simpleicon@aralicon\endcsname {\simpleiconsmapone\symbol{226}}
- \expandafter\def\csname simpleicon@arangodbicon\endcsname {\simpleiconsmapone\symbol{227}}
- \expandafter\def\csname simpleicon@arcicon\endcsname {\simpleiconsmapone\symbol{228}}
- \expandafter\def\csname simpleicon@arcgisicon\endcsname {\simpleiconsmapone\symbol{229}}
- \expandafter\def\csname simpleicon@archicadicon\endcsname {\simpleiconsmapone\symbol{230}}
- \expandafter\def\csname simpleicon@archiveofourownicon\endcsname {\simpleiconsmapone\symbol{231}}
- \expandafter\def\csname simpleicon@archlinuxicon\endcsname {\simpleiconsmapone\symbol{232}}
- \expandafter\def\csname simpleicon@ardouricon\endcsname {\simpleiconsmapone\symbol{233}}
- \expandafter\def\csname simpleicon@arduinoicon\endcsname {\simpleiconsmapone\symbol{234}}
- \expandafter\def\csname simpleicon@argoicon\endcsname {\simpleiconsmapone\symbol{235}}
- \expandafter\def\csname simpleicon@argosicon\endcsname {\simpleiconsmapone\symbol{236}}
- \expandafter\def\csname simpleicon@ariakiticon\endcsname {\simpleiconsmapone\symbol{237}}
- \expandafter\def\csname simpleicon@arkecosystemicon\endcsname {\simpleiconsmapone\symbol{238}}
- \expandafter\def\csname simpleicon@arloicon\endcsname {\simpleiconsmapone\symbol{239}}
- \expandafter\def\csname simpleicon@armicon\endcsname {\simpleiconsmapone\symbol{240}}
- \expandafter\def\csname simpleicon@armkeilicon\endcsname {\simpleiconsmapone\symbol{241}}
- \expandafter\def\csname simpleicon@arstechnicaicon\endcsname {\simpleiconsmapone\symbol{242}}
- \expandafter\def\csname simpleicon@artifacthubicon\endcsname {\simpleiconsmapone\symbol{243}}
- \expandafter\def\csname simpleicon@artixlinuxicon\endcsname {\simpleiconsmapone\symbol{244}}
- \expandafter\def\csname simpleicon@artstationicon\endcsname {\simpleiconsmapone\symbol{245}}
- \expandafter\def\csname simpleicon@arxivicon\endcsname {\simpleiconsmapone\symbol{246}}
- \expandafter\def\csname simpleicon@asahilinuxicon\endcsname {\simpleiconsmapone\symbol{247}}
- \expandafter\def\csname simpleicon@asanaicon\endcsname {\simpleiconsmapone\symbol{248}}
- \expandafter\def\csname simpleicon@asciidoctoricon\endcsname {\simpleiconsmapone\symbol{249}}
- \expandafter\def\csname simpleicon@asciinemaicon\endcsname {\simpleiconsmapone\symbol{250}}
- \expandafter\def\csname simpleicon@asdaicon\endcsname {\simpleiconsmapone\symbol{251}}
- \expandafter\def\csname simpleicon@asepriteicon\endcsname {\simpleiconsmapone\symbol{252}}
- \expandafter\def\csname simpleicon@askfmicon\endcsname {\simpleiconsmapone\symbol{253}}
- \expandafter\def\csname simpleicon@assemblyscripticon\endcsname {\simpleiconsmapone\symbol{254}}
- \expandafter\def\csname simpleicon@asteriskicon\endcsname {\simpleiconsmapone\symbol{255}}
- \expandafter\def\csname simpleicon@astonmartinicon\endcsname {\simpleiconsmaptwo\symbol{0}}
- \expandafter\def\csname simpleicon@astraicon\endcsname {\simpleiconsmaptwo\symbol{1}}
- \expandafter\def\csname simpleicon@astralicon\endcsname {\simpleiconsmaptwo\symbol{2}}
- \expandafter\def\csname simpleicon@astroicon\endcsname {\simpleiconsmaptwo\symbol{3}}
- \expandafter\def\csname simpleicon@asusicon\endcsname {\simpleiconsmaptwo\symbol{4}}
- \expandafter\def\csname simpleicon@atandticon\endcsname {\simpleiconsmaptwo\symbol{5}}
- \expandafter\def\csname simpleicon@atariicon\endcsname {\simpleiconsmaptwo\symbol{6}}
- \expandafter\def\csname simpleicon@atlassianicon\endcsname {\simpleiconsmaptwo\symbol{7}}
- \expandafter\def\csname simpleicon@auchanicon\endcsname {\simpleiconsmaptwo\symbol{8}}
- \expandafter\def\csname simpleicon@audacityicon\endcsname {\simpleiconsmaptwo\symbol{9}}
- \expandafter\def\csname simpleicon@audiicon\endcsname {\simpleiconsmaptwo\symbol{10}}
- \expandafter\def\csname simpleicon@audibleicon\endcsname {\simpleiconsmaptwo\symbol{11}}
- \expandafter\def\csname simpleicon@audiobookshelficon\endcsname {\simpleiconsmaptwo\symbol{12}}
- \expandafter\def\csname simpleicon@audioboomicon\endcsname {\simpleiconsmaptwo\symbol{13}}
- \expandafter\def\csname simpleicon@audiomackicon\endcsname {\simpleiconsmaptwo\symbol{14}}
- \expandafter\def\csname simpleicon@audiotechnicaicon\endcsname {\simpleiconsmaptwo\symbol{15}}
- \expandafter\def\csname simpleicon@aureliaicon\endcsname {\simpleiconsmaptwo\symbol{16}}
- \expandafter\def\csname simpleicon@auth0icon\endcsname {\simpleiconsmaptwo\symbol{17}}
- \expandafter\def\csname simpleicon@autheliaicon\endcsname {\simpleiconsmaptwo\symbol{18}}
- \expandafter\def\csname simpleicon@authentikicon\endcsname {\simpleiconsmaptwo\symbol{19}}
- \expandafter\def\csname simpleicon@authyicon\endcsname {\simpleiconsmaptwo\symbol{20}}
- \expandafter\def\csname simpleicon@autocadicon\endcsname {\simpleiconsmaptwo\symbol{21}}
- \expandafter\def\csname simpleicon@autocannonicon\endcsname {\simpleiconsmaptwo\symbol{22}}
- \expandafter\def\csname simpleicon@autodeskicon\endcsname {\simpleiconsmaptwo\symbol{23}}
- \expandafter\def\csname simpleicon@autodeskmayaicon\endcsname {\simpleiconsmaptwo\symbol{24}}
- \expandafter\def\csname simpleicon@autodeskreviticon\endcsname {\simpleiconsmaptwo\symbol{25}}
- \expandafter\def\csname simpleicon@autohotkeyicon\endcsname {\simpleiconsmaptwo\symbol{26}}
- \expandafter\def\csname simpleicon@autoiticon\endcsname {\simpleiconsmaptwo\symbol{27}}
- \expandafter\def\csname simpleicon@automatticicon\endcsname {\simpleiconsmaptwo\symbol{28}}
- \expandafter\def\csname simpleicon@autoprefixericon\endcsname {\simpleiconsmaptwo\symbol{29}}
- \expandafter\def\csname simpleicon@autozoneicon\endcsname {\simpleiconsmaptwo\symbol{30}}
- \expandafter\def\csname simpleicon@avajsicon\endcsname {\simpleiconsmaptwo\symbol{31}}
- \expandafter\def\csname simpleicon@avasticon\endcsname {\simpleiconsmaptwo\symbol{32}}
- \expandafter\def\csname simpleicon@aviancaicon\endcsname {\simpleiconsmaptwo\symbol{33}}
- \expandafter\def\csname simpleicon@aviraicon\endcsname {\simpleiconsmaptwo\symbol{34}}
- \expandafter\def\csname simpleicon@awesomelistsicon\endcsname {\simpleiconsmaptwo\symbol{35}}
- \expandafter\def\csname simpleicon@awesomewmicon\endcsname {\simpleiconsmaptwo\symbol{36}}
- \expandafter\def\csname simpleicon@awsamplifyicon\endcsname {\simpleiconsmaptwo\symbol{37}}
- \expandafter\def\csname simpleicon@awselasticloadbalancingicon\endcsname {\simpleiconsmaptwo\symbol{38}}
- \expandafter\def\csname simpleicon@awsfargateicon\endcsname {\simpleiconsmaptwo\symbol{39}}
- \expandafter\def\csname simpleicon@awslambdaicon\endcsname {\simpleiconsmaptwo\symbol{40}}
- \expandafter\def\csname simpleicon@awsorganizationsicon\endcsname {\simpleiconsmaptwo\symbol{41}}
- \expandafter\def\csname simpleicon@awssecretsmanagericon\endcsname {\simpleiconsmaptwo\symbol{42}}
- \expandafter\def\csname simpleicon@awwwardsicon\endcsname {\simpleiconsmaptwo\symbol{43}}
- \expandafter\def\csname simpleicon@axiosicon\endcsname {\simpleiconsmaptwo\symbol{44}}
- \expandafter\def\csname simpleicon@azureartifactsicon\endcsname {\simpleiconsmaptwo\symbol{45}}
- \expandafter\def\csname simpleicon@azuredataexplorericon\endcsname {\simpleiconsmaptwo\symbol{46}}
- \expandafter\def\csname simpleicon@azuredevopsicon\endcsname {\simpleiconsmaptwo\symbol{47}}
- \expandafter\def\csname simpleicon@azurefunctionsicon\endcsname {\simpleiconsmaptwo\symbol{48}}
- \expandafter\def\csname simpleicon@azurepipelinesicon\endcsname {\simpleiconsmaptwo\symbol{49}}
- \expandafter\def\csname simpleicon@babelicon\endcsname {\simpleiconsmaptwo\symbol{50}}
- \expandafter\def\csname simpleicon@babelioicon\endcsname {\simpleiconsmaptwo\symbol{51}}
- \expandafter\def\csname simpleicon@babylondotjsicon\endcsname {\simpleiconsmaptwo\symbol{52}}
- \expandafter\def\csname simpleicon@backblazeicon\endcsname {\simpleiconsmaptwo\symbol{53}}
- \expandafter\def\csname simpleicon@backbonedotjsicon\endcsname {\simpleiconsmaptwo\symbol{54}}
- \expandafter\def\csname simpleicon@backendlessicon\endcsname {\simpleiconsmaptwo\symbol{55}}
- \expandafter\def\csname simpleicon@backstageicon\endcsname {\simpleiconsmaptwo\symbol{56}}
- \expandafter\def\csname simpleicon@badooicon\endcsname {\simpleiconsmaptwo\symbol{57}}
- \expandafter\def\csname simpleicon@baiduicon\endcsname {\simpleiconsmaptwo\symbol{58}}
- \expandafter\def\csname simpleicon@bakalariicon\endcsname {\simpleiconsmaptwo\symbol{59}}
- \expandafter\def\csname simpleicon@bambooicon\endcsname {\simpleiconsmaptwo\symbol{60}}
- \expandafter\def\csname simpleicon@bambulabicon\endcsname {\simpleiconsmaptwo\symbol{61}}
- \expandafter\def\csname simpleicon@bandcampicon\endcsname {\simpleiconsmaptwo\symbol{62}}
- \expandafter\def\csname simpleicon@bandlabicon\endcsname {\simpleiconsmaptwo\symbol{63}}
- \expandafter\def\csname simpleicon@bandrautomationicon\endcsname {\simpleiconsmaptwo\symbol{64}}
- \expandafter\def\csname simpleicon@bandsintownicon\endcsname {\simpleiconsmaptwo\symbol{65}}
- \expandafter\def\csname simpleicon@bankofamericaicon\endcsname {\simpleiconsmaptwo\symbol{66}}
- \expandafter\def\csname simpleicon@barclaysicon\endcsname {\simpleiconsmaptwo\symbol{67}}
- \expandafter\def\csname simpleicon@baremetricsicon\endcsname {\simpleiconsmaptwo\symbol{68}}
- \expandafter\def\csname simpleicon@barmeniaicon\endcsname {\simpleiconsmaptwo\symbol{69}}
- \expandafter\def\csname simpleicon@basecampicon\endcsname {\simpleiconsmaptwo\symbol{70}}
- \expandafter\def\csname simpleicon@basicattentiontokenicon\endcsname {\simpleiconsmaptwo\symbol{71}}
- \expandafter\def\csname simpleicon@bastyonicon\endcsname {\simpleiconsmaptwo\symbol{72}}
- \expandafter\def\csname simpleicon@baticon\endcsname {\simpleiconsmaptwo\symbol{73}}
- \expandafter\def\csname simpleicon@bataicon\endcsname {\simpleiconsmaptwo\symbol{74}}
- \expandafter\def\csname simpleicon@battledotneticon\endcsname {\simpleiconsmaptwo\symbol{75}}
- \expandafter\def\csname simpleicon@bazelicon\endcsname {\simpleiconsmaptwo\symbol{76}}
- \expandafter\def\csname simpleicon@beatporticon\endcsname {\simpleiconsmaptwo\symbol{77}}
- \expandafter\def\csname simpleicon@beatsicon\endcsname {\simpleiconsmaptwo\symbol{78}}
- \expandafter\def\csname simpleicon@beatsbydreicon\endcsname {\simpleiconsmaptwo\symbol{79}}
- \expandafter\def\csname simpleicon@beatstarsicon\endcsname {\simpleiconsmaptwo\symbol{80}}
- \expandafter\def\csname simpleicon@beekeeperstudioicon\endcsname {\simpleiconsmaptwo\symbol{81}}
- \expandafter\def\csname simpleicon@behanceicon\endcsname {\simpleiconsmaptwo\symbol{82}}
- \expandafter\def\csname simpleicon@beijingsubwayicon\endcsname {\simpleiconsmaptwo\symbol{83}}
- \expandafter\def\csname simpleicon@bemicon\endcsname {\simpleiconsmaptwo\symbol{84}}
- \expandafter\def\csname simpleicon@bentleyicon\endcsname {\simpleiconsmaptwo\symbol{85}}
- \expandafter\def\csname simpleicon@bentoicon\endcsname {\simpleiconsmaptwo\symbol{86}}
- \expandafter\def\csname simpleicon@bentoboxicon\endcsname {\simpleiconsmaptwo\symbol{87}}
- \expandafter\def\csname simpleicon@bentomlicon\endcsname {\simpleiconsmaptwo\symbol{88}}
- \expandafter\def\csname simpleicon@berealicon\endcsname {\simpleiconsmaptwo\symbol{89}}
- \expandafter\def\csname simpleicon@betfairicon\endcsname {\simpleiconsmaptwo\symbol{90}}
- \expandafter\def\csname simpleicon@betterstackicon\endcsname {\simpleiconsmaptwo\symbol{91}}
- \expandafter\def\csname simpleicon@bevyicon\endcsname {\simpleiconsmaptwo\symbol{92}}
- \expandafter\def\csname simpleicon@bigbasketicon\endcsname {\simpleiconsmaptwo\symbol{93}}
- \expandafter\def\csname simpleicon@bigbluebuttonicon\endcsname {\simpleiconsmaptwo\symbol{94}}
- \expandafter\def\csname simpleicon@bigcartelicon\endcsname {\simpleiconsmaptwo\symbol{95}}
- \expandafter\def\csname simpleicon@bigcommerceicon\endcsname {\simpleiconsmaptwo\symbol{96}}
- \expandafter\def\csname simpleicon@bilibiliicon\endcsname {\simpleiconsmaptwo\symbol{97}}
- \expandafter\def\csname simpleicon@billboardicon\endcsname {\simpleiconsmaptwo\symbol{98}}
- \expandafter\def\csname simpleicon@bimicon\endcsname {\simpleiconsmaptwo\symbol{99}}
- \expandafter\def\csname simpleicon@binanceicon\endcsname {\simpleiconsmaptwo\symbol{100}}
- \expandafter\def\csname simpleicon@biolinkicon\endcsname {\simpleiconsmaptwo\symbol{101}}
- \expandafter\def\csname simpleicon@biomeicon\endcsname {\simpleiconsmaptwo\symbol{102}}
- \expandafter\def\csname simpleicon@bisecthostingicon\endcsname {\simpleiconsmaptwo\symbol{103}}
- \expandafter\def\csname simpleicon@biticon\endcsname {\simpleiconsmaptwo\symbol{104}}
- \expandafter\def\csname simpleicon@bitbucketicon\endcsname {\simpleiconsmaptwo\symbol{105}}
- \expandafter\def\csname simpleicon@bitcoinicon\endcsname {\simpleiconsmaptwo\symbol{106}}
- \expandafter\def\csname simpleicon@bitcoincashicon\endcsname {\simpleiconsmaptwo\symbol{107}}
- \expandafter\def\csname simpleicon@bitcoinsvicon\endcsname {\simpleiconsmaptwo\symbol{108}}
- \expandafter\def\csname simpleicon@bitcometicon\endcsname {\simpleiconsmaptwo\symbol{109}}
- \expandafter\def\csname simpleicon@bitdefendericon\endcsname {\simpleiconsmaptwo\symbol{110}}
- \expandafter\def\csname simpleicon@bitlyicon\endcsname {\simpleiconsmaptwo\symbol{111}}
- \expandafter\def\csname simpleicon@bitriseicon\endcsname {\simpleiconsmaptwo\symbol{112}}
- \expandafter\def\csname simpleicon@bittorrenticon\endcsname {\simpleiconsmaptwo\symbol{113}}
- \expandafter\def\csname simpleicon@bitwardenicon\endcsname {\simpleiconsmaptwo\symbol{114}}
- \expandafter\def\csname simpleicon@bitwigicon\endcsname {\simpleiconsmaptwo\symbol{115}}
- \expandafter\def\csname simpleicon@blackberryicon\endcsname {\simpleiconsmaptwo\symbol{116}}
- \expandafter\def\csname simpleicon@blackmagicdesignicon\endcsname {\simpleiconsmaptwo\symbol{117}}
- \expandafter\def\csname simpleicon@blazemetericon\endcsname {\simpleiconsmaptwo\symbol{118}}
- \expandafter\def\csname simpleicon@blazoricon\endcsname {\simpleiconsmaptwo\symbol{119}}
- \expandafter\def\csname simpleicon@blendericon\endcsname {\simpleiconsmaptwo\symbol{120}}
- \expandafter\def\csname simpleicon@blockbenchicon\endcsname {\simpleiconsmaptwo\symbol{121}}
- \expandafter\def\csname simpleicon@blockchaindotcomicon\endcsname {\simpleiconsmaptwo\symbol{122}}
- \expandafter\def\csname simpleicon@bloggericon\endcsname {\simpleiconsmaptwo\symbol{123}}
- \expandafter\def\csname simpleicon@bloglovinicon\endcsname {\simpleiconsmaptwo\symbol{124}}
- \expandafter\def\csname simpleicon@blueprinticon\endcsname {\simpleiconsmaptwo\symbol{125}}
- \expandafter\def\csname simpleicon@blueskyicon\endcsname {\simpleiconsmaptwo\symbol{126}}
- \expandafter\def\csname simpleicon@bluesoundicon\endcsname {\simpleiconsmaptwo\symbol{127}}
- \expandafter\def\csname simpleicon@bluetoothicon\endcsname {\simpleiconsmaptwo\symbol{128}}
- \expandafter\def\csname simpleicon@bmcsoftwareicon\endcsname {\simpleiconsmaptwo\symbol{129}}
- \expandafter\def\csname simpleicon@bmwicon\endcsname {\simpleiconsmaptwo\symbol{130}}
- \expandafter\def\csname simpleicon@bnbchainicon\endcsname {\simpleiconsmaptwo\symbol{131}}
- \expandafter\def\csname simpleicon@boardgamegeekicon\endcsname {\simpleiconsmaptwo\symbol{132}}
- \expandafter\def\csname simpleicon@boaticon\endcsname {\simpleiconsmaptwo\symbol{133}}
- \expandafter\def\csname simpleicon@boehringeringelheimicon\endcsname {\simpleiconsmaptwo\symbol{134}}
- \expandafter\def\csname simpleicon@boeingicon\endcsname {\simpleiconsmaptwo\symbol{135}}
- \expandafter\def\csname simpleicon@bombardiericon\endcsname {\simpleiconsmaptwo\symbol{136}}
- \expandafter\def\csname simpleicon@bookalopeicon\endcsname {\simpleiconsmaptwo\symbol{137}}
- \expandafter\def\csname simpleicon@bookbubicon\endcsname {\simpleiconsmaptwo\symbol{138}}
- \expandafter\def\csname simpleicon@bookmetericon\endcsname {\simpleiconsmaptwo\symbol{139}}
- \expandafter\def\csname simpleicon@bookmyshowicon\endcsname {\simpleiconsmaptwo\symbol{140}}
- \expandafter\def\csname simpleicon@bookstackicon\endcsname {\simpleiconsmaptwo\symbol{141}}
- \expandafter\def\csname simpleicon@boosticon\endcsname {\simpleiconsmaptwo\symbol{142}}
- \expandafter\def\csname simpleicon@boostyicon\endcsname {\simpleiconsmaptwo\symbol{143}}
- \expandafter\def\csname simpleicon@bootsicon\endcsname {\simpleiconsmaptwo\symbol{144}}
- \expandafter\def\csname simpleicon@bootstrapicon\endcsname {\simpleiconsmaptwo\symbol{145}}
- \expandafter\def\csname simpleicon@borgbackupicon\endcsname {\simpleiconsmaptwo\symbol{146}}
- \expandafter\def\csname simpleicon@boschicon\endcsname {\simpleiconsmaptwo\symbol{147}}
- \expandafter\def\csname simpleicon@boseicon\endcsname {\simpleiconsmaptwo\symbol{148}}
- \expandafter\def\csname simpleicon@botblecmsicon\endcsname {\simpleiconsmaptwo\symbol{149}}
- \expandafter\def\csname simpleicon@boulangericon\endcsname {\simpleiconsmaptwo\symbol{150}}
- \expandafter\def\csname simpleicon@bowericon\endcsname {\simpleiconsmaptwo\symbol{151}}
- \expandafter\def\csname simpleicon@boxicon\endcsname {\simpleiconsmaptwo\symbol{152}}
- \expandafter\def\csname simpleicon@boxysvgicon\endcsname {\simpleiconsmaptwo\symbol{153}}
- \expandafter\def\csname simpleicon@braintreeicon\endcsname {\simpleiconsmaptwo\symbol{154}}
- \expandafter\def\csname simpleicon@brandfoldericon\endcsname {\simpleiconsmaptwo\symbol{155}}
- \expandafter\def\csname simpleicon@braveicon\endcsname {\simpleiconsmaptwo\symbol{156}}
- \expandafter\def\csname simpleicon@breakericon\endcsname {\simpleiconsmaptwo\symbol{157}}
- \expandafter\def\csname simpleicon@brenntagicon\endcsname {\simpleiconsmaptwo\symbol{158}}
- \expandafter\def\csname simpleicon@brevoicon\endcsname {\simpleiconsmaptwo\symbol{159}}
- \expandafter\def\csname simpleicon@brexicon\endcsname {\simpleiconsmaptwo\symbol{160}}
- \expandafter\def\csname simpleicon@bricksicon\endcsname {\simpleiconsmaptwo\symbol{161}}
- \expandafter\def\csname simpleicon@britishairwaysicon\endcsname {\simpleiconsmaptwo\symbol{162}}
- \expandafter\def\csname simpleicon@broadcomicon\endcsname {\simpleiconsmaptwo\symbol{163}}
- \expandafter\def\csname simpleicon@brunoicon\endcsname {\simpleiconsmaptwo\symbol{164}}
- \expandafter\def\csname simpleicon@bsdicon\endcsname {\simpleiconsmaptwo\symbol{165}}
- \expandafter\def\csname simpleicon@bspwmicon\endcsname {\simpleiconsmaptwo\symbol{166}}
- \expandafter\def\csname simpleicon@bticon\endcsname {\simpleiconsmaptwo\symbol{167}}
- \expandafter\def\csname simpleicon@buddyicon\endcsname {\simpleiconsmaptwo\symbol{168}}
- \expandafter\def\csname simpleicon@budibaseicon\endcsname {\simpleiconsmaptwo\symbol{169}}
- \expandafter\def\csname simpleicon@buefyicon\endcsname {\simpleiconsmaptwo\symbol{170}}
- \expandafter\def\csname simpleicon@buffericon\endcsname {\simpleiconsmaptwo\symbol{171}}
- \expandafter\def\csname simpleicon@bugattiicon\endcsname {\simpleiconsmaptwo\symbol{172}}
- \expandafter\def\csname simpleicon@bugcrowdicon\endcsname {\simpleiconsmaptwo\symbol{173}}
- \expandafter\def\csname simpleicon@bugsnagicon\endcsname {\simpleiconsmaptwo\symbol{174}}
- \expandafter\def\csname simpleicon@buhlicon\endcsname {\simpleiconsmaptwo\symbol{175}}
- \expandafter\def\csname simpleicon@buildkiteicon\endcsname {\simpleiconsmaptwo\symbol{176}}
+ \expandafter\def\csname simpleicon@30secondsofcodeicon\endcsname {\simpleiconsmapone\symbol{6}}
+ \expandafter\def\csname simpleicon@365datascienceicon\endcsname {\simpleiconsmapone\symbol{7}}
+ \expandafter\def\csname simpleicon@3micon\endcsname {\simpleiconsmapone\symbol{8}}
+ \expandafter\def\csname simpleicon@42icon\endcsname {\simpleiconsmapone\symbol{9}}
+ \expandafter\def\csname simpleicon@4chanicon\endcsname {\simpleiconsmapone\symbol{10}}
+ \expandafter\def\csname simpleicon@4dicon\endcsname {\simpleiconsmapone\symbol{11}}
+ \expandafter\def\csname simpleicon@500pxicon\endcsname {\simpleiconsmapone\symbol{12}}
+ \expandafter\def\csname simpleicon@7zipicon\endcsname {\simpleiconsmapone\symbol{13}}
+ \expandafter\def\csname simpleicon@99designsicon\endcsname {\simpleiconsmapone\symbol{14}}
+ \expandafter\def\csname simpleicon@9gagicon\endcsname {\simpleiconsmapone\symbol{15}}
+ \expandafter\def\csname simpleicon@abbotticon\endcsname {\simpleiconsmapone\symbol{16}}
+ \expandafter\def\csname simpleicon@abbrobotstudioicon\endcsname {\simpleiconsmapone\symbol{17}}
+ \expandafter\def\csname simpleicon@abbvieicon\endcsname {\simpleiconsmapone\symbol{18}}
+ \expandafter\def\csname simpleicon@aboutdotmeicon\endcsname {\simpleiconsmapone\symbol{19}}
+ \expandafter\def\csname simpleicon@abstracticon\endcsname {\simpleiconsmapone\symbol{20}}
+ \expandafter\def\csname simpleicon@abusedotchicon\endcsname {\simpleiconsmapone\symbol{21}}
+ \expandafter\def\csname simpleicon@academiaicon\endcsname {\simpleiconsmapone\symbol{22}}
+ \expandafter\def\csname simpleicon@accentureicon\endcsname {\simpleiconsmapone\symbol{23}}
+ \expandafter\def\csname simpleicon@accusofticon\endcsname {\simpleiconsmapone\symbol{24}}
+ \expandafter\def\csname simpleicon@acericon\endcsname {\simpleiconsmapone\symbol{25}}
+ \expandafter\def\csname simpleicon@acmicon\endcsname {\simpleiconsmapone\symbol{26}}
+ \expandafter\def\csname simpleicon@actigraphicon\endcsname {\simpleiconsmapone\symbol{27}}
+ \expandafter\def\csname simpleicon@activisionicon\endcsname {\simpleiconsmapone\symbol{28}}
+ \expandafter\def\csname simpleicon@activitypubicon\endcsname {\simpleiconsmapone\symbol{29}}
+ \expandafter\def\csname simpleicon@actixicon\endcsname {\simpleiconsmapone\symbol{30}}
+ \expandafter\def\csname simpleicon@acuraicon\endcsname {\simpleiconsmapone\symbol{31}}
+ \expandafter\def\csname simpleicon@adafruiticon\endcsname {\simpleiconsmapone\symbol{32}}
+ \expandafter\def\csname simpleicon@adblockicon\endcsname {\simpleiconsmapone\symbol{33}}
+ \expandafter\def\csname simpleicon@adblockplusicon\endcsname {\simpleiconsmapone\symbol{34}}
+ \expandafter\def\csname simpleicon@adguardicon\endcsname {\simpleiconsmapone\symbol{35}}
+ \expandafter\def\csname simpleicon@adidasicon\endcsname {\simpleiconsmapone\symbol{36}}
+ \expandafter\def\csname simpleicon@adminericon\endcsname {\simpleiconsmapone\symbol{37}}
+ \expandafter\def\csname simpleicon@adobeicon\endcsname {\simpleiconsmapone\symbol{38}}
+ \expandafter\def\csname simpleicon@adobeacrobatreadericon\endcsname {\simpleiconsmapone\symbol{39}}
+ \expandafter\def\csname simpleicon@adobeaftereffectsicon\endcsname {\simpleiconsmapone\symbol{40}}
+ \expandafter\def\csname simpleicon@adobeauditionicon\endcsname {\simpleiconsmapone\symbol{41}}
+ \expandafter\def\csname simpleicon@adobecreativecloudicon\endcsname {\simpleiconsmapone\symbol{42}}
+ \expandafter\def\csname simpleicon@adobedreamweavericon\endcsname {\simpleiconsmapone\symbol{43}}
+ \expandafter\def\csname simpleicon@adobefontsicon\endcsname {\simpleiconsmapone\symbol{44}}
+ \expandafter\def\csname simpleicon@adobeillustratoricon\endcsname {\simpleiconsmapone\symbol{45}}
+ \expandafter\def\csname simpleicon@adobeindesignicon\endcsname {\simpleiconsmapone\symbol{46}}
+ \expandafter\def\csname simpleicon@adobelightroomicon\endcsname {\simpleiconsmapone\symbol{47}}
+ \expandafter\def\csname simpleicon@adobelightroomclassicicon\endcsname {\simpleiconsmapone\symbol{48}}
+ \expandafter\def\csname simpleicon@adobephotoshopicon\endcsname {\simpleiconsmapone\symbol{49}}
+ \expandafter\def\csname simpleicon@adobepremiereproicon\endcsname {\simpleiconsmapone\symbol{50}}
+ \expandafter\def\csname simpleicon@adobexdicon\endcsname {\simpleiconsmapone\symbol{51}}
+ \expandafter\def\csname simpleicon@adonisjsicon\endcsname {\simpleiconsmapone\symbol{52}}
+ \expandafter\def\csname simpleicon@adpicon\endcsname {\simpleiconsmapone\symbol{53}}
+ \expandafter\def\csname simpleicon@adrollicon\endcsname {\simpleiconsmapone\symbol{54}}
+ \expandafter\def\csname simpleicon@adventofcodeicon\endcsname {\simpleiconsmapone\symbol{55}}
+ \expandafter\def\csname simpleicon@adyenicon\endcsname {\simpleiconsmapone\symbol{56}}
+ \expandafter\def\csname simpleicon@aegisauthenticatoricon\endcsname {\simpleiconsmapone\symbol{57}}
+ \expandafter\def\csname simpleicon@aerlingusicon\endcsname {\simpleiconsmapone\symbol{58}}
+ \expandafter\def\csname simpleicon@aerofloticon\endcsname {\simpleiconsmapone\symbol{59}}
+ \expandafter\def\csname simpleicon@aeromexicoicon\endcsname {\simpleiconsmapone\symbol{60}}
+ \expandafter\def\csname simpleicon@aerospikeicon\endcsname {\simpleiconsmapone\symbol{61}}
+ \expandafter\def\csname simpleicon@aewicon\endcsname {\simpleiconsmapone\symbol{62}}
+ \expandafter\def\csname simpleicon@affineicon\endcsname {\simpleiconsmapone\symbol{63}}
+ \expandafter\def\csname simpleicon@affinityicon\endcsname {\simpleiconsmapone\symbol{64}}
+ \expandafter\def\csname simpleicon@affinitydesignericon\endcsname {\simpleiconsmapone\symbol{65}}
+ \expandafter\def\csname simpleicon@affinityphotoicon\endcsname {\simpleiconsmapone\symbol{66}}
+ \expandafter\def\csname simpleicon@affinitypublishericon\endcsname {\simpleiconsmapone\symbol{67}}
+ \expandafter\def\csname simpleicon@aframeicon\endcsname {\simpleiconsmapone\symbol{68}}
+ \expandafter\def\csname simpleicon@afterpayicon\endcsname {\simpleiconsmapone\symbol{69}}
+ \expandafter\def\csname simpleicon@agoraicon\endcsname {\simpleiconsmapone\symbol{70}}
+ \expandafter\def\csname simpleicon@aibicon\endcsname {\simpleiconsmapone\symbol{71}}
+ \expandafter\def\csname simpleicon@aidungeonicon\endcsname {\simpleiconsmapone\symbol{72}}
+ \expandafter\def\csname simpleicon@aiohttpicon\endcsname {\simpleiconsmapone\symbol{73}}
+ \expandafter\def\csname simpleicon@aiqfomeicon\endcsname {\simpleiconsmapone\symbol{74}}
+ \expandafter\def\csname simpleicon@airasiaicon\endcsname {\simpleiconsmapone\symbol{75}}
+ \expandafter\def\csname simpleicon@airbnbicon\endcsname {\simpleiconsmapone\symbol{76}}
+ \expandafter\def\csname simpleicon@airbrakeicon\endcsname {\simpleiconsmapone\symbol{77}}
+ \expandafter\def\csname simpleicon@airbusicon\endcsname {\simpleiconsmapone\symbol{78}}
+ \expandafter\def\csname simpleicon@airbyteicon\endcsname {\simpleiconsmapone\symbol{79}}
+ \expandafter\def\csname simpleicon@aircallicon\endcsname {\simpleiconsmapone\symbol{80}}
+ \expandafter\def\csname simpleicon@aircanadaicon\endcsname {\simpleiconsmapone\symbol{81}}
+ \expandafter\def\csname simpleicon@airchinaicon\endcsname {\simpleiconsmapone\symbol{82}}
+ \expandafter\def\csname simpleicon@airfranceicon\endcsname {\simpleiconsmapone\symbol{83}}
+ \expandafter\def\csname simpleicon@airindiaicon\endcsname {\simpleiconsmapone\symbol{84}}
+ \expandafter\def\csname simpleicon@airplayaudioicon\endcsname {\simpleiconsmapone\symbol{85}}
+ \expandafter\def\csname simpleicon@airplayvideoicon\endcsname {\simpleiconsmapone\symbol{86}}
+ \expandafter\def\csname simpleicon@airtableicon\endcsname {\simpleiconsmapone\symbol{87}}
+ \expandafter\def\csname simpleicon@airtelicon\endcsname {\simpleiconsmapone\symbol{88}}
+ \expandafter\def\csname simpleicon@airtransaticon\endcsname {\simpleiconsmapone\symbol{89}}
+ \expandafter\def\csname simpleicon@ajvicon\endcsname {\simpleiconsmapone\symbol{90}}
+ \expandafter\def\csname simpleicon@akamaiicon\endcsname {\simpleiconsmapone\symbol{91}}
+ \expandafter\def\csname simpleicon@akauntingicon\endcsname {\simpleiconsmapone\symbol{92}}
+ \expandafter\def\csname simpleicon@akiflowicon\endcsname {\simpleiconsmapone\symbol{93}}
+ \expandafter\def\csname simpleicon@alacrittyicon\endcsname {\simpleiconsmapone\symbol{94}}
+ \expandafter\def\csname simpleicon@alamyicon\endcsname {\simpleiconsmapone\symbol{95}}
+ \expandafter\def\csname simpleicon@albertheijnicon\endcsname {\simpleiconsmapone\symbol{96}}
+ \expandafter\def\csname simpleicon@albyicon\endcsname {\simpleiconsmapone\symbol{97}}
+ \expandafter\def\csname simpleicon@alchemyicon\endcsname {\simpleiconsmapone\symbol{98}}
+ \expandafter\def\csname simpleicon@aldinordicon\endcsname {\simpleiconsmapone\symbol{99}}
+ \expandafter\def\csname simpleicon@aldisudicon\endcsname {\simpleiconsmapone\symbol{100}}
+ \expandafter\def\csname simpleicon@alfaromeoicon\endcsname {\simpleiconsmapone\symbol{101}}
+ \expandafter\def\csname simpleicon@alfredicon\endcsname {\simpleiconsmapone\symbol{102}}
+ \expandafter\def\csname simpleicon@algoliaicon\endcsname {\simpleiconsmapone\symbol{103}}
+ \expandafter\def\csname simpleicon@algorandicon\endcsname {\simpleiconsmapone\symbol{104}}
+ \expandafter\def\csname simpleicon@alibabacloudicon\endcsname {\simpleiconsmapone\symbol{105}}
+ \expandafter\def\csname simpleicon@alibabadotcomicon\endcsname {\simpleiconsmapone\symbol{106}}
+ \expandafter\def\csname simpleicon@alienwareicon\endcsname {\simpleiconsmapone\symbol{107}}
+ \expandafter\def\csname simpleicon@aliexpressicon\endcsname {\simpleiconsmapone\symbol{108}}
+ \expandafter\def\csname simpleicon@alipayicon\endcsname {\simpleiconsmapone\symbol{109}}
+ \expandafter\def\csname simpleicon@allegroicon\endcsname {\simpleiconsmapone\symbol{110}}
+ \expandafter\def\csname simpleicon@alliedmoddersicon\endcsname {\simpleiconsmapone\symbol{111}}
+ \expandafter\def\csname simpleicon@allocineicon\endcsname {\simpleiconsmapone\symbol{112}}
+ \expandafter\def\csname simpleicon@alltrailsicon\endcsname {\simpleiconsmapone\symbol{113}}
+ \expandafter\def\csname simpleicon@almalinuxicon\endcsname {\simpleiconsmapone\symbol{114}}
+ \expandafter\def\csname simpleicon@alpinedotjsicon\endcsname {\simpleiconsmapone\symbol{115}}
+ \expandafter\def\csname simpleicon@alpinelinuxicon\endcsname {\simpleiconsmapone\symbol{116}}
+ \expandafter\def\csname simpleicon@alteryxicon\endcsname {\simpleiconsmapone\symbol{117}}
+ \expandafter\def\csname simpleicon@altiumdesignericon\endcsname {\simpleiconsmapone\symbol{118}}
+ \expandafter\def\csname simpleicon@alwaysdataicon\endcsname {\simpleiconsmapone\symbol{119}}
+ \expandafter\def\csname simpleicon@alxicon\endcsname {\simpleiconsmapone\symbol{120}}
+ \expandafter\def\csname simpleicon@amazonicon\endcsname {\simpleiconsmapone\symbol{121}}
+ \expandafter\def\csname simpleicon@amazonalexaicon\endcsname {\simpleiconsmapone\symbol{122}}
+ \expandafter\def\csname simpleicon@amazonapigatewayicon\endcsname {\simpleiconsmapone\symbol{123}}
+ \expandafter\def\csname simpleicon@amazoncloudwatchicon\endcsname {\simpleiconsmapone\symbol{124}}
+ \expandafter\def\csname simpleicon@amazoncognitoicon\endcsname {\simpleiconsmapone\symbol{125}}
+ \expandafter\def\csname simpleicon@amazondocumentdbicon\endcsname {\simpleiconsmapone\symbol{126}}
+ \expandafter\def\csname simpleicon@amazondynamodbicon\endcsname {\simpleiconsmapone\symbol{127}}
+ \expandafter\def\csname simpleicon@amazonec2icon\endcsname {\simpleiconsmapone\symbol{128}}
+ \expandafter\def\csname simpleicon@amazonecsicon\endcsname {\simpleiconsmapone\symbol{129}}
+ \expandafter\def\csname simpleicon@amazoneksicon\endcsname {\simpleiconsmapone\symbol{130}}
+ \expandafter\def\csname simpleicon@amazonelasticacheicon\endcsname {\simpleiconsmapone\symbol{131}}
+ \expandafter\def\csname simpleicon@amazonfiretvicon\endcsname {\simpleiconsmapone\symbol{132}}
+ \expandafter\def\csname simpleicon@amazongamesicon\endcsname {\simpleiconsmapone\symbol{133}}
+ \expandafter\def\csname simpleicon@amazoniamicon\endcsname {\simpleiconsmapone\symbol{134}}
+ \expandafter\def\csname simpleicon@amazonlumberyardicon\endcsname {\simpleiconsmapone\symbol{135}}
+ \expandafter\def\csname simpleicon@amazonlunaicon\endcsname {\simpleiconsmapone\symbol{136}}
+ \expandafter\def\csname simpleicon@amazonmusicicon\endcsname {\simpleiconsmapone\symbol{137}}
+ \expandafter\def\csname simpleicon@amazonpayicon\endcsname {\simpleiconsmapone\symbol{138}}
+ \expandafter\def\csname simpleicon@amazonprimeicon\endcsname {\simpleiconsmapone\symbol{139}}
+ \expandafter\def\csname simpleicon@amazonrdsicon\endcsname {\simpleiconsmapone\symbol{140}}
+ \expandafter\def\csname simpleicon@amazonredshifticon\endcsname {\simpleiconsmapone\symbol{141}}
+ \expandafter\def\csname simpleicon@amazonroute53icon\endcsname {\simpleiconsmapone\symbol{142}}
+ \expandafter\def\csname simpleicon@amazons3icon\endcsname {\simpleiconsmapone\symbol{143}}
+ \expandafter\def\csname simpleicon@amazonsimpleemailserviceicon\endcsname {\simpleiconsmapone\symbol{144}}
+ \expandafter\def\csname simpleicon@amazonsqsicon\endcsname {\simpleiconsmapone\symbol{145}}
+ \expandafter\def\csname simpleicon@amazonwebservicesicon\endcsname {\simpleiconsmapone\symbol{146}}
+ \expandafter\def\csname simpleicon@amdicon\endcsname {\simpleiconsmapone\symbol{147}}
+ \expandafter\def\csname simpleicon@amebaicon\endcsname {\simpleiconsmapone\symbol{148}}
+ \expandafter\def\csname simpleicon@americanairlinesicon\endcsname {\simpleiconsmapone\symbol{149}}
+ \expandafter\def\csname simpleicon@americanexpressicon\endcsname {\simpleiconsmapone\symbol{150}}
+ \expandafter\def\csname simpleicon@amgicon\endcsname {\simpleiconsmapone\symbol{151}}
+ \expandafter\def\csname simpleicon@ampicon\endcsname {\simpleiconsmapone\symbol{152}}
+ \expandafter\def\csname simpleicon@amulicon\endcsname {\simpleiconsmapone\symbol{153}}
+ \expandafter\def\csname simpleicon@anaicon\endcsname {\simpleiconsmapone\symbol{154}}
+ \expandafter\def\csname simpleicon@anacondaicon\endcsname {\simpleiconsmapone\symbol{155}}
+ \expandafter\def\csname simpleicon@analogueicon\endcsname {\simpleiconsmapone\symbol{156}}
+ \expandafter\def\csname simpleicon@andelaicon\endcsname {\simpleiconsmapone\symbol{157}}
+ \expandafter\def\csname simpleicon@androidicon\endcsname {\simpleiconsmapone\symbol{158}}
+ \expandafter\def\csname simpleicon@androidautoicon\endcsname {\simpleiconsmapone\symbol{159}}
+ \expandafter\def\csname simpleicon@androidstudioicon\endcsname {\simpleiconsmapone\symbol{160}}
+ \expandafter\def\csname simpleicon@angularicon\endcsname {\simpleiconsmapone\symbol{161}}
+ \expandafter\def\csname simpleicon@anilisticon\endcsname {\simpleiconsmapone\symbol{162}}
+ \expandafter\def\csname simpleicon@animalplaneticon\endcsname {\simpleiconsmapone\symbol{163}}
+ \expandafter\def\csname simpleicon@ankermakeicon\endcsname {\simpleiconsmapone\symbol{164}}
+ \expandafter\def\csname simpleicon@ankiicon\endcsname {\simpleiconsmapone\symbol{165}}
+ \expandafter\def\csname simpleicon@ansibleicon\endcsname {\simpleiconsmapone\symbol{166}}
+ \expandafter\def\csname simpleicon@answericon\endcsname {\simpleiconsmapone\symbol{167}}
+ \expandafter\def\csname simpleicon@ansysicon\endcsname {\simpleiconsmapone\symbol{168}}
+ \expandafter\def\csname simpleicon@antaicon\endcsname {\simpleiconsmapone\symbol{169}}
+ \expandafter\def\csname simpleicon@antdesignicon\endcsname {\simpleiconsmapone\symbol{170}}
+ \expandafter\def\csname simpleicon@antena3icon\endcsname {\simpleiconsmapone\symbol{171}}
+ \expandafter\def\csname simpleicon@anthropicicon\endcsname {\simpleiconsmapone\symbol{172}}
+ \expandafter\def\csname simpleicon@anycubicicon\endcsname {\simpleiconsmapone\symbol{173}}
+ \expandafter\def\csname simpleicon@anydeskicon\endcsname {\simpleiconsmapone\symbol{174}}
+ \expandafter\def\csname simpleicon@anytypeicon\endcsname {\simpleiconsmapone\symbol{175}}
+ \expandafter\def\csname simpleicon@aolicon\endcsname {\simpleiconsmapone\symbol{176}}
+ \expandafter\def\csname simpleicon@apacheicon\endcsname {\simpleiconsmapone\symbol{177}}
+ \expandafter\def\csname simpleicon@apacheairflowicon\endcsname {\simpleiconsmapone\symbol{178}}
+ \expandafter\def\csname simpleicon@apacheanticon\endcsname {\simpleiconsmapone\symbol{179}}
+ \expandafter\def\csname simpleicon@apachecassandraicon\endcsname {\simpleiconsmapone\symbol{180}}
+ \expandafter\def\csname simpleicon@apachecloudstackicon\endcsname {\simpleiconsmapone\symbol{181}}
+ \expandafter\def\csname simpleicon@apachecordovaicon\endcsname {\simpleiconsmapone\symbol{182}}
+ \expandafter\def\csname simpleicon@apachecouchdbicon\endcsname {\simpleiconsmapone\symbol{183}}
+ \expandafter\def\csname simpleicon@apachedolphinschedulericon\endcsname {\simpleiconsmapone\symbol{184}}
+ \expandafter\def\csname simpleicon@apachedruidicon\endcsname {\simpleiconsmapone\symbol{185}}
+ \expandafter\def\csname simpleicon@apacheechartsicon\endcsname {\simpleiconsmapone\symbol{186}}
+ \expandafter\def\csname simpleicon@apacheflinkicon\endcsname {\simpleiconsmapone\symbol{187}}
+ \expandafter\def\csname simpleicon@apachefreemarkericon\endcsname {\simpleiconsmapone\symbol{188}}
+ \expandafter\def\csname simpleicon@apachegroovyicon\endcsname {\simpleiconsmapone\symbol{189}}
+ \expandafter\def\csname simpleicon@apacheguacamoleicon\endcsname {\simpleiconsmapone\symbol{190}}
+ \expandafter\def\csname simpleicon@apachehadoopicon\endcsname {\simpleiconsmapone\symbol{191}}
+ \expandafter\def\csname simpleicon@apachehbaseicon\endcsname {\simpleiconsmapone\symbol{192}}
+ \expandafter\def\csname simpleicon@apachehiveicon\endcsname {\simpleiconsmapone\symbol{193}}
+ \expandafter\def\csname simpleicon@apachejmetericon\endcsname {\simpleiconsmapone\symbol{194}}
+ \expandafter\def\csname simpleicon@apachekafkaicon\endcsname {\simpleiconsmapone\symbol{195}}
+ \expandafter\def\csname simpleicon@apachekylinicon\endcsname {\simpleiconsmapone\symbol{196}}
+ \expandafter\def\csname simpleicon@apachemavenicon\endcsname {\simpleiconsmapone\symbol{197}}
+ \expandafter\def\csname simpleicon@apachenetbeansideicon\endcsname {\simpleiconsmapone\symbol{198}}
+ \expandafter\def\csname simpleicon@apachenifiicon\endcsname {\simpleiconsmapone\symbol{199}}
+ \expandafter\def\csname simpleicon@apacheopenofficeicon\endcsname {\simpleiconsmapone\symbol{200}}
+ \expandafter\def\csname simpleicon@apacheparqueticon\endcsname {\simpleiconsmapone\symbol{201}}
+ \expandafter\def\csname simpleicon@apachepulsaricon\endcsname {\simpleiconsmapone\symbol{202}}
+ \expandafter\def\csname simpleicon@apacherocketmqicon\endcsname {\simpleiconsmapone\symbol{203}}
+ \expandafter\def\csname simpleicon@apachesolricon\endcsname {\simpleiconsmapone\symbol{204}}
+ \expandafter\def\csname simpleicon@apachesparkicon\endcsname {\simpleiconsmapone\symbol{205}}
+ \expandafter\def\csname simpleicon@apachestormicon\endcsname {\simpleiconsmapone\symbol{206}}
+ \expandafter\def\csname simpleicon@apachesuperseticon\endcsname {\simpleiconsmapone\symbol{207}}
+ \expandafter\def\csname simpleicon@apachetomcaticon\endcsname {\simpleiconsmapone\symbol{208}}
+ \expandafter\def\csname simpleicon@aparaticon\endcsname {\simpleiconsmapone\symbol{209}}
+ \expandafter\def\csname simpleicon@apifoxicon\endcsname {\simpleiconsmapone\symbol{210}}
+ \expandafter\def\csname simpleicon@apmterminalsicon\endcsname {\simpleiconsmapone\symbol{211}}
+ \expandafter\def\csname simpleicon@apollographqlicon\endcsname {\simpleiconsmapone\symbol{212}}
+ \expandafter\def\csname simpleicon@apostropheicon\endcsname {\simpleiconsmapone\symbol{213}}
+ \expandafter\def\csname simpleicon@appianicon\endcsname {\simpleiconsmapone\symbol{214}}
+ \expandafter\def\csname simpleicon@appiumicon\endcsname {\simpleiconsmapone\symbol{215}}
+ \expandafter\def\csname simpleicon@appleicon\endcsname {\simpleiconsmapone\symbol{216}}
+ \expandafter\def\csname simpleicon@applearcadeicon\endcsname {\simpleiconsmapone\symbol{217}}
+ \expandafter\def\csname simpleicon@applemusicicon\endcsname {\simpleiconsmapone\symbol{218}}
+ \expandafter\def\csname simpleicon@applenewsicon\endcsname {\simpleiconsmapone\symbol{219}}
+ \expandafter\def\csname simpleicon@applepayicon\endcsname {\simpleiconsmapone\symbol{220}}
+ \expandafter\def\csname simpleicon@applepodcastsicon\endcsname {\simpleiconsmapone\symbol{221}}
+ \expandafter\def\csname simpleicon@appletvicon\endcsname {\simpleiconsmapone\symbol{222}}
+ \expandafter\def\csname simpleicon@appsignalicon\endcsname {\simpleiconsmapone\symbol{223}}
+ \expandafter\def\csname simpleicon@appsmithicon\endcsname {\simpleiconsmapone\symbol{224}}
+ \expandafter\def\csname simpleicon@appstoreicon\endcsname {\simpleiconsmapone\symbol{225}}
+ \expandafter\def\csname simpleicon@appveyoricon\endcsname {\simpleiconsmapone\symbol{226}}
+ \expandafter\def\csname simpleicon@appwriteicon\endcsname {\simpleiconsmapone\symbol{227}}
+ \expandafter\def\csname simpleicon@aquaicon\endcsname {\simpleiconsmapone\symbol{228}}
+ \expandafter\def\csname simpleicon@aralicon\endcsname {\simpleiconsmapone\symbol{229}}
+ \expandafter\def\csname simpleicon@arangodbicon\endcsname {\simpleiconsmapone\symbol{230}}
+ \expandafter\def\csname simpleicon@arcicon\endcsname {\simpleiconsmapone\symbol{231}}
+ \expandafter\def\csname simpleicon@arcgisicon\endcsname {\simpleiconsmapone\symbol{232}}
+ \expandafter\def\csname simpleicon@archicadicon\endcsname {\simpleiconsmapone\symbol{233}}
+ \expandafter\def\csname simpleicon@archiveofourownicon\endcsname {\simpleiconsmapone\symbol{234}}
+ \expandafter\def\csname simpleicon@archlinuxicon\endcsname {\simpleiconsmapone\symbol{235}}
+ \expandafter\def\csname simpleicon@ardouricon\endcsname {\simpleiconsmapone\symbol{236}}
+ \expandafter\def\csname simpleicon@arduinoicon\endcsname {\simpleiconsmapone\symbol{237}}
+ \expandafter\def\csname simpleicon@argoicon\endcsname {\simpleiconsmapone\symbol{238}}
+ \expandafter\def\csname simpleicon@argosicon\endcsname {\simpleiconsmapone\symbol{239}}
+ \expandafter\def\csname simpleicon@ariakiticon\endcsname {\simpleiconsmapone\symbol{240}}
+ \expandafter\def\csname simpleicon@arkecosystemicon\endcsname {\simpleiconsmapone\symbol{241}}
+ \expandafter\def\csname simpleicon@arloicon\endcsname {\simpleiconsmapone\symbol{242}}
+ \expandafter\def\csname simpleicon@armicon\endcsname {\simpleiconsmapone\symbol{243}}
+ \expandafter\def\csname simpleicon@armkeilicon\endcsname {\simpleiconsmapone\symbol{244}}
+ \expandafter\def\csname simpleicon@arstechnicaicon\endcsname {\simpleiconsmapone\symbol{245}}
+ \expandafter\def\csname simpleicon@artifacthubicon\endcsname {\simpleiconsmapone\symbol{246}}
+ \expandafter\def\csname simpleicon@artixlinuxicon\endcsname {\simpleiconsmapone\symbol{247}}
+ \expandafter\def\csname simpleicon@artstationicon\endcsname {\simpleiconsmapone\symbol{248}}
+ \expandafter\def\csname simpleicon@arxivicon\endcsname {\simpleiconsmapone\symbol{249}}
+ \expandafter\def\csname simpleicon@asahilinuxicon\endcsname {\simpleiconsmapone\symbol{250}}
+ \expandafter\def\csname simpleicon@asanaicon\endcsname {\simpleiconsmapone\symbol{251}}
+ \expandafter\def\csname simpleicon@asciidoctoricon\endcsname {\simpleiconsmapone\symbol{252}}
+ \expandafter\def\csname simpleicon@asciinemaicon\endcsname {\simpleiconsmapone\symbol{253}}
+ \expandafter\def\csname simpleicon@asdaicon\endcsname {\simpleiconsmapone\symbol{254}}
+ \expandafter\def\csname simpleicon@asepriteicon\endcsname {\simpleiconsmapone\symbol{255}}
+ \expandafter\def\csname simpleicon@askfmicon\endcsname {\simpleiconsmaptwo\symbol{0}}
+ \expandafter\def\csname simpleicon@assemblyscripticon\endcsname {\simpleiconsmaptwo\symbol{1}}
+ \expandafter\def\csname simpleicon@asteriskicon\endcsname {\simpleiconsmaptwo\symbol{2}}
+ \expandafter\def\csname simpleicon@astonmartinicon\endcsname {\simpleiconsmaptwo\symbol{3}}
+ \expandafter\def\csname simpleicon@astraicon\endcsname {\simpleiconsmaptwo\symbol{4}}
+ \expandafter\def\csname simpleicon@astralicon\endcsname {\simpleiconsmaptwo\symbol{5}}
+ \expandafter\def\csname simpleicon@astroicon\endcsname {\simpleiconsmaptwo\symbol{6}}
+ \expandafter\def\csname simpleicon@asusicon\endcsname {\simpleiconsmaptwo\symbol{7}}
+ \expandafter\def\csname simpleicon@atandticon\endcsname {\simpleiconsmaptwo\symbol{8}}
+ \expandafter\def\csname simpleicon@atariicon\endcsname {\simpleiconsmaptwo\symbol{9}}
+ \expandafter\def\csname simpleicon@atlassianicon\endcsname {\simpleiconsmaptwo\symbol{10}}
+ \expandafter\def\csname simpleicon@auchanicon\endcsname {\simpleiconsmaptwo\symbol{11}}
+ \expandafter\def\csname simpleicon@audacityicon\endcsname {\simpleiconsmaptwo\symbol{12}}
+ \expandafter\def\csname simpleicon@audiicon\endcsname {\simpleiconsmaptwo\symbol{13}}
+ \expandafter\def\csname simpleicon@audibleicon\endcsname {\simpleiconsmaptwo\symbol{14}}
+ \expandafter\def\csname simpleicon@audiobookshelficon\endcsname {\simpleiconsmaptwo\symbol{15}}
+ \expandafter\def\csname simpleicon@audioboomicon\endcsname {\simpleiconsmaptwo\symbol{16}}
+ \expandafter\def\csname simpleicon@audiomackicon\endcsname {\simpleiconsmaptwo\symbol{17}}
+ \expandafter\def\csname simpleicon@audiotechnicaicon\endcsname {\simpleiconsmaptwo\symbol{18}}
+ \expandafter\def\csname simpleicon@aureliaicon\endcsname {\simpleiconsmaptwo\symbol{19}}
+ \expandafter\def\csname simpleicon@auth0icon\endcsname {\simpleiconsmaptwo\symbol{20}}
+ \expandafter\def\csname simpleicon@autheliaicon\endcsname {\simpleiconsmaptwo\symbol{21}}
+ \expandafter\def\csname simpleicon@authentikicon\endcsname {\simpleiconsmaptwo\symbol{22}}
+ \expandafter\def\csname simpleicon@authyicon\endcsname {\simpleiconsmaptwo\symbol{23}}
+ \expandafter\def\csname simpleicon@autocadicon\endcsname {\simpleiconsmaptwo\symbol{24}}
+ \expandafter\def\csname simpleicon@autocannonicon\endcsname {\simpleiconsmaptwo\symbol{25}}
+ \expandafter\def\csname simpleicon@autodeskicon\endcsname {\simpleiconsmaptwo\symbol{26}}
+ \expandafter\def\csname simpleicon@autodeskmayaicon\endcsname {\simpleiconsmaptwo\symbol{27}}
+ \expandafter\def\csname simpleicon@autodeskreviticon\endcsname {\simpleiconsmaptwo\symbol{28}}
+ \expandafter\def\csname simpleicon@autohotkeyicon\endcsname {\simpleiconsmaptwo\symbol{29}}
+ \expandafter\def\csname simpleicon@autoiticon\endcsname {\simpleiconsmaptwo\symbol{30}}
+ \expandafter\def\csname simpleicon@automatticicon\endcsname {\simpleiconsmaptwo\symbol{31}}
+ \expandafter\def\csname simpleicon@autoprefixericon\endcsname {\simpleiconsmaptwo\symbol{32}}
+ \expandafter\def\csname simpleicon@autozoneicon\endcsname {\simpleiconsmaptwo\symbol{33}}
+ \expandafter\def\csname simpleicon@avajsicon\endcsname {\simpleiconsmaptwo\symbol{34}}
+ \expandafter\def\csname simpleicon@avasticon\endcsname {\simpleiconsmaptwo\symbol{35}}
+ \expandafter\def\csname simpleicon@aviancaicon\endcsname {\simpleiconsmaptwo\symbol{36}}
+ \expandafter\def\csname simpleicon@aviraicon\endcsname {\simpleiconsmaptwo\symbol{37}}
+ \expandafter\def\csname simpleicon@awesomelistsicon\endcsname {\simpleiconsmaptwo\symbol{38}}
+ \expandafter\def\csname simpleicon@awesomewmicon\endcsname {\simpleiconsmaptwo\symbol{39}}
+ \expandafter\def\csname simpleicon@awsamplifyicon\endcsname {\simpleiconsmaptwo\symbol{40}}
+ \expandafter\def\csname simpleicon@awselasticloadbalancingicon\endcsname {\simpleiconsmaptwo\symbol{41}}
+ \expandafter\def\csname simpleicon@awsfargateicon\endcsname {\simpleiconsmaptwo\symbol{42}}
+ \expandafter\def\csname simpleicon@awslambdaicon\endcsname {\simpleiconsmaptwo\symbol{43}}
+ \expandafter\def\csname simpleicon@awsorganizationsicon\endcsname {\simpleiconsmaptwo\symbol{44}}
+ \expandafter\def\csname simpleicon@awssecretsmanagericon\endcsname {\simpleiconsmaptwo\symbol{45}}
+ \expandafter\def\csname simpleicon@awwwardsicon\endcsname {\simpleiconsmaptwo\symbol{46}}
+ \expandafter\def\csname simpleicon@axiosicon\endcsname {\simpleiconsmaptwo\symbol{47}}
+ \expandafter\def\csname simpleicon@babelicon\endcsname {\simpleiconsmaptwo\symbol{48}}
+ \expandafter\def\csname simpleicon@babelioicon\endcsname {\simpleiconsmaptwo\symbol{49}}
+ \expandafter\def\csname simpleicon@babylondotjsicon\endcsname {\simpleiconsmaptwo\symbol{50}}
+ \expandafter\def\csname simpleicon@backblazeicon\endcsname {\simpleiconsmaptwo\symbol{51}}
+ \expandafter\def\csname simpleicon@backbonedotjsicon\endcsname {\simpleiconsmaptwo\symbol{52}}
+ \expandafter\def\csname simpleicon@backendlessicon\endcsname {\simpleiconsmaptwo\symbol{53}}
+ \expandafter\def\csname simpleicon@backstageicon\endcsname {\simpleiconsmaptwo\symbol{54}}
+ \expandafter\def\csname simpleicon@badooicon\endcsname {\simpleiconsmaptwo\symbol{55}}
+ \expandafter\def\csname simpleicon@baiduicon\endcsname {\simpleiconsmaptwo\symbol{56}}
+ \expandafter\def\csname simpleicon@bakalariicon\endcsname {\simpleiconsmaptwo\symbol{57}}
+ \expandafter\def\csname simpleicon@bambooicon\endcsname {\simpleiconsmaptwo\symbol{58}}
+ \expandafter\def\csname simpleicon@bambulabicon\endcsname {\simpleiconsmaptwo\symbol{59}}
+ \expandafter\def\csname simpleicon@bandcampicon\endcsname {\simpleiconsmaptwo\symbol{60}}
+ \expandafter\def\csname simpleicon@bandlabicon\endcsname {\simpleiconsmaptwo\symbol{61}}
+ \expandafter\def\csname simpleicon@bandrautomationicon\endcsname {\simpleiconsmaptwo\symbol{62}}
+ \expandafter\def\csname simpleicon@bandsintownicon\endcsname {\simpleiconsmaptwo\symbol{63}}
+ \expandafter\def\csname simpleicon@bankofamericaicon\endcsname {\simpleiconsmaptwo\symbol{64}}
+ \expandafter\def\csname simpleicon@barclaysicon\endcsname {\simpleiconsmaptwo\symbol{65}}
+ \expandafter\def\csname simpleicon@baremetricsicon\endcsname {\simpleiconsmaptwo\symbol{66}}
+ \expandafter\def\csname simpleicon@barmeniaicon\endcsname {\simpleiconsmaptwo\symbol{67}}
+ \expandafter\def\csname simpleicon@basecampicon\endcsname {\simpleiconsmaptwo\symbol{68}}
+ \expandafter\def\csname simpleicon@baserowicon\endcsname {\simpleiconsmaptwo\symbol{69}}
+ \expandafter\def\csname simpleicon@basicattentiontokenicon\endcsname {\simpleiconsmaptwo\symbol{70}}
+ \expandafter\def\csname simpleicon@bastyonicon\endcsname {\simpleiconsmaptwo\symbol{71}}
+ \expandafter\def\csname simpleicon@baticon\endcsname {\simpleiconsmaptwo\symbol{72}}
+ \expandafter\def\csname simpleicon@bataicon\endcsname {\simpleiconsmaptwo\symbol{73}}
+ \expandafter\def\csname simpleicon@battledotneticon\endcsname {\simpleiconsmaptwo\symbol{74}}
+ \expandafter\def\csname simpleicon@bazelicon\endcsname {\simpleiconsmaptwo\symbol{75}}
+ \expandafter\def\csname simpleicon@beatporticon\endcsname {\simpleiconsmaptwo\symbol{76}}
+ \expandafter\def\csname simpleicon@beatsicon\endcsname {\simpleiconsmaptwo\symbol{77}}
+ \expandafter\def\csname simpleicon@beatsbydreicon\endcsname {\simpleiconsmaptwo\symbol{78}}
+ \expandafter\def\csname simpleicon@beatstarsicon\endcsname {\simpleiconsmaptwo\symbol{79}}
+ \expandafter\def\csname simpleicon@beekeeperstudioicon\endcsname {\simpleiconsmaptwo\symbol{80}}
+ \expandafter\def\csname simpleicon@behanceicon\endcsname {\simpleiconsmaptwo\symbol{81}}
+ \expandafter\def\csname simpleicon@beijingsubwayicon\endcsname {\simpleiconsmaptwo\symbol{82}}
+ \expandafter\def\csname simpleicon@bemicon\endcsname {\simpleiconsmaptwo\symbol{83}}
+ \expandafter\def\csname simpleicon@bentleyicon\endcsname {\simpleiconsmaptwo\symbol{84}}
+ \expandafter\def\csname simpleicon@bentoicon\endcsname {\simpleiconsmaptwo\symbol{85}}
+ \expandafter\def\csname simpleicon@bentoboxicon\endcsname {\simpleiconsmaptwo\symbol{86}}
+ \expandafter\def\csname simpleicon@bentomlicon\endcsname {\simpleiconsmaptwo\symbol{87}}
+ \expandafter\def\csname simpleicon@berealicon\endcsname {\simpleiconsmaptwo\symbol{88}}
+ \expandafter\def\csname simpleicon@betfairicon\endcsname {\simpleiconsmaptwo\symbol{89}}
+ \expandafter\def\csname simpleicon@betterstackicon\endcsname {\simpleiconsmaptwo\symbol{90}}
+ \expandafter\def\csname simpleicon@bevyicon\endcsname {\simpleiconsmaptwo\symbol{91}}
+ \expandafter\def\csname simpleicon@bigbasketicon\endcsname {\simpleiconsmaptwo\symbol{92}}
+ \expandafter\def\csname simpleicon@bigbluebuttonicon\endcsname {\simpleiconsmaptwo\symbol{93}}
+ \expandafter\def\csname simpleicon@bigcartelicon\endcsname {\simpleiconsmaptwo\symbol{94}}
+ \expandafter\def\csname simpleicon@bigcommerceicon\endcsname {\simpleiconsmaptwo\symbol{95}}
+ \expandafter\def\csname simpleicon@bilibiliicon\endcsname {\simpleiconsmaptwo\symbol{96}}
+ \expandafter\def\csname simpleicon@billboardicon\endcsname {\simpleiconsmaptwo\symbol{97}}
+ \expandafter\def\csname simpleicon@bimicon\endcsname {\simpleiconsmaptwo\symbol{98}}
+ \expandafter\def\csname simpleicon@binanceicon\endcsname {\simpleiconsmaptwo\symbol{99}}
+ \expandafter\def\csname simpleicon@biolinkicon\endcsname {\simpleiconsmaptwo\symbol{100}}
+ \expandafter\def\csname simpleicon@biomeicon\endcsname {\simpleiconsmaptwo\symbol{101}}
+ \expandafter\def\csname simpleicon@bisecthostingicon\endcsname {\simpleiconsmaptwo\symbol{102}}
+ \expandafter\def\csname simpleicon@biticon\endcsname {\simpleiconsmaptwo\symbol{103}}
+ \expandafter\def\csname simpleicon@bitbucketicon\endcsname {\simpleiconsmaptwo\symbol{104}}
+ \expandafter\def\csname simpleicon@bitcoinicon\endcsname {\simpleiconsmaptwo\symbol{105}}
+ \expandafter\def\csname simpleicon@bitcoincashicon\endcsname {\simpleiconsmaptwo\symbol{106}}
+ \expandafter\def\csname simpleicon@bitcoinsvicon\endcsname {\simpleiconsmaptwo\symbol{107}}
+ \expandafter\def\csname simpleicon@bitcometicon\endcsname {\simpleiconsmaptwo\symbol{108}}
+ \expandafter\def\csname simpleicon@bitdefendericon\endcsname {\simpleiconsmaptwo\symbol{109}}
+ \expandafter\def\csname simpleicon@bitlyicon\endcsname {\simpleiconsmaptwo\symbol{110}}
+ \expandafter\def\csname simpleicon@bitriseicon\endcsname {\simpleiconsmaptwo\symbol{111}}
+ \expandafter\def\csname simpleicon@bittorrenticon\endcsname {\simpleiconsmaptwo\symbol{112}}
+ \expandafter\def\csname simpleicon@bitwardenicon\endcsname {\simpleiconsmaptwo\symbol{113}}
+ \expandafter\def\csname simpleicon@bitwigicon\endcsname {\simpleiconsmaptwo\symbol{114}}
+ \expandafter\def\csname simpleicon@blackberryicon\endcsname {\simpleiconsmaptwo\symbol{115}}
+ \expandafter\def\csname simpleicon@blackmagicdesignicon\endcsname {\simpleiconsmaptwo\symbol{116}}
+ \expandafter\def\csname simpleicon@blazemetericon\endcsname {\simpleiconsmaptwo\symbol{117}}
+ \expandafter\def\csname simpleicon@blazoricon\endcsname {\simpleiconsmaptwo\symbol{118}}
+ \expandafter\def\csname simpleicon@blendericon\endcsname {\simpleiconsmaptwo\symbol{119}}
+ \expandafter\def\csname simpleicon@blockbenchicon\endcsname {\simpleiconsmaptwo\symbol{120}}
+ \expandafter\def\csname simpleicon@blockchaindotcomicon\endcsname {\simpleiconsmaptwo\symbol{121}}
+ \expandafter\def\csname simpleicon@bloggericon\endcsname {\simpleiconsmaptwo\symbol{122}}
+ \expandafter\def\csname simpleicon@bloglovinicon\endcsname {\simpleiconsmaptwo\symbol{123}}
+ \expandafter\def\csname simpleicon@blueprinticon\endcsname {\simpleiconsmaptwo\symbol{124}}
+ \expandafter\def\csname simpleicon@blueskyicon\endcsname {\simpleiconsmaptwo\symbol{125}}
+ \expandafter\def\csname simpleicon@bluesoundicon\endcsname {\simpleiconsmaptwo\symbol{126}}
+ \expandafter\def\csname simpleicon@bluetoothicon\endcsname {\simpleiconsmaptwo\symbol{127}}
+ \expandafter\def\csname simpleicon@bmcsoftwareicon\endcsname {\simpleiconsmaptwo\symbol{128}}
+ \expandafter\def\csname simpleicon@bmwicon\endcsname {\simpleiconsmaptwo\symbol{129}}
+ \expandafter\def\csname simpleicon@bnbchainicon\endcsname {\simpleiconsmaptwo\symbol{130}}
+ \expandafter\def\csname simpleicon@boardgamegeekicon\endcsname {\simpleiconsmaptwo\symbol{131}}
+ \expandafter\def\csname simpleicon@boaticon\endcsname {\simpleiconsmaptwo\symbol{132}}
+ \expandafter\def\csname simpleicon@boehringeringelheimicon\endcsname {\simpleiconsmaptwo\symbol{133}}
+ \expandafter\def\csname simpleicon@boeingicon\endcsname {\simpleiconsmaptwo\symbol{134}}
+ \expandafter\def\csname simpleicon@bombardiericon\endcsname {\simpleiconsmaptwo\symbol{135}}
+ \expandafter\def\csname simpleicon@bookalopeicon\endcsname {\simpleiconsmaptwo\symbol{136}}
+ \expandafter\def\csname simpleicon@bookbubicon\endcsname {\simpleiconsmaptwo\symbol{137}}
+ \expandafter\def\csname simpleicon@bookmetericon\endcsname {\simpleiconsmaptwo\symbol{138}}
+ \expandafter\def\csname simpleicon@bookmyshowicon\endcsname {\simpleiconsmaptwo\symbol{139}}
+ \expandafter\def\csname simpleicon@bookstackicon\endcsname {\simpleiconsmaptwo\symbol{140}}
+ \expandafter\def\csname simpleicon@boosticon\endcsname {\simpleiconsmaptwo\symbol{141}}
+ \expandafter\def\csname simpleicon@boostyicon\endcsname {\simpleiconsmaptwo\symbol{142}}
+ \expandafter\def\csname simpleicon@bootsicon\endcsname {\simpleiconsmaptwo\symbol{143}}
+ \expandafter\def\csname simpleicon@bootstrapicon\endcsname {\simpleiconsmaptwo\symbol{144}}
+ \expandafter\def\csname simpleicon@borgbackupicon\endcsname {\simpleiconsmaptwo\symbol{145}}
+ \expandafter\def\csname simpleicon@boschicon\endcsname {\simpleiconsmaptwo\symbol{146}}
+ \expandafter\def\csname simpleicon@boseicon\endcsname {\simpleiconsmaptwo\symbol{147}}
+ \expandafter\def\csname simpleicon@botblecmsicon\endcsname {\simpleiconsmaptwo\symbol{148}}
+ \expandafter\def\csname simpleicon@boulangericon\endcsname {\simpleiconsmaptwo\symbol{149}}
+ \expandafter\def\csname simpleicon@bowericon\endcsname {\simpleiconsmaptwo\symbol{150}}
+ \expandafter\def\csname simpleicon@boxicon\endcsname {\simpleiconsmaptwo\symbol{151}}
+ \expandafter\def\csname simpleicon@boxysvgicon\endcsname {\simpleiconsmaptwo\symbol{152}}
+ \expandafter\def\csname simpleicon@braintreeicon\endcsname {\simpleiconsmaptwo\symbol{153}}
+ \expandafter\def\csname simpleicon@brandfoldericon\endcsname {\simpleiconsmaptwo\symbol{154}}
+ \expandafter\def\csname simpleicon@braveicon\endcsname {\simpleiconsmaptwo\symbol{155}}
+ \expandafter\def\csname simpleicon@breakericon\endcsname {\simpleiconsmaptwo\symbol{156}}
+ \expandafter\def\csname simpleicon@brenntagicon\endcsname {\simpleiconsmaptwo\symbol{157}}
+ \expandafter\def\csname simpleicon@brevoicon\endcsname {\simpleiconsmaptwo\symbol{158}}
+ \expandafter\def\csname simpleicon@brexicon\endcsname {\simpleiconsmaptwo\symbol{159}}
+ \expandafter\def\csname simpleicon@bricksicon\endcsname {\simpleiconsmaptwo\symbol{160}}
+ \expandafter\def\csname simpleicon@britishairwaysicon\endcsname {\simpleiconsmaptwo\symbol{161}}
+ \expandafter\def\csname simpleicon@broadcomicon\endcsname {\simpleiconsmaptwo\symbol{162}}
+ \expandafter\def\csname simpleicon@brunoicon\endcsname {\simpleiconsmaptwo\symbol{163}}
+ \expandafter\def\csname simpleicon@bsdicon\endcsname {\simpleiconsmaptwo\symbol{164}}
+ \expandafter\def\csname simpleicon@bspwmicon\endcsname {\simpleiconsmaptwo\symbol{165}}
+ \expandafter\def\csname simpleicon@bticon\endcsname {\simpleiconsmaptwo\symbol{166}}
+ \expandafter\def\csname simpleicon@buddyicon\endcsname {\simpleiconsmaptwo\symbol{167}}
+ \expandafter\def\csname simpleicon@budibaseicon\endcsname {\simpleiconsmaptwo\symbol{168}}
+ \expandafter\def\csname simpleicon@buefyicon\endcsname {\simpleiconsmaptwo\symbol{169}}
+ \expandafter\def\csname simpleicon@buffericon\endcsname {\simpleiconsmaptwo\symbol{170}}
+ \expandafter\def\csname simpleicon@bugattiicon\endcsname {\simpleiconsmaptwo\symbol{171}}
+ \expandafter\def\csname simpleicon@bugcrowdicon\endcsname {\simpleiconsmaptwo\symbol{172}}
+ \expandafter\def\csname simpleicon@bugsnagicon\endcsname {\simpleiconsmaptwo\symbol{173}}
+ \expandafter\def\csname simpleicon@buhlicon\endcsname {\simpleiconsmaptwo\symbol{174}}
+ \expandafter\def\csname simpleicon@buildkiteicon\endcsname {\simpleiconsmaptwo\symbol{175}}
+ \expandafter\def\csname simpleicon@builtbybiticon\endcsname {\simpleiconsmaptwo\symbol{176}}
\expandafter\def\csname simpleicon@bukalapakicon\endcsname {\simpleiconsmaptwo\symbol{177}}
\expandafter\def\csname simpleicon@bulmaicon\endcsname {\simpleiconsmaptwo\symbol{178}}
\expandafter\def\csname simpleicon@bunicon\endcsname {\simpleiconsmaptwo\symbol{179}}
@@ -464,700 +464,700 @@
\expandafter\def\csname simpleicon@canvaicon\endcsname {\simpleiconsmaptwo\symbol{206}}
\expandafter\def\csname simpleicon@canvasicon\endcsname {\simpleiconsmaptwo\symbol{207}}
\expandafter\def\csname simpleicon@capacitoricon\endcsname {\simpleiconsmaptwo\symbol{208}}
- \expandafter\def\csname simpleicon@cardanoicon\endcsname {\simpleiconsmaptwo\symbol{209}}
- \expandafter\def\csname simpleicon@carlsberggroupicon\endcsname {\simpleiconsmaptwo\symbol{210}}
- \expandafter\def\csname simpleicon@carrdicon\endcsname {\simpleiconsmaptwo\symbol{211}}
- \expandafter\def\csname simpleicon@carrefouricon\endcsname {\simpleiconsmaptwo\symbol{212}}
- \expandafter\def\csname simpleicon@carthrottleicon\endcsname {\simpleiconsmaptwo\symbol{213}}
- \expandafter\def\csname simpleicon@cartoicon\endcsname {\simpleiconsmaptwo\symbol{214}}
- \expandafter\def\csname simpleicon@cashappicon\endcsname {\simpleiconsmaptwo\symbol{215}}
- \expandafter\def\csname simpleicon@castboxicon\endcsname {\simpleiconsmaptwo\symbol{216}}
- \expandafter\def\csname simpleicon@castoramaicon\endcsname {\simpleiconsmaptwo\symbol{217}}
- \expandafter\def\csname simpleicon@castroicon\endcsname {\simpleiconsmaptwo\symbol{218}}
- \expandafter\def\csname simpleicon@caterpillaricon\endcsname {\simpleiconsmaptwo\symbol{219}}
- \expandafter\def\csname simpleicon@cbcicon\endcsname {\simpleiconsmaptwo\symbol{220}}
- \expandafter\def\csname simpleicon@cbsicon\endcsname {\simpleiconsmaptwo\symbol{221}}
- \expandafter\def\csname simpleicon@ccleanericon\endcsname {\simpleiconsmaptwo\symbol{222}}
- \expandafter\def\csname simpleicon@cdprojekticon\endcsname {\simpleiconsmaptwo\symbol{223}}
- \expandafter\def\csname simpleicon@celeryicon\endcsname {\simpleiconsmaptwo\symbol{224}}
- \expandafter\def\csname simpleicon@celestronicon\endcsname {\simpleiconsmaptwo\symbol{225}}
- \expandafter\def\csname simpleicon@centosicon\endcsname {\simpleiconsmaptwo\symbol{226}}
- \expandafter\def\csname simpleicon@cephicon\endcsname {\simpleiconsmaptwo\symbol{227}}
- \expandafter\def\csname simpleicon@cesiumicon\endcsname {\simpleiconsmaptwo\symbol{228}}
- \expandafter\def\csname simpleicon@chaiicon\endcsname {\simpleiconsmaptwo\symbol{229}}
- \expandafter\def\csname simpleicon@chainguardicon\endcsname {\simpleiconsmaptwo\symbol{230}}
- \expandafter\def\csname simpleicon@chainlinkicon\endcsname {\simpleiconsmaptwo\symbol{231}}
- \expandafter\def\csname simpleicon@chakrauiicon\endcsname {\simpleiconsmaptwo\symbol{232}}
- \expandafter\def\csname simpleicon@channel4icon\endcsname {\simpleiconsmaptwo\symbol{233}}
- \expandafter\def\csname simpleicon@charlesicon\endcsname {\simpleiconsmaptwo\symbol{234}}
- \expandafter\def\csname simpleicon@chartdotjsicon\endcsname {\simpleiconsmaptwo\symbol{235}}
- \expandafter\def\csname simpleicon@chartmogulicon\endcsname {\simpleiconsmaptwo\symbol{236}}
- \expandafter\def\csname simpleicon@chaseicon\endcsname {\simpleiconsmaptwo\symbol{237}}
- \expandafter\def\csname simpleicon@chatboticon\endcsname {\simpleiconsmaptwo\symbol{238}}
- \expandafter\def\csname simpleicon@chatwooticon\endcsname {\simpleiconsmaptwo\symbol{239}}
- \expandafter\def\csname simpleicon@checkioicon\endcsname {\simpleiconsmaptwo\symbol{240}}
- \expandafter\def\csname simpleicon@checkmarxicon\endcsname {\simpleiconsmaptwo\symbol{241}}
- \expandafter\def\csname simpleicon@checkmkicon\endcsname {\simpleiconsmaptwo\symbol{242}}
- \expandafter\def\csname simpleicon@chedrauiicon\endcsname {\simpleiconsmaptwo\symbol{243}}
- \expandafter\def\csname simpleicon@cheerioicon\endcsname {\simpleiconsmaptwo\symbol{244}}
- \expandafter\def\csname simpleicon@cheficon\endcsname {\simpleiconsmaptwo\symbol{245}}
- \expandafter\def\csname simpleicon@chemexicon\endcsname {\simpleiconsmaptwo\symbol{246}}
- \expandafter\def\csname simpleicon@chessdotcomicon\endcsname {\simpleiconsmaptwo\symbol{247}}
- \expandafter\def\csname simpleicon@chevroleticon\endcsname {\simpleiconsmaptwo\symbol{248}}
- \expandafter\def\csname simpleicon@chianetworkicon\endcsname {\simpleiconsmaptwo\symbol{249}}
- \expandafter\def\csname simpleicon@chinaeasternairlinesicon\endcsname {\simpleiconsmaptwo\symbol{250}}
- \expandafter\def\csname simpleicon@chinasouthernairlinesicon\endcsname {\simpleiconsmaptwo\symbol{251}}
- \expandafter\def\csname simpleicon@chocolateyicon\endcsname {\simpleiconsmaptwo\symbol{252}}
- \expandafter\def\csname simpleicon@chromaticicon\endcsname {\simpleiconsmaptwo\symbol{253}}
- \expandafter\def\csname simpleicon@chromecasticon\endcsname {\simpleiconsmaptwo\symbol{254}}
- \expandafter\def\csname simpleicon@chryslericon\endcsname {\simpleiconsmaptwo\symbol{255}}
- \expandafter\def\csname simpleicon@chupachupsicon\endcsname {\simpleiconsmapthree\symbol{0}}
- \expandafter\def\csname simpleicon@ciliumicon\endcsname {\simpleiconsmapthree\symbol{1}}
- \expandafter\def\csname simpleicon@cinema4dicon\endcsname {\simpleiconsmapthree\symbol{2}}
- \expandafter\def\csname simpleicon@circleicon\endcsname {\simpleiconsmapthree\symbol{3}}
- \expandafter\def\csname simpleicon@circleciicon\endcsname {\simpleiconsmapthree\symbol{4}}
- \expandafter\def\csname simpleicon@circuitverseicon\endcsname {\simpleiconsmapthree\symbol{5}}
- \expandafter\def\csname simpleicon@cirrusciicon\endcsname {\simpleiconsmapthree\symbol{6}}
- \expandafter\def\csname simpleicon@ciscoicon\endcsname {\simpleiconsmapthree\symbol{7}}
- \expandafter\def\csname simpleicon@citrixicon\endcsname {\simpleiconsmapthree\symbol{8}}
- \expandafter\def\csname simpleicon@citroenicon\endcsname {\simpleiconsmapthree\symbol{9}}
- \expandafter\def\csname simpleicon@civicrmicon\endcsname {\simpleiconsmapthree\symbol{10}}
- \expandafter\def\csname simpleicon@civoicon\endcsname {\simpleiconsmapthree\symbol{11}}
- \expandafter\def\csname simpleicon@ckeditor4icon\endcsname {\simpleiconsmapthree\symbol{12}}
- \expandafter\def\csname simpleicon@clarifaiicon\endcsname {\simpleiconsmapthree\symbol{13}}
- \expandafter\def\csname simpleicon@clarisicon\endcsname {\simpleiconsmapthree\symbol{14}}
- \expandafter\def\csname simpleicon@clarivateicon\endcsname {\simpleiconsmapthree\symbol{15}}
- \expandafter\def\csname simpleicon@clerkicon\endcsname {\simpleiconsmapthree\symbol{16}}
- \expandafter\def\csname simpleicon@clevercloudicon\endcsname {\simpleiconsmapthree\symbol{17}}
- \expandafter\def\csname simpleicon@clickhouseicon\endcsname {\simpleiconsmapthree\symbol{18}}
- \expandafter\def\csname simpleicon@clickupicon\endcsname {\simpleiconsmapthree\symbol{19}}
- \expandafter\def\csname simpleicon@clionicon\endcsname {\simpleiconsmapthree\symbol{20}}
- \expandafter\def\csname simpleicon@cliqzicon\endcsname {\simpleiconsmapthree\symbol{21}}
- \expandafter\def\csname simpleicon@clockifyicon\endcsname {\simpleiconsmapthree\symbol{22}}
- \expandafter\def\csname simpleicon@clojureicon\endcsname {\simpleiconsmapthree\symbol{23}}
- \expandafter\def\csname simpleicon@cloud66icon\endcsname {\simpleiconsmapthree\symbol{24}}
- \expandafter\def\csname simpleicon@cloudbeesicon\endcsname {\simpleiconsmapthree\symbol{25}}
- \expandafter\def\csname simpleicon@cloudcannonicon\endcsname {\simpleiconsmapthree\symbol{26}}
- \expandafter\def\csname simpleicon@clouderaicon\endcsname {\simpleiconsmapthree\symbol{27}}
- \expandafter\def\csname simpleicon@cloudflareicon\endcsname {\simpleiconsmapthree\symbol{28}}
- \expandafter\def\csname simpleicon@cloudflarepagesicon\endcsname {\simpleiconsmapthree\symbol{29}}
- \expandafter\def\csname simpleicon@cloudflareworkersicon\endcsname {\simpleiconsmapthree\symbol{30}}
- \expandafter\def\csname simpleicon@cloudfoundryicon\endcsname {\simpleiconsmapthree\symbol{31}}
- \expandafter\def\csname simpleicon@cloudinaryicon\endcsname {\simpleiconsmapthree\symbol{32}}
- \expandafter\def\csname simpleicon@cloudronicon\endcsname {\simpleiconsmapthree\symbol{33}}
- \expandafter\def\csname simpleicon@cloudsmithicon\endcsname {\simpleiconsmapthree\symbol{34}}
- \expandafter\def\csname simpleicon@cloudwaysicon\endcsname {\simpleiconsmapthree\symbol{35}}
- \expandafter\def\csname simpleicon@clubforceicon\endcsname {\simpleiconsmapthree\symbol{36}}
- \expandafter\def\csname simpleicon@clubhouseicon\endcsname {\simpleiconsmapthree\symbol{37}}
- \expandafter\def\csname simpleicon@clypicon\endcsname {\simpleiconsmapthree\symbol{38}}
- \expandafter\def\csname simpleicon@cmakeicon\endcsname {\simpleiconsmapthree\symbol{39}}
- \expandafter\def\csname simpleicon@cncficon\endcsname {\simpleiconsmapthree\symbol{40}}
- \expandafter\def\csname simpleicon@cneticon\endcsname {\simpleiconsmapthree\symbol{41}}
- \expandafter\def\csname simpleicon@cnnicon\endcsname {\simpleiconsmapthree\symbol{42}}
- \expandafter\def\csname simpleicon@cocacolaicon\endcsname {\simpleiconsmapthree\symbol{43}}
- \expandafter\def\csname simpleicon@cockpiticon\endcsname {\simpleiconsmapthree\symbol{44}}
- \expandafter\def\csname simpleicon@cockroachlabsicon\endcsname {\simpleiconsmapthree\symbol{45}}
- \expandafter\def\csname simpleicon@cocoapodsicon\endcsname {\simpleiconsmapthree\symbol{46}}
- \expandafter\def\csname simpleicon@cocosicon\endcsname {\simpleiconsmapthree\symbol{47}}
- \expandafter\def\csname simpleicon@codaicon\endcsname {\simpleiconsmapthree\symbol{48}}
- \expandafter\def\csname simpleicon@codacyicon\endcsname {\simpleiconsmapthree\symbol{49}}
- \expandafter\def\csname simpleicon@codebergicon\endcsname {\simpleiconsmapthree\symbol{50}}
- \expandafter\def\csname simpleicon@codeblocksicon\endcsname {\simpleiconsmapthree\symbol{51}}
- \expandafter\def\csname simpleicon@codecademyicon\endcsname {\simpleiconsmapthree\symbol{52}}
- \expandafter\def\csname simpleicon@codeceptjsicon\endcsname {\simpleiconsmapthree\symbol{53}}
- \expandafter\def\csname simpleicon@codecheficon\endcsname {\simpleiconsmapthree\symbol{54}}
- \expandafter\def\csname simpleicon@codeclimateicon\endcsname {\simpleiconsmapthree\symbol{55}}
- \expandafter\def\csname simpleicon@codecovicon\endcsname {\simpleiconsmapthree\symbol{56}}
- \expandafter\def\csname simpleicon@codefactoricon\endcsname {\simpleiconsmapthree\symbol{57}}
- \expandafter\def\csname simpleicon@codeforcesicon\endcsname {\simpleiconsmapthree\symbol{58}}
- \expandafter\def\csname simpleicon@codefreshicon\endcsname {\simpleiconsmapthree\symbol{59}}
- \expandafter\def\csname simpleicon@codeignitericon\endcsname {\simpleiconsmapthree\symbol{60}}
- \expandafter\def\csname simpleicon@codeiumicon\endcsname {\simpleiconsmapthree\symbol{61}}
- \expandafter\def\csname simpleicon@codemagicicon\endcsname {\simpleiconsmapthree\symbol{62}}
- \expandafter\def\csname simpleicon@codementoricon\endcsname {\simpleiconsmapthree\symbol{63}}
- \expandafter\def\csname simpleicon@codemirroricon\endcsname {\simpleiconsmapthree\symbol{64}}
- \expandafter\def\csname simpleicon@codenewbieicon\endcsname {\simpleiconsmapthree\symbol{65}}
- \expandafter\def\csname simpleicon@codepenicon\endcsname {\simpleiconsmapthree\symbol{66}}
- \expandafter\def\csname simpleicon@codeprojecticon\endcsname {\simpleiconsmapthree\symbol{67}}
- \expandafter\def\csname simpleicon@codericon\endcsname {\simpleiconsmapthree\symbol{68}}
- \expandafter\def\csname simpleicon@codersrankicon\endcsname {\simpleiconsmapthree\symbol{69}}
- \expandafter\def\csname simpleicon@coderwallicon\endcsname {\simpleiconsmapthree\symbol{70}}
- \expandafter\def\csname simpleicon@codesandboxicon\endcsname {\simpleiconsmapthree\symbol{71}}
- \expandafter\def\csname simpleicon@codeshipicon\endcsname {\simpleiconsmapthree\symbol{72}}
- \expandafter\def\csname simpleicon@codesignalicon\endcsname {\simpleiconsmapthree\symbol{73}}
- \expandafter\def\csname simpleicon@codestreamicon\endcsname {\simpleiconsmapthree\symbol{74}}
- \expandafter\def\csname simpleicon@codewarsicon\endcsname {\simpleiconsmapthree\symbol{75}}
- \expandafter\def\csname simpleicon@codingameicon\endcsname {\simpleiconsmapthree\symbol{76}}
- \expandafter\def\csname simpleicon@codingninjasicon\endcsname {\simpleiconsmapthree\symbol{77}}
- \expandafter\def\csname simpleicon@codioicon\endcsname {\simpleiconsmapthree\symbol{78}}
- \expandafter\def\csname simpleicon@coffeescripticon\endcsname {\simpleiconsmapthree\symbol{79}}
- \expandafter\def\csname simpleicon@coggleicon\endcsname {\simpleiconsmapthree\symbol{80}}
- \expandafter\def\csname simpleicon@cognizanticon\endcsname {\simpleiconsmapthree\symbol{81}}
- \expandafter\def\csname simpleicon@coilicon\endcsname {\simpleiconsmapthree\symbol{82}}
- \expandafter\def\csname simpleicon@coinbaseicon\endcsname {\simpleiconsmapthree\symbol{83}}
- \expandafter\def\csname simpleicon@coinmarketcapicon\endcsname {\simpleiconsmapthree\symbol{84}}
- \expandafter\def\csname simpleicon@comicfuryicon\endcsname {\simpleiconsmapthree\symbol{85}}
- \expandafter\def\csname simpleicon@commaicon\endcsname {\simpleiconsmapthree\symbol{86}}
- \expandafter\def\csname simpleicon@commerzbankicon\endcsname {\simpleiconsmapthree\symbol{87}}
- \expandafter\def\csname simpleicon@commitlinticon\endcsname {\simpleiconsmapthree\symbol{88}}
- \expandafter\def\csname simpleicon@commodoreicon\endcsname {\simpleiconsmapthree\symbol{89}}
- \expandafter\def\csname simpleicon@commonworkflowlanguageicon\endcsname {\simpleiconsmapthree\symbol{90}}
- \expandafter\def\csname simpleicon@compilerexplorericon\endcsname {\simpleiconsmapthree\symbol{91}}
- \expandafter\def\csname simpleicon@composericon\endcsname {\simpleiconsmapthree\symbol{92}}
- \expandafter\def\csname simpleicon@comptiaicon\endcsname {\simpleiconsmapthree\symbol{93}}
- \expandafter\def\csname simpleicon@comsolicon\endcsname {\simpleiconsmapthree\symbol{94}}
- \expandafter\def\csname simpleicon@conanicon\endcsname {\simpleiconsmapthree\symbol{95}}
- \expandafter\def\csname simpleicon@concourseicon\endcsname {\simpleiconsmapthree\symbol{96}}
- \expandafter\def\csname simpleicon@condaforgeicon\endcsname {\simpleiconsmapthree\symbol{97}}
- \expandafter\def\csname simpleicon@conektaicon\endcsname {\simpleiconsmapthree\symbol{98}}
- \expandafter\def\csname simpleicon@confluenceicon\endcsname {\simpleiconsmapthree\symbol{99}}
- \expandafter\def\csname simpleicon@construct3icon\endcsname {\simpleiconsmapthree\symbol{100}}
- \expandafter\def\csname simpleicon@consulicon\endcsname {\simpleiconsmapthree\symbol{101}}
- \expandafter\def\csname simpleicon@contactlesspaymenticon\endcsname {\simpleiconsmapthree\symbol{102}}
- \expandafter\def\csname simpleicon@containerdicon\endcsname {\simpleiconsmapthree\symbol{103}}
- \expandafter\def\csname simpleicon@contaoicon\endcsname {\simpleiconsmapthree\symbol{104}}
- \expandafter\def\csname simpleicon@contentfulicon\endcsname {\simpleiconsmapthree\symbol{105}}
- \expandafter\def\csname simpleicon@contentstackicon\endcsname {\simpleiconsmapthree\symbol{106}}
- \expandafter\def\csname simpleicon@contributorcovenanticon\endcsname {\simpleiconsmapthree\symbol{107}}
- \expandafter\def\csname simpleicon@conventionalcommitsicon\endcsname {\simpleiconsmapthree\symbol{108}}
- \expandafter\def\csname simpleicon@convertioicon\endcsname {\simpleiconsmapthree\symbol{109}}
- \expandafter\def\csname simpleicon@cookiecuttericon\endcsname {\simpleiconsmapthree\symbol{110}}
- \expandafter\def\csname simpleicon@coolermastericon\endcsname {\simpleiconsmapthree\symbol{111}}
- \expandafter\def\csname simpleicon@coopicon\endcsname {\simpleiconsmapthree\symbol{112}}
- \expandafter\def\csname simpleicon@copaairlinesicon\endcsname {\simpleiconsmapthree\symbol{113}}
- \expandafter\def\csname simpleicon@coppelicon\endcsname {\simpleiconsmapthree\symbol{114}}
- \expandafter\def\csname simpleicon@coraicon\endcsname {\simpleiconsmapthree\symbol{115}}
- \expandafter\def\csname simpleicon@coreldrawicon\endcsname {\simpleiconsmapthree\symbol{116}}
- \expandafter\def\csname simpleicon@coronaengineicon\endcsname {\simpleiconsmapthree\symbol{117}}
- \expandafter\def\csname simpleicon@coronarenderericon\endcsname {\simpleiconsmapthree\symbol{118}}
- \expandafter\def\csname simpleicon@corsairicon\endcsname {\simpleiconsmapthree\symbol{119}}
- \expandafter\def\csname simpleicon@couchbaseicon\endcsname {\simpleiconsmapthree\symbol{120}}
- \expandafter\def\csname simpleicon@counterstrikeicon\endcsname {\simpleiconsmapthree\symbol{121}}
- \expandafter\def\csname simpleicon@countingworksproicon\endcsname {\simpleiconsmapthree\symbol{122}}
- \expandafter\def\csname simpleicon@courseraicon\endcsname {\simpleiconsmapthree\symbol{123}}
- \expandafter\def\csname simpleicon@coverallsicon\endcsname {\simpleiconsmapthree\symbol{124}}
- \expandafter\def\csname simpleicon@cpanelicon\endcsname {\simpleiconsmapthree\symbol{125}}
- \expandafter\def\csname simpleicon@cplusplusicon\endcsname {\simpleiconsmapthree\symbol{126}}
- \expandafter\def\csname simpleicon@cplusplusbuildericon\endcsname {\simpleiconsmapthree\symbol{127}}
- \expandafter\def\csname simpleicon@craftcmsicon\endcsname {\simpleiconsmapthree\symbol{128}}
- \expandafter\def\csname simpleicon@craftsmanicon\endcsname {\simpleiconsmapthree\symbol{129}}
- \expandafter\def\csname simpleicon@cratedbicon\endcsname {\simpleiconsmapthree\symbol{130}}
- \expandafter\def\csname simpleicon@crayonicon\endcsname {\simpleiconsmapthree\symbol{131}}
- \expandafter\def\csname simpleicon@crealityicon\endcsname {\simpleiconsmapthree\symbol{132}}
- \expandafter\def\csname simpleicon@createreactappicon\endcsname {\simpleiconsmapthree\symbol{133}}
- \expandafter\def\csname simpleicon@creativecommonsicon\endcsname {\simpleiconsmapthree\symbol{134}}
- \expandafter\def\csname simpleicon@creativetechnologyicon\endcsname {\simpleiconsmapthree\symbol{135}}
- \expandafter\def\csname simpleicon@credlyicon\endcsname {\simpleiconsmapthree\symbol{136}}
- \expandafter\def\csname simpleicon@crehanaicon\endcsname {\simpleiconsmapthree\symbol{137}}
- \expandafter\def\csname simpleicon@crewunitedicon\endcsname {\simpleiconsmapthree\symbol{138}}
- \expandafter\def\csname simpleicon@criticalroleicon\endcsname {\simpleiconsmapthree\symbol{139}}
- \expandafter\def\csname simpleicon@crowdinicon\endcsname {\simpleiconsmapthree\symbol{140}}
- \expandafter\def\csname simpleicon@crowdsourceicon\endcsname {\simpleiconsmapthree\symbol{141}}
- \expandafter\def\csname simpleicon@crunchbaseicon\endcsname {\simpleiconsmapthree\symbol{142}}
- \expandafter\def\csname simpleicon@crunchyrollicon\endcsname {\simpleiconsmapthree\symbol{143}}
- \expandafter\def\csname simpleicon@cryengineicon\endcsname {\simpleiconsmapthree\symbol{144}}
- \expandafter\def\csname simpleicon@cryptpadicon\endcsname {\simpleiconsmapthree\symbol{145}}
- \expandafter\def\csname simpleicon@crystalicon\endcsname {\simpleiconsmapthree\symbol{146}}
- \expandafter\def\csname simpleicon@csharpicon\endcsname {\simpleiconsmapthree\symbol{147}}
- \expandafter\def\csname simpleicon@css3icon\endcsname {\simpleiconsmapthree\symbol{148}}
- \expandafter\def\csname simpleicon@cssdesignawardsicon\endcsname {\simpleiconsmapthree\symbol{149}}
- \expandafter\def\csname simpleicon@cssmodulesicon\endcsname {\simpleiconsmapthree\symbol{150}}
- \expandafter\def\csname simpleicon@csswizardryicon\endcsname {\simpleiconsmapthree\symbol{151}}
- \expandafter\def\csname simpleicon@ctsicon\endcsname {\simpleiconsmapthree\symbol{152}}
- \expandafter\def\csname simpleicon@cucumbericon\endcsname {\simpleiconsmapthree\symbol{153}}
- \expandafter\def\csname simpleicon@culturaicon\endcsname {\simpleiconsmapthree\symbol{154}}
- \expandafter\def\csname simpleicon@curlicon\endcsname {\simpleiconsmapthree\symbol{155}}
- \expandafter\def\csname simpleicon@curseforgeicon\endcsname {\simpleiconsmapthree\symbol{156}}
- \expandafter\def\csname simpleicon@custominkicon\endcsname {\simpleiconsmapthree\symbol{157}}
- \expandafter\def\csname simpleicon@cyberdefendersicon\endcsname {\simpleiconsmapthree\symbol{158}}
- \expandafter\def\csname simpleicon@cycling74icon\endcsname {\simpleiconsmapthree\symbol{159}}
- \expandafter\def\csname simpleicon@cypressicon\endcsname {\simpleiconsmapthree\symbol{160}}
- \expandafter\def\csname simpleicon@cytoscapedotjsicon\endcsname {\simpleiconsmapthree\symbol{161}}
- \expandafter\def\csname simpleicon@dicon\endcsname {\simpleiconsmapthree\symbol{162}}
- \expandafter\def\csname simpleicon@d3dotjsicon\endcsname {\simpleiconsmapthree\symbol{163}}
- \expandafter\def\csname simpleicon@daciaicon\endcsname {\simpleiconsmapthree\symbol{164}}
- \expandafter\def\csname simpleicon@daficon\endcsname {\simpleiconsmapthree\symbol{165}}
- \expandafter\def\csname simpleicon@dailydotdevicon\endcsname {\simpleiconsmapthree\symbol{166}}
- \expandafter\def\csname simpleicon@dailymotionicon\endcsname {\simpleiconsmapthree\symbol{167}}
- \expandafter\def\csname simpleicon@daimlericon\endcsname {\simpleiconsmapthree\symbol{168}}
- \expandafter\def\csname simpleicon@daisyuiicon\endcsname {\simpleiconsmapthree\symbol{169}}
- \expandafter\def\csname simpleicon@dapricon\endcsname {\simpleiconsmapthree\symbol{170}}
- \expandafter\def\csname simpleicon@darkreadericon\endcsname {\simpleiconsmapthree\symbol{171}}
- \expandafter\def\csname simpleicon@darticon\endcsname {\simpleiconsmapthree\symbol{172}}
- \expandafter\def\csname simpleicon@dartyicon\endcsname {\simpleiconsmapthree\symbol{173}}
- \expandafter\def\csname simpleicon@dasersteicon\endcsname {\simpleiconsmapthree\symbol{174}}
- \expandafter\def\csname simpleicon@dashicon\endcsname {\simpleiconsmapthree\symbol{175}}
- \expandafter\def\csname simpleicon@dashlaneicon\endcsname {\simpleiconsmapthree\symbol{176}}
- \expandafter\def\csname simpleicon@daskicon\endcsname {\simpleiconsmapthree\symbol{177}}
- \expandafter\def\csname simpleicon@dassaultsystemesicon\endcsname {\simpleiconsmapthree\symbol{178}}
- \expandafter\def\csname simpleicon@databricksicon\endcsname {\simpleiconsmapthree\symbol{179}}
- \expandafter\def\csname simpleicon@datacampicon\endcsname {\simpleiconsmapthree\symbol{180}}
- \expandafter\def\csname simpleicon@datadogicon\endcsname {\simpleiconsmapthree\symbol{181}}
- \expandafter\def\csname simpleicon@datadotaiicon\endcsname {\simpleiconsmapthree\symbol{182}}
- \expandafter\def\csname simpleicon@datagripicon\endcsname {\simpleiconsmapthree\symbol{183}}
- \expandafter\def\csname simpleicon@dataikuicon\endcsname {\simpleiconsmapthree\symbol{184}}
- \expandafter\def\csname simpleicon@datastaxicon\endcsname {\simpleiconsmapthree\symbol{185}}
- \expandafter\def\csname simpleicon@dataverseicon\endcsname {\simpleiconsmapthree\symbol{186}}
- \expandafter\def\csname simpleicon@datefnsicon\endcsname {\simpleiconsmapthree\symbol{187}}
- \expandafter\def\csname simpleicon@datevicon\endcsname {\simpleiconsmapthree\symbol{188}}
- \expandafter\def\csname simpleicon@datocmsicon\endcsname {\simpleiconsmapthree\symbol{189}}
- \expandafter\def\csname simpleicon@dattoicon\endcsname {\simpleiconsmapthree\symbol{190}}
- \expandafter\def\csname simpleicon@davinciresolveicon\endcsname {\simpleiconsmapthree\symbol{191}}
- \expandafter\def\csname simpleicon@dazhongdianpingicon\endcsname {\simpleiconsmapthree\symbol{192}}
- \expandafter\def\csname simpleicon@daznicon\endcsname {\simpleiconsmapthree\symbol{193}}
- \expandafter\def\csname simpleicon@dbeavericon\endcsname {\simpleiconsmapthree\symbol{194}}
- \expandafter\def\csname simpleicon@dblpicon\endcsname {\simpleiconsmapthree\symbol{195}}
- \expandafter\def\csname simpleicon@dbticon\endcsname {\simpleiconsmapthree\symbol{196}}
- \expandafter\def\csname simpleicon@dcentertainmenticon\endcsname {\simpleiconsmapthree\symbol{197}}
- \expandafter\def\csname simpleicon@debianicon\endcsname {\simpleiconsmapthree\symbol{198}}
- \expandafter\def\csname simpleicon@decapcmsicon\endcsname {\simpleiconsmapthree\symbol{199}}
- \expandafter\def\csname simpleicon@decentralandicon\endcsname {\simpleiconsmapthree\symbol{200}}
- \expandafter\def\csname simpleicon@dedgeicon\endcsname {\simpleiconsmapthree\symbol{201}}
- \expandafter\def\csname simpleicon@deepcoolicon\endcsname {\simpleiconsmapthree\symbol{202}}
- \expandafter\def\csname simpleicon@deepgramicon\endcsname {\simpleiconsmapthree\symbol{203}}
- \expandafter\def\csname simpleicon@deepinicon\endcsname {\simpleiconsmapthree\symbol{204}}
- \expandafter\def\csname simpleicon@deeplicon\endcsname {\simpleiconsmapthree\symbol{205}}
- \expandafter\def\csname simpleicon@deepnoteicon\endcsname {\simpleiconsmapthree\symbol{206}}
- \expandafter\def\csname simpleicon@deliciousicon\endcsname {\simpleiconsmapthree\symbol{207}}
- \expandafter\def\csname simpleicon@deliverooicon\endcsname {\simpleiconsmapthree\symbol{208}}
- \expandafter\def\csname simpleicon@dellicon\endcsname {\simpleiconsmapthree\symbol{209}}
- \expandafter\def\csname simpleicon@delonghiicon\endcsname {\simpleiconsmapthree\symbol{210}}
- \expandafter\def\csname simpleicon@delphiicon\endcsname {\simpleiconsmapthree\symbol{211}}
- \expandafter\def\csname simpleicon@deltaicon\endcsname {\simpleiconsmapthree\symbol{212}}
- \expandafter\def\csname simpleicon@delugeicon\endcsname {\simpleiconsmapthree\symbol{213}}
- \expandafter\def\csname simpleicon@denoicon\endcsname {\simpleiconsmapthree\symbol{214}}
- \expandafter\def\csname simpleicon@denonicon\endcsname {\simpleiconsmapthree\symbol{215}}
- \expandafter\def\csname simpleicon@dependaboticon\endcsname {\simpleiconsmapthree\symbol{216}}
- \expandafter\def\csname simpleicon@dependencycheckicon\endcsname {\simpleiconsmapthree\symbol{217}}
- \expandafter\def\csname simpleicon@depositphotosicon\endcsname {\simpleiconsmapthree\symbol{218}}
- \expandafter\def\csname simpleicon@derspiegelicon\endcsname {\simpleiconsmapthree\symbol{219}}
- \expandafter\def\csname simpleicon@designernewsicon\endcsname {\simpleiconsmapthree\symbol{220}}
- \expandafter\def\csname simpleicon@deutschebahnicon\endcsname {\simpleiconsmapthree\symbol{221}}
- \expandafter\def\csname simpleicon@deutschebankicon\endcsname {\simpleiconsmapthree\symbol{222}}
- \expandafter\def\csname simpleicon@deutscheposticon\endcsname {\simpleiconsmapthree\symbol{223}}
- \expandafter\def\csname simpleicon@devdottoicon\endcsname {\simpleiconsmapthree\symbol{224}}
- \expandafter\def\csname simpleicon@devexpressicon\endcsname {\simpleiconsmapthree\symbol{225}}
- \expandafter\def\csname simpleicon@deviantarticon\endcsname {\simpleiconsmapthree\symbol{226}}
- \expandafter\def\csname simpleicon@devposticon\endcsname {\simpleiconsmapthree\symbol{227}}
- \expandafter\def\csname simpleicon@devranticon\endcsname {\simpleiconsmapthree\symbol{228}}
- \expandafter\def\csname simpleicon@dgraphicon\endcsname {\simpleiconsmapthree\symbol{229}}
- \expandafter\def\csname simpleicon@dhlicon\endcsname {\simpleiconsmapthree\symbol{230}}
- \expandafter\def\csname simpleicon@diagramsdotneticon\endcsname {\simpleiconsmapthree\symbol{231}}
- \expandafter\def\csname simpleicon@dialogflowicon\endcsname {\simpleiconsmapthree\symbol{232}}
- \expandafter\def\csname simpleicon@diasporaicon\endcsname {\simpleiconsmapthree\symbol{233}}
- \expandafter\def\csname simpleicon@dictionarydotcomicon\endcsname {\simpleiconsmapthree\symbol{234}}
- \expandafter\def\csname simpleicon@diggicon\endcsname {\simpleiconsmapthree\symbol{235}}
- \expandafter\def\csname simpleicon@digikeyelectronicsicon\endcsname {\simpleiconsmapthree\symbol{236}}
- \expandafter\def\csname simpleicon@digitaloceanicon\endcsname {\simpleiconsmapthree\symbol{237}}
- \expandafter\def\csname simpleicon@dinersclubicon\endcsname {\simpleiconsmapthree\symbol{238}}
- \expandafter\def\csname simpleicon@dioricon\endcsname {\simpleiconsmapthree\symbol{239}}
- \expandafter\def\csname simpleicon@directusicon\endcsname {\simpleiconsmapthree\symbol{240}}
- \expandafter\def\csname simpleicon@discogsicon\endcsname {\simpleiconsmapthree\symbol{241}}
- \expandafter\def\csname simpleicon@discordicon\endcsname {\simpleiconsmapthree\symbol{242}}
- \expandafter\def\csname simpleicon@discourseicon\endcsname {\simpleiconsmapthree\symbol{243}}
- \expandafter\def\csname simpleicon@discovericon\endcsname {\simpleiconsmapthree\symbol{244}}
- \expandafter\def\csname simpleicon@disqusicon\endcsname {\simpleiconsmapthree\symbol{245}}
- \expandafter\def\csname simpleicon@disrooticon\endcsname {\simpleiconsmapthree\symbol{246}}
- \expandafter\def\csname simpleicon@distrokidicon\endcsname {\simpleiconsmapthree\symbol{247}}
- \expandafter\def\csname simpleicon@djangoicon\endcsname {\simpleiconsmapthree\symbol{248}}
- \expandafter\def\csname simpleicon@djiicon\endcsname {\simpleiconsmapthree\symbol{249}}
- \expandafter\def\csname simpleicon@dlibicon\endcsname {\simpleiconsmapthree\symbol{250}}
- \expandafter\def\csname simpleicon@dlnaicon\endcsname {\simpleiconsmapthree\symbol{251}}
- \expandafter\def\csname simpleicon@dmicon\endcsname {\simpleiconsmapthree\symbol{252}}
- \expandafter\def\csname simpleicon@dockericon\endcsname {\simpleiconsmapthree\symbol{253}}
- \expandafter\def\csname simpleicon@docsdotrsicon\endcsname {\simpleiconsmapthree\symbol{254}}
- \expandafter\def\csname simpleicon@docsifyicon\endcsname {\simpleiconsmapthree\symbol{255}}
- \expandafter\def\csname simpleicon@doctrineicon\endcsname {\simpleiconsmapfour\symbol{0}}
- \expandafter\def\csname simpleicon@docusaurusicon\endcsname {\simpleiconsmapfour\symbol{1}}
- \expandafter\def\csname simpleicon@docusignicon\endcsname {\simpleiconsmapfour\symbol{2}}
- \expandafter\def\csname simpleicon@dogecoinicon\endcsname {\simpleiconsmapfour\symbol{3}}
- \expandafter\def\csname simpleicon@doiicon\endcsname {\simpleiconsmapfour\symbol{4}}
- \expandafter\def\csname simpleicon@dolbyicon\endcsname {\simpleiconsmapfour\symbol{5}}
- \expandafter\def\csname simpleicon@doordashicon\endcsname {\simpleiconsmapfour\symbol{6}}
- \expandafter\def\csname simpleicon@dota2icon\endcsname {\simpleiconsmapfour\symbol{7}}
- \expandafter\def\csname simpleicon@dotenvicon\endcsname {\simpleiconsmapfour\symbol{8}}
- \expandafter\def\csname simpleicon@dotneticon\endcsname {\simpleiconsmapfour\symbol{9}}
- \expandafter\def\csname simpleicon@doubanicon\endcsname {\simpleiconsmapfour\symbol{10}}
- \expandafter\def\csname simpleicon@doubanreadicon\endcsname {\simpleiconsmapfour\symbol{11}}
- \expandafter\def\csname simpleicon@dovecoticon\endcsname {\simpleiconsmapfour\symbol{12}}
- \expandafter\def\csname simpleicon@dovetailicon\endcsname {\simpleiconsmapfour\symbol{13}}
- \expandafter\def\csname simpleicon@doxygenicon\endcsname {\simpleiconsmapfour\symbol{14}}
- \expandafter\def\csname simpleicon@dpdicon\endcsname {\simpleiconsmapfour\symbol{15}}
- \expandafter\def\csname simpleicon@dragonframeicon\endcsname {\simpleiconsmapfour\symbol{16}}
- \expandafter\def\csname simpleicon@draugiemdotlvicon\endcsname {\simpleiconsmapfour\symbol{17}}
- \expandafter\def\csname simpleicon@dreamstimeicon\endcsname {\simpleiconsmapfour\symbol{18}}
- \expandafter\def\csname simpleicon@dribbbleicon\endcsname {\simpleiconsmapfour\symbol{19}}
- \expandafter\def\csname simpleicon@drizzleicon\endcsname {\simpleiconsmapfour\symbol{20}}
- \expandafter\def\csname simpleicon@droneicon\endcsname {\simpleiconsmapfour\symbol{21}}
- \expandafter\def\csname simpleicon@droobleicon\endcsname {\simpleiconsmapfour\symbol{22}}
- \expandafter\def\csname simpleicon@dropboxicon\endcsname {\simpleiconsmapfour\symbol{23}}
- \expandafter\def\csname simpleicon@drupalicon\endcsname {\simpleiconsmapfour\symbol{24}}
- \expandafter\def\csname simpleicon@dsautomobilesicon\endcsname {\simpleiconsmapfour\symbol{25}}
- \expandafter\def\csname simpleicon@dtsicon\endcsname {\simpleiconsmapfour\symbol{26}}
- \expandafter\def\csname simpleicon@dtubeicon\endcsname {\simpleiconsmapfour\symbol{27}}
- \expandafter\def\csname simpleicon@ducatiicon\endcsname {\simpleiconsmapfour\symbol{28}}
- \expandafter\def\csname simpleicon@duckdbicon\endcsname {\simpleiconsmapfour\symbol{29}}
- \expandafter\def\csname simpleicon@duckduckgoicon\endcsname {\simpleiconsmapfour\symbol{30}}
- \expandafter\def\csname simpleicon@dungeonsanddragonsicon\endcsname {\simpleiconsmapfour\symbol{31}}
- \expandafter\def\csname simpleicon@dunkedicon\endcsname {\simpleiconsmapfour\symbol{32}}
- \expandafter\def\csname simpleicon@dunzoicon\endcsname {\simpleiconsmapfour\symbol{33}}
- \expandafter\def\csname simpleicon@duolingoicon\endcsname {\simpleiconsmapfour\symbol{34}}
- \expandafter\def\csname simpleicon@duplicatiicon\endcsname {\simpleiconsmapfour\symbol{35}}
- \expandafter\def\csname simpleicon@dvcicon\endcsname {\simpleiconsmapfour\symbol{36}}
- \expandafter\def\csname simpleicon@dwavesystemsicon\endcsname {\simpleiconsmapfour\symbol{37}}
- \expandafter\def\csname simpleicon@dwmicon\endcsname {\simpleiconsmapfour\symbol{38}}
- \expandafter\def\csname simpleicon@dynamics365icon\endcsname {\simpleiconsmapfour\symbol{39}}
- \expandafter\def\csname simpleicon@dynatraceicon\endcsname {\simpleiconsmapfour\symbol{40}}
- \expandafter\def\csname simpleicon@eicon\endcsname {\simpleiconsmapfour\symbol{41}}
- \expandafter\def\csname simpleicon@e3icon\endcsname {\simpleiconsmapfour\symbol{42}}
- \expandafter\def\csname simpleicon@eaicon\endcsname {\simpleiconsmapfour\symbol{43}}
- \expandafter\def\csname simpleicon@eagleicon\endcsname {\simpleiconsmapfour\symbol{44}}
- \expandafter\def\csname simpleicon@easyedaicon\endcsname {\simpleiconsmapfour\symbol{45}}
- \expandafter\def\csname simpleicon@easyjeticon\endcsname {\simpleiconsmapfour\symbol{46}}
- \expandafter\def\csname simpleicon@ebayicon\endcsname {\simpleiconsmapfour\symbol{47}}
- \expandafter\def\csname simpleicon@eboxicon\endcsname {\simpleiconsmapfour\symbol{48}}
- \expandafter\def\csname simpleicon@eclipseadoptiumicon\endcsname {\simpleiconsmapfour\symbol{49}}
- \expandafter\def\csname simpleicon@eclipsecheicon\endcsname {\simpleiconsmapfour\symbol{50}}
- \expandafter\def\csname simpleicon@eclipseideicon\endcsname {\simpleiconsmapfour\symbol{51}}
- \expandafter\def\csname simpleicon@eclipsejettyicon\endcsname {\simpleiconsmapfour\symbol{52}}
- \expandafter\def\csname simpleicon@eclipsemosquittoicon\endcsname {\simpleiconsmapfour\symbol{53}}
- \expandafter\def\csname simpleicon@eclipsevertdotxicon\endcsname {\simpleiconsmapfour\symbol{54}}
- \expandafter\def\csname simpleicon@ecovacsicon\endcsname {\simpleiconsmapfour\symbol{55}}
- \expandafter\def\csname simpleicon@edekaicon\endcsname {\simpleiconsmapfour\symbol{56}}
- \expandafter\def\csname simpleicon@edgeimpulseicon\endcsname {\simpleiconsmapfour\symbol{57}}
- \expandafter\def\csname simpleicon@editorconfigicon\endcsname {\simpleiconsmapfour\symbol{58}}
- \expandafter\def\csname simpleicon@edotleclercicon\endcsname {\simpleiconsmapfour\symbol{59}}
- \expandafter\def\csname simpleicon@educativeicon\endcsname {\simpleiconsmapfour\symbol{60}}
- \expandafter\def\csname simpleicon@edxicon\endcsname {\simpleiconsmapfour\symbol{61}}
- \expandafter\def\csname simpleicon@eggheadicon\endcsname {\simpleiconsmapfour\symbol{62}}
- \expandafter\def\csname simpleicon@egnyteicon\endcsname {\simpleiconsmapfour\symbol{63}}
- \expandafter\def\csname simpleicon@eighticon\endcsname {\simpleiconsmapfour\symbol{64}}
- \expandafter\def\csname simpleicon@eightsleepicon\endcsname {\simpleiconsmapfour\symbol{65}}
- \expandafter\def\csname simpleicon@ejsicon\endcsname {\simpleiconsmapfour\symbol{66}}
- \expandafter\def\csname simpleicon@elasticicon\endcsname {\simpleiconsmapfour\symbol{67}}
- \expandafter\def\csname simpleicon@elasticcloudicon\endcsname {\simpleiconsmapfour\symbol{68}}
- \expandafter\def\csname simpleicon@elasticsearchicon\endcsname {\simpleiconsmapfour\symbol{69}}
- \expandafter\def\csname simpleicon@elasticstackicon\endcsname {\simpleiconsmapfour\symbol{70}}
- \expandafter\def\csname simpleicon@elavonicon\endcsname {\simpleiconsmapfour\symbol{71}}
- \expandafter\def\csname simpleicon@electronicon\endcsname {\simpleiconsmapfour\symbol{72}}
- \expandafter\def\csname simpleicon@electronbuildericon\endcsname {\simpleiconsmapfour\symbol{73}}
- \expandafter\def\csname simpleicon@electronfiddleicon\endcsname {\simpleiconsmapfour\symbol{74}}
- \expandafter\def\csname simpleicon@elegooicon\endcsname {\simpleiconsmapfour\symbol{75}}
- \expandafter\def\csname simpleicon@elementicon\endcsname {\simpleiconsmapfour\symbol{76}}
- \expandafter\def\csname simpleicon@elementaryicon\endcsname {\simpleiconsmapfour\symbol{77}}
- \expandafter\def\csname simpleicon@elementoricon\endcsname {\simpleiconsmapfour\symbol{78}}
- \expandafter\def\csname simpleicon@eleventyicon\endcsname {\simpleiconsmapfour\symbol{79}}
- \expandafter\def\csname simpleicon@elgatoicon\endcsname {\simpleiconsmapfour\symbol{80}}
- \expandafter\def\csname simpleicon@elixiricon\endcsname {\simpleiconsmapfour\symbol{81}}
- \expandafter\def\csname simpleicon@eljuevesicon\endcsname {\simpleiconsmapfour\symbol{82}}
- \expandafter\def\csname simpleicon@elloicon\endcsname {\simpleiconsmapfour\symbol{83}}
- \expandafter\def\csname simpleicon@elmicon\endcsname {\simpleiconsmapfour\symbol{84}}
- \expandafter\def\csname simpleicon@elseviericon\endcsname {\simpleiconsmapfour\symbol{85}}
- \expandafter\def\csname simpleicon@embarcaderoicon\endcsname {\simpleiconsmapfour\symbol{86}}
- \expandafter\def\csname simpleicon@embarkicon\endcsname {\simpleiconsmapfour\symbol{87}}
- \expandafter\def\csname simpleicon@emberdotjsicon\endcsname {\simpleiconsmapfour\symbol{88}}
- \expandafter\def\csname simpleicon@embyicon\endcsname {\simpleiconsmapfour\symbol{89}}
- \expandafter\def\csname simpleicon@emiratesicon\endcsname {\simpleiconsmapfour\symbol{90}}
- \expandafter\def\csname simpleicon@emlakjeticon\endcsname {\simpleiconsmapfour\symbol{91}}
- \expandafter\def\csname simpleicon@empirekredicon\endcsname {\simpleiconsmapfour\symbol{92}}
- \expandafter\def\csname simpleicon@endeavourosicon\endcsname {\simpleiconsmapfour\symbol{93}}
- \expandafter\def\csname simpleicon@engadgeticon\endcsname {\simpleiconsmapfour\symbol{94}}
- \expandafter\def\csname simpleicon@enpassicon\endcsname {\simpleiconsmapfour\symbol{95}}
- \expandafter\def\csname simpleicon@enterprisedbicon\endcsname {\simpleiconsmapfour\symbol{96}}
- \expandafter\def\csname simpleicon@envatoicon\endcsname {\simpleiconsmapfour\symbol{97}}
- \expandafter\def\csname simpleicon@envoyproxyicon\endcsname {\simpleiconsmapfour\symbol{98}}
- \expandafter\def\csname simpleicon@epelicon\endcsname {\simpleiconsmapfour\symbol{99}}
- \expandafter\def\csname simpleicon@epicgamesicon\endcsname {\simpleiconsmapfour\symbol{100}}
- \expandafter\def\csname simpleicon@epsonicon\endcsname {\simpleiconsmapfour\symbol{101}}
- \expandafter\def\csname simpleicon@equinixmetalicon\endcsname {\simpleiconsmapfour\symbol{102}}
- \expandafter\def\csname simpleicon@erasericon\endcsname {\simpleiconsmapfour\symbol{103}}
- \expandafter\def\csname simpleicon@ericssonicon\endcsname {\simpleiconsmapfour\symbol{104}}
- \expandafter\def\csname simpleicon@erlangicon\endcsname {\simpleiconsmapfour\symbol{105}}
- \expandafter\def\csname simpleicon@erpnexticon\endcsname {\simpleiconsmapfour\symbol{106}}
- \expandafter\def\csname simpleicon@esbuildicon\endcsname {\simpleiconsmapfour\symbol{107}}
- \expandafter\def\csname simpleicon@eseaicon\endcsname {\simpleiconsmapfour\symbol{108}}
- \expandafter\def\csname simpleicon@eslgamingicon\endcsname {\simpleiconsmapfour\symbol{109}}
- \expandafter\def\csname simpleicon@eslinticon\endcsname {\simpleiconsmapfour\symbol{110}}
- \expandafter\def\csname simpleicon@esotericsoftwareicon\endcsname {\simpleiconsmapfour\symbol{111}}
- \expandafter\def\csname simpleicon@esphomeicon\endcsname {\simpleiconsmapfour\symbol{112}}
- \expandafter\def\csname simpleicon@espressificon\endcsname {\simpleiconsmapfour\symbol{113}}
- \expandafter\def\csname simpleicon@esriicon\endcsname {\simpleiconsmapfour\symbol{114}}
- \expandafter\def\csname simpleicon@etcdicon\endcsname {\simpleiconsmapfour\symbol{115}}
- \expandafter\def\csname simpleicon@ethereumicon\endcsname {\simpleiconsmapfour\symbol{116}}
- \expandafter\def\csname simpleicon@ethersicon\endcsname {\simpleiconsmapfour\symbol{117}}
- \expandafter\def\csname simpleicon@ethiopianairlinesicon\endcsname {\simpleiconsmapfour\symbol{118}}
- \expandafter\def\csname simpleicon@etihadairwaysicon\endcsname {\simpleiconsmapfour\symbol{119}}
- \expandafter\def\csname simpleicon@etsyicon\endcsname {\simpleiconsmapfour\symbol{120}}
- \expandafter\def\csname simpleicon@eventbriteicon\endcsname {\simpleiconsmapfour\symbol{121}}
- \expandafter\def\csname simpleicon@eventstoreicon\endcsname {\simpleiconsmapfour\symbol{122}}
- \expandafter\def\csname simpleicon@evernoteicon\endcsname {\simpleiconsmapfour\symbol{123}}
- \expandafter\def\csname simpleicon@excalidrawicon\endcsname {\simpleiconsmapfour\symbol{124}}
- \expandafter\def\csname simpleicon@exercismicon\endcsname {\simpleiconsmapfour\symbol{125}}
- \expandafter\def\csname simpleicon@exordoicon\endcsname {\simpleiconsmapfour\symbol{126}}
- \expandafter\def\csname simpleicon@exoscaleicon\endcsname {\simpleiconsmapfour\symbol{127}}
- \expandafter\def\csname simpleicon@expediaicon\endcsname {\simpleiconsmapfour\symbol{128}}
- \expandafter\def\csname simpleicon@expensifyicon\endcsname {\simpleiconsmapfour\symbol{129}}
- \expandafter\def\csname simpleicon@expertsexchangeicon\endcsname {\simpleiconsmapfour\symbol{130}}
- \expandafter\def\csname simpleicon@expoicon\endcsname {\simpleiconsmapfour\symbol{131}}
- \expandafter\def\csname simpleicon@expressicon\endcsname {\simpleiconsmapfour\symbol{132}}
- \expandafter\def\csname simpleicon@expressvpnicon\endcsname {\simpleiconsmapfour\symbol{133}}
- \expandafter\def\csname simpleicon@eyeemicon\endcsname {\simpleiconsmapfour\symbol{134}}
- \expandafter\def\csname simpleicon@f1icon\endcsname {\simpleiconsmapfour\symbol{135}}
- \expandafter\def\csname simpleicon@f5icon\endcsname {\simpleiconsmapfour\symbol{136}}
- \expandafter\def\csname simpleicon@facebookicon\endcsname {\simpleiconsmapfour\symbol{137}}
- \expandafter\def\csname simpleicon@facebookgamingicon\endcsname {\simpleiconsmapfour\symbol{138}}
- \expandafter\def\csname simpleicon@facebookliveicon\endcsname {\simpleiconsmapfour\symbol{139}}
- \expandafter\def\csname simpleicon@faceiticon\endcsname {\simpleiconsmapfour\symbol{140}}
- \expandafter\def\csname simpleicon@facepunchicon\endcsname {\simpleiconsmapfour\symbol{141}}
- \expandafter\def\csname simpleicon@fairphoneicon\endcsname {\simpleiconsmapfour\symbol{142}}
- \expandafter\def\csname simpleicon@falcoicon\endcsname {\simpleiconsmapfour\symbol{143}}
- \expandafter\def\csname simpleicon@falconicon\endcsname {\simpleiconsmapfour\symbol{144}}
- \expandafter\def\csname simpleicon@fampayicon\endcsname {\simpleiconsmapfour\symbol{145}}
- \expandafter\def\csname simpleicon@fandangoicon\endcsname {\simpleiconsmapfour\symbol{146}}
- \expandafter\def\csname simpleicon@fandomicon\endcsname {\simpleiconsmapfour\symbol{147}}
- \expandafter\def\csname simpleicon@fanfouicon\endcsname {\simpleiconsmapfour\symbol{148}}
- \expandafter\def\csname simpleicon@fantomicon\endcsname {\simpleiconsmapfour\symbol{149}}
- \expandafter\def\csname simpleicon@farcastericon\endcsname {\simpleiconsmapfour\symbol{150}}
- \expandafter\def\csname simpleicon@fareharboricon\endcsname {\simpleiconsmapfour\symbol{151}}
- \expandafter\def\csname simpleicon@farfetchicon\endcsname {\simpleiconsmapfour\symbol{152}}
- \expandafter\def\csname simpleicon@fastapiicon\endcsname {\simpleiconsmapfour\symbol{153}}
- \expandafter\def\csname simpleicon@fastifyicon\endcsname {\simpleiconsmapfour\symbol{154}}
- \expandafter\def\csname simpleicon@fastlaneicon\endcsname {\simpleiconsmapfour\symbol{155}}
- \expandafter\def\csname simpleicon@fastlyicon\endcsname {\simpleiconsmapfour\symbol{156}}
- \expandafter\def\csname simpleicon@fathomicon\endcsname {\simpleiconsmapfour\symbol{157}}
- \expandafter\def\csname simpleicon@faunaicon\endcsname {\simpleiconsmapfour\symbol{158}}
- \expandafter\def\csname simpleicon@favroicon\endcsname {\simpleiconsmapfour\symbol{159}}
- \expandafter\def\csname simpleicon@fdroidicon\endcsname {\simpleiconsmapfour\symbol{160}}
- \expandafter\def\csname simpleicon@feathubicon\endcsname {\simpleiconsmapfour\symbol{161}}
- \expandafter\def\csname simpleicon@fedexicon\endcsname {\simpleiconsmapfour\symbol{162}}
- \expandafter\def\csname simpleicon@fedoraicon\endcsname {\simpleiconsmapfour\symbol{163}}
- \expandafter\def\csname simpleicon@feedlyicon\endcsname {\simpleiconsmapfour\symbol{164}}
- \expandafter\def\csname simpleicon@ferrariicon\endcsname {\simpleiconsmapfour\symbol{165}}
- \expandafter\def\csname simpleicon@ferrarinvicon\endcsname {\simpleiconsmapfour\symbol{166}}
- \expandafter\def\csname simpleicon@ferretdbicon\endcsname {\simpleiconsmapfour\symbol{167}}
- \expandafter\def\csname simpleicon@ffmpegicon\endcsname {\simpleiconsmapfour\symbol{168}}
- \expandafter\def\csname simpleicon@fiicon\endcsname {\simpleiconsmapfour\symbol{169}}
- \expandafter\def\csname simpleicon@fiaticon\endcsname {\simpleiconsmapfour\symbol{170}}
- \expandafter\def\csname simpleicon@fidoallianceicon\endcsname {\simpleiconsmapfour\symbol{171}}
- \expandafter\def\csname simpleicon@fifaicon\endcsname {\simpleiconsmapfour\symbol{172}}
- \expandafter\def\csname simpleicon@figicon\endcsname {\simpleiconsmapfour\symbol{173}}
- \expandafter\def\csname simpleicon@figmaicon\endcsname {\simpleiconsmapfour\symbol{174}}
- \expandafter\def\csname simpleicon@figshareicon\endcsname {\simpleiconsmapfour\symbol{175}}
- \expandafter\def\csname simpleicon@filaicon\endcsname {\simpleiconsmapfour\symbol{176}}
- \expandafter\def\csname simpleicon@filedotioicon\endcsname {\simpleiconsmapfour\symbol{177}}
- \expandafter\def\csname simpleicon@filesicon\endcsname {\simpleiconsmapfour\symbol{178}}
- \expandafter\def\csname simpleicon@filezillaicon\endcsname {\simpleiconsmapfour\symbol{179}}
- \expandafter\def\csname simpleicon@finecoicon\endcsname {\simpleiconsmapfour\symbol{180}}
- \expandafter\def\csname simpleicon@fingicon\endcsname {\simpleiconsmapfour\symbol{181}}
- \expandafter\def\csname simpleicon@firebaseicon\endcsname {\simpleiconsmapfour\symbol{182}}
- \expandafter\def\csname simpleicon@firefishicon\endcsname {\simpleiconsmapfour\symbol{183}}
- \expandafter\def\csname simpleicon@fireflyiiiicon\endcsname {\simpleiconsmapfour\symbol{184}}
- \expandafter\def\csname simpleicon@firefoxicon\endcsname {\simpleiconsmapfour\symbol{185}}
- \expandafter\def\csname simpleicon@firefoxbrowsericon\endcsname {\simpleiconsmapfour\symbol{186}}
- \expandafter\def\csname simpleicon@fireshipicon\endcsname {\simpleiconsmapfour\symbol{187}}
- \expandafter\def\csname simpleicon@firewallaicon\endcsname {\simpleiconsmapfour\symbol{188}}
- \expandafter\def\csname simpleicon@firsticon\endcsname {\simpleiconsmapfour\symbol{189}}
- \expandafter\def\csname simpleicon@fishshellicon\endcsname {\simpleiconsmapfour\symbol{190}}
- \expandafter\def\csname simpleicon@fitbiticon\endcsname {\simpleiconsmapfour\symbol{191}}
- \expandafter\def\csname simpleicon@fivemicon\endcsname {\simpleiconsmapfour\symbol{192}}
- \expandafter\def\csname simpleicon@fiverricon\endcsname {\simpleiconsmapfour\symbol{193}}
- \expandafter\def\csname simpleicon@fizzicon\endcsname {\simpleiconsmapfour\symbol{194}}
- \expandafter\def\csname simpleicon@flashforgeicon\endcsname {\simpleiconsmapfour\symbol{195}}
- \expandafter\def\csname simpleicon@flaskicon\endcsname {\simpleiconsmapfour\symbol{196}}
- \expandafter\def\csname simpleicon@flaticon\endcsname {\simpleiconsmapfour\symbol{197}}
- \expandafter\def\csname simpleicon@flathubicon\endcsname {\simpleiconsmapfour\symbol{198}}
- \expandafter\def\csname simpleicon@flatpakicon\endcsname {\simpleiconsmapfour\symbol{199}}
- \expandafter\def\csname simpleicon@flickricon\endcsname {\simpleiconsmapfour\symbol{200}}
- \expandafter\def\csname simpleicon@flightawareicon\endcsname {\simpleiconsmapfour\symbol{201}}
- \expandafter\def\csname simpleicon@flipboardicon\endcsname {\simpleiconsmapfour\symbol{202}}
- \expandafter\def\csname simpleicon@flipkarticon\endcsname {\simpleiconsmapfour\symbol{203}}
- \expandafter\def\csname simpleicon@floatplaneicon\endcsname {\simpleiconsmapfour\symbol{204}}
- \expandafter\def\csname simpleicon@floodicon\endcsname {\simpleiconsmapfour\symbol{205}}
- \expandafter\def\csname simpleicon@fluentbiticon\endcsname {\simpleiconsmapfour\symbol{206}}
- \expandafter\def\csname simpleicon@fluentdicon\endcsname {\simpleiconsmapfour\symbol{207}}
- \expandafter\def\csname simpleicon@flukeicon\endcsname {\simpleiconsmapfour\symbol{208}}
- \expandafter\def\csname simpleicon@fluttericon\endcsname {\simpleiconsmapfour\symbol{209}}
- \expandafter\def\csname simpleicon@fluxicon\endcsname {\simpleiconsmapfour\symbol{210}}
- \expandafter\def\csname simpleicon@fluxusicon\endcsname {\simpleiconsmapfour\symbol{211}}
- \expandafter\def\csname simpleicon@flywayicon\endcsname {\simpleiconsmapfour\symbol{212}}
- \expandafter\def\csname simpleicon@fmodicon\endcsname {\simpleiconsmapfour\symbol{213}}
- \expandafter\def\csname simpleicon@fnacicon\endcsname {\simpleiconsmapfour\symbol{214}}
- \expandafter\def\csname simpleicon@foliumicon\endcsname {\simpleiconsmapfour\symbol{215}}
- \expandafter\def\csname simpleicon@fonomaicon\endcsname {\simpleiconsmapfour\symbol{216}}
- \expandafter\def\csname simpleicon@fontawesomeicon\endcsname {\simpleiconsmapfour\symbol{217}}
- \expandafter\def\csname simpleicon@fontbaseicon\endcsname {\simpleiconsmapfour\symbol{218}}
- \expandafter\def\csname simpleicon@fontforgeicon\endcsname {\simpleiconsmapfour\symbol{219}}
- \expandafter\def\csname simpleicon@foobar2000icon\endcsname {\simpleiconsmapfour\symbol{220}}
- \expandafter\def\csname simpleicon@foodpandaicon\endcsname {\simpleiconsmapfour\symbol{221}}
- \expandafter\def\csname simpleicon@fordicon\endcsname {\simpleiconsmapfour\symbol{222}}
- \expandafter\def\csname simpleicon@forgejoicon\endcsname {\simpleiconsmapfour\symbol{223}}
- \expandafter\def\csname simpleicon@formikicon\endcsname {\simpleiconsmapfour\symbol{224}}
- \expandafter\def\csname simpleicon@formspreeicon\endcsname {\simpleiconsmapfour\symbol{225}}
- \expandafter\def\csname simpleicon@formstackicon\endcsname {\simpleiconsmapfour\symbol{226}}
- \expandafter\def\csname simpleicon@fortineticon\endcsname {\simpleiconsmapfour\symbol{227}}
- \expandafter\def\csname simpleicon@fortranicon\endcsname {\simpleiconsmapfour\symbol{228}}
- \expandafter\def\csname simpleicon@fossaicon\endcsname {\simpleiconsmapfour\symbol{229}}
- \expandafter\def\csname simpleicon@fossilscmicon\endcsname {\simpleiconsmapfour\symbol{230}}
- \expandafter\def\csname simpleicon@foundryvirtualtabletopicon\endcsname {\simpleiconsmapfour\symbol{231}}
- \expandafter\def\csname simpleicon@foursquareicon\endcsname {\simpleiconsmapfour\symbol{232}}
- \expandafter\def\csname simpleicon@foursquarecityguideicon\endcsname {\simpleiconsmapfour\symbol{233}}
- \expandafter\def\csname simpleicon@foxicon\endcsname {\simpleiconsmapfour\symbol{234}}
- \expandafter\def\csname simpleicon@foxtelicon\endcsname {\simpleiconsmapfour\symbol{235}}
- \expandafter\def\csname simpleicon@fozzyicon\endcsname {\simpleiconsmapfour\symbol{236}}
- \expandafter\def\csname simpleicon@framericon\endcsname {\simpleiconsmapfour\symbol{237}}
- \expandafter\def\csname simpleicon@frameworkicon\endcsname {\simpleiconsmapfour\symbol{238}}
- \expandafter\def\csname simpleicon@framework7icon\endcsname {\simpleiconsmapfour\symbol{239}}
- \expandafter\def\csname simpleicon@franprixicon\endcsname {\simpleiconsmapfour\symbol{240}}
- \expandafter\def\csname simpleicon@frappeicon\endcsname {\simpleiconsmapfour\symbol{241}}
- \expandafter\def\csname simpleicon@fraunhofergesellschafticon\endcsname {\simpleiconsmapfour\symbol{242}}
- \expandafter\def\csname simpleicon@freebsdicon\endcsname {\simpleiconsmapfour\symbol{243}}
- \expandafter\def\csname simpleicon@freecadicon\endcsname {\simpleiconsmapfour\symbol{244}}
- \expandafter\def\csname simpleicon@freecodecampicon\endcsname {\simpleiconsmapfour\symbol{245}}
- \expandafter\def\csname simpleicon@freedesktopdotorgicon\endcsname {\simpleiconsmapfour\symbol{246}}
- \expandafter\def\csname simpleicon@freelancericon\endcsname {\simpleiconsmapfour\symbol{247}}
- \expandafter\def\csname simpleicon@freelancermapicon\endcsname {\simpleiconsmapfour\symbol{248}}
- \expandafter\def\csname simpleicon@freenasicon\endcsname {\simpleiconsmapfour\symbol{249}}
- \expandafter\def\csname simpleicon@freepikicon\endcsname {\simpleiconsmapfour\symbol{250}}
- \expandafter\def\csname simpleicon@frontendmentoricon\endcsname {\simpleiconsmapfour\symbol{251}}
- \expandafter\def\csname simpleicon@frontifyicon\endcsname {\simpleiconsmapfour\symbol{252}}
- \expandafter\def\csname simpleicon@fsecureicon\endcsname {\simpleiconsmapfour\symbol{253}}
- \expandafter\def\csname simpleicon@fsharpicon\endcsname {\simpleiconsmapfour\symbol{254}}
- \expandafter\def\csname simpleicon@fuboicon\endcsname {\simpleiconsmapfour\symbol{255}}
- \expandafter\def\csname simpleicon@fuelericon\endcsname {\simpleiconsmapfive\symbol{0}}
- \expandafter\def\csname simpleicon@fugacloudicon\endcsname {\simpleiconsmapfive\symbol{1}}
- \expandafter\def\csname simpleicon@fujifilmicon\endcsname {\simpleiconsmapfive\symbol{2}}
- \expandafter\def\csname simpleicon@fujitsuicon\endcsname {\simpleiconsmapfive\symbol{3}}
- \expandafter\def\csname simpleicon@funimationicon\endcsname {\simpleiconsmapfive\symbol{4}}
- \expandafter\def\csname simpleicon@furaffinityicon\endcsname {\simpleiconsmapfive\symbol{5}}
- \expandafter\def\csname simpleicon@furrynetworkicon\endcsname {\simpleiconsmapfive\symbol{6}}
- \expandafter\def\csname simpleicon@fusionauthicon\endcsname {\simpleiconsmapfive\symbol{7}}
- \expandafter\def\csname simpleicon@futurelearnicon\endcsname {\simpleiconsmapfive\symbol{8}}
- \expandafter\def\csname simpleicon@g2icon\endcsname {\simpleiconsmapfive\symbol{9}}
- \expandafter\def\csname simpleicon@g2aicon\endcsname {\simpleiconsmapfive\symbol{10}}
- \expandafter\def\csname simpleicon@g2gicon\endcsname {\simpleiconsmapfive\symbol{11}}
- \expandafter\def\csname simpleicon@galaxusicon\endcsname {\simpleiconsmapfive\symbol{12}}
- \expandafter\def\csname simpleicon@gameandwatchicon\endcsname {\simpleiconsmapfive\symbol{13}}
- \expandafter\def\csname simpleicon@gamebananaicon\endcsname {\simpleiconsmapfive\symbol{14}}
- \expandafter\def\csname simpleicon@gamedevelopericon\endcsname {\simpleiconsmapfive\symbol{15}}
- \expandafter\def\csname simpleicon@gamejolticon\endcsname {\simpleiconsmapfive\symbol{16}}
- \expandafter\def\csname simpleicon@gamelofticon\endcsname {\simpleiconsmapfive\symbol{17}}
- \expandafter\def\csname simpleicon@gamemakericon\endcsname {\simpleiconsmapfive\symbol{18}}
- \expandafter\def\csname simpleicon@garminicon\endcsname {\simpleiconsmapfive\symbol{19}}
- \expandafter\def\csname simpleicon@gatlingicon\endcsname {\simpleiconsmapfive\symbol{20}}
- \expandafter\def\csname simpleicon@gatsbyicon\endcsname {\simpleiconsmapfive\symbol{21}}
- \expandafter\def\csname simpleicon@gcoreicon\endcsname {\simpleiconsmapfive\symbol{22}}
- \expandafter\def\csname simpleicon@gdalicon\endcsname {\simpleiconsmapfive\symbol{23}}
- \expandafter\def\csname simpleicon@geanticon\endcsname {\simpleiconsmapfive\symbol{24}}
- \expandafter\def\csname simpleicon@geeksforgeeksicon\endcsname {\simpleiconsmapfive\symbol{25}}
- \expandafter\def\csname simpleicon@generalelectricicon\endcsname {\simpleiconsmapfive\symbol{26}}
- \expandafter\def\csname simpleicon@generalmotorsicon\endcsname {\simpleiconsmapfive\symbol{27}}
- \expandafter\def\csname simpleicon@geniusicon\endcsname {\simpleiconsmapfive\symbol{28}}
- \expandafter\def\csname simpleicon@gentooicon\endcsname {\simpleiconsmapfive\symbol{29}}
- \expandafter\def\csname simpleicon@geocachingicon\endcsname {\simpleiconsmapfive\symbol{30}}
- \expandafter\def\csname simpleicon@geodeicon\endcsname {\simpleiconsmapfive\symbol{31}}
- \expandafter\def\csname simpleicon@geopandasicon\endcsname {\simpleiconsmapfive\symbol{32}}
- \expandafter\def\csname simpleicon@gerriticon\endcsname {\simpleiconsmapfive\symbol{33}}
- \expandafter\def\csname simpleicon@getxicon\endcsname {\simpleiconsmapfive\symbol{34}}
- \expandafter\def\csname simpleicon@ghosticon\endcsname {\simpleiconsmapfive\symbol{35}}
- \expandafter\def\csname simpleicon@ghosteryicon\endcsname {\simpleiconsmapfive\symbol{36}}
- \expandafter\def\csname simpleicon@gimpicon\endcsname {\simpleiconsmapfive\symbol{37}}
- \expandafter\def\csname simpleicon@ginicon\endcsname {\simpleiconsmapfive\symbol{38}}
- \expandafter\def\csname simpleicon@giphyicon\endcsname {\simpleiconsmapfive\symbol{39}}
- \expandafter\def\csname simpleicon@giticon\endcsname {\simpleiconsmapfive\symbol{40}}
- \expandafter\def\csname simpleicon@gitbookicon\endcsname {\simpleiconsmapfive\symbol{41}}
- \expandafter\def\csname simpleicon@gitconnectedicon\endcsname {\simpleiconsmapfive\symbol{42}}
- \expandafter\def\csname simpleicon@giteaicon\endcsname {\simpleiconsmapfive\symbol{43}}
- \expandafter\def\csname simpleicon@giteeicon\endcsname {\simpleiconsmapfive\symbol{44}}
- \expandafter\def\csname simpleicon@gitextensionsicon\endcsname {\simpleiconsmapfive\symbol{45}}
- \expandafter\def\csname simpleicon@gitforwindowsicon\endcsname {\simpleiconsmapfive\symbol{46}}
- \expandafter\def\csname simpleicon@githubicon\endcsname {\simpleiconsmapfive\symbol{47}}
- \expandafter\def\csname simpleicon@githubactionsicon\endcsname {\simpleiconsmapfive\symbol{48}}
- \expandafter\def\csname simpleicon@githubcopiloticon\endcsname {\simpleiconsmapfive\symbol{49}}
- \expandafter\def\csname simpleicon@githubpagesicon\endcsname {\simpleiconsmapfive\symbol{50}}
- \expandafter\def\csname simpleicon@githubsponsorsicon\endcsname {\simpleiconsmapfive\symbol{51}}
- \expandafter\def\csname simpleicon@gitignoredotioicon\endcsname {\simpleiconsmapfive\symbol{52}}
- \expandafter\def\csname simpleicon@gitkrakenicon\endcsname {\simpleiconsmapfive\symbol{53}}
- \expandafter\def\csname simpleicon@gitlabicon\endcsname {\simpleiconsmapfive\symbol{54}}
- \expandafter\def\csname simpleicon@gitlfsicon\endcsname {\simpleiconsmapfive\symbol{55}}
- \expandafter\def\csname simpleicon@gitpodicon\endcsname {\simpleiconsmapfive\symbol{56}}
- \expandafter\def\csname simpleicon@gittericon\endcsname {\simpleiconsmapfive\symbol{57}}
- \expandafter\def\csname simpleicon@glassdooricon\endcsname {\simpleiconsmapfive\symbol{58}}
- \expandafter\def\csname simpleicon@glideicon\endcsname {\simpleiconsmapfive\symbol{59}}
- \expandafter\def\csname simpleicon@glitchicon\endcsname {\simpleiconsmapfive\symbol{60}}
- \expandafter\def\csname simpleicon@globusicon\endcsname {\simpleiconsmapfive\symbol{61}}
- \expandafter\def\csname simpleicon@glovoicon\endcsname {\simpleiconsmapfive\symbol{62}}
- \expandafter\def\csname simpleicon@gmailicon\endcsname {\simpleiconsmapfive\symbol{63}}
- \expandafter\def\csname simpleicon@gnomeicon\endcsname {\simpleiconsmapfive\symbol{64}}
- \expandafter\def\csname simpleicon@gnometerminalicon\endcsname {\simpleiconsmapfive\symbol{65}}
- \expandafter\def\csname simpleicon@gnuicon\endcsname {\simpleiconsmapfive\symbol{66}}
- \expandafter\def\csname simpleicon@gnubashicon\endcsname {\simpleiconsmapfive\symbol{67}}
- \expandafter\def\csname simpleicon@gnuemacsicon\endcsname {\simpleiconsmapfive\symbol{68}}
- \expandafter\def\csname simpleicon@gnuicecaticon\endcsname {\simpleiconsmapfive\symbol{69}}
- \expandafter\def\csname simpleicon@gnuprivacyguardicon\endcsname {\simpleiconsmapfive\symbol{70}}
- \expandafter\def\csname simpleicon@gnusocialicon\endcsname {\simpleiconsmapfive\symbol{71}}
- \expandafter\def\csname simpleicon@goicon\endcsname {\simpleiconsmapfive\symbol{72}}
- \expandafter\def\csname simpleicon@gocdicon\endcsname {\simpleiconsmapfive\symbol{73}}
- \expandafter\def\csname simpleicon@godaddyicon\endcsname {\simpleiconsmapfive\symbol{74}}
- \expandafter\def\csname simpleicon@godotengineicon\endcsname {\simpleiconsmapfive\symbol{75}}
- \expandafter\def\csname simpleicon@gofundmeicon\endcsname {\simpleiconsmapfive\symbol{76}}
- \expandafter\def\csname simpleicon@gogdotcomicon\endcsname {\simpleiconsmapfive\symbol{77}}
- \expandafter\def\csname simpleicon@gojekicon\endcsname {\simpleiconsmapfive\symbol{78}}
- \expandafter\def\csname simpleicon@golandicon\endcsname {\simpleiconsmapfive\symbol{79}}
- \expandafter\def\csname simpleicon@goldenlineicon\endcsname {\simpleiconsmapfive\symbol{80}}
- \expandafter\def\csname simpleicon@goldmansachsicon\endcsname {\simpleiconsmapfive\symbol{81}}
- \expandafter\def\csname simpleicon@goodreadsicon\endcsname {\simpleiconsmapfive\symbol{82}}
- \expandafter\def\csname simpleicon@googleicon\endcsname {\simpleiconsmapfive\symbol{83}}
- \expandafter\def\csname simpleicon@googleadmobicon\endcsname {\simpleiconsmapfive\symbol{84}}
- \expandafter\def\csname simpleicon@googleadsicon\endcsname {\simpleiconsmapfive\symbol{85}}
- \expandafter\def\csname simpleicon@googleadsenseicon\endcsname {\simpleiconsmapfive\symbol{86}}
- \expandafter\def\csname simpleicon@googleanalyticsicon\endcsname {\simpleiconsmapfive\symbol{87}}
- \expandafter\def\csname simpleicon@googleappsscripticon\endcsname {\simpleiconsmapfive\symbol{88}}
- \expandafter\def\csname simpleicon@googleassistanticon\endcsname {\simpleiconsmapfive\symbol{89}}
- \expandafter\def\csname simpleicon@googleauthenticatoricon\endcsname {\simpleiconsmapfive\symbol{90}}
- \expandafter\def\csname simpleicon@googlebigqueryicon\endcsname {\simpleiconsmapfive\symbol{91}}
- \expandafter\def\csname simpleicon@googlebigtableicon\endcsname {\simpleiconsmapfive\symbol{92}}
- \expandafter\def\csname simpleicon@googlecalendaricon\endcsname {\simpleiconsmapfive\symbol{93}}
- \expandafter\def\csname simpleicon@googlecampaignmanager360icon\endcsname {\simpleiconsmapfive\symbol{94}}
- \expandafter\def\csname simpleicon@googlecardboardicon\endcsname {\simpleiconsmapfive\symbol{95}}
- \expandafter\def\csname simpleicon@googlechaticon\endcsname {\simpleiconsmapfive\symbol{96}}
- \expandafter\def\csname simpleicon@googlechromeicon\endcsname {\simpleiconsmapfive\symbol{97}}
- \expandafter\def\csname simpleicon@googlechronicleicon\endcsname {\simpleiconsmapfive\symbol{98}}
- \expandafter\def\csname simpleicon@googleclassroomicon\endcsname {\simpleiconsmapfive\symbol{99}}
- \expandafter\def\csname simpleicon@googlecloudicon\endcsname {\simpleiconsmapfive\symbol{100}}
- \expandafter\def\csname simpleicon@googlecloudcomposericon\endcsname {\simpleiconsmapfive\symbol{101}}
- \expandafter\def\csname simpleicon@googlecloudspannericon\endcsname {\simpleiconsmapfive\symbol{102}}
- \expandafter\def\csname simpleicon@googlecloudstorageicon\endcsname {\simpleiconsmapfive\symbol{103}}
- \expandafter\def\csname simpleicon@googlecolabicon\endcsname {\simpleiconsmapfive\symbol{104}}
- \expandafter\def\csname simpleicon@googlecontaineroptimizedosicon\endcsname {\simpleiconsmapfive\symbol{105}}
- \expandafter\def\csname simpleicon@googledataflowicon\endcsname {\simpleiconsmapfive\symbol{106}}
- \expandafter\def\csname simpleicon@googledataprocicon\endcsname {\simpleiconsmapfive\symbol{107}}
- \expandafter\def\csname simpleicon@googledatastudioicon\endcsname {\simpleiconsmapfive\symbol{108}}
- \expandafter\def\csname simpleicon@googledisplayandvideo360icon\endcsname {\simpleiconsmapfive\symbol{109}}
- \expandafter\def\csname simpleicon@googledocsicon\endcsname {\simpleiconsmapfive\symbol{110}}
- \expandafter\def\csname simpleicon@googledomainsicon\endcsname {\simpleiconsmapfive\symbol{111}}
- \expandafter\def\csname simpleicon@googledriveicon\endcsname {\simpleiconsmapfive\symbol{112}}
- \expandafter\def\csname simpleicon@googleearthicon\endcsname {\simpleiconsmapfive\symbol{113}}
- \expandafter\def\csname simpleicon@googleearthengineicon\endcsname {\simpleiconsmapfive\symbol{114}}
- \expandafter\def\csname simpleicon@googlefiticon\endcsname {\simpleiconsmapfive\symbol{115}}
- \expandafter\def\csname simpleicon@googlefontsicon\endcsname {\simpleiconsmapfive\symbol{116}}
- \expandafter\def\csname simpleicon@googleformsicon\endcsname {\simpleiconsmapfive\symbol{117}}
- \expandafter\def\csname simpleicon@googlegeminiicon\endcsname {\simpleiconsmapfive\symbol{118}}
- \expandafter\def\csname simpleicon@googlehangoutsicon\endcsname {\simpleiconsmapfive\symbol{119}}
- \expandafter\def\csname simpleicon@googlehomeicon\endcsname {\simpleiconsmapfive\symbol{120}}
- \expandafter\def\csname simpleicon@googlekeepicon\endcsname {\simpleiconsmapfive\symbol{121}}
- \expandafter\def\csname simpleicon@googlelensicon\endcsname {\simpleiconsmapfive\symbol{122}}
- \expandafter\def\csname simpleicon@googlemapsicon\endcsname {\simpleiconsmapfive\symbol{123}}
- \expandafter\def\csname simpleicon@googlemarketingplatformicon\endcsname {\simpleiconsmapfive\symbol{124}}
- \expandafter\def\csname simpleicon@googlemeeticon\endcsname {\simpleiconsmapfive\symbol{125}}
- \expandafter\def\csname simpleicon@googlemessagesicon\endcsname {\simpleiconsmapfive\symbol{126}}
- \expandafter\def\csname simpleicon@googlemybusinessicon\endcsname {\simpleiconsmapfive\symbol{127}}
- \expandafter\def\csname simpleicon@googlenearbyicon\endcsname {\simpleiconsmapfive\symbol{128}}
- \expandafter\def\csname simpleicon@googlenewsicon\endcsname {\simpleiconsmapfive\symbol{129}}
- \expandafter\def\csname simpleicon@googleoptimizeicon\endcsname {\simpleiconsmapfive\symbol{130}}
- \expandafter\def\csname simpleicon@googlepayicon\endcsname {\simpleiconsmapfive\symbol{131}}
- \expandafter\def\csname simpleicon@googlephotosicon\endcsname {\simpleiconsmapfive\symbol{132}}
- \expandafter\def\csname simpleicon@googleplayicon\endcsname {\simpleiconsmapfive\symbol{133}}
- \expandafter\def\csname simpleicon@googlepodcastsicon\endcsname {\simpleiconsmapfive\symbol{134}}
+ \expandafter\def\csname simpleicon@caprovericon\endcsname {\simpleiconsmaptwo\symbol{209}}
+ \expandafter\def\csname simpleicon@cardanoicon\endcsname {\simpleiconsmaptwo\symbol{210}}
+ \expandafter\def\csname simpleicon@carlsberggroupicon\endcsname {\simpleiconsmaptwo\symbol{211}}
+ \expandafter\def\csname simpleicon@carrdicon\endcsname {\simpleiconsmaptwo\symbol{212}}
+ \expandafter\def\csname simpleicon@carrefouricon\endcsname {\simpleiconsmaptwo\symbol{213}}
+ \expandafter\def\csname simpleicon@carthrottleicon\endcsname {\simpleiconsmaptwo\symbol{214}}
+ \expandafter\def\csname simpleicon@cartoicon\endcsname {\simpleiconsmaptwo\symbol{215}}
+ \expandafter\def\csname simpleicon@cashappicon\endcsname {\simpleiconsmaptwo\symbol{216}}
+ \expandafter\def\csname simpleicon@castboxicon\endcsname {\simpleiconsmaptwo\symbol{217}}
+ \expandafter\def\csname simpleicon@castoramaicon\endcsname {\simpleiconsmaptwo\symbol{218}}
+ \expandafter\def\csname simpleicon@castroicon\endcsname {\simpleiconsmaptwo\symbol{219}}
+ \expandafter\def\csname simpleicon@caterpillaricon\endcsname {\simpleiconsmaptwo\symbol{220}}
+ \expandafter\def\csname simpleicon@cbcicon\endcsname {\simpleiconsmaptwo\symbol{221}}
+ \expandafter\def\csname simpleicon@cbsicon\endcsname {\simpleiconsmaptwo\symbol{222}}
+ \expandafter\def\csname simpleicon@ccleanericon\endcsname {\simpleiconsmaptwo\symbol{223}}
+ \expandafter\def\csname simpleicon@cdprojekticon\endcsname {\simpleiconsmaptwo\symbol{224}}
+ \expandafter\def\csname simpleicon@celeryicon\endcsname {\simpleiconsmaptwo\symbol{225}}
+ \expandafter\def\csname simpleicon@celestronicon\endcsname {\simpleiconsmaptwo\symbol{226}}
+ \expandafter\def\csname simpleicon@centosicon\endcsname {\simpleiconsmaptwo\symbol{227}}
+ \expandafter\def\csname simpleicon@cephicon\endcsname {\simpleiconsmaptwo\symbol{228}}
+ \expandafter\def\csname simpleicon@cesiumicon\endcsname {\simpleiconsmaptwo\symbol{229}}
+ \expandafter\def\csname simpleicon@chaiicon\endcsname {\simpleiconsmaptwo\symbol{230}}
+ \expandafter\def\csname simpleicon@chainguardicon\endcsname {\simpleiconsmaptwo\symbol{231}}
+ \expandafter\def\csname simpleicon@chainlinkicon\endcsname {\simpleiconsmaptwo\symbol{232}}
+ \expandafter\def\csname simpleicon@chakrauiicon\endcsname {\simpleiconsmaptwo\symbol{233}}
+ \expandafter\def\csname simpleicon@channel4icon\endcsname {\simpleiconsmaptwo\symbol{234}}
+ \expandafter\def\csname simpleicon@charlesicon\endcsname {\simpleiconsmaptwo\symbol{235}}
+ \expandafter\def\csname simpleicon@chartdotjsicon\endcsname {\simpleiconsmaptwo\symbol{236}}
+ \expandafter\def\csname simpleicon@chartmogulicon\endcsname {\simpleiconsmaptwo\symbol{237}}
+ \expandafter\def\csname simpleicon@chaseicon\endcsname {\simpleiconsmaptwo\symbol{238}}
+ \expandafter\def\csname simpleicon@chatboticon\endcsname {\simpleiconsmaptwo\symbol{239}}
+ \expandafter\def\csname simpleicon@chatwooticon\endcsname {\simpleiconsmaptwo\symbol{240}}
+ \expandafter\def\csname simpleicon@checkioicon\endcsname {\simpleiconsmaptwo\symbol{241}}
+ \expandafter\def\csname simpleicon@checkmarxicon\endcsname {\simpleiconsmaptwo\symbol{242}}
+ \expandafter\def\csname simpleicon@checkmkicon\endcsname {\simpleiconsmaptwo\symbol{243}}
+ \expandafter\def\csname simpleicon@chedrauiicon\endcsname {\simpleiconsmaptwo\symbol{244}}
+ \expandafter\def\csname simpleicon@cheerioicon\endcsname {\simpleiconsmaptwo\symbol{245}}
+ \expandafter\def\csname simpleicon@cheficon\endcsname {\simpleiconsmaptwo\symbol{246}}
+ \expandafter\def\csname simpleicon@chemexicon\endcsname {\simpleiconsmaptwo\symbol{247}}
+ \expandafter\def\csname simpleicon@chessdotcomicon\endcsname {\simpleiconsmaptwo\symbol{248}}
+ \expandafter\def\csname simpleicon@chevroleticon\endcsname {\simpleiconsmaptwo\symbol{249}}
+ \expandafter\def\csname simpleicon@chianetworkicon\endcsname {\simpleiconsmaptwo\symbol{250}}
+ \expandafter\def\csname simpleicon@chinaeasternairlinesicon\endcsname {\simpleiconsmaptwo\symbol{251}}
+ \expandafter\def\csname simpleicon@chinasouthernairlinesicon\endcsname {\simpleiconsmaptwo\symbol{252}}
+ \expandafter\def\csname simpleicon@chocolateyicon\endcsname {\simpleiconsmaptwo\symbol{253}}
+ \expandafter\def\csname simpleicon@chromaticicon\endcsname {\simpleiconsmaptwo\symbol{254}}
+ \expandafter\def\csname simpleicon@chromecasticon\endcsname {\simpleiconsmaptwo\symbol{255}}
+ \expandafter\def\csname simpleicon@chromewebstoreicon\endcsname {\simpleiconsmapthree\symbol{0}}
+ \expandafter\def\csname simpleicon@chryslericon\endcsname {\simpleiconsmapthree\symbol{1}}
+ \expandafter\def\csname simpleicon@chupachupsicon\endcsname {\simpleiconsmapthree\symbol{2}}
+ \expandafter\def\csname simpleicon@ciliumicon\endcsname {\simpleiconsmapthree\symbol{3}}
+ \expandafter\def\csname simpleicon@cinema4dicon\endcsname {\simpleiconsmapthree\symbol{4}}
+ \expandafter\def\csname simpleicon@circleicon\endcsname {\simpleiconsmapthree\symbol{5}}
+ \expandafter\def\csname simpleicon@circleciicon\endcsname {\simpleiconsmapthree\symbol{6}}
+ \expandafter\def\csname simpleicon@circuitverseicon\endcsname {\simpleiconsmapthree\symbol{7}}
+ \expandafter\def\csname simpleicon@cirrusciicon\endcsname {\simpleiconsmapthree\symbol{8}}
+ \expandafter\def\csname simpleicon@ciscoicon\endcsname {\simpleiconsmapthree\symbol{9}}
+ \expandafter\def\csname simpleicon@citrixicon\endcsname {\simpleiconsmapthree\symbol{10}}
+ \expandafter\def\csname simpleicon@citroenicon\endcsname {\simpleiconsmapthree\symbol{11}}
+ \expandafter\def\csname simpleicon@civicrmicon\endcsname {\simpleiconsmapthree\symbol{12}}
+ \expandafter\def\csname simpleicon@civoicon\endcsname {\simpleiconsmapthree\symbol{13}}
+ \expandafter\def\csname simpleicon@ckeditor4icon\endcsname {\simpleiconsmapthree\symbol{14}}
+ \expandafter\def\csname simpleicon@clarifaiicon\endcsname {\simpleiconsmapthree\symbol{15}}
+ \expandafter\def\csname simpleicon@clarisicon\endcsname {\simpleiconsmapthree\symbol{16}}
+ \expandafter\def\csname simpleicon@clarivateicon\endcsname {\simpleiconsmapthree\symbol{17}}
+ \expandafter\def\csname simpleicon@clerkicon\endcsname {\simpleiconsmapthree\symbol{18}}
+ \expandafter\def\csname simpleicon@clevercloudicon\endcsname {\simpleiconsmapthree\symbol{19}}
+ \expandafter\def\csname simpleicon@clickhouseicon\endcsname {\simpleiconsmapthree\symbol{20}}
+ \expandafter\def\csname simpleicon@clickupicon\endcsname {\simpleiconsmapthree\symbol{21}}
+ \expandafter\def\csname simpleicon@clionicon\endcsname {\simpleiconsmapthree\symbol{22}}
+ \expandafter\def\csname simpleicon@cliqzicon\endcsname {\simpleiconsmapthree\symbol{23}}
+ \expandafter\def\csname simpleicon@clockifyicon\endcsname {\simpleiconsmapthree\symbol{24}}
+ \expandafter\def\csname simpleicon@clojureicon\endcsname {\simpleiconsmapthree\symbol{25}}
+ \expandafter\def\csname simpleicon@cloud66icon\endcsname {\simpleiconsmapthree\symbol{26}}
+ \expandafter\def\csname simpleicon@cloudbeesicon\endcsname {\simpleiconsmapthree\symbol{27}}
+ \expandafter\def\csname simpleicon@cloudcannonicon\endcsname {\simpleiconsmapthree\symbol{28}}
+ \expandafter\def\csname simpleicon@clouderaicon\endcsname {\simpleiconsmapthree\symbol{29}}
+ \expandafter\def\csname simpleicon@cloudflareicon\endcsname {\simpleiconsmapthree\symbol{30}}
+ \expandafter\def\csname simpleicon@cloudflarepagesicon\endcsname {\simpleiconsmapthree\symbol{31}}
+ \expandafter\def\csname simpleicon@cloudflareworkersicon\endcsname {\simpleiconsmapthree\symbol{32}}
+ \expandafter\def\csname simpleicon@cloudfoundryicon\endcsname {\simpleiconsmapthree\symbol{33}}
+ \expandafter\def\csname simpleicon@cloudinaryicon\endcsname {\simpleiconsmapthree\symbol{34}}
+ \expandafter\def\csname simpleicon@cloudronicon\endcsname {\simpleiconsmapthree\symbol{35}}
+ \expandafter\def\csname simpleicon@cloudsmithicon\endcsname {\simpleiconsmapthree\symbol{36}}
+ \expandafter\def\csname simpleicon@cloudwaysicon\endcsname {\simpleiconsmapthree\symbol{37}}
+ \expandafter\def\csname simpleicon@clubforceicon\endcsname {\simpleiconsmapthree\symbol{38}}
+ \expandafter\def\csname simpleicon@clubhouseicon\endcsname {\simpleiconsmapthree\symbol{39}}
+ \expandafter\def\csname simpleicon@clypicon\endcsname {\simpleiconsmapthree\symbol{40}}
+ \expandafter\def\csname simpleicon@cmakeicon\endcsname {\simpleiconsmapthree\symbol{41}}
+ \expandafter\def\csname simpleicon@cncficon\endcsname {\simpleiconsmapthree\symbol{42}}
+ \expandafter\def\csname simpleicon@cneticon\endcsname {\simpleiconsmapthree\symbol{43}}
+ \expandafter\def\csname simpleicon@cnnicon\endcsname {\simpleiconsmapthree\symbol{44}}
+ \expandafter\def\csname simpleicon@cocacolaicon\endcsname {\simpleiconsmapthree\symbol{45}}
+ \expandafter\def\csname simpleicon@cockpiticon\endcsname {\simpleiconsmapthree\symbol{46}}
+ \expandafter\def\csname simpleicon@cockroachlabsicon\endcsname {\simpleiconsmapthree\symbol{47}}
+ \expandafter\def\csname simpleicon@cocoapodsicon\endcsname {\simpleiconsmapthree\symbol{48}}
+ \expandafter\def\csname simpleicon@cocosicon\endcsname {\simpleiconsmapthree\symbol{49}}
+ \expandafter\def\csname simpleicon@codaicon\endcsname {\simpleiconsmapthree\symbol{50}}
+ \expandafter\def\csname simpleicon@codacyicon\endcsname {\simpleiconsmapthree\symbol{51}}
+ \expandafter\def\csname simpleicon@codebergicon\endcsname {\simpleiconsmapthree\symbol{52}}
+ \expandafter\def\csname simpleicon@codeblocksicon\endcsname {\simpleiconsmapthree\symbol{53}}
+ \expandafter\def\csname simpleicon@codecademyicon\endcsname {\simpleiconsmapthree\symbol{54}}
+ \expandafter\def\csname simpleicon@codeceptjsicon\endcsname {\simpleiconsmapthree\symbol{55}}
+ \expandafter\def\csname simpleicon@codecheficon\endcsname {\simpleiconsmapthree\symbol{56}}
+ \expandafter\def\csname simpleicon@codeclimateicon\endcsname {\simpleiconsmapthree\symbol{57}}
+ \expandafter\def\csname simpleicon@codecovicon\endcsname {\simpleiconsmapthree\symbol{58}}
+ \expandafter\def\csname simpleicon@codecraftersicon\endcsname {\simpleiconsmapthree\symbol{59}}
+ \expandafter\def\csname simpleicon@codefactoricon\endcsname {\simpleiconsmapthree\symbol{60}}
+ \expandafter\def\csname simpleicon@codeforcesicon\endcsname {\simpleiconsmapthree\symbol{61}}
+ \expandafter\def\csname simpleicon@codefreshicon\endcsname {\simpleiconsmapthree\symbol{62}}
+ \expandafter\def\csname simpleicon@codeignitericon\endcsname {\simpleiconsmapthree\symbol{63}}
+ \expandafter\def\csname simpleicon@codeiumicon\endcsname {\simpleiconsmapthree\symbol{64}}
+ \expandafter\def\csname simpleicon@codemagicicon\endcsname {\simpleiconsmapthree\symbol{65}}
+ \expandafter\def\csname simpleicon@codementoricon\endcsname {\simpleiconsmapthree\symbol{66}}
+ \expandafter\def\csname simpleicon@codemirroricon\endcsname {\simpleiconsmapthree\symbol{67}}
+ \expandafter\def\csname simpleicon@codenewbieicon\endcsname {\simpleiconsmapthree\symbol{68}}
+ \expandafter\def\csname simpleicon@codepenicon\endcsname {\simpleiconsmapthree\symbol{69}}
+ \expandafter\def\csname simpleicon@codeprojecticon\endcsname {\simpleiconsmapthree\symbol{70}}
+ \expandafter\def\csname simpleicon@codericon\endcsname {\simpleiconsmapthree\symbol{71}}
+ \expandafter\def\csname simpleicon@codersrankicon\endcsname {\simpleiconsmapthree\symbol{72}}
+ \expandafter\def\csname simpleicon@coderwallicon\endcsname {\simpleiconsmapthree\symbol{73}}
+ \expandafter\def\csname simpleicon@codesandboxicon\endcsname {\simpleiconsmapthree\symbol{74}}
+ \expandafter\def\csname simpleicon@codeshipicon\endcsname {\simpleiconsmapthree\symbol{75}}
+ \expandafter\def\csname simpleicon@codesignalicon\endcsname {\simpleiconsmapthree\symbol{76}}
+ \expandafter\def\csname simpleicon@codestreamicon\endcsname {\simpleiconsmapthree\symbol{77}}
+ \expandafter\def\csname simpleicon@codewarsicon\endcsname {\simpleiconsmapthree\symbol{78}}
+ \expandafter\def\csname simpleicon@codingameicon\endcsname {\simpleiconsmapthree\symbol{79}}
+ \expandafter\def\csname simpleicon@codingninjasicon\endcsname {\simpleiconsmapthree\symbol{80}}
+ \expandafter\def\csname simpleicon@codioicon\endcsname {\simpleiconsmapthree\symbol{81}}
+ \expandafter\def\csname simpleicon@coffeescripticon\endcsname {\simpleiconsmapthree\symbol{82}}
+ \expandafter\def\csname simpleicon@coggleicon\endcsname {\simpleiconsmapthree\symbol{83}}
+ \expandafter\def\csname simpleicon@cognizanticon\endcsname {\simpleiconsmapthree\symbol{84}}
+ \expandafter\def\csname simpleicon@coilicon\endcsname {\simpleiconsmapthree\symbol{85}}
+ \expandafter\def\csname simpleicon@coinbaseicon\endcsname {\simpleiconsmapthree\symbol{86}}
+ \expandafter\def\csname simpleicon@coinmarketcapicon\endcsname {\simpleiconsmapthree\symbol{87}}
+ \expandafter\def\csname simpleicon@comicfuryicon\endcsname {\simpleiconsmapthree\symbol{88}}
+ \expandafter\def\csname simpleicon@commaicon\endcsname {\simpleiconsmapthree\symbol{89}}
+ \expandafter\def\csname simpleicon@commerzbankicon\endcsname {\simpleiconsmapthree\symbol{90}}
+ \expandafter\def\csname simpleicon@commitlinticon\endcsname {\simpleiconsmapthree\symbol{91}}
+ \expandafter\def\csname simpleicon@commodoreicon\endcsname {\simpleiconsmapthree\symbol{92}}
+ \expandafter\def\csname simpleicon@commonworkflowlanguageicon\endcsname {\simpleiconsmapthree\symbol{93}}
+ \expandafter\def\csname simpleicon@compilerexplorericon\endcsname {\simpleiconsmapthree\symbol{94}}
+ \expandafter\def\csname simpleicon@composericon\endcsname {\simpleiconsmapthree\symbol{95}}
+ \expandafter\def\csname simpleicon@comptiaicon\endcsname {\simpleiconsmapthree\symbol{96}}
+ \expandafter\def\csname simpleicon@comsolicon\endcsname {\simpleiconsmapthree\symbol{97}}
+ \expandafter\def\csname simpleicon@conanicon\endcsname {\simpleiconsmapthree\symbol{98}}
+ \expandafter\def\csname simpleicon@concourseicon\endcsname {\simpleiconsmapthree\symbol{99}}
+ \expandafter\def\csname simpleicon@condaforgeicon\endcsname {\simpleiconsmapthree\symbol{100}}
+ \expandafter\def\csname simpleicon@conektaicon\endcsname {\simpleiconsmapthree\symbol{101}}
+ \expandafter\def\csname simpleicon@confluenceicon\endcsname {\simpleiconsmapthree\symbol{102}}
+ \expandafter\def\csname simpleicon@construct3icon\endcsname {\simpleiconsmapthree\symbol{103}}
+ \expandafter\def\csname simpleicon@consulicon\endcsname {\simpleiconsmapthree\symbol{104}}
+ \expandafter\def\csname simpleicon@contaboicon\endcsname {\simpleiconsmapthree\symbol{105}}
+ \expandafter\def\csname simpleicon@contactlesspaymenticon\endcsname {\simpleiconsmapthree\symbol{106}}
+ \expandafter\def\csname simpleicon@containerdicon\endcsname {\simpleiconsmapthree\symbol{107}}
+ \expandafter\def\csname simpleicon@contaoicon\endcsname {\simpleiconsmapthree\symbol{108}}
+ \expandafter\def\csname simpleicon@contentfulicon\endcsname {\simpleiconsmapthree\symbol{109}}
+ \expandafter\def\csname simpleicon@contentstackicon\endcsname {\simpleiconsmapthree\symbol{110}}
+ \expandafter\def\csname simpleicon@contributorcovenanticon\endcsname {\simpleiconsmapthree\symbol{111}}
+ \expandafter\def\csname simpleicon@conventionalcommitsicon\endcsname {\simpleiconsmapthree\symbol{112}}
+ \expandafter\def\csname simpleicon@convertioicon\endcsname {\simpleiconsmapthree\symbol{113}}
+ \expandafter\def\csname simpleicon@cookiecuttericon\endcsname {\simpleiconsmapthree\symbol{114}}
+ \expandafter\def\csname simpleicon@coolermastericon\endcsname {\simpleiconsmapthree\symbol{115}}
+ \expandafter\def\csname simpleicon@coopicon\endcsname {\simpleiconsmapthree\symbol{116}}
+ \expandafter\def\csname simpleicon@copaairlinesicon\endcsname {\simpleiconsmapthree\symbol{117}}
+ \expandafter\def\csname simpleicon@coppelicon\endcsname {\simpleiconsmapthree\symbol{118}}
+ \expandafter\def\csname simpleicon@coraicon\endcsname {\simpleiconsmapthree\symbol{119}}
+ \expandafter\def\csname simpleicon@coreldrawicon\endcsname {\simpleiconsmapthree\symbol{120}}
+ \expandafter\def\csname simpleicon@coronaengineicon\endcsname {\simpleiconsmapthree\symbol{121}}
+ \expandafter\def\csname simpleicon@coronarenderericon\endcsname {\simpleiconsmapthree\symbol{122}}
+ \expandafter\def\csname simpleicon@corsairicon\endcsname {\simpleiconsmapthree\symbol{123}}
+ \expandafter\def\csname simpleicon@couchbaseicon\endcsname {\simpleiconsmapthree\symbol{124}}
+ \expandafter\def\csname simpleicon@counterstrikeicon\endcsname {\simpleiconsmapthree\symbol{125}}
+ \expandafter\def\csname simpleicon@countingworksproicon\endcsname {\simpleiconsmapthree\symbol{126}}
+ \expandafter\def\csname simpleicon@courseraicon\endcsname {\simpleiconsmapthree\symbol{127}}
+ \expandafter\def\csname simpleicon@coverallsicon\endcsname {\simpleiconsmapthree\symbol{128}}
+ \expandafter\def\csname simpleicon@cozeicon\endcsname {\simpleiconsmapthree\symbol{129}}
+ \expandafter\def\csname simpleicon@cpanelicon\endcsname {\simpleiconsmapthree\symbol{130}}
+ \expandafter\def\csname simpleicon@cplusplusicon\endcsname {\simpleiconsmapthree\symbol{131}}
+ \expandafter\def\csname simpleicon@cplusplusbuildericon\endcsname {\simpleiconsmapthree\symbol{132}}
+ \expandafter\def\csname simpleicon@craftcmsicon\endcsname {\simpleiconsmapthree\symbol{133}}
+ \expandafter\def\csname simpleicon@craftsmanicon\endcsname {\simpleiconsmapthree\symbol{134}}
+ \expandafter\def\csname simpleicon@cratedbicon\endcsname {\simpleiconsmapthree\symbol{135}}
+ \expandafter\def\csname simpleicon@crayonicon\endcsname {\simpleiconsmapthree\symbol{136}}
+ \expandafter\def\csname simpleicon@crealityicon\endcsname {\simpleiconsmapthree\symbol{137}}
+ \expandafter\def\csname simpleicon@createreactappicon\endcsname {\simpleiconsmapthree\symbol{138}}
+ \expandafter\def\csname simpleicon@creativecommonsicon\endcsname {\simpleiconsmapthree\symbol{139}}
+ \expandafter\def\csname simpleicon@creativetechnologyicon\endcsname {\simpleiconsmapthree\symbol{140}}
+ \expandafter\def\csname simpleicon@credlyicon\endcsname {\simpleiconsmapthree\symbol{141}}
+ \expandafter\def\csname simpleicon@crehanaicon\endcsname {\simpleiconsmapthree\symbol{142}}
+ \expandafter\def\csname simpleicon@crewunitedicon\endcsname {\simpleiconsmapthree\symbol{143}}
+ \expandafter\def\csname simpleicon@criticalroleicon\endcsname {\simpleiconsmapthree\symbol{144}}
+ \expandafter\def\csname simpleicon@crowdinicon\endcsname {\simpleiconsmapthree\symbol{145}}
+ \expandafter\def\csname simpleicon@crowdsourceicon\endcsname {\simpleiconsmapthree\symbol{146}}
+ \expandafter\def\csname simpleicon@crunchbaseicon\endcsname {\simpleiconsmapthree\symbol{147}}
+ \expandafter\def\csname simpleicon@crunchyrollicon\endcsname {\simpleiconsmapthree\symbol{148}}
+ \expandafter\def\csname simpleicon@cryengineicon\endcsname {\simpleiconsmapthree\symbol{149}}
+ \expandafter\def\csname simpleicon@cryptpadicon\endcsname {\simpleiconsmapthree\symbol{150}}
+ \expandafter\def\csname simpleicon@crystalicon\endcsname {\simpleiconsmapthree\symbol{151}}
+ \expandafter\def\csname simpleicon@csdnicon\endcsname {\simpleiconsmapthree\symbol{152}}
+ \expandafter\def\csname simpleicon@css3icon\endcsname {\simpleiconsmapthree\symbol{153}}
+ \expandafter\def\csname simpleicon@cssdesignawardsicon\endcsname {\simpleiconsmapthree\symbol{154}}
+ \expandafter\def\csname simpleicon@cssmodulesicon\endcsname {\simpleiconsmapthree\symbol{155}}
+ \expandafter\def\csname simpleicon@csswizardryicon\endcsname {\simpleiconsmapthree\symbol{156}}
+ \expandafter\def\csname simpleicon@ctsicon\endcsname {\simpleiconsmapthree\symbol{157}}
+ \expandafter\def\csname simpleicon@cucumbericon\endcsname {\simpleiconsmapthree\symbol{158}}
+ \expandafter\def\csname simpleicon@culturaicon\endcsname {\simpleiconsmapthree\symbol{159}}
+ \expandafter\def\csname simpleicon@curlicon\endcsname {\simpleiconsmapthree\symbol{160}}
+ \expandafter\def\csname simpleicon@curseforgeicon\endcsname {\simpleiconsmapthree\symbol{161}}
+ \expandafter\def\csname simpleicon@custominkicon\endcsname {\simpleiconsmapthree\symbol{162}}
+ \expandafter\def\csname simpleicon@cyberdefendersicon\endcsname {\simpleiconsmapthree\symbol{163}}
+ \expandafter\def\csname simpleicon@cycling74icon\endcsname {\simpleiconsmapthree\symbol{164}}
+ \expandafter\def\csname simpleicon@cypressicon\endcsname {\simpleiconsmapthree\symbol{165}}
+ \expandafter\def\csname simpleicon@cytoscapedotjsicon\endcsname {\simpleiconsmapthree\symbol{166}}
+ \expandafter\def\csname simpleicon@dicon\endcsname {\simpleiconsmapthree\symbol{167}}
+ \expandafter\def\csname simpleicon@d3dotjsicon\endcsname {\simpleiconsmapthree\symbol{168}}
+ \expandafter\def\csname simpleicon@daciaicon\endcsname {\simpleiconsmapthree\symbol{169}}
+ \expandafter\def\csname simpleicon@daficon\endcsname {\simpleiconsmapthree\symbol{170}}
+ \expandafter\def\csname simpleicon@dailydotdevicon\endcsname {\simpleiconsmapthree\symbol{171}}
+ \expandafter\def\csname simpleicon@dailymotionicon\endcsname {\simpleiconsmapthree\symbol{172}}
+ \expandafter\def\csname simpleicon@daisyuiicon\endcsname {\simpleiconsmapthree\symbol{173}}
+ \expandafter\def\csname simpleicon@dapricon\endcsname {\simpleiconsmapthree\symbol{174}}
+ \expandafter\def\csname simpleicon@darkreadericon\endcsname {\simpleiconsmapthree\symbol{175}}
+ \expandafter\def\csname simpleicon@darticon\endcsname {\simpleiconsmapthree\symbol{176}}
+ \expandafter\def\csname simpleicon@dartyicon\endcsname {\simpleiconsmapthree\symbol{177}}
+ \expandafter\def\csname simpleicon@dasersteicon\endcsname {\simpleiconsmapthree\symbol{178}}
+ \expandafter\def\csname simpleicon@dashicon\endcsname {\simpleiconsmapthree\symbol{179}}
+ \expandafter\def\csname simpleicon@dashlaneicon\endcsname {\simpleiconsmapthree\symbol{180}}
+ \expandafter\def\csname simpleicon@daskicon\endcsname {\simpleiconsmapthree\symbol{181}}
+ \expandafter\def\csname simpleicon@dassaultsystemesicon\endcsname {\simpleiconsmapthree\symbol{182}}
+ \expandafter\def\csname simpleicon@databricksicon\endcsname {\simpleiconsmapthree\symbol{183}}
+ \expandafter\def\csname simpleicon@datacampicon\endcsname {\simpleiconsmapthree\symbol{184}}
+ \expandafter\def\csname simpleicon@datadogicon\endcsname {\simpleiconsmapthree\symbol{185}}
+ \expandafter\def\csname simpleicon@datadotaiicon\endcsname {\simpleiconsmapthree\symbol{186}}
+ \expandafter\def\csname simpleicon@datagripicon\endcsname {\simpleiconsmapthree\symbol{187}}
+ \expandafter\def\csname simpleicon@dataikuicon\endcsname {\simpleiconsmapthree\symbol{188}}
+ \expandafter\def\csname simpleicon@datastaxicon\endcsname {\simpleiconsmapthree\symbol{189}}
+ \expandafter\def\csname simpleicon@datefnsicon\endcsname {\simpleiconsmapthree\symbol{190}}
+ \expandafter\def\csname simpleicon@datevicon\endcsname {\simpleiconsmapthree\symbol{191}}
+ \expandafter\def\csname simpleicon@datocmsicon\endcsname {\simpleiconsmapthree\symbol{192}}
+ \expandafter\def\csname simpleicon@dattoicon\endcsname {\simpleiconsmapthree\symbol{193}}
+ \expandafter\def\csname simpleicon@davinciresolveicon\endcsname {\simpleiconsmapthree\symbol{194}}
+ \expandafter\def\csname simpleicon@dazhongdianpingicon\endcsname {\simpleiconsmapthree\symbol{195}}
+ \expandafter\def\csname simpleicon@daznicon\endcsname {\simpleiconsmapthree\symbol{196}}
+ \expandafter\def\csname simpleicon@dbeavericon\endcsname {\simpleiconsmapthree\symbol{197}}
+ \expandafter\def\csname simpleicon@dblpicon\endcsname {\simpleiconsmapthree\symbol{198}}
+ \expandafter\def\csname simpleicon@dbticon\endcsname {\simpleiconsmapthree\symbol{199}}
+ \expandafter\def\csname simpleicon@dcentertainmenticon\endcsname {\simpleiconsmapthree\symbol{200}}
+ \expandafter\def\csname simpleicon@debianicon\endcsname {\simpleiconsmapthree\symbol{201}}
+ \expandafter\def\csname simpleicon@decapcmsicon\endcsname {\simpleiconsmapthree\symbol{202}}
+ \expandafter\def\csname simpleicon@decentralandicon\endcsname {\simpleiconsmapthree\symbol{203}}
+ \expandafter\def\csname simpleicon@dedgeicon\endcsname {\simpleiconsmapthree\symbol{204}}
+ \expandafter\def\csname simpleicon@deepcoolicon\endcsname {\simpleiconsmapthree\symbol{205}}
+ \expandafter\def\csname simpleicon@deepgramicon\endcsname {\simpleiconsmapthree\symbol{206}}
+ \expandafter\def\csname simpleicon@deepinicon\endcsname {\simpleiconsmapthree\symbol{207}}
+ \expandafter\def\csname simpleicon@deeplicon\endcsname {\simpleiconsmapthree\symbol{208}}
+ \expandafter\def\csname simpleicon@deepnoteicon\endcsname {\simpleiconsmapthree\symbol{209}}
+ \expandafter\def\csname simpleicon@deliciousicon\endcsname {\simpleiconsmapthree\symbol{210}}
+ \expandafter\def\csname simpleicon@deliverooicon\endcsname {\simpleiconsmapthree\symbol{211}}
+ \expandafter\def\csname simpleicon@dellicon\endcsname {\simpleiconsmapthree\symbol{212}}
+ \expandafter\def\csname simpleicon@delonghiicon\endcsname {\simpleiconsmapthree\symbol{213}}
+ \expandafter\def\csname simpleicon@delphiicon\endcsname {\simpleiconsmapthree\symbol{214}}
+ \expandafter\def\csname simpleicon@deltaicon\endcsname {\simpleiconsmapthree\symbol{215}}
+ \expandafter\def\csname simpleicon@delugeicon\endcsname {\simpleiconsmapthree\symbol{216}}
+ \expandafter\def\csname simpleicon@denoicon\endcsname {\simpleiconsmapthree\symbol{217}}
+ \expandafter\def\csname simpleicon@denonicon\endcsname {\simpleiconsmapthree\symbol{218}}
+ \expandafter\def\csname simpleicon@dependaboticon\endcsname {\simpleiconsmapthree\symbol{219}}
+ \expandafter\def\csname simpleicon@dependencycheckicon\endcsname {\simpleiconsmapthree\symbol{220}}
+ \expandafter\def\csname simpleicon@depositphotosicon\endcsname {\simpleiconsmapthree\symbol{221}}
+ \expandafter\def\csname simpleicon@derspiegelicon\endcsname {\simpleiconsmapthree\symbol{222}}
+ \expandafter\def\csname simpleicon@deutschebahnicon\endcsname {\simpleiconsmapthree\symbol{223}}
+ \expandafter\def\csname simpleicon@deutschebankicon\endcsname {\simpleiconsmapthree\symbol{224}}
+ \expandafter\def\csname simpleicon@deutscheposticon\endcsname {\simpleiconsmapthree\symbol{225}}
+ \expandafter\def\csname simpleicon@deutschewelleicon\endcsname {\simpleiconsmapthree\symbol{226}}
+ \expandafter\def\csname simpleicon@devdottoicon\endcsname {\simpleiconsmapthree\symbol{227}}
+ \expandafter\def\csname simpleicon@devexpressicon\endcsname {\simpleiconsmapthree\symbol{228}}
+ \expandafter\def\csname simpleicon@deviantarticon\endcsname {\simpleiconsmapthree\symbol{229}}
+ \expandafter\def\csname simpleicon@devposticon\endcsname {\simpleiconsmapthree\symbol{230}}
+ \expandafter\def\csname simpleicon@devranticon\endcsname {\simpleiconsmapthree\symbol{231}}
+ \expandafter\def\csname simpleicon@dgraphicon\endcsname {\simpleiconsmapthree\symbol{232}}
+ \expandafter\def\csname simpleicon@dhlicon\endcsname {\simpleiconsmapthree\symbol{233}}
+ \expandafter\def\csname simpleicon@diagramsdotneticon\endcsname {\simpleiconsmapthree\symbol{234}}
+ \expandafter\def\csname simpleicon@dialogflowicon\endcsname {\simpleiconsmapthree\symbol{235}}
+ \expandafter\def\csname simpleicon@diasporaicon\endcsname {\simpleiconsmapthree\symbol{236}}
+ \expandafter\def\csname simpleicon@dictionarydotcomicon\endcsname {\simpleiconsmapthree\symbol{237}}
+ \expandafter\def\csname simpleicon@diggicon\endcsname {\simpleiconsmapthree\symbol{238}}
+ \expandafter\def\csname simpleicon@digikeyelectronicsicon\endcsname {\simpleiconsmapthree\symbol{239}}
+ \expandafter\def\csname simpleicon@digitaloceanicon\endcsname {\simpleiconsmapthree\symbol{240}}
+ \expandafter\def\csname simpleicon@dinersclubicon\endcsname {\simpleiconsmapthree\symbol{241}}
+ \expandafter\def\csname simpleicon@dioricon\endcsname {\simpleiconsmapthree\symbol{242}}
+ \expandafter\def\csname simpleicon@directusicon\endcsname {\simpleiconsmapthree\symbol{243}}
+ \expandafter\def\csname simpleicon@discogsicon\endcsname {\simpleiconsmapthree\symbol{244}}
+ \expandafter\def\csname simpleicon@discordicon\endcsname {\simpleiconsmapthree\symbol{245}}
+ \expandafter\def\csname simpleicon@discourseicon\endcsname {\simpleiconsmapthree\symbol{246}}
+ \expandafter\def\csname simpleicon@discovericon\endcsname {\simpleiconsmapthree\symbol{247}}
+ \expandafter\def\csname simpleicon@disqusicon\endcsname {\simpleiconsmapthree\symbol{248}}
+ \expandafter\def\csname simpleicon@disrooticon\endcsname {\simpleiconsmapthree\symbol{249}}
+ \expandafter\def\csname simpleicon@distrokidicon\endcsname {\simpleiconsmapthree\symbol{250}}
+ \expandafter\def\csname simpleicon@djangoicon\endcsname {\simpleiconsmapthree\symbol{251}}
+ \expandafter\def\csname simpleicon@djiicon\endcsname {\simpleiconsmapthree\symbol{252}}
+ \expandafter\def\csname simpleicon@dlibicon\endcsname {\simpleiconsmapthree\symbol{253}}
+ \expandafter\def\csname simpleicon@dlnaicon\endcsname {\simpleiconsmapthree\symbol{254}}
+ \expandafter\def\csname simpleicon@dmicon\endcsname {\simpleiconsmapthree\symbol{255}}
+ \expandafter\def\csname simpleicon@dockericon\endcsname {\simpleiconsmapfour\symbol{0}}
+ \expandafter\def\csname simpleicon@docsdotrsicon\endcsname {\simpleiconsmapfour\symbol{1}}
+ \expandafter\def\csname simpleicon@docsifyicon\endcsname {\simpleiconsmapfour\symbol{2}}
+ \expandafter\def\csname simpleicon@doctrineicon\endcsname {\simpleiconsmapfour\symbol{3}}
+ \expandafter\def\csname simpleicon@docusaurusicon\endcsname {\simpleiconsmapfour\symbol{4}}
+ \expandafter\def\csname simpleicon@dogecoinicon\endcsname {\simpleiconsmapfour\symbol{5}}
+ \expandafter\def\csname simpleicon@doiicon\endcsname {\simpleiconsmapfour\symbol{6}}
+ \expandafter\def\csname simpleicon@dolbyicon\endcsname {\simpleiconsmapfour\symbol{7}}
+ \expandafter\def\csname simpleicon@doordashicon\endcsname {\simpleiconsmapfour\symbol{8}}
+ \expandafter\def\csname simpleicon@dota2icon\endcsname {\simpleiconsmapfour\symbol{9}}
+ \expandafter\def\csname simpleicon@dotenvicon\endcsname {\simpleiconsmapfour\symbol{10}}
+ \expandafter\def\csname simpleicon@dotneticon\endcsname {\simpleiconsmapfour\symbol{11}}
+ \expandafter\def\csname simpleicon@doubanicon\endcsname {\simpleiconsmapfour\symbol{12}}
+ \expandafter\def\csname simpleicon@doubanreadicon\endcsname {\simpleiconsmapfour\symbol{13}}
+ \expandafter\def\csname simpleicon@dovecoticon\endcsname {\simpleiconsmapfour\symbol{14}}
+ \expandafter\def\csname simpleicon@dovetailicon\endcsname {\simpleiconsmapfour\symbol{15}}
+ \expandafter\def\csname simpleicon@downdetectoricon\endcsname {\simpleiconsmapfour\symbol{16}}
+ \expandafter\def\csname simpleicon@doxygenicon\endcsname {\simpleiconsmapfour\symbol{17}}
+ \expandafter\def\csname simpleicon@dpdicon\endcsname {\simpleiconsmapfour\symbol{18}}
+ \expandafter\def\csname simpleicon@dragonframeicon\endcsname {\simpleiconsmapfour\symbol{19}}
+ \expandafter\def\csname simpleicon@draugiemdotlvicon\endcsname {\simpleiconsmapfour\symbol{20}}
+ \expandafter\def\csname simpleicon@dreamstimeicon\endcsname {\simpleiconsmapfour\symbol{21}}
+ \expandafter\def\csname simpleicon@dribbbleicon\endcsname {\simpleiconsmapfour\symbol{22}}
+ \expandafter\def\csname simpleicon@drizzleicon\endcsname {\simpleiconsmapfour\symbol{23}}
+ \expandafter\def\csname simpleicon@droneicon\endcsname {\simpleiconsmapfour\symbol{24}}
+ \expandafter\def\csname simpleicon@droobleicon\endcsname {\simpleiconsmapfour\symbol{25}}
+ \expandafter\def\csname simpleicon@dropboxicon\endcsname {\simpleiconsmapfour\symbol{26}}
+ \expandafter\def\csname simpleicon@drupalicon\endcsname {\simpleiconsmapfour\symbol{27}}
+ \expandafter\def\csname simpleicon@dsautomobilesicon\endcsname {\simpleiconsmapfour\symbol{28}}
+ \expandafter\def\csname simpleicon@dtsicon\endcsname {\simpleiconsmapfour\symbol{29}}
+ \expandafter\def\csname simpleicon@dtubeicon\endcsname {\simpleiconsmapfour\symbol{30}}
+ \expandafter\def\csname simpleicon@ducatiicon\endcsname {\simpleiconsmapfour\symbol{31}}
+ \expandafter\def\csname simpleicon@duckdbicon\endcsname {\simpleiconsmapfour\symbol{32}}
+ \expandafter\def\csname simpleicon@duckduckgoicon\endcsname {\simpleiconsmapfour\symbol{33}}
+ \expandafter\def\csname simpleicon@dungeonsanddragonsicon\endcsname {\simpleiconsmapfour\symbol{34}}
+ \expandafter\def\csname simpleicon@dunkedicon\endcsname {\simpleiconsmapfour\symbol{35}}
+ \expandafter\def\csname simpleicon@dunzoicon\endcsname {\simpleiconsmapfour\symbol{36}}
+ \expandafter\def\csname simpleicon@duolingoicon\endcsname {\simpleiconsmapfour\symbol{37}}
+ \expandafter\def\csname simpleicon@duplicatiicon\endcsname {\simpleiconsmapfour\symbol{38}}
+ \expandafter\def\csname simpleicon@dvcicon\endcsname {\simpleiconsmapfour\symbol{39}}
+ \expandafter\def\csname simpleicon@dwavesystemsicon\endcsname {\simpleiconsmapfour\symbol{40}}
+ \expandafter\def\csname simpleicon@dwmicon\endcsname {\simpleiconsmapfour\symbol{41}}
+ \expandafter\def\csname simpleicon@dynatraceicon\endcsname {\simpleiconsmapfour\symbol{42}}
+ \expandafter\def\csname simpleicon@eicon\endcsname {\simpleiconsmapfour\symbol{43}}
+ \expandafter\def\csname simpleicon@e3icon\endcsname {\simpleiconsmapfour\symbol{44}}
+ \expandafter\def\csname simpleicon@eaicon\endcsname {\simpleiconsmapfour\symbol{45}}
+ \expandafter\def\csname simpleicon@eagleicon\endcsname {\simpleiconsmapfour\symbol{46}}
+ \expandafter\def\csname simpleicon@easyedaicon\endcsname {\simpleiconsmapfour\symbol{47}}
+ \expandafter\def\csname simpleicon@easyjeticon\endcsname {\simpleiconsmapfour\symbol{48}}
+ \expandafter\def\csname simpleicon@ebayicon\endcsname {\simpleiconsmapfour\symbol{49}}
+ \expandafter\def\csname simpleicon@eboxicon\endcsname {\simpleiconsmapfour\symbol{50}}
+ \expandafter\def\csname simpleicon@eclipseadoptiumicon\endcsname {\simpleiconsmapfour\symbol{51}}
+ \expandafter\def\csname simpleicon@eclipsecheicon\endcsname {\simpleiconsmapfour\symbol{52}}
+ \expandafter\def\csname simpleicon@eclipseideicon\endcsname {\simpleiconsmapfour\symbol{53}}
+ \expandafter\def\csname simpleicon@eclipsejettyicon\endcsname {\simpleiconsmapfour\symbol{54}}
+ \expandafter\def\csname simpleicon@eclipsemosquittoicon\endcsname {\simpleiconsmapfour\symbol{55}}
+ \expandafter\def\csname simpleicon@eclipsevertdotxicon\endcsname {\simpleiconsmapfour\symbol{56}}
+ \expandafter\def\csname simpleicon@ecovacsicon\endcsname {\simpleiconsmapfour\symbol{57}}
+ \expandafter\def\csname simpleicon@edekaicon\endcsname {\simpleiconsmapfour\symbol{58}}
+ \expandafter\def\csname simpleicon@edgeimpulseicon\endcsname {\simpleiconsmapfour\symbol{59}}
+ \expandafter\def\csname simpleicon@editorconfigicon\endcsname {\simpleiconsmapfour\symbol{60}}
+ \expandafter\def\csname simpleicon@edotleclercicon\endcsname {\simpleiconsmapfour\symbol{61}}
+ \expandafter\def\csname simpleicon@educativeicon\endcsname {\simpleiconsmapfour\symbol{62}}
+ \expandafter\def\csname simpleicon@edxicon\endcsname {\simpleiconsmapfour\symbol{63}}
+ \expandafter\def\csname simpleicon@eggheadicon\endcsname {\simpleiconsmapfour\symbol{64}}
+ \expandafter\def\csname simpleicon@egnyteicon\endcsname {\simpleiconsmapfour\symbol{65}}
+ \expandafter\def\csname simpleicon@eighticon\endcsname {\simpleiconsmapfour\symbol{66}}
+ \expandafter\def\csname simpleicon@eightsleepicon\endcsname {\simpleiconsmapfour\symbol{67}}
+ \expandafter\def\csname simpleicon@ejsicon\endcsname {\simpleiconsmapfour\symbol{68}}
+ \expandafter\def\csname simpleicon@elasticicon\endcsname {\simpleiconsmapfour\symbol{69}}
+ \expandafter\def\csname simpleicon@elasticcloudicon\endcsname {\simpleiconsmapfour\symbol{70}}
+ \expandafter\def\csname simpleicon@elasticsearchicon\endcsname {\simpleiconsmapfour\symbol{71}}
+ \expandafter\def\csname simpleicon@elasticstackicon\endcsname {\simpleiconsmapfour\symbol{72}}
+ \expandafter\def\csname simpleicon@elavonicon\endcsname {\simpleiconsmapfour\symbol{73}}
+ \expandafter\def\csname simpleicon@electronicon\endcsname {\simpleiconsmapfour\symbol{74}}
+ \expandafter\def\csname simpleicon@electronbuildericon\endcsname {\simpleiconsmapfour\symbol{75}}
+ \expandafter\def\csname simpleicon@electronfiddleicon\endcsname {\simpleiconsmapfour\symbol{76}}
+ \expandafter\def\csname simpleicon@elegooicon\endcsname {\simpleiconsmapfour\symbol{77}}
+ \expandafter\def\csname simpleicon@elementicon\endcsname {\simpleiconsmapfour\symbol{78}}
+ \expandafter\def\csname simpleicon@elementaryicon\endcsname {\simpleiconsmapfour\symbol{79}}
+ \expandafter\def\csname simpleicon@elementoricon\endcsname {\simpleiconsmapfour\symbol{80}}
+ \expandafter\def\csname simpleicon@eleventyicon\endcsname {\simpleiconsmapfour\symbol{81}}
+ \expandafter\def\csname simpleicon@elgatoicon\endcsname {\simpleiconsmapfour\symbol{82}}
+ \expandafter\def\csname simpleicon@elixiricon\endcsname {\simpleiconsmapfour\symbol{83}}
+ \expandafter\def\csname simpleicon@eljuevesicon\endcsname {\simpleiconsmapfour\symbol{84}}
+ \expandafter\def\csname simpleicon@elloicon\endcsname {\simpleiconsmapfour\symbol{85}}
+ \expandafter\def\csname simpleicon@elmicon\endcsname {\simpleiconsmapfour\symbol{86}}
+ \expandafter\def\csname simpleicon@elseviericon\endcsname {\simpleiconsmapfour\symbol{87}}
+ \expandafter\def\csname simpleicon@embarcaderoicon\endcsname {\simpleiconsmapfour\symbol{88}}
+ \expandafter\def\csname simpleicon@embarkicon\endcsname {\simpleiconsmapfour\symbol{89}}
+ \expandafter\def\csname simpleicon@emberdotjsicon\endcsname {\simpleiconsmapfour\symbol{90}}
+ \expandafter\def\csname simpleicon@embyicon\endcsname {\simpleiconsmapfour\symbol{91}}
+ \expandafter\def\csname simpleicon@emiratesicon\endcsname {\simpleiconsmapfour\symbol{92}}
+ \expandafter\def\csname simpleicon@emlakjeticon\endcsname {\simpleiconsmapfour\symbol{93}}
+ \expandafter\def\csname simpleicon@empirekredicon\endcsname {\simpleiconsmapfour\symbol{94}}
+ \expandafter\def\csname simpleicon@endeavourosicon\endcsname {\simpleiconsmapfour\symbol{95}}
+ \expandafter\def\csname simpleicon@engadgeticon\endcsname {\simpleiconsmapfour\symbol{96}}
+ \expandafter\def\csname simpleicon@enpassicon\endcsname {\simpleiconsmapfour\symbol{97}}
+ \expandafter\def\csname simpleicon@enterprisedbicon\endcsname {\simpleiconsmapfour\symbol{98}}
+ \expandafter\def\csname simpleicon@envatoicon\endcsname {\simpleiconsmapfour\symbol{99}}
+ \expandafter\def\csname simpleicon@envoyproxyicon\endcsname {\simpleiconsmapfour\symbol{100}}
+ \expandafter\def\csname simpleicon@epelicon\endcsname {\simpleiconsmapfour\symbol{101}}
+ \expandafter\def\csname simpleicon@epicgamesicon\endcsname {\simpleiconsmapfour\symbol{102}}
+ \expandafter\def\csname simpleicon@epsonicon\endcsname {\simpleiconsmapfour\symbol{103}}
+ \expandafter\def\csname simpleicon@equinixmetalicon\endcsname {\simpleiconsmapfour\symbol{104}}
+ \expandafter\def\csname simpleicon@erasericon\endcsname {\simpleiconsmapfour\symbol{105}}
+ \expandafter\def\csname simpleicon@ericssonicon\endcsname {\simpleiconsmapfour\symbol{106}}
+ \expandafter\def\csname simpleicon@erlangicon\endcsname {\simpleiconsmapfour\symbol{107}}
+ \expandafter\def\csname simpleicon@erpnexticon\endcsname {\simpleiconsmapfour\symbol{108}}
+ \expandafter\def\csname simpleicon@esbuildicon\endcsname {\simpleiconsmapfour\symbol{109}}
+ \expandafter\def\csname simpleicon@eseaicon\endcsname {\simpleiconsmapfour\symbol{110}}
+ \expandafter\def\csname simpleicon@eslgamingicon\endcsname {\simpleiconsmapfour\symbol{111}}
+ \expandafter\def\csname simpleicon@eslinticon\endcsname {\simpleiconsmapfour\symbol{112}}
+ \expandafter\def\csname simpleicon@esotericsoftwareicon\endcsname {\simpleiconsmapfour\symbol{113}}
+ \expandafter\def\csname simpleicon@esphomeicon\endcsname {\simpleiconsmapfour\symbol{114}}
+ \expandafter\def\csname simpleicon@espressificon\endcsname {\simpleiconsmapfour\symbol{115}}
+ \expandafter\def\csname simpleicon@esriicon\endcsname {\simpleiconsmapfour\symbol{116}}
+ \expandafter\def\csname simpleicon@etcdicon\endcsname {\simpleiconsmapfour\symbol{117}}
+ \expandafter\def\csname simpleicon@ethereumicon\endcsname {\simpleiconsmapfour\symbol{118}}
+ \expandafter\def\csname simpleicon@ethersicon\endcsname {\simpleiconsmapfour\symbol{119}}
+ \expandafter\def\csname simpleicon@ethiopianairlinesicon\endcsname {\simpleiconsmapfour\symbol{120}}
+ \expandafter\def\csname simpleicon@etihadairwaysicon\endcsname {\simpleiconsmapfour\symbol{121}}
+ \expandafter\def\csname simpleicon@etsyicon\endcsname {\simpleiconsmapfour\symbol{122}}
+ \expandafter\def\csname simpleicon@eventbriteicon\endcsname {\simpleiconsmapfour\symbol{123}}
+ \expandafter\def\csname simpleicon@eventstoreicon\endcsname {\simpleiconsmapfour\symbol{124}}
+ \expandafter\def\csname simpleicon@evernoteicon\endcsname {\simpleiconsmapfour\symbol{125}}
+ \expandafter\def\csname simpleicon@excalidrawicon\endcsname {\simpleiconsmapfour\symbol{126}}
+ \expandafter\def\csname simpleicon@exercismicon\endcsname {\simpleiconsmapfour\symbol{127}}
+ \expandafter\def\csname simpleicon@exordoicon\endcsname {\simpleiconsmapfour\symbol{128}}
+ \expandafter\def\csname simpleicon@exoscaleicon\endcsname {\simpleiconsmapfour\symbol{129}}
+ \expandafter\def\csname simpleicon@expediaicon\endcsname {\simpleiconsmapfour\symbol{130}}
+ \expandafter\def\csname simpleicon@expensifyicon\endcsname {\simpleiconsmapfour\symbol{131}}
+ \expandafter\def\csname simpleicon@expertsexchangeicon\endcsname {\simpleiconsmapfour\symbol{132}}
+ \expandafter\def\csname simpleicon@expoicon\endcsname {\simpleiconsmapfour\symbol{133}}
+ \expandafter\def\csname simpleicon@expressicon\endcsname {\simpleiconsmapfour\symbol{134}}
+ \expandafter\def\csname simpleicon@expressvpnicon\endcsname {\simpleiconsmapfour\symbol{135}}
+ \expandafter\def\csname simpleicon@eyeemicon\endcsname {\simpleiconsmapfour\symbol{136}}
+ \expandafter\def\csname simpleicon@f1icon\endcsname {\simpleiconsmapfour\symbol{137}}
+ \expandafter\def\csname simpleicon@f5icon\endcsname {\simpleiconsmapfour\symbol{138}}
+ \expandafter\def\csname simpleicon@facebookicon\endcsname {\simpleiconsmapfour\symbol{139}}
+ \expandafter\def\csname simpleicon@facebookgamingicon\endcsname {\simpleiconsmapfour\symbol{140}}
+ \expandafter\def\csname simpleicon@facebookliveicon\endcsname {\simpleiconsmapfour\symbol{141}}
+ \expandafter\def\csname simpleicon@faceiticon\endcsname {\simpleiconsmapfour\symbol{142}}
+ \expandafter\def\csname simpleicon@facepunchicon\endcsname {\simpleiconsmapfour\symbol{143}}
+ \expandafter\def\csname simpleicon@fairphoneicon\endcsname {\simpleiconsmapfour\symbol{144}}
+ \expandafter\def\csname simpleicon@falcoicon\endcsname {\simpleiconsmapfour\symbol{145}}
+ \expandafter\def\csname simpleicon@falconicon\endcsname {\simpleiconsmapfour\symbol{146}}
+ \expandafter\def\csname simpleicon@fampayicon\endcsname {\simpleiconsmapfour\symbol{147}}
+ \expandafter\def\csname simpleicon@fandangoicon\endcsname {\simpleiconsmapfour\symbol{148}}
+ \expandafter\def\csname simpleicon@fandomicon\endcsname {\simpleiconsmapfour\symbol{149}}
+ \expandafter\def\csname simpleicon@fanfouicon\endcsname {\simpleiconsmapfour\symbol{150}}
+ \expandafter\def\csname simpleicon@fantomicon\endcsname {\simpleiconsmapfour\symbol{151}}
+ \expandafter\def\csname simpleicon@farcastericon\endcsname {\simpleiconsmapfour\symbol{152}}
+ \expandafter\def\csname simpleicon@fareharboricon\endcsname {\simpleiconsmapfour\symbol{153}}
+ \expandafter\def\csname simpleicon@farfetchicon\endcsname {\simpleiconsmapfour\symbol{154}}
+ \expandafter\def\csname simpleicon@fastapiicon\endcsname {\simpleiconsmapfour\symbol{155}}
+ \expandafter\def\csname simpleicon@fastifyicon\endcsname {\simpleiconsmapfour\symbol{156}}
+ \expandafter\def\csname simpleicon@fastlaneicon\endcsname {\simpleiconsmapfour\symbol{157}}
+ \expandafter\def\csname simpleicon@fastlyicon\endcsname {\simpleiconsmapfour\symbol{158}}
+ \expandafter\def\csname simpleicon@fathomicon\endcsname {\simpleiconsmapfour\symbol{159}}
+ \expandafter\def\csname simpleicon@faunaicon\endcsname {\simpleiconsmapfour\symbol{160}}
+ \expandafter\def\csname simpleicon@favroicon\endcsname {\simpleiconsmapfour\symbol{161}}
+ \expandafter\def\csname simpleicon@fdroidicon\endcsname {\simpleiconsmapfour\symbol{162}}
+ \expandafter\def\csname simpleicon@feathubicon\endcsname {\simpleiconsmapfour\symbol{163}}
+ \expandafter\def\csname simpleicon@fedexicon\endcsname {\simpleiconsmapfour\symbol{164}}
+ \expandafter\def\csname simpleicon@fedoraicon\endcsname {\simpleiconsmapfour\symbol{165}}
+ \expandafter\def\csname simpleicon@feedlyicon\endcsname {\simpleiconsmapfour\symbol{166}}
+ \expandafter\def\csname simpleicon@ferrariicon\endcsname {\simpleiconsmapfour\symbol{167}}
+ \expandafter\def\csname simpleicon@ferrarinvicon\endcsname {\simpleiconsmapfour\symbol{168}}
+ \expandafter\def\csname simpleicon@ferretdbicon\endcsname {\simpleiconsmapfour\symbol{169}}
+ \expandafter\def\csname simpleicon@ffmpegicon\endcsname {\simpleiconsmapfour\symbol{170}}
+ \expandafter\def\csname simpleicon@fiicon\endcsname {\simpleiconsmapfour\symbol{171}}
+ \expandafter\def\csname simpleicon@fiaticon\endcsname {\simpleiconsmapfour\symbol{172}}
+ \expandafter\def\csname simpleicon@fidoallianceicon\endcsname {\simpleiconsmapfour\symbol{173}}
+ \expandafter\def\csname simpleicon@fifaicon\endcsname {\simpleiconsmapfour\symbol{174}}
+ \expandafter\def\csname simpleicon@figicon\endcsname {\simpleiconsmapfour\symbol{175}}
+ \expandafter\def\csname simpleicon@figmaicon\endcsname {\simpleiconsmapfour\symbol{176}}
+ \expandafter\def\csname simpleicon@figshareicon\endcsname {\simpleiconsmapfour\symbol{177}}
+ \expandafter\def\csname simpleicon@filaicon\endcsname {\simpleiconsmapfour\symbol{178}}
+ \expandafter\def\csname simpleicon@filedotioicon\endcsname {\simpleiconsmapfour\symbol{179}}
+ \expandafter\def\csname simpleicon@filesicon\endcsname {\simpleiconsmapfour\symbol{180}}
+ \expandafter\def\csname simpleicon@filezillaicon\endcsname {\simpleiconsmapfour\symbol{181}}
+ \expandafter\def\csname simpleicon@finecoicon\endcsname {\simpleiconsmapfour\symbol{182}}
+ \expandafter\def\csname simpleicon@fingicon\endcsname {\simpleiconsmapfour\symbol{183}}
+ \expandafter\def\csname simpleicon@firebaseicon\endcsname {\simpleiconsmapfour\symbol{184}}
+ \expandafter\def\csname simpleicon@firefishicon\endcsname {\simpleiconsmapfour\symbol{185}}
+ \expandafter\def\csname simpleicon@fireflyiiiicon\endcsname {\simpleiconsmapfour\symbol{186}}
+ \expandafter\def\csname simpleicon@firefoxicon\endcsname {\simpleiconsmapfour\symbol{187}}
+ \expandafter\def\csname simpleicon@firefoxbrowsericon\endcsname {\simpleiconsmapfour\symbol{188}}
+ \expandafter\def\csname simpleicon@fireshipicon\endcsname {\simpleiconsmapfour\symbol{189}}
+ \expandafter\def\csname simpleicon@firewallaicon\endcsname {\simpleiconsmapfour\symbol{190}}
+ \expandafter\def\csname simpleicon@firsticon\endcsname {\simpleiconsmapfour\symbol{191}}
+ \expandafter\def\csname simpleicon@fishshellicon\endcsname {\simpleiconsmapfour\symbol{192}}
+ \expandafter\def\csname simpleicon@fitbiticon\endcsname {\simpleiconsmapfour\symbol{193}}
+ \expandafter\def\csname simpleicon@fivemicon\endcsname {\simpleiconsmapfour\symbol{194}}
+ \expandafter\def\csname simpleicon@fiverricon\endcsname {\simpleiconsmapfour\symbol{195}}
+ \expandafter\def\csname simpleicon@fizzicon\endcsname {\simpleiconsmapfour\symbol{196}}
+ \expandafter\def\csname simpleicon@flashforgeicon\endcsname {\simpleiconsmapfour\symbol{197}}
+ \expandafter\def\csname simpleicon@flaskicon\endcsname {\simpleiconsmapfour\symbol{198}}
+ \expandafter\def\csname simpleicon@flaticon\endcsname {\simpleiconsmapfour\symbol{199}}
+ \expandafter\def\csname simpleicon@flathubicon\endcsname {\simpleiconsmapfour\symbol{200}}
+ \expandafter\def\csname simpleicon@flatpakicon\endcsname {\simpleiconsmapfour\symbol{201}}
+ \expandafter\def\csname simpleicon@flickricon\endcsname {\simpleiconsmapfour\symbol{202}}
+ \expandafter\def\csname simpleicon@flightawareicon\endcsname {\simpleiconsmapfour\symbol{203}}
+ \expandafter\def\csname simpleicon@flipboardicon\endcsname {\simpleiconsmapfour\symbol{204}}
+ \expandafter\def\csname simpleicon@flipkarticon\endcsname {\simpleiconsmapfour\symbol{205}}
+ \expandafter\def\csname simpleicon@floatplaneicon\endcsname {\simpleiconsmapfour\symbol{206}}
+ \expandafter\def\csname simpleicon@floodicon\endcsname {\simpleiconsmapfour\symbol{207}}
+ \expandafter\def\csname simpleicon@fluentbiticon\endcsname {\simpleiconsmapfour\symbol{208}}
+ \expandafter\def\csname simpleicon@fluentdicon\endcsname {\simpleiconsmapfour\symbol{209}}
+ \expandafter\def\csname simpleicon@flukeicon\endcsname {\simpleiconsmapfour\symbol{210}}
+ \expandafter\def\csname simpleicon@fluttericon\endcsname {\simpleiconsmapfour\symbol{211}}
+ \expandafter\def\csname simpleicon@fluxicon\endcsname {\simpleiconsmapfour\symbol{212}}
+ \expandafter\def\csname simpleicon@fluxusicon\endcsname {\simpleiconsmapfour\symbol{213}}
+ \expandafter\def\csname simpleicon@flydotioicon\endcsname {\simpleiconsmapfour\symbol{214}}
+ \expandafter\def\csname simpleicon@flywayicon\endcsname {\simpleiconsmapfour\symbol{215}}
+ \expandafter\def\csname simpleicon@fmodicon\endcsname {\simpleiconsmapfour\symbol{216}}
+ \expandafter\def\csname simpleicon@fnacicon\endcsname {\simpleiconsmapfour\symbol{217}}
+ \expandafter\def\csname simpleicon@foliumicon\endcsname {\simpleiconsmapfour\symbol{218}}
+ \expandafter\def\csname simpleicon@fonomaicon\endcsname {\simpleiconsmapfour\symbol{219}}
+ \expandafter\def\csname simpleicon@fontawesomeicon\endcsname {\simpleiconsmapfour\symbol{220}}
+ \expandafter\def\csname simpleicon@fontbaseicon\endcsname {\simpleiconsmapfour\symbol{221}}
+ \expandafter\def\csname simpleicon@fontforgeicon\endcsname {\simpleiconsmapfour\symbol{222}}
+ \expandafter\def\csname simpleicon@foobar2000icon\endcsname {\simpleiconsmapfour\symbol{223}}
+ \expandafter\def\csname simpleicon@foodpandaicon\endcsname {\simpleiconsmapfour\symbol{224}}
+ \expandafter\def\csname simpleicon@fordicon\endcsname {\simpleiconsmapfour\symbol{225}}
+ \expandafter\def\csname simpleicon@forgejoicon\endcsname {\simpleiconsmapfour\symbol{226}}
+ \expandafter\def\csname simpleicon@formikicon\endcsname {\simpleiconsmapfour\symbol{227}}
+ \expandafter\def\csname simpleicon@formspreeicon\endcsname {\simpleiconsmapfour\symbol{228}}
+ \expandafter\def\csname simpleicon@formstackicon\endcsname {\simpleiconsmapfour\symbol{229}}
+ \expandafter\def\csname simpleicon@fortineticon\endcsname {\simpleiconsmapfour\symbol{230}}
+ \expandafter\def\csname simpleicon@fortranicon\endcsname {\simpleiconsmapfour\symbol{231}}
+ \expandafter\def\csname simpleicon@fossaicon\endcsname {\simpleiconsmapfour\symbol{232}}
+ \expandafter\def\csname simpleicon@fossilscmicon\endcsname {\simpleiconsmapfour\symbol{233}}
+ \expandafter\def\csname simpleicon@foundryvirtualtabletopicon\endcsname {\simpleiconsmapfour\symbol{234}}
+ \expandafter\def\csname simpleicon@foursquareicon\endcsname {\simpleiconsmapfour\symbol{235}}
+ \expandafter\def\csname simpleicon@foursquarecityguideicon\endcsname {\simpleiconsmapfour\symbol{236}}
+ \expandafter\def\csname simpleicon@foxicon\endcsname {\simpleiconsmapfour\symbol{237}}
+ \expandafter\def\csname simpleicon@foxtelicon\endcsname {\simpleiconsmapfour\symbol{238}}
+ \expandafter\def\csname simpleicon@fozzyicon\endcsname {\simpleiconsmapfour\symbol{239}}
+ \expandafter\def\csname simpleicon@framericon\endcsname {\simpleiconsmapfour\symbol{240}}
+ \expandafter\def\csname simpleicon@frameworkicon\endcsname {\simpleiconsmapfour\symbol{241}}
+ \expandafter\def\csname simpleicon@framework7icon\endcsname {\simpleiconsmapfour\symbol{242}}
+ \expandafter\def\csname simpleicon@franprixicon\endcsname {\simpleiconsmapfour\symbol{243}}
+ \expandafter\def\csname simpleicon@frappeicon\endcsname {\simpleiconsmapfour\symbol{244}}
+ \expandafter\def\csname simpleicon@fraunhofergesellschafticon\endcsname {\simpleiconsmapfour\symbol{245}}
+ \expandafter\def\csname simpleicon@freebsdicon\endcsname {\simpleiconsmapfour\symbol{246}}
+ \expandafter\def\csname simpleicon@freecadicon\endcsname {\simpleiconsmapfour\symbol{247}}
+ \expandafter\def\csname simpleicon@freecodecampicon\endcsname {\simpleiconsmapfour\symbol{248}}
+ \expandafter\def\csname simpleicon@freedesktopdotorgicon\endcsname {\simpleiconsmapfour\symbol{249}}
+ \expandafter\def\csname simpleicon@freelancericon\endcsname {\simpleiconsmapfour\symbol{250}}
+ \expandafter\def\csname simpleicon@freelancermapicon\endcsname {\simpleiconsmapfour\symbol{251}}
+ \expandafter\def\csname simpleicon@freenasicon\endcsname {\simpleiconsmapfour\symbol{252}}
+ \expandafter\def\csname simpleicon@freepikicon\endcsname {\simpleiconsmapfour\symbol{253}}
+ \expandafter\def\csname simpleicon@freshicon\endcsname {\simpleiconsmapfour\symbol{254}}
+ \expandafter\def\csname simpleicon@frontendmentoricon\endcsname {\simpleiconsmapfour\symbol{255}}
+ \expandafter\def\csname simpleicon@frontifyicon\endcsname {\simpleiconsmapfive\symbol{0}}
+ \expandafter\def\csname simpleicon@fsecureicon\endcsname {\simpleiconsmapfive\symbol{1}}
+ \expandafter\def\csname simpleicon@fsharpicon\endcsname {\simpleiconsmapfive\symbol{2}}
+ \expandafter\def\csname simpleicon@fuboicon\endcsname {\simpleiconsmapfive\symbol{3}}
+ \expandafter\def\csname simpleicon@fuelericon\endcsname {\simpleiconsmapfive\symbol{4}}
+ \expandafter\def\csname simpleicon@fugacloudicon\endcsname {\simpleiconsmapfive\symbol{5}}
+ \expandafter\def\csname simpleicon@fujifilmicon\endcsname {\simpleiconsmapfive\symbol{6}}
+ \expandafter\def\csname simpleicon@fujitsuicon\endcsname {\simpleiconsmapfive\symbol{7}}
+ \expandafter\def\csname simpleicon@funimationicon\endcsname {\simpleiconsmapfive\symbol{8}}
+ \expandafter\def\csname simpleicon@furaffinityicon\endcsname {\simpleiconsmapfive\symbol{9}}
+ \expandafter\def\csname simpleicon@furrynetworkicon\endcsname {\simpleiconsmapfive\symbol{10}}
+ \expandafter\def\csname simpleicon@fusionauthicon\endcsname {\simpleiconsmapfive\symbol{11}}
+ \expandafter\def\csname simpleicon@futurelearnicon\endcsname {\simpleiconsmapfive\symbol{12}}
+ \expandafter\def\csname simpleicon@g2icon\endcsname {\simpleiconsmapfive\symbol{13}}
+ \expandafter\def\csname simpleicon@g2aicon\endcsname {\simpleiconsmapfive\symbol{14}}
+ \expandafter\def\csname simpleicon@g2gicon\endcsname {\simpleiconsmapfive\symbol{15}}
+ \expandafter\def\csname simpleicon@galaxusicon\endcsname {\simpleiconsmapfive\symbol{16}}
+ \expandafter\def\csname simpleicon@gameandwatchicon\endcsname {\simpleiconsmapfive\symbol{17}}
+ \expandafter\def\csname simpleicon@gamebananaicon\endcsname {\simpleiconsmapfive\symbol{18}}
+ \expandafter\def\csname simpleicon@gamedevelopericon\endcsname {\simpleiconsmapfive\symbol{19}}
+ \expandafter\def\csname simpleicon@gamejolticon\endcsname {\simpleiconsmapfive\symbol{20}}
+ \expandafter\def\csname simpleicon@gamelofticon\endcsname {\simpleiconsmapfive\symbol{21}}
+ \expandafter\def\csname simpleicon@gamemakericon\endcsname {\simpleiconsmapfive\symbol{22}}
+ \expandafter\def\csname simpleicon@garminicon\endcsname {\simpleiconsmapfive\symbol{23}}
+ \expandafter\def\csname simpleicon@gatlingicon\endcsname {\simpleiconsmapfive\symbol{24}}
+ \expandafter\def\csname simpleicon@gatsbyicon\endcsname {\simpleiconsmapfive\symbol{25}}
+ \expandafter\def\csname simpleicon@gcoreicon\endcsname {\simpleiconsmapfive\symbol{26}}
+ \expandafter\def\csname simpleicon@gdalicon\endcsname {\simpleiconsmapfive\symbol{27}}
+ \expandafter\def\csname simpleicon@geanticon\endcsname {\simpleiconsmapfive\symbol{28}}
+ \expandafter\def\csname simpleicon@geeksforgeeksicon\endcsname {\simpleiconsmapfive\symbol{29}}
+ \expandafter\def\csname simpleicon@generalelectricicon\endcsname {\simpleiconsmapfive\symbol{30}}
+ \expandafter\def\csname simpleicon@generalmotorsicon\endcsname {\simpleiconsmapfive\symbol{31}}
+ \expandafter\def\csname simpleicon@geniusicon\endcsname {\simpleiconsmapfive\symbol{32}}
+ \expandafter\def\csname simpleicon@gentooicon\endcsname {\simpleiconsmapfive\symbol{33}}
+ \expandafter\def\csname simpleicon@geocachingicon\endcsname {\simpleiconsmapfive\symbol{34}}
+ \expandafter\def\csname simpleicon@geodeicon\endcsname {\simpleiconsmapfive\symbol{35}}
+ \expandafter\def\csname simpleicon@geopandasicon\endcsname {\simpleiconsmapfive\symbol{36}}
+ \expandafter\def\csname simpleicon@gerriticon\endcsname {\simpleiconsmapfive\symbol{37}}
+ \expandafter\def\csname simpleicon@getxicon\endcsname {\simpleiconsmapfive\symbol{38}}
+ \expandafter\def\csname simpleicon@ghosticon\endcsname {\simpleiconsmapfive\symbol{39}}
+ \expandafter\def\csname simpleicon@ghosteryicon\endcsname {\simpleiconsmapfive\symbol{40}}
+ \expandafter\def\csname simpleicon@gimpicon\endcsname {\simpleiconsmapfive\symbol{41}}
+ \expandafter\def\csname simpleicon@ginicon\endcsname {\simpleiconsmapfive\symbol{42}}
+ \expandafter\def\csname simpleicon@giphyicon\endcsname {\simpleiconsmapfive\symbol{43}}
+ \expandafter\def\csname simpleicon@giticon\endcsname {\simpleiconsmapfive\symbol{44}}
+ \expandafter\def\csname simpleicon@gitbookicon\endcsname {\simpleiconsmapfive\symbol{45}}
+ \expandafter\def\csname simpleicon@gitconnectedicon\endcsname {\simpleiconsmapfive\symbol{46}}
+ \expandafter\def\csname simpleicon@giteaicon\endcsname {\simpleiconsmapfive\symbol{47}}
+ \expandafter\def\csname simpleicon@giteeicon\endcsname {\simpleiconsmapfive\symbol{48}}
+ \expandafter\def\csname simpleicon@gitextensionsicon\endcsname {\simpleiconsmapfive\symbol{49}}
+ \expandafter\def\csname simpleicon@gitforwindowsicon\endcsname {\simpleiconsmapfive\symbol{50}}
+ \expandafter\def\csname simpleicon@githubicon\endcsname {\simpleiconsmapfive\symbol{51}}
+ \expandafter\def\csname simpleicon@githubactionsicon\endcsname {\simpleiconsmapfive\symbol{52}}
+ \expandafter\def\csname simpleicon@githubcopiloticon\endcsname {\simpleiconsmapfive\symbol{53}}
+ \expandafter\def\csname simpleicon@githubpagesicon\endcsname {\simpleiconsmapfive\symbol{54}}
+ \expandafter\def\csname simpleicon@githubsponsorsicon\endcsname {\simpleiconsmapfive\symbol{55}}
+ \expandafter\def\csname simpleicon@gitignoredotioicon\endcsname {\simpleiconsmapfive\symbol{56}}
+ \expandafter\def\csname simpleicon@gitkrakenicon\endcsname {\simpleiconsmapfive\symbol{57}}
+ \expandafter\def\csname simpleicon@gitlabicon\endcsname {\simpleiconsmapfive\symbol{58}}
+ \expandafter\def\csname simpleicon@gitlfsicon\endcsname {\simpleiconsmapfive\symbol{59}}
+ \expandafter\def\csname simpleicon@gitpodicon\endcsname {\simpleiconsmapfive\symbol{60}}
+ \expandafter\def\csname simpleicon@gittericon\endcsname {\simpleiconsmapfive\symbol{61}}
+ \expandafter\def\csname simpleicon@glassdooricon\endcsname {\simpleiconsmapfive\symbol{62}}
+ \expandafter\def\csname simpleicon@glideicon\endcsname {\simpleiconsmapfive\symbol{63}}
+ \expandafter\def\csname simpleicon@glitchicon\endcsname {\simpleiconsmapfive\symbol{64}}
+ \expandafter\def\csname simpleicon@globusicon\endcsname {\simpleiconsmapfive\symbol{65}}
+ \expandafter\def\csname simpleicon@glovoicon\endcsname {\simpleiconsmapfive\symbol{66}}
+ \expandafter\def\csname simpleicon@gltficon\endcsname {\simpleiconsmapfive\symbol{67}}
+ \expandafter\def\csname simpleicon@gmailicon\endcsname {\simpleiconsmapfive\symbol{68}}
+ \expandafter\def\csname simpleicon@gnomeicon\endcsname {\simpleiconsmapfive\symbol{69}}
+ \expandafter\def\csname simpleicon@gnometerminalicon\endcsname {\simpleiconsmapfive\symbol{70}}
+ \expandafter\def\csname simpleicon@gnuicon\endcsname {\simpleiconsmapfive\symbol{71}}
+ \expandafter\def\csname simpleicon@gnubashicon\endcsname {\simpleiconsmapfive\symbol{72}}
+ \expandafter\def\csname simpleicon@gnuemacsicon\endcsname {\simpleiconsmapfive\symbol{73}}
+ \expandafter\def\csname simpleicon@gnuicecaticon\endcsname {\simpleiconsmapfive\symbol{74}}
+ \expandafter\def\csname simpleicon@gnuprivacyguardicon\endcsname {\simpleiconsmapfive\symbol{75}}
+ \expandafter\def\csname simpleicon@gnusocialicon\endcsname {\simpleiconsmapfive\symbol{76}}
+ \expandafter\def\csname simpleicon@goicon\endcsname {\simpleiconsmapfive\symbol{77}}
+ \expandafter\def\csname simpleicon@gocdicon\endcsname {\simpleiconsmapfive\symbol{78}}
+ \expandafter\def\csname simpleicon@godaddyicon\endcsname {\simpleiconsmapfive\symbol{79}}
+ \expandafter\def\csname simpleicon@godotengineicon\endcsname {\simpleiconsmapfive\symbol{80}}
+ \expandafter\def\csname simpleicon@gofundmeicon\endcsname {\simpleiconsmapfive\symbol{81}}
+ \expandafter\def\csname simpleicon@gogdotcomicon\endcsname {\simpleiconsmapfive\symbol{82}}
+ \expandafter\def\csname simpleicon@gojekicon\endcsname {\simpleiconsmapfive\symbol{83}}
+ \expandafter\def\csname simpleicon@golandicon\endcsname {\simpleiconsmapfive\symbol{84}}
+ \expandafter\def\csname simpleicon@goldenlineicon\endcsname {\simpleiconsmapfive\symbol{85}}
+ \expandafter\def\csname simpleicon@goldmansachsicon\endcsname {\simpleiconsmapfive\symbol{86}}
+ \expandafter\def\csname simpleicon@goodreadsicon\endcsname {\simpleiconsmapfive\symbol{87}}
+ \expandafter\def\csname simpleicon@googleicon\endcsname {\simpleiconsmapfive\symbol{88}}
+ \expandafter\def\csname simpleicon@googleadmobicon\endcsname {\simpleiconsmapfive\symbol{89}}
+ \expandafter\def\csname simpleicon@googleadsicon\endcsname {\simpleiconsmapfive\symbol{90}}
+ \expandafter\def\csname simpleicon@googleadsenseicon\endcsname {\simpleiconsmapfive\symbol{91}}
+ \expandafter\def\csname simpleicon@googleanalyticsicon\endcsname {\simpleiconsmapfive\symbol{92}}
+ \expandafter\def\csname simpleicon@googleappsscripticon\endcsname {\simpleiconsmapfive\symbol{93}}
+ \expandafter\def\csname simpleicon@googleassistanticon\endcsname {\simpleiconsmapfive\symbol{94}}
+ \expandafter\def\csname simpleicon@googleauthenticatoricon\endcsname {\simpleiconsmapfive\symbol{95}}
+ \expandafter\def\csname simpleicon@googlebigqueryicon\endcsname {\simpleiconsmapfive\symbol{96}}
+ \expandafter\def\csname simpleicon@googlebigtableicon\endcsname {\simpleiconsmapfive\symbol{97}}
+ \expandafter\def\csname simpleicon@googlecalendaricon\endcsname {\simpleiconsmapfive\symbol{98}}
+ \expandafter\def\csname simpleicon@googlecampaignmanager360icon\endcsname {\simpleiconsmapfive\symbol{99}}
+ \expandafter\def\csname simpleicon@googlecardboardicon\endcsname {\simpleiconsmapfive\symbol{100}}
+ \expandafter\def\csname simpleicon@googlechaticon\endcsname {\simpleiconsmapfive\symbol{101}}
+ \expandafter\def\csname simpleicon@googlechromeicon\endcsname {\simpleiconsmapfive\symbol{102}}
+ \expandafter\def\csname simpleicon@googlechronicleicon\endcsname {\simpleiconsmapfive\symbol{103}}
+ \expandafter\def\csname simpleicon@googleclassroomicon\endcsname {\simpleiconsmapfive\symbol{104}}
+ \expandafter\def\csname simpleicon@googlecloudicon\endcsname {\simpleiconsmapfive\symbol{105}}
+ \expandafter\def\csname simpleicon@googlecloudcomposericon\endcsname {\simpleiconsmapfive\symbol{106}}
+ \expandafter\def\csname simpleicon@googlecloudspannericon\endcsname {\simpleiconsmapfive\symbol{107}}
+ \expandafter\def\csname simpleicon@googlecloudstorageicon\endcsname {\simpleiconsmapfive\symbol{108}}
+ \expandafter\def\csname simpleicon@googlecolabicon\endcsname {\simpleiconsmapfive\symbol{109}}
+ \expandafter\def\csname simpleicon@googlecontaineroptimizedosicon\endcsname {\simpleiconsmapfive\symbol{110}}
+ \expandafter\def\csname simpleicon@googledataflowicon\endcsname {\simpleiconsmapfive\symbol{111}}
+ \expandafter\def\csname simpleicon@googledataprocicon\endcsname {\simpleiconsmapfive\symbol{112}}
+ \expandafter\def\csname simpleicon@googledatastudioicon\endcsname {\simpleiconsmapfive\symbol{113}}
+ \expandafter\def\csname simpleicon@googledisplayandvideo360icon\endcsname {\simpleiconsmapfive\symbol{114}}
+ \expandafter\def\csname simpleicon@googledocsicon\endcsname {\simpleiconsmapfive\symbol{115}}
+ \expandafter\def\csname simpleicon@googledriveicon\endcsname {\simpleiconsmapfive\symbol{116}}
+ \expandafter\def\csname simpleicon@googleearthicon\endcsname {\simpleiconsmapfive\symbol{117}}
+ \expandafter\def\csname simpleicon@googleearthengineicon\endcsname {\simpleiconsmapfive\symbol{118}}
+ \expandafter\def\csname simpleicon@googlefiticon\endcsname {\simpleiconsmapfive\symbol{119}}
+ \expandafter\def\csname simpleicon@googlefontsicon\endcsname {\simpleiconsmapfive\symbol{120}}
+ \expandafter\def\csname simpleicon@googleformsicon\endcsname {\simpleiconsmapfive\symbol{121}}
+ \expandafter\def\csname simpleicon@googlegeminiicon\endcsname {\simpleiconsmapfive\symbol{122}}
+ \expandafter\def\csname simpleicon@googlehomeicon\endcsname {\simpleiconsmapfive\symbol{123}}
+ \expandafter\def\csname simpleicon@googlekeepicon\endcsname {\simpleiconsmapfive\symbol{124}}
+ \expandafter\def\csname simpleicon@googlelensicon\endcsname {\simpleiconsmapfive\symbol{125}}
+ \expandafter\def\csname simpleicon@googlemapsicon\endcsname {\simpleiconsmapfive\symbol{126}}
+ \expandafter\def\csname simpleicon@googlemarketingplatformicon\endcsname {\simpleiconsmapfive\symbol{127}}
+ \expandafter\def\csname simpleicon@googlemeeticon\endcsname {\simpleiconsmapfive\symbol{128}}
+ \expandafter\def\csname simpleicon@googlemessagesicon\endcsname {\simpleiconsmapfive\symbol{129}}
+ \expandafter\def\csname simpleicon@googlenearbyicon\endcsname {\simpleiconsmapfive\symbol{130}}
+ \expandafter\def\csname simpleicon@googlenewsicon\endcsname {\simpleiconsmapfive\symbol{131}}
+ \expandafter\def\csname simpleicon@googlepayicon\endcsname {\simpleiconsmapfive\symbol{132}}
+ \expandafter\def\csname simpleicon@googlephotosicon\endcsname {\simpleiconsmapfive\symbol{133}}
+ \expandafter\def\csname simpleicon@googleplayicon\endcsname {\simpleiconsmapfive\symbol{134}}
\expandafter\def\csname simpleicon@googlepubsubicon\endcsname {\simpleiconsmapfive\symbol{135}}
\expandafter\def\csname simpleicon@googlescholaricon\endcsname {\simpleiconsmapfive\symbol{136}}
\expandafter\def\csname simpleicon@googlesearchconsoleicon\endcsname {\simpleiconsmapfive\symbol{137}}
@@ -1196,116 +1196,116 @@
\expandafter\def\csname simpleicon@gtkicon\endcsname {\simpleiconsmapfive\symbol{170}}
\expandafter\def\csname simpleicon@guangzhoumetroicon\endcsname {\simpleiconsmapfive\symbol{171}}
\expandafter\def\csname simpleicon@guildedicon\endcsname {\simpleiconsmapfive\symbol{172}}
- \expandafter\def\csname simpleicon@gulpicon\endcsname {\simpleiconsmapfive\symbol{173}}
- \expandafter\def\csname simpleicon@gumroadicon\endcsname {\simpleiconsmapfive\symbol{174}}
- \expandafter\def\csname simpleicon@gumtreeicon\endcsname {\simpleiconsmapfive\symbol{175}}
- \expandafter\def\csname simpleicon@gunicornicon\endcsname {\simpleiconsmapfive\symbol{176}}
- \expandafter\def\csname simpleicon@gurobiicon\endcsname {\simpleiconsmapfive\symbol{177}}
- \expandafter\def\csname simpleicon@gustoicon\endcsname {\simpleiconsmapfive\symbol{178}}
- \expandafter\def\csname simpleicon@gutenbergicon\endcsname {\simpleiconsmapfive\symbol{179}}
- \expandafter\def\csname simpleicon@h3icon\endcsname {\simpleiconsmapfive\symbol{180}}
- \expandafter\def\csname simpleicon@habricon\endcsname {\simpleiconsmapfive\symbol{181}}
- \expandafter\def\csname simpleicon@hackadayicon\endcsname {\simpleiconsmapfive\symbol{182}}
- \expandafter\def\csname simpleicon@hackclubicon\endcsname {\simpleiconsmapfive\symbol{183}}
- \expandafter\def\csname simpleicon@hackerearthicon\endcsname {\simpleiconsmapfive\symbol{184}}
- \expandafter\def\csname simpleicon@hackernoonicon\endcsname {\simpleiconsmapfive\symbol{185}}
- \expandafter\def\csname simpleicon@hackeroneicon\endcsname {\simpleiconsmapfive\symbol{186}}
- \expandafter\def\csname simpleicon@hackerrankicon\endcsname {\simpleiconsmapfive\symbol{187}}
- \expandafter\def\csname simpleicon@hackstericon\endcsname {\simpleiconsmapfive\symbol{188}}
- \expandafter\def\csname simpleicon@hacktheboxicon\endcsname {\simpleiconsmapfive\symbol{189}}
- \expandafter\def\csname simpleicon@halicon\endcsname {\simpleiconsmapfive\symbol{190}}
- \expandafter\def\csname simpleicon@handlebarsdotjsicon\endcsname {\simpleiconsmapfive\symbol{191}}
- \expandafter\def\csname simpleicon@handmicon\endcsname {\simpleiconsmapfive\symbol{192}}
- \expandafter\def\csname simpleicon@handshakeicon\endcsname {\simpleiconsmapfive\symbol{193}}
- \expandafter\def\csname simpleicon@handshakeprotocolicon\endcsname {\simpleiconsmapfive\symbol{194}}
- \expandafter\def\csname simpleicon@happycowicon\endcsname {\simpleiconsmapfive\symbol{195}}
- \expandafter\def\csname simpleicon@harboricon\endcsname {\simpleiconsmapfive\symbol{196}}
- \expandafter\def\csname simpleicon@harmonyosicon\endcsname {\simpleiconsmapfive\symbol{197}}
- \expandafter\def\csname simpleicon@hashicorpicon\endcsname {\simpleiconsmapfive\symbol{198}}
- \expandafter\def\csname simpleicon@hashnodeicon\endcsname {\simpleiconsmapfive\symbol{199}}
- \expandafter\def\csname simpleicon@haskellicon\endcsname {\simpleiconsmapfive\symbol{200}}
- \expandafter\def\csname simpleicon@hasuraicon\endcsname {\simpleiconsmapfive\symbol{201}}
- \expandafter\def\csname simpleicon@hatenabookmarkicon\endcsname {\simpleiconsmapfive\symbol{202}}
- \expandafter\def\csname simpleicon@haveibeenpwnedicon\endcsname {\simpleiconsmapfive\symbol{203}}
- \expandafter\def\csname simpleicon@haxeicon\endcsname {\simpleiconsmapfive\symbol{204}}
- \expandafter\def\csname simpleicon@hboicon\endcsname {\simpleiconsmapfive\symbol{205}}
- \expandafter\def\csname simpleicon@hclicon\endcsname {\simpleiconsmapfive\symbol{206}}
- \expandafter\def\csname simpleicon@hdfcbankicon\endcsname {\simpleiconsmapfive\symbol{207}}
- \expandafter\def\csname simpleicon@headlessuiicon\endcsname {\simpleiconsmapfive\symbol{208}}
- \expandafter\def\csname simpleicon@headphonezoneicon\endcsname {\simpleiconsmapfive\symbol{209}}
- \expandafter\def\csname simpleicon@headspaceicon\endcsname {\simpleiconsmapfive\symbol{210}}
- \expandafter\def\csname simpleicon@hearthicon\endcsname {\simpleiconsmapfive\symbol{211}}
- \expandafter\def\csname simpleicon@hearthisdotaticon\endcsname {\simpleiconsmapfive\symbol{212}}
- \expandafter\def\csname simpleicon@hederaicon\endcsname {\simpleiconsmapfive\symbol{213}}
- \expandafter\def\csname simpleicon@heliumicon\endcsname {\simpleiconsmapfive\symbol{214}}
- \expandafter\def\csname simpleicon@hellofreshicon\endcsname {\simpleiconsmapfive\symbol{215}}
- \expandafter\def\csname simpleicon@hellyhansenicon\endcsname {\simpleiconsmapfive\symbol{216}}
- \expandafter\def\csname simpleicon@helmicon\endcsname {\simpleiconsmapfive\symbol{217}}
- \expandafter\def\csname simpleicon@helpdeskicon\endcsname {\simpleiconsmapfive\symbol{218}}
- \expandafter\def\csname simpleicon@helpscouticon\endcsname {\simpleiconsmapfive\symbol{219}}
- \expandafter\def\csname simpleicon@hepsiemlakicon\endcsname {\simpleiconsmapfive\symbol{220}}
- \expandafter\def\csname simpleicon@hereicon\endcsname {\simpleiconsmapfive\symbol{221}}
- \expandafter\def\csname simpleicon@herokuicon\endcsname {\simpleiconsmapfive\symbol{222}}
- \expandafter\def\csname simpleicon@hetznericon\endcsname {\simpleiconsmapfive\symbol{223}}
- \expandafter\def\csname simpleicon@hevyicon\endcsname {\simpleiconsmapfive\symbol{224}}
- \expandafter\def\csname simpleicon@hexleticon\endcsname {\simpleiconsmapfive\symbol{225}}
- \expandafter\def\csname simpleicon@hexoicon\endcsname {\simpleiconsmapfive\symbol{226}}
- \expandafter\def\csname simpleicon@heyicon\endcsname {\simpleiconsmapfive\symbol{227}}
- \expandafter\def\csname simpleicon@hibernateicon\endcsname {\simpleiconsmapfive\symbol{228}}
- \expandafter\def\csname simpleicon@hibobicon\endcsname {\simpleiconsmapfive\symbol{229}}
- \expandafter\def\csname simpleicon@hiltonicon\endcsname {\simpleiconsmapfive\symbol{230}}
- \expandafter\def\csname simpleicon@hiltonhotelsandresortsicon\endcsname {\simpleiconsmapfive\symbol{231}}
- \expandafter\def\csname simpleicon@hitachiicon\endcsname {\simpleiconsmapfive\symbol{232}}
- \expandafter\def\csname simpleicon@hiveicon\endcsname {\simpleiconsmapfive\symbol{233}}
- \expandafter\def\csname simpleicon@hiveblockchainicon\endcsname {\simpleiconsmapfive\symbol{234}}
- \expandafter\def\csname simpleicon@hivemqicon\endcsname {\simpleiconsmapfive\symbol{235}}
- \expandafter\def\csname simpleicon@homarricon\endcsname {\simpleiconsmapfive\symbol{236}}
- \expandafter\def\csname simpleicon@homeadvisoricon\endcsname {\simpleiconsmapfive\symbol{237}}
- \expandafter\def\csname simpleicon@homeassistanticon\endcsname {\simpleiconsmapfive\symbol{238}}
- \expandafter\def\csname simpleicon@homeassistantcommunitystoreicon\endcsname {\simpleiconsmapfive\symbol{239}}
- \expandafter\def\csname simpleicon@homebrewicon\endcsname {\simpleiconsmapfive\symbol{240}}
- \expandafter\def\csname simpleicon@homebridgeicon\endcsname {\simpleiconsmapfive\symbol{241}}
- \expandafter\def\csname simpleicon@homepageicon\endcsname {\simpleiconsmapfive\symbol{242}}
- \expandafter\def\csname simpleicon@homifyicon\endcsname {\simpleiconsmapfive\symbol{243}}
- \expandafter\def\csname simpleicon@hondaicon\endcsname {\simpleiconsmapfive\symbol{244}}
- \expandafter\def\csname simpleicon@honeyicon\endcsname {\simpleiconsmapfive\symbol{245}}
- \expandafter\def\csname simpleicon@honoicon\endcsname {\simpleiconsmapfive\symbol{246}}
- \expandafter\def\csname simpleicon@honoricon\endcsname {\simpleiconsmapfive\symbol{247}}
- \expandafter\def\csname simpleicon@hootsuiteicon\endcsname {\simpleiconsmapfive\symbol{248}}
- \expandafter\def\csname simpleicon@hoppscotchicon\endcsname {\simpleiconsmapfive\symbol{249}}
- \expandafter\def\csname simpleicon@hostingericon\endcsname {\simpleiconsmapfive\symbol{250}}
- \expandafter\def\csname simpleicon@hotelsdotcomicon\endcsname {\simpleiconsmapfive\symbol{251}}
- \expandafter\def\csname simpleicon@hotjaricon\endcsname {\simpleiconsmapfive\symbol{252}}
- \expandafter\def\csname simpleicon@hotwireicon\endcsname {\simpleiconsmapfive\symbol{253}}
- \expandafter\def\csname simpleicon@houdiniicon\endcsname {\simpleiconsmapfive\symbol{254}}
- \expandafter\def\csname simpleicon@houzzicon\endcsname {\simpleiconsmapfive\symbol{255}}
- \expandafter\def\csname simpleicon@hpicon\endcsname {\simpleiconsmapsix\symbol{0}}
- \expandafter\def\csname simpleicon@hsbcicon\endcsname {\simpleiconsmapsix\symbol{1}}
- \expandafter\def\csname simpleicon@html5icon\endcsname {\simpleiconsmapsix\symbol{2}}
- \expandafter\def\csname simpleicon@htmlacademyicon\endcsname {\simpleiconsmapsix\symbol{3}}
- \expandafter\def\csname simpleicon@htmxicon\endcsname {\simpleiconsmapsix\symbol{4}}
- \expandafter\def\csname simpleicon@htopicon\endcsname {\simpleiconsmapsix\symbol{5}}
- \expandafter\def\csname simpleicon@httpieicon\endcsname {\simpleiconsmapsix\symbol{6}}
- \expandafter\def\csname simpleicon@huaweiicon\endcsname {\simpleiconsmapsix\symbol{7}}
- \expandafter\def\csname simpleicon@hubspoticon\endcsname {\simpleiconsmapsix\symbol{8}}
- \expandafter\def\csname simpleicon@huggingfaceicon\endcsname {\simpleiconsmapsix\symbol{9}}
- \expandafter\def\csname simpleicon@hugoicon\endcsname {\simpleiconsmapsix\symbol{10}}
- \expandafter\def\csname simpleicon@humblebundleicon\endcsname {\simpleiconsmapsix\symbol{11}}
- \expandafter\def\csname simpleicon@hungryjacksicon\endcsname {\simpleiconsmapsix\symbol{12}}
- \expandafter\def\csname simpleicon@husqvarnaicon\endcsname {\simpleiconsmapsix\symbol{13}}
- \expandafter\def\csname simpleicon@hypericon\endcsname {\simpleiconsmapsix\symbol{14}}
- \expandafter\def\csname simpleicon@hyperskillicon\endcsname {\simpleiconsmapsix\symbol{15}}
- \expandafter\def\csname simpleicon@hypothesisicon\endcsname {\simpleiconsmapsix\symbol{16}}
- \expandafter\def\csname simpleicon@hyprlandicon\endcsname {\simpleiconsmapsix\symbol{17}}
- \expandafter\def\csname simpleicon@hyundaiicon\endcsname {\simpleiconsmapsix\symbol{18}}
- \expandafter\def\csname simpleicon@i18nexticon\endcsname {\simpleiconsmapsix\symbol{19}}
- \expandafter\def\csname simpleicon@i3icon\endcsname {\simpleiconsmapsix\symbol{20}}
- \expandafter\def\csname simpleicon@iataicon\endcsname {\simpleiconsmapsix\symbol{21}}
- \expandafter\def\csname simpleicon@ibeaconicon\endcsname {\simpleiconsmapsix\symbol{22}}
- \expandafter\def\csname simpleicon@iberiaicon\endcsname {\simpleiconsmapsix\symbol{23}}
- \expandafter\def\csname simpleicon@ibmicon\endcsname {\simpleiconsmapsix\symbol{24}}
- \expandafter\def\csname simpleicon@ibmcloudicon\endcsname {\simpleiconsmapsix\symbol{25}}
- \expandafter\def\csname simpleicon@ibmwatsonicon\endcsname {\simpleiconsmapsix\symbol{26}}
+ \expandafter\def\csname simpleicon@guitarproicon\endcsname {\simpleiconsmapfive\symbol{173}}
+ \expandafter\def\csname simpleicon@gulpicon\endcsname {\simpleiconsmapfive\symbol{174}}
+ \expandafter\def\csname simpleicon@gumroadicon\endcsname {\simpleiconsmapfive\symbol{175}}
+ \expandafter\def\csname simpleicon@gumtreeicon\endcsname {\simpleiconsmapfive\symbol{176}}
+ \expandafter\def\csname simpleicon@gunicornicon\endcsname {\simpleiconsmapfive\symbol{177}}
+ \expandafter\def\csname simpleicon@gurobiicon\endcsname {\simpleiconsmapfive\symbol{178}}
+ \expandafter\def\csname simpleicon@gustoicon\endcsname {\simpleiconsmapfive\symbol{179}}
+ \expandafter\def\csname simpleicon@gutenbergicon\endcsname {\simpleiconsmapfive\symbol{180}}
+ \expandafter\def\csname simpleicon@h3icon\endcsname {\simpleiconsmapfive\symbol{181}}
+ \expandafter\def\csname simpleicon@habricon\endcsname {\simpleiconsmapfive\symbol{182}}
+ \expandafter\def\csname simpleicon@hackadayicon\endcsname {\simpleiconsmapfive\symbol{183}}
+ \expandafter\def\csname simpleicon@hackclubicon\endcsname {\simpleiconsmapfive\symbol{184}}
+ \expandafter\def\csname simpleicon@hackerearthicon\endcsname {\simpleiconsmapfive\symbol{185}}
+ \expandafter\def\csname simpleicon@hackernoonicon\endcsname {\simpleiconsmapfive\symbol{186}}
+ \expandafter\def\csname simpleicon@hackeroneicon\endcsname {\simpleiconsmapfive\symbol{187}}
+ \expandafter\def\csname simpleicon@hackerrankicon\endcsname {\simpleiconsmapfive\symbol{188}}
+ \expandafter\def\csname simpleicon@hackstericon\endcsname {\simpleiconsmapfive\symbol{189}}
+ \expandafter\def\csname simpleicon@hacktheboxicon\endcsname {\simpleiconsmapfive\symbol{190}}
+ \expandafter\def\csname simpleicon@halicon\endcsname {\simpleiconsmapfive\symbol{191}}
+ \expandafter\def\csname simpleicon@handlebarsdotjsicon\endcsname {\simpleiconsmapfive\symbol{192}}
+ \expandafter\def\csname simpleicon@handmicon\endcsname {\simpleiconsmapfive\symbol{193}}
+ \expandafter\def\csname simpleicon@handshakeicon\endcsname {\simpleiconsmapfive\symbol{194}}
+ \expandafter\def\csname simpleicon@handshakeprotocolicon\endcsname {\simpleiconsmapfive\symbol{195}}
+ \expandafter\def\csname simpleicon@happycowicon\endcsname {\simpleiconsmapfive\symbol{196}}
+ \expandafter\def\csname simpleicon@harboricon\endcsname {\simpleiconsmapfive\symbol{197}}
+ \expandafter\def\csname simpleicon@harmonyosicon\endcsname {\simpleiconsmapfive\symbol{198}}
+ \expandafter\def\csname simpleicon@hashicorpicon\endcsname {\simpleiconsmapfive\symbol{199}}
+ \expandafter\def\csname simpleicon@hashnodeicon\endcsname {\simpleiconsmapfive\symbol{200}}
+ \expandafter\def\csname simpleicon@haskellicon\endcsname {\simpleiconsmapfive\symbol{201}}
+ \expandafter\def\csname simpleicon@hasuraicon\endcsname {\simpleiconsmapfive\symbol{202}}
+ \expandafter\def\csname simpleicon@hatenabookmarkicon\endcsname {\simpleiconsmapfive\symbol{203}}
+ \expandafter\def\csname simpleicon@haveibeenpwnedicon\endcsname {\simpleiconsmapfive\symbol{204}}
+ \expandafter\def\csname simpleicon@haxeicon\endcsname {\simpleiconsmapfive\symbol{205}}
+ \expandafter\def\csname simpleicon@hboicon\endcsname {\simpleiconsmapfive\symbol{206}}
+ \expandafter\def\csname simpleicon@hclicon\endcsname {\simpleiconsmapfive\symbol{207}}
+ \expandafter\def\csname simpleicon@hdfcbankicon\endcsname {\simpleiconsmapfive\symbol{208}}
+ \expandafter\def\csname simpleicon@headlessuiicon\endcsname {\simpleiconsmapfive\symbol{209}}
+ \expandafter\def\csname simpleicon@headphonezoneicon\endcsname {\simpleiconsmapfive\symbol{210}}
+ \expandafter\def\csname simpleicon@headspaceicon\endcsname {\simpleiconsmapfive\symbol{211}}
+ \expandafter\def\csname simpleicon@hearthicon\endcsname {\simpleiconsmapfive\symbol{212}}
+ \expandafter\def\csname simpleicon@hearthisdotaticon\endcsname {\simpleiconsmapfive\symbol{213}}
+ \expandafter\def\csname simpleicon@hederaicon\endcsname {\simpleiconsmapfive\symbol{214}}
+ \expandafter\def\csname simpleicon@heliumicon\endcsname {\simpleiconsmapfive\symbol{215}}
+ \expandafter\def\csname simpleicon@helixicon\endcsname {\simpleiconsmapfive\symbol{216}}
+ \expandafter\def\csname simpleicon@hellofreshicon\endcsname {\simpleiconsmapfive\symbol{217}}
+ \expandafter\def\csname simpleicon@hellyhansenicon\endcsname {\simpleiconsmapfive\symbol{218}}
+ \expandafter\def\csname simpleicon@helmicon\endcsname {\simpleiconsmapfive\symbol{219}}
+ \expandafter\def\csname simpleicon@helpdeskicon\endcsname {\simpleiconsmapfive\symbol{220}}
+ \expandafter\def\csname simpleicon@helpscouticon\endcsname {\simpleiconsmapfive\symbol{221}}
+ \expandafter\def\csname simpleicon@hepsiemlakicon\endcsname {\simpleiconsmapfive\symbol{222}}
+ \expandafter\def\csname simpleicon@hereicon\endcsname {\simpleiconsmapfive\symbol{223}}
+ \expandafter\def\csname simpleicon@herokuicon\endcsname {\simpleiconsmapfive\symbol{224}}
+ \expandafter\def\csname simpleicon@hetznericon\endcsname {\simpleiconsmapfive\symbol{225}}
+ \expandafter\def\csname simpleicon@hevyicon\endcsname {\simpleiconsmapfive\symbol{226}}
+ \expandafter\def\csname simpleicon@hexleticon\endcsname {\simpleiconsmapfive\symbol{227}}
+ \expandafter\def\csname simpleicon@hexoicon\endcsname {\simpleiconsmapfive\symbol{228}}
+ \expandafter\def\csname simpleicon@heyicon\endcsname {\simpleiconsmapfive\symbol{229}}
+ \expandafter\def\csname simpleicon@hibernateicon\endcsname {\simpleiconsmapfive\symbol{230}}
+ \expandafter\def\csname simpleicon@hibobicon\endcsname {\simpleiconsmapfive\symbol{231}}
+ \expandafter\def\csname simpleicon@hiltonicon\endcsname {\simpleiconsmapfive\symbol{232}}
+ \expandafter\def\csname simpleicon@hiltonhotelsandresortsicon\endcsname {\simpleiconsmapfive\symbol{233}}
+ \expandafter\def\csname simpleicon@hitachiicon\endcsname {\simpleiconsmapfive\symbol{234}}
+ \expandafter\def\csname simpleicon@hiveicon\endcsname {\simpleiconsmapfive\symbol{235}}
+ \expandafter\def\csname simpleicon@hiveblockchainicon\endcsname {\simpleiconsmapfive\symbol{236}}
+ \expandafter\def\csname simpleicon@hivemqicon\endcsname {\simpleiconsmapfive\symbol{237}}
+ \expandafter\def\csname simpleicon@homarricon\endcsname {\simpleiconsmapfive\symbol{238}}
+ \expandafter\def\csname simpleicon@homeadvisoricon\endcsname {\simpleiconsmapfive\symbol{239}}
+ \expandafter\def\csname simpleicon@homeassistanticon\endcsname {\simpleiconsmapfive\symbol{240}}
+ \expandafter\def\csname simpleicon@homeassistantcommunitystoreicon\endcsname {\simpleiconsmapfive\symbol{241}}
+ \expandafter\def\csname simpleicon@homebrewicon\endcsname {\simpleiconsmapfive\symbol{242}}
+ \expandafter\def\csname simpleicon@homebridgeicon\endcsname {\simpleiconsmapfive\symbol{243}}
+ \expandafter\def\csname simpleicon@homepageicon\endcsname {\simpleiconsmapfive\symbol{244}}
+ \expandafter\def\csname simpleicon@homifyicon\endcsname {\simpleiconsmapfive\symbol{245}}
+ \expandafter\def\csname simpleicon@hondaicon\endcsname {\simpleiconsmapfive\symbol{246}}
+ \expandafter\def\csname simpleicon@honeyicon\endcsname {\simpleiconsmapfive\symbol{247}}
+ \expandafter\def\csname simpleicon@honoicon\endcsname {\simpleiconsmapfive\symbol{248}}
+ \expandafter\def\csname simpleicon@honoricon\endcsname {\simpleiconsmapfive\symbol{249}}
+ \expandafter\def\csname simpleicon@hootsuiteicon\endcsname {\simpleiconsmapfive\symbol{250}}
+ \expandafter\def\csname simpleicon@hoppscotchicon\endcsname {\simpleiconsmapfive\symbol{251}}
+ \expandafter\def\csname simpleicon@hostingericon\endcsname {\simpleiconsmapfive\symbol{252}}
+ \expandafter\def\csname simpleicon@hotelsdotcomicon\endcsname {\simpleiconsmapfive\symbol{253}}
+ \expandafter\def\csname simpleicon@hotjaricon\endcsname {\simpleiconsmapfive\symbol{254}}
+ \expandafter\def\csname simpleicon@hotwireicon\endcsname {\simpleiconsmapfive\symbol{255}}
+ \expandafter\def\csname simpleicon@houdiniicon\endcsname {\simpleiconsmapsix\symbol{0}}
+ \expandafter\def\csname simpleicon@houzzicon\endcsname {\simpleiconsmapsix\symbol{1}}
+ \expandafter\def\csname simpleicon@hpicon\endcsname {\simpleiconsmapsix\symbol{2}}
+ \expandafter\def\csname simpleicon@hsbcicon\endcsname {\simpleiconsmapsix\symbol{3}}
+ \expandafter\def\csname simpleicon@html5icon\endcsname {\simpleiconsmapsix\symbol{4}}
+ \expandafter\def\csname simpleicon@htmlacademyicon\endcsname {\simpleiconsmapsix\symbol{5}}
+ \expandafter\def\csname simpleicon@htmxicon\endcsname {\simpleiconsmapsix\symbol{6}}
+ \expandafter\def\csname simpleicon@htopicon\endcsname {\simpleiconsmapsix\symbol{7}}
+ \expandafter\def\csname simpleicon@httpieicon\endcsname {\simpleiconsmapsix\symbol{8}}
+ \expandafter\def\csname simpleicon@huaweiicon\endcsname {\simpleiconsmapsix\symbol{9}}
+ \expandafter\def\csname simpleicon@hubspoticon\endcsname {\simpleiconsmapsix\symbol{10}}
+ \expandafter\def\csname simpleicon@huggingfaceicon\endcsname {\simpleiconsmapsix\symbol{11}}
+ \expandafter\def\csname simpleicon@hugoicon\endcsname {\simpleiconsmapsix\symbol{12}}
+ \expandafter\def\csname simpleicon@humblebundleicon\endcsname {\simpleiconsmapsix\symbol{13}}
+ \expandafter\def\csname simpleicon@humhubicon\endcsname {\simpleiconsmapsix\symbol{14}}
+ \expandafter\def\csname simpleicon@hungryjacksicon\endcsname {\simpleiconsmapsix\symbol{15}}
+ \expandafter\def\csname simpleicon@husqvarnaicon\endcsname {\simpleiconsmapsix\symbol{16}}
+ \expandafter\def\csname simpleicon@hypericon\endcsname {\simpleiconsmapsix\symbol{17}}
+ \expandafter\def\csname simpleicon@hyperskillicon\endcsname {\simpleiconsmapsix\symbol{18}}
+ \expandafter\def\csname simpleicon@hypothesisicon\endcsname {\simpleiconsmapsix\symbol{19}}
+ \expandafter\def\csname simpleicon@hyprlandicon\endcsname {\simpleiconsmapsix\symbol{20}}
+ \expandafter\def\csname simpleicon@hyundaiicon\endcsname {\simpleiconsmapsix\symbol{21}}
+ \expandafter\def\csname simpleicon@i18nexticon\endcsname {\simpleiconsmapsix\symbol{22}}
+ \expandafter\def\csname simpleicon@i3icon\endcsname {\simpleiconsmapsix\symbol{23}}
+ \expandafter\def\csname simpleicon@iataicon\endcsname {\simpleiconsmapsix\symbol{24}}
+ \expandafter\def\csname simpleicon@ibeaconicon\endcsname {\simpleiconsmapsix\symbol{25}}
+ \expandafter\def\csname simpleicon@iberiaicon\endcsname {\simpleiconsmapsix\symbol{26}}
\expandafter\def\csname simpleicon@icedicon\endcsname {\simpleiconsmapsix\symbol{27}}
\expandafter\def\csname simpleicon@icelandicon\endcsname {\simpleiconsmapsix\symbol{28}}
\expandafter\def\csname simpleicon@icicibankicon\endcsname {\simpleiconsmapsix\symbol{29}}
@@ -1340,37 +1340,37 @@
\expandafter\def\csname simpleicon@indiansuperleagueicon\endcsname {\simpleiconsmapsix\symbol{58}}
\expandafter\def\csname simpleicon@indiehackersicon\endcsname {\simpleiconsmapsix\symbol{59}}
\expandafter\def\csname simpleicon@indigoicon\endcsname {\simpleiconsmapsix\symbol{60}}
- \expandafter\def\csname simpleicon@inertiaicon\endcsname {\simpleiconsmapsix\symbol{61}}
- \expandafter\def\csname simpleicon@infinitiicon\endcsname {\simpleiconsmapsix\symbol{62}}
- \expandafter\def\csname simpleicon@influxdbicon\endcsname {\simpleiconsmapsix\symbol{63}}
- \expandafter\def\csname simpleicon@infomaniakicon\endcsname {\simpleiconsmapsix\symbol{64}}
- \expandafter\def\csname simpleicon@infoqicon\endcsname {\simpleiconsmapsix\symbol{65}}
- \expandafter\def\csname simpleicon@informaticaicon\endcsname {\simpleiconsmapsix\symbol{66}}
- \expandafter\def\csname simpleicon@infosysicon\endcsname {\simpleiconsmapsix\symbol{67}}
- \expandafter\def\csname simpleicon@infracosticon\endcsname {\simpleiconsmapsix\symbol{68}}
- \expandafter\def\csname simpleicon@ingressicon\endcsname {\simpleiconsmapsix\symbol{69}}
- \expandafter\def\csname simpleicon@inkdropicon\endcsname {\simpleiconsmapsix\symbol{70}}
- \expandafter\def\csname simpleicon@inkscapeicon\endcsname {\simpleiconsmapsix\symbol{71}}
- \expandafter\def\csname simpleicon@inoreadericon\endcsname {\simpleiconsmapsix\symbol{72}}
- \expandafter\def\csname simpleicon@insomniaicon\endcsname {\simpleiconsmapsix\symbol{73}}
- \expandafter\def\csname simpleicon@inspireicon\endcsname {\simpleiconsmapsix\symbol{74}}
- \expandafter\def\csname simpleicon@insta360icon\endcsname {\simpleiconsmapsix\symbol{75}}
- \expandafter\def\csname simpleicon@instacarticon\endcsname {\simpleiconsmapsix\symbol{76}}
- \expandafter\def\csname simpleicon@instagramicon\endcsname {\simpleiconsmapsix\symbol{77}}
- \expandafter\def\csname simpleicon@instapapericon\endcsname {\simpleiconsmapsix\symbol{78}}
- \expandafter\def\csname simpleicon@instatusicon\endcsname {\simpleiconsmapsix\symbol{79}}
- \expandafter\def\csname simpleicon@instructablesicon\endcsname {\simpleiconsmapsix\symbol{80}}
- \expandafter\def\csname simpleicon@instructureicon\endcsname {\simpleiconsmapsix\symbol{81}}
- \expandafter\def\csname simpleicon@intelicon\endcsname {\simpleiconsmapsix\symbol{82}}
- \expandafter\def\csname simpleicon@intellijideaicon\endcsname {\simpleiconsmapsix\symbol{83}}
- \expandafter\def\csname simpleicon@interactiondesignfoundationicon\endcsname {\simpleiconsmapsix\symbol{84}}
- \expandafter\def\csname simpleicon@interactjsicon\endcsname {\simpleiconsmapsix\symbol{85}}
- \expandafter\def\csname simpleicon@interbaseicon\endcsname {\simpleiconsmapsix\symbol{86}}
- \expandafter\def\csname simpleicon@intercomicon\endcsname {\simpleiconsmapsix\symbol{87}}
- \expandafter\def\csname simpleicon@intermarcheicon\endcsname {\simpleiconsmapsix\symbol{88}}
- \expandafter\def\csname simpleicon@internetarchiveicon\endcsname {\simpleiconsmapsix\symbol{89}}
- \expandafter\def\csname simpleicon@internetcomputericon\endcsname {\simpleiconsmapsix\symbol{90}}
- \expandafter\def\csname simpleicon@internetexplorericon\endcsname {\simpleiconsmapsix\symbol{91}}
+ \expandafter\def\csname simpleicon@inductiveautomationicon\endcsname {\simpleiconsmapsix\symbol{61}}
+ \expandafter\def\csname simpleicon@inertiaicon\endcsname {\simpleiconsmapsix\symbol{62}}
+ \expandafter\def\csname simpleicon@infinitiicon\endcsname {\simpleiconsmapsix\symbol{63}}
+ \expandafter\def\csname simpleicon@influxdbicon\endcsname {\simpleiconsmapsix\symbol{64}}
+ \expandafter\def\csname simpleicon@infomaniakicon\endcsname {\simpleiconsmapsix\symbol{65}}
+ \expandafter\def\csname simpleicon@infoqicon\endcsname {\simpleiconsmapsix\symbol{66}}
+ \expandafter\def\csname simpleicon@informaticaicon\endcsname {\simpleiconsmapsix\symbol{67}}
+ \expandafter\def\csname simpleicon@infosysicon\endcsname {\simpleiconsmapsix\symbol{68}}
+ \expandafter\def\csname simpleicon@infracosticon\endcsname {\simpleiconsmapsix\symbol{69}}
+ \expandafter\def\csname simpleicon@ingressicon\endcsname {\simpleiconsmapsix\symbol{70}}
+ \expandafter\def\csname simpleicon@inkdropicon\endcsname {\simpleiconsmapsix\symbol{71}}
+ \expandafter\def\csname simpleicon@inkscapeicon\endcsname {\simpleiconsmapsix\symbol{72}}
+ \expandafter\def\csname simpleicon@inoreadericon\endcsname {\simpleiconsmapsix\symbol{73}}
+ \expandafter\def\csname simpleicon@insomniaicon\endcsname {\simpleiconsmapsix\symbol{74}}
+ \expandafter\def\csname simpleicon@inspireicon\endcsname {\simpleiconsmapsix\symbol{75}}
+ \expandafter\def\csname simpleicon@insta360icon\endcsname {\simpleiconsmapsix\symbol{76}}
+ \expandafter\def\csname simpleicon@instacarticon\endcsname {\simpleiconsmapsix\symbol{77}}
+ \expandafter\def\csname simpleicon@instagramicon\endcsname {\simpleiconsmapsix\symbol{78}}
+ \expandafter\def\csname simpleicon@instapapericon\endcsname {\simpleiconsmapsix\symbol{79}}
+ \expandafter\def\csname simpleicon@instatusicon\endcsname {\simpleiconsmapsix\symbol{80}}
+ \expandafter\def\csname simpleicon@instructablesicon\endcsname {\simpleiconsmapsix\symbol{81}}
+ \expandafter\def\csname simpleicon@instructureicon\endcsname {\simpleiconsmapsix\symbol{82}}
+ \expandafter\def\csname simpleicon@intelicon\endcsname {\simpleiconsmapsix\symbol{83}}
+ \expandafter\def\csname simpleicon@intellijideaicon\endcsname {\simpleiconsmapsix\symbol{84}}
+ \expandafter\def\csname simpleicon@interactiondesignfoundationicon\endcsname {\simpleiconsmapsix\symbol{85}}
+ \expandafter\def\csname simpleicon@interactjsicon\endcsname {\simpleiconsmapsix\symbol{86}}
+ \expandafter\def\csname simpleicon@interbaseicon\endcsname {\simpleiconsmapsix\symbol{87}}
+ \expandafter\def\csname simpleicon@intercomicon\endcsname {\simpleiconsmapsix\symbol{88}}
+ \expandafter\def\csname simpleicon@intermarcheicon\endcsname {\simpleiconsmapsix\symbol{89}}
+ \expandafter\def\csname simpleicon@internetarchiveicon\endcsname {\simpleiconsmapsix\symbol{90}}
+ \expandafter\def\csname simpleicon@internetcomputericon\endcsname {\simpleiconsmapsix\symbol{91}}
\expandafter\def\csname simpleicon@intigritiicon\endcsname {\simpleiconsmapsix\symbol{92}}
\expandafter\def\csname simpleicon@intuiticon\endcsname {\simpleiconsmapsix\symbol{93}}
\expandafter\def\csname simpleicon@invisionicon\endcsname {\simpleiconsmapsix\symbol{94}}
@@ -1462,1298 +1462,1298 @@
\expandafter\def\csname simpleicon@kauflandicon\endcsname {\simpleiconsmapsix\symbol{180}}
\expandafter\def\csname simpleicon@kdeicon\endcsname {\simpleiconsmapsix\symbol{181}}
\expandafter\def\csname simpleicon@kdenliveicon\endcsname {\simpleiconsmapsix\symbol{182}}
- \expandafter\def\csname simpleicon@kedroicon\endcsname {\simpleiconsmapsix\symbol{183}}
- \expandafter\def\csname simpleicon@keeneticicon\endcsname {\simpleiconsmapsix\symbol{184}}
- \expandafter\def\csname simpleicon@keepachangelogicon\endcsname {\simpleiconsmapsix\symbol{185}}
- \expandafter\def\csname simpleicon@keepassxcicon\endcsname {\simpleiconsmapsix\symbol{186}}
- \expandafter\def\csname simpleicon@kenticoicon\endcsname {\simpleiconsmapsix\symbol{187}}
- \expandafter\def\csname simpleicon@kerasicon\endcsname {\simpleiconsmapsix\symbol{188}}
- \expandafter\def\csname simpleicon@keybaseicon\endcsname {\simpleiconsmapsix\symbol{189}}
- \expandafter\def\csname simpleicon@keycdnicon\endcsname {\simpleiconsmapsix\symbol{190}}
- \expandafter\def\csname simpleicon@keycloakicon\endcsname {\simpleiconsmapsix\symbol{191}}
- \expandafter\def\csname simpleicon@keystoneicon\endcsname {\simpleiconsmapsix\symbol{192}}
- \expandafter\def\csname simpleicon@kfcicon\endcsname {\simpleiconsmapsix\symbol{193}}
- \expandafter\def\csname simpleicon@khanacademyicon\endcsname {\simpleiconsmapsix\symbol{194}}
- \expandafter\def\csname simpleicon@khronosgroupicon\endcsname {\simpleiconsmapsix\symbol{195}}
- \expandafter\def\csname simpleicon@kiaicon\endcsname {\simpleiconsmapsix\symbol{196}}
- \expandafter\def\csname simpleicon@kibanaicon\endcsname {\simpleiconsmapsix\symbol{197}}
- \expandafter\def\csname simpleicon@kicadicon\endcsname {\simpleiconsmapsix\symbol{198}}
- \expandafter\def\csname simpleicon@kickicon\endcsname {\simpleiconsmapsix\symbol{199}}
- \expandafter\def\csname simpleicon@kickstartericon\endcsname {\simpleiconsmapsix\symbol{200}}
- \expandafter\def\csname simpleicon@kikicon\endcsname {\simpleiconsmapsix\symbol{201}}
- \expandafter\def\csname simpleicon@kingstontechnologyicon\endcsname {\simpleiconsmapsix\symbol{202}}
- \expandafter\def\csname simpleicon@kinopoiskicon\endcsname {\simpleiconsmapsix\symbol{203}}
- \expandafter\def\csname simpleicon@kinstaicon\endcsname {\simpleiconsmapsix\symbol{204}}
- \expandafter\def\csname simpleicon@kirbyicon\endcsname {\simpleiconsmapsix\symbol{205}}
- \expandafter\def\csname simpleicon@kiticon\endcsname {\simpleiconsmapsix\symbol{206}}
- \expandafter\def\csname simpleicon@kitsuicon\endcsname {\simpleiconsmapsix\symbol{207}}
- \expandafter\def\csname simpleicon@klarnaicon\endcsname {\simpleiconsmapsix\symbol{208}}
- \expandafter\def\csname simpleicon@klmicon\endcsname {\simpleiconsmapsix\symbol{209}}
- \expandafter\def\csname simpleicon@klookicon\endcsname {\simpleiconsmapsix\symbol{210}}
- \expandafter\def\csname simpleicon@knativeicon\endcsname {\simpleiconsmapsix\symbol{211}}
- \expandafter\def\csname simpleicon@knexdotjsicon\endcsname {\simpleiconsmapsix\symbol{212}}
- \expandafter\def\csname simpleicon@knimeicon\endcsname {\simpleiconsmapsix\symbol{213}}
- \expandafter\def\csname simpleicon@knipicon\endcsname {\simpleiconsmapsix\symbol{214}}
- \expandafter\def\csname simpleicon@knowledgebaseicon\endcsname {\simpleiconsmapsix\symbol{215}}
- \expandafter\def\csname simpleicon@knownicon\endcsname {\simpleiconsmapsix\symbol{216}}
- \expandafter\def\csname simpleicon@koaicon\endcsname {\simpleiconsmapsix\symbol{217}}
- \expandafter\def\csname simpleicon@kocicon\endcsname {\simpleiconsmapsix\symbol{218}}
- \expandafter\def\csname simpleicon@kodakicon\endcsname {\simpleiconsmapsix\symbol{219}}
- \expandafter\def\csname simpleicon@kodiicon\endcsname {\simpleiconsmapsix\symbol{220}}
- \expandafter\def\csname simpleicon@kofaxicon\endcsname {\simpleiconsmapsix\symbol{221}}
- \expandafter\def\csname simpleicon@kofiicon\endcsname {\simpleiconsmapsix\symbol{222}}
- \expandafter\def\csname simpleicon@komooticon\endcsname {\simpleiconsmapsix\symbol{223}}
- \expandafter\def\csname simpleicon@konamiicon\endcsname {\simpleiconsmapsix\symbol{224}}
- \expandafter\def\csname simpleicon@kongicon\endcsname {\simpleiconsmapsix\symbol{225}}
- \expandafter\def\csname simpleicon@kongregateicon\endcsname {\simpleiconsmapsix\symbol{226}}
- \expandafter\def\csname simpleicon@konvaicon\endcsname {\simpleiconsmapsix\symbol{227}}
- \expandafter\def\csname simpleicon@kotlinicon\endcsname {\simpleiconsmapsix\symbol{228}}
- \expandafter\def\csname simpleicon@koyebicon\endcsname {\simpleiconsmapsix\symbol{229}}
- \expandafter\def\csname simpleicon@kritaicon\endcsname {\simpleiconsmapsix\symbol{230}}
- \expandafter\def\csname simpleicon@ktmicon\endcsname {\simpleiconsmapsix\symbol{231}}
- \expandafter\def\csname simpleicon@ktoricon\endcsname {\simpleiconsmapsix\symbol{232}}
- \expandafter\def\csname simpleicon@kuaishouicon\endcsname {\simpleiconsmapsix\symbol{233}}
- \expandafter\def\csname simpleicon@kubernetesicon\endcsname {\simpleiconsmapsix\symbol{234}}
- \expandafter\def\csname simpleicon@kubuntuicon\endcsname {\simpleiconsmapsix\symbol{235}}
- \expandafter\def\csname simpleicon@kucoinicon\endcsname {\simpleiconsmapsix\symbol{236}}
- \expandafter\def\csname simpleicon@kumaicon\endcsname {\simpleiconsmapsix\symbol{237}}
- \expandafter\def\csname simpleicon@kununuicon\endcsname {\simpleiconsmapsix\symbol{238}}
- \expandafter\def\csname simpleicon@kuulaicon\endcsname {\simpleiconsmapsix\symbol{239}}
- \expandafter\def\csname simpleicon@kxicon\endcsname {\simpleiconsmapsix\symbol{240}}
- \expandafter\def\csname simpleicon@kyoceraicon\endcsname {\simpleiconsmapsix\symbol{241}}
- \expandafter\def\csname simpleicon@labviewicon\endcsname {\simpleiconsmapsix\symbol{242}}
- \expandafter\def\csname simpleicon@ladaicon\endcsname {\simpleiconsmapsix\symbol{243}}
- \expandafter\def\csname simpleicon@lamborghiniicon\endcsname {\simpleiconsmapsix\symbol{244}}
- \expandafter\def\csname simpleicon@landrovericon\endcsname {\simpleiconsmapsix\symbol{245}}
- \expandafter\def\csname simpleicon@langchainicon\endcsname {\simpleiconsmapsix\symbol{246}}
- \expandafter\def\csname simpleicon@lapceicon\endcsname {\simpleiconsmapsix\symbol{247}}
- \expandafter\def\csname simpleicon@laragonicon\endcsname {\simpleiconsmapsix\symbol{248}}
- \expandafter\def\csname simpleicon@laravelicon\endcsname {\simpleiconsmapsix\symbol{249}}
- \expandafter\def\csname simpleicon@laravelhorizonicon\endcsname {\simpleiconsmapsix\symbol{250}}
- \expandafter\def\csname simpleicon@laravelnovaicon\endcsname {\simpleiconsmapsix\symbol{251}}
- \expandafter\def\csname simpleicon@lastdotfmicon\endcsname {\simpleiconsmapsix\symbol{252}}
- \expandafter\def\csname simpleicon@lastpassicon\endcsname {\simpleiconsmapsix\symbol{253}}
- \expandafter\def\csname simpleicon@latexicon\endcsname {\simpleiconsmapsix\symbol{254}}
- \expandafter\def\csname simpleicon@launchpadicon\endcsname {\simpleiconsmapsix\symbol{255}}
- \expandafter\def\csname simpleicon@lazarusicon\endcsname {\simpleiconsmapseven\symbol{0}}
- \expandafter\def\csname simpleicon@lazyvimicon\endcsname {\simpleiconsmapseven\symbol{1}}
- \expandafter\def\csname simpleicon@lbryicon\endcsname {\simpleiconsmapseven\symbol{2}}
- \expandafter\def\csname simpleicon@leaderpriceicon\endcsname {\simpleiconsmapseven\symbol{3}}
- \expandafter\def\csname simpleicon@leafleticon\endcsname {\simpleiconsmapseven\symbol{4}}
- \expandafter\def\csname simpleicon@leagueoflegendsicon\endcsname {\simpleiconsmapseven\symbol{5}}
- \expandafter\def\csname simpleicon@leanpubicon\endcsname {\simpleiconsmapseven\symbol{6}}
- \expandafter\def\csname simpleicon@leetcodeicon\endcsname {\simpleiconsmapseven\symbol{7}}
- \expandafter\def\csname simpleicon@legacygamesicon\endcsname {\simpleiconsmapseven\symbol{8}}
- \expandafter\def\csname simpleicon@leicaicon\endcsname {\simpleiconsmapseven\symbol{9}}
- \expandafter\def\csname simpleicon@lemmyicon\endcsname {\simpleiconsmapseven\symbol{10}}
- \expandafter\def\csname simpleicon@lemonsqueezyicon\endcsname {\simpleiconsmapseven\symbol{11}}
- \expandafter\def\csname simpleicon@lenovoicon\endcsname {\simpleiconsmapseven\symbol{12}}
- \expandafter\def\csname simpleicon@lensicon\endcsname {\simpleiconsmapseven\symbol{13}}
- \expandafter\def\csname simpleicon@leptosicon\endcsname {\simpleiconsmapseven\symbol{14}}
- \expandafter\def\csname simpleicon@lequipeicon\endcsname {\simpleiconsmapseven\symbol{15}}
- \expandafter\def\csname simpleicon@lernaicon\endcsname {\simpleiconsmapseven\symbol{16}}
- \expandafter\def\csname simpleicon@leroymerlinicon\endcsname {\simpleiconsmapseven\symbol{17}}
- \expandafter\def\csname simpleicon@leslibrairesicon\endcsname {\simpleiconsmapseven\symbol{18}}
- \expandafter\def\csname simpleicon@lessicon\endcsname {\simpleiconsmapseven\symbol{19}}
- \expandafter\def\csname simpleicon@letsencrypticon\endcsname {\simpleiconsmapseven\symbol{20}}
- \expandafter\def\csname simpleicon@letterboxdicon\endcsname {\simpleiconsmapseven\symbol{21}}
- \expandafter\def\csname simpleicon@levelsdotfyiicon\endcsname {\simpleiconsmapseven\symbol{22}}
- \expandafter\def\csname simpleicon@lgicon\endcsname {\simpleiconsmapseven\symbol{23}}
- \expandafter\def\csname simpleicon@liberadotchaticon\endcsname {\simpleiconsmapseven\symbol{24}}
- \expandafter\def\csname simpleicon@liberapayicon\endcsname {\simpleiconsmapseven\symbol{25}}
- \expandafter\def\csname simpleicon@librariesdotioicon\endcsname {\simpleiconsmapseven\symbol{26}}
- \expandafter\def\csname simpleicon@librarythingicon\endcsname {\simpleiconsmapseven\symbol{27}}
- \expandafter\def\csname simpleicon@libreofficeicon\endcsname {\simpleiconsmapseven\symbol{28}}
- \expandafter\def\csname simpleicon@libreofficebaseicon\endcsname {\simpleiconsmapseven\symbol{29}}
- \expandafter\def\csname simpleicon@libreofficecalcicon\endcsname {\simpleiconsmapseven\symbol{30}}
- \expandafter\def\csname simpleicon@libreofficedrawicon\endcsname {\simpleiconsmapseven\symbol{31}}
- \expandafter\def\csname simpleicon@libreofficeimpressicon\endcsname {\simpleiconsmapseven\symbol{32}}
- \expandafter\def\csname simpleicon@libreofficemathicon\endcsname {\simpleiconsmapseven\symbol{33}}
- \expandafter\def\csname simpleicon@libreofficewritericon\endcsname {\simpleiconsmapseven\symbol{34}}
- \expandafter\def\csname simpleicon@librewolficon\endcsname {\simpleiconsmapseven\symbol{35}}
- \expandafter\def\csname simpleicon@libuvicon\endcsname {\simpleiconsmapseven\symbol{36}}
- \expandafter\def\csname simpleicon@lichessicon\endcsname {\simpleiconsmapseven\symbol{37}}
- \expandafter\def\csname simpleicon@lidlicon\endcsname {\simpleiconsmapseven\symbol{38}}
- \expandafter\def\csname simpleicon@lifxicon\endcsname {\simpleiconsmapseven\symbol{39}}
- \expandafter\def\csname simpleicon@lightburnicon\endcsname {\simpleiconsmapseven\symbol{40}}
- \expandafter\def\csname simpleicon@lighthouseicon\endcsname {\simpleiconsmapseven\symbol{41}}
- \expandafter\def\csname simpleicon@lightningicon\endcsname {\simpleiconsmapseven\symbol{42}}
- \expandafter\def\csname simpleicon@limesurveyicon\endcsname {\simpleiconsmapseven\symbol{43}}
- \expandafter\def\csname simpleicon@lineicon\endcsname {\simpleiconsmapseven\symbol{44}}
- \expandafter\def\csname simpleicon@lineageosicon\endcsname {\simpleiconsmapseven\symbol{45}}
- \expandafter\def\csname simpleicon@linearicon\endcsname {\simpleiconsmapseven\symbol{46}}
- \expandafter\def\csname simpleicon@liningicon\endcsname {\simpleiconsmapseven\symbol{47}}
- \expandafter\def\csname simpleicon@linkedinicon\endcsname {\simpleiconsmapseven\symbol{48}}
- \expandafter\def\csname simpleicon@linkerdicon\endcsname {\simpleiconsmapseven\symbol{49}}
- \expandafter\def\csname simpleicon@linkfireicon\endcsname {\simpleiconsmapseven\symbol{50}}
- \expandafter\def\csname simpleicon@linksysicon\endcsname {\simpleiconsmapseven\symbol{51}}
- \expandafter\def\csname simpleicon@linktreeicon\endcsname {\simpleiconsmapseven\symbol{52}}
- \expandafter\def\csname simpleicon@lintcodeicon\endcsname {\simpleiconsmapseven\symbol{53}}
- \expandafter\def\csname simpleicon@linuxicon\endcsname {\simpleiconsmapseven\symbol{54}}
- \expandafter\def\csname simpleicon@linuxcontainersicon\endcsname {\simpleiconsmapseven\symbol{55}}
- \expandafter\def\csname simpleicon@linuxfoundationicon\endcsname {\simpleiconsmapseven\symbol{56}}
- \expandafter\def\csname simpleicon@linuxminticon\endcsname {\simpleiconsmapseven\symbol{57}}
- \expandafter\def\csname simpleicon@linuxprofessionalinstituteicon\endcsname {\simpleiconsmapseven\symbol{58}}
- \expandafter\def\csname simpleicon@linuxservericon\endcsname {\simpleiconsmapseven\symbol{59}}
- \expandafter\def\csname simpleicon@lionairicon\endcsname {\simpleiconsmapseven\symbol{60}}
- \expandafter\def\csname simpleicon@liquibaseicon\endcsname {\simpleiconsmapseven\symbol{61}}
- \expandafter\def\csname simpleicon@listmonkicon\endcsname {\simpleiconsmapseven\symbol{62}}
- \expandafter\def\csname simpleicon@liticon\endcsname {\simpleiconsmapseven\symbol{63}}
- \expandafter\def\csname simpleicon@litecoinicon\endcsname {\simpleiconsmapseven\symbol{64}}
- \expandafter\def\csname simpleicon@litiengineicon\endcsname {\simpleiconsmapseven\symbol{65}}
- \expandafter\def\csname simpleicon@livechaticon\endcsname {\simpleiconsmapseven\symbol{66}}
- \expandafter\def\csname simpleicon@livejournalicon\endcsname {\simpleiconsmapseven\symbol{67}}
- \expandafter\def\csname simpleicon@livewireicon\endcsname {\simpleiconsmapseven\symbol{68}}
- \expandafter\def\csname simpleicon@llvmicon\endcsname {\simpleiconsmapseven\symbol{69}}
- \expandafter\def\csname simpleicon@lmmsicon\endcsname {\simpleiconsmapseven\symbol{70}}
- \expandafter\def\csname simpleicon@localicon\endcsname {\simpleiconsmapseven\symbol{71}}
- \expandafter\def\csname simpleicon@lodashicon\endcsname {\simpleiconsmapseven\symbol{72}}
- \expandafter\def\csname simpleicon@logitechicon\endcsname {\simpleiconsmapseven\symbol{73}}
- \expandafter\def\csname simpleicon@logitechgicon\endcsname {\simpleiconsmapseven\symbol{74}}
- \expandafter\def\csname simpleicon@logmeinicon\endcsname {\simpleiconsmapseven\symbol{75}}
- \expandafter\def\csname simpleicon@logseqicon\endcsname {\simpleiconsmapseven\symbol{76}}
- \expandafter\def\csname simpleicon@logstashicon\endcsname {\simpleiconsmapseven\symbol{77}}
- \expandafter\def\csname simpleicon@lookericon\endcsname {\simpleiconsmapseven\symbol{78}}
- \expandafter\def\csname simpleicon@loomicon\endcsname {\simpleiconsmapseven\symbol{79}}
- \expandafter\def\csname simpleicon@loopicon\endcsname {\simpleiconsmapseven\symbol{80}}
- \expandafter\def\csname simpleicon@loopbackicon\endcsname {\simpleiconsmapseven\symbol{81}}
- \expandafter\def\csname simpleicon@lootcrateicon\endcsname {\simpleiconsmapseven\symbol{82}}
- \expandafter\def\csname simpleicon@lospecicon\endcsname {\simpleiconsmapseven\symbol{83}}
- \expandafter\def\csname simpleicon@lotpolishairlinesicon\endcsname {\simpleiconsmapseven\symbol{84}}
- \expandafter\def\csname simpleicon@ltspiceicon\endcsname {\simpleiconsmapseven\symbol{85}}
- \expandafter\def\csname simpleicon@luaicon\endcsname {\simpleiconsmapseven\symbol{86}}
- \expandafter\def\csname simpleicon@lubuntuicon\endcsname {\simpleiconsmapseven\symbol{87}}
- \expandafter\def\csname simpleicon@luciaicon\endcsname {\simpleiconsmapseven\symbol{88}}
- \expandafter\def\csname simpleicon@lucidicon\endcsname {\simpleiconsmapseven\symbol{89}}
- \expandafter\def\csname simpleicon@ludwigicon\endcsname {\simpleiconsmapseven\symbol{90}}
- \expandafter\def\csname simpleicon@lufthansaicon\endcsname {\simpleiconsmapseven\symbol{91}}
- \expandafter\def\csname simpleicon@lumenicon\endcsname {\simpleiconsmapseven\symbol{92}}
- \expandafter\def\csname simpleicon@lunacyicon\endcsname {\simpleiconsmapseven\symbol{93}}
- \expandafter\def\csname simpleicon@lutrisicon\endcsname {\simpleiconsmapseven\symbol{94}}
- \expandafter\def\csname simpleicon@lydiaicon\endcsname {\simpleiconsmapseven\symbol{95}}
- \expandafter\def\csname simpleicon@lyfticon\endcsname {\simpleiconsmapseven\symbol{96}}
- \expandafter\def\csname simpleicon@maasicon\endcsname {\simpleiconsmapseven\symbol{97}}
- \expandafter\def\csname simpleicon@macosicon\endcsname {\simpleiconsmapseven\symbol{98}}
- \expandafter\def\csname simpleicon@macpawicon\endcsname {\simpleiconsmapseven\symbol{99}}
- \expandafter\def\csname simpleicon@macysicon\endcsname {\simpleiconsmapseven\symbol{100}}
- \expandafter\def\csname simpleicon@magasinsuicon\endcsname {\simpleiconsmapseven\symbol{101}}
- \expandafter\def\csname simpleicon@magentoicon\endcsname {\simpleiconsmapseven\symbol{102}}
- \expandafter\def\csname simpleicon@magicicon\endcsname {\simpleiconsmapseven\symbol{103}}
- \expandafter\def\csname simpleicon@magiskicon\endcsname {\simpleiconsmapseven\symbol{104}}
- \expandafter\def\csname simpleicon@mahindraicon\endcsname {\simpleiconsmapseven\symbol{105}}
- \expandafter\def\csname simpleicon@mailchimpicon\endcsname {\simpleiconsmapseven\symbol{106}}
- \expandafter\def\csname simpleicon@maildotcomicon\endcsname {\simpleiconsmapseven\symbol{107}}
- \expandafter\def\csname simpleicon@maildotruicon\endcsname {\simpleiconsmapseven\symbol{108}}
- \expandafter\def\csname simpleicon@mailgunicon\endcsname {\simpleiconsmapseven\symbol{109}}
- \expandafter\def\csname simpleicon@mailtrapicon\endcsname {\simpleiconsmapseven\symbol{110}}
- \expandafter\def\csname simpleicon@mainwpicon\endcsname {\simpleiconsmapseven\symbol{111}}
- \expandafter\def\csname simpleicon@majorleaguehackingicon\endcsname {\simpleiconsmapseven\symbol{112}}
- \expandafter\def\csname simpleicon@makeicon\endcsname {\simpleiconsmapseven\symbol{113}}
- \expandafter\def\csname simpleicon@makerboticon\endcsname {\simpleiconsmapseven\symbol{114}}
- \expandafter\def\csname simpleicon@malticon\endcsname {\simpleiconsmapseven\symbol{115}}
- \expandafter\def\csname simpleicon@malwarebytesicon\endcsname {\simpleiconsmapseven\symbol{116}}
- \expandafter\def\csname simpleicon@mambauiicon\endcsname {\simpleiconsmapseven\symbol{117}}
- \expandafter\def\csname simpleicon@mampicon\endcsname {\simpleiconsmapseven\symbol{118}}
- \expandafter\def\csname simpleicon@manicon\endcsname {\simpleiconsmapseven\symbol{119}}
- \expandafter\def\csname simpleicon@manageiqicon\endcsname {\simpleiconsmapseven\symbol{120}}
- \expandafter\def\csname simpleicon@manjaroicon\endcsname {\simpleiconsmapseven\symbol{121}}
- \expandafter\def\csname simpleicon@mantineicon\endcsname {\simpleiconsmapseven\symbol{122}}
- \expandafter\def\csname simpleicon@mapboxicon\endcsname {\simpleiconsmapseven\symbol{123}}
- \expandafter\def\csname simpleicon@maplibreicon\endcsname {\simpleiconsmapseven\symbol{124}}
- \expandafter\def\csname simpleicon@mariadbicon\endcsname {\simpleiconsmapseven\symbol{125}}
- \expandafter\def\csname simpleicon@mariadbfoundationicon\endcsname {\simpleiconsmapseven\symbol{126}}
- \expandafter\def\csname simpleicon@markdownicon\endcsname {\simpleiconsmapseven\symbol{127}}
- \expandafter\def\csname simpleicon@marketoicon\endcsname {\simpleiconsmapseven\symbol{128}}
- \expandafter\def\csname simpleicon@markoicon\endcsname {\simpleiconsmapseven\symbol{129}}
- \expandafter\def\csname simpleicon@marriotticon\endcsname {\simpleiconsmapseven\symbol{130}}
- \expandafter\def\csname simpleicon@marvelappicon\endcsname {\simpleiconsmapseven\symbol{131}}
- \expandafter\def\csname simpleicon@maseratiicon\endcsname {\simpleiconsmapseven\symbol{132}}
- \expandafter\def\csname simpleicon@mastercardicon\endcsname {\simpleiconsmapseven\symbol{133}}
- \expandafter\def\csname simpleicon@mastercomfigicon\endcsname {\simpleiconsmapseven\symbol{134}}
- \expandafter\def\csname simpleicon@mastodonicon\endcsname {\simpleiconsmapseven\symbol{135}}
- \expandafter\def\csname simpleicon@materialdesignicon\endcsname {\simpleiconsmapseven\symbol{136}}
- \expandafter\def\csname simpleicon@materialdesigniconsicon\endcsname {\simpleiconsmapseven\symbol{137}}
- \expandafter\def\csname simpleicon@materialformkdocsicon\endcsname {\simpleiconsmapseven\symbol{138}}
- \expandafter\def\csname simpleicon@matillionicon\endcsname {\simpleiconsmapseven\symbol{139}}
- \expandafter\def\csname simpleicon@matomoicon\endcsname {\simpleiconsmapseven\symbol{140}}
- \expandafter\def\csname simpleicon@matrixicon\endcsname {\simpleiconsmapseven\symbol{141}}
- \expandafter\def\csname simpleicon@matterdotjsicon\endcsname {\simpleiconsmapseven\symbol{142}}
- \expandafter\def\csname simpleicon@mattermosticon\endcsname {\simpleiconsmapseven\symbol{143}}
- \expandafter\def\csname simpleicon@matterneticon\endcsname {\simpleiconsmapseven\symbol{144}}
- \expandafter\def\csname simpleicon@mauticicon\endcsname {\simpleiconsmapseven\symbol{145}}
- \expandafter\def\csname simpleicon@maxicon\endcsname {\simpleiconsmapseven\symbol{146}}
- \expandafter\def\csname simpleicon@maxplanckgesellschafticon\endcsname {\simpleiconsmapseven\symbol{147}}
- \expandafter\def\csname simpleicon@maytagicon\endcsname {\simpleiconsmapseven\symbol{148}}
- \expandafter\def\csname simpleicon@mazdaicon\endcsname {\simpleiconsmapseven\symbol{149}}
- \expandafter\def\csname simpleicon@mcafeeicon\endcsname {\simpleiconsmapseven\symbol{150}}
- \expandafter\def\csname simpleicon@mcdonaldsicon\endcsname {\simpleiconsmapseven\symbol{151}}
- \expandafter\def\csname simpleicon@mclarenicon\endcsname {\simpleiconsmapseven\symbol{152}}
- \expandafter\def\csname simpleicon@mdbookicon\endcsname {\simpleiconsmapseven\symbol{153}}
- \expandafter\def\csname simpleicon@mdnwebdocsicon\endcsname {\simpleiconsmapseven\symbol{154}}
- \expandafter\def\csname simpleicon@mdxicon\endcsname {\simpleiconsmapseven\symbol{155}}
- \expandafter\def\csname simpleicon@mediafireicon\endcsname {\simpleiconsmapseven\symbol{156}}
- \expandafter\def\csname simpleicon@mediamarkticon\endcsname {\simpleiconsmapseven\symbol{157}}
- \expandafter\def\csname simpleicon@mediatekicon\endcsname {\simpleiconsmapseven\symbol{158}}
- \expandafter\def\csname simpleicon@medibangpainticon\endcsname {\simpleiconsmapseven\symbol{159}}
- \expandafter\def\csname simpleicon@mediumicon\endcsname {\simpleiconsmapseven\symbol{160}}
- \expandafter\def\csname simpleicon@medusaicon\endcsname {\simpleiconsmapseven\symbol{161}}
- \expandafter\def\csname simpleicon@meetupicon\endcsname {\simpleiconsmapseven\symbol{162}}
- \expandafter\def\csname simpleicon@megaicon\endcsname {\simpleiconsmapseven\symbol{163}}
- \expandafter\def\csname simpleicon@meilisearchicon\endcsname {\simpleiconsmapseven\symbol{164}}
- \expandafter\def\csname simpleicon@meituanicon\endcsname {\simpleiconsmapseven\symbol{165}}
- \expandafter\def\csname simpleicon@meizuicon\endcsname {\simpleiconsmapseven\symbol{166}}
- \expandafter\def\csname simpleicon@mendeleyicon\endcsname {\simpleiconsmapseven\symbol{167}}
- \expandafter\def\csname simpleicon@mentorcruiseicon\endcsname {\simpleiconsmapseven\symbol{168}}
- \expandafter\def\csname simpleicon@mercadopagoicon\endcsname {\simpleiconsmapseven\symbol{169}}
- \expandafter\def\csname simpleicon@mercedesicon\endcsname {\simpleiconsmapseven\symbol{170}}
- \expandafter\def\csname simpleicon@merckicon\endcsname {\simpleiconsmapseven\symbol{171}}
- \expandafter\def\csname simpleicon@mercurialicon\endcsname {\simpleiconsmapseven\symbol{172}}
- \expandafter\def\csname simpleicon@mermaidicon\endcsname {\simpleiconsmapseven\symbol{173}}
- \expandafter\def\csname simpleicon@messengericon\endcsname {\simpleiconsmapseven\symbol{174}}
- \expandafter\def\csname simpleicon@metaicon\endcsname {\simpleiconsmapseven\symbol{175}}
- \expandafter\def\csname simpleicon@metabaseicon\endcsname {\simpleiconsmapseven\symbol{176}}
- \expandafter\def\csname simpleicon@metacriticicon\endcsname {\simpleiconsmapseven\symbol{177}}
- \expandafter\def\csname simpleicon@metafiltericon\endcsname {\simpleiconsmapseven\symbol{178}}
- \expandafter\def\csname simpleicon@metasploiticon\endcsname {\simpleiconsmapseven\symbol{179}}
- \expandafter\def\csname simpleicon@meteoricon\endcsname {\simpleiconsmapseven\symbol{180}}
- \expandafter\def\csname simpleicon@metroicon\endcsname {\simpleiconsmapseven\symbol{181}}
- \expandafter\def\csname simpleicon@metrodelaciudaddemexicoicon\endcsname {\simpleiconsmapseven\symbol{182}}
- \expandafter\def\csname simpleicon@metrodemadridicon\endcsname {\simpleiconsmapseven\symbol{183}}
- \expandafter\def\csname simpleicon@metrodeparisicon\endcsname {\simpleiconsmapseven\symbol{184}}
- \expandafter\def\csname simpleicon@meweicon\endcsname {\simpleiconsmapseven\symbol{185}}
- \expandafter\def\csname simpleicon@mgicon\endcsname {\simpleiconsmapseven\symbol{186}}
- \expandafter\def\csname simpleicon@microbiticon\endcsname {\simpleiconsmapseven\symbol{187}}
- \expandafter\def\csname simpleicon@microdotblogicon\endcsname {\simpleiconsmapseven\symbol{188}}
- \expandafter\def\csname simpleicon@microeditoricon\endcsname {\simpleiconsmapseven\symbol{189}}
- \expandafter\def\csname simpleicon@microgeneticsicon\endcsname {\simpleiconsmapseven\symbol{190}}
- \expandafter\def\csname simpleicon@micropythonicon\endcsname {\simpleiconsmapseven\symbol{191}}
- \expandafter\def\csname simpleicon@microsofticon\endcsname {\simpleiconsmapseven\symbol{192}}
- \expandafter\def\csname simpleicon@microsoftacademicicon\endcsname {\simpleiconsmapseven\symbol{193}}
- \expandafter\def\csname simpleicon@microsoftaccessicon\endcsname {\simpleiconsmapseven\symbol{194}}
- \expandafter\def\csname simpleicon@microsoftazureicon\endcsname {\simpleiconsmapseven\symbol{195}}
- \expandafter\def\csname simpleicon@microsoftbingicon\endcsname {\simpleiconsmapseven\symbol{196}}
- \expandafter\def\csname simpleicon@microsoftedgeicon\endcsname {\simpleiconsmapseven\symbol{197}}
- \expandafter\def\csname simpleicon@microsoftexcelicon\endcsname {\simpleiconsmapseven\symbol{198}}
- \expandafter\def\csname simpleicon@microsoftexchangeicon\endcsname {\simpleiconsmapseven\symbol{199}}
- \expandafter\def\csname simpleicon@microsoftonedriveicon\endcsname {\simpleiconsmapseven\symbol{200}}
- \expandafter\def\csname simpleicon@microsoftonenoteicon\endcsname {\simpleiconsmapseven\symbol{201}}
- \expandafter\def\csname simpleicon@microsoftoutlookicon\endcsname {\simpleiconsmapseven\symbol{202}}
- \expandafter\def\csname simpleicon@microsoftpowerpointicon\endcsname {\simpleiconsmapseven\symbol{203}}
- \expandafter\def\csname simpleicon@microsoftsharepointicon\endcsname {\simpleiconsmapseven\symbol{204}}
- \expandafter\def\csname simpleicon@microsoftsqlservericon\endcsname {\simpleiconsmapseven\symbol{205}}
- \expandafter\def\csname simpleicon@microsoftstoreicon\endcsname {\simpleiconsmapseven\symbol{206}}
- \expandafter\def\csname simpleicon@microsoftteamsicon\endcsname {\simpleiconsmapseven\symbol{207}}
- \expandafter\def\csname simpleicon@microsofttranslatoricon\endcsname {\simpleiconsmapseven\symbol{208}}
- \expandafter\def\csname simpleicon@microsoftvisioicon\endcsname {\simpleiconsmapseven\symbol{209}}
- \expandafter\def\csname simpleicon@microsoftwordicon\endcsname {\simpleiconsmapseven\symbol{210}}
- \expandafter\def\csname simpleicon@microstationicon\endcsname {\simpleiconsmapseven\symbol{211}}
- \expandafter\def\csname simpleicon@microstrategyicon\endcsname {\simpleiconsmapseven\symbol{212}}
- \expandafter\def\csname simpleicon@midiicon\endcsname {\simpleiconsmapseven\symbol{213}}
- \expandafter\def\csname simpleicon@migaduicon\endcsname {\simpleiconsmapseven\symbol{214}}
- \expandafter\def\csname simpleicon@mikrotikicon\endcsname {\simpleiconsmapseven\symbol{215}}
- \expandafter\def\csname simpleicon@milanoteicon\endcsname {\simpleiconsmapseven\symbol{216}}
- \expandafter\def\csname simpleicon@milvusicon\endcsname {\simpleiconsmapseven\symbol{217}}
- \expandafter\def\csname simpleicon@mindsicon\endcsname {\simpleiconsmapseven\symbol{218}}
- \expandafter\def\csname simpleicon@minecrafticon\endcsname {\simpleiconsmapseven\symbol{219}}
- \expandafter\def\csname simpleicon@minetesticon\endcsname {\simpleiconsmapseven\symbol{220}}
- \expandafter\def\csname simpleicon@miniicon\endcsname {\simpleiconsmapseven\symbol{221}}
- \expandafter\def\csname simpleicon@minioicon\endcsname {\simpleiconsmapseven\symbol{222}}
- \expandafter\def\csname simpleicon@mintlifyicon\endcsname {\simpleiconsmapseven\symbol{223}}
- \expandafter\def\csname simpleicon@minutemailericon\endcsname {\simpleiconsmapseven\symbol{224}}
- \expandafter\def\csname simpleicon@mirahezeicon\endcsname {\simpleiconsmapseven\symbol{225}}
- \expandafter\def\csname simpleicon@miroicon\endcsname {\simpleiconsmapseven\symbol{226}}
- \expandafter\def\csname simpleicon@misskeyicon\endcsname {\simpleiconsmapseven\symbol{227}}
- \expandafter\def\csname simpleicon@mitsubishiicon\endcsname {\simpleiconsmapseven\symbol{228}}
- \expandafter\def\csname simpleicon@mixicon\endcsname {\simpleiconsmapseven\symbol{229}}
- \expandafter\def\csname simpleicon@mixcloudicon\endcsname {\simpleiconsmapseven\symbol{230}}
- \expandafter\def\csname simpleicon@mixpanelicon\endcsname {\simpleiconsmapseven\symbol{231}}
- \expandafter\def\csname simpleicon@mlbicon\endcsname {\simpleiconsmapseven\symbol{232}}
- \expandafter\def\csname simpleicon@mlflowicon\endcsname {\simpleiconsmapseven\symbol{233}}
- \expandafter\def\csname simpleicon@mobxicon\endcsname {\simpleiconsmapseven\symbol{234}}
- \expandafter\def\csname simpleicon@mobxstatetreeicon\endcsname {\simpleiconsmapseven\symbol{235}}
- \expandafter\def\csname simpleicon@mochaicon\endcsname {\simpleiconsmapseven\symbol{236}}
- \expandafter\def\csname simpleicon@mockserviceworkericon\endcsname {\simpleiconsmapseven\symbol{237}}
- \expandafter\def\csname simpleicon@modalicon\endcsname {\simpleiconsmapseven\symbol{238}}
- \expandafter\def\csname simpleicon@modinicon\endcsname {\simpleiconsmapseven\symbol{239}}
- \expandafter\def\csname simpleicon@modrinthicon\endcsname {\simpleiconsmapseven\symbol{240}}
- \expandafter\def\csname simpleicon@modxicon\endcsname {\simpleiconsmapseven\symbol{241}}
- \expandafter\def\csname simpleicon@mojangstudiosicon\endcsname {\simpleiconsmapseven\symbol{242}}
- \expandafter\def\csname simpleicon@moleculericon\endcsname {\simpleiconsmapseven\symbol{243}}
- \expandafter\def\csname simpleicon@momenteoicon\endcsname {\simpleiconsmapseven\symbol{244}}
- \expandafter\def\csname simpleicon@moneroicon\endcsname {\simpleiconsmapseven\symbol{245}}
- \expandafter\def\csname simpleicon@moneygramicon\endcsname {\simpleiconsmapseven\symbol{246}}
- \expandafter\def\csname simpleicon@mongodbicon\endcsname {\simpleiconsmapseven\symbol{247}}
- \expandafter\def\csname simpleicon@mongooseicon\endcsname {\simpleiconsmapseven\symbol{248}}
- \expandafter\def\csname simpleicon@mongoosedotwsicon\endcsname {\simpleiconsmapseven\symbol{249}}
- \expandafter\def\csname simpleicon@monicaicon\endcsname {\simpleiconsmapseven\symbol{250}}
- \expandafter\def\csname simpleicon@monkeytieicon\endcsname {\simpleiconsmapseven\symbol{251}}
- \expandafter\def\csname simpleicon@monkeytypeicon\endcsname {\simpleiconsmapseven\symbol{252}}
- \expandafter\def\csname simpleicon@monogameicon\endcsname {\simpleiconsmapseven\symbol{253}}
- \expandafter\def\csname simpleicon@monoprixicon\endcsname {\simpleiconsmapseven\symbol{254}}
- \expandafter\def\csname simpleicon@monstericon\endcsname {\simpleiconsmapseven\symbol{255}}
- \expandafter\def\csname simpleicon@monzoicon\endcsname {\simpleiconsmapeight\symbol{0}}
- \expandafter\def\csname simpleicon@mooicon\endcsname {\simpleiconsmapeight\symbol{1}}
- \expandafter\def\csname simpleicon@moodleicon\endcsname {\simpleiconsmapeight\symbol{2}}
- \expandafter\def\csname simpleicon@moonrepoicon\endcsname {\simpleiconsmapeight\symbol{3}}
- \expandafter\def\csname simpleicon@moqupsicon\endcsname {\simpleiconsmapeight\symbol{4}}
- \expandafter\def\csname simpleicon@morrisonsicon\endcsname {\simpleiconsmapeight\symbol{5}}
- \expandafter\def\csname simpleicon@moscowmetroicon\endcsname {\simpleiconsmapeight\symbol{6}}
- \expandafter\def\csname simpleicon@motorolaicon\endcsname {\simpleiconsmapeight\symbol{7}}
- \expandafter\def\csname simpleicon@mozillaicon\endcsname {\simpleiconsmapeight\symbol{8}}
- \expandafter\def\csname simpleicon@mpvicon\endcsname {\simpleiconsmapeight\symbol{9}}
- \expandafter\def\csname simpleicon@mqtticon\endcsname {\simpleiconsmapeight\symbol{10}}
- \expandafter\def\csname simpleicon@msiicon\endcsname {\simpleiconsmapeight\symbol{11}}
- \expandafter\def\csname simpleicon@msibusinessicon\endcsname {\simpleiconsmapeight\symbol{12}}
- \expandafter\def\csname simpleicon@mtaicon\endcsname {\simpleiconsmapeight\symbol{13}}
- \expandafter\def\csname simpleicon@mtricon\endcsname {\simpleiconsmapeight\symbol{14}}
- \expandafter\def\csname simpleicon@mubiicon\endcsname {\simpleiconsmapeight\symbol{15}}
- \expandafter\def\csname simpleicon@muiicon\endcsname {\simpleiconsmapeight\symbol{16}}
- \expandafter\def\csname simpleicon@mulesofticon\endcsname {\simpleiconsmapeight\symbol{17}}
- \expandafter\def\csname simpleicon@mullericon\endcsname {\simpleiconsmapeight\symbol{18}}
- \expandafter\def\csname simpleicon@multisimicon\endcsname {\simpleiconsmapeight\symbol{19}}
- \expandafter\def\csname simpleicon@mumbleicon\endcsname {\simpleiconsmapeight\symbol{20}}
- \expandafter\def\csname simpleicon@muoicon\endcsname {\simpleiconsmapeight\symbol{21}}
- \expandafter\def\csname simpleicon@muralicon\endcsname {\simpleiconsmapeight\symbol{22}}
- \expandafter\def\csname simpleicon@musescoreicon\endcsname {\simpleiconsmapeight\symbol{23}}
- \expandafter\def\csname simpleicon@musicbrainzicon\endcsname {\simpleiconsmapeight\symbol{24}}
- \expandafter\def\csname simpleicon@mxlinuxicon\endcsname {\simpleiconsmapeight\symbol{25}}
- \expandafter\def\csname simpleicon@myanimelisticon\endcsname {\simpleiconsmapeight\symbol{26}}
- \expandafter\def\csname simpleicon@mygeticon\endcsname {\simpleiconsmapeight\symbol{27}}
- \expandafter\def\csname simpleicon@myobicon\endcsname {\simpleiconsmapeight\symbol{28}}
- \expandafter\def\csname simpleicon@myspaceicon\endcsname {\simpleiconsmapeight\symbol{29}}
- \expandafter\def\csname simpleicon@mysqlicon\endcsname {\simpleiconsmapeight\symbol{30}}
- \expandafter\def\csname simpleicon@n26icon\endcsname {\simpleiconsmapeight\symbol{31}}
- \expandafter\def\csname simpleicon@n8nicon\endcsname {\simpleiconsmapeight\symbol{32}}
- \expandafter\def\csname simpleicon@namebaseicon\endcsname {\simpleiconsmapeight\symbol{33}}
- \expandafter\def\csname simpleicon@namecheapicon\endcsname {\simpleiconsmapeight\symbol{34}}
- \expandafter\def\csname simpleicon@namemcicon\endcsname {\simpleiconsmapeight\symbol{35}}
- \expandafter\def\csname simpleicon@namesiloicon\endcsname {\simpleiconsmapeight\symbol{36}}
- \expandafter\def\csname simpleicon@namuwikiicon\endcsname {\simpleiconsmapeight\symbol{37}}
- \expandafter\def\csname simpleicon@nanoicon\endcsname {\simpleiconsmapeight\symbol{38}}
- \expandafter\def\csname simpleicon@nasaicon\endcsname {\simpleiconsmapeight\symbol{39}}
- \expandafter\def\csname simpleicon@nationalgridicon\endcsname {\simpleiconsmapeight\symbol{40}}
- \expandafter\def\csname simpleicon@nationalrailicon\endcsname {\simpleiconsmapeight\symbol{41}}
- \expandafter\def\csname simpleicon@nativescripticon\endcsname {\simpleiconsmapeight\symbol{42}}
- \expandafter\def\csname simpleicon@natsdotioicon\endcsname {\simpleiconsmapeight\symbol{43}}
- \expandafter\def\csname simpleicon@navericon\endcsname {\simpleiconsmapeight\symbol{44}}
- \expandafter\def\csname simpleicon@nbaicon\endcsname {\simpleiconsmapeight\symbol{45}}
- \expandafter\def\csname simpleicon@nbbicon\endcsname {\simpleiconsmapeight\symbol{46}}
- \expandafter\def\csname simpleicon@nbcicon\endcsname {\simpleiconsmapeight\symbol{47}}
- \expandafter\def\csname simpleicon@ndricon\endcsname {\simpleiconsmapeight\symbol{48}}
- \expandafter\def\csname simpleicon@nearicon\endcsname {\simpleiconsmapeight\symbol{49}}
- \expandafter\def\csname simpleicon@necicon\endcsname {\simpleiconsmapeight\symbol{50}}
- \expandafter\def\csname simpleicon@neo4jicon\endcsname {\simpleiconsmapeight\symbol{51}}
- \expandafter\def\csname simpleicon@neovimicon\endcsname {\simpleiconsmapeight\symbol{52}}
- \expandafter\def\csname simpleicon@neptuneicon\endcsname {\simpleiconsmapeight\symbol{53}}
- \expandafter\def\csname simpleicon@nestjsicon\endcsname {\simpleiconsmapeight\symbol{54}}
- \expandafter\def\csname simpleicon@netappicon\endcsname {\simpleiconsmapeight\symbol{55}}
- \expandafter\def\csname simpleicon@netbsdicon\endcsname {\simpleiconsmapeight\symbol{56}}
- \expandafter\def\csname simpleicon@netcupicon\endcsname {\simpleiconsmapeight\symbol{57}}
- \expandafter\def\csname simpleicon@netdataicon\endcsname {\simpleiconsmapeight\symbol{58}}
- \expandafter\def\csname simpleicon@neteasecloudmusicicon\endcsname {\simpleiconsmapeight\symbol{59}}
- \expandafter\def\csname simpleicon@netflixicon\endcsname {\simpleiconsmapeight\symbol{60}}
- \expandafter\def\csname simpleicon@netgearicon\endcsname {\simpleiconsmapeight\symbol{61}}
- \expandafter\def\csname simpleicon@netlifyicon\endcsname {\simpleiconsmapeight\symbol{62}}
- \expandafter\def\csname simpleicon@netteicon\endcsname {\simpleiconsmapeight\symbol{63}}
- \expandafter\def\csname simpleicon@nettoicon\endcsname {\simpleiconsmapeight\symbol{64}}
- \expandafter\def\csname simpleicon@neutralinojsicon\endcsname {\simpleiconsmapeight\symbol{65}}
- \expandafter\def\csname simpleicon@newbalanceicon\endcsname {\simpleiconsmapeight\symbol{66}}
- \expandafter\def\csname simpleicon@neweggicon\endcsname {\simpleiconsmapeight\symbol{67}}
- \expandafter\def\csname simpleicon@newjapanprowrestlingicon\endcsname {\simpleiconsmapeight\symbol{68}}
- \expandafter\def\csname simpleicon@newrelicicon\endcsname {\simpleiconsmapeight\symbol{69}}
- \expandafter\def\csname simpleicon@newyorktimesicon\endcsname {\simpleiconsmapeight\symbol{70}}
- \expandafter\def\csname simpleicon@nextbilliondotaiicon\endcsname {\simpleiconsmapeight\symbol{71}}
- \expandafter\def\csname simpleicon@nextcloudicon\endcsname {\simpleiconsmapeight\symbol{72}}
- \expandafter\def\csname simpleicon@nextdnsicon\endcsname {\simpleiconsmapeight\symbol{73}}
- \expandafter\def\csname simpleicon@nextdooricon\endcsname {\simpleiconsmapeight\symbol{74}}
- \expandafter\def\csname simpleicon@nextdotjsicon\endcsname {\simpleiconsmapeight\symbol{75}}
- \expandafter\def\csname simpleicon@nextraicon\endcsname {\simpleiconsmapeight\symbol{76}}
- \expandafter\def\csname simpleicon@nextuiicon\endcsname {\simpleiconsmapeight\symbol{77}}
- \expandafter\def\csname simpleicon@nexusmodsicon\endcsname {\simpleiconsmapeight\symbol{78}}
- \expandafter\def\csname simpleicon@nfcicon\endcsname {\simpleiconsmapeight\symbol{79}}
- \expandafter\def\csname simpleicon@nginxicon\endcsname {\simpleiconsmapeight\symbol{80}}
- \expandafter\def\csname simpleicon@nginxproxymanagericon\endcsname {\simpleiconsmapeight\symbol{81}}
- \expandafter\def\csname simpleicon@ngrokicon\endcsname {\simpleiconsmapeight\symbol{82}}
- \expandafter\def\csname simpleicon@ngrxicon\endcsname {\simpleiconsmapeight\symbol{83}}
- \expandafter\def\csname simpleicon@nhlicon\endcsname {\simpleiconsmapeight\symbol{84}}
- \expandafter\def\csname simpleicon@nicehashicon\endcsname {\simpleiconsmapeight\symbol{85}}
- \expandafter\def\csname simpleicon@niconicoicon\endcsname {\simpleiconsmapeight\symbol{86}}
- \expandafter\def\csname simpleicon@nikeicon\endcsname {\simpleiconsmapeight\symbol{87}}
- \expandafter\def\csname simpleicon@nikonicon\endcsname {\simpleiconsmapeight\symbol{88}}
- \expandafter\def\csname simpleicon@nimicon\endcsname {\simpleiconsmapeight\symbol{89}}
- \expandafter\def\csname simpleicon@nintendoicon\endcsname {\simpleiconsmapeight\symbol{90}}
- \expandafter\def\csname simpleicon@nintendo3dsicon\endcsname {\simpleiconsmapeight\symbol{91}}
- \expandafter\def\csname simpleicon@nintendogamecubeicon\endcsname {\simpleiconsmapeight\symbol{92}}
- \expandafter\def\csname simpleicon@nintendoswitchicon\endcsname {\simpleiconsmapeight\symbol{93}}
- \expandafter\def\csname simpleicon@nissanicon\endcsname {\simpleiconsmapeight\symbol{94}}
- \expandafter\def\csname simpleicon@nixosicon\endcsname {\simpleiconsmapeight\symbol{95}}
- \expandafter\def\csname simpleicon@nodedotjsicon\endcsname {\simpleiconsmapeight\symbol{96}}
- \expandafter\def\csname simpleicon@nodemonicon\endcsname {\simpleiconsmapeight\symbol{97}}
- \expandafter\def\csname simpleicon@noderedicon\endcsname {\simpleiconsmapeight\symbol{98}}
- \expandafter\def\csname simpleicon@nokiaicon\endcsname {\simpleiconsmapeight\symbol{99}}
- \expandafter\def\csname simpleicon@nomadicon\endcsname {\simpleiconsmapeight\symbol{100}}
- \expandafter\def\csname simpleicon@norcoicon\endcsname {\simpleiconsmapeight\symbol{101}}
- \expandafter\def\csname simpleicon@nordicsemiconductoricon\endcsname {\simpleiconsmapeight\symbol{102}}
- \expandafter\def\csname simpleicon@nordvpnicon\endcsname {\simpleiconsmapeight\symbol{103}}
- \expandafter\def\csname simpleicon@normalizedotcssicon\endcsname {\simpleiconsmapeight\symbol{104}}
- \expandafter\def\csname simpleicon@nortonicon\endcsname {\simpleiconsmapeight\symbol{105}}
- \expandafter\def\csname simpleicon@norwegianicon\endcsname {\simpleiconsmapeight\symbol{106}}
- \expandafter\def\csname simpleicon@notepadplusplusicon\endcsname {\simpleiconsmapeight\symbol{107}}
- \expandafter\def\csname simpleicon@notionicon\endcsname {\simpleiconsmapeight\symbol{108}}
- \expandafter\def\csname simpleicon@notisticon\endcsname {\simpleiconsmapeight\symbol{109}}
- \expandafter\def\csname simpleicon@nounprojecticon\endcsname {\simpleiconsmapeight\symbol{110}}
- \expandafter\def\csname simpleicon@novuicon\endcsname {\simpleiconsmapeight\symbol{111}}
- \expandafter\def\csname simpleicon@nowicon\endcsname {\simpleiconsmapeight\symbol{112}}
- \expandafter\def\csname simpleicon@npmicon\endcsname {\simpleiconsmapeight\symbol{113}}
- \expandafter\def\csname simpleicon@nrwlicon\endcsname {\simpleiconsmapeight\symbol{114}}
- \expandafter\def\csname simpleicon@nsisicon\endcsname {\simpleiconsmapeight\symbol{115}}
- \expandafter\def\csname simpleicon@ntfyicon\endcsname {\simpleiconsmapeight\symbol{116}}
- \expandafter\def\csname simpleicon@nubankicon\endcsname {\simpleiconsmapeight\symbol{117}}
- \expandafter\def\csname simpleicon@nucleoicon\endcsname {\simpleiconsmapeight\symbol{118}}
- \expandafter\def\csname simpleicon@nugeticon\endcsname {\simpleiconsmapeight\symbol{119}}
- \expandafter\def\csname simpleicon@nukeicon\endcsname {\simpleiconsmapeight\symbol{120}}
- \expandafter\def\csname simpleicon@numbaicon\endcsname {\simpleiconsmapeight\symbol{121}}
- \expandafter\def\csname simpleicon@numpyicon\endcsname {\simpleiconsmapeight\symbol{122}}
- \expandafter\def\csname simpleicon@nunjucksicon\endcsname {\simpleiconsmapeight\symbol{123}}
- \expandafter\def\csname simpleicon@nushellicon\endcsname {\simpleiconsmapeight\symbol{124}}
- \expandafter\def\csname simpleicon@nutanixicon\endcsname {\simpleiconsmapeight\symbol{125}}
- \expandafter\def\csname simpleicon@nuxtdotjsicon\endcsname {\simpleiconsmapeight\symbol{126}}
- \expandafter\def\csname simpleicon@nvidiaicon\endcsname {\simpleiconsmapeight\symbol{127}}
- \expandafter\def\csname simpleicon@nvmicon\endcsname {\simpleiconsmapeight\symbol{128}}
- \expandafter\def\csname simpleicon@nxicon\endcsname {\simpleiconsmapeight\symbol{129}}
- \expandafter\def\csname simpleicon@nxpicon\endcsname {\simpleiconsmapeight\symbol{130}}
- \expandafter\def\csname simpleicon@nzxticon\endcsname {\simpleiconsmapeight\symbol{131}}
- \expandafter\def\csname simpleicon@observableicon\endcsname {\simpleiconsmapeight\symbol{132}}
- \expandafter\def\csname simpleicon@obsidianicon\endcsname {\simpleiconsmapeight\symbol{133}}
- \expandafter\def\csname simpleicon@obsstudioicon\endcsname {\simpleiconsmapeight\symbol{134}}
- \expandafter\def\csname simpleicon@ocamlicon\endcsname {\simpleiconsmapeight\symbol{135}}
- \expandafter\def\csname simpleicon@oclificon\endcsname {\simpleiconsmapeight\symbol{136}}
- \expandafter\def\csname simpleicon@octanerendericon\endcsname {\simpleiconsmapeight\symbol{137}}
- \expandafter\def\csname simpleicon@octaveicon\endcsname {\simpleiconsmapeight\symbol{138}}
- \expandafter\def\csname simpleicon@octobercmsicon\endcsname {\simpleiconsmapeight\symbol{139}}
- \expandafter\def\csname simpleicon@octoprinticon\endcsname {\simpleiconsmapeight\symbol{140}}
- \expandafter\def\csname simpleicon@octopusdeployicon\endcsname {\simpleiconsmapeight\symbol{141}}
- \expandafter\def\csname simpleicon@oculusicon\endcsname {\simpleiconsmapeight\symbol{142}}
- \expandafter\def\csname simpleicon@odnoklassnikiicon\endcsname {\simpleiconsmapeight\symbol{143}}
- \expandafter\def\csname simpleicon@odooicon\endcsname {\simpleiconsmapeight\symbol{144}}
- \expandafter\def\csname simpleicon@odyseeicon\endcsname {\simpleiconsmapeight\symbol{145}}
- \expandafter\def\csname simpleicon@ohdearicon\endcsname {\simpleiconsmapeight\symbol{146}}
- \expandafter\def\csname simpleicon@okcupidicon\endcsname {\simpleiconsmapeight\symbol{147}}
- \expandafter\def\csname simpleicon@oktaicon\endcsname {\simpleiconsmapeight\symbol{148}}
- \expandafter\def\csname simpleicon@oneplusicon\endcsname {\simpleiconsmapeight\symbol{149}}
- \expandafter\def\csname simpleicon@onlyfansicon\endcsname {\simpleiconsmapeight\symbol{150}}
- \expandafter\def\csname simpleicon@onlyofficeicon\endcsname {\simpleiconsmapeight\symbol{151}}
- \expandafter\def\csname simpleicon@onnxicon\endcsname {\simpleiconsmapeight\symbol{152}}
- \expandafter\def\csname simpleicon@onstaricon\endcsname {\simpleiconsmapeight\symbol{153}}
- \expandafter\def\csname simpleicon@opelicon\endcsname {\simpleiconsmapeight\symbol{154}}
- \expandafter\def\csname simpleicon@openaccessicon\endcsname {\simpleiconsmapeight\symbol{155}}
- \expandafter\def\csname simpleicon@openaiicon\endcsname {\simpleiconsmapeight\symbol{156}}
- \expandafter\def\csname simpleicon@openaigymicon\endcsname {\simpleiconsmapeight\symbol{157}}
- \expandafter\def\csname simpleicon@openapiinitiativeicon\endcsname {\simpleiconsmapeight\symbol{158}}
- \expandafter\def\csname simpleicon@openbadgesicon\endcsname {\simpleiconsmapeight\symbol{159}}
- \expandafter\def\csname simpleicon@openbsdicon\endcsname {\simpleiconsmapeight\symbol{160}}
- \expandafter\def\csname simpleicon@openbugbountyicon\endcsname {\simpleiconsmapeight\symbol{161}}
- \expandafter\def\csname simpleicon@opencollectiveicon\endcsname {\simpleiconsmapeight\symbol{162}}
- \expandafter\def\csname simpleicon@opencontainersinitiativeicon\endcsname {\simpleiconsmapeight\symbol{163}}
- \expandafter\def\csname simpleicon@opencvicon\endcsname {\simpleiconsmapeight\symbol{164}}
- \expandafter\def\csname simpleicon@openfaasicon\endcsname {\simpleiconsmapeight\symbol{165}}
- \expandafter\def\csname simpleicon@openglicon\endcsname {\simpleiconsmapeight\symbol{166}}
- \expandafter\def\csname simpleicon@openhabicon\endcsname {\simpleiconsmapeight\symbol{167}}
- \expandafter\def\csname simpleicon@openidicon\endcsname {\simpleiconsmapeight\symbol{168}}
- \expandafter\def\csname simpleicon@openjdkicon\endcsname {\simpleiconsmapeight\symbol{169}}
- \expandafter\def\csname simpleicon@openjsfoundationicon\endcsname {\simpleiconsmapeight\symbol{170}}
- \expandafter\def\csname simpleicon@openlayersicon\endcsname {\simpleiconsmapeight\symbol{171}}
- \expandafter\def\csname simpleicon@openmediavaulticon\endcsname {\simpleiconsmapeight\symbol{172}}
- \expandafter\def\csname simpleicon@openminedicon\endcsname {\simpleiconsmapeight\symbol{173}}
- \expandafter\def\csname simpleicon@opennebulaicon\endcsname {\simpleiconsmapeight\symbol{174}}
- \expandafter\def\csname simpleicon@openprojecticon\endcsname {\simpleiconsmapeight\symbol{175}}
- \expandafter\def\csname simpleicon@openscadicon\endcsname {\simpleiconsmapeight\symbol{176}}
- \expandafter\def\csname simpleicon@openseaicon\endcsname {\simpleiconsmapeight\symbol{177}}
- \expandafter\def\csname simpleicon@opensearchicon\endcsname {\simpleiconsmapeight\symbol{178}}
- \expandafter\def\csname simpleicon@opensourcehardwareicon\endcsname {\simpleiconsmapeight\symbol{179}}
- \expandafter\def\csname simpleicon@opensourceinitiativeicon\endcsname {\simpleiconsmapeight\symbol{180}}
- \expandafter\def\csname simpleicon@opensslicon\endcsname {\simpleiconsmapeight\symbol{181}}
- \expandafter\def\csname simpleicon@openstackicon\endcsname {\simpleiconsmapeight\symbol{182}}
- \expandafter\def\csname simpleicon@openstreetmapicon\endcsname {\simpleiconsmapeight\symbol{183}}
- \expandafter\def\csname simpleicon@opensuseicon\endcsname {\simpleiconsmapeight\symbol{184}}
- \expandafter\def\csname simpleicon@opentelemetryicon\endcsname {\simpleiconsmapeight\symbol{185}}
- \expandafter\def\csname simpleicon@opentexticon\endcsname {\simpleiconsmapeight\symbol{186}}
- \expandafter\def\csname simpleicon@opentofuicon\endcsname {\simpleiconsmapeight\symbol{187}}
- \expandafter\def\csname simpleicon@openverseicon\endcsname {\simpleiconsmapeight\symbol{188}}
- \expandafter\def\csname simpleicon@openvpnicon\endcsname {\simpleiconsmapeight\symbol{189}}
- \expandafter\def\csname simpleicon@openwrticon\endcsname {\simpleiconsmapeight\symbol{190}}
- \expandafter\def\csname simpleicon@openzeppelinicon\endcsname {\simpleiconsmapeight\symbol{191}}
- \expandafter\def\csname simpleicon@openzfsicon\endcsname {\simpleiconsmapeight\symbol{192}}
- \expandafter\def\csname simpleicon@operaicon\endcsname {\simpleiconsmapeight\symbol{193}}
- \expandafter\def\csname simpleicon@operagxicon\endcsname {\simpleiconsmapeight\symbol{194}}
- \expandafter\def\csname simpleicon@opnsenseicon\endcsname {\simpleiconsmapeight\symbol{195}}
- \expandafter\def\csname simpleicon@oppoicon\endcsname {\simpleiconsmapeight\symbol{196}}
- \expandafter\def\csname simpleicon@opsgenieicon\endcsname {\simpleiconsmapeight\symbol{197}}
- \expandafter\def\csname simpleicon@opslevelicon\endcsname {\simpleiconsmapeight\symbol{198}}
- \expandafter\def\csname simpleicon@optimismicon\endcsname {\simpleiconsmapeight\symbol{199}}
- \expandafter\def\csname simpleicon@oracleicon\endcsname {\simpleiconsmapeight\symbol{200}}
- \expandafter\def\csname simpleicon@orangeicon\endcsname {\simpleiconsmapeight\symbol{201}}
- \expandafter\def\csname simpleicon@orcidicon\endcsname {\simpleiconsmapeight\symbol{202}}
- \expandafter\def\csname simpleicon@oreillyicon\endcsname {\simpleiconsmapeight\symbol{203}}
- \expandafter\def\csname simpleicon@orgicon\endcsname {\simpleiconsmapeight\symbol{204}}
- \expandafter\def\csname simpleicon@originicon\endcsname {\simpleiconsmapeight\symbol{205}}
- \expandafter\def\csname simpleicon@osanoicon\endcsname {\simpleiconsmapeight\symbol{206}}
- \expandafter\def\csname simpleicon@osficon\endcsname {\simpleiconsmapeight\symbol{207}}
- \expandafter\def\csname simpleicon@osgeoicon\endcsname {\simpleiconsmapeight\symbol{208}}
- \expandafter\def\csname simpleicon@oshkoshicon\endcsname {\simpleiconsmapeight\symbol{209}}
- \expandafter\def\csname simpleicon@osmcicon\endcsname {\simpleiconsmapeight\symbol{210}}
- \expandafter\def\csname simpleicon@osuicon\endcsname {\simpleiconsmapeight\symbol{211}}
- \expandafter\def\csname simpleicon@ottoicon\endcsname {\simpleiconsmapeight\symbol{212}}
- \expandafter\def\csname simpleicon@overcasticon\endcsname {\simpleiconsmapeight\symbol{213}}
- \expandafter\def\csname simpleicon@overleaficon\endcsname {\simpleiconsmapeight\symbol{214}}
- \expandafter\def\csname simpleicon@ovhicon\endcsname {\simpleiconsmapeight\symbol{215}}
- \expandafter\def\csname simpleicon@owaspicon\endcsname {\simpleiconsmapeight\symbol{216}}
- \expandafter\def\csname simpleicon@owncloudicon\endcsname {\simpleiconsmapeight\symbol{217}}
- \expandafter\def\csname simpleicon@oxygenicon\endcsname {\simpleiconsmapeight\symbol{218}}
- \expandafter\def\csname simpleicon@oyoicon\endcsname {\simpleiconsmapeight\symbol{219}}
- \expandafter\def\csname simpleicon@p5dotjsicon\endcsname {\simpleiconsmapeight\symbol{220}}
- \expandafter\def\csname simpleicon@packagisticon\endcsname {\simpleiconsmapeight\symbol{221}}
- \expandafter\def\csname simpleicon@packericon\endcsname {\simpleiconsmapeight\symbol{222}}
- \expandafter\def\csname simpleicon@packticon\endcsname {\simpleiconsmapeight\symbol{223}}
- \expandafter\def\csname simpleicon@paddleicon\endcsname {\simpleiconsmapeight\symbol{224}}
- \expandafter\def\csname simpleicon@paddlepaddleicon\endcsname {\simpleiconsmapeight\symbol{225}}
- \expandafter\def\csname simpleicon@paddypowericon\endcsname {\simpleiconsmapeight\symbol{226}}
- \expandafter\def\csname simpleicon@pagekiticon\endcsname {\simpleiconsmapeight\symbol{227}}
- \expandafter\def\csname simpleicon@pagerdutyicon\endcsname {\simpleiconsmapeight\symbol{228}}
- \expandafter\def\csname simpleicon@pagespeedinsightsicon\endcsname {\simpleiconsmapeight\symbol{229}}
- \expandafter\def\csname simpleicon@pagseguroicon\endcsname {\simpleiconsmapeight\symbol{230}}
- \expandafter\def\csname simpleicon@palantiricon\endcsname {\simpleiconsmapeight\symbol{231}}
- \expandafter\def\csname simpleicon@paloaltonetworksicon\endcsname {\simpleiconsmapeight\symbol{232}}
- \expandafter\def\csname simpleicon@paloaltosoftwareicon\endcsname {\simpleiconsmapeight\symbol{233}}
- \expandafter\def\csname simpleicon@panasonicicon\endcsname {\simpleiconsmapeight\symbol{234}}
- \expandafter\def\csname simpleicon@pandasicon\endcsname {\simpleiconsmapeight\symbol{235}}
- \expandafter\def\csname simpleicon@pandoraicon\endcsname {\simpleiconsmapeight\symbol{236}}
- \expandafter\def\csname simpleicon@pantheonicon\endcsname {\simpleiconsmapeight\symbol{237}}
- \expandafter\def\csname simpleicon@paperlessngxicon\endcsname {\simpleiconsmapeight\symbol{238}}
- \expandafter\def\csname simpleicon@paperspaceicon\endcsname {\simpleiconsmapeight\symbol{239}}
- \expandafter\def\csname simpleicon@paperswithcodeicon\endcsname {\simpleiconsmapeight\symbol{240}}
- \expandafter\def\csname simpleicon@paramountplusicon\endcsname {\simpleiconsmapeight\symbol{241}}
- \expandafter\def\csname simpleicon@paritysubstrateicon\endcsname {\simpleiconsmapeight\symbol{242}}
- \expandafter\def\csname simpleicon@parrotsecurityicon\endcsname {\simpleiconsmapeight\symbol{243}}
- \expandafter\def\csname simpleicon@parsedotlyicon\endcsname {\simpleiconsmapeight\symbol{244}}
- \expandafter\def\csname simpleicon@passporticon\endcsname {\simpleiconsmapeight\symbol{245}}
- \expandafter\def\csname simpleicon@pastebinicon\endcsname {\simpleiconsmapeight\symbol{246}}
- \expandafter\def\csname simpleicon@patreonicon\endcsname {\simpleiconsmapeight\symbol{247}}
- \expandafter\def\csname simpleicon@paychexicon\endcsname {\simpleiconsmapeight\symbol{248}}
- \expandafter\def\csname simpleicon@payhipicon\endcsname {\simpleiconsmapeight\symbol{249}}
- \expandafter\def\csname simpleicon@payloadcmsicon\endcsname {\simpleiconsmapeight\symbol{250}}
- \expandafter\def\csname simpleicon@payoneericon\endcsname {\simpleiconsmapeight\symbol{251}}
- \expandafter\def\csname simpleicon@paypalicon\endcsname {\simpleiconsmapeight\symbol{252}}
- \expandafter\def\csname simpleicon@paytmicon\endcsname {\simpleiconsmapeight\symbol{253}}
- \expandafter\def\csname simpleicon@pcgamingwikiicon\endcsname {\simpleiconsmapeight\symbol{254}}
- \expandafter\def\csname simpleicon@pdmicon\endcsname {\simpleiconsmapeight\symbol{255}}
- \expandafter\def\csname simpleicon@pdqicon\endcsname {\simpleiconsmapnine\symbol{0}}
- \expandafter\def\csname simpleicon@peakdesignicon\endcsname {\simpleiconsmapnine\symbol{1}}
- \expandafter\def\csname simpleicon@pearsonicon\endcsname {\simpleiconsmapnine\symbol{2}}
- \expandafter\def\csname simpleicon@peerlisticon\endcsname {\simpleiconsmapnine\symbol{3}}
- \expandafter\def\csname simpleicon@peertubeicon\endcsname {\simpleiconsmapnine\symbol{4}}
- \expandafter\def\csname simpleicon@pegasusairlinesicon\endcsname {\simpleiconsmapnine\symbol{5}}
- \expandafter\def\csname simpleicon@pelicanicon\endcsname {\simpleiconsmapnine\symbol{6}}
- \expandafter\def\csname simpleicon@pelotonicon\endcsname {\simpleiconsmapnine\symbol{7}}
- \expandafter\def\csname simpleicon@pennyicon\endcsname {\simpleiconsmapnine\symbol{8}}
- \expandafter\def\csname simpleicon@penpoticon\endcsname {\simpleiconsmapnine\symbol{9}}
- \expandafter\def\csname simpleicon@percyicon\endcsname {\simpleiconsmapnine\symbol{10}}
- \expandafter\def\csname simpleicon@perforceicon\endcsname {\simpleiconsmapnine\symbol{11}}
- \expandafter\def\csname simpleicon@perlicon\endcsname {\simpleiconsmapnine\symbol{12}}
- \expandafter\def\csname simpleicon@perplexityicon\endcsname {\simpleiconsmapnine\symbol{13}}
- \expandafter\def\csname simpleicon@persistenticon\endcsname {\simpleiconsmapnine\symbol{14}}
- \expandafter\def\csname simpleicon@personioicon\endcsname {\simpleiconsmapnine\symbol{15}}
- \expandafter\def\csname simpleicon@petsathomeicon\endcsname {\simpleiconsmapnine\symbol{16}}
- \expandafter\def\csname simpleicon@peugeoticon\endcsname {\simpleiconsmapnine\symbol{17}}
- \expandafter\def\csname simpleicon@pexelsicon\endcsname {\simpleiconsmapnine\symbol{18}}
- \expandafter\def\csname simpleicon@pfsenseicon\endcsname {\simpleiconsmapnine\symbol{19}}
- \expandafter\def\csname simpleicon@phabricatoricon\endcsname {\simpleiconsmapnine\symbol{20}}
- \expandafter\def\csname simpleicon@philipshueicon\endcsname {\simpleiconsmapnine\symbol{21}}
- \expandafter\def\csname simpleicon@phoenixframeworkicon\endcsname {\simpleiconsmapnine\symbol{22}}
- \expandafter\def\csname simpleicon@phonepeicon\endcsname {\simpleiconsmapnine\symbol{23}}
- \expandafter\def\csname simpleicon@phosphoriconsicon\endcsname {\simpleiconsmapnine\symbol{24}}
- \expandafter\def\csname simpleicon@photobucketicon\endcsname {\simpleiconsmapnine\symbol{25}}
- \expandafter\def\csname simpleicon@photocrowdicon\endcsname {\simpleiconsmapnine\symbol{26}}
- \expandafter\def\csname simpleicon@photonicon\endcsname {\simpleiconsmapnine\symbol{27}}
- \expandafter\def\csname simpleicon@photopeaicon\endcsname {\simpleiconsmapnine\symbol{28}}
- \expandafter\def\csname simpleicon@phpicon\endcsname {\simpleiconsmapnine\symbol{29}}
- \expandafter\def\csname simpleicon@phpmyadminicon\endcsname {\simpleiconsmapnine\symbol{30}}
- \expandafter\def\csname simpleicon@phpstormicon\endcsname {\simpleiconsmapnine\symbol{31}}
- \expandafter\def\csname simpleicon@piaggiogroupicon\endcsname {\simpleiconsmapnine\symbol{32}}
- \expandafter\def\csname simpleicon@piaproicon\endcsname {\simpleiconsmapnine\symbol{33}}
- \expandafter\def\csname simpleicon@picardsurgelesicon\endcsname {\simpleiconsmapnine\symbol{34}}
- \expandafter\def\csname simpleicon@picartodottvicon\endcsname {\simpleiconsmapnine\symbol{35}}
- \expandafter\def\csname simpleicon@picnicicon\endcsname {\simpleiconsmapnine\symbol{36}}
- \expandafter\def\csname simpleicon@picpayicon\endcsname {\simpleiconsmapnine\symbol{37}}
- \expandafter\def\csname simpleicon@picrewicon\endcsname {\simpleiconsmapnine\symbol{38}}
- \expandafter\def\csname simpleicon@picxyicon\endcsname {\simpleiconsmapnine\symbol{39}}
- \expandafter\def\csname simpleicon@piholeicon\endcsname {\simpleiconsmapnine\symbol{40}}
- \expandafter\def\csname simpleicon@pimcoreicon\endcsname {\simpleiconsmapnine\symbol{41}}
- \expandafter\def\csname simpleicon@pinboardicon\endcsname {\simpleiconsmapnine\symbol{42}}
- \expandafter\def\csname simpleicon@pinescripticon\endcsname {\simpleiconsmapnine\symbol{43}}
- \expandafter\def\csname simpleicon@pinetworkicon\endcsname {\simpleiconsmapnine\symbol{44}}
- \expandafter\def\csname simpleicon@pingdomicon\endcsname {\simpleiconsmapnine\symbol{45}}
- \expandafter\def\csname simpleicon@pinoicon\endcsname {\simpleiconsmapnine\symbol{46}}
- \expandafter\def\csname simpleicon@pinteresticon\endcsname {\simpleiconsmapnine\symbol{47}}
- \expandafter\def\csname simpleicon@pioneerdjicon\endcsname {\simpleiconsmapnine\symbol{48}}
- \expandafter\def\csname simpleicon@pipedicon\endcsname {\simpleiconsmapnine\symbol{49}}
- \expandafter\def\csname simpleicon@pipxicon\endcsname {\simpleiconsmapnine\symbol{50}}
- \expandafter\def\csname simpleicon@pivotaltrackericon\endcsname {\simpleiconsmapnine\symbol{51}}
- \expandafter\def\csname simpleicon@piwigoicon\endcsname {\simpleiconsmapnine\symbol{52}}
- \expandafter\def\csname simpleicon@pixicon\endcsname {\simpleiconsmapnine\symbol{53}}
- \expandafter\def\csname simpleicon@pixabayicon\endcsname {\simpleiconsmapnine\symbol{54}}
- \expandafter\def\csname simpleicon@pixelfedicon\endcsname {\simpleiconsmapnine\symbol{55}}
- \expandafter\def\csname simpleicon@pixivicon\endcsname {\simpleiconsmapnine\symbol{56}}
- \expandafter\def\csname simpleicon@pixlricon\endcsname {\simpleiconsmapnine\symbol{57}}
- \expandafter\def\csname simpleicon@pkgsrcicon\endcsname {\simpleiconsmapnine\symbol{58}}
- \expandafter\def\csname simpleicon@planeticon\endcsname {\simpleiconsmapnine\symbol{59}}
- \expandafter\def\csname simpleicon@planetscaleicon\endcsname {\simpleiconsmapnine\symbol{60}}
- \expandafter\def\csname simpleicon@plangridicon\endcsname {\simpleiconsmapnine\symbol{61}}
- \expandafter\def\csname simpleicon@platformdotshicon\endcsname {\simpleiconsmapnine\symbol{62}}
- \expandafter\def\csname simpleicon@platformioicon\endcsname {\simpleiconsmapnine\symbol{63}}
- \expandafter\def\csname simpleicon@platziicon\endcsname {\simpleiconsmapnine\symbol{64}}
- \expandafter\def\csname simpleicon@plausibleanalyticsicon\endcsname {\simpleiconsmapnine\symbol{65}}
- \expandafter\def\csname simpleicon@playcanvasicon\endcsname {\simpleiconsmapnine\symbol{66}}
- \expandafter\def\csname simpleicon@playerdotmeicon\endcsname {\simpleiconsmapnine\symbol{67}}
- \expandafter\def\csname simpleicon@playerfmicon\endcsname {\simpleiconsmapnine\symbol{68}}
- \expandafter\def\csname simpleicon@playstationicon\endcsname {\simpleiconsmapnine\symbol{69}}
- \expandafter\def\csname simpleicon@playstation2icon\endcsname {\simpleiconsmapnine\symbol{70}}
- \expandafter\def\csname simpleicon@playstation3icon\endcsname {\simpleiconsmapnine\symbol{71}}
- \expandafter\def\csname simpleicon@playstation4icon\endcsname {\simpleiconsmapnine\symbol{72}}
- \expandafter\def\csname simpleicon@playstation5icon\endcsname {\simpleiconsmapnine\symbol{73}}
+ \expandafter\def\csname simpleicon@kdeplasmaicon\endcsname {\simpleiconsmapsix\symbol{183}}
+ \expandafter\def\csname simpleicon@kedroicon\endcsname {\simpleiconsmapsix\symbol{184}}
+ \expandafter\def\csname simpleicon@keeneticicon\endcsname {\simpleiconsmapsix\symbol{185}}
+ \expandafter\def\csname simpleicon@keepachangelogicon\endcsname {\simpleiconsmapsix\symbol{186}}
+ \expandafter\def\csname simpleicon@keepassxcicon\endcsname {\simpleiconsmapsix\symbol{187}}
+ \expandafter\def\csname simpleicon@keewebicon\endcsname {\simpleiconsmapsix\symbol{188}}
+ \expandafter\def\csname simpleicon@kenticoicon\endcsname {\simpleiconsmapsix\symbol{189}}
+ \expandafter\def\csname simpleicon@kerasicon\endcsname {\simpleiconsmapsix\symbol{190}}
+ \expandafter\def\csname simpleicon@keybaseicon\endcsname {\simpleiconsmapsix\symbol{191}}
+ \expandafter\def\csname simpleicon@keycdnicon\endcsname {\simpleiconsmapsix\symbol{192}}
+ \expandafter\def\csname simpleicon@keycloakicon\endcsname {\simpleiconsmapsix\symbol{193}}
+ \expandafter\def\csname simpleicon@keystoneicon\endcsname {\simpleiconsmapsix\symbol{194}}
+ \expandafter\def\csname simpleicon@kfcicon\endcsname {\simpleiconsmapsix\symbol{195}}
+ \expandafter\def\csname simpleicon@khanacademyicon\endcsname {\simpleiconsmapsix\symbol{196}}
+ \expandafter\def\csname simpleicon@khronosgroupicon\endcsname {\simpleiconsmapsix\symbol{197}}
+ \expandafter\def\csname simpleicon@kiaicon\endcsname {\simpleiconsmapsix\symbol{198}}
+ \expandafter\def\csname simpleicon@kibanaicon\endcsname {\simpleiconsmapsix\symbol{199}}
+ \expandafter\def\csname simpleicon@kicadicon\endcsname {\simpleiconsmapsix\symbol{200}}
+ \expandafter\def\csname simpleicon@kickicon\endcsname {\simpleiconsmapsix\symbol{201}}
+ \expandafter\def\csname simpleicon@kickstartericon\endcsname {\simpleiconsmapsix\symbol{202}}
+ \expandafter\def\csname simpleicon@kikicon\endcsname {\simpleiconsmapsix\symbol{203}}
+ \expandafter\def\csname simpleicon@kingstontechnologyicon\endcsname {\simpleiconsmapsix\symbol{204}}
+ \expandafter\def\csname simpleicon@kinopoiskicon\endcsname {\simpleiconsmapsix\symbol{205}}
+ \expandafter\def\csname simpleicon@kinstaicon\endcsname {\simpleiconsmapsix\symbol{206}}
+ \expandafter\def\csname simpleicon@kirbyicon\endcsname {\simpleiconsmapsix\symbol{207}}
+ \expandafter\def\csname simpleicon@kiticon\endcsname {\simpleiconsmapsix\symbol{208}}
+ \expandafter\def\csname simpleicon@kitsuicon\endcsname {\simpleiconsmapsix\symbol{209}}
+ \expandafter\def\csname simpleicon@klarnaicon\endcsname {\simpleiconsmapsix\symbol{210}}
+ \expandafter\def\csname simpleicon@klmicon\endcsname {\simpleiconsmapsix\symbol{211}}
+ \expandafter\def\csname simpleicon@klookicon\endcsname {\simpleiconsmapsix\symbol{212}}
+ \expandafter\def\csname simpleicon@knativeicon\endcsname {\simpleiconsmapsix\symbol{213}}
+ \expandafter\def\csname simpleicon@knexdotjsicon\endcsname {\simpleiconsmapsix\symbol{214}}
+ \expandafter\def\csname simpleicon@knimeicon\endcsname {\simpleiconsmapsix\symbol{215}}
+ \expandafter\def\csname simpleicon@knipicon\endcsname {\simpleiconsmapsix\symbol{216}}
+ \expandafter\def\csname simpleicon@knowledgebaseicon\endcsname {\simpleiconsmapsix\symbol{217}}
+ \expandafter\def\csname simpleicon@knownicon\endcsname {\simpleiconsmapsix\symbol{218}}
+ \expandafter\def\csname simpleicon@koaicon\endcsname {\simpleiconsmapsix\symbol{219}}
+ \expandafter\def\csname simpleicon@kocicon\endcsname {\simpleiconsmapsix\symbol{220}}
+ \expandafter\def\csname simpleicon@kodakicon\endcsname {\simpleiconsmapsix\symbol{221}}
+ \expandafter\def\csname simpleicon@kodiicon\endcsname {\simpleiconsmapsix\symbol{222}}
+ \expandafter\def\csname simpleicon@koenigseggicon\endcsname {\simpleiconsmapsix\symbol{223}}
+ \expandafter\def\csname simpleicon@kofaxicon\endcsname {\simpleiconsmapsix\symbol{224}}
+ \expandafter\def\csname simpleicon@kofiicon\endcsname {\simpleiconsmapsix\symbol{225}}
+ \expandafter\def\csname simpleicon@komooticon\endcsname {\simpleiconsmapsix\symbol{226}}
+ \expandafter\def\csname simpleicon@konamiicon\endcsname {\simpleiconsmapsix\symbol{227}}
+ \expandafter\def\csname simpleicon@kongicon\endcsname {\simpleiconsmapsix\symbol{228}}
+ \expandafter\def\csname simpleicon@kongregateicon\endcsname {\simpleiconsmapsix\symbol{229}}
+ \expandafter\def\csname simpleicon@konvaicon\endcsname {\simpleiconsmapsix\symbol{230}}
+ \expandafter\def\csname simpleicon@kotlinicon\endcsname {\simpleiconsmapsix\symbol{231}}
+ \expandafter\def\csname simpleicon@koyebicon\endcsname {\simpleiconsmapsix\symbol{232}}
+ \expandafter\def\csname simpleicon@kritaicon\endcsname {\simpleiconsmapsix\symbol{233}}
+ \expandafter\def\csname simpleicon@ktmicon\endcsname {\simpleiconsmapsix\symbol{234}}
+ \expandafter\def\csname simpleicon@ktoricon\endcsname {\simpleiconsmapsix\symbol{235}}
+ \expandafter\def\csname simpleicon@kuaishouicon\endcsname {\simpleiconsmapsix\symbol{236}}
+ \expandafter\def\csname simpleicon@kubernetesicon\endcsname {\simpleiconsmapsix\symbol{237}}
+ \expandafter\def\csname simpleicon@kubuntuicon\endcsname {\simpleiconsmapsix\symbol{238}}
+ \expandafter\def\csname simpleicon@kucoinicon\endcsname {\simpleiconsmapsix\symbol{239}}
+ \expandafter\def\csname simpleicon@kumaicon\endcsname {\simpleiconsmapsix\symbol{240}}
+ \expandafter\def\csname simpleicon@kununuicon\endcsname {\simpleiconsmapsix\symbol{241}}
+ \expandafter\def\csname simpleicon@kuulaicon\endcsname {\simpleiconsmapsix\symbol{242}}
+ \expandafter\def\csname simpleicon@kxicon\endcsname {\simpleiconsmapsix\symbol{243}}
+ \expandafter\def\csname simpleicon@kyoceraicon\endcsname {\simpleiconsmapsix\symbol{244}}
+ \expandafter\def\csname simpleicon@labviewicon\endcsname {\simpleiconsmapsix\symbol{245}}
+ \expandafter\def\csname simpleicon@ladaicon\endcsname {\simpleiconsmapsix\symbol{246}}
+ \expandafter\def\csname simpleicon@lamborghiniicon\endcsname {\simpleiconsmapsix\symbol{247}}
+ \expandafter\def\csname simpleicon@landrovericon\endcsname {\simpleiconsmapsix\symbol{248}}
+ \expandafter\def\csname simpleicon@langchainicon\endcsname {\simpleiconsmapsix\symbol{249}}
+ \expandafter\def\csname simpleicon@languagetoolicon\endcsname {\simpleiconsmapsix\symbol{250}}
+ \expandafter\def\csname simpleicon@lapceicon\endcsname {\simpleiconsmapsix\symbol{251}}
+ \expandafter\def\csname simpleicon@laragonicon\endcsname {\simpleiconsmapsix\symbol{252}}
+ \expandafter\def\csname simpleicon@laravelicon\endcsname {\simpleiconsmapsix\symbol{253}}
+ \expandafter\def\csname simpleicon@laravelhorizonicon\endcsname {\simpleiconsmapsix\symbol{254}}
+ \expandafter\def\csname simpleicon@laravelnovaicon\endcsname {\simpleiconsmapsix\symbol{255}}
+ \expandafter\def\csname simpleicon@lastdotfmicon\endcsname {\simpleiconsmapseven\symbol{0}}
+ \expandafter\def\csname simpleicon@lastpassicon\endcsname {\simpleiconsmapseven\symbol{1}}
+ \expandafter\def\csname simpleicon@latexicon\endcsname {\simpleiconsmapseven\symbol{2}}
+ \expandafter\def\csname simpleicon@launchpadicon\endcsname {\simpleiconsmapseven\symbol{3}}
+ \expandafter\def\csname simpleicon@lazarusicon\endcsname {\simpleiconsmapseven\symbol{4}}
+ \expandafter\def\csname simpleicon@lazyvimicon\endcsname {\simpleiconsmapseven\symbol{5}}
+ \expandafter\def\csname simpleicon@lbryicon\endcsname {\simpleiconsmapseven\symbol{6}}
+ \expandafter\def\csname simpleicon@leaderpriceicon\endcsname {\simpleiconsmapseven\symbol{7}}
+ \expandafter\def\csname simpleicon@leafleticon\endcsname {\simpleiconsmapseven\symbol{8}}
+ \expandafter\def\csname simpleicon@leagueoflegendsicon\endcsname {\simpleiconsmapseven\symbol{9}}
+ \expandafter\def\csname simpleicon@leanpubicon\endcsname {\simpleiconsmapseven\symbol{10}}
+ \expandafter\def\csname simpleicon@leetcodeicon\endcsname {\simpleiconsmapseven\symbol{11}}
+ \expandafter\def\csname simpleicon@lefthookicon\endcsname {\simpleiconsmapseven\symbol{12}}
+ \expandafter\def\csname simpleicon@legacygamesicon\endcsname {\simpleiconsmapseven\symbol{13}}
+ \expandafter\def\csname simpleicon@leicaicon\endcsname {\simpleiconsmapseven\symbol{14}}
+ \expandafter\def\csname simpleicon@lemmyicon\endcsname {\simpleiconsmapseven\symbol{15}}
+ \expandafter\def\csname simpleicon@lemonsqueezyicon\endcsname {\simpleiconsmapseven\symbol{16}}
+ \expandafter\def\csname simpleicon@lenovoicon\endcsname {\simpleiconsmapseven\symbol{17}}
+ \expandafter\def\csname simpleicon@lensicon\endcsname {\simpleiconsmapseven\symbol{18}}
+ \expandafter\def\csname simpleicon@leptosicon\endcsname {\simpleiconsmapseven\symbol{19}}
+ \expandafter\def\csname simpleicon@lequipeicon\endcsname {\simpleiconsmapseven\symbol{20}}
+ \expandafter\def\csname simpleicon@lernaicon\endcsname {\simpleiconsmapseven\symbol{21}}
+ \expandafter\def\csname simpleicon@leroymerlinicon\endcsname {\simpleiconsmapseven\symbol{22}}
+ \expandafter\def\csname simpleicon@leslibrairesicon\endcsname {\simpleiconsmapseven\symbol{23}}
+ \expandafter\def\csname simpleicon@lessicon\endcsname {\simpleiconsmapseven\symbol{24}}
+ \expandafter\def\csname simpleicon@letsencrypticon\endcsname {\simpleiconsmapseven\symbol{25}}
+ \expandafter\def\csname simpleicon@letterboxdicon\endcsname {\simpleiconsmapseven\symbol{26}}
+ \expandafter\def\csname simpleicon@levelsdotfyiicon\endcsname {\simpleiconsmapseven\symbol{27}}
+ \expandafter\def\csname simpleicon@lgicon\endcsname {\simpleiconsmapseven\symbol{28}}
+ \expandafter\def\csname simpleicon@liberadotchaticon\endcsname {\simpleiconsmapseven\symbol{29}}
+ \expandafter\def\csname simpleicon@liberapayicon\endcsname {\simpleiconsmapseven\symbol{30}}
+ \expandafter\def\csname simpleicon@librariesdotioicon\endcsname {\simpleiconsmapseven\symbol{31}}
+ \expandafter\def\csname simpleicon@librarythingicon\endcsname {\simpleiconsmapseven\symbol{32}}
+ \expandafter\def\csname simpleicon@libreofficeicon\endcsname {\simpleiconsmapseven\symbol{33}}
+ \expandafter\def\csname simpleicon@libreofficebaseicon\endcsname {\simpleiconsmapseven\symbol{34}}
+ \expandafter\def\csname simpleicon@libreofficecalcicon\endcsname {\simpleiconsmapseven\symbol{35}}
+ \expandafter\def\csname simpleicon@libreofficedrawicon\endcsname {\simpleiconsmapseven\symbol{36}}
+ \expandafter\def\csname simpleicon@libreofficeimpressicon\endcsname {\simpleiconsmapseven\symbol{37}}
+ \expandafter\def\csname simpleicon@libreofficemathicon\endcsname {\simpleiconsmapseven\symbol{38}}
+ \expandafter\def\csname simpleicon@libreofficewritericon\endcsname {\simpleiconsmapseven\symbol{39}}
+ \expandafter\def\csname simpleicon@libretranslateicon\endcsname {\simpleiconsmapseven\symbol{40}}
+ \expandafter\def\csname simpleicon@libretubeicon\endcsname {\simpleiconsmapseven\symbol{41}}
+ \expandafter\def\csname simpleicon@librewolficon\endcsname {\simpleiconsmapseven\symbol{42}}
+ \expandafter\def\csname simpleicon@libuvicon\endcsname {\simpleiconsmapseven\symbol{43}}
+ \expandafter\def\csname simpleicon@lichessicon\endcsname {\simpleiconsmapseven\symbol{44}}
+ \expandafter\def\csname simpleicon@lidlicon\endcsname {\simpleiconsmapseven\symbol{45}}
+ \expandafter\def\csname simpleicon@lifxicon\endcsname {\simpleiconsmapseven\symbol{46}}
+ \expandafter\def\csname simpleicon@lightburnicon\endcsname {\simpleiconsmapseven\symbol{47}}
+ \expandafter\def\csname simpleicon@lighthouseicon\endcsname {\simpleiconsmapseven\symbol{48}}
+ \expandafter\def\csname simpleicon@lightningicon\endcsname {\simpleiconsmapseven\symbol{49}}
+ \expandafter\def\csname simpleicon@limesurveyicon\endcsname {\simpleiconsmapseven\symbol{50}}
+ \expandafter\def\csname simpleicon@lineicon\endcsname {\simpleiconsmapseven\symbol{51}}
+ \expandafter\def\csname simpleicon@lineageosicon\endcsname {\simpleiconsmapseven\symbol{52}}
+ \expandafter\def\csname simpleicon@linearicon\endcsname {\simpleiconsmapseven\symbol{53}}
+ \expandafter\def\csname simpleicon@liningicon\endcsname {\simpleiconsmapseven\symbol{54}}
+ \expandafter\def\csname simpleicon@linkedinicon\endcsname {\simpleiconsmapseven\symbol{55}}
+ \expandafter\def\csname simpleicon@linkerdicon\endcsname {\simpleiconsmapseven\symbol{56}}
+ \expandafter\def\csname simpleicon@linkfireicon\endcsname {\simpleiconsmapseven\symbol{57}}
+ \expandafter\def\csname simpleicon@linksysicon\endcsname {\simpleiconsmapseven\symbol{58}}
+ \expandafter\def\csname simpleicon@linktreeicon\endcsname {\simpleiconsmapseven\symbol{59}}
+ \expandafter\def\csname simpleicon@lintcodeicon\endcsname {\simpleiconsmapseven\symbol{60}}
+ \expandafter\def\csname simpleicon@linuxicon\endcsname {\simpleiconsmapseven\symbol{61}}
+ \expandafter\def\csname simpleicon@linuxcontainersicon\endcsname {\simpleiconsmapseven\symbol{62}}
+ \expandafter\def\csname simpleicon@linuxfoundationicon\endcsname {\simpleiconsmapseven\symbol{63}}
+ \expandafter\def\csname simpleicon@linuxminticon\endcsname {\simpleiconsmapseven\symbol{64}}
+ \expandafter\def\csname simpleicon@linuxprofessionalinstituteicon\endcsname {\simpleiconsmapseven\symbol{65}}
+ \expandafter\def\csname simpleicon@linuxservericon\endcsname {\simpleiconsmapseven\symbol{66}}
+ \expandafter\def\csname simpleicon@lionairicon\endcsname {\simpleiconsmapseven\symbol{67}}
+ \expandafter\def\csname simpleicon@liquibaseicon\endcsname {\simpleiconsmapseven\symbol{68}}
+ \expandafter\def\csname simpleicon@listmonkicon\endcsname {\simpleiconsmapseven\symbol{69}}
+ \expandafter\def\csname simpleicon@liticon\endcsname {\simpleiconsmapseven\symbol{70}}
+ \expandafter\def\csname simpleicon@litecoinicon\endcsname {\simpleiconsmapseven\symbol{71}}
+ \expandafter\def\csname simpleicon@literalicon\endcsname {\simpleiconsmapseven\symbol{72}}
+ \expandafter\def\csname simpleicon@litiengineicon\endcsname {\simpleiconsmapseven\symbol{73}}
+ \expandafter\def\csname simpleicon@livechaticon\endcsname {\simpleiconsmapseven\symbol{74}}
+ \expandafter\def\csname simpleicon@livejournalicon\endcsname {\simpleiconsmapseven\symbol{75}}
+ \expandafter\def\csname simpleicon@livewireicon\endcsname {\simpleiconsmapseven\symbol{76}}
+ \expandafter\def\csname simpleicon@llvmicon\endcsname {\simpleiconsmapseven\symbol{77}}
+ \expandafter\def\csname simpleicon@lmmsicon\endcsname {\simpleiconsmapseven\symbol{78}}
+ \expandafter\def\csname simpleicon@lobstersicon\endcsname {\simpleiconsmapseven\symbol{79}}
+ \expandafter\def\csname simpleicon@localicon\endcsname {\simpleiconsmapseven\symbol{80}}
+ \expandafter\def\csname simpleicon@lodashicon\endcsname {\simpleiconsmapseven\symbol{81}}
+ \expandafter\def\csname simpleicon@logitechicon\endcsname {\simpleiconsmapseven\symbol{82}}
+ \expandafter\def\csname simpleicon@logitechgicon\endcsname {\simpleiconsmapseven\symbol{83}}
+ \expandafter\def\csname simpleicon@logmeinicon\endcsname {\simpleiconsmapseven\symbol{84}}
+ \expandafter\def\csname simpleicon@logseqicon\endcsname {\simpleiconsmapseven\symbol{85}}
+ \expandafter\def\csname simpleicon@logstashicon\endcsname {\simpleiconsmapseven\symbol{86}}
+ \expandafter\def\csname simpleicon@lookericon\endcsname {\simpleiconsmapseven\symbol{87}}
+ \expandafter\def\csname simpleicon@loomicon\endcsname {\simpleiconsmapseven\symbol{88}}
+ \expandafter\def\csname simpleicon@loopicon\endcsname {\simpleiconsmapseven\symbol{89}}
+ \expandafter\def\csname simpleicon@loopbackicon\endcsname {\simpleiconsmapseven\symbol{90}}
+ \expandafter\def\csname simpleicon@lootcrateicon\endcsname {\simpleiconsmapseven\symbol{91}}
+ \expandafter\def\csname simpleicon@lospecicon\endcsname {\simpleiconsmapseven\symbol{92}}
+ \expandafter\def\csname simpleicon@lotpolishairlinesicon\endcsname {\simpleiconsmapseven\symbol{93}}
+ \expandafter\def\csname simpleicon@ltspiceicon\endcsname {\simpleiconsmapseven\symbol{94}}
+ \expandafter\def\csname simpleicon@luaicon\endcsname {\simpleiconsmapseven\symbol{95}}
+ \expandafter\def\csname simpleicon@lubuntuicon\endcsname {\simpleiconsmapseven\symbol{96}}
+ \expandafter\def\csname simpleicon@luciaicon\endcsname {\simpleiconsmapseven\symbol{97}}
+ \expandafter\def\csname simpleicon@lucidicon\endcsname {\simpleiconsmapseven\symbol{98}}
+ \expandafter\def\csname simpleicon@lucideicon\endcsname {\simpleiconsmapseven\symbol{99}}
+ \expandafter\def\csname simpleicon@ludwigicon\endcsname {\simpleiconsmapseven\symbol{100}}
+ \expandafter\def\csname simpleicon@lufthansaicon\endcsname {\simpleiconsmapseven\symbol{101}}
+ \expandafter\def\csname simpleicon@lumenicon\endcsname {\simpleiconsmapseven\symbol{102}}
+ \expandafter\def\csname simpleicon@lunacyicon\endcsname {\simpleiconsmapseven\symbol{103}}
+ \expandafter\def\csname simpleicon@lutrisicon\endcsname {\simpleiconsmapseven\symbol{104}}
+ \expandafter\def\csname simpleicon@lydiaicon\endcsname {\simpleiconsmapseven\symbol{105}}
+ \expandafter\def\csname simpleicon@lyfticon\endcsname {\simpleiconsmapseven\symbol{106}}
+ \expandafter\def\csname simpleicon@maasicon\endcsname {\simpleiconsmapseven\symbol{107}}
+ \expandafter\def\csname simpleicon@macosicon\endcsname {\simpleiconsmapseven\symbol{108}}
+ \expandafter\def\csname simpleicon@macpawicon\endcsname {\simpleiconsmapseven\symbol{109}}
+ \expandafter\def\csname simpleicon@macysicon\endcsname {\simpleiconsmapseven\symbol{110}}
+ \expandafter\def\csname simpleicon@magasinsuicon\endcsname {\simpleiconsmapseven\symbol{111}}
+ \expandafter\def\csname simpleicon@magentoicon\endcsname {\simpleiconsmapseven\symbol{112}}
+ \expandafter\def\csname simpleicon@magicicon\endcsname {\simpleiconsmapseven\symbol{113}}
+ \expandafter\def\csname simpleicon@magiskicon\endcsname {\simpleiconsmapseven\symbol{114}}
+ \expandafter\def\csname simpleicon@mahindraicon\endcsname {\simpleiconsmapseven\symbol{115}}
+ \expandafter\def\csname simpleicon@mailboxdotorgicon\endcsname {\simpleiconsmapseven\symbol{116}}
+ \expandafter\def\csname simpleicon@mailchimpicon\endcsname {\simpleiconsmapseven\symbol{117}}
+ \expandafter\def\csname simpleicon@maildotcomicon\endcsname {\simpleiconsmapseven\symbol{118}}
+ \expandafter\def\csname simpleicon@maildotruicon\endcsname {\simpleiconsmapseven\symbol{119}}
+ \expandafter\def\csname simpleicon@mailgunicon\endcsname {\simpleiconsmapseven\symbol{120}}
+ \expandafter\def\csname simpleicon@mailtrapicon\endcsname {\simpleiconsmapseven\symbol{121}}
+ \expandafter\def\csname simpleicon@mainwpicon\endcsname {\simpleiconsmapseven\symbol{122}}
+ \expandafter\def\csname simpleicon@majorleaguehackingicon\endcsname {\simpleiconsmapseven\symbol{123}}
+ \expandafter\def\csname simpleicon@makeicon\endcsname {\simpleiconsmapseven\symbol{124}}
+ \expandafter\def\csname simpleicon@makerboticon\endcsname {\simpleiconsmapseven\symbol{125}}
+ \expandafter\def\csname simpleicon@malticon\endcsname {\simpleiconsmapseven\symbol{126}}
+ \expandafter\def\csname simpleicon@malwarebytesicon\endcsname {\simpleiconsmapseven\symbol{127}}
+ \expandafter\def\csname simpleicon@mambauiicon\endcsname {\simpleiconsmapseven\symbol{128}}
+ \expandafter\def\csname simpleicon@mampicon\endcsname {\simpleiconsmapseven\symbol{129}}
+ \expandafter\def\csname simpleicon@manicon\endcsname {\simpleiconsmapseven\symbol{130}}
+ \expandafter\def\csname simpleicon@manageiqicon\endcsname {\simpleiconsmapseven\symbol{131}}
+ \expandafter\def\csname simpleicon@manjaroicon\endcsname {\simpleiconsmapseven\symbol{132}}
+ \expandafter\def\csname simpleicon@mantineicon\endcsname {\simpleiconsmapseven\symbol{133}}
+ \expandafter\def\csname simpleicon@mapboxicon\endcsname {\simpleiconsmapseven\symbol{134}}
+ \expandafter\def\csname simpleicon@maplibreicon\endcsname {\simpleiconsmapseven\symbol{135}}
+ \expandafter\def\csname simpleicon@mariadbicon\endcsname {\simpleiconsmapseven\symbol{136}}
+ \expandafter\def\csname simpleicon@mariadbfoundationicon\endcsname {\simpleiconsmapseven\symbol{137}}
+ \expandafter\def\csname simpleicon@markdownicon\endcsname {\simpleiconsmapseven\symbol{138}}
+ \expandafter\def\csname simpleicon@marketoicon\endcsname {\simpleiconsmapseven\symbol{139}}
+ \expandafter\def\csname simpleicon@markoicon\endcsname {\simpleiconsmapseven\symbol{140}}
+ \expandafter\def\csname simpleicon@marriotticon\endcsname {\simpleiconsmapseven\symbol{141}}
+ \expandafter\def\csname simpleicon@marvelappicon\endcsname {\simpleiconsmapseven\symbol{142}}
+ \expandafter\def\csname simpleicon@maseratiicon\endcsname {\simpleiconsmapseven\symbol{143}}
+ \expandafter\def\csname simpleicon@mastercardicon\endcsname {\simpleiconsmapseven\symbol{144}}
+ \expandafter\def\csname simpleicon@mastercomfigicon\endcsname {\simpleiconsmapseven\symbol{145}}
+ \expandafter\def\csname simpleicon@mastodonicon\endcsname {\simpleiconsmapseven\symbol{146}}
+ \expandafter\def\csname simpleicon@materialdesignicon\endcsname {\simpleiconsmapseven\symbol{147}}
+ \expandafter\def\csname simpleicon@materialdesigniconsicon\endcsname {\simpleiconsmapseven\symbol{148}}
+ \expandafter\def\csname simpleicon@materialformkdocsicon\endcsname {\simpleiconsmapseven\symbol{149}}
+ \expandafter\def\csname simpleicon@matillionicon\endcsname {\simpleiconsmapseven\symbol{150}}
+ \expandafter\def\csname simpleicon@matomoicon\endcsname {\simpleiconsmapseven\symbol{151}}
+ \expandafter\def\csname simpleicon@matrixicon\endcsname {\simpleiconsmapseven\symbol{152}}
+ \expandafter\def\csname simpleicon@matterdotjsicon\endcsname {\simpleiconsmapseven\symbol{153}}
+ \expandafter\def\csname simpleicon@mattermosticon\endcsname {\simpleiconsmapseven\symbol{154}}
+ \expandafter\def\csname simpleicon@matterneticon\endcsname {\simpleiconsmapseven\symbol{155}}
+ \expandafter\def\csname simpleicon@mauticicon\endcsname {\simpleiconsmapseven\symbol{156}}
+ \expandafter\def\csname simpleicon@maxicon\endcsname {\simpleiconsmapseven\symbol{157}}
+ \expandafter\def\csname simpleicon@maxplanckgesellschafticon\endcsname {\simpleiconsmapseven\symbol{158}}
+ \expandafter\def\csname simpleicon@maytagicon\endcsname {\simpleiconsmapseven\symbol{159}}
+ \expandafter\def\csname simpleicon@mazdaicon\endcsname {\simpleiconsmapseven\symbol{160}}
+ \expandafter\def\csname simpleicon@mcafeeicon\endcsname {\simpleiconsmapseven\symbol{161}}
+ \expandafter\def\csname simpleicon@mcdonaldsicon\endcsname {\simpleiconsmapseven\symbol{162}}
+ \expandafter\def\csname simpleicon@mclarenicon\endcsname {\simpleiconsmapseven\symbol{163}}
+ \expandafter\def\csname simpleicon@mdbookicon\endcsname {\simpleiconsmapseven\symbol{164}}
+ \expandafter\def\csname simpleicon@mdnwebdocsicon\endcsname {\simpleiconsmapseven\symbol{165}}
+ \expandafter\def\csname simpleicon@mdxicon\endcsname {\simpleiconsmapseven\symbol{166}}
+ \expandafter\def\csname simpleicon@mediafireicon\endcsname {\simpleiconsmapseven\symbol{167}}
+ \expandafter\def\csname simpleicon@mediamarkticon\endcsname {\simpleiconsmapseven\symbol{168}}
+ \expandafter\def\csname simpleicon@mediapipeicon\endcsname {\simpleiconsmapseven\symbol{169}}
+ \expandafter\def\csname simpleicon@mediatekicon\endcsname {\simpleiconsmapseven\symbol{170}}
+ \expandafter\def\csname simpleicon@medibangpainticon\endcsname {\simpleiconsmapseven\symbol{171}}
+ \expandafter\def\csname simpleicon@mediumicon\endcsname {\simpleiconsmapseven\symbol{172}}
+ \expandafter\def\csname simpleicon@medusaicon\endcsname {\simpleiconsmapseven\symbol{173}}
+ \expandafter\def\csname simpleicon@meetupicon\endcsname {\simpleiconsmapseven\symbol{174}}
+ \expandafter\def\csname simpleicon@megaicon\endcsname {\simpleiconsmapseven\symbol{175}}
+ \expandafter\def\csname simpleicon@meilisearchicon\endcsname {\simpleiconsmapseven\symbol{176}}
+ \expandafter\def\csname simpleicon@meituanicon\endcsname {\simpleiconsmapseven\symbol{177}}
+ \expandafter\def\csname simpleicon@meizuicon\endcsname {\simpleiconsmapseven\symbol{178}}
+ \expandafter\def\csname simpleicon@mendeleyicon\endcsname {\simpleiconsmapseven\symbol{179}}
+ \expandafter\def\csname simpleicon@mentorcruiseicon\endcsname {\simpleiconsmapseven\symbol{180}}
+ \expandafter\def\csname simpleicon@mercadopagoicon\endcsname {\simpleiconsmapseven\symbol{181}}
+ \expandafter\def\csname simpleicon@mercedesicon\endcsname {\simpleiconsmapseven\symbol{182}}
+ \expandafter\def\csname simpleicon@merckicon\endcsname {\simpleiconsmapseven\symbol{183}}
+ \expandafter\def\csname simpleicon@mercurialicon\endcsname {\simpleiconsmapseven\symbol{184}}
+ \expandafter\def\csname simpleicon@mermaidicon\endcsname {\simpleiconsmapseven\symbol{185}}
+ \expandafter\def\csname simpleicon@messengericon\endcsname {\simpleiconsmapseven\symbol{186}}
+ \expandafter\def\csname simpleicon@metaicon\endcsname {\simpleiconsmapseven\symbol{187}}
+ \expandafter\def\csname simpleicon@metabaseicon\endcsname {\simpleiconsmapseven\symbol{188}}
+ \expandafter\def\csname simpleicon@metacriticicon\endcsname {\simpleiconsmapseven\symbol{189}}
+ \expandafter\def\csname simpleicon@metafiltericon\endcsname {\simpleiconsmapseven\symbol{190}}
+ \expandafter\def\csname simpleicon@metasploiticon\endcsname {\simpleiconsmapseven\symbol{191}}
+ \expandafter\def\csname simpleicon@meteoricon\endcsname {\simpleiconsmapseven\symbol{192}}
+ \expandafter\def\csname simpleicon@metroicon\endcsname {\simpleiconsmapseven\symbol{193}}
+ \expandafter\def\csname simpleicon@metrodelaciudaddemexicoicon\endcsname {\simpleiconsmapseven\symbol{194}}
+ \expandafter\def\csname simpleicon@metrodemadridicon\endcsname {\simpleiconsmapseven\symbol{195}}
+ \expandafter\def\csname simpleicon@metrodeparisicon\endcsname {\simpleiconsmapseven\symbol{196}}
+ \expandafter\def\csname simpleicon@meweicon\endcsname {\simpleiconsmapseven\symbol{197}}
+ \expandafter\def\csname simpleicon@mgicon\endcsname {\simpleiconsmapseven\symbol{198}}
+ \expandafter\def\csname simpleicon@microbiticon\endcsname {\simpleiconsmapseven\symbol{199}}
+ \expandafter\def\csname simpleicon@microdotblogicon\endcsname {\simpleiconsmapseven\symbol{200}}
+ \expandafter\def\csname simpleicon@microeditoricon\endcsname {\simpleiconsmapseven\symbol{201}}
+ \expandafter\def\csname simpleicon@microgeneticsicon\endcsname {\simpleiconsmapseven\symbol{202}}
+ \expandafter\def\csname simpleicon@micropythonicon\endcsname {\simpleiconsmapseven\symbol{203}}
+ \expandafter\def\csname simpleicon@microstationicon\endcsname {\simpleiconsmapseven\symbol{204}}
+ \expandafter\def\csname simpleicon@microstrategyicon\endcsname {\simpleiconsmapseven\symbol{205}}
+ \expandafter\def\csname simpleicon@midiicon\endcsname {\simpleiconsmapseven\symbol{206}}
+ \expandafter\def\csname simpleicon@migaduicon\endcsname {\simpleiconsmapseven\symbol{207}}
+ \expandafter\def\csname simpleicon@mihoyoicon\endcsname {\simpleiconsmapseven\symbol{208}}
+ \expandafter\def\csname simpleicon@mikrotikicon\endcsname {\simpleiconsmapseven\symbol{209}}
+ \expandafter\def\csname simpleicon@milanoteicon\endcsname {\simpleiconsmapseven\symbol{210}}
+ \expandafter\def\csname simpleicon@milvusicon\endcsname {\simpleiconsmapseven\symbol{211}}
+ \expandafter\def\csname simpleicon@mindsicon\endcsname {\simpleiconsmapseven\symbol{212}}
+ \expandafter\def\csname simpleicon@minetesticon\endcsname {\simpleiconsmapseven\symbol{213}}
+ \expandafter\def\csname simpleicon@mingww64icon\endcsname {\simpleiconsmapseven\symbol{214}}
+ \expandafter\def\csname simpleicon@miniicon\endcsname {\simpleiconsmapseven\symbol{215}}
+ \expandafter\def\csname simpleicon@minioicon\endcsname {\simpleiconsmapseven\symbol{216}}
+ \expandafter\def\csname simpleicon@mintlifyicon\endcsname {\simpleiconsmapseven\symbol{217}}
+ \expandafter\def\csname simpleicon@minutemailericon\endcsname {\simpleiconsmapseven\symbol{218}}
+ \expandafter\def\csname simpleicon@mirahezeicon\endcsname {\simpleiconsmapseven\symbol{219}}
+ \expandafter\def\csname simpleicon@miroicon\endcsname {\simpleiconsmapseven\symbol{220}}
+ \expandafter\def\csname simpleicon@misskeyicon\endcsname {\simpleiconsmapseven\symbol{221}}
+ \expandafter\def\csname simpleicon@mitsubishiicon\endcsname {\simpleiconsmapseven\symbol{222}}
+ \expandafter\def\csname simpleicon@mixicon\endcsname {\simpleiconsmapseven\symbol{223}}
+ \expandafter\def\csname simpleicon@mixcloudicon\endcsname {\simpleiconsmapseven\symbol{224}}
+ \expandafter\def\csname simpleicon@mixpanelicon\endcsname {\simpleiconsmapseven\symbol{225}}
+ \expandafter\def\csname simpleicon@mlbicon\endcsname {\simpleiconsmapseven\symbol{226}}
+ \expandafter\def\csname simpleicon@mlflowicon\endcsname {\simpleiconsmapseven\symbol{227}}
+ \expandafter\def\csname simpleicon@mobxicon\endcsname {\simpleiconsmapseven\symbol{228}}
+ \expandafter\def\csname simpleicon@mobxstatetreeicon\endcsname {\simpleiconsmapseven\symbol{229}}
+ \expandafter\def\csname simpleicon@mochaicon\endcsname {\simpleiconsmapseven\symbol{230}}
+ \expandafter\def\csname simpleicon@mockserviceworkericon\endcsname {\simpleiconsmapseven\symbol{231}}
+ \expandafter\def\csname simpleicon@modalicon\endcsname {\simpleiconsmapseven\symbol{232}}
+ \expandafter\def\csname simpleicon@modinicon\endcsname {\simpleiconsmapseven\symbol{233}}
+ \expandafter\def\csname simpleicon@modrinthicon\endcsname {\simpleiconsmapseven\symbol{234}}
+ \expandafter\def\csname simpleicon@modxicon\endcsname {\simpleiconsmapseven\symbol{235}}
+ \expandafter\def\csname simpleicon@moleculericon\endcsname {\simpleiconsmapseven\symbol{236}}
+ \expandafter\def\csname simpleicon@momenteoicon\endcsname {\simpleiconsmapseven\symbol{237}}
+ \expandafter\def\csname simpleicon@moneroicon\endcsname {\simpleiconsmapseven\symbol{238}}
+ \expandafter\def\csname simpleicon@moneygramicon\endcsname {\simpleiconsmapseven\symbol{239}}
+ \expandafter\def\csname simpleicon@mongodbicon\endcsname {\simpleiconsmapseven\symbol{240}}
+ \expandafter\def\csname simpleicon@mongooseicon\endcsname {\simpleiconsmapseven\symbol{241}}
+ \expandafter\def\csname simpleicon@mongoosedotwsicon\endcsname {\simpleiconsmapseven\symbol{242}}
+ \expandafter\def\csname simpleicon@monicaicon\endcsname {\simpleiconsmapseven\symbol{243}}
+ \expandafter\def\csname simpleicon@monkeytieicon\endcsname {\simpleiconsmapseven\symbol{244}}
+ \expandafter\def\csname simpleicon@monkeytypeicon\endcsname {\simpleiconsmapseven\symbol{245}}
+ \expandafter\def\csname simpleicon@monogameicon\endcsname {\simpleiconsmapseven\symbol{246}}
+ \expandafter\def\csname simpleicon@monoprixicon\endcsname {\simpleiconsmapseven\symbol{247}}
+ \expandafter\def\csname simpleicon@monstericon\endcsname {\simpleiconsmapseven\symbol{248}}
+ \expandafter\def\csname simpleicon@monzoicon\endcsname {\simpleiconsmapseven\symbol{249}}
+ \expandafter\def\csname simpleicon@mooicon\endcsname {\simpleiconsmapseven\symbol{250}}
+ \expandafter\def\csname simpleicon@moodleicon\endcsname {\simpleiconsmapseven\symbol{251}}
+ \expandafter\def\csname simpleicon@moonrepoicon\endcsname {\simpleiconsmapseven\symbol{252}}
+ \expandafter\def\csname simpleicon@moqicon\endcsname {\simpleiconsmapseven\symbol{253}}
+ \expandafter\def\csname simpleicon@moqupsicon\endcsname {\simpleiconsmapseven\symbol{254}}
+ \expandafter\def\csname simpleicon@morrisonsicon\endcsname {\simpleiconsmapseven\symbol{255}}
+ \expandafter\def\csname simpleicon@moscowmetroicon\endcsname {\simpleiconsmapeight\symbol{0}}
+ \expandafter\def\csname simpleicon@motorolaicon\endcsname {\simpleiconsmapeight\symbol{1}}
+ \expandafter\def\csname simpleicon@mozillaicon\endcsname {\simpleiconsmapeight\symbol{2}}
+ \expandafter\def\csname simpleicon@mpvicon\endcsname {\simpleiconsmapeight\symbol{3}}
+ \expandafter\def\csname simpleicon@mqtticon\endcsname {\simpleiconsmapeight\symbol{4}}
+ \expandafter\def\csname simpleicon@msiicon\endcsname {\simpleiconsmapeight\symbol{5}}
+ \expandafter\def\csname simpleicon@msibusinessicon\endcsname {\simpleiconsmapeight\symbol{6}}
+ \expandafter\def\csname simpleicon@mtaicon\endcsname {\simpleiconsmapeight\symbol{7}}
+ \expandafter\def\csname simpleicon@mtricon\endcsname {\simpleiconsmapeight\symbol{8}}
+ \expandafter\def\csname simpleicon@mubiicon\endcsname {\simpleiconsmapeight\symbol{9}}
+ \expandafter\def\csname simpleicon@muiicon\endcsname {\simpleiconsmapeight\symbol{10}}
+ \expandafter\def\csname simpleicon@mulesofticon\endcsname {\simpleiconsmapeight\symbol{11}}
+ \expandafter\def\csname simpleicon@mullericon\endcsname {\simpleiconsmapeight\symbol{12}}
+ \expandafter\def\csname simpleicon@multisimicon\endcsname {\simpleiconsmapeight\symbol{13}}
+ \expandafter\def\csname simpleicon@mumbleicon\endcsname {\simpleiconsmapeight\symbol{14}}
+ \expandafter\def\csname simpleicon@muoicon\endcsname {\simpleiconsmapeight\symbol{15}}
+ \expandafter\def\csname simpleicon@muralicon\endcsname {\simpleiconsmapeight\symbol{16}}
+ \expandafter\def\csname simpleicon@musescoreicon\endcsname {\simpleiconsmapeight\symbol{17}}
+ \expandafter\def\csname simpleicon@musicbrainzicon\endcsname {\simpleiconsmapeight\symbol{18}}
+ \expandafter\def\csname simpleicon@mxlinuxicon\endcsname {\simpleiconsmapeight\symbol{19}}
+ \expandafter\def\csname simpleicon@myanimelisticon\endcsname {\simpleiconsmapeight\symbol{20}}
+ \expandafter\def\csname simpleicon@mygeticon\endcsname {\simpleiconsmapeight\symbol{21}}
+ \expandafter\def\csname simpleicon@myobicon\endcsname {\simpleiconsmapeight\symbol{22}}
+ \expandafter\def\csname simpleicon@myspaceicon\endcsname {\simpleiconsmapeight\symbol{23}}
+ \expandafter\def\csname simpleicon@mysqlicon\endcsname {\simpleiconsmapeight\symbol{24}}
+ \expandafter\def\csname simpleicon@n26icon\endcsname {\simpleiconsmapeight\symbol{25}}
+ \expandafter\def\csname simpleicon@n8nicon\endcsname {\simpleiconsmapeight\symbol{26}}
+ \expandafter\def\csname simpleicon@namebaseicon\endcsname {\simpleiconsmapeight\symbol{27}}
+ \expandafter\def\csname simpleicon@namecheapicon\endcsname {\simpleiconsmapeight\symbol{28}}
+ \expandafter\def\csname simpleicon@namemcicon\endcsname {\simpleiconsmapeight\symbol{29}}
+ \expandafter\def\csname simpleicon@namesiloicon\endcsname {\simpleiconsmapeight\symbol{30}}
+ \expandafter\def\csname simpleicon@namuwikiicon\endcsname {\simpleiconsmapeight\symbol{31}}
+ \expandafter\def\csname simpleicon@nanoicon\endcsname {\simpleiconsmapeight\symbol{32}}
+ \expandafter\def\csname simpleicon@nanostoresicon\endcsname {\simpleiconsmapeight\symbol{33}}
+ \expandafter\def\csname simpleicon@nasaicon\endcsname {\simpleiconsmapeight\symbol{34}}
+ \expandafter\def\csname simpleicon@nationalgridicon\endcsname {\simpleiconsmapeight\symbol{35}}
+ \expandafter\def\csname simpleicon@nationalrailicon\endcsname {\simpleiconsmapeight\symbol{36}}
+ \expandafter\def\csname simpleicon@nativescripticon\endcsname {\simpleiconsmapeight\symbol{37}}
+ \expandafter\def\csname simpleicon@natsdotioicon\endcsname {\simpleiconsmapeight\symbol{38}}
+ \expandafter\def\csname simpleicon@navericon\endcsname {\simpleiconsmapeight\symbol{39}}
+ \expandafter\def\csname simpleicon@nbaicon\endcsname {\simpleiconsmapeight\symbol{40}}
+ \expandafter\def\csname simpleicon@nbbicon\endcsname {\simpleiconsmapeight\symbol{41}}
+ \expandafter\def\csname simpleicon@nbcicon\endcsname {\simpleiconsmapeight\symbol{42}}
+ \expandafter\def\csname simpleicon@ndricon\endcsname {\simpleiconsmapeight\symbol{43}}
+ \expandafter\def\csname simpleicon@nearicon\endcsname {\simpleiconsmapeight\symbol{44}}
+ \expandafter\def\csname simpleicon@necicon\endcsname {\simpleiconsmapeight\symbol{45}}
+ \expandafter\def\csname simpleicon@neo4jicon\endcsname {\simpleiconsmapeight\symbol{46}}
+ \expandafter\def\csname simpleicon@neovimicon\endcsname {\simpleiconsmapeight\symbol{47}}
+ \expandafter\def\csname simpleicon@neptuneicon\endcsname {\simpleiconsmapeight\symbol{48}}
+ \expandafter\def\csname simpleicon@nestjsicon\endcsname {\simpleiconsmapeight\symbol{49}}
+ \expandafter\def\csname simpleicon@netappicon\endcsname {\simpleiconsmapeight\symbol{50}}
+ \expandafter\def\csname simpleicon@netbsdicon\endcsname {\simpleiconsmapeight\symbol{51}}
+ \expandafter\def\csname simpleicon@netcupicon\endcsname {\simpleiconsmapeight\symbol{52}}
+ \expandafter\def\csname simpleicon@netdataicon\endcsname {\simpleiconsmapeight\symbol{53}}
+ \expandafter\def\csname simpleicon@neteasecloudmusicicon\endcsname {\simpleiconsmapeight\symbol{54}}
+ \expandafter\def\csname simpleicon@netflixicon\endcsname {\simpleiconsmapeight\symbol{55}}
+ \expandafter\def\csname simpleicon@netgearicon\endcsname {\simpleiconsmapeight\symbol{56}}
+ \expandafter\def\csname simpleicon@netlifyicon\endcsname {\simpleiconsmapeight\symbol{57}}
+ \expandafter\def\csname simpleicon@netteicon\endcsname {\simpleiconsmapeight\symbol{58}}
+ \expandafter\def\csname simpleicon@nettoicon\endcsname {\simpleiconsmapeight\symbol{59}}
+ \expandafter\def\csname simpleicon@neutralinojsicon\endcsname {\simpleiconsmapeight\symbol{60}}
+ \expandafter\def\csname simpleicon@newbalanceicon\endcsname {\simpleiconsmapeight\symbol{61}}
+ \expandafter\def\csname simpleicon@neweggicon\endcsname {\simpleiconsmapeight\symbol{62}}
+ \expandafter\def\csname simpleicon@newjapanprowrestlingicon\endcsname {\simpleiconsmapeight\symbol{63}}
+ \expandafter\def\csname simpleicon@newrelicicon\endcsname {\simpleiconsmapeight\symbol{64}}
+ \expandafter\def\csname simpleicon@newyorktimesicon\endcsname {\simpleiconsmapeight\symbol{65}}
+ \expandafter\def\csname simpleicon@nexonicon\endcsname {\simpleiconsmapeight\symbol{66}}
+ \expandafter\def\csname simpleicon@nextbilliondotaiicon\endcsname {\simpleiconsmapeight\symbol{67}}
+ \expandafter\def\csname simpleicon@nextcloudicon\endcsname {\simpleiconsmapeight\symbol{68}}
+ \expandafter\def\csname simpleicon@nextdnsicon\endcsname {\simpleiconsmapeight\symbol{69}}
+ \expandafter\def\csname simpleicon@nextdooricon\endcsname {\simpleiconsmapeight\symbol{70}}
+ \expandafter\def\csname simpleicon@nextdotjsicon\endcsname {\simpleiconsmapeight\symbol{71}}
+ \expandafter\def\csname simpleicon@nextraicon\endcsname {\simpleiconsmapeight\symbol{72}}
+ \expandafter\def\csname simpleicon@nextuiicon\endcsname {\simpleiconsmapeight\symbol{73}}
+ \expandafter\def\csname simpleicon@nexusmodsicon\endcsname {\simpleiconsmapeight\symbol{74}}
+ \expandafter\def\csname simpleicon@nfcicon\endcsname {\simpleiconsmapeight\symbol{75}}
+ \expandafter\def\csname simpleicon@nginxicon\endcsname {\simpleiconsmapeight\symbol{76}}
+ \expandafter\def\csname simpleicon@nginxproxymanagericon\endcsname {\simpleiconsmapeight\symbol{77}}
+ \expandafter\def\csname simpleicon@ngrokicon\endcsname {\simpleiconsmapeight\symbol{78}}
+ \expandafter\def\csname simpleicon@ngrxicon\endcsname {\simpleiconsmapeight\symbol{79}}
+ \expandafter\def\csname simpleicon@nhlicon\endcsname {\simpleiconsmapeight\symbol{80}}
+ \expandafter\def\csname simpleicon@nicehashicon\endcsname {\simpleiconsmapeight\symbol{81}}
+ \expandafter\def\csname simpleicon@niconicoicon\endcsname {\simpleiconsmapeight\symbol{82}}
+ \expandafter\def\csname simpleicon@nikeicon\endcsname {\simpleiconsmapeight\symbol{83}}
+ \expandafter\def\csname simpleicon@nikonicon\endcsname {\simpleiconsmapeight\symbol{84}}
+ \expandafter\def\csname simpleicon@nimicon\endcsname {\simpleiconsmapeight\symbol{85}}
+ \expandafter\def\csname simpleicon@nintendoicon\endcsname {\simpleiconsmapeight\symbol{86}}
+ \expandafter\def\csname simpleicon@nintendo3dsicon\endcsname {\simpleiconsmapeight\symbol{87}}
+ \expandafter\def\csname simpleicon@nintendogamecubeicon\endcsname {\simpleiconsmapeight\symbol{88}}
+ \expandafter\def\csname simpleicon@nintendoswitchicon\endcsname {\simpleiconsmapeight\symbol{89}}
+ \expandafter\def\csname simpleicon@nissanicon\endcsname {\simpleiconsmapeight\symbol{90}}
+ \expandafter\def\csname simpleicon@nixosicon\endcsname {\simpleiconsmapeight\symbol{91}}
+ \expandafter\def\csname simpleicon@nodedotjsicon\endcsname {\simpleiconsmapeight\symbol{92}}
+ \expandafter\def\csname simpleicon@nodemonicon\endcsname {\simpleiconsmapeight\symbol{93}}
+ \expandafter\def\csname simpleicon@noderedicon\endcsname {\simpleiconsmapeight\symbol{94}}
+ \expandafter\def\csname simpleicon@nokiaicon\endcsname {\simpleiconsmapeight\symbol{95}}
+ \expandafter\def\csname simpleicon@nomadicon\endcsname {\simpleiconsmapeight\symbol{96}}
+ \expandafter\def\csname simpleicon@norcoicon\endcsname {\simpleiconsmapeight\symbol{97}}
+ \expandafter\def\csname simpleicon@nordicsemiconductoricon\endcsname {\simpleiconsmapeight\symbol{98}}
+ \expandafter\def\csname simpleicon@nordvpnicon\endcsname {\simpleiconsmapeight\symbol{99}}
+ \expandafter\def\csname simpleicon@normalizedotcssicon\endcsname {\simpleiconsmapeight\symbol{100}}
+ \expandafter\def\csname simpleicon@nortonicon\endcsname {\simpleiconsmapeight\symbol{101}}
+ \expandafter\def\csname simpleicon@norwegianicon\endcsname {\simpleiconsmapeight\symbol{102}}
+ \expandafter\def\csname simpleicon@notepadplusplusicon\endcsname {\simpleiconsmapeight\symbol{103}}
+ \expandafter\def\csname simpleicon@notionicon\endcsname {\simpleiconsmapeight\symbol{104}}
+ \expandafter\def\csname simpleicon@notisticon\endcsname {\simpleiconsmapeight\symbol{105}}
+ \expandafter\def\csname simpleicon@nounprojecticon\endcsname {\simpleiconsmapeight\symbol{106}}
+ \expandafter\def\csname simpleicon@novuicon\endcsname {\simpleiconsmapeight\symbol{107}}
+ \expandafter\def\csname simpleicon@nowicon\endcsname {\simpleiconsmapeight\symbol{108}}
+ \expandafter\def\csname simpleicon@npmicon\endcsname {\simpleiconsmapeight\symbol{109}}
+ \expandafter\def\csname simpleicon@nrwlicon\endcsname {\simpleiconsmapeight\symbol{110}}
+ \expandafter\def\csname simpleicon@nsisicon\endcsname {\simpleiconsmapeight\symbol{111}}
+ \expandafter\def\csname simpleicon@ntfyicon\endcsname {\simpleiconsmapeight\symbol{112}}
+ \expandafter\def\csname simpleicon@nubankicon\endcsname {\simpleiconsmapeight\symbol{113}}
+ \expandafter\def\csname simpleicon@nucleoicon\endcsname {\simpleiconsmapeight\symbol{114}}
+ \expandafter\def\csname simpleicon@nugeticon\endcsname {\simpleiconsmapeight\symbol{115}}
+ \expandafter\def\csname simpleicon@nukeicon\endcsname {\simpleiconsmapeight\symbol{116}}
+ \expandafter\def\csname simpleicon@numbaicon\endcsname {\simpleiconsmapeight\symbol{117}}
+ \expandafter\def\csname simpleicon@numpyicon\endcsname {\simpleiconsmapeight\symbol{118}}
+ \expandafter\def\csname simpleicon@nunjucksicon\endcsname {\simpleiconsmapeight\symbol{119}}
+ \expandafter\def\csname simpleicon@nushellicon\endcsname {\simpleiconsmapeight\symbol{120}}
+ \expandafter\def\csname simpleicon@nutanixicon\endcsname {\simpleiconsmapeight\symbol{121}}
+ \expandafter\def\csname simpleicon@nuxtdotjsicon\endcsname {\simpleiconsmapeight\symbol{122}}
+ \expandafter\def\csname simpleicon@nvidiaicon\endcsname {\simpleiconsmapeight\symbol{123}}
+ \expandafter\def\csname simpleicon@nvmicon\endcsname {\simpleiconsmapeight\symbol{124}}
+ \expandafter\def\csname simpleicon@nxicon\endcsname {\simpleiconsmapeight\symbol{125}}
+ \expandafter\def\csname simpleicon@nxpicon\endcsname {\simpleiconsmapeight\symbol{126}}
+ \expandafter\def\csname simpleicon@nzxticon\endcsname {\simpleiconsmapeight\symbol{127}}
+ \expandafter\def\csname simpleicon@observableicon\endcsname {\simpleiconsmapeight\symbol{128}}
+ \expandafter\def\csname simpleicon@obsidianicon\endcsname {\simpleiconsmapeight\symbol{129}}
+ \expandafter\def\csname simpleicon@obsstudioicon\endcsname {\simpleiconsmapeight\symbol{130}}
+ \expandafter\def\csname simpleicon@ocamlicon\endcsname {\simpleiconsmapeight\symbol{131}}
+ \expandafter\def\csname simpleicon@oclificon\endcsname {\simpleiconsmapeight\symbol{132}}
+ \expandafter\def\csname simpleicon@octanerendericon\endcsname {\simpleiconsmapeight\symbol{133}}
+ \expandafter\def\csname simpleicon@octaveicon\endcsname {\simpleiconsmapeight\symbol{134}}
+ \expandafter\def\csname simpleicon@octobercmsicon\endcsname {\simpleiconsmapeight\symbol{135}}
+ \expandafter\def\csname simpleicon@octoprinticon\endcsname {\simpleiconsmapeight\symbol{136}}
+ \expandafter\def\csname simpleicon@octopusdeployicon\endcsname {\simpleiconsmapeight\symbol{137}}
+ \expandafter\def\csname simpleicon@oculusicon\endcsname {\simpleiconsmapeight\symbol{138}}
+ \expandafter\def\csname simpleicon@odnoklassnikiicon\endcsname {\simpleiconsmapeight\symbol{139}}
+ \expandafter\def\csname simpleicon@odooicon\endcsname {\simpleiconsmapeight\symbol{140}}
+ \expandafter\def\csname simpleicon@odyseeicon\endcsname {\simpleiconsmapeight\symbol{141}}
+ \expandafter\def\csname simpleicon@ohdearicon\endcsname {\simpleiconsmapeight\symbol{142}}
+ \expandafter\def\csname simpleicon@okcupidicon\endcsname {\simpleiconsmapeight\symbol{143}}
+ \expandafter\def\csname simpleicon@oktaicon\endcsname {\simpleiconsmapeight\symbol{144}}
+ \expandafter\def\csname simpleicon@ollamaicon\endcsname {\simpleiconsmapeight\symbol{145}}
+ \expandafter\def\csname simpleicon@oneplusicon\endcsname {\simpleiconsmapeight\symbol{146}}
+ \expandafter\def\csname simpleicon@onlyfansicon\endcsname {\simpleiconsmapeight\symbol{147}}
+ \expandafter\def\csname simpleicon@onlyofficeicon\endcsname {\simpleiconsmapeight\symbol{148}}
+ \expandafter\def\csname simpleicon@onnxicon\endcsname {\simpleiconsmapeight\symbol{149}}
+ \expandafter\def\csname simpleicon@onstaricon\endcsname {\simpleiconsmapeight\symbol{150}}
+ \expandafter\def\csname simpleicon@opelicon\endcsname {\simpleiconsmapeight\symbol{151}}
+ \expandafter\def\csname simpleicon@openaccessicon\endcsname {\simpleiconsmapeight\symbol{152}}
+ \expandafter\def\csname simpleicon@openaiicon\endcsname {\simpleiconsmapeight\symbol{153}}
+ \expandafter\def\csname simpleicon@openaigymicon\endcsname {\simpleiconsmapeight\symbol{154}}
+ \expandafter\def\csname simpleicon@openapiinitiativeicon\endcsname {\simpleiconsmapeight\symbol{155}}
+ \expandafter\def\csname simpleicon@openbadgesicon\endcsname {\simpleiconsmapeight\symbol{156}}
+ \expandafter\def\csname simpleicon@openbsdicon\endcsname {\simpleiconsmapeight\symbol{157}}
+ \expandafter\def\csname simpleicon@openbugbountyicon\endcsname {\simpleiconsmapeight\symbol{158}}
+ \expandafter\def\csname simpleicon@opencollectiveicon\endcsname {\simpleiconsmapeight\symbol{159}}
+ \expandafter\def\csname simpleicon@opencontainersinitiativeicon\endcsname {\simpleiconsmapeight\symbol{160}}
+ \expandafter\def\csname simpleicon@opencvicon\endcsname {\simpleiconsmapeight\symbol{161}}
+ \expandafter\def\csname simpleicon@openfaasicon\endcsname {\simpleiconsmapeight\symbol{162}}
+ \expandafter\def\csname simpleicon@openglicon\endcsname {\simpleiconsmapeight\symbol{163}}
+ \expandafter\def\csname simpleicon@openhabicon\endcsname {\simpleiconsmapeight\symbol{164}}
+ \expandafter\def\csname simpleicon@openidicon\endcsname {\simpleiconsmapeight\symbol{165}}
+ \expandafter\def\csname simpleicon@openjdkicon\endcsname {\simpleiconsmapeight\symbol{166}}
+ \expandafter\def\csname simpleicon@openjsfoundationicon\endcsname {\simpleiconsmapeight\symbol{167}}
+ \expandafter\def\csname simpleicon@openlayersicon\endcsname {\simpleiconsmapeight\symbol{168}}
+ \expandafter\def\csname simpleicon@openmediavaulticon\endcsname {\simpleiconsmapeight\symbol{169}}
+ \expandafter\def\csname simpleicon@openminedicon\endcsname {\simpleiconsmapeight\symbol{170}}
+ \expandafter\def\csname simpleicon@opennebulaicon\endcsname {\simpleiconsmapeight\symbol{171}}
+ \expandafter\def\csname simpleicon@openprojecticon\endcsname {\simpleiconsmapeight\symbol{172}}
+ \expandafter\def\csname simpleicon@openscadicon\endcsname {\simpleiconsmapeight\symbol{173}}
+ \expandafter\def\csname simpleicon@openseaicon\endcsname {\simpleiconsmapeight\symbol{174}}
+ \expandafter\def\csname simpleicon@opensearchicon\endcsname {\simpleiconsmapeight\symbol{175}}
+ \expandafter\def\csname simpleicon@opensourcehardwareicon\endcsname {\simpleiconsmapeight\symbol{176}}
+ \expandafter\def\csname simpleicon@opensourceinitiativeicon\endcsname {\simpleiconsmapeight\symbol{177}}
+ \expandafter\def\csname simpleicon@opensslicon\endcsname {\simpleiconsmapeight\symbol{178}}
+ \expandafter\def\csname simpleicon@openstackicon\endcsname {\simpleiconsmapeight\symbol{179}}
+ \expandafter\def\csname simpleicon@openstreetmapicon\endcsname {\simpleiconsmapeight\symbol{180}}
+ \expandafter\def\csname simpleicon@opensuseicon\endcsname {\simpleiconsmapeight\symbol{181}}
+ \expandafter\def\csname simpleicon@opentelemetryicon\endcsname {\simpleiconsmapeight\symbol{182}}
+ \expandafter\def\csname simpleicon@opentexticon\endcsname {\simpleiconsmapeight\symbol{183}}
+ \expandafter\def\csname simpleicon@opentofuicon\endcsname {\simpleiconsmapeight\symbol{184}}
+ \expandafter\def\csname simpleicon@openverseicon\endcsname {\simpleiconsmapeight\symbol{185}}
+ \expandafter\def\csname simpleicon@openvpnicon\endcsname {\simpleiconsmapeight\symbol{186}}
+ \expandafter\def\csname simpleicon@openwrticon\endcsname {\simpleiconsmapeight\symbol{187}}
+ \expandafter\def\csname simpleicon@openzeppelinicon\endcsname {\simpleiconsmapeight\symbol{188}}
+ \expandafter\def\csname simpleicon@openzfsicon\endcsname {\simpleiconsmapeight\symbol{189}}
+ \expandafter\def\csname simpleicon@operaicon\endcsname {\simpleiconsmapeight\symbol{190}}
+ \expandafter\def\csname simpleicon@operagxicon\endcsname {\simpleiconsmapeight\symbol{191}}
+ \expandafter\def\csname simpleicon@opnsenseicon\endcsname {\simpleiconsmapeight\symbol{192}}
+ \expandafter\def\csname simpleicon@oppoicon\endcsname {\simpleiconsmapeight\symbol{193}}
+ \expandafter\def\csname simpleicon@opsgenieicon\endcsname {\simpleiconsmapeight\symbol{194}}
+ \expandafter\def\csname simpleicon@opslevelicon\endcsname {\simpleiconsmapeight\symbol{195}}
+ \expandafter\def\csname simpleicon@optimismicon\endcsname {\simpleiconsmapeight\symbol{196}}
+ \expandafter\def\csname simpleicon@oracleicon\endcsname {\simpleiconsmapeight\symbol{197}}
+ \expandafter\def\csname simpleicon@orangeicon\endcsname {\simpleiconsmapeight\symbol{198}}
+ \expandafter\def\csname simpleicon@orcidicon\endcsname {\simpleiconsmapeight\symbol{199}}
+ \expandafter\def\csname simpleicon@oreillyicon\endcsname {\simpleiconsmapeight\symbol{200}}
+ \expandafter\def\csname simpleicon@orgicon\endcsname {\simpleiconsmapeight\symbol{201}}
+ \expandafter\def\csname simpleicon@organicmapsicon\endcsname {\simpleiconsmapeight\symbol{202}}
+ \expandafter\def\csname simpleicon@originicon\endcsname {\simpleiconsmapeight\symbol{203}}
+ \expandafter\def\csname simpleicon@osanoicon\endcsname {\simpleiconsmapeight\symbol{204}}
+ \expandafter\def\csname simpleicon@osficon\endcsname {\simpleiconsmapeight\symbol{205}}
+ \expandafter\def\csname simpleicon@osgeoicon\endcsname {\simpleiconsmapeight\symbol{206}}
+ \expandafter\def\csname simpleicon@oshkoshicon\endcsname {\simpleiconsmapeight\symbol{207}}
+ \expandafter\def\csname simpleicon@osmcicon\endcsname {\simpleiconsmapeight\symbol{208}}
+ \expandafter\def\csname simpleicon@osuicon\endcsname {\simpleiconsmapeight\symbol{209}}
+ \expandafter\def\csname simpleicon@ottoicon\endcsname {\simpleiconsmapeight\symbol{210}}
+ \expandafter\def\csname simpleicon@outlineicon\endcsname {\simpleiconsmapeight\symbol{211}}
+ \expandafter\def\csname simpleicon@overcasticon\endcsname {\simpleiconsmapeight\symbol{212}}
+ \expandafter\def\csname simpleicon@overleaficon\endcsname {\simpleiconsmapeight\symbol{213}}
+ \expandafter\def\csname simpleicon@ovhicon\endcsname {\simpleiconsmapeight\symbol{214}}
+ \expandafter\def\csname simpleicon@owaspicon\endcsname {\simpleiconsmapeight\symbol{215}}
+ \expandafter\def\csname simpleicon@owncloudicon\endcsname {\simpleiconsmapeight\symbol{216}}
+ \expandafter\def\csname simpleicon@oxygenicon\endcsname {\simpleiconsmapeight\symbol{217}}
+ \expandafter\def\csname simpleicon@oyoicon\endcsname {\simpleiconsmapeight\symbol{218}}
+ \expandafter\def\csname simpleicon@p5dotjsicon\endcsname {\simpleiconsmapeight\symbol{219}}
+ \expandafter\def\csname simpleicon@packagisticon\endcsname {\simpleiconsmapeight\symbol{220}}
+ \expandafter\def\csname simpleicon@packericon\endcsname {\simpleiconsmapeight\symbol{221}}
+ \expandafter\def\csname simpleicon@packticon\endcsname {\simpleiconsmapeight\symbol{222}}
+ \expandafter\def\csname simpleicon@paddleicon\endcsname {\simpleiconsmapeight\symbol{223}}
+ \expandafter\def\csname simpleicon@paddlepaddleicon\endcsname {\simpleiconsmapeight\symbol{224}}
+ \expandafter\def\csname simpleicon@paddypowericon\endcsname {\simpleiconsmapeight\symbol{225}}
+ \expandafter\def\csname simpleicon@pagekiticon\endcsname {\simpleiconsmapeight\symbol{226}}
+ \expandafter\def\csname simpleicon@pagerdutyicon\endcsname {\simpleiconsmapeight\symbol{227}}
+ \expandafter\def\csname simpleicon@pagespeedinsightsicon\endcsname {\simpleiconsmapeight\symbol{228}}
+ \expandafter\def\csname simpleicon@pagseguroicon\endcsname {\simpleiconsmapeight\symbol{229}}
+ \expandafter\def\csname simpleicon@palantiricon\endcsname {\simpleiconsmapeight\symbol{230}}
+ \expandafter\def\csname simpleicon@paloaltonetworksicon\endcsname {\simpleiconsmapeight\symbol{231}}
+ \expandafter\def\csname simpleicon@paloaltosoftwareicon\endcsname {\simpleiconsmapeight\symbol{232}}
+ \expandafter\def\csname simpleicon@panasonicicon\endcsname {\simpleiconsmapeight\symbol{233}}
+ \expandafter\def\csname simpleicon@pandasicon\endcsname {\simpleiconsmapeight\symbol{234}}
+ \expandafter\def\csname simpleicon@pandoraicon\endcsname {\simpleiconsmapeight\symbol{235}}
+ \expandafter\def\csname simpleicon@pantheonicon\endcsname {\simpleiconsmapeight\symbol{236}}
+ \expandafter\def\csname simpleicon@paperlessngxicon\endcsname {\simpleiconsmapeight\symbol{237}}
+ \expandafter\def\csname simpleicon@paperspaceicon\endcsname {\simpleiconsmapeight\symbol{238}}
+ \expandafter\def\csname simpleicon@paperswithcodeicon\endcsname {\simpleiconsmapeight\symbol{239}}
+ \expandafter\def\csname simpleicon@paramountplusicon\endcsname {\simpleiconsmapeight\symbol{240}}
+ \expandafter\def\csname simpleicon@paritysubstrateicon\endcsname {\simpleiconsmapeight\symbol{241}}
+ \expandafter\def\csname simpleicon@parrotsecurityicon\endcsname {\simpleiconsmapeight\symbol{242}}
+ \expandafter\def\csname simpleicon@parsedotlyicon\endcsname {\simpleiconsmapeight\symbol{243}}
+ \expandafter\def\csname simpleicon@passporticon\endcsname {\simpleiconsmapeight\symbol{244}}
+ \expandafter\def\csname simpleicon@pastebinicon\endcsname {\simpleiconsmapeight\symbol{245}}
+ \expandafter\def\csname simpleicon@patreonicon\endcsname {\simpleiconsmapeight\symbol{246}}
+ \expandafter\def\csname simpleicon@paychexicon\endcsname {\simpleiconsmapeight\symbol{247}}
+ \expandafter\def\csname simpleicon@payhipicon\endcsname {\simpleiconsmapeight\symbol{248}}
+ \expandafter\def\csname simpleicon@payloadcmsicon\endcsname {\simpleiconsmapeight\symbol{249}}
+ \expandafter\def\csname simpleicon@payoneericon\endcsname {\simpleiconsmapeight\symbol{250}}
+ \expandafter\def\csname simpleicon@paypalicon\endcsname {\simpleiconsmapeight\symbol{251}}
+ \expandafter\def\csname simpleicon@paytmicon\endcsname {\simpleiconsmapeight\symbol{252}}
+ \expandafter\def\csname simpleicon@pcgamingwikiicon\endcsname {\simpleiconsmapeight\symbol{253}}
+ \expandafter\def\csname simpleicon@pdmicon\endcsname {\simpleiconsmapeight\symbol{254}}
+ \expandafter\def\csname simpleicon@pdqicon\endcsname {\simpleiconsmapeight\symbol{255}}
+ \expandafter\def\csname simpleicon@peakdesignicon\endcsname {\simpleiconsmapnine\symbol{0}}
+ \expandafter\def\csname simpleicon@pearsonicon\endcsname {\simpleiconsmapnine\symbol{1}}
+ \expandafter\def\csname simpleicon@peerlisticon\endcsname {\simpleiconsmapnine\symbol{2}}
+ \expandafter\def\csname simpleicon@peertubeicon\endcsname {\simpleiconsmapnine\symbol{3}}
+ \expandafter\def\csname simpleicon@pegasusairlinesicon\endcsname {\simpleiconsmapnine\symbol{4}}
+ \expandafter\def\csname simpleicon@pelicanicon\endcsname {\simpleiconsmapnine\symbol{5}}
+ \expandafter\def\csname simpleicon@pelotonicon\endcsname {\simpleiconsmapnine\symbol{6}}
+ \expandafter\def\csname simpleicon@pennyicon\endcsname {\simpleiconsmapnine\symbol{7}}
+ \expandafter\def\csname simpleicon@penpoticon\endcsname {\simpleiconsmapnine\symbol{8}}
+ \expandafter\def\csname simpleicon@percyicon\endcsname {\simpleiconsmapnine\symbol{9}}
+ \expandafter\def\csname simpleicon@perforceicon\endcsname {\simpleiconsmapnine\symbol{10}}
+ \expandafter\def\csname simpleicon@perlicon\endcsname {\simpleiconsmapnine\symbol{11}}
+ \expandafter\def\csname simpleicon@perplexityicon\endcsname {\simpleiconsmapnine\symbol{12}}
+ \expandafter\def\csname simpleicon@persistenticon\endcsname {\simpleiconsmapnine\symbol{13}}
+ \expandafter\def\csname simpleicon@personioicon\endcsname {\simpleiconsmapnine\symbol{14}}
+ \expandafter\def\csname simpleicon@petsathomeicon\endcsname {\simpleiconsmapnine\symbol{15}}
+ \expandafter\def\csname simpleicon@peugeoticon\endcsname {\simpleiconsmapnine\symbol{16}}
+ \expandafter\def\csname simpleicon@pexelsicon\endcsname {\simpleiconsmapnine\symbol{17}}
+ \expandafter\def\csname simpleicon@pfsenseicon\endcsname {\simpleiconsmapnine\symbol{18}}
+ \expandafter\def\csname simpleicon@phabricatoricon\endcsname {\simpleiconsmapnine\symbol{19}}
+ \expandafter\def\csname simpleicon@philipshueicon\endcsname {\simpleiconsmapnine\symbol{20}}
+ \expandafter\def\csname simpleicon@phoenixframeworkicon\endcsname {\simpleiconsmapnine\symbol{21}}
+ \expandafter\def\csname simpleicon@phonepeicon\endcsname {\simpleiconsmapnine\symbol{22}}
+ \expandafter\def\csname simpleicon@phosphoriconsicon\endcsname {\simpleiconsmapnine\symbol{23}}
+ \expandafter\def\csname simpleicon@photobucketicon\endcsname {\simpleiconsmapnine\symbol{24}}
+ \expandafter\def\csname simpleicon@photocrowdicon\endcsname {\simpleiconsmapnine\symbol{25}}
+ \expandafter\def\csname simpleicon@photonicon\endcsname {\simpleiconsmapnine\symbol{26}}
+ \expandafter\def\csname simpleicon@photopeaicon\endcsname {\simpleiconsmapnine\symbol{27}}
+ \expandafter\def\csname simpleicon@phpicon\endcsname {\simpleiconsmapnine\symbol{28}}
+ \expandafter\def\csname simpleicon@phpmyadminicon\endcsname {\simpleiconsmapnine\symbol{29}}
+ \expandafter\def\csname simpleicon@phpstormicon\endcsname {\simpleiconsmapnine\symbol{30}}
+ \expandafter\def\csname simpleicon@piaggiogroupicon\endcsname {\simpleiconsmapnine\symbol{31}}
+ \expandafter\def\csname simpleicon@piaproicon\endcsname {\simpleiconsmapnine\symbol{32}}
+ \expandafter\def\csname simpleicon@picardsurgelesicon\endcsname {\simpleiconsmapnine\symbol{33}}
+ \expandafter\def\csname simpleicon@picartodottvicon\endcsname {\simpleiconsmapnine\symbol{34}}
+ \expandafter\def\csname simpleicon@picnicicon\endcsname {\simpleiconsmapnine\symbol{35}}
+ \expandafter\def\csname simpleicon@picpayicon\endcsname {\simpleiconsmapnine\symbol{36}}
+ \expandafter\def\csname simpleicon@picrewicon\endcsname {\simpleiconsmapnine\symbol{37}}
+ \expandafter\def\csname simpleicon@picxyicon\endcsname {\simpleiconsmapnine\symbol{38}}
+ \expandafter\def\csname simpleicon@piholeicon\endcsname {\simpleiconsmapnine\symbol{39}}
+ \expandafter\def\csname simpleicon@pimcoreicon\endcsname {\simpleiconsmapnine\symbol{40}}
+ \expandafter\def\csname simpleicon@pinboardicon\endcsname {\simpleiconsmapnine\symbol{41}}
+ \expandafter\def\csname simpleicon@pinescripticon\endcsname {\simpleiconsmapnine\symbol{42}}
+ \expandafter\def\csname simpleicon@pinetworkicon\endcsname {\simpleiconsmapnine\symbol{43}}
+ \expandafter\def\csname simpleicon@pingdomicon\endcsname {\simpleiconsmapnine\symbol{44}}
+ \expandafter\def\csname simpleicon@pinoicon\endcsname {\simpleiconsmapnine\symbol{45}}
+ \expandafter\def\csname simpleicon@pinteresticon\endcsname {\simpleiconsmapnine\symbol{46}}
+ \expandafter\def\csname simpleicon@pioneerdjicon\endcsname {\simpleiconsmapnine\symbol{47}}
+ \expandafter\def\csname simpleicon@pipedicon\endcsname {\simpleiconsmapnine\symbol{48}}
+ \expandafter\def\csname simpleicon@pipxicon\endcsname {\simpleiconsmapnine\symbol{49}}
+ \expandafter\def\csname simpleicon@pivotaltrackericon\endcsname {\simpleiconsmapnine\symbol{50}}
+ \expandafter\def\csname simpleicon@piwigoicon\endcsname {\simpleiconsmapnine\symbol{51}}
+ \expandafter\def\csname simpleicon@pixicon\endcsname {\simpleiconsmapnine\symbol{52}}
+ \expandafter\def\csname simpleicon@pixabayicon\endcsname {\simpleiconsmapnine\symbol{53}}
+ \expandafter\def\csname simpleicon@pixelfedicon\endcsname {\simpleiconsmapnine\symbol{54}}
+ \expandafter\def\csname simpleicon@pixivicon\endcsname {\simpleiconsmapnine\symbol{55}}
+ \expandafter\def\csname simpleicon@pixlricon\endcsname {\simpleiconsmapnine\symbol{56}}
+ \expandafter\def\csname simpleicon@pkgsrcicon\endcsname {\simpleiconsmapnine\symbol{57}}
+ \expandafter\def\csname simpleicon@planeticon\endcsname {\simpleiconsmapnine\symbol{58}}
+ \expandafter\def\csname simpleicon@planetscaleicon\endcsname {\simpleiconsmapnine\symbol{59}}
+ \expandafter\def\csname simpleicon@plangridicon\endcsname {\simpleiconsmapnine\symbol{60}}
+ \expandafter\def\csname simpleicon@platformdotshicon\endcsname {\simpleiconsmapnine\symbol{61}}
+ \expandafter\def\csname simpleicon@platformioicon\endcsname {\simpleiconsmapnine\symbol{62}}
+ \expandafter\def\csname simpleicon@platziicon\endcsname {\simpleiconsmapnine\symbol{63}}
+ \expandafter\def\csname simpleicon@plausibleanalyticsicon\endcsname {\simpleiconsmapnine\symbol{64}}
+ \expandafter\def\csname simpleicon@playcanvasicon\endcsname {\simpleiconsmapnine\symbol{65}}
+ \expandafter\def\csname simpleicon@playerdotmeicon\endcsname {\simpleiconsmapnine\symbol{66}}
+ \expandafter\def\csname simpleicon@playerfmicon\endcsname {\simpleiconsmapnine\symbol{67}}
+ \expandafter\def\csname simpleicon@playstationicon\endcsname {\simpleiconsmapnine\symbol{68}}
+ \expandafter\def\csname simpleicon@playstation2icon\endcsname {\simpleiconsmapnine\symbol{69}}
+ \expandafter\def\csname simpleicon@playstation3icon\endcsname {\simpleiconsmapnine\symbol{70}}
+ \expandafter\def\csname simpleicon@playstation4icon\endcsname {\simpleiconsmapnine\symbol{71}}
+ \expandafter\def\csname simpleicon@playstation5icon\endcsname {\simpleiconsmapnine\symbol{72}}
+ \expandafter\def\csname simpleicon@playstationportableicon\endcsname {\simpleiconsmapnine\symbol{73}}
\expandafter\def\csname simpleicon@playstationvitaicon\endcsname {\simpleiconsmapnine\symbol{74}}
- \expandafter\def\csname simpleicon@playwrighticon\endcsname {\simpleiconsmapnine\symbol{75}}
- \expandafter\def\csname simpleicon@pleromaicon\endcsname {\simpleiconsmapnine\symbol{76}}
- \expandafter\def\csname simpleicon@pleskicon\endcsname {\simpleiconsmapnine\symbol{77}}
- \expandafter\def\csname simpleicon@plexicon\endcsname {\simpleiconsmapnine\symbol{78}}
- \expandafter\def\csname simpleicon@plotlyicon\endcsname {\simpleiconsmapnine\symbol{79}}
- \expandafter\def\csname simpleicon@plumeicon\endcsname {\simpleiconsmapnine\symbol{80}}
- \expandafter\def\csname simpleicon@pluralsighticon\endcsname {\simpleiconsmapnine\symbol{81}}
- \expandafter\def\csname simpleicon@plurkicon\endcsname {\simpleiconsmapnine\symbol{82}}
- \expandafter\def\csname simpleicon@pluscodesicon\endcsname {\simpleiconsmapnine\symbol{83}}
- \expandafter\def\csname simpleicon@pm2icon\endcsname {\simpleiconsmapnine\symbol{84}}
- \expandafter\def\csname simpleicon@pnpmicon\endcsname {\simpleiconsmapnine\symbol{85}}
- \expandafter\def\csname simpleicon@pocketicon\endcsname {\simpleiconsmapnine\symbol{86}}
- \expandafter\def\csname simpleicon@pocketbaseicon\endcsname {\simpleiconsmapnine\symbol{87}}
- \expandafter\def\csname simpleicon@pocketcastsicon\endcsname {\simpleiconsmapnine\symbol{88}}
- \expandafter\def\csname simpleicon@podcastaddicticon\endcsname {\simpleiconsmapnine\symbol{89}}
- \expandafter\def\csname simpleicon@podcastindexicon\endcsname {\simpleiconsmapnine\symbol{90}}
- \expandafter\def\csname simpleicon@podmanicon\endcsname {\simpleiconsmapnine\symbol{91}}
- \expandafter\def\csname simpleicon@poeicon\endcsname {\simpleiconsmapnine\symbol{92}}
- \expandafter\def\csname simpleicon@poetryicon\endcsname {\simpleiconsmapnine\symbol{93}}
- \expandafter\def\csname simpleicon@pointyicon\endcsname {\simpleiconsmapnine\symbol{94}}
- \expandafter\def\csname simpleicon@pokemonicon\endcsname {\simpleiconsmapnine\symbol{95}}
- \expandafter\def\csname simpleicon@polarsicon\endcsname {\simpleiconsmapnine\symbol{96}}
- \expandafter\def\csname simpleicon@polestaricon\endcsname {\simpleiconsmapnine\symbol{97}}
- \expandafter\def\csname simpleicon@polkadoticon\endcsname {\simpleiconsmapnine\symbol{98}}
- \expandafter\def\csname simpleicon@polyicon\endcsname {\simpleiconsmapnine\symbol{99}}
- \expandafter\def\csname simpleicon@polygonicon\endcsname {\simpleiconsmapnine\symbol{100}}
- \expandafter\def\csname simpleicon@polymerprojecticon\endcsname {\simpleiconsmapnine\symbol{101}}
- \expandafter\def\csname simpleicon@polyworkicon\endcsname {\simpleiconsmapnine\symbol{102}}
- \expandafter\def\csname simpleicon@pond5icon\endcsname {\simpleiconsmapnine\symbol{103}}
- \expandafter\def\csname simpleicon@poposicon\endcsname {\simpleiconsmapnine\symbol{104}}
- \expandafter\def\csname simpleicon@porkbunicon\endcsname {\simpleiconsmapnine\symbol{105}}
- \expandafter\def\csname simpleicon@porscheicon\endcsname {\simpleiconsmapnine\symbol{106}}
- \expandafter\def\csname simpleicon@portainericon\endcsname {\simpleiconsmapnine\symbol{107}}
- \expandafter\def\csname simpleicon@portswiggericon\endcsname {\simpleiconsmapnine\symbol{108}}
- \expandafter\def\csname simpleicon@positicon\endcsname {\simpleiconsmapnine\symbol{109}}
- \expandafter\def\csname simpleicon@postcssicon\endcsname {\simpleiconsmapnine\symbol{110}}
- \expandafter\def\csname simpleicon@postgresqlicon\endcsname {\simpleiconsmapnine\symbol{111}}
- \expandafter\def\csname simpleicon@posthogicon\endcsname {\simpleiconsmapnine\symbol{112}}
- \expandafter\def\csname simpleicon@postmanicon\endcsname {\simpleiconsmapnine\symbol{113}}
- \expandafter\def\csname simpleicon@postmatesicon\endcsname {\simpleiconsmapnine\symbol{114}}
- \expandafter\def\csname simpleicon@powerappsicon\endcsname {\simpleiconsmapnine\symbol{115}}
- \expandafter\def\csname simpleicon@powerautomateicon\endcsname {\simpleiconsmapnine\symbol{116}}
- \expandafter\def\csname simpleicon@powerbiicon\endcsname {\simpleiconsmapnine\symbol{117}}
- \expandafter\def\csname simpleicon@powerfxicon\endcsname {\simpleiconsmapnine\symbol{118}}
- \expandafter\def\csname simpleicon@powerpagesicon\endcsname {\simpleiconsmapnine\symbol{119}}
- \expandafter\def\csname simpleicon@powersicon\endcsname {\simpleiconsmapnine\symbol{120}}
- \expandafter\def\csname simpleicon@powershellicon\endcsname {\simpleiconsmapnine\symbol{121}}
- \expandafter\def\csname simpleicon@powervirtualagentsicon\endcsname {\simpleiconsmapnine\symbol{122}}
- \expandafter\def\csname simpleicon@prdotcoicon\endcsname {\simpleiconsmapnine\symbol{123}}
- \expandafter\def\csname simpleicon@preacticon\endcsname {\simpleiconsmapnine\symbol{124}}
- \expandafter\def\csname simpleicon@precommiticon\endcsname {\simpleiconsmapnine\symbol{125}}
- \expandafter\def\csname simpleicon@prefecticon\endcsname {\simpleiconsmapnine\symbol{126}}
- \expandafter\def\csname simpleicon@premierleagueicon\endcsname {\simpleiconsmapnine\symbol{127}}
- \expandafter\def\csname simpleicon@prepbytesicon\endcsname {\simpleiconsmapnine\symbol{128}}
- \expandafter\def\csname simpleicon@prestashopicon\endcsname {\simpleiconsmapnine\symbol{129}}
- \expandafter\def\csname simpleicon@prestoicon\endcsname {\simpleiconsmapnine\symbol{130}}
- \expandafter\def\csname simpleicon@prettiericon\endcsname {\simpleiconsmapnine\symbol{131}}
- \expandafter\def\csname simpleicon@pretzelicon\endcsname {\simpleiconsmapnine\symbol{132}}
- \expandafter\def\csname simpleicon@preventionicon\endcsname {\simpleiconsmapnine\symbol{133}}
- \expandafter\def\csname simpleicon@preziicon\endcsname {\simpleiconsmapnine\symbol{134}}
- \expandafter\def\csname simpleicon@primeicon\endcsname {\simpleiconsmapnine\symbol{135}}
- \expandafter\def\csname simpleicon@primengicon\endcsname {\simpleiconsmapnine\symbol{136}}
- \expandafter\def\csname simpleicon@primereacticon\endcsname {\simpleiconsmapnine\symbol{137}}
- \expandafter\def\csname simpleicon@primevideoicon\endcsname {\simpleiconsmapnine\symbol{138}}
- \expandafter\def\csname simpleicon@printablesicon\endcsname {\simpleiconsmapnine\symbol{139}}
- \expandafter\def\csname simpleicon@prismaicon\endcsname {\simpleiconsmapnine\symbol{140}}
- \expandafter\def\csname simpleicon@prismicicon\endcsname {\simpleiconsmapnine\symbol{141}}
- \expandafter\def\csname simpleicon@privatedivisionicon\endcsname {\simpleiconsmapnine\symbol{142}}
- \expandafter\def\csname simpleicon@privateinternetaccessicon\endcsname {\simpleiconsmapnine\symbol{143}}
- \expandafter\def\csname simpleicon@proboticon\endcsname {\simpleiconsmapnine\symbol{144}}
- \expandafter\def\csname simpleicon@processingfoundationicon\endcsname {\simpleiconsmapnine\symbol{145}}
- \expandafter\def\csname simpleicon@processwireicon\endcsname {\simpleiconsmapnine\symbol{146}}
- \expandafter\def\csname simpleicon@producthunticon\endcsname {\simpleiconsmapnine\symbol{147}}
- \expandafter\def\csname simpleicon@progateicon\endcsname {\simpleiconsmapnine\symbol{148}}
- \expandafter\def\csname simpleicon@progressicon\endcsname {\simpleiconsmapnine\symbol{149}}
- \expandafter\def\csname simpleicon@prometheusicon\endcsname {\simpleiconsmapnine\symbol{150}}
- \expandafter\def\csname simpleicon@pronounsdotpageicon\endcsname {\simpleiconsmapnine\symbol{151}}
- \expandafter\def\csname simpleicon@prosiebenicon\endcsname {\simpleiconsmapnine\symbol{152}}
- \expandafter\def\csname simpleicon@proteusicon\endcsname {\simpleiconsmapnine\symbol{153}}
- \expandafter\def\csname simpleicon@protocolsdotioicon\endcsname {\simpleiconsmapnine\symbol{154}}
- \expandafter\def\csname simpleicon@protodotioicon\endcsname {\simpleiconsmapnine\symbol{155}}
- \expandafter\def\csname simpleicon@protonicon\endcsname {\simpleiconsmapnine\symbol{156}}
- \expandafter\def\csname simpleicon@protoncalendaricon\endcsname {\simpleiconsmapnine\symbol{157}}
- \expandafter\def\csname simpleicon@protondbicon\endcsname {\simpleiconsmapnine\symbol{158}}
- \expandafter\def\csname simpleicon@protondriveicon\endcsname {\simpleiconsmapnine\symbol{159}}
- \expandafter\def\csname simpleicon@protonmailicon\endcsname {\simpleiconsmapnine\symbol{160}}
- \expandafter\def\csname simpleicon@protonvpnicon\endcsname {\simpleiconsmapnine\symbol{161}}
- \expandafter\def\csname simpleicon@protoolsicon\endcsname {\simpleiconsmapnine\symbol{162}}
- \expandafter\def\csname simpleicon@protractoricon\endcsname {\simpleiconsmapnine\symbol{163}}
- \expandafter\def\csname simpleicon@proxmoxicon\endcsname {\simpleiconsmapnine\symbol{164}}
- \expandafter\def\csname simpleicon@pterodactylicon\endcsname {\simpleiconsmapnine\symbol{165}}
- \expandafter\def\csname simpleicon@pubgicon\endcsname {\simpleiconsmapnine\symbol{166}}
- \expandafter\def\csname simpleicon@publonsicon\endcsname {\simpleiconsmapnine\symbol{167}}
- \expandafter\def\csname simpleicon@pubmedicon\endcsname {\simpleiconsmapnine\symbol{168}}
- \expandafter\def\csname simpleicon@pugicon\endcsname {\simpleiconsmapnine\symbol{169}}
- \expandafter\def\csname simpleicon@pulumiicon\endcsname {\simpleiconsmapnine\symbol{170}}
- \expandafter\def\csname simpleicon@pumaicon\endcsname {\simpleiconsmapnine\symbol{171}}
- \expandafter\def\csname simpleicon@puppeticon\endcsname {\simpleiconsmapnine\symbol{172}}
- \expandafter\def\csname simpleicon@puppeteericon\endcsname {\simpleiconsmapnine\symbol{173}}
- \expandafter\def\csname simpleicon@purescripticon\endcsname {\simpleiconsmapnine\symbol{174}}
- \expandafter\def\csname simpleicon@purgecssicon\endcsname {\simpleiconsmapnine\symbol{175}}
- \expandafter\def\csname simpleicon@purismicon\endcsname {\simpleiconsmapnine\symbol{176}}
- \expandafter\def\csname simpleicon@pushbulleticon\endcsname {\simpleiconsmapnine\symbol{177}}
- \expandafter\def\csname simpleicon@pushericon\endcsname {\simpleiconsmapnine\symbol{178}}
- \expandafter\def\csname simpleicon@pwaicon\endcsname {\simpleiconsmapnine\symbol{179}}
- \expandafter\def\csname simpleicon@pycharmicon\endcsname {\simpleiconsmapnine\symbol{180}}
- \expandafter\def\csname simpleicon@pycqaicon\endcsname {\simpleiconsmapnine\symbol{181}}
- \expandafter\def\csname simpleicon@pydanticicon\endcsname {\simpleiconsmapnine\symbol{182}}
- \expandafter\def\csname simpleicon@pygicon\endcsname {\simpleiconsmapnine\symbol{183}}
- \expandafter\def\csname simpleicon@pypiicon\endcsname {\simpleiconsmapnine\symbol{184}}
- \expandafter\def\csname simpleicon@pypyicon\endcsname {\simpleiconsmapnine\symbol{185}}
- \expandafter\def\csname simpleicon@pyscaffoldicon\endcsname {\simpleiconsmapnine\symbol{186}}
- \expandafter\def\csname simpleicon@pysyfticon\endcsname {\simpleiconsmapnine\symbol{187}}
- \expandafter\def\csname simpleicon@pytesticon\endcsname {\simpleiconsmapnine\symbol{188}}
- \expandafter\def\csname simpleicon@pythonicon\endcsname {\simpleiconsmapnine\symbol{189}}
- \expandafter\def\csname simpleicon@pythonanywhereicon\endcsname {\simpleiconsmapnine\symbol{190}}
- \expandafter\def\csname simpleicon@pytorchicon\endcsname {\simpleiconsmapnine\symbol{191}}
- \expandafter\def\csname simpleicon@pyupicon\endcsname {\simpleiconsmapnine\symbol{192}}
- \expandafter\def\csname simpleicon@qantasicon\endcsname {\simpleiconsmapnine\symbol{193}}
- \expandafter\def\csname simpleicon@qaseicon\endcsname {\simpleiconsmapnine\symbol{194}}
- \expandafter\def\csname simpleicon@qatarairwaysicon\endcsname {\simpleiconsmapnine\symbol{195}}
- \expandafter\def\csname simpleicon@qbittorrenticon\endcsname {\simpleiconsmapnine\symbol{196}}
- \expandafter\def\csname simpleicon@qemuicon\endcsname {\simpleiconsmapnine\symbol{197}}
- \expandafter\def\csname simpleicon@qgisicon\endcsname {\simpleiconsmapnine\symbol{198}}
- \expandafter\def\csname simpleicon@qiicon\endcsname {\simpleiconsmapnine\symbol{199}}
- \expandafter\def\csname simpleicon@qiitaicon\endcsname {\simpleiconsmapnine\symbol{200}}
- \expandafter\def\csname simpleicon@qiskiticon\endcsname {\simpleiconsmapnine\symbol{201}}
- \expandafter\def\csname simpleicon@qiwiicon\endcsname {\simpleiconsmapnine\symbol{202}}
- \expandafter\def\csname simpleicon@qlikicon\endcsname {\simpleiconsmapnine\symbol{203}}
- \expandafter\def\csname simpleicon@qmkicon\endcsname {\simpleiconsmapnine\symbol{204}}
- \expandafter\def\csname simpleicon@qnapicon\endcsname {\simpleiconsmapnine\symbol{205}}
- \expandafter\def\csname simpleicon@qticon\endcsname {\simpleiconsmapnine\symbol{206}}
- \expandafter\def\csname simpleicon@qualcommicon\endcsname {\simpleiconsmapnine\symbol{207}}
- \expandafter\def\csname simpleicon@qualtricsicon\endcsname {\simpleiconsmapnine\symbol{208}}
- \expandafter\def\csname simpleicon@qualysicon\endcsname {\simpleiconsmapnine\symbol{209}}
- \expandafter\def\csname simpleicon@quantcasticon\endcsname {\simpleiconsmapnine\symbol{210}}
- \expandafter\def\csname simpleicon@quantconnecticon\endcsname {\simpleiconsmapnine\symbol{211}}
- \expandafter\def\csname simpleicon@quarkusicon\endcsname {\simpleiconsmapnine\symbol{212}}
- \expandafter\def\csname simpleicon@quartoicon\endcsname {\simpleiconsmapnine\symbol{213}}
- \expandafter\def\csname simpleicon@quasaricon\endcsname {\simpleiconsmapnine\symbol{214}}
- \expandafter\def\csname simpleicon@qubesosicon\endcsname {\simpleiconsmapnine\symbol{215}}
- \expandafter\def\csname simpleicon@questicon\endcsname {\simpleiconsmapnine\symbol{216}}
- \expandafter\def\csname simpleicon@quickbooksicon\endcsname {\simpleiconsmapnine\symbol{217}}
- \expandafter\def\csname simpleicon@quicklookicon\endcsname {\simpleiconsmapnine\symbol{218}}
- \expandafter\def\csname simpleicon@quicktimeicon\endcsname {\simpleiconsmapnine\symbol{219}}
- \expandafter\def\csname simpleicon@quicktypeicon\endcsname {\simpleiconsmapnine\symbol{220}}
- \expandafter\def\csname simpleicon@quipicon\endcsname {\simpleiconsmapnine\symbol{221}}
- \expandafter\def\csname simpleicon@quizleticon\endcsname {\simpleiconsmapnine\symbol{222}}
- \expandafter\def\csname simpleicon@quoraicon\endcsname {\simpleiconsmapnine\symbol{223}}
- \expandafter\def\csname simpleicon@qwanticon\endcsname {\simpleiconsmapnine\symbol{224}}
- \expandafter\def\csname simpleicon@qwikicon\endcsname {\simpleiconsmapnine\symbol{225}}
- \expandafter\def\csname simpleicon@qwiklabsicon\endcsname {\simpleiconsmapnine\symbol{226}}
- \expandafter\def\csname simpleicon@qzoneicon\endcsname {\simpleiconsmapnine\symbol{227}}
- \expandafter\def\csname simpleicon@ricon\endcsname {\simpleiconsmapnine\symbol{228}}
- \expandafter\def\csname simpleicon@r3icon\endcsname {\simpleiconsmapnine\symbol{229}}
- \expandafter\def\csname simpleicon@rabbitmqicon\endcsname {\simpleiconsmapnine\symbol{230}}
- \expandafter\def\csname simpleicon@racketicon\endcsname {\simpleiconsmapnine\symbol{231}}
- \expandafter\def\csname simpleicon@radaricon\endcsname {\simpleiconsmapnine\symbol{232}}
- \expandafter\def\csname simpleicon@radarricon\endcsname {\simpleiconsmapnine\symbol{233}}
- \expandafter\def\csname simpleicon@radiopublicicon\endcsname {\simpleiconsmapnine\symbol{234}}
- \expandafter\def\csname simpleicon@radixuiicon\endcsname {\simpleiconsmapnine\symbol{235}}
- \expandafter\def\csname simpleicon@radstudioicon\endcsname {\simpleiconsmapnine\symbol{236}}
- \expandafter\def\csname simpleicon@railwayicon\endcsname {\simpleiconsmapnine\symbol{237}}
- \expandafter\def\csname simpleicon@rainmetericon\endcsname {\simpleiconsmapnine\symbol{238}}
- \expandafter\def\csname simpleicon@rakutenicon\endcsname {\simpleiconsmapnine\symbol{239}}
- \expandafter\def\csname simpleicon@ramicon\endcsname {\simpleiconsmapnine\symbol{240}}
- \expandafter\def\csname simpleicon@ranchericon\endcsname {\simpleiconsmapnine\symbol{241}}
- \expandafter\def\csname simpleicon@rapidicon\endcsname {\simpleiconsmapnine\symbol{242}}
- \expandafter\def\csname simpleicon@raribleicon\endcsname {\simpleiconsmapnine\symbol{243}}
- \expandafter\def\csname simpleicon@rasaicon\endcsname {\simpleiconsmapnine\symbol{244}}
- \expandafter\def\csname simpleicon@raspberrypiicon\endcsname {\simpleiconsmapnine\symbol{245}}
- \expandafter\def\csname simpleicon@ravelryicon\endcsname {\simpleiconsmapnine\symbol{246}}
- \expandafter\def\csname simpleicon@rayicon\endcsname {\simpleiconsmapnine\symbol{247}}
- \expandafter\def\csname simpleicon@raycasticon\endcsname {\simpleiconsmapnine\symbol{248}}
- \expandafter\def\csname simpleicon@raylibicon\endcsname {\simpleiconsmapnine\symbol{249}}
- \expandafter\def\csname simpleicon@razericon\endcsname {\simpleiconsmapnine\symbol{250}}
- \expandafter\def\csname simpleicon@razorpayicon\endcsname {\simpleiconsmapnine\symbol{251}}
- \expandafter\def\csname simpleicon@rcloneicon\endcsname {\simpleiconsmapnine\symbol{252}}
- \expandafter\def\csname simpleicon@reacticon\endcsname {\simpleiconsmapnine\symbol{253}}
- \expandafter\def\csname simpleicon@reactbootstrapicon\endcsname {\simpleiconsmapnine\symbol{254}}
- \expandafter\def\csname simpleicon@reacthookformicon\endcsname {\simpleiconsmapnine\symbol{255}}
- \expandafter\def\csname simpleicon@reactiveresumeicon\endcsname {\simpleiconsmaponezero\symbol{0}}
- \expandafter\def\csname simpleicon@reactivexicon\endcsname {\simpleiconsmaponezero\symbol{1}}
- \expandafter\def\csname simpleicon@reactosicon\endcsname {\simpleiconsmaponezero\symbol{2}}
- \expandafter\def\csname simpleicon@reactqueryicon\endcsname {\simpleiconsmaponezero\symbol{3}}
- \expandafter\def\csname simpleicon@reactroutericon\endcsname {\simpleiconsmaponezero\symbol{4}}
- \expandafter\def\csname simpleicon@reacttableicon\endcsname {\simpleiconsmaponezero\symbol{5}}
- \expandafter\def\csname simpleicon@readdotcvicon\endcsname {\simpleiconsmaponezero\symbol{6}}
- \expandafter\def\csname simpleicon@readmeicon\endcsname {\simpleiconsmaponezero\symbol{7}}
- \expandafter\def\csname simpleicon@readthedocsicon\endcsname {\simpleiconsmaponezero\symbol{8}}
- \expandafter\def\csname simpleicon@realmicon\endcsname {\simpleiconsmaponezero\symbol{9}}
- \expandafter\def\csname simpleicon@reasonicon\endcsname {\simpleiconsmaponezero\symbol{10}}
- \expandafter\def\csname simpleicon@reasonstudiosicon\endcsname {\simpleiconsmaponezero\symbol{11}}
- \expandafter\def\csname simpleicon@recoilicon\endcsname {\simpleiconsmaponezero\symbol{12}}
- \expandafter\def\csname simpleicon@redicon\endcsname {\simpleiconsmaponezero\symbol{13}}
- \expandafter\def\csname simpleicon@redashicon\endcsname {\simpleiconsmaponezero\symbol{14}}
- \expandafter\def\csname simpleicon@redbubbleicon\endcsname {\simpleiconsmaponezero\symbol{15}}
- \expandafter\def\csname simpleicon@redbullicon\endcsname {\simpleiconsmaponezero\symbol{16}}
- \expandafter\def\csname simpleicon@redditicon\endcsname {\simpleiconsmaponezero\symbol{17}}
- \expandafter\def\csname simpleicon@redhaticon\endcsname {\simpleiconsmaponezero\symbol{18}}
- \expandafter\def\csname simpleicon@redhatopenshifticon\endcsname {\simpleiconsmaponezero\symbol{19}}
- \expandafter\def\csname simpleicon@redisicon\endcsname {\simpleiconsmaponezero\symbol{20}}
- \expandafter\def\csname simpleicon@redmineicon\endcsname {\simpleiconsmaponezero\symbol{21}}
- \expandafter\def\csname simpleicon@redoxicon\endcsname {\simpleiconsmaponezero\symbol{22}}
- \expandafter\def\csname simpleicon@reduxicon\endcsname {\simpleiconsmaponezero\symbol{23}}
- \expandafter\def\csname simpleicon@reduxsagaicon\endcsname {\simpleiconsmaponezero\symbol{24}}
- \expandafter\def\csname simpleicon@redwoodjsicon\endcsname {\simpleiconsmaponezero\symbol{25}}
- \expandafter\def\csname simpleicon@reebokicon\endcsname {\simpleiconsmaponezero\symbol{26}}
- \expandafter\def\csname simpleicon@refineicon\endcsname {\simpleiconsmaponezero\symbol{27}}
- \expandafter\def\csname simpleicon@relayicon\endcsname {\simpleiconsmaponezero\symbol{28}}
- \expandafter\def\csname simpleicon@relianceindustrieslimitedicon\endcsname {\simpleiconsmaponezero\symbol{29}}
- \expandafter\def\csname simpleicon@remarkicon\endcsname {\simpleiconsmaponezero\symbol{30}}
- \expandafter\def\csname simpleicon@remedyentertainmenticon\endcsname {\simpleiconsmaponezero\symbol{31}}
- \expandafter\def\csname simpleicon@remixicon\endcsname {\simpleiconsmaponezero\symbol{32}}
- \expandafter\def\csname simpleicon@removedotbgicon\endcsname {\simpleiconsmaponezero\symbol{33}}
- \expandafter\def\csname simpleicon@renaulticon\endcsname {\simpleiconsmaponezero\symbol{34}}
- \expandafter\def\csname simpleicon@rendericon\endcsname {\simpleiconsmaponezero\symbol{35}}
- \expandafter\def\csname simpleicon@renovateboticon\endcsname {\simpleiconsmaponezero\symbol{36}}
- \expandafter\def\csname simpleicon@renpyicon\endcsname {\simpleiconsmaponezero\symbol{37}}
- \expandafter\def\csname simpleicon@renrenicon\endcsname {\simpleiconsmaponezero\symbol{38}}
- \expandafter\def\csname simpleicon@repliticon\endcsname {\simpleiconsmaponezero\symbol{39}}
- \expandafter\def\csname simpleicon@republicofgamersicon\endcsname {\simpleiconsmaponezero\symbol{40}}
- \expandafter\def\csname simpleicon@rescripticon\endcsname {\simpleiconsmaponezero\symbol{41}}
- \expandafter\def\csname simpleicon@rescuetimeicon\endcsname {\simpleiconsmaponezero\symbol{42}}
- \expandafter\def\csname simpleicon@researchgateicon\endcsname {\simpleiconsmaponezero\symbol{43}}
- \expandafter\def\csname simpleicon@resendicon\endcsname {\simpleiconsmaponezero\symbol{44}}
- \expandafter\def\csname simpleicon@resharpericon\endcsname {\simpleiconsmaponezero\symbol{45}}
- \expandafter\def\csname simpleicon@resurrectionremixosicon\endcsname {\simpleiconsmaponezero\symbol{46}}
- \expandafter\def\csname simpleicon@retoolicon\endcsname {\simpleiconsmaponezero\symbol{47}}
- \expandafter\def\csname simpleicon@retroarchicon\endcsname {\simpleiconsmaponezero\symbol{48}}
- \expandafter\def\csname simpleicon@retropieicon\endcsname {\simpleiconsmaponezero\symbol{49}}
- \expandafter\def\csname simpleicon@revancedicon\endcsname {\simpleiconsmaponezero\symbol{50}}
- \expandafter\def\csname simpleicon@revealdotjsicon\endcsname {\simpleiconsmaponezero\symbol{51}}
- \expandafter\def\csname simpleicon@reverbnationicon\endcsname {\simpleiconsmaponezero\symbol{52}}
- \expandafter\def\csname simpleicon@revoltdotchaticon\endcsname {\simpleiconsmaponezero\symbol{53}}
- \expandafter\def\csname simpleicon@revoluticon\endcsname {\simpleiconsmaponezero\symbol{54}}
- \expandafter\def\csname simpleicon@revueicon\endcsname {\simpleiconsmaponezero\symbol{55}}
- \expandafter\def\csname simpleicon@reweicon\endcsname {\simpleiconsmaponezero\symbol{56}}
- \expandafter\def\csname simpleicon@rezgoicon\endcsname {\simpleiconsmaponezero\symbol{57}}
- \expandafter\def\csname simpleicon@rhinocerosicon\endcsname {\simpleiconsmaponezero\symbol{58}}
- \expandafter\def\csname simpleicon@richicon\endcsname {\simpleiconsmaponezero\symbol{59}}
- \expandafter\def\csname simpleicon@ridericon\endcsname {\simpleiconsmaponezero\symbol{60}}
- \expandafter\def\csname simpleicon@rimacautomobiliicon\endcsname {\simpleiconsmaponezero\symbol{61}}
- \expandafter\def\csname simpleicon@rimeicon\endcsname {\simpleiconsmaponezero\symbol{62}}
- \expandafter\def\csname simpleicon@ringicon\endcsname {\simpleiconsmaponezero\symbol{63}}
- \expandafter\def\csname simpleicon@riotgamesicon\endcsname {\simpleiconsmaponezero\symbol{64}}
- \expandafter\def\csname simpleicon@rippleicon\endcsname {\simpleiconsmaponezero\symbol{65}}
- \expandafter\def\csname simpleicon@riscvicon\endcsname {\simpleiconsmaponezero\symbol{66}}
- \expandafter\def\csname simpleicon@riseupicon\endcsname {\simpleiconsmaponezero\symbol{67}}
- \expandafter\def\csname simpleicon@ritzcarltonicon\endcsname {\simpleiconsmaponezero\symbol{68}}
- \expandafter\def\csname simpleicon@riveicon\endcsname {\simpleiconsmaponezero\symbol{69}}
- \expandafter\def\csname simpleicon@roadmapdotshicon\endcsname {\simpleiconsmaponezero\symbol{70}}
- \expandafter\def\csname simpleicon@roamresearchicon\endcsname {\simpleiconsmaponezero\symbol{71}}
- \expandafter\def\csname simpleicon@robinhoodicon\endcsname {\simpleiconsmaponezero\symbol{72}}
- \expandafter\def\csname simpleicon@robloxicon\endcsname {\simpleiconsmaponezero\symbol{73}}
- \expandafter\def\csname simpleicon@robloxstudioicon\endcsname {\simpleiconsmaponezero\symbol{74}}
- \expandafter\def\csname simpleicon@robotframeworkicon\endcsname {\simpleiconsmaponezero\symbol{75}}
- \expandafter\def\csname simpleicon@rocketicon\endcsname {\simpleiconsmaponezero\symbol{76}}
- \expandafter\def\csname simpleicon@rocketdotchaticon\endcsname {\simpleiconsmaponezero\symbol{77}}
- \expandafter\def\csname simpleicon@rocksdbicon\endcsname {\simpleiconsmaponezero\symbol{78}}
- \expandafter\def\csname simpleicon@rockstargamesicon\endcsname {\simpleiconsmaponezero\symbol{79}}
- \expandafter\def\csname simpleicon@rockwellautomationicon\endcsname {\simpleiconsmaponezero\symbol{80}}
- \expandafter\def\csname simpleicon@rockylinuxicon\endcsname {\simpleiconsmaponezero\symbol{81}}
- \expandafter\def\csname simpleicon@rokuicon\endcsname {\simpleiconsmaponezero\symbol{82}}
- \expandafter\def\csname simpleicon@roll20icon\endcsname {\simpleiconsmaponezero\symbol{83}}
- \expandafter\def\csname simpleicon@rollsroyceicon\endcsname {\simpleiconsmaponezero\symbol{84}}
- \expandafter\def\csname simpleicon@rollupdotjsicon\endcsname {\simpleiconsmaponezero\symbol{85}}
- \expandafter\def\csname simpleicon@roonicon\endcsname {\simpleiconsmaponezero\symbol{86}}
- \expandafter\def\csname simpleicon@rootmeicon\endcsname {\simpleiconsmaponezero\symbol{87}}
- \expandafter\def\csname simpleicon@rootsicon\endcsname {\simpleiconsmaponezero\symbol{88}}
- \expandafter\def\csname simpleicon@rootsbedrockicon\endcsname {\simpleiconsmaponezero\symbol{89}}
- \expandafter\def\csname simpleicon@rootssageicon\endcsname {\simpleiconsmaponezero\symbol{90}}
- \expandafter\def\csname simpleicon@rosicon\endcsname {\simpleiconsmaponezero\symbol{91}}
- \expandafter\def\csname simpleicon@rossmannicon\endcsname {\simpleiconsmaponezero\symbol{92}}
- \expandafter\def\csname simpleicon@rotaryinternationalicon\endcsname {\simpleiconsmaponezero\symbol{93}}
- \expandafter\def\csname simpleicon@rottentomatoesicon\endcsname {\simpleiconsmaponezero\symbol{94}}
- \expandafter\def\csname simpleicon@roundcubeicon\endcsname {\simpleiconsmaponezero\symbol{95}}
- \expandafter\def\csname simpleicon@rsocketicon\endcsname {\simpleiconsmaponezero\symbol{96}}
- \expandafter\def\csname simpleicon@rssicon\endcsname {\simpleiconsmaponezero\symbol{97}}
- \expandafter\def\csname simpleicon@rstudioideicon\endcsname {\simpleiconsmaponezero\symbol{98}}
- \expandafter\def\csname simpleicon@rteicon\endcsname {\simpleiconsmaponezero\symbol{99}}
- \expandafter\def\csname simpleicon@rtlicon\endcsname {\simpleiconsmaponezero\symbol{100}}
- \expandafter\def\csname simpleicon@rtlzweiicon\endcsname {\simpleiconsmaponezero\symbol{101}}
- \expandafter\def\csname simpleicon@rtmicon\endcsname {\simpleiconsmaponezero\symbol{102}}
- \expandafter\def\csname simpleicon@rubocopicon\endcsname {\simpleiconsmaponezero\symbol{103}}
- \expandafter\def\csname simpleicon@rubyicon\endcsname {\simpleiconsmaponezero\symbol{104}}
- \expandafter\def\csname simpleicon@rubygemsicon\endcsname {\simpleiconsmaponezero\symbol{105}}
- \expandafter\def\csname simpleicon@rubymineicon\endcsname {\simpleiconsmaponezero\symbol{106}}
- \expandafter\def\csname simpleicon@rubyonrailsicon\endcsname {\simpleiconsmaponezero\symbol{107}}
- \expandafter\def\csname simpleicon@rubysinatraicon\endcsname {\simpleiconsmaponezero\symbol{108}}
- \expandafter\def\csname simpleicon@rufficon\endcsname {\simpleiconsmaponezero\symbol{109}}
- \expandafter\def\csname simpleicon@rumahwebicon\endcsname {\simpleiconsmaponezero\symbol{110}}
- \expandafter\def\csname simpleicon@rumbleicon\endcsname {\simpleiconsmaponezero\symbol{111}}
- \expandafter\def\csname simpleicon@rundeckicon\endcsname {\simpleiconsmaponezero\symbol{112}}
- \expandafter\def\csname simpleicon@runkeepericon\endcsname {\simpleiconsmaponezero\symbol{113}}
- \expandafter\def\csname simpleicon@runkiticon\endcsname {\simpleiconsmaponezero\symbol{114}}
- \expandafter\def\csname simpleicon@runrundotiticon\endcsname {\simpleiconsmaponezero\symbol{115}}
- \expandafter\def\csname simpleicon@rusticon\endcsname {\simpleiconsmaponezero\symbol{116}}
- \expandafter\def\csname simpleicon@rustdeskicon\endcsname {\simpleiconsmaponezero\symbol{117}}
- \expandafter\def\csname simpleicon@rxdbicon\endcsname {\simpleiconsmaponezero\symbol{118}}
- \expandafter\def\csname simpleicon@ryanairicon\endcsname {\simpleiconsmaponezero\symbol{119}}
- \expandafter\def\csname simpleicon@ryeicon\endcsname {\simpleiconsmaponezero\symbol{120}}
- \expandafter\def\csname simpleicon@s7airlinesicon\endcsname {\simpleiconsmaponezero\symbol{121}}
- \expandafter\def\csname simpleicon@sabanciicon\endcsname {\simpleiconsmaponezero\symbol{122}}
- \expandafter\def\csname simpleicon@safariicon\endcsname {\simpleiconsmaponezero\symbol{123}}
- \expandafter\def\csname simpleicon@sageicon\endcsname {\simpleiconsmaponezero\symbol{124}}
- \expandafter\def\csname simpleicon@sahibindenicon\endcsname {\simpleiconsmaponezero\symbol{125}}
- \expandafter\def\csname simpleicon@sailfishosicon\endcsname {\simpleiconsmaponezero\symbol{126}}
- \expandafter\def\csname simpleicon@sailsdotjsicon\endcsname {\simpleiconsmaponezero\symbol{127}}
- \expandafter\def\csname simpleicon@salesforceicon\endcsname {\simpleiconsmaponezero\symbol{128}}
- \expandafter\def\csname simpleicon@sallaicon\endcsname {\simpleiconsmaponezero\symbol{129}}
- \expandafter\def\csname simpleicon@saltprojecticon\endcsname {\simpleiconsmaponezero\symbol{130}}
- \expandafter\def\csname simpleicon@samsclubicon\endcsname {\simpleiconsmaponezero\symbol{131}}
- \expandafter\def\csname simpleicon@samsungicon\endcsname {\simpleiconsmaponezero\symbol{132}}
- \expandafter\def\csname simpleicon@samsungpayicon\endcsname {\simpleiconsmaponezero\symbol{133}}
- \expandafter\def\csname simpleicon@sandiskicon\endcsname {\simpleiconsmaponezero\symbol{134}}
- \expandafter\def\csname simpleicon@sanfranciscomunicipalrailwayicon\endcsname {\simpleiconsmaponezero\symbol{135}}
- \expandafter\def\csname simpleicon@sanicicon\endcsname {\simpleiconsmaponezero\symbol{136}}
- \expandafter\def\csname simpleicon@sanityicon\endcsname {\simpleiconsmaponezero\symbol{137}}
- \expandafter\def\csname simpleicon@saopaulometroicon\endcsname {\simpleiconsmaponezero\symbol{138}}
- \expandafter\def\csname simpleicon@sapicon\endcsname {\simpleiconsmaponezero\symbol{139}}
- \expandafter\def\csname simpleicon@sartoriusicon\endcsname {\simpleiconsmaponezero\symbol{140}}
- \expandafter\def\csname simpleicon@sassicon\endcsname {\simpleiconsmaponezero\symbol{141}}
- \expandafter\def\csname simpleicon@sat1icon\endcsname {\simpleiconsmaponezero\symbol{142}}
- \expandafter\def\csname simpleicon@satelliteicon\endcsname {\simpleiconsmaponezero\symbol{143}}
- \expandafter\def\csname simpleicon@saturnicon\endcsname {\simpleiconsmaponezero\symbol{144}}
- \expandafter\def\csname simpleicon@saucelabsicon\endcsname {\simpleiconsmaponezero\symbol{145}}
- \expandafter\def\csname simpleicon@saudiaicon\endcsname {\simpleiconsmaponezero\symbol{146}}
- \expandafter\def\csname simpleicon@scalaicon\endcsname {\simpleiconsmaponezero\symbol{147}}
- \expandafter\def\csname simpleicon@scalewayicon\endcsname {\simpleiconsmaponezero\symbol{148}}
- \expandafter\def\csname simpleicon@scaniaicon\endcsname {\simpleiconsmaponezero\symbol{149}}
- \expandafter\def\csname simpleicon@schneiderelectricicon\endcsname {\simpleiconsmaponezero\symbol{150}}
- \expandafter\def\csname simpleicon@scikitlearnicon\endcsname {\simpleiconsmaponezero\symbol{151}}
- \expandafter\def\csname simpleicon@scilabicon\endcsname {\simpleiconsmaponezero\symbol{152}}
- \expandafter\def\csname simpleicon@scipyicon\endcsname {\simpleiconsmaponezero\symbol{153}}
- \expandafter\def\csname simpleicon@scopusicon\endcsname {\simpleiconsmaponezero\symbol{154}}
- \expandafter\def\csname simpleicon@scpfoundationicon\endcsname {\simpleiconsmaponezero\symbol{155}}
- \expandafter\def\csname simpleicon@scrapboxicon\endcsname {\simpleiconsmaponezero\symbol{156}}
- \expandafter\def\csname simpleicon@scrapyicon\endcsname {\simpleiconsmaponezero\symbol{157}}
- \expandafter\def\csname simpleicon@scratchicon\endcsname {\simpleiconsmaponezero\symbol{158}}
- \expandafter\def\csname simpleicon@screencastifyicon\endcsname {\simpleiconsmaponezero\symbol{159}}
- \expandafter\def\csname simpleicon@scribdicon\endcsname {\simpleiconsmaponezero\symbol{160}}
- \expandafter\def\csname simpleicon@scrimbaicon\endcsname {\simpleiconsmaponezero\symbol{161}}
- \expandafter\def\csname simpleicon@scrollrevealicon\endcsname {\simpleiconsmaponezero\symbol{162}}
- \expandafter\def\csname simpleicon@scrumallianceicon\endcsname {\simpleiconsmaponezero\symbol{163}}
- \expandafter\def\csname simpleicon@scrutinizerciicon\endcsname {\simpleiconsmaponezero\symbol{164}}
- \expandafter\def\csname simpleicon@scylladbicon\endcsname {\simpleiconsmaponezero\symbol{165}}
- \expandafter\def\csname simpleicon@seagateicon\endcsname {\simpleiconsmaponezero\symbol{166}}
- \expandafter\def\csname simpleicon@searxngicon\endcsname {\simpleiconsmaponezero\symbol{167}}
- \expandafter\def\csname simpleicon@seaticon\endcsname {\simpleiconsmaponezero\symbol{168}}
- \expandafter\def\csname simpleicon@seatgeekicon\endcsname {\simpleiconsmaponezero\symbol{169}}
- \expandafter\def\csname simpleicon@securityscorecardicon\endcsname {\simpleiconsmaponezero\symbol{170}}
- \expandafter\def\csname simpleicon@sefariaicon\endcsname {\simpleiconsmaponezero\symbol{171}}
- \expandafter\def\csname simpleicon@segaicon\endcsname {\simpleiconsmaponezero\symbol{172}}
- \expandafter\def\csname simpleicon@seleniumicon\endcsname {\simpleiconsmaponezero\symbol{173}}
- \expandafter\def\csname simpleicon@sellfyicon\endcsname {\simpleiconsmaponezero\symbol{174}}
- \expandafter\def\csname simpleicon@semanticreleaseicon\endcsname {\simpleiconsmaponezero\symbol{175}}
- \expandafter\def\csname simpleicon@semanticscholaricon\endcsname {\simpleiconsmaponezero\symbol{176}}
- \expandafter\def\csname simpleicon@semanticuiicon\endcsname {\simpleiconsmaponezero\symbol{177}}
- \expandafter\def\csname simpleicon@semanticuireacticon\endcsname {\simpleiconsmaponezero\symbol{178}}
- \expandafter\def\csname simpleicon@semanticwebicon\endcsname {\simpleiconsmaponezero\symbol{179}}
- \expandafter\def\csname simpleicon@semaphoreciicon\endcsname {\simpleiconsmaponezero\symbol{180}}
- \expandafter\def\csname simpleicon@semrushicon\endcsname {\simpleiconsmaponezero\symbol{181}}
- \expandafter\def\csname simpleicon@semvericon\endcsname {\simpleiconsmaponezero\symbol{182}}
- \expandafter\def\csname simpleicon@senchaicon\endcsname {\simpleiconsmaponezero\symbol{183}}
- \expandafter\def\csname simpleicon@sennheisericon\endcsname {\simpleiconsmaponezero\symbol{184}}
- \expandafter\def\csname simpleicon@sensuicon\endcsname {\simpleiconsmaponezero\symbol{185}}
- \expandafter\def\csname simpleicon@sentryicon\endcsname {\simpleiconsmaponezero\symbol{186}}
- \expandafter\def\csname simpleicon@sepaicon\endcsname {\simpleiconsmaponezero\symbol{187}}
- \expandafter\def\csname simpleicon@sequelizeicon\endcsname {\simpleiconsmaponezero\symbol{188}}
- \expandafter\def\csname simpleicon@serverfaulticon\endcsname {\simpleiconsmaponezero\symbol{189}}
- \expandafter\def\csname simpleicon@serverlessicon\endcsname {\simpleiconsmaponezero\symbol{190}}
- \expandafter\def\csname simpleicon@sessionicon\endcsname {\simpleiconsmaponezero\symbol{191}}
- \expandafter\def\csname simpleicon@sessionizeicon\endcsname {\simpleiconsmaponezero\symbol{192}}
- \expandafter\def\csname simpleicon@setappicon\endcsname {\simpleiconsmaponezero\symbol{193}}
- \expandafter\def\csname simpleicon@sfmlicon\endcsname {\simpleiconsmaponezero\symbol{194}}
- \expandafter\def\csname simpleicon@shadcnuiicon\endcsname {\simpleiconsmaponezero\symbol{195}}
- \expandafter\def\csname simpleicon@shadowicon\endcsname {\simpleiconsmaponezero\symbol{196}}
- \expandafter\def\csname simpleicon@shanghaimetroicon\endcsname {\simpleiconsmaponezero\symbol{197}}
- \expandafter\def\csname simpleicon@sharexicon\endcsname {\simpleiconsmaponezero\symbol{198}}
- \expandafter\def\csname simpleicon@sharpicon\endcsname {\simpleiconsmaponezero\symbol{199}}
- \expandafter\def\csname simpleicon@shazamicon\endcsname {\simpleiconsmaponezero\symbol{200}}
- \expandafter\def\csname simpleicon@shellicon\endcsname {\simpleiconsmaponezero\symbol{201}}
- \expandafter\def\csname simpleicon@shellyicon\endcsname {\simpleiconsmaponezero\symbol{202}}
- \expandafter\def\csname simpleicon@shenzhenmetroicon\endcsname {\simpleiconsmaponezero\symbol{203}}
- \expandafter\def\csname simpleicon@shieldsdotioicon\endcsname {\simpleiconsmaponezero\symbol{204}}
- \expandafter\def\csname simpleicon@shikimoriicon\endcsname {\simpleiconsmaponezero\symbol{205}}
- \expandafter\def\csname simpleicon@shopeeicon\endcsname {\simpleiconsmaponezero\symbol{206}}
- \expandafter\def\csname simpleicon@shopifyicon\endcsname {\simpleiconsmaponezero\symbol{207}}
- \expandafter\def\csname simpleicon@shopwareicon\endcsname {\simpleiconsmaponezero\symbol{208}}
- \expandafter\def\csname simpleicon@shortcuticon\endcsname {\simpleiconsmaponezero\symbol{209}}
- \expandafter\def\csname simpleicon@showpadicon\endcsname {\simpleiconsmaponezero\symbol{210}}
- \expandafter\def\csname simpleicon@showtimeicon\endcsname {\simpleiconsmaponezero\symbol{211}}
- \expandafter\def\csname simpleicon@showwcaseicon\endcsname {\simpleiconsmaponezero\symbol{212}}
- \expandafter\def\csname simpleicon@shutterstockicon\endcsname {\simpleiconsmaponezero\symbol{213}}
- \expandafter\def\csname simpleicon@sidekiqicon\endcsname {\simpleiconsmaponezero\symbol{214}}
- \expandafter\def\csname simpleicon@sidequesticon\endcsname {\simpleiconsmaponezero\symbol{215}}
- \expandafter\def\csname simpleicon@siemensicon\endcsname {\simpleiconsmaponezero\symbol{216}}
- \expandafter\def\csname simpleicon@sifiveicon\endcsname {\simpleiconsmaponezero\symbol{217}}
- \expandafter\def\csname simpleicon@signalicon\endcsname {\simpleiconsmaponezero\symbol{218}}
- \expandafter\def\csname simpleicon@similarwebicon\endcsname {\simpleiconsmaponezero\symbol{219}}
- \expandafter\def\csname simpleicon@simklicon\endcsname {\simpleiconsmaponezero\symbol{220}}
- \expandafter\def\csname simpleicon@simpleanalyticsicon\endcsname {\simpleiconsmaponezero\symbol{221}}
- \expandafter\def\csname simpleicon@simpleiconsicon\endcsname {\simpleiconsmaponezero\symbol{222}}
- \expandafter\def\csname simpleicon@simpleloginicon\endcsname {\simpleiconsmaponezero\symbol{223}}
- \expandafter\def\csname simpleicon@simplenoteicon\endcsname {\simpleiconsmaponezero\symbol{224}}
- \expandafter\def\csname simpleicon@sinaweiboicon\endcsname {\simpleiconsmaponezero\symbol{225}}
- \expandafter\def\csname simpleicon@singaporeairlinesicon\endcsname {\simpleiconsmaponezero\symbol{226}}
- \expandafter\def\csname simpleicon@singlestoreicon\endcsname {\simpleiconsmaponezero\symbol{227}}
- \expandafter\def\csname simpleicon@sitecoreicon\endcsname {\simpleiconsmaponezero\symbol{228}}
- \expandafter\def\csname simpleicon@sitepointicon\endcsname {\simpleiconsmaponezero\symbol{229}}
- \expandafter\def\csname simpleicon@siyuanicon\endcsname {\simpleiconsmaponezero\symbol{230}}
- \expandafter\def\csname simpleicon@skaffoldicon\endcsname {\simpleiconsmaponezero\symbol{231}}
- \expandafter\def\csname simpleicon@sketchicon\endcsname {\simpleiconsmaponezero\symbol{232}}
- \expandafter\def\csname simpleicon@sketchfabicon\endcsname {\simpleiconsmaponezero\symbol{233}}
- \expandafter\def\csname simpleicon@sketchupicon\endcsname {\simpleiconsmaponezero\symbol{234}}
- \expandafter\def\csname simpleicon@skillshareicon\endcsname {\simpleiconsmaponezero\symbol{235}}
- \expandafter\def\csname simpleicon@skodaicon\endcsname {\simpleiconsmaponezero\symbol{236}}
- \expandafter\def\csname simpleicon@skyicon\endcsname {\simpleiconsmaponezero\symbol{237}}
- \expandafter\def\csname simpleicon@skypackicon\endcsname {\simpleiconsmaponezero\symbol{238}}
- \expandafter\def\csname simpleicon@skypeicon\endcsname {\simpleiconsmaponezero\symbol{239}}
- \expandafter\def\csname simpleicon@skypeforbusinessicon\endcsname {\simpleiconsmaponezero\symbol{240}}
- \expandafter\def\csname simpleicon@skyrockicon\endcsname {\simpleiconsmaponezero\symbol{241}}
- \expandafter\def\csname simpleicon@slackicon\endcsname {\simpleiconsmaponezero\symbol{242}}
- \expandafter\def\csname simpleicon@slackwareicon\endcsname {\simpleiconsmaponezero\symbol{243}}
- \expandafter\def\csname simpleicon@slashdoticon\endcsname {\simpleiconsmaponezero\symbol{244}}
- \expandafter\def\csname simpleicon@slickpicicon\endcsname {\simpleiconsmaponezero\symbol{245}}
- \expandafter\def\csname simpleicon@slidesicon\endcsname {\simpleiconsmaponezero\symbol{246}}
- \expandafter\def\csname simpleicon@slideshareicon\endcsname {\simpleiconsmaponezero\symbol{247}}
- \expandafter\def\csname simpleicon@slinticon\endcsname {\simpleiconsmaponezero\symbol{248}}
- \expandafter\def\csname simpleicon@smarticon\endcsname {\simpleiconsmaponezero\symbol{249}}
- \expandafter\def\csname simpleicon@smartthingsicon\endcsname {\simpleiconsmaponezero\symbol{250}}
- \expandafter\def\csname simpleicon@smashdotggicon\endcsname {\simpleiconsmaponezero\symbol{251}}
- \expandafter\def\csname simpleicon@smashingmagazineicon\endcsname {\simpleiconsmaponezero\symbol{252}}
- \expandafter\def\csname simpleicon@smrticon\endcsname {\simpleiconsmaponezero\symbol{253}}
- \expandafter\def\csname simpleicon@smugmugicon\endcsname {\simpleiconsmaponezero\symbol{254}}
- \expandafter\def\csname simpleicon@snapchaticon\endcsname {\simpleiconsmaponezero\symbol{255}}
- \expandafter\def\csname simpleicon@snapcrafticon\endcsname {\simpleiconsmaponeone\symbol{0}}
- \expandafter\def\csname simpleicon@sncficon\endcsname {\simpleiconsmaponeone\symbol{1}}
- \expandafter\def\csname simpleicon@snorticon\endcsname {\simpleiconsmaponeone\symbol{2}}
- \expandafter\def\csname simpleicon@snowflakeicon\endcsname {\simpleiconsmaponeone\symbol{3}}
- \expandafter\def\csname simpleicon@snowpackicon\endcsname {\simpleiconsmaponeone\symbol{4}}
- \expandafter\def\csname simpleicon@snykicon\endcsname {\simpleiconsmaponeone\symbol{5}}
- \expandafter\def\csname simpleicon@socialbladeicon\endcsname {\simpleiconsmaponeone\symbol{6}}
- \expandafter\def\csname simpleicon@society6icon\endcsname {\simpleiconsmaponeone\symbol{7}}
- \expandafter\def\csname simpleicon@socketdotioicon\endcsname {\simpleiconsmaponeone\symbol{8}}
- \expandafter\def\csname simpleicon@softpediaicon\endcsname {\simpleiconsmaponeone\symbol{9}}
- \expandafter\def\csname simpleicon@sogouicon\endcsname {\simpleiconsmaponeone\symbol{10}}
- \expandafter\def\csname simpleicon@solanaicon\endcsname {\simpleiconsmaponeone\symbol{11}}
- \expandafter\def\csname simpleicon@solidicon\endcsname {\simpleiconsmaponeone\symbol{12}}
- \expandafter\def\csname simpleicon@solidityicon\endcsname {\simpleiconsmaponeone\symbol{13}}
- \expandafter\def\csname simpleicon@sololearnicon\endcsname {\simpleiconsmaponeone\symbol{14}}
- \expandafter\def\csname simpleicon@solusicon\endcsname {\simpleiconsmaponeone\symbol{15}}
- \expandafter\def\csname simpleicon@sonaricon\endcsname {\simpleiconsmaponeone\symbol{16}}
- \expandafter\def\csname simpleicon@sonarcloudicon\endcsname {\simpleiconsmaponeone\symbol{17}}
- \expandafter\def\csname simpleicon@sonarlinticon\endcsname {\simpleiconsmaponeone\symbol{18}}
- \expandafter\def\csname simpleicon@sonarqubeicon\endcsname {\simpleiconsmaponeone\symbol{19}}
- \expandafter\def\csname simpleicon@sonarricon\endcsname {\simpleiconsmaponeone\symbol{20}}
- \expandafter\def\csname simpleicon@sonatypeicon\endcsname {\simpleiconsmaponeone\symbol{21}}
- \expandafter\def\csname simpleicon@songkickicon\endcsname {\simpleiconsmaponeone\symbol{22}}
- \expandafter\def\csname simpleicon@songodaicon\endcsname {\simpleiconsmaponeone\symbol{23}}
- \expandafter\def\csname simpleicon@sonicwallicon\endcsname {\simpleiconsmaponeone\symbol{24}}
- \expandafter\def\csname simpleicon@sonosicon\endcsname {\simpleiconsmaponeone\symbol{25}}
- \expandafter\def\csname simpleicon@sonyicon\endcsname {\simpleiconsmaponeone\symbol{26}}
- \expandafter\def\csname simpleicon@sorianaicon\endcsname {\simpleiconsmaponeone\symbol{27}}
- \expandafter\def\csname simpleicon@soundchartsicon\endcsname {\simpleiconsmaponeone\symbol{28}}
- \expandafter\def\csname simpleicon@soundcloudicon\endcsname {\simpleiconsmaponeone\symbol{29}}
- \expandafter\def\csname simpleicon@sourceengineicon\endcsname {\simpleiconsmaponeone\symbol{30}}
- \expandafter\def\csname simpleicon@sourceforgeicon\endcsname {\simpleiconsmaponeone\symbol{31}}
- \expandafter\def\csname simpleicon@sourcehuticon\endcsname {\simpleiconsmaponeone\symbol{32}}
- \expandafter\def\csname simpleicon@sourcetreeicon\endcsname {\simpleiconsmaponeone\symbol{33}}
- \expandafter\def\csname simpleicon@southwestairlinesicon\endcsname {\simpleiconsmaponeone\symbol{34}}
- \expandafter\def\csname simpleicon@spacemacsicon\endcsname {\simpleiconsmaponeone\symbol{35}}
- \expandafter\def\csname simpleicon@spaceshipicon\endcsname {\simpleiconsmaponeone\symbol{36}}
- \expandafter\def\csname simpleicon@spacexicon\endcsname {\simpleiconsmaponeone\symbol{37}}
- \expandafter\def\csname simpleicon@spacyicon\endcsname {\simpleiconsmaponeone\symbol{38}}
- \expandafter\def\csname simpleicon@sparkaricon\endcsname {\simpleiconsmaponeone\symbol{39}}
- \expandafter\def\csname simpleicon@sparkasseicon\endcsname {\simpleiconsmaponeone\symbol{40}}
- \expandafter\def\csname simpleicon@sparkfunicon\endcsname {\simpleiconsmaponeone\symbol{41}}
- \expandafter\def\csname simpleicon@sparkposticon\endcsname {\simpleiconsmaponeone\symbol{42}}
- \expandafter\def\csname simpleicon@spdxicon\endcsname {\simpleiconsmaponeone\symbol{43}}
- \expandafter\def\csname simpleicon@speakerdeckicon\endcsname {\simpleiconsmaponeone\symbol{44}}
- \expandafter\def\csname simpleicon@spectrumicon\endcsname {\simpleiconsmaponeone\symbol{45}}
- \expandafter\def\csname simpleicon@speedtesticon\endcsname {\simpleiconsmaponeone\symbol{46}}
- \expandafter\def\csname simpleicon@speedypageicon\endcsname {\simpleiconsmaponeone\symbol{47}}
- \expandafter\def\csname simpleicon@sphinxicon\endcsname {\simpleiconsmaponeone\symbol{48}}
- \expandafter\def\csname simpleicon@spigotmcicon\endcsname {\simpleiconsmaponeone\symbol{49}}
- \expandafter\def\csname simpleicon@spineicon\endcsname {\simpleiconsmaponeone\symbol{50}}
- \expandafter\def\csname simpleicon@spinnakericon\endcsname {\simpleiconsmaponeone\symbol{51}}
- \expandafter\def\csname simpleicon@spinrillaicon\endcsname {\simpleiconsmaponeone\symbol{52}}
- \expandafter\def\csname simpleicon@splunkicon\endcsname {\simpleiconsmaponeone\symbol{53}}
- \expandafter\def\csname simpleicon@spojicon\endcsname {\simpleiconsmaponeone\symbol{54}}
- \expandafter\def\csname simpleicon@spondicon\endcsname {\simpleiconsmaponeone\symbol{55}}
- \expandafter\def\csname simpleicon@spotifyicon\endcsname {\simpleiconsmaponeone\symbol{56}}
- \expandafter\def\csname simpleicon@spotlighticon\endcsname {\simpleiconsmaponeone\symbol{57}}
- \expandafter\def\csname simpleicon@spreadshirticon\endcsname {\simpleiconsmaponeone\symbol{58}}
- \expandafter\def\csname simpleicon@spreakericon\endcsname {\simpleiconsmaponeone\symbol{59}}
- \expandafter\def\csname simpleicon@springicon\endcsname {\simpleiconsmaponeone\symbol{60}}
- \expandafter\def\csname simpleicon@springcreatorsicon\endcsname {\simpleiconsmaponeone\symbol{61}}
- \expandafter\def\csname simpleicon@springbooticon\endcsname {\simpleiconsmaponeone\symbol{62}}
- \expandafter\def\csname simpleicon@springsecurityicon\endcsname {\simpleiconsmaponeone\symbol{63}}
- \expandafter\def\csname simpleicon@spyderideicon\endcsname {\simpleiconsmaponeone\symbol{64}}
- \expandafter\def\csname simpleicon@sqlalchemyicon\endcsname {\simpleiconsmaponeone\symbol{65}}
- \expandafter\def\csname simpleicon@sqliteicon\endcsname {\simpleiconsmaponeone\symbol{66}}
- \expandafter\def\csname simpleicon@squareicon\endcsname {\simpleiconsmaponeone\symbol{67}}
- \expandafter\def\csname simpleicon@squareenixicon\endcsname {\simpleiconsmaponeone\symbol{68}}
- \expandafter\def\csname simpleicon@squarespaceicon\endcsname {\simpleiconsmaponeone\symbol{69}}
- \expandafter\def\csname simpleicon@srgssricon\endcsname {\simpleiconsmaponeone\symbol{70}}
- \expandafter\def\csname simpleicon@ssrnicon\endcsname {\simpleiconsmaponeone\symbol{71}}
- \expandafter\def\csname simpleicon@ssticon\endcsname {\simpleiconsmaponeone\symbol{72}}
- \expandafter\def\csname simpleicon@stackbiticon\endcsname {\simpleiconsmaponeone\symbol{73}}
- \expandafter\def\csname simpleicon@stackblitzicon\endcsname {\simpleiconsmaponeone\symbol{74}}
- \expandafter\def\csname simpleicon@stackediticon\endcsname {\simpleiconsmaponeone\symbol{75}}
- \expandafter\def\csname simpleicon@stackexchangeicon\endcsname {\simpleiconsmaponeone\symbol{76}}
- \expandafter\def\csname simpleicon@stackhawkicon\endcsname {\simpleiconsmaponeone\symbol{77}}
- \expandafter\def\csname simpleicon@stackoverflowicon\endcsname {\simpleiconsmaponeone\symbol{78}}
- \expandafter\def\csname simpleicon@stackpathicon\endcsname {\simpleiconsmaponeone\symbol{79}}
- \expandafter\def\csname simpleicon@stackshareicon\endcsname {\simpleiconsmaponeone\symbol{80}}
- \expandafter\def\csname simpleicon@stadiaicon\endcsname {\simpleiconsmaponeone\symbol{81}}
- \expandafter\def\csname simpleicon@staffbaseicon\endcsname {\simpleiconsmaponeone\symbol{82}}
- \expandafter\def\csname simpleicon@stagetimericon\endcsname {\simpleiconsmaponeone\symbol{83}}
- \expandafter\def\csname simpleicon@standardjsicon\endcsname {\simpleiconsmaponeone\symbol{84}}
- \expandafter\def\csname simpleicon@standardresumeicon\endcsname {\simpleiconsmaponeone\symbol{85}}
- \expandafter\def\csname simpleicon@starbucksicon\endcsname {\simpleiconsmaponeone\symbol{86}}
- \expandafter\def\csname simpleicon@stardockicon\endcsname {\simpleiconsmaponeone\symbol{87}}
- \expandafter\def\csname simpleicon@starlingbankicon\endcsname {\simpleiconsmaponeone\symbol{88}}
- \expandafter\def\csname simpleicon@starshipicon\endcsname {\simpleiconsmaponeone\symbol{89}}
- \expandafter\def\csname simpleicon@startrekicon\endcsname {\simpleiconsmaponeone\symbol{90}}
- \expandafter\def\csname simpleicon@starzicon\endcsname {\simpleiconsmaponeone\symbol{91}}
- \expandafter\def\csname simpleicon@statamicicon\endcsname {\simpleiconsmaponeone\symbol{92}}
- \expandafter\def\csname simpleicon@statistaicon\endcsname {\simpleiconsmaponeone\symbol{93}}
- \expandafter\def\csname simpleicon@statuspageicon\endcsname {\simpleiconsmaponeone\symbol{94}}
- \expandafter\def\csname simpleicon@statuspalicon\endcsname {\simpleiconsmaponeone\symbol{95}}
- \expandafter\def\csname simpleicon@steamicon\endcsname {\simpleiconsmaponeone\symbol{96}}
- \expandafter\def\csname simpleicon@steamdbicon\endcsname {\simpleiconsmaponeone\symbol{97}}
- \expandafter\def\csname simpleicon@steamdeckicon\endcsname {\simpleiconsmaponeone\symbol{98}}
- \expandafter\def\csname simpleicon@steamworksicon\endcsname {\simpleiconsmaponeone\symbol{99}}
- \expandafter\def\csname simpleicon@steelseriesicon\endcsname {\simpleiconsmaponeone\symbol{100}}
- \expandafter\def\csname simpleicon@steemicon\endcsname {\simpleiconsmaponeone\symbol{101}}
- \expandafter\def\csname simpleicon@steemiticon\endcsname {\simpleiconsmaponeone\symbol{102}}
- \expandafter\def\csname simpleicon@steinbergicon\endcsname {\simpleiconsmaponeone\symbol{103}}
- \expandafter\def\csname simpleicon@stellaricon\endcsname {\simpleiconsmaponeone\symbol{104}}
- \expandafter\def\csname simpleicon@stencilicon\endcsname {\simpleiconsmaponeone\symbol{105}}
- \expandafter\def\csname simpleicon@stencylicon\endcsname {\simpleiconsmaponeone\symbol{106}}
- \expandafter\def\csname simpleicon@stimulusicon\endcsname {\simpleiconsmaponeone\symbol{107}}
- \expandafter\def\csname simpleicon@stitchericon\endcsname {\simpleiconsmaponeone\symbol{108}}
- \expandafter\def\csname simpleicon@stmicroelectronicsicon\endcsname {\simpleiconsmaponeone\symbol{109}}
- \expandafter\def\csname simpleicon@stockxicon\endcsname {\simpleiconsmaponeone\symbol{110}}
- \expandafter\def\csname simpleicon@stopstalkicon\endcsname {\simpleiconsmaponeone\symbol{111}}
- \expandafter\def\csname simpleicon@storyblokicon\endcsname {\simpleiconsmaponeone\symbol{112}}
- \expandafter\def\csname simpleicon@storybookicon\endcsname {\simpleiconsmaponeone\symbol{113}}
- \expandafter\def\csname simpleicon@strapiicon\endcsname {\simpleiconsmaponeone\symbol{114}}
- \expandafter\def\csname simpleicon@stravaicon\endcsname {\simpleiconsmaponeone\symbol{115}}
- \expandafter\def\csname simpleicon@streamlabsicon\endcsname {\simpleiconsmaponeone\symbol{116}}
- \expandafter\def\csname simpleicon@streamliticon\endcsname {\simpleiconsmaponeone\symbol{117}}
- \expandafter\def\csname simpleicon@streamrunnersicon\endcsname {\simpleiconsmaponeone\symbol{118}}
- \expandafter\def\csname simpleicon@stripeicon\endcsname {\simpleiconsmaponeone\symbol{119}}
- \expandafter\def\csname simpleicon@strongswanicon\endcsname {\simpleiconsmaponeone\symbol{120}}
- \expandafter\def\csname simpleicon@strykericon\endcsname {\simpleiconsmaponeone\symbol{121}}
- \expandafter\def\csname simpleicon@stubhubicon\endcsname {\simpleiconsmaponeone\symbol{122}}
- \expandafter\def\csname simpleicon@studio3ticon\endcsname {\simpleiconsmaponeone\symbol{123}}
- \expandafter\def\csname simpleicon@studyverseicon\endcsname {\simpleiconsmaponeone\symbol{124}}
- \expandafter\def\csname simpleicon@styledcomponentsicon\endcsname {\simpleiconsmaponeone\symbol{125}}
- \expandafter\def\csname simpleicon@stylelinticon\endcsname {\simpleiconsmaponeone\symbol{126}}
- \expandafter\def\csname simpleicon@styleshareicon\endcsname {\simpleiconsmaponeone\symbol{127}}
- \expandafter\def\csname simpleicon@stylusicon\endcsname {\simpleiconsmaponeone\symbol{128}}
- \expandafter\def\csname simpleicon@subaruicon\endcsname {\simpleiconsmaponeone\symbol{129}}
- \expandafter\def\csname simpleicon@sublimetexticon\endcsname {\simpleiconsmaponeone\symbol{130}}
- \expandafter\def\csname simpleicon@substackicon\endcsname {\simpleiconsmaponeone\symbol{131}}
- \expandafter\def\csname simpleicon@subtitleediticon\endcsname {\simpleiconsmaponeone\symbol{132}}
- \expandafter\def\csname simpleicon@subversionicon\endcsname {\simpleiconsmaponeone\symbol{133}}
- \expandafter\def\csname simpleicon@sucklessicon\endcsname {\simpleiconsmaponeone\symbol{134}}
- \expandafter\def\csname simpleicon@sumologicicon\endcsname {\simpleiconsmaponeone\symbol{135}}
- \expandafter\def\csname simpleicon@sunoicon\endcsname {\simpleiconsmaponeone\symbol{136}}
- \expandafter\def\csname simpleicon@sunriseicon\endcsname {\simpleiconsmaponeone\symbol{137}}
- \expandafter\def\csname simpleicon@supabaseicon\endcsname {\simpleiconsmaponeone\symbol{138}}
- \expandafter\def\csname simpleicon@supercreaseicon\endcsname {\simpleiconsmaponeone\symbol{139}}
- \expandafter\def\csname simpleicon@supermicroicon\endcsname {\simpleiconsmaponeone\symbol{140}}
- \expandafter\def\csname simpleicon@superusericon\endcsname {\simpleiconsmaponeone\symbol{141}}
- \expandafter\def\csname simpleicon@surrealdbicon\endcsname {\simpleiconsmaponeone\symbol{142}}
- \expandafter\def\csname simpleicon@surveymonkeyicon\endcsname {\simpleiconsmaponeone\symbol{143}}
- \expandafter\def\csname simpleicon@suseicon\endcsname {\simpleiconsmaponeone\symbol{144}}
- \expandafter\def\csname simpleicon@suzukiicon\endcsname {\simpleiconsmaponeone\symbol{145}}
- \expandafter\def\csname simpleicon@svelteicon\endcsname {\simpleiconsmaponeone\symbol{146}}
- \expandafter\def\csname simpleicon@svgicon\endcsname {\simpleiconsmaponeone\symbol{147}}
- \expandafter\def\csname simpleicon@svgdotjsicon\endcsname {\simpleiconsmaponeone\symbol{148}}
- \expandafter\def\csname simpleicon@svgoicon\endcsname {\simpleiconsmaponeone\symbol{149}}
- \expandafter\def\csname simpleicon@swaggericon\endcsname {\simpleiconsmaponeone\symbol{150}}
- \expandafter\def\csname simpleicon@swarmicon\endcsname {\simpleiconsmaponeone\symbol{151}}
- \expandafter\def\csname simpleicon@swcicon\endcsname {\simpleiconsmaponeone\symbol{152}}
- \expandafter\def\csname simpleicon@swifticon\endcsname {\simpleiconsmaponeone\symbol{153}}
- \expandafter\def\csname simpleicon@swiggyicon\endcsname {\simpleiconsmaponeone\symbol{154}}
- \expandafter\def\csname simpleicon@swipericon\endcsname {\simpleiconsmaponeone\symbol{155}}
- \expandafter\def\csname simpleicon@swricon\endcsname {\simpleiconsmaponeone\symbol{156}}
- \expandafter\def\csname simpleicon@symantecicon\endcsname {\simpleiconsmaponeone\symbol{157}}
- \expandafter\def\csname simpleicon@symbolabicon\endcsname {\simpleiconsmaponeone\symbol{158}}
- \expandafter\def\csname simpleicon@symfonyicon\endcsname {\simpleiconsmaponeone\symbol{159}}
- \expandafter\def\csname simpleicon@symphonyicon\endcsname {\simpleiconsmaponeone\symbol{160}}
- \expandafter\def\csname simpleicon@sympyicon\endcsname {\simpleiconsmaponeone\symbol{161}}
- \expandafter\def\csname simpleicon@syncthingicon\endcsname {\simpleiconsmaponeone\symbol{162}}
- \expandafter\def\csname simpleicon@synologyicon\endcsname {\simpleiconsmaponeone\symbol{163}}
- \expandafter\def\csname simpleicon@system76icon\endcsname {\simpleiconsmaponeone\symbol{164}}
- \expandafter\def\csname simpleicon@tabelogicon\endcsname {\simpleiconsmaponeone\symbol{165}}
- \expandafter\def\csname simpleicon@tableauicon\endcsname {\simpleiconsmaponeone\symbol{166}}
- \expandafter\def\csname simpleicon@tablecheckicon\endcsname {\simpleiconsmaponeone\symbol{167}}
- \expandafter\def\csname simpleicon@tacobellicon\endcsname {\simpleiconsmaponeone\symbol{168}}
- \expandafter\def\csname simpleicon@tadoicon\endcsname {\simpleiconsmaponeone\symbol{169}}
- \expandafter\def\csname simpleicon@taichigraphicsicon\endcsname {\simpleiconsmaponeone\symbol{170}}
- \expandafter\def\csname simpleicon@taichilangicon\endcsname {\simpleiconsmaponeone\symbol{171}}
- \expandafter\def\csname simpleicon@tailsicon\endcsname {\simpleiconsmaponeone\symbol{172}}
- \expandafter\def\csname simpleicon@tailscaleicon\endcsname {\simpleiconsmaponeone\symbol{173}}
- \expandafter\def\csname simpleicon@tailwindcssicon\endcsname {\simpleiconsmaponeone\symbol{174}}
- \expandafter\def\csname simpleicon@taipyicon\endcsname {\simpleiconsmaponeone\symbol{175}}
- \expandafter\def\csname simpleicon@taketwointeractivesoftwareicon\endcsname {\simpleiconsmaponeone\symbol{176}}
- \expandafter\def\csname simpleicon@talendicon\endcsname {\simpleiconsmaponeone\symbol{177}}
- \expandafter\def\csname simpleicon@talenthouseicon\endcsname {\simpleiconsmaponeone\symbol{178}}
- \expandafter\def\csname simpleicon@talosicon\endcsname {\simpleiconsmaponeone\symbol{179}}
- \expandafter\def\csname simpleicon@tamiyaicon\endcsname {\simpleiconsmaponeone\symbol{180}}
- \expandafter\def\csname simpleicon@tampermonkeyicon\endcsname {\simpleiconsmaponeone\symbol{181}}
- \expandafter\def\csname simpleicon@taobaoicon\endcsname {\simpleiconsmaponeone\symbol{182}}
- \expandafter\def\csname simpleicon@tapasicon\endcsname {\simpleiconsmaponeone\symbol{183}}
- \expandafter\def\csname simpleicon@targeticon\endcsname {\simpleiconsmaponeone\symbol{184}}
- \expandafter\def\csname simpleicon@taskicon\endcsname {\simpleiconsmaponeone\symbol{185}}
- \expandafter\def\csname simpleicon@tasmotaicon\endcsname {\simpleiconsmaponeone\symbol{186}}
- \expandafter\def\csname simpleicon@tataicon\endcsname {\simpleiconsmaponeone\symbol{187}}
- \expandafter\def\csname simpleicon@tauriicon\endcsname {\simpleiconsmaponeone\symbol{188}}
- \expandafter\def\csname simpleicon@taxbuzzicon\endcsname {\simpleiconsmaponeone\symbol{189}}
- \expandafter\def\csname simpleicon@tcsicon\endcsname {\simpleiconsmaponeone\symbol{190}}
- \expandafter\def\csname simpleicon@tealicon\endcsname {\simpleiconsmaponeone\symbol{191}}
- \expandafter\def\csname simpleicon@teamcityicon\endcsname {\simpleiconsmaponeone\symbol{192}}
- \expandafter\def\csname simpleicon@teamspeakicon\endcsname {\simpleiconsmaponeone\symbol{193}}
- \expandafter\def\csname simpleicon@teamviewericon\endcsname {\simpleiconsmaponeone\symbol{194}}
+ \expandafter\def\csname simpleicon@pleromaicon\endcsname {\simpleiconsmapnine\symbol{75}}
+ \expandafter\def\csname simpleicon@pleskicon\endcsname {\simpleiconsmapnine\symbol{76}}
+ \expandafter\def\csname simpleicon@plexicon\endcsname {\simpleiconsmapnine\symbol{77}}
+ \expandafter\def\csname simpleicon@plotlyicon\endcsname {\simpleiconsmapnine\symbol{78}}
+ \expandafter\def\csname simpleicon@plumeicon\endcsname {\simpleiconsmapnine\symbol{79}}
+ \expandafter\def\csname simpleicon@pluralsighticon\endcsname {\simpleiconsmapnine\symbol{80}}
+ \expandafter\def\csname simpleicon@plurkicon\endcsname {\simpleiconsmapnine\symbol{81}}
+ \expandafter\def\csname simpleicon@pluscodesicon\endcsname {\simpleiconsmapnine\symbol{82}}
+ \expandafter\def\csname simpleicon@pm2icon\endcsname {\simpleiconsmapnine\symbol{83}}
+ \expandafter\def\csname simpleicon@pnpmicon\endcsname {\simpleiconsmapnine\symbol{84}}
+ \expandafter\def\csname simpleicon@pocketicon\endcsname {\simpleiconsmapnine\symbol{85}}
+ \expandafter\def\csname simpleicon@pocketbaseicon\endcsname {\simpleiconsmapnine\symbol{86}}
+ \expandafter\def\csname simpleicon@pocketcastsicon\endcsname {\simpleiconsmapnine\symbol{87}}
+ \expandafter\def\csname simpleicon@podcastaddicticon\endcsname {\simpleiconsmapnine\symbol{88}}
+ \expandafter\def\csname simpleicon@podcastindexicon\endcsname {\simpleiconsmapnine\symbol{89}}
+ \expandafter\def\csname simpleicon@podmanicon\endcsname {\simpleiconsmapnine\symbol{90}}
+ \expandafter\def\csname simpleicon@poeicon\endcsname {\simpleiconsmapnine\symbol{91}}
+ \expandafter\def\csname simpleicon@poetryicon\endcsname {\simpleiconsmapnine\symbol{92}}
+ \expandafter\def\csname simpleicon@pointyicon\endcsname {\simpleiconsmapnine\symbol{93}}
+ \expandafter\def\csname simpleicon@pokemonicon\endcsname {\simpleiconsmapnine\symbol{94}}
+ \expandafter\def\csname simpleicon@polarsicon\endcsname {\simpleiconsmapnine\symbol{95}}
+ \expandafter\def\csname simpleicon@polestaricon\endcsname {\simpleiconsmapnine\symbol{96}}
+ \expandafter\def\csname simpleicon@polkadoticon\endcsname {\simpleiconsmapnine\symbol{97}}
+ \expandafter\def\csname simpleicon@polyicon\endcsname {\simpleiconsmapnine\symbol{98}}
+ \expandafter\def\csname simpleicon@polygonicon\endcsname {\simpleiconsmapnine\symbol{99}}
+ \expandafter\def\csname simpleicon@polymerprojecticon\endcsname {\simpleiconsmapnine\symbol{100}}
+ \expandafter\def\csname simpleicon@polyworkicon\endcsname {\simpleiconsmapnine\symbol{101}}
+ \expandafter\def\csname simpleicon@pond5icon\endcsname {\simpleiconsmapnine\symbol{102}}
+ \expandafter\def\csname simpleicon@poposicon\endcsname {\simpleiconsmapnine\symbol{103}}
+ \expandafter\def\csname simpleicon@porkbunicon\endcsname {\simpleiconsmapnine\symbol{104}}
+ \expandafter\def\csname simpleicon@porscheicon\endcsname {\simpleiconsmapnine\symbol{105}}
+ \expandafter\def\csname simpleicon@portainericon\endcsname {\simpleiconsmapnine\symbol{106}}
+ \expandafter\def\csname simpleicon@portswiggericon\endcsname {\simpleiconsmapnine\symbol{107}}
+ \expandafter\def\csname simpleicon@positicon\endcsname {\simpleiconsmapnine\symbol{108}}
+ \expandafter\def\csname simpleicon@postcssicon\endcsname {\simpleiconsmapnine\symbol{109}}
+ \expandafter\def\csname simpleicon@postgresqlicon\endcsname {\simpleiconsmapnine\symbol{110}}
+ \expandafter\def\csname simpleicon@posthogicon\endcsname {\simpleiconsmapnine\symbol{111}}
+ \expandafter\def\csname simpleicon@postmanicon\endcsname {\simpleiconsmapnine\symbol{112}}
+ \expandafter\def\csname simpleicon@postmatesicon\endcsname {\simpleiconsmapnine\symbol{113}}
+ \expandafter\def\csname simpleicon@powersicon\endcsname {\simpleiconsmapnine\symbol{114}}
+ \expandafter\def\csname simpleicon@prdotcoicon\endcsname {\simpleiconsmapnine\symbol{115}}
+ \expandafter\def\csname simpleicon@preacticon\endcsname {\simpleiconsmapnine\symbol{116}}
+ \expandafter\def\csname simpleicon@precommiticon\endcsname {\simpleiconsmapnine\symbol{117}}
+ \expandafter\def\csname simpleicon@prefecticon\endcsname {\simpleiconsmapnine\symbol{118}}
+ \expandafter\def\csname simpleicon@premierleagueicon\endcsname {\simpleiconsmapnine\symbol{119}}
+ \expandafter\def\csname simpleicon@prepbytesicon\endcsname {\simpleiconsmapnine\symbol{120}}
+ \expandafter\def\csname simpleicon@prestashopicon\endcsname {\simpleiconsmapnine\symbol{121}}
+ \expandafter\def\csname simpleicon@prestoicon\endcsname {\simpleiconsmapnine\symbol{122}}
+ \expandafter\def\csname simpleicon@prettiericon\endcsname {\simpleiconsmapnine\symbol{123}}
+ \expandafter\def\csname simpleicon@pretzelicon\endcsname {\simpleiconsmapnine\symbol{124}}
+ \expandafter\def\csname simpleicon@preventionicon\endcsname {\simpleiconsmapnine\symbol{125}}
+ \expandafter\def\csname simpleicon@preziicon\endcsname {\simpleiconsmapnine\symbol{126}}
+ \expandafter\def\csname simpleicon@primeicon\endcsname {\simpleiconsmapnine\symbol{127}}
+ \expandafter\def\csname simpleicon@primefacesicon\endcsname {\simpleiconsmapnine\symbol{128}}
+ \expandafter\def\csname simpleicon@primengicon\endcsname {\simpleiconsmapnine\symbol{129}}
+ \expandafter\def\csname simpleicon@primereacticon\endcsname {\simpleiconsmapnine\symbol{130}}
+ \expandafter\def\csname simpleicon@primevideoicon\endcsname {\simpleiconsmapnine\symbol{131}}
+ \expandafter\def\csname simpleicon@primevueicon\endcsname {\simpleiconsmapnine\symbol{132}}
+ \expandafter\def\csname simpleicon@printablesicon\endcsname {\simpleiconsmapnine\symbol{133}}
+ \expandafter\def\csname simpleicon@prismaicon\endcsname {\simpleiconsmapnine\symbol{134}}
+ \expandafter\def\csname simpleicon@prismicicon\endcsname {\simpleiconsmapnine\symbol{135}}
+ \expandafter\def\csname simpleicon@privatedivisionicon\endcsname {\simpleiconsmapnine\symbol{136}}
+ \expandafter\def\csname simpleicon@privateinternetaccessicon\endcsname {\simpleiconsmapnine\symbol{137}}
+ \expandafter\def\csname simpleicon@proboticon\endcsname {\simpleiconsmapnine\symbol{138}}
+ \expandafter\def\csname simpleicon@processingfoundationicon\endcsname {\simpleiconsmapnine\symbol{139}}
+ \expandafter\def\csname simpleicon@processwireicon\endcsname {\simpleiconsmapnine\symbol{140}}
+ \expandafter\def\csname simpleicon@producthunticon\endcsname {\simpleiconsmapnine\symbol{141}}
+ \expandafter\def\csname simpleicon@progateicon\endcsname {\simpleiconsmapnine\symbol{142}}
+ \expandafter\def\csname simpleicon@progressicon\endcsname {\simpleiconsmapnine\symbol{143}}
+ \expandafter\def\csname simpleicon@prometheusicon\endcsname {\simpleiconsmapnine\symbol{144}}
+ \expandafter\def\csname simpleicon@pronounsdotpageicon\endcsname {\simpleiconsmapnine\symbol{145}}
+ \expandafter\def\csname simpleicon@prosiebenicon\endcsname {\simpleiconsmapnine\symbol{146}}
+ \expandafter\def\csname simpleicon@proteusicon\endcsname {\simpleiconsmapnine\symbol{147}}
+ \expandafter\def\csname simpleicon@protocolsdotioicon\endcsname {\simpleiconsmapnine\symbol{148}}
+ \expandafter\def\csname simpleicon@protodotioicon\endcsname {\simpleiconsmapnine\symbol{149}}
+ \expandafter\def\csname simpleicon@protonicon\endcsname {\simpleiconsmapnine\symbol{150}}
+ \expandafter\def\csname simpleicon@protoncalendaricon\endcsname {\simpleiconsmapnine\symbol{151}}
+ \expandafter\def\csname simpleicon@protondbicon\endcsname {\simpleiconsmapnine\symbol{152}}
+ \expandafter\def\csname simpleicon@protondriveicon\endcsname {\simpleiconsmapnine\symbol{153}}
+ \expandafter\def\csname simpleicon@protonmailicon\endcsname {\simpleiconsmapnine\symbol{154}}
+ \expandafter\def\csname simpleicon@protonvpnicon\endcsname {\simpleiconsmapnine\symbol{155}}
+ \expandafter\def\csname simpleicon@protoolsicon\endcsname {\simpleiconsmapnine\symbol{156}}
+ \expandafter\def\csname simpleicon@protractoricon\endcsname {\simpleiconsmapnine\symbol{157}}
+ \expandafter\def\csname simpleicon@proxmoxicon\endcsname {\simpleiconsmapnine\symbol{158}}
+ \expandafter\def\csname simpleicon@pterodactylicon\endcsname {\simpleiconsmapnine\symbol{159}}
+ \expandafter\def\csname simpleicon@pubgicon\endcsname {\simpleiconsmapnine\symbol{160}}
+ \expandafter\def\csname simpleicon@publonsicon\endcsname {\simpleiconsmapnine\symbol{161}}
+ \expandafter\def\csname simpleicon@pubmedicon\endcsname {\simpleiconsmapnine\symbol{162}}
+ \expandafter\def\csname simpleicon@pugicon\endcsname {\simpleiconsmapnine\symbol{163}}
+ \expandafter\def\csname simpleicon@pulumiicon\endcsname {\simpleiconsmapnine\symbol{164}}
+ \expandafter\def\csname simpleicon@pumaicon\endcsname {\simpleiconsmapnine\symbol{165}}
+ \expandafter\def\csname simpleicon@puppeticon\endcsname {\simpleiconsmapnine\symbol{166}}
+ \expandafter\def\csname simpleicon@puppeteericon\endcsname {\simpleiconsmapnine\symbol{167}}
+ \expandafter\def\csname simpleicon@purescripticon\endcsname {\simpleiconsmapnine\symbol{168}}
+ \expandafter\def\csname simpleicon@purgecssicon\endcsname {\simpleiconsmapnine\symbol{169}}
+ \expandafter\def\csname simpleicon@purismicon\endcsname {\simpleiconsmapnine\symbol{170}}
+ \expandafter\def\csname simpleicon@pushbulleticon\endcsname {\simpleiconsmapnine\symbol{171}}
+ \expandafter\def\csname simpleicon@pushericon\endcsname {\simpleiconsmapnine\symbol{172}}
+ \expandafter\def\csname simpleicon@pwaicon\endcsname {\simpleiconsmapnine\symbol{173}}
+ \expandafter\def\csname simpleicon@pycharmicon\endcsname {\simpleiconsmapnine\symbol{174}}
+ \expandafter\def\csname simpleicon@pycqaicon\endcsname {\simpleiconsmapnine\symbol{175}}
+ \expandafter\def\csname simpleicon@pydanticicon\endcsname {\simpleiconsmapnine\symbol{176}}
+ \expandafter\def\csname simpleicon@pygicon\endcsname {\simpleiconsmapnine\symbol{177}}
+ \expandafter\def\csname simpleicon@pypiicon\endcsname {\simpleiconsmapnine\symbol{178}}
+ \expandafter\def\csname simpleicon@pypyicon\endcsname {\simpleiconsmapnine\symbol{179}}
+ \expandafter\def\csname simpleicon@pyscaffoldicon\endcsname {\simpleiconsmapnine\symbol{180}}
+ \expandafter\def\csname simpleicon@pysyfticon\endcsname {\simpleiconsmapnine\symbol{181}}
+ \expandafter\def\csname simpleicon@pytesticon\endcsname {\simpleiconsmapnine\symbol{182}}
+ \expandafter\def\csname simpleicon@pythonicon\endcsname {\simpleiconsmapnine\symbol{183}}
+ \expandafter\def\csname simpleicon@pythonanywhereicon\endcsname {\simpleiconsmapnine\symbol{184}}
+ \expandafter\def\csname simpleicon@pytorchicon\endcsname {\simpleiconsmapnine\symbol{185}}
+ \expandafter\def\csname simpleicon@pyupicon\endcsname {\simpleiconsmapnine\symbol{186}}
+ \expandafter\def\csname simpleicon@qantasicon\endcsname {\simpleiconsmapnine\symbol{187}}
+ \expandafter\def\csname simpleicon@qaseicon\endcsname {\simpleiconsmapnine\symbol{188}}
+ \expandafter\def\csname simpleicon@qatarairwaysicon\endcsname {\simpleiconsmapnine\symbol{189}}
+ \expandafter\def\csname simpleicon@qbittorrenticon\endcsname {\simpleiconsmapnine\symbol{190}}
+ \expandafter\def\csname simpleicon@qemuicon\endcsname {\simpleiconsmapnine\symbol{191}}
+ \expandafter\def\csname simpleicon@qgisicon\endcsname {\simpleiconsmapnine\symbol{192}}
+ \expandafter\def\csname simpleicon@qiicon\endcsname {\simpleiconsmapnine\symbol{193}}
+ \expandafter\def\csname simpleicon@qiitaicon\endcsname {\simpleiconsmapnine\symbol{194}}
+ \expandafter\def\csname simpleicon@qiskiticon\endcsname {\simpleiconsmapnine\symbol{195}}
+ \expandafter\def\csname simpleicon@qiwiicon\endcsname {\simpleiconsmapnine\symbol{196}}
+ \expandafter\def\csname simpleicon@qlikicon\endcsname {\simpleiconsmapnine\symbol{197}}
+ \expandafter\def\csname simpleicon@qmkicon\endcsname {\simpleiconsmapnine\symbol{198}}
+ \expandafter\def\csname simpleicon@qnapicon\endcsname {\simpleiconsmapnine\symbol{199}}
+ \expandafter\def\csname simpleicon@qticon\endcsname {\simpleiconsmapnine\symbol{200}}
+ \expandafter\def\csname simpleicon@qualcommicon\endcsname {\simpleiconsmapnine\symbol{201}}
+ \expandafter\def\csname simpleicon@qualtricsicon\endcsname {\simpleiconsmapnine\symbol{202}}
+ \expandafter\def\csname simpleicon@qualysicon\endcsname {\simpleiconsmapnine\symbol{203}}
+ \expandafter\def\csname simpleicon@quantcasticon\endcsname {\simpleiconsmapnine\symbol{204}}
+ \expandafter\def\csname simpleicon@quantconnecticon\endcsname {\simpleiconsmapnine\symbol{205}}
+ \expandafter\def\csname simpleicon@quarkusicon\endcsname {\simpleiconsmapnine\symbol{206}}
+ \expandafter\def\csname simpleicon@quartoicon\endcsname {\simpleiconsmapnine\symbol{207}}
+ \expandafter\def\csname simpleicon@quasaricon\endcsname {\simpleiconsmapnine\symbol{208}}
+ \expandafter\def\csname simpleicon@qubesosicon\endcsname {\simpleiconsmapnine\symbol{209}}
+ \expandafter\def\csname simpleicon@questicon\endcsname {\simpleiconsmapnine\symbol{210}}
+ \expandafter\def\csname simpleicon@quickbooksicon\endcsname {\simpleiconsmapnine\symbol{211}}
+ \expandafter\def\csname simpleicon@quicklookicon\endcsname {\simpleiconsmapnine\symbol{212}}
+ \expandafter\def\csname simpleicon@quicktimeicon\endcsname {\simpleiconsmapnine\symbol{213}}
+ \expandafter\def\csname simpleicon@quicktypeicon\endcsname {\simpleiconsmapnine\symbol{214}}
+ \expandafter\def\csname simpleicon@quipicon\endcsname {\simpleiconsmapnine\symbol{215}}
+ \expandafter\def\csname simpleicon@quizleticon\endcsname {\simpleiconsmapnine\symbol{216}}
+ \expandafter\def\csname simpleicon@quoraicon\endcsname {\simpleiconsmapnine\symbol{217}}
+ \expandafter\def\csname simpleicon@qwanticon\endcsname {\simpleiconsmapnine\symbol{218}}
+ \expandafter\def\csname simpleicon@qwikicon\endcsname {\simpleiconsmapnine\symbol{219}}
+ \expandafter\def\csname simpleicon@qwiklabsicon\endcsname {\simpleiconsmapnine\symbol{220}}
+ \expandafter\def\csname simpleicon@qzoneicon\endcsname {\simpleiconsmapnine\symbol{221}}
+ \expandafter\def\csname simpleicon@ricon\endcsname {\simpleiconsmapnine\symbol{222}}
+ \expandafter\def\csname simpleicon@r3icon\endcsname {\simpleiconsmapnine\symbol{223}}
+ \expandafter\def\csname simpleicon@rabbitmqicon\endcsname {\simpleiconsmapnine\symbol{224}}
+ \expandafter\def\csname simpleicon@racketicon\endcsname {\simpleiconsmapnine\symbol{225}}
+ \expandafter\def\csname simpleicon@radaricon\endcsname {\simpleiconsmapnine\symbol{226}}
+ \expandafter\def\csname simpleicon@radarricon\endcsname {\simpleiconsmapnine\symbol{227}}
+ \expandafter\def\csname simpleicon@radiopublicicon\endcsname {\simpleiconsmapnine\symbol{228}}
+ \expandafter\def\csname simpleicon@radixuiicon\endcsname {\simpleiconsmapnine\symbol{229}}
+ \expandafter\def\csname simpleicon@radstudioicon\endcsname {\simpleiconsmapnine\symbol{230}}
+ \expandafter\def\csname simpleicon@railwayicon\endcsname {\simpleiconsmapnine\symbol{231}}
+ \expandafter\def\csname simpleicon@rainmetericon\endcsname {\simpleiconsmapnine\symbol{232}}
+ \expandafter\def\csname simpleicon@rakutenicon\endcsname {\simpleiconsmapnine\symbol{233}}
+ \expandafter\def\csname simpleicon@ramicon\endcsname {\simpleiconsmapnine\symbol{234}}
+ \expandafter\def\csname simpleicon@ranchericon\endcsname {\simpleiconsmapnine\symbol{235}}
+ \expandafter\def\csname simpleicon@rapidicon\endcsname {\simpleiconsmapnine\symbol{236}}
+ \expandafter\def\csname simpleicon@raribleicon\endcsname {\simpleiconsmapnine\symbol{237}}
+ \expandafter\def\csname simpleicon@rasaicon\endcsname {\simpleiconsmapnine\symbol{238}}
+ \expandafter\def\csname simpleicon@raspberrypiicon\endcsname {\simpleiconsmapnine\symbol{239}}
+ \expandafter\def\csname simpleicon@ravelryicon\endcsname {\simpleiconsmapnine\symbol{240}}
+ \expandafter\def\csname simpleicon@rayicon\endcsname {\simpleiconsmapnine\symbol{241}}
+ \expandafter\def\csname simpleicon@raycasticon\endcsname {\simpleiconsmapnine\symbol{242}}
+ \expandafter\def\csname simpleicon@raylibicon\endcsname {\simpleiconsmapnine\symbol{243}}
+ \expandafter\def\csname simpleicon@razericon\endcsname {\simpleiconsmapnine\symbol{244}}
+ \expandafter\def\csname simpleicon@razorpayicon\endcsname {\simpleiconsmapnine\symbol{245}}
+ \expandafter\def\csname simpleicon@rcloneicon\endcsname {\simpleiconsmapnine\symbol{246}}
+ \expandafter\def\csname simpleicon@reacticon\endcsname {\simpleiconsmapnine\symbol{247}}
+ \expandafter\def\csname simpleicon@reactbootstrapicon\endcsname {\simpleiconsmapnine\symbol{248}}
+ \expandafter\def\csname simpleicon@reacthookformicon\endcsname {\simpleiconsmapnine\symbol{249}}
+ \expandafter\def\csname simpleicon@reactiveresumeicon\endcsname {\simpleiconsmapnine\symbol{250}}
+ \expandafter\def\csname simpleicon@reactivexicon\endcsname {\simpleiconsmapnine\symbol{251}}
+ \expandafter\def\csname simpleicon@reactosicon\endcsname {\simpleiconsmapnine\symbol{252}}
+ \expandafter\def\csname simpleicon@reactqueryicon\endcsname {\simpleiconsmapnine\symbol{253}}
+ \expandafter\def\csname simpleicon@reactroutericon\endcsname {\simpleiconsmapnine\symbol{254}}
+ \expandafter\def\csname simpleicon@reacttableicon\endcsname {\simpleiconsmapnine\symbol{255}}
+ \expandafter\def\csname simpleicon@readdotcvicon\endcsname {\simpleiconsmaponezero\symbol{0}}
+ \expandafter\def\csname simpleicon@readmeicon\endcsname {\simpleiconsmaponezero\symbol{1}}
+ \expandafter\def\csname simpleicon@readthedocsicon\endcsname {\simpleiconsmaponezero\symbol{2}}
+ \expandafter\def\csname simpleicon@realmicon\endcsname {\simpleiconsmaponezero\symbol{3}}
+ \expandafter\def\csname simpleicon@reasonicon\endcsname {\simpleiconsmaponezero\symbol{4}}
+ \expandafter\def\csname simpleicon@reasonstudiosicon\endcsname {\simpleiconsmaponezero\symbol{5}}
+ \expandafter\def\csname simpleicon@recoilicon\endcsname {\simpleiconsmaponezero\symbol{6}}
+ \expandafter\def\csname simpleicon@redicon\endcsname {\simpleiconsmaponezero\symbol{7}}
+ \expandafter\def\csname simpleicon@redashicon\endcsname {\simpleiconsmaponezero\symbol{8}}
+ \expandafter\def\csname simpleicon@redbubbleicon\endcsname {\simpleiconsmaponezero\symbol{9}}
+ \expandafter\def\csname simpleicon@redbullicon\endcsname {\simpleiconsmaponezero\symbol{10}}
+ \expandafter\def\csname simpleicon@redcandlegamesicon\endcsname {\simpleiconsmaponezero\symbol{11}}
+ \expandafter\def\csname simpleicon@redditicon\endcsname {\simpleiconsmaponezero\symbol{12}}
+ \expandafter\def\csname simpleicon@redhaticon\endcsname {\simpleiconsmaponezero\symbol{13}}
+ \expandafter\def\csname simpleicon@redhatopenshifticon\endcsname {\simpleiconsmaponezero\symbol{14}}
+ \expandafter\def\csname simpleicon@redisicon\endcsname {\simpleiconsmaponezero\symbol{15}}
+ \expandafter\def\csname simpleicon@redmineicon\endcsname {\simpleiconsmaponezero\symbol{16}}
+ \expandafter\def\csname simpleicon@redoxicon\endcsname {\simpleiconsmaponezero\symbol{17}}
+ \expandafter\def\csname simpleicon@redragonicon\endcsname {\simpleiconsmaponezero\symbol{18}}
+ \expandafter\def\csname simpleicon@redsysicon\endcsname {\simpleiconsmaponezero\symbol{19}}
+ \expandafter\def\csname simpleicon@reduxicon\endcsname {\simpleiconsmaponezero\symbol{20}}
+ \expandafter\def\csname simpleicon@reduxsagaicon\endcsname {\simpleiconsmaponezero\symbol{21}}
+ \expandafter\def\csname simpleicon@redwoodjsicon\endcsname {\simpleiconsmaponezero\symbol{22}}
+ \expandafter\def\csname simpleicon@reebokicon\endcsname {\simpleiconsmaponezero\symbol{23}}
+ \expandafter\def\csname simpleicon@refineicon\endcsname {\simpleiconsmaponezero\symbol{24}}
+ \expandafter\def\csname simpleicon@relayicon\endcsname {\simpleiconsmaponezero\symbol{25}}
+ \expandafter\def\csname simpleicon@relianceindustrieslimitedicon\endcsname {\simpleiconsmaponezero\symbol{26}}
+ \expandafter\def\csname simpleicon@remarkicon\endcsname {\simpleiconsmaponezero\symbol{27}}
+ \expandafter\def\csname simpleicon@remedyentertainmenticon\endcsname {\simpleiconsmaponezero\symbol{28}}
+ \expandafter\def\csname simpleicon@remixicon\endcsname {\simpleiconsmaponezero\symbol{29}}
+ \expandafter\def\csname simpleicon@removedotbgicon\endcsname {\simpleiconsmaponezero\symbol{30}}
+ \expandafter\def\csname simpleicon@renaulticon\endcsname {\simpleiconsmaponezero\symbol{31}}
+ \expandafter\def\csname simpleicon@rendericon\endcsname {\simpleiconsmaponezero\symbol{32}}
+ \expandafter\def\csname simpleicon@renovateicon\endcsname {\simpleiconsmaponezero\symbol{33}}
+ \expandafter\def\csname simpleicon@renpyicon\endcsname {\simpleiconsmaponezero\symbol{34}}
+ \expandafter\def\csname simpleicon@renrenicon\endcsname {\simpleiconsmaponezero\symbol{35}}
+ \expandafter\def\csname simpleicon@repliticon\endcsname {\simpleiconsmaponezero\symbol{36}}
+ \expandafter\def\csname simpleicon@republicofgamersicon\endcsname {\simpleiconsmaponezero\symbol{37}}
+ \expandafter\def\csname simpleicon@rescripticon\endcsname {\simpleiconsmaponezero\symbol{38}}
+ \expandafter\def\csname simpleicon@rescuetimeicon\endcsname {\simpleiconsmaponezero\symbol{39}}
+ \expandafter\def\csname simpleicon@researchgateicon\endcsname {\simpleiconsmaponezero\symbol{40}}
+ \expandafter\def\csname simpleicon@resendicon\endcsname {\simpleiconsmaponezero\symbol{41}}
+ \expandafter\def\csname simpleicon@resharpericon\endcsname {\simpleiconsmaponezero\symbol{42}}
+ \expandafter\def\csname simpleicon@resurrectionremixosicon\endcsname {\simpleiconsmaponezero\symbol{43}}
+ \expandafter\def\csname simpleicon@retoolicon\endcsname {\simpleiconsmaponezero\symbol{44}}
+ \expandafter\def\csname simpleicon@retroarchicon\endcsname {\simpleiconsmaponezero\symbol{45}}
+ \expandafter\def\csname simpleicon@retropieicon\endcsname {\simpleiconsmaponezero\symbol{46}}
+ \expandafter\def\csname simpleicon@revancedicon\endcsname {\simpleiconsmaponezero\symbol{47}}
+ \expandafter\def\csname simpleicon@revealdotjsicon\endcsname {\simpleiconsmaponezero\symbol{48}}
+ \expandafter\def\csname simpleicon@reverbnationicon\endcsname {\simpleiconsmaponezero\symbol{49}}
+ \expandafter\def\csname simpleicon@revoltdotchaticon\endcsname {\simpleiconsmaponezero\symbol{50}}
+ \expandafter\def\csname simpleicon@revoluticon\endcsname {\simpleiconsmaponezero\symbol{51}}
+ \expandafter\def\csname simpleicon@revueicon\endcsname {\simpleiconsmaponezero\symbol{52}}
+ \expandafter\def\csname simpleicon@reweicon\endcsname {\simpleiconsmaponezero\symbol{53}}
+ \expandafter\def\csname simpleicon@rezgoicon\endcsname {\simpleiconsmaponezero\symbol{54}}
+ \expandafter\def\csname simpleicon@rhinocerosicon\endcsname {\simpleiconsmaponezero\symbol{55}}
+ \expandafter\def\csname simpleicon@richicon\endcsname {\simpleiconsmaponezero\symbol{56}}
+ \expandafter\def\csname simpleicon@ridericon\endcsname {\simpleiconsmaponezero\symbol{57}}
+ \expandafter\def\csname simpleicon@rimacautomobiliicon\endcsname {\simpleiconsmaponezero\symbol{58}}
+ \expandafter\def\csname simpleicon@rimeicon\endcsname {\simpleiconsmaponezero\symbol{59}}
+ \expandafter\def\csname simpleicon@ringicon\endcsname {\simpleiconsmaponezero\symbol{60}}
+ \expandafter\def\csname simpleicon@riotgamesicon\endcsname {\simpleiconsmaponezero\symbol{61}}
+ \expandafter\def\csname simpleicon@rippleicon\endcsname {\simpleiconsmaponezero\symbol{62}}
+ \expandafter\def\csname simpleicon@riscvicon\endcsname {\simpleiconsmaponezero\symbol{63}}
+ \expandafter\def\csname simpleicon@riseupicon\endcsname {\simpleiconsmaponezero\symbol{64}}
+ \expandafter\def\csname simpleicon@ritzcarltonicon\endcsname {\simpleiconsmaponezero\symbol{65}}
+ \expandafter\def\csname simpleicon@riveicon\endcsname {\simpleiconsmaponezero\symbol{66}}
+ \expandafter\def\csname simpleicon@roadmapdotshicon\endcsname {\simpleiconsmaponezero\symbol{67}}
+ \expandafter\def\csname simpleicon@roamresearchicon\endcsname {\simpleiconsmaponezero\symbol{68}}
+ \expandafter\def\csname simpleicon@robinhoodicon\endcsname {\simpleiconsmaponezero\symbol{69}}
+ \expandafter\def\csname simpleicon@robloxicon\endcsname {\simpleiconsmaponezero\symbol{70}}
+ \expandafter\def\csname simpleicon@robloxstudioicon\endcsname {\simpleiconsmaponezero\symbol{71}}
+ \expandafter\def\csname simpleicon@roboflowicon\endcsname {\simpleiconsmaponezero\symbol{72}}
+ \expandafter\def\csname simpleicon@robotframeworkicon\endcsname {\simpleiconsmaponezero\symbol{73}}
+ \expandafter\def\csname simpleicon@rocketicon\endcsname {\simpleiconsmaponezero\symbol{74}}
+ \expandafter\def\csname simpleicon@rocketdotchaticon\endcsname {\simpleiconsmaponezero\symbol{75}}
+ \expandafter\def\csname simpleicon@rocksdbicon\endcsname {\simpleiconsmaponezero\symbol{76}}
+ \expandafter\def\csname simpleicon@rockstargamesicon\endcsname {\simpleiconsmaponezero\symbol{77}}
+ \expandafter\def\csname simpleicon@rockwellautomationicon\endcsname {\simpleiconsmaponezero\symbol{78}}
+ \expandafter\def\csname simpleicon@rockylinuxicon\endcsname {\simpleiconsmaponezero\symbol{79}}
+ \expandafter\def\csname simpleicon@rokuicon\endcsname {\simpleiconsmaponezero\symbol{80}}
+ \expandafter\def\csname simpleicon@roll20icon\endcsname {\simpleiconsmaponezero\symbol{81}}
+ \expandafter\def\csname simpleicon@rollsroyceicon\endcsname {\simpleiconsmaponezero\symbol{82}}
+ \expandafter\def\csname simpleicon@rollupdotjsicon\endcsname {\simpleiconsmaponezero\symbol{83}}
+ \expandafter\def\csname simpleicon@roonicon\endcsname {\simpleiconsmaponezero\symbol{84}}
+ \expandafter\def\csname simpleicon@rootmeicon\endcsname {\simpleiconsmaponezero\symbol{85}}
+ \expandafter\def\csname simpleicon@rootsicon\endcsname {\simpleiconsmaponezero\symbol{86}}
+ \expandafter\def\csname simpleicon@rootsbedrockicon\endcsname {\simpleiconsmaponezero\symbol{87}}
+ \expandafter\def\csname simpleicon@rootssageicon\endcsname {\simpleiconsmaponezero\symbol{88}}
+ \expandafter\def\csname simpleicon@rosicon\endcsname {\simpleiconsmaponezero\symbol{89}}
+ \expandafter\def\csname simpleicon@rossmannicon\endcsname {\simpleiconsmaponezero\symbol{90}}
+ \expandafter\def\csname simpleicon@rotaryinternationalicon\endcsname {\simpleiconsmaponezero\symbol{91}}
+ \expandafter\def\csname simpleicon@rottentomatoesicon\endcsname {\simpleiconsmaponezero\symbol{92}}
+ \expandafter\def\csname simpleicon@roundcubeicon\endcsname {\simpleiconsmaponezero\symbol{93}}
+ \expandafter\def\csname simpleicon@rsocketicon\endcsname {\simpleiconsmaponezero\symbol{94}}
+ \expandafter\def\csname simpleicon@rssicon\endcsname {\simpleiconsmaponezero\symbol{95}}
+ \expandafter\def\csname simpleicon@rstudioideicon\endcsname {\simpleiconsmaponezero\symbol{96}}
+ \expandafter\def\csname simpleicon@rteicon\endcsname {\simpleiconsmaponezero\symbol{97}}
+ \expandafter\def\csname simpleicon@rtlicon\endcsname {\simpleiconsmaponezero\symbol{98}}
+ \expandafter\def\csname simpleicon@rtlzweiicon\endcsname {\simpleiconsmaponezero\symbol{99}}
+ \expandafter\def\csname simpleicon@rtmicon\endcsname {\simpleiconsmaponezero\symbol{100}}
+ \expandafter\def\csname simpleicon@rubocopicon\endcsname {\simpleiconsmaponezero\symbol{101}}
+ \expandafter\def\csname simpleicon@rubyicon\endcsname {\simpleiconsmaponezero\symbol{102}}
+ \expandafter\def\csname simpleicon@rubygemsicon\endcsname {\simpleiconsmaponezero\symbol{103}}
+ \expandafter\def\csname simpleicon@rubymineicon\endcsname {\simpleiconsmaponezero\symbol{104}}
+ \expandafter\def\csname simpleicon@rubyonrailsicon\endcsname {\simpleiconsmaponezero\symbol{105}}
+ \expandafter\def\csname simpleicon@rubysinatraicon\endcsname {\simpleiconsmaponezero\symbol{106}}
+ \expandafter\def\csname simpleicon@rufficon\endcsname {\simpleiconsmaponezero\symbol{107}}
+ \expandafter\def\csname simpleicon@rumahwebicon\endcsname {\simpleiconsmaponezero\symbol{108}}
+ \expandafter\def\csname simpleicon@rumbleicon\endcsname {\simpleiconsmaponezero\symbol{109}}
+ \expandafter\def\csname simpleicon@rundeckicon\endcsname {\simpleiconsmaponezero\symbol{110}}
+ \expandafter\def\csname simpleicon@runkeepericon\endcsname {\simpleiconsmaponezero\symbol{111}}
+ \expandafter\def\csname simpleicon@runkiticon\endcsname {\simpleiconsmaponezero\symbol{112}}
+ \expandafter\def\csname simpleicon@runrundotiticon\endcsname {\simpleiconsmaponezero\symbol{113}}
+ \expandafter\def\csname simpleicon@rusticon\endcsname {\simpleiconsmaponezero\symbol{114}}
+ \expandafter\def\csname simpleicon@rustdeskicon\endcsname {\simpleiconsmaponezero\symbol{115}}
+ \expandafter\def\csname simpleicon@rxdbicon\endcsname {\simpleiconsmaponezero\symbol{116}}
+ \expandafter\def\csname simpleicon@ryanairicon\endcsname {\simpleiconsmaponezero\symbol{117}}
+ \expandafter\def\csname simpleicon@ryeicon\endcsname {\simpleiconsmaponezero\symbol{118}}
+ \expandafter\def\csname simpleicon@s7airlinesicon\endcsname {\simpleiconsmaponezero\symbol{119}}
+ \expandafter\def\csname simpleicon@sabanciicon\endcsname {\simpleiconsmaponezero\symbol{120}}
+ \expandafter\def\csname simpleicon@safariicon\endcsname {\simpleiconsmaponezero\symbol{121}}
+ \expandafter\def\csname simpleicon@sageicon\endcsname {\simpleiconsmaponezero\symbol{122}}
+ \expandafter\def\csname simpleicon@sahibindenicon\endcsname {\simpleiconsmaponezero\symbol{123}}
+ \expandafter\def\csname simpleicon@sailfishosicon\endcsname {\simpleiconsmaponezero\symbol{124}}
+ \expandafter\def\csname simpleicon@sailsdotjsicon\endcsname {\simpleiconsmaponezero\symbol{125}}
+ \expandafter\def\csname simpleicon@salesforceicon\endcsname {\simpleiconsmaponezero\symbol{126}}
+ \expandafter\def\csname simpleicon@sallaicon\endcsname {\simpleiconsmaponezero\symbol{127}}
+ \expandafter\def\csname simpleicon@saltprojecticon\endcsname {\simpleiconsmaponezero\symbol{128}}
+ \expandafter\def\csname simpleicon@samsclubicon\endcsname {\simpleiconsmaponezero\symbol{129}}
+ \expandafter\def\csname simpleicon@samsungicon\endcsname {\simpleiconsmaponezero\symbol{130}}
+ \expandafter\def\csname simpleicon@samsungpayicon\endcsname {\simpleiconsmaponezero\symbol{131}}
+ \expandafter\def\csname simpleicon@sandiskicon\endcsname {\simpleiconsmaponezero\symbol{132}}
+ \expandafter\def\csname simpleicon@sanfranciscomunicipalrailwayicon\endcsname {\simpleiconsmaponezero\symbol{133}}
+ \expandafter\def\csname simpleicon@sanicicon\endcsname {\simpleiconsmaponezero\symbol{134}}
+ \expandafter\def\csname simpleicon@sanityicon\endcsname {\simpleiconsmaponezero\symbol{135}}
+ \expandafter\def\csname simpleicon@saopaulometroicon\endcsname {\simpleiconsmaponezero\symbol{136}}
+ \expandafter\def\csname simpleicon@sapicon\endcsname {\simpleiconsmaponezero\symbol{137}}
+ \expandafter\def\csname simpleicon@sartoriusicon\endcsname {\simpleiconsmaponezero\symbol{138}}
+ \expandafter\def\csname simpleicon@sassicon\endcsname {\simpleiconsmaponezero\symbol{139}}
+ \expandafter\def\csname simpleicon@sat1icon\endcsname {\simpleiconsmaponezero\symbol{140}}
+ \expandafter\def\csname simpleicon@satelliteicon\endcsname {\simpleiconsmaponezero\symbol{141}}
+ \expandafter\def\csname simpleicon@saturnicon\endcsname {\simpleiconsmaponezero\symbol{142}}
+ \expandafter\def\csname simpleicon@saucelabsicon\endcsname {\simpleiconsmaponezero\symbol{143}}
+ \expandafter\def\csname simpleicon@saudiaicon\endcsname {\simpleiconsmaponezero\symbol{144}}
+ \expandafter\def\csname simpleicon@scalaicon\endcsname {\simpleiconsmaponezero\symbol{145}}
+ \expandafter\def\csname simpleicon@scalewayicon\endcsname {\simpleiconsmaponezero\symbol{146}}
+ \expandafter\def\csname simpleicon@scaniaicon\endcsname {\simpleiconsmaponezero\symbol{147}}
+ \expandafter\def\csname simpleicon@schneiderelectricicon\endcsname {\simpleiconsmaponezero\symbol{148}}
+ \expandafter\def\csname simpleicon@scikitlearnicon\endcsname {\simpleiconsmaponezero\symbol{149}}
+ \expandafter\def\csname simpleicon@scilabicon\endcsname {\simpleiconsmaponezero\symbol{150}}
+ \expandafter\def\csname simpleicon@scipyicon\endcsname {\simpleiconsmaponezero\symbol{151}}
+ \expandafter\def\csname simpleicon@scopusicon\endcsname {\simpleiconsmaponezero\symbol{152}}
+ \expandafter\def\csname simpleicon@scpfoundationicon\endcsname {\simpleiconsmaponezero\symbol{153}}
+ \expandafter\def\csname simpleicon@scrapboxicon\endcsname {\simpleiconsmaponezero\symbol{154}}
+ \expandafter\def\csname simpleicon@scrapyicon\endcsname {\simpleiconsmaponezero\symbol{155}}
+ \expandafter\def\csname simpleicon@scratchicon\endcsname {\simpleiconsmaponezero\symbol{156}}
+ \expandafter\def\csname simpleicon@screencastifyicon\endcsname {\simpleiconsmaponezero\symbol{157}}
+ \expandafter\def\csname simpleicon@scribdicon\endcsname {\simpleiconsmaponezero\symbol{158}}
+ \expandafter\def\csname simpleicon@scrimbaicon\endcsname {\simpleiconsmaponezero\symbol{159}}
+ \expandafter\def\csname simpleicon@scrollrevealicon\endcsname {\simpleiconsmaponezero\symbol{160}}
+ \expandafter\def\csname simpleicon@scrumallianceicon\endcsname {\simpleiconsmaponezero\symbol{161}}
+ \expandafter\def\csname simpleicon@scrutinizerciicon\endcsname {\simpleiconsmaponezero\symbol{162}}
+ \expandafter\def\csname simpleicon@scylladbicon\endcsname {\simpleiconsmaponezero\symbol{163}}
+ \expandafter\def\csname simpleicon@seagateicon\endcsname {\simpleiconsmaponezero\symbol{164}}
+ \expandafter\def\csname simpleicon@searxngicon\endcsname {\simpleiconsmaponezero\symbol{165}}
+ \expandafter\def\csname simpleicon@seaticon\endcsname {\simpleiconsmaponezero\symbol{166}}
+ \expandafter\def\csname simpleicon@seatgeekicon\endcsname {\simpleiconsmaponezero\symbol{167}}
+ \expandafter\def\csname simpleicon@securityscorecardicon\endcsname {\simpleiconsmaponezero\symbol{168}}
+ \expandafter\def\csname simpleicon@sefariaicon\endcsname {\simpleiconsmaponezero\symbol{169}}
+ \expandafter\def\csname simpleicon@segaicon\endcsname {\simpleiconsmaponezero\symbol{170}}
+ \expandafter\def\csname simpleicon@seleniumicon\endcsname {\simpleiconsmaponezero\symbol{171}}
+ \expandafter\def\csname simpleicon@sellfyicon\endcsname {\simpleiconsmaponezero\symbol{172}}
+ \expandafter\def\csname simpleicon@semanticreleaseicon\endcsname {\simpleiconsmaponezero\symbol{173}}
+ \expandafter\def\csname simpleicon@semanticscholaricon\endcsname {\simpleiconsmaponezero\symbol{174}}
+ \expandafter\def\csname simpleicon@semanticuiicon\endcsname {\simpleiconsmaponezero\symbol{175}}
+ \expandafter\def\csname simpleicon@semanticuireacticon\endcsname {\simpleiconsmaponezero\symbol{176}}
+ \expandafter\def\csname simpleicon@semanticwebicon\endcsname {\simpleiconsmaponezero\symbol{177}}
+ \expandafter\def\csname simpleicon@semaphoreciicon\endcsname {\simpleiconsmaponezero\symbol{178}}
+ \expandafter\def\csname simpleicon@semrushicon\endcsname {\simpleiconsmaponezero\symbol{179}}
+ \expandafter\def\csname simpleicon@semvericon\endcsname {\simpleiconsmaponezero\symbol{180}}
+ \expandafter\def\csname simpleicon@senchaicon\endcsname {\simpleiconsmaponezero\symbol{181}}
+ \expandafter\def\csname simpleicon@sennheisericon\endcsname {\simpleiconsmaponezero\symbol{182}}
+ \expandafter\def\csname simpleicon@sensuicon\endcsname {\simpleiconsmaponezero\symbol{183}}
+ \expandafter\def\csname simpleicon@sentryicon\endcsname {\simpleiconsmaponezero\symbol{184}}
+ \expandafter\def\csname simpleicon@sepaicon\endcsname {\simpleiconsmaponezero\symbol{185}}
+ \expandafter\def\csname simpleicon@sequelizeicon\endcsname {\simpleiconsmaponezero\symbol{186}}
+ \expandafter\def\csname simpleicon@serverfaulticon\endcsname {\simpleiconsmaponezero\symbol{187}}
+ \expandafter\def\csname simpleicon@serverlessicon\endcsname {\simpleiconsmaponezero\symbol{188}}
+ \expandafter\def\csname simpleicon@sessionicon\endcsname {\simpleiconsmaponezero\symbol{189}}
+ \expandafter\def\csname simpleicon@sessionizeicon\endcsname {\simpleiconsmaponezero\symbol{190}}
+ \expandafter\def\csname simpleicon@setappicon\endcsname {\simpleiconsmaponezero\symbol{191}}
+ \expandafter\def\csname simpleicon@sfmlicon\endcsname {\simpleiconsmaponezero\symbol{192}}
+ \expandafter\def\csname simpleicon@shadcnuiicon\endcsname {\simpleiconsmaponezero\symbol{193}}
+ \expandafter\def\csname simpleicon@shadowicon\endcsname {\simpleiconsmaponezero\symbol{194}}
+ \expandafter\def\csname simpleicon@shanghaimetroicon\endcsname {\simpleiconsmaponezero\symbol{195}}
+ \expandafter\def\csname simpleicon@sharexicon\endcsname {\simpleiconsmaponezero\symbol{196}}
+ \expandafter\def\csname simpleicon@sharpicon\endcsname {\simpleiconsmaponezero\symbol{197}}
+ \expandafter\def\csname simpleicon@shazamicon\endcsname {\simpleiconsmaponezero\symbol{198}}
+ \expandafter\def\csname simpleicon@shellicon\endcsname {\simpleiconsmaponezero\symbol{199}}
+ \expandafter\def\csname simpleicon@shellyicon\endcsname {\simpleiconsmaponezero\symbol{200}}
+ \expandafter\def\csname simpleicon@shenzhenmetroicon\endcsname {\simpleiconsmaponezero\symbol{201}}
+ \expandafter\def\csname simpleicon@shieldsdotioicon\endcsname {\simpleiconsmaponezero\symbol{202}}
+ \expandafter\def\csname simpleicon@shikimoriicon\endcsname {\simpleiconsmaponezero\symbol{203}}
+ \expandafter\def\csname simpleicon@shopeeicon\endcsname {\simpleiconsmaponezero\symbol{204}}
+ \expandafter\def\csname simpleicon@shopifyicon\endcsname {\simpleiconsmaponezero\symbol{205}}
+ \expandafter\def\csname simpleicon@shopwareicon\endcsname {\simpleiconsmaponezero\symbol{206}}
+ \expandafter\def\csname simpleicon@shortcuticon\endcsname {\simpleiconsmaponezero\symbol{207}}
+ \expandafter\def\csname simpleicon@showpadicon\endcsname {\simpleiconsmaponezero\symbol{208}}
+ \expandafter\def\csname simpleicon@showtimeicon\endcsname {\simpleiconsmaponezero\symbol{209}}
+ \expandafter\def\csname simpleicon@showwcaseicon\endcsname {\simpleiconsmaponezero\symbol{210}}
+ \expandafter\def\csname simpleicon@shutterstockicon\endcsname {\simpleiconsmaponezero\symbol{211}}
+ \expandafter\def\csname simpleicon@sidekiqicon\endcsname {\simpleiconsmaponezero\symbol{212}}
+ \expandafter\def\csname simpleicon@sidequesticon\endcsname {\simpleiconsmaponezero\symbol{213}}
+ \expandafter\def\csname simpleicon@siemensicon\endcsname {\simpleiconsmaponezero\symbol{214}}
+ \expandafter\def\csname simpleicon@sifiveicon\endcsname {\simpleiconsmaponezero\symbol{215}}
+ \expandafter\def\csname simpleicon@signalicon\endcsname {\simpleiconsmaponezero\symbol{216}}
+ \expandafter\def\csname simpleicon@similarwebicon\endcsname {\simpleiconsmaponezero\symbol{217}}
+ \expandafter\def\csname simpleicon@simklicon\endcsname {\simpleiconsmaponezero\symbol{218}}
+ \expandafter\def\csname simpleicon@simpleanalyticsicon\endcsname {\simpleiconsmaponezero\symbol{219}}
+ \expandafter\def\csname simpleicon@simpleiconsicon\endcsname {\simpleiconsmaponezero\symbol{220}}
+ \expandafter\def\csname simpleicon@simpleloginicon\endcsname {\simpleiconsmaponezero\symbol{221}}
+ \expandafter\def\csname simpleicon@simplenoteicon\endcsname {\simpleiconsmaponezero\symbol{222}}
+ \expandafter\def\csname simpleicon@sinaweiboicon\endcsname {\simpleiconsmaponezero\symbol{223}}
+ \expandafter\def\csname simpleicon@singaporeairlinesicon\endcsname {\simpleiconsmaponezero\symbol{224}}
+ \expandafter\def\csname simpleicon@singlestoreicon\endcsname {\simpleiconsmaponezero\symbol{225}}
+ \expandafter\def\csname simpleicon@sitecoreicon\endcsname {\simpleiconsmaponezero\symbol{226}}
+ \expandafter\def\csname simpleicon@sitepointicon\endcsname {\simpleiconsmaponezero\symbol{227}}
+ \expandafter\def\csname simpleicon@siyuanicon\endcsname {\simpleiconsmaponezero\symbol{228}}
+ \expandafter\def\csname simpleicon@skaffoldicon\endcsname {\simpleiconsmaponezero\symbol{229}}
+ \expandafter\def\csname simpleicon@sketchicon\endcsname {\simpleiconsmaponezero\symbol{230}}
+ \expandafter\def\csname simpleicon@sketchfabicon\endcsname {\simpleiconsmaponezero\symbol{231}}
+ \expandafter\def\csname simpleicon@sketchupicon\endcsname {\simpleiconsmaponezero\symbol{232}}
+ \expandafter\def\csname simpleicon@skillshareicon\endcsname {\simpleiconsmaponezero\symbol{233}}
+ \expandafter\def\csname simpleicon@skodaicon\endcsname {\simpleiconsmaponezero\symbol{234}}
+ \expandafter\def\csname simpleicon@skyicon\endcsname {\simpleiconsmaponezero\symbol{235}}
+ \expandafter\def\csname simpleicon@skypackicon\endcsname {\simpleiconsmaponezero\symbol{236}}
+ \expandafter\def\csname simpleicon@skyrockicon\endcsname {\simpleiconsmaponezero\symbol{237}}
+ \expandafter\def\csname simpleicon@slackicon\endcsname {\simpleiconsmaponezero\symbol{238}}
+ \expandafter\def\csname simpleicon@slackwareicon\endcsname {\simpleiconsmaponezero\symbol{239}}
+ \expandafter\def\csname simpleicon@slashdoticon\endcsname {\simpleiconsmaponezero\symbol{240}}
+ \expandafter\def\csname simpleicon@slickpicicon\endcsname {\simpleiconsmaponezero\symbol{241}}
+ \expandafter\def\csname simpleicon@slidesicon\endcsname {\simpleiconsmaponezero\symbol{242}}
+ \expandafter\def\csname simpleicon@slideshareicon\endcsname {\simpleiconsmaponezero\symbol{243}}
+ \expandafter\def\csname simpleicon@slinticon\endcsname {\simpleiconsmaponezero\symbol{244}}
+ \expandafter\def\csname simpleicon@smarticon\endcsname {\simpleiconsmaponezero\symbol{245}}
+ \expandafter\def\csname simpleicon@smartthingsicon\endcsname {\simpleiconsmaponezero\symbol{246}}
+ \expandafter\def\csname simpleicon@smashdotggicon\endcsname {\simpleiconsmaponezero\symbol{247}}
+ \expandafter\def\csname simpleicon@smashingmagazineicon\endcsname {\simpleiconsmaponezero\symbol{248}}
+ \expandafter\def\csname simpleicon@smrticon\endcsname {\simpleiconsmaponezero\symbol{249}}
+ \expandafter\def\csname simpleicon@smugmugicon\endcsname {\simpleiconsmaponezero\symbol{250}}
+ \expandafter\def\csname simpleicon@snapchaticon\endcsname {\simpleiconsmaponezero\symbol{251}}
+ \expandafter\def\csname simpleicon@snapcrafticon\endcsname {\simpleiconsmaponezero\symbol{252}}
+ \expandafter\def\csname simpleicon@sncficon\endcsname {\simpleiconsmaponezero\symbol{253}}
+ \expandafter\def\csname simpleicon@snorticon\endcsname {\simpleiconsmaponezero\symbol{254}}
+ \expandafter\def\csname simpleicon@snowflakeicon\endcsname {\simpleiconsmaponezero\symbol{255}}
+ \expandafter\def\csname simpleicon@snowpackicon\endcsname {\simpleiconsmaponeone\symbol{0}}
+ \expandafter\def\csname simpleicon@snykicon\endcsname {\simpleiconsmaponeone\symbol{1}}
+ \expandafter\def\csname simpleicon@socialbladeicon\endcsname {\simpleiconsmaponeone\symbol{2}}
+ \expandafter\def\csname simpleicon@society6icon\endcsname {\simpleiconsmaponeone\symbol{3}}
+ \expandafter\def\csname simpleicon@socketdotioicon\endcsname {\simpleiconsmaponeone\symbol{4}}
+ \expandafter\def\csname simpleicon@softpediaicon\endcsname {\simpleiconsmaponeone\symbol{5}}
+ \expandafter\def\csname simpleicon@sogouicon\endcsname {\simpleiconsmaponeone\symbol{6}}
+ \expandafter\def\csname simpleicon@solanaicon\endcsname {\simpleiconsmaponeone\symbol{7}}
+ \expandafter\def\csname simpleicon@solidicon\endcsname {\simpleiconsmaponeone\symbol{8}}
+ \expandafter\def\csname simpleicon@solidityicon\endcsname {\simpleiconsmaponeone\symbol{9}}
+ \expandafter\def\csname simpleicon@sololearnicon\endcsname {\simpleiconsmaponeone\symbol{10}}
+ \expandafter\def\csname simpleicon@solusicon\endcsname {\simpleiconsmaponeone\symbol{11}}
+ \expandafter\def\csname simpleicon@sonaricon\endcsname {\simpleiconsmaponeone\symbol{12}}
+ \expandafter\def\csname simpleicon@sonarcloudicon\endcsname {\simpleiconsmaponeone\symbol{13}}
+ \expandafter\def\csname simpleicon@sonarlinticon\endcsname {\simpleiconsmaponeone\symbol{14}}
+ \expandafter\def\csname simpleicon@sonarqubeicon\endcsname {\simpleiconsmaponeone\symbol{15}}
+ \expandafter\def\csname simpleicon@sonarricon\endcsname {\simpleiconsmaponeone\symbol{16}}
+ \expandafter\def\csname simpleicon@sonatypeicon\endcsname {\simpleiconsmaponeone\symbol{17}}
+ \expandafter\def\csname simpleicon@songkickicon\endcsname {\simpleiconsmaponeone\symbol{18}}
+ \expandafter\def\csname simpleicon@songodaicon\endcsname {\simpleiconsmaponeone\symbol{19}}
+ \expandafter\def\csname simpleicon@sonicwallicon\endcsname {\simpleiconsmaponeone\symbol{20}}
+ \expandafter\def\csname simpleicon@sonosicon\endcsname {\simpleiconsmaponeone\symbol{21}}
+ \expandafter\def\csname simpleicon@sonyicon\endcsname {\simpleiconsmaponeone\symbol{22}}
+ \expandafter\def\csname simpleicon@sorianaicon\endcsname {\simpleiconsmaponeone\symbol{23}}
+ \expandafter\def\csname simpleicon@soundchartsicon\endcsname {\simpleiconsmaponeone\symbol{24}}
+ \expandafter\def\csname simpleicon@soundcloudicon\endcsname {\simpleiconsmaponeone\symbol{25}}
+ \expandafter\def\csname simpleicon@sourceengineicon\endcsname {\simpleiconsmaponeone\symbol{26}}
+ \expandafter\def\csname simpleicon@sourceforgeicon\endcsname {\simpleiconsmaponeone\symbol{27}}
+ \expandafter\def\csname simpleicon@sourcehuticon\endcsname {\simpleiconsmaponeone\symbol{28}}
+ \expandafter\def\csname simpleicon@sourcetreeicon\endcsname {\simpleiconsmaponeone\symbol{29}}
+ \expandafter\def\csname simpleicon@southwestairlinesicon\endcsname {\simpleiconsmaponeone\symbol{30}}
+ \expandafter\def\csname simpleicon@spacemacsicon\endcsname {\simpleiconsmaponeone\symbol{31}}
+ \expandafter\def\csname simpleicon@spaceshipicon\endcsname {\simpleiconsmaponeone\symbol{32}}
+ \expandafter\def\csname simpleicon@spacexicon\endcsname {\simpleiconsmaponeone\symbol{33}}
+ \expandafter\def\csname simpleicon@spacyicon\endcsname {\simpleiconsmaponeone\symbol{34}}
+ \expandafter\def\csname simpleicon@sparkaricon\endcsname {\simpleiconsmaponeone\symbol{35}}
+ \expandafter\def\csname simpleicon@sparkasseicon\endcsname {\simpleiconsmaponeone\symbol{36}}
+ \expandafter\def\csname simpleicon@sparkfunicon\endcsname {\simpleiconsmaponeone\symbol{37}}
+ \expandafter\def\csname simpleicon@sparkposticon\endcsname {\simpleiconsmaponeone\symbol{38}}
+ \expandafter\def\csname simpleicon@spdxicon\endcsname {\simpleiconsmaponeone\symbol{39}}
+ \expandafter\def\csname simpleicon@speakerdeckicon\endcsname {\simpleiconsmaponeone\symbol{40}}
+ \expandafter\def\csname simpleicon@spectrumicon\endcsname {\simpleiconsmaponeone\symbol{41}}
+ \expandafter\def\csname simpleicon@speedtesticon\endcsname {\simpleiconsmaponeone\symbol{42}}
+ \expandafter\def\csname simpleicon@speedypageicon\endcsname {\simpleiconsmaponeone\symbol{43}}
+ \expandafter\def\csname simpleicon@sphinxicon\endcsname {\simpleiconsmaponeone\symbol{44}}
+ \expandafter\def\csname simpleicon@spigotmcicon\endcsname {\simpleiconsmaponeone\symbol{45}}
+ \expandafter\def\csname simpleicon@spineicon\endcsname {\simpleiconsmaponeone\symbol{46}}
+ \expandafter\def\csname simpleicon@spinnakericon\endcsname {\simpleiconsmaponeone\symbol{47}}
+ \expandafter\def\csname simpleicon@spinrillaicon\endcsname {\simpleiconsmaponeone\symbol{48}}
+ \expandafter\def\csname simpleicon@splunkicon\endcsname {\simpleiconsmaponeone\symbol{49}}
+ \expandafter\def\csname simpleicon@spojicon\endcsname {\simpleiconsmaponeone\symbol{50}}
+ \expandafter\def\csname simpleicon@spondicon\endcsname {\simpleiconsmaponeone\symbol{51}}
+ \expandafter\def\csname simpleicon@spotifyicon\endcsname {\simpleiconsmaponeone\symbol{52}}
+ \expandafter\def\csname simpleicon@spotlighticon\endcsname {\simpleiconsmaponeone\symbol{53}}
+ \expandafter\def\csname simpleicon@spreadshirticon\endcsname {\simpleiconsmaponeone\symbol{54}}
+ \expandafter\def\csname simpleicon@spreakericon\endcsname {\simpleiconsmaponeone\symbol{55}}
+ \expandafter\def\csname simpleicon@springicon\endcsname {\simpleiconsmaponeone\symbol{56}}
+ \expandafter\def\csname simpleicon@springcreatorsicon\endcsname {\simpleiconsmaponeone\symbol{57}}
+ \expandafter\def\csname simpleicon@springbooticon\endcsname {\simpleiconsmaponeone\symbol{58}}
+ \expandafter\def\csname simpleicon@springsecurityicon\endcsname {\simpleiconsmaponeone\symbol{59}}
+ \expandafter\def\csname simpleicon@spyderideicon\endcsname {\simpleiconsmaponeone\symbol{60}}
+ \expandafter\def\csname simpleicon@sqlalchemyicon\endcsname {\simpleiconsmaponeone\symbol{61}}
+ \expandafter\def\csname simpleicon@sqliteicon\endcsname {\simpleiconsmaponeone\symbol{62}}
+ \expandafter\def\csname simpleicon@squareicon\endcsname {\simpleiconsmaponeone\symbol{63}}
+ \expandafter\def\csname simpleicon@squareenixicon\endcsname {\simpleiconsmaponeone\symbol{64}}
+ \expandafter\def\csname simpleicon@squarespaceicon\endcsname {\simpleiconsmaponeone\symbol{65}}
+ \expandafter\def\csname simpleicon@srgssricon\endcsname {\simpleiconsmaponeone\symbol{66}}
+ \expandafter\def\csname simpleicon@ssrnicon\endcsname {\simpleiconsmaponeone\symbol{67}}
+ \expandafter\def\csname simpleicon@ssticon\endcsname {\simpleiconsmaponeone\symbol{68}}
+ \expandafter\def\csname simpleicon@stackbiticon\endcsname {\simpleiconsmaponeone\symbol{69}}
+ \expandafter\def\csname simpleicon@stackblitzicon\endcsname {\simpleiconsmaponeone\symbol{70}}
+ \expandafter\def\csname simpleicon@stackediticon\endcsname {\simpleiconsmaponeone\symbol{71}}
+ \expandafter\def\csname simpleicon@stackexchangeicon\endcsname {\simpleiconsmaponeone\symbol{72}}
+ \expandafter\def\csname simpleicon@stackhawkicon\endcsname {\simpleiconsmaponeone\symbol{73}}
+ \expandafter\def\csname simpleicon@stackoverflowicon\endcsname {\simpleiconsmaponeone\symbol{74}}
+ \expandafter\def\csname simpleicon@stackpathicon\endcsname {\simpleiconsmaponeone\symbol{75}}
+ \expandafter\def\csname simpleicon@stackshareicon\endcsname {\simpleiconsmaponeone\symbol{76}}
+ \expandafter\def\csname simpleicon@stadiaicon\endcsname {\simpleiconsmaponeone\symbol{77}}
+ \expandafter\def\csname simpleicon@staffbaseicon\endcsname {\simpleiconsmaponeone\symbol{78}}
+ \expandafter\def\csname simpleicon@stagetimericon\endcsname {\simpleiconsmaponeone\symbol{79}}
+ \expandafter\def\csname simpleicon@standardjsicon\endcsname {\simpleiconsmaponeone\symbol{80}}
+ \expandafter\def\csname simpleicon@standardresumeicon\endcsname {\simpleiconsmaponeone\symbol{81}}
+ \expandafter\def\csname simpleicon@starbucksicon\endcsname {\simpleiconsmaponeone\symbol{82}}
+ \expandafter\def\csname simpleicon@stardockicon\endcsname {\simpleiconsmaponeone\symbol{83}}
+ \expandafter\def\csname simpleicon@starlingbankicon\endcsname {\simpleiconsmaponeone\symbol{84}}
+ \expandafter\def\csname simpleicon@starshipicon\endcsname {\simpleiconsmaponeone\symbol{85}}
+ \expandafter\def\csname simpleicon@startrekicon\endcsname {\simpleiconsmaponeone\symbol{86}}
+ \expandafter\def\csname simpleicon@starzicon\endcsname {\simpleiconsmaponeone\symbol{87}}
+ \expandafter\def\csname simpleicon@statamicicon\endcsname {\simpleiconsmaponeone\symbol{88}}
+ \expandafter\def\csname simpleicon@statistaicon\endcsname {\simpleiconsmaponeone\symbol{89}}
+ \expandafter\def\csname simpleicon@statuspageicon\endcsname {\simpleiconsmaponeone\symbol{90}}
+ \expandafter\def\csname simpleicon@statuspalicon\endcsname {\simpleiconsmaponeone\symbol{91}}
+ \expandafter\def\csname simpleicon@steamicon\endcsname {\simpleiconsmaponeone\symbol{92}}
+ \expandafter\def\csname simpleicon@steamdbicon\endcsname {\simpleiconsmaponeone\symbol{93}}
+ \expandafter\def\csname simpleicon@steamdeckicon\endcsname {\simpleiconsmaponeone\symbol{94}}
+ \expandafter\def\csname simpleicon@steamworksicon\endcsname {\simpleiconsmaponeone\symbol{95}}
+ \expandafter\def\csname simpleicon@steelseriesicon\endcsname {\simpleiconsmaponeone\symbol{96}}
+ \expandafter\def\csname simpleicon@steemicon\endcsname {\simpleiconsmaponeone\symbol{97}}
+ \expandafter\def\csname simpleicon@steemiticon\endcsname {\simpleiconsmaponeone\symbol{98}}
+ \expandafter\def\csname simpleicon@steinbergicon\endcsname {\simpleiconsmaponeone\symbol{99}}
+ \expandafter\def\csname simpleicon@stellaricon\endcsname {\simpleiconsmaponeone\symbol{100}}
+ \expandafter\def\csname simpleicon@stencilicon\endcsname {\simpleiconsmaponeone\symbol{101}}
+ \expandafter\def\csname simpleicon@stencylicon\endcsname {\simpleiconsmaponeone\symbol{102}}
+ \expandafter\def\csname simpleicon@stimulusicon\endcsname {\simpleiconsmaponeone\symbol{103}}
+ \expandafter\def\csname simpleicon@stitchericon\endcsname {\simpleiconsmaponeone\symbol{104}}
+ \expandafter\def\csname simpleicon@stmicroelectronicsicon\endcsname {\simpleiconsmaponeone\symbol{105}}
+ \expandafter\def\csname simpleicon@stockxicon\endcsname {\simpleiconsmaponeone\symbol{106}}
+ \expandafter\def\csname simpleicon@stopstalkicon\endcsname {\simpleiconsmaponeone\symbol{107}}
+ \expandafter\def\csname simpleicon@storyblokicon\endcsname {\simpleiconsmaponeone\symbol{108}}
+ \expandafter\def\csname simpleicon@storybookicon\endcsname {\simpleiconsmaponeone\symbol{109}}
+ \expandafter\def\csname simpleicon@strapiicon\endcsname {\simpleiconsmaponeone\symbol{110}}
+ \expandafter\def\csname simpleicon@stravaicon\endcsname {\simpleiconsmaponeone\symbol{111}}
+ \expandafter\def\csname simpleicon@streamlabsicon\endcsname {\simpleiconsmaponeone\symbol{112}}
+ \expandafter\def\csname simpleicon@streamliticon\endcsname {\simpleiconsmaponeone\symbol{113}}
+ \expandafter\def\csname simpleicon@streamrunnersicon\endcsname {\simpleiconsmaponeone\symbol{114}}
+ \expandafter\def\csname simpleicon@stripeicon\endcsname {\simpleiconsmaponeone\symbol{115}}
+ \expandafter\def\csname simpleicon@strongswanicon\endcsname {\simpleiconsmaponeone\symbol{116}}
+ \expandafter\def\csname simpleicon@strykericon\endcsname {\simpleiconsmaponeone\symbol{117}}
+ \expandafter\def\csname simpleicon@stubhubicon\endcsname {\simpleiconsmaponeone\symbol{118}}
+ \expandafter\def\csname simpleicon@studio3ticon\endcsname {\simpleiconsmaponeone\symbol{119}}
+ \expandafter\def\csname simpleicon@studyverseicon\endcsname {\simpleiconsmaponeone\symbol{120}}
+ \expandafter\def\csname simpleicon@styledcomponentsicon\endcsname {\simpleiconsmaponeone\symbol{121}}
+ \expandafter\def\csname simpleicon@stylelinticon\endcsname {\simpleiconsmaponeone\symbol{122}}
+ \expandafter\def\csname simpleicon@styleshareicon\endcsname {\simpleiconsmaponeone\symbol{123}}
+ \expandafter\def\csname simpleicon@stylusicon\endcsname {\simpleiconsmaponeone\symbol{124}}
+ \expandafter\def\csname simpleicon@subaruicon\endcsname {\simpleiconsmaponeone\symbol{125}}
+ \expandafter\def\csname simpleicon@sublimetexticon\endcsname {\simpleiconsmaponeone\symbol{126}}
+ \expandafter\def\csname simpleicon@substackicon\endcsname {\simpleiconsmaponeone\symbol{127}}
+ \expandafter\def\csname simpleicon@subtitleediticon\endcsname {\simpleiconsmaponeone\symbol{128}}
+ \expandafter\def\csname simpleicon@subversionicon\endcsname {\simpleiconsmaponeone\symbol{129}}
+ \expandafter\def\csname simpleicon@sucklessicon\endcsname {\simpleiconsmaponeone\symbol{130}}
+ \expandafter\def\csname simpleicon@sumologicicon\endcsname {\simpleiconsmaponeone\symbol{131}}
+ \expandafter\def\csname simpleicon@sunoicon\endcsname {\simpleiconsmaponeone\symbol{132}}
+ \expandafter\def\csname simpleicon@sunriseicon\endcsname {\simpleiconsmaponeone\symbol{133}}
+ \expandafter\def\csname simpleicon@supabaseicon\endcsname {\simpleiconsmaponeone\symbol{134}}
+ \expandafter\def\csname simpleicon@supercreaseicon\endcsname {\simpleiconsmaponeone\symbol{135}}
+ \expandafter\def\csname simpleicon@supermicroicon\endcsname {\simpleiconsmaponeone\symbol{136}}
+ \expandafter\def\csname simpleicon@superusericon\endcsname {\simpleiconsmaponeone\symbol{137}}
+ \expandafter\def\csname simpleicon@surrealdbicon\endcsname {\simpleiconsmaponeone\symbol{138}}
+ \expandafter\def\csname simpleicon@surveymonkeyicon\endcsname {\simpleiconsmaponeone\symbol{139}}
+ \expandafter\def\csname simpleicon@suseicon\endcsname {\simpleiconsmaponeone\symbol{140}}
+ \expandafter\def\csname simpleicon@suzukiicon\endcsname {\simpleiconsmaponeone\symbol{141}}
+ \expandafter\def\csname simpleicon@svelteicon\endcsname {\simpleiconsmaponeone\symbol{142}}
+ \expandafter\def\csname simpleicon@svgicon\endcsname {\simpleiconsmaponeone\symbol{143}}
+ \expandafter\def\csname simpleicon@svgdotjsicon\endcsname {\simpleiconsmaponeone\symbol{144}}
+ \expandafter\def\csname simpleicon@svgoicon\endcsname {\simpleiconsmaponeone\symbol{145}}
+ \expandafter\def\csname simpleicon@svgtraceicon\endcsname {\simpleiconsmaponeone\symbol{146}}
+ \expandafter\def\csname simpleicon@swaggericon\endcsname {\simpleiconsmaponeone\symbol{147}}
+ \expandafter\def\csname simpleicon@swarmicon\endcsname {\simpleiconsmaponeone\symbol{148}}
+ \expandafter\def\csname simpleicon@swayicon\endcsname {\simpleiconsmaponeone\symbol{149}}
+ \expandafter\def\csname simpleicon@swcicon\endcsname {\simpleiconsmaponeone\symbol{150}}
+ \expandafter\def\csname simpleicon@swifticon\endcsname {\simpleiconsmaponeone\symbol{151}}
+ \expandafter\def\csname simpleicon@swiggyicon\endcsname {\simpleiconsmaponeone\symbol{152}}
+ \expandafter\def\csname simpleicon@swipericon\endcsname {\simpleiconsmaponeone\symbol{153}}
+ \expandafter\def\csname simpleicon@swricon\endcsname {\simpleiconsmaponeone\symbol{154}}
+ \expandafter\def\csname simpleicon@symantecicon\endcsname {\simpleiconsmaponeone\symbol{155}}
+ \expandafter\def\csname simpleicon@symbolabicon\endcsname {\simpleiconsmaponeone\symbol{156}}
+ \expandafter\def\csname simpleicon@symfonyicon\endcsname {\simpleiconsmaponeone\symbol{157}}
+ \expandafter\def\csname simpleicon@symphonyicon\endcsname {\simpleiconsmaponeone\symbol{158}}
+ \expandafter\def\csname simpleicon@sympyicon\endcsname {\simpleiconsmaponeone\symbol{159}}
+ \expandafter\def\csname simpleicon@syncthingicon\endcsname {\simpleiconsmaponeone\symbol{160}}
+ \expandafter\def\csname simpleicon@synologyicon\endcsname {\simpleiconsmaponeone\symbol{161}}
+ \expandafter\def\csname simpleicon@system76icon\endcsname {\simpleiconsmaponeone\symbol{162}}
+ \expandafter\def\csname simpleicon@tabelogicon\endcsname {\simpleiconsmaponeone\symbol{163}}
+ \expandafter\def\csname simpleicon@tableauicon\endcsname {\simpleiconsmaponeone\symbol{164}}
+ \expandafter\def\csname simpleicon@tablecheckicon\endcsname {\simpleiconsmaponeone\symbol{165}}
+ \expandafter\def\csname simpleicon@tacobellicon\endcsname {\simpleiconsmaponeone\symbol{166}}
+ \expandafter\def\csname simpleicon@tadoicon\endcsname {\simpleiconsmaponeone\symbol{167}}
+ \expandafter\def\csname simpleicon@taichigraphicsicon\endcsname {\simpleiconsmaponeone\symbol{168}}
+ \expandafter\def\csname simpleicon@taichilangicon\endcsname {\simpleiconsmaponeone\symbol{169}}
+ \expandafter\def\csname simpleicon@tailsicon\endcsname {\simpleiconsmaponeone\symbol{170}}
+ \expandafter\def\csname simpleicon@tailscaleicon\endcsname {\simpleiconsmaponeone\symbol{171}}
+ \expandafter\def\csname simpleicon@tailwindcssicon\endcsname {\simpleiconsmaponeone\symbol{172}}
+ \expandafter\def\csname simpleicon@taipyicon\endcsname {\simpleiconsmaponeone\symbol{173}}
+ \expandafter\def\csname simpleicon@taketwointeractivesoftwareicon\endcsname {\simpleiconsmaponeone\symbol{174}}
+ \expandafter\def\csname simpleicon@talendicon\endcsname {\simpleiconsmaponeone\symbol{175}}
+ \expandafter\def\csname simpleicon@talenthouseicon\endcsname {\simpleiconsmaponeone\symbol{176}}
+ \expandafter\def\csname simpleicon@talosicon\endcsname {\simpleiconsmaponeone\symbol{177}}
+ \expandafter\def\csname simpleicon@tamiyaicon\endcsname {\simpleiconsmaponeone\symbol{178}}
+ \expandafter\def\csname simpleicon@tampermonkeyicon\endcsname {\simpleiconsmaponeone\symbol{179}}
+ \expandafter\def\csname simpleicon@taobaoicon\endcsname {\simpleiconsmaponeone\symbol{180}}
+ \expandafter\def\csname simpleicon@tapasicon\endcsname {\simpleiconsmaponeone\symbol{181}}
+ \expandafter\def\csname simpleicon@targeticon\endcsname {\simpleiconsmaponeone\symbol{182}}
+ \expandafter\def\csname simpleicon@taromicon\endcsname {\simpleiconsmaponeone\symbol{183}}
+ \expandafter\def\csname simpleicon@taskicon\endcsname {\simpleiconsmaponeone\symbol{184}}
+ \expandafter\def\csname simpleicon@tasmotaicon\endcsname {\simpleiconsmaponeone\symbol{185}}
+ \expandafter\def\csname simpleicon@tataicon\endcsname {\simpleiconsmaponeone\symbol{186}}
+ \expandafter\def\csname simpleicon@tauriicon\endcsname {\simpleiconsmaponeone\symbol{187}}
+ \expandafter\def\csname simpleicon@taxbuzzicon\endcsname {\simpleiconsmaponeone\symbol{188}}
+ \expandafter\def\csname simpleicon@tcsicon\endcsname {\simpleiconsmaponeone\symbol{189}}
+ \expandafter\def\csname simpleicon@tealicon\endcsname {\simpleiconsmaponeone\symbol{190}}
+ \expandafter\def\csname simpleicon@teamcityicon\endcsname {\simpleiconsmaponeone\symbol{191}}
+ \expandafter\def\csname simpleicon@teamspeakicon\endcsname {\simpleiconsmaponeone\symbol{192}}
+ \expandafter\def\csname simpleicon@teamviewericon\endcsname {\simpleiconsmaponeone\symbol{193}}
+ \expandafter\def\csname simpleicon@techcrunchicon\endcsname {\simpleiconsmaponeone\symbol{194}}
\expandafter\def\csname simpleicon@tedicon\endcsname {\simpleiconsmaponeone\symbol{195}}
\expandafter\def\csname simpleicon@teepublicicon\endcsname {\simpleiconsmaponeone\symbol{196}}
\expandafter\def\csname simpleicon@teespringicon\endcsname {\simpleiconsmaponeone\symbol{197}}
@@ -2779,431 +2779,428 @@
\expandafter\def\csname simpleicon@textpatternicon\endcsname {\simpleiconsmaponeone\symbol{217}}
\expandafter\def\csname simpleicon@tgaicon\endcsname {\simpleiconsmaponeone\symbol{218}}
\expandafter\def\csname simpleicon@thangsicon\endcsname {\simpleiconsmaponeone\symbol{219}}
- \expandafter\def\csname simpleicon@thealgorithmsicon\endcsname {\simpleiconsmaponeone\symbol{220}}
- \expandafter\def\csname simpleicon@theboringcompanyicon\endcsname {\simpleiconsmaponeone\symbol{221}}
- \expandafter\def\csname simpleicon@theconversationicon\endcsname {\simpleiconsmaponeone\symbol{222}}
- \expandafter\def\csname simpleicon@thefinalsicon\endcsname {\simpleiconsmaponeone\symbol{223}}
- \expandafter\def\csname simpleicon@theirishtimesicon\endcsname {\simpleiconsmaponeone\symbol{224}}
- \expandafter\def\csname simpleicon@themightyicon\endcsname {\simpleiconsmaponeone\symbol{225}}
- \expandafter\def\csname simpleicon@themodelsresourceicon\endcsname {\simpleiconsmaponeone\symbol{226}}
- \expandafter\def\csname simpleicon@themoviedatabaseicon\endcsname {\simpleiconsmaponeone\symbol{227}}
- \expandafter\def\csname simpleicon@thenorthfaceicon\endcsname {\simpleiconsmaponeone\symbol{228}}
- \expandafter\def\csname simpleicon@theodinprojecticon\endcsname {\simpleiconsmaponeone\symbol{229}}
- \expandafter\def\csname simpleicon@theregistericon\endcsname {\simpleiconsmaponeone\symbol{230}}
- \expandafter\def\csname simpleicon@thesoundsresourceicon\endcsname {\simpleiconsmaponeone\symbol{231}}
- \expandafter\def\csname simpleicon@thespritersresourceicon\endcsname {\simpleiconsmaponeone\symbol{232}}
- \expandafter\def\csname simpleicon@thewashingtonposticon\endcsname {\simpleiconsmaponeone\symbol{233}}
- \expandafter\def\csname simpleicon@thingiverseicon\endcsname {\simpleiconsmaponeone\symbol{234}}
- \expandafter\def\csname simpleicon@thinkpadicon\endcsname {\simpleiconsmaponeone\symbol{235}}
- \expandafter\def\csname simpleicon@thirdwebicon\endcsname {\simpleiconsmaponeone\symbol{236}}
- \expandafter\def\csname simpleicon@threadlessicon\endcsname {\simpleiconsmaponeone\symbol{237}}
- \expandafter\def\csname simpleicon@threadsicon\endcsname {\simpleiconsmaponeone\symbol{238}}
- \expandafter\def\csname simpleicon@threedotjsicon\endcsname {\simpleiconsmaponeone\symbol{239}}
- \expandafter\def\csname simpleicon@threemaicon\endcsname {\simpleiconsmaponeone\symbol{240}}
- \expandafter\def\csname simpleicon@thumbtackicon\endcsname {\simpleiconsmaponeone\symbol{241}}
- \expandafter\def\csname simpleicon@thunderbirdicon\endcsname {\simpleiconsmaponeone\symbol{242}}
- \expandafter\def\csname simpleicon@thunderstoreicon\endcsname {\simpleiconsmaponeone\symbol{243}}
- \expandafter\def\csname simpleicon@thurgauerkantonalbankicon\endcsname {\simpleiconsmaponeone\symbol{244}}
- \expandafter\def\csname simpleicon@thymeleaficon\endcsname {\simpleiconsmaponeone\symbol{245}}
- \expandafter\def\csname simpleicon@ticketmastericon\endcsname {\simpleiconsmaponeone\symbol{246}}
- \expandafter\def\csname simpleicon@ticktickicon\endcsname {\simpleiconsmaponeone\symbol{247}}
- \expandafter\def\csname simpleicon@tidalicon\endcsname {\simpleiconsmaponeone\symbol{248}}
- \expandafter\def\csname simpleicon@tiddlywikiicon\endcsname {\simpleiconsmaponeone\symbol{249}}
- \expandafter\def\csname simpleicon@tideicon\endcsname {\simpleiconsmaponeone\symbol{250}}
- \expandafter\def\csname simpleicon@tidyverseicon\endcsname {\simpleiconsmaponeone\symbol{251}}
- \expandafter\def\csname simpleicon@tietoevryicon\endcsname {\simpleiconsmaponeone\symbol{252}}
- \expandafter\def\csname simpleicon@tiktokicon\endcsname {\simpleiconsmaponeone\symbol{253}}
- \expandafter\def\csname simpleicon@tildapublishingicon\endcsname {\simpleiconsmaponeone\symbol{254}}
- \expandafter\def\csname simpleicon@tileicon\endcsname {\simpleiconsmaponeone\symbol{255}}
- \expandafter\def\csname simpleicon@timescaleicon\endcsname {\simpleiconsmaponetwo\symbol{0}}
- \expandafter\def\csname simpleicon@tinaicon\endcsname {\simpleiconsmaponetwo\symbol{1}}
- \expandafter\def\csname simpleicon@tindericon\endcsname {\simpleiconsmaponetwo\symbol{2}}
- \expandafter\def\csname simpleicon@tindieicon\endcsname {\simpleiconsmaponetwo\symbol{3}}
- \expandafter\def\csname simpleicon@tinkercadicon\endcsname {\simpleiconsmaponetwo\symbol{4}}
- \expandafter\def\csname simpleicon@tinygradicon\endcsname {\simpleiconsmaponetwo\symbol{5}}
- \expandafter\def\csname simpleicon@tinylettericon\endcsname {\simpleiconsmaponetwo\symbol{6}}
- \expandafter\def\csname simpleicon@tistoryicon\endcsname {\simpleiconsmaponetwo\symbol{7}}
- \expandafter\def\csname simpleicon@tldrawicon\endcsname {\simpleiconsmaponetwo\symbol{8}}
- \expandafter\def\csname simpleicon@tmobileicon\endcsname {\simpleiconsmaponetwo\symbol{9}}
- \expandafter\def\csname simpleicon@tmuxicon\endcsname {\simpleiconsmaponetwo\symbol{10}}
- \expandafter\def\csname simpleicon@todoisticon\endcsname {\simpleiconsmaponetwo\symbol{11}}
- \expandafter\def\csname simpleicon@togglicon\endcsname {\simpleiconsmaponetwo\symbol{12}}
- \expandafter\def\csname simpleicon@toggltrackicon\endcsname {\simpleiconsmaponetwo\symbol{13}}
- \expandafter\def\csname simpleicon@tokyometroicon\endcsname {\simpleiconsmaponetwo\symbol{14}}
- \expandafter\def\csname simpleicon@tollicon\endcsname {\simpleiconsmaponetwo\symbol{15}}
- \expandafter\def\csname simpleicon@tomlicon\endcsname {\simpleiconsmaponetwo\symbol{16}}
- \expandafter\def\csname simpleicon@tomorrowlandicon\endcsname {\simpleiconsmaponetwo\symbol{17}}
- \expandafter\def\csname simpleicon@tonicon\endcsname {\simpleiconsmaponetwo\symbol{18}}
- \expandafter\def\csname simpleicon@topcodericon\endcsname {\simpleiconsmaponetwo\symbol{19}}
- \expandafter\def\csname simpleicon@topdotggicon\endcsname {\simpleiconsmaponetwo\symbol{20}}
- \expandafter\def\csname simpleicon@toptalicon\endcsname {\simpleiconsmaponetwo\symbol{21}}
- \expandafter\def\csname simpleicon@torbrowsericon\endcsname {\simpleiconsmaponetwo\symbol{22}}
- \expandafter\def\csname simpleicon@torprojecticon\endcsname {\simpleiconsmaponetwo\symbol{23}}
- \expandafter\def\csname simpleicon@toshibaicon\endcsname {\simpleiconsmaponetwo\symbol{24}}
- \expandafter\def\csname simpleicon@totvsicon\endcsname {\simpleiconsmaponetwo\symbol{25}}
- \expandafter\def\csname simpleicon@tourboxicon\endcsname {\simpleiconsmaponetwo\symbol{26}}
- \expandafter\def\csname simpleicon@towericon\endcsname {\simpleiconsmaponetwo\symbol{27}}
- \expandafter\def\csname simpleicon@toyotaicon\endcsname {\simpleiconsmaponetwo\symbol{28}}
- \expandafter\def\csname simpleicon@tplinkicon\endcsname {\simpleiconsmaponetwo\symbol{29}}
- \expandafter\def\csname simpleicon@tqdmicon\endcsname {\simpleiconsmaponetwo\symbol{30}}
- \expandafter\def\csname simpleicon@traccaricon\endcsname {\simpleiconsmaponetwo\symbol{31}}
- \expandafter\def\csname simpleicon@tradingviewicon\endcsname {\simpleiconsmaponetwo\symbol{32}}
- \expandafter\def\csname simpleicon@traefikmeshicon\endcsname {\simpleiconsmaponetwo\symbol{33}}
- \expandafter\def\csname simpleicon@traefikproxyicon\endcsname {\simpleiconsmaponetwo\symbol{34}}
- \expandafter\def\csname simpleicon@trailforksicon\endcsname {\simpleiconsmaponetwo\symbol{35}}
- \expandafter\def\csname simpleicon@trainerroadicon\endcsname {\simpleiconsmaponetwo\symbol{36}}
- \expandafter\def\csname simpleicon@trakticon\endcsname {\simpleiconsmaponetwo\symbol{37}}
- \expandafter\def\csname simpleicon@transifexicon\endcsname {\simpleiconsmaponetwo\symbol{38}}
- \expandafter\def\csname simpleicon@transmissionicon\endcsname {\simpleiconsmaponetwo\symbol{39}}
- \expandafter\def\csname simpleicon@transportforirelandicon\endcsname {\simpleiconsmaponetwo\symbol{40}}
- \expandafter\def\csname simpleicon@transportforlondonicon\endcsname {\simpleiconsmaponetwo\symbol{41}}
- \expandafter\def\csname simpleicon@travisciicon\endcsname {\simpleiconsmaponetwo\symbol{42}}
- \expandafter\def\csname simpleicon@treehouseicon\endcsname {\simpleiconsmaponetwo\symbol{43}}
- \expandafter\def\csname simpleicon@trelloicon\endcsname {\simpleiconsmaponetwo\symbol{44}}
- \expandafter\def\csname simpleicon@trendmicroicon\endcsname {\simpleiconsmaponetwo\symbol{45}}
- \expandafter\def\csname simpleicon@treyarchicon\endcsname {\simpleiconsmaponetwo\symbol{46}}
- \expandafter\def\csname simpleicon@tricentisicon\endcsname {\simpleiconsmaponetwo\symbol{47}}
- \expandafter\def\csname simpleicon@triliumicon\endcsname {\simpleiconsmaponetwo\symbol{48}}
- \expandafter\def\csname simpleicon@trillericon\endcsname {\simpleiconsmaponetwo\symbol{49}}
- \expandafter\def\csname simpleicon@trillertvicon\endcsname {\simpleiconsmaponetwo\symbol{50}}
- \expandafter\def\csname simpleicon@trinoicon\endcsname {\simpleiconsmaponetwo\symbol{51}}
- \expandafter\def\csname simpleicon@tripadvisoricon\endcsname {\simpleiconsmaponetwo\symbol{52}}
- \expandafter\def\csname simpleicon@tripdotcomicon\endcsname {\simpleiconsmaponetwo\symbol{53}}
- \expandafter\def\csname simpleicon@trivagoicon\endcsname {\simpleiconsmaponetwo\symbol{54}}
- \expandafter\def\csname simpleicon@trivyicon\endcsname {\simpleiconsmaponetwo\symbol{55}}
- \expandafter\def\csname simpleicon@troveicon\endcsname {\simpleiconsmaponetwo\symbol{56}}
- \expandafter\def\csname simpleicon@trpcicon\endcsname {\simpleiconsmaponetwo\symbol{57}}
- \expandafter\def\csname simpleicon@truenasicon\endcsname {\simpleiconsmaponetwo\symbol{58}}
- \expandafter\def\csname simpleicon@trueupicon\endcsname {\simpleiconsmaponetwo\symbol{59}}
- \expandafter\def\csname simpleicon@truliaicon\endcsname {\simpleiconsmaponetwo\symbol{60}}
- \expandafter\def\csname simpleicon@trustedshopsicon\endcsname {\simpleiconsmaponetwo\symbol{61}}
- \expandafter\def\csname simpleicon@trustpiloticon\endcsname {\simpleiconsmaponetwo\symbol{62}}
- \expandafter\def\csname simpleicon@tryhackmeicon\endcsname {\simpleiconsmaponetwo\symbol{63}}
- \expandafter\def\csname simpleicon@tryitonlineicon\endcsname {\simpleiconsmaponetwo\symbol{64}}
- \expandafter\def\csname simpleicon@tsnodeicon\endcsname {\simpleiconsmaponetwo\symbol{65}}
- \expandafter\def\csname simpleicon@tubiicon\endcsname {\simpleiconsmaponetwo\symbol{66}}
- \expandafter\def\csname simpleicon@tuiicon\endcsname {\simpleiconsmaponetwo\symbol{67}}
- \expandafter\def\csname simpleicon@tumblricon\endcsname {\simpleiconsmaponetwo\symbol{68}}
- \expandafter\def\csname simpleicon@tuneinicon\endcsname {\simpleiconsmaponetwo\symbol{69}}
- \expandafter\def\csname simpleicon@turboicon\endcsname {\simpleiconsmaponetwo\symbol{70}}
- \expandafter\def\csname simpleicon@turborepoicon\endcsname {\simpleiconsmaponetwo\symbol{71}}
- \expandafter\def\csname simpleicon@turbosquidicon\endcsname {\simpleiconsmaponetwo\symbol{72}}
- \expandafter\def\csname simpleicon@turkishairlinesicon\endcsname {\simpleiconsmaponetwo\symbol{73}}
- \expandafter\def\csname simpleicon@tursoicon\endcsname {\simpleiconsmaponetwo\symbol{74}}
- \expandafter\def\csname simpleicon@tutanotaicon\endcsname {\simpleiconsmaponetwo\symbol{75}}
- \expandafter\def\csname simpleicon@tv4playicon\endcsname {\simpleiconsmaponetwo\symbol{76}}
- \expandafter\def\csname simpleicon@tvtimeicon\endcsname {\simpleiconsmaponetwo\symbol{77}}
- \expandafter\def\csname simpleicon@twilioicon\endcsname {\simpleiconsmaponetwo\symbol{78}}
- \expandafter\def\csname simpleicon@twinklyicon\endcsname {\simpleiconsmaponetwo\symbol{79}}
- \expandafter\def\csname simpleicon@twinmotionicon\endcsname {\simpleiconsmaponetwo\symbol{80}}
- \expandafter\def\csname simpleicon@twitchicon\endcsname {\simpleiconsmaponetwo\symbol{81}}
- \expandafter\def\csname simpleicon@typeformicon\endcsname {\simpleiconsmaponetwo\symbol{82}}
- \expandafter\def\csname simpleicon@typeormicon\endcsname {\simpleiconsmaponetwo\symbol{83}}
- \expandafter\def\csname simpleicon@typericon\endcsname {\simpleiconsmaponetwo\symbol{84}}
- \expandafter\def\csname simpleicon@typescripticon\endcsname {\simpleiconsmaponetwo\symbol{85}}
- \expandafter\def\csname simpleicon@typo3icon\endcsname {\simpleiconsmaponetwo\symbol{86}}
- \expandafter\def\csname simpleicon@typsticon\endcsname {\simpleiconsmaponetwo\symbol{87}}
- \expandafter\def\csname simpleicon@ubericon\endcsname {\simpleiconsmaponetwo\symbol{88}}
- \expandafter\def\csname simpleicon@ubereatsicon\endcsname {\simpleiconsmaponetwo\symbol{89}}
- \expandafter\def\csname simpleicon@ubiquitiicon\endcsname {\simpleiconsmaponetwo\symbol{90}}
- \expandafter\def\csname simpleicon@ubisofticon\endcsname {\simpleiconsmaponetwo\symbol{91}}
- \expandafter\def\csname simpleicon@ublockoriginicon\endcsname {\simpleiconsmaponetwo\symbol{92}}
- \expandafter\def\csname simpleicon@ubuntuicon\endcsname {\simpleiconsmaponetwo\symbol{93}}
- \expandafter\def\csname simpleicon@ubuntumateicon\endcsname {\simpleiconsmaponetwo\symbol{94}}
- \expandafter\def\csname simpleicon@udacityicon\endcsname {\simpleiconsmaponetwo\symbol{95}}
- \expandafter\def\csname simpleicon@udemyicon\endcsname {\simpleiconsmaponetwo\symbol{96}}
- \expandafter\def\csname simpleicon@ufcicon\endcsname {\simpleiconsmaponetwo\symbol{97}}
- \expandafter\def\csname simpleicon@uikiticon\endcsname {\simpleiconsmaponetwo\symbol{98}}
- \expandafter\def\csname simpleicon@uipathicon\endcsname {\simpleiconsmaponetwo\symbol{99}}
- \expandafter\def\csname simpleicon@ululeicon\endcsname {\simpleiconsmaponetwo\symbol{100}}
- \expandafter\def\csname simpleicon@umamiicon\endcsname {\simpleiconsmaponetwo\symbol{101}}
- \expandafter\def\csname simpleicon@umbracoicon\endcsname {\simpleiconsmaponetwo\symbol{102}}
- \expandafter\def\csname simpleicon@umlicon\endcsname {\simpleiconsmaponetwo\symbol{103}}
- \expandafter\def\csname simpleicon@unacademyicon\endcsname {\simpleiconsmaponetwo\symbol{104}}
- \expandafter\def\csname simpleicon@underarmouricon\endcsname {\simpleiconsmaponetwo\symbol{105}}
- \expandafter\def\csname simpleicon@underscoredotjsicon\endcsname {\simpleiconsmaponetwo\symbol{106}}
- \expandafter\def\csname simpleicon@undertaleicon\endcsname {\simpleiconsmaponetwo\symbol{107}}
- \expandafter\def\csname simpleicon@unicodeicon\endcsname {\simpleiconsmaponetwo\symbol{108}}
- \expandafter\def\csname simpleicon@unilevericon\endcsname {\simpleiconsmaponetwo\symbol{109}}
- \expandafter\def\csname simpleicon@uniqloicon\endcsname {\simpleiconsmaponetwo\symbol{110}}
- \expandafter\def\csname simpleicon@uniqlojaicon\endcsname {\simpleiconsmaponetwo\symbol{111}}
- \expandafter\def\csname simpleicon@unitedairlinesicon\endcsname {\simpleiconsmaponetwo\symbol{112}}
- \expandafter\def\csname simpleicon@unitednationsicon\endcsname {\simpleiconsmaponetwo\symbol{113}}
- \expandafter\def\csname simpleicon@unityicon\endcsname {\simpleiconsmaponetwo\symbol{114}}
- \expandafter\def\csname simpleicon@unlicenseicon\endcsname {\simpleiconsmaponetwo\symbol{115}}
- \expandafter\def\csname simpleicon@unocssicon\endcsname {\simpleiconsmaponetwo\symbol{116}}
- \expandafter\def\csname simpleicon@unpkgicon\endcsname {\simpleiconsmaponetwo\symbol{117}}
- \expandafter\def\csname simpleicon@unraidicon\endcsname {\simpleiconsmaponetwo\symbol{118}}
- \expandafter\def\csname simpleicon@unrealengineicon\endcsname {\simpleiconsmaponetwo\symbol{119}}
- \expandafter\def\csname simpleicon@unsplashicon\endcsname {\simpleiconsmaponetwo\symbol{120}}
- \expandafter\def\csname simpleicon@untappdicon\endcsname {\simpleiconsmaponetwo\symbol{121}}
- \expandafter\def\csname simpleicon@upcloudicon\endcsname {\simpleiconsmaponetwo\symbol{122}}
- \expandafter\def\csname simpleicon@upholdicon\endcsname {\simpleiconsmaponetwo\symbol{123}}
- \expandafter\def\csname simpleicon@uplabsicon\endcsname {\simpleiconsmaponetwo\symbol{124}}
- \expandafter\def\csname simpleicon@upptimeicon\endcsname {\simpleiconsmaponetwo\symbol{125}}
- \expandafter\def\csname simpleicon@upsicon\endcsname {\simpleiconsmaponetwo\symbol{126}}
- \expandafter\def\csname simpleicon@upstashicon\endcsname {\simpleiconsmaponetwo\symbol{127}}
- \expandafter\def\csname simpleicon@uptimekumaicon\endcsname {\simpleiconsmaponetwo\symbol{128}}
- \expandafter\def\csname simpleicon@uptoboxicon\endcsname {\simpleiconsmaponetwo\symbol{129}}
- \expandafter\def\csname simpleicon@upworkicon\endcsname {\simpleiconsmaponetwo\symbol{130}}
- \expandafter\def\csname simpleicon@uspsicon\endcsname {\simpleiconsmaponetwo\symbol{131}}
- \expandafter\def\csname simpleicon@utorrenticon\endcsname {\simpleiconsmaponetwo\symbol{132}}
- \expandafter\def\csname simpleicon@vicon\endcsname {\simpleiconsmaponetwo\symbol{133}}
- \expandafter\def\csname simpleicon@v2exicon\endcsname {\simpleiconsmaponetwo\symbol{134}}
- \expandafter\def\csname simpleicon@v8icon\endcsname {\simpleiconsmaponetwo\symbol{135}}
- \expandafter\def\csname simpleicon@vaadinicon\endcsname {\simpleiconsmaponetwo\symbol{136}}
- \expandafter\def\csname simpleicon@vagranticon\endcsname {\simpleiconsmaponetwo\symbol{137}}
- \expandafter\def\csname simpleicon@valaicon\endcsname {\simpleiconsmaponetwo\symbol{138}}
- \expandafter\def\csname simpleicon@valoranticon\endcsname {\simpleiconsmaponetwo\symbol{139}}
- \expandafter\def\csname simpleicon@valveicon\endcsname {\simpleiconsmaponetwo\symbol{140}}
- \expandafter\def\csname simpleicon@vaporicon\endcsname {\simpleiconsmaponetwo\symbol{141}}
- \expandafter\def\csname simpleicon@vaulticon\endcsname {\simpleiconsmaponetwo\symbol{142}}
- \expandafter\def\csname simpleicon@vaultwardenicon\endcsname {\simpleiconsmaponetwo\symbol{143}}
- \expandafter\def\csname simpleicon@vauxhallicon\endcsname {\simpleiconsmaponetwo\symbol{144}}
- \expandafter\def\csname simpleicon@vbulletinicon\endcsname {\simpleiconsmaponetwo\symbol{145}}
- \expandafter\def\csname simpleicon@vectaryicon\endcsname {\simpleiconsmaponetwo\symbol{146}}
- \expandafter\def\csname simpleicon@vectorlogozoneicon\endcsname {\simpleiconsmaponetwo\symbol{147}}
- \expandafter\def\csname simpleicon@vectorworksicon\endcsname {\simpleiconsmaponetwo\symbol{148}}
- \expandafter\def\csname simpleicon@veeamicon\endcsname {\simpleiconsmaponetwo\symbol{149}}
- \expandafter\def\csname simpleicon@veedicon\endcsname {\simpleiconsmaponetwo\symbol{150}}
- \expandafter\def\csname simpleicon@veepeeicon\endcsname {\simpleiconsmaponetwo\symbol{151}}
- \expandafter\def\csname simpleicon@vegaicon\endcsname {\simpleiconsmaponetwo\symbol{152}}
- \expandafter\def\csname simpleicon@vegasicon\endcsname {\simpleiconsmaponetwo\symbol{153}}
- \expandafter\def\csname simpleicon@velogicon\endcsname {\simpleiconsmaponetwo\symbol{154}}
- \expandafter\def\csname simpleicon@venmoicon\endcsname {\simpleiconsmaponetwo\symbol{155}}
- \expandafter\def\csname simpleicon@vercelicon\endcsname {\simpleiconsmaponetwo\symbol{156}}
- \expandafter\def\csname simpleicon@verdaccioicon\endcsname {\simpleiconsmaponetwo\symbol{157}}
- \expandafter\def\csname simpleicon@veritasicon\endcsname {\simpleiconsmaponetwo\symbol{158}}
- \expandafter\def\csname simpleicon@verizonicon\endcsname {\simpleiconsmaponetwo\symbol{159}}
- \expandafter\def\csname simpleicon@vespaicon\endcsname {\simpleiconsmaponetwo\symbol{160}}
- \expandafter\def\csname simpleicon@vexxhosticon\endcsname {\simpleiconsmaponetwo\symbol{161}}
- \expandafter\def\csname simpleicon@vfairsicon\endcsname {\simpleiconsmaponetwo\symbol{162}}
- \expandafter\def\csname simpleicon@viadeoicon\endcsname {\simpleiconsmaponetwo\symbol{163}}
- \expandafter\def\csname simpleicon@viaplayicon\endcsname {\simpleiconsmaponetwo\symbol{164}}
- \expandafter\def\csname simpleicon@vibericon\endcsname {\simpleiconsmaponetwo\symbol{165}}
- \expandafter\def\csname simpleicon@vibloicon\endcsname {\simpleiconsmaponetwo\symbol{166}}
- \expandafter\def\csname simpleicon@victoriametricsicon\endcsname {\simpleiconsmaponetwo\symbol{167}}
- \expandafter\def\csname simpleicon@victronenergyicon\endcsname {\simpleiconsmaponetwo\symbol{168}}
- \expandafter\def\csname simpleicon@vimicon\endcsname {\simpleiconsmaponetwo\symbol{169}}
- \expandafter\def\csname simpleicon@vimeoicon\endcsname {\simpleiconsmaponetwo\symbol{170}}
- \expandafter\def\csname simpleicon@vimeolivestreamicon\endcsname {\simpleiconsmaponetwo\symbol{171}}
- \expandafter\def\csname simpleicon@virginicon\endcsname {\simpleiconsmaponetwo\symbol{172}}
- \expandafter\def\csname simpleicon@virginatlanticicon\endcsname {\simpleiconsmaponetwo\symbol{173}}
- \expandafter\def\csname simpleicon@virginmediaicon\endcsname {\simpleiconsmaponetwo\symbol{174}}
- \expandafter\def\csname simpleicon@virtualboxicon\endcsname {\simpleiconsmaponetwo\symbol{175}}
- \expandafter\def\csname simpleicon@virustotalicon\endcsname {\simpleiconsmaponetwo\symbol{176}}
- \expandafter\def\csname simpleicon@visaicon\endcsname {\simpleiconsmaponetwo\symbol{177}}
- \expandafter\def\csname simpleicon@visualbasicicon\endcsname {\simpleiconsmaponetwo\symbol{178}}
- \expandafter\def\csname simpleicon@visualstudioicon\endcsname {\simpleiconsmaponetwo\symbol{179}}
- \expandafter\def\csname simpleicon@visualstudioappcentericon\endcsname {\simpleiconsmaponetwo\symbol{180}}
- \expandafter\def\csname simpleicon@visualstudiocodeicon\endcsname {\simpleiconsmaponetwo\symbol{181}}
- \expandafter\def\csname simpleicon@visxicon\endcsname {\simpleiconsmaponetwo\symbol{182}}
- \expandafter\def\csname simpleicon@viteicon\endcsname {\simpleiconsmaponetwo\symbol{183}}
- \expandafter\def\csname simpleicon@vitepressicon\endcsname {\simpleiconsmaponetwo\symbol{184}}
- \expandafter\def\csname simpleicon@vitessicon\endcsname {\simpleiconsmaponetwo\symbol{185}}
- \expandafter\def\csname simpleicon@vitesticon\endcsname {\simpleiconsmaponetwo\symbol{186}}
- \expandafter\def\csname simpleicon@vivaldiicon\endcsname {\simpleiconsmaponetwo\symbol{187}}
- \expandafter\def\csname simpleicon@vivawalleticon\endcsname {\simpleiconsmaponetwo\symbol{188}}
- \expandafter\def\csname simpleicon@vivinoicon\endcsname {\simpleiconsmaponetwo\symbol{189}}
- \expandafter\def\csname simpleicon@vivinticon\endcsname {\simpleiconsmaponetwo\symbol{190}}
- \expandafter\def\csname simpleicon@vivoicon\endcsname {\simpleiconsmaponetwo\symbol{191}}
- \expandafter\def\csname simpleicon@vkicon\endcsname {\simpleiconsmaponetwo\symbol{192}}
- \expandafter\def\csname simpleicon@vlcmediaplayericon\endcsname {\simpleiconsmaponetwo\symbol{193}}
- \expandafter\def\csname simpleicon@vmwareicon\endcsname {\simpleiconsmaponetwo\symbol{194}}
- \expandafter\def\csname simpleicon@vodafoneicon\endcsname {\simpleiconsmaponetwo\symbol{195}}
- \expandafter\def\csname simpleicon@voidlinuxicon\endcsname {\simpleiconsmaponetwo\symbol{196}}
- \expandafter\def\csname simpleicon@voipdotmsicon\endcsname {\simpleiconsmaponetwo\symbol{197}}
- \expandafter\def\csname simpleicon@volkswagenicon\endcsname {\simpleiconsmaponetwo\symbol{198}}
- \expandafter\def\csname simpleicon@volvoicon\endcsname {\simpleiconsmaponetwo\symbol{199}}
- \expandafter\def\csname simpleicon@vonageicon\endcsname {\simpleiconsmaponetwo\symbol{200}}
- \expandafter\def\csname simpleicon@vorondesignicon\endcsname {\simpleiconsmaponetwo\symbol{201}}
- \expandafter\def\csname simpleicon@vowpalwabbiticon\endcsname {\simpleiconsmaponetwo\symbol{202}}
- \expandafter\def\csname simpleicon@voxicon\endcsname {\simpleiconsmaponetwo\symbol{203}}
- \expandafter\def\csname simpleicon@vscoicon\endcsname {\simpleiconsmaponetwo\symbol{204}}
- \expandafter\def\csname simpleicon@vscodiumicon\endcsname {\simpleiconsmaponetwo\symbol{205}}
- \expandafter\def\csname simpleicon@vtexicon\endcsname {\simpleiconsmaponetwo\symbol{206}}
- \expandafter\def\csname simpleicon@vuedotjsicon\endcsname {\simpleiconsmaponetwo\symbol{207}}
- \expandafter\def\csname simpleicon@vuetifyicon\endcsname {\simpleiconsmaponetwo\symbol{208}}
- \expandafter\def\csname simpleicon@vulkanicon\endcsname {\simpleiconsmaponetwo\symbol{209}}
- \expandafter\def\csname simpleicon@vultricon\endcsname {\simpleiconsmaponetwo\symbol{210}}
- \expandafter\def\csname simpleicon@vyondicon\endcsname {\simpleiconsmaponetwo\symbol{211}}
- \expandafter\def\csname simpleicon@w3schoolsicon\endcsname {\simpleiconsmaponetwo\symbol{212}}
- \expandafter\def\csname simpleicon@wacomicon\endcsname {\simpleiconsmaponetwo\symbol{213}}
- \expandafter\def\csname simpleicon@wagmiicon\endcsname {\simpleiconsmaponetwo\symbol{214}}
- \expandafter\def\csname simpleicon@wagtailicon\endcsname {\simpleiconsmaponetwo\symbol{215}}
- \expandafter\def\csname simpleicon@wailsicon\endcsname {\simpleiconsmaponetwo\symbol{216}}
- \expandafter\def\csname simpleicon@wakatimeicon\endcsname {\simpleiconsmaponetwo\symbol{217}}
- \expandafter\def\csname simpleicon@walkmanicon\endcsname {\simpleiconsmaponetwo\symbol{218}}
- \expandafter\def\csname simpleicon@wallabagicon\endcsname {\simpleiconsmaponetwo\symbol{219}}
- \expandafter\def\csname simpleicon@walletconnecticon\endcsname {\simpleiconsmaponetwo\symbol{220}}
- \expandafter\def\csname simpleicon@walmarticon\endcsname {\simpleiconsmaponetwo\symbol{221}}
- \expandafter\def\csname simpleicon@wantedlyicon\endcsname {\simpleiconsmaponetwo\symbol{222}}
- \expandafter\def\csname simpleicon@wappalyzericon\endcsname {\simpleiconsmaponetwo\symbol{223}}
- \expandafter\def\csname simpleicon@warnerbrosicon\endcsname {\simpleiconsmaponetwo\symbol{224}}
- \expandafter\def\csname simpleicon@warpicon\endcsname {\simpleiconsmaponetwo\symbol{225}}
- \expandafter\def\csname simpleicon@wasabiicon\endcsname {\simpleiconsmaponetwo\symbol{226}}
- \expandafter\def\csname simpleicon@wasmcloudicon\endcsname {\simpleiconsmaponetwo\symbol{227}}
- \expandafter\def\csname simpleicon@wasmericon\endcsname {\simpleiconsmaponetwo\symbol{228}}
- \expandafter\def\csname simpleicon@watchtowericon\endcsname {\simpleiconsmaponetwo\symbol{229}}
- \expandafter\def\csname simpleicon@wattpadicon\endcsname {\simpleiconsmaponetwo\symbol{230}}
- \expandafter\def\csname simpleicon@waylandicon\endcsname {\simpleiconsmaponetwo\symbol{231}}
- \expandafter\def\csname simpleicon@wazeicon\endcsname {\simpleiconsmaponetwo\symbol{232}}
- \expandafter\def\csname simpleicon@wazirxicon\endcsname {\simpleiconsmaponetwo\symbol{233}}
- \expandafter\def\csname simpleicon@wearosicon\endcsname {\simpleiconsmaponetwo\symbol{234}}
- \expandafter\def\csname simpleicon@weasylicon\endcsname {\simpleiconsmaponetwo\symbol{235}}
- \expandafter\def\csname simpleicon@web3dotjsicon\endcsname {\simpleiconsmaponetwo\symbol{236}}
- \expandafter\def\csname simpleicon@webassemblyicon\endcsname {\simpleiconsmaponetwo\symbol{237}}
- \expandafter\def\csname simpleicon@webauthnicon\endcsname {\simpleiconsmaponetwo\symbol{238}}
- \expandafter\def\csname simpleicon@webcomponentsdotorgicon\endcsname {\simpleiconsmaponetwo\symbol{239}}
- \expandafter\def\csname simpleicon@webdriverioicon\endcsname {\simpleiconsmaponetwo\symbol{240}}
- \expandafter\def\csname simpleicon@webexicon\endcsname {\simpleiconsmaponetwo\symbol{241}}
- \expandafter\def\csname simpleicon@webflowicon\endcsname {\simpleiconsmaponetwo\symbol{242}}
- \expandafter\def\csname simpleicon@webglicon\endcsname {\simpleiconsmaponetwo\symbol{243}}
- \expandafter\def\csname simpleicon@weblateicon\endcsname {\simpleiconsmaponetwo\symbol{244}}
- \expandafter\def\csname simpleicon@webminicon\endcsname {\simpleiconsmaponetwo\symbol{245}}
- \expandafter\def\csname simpleicon@webmoneyicon\endcsname {\simpleiconsmaponetwo\symbol{246}}
- \expandafter\def\csname simpleicon@webpackicon\endcsname {\simpleiconsmaponetwo\symbol{247}}
- \expandafter\def\csname simpleicon@webrtcicon\endcsname {\simpleiconsmaponetwo\symbol{248}}
- \expandafter\def\csname simpleicon@webstormicon\endcsname {\simpleiconsmaponetwo\symbol{249}}
- \expandafter\def\csname simpleicon@webtoonicon\endcsname {\simpleiconsmaponetwo\symbol{250}}
- \expandafter\def\csname simpleicon@webtreesicon\endcsname {\simpleiconsmaponetwo\symbol{251}}
- \expandafter\def\csname simpleicon@wechaticon\endcsname {\simpleiconsmaponetwo\symbol{252}}
- \expandafter\def\csname simpleicon@wegameicon\endcsname {\simpleiconsmaponetwo\symbol{253}}
- \expandafter\def\csname simpleicon@weightsandbiasesicon\endcsname {\simpleiconsmaponetwo\symbol{254}}
- \expandafter\def\csname simpleicon@welcometothejungleicon\endcsname {\simpleiconsmaponetwo\symbol{255}}
- \expandafter\def\csname simpleicon@wellfoundicon\endcsname {\simpleiconsmaponethree\symbol{0}}
- \expandafter\def\csname simpleicon@wellsfargoicon\endcsname {\simpleiconsmaponethree\symbol{1}}
- \expandafter\def\csname simpleicon@wemoicon\endcsname {\simpleiconsmaponethree\symbol{2}}
- \expandafter\def\csname simpleicon@westerndigitalicon\endcsname {\simpleiconsmaponethree\symbol{3}}
- \expandafter\def\csname simpleicon@westernunionicon\endcsname {\simpleiconsmaponethree\symbol{4}}
- \expandafter\def\csname simpleicon@wetransfericon\endcsname {\simpleiconsmaponethree\symbol{5}}
- \expandafter\def\csname simpleicon@weztermicon\endcsname {\simpleiconsmaponethree\symbol{6}}
- \expandafter\def\csname simpleicon@wgpuicon\endcsname {\simpleiconsmaponethree\symbol{7}}
- \expandafter\def\csname simpleicon@whatsappicon\endcsname {\simpleiconsmaponethree\symbol{8}}
- \expandafter\def\csname simpleicon@wheniworkicon\endcsname {\simpleiconsmaponethree\symbol{9}}
- \expandafter\def\csname simpleicon@wiiicon\endcsname {\simpleiconsmaponethree\symbol{10}}
- \expandafter\def\csname simpleicon@wiiuicon\endcsname {\simpleiconsmaponethree\symbol{11}}
- \expandafter\def\csname simpleicon@wikidataicon\endcsname {\simpleiconsmaponethree\symbol{12}}
- \expandafter\def\csname simpleicon@wikidotggicon\endcsname {\simpleiconsmaponethree\symbol{13}}
- \expandafter\def\csname simpleicon@wikidotjsicon\endcsname {\simpleiconsmaponethree\symbol{14}}
- \expandafter\def\csname simpleicon@wikimediacommonsicon\endcsname {\simpleiconsmaponethree\symbol{15}}
- \expandafter\def\csname simpleicon@wikimediafoundationicon\endcsname {\simpleiconsmaponethree\symbol{16}}
- \expandafter\def\csname simpleicon@wikipediaicon\endcsname {\simpleiconsmaponethree\symbol{17}}
- \expandafter\def\csname simpleicon@wikiquoteicon\endcsname {\simpleiconsmaponethree\symbol{18}}
- \expandafter\def\csname simpleicon@wikivoyageicon\endcsname {\simpleiconsmaponethree\symbol{19}}
- \expandafter\def\csname simpleicon@winampicon\endcsname {\simpleiconsmaponethree\symbol{20}}
- \expandafter\def\csname simpleicon@windowsicon\endcsname {\simpleiconsmaponethree\symbol{21}}
- \expandafter\def\csname simpleicon@windows10icon\endcsname {\simpleiconsmaponethree\symbol{22}}
- \expandafter\def\csname simpleicon@windows95icon\endcsname {\simpleiconsmaponethree\symbol{23}}
- \expandafter\def\csname simpleicon@windowsterminalicon\endcsname {\simpleiconsmaponethree\symbol{24}}
- \expandafter\def\csname simpleicon@windowsxpicon\endcsname {\simpleiconsmaponethree\symbol{25}}
- \expandafter\def\csname simpleicon@wiproicon\endcsname {\simpleiconsmaponethree\symbol{26}}
- \expandafter\def\csname simpleicon@wireicon\endcsname {\simpleiconsmaponethree\symbol{27}}
- \expandafter\def\csname simpleicon@wireguardicon\endcsname {\simpleiconsmaponethree\symbol{28}}
- \expandafter\def\csname simpleicon@wiresharkicon\endcsname {\simpleiconsmaponethree\symbol{29}}
- \expandafter\def\csname simpleicon@wiseicon\endcsname {\simpleiconsmaponethree\symbol{30}}
- \expandafter\def\csname simpleicon@wishicon\endcsname {\simpleiconsmaponethree\symbol{31}}
- \expandafter\def\csname simpleicon@wistiaicon\endcsname {\simpleiconsmaponethree\symbol{32}}
- \expandafter\def\csname simpleicon@wixicon\endcsname {\simpleiconsmaponethree\symbol{33}}
- \expandafter\def\csname simpleicon@wizzairicon\endcsname {\simpleiconsmaponethree\symbol{34}}
- \expandafter\def\csname simpleicon@wolframicon\endcsname {\simpleiconsmaponethree\symbol{35}}
- \expandafter\def\csname simpleicon@wolframlanguageicon\endcsname {\simpleiconsmaponethree\symbol{36}}
- \expandafter\def\csname simpleicon@wolframmathematicaicon\endcsname {\simpleiconsmaponethree\symbol{37}}
- \expandafter\def\csname simpleicon@wondershareicon\endcsname {\simpleiconsmaponethree\symbol{38}}
- \expandafter\def\csname simpleicon@wondersharefilmoraicon\endcsname {\simpleiconsmaponethree\symbol{39}}
- \expandafter\def\csname simpleicon@wooicon\endcsname {\simpleiconsmaponethree\symbol{40}}
- \expandafter\def\csname simpleicon@woocommerceicon\endcsname {\simpleiconsmaponethree\symbol{41}}
- \expandafter\def\csname simpleicon@wordpressicon\endcsname {\simpleiconsmaponethree\symbol{42}}
- \expandafter\def\csname simpleicon@workplaceicon\endcsname {\simpleiconsmaponethree\symbol{43}}
- \expandafter\def\csname simpleicon@worldhealthorganizationicon\endcsname {\simpleiconsmaponethree\symbol{44}}
- \expandafter\def\csname simpleicon@wpengineicon\endcsname {\simpleiconsmaponethree\symbol{45}}
- \expandafter\def\csname simpleicon@wpexplorericon\endcsname {\simpleiconsmaponethree\symbol{46}}
- \expandafter\def\csname simpleicon@wprocketicon\endcsname {\simpleiconsmaponethree\symbol{47}}
- \expandafter\def\csname simpleicon@writedotasicon\endcsname {\simpleiconsmaponethree\symbol{48}}
- \expandafter\def\csname simpleicon@wweicon\endcsname {\simpleiconsmaponethree\symbol{49}}
- \expandafter\def\csname simpleicon@wwiseicon\endcsname {\simpleiconsmaponethree\symbol{50}}
- \expandafter\def\csname simpleicon@wykopicon\endcsname {\simpleiconsmaponethree\symbol{51}}
- \expandafter\def\csname simpleicon@wyzeicon\endcsname {\simpleiconsmaponethree\symbol{52}}
- \expandafter\def\csname simpleicon@xicon\endcsname {\simpleiconsmaponethree\symbol{53}}
- \expandafter\def\csname simpleicon@xamarinicon\endcsname {\simpleiconsmaponethree\symbol{54}}
- \expandafter\def\csname simpleicon@xamlicon\endcsname {\simpleiconsmaponethree\symbol{55}}
- \expandafter\def\csname simpleicon@xamppicon\endcsname {\simpleiconsmaponethree\symbol{56}}
- \expandafter\def\csname simpleicon@xboxicon\endcsname {\simpleiconsmaponethree\symbol{57}}
- \expandafter\def\csname simpleicon@xcodeicon\endcsname {\simpleiconsmaponethree\symbol{58}}
- \expandafter\def\csname simpleicon@xdadevelopersicon\endcsname {\simpleiconsmaponethree\symbol{59}}
- \expandafter\def\csname simpleicon@xdotorgicon\endcsname {\simpleiconsmaponethree\symbol{60}}
- \expandafter\def\csname simpleicon@xenditicon\endcsname {\simpleiconsmaponethree\symbol{61}}
- \expandafter\def\csname simpleicon@xeroicon\endcsname {\simpleiconsmaponethree\symbol{62}}
- \expandafter\def\csname simpleicon@xfceicon\endcsname {\simpleiconsmaponethree\symbol{63}}
- \expandafter\def\csname simpleicon@xiaohongshuicon\endcsname {\simpleiconsmaponethree\symbol{64}}
- \expandafter\def\csname simpleicon@xiaomiicon\endcsname {\simpleiconsmaponethree\symbol{65}}
- \expandafter\def\csname simpleicon@xingicon\endcsname {\simpleiconsmaponethree\symbol{66}}
- \expandafter\def\csname simpleicon@xmppicon\endcsname {\simpleiconsmaponethree\symbol{67}}
- \expandafter\def\csname simpleicon@xoicon\endcsname {\simpleiconsmaponethree\symbol{68}}
- \expandafter\def\csname simpleicon@xrpicon\endcsname {\simpleiconsmaponethree\symbol{69}}
- \expandafter\def\csname simpleicon@xspliticon\endcsname {\simpleiconsmaponethree\symbol{70}}
- \expandafter\def\csname simpleicon@xstateicon\endcsname {\simpleiconsmaponethree\symbol{71}}
- \expandafter\def\csname simpleicon@yabaiicon\endcsname {\simpleiconsmaponethree\symbol{72}}
- \expandafter\def\csname simpleicon@yaleicon\endcsname {\simpleiconsmaponethree\symbol{73}}
- \expandafter\def\csname simpleicon@yamahacorporationicon\endcsname {\simpleiconsmaponethree\symbol{74}}
- \expandafter\def\csname simpleicon@yamahamotorcorporationicon\endcsname {\simpleiconsmaponethree\symbol{75}}
- \expandafter\def\csname simpleicon@yamlicon\endcsname {\simpleiconsmaponethree\symbol{76}}
- \expandafter\def\csname simpleicon@yammericon\endcsname {\simpleiconsmaponethree\symbol{77}}
- \expandafter\def\csname simpleicon@yandexcloudicon\endcsname {\simpleiconsmaponethree\symbol{78}}
- \expandafter\def\csname simpleicon@yarnicon\endcsname {\simpleiconsmaponethree\symbol{79}}
- \expandafter\def\csname simpleicon@ycombinatoricon\endcsname {\simpleiconsmaponethree\symbol{80}}
- \expandafter\def\csname simpleicon@yelpicon\endcsname {\simpleiconsmaponethree\symbol{81}}
- \expandafter\def\csname simpleicon@yetiicon\endcsname {\simpleiconsmaponethree\symbol{82}}
- \expandafter\def\csname simpleicon@yoasticon\endcsname {\simpleiconsmaponethree\symbol{83}}
- \expandafter\def\csname simpleicon@youtubeicon\endcsname {\simpleiconsmaponethree\symbol{84}}
- \expandafter\def\csname simpleicon@youtubegamingicon\endcsname {\simpleiconsmaponethree\symbol{85}}
- \expandafter\def\csname simpleicon@youtubekidsicon\endcsname {\simpleiconsmaponethree\symbol{86}}
- \expandafter\def\csname simpleicon@youtubemusicicon\endcsname {\simpleiconsmaponethree\symbol{87}}
- \expandafter\def\csname simpleicon@youtubeshortsicon\endcsname {\simpleiconsmaponethree\symbol{88}}
- \expandafter\def\csname simpleicon@youtubestudioicon\endcsname {\simpleiconsmaponethree\symbol{89}}
- \expandafter\def\csname simpleicon@youtubetvicon\endcsname {\simpleiconsmaponethree\symbol{90}}
- \expandafter\def\csname simpleicon@yricon\endcsname {\simpleiconsmaponethree\symbol{91}}
- \expandafter\def\csname simpleicon@yubicoicon\endcsname {\simpleiconsmaponethree\symbol{92}}
- \expandafter\def\csname simpleicon@yunohosticon\endcsname {\simpleiconsmaponethree\symbol{93}}
- \expandafter\def\csname simpleicon@zabkaicon\endcsname {\simpleiconsmaponethree\symbol{94}}
- \expandafter\def\csname simpleicon@zaimicon\endcsname {\simpleiconsmaponethree\symbol{95}}
- \expandafter\def\csname simpleicon@zalandoicon\endcsname {\simpleiconsmaponethree\symbol{96}}
- \expandafter\def\csname simpleicon@zaloicon\endcsname {\simpleiconsmaponethree\symbol{97}}
- \expandafter\def\csname simpleicon@zapicon\endcsname {\simpleiconsmaponethree\symbol{98}}
- \expandafter\def\csname simpleicon@zapiericon\endcsname {\simpleiconsmaponethree\symbol{99}}
- \expandafter\def\csname simpleicon@zaraicon\endcsname {\simpleiconsmaponethree\symbol{100}}
- \expandafter\def\csname simpleicon@zazzleicon\endcsname {\simpleiconsmaponethree\symbol{101}}
- \expandafter\def\csname simpleicon@zcashicon\endcsname {\simpleiconsmaponethree\symbol{102}}
- \expandafter\def\csname simpleicon@zcoolicon\endcsname {\simpleiconsmaponethree\symbol{103}}
- \expandafter\def\csname simpleicon@zdficon\endcsname {\simpleiconsmaponethree\symbol{104}}
- \expandafter\def\csname simpleicon@zebpayicon\endcsname {\simpleiconsmaponethree\symbol{105}}
- \expandafter\def\csname simpleicon@zebratechnologiesicon\endcsname {\simpleiconsmaponethree\symbol{106}}
- \expandafter\def\csname simpleicon@zedindustriesicon\endcsname {\simpleiconsmaponethree\symbol{107}}
- \expandafter\def\csname simpleicon@zelleicon\endcsname {\simpleiconsmaponethree\symbol{108}}
- \expandafter\def\csname simpleicon@zendicon\endcsname {\simpleiconsmaponethree\symbol{109}}
- \expandafter\def\csname simpleicon@zendeskicon\endcsname {\simpleiconsmaponethree\symbol{110}}
- \expandafter\def\csname simpleicon@zennicon\endcsname {\simpleiconsmaponethree\symbol{111}}
- \expandafter\def\csname simpleicon@zenodoicon\endcsname {\simpleiconsmaponethree\symbol{112}}
- \expandafter\def\csname simpleicon@zensaricon\endcsname {\simpleiconsmaponethree\symbol{113}}
- \expandafter\def\csname simpleicon@zerodhaicon\endcsname {\simpleiconsmaponethree\symbol{114}}
- \expandafter\def\csname simpleicon@zerplyicon\endcsname {\simpleiconsmaponethree\symbol{115}}
- \expandafter\def\csname simpleicon@zettlricon\endcsname {\simpleiconsmaponethree\symbol{116}}
- \expandafter\def\csname simpleicon@zhihuicon\endcsname {\simpleiconsmaponethree\symbol{117}}
- \expandafter\def\csname simpleicon@zigicon\endcsname {\simpleiconsmaponethree\symbol{118}}
- \expandafter\def\csname simpleicon@zigbeeicon\endcsname {\simpleiconsmaponethree\symbol{119}}
- \expandafter\def\csname simpleicon@zigbee2mqtticon\endcsname {\simpleiconsmaponethree\symbol{120}}
- \expandafter\def\csname simpleicon@ziggoicon\endcsname {\simpleiconsmaponethree\symbol{121}}
- \expandafter\def\csname simpleicon@zilchicon\endcsname {\simpleiconsmaponethree\symbol{122}}
- \expandafter\def\csname simpleicon@zillowicon\endcsname {\simpleiconsmaponethree\symbol{123}}
- \expandafter\def\csname simpleicon@zincsearchicon\endcsname {\simpleiconsmaponethree\symbol{124}}
- \expandafter\def\csname simpleicon@zingaticon\endcsname {\simpleiconsmaponethree\symbol{125}}
- \expandafter\def\csname simpleicon@zodicon\endcsname {\simpleiconsmaponethree\symbol{126}}
- \expandafter\def\csname simpleicon@zohoicon\endcsname {\simpleiconsmaponethree\symbol{127}}
- \expandafter\def\csname simpleicon@zoipericon\endcsname {\simpleiconsmaponethree\symbol{128}}
- \expandafter\def\csname simpleicon@zomatoicon\endcsname {\simpleiconsmaponethree\symbol{129}}
- \expandafter\def\csname simpleicon@zoomicon\endcsname {\simpleiconsmaponethree\symbol{130}}
- \expandafter\def\csname simpleicon@zorinicon\endcsname {\simpleiconsmaponethree\symbol{131}}
- \expandafter\def\csname simpleicon@zoteroicon\endcsname {\simpleiconsmaponethree\symbol{132}}
- \expandafter\def\csname simpleicon@zshicon\endcsname {\simpleiconsmaponethree\symbol{133}}
- \expandafter\def\csname simpleicon@zulipicon\endcsname {\simpleiconsmaponethree\symbol{134}}
- \expandafter\def\csname simpleicon@zyteicon\endcsname {\simpleiconsmaponethree\symbol{135}} \ No newline at end of file
+ \expandafter\def\csname simpleicon@thanosicon\endcsname {\simpleiconsmaponeone\symbol{220}}
+ \expandafter\def\csname simpleicon@thealgorithmsicon\endcsname {\simpleiconsmaponeone\symbol{221}}
+ \expandafter\def\csname simpleicon@theboringcompanyicon\endcsname {\simpleiconsmaponeone\symbol{222}}
+ \expandafter\def\csname simpleicon@theconversationicon\endcsname {\simpleiconsmaponeone\symbol{223}}
+ \expandafter\def\csname simpleicon@thefinalsicon\endcsname {\simpleiconsmaponeone\symbol{224}}
+ \expandafter\def\csname simpleicon@theguardianicon\endcsname {\simpleiconsmaponeone\symbol{225}}
+ \expandafter\def\csname simpleicon@theirishtimesicon\endcsname {\simpleiconsmaponeone\symbol{226}}
+ \expandafter\def\csname simpleicon@themightyicon\endcsname {\simpleiconsmaponeone\symbol{227}}
+ \expandafter\def\csname simpleicon@themodelsresourceicon\endcsname {\simpleiconsmaponeone\symbol{228}}
+ \expandafter\def\csname simpleicon@themoviedatabaseicon\endcsname {\simpleiconsmaponeone\symbol{229}}
+ \expandafter\def\csname simpleicon@thenorthfaceicon\endcsname {\simpleiconsmaponeone\symbol{230}}
+ \expandafter\def\csname simpleicon@theodinprojecticon\endcsname {\simpleiconsmaponeone\symbol{231}}
+ \expandafter\def\csname simpleicon@theregistericon\endcsname {\simpleiconsmaponeone\symbol{232}}
+ \expandafter\def\csname simpleicon@thesoundsresourceicon\endcsname {\simpleiconsmaponeone\symbol{233}}
+ \expandafter\def\csname simpleicon@thespritersresourceicon\endcsname {\simpleiconsmaponeone\symbol{234}}
+ \expandafter\def\csname simpleicon@thewashingtonposticon\endcsname {\simpleiconsmaponeone\symbol{235}}
+ \expandafter\def\csname simpleicon@theweatherchannelicon\endcsname {\simpleiconsmaponeone\symbol{236}}
+ \expandafter\def\csname simpleicon@thingiverseicon\endcsname {\simpleiconsmaponeone\symbol{237}}
+ \expandafter\def\csname simpleicon@thinkpadicon\endcsname {\simpleiconsmaponeone\symbol{238}}
+ \expandafter\def\csname simpleicon@thirdwebicon\endcsname {\simpleiconsmaponeone\symbol{239}}
+ \expandafter\def\csname simpleicon@threadlessicon\endcsname {\simpleiconsmaponeone\symbol{240}}
+ \expandafter\def\csname simpleicon@threadsicon\endcsname {\simpleiconsmaponeone\symbol{241}}
+ \expandafter\def\csname simpleicon@threedotjsicon\endcsname {\simpleiconsmaponeone\symbol{242}}
+ \expandafter\def\csname simpleicon@threemaicon\endcsname {\simpleiconsmaponeone\symbol{243}}
+ \expandafter\def\csname simpleicon@thumbtackicon\endcsname {\simpleiconsmaponeone\symbol{244}}
+ \expandafter\def\csname simpleicon@thunderbirdicon\endcsname {\simpleiconsmaponeone\symbol{245}}
+ \expandafter\def\csname simpleicon@thunderstoreicon\endcsname {\simpleiconsmaponeone\symbol{246}}
+ \expandafter\def\csname simpleicon@thurgauerkantonalbankicon\endcsname {\simpleiconsmaponeone\symbol{247}}
+ \expandafter\def\csname simpleicon@thymeleaficon\endcsname {\simpleiconsmaponeone\symbol{248}}
+ \expandafter\def\csname simpleicon@ticketmastericon\endcsname {\simpleiconsmaponeone\symbol{249}}
+ \expandafter\def\csname simpleicon@ticktickicon\endcsname {\simpleiconsmaponeone\symbol{250}}
+ \expandafter\def\csname simpleicon@tidalicon\endcsname {\simpleiconsmaponeone\symbol{251}}
+ \expandafter\def\csname simpleicon@tiddlywikiicon\endcsname {\simpleiconsmaponeone\symbol{252}}
+ \expandafter\def\csname simpleicon@tideicon\endcsname {\simpleiconsmaponeone\symbol{253}}
+ \expandafter\def\csname simpleicon@tidyverseicon\endcsname {\simpleiconsmaponeone\symbol{254}}
+ \expandafter\def\csname simpleicon@tietoevryicon\endcsname {\simpleiconsmaponeone\symbol{255}}
+ \expandafter\def\csname simpleicon@tiktokicon\endcsname {\simpleiconsmaponetwo\symbol{0}}
+ \expandafter\def\csname simpleicon@tildapublishingicon\endcsname {\simpleiconsmaponetwo\symbol{1}}
+ \expandafter\def\csname simpleicon@tileicon\endcsname {\simpleiconsmaponetwo\symbol{2}}
+ \expandafter\def\csname simpleicon@timescaleicon\endcsname {\simpleiconsmaponetwo\symbol{3}}
+ \expandafter\def\csname simpleicon@tinaicon\endcsname {\simpleiconsmaponetwo\symbol{4}}
+ \expandafter\def\csname simpleicon@tindericon\endcsname {\simpleiconsmaponetwo\symbol{5}}
+ \expandafter\def\csname simpleicon@tindieicon\endcsname {\simpleiconsmaponetwo\symbol{6}}
+ \expandafter\def\csname simpleicon@tinkercadicon\endcsname {\simpleiconsmaponetwo\symbol{7}}
+ \expandafter\def\csname simpleicon@tinygradicon\endcsname {\simpleiconsmaponetwo\symbol{8}}
+ \expandafter\def\csname simpleicon@tinylettericon\endcsname {\simpleiconsmaponetwo\symbol{9}}
+ \expandafter\def\csname simpleicon@tistoryicon\endcsname {\simpleiconsmaponetwo\symbol{10}}
+ \expandafter\def\csname simpleicon@tldrawicon\endcsname {\simpleiconsmaponetwo\symbol{11}}
+ \expandafter\def\csname simpleicon@tmobileicon\endcsname {\simpleiconsmaponetwo\symbol{12}}
+ \expandafter\def\csname simpleicon@tmuxicon\endcsname {\simpleiconsmaponetwo\symbol{13}}
+ \expandafter\def\csname simpleicon@todoisticon\endcsname {\simpleiconsmaponetwo\symbol{14}}
+ \expandafter\def\csname simpleicon@togglicon\endcsname {\simpleiconsmaponetwo\symbol{15}}
+ \expandafter\def\csname simpleicon@toggltrackicon\endcsname {\simpleiconsmaponetwo\symbol{16}}
+ \expandafter\def\csname simpleicon@tokyometroicon\endcsname {\simpleiconsmaponetwo\symbol{17}}
+ \expandafter\def\csname simpleicon@tollicon\endcsname {\simpleiconsmaponetwo\symbol{18}}
+ \expandafter\def\csname simpleicon@tomlicon\endcsname {\simpleiconsmaponetwo\symbol{19}}
+ \expandafter\def\csname simpleicon@tomorrowlandicon\endcsname {\simpleiconsmaponetwo\symbol{20}}
+ \expandafter\def\csname simpleicon@tonicon\endcsname {\simpleiconsmaponetwo\symbol{21}}
+ \expandafter\def\csname simpleicon@topcodericon\endcsname {\simpleiconsmaponetwo\symbol{22}}
+ \expandafter\def\csname simpleicon@topdotggicon\endcsname {\simpleiconsmaponetwo\symbol{23}}
+ \expandafter\def\csname simpleicon@toptalicon\endcsname {\simpleiconsmaponetwo\symbol{24}}
+ \expandafter\def\csname simpleicon@torbrowsericon\endcsname {\simpleiconsmaponetwo\symbol{25}}
+ \expandafter\def\csname simpleicon@torprojecticon\endcsname {\simpleiconsmaponetwo\symbol{26}}
+ \expandafter\def\csname simpleicon@toshibaicon\endcsname {\simpleiconsmaponetwo\symbol{27}}
+ \expandafter\def\csname simpleicon@totvsicon\endcsname {\simpleiconsmaponetwo\symbol{28}}
+ \expandafter\def\csname simpleicon@tourboxicon\endcsname {\simpleiconsmaponetwo\symbol{29}}
+ \expandafter\def\csname simpleicon@towericon\endcsname {\simpleiconsmaponetwo\symbol{30}}
+ \expandafter\def\csname simpleicon@toyotaicon\endcsname {\simpleiconsmaponetwo\symbol{31}}
+ \expandafter\def\csname simpleicon@tplinkicon\endcsname {\simpleiconsmaponetwo\symbol{32}}
+ \expandafter\def\csname simpleicon@tqdmicon\endcsname {\simpleiconsmaponetwo\symbol{33}}
+ \expandafter\def\csname simpleicon@traccaricon\endcsname {\simpleiconsmaponetwo\symbol{34}}
+ \expandafter\def\csname simpleicon@tradingviewicon\endcsname {\simpleiconsmaponetwo\symbol{35}}
+ \expandafter\def\csname simpleicon@traefikmeshicon\endcsname {\simpleiconsmaponetwo\symbol{36}}
+ \expandafter\def\csname simpleicon@traefikproxyicon\endcsname {\simpleiconsmaponetwo\symbol{37}}
+ \expandafter\def\csname simpleicon@trailforksicon\endcsname {\simpleiconsmaponetwo\symbol{38}}
+ \expandafter\def\csname simpleicon@trainerroadicon\endcsname {\simpleiconsmaponetwo\symbol{39}}
+ \expandafter\def\csname simpleicon@trakticon\endcsname {\simpleiconsmaponetwo\symbol{40}}
+ \expandafter\def\csname simpleicon@transifexicon\endcsname {\simpleiconsmaponetwo\symbol{41}}
+ \expandafter\def\csname simpleicon@transmissionicon\endcsname {\simpleiconsmaponetwo\symbol{42}}
+ \expandafter\def\csname simpleicon@transportforirelandicon\endcsname {\simpleiconsmaponetwo\symbol{43}}
+ \expandafter\def\csname simpleicon@transportforlondonicon\endcsname {\simpleiconsmaponetwo\symbol{44}}
+ \expandafter\def\csname simpleicon@travisciicon\endcsname {\simpleiconsmaponetwo\symbol{45}}
+ \expandafter\def\csname simpleicon@treehouseicon\endcsname {\simpleiconsmaponetwo\symbol{46}}
+ \expandafter\def\csname simpleicon@trelloicon\endcsname {\simpleiconsmaponetwo\symbol{47}}
+ \expandafter\def\csname simpleicon@trendmicroicon\endcsname {\simpleiconsmaponetwo\symbol{48}}
+ \expandafter\def\csname simpleicon@treyarchicon\endcsname {\simpleiconsmaponetwo\symbol{49}}
+ \expandafter\def\csname simpleicon@tricentisicon\endcsname {\simpleiconsmaponetwo\symbol{50}}
+ \expandafter\def\csname simpleicon@triliumicon\endcsname {\simpleiconsmaponetwo\symbol{51}}
+ \expandafter\def\csname simpleicon@trillericon\endcsname {\simpleiconsmaponetwo\symbol{52}}
+ \expandafter\def\csname simpleicon@trillertvicon\endcsname {\simpleiconsmaponetwo\symbol{53}}
+ \expandafter\def\csname simpleicon@trinoicon\endcsname {\simpleiconsmaponetwo\symbol{54}}
+ \expandafter\def\csname simpleicon@tripadvisoricon\endcsname {\simpleiconsmaponetwo\symbol{55}}
+ \expandafter\def\csname simpleicon@tripdotcomicon\endcsname {\simpleiconsmaponetwo\symbol{56}}
+ \expandafter\def\csname simpleicon@trivagoicon\endcsname {\simpleiconsmaponetwo\symbol{57}}
+ \expandafter\def\csname simpleicon@trivyicon\endcsname {\simpleiconsmaponetwo\symbol{58}}
+ \expandafter\def\csname simpleicon@troveicon\endcsname {\simpleiconsmaponetwo\symbol{59}}
+ \expandafter\def\csname simpleicon@trpcicon\endcsname {\simpleiconsmaponetwo\symbol{60}}
+ \expandafter\def\csname simpleicon@truenasicon\endcsname {\simpleiconsmaponetwo\symbol{61}}
+ \expandafter\def\csname simpleicon@trueupicon\endcsname {\simpleiconsmaponetwo\symbol{62}}
+ \expandafter\def\csname simpleicon@truliaicon\endcsname {\simpleiconsmaponetwo\symbol{63}}
+ \expandafter\def\csname simpleicon@trustedshopsicon\endcsname {\simpleiconsmaponetwo\symbol{64}}
+ \expandafter\def\csname simpleicon@trustpiloticon\endcsname {\simpleiconsmaponetwo\symbol{65}}
+ \expandafter\def\csname simpleicon@tryhackmeicon\endcsname {\simpleiconsmaponetwo\symbol{66}}
+ \expandafter\def\csname simpleicon@tryitonlineicon\endcsname {\simpleiconsmaponetwo\symbol{67}}
+ \expandafter\def\csname simpleicon@tsnodeicon\endcsname {\simpleiconsmaponetwo\symbol{68}}
+ \expandafter\def\csname simpleicon@tubiicon\endcsname {\simpleiconsmaponetwo\symbol{69}}
+ \expandafter\def\csname simpleicon@tuiicon\endcsname {\simpleiconsmaponetwo\symbol{70}}
+ \expandafter\def\csname simpleicon@tumblricon\endcsname {\simpleiconsmaponetwo\symbol{71}}
+ \expandafter\def\csname simpleicon@tuneinicon\endcsname {\simpleiconsmaponetwo\symbol{72}}
+ \expandafter\def\csname simpleicon@turboicon\endcsname {\simpleiconsmaponetwo\symbol{73}}
+ \expandafter\def\csname simpleicon@turborepoicon\endcsname {\simpleiconsmaponetwo\symbol{74}}
+ \expandafter\def\csname simpleicon@turbosquidicon\endcsname {\simpleiconsmaponetwo\symbol{75}}
+ \expandafter\def\csname simpleicon@turkishairlinesicon\endcsname {\simpleiconsmaponetwo\symbol{76}}
+ \expandafter\def\csname simpleicon@tursoicon\endcsname {\simpleiconsmaponetwo\symbol{77}}
+ \expandafter\def\csname simpleicon@tutanotaicon\endcsname {\simpleiconsmaponetwo\symbol{78}}
+ \expandafter\def\csname simpleicon@tv4playicon\endcsname {\simpleiconsmaponetwo\symbol{79}}
+ \expandafter\def\csname simpleicon@tvtimeicon\endcsname {\simpleiconsmaponetwo\symbol{80}}
+ \expandafter\def\csname simpleicon@twilioicon\endcsname {\simpleiconsmaponetwo\symbol{81}}
+ \expandafter\def\csname simpleicon@twinklyicon\endcsname {\simpleiconsmaponetwo\symbol{82}}
+ \expandafter\def\csname simpleicon@twinmotionicon\endcsname {\simpleiconsmaponetwo\symbol{83}}
+ \expandafter\def\csname simpleicon@twitchicon\endcsname {\simpleiconsmaponetwo\symbol{84}}
+ \expandafter\def\csname simpleicon@typeformicon\endcsname {\simpleiconsmaponetwo\symbol{85}}
+ \expandafter\def\csname simpleicon@typeormicon\endcsname {\simpleiconsmaponetwo\symbol{86}}
+ \expandafter\def\csname simpleicon@typericon\endcsname {\simpleiconsmaponetwo\symbol{87}}
+ \expandafter\def\csname simpleicon@typescripticon\endcsname {\simpleiconsmaponetwo\symbol{88}}
+ \expandafter\def\csname simpleicon@typo3icon\endcsname {\simpleiconsmaponetwo\symbol{89}}
+ \expandafter\def\csname simpleicon@typsticon\endcsname {\simpleiconsmaponetwo\symbol{90}}
+ \expandafter\def\csname simpleicon@ubericon\endcsname {\simpleiconsmaponetwo\symbol{91}}
+ \expandafter\def\csname simpleicon@ubereatsicon\endcsname {\simpleiconsmaponetwo\symbol{92}}
+ \expandafter\def\csname simpleicon@ubiquitiicon\endcsname {\simpleiconsmaponetwo\symbol{93}}
+ \expandafter\def\csname simpleicon@ubisofticon\endcsname {\simpleiconsmaponetwo\symbol{94}}
+ \expandafter\def\csname simpleicon@ublockoriginicon\endcsname {\simpleiconsmaponetwo\symbol{95}}
+ \expandafter\def\csname simpleicon@ubuntuicon\endcsname {\simpleiconsmaponetwo\symbol{96}}
+ \expandafter\def\csname simpleicon@ubuntumateicon\endcsname {\simpleiconsmaponetwo\symbol{97}}
+ \expandafter\def\csname simpleicon@udacityicon\endcsname {\simpleiconsmaponetwo\symbol{98}}
+ \expandafter\def\csname simpleicon@udemyicon\endcsname {\simpleiconsmaponetwo\symbol{99}}
+ \expandafter\def\csname simpleicon@ufcicon\endcsname {\simpleiconsmaponetwo\symbol{100}}
+ \expandafter\def\csname simpleicon@uikiticon\endcsname {\simpleiconsmaponetwo\symbol{101}}
+ \expandafter\def\csname simpleicon@uipathicon\endcsname {\simpleiconsmaponetwo\symbol{102}}
+ \expandafter\def\csname simpleicon@ululeicon\endcsname {\simpleiconsmaponetwo\symbol{103}}
+ \expandafter\def\csname simpleicon@umamiicon\endcsname {\simpleiconsmaponetwo\symbol{104}}
+ \expandafter\def\csname simpleicon@umbracoicon\endcsname {\simpleiconsmaponetwo\symbol{105}}
+ \expandafter\def\csname simpleicon@umlicon\endcsname {\simpleiconsmaponetwo\symbol{106}}
+ \expandafter\def\csname simpleicon@unacademyicon\endcsname {\simpleiconsmaponetwo\symbol{107}}
+ \expandafter\def\csname simpleicon@underarmouricon\endcsname {\simpleiconsmaponetwo\symbol{108}}
+ \expandafter\def\csname simpleicon@underscoredotjsicon\endcsname {\simpleiconsmaponetwo\symbol{109}}
+ \expandafter\def\csname simpleicon@undertaleicon\endcsname {\simpleiconsmaponetwo\symbol{110}}
+ \expandafter\def\csname simpleicon@unicodeicon\endcsname {\simpleiconsmaponetwo\symbol{111}}
+ \expandafter\def\csname simpleicon@unilevericon\endcsname {\simpleiconsmaponetwo\symbol{112}}
+ \expandafter\def\csname simpleicon@uniqloicon\endcsname {\simpleiconsmaponetwo\symbol{113}}
+ \expandafter\def\csname simpleicon@uniqlojaicon\endcsname {\simpleiconsmaponetwo\symbol{114}}
+ \expandafter\def\csname simpleicon@unitedairlinesicon\endcsname {\simpleiconsmaponetwo\symbol{115}}
+ \expandafter\def\csname simpleicon@unitednationsicon\endcsname {\simpleiconsmaponetwo\symbol{116}}
+ \expandafter\def\csname simpleicon@unityicon\endcsname {\simpleiconsmaponetwo\symbol{117}}
+ \expandafter\def\csname simpleicon@unjsicon\endcsname {\simpleiconsmaponetwo\symbol{118}}
+ \expandafter\def\csname simpleicon@unlicenseicon\endcsname {\simpleiconsmaponetwo\symbol{119}}
+ \expandafter\def\csname simpleicon@unocssicon\endcsname {\simpleiconsmaponetwo\symbol{120}}
+ \expandafter\def\csname simpleicon@unpkgicon\endcsname {\simpleiconsmaponetwo\symbol{121}}
+ \expandafter\def\csname simpleicon@unraidicon\endcsname {\simpleiconsmaponetwo\symbol{122}}
+ \expandafter\def\csname simpleicon@unrealengineicon\endcsname {\simpleiconsmaponetwo\symbol{123}}
+ \expandafter\def\csname simpleicon@unsplashicon\endcsname {\simpleiconsmaponetwo\symbol{124}}
+ \expandafter\def\csname simpleicon@untappdicon\endcsname {\simpleiconsmaponetwo\symbol{125}}
+ \expandafter\def\csname simpleicon@upcloudicon\endcsname {\simpleiconsmaponetwo\symbol{126}}
+ \expandafter\def\csname simpleicon@upholdicon\endcsname {\simpleiconsmaponetwo\symbol{127}}
+ \expandafter\def\csname simpleicon@uplabsicon\endcsname {\simpleiconsmaponetwo\symbol{128}}
+ \expandafter\def\csname simpleicon@upptimeicon\endcsname {\simpleiconsmaponetwo\symbol{129}}
+ \expandafter\def\csname simpleicon@upsicon\endcsname {\simpleiconsmaponetwo\symbol{130}}
+ \expandafter\def\csname simpleicon@upstashicon\endcsname {\simpleiconsmaponetwo\symbol{131}}
+ \expandafter\def\csname simpleicon@uptimekumaicon\endcsname {\simpleiconsmaponetwo\symbol{132}}
+ \expandafter\def\csname simpleicon@uptoboxicon\endcsname {\simpleiconsmaponetwo\symbol{133}}
+ \expandafter\def\csname simpleicon@upworkicon\endcsname {\simpleiconsmaponetwo\symbol{134}}
+ \expandafter\def\csname simpleicon@uspsicon\endcsname {\simpleiconsmaponetwo\symbol{135}}
+ \expandafter\def\csname simpleicon@utorrenticon\endcsname {\simpleiconsmaponetwo\symbol{136}}
+ \expandafter\def\csname simpleicon@vicon\endcsname {\simpleiconsmaponetwo\symbol{137}}
+ \expandafter\def\csname simpleicon@v2exicon\endcsname {\simpleiconsmaponetwo\symbol{138}}
+ \expandafter\def\csname simpleicon@v8icon\endcsname {\simpleiconsmaponetwo\symbol{139}}
+ \expandafter\def\csname simpleicon@vaadinicon\endcsname {\simpleiconsmaponetwo\symbol{140}}
+ \expandafter\def\csname simpleicon@vagranticon\endcsname {\simpleiconsmaponetwo\symbol{141}}
+ \expandafter\def\csname simpleicon@valaicon\endcsname {\simpleiconsmaponetwo\symbol{142}}
+ \expandafter\def\csname simpleicon@valoranticon\endcsname {\simpleiconsmaponetwo\symbol{143}}
+ \expandafter\def\csname simpleicon@valveicon\endcsname {\simpleiconsmaponetwo\symbol{144}}
+ \expandafter\def\csname simpleicon@vaporicon\endcsname {\simpleiconsmaponetwo\symbol{145}}
+ \expandafter\def\csname simpleicon@vaulticon\endcsname {\simpleiconsmaponetwo\symbol{146}}
+ \expandafter\def\csname simpleicon@vaultwardenicon\endcsname {\simpleiconsmaponetwo\symbol{147}}
+ \expandafter\def\csname simpleicon@vauxhallicon\endcsname {\simpleiconsmaponetwo\symbol{148}}
+ \expandafter\def\csname simpleicon@vbulletinicon\endcsname {\simpleiconsmaponetwo\symbol{149}}
+ \expandafter\def\csname simpleicon@vectaryicon\endcsname {\simpleiconsmaponetwo\symbol{150}}
+ \expandafter\def\csname simpleicon@vectorlogozoneicon\endcsname {\simpleiconsmaponetwo\symbol{151}}
+ \expandafter\def\csname simpleicon@vectorworksicon\endcsname {\simpleiconsmaponetwo\symbol{152}}
+ \expandafter\def\csname simpleicon@veeamicon\endcsname {\simpleiconsmaponetwo\symbol{153}}
+ \expandafter\def\csname simpleicon@veedicon\endcsname {\simpleiconsmaponetwo\symbol{154}}
+ \expandafter\def\csname simpleicon@veepeeicon\endcsname {\simpleiconsmaponetwo\symbol{155}}
+ \expandafter\def\csname simpleicon@vegaicon\endcsname {\simpleiconsmaponetwo\symbol{156}}
+ \expandafter\def\csname simpleicon@vegasicon\endcsname {\simpleiconsmaponetwo\symbol{157}}
+ \expandafter\def\csname simpleicon@velogicon\endcsname {\simpleiconsmaponetwo\symbol{158}}
+ \expandafter\def\csname simpleicon@venmoicon\endcsname {\simpleiconsmaponetwo\symbol{159}}
+ \expandafter\def\csname simpleicon@vercelicon\endcsname {\simpleiconsmaponetwo\symbol{160}}
+ \expandafter\def\csname simpleicon@verdaccioicon\endcsname {\simpleiconsmaponetwo\symbol{161}}
+ \expandafter\def\csname simpleicon@veritasicon\endcsname {\simpleiconsmaponetwo\symbol{162}}
+ \expandafter\def\csname simpleicon@verizonicon\endcsname {\simpleiconsmaponetwo\symbol{163}}
+ \expandafter\def\csname simpleicon@vespaicon\endcsname {\simpleiconsmaponetwo\symbol{164}}
+ \expandafter\def\csname simpleicon@vestelicon\endcsname {\simpleiconsmaponetwo\symbol{165}}
+ \expandafter\def\csname simpleicon@vexxhosticon\endcsname {\simpleiconsmaponetwo\symbol{166}}
+ \expandafter\def\csname simpleicon@vfairsicon\endcsname {\simpleiconsmaponetwo\symbol{167}}
+ \expandafter\def\csname simpleicon@viadeoicon\endcsname {\simpleiconsmaponetwo\symbol{168}}
+ \expandafter\def\csname simpleicon@viaplayicon\endcsname {\simpleiconsmaponetwo\symbol{169}}
+ \expandafter\def\csname simpleicon@vibericon\endcsname {\simpleiconsmaponetwo\symbol{170}}
+ \expandafter\def\csname simpleicon@vibloicon\endcsname {\simpleiconsmaponetwo\symbol{171}}
+ \expandafter\def\csname simpleicon@victoriametricsicon\endcsname {\simpleiconsmaponetwo\symbol{172}}
+ \expandafter\def\csname simpleicon@victronenergyicon\endcsname {\simpleiconsmaponetwo\symbol{173}}
+ \expandafter\def\csname simpleicon@vimicon\endcsname {\simpleiconsmaponetwo\symbol{174}}
+ \expandafter\def\csname simpleicon@vimeoicon\endcsname {\simpleiconsmaponetwo\symbol{175}}
+ \expandafter\def\csname simpleicon@vimeolivestreamicon\endcsname {\simpleiconsmaponetwo\symbol{176}}
+ \expandafter\def\csname simpleicon@virginicon\endcsname {\simpleiconsmaponetwo\symbol{177}}
+ \expandafter\def\csname simpleicon@virginatlanticicon\endcsname {\simpleiconsmaponetwo\symbol{178}}
+ \expandafter\def\csname simpleicon@virginmediaicon\endcsname {\simpleiconsmaponetwo\symbol{179}}
+ \expandafter\def\csname simpleicon@virtualboxicon\endcsname {\simpleiconsmaponetwo\symbol{180}}
+ \expandafter\def\csname simpleicon@virustotalicon\endcsname {\simpleiconsmaponetwo\symbol{181}}
+ \expandafter\def\csname simpleicon@visaicon\endcsname {\simpleiconsmaponetwo\symbol{182}}
+ \expandafter\def\csname simpleicon@visxicon\endcsname {\simpleiconsmaponetwo\symbol{183}}
+ \expandafter\def\csname simpleicon@viteicon\endcsname {\simpleiconsmaponetwo\symbol{184}}
+ \expandafter\def\csname simpleicon@vitepressicon\endcsname {\simpleiconsmaponetwo\symbol{185}}
+ \expandafter\def\csname simpleicon@vitessicon\endcsname {\simpleiconsmaponetwo\symbol{186}}
+ \expandafter\def\csname simpleicon@vitesticon\endcsname {\simpleiconsmaponetwo\symbol{187}}
+ \expandafter\def\csname simpleicon@vivaldiicon\endcsname {\simpleiconsmaponetwo\symbol{188}}
+ \expandafter\def\csname simpleicon@vivawalleticon\endcsname {\simpleiconsmaponetwo\symbol{189}}
+ \expandafter\def\csname simpleicon@vivinoicon\endcsname {\simpleiconsmaponetwo\symbol{190}}
+ \expandafter\def\csname simpleicon@vivinticon\endcsname {\simpleiconsmaponetwo\symbol{191}}
+ \expandafter\def\csname simpleicon@vivoicon\endcsname {\simpleiconsmaponetwo\symbol{192}}
+ \expandafter\def\csname simpleicon@vkicon\endcsname {\simpleiconsmaponetwo\symbol{193}}
+ \expandafter\def\csname simpleicon@vlcmediaplayericon\endcsname {\simpleiconsmaponetwo\symbol{194}}
+ \expandafter\def\csname simpleicon@vmwareicon\endcsname {\simpleiconsmaponetwo\symbol{195}}
+ \expandafter\def\csname simpleicon@vodafoneicon\endcsname {\simpleiconsmaponetwo\symbol{196}}
+ \expandafter\def\csname simpleicon@voidlinuxicon\endcsname {\simpleiconsmaponetwo\symbol{197}}
+ \expandafter\def\csname simpleicon@voipdotmsicon\endcsname {\simpleiconsmaponetwo\symbol{198}}
+ \expandafter\def\csname simpleicon@volkswagenicon\endcsname {\simpleiconsmaponetwo\symbol{199}}
+ \expandafter\def\csname simpleicon@volvoicon\endcsname {\simpleiconsmaponetwo\symbol{200}}
+ \expandafter\def\csname simpleicon@vonageicon\endcsname {\simpleiconsmaponetwo\symbol{201}}
+ \expandafter\def\csname simpleicon@vorondesignicon\endcsname {\simpleiconsmaponetwo\symbol{202}}
+ \expandafter\def\csname simpleicon@vowpalwabbiticon\endcsname {\simpleiconsmaponetwo\symbol{203}}
+ \expandafter\def\csname simpleicon@voxicon\endcsname {\simpleiconsmaponetwo\symbol{204}}
+ \expandafter\def\csname simpleicon@vrchaticon\endcsname {\simpleiconsmaponetwo\symbol{205}}
+ \expandafter\def\csname simpleicon@vscoicon\endcsname {\simpleiconsmaponetwo\symbol{206}}
+ \expandafter\def\csname simpleicon@vscodiumicon\endcsname {\simpleiconsmaponetwo\symbol{207}}
+ \expandafter\def\csname simpleicon@vtexicon\endcsname {\simpleiconsmaponetwo\symbol{208}}
+ \expandafter\def\csname simpleicon@vuedotjsicon\endcsname {\simpleiconsmaponetwo\symbol{209}}
+ \expandafter\def\csname simpleicon@vuetifyicon\endcsname {\simpleiconsmaponetwo\symbol{210}}
+ \expandafter\def\csname simpleicon@vulkanicon\endcsname {\simpleiconsmaponetwo\symbol{211}}
+ \expandafter\def\csname simpleicon@vultricon\endcsname {\simpleiconsmaponetwo\symbol{212}}
+ \expandafter\def\csname simpleicon@vyondicon\endcsname {\simpleiconsmaponetwo\symbol{213}}
+ \expandafter\def\csname simpleicon@w3schoolsicon\endcsname {\simpleiconsmaponetwo\symbol{214}}
+ \expandafter\def\csname simpleicon@wacomicon\endcsname {\simpleiconsmaponetwo\symbol{215}}
+ \expandafter\def\csname simpleicon@wagmiicon\endcsname {\simpleiconsmaponetwo\symbol{216}}
+ \expandafter\def\csname simpleicon@wagtailicon\endcsname {\simpleiconsmaponetwo\symbol{217}}
+ \expandafter\def\csname simpleicon@wailsicon\endcsname {\simpleiconsmaponetwo\symbol{218}}
+ \expandafter\def\csname simpleicon@wakatimeicon\endcsname {\simpleiconsmaponetwo\symbol{219}}
+ \expandafter\def\csname simpleicon@walkmanicon\endcsname {\simpleiconsmaponetwo\symbol{220}}
+ \expandafter\def\csname simpleicon@wallabagicon\endcsname {\simpleiconsmaponetwo\symbol{221}}
+ \expandafter\def\csname simpleicon@walletconnecticon\endcsname {\simpleiconsmaponetwo\symbol{222}}
+ \expandafter\def\csname simpleicon@walmarticon\endcsname {\simpleiconsmaponetwo\symbol{223}}
+ \expandafter\def\csname simpleicon@wantedlyicon\endcsname {\simpleiconsmaponetwo\symbol{224}}
+ \expandafter\def\csname simpleicon@wappalyzericon\endcsname {\simpleiconsmaponetwo\symbol{225}}
+ \expandafter\def\csname simpleicon@warnerbrosicon\endcsname {\simpleiconsmaponetwo\symbol{226}}
+ \expandafter\def\csname simpleicon@warpicon\endcsname {\simpleiconsmaponetwo\symbol{227}}
+ \expandafter\def\csname simpleicon@wasabiicon\endcsname {\simpleiconsmaponetwo\symbol{228}}
+ \expandafter\def\csname simpleicon@wasmcloudicon\endcsname {\simpleiconsmaponetwo\symbol{229}}
+ \expandafter\def\csname simpleicon@wasmericon\endcsname {\simpleiconsmaponetwo\symbol{230}}
+ \expandafter\def\csname simpleicon@watchtowericon\endcsname {\simpleiconsmaponetwo\symbol{231}}
+ \expandafter\def\csname simpleicon@wattpadicon\endcsname {\simpleiconsmaponetwo\symbol{232}}
+ \expandafter\def\csname simpleicon@waylandicon\endcsname {\simpleiconsmaponetwo\symbol{233}}
+ \expandafter\def\csname simpleicon@wazeicon\endcsname {\simpleiconsmaponetwo\symbol{234}}
+ \expandafter\def\csname simpleicon@wazirxicon\endcsname {\simpleiconsmaponetwo\symbol{235}}
+ \expandafter\def\csname simpleicon@wearosicon\endcsname {\simpleiconsmaponetwo\symbol{236}}
+ \expandafter\def\csname simpleicon@weasylicon\endcsname {\simpleiconsmaponetwo\symbol{237}}
+ \expandafter\def\csname simpleicon@web3dotjsicon\endcsname {\simpleiconsmaponetwo\symbol{238}}
+ \expandafter\def\csname simpleicon@webassemblyicon\endcsname {\simpleiconsmaponetwo\symbol{239}}
+ \expandafter\def\csname simpleicon@webauthnicon\endcsname {\simpleiconsmaponetwo\symbol{240}}
+ \expandafter\def\csname simpleicon@webcomponentsdotorgicon\endcsname {\simpleiconsmaponetwo\symbol{241}}
+ \expandafter\def\csname simpleicon@webdriverioicon\endcsname {\simpleiconsmaponetwo\symbol{242}}
+ \expandafter\def\csname simpleicon@webexicon\endcsname {\simpleiconsmaponetwo\symbol{243}}
+ \expandafter\def\csname simpleicon@webflowicon\endcsname {\simpleiconsmaponetwo\symbol{244}}
+ \expandafter\def\csname simpleicon@webglicon\endcsname {\simpleiconsmaponetwo\symbol{245}}
+ \expandafter\def\csname simpleicon@webgpuicon\endcsname {\simpleiconsmaponetwo\symbol{246}}
+ \expandafter\def\csname simpleicon@weblateicon\endcsname {\simpleiconsmaponetwo\symbol{247}}
+ \expandafter\def\csname simpleicon@webminicon\endcsname {\simpleiconsmaponetwo\symbol{248}}
+ \expandafter\def\csname simpleicon@webmoneyicon\endcsname {\simpleiconsmaponetwo\symbol{249}}
+ \expandafter\def\csname simpleicon@webpackicon\endcsname {\simpleiconsmaponetwo\symbol{250}}
+ \expandafter\def\csname simpleicon@webrtcicon\endcsname {\simpleiconsmaponetwo\symbol{251}}
+ \expandafter\def\csname simpleicon@webstormicon\endcsname {\simpleiconsmaponetwo\symbol{252}}
+ \expandafter\def\csname simpleicon@webtoonicon\endcsname {\simpleiconsmaponetwo\symbol{253}}
+ \expandafter\def\csname simpleicon@webtreesicon\endcsname {\simpleiconsmaponetwo\symbol{254}}
+ \expandafter\def\csname simpleicon@wechaticon\endcsname {\simpleiconsmaponetwo\symbol{255}}
+ \expandafter\def\csname simpleicon@wegameicon\endcsname {\simpleiconsmaponethree\symbol{0}}
+ \expandafter\def\csname simpleicon@weightsandbiasesicon\endcsname {\simpleiconsmaponethree\symbol{1}}
+ \expandafter\def\csname simpleicon@welcometothejungleicon\endcsname {\simpleiconsmaponethree\symbol{2}}
+ \expandafter\def\csname simpleicon@wellfoundicon\endcsname {\simpleiconsmaponethree\symbol{3}}
+ \expandafter\def\csname simpleicon@wellsfargoicon\endcsname {\simpleiconsmaponethree\symbol{4}}
+ \expandafter\def\csname simpleicon@wemoicon\endcsname {\simpleiconsmaponethree\symbol{5}}
+ \expandafter\def\csname simpleicon@westerndigitalicon\endcsname {\simpleiconsmaponethree\symbol{6}}
+ \expandafter\def\csname simpleicon@westernunionicon\endcsname {\simpleiconsmaponethree\symbol{7}}
+ \expandafter\def\csname simpleicon@wetransfericon\endcsname {\simpleiconsmaponethree\symbol{8}}
+ \expandafter\def\csname simpleicon@weztermicon\endcsname {\simpleiconsmaponethree\symbol{9}}
+ \expandafter\def\csname simpleicon@wgpuicon\endcsname {\simpleiconsmaponethree\symbol{10}}
+ \expandafter\def\csname simpleicon@whatsappicon\endcsname {\simpleiconsmaponethree\symbol{11}}
+ \expandafter\def\csname simpleicon@wheniworkicon\endcsname {\simpleiconsmaponethree\symbol{12}}
+ \expandafter\def\csname simpleicon@wiiicon\endcsname {\simpleiconsmaponethree\symbol{13}}
+ \expandafter\def\csname simpleicon@wiiuicon\endcsname {\simpleiconsmaponethree\symbol{14}}
+ \expandafter\def\csname simpleicon@wikidataicon\endcsname {\simpleiconsmaponethree\symbol{15}}
+ \expandafter\def\csname simpleicon@wikidotggicon\endcsname {\simpleiconsmaponethree\symbol{16}}
+ \expandafter\def\csname simpleicon@wikidotjsicon\endcsname {\simpleiconsmaponethree\symbol{17}}
+ \expandafter\def\csname simpleicon@wikimediacommonsicon\endcsname {\simpleiconsmaponethree\symbol{18}}
+ \expandafter\def\csname simpleicon@wikimediafoundationicon\endcsname {\simpleiconsmaponethree\symbol{19}}
+ \expandafter\def\csname simpleicon@wikipediaicon\endcsname {\simpleiconsmaponethree\symbol{20}}
+ \expandafter\def\csname simpleicon@wikiquoteicon\endcsname {\simpleiconsmaponethree\symbol{21}}
+ \expandafter\def\csname simpleicon@wikivoyageicon\endcsname {\simpleiconsmaponethree\symbol{22}}
+ \expandafter\def\csname simpleicon@winampicon\endcsname {\simpleiconsmaponethree\symbol{23}}
+ \expandafter\def\csname simpleicon@wiproicon\endcsname {\simpleiconsmaponethree\symbol{24}}
+ \expandafter\def\csname simpleicon@wireicon\endcsname {\simpleiconsmaponethree\symbol{25}}
+ \expandafter\def\csname simpleicon@wireguardicon\endcsname {\simpleiconsmaponethree\symbol{26}}
+ \expandafter\def\csname simpleicon@wiresharkicon\endcsname {\simpleiconsmaponethree\symbol{27}}
+ \expandafter\def\csname simpleicon@wiseicon\endcsname {\simpleiconsmaponethree\symbol{28}}
+ \expandafter\def\csname simpleicon@wishicon\endcsname {\simpleiconsmaponethree\symbol{29}}
+ \expandafter\def\csname simpleicon@wistiaicon\endcsname {\simpleiconsmaponethree\symbol{30}}
+ \expandafter\def\csname simpleicon@wixicon\endcsname {\simpleiconsmaponethree\symbol{31}}
+ \expandafter\def\csname simpleicon@wizzairicon\endcsname {\simpleiconsmaponethree\symbol{32}}
+ \expandafter\def\csname simpleicon@wolframicon\endcsname {\simpleiconsmaponethree\symbol{33}}
+ \expandafter\def\csname simpleicon@wolframlanguageicon\endcsname {\simpleiconsmaponethree\symbol{34}}
+ \expandafter\def\csname simpleicon@wolframmathematicaicon\endcsname {\simpleiconsmaponethree\symbol{35}}
+ \expandafter\def\csname simpleicon@wondershareicon\endcsname {\simpleiconsmaponethree\symbol{36}}
+ \expandafter\def\csname simpleicon@wondersharefilmoraicon\endcsname {\simpleiconsmaponethree\symbol{37}}
+ \expandafter\def\csname simpleicon@wooicon\endcsname {\simpleiconsmaponethree\symbol{38}}
+ \expandafter\def\csname simpleicon@woocommerceicon\endcsname {\simpleiconsmaponethree\symbol{39}}
+ \expandafter\def\csname simpleicon@wordpressicon\endcsname {\simpleiconsmaponethree\symbol{40}}
+ \expandafter\def\csname simpleicon@workplaceicon\endcsname {\simpleiconsmaponethree\symbol{41}}
+ \expandafter\def\csname simpleicon@worldhealthorganizationicon\endcsname {\simpleiconsmaponethree\symbol{42}}
+ \expandafter\def\csname simpleicon@wpengineicon\endcsname {\simpleiconsmaponethree\symbol{43}}
+ \expandafter\def\csname simpleicon@wpexplorericon\endcsname {\simpleiconsmaponethree\symbol{44}}
+ \expandafter\def\csname simpleicon@wprocketicon\endcsname {\simpleiconsmaponethree\symbol{45}}
+ \expandafter\def\csname simpleicon@writedotasicon\endcsname {\simpleiconsmaponethree\symbol{46}}
+ \expandafter\def\csname simpleicon@wweicon\endcsname {\simpleiconsmaponethree\symbol{47}}
+ \expandafter\def\csname simpleicon@wwiseicon\endcsname {\simpleiconsmaponethree\symbol{48}}
+ \expandafter\def\csname simpleicon@wykopicon\endcsname {\simpleiconsmaponethree\symbol{49}}
+ \expandafter\def\csname simpleicon@wyzeicon\endcsname {\simpleiconsmaponethree\symbol{50}}
+ \expandafter\def\csname simpleicon@xicon\endcsname {\simpleiconsmaponethree\symbol{51}}
+ \expandafter\def\csname simpleicon@xamppicon\endcsname {\simpleiconsmaponethree\symbol{52}}
+ \expandafter\def\csname simpleicon@xcodeicon\endcsname {\simpleiconsmaponethree\symbol{53}}
+ \expandafter\def\csname simpleicon@xdadevelopersicon\endcsname {\simpleiconsmaponethree\symbol{54}}
+ \expandafter\def\csname simpleicon@xdotorgicon\endcsname {\simpleiconsmaponethree\symbol{55}}
+ \expandafter\def\csname simpleicon@xenditicon\endcsname {\simpleiconsmaponethree\symbol{56}}
+ \expandafter\def\csname simpleicon@xeroicon\endcsname {\simpleiconsmaponethree\symbol{57}}
+ \expandafter\def\csname simpleicon@xfceicon\endcsname {\simpleiconsmaponethree\symbol{58}}
+ \expandafter\def\csname simpleicon@xiaohongshuicon\endcsname {\simpleiconsmaponethree\symbol{59}}
+ \expandafter\def\csname simpleicon@xiaomiicon\endcsname {\simpleiconsmaponethree\symbol{60}}
+ \expandafter\def\csname simpleicon@xingicon\endcsname {\simpleiconsmaponethree\symbol{61}}
+ \expandafter\def\csname simpleicon@xmppicon\endcsname {\simpleiconsmaponethree\symbol{62}}
+ \expandafter\def\csname simpleicon@xoicon\endcsname {\simpleiconsmaponethree\symbol{63}}
+ \expandafter\def\csname simpleicon@xrpicon\endcsname {\simpleiconsmaponethree\symbol{64}}
+ \expandafter\def\csname simpleicon@xspliticon\endcsname {\simpleiconsmaponethree\symbol{65}}
+ \expandafter\def\csname simpleicon@xstateicon\endcsname {\simpleiconsmaponethree\symbol{66}}
+ \expandafter\def\csname simpleicon@xubuntuicon\endcsname {\simpleiconsmaponethree\symbol{67}}
+ \expandafter\def\csname simpleicon@yabaiicon\endcsname {\simpleiconsmaponethree\symbol{68}}
+ \expandafter\def\csname simpleicon@yaleicon\endcsname {\simpleiconsmaponethree\symbol{69}}
+ \expandafter\def\csname simpleicon@yamahacorporationicon\endcsname {\simpleiconsmaponethree\symbol{70}}
+ \expandafter\def\csname simpleicon@yamahamotorcorporationicon\endcsname {\simpleiconsmaponethree\symbol{71}}
+ \expandafter\def\csname simpleicon@yamlicon\endcsname {\simpleiconsmaponethree\symbol{72}}
+ \expandafter\def\csname simpleicon@yandexcloudicon\endcsname {\simpleiconsmaponethree\symbol{73}}
+ \expandafter\def\csname simpleicon@yarnicon\endcsname {\simpleiconsmaponethree\symbol{74}}
+ \expandafter\def\csname simpleicon@ycombinatoricon\endcsname {\simpleiconsmaponethree\symbol{75}}
+ \expandafter\def\csname simpleicon@yelpicon\endcsname {\simpleiconsmaponethree\symbol{76}}
+ \expandafter\def\csname simpleicon@yetiicon\endcsname {\simpleiconsmaponethree\symbol{77}}
+ \expandafter\def\csname simpleicon@yiiicon\endcsname {\simpleiconsmaponethree\symbol{78}}
+ \expandafter\def\csname simpleicon@yoasticon\endcsname {\simpleiconsmaponethree\symbol{79}}
+ \expandafter\def\csname simpleicon@youtubeicon\endcsname {\simpleiconsmaponethree\symbol{80}}
+ \expandafter\def\csname simpleicon@youtubegamingicon\endcsname {\simpleiconsmaponethree\symbol{81}}
+ \expandafter\def\csname simpleicon@youtubekidsicon\endcsname {\simpleiconsmaponethree\symbol{82}}
+ \expandafter\def\csname simpleicon@youtubemusicicon\endcsname {\simpleiconsmaponethree\symbol{83}}
+ \expandafter\def\csname simpleicon@youtubeshortsicon\endcsname {\simpleiconsmaponethree\symbol{84}}
+ \expandafter\def\csname simpleicon@youtubestudioicon\endcsname {\simpleiconsmaponethree\symbol{85}}
+ \expandafter\def\csname simpleicon@youtubetvicon\endcsname {\simpleiconsmaponethree\symbol{86}}
+ \expandafter\def\csname simpleicon@yricon\endcsname {\simpleiconsmaponethree\symbol{87}}
+ \expandafter\def\csname simpleicon@yubicoicon\endcsname {\simpleiconsmaponethree\symbol{88}}
+ \expandafter\def\csname simpleicon@yunohosticon\endcsname {\simpleiconsmaponethree\symbol{89}}
+ \expandafter\def\csname simpleicon@zabkaicon\endcsname {\simpleiconsmaponethree\symbol{90}}
+ \expandafter\def\csname simpleicon@zaimicon\endcsname {\simpleiconsmaponethree\symbol{91}}
+ \expandafter\def\csname simpleicon@zalandoicon\endcsname {\simpleiconsmaponethree\symbol{92}}
+ \expandafter\def\csname simpleicon@zaloicon\endcsname {\simpleiconsmaponethree\symbol{93}}
+ \expandafter\def\csname simpleicon@zapicon\endcsname {\simpleiconsmaponethree\symbol{94}}
+ \expandafter\def\csname simpleicon@zapiericon\endcsname {\simpleiconsmaponethree\symbol{95}}
+ \expandafter\def\csname simpleicon@zaraicon\endcsname {\simpleiconsmaponethree\symbol{96}}
+ \expandafter\def\csname simpleicon@zazzleicon\endcsname {\simpleiconsmaponethree\symbol{97}}
+ \expandafter\def\csname simpleicon@zcashicon\endcsname {\simpleiconsmaponethree\symbol{98}}
+ \expandafter\def\csname simpleicon@zcoolicon\endcsname {\simpleiconsmaponethree\symbol{99}}
+ \expandafter\def\csname simpleicon@zdficon\endcsname {\simpleiconsmaponethree\symbol{100}}
+ \expandafter\def\csname simpleicon@zebpayicon\endcsname {\simpleiconsmaponethree\symbol{101}}
+ \expandafter\def\csname simpleicon@zebratechnologiesicon\endcsname {\simpleiconsmaponethree\symbol{102}}
+ \expandafter\def\csname simpleicon@zedindustriesicon\endcsname {\simpleiconsmaponethree\symbol{103}}
+ \expandafter\def\csname simpleicon@zelleicon\endcsname {\simpleiconsmaponethree\symbol{104}}
+ \expandafter\def\csname simpleicon@zendicon\endcsname {\simpleiconsmaponethree\symbol{105}}
+ \expandafter\def\csname simpleicon@zendeskicon\endcsname {\simpleiconsmaponethree\symbol{106}}
+ \expandafter\def\csname simpleicon@zennicon\endcsname {\simpleiconsmaponethree\symbol{107}}
+ \expandafter\def\csname simpleicon@zenodoicon\endcsname {\simpleiconsmaponethree\symbol{108}}
+ \expandafter\def\csname simpleicon@zensaricon\endcsname {\simpleiconsmaponethree\symbol{109}}
+ \expandafter\def\csname simpleicon@zerodhaicon\endcsname {\simpleiconsmaponethree\symbol{110}}
+ \expandafter\def\csname simpleicon@zerotiericon\endcsname {\simpleiconsmaponethree\symbol{111}}
+ \expandafter\def\csname simpleicon@zerplyicon\endcsname {\simpleiconsmaponethree\symbol{112}}
+ \expandafter\def\csname simpleicon@zettlricon\endcsname {\simpleiconsmaponethree\symbol{113}}
+ \expandafter\def\csname simpleicon@zhihuicon\endcsname {\simpleiconsmaponethree\symbol{114}}
+ \expandafter\def\csname simpleicon@zigicon\endcsname {\simpleiconsmaponethree\symbol{115}}
+ \expandafter\def\csname simpleicon@zigbeeicon\endcsname {\simpleiconsmaponethree\symbol{116}}
+ \expandafter\def\csname simpleicon@zigbee2mqtticon\endcsname {\simpleiconsmaponethree\symbol{117}}
+ \expandafter\def\csname simpleicon@ziggoicon\endcsname {\simpleiconsmaponethree\symbol{118}}
+ \expandafter\def\csname simpleicon@zilchicon\endcsname {\simpleiconsmaponethree\symbol{119}}
+ \expandafter\def\csname simpleicon@zillowicon\endcsname {\simpleiconsmaponethree\symbol{120}}
+ \expandafter\def\csname simpleicon@zincsearchicon\endcsname {\simpleiconsmaponethree\symbol{121}}
+ \expandafter\def\csname simpleicon@zingaticon\endcsname {\simpleiconsmaponethree\symbol{122}}
+ \expandafter\def\csname simpleicon@zodicon\endcsname {\simpleiconsmaponethree\symbol{123}}
+ \expandafter\def\csname simpleicon@zohoicon\endcsname {\simpleiconsmaponethree\symbol{124}}
+ \expandafter\def\csname simpleicon@zoipericon\endcsname {\simpleiconsmaponethree\symbol{125}}
+ \expandafter\def\csname simpleicon@zomatoicon\endcsname {\simpleiconsmaponethree\symbol{126}}
+ \expandafter\def\csname simpleicon@zoomicon\endcsname {\simpleiconsmaponethree\symbol{127}}
+ \expandafter\def\csname simpleicon@zorinicon\endcsname {\simpleiconsmaponethree\symbol{128}}
+ \expandafter\def\csname simpleicon@zoteroicon\endcsname {\simpleiconsmaponethree\symbol{129}}
+ \expandafter\def\csname simpleicon@zshicon\endcsname {\simpleiconsmaponethree\symbol{130}}
+ \expandafter\def\csname simpleicon@zulipicon\endcsname {\simpleiconsmaponethree\symbol{131}}
+ \expandafter\def\csname simpleicon@zyteicon\endcsname {\simpleiconsmaponethree\symbol{132}} \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/simpleicons/simpleiconsglyphs-xeluatex.tex b/Master/texmf-dist/tex/latex/simpleicons/simpleiconsglyphs-xeluatex.tex
index 51420df206f..251dd5d9105 100644
--- a/Master/texmf-dist/tex/latex/simpleicons/simpleiconsglyphs-xeluatex.tex
+++ b/Master/texmf-dist/tex/latex/simpleicons/simpleiconsglyphs-xeluatex.tex
@@ -5,433 +5,433 @@
\expandafter\def\csname simpleicon@1passwordicon\endcsname {\simpleiconsmap\symbol{"EA04}}
\expandafter\def\csname simpleicon@2fasicon\endcsname {\simpleiconsmap\symbol{"EA05}}
\expandafter\def\csname simpleicon@2kicon\endcsname {\simpleiconsmap\symbol{"EA06}}
- \expandafter\def\csname simpleicon@365datascienceicon\endcsname {\simpleiconsmap\symbol{"EA07}}
- \expandafter\def\csname simpleicon@3micon\endcsname {\simpleiconsmap\symbol{"EA08}}
- \expandafter\def\csname simpleicon@42icon\endcsname {\simpleiconsmap\symbol{"EA09}}
- \expandafter\def\csname simpleicon@4chanicon\endcsname {\simpleiconsmap\symbol{"EA0A}}
- \expandafter\def\csname simpleicon@4dicon\endcsname {\simpleiconsmap\symbol{"EA0B}}
- \expandafter\def\csname simpleicon@500pxicon\endcsname {\simpleiconsmap\symbol{"EA0C}}
- \expandafter\def\csname simpleicon@7zipicon\endcsname {\simpleiconsmap\symbol{"EA0D}}
- \expandafter\def\csname simpleicon@99designsicon\endcsname {\simpleiconsmap\symbol{"EA0E}}
- \expandafter\def\csname simpleicon@9gagicon\endcsname {\simpleiconsmap\symbol{"EA0F}}
- \expandafter\def\csname simpleicon@abbotticon\endcsname {\simpleiconsmap\symbol{"EA10}}
- \expandafter\def\csname simpleicon@abbrobotstudioicon\endcsname {\simpleiconsmap\symbol{"EA11}}
- \expandafter\def\csname simpleicon@abbvieicon\endcsname {\simpleiconsmap\symbol{"EA12}}
- \expandafter\def\csname simpleicon@aboutdotmeicon\endcsname {\simpleiconsmap\symbol{"EA13}}
- \expandafter\def\csname simpleicon@abstracticon\endcsname {\simpleiconsmap\symbol{"EA14}}
- \expandafter\def\csname simpleicon@abusedotchicon\endcsname {\simpleiconsmap\symbol{"EA15}}
- \expandafter\def\csname simpleicon@academiaicon\endcsname {\simpleiconsmap\symbol{"EA16}}
- \expandafter\def\csname simpleicon@accentureicon\endcsname {\simpleiconsmap\symbol{"EA17}}
- \expandafter\def\csname simpleicon@accusofticon\endcsname {\simpleiconsmap\symbol{"EA18}}
- \expandafter\def\csname simpleicon@acericon\endcsname {\simpleiconsmap\symbol{"EA19}}
- \expandafter\def\csname simpleicon@acmicon\endcsname {\simpleiconsmap\symbol{"EA1A}}
- \expandafter\def\csname simpleicon@actigraphicon\endcsname {\simpleiconsmap\symbol{"EA1B}}
- \expandafter\def\csname simpleicon@activisionicon\endcsname {\simpleiconsmap\symbol{"EA1C}}
- \expandafter\def\csname simpleicon@activitypubicon\endcsname {\simpleiconsmap\symbol{"EA1D}}
- \expandafter\def\csname simpleicon@actixicon\endcsname {\simpleiconsmap\symbol{"EA1E}}
- \expandafter\def\csname simpleicon@acuraicon\endcsname {\simpleiconsmap\symbol{"EA1F}}
- \expandafter\def\csname simpleicon@adafruiticon\endcsname {\simpleiconsmap\symbol{"EA20}}
- \expandafter\def\csname simpleicon@adblockicon\endcsname {\simpleiconsmap\symbol{"EA21}}
- \expandafter\def\csname simpleicon@adblockplusicon\endcsname {\simpleiconsmap\symbol{"EA22}}
- \expandafter\def\csname simpleicon@adguardicon\endcsname {\simpleiconsmap\symbol{"EA23}}
- \expandafter\def\csname simpleicon@adidasicon\endcsname {\simpleiconsmap\symbol{"EA24}}
- \expandafter\def\csname simpleicon@adminericon\endcsname {\simpleiconsmap\symbol{"EA25}}
- \expandafter\def\csname simpleicon@adobeicon\endcsname {\simpleiconsmap\symbol{"EA26}}
- \expandafter\def\csname simpleicon@adobeacrobatreadericon\endcsname {\simpleiconsmap\symbol{"EA27}}
- \expandafter\def\csname simpleicon@adobeaftereffectsicon\endcsname {\simpleiconsmap\symbol{"EA28}}
- \expandafter\def\csname simpleicon@adobeauditionicon\endcsname {\simpleiconsmap\symbol{"EA29}}
- \expandafter\def\csname simpleicon@adobecreativecloudicon\endcsname {\simpleiconsmap\symbol{"EA2A}}
- \expandafter\def\csname simpleicon@adobedreamweavericon\endcsname {\simpleiconsmap\symbol{"EA2B}}
- \expandafter\def\csname simpleicon@adobefontsicon\endcsname {\simpleiconsmap\symbol{"EA2C}}
- \expandafter\def\csname simpleicon@adobeillustratoricon\endcsname {\simpleiconsmap\symbol{"EA2D}}
- \expandafter\def\csname simpleicon@adobeindesignicon\endcsname {\simpleiconsmap\symbol{"EA2E}}
- \expandafter\def\csname simpleicon@adobelightroomicon\endcsname {\simpleiconsmap\symbol{"EA2F}}
- \expandafter\def\csname simpleicon@adobelightroomclassicicon\endcsname {\simpleiconsmap\symbol{"EA30}}
- \expandafter\def\csname simpleicon@adobephotoshopicon\endcsname {\simpleiconsmap\symbol{"EA31}}
- \expandafter\def\csname simpleicon@adobepremiereproicon\endcsname {\simpleiconsmap\symbol{"EA32}}
- \expandafter\def\csname simpleicon@adobexdicon\endcsname {\simpleiconsmap\symbol{"EA33}}
- \expandafter\def\csname simpleicon@adonisjsicon\endcsname {\simpleiconsmap\symbol{"EA34}}
- \expandafter\def\csname simpleicon@adpicon\endcsname {\simpleiconsmap\symbol{"EA35}}
- \expandafter\def\csname simpleicon@adrollicon\endcsname {\simpleiconsmap\symbol{"EA36}}
- \expandafter\def\csname simpleicon@adventofcodeicon\endcsname {\simpleiconsmap\symbol{"EA37}}
- \expandafter\def\csname simpleicon@adyenicon\endcsname {\simpleiconsmap\symbol{"EA38}}
- \expandafter\def\csname simpleicon@aegisauthenticatoricon\endcsname {\simpleiconsmap\symbol{"EA39}}
- \expandafter\def\csname simpleicon@aerlingusicon\endcsname {\simpleiconsmap\symbol{"EA3A}}
- \expandafter\def\csname simpleicon@aerofloticon\endcsname {\simpleiconsmap\symbol{"EA3B}}
- \expandafter\def\csname simpleicon@aeromexicoicon\endcsname {\simpleiconsmap\symbol{"EA3C}}
- \expandafter\def\csname simpleicon@aerospikeicon\endcsname {\simpleiconsmap\symbol{"EA3D}}
- \expandafter\def\csname simpleicon@aewicon\endcsname {\simpleiconsmap\symbol{"EA3E}}
- \expandafter\def\csname simpleicon@affineicon\endcsname {\simpleiconsmap\symbol{"EA3F}}
- \expandafter\def\csname simpleicon@affinityicon\endcsname {\simpleiconsmap\symbol{"EA40}}
- \expandafter\def\csname simpleicon@affinitydesignericon\endcsname {\simpleiconsmap\symbol{"EA41}}
- \expandafter\def\csname simpleicon@affinityphotoicon\endcsname {\simpleiconsmap\symbol{"EA42}}
- \expandafter\def\csname simpleicon@affinitypublishericon\endcsname {\simpleiconsmap\symbol{"EA43}}
- \expandafter\def\csname simpleicon@aframeicon\endcsname {\simpleiconsmap\symbol{"EA44}}
- \expandafter\def\csname simpleicon@afterpayicon\endcsname {\simpleiconsmap\symbol{"EA45}}
- \expandafter\def\csname simpleicon@agoraicon\endcsname {\simpleiconsmap\symbol{"EA46}}
- \expandafter\def\csname simpleicon@aibicon\endcsname {\simpleiconsmap\symbol{"EA47}}
- \expandafter\def\csname simpleicon@aidungeonicon\endcsname {\simpleiconsmap\symbol{"EA48}}
- \expandafter\def\csname simpleicon@aiohttpicon\endcsname {\simpleiconsmap\symbol{"EA49}}
- \expandafter\def\csname simpleicon@aiqfomeicon\endcsname {\simpleiconsmap\symbol{"EA4A}}
- \expandafter\def\csname simpleicon@airasiaicon\endcsname {\simpleiconsmap\symbol{"EA4B}}
- \expandafter\def\csname simpleicon@airbnbicon\endcsname {\simpleiconsmap\symbol{"EA4C}}
- \expandafter\def\csname simpleicon@airbrakeicon\endcsname {\simpleiconsmap\symbol{"EA4D}}
- \expandafter\def\csname simpleicon@airbusicon\endcsname {\simpleiconsmap\symbol{"EA4E}}
- \expandafter\def\csname simpleicon@airbyteicon\endcsname {\simpleiconsmap\symbol{"EA4F}}
- \expandafter\def\csname simpleicon@aircallicon\endcsname {\simpleiconsmap\symbol{"EA50}}
- \expandafter\def\csname simpleicon@aircanadaicon\endcsname {\simpleiconsmap\symbol{"EA51}}
- \expandafter\def\csname simpleicon@airchinaicon\endcsname {\simpleiconsmap\symbol{"EA52}}
- \expandafter\def\csname simpleicon@airfranceicon\endcsname {\simpleiconsmap\symbol{"EA53}}
- \expandafter\def\csname simpleicon@airindiaicon\endcsname {\simpleiconsmap\symbol{"EA54}}
- \expandafter\def\csname simpleicon@airplayaudioicon\endcsname {\simpleiconsmap\symbol{"EA55}}
- \expandafter\def\csname simpleicon@airplayvideoicon\endcsname {\simpleiconsmap\symbol{"EA56}}
- \expandafter\def\csname simpleicon@airtableicon\endcsname {\simpleiconsmap\symbol{"EA57}}
- \expandafter\def\csname simpleicon@airtelicon\endcsname {\simpleiconsmap\symbol{"EA58}}
- \expandafter\def\csname simpleicon@airtransaticon\endcsname {\simpleiconsmap\symbol{"EA59}}
- \expandafter\def\csname simpleicon@ajvicon\endcsname {\simpleiconsmap\symbol{"EA5A}}
- \expandafter\def\csname simpleicon@akamaiicon\endcsname {\simpleiconsmap\symbol{"EA5B}}
- \expandafter\def\csname simpleicon@akauntingicon\endcsname {\simpleiconsmap\symbol{"EA5C}}
- \expandafter\def\csname simpleicon@akiflowicon\endcsname {\simpleiconsmap\symbol{"EA5D}}
- \expandafter\def\csname simpleicon@alacrittyicon\endcsname {\simpleiconsmap\symbol{"EA5E}}
- \expandafter\def\csname simpleicon@alamyicon\endcsname {\simpleiconsmap\symbol{"EA5F}}
- \expandafter\def\csname simpleicon@albertheijnicon\endcsname {\simpleiconsmap\symbol{"EA60}}
- \expandafter\def\csname simpleicon@albyicon\endcsname {\simpleiconsmap\symbol{"EA61}}
- \expandafter\def\csname simpleicon@alchemyicon\endcsname {\simpleiconsmap\symbol{"EA62}}
- \expandafter\def\csname simpleicon@aldinordicon\endcsname {\simpleiconsmap\symbol{"EA63}}
- \expandafter\def\csname simpleicon@aldisudicon\endcsname {\simpleiconsmap\symbol{"EA64}}
- \expandafter\def\csname simpleicon@alfaromeoicon\endcsname {\simpleiconsmap\symbol{"EA65}}
- \expandafter\def\csname simpleicon@alfredicon\endcsname {\simpleiconsmap\symbol{"EA66}}
- \expandafter\def\csname simpleicon@algoliaicon\endcsname {\simpleiconsmap\symbol{"EA67}}
- \expandafter\def\csname simpleicon@algorandicon\endcsname {\simpleiconsmap\symbol{"EA68}}
- \expandafter\def\csname simpleicon@alibabacloudicon\endcsname {\simpleiconsmap\symbol{"EA69}}
- \expandafter\def\csname simpleicon@alibabadotcomicon\endcsname {\simpleiconsmap\symbol{"EA6A}}
- \expandafter\def\csname simpleicon@alienwareicon\endcsname {\simpleiconsmap\symbol{"EA6B}}
- \expandafter\def\csname simpleicon@aliexpressicon\endcsname {\simpleiconsmap\symbol{"EA6C}}
- \expandafter\def\csname simpleicon@alipayicon\endcsname {\simpleiconsmap\symbol{"EA6D}}
- \expandafter\def\csname simpleicon@allegroicon\endcsname {\simpleiconsmap\symbol{"EA6E}}
- \expandafter\def\csname simpleicon@alliedmoddersicon\endcsname {\simpleiconsmap\symbol{"EA6F}}
- \expandafter\def\csname simpleicon@allocineicon\endcsname {\simpleiconsmap\symbol{"EA70}}
- \expandafter\def\csname simpleicon@alltrailsicon\endcsname {\simpleiconsmap\symbol{"EA71}}
- \expandafter\def\csname simpleicon@almalinuxicon\endcsname {\simpleiconsmap\symbol{"EA72}}
- \expandafter\def\csname simpleicon@alpinedotjsicon\endcsname {\simpleiconsmap\symbol{"EA73}}
- \expandafter\def\csname simpleicon@alpinelinuxicon\endcsname {\simpleiconsmap\symbol{"EA74}}
- \expandafter\def\csname simpleicon@alteryxicon\endcsname {\simpleiconsmap\symbol{"EA75}}
- \expandafter\def\csname simpleicon@altiumdesignericon\endcsname {\simpleiconsmap\symbol{"EA76}}
- \expandafter\def\csname simpleicon@alwaysdataicon\endcsname {\simpleiconsmap\symbol{"EA77}}
- \expandafter\def\csname simpleicon@alxicon\endcsname {\simpleiconsmap\symbol{"EA78}}
- \expandafter\def\csname simpleicon@amazonicon\endcsname {\simpleiconsmap\symbol{"EA79}}
- \expandafter\def\csname simpleicon@amazonalexaicon\endcsname {\simpleiconsmap\symbol{"EA7A}}
- \expandafter\def\csname simpleicon@amazonapigatewayicon\endcsname {\simpleiconsmap\symbol{"EA7B}}
- \expandafter\def\csname simpleicon@amazoncloudwatchicon\endcsname {\simpleiconsmap\symbol{"EA7C}}
- \expandafter\def\csname simpleicon@amazoncognitoicon\endcsname {\simpleiconsmap\symbol{"EA7D}}
- \expandafter\def\csname simpleicon@amazondocumentdbicon\endcsname {\simpleiconsmap\symbol{"EA7E}}
- \expandafter\def\csname simpleicon@amazondynamodbicon\endcsname {\simpleiconsmap\symbol{"EA7F}}
- \expandafter\def\csname simpleicon@amazonec2icon\endcsname {\simpleiconsmap\symbol{"EA80}}
- \expandafter\def\csname simpleicon@amazonecsicon\endcsname {\simpleiconsmap\symbol{"EA81}}
- \expandafter\def\csname simpleicon@amazoneksicon\endcsname {\simpleiconsmap\symbol{"EA82}}
- \expandafter\def\csname simpleicon@amazonelasticacheicon\endcsname {\simpleiconsmap\symbol{"EA83}}
- \expandafter\def\csname simpleicon@amazonfiretvicon\endcsname {\simpleiconsmap\symbol{"EA84}}
- \expandafter\def\csname simpleicon@amazongamesicon\endcsname {\simpleiconsmap\symbol{"EA85}}
- \expandafter\def\csname simpleicon@amazoniamicon\endcsname {\simpleiconsmap\symbol{"EA86}}
- \expandafter\def\csname simpleicon@amazonlumberyardicon\endcsname {\simpleiconsmap\symbol{"EA87}}
- \expandafter\def\csname simpleicon@amazonlunaicon\endcsname {\simpleiconsmap\symbol{"EA88}}
- \expandafter\def\csname simpleicon@amazonmusicicon\endcsname {\simpleiconsmap\symbol{"EA89}}
- \expandafter\def\csname simpleicon@amazonpayicon\endcsname {\simpleiconsmap\symbol{"EA8A}}
- \expandafter\def\csname simpleicon@amazonprimeicon\endcsname {\simpleiconsmap\symbol{"EA8B}}
- \expandafter\def\csname simpleicon@amazonrdsicon\endcsname {\simpleiconsmap\symbol{"EA8C}}
- \expandafter\def\csname simpleicon@amazonredshifticon\endcsname {\simpleiconsmap\symbol{"EA8D}}
- \expandafter\def\csname simpleicon@amazonroute53icon\endcsname {\simpleiconsmap\symbol{"EA8E}}
- \expandafter\def\csname simpleicon@amazons3icon\endcsname {\simpleiconsmap\symbol{"EA8F}}
- \expandafter\def\csname simpleicon@amazonsimpleemailserviceicon\endcsname {\simpleiconsmap\symbol{"EA90}}
- \expandafter\def\csname simpleicon@amazonsqsicon\endcsname {\simpleiconsmap\symbol{"EA91}}
- \expandafter\def\csname simpleicon@amazonwebservicesicon\endcsname {\simpleiconsmap\symbol{"EA92}}
- \expandafter\def\csname simpleicon@amdicon\endcsname {\simpleiconsmap\symbol{"EA93}}
- \expandafter\def\csname simpleicon@amebaicon\endcsname {\simpleiconsmap\symbol{"EA94}}
- \expandafter\def\csname simpleicon@americanairlinesicon\endcsname {\simpleiconsmap\symbol{"EA95}}
- \expandafter\def\csname simpleicon@americanexpressicon\endcsname {\simpleiconsmap\symbol{"EA96}}
- \expandafter\def\csname simpleicon@amgicon\endcsname {\simpleiconsmap\symbol{"EA97}}
- \expandafter\def\csname simpleicon@ampicon\endcsname {\simpleiconsmap\symbol{"EA98}}
- \expandafter\def\csname simpleicon@amulicon\endcsname {\simpleiconsmap\symbol{"EA99}}
- \expandafter\def\csname simpleicon@anaicon\endcsname {\simpleiconsmap\symbol{"EA9A}}
- \expandafter\def\csname simpleicon@anacondaicon\endcsname {\simpleiconsmap\symbol{"EA9B}}
- \expandafter\def\csname simpleicon@analogueicon\endcsname {\simpleiconsmap\symbol{"EA9C}}
- \expandafter\def\csname simpleicon@andelaicon\endcsname {\simpleiconsmap\symbol{"EA9D}}
- \expandafter\def\csname simpleicon@androidicon\endcsname {\simpleiconsmap\symbol{"EA9E}}
- \expandafter\def\csname simpleicon@androidautoicon\endcsname {\simpleiconsmap\symbol{"EA9F}}
- \expandafter\def\csname simpleicon@androidstudioicon\endcsname {\simpleiconsmap\symbol{"EAA0}}
- \expandafter\def\csname simpleicon@angularicon\endcsname {\simpleiconsmap\symbol{"EAA1}}
- \expandafter\def\csname simpleicon@anilisticon\endcsname {\simpleiconsmap\symbol{"EAA2}}
- \expandafter\def\csname simpleicon@animalplaneticon\endcsname {\simpleiconsmap\symbol{"EAA3}}
- \expandafter\def\csname simpleicon@ankermakeicon\endcsname {\simpleiconsmap\symbol{"EAA4}}
- \expandafter\def\csname simpleicon@ankiicon\endcsname {\simpleiconsmap\symbol{"EAA5}}
- \expandafter\def\csname simpleicon@ansibleicon\endcsname {\simpleiconsmap\symbol{"EAA6}}
- \expandafter\def\csname simpleicon@answericon\endcsname {\simpleiconsmap\symbol{"EAA7}}
- \expandafter\def\csname simpleicon@ansysicon\endcsname {\simpleiconsmap\symbol{"EAA8}}
- \expandafter\def\csname simpleicon@antaicon\endcsname {\simpleiconsmap\symbol{"EAA9}}
- \expandafter\def\csname simpleicon@antdesignicon\endcsname {\simpleiconsmap\symbol{"EAAA}}
- \expandafter\def\csname simpleicon@antena3icon\endcsname {\simpleiconsmap\symbol{"EAAB}}
- \expandafter\def\csname simpleicon@anthropicicon\endcsname {\simpleiconsmap\symbol{"EAAC}}
- \expandafter\def\csname simpleicon@anycubicicon\endcsname {\simpleiconsmap\symbol{"EAAD}}
- \expandafter\def\csname simpleicon@anydeskicon\endcsname {\simpleiconsmap\symbol{"EAAE}}
- \expandafter\def\csname simpleicon@anytypeicon\endcsname {\simpleiconsmap\symbol{"EAAF}}
- \expandafter\def\csname simpleicon@aolicon\endcsname {\simpleiconsmap\symbol{"EAB0}}
- \expandafter\def\csname simpleicon@apacheicon\endcsname {\simpleiconsmap\symbol{"EAB1}}
- \expandafter\def\csname simpleicon@apacheairflowicon\endcsname {\simpleiconsmap\symbol{"EAB2}}
- \expandafter\def\csname simpleicon@apacheanticon\endcsname {\simpleiconsmap\symbol{"EAB3}}
- \expandafter\def\csname simpleicon@apachecassandraicon\endcsname {\simpleiconsmap\symbol{"EAB4}}
- \expandafter\def\csname simpleicon@apachecloudstackicon\endcsname {\simpleiconsmap\symbol{"EAB5}}
- \expandafter\def\csname simpleicon@apachecordovaicon\endcsname {\simpleiconsmap\symbol{"EAB6}}
- \expandafter\def\csname simpleicon@apachecouchdbicon\endcsname {\simpleiconsmap\symbol{"EAB7}}
- \expandafter\def\csname simpleicon@apachedruidicon\endcsname {\simpleiconsmap\symbol{"EAB8}}
- \expandafter\def\csname simpleicon@apacheechartsicon\endcsname {\simpleiconsmap\symbol{"EAB9}}
- \expandafter\def\csname simpleicon@apacheflinkicon\endcsname {\simpleiconsmap\symbol{"EABA}}
- \expandafter\def\csname simpleicon@apachefreemarkericon\endcsname {\simpleiconsmap\symbol{"EABB}}
- \expandafter\def\csname simpleicon@apachegroovyicon\endcsname {\simpleiconsmap\symbol{"EABC}}
- \expandafter\def\csname simpleicon@apacheguacamoleicon\endcsname {\simpleiconsmap\symbol{"EABD}}
- \expandafter\def\csname simpleicon@apachehadoopicon\endcsname {\simpleiconsmap\symbol{"EABE}}
- \expandafter\def\csname simpleicon@apachehbaseicon\endcsname {\simpleiconsmap\symbol{"EABF}}
- \expandafter\def\csname simpleicon@apachehiveicon\endcsname {\simpleiconsmap\symbol{"EAC0}}
- \expandafter\def\csname simpleicon@apachejmetericon\endcsname {\simpleiconsmap\symbol{"EAC1}}
- \expandafter\def\csname simpleicon@apachekafkaicon\endcsname {\simpleiconsmap\symbol{"EAC2}}
- \expandafter\def\csname simpleicon@apachekylinicon\endcsname {\simpleiconsmap\symbol{"EAC3}}
- \expandafter\def\csname simpleicon@apachemavenicon\endcsname {\simpleiconsmap\symbol{"EAC4}}
- \expandafter\def\csname simpleicon@apachenetbeansideicon\endcsname {\simpleiconsmap\symbol{"EAC5}}
- \expandafter\def\csname simpleicon@apacheopenofficeicon\endcsname {\simpleiconsmap\symbol{"EAC6}}
- \expandafter\def\csname simpleicon@apacheparqueticon\endcsname {\simpleiconsmap\symbol{"EAC7}}
- \expandafter\def\csname simpleicon@apachepulsaricon\endcsname {\simpleiconsmap\symbol{"EAC8}}
- \expandafter\def\csname simpleicon@apacherocketmqicon\endcsname {\simpleiconsmap\symbol{"EAC9}}
- \expandafter\def\csname simpleicon@apachesolricon\endcsname {\simpleiconsmap\symbol{"EACA}}
- \expandafter\def\csname simpleicon@apachesparkicon\endcsname {\simpleiconsmap\symbol{"EACB}}
- \expandafter\def\csname simpleicon@apachestormicon\endcsname {\simpleiconsmap\symbol{"EACC}}
- \expandafter\def\csname simpleicon@apachesuperseticon\endcsname {\simpleiconsmap\symbol{"EACD}}
- \expandafter\def\csname simpleicon@apachetomcaticon\endcsname {\simpleiconsmap\symbol{"EACE}}
- \expandafter\def\csname simpleicon@aparaticon\endcsname {\simpleiconsmap\symbol{"EACF}}
- \expandafter\def\csname simpleicon@apifoxicon\endcsname {\simpleiconsmap\symbol{"EAD0}}
- \expandafter\def\csname simpleicon@apmterminalsicon\endcsname {\simpleiconsmap\symbol{"EAD1}}
- \expandafter\def\csname simpleicon@apollographqlicon\endcsname {\simpleiconsmap\symbol{"EAD2}}
- \expandafter\def\csname simpleicon@apostropheicon\endcsname {\simpleiconsmap\symbol{"EAD3}}
- \expandafter\def\csname simpleicon@appianicon\endcsname {\simpleiconsmap\symbol{"EAD4}}
- \expandafter\def\csname simpleicon@appiumicon\endcsname {\simpleiconsmap\symbol{"EAD5}}
- \expandafter\def\csname simpleicon@appleicon\endcsname {\simpleiconsmap\symbol{"EAD6}}
- \expandafter\def\csname simpleicon@applearcadeicon\endcsname {\simpleiconsmap\symbol{"EAD7}}
- \expandafter\def\csname simpleicon@applemusicicon\endcsname {\simpleiconsmap\symbol{"EAD8}}
- \expandafter\def\csname simpleicon@applenewsicon\endcsname {\simpleiconsmap\symbol{"EAD9}}
- \expandafter\def\csname simpleicon@applepayicon\endcsname {\simpleiconsmap\symbol{"EADA}}
- \expandafter\def\csname simpleicon@applepodcastsicon\endcsname {\simpleiconsmap\symbol{"EADB}}
- \expandafter\def\csname simpleicon@appletvicon\endcsname {\simpleiconsmap\symbol{"EADC}}
- \expandafter\def\csname simpleicon@appsignalicon\endcsname {\simpleiconsmap\symbol{"EADD}}
- \expandafter\def\csname simpleicon@appsmithicon\endcsname {\simpleiconsmap\symbol{"EADE}}
- \expandafter\def\csname simpleicon@appstoreicon\endcsname {\simpleiconsmap\symbol{"EADF}}
- \expandafter\def\csname simpleicon@appveyoricon\endcsname {\simpleiconsmap\symbol{"EAE0}}
- \expandafter\def\csname simpleicon@appwriteicon\endcsname {\simpleiconsmap\symbol{"EAE1}}
- \expandafter\def\csname simpleicon@aquaicon\endcsname {\simpleiconsmap\symbol{"EAE2}}
- \expandafter\def\csname simpleicon@aralicon\endcsname {\simpleiconsmap\symbol{"EAE3}}
- \expandafter\def\csname simpleicon@arangodbicon\endcsname {\simpleiconsmap\symbol{"EAE4}}
- \expandafter\def\csname simpleicon@arcicon\endcsname {\simpleiconsmap\symbol{"EAE5}}
- \expandafter\def\csname simpleicon@arcgisicon\endcsname {\simpleiconsmap\symbol{"EAE6}}
- \expandafter\def\csname simpleicon@archicadicon\endcsname {\simpleiconsmap\symbol{"EAE7}}
- \expandafter\def\csname simpleicon@archiveofourownicon\endcsname {\simpleiconsmap\symbol{"EAE8}}
- \expandafter\def\csname simpleicon@archlinuxicon\endcsname {\simpleiconsmap\symbol{"EAE9}}
- \expandafter\def\csname simpleicon@ardouricon\endcsname {\simpleiconsmap\symbol{"EAEA}}
- \expandafter\def\csname simpleicon@arduinoicon\endcsname {\simpleiconsmap\symbol{"EAEB}}
- \expandafter\def\csname simpleicon@argoicon\endcsname {\simpleiconsmap\symbol{"EAEC}}
- \expandafter\def\csname simpleicon@argosicon\endcsname {\simpleiconsmap\symbol{"EAED}}
- \expandafter\def\csname simpleicon@ariakiticon\endcsname {\simpleiconsmap\symbol{"EAEE}}
- \expandafter\def\csname simpleicon@arkecosystemicon\endcsname {\simpleiconsmap\symbol{"EAEF}}
- \expandafter\def\csname simpleicon@arloicon\endcsname {\simpleiconsmap\symbol{"EAF0}}
- \expandafter\def\csname simpleicon@armicon\endcsname {\simpleiconsmap\symbol{"EAF1}}
- \expandafter\def\csname simpleicon@armkeilicon\endcsname {\simpleiconsmap\symbol{"EAF2}}
- \expandafter\def\csname simpleicon@arstechnicaicon\endcsname {\simpleiconsmap\symbol{"EAF3}}
- \expandafter\def\csname simpleicon@artifacthubicon\endcsname {\simpleiconsmap\symbol{"EAF4}}
- \expandafter\def\csname simpleicon@artixlinuxicon\endcsname {\simpleiconsmap\symbol{"EAF5}}
- \expandafter\def\csname simpleicon@artstationicon\endcsname {\simpleiconsmap\symbol{"EAF6}}
- \expandafter\def\csname simpleicon@arxivicon\endcsname {\simpleiconsmap\symbol{"EAF7}}
- \expandafter\def\csname simpleicon@asahilinuxicon\endcsname {\simpleiconsmap\symbol{"EAF8}}
- \expandafter\def\csname simpleicon@asanaicon\endcsname {\simpleiconsmap\symbol{"EAF9}}
- \expandafter\def\csname simpleicon@asciidoctoricon\endcsname {\simpleiconsmap\symbol{"EAFA}}
- \expandafter\def\csname simpleicon@asciinemaicon\endcsname {\simpleiconsmap\symbol{"EAFB}}
- \expandafter\def\csname simpleicon@asdaicon\endcsname {\simpleiconsmap\symbol{"EAFC}}
- \expandafter\def\csname simpleicon@asepriteicon\endcsname {\simpleiconsmap\symbol{"EAFD}}
- \expandafter\def\csname simpleicon@askfmicon\endcsname {\simpleiconsmap\symbol{"EAFE}}
- \expandafter\def\csname simpleicon@assemblyscripticon\endcsname {\simpleiconsmap\symbol{"EAFF}}
- \expandafter\def\csname simpleicon@asteriskicon\endcsname {\simpleiconsmap\symbol{"EB00}}
- \expandafter\def\csname simpleicon@astonmartinicon\endcsname {\simpleiconsmap\symbol{"EB01}}
- \expandafter\def\csname simpleicon@astraicon\endcsname {\simpleiconsmap\symbol{"EB02}}
- \expandafter\def\csname simpleicon@astralicon\endcsname {\simpleiconsmap\symbol{"EB03}}
- \expandafter\def\csname simpleicon@astroicon\endcsname {\simpleiconsmap\symbol{"EB04}}
- \expandafter\def\csname simpleicon@asusicon\endcsname {\simpleiconsmap\symbol{"EB05}}
- \expandafter\def\csname simpleicon@atandticon\endcsname {\simpleiconsmap\symbol{"EB06}}
- \expandafter\def\csname simpleicon@atariicon\endcsname {\simpleiconsmap\symbol{"EB07}}
- \expandafter\def\csname simpleicon@atlassianicon\endcsname {\simpleiconsmap\symbol{"EB08}}
- \expandafter\def\csname simpleicon@auchanicon\endcsname {\simpleiconsmap\symbol{"EB09}}
- \expandafter\def\csname simpleicon@audacityicon\endcsname {\simpleiconsmap\symbol{"EB0A}}
- \expandafter\def\csname simpleicon@audiicon\endcsname {\simpleiconsmap\symbol{"EB0B}}
- \expandafter\def\csname simpleicon@audibleicon\endcsname {\simpleiconsmap\symbol{"EB0C}}
- \expandafter\def\csname simpleicon@audiobookshelficon\endcsname {\simpleiconsmap\symbol{"EB0D}}
- \expandafter\def\csname simpleicon@audioboomicon\endcsname {\simpleiconsmap\symbol{"EB0E}}
- \expandafter\def\csname simpleicon@audiomackicon\endcsname {\simpleiconsmap\symbol{"EB0F}}
- \expandafter\def\csname simpleicon@audiotechnicaicon\endcsname {\simpleiconsmap\symbol{"EB10}}
- \expandafter\def\csname simpleicon@aureliaicon\endcsname {\simpleiconsmap\symbol{"EB11}}
- \expandafter\def\csname simpleicon@auth0icon\endcsname {\simpleiconsmap\symbol{"EB12}}
- \expandafter\def\csname simpleicon@autheliaicon\endcsname {\simpleiconsmap\symbol{"EB13}}
- \expandafter\def\csname simpleicon@authentikicon\endcsname {\simpleiconsmap\symbol{"EB14}}
- \expandafter\def\csname simpleicon@authyicon\endcsname {\simpleiconsmap\symbol{"EB15}}
- \expandafter\def\csname simpleicon@autocadicon\endcsname {\simpleiconsmap\symbol{"EB16}}
- \expandafter\def\csname simpleicon@autocannonicon\endcsname {\simpleiconsmap\symbol{"EB17}}
- \expandafter\def\csname simpleicon@autodeskicon\endcsname {\simpleiconsmap\symbol{"EB18}}
- \expandafter\def\csname simpleicon@autodeskmayaicon\endcsname {\simpleiconsmap\symbol{"EB19}}
- \expandafter\def\csname simpleicon@autodeskreviticon\endcsname {\simpleiconsmap\symbol{"EB1A}}
- \expandafter\def\csname simpleicon@autohotkeyicon\endcsname {\simpleiconsmap\symbol{"EB1B}}
- \expandafter\def\csname simpleicon@autoiticon\endcsname {\simpleiconsmap\symbol{"EB1C}}
- \expandafter\def\csname simpleicon@automatticicon\endcsname {\simpleiconsmap\symbol{"EB1D}}
- \expandafter\def\csname simpleicon@autoprefixericon\endcsname {\simpleiconsmap\symbol{"EB1E}}
- \expandafter\def\csname simpleicon@autozoneicon\endcsname {\simpleiconsmap\symbol{"EB1F}}
- \expandafter\def\csname simpleicon@avajsicon\endcsname {\simpleiconsmap\symbol{"EB20}}
- \expandafter\def\csname simpleicon@avasticon\endcsname {\simpleiconsmap\symbol{"EB21}}
- \expandafter\def\csname simpleicon@aviancaicon\endcsname {\simpleiconsmap\symbol{"EB22}}
- \expandafter\def\csname simpleicon@aviraicon\endcsname {\simpleiconsmap\symbol{"EB23}}
- \expandafter\def\csname simpleicon@awesomelistsicon\endcsname {\simpleiconsmap\symbol{"EB24}}
- \expandafter\def\csname simpleicon@awesomewmicon\endcsname {\simpleiconsmap\symbol{"EB25}}
- \expandafter\def\csname simpleicon@awsamplifyicon\endcsname {\simpleiconsmap\symbol{"EB26}}
- \expandafter\def\csname simpleicon@awselasticloadbalancingicon\endcsname {\simpleiconsmap\symbol{"EB27}}
- \expandafter\def\csname simpleicon@awsfargateicon\endcsname {\simpleiconsmap\symbol{"EB28}}
- \expandafter\def\csname simpleicon@awslambdaicon\endcsname {\simpleiconsmap\symbol{"EB29}}
- \expandafter\def\csname simpleicon@awsorganizationsicon\endcsname {\simpleiconsmap\symbol{"EB2A}}
- \expandafter\def\csname simpleicon@awssecretsmanagericon\endcsname {\simpleiconsmap\symbol{"EB2B}}
- \expandafter\def\csname simpleicon@awwwardsicon\endcsname {\simpleiconsmap\symbol{"EB2C}}
- \expandafter\def\csname simpleicon@axiosicon\endcsname {\simpleiconsmap\symbol{"EB2D}}
- \expandafter\def\csname simpleicon@azureartifactsicon\endcsname {\simpleiconsmap\symbol{"EB2E}}
- \expandafter\def\csname simpleicon@azuredataexplorericon\endcsname {\simpleiconsmap\symbol{"EB2F}}
- \expandafter\def\csname simpleicon@azuredevopsicon\endcsname {\simpleiconsmap\symbol{"EB30}}
- \expandafter\def\csname simpleicon@azurefunctionsicon\endcsname {\simpleiconsmap\symbol{"EB31}}
- \expandafter\def\csname simpleicon@azurepipelinesicon\endcsname {\simpleiconsmap\symbol{"EB32}}
- \expandafter\def\csname simpleicon@babelicon\endcsname {\simpleiconsmap\symbol{"EB33}}
- \expandafter\def\csname simpleicon@babelioicon\endcsname {\simpleiconsmap\symbol{"EB34}}
- \expandafter\def\csname simpleicon@babylondotjsicon\endcsname {\simpleiconsmap\symbol{"EB35}}
- \expandafter\def\csname simpleicon@backblazeicon\endcsname {\simpleiconsmap\symbol{"EB36}}
- \expandafter\def\csname simpleicon@backbonedotjsicon\endcsname {\simpleiconsmap\symbol{"EB37}}
- \expandafter\def\csname simpleicon@backendlessicon\endcsname {\simpleiconsmap\symbol{"EB38}}
- \expandafter\def\csname simpleicon@backstageicon\endcsname {\simpleiconsmap\symbol{"EB39}}
- \expandafter\def\csname simpleicon@badooicon\endcsname {\simpleiconsmap\symbol{"EB3A}}
- \expandafter\def\csname simpleicon@baiduicon\endcsname {\simpleiconsmap\symbol{"EB3B}}
- \expandafter\def\csname simpleicon@bakalariicon\endcsname {\simpleiconsmap\symbol{"EB3C}}
- \expandafter\def\csname simpleicon@bambooicon\endcsname {\simpleiconsmap\symbol{"EB3D}}
- \expandafter\def\csname simpleicon@bambulabicon\endcsname {\simpleiconsmap\symbol{"EB3E}}
- \expandafter\def\csname simpleicon@bandcampicon\endcsname {\simpleiconsmap\symbol{"EB3F}}
- \expandafter\def\csname simpleicon@bandlabicon\endcsname {\simpleiconsmap\symbol{"EB40}}
- \expandafter\def\csname simpleicon@bandrautomationicon\endcsname {\simpleiconsmap\symbol{"EB41}}
- \expandafter\def\csname simpleicon@bandsintownicon\endcsname {\simpleiconsmap\symbol{"EB42}}
- \expandafter\def\csname simpleicon@bankofamericaicon\endcsname {\simpleiconsmap\symbol{"EB43}}
- \expandafter\def\csname simpleicon@barclaysicon\endcsname {\simpleiconsmap\symbol{"EB44}}
- \expandafter\def\csname simpleicon@baremetricsicon\endcsname {\simpleiconsmap\symbol{"EB45}}
- \expandafter\def\csname simpleicon@barmeniaicon\endcsname {\simpleiconsmap\symbol{"EB46}}
- \expandafter\def\csname simpleicon@basecampicon\endcsname {\simpleiconsmap\symbol{"EB47}}
- \expandafter\def\csname simpleicon@basicattentiontokenicon\endcsname {\simpleiconsmap\symbol{"EB48}}
- \expandafter\def\csname simpleicon@bastyonicon\endcsname {\simpleiconsmap\symbol{"EB49}}
- \expandafter\def\csname simpleicon@baticon\endcsname {\simpleiconsmap\symbol{"EB4A}}
- \expandafter\def\csname simpleicon@bataicon\endcsname {\simpleiconsmap\symbol{"EB4B}}
- \expandafter\def\csname simpleicon@battledotneticon\endcsname {\simpleiconsmap\symbol{"EB4C}}
- \expandafter\def\csname simpleicon@bazelicon\endcsname {\simpleiconsmap\symbol{"EB4D}}
- \expandafter\def\csname simpleicon@beatporticon\endcsname {\simpleiconsmap\symbol{"EB4E}}
- \expandafter\def\csname simpleicon@beatsicon\endcsname {\simpleiconsmap\symbol{"EB4F}}
- \expandafter\def\csname simpleicon@beatsbydreicon\endcsname {\simpleiconsmap\symbol{"EB50}}
- \expandafter\def\csname simpleicon@beatstarsicon\endcsname {\simpleiconsmap\symbol{"EB51}}
- \expandafter\def\csname simpleicon@beekeeperstudioicon\endcsname {\simpleiconsmap\symbol{"EB52}}
- \expandafter\def\csname simpleicon@behanceicon\endcsname {\simpleiconsmap\symbol{"EB53}}
- \expandafter\def\csname simpleicon@beijingsubwayicon\endcsname {\simpleiconsmap\symbol{"EB54}}
- \expandafter\def\csname simpleicon@bemicon\endcsname {\simpleiconsmap\symbol{"EB55}}
- \expandafter\def\csname simpleicon@bentleyicon\endcsname {\simpleiconsmap\symbol{"EB56}}
- \expandafter\def\csname simpleicon@bentoicon\endcsname {\simpleiconsmap\symbol{"EB57}}
- \expandafter\def\csname simpleicon@bentoboxicon\endcsname {\simpleiconsmap\symbol{"EB58}}
- \expandafter\def\csname simpleicon@bentomlicon\endcsname {\simpleiconsmap\symbol{"EB59}}
- \expandafter\def\csname simpleicon@berealicon\endcsname {\simpleiconsmap\symbol{"EB5A}}
- \expandafter\def\csname simpleicon@betfairicon\endcsname {\simpleiconsmap\symbol{"EB5B}}
- \expandafter\def\csname simpleicon@betterstackicon\endcsname {\simpleiconsmap\symbol{"EB5C}}
- \expandafter\def\csname simpleicon@bevyicon\endcsname {\simpleiconsmap\symbol{"EB5D}}
- \expandafter\def\csname simpleicon@bigbasketicon\endcsname {\simpleiconsmap\symbol{"EB5E}}
- \expandafter\def\csname simpleicon@bigbluebuttonicon\endcsname {\simpleiconsmap\symbol{"EB5F}}
- \expandafter\def\csname simpleicon@bigcartelicon\endcsname {\simpleiconsmap\symbol{"EB60}}
- \expandafter\def\csname simpleicon@bigcommerceicon\endcsname {\simpleiconsmap\symbol{"EB61}}
- \expandafter\def\csname simpleicon@bilibiliicon\endcsname {\simpleiconsmap\symbol{"EB62}}
- \expandafter\def\csname simpleicon@billboardicon\endcsname {\simpleiconsmap\symbol{"EB63}}
- \expandafter\def\csname simpleicon@bimicon\endcsname {\simpleiconsmap\symbol{"EB64}}
- \expandafter\def\csname simpleicon@binanceicon\endcsname {\simpleiconsmap\symbol{"EB65}}
- \expandafter\def\csname simpleicon@biolinkicon\endcsname {\simpleiconsmap\symbol{"EB66}}
- \expandafter\def\csname simpleicon@biomeicon\endcsname {\simpleiconsmap\symbol{"EB67}}
- \expandafter\def\csname simpleicon@bisecthostingicon\endcsname {\simpleiconsmap\symbol{"EB68}}
- \expandafter\def\csname simpleicon@biticon\endcsname {\simpleiconsmap\symbol{"EB69}}
- \expandafter\def\csname simpleicon@bitbucketicon\endcsname {\simpleiconsmap\symbol{"EB6A}}
- \expandafter\def\csname simpleicon@bitcoinicon\endcsname {\simpleiconsmap\symbol{"EB6B}}
- \expandafter\def\csname simpleicon@bitcoincashicon\endcsname {\simpleiconsmap\symbol{"EB6C}}
- \expandafter\def\csname simpleicon@bitcoinsvicon\endcsname {\simpleiconsmap\symbol{"EB6D}}
- \expandafter\def\csname simpleicon@bitcometicon\endcsname {\simpleiconsmap\symbol{"EB6E}}
- \expandafter\def\csname simpleicon@bitdefendericon\endcsname {\simpleiconsmap\symbol{"EB6F}}
- \expandafter\def\csname simpleicon@bitlyicon\endcsname {\simpleiconsmap\symbol{"EB70}}
- \expandafter\def\csname simpleicon@bitriseicon\endcsname {\simpleiconsmap\symbol{"EB71}}
- \expandafter\def\csname simpleicon@bittorrenticon\endcsname {\simpleiconsmap\symbol{"EB72}}
- \expandafter\def\csname simpleicon@bitwardenicon\endcsname {\simpleiconsmap\symbol{"EB73}}
- \expandafter\def\csname simpleicon@bitwigicon\endcsname {\simpleiconsmap\symbol{"EB74}}
- \expandafter\def\csname simpleicon@blackberryicon\endcsname {\simpleiconsmap\symbol{"EB75}}
- \expandafter\def\csname simpleicon@blackmagicdesignicon\endcsname {\simpleiconsmap\symbol{"EB76}}
- \expandafter\def\csname simpleicon@blazemetericon\endcsname {\simpleiconsmap\symbol{"EB77}}
- \expandafter\def\csname simpleicon@blazoricon\endcsname {\simpleiconsmap\symbol{"EB78}}
- \expandafter\def\csname simpleicon@blendericon\endcsname {\simpleiconsmap\symbol{"EB79}}
- \expandafter\def\csname simpleicon@blockbenchicon\endcsname {\simpleiconsmap\symbol{"EB7A}}
- \expandafter\def\csname simpleicon@blockchaindotcomicon\endcsname {\simpleiconsmap\symbol{"EB7B}}
- \expandafter\def\csname simpleicon@bloggericon\endcsname {\simpleiconsmap\symbol{"EB7C}}
- \expandafter\def\csname simpleicon@bloglovinicon\endcsname {\simpleiconsmap\symbol{"EB7D}}
- \expandafter\def\csname simpleicon@blueprinticon\endcsname {\simpleiconsmap\symbol{"EB7E}}
- \expandafter\def\csname simpleicon@blueskyicon\endcsname {\simpleiconsmap\symbol{"EB7F}}
- \expandafter\def\csname simpleicon@bluesoundicon\endcsname {\simpleiconsmap\symbol{"EB80}}
- \expandafter\def\csname simpleicon@bluetoothicon\endcsname {\simpleiconsmap\symbol{"EB81}}
- \expandafter\def\csname simpleicon@bmcsoftwareicon\endcsname {\simpleiconsmap\symbol{"EB82}}
- \expandafter\def\csname simpleicon@bmwicon\endcsname {\simpleiconsmap\symbol{"EB83}}
- \expandafter\def\csname simpleicon@bnbchainicon\endcsname {\simpleiconsmap\symbol{"EB84}}
- \expandafter\def\csname simpleicon@boardgamegeekicon\endcsname {\simpleiconsmap\symbol{"EB85}}
- \expandafter\def\csname simpleicon@boaticon\endcsname {\simpleiconsmap\symbol{"EB86}}
- \expandafter\def\csname simpleicon@boehringeringelheimicon\endcsname {\simpleiconsmap\symbol{"EB87}}
- \expandafter\def\csname simpleicon@boeingicon\endcsname {\simpleiconsmap\symbol{"EB88}}
- \expandafter\def\csname simpleicon@bombardiericon\endcsname {\simpleiconsmap\symbol{"EB89}}
- \expandafter\def\csname simpleicon@bookalopeicon\endcsname {\simpleiconsmap\symbol{"EB8A}}
- \expandafter\def\csname simpleicon@bookbubicon\endcsname {\simpleiconsmap\symbol{"EB8B}}
- \expandafter\def\csname simpleicon@bookmetericon\endcsname {\simpleiconsmap\symbol{"EB8C}}
- \expandafter\def\csname simpleicon@bookmyshowicon\endcsname {\simpleiconsmap\symbol{"EB8D}}
- \expandafter\def\csname simpleicon@bookstackicon\endcsname {\simpleiconsmap\symbol{"EB8E}}
- \expandafter\def\csname simpleicon@boosticon\endcsname {\simpleiconsmap\symbol{"EB8F}}
- \expandafter\def\csname simpleicon@boostyicon\endcsname {\simpleiconsmap\symbol{"EB90}}
- \expandafter\def\csname simpleicon@bootsicon\endcsname {\simpleiconsmap\symbol{"EB91}}
- \expandafter\def\csname simpleicon@bootstrapicon\endcsname {\simpleiconsmap\symbol{"EB92}}
- \expandafter\def\csname simpleicon@borgbackupicon\endcsname {\simpleiconsmap\symbol{"EB93}}
- \expandafter\def\csname simpleicon@boschicon\endcsname {\simpleiconsmap\symbol{"EB94}}
- \expandafter\def\csname simpleicon@boseicon\endcsname {\simpleiconsmap\symbol{"EB95}}
- \expandafter\def\csname simpleicon@botblecmsicon\endcsname {\simpleiconsmap\symbol{"EB96}}
- \expandafter\def\csname simpleicon@boulangericon\endcsname {\simpleiconsmap\symbol{"EB97}}
- \expandafter\def\csname simpleicon@bowericon\endcsname {\simpleiconsmap\symbol{"EB98}}
- \expandafter\def\csname simpleicon@boxicon\endcsname {\simpleiconsmap\symbol{"EB99}}
- \expandafter\def\csname simpleicon@boxysvgicon\endcsname {\simpleiconsmap\symbol{"EB9A}}
- \expandafter\def\csname simpleicon@braintreeicon\endcsname {\simpleiconsmap\symbol{"EB9B}}
- \expandafter\def\csname simpleicon@brandfoldericon\endcsname {\simpleiconsmap\symbol{"EB9C}}
- \expandafter\def\csname simpleicon@braveicon\endcsname {\simpleiconsmap\symbol{"EB9D}}
- \expandafter\def\csname simpleicon@breakericon\endcsname {\simpleiconsmap\symbol{"EB9E}}
- \expandafter\def\csname simpleicon@brenntagicon\endcsname {\simpleiconsmap\symbol{"EB9F}}
- \expandafter\def\csname simpleicon@brevoicon\endcsname {\simpleiconsmap\symbol{"EBA0}}
- \expandafter\def\csname simpleicon@brexicon\endcsname {\simpleiconsmap\symbol{"EBA1}}
- \expandafter\def\csname simpleicon@bricksicon\endcsname {\simpleiconsmap\symbol{"EBA2}}
- \expandafter\def\csname simpleicon@britishairwaysicon\endcsname {\simpleiconsmap\symbol{"EBA3}}
- \expandafter\def\csname simpleicon@broadcomicon\endcsname {\simpleiconsmap\symbol{"EBA4}}
- \expandafter\def\csname simpleicon@brunoicon\endcsname {\simpleiconsmap\symbol{"EBA5}}
- \expandafter\def\csname simpleicon@bsdicon\endcsname {\simpleiconsmap\symbol{"EBA6}}
- \expandafter\def\csname simpleicon@bspwmicon\endcsname {\simpleiconsmap\symbol{"EBA7}}
- \expandafter\def\csname simpleicon@bticon\endcsname {\simpleiconsmap\symbol{"EBA8}}
- \expandafter\def\csname simpleicon@buddyicon\endcsname {\simpleiconsmap\symbol{"EBA9}}
- \expandafter\def\csname simpleicon@budibaseicon\endcsname {\simpleiconsmap\symbol{"EBAA}}
- \expandafter\def\csname simpleicon@buefyicon\endcsname {\simpleiconsmap\symbol{"EBAB}}
- \expandafter\def\csname simpleicon@buffericon\endcsname {\simpleiconsmap\symbol{"EBAC}}
- \expandafter\def\csname simpleicon@bugattiicon\endcsname {\simpleiconsmap\symbol{"EBAD}}
- \expandafter\def\csname simpleicon@bugcrowdicon\endcsname {\simpleiconsmap\symbol{"EBAE}}
- \expandafter\def\csname simpleicon@bugsnagicon\endcsname {\simpleiconsmap\symbol{"EBAF}}
- \expandafter\def\csname simpleicon@buhlicon\endcsname {\simpleiconsmap\symbol{"EBB0}}
- \expandafter\def\csname simpleicon@buildkiteicon\endcsname {\simpleiconsmap\symbol{"EBB1}}
+ \expandafter\def\csname simpleicon@30secondsofcodeicon\endcsname {\simpleiconsmap\symbol{"EA07}}
+ \expandafter\def\csname simpleicon@365datascienceicon\endcsname {\simpleiconsmap\symbol{"EA08}}
+ \expandafter\def\csname simpleicon@3micon\endcsname {\simpleiconsmap\symbol{"EA09}}
+ \expandafter\def\csname simpleicon@42icon\endcsname {\simpleiconsmap\symbol{"EA0A}}
+ \expandafter\def\csname simpleicon@4chanicon\endcsname {\simpleiconsmap\symbol{"EA0B}}
+ \expandafter\def\csname simpleicon@4dicon\endcsname {\simpleiconsmap\symbol{"EA0C}}
+ \expandafter\def\csname simpleicon@500pxicon\endcsname {\simpleiconsmap\symbol{"EA0D}}
+ \expandafter\def\csname simpleicon@7zipicon\endcsname {\simpleiconsmap\symbol{"EA0E}}
+ \expandafter\def\csname simpleicon@99designsicon\endcsname {\simpleiconsmap\symbol{"EA0F}}
+ \expandafter\def\csname simpleicon@9gagicon\endcsname {\simpleiconsmap\symbol{"EA10}}
+ \expandafter\def\csname simpleicon@abbotticon\endcsname {\simpleiconsmap\symbol{"EA11}}
+ \expandafter\def\csname simpleicon@abbrobotstudioicon\endcsname {\simpleiconsmap\symbol{"EA12}}
+ \expandafter\def\csname simpleicon@abbvieicon\endcsname {\simpleiconsmap\symbol{"EA13}}
+ \expandafter\def\csname simpleicon@aboutdotmeicon\endcsname {\simpleiconsmap\symbol{"EA14}}
+ \expandafter\def\csname simpleicon@abstracticon\endcsname {\simpleiconsmap\symbol{"EA15}}
+ \expandafter\def\csname simpleicon@abusedotchicon\endcsname {\simpleiconsmap\symbol{"EA16}}
+ \expandafter\def\csname simpleicon@academiaicon\endcsname {\simpleiconsmap\symbol{"EA17}}
+ \expandafter\def\csname simpleicon@accentureicon\endcsname {\simpleiconsmap\symbol{"EA18}}
+ \expandafter\def\csname simpleicon@accusofticon\endcsname {\simpleiconsmap\symbol{"EA19}}
+ \expandafter\def\csname simpleicon@acericon\endcsname {\simpleiconsmap\symbol{"EA1A}}
+ \expandafter\def\csname simpleicon@acmicon\endcsname {\simpleiconsmap\symbol{"EA1B}}
+ \expandafter\def\csname simpleicon@actigraphicon\endcsname {\simpleiconsmap\symbol{"EA1C}}
+ \expandafter\def\csname simpleicon@activisionicon\endcsname {\simpleiconsmap\symbol{"EA1D}}
+ \expandafter\def\csname simpleicon@activitypubicon\endcsname {\simpleiconsmap\symbol{"EA1E}}
+ \expandafter\def\csname simpleicon@actixicon\endcsname {\simpleiconsmap\symbol{"EA1F}}
+ \expandafter\def\csname simpleicon@acuraicon\endcsname {\simpleiconsmap\symbol{"EA20}}
+ \expandafter\def\csname simpleicon@adafruiticon\endcsname {\simpleiconsmap\symbol{"EA21}}
+ \expandafter\def\csname simpleicon@adblockicon\endcsname {\simpleiconsmap\symbol{"EA22}}
+ \expandafter\def\csname simpleicon@adblockplusicon\endcsname {\simpleiconsmap\symbol{"EA23}}
+ \expandafter\def\csname simpleicon@adguardicon\endcsname {\simpleiconsmap\symbol{"EA24}}
+ \expandafter\def\csname simpleicon@adidasicon\endcsname {\simpleiconsmap\symbol{"EA25}}
+ \expandafter\def\csname simpleicon@adminericon\endcsname {\simpleiconsmap\symbol{"EA26}}
+ \expandafter\def\csname simpleicon@adobeicon\endcsname {\simpleiconsmap\symbol{"EA27}}
+ \expandafter\def\csname simpleicon@adobeacrobatreadericon\endcsname {\simpleiconsmap\symbol{"EA28}}
+ \expandafter\def\csname simpleicon@adobeaftereffectsicon\endcsname {\simpleiconsmap\symbol{"EA29}}
+ \expandafter\def\csname simpleicon@adobeauditionicon\endcsname {\simpleiconsmap\symbol{"EA2A}}
+ \expandafter\def\csname simpleicon@adobecreativecloudicon\endcsname {\simpleiconsmap\symbol{"EA2B}}
+ \expandafter\def\csname simpleicon@adobedreamweavericon\endcsname {\simpleiconsmap\symbol{"EA2C}}
+ \expandafter\def\csname simpleicon@adobefontsicon\endcsname {\simpleiconsmap\symbol{"EA2D}}
+ \expandafter\def\csname simpleicon@adobeillustratoricon\endcsname {\simpleiconsmap\symbol{"EA2E}}
+ \expandafter\def\csname simpleicon@adobeindesignicon\endcsname {\simpleiconsmap\symbol{"EA2F}}
+ \expandafter\def\csname simpleicon@adobelightroomicon\endcsname {\simpleiconsmap\symbol{"EA30}}
+ \expandafter\def\csname simpleicon@adobelightroomclassicicon\endcsname {\simpleiconsmap\symbol{"EA31}}
+ \expandafter\def\csname simpleicon@adobephotoshopicon\endcsname {\simpleiconsmap\symbol{"EA32}}
+ \expandafter\def\csname simpleicon@adobepremiereproicon\endcsname {\simpleiconsmap\symbol{"EA33}}
+ \expandafter\def\csname simpleicon@adobexdicon\endcsname {\simpleiconsmap\symbol{"EA34}}
+ \expandafter\def\csname simpleicon@adonisjsicon\endcsname {\simpleiconsmap\symbol{"EA35}}
+ \expandafter\def\csname simpleicon@adpicon\endcsname {\simpleiconsmap\symbol{"EA36}}
+ \expandafter\def\csname simpleicon@adrollicon\endcsname {\simpleiconsmap\symbol{"EA37}}
+ \expandafter\def\csname simpleicon@adventofcodeicon\endcsname {\simpleiconsmap\symbol{"EA38}}
+ \expandafter\def\csname simpleicon@adyenicon\endcsname {\simpleiconsmap\symbol{"EA39}}
+ \expandafter\def\csname simpleicon@aegisauthenticatoricon\endcsname {\simpleiconsmap\symbol{"EA3A}}
+ \expandafter\def\csname simpleicon@aerlingusicon\endcsname {\simpleiconsmap\symbol{"EA3B}}
+ \expandafter\def\csname simpleicon@aerofloticon\endcsname {\simpleiconsmap\symbol{"EA3C}}
+ \expandafter\def\csname simpleicon@aeromexicoicon\endcsname {\simpleiconsmap\symbol{"EA3D}}
+ \expandafter\def\csname simpleicon@aerospikeicon\endcsname {\simpleiconsmap\symbol{"EA3E}}
+ \expandafter\def\csname simpleicon@aewicon\endcsname {\simpleiconsmap\symbol{"EA3F}}
+ \expandafter\def\csname simpleicon@affineicon\endcsname {\simpleiconsmap\symbol{"EA40}}
+ \expandafter\def\csname simpleicon@affinityicon\endcsname {\simpleiconsmap\symbol{"EA41}}
+ \expandafter\def\csname simpleicon@affinitydesignericon\endcsname {\simpleiconsmap\symbol{"EA42}}
+ \expandafter\def\csname simpleicon@affinityphotoicon\endcsname {\simpleiconsmap\symbol{"EA43}}
+ \expandafter\def\csname simpleicon@affinitypublishericon\endcsname {\simpleiconsmap\symbol{"EA44}}
+ \expandafter\def\csname simpleicon@aframeicon\endcsname {\simpleiconsmap\symbol{"EA45}}
+ \expandafter\def\csname simpleicon@afterpayicon\endcsname {\simpleiconsmap\symbol{"EA46}}
+ \expandafter\def\csname simpleicon@agoraicon\endcsname {\simpleiconsmap\symbol{"EA47}}
+ \expandafter\def\csname simpleicon@aibicon\endcsname {\simpleiconsmap\symbol{"EA48}}
+ \expandafter\def\csname simpleicon@aidungeonicon\endcsname {\simpleiconsmap\symbol{"EA49}}
+ \expandafter\def\csname simpleicon@aiohttpicon\endcsname {\simpleiconsmap\symbol{"EA4A}}
+ \expandafter\def\csname simpleicon@aiqfomeicon\endcsname {\simpleiconsmap\symbol{"EA4B}}
+ \expandafter\def\csname simpleicon@airasiaicon\endcsname {\simpleiconsmap\symbol{"EA4C}}
+ \expandafter\def\csname simpleicon@airbnbicon\endcsname {\simpleiconsmap\symbol{"EA4D}}
+ \expandafter\def\csname simpleicon@airbrakeicon\endcsname {\simpleiconsmap\symbol{"EA4E}}
+ \expandafter\def\csname simpleicon@airbusicon\endcsname {\simpleiconsmap\symbol{"EA4F}}
+ \expandafter\def\csname simpleicon@airbyteicon\endcsname {\simpleiconsmap\symbol{"EA50}}
+ \expandafter\def\csname simpleicon@aircallicon\endcsname {\simpleiconsmap\symbol{"EA51}}
+ \expandafter\def\csname simpleicon@aircanadaicon\endcsname {\simpleiconsmap\symbol{"EA52}}
+ \expandafter\def\csname simpleicon@airchinaicon\endcsname {\simpleiconsmap\symbol{"EA53}}
+ \expandafter\def\csname simpleicon@airfranceicon\endcsname {\simpleiconsmap\symbol{"EA54}}
+ \expandafter\def\csname simpleicon@airindiaicon\endcsname {\simpleiconsmap\symbol{"EA55}}
+ \expandafter\def\csname simpleicon@airplayaudioicon\endcsname {\simpleiconsmap\symbol{"EA56}}
+ \expandafter\def\csname simpleicon@airplayvideoicon\endcsname {\simpleiconsmap\symbol{"EA57}}
+ \expandafter\def\csname simpleicon@airtableicon\endcsname {\simpleiconsmap\symbol{"EA58}}
+ \expandafter\def\csname simpleicon@airtelicon\endcsname {\simpleiconsmap\symbol{"EA59}}
+ \expandafter\def\csname simpleicon@airtransaticon\endcsname {\simpleiconsmap\symbol{"EA5A}}
+ \expandafter\def\csname simpleicon@ajvicon\endcsname {\simpleiconsmap\symbol{"EA5B}}
+ \expandafter\def\csname simpleicon@akamaiicon\endcsname {\simpleiconsmap\symbol{"EA5C}}
+ \expandafter\def\csname simpleicon@akauntingicon\endcsname {\simpleiconsmap\symbol{"EA5D}}
+ \expandafter\def\csname simpleicon@akiflowicon\endcsname {\simpleiconsmap\symbol{"EA5E}}
+ \expandafter\def\csname simpleicon@alacrittyicon\endcsname {\simpleiconsmap\symbol{"EA5F}}
+ \expandafter\def\csname simpleicon@alamyicon\endcsname {\simpleiconsmap\symbol{"EA60}}
+ \expandafter\def\csname simpleicon@albertheijnicon\endcsname {\simpleiconsmap\symbol{"EA61}}
+ \expandafter\def\csname simpleicon@albyicon\endcsname {\simpleiconsmap\symbol{"EA62}}
+ \expandafter\def\csname simpleicon@alchemyicon\endcsname {\simpleiconsmap\symbol{"EA63}}
+ \expandafter\def\csname simpleicon@aldinordicon\endcsname {\simpleiconsmap\symbol{"EA64}}
+ \expandafter\def\csname simpleicon@aldisudicon\endcsname {\simpleiconsmap\symbol{"EA65}}
+ \expandafter\def\csname simpleicon@alfaromeoicon\endcsname {\simpleiconsmap\symbol{"EA66}}
+ \expandafter\def\csname simpleicon@alfredicon\endcsname {\simpleiconsmap\symbol{"EA67}}
+ \expandafter\def\csname simpleicon@algoliaicon\endcsname {\simpleiconsmap\symbol{"EA68}}
+ \expandafter\def\csname simpleicon@algorandicon\endcsname {\simpleiconsmap\symbol{"EA69}}
+ \expandafter\def\csname simpleicon@alibabacloudicon\endcsname {\simpleiconsmap\symbol{"EA6A}}
+ \expandafter\def\csname simpleicon@alibabadotcomicon\endcsname {\simpleiconsmap\symbol{"EA6B}}
+ \expandafter\def\csname simpleicon@alienwareicon\endcsname {\simpleiconsmap\symbol{"EA6C}}
+ \expandafter\def\csname simpleicon@aliexpressicon\endcsname {\simpleiconsmap\symbol{"EA6D}}
+ \expandafter\def\csname simpleicon@alipayicon\endcsname {\simpleiconsmap\symbol{"EA6E}}
+ \expandafter\def\csname simpleicon@allegroicon\endcsname {\simpleiconsmap\symbol{"EA6F}}
+ \expandafter\def\csname simpleicon@alliedmoddersicon\endcsname {\simpleiconsmap\symbol{"EA70}}
+ \expandafter\def\csname simpleicon@allocineicon\endcsname {\simpleiconsmap\symbol{"EA71}}
+ \expandafter\def\csname simpleicon@alltrailsicon\endcsname {\simpleiconsmap\symbol{"EA72}}
+ \expandafter\def\csname simpleicon@almalinuxicon\endcsname {\simpleiconsmap\symbol{"EA73}}
+ \expandafter\def\csname simpleicon@alpinedotjsicon\endcsname {\simpleiconsmap\symbol{"EA74}}
+ \expandafter\def\csname simpleicon@alpinelinuxicon\endcsname {\simpleiconsmap\symbol{"EA75}}
+ \expandafter\def\csname simpleicon@alteryxicon\endcsname {\simpleiconsmap\symbol{"EA76}}
+ \expandafter\def\csname simpleicon@altiumdesignericon\endcsname {\simpleiconsmap\symbol{"EA77}}
+ \expandafter\def\csname simpleicon@alwaysdataicon\endcsname {\simpleiconsmap\symbol{"EA78}}
+ \expandafter\def\csname simpleicon@alxicon\endcsname {\simpleiconsmap\symbol{"EA79}}
+ \expandafter\def\csname simpleicon@amazonicon\endcsname {\simpleiconsmap\symbol{"EA7A}}
+ \expandafter\def\csname simpleicon@amazonalexaicon\endcsname {\simpleiconsmap\symbol{"EA7B}}
+ \expandafter\def\csname simpleicon@amazonapigatewayicon\endcsname {\simpleiconsmap\symbol{"EA7C}}
+ \expandafter\def\csname simpleicon@amazoncloudwatchicon\endcsname {\simpleiconsmap\symbol{"EA7D}}
+ \expandafter\def\csname simpleicon@amazoncognitoicon\endcsname {\simpleiconsmap\symbol{"EA7E}}
+ \expandafter\def\csname simpleicon@amazondocumentdbicon\endcsname {\simpleiconsmap\symbol{"EA7F}}
+ \expandafter\def\csname simpleicon@amazondynamodbicon\endcsname {\simpleiconsmap\symbol{"EA80}}
+ \expandafter\def\csname simpleicon@amazonec2icon\endcsname {\simpleiconsmap\symbol{"EA81}}
+ \expandafter\def\csname simpleicon@amazonecsicon\endcsname {\simpleiconsmap\symbol{"EA82}}
+ \expandafter\def\csname simpleicon@amazoneksicon\endcsname {\simpleiconsmap\symbol{"EA83}}
+ \expandafter\def\csname simpleicon@amazonelasticacheicon\endcsname {\simpleiconsmap\symbol{"EA84}}
+ \expandafter\def\csname simpleicon@amazonfiretvicon\endcsname {\simpleiconsmap\symbol{"EA85}}
+ \expandafter\def\csname simpleicon@amazongamesicon\endcsname {\simpleiconsmap\symbol{"EA86}}
+ \expandafter\def\csname simpleicon@amazoniamicon\endcsname {\simpleiconsmap\symbol{"EA87}}
+ \expandafter\def\csname simpleicon@amazonlumberyardicon\endcsname {\simpleiconsmap\symbol{"EA88}}
+ \expandafter\def\csname simpleicon@amazonlunaicon\endcsname {\simpleiconsmap\symbol{"EA89}}
+ \expandafter\def\csname simpleicon@amazonmusicicon\endcsname {\simpleiconsmap\symbol{"EA8A}}
+ \expandafter\def\csname simpleicon@amazonpayicon\endcsname {\simpleiconsmap\symbol{"EA8B}}
+ \expandafter\def\csname simpleicon@amazonprimeicon\endcsname {\simpleiconsmap\symbol{"EA8C}}
+ \expandafter\def\csname simpleicon@amazonrdsicon\endcsname {\simpleiconsmap\symbol{"EA8D}}
+ \expandafter\def\csname simpleicon@amazonredshifticon\endcsname {\simpleiconsmap\symbol{"EA8E}}
+ \expandafter\def\csname simpleicon@amazonroute53icon\endcsname {\simpleiconsmap\symbol{"EA8F}}
+ \expandafter\def\csname simpleicon@amazons3icon\endcsname {\simpleiconsmap\symbol{"EA90}}
+ \expandafter\def\csname simpleicon@amazonsimpleemailserviceicon\endcsname {\simpleiconsmap\symbol{"EA91}}
+ \expandafter\def\csname simpleicon@amazonsqsicon\endcsname {\simpleiconsmap\symbol{"EA92}}
+ \expandafter\def\csname simpleicon@amazonwebservicesicon\endcsname {\simpleiconsmap\symbol{"EA93}}
+ \expandafter\def\csname simpleicon@amdicon\endcsname {\simpleiconsmap\symbol{"EA94}}
+ \expandafter\def\csname simpleicon@amebaicon\endcsname {\simpleiconsmap\symbol{"EA95}}
+ \expandafter\def\csname simpleicon@americanairlinesicon\endcsname {\simpleiconsmap\symbol{"EA96}}
+ \expandafter\def\csname simpleicon@americanexpressicon\endcsname {\simpleiconsmap\symbol{"EA97}}
+ \expandafter\def\csname simpleicon@amgicon\endcsname {\simpleiconsmap\symbol{"EA98}}
+ \expandafter\def\csname simpleicon@ampicon\endcsname {\simpleiconsmap\symbol{"EA99}}
+ \expandafter\def\csname simpleicon@amulicon\endcsname {\simpleiconsmap\symbol{"EA9A}}
+ \expandafter\def\csname simpleicon@anaicon\endcsname {\simpleiconsmap\symbol{"EA9B}}
+ \expandafter\def\csname simpleicon@anacondaicon\endcsname {\simpleiconsmap\symbol{"EA9C}}
+ \expandafter\def\csname simpleicon@analogueicon\endcsname {\simpleiconsmap\symbol{"EA9D}}
+ \expandafter\def\csname simpleicon@andelaicon\endcsname {\simpleiconsmap\symbol{"EA9E}}
+ \expandafter\def\csname simpleicon@androidicon\endcsname {\simpleiconsmap\symbol{"EA9F}}
+ \expandafter\def\csname simpleicon@androidautoicon\endcsname {\simpleiconsmap\symbol{"EAA0}}
+ \expandafter\def\csname simpleicon@androidstudioicon\endcsname {\simpleiconsmap\symbol{"EAA1}}
+ \expandafter\def\csname simpleicon@angularicon\endcsname {\simpleiconsmap\symbol{"EAA2}}
+ \expandafter\def\csname simpleicon@anilisticon\endcsname {\simpleiconsmap\symbol{"EAA3}}
+ \expandafter\def\csname simpleicon@animalplaneticon\endcsname {\simpleiconsmap\symbol{"EAA4}}
+ \expandafter\def\csname simpleicon@ankermakeicon\endcsname {\simpleiconsmap\symbol{"EAA5}}
+ \expandafter\def\csname simpleicon@ankiicon\endcsname {\simpleiconsmap\symbol{"EAA6}}
+ \expandafter\def\csname simpleicon@ansibleicon\endcsname {\simpleiconsmap\symbol{"EAA7}}
+ \expandafter\def\csname simpleicon@answericon\endcsname {\simpleiconsmap\symbol{"EAA8}}
+ \expandafter\def\csname simpleicon@ansysicon\endcsname {\simpleiconsmap\symbol{"EAA9}}
+ \expandafter\def\csname simpleicon@antaicon\endcsname {\simpleiconsmap\symbol{"EAAA}}
+ \expandafter\def\csname simpleicon@antdesignicon\endcsname {\simpleiconsmap\symbol{"EAAB}}
+ \expandafter\def\csname simpleicon@antena3icon\endcsname {\simpleiconsmap\symbol{"EAAC}}
+ \expandafter\def\csname simpleicon@anthropicicon\endcsname {\simpleiconsmap\symbol{"EAAD}}
+ \expandafter\def\csname simpleicon@anycubicicon\endcsname {\simpleiconsmap\symbol{"EAAE}}
+ \expandafter\def\csname simpleicon@anydeskicon\endcsname {\simpleiconsmap\symbol{"EAAF}}
+ \expandafter\def\csname simpleicon@anytypeicon\endcsname {\simpleiconsmap\symbol{"EAB0}}
+ \expandafter\def\csname simpleicon@aolicon\endcsname {\simpleiconsmap\symbol{"EAB1}}
+ \expandafter\def\csname simpleicon@apacheicon\endcsname {\simpleiconsmap\symbol{"EAB2}}
+ \expandafter\def\csname simpleicon@apacheairflowicon\endcsname {\simpleiconsmap\symbol{"EAB3}}
+ \expandafter\def\csname simpleicon@apacheanticon\endcsname {\simpleiconsmap\symbol{"EAB4}}
+ \expandafter\def\csname simpleicon@apachecassandraicon\endcsname {\simpleiconsmap\symbol{"EAB5}}
+ \expandafter\def\csname simpleicon@apachecloudstackicon\endcsname {\simpleiconsmap\symbol{"EAB6}}
+ \expandafter\def\csname simpleicon@apachecordovaicon\endcsname {\simpleiconsmap\symbol{"EAB7}}
+ \expandafter\def\csname simpleicon@apachecouchdbicon\endcsname {\simpleiconsmap\symbol{"EAB8}}
+ \expandafter\def\csname simpleicon@apachedolphinschedulericon\endcsname {\simpleiconsmap\symbol{"EAB9}}
+ \expandafter\def\csname simpleicon@apachedruidicon\endcsname {\simpleiconsmap\symbol{"EABA}}
+ \expandafter\def\csname simpleicon@apacheechartsicon\endcsname {\simpleiconsmap\symbol{"EABB}}
+ \expandafter\def\csname simpleicon@apacheflinkicon\endcsname {\simpleiconsmap\symbol{"EABC}}
+ \expandafter\def\csname simpleicon@apachefreemarkericon\endcsname {\simpleiconsmap\symbol{"EABD}}
+ \expandafter\def\csname simpleicon@apachegroovyicon\endcsname {\simpleiconsmap\symbol{"EABE}}
+ \expandafter\def\csname simpleicon@apacheguacamoleicon\endcsname {\simpleiconsmap\symbol{"EABF}}
+ \expandafter\def\csname simpleicon@apachehadoopicon\endcsname {\simpleiconsmap\symbol{"EAC0}}
+ \expandafter\def\csname simpleicon@apachehbaseicon\endcsname {\simpleiconsmap\symbol{"EAC1}}
+ \expandafter\def\csname simpleicon@apachehiveicon\endcsname {\simpleiconsmap\symbol{"EAC2}}
+ \expandafter\def\csname simpleicon@apachejmetericon\endcsname {\simpleiconsmap\symbol{"EAC3}}
+ \expandafter\def\csname simpleicon@apachekafkaicon\endcsname {\simpleiconsmap\symbol{"EAC4}}
+ \expandafter\def\csname simpleicon@apachekylinicon\endcsname {\simpleiconsmap\symbol{"EAC5}}
+ \expandafter\def\csname simpleicon@apachemavenicon\endcsname {\simpleiconsmap\symbol{"EAC6}}
+ \expandafter\def\csname simpleicon@apachenetbeansideicon\endcsname {\simpleiconsmap\symbol{"EAC7}}
+ \expandafter\def\csname simpleicon@apachenifiicon\endcsname {\simpleiconsmap\symbol{"EAC8}}
+ \expandafter\def\csname simpleicon@apacheopenofficeicon\endcsname {\simpleiconsmap\symbol{"EAC9}}
+ \expandafter\def\csname simpleicon@apacheparqueticon\endcsname {\simpleiconsmap\symbol{"EACA}}
+ \expandafter\def\csname simpleicon@apachepulsaricon\endcsname {\simpleiconsmap\symbol{"EACB}}
+ \expandafter\def\csname simpleicon@apacherocketmqicon\endcsname {\simpleiconsmap\symbol{"EACC}}
+ \expandafter\def\csname simpleicon@apachesolricon\endcsname {\simpleiconsmap\symbol{"EACD}}
+ \expandafter\def\csname simpleicon@apachesparkicon\endcsname {\simpleiconsmap\symbol{"EACE}}
+ \expandafter\def\csname simpleicon@apachestormicon\endcsname {\simpleiconsmap\symbol{"EACF}}
+ \expandafter\def\csname simpleicon@apachesuperseticon\endcsname {\simpleiconsmap\symbol{"EAD0}}
+ \expandafter\def\csname simpleicon@apachetomcaticon\endcsname {\simpleiconsmap\symbol{"EAD1}}
+ \expandafter\def\csname simpleicon@aparaticon\endcsname {\simpleiconsmap\symbol{"EAD2}}
+ \expandafter\def\csname simpleicon@apifoxicon\endcsname {\simpleiconsmap\symbol{"EAD3}}
+ \expandafter\def\csname simpleicon@apmterminalsicon\endcsname {\simpleiconsmap\symbol{"EAD4}}
+ \expandafter\def\csname simpleicon@apollographqlicon\endcsname {\simpleiconsmap\symbol{"EAD5}}
+ \expandafter\def\csname simpleicon@apostropheicon\endcsname {\simpleiconsmap\symbol{"EAD6}}
+ \expandafter\def\csname simpleicon@appianicon\endcsname {\simpleiconsmap\symbol{"EAD7}}
+ \expandafter\def\csname simpleicon@appiumicon\endcsname {\simpleiconsmap\symbol{"EAD8}}
+ \expandafter\def\csname simpleicon@appleicon\endcsname {\simpleiconsmap\symbol{"EAD9}}
+ \expandafter\def\csname simpleicon@applearcadeicon\endcsname {\simpleiconsmap\symbol{"EADA}}
+ \expandafter\def\csname simpleicon@applemusicicon\endcsname {\simpleiconsmap\symbol{"EADB}}
+ \expandafter\def\csname simpleicon@applenewsicon\endcsname {\simpleiconsmap\symbol{"EADC}}
+ \expandafter\def\csname simpleicon@applepayicon\endcsname {\simpleiconsmap\symbol{"EADD}}
+ \expandafter\def\csname simpleicon@applepodcastsicon\endcsname {\simpleiconsmap\symbol{"EADE}}
+ \expandafter\def\csname simpleicon@appletvicon\endcsname {\simpleiconsmap\symbol{"EADF}}
+ \expandafter\def\csname simpleicon@appsignalicon\endcsname {\simpleiconsmap\symbol{"EAE0}}
+ \expandafter\def\csname simpleicon@appsmithicon\endcsname {\simpleiconsmap\symbol{"EAE1}}
+ \expandafter\def\csname simpleicon@appstoreicon\endcsname {\simpleiconsmap\symbol{"EAE2}}
+ \expandafter\def\csname simpleicon@appveyoricon\endcsname {\simpleiconsmap\symbol{"EAE3}}
+ \expandafter\def\csname simpleicon@appwriteicon\endcsname {\simpleiconsmap\symbol{"EAE4}}
+ \expandafter\def\csname simpleicon@aquaicon\endcsname {\simpleiconsmap\symbol{"EAE5}}
+ \expandafter\def\csname simpleicon@aralicon\endcsname {\simpleiconsmap\symbol{"EAE6}}
+ \expandafter\def\csname simpleicon@arangodbicon\endcsname {\simpleiconsmap\symbol{"EAE7}}
+ \expandafter\def\csname simpleicon@arcicon\endcsname {\simpleiconsmap\symbol{"EAE8}}
+ \expandafter\def\csname simpleicon@arcgisicon\endcsname {\simpleiconsmap\symbol{"EAE9}}
+ \expandafter\def\csname simpleicon@archicadicon\endcsname {\simpleiconsmap\symbol{"EAEA}}
+ \expandafter\def\csname simpleicon@archiveofourownicon\endcsname {\simpleiconsmap\symbol{"EAEB}}
+ \expandafter\def\csname simpleicon@archlinuxicon\endcsname {\simpleiconsmap\symbol{"EAEC}}
+ \expandafter\def\csname simpleicon@ardouricon\endcsname {\simpleiconsmap\symbol{"EAED}}
+ \expandafter\def\csname simpleicon@arduinoicon\endcsname {\simpleiconsmap\symbol{"EAEE}}
+ \expandafter\def\csname simpleicon@argoicon\endcsname {\simpleiconsmap\symbol{"EAEF}}
+ \expandafter\def\csname simpleicon@argosicon\endcsname {\simpleiconsmap\symbol{"EAF0}}
+ \expandafter\def\csname simpleicon@ariakiticon\endcsname {\simpleiconsmap\symbol{"EAF1}}
+ \expandafter\def\csname simpleicon@arkecosystemicon\endcsname {\simpleiconsmap\symbol{"EAF2}}
+ \expandafter\def\csname simpleicon@arloicon\endcsname {\simpleiconsmap\symbol{"EAF3}}
+ \expandafter\def\csname simpleicon@armicon\endcsname {\simpleiconsmap\symbol{"EAF4}}
+ \expandafter\def\csname simpleicon@armkeilicon\endcsname {\simpleiconsmap\symbol{"EAF5}}
+ \expandafter\def\csname simpleicon@arstechnicaicon\endcsname {\simpleiconsmap\symbol{"EAF6}}
+ \expandafter\def\csname simpleicon@artifacthubicon\endcsname {\simpleiconsmap\symbol{"EAF7}}
+ \expandafter\def\csname simpleicon@artixlinuxicon\endcsname {\simpleiconsmap\symbol{"EAF8}}
+ \expandafter\def\csname simpleicon@artstationicon\endcsname {\simpleiconsmap\symbol{"EAF9}}
+ \expandafter\def\csname simpleicon@arxivicon\endcsname {\simpleiconsmap\symbol{"EAFA}}
+ \expandafter\def\csname simpleicon@asahilinuxicon\endcsname {\simpleiconsmap\symbol{"EAFB}}
+ \expandafter\def\csname simpleicon@asanaicon\endcsname {\simpleiconsmap\symbol{"EAFC}}
+ \expandafter\def\csname simpleicon@asciidoctoricon\endcsname {\simpleiconsmap\symbol{"EAFD}}
+ \expandafter\def\csname simpleicon@asciinemaicon\endcsname {\simpleiconsmap\symbol{"EAFE}}
+ \expandafter\def\csname simpleicon@asdaicon\endcsname {\simpleiconsmap\symbol{"EAFF}}
+ \expandafter\def\csname simpleicon@asepriteicon\endcsname {\simpleiconsmap\symbol{"EB00}}
+ \expandafter\def\csname simpleicon@askfmicon\endcsname {\simpleiconsmap\symbol{"EB01}}
+ \expandafter\def\csname simpleicon@assemblyscripticon\endcsname {\simpleiconsmap\symbol{"EB02}}
+ \expandafter\def\csname simpleicon@asteriskicon\endcsname {\simpleiconsmap\symbol{"EB03}}
+ \expandafter\def\csname simpleicon@astonmartinicon\endcsname {\simpleiconsmap\symbol{"EB04}}
+ \expandafter\def\csname simpleicon@astraicon\endcsname {\simpleiconsmap\symbol{"EB05}}
+ \expandafter\def\csname simpleicon@astralicon\endcsname {\simpleiconsmap\symbol{"EB06}}
+ \expandafter\def\csname simpleicon@astroicon\endcsname {\simpleiconsmap\symbol{"EB07}}
+ \expandafter\def\csname simpleicon@asusicon\endcsname {\simpleiconsmap\symbol{"EB08}}
+ \expandafter\def\csname simpleicon@atandticon\endcsname {\simpleiconsmap\symbol{"EB09}}
+ \expandafter\def\csname simpleicon@atariicon\endcsname {\simpleiconsmap\symbol{"EB0A}}
+ \expandafter\def\csname simpleicon@atlassianicon\endcsname {\simpleiconsmap\symbol{"EB0B}}
+ \expandafter\def\csname simpleicon@auchanicon\endcsname {\simpleiconsmap\symbol{"EB0C}}
+ \expandafter\def\csname simpleicon@audacityicon\endcsname {\simpleiconsmap\symbol{"EB0D}}
+ \expandafter\def\csname simpleicon@audiicon\endcsname {\simpleiconsmap\symbol{"EB0E}}
+ \expandafter\def\csname simpleicon@audibleicon\endcsname {\simpleiconsmap\symbol{"EB0F}}
+ \expandafter\def\csname simpleicon@audiobookshelficon\endcsname {\simpleiconsmap\symbol{"EB10}}
+ \expandafter\def\csname simpleicon@audioboomicon\endcsname {\simpleiconsmap\symbol{"EB11}}
+ \expandafter\def\csname simpleicon@audiomackicon\endcsname {\simpleiconsmap\symbol{"EB12}}
+ \expandafter\def\csname simpleicon@audiotechnicaicon\endcsname {\simpleiconsmap\symbol{"EB13}}
+ \expandafter\def\csname simpleicon@aureliaicon\endcsname {\simpleiconsmap\symbol{"EB14}}
+ \expandafter\def\csname simpleicon@auth0icon\endcsname {\simpleiconsmap\symbol{"EB15}}
+ \expandafter\def\csname simpleicon@autheliaicon\endcsname {\simpleiconsmap\symbol{"EB16}}
+ \expandafter\def\csname simpleicon@authentikicon\endcsname {\simpleiconsmap\symbol{"EB17}}
+ \expandafter\def\csname simpleicon@authyicon\endcsname {\simpleiconsmap\symbol{"EB18}}
+ \expandafter\def\csname simpleicon@autocadicon\endcsname {\simpleiconsmap\symbol{"EB19}}
+ \expandafter\def\csname simpleicon@autocannonicon\endcsname {\simpleiconsmap\symbol{"EB1A}}
+ \expandafter\def\csname simpleicon@autodeskicon\endcsname {\simpleiconsmap\symbol{"EB1B}}
+ \expandafter\def\csname simpleicon@autodeskmayaicon\endcsname {\simpleiconsmap\symbol{"EB1C}}
+ \expandafter\def\csname simpleicon@autodeskreviticon\endcsname {\simpleiconsmap\symbol{"EB1D}}
+ \expandafter\def\csname simpleicon@autohotkeyicon\endcsname {\simpleiconsmap\symbol{"EB1E}}
+ \expandafter\def\csname simpleicon@autoiticon\endcsname {\simpleiconsmap\symbol{"EB1F}}
+ \expandafter\def\csname simpleicon@automatticicon\endcsname {\simpleiconsmap\symbol{"EB20}}
+ \expandafter\def\csname simpleicon@autoprefixericon\endcsname {\simpleiconsmap\symbol{"EB21}}
+ \expandafter\def\csname simpleicon@autozoneicon\endcsname {\simpleiconsmap\symbol{"EB22}}
+ \expandafter\def\csname simpleicon@avajsicon\endcsname {\simpleiconsmap\symbol{"EB23}}
+ \expandafter\def\csname simpleicon@avasticon\endcsname {\simpleiconsmap\symbol{"EB24}}
+ \expandafter\def\csname simpleicon@aviancaicon\endcsname {\simpleiconsmap\symbol{"EB25}}
+ \expandafter\def\csname simpleicon@aviraicon\endcsname {\simpleiconsmap\symbol{"EB26}}
+ \expandafter\def\csname simpleicon@awesomelistsicon\endcsname {\simpleiconsmap\symbol{"EB27}}
+ \expandafter\def\csname simpleicon@awesomewmicon\endcsname {\simpleiconsmap\symbol{"EB28}}
+ \expandafter\def\csname simpleicon@awsamplifyicon\endcsname {\simpleiconsmap\symbol{"EB29}}
+ \expandafter\def\csname simpleicon@awselasticloadbalancingicon\endcsname {\simpleiconsmap\symbol{"EB2A}}
+ \expandafter\def\csname simpleicon@awsfargateicon\endcsname {\simpleiconsmap\symbol{"EB2B}}
+ \expandafter\def\csname simpleicon@awslambdaicon\endcsname {\simpleiconsmap\symbol{"EB2C}}
+ \expandafter\def\csname simpleicon@awsorganizationsicon\endcsname {\simpleiconsmap\symbol{"EB2D}}
+ \expandafter\def\csname simpleicon@awssecretsmanagericon\endcsname {\simpleiconsmap\symbol{"EB2E}}
+ \expandafter\def\csname simpleicon@awwwardsicon\endcsname {\simpleiconsmap\symbol{"EB2F}}
+ \expandafter\def\csname simpleicon@axiosicon\endcsname {\simpleiconsmap\symbol{"EB30}}
+ \expandafter\def\csname simpleicon@babelicon\endcsname {\simpleiconsmap\symbol{"EB31}}
+ \expandafter\def\csname simpleicon@babelioicon\endcsname {\simpleiconsmap\symbol{"EB32}}
+ \expandafter\def\csname simpleicon@babylondotjsicon\endcsname {\simpleiconsmap\symbol{"EB33}}
+ \expandafter\def\csname simpleicon@backblazeicon\endcsname {\simpleiconsmap\symbol{"EB34}}
+ \expandafter\def\csname simpleicon@backbonedotjsicon\endcsname {\simpleiconsmap\symbol{"EB35}}
+ \expandafter\def\csname simpleicon@backendlessicon\endcsname {\simpleiconsmap\symbol{"EB36}}
+ \expandafter\def\csname simpleicon@backstageicon\endcsname {\simpleiconsmap\symbol{"EB37}}
+ \expandafter\def\csname simpleicon@badooicon\endcsname {\simpleiconsmap\symbol{"EB38}}
+ \expandafter\def\csname simpleicon@baiduicon\endcsname {\simpleiconsmap\symbol{"EB39}}
+ \expandafter\def\csname simpleicon@bakalariicon\endcsname {\simpleiconsmap\symbol{"EB3A}}
+ \expandafter\def\csname simpleicon@bambooicon\endcsname {\simpleiconsmap\symbol{"EB3B}}
+ \expandafter\def\csname simpleicon@bambulabicon\endcsname {\simpleiconsmap\symbol{"EB3C}}
+ \expandafter\def\csname simpleicon@bandcampicon\endcsname {\simpleiconsmap\symbol{"EB3D}}
+ \expandafter\def\csname simpleicon@bandlabicon\endcsname {\simpleiconsmap\symbol{"EB3E}}
+ \expandafter\def\csname simpleicon@bandrautomationicon\endcsname {\simpleiconsmap\symbol{"EB3F}}
+ \expandafter\def\csname simpleicon@bandsintownicon\endcsname {\simpleiconsmap\symbol{"EB40}}
+ \expandafter\def\csname simpleicon@bankofamericaicon\endcsname {\simpleiconsmap\symbol{"EB41}}
+ \expandafter\def\csname simpleicon@barclaysicon\endcsname {\simpleiconsmap\symbol{"EB42}}
+ \expandafter\def\csname simpleicon@baremetricsicon\endcsname {\simpleiconsmap\symbol{"EB43}}
+ \expandafter\def\csname simpleicon@barmeniaicon\endcsname {\simpleiconsmap\symbol{"EB44}}
+ \expandafter\def\csname simpleicon@basecampicon\endcsname {\simpleiconsmap\symbol{"EB45}}
+ \expandafter\def\csname simpleicon@baserowicon\endcsname {\simpleiconsmap\symbol{"EB46}}
+ \expandafter\def\csname simpleicon@basicattentiontokenicon\endcsname {\simpleiconsmap\symbol{"EB47}}
+ \expandafter\def\csname simpleicon@bastyonicon\endcsname {\simpleiconsmap\symbol{"EB48}}
+ \expandafter\def\csname simpleicon@baticon\endcsname {\simpleiconsmap\symbol{"EB49}}
+ \expandafter\def\csname simpleicon@bataicon\endcsname {\simpleiconsmap\symbol{"EB4A}}
+ \expandafter\def\csname simpleicon@battledotneticon\endcsname {\simpleiconsmap\symbol{"EB4B}}
+ \expandafter\def\csname simpleicon@bazelicon\endcsname {\simpleiconsmap\symbol{"EB4C}}
+ \expandafter\def\csname simpleicon@beatporticon\endcsname {\simpleiconsmap\symbol{"EB4D}}
+ \expandafter\def\csname simpleicon@beatsicon\endcsname {\simpleiconsmap\symbol{"EB4E}}
+ \expandafter\def\csname simpleicon@beatsbydreicon\endcsname {\simpleiconsmap\symbol{"EB4F}}
+ \expandafter\def\csname simpleicon@beatstarsicon\endcsname {\simpleiconsmap\symbol{"EB50}}
+ \expandafter\def\csname simpleicon@beekeeperstudioicon\endcsname {\simpleiconsmap\symbol{"EB51}}
+ \expandafter\def\csname simpleicon@behanceicon\endcsname {\simpleiconsmap\symbol{"EB52}}
+ \expandafter\def\csname simpleicon@beijingsubwayicon\endcsname {\simpleiconsmap\symbol{"EB53}}
+ \expandafter\def\csname simpleicon@bemicon\endcsname {\simpleiconsmap\symbol{"EB54}}
+ \expandafter\def\csname simpleicon@bentleyicon\endcsname {\simpleiconsmap\symbol{"EB55}}
+ \expandafter\def\csname simpleicon@bentoicon\endcsname {\simpleiconsmap\symbol{"EB56}}
+ \expandafter\def\csname simpleicon@bentoboxicon\endcsname {\simpleiconsmap\symbol{"EB57}}
+ \expandafter\def\csname simpleicon@bentomlicon\endcsname {\simpleiconsmap\symbol{"EB58}}
+ \expandafter\def\csname simpleicon@berealicon\endcsname {\simpleiconsmap\symbol{"EB59}}
+ \expandafter\def\csname simpleicon@betfairicon\endcsname {\simpleiconsmap\symbol{"EB5A}}
+ \expandafter\def\csname simpleicon@betterstackicon\endcsname {\simpleiconsmap\symbol{"EB5B}}
+ \expandafter\def\csname simpleicon@bevyicon\endcsname {\simpleiconsmap\symbol{"EB5C}}
+ \expandafter\def\csname simpleicon@bigbasketicon\endcsname {\simpleiconsmap\symbol{"EB5D}}
+ \expandafter\def\csname simpleicon@bigbluebuttonicon\endcsname {\simpleiconsmap\symbol{"EB5E}}
+ \expandafter\def\csname simpleicon@bigcartelicon\endcsname {\simpleiconsmap\symbol{"EB5F}}
+ \expandafter\def\csname simpleicon@bigcommerceicon\endcsname {\simpleiconsmap\symbol{"EB60}}
+ \expandafter\def\csname simpleicon@bilibiliicon\endcsname {\simpleiconsmap\symbol{"EB61}}
+ \expandafter\def\csname simpleicon@billboardicon\endcsname {\simpleiconsmap\symbol{"EB62}}
+ \expandafter\def\csname simpleicon@bimicon\endcsname {\simpleiconsmap\symbol{"EB63}}
+ \expandafter\def\csname simpleicon@binanceicon\endcsname {\simpleiconsmap\symbol{"EB64}}
+ \expandafter\def\csname simpleicon@biolinkicon\endcsname {\simpleiconsmap\symbol{"EB65}}
+ \expandafter\def\csname simpleicon@biomeicon\endcsname {\simpleiconsmap\symbol{"EB66}}
+ \expandafter\def\csname simpleicon@bisecthostingicon\endcsname {\simpleiconsmap\symbol{"EB67}}
+ \expandafter\def\csname simpleicon@biticon\endcsname {\simpleiconsmap\symbol{"EB68}}
+ \expandafter\def\csname simpleicon@bitbucketicon\endcsname {\simpleiconsmap\symbol{"EB69}}
+ \expandafter\def\csname simpleicon@bitcoinicon\endcsname {\simpleiconsmap\symbol{"EB6A}}
+ \expandafter\def\csname simpleicon@bitcoincashicon\endcsname {\simpleiconsmap\symbol{"EB6B}}
+ \expandafter\def\csname simpleicon@bitcoinsvicon\endcsname {\simpleiconsmap\symbol{"EB6C}}
+ \expandafter\def\csname simpleicon@bitcometicon\endcsname {\simpleiconsmap\symbol{"EB6D}}
+ \expandafter\def\csname simpleicon@bitdefendericon\endcsname {\simpleiconsmap\symbol{"EB6E}}
+ \expandafter\def\csname simpleicon@bitlyicon\endcsname {\simpleiconsmap\symbol{"EB6F}}
+ \expandafter\def\csname simpleicon@bitriseicon\endcsname {\simpleiconsmap\symbol{"EB70}}
+ \expandafter\def\csname simpleicon@bittorrenticon\endcsname {\simpleiconsmap\symbol{"EB71}}
+ \expandafter\def\csname simpleicon@bitwardenicon\endcsname {\simpleiconsmap\symbol{"EB72}}
+ \expandafter\def\csname simpleicon@bitwigicon\endcsname {\simpleiconsmap\symbol{"EB73}}
+ \expandafter\def\csname simpleicon@blackberryicon\endcsname {\simpleiconsmap\symbol{"EB74}}
+ \expandafter\def\csname simpleicon@blackmagicdesignicon\endcsname {\simpleiconsmap\symbol{"EB75}}
+ \expandafter\def\csname simpleicon@blazemetericon\endcsname {\simpleiconsmap\symbol{"EB76}}
+ \expandafter\def\csname simpleicon@blazoricon\endcsname {\simpleiconsmap\symbol{"EB77}}
+ \expandafter\def\csname simpleicon@blendericon\endcsname {\simpleiconsmap\symbol{"EB78}}
+ \expandafter\def\csname simpleicon@blockbenchicon\endcsname {\simpleiconsmap\symbol{"EB79}}
+ \expandafter\def\csname simpleicon@blockchaindotcomicon\endcsname {\simpleiconsmap\symbol{"EB7A}}
+ \expandafter\def\csname simpleicon@bloggericon\endcsname {\simpleiconsmap\symbol{"EB7B}}
+ \expandafter\def\csname simpleicon@bloglovinicon\endcsname {\simpleiconsmap\symbol{"EB7C}}
+ \expandafter\def\csname simpleicon@blueprinticon\endcsname {\simpleiconsmap\symbol{"EB7D}}
+ \expandafter\def\csname simpleicon@blueskyicon\endcsname {\simpleiconsmap\symbol{"EB7E}}
+ \expandafter\def\csname simpleicon@bluesoundicon\endcsname {\simpleiconsmap\symbol{"EB7F}}
+ \expandafter\def\csname simpleicon@bluetoothicon\endcsname {\simpleiconsmap\symbol{"EB80}}
+ \expandafter\def\csname simpleicon@bmcsoftwareicon\endcsname {\simpleiconsmap\symbol{"EB81}}
+ \expandafter\def\csname simpleicon@bmwicon\endcsname {\simpleiconsmap\symbol{"EB82}}
+ \expandafter\def\csname simpleicon@bnbchainicon\endcsname {\simpleiconsmap\symbol{"EB83}}
+ \expandafter\def\csname simpleicon@boardgamegeekicon\endcsname {\simpleiconsmap\symbol{"EB84}}
+ \expandafter\def\csname simpleicon@boaticon\endcsname {\simpleiconsmap\symbol{"EB85}}
+ \expandafter\def\csname simpleicon@boehringeringelheimicon\endcsname {\simpleiconsmap\symbol{"EB86}}
+ \expandafter\def\csname simpleicon@boeingicon\endcsname {\simpleiconsmap\symbol{"EB87}}
+ \expandafter\def\csname simpleicon@bombardiericon\endcsname {\simpleiconsmap\symbol{"EB88}}
+ \expandafter\def\csname simpleicon@bookalopeicon\endcsname {\simpleiconsmap\symbol{"EB89}}
+ \expandafter\def\csname simpleicon@bookbubicon\endcsname {\simpleiconsmap\symbol{"EB8A}}
+ \expandafter\def\csname simpleicon@bookmetericon\endcsname {\simpleiconsmap\symbol{"EB8B}}
+ \expandafter\def\csname simpleicon@bookmyshowicon\endcsname {\simpleiconsmap\symbol{"EB8C}}
+ \expandafter\def\csname simpleicon@bookstackicon\endcsname {\simpleiconsmap\symbol{"EB8D}}
+ \expandafter\def\csname simpleicon@boosticon\endcsname {\simpleiconsmap\symbol{"EB8E}}
+ \expandafter\def\csname simpleicon@boostyicon\endcsname {\simpleiconsmap\symbol{"EB8F}}
+ \expandafter\def\csname simpleicon@bootsicon\endcsname {\simpleiconsmap\symbol{"EB90}}
+ \expandafter\def\csname simpleicon@bootstrapicon\endcsname {\simpleiconsmap\symbol{"EB91}}
+ \expandafter\def\csname simpleicon@borgbackupicon\endcsname {\simpleiconsmap\symbol{"EB92}}
+ \expandafter\def\csname simpleicon@boschicon\endcsname {\simpleiconsmap\symbol{"EB93}}
+ \expandafter\def\csname simpleicon@boseicon\endcsname {\simpleiconsmap\symbol{"EB94}}
+ \expandafter\def\csname simpleicon@botblecmsicon\endcsname {\simpleiconsmap\symbol{"EB95}}
+ \expandafter\def\csname simpleicon@boulangericon\endcsname {\simpleiconsmap\symbol{"EB96}}
+ \expandafter\def\csname simpleicon@bowericon\endcsname {\simpleiconsmap\symbol{"EB97}}
+ \expandafter\def\csname simpleicon@boxicon\endcsname {\simpleiconsmap\symbol{"EB98}}
+ \expandafter\def\csname simpleicon@boxysvgicon\endcsname {\simpleiconsmap\symbol{"EB99}}
+ \expandafter\def\csname simpleicon@braintreeicon\endcsname {\simpleiconsmap\symbol{"EB9A}}
+ \expandafter\def\csname simpleicon@brandfoldericon\endcsname {\simpleiconsmap\symbol{"EB9B}}
+ \expandafter\def\csname simpleicon@braveicon\endcsname {\simpleiconsmap\symbol{"EB9C}}
+ \expandafter\def\csname simpleicon@breakericon\endcsname {\simpleiconsmap\symbol{"EB9D}}
+ \expandafter\def\csname simpleicon@brenntagicon\endcsname {\simpleiconsmap\symbol{"EB9E}}
+ \expandafter\def\csname simpleicon@brevoicon\endcsname {\simpleiconsmap\symbol{"EB9F}}
+ \expandafter\def\csname simpleicon@brexicon\endcsname {\simpleiconsmap\symbol{"EBA0}}
+ \expandafter\def\csname simpleicon@bricksicon\endcsname {\simpleiconsmap\symbol{"EBA1}}
+ \expandafter\def\csname simpleicon@britishairwaysicon\endcsname {\simpleiconsmap\symbol{"EBA2}}
+ \expandafter\def\csname simpleicon@broadcomicon\endcsname {\simpleiconsmap\symbol{"EBA3}}
+ \expandafter\def\csname simpleicon@brunoicon\endcsname {\simpleiconsmap\symbol{"EBA4}}
+ \expandafter\def\csname simpleicon@bsdicon\endcsname {\simpleiconsmap\symbol{"EBA5}}
+ \expandafter\def\csname simpleicon@bspwmicon\endcsname {\simpleiconsmap\symbol{"EBA6}}
+ \expandafter\def\csname simpleicon@bticon\endcsname {\simpleiconsmap\symbol{"EBA7}}
+ \expandafter\def\csname simpleicon@buddyicon\endcsname {\simpleiconsmap\symbol{"EBA8}}
+ \expandafter\def\csname simpleicon@budibaseicon\endcsname {\simpleiconsmap\symbol{"EBA9}}
+ \expandafter\def\csname simpleicon@buefyicon\endcsname {\simpleiconsmap\symbol{"EBAA}}
+ \expandafter\def\csname simpleicon@buffericon\endcsname {\simpleiconsmap\symbol{"EBAB}}
+ \expandafter\def\csname simpleicon@bugattiicon\endcsname {\simpleiconsmap\symbol{"EBAC}}
+ \expandafter\def\csname simpleicon@bugcrowdicon\endcsname {\simpleiconsmap\symbol{"EBAD}}
+ \expandafter\def\csname simpleicon@bugsnagicon\endcsname {\simpleiconsmap\symbol{"EBAE}}
+ \expandafter\def\csname simpleicon@buhlicon\endcsname {\simpleiconsmap\symbol{"EBAF}}
+ \expandafter\def\csname simpleicon@buildkiteicon\endcsname {\simpleiconsmap\symbol{"EBB0}}
+ \expandafter\def\csname simpleicon@builtbybiticon\endcsname {\simpleiconsmap\symbol{"EBB1}}
\expandafter\def\csname simpleicon@bukalapakicon\endcsname {\simpleiconsmap\symbol{"EBB2}}
\expandafter\def\csname simpleicon@bulmaicon\endcsname {\simpleiconsmap\symbol{"EBB3}}
\expandafter\def\csname simpleicon@bunicon\endcsname {\simpleiconsmap\symbol{"EBB4}}
@@ -464,700 +464,700 @@
\expandafter\def\csname simpleicon@canvaicon\endcsname {\simpleiconsmap\symbol{"EBCF}}
\expandafter\def\csname simpleicon@canvasicon\endcsname {\simpleiconsmap\symbol{"EBD0}}
\expandafter\def\csname simpleicon@capacitoricon\endcsname {\simpleiconsmap\symbol{"EBD1}}
- \expandafter\def\csname simpleicon@cardanoicon\endcsname {\simpleiconsmap\symbol{"EBD2}}
- \expandafter\def\csname simpleicon@carlsberggroupicon\endcsname {\simpleiconsmap\symbol{"EBD3}}
- \expandafter\def\csname simpleicon@carrdicon\endcsname {\simpleiconsmap\symbol{"EBD4}}
- \expandafter\def\csname simpleicon@carrefouricon\endcsname {\simpleiconsmap\symbol{"EBD5}}
- \expandafter\def\csname simpleicon@carthrottleicon\endcsname {\simpleiconsmap\symbol{"EBD6}}
- \expandafter\def\csname simpleicon@cartoicon\endcsname {\simpleiconsmap\symbol{"EBD7}}
- \expandafter\def\csname simpleicon@cashappicon\endcsname {\simpleiconsmap\symbol{"EBD8}}
- \expandafter\def\csname simpleicon@castboxicon\endcsname {\simpleiconsmap\symbol{"EBD9}}
- \expandafter\def\csname simpleicon@castoramaicon\endcsname {\simpleiconsmap\symbol{"EBDA}}
- \expandafter\def\csname simpleicon@castroicon\endcsname {\simpleiconsmap\symbol{"EBDB}}
- \expandafter\def\csname simpleicon@caterpillaricon\endcsname {\simpleiconsmap\symbol{"EBDC}}
- \expandafter\def\csname simpleicon@cbcicon\endcsname {\simpleiconsmap\symbol{"EBDD}}
- \expandafter\def\csname simpleicon@cbsicon\endcsname {\simpleiconsmap\symbol{"EBDE}}
- \expandafter\def\csname simpleicon@ccleanericon\endcsname {\simpleiconsmap\symbol{"EBDF}}
- \expandafter\def\csname simpleicon@cdprojekticon\endcsname {\simpleiconsmap\symbol{"EBE0}}
- \expandafter\def\csname simpleicon@celeryicon\endcsname {\simpleiconsmap\symbol{"EBE1}}
- \expandafter\def\csname simpleicon@celestronicon\endcsname {\simpleiconsmap\symbol{"EBE2}}
- \expandafter\def\csname simpleicon@centosicon\endcsname {\simpleiconsmap\symbol{"EBE3}}
- \expandafter\def\csname simpleicon@cephicon\endcsname {\simpleiconsmap\symbol{"EBE4}}
- \expandafter\def\csname simpleicon@cesiumicon\endcsname {\simpleiconsmap\symbol{"EBE5}}
- \expandafter\def\csname simpleicon@chaiicon\endcsname {\simpleiconsmap\symbol{"EBE6}}
- \expandafter\def\csname simpleicon@chainguardicon\endcsname {\simpleiconsmap\symbol{"EBE7}}
- \expandafter\def\csname simpleicon@chainlinkicon\endcsname {\simpleiconsmap\symbol{"EBE8}}
- \expandafter\def\csname simpleicon@chakrauiicon\endcsname {\simpleiconsmap\symbol{"EBE9}}
- \expandafter\def\csname simpleicon@channel4icon\endcsname {\simpleiconsmap\symbol{"EBEA}}
- \expandafter\def\csname simpleicon@charlesicon\endcsname {\simpleiconsmap\symbol{"EBEB}}
- \expandafter\def\csname simpleicon@chartdotjsicon\endcsname {\simpleiconsmap\symbol{"EBEC}}
- \expandafter\def\csname simpleicon@chartmogulicon\endcsname {\simpleiconsmap\symbol{"EBED}}
- \expandafter\def\csname simpleicon@chaseicon\endcsname {\simpleiconsmap\symbol{"EBEE}}
- \expandafter\def\csname simpleicon@chatboticon\endcsname {\simpleiconsmap\symbol{"EBEF}}
- \expandafter\def\csname simpleicon@chatwooticon\endcsname {\simpleiconsmap\symbol{"EBF0}}
- \expandafter\def\csname simpleicon@checkioicon\endcsname {\simpleiconsmap\symbol{"EBF1}}
- \expandafter\def\csname simpleicon@checkmarxicon\endcsname {\simpleiconsmap\symbol{"EBF2}}
- \expandafter\def\csname simpleicon@checkmkicon\endcsname {\simpleiconsmap\symbol{"EBF3}}
- \expandafter\def\csname simpleicon@chedrauiicon\endcsname {\simpleiconsmap\symbol{"EBF4}}
- \expandafter\def\csname simpleicon@cheerioicon\endcsname {\simpleiconsmap\symbol{"EBF5}}
- \expandafter\def\csname simpleicon@cheficon\endcsname {\simpleiconsmap\symbol{"EBF6}}
- \expandafter\def\csname simpleicon@chemexicon\endcsname {\simpleiconsmap\symbol{"EBF7}}
- \expandafter\def\csname simpleicon@chessdotcomicon\endcsname {\simpleiconsmap\symbol{"EBF8}}
- \expandafter\def\csname simpleicon@chevroleticon\endcsname {\simpleiconsmap\symbol{"EBF9}}
- \expandafter\def\csname simpleicon@chianetworkicon\endcsname {\simpleiconsmap\symbol{"EBFA}}
- \expandafter\def\csname simpleicon@chinaeasternairlinesicon\endcsname {\simpleiconsmap\symbol{"EBFB}}
- \expandafter\def\csname simpleicon@chinasouthernairlinesicon\endcsname {\simpleiconsmap\symbol{"EBFC}}
- \expandafter\def\csname simpleicon@chocolateyicon\endcsname {\simpleiconsmap\symbol{"EBFD}}
- \expandafter\def\csname simpleicon@chromaticicon\endcsname {\simpleiconsmap\symbol{"EBFE}}
- \expandafter\def\csname simpleicon@chromecasticon\endcsname {\simpleiconsmap\symbol{"EBFF}}
- \expandafter\def\csname simpleicon@chryslericon\endcsname {\simpleiconsmap\symbol{"EC00}}
- \expandafter\def\csname simpleicon@chupachupsicon\endcsname {\simpleiconsmap\symbol{"EC01}}
- \expandafter\def\csname simpleicon@ciliumicon\endcsname {\simpleiconsmap\symbol{"EC02}}
- \expandafter\def\csname simpleicon@cinema4dicon\endcsname {\simpleiconsmap\symbol{"EC03}}
- \expandafter\def\csname simpleicon@circleicon\endcsname {\simpleiconsmap\symbol{"EC04}}
- \expandafter\def\csname simpleicon@circleciicon\endcsname {\simpleiconsmap\symbol{"EC05}}
- \expandafter\def\csname simpleicon@circuitverseicon\endcsname {\simpleiconsmap\symbol{"EC06}}
- \expandafter\def\csname simpleicon@cirrusciicon\endcsname {\simpleiconsmap\symbol{"EC07}}
- \expandafter\def\csname simpleicon@ciscoicon\endcsname {\simpleiconsmap\symbol{"EC08}}
- \expandafter\def\csname simpleicon@citrixicon\endcsname {\simpleiconsmap\symbol{"EC09}}
- \expandafter\def\csname simpleicon@citroenicon\endcsname {\simpleiconsmap\symbol{"EC0A}}
- \expandafter\def\csname simpleicon@civicrmicon\endcsname {\simpleiconsmap\symbol{"EC0B}}
- \expandafter\def\csname simpleicon@civoicon\endcsname {\simpleiconsmap\symbol{"EC0C}}
- \expandafter\def\csname simpleicon@ckeditor4icon\endcsname {\simpleiconsmap\symbol{"EC0D}}
- \expandafter\def\csname simpleicon@clarifaiicon\endcsname {\simpleiconsmap\symbol{"EC0E}}
- \expandafter\def\csname simpleicon@clarisicon\endcsname {\simpleiconsmap\symbol{"EC0F}}
- \expandafter\def\csname simpleicon@clarivateicon\endcsname {\simpleiconsmap\symbol{"EC10}}
- \expandafter\def\csname simpleicon@clerkicon\endcsname {\simpleiconsmap\symbol{"EC11}}
- \expandafter\def\csname simpleicon@clevercloudicon\endcsname {\simpleiconsmap\symbol{"EC12}}
- \expandafter\def\csname simpleicon@clickhouseicon\endcsname {\simpleiconsmap\symbol{"EC13}}
- \expandafter\def\csname simpleicon@clickupicon\endcsname {\simpleiconsmap\symbol{"EC14}}
- \expandafter\def\csname simpleicon@clionicon\endcsname {\simpleiconsmap\symbol{"EC15}}
- \expandafter\def\csname simpleicon@cliqzicon\endcsname {\simpleiconsmap\symbol{"EC16}}
- \expandafter\def\csname simpleicon@clockifyicon\endcsname {\simpleiconsmap\symbol{"EC17}}
- \expandafter\def\csname simpleicon@clojureicon\endcsname {\simpleiconsmap\symbol{"EC18}}
- \expandafter\def\csname simpleicon@cloud66icon\endcsname {\simpleiconsmap\symbol{"EC19}}
- \expandafter\def\csname simpleicon@cloudbeesicon\endcsname {\simpleiconsmap\symbol{"EC1A}}
- \expandafter\def\csname simpleicon@cloudcannonicon\endcsname {\simpleiconsmap\symbol{"EC1B}}
- \expandafter\def\csname simpleicon@clouderaicon\endcsname {\simpleiconsmap\symbol{"EC1C}}
- \expandafter\def\csname simpleicon@cloudflareicon\endcsname {\simpleiconsmap\symbol{"EC1D}}
- \expandafter\def\csname simpleicon@cloudflarepagesicon\endcsname {\simpleiconsmap\symbol{"EC1E}}
- \expandafter\def\csname simpleicon@cloudflareworkersicon\endcsname {\simpleiconsmap\symbol{"EC1F}}
- \expandafter\def\csname simpleicon@cloudfoundryicon\endcsname {\simpleiconsmap\symbol{"EC20}}
- \expandafter\def\csname simpleicon@cloudinaryicon\endcsname {\simpleiconsmap\symbol{"EC21}}
- \expandafter\def\csname simpleicon@cloudronicon\endcsname {\simpleiconsmap\symbol{"EC22}}
- \expandafter\def\csname simpleicon@cloudsmithicon\endcsname {\simpleiconsmap\symbol{"EC23}}
- \expandafter\def\csname simpleicon@cloudwaysicon\endcsname {\simpleiconsmap\symbol{"EC24}}
- \expandafter\def\csname simpleicon@clubforceicon\endcsname {\simpleiconsmap\symbol{"EC25}}
- \expandafter\def\csname simpleicon@clubhouseicon\endcsname {\simpleiconsmap\symbol{"EC26}}
- \expandafter\def\csname simpleicon@clypicon\endcsname {\simpleiconsmap\symbol{"EC27}}
- \expandafter\def\csname simpleicon@cmakeicon\endcsname {\simpleiconsmap\symbol{"EC28}}
- \expandafter\def\csname simpleicon@cncficon\endcsname {\simpleiconsmap\symbol{"EC29}}
- \expandafter\def\csname simpleicon@cneticon\endcsname {\simpleiconsmap\symbol{"EC2A}}
- \expandafter\def\csname simpleicon@cnnicon\endcsname {\simpleiconsmap\symbol{"EC2B}}
- \expandafter\def\csname simpleicon@cocacolaicon\endcsname {\simpleiconsmap\symbol{"EC2C}}
- \expandafter\def\csname simpleicon@cockpiticon\endcsname {\simpleiconsmap\symbol{"EC2D}}
- \expandafter\def\csname simpleicon@cockroachlabsicon\endcsname {\simpleiconsmap\symbol{"EC2E}}
- \expandafter\def\csname simpleicon@cocoapodsicon\endcsname {\simpleiconsmap\symbol{"EC2F}}
- \expandafter\def\csname simpleicon@cocosicon\endcsname {\simpleiconsmap\symbol{"EC30}}
- \expandafter\def\csname simpleicon@codaicon\endcsname {\simpleiconsmap\symbol{"EC31}}
- \expandafter\def\csname simpleicon@codacyicon\endcsname {\simpleiconsmap\symbol{"EC32}}
- \expandafter\def\csname simpleicon@codebergicon\endcsname {\simpleiconsmap\symbol{"EC33}}
- \expandafter\def\csname simpleicon@codeblocksicon\endcsname {\simpleiconsmap\symbol{"EC34}}
- \expandafter\def\csname simpleicon@codecademyicon\endcsname {\simpleiconsmap\symbol{"EC35}}
- \expandafter\def\csname simpleicon@codeceptjsicon\endcsname {\simpleiconsmap\symbol{"EC36}}
- \expandafter\def\csname simpleicon@codecheficon\endcsname {\simpleiconsmap\symbol{"EC37}}
- \expandafter\def\csname simpleicon@codeclimateicon\endcsname {\simpleiconsmap\symbol{"EC38}}
- \expandafter\def\csname simpleicon@codecovicon\endcsname {\simpleiconsmap\symbol{"EC39}}
- \expandafter\def\csname simpleicon@codefactoricon\endcsname {\simpleiconsmap\symbol{"EC3A}}
- \expandafter\def\csname simpleicon@codeforcesicon\endcsname {\simpleiconsmap\symbol{"EC3B}}
- \expandafter\def\csname simpleicon@codefreshicon\endcsname {\simpleiconsmap\symbol{"EC3C}}
- \expandafter\def\csname simpleicon@codeignitericon\endcsname {\simpleiconsmap\symbol{"EC3D}}
- \expandafter\def\csname simpleicon@codeiumicon\endcsname {\simpleiconsmap\symbol{"EC3E}}
- \expandafter\def\csname simpleicon@codemagicicon\endcsname {\simpleiconsmap\symbol{"EC3F}}
- \expandafter\def\csname simpleicon@codementoricon\endcsname {\simpleiconsmap\symbol{"EC40}}
- \expandafter\def\csname simpleicon@codemirroricon\endcsname {\simpleiconsmap\symbol{"EC41}}
- \expandafter\def\csname simpleicon@codenewbieicon\endcsname {\simpleiconsmap\symbol{"EC42}}
- \expandafter\def\csname simpleicon@codepenicon\endcsname {\simpleiconsmap\symbol{"EC43}}
- \expandafter\def\csname simpleicon@codeprojecticon\endcsname {\simpleiconsmap\symbol{"EC44}}
- \expandafter\def\csname simpleicon@codericon\endcsname {\simpleiconsmap\symbol{"EC45}}
- \expandafter\def\csname simpleicon@codersrankicon\endcsname {\simpleiconsmap\symbol{"EC46}}
- \expandafter\def\csname simpleicon@coderwallicon\endcsname {\simpleiconsmap\symbol{"EC47}}
- \expandafter\def\csname simpleicon@codesandboxicon\endcsname {\simpleiconsmap\symbol{"EC48}}
- \expandafter\def\csname simpleicon@codeshipicon\endcsname {\simpleiconsmap\symbol{"EC49}}
- \expandafter\def\csname simpleicon@codesignalicon\endcsname {\simpleiconsmap\symbol{"EC4A}}
- \expandafter\def\csname simpleicon@codestreamicon\endcsname {\simpleiconsmap\symbol{"EC4B}}
- \expandafter\def\csname simpleicon@codewarsicon\endcsname {\simpleiconsmap\symbol{"EC4C}}
- \expandafter\def\csname simpleicon@codingameicon\endcsname {\simpleiconsmap\symbol{"EC4D}}
- \expandafter\def\csname simpleicon@codingninjasicon\endcsname {\simpleiconsmap\symbol{"EC4E}}
- \expandafter\def\csname simpleicon@codioicon\endcsname {\simpleiconsmap\symbol{"EC4F}}
- \expandafter\def\csname simpleicon@coffeescripticon\endcsname {\simpleiconsmap\symbol{"EC50}}
- \expandafter\def\csname simpleicon@coggleicon\endcsname {\simpleiconsmap\symbol{"EC51}}
- \expandafter\def\csname simpleicon@cognizanticon\endcsname {\simpleiconsmap\symbol{"EC52}}
- \expandafter\def\csname simpleicon@coilicon\endcsname {\simpleiconsmap\symbol{"EC53}}
- \expandafter\def\csname simpleicon@coinbaseicon\endcsname {\simpleiconsmap\symbol{"EC54}}
- \expandafter\def\csname simpleicon@coinmarketcapicon\endcsname {\simpleiconsmap\symbol{"EC55}}
- \expandafter\def\csname simpleicon@comicfuryicon\endcsname {\simpleiconsmap\symbol{"EC56}}
- \expandafter\def\csname simpleicon@commaicon\endcsname {\simpleiconsmap\symbol{"EC57}}
- \expandafter\def\csname simpleicon@commerzbankicon\endcsname {\simpleiconsmap\symbol{"EC58}}
- \expandafter\def\csname simpleicon@commitlinticon\endcsname {\simpleiconsmap\symbol{"EC59}}
- \expandafter\def\csname simpleicon@commodoreicon\endcsname {\simpleiconsmap\symbol{"EC5A}}
- \expandafter\def\csname simpleicon@commonworkflowlanguageicon\endcsname {\simpleiconsmap\symbol{"EC5B}}
- \expandafter\def\csname simpleicon@compilerexplorericon\endcsname {\simpleiconsmap\symbol{"EC5C}}
- \expandafter\def\csname simpleicon@composericon\endcsname {\simpleiconsmap\symbol{"EC5D}}
- \expandafter\def\csname simpleicon@comptiaicon\endcsname {\simpleiconsmap\symbol{"EC5E}}
- \expandafter\def\csname simpleicon@comsolicon\endcsname {\simpleiconsmap\symbol{"EC5F}}
- \expandafter\def\csname simpleicon@conanicon\endcsname {\simpleiconsmap\symbol{"EC60}}
- \expandafter\def\csname simpleicon@concourseicon\endcsname {\simpleiconsmap\symbol{"EC61}}
- \expandafter\def\csname simpleicon@condaforgeicon\endcsname {\simpleiconsmap\symbol{"EC62}}
- \expandafter\def\csname simpleicon@conektaicon\endcsname {\simpleiconsmap\symbol{"EC63}}
- \expandafter\def\csname simpleicon@confluenceicon\endcsname {\simpleiconsmap\symbol{"EC64}}
- \expandafter\def\csname simpleicon@construct3icon\endcsname {\simpleiconsmap\symbol{"EC65}}
- \expandafter\def\csname simpleicon@consulicon\endcsname {\simpleiconsmap\symbol{"EC66}}
- \expandafter\def\csname simpleicon@contactlesspaymenticon\endcsname {\simpleiconsmap\symbol{"EC67}}
- \expandafter\def\csname simpleicon@containerdicon\endcsname {\simpleiconsmap\symbol{"EC68}}
- \expandafter\def\csname simpleicon@contaoicon\endcsname {\simpleiconsmap\symbol{"EC69}}
- \expandafter\def\csname simpleicon@contentfulicon\endcsname {\simpleiconsmap\symbol{"EC6A}}
- \expandafter\def\csname simpleicon@contentstackicon\endcsname {\simpleiconsmap\symbol{"EC6B}}
- \expandafter\def\csname simpleicon@contributorcovenanticon\endcsname {\simpleiconsmap\symbol{"EC6C}}
- \expandafter\def\csname simpleicon@conventionalcommitsicon\endcsname {\simpleiconsmap\symbol{"EC6D}}
- \expandafter\def\csname simpleicon@convertioicon\endcsname {\simpleiconsmap\symbol{"EC6E}}
- \expandafter\def\csname simpleicon@cookiecuttericon\endcsname {\simpleiconsmap\symbol{"EC6F}}
- \expandafter\def\csname simpleicon@coolermastericon\endcsname {\simpleiconsmap\symbol{"EC70}}
- \expandafter\def\csname simpleicon@coopicon\endcsname {\simpleiconsmap\symbol{"EC71}}
- \expandafter\def\csname simpleicon@copaairlinesicon\endcsname {\simpleiconsmap\symbol{"EC72}}
- \expandafter\def\csname simpleicon@coppelicon\endcsname {\simpleiconsmap\symbol{"EC73}}
- \expandafter\def\csname simpleicon@coraicon\endcsname {\simpleiconsmap\symbol{"EC74}}
- \expandafter\def\csname simpleicon@coreldrawicon\endcsname {\simpleiconsmap\symbol{"EC75}}
- \expandafter\def\csname simpleicon@coronaengineicon\endcsname {\simpleiconsmap\symbol{"EC76}}
- \expandafter\def\csname simpleicon@coronarenderericon\endcsname {\simpleiconsmap\symbol{"EC77}}
- \expandafter\def\csname simpleicon@corsairicon\endcsname {\simpleiconsmap\symbol{"EC78}}
- \expandafter\def\csname simpleicon@couchbaseicon\endcsname {\simpleiconsmap\symbol{"EC79}}
- \expandafter\def\csname simpleicon@counterstrikeicon\endcsname {\simpleiconsmap\symbol{"EC7A}}
- \expandafter\def\csname simpleicon@countingworksproicon\endcsname {\simpleiconsmap\symbol{"EC7B}}
- \expandafter\def\csname simpleicon@courseraicon\endcsname {\simpleiconsmap\symbol{"EC7C}}
- \expandafter\def\csname simpleicon@coverallsicon\endcsname {\simpleiconsmap\symbol{"EC7D}}
- \expandafter\def\csname simpleicon@cpanelicon\endcsname {\simpleiconsmap\symbol{"EC7E}}
- \expandafter\def\csname simpleicon@cplusplusicon\endcsname {\simpleiconsmap\symbol{"EC7F}}
- \expandafter\def\csname simpleicon@cplusplusbuildericon\endcsname {\simpleiconsmap\symbol{"EC80}}
- \expandafter\def\csname simpleicon@craftcmsicon\endcsname {\simpleiconsmap\symbol{"EC81}}
- \expandafter\def\csname simpleicon@craftsmanicon\endcsname {\simpleiconsmap\symbol{"EC82}}
- \expandafter\def\csname simpleicon@cratedbicon\endcsname {\simpleiconsmap\symbol{"EC83}}
- \expandafter\def\csname simpleicon@crayonicon\endcsname {\simpleiconsmap\symbol{"EC84}}
- \expandafter\def\csname simpleicon@crealityicon\endcsname {\simpleiconsmap\symbol{"EC85}}
- \expandafter\def\csname simpleicon@createreactappicon\endcsname {\simpleiconsmap\symbol{"EC86}}
- \expandafter\def\csname simpleicon@creativecommonsicon\endcsname {\simpleiconsmap\symbol{"EC87}}
- \expandafter\def\csname simpleicon@creativetechnologyicon\endcsname {\simpleiconsmap\symbol{"EC88}}
- \expandafter\def\csname simpleicon@credlyicon\endcsname {\simpleiconsmap\symbol{"EC89}}
- \expandafter\def\csname simpleicon@crehanaicon\endcsname {\simpleiconsmap\symbol{"EC8A}}
- \expandafter\def\csname simpleicon@crewunitedicon\endcsname {\simpleiconsmap\symbol{"EC8B}}
- \expandafter\def\csname simpleicon@criticalroleicon\endcsname {\simpleiconsmap\symbol{"EC8C}}
- \expandafter\def\csname simpleicon@crowdinicon\endcsname {\simpleiconsmap\symbol{"EC8D}}
- \expandafter\def\csname simpleicon@crowdsourceicon\endcsname {\simpleiconsmap\symbol{"EC8E}}
- \expandafter\def\csname simpleicon@crunchbaseicon\endcsname {\simpleiconsmap\symbol{"EC8F}}
- \expandafter\def\csname simpleicon@crunchyrollicon\endcsname {\simpleiconsmap\symbol{"EC90}}
- \expandafter\def\csname simpleicon@cryengineicon\endcsname {\simpleiconsmap\symbol{"EC91}}
- \expandafter\def\csname simpleicon@cryptpadicon\endcsname {\simpleiconsmap\symbol{"EC92}}
- \expandafter\def\csname simpleicon@crystalicon\endcsname {\simpleiconsmap\symbol{"EC93}}
- \expandafter\def\csname simpleicon@csharpicon\endcsname {\simpleiconsmap\symbol{"EC94}}
- \expandafter\def\csname simpleicon@css3icon\endcsname {\simpleiconsmap\symbol{"EC95}}
- \expandafter\def\csname simpleicon@cssdesignawardsicon\endcsname {\simpleiconsmap\symbol{"EC96}}
- \expandafter\def\csname simpleicon@cssmodulesicon\endcsname {\simpleiconsmap\symbol{"EC97}}
- \expandafter\def\csname simpleicon@csswizardryicon\endcsname {\simpleiconsmap\symbol{"EC98}}
- \expandafter\def\csname simpleicon@ctsicon\endcsname {\simpleiconsmap\symbol{"EC99}}
- \expandafter\def\csname simpleicon@cucumbericon\endcsname {\simpleiconsmap\symbol{"EC9A}}
- \expandafter\def\csname simpleicon@culturaicon\endcsname {\simpleiconsmap\symbol{"EC9B}}
- \expandafter\def\csname simpleicon@curlicon\endcsname {\simpleiconsmap\symbol{"EC9C}}
- \expandafter\def\csname simpleicon@curseforgeicon\endcsname {\simpleiconsmap\symbol{"EC9D}}
- \expandafter\def\csname simpleicon@custominkicon\endcsname {\simpleiconsmap\symbol{"EC9E}}
- \expandafter\def\csname simpleicon@cyberdefendersicon\endcsname {\simpleiconsmap\symbol{"EC9F}}
- \expandafter\def\csname simpleicon@cycling74icon\endcsname {\simpleiconsmap\symbol{"ECA0}}
- \expandafter\def\csname simpleicon@cypressicon\endcsname {\simpleiconsmap\symbol{"ECA1}}
- \expandafter\def\csname simpleicon@cytoscapedotjsicon\endcsname {\simpleiconsmap\symbol{"ECA2}}
- \expandafter\def\csname simpleicon@dicon\endcsname {\simpleiconsmap\symbol{"ECA3}}
- \expandafter\def\csname simpleicon@d3dotjsicon\endcsname {\simpleiconsmap\symbol{"ECA4}}
- \expandafter\def\csname simpleicon@daciaicon\endcsname {\simpleiconsmap\symbol{"ECA5}}
- \expandafter\def\csname simpleicon@daficon\endcsname {\simpleiconsmap\symbol{"ECA6}}
- \expandafter\def\csname simpleicon@dailydotdevicon\endcsname {\simpleiconsmap\symbol{"ECA7}}
- \expandafter\def\csname simpleicon@dailymotionicon\endcsname {\simpleiconsmap\symbol{"ECA8}}
- \expandafter\def\csname simpleicon@daimlericon\endcsname {\simpleiconsmap\symbol{"ECA9}}
- \expandafter\def\csname simpleicon@daisyuiicon\endcsname {\simpleiconsmap\symbol{"ECAA}}
- \expandafter\def\csname simpleicon@dapricon\endcsname {\simpleiconsmap\symbol{"ECAB}}
- \expandafter\def\csname simpleicon@darkreadericon\endcsname {\simpleiconsmap\symbol{"ECAC}}
- \expandafter\def\csname simpleicon@darticon\endcsname {\simpleiconsmap\symbol{"ECAD}}
- \expandafter\def\csname simpleicon@dartyicon\endcsname {\simpleiconsmap\symbol{"ECAE}}
- \expandafter\def\csname simpleicon@dasersteicon\endcsname {\simpleiconsmap\symbol{"ECAF}}
- \expandafter\def\csname simpleicon@dashicon\endcsname {\simpleiconsmap\symbol{"ECB0}}
- \expandafter\def\csname simpleicon@dashlaneicon\endcsname {\simpleiconsmap\symbol{"ECB1}}
- \expandafter\def\csname simpleicon@daskicon\endcsname {\simpleiconsmap\symbol{"ECB2}}
- \expandafter\def\csname simpleicon@dassaultsystemesicon\endcsname {\simpleiconsmap\symbol{"ECB3}}
- \expandafter\def\csname simpleicon@databricksicon\endcsname {\simpleiconsmap\symbol{"ECB4}}
- \expandafter\def\csname simpleicon@datacampicon\endcsname {\simpleiconsmap\symbol{"ECB5}}
- \expandafter\def\csname simpleicon@datadogicon\endcsname {\simpleiconsmap\symbol{"ECB6}}
- \expandafter\def\csname simpleicon@datadotaiicon\endcsname {\simpleiconsmap\symbol{"ECB7}}
- \expandafter\def\csname simpleicon@datagripicon\endcsname {\simpleiconsmap\symbol{"ECB8}}
- \expandafter\def\csname simpleicon@dataikuicon\endcsname {\simpleiconsmap\symbol{"ECB9}}
- \expandafter\def\csname simpleicon@datastaxicon\endcsname {\simpleiconsmap\symbol{"ECBA}}
- \expandafter\def\csname simpleicon@dataverseicon\endcsname {\simpleiconsmap\symbol{"ECBB}}
- \expandafter\def\csname simpleicon@datefnsicon\endcsname {\simpleiconsmap\symbol{"ECBC}}
- \expandafter\def\csname simpleicon@datevicon\endcsname {\simpleiconsmap\symbol{"ECBD}}
- \expandafter\def\csname simpleicon@datocmsicon\endcsname {\simpleiconsmap\symbol{"ECBE}}
- \expandafter\def\csname simpleicon@dattoicon\endcsname {\simpleiconsmap\symbol{"ECBF}}
- \expandafter\def\csname simpleicon@davinciresolveicon\endcsname {\simpleiconsmap\symbol{"ECC0}}
- \expandafter\def\csname simpleicon@dazhongdianpingicon\endcsname {\simpleiconsmap\symbol{"ECC1}}
- \expandafter\def\csname simpleicon@daznicon\endcsname {\simpleiconsmap\symbol{"ECC2}}
- \expandafter\def\csname simpleicon@dbeavericon\endcsname {\simpleiconsmap\symbol{"ECC3}}
- \expandafter\def\csname simpleicon@dblpicon\endcsname {\simpleiconsmap\symbol{"ECC4}}
- \expandafter\def\csname simpleicon@dbticon\endcsname {\simpleiconsmap\symbol{"ECC5}}
- \expandafter\def\csname simpleicon@dcentertainmenticon\endcsname {\simpleiconsmap\symbol{"ECC6}}
- \expandafter\def\csname simpleicon@debianicon\endcsname {\simpleiconsmap\symbol{"ECC7}}
- \expandafter\def\csname simpleicon@decapcmsicon\endcsname {\simpleiconsmap\symbol{"ECC8}}
- \expandafter\def\csname simpleicon@decentralandicon\endcsname {\simpleiconsmap\symbol{"ECC9}}
- \expandafter\def\csname simpleicon@dedgeicon\endcsname {\simpleiconsmap\symbol{"ECCA}}
- \expandafter\def\csname simpleicon@deepcoolicon\endcsname {\simpleiconsmap\symbol{"ECCB}}
- \expandafter\def\csname simpleicon@deepgramicon\endcsname {\simpleiconsmap\symbol{"ECCC}}
- \expandafter\def\csname simpleicon@deepinicon\endcsname {\simpleiconsmap\symbol{"ECCD}}
- \expandafter\def\csname simpleicon@deeplicon\endcsname {\simpleiconsmap\symbol{"ECCE}}
- \expandafter\def\csname simpleicon@deepnoteicon\endcsname {\simpleiconsmap\symbol{"ECCF}}
- \expandafter\def\csname simpleicon@deliciousicon\endcsname {\simpleiconsmap\symbol{"ECD0}}
- \expandafter\def\csname simpleicon@deliverooicon\endcsname {\simpleiconsmap\symbol{"ECD1}}
- \expandafter\def\csname simpleicon@dellicon\endcsname {\simpleiconsmap\symbol{"ECD2}}
- \expandafter\def\csname simpleicon@delonghiicon\endcsname {\simpleiconsmap\symbol{"ECD3}}
- \expandafter\def\csname simpleicon@delphiicon\endcsname {\simpleiconsmap\symbol{"ECD4}}
- \expandafter\def\csname simpleicon@deltaicon\endcsname {\simpleiconsmap\symbol{"ECD5}}
- \expandafter\def\csname simpleicon@delugeicon\endcsname {\simpleiconsmap\symbol{"ECD6}}
- \expandafter\def\csname simpleicon@denoicon\endcsname {\simpleiconsmap\symbol{"ECD7}}
- \expandafter\def\csname simpleicon@denonicon\endcsname {\simpleiconsmap\symbol{"ECD8}}
- \expandafter\def\csname simpleicon@dependaboticon\endcsname {\simpleiconsmap\symbol{"ECD9}}
- \expandafter\def\csname simpleicon@dependencycheckicon\endcsname {\simpleiconsmap\symbol{"ECDA}}
- \expandafter\def\csname simpleicon@depositphotosicon\endcsname {\simpleiconsmap\symbol{"ECDB}}
- \expandafter\def\csname simpleicon@derspiegelicon\endcsname {\simpleiconsmap\symbol{"ECDC}}
- \expandafter\def\csname simpleicon@designernewsicon\endcsname {\simpleiconsmap\symbol{"ECDD}}
- \expandafter\def\csname simpleicon@deutschebahnicon\endcsname {\simpleiconsmap\symbol{"ECDE}}
- \expandafter\def\csname simpleicon@deutschebankicon\endcsname {\simpleiconsmap\symbol{"ECDF}}
- \expandafter\def\csname simpleicon@deutscheposticon\endcsname {\simpleiconsmap\symbol{"ECE0}}
- \expandafter\def\csname simpleicon@devdottoicon\endcsname {\simpleiconsmap\symbol{"ECE1}}
- \expandafter\def\csname simpleicon@devexpressicon\endcsname {\simpleiconsmap\symbol{"ECE2}}
- \expandafter\def\csname simpleicon@deviantarticon\endcsname {\simpleiconsmap\symbol{"ECE3}}
- \expandafter\def\csname simpleicon@devposticon\endcsname {\simpleiconsmap\symbol{"ECE4}}
- \expandafter\def\csname simpleicon@devranticon\endcsname {\simpleiconsmap\symbol{"ECE5}}
- \expandafter\def\csname simpleicon@dgraphicon\endcsname {\simpleiconsmap\symbol{"ECE6}}
- \expandafter\def\csname simpleicon@dhlicon\endcsname {\simpleiconsmap\symbol{"ECE7}}
- \expandafter\def\csname simpleicon@diagramsdotneticon\endcsname {\simpleiconsmap\symbol{"ECE8}}
- \expandafter\def\csname simpleicon@dialogflowicon\endcsname {\simpleiconsmap\symbol{"ECE9}}
- \expandafter\def\csname simpleicon@diasporaicon\endcsname {\simpleiconsmap\symbol{"ECEA}}
- \expandafter\def\csname simpleicon@dictionarydotcomicon\endcsname {\simpleiconsmap\symbol{"ECEB}}
- \expandafter\def\csname simpleicon@diggicon\endcsname {\simpleiconsmap\symbol{"ECEC}}
- \expandafter\def\csname simpleicon@digikeyelectronicsicon\endcsname {\simpleiconsmap\symbol{"ECED}}
- \expandafter\def\csname simpleicon@digitaloceanicon\endcsname {\simpleiconsmap\symbol{"ECEE}}
- \expandafter\def\csname simpleicon@dinersclubicon\endcsname {\simpleiconsmap\symbol{"ECEF}}
- \expandafter\def\csname simpleicon@dioricon\endcsname {\simpleiconsmap\symbol{"ECF0}}
- \expandafter\def\csname simpleicon@directusicon\endcsname {\simpleiconsmap\symbol{"ECF1}}
- \expandafter\def\csname simpleicon@discogsicon\endcsname {\simpleiconsmap\symbol{"ECF2}}
- \expandafter\def\csname simpleicon@discordicon\endcsname {\simpleiconsmap\symbol{"ECF3}}
- \expandafter\def\csname simpleicon@discourseicon\endcsname {\simpleiconsmap\symbol{"ECF4}}
- \expandafter\def\csname simpleicon@discovericon\endcsname {\simpleiconsmap\symbol{"ECF5}}
- \expandafter\def\csname simpleicon@disqusicon\endcsname {\simpleiconsmap\symbol{"ECF6}}
- \expandafter\def\csname simpleicon@disrooticon\endcsname {\simpleiconsmap\symbol{"ECF7}}
- \expandafter\def\csname simpleicon@distrokidicon\endcsname {\simpleiconsmap\symbol{"ECF8}}
- \expandafter\def\csname simpleicon@djangoicon\endcsname {\simpleiconsmap\symbol{"ECF9}}
- \expandafter\def\csname simpleicon@djiicon\endcsname {\simpleiconsmap\symbol{"ECFA}}
- \expandafter\def\csname simpleicon@dlibicon\endcsname {\simpleiconsmap\symbol{"ECFB}}
- \expandafter\def\csname simpleicon@dlnaicon\endcsname {\simpleiconsmap\symbol{"ECFC}}
- \expandafter\def\csname simpleicon@dmicon\endcsname {\simpleiconsmap\symbol{"ECFD}}
- \expandafter\def\csname simpleicon@dockericon\endcsname {\simpleiconsmap\symbol{"ECFE}}
- \expandafter\def\csname simpleicon@docsdotrsicon\endcsname {\simpleiconsmap\symbol{"ECFF}}
- \expandafter\def\csname simpleicon@docsifyicon\endcsname {\simpleiconsmap\symbol{"ED00}}
- \expandafter\def\csname simpleicon@doctrineicon\endcsname {\simpleiconsmap\symbol{"ED01}}
- \expandafter\def\csname simpleicon@docusaurusicon\endcsname {\simpleiconsmap\symbol{"ED02}}
- \expandafter\def\csname simpleicon@docusignicon\endcsname {\simpleiconsmap\symbol{"ED03}}
- \expandafter\def\csname simpleicon@dogecoinicon\endcsname {\simpleiconsmap\symbol{"ED04}}
- \expandafter\def\csname simpleicon@doiicon\endcsname {\simpleiconsmap\symbol{"ED05}}
- \expandafter\def\csname simpleicon@dolbyicon\endcsname {\simpleiconsmap\symbol{"ED06}}
- \expandafter\def\csname simpleicon@doordashicon\endcsname {\simpleiconsmap\symbol{"ED07}}
- \expandafter\def\csname simpleicon@dota2icon\endcsname {\simpleiconsmap\symbol{"ED08}}
- \expandafter\def\csname simpleicon@dotenvicon\endcsname {\simpleiconsmap\symbol{"ED09}}
- \expandafter\def\csname simpleicon@dotneticon\endcsname {\simpleiconsmap\symbol{"ED0A}}
- \expandafter\def\csname simpleicon@doubanicon\endcsname {\simpleiconsmap\symbol{"ED0B}}
- \expandafter\def\csname simpleicon@doubanreadicon\endcsname {\simpleiconsmap\symbol{"ED0C}}
- \expandafter\def\csname simpleicon@dovecoticon\endcsname {\simpleiconsmap\symbol{"ED0D}}
- \expandafter\def\csname simpleicon@dovetailicon\endcsname {\simpleiconsmap\symbol{"ED0E}}
- \expandafter\def\csname simpleicon@doxygenicon\endcsname {\simpleiconsmap\symbol{"ED0F}}
- \expandafter\def\csname simpleicon@dpdicon\endcsname {\simpleiconsmap\symbol{"ED10}}
- \expandafter\def\csname simpleicon@dragonframeicon\endcsname {\simpleiconsmap\symbol{"ED11}}
- \expandafter\def\csname simpleicon@draugiemdotlvicon\endcsname {\simpleiconsmap\symbol{"ED12}}
- \expandafter\def\csname simpleicon@dreamstimeicon\endcsname {\simpleiconsmap\symbol{"ED13}}
- \expandafter\def\csname simpleicon@dribbbleicon\endcsname {\simpleiconsmap\symbol{"ED14}}
- \expandafter\def\csname simpleicon@drizzleicon\endcsname {\simpleiconsmap\symbol{"ED15}}
- \expandafter\def\csname simpleicon@droneicon\endcsname {\simpleiconsmap\symbol{"ED16}}
- \expandafter\def\csname simpleicon@droobleicon\endcsname {\simpleiconsmap\symbol{"ED17}}
- \expandafter\def\csname simpleicon@dropboxicon\endcsname {\simpleiconsmap\symbol{"ED18}}
- \expandafter\def\csname simpleicon@drupalicon\endcsname {\simpleiconsmap\symbol{"ED19}}
- \expandafter\def\csname simpleicon@dsautomobilesicon\endcsname {\simpleiconsmap\symbol{"ED1A}}
- \expandafter\def\csname simpleicon@dtsicon\endcsname {\simpleiconsmap\symbol{"ED1B}}
- \expandafter\def\csname simpleicon@dtubeicon\endcsname {\simpleiconsmap\symbol{"ED1C}}
- \expandafter\def\csname simpleicon@ducatiicon\endcsname {\simpleiconsmap\symbol{"ED1D}}
- \expandafter\def\csname simpleicon@duckdbicon\endcsname {\simpleiconsmap\symbol{"ED1E}}
- \expandafter\def\csname simpleicon@duckduckgoicon\endcsname {\simpleiconsmap\symbol{"ED1F}}
- \expandafter\def\csname simpleicon@dungeonsanddragonsicon\endcsname {\simpleiconsmap\symbol{"ED20}}
- \expandafter\def\csname simpleicon@dunkedicon\endcsname {\simpleiconsmap\symbol{"ED21}}
- \expandafter\def\csname simpleicon@dunzoicon\endcsname {\simpleiconsmap\symbol{"ED22}}
- \expandafter\def\csname simpleicon@duolingoicon\endcsname {\simpleiconsmap\symbol{"ED23}}
- \expandafter\def\csname simpleicon@duplicatiicon\endcsname {\simpleiconsmap\symbol{"ED24}}
- \expandafter\def\csname simpleicon@dvcicon\endcsname {\simpleiconsmap\symbol{"ED25}}
- \expandafter\def\csname simpleicon@dwavesystemsicon\endcsname {\simpleiconsmap\symbol{"ED26}}
- \expandafter\def\csname simpleicon@dwmicon\endcsname {\simpleiconsmap\symbol{"ED27}}
- \expandafter\def\csname simpleicon@dynamics365icon\endcsname {\simpleiconsmap\symbol{"ED28}}
- \expandafter\def\csname simpleicon@dynatraceicon\endcsname {\simpleiconsmap\symbol{"ED29}}
- \expandafter\def\csname simpleicon@eicon\endcsname {\simpleiconsmap\symbol{"ED2A}}
- \expandafter\def\csname simpleicon@e3icon\endcsname {\simpleiconsmap\symbol{"ED2B}}
- \expandafter\def\csname simpleicon@eaicon\endcsname {\simpleiconsmap\symbol{"ED2C}}
- \expandafter\def\csname simpleicon@eagleicon\endcsname {\simpleiconsmap\symbol{"ED2D}}
- \expandafter\def\csname simpleicon@easyedaicon\endcsname {\simpleiconsmap\symbol{"ED2E}}
- \expandafter\def\csname simpleicon@easyjeticon\endcsname {\simpleiconsmap\symbol{"ED2F}}
- \expandafter\def\csname simpleicon@ebayicon\endcsname {\simpleiconsmap\symbol{"ED30}}
- \expandafter\def\csname simpleicon@eboxicon\endcsname {\simpleiconsmap\symbol{"ED31}}
- \expandafter\def\csname simpleicon@eclipseadoptiumicon\endcsname {\simpleiconsmap\symbol{"ED32}}
- \expandafter\def\csname simpleicon@eclipsecheicon\endcsname {\simpleiconsmap\symbol{"ED33}}
- \expandafter\def\csname simpleicon@eclipseideicon\endcsname {\simpleiconsmap\symbol{"ED34}}
- \expandafter\def\csname simpleicon@eclipsejettyicon\endcsname {\simpleiconsmap\symbol{"ED35}}
- \expandafter\def\csname simpleicon@eclipsemosquittoicon\endcsname {\simpleiconsmap\symbol{"ED36}}
- \expandafter\def\csname simpleicon@eclipsevertdotxicon\endcsname {\simpleiconsmap\symbol{"ED37}}
- \expandafter\def\csname simpleicon@ecovacsicon\endcsname {\simpleiconsmap\symbol{"ED38}}
- \expandafter\def\csname simpleicon@edekaicon\endcsname {\simpleiconsmap\symbol{"ED39}}
- \expandafter\def\csname simpleicon@edgeimpulseicon\endcsname {\simpleiconsmap\symbol{"ED3A}}
- \expandafter\def\csname simpleicon@editorconfigicon\endcsname {\simpleiconsmap\symbol{"ED3B}}
- \expandafter\def\csname simpleicon@edotleclercicon\endcsname {\simpleiconsmap\symbol{"ED3C}}
- \expandafter\def\csname simpleicon@educativeicon\endcsname {\simpleiconsmap\symbol{"ED3D}}
- \expandafter\def\csname simpleicon@edxicon\endcsname {\simpleiconsmap\symbol{"ED3E}}
- \expandafter\def\csname simpleicon@eggheadicon\endcsname {\simpleiconsmap\symbol{"ED3F}}
- \expandafter\def\csname simpleicon@egnyteicon\endcsname {\simpleiconsmap\symbol{"ED40}}
- \expandafter\def\csname simpleicon@eighticon\endcsname {\simpleiconsmap\symbol{"ED41}}
- \expandafter\def\csname simpleicon@eightsleepicon\endcsname {\simpleiconsmap\symbol{"ED42}}
- \expandafter\def\csname simpleicon@ejsicon\endcsname {\simpleiconsmap\symbol{"ED43}}
- \expandafter\def\csname simpleicon@elasticicon\endcsname {\simpleiconsmap\symbol{"ED44}}
- \expandafter\def\csname simpleicon@elasticcloudicon\endcsname {\simpleiconsmap\symbol{"ED45}}
- \expandafter\def\csname simpleicon@elasticsearchicon\endcsname {\simpleiconsmap\symbol{"ED46}}
- \expandafter\def\csname simpleicon@elasticstackicon\endcsname {\simpleiconsmap\symbol{"ED47}}
- \expandafter\def\csname simpleicon@elavonicon\endcsname {\simpleiconsmap\symbol{"ED48}}
- \expandafter\def\csname simpleicon@electronicon\endcsname {\simpleiconsmap\symbol{"ED49}}
- \expandafter\def\csname simpleicon@electronbuildericon\endcsname {\simpleiconsmap\symbol{"ED4A}}
- \expandafter\def\csname simpleicon@electronfiddleicon\endcsname {\simpleiconsmap\symbol{"ED4B}}
- \expandafter\def\csname simpleicon@elegooicon\endcsname {\simpleiconsmap\symbol{"ED4C}}
- \expandafter\def\csname simpleicon@elementicon\endcsname {\simpleiconsmap\symbol{"ED4D}}
- \expandafter\def\csname simpleicon@elementaryicon\endcsname {\simpleiconsmap\symbol{"ED4E}}
- \expandafter\def\csname simpleicon@elementoricon\endcsname {\simpleiconsmap\symbol{"ED4F}}
- \expandafter\def\csname simpleicon@eleventyicon\endcsname {\simpleiconsmap\symbol{"ED50}}
- \expandafter\def\csname simpleicon@elgatoicon\endcsname {\simpleiconsmap\symbol{"ED51}}
- \expandafter\def\csname simpleicon@elixiricon\endcsname {\simpleiconsmap\symbol{"ED52}}
- \expandafter\def\csname simpleicon@eljuevesicon\endcsname {\simpleiconsmap\symbol{"ED53}}
- \expandafter\def\csname simpleicon@elloicon\endcsname {\simpleiconsmap\symbol{"ED54}}
- \expandafter\def\csname simpleicon@elmicon\endcsname {\simpleiconsmap\symbol{"ED55}}
- \expandafter\def\csname simpleicon@elseviericon\endcsname {\simpleiconsmap\symbol{"ED56}}
- \expandafter\def\csname simpleicon@embarcaderoicon\endcsname {\simpleiconsmap\symbol{"ED57}}
- \expandafter\def\csname simpleicon@embarkicon\endcsname {\simpleiconsmap\symbol{"ED58}}
- \expandafter\def\csname simpleicon@emberdotjsicon\endcsname {\simpleiconsmap\symbol{"ED59}}
- \expandafter\def\csname simpleicon@embyicon\endcsname {\simpleiconsmap\symbol{"ED5A}}
- \expandafter\def\csname simpleicon@emiratesicon\endcsname {\simpleiconsmap\symbol{"ED5B}}
- \expandafter\def\csname simpleicon@emlakjeticon\endcsname {\simpleiconsmap\symbol{"ED5C}}
- \expandafter\def\csname simpleicon@empirekredicon\endcsname {\simpleiconsmap\symbol{"ED5D}}
- \expandafter\def\csname simpleicon@endeavourosicon\endcsname {\simpleiconsmap\symbol{"ED5E}}
- \expandafter\def\csname simpleicon@engadgeticon\endcsname {\simpleiconsmap\symbol{"ED5F}}
- \expandafter\def\csname simpleicon@enpassicon\endcsname {\simpleiconsmap\symbol{"ED60}}
- \expandafter\def\csname simpleicon@enterprisedbicon\endcsname {\simpleiconsmap\symbol{"ED61}}
- \expandafter\def\csname simpleicon@envatoicon\endcsname {\simpleiconsmap\symbol{"ED62}}
- \expandafter\def\csname simpleicon@envoyproxyicon\endcsname {\simpleiconsmap\symbol{"ED63}}
- \expandafter\def\csname simpleicon@epelicon\endcsname {\simpleiconsmap\symbol{"ED64}}
- \expandafter\def\csname simpleicon@epicgamesicon\endcsname {\simpleiconsmap\symbol{"ED65}}
- \expandafter\def\csname simpleicon@epsonicon\endcsname {\simpleiconsmap\symbol{"ED66}}
- \expandafter\def\csname simpleicon@equinixmetalicon\endcsname {\simpleiconsmap\symbol{"ED67}}
- \expandafter\def\csname simpleicon@erasericon\endcsname {\simpleiconsmap\symbol{"ED68}}
- \expandafter\def\csname simpleicon@ericssonicon\endcsname {\simpleiconsmap\symbol{"ED69}}
- \expandafter\def\csname simpleicon@erlangicon\endcsname {\simpleiconsmap\symbol{"ED6A}}
- \expandafter\def\csname simpleicon@erpnexticon\endcsname {\simpleiconsmap\symbol{"ED6B}}
- \expandafter\def\csname simpleicon@esbuildicon\endcsname {\simpleiconsmap\symbol{"ED6C}}
- \expandafter\def\csname simpleicon@eseaicon\endcsname {\simpleiconsmap\symbol{"ED6D}}
- \expandafter\def\csname simpleicon@eslgamingicon\endcsname {\simpleiconsmap\symbol{"ED6E}}
- \expandafter\def\csname simpleicon@eslinticon\endcsname {\simpleiconsmap\symbol{"ED6F}}
- \expandafter\def\csname simpleicon@esotericsoftwareicon\endcsname {\simpleiconsmap\symbol{"ED70}}
- \expandafter\def\csname simpleicon@esphomeicon\endcsname {\simpleiconsmap\symbol{"ED71}}
- \expandafter\def\csname simpleicon@espressificon\endcsname {\simpleiconsmap\symbol{"ED72}}
- \expandafter\def\csname simpleicon@esriicon\endcsname {\simpleiconsmap\symbol{"ED73}}
- \expandafter\def\csname simpleicon@etcdicon\endcsname {\simpleiconsmap\symbol{"ED74}}
- \expandafter\def\csname simpleicon@ethereumicon\endcsname {\simpleiconsmap\symbol{"ED75}}
- \expandafter\def\csname simpleicon@ethersicon\endcsname {\simpleiconsmap\symbol{"ED76}}
- \expandafter\def\csname simpleicon@ethiopianairlinesicon\endcsname {\simpleiconsmap\symbol{"ED77}}
- \expandafter\def\csname simpleicon@etihadairwaysicon\endcsname {\simpleiconsmap\symbol{"ED78}}
- \expandafter\def\csname simpleicon@etsyicon\endcsname {\simpleiconsmap\symbol{"ED79}}
- \expandafter\def\csname simpleicon@eventbriteicon\endcsname {\simpleiconsmap\symbol{"ED7A}}
- \expandafter\def\csname simpleicon@eventstoreicon\endcsname {\simpleiconsmap\symbol{"ED7B}}
- \expandafter\def\csname simpleicon@evernoteicon\endcsname {\simpleiconsmap\symbol{"ED7C}}
- \expandafter\def\csname simpleicon@excalidrawicon\endcsname {\simpleiconsmap\symbol{"ED7D}}
- \expandafter\def\csname simpleicon@exercismicon\endcsname {\simpleiconsmap\symbol{"ED7E}}
- \expandafter\def\csname simpleicon@exordoicon\endcsname {\simpleiconsmap\symbol{"ED7F}}
- \expandafter\def\csname simpleicon@exoscaleicon\endcsname {\simpleiconsmap\symbol{"ED80}}
- \expandafter\def\csname simpleicon@expediaicon\endcsname {\simpleiconsmap\symbol{"ED81}}
- \expandafter\def\csname simpleicon@expensifyicon\endcsname {\simpleiconsmap\symbol{"ED82}}
- \expandafter\def\csname simpleicon@expertsexchangeicon\endcsname {\simpleiconsmap\symbol{"ED83}}
- \expandafter\def\csname simpleicon@expoicon\endcsname {\simpleiconsmap\symbol{"ED84}}
- \expandafter\def\csname simpleicon@expressicon\endcsname {\simpleiconsmap\symbol{"ED85}}
- \expandafter\def\csname simpleicon@expressvpnicon\endcsname {\simpleiconsmap\symbol{"ED86}}
- \expandafter\def\csname simpleicon@eyeemicon\endcsname {\simpleiconsmap\symbol{"ED87}}
- \expandafter\def\csname simpleicon@f1icon\endcsname {\simpleiconsmap\symbol{"ED88}}
- \expandafter\def\csname simpleicon@f5icon\endcsname {\simpleiconsmap\symbol{"ED89}}
- \expandafter\def\csname simpleicon@facebookicon\endcsname {\simpleiconsmap\symbol{"ED8A}}
- \expandafter\def\csname simpleicon@facebookgamingicon\endcsname {\simpleiconsmap\symbol{"ED8B}}
- \expandafter\def\csname simpleicon@facebookliveicon\endcsname {\simpleiconsmap\symbol{"ED8C}}
- \expandafter\def\csname simpleicon@faceiticon\endcsname {\simpleiconsmap\symbol{"ED8D}}
- \expandafter\def\csname simpleicon@facepunchicon\endcsname {\simpleiconsmap\symbol{"ED8E}}
- \expandafter\def\csname simpleicon@fairphoneicon\endcsname {\simpleiconsmap\symbol{"ED8F}}
- \expandafter\def\csname simpleicon@falcoicon\endcsname {\simpleiconsmap\symbol{"ED90}}
- \expandafter\def\csname simpleicon@falconicon\endcsname {\simpleiconsmap\symbol{"ED91}}
- \expandafter\def\csname simpleicon@fampayicon\endcsname {\simpleiconsmap\symbol{"ED92}}
- \expandafter\def\csname simpleicon@fandangoicon\endcsname {\simpleiconsmap\symbol{"ED93}}
- \expandafter\def\csname simpleicon@fandomicon\endcsname {\simpleiconsmap\symbol{"ED94}}
- \expandafter\def\csname simpleicon@fanfouicon\endcsname {\simpleiconsmap\symbol{"ED95}}
- \expandafter\def\csname simpleicon@fantomicon\endcsname {\simpleiconsmap\symbol{"ED96}}
- \expandafter\def\csname simpleicon@farcastericon\endcsname {\simpleiconsmap\symbol{"ED97}}
- \expandafter\def\csname simpleicon@fareharboricon\endcsname {\simpleiconsmap\symbol{"ED98}}
- \expandafter\def\csname simpleicon@farfetchicon\endcsname {\simpleiconsmap\symbol{"ED99}}
- \expandafter\def\csname simpleicon@fastapiicon\endcsname {\simpleiconsmap\symbol{"ED9A}}
- \expandafter\def\csname simpleicon@fastifyicon\endcsname {\simpleiconsmap\symbol{"ED9B}}
- \expandafter\def\csname simpleicon@fastlaneicon\endcsname {\simpleiconsmap\symbol{"ED9C}}
- \expandafter\def\csname simpleicon@fastlyicon\endcsname {\simpleiconsmap\symbol{"ED9D}}
- \expandafter\def\csname simpleicon@fathomicon\endcsname {\simpleiconsmap\symbol{"ED9E}}
- \expandafter\def\csname simpleicon@faunaicon\endcsname {\simpleiconsmap\symbol{"ED9F}}
- \expandafter\def\csname simpleicon@favroicon\endcsname {\simpleiconsmap\symbol{"EDA0}}
- \expandafter\def\csname simpleicon@fdroidicon\endcsname {\simpleiconsmap\symbol{"EDA1}}
- \expandafter\def\csname simpleicon@feathubicon\endcsname {\simpleiconsmap\symbol{"EDA2}}
- \expandafter\def\csname simpleicon@fedexicon\endcsname {\simpleiconsmap\symbol{"EDA3}}
- \expandafter\def\csname simpleicon@fedoraicon\endcsname {\simpleiconsmap\symbol{"EDA4}}
- \expandafter\def\csname simpleicon@feedlyicon\endcsname {\simpleiconsmap\symbol{"EDA5}}
- \expandafter\def\csname simpleicon@ferrariicon\endcsname {\simpleiconsmap\symbol{"EDA6}}
- \expandafter\def\csname simpleicon@ferrarinvicon\endcsname {\simpleiconsmap\symbol{"EDA7}}
- \expandafter\def\csname simpleicon@ferretdbicon\endcsname {\simpleiconsmap\symbol{"EDA8}}
- \expandafter\def\csname simpleicon@ffmpegicon\endcsname {\simpleiconsmap\symbol{"EDA9}}
- \expandafter\def\csname simpleicon@fiicon\endcsname {\simpleiconsmap\symbol{"EDAA}}
- \expandafter\def\csname simpleicon@fiaticon\endcsname {\simpleiconsmap\symbol{"EDAB}}
- \expandafter\def\csname simpleicon@fidoallianceicon\endcsname {\simpleiconsmap\symbol{"EDAC}}
- \expandafter\def\csname simpleicon@fifaicon\endcsname {\simpleiconsmap\symbol{"EDAD}}
- \expandafter\def\csname simpleicon@figicon\endcsname {\simpleiconsmap\symbol{"EDAE}}
- \expandafter\def\csname simpleicon@figmaicon\endcsname {\simpleiconsmap\symbol{"EDAF}}
- \expandafter\def\csname simpleicon@figshareicon\endcsname {\simpleiconsmap\symbol{"EDB0}}
- \expandafter\def\csname simpleicon@filaicon\endcsname {\simpleiconsmap\symbol{"EDB1}}
- \expandafter\def\csname simpleicon@filedotioicon\endcsname {\simpleiconsmap\symbol{"EDB2}}
- \expandafter\def\csname simpleicon@filesicon\endcsname {\simpleiconsmap\symbol{"EDB3}}
- \expandafter\def\csname simpleicon@filezillaicon\endcsname {\simpleiconsmap\symbol{"EDB4}}
- \expandafter\def\csname simpleicon@finecoicon\endcsname {\simpleiconsmap\symbol{"EDB5}}
- \expandafter\def\csname simpleicon@fingicon\endcsname {\simpleiconsmap\symbol{"EDB6}}
- \expandafter\def\csname simpleicon@firebaseicon\endcsname {\simpleiconsmap\symbol{"EDB7}}
- \expandafter\def\csname simpleicon@firefishicon\endcsname {\simpleiconsmap\symbol{"EDB8}}
- \expandafter\def\csname simpleicon@fireflyiiiicon\endcsname {\simpleiconsmap\symbol{"EDB9}}
- \expandafter\def\csname simpleicon@firefoxicon\endcsname {\simpleiconsmap\symbol{"EDBA}}
- \expandafter\def\csname simpleicon@firefoxbrowsericon\endcsname {\simpleiconsmap\symbol{"EDBB}}
- \expandafter\def\csname simpleicon@fireshipicon\endcsname {\simpleiconsmap\symbol{"EDBC}}
- \expandafter\def\csname simpleicon@firewallaicon\endcsname {\simpleiconsmap\symbol{"EDBD}}
- \expandafter\def\csname simpleicon@firsticon\endcsname {\simpleiconsmap\symbol{"EDBE}}
- \expandafter\def\csname simpleicon@fishshellicon\endcsname {\simpleiconsmap\symbol{"EDBF}}
- \expandafter\def\csname simpleicon@fitbiticon\endcsname {\simpleiconsmap\symbol{"EDC0}}
- \expandafter\def\csname simpleicon@fivemicon\endcsname {\simpleiconsmap\symbol{"EDC1}}
- \expandafter\def\csname simpleicon@fiverricon\endcsname {\simpleiconsmap\symbol{"EDC2}}
- \expandafter\def\csname simpleicon@fizzicon\endcsname {\simpleiconsmap\symbol{"EDC3}}
- \expandafter\def\csname simpleicon@flashforgeicon\endcsname {\simpleiconsmap\symbol{"EDC4}}
- \expandafter\def\csname simpleicon@flaskicon\endcsname {\simpleiconsmap\symbol{"EDC5}}
- \expandafter\def\csname simpleicon@flaticon\endcsname {\simpleiconsmap\symbol{"EDC6}}
- \expandafter\def\csname simpleicon@flathubicon\endcsname {\simpleiconsmap\symbol{"EDC7}}
- \expandafter\def\csname simpleicon@flatpakicon\endcsname {\simpleiconsmap\symbol{"EDC8}}
- \expandafter\def\csname simpleicon@flickricon\endcsname {\simpleiconsmap\symbol{"EDC9}}
- \expandafter\def\csname simpleicon@flightawareicon\endcsname {\simpleiconsmap\symbol{"EDCA}}
- \expandafter\def\csname simpleicon@flipboardicon\endcsname {\simpleiconsmap\symbol{"EDCB}}
- \expandafter\def\csname simpleicon@flipkarticon\endcsname {\simpleiconsmap\symbol{"EDCC}}
- \expandafter\def\csname simpleicon@floatplaneicon\endcsname {\simpleiconsmap\symbol{"EDCD}}
- \expandafter\def\csname simpleicon@floodicon\endcsname {\simpleiconsmap\symbol{"EDCE}}
- \expandafter\def\csname simpleicon@fluentbiticon\endcsname {\simpleiconsmap\symbol{"EDCF}}
- \expandafter\def\csname simpleicon@fluentdicon\endcsname {\simpleiconsmap\symbol{"EDD0}}
- \expandafter\def\csname simpleicon@flukeicon\endcsname {\simpleiconsmap\symbol{"EDD1}}
- \expandafter\def\csname simpleicon@fluttericon\endcsname {\simpleiconsmap\symbol{"EDD2}}
- \expandafter\def\csname simpleicon@fluxicon\endcsname {\simpleiconsmap\symbol{"EDD3}}
- \expandafter\def\csname simpleicon@fluxusicon\endcsname {\simpleiconsmap\symbol{"EDD4}}
- \expandafter\def\csname simpleicon@flywayicon\endcsname {\simpleiconsmap\symbol{"EDD5}}
- \expandafter\def\csname simpleicon@fmodicon\endcsname {\simpleiconsmap\symbol{"EDD6}}
- \expandafter\def\csname simpleicon@fnacicon\endcsname {\simpleiconsmap\symbol{"EDD7}}
- \expandafter\def\csname simpleicon@foliumicon\endcsname {\simpleiconsmap\symbol{"EDD8}}
- \expandafter\def\csname simpleicon@fonomaicon\endcsname {\simpleiconsmap\symbol{"EDD9}}
- \expandafter\def\csname simpleicon@fontawesomeicon\endcsname {\simpleiconsmap\symbol{"EDDA}}
- \expandafter\def\csname simpleicon@fontbaseicon\endcsname {\simpleiconsmap\symbol{"EDDB}}
- \expandafter\def\csname simpleicon@fontforgeicon\endcsname {\simpleiconsmap\symbol{"EDDC}}
- \expandafter\def\csname simpleicon@foobar2000icon\endcsname {\simpleiconsmap\symbol{"EDDD}}
- \expandafter\def\csname simpleicon@foodpandaicon\endcsname {\simpleiconsmap\symbol{"EDDE}}
- \expandafter\def\csname simpleicon@fordicon\endcsname {\simpleiconsmap\symbol{"EDDF}}
- \expandafter\def\csname simpleicon@forgejoicon\endcsname {\simpleiconsmap\symbol{"EDE0}}
- \expandafter\def\csname simpleicon@formikicon\endcsname {\simpleiconsmap\symbol{"EDE1}}
- \expandafter\def\csname simpleicon@formspreeicon\endcsname {\simpleiconsmap\symbol{"EDE2}}
- \expandafter\def\csname simpleicon@formstackicon\endcsname {\simpleiconsmap\symbol{"EDE3}}
- \expandafter\def\csname simpleicon@fortineticon\endcsname {\simpleiconsmap\symbol{"EDE4}}
- \expandafter\def\csname simpleicon@fortranicon\endcsname {\simpleiconsmap\symbol{"EDE5}}
- \expandafter\def\csname simpleicon@fossaicon\endcsname {\simpleiconsmap\symbol{"EDE6}}
- \expandafter\def\csname simpleicon@fossilscmicon\endcsname {\simpleiconsmap\symbol{"EDE7}}
- \expandafter\def\csname simpleicon@foundryvirtualtabletopicon\endcsname {\simpleiconsmap\symbol{"EDE8}}
- \expandafter\def\csname simpleicon@foursquareicon\endcsname {\simpleiconsmap\symbol{"EDE9}}
- \expandafter\def\csname simpleicon@foursquarecityguideicon\endcsname {\simpleiconsmap\symbol{"EDEA}}
- \expandafter\def\csname simpleicon@foxicon\endcsname {\simpleiconsmap\symbol{"EDEB}}
- \expandafter\def\csname simpleicon@foxtelicon\endcsname {\simpleiconsmap\symbol{"EDEC}}
- \expandafter\def\csname simpleicon@fozzyicon\endcsname {\simpleiconsmap\symbol{"EDED}}
- \expandafter\def\csname simpleicon@framericon\endcsname {\simpleiconsmap\symbol{"EDEE}}
- \expandafter\def\csname simpleicon@frameworkicon\endcsname {\simpleiconsmap\symbol{"EDEF}}
- \expandafter\def\csname simpleicon@framework7icon\endcsname {\simpleiconsmap\symbol{"EDF0}}
- \expandafter\def\csname simpleicon@franprixicon\endcsname {\simpleiconsmap\symbol{"EDF1}}
- \expandafter\def\csname simpleicon@frappeicon\endcsname {\simpleiconsmap\symbol{"EDF2}}
- \expandafter\def\csname simpleicon@fraunhofergesellschafticon\endcsname {\simpleiconsmap\symbol{"EDF3}}
- \expandafter\def\csname simpleicon@freebsdicon\endcsname {\simpleiconsmap\symbol{"EDF4}}
- \expandafter\def\csname simpleicon@freecadicon\endcsname {\simpleiconsmap\symbol{"EDF5}}
- \expandafter\def\csname simpleicon@freecodecampicon\endcsname {\simpleiconsmap\symbol{"EDF6}}
- \expandafter\def\csname simpleicon@freedesktopdotorgicon\endcsname {\simpleiconsmap\symbol{"EDF7}}
- \expandafter\def\csname simpleicon@freelancericon\endcsname {\simpleiconsmap\symbol{"EDF8}}
- \expandafter\def\csname simpleicon@freelancermapicon\endcsname {\simpleiconsmap\symbol{"EDF9}}
- \expandafter\def\csname simpleicon@freenasicon\endcsname {\simpleiconsmap\symbol{"EDFA}}
- \expandafter\def\csname simpleicon@freepikicon\endcsname {\simpleiconsmap\symbol{"EDFB}}
- \expandafter\def\csname simpleicon@frontendmentoricon\endcsname {\simpleiconsmap\symbol{"EDFC}}
- \expandafter\def\csname simpleicon@frontifyicon\endcsname {\simpleiconsmap\symbol{"EDFD}}
- \expandafter\def\csname simpleicon@fsecureicon\endcsname {\simpleiconsmap\symbol{"EDFE}}
- \expandafter\def\csname simpleicon@fsharpicon\endcsname {\simpleiconsmap\symbol{"EDFF}}
- \expandafter\def\csname simpleicon@fuboicon\endcsname {\simpleiconsmap\symbol{"EE00}}
- \expandafter\def\csname simpleicon@fuelericon\endcsname {\simpleiconsmap\symbol{"EE01}}
- \expandafter\def\csname simpleicon@fugacloudicon\endcsname {\simpleiconsmap\symbol{"EE02}}
- \expandafter\def\csname simpleicon@fujifilmicon\endcsname {\simpleiconsmap\symbol{"EE03}}
- \expandafter\def\csname simpleicon@fujitsuicon\endcsname {\simpleiconsmap\symbol{"EE04}}
- \expandafter\def\csname simpleicon@funimationicon\endcsname {\simpleiconsmap\symbol{"EE05}}
- \expandafter\def\csname simpleicon@furaffinityicon\endcsname {\simpleiconsmap\symbol{"EE06}}
- \expandafter\def\csname simpleicon@furrynetworkicon\endcsname {\simpleiconsmap\symbol{"EE07}}
- \expandafter\def\csname simpleicon@fusionauthicon\endcsname {\simpleiconsmap\symbol{"EE08}}
- \expandafter\def\csname simpleicon@futurelearnicon\endcsname {\simpleiconsmap\symbol{"EE09}}
- \expandafter\def\csname simpleicon@g2icon\endcsname {\simpleiconsmap\symbol{"EE0A}}
- \expandafter\def\csname simpleicon@g2aicon\endcsname {\simpleiconsmap\symbol{"EE0B}}
- \expandafter\def\csname simpleicon@g2gicon\endcsname {\simpleiconsmap\symbol{"EE0C}}
- \expandafter\def\csname simpleicon@galaxusicon\endcsname {\simpleiconsmap\symbol{"EE0D}}
- \expandafter\def\csname simpleicon@gameandwatchicon\endcsname {\simpleiconsmap\symbol{"EE0E}}
- \expandafter\def\csname simpleicon@gamebananaicon\endcsname {\simpleiconsmap\symbol{"EE0F}}
- \expandafter\def\csname simpleicon@gamedevelopericon\endcsname {\simpleiconsmap\symbol{"EE10}}
- \expandafter\def\csname simpleicon@gamejolticon\endcsname {\simpleiconsmap\symbol{"EE11}}
- \expandafter\def\csname simpleicon@gamelofticon\endcsname {\simpleiconsmap\symbol{"EE12}}
- \expandafter\def\csname simpleicon@gamemakericon\endcsname {\simpleiconsmap\symbol{"EE13}}
- \expandafter\def\csname simpleicon@garminicon\endcsname {\simpleiconsmap\symbol{"EE14}}
- \expandafter\def\csname simpleicon@gatlingicon\endcsname {\simpleiconsmap\symbol{"EE15}}
- \expandafter\def\csname simpleicon@gatsbyicon\endcsname {\simpleiconsmap\symbol{"EE16}}
- \expandafter\def\csname simpleicon@gcoreicon\endcsname {\simpleiconsmap\symbol{"EE17}}
- \expandafter\def\csname simpleicon@gdalicon\endcsname {\simpleiconsmap\symbol{"EE18}}
- \expandafter\def\csname simpleicon@geanticon\endcsname {\simpleiconsmap\symbol{"EE19}}
- \expandafter\def\csname simpleicon@geeksforgeeksicon\endcsname {\simpleiconsmap\symbol{"EE1A}}
- \expandafter\def\csname simpleicon@generalelectricicon\endcsname {\simpleiconsmap\symbol{"EE1B}}
- \expandafter\def\csname simpleicon@generalmotorsicon\endcsname {\simpleiconsmap\symbol{"EE1C}}
- \expandafter\def\csname simpleicon@geniusicon\endcsname {\simpleiconsmap\symbol{"EE1D}}
- \expandafter\def\csname simpleicon@gentooicon\endcsname {\simpleiconsmap\symbol{"EE1E}}
- \expandafter\def\csname simpleicon@geocachingicon\endcsname {\simpleiconsmap\symbol{"EE1F}}
- \expandafter\def\csname simpleicon@geodeicon\endcsname {\simpleiconsmap\symbol{"EE20}}
- \expandafter\def\csname simpleicon@geopandasicon\endcsname {\simpleiconsmap\symbol{"EE21}}
- \expandafter\def\csname simpleicon@gerriticon\endcsname {\simpleiconsmap\symbol{"EE22}}
- \expandafter\def\csname simpleicon@getxicon\endcsname {\simpleiconsmap\symbol{"EE23}}
- \expandafter\def\csname simpleicon@ghosticon\endcsname {\simpleiconsmap\symbol{"EE24}}
- \expandafter\def\csname simpleicon@ghosteryicon\endcsname {\simpleiconsmap\symbol{"EE25}}
- \expandafter\def\csname simpleicon@gimpicon\endcsname {\simpleiconsmap\symbol{"EE26}}
- \expandafter\def\csname simpleicon@ginicon\endcsname {\simpleiconsmap\symbol{"EE27}}
- \expandafter\def\csname simpleicon@giphyicon\endcsname {\simpleiconsmap\symbol{"EE28}}
- \expandafter\def\csname simpleicon@giticon\endcsname {\simpleiconsmap\symbol{"EE29}}
- \expandafter\def\csname simpleicon@gitbookicon\endcsname {\simpleiconsmap\symbol{"EE2A}}
- \expandafter\def\csname simpleicon@gitconnectedicon\endcsname {\simpleiconsmap\symbol{"EE2B}}
- \expandafter\def\csname simpleicon@giteaicon\endcsname {\simpleiconsmap\symbol{"EE2C}}
- \expandafter\def\csname simpleicon@giteeicon\endcsname {\simpleiconsmap\symbol{"EE2D}}
- \expandafter\def\csname simpleicon@gitextensionsicon\endcsname {\simpleiconsmap\symbol{"EE2E}}
- \expandafter\def\csname simpleicon@gitforwindowsicon\endcsname {\simpleiconsmap\symbol{"EE2F}}
- \expandafter\def\csname simpleicon@githubicon\endcsname {\simpleiconsmap\symbol{"EE30}}
- \expandafter\def\csname simpleicon@githubactionsicon\endcsname {\simpleiconsmap\symbol{"EE31}}
- \expandafter\def\csname simpleicon@githubcopiloticon\endcsname {\simpleiconsmap\symbol{"EE32}}
- \expandafter\def\csname simpleicon@githubpagesicon\endcsname {\simpleiconsmap\symbol{"EE33}}
- \expandafter\def\csname simpleicon@githubsponsorsicon\endcsname {\simpleiconsmap\symbol{"EE34}}
- \expandafter\def\csname simpleicon@gitignoredotioicon\endcsname {\simpleiconsmap\symbol{"EE35}}
- \expandafter\def\csname simpleicon@gitkrakenicon\endcsname {\simpleiconsmap\symbol{"EE36}}
- \expandafter\def\csname simpleicon@gitlabicon\endcsname {\simpleiconsmap\symbol{"EE37}}
- \expandafter\def\csname simpleicon@gitlfsicon\endcsname {\simpleiconsmap\symbol{"EE38}}
- \expandafter\def\csname simpleicon@gitpodicon\endcsname {\simpleiconsmap\symbol{"EE39}}
- \expandafter\def\csname simpleicon@gittericon\endcsname {\simpleiconsmap\symbol{"EE3A}}
- \expandafter\def\csname simpleicon@glassdooricon\endcsname {\simpleiconsmap\symbol{"EE3B}}
- \expandafter\def\csname simpleicon@glideicon\endcsname {\simpleiconsmap\symbol{"EE3C}}
- \expandafter\def\csname simpleicon@glitchicon\endcsname {\simpleiconsmap\symbol{"EE3D}}
- \expandafter\def\csname simpleicon@globusicon\endcsname {\simpleiconsmap\symbol{"EE3E}}
- \expandafter\def\csname simpleicon@glovoicon\endcsname {\simpleiconsmap\symbol{"EE3F}}
- \expandafter\def\csname simpleicon@gmailicon\endcsname {\simpleiconsmap\symbol{"EE40}}
- \expandafter\def\csname simpleicon@gnomeicon\endcsname {\simpleiconsmap\symbol{"EE41}}
- \expandafter\def\csname simpleicon@gnometerminalicon\endcsname {\simpleiconsmap\symbol{"EE42}}
- \expandafter\def\csname simpleicon@gnuicon\endcsname {\simpleiconsmap\symbol{"EE43}}
- \expandafter\def\csname simpleicon@gnubashicon\endcsname {\simpleiconsmap\symbol{"EE44}}
- \expandafter\def\csname simpleicon@gnuemacsicon\endcsname {\simpleiconsmap\symbol{"EE45}}
- \expandafter\def\csname simpleicon@gnuicecaticon\endcsname {\simpleiconsmap\symbol{"EE46}}
- \expandafter\def\csname simpleicon@gnuprivacyguardicon\endcsname {\simpleiconsmap\symbol{"EE47}}
- \expandafter\def\csname simpleicon@gnusocialicon\endcsname {\simpleiconsmap\symbol{"EE48}}
- \expandafter\def\csname simpleicon@goicon\endcsname {\simpleiconsmap\symbol{"EE49}}
- \expandafter\def\csname simpleicon@gocdicon\endcsname {\simpleiconsmap\symbol{"EE4A}}
- \expandafter\def\csname simpleicon@godaddyicon\endcsname {\simpleiconsmap\symbol{"EE4B}}
- \expandafter\def\csname simpleicon@godotengineicon\endcsname {\simpleiconsmap\symbol{"EE4C}}
- \expandafter\def\csname simpleicon@gofundmeicon\endcsname {\simpleiconsmap\symbol{"EE4D}}
- \expandafter\def\csname simpleicon@gogdotcomicon\endcsname {\simpleiconsmap\symbol{"EE4E}}
- \expandafter\def\csname simpleicon@gojekicon\endcsname {\simpleiconsmap\symbol{"EE4F}}
- \expandafter\def\csname simpleicon@golandicon\endcsname {\simpleiconsmap\symbol{"EE50}}
- \expandafter\def\csname simpleicon@goldenlineicon\endcsname {\simpleiconsmap\symbol{"EE51}}
- \expandafter\def\csname simpleicon@goldmansachsicon\endcsname {\simpleiconsmap\symbol{"EE52}}
- \expandafter\def\csname simpleicon@goodreadsicon\endcsname {\simpleiconsmap\symbol{"EE53}}
- \expandafter\def\csname simpleicon@googleicon\endcsname {\simpleiconsmap\symbol{"EE54}}
- \expandafter\def\csname simpleicon@googleadmobicon\endcsname {\simpleiconsmap\symbol{"EE55}}
- \expandafter\def\csname simpleicon@googleadsicon\endcsname {\simpleiconsmap\symbol{"EE56}}
- \expandafter\def\csname simpleicon@googleadsenseicon\endcsname {\simpleiconsmap\symbol{"EE57}}
- \expandafter\def\csname simpleicon@googleanalyticsicon\endcsname {\simpleiconsmap\symbol{"EE58}}
- \expandafter\def\csname simpleicon@googleappsscripticon\endcsname {\simpleiconsmap\symbol{"EE59}}
- \expandafter\def\csname simpleicon@googleassistanticon\endcsname {\simpleiconsmap\symbol{"EE5A}}
- \expandafter\def\csname simpleicon@googleauthenticatoricon\endcsname {\simpleiconsmap\symbol{"EE5B}}
- \expandafter\def\csname simpleicon@googlebigqueryicon\endcsname {\simpleiconsmap\symbol{"EE5C}}
- \expandafter\def\csname simpleicon@googlebigtableicon\endcsname {\simpleiconsmap\symbol{"EE5D}}
- \expandafter\def\csname simpleicon@googlecalendaricon\endcsname {\simpleiconsmap\symbol{"EE5E}}
- \expandafter\def\csname simpleicon@googlecampaignmanager360icon\endcsname {\simpleiconsmap\symbol{"EE5F}}
- \expandafter\def\csname simpleicon@googlecardboardicon\endcsname {\simpleiconsmap\symbol{"EE60}}
- \expandafter\def\csname simpleicon@googlechaticon\endcsname {\simpleiconsmap\symbol{"EE61}}
- \expandafter\def\csname simpleicon@googlechromeicon\endcsname {\simpleiconsmap\symbol{"EE62}}
- \expandafter\def\csname simpleicon@googlechronicleicon\endcsname {\simpleiconsmap\symbol{"EE63}}
- \expandafter\def\csname simpleicon@googleclassroomicon\endcsname {\simpleiconsmap\symbol{"EE64}}
- \expandafter\def\csname simpleicon@googlecloudicon\endcsname {\simpleiconsmap\symbol{"EE65}}
- \expandafter\def\csname simpleicon@googlecloudcomposericon\endcsname {\simpleiconsmap\symbol{"EE66}}
- \expandafter\def\csname simpleicon@googlecloudspannericon\endcsname {\simpleiconsmap\symbol{"EE67}}
- \expandafter\def\csname simpleicon@googlecloudstorageicon\endcsname {\simpleiconsmap\symbol{"EE68}}
- \expandafter\def\csname simpleicon@googlecolabicon\endcsname {\simpleiconsmap\symbol{"EE69}}
- \expandafter\def\csname simpleicon@googlecontaineroptimizedosicon\endcsname {\simpleiconsmap\symbol{"EE6A}}
- \expandafter\def\csname simpleicon@googledataflowicon\endcsname {\simpleiconsmap\symbol{"EE6B}}
- \expandafter\def\csname simpleicon@googledataprocicon\endcsname {\simpleiconsmap\symbol{"EE6C}}
- \expandafter\def\csname simpleicon@googledatastudioicon\endcsname {\simpleiconsmap\symbol{"EE6D}}
- \expandafter\def\csname simpleicon@googledisplayandvideo360icon\endcsname {\simpleiconsmap\symbol{"EE6E}}
- \expandafter\def\csname simpleicon@googledocsicon\endcsname {\simpleiconsmap\symbol{"EE6F}}
- \expandafter\def\csname simpleicon@googledomainsicon\endcsname {\simpleiconsmap\symbol{"EE70}}
- \expandafter\def\csname simpleicon@googledriveicon\endcsname {\simpleiconsmap\symbol{"EE71}}
- \expandafter\def\csname simpleicon@googleearthicon\endcsname {\simpleiconsmap\symbol{"EE72}}
- \expandafter\def\csname simpleicon@googleearthengineicon\endcsname {\simpleiconsmap\symbol{"EE73}}
- \expandafter\def\csname simpleicon@googlefiticon\endcsname {\simpleiconsmap\symbol{"EE74}}
- \expandafter\def\csname simpleicon@googlefontsicon\endcsname {\simpleiconsmap\symbol{"EE75}}
- \expandafter\def\csname simpleicon@googleformsicon\endcsname {\simpleiconsmap\symbol{"EE76}}
- \expandafter\def\csname simpleicon@googlegeminiicon\endcsname {\simpleiconsmap\symbol{"EE77}}
- \expandafter\def\csname simpleicon@googlehangoutsicon\endcsname {\simpleiconsmap\symbol{"EE78}}
- \expandafter\def\csname simpleicon@googlehomeicon\endcsname {\simpleiconsmap\symbol{"EE79}}
- \expandafter\def\csname simpleicon@googlekeepicon\endcsname {\simpleiconsmap\symbol{"EE7A}}
- \expandafter\def\csname simpleicon@googlelensicon\endcsname {\simpleiconsmap\symbol{"EE7B}}
- \expandafter\def\csname simpleicon@googlemapsicon\endcsname {\simpleiconsmap\symbol{"EE7C}}
- \expandafter\def\csname simpleicon@googlemarketingplatformicon\endcsname {\simpleiconsmap\symbol{"EE7D}}
- \expandafter\def\csname simpleicon@googlemeeticon\endcsname {\simpleiconsmap\symbol{"EE7E}}
- \expandafter\def\csname simpleicon@googlemessagesicon\endcsname {\simpleiconsmap\symbol{"EE7F}}
- \expandafter\def\csname simpleicon@googlemybusinessicon\endcsname {\simpleiconsmap\symbol{"EE80}}
- \expandafter\def\csname simpleicon@googlenearbyicon\endcsname {\simpleiconsmap\symbol{"EE81}}
- \expandafter\def\csname simpleicon@googlenewsicon\endcsname {\simpleiconsmap\symbol{"EE82}}
- \expandafter\def\csname simpleicon@googleoptimizeicon\endcsname {\simpleiconsmap\symbol{"EE83}}
- \expandafter\def\csname simpleicon@googlepayicon\endcsname {\simpleiconsmap\symbol{"EE84}}
- \expandafter\def\csname simpleicon@googlephotosicon\endcsname {\simpleiconsmap\symbol{"EE85}}
- \expandafter\def\csname simpleicon@googleplayicon\endcsname {\simpleiconsmap\symbol{"EE86}}
- \expandafter\def\csname simpleicon@googlepodcastsicon\endcsname {\simpleiconsmap\symbol{"EE87}}
+ \expandafter\def\csname simpleicon@caprovericon\endcsname {\simpleiconsmap\symbol{"EBD2}}
+ \expandafter\def\csname simpleicon@cardanoicon\endcsname {\simpleiconsmap\symbol{"EBD3}}
+ \expandafter\def\csname simpleicon@carlsberggroupicon\endcsname {\simpleiconsmap\symbol{"EBD4}}
+ \expandafter\def\csname simpleicon@carrdicon\endcsname {\simpleiconsmap\symbol{"EBD5}}
+ \expandafter\def\csname simpleicon@carrefouricon\endcsname {\simpleiconsmap\symbol{"EBD6}}
+ \expandafter\def\csname simpleicon@carthrottleicon\endcsname {\simpleiconsmap\symbol{"EBD7}}
+ \expandafter\def\csname simpleicon@cartoicon\endcsname {\simpleiconsmap\symbol{"EBD8}}
+ \expandafter\def\csname simpleicon@cashappicon\endcsname {\simpleiconsmap\symbol{"EBD9}}
+ \expandafter\def\csname simpleicon@castboxicon\endcsname {\simpleiconsmap\symbol{"EBDA}}
+ \expandafter\def\csname simpleicon@castoramaicon\endcsname {\simpleiconsmap\symbol{"EBDB}}
+ \expandafter\def\csname simpleicon@castroicon\endcsname {\simpleiconsmap\symbol{"EBDC}}
+ \expandafter\def\csname simpleicon@caterpillaricon\endcsname {\simpleiconsmap\symbol{"EBDD}}
+ \expandafter\def\csname simpleicon@cbcicon\endcsname {\simpleiconsmap\symbol{"EBDE}}
+ \expandafter\def\csname simpleicon@cbsicon\endcsname {\simpleiconsmap\symbol{"EBDF}}
+ \expandafter\def\csname simpleicon@ccleanericon\endcsname {\simpleiconsmap\symbol{"EBE0}}
+ \expandafter\def\csname simpleicon@cdprojekticon\endcsname {\simpleiconsmap\symbol{"EBE1}}
+ \expandafter\def\csname simpleicon@celeryicon\endcsname {\simpleiconsmap\symbol{"EBE2}}
+ \expandafter\def\csname simpleicon@celestronicon\endcsname {\simpleiconsmap\symbol{"EBE3}}
+ \expandafter\def\csname simpleicon@centosicon\endcsname {\simpleiconsmap\symbol{"EBE4}}
+ \expandafter\def\csname simpleicon@cephicon\endcsname {\simpleiconsmap\symbol{"EBE5}}
+ \expandafter\def\csname simpleicon@cesiumicon\endcsname {\simpleiconsmap\symbol{"EBE6}}
+ \expandafter\def\csname simpleicon@chaiicon\endcsname {\simpleiconsmap\symbol{"EBE7}}
+ \expandafter\def\csname simpleicon@chainguardicon\endcsname {\simpleiconsmap\symbol{"EBE8}}
+ \expandafter\def\csname simpleicon@chainlinkicon\endcsname {\simpleiconsmap\symbol{"EBE9}}
+ \expandafter\def\csname simpleicon@chakrauiicon\endcsname {\simpleiconsmap\symbol{"EBEA}}
+ \expandafter\def\csname simpleicon@channel4icon\endcsname {\simpleiconsmap\symbol{"EBEB}}
+ \expandafter\def\csname simpleicon@charlesicon\endcsname {\simpleiconsmap\symbol{"EBEC}}
+ \expandafter\def\csname simpleicon@chartdotjsicon\endcsname {\simpleiconsmap\symbol{"EBED}}
+ \expandafter\def\csname simpleicon@chartmogulicon\endcsname {\simpleiconsmap\symbol{"EBEE}}
+ \expandafter\def\csname simpleicon@chaseicon\endcsname {\simpleiconsmap\symbol{"EBEF}}
+ \expandafter\def\csname simpleicon@chatboticon\endcsname {\simpleiconsmap\symbol{"EBF0}}
+ \expandafter\def\csname simpleicon@chatwooticon\endcsname {\simpleiconsmap\symbol{"EBF1}}
+ \expandafter\def\csname simpleicon@checkioicon\endcsname {\simpleiconsmap\symbol{"EBF2}}
+ \expandafter\def\csname simpleicon@checkmarxicon\endcsname {\simpleiconsmap\symbol{"EBF3}}
+ \expandafter\def\csname simpleicon@checkmkicon\endcsname {\simpleiconsmap\symbol{"EBF4}}
+ \expandafter\def\csname simpleicon@chedrauiicon\endcsname {\simpleiconsmap\symbol{"EBF5}}
+ \expandafter\def\csname simpleicon@cheerioicon\endcsname {\simpleiconsmap\symbol{"EBF6}}
+ \expandafter\def\csname simpleicon@cheficon\endcsname {\simpleiconsmap\symbol{"EBF7}}
+ \expandafter\def\csname simpleicon@chemexicon\endcsname {\simpleiconsmap\symbol{"EBF8}}
+ \expandafter\def\csname simpleicon@chessdotcomicon\endcsname {\simpleiconsmap\symbol{"EBF9}}
+ \expandafter\def\csname simpleicon@chevroleticon\endcsname {\simpleiconsmap\symbol{"EBFA}}
+ \expandafter\def\csname simpleicon@chianetworkicon\endcsname {\simpleiconsmap\symbol{"EBFB}}
+ \expandafter\def\csname simpleicon@chinaeasternairlinesicon\endcsname {\simpleiconsmap\symbol{"EBFC}}
+ \expandafter\def\csname simpleicon@chinasouthernairlinesicon\endcsname {\simpleiconsmap\symbol{"EBFD}}
+ \expandafter\def\csname simpleicon@chocolateyicon\endcsname {\simpleiconsmap\symbol{"EBFE}}
+ \expandafter\def\csname simpleicon@chromaticicon\endcsname {\simpleiconsmap\symbol{"EBFF}}
+ \expandafter\def\csname simpleicon@chromecasticon\endcsname {\simpleiconsmap\symbol{"EC00}}
+ \expandafter\def\csname simpleicon@chromewebstoreicon\endcsname {\simpleiconsmap\symbol{"EC01}}
+ \expandafter\def\csname simpleicon@chryslericon\endcsname {\simpleiconsmap\symbol{"EC02}}
+ \expandafter\def\csname simpleicon@chupachupsicon\endcsname {\simpleiconsmap\symbol{"EC03}}
+ \expandafter\def\csname simpleicon@ciliumicon\endcsname {\simpleiconsmap\symbol{"EC04}}
+ \expandafter\def\csname simpleicon@cinema4dicon\endcsname {\simpleiconsmap\symbol{"EC05}}
+ \expandafter\def\csname simpleicon@circleicon\endcsname {\simpleiconsmap\symbol{"EC06}}
+ \expandafter\def\csname simpleicon@circleciicon\endcsname {\simpleiconsmap\symbol{"EC07}}
+ \expandafter\def\csname simpleicon@circuitverseicon\endcsname {\simpleiconsmap\symbol{"EC08}}
+ \expandafter\def\csname simpleicon@cirrusciicon\endcsname {\simpleiconsmap\symbol{"EC09}}
+ \expandafter\def\csname simpleicon@ciscoicon\endcsname {\simpleiconsmap\symbol{"EC0A}}
+ \expandafter\def\csname simpleicon@citrixicon\endcsname {\simpleiconsmap\symbol{"EC0B}}
+ \expandafter\def\csname simpleicon@citroenicon\endcsname {\simpleiconsmap\symbol{"EC0C}}
+ \expandafter\def\csname simpleicon@civicrmicon\endcsname {\simpleiconsmap\symbol{"EC0D}}
+ \expandafter\def\csname simpleicon@civoicon\endcsname {\simpleiconsmap\symbol{"EC0E}}
+ \expandafter\def\csname simpleicon@ckeditor4icon\endcsname {\simpleiconsmap\symbol{"EC0F}}
+ \expandafter\def\csname simpleicon@clarifaiicon\endcsname {\simpleiconsmap\symbol{"EC10}}
+ \expandafter\def\csname simpleicon@clarisicon\endcsname {\simpleiconsmap\symbol{"EC11}}
+ \expandafter\def\csname simpleicon@clarivateicon\endcsname {\simpleiconsmap\symbol{"EC12}}
+ \expandafter\def\csname simpleicon@clerkicon\endcsname {\simpleiconsmap\symbol{"EC13}}
+ \expandafter\def\csname simpleicon@clevercloudicon\endcsname {\simpleiconsmap\symbol{"EC14}}
+ \expandafter\def\csname simpleicon@clickhouseicon\endcsname {\simpleiconsmap\symbol{"EC15}}
+ \expandafter\def\csname simpleicon@clickupicon\endcsname {\simpleiconsmap\symbol{"EC16}}
+ \expandafter\def\csname simpleicon@clionicon\endcsname {\simpleiconsmap\symbol{"EC17}}
+ \expandafter\def\csname simpleicon@cliqzicon\endcsname {\simpleiconsmap\symbol{"EC18}}
+ \expandafter\def\csname simpleicon@clockifyicon\endcsname {\simpleiconsmap\symbol{"EC19}}
+ \expandafter\def\csname simpleicon@clojureicon\endcsname {\simpleiconsmap\symbol{"EC1A}}
+ \expandafter\def\csname simpleicon@cloud66icon\endcsname {\simpleiconsmap\symbol{"EC1B}}
+ \expandafter\def\csname simpleicon@cloudbeesicon\endcsname {\simpleiconsmap\symbol{"EC1C}}
+ \expandafter\def\csname simpleicon@cloudcannonicon\endcsname {\simpleiconsmap\symbol{"EC1D}}
+ \expandafter\def\csname simpleicon@clouderaicon\endcsname {\simpleiconsmap\symbol{"EC1E}}
+ \expandafter\def\csname simpleicon@cloudflareicon\endcsname {\simpleiconsmap\symbol{"EC1F}}
+ \expandafter\def\csname simpleicon@cloudflarepagesicon\endcsname {\simpleiconsmap\symbol{"EC20}}
+ \expandafter\def\csname simpleicon@cloudflareworkersicon\endcsname {\simpleiconsmap\symbol{"EC21}}
+ \expandafter\def\csname simpleicon@cloudfoundryicon\endcsname {\simpleiconsmap\symbol{"EC22}}
+ \expandafter\def\csname simpleicon@cloudinaryicon\endcsname {\simpleiconsmap\symbol{"EC23}}
+ \expandafter\def\csname simpleicon@cloudronicon\endcsname {\simpleiconsmap\symbol{"EC24}}
+ \expandafter\def\csname simpleicon@cloudsmithicon\endcsname {\simpleiconsmap\symbol{"EC25}}
+ \expandafter\def\csname simpleicon@cloudwaysicon\endcsname {\simpleiconsmap\symbol{"EC26}}
+ \expandafter\def\csname simpleicon@clubforceicon\endcsname {\simpleiconsmap\symbol{"EC27}}
+ \expandafter\def\csname simpleicon@clubhouseicon\endcsname {\simpleiconsmap\symbol{"EC28}}
+ \expandafter\def\csname simpleicon@clypicon\endcsname {\simpleiconsmap\symbol{"EC29}}
+ \expandafter\def\csname simpleicon@cmakeicon\endcsname {\simpleiconsmap\symbol{"EC2A}}
+ \expandafter\def\csname simpleicon@cncficon\endcsname {\simpleiconsmap\symbol{"EC2B}}
+ \expandafter\def\csname simpleicon@cneticon\endcsname {\simpleiconsmap\symbol{"EC2C}}
+ \expandafter\def\csname simpleicon@cnnicon\endcsname {\simpleiconsmap\symbol{"EC2D}}
+ \expandafter\def\csname simpleicon@cocacolaicon\endcsname {\simpleiconsmap\symbol{"EC2E}}
+ \expandafter\def\csname simpleicon@cockpiticon\endcsname {\simpleiconsmap\symbol{"EC2F}}
+ \expandafter\def\csname simpleicon@cockroachlabsicon\endcsname {\simpleiconsmap\symbol{"EC30}}
+ \expandafter\def\csname simpleicon@cocoapodsicon\endcsname {\simpleiconsmap\symbol{"EC31}}
+ \expandafter\def\csname simpleicon@cocosicon\endcsname {\simpleiconsmap\symbol{"EC32}}
+ \expandafter\def\csname simpleicon@codaicon\endcsname {\simpleiconsmap\symbol{"EC33}}
+ \expandafter\def\csname simpleicon@codacyicon\endcsname {\simpleiconsmap\symbol{"EC34}}
+ \expandafter\def\csname simpleicon@codebergicon\endcsname {\simpleiconsmap\symbol{"EC35}}
+ \expandafter\def\csname simpleicon@codeblocksicon\endcsname {\simpleiconsmap\symbol{"EC36}}
+ \expandafter\def\csname simpleicon@codecademyicon\endcsname {\simpleiconsmap\symbol{"EC37}}
+ \expandafter\def\csname simpleicon@codeceptjsicon\endcsname {\simpleiconsmap\symbol{"EC38}}
+ \expandafter\def\csname simpleicon@codecheficon\endcsname {\simpleiconsmap\symbol{"EC39}}
+ \expandafter\def\csname simpleicon@codeclimateicon\endcsname {\simpleiconsmap\symbol{"EC3A}}
+ \expandafter\def\csname simpleicon@codecovicon\endcsname {\simpleiconsmap\symbol{"EC3B}}
+ \expandafter\def\csname simpleicon@codecraftersicon\endcsname {\simpleiconsmap\symbol{"EC3C}}
+ \expandafter\def\csname simpleicon@codefactoricon\endcsname {\simpleiconsmap\symbol{"EC3D}}
+ \expandafter\def\csname simpleicon@codeforcesicon\endcsname {\simpleiconsmap\symbol{"EC3E}}
+ \expandafter\def\csname simpleicon@codefreshicon\endcsname {\simpleiconsmap\symbol{"EC3F}}
+ \expandafter\def\csname simpleicon@codeignitericon\endcsname {\simpleiconsmap\symbol{"EC40}}
+ \expandafter\def\csname simpleicon@codeiumicon\endcsname {\simpleiconsmap\symbol{"EC41}}
+ \expandafter\def\csname simpleicon@codemagicicon\endcsname {\simpleiconsmap\symbol{"EC42}}
+ \expandafter\def\csname simpleicon@codementoricon\endcsname {\simpleiconsmap\symbol{"EC43}}
+ \expandafter\def\csname simpleicon@codemirroricon\endcsname {\simpleiconsmap\symbol{"EC44}}
+ \expandafter\def\csname simpleicon@codenewbieicon\endcsname {\simpleiconsmap\symbol{"EC45}}
+ \expandafter\def\csname simpleicon@codepenicon\endcsname {\simpleiconsmap\symbol{"EC46}}
+ \expandafter\def\csname simpleicon@codeprojecticon\endcsname {\simpleiconsmap\symbol{"EC47}}
+ \expandafter\def\csname simpleicon@codericon\endcsname {\simpleiconsmap\symbol{"EC48}}
+ \expandafter\def\csname simpleicon@codersrankicon\endcsname {\simpleiconsmap\symbol{"EC49}}
+ \expandafter\def\csname simpleicon@coderwallicon\endcsname {\simpleiconsmap\symbol{"EC4A}}
+ \expandafter\def\csname simpleicon@codesandboxicon\endcsname {\simpleiconsmap\symbol{"EC4B}}
+ \expandafter\def\csname simpleicon@codeshipicon\endcsname {\simpleiconsmap\symbol{"EC4C}}
+ \expandafter\def\csname simpleicon@codesignalicon\endcsname {\simpleiconsmap\symbol{"EC4D}}
+ \expandafter\def\csname simpleicon@codestreamicon\endcsname {\simpleiconsmap\symbol{"EC4E}}
+ \expandafter\def\csname simpleicon@codewarsicon\endcsname {\simpleiconsmap\symbol{"EC4F}}
+ \expandafter\def\csname simpleicon@codingameicon\endcsname {\simpleiconsmap\symbol{"EC50}}
+ \expandafter\def\csname simpleicon@codingninjasicon\endcsname {\simpleiconsmap\symbol{"EC51}}
+ \expandafter\def\csname simpleicon@codioicon\endcsname {\simpleiconsmap\symbol{"EC52}}
+ \expandafter\def\csname simpleicon@coffeescripticon\endcsname {\simpleiconsmap\symbol{"EC53}}
+ \expandafter\def\csname simpleicon@coggleicon\endcsname {\simpleiconsmap\symbol{"EC54}}
+ \expandafter\def\csname simpleicon@cognizanticon\endcsname {\simpleiconsmap\symbol{"EC55}}
+ \expandafter\def\csname simpleicon@coilicon\endcsname {\simpleiconsmap\symbol{"EC56}}
+ \expandafter\def\csname simpleicon@coinbaseicon\endcsname {\simpleiconsmap\symbol{"EC57}}
+ \expandafter\def\csname simpleicon@coinmarketcapicon\endcsname {\simpleiconsmap\symbol{"EC58}}
+ \expandafter\def\csname simpleicon@comicfuryicon\endcsname {\simpleiconsmap\symbol{"EC59}}
+ \expandafter\def\csname simpleicon@commaicon\endcsname {\simpleiconsmap\symbol{"EC5A}}
+ \expandafter\def\csname simpleicon@commerzbankicon\endcsname {\simpleiconsmap\symbol{"EC5B}}
+ \expandafter\def\csname simpleicon@commitlinticon\endcsname {\simpleiconsmap\symbol{"EC5C}}
+ \expandafter\def\csname simpleicon@commodoreicon\endcsname {\simpleiconsmap\symbol{"EC5D}}
+ \expandafter\def\csname simpleicon@commonworkflowlanguageicon\endcsname {\simpleiconsmap\symbol{"EC5E}}
+ \expandafter\def\csname simpleicon@compilerexplorericon\endcsname {\simpleiconsmap\symbol{"EC5F}}
+ \expandafter\def\csname simpleicon@composericon\endcsname {\simpleiconsmap\symbol{"EC60}}
+ \expandafter\def\csname simpleicon@comptiaicon\endcsname {\simpleiconsmap\symbol{"EC61}}
+ \expandafter\def\csname simpleicon@comsolicon\endcsname {\simpleiconsmap\symbol{"EC62}}
+ \expandafter\def\csname simpleicon@conanicon\endcsname {\simpleiconsmap\symbol{"EC63}}
+ \expandafter\def\csname simpleicon@concourseicon\endcsname {\simpleiconsmap\symbol{"EC64}}
+ \expandafter\def\csname simpleicon@condaforgeicon\endcsname {\simpleiconsmap\symbol{"EC65}}
+ \expandafter\def\csname simpleicon@conektaicon\endcsname {\simpleiconsmap\symbol{"EC66}}
+ \expandafter\def\csname simpleicon@confluenceicon\endcsname {\simpleiconsmap\symbol{"EC67}}
+ \expandafter\def\csname simpleicon@construct3icon\endcsname {\simpleiconsmap\symbol{"EC68}}
+ \expandafter\def\csname simpleicon@consulicon\endcsname {\simpleiconsmap\symbol{"EC69}}
+ \expandafter\def\csname simpleicon@contaboicon\endcsname {\simpleiconsmap\symbol{"EC6A}}
+ \expandafter\def\csname simpleicon@contactlesspaymenticon\endcsname {\simpleiconsmap\symbol{"EC6B}}
+ \expandafter\def\csname simpleicon@containerdicon\endcsname {\simpleiconsmap\symbol{"EC6C}}
+ \expandafter\def\csname simpleicon@contaoicon\endcsname {\simpleiconsmap\symbol{"EC6D}}
+ \expandafter\def\csname simpleicon@contentfulicon\endcsname {\simpleiconsmap\symbol{"EC6E}}
+ \expandafter\def\csname simpleicon@contentstackicon\endcsname {\simpleiconsmap\symbol{"EC6F}}
+ \expandafter\def\csname simpleicon@contributorcovenanticon\endcsname {\simpleiconsmap\symbol{"EC70}}
+ \expandafter\def\csname simpleicon@conventionalcommitsicon\endcsname {\simpleiconsmap\symbol{"EC71}}
+ \expandafter\def\csname simpleicon@convertioicon\endcsname {\simpleiconsmap\symbol{"EC72}}
+ \expandafter\def\csname simpleicon@cookiecuttericon\endcsname {\simpleiconsmap\symbol{"EC73}}
+ \expandafter\def\csname simpleicon@coolermastericon\endcsname {\simpleiconsmap\symbol{"EC74}}
+ \expandafter\def\csname simpleicon@coopicon\endcsname {\simpleiconsmap\symbol{"EC75}}
+ \expandafter\def\csname simpleicon@copaairlinesicon\endcsname {\simpleiconsmap\symbol{"EC76}}
+ \expandafter\def\csname simpleicon@coppelicon\endcsname {\simpleiconsmap\symbol{"EC77}}
+ \expandafter\def\csname simpleicon@coraicon\endcsname {\simpleiconsmap\symbol{"EC78}}
+ \expandafter\def\csname simpleicon@coreldrawicon\endcsname {\simpleiconsmap\symbol{"EC79}}
+ \expandafter\def\csname simpleicon@coronaengineicon\endcsname {\simpleiconsmap\symbol{"EC7A}}
+ \expandafter\def\csname simpleicon@coronarenderericon\endcsname {\simpleiconsmap\symbol{"EC7B}}
+ \expandafter\def\csname simpleicon@corsairicon\endcsname {\simpleiconsmap\symbol{"EC7C}}
+ \expandafter\def\csname simpleicon@couchbaseicon\endcsname {\simpleiconsmap\symbol{"EC7D}}
+ \expandafter\def\csname simpleicon@counterstrikeicon\endcsname {\simpleiconsmap\symbol{"EC7E}}
+ \expandafter\def\csname simpleicon@countingworksproicon\endcsname {\simpleiconsmap\symbol{"EC7F}}
+ \expandafter\def\csname simpleicon@courseraicon\endcsname {\simpleiconsmap\symbol{"EC80}}
+ \expandafter\def\csname simpleicon@coverallsicon\endcsname {\simpleiconsmap\symbol{"EC81}}
+ \expandafter\def\csname simpleicon@cozeicon\endcsname {\simpleiconsmap\symbol{"EC82}}
+ \expandafter\def\csname simpleicon@cpanelicon\endcsname {\simpleiconsmap\symbol{"EC83}}
+ \expandafter\def\csname simpleicon@cplusplusicon\endcsname {\simpleiconsmap\symbol{"EC84}}
+ \expandafter\def\csname simpleicon@cplusplusbuildericon\endcsname {\simpleiconsmap\symbol{"EC85}}
+ \expandafter\def\csname simpleicon@craftcmsicon\endcsname {\simpleiconsmap\symbol{"EC86}}
+ \expandafter\def\csname simpleicon@craftsmanicon\endcsname {\simpleiconsmap\symbol{"EC87}}
+ \expandafter\def\csname simpleicon@cratedbicon\endcsname {\simpleiconsmap\symbol{"EC88}}
+ \expandafter\def\csname simpleicon@crayonicon\endcsname {\simpleiconsmap\symbol{"EC89}}
+ \expandafter\def\csname simpleicon@crealityicon\endcsname {\simpleiconsmap\symbol{"EC8A}}
+ \expandafter\def\csname simpleicon@createreactappicon\endcsname {\simpleiconsmap\symbol{"EC8B}}
+ \expandafter\def\csname simpleicon@creativecommonsicon\endcsname {\simpleiconsmap\symbol{"EC8C}}
+ \expandafter\def\csname simpleicon@creativetechnologyicon\endcsname {\simpleiconsmap\symbol{"EC8D}}
+ \expandafter\def\csname simpleicon@credlyicon\endcsname {\simpleiconsmap\symbol{"EC8E}}
+ \expandafter\def\csname simpleicon@crehanaicon\endcsname {\simpleiconsmap\symbol{"EC8F}}
+ \expandafter\def\csname simpleicon@crewunitedicon\endcsname {\simpleiconsmap\symbol{"EC90}}
+ \expandafter\def\csname simpleicon@criticalroleicon\endcsname {\simpleiconsmap\symbol{"EC91}}
+ \expandafter\def\csname simpleicon@crowdinicon\endcsname {\simpleiconsmap\symbol{"EC92}}
+ \expandafter\def\csname simpleicon@crowdsourceicon\endcsname {\simpleiconsmap\symbol{"EC93}}
+ \expandafter\def\csname simpleicon@crunchbaseicon\endcsname {\simpleiconsmap\symbol{"EC94}}
+ \expandafter\def\csname simpleicon@crunchyrollicon\endcsname {\simpleiconsmap\symbol{"EC95}}
+ \expandafter\def\csname simpleicon@cryengineicon\endcsname {\simpleiconsmap\symbol{"EC96}}
+ \expandafter\def\csname simpleicon@cryptpadicon\endcsname {\simpleiconsmap\symbol{"EC97}}
+ \expandafter\def\csname simpleicon@crystalicon\endcsname {\simpleiconsmap\symbol{"EC98}}
+ \expandafter\def\csname simpleicon@csdnicon\endcsname {\simpleiconsmap\symbol{"EC99}}
+ \expandafter\def\csname simpleicon@css3icon\endcsname {\simpleiconsmap\symbol{"EC9A}}
+ \expandafter\def\csname simpleicon@cssdesignawardsicon\endcsname {\simpleiconsmap\symbol{"EC9B}}
+ \expandafter\def\csname simpleicon@cssmodulesicon\endcsname {\simpleiconsmap\symbol{"EC9C}}
+ \expandafter\def\csname simpleicon@csswizardryicon\endcsname {\simpleiconsmap\symbol{"EC9D}}
+ \expandafter\def\csname simpleicon@ctsicon\endcsname {\simpleiconsmap\symbol{"EC9E}}
+ \expandafter\def\csname simpleicon@cucumbericon\endcsname {\simpleiconsmap\symbol{"EC9F}}
+ \expandafter\def\csname simpleicon@culturaicon\endcsname {\simpleiconsmap\symbol{"ECA0}}
+ \expandafter\def\csname simpleicon@curlicon\endcsname {\simpleiconsmap\symbol{"ECA1}}
+ \expandafter\def\csname simpleicon@curseforgeicon\endcsname {\simpleiconsmap\symbol{"ECA2}}
+ \expandafter\def\csname simpleicon@custominkicon\endcsname {\simpleiconsmap\symbol{"ECA3}}
+ \expandafter\def\csname simpleicon@cyberdefendersicon\endcsname {\simpleiconsmap\symbol{"ECA4}}
+ \expandafter\def\csname simpleicon@cycling74icon\endcsname {\simpleiconsmap\symbol{"ECA5}}
+ \expandafter\def\csname simpleicon@cypressicon\endcsname {\simpleiconsmap\symbol{"ECA6}}
+ \expandafter\def\csname simpleicon@cytoscapedotjsicon\endcsname {\simpleiconsmap\symbol{"ECA7}}
+ \expandafter\def\csname simpleicon@dicon\endcsname {\simpleiconsmap\symbol{"ECA8}}
+ \expandafter\def\csname simpleicon@d3dotjsicon\endcsname {\simpleiconsmap\symbol{"ECA9}}
+ \expandafter\def\csname simpleicon@daciaicon\endcsname {\simpleiconsmap\symbol{"ECAA}}
+ \expandafter\def\csname simpleicon@daficon\endcsname {\simpleiconsmap\symbol{"ECAB}}
+ \expandafter\def\csname simpleicon@dailydotdevicon\endcsname {\simpleiconsmap\symbol{"ECAC}}
+ \expandafter\def\csname simpleicon@dailymotionicon\endcsname {\simpleiconsmap\symbol{"ECAD}}
+ \expandafter\def\csname simpleicon@daisyuiicon\endcsname {\simpleiconsmap\symbol{"ECAE}}
+ \expandafter\def\csname simpleicon@dapricon\endcsname {\simpleiconsmap\symbol{"ECAF}}
+ \expandafter\def\csname simpleicon@darkreadericon\endcsname {\simpleiconsmap\symbol{"ECB0}}
+ \expandafter\def\csname simpleicon@darticon\endcsname {\simpleiconsmap\symbol{"ECB1}}
+ \expandafter\def\csname simpleicon@dartyicon\endcsname {\simpleiconsmap\symbol{"ECB2}}
+ \expandafter\def\csname simpleicon@dasersteicon\endcsname {\simpleiconsmap\symbol{"ECB3}}
+ \expandafter\def\csname simpleicon@dashicon\endcsname {\simpleiconsmap\symbol{"ECB4}}
+ \expandafter\def\csname simpleicon@dashlaneicon\endcsname {\simpleiconsmap\symbol{"ECB5}}
+ \expandafter\def\csname simpleicon@daskicon\endcsname {\simpleiconsmap\symbol{"ECB6}}
+ \expandafter\def\csname simpleicon@dassaultsystemesicon\endcsname {\simpleiconsmap\symbol{"ECB7}}
+ \expandafter\def\csname simpleicon@databricksicon\endcsname {\simpleiconsmap\symbol{"ECB8}}
+ \expandafter\def\csname simpleicon@datacampicon\endcsname {\simpleiconsmap\symbol{"ECB9}}
+ \expandafter\def\csname simpleicon@datadogicon\endcsname {\simpleiconsmap\symbol{"ECBA}}
+ \expandafter\def\csname simpleicon@datadotaiicon\endcsname {\simpleiconsmap\symbol{"ECBB}}
+ \expandafter\def\csname simpleicon@datagripicon\endcsname {\simpleiconsmap\symbol{"ECBC}}
+ \expandafter\def\csname simpleicon@dataikuicon\endcsname {\simpleiconsmap\symbol{"ECBD}}
+ \expandafter\def\csname simpleicon@datastaxicon\endcsname {\simpleiconsmap\symbol{"ECBE}}
+ \expandafter\def\csname simpleicon@datefnsicon\endcsname {\simpleiconsmap\symbol{"ECBF}}
+ \expandafter\def\csname simpleicon@datevicon\endcsname {\simpleiconsmap\symbol{"ECC0}}
+ \expandafter\def\csname simpleicon@datocmsicon\endcsname {\simpleiconsmap\symbol{"ECC1}}
+ \expandafter\def\csname simpleicon@dattoicon\endcsname {\simpleiconsmap\symbol{"ECC2}}
+ \expandafter\def\csname simpleicon@davinciresolveicon\endcsname {\simpleiconsmap\symbol{"ECC3}}
+ \expandafter\def\csname simpleicon@dazhongdianpingicon\endcsname {\simpleiconsmap\symbol{"ECC4}}
+ \expandafter\def\csname simpleicon@daznicon\endcsname {\simpleiconsmap\symbol{"ECC5}}
+ \expandafter\def\csname simpleicon@dbeavericon\endcsname {\simpleiconsmap\symbol{"ECC6}}
+ \expandafter\def\csname simpleicon@dblpicon\endcsname {\simpleiconsmap\symbol{"ECC7}}
+ \expandafter\def\csname simpleicon@dbticon\endcsname {\simpleiconsmap\symbol{"ECC8}}
+ \expandafter\def\csname simpleicon@dcentertainmenticon\endcsname {\simpleiconsmap\symbol{"ECC9}}
+ \expandafter\def\csname simpleicon@debianicon\endcsname {\simpleiconsmap\symbol{"ECCA}}
+ \expandafter\def\csname simpleicon@decapcmsicon\endcsname {\simpleiconsmap\symbol{"ECCB}}
+ \expandafter\def\csname simpleicon@decentralandicon\endcsname {\simpleiconsmap\symbol{"ECCC}}
+ \expandafter\def\csname simpleicon@dedgeicon\endcsname {\simpleiconsmap\symbol{"ECCD}}
+ \expandafter\def\csname simpleicon@deepcoolicon\endcsname {\simpleiconsmap\symbol{"ECCE}}
+ \expandafter\def\csname simpleicon@deepgramicon\endcsname {\simpleiconsmap\symbol{"ECCF}}
+ \expandafter\def\csname simpleicon@deepinicon\endcsname {\simpleiconsmap\symbol{"ECD0}}
+ \expandafter\def\csname simpleicon@deeplicon\endcsname {\simpleiconsmap\symbol{"ECD1}}
+ \expandafter\def\csname simpleicon@deepnoteicon\endcsname {\simpleiconsmap\symbol{"ECD2}}
+ \expandafter\def\csname simpleicon@deliciousicon\endcsname {\simpleiconsmap\symbol{"ECD3}}
+ \expandafter\def\csname simpleicon@deliverooicon\endcsname {\simpleiconsmap\symbol{"ECD4}}
+ \expandafter\def\csname simpleicon@dellicon\endcsname {\simpleiconsmap\symbol{"ECD5}}
+ \expandafter\def\csname simpleicon@delonghiicon\endcsname {\simpleiconsmap\symbol{"ECD6}}
+ \expandafter\def\csname simpleicon@delphiicon\endcsname {\simpleiconsmap\symbol{"ECD7}}
+ \expandafter\def\csname simpleicon@deltaicon\endcsname {\simpleiconsmap\symbol{"ECD8}}
+ \expandafter\def\csname simpleicon@delugeicon\endcsname {\simpleiconsmap\symbol{"ECD9}}
+ \expandafter\def\csname simpleicon@denoicon\endcsname {\simpleiconsmap\symbol{"ECDA}}
+ \expandafter\def\csname simpleicon@denonicon\endcsname {\simpleiconsmap\symbol{"ECDB}}
+ \expandafter\def\csname simpleicon@dependaboticon\endcsname {\simpleiconsmap\symbol{"ECDC}}
+ \expandafter\def\csname simpleicon@dependencycheckicon\endcsname {\simpleiconsmap\symbol{"ECDD}}
+ \expandafter\def\csname simpleicon@depositphotosicon\endcsname {\simpleiconsmap\symbol{"ECDE}}
+ \expandafter\def\csname simpleicon@derspiegelicon\endcsname {\simpleiconsmap\symbol{"ECDF}}
+ \expandafter\def\csname simpleicon@deutschebahnicon\endcsname {\simpleiconsmap\symbol{"ECE0}}
+ \expandafter\def\csname simpleicon@deutschebankicon\endcsname {\simpleiconsmap\symbol{"ECE1}}
+ \expandafter\def\csname simpleicon@deutscheposticon\endcsname {\simpleiconsmap\symbol{"ECE2}}
+ \expandafter\def\csname simpleicon@deutschewelleicon\endcsname {\simpleiconsmap\symbol{"ECE3}}
+ \expandafter\def\csname simpleicon@devdottoicon\endcsname {\simpleiconsmap\symbol{"ECE4}}
+ \expandafter\def\csname simpleicon@devexpressicon\endcsname {\simpleiconsmap\symbol{"ECE5}}
+ \expandafter\def\csname simpleicon@deviantarticon\endcsname {\simpleiconsmap\symbol{"ECE6}}
+ \expandafter\def\csname simpleicon@devposticon\endcsname {\simpleiconsmap\symbol{"ECE7}}
+ \expandafter\def\csname simpleicon@devranticon\endcsname {\simpleiconsmap\symbol{"ECE8}}
+ \expandafter\def\csname simpleicon@dgraphicon\endcsname {\simpleiconsmap\symbol{"ECE9}}
+ \expandafter\def\csname simpleicon@dhlicon\endcsname {\simpleiconsmap\symbol{"ECEA}}
+ \expandafter\def\csname simpleicon@diagramsdotneticon\endcsname {\simpleiconsmap\symbol{"ECEB}}
+ \expandafter\def\csname simpleicon@dialogflowicon\endcsname {\simpleiconsmap\symbol{"ECEC}}
+ \expandafter\def\csname simpleicon@diasporaicon\endcsname {\simpleiconsmap\symbol{"ECED}}
+ \expandafter\def\csname simpleicon@dictionarydotcomicon\endcsname {\simpleiconsmap\symbol{"ECEE}}
+ \expandafter\def\csname simpleicon@diggicon\endcsname {\simpleiconsmap\symbol{"ECEF}}
+ \expandafter\def\csname simpleicon@digikeyelectronicsicon\endcsname {\simpleiconsmap\symbol{"ECF0}}
+ \expandafter\def\csname simpleicon@digitaloceanicon\endcsname {\simpleiconsmap\symbol{"ECF1}}
+ \expandafter\def\csname simpleicon@dinersclubicon\endcsname {\simpleiconsmap\symbol{"ECF2}}
+ \expandafter\def\csname simpleicon@dioricon\endcsname {\simpleiconsmap\symbol{"ECF3}}
+ \expandafter\def\csname simpleicon@directusicon\endcsname {\simpleiconsmap\symbol{"ECF4}}
+ \expandafter\def\csname simpleicon@discogsicon\endcsname {\simpleiconsmap\symbol{"ECF5}}
+ \expandafter\def\csname simpleicon@discordicon\endcsname {\simpleiconsmap\symbol{"ECF6}}
+ \expandafter\def\csname simpleicon@discourseicon\endcsname {\simpleiconsmap\symbol{"ECF7}}
+ \expandafter\def\csname simpleicon@discovericon\endcsname {\simpleiconsmap\symbol{"ECF8}}
+ \expandafter\def\csname simpleicon@disqusicon\endcsname {\simpleiconsmap\symbol{"ECF9}}
+ \expandafter\def\csname simpleicon@disrooticon\endcsname {\simpleiconsmap\symbol{"ECFA}}
+ \expandafter\def\csname simpleicon@distrokidicon\endcsname {\simpleiconsmap\symbol{"ECFB}}
+ \expandafter\def\csname simpleicon@djangoicon\endcsname {\simpleiconsmap\symbol{"ECFC}}
+ \expandafter\def\csname simpleicon@djiicon\endcsname {\simpleiconsmap\symbol{"ECFD}}
+ \expandafter\def\csname simpleicon@dlibicon\endcsname {\simpleiconsmap\symbol{"ECFE}}
+ \expandafter\def\csname simpleicon@dlnaicon\endcsname {\simpleiconsmap\symbol{"ECFF}}
+ \expandafter\def\csname simpleicon@dmicon\endcsname {\simpleiconsmap\symbol{"ED00}}
+ \expandafter\def\csname simpleicon@dockericon\endcsname {\simpleiconsmap\symbol{"ED01}}
+ \expandafter\def\csname simpleicon@docsdotrsicon\endcsname {\simpleiconsmap\symbol{"ED02}}
+ \expandafter\def\csname simpleicon@docsifyicon\endcsname {\simpleiconsmap\symbol{"ED03}}
+ \expandafter\def\csname simpleicon@doctrineicon\endcsname {\simpleiconsmap\symbol{"ED04}}
+ \expandafter\def\csname simpleicon@docusaurusicon\endcsname {\simpleiconsmap\symbol{"ED05}}
+ \expandafter\def\csname simpleicon@dogecoinicon\endcsname {\simpleiconsmap\symbol{"ED06}}
+ \expandafter\def\csname simpleicon@doiicon\endcsname {\simpleiconsmap\symbol{"ED07}}
+ \expandafter\def\csname simpleicon@dolbyicon\endcsname {\simpleiconsmap\symbol{"ED08}}
+ \expandafter\def\csname simpleicon@doordashicon\endcsname {\simpleiconsmap\symbol{"ED09}}
+ \expandafter\def\csname simpleicon@dota2icon\endcsname {\simpleiconsmap\symbol{"ED0A}}
+ \expandafter\def\csname simpleicon@dotenvicon\endcsname {\simpleiconsmap\symbol{"ED0B}}
+ \expandafter\def\csname simpleicon@dotneticon\endcsname {\simpleiconsmap\symbol{"ED0C}}
+ \expandafter\def\csname simpleicon@doubanicon\endcsname {\simpleiconsmap\symbol{"ED0D}}
+ \expandafter\def\csname simpleicon@doubanreadicon\endcsname {\simpleiconsmap\symbol{"ED0E}}
+ \expandafter\def\csname simpleicon@dovecoticon\endcsname {\simpleiconsmap\symbol{"ED0F}}
+ \expandafter\def\csname simpleicon@dovetailicon\endcsname {\simpleiconsmap\symbol{"ED10}}
+ \expandafter\def\csname simpleicon@downdetectoricon\endcsname {\simpleiconsmap\symbol{"ED11}}
+ \expandafter\def\csname simpleicon@doxygenicon\endcsname {\simpleiconsmap\symbol{"ED12}}
+ \expandafter\def\csname simpleicon@dpdicon\endcsname {\simpleiconsmap\symbol{"ED13}}
+ \expandafter\def\csname simpleicon@dragonframeicon\endcsname {\simpleiconsmap\symbol{"ED14}}
+ \expandafter\def\csname simpleicon@draugiemdotlvicon\endcsname {\simpleiconsmap\symbol{"ED15}}
+ \expandafter\def\csname simpleicon@dreamstimeicon\endcsname {\simpleiconsmap\symbol{"ED16}}
+ \expandafter\def\csname simpleicon@dribbbleicon\endcsname {\simpleiconsmap\symbol{"ED17}}
+ \expandafter\def\csname simpleicon@drizzleicon\endcsname {\simpleiconsmap\symbol{"ED18}}
+ \expandafter\def\csname simpleicon@droneicon\endcsname {\simpleiconsmap\symbol{"ED19}}
+ \expandafter\def\csname simpleicon@droobleicon\endcsname {\simpleiconsmap\symbol{"ED1A}}
+ \expandafter\def\csname simpleicon@dropboxicon\endcsname {\simpleiconsmap\symbol{"ED1B}}
+ \expandafter\def\csname simpleicon@drupalicon\endcsname {\simpleiconsmap\symbol{"ED1C}}
+ \expandafter\def\csname simpleicon@dsautomobilesicon\endcsname {\simpleiconsmap\symbol{"ED1D}}
+ \expandafter\def\csname simpleicon@dtsicon\endcsname {\simpleiconsmap\symbol{"ED1E}}
+ \expandafter\def\csname simpleicon@dtubeicon\endcsname {\simpleiconsmap\symbol{"ED1F}}
+ \expandafter\def\csname simpleicon@ducatiicon\endcsname {\simpleiconsmap\symbol{"ED20}}
+ \expandafter\def\csname simpleicon@duckdbicon\endcsname {\simpleiconsmap\symbol{"ED21}}
+ \expandafter\def\csname simpleicon@duckduckgoicon\endcsname {\simpleiconsmap\symbol{"ED22}}
+ \expandafter\def\csname simpleicon@dungeonsanddragonsicon\endcsname {\simpleiconsmap\symbol{"ED23}}
+ \expandafter\def\csname simpleicon@dunkedicon\endcsname {\simpleiconsmap\symbol{"ED24}}
+ \expandafter\def\csname simpleicon@dunzoicon\endcsname {\simpleiconsmap\symbol{"ED25}}
+ \expandafter\def\csname simpleicon@duolingoicon\endcsname {\simpleiconsmap\symbol{"ED26}}
+ \expandafter\def\csname simpleicon@duplicatiicon\endcsname {\simpleiconsmap\symbol{"ED27}}
+ \expandafter\def\csname simpleicon@dvcicon\endcsname {\simpleiconsmap\symbol{"ED28}}
+ \expandafter\def\csname simpleicon@dwavesystemsicon\endcsname {\simpleiconsmap\symbol{"ED29}}
+ \expandafter\def\csname simpleicon@dwmicon\endcsname {\simpleiconsmap\symbol{"ED2A}}
+ \expandafter\def\csname simpleicon@dynatraceicon\endcsname {\simpleiconsmap\symbol{"ED2B}}
+ \expandafter\def\csname simpleicon@eicon\endcsname {\simpleiconsmap\symbol{"ED2C}}
+ \expandafter\def\csname simpleicon@e3icon\endcsname {\simpleiconsmap\symbol{"ED2D}}
+ \expandafter\def\csname simpleicon@eaicon\endcsname {\simpleiconsmap\symbol{"ED2E}}
+ \expandafter\def\csname simpleicon@eagleicon\endcsname {\simpleiconsmap\symbol{"ED2F}}
+ \expandafter\def\csname simpleicon@easyedaicon\endcsname {\simpleiconsmap\symbol{"ED30}}
+ \expandafter\def\csname simpleicon@easyjeticon\endcsname {\simpleiconsmap\symbol{"ED31}}
+ \expandafter\def\csname simpleicon@ebayicon\endcsname {\simpleiconsmap\symbol{"ED32}}
+ \expandafter\def\csname simpleicon@eboxicon\endcsname {\simpleiconsmap\symbol{"ED33}}
+ \expandafter\def\csname simpleicon@eclipseadoptiumicon\endcsname {\simpleiconsmap\symbol{"ED34}}
+ \expandafter\def\csname simpleicon@eclipsecheicon\endcsname {\simpleiconsmap\symbol{"ED35}}
+ \expandafter\def\csname simpleicon@eclipseideicon\endcsname {\simpleiconsmap\symbol{"ED36}}
+ \expandafter\def\csname simpleicon@eclipsejettyicon\endcsname {\simpleiconsmap\symbol{"ED37}}
+ \expandafter\def\csname simpleicon@eclipsemosquittoicon\endcsname {\simpleiconsmap\symbol{"ED38}}
+ \expandafter\def\csname simpleicon@eclipsevertdotxicon\endcsname {\simpleiconsmap\symbol{"ED39}}
+ \expandafter\def\csname simpleicon@ecovacsicon\endcsname {\simpleiconsmap\symbol{"ED3A}}
+ \expandafter\def\csname simpleicon@edekaicon\endcsname {\simpleiconsmap\symbol{"ED3B}}
+ \expandafter\def\csname simpleicon@edgeimpulseicon\endcsname {\simpleiconsmap\symbol{"ED3C}}
+ \expandafter\def\csname simpleicon@editorconfigicon\endcsname {\simpleiconsmap\symbol{"ED3D}}
+ \expandafter\def\csname simpleicon@edotleclercicon\endcsname {\simpleiconsmap\symbol{"ED3E}}
+ \expandafter\def\csname simpleicon@educativeicon\endcsname {\simpleiconsmap\symbol{"ED3F}}
+ \expandafter\def\csname simpleicon@edxicon\endcsname {\simpleiconsmap\symbol{"ED40}}
+ \expandafter\def\csname simpleicon@eggheadicon\endcsname {\simpleiconsmap\symbol{"ED41}}
+ \expandafter\def\csname simpleicon@egnyteicon\endcsname {\simpleiconsmap\symbol{"ED42}}
+ \expandafter\def\csname simpleicon@eighticon\endcsname {\simpleiconsmap\symbol{"ED43}}
+ \expandafter\def\csname simpleicon@eightsleepicon\endcsname {\simpleiconsmap\symbol{"ED44}}
+ \expandafter\def\csname simpleicon@ejsicon\endcsname {\simpleiconsmap\symbol{"ED45}}
+ \expandafter\def\csname simpleicon@elasticicon\endcsname {\simpleiconsmap\symbol{"ED46}}
+ \expandafter\def\csname simpleicon@elasticcloudicon\endcsname {\simpleiconsmap\symbol{"ED47}}
+ \expandafter\def\csname simpleicon@elasticsearchicon\endcsname {\simpleiconsmap\symbol{"ED48}}
+ \expandafter\def\csname simpleicon@elasticstackicon\endcsname {\simpleiconsmap\symbol{"ED49}}
+ \expandafter\def\csname simpleicon@elavonicon\endcsname {\simpleiconsmap\symbol{"ED4A}}
+ \expandafter\def\csname simpleicon@electronicon\endcsname {\simpleiconsmap\symbol{"ED4B}}
+ \expandafter\def\csname simpleicon@electronbuildericon\endcsname {\simpleiconsmap\symbol{"ED4C}}
+ \expandafter\def\csname simpleicon@electronfiddleicon\endcsname {\simpleiconsmap\symbol{"ED4D}}
+ \expandafter\def\csname simpleicon@elegooicon\endcsname {\simpleiconsmap\symbol{"ED4E}}
+ \expandafter\def\csname simpleicon@elementicon\endcsname {\simpleiconsmap\symbol{"ED4F}}
+ \expandafter\def\csname simpleicon@elementaryicon\endcsname {\simpleiconsmap\symbol{"ED50}}
+ \expandafter\def\csname simpleicon@elementoricon\endcsname {\simpleiconsmap\symbol{"ED51}}
+ \expandafter\def\csname simpleicon@eleventyicon\endcsname {\simpleiconsmap\symbol{"ED52}}
+ \expandafter\def\csname simpleicon@elgatoicon\endcsname {\simpleiconsmap\symbol{"ED53}}
+ \expandafter\def\csname simpleicon@elixiricon\endcsname {\simpleiconsmap\symbol{"ED54}}
+ \expandafter\def\csname simpleicon@eljuevesicon\endcsname {\simpleiconsmap\symbol{"ED55}}
+ \expandafter\def\csname simpleicon@elloicon\endcsname {\simpleiconsmap\symbol{"ED56}}
+ \expandafter\def\csname simpleicon@elmicon\endcsname {\simpleiconsmap\symbol{"ED57}}
+ \expandafter\def\csname simpleicon@elseviericon\endcsname {\simpleiconsmap\symbol{"ED58}}
+ \expandafter\def\csname simpleicon@embarcaderoicon\endcsname {\simpleiconsmap\symbol{"ED59}}
+ \expandafter\def\csname simpleicon@embarkicon\endcsname {\simpleiconsmap\symbol{"ED5A}}
+ \expandafter\def\csname simpleicon@emberdotjsicon\endcsname {\simpleiconsmap\symbol{"ED5B}}
+ \expandafter\def\csname simpleicon@embyicon\endcsname {\simpleiconsmap\symbol{"ED5C}}
+ \expandafter\def\csname simpleicon@emiratesicon\endcsname {\simpleiconsmap\symbol{"ED5D}}
+ \expandafter\def\csname simpleicon@emlakjeticon\endcsname {\simpleiconsmap\symbol{"ED5E}}
+ \expandafter\def\csname simpleicon@empirekredicon\endcsname {\simpleiconsmap\symbol{"ED5F}}
+ \expandafter\def\csname simpleicon@endeavourosicon\endcsname {\simpleiconsmap\symbol{"ED60}}
+ \expandafter\def\csname simpleicon@engadgeticon\endcsname {\simpleiconsmap\symbol{"ED61}}
+ \expandafter\def\csname simpleicon@enpassicon\endcsname {\simpleiconsmap\symbol{"ED62}}
+ \expandafter\def\csname simpleicon@enterprisedbicon\endcsname {\simpleiconsmap\symbol{"ED63}}
+ \expandafter\def\csname simpleicon@envatoicon\endcsname {\simpleiconsmap\symbol{"ED64}}
+ \expandafter\def\csname simpleicon@envoyproxyicon\endcsname {\simpleiconsmap\symbol{"ED65}}
+ \expandafter\def\csname simpleicon@epelicon\endcsname {\simpleiconsmap\symbol{"ED66}}
+ \expandafter\def\csname simpleicon@epicgamesicon\endcsname {\simpleiconsmap\symbol{"ED67}}
+ \expandafter\def\csname simpleicon@epsonicon\endcsname {\simpleiconsmap\symbol{"ED68}}
+ \expandafter\def\csname simpleicon@equinixmetalicon\endcsname {\simpleiconsmap\symbol{"ED69}}
+ \expandafter\def\csname simpleicon@erasericon\endcsname {\simpleiconsmap\symbol{"ED6A}}
+ \expandafter\def\csname simpleicon@ericssonicon\endcsname {\simpleiconsmap\symbol{"ED6B}}
+ \expandafter\def\csname simpleicon@erlangicon\endcsname {\simpleiconsmap\symbol{"ED6C}}
+ \expandafter\def\csname simpleicon@erpnexticon\endcsname {\simpleiconsmap\symbol{"ED6D}}
+ \expandafter\def\csname simpleicon@esbuildicon\endcsname {\simpleiconsmap\symbol{"ED6E}}
+ \expandafter\def\csname simpleicon@eseaicon\endcsname {\simpleiconsmap\symbol{"ED6F}}
+ \expandafter\def\csname simpleicon@eslgamingicon\endcsname {\simpleiconsmap\symbol{"ED70}}
+ \expandafter\def\csname simpleicon@eslinticon\endcsname {\simpleiconsmap\symbol{"ED71}}
+ \expandafter\def\csname simpleicon@esotericsoftwareicon\endcsname {\simpleiconsmap\symbol{"ED72}}
+ \expandafter\def\csname simpleicon@esphomeicon\endcsname {\simpleiconsmap\symbol{"ED73}}
+ \expandafter\def\csname simpleicon@espressificon\endcsname {\simpleiconsmap\symbol{"ED74}}
+ \expandafter\def\csname simpleicon@esriicon\endcsname {\simpleiconsmap\symbol{"ED75}}
+ \expandafter\def\csname simpleicon@etcdicon\endcsname {\simpleiconsmap\symbol{"ED76}}
+ \expandafter\def\csname simpleicon@ethereumicon\endcsname {\simpleiconsmap\symbol{"ED77}}
+ \expandafter\def\csname simpleicon@ethersicon\endcsname {\simpleiconsmap\symbol{"ED78}}
+ \expandafter\def\csname simpleicon@ethiopianairlinesicon\endcsname {\simpleiconsmap\symbol{"ED79}}
+ \expandafter\def\csname simpleicon@etihadairwaysicon\endcsname {\simpleiconsmap\symbol{"ED7A}}
+ \expandafter\def\csname simpleicon@etsyicon\endcsname {\simpleiconsmap\symbol{"ED7B}}
+ \expandafter\def\csname simpleicon@eventbriteicon\endcsname {\simpleiconsmap\symbol{"ED7C}}
+ \expandafter\def\csname simpleicon@eventstoreicon\endcsname {\simpleiconsmap\symbol{"ED7D}}
+ \expandafter\def\csname simpleicon@evernoteicon\endcsname {\simpleiconsmap\symbol{"ED7E}}
+ \expandafter\def\csname simpleicon@excalidrawicon\endcsname {\simpleiconsmap\symbol{"ED7F}}
+ \expandafter\def\csname simpleicon@exercismicon\endcsname {\simpleiconsmap\symbol{"ED80}}
+ \expandafter\def\csname simpleicon@exordoicon\endcsname {\simpleiconsmap\symbol{"ED81}}
+ \expandafter\def\csname simpleicon@exoscaleicon\endcsname {\simpleiconsmap\symbol{"ED82}}
+ \expandafter\def\csname simpleicon@expediaicon\endcsname {\simpleiconsmap\symbol{"ED83}}
+ \expandafter\def\csname simpleicon@expensifyicon\endcsname {\simpleiconsmap\symbol{"ED84}}
+ \expandafter\def\csname simpleicon@expertsexchangeicon\endcsname {\simpleiconsmap\symbol{"ED85}}
+ \expandafter\def\csname simpleicon@expoicon\endcsname {\simpleiconsmap\symbol{"ED86}}
+ \expandafter\def\csname simpleicon@expressicon\endcsname {\simpleiconsmap\symbol{"ED87}}
+ \expandafter\def\csname simpleicon@expressvpnicon\endcsname {\simpleiconsmap\symbol{"ED88}}
+ \expandafter\def\csname simpleicon@eyeemicon\endcsname {\simpleiconsmap\symbol{"ED89}}
+ \expandafter\def\csname simpleicon@f1icon\endcsname {\simpleiconsmap\symbol{"ED8A}}
+ \expandafter\def\csname simpleicon@f5icon\endcsname {\simpleiconsmap\symbol{"ED8B}}
+ \expandafter\def\csname simpleicon@facebookicon\endcsname {\simpleiconsmap\symbol{"ED8C}}
+ \expandafter\def\csname simpleicon@facebookgamingicon\endcsname {\simpleiconsmap\symbol{"ED8D}}
+ \expandafter\def\csname simpleicon@facebookliveicon\endcsname {\simpleiconsmap\symbol{"ED8E}}
+ \expandafter\def\csname simpleicon@faceiticon\endcsname {\simpleiconsmap\symbol{"ED8F}}
+ \expandafter\def\csname simpleicon@facepunchicon\endcsname {\simpleiconsmap\symbol{"ED90}}
+ \expandafter\def\csname simpleicon@fairphoneicon\endcsname {\simpleiconsmap\symbol{"ED91}}
+ \expandafter\def\csname simpleicon@falcoicon\endcsname {\simpleiconsmap\symbol{"ED92}}
+ \expandafter\def\csname simpleicon@falconicon\endcsname {\simpleiconsmap\symbol{"ED93}}
+ \expandafter\def\csname simpleicon@fampayicon\endcsname {\simpleiconsmap\symbol{"ED94}}
+ \expandafter\def\csname simpleicon@fandangoicon\endcsname {\simpleiconsmap\symbol{"ED95}}
+ \expandafter\def\csname simpleicon@fandomicon\endcsname {\simpleiconsmap\symbol{"ED96}}
+ \expandafter\def\csname simpleicon@fanfouicon\endcsname {\simpleiconsmap\symbol{"ED97}}
+ \expandafter\def\csname simpleicon@fantomicon\endcsname {\simpleiconsmap\symbol{"ED98}}
+ \expandafter\def\csname simpleicon@farcastericon\endcsname {\simpleiconsmap\symbol{"ED99}}
+ \expandafter\def\csname simpleicon@fareharboricon\endcsname {\simpleiconsmap\symbol{"ED9A}}
+ \expandafter\def\csname simpleicon@farfetchicon\endcsname {\simpleiconsmap\symbol{"ED9B}}
+ \expandafter\def\csname simpleicon@fastapiicon\endcsname {\simpleiconsmap\symbol{"ED9C}}
+ \expandafter\def\csname simpleicon@fastifyicon\endcsname {\simpleiconsmap\symbol{"ED9D}}
+ \expandafter\def\csname simpleicon@fastlaneicon\endcsname {\simpleiconsmap\symbol{"ED9E}}
+ \expandafter\def\csname simpleicon@fastlyicon\endcsname {\simpleiconsmap\symbol{"ED9F}}
+ \expandafter\def\csname simpleicon@fathomicon\endcsname {\simpleiconsmap\symbol{"EDA0}}
+ \expandafter\def\csname simpleicon@faunaicon\endcsname {\simpleiconsmap\symbol{"EDA1}}
+ \expandafter\def\csname simpleicon@favroicon\endcsname {\simpleiconsmap\symbol{"EDA2}}
+ \expandafter\def\csname simpleicon@fdroidicon\endcsname {\simpleiconsmap\symbol{"EDA3}}
+ \expandafter\def\csname simpleicon@feathubicon\endcsname {\simpleiconsmap\symbol{"EDA4}}
+ \expandafter\def\csname simpleicon@fedexicon\endcsname {\simpleiconsmap\symbol{"EDA5}}
+ \expandafter\def\csname simpleicon@fedoraicon\endcsname {\simpleiconsmap\symbol{"EDA6}}
+ \expandafter\def\csname simpleicon@feedlyicon\endcsname {\simpleiconsmap\symbol{"EDA7}}
+ \expandafter\def\csname simpleicon@ferrariicon\endcsname {\simpleiconsmap\symbol{"EDA8}}
+ \expandafter\def\csname simpleicon@ferrarinvicon\endcsname {\simpleiconsmap\symbol{"EDA9}}
+ \expandafter\def\csname simpleicon@ferretdbicon\endcsname {\simpleiconsmap\symbol{"EDAA}}
+ \expandafter\def\csname simpleicon@ffmpegicon\endcsname {\simpleiconsmap\symbol{"EDAB}}
+ \expandafter\def\csname simpleicon@fiicon\endcsname {\simpleiconsmap\symbol{"EDAC}}
+ \expandafter\def\csname simpleicon@fiaticon\endcsname {\simpleiconsmap\symbol{"EDAD}}
+ \expandafter\def\csname simpleicon@fidoallianceicon\endcsname {\simpleiconsmap\symbol{"EDAE}}
+ \expandafter\def\csname simpleicon@fifaicon\endcsname {\simpleiconsmap\symbol{"EDAF}}
+ \expandafter\def\csname simpleicon@figicon\endcsname {\simpleiconsmap\symbol{"EDB0}}
+ \expandafter\def\csname simpleicon@figmaicon\endcsname {\simpleiconsmap\symbol{"EDB1}}
+ \expandafter\def\csname simpleicon@figshareicon\endcsname {\simpleiconsmap\symbol{"EDB2}}
+ \expandafter\def\csname simpleicon@filaicon\endcsname {\simpleiconsmap\symbol{"EDB3}}
+ \expandafter\def\csname simpleicon@filedotioicon\endcsname {\simpleiconsmap\symbol{"EDB4}}
+ \expandafter\def\csname simpleicon@filesicon\endcsname {\simpleiconsmap\symbol{"EDB5}}
+ \expandafter\def\csname simpleicon@filezillaicon\endcsname {\simpleiconsmap\symbol{"EDB6}}
+ \expandafter\def\csname simpleicon@finecoicon\endcsname {\simpleiconsmap\symbol{"EDB7}}
+ \expandafter\def\csname simpleicon@fingicon\endcsname {\simpleiconsmap\symbol{"EDB8}}
+ \expandafter\def\csname simpleicon@firebaseicon\endcsname {\simpleiconsmap\symbol{"EDB9}}
+ \expandafter\def\csname simpleicon@firefishicon\endcsname {\simpleiconsmap\symbol{"EDBA}}
+ \expandafter\def\csname simpleicon@fireflyiiiicon\endcsname {\simpleiconsmap\symbol{"EDBB}}
+ \expandafter\def\csname simpleicon@firefoxicon\endcsname {\simpleiconsmap\symbol{"EDBC}}
+ \expandafter\def\csname simpleicon@firefoxbrowsericon\endcsname {\simpleiconsmap\symbol{"EDBD}}
+ \expandafter\def\csname simpleicon@fireshipicon\endcsname {\simpleiconsmap\symbol{"EDBE}}
+ \expandafter\def\csname simpleicon@firewallaicon\endcsname {\simpleiconsmap\symbol{"EDBF}}
+ \expandafter\def\csname simpleicon@firsticon\endcsname {\simpleiconsmap\symbol{"EDC0}}
+ \expandafter\def\csname simpleicon@fishshellicon\endcsname {\simpleiconsmap\symbol{"EDC1}}
+ \expandafter\def\csname simpleicon@fitbiticon\endcsname {\simpleiconsmap\symbol{"EDC2}}
+ \expandafter\def\csname simpleicon@fivemicon\endcsname {\simpleiconsmap\symbol{"EDC3}}
+ \expandafter\def\csname simpleicon@fiverricon\endcsname {\simpleiconsmap\symbol{"EDC4}}
+ \expandafter\def\csname simpleicon@fizzicon\endcsname {\simpleiconsmap\symbol{"EDC5}}
+ \expandafter\def\csname simpleicon@flashforgeicon\endcsname {\simpleiconsmap\symbol{"EDC6}}
+ \expandafter\def\csname simpleicon@flaskicon\endcsname {\simpleiconsmap\symbol{"EDC7}}
+ \expandafter\def\csname simpleicon@flaticon\endcsname {\simpleiconsmap\symbol{"EDC8}}
+ \expandafter\def\csname simpleicon@flathubicon\endcsname {\simpleiconsmap\symbol{"EDC9}}
+ \expandafter\def\csname simpleicon@flatpakicon\endcsname {\simpleiconsmap\symbol{"EDCA}}
+ \expandafter\def\csname simpleicon@flickricon\endcsname {\simpleiconsmap\symbol{"EDCB}}
+ \expandafter\def\csname simpleicon@flightawareicon\endcsname {\simpleiconsmap\symbol{"EDCC}}
+ \expandafter\def\csname simpleicon@flipboardicon\endcsname {\simpleiconsmap\symbol{"EDCD}}
+ \expandafter\def\csname simpleicon@flipkarticon\endcsname {\simpleiconsmap\symbol{"EDCE}}
+ \expandafter\def\csname simpleicon@floatplaneicon\endcsname {\simpleiconsmap\symbol{"EDCF}}
+ \expandafter\def\csname simpleicon@floodicon\endcsname {\simpleiconsmap\symbol{"EDD0}}
+ \expandafter\def\csname simpleicon@fluentbiticon\endcsname {\simpleiconsmap\symbol{"EDD1}}
+ \expandafter\def\csname simpleicon@fluentdicon\endcsname {\simpleiconsmap\symbol{"EDD2}}
+ \expandafter\def\csname simpleicon@flukeicon\endcsname {\simpleiconsmap\symbol{"EDD3}}
+ \expandafter\def\csname simpleicon@fluttericon\endcsname {\simpleiconsmap\symbol{"EDD4}}
+ \expandafter\def\csname simpleicon@fluxicon\endcsname {\simpleiconsmap\symbol{"EDD5}}
+ \expandafter\def\csname simpleicon@fluxusicon\endcsname {\simpleiconsmap\symbol{"EDD6}}
+ \expandafter\def\csname simpleicon@flydotioicon\endcsname {\simpleiconsmap\symbol{"EDD7}}
+ \expandafter\def\csname simpleicon@flywayicon\endcsname {\simpleiconsmap\symbol{"EDD8}}
+ \expandafter\def\csname simpleicon@fmodicon\endcsname {\simpleiconsmap\symbol{"EDD9}}
+ \expandafter\def\csname simpleicon@fnacicon\endcsname {\simpleiconsmap\symbol{"EDDA}}
+ \expandafter\def\csname simpleicon@foliumicon\endcsname {\simpleiconsmap\symbol{"EDDB}}
+ \expandafter\def\csname simpleicon@fonomaicon\endcsname {\simpleiconsmap\symbol{"EDDC}}
+ \expandafter\def\csname simpleicon@fontawesomeicon\endcsname {\simpleiconsmap\symbol{"EDDD}}
+ \expandafter\def\csname simpleicon@fontbaseicon\endcsname {\simpleiconsmap\symbol{"EDDE}}
+ \expandafter\def\csname simpleicon@fontforgeicon\endcsname {\simpleiconsmap\symbol{"EDDF}}
+ \expandafter\def\csname simpleicon@foobar2000icon\endcsname {\simpleiconsmap\symbol{"EDE0}}
+ \expandafter\def\csname simpleicon@foodpandaicon\endcsname {\simpleiconsmap\symbol{"EDE1}}
+ \expandafter\def\csname simpleicon@fordicon\endcsname {\simpleiconsmap\symbol{"EDE2}}
+ \expandafter\def\csname simpleicon@forgejoicon\endcsname {\simpleiconsmap\symbol{"EDE3}}
+ \expandafter\def\csname simpleicon@formikicon\endcsname {\simpleiconsmap\symbol{"EDE4}}
+ \expandafter\def\csname simpleicon@formspreeicon\endcsname {\simpleiconsmap\symbol{"EDE5}}
+ \expandafter\def\csname simpleicon@formstackicon\endcsname {\simpleiconsmap\symbol{"EDE6}}
+ \expandafter\def\csname simpleicon@fortineticon\endcsname {\simpleiconsmap\symbol{"EDE7}}
+ \expandafter\def\csname simpleicon@fortranicon\endcsname {\simpleiconsmap\symbol{"EDE8}}
+ \expandafter\def\csname simpleicon@fossaicon\endcsname {\simpleiconsmap\symbol{"EDE9}}
+ \expandafter\def\csname simpleicon@fossilscmicon\endcsname {\simpleiconsmap\symbol{"EDEA}}
+ \expandafter\def\csname simpleicon@foundryvirtualtabletopicon\endcsname {\simpleiconsmap\symbol{"EDEB}}
+ \expandafter\def\csname simpleicon@foursquareicon\endcsname {\simpleiconsmap\symbol{"EDEC}}
+ \expandafter\def\csname simpleicon@foursquarecityguideicon\endcsname {\simpleiconsmap\symbol{"EDED}}
+ \expandafter\def\csname simpleicon@foxicon\endcsname {\simpleiconsmap\symbol{"EDEE}}
+ \expandafter\def\csname simpleicon@foxtelicon\endcsname {\simpleiconsmap\symbol{"EDEF}}
+ \expandafter\def\csname simpleicon@fozzyicon\endcsname {\simpleiconsmap\symbol{"EDF0}}
+ \expandafter\def\csname simpleicon@framericon\endcsname {\simpleiconsmap\symbol{"EDF1}}
+ \expandafter\def\csname simpleicon@frameworkicon\endcsname {\simpleiconsmap\symbol{"EDF2}}
+ \expandafter\def\csname simpleicon@framework7icon\endcsname {\simpleiconsmap\symbol{"EDF3}}
+ \expandafter\def\csname simpleicon@franprixicon\endcsname {\simpleiconsmap\symbol{"EDF4}}
+ \expandafter\def\csname simpleicon@frappeicon\endcsname {\simpleiconsmap\symbol{"EDF5}}
+ \expandafter\def\csname simpleicon@fraunhofergesellschafticon\endcsname {\simpleiconsmap\symbol{"EDF6}}
+ \expandafter\def\csname simpleicon@freebsdicon\endcsname {\simpleiconsmap\symbol{"EDF7}}
+ \expandafter\def\csname simpleicon@freecadicon\endcsname {\simpleiconsmap\symbol{"EDF8}}
+ \expandafter\def\csname simpleicon@freecodecampicon\endcsname {\simpleiconsmap\symbol{"EDF9}}
+ \expandafter\def\csname simpleicon@freedesktopdotorgicon\endcsname {\simpleiconsmap\symbol{"EDFA}}
+ \expandafter\def\csname simpleicon@freelancericon\endcsname {\simpleiconsmap\symbol{"EDFB}}
+ \expandafter\def\csname simpleicon@freelancermapicon\endcsname {\simpleiconsmap\symbol{"EDFC}}
+ \expandafter\def\csname simpleicon@freenasicon\endcsname {\simpleiconsmap\symbol{"EDFD}}
+ \expandafter\def\csname simpleicon@freepikicon\endcsname {\simpleiconsmap\symbol{"EDFE}}
+ \expandafter\def\csname simpleicon@freshicon\endcsname {\simpleiconsmap\symbol{"EDFF}}
+ \expandafter\def\csname simpleicon@frontendmentoricon\endcsname {\simpleiconsmap\symbol{"EE00}}
+ \expandafter\def\csname simpleicon@frontifyicon\endcsname {\simpleiconsmap\symbol{"EE01}}
+ \expandafter\def\csname simpleicon@fsecureicon\endcsname {\simpleiconsmap\symbol{"EE02}}
+ \expandafter\def\csname simpleicon@fsharpicon\endcsname {\simpleiconsmap\symbol{"EE03}}
+ \expandafter\def\csname simpleicon@fuboicon\endcsname {\simpleiconsmap\symbol{"EE04}}
+ \expandafter\def\csname simpleicon@fuelericon\endcsname {\simpleiconsmap\symbol{"EE05}}
+ \expandafter\def\csname simpleicon@fugacloudicon\endcsname {\simpleiconsmap\symbol{"EE06}}
+ \expandafter\def\csname simpleicon@fujifilmicon\endcsname {\simpleiconsmap\symbol{"EE07}}
+ \expandafter\def\csname simpleicon@fujitsuicon\endcsname {\simpleiconsmap\symbol{"EE08}}
+ \expandafter\def\csname simpleicon@funimationicon\endcsname {\simpleiconsmap\symbol{"EE09}}
+ \expandafter\def\csname simpleicon@furaffinityicon\endcsname {\simpleiconsmap\symbol{"EE0A}}
+ \expandafter\def\csname simpleicon@furrynetworkicon\endcsname {\simpleiconsmap\symbol{"EE0B}}
+ \expandafter\def\csname simpleicon@fusionauthicon\endcsname {\simpleiconsmap\symbol{"EE0C}}
+ \expandafter\def\csname simpleicon@futurelearnicon\endcsname {\simpleiconsmap\symbol{"EE0D}}
+ \expandafter\def\csname simpleicon@g2icon\endcsname {\simpleiconsmap\symbol{"EE0E}}
+ \expandafter\def\csname simpleicon@g2aicon\endcsname {\simpleiconsmap\symbol{"EE0F}}
+ \expandafter\def\csname simpleicon@g2gicon\endcsname {\simpleiconsmap\symbol{"EE10}}
+ \expandafter\def\csname simpleicon@galaxusicon\endcsname {\simpleiconsmap\symbol{"EE11}}
+ \expandafter\def\csname simpleicon@gameandwatchicon\endcsname {\simpleiconsmap\symbol{"EE12}}
+ \expandafter\def\csname simpleicon@gamebananaicon\endcsname {\simpleiconsmap\symbol{"EE13}}
+ \expandafter\def\csname simpleicon@gamedevelopericon\endcsname {\simpleiconsmap\symbol{"EE14}}
+ \expandafter\def\csname simpleicon@gamejolticon\endcsname {\simpleiconsmap\symbol{"EE15}}
+ \expandafter\def\csname simpleicon@gamelofticon\endcsname {\simpleiconsmap\symbol{"EE16}}
+ \expandafter\def\csname simpleicon@gamemakericon\endcsname {\simpleiconsmap\symbol{"EE17}}
+ \expandafter\def\csname simpleicon@garminicon\endcsname {\simpleiconsmap\symbol{"EE18}}
+ \expandafter\def\csname simpleicon@gatlingicon\endcsname {\simpleiconsmap\symbol{"EE19}}
+ \expandafter\def\csname simpleicon@gatsbyicon\endcsname {\simpleiconsmap\symbol{"EE1A}}
+ \expandafter\def\csname simpleicon@gcoreicon\endcsname {\simpleiconsmap\symbol{"EE1B}}
+ \expandafter\def\csname simpleicon@gdalicon\endcsname {\simpleiconsmap\symbol{"EE1C}}
+ \expandafter\def\csname simpleicon@geanticon\endcsname {\simpleiconsmap\symbol{"EE1D}}
+ \expandafter\def\csname simpleicon@geeksforgeeksicon\endcsname {\simpleiconsmap\symbol{"EE1E}}
+ \expandafter\def\csname simpleicon@generalelectricicon\endcsname {\simpleiconsmap\symbol{"EE1F}}
+ \expandafter\def\csname simpleicon@generalmotorsicon\endcsname {\simpleiconsmap\symbol{"EE20}}
+ \expandafter\def\csname simpleicon@geniusicon\endcsname {\simpleiconsmap\symbol{"EE21}}
+ \expandafter\def\csname simpleicon@gentooicon\endcsname {\simpleiconsmap\symbol{"EE22}}
+ \expandafter\def\csname simpleicon@geocachingicon\endcsname {\simpleiconsmap\symbol{"EE23}}
+ \expandafter\def\csname simpleicon@geodeicon\endcsname {\simpleiconsmap\symbol{"EE24}}
+ \expandafter\def\csname simpleicon@geopandasicon\endcsname {\simpleiconsmap\symbol{"EE25}}
+ \expandafter\def\csname simpleicon@gerriticon\endcsname {\simpleiconsmap\symbol{"EE26}}
+ \expandafter\def\csname simpleicon@getxicon\endcsname {\simpleiconsmap\symbol{"EE27}}
+ \expandafter\def\csname simpleicon@ghosticon\endcsname {\simpleiconsmap\symbol{"EE28}}
+ \expandafter\def\csname simpleicon@ghosteryicon\endcsname {\simpleiconsmap\symbol{"EE29}}
+ \expandafter\def\csname simpleicon@gimpicon\endcsname {\simpleiconsmap\symbol{"EE2A}}
+ \expandafter\def\csname simpleicon@ginicon\endcsname {\simpleiconsmap\symbol{"EE2B}}
+ \expandafter\def\csname simpleicon@giphyicon\endcsname {\simpleiconsmap\symbol{"EE2C}}
+ \expandafter\def\csname simpleicon@giticon\endcsname {\simpleiconsmap\symbol{"EE2D}}
+ \expandafter\def\csname simpleicon@gitbookicon\endcsname {\simpleiconsmap\symbol{"EE2E}}
+ \expandafter\def\csname simpleicon@gitconnectedicon\endcsname {\simpleiconsmap\symbol{"EE2F}}
+ \expandafter\def\csname simpleicon@giteaicon\endcsname {\simpleiconsmap\symbol{"EE30}}
+ \expandafter\def\csname simpleicon@giteeicon\endcsname {\simpleiconsmap\symbol{"EE31}}
+ \expandafter\def\csname simpleicon@gitextensionsicon\endcsname {\simpleiconsmap\symbol{"EE32}}
+ \expandafter\def\csname simpleicon@gitforwindowsicon\endcsname {\simpleiconsmap\symbol{"EE33}}
+ \expandafter\def\csname simpleicon@githubicon\endcsname {\simpleiconsmap\symbol{"EE34}}
+ \expandafter\def\csname simpleicon@githubactionsicon\endcsname {\simpleiconsmap\symbol{"EE35}}
+ \expandafter\def\csname simpleicon@githubcopiloticon\endcsname {\simpleiconsmap\symbol{"EE36}}
+ \expandafter\def\csname simpleicon@githubpagesicon\endcsname {\simpleiconsmap\symbol{"EE37}}
+ \expandafter\def\csname simpleicon@githubsponsorsicon\endcsname {\simpleiconsmap\symbol{"EE38}}
+ \expandafter\def\csname simpleicon@gitignoredotioicon\endcsname {\simpleiconsmap\symbol{"EE39}}
+ \expandafter\def\csname simpleicon@gitkrakenicon\endcsname {\simpleiconsmap\symbol{"EE3A}}
+ \expandafter\def\csname simpleicon@gitlabicon\endcsname {\simpleiconsmap\symbol{"EE3B}}
+ \expandafter\def\csname simpleicon@gitlfsicon\endcsname {\simpleiconsmap\symbol{"EE3C}}
+ \expandafter\def\csname simpleicon@gitpodicon\endcsname {\simpleiconsmap\symbol{"EE3D}}
+ \expandafter\def\csname simpleicon@gittericon\endcsname {\simpleiconsmap\symbol{"EE3E}}
+ \expandafter\def\csname simpleicon@glassdooricon\endcsname {\simpleiconsmap\symbol{"EE3F}}
+ \expandafter\def\csname simpleicon@glideicon\endcsname {\simpleiconsmap\symbol{"EE40}}
+ \expandafter\def\csname simpleicon@glitchicon\endcsname {\simpleiconsmap\symbol{"EE41}}
+ \expandafter\def\csname simpleicon@globusicon\endcsname {\simpleiconsmap\symbol{"EE42}}
+ \expandafter\def\csname simpleicon@glovoicon\endcsname {\simpleiconsmap\symbol{"EE43}}
+ \expandafter\def\csname simpleicon@gltficon\endcsname {\simpleiconsmap\symbol{"EE44}}
+ \expandafter\def\csname simpleicon@gmailicon\endcsname {\simpleiconsmap\symbol{"EE45}}
+ \expandafter\def\csname simpleicon@gnomeicon\endcsname {\simpleiconsmap\symbol{"EE46}}
+ \expandafter\def\csname simpleicon@gnometerminalicon\endcsname {\simpleiconsmap\symbol{"EE47}}
+ \expandafter\def\csname simpleicon@gnuicon\endcsname {\simpleiconsmap\symbol{"EE48}}
+ \expandafter\def\csname simpleicon@gnubashicon\endcsname {\simpleiconsmap\symbol{"EE49}}
+ \expandafter\def\csname simpleicon@gnuemacsicon\endcsname {\simpleiconsmap\symbol{"EE4A}}
+ \expandafter\def\csname simpleicon@gnuicecaticon\endcsname {\simpleiconsmap\symbol{"EE4B}}
+ \expandafter\def\csname simpleicon@gnuprivacyguardicon\endcsname {\simpleiconsmap\symbol{"EE4C}}
+ \expandafter\def\csname simpleicon@gnusocialicon\endcsname {\simpleiconsmap\symbol{"EE4D}}
+ \expandafter\def\csname simpleicon@goicon\endcsname {\simpleiconsmap\symbol{"EE4E}}
+ \expandafter\def\csname simpleicon@gocdicon\endcsname {\simpleiconsmap\symbol{"EE4F}}
+ \expandafter\def\csname simpleicon@godaddyicon\endcsname {\simpleiconsmap\symbol{"EE50}}
+ \expandafter\def\csname simpleicon@godotengineicon\endcsname {\simpleiconsmap\symbol{"EE51}}
+ \expandafter\def\csname simpleicon@gofundmeicon\endcsname {\simpleiconsmap\symbol{"EE52}}
+ \expandafter\def\csname simpleicon@gogdotcomicon\endcsname {\simpleiconsmap\symbol{"EE53}}
+ \expandafter\def\csname simpleicon@gojekicon\endcsname {\simpleiconsmap\symbol{"EE54}}
+ \expandafter\def\csname simpleicon@golandicon\endcsname {\simpleiconsmap\symbol{"EE55}}
+ \expandafter\def\csname simpleicon@goldenlineicon\endcsname {\simpleiconsmap\symbol{"EE56}}
+ \expandafter\def\csname simpleicon@goldmansachsicon\endcsname {\simpleiconsmap\symbol{"EE57}}
+ \expandafter\def\csname simpleicon@goodreadsicon\endcsname {\simpleiconsmap\symbol{"EE58}}
+ \expandafter\def\csname simpleicon@googleicon\endcsname {\simpleiconsmap\symbol{"EE59}}
+ \expandafter\def\csname simpleicon@googleadmobicon\endcsname {\simpleiconsmap\symbol{"EE5A}}
+ \expandafter\def\csname simpleicon@googleadsicon\endcsname {\simpleiconsmap\symbol{"EE5B}}
+ \expandafter\def\csname simpleicon@googleadsenseicon\endcsname {\simpleiconsmap\symbol{"EE5C}}
+ \expandafter\def\csname simpleicon@googleanalyticsicon\endcsname {\simpleiconsmap\symbol{"EE5D}}
+ \expandafter\def\csname simpleicon@googleappsscripticon\endcsname {\simpleiconsmap\symbol{"EE5E}}
+ \expandafter\def\csname simpleicon@googleassistanticon\endcsname {\simpleiconsmap\symbol{"EE5F}}
+ \expandafter\def\csname simpleicon@googleauthenticatoricon\endcsname {\simpleiconsmap\symbol{"EE60}}
+ \expandafter\def\csname simpleicon@googlebigqueryicon\endcsname {\simpleiconsmap\symbol{"EE61}}
+ \expandafter\def\csname simpleicon@googlebigtableicon\endcsname {\simpleiconsmap\symbol{"EE62}}
+ \expandafter\def\csname simpleicon@googlecalendaricon\endcsname {\simpleiconsmap\symbol{"EE63}}
+ \expandafter\def\csname simpleicon@googlecampaignmanager360icon\endcsname {\simpleiconsmap\symbol{"EE64}}
+ \expandafter\def\csname simpleicon@googlecardboardicon\endcsname {\simpleiconsmap\symbol{"EE65}}
+ \expandafter\def\csname simpleicon@googlechaticon\endcsname {\simpleiconsmap\symbol{"EE66}}
+ \expandafter\def\csname simpleicon@googlechromeicon\endcsname {\simpleiconsmap\symbol{"EE67}}
+ \expandafter\def\csname simpleicon@googlechronicleicon\endcsname {\simpleiconsmap\symbol{"EE68}}
+ \expandafter\def\csname simpleicon@googleclassroomicon\endcsname {\simpleiconsmap\symbol{"EE69}}
+ \expandafter\def\csname simpleicon@googlecloudicon\endcsname {\simpleiconsmap\symbol{"EE6A}}
+ \expandafter\def\csname simpleicon@googlecloudcomposericon\endcsname {\simpleiconsmap\symbol{"EE6B}}
+ \expandafter\def\csname simpleicon@googlecloudspannericon\endcsname {\simpleiconsmap\symbol{"EE6C}}
+ \expandafter\def\csname simpleicon@googlecloudstorageicon\endcsname {\simpleiconsmap\symbol{"EE6D}}
+ \expandafter\def\csname simpleicon@googlecolabicon\endcsname {\simpleiconsmap\symbol{"EE6E}}
+ \expandafter\def\csname simpleicon@googlecontaineroptimizedosicon\endcsname {\simpleiconsmap\symbol{"EE6F}}
+ \expandafter\def\csname simpleicon@googledataflowicon\endcsname {\simpleiconsmap\symbol{"EE70}}
+ \expandafter\def\csname simpleicon@googledataprocicon\endcsname {\simpleiconsmap\symbol{"EE71}}
+ \expandafter\def\csname simpleicon@googledatastudioicon\endcsname {\simpleiconsmap\symbol{"EE72}}
+ \expandafter\def\csname simpleicon@googledisplayandvideo360icon\endcsname {\simpleiconsmap\symbol{"EE73}}
+ \expandafter\def\csname simpleicon@googledocsicon\endcsname {\simpleiconsmap\symbol{"EE74}}
+ \expandafter\def\csname simpleicon@googledriveicon\endcsname {\simpleiconsmap\symbol{"EE75}}
+ \expandafter\def\csname simpleicon@googleearthicon\endcsname {\simpleiconsmap\symbol{"EE76}}
+ \expandafter\def\csname simpleicon@googleearthengineicon\endcsname {\simpleiconsmap\symbol{"EE77}}
+ \expandafter\def\csname simpleicon@googlefiticon\endcsname {\simpleiconsmap\symbol{"EE78}}
+ \expandafter\def\csname simpleicon@googlefontsicon\endcsname {\simpleiconsmap\symbol{"EE79}}
+ \expandafter\def\csname simpleicon@googleformsicon\endcsname {\simpleiconsmap\symbol{"EE7A}}
+ \expandafter\def\csname simpleicon@googlegeminiicon\endcsname {\simpleiconsmap\symbol{"EE7B}}
+ \expandafter\def\csname simpleicon@googlehomeicon\endcsname {\simpleiconsmap\symbol{"EE7C}}
+ \expandafter\def\csname simpleicon@googlekeepicon\endcsname {\simpleiconsmap\symbol{"EE7D}}
+ \expandafter\def\csname simpleicon@googlelensicon\endcsname {\simpleiconsmap\symbol{"EE7E}}
+ \expandafter\def\csname simpleicon@googlemapsicon\endcsname {\simpleiconsmap\symbol{"EE7F}}
+ \expandafter\def\csname simpleicon@googlemarketingplatformicon\endcsname {\simpleiconsmap\symbol{"EE80}}
+ \expandafter\def\csname simpleicon@googlemeeticon\endcsname {\simpleiconsmap\symbol{"EE81}}
+ \expandafter\def\csname simpleicon@googlemessagesicon\endcsname {\simpleiconsmap\symbol{"EE82}}
+ \expandafter\def\csname simpleicon@googlenearbyicon\endcsname {\simpleiconsmap\symbol{"EE83}}
+ \expandafter\def\csname simpleicon@googlenewsicon\endcsname {\simpleiconsmap\symbol{"EE84}}
+ \expandafter\def\csname simpleicon@googlepayicon\endcsname {\simpleiconsmap\symbol{"EE85}}
+ \expandafter\def\csname simpleicon@googlephotosicon\endcsname {\simpleiconsmap\symbol{"EE86}}
+ \expandafter\def\csname simpleicon@googleplayicon\endcsname {\simpleiconsmap\symbol{"EE87}}
\expandafter\def\csname simpleicon@googlepubsubicon\endcsname {\simpleiconsmap\symbol{"EE88}}
\expandafter\def\csname simpleicon@googlescholaricon\endcsname {\simpleiconsmap\symbol{"EE89}}
\expandafter\def\csname simpleicon@googlesearchconsoleicon\endcsname {\simpleiconsmap\symbol{"EE8A}}
@@ -1196,116 +1196,116 @@
\expandafter\def\csname simpleicon@gtkicon\endcsname {\simpleiconsmap\symbol{"EEAB}}
\expandafter\def\csname simpleicon@guangzhoumetroicon\endcsname {\simpleiconsmap\symbol{"EEAC}}
\expandafter\def\csname simpleicon@guildedicon\endcsname {\simpleiconsmap\symbol{"EEAD}}
- \expandafter\def\csname simpleicon@gulpicon\endcsname {\simpleiconsmap\symbol{"EEAE}}
- \expandafter\def\csname simpleicon@gumroadicon\endcsname {\simpleiconsmap\symbol{"EEAF}}
- \expandafter\def\csname simpleicon@gumtreeicon\endcsname {\simpleiconsmap\symbol{"EEB0}}
- \expandafter\def\csname simpleicon@gunicornicon\endcsname {\simpleiconsmap\symbol{"EEB1}}
- \expandafter\def\csname simpleicon@gurobiicon\endcsname {\simpleiconsmap\symbol{"EEB2}}
- \expandafter\def\csname simpleicon@gustoicon\endcsname {\simpleiconsmap\symbol{"EEB3}}
- \expandafter\def\csname simpleicon@gutenbergicon\endcsname {\simpleiconsmap\symbol{"EEB4}}
- \expandafter\def\csname simpleicon@h3icon\endcsname {\simpleiconsmap\symbol{"EEB5}}
- \expandafter\def\csname simpleicon@habricon\endcsname {\simpleiconsmap\symbol{"EEB6}}
- \expandafter\def\csname simpleicon@hackadayicon\endcsname {\simpleiconsmap\symbol{"EEB7}}
- \expandafter\def\csname simpleicon@hackclubicon\endcsname {\simpleiconsmap\symbol{"EEB8}}
- \expandafter\def\csname simpleicon@hackerearthicon\endcsname {\simpleiconsmap\symbol{"EEB9}}
- \expandafter\def\csname simpleicon@hackernoonicon\endcsname {\simpleiconsmap\symbol{"EEBA}}
- \expandafter\def\csname simpleicon@hackeroneicon\endcsname {\simpleiconsmap\symbol{"EEBB}}
- \expandafter\def\csname simpleicon@hackerrankicon\endcsname {\simpleiconsmap\symbol{"EEBC}}
- \expandafter\def\csname simpleicon@hackstericon\endcsname {\simpleiconsmap\symbol{"EEBD}}
- \expandafter\def\csname simpleicon@hacktheboxicon\endcsname {\simpleiconsmap\symbol{"EEBE}}
- \expandafter\def\csname simpleicon@halicon\endcsname {\simpleiconsmap\symbol{"EEBF}}
- \expandafter\def\csname simpleicon@handlebarsdotjsicon\endcsname {\simpleiconsmap\symbol{"EEC0}}
- \expandafter\def\csname simpleicon@handmicon\endcsname {\simpleiconsmap\symbol{"EEC1}}
- \expandafter\def\csname simpleicon@handshakeicon\endcsname {\simpleiconsmap\symbol{"EEC2}}
- \expandafter\def\csname simpleicon@handshakeprotocolicon\endcsname {\simpleiconsmap\symbol{"EEC3}}
- \expandafter\def\csname simpleicon@happycowicon\endcsname {\simpleiconsmap\symbol{"EEC4}}
- \expandafter\def\csname simpleicon@harboricon\endcsname {\simpleiconsmap\symbol{"EEC5}}
- \expandafter\def\csname simpleicon@harmonyosicon\endcsname {\simpleiconsmap\symbol{"EEC6}}
- \expandafter\def\csname simpleicon@hashicorpicon\endcsname {\simpleiconsmap\symbol{"EEC7}}
- \expandafter\def\csname simpleicon@hashnodeicon\endcsname {\simpleiconsmap\symbol{"EEC8}}
- \expandafter\def\csname simpleicon@haskellicon\endcsname {\simpleiconsmap\symbol{"EEC9}}
- \expandafter\def\csname simpleicon@hasuraicon\endcsname {\simpleiconsmap\symbol{"EECA}}
- \expandafter\def\csname simpleicon@hatenabookmarkicon\endcsname {\simpleiconsmap\symbol{"EECB}}
- \expandafter\def\csname simpleicon@haveibeenpwnedicon\endcsname {\simpleiconsmap\symbol{"EECC}}
- \expandafter\def\csname simpleicon@haxeicon\endcsname {\simpleiconsmap\symbol{"EECD}}
- \expandafter\def\csname simpleicon@hboicon\endcsname {\simpleiconsmap\symbol{"EECE}}
- \expandafter\def\csname simpleicon@hclicon\endcsname {\simpleiconsmap\symbol{"EECF}}
- \expandafter\def\csname simpleicon@hdfcbankicon\endcsname {\simpleiconsmap\symbol{"EED0}}
- \expandafter\def\csname simpleicon@headlessuiicon\endcsname {\simpleiconsmap\symbol{"EED1}}
- \expandafter\def\csname simpleicon@headphonezoneicon\endcsname {\simpleiconsmap\symbol{"EED2}}
- \expandafter\def\csname simpleicon@headspaceicon\endcsname {\simpleiconsmap\symbol{"EED3}}
- \expandafter\def\csname simpleicon@hearthicon\endcsname {\simpleiconsmap\symbol{"EED4}}
- \expandafter\def\csname simpleicon@hearthisdotaticon\endcsname {\simpleiconsmap\symbol{"EED5}}
- \expandafter\def\csname simpleicon@hederaicon\endcsname {\simpleiconsmap\symbol{"EED6}}
- \expandafter\def\csname simpleicon@heliumicon\endcsname {\simpleiconsmap\symbol{"EED7}}
- \expandafter\def\csname simpleicon@hellofreshicon\endcsname {\simpleiconsmap\symbol{"EED8}}
- \expandafter\def\csname simpleicon@hellyhansenicon\endcsname {\simpleiconsmap\symbol{"EED9}}
- \expandafter\def\csname simpleicon@helmicon\endcsname {\simpleiconsmap\symbol{"EEDA}}
- \expandafter\def\csname simpleicon@helpdeskicon\endcsname {\simpleiconsmap\symbol{"EEDB}}
- \expandafter\def\csname simpleicon@helpscouticon\endcsname {\simpleiconsmap\symbol{"EEDC}}
- \expandafter\def\csname simpleicon@hepsiemlakicon\endcsname {\simpleiconsmap\symbol{"EEDD}}
- \expandafter\def\csname simpleicon@hereicon\endcsname {\simpleiconsmap\symbol{"EEDE}}
- \expandafter\def\csname simpleicon@herokuicon\endcsname {\simpleiconsmap\symbol{"EEDF}}
- \expandafter\def\csname simpleicon@hetznericon\endcsname {\simpleiconsmap\symbol{"EEE0}}
- \expandafter\def\csname simpleicon@hevyicon\endcsname {\simpleiconsmap\symbol{"EEE1}}
- \expandafter\def\csname simpleicon@hexleticon\endcsname {\simpleiconsmap\symbol{"EEE2}}
- \expandafter\def\csname simpleicon@hexoicon\endcsname {\simpleiconsmap\symbol{"EEE3}}
- \expandafter\def\csname simpleicon@heyicon\endcsname {\simpleiconsmap\symbol{"EEE4}}
- \expandafter\def\csname simpleicon@hibernateicon\endcsname {\simpleiconsmap\symbol{"EEE5}}
- \expandafter\def\csname simpleicon@hibobicon\endcsname {\simpleiconsmap\symbol{"EEE6}}
- \expandafter\def\csname simpleicon@hiltonicon\endcsname {\simpleiconsmap\symbol{"EEE7}}
- \expandafter\def\csname simpleicon@hiltonhotelsandresortsicon\endcsname {\simpleiconsmap\symbol{"EEE8}}
- \expandafter\def\csname simpleicon@hitachiicon\endcsname {\simpleiconsmap\symbol{"EEE9}}
- \expandafter\def\csname simpleicon@hiveicon\endcsname {\simpleiconsmap\symbol{"EEEA}}
- \expandafter\def\csname simpleicon@hiveblockchainicon\endcsname {\simpleiconsmap\symbol{"EEEB}}
- \expandafter\def\csname simpleicon@hivemqicon\endcsname {\simpleiconsmap\symbol{"EEEC}}
- \expandafter\def\csname simpleicon@homarricon\endcsname {\simpleiconsmap\symbol{"EEED}}
- \expandafter\def\csname simpleicon@homeadvisoricon\endcsname {\simpleiconsmap\symbol{"EEEE}}
- \expandafter\def\csname simpleicon@homeassistanticon\endcsname {\simpleiconsmap\symbol{"EEEF}}
- \expandafter\def\csname simpleicon@homeassistantcommunitystoreicon\endcsname {\simpleiconsmap\symbol{"EEF0}}
- \expandafter\def\csname simpleicon@homebrewicon\endcsname {\simpleiconsmap\symbol{"EEF1}}
- \expandafter\def\csname simpleicon@homebridgeicon\endcsname {\simpleiconsmap\symbol{"EEF2}}
- \expandafter\def\csname simpleicon@homepageicon\endcsname {\simpleiconsmap\symbol{"EEF3}}
- \expandafter\def\csname simpleicon@homifyicon\endcsname {\simpleiconsmap\symbol{"EEF4}}
- \expandafter\def\csname simpleicon@hondaicon\endcsname {\simpleiconsmap\symbol{"EEF5}}
- \expandafter\def\csname simpleicon@honeyicon\endcsname {\simpleiconsmap\symbol{"EEF6}}
- \expandafter\def\csname simpleicon@honoicon\endcsname {\simpleiconsmap\symbol{"EEF7}}
- \expandafter\def\csname simpleicon@honoricon\endcsname {\simpleiconsmap\symbol{"EEF8}}
- \expandafter\def\csname simpleicon@hootsuiteicon\endcsname {\simpleiconsmap\symbol{"EEF9}}
- \expandafter\def\csname simpleicon@hoppscotchicon\endcsname {\simpleiconsmap\symbol{"EEFA}}
- \expandafter\def\csname simpleicon@hostingericon\endcsname {\simpleiconsmap\symbol{"EEFB}}
- \expandafter\def\csname simpleicon@hotelsdotcomicon\endcsname {\simpleiconsmap\symbol{"EEFC}}
- \expandafter\def\csname simpleicon@hotjaricon\endcsname {\simpleiconsmap\symbol{"EEFD}}
- \expandafter\def\csname simpleicon@hotwireicon\endcsname {\simpleiconsmap\symbol{"EEFE}}
- \expandafter\def\csname simpleicon@houdiniicon\endcsname {\simpleiconsmap\symbol{"EEFF}}
- \expandafter\def\csname simpleicon@houzzicon\endcsname {\simpleiconsmap\symbol{"EF00}}
- \expandafter\def\csname simpleicon@hpicon\endcsname {\simpleiconsmap\symbol{"EF01}}
- \expandafter\def\csname simpleicon@hsbcicon\endcsname {\simpleiconsmap\symbol{"EF02}}
- \expandafter\def\csname simpleicon@html5icon\endcsname {\simpleiconsmap\symbol{"EF03}}
- \expandafter\def\csname simpleicon@htmlacademyicon\endcsname {\simpleiconsmap\symbol{"EF04}}
- \expandafter\def\csname simpleicon@htmxicon\endcsname {\simpleiconsmap\symbol{"EF05}}
- \expandafter\def\csname simpleicon@htopicon\endcsname {\simpleiconsmap\symbol{"EF06}}
- \expandafter\def\csname simpleicon@httpieicon\endcsname {\simpleiconsmap\symbol{"EF07}}
- \expandafter\def\csname simpleicon@huaweiicon\endcsname {\simpleiconsmap\symbol{"EF08}}
- \expandafter\def\csname simpleicon@hubspoticon\endcsname {\simpleiconsmap\symbol{"EF09}}
- \expandafter\def\csname simpleicon@huggingfaceicon\endcsname {\simpleiconsmap\symbol{"EF0A}}
- \expandafter\def\csname simpleicon@hugoicon\endcsname {\simpleiconsmap\symbol{"EF0B}}
- \expandafter\def\csname simpleicon@humblebundleicon\endcsname {\simpleiconsmap\symbol{"EF0C}}
- \expandafter\def\csname simpleicon@hungryjacksicon\endcsname {\simpleiconsmap\symbol{"EF0D}}
- \expandafter\def\csname simpleicon@husqvarnaicon\endcsname {\simpleiconsmap\symbol{"EF0E}}
- \expandafter\def\csname simpleicon@hypericon\endcsname {\simpleiconsmap\symbol{"EF0F}}
- \expandafter\def\csname simpleicon@hyperskillicon\endcsname {\simpleiconsmap\symbol{"EF10}}
- \expandafter\def\csname simpleicon@hypothesisicon\endcsname {\simpleiconsmap\symbol{"EF11}}
- \expandafter\def\csname simpleicon@hyprlandicon\endcsname {\simpleiconsmap\symbol{"EF12}}
- \expandafter\def\csname simpleicon@hyundaiicon\endcsname {\simpleiconsmap\symbol{"EF13}}
- \expandafter\def\csname simpleicon@i18nexticon\endcsname {\simpleiconsmap\symbol{"EF14}}
- \expandafter\def\csname simpleicon@i3icon\endcsname {\simpleiconsmap\symbol{"EF15}}
- \expandafter\def\csname simpleicon@iataicon\endcsname {\simpleiconsmap\symbol{"EF16}}
- \expandafter\def\csname simpleicon@ibeaconicon\endcsname {\simpleiconsmap\symbol{"EF17}}
- \expandafter\def\csname simpleicon@iberiaicon\endcsname {\simpleiconsmap\symbol{"EF18}}
- \expandafter\def\csname simpleicon@ibmicon\endcsname {\simpleiconsmap\symbol{"EF19}}
- \expandafter\def\csname simpleicon@ibmcloudicon\endcsname {\simpleiconsmap\symbol{"EF1A}}
- \expandafter\def\csname simpleicon@ibmwatsonicon\endcsname {\simpleiconsmap\symbol{"EF1B}}
+ \expandafter\def\csname simpleicon@guitarproicon\endcsname {\simpleiconsmap\symbol{"EEAE}}
+ \expandafter\def\csname simpleicon@gulpicon\endcsname {\simpleiconsmap\symbol{"EEAF}}
+ \expandafter\def\csname simpleicon@gumroadicon\endcsname {\simpleiconsmap\symbol{"EEB0}}
+ \expandafter\def\csname simpleicon@gumtreeicon\endcsname {\simpleiconsmap\symbol{"EEB1}}
+ \expandafter\def\csname simpleicon@gunicornicon\endcsname {\simpleiconsmap\symbol{"EEB2}}
+ \expandafter\def\csname simpleicon@gurobiicon\endcsname {\simpleiconsmap\symbol{"EEB3}}
+ \expandafter\def\csname simpleicon@gustoicon\endcsname {\simpleiconsmap\symbol{"EEB4}}
+ \expandafter\def\csname simpleicon@gutenbergicon\endcsname {\simpleiconsmap\symbol{"EEB5}}
+ \expandafter\def\csname simpleicon@h3icon\endcsname {\simpleiconsmap\symbol{"EEB6}}
+ \expandafter\def\csname simpleicon@habricon\endcsname {\simpleiconsmap\symbol{"EEB7}}
+ \expandafter\def\csname simpleicon@hackadayicon\endcsname {\simpleiconsmap\symbol{"EEB8}}
+ \expandafter\def\csname simpleicon@hackclubicon\endcsname {\simpleiconsmap\symbol{"EEB9}}
+ \expandafter\def\csname simpleicon@hackerearthicon\endcsname {\simpleiconsmap\symbol{"EEBA}}
+ \expandafter\def\csname simpleicon@hackernoonicon\endcsname {\simpleiconsmap\symbol{"EEBB}}
+ \expandafter\def\csname simpleicon@hackeroneicon\endcsname {\simpleiconsmap\symbol{"EEBC}}
+ \expandafter\def\csname simpleicon@hackerrankicon\endcsname {\simpleiconsmap\symbol{"EEBD}}
+ \expandafter\def\csname simpleicon@hackstericon\endcsname {\simpleiconsmap\symbol{"EEBE}}
+ \expandafter\def\csname simpleicon@hacktheboxicon\endcsname {\simpleiconsmap\symbol{"EEBF}}
+ \expandafter\def\csname simpleicon@halicon\endcsname {\simpleiconsmap\symbol{"EEC0}}
+ \expandafter\def\csname simpleicon@handlebarsdotjsicon\endcsname {\simpleiconsmap\symbol{"EEC1}}
+ \expandafter\def\csname simpleicon@handmicon\endcsname {\simpleiconsmap\symbol{"EEC2}}
+ \expandafter\def\csname simpleicon@handshakeicon\endcsname {\simpleiconsmap\symbol{"EEC3}}
+ \expandafter\def\csname simpleicon@handshakeprotocolicon\endcsname {\simpleiconsmap\symbol{"EEC4}}
+ \expandafter\def\csname simpleicon@happycowicon\endcsname {\simpleiconsmap\symbol{"EEC5}}
+ \expandafter\def\csname simpleicon@harboricon\endcsname {\simpleiconsmap\symbol{"EEC6}}
+ \expandafter\def\csname simpleicon@harmonyosicon\endcsname {\simpleiconsmap\symbol{"EEC7}}
+ \expandafter\def\csname simpleicon@hashicorpicon\endcsname {\simpleiconsmap\symbol{"EEC8}}
+ \expandafter\def\csname simpleicon@hashnodeicon\endcsname {\simpleiconsmap\symbol{"EEC9}}
+ \expandafter\def\csname simpleicon@haskellicon\endcsname {\simpleiconsmap\symbol{"EECA}}
+ \expandafter\def\csname simpleicon@hasuraicon\endcsname {\simpleiconsmap\symbol{"EECB}}
+ \expandafter\def\csname simpleicon@hatenabookmarkicon\endcsname {\simpleiconsmap\symbol{"EECC}}
+ \expandafter\def\csname simpleicon@haveibeenpwnedicon\endcsname {\simpleiconsmap\symbol{"EECD}}
+ \expandafter\def\csname simpleicon@haxeicon\endcsname {\simpleiconsmap\symbol{"EECE}}
+ \expandafter\def\csname simpleicon@hboicon\endcsname {\simpleiconsmap\symbol{"EECF}}
+ \expandafter\def\csname simpleicon@hclicon\endcsname {\simpleiconsmap\symbol{"EED0}}
+ \expandafter\def\csname simpleicon@hdfcbankicon\endcsname {\simpleiconsmap\symbol{"EED1}}
+ \expandafter\def\csname simpleicon@headlessuiicon\endcsname {\simpleiconsmap\symbol{"EED2}}
+ \expandafter\def\csname simpleicon@headphonezoneicon\endcsname {\simpleiconsmap\symbol{"EED3}}
+ \expandafter\def\csname simpleicon@headspaceicon\endcsname {\simpleiconsmap\symbol{"EED4}}
+ \expandafter\def\csname simpleicon@hearthicon\endcsname {\simpleiconsmap\symbol{"EED5}}
+ \expandafter\def\csname simpleicon@hearthisdotaticon\endcsname {\simpleiconsmap\symbol{"EED6}}
+ \expandafter\def\csname simpleicon@hederaicon\endcsname {\simpleiconsmap\symbol{"EED7}}
+ \expandafter\def\csname simpleicon@heliumicon\endcsname {\simpleiconsmap\symbol{"EED8}}
+ \expandafter\def\csname simpleicon@helixicon\endcsname {\simpleiconsmap\symbol{"EED9}}
+ \expandafter\def\csname simpleicon@hellofreshicon\endcsname {\simpleiconsmap\symbol{"EEDA}}
+ \expandafter\def\csname simpleicon@hellyhansenicon\endcsname {\simpleiconsmap\symbol{"EEDB}}
+ \expandafter\def\csname simpleicon@helmicon\endcsname {\simpleiconsmap\symbol{"EEDC}}
+ \expandafter\def\csname simpleicon@helpdeskicon\endcsname {\simpleiconsmap\symbol{"EEDD}}
+ \expandafter\def\csname simpleicon@helpscouticon\endcsname {\simpleiconsmap\symbol{"EEDE}}
+ \expandafter\def\csname simpleicon@hepsiemlakicon\endcsname {\simpleiconsmap\symbol{"EEDF}}
+ \expandafter\def\csname simpleicon@hereicon\endcsname {\simpleiconsmap\symbol{"EEE0}}
+ \expandafter\def\csname simpleicon@herokuicon\endcsname {\simpleiconsmap\symbol{"EEE1}}
+ \expandafter\def\csname simpleicon@hetznericon\endcsname {\simpleiconsmap\symbol{"EEE2}}
+ \expandafter\def\csname simpleicon@hevyicon\endcsname {\simpleiconsmap\symbol{"EEE3}}
+ \expandafter\def\csname simpleicon@hexleticon\endcsname {\simpleiconsmap\symbol{"EEE4}}
+ \expandafter\def\csname simpleicon@hexoicon\endcsname {\simpleiconsmap\symbol{"EEE5}}
+ \expandafter\def\csname simpleicon@heyicon\endcsname {\simpleiconsmap\symbol{"EEE6}}
+ \expandafter\def\csname simpleicon@hibernateicon\endcsname {\simpleiconsmap\symbol{"EEE7}}
+ \expandafter\def\csname simpleicon@hibobicon\endcsname {\simpleiconsmap\symbol{"EEE8}}
+ \expandafter\def\csname simpleicon@hiltonicon\endcsname {\simpleiconsmap\symbol{"EEE9}}
+ \expandafter\def\csname simpleicon@hiltonhotelsandresortsicon\endcsname {\simpleiconsmap\symbol{"EEEA}}
+ \expandafter\def\csname simpleicon@hitachiicon\endcsname {\simpleiconsmap\symbol{"EEEB}}
+ \expandafter\def\csname simpleicon@hiveicon\endcsname {\simpleiconsmap\symbol{"EEEC}}
+ \expandafter\def\csname simpleicon@hiveblockchainicon\endcsname {\simpleiconsmap\symbol{"EEED}}
+ \expandafter\def\csname simpleicon@hivemqicon\endcsname {\simpleiconsmap\symbol{"EEEE}}
+ \expandafter\def\csname simpleicon@homarricon\endcsname {\simpleiconsmap\symbol{"EEEF}}
+ \expandafter\def\csname simpleicon@homeadvisoricon\endcsname {\simpleiconsmap\symbol{"EEF0}}
+ \expandafter\def\csname simpleicon@homeassistanticon\endcsname {\simpleiconsmap\symbol{"EEF1}}
+ \expandafter\def\csname simpleicon@homeassistantcommunitystoreicon\endcsname {\simpleiconsmap\symbol{"EEF2}}
+ \expandafter\def\csname simpleicon@homebrewicon\endcsname {\simpleiconsmap\symbol{"EEF3}}
+ \expandafter\def\csname simpleicon@homebridgeicon\endcsname {\simpleiconsmap\symbol{"EEF4}}
+ \expandafter\def\csname simpleicon@homepageicon\endcsname {\simpleiconsmap\symbol{"EEF5}}
+ \expandafter\def\csname simpleicon@homifyicon\endcsname {\simpleiconsmap\symbol{"EEF6}}
+ \expandafter\def\csname simpleicon@hondaicon\endcsname {\simpleiconsmap\symbol{"EEF7}}
+ \expandafter\def\csname simpleicon@honeyicon\endcsname {\simpleiconsmap\symbol{"EEF8}}
+ \expandafter\def\csname simpleicon@honoicon\endcsname {\simpleiconsmap\symbol{"EEF9}}
+ \expandafter\def\csname simpleicon@honoricon\endcsname {\simpleiconsmap\symbol{"EEFA}}
+ \expandafter\def\csname simpleicon@hootsuiteicon\endcsname {\simpleiconsmap\symbol{"EEFB}}
+ \expandafter\def\csname simpleicon@hoppscotchicon\endcsname {\simpleiconsmap\symbol{"EEFC}}
+ \expandafter\def\csname simpleicon@hostingericon\endcsname {\simpleiconsmap\symbol{"EEFD}}
+ \expandafter\def\csname simpleicon@hotelsdotcomicon\endcsname {\simpleiconsmap\symbol{"EEFE}}
+ \expandafter\def\csname simpleicon@hotjaricon\endcsname {\simpleiconsmap\symbol{"EEFF}}
+ \expandafter\def\csname simpleicon@hotwireicon\endcsname {\simpleiconsmap\symbol{"EF00}}
+ \expandafter\def\csname simpleicon@houdiniicon\endcsname {\simpleiconsmap\symbol{"EF01}}
+ \expandafter\def\csname simpleicon@houzzicon\endcsname {\simpleiconsmap\symbol{"EF02}}
+ \expandafter\def\csname simpleicon@hpicon\endcsname {\simpleiconsmap\symbol{"EF03}}
+ \expandafter\def\csname simpleicon@hsbcicon\endcsname {\simpleiconsmap\symbol{"EF04}}
+ \expandafter\def\csname simpleicon@html5icon\endcsname {\simpleiconsmap\symbol{"EF05}}
+ \expandafter\def\csname simpleicon@htmlacademyicon\endcsname {\simpleiconsmap\symbol{"EF06}}
+ \expandafter\def\csname simpleicon@htmxicon\endcsname {\simpleiconsmap\symbol{"EF07}}
+ \expandafter\def\csname simpleicon@htopicon\endcsname {\simpleiconsmap\symbol{"EF08}}
+ \expandafter\def\csname simpleicon@httpieicon\endcsname {\simpleiconsmap\symbol{"EF09}}
+ \expandafter\def\csname simpleicon@huaweiicon\endcsname {\simpleiconsmap\symbol{"EF0A}}
+ \expandafter\def\csname simpleicon@hubspoticon\endcsname {\simpleiconsmap\symbol{"EF0B}}
+ \expandafter\def\csname simpleicon@huggingfaceicon\endcsname {\simpleiconsmap\symbol{"EF0C}}
+ \expandafter\def\csname simpleicon@hugoicon\endcsname {\simpleiconsmap\symbol{"EF0D}}
+ \expandafter\def\csname simpleicon@humblebundleicon\endcsname {\simpleiconsmap\symbol{"EF0E}}
+ \expandafter\def\csname simpleicon@humhubicon\endcsname {\simpleiconsmap\symbol{"EF0F}}
+ \expandafter\def\csname simpleicon@hungryjacksicon\endcsname {\simpleiconsmap\symbol{"EF10}}
+ \expandafter\def\csname simpleicon@husqvarnaicon\endcsname {\simpleiconsmap\symbol{"EF11}}
+ \expandafter\def\csname simpleicon@hypericon\endcsname {\simpleiconsmap\symbol{"EF12}}
+ \expandafter\def\csname simpleicon@hyperskillicon\endcsname {\simpleiconsmap\symbol{"EF13}}
+ \expandafter\def\csname simpleicon@hypothesisicon\endcsname {\simpleiconsmap\symbol{"EF14}}
+ \expandafter\def\csname simpleicon@hyprlandicon\endcsname {\simpleiconsmap\symbol{"EF15}}
+ \expandafter\def\csname simpleicon@hyundaiicon\endcsname {\simpleiconsmap\symbol{"EF16}}
+ \expandafter\def\csname simpleicon@i18nexticon\endcsname {\simpleiconsmap\symbol{"EF17}}
+ \expandafter\def\csname simpleicon@i3icon\endcsname {\simpleiconsmap\symbol{"EF18}}
+ \expandafter\def\csname simpleicon@iataicon\endcsname {\simpleiconsmap\symbol{"EF19}}
+ \expandafter\def\csname simpleicon@ibeaconicon\endcsname {\simpleiconsmap\symbol{"EF1A}}
+ \expandafter\def\csname simpleicon@iberiaicon\endcsname {\simpleiconsmap\symbol{"EF1B}}
\expandafter\def\csname simpleicon@icedicon\endcsname {\simpleiconsmap\symbol{"EF1C}}
\expandafter\def\csname simpleicon@icelandicon\endcsname {\simpleiconsmap\symbol{"EF1D}}
\expandafter\def\csname simpleicon@icicibankicon\endcsname {\simpleiconsmap\symbol{"EF1E}}
@@ -1340,37 +1340,37 @@
\expandafter\def\csname simpleicon@indiansuperleagueicon\endcsname {\simpleiconsmap\symbol{"EF3B}}
\expandafter\def\csname simpleicon@indiehackersicon\endcsname {\simpleiconsmap\symbol{"EF3C}}
\expandafter\def\csname simpleicon@indigoicon\endcsname {\simpleiconsmap\symbol{"EF3D}}
- \expandafter\def\csname simpleicon@inertiaicon\endcsname {\simpleiconsmap\symbol{"EF3E}}
- \expandafter\def\csname simpleicon@infinitiicon\endcsname {\simpleiconsmap\symbol{"EF3F}}
- \expandafter\def\csname simpleicon@influxdbicon\endcsname {\simpleiconsmap\symbol{"EF40}}
- \expandafter\def\csname simpleicon@infomaniakicon\endcsname {\simpleiconsmap\symbol{"EF41}}
- \expandafter\def\csname simpleicon@infoqicon\endcsname {\simpleiconsmap\symbol{"EF42}}
- \expandafter\def\csname simpleicon@informaticaicon\endcsname {\simpleiconsmap\symbol{"EF43}}
- \expandafter\def\csname simpleicon@infosysicon\endcsname {\simpleiconsmap\symbol{"EF44}}
- \expandafter\def\csname simpleicon@infracosticon\endcsname {\simpleiconsmap\symbol{"EF45}}
- \expandafter\def\csname simpleicon@ingressicon\endcsname {\simpleiconsmap\symbol{"EF46}}
- \expandafter\def\csname simpleicon@inkdropicon\endcsname {\simpleiconsmap\symbol{"EF47}}
- \expandafter\def\csname simpleicon@inkscapeicon\endcsname {\simpleiconsmap\symbol{"EF48}}
- \expandafter\def\csname simpleicon@inoreadericon\endcsname {\simpleiconsmap\symbol{"EF49}}
- \expandafter\def\csname simpleicon@insomniaicon\endcsname {\simpleiconsmap\symbol{"EF4A}}
- \expandafter\def\csname simpleicon@inspireicon\endcsname {\simpleiconsmap\symbol{"EF4B}}
- \expandafter\def\csname simpleicon@insta360icon\endcsname {\simpleiconsmap\symbol{"EF4C}}
- \expandafter\def\csname simpleicon@instacarticon\endcsname {\simpleiconsmap\symbol{"EF4D}}
- \expandafter\def\csname simpleicon@instagramicon\endcsname {\simpleiconsmap\symbol{"EF4E}}
- \expandafter\def\csname simpleicon@instapapericon\endcsname {\simpleiconsmap\symbol{"EF4F}}
- \expandafter\def\csname simpleicon@instatusicon\endcsname {\simpleiconsmap\symbol{"EF50}}
- \expandafter\def\csname simpleicon@instructablesicon\endcsname {\simpleiconsmap\symbol{"EF51}}
- \expandafter\def\csname simpleicon@instructureicon\endcsname {\simpleiconsmap\symbol{"EF52}}
- \expandafter\def\csname simpleicon@intelicon\endcsname {\simpleiconsmap\symbol{"EF53}}
- \expandafter\def\csname simpleicon@intellijideaicon\endcsname {\simpleiconsmap\symbol{"EF54}}
- \expandafter\def\csname simpleicon@interactiondesignfoundationicon\endcsname {\simpleiconsmap\symbol{"EF55}}
- \expandafter\def\csname simpleicon@interactjsicon\endcsname {\simpleiconsmap\symbol{"EF56}}
- \expandafter\def\csname simpleicon@interbaseicon\endcsname {\simpleiconsmap\symbol{"EF57}}
- \expandafter\def\csname simpleicon@intercomicon\endcsname {\simpleiconsmap\symbol{"EF58}}
- \expandafter\def\csname simpleicon@intermarcheicon\endcsname {\simpleiconsmap\symbol{"EF59}}
- \expandafter\def\csname simpleicon@internetarchiveicon\endcsname {\simpleiconsmap\symbol{"EF5A}}
- \expandafter\def\csname simpleicon@internetcomputericon\endcsname {\simpleiconsmap\symbol{"EF5B}}
- \expandafter\def\csname simpleicon@internetexplorericon\endcsname {\simpleiconsmap\symbol{"EF5C}}
+ \expandafter\def\csname simpleicon@inductiveautomationicon\endcsname {\simpleiconsmap\symbol{"EF3E}}
+ \expandafter\def\csname simpleicon@inertiaicon\endcsname {\simpleiconsmap\symbol{"EF3F}}
+ \expandafter\def\csname simpleicon@infinitiicon\endcsname {\simpleiconsmap\symbol{"EF40}}
+ \expandafter\def\csname simpleicon@influxdbicon\endcsname {\simpleiconsmap\symbol{"EF41}}
+ \expandafter\def\csname simpleicon@infomaniakicon\endcsname {\simpleiconsmap\symbol{"EF42}}
+ \expandafter\def\csname simpleicon@infoqicon\endcsname {\simpleiconsmap\symbol{"EF43}}
+ \expandafter\def\csname simpleicon@informaticaicon\endcsname {\simpleiconsmap\symbol{"EF44}}
+ \expandafter\def\csname simpleicon@infosysicon\endcsname {\simpleiconsmap\symbol{"EF45}}
+ \expandafter\def\csname simpleicon@infracosticon\endcsname {\simpleiconsmap\symbol{"EF46}}
+ \expandafter\def\csname simpleicon@ingressicon\endcsname {\simpleiconsmap\symbol{"EF47}}
+ \expandafter\def\csname simpleicon@inkdropicon\endcsname {\simpleiconsmap\symbol{"EF48}}
+ \expandafter\def\csname simpleicon@inkscapeicon\endcsname {\simpleiconsmap\symbol{"EF49}}
+ \expandafter\def\csname simpleicon@inoreadericon\endcsname {\simpleiconsmap\symbol{"EF4A}}
+ \expandafter\def\csname simpleicon@insomniaicon\endcsname {\simpleiconsmap\symbol{"EF4B}}
+ \expandafter\def\csname simpleicon@inspireicon\endcsname {\simpleiconsmap\symbol{"EF4C}}
+ \expandafter\def\csname simpleicon@insta360icon\endcsname {\simpleiconsmap\symbol{"EF4D}}
+ \expandafter\def\csname simpleicon@instacarticon\endcsname {\simpleiconsmap\symbol{"EF4E}}
+ \expandafter\def\csname simpleicon@instagramicon\endcsname {\simpleiconsmap\symbol{"EF4F}}
+ \expandafter\def\csname simpleicon@instapapericon\endcsname {\simpleiconsmap\symbol{"EF50}}
+ \expandafter\def\csname simpleicon@instatusicon\endcsname {\simpleiconsmap\symbol{"EF51}}
+ \expandafter\def\csname simpleicon@instructablesicon\endcsname {\simpleiconsmap\symbol{"EF52}}
+ \expandafter\def\csname simpleicon@instructureicon\endcsname {\simpleiconsmap\symbol{"EF53}}
+ \expandafter\def\csname simpleicon@intelicon\endcsname {\simpleiconsmap\symbol{"EF54}}
+ \expandafter\def\csname simpleicon@intellijideaicon\endcsname {\simpleiconsmap\symbol{"EF55}}
+ \expandafter\def\csname simpleicon@interactiondesignfoundationicon\endcsname {\simpleiconsmap\symbol{"EF56}}
+ \expandafter\def\csname simpleicon@interactjsicon\endcsname {\simpleiconsmap\symbol{"EF57}}
+ \expandafter\def\csname simpleicon@interbaseicon\endcsname {\simpleiconsmap\symbol{"EF58}}
+ \expandafter\def\csname simpleicon@intercomicon\endcsname {\simpleiconsmap\symbol{"EF59}}
+ \expandafter\def\csname simpleicon@intermarcheicon\endcsname {\simpleiconsmap\symbol{"EF5A}}
+ \expandafter\def\csname simpleicon@internetarchiveicon\endcsname {\simpleiconsmap\symbol{"EF5B}}
+ \expandafter\def\csname simpleicon@internetcomputericon\endcsname {\simpleiconsmap\symbol{"EF5C}}
\expandafter\def\csname simpleicon@intigritiicon\endcsname {\simpleiconsmap\symbol{"EF5D}}
\expandafter\def\csname simpleicon@intuiticon\endcsname {\simpleiconsmap\symbol{"EF5E}}
\expandafter\def\csname simpleicon@invisionicon\endcsname {\simpleiconsmap\symbol{"EF5F}}
@@ -1462,1298 +1462,1298 @@
\expandafter\def\csname simpleicon@kauflandicon\endcsname {\simpleiconsmap\symbol{"EFB5}}
\expandafter\def\csname simpleicon@kdeicon\endcsname {\simpleiconsmap\symbol{"EFB6}}
\expandafter\def\csname simpleicon@kdenliveicon\endcsname {\simpleiconsmap\symbol{"EFB7}}
- \expandafter\def\csname simpleicon@kedroicon\endcsname {\simpleiconsmap\symbol{"EFB8}}
- \expandafter\def\csname simpleicon@keeneticicon\endcsname {\simpleiconsmap\symbol{"EFB9}}
- \expandafter\def\csname simpleicon@keepachangelogicon\endcsname {\simpleiconsmap\symbol{"EFBA}}
- \expandafter\def\csname simpleicon@keepassxcicon\endcsname {\simpleiconsmap\symbol{"EFBB}}
- \expandafter\def\csname simpleicon@kenticoicon\endcsname {\simpleiconsmap\symbol{"EFBC}}
- \expandafter\def\csname simpleicon@kerasicon\endcsname {\simpleiconsmap\symbol{"EFBD}}
- \expandafter\def\csname simpleicon@keybaseicon\endcsname {\simpleiconsmap\symbol{"EFBE}}
- \expandafter\def\csname simpleicon@keycdnicon\endcsname {\simpleiconsmap\symbol{"EFBF}}
- \expandafter\def\csname simpleicon@keycloakicon\endcsname {\simpleiconsmap\symbol{"EFC0}}
- \expandafter\def\csname simpleicon@keystoneicon\endcsname {\simpleiconsmap\symbol{"EFC1}}
- \expandafter\def\csname simpleicon@kfcicon\endcsname {\simpleiconsmap\symbol{"EFC2}}
- \expandafter\def\csname simpleicon@khanacademyicon\endcsname {\simpleiconsmap\symbol{"EFC3}}
- \expandafter\def\csname simpleicon@khronosgroupicon\endcsname {\simpleiconsmap\symbol{"EFC4}}
- \expandafter\def\csname simpleicon@kiaicon\endcsname {\simpleiconsmap\symbol{"EFC5}}
- \expandafter\def\csname simpleicon@kibanaicon\endcsname {\simpleiconsmap\symbol{"EFC6}}
- \expandafter\def\csname simpleicon@kicadicon\endcsname {\simpleiconsmap\symbol{"EFC7}}
- \expandafter\def\csname simpleicon@kickicon\endcsname {\simpleiconsmap\symbol{"EFC8}}
- \expandafter\def\csname simpleicon@kickstartericon\endcsname {\simpleiconsmap\symbol{"EFC9}}
- \expandafter\def\csname simpleicon@kikicon\endcsname {\simpleiconsmap\symbol{"EFCA}}
- \expandafter\def\csname simpleicon@kingstontechnologyicon\endcsname {\simpleiconsmap\symbol{"EFCB}}
- \expandafter\def\csname simpleicon@kinopoiskicon\endcsname {\simpleiconsmap\symbol{"EFCC}}
- \expandafter\def\csname simpleicon@kinstaicon\endcsname {\simpleiconsmap\symbol{"EFCD}}
- \expandafter\def\csname simpleicon@kirbyicon\endcsname {\simpleiconsmap\symbol{"EFCE}}
- \expandafter\def\csname simpleicon@kiticon\endcsname {\simpleiconsmap\symbol{"EFCF}}
- \expandafter\def\csname simpleicon@kitsuicon\endcsname {\simpleiconsmap\symbol{"EFD0}}
- \expandafter\def\csname simpleicon@klarnaicon\endcsname {\simpleiconsmap\symbol{"EFD1}}
- \expandafter\def\csname simpleicon@klmicon\endcsname {\simpleiconsmap\symbol{"EFD2}}
- \expandafter\def\csname simpleicon@klookicon\endcsname {\simpleiconsmap\symbol{"EFD3}}
- \expandafter\def\csname simpleicon@knativeicon\endcsname {\simpleiconsmap\symbol{"EFD4}}
- \expandafter\def\csname simpleicon@knexdotjsicon\endcsname {\simpleiconsmap\symbol{"EFD5}}
- \expandafter\def\csname simpleicon@knimeicon\endcsname {\simpleiconsmap\symbol{"EFD6}}
- \expandafter\def\csname simpleicon@knipicon\endcsname {\simpleiconsmap\symbol{"EFD7}}
- \expandafter\def\csname simpleicon@knowledgebaseicon\endcsname {\simpleiconsmap\symbol{"EFD8}}
- \expandafter\def\csname simpleicon@knownicon\endcsname {\simpleiconsmap\symbol{"EFD9}}
- \expandafter\def\csname simpleicon@koaicon\endcsname {\simpleiconsmap\symbol{"EFDA}}
- \expandafter\def\csname simpleicon@kocicon\endcsname {\simpleiconsmap\symbol{"EFDB}}
- \expandafter\def\csname simpleicon@kodakicon\endcsname {\simpleiconsmap\symbol{"EFDC}}
- \expandafter\def\csname simpleicon@kodiicon\endcsname {\simpleiconsmap\symbol{"EFDD}}
- \expandafter\def\csname simpleicon@kofaxicon\endcsname {\simpleiconsmap\symbol{"EFDE}}
- \expandafter\def\csname simpleicon@kofiicon\endcsname {\simpleiconsmap\symbol{"EFDF}}
- \expandafter\def\csname simpleicon@komooticon\endcsname {\simpleiconsmap\symbol{"EFE0}}
- \expandafter\def\csname simpleicon@konamiicon\endcsname {\simpleiconsmap\symbol{"EFE1}}
- \expandafter\def\csname simpleicon@kongicon\endcsname {\simpleiconsmap\symbol{"EFE2}}
- \expandafter\def\csname simpleicon@kongregateicon\endcsname {\simpleiconsmap\symbol{"EFE3}}
- \expandafter\def\csname simpleicon@konvaicon\endcsname {\simpleiconsmap\symbol{"EFE4}}
- \expandafter\def\csname simpleicon@kotlinicon\endcsname {\simpleiconsmap\symbol{"EFE5}}
- \expandafter\def\csname simpleicon@koyebicon\endcsname {\simpleiconsmap\symbol{"EFE6}}
- \expandafter\def\csname simpleicon@kritaicon\endcsname {\simpleiconsmap\symbol{"EFE7}}
- \expandafter\def\csname simpleicon@ktmicon\endcsname {\simpleiconsmap\symbol{"EFE8}}
- \expandafter\def\csname simpleicon@ktoricon\endcsname {\simpleiconsmap\symbol{"EFE9}}
- \expandafter\def\csname simpleicon@kuaishouicon\endcsname {\simpleiconsmap\symbol{"EFEA}}
- \expandafter\def\csname simpleicon@kubernetesicon\endcsname {\simpleiconsmap\symbol{"EFEB}}
- \expandafter\def\csname simpleicon@kubuntuicon\endcsname {\simpleiconsmap\symbol{"EFEC}}
- \expandafter\def\csname simpleicon@kucoinicon\endcsname {\simpleiconsmap\symbol{"EFED}}
- \expandafter\def\csname simpleicon@kumaicon\endcsname {\simpleiconsmap\symbol{"EFEE}}
- \expandafter\def\csname simpleicon@kununuicon\endcsname {\simpleiconsmap\symbol{"EFEF}}
- \expandafter\def\csname simpleicon@kuulaicon\endcsname {\simpleiconsmap\symbol{"EFF0}}
- \expandafter\def\csname simpleicon@kxicon\endcsname {\simpleiconsmap\symbol{"EFF1}}
- \expandafter\def\csname simpleicon@kyoceraicon\endcsname {\simpleiconsmap\symbol{"EFF2}}
- \expandafter\def\csname simpleicon@labviewicon\endcsname {\simpleiconsmap\symbol{"EFF3}}
- \expandafter\def\csname simpleicon@ladaicon\endcsname {\simpleiconsmap\symbol{"EFF4}}
- \expandafter\def\csname simpleicon@lamborghiniicon\endcsname {\simpleiconsmap\symbol{"EFF5}}
- \expandafter\def\csname simpleicon@landrovericon\endcsname {\simpleiconsmap\symbol{"EFF6}}
- \expandafter\def\csname simpleicon@langchainicon\endcsname {\simpleiconsmap\symbol{"EFF7}}
- \expandafter\def\csname simpleicon@lapceicon\endcsname {\simpleiconsmap\symbol{"EFF8}}
- \expandafter\def\csname simpleicon@laragonicon\endcsname {\simpleiconsmap\symbol{"EFF9}}
- \expandafter\def\csname simpleicon@laravelicon\endcsname {\simpleiconsmap\symbol{"EFFA}}
- \expandafter\def\csname simpleicon@laravelhorizonicon\endcsname {\simpleiconsmap\symbol{"EFFB}}
- \expandafter\def\csname simpleicon@laravelnovaicon\endcsname {\simpleiconsmap\symbol{"EFFC}}
- \expandafter\def\csname simpleicon@lastdotfmicon\endcsname {\simpleiconsmap\symbol{"EFFD}}
- \expandafter\def\csname simpleicon@lastpassicon\endcsname {\simpleiconsmap\symbol{"EFFE}}
- \expandafter\def\csname simpleicon@latexicon\endcsname {\simpleiconsmap\symbol{"EFFF}}
- \expandafter\def\csname simpleicon@launchpadicon\endcsname {\simpleiconsmap\symbol{"F000}}
- \expandafter\def\csname simpleicon@lazarusicon\endcsname {\simpleiconsmap\symbol{"F001}}
- \expandafter\def\csname simpleicon@lazyvimicon\endcsname {\simpleiconsmap\symbol{"F002}}
- \expandafter\def\csname simpleicon@lbryicon\endcsname {\simpleiconsmap\symbol{"F003}}
- \expandafter\def\csname simpleicon@leaderpriceicon\endcsname {\simpleiconsmap\symbol{"F004}}
- \expandafter\def\csname simpleicon@leafleticon\endcsname {\simpleiconsmap\symbol{"F005}}
- \expandafter\def\csname simpleicon@leagueoflegendsicon\endcsname {\simpleiconsmap\symbol{"F006}}
- \expandafter\def\csname simpleicon@leanpubicon\endcsname {\simpleiconsmap\symbol{"F007}}
- \expandafter\def\csname simpleicon@leetcodeicon\endcsname {\simpleiconsmap\symbol{"F008}}
- \expandafter\def\csname simpleicon@legacygamesicon\endcsname {\simpleiconsmap\symbol{"F009}}
- \expandafter\def\csname simpleicon@leicaicon\endcsname {\simpleiconsmap\symbol{"F00A}}
- \expandafter\def\csname simpleicon@lemmyicon\endcsname {\simpleiconsmap\symbol{"F00B}}
- \expandafter\def\csname simpleicon@lemonsqueezyicon\endcsname {\simpleiconsmap\symbol{"F00C}}
- \expandafter\def\csname simpleicon@lenovoicon\endcsname {\simpleiconsmap\symbol{"F00D}}
- \expandafter\def\csname simpleicon@lensicon\endcsname {\simpleiconsmap\symbol{"F00E}}
- \expandafter\def\csname simpleicon@leptosicon\endcsname {\simpleiconsmap\symbol{"F00F}}
- \expandafter\def\csname simpleicon@lequipeicon\endcsname {\simpleiconsmap\symbol{"F010}}
- \expandafter\def\csname simpleicon@lernaicon\endcsname {\simpleiconsmap\symbol{"F011}}
- \expandafter\def\csname simpleicon@leroymerlinicon\endcsname {\simpleiconsmap\symbol{"F012}}
- \expandafter\def\csname simpleicon@leslibrairesicon\endcsname {\simpleiconsmap\symbol{"F013}}
- \expandafter\def\csname simpleicon@lessicon\endcsname {\simpleiconsmap\symbol{"F014}}
- \expandafter\def\csname simpleicon@letsencrypticon\endcsname {\simpleiconsmap\symbol{"F015}}
- \expandafter\def\csname simpleicon@letterboxdicon\endcsname {\simpleiconsmap\symbol{"F016}}
- \expandafter\def\csname simpleicon@levelsdotfyiicon\endcsname {\simpleiconsmap\symbol{"F017}}
- \expandafter\def\csname simpleicon@lgicon\endcsname {\simpleiconsmap\symbol{"F018}}
- \expandafter\def\csname simpleicon@liberadotchaticon\endcsname {\simpleiconsmap\symbol{"F019}}
- \expandafter\def\csname simpleicon@liberapayicon\endcsname {\simpleiconsmap\symbol{"F01A}}
- \expandafter\def\csname simpleicon@librariesdotioicon\endcsname {\simpleiconsmap\symbol{"F01B}}
- \expandafter\def\csname simpleicon@librarythingicon\endcsname {\simpleiconsmap\symbol{"F01C}}
- \expandafter\def\csname simpleicon@libreofficeicon\endcsname {\simpleiconsmap\symbol{"F01D}}
- \expandafter\def\csname simpleicon@libreofficebaseicon\endcsname {\simpleiconsmap\symbol{"F01E}}
- \expandafter\def\csname simpleicon@libreofficecalcicon\endcsname {\simpleiconsmap\symbol{"F01F}}
- \expandafter\def\csname simpleicon@libreofficedrawicon\endcsname {\simpleiconsmap\symbol{"F020}}
- \expandafter\def\csname simpleicon@libreofficeimpressicon\endcsname {\simpleiconsmap\symbol{"F021}}
- \expandafter\def\csname simpleicon@libreofficemathicon\endcsname {\simpleiconsmap\symbol{"F022}}
- \expandafter\def\csname simpleicon@libreofficewritericon\endcsname {\simpleiconsmap\symbol{"F023}}
- \expandafter\def\csname simpleicon@librewolficon\endcsname {\simpleiconsmap\symbol{"F024}}
- \expandafter\def\csname simpleicon@libuvicon\endcsname {\simpleiconsmap\symbol{"F025}}
- \expandafter\def\csname simpleicon@lichessicon\endcsname {\simpleiconsmap\symbol{"F026}}
- \expandafter\def\csname simpleicon@lidlicon\endcsname {\simpleiconsmap\symbol{"F027}}
- \expandafter\def\csname simpleicon@lifxicon\endcsname {\simpleiconsmap\symbol{"F028}}
- \expandafter\def\csname simpleicon@lightburnicon\endcsname {\simpleiconsmap\symbol{"F029}}
- \expandafter\def\csname simpleicon@lighthouseicon\endcsname {\simpleiconsmap\symbol{"F02A}}
- \expandafter\def\csname simpleicon@lightningicon\endcsname {\simpleiconsmap\symbol{"F02B}}
- \expandafter\def\csname simpleicon@limesurveyicon\endcsname {\simpleiconsmap\symbol{"F02C}}
- \expandafter\def\csname simpleicon@lineicon\endcsname {\simpleiconsmap\symbol{"F02D}}
- \expandafter\def\csname simpleicon@lineageosicon\endcsname {\simpleiconsmap\symbol{"F02E}}
- \expandafter\def\csname simpleicon@linearicon\endcsname {\simpleiconsmap\symbol{"F02F}}
- \expandafter\def\csname simpleicon@liningicon\endcsname {\simpleiconsmap\symbol{"F030}}
- \expandafter\def\csname simpleicon@linkedinicon\endcsname {\simpleiconsmap\symbol{"F031}}
- \expandafter\def\csname simpleicon@linkerdicon\endcsname {\simpleiconsmap\symbol{"F032}}
- \expandafter\def\csname simpleicon@linkfireicon\endcsname {\simpleiconsmap\symbol{"F033}}
- \expandafter\def\csname simpleicon@linksysicon\endcsname {\simpleiconsmap\symbol{"F034}}
- \expandafter\def\csname simpleicon@linktreeicon\endcsname {\simpleiconsmap\symbol{"F035}}
- \expandafter\def\csname simpleicon@lintcodeicon\endcsname {\simpleiconsmap\symbol{"F036}}
- \expandafter\def\csname simpleicon@linuxicon\endcsname {\simpleiconsmap\symbol{"F037}}
- \expandafter\def\csname simpleicon@linuxcontainersicon\endcsname {\simpleiconsmap\symbol{"F038}}
- \expandafter\def\csname simpleicon@linuxfoundationicon\endcsname {\simpleiconsmap\symbol{"F039}}
- \expandafter\def\csname simpleicon@linuxminticon\endcsname {\simpleiconsmap\symbol{"F03A}}
- \expandafter\def\csname simpleicon@linuxprofessionalinstituteicon\endcsname {\simpleiconsmap\symbol{"F03B}}
- \expandafter\def\csname simpleicon@linuxservericon\endcsname {\simpleiconsmap\symbol{"F03C}}
- \expandafter\def\csname simpleicon@lionairicon\endcsname {\simpleiconsmap\symbol{"F03D}}
- \expandafter\def\csname simpleicon@liquibaseicon\endcsname {\simpleiconsmap\symbol{"F03E}}
- \expandafter\def\csname simpleicon@listmonkicon\endcsname {\simpleiconsmap\symbol{"F03F}}
- \expandafter\def\csname simpleicon@liticon\endcsname {\simpleiconsmap\symbol{"F040}}
- \expandafter\def\csname simpleicon@litecoinicon\endcsname {\simpleiconsmap\symbol{"F041}}
- \expandafter\def\csname simpleicon@litiengineicon\endcsname {\simpleiconsmap\symbol{"F042}}
- \expandafter\def\csname simpleicon@livechaticon\endcsname {\simpleiconsmap\symbol{"F043}}
- \expandafter\def\csname simpleicon@livejournalicon\endcsname {\simpleiconsmap\symbol{"F044}}
- \expandafter\def\csname simpleicon@livewireicon\endcsname {\simpleiconsmap\symbol{"F045}}
- \expandafter\def\csname simpleicon@llvmicon\endcsname {\simpleiconsmap\symbol{"F046}}
- \expandafter\def\csname simpleicon@lmmsicon\endcsname {\simpleiconsmap\symbol{"F047}}
- \expandafter\def\csname simpleicon@localicon\endcsname {\simpleiconsmap\symbol{"F048}}
- \expandafter\def\csname simpleicon@lodashicon\endcsname {\simpleiconsmap\symbol{"F049}}
- \expandafter\def\csname simpleicon@logitechicon\endcsname {\simpleiconsmap\symbol{"F04A}}
- \expandafter\def\csname simpleicon@logitechgicon\endcsname {\simpleiconsmap\symbol{"F04B}}
- \expandafter\def\csname simpleicon@logmeinicon\endcsname {\simpleiconsmap\symbol{"F04C}}
- \expandafter\def\csname simpleicon@logseqicon\endcsname {\simpleiconsmap\symbol{"F04D}}
- \expandafter\def\csname simpleicon@logstashicon\endcsname {\simpleiconsmap\symbol{"F04E}}
- \expandafter\def\csname simpleicon@lookericon\endcsname {\simpleiconsmap\symbol{"F04F}}
- \expandafter\def\csname simpleicon@loomicon\endcsname {\simpleiconsmap\symbol{"F050}}
- \expandafter\def\csname simpleicon@loopicon\endcsname {\simpleiconsmap\symbol{"F051}}
- \expandafter\def\csname simpleicon@loopbackicon\endcsname {\simpleiconsmap\symbol{"F052}}
- \expandafter\def\csname simpleicon@lootcrateicon\endcsname {\simpleiconsmap\symbol{"F053}}
- \expandafter\def\csname simpleicon@lospecicon\endcsname {\simpleiconsmap\symbol{"F054}}
- \expandafter\def\csname simpleicon@lotpolishairlinesicon\endcsname {\simpleiconsmap\symbol{"F055}}
- \expandafter\def\csname simpleicon@ltspiceicon\endcsname {\simpleiconsmap\symbol{"F056}}
- \expandafter\def\csname simpleicon@luaicon\endcsname {\simpleiconsmap\symbol{"F057}}
- \expandafter\def\csname simpleicon@lubuntuicon\endcsname {\simpleiconsmap\symbol{"F058}}
- \expandafter\def\csname simpleicon@luciaicon\endcsname {\simpleiconsmap\symbol{"F059}}
- \expandafter\def\csname simpleicon@lucidicon\endcsname {\simpleiconsmap\symbol{"F05A}}
- \expandafter\def\csname simpleicon@ludwigicon\endcsname {\simpleiconsmap\symbol{"F05B}}
- \expandafter\def\csname simpleicon@lufthansaicon\endcsname {\simpleiconsmap\symbol{"F05C}}
- \expandafter\def\csname simpleicon@lumenicon\endcsname {\simpleiconsmap\symbol{"F05D}}
- \expandafter\def\csname simpleicon@lunacyicon\endcsname {\simpleiconsmap\symbol{"F05E}}
- \expandafter\def\csname simpleicon@lutrisicon\endcsname {\simpleiconsmap\symbol{"F05F}}
- \expandafter\def\csname simpleicon@lydiaicon\endcsname {\simpleiconsmap\symbol{"F060}}
- \expandafter\def\csname simpleicon@lyfticon\endcsname {\simpleiconsmap\symbol{"F061}}
- \expandafter\def\csname simpleicon@maasicon\endcsname {\simpleiconsmap\symbol{"F062}}
- \expandafter\def\csname simpleicon@macosicon\endcsname {\simpleiconsmap\symbol{"F063}}
- \expandafter\def\csname simpleicon@macpawicon\endcsname {\simpleiconsmap\symbol{"F064}}
- \expandafter\def\csname simpleicon@macysicon\endcsname {\simpleiconsmap\symbol{"F065}}
- \expandafter\def\csname simpleicon@magasinsuicon\endcsname {\simpleiconsmap\symbol{"F066}}
- \expandafter\def\csname simpleicon@magentoicon\endcsname {\simpleiconsmap\symbol{"F067}}
- \expandafter\def\csname simpleicon@magicicon\endcsname {\simpleiconsmap\symbol{"F068}}
- \expandafter\def\csname simpleicon@magiskicon\endcsname {\simpleiconsmap\symbol{"F069}}
- \expandafter\def\csname simpleicon@mahindraicon\endcsname {\simpleiconsmap\symbol{"F06A}}
- \expandafter\def\csname simpleicon@mailchimpicon\endcsname {\simpleiconsmap\symbol{"F06B}}
- \expandafter\def\csname simpleicon@maildotcomicon\endcsname {\simpleiconsmap\symbol{"F06C}}
- \expandafter\def\csname simpleicon@maildotruicon\endcsname {\simpleiconsmap\symbol{"F06D}}
- \expandafter\def\csname simpleicon@mailgunicon\endcsname {\simpleiconsmap\symbol{"F06E}}
- \expandafter\def\csname simpleicon@mailtrapicon\endcsname {\simpleiconsmap\symbol{"F06F}}
- \expandafter\def\csname simpleicon@mainwpicon\endcsname {\simpleiconsmap\symbol{"F070}}
- \expandafter\def\csname simpleicon@majorleaguehackingicon\endcsname {\simpleiconsmap\symbol{"F071}}
- \expandafter\def\csname simpleicon@makeicon\endcsname {\simpleiconsmap\symbol{"F072}}
- \expandafter\def\csname simpleicon@makerboticon\endcsname {\simpleiconsmap\symbol{"F073}}
- \expandafter\def\csname simpleicon@malticon\endcsname {\simpleiconsmap\symbol{"F074}}
- \expandafter\def\csname simpleicon@malwarebytesicon\endcsname {\simpleiconsmap\symbol{"F075}}
- \expandafter\def\csname simpleicon@mambauiicon\endcsname {\simpleiconsmap\symbol{"F076}}
- \expandafter\def\csname simpleicon@mampicon\endcsname {\simpleiconsmap\symbol{"F077}}
- \expandafter\def\csname simpleicon@manicon\endcsname {\simpleiconsmap\symbol{"F078}}
- \expandafter\def\csname simpleicon@manageiqicon\endcsname {\simpleiconsmap\symbol{"F079}}
- \expandafter\def\csname simpleicon@manjaroicon\endcsname {\simpleiconsmap\symbol{"F07A}}
- \expandafter\def\csname simpleicon@mantineicon\endcsname {\simpleiconsmap\symbol{"F07B}}
- \expandafter\def\csname simpleicon@mapboxicon\endcsname {\simpleiconsmap\symbol{"F07C}}
- \expandafter\def\csname simpleicon@maplibreicon\endcsname {\simpleiconsmap\symbol{"F07D}}
- \expandafter\def\csname simpleicon@mariadbicon\endcsname {\simpleiconsmap\symbol{"F07E}}
- \expandafter\def\csname simpleicon@mariadbfoundationicon\endcsname {\simpleiconsmap\symbol{"F07F}}
- \expandafter\def\csname simpleicon@markdownicon\endcsname {\simpleiconsmap\symbol{"F080}}
- \expandafter\def\csname simpleicon@marketoicon\endcsname {\simpleiconsmap\symbol{"F081}}
- \expandafter\def\csname simpleicon@markoicon\endcsname {\simpleiconsmap\symbol{"F082}}
- \expandafter\def\csname simpleicon@marriotticon\endcsname {\simpleiconsmap\symbol{"F083}}
- \expandafter\def\csname simpleicon@marvelappicon\endcsname {\simpleiconsmap\symbol{"F084}}
- \expandafter\def\csname simpleicon@maseratiicon\endcsname {\simpleiconsmap\symbol{"F085}}
- \expandafter\def\csname simpleicon@mastercardicon\endcsname {\simpleiconsmap\symbol{"F086}}
- \expandafter\def\csname simpleicon@mastercomfigicon\endcsname {\simpleiconsmap\symbol{"F087}}
- \expandafter\def\csname simpleicon@mastodonicon\endcsname {\simpleiconsmap\symbol{"F088}}
- \expandafter\def\csname simpleicon@materialdesignicon\endcsname {\simpleiconsmap\symbol{"F089}}
- \expandafter\def\csname simpleicon@materialdesigniconsicon\endcsname {\simpleiconsmap\symbol{"F08A}}
- \expandafter\def\csname simpleicon@materialformkdocsicon\endcsname {\simpleiconsmap\symbol{"F08B}}
- \expandafter\def\csname simpleicon@matillionicon\endcsname {\simpleiconsmap\symbol{"F08C}}
- \expandafter\def\csname simpleicon@matomoicon\endcsname {\simpleiconsmap\symbol{"F08D}}
- \expandafter\def\csname simpleicon@matrixicon\endcsname {\simpleiconsmap\symbol{"F08E}}
- \expandafter\def\csname simpleicon@matterdotjsicon\endcsname {\simpleiconsmap\symbol{"F08F}}
- \expandafter\def\csname simpleicon@mattermosticon\endcsname {\simpleiconsmap\symbol{"F090}}
- \expandafter\def\csname simpleicon@matterneticon\endcsname {\simpleiconsmap\symbol{"F091}}
- \expandafter\def\csname simpleicon@mauticicon\endcsname {\simpleiconsmap\symbol{"F092}}
- \expandafter\def\csname simpleicon@maxicon\endcsname {\simpleiconsmap\symbol{"F093}}
- \expandafter\def\csname simpleicon@maxplanckgesellschafticon\endcsname {\simpleiconsmap\symbol{"F094}}
- \expandafter\def\csname simpleicon@maytagicon\endcsname {\simpleiconsmap\symbol{"F095}}
- \expandafter\def\csname simpleicon@mazdaicon\endcsname {\simpleiconsmap\symbol{"F096}}
- \expandafter\def\csname simpleicon@mcafeeicon\endcsname {\simpleiconsmap\symbol{"F097}}
- \expandafter\def\csname simpleicon@mcdonaldsicon\endcsname {\simpleiconsmap\symbol{"F098}}
- \expandafter\def\csname simpleicon@mclarenicon\endcsname {\simpleiconsmap\symbol{"F099}}
- \expandafter\def\csname simpleicon@mdbookicon\endcsname {\simpleiconsmap\symbol{"F09A}}
- \expandafter\def\csname simpleicon@mdnwebdocsicon\endcsname {\simpleiconsmap\symbol{"F09B}}
- \expandafter\def\csname simpleicon@mdxicon\endcsname {\simpleiconsmap\symbol{"F09C}}
- \expandafter\def\csname simpleicon@mediafireicon\endcsname {\simpleiconsmap\symbol{"F09D}}
- \expandafter\def\csname simpleicon@mediamarkticon\endcsname {\simpleiconsmap\symbol{"F09E}}
- \expandafter\def\csname simpleicon@mediatekicon\endcsname {\simpleiconsmap\symbol{"F09F}}
- \expandafter\def\csname simpleicon@medibangpainticon\endcsname {\simpleiconsmap\symbol{"F0A0}}
- \expandafter\def\csname simpleicon@mediumicon\endcsname {\simpleiconsmap\symbol{"F0A1}}
- \expandafter\def\csname simpleicon@medusaicon\endcsname {\simpleiconsmap\symbol{"F0A2}}
- \expandafter\def\csname simpleicon@meetupicon\endcsname {\simpleiconsmap\symbol{"F0A3}}
- \expandafter\def\csname simpleicon@megaicon\endcsname {\simpleiconsmap\symbol{"F0A4}}
- \expandafter\def\csname simpleicon@meilisearchicon\endcsname {\simpleiconsmap\symbol{"F0A5}}
- \expandafter\def\csname simpleicon@meituanicon\endcsname {\simpleiconsmap\symbol{"F0A6}}
- \expandafter\def\csname simpleicon@meizuicon\endcsname {\simpleiconsmap\symbol{"F0A7}}
- \expandafter\def\csname simpleicon@mendeleyicon\endcsname {\simpleiconsmap\symbol{"F0A8}}
- \expandafter\def\csname simpleicon@mentorcruiseicon\endcsname {\simpleiconsmap\symbol{"F0A9}}
- \expandafter\def\csname simpleicon@mercadopagoicon\endcsname {\simpleiconsmap\symbol{"F0AA}}
- \expandafter\def\csname simpleicon@mercedesicon\endcsname {\simpleiconsmap\symbol{"F0AB}}
- \expandafter\def\csname simpleicon@merckicon\endcsname {\simpleiconsmap\symbol{"F0AC}}
- \expandafter\def\csname simpleicon@mercurialicon\endcsname {\simpleiconsmap\symbol{"F0AD}}
- \expandafter\def\csname simpleicon@mermaidicon\endcsname {\simpleiconsmap\symbol{"F0AE}}
- \expandafter\def\csname simpleicon@messengericon\endcsname {\simpleiconsmap\symbol{"F0AF}}
- \expandafter\def\csname simpleicon@metaicon\endcsname {\simpleiconsmap\symbol{"F0B0}}
- \expandafter\def\csname simpleicon@metabaseicon\endcsname {\simpleiconsmap\symbol{"F0B1}}
- \expandafter\def\csname simpleicon@metacriticicon\endcsname {\simpleiconsmap\symbol{"F0B2}}
- \expandafter\def\csname simpleicon@metafiltericon\endcsname {\simpleiconsmap\symbol{"F0B3}}
- \expandafter\def\csname simpleicon@metasploiticon\endcsname {\simpleiconsmap\symbol{"F0B4}}
- \expandafter\def\csname simpleicon@meteoricon\endcsname {\simpleiconsmap\symbol{"F0B5}}
- \expandafter\def\csname simpleicon@metroicon\endcsname {\simpleiconsmap\symbol{"F0B6}}
- \expandafter\def\csname simpleicon@metrodelaciudaddemexicoicon\endcsname {\simpleiconsmap\symbol{"F0B7}}
- \expandafter\def\csname simpleicon@metrodemadridicon\endcsname {\simpleiconsmap\symbol{"F0B8}}
- \expandafter\def\csname simpleicon@metrodeparisicon\endcsname {\simpleiconsmap\symbol{"F0B9}}
- \expandafter\def\csname simpleicon@meweicon\endcsname {\simpleiconsmap\symbol{"F0BA}}
- \expandafter\def\csname simpleicon@mgicon\endcsname {\simpleiconsmap\symbol{"F0BB}}
- \expandafter\def\csname simpleicon@microbiticon\endcsname {\simpleiconsmap\symbol{"F0BC}}
- \expandafter\def\csname simpleicon@microdotblogicon\endcsname {\simpleiconsmap\symbol{"F0BD}}
- \expandafter\def\csname simpleicon@microeditoricon\endcsname {\simpleiconsmap\symbol{"F0BE}}
- \expandafter\def\csname simpleicon@microgeneticsicon\endcsname {\simpleiconsmap\symbol{"F0BF}}
- \expandafter\def\csname simpleicon@micropythonicon\endcsname {\simpleiconsmap\symbol{"F0C0}}
- \expandafter\def\csname simpleicon@microsofticon\endcsname {\simpleiconsmap\symbol{"F0C1}}
- \expandafter\def\csname simpleicon@microsoftacademicicon\endcsname {\simpleiconsmap\symbol{"F0C2}}
- \expandafter\def\csname simpleicon@microsoftaccessicon\endcsname {\simpleiconsmap\symbol{"F0C3}}
- \expandafter\def\csname simpleicon@microsoftazureicon\endcsname {\simpleiconsmap\symbol{"F0C4}}
- \expandafter\def\csname simpleicon@microsoftbingicon\endcsname {\simpleiconsmap\symbol{"F0C5}}
- \expandafter\def\csname simpleicon@microsoftedgeicon\endcsname {\simpleiconsmap\symbol{"F0C6}}
- \expandafter\def\csname simpleicon@microsoftexcelicon\endcsname {\simpleiconsmap\symbol{"F0C7}}
- \expandafter\def\csname simpleicon@microsoftexchangeicon\endcsname {\simpleiconsmap\symbol{"F0C8}}
- \expandafter\def\csname simpleicon@microsoftonedriveicon\endcsname {\simpleiconsmap\symbol{"F0C9}}
- \expandafter\def\csname simpleicon@microsoftonenoteicon\endcsname {\simpleiconsmap\symbol{"F0CA}}
- \expandafter\def\csname simpleicon@microsoftoutlookicon\endcsname {\simpleiconsmap\symbol{"F0CB}}
- \expandafter\def\csname simpleicon@microsoftpowerpointicon\endcsname {\simpleiconsmap\symbol{"F0CC}}
- \expandafter\def\csname simpleicon@microsoftsharepointicon\endcsname {\simpleiconsmap\symbol{"F0CD}}
- \expandafter\def\csname simpleicon@microsoftsqlservericon\endcsname {\simpleiconsmap\symbol{"F0CE}}
- \expandafter\def\csname simpleicon@microsoftstoreicon\endcsname {\simpleiconsmap\symbol{"F0CF}}
- \expandafter\def\csname simpleicon@microsoftteamsicon\endcsname {\simpleiconsmap\symbol{"F0D0}}
- \expandafter\def\csname simpleicon@microsofttranslatoricon\endcsname {\simpleiconsmap\symbol{"F0D1}}
- \expandafter\def\csname simpleicon@microsoftvisioicon\endcsname {\simpleiconsmap\symbol{"F0D2}}
- \expandafter\def\csname simpleicon@microsoftwordicon\endcsname {\simpleiconsmap\symbol{"F0D3}}
- \expandafter\def\csname simpleicon@microstationicon\endcsname {\simpleiconsmap\symbol{"F0D4}}
- \expandafter\def\csname simpleicon@microstrategyicon\endcsname {\simpleiconsmap\symbol{"F0D5}}
- \expandafter\def\csname simpleicon@midiicon\endcsname {\simpleiconsmap\symbol{"F0D6}}
- \expandafter\def\csname simpleicon@migaduicon\endcsname {\simpleiconsmap\symbol{"F0D7}}
- \expandafter\def\csname simpleicon@mikrotikicon\endcsname {\simpleiconsmap\symbol{"F0D8}}
- \expandafter\def\csname simpleicon@milanoteicon\endcsname {\simpleiconsmap\symbol{"F0D9}}
- \expandafter\def\csname simpleicon@milvusicon\endcsname {\simpleiconsmap\symbol{"F0DA}}
- \expandafter\def\csname simpleicon@mindsicon\endcsname {\simpleiconsmap\symbol{"F0DB}}
- \expandafter\def\csname simpleicon@minecrafticon\endcsname {\simpleiconsmap\symbol{"F0DC}}
- \expandafter\def\csname simpleicon@minetesticon\endcsname {\simpleiconsmap\symbol{"F0DD}}
- \expandafter\def\csname simpleicon@miniicon\endcsname {\simpleiconsmap\symbol{"F0DE}}
- \expandafter\def\csname simpleicon@minioicon\endcsname {\simpleiconsmap\symbol{"F0DF}}
- \expandafter\def\csname simpleicon@mintlifyicon\endcsname {\simpleiconsmap\symbol{"F0E0}}
- \expandafter\def\csname simpleicon@minutemailericon\endcsname {\simpleiconsmap\symbol{"F0E1}}
- \expandafter\def\csname simpleicon@mirahezeicon\endcsname {\simpleiconsmap\symbol{"F0E2}}
- \expandafter\def\csname simpleicon@miroicon\endcsname {\simpleiconsmap\symbol{"F0E3}}
- \expandafter\def\csname simpleicon@misskeyicon\endcsname {\simpleiconsmap\symbol{"F0E4}}
- \expandafter\def\csname simpleicon@mitsubishiicon\endcsname {\simpleiconsmap\symbol{"F0E5}}
- \expandafter\def\csname simpleicon@mixicon\endcsname {\simpleiconsmap\symbol{"F0E6}}
- \expandafter\def\csname simpleicon@mixcloudicon\endcsname {\simpleiconsmap\symbol{"F0E7}}
- \expandafter\def\csname simpleicon@mixpanelicon\endcsname {\simpleiconsmap\symbol{"F0E8}}
- \expandafter\def\csname simpleicon@mlbicon\endcsname {\simpleiconsmap\symbol{"F0E9}}
- \expandafter\def\csname simpleicon@mlflowicon\endcsname {\simpleiconsmap\symbol{"F0EA}}
- \expandafter\def\csname simpleicon@mobxicon\endcsname {\simpleiconsmap\symbol{"F0EB}}
- \expandafter\def\csname simpleicon@mobxstatetreeicon\endcsname {\simpleiconsmap\symbol{"F0EC}}
- \expandafter\def\csname simpleicon@mochaicon\endcsname {\simpleiconsmap\symbol{"F0ED}}
- \expandafter\def\csname simpleicon@mockserviceworkericon\endcsname {\simpleiconsmap\symbol{"F0EE}}
- \expandafter\def\csname simpleicon@modalicon\endcsname {\simpleiconsmap\symbol{"F0EF}}
- \expandafter\def\csname simpleicon@modinicon\endcsname {\simpleiconsmap\symbol{"F0F0}}
- \expandafter\def\csname simpleicon@modrinthicon\endcsname {\simpleiconsmap\symbol{"F0F1}}
- \expandafter\def\csname simpleicon@modxicon\endcsname {\simpleiconsmap\symbol{"F0F2}}
- \expandafter\def\csname simpleicon@mojangstudiosicon\endcsname {\simpleiconsmap\symbol{"F0F3}}
- \expandafter\def\csname simpleicon@moleculericon\endcsname {\simpleiconsmap\symbol{"F0F4}}
- \expandafter\def\csname simpleicon@momenteoicon\endcsname {\simpleiconsmap\symbol{"F0F5}}
- \expandafter\def\csname simpleicon@moneroicon\endcsname {\simpleiconsmap\symbol{"F0F6}}
- \expandafter\def\csname simpleicon@moneygramicon\endcsname {\simpleiconsmap\symbol{"F0F7}}
- \expandafter\def\csname simpleicon@mongodbicon\endcsname {\simpleiconsmap\symbol{"F0F8}}
- \expandafter\def\csname simpleicon@mongooseicon\endcsname {\simpleiconsmap\symbol{"F0F9}}
- \expandafter\def\csname simpleicon@mongoosedotwsicon\endcsname {\simpleiconsmap\symbol{"F0FA}}
- \expandafter\def\csname simpleicon@monicaicon\endcsname {\simpleiconsmap\symbol{"F0FB}}
- \expandafter\def\csname simpleicon@monkeytieicon\endcsname {\simpleiconsmap\symbol{"F0FC}}
- \expandafter\def\csname simpleicon@monkeytypeicon\endcsname {\simpleiconsmap\symbol{"F0FD}}
- \expandafter\def\csname simpleicon@monogameicon\endcsname {\simpleiconsmap\symbol{"F0FE}}
- \expandafter\def\csname simpleicon@monoprixicon\endcsname {\simpleiconsmap\symbol{"F0FF}}
- \expandafter\def\csname simpleicon@monstericon\endcsname {\simpleiconsmap\symbol{"F100}}
- \expandafter\def\csname simpleicon@monzoicon\endcsname {\simpleiconsmap\symbol{"F101}}
- \expandafter\def\csname simpleicon@mooicon\endcsname {\simpleiconsmap\symbol{"F102}}
- \expandafter\def\csname simpleicon@moodleicon\endcsname {\simpleiconsmap\symbol{"F103}}
- \expandafter\def\csname simpleicon@moonrepoicon\endcsname {\simpleiconsmap\symbol{"F104}}
- \expandafter\def\csname simpleicon@moqupsicon\endcsname {\simpleiconsmap\symbol{"F105}}
- \expandafter\def\csname simpleicon@morrisonsicon\endcsname {\simpleiconsmap\symbol{"F106}}
- \expandafter\def\csname simpleicon@moscowmetroicon\endcsname {\simpleiconsmap\symbol{"F107}}
- \expandafter\def\csname simpleicon@motorolaicon\endcsname {\simpleiconsmap\symbol{"F108}}
- \expandafter\def\csname simpleicon@mozillaicon\endcsname {\simpleiconsmap\symbol{"F109}}
- \expandafter\def\csname simpleicon@mpvicon\endcsname {\simpleiconsmap\symbol{"F10A}}
- \expandafter\def\csname simpleicon@mqtticon\endcsname {\simpleiconsmap\symbol{"F10B}}
- \expandafter\def\csname simpleicon@msiicon\endcsname {\simpleiconsmap\symbol{"F10C}}
- \expandafter\def\csname simpleicon@msibusinessicon\endcsname {\simpleiconsmap\symbol{"F10D}}
- \expandafter\def\csname simpleicon@mtaicon\endcsname {\simpleiconsmap\symbol{"F10E}}
- \expandafter\def\csname simpleicon@mtricon\endcsname {\simpleiconsmap\symbol{"F10F}}
- \expandafter\def\csname simpleicon@mubiicon\endcsname {\simpleiconsmap\symbol{"F110}}
- \expandafter\def\csname simpleicon@muiicon\endcsname {\simpleiconsmap\symbol{"F111}}
- \expandafter\def\csname simpleicon@mulesofticon\endcsname {\simpleiconsmap\symbol{"F112}}
- \expandafter\def\csname simpleicon@mullericon\endcsname {\simpleiconsmap\symbol{"F113}}
- \expandafter\def\csname simpleicon@multisimicon\endcsname {\simpleiconsmap\symbol{"F114}}
- \expandafter\def\csname simpleicon@mumbleicon\endcsname {\simpleiconsmap\symbol{"F115}}
- \expandafter\def\csname simpleicon@muoicon\endcsname {\simpleiconsmap\symbol{"F116}}
- \expandafter\def\csname simpleicon@muralicon\endcsname {\simpleiconsmap\symbol{"F117}}
- \expandafter\def\csname simpleicon@musescoreicon\endcsname {\simpleiconsmap\symbol{"F118}}
- \expandafter\def\csname simpleicon@musicbrainzicon\endcsname {\simpleiconsmap\symbol{"F119}}
- \expandafter\def\csname simpleicon@mxlinuxicon\endcsname {\simpleiconsmap\symbol{"F11A}}
- \expandafter\def\csname simpleicon@myanimelisticon\endcsname {\simpleiconsmap\symbol{"F11B}}
- \expandafter\def\csname simpleicon@mygeticon\endcsname {\simpleiconsmap\symbol{"F11C}}
- \expandafter\def\csname simpleicon@myobicon\endcsname {\simpleiconsmap\symbol{"F11D}}
- \expandafter\def\csname simpleicon@myspaceicon\endcsname {\simpleiconsmap\symbol{"F11E}}
- \expandafter\def\csname simpleicon@mysqlicon\endcsname {\simpleiconsmap\symbol{"F11F}}
- \expandafter\def\csname simpleicon@n26icon\endcsname {\simpleiconsmap\symbol{"F120}}
- \expandafter\def\csname simpleicon@n8nicon\endcsname {\simpleiconsmap\symbol{"F121}}
- \expandafter\def\csname simpleicon@namebaseicon\endcsname {\simpleiconsmap\symbol{"F122}}
- \expandafter\def\csname simpleicon@namecheapicon\endcsname {\simpleiconsmap\symbol{"F123}}
- \expandafter\def\csname simpleicon@namemcicon\endcsname {\simpleiconsmap\symbol{"F124}}
- \expandafter\def\csname simpleicon@namesiloicon\endcsname {\simpleiconsmap\symbol{"F125}}
- \expandafter\def\csname simpleicon@namuwikiicon\endcsname {\simpleiconsmap\symbol{"F126}}
- \expandafter\def\csname simpleicon@nanoicon\endcsname {\simpleiconsmap\symbol{"F127}}
- \expandafter\def\csname simpleicon@nasaicon\endcsname {\simpleiconsmap\symbol{"F128}}
- \expandafter\def\csname simpleicon@nationalgridicon\endcsname {\simpleiconsmap\symbol{"F129}}
- \expandafter\def\csname simpleicon@nationalrailicon\endcsname {\simpleiconsmap\symbol{"F12A}}
- \expandafter\def\csname simpleicon@nativescripticon\endcsname {\simpleiconsmap\symbol{"F12B}}
- \expandafter\def\csname simpleicon@natsdotioicon\endcsname {\simpleiconsmap\symbol{"F12C}}
- \expandafter\def\csname simpleicon@navericon\endcsname {\simpleiconsmap\symbol{"F12D}}
- \expandafter\def\csname simpleicon@nbaicon\endcsname {\simpleiconsmap\symbol{"F12E}}
- \expandafter\def\csname simpleicon@nbbicon\endcsname {\simpleiconsmap\symbol{"F12F}}
- \expandafter\def\csname simpleicon@nbcicon\endcsname {\simpleiconsmap\symbol{"F130}}
- \expandafter\def\csname simpleicon@ndricon\endcsname {\simpleiconsmap\symbol{"F131}}
- \expandafter\def\csname simpleicon@nearicon\endcsname {\simpleiconsmap\symbol{"F132}}
- \expandafter\def\csname simpleicon@necicon\endcsname {\simpleiconsmap\symbol{"F133}}
- \expandafter\def\csname simpleicon@neo4jicon\endcsname {\simpleiconsmap\symbol{"F134}}
- \expandafter\def\csname simpleicon@neovimicon\endcsname {\simpleiconsmap\symbol{"F135}}
- \expandafter\def\csname simpleicon@neptuneicon\endcsname {\simpleiconsmap\symbol{"F136}}
- \expandafter\def\csname simpleicon@nestjsicon\endcsname {\simpleiconsmap\symbol{"F137}}
- \expandafter\def\csname simpleicon@netappicon\endcsname {\simpleiconsmap\symbol{"F138}}
- \expandafter\def\csname simpleicon@netbsdicon\endcsname {\simpleiconsmap\symbol{"F139}}
- \expandafter\def\csname simpleicon@netcupicon\endcsname {\simpleiconsmap\symbol{"F13A}}
- \expandafter\def\csname simpleicon@netdataicon\endcsname {\simpleiconsmap\symbol{"F13B}}
- \expandafter\def\csname simpleicon@neteasecloudmusicicon\endcsname {\simpleiconsmap\symbol{"F13C}}
- \expandafter\def\csname simpleicon@netflixicon\endcsname {\simpleiconsmap\symbol{"F13D}}
- \expandafter\def\csname simpleicon@netgearicon\endcsname {\simpleiconsmap\symbol{"F13E}}
- \expandafter\def\csname simpleicon@netlifyicon\endcsname {\simpleiconsmap\symbol{"F13F}}
- \expandafter\def\csname simpleicon@netteicon\endcsname {\simpleiconsmap\symbol{"F140}}
- \expandafter\def\csname simpleicon@nettoicon\endcsname {\simpleiconsmap\symbol{"F141}}
- \expandafter\def\csname simpleicon@neutralinojsicon\endcsname {\simpleiconsmap\symbol{"F142}}
- \expandafter\def\csname simpleicon@newbalanceicon\endcsname {\simpleiconsmap\symbol{"F143}}
- \expandafter\def\csname simpleicon@neweggicon\endcsname {\simpleiconsmap\symbol{"F144}}
- \expandafter\def\csname simpleicon@newjapanprowrestlingicon\endcsname {\simpleiconsmap\symbol{"F145}}
- \expandafter\def\csname simpleicon@newrelicicon\endcsname {\simpleiconsmap\symbol{"F146}}
- \expandafter\def\csname simpleicon@newyorktimesicon\endcsname {\simpleiconsmap\symbol{"F147}}
- \expandafter\def\csname simpleicon@nextbilliondotaiicon\endcsname {\simpleiconsmap\symbol{"F148}}
- \expandafter\def\csname simpleicon@nextcloudicon\endcsname {\simpleiconsmap\symbol{"F149}}
- \expandafter\def\csname simpleicon@nextdnsicon\endcsname {\simpleiconsmap\symbol{"F14A}}
- \expandafter\def\csname simpleicon@nextdooricon\endcsname {\simpleiconsmap\symbol{"F14B}}
- \expandafter\def\csname simpleicon@nextdotjsicon\endcsname {\simpleiconsmap\symbol{"F14C}}
- \expandafter\def\csname simpleicon@nextraicon\endcsname {\simpleiconsmap\symbol{"F14D}}
- \expandafter\def\csname simpleicon@nextuiicon\endcsname {\simpleiconsmap\symbol{"F14E}}
- \expandafter\def\csname simpleicon@nexusmodsicon\endcsname {\simpleiconsmap\symbol{"F14F}}
- \expandafter\def\csname simpleicon@nfcicon\endcsname {\simpleiconsmap\symbol{"F150}}
- \expandafter\def\csname simpleicon@nginxicon\endcsname {\simpleiconsmap\symbol{"F151}}
- \expandafter\def\csname simpleicon@nginxproxymanagericon\endcsname {\simpleiconsmap\symbol{"F152}}
- \expandafter\def\csname simpleicon@ngrokicon\endcsname {\simpleiconsmap\symbol{"F153}}
- \expandafter\def\csname simpleicon@ngrxicon\endcsname {\simpleiconsmap\symbol{"F154}}
- \expandafter\def\csname simpleicon@nhlicon\endcsname {\simpleiconsmap\symbol{"F155}}
- \expandafter\def\csname simpleicon@nicehashicon\endcsname {\simpleiconsmap\symbol{"F156}}
- \expandafter\def\csname simpleicon@niconicoicon\endcsname {\simpleiconsmap\symbol{"F157}}
- \expandafter\def\csname simpleicon@nikeicon\endcsname {\simpleiconsmap\symbol{"F158}}
- \expandafter\def\csname simpleicon@nikonicon\endcsname {\simpleiconsmap\symbol{"F159}}
- \expandafter\def\csname simpleicon@nimicon\endcsname {\simpleiconsmap\symbol{"F15A}}
- \expandafter\def\csname simpleicon@nintendoicon\endcsname {\simpleiconsmap\symbol{"F15B}}
- \expandafter\def\csname simpleicon@nintendo3dsicon\endcsname {\simpleiconsmap\symbol{"F15C}}
- \expandafter\def\csname simpleicon@nintendogamecubeicon\endcsname {\simpleiconsmap\symbol{"F15D}}
- \expandafter\def\csname simpleicon@nintendoswitchicon\endcsname {\simpleiconsmap\symbol{"F15E}}
- \expandafter\def\csname simpleicon@nissanicon\endcsname {\simpleiconsmap\symbol{"F15F}}
- \expandafter\def\csname simpleicon@nixosicon\endcsname {\simpleiconsmap\symbol{"F160}}
- \expandafter\def\csname simpleicon@nodedotjsicon\endcsname {\simpleiconsmap\symbol{"F161}}
- \expandafter\def\csname simpleicon@nodemonicon\endcsname {\simpleiconsmap\symbol{"F162}}
- \expandafter\def\csname simpleicon@noderedicon\endcsname {\simpleiconsmap\symbol{"F163}}
- \expandafter\def\csname simpleicon@nokiaicon\endcsname {\simpleiconsmap\symbol{"F164}}
- \expandafter\def\csname simpleicon@nomadicon\endcsname {\simpleiconsmap\symbol{"F165}}
- \expandafter\def\csname simpleicon@norcoicon\endcsname {\simpleiconsmap\symbol{"F166}}
- \expandafter\def\csname simpleicon@nordicsemiconductoricon\endcsname {\simpleiconsmap\symbol{"F167}}
- \expandafter\def\csname simpleicon@nordvpnicon\endcsname {\simpleiconsmap\symbol{"F168}}
- \expandafter\def\csname simpleicon@normalizedotcssicon\endcsname {\simpleiconsmap\symbol{"F169}}
- \expandafter\def\csname simpleicon@nortonicon\endcsname {\simpleiconsmap\symbol{"F16A}}
- \expandafter\def\csname simpleicon@norwegianicon\endcsname {\simpleiconsmap\symbol{"F16B}}
- \expandafter\def\csname simpleicon@notepadplusplusicon\endcsname {\simpleiconsmap\symbol{"F16C}}
- \expandafter\def\csname simpleicon@notionicon\endcsname {\simpleiconsmap\symbol{"F16D}}
- \expandafter\def\csname simpleicon@notisticon\endcsname {\simpleiconsmap\symbol{"F16E}}
- \expandafter\def\csname simpleicon@nounprojecticon\endcsname {\simpleiconsmap\symbol{"F16F}}
- \expandafter\def\csname simpleicon@novuicon\endcsname {\simpleiconsmap\symbol{"F170}}
- \expandafter\def\csname simpleicon@nowicon\endcsname {\simpleiconsmap\symbol{"F171}}
- \expandafter\def\csname simpleicon@npmicon\endcsname {\simpleiconsmap\symbol{"F172}}
- \expandafter\def\csname simpleicon@nrwlicon\endcsname {\simpleiconsmap\symbol{"F173}}
- \expandafter\def\csname simpleicon@nsisicon\endcsname {\simpleiconsmap\symbol{"F174}}
- \expandafter\def\csname simpleicon@ntfyicon\endcsname {\simpleiconsmap\symbol{"F175}}
- \expandafter\def\csname simpleicon@nubankicon\endcsname {\simpleiconsmap\symbol{"F176}}
- \expandafter\def\csname simpleicon@nucleoicon\endcsname {\simpleiconsmap\symbol{"F177}}
- \expandafter\def\csname simpleicon@nugeticon\endcsname {\simpleiconsmap\symbol{"F178}}
- \expandafter\def\csname simpleicon@nukeicon\endcsname {\simpleiconsmap\symbol{"F179}}
- \expandafter\def\csname simpleicon@numbaicon\endcsname {\simpleiconsmap\symbol{"F17A}}
- \expandafter\def\csname simpleicon@numpyicon\endcsname {\simpleiconsmap\symbol{"F17B}}
- \expandafter\def\csname simpleicon@nunjucksicon\endcsname {\simpleiconsmap\symbol{"F17C}}
- \expandafter\def\csname simpleicon@nushellicon\endcsname {\simpleiconsmap\symbol{"F17D}}
- \expandafter\def\csname simpleicon@nutanixicon\endcsname {\simpleiconsmap\symbol{"F17E}}
- \expandafter\def\csname simpleicon@nuxtdotjsicon\endcsname {\simpleiconsmap\symbol{"F17F}}
- \expandafter\def\csname simpleicon@nvidiaicon\endcsname {\simpleiconsmap\symbol{"F180}}
- \expandafter\def\csname simpleicon@nvmicon\endcsname {\simpleiconsmap\symbol{"F181}}
- \expandafter\def\csname simpleicon@nxicon\endcsname {\simpleiconsmap\symbol{"F182}}
- \expandafter\def\csname simpleicon@nxpicon\endcsname {\simpleiconsmap\symbol{"F183}}
- \expandafter\def\csname simpleicon@nzxticon\endcsname {\simpleiconsmap\symbol{"F184}}
- \expandafter\def\csname simpleicon@observableicon\endcsname {\simpleiconsmap\symbol{"F185}}
- \expandafter\def\csname simpleicon@obsidianicon\endcsname {\simpleiconsmap\symbol{"F186}}
- \expandafter\def\csname simpleicon@obsstudioicon\endcsname {\simpleiconsmap\symbol{"F187}}
- \expandafter\def\csname simpleicon@ocamlicon\endcsname {\simpleiconsmap\symbol{"F188}}
- \expandafter\def\csname simpleicon@oclificon\endcsname {\simpleiconsmap\symbol{"F189}}
- \expandafter\def\csname simpleicon@octanerendericon\endcsname {\simpleiconsmap\symbol{"F18A}}
- \expandafter\def\csname simpleicon@octaveicon\endcsname {\simpleiconsmap\symbol{"F18B}}
- \expandafter\def\csname simpleicon@octobercmsicon\endcsname {\simpleiconsmap\symbol{"F18C}}
- \expandafter\def\csname simpleicon@octoprinticon\endcsname {\simpleiconsmap\symbol{"F18D}}
- \expandafter\def\csname simpleicon@octopusdeployicon\endcsname {\simpleiconsmap\symbol{"F18E}}
- \expandafter\def\csname simpleicon@oculusicon\endcsname {\simpleiconsmap\symbol{"F18F}}
- \expandafter\def\csname simpleicon@odnoklassnikiicon\endcsname {\simpleiconsmap\symbol{"F190}}
- \expandafter\def\csname simpleicon@odooicon\endcsname {\simpleiconsmap\symbol{"F191}}
- \expandafter\def\csname simpleicon@odyseeicon\endcsname {\simpleiconsmap\symbol{"F192}}
- \expandafter\def\csname simpleicon@ohdearicon\endcsname {\simpleiconsmap\symbol{"F193}}
- \expandafter\def\csname simpleicon@okcupidicon\endcsname {\simpleiconsmap\symbol{"F194}}
- \expandafter\def\csname simpleicon@oktaicon\endcsname {\simpleiconsmap\symbol{"F195}}
- \expandafter\def\csname simpleicon@oneplusicon\endcsname {\simpleiconsmap\symbol{"F196}}
- \expandafter\def\csname simpleicon@onlyfansicon\endcsname {\simpleiconsmap\symbol{"F197}}
- \expandafter\def\csname simpleicon@onlyofficeicon\endcsname {\simpleiconsmap\symbol{"F198}}
- \expandafter\def\csname simpleicon@onnxicon\endcsname {\simpleiconsmap\symbol{"F199}}
- \expandafter\def\csname simpleicon@onstaricon\endcsname {\simpleiconsmap\symbol{"F19A}}
- \expandafter\def\csname simpleicon@opelicon\endcsname {\simpleiconsmap\symbol{"F19B}}
- \expandafter\def\csname simpleicon@openaccessicon\endcsname {\simpleiconsmap\symbol{"F19C}}
- \expandafter\def\csname simpleicon@openaiicon\endcsname {\simpleiconsmap\symbol{"F19D}}
- \expandafter\def\csname simpleicon@openaigymicon\endcsname {\simpleiconsmap\symbol{"F19E}}
- \expandafter\def\csname simpleicon@openapiinitiativeicon\endcsname {\simpleiconsmap\symbol{"F19F}}
- \expandafter\def\csname simpleicon@openbadgesicon\endcsname {\simpleiconsmap\symbol{"F1A0}}
- \expandafter\def\csname simpleicon@openbsdicon\endcsname {\simpleiconsmap\symbol{"F1A1}}
- \expandafter\def\csname simpleicon@openbugbountyicon\endcsname {\simpleiconsmap\symbol{"F1A2}}
- \expandafter\def\csname simpleicon@opencollectiveicon\endcsname {\simpleiconsmap\symbol{"F1A3}}
- \expandafter\def\csname simpleicon@opencontainersinitiativeicon\endcsname {\simpleiconsmap\symbol{"F1A4}}
- \expandafter\def\csname simpleicon@opencvicon\endcsname {\simpleiconsmap\symbol{"F1A5}}
- \expandafter\def\csname simpleicon@openfaasicon\endcsname {\simpleiconsmap\symbol{"F1A6}}
- \expandafter\def\csname simpleicon@openglicon\endcsname {\simpleiconsmap\symbol{"F1A7}}
- \expandafter\def\csname simpleicon@openhabicon\endcsname {\simpleiconsmap\symbol{"F1A8}}
- \expandafter\def\csname simpleicon@openidicon\endcsname {\simpleiconsmap\symbol{"F1A9}}
- \expandafter\def\csname simpleicon@openjdkicon\endcsname {\simpleiconsmap\symbol{"F1AA}}
- \expandafter\def\csname simpleicon@openjsfoundationicon\endcsname {\simpleiconsmap\symbol{"F1AB}}
- \expandafter\def\csname simpleicon@openlayersicon\endcsname {\simpleiconsmap\symbol{"F1AC}}
- \expandafter\def\csname simpleicon@openmediavaulticon\endcsname {\simpleiconsmap\symbol{"F1AD}}
- \expandafter\def\csname simpleicon@openminedicon\endcsname {\simpleiconsmap\symbol{"F1AE}}
- \expandafter\def\csname simpleicon@opennebulaicon\endcsname {\simpleiconsmap\symbol{"F1AF}}
- \expandafter\def\csname simpleicon@openprojecticon\endcsname {\simpleiconsmap\symbol{"F1B0}}
- \expandafter\def\csname simpleicon@openscadicon\endcsname {\simpleiconsmap\symbol{"F1B1}}
- \expandafter\def\csname simpleicon@openseaicon\endcsname {\simpleiconsmap\symbol{"F1B2}}
- \expandafter\def\csname simpleicon@opensearchicon\endcsname {\simpleiconsmap\symbol{"F1B3}}
- \expandafter\def\csname simpleicon@opensourcehardwareicon\endcsname {\simpleiconsmap\symbol{"F1B4}}
- \expandafter\def\csname simpleicon@opensourceinitiativeicon\endcsname {\simpleiconsmap\symbol{"F1B5}}
- \expandafter\def\csname simpleicon@opensslicon\endcsname {\simpleiconsmap\symbol{"F1B6}}
- \expandafter\def\csname simpleicon@openstackicon\endcsname {\simpleiconsmap\symbol{"F1B7}}
- \expandafter\def\csname simpleicon@openstreetmapicon\endcsname {\simpleiconsmap\symbol{"F1B8}}
- \expandafter\def\csname simpleicon@opensuseicon\endcsname {\simpleiconsmap\symbol{"F1B9}}
- \expandafter\def\csname simpleicon@opentelemetryicon\endcsname {\simpleiconsmap\symbol{"F1BA}}
- \expandafter\def\csname simpleicon@opentexticon\endcsname {\simpleiconsmap\symbol{"F1BB}}
- \expandafter\def\csname simpleicon@opentofuicon\endcsname {\simpleiconsmap\symbol{"F1BC}}
- \expandafter\def\csname simpleicon@openverseicon\endcsname {\simpleiconsmap\symbol{"F1BD}}
- \expandafter\def\csname simpleicon@openvpnicon\endcsname {\simpleiconsmap\symbol{"F1BE}}
- \expandafter\def\csname simpleicon@openwrticon\endcsname {\simpleiconsmap\symbol{"F1BF}}
- \expandafter\def\csname simpleicon@openzeppelinicon\endcsname {\simpleiconsmap\symbol{"F1C0}}
- \expandafter\def\csname simpleicon@openzfsicon\endcsname {\simpleiconsmap\symbol{"F1C1}}
- \expandafter\def\csname simpleicon@operaicon\endcsname {\simpleiconsmap\symbol{"F1C2}}
- \expandafter\def\csname simpleicon@operagxicon\endcsname {\simpleiconsmap\symbol{"F1C3}}
- \expandafter\def\csname simpleicon@opnsenseicon\endcsname {\simpleiconsmap\symbol{"F1C4}}
- \expandafter\def\csname simpleicon@oppoicon\endcsname {\simpleiconsmap\symbol{"F1C5}}
- \expandafter\def\csname simpleicon@opsgenieicon\endcsname {\simpleiconsmap\symbol{"F1C6}}
- \expandafter\def\csname simpleicon@opslevelicon\endcsname {\simpleiconsmap\symbol{"F1C7}}
- \expandafter\def\csname simpleicon@optimismicon\endcsname {\simpleiconsmap\symbol{"F1C8}}
- \expandafter\def\csname simpleicon@oracleicon\endcsname {\simpleiconsmap\symbol{"F1C9}}
- \expandafter\def\csname simpleicon@orangeicon\endcsname {\simpleiconsmap\symbol{"F1CA}}
- \expandafter\def\csname simpleicon@orcidicon\endcsname {\simpleiconsmap\symbol{"F1CB}}
- \expandafter\def\csname simpleicon@oreillyicon\endcsname {\simpleiconsmap\symbol{"F1CC}}
- \expandafter\def\csname simpleicon@orgicon\endcsname {\simpleiconsmap\symbol{"F1CD}}
- \expandafter\def\csname simpleicon@originicon\endcsname {\simpleiconsmap\symbol{"F1CE}}
- \expandafter\def\csname simpleicon@osanoicon\endcsname {\simpleiconsmap\symbol{"F1CF}}
- \expandafter\def\csname simpleicon@osficon\endcsname {\simpleiconsmap\symbol{"F1D0}}
- \expandafter\def\csname simpleicon@osgeoicon\endcsname {\simpleiconsmap\symbol{"F1D1}}
- \expandafter\def\csname simpleicon@oshkoshicon\endcsname {\simpleiconsmap\symbol{"F1D2}}
- \expandafter\def\csname simpleicon@osmcicon\endcsname {\simpleiconsmap\symbol{"F1D3}}
- \expandafter\def\csname simpleicon@osuicon\endcsname {\simpleiconsmap\symbol{"F1D4}}
- \expandafter\def\csname simpleicon@ottoicon\endcsname {\simpleiconsmap\symbol{"F1D5}}
- \expandafter\def\csname simpleicon@overcasticon\endcsname {\simpleiconsmap\symbol{"F1D6}}
- \expandafter\def\csname simpleicon@overleaficon\endcsname {\simpleiconsmap\symbol{"F1D7}}
- \expandafter\def\csname simpleicon@ovhicon\endcsname {\simpleiconsmap\symbol{"F1D8}}
- \expandafter\def\csname simpleicon@owaspicon\endcsname {\simpleiconsmap\symbol{"F1D9}}
- \expandafter\def\csname simpleicon@owncloudicon\endcsname {\simpleiconsmap\symbol{"F1DA}}
- \expandafter\def\csname simpleicon@oxygenicon\endcsname {\simpleiconsmap\symbol{"F1DB}}
- \expandafter\def\csname simpleicon@oyoicon\endcsname {\simpleiconsmap\symbol{"F1DC}}
- \expandafter\def\csname simpleicon@p5dotjsicon\endcsname {\simpleiconsmap\symbol{"F1DD}}
- \expandafter\def\csname simpleicon@packagisticon\endcsname {\simpleiconsmap\symbol{"F1DE}}
- \expandafter\def\csname simpleicon@packericon\endcsname {\simpleiconsmap\symbol{"F1DF}}
- \expandafter\def\csname simpleicon@packticon\endcsname {\simpleiconsmap\symbol{"F1E0}}
- \expandafter\def\csname simpleicon@paddleicon\endcsname {\simpleiconsmap\symbol{"F1E1}}
- \expandafter\def\csname simpleicon@paddlepaddleicon\endcsname {\simpleiconsmap\symbol{"F1E2}}
- \expandafter\def\csname simpleicon@paddypowericon\endcsname {\simpleiconsmap\symbol{"F1E3}}
- \expandafter\def\csname simpleicon@pagekiticon\endcsname {\simpleiconsmap\symbol{"F1E4}}
- \expandafter\def\csname simpleicon@pagerdutyicon\endcsname {\simpleiconsmap\symbol{"F1E5}}
- \expandafter\def\csname simpleicon@pagespeedinsightsicon\endcsname {\simpleiconsmap\symbol{"F1E6}}
- \expandafter\def\csname simpleicon@pagseguroicon\endcsname {\simpleiconsmap\symbol{"F1E7}}
- \expandafter\def\csname simpleicon@palantiricon\endcsname {\simpleiconsmap\symbol{"F1E8}}
- \expandafter\def\csname simpleicon@paloaltonetworksicon\endcsname {\simpleiconsmap\symbol{"F1E9}}
- \expandafter\def\csname simpleicon@paloaltosoftwareicon\endcsname {\simpleiconsmap\symbol{"F1EA}}
- \expandafter\def\csname simpleicon@panasonicicon\endcsname {\simpleiconsmap\symbol{"F1EB}}
- \expandafter\def\csname simpleicon@pandasicon\endcsname {\simpleiconsmap\symbol{"F1EC}}
- \expandafter\def\csname simpleicon@pandoraicon\endcsname {\simpleiconsmap\symbol{"F1ED}}
- \expandafter\def\csname simpleicon@pantheonicon\endcsname {\simpleiconsmap\symbol{"F1EE}}
- \expandafter\def\csname simpleicon@paperlessngxicon\endcsname {\simpleiconsmap\symbol{"F1EF}}
- \expandafter\def\csname simpleicon@paperspaceicon\endcsname {\simpleiconsmap\symbol{"F1F0}}
- \expandafter\def\csname simpleicon@paperswithcodeicon\endcsname {\simpleiconsmap\symbol{"F1F1}}
- \expandafter\def\csname simpleicon@paramountplusicon\endcsname {\simpleiconsmap\symbol{"F1F2}}
- \expandafter\def\csname simpleicon@paritysubstrateicon\endcsname {\simpleiconsmap\symbol{"F1F3}}
- \expandafter\def\csname simpleicon@parrotsecurityicon\endcsname {\simpleiconsmap\symbol{"F1F4}}
- \expandafter\def\csname simpleicon@parsedotlyicon\endcsname {\simpleiconsmap\symbol{"F1F5}}
- \expandafter\def\csname simpleicon@passporticon\endcsname {\simpleiconsmap\symbol{"F1F6}}
- \expandafter\def\csname simpleicon@pastebinicon\endcsname {\simpleiconsmap\symbol{"F1F7}}
- \expandafter\def\csname simpleicon@patreonicon\endcsname {\simpleiconsmap\symbol{"F1F8}}
- \expandafter\def\csname simpleicon@paychexicon\endcsname {\simpleiconsmap\symbol{"F1F9}}
- \expandafter\def\csname simpleicon@payhipicon\endcsname {\simpleiconsmap\symbol{"F1FA}}
- \expandafter\def\csname simpleicon@payloadcmsicon\endcsname {\simpleiconsmap\symbol{"F1FB}}
- \expandafter\def\csname simpleicon@payoneericon\endcsname {\simpleiconsmap\symbol{"F1FC}}
- \expandafter\def\csname simpleicon@paypalicon\endcsname {\simpleiconsmap\symbol{"F1FD}}
- \expandafter\def\csname simpleicon@paytmicon\endcsname {\simpleiconsmap\symbol{"F1FE}}
- \expandafter\def\csname simpleicon@pcgamingwikiicon\endcsname {\simpleiconsmap\symbol{"F1FF}}
- \expandafter\def\csname simpleicon@pdmicon\endcsname {\simpleiconsmap\symbol{"F200}}
- \expandafter\def\csname simpleicon@pdqicon\endcsname {\simpleiconsmap\symbol{"F201}}
- \expandafter\def\csname simpleicon@peakdesignicon\endcsname {\simpleiconsmap\symbol{"F202}}
- \expandafter\def\csname simpleicon@pearsonicon\endcsname {\simpleiconsmap\symbol{"F203}}
- \expandafter\def\csname simpleicon@peerlisticon\endcsname {\simpleiconsmap\symbol{"F204}}
- \expandafter\def\csname simpleicon@peertubeicon\endcsname {\simpleiconsmap\symbol{"F205}}
- \expandafter\def\csname simpleicon@pegasusairlinesicon\endcsname {\simpleiconsmap\symbol{"F206}}
- \expandafter\def\csname simpleicon@pelicanicon\endcsname {\simpleiconsmap\symbol{"F207}}
- \expandafter\def\csname simpleicon@pelotonicon\endcsname {\simpleiconsmap\symbol{"F208}}
- \expandafter\def\csname simpleicon@pennyicon\endcsname {\simpleiconsmap\symbol{"F209}}
- \expandafter\def\csname simpleicon@penpoticon\endcsname {\simpleiconsmap\symbol{"F20A}}
- \expandafter\def\csname simpleicon@percyicon\endcsname {\simpleiconsmap\symbol{"F20B}}
- \expandafter\def\csname simpleicon@perforceicon\endcsname {\simpleiconsmap\symbol{"F20C}}
- \expandafter\def\csname simpleicon@perlicon\endcsname {\simpleiconsmap\symbol{"F20D}}
- \expandafter\def\csname simpleicon@perplexityicon\endcsname {\simpleiconsmap\symbol{"F20E}}
- \expandafter\def\csname simpleicon@persistenticon\endcsname {\simpleiconsmap\symbol{"F20F}}
- \expandafter\def\csname simpleicon@personioicon\endcsname {\simpleiconsmap\symbol{"F210}}
- \expandafter\def\csname simpleicon@petsathomeicon\endcsname {\simpleiconsmap\symbol{"F211}}
- \expandafter\def\csname simpleicon@peugeoticon\endcsname {\simpleiconsmap\symbol{"F212}}
- \expandafter\def\csname simpleicon@pexelsicon\endcsname {\simpleiconsmap\symbol{"F213}}
- \expandafter\def\csname simpleicon@pfsenseicon\endcsname {\simpleiconsmap\symbol{"F214}}
- \expandafter\def\csname simpleicon@phabricatoricon\endcsname {\simpleiconsmap\symbol{"F215}}
- \expandafter\def\csname simpleicon@philipshueicon\endcsname {\simpleiconsmap\symbol{"F216}}
- \expandafter\def\csname simpleicon@phoenixframeworkicon\endcsname {\simpleiconsmap\symbol{"F217}}
- \expandafter\def\csname simpleicon@phonepeicon\endcsname {\simpleiconsmap\symbol{"F218}}
- \expandafter\def\csname simpleicon@phosphoriconsicon\endcsname {\simpleiconsmap\symbol{"F219}}
- \expandafter\def\csname simpleicon@photobucketicon\endcsname {\simpleiconsmap\symbol{"F21A}}
- \expandafter\def\csname simpleicon@photocrowdicon\endcsname {\simpleiconsmap\symbol{"F21B}}
- \expandafter\def\csname simpleicon@photonicon\endcsname {\simpleiconsmap\symbol{"F21C}}
- \expandafter\def\csname simpleicon@photopeaicon\endcsname {\simpleiconsmap\symbol{"F21D}}
- \expandafter\def\csname simpleicon@phpicon\endcsname {\simpleiconsmap\symbol{"F21E}}
- \expandafter\def\csname simpleicon@phpmyadminicon\endcsname {\simpleiconsmap\symbol{"F21F}}
- \expandafter\def\csname simpleicon@phpstormicon\endcsname {\simpleiconsmap\symbol{"F220}}
- \expandafter\def\csname simpleicon@piaggiogroupicon\endcsname {\simpleiconsmap\symbol{"F221}}
- \expandafter\def\csname simpleicon@piaproicon\endcsname {\simpleiconsmap\symbol{"F222}}
- \expandafter\def\csname simpleicon@picardsurgelesicon\endcsname {\simpleiconsmap\symbol{"F223}}
- \expandafter\def\csname simpleicon@picartodottvicon\endcsname {\simpleiconsmap\symbol{"F224}}
- \expandafter\def\csname simpleicon@picnicicon\endcsname {\simpleiconsmap\symbol{"F225}}
- \expandafter\def\csname simpleicon@picpayicon\endcsname {\simpleiconsmap\symbol{"F226}}
- \expandafter\def\csname simpleicon@picrewicon\endcsname {\simpleiconsmap\symbol{"F227}}
- \expandafter\def\csname simpleicon@picxyicon\endcsname {\simpleiconsmap\symbol{"F228}}
- \expandafter\def\csname simpleicon@piholeicon\endcsname {\simpleiconsmap\symbol{"F229}}
- \expandafter\def\csname simpleicon@pimcoreicon\endcsname {\simpleiconsmap\symbol{"F22A}}
- \expandafter\def\csname simpleicon@pinboardicon\endcsname {\simpleiconsmap\symbol{"F22B}}
- \expandafter\def\csname simpleicon@pinescripticon\endcsname {\simpleiconsmap\symbol{"F22C}}
- \expandafter\def\csname simpleicon@pinetworkicon\endcsname {\simpleiconsmap\symbol{"F22D}}
- \expandafter\def\csname simpleicon@pingdomicon\endcsname {\simpleiconsmap\symbol{"F22E}}
- \expandafter\def\csname simpleicon@pinoicon\endcsname {\simpleiconsmap\symbol{"F22F}}
- \expandafter\def\csname simpleicon@pinteresticon\endcsname {\simpleiconsmap\symbol{"F230}}
- \expandafter\def\csname simpleicon@pioneerdjicon\endcsname {\simpleiconsmap\symbol{"F231}}
- \expandafter\def\csname simpleicon@pipedicon\endcsname {\simpleiconsmap\symbol{"F232}}
- \expandafter\def\csname simpleicon@pipxicon\endcsname {\simpleiconsmap\symbol{"F233}}
- \expandafter\def\csname simpleicon@pivotaltrackericon\endcsname {\simpleiconsmap\symbol{"F234}}
- \expandafter\def\csname simpleicon@piwigoicon\endcsname {\simpleiconsmap\symbol{"F235}}
- \expandafter\def\csname simpleicon@pixicon\endcsname {\simpleiconsmap\symbol{"F236}}
- \expandafter\def\csname simpleicon@pixabayicon\endcsname {\simpleiconsmap\symbol{"F237}}
- \expandafter\def\csname simpleicon@pixelfedicon\endcsname {\simpleiconsmap\symbol{"F238}}
- \expandafter\def\csname simpleicon@pixivicon\endcsname {\simpleiconsmap\symbol{"F239}}
- \expandafter\def\csname simpleicon@pixlricon\endcsname {\simpleiconsmap\symbol{"F23A}}
- \expandafter\def\csname simpleicon@pkgsrcicon\endcsname {\simpleiconsmap\symbol{"F23B}}
- \expandafter\def\csname simpleicon@planeticon\endcsname {\simpleiconsmap\symbol{"F23C}}
- \expandafter\def\csname simpleicon@planetscaleicon\endcsname {\simpleiconsmap\symbol{"F23D}}
- \expandafter\def\csname simpleicon@plangridicon\endcsname {\simpleiconsmap\symbol{"F23E}}
- \expandafter\def\csname simpleicon@platformdotshicon\endcsname {\simpleiconsmap\symbol{"F23F}}
- \expandafter\def\csname simpleicon@platformioicon\endcsname {\simpleiconsmap\symbol{"F240}}
- \expandafter\def\csname simpleicon@platziicon\endcsname {\simpleiconsmap\symbol{"F241}}
- \expandafter\def\csname simpleicon@plausibleanalyticsicon\endcsname {\simpleiconsmap\symbol{"F242}}
- \expandafter\def\csname simpleicon@playcanvasicon\endcsname {\simpleiconsmap\symbol{"F243}}
- \expandafter\def\csname simpleicon@playerdotmeicon\endcsname {\simpleiconsmap\symbol{"F244}}
- \expandafter\def\csname simpleicon@playerfmicon\endcsname {\simpleiconsmap\symbol{"F245}}
- \expandafter\def\csname simpleicon@playstationicon\endcsname {\simpleiconsmap\symbol{"F246}}
- \expandafter\def\csname simpleicon@playstation2icon\endcsname {\simpleiconsmap\symbol{"F247}}
- \expandafter\def\csname simpleicon@playstation3icon\endcsname {\simpleiconsmap\symbol{"F248}}
- \expandafter\def\csname simpleicon@playstation4icon\endcsname {\simpleiconsmap\symbol{"F249}}
- \expandafter\def\csname simpleicon@playstation5icon\endcsname {\simpleiconsmap\symbol{"F24A}}
+ \expandafter\def\csname simpleicon@kdeplasmaicon\endcsname {\simpleiconsmap\symbol{"EFB8}}
+ \expandafter\def\csname simpleicon@kedroicon\endcsname {\simpleiconsmap\symbol{"EFB9}}
+ \expandafter\def\csname simpleicon@keeneticicon\endcsname {\simpleiconsmap\symbol{"EFBA}}
+ \expandafter\def\csname simpleicon@keepachangelogicon\endcsname {\simpleiconsmap\symbol{"EFBB}}
+ \expandafter\def\csname simpleicon@keepassxcicon\endcsname {\simpleiconsmap\symbol{"EFBC}}
+ \expandafter\def\csname simpleicon@keewebicon\endcsname {\simpleiconsmap\symbol{"EFBD}}
+ \expandafter\def\csname simpleicon@kenticoicon\endcsname {\simpleiconsmap\symbol{"EFBE}}
+ \expandafter\def\csname simpleicon@kerasicon\endcsname {\simpleiconsmap\symbol{"EFBF}}
+ \expandafter\def\csname simpleicon@keybaseicon\endcsname {\simpleiconsmap\symbol{"EFC0}}
+ \expandafter\def\csname simpleicon@keycdnicon\endcsname {\simpleiconsmap\symbol{"EFC1}}
+ \expandafter\def\csname simpleicon@keycloakicon\endcsname {\simpleiconsmap\symbol{"EFC2}}
+ \expandafter\def\csname simpleicon@keystoneicon\endcsname {\simpleiconsmap\symbol{"EFC3}}
+ \expandafter\def\csname simpleicon@kfcicon\endcsname {\simpleiconsmap\symbol{"EFC4}}
+ \expandafter\def\csname simpleicon@khanacademyicon\endcsname {\simpleiconsmap\symbol{"EFC5}}
+ \expandafter\def\csname simpleicon@khronosgroupicon\endcsname {\simpleiconsmap\symbol{"EFC6}}
+ \expandafter\def\csname simpleicon@kiaicon\endcsname {\simpleiconsmap\symbol{"EFC7}}
+ \expandafter\def\csname simpleicon@kibanaicon\endcsname {\simpleiconsmap\symbol{"EFC8}}
+ \expandafter\def\csname simpleicon@kicadicon\endcsname {\simpleiconsmap\symbol{"EFC9}}
+ \expandafter\def\csname simpleicon@kickicon\endcsname {\simpleiconsmap\symbol{"EFCA}}
+ \expandafter\def\csname simpleicon@kickstartericon\endcsname {\simpleiconsmap\symbol{"EFCB}}
+ \expandafter\def\csname simpleicon@kikicon\endcsname {\simpleiconsmap\symbol{"EFCC}}
+ \expandafter\def\csname simpleicon@kingstontechnologyicon\endcsname {\simpleiconsmap\symbol{"EFCD}}
+ \expandafter\def\csname simpleicon@kinopoiskicon\endcsname {\simpleiconsmap\symbol{"EFCE}}
+ \expandafter\def\csname simpleicon@kinstaicon\endcsname {\simpleiconsmap\symbol{"EFCF}}
+ \expandafter\def\csname simpleicon@kirbyicon\endcsname {\simpleiconsmap\symbol{"EFD0}}
+ \expandafter\def\csname simpleicon@kiticon\endcsname {\simpleiconsmap\symbol{"EFD1}}
+ \expandafter\def\csname simpleicon@kitsuicon\endcsname {\simpleiconsmap\symbol{"EFD2}}
+ \expandafter\def\csname simpleicon@klarnaicon\endcsname {\simpleiconsmap\symbol{"EFD3}}
+ \expandafter\def\csname simpleicon@klmicon\endcsname {\simpleiconsmap\symbol{"EFD4}}
+ \expandafter\def\csname simpleicon@klookicon\endcsname {\simpleiconsmap\symbol{"EFD5}}
+ \expandafter\def\csname simpleicon@knativeicon\endcsname {\simpleiconsmap\symbol{"EFD6}}
+ \expandafter\def\csname simpleicon@knexdotjsicon\endcsname {\simpleiconsmap\symbol{"EFD7}}
+ \expandafter\def\csname simpleicon@knimeicon\endcsname {\simpleiconsmap\symbol{"EFD8}}
+ \expandafter\def\csname simpleicon@knipicon\endcsname {\simpleiconsmap\symbol{"EFD9}}
+ \expandafter\def\csname simpleicon@knowledgebaseicon\endcsname {\simpleiconsmap\symbol{"EFDA}}
+ \expandafter\def\csname simpleicon@knownicon\endcsname {\simpleiconsmap\symbol{"EFDB}}
+ \expandafter\def\csname simpleicon@koaicon\endcsname {\simpleiconsmap\symbol{"EFDC}}
+ \expandafter\def\csname simpleicon@kocicon\endcsname {\simpleiconsmap\symbol{"EFDD}}
+ \expandafter\def\csname simpleicon@kodakicon\endcsname {\simpleiconsmap\symbol{"EFDE}}
+ \expandafter\def\csname simpleicon@kodiicon\endcsname {\simpleiconsmap\symbol{"EFDF}}
+ \expandafter\def\csname simpleicon@koenigseggicon\endcsname {\simpleiconsmap\symbol{"EFE0}}
+ \expandafter\def\csname simpleicon@kofaxicon\endcsname {\simpleiconsmap\symbol{"EFE1}}
+ \expandafter\def\csname simpleicon@kofiicon\endcsname {\simpleiconsmap\symbol{"EFE2}}
+ \expandafter\def\csname simpleicon@komooticon\endcsname {\simpleiconsmap\symbol{"EFE3}}
+ \expandafter\def\csname simpleicon@konamiicon\endcsname {\simpleiconsmap\symbol{"EFE4}}
+ \expandafter\def\csname simpleicon@kongicon\endcsname {\simpleiconsmap\symbol{"EFE5}}
+ \expandafter\def\csname simpleicon@kongregateicon\endcsname {\simpleiconsmap\symbol{"EFE6}}
+ \expandafter\def\csname simpleicon@konvaicon\endcsname {\simpleiconsmap\symbol{"EFE7}}
+ \expandafter\def\csname simpleicon@kotlinicon\endcsname {\simpleiconsmap\symbol{"EFE8}}
+ \expandafter\def\csname simpleicon@koyebicon\endcsname {\simpleiconsmap\symbol{"EFE9}}
+ \expandafter\def\csname simpleicon@kritaicon\endcsname {\simpleiconsmap\symbol{"EFEA}}
+ \expandafter\def\csname simpleicon@ktmicon\endcsname {\simpleiconsmap\symbol{"EFEB}}
+ \expandafter\def\csname simpleicon@ktoricon\endcsname {\simpleiconsmap\symbol{"EFEC}}
+ \expandafter\def\csname simpleicon@kuaishouicon\endcsname {\simpleiconsmap\symbol{"EFED}}
+ \expandafter\def\csname simpleicon@kubernetesicon\endcsname {\simpleiconsmap\symbol{"EFEE}}
+ \expandafter\def\csname simpleicon@kubuntuicon\endcsname {\simpleiconsmap\symbol{"EFEF}}
+ \expandafter\def\csname simpleicon@kucoinicon\endcsname {\simpleiconsmap\symbol{"EFF0}}
+ \expandafter\def\csname simpleicon@kumaicon\endcsname {\simpleiconsmap\symbol{"EFF1}}
+ \expandafter\def\csname simpleicon@kununuicon\endcsname {\simpleiconsmap\symbol{"EFF2}}
+ \expandafter\def\csname simpleicon@kuulaicon\endcsname {\simpleiconsmap\symbol{"EFF3}}
+ \expandafter\def\csname simpleicon@kxicon\endcsname {\simpleiconsmap\symbol{"EFF4}}
+ \expandafter\def\csname simpleicon@kyoceraicon\endcsname {\simpleiconsmap\symbol{"EFF5}}
+ \expandafter\def\csname simpleicon@labviewicon\endcsname {\simpleiconsmap\symbol{"EFF6}}
+ \expandafter\def\csname simpleicon@ladaicon\endcsname {\simpleiconsmap\symbol{"EFF7}}
+ \expandafter\def\csname simpleicon@lamborghiniicon\endcsname {\simpleiconsmap\symbol{"EFF8}}
+ \expandafter\def\csname simpleicon@landrovericon\endcsname {\simpleiconsmap\symbol{"EFF9}}
+ \expandafter\def\csname simpleicon@langchainicon\endcsname {\simpleiconsmap\symbol{"EFFA}}
+ \expandafter\def\csname simpleicon@languagetoolicon\endcsname {\simpleiconsmap\symbol{"EFFB}}
+ \expandafter\def\csname simpleicon@lapceicon\endcsname {\simpleiconsmap\symbol{"EFFC}}
+ \expandafter\def\csname simpleicon@laragonicon\endcsname {\simpleiconsmap\symbol{"EFFD}}
+ \expandafter\def\csname simpleicon@laravelicon\endcsname {\simpleiconsmap\symbol{"EFFE}}
+ \expandafter\def\csname simpleicon@laravelhorizonicon\endcsname {\simpleiconsmap\symbol{"EFFF}}
+ \expandafter\def\csname simpleicon@laravelnovaicon\endcsname {\simpleiconsmap\symbol{"F000}}
+ \expandafter\def\csname simpleicon@lastdotfmicon\endcsname {\simpleiconsmap\symbol{"F001}}
+ \expandafter\def\csname simpleicon@lastpassicon\endcsname {\simpleiconsmap\symbol{"F002}}
+ \expandafter\def\csname simpleicon@latexicon\endcsname {\simpleiconsmap\symbol{"F003}}
+ \expandafter\def\csname simpleicon@launchpadicon\endcsname {\simpleiconsmap\symbol{"F004}}
+ \expandafter\def\csname simpleicon@lazarusicon\endcsname {\simpleiconsmap\symbol{"F005}}
+ \expandafter\def\csname simpleicon@lazyvimicon\endcsname {\simpleiconsmap\symbol{"F006}}
+ \expandafter\def\csname simpleicon@lbryicon\endcsname {\simpleiconsmap\symbol{"F007}}
+ \expandafter\def\csname simpleicon@leaderpriceicon\endcsname {\simpleiconsmap\symbol{"F008}}
+ \expandafter\def\csname simpleicon@leafleticon\endcsname {\simpleiconsmap\symbol{"F009}}
+ \expandafter\def\csname simpleicon@leagueoflegendsicon\endcsname {\simpleiconsmap\symbol{"F00A}}
+ \expandafter\def\csname simpleicon@leanpubicon\endcsname {\simpleiconsmap\symbol{"F00B}}
+ \expandafter\def\csname simpleicon@leetcodeicon\endcsname {\simpleiconsmap\symbol{"F00C}}
+ \expandafter\def\csname simpleicon@lefthookicon\endcsname {\simpleiconsmap\symbol{"F00D}}
+ \expandafter\def\csname simpleicon@legacygamesicon\endcsname {\simpleiconsmap\symbol{"F00E}}
+ \expandafter\def\csname simpleicon@leicaicon\endcsname {\simpleiconsmap\symbol{"F00F}}
+ \expandafter\def\csname simpleicon@lemmyicon\endcsname {\simpleiconsmap\symbol{"F010}}
+ \expandafter\def\csname simpleicon@lemonsqueezyicon\endcsname {\simpleiconsmap\symbol{"F011}}
+ \expandafter\def\csname simpleicon@lenovoicon\endcsname {\simpleiconsmap\symbol{"F012}}
+ \expandafter\def\csname simpleicon@lensicon\endcsname {\simpleiconsmap\symbol{"F013}}
+ \expandafter\def\csname simpleicon@leptosicon\endcsname {\simpleiconsmap\symbol{"F014}}
+ \expandafter\def\csname simpleicon@lequipeicon\endcsname {\simpleiconsmap\symbol{"F015}}
+ \expandafter\def\csname simpleicon@lernaicon\endcsname {\simpleiconsmap\symbol{"F016}}
+ \expandafter\def\csname simpleicon@leroymerlinicon\endcsname {\simpleiconsmap\symbol{"F017}}
+ \expandafter\def\csname simpleicon@leslibrairesicon\endcsname {\simpleiconsmap\symbol{"F018}}
+ \expandafter\def\csname simpleicon@lessicon\endcsname {\simpleiconsmap\symbol{"F019}}
+ \expandafter\def\csname simpleicon@letsencrypticon\endcsname {\simpleiconsmap\symbol{"F01A}}
+ \expandafter\def\csname simpleicon@letterboxdicon\endcsname {\simpleiconsmap\symbol{"F01B}}
+ \expandafter\def\csname simpleicon@levelsdotfyiicon\endcsname {\simpleiconsmap\symbol{"F01C}}
+ \expandafter\def\csname simpleicon@lgicon\endcsname {\simpleiconsmap\symbol{"F01D}}
+ \expandafter\def\csname simpleicon@liberadotchaticon\endcsname {\simpleiconsmap\symbol{"F01E}}
+ \expandafter\def\csname simpleicon@liberapayicon\endcsname {\simpleiconsmap\symbol{"F01F}}
+ \expandafter\def\csname simpleicon@librariesdotioicon\endcsname {\simpleiconsmap\symbol{"F020}}
+ \expandafter\def\csname simpleicon@librarythingicon\endcsname {\simpleiconsmap\symbol{"F021}}
+ \expandafter\def\csname simpleicon@libreofficeicon\endcsname {\simpleiconsmap\symbol{"F022}}
+ \expandafter\def\csname simpleicon@libreofficebaseicon\endcsname {\simpleiconsmap\symbol{"F023}}
+ \expandafter\def\csname simpleicon@libreofficecalcicon\endcsname {\simpleiconsmap\symbol{"F024}}
+ \expandafter\def\csname simpleicon@libreofficedrawicon\endcsname {\simpleiconsmap\symbol{"F025}}
+ \expandafter\def\csname simpleicon@libreofficeimpressicon\endcsname {\simpleiconsmap\symbol{"F026}}
+ \expandafter\def\csname simpleicon@libreofficemathicon\endcsname {\simpleiconsmap\symbol{"F027}}
+ \expandafter\def\csname simpleicon@libreofficewritericon\endcsname {\simpleiconsmap\symbol{"F028}}
+ \expandafter\def\csname simpleicon@libretranslateicon\endcsname {\simpleiconsmap\symbol{"F029}}
+ \expandafter\def\csname simpleicon@libretubeicon\endcsname {\simpleiconsmap\symbol{"F02A}}
+ \expandafter\def\csname simpleicon@librewolficon\endcsname {\simpleiconsmap\symbol{"F02B}}
+ \expandafter\def\csname simpleicon@libuvicon\endcsname {\simpleiconsmap\symbol{"F02C}}
+ \expandafter\def\csname simpleicon@lichessicon\endcsname {\simpleiconsmap\symbol{"F02D}}
+ \expandafter\def\csname simpleicon@lidlicon\endcsname {\simpleiconsmap\symbol{"F02E}}
+ \expandafter\def\csname simpleicon@lifxicon\endcsname {\simpleiconsmap\symbol{"F02F}}
+ \expandafter\def\csname simpleicon@lightburnicon\endcsname {\simpleiconsmap\symbol{"F030}}
+ \expandafter\def\csname simpleicon@lighthouseicon\endcsname {\simpleiconsmap\symbol{"F031}}
+ \expandafter\def\csname simpleicon@lightningicon\endcsname {\simpleiconsmap\symbol{"F032}}
+ \expandafter\def\csname simpleicon@limesurveyicon\endcsname {\simpleiconsmap\symbol{"F033}}
+ \expandafter\def\csname simpleicon@lineicon\endcsname {\simpleiconsmap\symbol{"F034}}
+ \expandafter\def\csname simpleicon@lineageosicon\endcsname {\simpleiconsmap\symbol{"F035}}
+ \expandafter\def\csname simpleicon@linearicon\endcsname {\simpleiconsmap\symbol{"F036}}
+ \expandafter\def\csname simpleicon@liningicon\endcsname {\simpleiconsmap\symbol{"F037}}
+ \expandafter\def\csname simpleicon@linkedinicon\endcsname {\simpleiconsmap\symbol{"F038}}
+ \expandafter\def\csname simpleicon@linkerdicon\endcsname {\simpleiconsmap\symbol{"F039}}
+ \expandafter\def\csname simpleicon@linkfireicon\endcsname {\simpleiconsmap\symbol{"F03A}}
+ \expandafter\def\csname simpleicon@linksysicon\endcsname {\simpleiconsmap\symbol{"F03B}}
+ \expandafter\def\csname simpleicon@linktreeicon\endcsname {\simpleiconsmap\symbol{"F03C}}
+ \expandafter\def\csname simpleicon@lintcodeicon\endcsname {\simpleiconsmap\symbol{"F03D}}
+ \expandafter\def\csname simpleicon@linuxicon\endcsname {\simpleiconsmap\symbol{"F03E}}
+ \expandafter\def\csname simpleicon@linuxcontainersicon\endcsname {\simpleiconsmap\symbol{"F03F}}
+ \expandafter\def\csname simpleicon@linuxfoundationicon\endcsname {\simpleiconsmap\symbol{"F040}}
+ \expandafter\def\csname simpleicon@linuxminticon\endcsname {\simpleiconsmap\symbol{"F041}}
+ \expandafter\def\csname simpleicon@linuxprofessionalinstituteicon\endcsname {\simpleiconsmap\symbol{"F042}}
+ \expandafter\def\csname simpleicon@linuxservericon\endcsname {\simpleiconsmap\symbol{"F043}}
+ \expandafter\def\csname simpleicon@lionairicon\endcsname {\simpleiconsmap\symbol{"F044}}
+ \expandafter\def\csname simpleicon@liquibaseicon\endcsname {\simpleiconsmap\symbol{"F045}}
+ \expandafter\def\csname simpleicon@listmonkicon\endcsname {\simpleiconsmap\symbol{"F046}}
+ \expandafter\def\csname simpleicon@liticon\endcsname {\simpleiconsmap\symbol{"F047}}
+ \expandafter\def\csname simpleicon@litecoinicon\endcsname {\simpleiconsmap\symbol{"F048}}
+ \expandafter\def\csname simpleicon@literalicon\endcsname {\simpleiconsmap\symbol{"F049}}
+ \expandafter\def\csname simpleicon@litiengineicon\endcsname {\simpleiconsmap\symbol{"F04A}}
+ \expandafter\def\csname simpleicon@livechaticon\endcsname {\simpleiconsmap\symbol{"F04B}}
+ \expandafter\def\csname simpleicon@livejournalicon\endcsname {\simpleiconsmap\symbol{"F04C}}
+ \expandafter\def\csname simpleicon@livewireicon\endcsname {\simpleiconsmap\symbol{"F04D}}
+ \expandafter\def\csname simpleicon@llvmicon\endcsname {\simpleiconsmap\symbol{"F04E}}
+ \expandafter\def\csname simpleicon@lmmsicon\endcsname {\simpleiconsmap\symbol{"F04F}}
+ \expandafter\def\csname simpleicon@lobstersicon\endcsname {\simpleiconsmap\symbol{"F050}}
+ \expandafter\def\csname simpleicon@localicon\endcsname {\simpleiconsmap\symbol{"F051}}
+ \expandafter\def\csname simpleicon@lodashicon\endcsname {\simpleiconsmap\symbol{"F052}}
+ \expandafter\def\csname simpleicon@logitechicon\endcsname {\simpleiconsmap\symbol{"F053}}
+ \expandafter\def\csname simpleicon@logitechgicon\endcsname {\simpleiconsmap\symbol{"F054}}
+ \expandafter\def\csname simpleicon@logmeinicon\endcsname {\simpleiconsmap\symbol{"F055}}
+ \expandafter\def\csname simpleicon@logseqicon\endcsname {\simpleiconsmap\symbol{"F056}}
+ \expandafter\def\csname simpleicon@logstashicon\endcsname {\simpleiconsmap\symbol{"F057}}
+ \expandafter\def\csname simpleicon@lookericon\endcsname {\simpleiconsmap\symbol{"F058}}
+ \expandafter\def\csname simpleicon@loomicon\endcsname {\simpleiconsmap\symbol{"F059}}
+ \expandafter\def\csname simpleicon@loopicon\endcsname {\simpleiconsmap\symbol{"F05A}}
+ \expandafter\def\csname simpleicon@loopbackicon\endcsname {\simpleiconsmap\symbol{"F05B}}
+ \expandafter\def\csname simpleicon@lootcrateicon\endcsname {\simpleiconsmap\symbol{"F05C}}
+ \expandafter\def\csname simpleicon@lospecicon\endcsname {\simpleiconsmap\symbol{"F05D}}
+ \expandafter\def\csname simpleicon@lotpolishairlinesicon\endcsname {\simpleiconsmap\symbol{"F05E}}
+ \expandafter\def\csname simpleicon@ltspiceicon\endcsname {\simpleiconsmap\symbol{"F05F}}
+ \expandafter\def\csname simpleicon@luaicon\endcsname {\simpleiconsmap\symbol{"F060}}
+ \expandafter\def\csname simpleicon@lubuntuicon\endcsname {\simpleiconsmap\symbol{"F061}}
+ \expandafter\def\csname simpleicon@luciaicon\endcsname {\simpleiconsmap\symbol{"F062}}
+ \expandafter\def\csname simpleicon@lucidicon\endcsname {\simpleiconsmap\symbol{"F063}}
+ \expandafter\def\csname simpleicon@lucideicon\endcsname {\simpleiconsmap\symbol{"F064}}
+ \expandafter\def\csname simpleicon@ludwigicon\endcsname {\simpleiconsmap\symbol{"F065}}
+ \expandafter\def\csname simpleicon@lufthansaicon\endcsname {\simpleiconsmap\symbol{"F066}}
+ \expandafter\def\csname simpleicon@lumenicon\endcsname {\simpleiconsmap\symbol{"F067}}
+ \expandafter\def\csname simpleicon@lunacyicon\endcsname {\simpleiconsmap\symbol{"F068}}
+ \expandafter\def\csname simpleicon@lutrisicon\endcsname {\simpleiconsmap\symbol{"F069}}
+ \expandafter\def\csname simpleicon@lydiaicon\endcsname {\simpleiconsmap\symbol{"F06A}}
+ \expandafter\def\csname simpleicon@lyfticon\endcsname {\simpleiconsmap\symbol{"F06B}}
+ \expandafter\def\csname simpleicon@maasicon\endcsname {\simpleiconsmap\symbol{"F06C}}
+ \expandafter\def\csname simpleicon@macosicon\endcsname {\simpleiconsmap\symbol{"F06D}}
+ \expandafter\def\csname simpleicon@macpawicon\endcsname {\simpleiconsmap\symbol{"F06E}}
+ \expandafter\def\csname simpleicon@macysicon\endcsname {\simpleiconsmap\symbol{"F06F}}
+ \expandafter\def\csname simpleicon@magasinsuicon\endcsname {\simpleiconsmap\symbol{"F070}}
+ \expandafter\def\csname simpleicon@magentoicon\endcsname {\simpleiconsmap\symbol{"F071}}
+ \expandafter\def\csname simpleicon@magicicon\endcsname {\simpleiconsmap\symbol{"F072}}
+ \expandafter\def\csname simpleicon@magiskicon\endcsname {\simpleiconsmap\symbol{"F073}}
+ \expandafter\def\csname simpleicon@mahindraicon\endcsname {\simpleiconsmap\symbol{"F074}}
+ \expandafter\def\csname simpleicon@mailboxdotorgicon\endcsname {\simpleiconsmap\symbol{"F075}}
+ \expandafter\def\csname simpleicon@mailchimpicon\endcsname {\simpleiconsmap\symbol{"F076}}
+ \expandafter\def\csname simpleicon@maildotcomicon\endcsname {\simpleiconsmap\symbol{"F077}}
+ \expandafter\def\csname simpleicon@maildotruicon\endcsname {\simpleiconsmap\symbol{"F078}}
+ \expandafter\def\csname simpleicon@mailgunicon\endcsname {\simpleiconsmap\symbol{"F079}}
+ \expandafter\def\csname simpleicon@mailtrapicon\endcsname {\simpleiconsmap\symbol{"F07A}}
+ \expandafter\def\csname simpleicon@mainwpicon\endcsname {\simpleiconsmap\symbol{"F07B}}
+ \expandafter\def\csname simpleicon@majorleaguehackingicon\endcsname {\simpleiconsmap\symbol{"F07C}}
+ \expandafter\def\csname simpleicon@makeicon\endcsname {\simpleiconsmap\symbol{"F07D}}
+ \expandafter\def\csname simpleicon@makerboticon\endcsname {\simpleiconsmap\symbol{"F07E}}
+ \expandafter\def\csname simpleicon@malticon\endcsname {\simpleiconsmap\symbol{"F07F}}
+ \expandafter\def\csname simpleicon@malwarebytesicon\endcsname {\simpleiconsmap\symbol{"F080}}
+ \expandafter\def\csname simpleicon@mambauiicon\endcsname {\simpleiconsmap\symbol{"F081}}
+ \expandafter\def\csname simpleicon@mampicon\endcsname {\simpleiconsmap\symbol{"F082}}
+ \expandafter\def\csname simpleicon@manicon\endcsname {\simpleiconsmap\symbol{"F083}}
+ \expandafter\def\csname simpleicon@manageiqicon\endcsname {\simpleiconsmap\symbol{"F084}}
+ \expandafter\def\csname simpleicon@manjaroicon\endcsname {\simpleiconsmap\symbol{"F085}}
+ \expandafter\def\csname simpleicon@mantineicon\endcsname {\simpleiconsmap\symbol{"F086}}
+ \expandafter\def\csname simpleicon@mapboxicon\endcsname {\simpleiconsmap\symbol{"F087}}
+ \expandafter\def\csname simpleicon@maplibreicon\endcsname {\simpleiconsmap\symbol{"F088}}
+ \expandafter\def\csname simpleicon@mariadbicon\endcsname {\simpleiconsmap\symbol{"F089}}
+ \expandafter\def\csname simpleicon@mariadbfoundationicon\endcsname {\simpleiconsmap\symbol{"F08A}}
+ \expandafter\def\csname simpleicon@markdownicon\endcsname {\simpleiconsmap\symbol{"F08B}}
+ \expandafter\def\csname simpleicon@marketoicon\endcsname {\simpleiconsmap\symbol{"F08C}}
+ \expandafter\def\csname simpleicon@markoicon\endcsname {\simpleiconsmap\symbol{"F08D}}
+ \expandafter\def\csname simpleicon@marriotticon\endcsname {\simpleiconsmap\symbol{"F08E}}
+ \expandafter\def\csname simpleicon@marvelappicon\endcsname {\simpleiconsmap\symbol{"F08F}}
+ \expandafter\def\csname simpleicon@maseratiicon\endcsname {\simpleiconsmap\symbol{"F090}}
+ \expandafter\def\csname simpleicon@mastercardicon\endcsname {\simpleiconsmap\symbol{"F091}}
+ \expandafter\def\csname simpleicon@mastercomfigicon\endcsname {\simpleiconsmap\symbol{"F092}}
+ \expandafter\def\csname simpleicon@mastodonicon\endcsname {\simpleiconsmap\symbol{"F093}}
+ \expandafter\def\csname simpleicon@materialdesignicon\endcsname {\simpleiconsmap\symbol{"F094}}
+ \expandafter\def\csname simpleicon@materialdesigniconsicon\endcsname {\simpleiconsmap\symbol{"F095}}
+ \expandafter\def\csname simpleicon@materialformkdocsicon\endcsname {\simpleiconsmap\symbol{"F096}}
+ \expandafter\def\csname simpleicon@matillionicon\endcsname {\simpleiconsmap\symbol{"F097}}
+ \expandafter\def\csname simpleicon@matomoicon\endcsname {\simpleiconsmap\symbol{"F098}}
+ \expandafter\def\csname simpleicon@matrixicon\endcsname {\simpleiconsmap\symbol{"F099}}
+ \expandafter\def\csname simpleicon@matterdotjsicon\endcsname {\simpleiconsmap\symbol{"F09A}}
+ \expandafter\def\csname simpleicon@mattermosticon\endcsname {\simpleiconsmap\symbol{"F09B}}
+ \expandafter\def\csname simpleicon@matterneticon\endcsname {\simpleiconsmap\symbol{"F09C}}
+ \expandafter\def\csname simpleicon@mauticicon\endcsname {\simpleiconsmap\symbol{"F09D}}
+ \expandafter\def\csname simpleicon@maxicon\endcsname {\simpleiconsmap\symbol{"F09E}}
+ \expandafter\def\csname simpleicon@maxplanckgesellschafticon\endcsname {\simpleiconsmap\symbol{"F09F}}
+ \expandafter\def\csname simpleicon@maytagicon\endcsname {\simpleiconsmap\symbol{"F0A0}}
+ \expandafter\def\csname simpleicon@mazdaicon\endcsname {\simpleiconsmap\symbol{"F0A1}}
+ \expandafter\def\csname simpleicon@mcafeeicon\endcsname {\simpleiconsmap\symbol{"F0A2}}
+ \expandafter\def\csname simpleicon@mcdonaldsicon\endcsname {\simpleiconsmap\symbol{"F0A3}}
+ \expandafter\def\csname simpleicon@mclarenicon\endcsname {\simpleiconsmap\symbol{"F0A4}}
+ \expandafter\def\csname simpleicon@mdbookicon\endcsname {\simpleiconsmap\symbol{"F0A5}}
+ \expandafter\def\csname simpleicon@mdnwebdocsicon\endcsname {\simpleiconsmap\symbol{"F0A6}}
+ \expandafter\def\csname simpleicon@mdxicon\endcsname {\simpleiconsmap\symbol{"F0A7}}
+ \expandafter\def\csname simpleicon@mediafireicon\endcsname {\simpleiconsmap\symbol{"F0A8}}
+ \expandafter\def\csname simpleicon@mediamarkticon\endcsname {\simpleiconsmap\symbol{"F0A9}}
+ \expandafter\def\csname simpleicon@mediapipeicon\endcsname {\simpleiconsmap\symbol{"F0AA}}
+ \expandafter\def\csname simpleicon@mediatekicon\endcsname {\simpleiconsmap\symbol{"F0AB}}
+ \expandafter\def\csname simpleicon@medibangpainticon\endcsname {\simpleiconsmap\symbol{"F0AC}}
+ \expandafter\def\csname simpleicon@mediumicon\endcsname {\simpleiconsmap\symbol{"F0AD}}
+ \expandafter\def\csname simpleicon@medusaicon\endcsname {\simpleiconsmap\symbol{"F0AE}}
+ \expandafter\def\csname simpleicon@meetupicon\endcsname {\simpleiconsmap\symbol{"F0AF}}
+ \expandafter\def\csname simpleicon@megaicon\endcsname {\simpleiconsmap\symbol{"F0B0}}
+ \expandafter\def\csname simpleicon@meilisearchicon\endcsname {\simpleiconsmap\symbol{"F0B1}}
+ \expandafter\def\csname simpleicon@meituanicon\endcsname {\simpleiconsmap\symbol{"F0B2}}
+ \expandafter\def\csname simpleicon@meizuicon\endcsname {\simpleiconsmap\symbol{"F0B3}}
+ \expandafter\def\csname simpleicon@mendeleyicon\endcsname {\simpleiconsmap\symbol{"F0B4}}
+ \expandafter\def\csname simpleicon@mentorcruiseicon\endcsname {\simpleiconsmap\symbol{"F0B5}}
+ \expandafter\def\csname simpleicon@mercadopagoicon\endcsname {\simpleiconsmap\symbol{"F0B6}}
+ \expandafter\def\csname simpleicon@mercedesicon\endcsname {\simpleiconsmap\symbol{"F0B7}}
+ \expandafter\def\csname simpleicon@merckicon\endcsname {\simpleiconsmap\symbol{"F0B8}}
+ \expandafter\def\csname simpleicon@mercurialicon\endcsname {\simpleiconsmap\symbol{"F0B9}}
+ \expandafter\def\csname simpleicon@mermaidicon\endcsname {\simpleiconsmap\symbol{"F0BA}}
+ \expandafter\def\csname simpleicon@messengericon\endcsname {\simpleiconsmap\symbol{"F0BB}}
+ \expandafter\def\csname simpleicon@metaicon\endcsname {\simpleiconsmap\symbol{"F0BC}}
+ \expandafter\def\csname simpleicon@metabaseicon\endcsname {\simpleiconsmap\symbol{"F0BD}}
+ \expandafter\def\csname simpleicon@metacriticicon\endcsname {\simpleiconsmap\symbol{"F0BE}}
+ \expandafter\def\csname simpleicon@metafiltericon\endcsname {\simpleiconsmap\symbol{"F0BF}}
+ \expandafter\def\csname simpleicon@metasploiticon\endcsname {\simpleiconsmap\symbol{"F0C0}}
+ \expandafter\def\csname simpleicon@meteoricon\endcsname {\simpleiconsmap\symbol{"F0C1}}
+ \expandafter\def\csname simpleicon@metroicon\endcsname {\simpleiconsmap\symbol{"F0C2}}
+ \expandafter\def\csname simpleicon@metrodelaciudaddemexicoicon\endcsname {\simpleiconsmap\symbol{"F0C3}}
+ \expandafter\def\csname simpleicon@metrodemadridicon\endcsname {\simpleiconsmap\symbol{"F0C4}}
+ \expandafter\def\csname simpleicon@metrodeparisicon\endcsname {\simpleiconsmap\symbol{"F0C5}}
+ \expandafter\def\csname simpleicon@meweicon\endcsname {\simpleiconsmap\symbol{"F0C6}}
+ \expandafter\def\csname simpleicon@mgicon\endcsname {\simpleiconsmap\symbol{"F0C7}}
+ \expandafter\def\csname simpleicon@microbiticon\endcsname {\simpleiconsmap\symbol{"F0C8}}
+ \expandafter\def\csname simpleicon@microdotblogicon\endcsname {\simpleiconsmap\symbol{"F0C9}}
+ \expandafter\def\csname simpleicon@microeditoricon\endcsname {\simpleiconsmap\symbol{"F0CA}}
+ \expandafter\def\csname simpleicon@microgeneticsicon\endcsname {\simpleiconsmap\symbol{"F0CB}}
+ \expandafter\def\csname simpleicon@micropythonicon\endcsname {\simpleiconsmap\symbol{"F0CC}}
+ \expandafter\def\csname simpleicon@microstationicon\endcsname {\simpleiconsmap\symbol{"F0CD}}
+ \expandafter\def\csname simpleicon@microstrategyicon\endcsname {\simpleiconsmap\symbol{"F0CE}}
+ \expandafter\def\csname simpleicon@midiicon\endcsname {\simpleiconsmap\symbol{"F0CF}}
+ \expandafter\def\csname simpleicon@migaduicon\endcsname {\simpleiconsmap\symbol{"F0D0}}
+ \expandafter\def\csname simpleicon@mihoyoicon\endcsname {\simpleiconsmap\symbol{"F0D1}}
+ \expandafter\def\csname simpleicon@mikrotikicon\endcsname {\simpleiconsmap\symbol{"F0D2}}
+ \expandafter\def\csname simpleicon@milanoteicon\endcsname {\simpleiconsmap\symbol{"F0D3}}
+ \expandafter\def\csname simpleicon@milvusicon\endcsname {\simpleiconsmap\symbol{"F0D4}}
+ \expandafter\def\csname simpleicon@mindsicon\endcsname {\simpleiconsmap\symbol{"F0D5}}
+ \expandafter\def\csname simpleicon@minetesticon\endcsname {\simpleiconsmap\symbol{"F0D6}}
+ \expandafter\def\csname simpleicon@mingww64icon\endcsname {\simpleiconsmap\symbol{"F0D7}}
+ \expandafter\def\csname simpleicon@miniicon\endcsname {\simpleiconsmap\symbol{"F0D8}}
+ \expandafter\def\csname simpleicon@minioicon\endcsname {\simpleiconsmap\symbol{"F0D9}}
+ \expandafter\def\csname simpleicon@mintlifyicon\endcsname {\simpleiconsmap\symbol{"F0DA}}
+ \expandafter\def\csname simpleicon@minutemailericon\endcsname {\simpleiconsmap\symbol{"F0DB}}
+ \expandafter\def\csname simpleicon@mirahezeicon\endcsname {\simpleiconsmap\symbol{"F0DC}}
+ \expandafter\def\csname simpleicon@miroicon\endcsname {\simpleiconsmap\symbol{"F0DD}}
+ \expandafter\def\csname simpleicon@misskeyicon\endcsname {\simpleiconsmap\symbol{"F0DE}}
+ \expandafter\def\csname simpleicon@mitsubishiicon\endcsname {\simpleiconsmap\symbol{"F0DF}}
+ \expandafter\def\csname simpleicon@mixicon\endcsname {\simpleiconsmap\symbol{"F0E0}}
+ \expandafter\def\csname simpleicon@mixcloudicon\endcsname {\simpleiconsmap\symbol{"F0E1}}
+ \expandafter\def\csname simpleicon@mixpanelicon\endcsname {\simpleiconsmap\symbol{"F0E2}}
+ \expandafter\def\csname simpleicon@mlbicon\endcsname {\simpleiconsmap\symbol{"F0E3}}
+ \expandafter\def\csname simpleicon@mlflowicon\endcsname {\simpleiconsmap\symbol{"F0E4}}
+ \expandafter\def\csname simpleicon@mobxicon\endcsname {\simpleiconsmap\symbol{"F0E5}}
+ \expandafter\def\csname simpleicon@mobxstatetreeicon\endcsname {\simpleiconsmap\symbol{"F0E6}}
+ \expandafter\def\csname simpleicon@mochaicon\endcsname {\simpleiconsmap\symbol{"F0E7}}
+ \expandafter\def\csname simpleicon@mockserviceworkericon\endcsname {\simpleiconsmap\symbol{"F0E8}}
+ \expandafter\def\csname simpleicon@modalicon\endcsname {\simpleiconsmap\symbol{"F0E9}}
+ \expandafter\def\csname simpleicon@modinicon\endcsname {\simpleiconsmap\symbol{"F0EA}}
+ \expandafter\def\csname simpleicon@modrinthicon\endcsname {\simpleiconsmap\symbol{"F0EB}}
+ \expandafter\def\csname simpleicon@modxicon\endcsname {\simpleiconsmap\symbol{"F0EC}}
+ \expandafter\def\csname simpleicon@moleculericon\endcsname {\simpleiconsmap\symbol{"F0ED}}
+ \expandafter\def\csname simpleicon@momenteoicon\endcsname {\simpleiconsmap\symbol{"F0EE}}
+ \expandafter\def\csname simpleicon@moneroicon\endcsname {\simpleiconsmap\symbol{"F0EF}}
+ \expandafter\def\csname simpleicon@moneygramicon\endcsname {\simpleiconsmap\symbol{"F0F0}}
+ \expandafter\def\csname simpleicon@mongodbicon\endcsname {\simpleiconsmap\symbol{"F0F1}}
+ \expandafter\def\csname simpleicon@mongooseicon\endcsname {\simpleiconsmap\symbol{"F0F2}}
+ \expandafter\def\csname simpleicon@mongoosedotwsicon\endcsname {\simpleiconsmap\symbol{"F0F3}}
+ \expandafter\def\csname simpleicon@monicaicon\endcsname {\simpleiconsmap\symbol{"F0F4}}
+ \expandafter\def\csname simpleicon@monkeytieicon\endcsname {\simpleiconsmap\symbol{"F0F5}}
+ \expandafter\def\csname simpleicon@monkeytypeicon\endcsname {\simpleiconsmap\symbol{"F0F6}}
+ \expandafter\def\csname simpleicon@monogameicon\endcsname {\simpleiconsmap\symbol{"F0F7}}
+ \expandafter\def\csname simpleicon@monoprixicon\endcsname {\simpleiconsmap\symbol{"F0F8}}
+ \expandafter\def\csname simpleicon@monstericon\endcsname {\simpleiconsmap\symbol{"F0F9}}
+ \expandafter\def\csname simpleicon@monzoicon\endcsname {\simpleiconsmap\symbol{"F0FA}}
+ \expandafter\def\csname simpleicon@mooicon\endcsname {\simpleiconsmap\symbol{"F0FB}}
+ \expandafter\def\csname simpleicon@moodleicon\endcsname {\simpleiconsmap\symbol{"F0FC}}
+ \expandafter\def\csname simpleicon@moonrepoicon\endcsname {\simpleiconsmap\symbol{"F0FD}}
+ \expandafter\def\csname simpleicon@moqicon\endcsname {\simpleiconsmap\symbol{"F0FE}}
+ \expandafter\def\csname simpleicon@moqupsicon\endcsname {\simpleiconsmap\symbol{"F0FF}}
+ \expandafter\def\csname simpleicon@morrisonsicon\endcsname {\simpleiconsmap\symbol{"F100}}
+ \expandafter\def\csname simpleicon@moscowmetroicon\endcsname {\simpleiconsmap\symbol{"F101}}
+ \expandafter\def\csname simpleicon@motorolaicon\endcsname {\simpleiconsmap\symbol{"F102}}
+ \expandafter\def\csname simpleicon@mozillaicon\endcsname {\simpleiconsmap\symbol{"F103}}
+ \expandafter\def\csname simpleicon@mpvicon\endcsname {\simpleiconsmap\symbol{"F104}}
+ \expandafter\def\csname simpleicon@mqtticon\endcsname {\simpleiconsmap\symbol{"F105}}
+ \expandafter\def\csname simpleicon@msiicon\endcsname {\simpleiconsmap\symbol{"F106}}
+ \expandafter\def\csname simpleicon@msibusinessicon\endcsname {\simpleiconsmap\symbol{"F107}}
+ \expandafter\def\csname simpleicon@mtaicon\endcsname {\simpleiconsmap\symbol{"F108}}
+ \expandafter\def\csname simpleicon@mtricon\endcsname {\simpleiconsmap\symbol{"F109}}
+ \expandafter\def\csname simpleicon@mubiicon\endcsname {\simpleiconsmap\symbol{"F10A}}
+ \expandafter\def\csname simpleicon@muiicon\endcsname {\simpleiconsmap\symbol{"F10B}}
+ \expandafter\def\csname simpleicon@mulesofticon\endcsname {\simpleiconsmap\symbol{"F10C}}
+ \expandafter\def\csname simpleicon@mullericon\endcsname {\simpleiconsmap\symbol{"F10D}}
+ \expandafter\def\csname simpleicon@multisimicon\endcsname {\simpleiconsmap\symbol{"F10E}}
+ \expandafter\def\csname simpleicon@mumbleicon\endcsname {\simpleiconsmap\symbol{"F10F}}
+ \expandafter\def\csname simpleicon@muoicon\endcsname {\simpleiconsmap\symbol{"F110}}
+ \expandafter\def\csname simpleicon@muralicon\endcsname {\simpleiconsmap\symbol{"F111}}
+ \expandafter\def\csname simpleicon@musescoreicon\endcsname {\simpleiconsmap\symbol{"F112}}
+ \expandafter\def\csname simpleicon@musicbrainzicon\endcsname {\simpleiconsmap\symbol{"F113}}
+ \expandafter\def\csname simpleicon@mxlinuxicon\endcsname {\simpleiconsmap\symbol{"F114}}
+ \expandafter\def\csname simpleicon@myanimelisticon\endcsname {\simpleiconsmap\symbol{"F115}}
+ \expandafter\def\csname simpleicon@mygeticon\endcsname {\simpleiconsmap\symbol{"F116}}
+ \expandafter\def\csname simpleicon@myobicon\endcsname {\simpleiconsmap\symbol{"F117}}
+ \expandafter\def\csname simpleicon@myspaceicon\endcsname {\simpleiconsmap\symbol{"F118}}
+ \expandafter\def\csname simpleicon@mysqlicon\endcsname {\simpleiconsmap\symbol{"F119}}
+ \expandafter\def\csname simpleicon@n26icon\endcsname {\simpleiconsmap\symbol{"F11A}}
+ \expandafter\def\csname simpleicon@n8nicon\endcsname {\simpleiconsmap\symbol{"F11B}}
+ \expandafter\def\csname simpleicon@namebaseicon\endcsname {\simpleiconsmap\symbol{"F11C}}
+ \expandafter\def\csname simpleicon@namecheapicon\endcsname {\simpleiconsmap\symbol{"F11D}}
+ \expandafter\def\csname simpleicon@namemcicon\endcsname {\simpleiconsmap\symbol{"F11E}}
+ \expandafter\def\csname simpleicon@namesiloicon\endcsname {\simpleiconsmap\symbol{"F11F}}
+ \expandafter\def\csname simpleicon@namuwikiicon\endcsname {\simpleiconsmap\symbol{"F120}}
+ \expandafter\def\csname simpleicon@nanoicon\endcsname {\simpleiconsmap\symbol{"F121}}
+ \expandafter\def\csname simpleicon@nanostoresicon\endcsname {\simpleiconsmap\symbol{"F122}}
+ \expandafter\def\csname simpleicon@nasaicon\endcsname {\simpleiconsmap\symbol{"F123}}
+ \expandafter\def\csname simpleicon@nationalgridicon\endcsname {\simpleiconsmap\symbol{"F124}}
+ \expandafter\def\csname simpleicon@nationalrailicon\endcsname {\simpleiconsmap\symbol{"F125}}
+ \expandafter\def\csname simpleicon@nativescripticon\endcsname {\simpleiconsmap\symbol{"F126}}
+ \expandafter\def\csname simpleicon@natsdotioicon\endcsname {\simpleiconsmap\symbol{"F127}}
+ \expandafter\def\csname simpleicon@navericon\endcsname {\simpleiconsmap\symbol{"F128}}
+ \expandafter\def\csname simpleicon@nbaicon\endcsname {\simpleiconsmap\symbol{"F129}}
+ \expandafter\def\csname simpleicon@nbbicon\endcsname {\simpleiconsmap\symbol{"F12A}}
+ \expandafter\def\csname simpleicon@nbcicon\endcsname {\simpleiconsmap\symbol{"F12B}}
+ \expandafter\def\csname simpleicon@ndricon\endcsname {\simpleiconsmap\symbol{"F12C}}
+ \expandafter\def\csname simpleicon@nearicon\endcsname {\simpleiconsmap\symbol{"F12D}}
+ \expandafter\def\csname simpleicon@necicon\endcsname {\simpleiconsmap\symbol{"F12E}}
+ \expandafter\def\csname simpleicon@neo4jicon\endcsname {\simpleiconsmap\symbol{"F12F}}
+ \expandafter\def\csname simpleicon@neovimicon\endcsname {\simpleiconsmap\symbol{"F130}}
+ \expandafter\def\csname simpleicon@neptuneicon\endcsname {\simpleiconsmap\symbol{"F131}}
+ \expandafter\def\csname simpleicon@nestjsicon\endcsname {\simpleiconsmap\symbol{"F132}}
+ \expandafter\def\csname simpleicon@netappicon\endcsname {\simpleiconsmap\symbol{"F133}}
+ \expandafter\def\csname simpleicon@netbsdicon\endcsname {\simpleiconsmap\symbol{"F134}}
+ \expandafter\def\csname simpleicon@netcupicon\endcsname {\simpleiconsmap\symbol{"F135}}
+ \expandafter\def\csname simpleicon@netdataicon\endcsname {\simpleiconsmap\symbol{"F136}}
+ \expandafter\def\csname simpleicon@neteasecloudmusicicon\endcsname {\simpleiconsmap\symbol{"F137}}
+ \expandafter\def\csname simpleicon@netflixicon\endcsname {\simpleiconsmap\symbol{"F138}}
+ \expandafter\def\csname simpleicon@netgearicon\endcsname {\simpleiconsmap\symbol{"F139}}
+ \expandafter\def\csname simpleicon@netlifyicon\endcsname {\simpleiconsmap\symbol{"F13A}}
+ \expandafter\def\csname simpleicon@netteicon\endcsname {\simpleiconsmap\symbol{"F13B}}
+ \expandafter\def\csname simpleicon@nettoicon\endcsname {\simpleiconsmap\symbol{"F13C}}
+ \expandafter\def\csname simpleicon@neutralinojsicon\endcsname {\simpleiconsmap\symbol{"F13D}}
+ \expandafter\def\csname simpleicon@newbalanceicon\endcsname {\simpleiconsmap\symbol{"F13E}}
+ \expandafter\def\csname simpleicon@neweggicon\endcsname {\simpleiconsmap\symbol{"F13F}}
+ \expandafter\def\csname simpleicon@newjapanprowrestlingicon\endcsname {\simpleiconsmap\symbol{"F140}}
+ \expandafter\def\csname simpleicon@newrelicicon\endcsname {\simpleiconsmap\symbol{"F141}}
+ \expandafter\def\csname simpleicon@newyorktimesicon\endcsname {\simpleiconsmap\symbol{"F142}}
+ \expandafter\def\csname simpleicon@nexonicon\endcsname {\simpleiconsmap\symbol{"F143}}
+ \expandafter\def\csname simpleicon@nextbilliondotaiicon\endcsname {\simpleiconsmap\symbol{"F144}}
+ \expandafter\def\csname simpleicon@nextcloudicon\endcsname {\simpleiconsmap\symbol{"F145}}
+ \expandafter\def\csname simpleicon@nextdnsicon\endcsname {\simpleiconsmap\symbol{"F146}}
+ \expandafter\def\csname simpleicon@nextdooricon\endcsname {\simpleiconsmap\symbol{"F147}}
+ \expandafter\def\csname simpleicon@nextdotjsicon\endcsname {\simpleiconsmap\symbol{"F148}}
+ \expandafter\def\csname simpleicon@nextraicon\endcsname {\simpleiconsmap\symbol{"F149}}
+ \expandafter\def\csname simpleicon@nextuiicon\endcsname {\simpleiconsmap\symbol{"F14A}}
+ \expandafter\def\csname simpleicon@nexusmodsicon\endcsname {\simpleiconsmap\symbol{"F14B}}
+ \expandafter\def\csname simpleicon@nfcicon\endcsname {\simpleiconsmap\symbol{"F14C}}
+ \expandafter\def\csname simpleicon@nginxicon\endcsname {\simpleiconsmap\symbol{"F14D}}
+ \expandafter\def\csname simpleicon@nginxproxymanagericon\endcsname {\simpleiconsmap\symbol{"F14E}}
+ \expandafter\def\csname simpleicon@ngrokicon\endcsname {\simpleiconsmap\symbol{"F14F}}
+ \expandafter\def\csname simpleicon@ngrxicon\endcsname {\simpleiconsmap\symbol{"F150}}
+ \expandafter\def\csname simpleicon@nhlicon\endcsname {\simpleiconsmap\symbol{"F151}}
+ \expandafter\def\csname simpleicon@nicehashicon\endcsname {\simpleiconsmap\symbol{"F152}}
+ \expandafter\def\csname simpleicon@niconicoicon\endcsname {\simpleiconsmap\symbol{"F153}}
+ \expandafter\def\csname simpleicon@nikeicon\endcsname {\simpleiconsmap\symbol{"F154}}
+ \expandafter\def\csname simpleicon@nikonicon\endcsname {\simpleiconsmap\symbol{"F155}}
+ \expandafter\def\csname simpleicon@nimicon\endcsname {\simpleiconsmap\symbol{"F156}}
+ \expandafter\def\csname simpleicon@nintendoicon\endcsname {\simpleiconsmap\symbol{"F157}}
+ \expandafter\def\csname simpleicon@nintendo3dsicon\endcsname {\simpleiconsmap\symbol{"F158}}
+ \expandafter\def\csname simpleicon@nintendogamecubeicon\endcsname {\simpleiconsmap\symbol{"F159}}
+ \expandafter\def\csname simpleicon@nintendoswitchicon\endcsname {\simpleiconsmap\symbol{"F15A}}
+ \expandafter\def\csname simpleicon@nissanicon\endcsname {\simpleiconsmap\symbol{"F15B}}
+ \expandafter\def\csname simpleicon@nixosicon\endcsname {\simpleiconsmap\symbol{"F15C}}
+ \expandafter\def\csname simpleicon@nodedotjsicon\endcsname {\simpleiconsmap\symbol{"F15D}}
+ \expandafter\def\csname simpleicon@nodemonicon\endcsname {\simpleiconsmap\symbol{"F15E}}
+ \expandafter\def\csname simpleicon@noderedicon\endcsname {\simpleiconsmap\symbol{"F15F}}
+ \expandafter\def\csname simpleicon@nokiaicon\endcsname {\simpleiconsmap\symbol{"F160}}
+ \expandafter\def\csname simpleicon@nomadicon\endcsname {\simpleiconsmap\symbol{"F161}}
+ \expandafter\def\csname simpleicon@norcoicon\endcsname {\simpleiconsmap\symbol{"F162}}
+ \expandafter\def\csname simpleicon@nordicsemiconductoricon\endcsname {\simpleiconsmap\symbol{"F163}}
+ \expandafter\def\csname simpleicon@nordvpnicon\endcsname {\simpleiconsmap\symbol{"F164}}
+ \expandafter\def\csname simpleicon@normalizedotcssicon\endcsname {\simpleiconsmap\symbol{"F165}}
+ \expandafter\def\csname simpleicon@nortonicon\endcsname {\simpleiconsmap\symbol{"F166}}
+ \expandafter\def\csname simpleicon@norwegianicon\endcsname {\simpleiconsmap\symbol{"F167}}
+ \expandafter\def\csname simpleicon@notepadplusplusicon\endcsname {\simpleiconsmap\symbol{"F168}}
+ \expandafter\def\csname simpleicon@notionicon\endcsname {\simpleiconsmap\symbol{"F169}}
+ \expandafter\def\csname simpleicon@notisticon\endcsname {\simpleiconsmap\symbol{"F16A}}
+ \expandafter\def\csname simpleicon@nounprojecticon\endcsname {\simpleiconsmap\symbol{"F16B}}
+ \expandafter\def\csname simpleicon@novuicon\endcsname {\simpleiconsmap\symbol{"F16C}}
+ \expandafter\def\csname simpleicon@nowicon\endcsname {\simpleiconsmap\symbol{"F16D}}
+ \expandafter\def\csname simpleicon@npmicon\endcsname {\simpleiconsmap\symbol{"F16E}}
+ \expandafter\def\csname simpleicon@nrwlicon\endcsname {\simpleiconsmap\symbol{"F16F}}
+ \expandafter\def\csname simpleicon@nsisicon\endcsname {\simpleiconsmap\symbol{"F170}}
+ \expandafter\def\csname simpleicon@ntfyicon\endcsname {\simpleiconsmap\symbol{"F171}}
+ \expandafter\def\csname simpleicon@nubankicon\endcsname {\simpleiconsmap\symbol{"F172}}
+ \expandafter\def\csname simpleicon@nucleoicon\endcsname {\simpleiconsmap\symbol{"F173}}
+ \expandafter\def\csname simpleicon@nugeticon\endcsname {\simpleiconsmap\symbol{"F174}}
+ \expandafter\def\csname simpleicon@nukeicon\endcsname {\simpleiconsmap\symbol{"F175}}
+ \expandafter\def\csname simpleicon@numbaicon\endcsname {\simpleiconsmap\symbol{"F176}}
+ \expandafter\def\csname simpleicon@numpyicon\endcsname {\simpleiconsmap\symbol{"F177}}
+ \expandafter\def\csname simpleicon@nunjucksicon\endcsname {\simpleiconsmap\symbol{"F178}}
+ \expandafter\def\csname simpleicon@nushellicon\endcsname {\simpleiconsmap\symbol{"F179}}
+ \expandafter\def\csname simpleicon@nutanixicon\endcsname {\simpleiconsmap\symbol{"F17A}}
+ \expandafter\def\csname simpleicon@nuxtdotjsicon\endcsname {\simpleiconsmap\symbol{"F17B}}
+ \expandafter\def\csname simpleicon@nvidiaicon\endcsname {\simpleiconsmap\symbol{"F17C}}
+ \expandafter\def\csname simpleicon@nvmicon\endcsname {\simpleiconsmap\symbol{"F17D}}
+ \expandafter\def\csname simpleicon@nxicon\endcsname {\simpleiconsmap\symbol{"F17E}}
+ \expandafter\def\csname simpleicon@nxpicon\endcsname {\simpleiconsmap\symbol{"F17F}}
+ \expandafter\def\csname simpleicon@nzxticon\endcsname {\simpleiconsmap\symbol{"F180}}
+ \expandafter\def\csname simpleicon@observableicon\endcsname {\simpleiconsmap\symbol{"F181}}
+ \expandafter\def\csname simpleicon@obsidianicon\endcsname {\simpleiconsmap\symbol{"F182}}
+ \expandafter\def\csname simpleicon@obsstudioicon\endcsname {\simpleiconsmap\symbol{"F183}}
+ \expandafter\def\csname simpleicon@ocamlicon\endcsname {\simpleiconsmap\symbol{"F184}}
+ \expandafter\def\csname simpleicon@oclificon\endcsname {\simpleiconsmap\symbol{"F185}}
+ \expandafter\def\csname simpleicon@octanerendericon\endcsname {\simpleiconsmap\symbol{"F186}}
+ \expandafter\def\csname simpleicon@octaveicon\endcsname {\simpleiconsmap\symbol{"F187}}
+ \expandafter\def\csname simpleicon@octobercmsicon\endcsname {\simpleiconsmap\symbol{"F188}}
+ \expandafter\def\csname simpleicon@octoprinticon\endcsname {\simpleiconsmap\symbol{"F189}}
+ \expandafter\def\csname simpleicon@octopusdeployicon\endcsname {\simpleiconsmap\symbol{"F18A}}
+ \expandafter\def\csname simpleicon@oculusicon\endcsname {\simpleiconsmap\symbol{"F18B}}
+ \expandafter\def\csname simpleicon@odnoklassnikiicon\endcsname {\simpleiconsmap\symbol{"F18C}}
+ \expandafter\def\csname simpleicon@odooicon\endcsname {\simpleiconsmap\symbol{"F18D}}
+ \expandafter\def\csname simpleicon@odyseeicon\endcsname {\simpleiconsmap\symbol{"F18E}}
+ \expandafter\def\csname simpleicon@ohdearicon\endcsname {\simpleiconsmap\symbol{"F18F}}
+ \expandafter\def\csname simpleicon@okcupidicon\endcsname {\simpleiconsmap\symbol{"F190}}
+ \expandafter\def\csname simpleicon@oktaicon\endcsname {\simpleiconsmap\symbol{"F191}}
+ \expandafter\def\csname simpleicon@ollamaicon\endcsname {\simpleiconsmap\symbol{"F192}}
+ \expandafter\def\csname simpleicon@oneplusicon\endcsname {\simpleiconsmap\symbol{"F193}}
+ \expandafter\def\csname simpleicon@onlyfansicon\endcsname {\simpleiconsmap\symbol{"F194}}
+ \expandafter\def\csname simpleicon@onlyofficeicon\endcsname {\simpleiconsmap\symbol{"F195}}
+ \expandafter\def\csname simpleicon@onnxicon\endcsname {\simpleiconsmap\symbol{"F196}}
+ \expandafter\def\csname simpleicon@onstaricon\endcsname {\simpleiconsmap\symbol{"F197}}
+ \expandafter\def\csname simpleicon@opelicon\endcsname {\simpleiconsmap\symbol{"F198}}
+ \expandafter\def\csname simpleicon@openaccessicon\endcsname {\simpleiconsmap\symbol{"F199}}
+ \expandafter\def\csname simpleicon@openaiicon\endcsname {\simpleiconsmap\symbol{"F19A}}
+ \expandafter\def\csname simpleicon@openaigymicon\endcsname {\simpleiconsmap\symbol{"F19B}}
+ \expandafter\def\csname simpleicon@openapiinitiativeicon\endcsname {\simpleiconsmap\symbol{"F19C}}
+ \expandafter\def\csname simpleicon@openbadgesicon\endcsname {\simpleiconsmap\symbol{"F19D}}
+ \expandafter\def\csname simpleicon@openbsdicon\endcsname {\simpleiconsmap\symbol{"F19E}}
+ \expandafter\def\csname simpleicon@openbugbountyicon\endcsname {\simpleiconsmap\symbol{"F19F}}
+ \expandafter\def\csname simpleicon@opencollectiveicon\endcsname {\simpleiconsmap\symbol{"F1A0}}
+ \expandafter\def\csname simpleicon@opencontainersinitiativeicon\endcsname {\simpleiconsmap\symbol{"F1A1}}
+ \expandafter\def\csname simpleicon@opencvicon\endcsname {\simpleiconsmap\symbol{"F1A2}}
+ \expandafter\def\csname simpleicon@openfaasicon\endcsname {\simpleiconsmap\symbol{"F1A3}}
+ \expandafter\def\csname simpleicon@openglicon\endcsname {\simpleiconsmap\symbol{"F1A4}}
+ \expandafter\def\csname simpleicon@openhabicon\endcsname {\simpleiconsmap\symbol{"F1A5}}
+ \expandafter\def\csname simpleicon@openidicon\endcsname {\simpleiconsmap\symbol{"F1A6}}
+ \expandafter\def\csname simpleicon@openjdkicon\endcsname {\simpleiconsmap\symbol{"F1A7}}
+ \expandafter\def\csname simpleicon@openjsfoundationicon\endcsname {\simpleiconsmap\symbol{"F1A8}}
+ \expandafter\def\csname simpleicon@openlayersicon\endcsname {\simpleiconsmap\symbol{"F1A9}}
+ \expandafter\def\csname simpleicon@openmediavaulticon\endcsname {\simpleiconsmap\symbol{"F1AA}}
+ \expandafter\def\csname simpleicon@openminedicon\endcsname {\simpleiconsmap\symbol{"F1AB}}
+ \expandafter\def\csname simpleicon@opennebulaicon\endcsname {\simpleiconsmap\symbol{"F1AC}}
+ \expandafter\def\csname simpleicon@openprojecticon\endcsname {\simpleiconsmap\symbol{"F1AD}}
+ \expandafter\def\csname simpleicon@openscadicon\endcsname {\simpleiconsmap\symbol{"F1AE}}
+ \expandafter\def\csname simpleicon@openseaicon\endcsname {\simpleiconsmap\symbol{"F1AF}}
+ \expandafter\def\csname simpleicon@opensearchicon\endcsname {\simpleiconsmap\symbol{"F1B0}}
+ \expandafter\def\csname simpleicon@opensourcehardwareicon\endcsname {\simpleiconsmap\symbol{"F1B1}}
+ \expandafter\def\csname simpleicon@opensourceinitiativeicon\endcsname {\simpleiconsmap\symbol{"F1B2}}
+ \expandafter\def\csname simpleicon@opensslicon\endcsname {\simpleiconsmap\symbol{"F1B3}}
+ \expandafter\def\csname simpleicon@openstackicon\endcsname {\simpleiconsmap\symbol{"F1B4}}
+ \expandafter\def\csname simpleicon@openstreetmapicon\endcsname {\simpleiconsmap\symbol{"F1B5}}
+ \expandafter\def\csname simpleicon@opensuseicon\endcsname {\simpleiconsmap\symbol{"F1B6}}
+ \expandafter\def\csname simpleicon@opentelemetryicon\endcsname {\simpleiconsmap\symbol{"F1B7}}
+ \expandafter\def\csname simpleicon@opentexticon\endcsname {\simpleiconsmap\symbol{"F1B8}}
+ \expandafter\def\csname simpleicon@opentofuicon\endcsname {\simpleiconsmap\symbol{"F1B9}}
+ \expandafter\def\csname simpleicon@openverseicon\endcsname {\simpleiconsmap\symbol{"F1BA}}
+ \expandafter\def\csname simpleicon@openvpnicon\endcsname {\simpleiconsmap\symbol{"F1BB}}
+ \expandafter\def\csname simpleicon@openwrticon\endcsname {\simpleiconsmap\symbol{"F1BC}}
+ \expandafter\def\csname simpleicon@openzeppelinicon\endcsname {\simpleiconsmap\symbol{"F1BD}}
+ \expandafter\def\csname simpleicon@openzfsicon\endcsname {\simpleiconsmap\symbol{"F1BE}}
+ \expandafter\def\csname simpleicon@operaicon\endcsname {\simpleiconsmap\symbol{"F1BF}}
+ \expandafter\def\csname simpleicon@operagxicon\endcsname {\simpleiconsmap\symbol{"F1C0}}
+ \expandafter\def\csname simpleicon@opnsenseicon\endcsname {\simpleiconsmap\symbol{"F1C1}}
+ \expandafter\def\csname simpleicon@oppoicon\endcsname {\simpleiconsmap\symbol{"F1C2}}
+ \expandafter\def\csname simpleicon@opsgenieicon\endcsname {\simpleiconsmap\symbol{"F1C3}}
+ \expandafter\def\csname simpleicon@opslevelicon\endcsname {\simpleiconsmap\symbol{"F1C4}}
+ \expandafter\def\csname simpleicon@optimismicon\endcsname {\simpleiconsmap\symbol{"F1C5}}
+ \expandafter\def\csname simpleicon@oracleicon\endcsname {\simpleiconsmap\symbol{"F1C6}}
+ \expandafter\def\csname simpleicon@orangeicon\endcsname {\simpleiconsmap\symbol{"F1C7}}
+ \expandafter\def\csname simpleicon@orcidicon\endcsname {\simpleiconsmap\symbol{"F1C8}}
+ \expandafter\def\csname simpleicon@oreillyicon\endcsname {\simpleiconsmap\symbol{"F1C9}}
+ \expandafter\def\csname simpleicon@orgicon\endcsname {\simpleiconsmap\symbol{"F1CA}}
+ \expandafter\def\csname simpleicon@organicmapsicon\endcsname {\simpleiconsmap\symbol{"F1CB}}
+ \expandafter\def\csname simpleicon@originicon\endcsname {\simpleiconsmap\symbol{"F1CC}}
+ \expandafter\def\csname simpleicon@osanoicon\endcsname {\simpleiconsmap\symbol{"F1CD}}
+ \expandafter\def\csname simpleicon@osficon\endcsname {\simpleiconsmap\symbol{"F1CE}}
+ \expandafter\def\csname simpleicon@osgeoicon\endcsname {\simpleiconsmap\symbol{"F1CF}}
+ \expandafter\def\csname simpleicon@oshkoshicon\endcsname {\simpleiconsmap\symbol{"F1D0}}
+ \expandafter\def\csname simpleicon@osmcicon\endcsname {\simpleiconsmap\symbol{"F1D1}}
+ \expandafter\def\csname simpleicon@osuicon\endcsname {\simpleiconsmap\symbol{"F1D2}}
+ \expandafter\def\csname simpleicon@ottoicon\endcsname {\simpleiconsmap\symbol{"F1D3}}
+ \expandafter\def\csname simpleicon@outlineicon\endcsname {\simpleiconsmap\symbol{"F1D4}}
+ \expandafter\def\csname simpleicon@overcasticon\endcsname {\simpleiconsmap\symbol{"F1D5}}
+ \expandafter\def\csname simpleicon@overleaficon\endcsname {\simpleiconsmap\symbol{"F1D6}}
+ \expandafter\def\csname simpleicon@ovhicon\endcsname {\simpleiconsmap\symbol{"F1D7}}
+ \expandafter\def\csname simpleicon@owaspicon\endcsname {\simpleiconsmap\symbol{"F1D8}}
+ \expandafter\def\csname simpleicon@owncloudicon\endcsname {\simpleiconsmap\symbol{"F1D9}}
+ \expandafter\def\csname simpleicon@oxygenicon\endcsname {\simpleiconsmap\symbol{"F1DA}}
+ \expandafter\def\csname simpleicon@oyoicon\endcsname {\simpleiconsmap\symbol{"F1DB}}
+ \expandafter\def\csname simpleicon@p5dotjsicon\endcsname {\simpleiconsmap\symbol{"F1DC}}
+ \expandafter\def\csname simpleicon@packagisticon\endcsname {\simpleiconsmap\symbol{"F1DD}}
+ \expandafter\def\csname simpleicon@packericon\endcsname {\simpleiconsmap\symbol{"F1DE}}
+ \expandafter\def\csname simpleicon@packticon\endcsname {\simpleiconsmap\symbol{"F1DF}}
+ \expandafter\def\csname simpleicon@paddleicon\endcsname {\simpleiconsmap\symbol{"F1E0}}
+ \expandafter\def\csname simpleicon@paddlepaddleicon\endcsname {\simpleiconsmap\symbol{"F1E1}}
+ \expandafter\def\csname simpleicon@paddypowericon\endcsname {\simpleiconsmap\symbol{"F1E2}}
+ \expandafter\def\csname simpleicon@pagekiticon\endcsname {\simpleiconsmap\symbol{"F1E3}}
+ \expandafter\def\csname simpleicon@pagerdutyicon\endcsname {\simpleiconsmap\symbol{"F1E4}}
+ \expandafter\def\csname simpleicon@pagespeedinsightsicon\endcsname {\simpleiconsmap\symbol{"F1E5}}
+ \expandafter\def\csname simpleicon@pagseguroicon\endcsname {\simpleiconsmap\symbol{"F1E6}}
+ \expandafter\def\csname simpleicon@palantiricon\endcsname {\simpleiconsmap\symbol{"F1E7}}
+ \expandafter\def\csname simpleicon@paloaltonetworksicon\endcsname {\simpleiconsmap\symbol{"F1E8}}
+ \expandafter\def\csname simpleicon@paloaltosoftwareicon\endcsname {\simpleiconsmap\symbol{"F1E9}}
+ \expandafter\def\csname simpleicon@panasonicicon\endcsname {\simpleiconsmap\symbol{"F1EA}}
+ \expandafter\def\csname simpleicon@pandasicon\endcsname {\simpleiconsmap\symbol{"F1EB}}
+ \expandafter\def\csname simpleicon@pandoraicon\endcsname {\simpleiconsmap\symbol{"F1EC}}
+ \expandafter\def\csname simpleicon@pantheonicon\endcsname {\simpleiconsmap\symbol{"F1ED}}
+ \expandafter\def\csname simpleicon@paperlessngxicon\endcsname {\simpleiconsmap\symbol{"F1EE}}
+ \expandafter\def\csname simpleicon@paperspaceicon\endcsname {\simpleiconsmap\symbol{"F1EF}}
+ \expandafter\def\csname simpleicon@paperswithcodeicon\endcsname {\simpleiconsmap\symbol{"F1F0}}
+ \expandafter\def\csname simpleicon@paramountplusicon\endcsname {\simpleiconsmap\symbol{"F1F1}}
+ \expandafter\def\csname simpleicon@paritysubstrateicon\endcsname {\simpleiconsmap\symbol{"F1F2}}
+ \expandafter\def\csname simpleicon@parrotsecurityicon\endcsname {\simpleiconsmap\symbol{"F1F3}}
+ \expandafter\def\csname simpleicon@parsedotlyicon\endcsname {\simpleiconsmap\symbol{"F1F4}}
+ \expandafter\def\csname simpleicon@passporticon\endcsname {\simpleiconsmap\symbol{"F1F5}}
+ \expandafter\def\csname simpleicon@pastebinicon\endcsname {\simpleiconsmap\symbol{"F1F6}}
+ \expandafter\def\csname simpleicon@patreonicon\endcsname {\simpleiconsmap\symbol{"F1F7}}
+ \expandafter\def\csname simpleicon@paychexicon\endcsname {\simpleiconsmap\symbol{"F1F8}}
+ \expandafter\def\csname simpleicon@payhipicon\endcsname {\simpleiconsmap\symbol{"F1F9}}
+ \expandafter\def\csname simpleicon@payloadcmsicon\endcsname {\simpleiconsmap\symbol{"F1FA}}
+ \expandafter\def\csname simpleicon@payoneericon\endcsname {\simpleiconsmap\symbol{"F1FB}}
+ \expandafter\def\csname simpleicon@paypalicon\endcsname {\simpleiconsmap\symbol{"F1FC}}
+ \expandafter\def\csname simpleicon@paytmicon\endcsname {\simpleiconsmap\symbol{"F1FD}}
+ \expandafter\def\csname simpleicon@pcgamingwikiicon\endcsname {\simpleiconsmap\symbol{"F1FE}}
+ \expandafter\def\csname simpleicon@pdmicon\endcsname {\simpleiconsmap\symbol{"F1FF}}
+ \expandafter\def\csname simpleicon@pdqicon\endcsname {\simpleiconsmap\symbol{"F200}}
+ \expandafter\def\csname simpleicon@peakdesignicon\endcsname {\simpleiconsmap\symbol{"F201}}
+ \expandafter\def\csname simpleicon@pearsonicon\endcsname {\simpleiconsmap\symbol{"F202}}
+ \expandafter\def\csname simpleicon@peerlisticon\endcsname {\simpleiconsmap\symbol{"F203}}
+ \expandafter\def\csname simpleicon@peertubeicon\endcsname {\simpleiconsmap\symbol{"F204}}
+ \expandafter\def\csname simpleicon@pegasusairlinesicon\endcsname {\simpleiconsmap\symbol{"F205}}
+ \expandafter\def\csname simpleicon@pelicanicon\endcsname {\simpleiconsmap\symbol{"F206}}
+ \expandafter\def\csname simpleicon@pelotonicon\endcsname {\simpleiconsmap\symbol{"F207}}
+ \expandafter\def\csname simpleicon@pennyicon\endcsname {\simpleiconsmap\symbol{"F208}}
+ \expandafter\def\csname simpleicon@penpoticon\endcsname {\simpleiconsmap\symbol{"F209}}
+ \expandafter\def\csname simpleicon@percyicon\endcsname {\simpleiconsmap\symbol{"F20A}}
+ \expandafter\def\csname simpleicon@perforceicon\endcsname {\simpleiconsmap\symbol{"F20B}}
+ \expandafter\def\csname simpleicon@perlicon\endcsname {\simpleiconsmap\symbol{"F20C}}
+ \expandafter\def\csname simpleicon@perplexityicon\endcsname {\simpleiconsmap\symbol{"F20D}}
+ \expandafter\def\csname simpleicon@persistenticon\endcsname {\simpleiconsmap\symbol{"F20E}}
+ \expandafter\def\csname simpleicon@personioicon\endcsname {\simpleiconsmap\symbol{"F20F}}
+ \expandafter\def\csname simpleicon@petsathomeicon\endcsname {\simpleiconsmap\symbol{"F210}}
+ \expandafter\def\csname simpleicon@peugeoticon\endcsname {\simpleiconsmap\symbol{"F211}}
+ \expandafter\def\csname simpleicon@pexelsicon\endcsname {\simpleiconsmap\symbol{"F212}}
+ \expandafter\def\csname simpleicon@pfsenseicon\endcsname {\simpleiconsmap\symbol{"F213}}
+ \expandafter\def\csname simpleicon@phabricatoricon\endcsname {\simpleiconsmap\symbol{"F214}}
+ \expandafter\def\csname simpleicon@philipshueicon\endcsname {\simpleiconsmap\symbol{"F215}}
+ \expandafter\def\csname simpleicon@phoenixframeworkicon\endcsname {\simpleiconsmap\symbol{"F216}}
+ \expandafter\def\csname simpleicon@phonepeicon\endcsname {\simpleiconsmap\symbol{"F217}}
+ \expandafter\def\csname simpleicon@phosphoriconsicon\endcsname {\simpleiconsmap\symbol{"F218}}
+ \expandafter\def\csname simpleicon@photobucketicon\endcsname {\simpleiconsmap\symbol{"F219}}
+ \expandafter\def\csname simpleicon@photocrowdicon\endcsname {\simpleiconsmap\symbol{"F21A}}
+ \expandafter\def\csname simpleicon@photonicon\endcsname {\simpleiconsmap\symbol{"F21B}}
+ \expandafter\def\csname simpleicon@photopeaicon\endcsname {\simpleiconsmap\symbol{"F21C}}
+ \expandafter\def\csname simpleicon@phpicon\endcsname {\simpleiconsmap\symbol{"F21D}}
+ \expandafter\def\csname simpleicon@phpmyadminicon\endcsname {\simpleiconsmap\symbol{"F21E}}
+ \expandafter\def\csname simpleicon@phpstormicon\endcsname {\simpleiconsmap\symbol{"F21F}}
+ \expandafter\def\csname simpleicon@piaggiogroupicon\endcsname {\simpleiconsmap\symbol{"F220}}
+ \expandafter\def\csname simpleicon@piaproicon\endcsname {\simpleiconsmap\symbol{"F221}}
+ \expandafter\def\csname simpleicon@picardsurgelesicon\endcsname {\simpleiconsmap\symbol{"F222}}
+ \expandafter\def\csname simpleicon@picartodottvicon\endcsname {\simpleiconsmap\symbol{"F223}}
+ \expandafter\def\csname simpleicon@picnicicon\endcsname {\simpleiconsmap\symbol{"F224}}
+ \expandafter\def\csname simpleicon@picpayicon\endcsname {\simpleiconsmap\symbol{"F225}}
+ \expandafter\def\csname simpleicon@picrewicon\endcsname {\simpleiconsmap\symbol{"F226}}
+ \expandafter\def\csname simpleicon@picxyicon\endcsname {\simpleiconsmap\symbol{"F227}}
+ \expandafter\def\csname simpleicon@piholeicon\endcsname {\simpleiconsmap\symbol{"F228}}
+ \expandafter\def\csname simpleicon@pimcoreicon\endcsname {\simpleiconsmap\symbol{"F229}}
+ \expandafter\def\csname simpleicon@pinboardicon\endcsname {\simpleiconsmap\symbol{"F22A}}
+ \expandafter\def\csname simpleicon@pinescripticon\endcsname {\simpleiconsmap\symbol{"F22B}}
+ \expandafter\def\csname simpleicon@pinetworkicon\endcsname {\simpleiconsmap\symbol{"F22C}}
+ \expandafter\def\csname simpleicon@pingdomicon\endcsname {\simpleiconsmap\symbol{"F22D}}
+ \expandafter\def\csname simpleicon@pinoicon\endcsname {\simpleiconsmap\symbol{"F22E}}
+ \expandafter\def\csname simpleicon@pinteresticon\endcsname {\simpleiconsmap\symbol{"F22F}}
+ \expandafter\def\csname simpleicon@pioneerdjicon\endcsname {\simpleiconsmap\symbol{"F230}}
+ \expandafter\def\csname simpleicon@pipedicon\endcsname {\simpleiconsmap\symbol{"F231}}
+ \expandafter\def\csname simpleicon@pipxicon\endcsname {\simpleiconsmap\symbol{"F232}}
+ \expandafter\def\csname simpleicon@pivotaltrackericon\endcsname {\simpleiconsmap\symbol{"F233}}
+ \expandafter\def\csname simpleicon@piwigoicon\endcsname {\simpleiconsmap\symbol{"F234}}
+ \expandafter\def\csname simpleicon@pixicon\endcsname {\simpleiconsmap\symbol{"F235}}
+ \expandafter\def\csname simpleicon@pixabayicon\endcsname {\simpleiconsmap\symbol{"F236}}
+ \expandafter\def\csname simpleicon@pixelfedicon\endcsname {\simpleiconsmap\symbol{"F237}}
+ \expandafter\def\csname simpleicon@pixivicon\endcsname {\simpleiconsmap\symbol{"F238}}
+ \expandafter\def\csname simpleicon@pixlricon\endcsname {\simpleiconsmap\symbol{"F239}}
+ \expandafter\def\csname simpleicon@pkgsrcicon\endcsname {\simpleiconsmap\symbol{"F23A}}
+ \expandafter\def\csname simpleicon@planeticon\endcsname {\simpleiconsmap\symbol{"F23B}}
+ \expandafter\def\csname simpleicon@planetscaleicon\endcsname {\simpleiconsmap\symbol{"F23C}}
+ \expandafter\def\csname simpleicon@plangridicon\endcsname {\simpleiconsmap\symbol{"F23D}}
+ \expandafter\def\csname simpleicon@platformdotshicon\endcsname {\simpleiconsmap\symbol{"F23E}}
+ \expandafter\def\csname simpleicon@platformioicon\endcsname {\simpleiconsmap\symbol{"F23F}}
+ \expandafter\def\csname simpleicon@platziicon\endcsname {\simpleiconsmap\symbol{"F240}}
+ \expandafter\def\csname simpleicon@plausibleanalyticsicon\endcsname {\simpleiconsmap\symbol{"F241}}
+ \expandafter\def\csname simpleicon@playcanvasicon\endcsname {\simpleiconsmap\symbol{"F242}}
+ \expandafter\def\csname simpleicon@playerdotmeicon\endcsname {\simpleiconsmap\symbol{"F243}}
+ \expandafter\def\csname simpleicon@playerfmicon\endcsname {\simpleiconsmap\symbol{"F244}}
+ \expandafter\def\csname simpleicon@playstationicon\endcsname {\simpleiconsmap\symbol{"F245}}
+ \expandafter\def\csname simpleicon@playstation2icon\endcsname {\simpleiconsmap\symbol{"F246}}
+ \expandafter\def\csname simpleicon@playstation3icon\endcsname {\simpleiconsmap\symbol{"F247}}
+ \expandafter\def\csname simpleicon@playstation4icon\endcsname {\simpleiconsmap\symbol{"F248}}
+ \expandafter\def\csname simpleicon@playstation5icon\endcsname {\simpleiconsmap\symbol{"F249}}
+ \expandafter\def\csname simpleicon@playstationportableicon\endcsname {\simpleiconsmap\symbol{"F24A}}
\expandafter\def\csname simpleicon@playstationvitaicon\endcsname {\simpleiconsmap\symbol{"F24B}}
- \expandafter\def\csname simpleicon@playwrighticon\endcsname {\simpleiconsmap\symbol{"F24C}}
- \expandafter\def\csname simpleicon@pleromaicon\endcsname {\simpleiconsmap\symbol{"F24D}}
- \expandafter\def\csname simpleicon@pleskicon\endcsname {\simpleiconsmap\symbol{"F24E}}
- \expandafter\def\csname simpleicon@plexicon\endcsname {\simpleiconsmap\symbol{"F24F}}
- \expandafter\def\csname simpleicon@plotlyicon\endcsname {\simpleiconsmap\symbol{"F250}}
- \expandafter\def\csname simpleicon@plumeicon\endcsname {\simpleiconsmap\symbol{"F251}}
- \expandafter\def\csname simpleicon@pluralsighticon\endcsname {\simpleiconsmap\symbol{"F252}}
- \expandafter\def\csname simpleicon@plurkicon\endcsname {\simpleiconsmap\symbol{"F253}}
- \expandafter\def\csname simpleicon@pluscodesicon\endcsname {\simpleiconsmap\symbol{"F254}}
- \expandafter\def\csname simpleicon@pm2icon\endcsname {\simpleiconsmap\symbol{"F255}}
- \expandafter\def\csname simpleicon@pnpmicon\endcsname {\simpleiconsmap\symbol{"F256}}
- \expandafter\def\csname simpleicon@pocketicon\endcsname {\simpleiconsmap\symbol{"F257}}
- \expandafter\def\csname simpleicon@pocketbaseicon\endcsname {\simpleiconsmap\symbol{"F258}}
- \expandafter\def\csname simpleicon@pocketcastsicon\endcsname {\simpleiconsmap\symbol{"F259}}
- \expandafter\def\csname simpleicon@podcastaddicticon\endcsname {\simpleiconsmap\symbol{"F25A}}
- \expandafter\def\csname simpleicon@podcastindexicon\endcsname {\simpleiconsmap\symbol{"F25B}}
- \expandafter\def\csname simpleicon@podmanicon\endcsname {\simpleiconsmap\symbol{"F25C}}
- \expandafter\def\csname simpleicon@poeicon\endcsname {\simpleiconsmap\symbol{"F25D}}
- \expandafter\def\csname simpleicon@poetryicon\endcsname {\simpleiconsmap\symbol{"F25E}}
- \expandafter\def\csname simpleicon@pointyicon\endcsname {\simpleiconsmap\symbol{"F25F}}
- \expandafter\def\csname simpleicon@pokemonicon\endcsname {\simpleiconsmap\symbol{"F260}}
- \expandafter\def\csname simpleicon@polarsicon\endcsname {\simpleiconsmap\symbol{"F261}}
- \expandafter\def\csname simpleicon@polestaricon\endcsname {\simpleiconsmap\symbol{"F262}}
- \expandafter\def\csname simpleicon@polkadoticon\endcsname {\simpleiconsmap\symbol{"F263}}
- \expandafter\def\csname simpleicon@polyicon\endcsname {\simpleiconsmap\symbol{"F264}}
- \expandafter\def\csname simpleicon@polygonicon\endcsname {\simpleiconsmap\symbol{"F265}}
- \expandafter\def\csname simpleicon@polymerprojecticon\endcsname {\simpleiconsmap\symbol{"F266}}
- \expandafter\def\csname simpleicon@polyworkicon\endcsname {\simpleiconsmap\symbol{"F267}}
- \expandafter\def\csname simpleicon@pond5icon\endcsname {\simpleiconsmap\symbol{"F268}}
- \expandafter\def\csname simpleicon@poposicon\endcsname {\simpleiconsmap\symbol{"F269}}
- \expandafter\def\csname simpleicon@porkbunicon\endcsname {\simpleiconsmap\symbol{"F26A}}
- \expandafter\def\csname simpleicon@porscheicon\endcsname {\simpleiconsmap\symbol{"F26B}}
- \expandafter\def\csname simpleicon@portainericon\endcsname {\simpleiconsmap\symbol{"F26C}}
- \expandafter\def\csname simpleicon@portswiggericon\endcsname {\simpleiconsmap\symbol{"F26D}}
- \expandafter\def\csname simpleicon@positicon\endcsname {\simpleiconsmap\symbol{"F26E}}
- \expandafter\def\csname simpleicon@postcssicon\endcsname {\simpleiconsmap\symbol{"F26F}}
- \expandafter\def\csname simpleicon@postgresqlicon\endcsname {\simpleiconsmap\symbol{"F270}}
- \expandafter\def\csname simpleicon@posthogicon\endcsname {\simpleiconsmap\symbol{"F271}}
- \expandafter\def\csname simpleicon@postmanicon\endcsname {\simpleiconsmap\symbol{"F272}}
- \expandafter\def\csname simpleicon@postmatesicon\endcsname {\simpleiconsmap\symbol{"F273}}
- \expandafter\def\csname simpleicon@powerappsicon\endcsname {\simpleiconsmap\symbol{"F274}}
- \expandafter\def\csname simpleicon@powerautomateicon\endcsname {\simpleiconsmap\symbol{"F275}}
- \expandafter\def\csname simpleicon@powerbiicon\endcsname {\simpleiconsmap\symbol{"F276}}
- \expandafter\def\csname simpleicon@powerfxicon\endcsname {\simpleiconsmap\symbol{"F277}}
- \expandafter\def\csname simpleicon@powerpagesicon\endcsname {\simpleiconsmap\symbol{"F278}}
- \expandafter\def\csname simpleicon@powersicon\endcsname {\simpleiconsmap\symbol{"F279}}
- \expandafter\def\csname simpleicon@powershellicon\endcsname {\simpleiconsmap\symbol{"F27A}}
- \expandafter\def\csname simpleicon@powervirtualagentsicon\endcsname {\simpleiconsmap\symbol{"F27B}}
- \expandafter\def\csname simpleicon@prdotcoicon\endcsname {\simpleiconsmap\symbol{"F27C}}
- \expandafter\def\csname simpleicon@preacticon\endcsname {\simpleiconsmap\symbol{"F27D}}
- \expandafter\def\csname simpleicon@precommiticon\endcsname {\simpleiconsmap\symbol{"F27E}}
- \expandafter\def\csname simpleicon@prefecticon\endcsname {\simpleiconsmap\symbol{"F27F}}
- \expandafter\def\csname simpleicon@premierleagueicon\endcsname {\simpleiconsmap\symbol{"F280}}
- \expandafter\def\csname simpleicon@prepbytesicon\endcsname {\simpleiconsmap\symbol{"F281}}
- \expandafter\def\csname simpleicon@prestashopicon\endcsname {\simpleiconsmap\symbol{"F282}}
- \expandafter\def\csname simpleicon@prestoicon\endcsname {\simpleiconsmap\symbol{"F283}}
- \expandafter\def\csname simpleicon@prettiericon\endcsname {\simpleiconsmap\symbol{"F284}}
- \expandafter\def\csname simpleicon@pretzelicon\endcsname {\simpleiconsmap\symbol{"F285}}
- \expandafter\def\csname simpleicon@preventionicon\endcsname {\simpleiconsmap\symbol{"F286}}
- \expandafter\def\csname simpleicon@preziicon\endcsname {\simpleiconsmap\symbol{"F287}}
- \expandafter\def\csname simpleicon@primeicon\endcsname {\simpleiconsmap\symbol{"F288}}
- \expandafter\def\csname simpleicon@primengicon\endcsname {\simpleiconsmap\symbol{"F289}}
- \expandafter\def\csname simpleicon@primereacticon\endcsname {\simpleiconsmap\symbol{"F28A}}
- \expandafter\def\csname simpleicon@primevideoicon\endcsname {\simpleiconsmap\symbol{"F28B}}
- \expandafter\def\csname simpleicon@printablesicon\endcsname {\simpleiconsmap\symbol{"F28C}}
- \expandafter\def\csname simpleicon@prismaicon\endcsname {\simpleiconsmap\symbol{"F28D}}
- \expandafter\def\csname simpleicon@prismicicon\endcsname {\simpleiconsmap\symbol{"F28E}}
- \expandafter\def\csname simpleicon@privatedivisionicon\endcsname {\simpleiconsmap\symbol{"F28F}}
- \expandafter\def\csname simpleicon@privateinternetaccessicon\endcsname {\simpleiconsmap\symbol{"F290}}
- \expandafter\def\csname simpleicon@proboticon\endcsname {\simpleiconsmap\symbol{"F291}}
- \expandafter\def\csname simpleicon@processingfoundationicon\endcsname {\simpleiconsmap\symbol{"F292}}
- \expandafter\def\csname simpleicon@processwireicon\endcsname {\simpleiconsmap\symbol{"F293}}
- \expandafter\def\csname simpleicon@producthunticon\endcsname {\simpleiconsmap\symbol{"F294}}
- \expandafter\def\csname simpleicon@progateicon\endcsname {\simpleiconsmap\symbol{"F295}}
- \expandafter\def\csname simpleicon@progressicon\endcsname {\simpleiconsmap\symbol{"F296}}
- \expandafter\def\csname simpleicon@prometheusicon\endcsname {\simpleiconsmap\symbol{"F297}}
- \expandafter\def\csname simpleicon@pronounsdotpageicon\endcsname {\simpleiconsmap\symbol{"F298}}
- \expandafter\def\csname simpleicon@prosiebenicon\endcsname {\simpleiconsmap\symbol{"F299}}
- \expandafter\def\csname simpleicon@proteusicon\endcsname {\simpleiconsmap\symbol{"F29A}}
- \expandafter\def\csname simpleicon@protocolsdotioicon\endcsname {\simpleiconsmap\symbol{"F29B}}
- \expandafter\def\csname simpleicon@protodotioicon\endcsname {\simpleiconsmap\symbol{"F29C}}
- \expandafter\def\csname simpleicon@protonicon\endcsname {\simpleiconsmap\symbol{"F29D}}
- \expandafter\def\csname simpleicon@protoncalendaricon\endcsname {\simpleiconsmap\symbol{"F29E}}
- \expandafter\def\csname simpleicon@protondbicon\endcsname {\simpleiconsmap\symbol{"F29F}}
- \expandafter\def\csname simpleicon@protondriveicon\endcsname {\simpleiconsmap\symbol{"F2A0}}
- \expandafter\def\csname simpleicon@protonmailicon\endcsname {\simpleiconsmap\symbol{"F2A1}}
- \expandafter\def\csname simpleicon@protonvpnicon\endcsname {\simpleiconsmap\symbol{"F2A2}}
- \expandafter\def\csname simpleicon@protoolsicon\endcsname {\simpleiconsmap\symbol{"F2A3}}
- \expandafter\def\csname simpleicon@protractoricon\endcsname {\simpleiconsmap\symbol{"F2A4}}
- \expandafter\def\csname simpleicon@proxmoxicon\endcsname {\simpleiconsmap\symbol{"F2A5}}
- \expandafter\def\csname simpleicon@pterodactylicon\endcsname {\simpleiconsmap\symbol{"F2A6}}
- \expandafter\def\csname simpleicon@pubgicon\endcsname {\simpleiconsmap\symbol{"F2A7}}
- \expandafter\def\csname simpleicon@publonsicon\endcsname {\simpleiconsmap\symbol{"F2A8}}
- \expandafter\def\csname simpleicon@pubmedicon\endcsname {\simpleiconsmap\symbol{"F2A9}}
- \expandafter\def\csname simpleicon@pugicon\endcsname {\simpleiconsmap\symbol{"F2AA}}
- \expandafter\def\csname simpleicon@pulumiicon\endcsname {\simpleiconsmap\symbol{"F2AB}}
- \expandafter\def\csname simpleicon@pumaicon\endcsname {\simpleiconsmap\symbol{"F2AC}}
- \expandafter\def\csname simpleicon@puppeticon\endcsname {\simpleiconsmap\symbol{"F2AD}}
- \expandafter\def\csname simpleicon@puppeteericon\endcsname {\simpleiconsmap\symbol{"F2AE}}
- \expandafter\def\csname simpleicon@purescripticon\endcsname {\simpleiconsmap\symbol{"F2AF}}
- \expandafter\def\csname simpleicon@purgecssicon\endcsname {\simpleiconsmap\symbol{"F2B0}}
- \expandafter\def\csname simpleicon@purismicon\endcsname {\simpleiconsmap\symbol{"F2B1}}
- \expandafter\def\csname simpleicon@pushbulleticon\endcsname {\simpleiconsmap\symbol{"F2B2}}
- \expandafter\def\csname simpleicon@pushericon\endcsname {\simpleiconsmap\symbol{"F2B3}}
- \expandafter\def\csname simpleicon@pwaicon\endcsname {\simpleiconsmap\symbol{"F2B4}}
- \expandafter\def\csname simpleicon@pycharmicon\endcsname {\simpleiconsmap\symbol{"F2B5}}
- \expandafter\def\csname simpleicon@pycqaicon\endcsname {\simpleiconsmap\symbol{"F2B6}}
- \expandafter\def\csname simpleicon@pydanticicon\endcsname {\simpleiconsmap\symbol{"F2B7}}
- \expandafter\def\csname simpleicon@pygicon\endcsname {\simpleiconsmap\symbol{"F2B8}}
- \expandafter\def\csname simpleicon@pypiicon\endcsname {\simpleiconsmap\symbol{"F2B9}}
- \expandafter\def\csname simpleicon@pypyicon\endcsname {\simpleiconsmap\symbol{"F2BA}}
- \expandafter\def\csname simpleicon@pyscaffoldicon\endcsname {\simpleiconsmap\symbol{"F2BB}}
- \expandafter\def\csname simpleicon@pysyfticon\endcsname {\simpleiconsmap\symbol{"F2BC}}
- \expandafter\def\csname simpleicon@pytesticon\endcsname {\simpleiconsmap\symbol{"F2BD}}
- \expandafter\def\csname simpleicon@pythonicon\endcsname {\simpleiconsmap\symbol{"F2BE}}
- \expandafter\def\csname simpleicon@pythonanywhereicon\endcsname {\simpleiconsmap\symbol{"F2BF}}
- \expandafter\def\csname simpleicon@pytorchicon\endcsname {\simpleiconsmap\symbol{"F2C0}}
- \expandafter\def\csname simpleicon@pyupicon\endcsname {\simpleiconsmap\symbol{"F2C1}}
- \expandafter\def\csname simpleicon@qantasicon\endcsname {\simpleiconsmap\symbol{"F2C2}}
- \expandafter\def\csname simpleicon@qaseicon\endcsname {\simpleiconsmap\symbol{"F2C3}}
- \expandafter\def\csname simpleicon@qatarairwaysicon\endcsname {\simpleiconsmap\symbol{"F2C4}}
- \expandafter\def\csname simpleicon@qbittorrenticon\endcsname {\simpleiconsmap\symbol{"F2C5}}
- \expandafter\def\csname simpleicon@qemuicon\endcsname {\simpleiconsmap\symbol{"F2C6}}
- \expandafter\def\csname simpleicon@qgisicon\endcsname {\simpleiconsmap\symbol{"F2C7}}
- \expandafter\def\csname simpleicon@qiicon\endcsname {\simpleiconsmap\symbol{"F2C8}}
- \expandafter\def\csname simpleicon@qiitaicon\endcsname {\simpleiconsmap\symbol{"F2C9}}
- \expandafter\def\csname simpleicon@qiskiticon\endcsname {\simpleiconsmap\symbol{"F2CA}}
- \expandafter\def\csname simpleicon@qiwiicon\endcsname {\simpleiconsmap\symbol{"F2CB}}
- \expandafter\def\csname simpleicon@qlikicon\endcsname {\simpleiconsmap\symbol{"F2CC}}
- \expandafter\def\csname simpleicon@qmkicon\endcsname {\simpleiconsmap\symbol{"F2CD}}
- \expandafter\def\csname simpleicon@qnapicon\endcsname {\simpleiconsmap\symbol{"F2CE}}
- \expandafter\def\csname simpleicon@qticon\endcsname {\simpleiconsmap\symbol{"F2CF}}
- \expandafter\def\csname simpleicon@qualcommicon\endcsname {\simpleiconsmap\symbol{"F2D0}}
- \expandafter\def\csname simpleicon@qualtricsicon\endcsname {\simpleiconsmap\symbol{"F2D1}}
- \expandafter\def\csname simpleicon@qualysicon\endcsname {\simpleiconsmap\symbol{"F2D2}}
- \expandafter\def\csname simpleicon@quantcasticon\endcsname {\simpleiconsmap\symbol{"F2D3}}
- \expandafter\def\csname simpleicon@quantconnecticon\endcsname {\simpleiconsmap\symbol{"F2D4}}
- \expandafter\def\csname simpleicon@quarkusicon\endcsname {\simpleiconsmap\symbol{"F2D5}}
- \expandafter\def\csname simpleicon@quartoicon\endcsname {\simpleiconsmap\symbol{"F2D6}}
- \expandafter\def\csname simpleicon@quasaricon\endcsname {\simpleiconsmap\symbol{"F2D7}}
- \expandafter\def\csname simpleicon@qubesosicon\endcsname {\simpleiconsmap\symbol{"F2D8}}
- \expandafter\def\csname simpleicon@questicon\endcsname {\simpleiconsmap\symbol{"F2D9}}
- \expandafter\def\csname simpleicon@quickbooksicon\endcsname {\simpleiconsmap\symbol{"F2DA}}
- \expandafter\def\csname simpleicon@quicklookicon\endcsname {\simpleiconsmap\symbol{"F2DB}}
- \expandafter\def\csname simpleicon@quicktimeicon\endcsname {\simpleiconsmap\symbol{"F2DC}}
- \expandafter\def\csname simpleicon@quicktypeicon\endcsname {\simpleiconsmap\symbol{"F2DD}}
- \expandafter\def\csname simpleicon@quipicon\endcsname {\simpleiconsmap\symbol{"F2DE}}
- \expandafter\def\csname simpleicon@quizleticon\endcsname {\simpleiconsmap\symbol{"F2DF}}
- \expandafter\def\csname simpleicon@quoraicon\endcsname {\simpleiconsmap\symbol{"F2E0}}
- \expandafter\def\csname simpleicon@qwanticon\endcsname {\simpleiconsmap\symbol{"F2E1}}
- \expandafter\def\csname simpleicon@qwikicon\endcsname {\simpleiconsmap\symbol{"F2E2}}
- \expandafter\def\csname simpleicon@qwiklabsicon\endcsname {\simpleiconsmap\symbol{"F2E3}}
- \expandafter\def\csname simpleicon@qzoneicon\endcsname {\simpleiconsmap\symbol{"F2E4}}
- \expandafter\def\csname simpleicon@ricon\endcsname {\simpleiconsmap\symbol{"F2E5}}
- \expandafter\def\csname simpleicon@r3icon\endcsname {\simpleiconsmap\symbol{"F2E6}}
- \expandafter\def\csname simpleicon@rabbitmqicon\endcsname {\simpleiconsmap\symbol{"F2E7}}
- \expandafter\def\csname simpleicon@racketicon\endcsname {\simpleiconsmap\symbol{"F2E8}}
- \expandafter\def\csname simpleicon@radaricon\endcsname {\simpleiconsmap\symbol{"F2E9}}
- \expandafter\def\csname simpleicon@radarricon\endcsname {\simpleiconsmap\symbol{"F2EA}}
- \expandafter\def\csname simpleicon@radiopublicicon\endcsname {\simpleiconsmap\symbol{"F2EB}}
- \expandafter\def\csname simpleicon@radixuiicon\endcsname {\simpleiconsmap\symbol{"F2EC}}
- \expandafter\def\csname simpleicon@radstudioicon\endcsname {\simpleiconsmap\symbol{"F2ED}}
- \expandafter\def\csname simpleicon@railwayicon\endcsname {\simpleiconsmap\symbol{"F2EE}}
- \expandafter\def\csname simpleicon@rainmetericon\endcsname {\simpleiconsmap\symbol{"F2EF}}
- \expandafter\def\csname simpleicon@rakutenicon\endcsname {\simpleiconsmap\symbol{"F2F0}}
- \expandafter\def\csname simpleicon@ramicon\endcsname {\simpleiconsmap\symbol{"F2F1}}
- \expandafter\def\csname simpleicon@ranchericon\endcsname {\simpleiconsmap\symbol{"F2F2}}
- \expandafter\def\csname simpleicon@rapidicon\endcsname {\simpleiconsmap\symbol{"F2F3}}
- \expandafter\def\csname simpleicon@raribleicon\endcsname {\simpleiconsmap\symbol{"F2F4}}
- \expandafter\def\csname simpleicon@rasaicon\endcsname {\simpleiconsmap\symbol{"F2F5}}
- \expandafter\def\csname simpleicon@raspberrypiicon\endcsname {\simpleiconsmap\symbol{"F2F6}}
- \expandafter\def\csname simpleicon@ravelryicon\endcsname {\simpleiconsmap\symbol{"F2F7}}
- \expandafter\def\csname simpleicon@rayicon\endcsname {\simpleiconsmap\symbol{"F2F8}}
- \expandafter\def\csname simpleicon@raycasticon\endcsname {\simpleiconsmap\symbol{"F2F9}}
- \expandafter\def\csname simpleicon@raylibicon\endcsname {\simpleiconsmap\symbol{"F2FA}}
- \expandafter\def\csname simpleicon@razericon\endcsname {\simpleiconsmap\symbol{"F2FB}}
- \expandafter\def\csname simpleicon@razorpayicon\endcsname {\simpleiconsmap\symbol{"F2FC}}
- \expandafter\def\csname simpleicon@rcloneicon\endcsname {\simpleiconsmap\symbol{"F2FD}}
- \expandafter\def\csname simpleicon@reacticon\endcsname {\simpleiconsmap\symbol{"F2FE}}
- \expandafter\def\csname simpleicon@reactbootstrapicon\endcsname {\simpleiconsmap\symbol{"F2FF}}
- \expandafter\def\csname simpleicon@reacthookformicon\endcsname {\simpleiconsmap\symbol{"F300}}
- \expandafter\def\csname simpleicon@reactiveresumeicon\endcsname {\simpleiconsmap\symbol{"F301}}
- \expandafter\def\csname simpleicon@reactivexicon\endcsname {\simpleiconsmap\symbol{"F302}}
- \expandafter\def\csname simpleicon@reactosicon\endcsname {\simpleiconsmap\symbol{"F303}}
- \expandafter\def\csname simpleicon@reactqueryicon\endcsname {\simpleiconsmap\symbol{"F304}}
- \expandafter\def\csname simpleicon@reactroutericon\endcsname {\simpleiconsmap\symbol{"F305}}
- \expandafter\def\csname simpleicon@reacttableicon\endcsname {\simpleiconsmap\symbol{"F306}}
- \expandafter\def\csname simpleicon@readdotcvicon\endcsname {\simpleiconsmap\symbol{"F307}}
- \expandafter\def\csname simpleicon@readmeicon\endcsname {\simpleiconsmap\symbol{"F308}}
- \expandafter\def\csname simpleicon@readthedocsicon\endcsname {\simpleiconsmap\symbol{"F309}}
- \expandafter\def\csname simpleicon@realmicon\endcsname {\simpleiconsmap\symbol{"F30A}}
- \expandafter\def\csname simpleicon@reasonicon\endcsname {\simpleiconsmap\symbol{"F30B}}
- \expandafter\def\csname simpleicon@reasonstudiosicon\endcsname {\simpleiconsmap\symbol{"F30C}}
- \expandafter\def\csname simpleicon@recoilicon\endcsname {\simpleiconsmap\symbol{"F30D}}
- \expandafter\def\csname simpleicon@redicon\endcsname {\simpleiconsmap\symbol{"F30E}}
- \expandafter\def\csname simpleicon@redashicon\endcsname {\simpleiconsmap\symbol{"F30F}}
- \expandafter\def\csname simpleicon@redbubbleicon\endcsname {\simpleiconsmap\symbol{"F310}}
- \expandafter\def\csname simpleicon@redbullicon\endcsname {\simpleiconsmap\symbol{"F311}}
- \expandafter\def\csname simpleicon@redditicon\endcsname {\simpleiconsmap\symbol{"F312}}
- \expandafter\def\csname simpleicon@redhaticon\endcsname {\simpleiconsmap\symbol{"F313}}
- \expandafter\def\csname simpleicon@redhatopenshifticon\endcsname {\simpleiconsmap\symbol{"F314}}
- \expandafter\def\csname simpleicon@redisicon\endcsname {\simpleiconsmap\symbol{"F315}}
- \expandafter\def\csname simpleicon@redmineicon\endcsname {\simpleiconsmap\symbol{"F316}}
- \expandafter\def\csname simpleicon@redoxicon\endcsname {\simpleiconsmap\symbol{"F317}}
- \expandafter\def\csname simpleicon@reduxicon\endcsname {\simpleiconsmap\symbol{"F318}}
- \expandafter\def\csname simpleicon@reduxsagaicon\endcsname {\simpleiconsmap\symbol{"F319}}
- \expandafter\def\csname simpleicon@redwoodjsicon\endcsname {\simpleiconsmap\symbol{"F31A}}
- \expandafter\def\csname simpleicon@reebokicon\endcsname {\simpleiconsmap\symbol{"F31B}}
- \expandafter\def\csname simpleicon@refineicon\endcsname {\simpleiconsmap\symbol{"F31C}}
- \expandafter\def\csname simpleicon@relayicon\endcsname {\simpleiconsmap\symbol{"F31D}}
- \expandafter\def\csname simpleicon@relianceindustrieslimitedicon\endcsname {\simpleiconsmap\symbol{"F31E}}
- \expandafter\def\csname simpleicon@remarkicon\endcsname {\simpleiconsmap\symbol{"F31F}}
- \expandafter\def\csname simpleicon@remedyentertainmenticon\endcsname {\simpleiconsmap\symbol{"F320}}
- \expandafter\def\csname simpleicon@remixicon\endcsname {\simpleiconsmap\symbol{"F321}}
- \expandafter\def\csname simpleicon@removedotbgicon\endcsname {\simpleiconsmap\symbol{"F322}}
- \expandafter\def\csname simpleicon@renaulticon\endcsname {\simpleiconsmap\symbol{"F323}}
- \expandafter\def\csname simpleicon@rendericon\endcsname {\simpleiconsmap\symbol{"F324}}
- \expandafter\def\csname simpleicon@renovateboticon\endcsname {\simpleiconsmap\symbol{"F325}}
- \expandafter\def\csname simpleicon@renpyicon\endcsname {\simpleiconsmap\symbol{"F326}}
- \expandafter\def\csname simpleicon@renrenicon\endcsname {\simpleiconsmap\symbol{"F327}}
- \expandafter\def\csname simpleicon@repliticon\endcsname {\simpleiconsmap\symbol{"F328}}
- \expandafter\def\csname simpleicon@republicofgamersicon\endcsname {\simpleiconsmap\symbol{"F329}}
- \expandafter\def\csname simpleicon@rescripticon\endcsname {\simpleiconsmap\symbol{"F32A}}
- \expandafter\def\csname simpleicon@rescuetimeicon\endcsname {\simpleiconsmap\symbol{"F32B}}
- \expandafter\def\csname simpleicon@researchgateicon\endcsname {\simpleiconsmap\symbol{"F32C}}
- \expandafter\def\csname simpleicon@resendicon\endcsname {\simpleiconsmap\symbol{"F32D}}
- \expandafter\def\csname simpleicon@resharpericon\endcsname {\simpleiconsmap\symbol{"F32E}}
- \expandafter\def\csname simpleicon@resurrectionremixosicon\endcsname {\simpleiconsmap\symbol{"F32F}}
- \expandafter\def\csname simpleicon@retoolicon\endcsname {\simpleiconsmap\symbol{"F330}}
- \expandafter\def\csname simpleicon@retroarchicon\endcsname {\simpleiconsmap\symbol{"F331}}
- \expandafter\def\csname simpleicon@retropieicon\endcsname {\simpleiconsmap\symbol{"F332}}
- \expandafter\def\csname simpleicon@revancedicon\endcsname {\simpleiconsmap\symbol{"F333}}
- \expandafter\def\csname simpleicon@revealdotjsicon\endcsname {\simpleiconsmap\symbol{"F334}}
- \expandafter\def\csname simpleicon@reverbnationicon\endcsname {\simpleiconsmap\symbol{"F335}}
- \expandafter\def\csname simpleicon@revoltdotchaticon\endcsname {\simpleiconsmap\symbol{"F336}}
- \expandafter\def\csname simpleicon@revoluticon\endcsname {\simpleiconsmap\symbol{"F337}}
- \expandafter\def\csname simpleicon@revueicon\endcsname {\simpleiconsmap\symbol{"F338}}
- \expandafter\def\csname simpleicon@reweicon\endcsname {\simpleiconsmap\symbol{"F339}}
- \expandafter\def\csname simpleicon@rezgoicon\endcsname {\simpleiconsmap\symbol{"F33A}}
- \expandafter\def\csname simpleicon@rhinocerosicon\endcsname {\simpleiconsmap\symbol{"F33B}}
- \expandafter\def\csname simpleicon@richicon\endcsname {\simpleiconsmap\symbol{"F33C}}
- \expandafter\def\csname simpleicon@ridericon\endcsname {\simpleiconsmap\symbol{"F33D}}
- \expandafter\def\csname simpleicon@rimacautomobiliicon\endcsname {\simpleiconsmap\symbol{"F33E}}
- \expandafter\def\csname simpleicon@rimeicon\endcsname {\simpleiconsmap\symbol{"F33F}}
- \expandafter\def\csname simpleicon@ringicon\endcsname {\simpleiconsmap\symbol{"F340}}
- \expandafter\def\csname simpleicon@riotgamesicon\endcsname {\simpleiconsmap\symbol{"F341}}
- \expandafter\def\csname simpleicon@rippleicon\endcsname {\simpleiconsmap\symbol{"F342}}
- \expandafter\def\csname simpleicon@riscvicon\endcsname {\simpleiconsmap\symbol{"F343}}
- \expandafter\def\csname simpleicon@riseupicon\endcsname {\simpleiconsmap\symbol{"F344}}
- \expandafter\def\csname simpleicon@ritzcarltonicon\endcsname {\simpleiconsmap\symbol{"F345}}
- \expandafter\def\csname simpleicon@riveicon\endcsname {\simpleiconsmap\symbol{"F346}}
- \expandafter\def\csname simpleicon@roadmapdotshicon\endcsname {\simpleiconsmap\symbol{"F347}}
- \expandafter\def\csname simpleicon@roamresearchicon\endcsname {\simpleiconsmap\symbol{"F348}}
- \expandafter\def\csname simpleicon@robinhoodicon\endcsname {\simpleiconsmap\symbol{"F349}}
- \expandafter\def\csname simpleicon@robloxicon\endcsname {\simpleiconsmap\symbol{"F34A}}
- \expandafter\def\csname simpleicon@robloxstudioicon\endcsname {\simpleiconsmap\symbol{"F34B}}
- \expandafter\def\csname simpleicon@robotframeworkicon\endcsname {\simpleiconsmap\symbol{"F34C}}
- \expandafter\def\csname simpleicon@rocketicon\endcsname {\simpleiconsmap\symbol{"F34D}}
- \expandafter\def\csname simpleicon@rocketdotchaticon\endcsname {\simpleiconsmap\symbol{"F34E}}
- \expandafter\def\csname simpleicon@rocksdbicon\endcsname {\simpleiconsmap\symbol{"F34F}}
- \expandafter\def\csname simpleicon@rockstargamesicon\endcsname {\simpleiconsmap\symbol{"F350}}
- \expandafter\def\csname simpleicon@rockwellautomationicon\endcsname {\simpleiconsmap\symbol{"F351}}
- \expandafter\def\csname simpleicon@rockylinuxicon\endcsname {\simpleiconsmap\symbol{"F352}}
- \expandafter\def\csname simpleicon@rokuicon\endcsname {\simpleiconsmap\symbol{"F353}}
- \expandafter\def\csname simpleicon@roll20icon\endcsname {\simpleiconsmap\symbol{"F354}}
- \expandafter\def\csname simpleicon@rollsroyceicon\endcsname {\simpleiconsmap\symbol{"F355}}
- \expandafter\def\csname simpleicon@rollupdotjsicon\endcsname {\simpleiconsmap\symbol{"F356}}
- \expandafter\def\csname simpleicon@roonicon\endcsname {\simpleiconsmap\symbol{"F357}}
- \expandafter\def\csname simpleicon@rootmeicon\endcsname {\simpleiconsmap\symbol{"F358}}
- \expandafter\def\csname simpleicon@rootsicon\endcsname {\simpleiconsmap\symbol{"F359}}
- \expandafter\def\csname simpleicon@rootsbedrockicon\endcsname {\simpleiconsmap\symbol{"F35A}}
- \expandafter\def\csname simpleicon@rootssageicon\endcsname {\simpleiconsmap\symbol{"F35B}}
- \expandafter\def\csname simpleicon@rosicon\endcsname {\simpleiconsmap\symbol{"F35C}}
- \expandafter\def\csname simpleicon@rossmannicon\endcsname {\simpleiconsmap\symbol{"F35D}}
- \expandafter\def\csname simpleicon@rotaryinternationalicon\endcsname {\simpleiconsmap\symbol{"F35E}}
- \expandafter\def\csname simpleicon@rottentomatoesicon\endcsname {\simpleiconsmap\symbol{"F35F}}
- \expandafter\def\csname simpleicon@roundcubeicon\endcsname {\simpleiconsmap\symbol{"F360}}
- \expandafter\def\csname simpleicon@rsocketicon\endcsname {\simpleiconsmap\symbol{"F361}}
- \expandafter\def\csname simpleicon@rssicon\endcsname {\simpleiconsmap\symbol{"F362}}
- \expandafter\def\csname simpleicon@rstudioideicon\endcsname {\simpleiconsmap\symbol{"F363}}
- \expandafter\def\csname simpleicon@rteicon\endcsname {\simpleiconsmap\symbol{"F364}}
- \expandafter\def\csname simpleicon@rtlicon\endcsname {\simpleiconsmap\symbol{"F365}}
- \expandafter\def\csname simpleicon@rtlzweiicon\endcsname {\simpleiconsmap\symbol{"F366}}
- \expandafter\def\csname simpleicon@rtmicon\endcsname {\simpleiconsmap\symbol{"F367}}
- \expandafter\def\csname simpleicon@rubocopicon\endcsname {\simpleiconsmap\symbol{"F368}}
- \expandafter\def\csname simpleicon@rubyicon\endcsname {\simpleiconsmap\symbol{"F369}}
- \expandafter\def\csname simpleicon@rubygemsicon\endcsname {\simpleiconsmap\symbol{"F36A}}
- \expandafter\def\csname simpleicon@rubymineicon\endcsname {\simpleiconsmap\symbol{"F36B}}
- \expandafter\def\csname simpleicon@rubyonrailsicon\endcsname {\simpleiconsmap\symbol{"F36C}}
- \expandafter\def\csname simpleicon@rubysinatraicon\endcsname {\simpleiconsmap\symbol{"F36D}}
- \expandafter\def\csname simpleicon@rufficon\endcsname {\simpleiconsmap\symbol{"F36E}}
- \expandafter\def\csname simpleicon@rumahwebicon\endcsname {\simpleiconsmap\symbol{"F36F}}
- \expandafter\def\csname simpleicon@rumbleicon\endcsname {\simpleiconsmap\symbol{"F370}}
- \expandafter\def\csname simpleicon@rundeckicon\endcsname {\simpleiconsmap\symbol{"F371}}
- \expandafter\def\csname simpleicon@runkeepericon\endcsname {\simpleiconsmap\symbol{"F372}}
- \expandafter\def\csname simpleicon@runkiticon\endcsname {\simpleiconsmap\symbol{"F373}}
- \expandafter\def\csname simpleicon@runrundotiticon\endcsname {\simpleiconsmap\symbol{"F374}}
- \expandafter\def\csname simpleicon@rusticon\endcsname {\simpleiconsmap\symbol{"F375}}
- \expandafter\def\csname simpleicon@rustdeskicon\endcsname {\simpleiconsmap\symbol{"F376}}
- \expandafter\def\csname simpleicon@rxdbicon\endcsname {\simpleiconsmap\symbol{"F377}}
- \expandafter\def\csname simpleicon@ryanairicon\endcsname {\simpleiconsmap\symbol{"F378}}
- \expandafter\def\csname simpleicon@ryeicon\endcsname {\simpleiconsmap\symbol{"F379}}
- \expandafter\def\csname simpleicon@s7airlinesicon\endcsname {\simpleiconsmap\symbol{"F37A}}
- \expandafter\def\csname simpleicon@sabanciicon\endcsname {\simpleiconsmap\symbol{"F37B}}
- \expandafter\def\csname simpleicon@safariicon\endcsname {\simpleiconsmap\symbol{"F37C}}
- \expandafter\def\csname simpleicon@sageicon\endcsname {\simpleiconsmap\symbol{"F37D}}
- \expandafter\def\csname simpleicon@sahibindenicon\endcsname {\simpleiconsmap\symbol{"F37E}}
- \expandafter\def\csname simpleicon@sailfishosicon\endcsname {\simpleiconsmap\symbol{"F37F}}
- \expandafter\def\csname simpleicon@sailsdotjsicon\endcsname {\simpleiconsmap\symbol{"F380}}
- \expandafter\def\csname simpleicon@salesforceicon\endcsname {\simpleiconsmap\symbol{"F381}}
- \expandafter\def\csname simpleicon@sallaicon\endcsname {\simpleiconsmap\symbol{"F382}}
- \expandafter\def\csname simpleicon@saltprojecticon\endcsname {\simpleiconsmap\symbol{"F383}}
- \expandafter\def\csname simpleicon@samsclubicon\endcsname {\simpleiconsmap\symbol{"F384}}
- \expandafter\def\csname simpleicon@samsungicon\endcsname {\simpleiconsmap\symbol{"F385}}
- \expandafter\def\csname simpleicon@samsungpayicon\endcsname {\simpleiconsmap\symbol{"F386}}
- \expandafter\def\csname simpleicon@sandiskicon\endcsname {\simpleiconsmap\symbol{"F387}}
- \expandafter\def\csname simpleicon@sanfranciscomunicipalrailwayicon\endcsname {\simpleiconsmap\symbol{"F388}}
- \expandafter\def\csname simpleicon@sanicicon\endcsname {\simpleiconsmap\symbol{"F389}}
- \expandafter\def\csname simpleicon@sanityicon\endcsname {\simpleiconsmap\symbol{"F38A}}
- \expandafter\def\csname simpleicon@saopaulometroicon\endcsname {\simpleiconsmap\symbol{"F38B}}
- \expandafter\def\csname simpleicon@sapicon\endcsname {\simpleiconsmap\symbol{"F38C}}
- \expandafter\def\csname simpleicon@sartoriusicon\endcsname {\simpleiconsmap\symbol{"F38D}}
- \expandafter\def\csname simpleicon@sassicon\endcsname {\simpleiconsmap\symbol{"F38E}}
- \expandafter\def\csname simpleicon@sat1icon\endcsname {\simpleiconsmap\symbol{"F38F}}
- \expandafter\def\csname simpleicon@satelliteicon\endcsname {\simpleiconsmap\symbol{"F390}}
- \expandafter\def\csname simpleicon@saturnicon\endcsname {\simpleiconsmap\symbol{"F391}}
- \expandafter\def\csname simpleicon@saucelabsicon\endcsname {\simpleiconsmap\symbol{"F392}}
- \expandafter\def\csname simpleicon@saudiaicon\endcsname {\simpleiconsmap\symbol{"F393}}
- \expandafter\def\csname simpleicon@scalaicon\endcsname {\simpleiconsmap\symbol{"F394}}
- \expandafter\def\csname simpleicon@scalewayicon\endcsname {\simpleiconsmap\symbol{"F395}}
- \expandafter\def\csname simpleicon@scaniaicon\endcsname {\simpleiconsmap\symbol{"F396}}
- \expandafter\def\csname simpleicon@schneiderelectricicon\endcsname {\simpleiconsmap\symbol{"F397}}
- \expandafter\def\csname simpleicon@scikitlearnicon\endcsname {\simpleiconsmap\symbol{"F398}}
- \expandafter\def\csname simpleicon@scilabicon\endcsname {\simpleiconsmap\symbol{"F399}}
- \expandafter\def\csname simpleicon@scipyicon\endcsname {\simpleiconsmap\symbol{"F39A}}
- \expandafter\def\csname simpleicon@scopusicon\endcsname {\simpleiconsmap\symbol{"F39B}}
- \expandafter\def\csname simpleicon@scpfoundationicon\endcsname {\simpleiconsmap\symbol{"F39C}}
- \expandafter\def\csname simpleicon@scrapboxicon\endcsname {\simpleiconsmap\symbol{"F39D}}
- \expandafter\def\csname simpleicon@scrapyicon\endcsname {\simpleiconsmap\symbol{"F39E}}
- \expandafter\def\csname simpleicon@scratchicon\endcsname {\simpleiconsmap\symbol{"F39F}}
- \expandafter\def\csname simpleicon@screencastifyicon\endcsname {\simpleiconsmap\symbol{"F3A0}}
- \expandafter\def\csname simpleicon@scribdicon\endcsname {\simpleiconsmap\symbol{"F3A1}}
- \expandafter\def\csname simpleicon@scrimbaicon\endcsname {\simpleiconsmap\symbol{"F3A2}}
- \expandafter\def\csname simpleicon@scrollrevealicon\endcsname {\simpleiconsmap\symbol{"F3A3}}
- \expandafter\def\csname simpleicon@scrumallianceicon\endcsname {\simpleiconsmap\symbol{"F3A4}}
- \expandafter\def\csname simpleicon@scrutinizerciicon\endcsname {\simpleiconsmap\symbol{"F3A5}}
- \expandafter\def\csname simpleicon@scylladbicon\endcsname {\simpleiconsmap\symbol{"F3A6}}
- \expandafter\def\csname simpleicon@seagateicon\endcsname {\simpleiconsmap\symbol{"F3A7}}
- \expandafter\def\csname simpleicon@searxngicon\endcsname {\simpleiconsmap\symbol{"F3A8}}
- \expandafter\def\csname simpleicon@seaticon\endcsname {\simpleiconsmap\symbol{"F3A9}}
- \expandafter\def\csname simpleicon@seatgeekicon\endcsname {\simpleiconsmap\symbol{"F3AA}}
- \expandafter\def\csname simpleicon@securityscorecardicon\endcsname {\simpleiconsmap\symbol{"F3AB}}
- \expandafter\def\csname simpleicon@sefariaicon\endcsname {\simpleiconsmap\symbol{"F3AC}}
- \expandafter\def\csname simpleicon@segaicon\endcsname {\simpleiconsmap\symbol{"F3AD}}
- \expandafter\def\csname simpleicon@seleniumicon\endcsname {\simpleiconsmap\symbol{"F3AE}}
- \expandafter\def\csname simpleicon@sellfyicon\endcsname {\simpleiconsmap\symbol{"F3AF}}
- \expandafter\def\csname simpleicon@semanticreleaseicon\endcsname {\simpleiconsmap\symbol{"F3B0}}
- \expandafter\def\csname simpleicon@semanticscholaricon\endcsname {\simpleiconsmap\symbol{"F3B1}}
- \expandafter\def\csname simpleicon@semanticuiicon\endcsname {\simpleiconsmap\symbol{"F3B2}}
- \expandafter\def\csname simpleicon@semanticuireacticon\endcsname {\simpleiconsmap\symbol{"F3B3}}
- \expandafter\def\csname simpleicon@semanticwebicon\endcsname {\simpleiconsmap\symbol{"F3B4}}
- \expandafter\def\csname simpleicon@semaphoreciicon\endcsname {\simpleiconsmap\symbol{"F3B5}}
- \expandafter\def\csname simpleicon@semrushicon\endcsname {\simpleiconsmap\symbol{"F3B6}}
- \expandafter\def\csname simpleicon@semvericon\endcsname {\simpleiconsmap\symbol{"F3B7}}
- \expandafter\def\csname simpleicon@senchaicon\endcsname {\simpleiconsmap\symbol{"F3B8}}
- \expandafter\def\csname simpleicon@sennheisericon\endcsname {\simpleiconsmap\symbol{"F3B9}}
- \expandafter\def\csname simpleicon@sensuicon\endcsname {\simpleiconsmap\symbol{"F3BA}}
- \expandafter\def\csname simpleicon@sentryicon\endcsname {\simpleiconsmap\symbol{"F3BB}}
- \expandafter\def\csname simpleicon@sepaicon\endcsname {\simpleiconsmap\symbol{"F3BC}}
- \expandafter\def\csname simpleicon@sequelizeicon\endcsname {\simpleiconsmap\symbol{"F3BD}}
- \expandafter\def\csname simpleicon@serverfaulticon\endcsname {\simpleiconsmap\symbol{"F3BE}}
- \expandafter\def\csname simpleicon@serverlessicon\endcsname {\simpleiconsmap\symbol{"F3BF}}
- \expandafter\def\csname simpleicon@sessionicon\endcsname {\simpleiconsmap\symbol{"F3C0}}
- \expandafter\def\csname simpleicon@sessionizeicon\endcsname {\simpleiconsmap\symbol{"F3C1}}
- \expandafter\def\csname simpleicon@setappicon\endcsname {\simpleiconsmap\symbol{"F3C2}}
- \expandafter\def\csname simpleicon@sfmlicon\endcsname {\simpleiconsmap\symbol{"F3C3}}
- \expandafter\def\csname simpleicon@shadcnuiicon\endcsname {\simpleiconsmap\symbol{"F3C4}}
- \expandafter\def\csname simpleicon@shadowicon\endcsname {\simpleiconsmap\symbol{"F3C5}}
- \expandafter\def\csname simpleicon@shanghaimetroicon\endcsname {\simpleiconsmap\symbol{"F3C6}}
- \expandafter\def\csname simpleicon@sharexicon\endcsname {\simpleiconsmap\symbol{"F3C7}}
- \expandafter\def\csname simpleicon@sharpicon\endcsname {\simpleiconsmap\symbol{"F3C8}}
- \expandafter\def\csname simpleicon@shazamicon\endcsname {\simpleiconsmap\symbol{"F3C9}}
- \expandafter\def\csname simpleicon@shellicon\endcsname {\simpleiconsmap\symbol{"F3CA}}
- \expandafter\def\csname simpleicon@shellyicon\endcsname {\simpleiconsmap\symbol{"F3CB}}
- \expandafter\def\csname simpleicon@shenzhenmetroicon\endcsname {\simpleiconsmap\symbol{"F3CC}}
- \expandafter\def\csname simpleicon@shieldsdotioicon\endcsname {\simpleiconsmap\symbol{"F3CD}}
- \expandafter\def\csname simpleicon@shikimoriicon\endcsname {\simpleiconsmap\symbol{"F3CE}}
- \expandafter\def\csname simpleicon@shopeeicon\endcsname {\simpleiconsmap\symbol{"F3CF}}
- \expandafter\def\csname simpleicon@shopifyicon\endcsname {\simpleiconsmap\symbol{"F3D0}}
- \expandafter\def\csname simpleicon@shopwareicon\endcsname {\simpleiconsmap\symbol{"F3D1}}
- \expandafter\def\csname simpleicon@shortcuticon\endcsname {\simpleiconsmap\symbol{"F3D2}}
- \expandafter\def\csname simpleicon@showpadicon\endcsname {\simpleiconsmap\symbol{"F3D3}}
- \expandafter\def\csname simpleicon@showtimeicon\endcsname {\simpleiconsmap\symbol{"F3D4}}
- \expandafter\def\csname simpleicon@showwcaseicon\endcsname {\simpleiconsmap\symbol{"F3D5}}
- \expandafter\def\csname simpleicon@shutterstockicon\endcsname {\simpleiconsmap\symbol{"F3D6}}
- \expandafter\def\csname simpleicon@sidekiqicon\endcsname {\simpleiconsmap\symbol{"F3D7}}
- \expandafter\def\csname simpleicon@sidequesticon\endcsname {\simpleiconsmap\symbol{"F3D8}}
- \expandafter\def\csname simpleicon@siemensicon\endcsname {\simpleiconsmap\symbol{"F3D9}}
- \expandafter\def\csname simpleicon@sifiveicon\endcsname {\simpleiconsmap\symbol{"F3DA}}
- \expandafter\def\csname simpleicon@signalicon\endcsname {\simpleiconsmap\symbol{"F3DB}}
- \expandafter\def\csname simpleicon@similarwebicon\endcsname {\simpleiconsmap\symbol{"F3DC}}
- \expandafter\def\csname simpleicon@simklicon\endcsname {\simpleiconsmap\symbol{"F3DD}}
- \expandafter\def\csname simpleicon@simpleanalyticsicon\endcsname {\simpleiconsmap\symbol{"F3DE}}
- \expandafter\def\csname simpleicon@simpleiconsicon\endcsname {\simpleiconsmap\symbol{"F3DF}}
- \expandafter\def\csname simpleicon@simpleloginicon\endcsname {\simpleiconsmap\symbol{"F3E0}}
- \expandafter\def\csname simpleicon@simplenoteicon\endcsname {\simpleiconsmap\symbol{"F3E1}}
- \expandafter\def\csname simpleicon@sinaweiboicon\endcsname {\simpleiconsmap\symbol{"F3E2}}
- \expandafter\def\csname simpleicon@singaporeairlinesicon\endcsname {\simpleiconsmap\symbol{"F3E3}}
- \expandafter\def\csname simpleicon@singlestoreicon\endcsname {\simpleiconsmap\symbol{"F3E4}}
- \expandafter\def\csname simpleicon@sitecoreicon\endcsname {\simpleiconsmap\symbol{"F3E5}}
- \expandafter\def\csname simpleicon@sitepointicon\endcsname {\simpleiconsmap\symbol{"F3E6}}
- \expandafter\def\csname simpleicon@siyuanicon\endcsname {\simpleiconsmap\symbol{"F3E7}}
- \expandafter\def\csname simpleicon@skaffoldicon\endcsname {\simpleiconsmap\symbol{"F3E8}}
- \expandafter\def\csname simpleicon@sketchicon\endcsname {\simpleiconsmap\symbol{"F3E9}}
- \expandafter\def\csname simpleicon@sketchfabicon\endcsname {\simpleiconsmap\symbol{"F3EA}}
- \expandafter\def\csname simpleicon@sketchupicon\endcsname {\simpleiconsmap\symbol{"F3EB}}
- \expandafter\def\csname simpleicon@skillshareicon\endcsname {\simpleiconsmap\symbol{"F3EC}}
- \expandafter\def\csname simpleicon@skodaicon\endcsname {\simpleiconsmap\symbol{"F3ED}}
- \expandafter\def\csname simpleicon@skyicon\endcsname {\simpleiconsmap\symbol{"F3EE}}
- \expandafter\def\csname simpleicon@skypackicon\endcsname {\simpleiconsmap\symbol{"F3EF}}
- \expandafter\def\csname simpleicon@skypeicon\endcsname {\simpleiconsmap\symbol{"F3F0}}
- \expandafter\def\csname simpleicon@skypeforbusinessicon\endcsname {\simpleiconsmap\symbol{"F3F1}}
- \expandafter\def\csname simpleicon@skyrockicon\endcsname {\simpleiconsmap\symbol{"F3F2}}
- \expandafter\def\csname simpleicon@slackicon\endcsname {\simpleiconsmap\symbol{"F3F3}}
- \expandafter\def\csname simpleicon@slackwareicon\endcsname {\simpleiconsmap\symbol{"F3F4}}
- \expandafter\def\csname simpleicon@slashdoticon\endcsname {\simpleiconsmap\symbol{"F3F5}}
- \expandafter\def\csname simpleicon@slickpicicon\endcsname {\simpleiconsmap\symbol{"F3F6}}
- \expandafter\def\csname simpleicon@slidesicon\endcsname {\simpleiconsmap\symbol{"F3F7}}
- \expandafter\def\csname simpleicon@slideshareicon\endcsname {\simpleiconsmap\symbol{"F3F8}}
- \expandafter\def\csname simpleicon@slinticon\endcsname {\simpleiconsmap\symbol{"F3F9}}
- \expandafter\def\csname simpleicon@smarticon\endcsname {\simpleiconsmap\symbol{"F3FA}}
- \expandafter\def\csname simpleicon@smartthingsicon\endcsname {\simpleiconsmap\symbol{"F3FB}}
- \expandafter\def\csname simpleicon@smashdotggicon\endcsname {\simpleiconsmap\symbol{"F3FC}}
- \expandafter\def\csname simpleicon@smashingmagazineicon\endcsname {\simpleiconsmap\symbol{"F3FD}}
- \expandafter\def\csname simpleicon@smrticon\endcsname {\simpleiconsmap\symbol{"F3FE}}
- \expandafter\def\csname simpleicon@smugmugicon\endcsname {\simpleiconsmap\symbol{"F3FF}}
- \expandafter\def\csname simpleicon@snapchaticon\endcsname {\simpleiconsmap\symbol{"F400}}
- \expandafter\def\csname simpleicon@snapcrafticon\endcsname {\simpleiconsmap\symbol{"F401}}
- \expandafter\def\csname simpleicon@sncficon\endcsname {\simpleiconsmap\symbol{"F402}}
- \expandafter\def\csname simpleicon@snorticon\endcsname {\simpleiconsmap\symbol{"F403}}
- \expandafter\def\csname simpleicon@snowflakeicon\endcsname {\simpleiconsmap\symbol{"F404}}
- \expandafter\def\csname simpleicon@snowpackicon\endcsname {\simpleiconsmap\symbol{"F405}}
- \expandafter\def\csname simpleicon@snykicon\endcsname {\simpleiconsmap\symbol{"F406}}
- \expandafter\def\csname simpleicon@socialbladeicon\endcsname {\simpleiconsmap\symbol{"F407}}
- \expandafter\def\csname simpleicon@society6icon\endcsname {\simpleiconsmap\symbol{"F408}}
- \expandafter\def\csname simpleicon@socketdotioicon\endcsname {\simpleiconsmap\symbol{"F409}}
- \expandafter\def\csname simpleicon@softpediaicon\endcsname {\simpleiconsmap\symbol{"F40A}}
- \expandafter\def\csname simpleicon@sogouicon\endcsname {\simpleiconsmap\symbol{"F40B}}
- \expandafter\def\csname simpleicon@solanaicon\endcsname {\simpleiconsmap\symbol{"F40C}}
- \expandafter\def\csname simpleicon@solidicon\endcsname {\simpleiconsmap\symbol{"F40D}}
- \expandafter\def\csname simpleicon@solidityicon\endcsname {\simpleiconsmap\symbol{"F40E}}
- \expandafter\def\csname simpleicon@sololearnicon\endcsname {\simpleiconsmap\symbol{"F40F}}
- \expandafter\def\csname simpleicon@solusicon\endcsname {\simpleiconsmap\symbol{"F410}}
- \expandafter\def\csname simpleicon@sonaricon\endcsname {\simpleiconsmap\symbol{"F411}}
- \expandafter\def\csname simpleicon@sonarcloudicon\endcsname {\simpleiconsmap\symbol{"F412}}
- \expandafter\def\csname simpleicon@sonarlinticon\endcsname {\simpleiconsmap\symbol{"F413}}
- \expandafter\def\csname simpleicon@sonarqubeicon\endcsname {\simpleiconsmap\symbol{"F414}}
- \expandafter\def\csname simpleicon@sonarricon\endcsname {\simpleiconsmap\symbol{"F415}}
- \expandafter\def\csname simpleicon@sonatypeicon\endcsname {\simpleiconsmap\symbol{"F416}}
- \expandafter\def\csname simpleicon@songkickicon\endcsname {\simpleiconsmap\symbol{"F417}}
- \expandafter\def\csname simpleicon@songodaicon\endcsname {\simpleiconsmap\symbol{"F418}}
- \expandafter\def\csname simpleicon@sonicwallicon\endcsname {\simpleiconsmap\symbol{"F419}}
- \expandafter\def\csname simpleicon@sonosicon\endcsname {\simpleiconsmap\symbol{"F41A}}
- \expandafter\def\csname simpleicon@sonyicon\endcsname {\simpleiconsmap\symbol{"F41B}}
- \expandafter\def\csname simpleicon@sorianaicon\endcsname {\simpleiconsmap\symbol{"F41C}}
- \expandafter\def\csname simpleicon@soundchartsicon\endcsname {\simpleiconsmap\symbol{"F41D}}
- \expandafter\def\csname simpleicon@soundcloudicon\endcsname {\simpleiconsmap\symbol{"F41E}}
- \expandafter\def\csname simpleicon@sourceengineicon\endcsname {\simpleiconsmap\symbol{"F41F}}
- \expandafter\def\csname simpleicon@sourceforgeicon\endcsname {\simpleiconsmap\symbol{"F420}}
- \expandafter\def\csname simpleicon@sourcehuticon\endcsname {\simpleiconsmap\symbol{"F421}}
- \expandafter\def\csname simpleicon@sourcetreeicon\endcsname {\simpleiconsmap\symbol{"F422}}
- \expandafter\def\csname simpleicon@southwestairlinesicon\endcsname {\simpleiconsmap\symbol{"F423}}
- \expandafter\def\csname simpleicon@spacemacsicon\endcsname {\simpleiconsmap\symbol{"F424}}
- \expandafter\def\csname simpleicon@spaceshipicon\endcsname {\simpleiconsmap\symbol{"F425}}
- \expandafter\def\csname simpleicon@spacexicon\endcsname {\simpleiconsmap\symbol{"F426}}
- \expandafter\def\csname simpleicon@spacyicon\endcsname {\simpleiconsmap\symbol{"F427}}
- \expandafter\def\csname simpleicon@sparkaricon\endcsname {\simpleiconsmap\symbol{"F428}}
- \expandafter\def\csname simpleicon@sparkasseicon\endcsname {\simpleiconsmap\symbol{"F429}}
- \expandafter\def\csname simpleicon@sparkfunicon\endcsname {\simpleiconsmap\symbol{"F42A}}
- \expandafter\def\csname simpleicon@sparkposticon\endcsname {\simpleiconsmap\symbol{"F42B}}
- \expandafter\def\csname simpleicon@spdxicon\endcsname {\simpleiconsmap\symbol{"F42C}}
- \expandafter\def\csname simpleicon@speakerdeckicon\endcsname {\simpleiconsmap\symbol{"F42D}}
- \expandafter\def\csname simpleicon@spectrumicon\endcsname {\simpleiconsmap\symbol{"F42E}}
- \expandafter\def\csname simpleicon@speedtesticon\endcsname {\simpleiconsmap\symbol{"F42F}}
- \expandafter\def\csname simpleicon@speedypageicon\endcsname {\simpleiconsmap\symbol{"F430}}
- \expandafter\def\csname simpleicon@sphinxicon\endcsname {\simpleiconsmap\symbol{"F431}}
- \expandafter\def\csname simpleicon@spigotmcicon\endcsname {\simpleiconsmap\symbol{"F432}}
- \expandafter\def\csname simpleicon@spineicon\endcsname {\simpleiconsmap\symbol{"F433}}
- \expandafter\def\csname simpleicon@spinnakericon\endcsname {\simpleiconsmap\symbol{"F434}}
- \expandafter\def\csname simpleicon@spinrillaicon\endcsname {\simpleiconsmap\symbol{"F435}}
- \expandafter\def\csname simpleicon@splunkicon\endcsname {\simpleiconsmap\symbol{"F436}}
- \expandafter\def\csname simpleicon@spojicon\endcsname {\simpleiconsmap\symbol{"F437}}
- \expandafter\def\csname simpleicon@spondicon\endcsname {\simpleiconsmap\symbol{"F438}}
- \expandafter\def\csname simpleicon@spotifyicon\endcsname {\simpleiconsmap\symbol{"F439}}
- \expandafter\def\csname simpleicon@spotlighticon\endcsname {\simpleiconsmap\symbol{"F43A}}
- \expandafter\def\csname simpleicon@spreadshirticon\endcsname {\simpleiconsmap\symbol{"F43B}}
- \expandafter\def\csname simpleicon@spreakericon\endcsname {\simpleiconsmap\symbol{"F43C}}
- \expandafter\def\csname simpleicon@springicon\endcsname {\simpleiconsmap\symbol{"F43D}}
- \expandafter\def\csname simpleicon@springcreatorsicon\endcsname {\simpleiconsmap\symbol{"F43E}}
- \expandafter\def\csname simpleicon@springbooticon\endcsname {\simpleiconsmap\symbol{"F43F}}
- \expandafter\def\csname simpleicon@springsecurityicon\endcsname {\simpleiconsmap\symbol{"F440}}
- \expandafter\def\csname simpleicon@spyderideicon\endcsname {\simpleiconsmap\symbol{"F441}}
- \expandafter\def\csname simpleicon@sqlalchemyicon\endcsname {\simpleiconsmap\symbol{"F442}}
- \expandafter\def\csname simpleicon@sqliteicon\endcsname {\simpleiconsmap\symbol{"F443}}
- \expandafter\def\csname simpleicon@squareicon\endcsname {\simpleiconsmap\symbol{"F444}}
- \expandafter\def\csname simpleicon@squareenixicon\endcsname {\simpleiconsmap\symbol{"F445}}
- \expandafter\def\csname simpleicon@squarespaceicon\endcsname {\simpleiconsmap\symbol{"F446}}
- \expandafter\def\csname simpleicon@srgssricon\endcsname {\simpleiconsmap\symbol{"F447}}
- \expandafter\def\csname simpleicon@ssrnicon\endcsname {\simpleiconsmap\symbol{"F448}}
- \expandafter\def\csname simpleicon@ssticon\endcsname {\simpleiconsmap\symbol{"F449}}
- \expandafter\def\csname simpleicon@stackbiticon\endcsname {\simpleiconsmap\symbol{"F44A}}
- \expandafter\def\csname simpleicon@stackblitzicon\endcsname {\simpleiconsmap\symbol{"F44B}}
- \expandafter\def\csname simpleicon@stackediticon\endcsname {\simpleiconsmap\symbol{"F44C}}
- \expandafter\def\csname simpleicon@stackexchangeicon\endcsname {\simpleiconsmap\symbol{"F44D}}
- \expandafter\def\csname simpleicon@stackhawkicon\endcsname {\simpleiconsmap\symbol{"F44E}}
- \expandafter\def\csname simpleicon@stackoverflowicon\endcsname {\simpleiconsmap\symbol{"F44F}}
- \expandafter\def\csname simpleicon@stackpathicon\endcsname {\simpleiconsmap\symbol{"F450}}
- \expandafter\def\csname simpleicon@stackshareicon\endcsname {\simpleiconsmap\symbol{"F451}}
- \expandafter\def\csname simpleicon@stadiaicon\endcsname {\simpleiconsmap\symbol{"F452}}
- \expandafter\def\csname simpleicon@staffbaseicon\endcsname {\simpleiconsmap\symbol{"F453}}
- \expandafter\def\csname simpleicon@stagetimericon\endcsname {\simpleiconsmap\symbol{"F454}}
- \expandafter\def\csname simpleicon@standardjsicon\endcsname {\simpleiconsmap\symbol{"F455}}
- \expandafter\def\csname simpleicon@standardresumeicon\endcsname {\simpleiconsmap\symbol{"F456}}
- \expandafter\def\csname simpleicon@starbucksicon\endcsname {\simpleiconsmap\symbol{"F457}}
- \expandafter\def\csname simpleicon@stardockicon\endcsname {\simpleiconsmap\symbol{"F458}}
- \expandafter\def\csname simpleicon@starlingbankicon\endcsname {\simpleiconsmap\symbol{"F459}}
- \expandafter\def\csname simpleicon@starshipicon\endcsname {\simpleiconsmap\symbol{"F45A}}
- \expandafter\def\csname simpleicon@startrekicon\endcsname {\simpleiconsmap\symbol{"F45B}}
- \expandafter\def\csname simpleicon@starzicon\endcsname {\simpleiconsmap\symbol{"F45C}}
- \expandafter\def\csname simpleicon@statamicicon\endcsname {\simpleiconsmap\symbol{"F45D}}
- \expandafter\def\csname simpleicon@statistaicon\endcsname {\simpleiconsmap\symbol{"F45E}}
- \expandafter\def\csname simpleicon@statuspageicon\endcsname {\simpleiconsmap\symbol{"F45F}}
- \expandafter\def\csname simpleicon@statuspalicon\endcsname {\simpleiconsmap\symbol{"F460}}
- \expandafter\def\csname simpleicon@steamicon\endcsname {\simpleiconsmap\symbol{"F461}}
- \expandafter\def\csname simpleicon@steamdbicon\endcsname {\simpleiconsmap\symbol{"F462}}
- \expandafter\def\csname simpleicon@steamdeckicon\endcsname {\simpleiconsmap\symbol{"F463}}
- \expandafter\def\csname simpleicon@steamworksicon\endcsname {\simpleiconsmap\symbol{"F464}}
- \expandafter\def\csname simpleicon@steelseriesicon\endcsname {\simpleiconsmap\symbol{"F465}}
- \expandafter\def\csname simpleicon@steemicon\endcsname {\simpleiconsmap\symbol{"F466}}
- \expandafter\def\csname simpleicon@steemiticon\endcsname {\simpleiconsmap\symbol{"F467}}
- \expandafter\def\csname simpleicon@steinbergicon\endcsname {\simpleiconsmap\symbol{"F468}}
- \expandafter\def\csname simpleicon@stellaricon\endcsname {\simpleiconsmap\symbol{"F469}}
- \expandafter\def\csname simpleicon@stencilicon\endcsname {\simpleiconsmap\symbol{"F46A}}
- \expandafter\def\csname simpleicon@stencylicon\endcsname {\simpleiconsmap\symbol{"F46B}}
- \expandafter\def\csname simpleicon@stimulusicon\endcsname {\simpleiconsmap\symbol{"F46C}}
- \expandafter\def\csname simpleicon@stitchericon\endcsname {\simpleiconsmap\symbol{"F46D}}
- \expandafter\def\csname simpleicon@stmicroelectronicsicon\endcsname {\simpleiconsmap\symbol{"F46E}}
- \expandafter\def\csname simpleicon@stockxicon\endcsname {\simpleiconsmap\symbol{"F46F}}
- \expandafter\def\csname simpleicon@stopstalkicon\endcsname {\simpleiconsmap\symbol{"F470}}
- \expandafter\def\csname simpleicon@storyblokicon\endcsname {\simpleiconsmap\symbol{"F471}}
- \expandafter\def\csname simpleicon@storybookicon\endcsname {\simpleiconsmap\symbol{"F472}}
- \expandafter\def\csname simpleicon@strapiicon\endcsname {\simpleiconsmap\symbol{"F473}}
- \expandafter\def\csname simpleicon@stravaicon\endcsname {\simpleiconsmap\symbol{"F474}}
- \expandafter\def\csname simpleicon@streamlabsicon\endcsname {\simpleiconsmap\symbol{"F475}}
- \expandafter\def\csname simpleicon@streamliticon\endcsname {\simpleiconsmap\symbol{"F476}}
- \expandafter\def\csname simpleicon@streamrunnersicon\endcsname {\simpleiconsmap\symbol{"F477}}
- \expandafter\def\csname simpleicon@stripeicon\endcsname {\simpleiconsmap\symbol{"F478}}
- \expandafter\def\csname simpleicon@strongswanicon\endcsname {\simpleiconsmap\symbol{"F479}}
- \expandafter\def\csname simpleicon@strykericon\endcsname {\simpleiconsmap\symbol{"F47A}}
- \expandafter\def\csname simpleicon@stubhubicon\endcsname {\simpleiconsmap\symbol{"F47B}}
- \expandafter\def\csname simpleicon@studio3ticon\endcsname {\simpleiconsmap\symbol{"F47C}}
- \expandafter\def\csname simpleicon@studyverseicon\endcsname {\simpleiconsmap\symbol{"F47D}}
- \expandafter\def\csname simpleicon@styledcomponentsicon\endcsname {\simpleiconsmap\symbol{"F47E}}
- \expandafter\def\csname simpleicon@stylelinticon\endcsname {\simpleiconsmap\symbol{"F47F}}
- \expandafter\def\csname simpleicon@styleshareicon\endcsname {\simpleiconsmap\symbol{"F480}}
- \expandafter\def\csname simpleicon@stylusicon\endcsname {\simpleiconsmap\symbol{"F481}}
- \expandafter\def\csname simpleicon@subaruicon\endcsname {\simpleiconsmap\symbol{"F482}}
- \expandafter\def\csname simpleicon@sublimetexticon\endcsname {\simpleiconsmap\symbol{"F483}}
- \expandafter\def\csname simpleicon@substackicon\endcsname {\simpleiconsmap\symbol{"F484}}
- \expandafter\def\csname simpleicon@subtitleediticon\endcsname {\simpleiconsmap\symbol{"F485}}
- \expandafter\def\csname simpleicon@subversionicon\endcsname {\simpleiconsmap\symbol{"F486}}
- \expandafter\def\csname simpleicon@sucklessicon\endcsname {\simpleiconsmap\symbol{"F487}}
- \expandafter\def\csname simpleicon@sumologicicon\endcsname {\simpleiconsmap\symbol{"F488}}
- \expandafter\def\csname simpleicon@sunoicon\endcsname {\simpleiconsmap\symbol{"F489}}
- \expandafter\def\csname simpleicon@sunriseicon\endcsname {\simpleiconsmap\symbol{"F48A}}
- \expandafter\def\csname simpleicon@supabaseicon\endcsname {\simpleiconsmap\symbol{"F48B}}
- \expandafter\def\csname simpleicon@supercreaseicon\endcsname {\simpleiconsmap\symbol{"F48C}}
- \expandafter\def\csname simpleicon@supermicroicon\endcsname {\simpleiconsmap\symbol{"F48D}}
- \expandafter\def\csname simpleicon@superusericon\endcsname {\simpleiconsmap\symbol{"F48E}}
- \expandafter\def\csname simpleicon@surrealdbicon\endcsname {\simpleiconsmap\symbol{"F48F}}
- \expandafter\def\csname simpleicon@surveymonkeyicon\endcsname {\simpleiconsmap\symbol{"F490}}
- \expandafter\def\csname simpleicon@suseicon\endcsname {\simpleiconsmap\symbol{"F491}}
- \expandafter\def\csname simpleicon@suzukiicon\endcsname {\simpleiconsmap\symbol{"F492}}
- \expandafter\def\csname simpleicon@svelteicon\endcsname {\simpleiconsmap\symbol{"F493}}
- \expandafter\def\csname simpleicon@svgicon\endcsname {\simpleiconsmap\symbol{"F494}}
- \expandafter\def\csname simpleicon@svgdotjsicon\endcsname {\simpleiconsmap\symbol{"F495}}
- \expandafter\def\csname simpleicon@svgoicon\endcsname {\simpleiconsmap\symbol{"F496}}
- \expandafter\def\csname simpleicon@swaggericon\endcsname {\simpleiconsmap\symbol{"F497}}
- \expandafter\def\csname simpleicon@swarmicon\endcsname {\simpleiconsmap\symbol{"F498}}
- \expandafter\def\csname simpleicon@swcicon\endcsname {\simpleiconsmap\symbol{"F499}}
- \expandafter\def\csname simpleicon@swifticon\endcsname {\simpleiconsmap\symbol{"F49A}}
- \expandafter\def\csname simpleicon@swiggyicon\endcsname {\simpleiconsmap\symbol{"F49B}}
- \expandafter\def\csname simpleicon@swipericon\endcsname {\simpleiconsmap\symbol{"F49C}}
- \expandafter\def\csname simpleicon@swricon\endcsname {\simpleiconsmap\symbol{"F49D}}
- \expandafter\def\csname simpleicon@symantecicon\endcsname {\simpleiconsmap\symbol{"F49E}}
- \expandafter\def\csname simpleicon@symbolabicon\endcsname {\simpleiconsmap\symbol{"F49F}}
- \expandafter\def\csname simpleicon@symfonyicon\endcsname {\simpleiconsmap\symbol{"F4A0}}
- \expandafter\def\csname simpleicon@symphonyicon\endcsname {\simpleiconsmap\symbol{"F4A1}}
- \expandafter\def\csname simpleicon@sympyicon\endcsname {\simpleiconsmap\symbol{"F4A2}}
- \expandafter\def\csname simpleicon@syncthingicon\endcsname {\simpleiconsmap\symbol{"F4A3}}
- \expandafter\def\csname simpleicon@synologyicon\endcsname {\simpleiconsmap\symbol{"F4A4}}
- \expandafter\def\csname simpleicon@system76icon\endcsname {\simpleiconsmap\symbol{"F4A5}}
- \expandafter\def\csname simpleicon@tabelogicon\endcsname {\simpleiconsmap\symbol{"F4A6}}
- \expandafter\def\csname simpleicon@tableauicon\endcsname {\simpleiconsmap\symbol{"F4A7}}
- \expandafter\def\csname simpleicon@tablecheckicon\endcsname {\simpleiconsmap\symbol{"F4A8}}
- \expandafter\def\csname simpleicon@tacobellicon\endcsname {\simpleiconsmap\symbol{"F4A9}}
- \expandafter\def\csname simpleicon@tadoicon\endcsname {\simpleiconsmap\symbol{"F4AA}}
- \expandafter\def\csname simpleicon@taichigraphicsicon\endcsname {\simpleiconsmap\symbol{"F4AB}}
- \expandafter\def\csname simpleicon@taichilangicon\endcsname {\simpleiconsmap\symbol{"F4AC}}
- \expandafter\def\csname simpleicon@tailsicon\endcsname {\simpleiconsmap\symbol{"F4AD}}
- \expandafter\def\csname simpleicon@tailscaleicon\endcsname {\simpleiconsmap\symbol{"F4AE}}
- \expandafter\def\csname simpleicon@tailwindcssicon\endcsname {\simpleiconsmap\symbol{"F4AF}}
- \expandafter\def\csname simpleicon@taipyicon\endcsname {\simpleiconsmap\symbol{"F4B0}}
- \expandafter\def\csname simpleicon@taketwointeractivesoftwareicon\endcsname {\simpleiconsmap\symbol{"F4B1}}
- \expandafter\def\csname simpleicon@talendicon\endcsname {\simpleiconsmap\symbol{"F4B2}}
- \expandafter\def\csname simpleicon@talenthouseicon\endcsname {\simpleiconsmap\symbol{"F4B3}}
- \expandafter\def\csname simpleicon@talosicon\endcsname {\simpleiconsmap\symbol{"F4B4}}
- \expandafter\def\csname simpleicon@tamiyaicon\endcsname {\simpleiconsmap\symbol{"F4B5}}
- \expandafter\def\csname simpleicon@tampermonkeyicon\endcsname {\simpleiconsmap\symbol{"F4B6}}
- \expandafter\def\csname simpleicon@taobaoicon\endcsname {\simpleiconsmap\symbol{"F4B7}}
- \expandafter\def\csname simpleicon@tapasicon\endcsname {\simpleiconsmap\symbol{"F4B8}}
- \expandafter\def\csname simpleicon@targeticon\endcsname {\simpleiconsmap\symbol{"F4B9}}
- \expandafter\def\csname simpleicon@taskicon\endcsname {\simpleiconsmap\symbol{"F4BA}}
- \expandafter\def\csname simpleicon@tasmotaicon\endcsname {\simpleiconsmap\symbol{"F4BB}}
- \expandafter\def\csname simpleicon@tataicon\endcsname {\simpleiconsmap\symbol{"F4BC}}
- \expandafter\def\csname simpleicon@tauriicon\endcsname {\simpleiconsmap\symbol{"F4BD}}
- \expandafter\def\csname simpleicon@taxbuzzicon\endcsname {\simpleiconsmap\symbol{"F4BE}}
- \expandafter\def\csname simpleicon@tcsicon\endcsname {\simpleiconsmap\symbol{"F4BF}}
- \expandafter\def\csname simpleicon@tealicon\endcsname {\simpleiconsmap\symbol{"F4C0}}
- \expandafter\def\csname simpleicon@teamcityicon\endcsname {\simpleiconsmap\symbol{"F4C1}}
- \expandafter\def\csname simpleicon@teamspeakicon\endcsname {\simpleiconsmap\symbol{"F4C2}}
- \expandafter\def\csname simpleicon@teamviewericon\endcsname {\simpleiconsmap\symbol{"F4C3}}
+ \expandafter\def\csname simpleicon@pleromaicon\endcsname {\simpleiconsmap\symbol{"F24C}}
+ \expandafter\def\csname simpleicon@pleskicon\endcsname {\simpleiconsmap\symbol{"F24D}}
+ \expandafter\def\csname simpleicon@plexicon\endcsname {\simpleiconsmap\symbol{"F24E}}
+ \expandafter\def\csname simpleicon@plotlyicon\endcsname {\simpleiconsmap\symbol{"F24F}}
+ \expandafter\def\csname simpleicon@plumeicon\endcsname {\simpleiconsmap\symbol{"F250}}
+ \expandafter\def\csname simpleicon@pluralsighticon\endcsname {\simpleiconsmap\symbol{"F251}}
+ \expandafter\def\csname simpleicon@plurkicon\endcsname {\simpleiconsmap\symbol{"F252}}
+ \expandafter\def\csname simpleicon@pluscodesicon\endcsname {\simpleiconsmap\symbol{"F253}}
+ \expandafter\def\csname simpleicon@pm2icon\endcsname {\simpleiconsmap\symbol{"F254}}
+ \expandafter\def\csname simpleicon@pnpmicon\endcsname {\simpleiconsmap\symbol{"F255}}
+ \expandafter\def\csname simpleicon@pocketicon\endcsname {\simpleiconsmap\symbol{"F256}}
+ \expandafter\def\csname simpleicon@pocketbaseicon\endcsname {\simpleiconsmap\symbol{"F257}}
+ \expandafter\def\csname simpleicon@pocketcastsicon\endcsname {\simpleiconsmap\symbol{"F258}}
+ \expandafter\def\csname simpleicon@podcastaddicticon\endcsname {\simpleiconsmap\symbol{"F259}}
+ \expandafter\def\csname simpleicon@podcastindexicon\endcsname {\simpleiconsmap\symbol{"F25A}}
+ \expandafter\def\csname simpleicon@podmanicon\endcsname {\simpleiconsmap\symbol{"F25B}}
+ \expandafter\def\csname simpleicon@poeicon\endcsname {\simpleiconsmap\symbol{"F25C}}
+ \expandafter\def\csname simpleicon@poetryicon\endcsname {\simpleiconsmap\symbol{"F25D}}
+ \expandafter\def\csname simpleicon@pointyicon\endcsname {\simpleiconsmap\symbol{"F25E}}
+ \expandafter\def\csname simpleicon@pokemonicon\endcsname {\simpleiconsmap\symbol{"F25F}}
+ \expandafter\def\csname simpleicon@polarsicon\endcsname {\simpleiconsmap\symbol{"F260}}
+ \expandafter\def\csname simpleicon@polestaricon\endcsname {\simpleiconsmap\symbol{"F261}}
+ \expandafter\def\csname simpleicon@polkadoticon\endcsname {\simpleiconsmap\symbol{"F262}}
+ \expandafter\def\csname simpleicon@polyicon\endcsname {\simpleiconsmap\symbol{"F263}}
+ \expandafter\def\csname simpleicon@polygonicon\endcsname {\simpleiconsmap\symbol{"F264}}
+ \expandafter\def\csname simpleicon@polymerprojecticon\endcsname {\simpleiconsmap\symbol{"F265}}
+ \expandafter\def\csname simpleicon@polyworkicon\endcsname {\simpleiconsmap\symbol{"F266}}
+ \expandafter\def\csname simpleicon@pond5icon\endcsname {\simpleiconsmap\symbol{"F267}}
+ \expandafter\def\csname simpleicon@poposicon\endcsname {\simpleiconsmap\symbol{"F268}}
+ \expandafter\def\csname simpleicon@porkbunicon\endcsname {\simpleiconsmap\symbol{"F269}}
+ \expandafter\def\csname simpleicon@porscheicon\endcsname {\simpleiconsmap\symbol{"F26A}}
+ \expandafter\def\csname simpleicon@portainericon\endcsname {\simpleiconsmap\symbol{"F26B}}
+ \expandafter\def\csname simpleicon@portswiggericon\endcsname {\simpleiconsmap\symbol{"F26C}}
+ \expandafter\def\csname simpleicon@positicon\endcsname {\simpleiconsmap\symbol{"F26D}}
+ \expandafter\def\csname simpleicon@postcssicon\endcsname {\simpleiconsmap\symbol{"F26E}}
+ \expandafter\def\csname simpleicon@postgresqlicon\endcsname {\simpleiconsmap\symbol{"F26F}}
+ \expandafter\def\csname simpleicon@posthogicon\endcsname {\simpleiconsmap\symbol{"F270}}
+ \expandafter\def\csname simpleicon@postmanicon\endcsname {\simpleiconsmap\symbol{"F271}}
+ \expandafter\def\csname simpleicon@postmatesicon\endcsname {\simpleiconsmap\symbol{"F272}}
+ \expandafter\def\csname simpleicon@powersicon\endcsname {\simpleiconsmap\symbol{"F273}}
+ \expandafter\def\csname simpleicon@prdotcoicon\endcsname {\simpleiconsmap\symbol{"F274}}
+ \expandafter\def\csname simpleicon@preacticon\endcsname {\simpleiconsmap\symbol{"F275}}
+ \expandafter\def\csname simpleicon@precommiticon\endcsname {\simpleiconsmap\symbol{"F276}}
+ \expandafter\def\csname simpleicon@prefecticon\endcsname {\simpleiconsmap\symbol{"F277}}
+ \expandafter\def\csname simpleicon@premierleagueicon\endcsname {\simpleiconsmap\symbol{"F278}}
+ \expandafter\def\csname simpleicon@prepbytesicon\endcsname {\simpleiconsmap\symbol{"F279}}
+ \expandafter\def\csname simpleicon@prestashopicon\endcsname {\simpleiconsmap\symbol{"F27A}}
+ \expandafter\def\csname simpleicon@prestoicon\endcsname {\simpleiconsmap\symbol{"F27B}}
+ \expandafter\def\csname simpleicon@prettiericon\endcsname {\simpleiconsmap\symbol{"F27C}}
+ \expandafter\def\csname simpleicon@pretzelicon\endcsname {\simpleiconsmap\symbol{"F27D}}
+ \expandafter\def\csname simpleicon@preventionicon\endcsname {\simpleiconsmap\symbol{"F27E}}
+ \expandafter\def\csname simpleicon@preziicon\endcsname {\simpleiconsmap\symbol{"F27F}}
+ \expandafter\def\csname simpleicon@primeicon\endcsname {\simpleiconsmap\symbol{"F280}}
+ \expandafter\def\csname simpleicon@primefacesicon\endcsname {\simpleiconsmap\symbol{"F281}}
+ \expandafter\def\csname simpleicon@primengicon\endcsname {\simpleiconsmap\symbol{"F282}}
+ \expandafter\def\csname simpleicon@primereacticon\endcsname {\simpleiconsmap\symbol{"F283}}
+ \expandafter\def\csname simpleicon@primevideoicon\endcsname {\simpleiconsmap\symbol{"F284}}
+ \expandafter\def\csname simpleicon@primevueicon\endcsname {\simpleiconsmap\symbol{"F285}}
+ \expandafter\def\csname simpleicon@printablesicon\endcsname {\simpleiconsmap\symbol{"F286}}
+ \expandafter\def\csname simpleicon@prismaicon\endcsname {\simpleiconsmap\symbol{"F287}}
+ \expandafter\def\csname simpleicon@prismicicon\endcsname {\simpleiconsmap\symbol{"F288}}
+ \expandafter\def\csname simpleicon@privatedivisionicon\endcsname {\simpleiconsmap\symbol{"F289}}
+ \expandafter\def\csname simpleicon@privateinternetaccessicon\endcsname {\simpleiconsmap\symbol{"F28A}}
+ \expandafter\def\csname simpleicon@proboticon\endcsname {\simpleiconsmap\symbol{"F28B}}
+ \expandafter\def\csname simpleicon@processingfoundationicon\endcsname {\simpleiconsmap\symbol{"F28C}}
+ \expandafter\def\csname simpleicon@processwireicon\endcsname {\simpleiconsmap\symbol{"F28D}}
+ \expandafter\def\csname simpleicon@producthunticon\endcsname {\simpleiconsmap\symbol{"F28E}}
+ \expandafter\def\csname simpleicon@progateicon\endcsname {\simpleiconsmap\symbol{"F28F}}
+ \expandafter\def\csname simpleicon@progressicon\endcsname {\simpleiconsmap\symbol{"F290}}
+ \expandafter\def\csname simpleicon@prometheusicon\endcsname {\simpleiconsmap\symbol{"F291}}
+ \expandafter\def\csname simpleicon@pronounsdotpageicon\endcsname {\simpleiconsmap\symbol{"F292}}
+ \expandafter\def\csname simpleicon@prosiebenicon\endcsname {\simpleiconsmap\symbol{"F293}}
+ \expandafter\def\csname simpleicon@proteusicon\endcsname {\simpleiconsmap\symbol{"F294}}
+ \expandafter\def\csname simpleicon@protocolsdotioicon\endcsname {\simpleiconsmap\symbol{"F295}}
+ \expandafter\def\csname simpleicon@protodotioicon\endcsname {\simpleiconsmap\symbol{"F296}}
+ \expandafter\def\csname simpleicon@protonicon\endcsname {\simpleiconsmap\symbol{"F297}}
+ \expandafter\def\csname simpleicon@protoncalendaricon\endcsname {\simpleiconsmap\symbol{"F298}}
+ \expandafter\def\csname simpleicon@protondbicon\endcsname {\simpleiconsmap\symbol{"F299}}
+ \expandafter\def\csname simpleicon@protondriveicon\endcsname {\simpleiconsmap\symbol{"F29A}}
+ \expandafter\def\csname simpleicon@protonmailicon\endcsname {\simpleiconsmap\symbol{"F29B}}
+ \expandafter\def\csname simpleicon@protonvpnicon\endcsname {\simpleiconsmap\symbol{"F29C}}
+ \expandafter\def\csname simpleicon@protoolsicon\endcsname {\simpleiconsmap\symbol{"F29D}}
+ \expandafter\def\csname simpleicon@protractoricon\endcsname {\simpleiconsmap\symbol{"F29E}}
+ \expandafter\def\csname simpleicon@proxmoxicon\endcsname {\simpleiconsmap\symbol{"F29F}}
+ \expandafter\def\csname simpleicon@pterodactylicon\endcsname {\simpleiconsmap\symbol{"F2A0}}
+ \expandafter\def\csname simpleicon@pubgicon\endcsname {\simpleiconsmap\symbol{"F2A1}}
+ \expandafter\def\csname simpleicon@publonsicon\endcsname {\simpleiconsmap\symbol{"F2A2}}
+ \expandafter\def\csname simpleicon@pubmedicon\endcsname {\simpleiconsmap\symbol{"F2A3}}
+ \expandafter\def\csname simpleicon@pugicon\endcsname {\simpleiconsmap\symbol{"F2A4}}
+ \expandafter\def\csname simpleicon@pulumiicon\endcsname {\simpleiconsmap\symbol{"F2A5}}
+ \expandafter\def\csname simpleicon@pumaicon\endcsname {\simpleiconsmap\symbol{"F2A6}}
+ \expandafter\def\csname simpleicon@puppeticon\endcsname {\simpleiconsmap\symbol{"F2A7}}
+ \expandafter\def\csname simpleicon@puppeteericon\endcsname {\simpleiconsmap\symbol{"F2A8}}
+ \expandafter\def\csname simpleicon@purescripticon\endcsname {\simpleiconsmap\symbol{"F2A9}}
+ \expandafter\def\csname simpleicon@purgecssicon\endcsname {\simpleiconsmap\symbol{"F2AA}}
+ \expandafter\def\csname simpleicon@purismicon\endcsname {\simpleiconsmap\symbol{"F2AB}}
+ \expandafter\def\csname simpleicon@pushbulleticon\endcsname {\simpleiconsmap\symbol{"F2AC}}
+ \expandafter\def\csname simpleicon@pushericon\endcsname {\simpleiconsmap\symbol{"F2AD}}
+ \expandafter\def\csname simpleicon@pwaicon\endcsname {\simpleiconsmap\symbol{"F2AE}}
+ \expandafter\def\csname simpleicon@pycharmicon\endcsname {\simpleiconsmap\symbol{"F2AF}}
+ \expandafter\def\csname simpleicon@pycqaicon\endcsname {\simpleiconsmap\symbol{"F2B0}}
+ \expandafter\def\csname simpleicon@pydanticicon\endcsname {\simpleiconsmap\symbol{"F2B1}}
+ \expandafter\def\csname simpleicon@pygicon\endcsname {\simpleiconsmap\symbol{"F2B2}}
+ \expandafter\def\csname simpleicon@pypiicon\endcsname {\simpleiconsmap\symbol{"F2B3}}
+ \expandafter\def\csname simpleicon@pypyicon\endcsname {\simpleiconsmap\symbol{"F2B4}}
+ \expandafter\def\csname simpleicon@pyscaffoldicon\endcsname {\simpleiconsmap\symbol{"F2B5}}
+ \expandafter\def\csname simpleicon@pysyfticon\endcsname {\simpleiconsmap\symbol{"F2B6}}
+ \expandafter\def\csname simpleicon@pytesticon\endcsname {\simpleiconsmap\symbol{"F2B7}}
+ \expandafter\def\csname simpleicon@pythonicon\endcsname {\simpleiconsmap\symbol{"F2B8}}
+ \expandafter\def\csname simpleicon@pythonanywhereicon\endcsname {\simpleiconsmap\symbol{"F2B9}}
+ \expandafter\def\csname simpleicon@pytorchicon\endcsname {\simpleiconsmap\symbol{"F2BA}}
+ \expandafter\def\csname simpleicon@pyupicon\endcsname {\simpleiconsmap\symbol{"F2BB}}
+ \expandafter\def\csname simpleicon@qantasicon\endcsname {\simpleiconsmap\symbol{"F2BC}}
+ \expandafter\def\csname simpleicon@qaseicon\endcsname {\simpleiconsmap\symbol{"F2BD}}
+ \expandafter\def\csname simpleicon@qatarairwaysicon\endcsname {\simpleiconsmap\symbol{"F2BE}}
+ \expandafter\def\csname simpleicon@qbittorrenticon\endcsname {\simpleiconsmap\symbol{"F2BF}}
+ \expandafter\def\csname simpleicon@qemuicon\endcsname {\simpleiconsmap\symbol{"F2C0}}
+ \expandafter\def\csname simpleicon@qgisicon\endcsname {\simpleiconsmap\symbol{"F2C1}}
+ \expandafter\def\csname simpleicon@qiicon\endcsname {\simpleiconsmap\symbol{"F2C2}}
+ \expandafter\def\csname simpleicon@qiitaicon\endcsname {\simpleiconsmap\symbol{"F2C3}}
+ \expandafter\def\csname simpleicon@qiskiticon\endcsname {\simpleiconsmap\symbol{"F2C4}}
+ \expandafter\def\csname simpleicon@qiwiicon\endcsname {\simpleiconsmap\symbol{"F2C5}}
+ \expandafter\def\csname simpleicon@qlikicon\endcsname {\simpleiconsmap\symbol{"F2C6}}
+ \expandafter\def\csname simpleicon@qmkicon\endcsname {\simpleiconsmap\symbol{"F2C7}}
+ \expandafter\def\csname simpleicon@qnapicon\endcsname {\simpleiconsmap\symbol{"F2C8}}
+ \expandafter\def\csname simpleicon@qticon\endcsname {\simpleiconsmap\symbol{"F2C9}}
+ \expandafter\def\csname simpleicon@qualcommicon\endcsname {\simpleiconsmap\symbol{"F2CA}}
+ \expandafter\def\csname simpleicon@qualtricsicon\endcsname {\simpleiconsmap\symbol{"F2CB}}
+ \expandafter\def\csname simpleicon@qualysicon\endcsname {\simpleiconsmap\symbol{"F2CC}}
+ \expandafter\def\csname simpleicon@quantcasticon\endcsname {\simpleiconsmap\symbol{"F2CD}}
+ \expandafter\def\csname simpleicon@quantconnecticon\endcsname {\simpleiconsmap\symbol{"F2CE}}
+ \expandafter\def\csname simpleicon@quarkusicon\endcsname {\simpleiconsmap\symbol{"F2CF}}
+ \expandafter\def\csname simpleicon@quartoicon\endcsname {\simpleiconsmap\symbol{"F2D0}}
+ \expandafter\def\csname simpleicon@quasaricon\endcsname {\simpleiconsmap\symbol{"F2D1}}
+ \expandafter\def\csname simpleicon@qubesosicon\endcsname {\simpleiconsmap\symbol{"F2D2}}
+ \expandafter\def\csname simpleicon@questicon\endcsname {\simpleiconsmap\symbol{"F2D3}}
+ \expandafter\def\csname simpleicon@quickbooksicon\endcsname {\simpleiconsmap\symbol{"F2D4}}
+ \expandafter\def\csname simpleicon@quicklookicon\endcsname {\simpleiconsmap\symbol{"F2D5}}
+ \expandafter\def\csname simpleicon@quicktimeicon\endcsname {\simpleiconsmap\symbol{"F2D6}}
+ \expandafter\def\csname simpleicon@quicktypeicon\endcsname {\simpleiconsmap\symbol{"F2D7}}
+ \expandafter\def\csname simpleicon@quipicon\endcsname {\simpleiconsmap\symbol{"F2D8}}
+ \expandafter\def\csname simpleicon@quizleticon\endcsname {\simpleiconsmap\symbol{"F2D9}}
+ \expandafter\def\csname simpleicon@quoraicon\endcsname {\simpleiconsmap\symbol{"F2DA}}
+ \expandafter\def\csname simpleicon@qwanticon\endcsname {\simpleiconsmap\symbol{"F2DB}}
+ \expandafter\def\csname simpleicon@qwikicon\endcsname {\simpleiconsmap\symbol{"F2DC}}
+ \expandafter\def\csname simpleicon@qwiklabsicon\endcsname {\simpleiconsmap\symbol{"F2DD}}
+ \expandafter\def\csname simpleicon@qzoneicon\endcsname {\simpleiconsmap\symbol{"F2DE}}
+ \expandafter\def\csname simpleicon@ricon\endcsname {\simpleiconsmap\symbol{"F2DF}}
+ \expandafter\def\csname simpleicon@r3icon\endcsname {\simpleiconsmap\symbol{"F2E0}}
+ \expandafter\def\csname simpleicon@rabbitmqicon\endcsname {\simpleiconsmap\symbol{"F2E1}}
+ \expandafter\def\csname simpleicon@racketicon\endcsname {\simpleiconsmap\symbol{"F2E2}}
+ \expandafter\def\csname simpleicon@radaricon\endcsname {\simpleiconsmap\symbol{"F2E3}}
+ \expandafter\def\csname simpleicon@radarricon\endcsname {\simpleiconsmap\symbol{"F2E4}}
+ \expandafter\def\csname simpleicon@radiopublicicon\endcsname {\simpleiconsmap\symbol{"F2E5}}
+ \expandafter\def\csname simpleicon@radixuiicon\endcsname {\simpleiconsmap\symbol{"F2E6}}
+ \expandafter\def\csname simpleicon@radstudioicon\endcsname {\simpleiconsmap\symbol{"F2E7}}
+ \expandafter\def\csname simpleicon@railwayicon\endcsname {\simpleiconsmap\symbol{"F2E8}}
+ \expandafter\def\csname simpleicon@rainmetericon\endcsname {\simpleiconsmap\symbol{"F2E9}}
+ \expandafter\def\csname simpleicon@rakutenicon\endcsname {\simpleiconsmap\symbol{"F2EA}}
+ \expandafter\def\csname simpleicon@ramicon\endcsname {\simpleiconsmap\symbol{"F2EB}}
+ \expandafter\def\csname simpleicon@ranchericon\endcsname {\simpleiconsmap\symbol{"F2EC}}
+ \expandafter\def\csname simpleicon@rapidicon\endcsname {\simpleiconsmap\symbol{"F2ED}}
+ \expandafter\def\csname simpleicon@raribleicon\endcsname {\simpleiconsmap\symbol{"F2EE}}
+ \expandafter\def\csname simpleicon@rasaicon\endcsname {\simpleiconsmap\symbol{"F2EF}}
+ \expandafter\def\csname simpleicon@raspberrypiicon\endcsname {\simpleiconsmap\symbol{"F2F0}}
+ \expandafter\def\csname simpleicon@ravelryicon\endcsname {\simpleiconsmap\symbol{"F2F1}}
+ \expandafter\def\csname simpleicon@rayicon\endcsname {\simpleiconsmap\symbol{"F2F2}}
+ \expandafter\def\csname simpleicon@raycasticon\endcsname {\simpleiconsmap\symbol{"F2F3}}
+ \expandafter\def\csname simpleicon@raylibicon\endcsname {\simpleiconsmap\symbol{"F2F4}}
+ \expandafter\def\csname simpleicon@razericon\endcsname {\simpleiconsmap\symbol{"F2F5}}
+ \expandafter\def\csname simpleicon@razorpayicon\endcsname {\simpleiconsmap\symbol{"F2F6}}
+ \expandafter\def\csname simpleicon@rcloneicon\endcsname {\simpleiconsmap\symbol{"F2F7}}
+ \expandafter\def\csname simpleicon@reacticon\endcsname {\simpleiconsmap\symbol{"F2F8}}
+ \expandafter\def\csname simpleicon@reactbootstrapicon\endcsname {\simpleiconsmap\symbol{"F2F9}}
+ \expandafter\def\csname simpleicon@reacthookformicon\endcsname {\simpleiconsmap\symbol{"F2FA}}
+ \expandafter\def\csname simpleicon@reactiveresumeicon\endcsname {\simpleiconsmap\symbol{"F2FB}}
+ \expandafter\def\csname simpleicon@reactivexicon\endcsname {\simpleiconsmap\symbol{"F2FC}}
+ \expandafter\def\csname simpleicon@reactosicon\endcsname {\simpleiconsmap\symbol{"F2FD}}
+ \expandafter\def\csname simpleicon@reactqueryicon\endcsname {\simpleiconsmap\symbol{"F2FE}}
+ \expandafter\def\csname simpleicon@reactroutericon\endcsname {\simpleiconsmap\symbol{"F2FF}}
+ \expandafter\def\csname simpleicon@reacttableicon\endcsname {\simpleiconsmap\symbol{"F300}}
+ \expandafter\def\csname simpleicon@readdotcvicon\endcsname {\simpleiconsmap\symbol{"F301}}
+ \expandafter\def\csname simpleicon@readmeicon\endcsname {\simpleiconsmap\symbol{"F302}}
+ \expandafter\def\csname simpleicon@readthedocsicon\endcsname {\simpleiconsmap\symbol{"F303}}
+ \expandafter\def\csname simpleicon@realmicon\endcsname {\simpleiconsmap\symbol{"F304}}
+ \expandafter\def\csname simpleicon@reasonicon\endcsname {\simpleiconsmap\symbol{"F305}}
+ \expandafter\def\csname simpleicon@reasonstudiosicon\endcsname {\simpleiconsmap\symbol{"F306}}
+ \expandafter\def\csname simpleicon@recoilicon\endcsname {\simpleiconsmap\symbol{"F307}}
+ \expandafter\def\csname simpleicon@redicon\endcsname {\simpleiconsmap\symbol{"F308}}
+ \expandafter\def\csname simpleicon@redashicon\endcsname {\simpleiconsmap\symbol{"F309}}
+ \expandafter\def\csname simpleicon@redbubbleicon\endcsname {\simpleiconsmap\symbol{"F30A}}
+ \expandafter\def\csname simpleicon@redbullicon\endcsname {\simpleiconsmap\symbol{"F30B}}
+ \expandafter\def\csname simpleicon@redcandlegamesicon\endcsname {\simpleiconsmap\symbol{"F30C}}
+ \expandafter\def\csname simpleicon@redditicon\endcsname {\simpleiconsmap\symbol{"F30D}}
+ \expandafter\def\csname simpleicon@redhaticon\endcsname {\simpleiconsmap\symbol{"F30E}}
+ \expandafter\def\csname simpleicon@redhatopenshifticon\endcsname {\simpleiconsmap\symbol{"F30F}}
+ \expandafter\def\csname simpleicon@redisicon\endcsname {\simpleiconsmap\symbol{"F310}}
+ \expandafter\def\csname simpleicon@redmineicon\endcsname {\simpleiconsmap\symbol{"F311}}
+ \expandafter\def\csname simpleicon@redoxicon\endcsname {\simpleiconsmap\symbol{"F312}}
+ \expandafter\def\csname simpleicon@redragonicon\endcsname {\simpleiconsmap\symbol{"F313}}
+ \expandafter\def\csname simpleicon@redsysicon\endcsname {\simpleiconsmap\symbol{"F314}}
+ \expandafter\def\csname simpleicon@reduxicon\endcsname {\simpleiconsmap\symbol{"F315}}
+ \expandafter\def\csname simpleicon@reduxsagaicon\endcsname {\simpleiconsmap\symbol{"F316}}
+ \expandafter\def\csname simpleicon@redwoodjsicon\endcsname {\simpleiconsmap\symbol{"F317}}
+ \expandafter\def\csname simpleicon@reebokicon\endcsname {\simpleiconsmap\symbol{"F318}}
+ \expandafter\def\csname simpleicon@refineicon\endcsname {\simpleiconsmap\symbol{"F319}}
+ \expandafter\def\csname simpleicon@relayicon\endcsname {\simpleiconsmap\symbol{"F31A}}
+ \expandafter\def\csname simpleicon@relianceindustrieslimitedicon\endcsname {\simpleiconsmap\symbol{"F31B}}
+ \expandafter\def\csname simpleicon@remarkicon\endcsname {\simpleiconsmap\symbol{"F31C}}
+ \expandafter\def\csname simpleicon@remedyentertainmenticon\endcsname {\simpleiconsmap\symbol{"F31D}}
+ \expandafter\def\csname simpleicon@remixicon\endcsname {\simpleiconsmap\symbol{"F31E}}
+ \expandafter\def\csname simpleicon@removedotbgicon\endcsname {\simpleiconsmap\symbol{"F31F}}
+ \expandafter\def\csname simpleicon@renaulticon\endcsname {\simpleiconsmap\symbol{"F320}}
+ \expandafter\def\csname simpleicon@rendericon\endcsname {\simpleiconsmap\symbol{"F321}}
+ \expandafter\def\csname simpleicon@renovateicon\endcsname {\simpleiconsmap\symbol{"F322}}
+ \expandafter\def\csname simpleicon@renpyicon\endcsname {\simpleiconsmap\symbol{"F323}}
+ \expandafter\def\csname simpleicon@renrenicon\endcsname {\simpleiconsmap\symbol{"F324}}
+ \expandafter\def\csname simpleicon@repliticon\endcsname {\simpleiconsmap\symbol{"F325}}
+ \expandafter\def\csname simpleicon@republicofgamersicon\endcsname {\simpleiconsmap\symbol{"F326}}
+ \expandafter\def\csname simpleicon@rescripticon\endcsname {\simpleiconsmap\symbol{"F327}}
+ \expandafter\def\csname simpleicon@rescuetimeicon\endcsname {\simpleiconsmap\symbol{"F328}}
+ \expandafter\def\csname simpleicon@researchgateicon\endcsname {\simpleiconsmap\symbol{"F329}}
+ \expandafter\def\csname simpleicon@resendicon\endcsname {\simpleiconsmap\symbol{"F32A}}
+ \expandafter\def\csname simpleicon@resharpericon\endcsname {\simpleiconsmap\symbol{"F32B}}
+ \expandafter\def\csname simpleicon@resurrectionremixosicon\endcsname {\simpleiconsmap\symbol{"F32C}}
+ \expandafter\def\csname simpleicon@retoolicon\endcsname {\simpleiconsmap\symbol{"F32D}}
+ \expandafter\def\csname simpleicon@retroarchicon\endcsname {\simpleiconsmap\symbol{"F32E}}
+ \expandafter\def\csname simpleicon@retropieicon\endcsname {\simpleiconsmap\symbol{"F32F}}
+ \expandafter\def\csname simpleicon@revancedicon\endcsname {\simpleiconsmap\symbol{"F330}}
+ \expandafter\def\csname simpleicon@revealdotjsicon\endcsname {\simpleiconsmap\symbol{"F331}}
+ \expandafter\def\csname simpleicon@reverbnationicon\endcsname {\simpleiconsmap\symbol{"F332}}
+ \expandafter\def\csname simpleicon@revoltdotchaticon\endcsname {\simpleiconsmap\symbol{"F333}}
+ \expandafter\def\csname simpleicon@revoluticon\endcsname {\simpleiconsmap\symbol{"F334}}
+ \expandafter\def\csname simpleicon@revueicon\endcsname {\simpleiconsmap\symbol{"F335}}
+ \expandafter\def\csname simpleicon@reweicon\endcsname {\simpleiconsmap\symbol{"F336}}
+ \expandafter\def\csname simpleicon@rezgoicon\endcsname {\simpleiconsmap\symbol{"F337}}
+ \expandafter\def\csname simpleicon@rhinocerosicon\endcsname {\simpleiconsmap\symbol{"F338}}
+ \expandafter\def\csname simpleicon@richicon\endcsname {\simpleiconsmap\symbol{"F339}}
+ \expandafter\def\csname simpleicon@ridericon\endcsname {\simpleiconsmap\symbol{"F33A}}
+ \expandafter\def\csname simpleicon@rimacautomobiliicon\endcsname {\simpleiconsmap\symbol{"F33B}}
+ \expandafter\def\csname simpleicon@rimeicon\endcsname {\simpleiconsmap\symbol{"F33C}}
+ \expandafter\def\csname simpleicon@ringicon\endcsname {\simpleiconsmap\symbol{"F33D}}
+ \expandafter\def\csname simpleicon@riotgamesicon\endcsname {\simpleiconsmap\symbol{"F33E}}
+ \expandafter\def\csname simpleicon@rippleicon\endcsname {\simpleiconsmap\symbol{"F33F}}
+ \expandafter\def\csname simpleicon@riscvicon\endcsname {\simpleiconsmap\symbol{"F340}}
+ \expandafter\def\csname simpleicon@riseupicon\endcsname {\simpleiconsmap\symbol{"F341}}
+ \expandafter\def\csname simpleicon@ritzcarltonicon\endcsname {\simpleiconsmap\symbol{"F342}}
+ \expandafter\def\csname simpleicon@riveicon\endcsname {\simpleiconsmap\symbol{"F343}}
+ \expandafter\def\csname simpleicon@roadmapdotshicon\endcsname {\simpleiconsmap\symbol{"F344}}
+ \expandafter\def\csname simpleicon@roamresearchicon\endcsname {\simpleiconsmap\symbol{"F345}}
+ \expandafter\def\csname simpleicon@robinhoodicon\endcsname {\simpleiconsmap\symbol{"F346}}
+ \expandafter\def\csname simpleicon@robloxicon\endcsname {\simpleiconsmap\symbol{"F347}}
+ \expandafter\def\csname simpleicon@robloxstudioicon\endcsname {\simpleiconsmap\symbol{"F348}}
+ \expandafter\def\csname simpleicon@roboflowicon\endcsname {\simpleiconsmap\symbol{"F349}}
+ \expandafter\def\csname simpleicon@robotframeworkicon\endcsname {\simpleiconsmap\symbol{"F34A}}
+ \expandafter\def\csname simpleicon@rocketicon\endcsname {\simpleiconsmap\symbol{"F34B}}
+ \expandafter\def\csname simpleicon@rocketdotchaticon\endcsname {\simpleiconsmap\symbol{"F34C}}
+ \expandafter\def\csname simpleicon@rocksdbicon\endcsname {\simpleiconsmap\symbol{"F34D}}
+ \expandafter\def\csname simpleicon@rockstargamesicon\endcsname {\simpleiconsmap\symbol{"F34E}}
+ \expandafter\def\csname simpleicon@rockwellautomationicon\endcsname {\simpleiconsmap\symbol{"F34F}}
+ \expandafter\def\csname simpleicon@rockylinuxicon\endcsname {\simpleiconsmap\symbol{"F350}}
+ \expandafter\def\csname simpleicon@rokuicon\endcsname {\simpleiconsmap\symbol{"F351}}
+ \expandafter\def\csname simpleicon@roll20icon\endcsname {\simpleiconsmap\symbol{"F352}}
+ \expandafter\def\csname simpleicon@rollsroyceicon\endcsname {\simpleiconsmap\symbol{"F353}}
+ \expandafter\def\csname simpleicon@rollupdotjsicon\endcsname {\simpleiconsmap\symbol{"F354}}
+ \expandafter\def\csname simpleicon@roonicon\endcsname {\simpleiconsmap\symbol{"F355}}
+ \expandafter\def\csname simpleicon@rootmeicon\endcsname {\simpleiconsmap\symbol{"F356}}
+ \expandafter\def\csname simpleicon@rootsicon\endcsname {\simpleiconsmap\symbol{"F357}}
+ \expandafter\def\csname simpleicon@rootsbedrockicon\endcsname {\simpleiconsmap\symbol{"F358}}
+ \expandafter\def\csname simpleicon@rootssageicon\endcsname {\simpleiconsmap\symbol{"F359}}
+ \expandafter\def\csname simpleicon@rosicon\endcsname {\simpleiconsmap\symbol{"F35A}}
+ \expandafter\def\csname simpleicon@rossmannicon\endcsname {\simpleiconsmap\symbol{"F35B}}
+ \expandafter\def\csname simpleicon@rotaryinternationalicon\endcsname {\simpleiconsmap\symbol{"F35C}}
+ \expandafter\def\csname simpleicon@rottentomatoesicon\endcsname {\simpleiconsmap\symbol{"F35D}}
+ \expandafter\def\csname simpleicon@roundcubeicon\endcsname {\simpleiconsmap\symbol{"F35E}}
+ \expandafter\def\csname simpleicon@rsocketicon\endcsname {\simpleiconsmap\symbol{"F35F}}
+ \expandafter\def\csname simpleicon@rssicon\endcsname {\simpleiconsmap\symbol{"F360}}
+ \expandafter\def\csname simpleicon@rstudioideicon\endcsname {\simpleiconsmap\symbol{"F361}}
+ \expandafter\def\csname simpleicon@rteicon\endcsname {\simpleiconsmap\symbol{"F362}}
+ \expandafter\def\csname simpleicon@rtlicon\endcsname {\simpleiconsmap\symbol{"F363}}
+ \expandafter\def\csname simpleicon@rtlzweiicon\endcsname {\simpleiconsmap\symbol{"F364}}
+ \expandafter\def\csname simpleicon@rtmicon\endcsname {\simpleiconsmap\symbol{"F365}}
+ \expandafter\def\csname simpleicon@rubocopicon\endcsname {\simpleiconsmap\symbol{"F366}}
+ \expandafter\def\csname simpleicon@rubyicon\endcsname {\simpleiconsmap\symbol{"F367}}
+ \expandafter\def\csname simpleicon@rubygemsicon\endcsname {\simpleiconsmap\symbol{"F368}}
+ \expandafter\def\csname simpleicon@rubymineicon\endcsname {\simpleiconsmap\symbol{"F369}}
+ \expandafter\def\csname simpleicon@rubyonrailsicon\endcsname {\simpleiconsmap\symbol{"F36A}}
+ \expandafter\def\csname simpleicon@rubysinatraicon\endcsname {\simpleiconsmap\symbol{"F36B}}
+ \expandafter\def\csname simpleicon@rufficon\endcsname {\simpleiconsmap\symbol{"F36C}}
+ \expandafter\def\csname simpleicon@rumahwebicon\endcsname {\simpleiconsmap\symbol{"F36D}}
+ \expandafter\def\csname simpleicon@rumbleicon\endcsname {\simpleiconsmap\symbol{"F36E}}
+ \expandafter\def\csname simpleicon@rundeckicon\endcsname {\simpleiconsmap\symbol{"F36F}}
+ \expandafter\def\csname simpleicon@runkeepericon\endcsname {\simpleiconsmap\symbol{"F370}}
+ \expandafter\def\csname simpleicon@runkiticon\endcsname {\simpleiconsmap\symbol{"F371}}
+ \expandafter\def\csname simpleicon@runrundotiticon\endcsname {\simpleiconsmap\symbol{"F372}}
+ \expandafter\def\csname simpleicon@rusticon\endcsname {\simpleiconsmap\symbol{"F373}}
+ \expandafter\def\csname simpleicon@rustdeskicon\endcsname {\simpleiconsmap\symbol{"F374}}
+ \expandafter\def\csname simpleicon@rxdbicon\endcsname {\simpleiconsmap\symbol{"F375}}
+ \expandafter\def\csname simpleicon@ryanairicon\endcsname {\simpleiconsmap\symbol{"F376}}
+ \expandafter\def\csname simpleicon@ryeicon\endcsname {\simpleiconsmap\symbol{"F377}}
+ \expandafter\def\csname simpleicon@s7airlinesicon\endcsname {\simpleiconsmap\symbol{"F378}}
+ \expandafter\def\csname simpleicon@sabanciicon\endcsname {\simpleiconsmap\symbol{"F379}}
+ \expandafter\def\csname simpleicon@safariicon\endcsname {\simpleiconsmap\symbol{"F37A}}
+ \expandafter\def\csname simpleicon@sageicon\endcsname {\simpleiconsmap\symbol{"F37B}}
+ \expandafter\def\csname simpleicon@sahibindenicon\endcsname {\simpleiconsmap\symbol{"F37C}}
+ \expandafter\def\csname simpleicon@sailfishosicon\endcsname {\simpleiconsmap\symbol{"F37D}}
+ \expandafter\def\csname simpleicon@sailsdotjsicon\endcsname {\simpleiconsmap\symbol{"F37E}}
+ \expandafter\def\csname simpleicon@salesforceicon\endcsname {\simpleiconsmap\symbol{"F37F}}
+ \expandafter\def\csname simpleicon@sallaicon\endcsname {\simpleiconsmap\symbol{"F380}}
+ \expandafter\def\csname simpleicon@saltprojecticon\endcsname {\simpleiconsmap\symbol{"F381}}
+ \expandafter\def\csname simpleicon@samsclubicon\endcsname {\simpleiconsmap\symbol{"F382}}
+ \expandafter\def\csname simpleicon@samsungicon\endcsname {\simpleiconsmap\symbol{"F383}}
+ \expandafter\def\csname simpleicon@samsungpayicon\endcsname {\simpleiconsmap\symbol{"F384}}
+ \expandafter\def\csname simpleicon@sandiskicon\endcsname {\simpleiconsmap\symbol{"F385}}
+ \expandafter\def\csname simpleicon@sanfranciscomunicipalrailwayicon\endcsname {\simpleiconsmap\symbol{"F386}}
+ \expandafter\def\csname simpleicon@sanicicon\endcsname {\simpleiconsmap\symbol{"F387}}
+ \expandafter\def\csname simpleicon@sanityicon\endcsname {\simpleiconsmap\symbol{"F388}}
+ \expandafter\def\csname simpleicon@saopaulometroicon\endcsname {\simpleiconsmap\symbol{"F389}}
+ \expandafter\def\csname simpleicon@sapicon\endcsname {\simpleiconsmap\symbol{"F38A}}
+ \expandafter\def\csname simpleicon@sartoriusicon\endcsname {\simpleiconsmap\symbol{"F38B}}
+ \expandafter\def\csname simpleicon@sassicon\endcsname {\simpleiconsmap\symbol{"F38C}}
+ \expandafter\def\csname simpleicon@sat1icon\endcsname {\simpleiconsmap\symbol{"F38D}}
+ \expandafter\def\csname simpleicon@satelliteicon\endcsname {\simpleiconsmap\symbol{"F38E}}
+ \expandafter\def\csname simpleicon@saturnicon\endcsname {\simpleiconsmap\symbol{"F38F}}
+ \expandafter\def\csname simpleicon@saucelabsicon\endcsname {\simpleiconsmap\symbol{"F390}}
+ \expandafter\def\csname simpleicon@saudiaicon\endcsname {\simpleiconsmap\symbol{"F391}}
+ \expandafter\def\csname simpleicon@scalaicon\endcsname {\simpleiconsmap\symbol{"F392}}
+ \expandafter\def\csname simpleicon@scalewayicon\endcsname {\simpleiconsmap\symbol{"F393}}
+ \expandafter\def\csname simpleicon@scaniaicon\endcsname {\simpleiconsmap\symbol{"F394}}
+ \expandafter\def\csname simpleicon@schneiderelectricicon\endcsname {\simpleiconsmap\symbol{"F395}}
+ \expandafter\def\csname simpleicon@scikitlearnicon\endcsname {\simpleiconsmap\symbol{"F396}}
+ \expandafter\def\csname simpleicon@scilabicon\endcsname {\simpleiconsmap\symbol{"F397}}
+ \expandafter\def\csname simpleicon@scipyicon\endcsname {\simpleiconsmap\symbol{"F398}}
+ \expandafter\def\csname simpleicon@scopusicon\endcsname {\simpleiconsmap\symbol{"F399}}
+ \expandafter\def\csname simpleicon@scpfoundationicon\endcsname {\simpleiconsmap\symbol{"F39A}}
+ \expandafter\def\csname simpleicon@scrapboxicon\endcsname {\simpleiconsmap\symbol{"F39B}}
+ \expandafter\def\csname simpleicon@scrapyicon\endcsname {\simpleiconsmap\symbol{"F39C}}
+ \expandafter\def\csname simpleicon@scratchicon\endcsname {\simpleiconsmap\symbol{"F39D}}
+ \expandafter\def\csname simpleicon@screencastifyicon\endcsname {\simpleiconsmap\symbol{"F39E}}
+ \expandafter\def\csname simpleicon@scribdicon\endcsname {\simpleiconsmap\symbol{"F39F}}
+ \expandafter\def\csname simpleicon@scrimbaicon\endcsname {\simpleiconsmap\symbol{"F3A0}}
+ \expandafter\def\csname simpleicon@scrollrevealicon\endcsname {\simpleiconsmap\symbol{"F3A1}}
+ \expandafter\def\csname simpleicon@scrumallianceicon\endcsname {\simpleiconsmap\symbol{"F3A2}}
+ \expandafter\def\csname simpleicon@scrutinizerciicon\endcsname {\simpleiconsmap\symbol{"F3A3}}
+ \expandafter\def\csname simpleicon@scylladbicon\endcsname {\simpleiconsmap\symbol{"F3A4}}
+ \expandafter\def\csname simpleicon@seagateicon\endcsname {\simpleiconsmap\symbol{"F3A5}}
+ \expandafter\def\csname simpleicon@searxngicon\endcsname {\simpleiconsmap\symbol{"F3A6}}
+ \expandafter\def\csname simpleicon@seaticon\endcsname {\simpleiconsmap\symbol{"F3A7}}
+ \expandafter\def\csname simpleicon@seatgeekicon\endcsname {\simpleiconsmap\symbol{"F3A8}}
+ \expandafter\def\csname simpleicon@securityscorecardicon\endcsname {\simpleiconsmap\symbol{"F3A9}}
+ \expandafter\def\csname simpleicon@sefariaicon\endcsname {\simpleiconsmap\symbol{"F3AA}}
+ \expandafter\def\csname simpleicon@segaicon\endcsname {\simpleiconsmap\symbol{"F3AB}}
+ \expandafter\def\csname simpleicon@seleniumicon\endcsname {\simpleiconsmap\symbol{"F3AC}}
+ \expandafter\def\csname simpleicon@sellfyicon\endcsname {\simpleiconsmap\symbol{"F3AD}}
+ \expandafter\def\csname simpleicon@semanticreleaseicon\endcsname {\simpleiconsmap\symbol{"F3AE}}
+ \expandafter\def\csname simpleicon@semanticscholaricon\endcsname {\simpleiconsmap\symbol{"F3AF}}
+ \expandafter\def\csname simpleicon@semanticuiicon\endcsname {\simpleiconsmap\symbol{"F3B0}}
+ \expandafter\def\csname simpleicon@semanticuireacticon\endcsname {\simpleiconsmap\symbol{"F3B1}}
+ \expandafter\def\csname simpleicon@semanticwebicon\endcsname {\simpleiconsmap\symbol{"F3B2}}
+ \expandafter\def\csname simpleicon@semaphoreciicon\endcsname {\simpleiconsmap\symbol{"F3B3}}
+ \expandafter\def\csname simpleicon@semrushicon\endcsname {\simpleiconsmap\symbol{"F3B4}}
+ \expandafter\def\csname simpleicon@semvericon\endcsname {\simpleiconsmap\symbol{"F3B5}}
+ \expandafter\def\csname simpleicon@senchaicon\endcsname {\simpleiconsmap\symbol{"F3B6}}
+ \expandafter\def\csname simpleicon@sennheisericon\endcsname {\simpleiconsmap\symbol{"F3B7}}
+ \expandafter\def\csname simpleicon@sensuicon\endcsname {\simpleiconsmap\symbol{"F3B8}}
+ \expandafter\def\csname simpleicon@sentryicon\endcsname {\simpleiconsmap\symbol{"F3B9}}
+ \expandafter\def\csname simpleicon@sepaicon\endcsname {\simpleiconsmap\symbol{"F3BA}}
+ \expandafter\def\csname simpleicon@sequelizeicon\endcsname {\simpleiconsmap\symbol{"F3BB}}
+ \expandafter\def\csname simpleicon@serverfaulticon\endcsname {\simpleiconsmap\symbol{"F3BC}}
+ \expandafter\def\csname simpleicon@serverlessicon\endcsname {\simpleiconsmap\symbol{"F3BD}}
+ \expandafter\def\csname simpleicon@sessionicon\endcsname {\simpleiconsmap\symbol{"F3BE}}
+ \expandafter\def\csname simpleicon@sessionizeicon\endcsname {\simpleiconsmap\symbol{"F3BF}}
+ \expandafter\def\csname simpleicon@setappicon\endcsname {\simpleiconsmap\symbol{"F3C0}}
+ \expandafter\def\csname simpleicon@sfmlicon\endcsname {\simpleiconsmap\symbol{"F3C1}}
+ \expandafter\def\csname simpleicon@shadcnuiicon\endcsname {\simpleiconsmap\symbol{"F3C2}}
+ \expandafter\def\csname simpleicon@shadowicon\endcsname {\simpleiconsmap\symbol{"F3C3}}
+ \expandafter\def\csname simpleicon@shanghaimetroicon\endcsname {\simpleiconsmap\symbol{"F3C4}}
+ \expandafter\def\csname simpleicon@sharexicon\endcsname {\simpleiconsmap\symbol{"F3C5}}
+ \expandafter\def\csname simpleicon@sharpicon\endcsname {\simpleiconsmap\symbol{"F3C6}}
+ \expandafter\def\csname simpleicon@shazamicon\endcsname {\simpleiconsmap\symbol{"F3C7}}
+ \expandafter\def\csname simpleicon@shellicon\endcsname {\simpleiconsmap\symbol{"F3C8}}
+ \expandafter\def\csname simpleicon@shellyicon\endcsname {\simpleiconsmap\symbol{"F3C9}}
+ \expandafter\def\csname simpleicon@shenzhenmetroicon\endcsname {\simpleiconsmap\symbol{"F3CA}}
+ \expandafter\def\csname simpleicon@shieldsdotioicon\endcsname {\simpleiconsmap\symbol{"F3CB}}
+ \expandafter\def\csname simpleicon@shikimoriicon\endcsname {\simpleiconsmap\symbol{"F3CC}}
+ \expandafter\def\csname simpleicon@shopeeicon\endcsname {\simpleiconsmap\symbol{"F3CD}}
+ \expandafter\def\csname simpleicon@shopifyicon\endcsname {\simpleiconsmap\symbol{"F3CE}}
+ \expandafter\def\csname simpleicon@shopwareicon\endcsname {\simpleiconsmap\symbol{"F3CF}}
+ \expandafter\def\csname simpleicon@shortcuticon\endcsname {\simpleiconsmap\symbol{"F3D0}}
+ \expandafter\def\csname simpleicon@showpadicon\endcsname {\simpleiconsmap\symbol{"F3D1}}
+ \expandafter\def\csname simpleicon@showtimeicon\endcsname {\simpleiconsmap\symbol{"F3D2}}
+ \expandafter\def\csname simpleicon@showwcaseicon\endcsname {\simpleiconsmap\symbol{"F3D3}}
+ \expandafter\def\csname simpleicon@shutterstockicon\endcsname {\simpleiconsmap\symbol{"F3D4}}
+ \expandafter\def\csname simpleicon@sidekiqicon\endcsname {\simpleiconsmap\symbol{"F3D5}}
+ \expandafter\def\csname simpleicon@sidequesticon\endcsname {\simpleiconsmap\symbol{"F3D6}}
+ \expandafter\def\csname simpleicon@siemensicon\endcsname {\simpleiconsmap\symbol{"F3D7}}
+ \expandafter\def\csname simpleicon@sifiveicon\endcsname {\simpleiconsmap\symbol{"F3D8}}
+ \expandafter\def\csname simpleicon@signalicon\endcsname {\simpleiconsmap\symbol{"F3D9}}
+ \expandafter\def\csname simpleicon@similarwebicon\endcsname {\simpleiconsmap\symbol{"F3DA}}
+ \expandafter\def\csname simpleicon@simklicon\endcsname {\simpleiconsmap\symbol{"F3DB}}
+ \expandafter\def\csname simpleicon@simpleanalyticsicon\endcsname {\simpleiconsmap\symbol{"F3DC}}
+ \expandafter\def\csname simpleicon@simpleiconsicon\endcsname {\simpleiconsmap\symbol{"F3DD}}
+ \expandafter\def\csname simpleicon@simpleloginicon\endcsname {\simpleiconsmap\symbol{"F3DE}}
+ \expandafter\def\csname simpleicon@simplenoteicon\endcsname {\simpleiconsmap\symbol{"F3DF}}
+ \expandafter\def\csname simpleicon@sinaweiboicon\endcsname {\simpleiconsmap\symbol{"F3E0}}
+ \expandafter\def\csname simpleicon@singaporeairlinesicon\endcsname {\simpleiconsmap\symbol{"F3E1}}
+ \expandafter\def\csname simpleicon@singlestoreicon\endcsname {\simpleiconsmap\symbol{"F3E2}}
+ \expandafter\def\csname simpleicon@sitecoreicon\endcsname {\simpleiconsmap\symbol{"F3E3}}
+ \expandafter\def\csname simpleicon@sitepointicon\endcsname {\simpleiconsmap\symbol{"F3E4}}
+ \expandafter\def\csname simpleicon@siyuanicon\endcsname {\simpleiconsmap\symbol{"F3E5}}
+ \expandafter\def\csname simpleicon@skaffoldicon\endcsname {\simpleiconsmap\symbol{"F3E6}}
+ \expandafter\def\csname simpleicon@sketchicon\endcsname {\simpleiconsmap\symbol{"F3E7}}
+ \expandafter\def\csname simpleicon@sketchfabicon\endcsname {\simpleiconsmap\symbol{"F3E8}}
+ \expandafter\def\csname simpleicon@sketchupicon\endcsname {\simpleiconsmap\symbol{"F3E9}}
+ \expandafter\def\csname simpleicon@skillshareicon\endcsname {\simpleiconsmap\symbol{"F3EA}}
+ \expandafter\def\csname simpleicon@skodaicon\endcsname {\simpleiconsmap\symbol{"F3EB}}
+ \expandafter\def\csname simpleicon@skyicon\endcsname {\simpleiconsmap\symbol{"F3EC}}
+ \expandafter\def\csname simpleicon@skypackicon\endcsname {\simpleiconsmap\symbol{"F3ED}}
+ \expandafter\def\csname simpleicon@skyrockicon\endcsname {\simpleiconsmap\symbol{"F3EE}}
+ \expandafter\def\csname simpleicon@slackicon\endcsname {\simpleiconsmap\symbol{"F3EF}}
+ \expandafter\def\csname simpleicon@slackwareicon\endcsname {\simpleiconsmap\symbol{"F3F0}}
+ \expandafter\def\csname simpleicon@slashdoticon\endcsname {\simpleiconsmap\symbol{"F3F1}}
+ \expandafter\def\csname simpleicon@slickpicicon\endcsname {\simpleiconsmap\symbol{"F3F2}}
+ \expandafter\def\csname simpleicon@slidesicon\endcsname {\simpleiconsmap\symbol{"F3F3}}
+ \expandafter\def\csname simpleicon@slideshareicon\endcsname {\simpleiconsmap\symbol{"F3F4}}
+ \expandafter\def\csname simpleicon@slinticon\endcsname {\simpleiconsmap\symbol{"F3F5}}
+ \expandafter\def\csname simpleicon@smarticon\endcsname {\simpleiconsmap\symbol{"F3F6}}
+ \expandafter\def\csname simpleicon@smartthingsicon\endcsname {\simpleiconsmap\symbol{"F3F7}}
+ \expandafter\def\csname simpleicon@smashdotggicon\endcsname {\simpleiconsmap\symbol{"F3F8}}
+ \expandafter\def\csname simpleicon@smashingmagazineicon\endcsname {\simpleiconsmap\symbol{"F3F9}}
+ \expandafter\def\csname simpleicon@smrticon\endcsname {\simpleiconsmap\symbol{"F3FA}}
+ \expandafter\def\csname simpleicon@smugmugicon\endcsname {\simpleiconsmap\symbol{"F3FB}}
+ \expandafter\def\csname simpleicon@snapchaticon\endcsname {\simpleiconsmap\symbol{"F3FC}}
+ \expandafter\def\csname simpleicon@snapcrafticon\endcsname {\simpleiconsmap\symbol{"F3FD}}
+ \expandafter\def\csname simpleicon@sncficon\endcsname {\simpleiconsmap\symbol{"F3FE}}
+ \expandafter\def\csname simpleicon@snorticon\endcsname {\simpleiconsmap\symbol{"F3FF}}
+ \expandafter\def\csname simpleicon@snowflakeicon\endcsname {\simpleiconsmap\symbol{"F400}}
+ \expandafter\def\csname simpleicon@snowpackicon\endcsname {\simpleiconsmap\symbol{"F401}}
+ \expandafter\def\csname simpleicon@snykicon\endcsname {\simpleiconsmap\symbol{"F402}}
+ \expandafter\def\csname simpleicon@socialbladeicon\endcsname {\simpleiconsmap\symbol{"F403}}
+ \expandafter\def\csname simpleicon@society6icon\endcsname {\simpleiconsmap\symbol{"F404}}
+ \expandafter\def\csname simpleicon@socketdotioicon\endcsname {\simpleiconsmap\symbol{"F405}}
+ \expandafter\def\csname simpleicon@softpediaicon\endcsname {\simpleiconsmap\symbol{"F406}}
+ \expandafter\def\csname simpleicon@sogouicon\endcsname {\simpleiconsmap\symbol{"F407}}
+ \expandafter\def\csname simpleicon@solanaicon\endcsname {\simpleiconsmap\symbol{"F408}}
+ \expandafter\def\csname simpleicon@solidicon\endcsname {\simpleiconsmap\symbol{"F409}}
+ \expandafter\def\csname simpleicon@solidityicon\endcsname {\simpleiconsmap\symbol{"F40A}}
+ \expandafter\def\csname simpleicon@sololearnicon\endcsname {\simpleiconsmap\symbol{"F40B}}
+ \expandafter\def\csname simpleicon@solusicon\endcsname {\simpleiconsmap\symbol{"F40C}}
+ \expandafter\def\csname simpleicon@sonaricon\endcsname {\simpleiconsmap\symbol{"F40D}}
+ \expandafter\def\csname simpleicon@sonarcloudicon\endcsname {\simpleiconsmap\symbol{"F40E}}
+ \expandafter\def\csname simpleicon@sonarlinticon\endcsname {\simpleiconsmap\symbol{"F40F}}
+ \expandafter\def\csname simpleicon@sonarqubeicon\endcsname {\simpleiconsmap\symbol{"F410}}
+ \expandafter\def\csname simpleicon@sonarricon\endcsname {\simpleiconsmap\symbol{"F411}}
+ \expandafter\def\csname simpleicon@sonatypeicon\endcsname {\simpleiconsmap\symbol{"F412}}
+ \expandafter\def\csname simpleicon@songkickicon\endcsname {\simpleiconsmap\symbol{"F413}}
+ \expandafter\def\csname simpleicon@songodaicon\endcsname {\simpleiconsmap\symbol{"F414}}
+ \expandafter\def\csname simpleicon@sonicwallicon\endcsname {\simpleiconsmap\symbol{"F415}}
+ \expandafter\def\csname simpleicon@sonosicon\endcsname {\simpleiconsmap\symbol{"F416}}
+ \expandafter\def\csname simpleicon@sonyicon\endcsname {\simpleiconsmap\symbol{"F417}}
+ \expandafter\def\csname simpleicon@sorianaicon\endcsname {\simpleiconsmap\symbol{"F418}}
+ \expandafter\def\csname simpleicon@soundchartsicon\endcsname {\simpleiconsmap\symbol{"F419}}
+ \expandafter\def\csname simpleicon@soundcloudicon\endcsname {\simpleiconsmap\symbol{"F41A}}
+ \expandafter\def\csname simpleicon@sourceengineicon\endcsname {\simpleiconsmap\symbol{"F41B}}
+ \expandafter\def\csname simpleicon@sourceforgeicon\endcsname {\simpleiconsmap\symbol{"F41C}}
+ \expandafter\def\csname simpleicon@sourcehuticon\endcsname {\simpleiconsmap\symbol{"F41D}}
+ \expandafter\def\csname simpleicon@sourcetreeicon\endcsname {\simpleiconsmap\symbol{"F41E}}
+ \expandafter\def\csname simpleicon@southwestairlinesicon\endcsname {\simpleiconsmap\symbol{"F41F}}
+ \expandafter\def\csname simpleicon@spacemacsicon\endcsname {\simpleiconsmap\symbol{"F420}}
+ \expandafter\def\csname simpleicon@spaceshipicon\endcsname {\simpleiconsmap\symbol{"F421}}
+ \expandafter\def\csname simpleicon@spacexicon\endcsname {\simpleiconsmap\symbol{"F422}}
+ \expandafter\def\csname simpleicon@spacyicon\endcsname {\simpleiconsmap\symbol{"F423}}
+ \expandafter\def\csname simpleicon@sparkaricon\endcsname {\simpleiconsmap\symbol{"F424}}
+ \expandafter\def\csname simpleicon@sparkasseicon\endcsname {\simpleiconsmap\symbol{"F425}}
+ \expandafter\def\csname simpleicon@sparkfunicon\endcsname {\simpleiconsmap\symbol{"F426}}
+ \expandafter\def\csname simpleicon@sparkposticon\endcsname {\simpleiconsmap\symbol{"F427}}
+ \expandafter\def\csname simpleicon@spdxicon\endcsname {\simpleiconsmap\symbol{"F428}}
+ \expandafter\def\csname simpleicon@speakerdeckicon\endcsname {\simpleiconsmap\symbol{"F429}}
+ \expandafter\def\csname simpleicon@spectrumicon\endcsname {\simpleiconsmap\symbol{"F42A}}
+ \expandafter\def\csname simpleicon@speedtesticon\endcsname {\simpleiconsmap\symbol{"F42B}}
+ \expandafter\def\csname simpleicon@speedypageicon\endcsname {\simpleiconsmap\symbol{"F42C}}
+ \expandafter\def\csname simpleicon@sphinxicon\endcsname {\simpleiconsmap\symbol{"F42D}}
+ \expandafter\def\csname simpleicon@spigotmcicon\endcsname {\simpleiconsmap\symbol{"F42E}}
+ \expandafter\def\csname simpleicon@spineicon\endcsname {\simpleiconsmap\symbol{"F42F}}
+ \expandafter\def\csname simpleicon@spinnakericon\endcsname {\simpleiconsmap\symbol{"F430}}
+ \expandafter\def\csname simpleicon@spinrillaicon\endcsname {\simpleiconsmap\symbol{"F431}}
+ \expandafter\def\csname simpleicon@splunkicon\endcsname {\simpleiconsmap\symbol{"F432}}
+ \expandafter\def\csname simpleicon@spojicon\endcsname {\simpleiconsmap\symbol{"F433}}
+ \expandafter\def\csname simpleicon@spondicon\endcsname {\simpleiconsmap\symbol{"F434}}
+ \expandafter\def\csname simpleicon@spotifyicon\endcsname {\simpleiconsmap\symbol{"F435}}
+ \expandafter\def\csname simpleicon@spotlighticon\endcsname {\simpleiconsmap\symbol{"F436}}
+ \expandafter\def\csname simpleicon@spreadshirticon\endcsname {\simpleiconsmap\symbol{"F437}}
+ \expandafter\def\csname simpleicon@spreakericon\endcsname {\simpleiconsmap\symbol{"F438}}
+ \expandafter\def\csname simpleicon@springicon\endcsname {\simpleiconsmap\symbol{"F439}}
+ \expandafter\def\csname simpleicon@springcreatorsicon\endcsname {\simpleiconsmap\symbol{"F43A}}
+ \expandafter\def\csname simpleicon@springbooticon\endcsname {\simpleiconsmap\symbol{"F43B}}
+ \expandafter\def\csname simpleicon@springsecurityicon\endcsname {\simpleiconsmap\symbol{"F43C}}
+ \expandafter\def\csname simpleicon@spyderideicon\endcsname {\simpleiconsmap\symbol{"F43D}}
+ \expandafter\def\csname simpleicon@sqlalchemyicon\endcsname {\simpleiconsmap\symbol{"F43E}}
+ \expandafter\def\csname simpleicon@sqliteicon\endcsname {\simpleiconsmap\symbol{"F43F}}
+ \expandafter\def\csname simpleicon@squareicon\endcsname {\simpleiconsmap\symbol{"F440}}
+ \expandafter\def\csname simpleicon@squareenixicon\endcsname {\simpleiconsmap\symbol{"F441}}
+ \expandafter\def\csname simpleicon@squarespaceicon\endcsname {\simpleiconsmap\symbol{"F442}}
+ \expandafter\def\csname simpleicon@srgssricon\endcsname {\simpleiconsmap\symbol{"F443}}
+ \expandafter\def\csname simpleicon@ssrnicon\endcsname {\simpleiconsmap\symbol{"F444}}
+ \expandafter\def\csname simpleicon@ssticon\endcsname {\simpleiconsmap\symbol{"F445}}
+ \expandafter\def\csname simpleicon@stackbiticon\endcsname {\simpleiconsmap\symbol{"F446}}
+ \expandafter\def\csname simpleicon@stackblitzicon\endcsname {\simpleiconsmap\symbol{"F447}}
+ \expandafter\def\csname simpleicon@stackediticon\endcsname {\simpleiconsmap\symbol{"F448}}
+ \expandafter\def\csname simpleicon@stackexchangeicon\endcsname {\simpleiconsmap\symbol{"F449}}
+ \expandafter\def\csname simpleicon@stackhawkicon\endcsname {\simpleiconsmap\symbol{"F44A}}
+ \expandafter\def\csname simpleicon@stackoverflowicon\endcsname {\simpleiconsmap\symbol{"F44B}}
+ \expandafter\def\csname simpleicon@stackpathicon\endcsname {\simpleiconsmap\symbol{"F44C}}
+ \expandafter\def\csname simpleicon@stackshareicon\endcsname {\simpleiconsmap\symbol{"F44D}}
+ \expandafter\def\csname simpleicon@stadiaicon\endcsname {\simpleiconsmap\symbol{"F44E}}
+ \expandafter\def\csname simpleicon@staffbaseicon\endcsname {\simpleiconsmap\symbol{"F44F}}
+ \expandafter\def\csname simpleicon@stagetimericon\endcsname {\simpleiconsmap\symbol{"F450}}
+ \expandafter\def\csname simpleicon@standardjsicon\endcsname {\simpleiconsmap\symbol{"F451}}
+ \expandafter\def\csname simpleicon@standardresumeicon\endcsname {\simpleiconsmap\symbol{"F452}}
+ \expandafter\def\csname simpleicon@starbucksicon\endcsname {\simpleiconsmap\symbol{"F453}}
+ \expandafter\def\csname simpleicon@stardockicon\endcsname {\simpleiconsmap\symbol{"F454}}
+ \expandafter\def\csname simpleicon@starlingbankicon\endcsname {\simpleiconsmap\symbol{"F455}}
+ \expandafter\def\csname simpleicon@starshipicon\endcsname {\simpleiconsmap\symbol{"F456}}
+ \expandafter\def\csname simpleicon@startrekicon\endcsname {\simpleiconsmap\symbol{"F457}}
+ \expandafter\def\csname simpleicon@starzicon\endcsname {\simpleiconsmap\symbol{"F458}}
+ \expandafter\def\csname simpleicon@statamicicon\endcsname {\simpleiconsmap\symbol{"F459}}
+ \expandafter\def\csname simpleicon@statistaicon\endcsname {\simpleiconsmap\symbol{"F45A}}
+ \expandafter\def\csname simpleicon@statuspageicon\endcsname {\simpleiconsmap\symbol{"F45B}}
+ \expandafter\def\csname simpleicon@statuspalicon\endcsname {\simpleiconsmap\symbol{"F45C}}
+ \expandafter\def\csname simpleicon@steamicon\endcsname {\simpleiconsmap\symbol{"F45D}}
+ \expandafter\def\csname simpleicon@steamdbicon\endcsname {\simpleiconsmap\symbol{"F45E}}
+ \expandafter\def\csname simpleicon@steamdeckicon\endcsname {\simpleiconsmap\symbol{"F45F}}
+ \expandafter\def\csname simpleicon@steamworksicon\endcsname {\simpleiconsmap\symbol{"F460}}
+ \expandafter\def\csname simpleicon@steelseriesicon\endcsname {\simpleiconsmap\symbol{"F461}}
+ \expandafter\def\csname simpleicon@steemicon\endcsname {\simpleiconsmap\symbol{"F462}}
+ \expandafter\def\csname simpleicon@steemiticon\endcsname {\simpleiconsmap\symbol{"F463}}
+ \expandafter\def\csname simpleicon@steinbergicon\endcsname {\simpleiconsmap\symbol{"F464}}
+ \expandafter\def\csname simpleicon@stellaricon\endcsname {\simpleiconsmap\symbol{"F465}}
+ \expandafter\def\csname simpleicon@stencilicon\endcsname {\simpleiconsmap\symbol{"F466}}
+ \expandafter\def\csname simpleicon@stencylicon\endcsname {\simpleiconsmap\symbol{"F467}}
+ \expandafter\def\csname simpleicon@stimulusicon\endcsname {\simpleiconsmap\symbol{"F468}}
+ \expandafter\def\csname simpleicon@stitchericon\endcsname {\simpleiconsmap\symbol{"F469}}
+ \expandafter\def\csname simpleicon@stmicroelectronicsicon\endcsname {\simpleiconsmap\symbol{"F46A}}
+ \expandafter\def\csname simpleicon@stockxicon\endcsname {\simpleiconsmap\symbol{"F46B}}
+ \expandafter\def\csname simpleicon@stopstalkicon\endcsname {\simpleiconsmap\symbol{"F46C}}
+ \expandafter\def\csname simpleicon@storyblokicon\endcsname {\simpleiconsmap\symbol{"F46D}}
+ \expandafter\def\csname simpleicon@storybookicon\endcsname {\simpleiconsmap\symbol{"F46E}}
+ \expandafter\def\csname simpleicon@strapiicon\endcsname {\simpleiconsmap\symbol{"F46F}}
+ \expandafter\def\csname simpleicon@stravaicon\endcsname {\simpleiconsmap\symbol{"F470}}
+ \expandafter\def\csname simpleicon@streamlabsicon\endcsname {\simpleiconsmap\symbol{"F471}}
+ \expandafter\def\csname simpleicon@streamliticon\endcsname {\simpleiconsmap\symbol{"F472}}
+ \expandafter\def\csname simpleicon@streamrunnersicon\endcsname {\simpleiconsmap\symbol{"F473}}
+ \expandafter\def\csname simpleicon@stripeicon\endcsname {\simpleiconsmap\symbol{"F474}}
+ \expandafter\def\csname simpleicon@strongswanicon\endcsname {\simpleiconsmap\symbol{"F475}}
+ \expandafter\def\csname simpleicon@strykericon\endcsname {\simpleiconsmap\symbol{"F476}}
+ \expandafter\def\csname simpleicon@stubhubicon\endcsname {\simpleiconsmap\symbol{"F477}}
+ \expandafter\def\csname simpleicon@studio3ticon\endcsname {\simpleiconsmap\symbol{"F478}}
+ \expandafter\def\csname simpleicon@studyverseicon\endcsname {\simpleiconsmap\symbol{"F479}}
+ \expandafter\def\csname simpleicon@styledcomponentsicon\endcsname {\simpleiconsmap\symbol{"F47A}}
+ \expandafter\def\csname simpleicon@stylelinticon\endcsname {\simpleiconsmap\symbol{"F47B}}
+ \expandafter\def\csname simpleicon@styleshareicon\endcsname {\simpleiconsmap\symbol{"F47C}}
+ \expandafter\def\csname simpleicon@stylusicon\endcsname {\simpleiconsmap\symbol{"F47D}}
+ \expandafter\def\csname simpleicon@subaruicon\endcsname {\simpleiconsmap\symbol{"F47E}}
+ \expandafter\def\csname simpleicon@sublimetexticon\endcsname {\simpleiconsmap\symbol{"F47F}}
+ \expandafter\def\csname simpleicon@substackicon\endcsname {\simpleiconsmap\symbol{"F480}}
+ \expandafter\def\csname simpleicon@subtitleediticon\endcsname {\simpleiconsmap\symbol{"F481}}
+ \expandafter\def\csname simpleicon@subversionicon\endcsname {\simpleiconsmap\symbol{"F482}}
+ \expandafter\def\csname simpleicon@sucklessicon\endcsname {\simpleiconsmap\symbol{"F483}}
+ \expandafter\def\csname simpleicon@sumologicicon\endcsname {\simpleiconsmap\symbol{"F484}}
+ \expandafter\def\csname simpleicon@sunoicon\endcsname {\simpleiconsmap\symbol{"F485}}
+ \expandafter\def\csname simpleicon@sunriseicon\endcsname {\simpleiconsmap\symbol{"F486}}
+ \expandafter\def\csname simpleicon@supabaseicon\endcsname {\simpleiconsmap\symbol{"F487}}
+ \expandafter\def\csname simpleicon@supercreaseicon\endcsname {\simpleiconsmap\symbol{"F488}}
+ \expandafter\def\csname simpleicon@supermicroicon\endcsname {\simpleiconsmap\symbol{"F489}}
+ \expandafter\def\csname simpleicon@superusericon\endcsname {\simpleiconsmap\symbol{"F48A}}
+ \expandafter\def\csname simpleicon@surrealdbicon\endcsname {\simpleiconsmap\symbol{"F48B}}
+ \expandafter\def\csname simpleicon@surveymonkeyicon\endcsname {\simpleiconsmap\symbol{"F48C}}
+ \expandafter\def\csname simpleicon@suseicon\endcsname {\simpleiconsmap\symbol{"F48D}}
+ \expandafter\def\csname simpleicon@suzukiicon\endcsname {\simpleiconsmap\symbol{"F48E}}
+ \expandafter\def\csname simpleicon@svelteicon\endcsname {\simpleiconsmap\symbol{"F48F}}
+ \expandafter\def\csname simpleicon@svgicon\endcsname {\simpleiconsmap\symbol{"F490}}
+ \expandafter\def\csname simpleicon@svgdotjsicon\endcsname {\simpleiconsmap\symbol{"F491}}
+ \expandafter\def\csname simpleicon@svgoicon\endcsname {\simpleiconsmap\symbol{"F492}}
+ \expandafter\def\csname simpleicon@svgtraceicon\endcsname {\simpleiconsmap\symbol{"F493}}
+ \expandafter\def\csname simpleicon@swaggericon\endcsname {\simpleiconsmap\symbol{"F494}}
+ \expandafter\def\csname simpleicon@swarmicon\endcsname {\simpleiconsmap\symbol{"F495}}
+ \expandafter\def\csname simpleicon@swayicon\endcsname {\simpleiconsmap\symbol{"F496}}
+ \expandafter\def\csname simpleicon@swcicon\endcsname {\simpleiconsmap\symbol{"F497}}
+ \expandafter\def\csname simpleicon@swifticon\endcsname {\simpleiconsmap\symbol{"F498}}
+ \expandafter\def\csname simpleicon@swiggyicon\endcsname {\simpleiconsmap\symbol{"F499}}
+ \expandafter\def\csname simpleicon@swipericon\endcsname {\simpleiconsmap\symbol{"F49A}}
+ \expandafter\def\csname simpleicon@swricon\endcsname {\simpleiconsmap\symbol{"F49B}}
+ \expandafter\def\csname simpleicon@symantecicon\endcsname {\simpleiconsmap\symbol{"F49C}}
+ \expandafter\def\csname simpleicon@symbolabicon\endcsname {\simpleiconsmap\symbol{"F49D}}
+ \expandafter\def\csname simpleicon@symfonyicon\endcsname {\simpleiconsmap\symbol{"F49E}}
+ \expandafter\def\csname simpleicon@symphonyicon\endcsname {\simpleiconsmap\symbol{"F49F}}
+ \expandafter\def\csname simpleicon@sympyicon\endcsname {\simpleiconsmap\symbol{"F4A0}}
+ \expandafter\def\csname simpleicon@syncthingicon\endcsname {\simpleiconsmap\symbol{"F4A1}}
+ \expandafter\def\csname simpleicon@synologyicon\endcsname {\simpleiconsmap\symbol{"F4A2}}
+ \expandafter\def\csname simpleicon@system76icon\endcsname {\simpleiconsmap\symbol{"F4A3}}
+ \expandafter\def\csname simpleicon@tabelogicon\endcsname {\simpleiconsmap\symbol{"F4A4}}
+ \expandafter\def\csname simpleicon@tableauicon\endcsname {\simpleiconsmap\symbol{"F4A5}}
+ \expandafter\def\csname simpleicon@tablecheckicon\endcsname {\simpleiconsmap\symbol{"F4A6}}
+ \expandafter\def\csname simpleicon@tacobellicon\endcsname {\simpleiconsmap\symbol{"F4A7}}
+ \expandafter\def\csname simpleicon@tadoicon\endcsname {\simpleiconsmap\symbol{"F4A8}}
+ \expandafter\def\csname simpleicon@taichigraphicsicon\endcsname {\simpleiconsmap\symbol{"F4A9}}
+ \expandafter\def\csname simpleicon@taichilangicon\endcsname {\simpleiconsmap\symbol{"F4AA}}
+ \expandafter\def\csname simpleicon@tailsicon\endcsname {\simpleiconsmap\symbol{"F4AB}}
+ \expandafter\def\csname simpleicon@tailscaleicon\endcsname {\simpleiconsmap\symbol{"F4AC}}
+ \expandafter\def\csname simpleicon@tailwindcssicon\endcsname {\simpleiconsmap\symbol{"F4AD}}
+ \expandafter\def\csname simpleicon@taipyicon\endcsname {\simpleiconsmap\symbol{"F4AE}}
+ \expandafter\def\csname simpleicon@taketwointeractivesoftwareicon\endcsname {\simpleiconsmap\symbol{"F4AF}}
+ \expandafter\def\csname simpleicon@talendicon\endcsname {\simpleiconsmap\symbol{"F4B0}}
+ \expandafter\def\csname simpleicon@talenthouseicon\endcsname {\simpleiconsmap\symbol{"F4B1}}
+ \expandafter\def\csname simpleicon@talosicon\endcsname {\simpleiconsmap\symbol{"F4B2}}
+ \expandafter\def\csname simpleicon@tamiyaicon\endcsname {\simpleiconsmap\symbol{"F4B3}}
+ \expandafter\def\csname simpleicon@tampermonkeyicon\endcsname {\simpleiconsmap\symbol{"F4B4}}
+ \expandafter\def\csname simpleicon@taobaoicon\endcsname {\simpleiconsmap\symbol{"F4B5}}
+ \expandafter\def\csname simpleicon@tapasicon\endcsname {\simpleiconsmap\symbol{"F4B6}}
+ \expandafter\def\csname simpleicon@targeticon\endcsname {\simpleiconsmap\symbol{"F4B7}}
+ \expandafter\def\csname simpleicon@taromicon\endcsname {\simpleiconsmap\symbol{"F4B8}}
+ \expandafter\def\csname simpleicon@taskicon\endcsname {\simpleiconsmap\symbol{"F4B9}}
+ \expandafter\def\csname simpleicon@tasmotaicon\endcsname {\simpleiconsmap\symbol{"F4BA}}
+ \expandafter\def\csname simpleicon@tataicon\endcsname {\simpleiconsmap\symbol{"F4BB}}
+ \expandafter\def\csname simpleicon@tauriicon\endcsname {\simpleiconsmap\symbol{"F4BC}}
+ \expandafter\def\csname simpleicon@taxbuzzicon\endcsname {\simpleiconsmap\symbol{"F4BD}}
+ \expandafter\def\csname simpleicon@tcsicon\endcsname {\simpleiconsmap\symbol{"F4BE}}
+ \expandafter\def\csname simpleicon@tealicon\endcsname {\simpleiconsmap\symbol{"F4BF}}
+ \expandafter\def\csname simpleicon@teamcityicon\endcsname {\simpleiconsmap\symbol{"F4C0}}
+ \expandafter\def\csname simpleicon@teamspeakicon\endcsname {\simpleiconsmap\symbol{"F4C1}}
+ \expandafter\def\csname simpleicon@teamviewericon\endcsname {\simpleiconsmap\symbol{"F4C2}}
+ \expandafter\def\csname simpleicon@techcrunchicon\endcsname {\simpleiconsmap\symbol{"F4C3}}
\expandafter\def\csname simpleicon@tedicon\endcsname {\simpleiconsmap\symbol{"F4C4}}
\expandafter\def\csname simpleicon@teepublicicon\endcsname {\simpleiconsmap\symbol{"F4C5}}
\expandafter\def\csname simpleicon@teespringicon\endcsname {\simpleiconsmap\symbol{"F4C6}}
@@ -2779,431 +2779,428 @@
\expandafter\def\csname simpleicon@textpatternicon\endcsname {\simpleiconsmap\symbol{"F4DA}}
\expandafter\def\csname simpleicon@tgaicon\endcsname {\simpleiconsmap\symbol{"F4DB}}
\expandafter\def\csname simpleicon@thangsicon\endcsname {\simpleiconsmap\symbol{"F4DC}}
- \expandafter\def\csname simpleicon@thealgorithmsicon\endcsname {\simpleiconsmap\symbol{"F4DD}}
- \expandafter\def\csname simpleicon@theboringcompanyicon\endcsname {\simpleiconsmap\symbol{"F4DE}}
- \expandafter\def\csname simpleicon@theconversationicon\endcsname {\simpleiconsmap\symbol{"F4DF}}
- \expandafter\def\csname simpleicon@thefinalsicon\endcsname {\simpleiconsmap\symbol{"F4E0}}
- \expandafter\def\csname simpleicon@theirishtimesicon\endcsname {\simpleiconsmap\symbol{"F4E1}}
- \expandafter\def\csname simpleicon@themightyicon\endcsname {\simpleiconsmap\symbol{"F4E2}}
- \expandafter\def\csname simpleicon@themodelsresourceicon\endcsname {\simpleiconsmap\symbol{"F4E3}}
- \expandafter\def\csname simpleicon@themoviedatabaseicon\endcsname {\simpleiconsmap\symbol{"F4E4}}
- \expandafter\def\csname simpleicon@thenorthfaceicon\endcsname {\simpleiconsmap\symbol{"F4E5}}
- \expandafter\def\csname simpleicon@theodinprojecticon\endcsname {\simpleiconsmap\symbol{"F4E6}}
- \expandafter\def\csname simpleicon@theregistericon\endcsname {\simpleiconsmap\symbol{"F4E7}}
- \expandafter\def\csname simpleicon@thesoundsresourceicon\endcsname {\simpleiconsmap\symbol{"F4E8}}
- \expandafter\def\csname simpleicon@thespritersresourceicon\endcsname {\simpleiconsmap\symbol{"F4E9}}
- \expandafter\def\csname simpleicon@thewashingtonposticon\endcsname {\simpleiconsmap\symbol{"F4EA}}
- \expandafter\def\csname simpleicon@thingiverseicon\endcsname {\simpleiconsmap\symbol{"F4EB}}
- \expandafter\def\csname simpleicon@thinkpadicon\endcsname {\simpleiconsmap\symbol{"F4EC}}
- \expandafter\def\csname simpleicon@thirdwebicon\endcsname {\simpleiconsmap\symbol{"F4ED}}
- \expandafter\def\csname simpleicon@threadlessicon\endcsname {\simpleiconsmap\symbol{"F4EE}}
- \expandafter\def\csname simpleicon@threadsicon\endcsname {\simpleiconsmap\symbol{"F4EF}}
- \expandafter\def\csname simpleicon@threedotjsicon\endcsname {\simpleiconsmap\symbol{"F4F0}}
- \expandafter\def\csname simpleicon@threemaicon\endcsname {\simpleiconsmap\symbol{"F4F1}}
- \expandafter\def\csname simpleicon@thumbtackicon\endcsname {\simpleiconsmap\symbol{"F4F2}}
- \expandafter\def\csname simpleicon@thunderbirdicon\endcsname {\simpleiconsmap\symbol{"F4F3}}
- \expandafter\def\csname simpleicon@thunderstoreicon\endcsname {\simpleiconsmap\symbol{"F4F4}}
- \expandafter\def\csname simpleicon@thurgauerkantonalbankicon\endcsname {\simpleiconsmap\symbol{"F4F5}}
- \expandafter\def\csname simpleicon@thymeleaficon\endcsname {\simpleiconsmap\symbol{"F4F6}}
- \expandafter\def\csname simpleicon@ticketmastericon\endcsname {\simpleiconsmap\symbol{"F4F7}}
- \expandafter\def\csname simpleicon@ticktickicon\endcsname {\simpleiconsmap\symbol{"F4F8}}
- \expandafter\def\csname simpleicon@tidalicon\endcsname {\simpleiconsmap\symbol{"F4F9}}
- \expandafter\def\csname simpleicon@tiddlywikiicon\endcsname {\simpleiconsmap\symbol{"F4FA}}
- \expandafter\def\csname simpleicon@tideicon\endcsname {\simpleiconsmap\symbol{"F4FB}}
- \expandafter\def\csname simpleicon@tidyverseicon\endcsname {\simpleiconsmap\symbol{"F4FC}}
- \expandafter\def\csname simpleicon@tietoevryicon\endcsname {\simpleiconsmap\symbol{"F4FD}}
- \expandafter\def\csname simpleicon@tiktokicon\endcsname {\simpleiconsmap\symbol{"F4FE}}
- \expandafter\def\csname simpleicon@tildapublishingicon\endcsname {\simpleiconsmap\symbol{"F4FF}}
- \expandafter\def\csname simpleicon@tileicon\endcsname {\simpleiconsmap\symbol{"F500}}
- \expandafter\def\csname simpleicon@timescaleicon\endcsname {\simpleiconsmap\symbol{"F501}}
- \expandafter\def\csname simpleicon@tinaicon\endcsname {\simpleiconsmap\symbol{"F502}}
- \expandafter\def\csname simpleicon@tindericon\endcsname {\simpleiconsmap\symbol{"F503}}
- \expandafter\def\csname simpleicon@tindieicon\endcsname {\simpleiconsmap\symbol{"F504}}
- \expandafter\def\csname simpleicon@tinkercadicon\endcsname {\simpleiconsmap\symbol{"F505}}
- \expandafter\def\csname simpleicon@tinygradicon\endcsname {\simpleiconsmap\symbol{"F506}}
- \expandafter\def\csname simpleicon@tinylettericon\endcsname {\simpleiconsmap\symbol{"F507}}
- \expandafter\def\csname simpleicon@tistoryicon\endcsname {\simpleiconsmap\symbol{"F508}}
- \expandafter\def\csname simpleicon@tldrawicon\endcsname {\simpleiconsmap\symbol{"F509}}
- \expandafter\def\csname simpleicon@tmobileicon\endcsname {\simpleiconsmap\symbol{"F50A}}
- \expandafter\def\csname simpleicon@tmuxicon\endcsname {\simpleiconsmap\symbol{"F50B}}
- \expandafter\def\csname simpleicon@todoisticon\endcsname {\simpleiconsmap\symbol{"F50C}}
- \expandafter\def\csname simpleicon@togglicon\endcsname {\simpleiconsmap\symbol{"F50D}}
- \expandafter\def\csname simpleicon@toggltrackicon\endcsname {\simpleiconsmap\symbol{"F50E}}
- \expandafter\def\csname simpleicon@tokyometroicon\endcsname {\simpleiconsmap\symbol{"F50F}}
- \expandafter\def\csname simpleicon@tollicon\endcsname {\simpleiconsmap\symbol{"F510}}
- \expandafter\def\csname simpleicon@tomlicon\endcsname {\simpleiconsmap\symbol{"F511}}
- \expandafter\def\csname simpleicon@tomorrowlandicon\endcsname {\simpleiconsmap\symbol{"F512}}
- \expandafter\def\csname simpleicon@tonicon\endcsname {\simpleiconsmap\symbol{"F513}}
- \expandafter\def\csname simpleicon@topcodericon\endcsname {\simpleiconsmap\symbol{"F514}}
- \expandafter\def\csname simpleicon@topdotggicon\endcsname {\simpleiconsmap\symbol{"F515}}
- \expandafter\def\csname simpleicon@toptalicon\endcsname {\simpleiconsmap\symbol{"F516}}
- \expandafter\def\csname simpleicon@torbrowsericon\endcsname {\simpleiconsmap\symbol{"F517}}
- \expandafter\def\csname simpleicon@torprojecticon\endcsname {\simpleiconsmap\symbol{"F518}}
- \expandafter\def\csname simpleicon@toshibaicon\endcsname {\simpleiconsmap\symbol{"F519}}
- \expandafter\def\csname simpleicon@totvsicon\endcsname {\simpleiconsmap\symbol{"F51A}}
- \expandafter\def\csname simpleicon@tourboxicon\endcsname {\simpleiconsmap\symbol{"F51B}}
- \expandafter\def\csname simpleicon@towericon\endcsname {\simpleiconsmap\symbol{"F51C}}
- \expandafter\def\csname simpleicon@toyotaicon\endcsname {\simpleiconsmap\symbol{"F51D}}
- \expandafter\def\csname simpleicon@tplinkicon\endcsname {\simpleiconsmap\symbol{"F51E}}
- \expandafter\def\csname simpleicon@tqdmicon\endcsname {\simpleiconsmap\symbol{"F51F}}
- \expandafter\def\csname simpleicon@traccaricon\endcsname {\simpleiconsmap\symbol{"F520}}
- \expandafter\def\csname simpleicon@tradingviewicon\endcsname {\simpleiconsmap\symbol{"F521}}
- \expandafter\def\csname simpleicon@traefikmeshicon\endcsname {\simpleiconsmap\symbol{"F522}}
- \expandafter\def\csname simpleicon@traefikproxyicon\endcsname {\simpleiconsmap\symbol{"F523}}
- \expandafter\def\csname simpleicon@trailforksicon\endcsname {\simpleiconsmap\symbol{"F524}}
- \expandafter\def\csname simpleicon@trainerroadicon\endcsname {\simpleiconsmap\symbol{"F525}}
- \expandafter\def\csname simpleicon@trakticon\endcsname {\simpleiconsmap\symbol{"F526}}
- \expandafter\def\csname simpleicon@transifexicon\endcsname {\simpleiconsmap\symbol{"F527}}
- \expandafter\def\csname simpleicon@transmissionicon\endcsname {\simpleiconsmap\symbol{"F528}}
- \expandafter\def\csname simpleicon@transportforirelandicon\endcsname {\simpleiconsmap\symbol{"F529}}
- \expandafter\def\csname simpleicon@transportforlondonicon\endcsname {\simpleiconsmap\symbol{"F52A}}
- \expandafter\def\csname simpleicon@travisciicon\endcsname {\simpleiconsmap\symbol{"F52B}}
- \expandafter\def\csname simpleicon@treehouseicon\endcsname {\simpleiconsmap\symbol{"F52C}}
- \expandafter\def\csname simpleicon@trelloicon\endcsname {\simpleiconsmap\symbol{"F52D}}
- \expandafter\def\csname simpleicon@trendmicroicon\endcsname {\simpleiconsmap\symbol{"F52E}}
- \expandafter\def\csname simpleicon@treyarchicon\endcsname {\simpleiconsmap\symbol{"F52F}}
- \expandafter\def\csname simpleicon@tricentisicon\endcsname {\simpleiconsmap\symbol{"F530}}
- \expandafter\def\csname simpleicon@triliumicon\endcsname {\simpleiconsmap\symbol{"F531}}
- \expandafter\def\csname simpleicon@trillericon\endcsname {\simpleiconsmap\symbol{"F532}}
- \expandafter\def\csname simpleicon@trillertvicon\endcsname {\simpleiconsmap\symbol{"F533}}
- \expandafter\def\csname simpleicon@trinoicon\endcsname {\simpleiconsmap\symbol{"F534}}
- \expandafter\def\csname simpleicon@tripadvisoricon\endcsname {\simpleiconsmap\symbol{"F535}}
- \expandafter\def\csname simpleicon@tripdotcomicon\endcsname {\simpleiconsmap\symbol{"F536}}
- \expandafter\def\csname simpleicon@trivagoicon\endcsname {\simpleiconsmap\symbol{"F537}}
- \expandafter\def\csname simpleicon@trivyicon\endcsname {\simpleiconsmap\symbol{"F538}}
- \expandafter\def\csname simpleicon@troveicon\endcsname {\simpleiconsmap\symbol{"F539}}
- \expandafter\def\csname simpleicon@trpcicon\endcsname {\simpleiconsmap\symbol{"F53A}}
- \expandafter\def\csname simpleicon@truenasicon\endcsname {\simpleiconsmap\symbol{"F53B}}
- \expandafter\def\csname simpleicon@trueupicon\endcsname {\simpleiconsmap\symbol{"F53C}}
- \expandafter\def\csname simpleicon@truliaicon\endcsname {\simpleiconsmap\symbol{"F53D}}
- \expandafter\def\csname simpleicon@trustedshopsicon\endcsname {\simpleiconsmap\symbol{"F53E}}
- \expandafter\def\csname simpleicon@trustpiloticon\endcsname {\simpleiconsmap\symbol{"F53F}}
- \expandafter\def\csname simpleicon@tryhackmeicon\endcsname {\simpleiconsmap\symbol{"F540}}
- \expandafter\def\csname simpleicon@tryitonlineicon\endcsname {\simpleiconsmap\symbol{"F541}}
- \expandafter\def\csname simpleicon@tsnodeicon\endcsname {\simpleiconsmap\symbol{"F542}}
- \expandafter\def\csname simpleicon@tubiicon\endcsname {\simpleiconsmap\symbol{"F543}}
- \expandafter\def\csname simpleicon@tuiicon\endcsname {\simpleiconsmap\symbol{"F544}}
- \expandafter\def\csname simpleicon@tumblricon\endcsname {\simpleiconsmap\symbol{"F545}}
- \expandafter\def\csname simpleicon@tuneinicon\endcsname {\simpleiconsmap\symbol{"F546}}
- \expandafter\def\csname simpleicon@turboicon\endcsname {\simpleiconsmap\symbol{"F547}}
- \expandafter\def\csname simpleicon@turborepoicon\endcsname {\simpleiconsmap\symbol{"F548}}
- \expandafter\def\csname simpleicon@turbosquidicon\endcsname {\simpleiconsmap\symbol{"F549}}
- \expandafter\def\csname simpleicon@turkishairlinesicon\endcsname {\simpleiconsmap\symbol{"F54A}}
- \expandafter\def\csname simpleicon@tursoicon\endcsname {\simpleiconsmap\symbol{"F54B}}
- \expandafter\def\csname simpleicon@tutanotaicon\endcsname {\simpleiconsmap\symbol{"F54C}}
- \expandafter\def\csname simpleicon@tv4playicon\endcsname {\simpleiconsmap\symbol{"F54D}}
- \expandafter\def\csname simpleicon@tvtimeicon\endcsname {\simpleiconsmap\symbol{"F54E}}
- \expandafter\def\csname simpleicon@twilioicon\endcsname {\simpleiconsmap\symbol{"F54F}}
- \expandafter\def\csname simpleicon@twinklyicon\endcsname {\simpleiconsmap\symbol{"F550}}
- \expandafter\def\csname simpleicon@twinmotionicon\endcsname {\simpleiconsmap\symbol{"F551}}
- \expandafter\def\csname simpleicon@twitchicon\endcsname {\simpleiconsmap\symbol{"F552}}
- \expandafter\def\csname simpleicon@typeformicon\endcsname {\simpleiconsmap\symbol{"F553}}
- \expandafter\def\csname simpleicon@typeormicon\endcsname {\simpleiconsmap\symbol{"F554}}
- \expandafter\def\csname simpleicon@typericon\endcsname {\simpleiconsmap\symbol{"F555}}
- \expandafter\def\csname simpleicon@typescripticon\endcsname {\simpleiconsmap\symbol{"F556}}
- \expandafter\def\csname simpleicon@typo3icon\endcsname {\simpleiconsmap\symbol{"F557}}
- \expandafter\def\csname simpleicon@typsticon\endcsname {\simpleiconsmap\symbol{"F558}}
- \expandafter\def\csname simpleicon@ubericon\endcsname {\simpleiconsmap\symbol{"F559}}
- \expandafter\def\csname simpleicon@ubereatsicon\endcsname {\simpleiconsmap\symbol{"F55A}}
- \expandafter\def\csname simpleicon@ubiquitiicon\endcsname {\simpleiconsmap\symbol{"F55B}}
- \expandafter\def\csname simpleicon@ubisofticon\endcsname {\simpleiconsmap\symbol{"F55C}}
- \expandafter\def\csname simpleicon@ublockoriginicon\endcsname {\simpleiconsmap\symbol{"F55D}}
- \expandafter\def\csname simpleicon@ubuntuicon\endcsname {\simpleiconsmap\symbol{"F55E}}
- \expandafter\def\csname simpleicon@ubuntumateicon\endcsname {\simpleiconsmap\symbol{"F55F}}
- \expandafter\def\csname simpleicon@udacityicon\endcsname {\simpleiconsmap\symbol{"F560}}
- \expandafter\def\csname simpleicon@udemyicon\endcsname {\simpleiconsmap\symbol{"F561}}
- \expandafter\def\csname simpleicon@ufcicon\endcsname {\simpleiconsmap\symbol{"F562}}
- \expandafter\def\csname simpleicon@uikiticon\endcsname {\simpleiconsmap\symbol{"F563}}
- \expandafter\def\csname simpleicon@uipathicon\endcsname {\simpleiconsmap\symbol{"F564}}
- \expandafter\def\csname simpleicon@ululeicon\endcsname {\simpleiconsmap\symbol{"F565}}
- \expandafter\def\csname simpleicon@umamiicon\endcsname {\simpleiconsmap\symbol{"F566}}
- \expandafter\def\csname simpleicon@umbracoicon\endcsname {\simpleiconsmap\symbol{"F567}}
- \expandafter\def\csname simpleicon@umlicon\endcsname {\simpleiconsmap\symbol{"F568}}
- \expandafter\def\csname simpleicon@unacademyicon\endcsname {\simpleiconsmap\symbol{"F569}}
- \expandafter\def\csname simpleicon@underarmouricon\endcsname {\simpleiconsmap\symbol{"F56A}}
- \expandafter\def\csname simpleicon@underscoredotjsicon\endcsname {\simpleiconsmap\symbol{"F56B}}
- \expandafter\def\csname simpleicon@undertaleicon\endcsname {\simpleiconsmap\symbol{"F56C}}
- \expandafter\def\csname simpleicon@unicodeicon\endcsname {\simpleiconsmap\symbol{"F56D}}
- \expandafter\def\csname simpleicon@unilevericon\endcsname {\simpleiconsmap\symbol{"F56E}}
- \expandafter\def\csname simpleicon@uniqloicon\endcsname {\simpleiconsmap\symbol{"F56F}}
- \expandafter\def\csname simpleicon@uniqlojaicon\endcsname {\simpleiconsmap\symbol{"F570}}
- \expandafter\def\csname simpleicon@unitedairlinesicon\endcsname {\simpleiconsmap\symbol{"F571}}
- \expandafter\def\csname simpleicon@unitednationsicon\endcsname {\simpleiconsmap\symbol{"F572}}
- \expandafter\def\csname simpleicon@unityicon\endcsname {\simpleiconsmap\symbol{"F573}}
- \expandafter\def\csname simpleicon@unlicenseicon\endcsname {\simpleiconsmap\symbol{"F574}}
- \expandafter\def\csname simpleicon@unocssicon\endcsname {\simpleiconsmap\symbol{"F575}}
- \expandafter\def\csname simpleicon@unpkgicon\endcsname {\simpleiconsmap\symbol{"F576}}
- \expandafter\def\csname simpleicon@unraidicon\endcsname {\simpleiconsmap\symbol{"F577}}
- \expandafter\def\csname simpleicon@unrealengineicon\endcsname {\simpleiconsmap\symbol{"F578}}
- \expandafter\def\csname simpleicon@unsplashicon\endcsname {\simpleiconsmap\symbol{"F579}}
- \expandafter\def\csname simpleicon@untappdicon\endcsname {\simpleiconsmap\symbol{"F57A}}
- \expandafter\def\csname simpleicon@upcloudicon\endcsname {\simpleiconsmap\symbol{"F57B}}
- \expandafter\def\csname simpleicon@upholdicon\endcsname {\simpleiconsmap\symbol{"F57C}}
- \expandafter\def\csname simpleicon@uplabsicon\endcsname {\simpleiconsmap\symbol{"F57D}}
- \expandafter\def\csname simpleicon@upptimeicon\endcsname {\simpleiconsmap\symbol{"F57E}}
- \expandafter\def\csname simpleicon@upsicon\endcsname {\simpleiconsmap\symbol{"F57F}}
- \expandafter\def\csname simpleicon@upstashicon\endcsname {\simpleiconsmap\symbol{"F580}}
- \expandafter\def\csname simpleicon@uptimekumaicon\endcsname {\simpleiconsmap\symbol{"F581}}
- \expandafter\def\csname simpleicon@uptoboxicon\endcsname {\simpleiconsmap\symbol{"F582}}
- \expandafter\def\csname simpleicon@upworkicon\endcsname {\simpleiconsmap\symbol{"F583}}
- \expandafter\def\csname simpleicon@uspsicon\endcsname {\simpleiconsmap\symbol{"F584}}
- \expandafter\def\csname simpleicon@utorrenticon\endcsname {\simpleiconsmap\symbol{"F585}}
- \expandafter\def\csname simpleicon@vicon\endcsname {\simpleiconsmap\symbol{"F586}}
- \expandafter\def\csname simpleicon@v2exicon\endcsname {\simpleiconsmap\symbol{"F587}}
- \expandafter\def\csname simpleicon@v8icon\endcsname {\simpleiconsmap\symbol{"F588}}
- \expandafter\def\csname simpleicon@vaadinicon\endcsname {\simpleiconsmap\symbol{"F589}}
- \expandafter\def\csname simpleicon@vagranticon\endcsname {\simpleiconsmap\symbol{"F58A}}
- \expandafter\def\csname simpleicon@valaicon\endcsname {\simpleiconsmap\symbol{"F58B}}
- \expandafter\def\csname simpleicon@valoranticon\endcsname {\simpleiconsmap\symbol{"F58C}}
- \expandafter\def\csname simpleicon@valveicon\endcsname {\simpleiconsmap\symbol{"F58D}}
- \expandafter\def\csname simpleicon@vaporicon\endcsname {\simpleiconsmap\symbol{"F58E}}
- \expandafter\def\csname simpleicon@vaulticon\endcsname {\simpleiconsmap\symbol{"F58F}}
- \expandafter\def\csname simpleicon@vaultwardenicon\endcsname {\simpleiconsmap\symbol{"F590}}
- \expandafter\def\csname simpleicon@vauxhallicon\endcsname {\simpleiconsmap\symbol{"F591}}
- \expandafter\def\csname simpleicon@vbulletinicon\endcsname {\simpleiconsmap\symbol{"F592}}
- \expandafter\def\csname simpleicon@vectaryicon\endcsname {\simpleiconsmap\symbol{"F593}}
- \expandafter\def\csname simpleicon@vectorlogozoneicon\endcsname {\simpleiconsmap\symbol{"F594}}
- \expandafter\def\csname simpleicon@vectorworksicon\endcsname {\simpleiconsmap\symbol{"F595}}
- \expandafter\def\csname simpleicon@veeamicon\endcsname {\simpleiconsmap\symbol{"F596}}
- \expandafter\def\csname simpleicon@veedicon\endcsname {\simpleiconsmap\symbol{"F597}}
- \expandafter\def\csname simpleicon@veepeeicon\endcsname {\simpleiconsmap\symbol{"F598}}
- \expandafter\def\csname simpleicon@vegaicon\endcsname {\simpleiconsmap\symbol{"F599}}
- \expandafter\def\csname simpleicon@vegasicon\endcsname {\simpleiconsmap\symbol{"F59A}}
- \expandafter\def\csname simpleicon@velogicon\endcsname {\simpleiconsmap\symbol{"F59B}}
- \expandafter\def\csname simpleicon@venmoicon\endcsname {\simpleiconsmap\symbol{"F59C}}
- \expandafter\def\csname simpleicon@vercelicon\endcsname {\simpleiconsmap\symbol{"F59D}}
- \expandafter\def\csname simpleicon@verdaccioicon\endcsname {\simpleiconsmap\symbol{"F59E}}
- \expandafter\def\csname simpleicon@veritasicon\endcsname {\simpleiconsmap\symbol{"F59F}}
- \expandafter\def\csname simpleicon@verizonicon\endcsname {\simpleiconsmap\symbol{"F5A0}}
- \expandafter\def\csname simpleicon@vespaicon\endcsname {\simpleiconsmap\symbol{"F5A1}}
- \expandafter\def\csname simpleicon@vexxhosticon\endcsname {\simpleiconsmap\symbol{"F5A2}}
- \expandafter\def\csname simpleicon@vfairsicon\endcsname {\simpleiconsmap\symbol{"F5A3}}
- \expandafter\def\csname simpleicon@viadeoicon\endcsname {\simpleiconsmap\symbol{"F5A4}}
- \expandafter\def\csname simpleicon@viaplayicon\endcsname {\simpleiconsmap\symbol{"F5A5}}
- \expandafter\def\csname simpleicon@vibericon\endcsname {\simpleiconsmap\symbol{"F5A6}}
- \expandafter\def\csname simpleicon@vibloicon\endcsname {\simpleiconsmap\symbol{"F5A7}}
- \expandafter\def\csname simpleicon@victoriametricsicon\endcsname {\simpleiconsmap\symbol{"F5A8}}
- \expandafter\def\csname simpleicon@victronenergyicon\endcsname {\simpleiconsmap\symbol{"F5A9}}
- \expandafter\def\csname simpleicon@vimicon\endcsname {\simpleiconsmap\symbol{"F5AA}}
- \expandafter\def\csname simpleicon@vimeoicon\endcsname {\simpleiconsmap\symbol{"F5AB}}
- \expandafter\def\csname simpleicon@vimeolivestreamicon\endcsname {\simpleiconsmap\symbol{"F5AC}}
- \expandafter\def\csname simpleicon@virginicon\endcsname {\simpleiconsmap\symbol{"F5AD}}
- \expandafter\def\csname simpleicon@virginatlanticicon\endcsname {\simpleiconsmap\symbol{"F5AE}}
- \expandafter\def\csname simpleicon@virginmediaicon\endcsname {\simpleiconsmap\symbol{"F5AF}}
- \expandafter\def\csname simpleicon@virtualboxicon\endcsname {\simpleiconsmap\symbol{"F5B0}}
- \expandafter\def\csname simpleicon@virustotalicon\endcsname {\simpleiconsmap\symbol{"F5B1}}
- \expandafter\def\csname simpleicon@visaicon\endcsname {\simpleiconsmap\symbol{"F5B2}}
- \expandafter\def\csname simpleicon@visualbasicicon\endcsname {\simpleiconsmap\symbol{"F5B3}}
- \expandafter\def\csname simpleicon@visualstudioicon\endcsname {\simpleiconsmap\symbol{"F5B4}}
- \expandafter\def\csname simpleicon@visualstudioappcentericon\endcsname {\simpleiconsmap\symbol{"F5B5}}
- \expandafter\def\csname simpleicon@visualstudiocodeicon\endcsname {\simpleiconsmap\symbol{"F5B6}}
- \expandafter\def\csname simpleicon@visxicon\endcsname {\simpleiconsmap\symbol{"F5B7}}
- \expandafter\def\csname simpleicon@viteicon\endcsname {\simpleiconsmap\symbol{"F5B8}}
- \expandafter\def\csname simpleicon@vitepressicon\endcsname {\simpleiconsmap\symbol{"F5B9}}
- \expandafter\def\csname simpleicon@vitessicon\endcsname {\simpleiconsmap\symbol{"F5BA}}
- \expandafter\def\csname simpleicon@vitesticon\endcsname {\simpleiconsmap\symbol{"F5BB}}
- \expandafter\def\csname simpleicon@vivaldiicon\endcsname {\simpleiconsmap\symbol{"F5BC}}
- \expandafter\def\csname simpleicon@vivawalleticon\endcsname {\simpleiconsmap\symbol{"F5BD}}
- \expandafter\def\csname simpleicon@vivinoicon\endcsname {\simpleiconsmap\symbol{"F5BE}}
- \expandafter\def\csname simpleicon@vivinticon\endcsname {\simpleiconsmap\symbol{"F5BF}}
- \expandafter\def\csname simpleicon@vivoicon\endcsname {\simpleiconsmap\symbol{"F5C0}}
- \expandafter\def\csname simpleicon@vkicon\endcsname {\simpleiconsmap\symbol{"F5C1}}
- \expandafter\def\csname simpleicon@vlcmediaplayericon\endcsname {\simpleiconsmap\symbol{"F5C2}}
- \expandafter\def\csname simpleicon@vmwareicon\endcsname {\simpleiconsmap\symbol{"F5C3}}
- \expandafter\def\csname simpleicon@vodafoneicon\endcsname {\simpleiconsmap\symbol{"F5C4}}
- \expandafter\def\csname simpleicon@voidlinuxicon\endcsname {\simpleiconsmap\symbol{"F5C5}}
- \expandafter\def\csname simpleicon@voipdotmsicon\endcsname {\simpleiconsmap\symbol{"F5C6}}
- \expandafter\def\csname simpleicon@volkswagenicon\endcsname {\simpleiconsmap\symbol{"F5C7}}
- \expandafter\def\csname simpleicon@volvoicon\endcsname {\simpleiconsmap\symbol{"F5C8}}
- \expandafter\def\csname simpleicon@vonageicon\endcsname {\simpleiconsmap\symbol{"F5C9}}
- \expandafter\def\csname simpleicon@vorondesignicon\endcsname {\simpleiconsmap\symbol{"F5CA}}
- \expandafter\def\csname simpleicon@vowpalwabbiticon\endcsname {\simpleiconsmap\symbol{"F5CB}}
- \expandafter\def\csname simpleicon@voxicon\endcsname {\simpleiconsmap\symbol{"F5CC}}
- \expandafter\def\csname simpleicon@vscoicon\endcsname {\simpleiconsmap\symbol{"F5CD}}
- \expandafter\def\csname simpleicon@vscodiumicon\endcsname {\simpleiconsmap\symbol{"F5CE}}
- \expandafter\def\csname simpleicon@vtexicon\endcsname {\simpleiconsmap\symbol{"F5CF}}
- \expandafter\def\csname simpleicon@vuedotjsicon\endcsname {\simpleiconsmap\symbol{"F5D0}}
- \expandafter\def\csname simpleicon@vuetifyicon\endcsname {\simpleiconsmap\symbol{"F5D1}}
- \expandafter\def\csname simpleicon@vulkanicon\endcsname {\simpleiconsmap\symbol{"F5D2}}
- \expandafter\def\csname simpleicon@vultricon\endcsname {\simpleiconsmap\symbol{"F5D3}}
- \expandafter\def\csname simpleicon@vyondicon\endcsname {\simpleiconsmap\symbol{"F5D4}}
- \expandafter\def\csname simpleicon@w3schoolsicon\endcsname {\simpleiconsmap\symbol{"F5D5}}
- \expandafter\def\csname simpleicon@wacomicon\endcsname {\simpleiconsmap\symbol{"F5D6}}
- \expandafter\def\csname simpleicon@wagmiicon\endcsname {\simpleiconsmap\symbol{"F5D7}}
- \expandafter\def\csname simpleicon@wagtailicon\endcsname {\simpleiconsmap\symbol{"F5D8}}
- \expandafter\def\csname simpleicon@wailsicon\endcsname {\simpleiconsmap\symbol{"F5D9}}
- \expandafter\def\csname simpleicon@wakatimeicon\endcsname {\simpleiconsmap\symbol{"F5DA}}
- \expandafter\def\csname simpleicon@walkmanicon\endcsname {\simpleiconsmap\symbol{"F5DB}}
- \expandafter\def\csname simpleicon@wallabagicon\endcsname {\simpleiconsmap\symbol{"F5DC}}
- \expandafter\def\csname simpleicon@walletconnecticon\endcsname {\simpleiconsmap\symbol{"F5DD}}
- \expandafter\def\csname simpleicon@walmarticon\endcsname {\simpleiconsmap\symbol{"F5DE}}
- \expandafter\def\csname simpleicon@wantedlyicon\endcsname {\simpleiconsmap\symbol{"F5DF}}
- \expandafter\def\csname simpleicon@wappalyzericon\endcsname {\simpleiconsmap\symbol{"F5E0}}
- \expandafter\def\csname simpleicon@warnerbrosicon\endcsname {\simpleiconsmap\symbol{"F5E1}}
- \expandafter\def\csname simpleicon@warpicon\endcsname {\simpleiconsmap\symbol{"F5E2}}
- \expandafter\def\csname simpleicon@wasabiicon\endcsname {\simpleiconsmap\symbol{"F5E3}}
- \expandafter\def\csname simpleicon@wasmcloudicon\endcsname {\simpleiconsmap\symbol{"F5E4}}
- \expandafter\def\csname simpleicon@wasmericon\endcsname {\simpleiconsmap\symbol{"F5E5}}
- \expandafter\def\csname simpleicon@watchtowericon\endcsname {\simpleiconsmap\symbol{"F5E6}}
- \expandafter\def\csname simpleicon@wattpadicon\endcsname {\simpleiconsmap\symbol{"F5E7}}
- \expandafter\def\csname simpleicon@waylandicon\endcsname {\simpleiconsmap\symbol{"F5E8}}
- \expandafter\def\csname simpleicon@wazeicon\endcsname {\simpleiconsmap\symbol{"F5E9}}
- \expandafter\def\csname simpleicon@wazirxicon\endcsname {\simpleiconsmap\symbol{"F5EA}}
- \expandafter\def\csname simpleicon@wearosicon\endcsname {\simpleiconsmap\symbol{"F5EB}}
- \expandafter\def\csname simpleicon@weasylicon\endcsname {\simpleiconsmap\symbol{"F5EC}}
- \expandafter\def\csname simpleicon@web3dotjsicon\endcsname {\simpleiconsmap\symbol{"F5ED}}
- \expandafter\def\csname simpleicon@webassemblyicon\endcsname {\simpleiconsmap\symbol{"F5EE}}
- \expandafter\def\csname simpleicon@webauthnicon\endcsname {\simpleiconsmap\symbol{"F5EF}}
- \expandafter\def\csname simpleicon@webcomponentsdotorgicon\endcsname {\simpleiconsmap\symbol{"F5F0}}
- \expandafter\def\csname simpleicon@webdriverioicon\endcsname {\simpleiconsmap\symbol{"F5F1}}
- \expandafter\def\csname simpleicon@webexicon\endcsname {\simpleiconsmap\symbol{"F5F2}}
- \expandafter\def\csname simpleicon@webflowicon\endcsname {\simpleiconsmap\symbol{"F5F3}}
- \expandafter\def\csname simpleicon@webglicon\endcsname {\simpleiconsmap\symbol{"F5F4}}
- \expandafter\def\csname simpleicon@weblateicon\endcsname {\simpleiconsmap\symbol{"F5F5}}
- \expandafter\def\csname simpleicon@webminicon\endcsname {\simpleiconsmap\symbol{"F5F6}}
- \expandafter\def\csname simpleicon@webmoneyicon\endcsname {\simpleiconsmap\symbol{"F5F7}}
- \expandafter\def\csname simpleicon@webpackicon\endcsname {\simpleiconsmap\symbol{"F5F8}}
- \expandafter\def\csname simpleicon@webrtcicon\endcsname {\simpleiconsmap\symbol{"F5F9}}
- \expandafter\def\csname simpleicon@webstormicon\endcsname {\simpleiconsmap\symbol{"F5FA}}
- \expandafter\def\csname simpleicon@webtoonicon\endcsname {\simpleiconsmap\symbol{"F5FB}}
- \expandafter\def\csname simpleicon@webtreesicon\endcsname {\simpleiconsmap\symbol{"F5FC}}
- \expandafter\def\csname simpleicon@wechaticon\endcsname {\simpleiconsmap\symbol{"F5FD}}
- \expandafter\def\csname simpleicon@wegameicon\endcsname {\simpleiconsmap\symbol{"F5FE}}
- \expandafter\def\csname simpleicon@weightsandbiasesicon\endcsname {\simpleiconsmap\symbol{"F5FF}}
- \expandafter\def\csname simpleicon@welcometothejungleicon\endcsname {\simpleiconsmap\symbol{"F600}}
- \expandafter\def\csname simpleicon@wellfoundicon\endcsname {\simpleiconsmap\symbol{"F601}}
- \expandafter\def\csname simpleicon@wellsfargoicon\endcsname {\simpleiconsmap\symbol{"F602}}
- \expandafter\def\csname simpleicon@wemoicon\endcsname {\simpleiconsmap\symbol{"F603}}
- \expandafter\def\csname simpleicon@westerndigitalicon\endcsname {\simpleiconsmap\symbol{"F604}}
- \expandafter\def\csname simpleicon@westernunionicon\endcsname {\simpleiconsmap\symbol{"F605}}
- \expandafter\def\csname simpleicon@wetransfericon\endcsname {\simpleiconsmap\symbol{"F606}}
- \expandafter\def\csname simpleicon@weztermicon\endcsname {\simpleiconsmap\symbol{"F607}}
- \expandafter\def\csname simpleicon@wgpuicon\endcsname {\simpleiconsmap\symbol{"F608}}
- \expandafter\def\csname simpleicon@whatsappicon\endcsname {\simpleiconsmap\symbol{"F609}}
- \expandafter\def\csname simpleicon@wheniworkicon\endcsname {\simpleiconsmap\symbol{"F60A}}
- \expandafter\def\csname simpleicon@wiiicon\endcsname {\simpleiconsmap\symbol{"F60B}}
- \expandafter\def\csname simpleicon@wiiuicon\endcsname {\simpleiconsmap\symbol{"F60C}}
- \expandafter\def\csname simpleicon@wikidataicon\endcsname {\simpleiconsmap\symbol{"F60D}}
- \expandafter\def\csname simpleicon@wikidotggicon\endcsname {\simpleiconsmap\symbol{"F60E}}
- \expandafter\def\csname simpleicon@wikidotjsicon\endcsname {\simpleiconsmap\symbol{"F60F}}
- \expandafter\def\csname simpleicon@wikimediacommonsicon\endcsname {\simpleiconsmap\symbol{"F610}}
- \expandafter\def\csname simpleicon@wikimediafoundationicon\endcsname {\simpleiconsmap\symbol{"F611}}
- \expandafter\def\csname simpleicon@wikipediaicon\endcsname {\simpleiconsmap\symbol{"F612}}
- \expandafter\def\csname simpleicon@wikiquoteicon\endcsname {\simpleiconsmap\symbol{"F613}}
- \expandafter\def\csname simpleicon@wikivoyageicon\endcsname {\simpleiconsmap\symbol{"F614}}
- \expandafter\def\csname simpleicon@winampicon\endcsname {\simpleiconsmap\symbol{"F615}}
- \expandafter\def\csname simpleicon@windowsicon\endcsname {\simpleiconsmap\symbol{"F616}}
- \expandafter\def\csname simpleicon@windows10icon\endcsname {\simpleiconsmap\symbol{"F617}}
- \expandafter\def\csname simpleicon@windows95icon\endcsname {\simpleiconsmap\symbol{"F619}}
- \expandafter\def\csname simpleicon@windowsterminalicon\endcsname {\simpleiconsmap\symbol{"F61A}}
- \expandafter\def\csname simpleicon@windowsxpicon\endcsname {\simpleiconsmap\symbol{"F61B}}
- \expandafter\def\csname simpleicon@wiproicon\endcsname {\simpleiconsmap\symbol{"F61C}}
- \expandafter\def\csname simpleicon@wireicon\endcsname {\simpleiconsmap\symbol{"F61D}}
- \expandafter\def\csname simpleicon@wireguardicon\endcsname {\simpleiconsmap\symbol{"F61E}}
- \expandafter\def\csname simpleicon@wiresharkicon\endcsname {\simpleiconsmap\symbol{"F61F}}
- \expandafter\def\csname simpleicon@wiseicon\endcsname {\simpleiconsmap\symbol{"F620}}
- \expandafter\def\csname simpleicon@wishicon\endcsname {\simpleiconsmap\symbol{"F621}}
- \expandafter\def\csname simpleicon@wistiaicon\endcsname {\simpleiconsmap\symbol{"F622}}
- \expandafter\def\csname simpleicon@wixicon\endcsname {\simpleiconsmap\symbol{"F623}}
- \expandafter\def\csname simpleicon@wizzairicon\endcsname {\simpleiconsmap\symbol{"F624}}
- \expandafter\def\csname simpleicon@wolframicon\endcsname {\simpleiconsmap\symbol{"F625}}
- \expandafter\def\csname simpleicon@wolframlanguageicon\endcsname {\simpleiconsmap\symbol{"F626}}
- \expandafter\def\csname simpleicon@wolframmathematicaicon\endcsname {\simpleiconsmap\symbol{"F627}}
- \expandafter\def\csname simpleicon@wondershareicon\endcsname {\simpleiconsmap\symbol{"F628}}
- \expandafter\def\csname simpleicon@wondersharefilmoraicon\endcsname {\simpleiconsmap\symbol{"F629}}
- \expandafter\def\csname simpleicon@wooicon\endcsname {\simpleiconsmap\symbol{"F62A}}
- \expandafter\def\csname simpleicon@woocommerceicon\endcsname {\simpleiconsmap\symbol{"F62B}}
- \expandafter\def\csname simpleicon@wordpressicon\endcsname {\simpleiconsmap\symbol{"F62C}}
- \expandafter\def\csname simpleicon@workplaceicon\endcsname {\simpleiconsmap\symbol{"F62D}}
- \expandafter\def\csname simpleicon@worldhealthorganizationicon\endcsname {\simpleiconsmap\symbol{"F62E}}
- \expandafter\def\csname simpleicon@wpengineicon\endcsname {\simpleiconsmap\symbol{"F62F}}
- \expandafter\def\csname simpleicon@wpexplorericon\endcsname {\simpleiconsmap\symbol{"F630}}
- \expandafter\def\csname simpleicon@wprocketicon\endcsname {\simpleiconsmap\symbol{"F631}}
- \expandafter\def\csname simpleicon@writedotasicon\endcsname {\simpleiconsmap\symbol{"F632}}
- \expandafter\def\csname simpleicon@wweicon\endcsname {\simpleiconsmap\symbol{"F633}}
- \expandafter\def\csname simpleicon@wwiseicon\endcsname {\simpleiconsmap\symbol{"F634}}
- \expandafter\def\csname simpleicon@wykopicon\endcsname {\simpleiconsmap\symbol{"F635}}
- \expandafter\def\csname simpleicon@wyzeicon\endcsname {\simpleiconsmap\symbol{"F636}}
- \expandafter\def\csname simpleicon@xicon\endcsname {\simpleiconsmap\symbol{"F637}}
- \expandafter\def\csname simpleicon@xamarinicon\endcsname {\simpleiconsmap\symbol{"F638}}
- \expandafter\def\csname simpleicon@xamlicon\endcsname {\simpleiconsmap\symbol{"F639}}
- \expandafter\def\csname simpleicon@xamppicon\endcsname {\simpleiconsmap\symbol{"F63A}}
- \expandafter\def\csname simpleicon@xboxicon\endcsname {\simpleiconsmap\symbol{"F63B}}
- \expandafter\def\csname simpleicon@xcodeicon\endcsname {\simpleiconsmap\symbol{"F63C}}
- \expandafter\def\csname simpleicon@xdadevelopersicon\endcsname {\simpleiconsmap\symbol{"F63D}}
- \expandafter\def\csname simpleicon@xdotorgicon\endcsname {\simpleiconsmap\symbol{"F63E}}
- \expandafter\def\csname simpleicon@xenditicon\endcsname {\simpleiconsmap\symbol{"F63F}}
- \expandafter\def\csname simpleicon@xeroicon\endcsname {\simpleiconsmap\symbol{"F640}}
- \expandafter\def\csname simpleicon@xfceicon\endcsname {\simpleiconsmap\symbol{"F641}}
- \expandafter\def\csname simpleicon@xiaohongshuicon\endcsname {\simpleiconsmap\symbol{"F642}}
- \expandafter\def\csname simpleicon@xiaomiicon\endcsname {\simpleiconsmap\symbol{"F643}}
- \expandafter\def\csname simpleicon@xingicon\endcsname {\simpleiconsmap\symbol{"F644}}
- \expandafter\def\csname simpleicon@xmppicon\endcsname {\simpleiconsmap\symbol{"F645}}
- \expandafter\def\csname simpleicon@xoicon\endcsname {\simpleiconsmap\symbol{"F646}}
- \expandafter\def\csname simpleicon@xrpicon\endcsname {\simpleiconsmap\symbol{"F647}}
- \expandafter\def\csname simpleicon@xspliticon\endcsname {\simpleiconsmap\symbol{"F648}}
- \expandafter\def\csname simpleicon@xstateicon\endcsname {\simpleiconsmap\symbol{"F649}}
- \expandafter\def\csname simpleicon@yabaiicon\endcsname {\simpleiconsmap\symbol{"F64A}}
- \expandafter\def\csname simpleicon@yaleicon\endcsname {\simpleiconsmap\symbol{"F64B}}
- \expandafter\def\csname simpleicon@yamahacorporationicon\endcsname {\simpleiconsmap\symbol{"F64C}}
- \expandafter\def\csname simpleicon@yamahamotorcorporationicon\endcsname {\simpleiconsmap\symbol{"F64D}}
- \expandafter\def\csname simpleicon@yamlicon\endcsname {\simpleiconsmap\symbol{"F64E}}
- \expandafter\def\csname simpleicon@yammericon\endcsname {\simpleiconsmap\symbol{"F64F}}
- \expandafter\def\csname simpleicon@yandexcloudicon\endcsname {\simpleiconsmap\symbol{"F650}}
- \expandafter\def\csname simpleicon@yarnicon\endcsname {\simpleiconsmap\symbol{"F651}}
- \expandafter\def\csname simpleicon@ycombinatoricon\endcsname {\simpleiconsmap\symbol{"F652}}
- \expandafter\def\csname simpleicon@yelpicon\endcsname {\simpleiconsmap\symbol{"F653}}
- \expandafter\def\csname simpleicon@yetiicon\endcsname {\simpleiconsmap\symbol{"F654}}
- \expandafter\def\csname simpleicon@yoasticon\endcsname {\simpleiconsmap\symbol{"F655}}
- \expandafter\def\csname simpleicon@youtubeicon\endcsname {\simpleiconsmap\symbol{"F656}}
- \expandafter\def\csname simpleicon@youtubegamingicon\endcsname {\simpleiconsmap\symbol{"F657}}
- \expandafter\def\csname simpleicon@youtubekidsicon\endcsname {\simpleiconsmap\symbol{"F658}}
- \expandafter\def\csname simpleicon@youtubemusicicon\endcsname {\simpleiconsmap\symbol{"F659}}
- \expandafter\def\csname simpleicon@youtubeshortsicon\endcsname {\simpleiconsmap\symbol{"F65A}}
- \expandafter\def\csname simpleicon@youtubestudioicon\endcsname {\simpleiconsmap\symbol{"F65B}}
- \expandafter\def\csname simpleicon@youtubetvicon\endcsname {\simpleiconsmap\symbol{"F65C}}
- \expandafter\def\csname simpleicon@yricon\endcsname {\simpleiconsmap\symbol{"F65D}}
- \expandafter\def\csname simpleicon@yubicoicon\endcsname {\simpleiconsmap\symbol{"F65E}}
- \expandafter\def\csname simpleicon@yunohosticon\endcsname {\simpleiconsmap\symbol{"F65F}}
- \expandafter\def\csname simpleicon@zabkaicon\endcsname {\simpleiconsmap\symbol{"F660}}
- \expandafter\def\csname simpleicon@zaimicon\endcsname {\simpleiconsmap\symbol{"F661}}
- \expandafter\def\csname simpleicon@zalandoicon\endcsname {\simpleiconsmap\symbol{"F662}}
- \expandafter\def\csname simpleicon@zaloicon\endcsname {\simpleiconsmap\symbol{"F663}}
- \expandafter\def\csname simpleicon@zapicon\endcsname {\simpleiconsmap\symbol{"F664}}
- \expandafter\def\csname simpleicon@zapiericon\endcsname {\simpleiconsmap\symbol{"F665}}
- \expandafter\def\csname simpleicon@zaraicon\endcsname {\simpleiconsmap\symbol{"F666}}
- \expandafter\def\csname simpleicon@zazzleicon\endcsname {\simpleiconsmap\symbol{"F667}}
- \expandafter\def\csname simpleicon@zcashicon\endcsname {\simpleiconsmap\symbol{"F668}}
- \expandafter\def\csname simpleicon@zcoolicon\endcsname {\simpleiconsmap\symbol{"F669}}
- \expandafter\def\csname simpleicon@zdficon\endcsname {\simpleiconsmap\symbol{"F66A}}
- \expandafter\def\csname simpleicon@zebpayicon\endcsname {\simpleiconsmap\symbol{"F66B}}
- \expandafter\def\csname simpleicon@zebratechnologiesicon\endcsname {\simpleiconsmap\symbol{"F66C}}
- \expandafter\def\csname simpleicon@zedindustriesicon\endcsname {\simpleiconsmap\symbol{"F66D}}
- \expandafter\def\csname simpleicon@zelleicon\endcsname {\simpleiconsmap\symbol{"F66E}}
- \expandafter\def\csname simpleicon@zendicon\endcsname {\simpleiconsmap\symbol{"F66F}}
- \expandafter\def\csname simpleicon@zendeskicon\endcsname {\simpleiconsmap\symbol{"F670}}
- \expandafter\def\csname simpleicon@zennicon\endcsname {\simpleiconsmap\symbol{"F671}}
- \expandafter\def\csname simpleicon@zenodoicon\endcsname {\simpleiconsmap\symbol{"F672}}
- \expandafter\def\csname simpleicon@zensaricon\endcsname {\simpleiconsmap\symbol{"F673}}
- \expandafter\def\csname simpleicon@zerodhaicon\endcsname {\simpleiconsmap\symbol{"F674}}
- \expandafter\def\csname simpleicon@zerplyicon\endcsname {\simpleiconsmap\symbol{"F675}}
- \expandafter\def\csname simpleicon@zettlricon\endcsname {\simpleiconsmap\symbol{"F676}}
- \expandafter\def\csname simpleicon@zhihuicon\endcsname {\simpleiconsmap\symbol{"F677}}
- \expandafter\def\csname simpleicon@zigicon\endcsname {\simpleiconsmap\symbol{"F678}}
- \expandafter\def\csname simpleicon@zigbeeicon\endcsname {\simpleiconsmap\symbol{"F679}}
- \expandafter\def\csname simpleicon@zigbee2mqtticon\endcsname {\simpleiconsmap\symbol{"F67A}}
- \expandafter\def\csname simpleicon@ziggoicon\endcsname {\simpleiconsmap\symbol{"F67B}}
- \expandafter\def\csname simpleicon@zilchicon\endcsname {\simpleiconsmap\symbol{"F67C}}
- \expandafter\def\csname simpleicon@zillowicon\endcsname {\simpleiconsmap\symbol{"F67D}}
- \expandafter\def\csname simpleicon@zincsearchicon\endcsname {\simpleiconsmap\symbol{"F67E}}
- \expandafter\def\csname simpleicon@zingaticon\endcsname {\simpleiconsmap\symbol{"F67F}}
- \expandafter\def\csname simpleicon@zodicon\endcsname {\simpleiconsmap\symbol{"F680}}
- \expandafter\def\csname simpleicon@zohoicon\endcsname {\simpleiconsmap\symbol{"F681}}
- \expandafter\def\csname simpleicon@zoipericon\endcsname {\simpleiconsmap\symbol{"F682}}
- \expandafter\def\csname simpleicon@zomatoicon\endcsname {\simpleiconsmap\symbol{"F683}}
- \expandafter\def\csname simpleicon@zoomicon\endcsname {\simpleiconsmap\symbol{"F684}}
- \expandafter\def\csname simpleicon@zorinicon\endcsname {\simpleiconsmap\symbol{"F685}}
- \expandafter\def\csname simpleicon@zoteroicon\endcsname {\simpleiconsmap\symbol{"F686}}
- \expandafter\def\csname simpleicon@zshicon\endcsname {\simpleiconsmap\symbol{"F687}}
- \expandafter\def\csname simpleicon@zulipicon\endcsname {\simpleiconsmap\symbol{"F688}}
- \expandafter\def\csname simpleicon@zyteicon\endcsname {\simpleiconsmap\symbol{"F689}} \ No newline at end of file
+ \expandafter\def\csname simpleicon@thanosicon\endcsname {\simpleiconsmap\symbol{"F4DD}}
+ \expandafter\def\csname simpleicon@thealgorithmsicon\endcsname {\simpleiconsmap\symbol{"F4DE}}
+ \expandafter\def\csname simpleicon@theboringcompanyicon\endcsname {\simpleiconsmap\symbol{"F4DF}}
+ \expandafter\def\csname simpleicon@theconversationicon\endcsname {\simpleiconsmap\symbol{"F4E0}}
+ \expandafter\def\csname simpleicon@thefinalsicon\endcsname {\simpleiconsmap\symbol{"F4E1}}
+ \expandafter\def\csname simpleicon@theguardianicon\endcsname {\simpleiconsmap\symbol{"F4E2}}
+ \expandafter\def\csname simpleicon@theirishtimesicon\endcsname {\simpleiconsmap\symbol{"F4E3}}
+ \expandafter\def\csname simpleicon@themightyicon\endcsname {\simpleiconsmap\symbol{"F4E4}}
+ \expandafter\def\csname simpleicon@themodelsresourceicon\endcsname {\simpleiconsmap\symbol{"F4E5}}
+ \expandafter\def\csname simpleicon@themoviedatabaseicon\endcsname {\simpleiconsmap\symbol{"F4E6}}
+ \expandafter\def\csname simpleicon@thenorthfaceicon\endcsname {\simpleiconsmap\symbol{"F4E7}}
+ \expandafter\def\csname simpleicon@theodinprojecticon\endcsname {\simpleiconsmap\symbol{"F4E8}}
+ \expandafter\def\csname simpleicon@theregistericon\endcsname {\simpleiconsmap\symbol{"F4E9}}
+ \expandafter\def\csname simpleicon@thesoundsresourceicon\endcsname {\simpleiconsmap\symbol{"F4EA}}
+ \expandafter\def\csname simpleicon@thespritersresourceicon\endcsname {\simpleiconsmap\symbol{"F4EB}}
+ \expandafter\def\csname simpleicon@thewashingtonposticon\endcsname {\simpleiconsmap\symbol{"F4EC}}
+ \expandafter\def\csname simpleicon@theweatherchannelicon\endcsname {\simpleiconsmap\symbol{"F4ED}}
+ \expandafter\def\csname simpleicon@thingiverseicon\endcsname {\simpleiconsmap\symbol{"F4EE}}
+ \expandafter\def\csname simpleicon@thinkpadicon\endcsname {\simpleiconsmap\symbol{"F4EF}}
+ \expandafter\def\csname simpleicon@thirdwebicon\endcsname {\simpleiconsmap\symbol{"F4F0}}
+ \expandafter\def\csname simpleicon@threadlessicon\endcsname {\simpleiconsmap\symbol{"F4F1}}
+ \expandafter\def\csname simpleicon@threadsicon\endcsname {\simpleiconsmap\symbol{"F4F2}}
+ \expandafter\def\csname simpleicon@threedotjsicon\endcsname {\simpleiconsmap\symbol{"F4F3}}
+ \expandafter\def\csname simpleicon@threemaicon\endcsname {\simpleiconsmap\symbol{"F4F4}}
+ \expandafter\def\csname simpleicon@thumbtackicon\endcsname {\simpleiconsmap\symbol{"F4F5}}
+ \expandafter\def\csname simpleicon@thunderbirdicon\endcsname {\simpleiconsmap\symbol{"F4F6}}
+ \expandafter\def\csname simpleicon@thunderstoreicon\endcsname {\simpleiconsmap\symbol{"F4F7}}
+ \expandafter\def\csname simpleicon@thurgauerkantonalbankicon\endcsname {\simpleiconsmap\symbol{"F4F8}}
+ \expandafter\def\csname simpleicon@thymeleaficon\endcsname {\simpleiconsmap\symbol{"F4F9}}
+ \expandafter\def\csname simpleicon@ticketmastericon\endcsname {\simpleiconsmap\symbol{"F4FA}}
+ \expandafter\def\csname simpleicon@ticktickicon\endcsname {\simpleiconsmap\symbol{"F4FB}}
+ \expandafter\def\csname simpleicon@tidalicon\endcsname {\simpleiconsmap\symbol{"F4FC}}
+ \expandafter\def\csname simpleicon@tiddlywikiicon\endcsname {\simpleiconsmap\symbol{"F4FD}}
+ \expandafter\def\csname simpleicon@tideicon\endcsname {\simpleiconsmap\symbol{"F4FE}}
+ \expandafter\def\csname simpleicon@tidyverseicon\endcsname {\simpleiconsmap\symbol{"F4FF}}
+ \expandafter\def\csname simpleicon@tietoevryicon\endcsname {\simpleiconsmap\symbol{"F500}}
+ \expandafter\def\csname simpleicon@tiktokicon\endcsname {\simpleiconsmap\symbol{"F501}}
+ \expandafter\def\csname simpleicon@tildapublishingicon\endcsname {\simpleiconsmap\symbol{"F502}}
+ \expandafter\def\csname simpleicon@tileicon\endcsname {\simpleiconsmap\symbol{"F503}}
+ \expandafter\def\csname simpleicon@timescaleicon\endcsname {\simpleiconsmap\symbol{"F504}}
+ \expandafter\def\csname simpleicon@tinaicon\endcsname {\simpleiconsmap\symbol{"F505}}
+ \expandafter\def\csname simpleicon@tindericon\endcsname {\simpleiconsmap\symbol{"F506}}
+ \expandafter\def\csname simpleicon@tindieicon\endcsname {\simpleiconsmap\symbol{"F507}}
+ \expandafter\def\csname simpleicon@tinkercadicon\endcsname {\simpleiconsmap\symbol{"F508}}
+ \expandafter\def\csname simpleicon@tinygradicon\endcsname {\simpleiconsmap\symbol{"F509}}
+ \expandafter\def\csname simpleicon@tinylettericon\endcsname {\simpleiconsmap\symbol{"F50A}}
+ \expandafter\def\csname simpleicon@tistoryicon\endcsname {\simpleiconsmap\symbol{"F50B}}
+ \expandafter\def\csname simpleicon@tldrawicon\endcsname {\simpleiconsmap\symbol{"F50C}}
+ \expandafter\def\csname simpleicon@tmobileicon\endcsname {\simpleiconsmap\symbol{"F50D}}
+ \expandafter\def\csname simpleicon@tmuxicon\endcsname {\simpleiconsmap\symbol{"F50E}}
+ \expandafter\def\csname simpleicon@todoisticon\endcsname {\simpleiconsmap\symbol{"F50F}}
+ \expandafter\def\csname simpleicon@togglicon\endcsname {\simpleiconsmap\symbol{"F510}}
+ \expandafter\def\csname simpleicon@toggltrackicon\endcsname {\simpleiconsmap\symbol{"F511}}
+ \expandafter\def\csname simpleicon@tokyometroicon\endcsname {\simpleiconsmap\symbol{"F512}}
+ \expandafter\def\csname simpleicon@tollicon\endcsname {\simpleiconsmap\symbol{"F513}}
+ \expandafter\def\csname simpleicon@tomlicon\endcsname {\simpleiconsmap\symbol{"F514}}
+ \expandafter\def\csname simpleicon@tomorrowlandicon\endcsname {\simpleiconsmap\symbol{"F515}}
+ \expandafter\def\csname simpleicon@tonicon\endcsname {\simpleiconsmap\symbol{"F516}}
+ \expandafter\def\csname simpleicon@topcodericon\endcsname {\simpleiconsmap\symbol{"F517}}
+ \expandafter\def\csname simpleicon@topdotggicon\endcsname {\simpleiconsmap\symbol{"F518}}
+ \expandafter\def\csname simpleicon@toptalicon\endcsname {\simpleiconsmap\symbol{"F519}}
+ \expandafter\def\csname simpleicon@torbrowsericon\endcsname {\simpleiconsmap\symbol{"F51A}}
+ \expandafter\def\csname simpleicon@torprojecticon\endcsname {\simpleiconsmap\symbol{"F51B}}
+ \expandafter\def\csname simpleicon@toshibaicon\endcsname {\simpleiconsmap\symbol{"F51C}}
+ \expandafter\def\csname simpleicon@totvsicon\endcsname {\simpleiconsmap\symbol{"F51D}}
+ \expandafter\def\csname simpleicon@tourboxicon\endcsname {\simpleiconsmap\symbol{"F51E}}
+ \expandafter\def\csname simpleicon@towericon\endcsname {\simpleiconsmap\symbol{"F51F}}
+ \expandafter\def\csname simpleicon@toyotaicon\endcsname {\simpleiconsmap\symbol{"F520}}
+ \expandafter\def\csname simpleicon@tplinkicon\endcsname {\simpleiconsmap\symbol{"F521}}
+ \expandafter\def\csname simpleicon@tqdmicon\endcsname {\simpleiconsmap\symbol{"F522}}
+ \expandafter\def\csname simpleicon@traccaricon\endcsname {\simpleiconsmap\symbol{"F523}}
+ \expandafter\def\csname simpleicon@tradingviewicon\endcsname {\simpleiconsmap\symbol{"F524}}
+ \expandafter\def\csname simpleicon@traefikmeshicon\endcsname {\simpleiconsmap\symbol{"F525}}
+ \expandafter\def\csname simpleicon@traefikproxyicon\endcsname {\simpleiconsmap\symbol{"F526}}
+ \expandafter\def\csname simpleicon@trailforksicon\endcsname {\simpleiconsmap\symbol{"F527}}
+ \expandafter\def\csname simpleicon@trainerroadicon\endcsname {\simpleiconsmap\symbol{"F528}}
+ \expandafter\def\csname simpleicon@trakticon\endcsname {\simpleiconsmap\symbol{"F529}}
+ \expandafter\def\csname simpleicon@transifexicon\endcsname {\simpleiconsmap\symbol{"F52A}}
+ \expandafter\def\csname simpleicon@transmissionicon\endcsname {\simpleiconsmap\symbol{"F52B}}
+ \expandafter\def\csname simpleicon@transportforirelandicon\endcsname {\simpleiconsmap\symbol{"F52C}}
+ \expandafter\def\csname simpleicon@transportforlondonicon\endcsname {\simpleiconsmap\symbol{"F52D}}
+ \expandafter\def\csname simpleicon@travisciicon\endcsname {\simpleiconsmap\symbol{"F52E}}
+ \expandafter\def\csname simpleicon@treehouseicon\endcsname {\simpleiconsmap\symbol{"F52F}}
+ \expandafter\def\csname simpleicon@trelloicon\endcsname {\simpleiconsmap\symbol{"F530}}
+ \expandafter\def\csname simpleicon@trendmicroicon\endcsname {\simpleiconsmap\symbol{"F531}}
+ \expandafter\def\csname simpleicon@treyarchicon\endcsname {\simpleiconsmap\symbol{"F532}}
+ \expandafter\def\csname simpleicon@tricentisicon\endcsname {\simpleiconsmap\symbol{"F533}}
+ \expandafter\def\csname simpleicon@triliumicon\endcsname {\simpleiconsmap\symbol{"F534}}
+ \expandafter\def\csname simpleicon@trillericon\endcsname {\simpleiconsmap\symbol{"F535}}
+ \expandafter\def\csname simpleicon@trillertvicon\endcsname {\simpleiconsmap\symbol{"F536}}
+ \expandafter\def\csname simpleicon@trinoicon\endcsname {\simpleiconsmap\symbol{"F537}}
+ \expandafter\def\csname simpleicon@tripadvisoricon\endcsname {\simpleiconsmap\symbol{"F538}}
+ \expandafter\def\csname simpleicon@tripdotcomicon\endcsname {\simpleiconsmap\symbol{"F539}}
+ \expandafter\def\csname simpleicon@trivagoicon\endcsname {\simpleiconsmap\symbol{"F53A}}
+ \expandafter\def\csname simpleicon@trivyicon\endcsname {\simpleiconsmap\symbol{"F53B}}
+ \expandafter\def\csname simpleicon@troveicon\endcsname {\simpleiconsmap\symbol{"F53C}}
+ \expandafter\def\csname simpleicon@trpcicon\endcsname {\simpleiconsmap\symbol{"F53D}}
+ \expandafter\def\csname simpleicon@truenasicon\endcsname {\simpleiconsmap\symbol{"F53E}}
+ \expandafter\def\csname simpleicon@trueupicon\endcsname {\simpleiconsmap\symbol{"F53F}}
+ \expandafter\def\csname simpleicon@truliaicon\endcsname {\simpleiconsmap\symbol{"F540}}
+ \expandafter\def\csname simpleicon@trustedshopsicon\endcsname {\simpleiconsmap\symbol{"F541}}
+ \expandafter\def\csname simpleicon@trustpiloticon\endcsname {\simpleiconsmap\symbol{"F542}}
+ \expandafter\def\csname simpleicon@tryhackmeicon\endcsname {\simpleiconsmap\symbol{"F543}}
+ \expandafter\def\csname simpleicon@tryitonlineicon\endcsname {\simpleiconsmap\symbol{"F544}}
+ \expandafter\def\csname simpleicon@tsnodeicon\endcsname {\simpleiconsmap\symbol{"F545}}
+ \expandafter\def\csname simpleicon@tubiicon\endcsname {\simpleiconsmap\symbol{"F546}}
+ \expandafter\def\csname simpleicon@tuiicon\endcsname {\simpleiconsmap\symbol{"F547}}
+ \expandafter\def\csname simpleicon@tumblricon\endcsname {\simpleiconsmap\symbol{"F548}}
+ \expandafter\def\csname simpleicon@tuneinicon\endcsname {\simpleiconsmap\symbol{"F549}}
+ \expandafter\def\csname simpleicon@turboicon\endcsname {\simpleiconsmap\symbol{"F54A}}
+ \expandafter\def\csname simpleicon@turborepoicon\endcsname {\simpleiconsmap\symbol{"F54B}}
+ \expandafter\def\csname simpleicon@turbosquidicon\endcsname {\simpleiconsmap\symbol{"F54C}}
+ \expandafter\def\csname simpleicon@turkishairlinesicon\endcsname {\simpleiconsmap\symbol{"F54D}}
+ \expandafter\def\csname simpleicon@tursoicon\endcsname {\simpleiconsmap\symbol{"F54E}}
+ \expandafter\def\csname simpleicon@tutanotaicon\endcsname {\simpleiconsmap\symbol{"F54F}}
+ \expandafter\def\csname simpleicon@tv4playicon\endcsname {\simpleiconsmap\symbol{"F550}}
+ \expandafter\def\csname simpleicon@tvtimeicon\endcsname {\simpleiconsmap\symbol{"F551}}
+ \expandafter\def\csname simpleicon@twilioicon\endcsname {\simpleiconsmap\symbol{"F552}}
+ \expandafter\def\csname simpleicon@twinklyicon\endcsname {\simpleiconsmap\symbol{"F553}}
+ \expandafter\def\csname simpleicon@twinmotionicon\endcsname {\simpleiconsmap\symbol{"F554}}
+ \expandafter\def\csname simpleicon@twitchicon\endcsname {\simpleiconsmap\symbol{"F555}}
+ \expandafter\def\csname simpleicon@typeformicon\endcsname {\simpleiconsmap\symbol{"F556}}
+ \expandafter\def\csname simpleicon@typeormicon\endcsname {\simpleiconsmap\symbol{"F557}}
+ \expandafter\def\csname simpleicon@typericon\endcsname {\simpleiconsmap\symbol{"F558}}
+ \expandafter\def\csname simpleicon@typescripticon\endcsname {\simpleiconsmap\symbol{"F559}}
+ \expandafter\def\csname simpleicon@typo3icon\endcsname {\simpleiconsmap\symbol{"F55A}}
+ \expandafter\def\csname simpleicon@typsticon\endcsname {\simpleiconsmap\symbol{"F55B}}
+ \expandafter\def\csname simpleicon@ubericon\endcsname {\simpleiconsmap\symbol{"F55C}}
+ \expandafter\def\csname simpleicon@ubereatsicon\endcsname {\simpleiconsmap\symbol{"F55D}}
+ \expandafter\def\csname simpleicon@ubiquitiicon\endcsname {\simpleiconsmap\symbol{"F55E}}
+ \expandafter\def\csname simpleicon@ubisofticon\endcsname {\simpleiconsmap\symbol{"F55F}}
+ \expandafter\def\csname simpleicon@ublockoriginicon\endcsname {\simpleiconsmap\symbol{"F560}}
+ \expandafter\def\csname simpleicon@ubuntuicon\endcsname {\simpleiconsmap\symbol{"F561}}
+ \expandafter\def\csname simpleicon@ubuntumateicon\endcsname {\simpleiconsmap\symbol{"F562}}
+ \expandafter\def\csname simpleicon@udacityicon\endcsname {\simpleiconsmap\symbol{"F563}}
+ \expandafter\def\csname simpleicon@udemyicon\endcsname {\simpleiconsmap\symbol{"F564}}
+ \expandafter\def\csname simpleicon@ufcicon\endcsname {\simpleiconsmap\symbol{"F565}}
+ \expandafter\def\csname simpleicon@uikiticon\endcsname {\simpleiconsmap\symbol{"F566}}
+ \expandafter\def\csname simpleicon@uipathicon\endcsname {\simpleiconsmap\symbol{"F567}}
+ \expandafter\def\csname simpleicon@ululeicon\endcsname {\simpleiconsmap\symbol{"F568}}
+ \expandafter\def\csname simpleicon@umamiicon\endcsname {\simpleiconsmap\symbol{"F569}}
+ \expandafter\def\csname simpleicon@umbracoicon\endcsname {\simpleiconsmap\symbol{"F56A}}
+ \expandafter\def\csname simpleicon@umlicon\endcsname {\simpleiconsmap\symbol{"F56B}}
+ \expandafter\def\csname simpleicon@unacademyicon\endcsname {\simpleiconsmap\symbol{"F56C}}
+ \expandafter\def\csname simpleicon@underarmouricon\endcsname {\simpleiconsmap\symbol{"F56D}}
+ \expandafter\def\csname simpleicon@underscoredotjsicon\endcsname {\simpleiconsmap\symbol{"F56E}}
+ \expandafter\def\csname simpleicon@undertaleicon\endcsname {\simpleiconsmap\symbol{"F56F}}
+ \expandafter\def\csname simpleicon@unicodeicon\endcsname {\simpleiconsmap\symbol{"F570}}
+ \expandafter\def\csname simpleicon@unilevericon\endcsname {\simpleiconsmap\symbol{"F571}}
+ \expandafter\def\csname simpleicon@uniqloicon\endcsname {\simpleiconsmap\symbol{"F572}}
+ \expandafter\def\csname simpleicon@uniqlojaicon\endcsname {\simpleiconsmap\symbol{"F573}}
+ \expandafter\def\csname simpleicon@unitedairlinesicon\endcsname {\simpleiconsmap\symbol{"F574}}
+ \expandafter\def\csname simpleicon@unitednationsicon\endcsname {\simpleiconsmap\symbol{"F575}}
+ \expandafter\def\csname simpleicon@unityicon\endcsname {\simpleiconsmap\symbol{"F576}}
+ \expandafter\def\csname simpleicon@unjsicon\endcsname {\simpleiconsmap\symbol{"F577}}
+ \expandafter\def\csname simpleicon@unlicenseicon\endcsname {\simpleiconsmap\symbol{"F578}}
+ \expandafter\def\csname simpleicon@unocssicon\endcsname {\simpleiconsmap\symbol{"F579}}
+ \expandafter\def\csname simpleicon@unpkgicon\endcsname {\simpleiconsmap\symbol{"F57A}}
+ \expandafter\def\csname simpleicon@unraidicon\endcsname {\simpleiconsmap\symbol{"F57B}}
+ \expandafter\def\csname simpleicon@unrealengineicon\endcsname {\simpleiconsmap\symbol{"F57C}}
+ \expandafter\def\csname simpleicon@unsplashicon\endcsname {\simpleiconsmap\symbol{"F57D}}
+ \expandafter\def\csname simpleicon@untappdicon\endcsname {\simpleiconsmap\symbol{"F57E}}
+ \expandafter\def\csname simpleicon@upcloudicon\endcsname {\simpleiconsmap\symbol{"F57F}}
+ \expandafter\def\csname simpleicon@upholdicon\endcsname {\simpleiconsmap\symbol{"F580}}
+ \expandafter\def\csname simpleicon@uplabsicon\endcsname {\simpleiconsmap\symbol{"F581}}
+ \expandafter\def\csname simpleicon@upptimeicon\endcsname {\simpleiconsmap\symbol{"F582}}
+ \expandafter\def\csname simpleicon@upsicon\endcsname {\simpleiconsmap\symbol{"F583}}
+ \expandafter\def\csname simpleicon@upstashicon\endcsname {\simpleiconsmap\symbol{"F584}}
+ \expandafter\def\csname simpleicon@uptimekumaicon\endcsname {\simpleiconsmap\symbol{"F585}}
+ \expandafter\def\csname simpleicon@uptoboxicon\endcsname {\simpleiconsmap\symbol{"F586}}
+ \expandafter\def\csname simpleicon@upworkicon\endcsname {\simpleiconsmap\symbol{"F587}}
+ \expandafter\def\csname simpleicon@uspsicon\endcsname {\simpleiconsmap\symbol{"F588}}
+ \expandafter\def\csname simpleicon@utorrenticon\endcsname {\simpleiconsmap\symbol{"F589}}
+ \expandafter\def\csname simpleicon@vicon\endcsname {\simpleiconsmap\symbol{"F58A}}
+ \expandafter\def\csname simpleicon@v2exicon\endcsname {\simpleiconsmap\symbol{"F58B}}
+ \expandafter\def\csname simpleicon@v8icon\endcsname {\simpleiconsmap\symbol{"F58C}}
+ \expandafter\def\csname simpleicon@vaadinicon\endcsname {\simpleiconsmap\symbol{"F58D}}
+ \expandafter\def\csname simpleicon@vagranticon\endcsname {\simpleiconsmap\symbol{"F58E}}
+ \expandafter\def\csname simpleicon@valaicon\endcsname {\simpleiconsmap\symbol{"F58F}}
+ \expandafter\def\csname simpleicon@valoranticon\endcsname {\simpleiconsmap\symbol{"F590}}
+ \expandafter\def\csname simpleicon@valveicon\endcsname {\simpleiconsmap\symbol{"F591}}
+ \expandafter\def\csname simpleicon@vaporicon\endcsname {\simpleiconsmap\symbol{"F592}}
+ \expandafter\def\csname simpleicon@vaulticon\endcsname {\simpleiconsmap\symbol{"F593}}
+ \expandafter\def\csname simpleicon@vaultwardenicon\endcsname {\simpleiconsmap\symbol{"F594}}
+ \expandafter\def\csname simpleicon@vauxhallicon\endcsname {\simpleiconsmap\symbol{"F595}}
+ \expandafter\def\csname simpleicon@vbulletinicon\endcsname {\simpleiconsmap\symbol{"F596}}
+ \expandafter\def\csname simpleicon@vectaryicon\endcsname {\simpleiconsmap\symbol{"F597}}
+ \expandafter\def\csname simpleicon@vectorlogozoneicon\endcsname {\simpleiconsmap\symbol{"F598}}
+ \expandafter\def\csname simpleicon@vectorworksicon\endcsname {\simpleiconsmap\symbol{"F599}}
+ \expandafter\def\csname simpleicon@veeamicon\endcsname {\simpleiconsmap\symbol{"F59A}}
+ \expandafter\def\csname simpleicon@veedicon\endcsname {\simpleiconsmap\symbol{"F59B}}
+ \expandafter\def\csname simpleicon@veepeeicon\endcsname {\simpleiconsmap\symbol{"F59C}}
+ \expandafter\def\csname simpleicon@vegaicon\endcsname {\simpleiconsmap\symbol{"F59D}}
+ \expandafter\def\csname simpleicon@vegasicon\endcsname {\simpleiconsmap\symbol{"F59E}}
+ \expandafter\def\csname simpleicon@velogicon\endcsname {\simpleiconsmap\symbol{"F59F}}
+ \expandafter\def\csname simpleicon@venmoicon\endcsname {\simpleiconsmap\symbol{"F5A0}}
+ \expandafter\def\csname simpleicon@vercelicon\endcsname {\simpleiconsmap\symbol{"F5A1}}
+ \expandafter\def\csname simpleicon@verdaccioicon\endcsname {\simpleiconsmap\symbol{"F5A2}}
+ \expandafter\def\csname simpleicon@veritasicon\endcsname {\simpleiconsmap\symbol{"F5A3}}
+ \expandafter\def\csname simpleicon@verizonicon\endcsname {\simpleiconsmap\symbol{"F5A4}}
+ \expandafter\def\csname simpleicon@vespaicon\endcsname {\simpleiconsmap\symbol{"F5A5}}
+ \expandafter\def\csname simpleicon@vestelicon\endcsname {\simpleiconsmap\symbol{"F5A6}}
+ \expandafter\def\csname simpleicon@vexxhosticon\endcsname {\simpleiconsmap\symbol{"F5A7}}
+ \expandafter\def\csname simpleicon@vfairsicon\endcsname {\simpleiconsmap\symbol{"F5A8}}
+ \expandafter\def\csname simpleicon@viadeoicon\endcsname {\simpleiconsmap\symbol{"F5A9}}
+ \expandafter\def\csname simpleicon@viaplayicon\endcsname {\simpleiconsmap\symbol{"F5AA}}
+ \expandafter\def\csname simpleicon@vibericon\endcsname {\simpleiconsmap\symbol{"F5AB}}
+ \expandafter\def\csname simpleicon@vibloicon\endcsname {\simpleiconsmap\symbol{"F5AC}}
+ \expandafter\def\csname simpleicon@victoriametricsicon\endcsname {\simpleiconsmap\symbol{"F5AD}}
+ \expandafter\def\csname simpleicon@victronenergyicon\endcsname {\simpleiconsmap\symbol{"F5AE}}
+ \expandafter\def\csname simpleicon@vimicon\endcsname {\simpleiconsmap\symbol{"F5AF}}
+ \expandafter\def\csname simpleicon@vimeoicon\endcsname {\simpleiconsmap\symbol{"F5B0}}
+ \expandafter\def\csname simpleicon@vimeolivestreamicon\endcsname {\simpleiconsmap\symbol{"F5B1}}
+ \expandafter\def\csname simpleicon@virginicon\endcsname {\simpleiconsmap\symbol{"F5B2}}
+ \expandafter\def\csname simpleicon@virginatlanticicon\endcsname {\simpleiconsmap\symbol{"F5B3}}
+ \expandafter\def\csname simpleicon@virginmediaicon\endcsname {\simpleiconsmap\symbol{"F5B4}}
+ \expandafter\def\csname simpleicon@virtualboxicon\endcsname {\simpleiconsmap\symbol{"F5B5}}
+ \expandafter\def\csname simpleicon@virustotalicon\endcsname {\simpleiconsmap\symbol{"F5B6}}
+ \expandafter\def\csname simpleicon@visaicon\endcsname {\simpleiconsmap\symbol{"F5B7}}
+ \expandafter\def\csname simpleicon@visxicon\endcsname {\simpleiconsmap\symbol{"F5B8}}
+ \expandafter\def\csname simpleicon@viteicon\endcsname {\simpleiconsmap\symbol{"F5B9}}
+ \expandafter\def\csname simpleicon@vitepressicon\endcsname {\simpleiconsmap\symbol{"F5BA}}
+ \expandafter\def\csname simpleicon@vitessicon\endcsname {\simpleiconsmap\symbol{"F5BB}}
+ \expandafter\def\csname simpleicon@vitesticon\endcsname {\simpleiconsmap\symbol{"F5BC}}
+ \expandafter\def\csname simpleicon@vivaldiicon\endcsname {\simpleiconsmap\symbol{"F5BD}}
+ \expandafter\def\csname simpleicon@vivawalleticon\endcsname {\simpleiconsmap\symbol{"F5BE}}
+ \expandafter\def\csname simpleicon@vivinoicon\endcsname {\simpleiconsmap\symbol{"F5BF}}
+ \expandafter\def\csname simpleicon@vivinticon\endcsname {\simpleiconsmap\symbol{"F5C0}}
+ \expandafter\def\csname simpleicon@vivoicon\endcsname {\simpleiconsmap\symbol{"F5C1}}
+ \expandafter\def\csname simpleicon@vkicon\endcsname {\simpleiconsmap\symbol{"F5C2}}
+ \expandafter\def\csname simpleicon@vlcmediaplayericon\endcsname {\simpleiconsmap\symbol{"F5C3}}
+ \expandafter\def\csname simpleicon@vmwareicon\endcsname {\simpleiconsmap\symbol{"F5C4}}
+ \expandafter\def\csname simpleicon@vodafoneicon\endcsname {\simpleiconsmap\symbol{"F5C5}}
+ \expandafter\def\csname simpleicon@voidlinuxicon\endcsname {\simpleiconsmap\symbol{"F5C6}}
+ \expandafter\def\csname simpleicon@voipdotmsicon\endcsname {\simpleiconsmap\symbol{"F5C7}}
+ \expandafter\def\csname simpleicon@volkswagenicon\endcsname {\simpleiconsmap\symbol{"F5C8}}
+ \expandafter\def\csname simpleicon@volvoicon\endcsname {\simpleiconsmap\symbol{"F5C9}}
+ \expandafter\def\csname simpleicon@vonageicon\endcsname {\simpleiconsmap\symbol{"F5CA}}
+ \expandafter\def\csname simpleicon@vorondesignicon\endcsname {\simpleiconsmap\symbol{"F5CB}}
+ \expandafter\def\csname simpleicon@vowpalwabbiticon\endcsname {\simpleiconsmap\symbol{"F5CC}}
+ \expandafter\def\csname simpleicon@voxicon\endcsname {\simpleiconsmap\symbol{"F5CD}}
+ \expandafter\def\csname simpleicon@vrchaticon\endcsname {\simpleiconsmap\symbol{"F5CE}}
+ \expandafter\def\csname simpleicon@vscoicon\endcsname {\simpleiconsmap\symbol{"F5CF}}
+ \expandafter\def\csname simpleicon@vscodiumicon\endcsname {\simpleiconsmap\symbol{"F5D0}}
+ \expandafter\def\csname simpleicon@vtexicon\endcsname {\simpleiconsmap\symbol{"F5D1}}
+ \expandafter\def\csname simpleicon@vuedotjsicon\endcsname {\simpleiconsmap\symbol{"F5D2}}
+ \expandafter\def\csname simpleicon@vuetifyicon\endcsname {\simpleiconsmap\symbol{"F5D3}}
+ \expandafter\def\csname simpleicon@vulkanicon\endcsname {\simpleiconsmap\symbol{"F5D4}}
+ \expandafter\def\csname simpleicon@vultricon\endcsname {\simpleiconsmap\symbol{"F5D5}}
+ \expandafter\def\csname simpleicon@vyondicon\endcsname {\simpleiconsmap\symbol{"F5D6}}
+ \expandafter\def\csname simpleicon@w3schoolsicon\endcsname {\simpleiconsmap\symbol{"F5D7}}
+ \expandafter\def\csname simpleicon@wacomicon\endcsname {\simpleiconsmap\symbol{"F5D8}}
+ \expandafter\def\csname simpleicon@wagmiicon\endcsname {\simpleiconsmap\symbol{"F5D9}}
+ \expandafter\def\csname simpleicon@wagtailicon\endcsname {\simpleiconsmap\symbol{"F5DA}}
+ \expandafter\def\csname simpleicon@wailsicon\endcsname {\simpleiconsmap\symbol{"F5DB}}
+ \expandafter\def\csname simpleicon@wakatimeicon\endcsname {\simpleiconsmap\symbol{"F5DC}}
+ \expandafter\def\csname simpleicon@walkmanicon\endcsname {\simpleiconsmap\symbol{"F5DD}}
+ \expandafter\def\csname simpleicon@wallabagicon\endcsname {\simpleiconsmap\symbol{"F5DE}}
+ \expandafter\def\csname simpleicon@walletconnecticon\endcsname {\simpleiconsmap\symbol{"F5DF}}
+ \expandafter\def\csname simpleicon@walmarticon\endcsname {\simpleiconsmap\symbol{"F5E0}}
+ \expandafter\def\csname simpleicon@wantedlyicon\endcsname {\simpleiconsmap\symbol{"F5E1}}
+ \expandafter\def\csname simpleicon@wappalyzericon\endcsname {\simpleiconsmap\symbol{"F5E2}}
+ \expandafter\def\csname simpleicon@warnerbrosicon\endcsname {\simpleiconsmap\symbol{"F5E3}}
+ \expandafter\def\csname simpleicon@warpicon\endcsname {\simpleiconsmap\symbol{"F5E4}}
+ \expandafter\def\csname simpleicon@wasabiicon\endcsname {\simpleiconsmap\symbol{"F5E5}}
+ \expandafter\def\csname simpleicon@wasmcloudicon\endcsname {\simpleiconsmap\symbol{"F5E6}}
+ \expandafter\def\csname simpleicon@wasmericon\endcsname {\simpleiconsmap\symbol{"F5E7}}
+ \expandafter\def\csname simpleicon@watchtowericon\endcsname {\simpleiconsmap\symbol{"F5E8}}
+ \expandafter\def\csname simpleicon@wattpadicon\endcsname {\simpleiconsmap\symbol{"F5E9}}
+ \expandafter\def\csname simpleicon@waylandicon\endcsname {\simpleiconsmap\symbol{"F5EA}}
+ \expandafter\def\csname simpleicon@wazeicon\endcsname {\simpleiconsmap\symbol{"F5EB}}
+ \expandafter\def\csname simpleicon@wazirxicon\endcsname {\simpleiconsmap\symbol{"F5EC}}
+ \expandafter\def\csname simpleicon@wearosicon\endcsname {\simpleiconsmap\symbol{"F5ED}}
+ \expandafter\def\csname simpleicon@weasylicon\endcsname {\simpleiconsmap\symbol{"F5EE}}
+ \expandafter\def\csname simpleicon@web3dotjsicon\endcsname {\simpleiconsmap\symbol{"F5EF}}
+ \expandafter\def\csname simpleicon@webassemblyicon\endcsname {\simpleiconsmap\symbol{"F5F0}}
+ \expandafter\def\csname simpleicon@webauthnicon\endcsname {\simpleiconsmap\symbol{"F5F1}}
+ \expandafter\def\csname simpleicon@webcomponentsdotorgicon\endcsname {\simpleiconsmap\symbol{"F5F2}}
+ \expandafter\def\csname simpleicon@webdriverioicon\endcsname {\simpleiconsmap\symbol{"F5F3}}
+ \expandafter\def\csname simpleicon@webexicon\endcsname {\simpleiconsmap\symbol{"F5F4}}
+ \expandafter\def\csname simpleicon@webflowicon\endcsname {\simpleiconsmap\symbol{"F5F5}}
+ \expandafter\def\csname simpleicon@webglicon\endcsname {\simpleiconsmap\symbol{"F5F6}}
+ \expandafter\def\csname simpleicon@webgpuicon\endcsname {\simpleiconsmap\symbol{"F5F7}}
+ \expandafter\def\csname simpleicon@weblateicon\endcsname {\simpleiconsmap\symbol{"F5F8}}
+ \expandafter\def\csname simpleicon@webminicon\endcsname {\simpleiconsmap\symbol{"F5F9}}
+ \expandafter\def\csname simpleicon@webmoneyicon\endcsname {\simpleiconsmap\symbol{"F5FA}}
+ \expandafter\def\csname simpleicon@webpackicon\endcsname {\simpleiconsmap\symbol{"F5FB}}
+ \expandafter\def\csname simpleicon@webrtcicon\endcsname {\simpleiconsmap\symbol{"F5FC}}
+ \expandafter\def\csname simpleicon@webstormicon\endcsname {\simpleiconsmap\symbol{"F5FD}}
+ \expandafter\def\csname simpleicon@webtoonicon\endcsname {\simpleiconsmap\symbol{"F5FE}}
+ \expandafter\def\csname simpleicon@webtreesicon\endcsname {\simpleiconsmap\symbol{"F5FF}}
+ \expandafter\def\csname simpleicon@wechaticon\endcsname {\simpleiconsmap\symbol{"F600}}
+ \expandafter\def\csname simpleicon@wegameicon\endcsname {\simpleiconsmap\symbol{"F601}}
+ \expandafter\def\csname simpleicon@weightsandbiasesicon\endcsname {\simpleiconsmap\symbol{"F602}}
+ \expandafter\def\csname simpleicon@welcometothejungleicon\endcsname {\simpleiconsmap\symbol{"F603}}
+ \expandafter\def\csname simpleicon@wellfoundicon\endcsname {\simpleiconsmap\symbol{"F604}}
+ \expandafter\def\csname simpleicon@wellsfargoicon\endcsname {\simpleiconsmap\symbol{"F605}}
+ \expandafter\def\csname simpleicon@wemoicon\endcsname {\simpleiconsmap\symbol{"F606}}
+ \expandafter\def\csname simpleicon@westerndigitalicon\endcsname {\simpleiconsmap\symbol{"F607}}
+ \expandafter\def\csname simpleicon@westernunionicon\endcsname {\simpleiconsmap\symbol{"F608}}
+ \expandafter\def\csname simpleicon@wetransfericon\endcsname {\simpleiconsmap\symbol{"F609}}
+ \expandafter\def\csname simpleicon@weztermicon\endcsname {\simpleiconsmap\symbol{"F60A}}
+ \expandafter\def\csname simpleicon@wgpuicon\endcsname {\simpleiconsmap\symbol{"F60B}}
+ \expandafter\def\csname simpleicon@whatsappicon\endcsname {\simpleiconsmap\symbol{"F60C}}
+ \expandafter\def\csname simpleicon@wheniworkicon\endcsname {\simpleiconsmap\symbol{"F60D}}
+ \expandafter\def\csname simpleicon@wiiicon\endcsname {\simpleiconsmap\symbol{"F60E}}
+ \expandafter\def\csname simpleicon@wiiuicon\endcsname {\simpleiconsmap\symbol{"F60F}}
+ \expandafter\def\csname simpleicon@wikidataicon\endcsname {\simpleiconsmap\symbol{"F610}}
+ \expandafter\def\csname simpleicon@wikidotggicon\endcsname {\simpleiconsmap\symbol{"F611}}
+ \expandafter\def\csname simpleicon@wikidotjsicon\endcsname {\simpleiconsmap\symbol{"F612}}
+ \expandafter\def\csname simpleicon@wikimediacommonsicon\endcsname {\simpleiconsmap\symbol{"F613}}
+ \expandafter\def\csname simpleicon@wikimediafoundationicon\endcsname {\simpleiconsmap\symbol{"F614}}
+ \expandafter\def\csname simpleicon@wikipediaicon\endcsname {\simpleiconsmap\symbol{"F615}}
+ \expandafter\def\csname simpleicon@wikiquoteicon\endcsname {\simpleiconsmap\symbol{"F616}}
+ \expandafter\def\csname simpleicon@wikivoyageicon\endcsname {\simpleiconsmap\symbol{"F617}}
+ \expandafter\def\csname simpleicon@winampicon\endcsname {\simpleiconsmap\symbol{"F618}}
+ \expandafter\def\csname simpleicon@wiproicon\endcsname {\simpleiconsmap\symbol{"F619}}
+ \expandafter\def\csname simpleicon@wireicon\endcsname {\simpleiconsmap\symbol{"F61A}}
+ \expandafter\def\csname simpleicon@wireguardicon\endcsname {\simpleiconsmap\symbol{"F61B}}
+ \expandafter\def\csname simpleicon@wiresharkicon\endcsname {\simpleiconsmap\symbol{"F61C}}
+ \expandafter\def\csname simpleicon@wiseicon\endcsname {\simpleiconsmap\symbol{"F61D}}
+ \expandafter\def\csname simpleicon@wishicon\endcsname {\simpleiconsmap\symbol{"F61E}}
+ \expandafter\def\csname simpleicon@wistiaicon\endcsname {\simpleiconsmap\symbol{"F61F}}
+ \expandafter\def\csname simpleicon@wixicon\endcsname {\simpleiconsmap\symbol{"F620}}
+ \expandafter\def\csname simpleicon@wizzairicon\endcsname {\simpleiconsmap\symbol{"F621}}
+ \expandafter\def\csname simpleicon@wolframicon\endcsname {\simpleiconsmap\symbol{"F622}}
+ \expandafter\def\csname simpleicon@wolframlanguageicon\endcsname {\simpleiconsmap\symbol{"F623}}
+ \expandafter\def\csname simpleicon@wolframmathematicaicon\endcsname {\simpleiconsmap\symbol{"F624}}
+ \expandafter\def\csname simpleicon@wondershareicon\endcsname {\simpleiconsmap\symbol{"F625}}
+ \expandafter\def\csname simpleicon@wondersharefilmoraicon\endcsname {\simpleiconsmap\symbol{"F626}}
+ \expandafter\def\csname simpleicon@wooicon\endcsname {\simpleiconsmap\symbol{"F627}}
+ \expandafter\def\csname simpleicon@woocommerceicon\endcsname {\simpleiconsmap\symbol{"F628}}
+ \expandafter\def\csname simpleicon@wordpressicon\endcsname {\simpleiconsmap\symbol{"F629}}
+ \expandafter\def\csname simpleicon@workplaceicon\endcsname {\simpleiconsmap\symbol{"F62A}}
+ \expandafter\def\csname simpleicon@worldhealthorganizationicon\endcsname {\simpleiconsmap\symbol{"F62B}}
+ \expandafter\def\csname simpleicon@wpengineicon\endcsname {\simpleiconsmap\symbol{"F62C}}
+ \expandafter\def\csname simpleicon@wpexplorericon\endcsname {\simpleiconsmap\symbol{"F62D}}
+ \expandafter\def\csname simpleicon@wprocketicon\endcsname {\simpleiconsmap\symbol{"F62E}}
+ \expandafter\def\csname simpleicon@writedotasicon\endcsname {\simpleiconsmap\symbol{"F62F}}
+ \expandafter\def\csname simpleicon@wweicon\endcsname {\simpleiconsmap\symbol{"F630}}
+ \expandafter\def\csname simpleicon@wwiseicon\endcsname {\simpleiconsmap\symbol{"F631}}
+ \expandafter\def\csname simpleicon@wykopicon\endcsname {\simpleiconsmap\symbol{"F632}}
+ \expandafter\def\csname simpleicon@wyzeicon\endcsname {\simpleiconsmap\symbol{"F633}}
+ \expandafter\def\csname simpleicon@xicon\endcsname {\simpleiconsmap\symbol{"F634}}
+ \expandafter\def\csname simpleicon@xamppicon\endcsname {\simpleiconsmap\symbol{"F635}}
+ \expandafter\def\csname simpleicon@xcodeicon\endcsname {\simpleiconsmap\symbol{"F636}}
+ \expandafter\def\csname simpleicon@xdadevelopersicon\endcsname {\simpleiconsmap\symbol{"F637}}
+ \expandafter\def\csname simpleicon@xdotorgicon\endcsname {\simpleiconsmap\symbol{"F638}}
+ \expandafter\def\csname simpleicon@xenditicon\endcsname {\simpleiconsmap\symbol{"F639}}
+ \expandafter\def\csname simpleicon@xeroicon\endcsname {\simpleiconsmap\symbol{"F63A}}
+ \expandafter\def\csname simpleicon@xfceicon\endcsname {\simpleiconsmap\symbol{"F63B}}
+ \expandafter\def\csname simpleicon@xiaohongshuicon\endcsname {\simpleiconsmap\symbol{"F63C}}
+ \expandafter\def\csname simpleicon@xiaomiicon\endcsname {\simpleiconsmap\symbol{"F63D}}
+ \expandafter\def\csname simpleicon@xingicon\endcsname {\simpleiconsmap\symbol{"F63E}}
+ \expandafter\def\csname simpleicon@xmppicon\endcsname {\simpleiconsmap\symbol{"F63F}}
+ \expandafter\def\csname simpleicon@xoicon\endcsname {\simpleiconsmap\symbol{"F640}}
+ \expandafter\def\csname simpleicon@xrpicon\endcsname {\simpleiconsmap\symbol{"F641}}
+ \expandafter\def\csname simpleicon@xspliticon\endcsname {\simpleiconsmap\symbol{"F642}}
+ \expandafter\def\csname simpleicon@xstateicon\endcsname {\simpleiconsmap\symbol{"F643}}
+ \expandafter\def\csname simpleicon@xubuntuicon\endcsname {\simpleiconsmap\symbol{"F644}}
+ \expandafter\def\csname simpleicon@yabaiicon\endcsname {\simpleiconsmap\symbol{"F645}}
+ \expandafter\def\csname simpleicon@yaleicon\endcsname {\simpleiconsmap\symbol{"F646}}
+ \expandafter\def\csname simpleicon@yamahacorporationicon\endcsname {\simpleiconsmap\symbol{"F647}}
+ \expandafter\def\csname simpleicon@yamahamotorcorporationicon\endcsname {\simpleiconsmap\symbol{"F648}}
+ \expandafter\def\csname simpleicon@yamlicon\endcsname {\simpleiconsmap\symbol{"F649}}
+ \expandafter\def\csname simpleicon@yandexcloudicon\endcsname {\simpleiconsmap\symbol{"F64A}}
+ \expandafter\def\csname simpleicon@yarnicon\endcsname {\simpleiconsmap\symbol{"F64B}}
+ \expandafter\def\csname simpleicon@ycombinatoricon\endcsname {\simpleiconsmap\symbol{"F64C}}
+ \expandafter\def\csname simpleicon@yelpicon\endcsname {\simpleiconsmap\symbol{"F64D}}
+ \expandafter\def\csname simpleicon@yetiicon\endcsname {\simpleiconsmap\symbol{"F64E}}
+ \expandafter\def\csname simpleicon@yiiicon\endcsname {\simpleiconsmap\symbol{"F64F}}
+ \expandafter\def\csname simpleicon@yoasticon\endcsname {\simpleiconsmap\symbol{"F650}}
+ \expandafter\def\csname simpleicon@youtubeicon\endcsname {\simpleiconsmap\symbol{"F651}}
+ \expandafter\def\csname simpleicon@youtubegamingicon\endcsname {\simpleiconsmap\symbol{"F652}}
+ \expandafter\def\csname simpleicon@youtubekidsicon\endcsname {\simpleiconsmap\symbol{"F653}}
+ \expandafter\def\csname simpleicon@youtubemusicicon\endcsname {\simpleiconsmap\symbol{"F654}}
+ \expandafter\def\csname simpleicon@youtubeshortsicon\endcsname {\simpleiconsmap\symbol{"F655}}
+ \expandafter\def\csname simpleicon@youtubestudioicon\endcsname {\simpleiconsmap\symbol{"F656}}
+ \expandafter\def\csname simpleicon@youtubetvicon\endcsname {\simpleiconsmap\symbol{"F657}}
+ \expandafter\def\csname simpleicon@yricon\endcsname {\simpleiconsmap\symbol{"F658}}
+ \expandafter\def\csname simpleicon@yubicoicon\endcsname {\simpleiconsmap\symbol{"F659}}
+ \expandafter\def\csname simpleicon@yunohosticon\endcsname {\simpleiconsmap\symbol{"F65A}}
+ \expandafter\def\csname simpleicon@zabkaicon\endcsname {\simpleiconsmap\symbol{"F65B}}
+ \expandafter\def\csname simpleicon@zaimicon\endcsname {\simpleiconsmap\symbol{"F65C}}
+ \expandafter\def\csname simpleicon@zalandoicon\endcsname {\simpleiconsmap\symbol{"F65D}}
+ \expandafter\def\csname simpleicon@zaloicon\endcsname {\simpleiconsmap\symbol{"F65E}}
+ \expandafter\def\csname simpleicon@zapicon\endcsname {\simpleiconsmap\symbol{"F65F}}
+ \expandafter\def\csname simpleicon@zapiericon\endcsname {\simpleiconsmap\symbol{"F660}}
+ \expandafter\def\csname simpleicon@zaraicon\endcsname {\simpleiconsmap\symbol{"F661}}
+ \expandafter\def\csname simpleicon@zazzleicon\endcsname {\simpleiconsmap\symbol{"F662}}
+ \expandafter\def\csname simpleicon@zcashicon\endcsname {\simpleiconsmap\symbol{"F663}}
+ \expandafter\def\csname simpleicon@zcoolicon\endcsname {\simpleiconsmap\symbol{"F664}}
+ \expandafter\def\csname simpleicon@zdficon\endcsname {\simpleiconsmap\symbol{"F665}}
+ \expandafter\def\csname simpleicon@zebpayicon\endcsname {\simpleiconsmap\symbol{"F666}}
+ \expandafter\def\csname simpleicon@zebratechnologiesicon\endcsname {\simpleiconsmap\symbol{"F667}}
+ \expandafter\def\csname simpleicon@zedindustriesicon\endcsname {\simpleiconsmap\symbol{"F668}}
+ \expandafter\def\csname simpleicon@zelleicon\endcsname {\simpleiconsmap\symbol{"F669}}
+ \expandafter\def\csname simpleicon@zendicon\endcsname {\simpleiconsmap\symbol{"F66A}}
+ \expandafter\def\csname simpleicon@zendeskicon\endcsname {\simpleiconsmap\symbol{"F66B}}
+ \expandafter\def\csname simpleicon@zennicon\endcsname {\simpleiconsmap\symbol{"F66C}}
+ \expandafter\def\csname simpleicon@zenodoicon\endcsname {\simpleiconsmap\symbol{"F66D}}
+ \expandafter\def\csname simpleicon@zensaricon\endcsname {\simpleiconsmap\symbol{"F66E}}
+ \expandafter\def\csname simpleicon@zerodhaicon\endcsname {\simpleiconsmap\symbol{"F66F}}
+ \expandafter\def\csname simpleicon@zerotiericon\endcsname {\simpleiconsmap\symbol{"F670}}
+ \expandafter\def\csname simpleicon@zerplyicon\endcsname {\simpleiconsmap\symbol{"F671}}
+ \expandafter\def\csname simpleicon@zettlricon\endcsname {\simpleiconsmap\symbol{"F672}}
+ \expandafter\def\csname simpleicon@zhihuicon\endcsname {\simpleiconsmap\symbol{"F673}}
+ \expandafter\def\csname simpleicon@zigicon\endcsname {\simpleiconsmap\symbol{"F674}}
+ \expandafter\def\csname simpleicon@zigbeeicon\endcsname {\simpleiconsmap\symbol{"F675}}
+ \expandafter\def\csname simpleicon@zigbee2mqtticon\endcsname {\simpleiconsmap\symbol{"F676}}
+ \expandafter\def\csname simpleicon@ziggoicon\endcsname {\simpleiconsmap\symbol{"F677}}
+ \expandafter\def\csname simpleicon@zilchicon\endcsname {\simpleiconsmap\symbol{"F678}}
+ \expandafter\def\csname simpleicon@zillowicon\endcsname {\simpleiconsmap\symbol{"F679}}
+ \expandafter\def\csname simpleicon@zincsearchicon\endcsname {\simpleiconsmap\symbol{"F67A}}
+ \expandafter\def\csname simpleicon@zingaticon\endcsname {\simpleiconsmap\symbol{"F67B}}
+ \expandafter\def\csname simpleicon@zodicon\endcsname {\simpleiconsmap\symbol{"F67C}}
+ \expandafter\def\csname simpleicon@zohoicon\endcsname {\simpleiconsmap\symbol{"F67D}}
+ \expandafter\def\csname simpleicon@zoipericon\endcsname {\simpleiconsmap\symbol{"F67E}}
+ \expandafter\def\csname simpleicon@zomatoicon\endcsname {\simpleiconsmap\symbol{"F67F}}
+ \expandafter\def\csname simpleicon@zoomicon\endcsname {\simpleiconsmap\symbol{"F680}}
+ \expandafter\def\csname simpleicon@zorinicon\endcsname {\simpleiconsmap\symbol{"F681}}
+ \expandafter\def\csname simpleicon@zoteroicon\endcsname {\simpleiconsmap\symbol{"F682}}
+ \expandafter\def\csname simpleicon@zshicon\endcsname {\simpleiconsmap\symbol{"F683}}
+ \expandafter\def\csname simpleicon@zulipicon\endcsname {\simpleiconsmap\symbol{"F684}}
+ \expandafter\def\csname simpleicon@zyteicon\endcsname {\simpleiconsmap\symbol{"F685}} \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconseight.fd b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconseight.fd
index ff3efff72a1..8312881b7e5 100644
--- a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconseight.fd
+++ b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconseight.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconseight.fd}[2024/06/28 Font definitions for U/simpleiconseight.]
+ \ProvidesFile{usimpleiconseight.fd}[2024/09/27 Font definitions for U/simpleiconseight.]
\DeclareFontFamily{U}{simpleiconseight}{}
\DeclareFontShape{U}{simpleiconseight}{m}{n}{<-> SimpleIcons--simpleiconseight}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsfive.fd b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsfive.fd
index 6a5beab8d94..522af34b693 100644
--- a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsfive.fd
+++ b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsfive.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsfive.fd}[2024/06/28 Font definitions for U/simpleiconsfive.]
+ \ProvidesFile{usimpleiconsfive.fd}[2024/09/27 Font definitions for U/simpleiconsfive.]
\DeclareFontFamily{U}{simpleiconsfive}{}
\DeclareFontShape{U}{simpleiconsfive}{m}{n}{<-> SimpleIcons--simpleiconsfive}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsfour.fd b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsfour.fd
index 0a7243d82dc..28b9388eaec 100644
--- a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsfour.fd
+++ b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsfour.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsfour.fd}[2024/06/28 Font definitions for U/simpleiconsfour.]
+ \ProvidesFile{usimpleiconsfour.fd}[2024/09/27 Font definitions for U/simpleiconsfour.]
\DeclareFontFamily{U}{simpleiconsfour}{}
\DeclareFontShape{U}{simpleiconsfour}{m}{n}{<-> SimpleIcons--simpleiconsfour}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsnine.fd b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsnine.fd
index ac517dfbeb9..94a046e108a 100644
--- a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsnine.fd
+++ b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsnine.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsnine.fd}[2024/06/28 Font definitions for U/simpleiconsnine.]
+ \ProvidesFile{usimpleiconsnine.fd}[2024/09/27 Font definitions for U/simpleiconsnine.]
\DeclareFontFamily{U}{simpleiconsnine}{}
\DeclareFontShape{U}{simpleiconsnine}{m}{n}{<-> SimpleIcons--simpleiconsnine}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsone.fd b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsone.fd
index 02a61ee583c..5386f2462fe 100644
--- a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsone.fd
+++ b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsone.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsone.fd}[2024/06/28 Font definitions for U/simpleiconsone.]
+ \ProvidesFile{usimpleiconsone.fd}[2024/09/27 Font definitions for U/simpleiconsone.]
\DeclareFontFamily{U}{simpleiconsone}{}
\DeclareFontShape{U}{simpleiconsone}{m}{n}{<-> SimpleIcons--simpleiconsone}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsoneone.fd b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsoneone.fd
index a6814e863e2..8d6530ba8c9 100644
--- a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsoneone.fd
+++ b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsoneone.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsoneone.fd}[2024/06/28 Font definitions for U/simpleiconsoneone.]
+ \ProvidesFile{usimpleiconsoneone.fd}[2024/09/27 Font definitions for U/simpleiconsoneone.]
\DeclareFontFamily{U}{simpleiconsoneone}{}
\DeclareFontShape{U}{simpleiconsoneone}{m}{n}{<-> SimpleIcons--simpleiconsoneone}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsonethree.fd b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsonethree.fd
index 38f8ce8c094..bd15bbf6f20 100644
--- a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsonethree.fd
+++ b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsonethree.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsonethree.fd}[2024/06/28 Font definitions for U/simpleiconsonethree.]
+ \ProvidesFile{usimpleiconsonethree.fd}[2024/09/27 Font definitions for U/simpleiconsonethree.]
\DeclareFontFamily{U}{simpleiconsonethree}{}
\DeclareFontShape{U}{simpleiconsonethree}{m}{n}{<-> SimpleIcons--simpleiconsonethree}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsonetwo.fd b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsonetwo.fd
index 08e3f61c4eb..c47b0d02c1a 100644
--- a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsonetwo.fd
+++ b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsonetwo.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsonetwo.fd}[2024/06/28 Font definitions for U/simpleiconsonetwo.]
+ \ProvidesFile{usimpleiconsonetwo.fd}[2024/09/27 Font definitions for U/simpleiconsonetwo.]
\DeclareFontFamily{U}{simpleiconsonetwo}{}
\DeclareFontShape{U}{simpleiconsonetwo}{m}{n}{<-> SimpleIcons--simpleiconsonetwo}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsonezero.fd b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsonezero.fd
index 3b245deb708..e9f4ecb5cba 100644
--- a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsonezero.fd
+++ b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsonezero.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsonezero.fd}[2024/06/28 Font definitions for U/simpleiconsonezero.]
+ \ProvidesFile{usimpleiconsonezero.fd}[2024/09/27 Font definitions for U/simpleiconsonezero.]
\DeclareFontFamily{U}{simpleiconsonezero}{}
\DeclareFontShape{U}{simpleiconsonezero}{m}{n}{<-> SimpleIcons--simpleiconsonezero}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsseven.fd b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsseven.fd
index 001d65682b3..663e5d16fca 100644
--- a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsseven.fd
+++ b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsseven.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsseven.fd}[2024/06/28 Font definitions for U/simpleiconsseven.]
+ \ProvidesFile{usimpleiconsseven.fd}[2024/09/27 Font definitions for U/simpleiconsseven.]
\DeclareFontFamily{U}{simpleiconsseven}{}
\DeclareFontShape{U}{simpleiconsseven}{m}{n}{<-> SimpleIcons--simpleiconsseven}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconssix.fd b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconssix.fd
index c6ab5c27b32..210c956be3c 100644
--- a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconssix.fd
+++ b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconssix.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconssix.fd}[2024/06/28 Font definitions for U/simpleiconssix.]
+ \ProvidesFile{usimpleiconssix.fd}[2024/09/27 Font definitions for U/simpleiconssix.]
\DeclareFontFamily{U}{simpleiconssix}{}
\DeclareFontShape{U}{simpleiconssix}{m}{n}{<-> SimpleIcons--simpleiconssix}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsthree.fd b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsthree.fd
index 092129425b1..859391bdb5f 100644
--- a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsthree.fd
+++ b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconsthree.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconsthree.fd}[2024/06/28 Font definitions for U/simpleiconsthree.]
+ \ProvidesFile{usimpleiconsthree.fd}[2024/09/27 Font definitions for U/simpleiconsthree.]
\DeclareFontFamily{U}{simpleiconsthree}{}
\DeclareFontShape{U}{simpleiconsthree}{m}{n}{<-> SimpleIcons--simpleiconsthree}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconstwo.fd b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconstwo.fd
index 0719f7e0f46..759034821a7 100644
--- a/Master/texmf-dist/tex/latex/simpleicons/usimpleiconstwo.fd
+++ b/Master/texmf-dist/tex/latex/simpleicons/usimpleiconstwo.fd
@@ -1,5 +1,5 @@
- \ProvidesFile{usimpleiconstwo.fd}[2024/06/28 Font definitions for U/simpleiconstwo.]
+ \ProvidesFile{usimpleiconstwo.fd}[2024/09/27 Font definitions for U/simpleiconstwo.]
\DeclareFontFamily{U}{simpleiconstwo}{}
\DeclareFontShape{U}{simpleiconstwo}{m}{n}{<-> SimpleIcons--simpleiconstwo}{}
\endinput
diff --git a/Master/texmf-dist/tex/latex/siunitx/siunitx.sty b/Master/texmf-dist/tex/latex/siunitx/siunitx.sty
index eec160df3fc..9e943639402 100644
--- a/Master/texmf-dist/tex/latex/siunitx/siunitx.sty
+++ b/Master/texmf-dist/tex/latex/siunitx/siunitx.sty
@@ -41,7 +41,7 @@
}%
\endinput
}%
-\ProvidesExplPackage {siunitx} {2024-06-24} {3.3.19}
+\ProvidesExplPackage {siunitx} {2024-09-30} {3.3.22}
{A comprehensive (SI) units package}
\msg_new:nnnn { siunitx } { incompatible-package }
{ Package~'#1'~incompatible. }
@@ -1479,7 +1479,13 @@
\str_case:nnF {#1}
{
{ down } { \use_i:nn }
- { up } { \use_ii:nn }
+ { up }
+ {
+ \str_if_eq:eeTF
+ {#2} { \prg_replicate:nn { \tl_count:n {#2} } { 0 } }
+ { \use_i:nn }
+ { \use_ii:nn }
+ }
}
{
\bool_lazy_or:nnTF
@@ -2983,23 +2989,26 @@
{
\siunitx_angle:eee
{ \fp_eval:n { trunc(#1,0) } }
- { \fp_eval:n { trunc((#1 - trunc(#1,0)) * 60,0) } }
+ { \fp_eval:n { abs(trunc((#1 - trunc(#1,0)) * 60,0)) } }
{
\fp_eval:n
{
- (
- (#1 - trunc(#1,0)) * 60
- - trunc((#1 - trunc(#1,0)) * 60,0)
- )
+ abs
+ (
+ (#1 - trunc(#1,0)) * 60
+ - trunc((#1 - trunc(#1,0)) * 60,0)
+ )
* 60
}
}
}
\cs_generate_variant:Nn \__siunitx_angle_arc_convert:n { e }
+\clist_const:Nn \c__siunitx_angle_parts_tl { degrees , minutes , seconds }
\tl_new:N \l__siunitx_angle_degrees_tl
\tl_new:N \l__siunitx_angle_minutes_tl
\tl_new:N \l__siunitx_angle_seconds_tl
\tl_new:N \l__siunitx_angle_sign_tl
+\tl_new:N \l__siunitx_angle_signed_bool
\keys_precompile:nnN
{ siunitx }
{
@@ -3013,49 +3022,32 @@
{ \exp_not:V \l__siunitx_angle_tmp_tl }
\keys_precompile:nnN
{ siunitx }
- { input-comparators = , input-signs = }
+ { input-comparators = }
\l__siunitx_angle_tmp_tl
-\cs_set_protected:Npx \__siunitx_angle_suppress_comp_sign:
+\cs_set_protected:Npx \__siunitx_angle_suppress_comp:
{ \exp_not:V \l__siunitx_angle_tmp_tl }
\cs_new_protected:Npn \__siunitx_angle_arc_sign:nnn #1#2#3
{
\group_begin:
\__siunitx_angle_suppress_exp_uncert:
\tl_clear:N \l__siunitx_angle_sign_tl
- \__siunitx_angle_arc_sign:nn {#1} { degrees }
+ \bool_set_false:N \l__siunitx_angle_signed_bool
+ \str_if_eq:nnTF {#1} { -0 }
+ {
+ \__siunitx_angle_arc_sign:nn { } { degrees }
+ \__siunitx_angle_suppress_comp:
+ \tl_set:Nn \l__siunitx_angle_sign_tl { - }
+ \bool_set_true:N \l__siunitx_angle_signed_bool
+ }
+ { \__siunitx_angle_arc_sign:nn {#1} { degrees } }
\__siunitx_angle_arc_sign:nn {#2} { minutes }
\__siunitx_angle_arc_sign:nn {#3} { seconds }
\tl_if_empty:NF \l__siunitx_angle_sign_tl
{
- \clist_map_inline:nn { degrees , minutes , seconds }
- {
- \tl_if_empty:cF { l__siunitx_angle_ ##1 _tl }
- {
- \tl_set:cx { l__siunitx_angle_ ##1 _tl }
- {
- { }
- { \exp_not:V \l__siunitx_angle_sign_tl }
- \exp_after:wN \exp_after:wN \exp_after:wN
- \__siunitx_angle_sign:nnnnnnn
- \cs:w l__siunitx_angle_ ##1 _tl \cs_end:
- }
- \clist_map_break:
- }
- }
- }
- \clist_map_inline:nn { degrees , minutes , seconds }
- {
- \tl_if_empty:cF { l__siunitx_angle_ ##1 _tl }
- {
- \siunitx_number_process:cc
- { l__siunitx_angle_ ##1 _tl } { l__siunitx_angle_ ##1 _tl }
- \tl_set:cx { l__siunitx_angle_ ##1 _tl }
- {
- \siunitx_number_output:cN
- { l__siunitx_angle_ ##1 _tl } \q_nil
- }
- }
+ \clist_map_function:NN \c__siunitx_angle_parts_tl
+ \__siunitx_angle_arc_sign_auxi:n
}
+ \clist_map_function:NN \c__siunitx_angle_parts_tl \__siunitx_angle_arc_sign_auxii:n
\__siunitx_angle_arc_print:VVV
\l__siunitx_angle_degrees_tl
\l__siunitx_angle_minutes_tl
@@ -3076,6 +3068,40 @@
{
\siunitx_number_parse:nN {#1} \l__siunitx_angle_tmp_tl
\exp_after:wN \__siunitx_angle_extract_sign:nnnnnnnn \l__siunitx_angle_tmp_tl {#2}
+ \bool_set_true:N \l__siunitx_angle_signed_bool
+ }
+ }
+\cs_new_protected:Npn \__siunitx_angle_arc_sign_auxi:n #1
+ {
+ \tl_if_empty:cF { l__siunitx_angle_ #1 _tl }
+ {
+ \tl_set:cx { l__siunitx_angle_ #1 _tl }
+ {
+ { }
+ { \exp_not:V \l__siunitx_angle_sign_tl }
+ \exp_after:wN \exp_after:wN \exp_after:wN
+ \__siunitx_angle_sign:nnnnnnn
+ \cs:w l__siunitx_angle_ #1 _tl \cs_end:
+ }
+ \clist_map_break:
+ }
+ }
+\cs_new_protected:Npn \__siunitx_angle_arc_sign_auxii:n #1
+ {
+ \tl_if_empty:cF { l__siunitx_angle_ #1 _tl }
+ {
+ \bool_lazy_and:nnF
+ { \l__siunitx_angle_force_arc_bool }
+ { ! \str_if_eq_p:nn {#1} { seconds } }
+ {
+ \siunitx_number_process:cc
+ { l__siunitx_angle_ #1 _tl } { l__siunitx_angle_ #1 _tl }
+ }
+ \tl_set:cx { l__siunitx_angle_ #1 _tl }
+ {
+ \siunitx_number_output:cN
+ { l__siunitx_angle_ #1 _tl } \q_nil
+ }
}
}
\cs_new_protected:Npn \__siunitx_angle_extract_sign:nnnnnnnn #1#2#3#4#5#6#7#8
@@ -3083,10 +3109,12 @@
\tl_if_blank:nTF {#2}
{ \tl_set_eq:cN { l__siunitx_angle_ #8 _tl } \l__siunitx_angle_tmp_tl }
{
+ \bool_if:NTF \l__siunitx_angle_signed_bool
+ { \msg_error:nnn { siunitx } { arc-multi-sign } }
+ { \tl_set:Nn \l__siunitx_angle_sign_tl {#2} }
\tl_set:cn { l__siunitx_angle_ #8 _tl }
{ {#1} { } {#3} {#4} {#5} {#6} {#7} }
- \tl_set:Nn \l__siunitx_angle_sign_tl {#2}
- \__siunitx_angle_suppress_comp_sign:
+ \__siunitx_angle_suppress_comp:
}
}
\cs_new:Npn \__siunitx_angle_sign:nnnnnnn #1#2#3#4#5#6#7
@@ -3206,6 +3234,12 @@
\siunitx_unit_format:nN {#1} \l__siunitx_angle_tmp_tl
\siunitx_print_unit:V \l__siunitx_angle_tmp_tl
}
+\msg_new:nnnn { siunitx } { arc-multi-sign }
+ { Multiple~signs~given~for~arc~angle! }
+ {
+ An~angle~given~as~an~arc~should~have~at~most~one~sign:~
+ only~the~first~sign~will~be~used.
+ }
\keys_set:nn { siunitx }
{
angle-mode = input ,
@@ -3871,10 +3905,10 @@
\bool_lazy_or:nnTF
{ \str_if_eq_p:nn {#2} { i } }
{ \str_if_eq_p:nn {#2#3} { +i } }
- { \__siunitx_complex_convert_polar_auxvi:nnn { } { 1 } {#1} }
+ { \__siunitx_complex_convert_polar_auxvii:nnn { } { 1 } {#1} }
{
\str_if_eq:nnTF {#2#3} { -i }
- { \__siunitx_complex_convert_polar_auxvi:nnn { } { -1 } {#1} }
+ { \__siunitx_complex_convert_polar_auxvii:nnn { } { -1 } {#1} }
{ \__siunitx_complex_convert_polar_auxiii:nnw {#1} {#2} #3 + + \q_stop }
}
}
@@ -3884,7 +3918,7 @@
{ \__siunitx_complex_convert_polar_auxiv:nnw {#1} {#2} #3 - - \q_stop }
{
\str_if_eq:nnTF {#4} { i }
- { \__siunitx_complex_convert_polar_auxvi:nnn {#2#3} { 1 } {#1} }
+ { \__siunitx_complex_convert_polar_auxvii:nnn {#2#3} { 1 } {#1} }
{ \__siunitx_complex_convert_polar_auxv:nnw {#2#3} {#1} #4 i \q_nil i \q_stop }
}
}
@@ -3894,35 +3928,45 @@
{ \__siunitx_complex_convert_polar_auxv:nnw { } {#1} #2#3 i \q_nil i \q_stop }
{
\str_if_eq:nnTF {#4} { i }
- { \__siunitx_complex_convert_polar_auxvi:nnn { } { -1 } {#1} }
+ { \__siunitx_complex_convert_polar_auxvii:nnn { } { -1 } {#1} }
{ \__siunitx_complex_convert_polar_auxv:nnw {#2#3} {#1} -#4 i \q_nil i \q_stop }
}
}
\cs_new:Npn \__siunitx_complex_convert_polar_auxv:nnw #1#2#3 i #4 i #5 \q_stop
{
\quark_if_nil:nTF {#4}
- { { #3 \tl_if_blank:nF {#2} { e#2 } } { 0 } }
- { \__siunitx_complex_convert_polar_auxvi:nnn {#1} {#3} {#2} }
+ {
+ \tl_if_head_eq_meaning:nNTF {#3} -
+ { \__siunitx_complex_convert_polar_auxvi:enn { \use_none:n #3 } { 180 } }
+ { \__siunitx_complex_convert_polar_auxvi:nnn {#3} { 0 } }
+ {#2}
+ }
+ { \__siunitx_complex_convert_polar_auxvii:nnn {#1} {#3} {#2} }
}
\cs_new:Npn \__siunitx_complex_convert_polar_auxvi:nnn #1#2#3
{
- \__siunitx_complex_convert_polar_auxvii:eee
+ { #1 \tl_if_blank:nF {#3} { e#3 } } {#2}
+ }
+\cs_generate_variant:Nn \__siunitx_complex_convert_polar_auxvi:nnn { e }
+\cs_new:Npn \__siunitx_complex_convert_polar_auxvii:nnn #1#2#3
+ {
+ \__siunitx_complex_convert_polar_auxviii:eee
{ \tl_if_blank:nTF {#1} { 0 } {#1} }
{ \tl_if_blank:nTF {#2} { 0 } {#2} }
{ \tl_if_blank:nF {#3} { e#3 } }
}
-\cs_new:Npn \__siunitx_complex_convert_polar_auxvii:nnn #1#2#3
+\cs_new:Npn \__siunitx_complex_convert_polar_auxviii:nnn #1#2#3
{
- \__siunitx_complex_format_polar_auxviii:ee
+ \__siunitx_complex_format_polar_auxix:ee
{ \fp_eval:n { sqrt ( (#1#3)^2 + (#2#3)^2 ) } }
{
\fp_eval:n
{ atan \bool_if:NT \l__siunitx_complex_polar_degree_bool { d } (#2 , #1) }
}
}
-\cs_generate_variant:Nn \__siunitx_complex_convert_polar_auxvii:nnn { eee }
-\cs_new:Npn \__siunitx_complex_format_polar_auxviii:nn #1#2 { {#1} {#2} }
-\cs_generate_variant:Nn \__siunitx_complex_format_polar_auxviii:nn { ee }
+\cs_generate_variant:Nn \__siunitx_complex_convert_polar_auxviii:nnn { eee }
+\cs_new:Npn \__siunitx_complex_format_polar_auxix:nn #1#2 { {#1} {#2} }
+\cs_generate_variant:Nn \__siunitx_complex_format_polar_auxix:nn { ee }
\msg_new:nnnn { siunitx } { invalid-polar-form }
{ Invalid~polar~form~"#1:#2". }
{
@@ -5308,13 +5352,6 @@
{
\group_begin:
\tl_clear:N \l__siunitx_table_collect_tl
- \if_false: { \fi:
- \cs_set_protected:Npn \cr
- {
- \__siunitx_table_collect_loop:
- \tex_cr:D
- }
- \if_false: } \fi:
\__siunitx_table_collect_begin:w
}
\cs_new_protected:Npn \__siunitx_table_collect_begin:w #1 \ignorespaces
@@ -5339,9 +5376,9 @@
{
\unskip { \__siunitx_table_collect_loop: }
\textonly@unskip { \__siunitx_table_collect_loop: }
- \end { \tabularnewline \end }
+ \end { \__siunitx_table_collect_pre_cr: \tabularnewline \end }
\relax { \__siunitx_table_collect_relax:N #1 }
- \tabularnewline { \tabularnewline }
+ \tabularnewline { \__siunitx_table_collect_pre_cr: \tabularnewline }
\siunitx_cell_end: { \siunitx_cell_end: }
}
{ \__siunitx_table_collect_token_aux:N #1 }
@@ -5368,9 +5405,9 @@
\@maybe@unskip { \__siunitx_table_collect_loop: }
\tab@setcr { \__siunitx_table_collect_loop: }
\unskip { \__siunitx_table_collect_loop: }
- \end { \tabularnewline \end }
+ \end { \__siunitx_table_collect_pre_cr: \tabularnewline \end }
\relax { \__siunitx_table_collect_relax:N #1 }
- \tabularnewline { \tabularnewline }
+ \tabularnewline { \__siunitx_table_collect_pre_cr: \tabularnewline }
\siunitx_cell_end: { \siunitx_cell_end: }
}
{ \__siunitx_table_collect_token_aux:N #1 }
@@ -5391,6 +5428,16 @@
{ \use_i_delimit_by_q_stop:nw {#3} }
{ \__siunitx_table_collect_search_aux:NNn #1 }
}
+\cs_new_protected:Npn \__siunitx_table_collect_pre_cr:
+ {
+ \if_false: { \fi:
+ \cs_set_protected:Npn \cr
+ {
+ \__siunitx_table_collect_loop:
+ \tex_cr:D
+ }
+ \if_false: } \fi:
+ }
\tl_new:N \l__siunitx_table_before_tl
\tl_new:N \l__siunitx_table_number_tl
\tl_new:N \l__siunitx_table_after_tl
@@ -7503,7 +7550,10 @@
\str_if_eq:eeT
{ \exp_not:o { \familydefault } }
{ \exp_not:n { \sfdefault } }
- { \keys_set:nn { siunitx } { unit-font-command = \mathsf } }
+ {
+ \tl_if_eq:VnT \l_siunitx_unit_font_tl { \mathrm }
+ { \keys_set:nn { siunitx } { unit-font-command = \mathsf } }
+ }
}
{ }
}
diff --git a/Master/texmf-dist/tex/latex/spbmark/spbmark.sty b/Master/texmf-dist/tex/latex/spbmark/spbmark.sty
index fa10c8410f6..4046c8bf9c0 100644
--- a/Master/texmf-dist/tex/latex/spbmark/spbmark.sty
+++ b/Master/texmf-dist/tex/latex/spbmark/spbmark.sty
@@ -8,8 +8,8 @@
% The latest version of this license is in
% https://creativecommons.org/licenses/by/4.0/legalcode
\NeedsTeXFormat{LaTeX2e}[2018/12/31]
-\RequirePackage{xparse,l3keys2e}
-\ProvidesExplPackage{spbmark}{2024/06/21}{1.46k}
+\RequirePackage{xparse}
+\ProvidesExplPackage{spbmark}{2024/07/14}{1.46n}
{Customize superscripts and subscripts}
\cs_generate_variant:Nn \box_set_ht:Nn { cv }
@@ -34,15 +34,13 @@
\cs_set_eq:NN \spbset \spb_set:n
\cs_new_protected:Npn \spb_mark_core_set_trad:n #1
{
- \cs_set:cpn { spb@text#1script@core }
- { \use:c { spb@text#1script@save } }
- \cs_set:cpn { spb@math@#1@core }
- { \use:c { spb@math@#1@save } }
+ \cs_set_eq:cc { spb@text#1script@core } { spb@text#1script@save }
+ \cs_set_eq:cc { spb@math@#1@core } { spb@math@#1@save }
}
\cs_new_protected:Npn \spb_mark_core_set_none:n #1
{
- \cs_set:cpn { spb@text#1script@core } { \relax }
- \cs_set:cpn { spb@math@#1@core } { \relax }
+ \cs_set_eq:cN { spb@text#1script@core } \use:n
+ \cs_set_eq:cN { spb@math@#1@core } \use:n
}
\keys_define:nn { spbmark/option }
@@ -130,7 +128,12 @@
{ \tl_set_eq:NN \fnmarkfont \ftntm@font }
{ \tl_set_eq:NN \fnmarkfont \normalfont }
-\ProcessKeysOptions{spbmark/option}
+\cs_if_exist:NTF \ProcessKeyOptions
+ { \ProcessKeyOptions[spbmark/option] }
+ {
+ \RequirePackage{l3keys2e}
+ \ProcessKeysOptions{spbmark/option}
+ }
\tl_new:N \g__spb_mark_case_init_tl
\cs_new_protected:Npn \spb_local_case_init:nnn #1#2#3
diff --git a/Master/texmf-dist/tex/latex/spelatex/spelatex.sty b/Master/texmf-dist/tex/latex/spelatex/spelatex.sty
index bf2a290b1bb..1c2e1185b39 100644
--- a/Master/texmf-dist/tex/latex/spelatex/spelatex.sty
+++ b/Master/texmf-dist/tex/latex/spelatex/spelatex.sty
@@ -23,17 +23,19 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{spelatex}
- [2024/06/21 v0.91 SpeLaTeX - Speech-enabled LaTeX (DMW and LVP)]
-\def\fileversion{0.91}
-\def\filedate{2024/06/21}
+ [2024/09/09 v0.92 SpeLaTeX - Speech-enabled LaTeX (DMW and LVP)]
+\def\fileversion{0.92}
+\def\filedate{2024/09/09}
-%%
+%%
+%% \begin{spelchunk}
\RequirePackage{expl3}
\RequirePackage{hyperref}
\RequirePackage{xcolor}
\RequirePackage{ifthen}
+\RequirePackage{verbatim}
\RequirePackage{fancyvrb}
\RequirePackage{newfile}
\RequirePackage{rotating}
@@ -53,18 +55,17 @@
urlcolor=black}
\RequirePackage{kvoptions}
\RequirePackage{xkeyval}
-\RequirePackage{marginnote}
\SetupKeyvalOptions{
family=spel,
prefix=spel@
}
\DeclareStringOption[ogg]{format}
+\DeclareStringOption[local]{server}
+\DeclareStringOption[full]{markervisibility}
\DeclareBoolOption[false]{disabled}
\DeclareBoolOption[false]{extramath}
-\DeclareBoolOption[false]{propermath}
\ProcessKeyvalOptions*
\DeclareRobustCommand{\spelatex}{S\kern-0.3ex\raisebox{-0.1ex}{\rotatebox{-15}{p}}\kern-0.25ex\raisebox{0.1ex}{\rotatebox{10}{e}}\kern-0.1ex\LaTeX}
-\DeclareRobustCommand{\spelbox}{S\kern-0.3ex\raisebox{-0.1ex}{\rotatebox{-15}{p}}\kern-0.25ex\raisebox{0.1ex}{\rotatebox{10}{e}}\kern-0.1exLbo\raisebox{-0.2ex}{x}}
\DeclareRobustCommand{\spelpl}{\texttt{spel-wizard.pl}}
\newoutputstream{chunk}
\newoutputstream{spelidx}
@@ -77,6 +78,10 @@
\addtostream{spelidx}{format|\spel@format}
\addtostream{spelidx}{audiodir|\audiodir}
\addtostream{spelidx}{chunkdir|\chunkdir}
+\addtostream{spelidx}{server|\spel@server}
+\ExplSyntaxOn
+\newcommand\linksdir{\str_if_eq:VnTF{\spel@server}{local}{./\audiodir}{\spel@server/\audiodir}}
+\ExplSyntaxOff
\ifspel@disabled\newcommand{\spel@idxwrite}[2]{}\else
\newcommand{\spel@idxwrite}[2]{%
\typeout{spel: Generating #1 - #2}%
@@ -118,12 +123,27 @@
\setcounter{spel@chunk}{0}
\AddBabelHook{informspel}{write}{\spel@idxwrite{language}{\languagename}}
\EnableBabelHook{informspel}
+\ExplSyntaxOn
+\definecolor{faintgray}{rgb}{0.9,0.9,0.9}
+\str_if_eq:VnTF{\spel@markervisibility}{none}{
+ \colorlet{spel@color@right}{white}
+ \colorlet{spel@color@left}{white}
+}{}
+\str_if_eq:VnTF{\spel@markervisibility}{onlygroups}{
+ \colorlet{spel@color@right}{black!25}
+ \colorlet{spel@color@left}{white}
+}{}
+\str_if_eq:VnTF{\spel@markervisibility}{full}{
+ \colorlet{spel@color@right}{black!25}
+ \colorlet{spel@color@left}{black!25}
+}{}
+\ExplSyntaxOff
\ifspel@disabled\newcommand{\spel@registerelement}[1]{}\else
\newcommand{\spel@registerelement}[1]{%
\expandafter\let\csname spel@@#1\expandafter\endcsname\csname #1\endcsname
\expandafter\gdef\csname #1\endcsname##1{%
\spel@chunkwrite{#1}{##1}
- \csname spel@@#1\endcsname{\href{run:\audiodir/#1.\spel@format}{##1}}
+ \csname spel@@#1\endcsname{\href{\linksdir/#1.\spel@format}{##1}}
}
\expandafter\AtBeginDocument{
\spel@idxwrite{#1}{#1}
@@ -159,7 +179,7 @@
\let\spel@@part\@part
\def\@part[#1]#2{%
\setcounter{spel@chunk}{0}% need this because counter resetting fails
- \spel@@part[#1]{\href{run:\audiodir/\spel@@optpart.\spel@format}{#2}}%
+ \spel@@part[#1]{\href{\linksdir/\spel@@optpart.\spel@format}{#2}}%
\spel@idxwrite{part \thepart}{\spel@@optpart}%
\spel@chunkwrite{\spel@@optpart}{#2}%
}
@@ -170,7 +190,7 @@
\stepcounter{spel@spart}%
\setcounter{spel@chunk}{0}% need this because counter resetting fails
\spel@@spart{%
- \href{run:\audiodir/\spel@@optpart star-\thespel@spart.\spel@format}{#1}}%
+ \href{\linksdir/\spel@@optpart star-\thespel@spart.\spel@format}{#1}}%
\spel@idxwrite{part}{\spel@@optpart star-\thespel@spart}%
\spel@chunkwrite{\spel@@optpart star-\thespel@spart}{#1}%
}
@@ -181,7 +201,7 @@
\def\@chapter[#1]#2{%
\setcounter{spel@chunk}{0}% need this because counter resetting fails
\spel@@chapter[#1]{%
- \href{run:\audiodir/\spel@@optpart\thechapter.\spel@format}{#2}}%
+ \href{\linksdir/\spel@@optpart\thechapter.\spel@format}{#2}}%
\spel@idxwrite{chapter \thechapter}{\spel@@optpart\thechapter}%
\spel@chunkwrite{\spel@@optpart\thechapter}{#2}%
}
@@ -194,7 +214,7 @@
\stepcounter{spel@schapter}%
\setcounter{spel@chunk}{0}% need this because counter resetting fails
\spel@@schapter{%
- \href{run:\audiodir/\spel@@optpart star-\thespel@schapter.\spel@format}{#1}}%
+ \href{\linksdir/\spel@@optpart star-\thespel@schapter.\spel@format}{#1}}%
\spel@idxwrite{chapter}{\spel@@optpart star-\thespel@schapter}%
\spel@chunkwrite{\spel@@optpart star-\thespel@schapter}{#1}%
}
@@ -209,8 +229,8 @@
\fi%
\setcounter{spel@chunk}{0}% need this because counter resetting fails
\spel@@sect{#1}{#2}{#3}{#4}{#5}{#6}[#7]{%
- \href{run:\audiodir/\spel@@optpart\thesubparagraph.\spel@format}{#8}\hfill%
- \href{run:\audiodir/\spel@@optpart\thesubparagraph.m3u}{\textcolor{black!25}{$\triangleright$}}}%
+ \href{\linksdir/\spel@@optpart\thesubparagraph.\spel@format}{#8}\hfill%
+ \href{\linksdir/\spel@@optpart\thesubparagraph.m3u}{\textcolor{spel@color@right}{$\triangleright$}}}%
\def\spel@@label{\ifnum #2>\c@secnumdepth\else#1 \csname the#1\endcsname\fi}
\spel@idxwrite{\spel@@label}{\spel@@optpart\thesubparagraph}%
\spel@chunkwrite{\spel@@optpart\thesubparagraph}{#8}%
@@ -222,7 +242,7 @@
\stepcounter{spel@ssect}%
%\setcounter{spel@chunk}{0}% need this because counter resetting fails
\spel@@ssect{#1}{#2}{#3}{#4}{%
- \href{run:\audiodir/\spel@@optpart\thesubparagraph-star-\thespel@ssect.\spel@format}%
+ \href{\linksdir/\spel@@optpart\thesubparagraph-star-\thespel@ssect.\spel@format}%
{#5}}%
\spel@idxwrite{section}{\spel@@optpart\thesubparagraph-star-\thespel@ssect}%
\spel@chunkwrite{\spel@@optpart\thesubparagraph-star-\thespel@ssect}{#5}%
@@ -234,7 +254,7 @@
\stepcounter{spel@footnote}%
\settowidth\spel@mptboxwidth{\usebox\spel@mptbox}%
\spel@@fntext{%
- \hspace*{-\spel@mptboxwidth}\href{run:\audiodir/footnote-\thespel@footnote.\spel@format}{\usebox\spel@mptbox}#1}%
+ \hspace*{-\spel@mptboxwidth}\href{\linksdir/footnote-\thespel@footnote.\spel@format}{\usebox\spel@mptbox}#1}%
\spel@idxwrite{footnote}{footnote-\thespel@footnote}%
\spel@chunkwrite{footnote-\thespel@footnote}{#1}%
}
@@ -251,25 +271,25 @@
\settowidth\spel@mptboxwidth{\usebox\spel@mptbox}%
\spel@idxwrite{item}{\spel@@optpart\thesubparagraph-\thespel@chunk}%
\spel@chunkwrite{\spel@@optpart\thesubparagraph-\thespel@chunk}{#1}%
- \item \hspace*{-\spel@mptboxwidth}\href{run:\audiodir/\spel@@optpart\thesubparagraph-\thespel@chunk.\spel@format}{\usebox\spel@mptbox}#1}
+ \item \hspace*{-\spel@mptboxwidth}\href{\linksdir/\spel@@optpart\thesubparagraph-\thespel@chunk.\spel@format}{\usebox\spel@mptbox}#1}
\def\spelitem@inttwo#1#2{%
\stepcounter{spel@chunk}%
\settowidth\spel@mptboxwidth{\usebox\spel@mptbox}%
\spel@idxwrite{item}{\spel@@optpart\thesubparagraph-\thespel@chunk}%
\spel@chunkwrite{\spel@@optpart\thesubparagraph-\thespel@chunk}{#1 . #2}%
-\item[#1] \hspace*{-\spel@mptboxwidth}\href{run:\audiodir/\spel@@optpart\thesubparagraph-\thespel@chunk.\spel@format}{\usebox\spel@mptbox}#2}
+\item[#1] \hspace*{-\spel@mptboxwidth}\href{\linksdir/\spel@@optpart\thesubparagraph-\thespel@chunk.\spel@format}{\usebox\spel@mptbox}#2}
\ifspel@disabled\else
\let\spel@@caption\caption
\renewcommand\caption[2][]{%
\stepcounter{spel@chunk}%
\spel@idxwrite{caption}{\spel@@optpart\thesubparagraph-\thespel@chunk}%
\spel@chunkwrite{\spel@@optpart\thesubparagraph-\thespel@chunk}{#2}%
- \spel@@caption[#1]{\protect\href{run:\audiodir/\spel@@optpart\thesubparagraph-\thespel@chunk.\spel@format}{#2}}
+ \spel@@caption[#1]{\protect\href{\linksdir/\spel@@optpart\thesubparagraph-\thespel@chunk.\spel@format}{#2}}
}
\fi
\newlength\spel@mptboxwidth
\newsavebox\spel@mptbox
-\savebox\spel@mptbox{\textcolor{black!25}{$\qquad$}}
+\savebox\spel@mptbox{\textcolor{spel@color@left}{\quad\strut\tiny\raisebox{0.4ex}{$\triangleright$}\,}}
\newif\ifspel@chunkarealink
\define@key{spelchunk}{arealink}[]{\spel@chunkarealinktrue}
\ifspel@disabled\def\spelchunk{}\else
@@ -284,10 +304,10 @@
\end{VerbatimOut}%
\catcode`\^^M=5\relax%
\ifspel@chunkarealink%
- \href{run:\audiodir/\spel@@optpart\thesubparagraph-\thespel@chunk.\spel@format}{\input{./\chunkdir/\spel@@optpart\thesubparagraph-\thespel@chunk}}%
+ \href{\linksdir/\spel@@optpart\thesubparagraph-\thespel@chunk.\spel@format}{\input{./\chunkdir/\spel@@optpart\thesubparagraph-\thespel@chunk}}%
\else%
\settowidth\spel@mptboxwidth{\usebox\spel@mptbox}%
- \hspace*{-\spel@mptboxwidth}\href{run:\audiodir/\spel@@optpart\thesubparagraph-\thespel@chunk.\spel@format}{\usebox\spel@mptbox}\input{./\chunkdir/\spel@@optpart\thesubparagraph-\thespel@chunk}%
+ \hspace*{-\spel@mptboxwidth}\href{\linksdir/\spel@@optpart\thesubparagraph-\thespel@chunk.\spel@format}{\usebox\spel@mptbox}\input{./\chunkdir/\spel@@optpart\thesubparagraph-\thespel@chunk}%
\fi%
\spel@chunkarealinkfalse%
}%
@@ -296,6 +316,44 @@
\def\spelchunk@int{%
\VerbatimEnvironment
\begin{VerbatimOut}{\chunkdir/\spel@@optpart\thesubparagraph-\thespel@chunk.tex}}
+\ExplSyntaxOn
+\NewDocumentCommand{\spelchunkatom}{O{}m}{
+ \stepcounter{spel@chunk}%
+ \spel@idxwrite{chunk}{\spel@@optpart\thesubparagraph-\thespel@chunk}%
+ \setkeys{spelchunk}{#1}
+ \scantokens{
+ \makeatletter
+ \begin{spelverbatimwrite}{\chunkdir/\spel@@optpart\thesubparagraph-\thespel@chunk.tex}
+ #2
+ \end{spelverbatimwrite}
+ \makeatother
+ }
+ \ifspel@chunkarealink%
+ \href{\linksdir/\spel@@optpart\thesubparagraph-\thespel@chunk.\spel@format}{\input{./\chunkdir/\spel@@optpart\thesubparagraph-\thespel@chunk}}%
+ \else%
+ \settowidth\spel@mptboxwidth{\usebox\spel@mptbox}%
+ \hspace*{-\spel@mptboxwidth}\href{\linksdir/\spel@@optpart\thesubparagraph-\thespel@chunk.\spel@format}{\usebox\spel@mptbox}\input{./\chunkdir/\spel@@optpart\thesubparagraph-\thespel@chunk}%
+ \fi%
+ \spel@chunkarealinkfalse%
+}
+
+\def\spelverbatimwrite#1{%
+ \@bsphack
+ \openoutputfile{#1}{chunk}%
+ \def\verbatim@processline{\addtostream{chunk}{\the\verbatim@line}}%
+ \let\do\@makeother\dospecials
+ \catcode`\^^M\active \catcode`\^^I=12
+ \verbatim@start}%
+\def\endspelverbatimwrite{%
+ \closeoutputstream{chunk}%
+ \@esphack%
+}
+\ifspel@disabled
+ \newcommand\<<<[2][]{#2}
+\else
+ \def\<<<{\spelchunkatom}
+\fi
+\ExplSyntaxOff
\def\spelchunkad{%
\catcode`\^^M=\active
\@ifnextchar[{\catcode`\^^M=5\spelchunk@opt}{\catcode`\^^M=5\spelchunk@int}}
@@ -332,6 +390,8 @@
\spelmacpp{textit}[1]{keep}
\spelmacpp{texttt}[1]{keep}
\spelmacpp{textbf}[1]{keep}
+\spelmacpp{mathbb}[1]{keep}
+\spelmacpp{mathcal}[1]{keep}
\spelmacpp{quad}{}
\spelmacpp{qquad}{}
\spelmacpp{displaystyle}{}
@@ -354,7 +414,6 @@
}
\ExplSyntaxOff
\spelmacad{spelatex}{spee-lay-tech}
-\spelmacad{spelbox}{spel-box}
\spelmacad{spelpl}{spel wizzard dot pl}
\spelmacad{LaTeX}{lay-tech}
\spelmacad{TeX}{tech}
diff --git a/Master/texmf-dist/tex/latex/stickstoo/ly1minstickstootext.fd b/Master/texmf-dist/tex/latex/stickstoo/ly1minstickstootext.fd
new file mode 100644
index 00000000000..72dd4632717
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/stickstoo/ly1minstickstootext.fd
@@ -0,0 +1,84 @@
+%% Generated by msharpe on 2022/01/23
+%%
+\ProvidesFile{ly1minstickstootext.fd}
+ [2022/01/23 (msharpe) Font definitions for LY1/minstickstootext.]
+
+\expandafter\ifx\csname ntxmath@scaled\endcsname\relax
+ \let\ntxmath@scaled\@empty
+\fi
+
+\DeclareFontFamily{LY1}{minstickstootext}{}
+
+\DeclareFontShape{LY1}{minstickstootext}{m}{scit}{
+ <-> \ntxmath@scaled SticksTooText-Italic-tlf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{minstickstootext}{m}{it}{
+ <-> \ntxmath@scaled SticksTooText-Italic-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{minstickstootext}{m}{n}{
+ <-> \ntxmath@scaled SticksTooText-Regular-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{minstickstootext}{m}{sc}{
+ <-> \ntxmath@scaled SticksTooText-Regular-tlf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{minstickstootext}{m}{sl}{
+ <-> ssub * minstickstootext/m/it
+}{}
+
+\DeclareFontShape{LY1}{minstickstootext}{m}{scsl}{
+ <-> ssub * minstickstootext/m/scit
+}{}
+
+\DeclareFontShape{LY1}{minstickstootext}{b}{scit}{
+ <-> \ntxmath@scaled SticksTooText-BoldItalic-tlf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{minstickstootext}{b}{it}{
+ <-> \ntxmath@scaled SticksTooText-BoldItalic-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{minstickstootext}{b}{n}{
+ <-> \ntxmath@scaled SticksTooText-Bold-tlf-ly1
+}{}
+
+\DeclareFontShape{LY1}{minstickstootext}{b}{sc}{
+ <-> \ntxmath@scaled SticksTooText-Bold-tlf-sc-ly1
+}{}
+
+\DeclareFontShape{LY1}{minstickstootext}{b}{sl}{
+ <-> ssub * minstickstootext/b/it
+}{}
+
+\DeclareFontShape{LY1}{minstickstootext}{b}{scsl}{
+ <-> ssub * minstickstootext/b/scit
+}{}
+
+\DeclareFontShape{LY1}{minstickstootext}{bx}{scit}{
+ <-> ssub * minstickstootext/b/scit
+}{}
+
+\DeclareFontShape{LY1}{minstickstootext}{bx}{scsl}{
+ <-> ssub * minstickstootext/b/scsl
+}{}
+
+\DeclareFontShape{LY1}{minstickstootext}{bx}{it}{
+ <-> ssub * minstickstootext/b/it
+}{}
+
+\DeclareFontShape{LY1}{minstickstootext}{bx}{n}{
+ <-> ssub * minstickstootext/b/n
+}{}
+
+\DeclareFontShape{LY1}{minstickstootext}{bx}{sc}{
+ <-> ssub * minstickstootext/b/sc
+}{}
+
+\DeclareFontShape{LY1}{minstickstootext}{bx}{sl}{
+ <-> ssub * minstickstootext/b/sl
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/stickstoo/ot1minstickstootext.fd b/Master/texmf-dist/tex/latex/stickstoo/ot1minstickstootext.fd
new file mode 100644
index 00000000000..e3a19f3615c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/stickstoo/ot1minstickstootext.fd
@@ -0,0 +1,84 @@
+%% Generated by msharpe on 2022/01/23
+%%
+\ProvidesFile{ot1minstickstootext.fd}
+ [2022/01/23 (msharpe) Font definitions for OT1/minstickstootext.]
+
+\expandafter\ifx\csname ntxmath@scaled\endcsname\relax
+ \let\ntxmath@scaled\@empty
+\fi
+
+\DeclareFontFamily{OT1}{minstickstootext}{}
+
+\DeclareFontShape{OT1}{minstickstootext}{m}{sc}{
+ <-> \ntxmath@scaled SticksTooText-Regular-tlf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{minstickstootext}{m}{scit}{
+ <-> \ntxmath@scaled SticksTooText-Italic-tlf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{minstickstootext}{m}{it}{
+ <-> \ntxmath@scaled SticksTooText-Italic-tlf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{minstickstootext}{m}{n}{
+ <-> \ntxmath@scaled SticksTooText-Regular-tlf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{minstickstootext}{m}{sl}{
+ <-> ssub * minstickstootext/m/it
+}{}
+
+\DeclareFontShape{OT1}{minstickstootext}{m}{scsl}{
+ <-> ssub * minstickstootext/m/scit
+}{}
+
+\DeclareFontShape{OT1}{minstickstootext}{b}{sc}{
+ <-> \ntxmath@scaled SticksTooText-Bold-tlf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{minstickstootext}{b}{n}{
+ <-> \ntxmath@scaled SticksTooText-Bold-tlf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{minstickstootext}{b}{it}{
+ <-> \ntxmath@scaled SticksTooText-BoldItalic-tlf-ot1G
+}{}
+
+\DeclareFontShape{OT1}{minstickstootext}{b}{scit}{
+ <-> \ntxmath@scaled SticksTooText-BoldItalic-tlf-sc-ot1
+}{}
+
+\DeclareFontShape{OT1}{minstickstootext}{b}{sl}{
+ <-> ssub * minstickstootext/b/it
+}{}
+
+\DeclareFontShape{OT1}{minstickstootext}{b}{scsl}{
+ <-> ssub * minstickstootext/b/scit
+}{}
+
+\DeclareFontShape{OT1}{minstickstootext}{bx}{sl}{
+ <-> ssub * minstickstootext/b/sl
+}{}
+
+\DeclareFontShape{OT1}{minstickstootext}{bx}{sc}{
+ <-> ssub * minstickstootext/b/sc
+}{}
+
+\DeclareFontShape{OT1}{minstickstootext}{bx}{scit}{
+ <-> ssub * minstickstootext/b/scit
+}{}
+
+\DeclareFontShape{OT1}{minstickstootext}{bx}{n}{
+ <-> ssub * minstickstootext/b/n
+}{}
+
+\DeclareFontShape{OT1}{minstickstootext}{bx}{it}{
+ <-> ssub * minstickstootext/b/it
+}{}
+
+\DeclareFontShape{OT1}{minstickstootext}{bx}{scsl}{
+ <-> ssub * minstickstootext/b/scsl
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/stickstoo/stickstootext.sty b/Master/texmf-dist/tex/latex/stickstoo/stickstootext.sty
index f9d1351ede9..6a5af23b517 100644
--- a/Master/texmf-dist/tex/latex/stickstoo/stickstootext.sty
+++ b/Master/texmf-dist/tex/latex/stickstoo/stickstootext.sty
@@ -1,7 +1,7 @@
%%
\NeedsTeXFormat{LaTeX2e}
-\def\fileversion{1.035}
-\def\filedate{2021/10/17}
+\def\fileversion{1.036}
+\def\filedate{2024/09/22}
\ProvidesPackage{stickstootext}
[\filedate\space v\fileversion]
\message{`SticksTooText' v\fileversion, \filedate\space Text macros taking advantage of the STIXTwoText fonts (msharpe)}
@@ -44,10 +44,10 @@
}{}
\IfFileExists{xkeyval.sty}{
- \newcommand*{\SticksToo@scale}{1}
+ \newcommand*{\SticksTooText@scale}{1}
\RequirePackage{xkeyval}
- \DeclareOptionX{scale}{\renewcommand*{\SticksToo@scale}{##1}}
- \DeclareOptionX{scaled}{\renewcommand*{\SticksToo@scale}{##1}}
+ \DeclareOptionX{scale}{\renewcommand*{\SticksTooText@scale}{##1}}
+ \DeclareOptionX{scaled}{\renewcommand*{\SticksTooText@scale}{##1}}
}{
\let\DeclareOptionX\DeclareOption
\let\ExecuteOptionsX\ExecuteOptions
diff --git a/Master/texmf-dist/tex/latex/stickstoo/t1minstickstootext.fd b/Master/texmf-dist/tex/latex/stickstoo/t1minstickstootext.fd
new file mode 100644
index 00000000000..e737beb61cb
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/stickstoo/t1minstickstootext.fd
@@ -0,0 +1,90 @@
+%% Generated by msharpe on 2022/01/23
+%%
+\ProvidesFile{t1minstickstootext.fd}
+ [2022/01/23 (msharpe) Font definitions for T1/minstickstootext.]
+
+\expandafter\ifx\csname ntxmath@scaled\endcsname\relax
+ \let\ntxmath@scaled\@empty
+\fi
+
+%\expandafter\ifx\csname SticksTooText@scale\endcsname\relax
+% \let\ntxmath@scaled\@empty
+%\else
+% \edef\ntxmath@scaled{s*[\csname SticksTooText@scale\endcsname]}%
+%\fi
+
+\DeclareFontFamily{T1}{minstickstootext}{}
+
+\DeclareFontShape{T1}{minstickstootext}{b}{scit}{
+ <-> \ntxmath@scaled SticksTooText-BoldItalic-tlf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{minstickstootext}{b}{n}{
+ <-> \ntxmath@scaled SticksTooText-Bold-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{minstickstootext}{b}{sc}{
+ <-> \ntxmath@scaled SticksTooText-Bold-tlf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{minstickstootext}{b}{it}{
+ <-> \ntxmath@scaled SticksTooText-BoldItalic-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{minstickstootext}{b}{sl}{
+ <-> ssub * minstickstootext/b/it
+}{}
+
+\DeclareFontShape{T1}{minstickstootext}{b}{scsl}{
+ <-> ssub * minstickstootext/b/scit
+}{}
+
+\DeclareFontShape{T1}{minstickstootext}{m}{sc}{
+ <-> \ntxmath@scaled SticksTooText-Regular-tlf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{minstickstootext}{m}{it}{
+ <-> \ntxmath@scaled SticksTooText-Italic-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{minstickstootext}{m}{n}{
+ <-> \ntxmath@scaled SticksTooText-Regular-tlf-t1
+}{}
+
+\DeclareFontShape{T1}{minstickstootext}{m}{scit}{
+ <-> \ntxmath@scaled SticksTooText-Italic-tlf-sc-t1
+}{}
+
+\DeclareFontShape{T1}{minstickstootext}{m}{sl}{
+ <-> \ntxmath@scaled SticksTooText-Italic-tlf-th-t1
+}{}
+
+\DeclareFontShape{T1}{minstickstootext}{m}{scsl}{
+ <-> ssub * minstickstootext/m/scit
+}{}
+
+\DeclareFontShape{T1}{minstickstootext}{bx}{it}{
+ <-> ssub * minstickstootext/b/it
+}{}
+
+\DeclareFontShape{T1}{minstickstootext}{bx}{scsl}{
+ <-> ssub * minstickstootext/b/scsl
+}{}
+
+\DeclareFontShape{T1}{minstickstootext}{bx}{sc}{
+ <-> ssub * minstickstootext/b/sc
+}{}
+
+\DeclareFontShape{T1}{minstickstootext}{bx}{scit}{
+ <-> ssub * minstickstootext/b/scit
+}{}
+
+\DeclareFontShape{T1}{minstickstootext}{bx}{sl}{
+ <-> ssub * minstickstootext/b/sl
+}{}
+
+\DeclareFontShape{T1}{minstickstootext}{bx}{n}{
+ <-> ssub * minstickstootext/b/n
+}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/suanpan-l3/suanpan-l3.sty b/Master/texmf-dist/tex/latex/suanpan-l3/suanpan-l3.sty
new file mode 100644
index 00000000000..ac30c79d740
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/suanpan-l3/suanpan-l3.sty
@@ -0,0 +1,1401 @@
+%%% ----------------------------------------------------------------------------
+%%% suanpan: draw suanpan(abacus) with LaTeX3
+%%% Author : Nan Geng <nangeng@nwafu.edu.cn>
+%%% Repository: https://gitee.com/nwafu_nan/suan-span
+%%% License : The LaTeX Project Public License 1.3c
+%%% ----------------------------------------------------------------------------
+
+\NeedsTeXFormat{LaTeX2e}[2020/10/01]
+\RequirePackage{expl3}
+% \ProvidesExplPackage{suanpan}{2024-08-20}{v1.0.0} % 初稿
+% \ProvidesExplPackage{suanpan}{2024-08-28}{v1.1.0} % 优化(统一尺寸计算,添加空白占位)
+% \ProvidesExplPackage{suanpan-l3}{2024-08-30}{v1.1.1} % 更名为suanpan-l3
+% \ProvidesExplPackage{suanpan-l3}{2024-08-31}{v1.1.2} % 添加empty不绘制空档选项
+% \ProvidesExplPackage{suanpan-l3}{2024-09-01}{v1.1.3} % 添加bid批处理及绘制颜色选项
+% % 将算珠与档杆绘制改为TikZ
+% \ProvidesExplPackage{suanpan-l3}{2024-09-04}{v1.2.0} % 添加\lab横梁文字标记命令
+% \ProvidesExplPackage{suanpan-l3}{2024-09-05}{v1.2.1} % 将草稿模式所有算珠改为圆冒
+% % 直线并取消所有高光特效
+\ProvidesExplPackage{suanpan-l3}{2024-09-07}{v1.2.2} % 为珠高、珠宽、档杆宽度和
+ % 边框宽度添加设置选项
+ {draw suanpan(abacus) with LaTeX3}
+
+\RequirePackage{l3keys2e}
+\RequirePackage{xparse}
+\RequirePackage{l3draw}
+
+\RequirePackage {tikz}
+
+\cs_new:Npn \__suanpan_error:n { \msg_error:nn { suanpan(abacus) } }
+
+% 盒子容器总高度计算函数
+\cs_new_nopar:Npn \__suanpan_coffin_ht_plus_dp:N #1
+ {
+ \coffin_ht:N #1 + \coffin_dp:N #1
+ }
+
+% =============颜色处理函数=============
+% 填充色辅助函数
+\cs_new_nopar:Nn \__suanpan_aux_color_boxfill:
+ { }
+
+% 颜色命名函数
+% #1 颜色名称
+% #2 颜色表达式
+\cs_set_nopar:Npn \__suanpan_color_select:nn #1#2
+ {
+ \colorlet { #1 } { #2 }
+ }
+\cs_generate_variant:Nn \__suanpan_color_select:nn {nx}
+
+% 颜色命名函数
+% #1 颜色名称
+% #2 颜色空间
+% #3 颜色分量值
+\cs_set_nopar:Npn \__suanpan_color_select:nnn #1#2#3
+ {
+ \definecolor { #1 } { #2 } { #3 }
+ }
+\cs_generate_variant:Nn \__suanpan_color_select:nnn {nnx}
+
+% 定义变量
+% 算盘基础尺寸
+\dim_new:N \l__suanpan_bid_h_dim
+\dim_new:N \l__suanpan_bid_d_dim
+\dim_new:N \l__suanpan_rod_d_dim
+\dim_new:N \l__suanpan_frame_b_dim
+\dim_new:N \l__suanpan_bid_sep_dim
+\dim_new:N \l__suanpan_rod_sep_dim
+
+% 算盘基础尺寸初值(参考 QBT1747-1993 算盘标准)
+\dim_set:Nn \l__suanpan_bid_h_dim { 12mm }
+\dim_set:Nn \l__suanpan_bid_d_dim { 23mm }
+\dim_set:Nn \l__suanpan_rod_d_dim { 7mm }
+\dim_set:Nn \l__suanpan_frame_b_dim { 13mm }
+\dim_set:Nn \l__suanpan_bid_sep_dim { 1.8pt }
+\dim_set:Nn \l__suanpan_rod_sep_dim { 3.0pt }
+
+% 半长度
+\dim_new:N \l__suanpan_bid_h_half_dim
+\dim_new:N \l__suanpan_bid_d_half_dim
+\dim_new:N \l__suanpan_rod_d_half_dim
+\dim_new:N \l__suanpan_frame_b_half_dim
+
+% 上珠偏移
+\dim_new:N \l__suanpan_bid_upper_offset_dim
+% 下珠偏移
+\dim_new:N \l__suanpan_bid_lower_offset_dim
+% 上档杆长度
+\dim_new:N \l__suanpan_rod_upper_h_dim
+% 下档杆长度
+\dim_new:N \l__suanpan_rod_lower_h_dim
+% 上档杆偏移
+\dim_new:N \l__suanpan_rod_upper_offset_dim
+% 下档杆偏移
+\dim_new:N \l__suanpan_rod_lower_offset_dim
+% 上档杆位置
+\dim_new:N \l__suanpan_rod_upper_dim
+% 下档杆位置
+\dim_new:N \l__suanpan_rod_lower_dim
+% 上边框内线偏移
+\dim_new:N \l__suanpan_frame_upper_inner_offset_dim
+% 下边框内线偏移
+\dim_new:N \l__suanpan_frame_lower_inner_offset_dim
+% 上边框外线偏移
+\dim_new:N \l__suanpan_frame_upper_outer_offset_dim
+% 下边框外线偏移
+\dim_new:N \l__suanpan_frame_lower_outer_offset_dim
+% 算珠上边缘
+\dim_new:N \l__suanpan_bid_upper_dim
+% 算珠下边缘
+\dim_new:N \l__suanpan_bid_lower_dim
+% 算珠绘制高度
+\dim_new:N \l__suanpan_bid_draw_h_dim
+% 算珠绘制半高度
+\dim_new:N \l__suanpan_bid_draw_h_half_dim
+% 算珠圆角半径
+\dim_new:N \l__suanpan_bid_arc_dim
+% 横梁计位点半径
+\dim_new:N \l__suanpan_frame_unit_r_dim
+% 边框外线半宽度
+\dim_new:N \l__suanpan_frame_outer_half_dim
+% 档杆总成宽度
+\dim_new:N \l__suanpan_support_d_dim
+% 档杆总成半宽度
+\dim_new:N \l__suanpan_support_d_half_dim
+% 档杆总成组装垂直偏移
+\dim_new:N \l__suanpan_support_y_offset_dim
+
+% 上边框内线位置
+\dim_new:N \l__suanpan_frame_inner_upper_dim
+% 下边框内线位置
+\dim_new:N \l__suanpan_frame_inner_lower_dim
+
+% 边框内线高度
+\dim_new:N \l__suanpan_frame_inner_h_dim
+% 边框外线高度
+\dim_new:N \l__suanpan_frame_outer_h_dim
+
+\dim_new:N \l__suanpan_frame_inner_linewidth_dim
+\dim_new:N \l__suanpan_frame_outer_linewidth_dim
+\dim_new:N \l__suanpan_rod_linewidth_dim
+\dim_new:N \l__suanpan_bid_linewidth_dim
+
+% 状态变量
+\bool_new:N \l__suanpan_support_frame_bool
+\bool_set_true:N \l__suanpan_support_frame_bool
+\bool_new:N \l__suanpan_support_unit_bool
+\bool_set_false:N \l__suanpan_support_unit_bool
+\bool_new:N \l__suanpan_draft_bool
+\bool_new:N \l__suanpan_empty_rod_bool
+
+% 容器(盒子)
+\coffin_new:N \l__suanpan_inner_bid_coffin
+\coffin_new:N \l__suanpan_outer_bid_coffin
+\coffin_new:N \l__suanpan_float_bid_coffin
+\coffin_new:N \l__suanpan_support_coffin
+\coffin_new:N \l_tmpc_coffin
+\coffin_new:N \l_tmpd_coffin
+
+% 凭据表(Token)
+\tl_new:N \l__suanpan_bid_draw_color_tl
+\tl_new:N \l__suanpan_bid_fill_color_tl
+\tl_new:N \l__suanpan_scale_tl
+\tl_new:N \l__suanpan_mark_font_tl
+
+% 档位最大值
+\int_new:N \l__suanpan_rod_max_int
+\int_zero:N \l__suanpan_rod_max_int
+
+% 档位算珠位置列表
+\clist_new:N \l__suanpan_bids_pos_clist
+
+% 档位数字与算珠位置对照属性表常量(内珠和外珠)
+% {x, y}==>x: 算珠位置(1-11, 1-7---下珠,8-10---上珠,11---悬珠)
+% y: 算珠类型(0---外珠,1---内珠)
+\prop_const_from_keyval:Nn \l__suanpan_rods_val_prop
+ {
+ 0 = {{1, 0}, {2, 0}, {3, 0}, {4, 0}, {5, 0}, {9, 0}, {10, 0}},
+ 1 = {{1, 0}, {2, 0}, {3, 0}, {4, 0}, {7, 1}, {9, 0}, {10, 0}},
+ 2 = {{1, 0}, {2, 0}, {3, 0}, {6, 1}, {7, 1}, {9, 0}, {10, 0}},
+ 3 = {{1, 0}, {2, 0}, {5, 1}, {6, 1}, {7, 1}, {9, 0}, {10, 0}},
+ 4 = {{1, 0}, {4, 1}, {5, 1}, {6, 1}, {7, 1}, {9, 0}, {10, 0}},
+ 5 = {{1, 0}, {2, 0}, {3, 0}, {4, 0}, {5, 0}, {8, 1}, {10, 0}},
+ 6 = {{1, 0}, {2, 0}, {3, 0}, {4, 0}, {7, 1}, {8, 1}, {10, 0}},
+ 7 = {{1, 0}, {2, 0}, {3, 0}, {6, 1}, {7, 1}, {8, 1}, {10, 0}},
+ 8 = {{1, 0}, {2, 0}, {5, 1}, {6, 1}, {7, 1}, {8, 1}, {10, 0}},
+ 9 = {{1, 0}, {4, 1}, {5, 1}, {6, 1}, {7, 1}, {8, 1}, {10, 0}},
+ 10 = {{3, 1}, {4, 1}, {5, 1}, {6, 1}, {7, 1}, {8, 1}, {10, 0}},
+ 11 = {{1, 0}, {2, 0}, {3, 0}, {4, 0}, {7, 1}, {8, 1}, {9 , 1}},
+ 12 = {{1, 0}, {2, 0}, {3, 0}, {6, 1}, {7, 1}, {8, 1}, {9 , 1}},
+ 13 = {{1, 0}, {2, 0}, {5, 1}, {6, 1}, {7, 1}, {8, 1}, {9 , 1}},
+ 14 = {{1, 0}, {4, 1}, {5, 1}, {6, 1}, {7, 1}, {8, 1}, {9 , 1}},
+ 15 = {{3, 1}, {4, 1}, {5, 1}, {6, 1}, {7, 1}, {8, 1}, {9 , 1}},
+ 16 = {{1, 0}, {2, 0}, {3, 0}, {4, 0}, {7, 1}, {8, 1}, {11, 1}},
+ 17 = {{1, 0}, {2, 0}, {3, 0}, {6, 1}, {7, 1}, {8, 1}, {11, 1}},
+ 18 = {{1, 0}, {2, 0}, {5, 1}, {6, 1}, {7, 1}, {8, 1}, {11, 1}},
+ 19 = {{1, 0}, {4, 1}, {5, 1}, {6, 1}, {7, 1}, {8, 1}, {11, 1}},
+ 20 = {{3, 1}, {4, 1}, {5, 1}, {6, 1}, {7, 1}, {8, 1}, {11, 1}}
+ }
+
+% 尺寸计算函数
+\cs_new:Nn \__suanpan_dim_calc:
+ {
+ % 基础尺寸半长度
+ \dim_set:Nn \l__suanpan_bid_h_half_dim { \l__suanpan_bid_h_dim / 2 }
+ \dim_set:Nn \l__suanpan_bid_d_half_dim { \l__suanpan_bid_d_dim / 2 }
+ \dim_set:Nn \l__suanpan_rod_d_half_dim { \l__suanpan_rod_d_dim / 2 }
+ \dim_set:Nn \l__suanpan_frame_b_half_dim { \l__suanpan_frame_b_dim / 2 }
+ % 上珠偏移(8号算珠)
+ \dim_set:Nn \l__suanpan_bid_upper_offset_dim
+ { \l__suanpan_frame_b_half_dim + \l__suanpan_bid_h_half_dim }
+ % 下珠偏移(1号算珠)
+ \dim_set:Nn \l__suanpan_bid_lower_offset_dim
+ { -\l__suanpan_frame_b_half_dim - \l__suanpan_bid_h_dim * 7 +
+ \l__suanpan_bid_h_half_dim }
+ % 上档杆长度
+ \dim_set:Nn \l__suanpan_rod_upper_h_dim { \l__suanpan_bid_h_dim * 3 }
+ % 下档杆长度
+ \dim_set:Nn \l__suanpan_rod_lower_h_dim { \l__suanpan_bid_h_dim * 7 }
+ % 上档杆偏移
+ \dim_set:Nn \l__suanpan_rod_upper_offset_dim { \l__suanpan_frame_b_half_dim }
+ % 下档杆偏移
+ \dim_set:Nn \l__suanpan_rod_lower_offset_dim
+ { -\l__suanpan_frame_b_half_dim - \l__suanpan_rod_lower_h_dim }
+ % 上档杆位置
+ \dim_set:Nn \l__suanpan_rod_upper_dim
+ { \l__suanpan_rod_upper_offset_dim + \l__suanpan_rod_upper_h_dim }
+ % 下档杆位置
+ \dim_set:Nn \l__suanpan_rod_lower_dim { -\l__suanpan_frame_b_half_dim }
+
+ % 上边框内线偏移
+ \dim_set:Nn \l__suanpan_frame_upper_inner_offset_dim
+ { \l__suanpan_frame_b_half_dim + \l__suanpan_rod_upper_h_dim }
+ % 下边框内线偏移
+ \dim_set:Nn \l__suanpan_frame_lower_inner_offset_dim
+ { -\l__suanpan_frame_b_half_dim - \l__suanpan_rod_lower_h_dim }
+ % 上边框外线偏移
+ \dim_set:Nn \l__suanpan_frame_upper_outer_offset_dim
+ { \l__suanpan_frame_b_dim + \l__suanpan_frame_b_half_dim +
+ \l__suanpan_rod_upper_h_dim }
+ % 下边框外线偏移
+ \dim_set:Nn \l__suanpan_frame_lower_outer_offset_dim
+ { -\l__suanpan_frame_b_dim - \l__suanpan_frame_b_half_dim -
+ \l__suanpan_rod_lower_h_dim }
+
+ % 算珠上边缘
+ \dim_set:Nn \l__suanpan_bid_upper_dim
+ { \l__suanpan_bid_h_half_dim - \l__suanpan_bid_sep_dim / 2 }
+ % 算珠上边缘
+ \dim_set:Nn \l__suanpan_bid_lower_dim
+ { -\l__suanpan_bid_h_half_dim + \l__suanpan_bid_sep_dim / 2 }
+ % 算珠绘制高度
+ \dim_set:Nn \l__suanpan_bid_draw_h_dim
+ { \l__suanpan_bid_upper_dim - \l__suanpan_bid_lower_dim }
+ % 算珠绘制半高度
+ \dim_set:Nn \l__suanpan_bid_draw_h_half_dim
+ { \l__suanpan_bid_draw_h_dim / 2 }
+ % 算珠圆角半径
+ \dim_set:Nn \l__suanpan_bid_arc_dim
+ { \l__suanpan_bid_draw_h_half_dim - 1pt}
+
+ % 横梁计位点半径
+ \dim_set:Nn \l__suanpan_frame_unit_r_dim { \l__suanpan_frame_b_dim / 4 }
+
+ % 边框外线半宽度
+ \dim_set:Nn \l__suanpan_frame_outer_half_dim
+ { \l__suanpan_frame_outer_linewidth_dim / 2 }
+
+ % 档杆总成宽度
+ \dim_set:Nn \l__suanpan_support_d_dim
+ { \l__suanpan_bid_d_dim + \l__suanpan_rod_sep_dim }
+ % 档杆总成半宽度
+ \dim_set:Nn \l__suanpan_support_d_half_dim
+ { \l__suanpan_bid_d_half_dim + \l__suanpan_rod_sep_dim / 2 }
+
+ % 档杆总成组装垂直偏移
+ \dim_set:Nn \l__suanpan_support_y_offset_dim
+ { ( \l__suanpan_frame_upper_outer_offset_dim -
+ \l__suanpan_frame_lower_outer_offset_dim +
+ \l__suanpan_frame_outer_linewidth_dim ) / 2 -
+ \l__suanpan_frame_upper_outer_offset_dim -
+ \l__suanpan_frame_outer_half_dim
+ }
+
+ % 上边框内线位置
+ \dim_set:Nn \l__suanpan_frame_inner_upper_dim
+ { \l__suanpan_frame_upper_inner_offset_dim +
+ \l__suanpan_frame_inner_linewidth_dim / 2 }
+ % 下边框内线位置
+ \dim_set:Nn \l__suanpan_frame_inner_lower_dim
+ { \l__suanpan_frame_lower_inner_offset_dim -
+ \l__suanpan_frame_inner_linewidth_dim / 2 }
+
+ % 边框内线高度
+ \dim_set:Nn \l__suanpan_frame_inner_h_dim
+ { \l__suanpan_rod_upper_h_dim +
+ \l__suanpan_rod_lower_h_dim +
+ \l__suanpan_frame_b_dim }
+ % 边框外线高度
+ \dim_set:Nn \l__suanpan_frame_outer_h_dim
+ { \l__suanpan_rod_upper_h_dim +
+ \l__suanpan_rod_lower_h_dim +
+ \l__suanpan_frame_b_dim * 3 }
+ }
+
+% 选项处理
+% ============宏包选项=================
+\keys_define:nn { suanpan }
+ {
+ % 草稿模式
+ draft .choice:,
+ draft / true .code:n = {%
+ \bool_set_true:N \l__suanpan_draft_bool
+ \bool_set_false:N \l__suanpan_empty_rod_bool
+ },
+ draft / false .code:n = {%
+ \bool_set_false:N \l__suanpan_draft_bool
+ \bool_set_true:N \l__suanpan_empty_rod_bool
+ },
+ draft .default:n = true,
+ draft .initial:n = false,
+
+ % 是否绘制档的数值为0的空档算珠
+ empty .choice:,
+ empty / true .code:n = { \bool_set_true:N \l__suanpan_empty_rod_bool },
+ empty / false .code:n = { \bool_set_false:N \l__suanpan_empty_rod_bool },
+ empty .default:n = true,
+ empty .initial:n = true,
+
+ unknown .code:n = { \msg_error:nn { suanpan } { unknown-option } }
+ }
+
+% key_value选项设计
+\keys_define:nn { suanpan }
+ {
+ % 绘图线宽
+ linewd .code:n = { % 算盘边框内线线宽
+ \dim_set:Nn \l__suanpan_frame_inner_linewidth_dim {#1}
+ % 算盘边框外线线宽
+ \dim_set:Nn \l__suanpan_frame_outer_linewidth_dim
+ {
+ \fp_to_dim:n
+ {
+ \fp_eval:n {%
+ \l__suanpan_frame_inner_linewidth_dim * 7.0 }
+ }
+ }
+ % 档杆线宽
+ \dim_set:Nn \l__suanpan_rod_linewidth_dim
+ {
+ \fp_to_dim:n
+ {
+ \fp_eval:n {%
+ \l__suanpan_frame_inner_linewidth_dim * 0.2 }
+ }
+ }
+ % 算珠线宽
+ \dim_set:Nn \l__suanpan_bid_linewidth_dim
+ {
+ \fp_to_dim:n
+ {
+ \fp_eval:n {%
+ \l__suanpan_frame_inner_linewidth_dim * 0.2 }
+ }
+ }
+ % 计算其它尺寸
+ \__suanpan_dim_calc:
+ },
+ linewd .initial:n = 2.0pt,
+
+ % 算珠高度
+ bidh .code:n = {%
+ \dim_set:Nn \l__suanpan_bid_h_dim { #1 }
+ % 计算其它尺寸
+ \__suanpan_dim_calc:
+ },
+ bidh .initial:n = 12mm,
+
+ % 算珠直径
+ bidd .code:n = {%
+ \dim_set:Nn \l__suanpan_bid_d_dim { #1 }
+ % 计算其它尺寸
+ \__suanpan_dim_calc:
+ },
+ bidd .initial:n = 23mm,
+
+ % 档杆直径(应小于算珠直径bidd)
+ rodd .code:n = {%
+ \dim_set:Nn \l__suanpan_rod_d_dim { #1 }
+ % 计算其它尺寸
+ \__suanpan_dim_calc:
+ },
+ rodd .initial:n = 7mm,
+
+ % 边框宽度
+ framew .code:n = {%
+ \dim_set:Nn \l__suanpan_frame_b_dim { #1 }
+ % 计算其它尺寸
+ \__suanpan_dim_calc:
+ },
+ framew .initial:n = 13mm,
+
+ % 档间间距
+ rodsep .code:n = {%
+ \dim_set:Nn \l__suanpan_rod_sep_dim { #1 }
+ % 计算其它尺寸
+ \__suanpan_dim_calc:
+ },
+ rodsep .initial:n = 3.0pt,
+
+ % 算珠间距
+ bidsep .code:n = {%
+ \dim_set:Nn \l__suanpan_bid_sep_dim { #1 }
+ % 计算其它尺寸
+ \__suanpan_dim_calc:
+ },
+ bidsep .initial:n = 0.0pt,
+
+ % 缩放参数
+ scale .tl_set:N = \l__suanpan_scale_tl,
+ scale .initial:n = 1.0,
+
+ % 边框绘图颜色
+ framedraw .code:n = { \__suanpan_color_select:nn { framecolor } {#1} },
+ framedraw .initial:n = black,
+ framedraw* .code:n = { \__suanpan_color_select:nnn { framecolor } #1 },
+
+ % 档杆绘图颜色
+ roddraw .code:n = { \__suanpan_color_select:nn { roddrawcolor } {#1} },
+ roddraw .initial:n = black,
+ roddraw* .code:n = { \__suanpan_color_select:nnn { roddrawcolor } #1 },
+ % 档杆填充颜色
+ rodfill .code:n = { \__suanpan_color_select:nn { rodfillcolor } {#1} },
+ rodfill .initial:n = black!20,
+ rodfill* .code:n = { \__suanpan_color_select:nnn { rodfillcolor } #1 },
+
+ % 外珠绘图颜色
+ outerdraw .code:n = { \__suanpan_color_select:nn { outerdrawcolor } {#1} },
+ outerdraw .initial:n = black,
+ outerdraw* .code:n = { \__suanpan_color_select:nnn { outerdrawcolor } #1 },
+ % 外珠填充颜色
+ outerfill .code:n = { \__suanpan_color_select:nn { outerfillcolor } {#1} },
+ outerfill .initial:n = black!40,
+ outerfill* .code:n = { \__suanpan_color_select:nnn { outerfillcolor } #1 },
+
+ % 内珠绘图颜色
+ innerdraw .code:n = { \__suanpan_color_select:nn { innerdrawcolor } {#1} },
+ innerdraw .initial:n = black,
+ innerdraw* .code:n = { \__suanpan_color_select:nnn { innerdrawcolor } #1 },
+ % 内珠填充颜色
+ innerfill .code:n = { \__suanpan_color_select:nn { innerfillcolor } {#1} },
+ innerfill .initial:n = black,
+ innerfill* .code:n = { \__suanpan_color_select:nnn { innerfillcolor } #1 },
+ innerfill .initial:n = black,
+
+ % 横梁标记字符格式
+ font .code:n = {%
+ \tl_gset:Nn \l__suanpan_mark_font_tl {#1}
+ },
+ font .initial:n = \bfseries\Large,
+
+ unknown .code:n = { \msg_error:nn { suanpan } { unknown-option } }
+ }
+
+% 出错输出信息
+\msg_new:nnn { suanpan } { unknown-option }
+ { package~ option~ "\l_keys_key_tl"~ is~ unknown. }
+
+% 选项默认值
+\keys_set:nn { suanpan }
+ {
+ linewd = 2.0pt,
+ rodsep = 3.0pt,
+ bidsep = 1.8pt,
+ scale = 1.0,
+ empty = true,
+ }
+
+% 将文档类选项传给suanpan
+\ProcessKeysOptions { suanpan }
+
+% 构建内珠(靠近横梁,参与计数)容器(盒子)
+\cs_new:Nn \__suanpan_inner_bid_construct:
+ {
+ \dim_set:Nn \l_tmpa_dim
+ { \l__suanpan_bid_d_half_dim - \l__suanpan_bid_draw_h_half_dim }
+
+ \tikzset{bid/.style = {% 内珠高光填充样式
+ inner~color = innerfillcolor!30,
+ outer~color = innerfillcolor,
+ draw = innerdrawcolor,
+ line~width = \l__suanpan_bid_linewidth_dim,
+ rounded~corners = \l__suanpan_bid_arc_dim,
+ },
+ draftline/.style = {% 内珠草稿模式绘制样式
+ draw = innerfillcolor,
+ line~cap = round,% 圆角线冒
+ line~width = \l__suanpan_bid_draw_h_dim,
+ }
+ }
+
+ \group_begin:
+ \hcoffin_gset:Nn \l__suanpan_inner_bid_coffin
+ {
+ % 判断是否为草稿模式
+ \bool_if:NTF \l__suanpan_draft_bool
+ {
+ \begin{tikzpicture}
+ \draw[draftline]
+ ( -\l_tmpa_dim, 0) -- ( \l_tmpa_dim, 0);
+ \end{tikzpicture}
+ }{
+ \begin{tikzpicture}
+ \shadedraw[bid]
+ ( -\l__suanpan_bid_d_half_dim, \l__suanpan_bid_lower_dim)
+ rectangle
+ ( \l__suanpan_bid_d_half_dim, \l__suanpan_bid_upper_dim);
+ \end{tikzpicture}
+ }
+ }
+ \group_end:
+ }
+
+% 构建外珠(远离横梁,不参与计数)容器(盒子)
+\cs_new:Nn \__suanpan_outer_bid_construct:
+ {
+ \dim_set:Nn \l_tmpa_dim
+ { \l__suanpan_bid_d_half_dim - \l__suanpan_bid_draw_h_half_dim }
+
+ \tikzset{bid/.style ={
+ inner~color = outerfillcolor!30,
+ outer~color = outerfillcolor,
+ draw = outerdrawcolor,
+ line~width = \l__suanpan_bid_linewidth_dim,
+ rounded~corners = \l__suanpan_bid_arc_dim,
+ },
+ draftline/.style = {
+ draw = outerfillcolor,
+ line~cap = round,
+ line~width = \l__suanpan_bid_draw_h_dim,
+ }
+ }
+
+ \group_begin:
+ \hcoffin_gset:Nn \l__suanpan_outer_bid_coffin
+ {
+ % 判断是否为草稿模式
+ \bool_if:NTF \l__suanpan_draft_bool
+ {
+ \begin{tikzpicture}
+ \draw[draftline]
+ ( -\l_tmpa_dim, 0) -- ( \l_tmpa_dim, 0 );
+ \end{tikzpicture}
+ }{
+ \begin{tikzpicture}
+ \shadedraw[bid]%
+ ( -\l__suanpan_bid_d_half_dim, \l__suanpan_bid_lower_dim)
+ rectangle
+ ( \l__suanpan_bid_d_half_dim, \l__suanpan_bid_upper_dim);
+ \end{tikzpicture}
+ }
+ }
+ \group_end:
+ }
+
+% 构建浮珠容器(盒子)
+% 浮珠指可以在算盘中任意布置的算珠
+% #1 绘制颜色
+% #2 填充颜色
+\cs_new:Npn \__suanpan_float_bid_construct:nn #1#2
+ {
+ \dim_set:Nn \l_tmpa_dim
+ { \l__suanpan_bid_d_half_dim - \l__suanpan_bid_draw_h_half_dim }
+
+ \tikzset{bid/.style ={
+ line~width = \l__suanpan_bid_linewidth_dim,
+ rounded~corners = \l__suanpan_bid_arc_dim,
+ },
+ draftline/.style = {
+ line~cap = round,
+ line~width = \l__suanpan_bid_draw_h_dim,
+ }
+ }
+
+ \group_begin:
+ \hcoffin_gset:Nn \l__suanpan_float_bid_coffin
+ {
+ % 判断是否为草稿模式
+ \bool_if:NTF \l__suanpan_draft_bool
+ {
+ \begin{tikzpicture}
+ \draw[draw=#2, draftline]
+ ( -\l_tmpa_dim, 0) -- ( \l_tmpa_dim, 0 );
+ \end{tikzpicture}
+ }{
+ \begin{tikzpicture}
+ \shadedraw[draw = #1,
+ inner~color=#2!30,
+ outer~color=#2,
+ bid]%
+ ( -\l__suanpan_bid_d_half_dim, \l__suanpan_bid_lower_dim)
+ rectangle
+ ( \l__suanpan_bid_d_half_dim, \l__suanpan_bid_upper_dim);
+ \end{tikzpicture}
+ }
+ }
+ \group_end:
+ }
+
+% 构建档杆容器(盒子)
+\cs_new:Nn \__suanpan_support_construct:
+ {
+ % TikZ绘图样式
+ \tikzset{%
+ rod/.style = {% 档杆
+ inner~color = rodfillcolor!30,
+ outer~color = rodfillcolor,
+ draw = roddrawcolor,
+ line~width = \l__suanpan_rod_linewidth_dim,
+ },
+ beam/.style = {% 横梁
+ bottom~color = framecolor!60,
+ top~color = framecolor!60,
+ middle~color = framecolor!5,
+ },
+ frame/.style = {% 上下梁
+ bottom~color = framecolor!95,
+ top~color = framecolor!95,
+ middle~color = framecolor!15,
+ },
+ rodline/.style = {% 档杆边线
+ draw = roddrawcolor,
+ line~width = \l__suanpan_rod_linewidth_dim,
+ },
+ frameinner/.style = {% 内边框线
+ draw = framecolor,
+ line~width = \l__suanpan_frame_inner_linewidth_dim,
+ },
+ frameouter/.style = {% 外边框线
+ draw = framecolor,
+ line~width = \l__suanpan_frame_outer_linewidth_dim,
+ },
+ }
+
+ \group_begin:
+ \hcoffin_gset:Nn \l__suanpan_support_coffin
+ {
+ % 判断是否为草稿模式
+ \bool_if:NTF \l__suanpan_draft_bool
+ {
+ \begin{tikzpicture}
+ % 绘制下杆
+ \draw[rodline]
+ ( -\l__suanpan_rod_d_half_dim, \l__suanpan_rod_lower_offset_dim )
+ rectangle
+ ( \l__suanpan_rod_d_half_dim, \l__suanpan_rod_lower_dim );
+ % 绘制上杆
+ \draw[rodline]
+ ( -\l__suanpan_rod_d_half_dim, \l__suanpan_rod_upper_offset_dim )
+ rectangle
+ ( \l__suanpan_rod_d_half_dim, \l__suanpan_rod_upper_dim );
+
+ % 绘制横梁
+ \draw[frameinner]
+ ( -\l__suanpan_support_d_half_dim, \l__suanpan_frame_b_half_dim )
+ --
+ ( \l__suanpan_support_d_half_dim, \l__suanpan_frame_b_half_dim );
+ \draw[frameinner]
+ ( -\l__suanpan_support_d_half_dim, -\l__suanpan_frame_b_half_dim )
+ --
+ ( \l__suanpan_support_d_half_dim, -\l__suanpan_frame_b_half_dim );
+
+ % 绘制上梁下边线
+ \draw[frameinner]
+ ( -\l__suanpan_support_d_half_dim,
+ \l__suanpan_frame_upper_inner_offset_dim )
+ --
+ ( \l__suanpan_support_d_half_dim,
+ \l__suanpan_frame_upper_inner_offset_dim );
+ % 绘制上梁上边线
+ \draw[frameouter]
+ ( -\l__suanpan_support_d_half_dim,
+ \l__suanpan_frame_upper_outer_offset_dim -
+ \l__suanpan_frame_outer_linewidth_dim / 2)
+ --
+ ( \l__suanpan_support_d_half_dim,
+ \l__suanpan_frame_upper_outer_offset_dim -
+ \l__suanpan_frame_outer_linewidth_dim / 2);
+
+ % 绘制下梁上边线
+ \draw[frameinner]
+ ( -\l__suanpan_support_d_half_dim,
+ \l__suanpan_frame_lower_inner_offset_dim )
+ --
+ ( \l__suanpan_support_d_half_dim,
+ \l__suanpan_frame_lower_inner_offset_dim );
+ % 绘制下梁下边线
+ \draw[frameouter]
+ ( -\l__suanpan_support_d_half_dim,
+ \l__suanpan_frame_lower_outer_offset_dim +
+ \l__suanpan_frame_outer_linewidth_dim / 2 )
+ --
+ ( \l__suanpan_support_d_half_dim,
+ \l__suanpan_frame_lower_outer_offset_dim +
+ \l__suanpan_frame_outer_linewidth_dim / 2 );
+
+ % 绘制计位点(黑色圆点)
+ \bool_if:NT \l__suanpan_support_unit_bool
+ {
+ \fill[%
+ fill=black,
+ ] (0pt, 0pt) circle
+ [radius = \l__suanpan_frame_unit_r_dim];
+ }
+ \end{tikzpicture}
+ }{
+ \begin{tikzpicture}
+ % 绘制下杆
+ \shadedraw[rod]
+ ( -\l__suanpan_rod_d_half_dim, \l__suanpan_rod_lower_offset_dim )
+ rectangle
+ ( \l__suanpan_rod_d_half_dim, \l__suanpan_rod_lower_dim );
+ % 绘制上杆
+ \shadedraw[rod]
+ ( -\l__suanpan_rod_d_half_dim, \l__suanpan_rod_upper_offset_dim )
+ rectangle
+ ( \l__suanpan_rod_d_half_dim, \l__suanpan_rod_upper_dim );
+
+ % 绘制横梁
+ \shade[beam]
+ ( -\l__suanpan_support_d_half_dim, -\l__suanpan_frame_b_half_dim )
+ rectangle
+ ( \l__suanpan_support_d_half_dim, \l__suanpan_frame_b_half_dim );
+ \draw[frameinner]
+ ( -\l__suanpan_support_d_half_dim, \l__suanpan_frame_b_half_dim )
+ --
+ ( \l__suanpan_support_d_half_dim, \l__suanpan_frame_b_half_dim );
+ \draw[frameinner]
+ ( -\l__suanpan_support_d_half_dim, -\l__suanpan_frame_b_half_dim )
+ --
+ ( \l__suanpan_support_d_half_dim, -\l__suanpan_frame_b_half_dim );
+
+ % 绘制上梁下边线
+ \draw[frameinner]
+ ( -\l__suanpan_support_d_half_dim,
+ \l__suanpan_frame_upper_inner_offset_dim )
+ --
+ ( \l__suanpan_support_d_half_dim,
+ \l__suanpan_frame_upper_inner_offset_dim );
+ % 绘制上梁上边线
+ \draw[frameouter]
+ ( -\l__suanpan_support_d_half_dim,
+ \l__suanpan_frame_upper_outer_offset_dim -
+ \l__suanpan_frame_outer_linewidth_dim / 2)
+ --
+ ( \l__suanpan_support_d_half_dim,
+ \l__suanpan_frame_upper_outer_offset_dim -
+ \l__suanpan_frame_outer_linewidth_dim / 2);
+
+ % 绘制下梁上边线
+ \draw[frameinner]
+ ( -\l__suanpan_support_d_half_dim,
+ \l__suanpan_frame_lower_inner_offset_dim )
+ --
+ ( \l__suanpan_support_d_half_dim,
+ \l__suanpan_frame_lower_inner_offset_dim );
+ % 绘制下梁下边线
+ \draw[frameouter]
+ ( -\l__suanpan_support_d_half_dim,
+ \l__suanpan_frame_lower_outer_offset_dim +
+ \l__suanpan_frame_outer_linewidth_dim / 2 )
+ --
+ ( \l__suanpan_support_d_half_dim,
+ \l__suanpan_frame_lower_outer_offset_dim +
+ \l__suanpan_frame_outer_linewidth_dim / 2 );
+
+ % 绘制计位点(黑色圆点)
+ \bool_if:NT \l__suanpan_support_unit_bool
+ {
+ \shade[%
+ inner~color=black!40,
+ outer~color=black!80,
+ ] (0pt, 0pt) circle
+ [radius = \l__suanpan_frame_unit_r_dim];
+ }
+ \end{tikzpicture}
+ }
+ }
+ \group_end:
+ }
+
+% 绘制算珠
+% #1: 算珠位置编号
+% o o o o o o o | o o o
+% 1 2 3 4 5 6 7 8 9 10
+% | o
+% 11
+% 其中,11是悬珠位置
+% #2: 算珠类型
+% 0——外珠,1——内珠,2——浮珠
+\cs_new:Npn \__suanpan_bid_layout:nn #1#2
+ {
+ % 算珠垂直偏移
+ \int_compare:nNnTF { #1 } > { 7 }
+ {
+ \int_compare:nNnTF { #1 } < { 11 }
+ {
+ % 上珠
+ \dim_set:Nn \l_tmpb_dim{ \l__suanpan_bid_upper_offset_dim +
+ \l__suanpan_bid_h_dim * (#1 - 8) }
+ }{
+ % 悬珠
+ \dim_set:Nn \l_tmpb_dim{ \l__suanpan_frame_b_half_dim +
+ \l__suanpan_bid_h_dim * 2 }
+ }
+ }{
+ % 下珠
+ \dim_set:Nn \l_tmpb_dim{ \l__suanpan_bid_lower_offset_dim +
+ \l__suanpan_bid_h_dim * (#1 - 1) }
+ }
+
+ % 绘图算珠
+ \draw_scope_begin:
+ \draw_transform_yshift:n { \l_tmpb_dim }
+ \int_case:nnF { #2 }
+ {
+ { 0 } { \draw_coffin_use:Nnn \l__suanpan_outer_bid_coffin { hc } { vc } }
+ { 1 } { \draw_coffin_use:Nnn \l__suanpan_inner_bid_coffin { hc } { vc } }
+ { 2 } { \draw_coffin_use:Nnn \l__suanpan_float_bid_coffin { hc } { vc } }
+ }{ \msg_error:nnn { suanpan } { bid-type-error } {#2} }
+ \draw_scope_end:
+ }
+
+\msg_new:nnn { suanpan } { bid-type-error }
+ { #1~ bid~ type~ is~ unknown. }
+
+% 函数变体
+\cs_generate_variant:Nn \__suanpan_bid_layout:nn {xx}
+
+% 组装一个档位
+% #1: 档位编号(基于1,从左向右计数)
+% #2: 档位数字
+\cs_new:Npn \__suanpan_assemble_rod:nn #1#2
+ {
+ \tl_set:Nn \l_tmpb_tl { #2 }
+ % 绘制
+ \draw_scope_begin:
+ % 水平方向偏移
+ \draw_transform_xshift:n { \l__suanpan_support_d_dim * (#1 - 1) }
+
+ % 档杆
+ \draw_coffin_use:Nnnn \l__suanpan_support_coffin
+ { hc } { vc } { 0pt, -\l__suanpan_support_y_offset_dim }
+
+ % 算珠
+ \int_compare:nNnTF { #2 } = { 0 }
+ {
+ % 判断0值空档算珠是否需要绘制
+ \bool_if:NT \l__suanpan_empty_rod_bool
+ {
+ % 取得档位数字对应算珠位置及内珠/外珠编号
+ \prop_get:NnN \l__suanpan_rods_val_prop { #2 } \l_tmpa_tl
+ \clist_clear:N \l__suanpan_bids_pos_clist
+ \clist_set:NV \l__suanpan_bids_pos_clist \l_tmpa_tl
+
+ \clist_map_inline:Nn \l__suanpan_bids_pos_clist
+ {
+ \clist_set:Nn \l_tmpa_clist { ##1 }
+ \__suanpan_bid_layout:xx { \clist_item:Nn \l_tmpa_clist { 1 } }
+ { \clist_item:Nn \l_tmpa_clist { 2 } }
+ }
+ }
+ }{
+ % 不是0值空档算珠,需要绘制
+ % 取得档位数字对应算珠位置及内珠/外珠编号
+ \prop_get:NnN \l__suanpan_rods_val_prop { #2 } \l_tmpa_tl
+ \clist_clear:N \l__suanpan_bids_pos_clist
+ \clist_set:NV \l__suanpan_bids_pos_clist \l_tmpa_tl
+
+ \clist_map_inline:Nn \l__suanpan_bids_pos_clist
+ {
+ \clist_set:Nn \l_tmpa_clist { ##1 }
+ \__suanpan_bid_layout:xx { \clist_item:Nn \l_tmpa_clist { 1 } }
+ { \clist_item:Nn \l_tmpa_clist { 2 } }
+ }
+ }
+ \draw_scope_end:
+ }
+
+% 指定一个档位上浮珠的颜色
+% #1: 档位编号(从左向右)
+% #2: 算珠位置([1, 11])
+\cs_new:Npn \__suanpan_float_bid:nn #1#2
+ {
+ \draw_scope_begin:
+ % 水平偏移
+ \draw_transform_xshift:n { \l__suanpan_support_d_dim * ( #1 - 1 ) }
+
+ % 覆盖绘制
+ \__suanpan_bid_layout:xx { #2 }{ 2 }
+ \draw_scope_end:
+ }
+
+% 为一个档位添加计数标记
+% #1: 档位编号(基于1,从左向右)
+% #2: 标记内容
+\cs_new:Npn \__suanpan_rod_mark:nn #1#2
+ {
+ \hcoffin_set:Nn \l_tmpa_coffin
+ {
+ \begin{tikzpicture}
+ \node at ( 0, 0 ) [font=\l__suanpan_mark_font_tl] { #2 };
+ \end{tikzpicture}
+ }
+
+ \draw_scope_begin:
+ % 水平偏移
+ \draw_transform_xshift:n { \l__suanpan_support_d_dim * ( #1 - 1 ) }
+ \draw_coffin_use:Nnn \l_tmpa_coffin { hc } { vc }
+ \draw_scope_end:
+ }
+
+% 绘制边框
+% #1 第一档编号(左)
+% #2 最后一档编号(右)
+\cs_new:Npn \__suanpan_frame_layout:nn #1#2
+ {
+ % TikZ绘制样式
+ \tikzset{%
+ hframe/.style = {% 上下梁
+ bottom~color = framecolor!95,
+ top~color = framecolor!95,
+ middle~color = framecolor!15,
+ draw = framecolor,
+ line~width = \l__suanpan_frame_inner_linewidth_dim,
+ },
+ vframe/.style = {% 左右梁
+ left~color = framecolor!95,
+ right~color = framecolor!95,
+ middle~color = framecolor!15,
+ draw = framecolor,
+ line~width = \l__suanpan_frame_inner_linewidth_dim,
+ },
+ mframe/.style = {% 横梁
+ top~color = framecolor!60,
+ bottom~color = framecolor!60,
+ middle~color = framecolor!5,
+ line~width = \l__suanpan_frame_inner_linewidth_dim,
+ },
+ frameline/.style = {% 梁连线
+ draw = framecolor,
+ line~width = \l__suanpan_frame_inner_linewidth_dim,
+ },
+ framefill/.style = {% 外框填充
+ draw = framecolor,
+ fill = framecolor,
+ line~width = \l__suanpan_frame_inner_linewidth_dim,
+ },
+ arcline/.style = {% 转角线
+ draw = framecolor,
+ line~width = \l__suanpan_frame_inner_linewidth_dim,
+ rounded~corners = \l__suanpan_frame_inner_linewidth_dim / 2,
+ },
+ }
+
+ % 总宽度
+ \dim_set:Nn \l_tmpa_dim {
+ \fp_to_dim:n {
+ \fp_eval:n { \l__suanpan_support_d_dim * ( #2 - #1 + 1.0) }
+ }
+ }
+ % 减半档宽度
+ \dim_set:Nn \l_tmpb_dim {
+ \fp_to_dim:n {
+ \fp_eval:n { \l__suanpan_support_d_dim * ( #2 - #1 ) +
+ \l__suanpan_support_d_half_dim}
+ }
+ }
+
+ \group_begin:
+ % 上下边框基础容器(盒子)
+ \hcoffin_set:Nn \l_tmpa_coffin
+ {
+ % 判断是否为草稿模式
+ \bool_if:NTF \l__suanpan_draft_bool
+ {
+ \begin{tikzpicture}
+ \draw[framefill]
+ ( 0pt, 0pt ) --
+ ++( \l_tmpa_dim, 0) --
+ ++( \l__suanpan_frame_b_dim, \l__suanpan_frame_b_dim ) --
+ ++( -\l__suanpan_frame_b_dim, 0 ) --
+ ++( -\l_tmpa_dim, 0 ) --
+ ++( -\l__suanpan_frame_b_dim, 0 ) --
+ cycle;
+ \end{tikzpicture}
+ }{
+ \begin{tikzpicture}
+ \shadedraw[hframe]
+ ( 0pt, 0pt ) --
+ ++( \l_tmpa_dim, 0) --
+ ++( \l__suanpan_frame_b_dim, \l__suanpan_frame_b_dim ) --
+ ++( -\l__suanpan_frame_b_dim, 0 ) --
+ ++( -\l_tmpa_dim, 0 ) --
+ ++( -\l__suanpan_frame_b_dim, 0 ) --
+ cycle;
+ \end{tikzpicture}
+ }
+ }
+
+ % 左右边框基础容器(盒子)
+ \hcoffin_set:Nn \l_tmpb_coffin
+ {
+ % 判断是否为草稿模式
+ \bool_if:NTF \l__suanpan_draft_bool
+ {
+ \begin{tikzpicture}
+ \draw[framefill]
+ ( 0, 0 ) --
+ ++( 0, \l__suanpan_frame_inner_h_dim) --
+ ++( -\l__suanpan_frame_b_dim, \l__suanpan_frame_b_dim ) --
+ ++( 0, -\l__suanpan_frame_outer_h_dim ) --
+ cycle;
+ \draw[arcline]
+ ( 0, 0 )
+ ++( 0, \l__suanpan_frame_inner_h_dim )
+ ++( 0, \l__suanpan_frame_b_dim )
+ ++( 0, \l__suanpan_frame_inner_linewidth_dim * 0.9 )
+ ++( -\l__suanpan_frame_b_half_dim, 0 ) --
+ ++( -\l__suanpan_frame_b_half_dim, 0 ) --
+ ++( -\l__suanpan_frame_inner_linewidth_dim * 0.9, 0 ) --
+ ++( 0, -\l__suanpan_frame_b_half_dim );
+ \draw[arcline]
+ ( 0, 0 )
+ ++( 0, -\l__suanpan_frame_b_dim )
+ ++( 0, -\l__suanpan_frame_inner_linewidth_dim * 0.9 )
+ ++( -\l__suanpan_frame_b_half_dim, 0 ) --
+ ++( -\l__suanpan_frame_b_half_dim, 0 ) --
+ ++( -\l__suanpan_frame_inner_linewidth_dim * 0.9, 0 ) --
+ ++( 0, \l__suanpan_frame_b_half_dim );
+ \end{tikzpicture}
+ }{
+ \begin{tikzpicture}
+ \shadedraw[vframe]
+ ( 0, 0 ) --
+ ++( 0, \l__suanpan_frame_inner_h_dim) --
+ ++( -\l__suanpan_frame_b_dim, \l__suanpan_frame_b_dim ) --
+ ++( 0, -\l__suanpan_frame_outer_h_dim ) --
+ cycle;
+ \draw[arcline]
+ ( 0, 0 )
+ ++( 0, \l__suanpan_frame_inner_h_dim )
+ ++( 0, \l__suanpan_frame_b_dim )
+ ++( 0, \l__suanpan_frame_inner_linewidth_dim * 0.9 )
+ ++( -\l__suanpan_frame_b_half_dim, 0 ) --
+ ++( -\l__suanpan_frame_b_half_dim, 0 ) --
+ ++( -\l__suanpan_frame_inner_linewidth_dim * 0.9, 0 ) --
+ ++( 0, -\l__suanpan_frame_b_half_dim );
+ \draw[arcline]
+ ( 0, 0 )
+ ++( 0, -\l__suanpan_frame_b_dim )
+ ++( 0, -\l__suanpan_frame_inner_linewidth_dim * 0.9 )
+ ++( -\l__suanpan_frame_b_half_dim, 0 ) --
+ ++( -\l__suanpan_frame_b_half_dim, 0 ) --
+ ++( -\l__suanpan_frame_inner_linewidth_dim * 0.9, 0 ) --
+ ++( 0, \l__suanpan_frame_b_half_dim );
+ \end{tikzpicture}
+ }
+ }
+
+ % 横梁接头基础容器(盒子)
+ \hcoffin_set:Nn \l_tmpc_coffin
+ {
+ % 判断是否为草稿模式
+ \bool_if:NTF \l__suanpan_draft_bool
+ {
+ \begin{tikzpicture}
+ \fill[fill=white,
+ line~width=\l__suanpan_frame_inner_linewidth_dim]
+ ( 0pt, 0pt ) --++( 0, \l__suanpan_frame_b_dim) --
+ ++(-\l__suanpan_frame_inner_linewidth_dim, 0) --
+ ++(-\l__suanpan_frame_b_dim / 3, -\l__suanpan_frame_b_dim / 2) --
+ ++( \l__suanpan_frame_b_dim / 3, -\l__suanpan_frame_b_dim / 2) --
+ cycle;
+ \draw[frameline]%
+ ( 0, \l__suanpan_frame_b_dim) --
+ ++(-\l__suanpan_frame_inner_linewidth_dim, 0) --
+ ++(-\l__suanpan_frame_b_dim / 3, -\l__suanpan_frame_b_dim / 2) --
+ ++( \l__suanpan_frame_b_dim / 3, -\l__suanpan_frame_b_dim / 2) --
+ ++( \l__suanpan_frame_inner_linewidth_dim, 0);
+ \end{tikzpicture}
+ }{
+ \begin{tikzpicture}
+ \shade[mframe]
+ ( 0pt, 0pt ) --++( 0, \l__suanpan_frame_b_dim) --
+ ++(-\l__suanpan_frame_inner_linewidth_dim, 0) --
+ ++(-\l__suanpan_frame_b_dim / 3, -\l__suanpan_frame_b_dim / 2) --
+ ++( \l__suanpan_frame_b_dim / 3, -\l__suanpan_frame_b_dim / 2) --
+ cycle;
+ \draw[frameline]%
+ ( 0, \l__suanpan_frame_b_dim) --
+ ++(-\l__suanpan_frame_inner_linewidth_dim, 0) --
+ ++(-\l__suanpan_frame_b_dim / 3, -\l__suanpan_frame_b_dim / 2) --
+ ++( \l__suanpan_frame_b_dim / 3, -\l__suanpan_frame_b_dim / 2) --
+ ++( \l__suanpan_frame_inner_linewidth_dim, 0);
+ \end{tikzpicture}
+ }
+ }
+
+ % 布置上边框
+ \draw_scope_begin:
+ \draw_transform_xshift:n { -\l__suanpan_support_d_half_dim -
+ \l__suanpan_frame_inner_linewidth_dim / 2 }
+ \draw_transform_yshift:n { \l__suanpan_frame_inner_upper_dim -
+ \l__suanpan_frame_inner_linewidth_dim }
+ \draw_coffin_use:Nnnn \l_tmpa_coffin { l } { b }
+ { -\l__suanpan_frame_b_dim, 0pt }
+ \draw_scope_end:
+
+ % 布置下边框
+ \draw_scope_begin:
+ \coffin_rotate:Nn \l_tmpa_coffin { 180 }
+ \draw_transform_xshift:n { \l_tmpa_dim - \l__suanpan_support_d_half_dim +
+ \l__suanpan_frame_inner_linewidth_dim / 2 }
+
+ \draw_transform_yshift:n { \l__suanpan_frame_inner_lower_dim +
+ \l__suanpan_frame_inner_linewidth_dim }
+ \draw_coffin_use:Nnnn \l_tmpa_coffin { l } { b }
+ { \l__suanpan_frame_b_dim, 0pt }
+ \draw_scope_end:
+
+ % 布置左边框
+ \draw_scope_begin:
+ \draw_transform_xshift:n { -\l__suanpan_support_d_half_dim -
+ \l__suanpan_frame_b_dim -
+ \l__suanpan_frame_inner_linewidth_dim * 1.5 }
+ \draw_transform_yshift:n { \l__suanpan_frame_inner_lower_dim -
+ \l__suanpan_frame_inner_linewidth_dim }
+
+ \draw_coffin_use:Nnnn \l_tmpb_coffin { l } { b }
+ { 0pt, -\l__suanpan_frame_b_dim }
+ \draw_scope_end:
+
+ % 布置右边框
+ \draw_scope_begin:
+ \coffin_rotate:Nn \l_tmpb_coffin { 180 }
+ \draw_transform_xshift:n { \l_tmpb_dim +
+ \l__suanpan_frame_b_dim +
+ \l__suanpan_frame_inner_linewidth_dim * 1.5}% -
+ \draw_transform_yshift:n { \l__suanpan_frame_inner_upper_dim +
+ \l__suanpan_frame_inner_linewidth_dim }
+ \draw_coffin_use:Nnnn \l_tmpb_coffin { l } { b }
+ { 0pt, \l__suanpan_frame_b_dim }
+ \draw_scope_end:
+
+ % 布置左横梁接头
+ \draw_scope_begin:
+ \draw_transform_xshift:n { -\l__suanpan_support_d_half_dim -
+ \l__suanpan_frame_b_dim / 3 -
+ \l__suanpan_frame_inner_linewidth_dim / 2 }
+ \draw_transform_yshift:n { -\l__suanpan_frame_b_dim / 2 -
+ \l__suanpan_frame_inner_linewidth_dim / 2 }
+ \draw_coffin_use:Nnnn \l_tmpc_coffin { l } { b } { 0pt, 0pt }
+ \draw_scope_end:
+
+ % 布置右横梁接头
+ \draw_scope_begin:
+ \coffin_rotate:Nn \l_tmpc_coffin { 180 }
+ \draw_transform_xshift:n { \l_tmpb_dim +
+ \l__suanpan_frame_b_dim / 3 +
+ \l__suanpan_frame_inner_linewidth_dim / 2 }
+ \draw_transform_yshift:n { \l__suanpan_frame_b_dim / 2 +
+ \l__suanpan_frame_inner_linewidth_dim / 2 }
+ \draw_coffin_use:Nnnn \l_tmpc_coffin { l } { b } { 0pt, 0pt }
+ \draw_scope_end:
+ \group_end:
+ }
+
+% 算盘排版用户接口
+% 算盘排版环境
+% #1 suanpan环境选项
+% #2 suanpan环境内容(!b参数)
+\NewDocumentEnvironment{ suanpan }{ o !b }
+ {
+ \group_begin:
+ % 设置选项
+ \IfNoValueF{ #1 }
+ {
+ \keys_set:nn { suanpan }{ #1 }
+ }
+
+ % 构造基础容器(盒子)
+ \__suanpan_inner_bid_construct:
+ \__suanpan_outer_bid_construct:
+ \__suanpan_support_construct:
+
+ % 删除#2(!b)参数取得的环境内容中的空白
+ \str_set:Nn \l_tmpa_str { #2 }
+ \str_remove_all:Nn \l_tmpa_str {~}
+ % 将str还原为tl
+ \tl_set_rescan:Nno \l_tmpa_tl {}{ \l_tmpa_str }
+
+ % 在容器(盒子)中用#2(!b)参数取得的按环境内容实现绘制
+ \hcoffin_set:Nn \l_tmpa_coffin
+ {
+ \draw_begin:
+ \l_tmpa_tl
+ \draw_end:
+ }
+
+ \hcoffin_set:Nn \l_tmpb_coffin
+ {
+ % 将原图缩小50%
+ \coffin_scale:Nnn \l_tmpa_coffin { 0.50 } { 0.50 }
+ \coffin_typeset:Nnnnn \l_tmpa_coffin{ l }{ b }{ 0pt }{ 0pt }
+ }
+ }{
+ % 按用户指定比例缩放
+ \coffin_scale:Nnn \l_tmpb_coffin
+ { \l__suanpan_scale_tl } { \l__suanpan_scale_tl }
+
+ % 设置基字符盒子(排版深度)
+ \hbox_set:Nn \l_tmpa_box { x }
+ % 盒子深度
+ \dim_set:Nn \l_tmpa_dim { \box_dp:N \l_tmpa_box}
+
+ % 输出算盘容器(盒子)
+ \coffin_typeset:Nnnnn \l_tmpb_coffin{ l }{ b }{ 0pt }{ -\l_tmpa_dim }
+ \int_zero:N \l__suanpan_rod_max_int
+ \group_end:
+ }
+
+% 排版算盘一个档位,包括档杆和算珠
+% #1 星号命令,绘制计位点(黑色圆点)
+% #2 档位编号(基于1,从左向右计数)
+% #3 本档数字(0-20,10-15需用到顶珠和底珠,16-20需要用到悬珠)
+\NewDocumentCommand{ \rod }{ s m m }
+ {
+ % 记录原状态变量
+ \bool_set_eq:NN \l_tmpa_bool \l__suanpan_support_unit_bool
+ % 星号命令,用于在横梁绘制计位点
+ \IfBooleanTF{#1}
+ {
+ \bool_set_true:N \l__suanpan_support_unit_bool
+ }{
+ \bool_set_false:N \l__suanpan_support_unit_bool
+ }
+
+ % 如状态发生改变,则重新绘制档杆单元
+ \bool_if:NTF \l_tmpa_bool
+ {
+ \bool_if:NF \l__suanpan_support_unit_bool
+ {
+ \__suanpan_support_construct:
+ }
+ }{
+ \bool_if:NT \l__suanpan_support_unit_bool
+ {
+ \__suanpan_support_construct:
+ }
+ }
+
+ % 组装一个档位
+ \__suanpan_assemble_rod:nn { #2 }{ #3 }
+
+ % 统计档位总数
+ \int_set:Nn \l__suanpan_rod_max_int
+ { \int_max:nn { \l__suanpan_rod_max_int }{ #2 } }
+ }
+
+% 排版算盘多个档位,包括档杆和算珠
+% #1 本档数字(0-20,10-15需用到顶珠和底珠,16-20需要用到悬珠)
+% 各数字之间需要用逗号分隔。
+\NewDocumentCommand{ \rods }{ m }
+ {
+ % 构造档位数字列表
+ \clist_set:Nn \l_tmpa_clist { #1 }
+ % 初始化档位计数器
+ \int_set:Nn \l_tmpa_int { 0 }
+
+ \clist_map_inline:Nn \l_tmpa_clist
+ {
+ % 档位计数器自增1
+ \int_incr:N \l_tmpa_int
+
+ % 组装当前档位
+ \__suanpan_assemble_rod:nn {\l_tmpa_int }{ ##1 }
+ }
+
+ % 记录档位总数
+ \int_set:Nn \l__suanpan_rod_max_int
+ { \int_max:nn { \l__suanpan_rod_max_int }{ \l_tmpa_int } }
+ }
+
+% 指定某档上某个算珠的颜色
+% #1 档位(基于1,从左向右计数)
+% #2 算珠位置列表(1--11,11为悬珠位置)
+% #3 算珠填充颜色
+% #4 算珠绘制颜色(默认为内珠绘制颜色)
+\NewDocumentCommand{ \bid }{ m m m O{innerdrawcolor} }
+ {
+ % 构造浮珠
+ \__suanpan_float_bid_construct:nn { #4 }{ #3 }
+
+ % 构造算珠位置列表
+ \clist_set:Nn \l_tmpa_clist { #2 }
+
+ \clist_map_inline:Nn \l_tmpa_clist
+ {
+ % 绘制浮珠
+ \__suanpan_float_bid:nn { #1 }{ ##1 }
+ }
+ }
+
+% 指定某档上所有内珠或外珠的颜色
+% #1 星号命令,选择内珠或外珠
+% #2 档位(基于1,从左向右计数)
+% #3 该档数字
+% #4 算珠填充颜色(绘图颜色采用原内/外珠绘制颜色)
+\NewDocumentCommand{ \bids }{ s m m m }
+ {
+ % 取得档位数字对应算珠位置及内珠/外珠编号
+ \prop_get:NnN \l__suanpan_rods_val_prop { #3 } \l_tmpa_tl
+ \clist_clear:N \l__suanpan_bids_pos_clist
+ \clist_set:NV \l__suanpan_bids_pos_clist \l_tmpa_tl
+
+ % 星号命令,用于选择外珠着色
+ \IfBooleanTF{#1}
+ {
+ % 构造浮珠
+ \__suanpan_float_bid_construct:nn { outerdrawcolor }{ #4 }
+
+ \clist_map_inline:Nn \l__suanpan_bids_pos_clist
+ {
+ \clist_set:Nn \l_tmpa_clist { ##1 }
+ % 选择外珠
+ \int_compare:nNnT { \clist_item:Nn \l_tmpa_clist { 2 } } = { 0 }
+ {
+ \__suanpan_float_bid:nn { #2 }{ \clist_item:Nn \l_tmpa_clist { 1 } }
+ }
+ }
+ }{
+ % 构造浮珠
+ \__suanpan_float_bid_construct:nn { innerdrawcolor }{ #4 }
+
+ \clist_map_inline:Nn \l__suanpan_bids_pos_clist
+ {
+ \clist_set:Nn \l_tmpa_clist { ##1 }
+ % 选择内珠
+ \int_compare:nNnT { \clist_item:Nn \l_tmpa_clist { 2 } } = { 1 }
+ {
+ \__suanpan_float_bid:nn { #2 }{ \clist_item:Nn \l_tmpa_clist { 1 } }
+ }
+ }
+ }
+ }
+
+% 左右边框
+\NewDocumentCommand{ \mkframe }{ }
+ {
+ \__suanpan_frame_layout:nn { 1 }{ \l__suanpan_rod_max_int }
+ }
+
+% 为各档添加计位标记
+% #1 起始档位(基于1,从左向右计数)
+% #2 标记列表
+\NewDocumentCommand{ \rodmark }{ O{1} m }
+ {
+ % 标记列表
+ \clist_set:Nn \l_tmpa_clist { #2 }
+
+ % 计数器
+ \int_set:Nn \l_tmpa_int { #1 }
+
+ % 遍历列表
+ \clist_map_inline:Nn \l_tmpa_clist
+ {
+ % 输出标记
+ \__suanpan_rod_mark:nn { \l_tmpa_int }{ ##1 }
+
+ % 调整计数器
+ \int_incr:N \l_tmpa_int
+
+ % 超出最大档位
+ \int_compare:nNnT { \l_tmpa_int } > { \l__suanpan_rod_max_int }
+ {
+ \clist_map_break:
+ }
+ }
+ }
+
+% 选项设置用户接口
+\NewDocumentCommand{ \suanpanset } { m }
+ {
+ \IfNoValueF { #1}
+ {
+ \keys_set:nn { suanpan } { #1 }
+ }
+ }
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/subeqn/subeqn.sty b/Master/texmf-dist/tex/latex/subeqn/subeqn.sty
index 7d0dcba5dcd..fab4e5ddebf 100644
--- a/Master/texmf-dist/tex/latex/subeqn/subeqn.sty
+++ b/Master/texmf-dist/tex/latex/subeqn/subeqn.sty
@@ -5,19 +5,20 @@
%% The original source files were:
%%
%% subeqn.dtx (with options: `package')
+%% This is a generated file.
%%
-%% Copyright (C) 1999-2004 Johannes Braams. All rights reserved.
+%% Copyright (C) 1999-2024 Johannes Braams. All rights reserved.
%%
%% This file was generated from file(s) of the subeqn package.
%% -----------------------------------------------------------
%%
%% It may be distributed and/or modified under the
-%% conditions of the LaTeX Project Public License, either version 1.3
+%% 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 2003/12/01 or later.
+%% and version 1.3с or later is part of all distributions of LaTeX
+%% version 2008 or later.
%%
%% This work has the LPPL maintenance status "maintained".
%%
@@ -28,19 +29,14 @@
%% without such generated files.
%%
%% The list of all files belonging to the subeqn package is
-%% given in the file `manifest.txt.
+%% given in the file `MANIFEST'.
%%
%% The list of derived (unpacked) files belonging to the distribution
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
-%% File: `subeqn.dtx'
-%% Copyright (C) 1999-2004
-%% Donald Arsenau (asnd at reg.triumf.ca),
-%% Johannes Braams (TeXniek at braams.cistron.nl)
-%%
\NeedsTeXFormat{LaTeX2e}[1998/06/01]
\ProvidesPackage{subeqn}
- [2004/04/15 v2.0b subnumbering of equations]
+ [2024/07/21 v2.0c subnumbering of equations]
\newenvironment{subequations}{%
\refstepcounter{equation}%
\mathchardef\c@mainequation\c@equation
diff --git a/Master/texmf-dist/tex/latex/subeqnarray/subeqnarray.sty b/Master/texmf-dist/tex/latex/subeqnarray/subeqnarray.sty
index 1223f1bb376..1703304b514 100644
--- a/Master/texmf-dist/tex/latex/subeqnarray/subeqnarray.sty
+++ b/Master/texmf-dist/tex/latex/subeqnarray/subeqnarray.sty
@@ -6,18 +6,18 @@
%%
%% subeqnarray.dtx (with options: `package')
%%
-%% Copyright (C) 1999-2004 Johannes Braams. All rights reserved.
+%% Copyright (C) 1999-2024 Johannes Braams. All rights reserved.
%%
%% This file was generated from file(s) of the subeqnarray package.
%% ----------------------------------------------------------------
%%
%% It may be distributed and/or modified under the
-%% conditions of the LaTeX Project Public License, either version 1.3
+%% conditions of the LaTeX Project Public License, either version 1.3c
%% of this license or (at your option) any later version.
%% The latest version of this license is in
%% http://www.latex-project.org/lppl.txt
-%% and version 1.3 or later is part of all distributions of LaTeX
-%% version 2003/12/01 or later.
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008 or later.
%%
%% This work has the LPPL maintenance status "maintained".
%%
@@ -33,18 +33,13 @@
%% The list of derived (unpacked) files belonging to the distribution
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
-%% Copyright (C) 1988--2004 by Johannes Braams,
-%% all rights resserved
%%
%% Error reports please to: J. Braams
%% TeXniek
-%% Kooienswater 62
-%% 2715 AJ Zoetermeer
-%% The Netherlands
-%% Email: texniek at braams.cistron.nl
+%% Email: texniek at texniek.nl
\NeedsTeXFormat{LaTeX2e}[1998/06/01]
\ProvidesPackage{subeqnarray}
- [2004/04/15 v2.1c subeqnarray package]
+ [2024/07/20 v2.1e subeqnarray package]
\newcounter{subequation}[equation]
\def\thesubequation{\theequation\alph{subequation}}
\DeclareOption{leqno}{%
diff --git a/Master/texmf-dist/tex/latex/supertabular/supertabular.sty b/Master/texmf-dist/tex/latex/supertabular/supertabular.sty
index 03fcf9cc6ca..05a7876b1ec 100644
--- a/Master/texmf-dist/tex/latex/supertabular/supertabular.sty
+++ b/Master/texmf-dist/tex/latex/supertabular/supertabular.sty
@@ -35,19 +35,21 @@
%% Sourcefile `supertabular.dtx'.
%%
%% Copyright (C) 1988 by Theo Jurriens
-%% Copyright (C) 1990-2020 by Johannes Braams texniek at braams.xs4all.nl
-%% Kersengaarde 33
-%% 2723 BP Zoetermeer NL
+%% Copyright (C) 1990-2024 by Johannes Braams texniek at texniek.nl
+%% The Netherlands
%% all rights reserved.
%%
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{supertabular}
- [2020/02/02 v4.1g the supertabular environment]
+ [2024/07/20 v4.2c the supertabular environment]
\newcount\c@tracingst
\DeclareOption{errorshow}{\c@tracingst\z@}
\DeclareOption{pageshow}{\c@tracingst\thr@@}
\DeclareOption{debugshow}{\c@tracingst5\relax}
+\DeclareOption{calculate}{\def\ST@calculate@rowht{\ST@compute@rowht}}
+\DeclareOption{estimate}{\def\ST@calculate@rowht{\ST@estimate@rowht}}
+\ExecuteOptions{errorshow,estimate}
\ProcessOptions
\newif\if@topcaption \@topcaptiontrue
\def\topcaption{\@topcaptiontrue\tablecaption}
@@ -76,41 +78,53 @@
\if@topcaption \vskip 10\p@ \gdef\ST@captionroom{20\p@}\fi
\endgroup}
\newcommand\tablehead[1]{%
- \gdef\@tablehead{%
- \noalign{%
- \global\let\@savcr=\\
- \global\let\\=\org@tabularcr}%
- #1%
- \noalign{\global\let\\=\@savcr}}}
+ \def\@ST@arg{#1}%
+ \ifx\@ST@arg\@empty\gdef\@tablehead{}\else
+ \gdef\@tablehead{%
+ \noalign{%
+ \global\let\@savcr=\\
+ \global\let\\=\org@tabularcr}%
+ #1%
+ \noalign{\global\let\\=\@savcr}}%
+ \fi}
\tablehead{}
\newcommand\tablefirsthead[1]{%
- \gdef\@table@first@head{%
- \noalign{%
- \global\let\@savcr=\\
- \global\let\\=\org@tabularcr}%
- #1%
- \noalign{%
- \global\let\\=\@savcr
- \global\let\@table@first@head\undefined
- }}}
+ \def\@ST@arg{#1}%
+ \ifx\@ST@arg\@empty\gdef\@table@first@head{}\else
+ \gdef\@table@first@head{%
+ \noalign{%
+ \global\let\@savcr=\\
+ \global\let\\=\org@tabularcr}%
+ #1%
+ \noalign{%
+ \global\let\\=\@savcr
+ \global\let\@table@first@head\undefined
+ }}%
+ \fi}
\newcommand\tabletail[1]{%
- \gdef\@tabletail{%
- \noalign{%
- \global\let\@savcr=\\
- \global\let\\=\org@tabularcr}%
- #1%
- \noalign{\global\let\\=\@savcr}}}
+ \def\@ST@arg{#1}%
+ \ifx\@ST@arg\@empty\gdef\@tabletail{}\else
+ \gdef\@tabletail{%
+ \noalign{%
+ \global\let\@savcr=\\
+ \global\let\\=\org@tabularcr}%
+ #1%
+ \noalign{\global\let\\=\@savcr}}%
+ \fi}
\tabletail{}
\newcommand\tablelasttail[1]{%
- \gdef\@table@last@tail{%
- \noalign{%
- \global\let\@savcr=\\
- \global\let\\=\org@tabularcr}%
- #1%
- \noalign{%
- \global\let\\=\@savcr
- \global\let\@table@last@tail\undefined
- }}}
+ \def\@ST@arg{#1}%
+ \ifx\@ST@arg\@empty\gdef\@table@last@tail{}\else
+ \gdef\@table@last@tail{%
+ \noalign{%
+ \global\let\@savcr=\\
+ \global\let\\=\org@tabularcr}%
+ #1%
+ \noalign{%
+ \global\let\\=\@savcr
+ \global\let\@table@last@tail\undefined
+ }}%
+ \fi}
\newcommand\sttraceon{\c@tracingst5\relax}
\newcommand\sttraceoff{\c@tracingst\z@}
\newcommand\ST@trace[2]{%
@@ -142,7 +156,7 @@
\newdimen\ST@tailht
\newdimen\ST@pagesofar
\newdimen\ST@pboxht
-\newdimen\ST@lineht
+\newdimen\ST@rowht
\newdimen\ST@prevht
\newdimen\ST@toadd
\newdimen\ST@dimen
@@ -191,22 +205,28 @@
\fi
\ST@dimen=\z@
\unvbox\ST@pbox\egroup\hfil}
-\def\ST@compute@lineht{%
- \ST@lineht=\ht\strutbox
+\def\ST@compute@rowht{%
+ \setbox\@tempboxa=\vbox{\@arrayparboxrestore $5^5_5$}
+ \ifnum\ht\@tempboxa>\ht\strutbox
+ \ST@rowht=\ht\@tempboxa
+ \else
+ \ST@rowht=\ht\strutbox
+ \fi
\ifx\extrarowheight\undefined\else
- \advance \ST@lineht by \extrarowheight
+ \advance \ST@rowht by \extrarowheight
+ \fi
+ \ifnum\dp\@tempboxa>\dp\strutbox
+ \advance\ST@rowht \dp\@tempboxa
+ \else
+ \advance\ST@rowht \dp\strutbox
\fi
- \ST@lineht = \arraystretch\ST@lineht
- \advance\ST@lineht \arraystretch\dp\strutbox
- \ST@trace\tw@{Normal Line height: \the\ST@lineht}%
+ \ST@rowht = \arraystretch\ST@rowht
+ \ST@trace\tw@{Normal Row height: \the\ST@rowht}%
}
-\def\estimate@lineht{%
- \ST@lineht=\arraystretch \baslineskp
- \global\advance\ST@lineht by 1\p@
- \ST@stretchht\ST@lineht\advance\ST@stretchht-\baslineskp
- \ifdim\ST@stretchht<\z@\ST@stretchht\z@\fi
- \ST@trace\tw@{Average line height: \the\ST@lineht}%
- \ST@trace\tw@{Stretched line height: \the\ST@stretchht}%
+\def\ST@estimate@rowht{%
+ \ST@rowht=\arraystretch \baslineskp
+ \global\advance\ST@rowht by 1\p@
+ \ST@trace\tw@{Average Row height: \the\ST@rowht}%
}
\def\@calfirstpageht{%
\ST@trace\tw@{Calculating height of tabular on first page}%
@@ -273,11 +293,11 @@
\@tabletail\endtabular}
\ST@tailht=\ht\@tempboxa\advance\ST@tailht\dp\@tempboxa
\fi
- \advance\ST@tailht by \ST@lineht
+ \advance\ST@tailht by \ST@rowht
\ST@trace\tw@{Height of tail: \the\ST@tailht}%
\ST@trace\tw@{Maximum height of tabular: \the\ST@pageleft}%
\@tempdima\ST@headht
- \advance\@tempdima\ST@lineht
+ \advance\@tempdima\ST@rowht
\advance\@tempdima\ST@tailht
\ST@trace\tw@{Minimum height of tabular: \the\@tempdima}%
\ifnum\@tempdima>\ST@pageleft
@@ -325,7 +345,7 @@
\let\@@tablehead=\@table@first@head
\fi
\let\ST@skippage\ST@skipfirstpart
- \ST@compute@lineht
+ \ST@calculate@rowht
\@calfirstpageht
\noindent
}
@@ -453,9 +473,9 @@
\csname org@tabular*\endcsname}
\def\ST@cr{%
\noalign{%
- \ifnum\ST@pboxht<\ST@lineht
- \global\advance\ST@pageleft -\ST@lineht
- \global\ST@prevht\ST@lineht
+ \ifnum\ST@pboxht<\ST@rowht
+ \global\advance\ST@pageleft -\ST@rowht
+ \global\ST@prevht\ST@rowht
\else
\ST@trace@cr\thr@@{Added par box with height \the\ST@pboxht}%
\global\advance\ST@pageleft -\ST@pboxht
@@ -489,7 +509,7 @@
\ST@trace\tw@{Tabular too high, moving to next page}%
\global\advance\ST@pageleft\pagetotal
\global\ST@pagesofar\z@
- \newpage
+ \penalty -\@M
\global\let\ST@skippage\ST@newpage
}}
\def\ST@newpage{%
diff --git a/Master/texmf-dist/tex/latex/synthslant/synthslant.sty b/Master/texmf-dist/tex/latex/synthslant/synthslant.sty
index 0cd75e5e330..42c27c2a428 100644
--- a/Master/texmf-dist/tex/latex/synthslant/synthslant.sty
+++ b/Master/texmf-dist/tex/latex/synthslant/synthslant.sty
@@ -11,11 +11,11 @@
%% Copyright (C) 2024 by Ch. L. Spiel
%%
%% This work may be distributed and/or modified under the conditions
-%% of the LaTeX Project Public License, either version 1.3 of this
+%% of the LaTeX Project Public License, either version 1.3c of this
%% license or (at your option) any later version. The latest version
%% of this license is in
-%% http://www.latex-project.org/lppl.txt
-%% and version 1.3 or later is part of all distributions of LaTeX
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
%% version 2003/12/01 or later.
%%
%% This work has the LPPL maintenance status `maintained'.
@@ -29,8 +29,9 @@
%%
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
\ProvidesPackage{synthslant}
- [2024/05/07 v0.1 Synthetically Slant glyphs]
+ [2024/07/08 v0.1a Synthetically Slant glyphs]
+\RequirePackage{etoolbox}
\RequirePackage{iftex}
\RequirePackage{xkeyval}
@@ -60,12 +61,16 @@
\ExplSyntaxOn
\fp_compare:nNnTF {\synthslant} < {.0}
- {\PackageError{synthslant}{\string\synthslant\space <\space 0}
- {Pass\space a\space value\space that\space is\space non-negative.}}
+ {\PackageError{synthslant}
+ {\string\synthslant\space <\space 0}
+ {Pass\space a\space value\space that\space
+ is\space nonnegative.}}
{}
\fp_compare:nNnTF {\synthnegslant} > {.0}
- {\PackageError{synthslant}{\string\synthnegslant\space >\space 0}
- {Pass\space a\space value\space that\space is\space non-positive.}}
+ {\PackageError{synthslant}
+ {\string\synthnegslant\space >\space 0}
+ {Pass\space a\space value\space that\space
+ is\space nonpositive.}}
{}
\ExplSyntaxOff
@@ -136,13 +141,15 @@
\box_set_dp:Nn \l_tmpa_box {\z@}
\fp_compare:nNnTF {#1} >= {.0}
{
- \box_set_wd:Nn \l_tmpa_box {\l_tmpa_dim - #1\l_tmpb_dim}
+ \box_set_wd:Nn \l_tmpa_box
+ {\l_tmpa_dim - #1\l_tmpb_dim}
}
{
\draw_suspend_begin:
\kern#1\l_tmpb_dim
\draw_suspend_end:
- \box_set_wd:Nn \l_tmpa_box {\l_tmpa_dim + #1\l_tmpb_dim}
+ \box_set_wd:Nn \l_tmpa_box
+ {\l_tmpa_dim + #1\l_tmpb_dim}
}
\draw_box_use:N \l_tmpa_box
\draw_end:
@@ -181,7 +188,8 @@
\ExplSyntaxOn
\newcommand*{\synthslantbox@fontspect@shear@box}[2]{
\begingroup
- \expandafter\fontspec[FakeSlant = #1]{\l_fontspec_family_tl}
+ \expandafter
+ \fontspec[FakeSlant=#1]{\l_fontspec_family_tl}
#2
\endgroup
}
@@ -242,8 +250,9 @@
\ifnum\synthslant@engine=4% fontspec
\newrobustcmd*{\synthslantbox}[2]{%
- \edef\synthslant@slant@value{#1}% definition for compatibility of both branches
- \synthslantbox@fontspect@shear@box{\synthslant@slant@value}{#2}%
+ \edef\synthslant@slant@value{#1}
+ \synthslantbox@fontspect@shear@box{\synthslant@slant@value}
+ {#2}%
}
\else
\newrobustcmd*{\synthslantbox}[2]{%
@@ -262,7 +271,8 @@
\NewDocumentEnvironment{slantenvironment}{}
{\upshape
\ifcsdef{microtypecontext}
- {\expandafter\microtypecontext\expandafter{\slantcontext}}
+ {\expandafter\microtypecontext
+ \expandafter{\slantcontext}}
{}}
{\ifcsdef{endmicrotypecontext}
{\endmicrotypecontext}
@@ -285,7 +295,8 @@
\NewDocumentEnvironment{negslantenvironment}{}
{\itshape
\ifcsdef{microtypecontext}
- {\expandafter\microtypecontext\expandafter{\negslantcontext}}
+ {\expandafter\microtypecontext
+ \expandafter{\negslantcontext}}
{}}
{\ifcsdef{endmicrotypecontext}
{\endmicrotypecontext}
diff --git a/Master/texmf-dist/tex/latex/tableof/tableof.sty b/Master/texmf-dist/tex/latex/tableof/tableof.sty
index 0af308c5eca..b2cc137c4ba 100644
--- a/Master/texmf-dist/tex/latex/tableof/tableof.sty
+++ b/Master/texmf-dist/tex/latex/tableof/tableof.sty
@@ -22,14 +22,14 @@
%% in the same archive or directory.)
%%
\ProvidesPackage{tableof}
- [2021/07/05 v1.4c Tables of tagged contents (JFB)]
+ [2024/09/17 v1.4d Tables of tagged contents (JFB)]
%%
%% Package: tableof
-%% Version: 1.4c (2021/07/05)
+%% Version: 1.4d (2024/09/17)
%% License: LPPL 1.3c
-%% Copyright (C) 2012, 2013, 2015, 2018, 2021 Jean-Francois Burnol <jfbu at free dot fr>
+%% Copyright (C) 2012, 2013, 2015, 2018, 2021, 2024 Jean-Francois Burnol <jfbu at free dot fr>
%%
-\NeedsTeXFormat{LaTeX2e}
+\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\RequirePackage{atveryend}
\DeclareOption*{\PackageWarning{tableof}{Option `\CurrentOption' is unknown.}}
\ProcessOptions\relax
@@ -42,7 +42,8 @@
{\expandafter\the\expandafter\tof@toctoks\tof@buffer}%
\expandafter\tof@readtoc
\fi }
-\AtBeginDocument{\IfFileExists{\jobname.toc}
+\AtBeginDocument{%
+ \IfFileExists{\jobname.toc}
{{\endlinechar\m@ne
\makeatletter
\newread\tof@tf
@@ -50,20 +51,20 @@
\tof@toctoks{\tof@begingroup}%
\tof@readtoc
\global\tof@toctoks=\expandafter{\the\tof@toctoks\tof@endgroup}%
- \closein\tof@tf}}{}}
-\AtBeginDocument{
+ \closein\tof@tf}}
+ {}%
+}
+\AtBeginDocument{%
\addtocontents{toc}{\string\@ifundefined{tof@begin}%
{\global\let\string\tof@begin\relax
\global\let\string\tof@finish\string\@empty
\global\let\string\tof@starttags\string\@gobble
\global\let\string\tof@stoptags\string\@gobble
\global\let\string\tof@tagthis\string\@gobble
- \global\let\string\tof@untagthis\string\@gobble}\relax}
- \addtocontents{toc}{\string\tof@begin}
- \@ifpackageloaded{hyperref}
- {\def\tof@gobblethree@orfour#1#2#3#4{}%
- \ifx\hyper@last\@undefined\tof@toctoks{}\fi}
- {\def\tof@gobblethree@orfour#1#2#3{}}}
+ \global\let\string\tof@untagthis\string\@gobble}\relax}%
+ \addtocontents{toc}{\string\tof@begin}%
+}
+\let\tof@gobblethree@orfour\@gobblefour
\AfterLastShipout
{\immediate\write\@auxout{\string\@writefile{toc}{\string\tof@finish}}}
\let\tof@global \@empty
diff --git a/Master/texmf-dist/tex/latex/tablvar/tablvar.sty b/Master/texmf-dist/tex/latex/tablvar/tablvar.sty
index 07b48703858..958d49d6e97 100644
--- a/Master/texmf-dist/tex/latex/tablvar/tablvar.sty
+++ b/Master/texmf-dist/tex/latex/tablvar/tablvar.sty
@@ -8,7 +8,7 @@
%%
%% This is a generated file.
%%
-%% Copyright (C) 2018-2023 by Antoine Missier <antoine.missier@ac-toulouse.fr>
+%% Copyright (C) 2018-2024 by Antoine Missier <antoine.missier@ac-toulouse.fr>
%%
%% This file may be distributed and/or modified under the conditions of
%% the LaTeX Project Public License, either version 1.3 of this license
@@ -22,13 +22,12 @@
%%
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
\ProvidesPackage{tablvar}
- [2023/12/23 v2.0 .dtx tablvar file]
-
+ [2024/08/09 v2.1 Tables of signs and variations]
\RequirePackage{array}
\RequirePackage{ifthen}
\RequirePackage{multido}
\RequirePackage{xkeyval}
-\RequirePackage{ifpdf}
+\RequirePackage{iftex}
\newif\iftv@tikz % false par défaut
\DeclareOption{tikz}{\tv@tikztrue}
@@ -38,23 +37,31 @@
\iftv@pstricks
\ifpdf
- \PackageError{tablvar}{Don't use the pstricks option with PDF engines}{}
+ \ifluatex
+ \PackageInfo{tablvar}{Option 'pstricks' works
+ with luapstricks}
+ \else
+ \PackageError{tablvar}{Don't use the 'pstricks' option with
+ PDF output mode}{Use 'tikz' option or change the engine}
+ \fi
\else
- \PackageInfo{tablvar}{PSTricks option is used}
+ \PackageInfo{tablvar}{Option 'pstricks' is used}
\fi
\else\iftv@tikz
- \PackageInfo{tablvar}{tikz option is used.
+ \AtEndDocument{\PackageWarningNoLine{tablvar}{Option 'tikz' is used.
\MessageBreak
- Run twice to draw the arrows correctly}
+ Maybe rerun to draw the arrows correctly}
+ }
\else\ifpdf
- \PackageWarningNoLine{tablvar}{PDF engine is used,
- I'm using the tikz option.
+ \AtEndDocument{\PackageWarningNoLine{tablvar}{Output is in PDF mode,
+ I'm using the 'tikz' option.
\MessageBreak
- Run twice to draw the arrows correctly}
+ Maybe rerun to draw the arrows correctly}
+ }
\tv@tikztrue
\else
- \PackageWarningNoLine{tablvar}{PDF engines not used,
- I'm using the pstricks option}
+ \PackageWarningNoLine{tablvar}{Output is in DVI mode,
+ I'm using the 'pstricks' option}
\tv@pstrickstrue
\fi\fi\fi
@@ -120,6 +127,12 @@
\newcounter{maxdiscont}
\setcounter{maxdiscont}{4} % nb max de discontinuités
+\newlength{\rowtopsep}
+\setlength{\rowtopsep}{2pt}
+
+\newlength{\rowbottomsep}
+\setlength{\rowbottomsep}{2pt}
+
\newcommand*{\fleche}[2]{
\iftv@tikz
\tikz[remember picture,overlay]{\draw[->,>=stealth,
@@ -182,8 +195,8 @@
\multido{\I=1+1}{\themaxdiscont}{\newcounter{discont\I}}
}
-\newlength\mil@heightshift
-\newcounter{mil@rowshift}
+\newlength\mil@shift
+\newcounter{mil@row}
\newcounter{maxZI} % nb max de ZI
\setcounter{maxZI}{4}
@@ -225,19 +238,20 @@
\setcounter{nbvarlignes}{3}
}
-\newcommand\tv@saveheight{%
- \tv@cellheight=0pt
- \tv@celldepth=0pt
- \ifdim \ht\tv@cellbox > \ht\@arstrutbox
- \global\advance\tv@cellheight by \ht\tv@cellbox
- \else
- \global\advance\tv@cellheight by \ht\@arstrutbox
+\newcommand\tv@setheight{%
+ \global\tv@cellheight=\ht\tv@cellbox
+ \ifthenelse{\value{var@ligne}=0}{
+ \global\advance\tv@cellheight by \rowtopsep}{}
+ \ifdim \tv@cellheight < \ht\@arstrutbox
+ \global\tv@cellheight = \ht\@arstrutbox
\fi
- \ifdim \dp\tv@cellbox > \dp\@arstrutbox
- \global\advance\tv@celldepth by \dp\tv@cellbox
- \else
- \global\advance\tv@celldepth by \dp\@arstrutbox
+ \global\tv@celldepth=\dp\tv@cellbox
+ \ifthenelse{\value{var@ligne}=0}{
+ \global\advance \tv@celldepth by \rowbottomsep}{}
+ \ifdim \tv@celldepth < \dp\@arstrutbox
+ \global\tv@celldepth = \dp\@arstrutbox
\fi
+ \vrule height \tv@cellheight depth \tv@celldepth width 0pt
}
\newcommand{\tvcoltypes}{
@@ -246,7 +260,7 @@
>{\setcounter{tv@icol}{0}\stepcounter{tv@row}\begin{lrbox}%
\tv@cellbox $}%
c%
- <{$\end{lrbox}\usebox{\tv@cellbox}\tv@saveheight}}
+ <{$\end{lrbox}\usebox{\tv@cellbox}\tv@setheight}}
% type de colonne i pour les intervalles
\newcolumntype{i}{>{\stepcounter{tv@icol}
\centering\arraybackslash$}p{\intervalwidth}<{$}}
@@ -262,8 +276,8 @@
\setkeys*{tablvar}{#1} % fourni par xkeyval
\if\XKV@rm\empty \else \setlength{\intervalwidth}{#1} \fi
\tvcoltypes
- \ifextleft \newcolumntype{B}{v{l}} \else \newcolumntype{B}{v{c}} \fi
- \ifextright \newcolumntype{E}{v{r}} \else \newcolumntype{E}{v{c}} \fi
+ \ifextleft\newcolumntype{B}{v{l}}\else\newcolumntype{B}{v{c}}\fi
+ \ifextright\newcolumntype{E}{v{r}}\else\newcolumntype{E}{v{c}}\fi
\tablvarinit{#2}
\ZIinit
\begin{array}{%
@@ -296,7 +310,6 @@
\newcommand*{\variations}[2][3]{% #1=nblignes (3 par défaut)
% (ré)initialisation des compteurs
\setcounter{nbvarlignes}{#1}
- \setcounter{var@ligne}{0}
\setcounter{numdiscont}{0}
\multido{\I=1+1}{\themaxdiscont}{\setcounter{discont\I}{0}}
% boucle : on exécute le code #2 un nb de fois égal à (#1)-1
@@ -323,6 +336,7 @@
}
% tracé des pointillés pour les valeurs remarquables
\multido{\Ix=1+1}{\thenumvr}{\vrconnect{X\Ix}{Y\Ix}}
+ \setcounter{var@ligne}{0}
\\ % dernier retour ligne du tableau
}
@@ -355,13 +369,17 @@
\newcommand*{\vdecal}[2]{\smash{\raisebox{#1}{$#2$}}}
\newcommand*{\mil}[1]{%
- \mil@heightshift = \ht\@arstrutbox
- \advance\mil@heightshift by \dp\@arstrutbox
- \divide\mil@heightshift by 2
- \setcounter{mil@rowshift}{3}
- \addtocounter{mil@rowshift}{-\value{nbvarlignes}}
- \multiply\mil@heightshift by \value{mil@rowshift}
- \pos*{2}{\vdecal{\mil@heightshift}{#1}}
+ \setcounter{mil@row}{\value{nbvarlignes}}
+ \ifthenelse{\isodd{\value{nbvarlignes}}}{
+ \addtocounter{mil@row}{1}
+ \divide\value{mil@row} by 2
+ \pos*{\themil@row}{\smash{#1}}
+ }{
+ \divide\value{mil@row} by 2
+ \mil@shift = \dp\@arstrutbox
+ \advance\mil@shift by 0.5ex
+ \pos*{\themil@row}{\vdecal{-\mil@shift}{#1}}
+ }
}
\newcommand*{\barre}[1][]{\makebox[0pt]{$#1$}%
@@ -372,8 +390,26 @@
\kern1.5pt\vrule width \bbrulewidth\kern1pt
\vrule width \bbrulewidth\kern1.5pt}
-\newcommand*{\limg}[3][c]{\zbox[r]{\valpos[#1]{#2}{#3\hspace{\limsep}}}}
-\newcommand*{\limd}[3][c]{\zbox[l]{\valpos[#1]{#2}{\hspace{\limsep}#3}}}
+\newcommand*{\@limg}[3][c]{%
+ \zbox[r]{\valpos[#1]{#2}{#3\hspace{\limsep}}}}
+\newcommand*{\@limd}[3][c]{%
+ \zbox[l]{\valpos[#1]{#2}{\hspace{\limsep}#3}}}
+\newcommand*{\@@limg}[1]{%
+ \ifthenelse{\equal{#1}{+}}{\@limg{1}{+\infty}}{
+ \ifthenelse{\equal{#1}{-}}{\@limg{\value{nbvarlignes}}{-\infty}}{
+ \PackageError{tablvar}{Invalid argument for \string\limg*}
+ {Only + or - are valid arguments for \string\limg*}
+ }}
+}
+\newcommand*{\@@limd}[1]{%
+ \ifthenelse{\equal{#1}{+}}{\@limd{1}{+\infty}}{
+ \ifthenelse{\equal{#1}{-}}{\@limd{\value{nbvarlignes}}{-\infty}}{
+ \PackageError{tablvar}{Invalid argument for \string\limd*}
+ {Only + or - are valid arguments for \string\limd*}
+ }}
+}
+\newcommand{\limg}{\@ifstar{\@@limg}{\@limg}}
+\newcommand{\limd}{\@ifstar{\@@limd}{\@limd}}
\newcommand*{\discont}{
\ifthenelse{\thevar@ligne=1}{
@@ -392,7 +428,9 @@
}{}
}
-\newcommand*{\bblim}[4]{\limg{#1}{#2}\bb\discont\limd{#3}{#4}}
+\newcommand*{\@bblim}[4]{\limg{#1}{#2}\bb\discont\limd{#3}{#4}}
+\newcommand*{\@@bblim}[2]{\limg*{#1}\bb\discont\limd*{#2}}
+\newcommand*{\bblim}{\@ifstar{\@@bblim}{\@bblim}}
\newcommand*{\vr}[2][2]{% ligne 2 par défaut sauf si tv@row=1
\stepcounter{numvr}
diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-base.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-base.sty
index 8f712c5b367..a6f4347d43a 100644
--- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-base.sty
+++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-base.sty
@@ -25,7 +25,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: tagpdf.dtx
-\ProvidesExplPackage {tagpdf-base} {2024-06-20} {0.99c}
+\ProvidesExplPackage {tagpdf-base} {2024-09-16} {0.99f}
{part of tagpdf - provide base, no-op versions of the user commands }
\cs_new_protected:Npn \__tag_whatsits: {}
\AddToHook{begindocument}
@@ -39,36 +39,14 @@
\cs_set_protected:Npn \__tag_whatsits: {\tex_special:D {} }
}
}
-\cs_if_free:NT \pdf_object_new_indexed:nn
- {
- \cs_generate_variant:Nn \pdf_object_new:n {e}
- \cs_generate_variant:Nn \pdf_object_write:nnn {enn}
- \cs_new_protected:Npn \pdf_object_new_indexed:nn #1 #2
- {
- \pdf_object_new:e {#1/\int_eval:n{#2}}
- }
- \cs_new_protected:Npn \pdf_object_write_indexed:nnnn #1 #2 #3 #4
- {
- \pdf_object_write:enn {#1/\int_eval:n{#2}}{#3}{#4}
- }
- \cs_generate_variant:Nn \pdf_object_write_indexed:nnnn {nnne}
- \cs_new:Npn\pdf_object_ref_indexed:nn #1 #2
- {
- \pdf_object_ref:e {#1/\int_eval:n{#2}}
- }
- \cs_new:Npn \__kernel_pdf_object_id_indexed:nn #1 #2
- {
- \int_use:c
- { c__pdf_object_ #1/\int_eval:n{#2} _int }
- }
- }
-
\cs_new_protected:Npn \tag_stop:{}
\cs_new_protected:Npn \tag_start:{}
\cs_new_protected:Npn \tagstop{}
\cs_new_protected:Npn \tagstart{}
\cs_new_protected:Npn \tag_stop:n #1 {}
\cs_new_protected:Npn \tag_start:n #1 {}
+\cs_set_eq:NN \tag_suspend:n \tag_stop:n
+\cs_set_eq:NN \tag_resume:n \tag_start:n
%% File: tagpdf-mc-generic.dtx
\cs_new_protected:Npn \tag_mc_begin:n #1 { \__tag_whatsits: \int_gincr:N \c@g__tag_MCID_abs_int }
\cs_new_protected:Nn \tag_mc_end:{ \__tag_whatsits: }
@@ -106,6 +84,7 @@
\cs_new_protected:Npn \tag_struct_end:n{}
\cs_new_protected:Npn \tag_struct_use:n #1 {}
\cs_new_protected:Npn \tag_struct_use_num:n #1 {}
+\cs_new_protected:Npn \tag_struct_gput:nnn #1 #2 #3{}
%% File: tagpdf-checks.dtx
diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-generic.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-generic.sty
index 0b49140d300..10b9399ba38 100644
--- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-generic.sty
+++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-generic.sty
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: tagpdf-mc-generic.dtx
-\ProvidesExplPackage {tagpdf-debug-generic} {2024-06-20} {0.99c}
+\ProvidesExplPackage {tagpdf-debug-generic} {2024-09-16} {0.99f}
{part of tagpdf - debugging code related to marking chunks - generic mode}
\cs_set_protected:Npn \tag_mc_begin:n #1 %#1 keyval
{
diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-lua.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-lua.sty
index 4b6836ea134..104228a144e 100644
--- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-lua.sty
+++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug-lua.sty
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: tagpdf-mc-luacode.dtx
-\ProvidesExplPackage {tagpdf-debug-lua} {2024-06-20} {0.99c}
+\ProvidesExplPackage {tagpdf-debug-lua} {2024-09-16} {0.99f}
{part of tagpdf - debugging code related to marking chunks - lua mode}
\cs_set_protected:Npn \__tag_mc_handle_stash:n #1 %1 mcidnum
{
diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug.sty
index b3fd520713b..198c0be0c0a 100644
--- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug.sty
+++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-debug.sty
@@ -26,38 +26,14 @@
%% and all files in that bundle must be distributed together.
%%
%% File: tagpdf.dtx
-\ProvidesExplPackage {tagpdf-debug} {2024-06-20} {0.99c}
+\ProvidesExplPackage {tagpdf-debug} {2024-09-16} {0.99f}
{ debug code for tagpdf }
\@ifpackageloaded{tagpdf}{}{\PackageWarning{tagpdf-debug}{tagpdf~not~loaded,~quitting}\endinput}
\prop_gput:Nnn \g_msg_module_type_prop { tag / debug} {}
\prop_gput:Nnn \g_msg_module_name_prop { tag / debug }{tagpdf~DEBUG}
-\cs_if_free:NT \pdf_object_new_indexed:nn
- {
- \cs_generate_variant:Nn \pdf_object_new:n {e}
- \cs_generate_variant:Nn \pdf_object_write:nnn {enn}
- \cs_new_protected:Npn \pdf_object_new_indexed:nn #1 #2
- {
- \pdf_object_new:e {#1/\int_eval:n{#2}}
- }
- \cs_new_protected:Npn \pdf_object_write_indexed:nnnn #1 #2 #3 #4
- {
- \pdf_object_write:enn {#1/\int_eval:n{#2}}{#3}{#4}
- }
- \cs_generate_variant:Nn \pdf_object_write_indexed:nnnn {nnne}
- \cs_new:Npn\pdf_object_ref_indexed:nn #1 #2
- {
- \pdf_object_ref:e {#1/\int_eval:n{#2}}
- }
- \cs_new:Npn \__kernel_pdf_object_id_indexed:nn #1 #2
- {
- \int_use:c
- { c__pdf_object_ #1/\int_eval:n{#2} _int }
- }
- }
-
\cs_set_protected:Npn \tag_stop:
{
- \msg_note:nne {tag / debug }{tag-stop}{ \int_use:N \l__tag_tag_stop_int }
+ \msg_note:nne {tag / debug }{tag-suspend}{ \int_use:N \l__tag_tag_stop_int }
\int_incr:N \l__tag_tag_stop_int
\bool_set_false:N \l__tag_active_struct_bool
\bool_set_false:N \l__tag_active_mc_bool
@@ -74,20 +50,22 @@
\bool_set_true:N \l__tag_active_socket_bool
\__tag_start_para_ints:
}
- \msg_note:nne {tag / debug }{tag-start}{ \int_use:N \l__tag_tag_stop_int }
+ \msg_note:nne {tag / debug }{tag-resume}{ \int_use:N \l__tag_tag_stop_int }
}
\cs_set_eq:NN\tagstop\tag_stop:
\cs_set_eq:NN\tagstart\tag_start:
-\cs_set_protected:Npn \tag_stop:n #1
+\cs_set_protected:Npn \tag_suspend:n #1
{
- \msg_note:nnee {tag / debug }{tag-stop}{ \int_use:N \l__tag_tag_stop_int }{#1}
+ \msg_note:nnee {tag / debug }{tag-suspend}
+ { \int_use:N \l__tag_tag_stop_int }{\exp_not:n{#1}}
\int_incr:N \l__tag_tag_stop_int
\bool_set_false:N \l__tag_active_struct_bool
\bool_set_false:N \l__tag_active_mc_bool
\bool_set_false:N \l__tag_active_socket_bool
\__tag_stop_para_ints:
}
-\cs_set_protected:Npn \tag_start:n #1
+\cs_set_eq:NN \tag_stop:n \tag_suspend:n
+\cs_set_protected:Npn \tag_resume:n #1
{
\int_if_zero:nF { \l__tag_tag_stop_int } { \int_decr:N \l__tag_tag_stop_int }
\int_if_zero:nT { \l__tag_tag_stop_int }
@@ -97,8 +75,10 @@
\bool_set_true:N \l__tag_active_socket_bool
\__tag_start_para_ints:
}
- \msg_note:nnee {tag / debug }{tag-start}{ \int_use:N \l__tag_tag_stop_int }{#1}
+ \msg_note:nnee {tag / debug }{tag-resume}
+ { \int_use:N \l__tag_tag_stop_int }{\exp_not:n{#1}}
}
+\cs_set_eq:NN \tag_start:n \tag_resume:n
\bool_if:NTF \g__tag_mode_lua_bool
{
\RequirePackage {tagpdf-debug-lua}
@@ -217,20 +197,20 @@
}
}
}
-\msg_new:nnn { tag / debug } {tag-stop}
+\msg_new:nnn { tag / debug } {tag-suspend}
{
\int_if_zero:nTF
{#1}
- {Tagging~stopped}
- {Tagging~(not)~stopped~(already~inactive)}\\
+ {Tagging~suspended}
+ {Tagging~(not)~suspended~(already~inactive)}\\
level:~#1~==>~\int_eval:n{#1+1}\tl_if_empty:nF{#2}{,~label:~#2}~[\msg_line_context:]
}
-\msg_new:nnn { tag / debug } {tag-start}
+\msg_new:nnn { tag / debug } {tag-resume}
{
\int_if_zero:nTF
{#1}
- {Tagging~restarted}
- {Tagging~(not)~restarted}\\
+ {Tagging~resumed}
+ {Tagging~(not)~resumed}\\
level:~\int_eval:n{#1+1}~==>~#1\tl_if_empty:nF{#2}{,~label:~#2}~[\msg_line_context:]
}
%% File: tagpdf-user.dtx
@@ -285,7 +265,7 @@
\seq_new:c { g__tag_struct_debug_kids_1_seq }
\prop_gset_eq:cc { g__tag_struct_debug_1_prop }{ g__tag_struct_1_prop }
\prop_gremove:cn { g__tag_struct_debug_1_prop }{Namespaces}
-\cs_set_protected:Npn \__tag_struct_kid_mc_gput_right:nn #1 #2 %#1 structure num, #2 MCID absnum%
+\cs_set_protected:Npn \__tag_struct_kid_mc_gput_right:nn #1 #2
{
\__tag_seq_gput_right:ce
{ g__tag_struct_kids_#1_seq }
@@ -303,7 +283,8 @@
\prop_item:Nn \g__tag_struct_cont_mc_prop {#2}
}
}
-\cs_set_protected:Npn\__tag_struct_kid_struct_gput_right:nn #1 #2 %#1 num of parent struct, #2 kid struct
+\cs_set_protected:Npn\__tag_struct_kid_struct_gput_right:nn #1 #2
+%%#1 num of parent struct, #2 kid struct
{
\__tag_seq_gput_right:ce
{ g__tag_struct_kids_#1_seq }
@@ -316,8 +297,22 @@
Struct~#2
}
}
-
+\cs_set_protected:Npn\__tag_struct_kid_struct_gput_left:nn #1 #2
+%%#1 num of parent struct, #2 kid struct
+ {
+ \__tag_seq_gput_left:ce
+ { g__tag_struct_kids_#1_seq }
+ {
+ \pdf_object_ref_indexed:nn { __tag/struct }{ #2 }
+ }
+ \seq_gput_left:cn
+ { g__tag_struct_debug_kids_#1_seq }
+ {
+ Struct~#2
+ }
+ }
\cs_set_protected:Npn\__tag_struct_kid_OBJR_gput_right:nnn #1 #2 #3
+%%#1 num of parent struct,#2 obj reference,#3 page object reference
{
\pdf_object_unnamed_write:nn
{ dict }
@@ -371,13 +366,6 @@
\g__tag_struct_tag_tl
\g__tag_struct_tag_NS_tl
\__tag_check_structure_has_tag:n { \int_use:N \c@g__tag_struct_abs_int }
- \tl_if_empty:NF
- \l__tag_struct_key_label_tl
- {
- \__tag_property_record:eV
- {tagpdfstruct-\l__tag_struct_key_label_tl}
- \c__tag_property_struct_clist
- }
\int_compare:nNnT { \l__tag_struct_stack_parent_tmpa_tl } = { -1 }
{
\seq_get:NNF
@@ -479,7 +467,7 @@
%record this structure as kid:
%\tl_show:N \g__tag_struct_stack_current_tl
%\tl_show:N \l__tag_struct_stack_parent_tmpa_tl
- \__tag_struct_kid_struct_gput_right:ee
+ \use:c { __tag_struct_kid_struct_gput_ \l__tag_struct_addkid_tl :ee }
{ \l__tag_struct_stack_parent_tmpa_tl }
{ \g__tag_struct_stack_current_tl }
%\prop_show:c { g__tag_struct_\g__tag_struct_stack_current_tl _prop }
@@ -554,29 +542,29 @@
\__tag_check_if_active_struct:T
{
\prop_if_exist:cTF
- { g__tag_struct_\__tag_property_ref:enn{tagpdfstruct-#1}{tagstruct}{unknown}_prop } %
+ { g__tag_struct_\property_ref:enn{tagpdfstruct-#1}{tagstruct}{unknown}_prop } %
{
\__tag_check_struct_used:n {#1}
%add the label structure as kid to the current structure (can be the root)
\__tag_struct_kid_struct_gput_right:ee
{ \g__tag_struct_stack_current_tl }
- { \__tag_property_ref:enn{tagpdfstruct-#1}{tagstruct}{1} }
+ { \property_ref:enn{tagpdfstruct-#1}{tagstruct}{1} }
%add the current structure to the labeled one as parents
\__tag_prop_gput:cne
- { g__tag_struct_\__tag_property_ref:enn{tagpdfstruct-#1}{tagstruct}{1}_prop }
+ { g__tag_struct_\property_ref:enn{tagpdfstruct-#1}{tagstruct}{1}_prop }
{ P }
{
\pdf_object_ref_indexed:nn { __tag/struct } { \g__tag_struct_stack_current_tl }
}
\prop_gput:cne
- { g__tag_struct_debug_\__tag_property_ref:enn{tagpdfstruct-#1}{tagstruct}{1}_prop }
+ { g__tag_struct_debug_\property_ref:enn{tagpdfstruct-#1}{tagstruct}{1}_prop }
{ P }
{
parent~structure:~\g__tag_struct_stack_current_tl\c_space_tl=~
\g__tag_struct_tag_tl
}
\__tag_struct_get_parentrole:eNN
- {\__tag_property_ref:enn{tagpdfstruct-#1}{tagstruct}{1}}
+ {\property_ref:enn{tagpdfstruct-#1}{tagstruct}{1}}
\l__tag_tmpa_tl
\l__tag_tmpb_tl
\__tag_check_parent_child:VVVVN
diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def
index 09846bc0b56..9782383e677 100644
--- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def
+++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: tagpdf-backend.dtx
-\ProvidesExplFile {tagpdf-luatex.def} {2024-06-20} {0.99c}
+\ProvidesExplFile {tagpdf-luatex.def} {2024-09-16} {0.99f}
{tagpdf~driver~for~luatex}
{
\fontencoding{TU}\fontfamily{lmr}\fontseries{m}\fontshape{n}\fontsize{10pt}{10pt}\selectfont
@@ -46,7 +46,7 @@
\cs_set_protected:Npn \__tag_prop_gput:Nnn #1 #2 #3
{
\prop_gput:Nnn #1 { #2 } { #3 }
- \lua_now:e { ltx.__tag.tables.\cs_to_str:N#1 ["#2"] = "#3" }
+ \lua_now:e { ltx.__tag.tables.\cs_to_str:N#1 ["#2"] = "\lua_escape:n{#3}" }
}
\cs_set_protected:Npn \__tag_seq_gput_right:Nn #1 #2
@@ -54,7 +54,11 @@
\seq_gput_right:Nn #1 { #2 }
\lua_now:e { table.insert(ltx.__tag.tables.\cs_to_str:N#1, "#2") }
}
-
+\cs_set_protected:Npn \__tag_seq_gput_left:Nn #1 #2
+ {
+ \seq_gput_left:Nn #1 { #2 }
+ \lua_now:e { table.insert(ltx.__tag.tables.\cs_to_str:N#1, "#2") }
+ }
\cs_set:Npn \__tag_seq_item:cn #1 #2
{
diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-generic.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-generic.sty
index ca704be6e82..e15b161e45a 100644
--- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-generic.sty
+++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-generic.sty
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: tagpdf-mc-generic.dtx
-\ProvidesExplPackage {tagpdf-mc-code-generic} {2024-06-20} {0.99c}
+\ProvidesExplPackage {tagpdf-mc-code-generic} {2024-09-16} {0.99f}
{part of tagpdf - code related to marking chunks - generic mode}
\tl_new:N \l__tag_mc_ref_abspage_tl
@@ -276,14 +276,14 @@
\__tag_prop_new:N \g__tag_MCID_byabspage_prop
\int_new:N \g__tag_MCID_tmp_bypage_int
\cs_generate_variant:Nn \__tag_mc_bdc:nn {ne}
- \__tag_property_gset:nnnn {tagmcid } { now }
+ \property_gset:nnnn {tagmcid } { now }
{0} { \int_use:N \g__tag_MCID_tmp_bypage_int }
\cs_new_protected:Npn \__tag_mc_bdc_mcid:nn #1 #2
{
\int_gincr:N \c@g__tag_MCID_abs_int
\tl_set:Ne \l__tag_mc_ref_abspage_tl
{
- \__tag_property_ref:enn %3 args
+ \property_ref:enn %3 args
{
mcid-\int_use:N \c@g__tag_MCID_abs_int
}
diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-lua.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-lua.sty
index 1057a7bc678..cdaa00d7421 100644
--- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-lua.sty
+++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-lua.sty
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: tagpdf-mc-luacode.dtx
-\ProvidesExplPackage {tagpdf-mc-code-lua} {2024-06-20} {0.99c}
+\ProvidesExplPackage {tagpdf-mc-code-lua} {2024-09-16} {0.99f}
{tagpdf - mc code only for the luamode }
\hook_gput_code:nnn{begindocument}{tagpdf/mc}
{
diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-book.def b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-book.def
index 19dac1571b8..1e3f6a621f0 100644
--- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-book.def
+++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex-book.def
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-ns-latex-book.def} {2024-06-20} {0.99c}
+%% \ProvidesExplFile {tagpdf-ns-latex-book.def} {2024-09-16} {0.99f}
%% {latex-book} {https://www.latex-project.org/ns/book/2022}{}
chapter, H1,pdf2,
section, H2,pdf2,
diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex.def b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex.def
index 4b51be0e8d7..23ed98ec64e 100644
--- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex.def
+++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-latex.def
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-ns-latex.def} {2024-06-20} {0.99c}
+%% \ProvidesExplFile {tagpdf-ns-latex.def} {2024-09-16} {0.99f}
%% {latex} {https://www.latex-project.org/ns/dflt/2022}{}
title, Title, pdf2,
part, Title, pdf2,
diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-mathml.def b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-mathml.def
index bca7660ca53..89c8e7192d8 100644
--- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-mathml.def
+++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-mathml.def
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2024-06-20} {0.99c}
+%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2024-09-16} {0.99f}
abs,abs,mathml,
and,and,mathml,
annotation,annotation,mathml,
diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf.def b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf.def
index 2e2ccc6c45f..013cd0a2e91 100644
--- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf.def
+++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf.def
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-ns-pdf.def} {2024-06-20} {0.99c}
+%% \ProvidesExplFile {tagpdf-ns-pdf.def} {2024-09-16} {0.99f}
%% {pdf} {http://iso.org/pdf/ssn}{}
StructTreeRoot,StructTreeRoot,pdf,D,
Document,Document,pdf,D,
diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf2.def b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf2.def
index b5cb091a716..f00b99a5632 100644
--- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf2.def
+++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-ns-pdf2.def
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-ns-pdf2.def} {2024-06-20} {0.99c}
+%% \ProvidesExplFile {tagpdf-ns-pdf2.def} {2024-09-16} {0.99f}
%% {pdf2} {http://iso.org/pdf2/ssn}{}
StructTreeRoot,StructTreeRoot,pdf2,D,
Document,Document,pdf2,D,
diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child-2.csv b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child-2.csv
index b0495a598c1..29dc81f79f4 100644
--- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child-2.csv
+++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child-2.csv
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2024-06-20} {0.99c}
+%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2024-09-16} {0.99f}
,,,StructTreeRoot,Document,DocumentFragment,Art,Part,Div,Sect,Aside,BlockQuote,NonStruct,TOC,TOCI,Index,Private,Title,Sub,Quote,Note,Reference,BibEntry,P,Hn,H,Lbl,Code,Em,Strong,Span,Link,Annot,Form,Ruby,RB,RT,RP,Warichu,WT,WP,FENote,L,LI,LBody,Table,TR,TH,TD,THead,TBody,TFoot,Caption,Figure,Formula,math,mathml,Artifact,MC
Document,both,document level,1,0..n,0..n,∅,‡,‡,∅,0..n,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,0..n,∅
DocumentFragment,2.0,document level,∅,0..n,0..n,0..n,‡,‡,0..n,0..n,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅*,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅*,∅*,∅,∅,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅,0..n,∅
diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child.csv b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child.csv
index c3b120e5d5a..38f5c33947c 100644
--- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child.csv
+++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-parent-child.csv
@@ -19,7 +19,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: tagpdf-data.dtx
-%% \ProvidesExplFile {tagpdf-parent-child.csv} {2024-06-20} {0.99c}
+%% \ProvidesExplFile {tagpdf-parent-child.csv} {2024-09-16} {0.99f}
,,,StructTreeRoot,Document,Art,Part,Div,Sect,BlockQuote,NonStruct,TOC,TOCI,Index,Private,Quote,Note,Reference,BibEntry,P,Hn,H,Lbl,Code,Span,Link,Annot,Form,Ruby,RB,RT,RP,Warichu,WT,WP,L,LI,LBody,Table,TR,TH,TD,THead,TBody,TFoot,Caption,Figure,Formula,MC
Document,both,document level,1,0..n,∅,‡,‡,∅,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅
Art,1.7,grouping,∅,0..n,∅,‡,‡,0..n,0..n,‡,∅,∅,∅,0..n,∅,0..n,∅,∅,∅,0..1,0..1,∅,∅,∅,0..n,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,0..n,∅,∅,0..n,0..n,∅,∅,∅,0..n,0..n,∅,∅
diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf.lua b/Master/texmf-dist/tex/latex/tagpdf/tagpdf.lua
index 425dd8120f1..5aec9d346da 100644
--- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf.lua
+++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf.lua
@@ -24,8 +24,8 @@
local ProvidesLuaModule = {
name = "tagpdf",
- version = "0.99c", --TAGVERSION
- date = "2024-06-20", --TAGDATE
+ version = "0.99f", --TAGVERSION
+ date = "2024-09-16", --TAGDATE
description = "tagpdf lua code",
license = "The LATEX Project Public License 1.3c"
}
@@ -90,6 +90,8 @@ local iwspaceattributeid = luatexbase.new_attribute ("g__tag_interwordspace_attr
local iwfontattributeid = luatexbase.new_attribute ("g__tag_interwordfont_attr")
local tagunmarkedbool= token.create("g__tag_tagunmarked_bool")
local truebool = token.create("c_true_bool")
+local softhyphenbool = token.create("g__tag_softhyphen_bool")
+
local catlatex = luatexbase.registernumber("catcodetable@latex")
local tableinsert = table.insert
local nodeid = node.id
@@ -121,6 +123,9 @@ local KERN = node.id("kern")
local PENALTY = node.id("penalty")
local LOCAL_PAR = node.id("local_par")
local MATH = node.id("math")
+
+local explicit_disc = 1
+local regular_disc = 3
ltx = ltx or { }
ltx.__tag = ltx.__tag or { }
ltx.__tag.mc = ltx.__tag.mc or { } -- mc data
@@ -826,5 +831,53 @@ function ltx.__tag.func.output_parenttree (abspage)
tex.sprint(catlatex,line)
end
end
+do
+ local properties = node.get_properties_table()
+ local is_soft_hyphen_prop = 'tagpdf.rewrite-softhyphen.is_soft_hyphen'
+ local hyphen_char = 0x2D
+ local soft_hyphen_char = 0xAD
+ local softhyphen_fonts = setmetatable({}, {__index = function(t, fid)
+ local fdir = identifiers[fid]
+ local format = fdir and fdir.format
+ local result = (format == 'opentype' or format == 'truetype')
+ local characters = fdir and fdir.characters
+ result = result and (characters and characters[soft_hyphen_char]) ~= nil
+ t[fid] = result
+ return result
+ end})
+ local function process_softhyphen_pre(head, _context, _dir)
+ if softhyphenbool.mode ~= truebool.mode then return true end
+ for disc, sub in node.traverse_id(DISC, head) do
+ if sub == explicit_disc or sub == regular_disc then
+ for n, _ch, _f in node.traverse_char(disc.pre) do
+ local props = properties[n]
+ if not props then
+ props = {}
+ properties[n] = props
+ end
+ props[is_soft_hyphen_prop] = true
+ end
+ end
+ end
+ return true
+ end
+
+ local function process_softhyphen_post(head, _context, _dir)
+ if softhyphenbool.mode ~= truebool.mode then return true end
+ for disc, sub in node.traverse_id(DISC, head) do
+ for n, ch, fid in node.traverse_glyph(disc.pre) do
+ local props = properties[n]
+ if softhyphen_fonts[fid] and ch == hyphen_char and props and props[is_soft_hyphen_prop] then
+ n.char = soft_hyphen_char
+ props.glyph_info = nil
+ end
+ end
+ end
+ return true
+ end
+
+ luatexbase.add_to_callback('pre_shaping_filter', process_softhyphen_pre, 'tagpdf.rewrite-softhyphen')
+ luatexbase.add_to_callback('post_shaping_filter', process_softhyphen_post, 'tagpdf.rewrite-softhyphen')
+end
--
-- End of File `tagpdf.lua'.
diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty
index 1688cdf6478..2f85934f312 100644
--- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty
+++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty
@@ -28,8 +28,8 @@
%% and all files in that bundle must be distributed together.
%%
%% File: tagpdf.dtx
-\ProvidesExplPackage {tagpdf} {2024-06-20} {0.99c}
- { A package to experiment with pdf tagging }
+\ProvidesExplPackage {tagpdf} {2024-09-16} {0.99f}
+ { LaTeX kernel code for PDF tagging }
\bool_if:nF
{
@@ -65,30 +65,23 @@
\ExecuteOptions{luamode}
\ProcessOptions
\RequirePackage{tagpdf-base}
-\cs_if_free:NT \pdf_object_new_indexed:nn
- {
- \cs_generate_variant:Nn \pdf_object_new:n {e}
- \cs_generate_variant:Nn \pdf_object_write:nnn {enn}
- \cs_new_protected:Npn \pdf_object_new_indexed:nn #1 #2
- {
- \pdf_object_new:e {#1/\int_eval:n{#2}}
- }
- \cs_new_protected:Npn \pdf_object_write_indexed:nnnn #1 #2 #3 #4
- {
- \pdf_object_write:enn {#1/\int_eval:n{#2}}{#3}{#4}
- }
- \cs_generate_variant:Nn \pdf_object_write_indexed:nnnn {nnne}
- \cs_new:Npn\pdf_object_ref_indexed:nn #1 #2
- {
- \pdf_object_ref:e {#1/\int_eval:n{#2}}
- }
- \cs_new:Npn \__kernel_pdf_object_id_indexed:nn #1 #2
- {
- \int_use:c
- { c__pdf_object_ #1/\int_eval:n{#2} _int }
- }
- }
-
+\AddToHook{package/latex-lab-testphase-new-or-2/after}
+ {
+ \cs_set_protected:Npn \__fnote_gput_ref:nn #1 #2 %#1 the structure number receiving the ref #2
+ {
+ \tag_struct_gput:nnn {#1}{ref_num}{#2}
+ }
+ }
+\AddToHook{package/latex-lab-testphase-toc/after}
+ {
+ \cs_set_protected:Npn \g__tag_struct_ref_by_dest:
+ {
+ \prop_map_inline:Nn\g__tag_struct_ref_by_dest_prop
+ {
+ \tag_struct_gput:nnn {##1}{ref_dest}{##2}
+ }
+ }
+ }
\cs_new_protected:Npn \__tag_lastpagelabel:
{
\legacy_if:nT { @filesw }
@@ -110,6 +103,7 @@
{\__tag_lastpagelabel:}
\tl_new:N \l__tag_tmpa_tl
\tl_new:N \l__tag_tmpb_tl
+\tl_new:N \l__tag_Ref_tmpa_tl
\tl_new:N \l__tag_get_tmpc_tl
\tl_new:N \l__tag_get_parent_tmpa_tl
\tl_new:N \l__tag_get_parent_tmpb_tl
@@ -137,6 +131,7 @@
\bool_set_true:N \l__tag_active_struct_bool
\bool_new:N \l__tag_active_socket_bool
\bool_new:N \g__tag_tagunmarked_bool
+\bool_new:N \g__tag_softhyphen_bool
\prg_generate_conditional_variant:Nnn \pdf_object_if_exist:n {e}{T,F,TF}
\cs_generate_variant:Nn \pdf_object_ref:n {e}
\cs_generate_variant:Nn \pdfannot_dict_put:nnn {nne}
@@ -147,10 +142,6 @@
\cs_generate_variant:Nn \seq_set_split:Nnn{Nne} %** unneeded
\cs_generate_variant:Nn \str_set_convert:Nnnn {Nonn, Noon, Nnon }
\cs_generate_variant:Nn \clist_map_inline:nn {on}
- \cs_new_eq:NN \__tag_property_new:nnnn \property_new:nnnn
- \cs_new_eq:NN \__tag_property_gset:nnnn \property_gset:nnnn
- \cs_new_eq:NN \__tag_property_ref:nnn \property_ref:nnn
- \cs_new_eq:NN \__tag_property_ref:nn \property_ref:nn
\cs_new_protected:Npn \__tag_property_record:nn #1#2
{
\@bsphack
@@ -158,29 +149,29 @@
\@esphack
}
-\cs_generate_variant:Nn \__tag_property_ref:nnn {enn}
-\cs_generate_variant:Nn \__tag_property_ref:nn {en}
+\cs_generate_variant:Nn \property_ref:nnn {enn}
+\cs_generate_variant:Nn \property_ref:nn {en}
\cs_generate_variant:Nn \__tag_property_record:nn {en,eV}
\cs_new:Npn \__tag_property_ref_lastpage:nn #1 #2
{
- \__tag_property_ref:nnn {@tag@LastPage}{#1}{#2}
+ \property_ref:nnn {@tag@LastPage}{#1}{#2}
}
-\__tag_property_new:nnnn
+\property_new:nnnn
{ tagstruct } { now }
- {0} { \int_use:N \c@g__tag_struct_abs_int }
-\__tag_property_new:nnnn { tagstructobj } { now } {}
+ {1} { \int_use:N \c@g__tag_struct_abs_int }
+\property_new:nnnn { tagstructobj } { now } {}
{
\pdf_object_ref_indexed:nn { __tag/struct } { \c@g__tag_struct_abs_int }
}
-\__tag_property_new:nnnn
+\property_new:nnnn
{ tagabspage } { shipout }
{0} { \int_use:N \g_shipout_readonly_int }
-\__tag_property_new:nnnn { tagmcabs } { now }
+\property_new:nnnn { tagmcabs } { now }
{0} { \int_use:N \c@g__tag_MCID_abs_int }
\flag_new:n { __tag/mcid }
-\__tag_property_new:nnnn {tagmcid } { shipout }
+\property_new:nnnn {tagmcid } { shipout }
{0} { \flag_height:n { __tag/mcid } }
@@ -189,12 +180,14 @@
\cs_set_eq:NN \__tag_seq_new:N \seq_new:N
\cs_set_eq:NN \__tag_prop_gput:Nnn \prop_gput:Nnn
\cs_set_eq:NN \__tag_seq_gput_right:Nn \seq_gput_right:Nn
+\cs_set_eq:NN \__tag_seq_gput_left:Nn \seq_gput_left:Nn
\cs_set_eq:NN \__tag_seq_item:cn \seq_item:cn
\cs_set_eq:NN \__tag_prop_item:cn \prop_item:cn
\cs_set_eq:NN \__tag_seq_show:N \seq_show:N
\cs_set_eq:NN \__tag_prop_show:N \prop_show:N
\cs_generate_variant:Nn \__tag_prop_gput:Nnn { Nen , Nee, Nne , cnn, cen, cne, cno, cnx}
\cs_generate_variant:Nn \__tag_seq_gput_right:Nn { Ne , No, cn, ce }
+\cs_generate_variant:Nn \__tag_seq_gput_left:Nn { ce }
\cs_generate_variant:Nn \__tag_prop_new:N { c }
\cs_generate_variant:Nn \__tag_seq_new:N { c }
\cs_generate_variant:Nn \__tag_seq_show:N { c }
@@ -221,7 +214,7 @@
}
\cs_set_eq:NN\tagstop\tag_stop:
\cs_set_eq:NN\tagstart\tag_start:
-\cs_set_protected:Npn \tag_stop:n #1
+\cs_set_protected:Npn \tag_suspend:n #1
{
\int_incr:N \l__tag_tag_stop_int
\bool_set_false:N \l__tag_active_struct_bool
@@ -229,7 +222,8 @@
\bool_set_false:N \l__tag_active_socket_bool
\__tag_stop_para_ints:
}
-\cs_set_protected:Npn \tag_start:n #1
+\cs_set_eq:NN \tag_stop:n \tag_suspend:n
+\cs_set_protected:Npn \tag_resume:n #1
{
\int_if_zero:nF { \l__tag_tag_stop_int } { \int_decr:N \l__tag_tag_stop_int }
\int_if_zero:nT { \l__tag_tag_stop_int }
@@ -240,6 +234,7 @@
\__tag_start_para_ints:
}
}
+\cs_set_eq:NN \tag_start:n \tag_resume:n
\keys_define:nn { __tag / setup }
{
activate/mc .bool_gset:N = \g__tag_active_mc_bool,
@@ -273,6 +268,8 @@
activate/tagunmarked .bool_gset:N = \g__tag_tagunmarked_bool,
activate/tagunmarked .initial:n = true,
tagunmarked .bool_gset:N = \g__tag_tagunmarked_bool,
+ activate/softhyphen .bool_gset:N = \g__tag_softhyphen_bool,
+ activate/softhyphen .initial:n = true,
page/tabsorder .choice:,
page/tabsorder / row .code:n =
\pdfmanagement_add:nnn { Page } {Tabs}{/R},
@@ -326,6 +323,11 @@
{ structure~with~label~#1~is~unknown~rerun}
\msg_new:nnn { tag } {struct-show-closing}
{ closing~structure~#1~tagged~\use:e{\prop_item:cn{g__tag_struct_#1_prop}{S}} }
+\msg_new:nnn { tag } {struct-Ref-unknown}
+ {
+ #1~has~no~related~structure.\\
+ /Ref~not~updated.
+ }
\msg_new:nnn { tag } {tree-struct-still-open}
{
There~are~still~open~structures~on~the~stack!\\
@@ -432,7 +434,7 @@
\cs_new_protected:Npn \__tag_check_struct_used:n #1 %#1 label
{
\prop_get:cnNT
- {g__tag_struct_\__tag_property_ref:enn{tagpdfstruct-#1}{tagstruct}{unknown}_prop}
+ {g__tag_struct_\property_ref:enn{tagpdfstruct-#1}{tagstruct}{unknown}_prop}
{P}
\l__tag_tmpa_tl
{
@@ -565,7 +567,7 @@
{
\int_compare:nT
{
- \__tag_property_ref:enn
+ \property_ref:enn
{mcid-####1}
{tagabspage}
{-1}
@@ -576,7 +578,7 @@
\seq_gput_right:Ne \l_tmpa_seq
{
Page##1-####1-
- \__tag_property_ref:enn
+ \property_ref:enn
{mcid-####1}
{tagmcid}
{-1}
@@ -646,7 +648,7 @@
{
\__tag_check_if_active_struct:T
{
- \tl_set:Ne \l__tag_tmpa_tl { \__tag_property_ref:nnn{tagpdf-#1}{tagmcabs}{} }
+ \tl_set:Ne \l__tag_tmpa_tl { \property_ref:nnn{tagpdf-#1}{tagmcabs}{} }
\tl_if_empty:NTF\l__tag_tmpa_tl
{
\msg_warning:nnn {tag} {mc-label-unknown} {#1}
@@ -668,12 +670,12 @@
\tag_mc_end_push:
\tag_mc_begin:n {artifact=#1}
\group_begin:
- \tag_stop:n{artifact-group}
+ \tag_suspend:n{artifact-group}
}
\cs_set_protected:Npn \tag_mc_artifact_group_end:
{
- \tag_start:n{artifact-group}
+ \tag_resume:n{artifact-group}
\group_end:
\tag_mc_end:
\tag_mc_begin_pop:n{}
@@ -756,30 +758,6 @@
},
}
%% File: tagpdf.dtx
-\cs_if_free:NT \pdf_object_new_indexed:nn
- {
- \cs_generate_variant:Nn \pdf_object_new:n {e}
- \cs_generate_variant:Nn \pdf_object_write:nnn {enn}
- \cs_new_protected:Npn \pdf_object_new_indexed:nn #1 #2
- {
- \pdf_object_new:e {#1/\int_eval:n{#2}}
- }
- \cs_new_protected:Npn \pdf_object_write_indexed:nnnn #1 #2 #3 #4
- {
- \pdf_object_write:enn {#1/\int_eval:n{#2}}{#3}{#4}
- }
- \cs_generate_variant:Nn \pdf_object_write_indexed:nnnn {nnne}
- \cs_new:Npn\pdf_object_ref_indexed:nn #1 #2
- {
- \pdf_object_ref:e {#1/\int_eval:n{#2}}
- }
- \cs_new:Npn \__kernel_pdf_object_id_indexed:nn #1 #2
- {
- \int_use:c
- { c__pdf_object_ #1/\int_eval:n{#2} _int }
- }
- }
-
\bool_if:NTF \g__tag_mode_lua_bool
{
\RequirePackage {tagpdf-mc-code-lua}
@@ -961,11 +939,11 @@
{
%mcid####1
\int_compare:nT
- {\__tag_property_ref:enn{mcid-####1}{tagabspage}{-1}=##1} %mcid is on current page
+ {\property_ref:enn{mcid-####1}{tagabspage}{-1}=##1} %mcid is on current page
{% yes
\prop_put:Nee
\l__tag_tmpa_prop
- {\__tag_property_ref:enn{mcid-####1}{tagmcid}{-1}}
+ {\property_ref:enn{mcid-####1}{tagmcid}{-1}}
{\prop_item:Nn \g__tag_mc_parenttree_prop {####1}}
}
}
@@ -1996,8 +1974,12 @@
\tl_new:N \g__tag_struct_tag_NS_tl
\tl_new:N \l__tag_struct_roletag_tl
\tl_new:N \l__tag_struct_roletag_NS_tl
-\tl_new:N \l__tag_struct_key_label_tl
+\prop_new_linked:N \g__tag_struct_label_num_prop
+
\bool_new:N \l__tag_struct_elem_stash_bool
+\tl_new:N \l__tag_struct_addkid_tl
+\tl_set:Nn \l__tag_struct_addkid_tl {right}
+
\prop_new_linked:N \g__tag_struct_ref_by_dest_prop
\cs_new:Npn \__tag_struct_output_prop_aux:nn #1 #2 %#1 num, #2 key
{
@@ -2118,11 +2100,11 @@
/Type \c_space_tl /MCR \c_space_tl
/Pg
\c_space_tl
- \pdf_pageobject_ref:n { \__tag_property_ref:enn{mcid-#1}{tagabspage}{1} }
- /MCID \c_space_tl \__tag_property_ref:enn{mcid-#1}{tagmcid}{1}
+ \pdf_pageobject_ref:n { \property_ref:enn{mcid-#1}{tagabspage}{1} }
+ /MCID \c_space_tl \property_ref:enn{mcid-#1}{tagmcid}{1}
>>
}
-\cs_new_protected:Npn \__tag_struct_kid_mc_gput_right:nn #1 #2 %#1 structure num, #2 MCID absnum%
+\cs_new_protected:Npn \__tag_struct_kid_mc_gput_right:nn #1 #2
{
\__tag_seq_gput_right:ce
{ g__tag_struct_kids_#1_seq }
@@ -2136,7 +2118,8 @@
}
}
\cs_generate_variant:Nn \__tag_struct_kid_mc_gput_right:nn {ne}
-\cs_new_protected:Npn\__tag_struct_kid_struct_gput_right:nn #1 #2 %#1 num of parent struct, #2 kid struct
+\cs_new_protected:Npn\__tag_struct_kid_struct_gput_right:nn #1 #2
+%%#1 num of parent struct, #2 kid struct
{
\__tag_seq_gput_right:ce
{ g__tag_struct_kids_#1_seq }
@@ -2144,11 +2127,21 @@
\pdf_object_ref_indexed:nn { __tag/struct }{ #2 }
}
}
-
\cs_generate_variant:Nn \__tag_struct_kid_struct_gput_right:nn {ee}
-\cs_new_protected:Npn\__tag_struct_kid_OBJR_gput_right:nnn #1 #2 #3 %#1 num of parent struct,
- %#2 obj reference
- %#3 page object reference
+\cs_new_protected:Npn\__tag_struct_kid_struct_gput_left:nn #1 #2
+%%#1 num of parent struct, #2 kid struct
+ {
+ \__tag_seq_gput_left:ce
+ { g__tag_struct_kids_#1_seq }
+ {
+ \pdf_object_ref_indexed:nn { __tag/struct }{ #2 }
+ }
+ }
+\cs_generate_variant:Nn \__tag_struct_kid_struct_gput_left:nn {ee}
+\cs_new_protected:Npn\__tag_struct_kid_OBJR_gput_right:nnn #1 #2 #3
+
+
+%%#1 num of parent struct,#2 obj reference,#3 page object reference
{
\pdf_object_unnamed_write:nn
{ dict }
@@ -2257,25 +2250,38 @@
\tl_clear:N #2
\prop_map_inline:cn { g__tag_struct_#1_prop }
{
- \tl_put_right:Ne #2
+ \cs_if_exist_use:cTF {__tag_struct_format_##1:nnN}
{
- \cs_if_exist_use:cTF {__tag_struct_format_##1:nn}
- {{##1}{##2}}
- {\c_space_tl/##1~##2}
+ {##1}{##2}#2
+ }
+ {
+ \tl_put_right:Ne #2 { \c_space_tl/##1~##2 }
}
}
}
-\cs_new:Nn\__tag_struct_format_rolemap:nn{}
-\cs_new:Nn\__tag_struct_format_parentrole:nn{}
+\cs_new:Nn\__tag_struct_format_rolemap:nnN{}
+\cs_new:Nn\__tag_struct_format_parentrole:nnN{}
-\cs_new:Nn\__tag_struct_format_Ref:nn{\c_space_tl/#1~[#2]}
+\cs_new_protected:Nn\__tag_struct_format_Ref:nnN
+ {
+ \tl_put_right:Nn #3 { ~/#1~[ } %]
+ \clist_map_inline:nn{ #2 }
+ {
+ ##1 #3
+ }
+ \tl_put_right:Nn #3
+ { %[
+ \c_space_tl]
+ }
+ }
\cs_new_protected:Npn \__tag_struct_write_obj:n #1 % #1 is the struct num
{
\prop_if_exist:cTF { g__tag_struct_#1_prop }
{
\prop_get:cnNF { g__tag_struct_#1_prop } {P}\l__tag_tmpb_tl
{
- \prop_gput:cne { g__tag_struct_#1_prop } {P}{\pdf_object_ref_indexed:nn { __tag/struct }{1}}
+ \prop_gput:cne { g__tag_struct_#1_prop } {P}
+ {\pdf_object_ref_indexed:nn { __tag/struct }{1}}
\prop_gput:cne { g__tag_struct_#1_prop } {S}{/Artifact}
\seq_if_empty:cF {g__tag_struct_kids_#1_seq}
{
@@ -2301,8 +2307,9 @@
\msg_error:nnn { tag } { struct-no-objnum } { #1}
}
}
-\cs_new_protected:Npn \__tag_struct_insert_annot:nn #1 #2 %#1 object reference to the annotation/xform
- %#2 structparent number
+\cs_new_protected:Npn \__tag_struct_insert_annot:nn #1 #2
+ %#1 object reference to the annotation/xform
+ %#2 structparent number
{
\bool_if:NT \g__tag_active_struct_bool
{
@@ -2324,7 +2331,8 @@
#1 %
}
{
- \pdf_pageobject_ref:n { \__tag_property_ref:nnn {@tag@objr@page@#2 }{ tagabspage }{1} }
+ \pdf_pageobject_ref:n
+ { \property_ref:nnn {@tag@objr@page@#2 }{ tagabspage }{1} }
}
% add the parent obj number to the parent tree:
\exp_args:Nne
@@ -2333,7 +2341,8 @@
#2
}
{
- \pdf_object_ref_indexed:nn { __tag/struct }{ \l__tag_struct_stack_parent_tmpa_tl }
+ \pdf_object_ref_indexed:nn
+ { __tag/struct }{ \l__tag_struct_stack_parent_tmpa_tl }
}
% increase the int:
\int_gincr:N \c@g__tag_parenttree_obj_int
@@ -2354,7 +2363,8 @@
\socket_new:nn { tag/struct/tag }{1}
\socket_new_plug:nnn { tag/struct/tag }{ latex-tags }
{
- \seq_set_split:Nne \l__tag_tmpa_seq { / } {#1/\prop_item:Ne\g__tag_role_tags_NS_prop{#1}}
+ \seq_set_split:Nne \l__tag_tmpa_seq { / }
+ {#1/\prop_item:Ne\g__tag_role_tags_NS_prop{#1}}
\tl_gset:Ne \g__tag_struct_tag_tl { \seq_item:Nn\l__tag_tmpa_seq {1} }
\tl_gset:Ne \g__tag_struct_tag_NS_tl{ \seq_item:Nn\l__tag_tmpa_seq {2} }
\__tag_check_structure_tag:N \g__tag_struct_tag_tl
@@ -2362,10 +2372,12 @@
\socket_new_plug:nnn { tag/struct/tag }{ pdf-tags }
{
- \seq_set_split:Nne \l__tag_tmpa_seq { / } {#1/\prop_item:Ne\g__tag_role_tags_NS_prop{#1}}
+ \seq_set_split:Nne \l__tag_tmpa_seq { / }
+ {#1/\prop_item:Ne\g__tag_role_tags_NS_prop{#1}}
\tl_gset:Ne \g__tag_struct_tag_tl { \seq_item:Nn\l__tag_tmpa_seq {1} }
\tl_gset:Ne \g__tag_struct_tag_NS_tl{ \seq_item:Nn\l__tag_tmpa_seq {2} }
- \__tag_role_get:VVNN \g__tag_struct_tag_tl\g__tag_struct_tag_NS_tl\l__tag_tmpa_tl\l__tag_tmpb_tl
+ \__tag_role_get:VVNN
+ \g__tag_struct_tag_tl \g__tag_struct_tag_NS_tl \l__tag_tmpa_tl \l__tag_tmpb_tl
\tl_gset:Ne \g__tag_struct_tag_tl {\l__tag_tmpa_tl}
\tl_gset:Ne \g__tag_struct_tag_NS_tl{\l__tag_tmpb_tl}
\__tag_check_structure_tag:N \g__tag_struct_tag_tl
@@ -2374,7 +2386,14 @@
\keys_define:nn { __tag / struct }
{
- label .tl_set:N = \l__tag_struct_key_label_tl,
+ label .code:n =
+ {
+ \prop_gput:Nee\g__tag_struct_label_num_prop
+ {#1}{\int_use:N \c@g__tag_struct_abs_int}
+ \__tag_property_record:eV
+ {tagpdfstruct-#1}
+ \c__tag_property_struct_clist
+ },
stash .bool_set:N = \l__tag_struct_elem_stash_bool,
parent .code:n =
{
@@ -2393,6 +2412,7 @@
}
},
parent .default:n = {-1},
+firstkid .code:n = { \tl_set:Nn \l__tag_struct_addkid_tl {left} },
tag .code:n = % S property
{
\socket_use:nn { tag/struct/tag }{#1}
@@ -2459,16 +2479,58 @@
{ Lang }
{ (#1) }
},
+ }
+\cs_new_protected:Npn \__tag_struct_Ref_obj:nN #1 #2 %#1 a object reference
+ {
+ \tl_put_right:Ne#2
+ {
+ \c_space_tl#1
+ }
+ }
+
+\cs_new_protected:Npn \__tag_struct_Ref_label:nN #1 #2 %#1 a label
+ {
+ \prop_get:NnNTF \g__tag_struct_label_num_prop {#1} \l__tag_tmpb_tl
+ {
+ \tl_put_right:Ne#2
+ {
+ \c_space_tl\tag_struct_object_ref:e{ \l__tag_tmpb_tl }
+ }
+ }
+ {
+ \msg_warning:nnn {tag}{struct-Ref-unknown}{Label~'#1'}
+ }
+ }
+\cs_new_protected:Npn \__tag_struct_Ref_dest:nN #1 #2 %#1 a dest name
+ {
+ \prop_get:NnNTF \g__tag_struct_dest_num_prop {#1} \l__tag_tmpb_tl
+ {
+ \tl_put_right:Ne#2
+ {
+ \c_space_tl\tag_struct_object_ref:e{ \l__tag_tmpb_tl }
+ }
+ }
+ {
+ \msg_warning:nnn {tag}{struct-Ref-unknown}{Destination~'#1'}
+ }
+ }
+\cs_new_protected:Npn \__tag_struct_Ref_num:nN #1 #2 %#1 a structure number
+ {
+ \tl_put_right:Ne#2
+ {
+ \c_space_tl\tag_struct_object_ref:e{ #1 }
+ }
+ }
+
+\keys_define:nn { __tag / struct }
+ {
ref .code:n = % ref property
{
- \tl_clear:N\l__tag_tmpa_tl
\clist_map_inline:on {#1}
{
- \tl_put_right:Ne \l__tag_tmpa_tl
- {~\__tag_property_ref:en{tagpdfstruct-##1}{tagstructobj} }
+ \tag_struct_gput:nne
+ {\int_use:N \c@g__tag_struct_abs_int}{ref_label}{ ##1 }
}
- \__tag_struct_gput_data_ref:ee
- { \int_use:N \c@g__tag_struct_abs_int } {\l__tag_tmpa_tl}
},
E .code:n = % E property
{
@@ -2512,7 +2574,7 @@
}
\cs_generate_variant:Nn \__tag_struct_add_inline_AF:nn {on}
-\cs_new_protected:Npn \__tag_struct_add_AF:nn #1 #2 % #1 struct num #2 object reference
+\cs_new_protected:Npn \__tag_struct_add_AF:nn #1 #2
{
\tl_if_exist:cTF
{
@@ -2538,7 +2600,8 @@
{
\pdf_object_if_exist:eTF {#1}
{
- \__tag_struct_add_AF:ee { \int_use:N \c@g__tag_struct_abs_int }{\pdf_object_ref:e {#1}}
+ \__tag_struct_add_AF:ee
+ { \int_use:N \c@g__tag_struct_abs_int }{\pdf_object_ref:e {#1}}
\__tag_struct_prop_gput:nne
{ \int_use:N \c@g__tag_struct_abs_int }
{ AF }
@@ -2651,13 +2714,6 @@
\g__tag_struct_tag_tl
\g__tag_struct_tag_NS_tl
\__tag_check_structure_has_tag:n { \int_use:N \c@g__tag_struct_abs_int }
- \tl_if_empty:NF
- \l__tag_struct_key_label_tl
- {
- \__tag_property_record:eV
- {tagpdfstruct-\l__tag_struct_key_label_tl}
- \c__tag_property_struct_clist
- }
\int_compare:nNnT { \l__tag_struct_stack_parent_tmpa_tl } = { -1 }
{
\seq_get:NNF
@@ -2759,7 +2815,7 @@
%record this structure as kid:
%\tl_show:N \g__tag_struct_stack_current_tl
%\tl_show:N \l__tag_struct_stack_parent_tmpa_tl
- \__tag_struct_kid_struct_gput_right:ee
+ \use:c { __tag_struct_kid_struct_gput_ \l__tag_struct_addkid_tl :ee }
{ \l__tag_struct_stack_parent_tmpa_tl }
{ \g__tag_struct_stack_current_tl }
%\prop_show:c { g__tag_struct_\g__tag_struct_stack_current_tl _prop }
@@ -2811,22 +2867,22 @@
\__tag_check_if_active_struct:T
{
\prop_if_exist:cTF
- { g__tag_struct_\__tag_property_ref:enn{tagpdfstruct-#1}{tagstruct}{unknown}_prop } %
+ { g__tag_struct_\property_ref:enn{tagpdfstruct-#1}{tagstruct}{unknown}_prop } %
{
\__tag_check_struct_used:n {#1}
%add the label structure as kid to the current structure (can be the root)
\__tag_struct_kid_struct_gput_right:ee
{ \g__tag_struct_stack_current_tl }
- { \__tag_property_ref:enn{tagpdfstruct-#1}{tagstruct}{1} }
+ { \property_ref:enn{tagpdfstruct-#1}{tagstruct}{1} }
%add the current structure to the labeled one as parents
\__tag_prop_gput:cne
- { g__tag_struct_\__tag_property_ref:enn{tagpdfstruct-#1}{tagstruct}{1}_prop }
+ { g__tag_struct_\property_ref:enn{tagpdfstruct-#1}{tagstruct}{1}_prop }
{ P }
{
\pdf_object_ref_indexed:nn { __tag/struct } { \g__tag_struct_stack_current_tl }
}
\__tag_struct_get_parentrole:eNN
- {\__tag_property_ref:enn{tagpdfstruct-#1}{tagstruct}{1}}
+ {\property_ref:enn{tagpdfstruct-#1}{tagstruct}{1}}
\l__tag_tmpa_tl
\l__tag_tmpb_tl
\__tag_check_parent_child:VVVVN
@@ -2911,7 +2967,7 @@
\pdf_object_ref_indexed:nn {__tag/struct}{ #1 }
}
\cs_generate_variant:Nn \tag_struct_object_ref:n {e}
-\cs_new_protected:Npn \tag_struct_gput:nnn #1 #2 #3
+\cs_set_protected:Npn \tag_struct_gput:nnn #1 #2 #3
{
\cs_if_exist_use:cF {__tag_struct_gput_data_#2:nn}
{ %warning??
@@ -2920,19 +2976,44 @@
{#1}{#3}
}
\cs_generate_variant:Nn \tag_struct_gput:nnn {ene,nne}
-\cs_new_protected:Npn \__tag_struct_gput_data_ref:nn #1 #2
- % #1 receiving struct num, #2 list of object ref
+\cs_new_protected:Npn \__tag_struct_gput_data_ref_aux:nnn #1 #2 #3
+ % #1 receiving struct num, #2 key word #3 value
{
- \prop_get:cnN
- { g__tag_struct_#1_prop }
- {Ref}
- \l__tag_get_tmpc_tl
- \__tag_struct_prop_gput:nne
- { #1 }
- { Ref }
- { \quark_if_no_value:NF\l__tag_get_tmpc_tl { \l__tag_get_tmpc_tl\c_space_tl }#2 }
+ \prop_get:cnNTF
+ { g__tag_struct_#1_prop }
+ {Ref}
+ \l__tag_get_tmpc_tl
+ {
+ \tl_put_right:No \l__tag_get_tmpc_tl
+ {\cs:w __tag_struct_Ref_#2:nN \cs_end: {#3},}
+ }
+ {
+ \tl_set:No \l__tag_get_tmpc_tl
+ {\cs:w __tag_struct_Ref_#2:nN \cs_end: {#3},}
+ }
+ \__tag_struct_prop_gput:nno
+ { #1 }
+ { Ref }
+ { \l__tag_get_tmpc_tl }
}
-\cs_generate_variant:Nn \__tag_struct_gput_data_ref:nn {ee}
+\cs_new_protected:Npn \__tag_struct_gput_data_ref:nn #1 #2
+ {
+ \__tag_struct_gput_data_ref_aux:nnn {#1}{obj}{#2}
+ }
+\cs_new_protected:Npn \__tag_struct_gput_data_ref_label:nn #1 #2
+ {
+ \__tag_struct_gput_data_ref_aux:nnn {#1}{label}{#2}
+ }
+\cs_new_protected:Npn \__tag_struct_gput_data_ref_dest:nn #1 #2
+ {
+ \__tag_struct_gput_data_ref_aux:nnn {#1}{dest}{#2}
+ }
+\cs_new_protected:Npn \__tag_struct_gput_data_ref_num:nn #1 #2
+ {
+ \__tag_struct_gput_data_ref_aux:nnn {#1}{num}{#2}
+ }
+
+\cs_generate_variant:Nn \__tag_struct_gput_data_ref:nn {ee,no}
\cs_new_protected:Npn \tag_struct_insert_annot:nn #1 #2 %#1 should be an object reference
%#2 struct parent num
{
@@ -3054,6 +3135,7 @@
},
}
%% File: tagpdf-space.dtx
+\bool_new:N\l__tag_showspaces_bool
\keys_define:nn { __tag / setup }
{
activate/spaces .choice:,
@@ -3460,9 +3542,9 @@
{\tagmcbegin{tag=Lbl}}
{#1}
}
- \tag_stop:n{hangfrom}
+ \tag_suspend:n{hangfrom}
\hangindent \wd\@tempboxa\noindent
- \tag_start:n{hangfrom}
+ \tag_resume:n{hangfrom}
\tagmcbegin{}\box\@tempboxa\tagmcend\tagstructend\tagmcbegin{}
}
}
@@ -3713,11 +3795,11 @@
\bool_gset_false:N \g__tag_in_mc_bool
}
\tag_mc_begin:n {artifact}
- \tag_stop:n{headfoot}
+ \tag_suspend:n{headfoot}
}
\cs_new_protected:Npn \__tag_exclude_headfoot_end:
{
- \tag_start:n{headfoot}
+ \tag_resume:n{headfoot}
\tag_mc_end:
\bool_if:NTF \g__tag_mode_lua_bool
{
@@ -3741,12 +3823,12 @@
}
\tag_struct_begin:n{tag=Artifact,attribute-class=__tag/attr/#1}
\tag_mc_begin:n {artifact=#1}
- \tag_stop:n{headfoot}
+ \tag_suspend:n{headfoot}
}
\cs_new_protected:Npn \__tag_exclude_struct_headfoot_end:
{
- \tag_start:n{headfoot}
+ \tag_resume:n{headfoot}
\tag_mc_end:
\tag_struct_end:
\bool_if:NTF \g__tag_mode_lua_bool
diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdfdocu-patches.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdfdocu-patches.sty
index 936f8adacd2..81ce196e8e7 100644
--- a/Master/texmf-dist/tex/latex/tagpdf/tagpdfdocu-patches.sty
+++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdfdocu-patches.sty
@@ -1,5 +1,5 @@
%\RequirePackage[enable-debug]{expl3}[2018/06/14]
-\ProvidesExplPackage {tagpdfdocu-patches} {2024-06-20} {0.99c}
+\ProvidesExplPackage {tagpdfdocu-patches} {2024-09-16} {0.99f}
{patches/commands for the tagpdf documentation}
\RequirePackage{etoolbox,xpatch}
@@ -82,10 +82,6 @@
% }
\ExplSyntaxOff
-% ======== tikzpicture ==========
-% TODO this needs some investigation: it messes up the stack if one add paraOff
-
-\AddToHook{env/tikzpicture/begin}{}
%======== tcolorbox ========
% We switch of paratagging at the begin and reenable it locally in before upper.
@@ -138,22 +134,6 @@
% ======= footnote ========
% done in testphase code
-% ======= bibliography ========
-% biblatex. Creates some empty mc-chunks.
-% no internal patches, but redefining begentry/finentry is not safe.
-% better hook is needed.
-
-
-\def\blx@endbibliography{%
- \csuse{blx@endenv@\blx@theenv}%
- \blx@noitem
- \blx@locallabelwidth@finish
- \endgroup
- \blx@bibnote\blx@thepostnote
-% \endgroup
- \expandafter\endgroup\if@endpe\@doendpe\fi
-}
-
% ====== hyperref ========
% this should probably go into tagpdf, but it is related to
% problem of pdf strings and context ....
@@ -167,16 +147,147 @@
\let\tagstructend\relax
}}{}
-%====== picture =======
+%====== tikz picture =======
+% first draft to tag. The main problem is to handle paragraphs. One
+\ExplSyntaxOn
+\cs_new_protected:Npn\__tag_tikz_savepos:n #1
+ {
+ \tex_savepos:D
+ \tikz@resetexpandcount%
+ \tikz@scan@one@point\pgfutil@firstofone(current~bounding~box.north~east)\relax
+ \pgf@pos@transform{\pgf@x}{\pgf@y}%
+ \property_record:nn{#1}{xpos,ypos,abspage}
+ \property_record:nn{#1-tr}{pgfx,pgfy}
+ \tikz@scan@one@point\pgfutil@firstofone(current~bounding~box.south~west)\relax
+ \pgf@pos@transform{\pgf@x}{\pgf@y}%
+ \property_record:nn{#1-bl}{pgfx,pgfy}
+ \tex_savepos:D
+ }
+\cs_generate_variant:Nn \__tag_tikz_savepos:n {e}
+
+\NewProperty{pgfx}{now}{0}
+ {
+ \dim_compare:nNnTF {\dim_abs:n {\pgf@x}} > {15999pt}
+ { 0 }
+ { \dim_to_decimal_in_sp:n{\pgf@x} }
+ }
+\NewProperty{pgfy}{now}{0}
+ {
+ \dim_compare:nNnTF {\dim_abs:n {\pgf@y}} > {15999pt}
+ { 0 }
+ { \dim_to_decimal_in_sp:n{\pgf@y} }
+ }
+
+\cs_new_protected:Npn \__tag_tikz_getbbox:
+ {
+ \int_gincr:N\g__tag_graphic_int
+ \tl_set:Ne\l__tag_graphic_currentlabel_tl {__tag_graphic_\int_use:N \g__tag_graphic_int}
+ \tl_gset:Ne\g__tag_graphic_lx_tl
+ {
+ \dim_to_decimal_in_bp:n
+ { \property_ref:een {\l__tag_graphic_currentlabel_tl}{xpos}{0}sp
+ + \property_ref:een {\l__tag_graphic_currentlabel_tl-bl}{pgfx}{0}sp
+ }
+ }
+ \tl_gset:Ne\g__tag_graphic_ly_tl
+ {
+ \dim_to_decimal_in_bp:n
+ { \property_ref:een {\l__tag_graphic_currentlabel_tl}{ypos}{0}sp
+ + \property_ref:een {\l__tag_graphic_currentlabel_tl-bl}{pgfy}{0}sp
+ }
+ }
+ \tl_gset:Ne\g__tag_graphic_ux_tl
+ {
+ \dim_to_decimal_in_bp:n
+ { \property_ref:een {\l__tag_graphic_currentlabel_tl}{xpos}{0}sp
+ + \property_ref:een {\l__tag_graphic_currentlabel_tl-tr}{pgfx}{0}sp
+ }
+ }
+ \tl_gset:Ne\g__tag_graphic_uy_tl
+ {
+ \dim_to_decimal_in_bp:n
+ { \property_ref:een {\l__tag_graphic_currentlabel_tl}{ypos}{0}sp
+ + \property_ref:een {\l__tag_graphic_currentlabel_tl-tr}{pgfy}{0}sp
+ }
+ }
+ }
-% PAC3 complained that the BBox is missing, so we are cheating for now
-% and add a fix size.
-\tagpdfsetup
- {
- newattribute =
- {bbox}{/O /Layout /BBox [0 0 100 100]}
+\cs_new_protected:Npn \__tag_graphic_tikz_begin_picture:
+ {
+ \tag_mc_end_push:
+ \bool_if:NTF \l__tag_graphic_artifact_bool
+ { \tagmcbegin{artifact} }
+ {
+ \__tag_tikz_getbbox:
+ \tagstructbegin{tag=Figure,alt=\l__tag_graphic_alt_tl}\tagmcbegin{}
+ \__tag_prop_gput:cne
+ { g__tag_struct_\int_eval:n {\c@g__tag_struct_abs_int}_prop }
+ { A }
+ {
+ <<
+ /O /Layout /BBox~
+ [
+ \g__tag_graphic_lx_tl\c_space_tl
+ \g__tag_graphic_ly_tl\c_space_tl
+ \g__tag_graphic_ux_tl\c_space_tl
+ \g__tag_graphic_uy_tl
+ ]
+ >>
+ }
+ \bool_if:NT\l__tag_graphic_debug_bool
+ {
+ \__tag_graphic_show_bbox:VVVVne
+ \g__tag_graphic_lx_tl
+ \g__tag_graphic_ly_tl
+ \g__tag_graphic_ux_tl
+ \g__tag_graphic_uy_tl
+ {red}
+ {\int_use:N\g__tag_graphic_int}
+ }
+ }
+ \SuspendTagging{tikz}
}
+\cs_new_protected:Npn \__tag_graphic_tikz_end_picture:
+ {
+ \ResumeTagging{tikz}\tagmcend
+ \bool_if:NF \l__tag_graphic_artifact_bool
+ {
+ \tagstructend
+ \__tag_tikz_savepos:e {__tag_graphic_\int_use:N \g__tag_graphic_int}
+ }
+ \tag_mc_begin_pop:n{}
+ }
+
+\tikzset
+ {
+ every~picture/.style=
+ {
+ artifact,
+ execute~at~begin~picture=\__tag_graphic_tikz_begin_picture:,
+ execute~at~end~picture=\__tag_graphic_tikz_end_picture:
+ }
+ }
+\AddToHook{env/tikzpicture/before}{\leavevmode}
+
+\tikzset
+ {
+ alt/.code=
+ {
+ \bool_set_false:N \l__tag_graphic_artifact_bool
+ \tl_set:Nn \l__tag_graphic_alt_tl{#1}
+ }
+ }
+\tikzset
+ {
+ artifact/.code=
+ \bool_set_true:N \l__tag_graphic_artifact_bool
+ }
+
+\ExplSyntaxOff
+
+
+
\endinput
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbbreakable.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbbreakable.code.tex
index 90ece8e5a5a..82cdde4e21e 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcbbreakable.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbbreakable.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10)
+%% The LaTeX package tcolorbox - version 6.4.0 (2024/09/27)
%% tcbbreakable.code.tex: Code for breakable colorboxes
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{6.2.0}
+\tcb@set@library@version{6.4.0}
\RequirePackage{pdfcol}
\pdfcolInitStack{tcb@breakable}
@@ -82,6 +82,7 @@
\reserved@a%
\@endpefalse%
\global\@newlistfalse%
+ \tcb@set@savebox@construction@true%
\let\tcbbreak\tcb@@break%
\iftcb@usecolorstack%
\pdfcolSwitchStack{tcb@breakable}%
@@ -551,7 +552,7 @@
\let\tcb@before@middle=\@empty%
\let\tcb@before@last=\@empty%
\iftcb@multicol%
- \long\def\tcb@after@first{\par}% using \columnbreak here kills multicols' algortihm sometimes
+ \long\def\tcb@after@first{\par}% using \columnbreak here kills multicols' algorithm sometimes
\long\def\tcb@after@middle{\par\vfill}%
\else%
\long\def\tcb@after@first{\par\pagebreak\tcb@enlbreak@next}%
@@ -827,7 +828,7 @@
\csname tcb@break@ch@\tcb@split@state\endcsname%
\tcbdimto\tcb@innerheight{\tcb@height-\kvtcb@top@rule-\kvtcb@bottom@rule-\tcb@h@padtitle}%
\tcbdimto\tcbtextheight{\tcb@innerheight-\kvtcb@boxsep*2-\kvtcb@top-\kvtcb@bottom}%
- \tcb@drawing@env@begin%
+ \begin{tcb@drawing}%
\tcb@extensions@preframe%
% draw frame and interior
\tcb@adraw@frame%
@@ -842,7 +843,7 @@
\tcb@tdraw@upper%
\tcb@tdraw@lower%
\tcb@extensions@final%
- \tcb@drawing@env@end%
+ \end{tcb@drawing}%
\endgroup%
}
@@ -857,7 +858,7 @@
\csname tcb@break@ch@\tcb@split@state\endcsname%
\tcbdimto\tcb@innerheight{\tcb@height-\kvtcb@top@rule-\kvtcb@bottom@rule-\tcb@h@padtitle}%
\tcbdimto\tcbtextheight{\tcb@innerheight-\kvtcb@boxsep*2-\kvtcb@top-\kvtcb@bottom}%
- \tcb@drawing@env@begin%
+ \begin{tcb@drawing}%
\tcb@extensions@preframe%
% draw frame and interior
\tcb@adraw@frame%
@@ -868,7 +869,7 @@
\tcb@tdraw@title%
\tcb@tdraw@upper%
\tcb@extensions@final%
- \tcb@drawing@env@end%
+ \end{tcb@drawing}%
\endgroup%
}
@@ -883,7 +884,7 @@
\csname tcb@break@ch@\tcb@split@state\endcsname%
\tcbdimto\tcb@innerheight{\tcb@height-\kvtcb@top@rule-\kvtcb@bottom@rule-\tcb@h@padtitle}%
\tcbdimto\tcbtextheight{\tcb@innerheight-\kvtcb@boxsep*2-\kvtcb@top-\kvtcb@bottom}%
- \tcb@drawing@env@begin%
+ \begin{tcb@drawing}%
\tcb@extensions@preframe%
% draw frame and interior
\tcb@adraw@frame%
@@ -897,7 +898,7 @@
\tcb@tdraw@title%
\tcb@tdraw@lower%
\tcb@extensions@final%
- \tcb@drawing@env@end%
+ \end{tcb@drawing}%
\endgroup%
}
@@ -912,7 +913,7 @@
\csname tcb@break@ch@\tcb@split@state\endcsname%
\tcbdimto\tcb@innerheight{\tcb@height-\kvtcb@top@rule-\kvtcb@bottom@rule-\tcb@h@padtitle}%
\tcbdimto\tcbtextheight{\tcb@innerheight-\kvtcb@boxsep*2-\kvtcb@top-\kvtcb@bottom}%
- \tcb@drawing@env@begin%
+ \begin{tcb@drawing}%
\tcb@extensions@preframe%
% draw frame and interior
\tcb@adraw@frame%
@@ -923,7 +924,7 @@
\tcb@tdraw@title%
\tcb@tdraw@lower%
\tcb@extensions@final%
- \tcb@drawing@env@end%
+ \end{tcb@drawing}%
\endgroup%
}
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex
index 3eff9746f86..7de745b5007 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10)
+%% The LaTeX package tcolorbox - version 6.4.0 (2024/09/27)
%% tcbdocumentation.code.tex: Code for LaTeX documentations
%%
%% -------------------------------------------------------------------------------------------
@@ -17,13 +17,13 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{6.2.0}
+\tcb@set@library@version{6.4.0}
\tcbuselibrary{listings,skins,external,raster}
\ifdefined\printindex\else%
\RequirePackage{makeidx}[2000/03/29]%
- \AddToHook{begindocument/before}{%
+ \AddToHook{begindocument/before}[tcolorbox]{%
\@ifpackageloaded{imakeidx}{%
\tcb@warning{`imakeidx' package should be loaded before `documentation' library}%
}{}}%
@@ -66,7 +66,7 @@
\DeclareRobustCommand\cs[1]{\texttt{\char`\\#1}}
\def\meta@font@select{\rmfamily\itshape}
-\AtEndPreamble{%
+\AtEndPreamble[tcolorbox]{%
\@ifpackageloaded{doc}{%
}{% code taken from doc.sty
\ifx\l@nohyphenation\undefined
@@ -199,10 +199,6 @@
keywords bold/true/.code={\let\tcb@doc@bfseries\bfseries},
keywords bold/false/.code={\let\tcb@doc@bfseries\mdseries},
doc key prefix/.store in=\kvtcb@doc@keyprefix,
- index key formatter/.code={\let\kvtcb@doc@format@key=#1},
- index keys formatter/.code={\let\kvtcb@doc@format@keys=#1},
- index key formatter/.default=\@firstofone,
- index keys formatter/.default=\@firstofone,
}
@@ -232,7 +228,7 @@
value=value,values=Values}},
}
-\AtBeginDocument{%
+\AtBeginDocument[tcolorbox]{%
\csname tcb@doc@index@\idx@format\endcsname%
\hypersetup{
citecolor=\kvtcb@colhyper,
@@ -337,6 +333,43 @@
\ExplSyntaxOn
+\tcbset{
+ index~key~formatter / .code =
+ {
+ \__tcobox_store_formatter_in:nN {#1} \kvtcb@doc@format@key
+ },
+ index~key~formatter / .default = \use:n,
+ index~keys~formatter / .code =
+ {
+ \__tcobox_store_formatter_in:nN {#1} \kvtcb@doc@format@keys
+ },
+ index~keys~formatter / .default = \use:n,
+ page~ref~formatter / .code =
+ {
+ \__tcobox_store_formatter_in:nN {#1} \kvtcb@doc@format@page
+ },
+ page~ref~formatter / .default = \use:n,
+}
+
+
+\cs_if_exist:NF \__tcobox_store_formatter_in:nN
+ {
+ \cs_new_protected:Npn \__tcobox_store_formatter_in:nN #1#2
+ {
+ \__tcobox_if_single_cs:nTF {#1}
+ { \cs_set_eq:NN #2 #1 }
+ {
+ \tcb@error
+ {
+ Invalid~formatter~ "\tl_to_str:n {#1}" ~passed~to \MessageBreak
+ "\pgfkeyscurrentkey". \MessageBreak
+ A~formatter~should~be~a~single~command~taking~one \MessageBreak
+ mandatory~argument
+ }
+ }
+ }
+ }
+
\cs_new_nopar:Npn \__tcobox_new_bool_key:Nn #1 #2
{
@@ -879,7 +912,7 @@
\IfBooleanTF{#2}{}{%
\ifnum\getpagerefnumber{#1:#3}=\thepage\relax%
\else%
- \textsuperscript{{\fontfamily{pzd}\fontencoding{U}\fontseries{m}\fontshape{n}\selectfont\char213}%
+ \kvtcb@doc@format@page{{\fontfamily{pzd}\fontencoding{U}\fontseries{m}\fontshape{n}\selectfont\char213}%
\,\kvtcb@text@pageshort\,\pageref*{#1:#3}}%
\fi}}%
}
@@ -889,7 +922,16 @@
\def\refKey{\tcb@ref@doc{key}}
\def\refPathOperation{\tcb@ref@doc{path}}
-\AtBeginDocument{%
+\NewDocumentCommand \refPkg { O{#2} m } {%
+ \href{https://ctan.org/pkg/#1}%
+ {%
+ \refAux{#2}%
+ \kvtcb@doc@format@page{{\fontfamily{pzd}\fontencoding{U}\fontseries{m}\fontshape{n}\selectfont\char213}%
+ \,CTAN}%
+ }%
+}
+
+\AtBeginDocument[tcolorbox]{%
\ifHy@colorlinks
\def\refAux#1{\textcolor{\kvtcb@colhyper}{\tcb@scantokens{#1}}}%
\def\refAuxcs#1{\textcolor{\kvtcb@colhyper}{\tcb@cs{#1}}}%
@@ -1027,12 +1069,11 @@
doc key prefix={/},
index key formatter,
index keys formatter,
+ page ref formatter=\textsuperscript,
}
% deprecated
\tcbset{
- before example/.store in=\kvtcb@beforeexample,
- after example/.store in=\kvtcb@afterexample,
- before example=\par\smallskip,
- after example=,
+ before example/.code = {\tcb@warning@deprecatedkey{v3.50 (2015/03/16)}},
+ after example/.code = {\tcb@warning@deprecatedkey{v3.50 (2015/03/16)}},
}
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbexternal.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbexternal.code.tex
index 0bfa994f68e..e9a93db6196 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcbexternal.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbexternal.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10)
+%% The LaTeX package tcolorbox - version 6.4.0 (2024/09/27)
%% tcbexternal.code.tex: Code for externalization
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{6.2.0}
+\tcb@set@library@version{6.4.0}
\tcbuselibrary{pro@cessing}
@@ -111,14 +111,14 @@
\def\tcbexternal@pdfmissing@warning{%
\tcb@warning{File '\tcbexternal@job@pdf' missing.
- Compilation error or shell-escape wasn't enabled or a subdirectory could'nt be generated}%
+ Compilation error or shell-escape wasn't enabled or a subdirectory couldn't be generated}%
\message{Load '\tcbexternal@job@source' instead}%
\tcbexternal@inputsource%
}
\def\tcbexternal@pdfmissing@error{%
\tcb@error{File '\tcbexternal@job@pdf' missing.
- Compilation error or shell-escape wasn't enabled or a subdirectory could'nt be generated}{}%
+ Compilation error or shell-escape wasn't enabled or a subdirectory couldn't be generated}{}%
}
\def\tcbexternal@inputpdf{%
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbfitting.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbfitting.code.tex
index 0e34e15ad5a..73d73f5a998 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcbfitting.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbfitting.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10)
+%% The LaTeX package tcolorbox - version 6.4.0 (2024/09/27)
%% tcbfitting.code.tex: Code for fit boxes
%%
%% -------------------------------------------------------------------------------------------
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{6.2.0}
+\tcb@set@library@version{6.4.0}
\newdimen\tcbfitdim
\newdimen\tcb@lowerfitdim
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbhooks.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbhooks.code.tex
index b3edf95636c..6d825fc61c0 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcbhooks.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbhooks.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10)
+%% The LaTeX package tcolorbox - version 6.4.0 (2024/09/27)
%% tcbhooks.code.tex: Code for adding hooks
%%
%% -------------------------------------------------------------------------------------------
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{6.2.0}
+\tcb@set@library@version{6.4.0}
\tcbset{%
before upper app/.code={\appto\kvtcb@before@upper{#1}},%
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcblistings.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcblistings.code.tex
index 195076eee16..09c5723e8d7 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcblistings.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcblistings.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10)
+%% The LaTeX package tcolorbox - version 6.4.0 (2024/09/27)
%% tcblistings.code.tex: Code for colorboxes with listings
%%
%% -------------------------------------------------------------------------------------------
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{6.2.0}
+\tcb@set@library@version{6.4.0}
\RequirePackage{listings}[2007/02/22]
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcblistingscore.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcblistingscore.code.tex
index 48241a94d57..4022b58069f 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcblistingscore.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcblistingscore.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10)
+%% The LaTeX package tcolorbox - version 6.4.0 (2024/09/27)
%% tcblistingscode.code.tex: Auxiliary code for colorboxes with listings
%%
%% -------------------------------------------------------------------------------------------
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{6.2.0}
+\tcb@set@library@version{6.4.0}
\tcbuselibrary{pro@cessing}
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcblistingsutf8.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcblistingsutf8.code.tex
index 0c9b2b7e8c2..0bdbef42903 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcblistingsutf8.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcblistingsutf8.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10)
+%% The LaTeX package tcolorbox - version 6.4.0 (2024/09/27)
%% tcblistingsutf8.code.tex: Code for colorboxes with listings in UTF-8
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{6.2.0}
+\tcb@set@library@version{6.4.0}
\tcbuselibrary{listings}
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbmagazine.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbmagazine.code.tex
index 81180a8eb89..0f54466b1e5 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcbmagazine.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbmagazine.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10)
+%% The LaTeX package tcolorbox - version 6.4.0 (2024/09/27)
%% tcbmagazine.code.tex: Code for box sets and magazine styles
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{6.2.0}
+\tcb@set@library@version{6.4.0}
\tcbuselibrary{breakable}
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbminted.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbminted.code.tex
index cae9e8d7070..60de31f6bfa 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcbminted.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbminted.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10)
+%% The LaTeX package tcolorbox - version 6.4.0 (2024/09/27)
%% tcbminted.code.tex: Code for colorboxes with listings
%%
%% -------------------------------------------------------------------------------------------
@@ -18,12 +18,14 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{6.2.0}
+\tcb@set@library@version{6.4.0}
\RequirePackage{minted}[2021/12/24]
% to be removed, if integrated into the minted package (#281)
-\minted@def@optcl{envname}{-P envname}{#1}
+\IfPackageAtLeastTF{minted}{2024/08/25}{}{%
+ \minted@def@optcl{envname}{-P envname}{#1}%
+}
\tcbuselibrary{listings@core}
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbposter.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbposter.code.tex
index 49abfc651a3..67705b7b57d 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcbposter.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbposter.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10)
+%% The LaTeX package tcolorbox - version 6.4.0 (2024/09/27)
%% tcbposter.code.tex: Code for posters
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{6.2.0}
+\tcb@set@library@version{6.4.0}
\tcbuselibrary{breakable,magazine,skins,fitting}
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbprocessing.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbprocessing.code.tex
index ce0ae430757..086bc374587 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcbprocessing.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbprocessing.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10)
+%% The LaTeX package tcolorbox - version 6.4.0 (2024/09/27)
%% tcbprocessing.code.tex: Code for conditional processing
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{6.2.0}
+\tcb@set@library@version{6.4.0}
\ExplSyntaxOn
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbraster.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbraster.code.tex
index 35510300920..3aead9fbb89 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcbraster.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbraster.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10)
+%% The LaTeX package tcolorbox - version 6.4.0 (2024/09/27)
%% tcbskinsjigsaw.code.tex: Code for colorboxes with different skins
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{6.2.0}
+\tcb@set@library@version{6.4.0}
\newcounter{tcbrastercolumn}
\newcounter{tcbrasterrow}
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbskins.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbskins.code.tex
index 3fbad785842..bd5f3f9fdfd 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcbskins.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbskins.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10)
+%% The LaTeX package tcolorbox - version 6.4.0 (2024/09/27)
%% tcbskins.code.tex: Code for colorboxes with different skins
%%
%% -------------------------------------------------------------------------------------------
@@ -17,15 +17,10 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{6.2.0}
+\tcb@set@library@version{6.4.0}
-\RequirePackage{tikz}[2010/10/13]
\RequirePackage{tikzfill.image}
-\newenvironment{tikzpicture@tcb@hooked}{%
- \edef\tcb@tikzpicture@begin{\noexpand\tikzpicture[\expandonce\tcb@tikz@option@hook]}%
- \tcb@tikzpicture@begin\tcb@tikz@begin@hook}{\tcb@tikz@end@hook\endtikzpicture}
-
\def\tcb@creategeonodes@true{%
\begin{scope}[every node/.style={line width=0mm,inner sep=0mm,outer sep=0mm,draw=none,fill=none,rectangle}]
\node[name=frame,at={(0,0)},above right,minimum width=\tcb@width,minimum height=\tcb@height]{};
@@ -438,7 +433,7 @@
\tcbset{%
base@unbroken/.style={%
- clear@spec,graphical environment=tikzpicture@tcb@hooked,geometry nodes,%
+ clear@spec,geometry nodes,%
set@outerboundary=\tcb@boundaryframe@standard,%
shape@of@skin=unbroken,%
set@extensions@preframe={\kvtcb@shadow},%
@@ -446,7 +441,7 @@
set@extensions@final={\tcb@apply@finish}%
},%
base@first/.style={%
- clear@spec,graphical environment=tikzpicture@tcb@hooked,geometry nodes,%
+ clear@spec,geometry nodes,%
set@outerboundary=\tcb@boundaryframe@pathfirst,%
shape@of@skin=first,%
set@extensions@preframe={\kvtcb@shadow},%
@@ -454,7 +449,7 @@
set@extensions@final={\tcb@apply@finish}%
},%
base@middle/.style={%
- clear@spec,graphical environment=tikzpicture@tcb@hooked,geometry nodes,%
+ clear@spec,geometry nodes,%
set@outerboundary=\tcb@boundaryframe@pathmiddle,%
shape@of@skin=middle,%
set@extensions@preframe={\kvtcb@shadow},%
@@ -462,7 +457,7 @@
set@extensions@final={\tcb@apply@finish}%
},%
base@last/.style={%
- clear@spec,graphical environment=tikzpicture@tcb@hooked,geometry nodes,%
+ clear@spec,geometry nodes,%
set@outerboundary=\tcb@boundaryframe@pathlast,%
shape@of@skin=last,%
set@extensions@preframe={\kvtcb@shadow},%
@@ -885,7 +880,7 @@
segmentation code={\tcb@drawspec@widgetsegment},%
skin first=widgetmiddle,skin middle=widgetmiddle,skin last=widgetlast}
-\tcb@new@skin{spartan}{graphical environment=tikzpicture@tcb@hooked,geometry nodes=true,shape@of@skin=unbroken,%
+\tcb@new@skin{spartan}{geometry nodes=true,shape@of@skin=unbroken,%
set@extensions@preframe=,set@extensions@postframe={\tcb@apply@underlay},set@extensions@final=,%
frame engine=spartan,interior titled engine=spartan,interior engine=spartan,title engine=spartan,segmentation engine=spartan,%
set@outerboundary=\tcb@boundaryframe@standard,%
@@ -893,7 +888,7 @@
\tcbset{spartan/.style={skin=spartan}}
-\tcb@new@skin{draft}{clear@spec,graphical environment=tikzpicture@tcb@hooked,geometry nodes,shape@of@skin=unbroken,%
+\tcb@new@skin{draft}{clear@spec,geometry nodes,shape@of@skin=unbroken,%
frame engine=empty,interior titled engine=empty,interior engine=empty,segmentation engine=path,title empty,%
segmentation style={draw=black,dashed},
set@extensions@postframe=,
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbskinsjigsaw.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbskinsjigsaw.code.tex
index 551971a0df2..a046fcd34dc 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcbskinsjigsaw.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbskinsjigsaw.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10)
+%% The LaTeX package tcolorbox - version 6.4.0 (2024/09/27)
%% tcbskinsjigsaw.code.tex: Code for colorboxes with different skins
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{6.2.0}
+\tcb@set@library@version{6.4.0}
\tcbuselibrary{skins}
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbtheorems.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbtheorems.code.tex
index f53eda79a52..7a8b2d42615 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcbtheorems.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbtheorems.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10)
+%% The LaTeX package tcolorbox - version 6.4.0 (2024/09/27)
%% tcbtheorems.code.tex: Code for theorems in colorboxes
%%
%% -------------------------------------------------------------------------------------------
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{6.2.0}
+\tcb@set@library@version{6.4.0}
\RequirePackage{amsmath}
@@ -138,7 +138,7 @@
% insert box with name and number
\mode_leave_vertical:
\box_use_drop:N \l__tcobox_tmpa_box
- % insert formated title
+ % insert formatted title
\group_begin:
\__tcobox_theo_format_description:n{#3}
\group_end:
@@ -260,11 +260,31 @@
description~font/.default =,
description~formatter/.code =
{
- \cs_set_eq:NN \__tcobox_theo_format_description:n #1
+ \__tcobox_store_formatter_in:nN {#1} \__tcobox_theo_format_description:n
},
description~formatter/.default = \__tcobox_theo_format_description_standard:n,
}
+
+\cs_if_exist:NF \__tcobox_store_formatter_in:nN
+ {
+ \cs_new_protected:Npn \__tcobox_store_formatter_in:nN #1#2
+ {
+ \__tcobox_if_single_cs:nTF {#1}
+ { \cs_set_eq:NN #2 #1 }
+ {
+ \tcb@error
+ {
+ Invalid~formatter~ "\tl_to_str:n {#1}" ~passed~to \MessageBreak
+ "\pgfkeyscurrentkey". \MessageBreak
+ A~formatter~should~be~a~single~command~taking~one \MessageBreak
+ mandatory~argument
+ }
+ }
+ }
+ }
+
+
\ExplSyntaxOff
@@ -298,16 +318,16 @@
ams equation*/.style={ams equation* upper,ams equation* lower},%
ams align upper/.style={before upper*=\tcb@hack@amsmath\align,after upper*=\endalign},%
ams align lower/.style={before lower*=\tcb@hack@amsmath\align,after lower*=\endalign},%
- ams align/.style={ams align upper,ams align lower},%
+ ams align/.style={ams align upper},%
ams align* upper/.style={before upper*=\tcb@hack@amsmath\csname align*\endcsname,after upper*=\endalign},%
ams align* lower/.style={before lower*=\tcb@hack@amsmath\csname align*\endcsname,after lower*=\endalign},%
- ams align*/.style={ams align* upper,ams align* lower},%
+ ams align*/.style={ams align* upper},%
ams gather upper/.style={before upper*=\tcb@hack@amsmath\gather,after upper*=\endgather},%
ams gather lower/.style={before lower*=\tcb@hack@amsmath\gather,after lower*=\endgather},%
- ams gather/.style={ams gather upper,ams gather lower},%
+ ams gather/.style={ams gather upper},%
ams gather* upper/.style={before upper*=\tcb@hack@amsmath\csname gather*\endcsname,after upper*=\endgather},%
ams gather* lower/.style={before lower*=\tcb@hack@amsmath\csname gather*\endcsname,after lower*=\endgather},%
- ams gather*/.style={ams gather* upper,ams gather* lower},%
+ ams gather*/.style={ams gather* upper},%
ams nodisplayskip upper/.style={before upper=\vskip-\abovedisplayskip},%
ams nodisplayskip lower/.style={before lower=\vskip-\abovedisplayskip},%
ams nodisplayskip/.style={ams nodisplayskip upper,ams nodisplayskip lower},%
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbvignette.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbvignette.code.tex
index e177bb33d49..92c23ca3f1a 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcbvignette.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbvignette.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10)
+%% The LaTeX package tcolorbox - version 6.4.0 (2024/09/27)
%% tcbvignette.code.tex: Code for ornamental frames
%%
%% -------------------------------------------------------------------------------------------
@@ -17,7 +17,7 @@
%%
%% This work consists of all files listed in README
%%
-\tcb@set@library@version{6.2.0}
+\tcb@set@library@version{6.4.0}
\tcbuselibrary{skins}
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbxparse.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbxparse.code.tex
index cf60ef07315..a4c44387038 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcbxparse.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbxparse.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10)
+%% The LaTeX package tcolorbox - version 6.4.0 (2024/09/27)
%% tcbxparse.code.tex: Code for xparse features
%%
%% -------------------------------------------------------------------------------------------
@@ -18,6 +18,6 @@
%% This work consists of all files listed in README
%%
%\makeatletter
-\tcb@set@library@version{6.2.0}
+\tcb@set@library@version{6.4.0}
\RequirePackage{xparse}[2013/12/31]
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty b/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty
index be2dc7e19be..29c209ece69 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 6.2.0 (2024/01/10)
+%% The LaTeX package tcolorbox - version 6.4.0 (2024/09/27)
%% tcolorbox.sty: Text color boxes
%%
%% -------------------------------------------------------------------------------------------
@@ -17,11 +17,12 @@
%%
%% This work consists of all files listed in README
%%
-\NeedsTeXFormat{LaTeX2e}[2021-11-15]
-\ProvidesPackage{tcolorbox}[2024/01/10 version 6.2.0 text color boxes]
-\def\tcb@version{6.2.0}
+\NeedsTeXFormat{LaTeX2e}[2023-11-01]
+\ProvidesPackage{tcolorbox}[2024/09/27 version 6.4.0 text color boxes]
+\def\tcb@version{6.4.0}
-\RequirePackage{pgf}[2008/01/15]
+%\RequirePackage{pgf}[2008/01/15]
+\RequirePackage{tikz}[2023/01/15]
\RequirePackage{verbatim}[2003/08/22]
\RequirePackage{environ}[2013/04/01]
\RequirePackage{etoolbox}[2011/01/03]
@@ -57,6 +58,7 @@
\ExplSyntaxOn
\bool_new:N \l__tcobox_prevent_init_overwrite_bool
+\bool_new:N \l__tcobox_savebox_construction_bool
\box_new:N \l__tcobox_tmpa_box
\dim_new:N \l__tcobox_tmpa_dim
\fp_new:N \l__tcobox_tmpa_fp
@@ -71,7 +73,9 @@
\def\tcb@info#1{\PackageInfo{tcolorbox}{#1}}
\def\tcb@warning#1{\PackageWarning{tcolorbox}{#1}}
\def\tcb@error#1#2{\PackageError{tcolorbox}{#1}{#2}}
-
+\def\tcb@warning@deprecatedkey#1{%
+ \tcb@warning{`\pgfkeyscurrentkey' key is deprecated hence ignored since #1.}%
+}
% key management
\pgfkeys{/tcb/.is family}
@@ -561,7 +565,6 @@
toggle left and right/evenpage/.code={\let\tcb@lrtoggle=\tcb@lrtoggle@evenpage\tcbset{check odd page}},
toggle left and right/forced/.code={\let\tcb@lrtoggle=\tcb@lrtoggle@forced},
toggle left and right/.default=evenpage,
- graphical environment/.store in=\kvtcb@graphenv,
%
frame engine/.is choice,
frame engine/standard/.style={frame code=\tcb@drawframe@standard},
@@ -1003,22 +1006,13 @@
IfBooleanF/.code~n~args={2}{\IfBooleanF{#1}{\pgfkeysalso{#2}}},
}
-\IfFormatAtLeastTF{2023-06-01}
- {
- \def\tcb@set@parbox@indent@{
- \exp_args:Nne \hook_gput_next_code:nn {para/begin}
- { \__tcobox_set_parbox_indent:n { \thetcolorboxnumber } }
- \let\tcb@set@parbox@indent\@empty
- }
- }
- {
- % Note: To be removed in future
- \def\tcb@set@parbox@indent@{
- \vspace{-\parskip}
- \noindent
- \let\tcb@set@parbox@indent\@empty
- }
- }
+
+\def\tcb@set@parbox@indent@{
+ \exp_args:Nne \hook_gput_next_code:nn {para/begin}
+ { \__tcobox_set_parbox_indent:n { \thetcolorboxnumber } }
+ \let\tcb@set@parbox@indent\@empty
+}
+
\cs_new_protected:Npn \__tcobox_set_parbox_indent:n #1
{
@@ -1027,12 +1021,20 @@
{ \int_compare_p:nNn { #1 } = { \thetcolorboxnumber } }
% and if inside a "tcb@savebox" env (upper or lower part is non-empty),
% hence not at the time of using saved \tcb@upperbox or \tcb@lowerbox
- { \cs_if_exist_p:N \tcbbreak }
+ { \l__tcobox_savebox_construction_bool }
{
\OmitIndent
}
}
+
+\def\tcb@set@savebox@construction@true
+ {
+ \bool_set_true:N \l__tcobox_savebox_construction_bool
+ }
+\bool_set_false:N \l__tcobox_savebox_construction_bool
+
+
\ExplSyntaxOff
\def\tcb@parbox@true@indent{}%
@@ -1045,6 +1047,7 @@
\let\tcb@parboxrestore=\@parboxrestore
\def\tcb@parbox@false@settings{%
+ \@nobreakfalse%
\let\par\@@par%
\linewidth\hsize%
\@totalleftmargin\z@%
@@ -1082,6 +1085,7 @@
\reserved@a
\@endpefalse%
\global\@newlistfalse%
+ \tcb@set@savebox@construction@true%
\let\tcbbreak\@@par%
\csname tcb@parbox@use@\kvtcb@parbox\endcsname%
\tcb@minipage{#2}%
@@ -1100,7 +1104,7 @@
% counter for float
-\AtBeginDocument{%
+\AtBeginDocument[tcolorbox]{%
\@ifundefined{c@float@type}%
{\edef\ftype@tcbfloat{\ifx\c@figure\@undefined 1\else 4\fi}}%
{\edef\ftype@tcbfloat{\the\c@float@type}%
@@ -1591,7 +1595,7 @@
\fi%
}{%
\csxdef{tcb@ehg@current@\tcb@ehgid}{#1}%
- \begingroup\edef\x{\endgroup\noexpand\AtEndDocument{\noexpand\tcb@saveehg{\tcb@ehgid}}}\x%
+ \begingroup\edef\x{\endgroup\noexpand\AtEndDocument[tcolorbox]{\noexpand\tcb@saveehg{\tcb@ehgid}}}\x%
}%
}
@@ -2025,17 +2029,44 @@
\fi%
}
-\def\tcb@drawing@env@begin{%
- \csname tcb@before@\tcb@split@state\endcsname%
- \begin{\kvtcb@graphenv}%
- \tcb@bbdraw%
- \tcb@apply@graph@patches%
-}
-\def\tcb@drawing@env@end{%
- \end{\kvtcb@graphenv}%
- \csname tcb@after@\tcb@split@state\endcsname%
-}
+\let\tcb@tikz@option@hook\@empty
+\let\tcb@tikz@begin@hook\@empty
+\let\tcb@tikz@end@hook\@empty
+
+\ExplSyntaxOn
+
+\exp_args_generate:n {nNo}
+
+\NewSocket{tagsupport/tcb/drawing/begin}{0}
+\NewSocket{tagsupport/tcb/drawing/end}{0}
+\NewSocketPlug{tagsupport/tcb/drawing/begin}{suspend}
+ {\tag_mc_end_push:\tag_mc_begin:n{artifact}}
+\NewSocketPlug{tagsupport/tcb/drawing/end}{resume}
+ {\tag_mc_end:\tag_mc_begin_pop:n{}}
+\AssignSocketPlug{tagsupport/tcb/drawing/begin}{suspend}
+\AssignSocketPlug{tagsupport/tcb/drawing/end}{resume}
+
+\NewDocumentEnvironment{ tcb@drawing }{ }
+ {
+ \use:c{ tcb@before@\tcb@split@state }
+ \exp_args:NnNo \begin{tikzpicture}[\tcb@tikz@option@hook]
+ \UseTaggingSocket{tcb/drawing/begin}
+ \SuspendTagging{tcb/drawing}
+ \tcb@tikz@begin@hook
+ \tcb@bbdraw
+ \tcb@apply@graph@patches
+ }
+ {
+ \tcb@tikz@end@hook
+ \ResumeTagging{tcb/drawing}
+ \UseTaggingSocket{tcb/drawing/end}
+ \end{tikzpicture}
+ \use:c{ tcb@after@\tcb@split@state }
+ }
+
+\ExplSyntaxOff
+
\def\tcb@set@normal@unbroken@beforeafter{%
\let\tcb@before@unbroken=\kvtcb@beforebox%
@@ -2077,7 +2108,8 @@
\tcb@ch%
\tcbdimto\tcb@innerheight{\tcb@height-\kvtcb@top@rule-\kvtcb@bottom@rule-\tcb@h@padtitle}%
\tcbdimto\tcbtextheight{\tcb@innerheight-\kvtcb@boxsep*2-\kvtcb@top-\kvtcb@bottom}%
- \tcb@drawing@env@begin%
+ \begin{tcb@drawing}%
+ %\tcb@drawing@env@begin%
\pgfsetbaseline{\the\dimexpr\kvtcb@baseline-\kvtcb@bbbottom\relax}%
\tcb@extensions@preframe%
% draw frame and interior
@@ -2097,7 +2129,8 @@
\tcb@tdraw@upper%
\iftcb@hasLower\tcb@tdraw@lower\fi%
\tcb@extensions@final%
- \tcb@drawing@env@end%
+ %\tcb@drawing@env@end%
+ \end{tcb@drawing}%
}
\let\tcb@drawcolorbox@standalone=\tcb@drawcolorbox
@@ -2255,6 +2288,9 @@
}
\def\tcb@proc@counter@auto#1{%
+ \ifcsdef{c@tcb@cnt@#1}
+ {\tcb@error{Auto counter for environment '#1' already defined}{}}
+ {}%
\newcounter{tcb@cnt@#1}%
\csxdef{tcb@cnt@#1}{tcb@cnt@#1}%
\tcb@proc@counter@autoanduse{#1}%
@@ -2297,6 +2333,33 @@
\ExplSyntaxOn
+\prg_new_conditional:Npnn \__tcobox_if_single_cs:n #1 { p, TF }
+ {
+ \bool_lazy_and:nnTF
+ { \tl_if_single_p:n { #1 } }
+ { \token_if_cs_p:N #1 }
+ { \prg_return_true: }
+ { \prg_return_false: }
+ }
+
+\msg_new:nnn { tcolorbox } { invalid-box-name }
+ {
+ Invalid~box~name~`` \tl_to_str:n {#1} ''.~
+ A~single~command~is~expected~after~space~trimming.~
+ I'll~drop~this~box~definition.
+ }
+
+\cs_new:Npn \__tcobox_set_backslash_removed:Nn #1#2
+ {
+ \__tcobox_if_single_cs:nTF { #2 }
+ {
+ \tl_set:Ne #1 { \exp_last_unbraced:Ne \cs_to_str:N { \tl_trim_spaces:n { #2 } } }
+ }
+ {
+ \msg_error:nnn { tcolorbox } { invalid-box-name } { #2 }
+ }
+ }
+
\cs_new:Npn \__tcobox_process_newtcolorbox:nn #1#2
{
\bool_lazy_and:nnF
@@ -2312,14 +2375,6 @@
}
-\cs_new:Npn \__tcobox_set_backslash_removed:Nn #1#2
- {
- \tl_set:Nn #1 { #2 }
- \tl_trim_spaces:N #1
- \tl_set:Ne #1 { \exp_last_unbraced:NV \cs_to_str:N #1 }
- }
-
-
\NewDocumentCommand \__tcobox_new_tcolorbox:w { m +O{} >{\TrimSpaces} m o +o +m }
{
\__tcobox_process_newtcolorbox:nn { #2 }{ #3 }
@@ -2505,28 +2560,36 @@
\__tcobox_new_TotalTCBox:w \ProvideDocumentCommand
}
+\NewDocumentCommand \tcolorboxenvironment { m +m }
+ {
+ \hook_gput_code:nnn{ env/#1/before }{ tcolorbox }
+ {
+ \begin{tcolorbox}
+ [{
+ savedelimiter = {#1},
+ #2,
+ wrap@environment,
+ code = \def\tcb@end@tcolorboxenvironment{\end{tcolorbox}}
+ }]
+ }
+ \hook_gput_code:nnn{ env/#1/after }{ tcolorbox }
+ {
+ \tcb@end@tcolorboxenvironment
+ }
+ }
-\ExplSyntaxOff
-
-
-\newcommand{\tcolorboxenvironment}[2]{%
- \AddToHook{env/#1/before}{%
- \begin{tcolorbox}[{savedelimiter={#1},#2,wrap@environment,%
- code={\def\tcb@end@tcolorboxenvironment{\end{tcolorbox}}}}]%
- }%
- \AddToHook{env/#1/after}{%
- \tcb@end@tcolorboxenvironment%
- }%
-}
+\DeclareTotalTCBox{ \tcboxverb }{ O{} v }{ verbatim,#1 }{ #2 }
-\DeclareTotalTCBox{\tcboxverb}{ O{} v }{verbatim,#1}{#2}
+\DeclareTotalTColorBox{ \tcbsidebyside }{ +O{} +m +m }
+ {
+ code = \long\def\tcb@sbs@text@left{#2}\long\def\tcb@sbs@text@right{#3},
+ #1,
+ sidebyside,
+ sidebyside@switch,
+ sidebyside@adapt@process
+ }{ \tcb@sbs@content }
-\DeclareTotalTColorBox{\tcbsidebyside}{ +O{} +m +m }{%
- code={\long\def\tcb@sbs@text@left{#2}\long\def\tcb@sbs@text@right{#3}},%
- #1,%
- sidebyside,%
- sidebyside@switch,sidebyside@adapt@process%
-}{\tcb@sbs@content}
+\ExplSyntaxOff
\def\tcb@addcontentsline#1#2{%
@@ -2740,7 +2803,7 @@
\tcb@new@skin{standard}{frame engine=standard,interior titled engine=standard,
interior engine=standard,segmentation engine=standard,title engine=standard,
- graphical environment=pgfpicture,geometry nodes=false,
+ geometry nodes=false,
set@extensions@preframe=,set@extensions@postframe={\tcb@apply@overlay},set@extensions@final=,%
set@outerboundary=\tcb@boundaryframe@standard,%
shape@of@skin=unbroken,
@@ -2867,3 +2930,8 @@
\ProcessOptions*
\begingroup\edef\x{\endgroup\noexpand\tcbuselibrary{\tcb@optionlist}}\x
+
+% deprecated
+\tcbset{
+ graphical environment/.code = {\tcb@warning@deprecatedkey{v6.3.0 (2024/07/10)}},
+}
diff --git a/Master/texmf-dist/tex/latex/telprint/telprint.sty b/Master/texmf-dist/tex/latex/telprint/telprint.sty
new file mode 100644
index 00000000000..f4e08a7c42d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/telprint/telprint.sty
@@ -0,0 +1,258 @@
+%%
+%% This is file `telprint.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% telprint.dtx (with options: `package')
+%%
+%% This is a generated file.
+%%
+%% Project: telprint
+%% Version: 2024-07-26 v1.12
+%%
+%% Copyright (C)
+%% 1996, 1997, 2004-2008 Heiko Oberdiek
+%% 2016-2024 Oberdiek Package Support Group
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.3c of this license or (at your option) any later
+%% version. This version of this license is in
+%% https://www.latex-project.org/lppl/lppl-1-3c.txt
+%% and the latest version of this license is in
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of
+%% LaTeX version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status "maintained".
+%%
+%% The Current Maintainers of this work are
+%% Heiko Oberdiek and the Oberdiek Package Support Group
+%% https://github.com/ho-tex/telprint/issues
+%%
+%% The Base Interpreter refers to any `TeX-Format',
+%% because some files are installed in TDS:tex/generic//.
+%%
+%% This work consists of the main source file telprint.dtx
+%% and the derived files
+%% telprint.sty, telprint.pdf, telprint.ins, telprint.drv,
+%% telprint-test1.tex.
+%%
+\begingroup\catcode61\catcode48\catcode32=10\relax%
+ \catcode13=5 % ^^M
+ \endlinechar=13 %
+ \catcode35=6 % #
+ \catcode39=12 % '
+ \catcode44=12 % ,
+ \catcode45=12 % -
+ \catcode46=12 % .
+ \catcode58=12 % :
+ \catcode64=11 % @
+ \catcode123=1 % {
+ \catcode125=2 % }
+ \expandafter\let\expandafter\x\csname ver@telprint.sty\endcsname
+ \ifx\x\relax % plain-TeX, first loading
+ \else
+ \def\empty{}%
+ \ifx\x\empty % LaTeX, first loading,
+ % variable is initialized, but \ProvidesPackage not yet seen
+ \else
+ \expandafter\ifx\csname PackageInfo\endcsname\relax
+ \def\x#1#2{%
+ \immediate\write-1{Package #1 Info: #2.}%
+ }%
+ \else
+ \def\x#1#2{\PackageInfo{#1}{#2, stopped}}%
+ \fi
+ \x{telprint}{The package is already loaded}%
+ \aftergroup\endinput
+ \fi
+ \fi
+\endgroup%
+\begingroup\catcode61\catcode48\catcode32=10\relax%
+ \catcode13=5 % ^^M
+ \endlinechar=13 %
+ \catcode35=6 % #
+ \catcode39=12 % '
+ \catcode40=12 % (
+ \catcode41=12 % )
+ \catcode44=12 % ,
+ \catcode45=12 % -
+ \catcode46=12 % .
+ \catcode47=12 % /
+ \catcode58=12 % :
+ \catcode64=11 % @
+ \catcode91=12 % [
+ \catcode93=12 % ]
+ \catcode123=1 % {
+ \catcode125=2 % }
+ \expandafter\ifx\csname ProvidesPackage\endcsname\relax
+ \def\x#1#2#3[#4]{\endgroup
+ \immediate\write-1{Package: #3 #4}%
+ \xdef#1{#4}%
+ }%
+ \else
+ \def\x#1#2[#3]{\endgroup
+ #2[{#3}]%
+ \ifx#1\@undefined
+ \xdef#1{#3}%
+ \fi
+ \ifx#1\relax
+ \xdef#1{#3}%
+ \fi
+ }%
+ \fi
+\expandafter\x\csname ver@telprint.sty\endcsname
+\ProvidesPackage{telprint}%
+ [2024-07-26 v1.12 Format German phone numbers (HO)]%
+\begingroup\catcode61\catcode48\catcode32=10\relax%
+ \catcode13=5 % ^^M
+ \endlinechar=13 %
+ \catcode123=1 % {
+ \catcode125=2 % }
+ \catcode64=11 % @
+ \def\x{\endgroup
+ \expandafter\edef\csname TELAtEnd\endcsname{%
+ \endlinechar=\the\endlinechar\relax
+ \catcode13=\the\catcode13\relax
+ \catcode32=\the\catcode32\relax
+ \catcode35=\the\catcode35\relax
+ \catcode61=\the\catcode61\relax
+ \catcode64=\the\catcode64\relax
+ \catcode123=\the\catcode123\relax
+ \catcode125=\the\catcode125\relax
+ }%
+ }%
+\x\catcode61\catcode48\catcode32=10\relax%
+\catcode13=5 % ^^M
+\endlinechar=13 %
+\catcode35=6 % #
+\catcode64=11 % @
+\catcode123=1 % {
+\catcode125=2 % }
+\def\TMP@EnsureCode#1#2{%
+ \edef\TELAtEnd{%
+ \TELAtEnd
+ \catcode#1=\the\catcode#1\relax
+ }%
+ \catcode#1=#2\relax
+}
+\TMP@EnsureCode{33}{12}% !
+\TMP@EnsureCode{36}{3}% $
+\TMP@EnsureCode{40}{12}% (
+\TMP@EnsureCode{41}{12}% )
+\TMP@EnsureCode{42}{12}% *
+\TMP@EnsureCode{43}{12}% +
+\TMP@EnsureCode{44}{12}% ,
+\TMP@EnsureCode{45}{12}% -
+\TMP@EnsureCode{46}{12}% .
+\TMP@EnsureCode{47}{12}% /
+\TMP@EnsureCode{91}{12}% [
+\TMP@EnsureCode{93}{12}% ]
+\TMP@EnsureCode{126}{13}% ~ (active)
+\edef\TELAtEnd{\TELAtEnd\noexpand\endinput}
+\ifx\DeclareRobustCommand\UnDeFiNeD
+ \def\DeclareRobustCommand*#1[1]{\def#1##1}%
+ \def\TELreset{\let\DeclareRobustCommand=\UnDeFiNeD}%
+ \input infwarerr.sty\relax
+ \@PackageInfo{telprint}{%
+ Macros are not robust!%
+ }%
+\else
+ \let\TELreset=\relax
+\fi
+\DeclareRobustCommand*{\telspace}[1]{\def\TELspace{#1}}
+\ifcsname LaTeXReleaseInfo\endcsname
+ \telspace{\,}
+\else
+ \telspace{{}$\,${}}
+\fi
+\DeclareRobustCommand*{\telhyphen}[1]{\def\TELhyphen{#1}}
+\telhyphen{\leavevmode\hbox{-}}% \hbox zur Verhinderung der Trennung
+\DeclareRobustCommand*{\telslash}[1]{\def\TELslash{#1}}
+\telslash{/}%
+\DeclareRobustCommand*{\telleftparen}[1]{\def\TELleftparen{#1}}
+\telleftparen{(}%
+\DeclareRobustCommand*{\telrightparen}[1]{\def\TELrightparen{#1}}
+\telrightparen{)}%
+\DeclareRobustCommand*{\telplus}[1]{\def\TELplus{#1}}
+\telplus{+}%
+\DeclareRobustCommand*{\teltilde}[1]{\def\TELtilde{#1}}
+\teltilde{~}%
+\newtoks\TELtoks
+\def\TELnumber#1#2\TELnumberEND{%
+ \begingroup
+ \def\0{#2}%
+ \expandafter\endgroup
+ \ifx\0\empty
+ \TELtoks=\expandafter{\the\TELtoks#1}%
+ \ifnum\TELswitch=0 %
+ \def\TELx{\TELspace}\def\TELy{}%
+ \else
+ \def\TELx{}\def\TELy{\TELspace}%
+ \fi
+ \the\TELtoks
+ \else
+ \ifnum\TELswitch=0 %
+ \TELtoks=\expandafter{\the\TELtoks#1\TELx}%
+ \def\TELswitch{1}%
+ \else
+ \TELtoks=\expandafter{\the\TELtoks#1\TELy}%
+ \def\TELswitch{0}%
+ \fi
+ \TELnumber#2\TELnumberEND
+ \fi
+}
+\DeclareRobustCommand*{\telnumber}[1]{%
+ \TELtoks={}%
+ \def\TELswitch{0}%
+ \TELnumber#1{}\TELnumberEND
+}
+\def\TELsplit{\futurelet\TELfuture\TELdosplit}
+\def\TELdosplit#1#2\TELsplitEND
+{%
+ \def\TELsp{ }%
+ \expandafter\ifx\TELsp\TELfuture
+ \let\TELfuture=\relax
+ \expandafter\telnumber\expandafter{\the\TELtoks}~%
+ \telprint{#1#2}% Das Leerzeichen kann nicht #1 sein!
+ \else
+ \def\TELfirst{#1}%
+ \ifx\TELfirst\empty
+ \expandafter\telnumber\expandafter{\the\TELtoks}%
+ \TELtoks={}%
+ \else\if-\TELfirst
+ \expandafter\telnumber\expandafter{\the\TELtoks}\TELhyphen
+ \telprint{#2}%
+ \else\if/\TELfirst
+ \expandafter\telnumber\expandafter{\the\TELtoks}\TELslash
+ \telprint{#2}%
+ \else\if(\TELfirst
+ \expandafter\telnumber\expandafter{\the\TELtoks}\TELleftparen
+ \telprint{#2}%
+ \else\if)\TELfirst
+ \expandafter\telnumber\expandafter{\the\TELtoks}\TELrightparen
+ \telprint{#2}%
+ \else\if+\TELfirst
+ \expandafter\telnumber\expandafter{\the\TELtoks}\TELplus
+ \telprint{#2}%
+ \else\def\TELtemp{~}\ifx\TELtemp\TELfirst
+ \expandafter\telnumber\expandafter{\the\TELtoks}\TELtilde
+ \telprint{#2}%
+ \else
+ \TELtoks=\expandafter{\the\TELtoks#1}%
+ \TELsplit#2{}\TELsplitEND
+ \fi\fi\fi\fi\fi\fi\fi
+ \fi
+}
+\DeclareRobustCommand*{\telprint}[1]{%
+ \TELtoks={}%
+ \TELsplit#1{}\TELsplitEND
+}
+\TELreset\let\TELreset=\UnDeFiNeD
+\TELAtEnd%
+%% \section{Installation}
+\endinput
+%%
+%% End of file `telprint.sty'.
diff --git a/Master/texmf-dist/tex/latex/texvc/texvc.sty b/Master/texmf-dist/tex/latex/texvc/texvc.sty
index cab243cbfe3..7d7ec136ac0 100644
--- a/Master/texmf-dist/tex/latex/texvc/texvc.sty
+++ b/Master/texmf-dist/tex/latex/texvc/texvc.sty
@@ -6,7 +6,7 @@
%%
%% texvc.dtx (with options: `package')
%% This is a generated file.
-%% Copyright (C) 2015 by Moritz Schubotz
+%% Copyright (C) 2015-2018 by Moritz Schubotz
%% This file 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
@@ -16,7 +16,7 @@
%% LaTeX version 2005/12/01 or later.
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
\ProvidesPackage{texvc}
-[2018/03/04 v1.1 Bugfixes]
+[2020/02/09 v1.2 Document deprecations]
\RequirePackage{amsmath}
\RequirePackage{amsfonts}
diff --git a/Master/texmf-dist/tex/latex/tikz3d-fr/tikz3d-fr.sty b/Master/texmf-dist/tex/latex/tikz3d-fr/tikz3d-fr.sty
index 5056c951a87..b6d4e20829f 100644
--- a/Master/texmf-dist/tex/latex/tikz3d-fr/tikz3d-fr.sty
+++ b/Master/texmf-dist/tex/latex/tikz3d-fr/tikz3d-fr.sty
@@ -3,15 +3,18 @@
% or later, see http://www.latex-project.org/lppl.txtf
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{tikz3d-fr}[2023/07/22 0.1.2 Aide pour l'utilisation de TikZ 3D]
+\ProvidesPackage{tikz3d-fr}[2024/09/16 0.1.3 Aide pour l'utilisation de TikZ 3D]
+%0.1.3 Dés à jouer en 3D
%0.1.2 Option pour l'épaisseur des traits + [line join=round] pour les cubes
%0.1.1 Segments avec [line cap=round]
%0.1.0 Version initiale
%------Packages utiles
\RequirePackage{tikz}
+\RequirePackage{tikz-3dplot}
\RequirePackage{xstring}
\RequirePackage{simplekv}
+\RequirePackage{randomlist}
\RequirePackage{xinttools}
\RequirePackage{xintexpr}
\RequirePackage{listofitems}
@@ -328,4 +331,258 @@
{\end{EnvTikzEspace}}
}
+%====DÉS EN 3D
+\newlength{\detridimoffseth}
+\setlength{\detridimoffseth}{0mm}
+
+\defKV[DeTriDim]{%
+ Echelle=\def\detridimscale{#1},%
+ Couleur=\def\detridimcouleur{#1},%
+ EspaceH=\setlength{\detridimoffseth}{#1},%
+ Couleurs=\def\detridimcouleurs{#1},%
+ CouleurPoints=\def\detridimcouleurpts{#1},%
+ Phi=\def\detridimphi{#1},%
+ Theta=\def\detridimtheta{#1},%
+ Vue=\def\deftridimvue{#1},%
+ Origine=\def\deftridimorigin{#1}
+}
+\setKVdefault[DeTriDim]{%
+ Echelle=1,%
+ Couleur=lightgray!25,%
+ CouleurPoints=black,%
+ Hasard=false,%
+ EspaceH={0mm},%
+ Couleurs=lightgray!25,%
+ Phi=110,%
+ Theta=70,%
+ Vue=D,%
+ Origine={(0,0)},%
+ Yams=false
+}
+
+\NewDocumentCommand\FaceDeTriDim{ m }{%
+ %1 = face avec points communs si besoin pour simplifier le code
+ \xintifboolexpr{#1 == 2 'or' #1 == 4 'or' #1 == 5 'or' #1 == 6}%
+ {%
+ \fill[\detridimcouleurpts] (0.5,0.5) circle[radius=1/6] ; % HG
+ \fill[\detridimcouleurpts] (-0.5,-0.5) circle[radius=1/6] ; % BD
+ }%
+ {}%
+ \xintifboolexpr{#1 == 3 'or' #1 == 4 'or' #1 == 5 'or' #1 == 6}%
+ {%
+ \fill[\detridimcouleurpts] (-0.5,0.5) circle[radius=1/6] ; % HD
+ \fill[\detridimcouleurpts] (0.5,-0.5) circle[radius=1/6] ; % BG
+ }%
+ {}%
+ \xintifboolexpr{#1 == 1 'or' #1 == 3 'or' #1 == 5}%
+ {%
+ \fill[\detridimcouleurpts] (0,0) circle[radius=1/6] ; % CENTRE
+ }%
+ {}%
+ \xintifboolexpr{#1 == 6}%
+ {%
+ \fill[\detridimcouleurpts] (0.5,0) circle[radius=1/6] ; % MG
+ \fill[\detridimcouleurpts] (-0.5,0) circle[radius=1/6] ; % MD
+ }%
+ {}%
+}
+
+%liste pour les faces
+\NewList{detridimfaceU}\SetList{detridimfaceU}{2,3,4,5}
+\NewList{detridimfaceD}\SetList{detridimfaceD}{1,3,4,6}
+\NewList{detridimfaceT}\SetList{detridimfaceT}{1,2,6,5}
+\NewList{detridimfaceQ}\SetList{detridimfaceQ}{1,5,6,2}
+\NewList{detridimfaceC}\SetList{detridimfaceC}{1,3,6,4}
+\NewList{detridimfaceS}\SetList{detridimfaceS}{2,4,5,3}
+
+%commande autonome
+\NewDocumentCommand\DeTriDim{ s O{} D<>{} m }{%
+ %* = mode non autonome
+ %1 = clés
+ %2 = options tikzpicture
+ %3 = faces devant/dessus
+ \restoreKV[DeTriDim]%
+ \setKV[DeTriDim]{#2}%
+ %si aléatoire
+ \ifboolKV[DeTriDim]{Hasard}%
+ {%
+ \xdef\detridimfacedevant{\xinteval{randrange(1,7)}}%
+ \xintifboolexpr{\detridimfacedevant == 1}%
+ {%
+ \GetRandomItem{detridimfaceU}{detridimfacedessus}%
+ }%
+ {}%
+ \xintifboolexpr{\detridimfacedevant == 2}%
+ {%
+ \GetRandomItem{detridimfaceD}{detridimfacedessus}%
+ }%
+ {}%
+ \xintifboolexpr{\detridimfacedevant == 3}%
+ {%
+ \GetRandomItem{detridimfaceT}{detridimfacedessus}%
+ }%
+ {}%
+ \xintifboolexpr{\detridimfacedevant == 4}%
+ {%
+ \GetRandomItem{detridimfaceQ}{detridimfacedessus}%
+ }%
+ {}%
+ \xintifboolexpr{\detridimfacedevant == 5}%
+ {%
+ \GetRandomItem{detridimfaceC}{detridimfacedessus}%
+ }%
+ {}%
+ \xintifboolexpr{\detridimfacedevant == 6}%
+ {%
+ \GetRandomItem{detridimfaceS}{detridimfacedessus}%
+ }%
+ {}%
+ \xdef\detridimfaces{\detridimfacedevant/\detridimfacedessus}%
+ }%
+ {%
+ \xdef\detridimfaces{#4}%
+ \StrCut{#4}{/}{\detridimfacedevant}{\detridimfacedessus}%
+ }%
+ \IfStrEq{\deftridimvue}{D}%
+ {%
+ \IfStrEqCase{\detridimfaces}{%
+ {1/2}{\def\detridimfacedroite{3}}%
+ {1/3}{\def\detridimfacedroite{5}}%
+ {1/5}{\def\detridimfacedroite{4}}%
+ {1/4}{\def\detridimfacedroite{2}}%
+ %
+ {2/1}{\def\detridimfacedroite{4}}%
+ {2/4}{\def\detridimfacedroite{6}}%
+ {2/6}{\def\detridimfacedroite{3}}%
+ {2/3}{\def\detridimfacedroite{1}}%
+ %
+ {3/1}{\def\detridimfacedroite{2}}%
+ {3/2}{\def\detridimfacedroite{6}}%
+ {3/6}{\def\detridimfacedroite{5}}%
+ {3/5}{\def\detridimfacedroite{1}}%
+ %
+ {4/1}{\def\detridimfacedroite{5}}%
+ {4/5}{\def\detridimfacedroite{6}}%
+ {4/6}{\def\detridimfacedroite{2}}%
+ {4/2}{\def\detridimfacedroite{1}}%
+ %
+ {5/1}{\def\detridimfacedroite{3}}%
+ {5/3}{\def\detridimfacedroite{6}}%
+ {5/6}{\def\detridimfacedroite{4}}%
+ {5/4}{\def\detridimfacedroite{1}}%
+ %
+ {6/2}{\def\detridimfacedroite{4}}%
+ {6/4}{\def\detridimfacedroite{5}}%
+ {6/5}{\def\detridimfacedroite{3}}%
+ {6/3}{\def\detridimfacedroite{2}}%
+ }%
+ }%
+ {%
+ \IfStrEqCase{\detridimfaces}{%
+ {1/2}{\def\detridimfacedroite{4}}%
+ {1/3}{\def\detridimfacedroite{2}}%
+ {1/5}{\def\detridimfacedroite{3}}%
+ {1/4}{\def\detridimfacedroite{5}}%
+ %
+ {2/1}{\def\detridimfacedroite{3}}%
+ {2/4}{\def\detridimfacedroite{1}}%
+ {2/6}{\def\detridimfacedroite{4}}%
+ {2/3}{\def\detridimfacedroite{6}}%
+ %
+ {3/1}{\def\detridimfacedroite{5}}%
+ {3/2}{\def\detridimfacedroite{1}}%
+ {3/6}{\def\detridimfacedroite{2}}%
+ {3/5}{\def\detridimfacedroite{6}}%
+ %
+ {4/1}{\def\detridimfacedroite{2}}%
+ {4/5}{\def\detridimfacedroite{1}}%
+ {4/6}{\def\detridimfacedroite{5}}%
+ {4/2}{\def\detridimfacedroite{6}}%
+ %
+ {5/1}{\def\detridimfacedroite{3}}%
+ {5/3}{\def\detridimfacedroite{6}}%
+ {5/6}{\def\detridimfacedroite{4}}%
+ {5/4}{\def\detridimfacedroite{1}}%
+ %
+ {6/2}{\def\detridimfacedroite{3}}%
+ {6/4}{\def\detridimfacedroite{2}}%
+ {6/5}{\def\detridimfacedroite{4}}%
+ {6/3}{\def\detridimfacedroite{5}}%
+ }%
+ }%
+ \IfStrEq{\deftridimvue}{D}{\def\tmpdetridimxscale{1}}{\def\tmpdetridimxscale{-1}}%
+ \IfBooleanF{#1}{\begin{tikzpicture}[#3]}%
+ \tdplotsetmaincoords{\detridimtheta}{\detridimphi}
+ \begin{scope}[shift={(\deftridimorigin)},scale=\fpeval{0.5*\detridimscale},xscale=\tmpdetridimxscale,thick,tdplot_main_coords,rounded corners=\fpeval{\detridimscale*0.5*0.33}cm,fill=\detridimcouleur]
+ \begin{scope}[canvas is xy plane at z=-1]
+ \filldraw (-1,-1) rectangle (1,1);
+ \end{scope}
+ \begin{scope}[canvas is xz plane at y=-1]
+ \filldraw (-1,-1) rectangle (1,1);
+ \end{scope}
+ \begin{scope}[canvas is yz plane at x=-1]
+ \filldraw (-1,-1) rectangle (1,1);
+ \end{scope}
+ \begin{scope}[canvas is xy plane at z=1]%face du dessus
+ \filldraw (-1,-1) rectangle (1,1);
+ \FaceDeTriDim{\detridimfacedessus}
+ \end{scope}
+ \begin{scope}[canvas is xz plane at y=1]%face de droite
+ \filldraw (-1,-1) rectangle (1,1);
+ \FaceDeTriDim{\detridimfacedroite}
+ \end{scope}
+ \begin{scope}[canvas is yz plane at x=1]%face de devant
+ \filldraw (-1,-1) rectangle (1,1);
+ \FaceDeTriDim{\detridimfacedevant}
+ \end{scope}
+ \end{scope}
+ \IfBooleanF{#1}{\end{tikzpicture}}%
+}
+
+\NewDocumentCommand\TirageAleaDesTriDim{ O{} D<>{} m }{%
+ \restoreKV[DeTriDim]%
+ \setKV[DeTriDim]{#1}%
+ \readlist*\detridimlstcolors{\detridimcouleurs}%
+ \ifboolKV[DeTriDim]{Yams}%
+ {%
+ \begin{tikzpicture}[#2]
+ \ifnum\detridimlstcolorslen=1\relax
+ \foreach \i in {1,...,#3}{%
+ \IfStrEq{\deftridimvue}{D}%
+ {%
+ \DeTriDim*[#1,Hasard,Couleur=\detridimcouleurs,Origine={(\i*\detridimscale,-\i*\detridimscale*0.1)}]{}%
+ }%
+ {%
+ \DeTriDim*[#1,Hasard,Couleur=\detridimcouleurs,Origine={(-\i*\detridimscale,-\i*\detridimscale*0.1)}]{}%
+ }%
+ }%
+ \else%
+ \foreach \i in {1,...,#3}{%
+ \itemtomacro\detridimlstcolors[\i]{\tmpdetridimcolor}%
+ \IfStrEq{\deftridimvue}{D}%
+ {%
+ \DeTriDim*[#1,Hasard,Couleur=\tmpdetridimcolor,Origine={(\i*\detridimscale,-\i*\detridimscale*0.1)}]{}%
+ }%
+ {%
+ \DeTriDim*[#1,Hasard,Couleur=\tmpdetridimcolor,Origine={(-\i*\detridimscale,-\i*\detridimscale*0.1)}]{}%
+ }%
+ }%
+ \fi%
+ \end{tikzpicture}
+ }%
+ {%
+ \ifnum\detridimlstcolorslen=1\relax
+ \foreach \i in {1,...,#3}{%
+ \DeTriDim[#1,Hasard,Couleur=\detridimcouleurs]<#2>{}\ifnum\i<#3\relax\hspace*{\detridimoffseth}\fi%
+ }%
+ \else%
+ \foreach \i in {1,...,#3}{%
+ \itemtomacro\detridimlstcolors[\i]{\tmpdetridimcolor}%
+ \DeTriDim[#1,Hasard,Couleur=\tmpdetridimcolor]<#2>{}\ifnum\i<#3\relax\hspace*{\detridimoffseth}\fi%
+ }%
+ \fi%
+ }%
+}
+
+
\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/tikzbricks/tikzbricks-doc-settings.sty b/Master/texmf-dist/tex/latex/tikzbricks/tikzbricks-doc-settings.sty
deleted file mode 100644
index 777cedba6ef..00000000000
--- a/Master/texmf-dist/tex/latex/tikzbricks/tikzbricks-doc-settings.sty
+++ /dev/null
@@ -1,199 +0,0 @@
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Personal helper theme for package documentations
-% Copyright samcarter
-%
-% This file may be distributed and/or modified
-% under the LaTeX Project Public License 1.3c or later
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-% Usage:
-% ln ~/Life/latex/beamertheme-sam/themesam.sty package-doc-settings.sty
-% \usepackage[
-% themecolor=samdblue
-% ]{\jobname-settings}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Colours
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\RequirePackage{xcolor}
-\definecolor{samyellow}{RGB}{246,193,65}
-\definecolor{samorange}{RGB}{241,147,45}
-\definecolor{samred}{RGB}{191,26,46}% TikZbricks
-\definecolor{sammagenta}{RGB}{170,42,104}% TikZmarmots
-\definecolor{samviolet}{RGB}{136,46,114}% TikZlings
-\definecolor{samlila}{RGB}{101,67,159}% Rainbow beamer theme
-\definecolor{samdblue}{RGB}{0,51,134}% beamer theme
-\definecolor{samlblue}{RGB}{22,89,155}% TikZducks
-\definecolor{samteal}{RGB}{25,143,157}% Tcolorbox beamer theme
-\definecolor{samlgreen}{RGB}{68,170,153}% Jigsaw
-\definecolor{samdgreen}{RGB}{78,178,125}
-\definecolor{samlgray}{RGB}{160,160,185}
-\definecolor{samdgray}{RGB}{60,60,85}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Package options
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\RequirePackage{xkeyval}
-\DeclareOptionX{themecolor}[samdblue]{\colorlet{themecolor}{#1}}
-\DeclareOptionX{listingcolor}[samlblue]{\colorlet{listingcolor}{#1}}
-\ExecuteOptionsX{themecolor,listingcolor}
-\ProcessOptionsX
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Packages
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\@ifclassloaded{beamer}{}{%
- \RequirePackage[english]{babel}
- \RequirePackage[paper=a4paper,margin=2.9cm]{geometry}
- \RequirePackage{scrlayer-scrpage}
- \let\hrulefillx\hrulefill
- \RequirePackage[bitstream-charter]{mathdesign}
- \let\hrulefill\hrulefillx
- \RequirePackage[hang,flushmargin,bottom]{footmisc}
- \RequirePackage{footnotehyper}
- \makesavenoteenv{tcolorbox}
- \RequirePackage[all]{nowidow}
- \RequirePackage[colorlinks=true,breaklinks=true,allcolors=themecolor,hyperfootnotes=false]{hyperref}
-}
-\RequirePackage[T1]{fontenc}
-\RequirePackage{xspace}
-\RequirePackage{inconsolata}% mono font with bold, but italic is missing
-% \RequirePackage[scale=0.85]{cascadia-code}
-% \AddToHook{cmd/ttfamily/before}{\fontseries{sl}}
-\RequirePackage{iexec}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Listings
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\RequirePackage[
- cachedir=$TMPDIR/minted/
-]{minted}
-
-% smuggling custom pygmentize style in cache folder
-% (a real pygmentise style would need installtion in some python folder)
-\begin{filecontents*}[noheader]{./sam.pygstyle}
-\makeatletter
-\def\PYG@reset{\let\PYG@it=\relax \let\PYG@bf=\relax%
- \let\PYG@ul=\relax \let\PYG@tc=\relax%
- \let\PYG@bc=\relax \let\PYG@ff=\relax}
-\def\PYG@tok#1{\csname PYG@tok@#1\endcsname}
-\def\PYG@toks#1+{\ifx\relax#1\empty\else%
- \PYG@tok{#1}\expandafter\PYG@toks\fi}
-\def\PYG@do#1{\PYG@bc{\PYG@tc{\PYG@ul{%
- \PYG@it{\PYG@bf{\PYG@ff{#1}}}}}}}
-\def\PYG#1#2{\PYG@reset\PYG@toks#1+\relax+\PYG@do{#2}}
-
-% optional arguments
-\expandafter\def\csname PYG@tok@na\endcsname{\def\PYG@tc##1{\textcolor{black}{##1}}}
-
-% macros
-\expandafter\def\csname PYG@tok@k\endcsname{\def\PYG@tc##1{\textcolor{listingcolor}{\bfseries ##1}}}
-% curly brakets
-\expandafter\def\csname PYG@tok@nb\endcsname{\def\PYG@tc##1{\textcolor{listingcolor}{\bfseries ##1}}}
-
-% comments (italics won't work with the inconsolata font)
-\expandafter\def\csname PYG@tok@c\endcsname{\def\PYG@tc##1{\textcolor{gray}{##1}}}
-
-\def\PYGZbs{\char`\\}
-\def\PYGZus{\char`\_}
-\def\PYGZob{\char`\{}
-\def\PYGZcb{\char`\}}
-\def\PYGZca{\char`\^}
-\def\PYGZam{\char`\&}
-\def\PYGZlt{\char`\<}
-\def\PYGZgt{\char`\>}
-\def\PYGZsh{\char`\#}
-\def\PYGZpc{\char`\%}
-\def\PYGZdl{\char`\$}
-\def\PYGZhy{\char`\-}
-\def\PYGZsq{\char`\'}
-\def\PYGZdq{\char`\"}
-\def\PYGZti{\char`\~}
-% for compatibility with earlier versions
-\def\PYGZat{@}
-\def\PYGZlb{[}
-\def\PYGZrb{]}
-\makeatother
-\end{filecontents*}
-
-\iexec{mkdir -p $TMPDIR/minted && mv sam.pygstyle $TMPDIR/minted/.}
-
-\usemintedstyle{sam}
-\setminted{
- breaksymbolleft={},
- tabsize=2,
- breaklines=true,
-}
-\newminted[samcode]{latex}{}
-\newmintinline[saminline]{latex}{}
-
-% use non-bold and all coloured for inline code in articles
-\ifdefined\insertaspectratio\else
- \patchcmd{\minted@inputpyg@inline}{\minted@input}{\color{listingcolor}\renewcommand\textcolor[3][]{##3}\renewcommand\bfseries{}\minted@input}{}{}
-\fi
-
-\RequirePackage[most]{tcolorbox}
-\tcbuselibrary{minted}
-\tcbset{%
- colframe=themecolor,
- fonttitle=\bfseries,
- sidebyside,
- center lower,
- righthand width=5.7cm,
- bottom=2pt,
- top=2pt,
- left=3pt,
- right=3pt,
- sidebyside gap=10pt,
- lower separated=false,
- listing engine=minted,
- minted language=latex,
- colback=themecolor!10,
- sharp corners,
- boxrule=0pt,
- before title={\strut}
-}
-
-% avoid page breaks right in front of the tcolorbox
-\@ifclassloaded{beamer}{}{
- \tcbuselibrary{hooks}
- \tcbset{before pre={\nopagebreak[4]}}
-}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% document settings
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\@ifclassloaded{scrartcl}{%
- \KOMAoptions{parskip=half}
- \addtokomafont{sectioning}{\color{themecolor}}
- \addtokomafont{date}{\normalsize}
- \addtokomafont{author}{\normalsize}
- \setlength{\footnotemargin}{0.7em}
-}{}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% Custom macros
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\providecommand*{\CTAN}{\textsc{CTAN}\xspace}
-\providecommand*{\TikZ}{Ti\emph{k}Z\xspace}
-\providecommand*{\miktex}{MiK\TeX\xspace}
-\providecommand*{\texlive}{\TeX{}Live\xspace}
-\providecommand*{\tikzbrick}{Ti\emph{k}Zbrick\xspace}
-\providecommand*{\tikzducks}{Ti\emph{k}Zducks\xspace}
-\providecommand*{\tikzlings}{Ti\emph{k}Zlings\xspace}
-\providecommand*{\tikzmarmots}{Ti\emph{k}Zmarmots\xspace}
-\providecommand*{\ConTeXt}{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt} \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz-elements.sty b/Master/texmf-dist/tex/latex/tkz-elements/tkz-elements.sty
index 0a11787d21e..597a0508506 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz-elements.sty
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz-elements.sty
@@ -1,5 +1,5 @@
% encoding : utf8
-% tkz-elements.sty v2.25c
+% tkz-elements.sty v2.30c
% Copyright 2024 Alain Matthes
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
@@ -11,7 +11,7 @@
% This work has the LPPL maintenance status “maintained”.
% The Current Maintainer of this work is Alain Matthes.
-\ProvidesPackage{tkz-elements}[2024/04/27 v2.25c Graphic Object Library]
+\ProvidesPackage{tkz-elements}[2024/07/16 version 2.30c Graphic Object Library]
\RequirePackage{luacode}
\directlua{require "tkz_elements_main"}
@@ -34,20 +34,19 @@
V={}}
\luacode}
{\endluacode}
-
+ % new version of the next macro proposed by Sanskar Singh
\def\tkzGetNodes{\directlua{%
- for K,V in pairs(z) do
- local n,sd,ft
- n = string.len(K)
- if n >1 then
- _,_,ft, sd = string.find( K , "(.+)(.)" )
- if sd == "p" then K=ft.."'" end
- _,_,xft, xsd = string.find( ft , "(.+)(.)" )
- if xsd == "p" then K=xft.."'".."'" end
- end
- tex.print("\\coordinate ("..K..") at ("..V.re..","..V.im..") ;\\\\")
-end}
-}
+ for K,V in pairs(z) do
+ local n,sd,ft
+ n = string.len(K)
+ if n >1 then
+ _,_,ft, sd = string.find( K , "(.+)(.)" )
+ if sd == "p" then K=ft.."'" end
+ _,_,xft, xsd = string.find( ft , "(.+)(.)" )
+ if xsd == "p" then K=xft.."'".."'" end
+ end
+ tex.sprint("\string\\coordinate ("..K..") at ("..V.re..","..V.im..") ; \string\r")
+end}}
\def\tkzUseLua#1{\directlua{tex.print(tostring(#1))}}
\makeatletter
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_circle.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_circle.lua
index 1999b8a0732..e17ccb2ebb4 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_circle.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_circle.lua
@@ -1,6 +1,6 @@
-- tkz_elements-circles.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_class.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_class.lua
index b6a1bf7a5a2..3ded691d539 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_class.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_class.lua
@@ -1,6 +1,6 @@
-- tkz_elements_class.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- from class.lua (Simple Lua Classes from Lua-users wiki)
-- Compatible with Lua 5.1 (not 5.0).
-- http://lua-users.org/wiki/SimpleLuaClasses DavidManura
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_ellipse.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_ellipse.lua
index a98cf40a63c..7581c19d7a9 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_ellipse.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_ellipse.lua
@@ -1,6 +1,6 @@
-- tkz_elements-ellipses.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_circles.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_circles.lua
index 40f2a4ebbf7..88f9040b7f0 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_circles.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_circles.lua
@@ -1,6 +1,6 @@
-- tkz_elements_functions_circles.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_intersections.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_intersections.lua
index 69dcd6ace32..fe253e9aa23 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_intersections.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_intersections.lua
@@ -1,6 +1,6 @@
-- tkz_elements_intersections.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_lines.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_lines.lua
index 401ad46dda1..a5504593c06 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_lines.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_lines.lua
@@ -1,6 +1,6 @@
-- tkz_elements_functions_lines.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_maths.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_maths.lua
index a71c0f7c278..c3f7e54ffd3 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_maths.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_maths.lua
@@ -1,6 +1,6 @@
-- tkz_elements_functions_maths.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_matrices.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_matrices.lua
index 43712140477..c80420090f4 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_matrices.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_matrices.lua
@@ -1,6 +1,6 @@
-- tkz_elements_functions_matrices.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_points.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_points.lua
index f1c4dc5d412..e2366e25e3d 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_points.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_points.lua
@@ -1,6 +1,6 @@
-- tkz_elements_functions_points.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_regular.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_regular.lua
index 5e92b4d5987..0f74d28fe98 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_regular.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_regular.lua
@@ -1,6 +1,6 @@
-- tkz_elements_functions_regular.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_triangles.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_triangles.lua
index d4523d1826b..02d3058a161 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_triangles.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_functions_triangles.lua
@@ -1,6 +1,6 @@
-- tkz_elements_functions_triangles.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
@@ -259,6 +259,15 @@ function feuerbach_tr_ (a,b,c)
intersection_cc_ (e,m,jb,hb),
intersection_cc_ (e,m,jc,hc)
end
+
+function similar_ (a,b,c)
+ local x,y,z,g
+ g = centroid_ (a,b,c)
+ x = homothety_ (g,-2,a)
+ y = homothety_ (g,-2,b)
+ z = homothety_ (g,-2,c)
+ return x,y,z
+end
--------------------
-- ellipse --
--------------------
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_line.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_line.lua
index 9304768f311..797365f33f4 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_line.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_line.lua
@@ -1,6 +1,6 @@
-- tkz_elements_lines.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
@@ -324,11 +324,25 @@ function line: mediator ()
m = midpoint_ (self.pa,self.pb)
return line : new (rotation_ (m,-math.pi/2,self.pb),rotation_ (m,math.pi/2,self.pb))
end
+
+function line : perpendicular_bisector ()
+ local m
+ m = midpoint_ (self.pa,self.pb)
+ return line : new (rotation_ (m,-math.pi/2,self.pb),rotation_ (m,math.pi/2,self.pb))
+end
+
-------------------
-- Result -> circle
-------------------
-function line: circle ()
+function line: circle (swap)
+ if swap == nil then
+ swap = false
+ end
+ if swap then
+ return circle : new (self.pb,self.pa)
+ else
return circle : new (self.pa,self.pb)
+ end
end
function line: circle_swap ()
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_main.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_main.lua
index 10ee2195196..142f00c8ed0 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_main.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_main.lua
@@ -1,6 +1,6 @@
-- tkz_elements-main.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_matrices.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_matrices.lua
index 981ac680946..035e8a0a33e 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_matrices.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_matrices.lua
@@ -1,6 +1,6 @@
-- tkz_elements_matrices.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_misc.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_misc.lua
index 94c9c555c08..daa3e21872b 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_misc.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_misc.lua
@@ -1,6 +1,6 @@
-- tkz_elements_functions_maths.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_parallelogram.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_parallelogram.lua
index fd0a3533a3d..d471976d066 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_parallelogram.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_parallelogram.lua
@@ -1,6 +1,6 @@
-- tkz_elements_parallelogram.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_point.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_point.lua
index 4eb4b549d15..e29779ef791 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_point.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_point.lua
@@ -1,6 +1,6 @@
-- tkz_elements_point.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_quadrilateral.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_quadrilateral.lua
index e77e0af5615..6625b9d7898 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_quadrilateral.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_quadrilateral.lua
@@ -1,6 +1,6 @@
-- tkz_elements_quadrilateral.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_rectangle.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_rectangle.lua
index 2c07f78399d..fdc30845018 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_rectangle.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_rectangle.lua
@@ -1,6 +1,6 @@
-- tkz_elements-rectangle.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_regular.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_regular.lua
index 0641a858ded..a4527c779b9 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_regular.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_regular.lua
@@ -1,6 +1,6 @@
-- tkz_elements_regular.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_square.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_square.lua
index 1852c0ded40..93860b825c9 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_square.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_square.lua
@@ -1,6 +1,6 @@
-- tkz_elements-square.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_triangle.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_triangle.lua
index c6dd2c37573..84b10273dad 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_triangle.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_triangle.lua
@@ -1,6 +1,6 @@
-- tkz_elements_triangles.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
@@ -57,19 +57,19 @@ end
-- points --
-----------------------
function triangle: trilinear (a,b,c)
- return barycenter_ ( {self.pa,a*self.a },{self.pb,b*self.b},{self.pc,c*self.c} )
+ return barycenter_ ({self.pa,a*self.a},{self.pb,b*self.b},{self.pc,c*self.c})
end
function triangle: barycentric (a,b,c)
- return barycenter_ ( {self.pa,a },{self.pb,b},{self.pc,c} )
+ return barycenter_ ({self.pa,a},{self.pb,b},{self.pc,c})
end
function triangle: bevan_point ()
- return circum_center_ ( self : excentral_tr())
+ return circum_center_ ( excentral_tr_ ( self.pa , self.pb , self.pc))
end
function triangle: mittenpunkt_point ()
- return lemoine_point_ ( self : excentral_tr())
+ return lemoine_point_ ( excentral_tr_ ( self.pa , self.pb , self.pc))
end
function triangle: gergonne_point ()
@@ -322,13 +322,20 @@ function triangle : cevian_circle (p)
pta,ptb,ptc = cevian_ (self.pa,self.pb,self.pc,p)
return circle : new (circum_circle_ (pta,ptb,ptc),pta)
end
+
+function triangle : symmedial_circle ()
+ local pta,ptb,ptc,p
+ p = lemoine_point_ ( self.pa , self.pb , self.pc)
+ pta,ptb,ptc = cevian_ (self.pa,self.pb,self.pc,p)
+ return circle : new (circum_circle_ (pta,ptb,ptc),pta)
+end
- function triangle : conway_circle ()
- local i,t
- i = in_center_ (self.pa,self.pb,self.pc)
- t = report_ (self.pb,self.pa,length(self.pb,self.pc),self.pa)
- return circle : new (i,t)
- end
+function triangle : conway_circle ()
+ local i,t
+ i = in_center_ (self.pa,self.pb,self.pc)
+ t = report_ (self.pb,self.pa,length(self.pb,self.pc),self.pa)
+ return circle : new (i,t)
+end
function triangle : pedal_circle (pt)
local x,y,z,c
@@ -338,7 +345,13 @@ function triangle : pedal_circle (pt)
c = circum_center_ (x,y,z)
return circle : new (c,x)
end
-
+
+function triangle: bevan_circle ()
+ local o,r,s,t
+ o = circum_center_ ( excentral_tr_ ( self.pa , self.pb , self.pc))
+ r,s,t = excentral_tr_ ( self.pa , self.pb , self.pc)
+return circle : new (o, r)
+end
-------------------
-- Result -> triangle
-------------------
@@ -392,6 +405,12 @@ function triangle: symmedian ()
return triangle : new (cevian_ (self.pa,self.pb,self.pc,p))
end
+function triangle: symmedial ()
+ local p
+ p = lemoine_point_ ( self.pa , self.pb , self.pc)
+ return triangle : new (cevian_ (self.pa,self.pb,self.pc,p))
+end
+
function triangle: euler ()
return triangle : new (euler_points_ (self.pa,self.pb,self.pc) )
end
@@ -403,6 +422,10 @@ function triangle: pedal (pt)
z = projection_ (self.pa,self.pb,pt)
return triangle : new (x,y,z)
end
+
+function triangle: similar ()
+ return triangle : new (similar_ (self.pa,self.pb,self.pc) )
+end
-------------------
-- Result -> ellipse
-------------------
diff --git a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_vector.lua b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_vector.lua
index 8b26fe4bd32..0dcbbfde61d 100644
--- a/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_vector.lua
+++ b/Master/texmf-dist/tex/latex/tkz-elements/tkz_elements_vector.lua
@@ -1,6 +1,6 @@
-- tkz_elements_vectors.lua
--- date 2024/04/27
--- version 2.25c
+-- date 2024/07/16
+-- version 2.30c
-- Copyright 2024 Alain Matthes
-- This work may be distributed and/or modified under the
-- conditions of the LaTeX Project Public License, either version 1.3
diff --git a/Master/texmf-dist/tex/latex/tkz-grapheur/tkz-grapheur.sty b/Master/texmf-dist/tex/latex/tkz-grapheur/tkz-grapheur.sty
index 3de4286c8e4..274adac46cc 100644
--- a/Master/texmf-dist/tex/latex/tkz-grapheur/tkz-grapheur.sty
+++ b/Master/texmf-dist/tex/latex/tkz-grapheur/tkz-grapheur.sty
@@ -2,9 +2,12 @@
% licence : Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{tkz-grapheur}[2024/06/22 0.1.5.Des outils en TikZ pour travailler comme avec un grapheur]
+\ProvidesPackage{tkz-grapheur}[2024/09/08 0.1.8 Des outils en TikZ pour travailler comme avec un grapheur]
%====HISTORIQUE
+% v 0.1.8 Ajout des courbes d'ECC/FCC + Toile récurrence + Points discontinuité + Histobinom
+% v 0.1.7 Méthodes intégrales avec des splines
+% v 0.1.6 Asymptote verticale + Monte Carlo + Méthode intégrales (rectangles, etc)
% v 0.1.5 Correction d'un bug avec les valeurs manuelles + Nœud pour une image + [en] version !
% v 0.1.4 Ajout des placements de textes
% v 0.1.3 Régressions, avec xintreg (désactivable)
@@ -49,7 +52,7 @@
\if@lngenglish
\sisetup{mode=match,propagate-math-font=true,reset-math-version=false,reset-text-family=false,reset-text-series=false,reset-text-shape=false,text-family-to-math=true,text-series-to-math=true}
\else
- \sisetup{locale=FR,output-decimal-marker={,},mode=match,propagate-math-font=true,reset-math-version=false,reset-text-family=false,reset-text-series=false,reset-text-shape=false,text-family-to-math=true,text-series-to-math=true}
+ \sisetup{locale=FR,output-decimal-marker={,},mode=match,propagate-math-font=true,reset-math-version=false,reset-text-family=false,reset-text-series=false,reset-text-shape=false,text-family-to-math=true,text-series-to-math=true}%,group-minimum-digits=4}
\fi
\fi
@@ -106,10 +109,12 @@
%====STYLES DE BASE
\tikzset{pflnoeud/.style={}}
\tikzset{pflpoint/.style={line width=0.95pt}}
+\tikzset{pflpointmc/.style={radius=0.875pt}}
\tikzset{pflpointc/.style={radius=1.75pt}}
\tikzset{pflpointnuage/.style={radius=1.75pt}}
\tikzset{pflcadre/.style={line width=0.8pt,gray}}
\tikzset{pflcourbe/.style={line width=1.05pt}}
+\tikzset{pflcourbediscont/.style={line width=1.1pt}}
\tikzset{pfltrait/.style={line width=0.8pt}}
\tikzset{pflflecheg/.style={<-,>=latex}}
\tikzset{pflfleched/.style={->,>=latex}}
@@ -1012,6 +1017,146 @@
\end{scope}
}
+%====MONTE CARLO
+\defKV[graphiquetikzmontecarlo]{%
+ Couleurs=\def\graphtikzmccols{#1},%
+ BornesX=\def\graphtikzmcxbornes{#1},%
+ BornesY=\def\graphtikzmcybornes{#1}
+}
+
+\setKVdefault[graphiquetikzmontecarlo]{%
+ Couleurs={blue/red},%
+ BornesX={\pflxmin,\pflxmax},%
+ BornesY={\pflymin,\pflymax}
+}
+
+\NewDocumentCommand\SimulerMonteCarlo{ O{} D<>{f} m O{\nbptsmcok} O{\nbptsmcko} }{%
+ \restoreKV[graphiquetikzmontecarlo]%
+ \setKV[graphiquetikzmontecarlo]{#1}%
+ \StrCut{\graphtikzmccols}{/}{\tmpMCcolOK}{\tmpMCcolKO}%
+ \StrCut{\graphtikzmcxbornes}{,}{\tmpMCxmin}{\tmpMCxmax}%
+ \StrCut{\graphtikzmcybornes}{,}{\tmpMCymin}{\tmpMCymax}%
+ \xdef#4{0}%
+ \xdef#5{0}%
+ \xdef\nbptsmc{#3}%
+ \foreach \i in {1,...,#3}{%
+ \xdef\tmpMCrandX{\xintfloateval{random()*((\tmpMCxmax)-(\tmpMCxmin))+(\tmpMCxmin)}}%
+ \xdef\tmpMCrandY{\xintfloateval{random()*((\tmpMCymax)-(\tmpMCymin))+(\tmpMCymin)}}%
+ \xdef\tmpMCrandfX{\xintfloateval{#2(\tmpMCrandX)}}%
+ \xintifboolexpr{ \tmpMCrandfX > \tmpMCrandY }%
+ {%
+ \xdef#4{\xinteval{#4+1}}%
+ \filldraw[\tmpMCcolOK] (\tmpMCrandX,\tmpMCrandY) circle[pflpointmc] ;
+ }%
+ {%
+ \xdef#5{\xinteval{#5+1}}%
+ \filldraw[\tmpMCcolKO] (\tmpMCrandX,\tmpMCrandY) circle[pflpointmc] ;
+ }%
+ }%
+}
+
+%====MÉTHODES INTÉGRALES
+
+\defKV[graphiquetikzintegr]{%
+ Couleur=\def\graphtikzintgrcol{#1},%
+ CouleurRemplissage=\def\graphtikzintgrcolrempl{#1},%
+ NbSubDiv=\def\graphtikzintgrnb{#1},%
+ Methode=\def\graphtikzintgrtype{#1},%
+ Opacite=\def\graphtikzintgropac{#1}
+}
+
+\setKVdefault[graphiquetikzintegr]{%
+ Couleur=red,%
+ NbSubDiv=10,%
+ Methode=RectanglesGauche,%
+ Remplir=true,%
+ CouleurRemplissage={\graphtikzintgrcol!25},%
+ Opacite=0.25,%
+ Spline=false
+}
+
+\NewDocumentCommand\RepresenterMethodeIntegrale{ O{} D<>{f} m m }{%opts+nom_fct/spline+a+b
+ \useKVdefault[graphiquetikzintegr]%
+ \setKV[graphiquetikzintegr]{#1}%
+ \ifboolKV[graphiquetikzintegr]{Remplir}%
+ {%
+ \tikzset{pflfigureintegr/.style={pfltrait,\graphtikzintgrcol,fill=\graphtikzintgrcolrempl,fill opacity=\graphtikzintgropac}}%
+ }%
+ {%
+ \tikzset{pflfigureintegr/.style={pfltrait,\graphtikzintgrcol}}%
+ }%
+ \tikzset{figureintegr/.style={pfltrait,\graphtikzintgrcol,fill=\graphtikzintgrcolrempl,fill opacity=\graphtikzintgropac}}%
+ \def\TmpH{(#4-#3)/\graphtikzintgrnb}
+ \ifboolKV[graphiquetikzintegr]{Spline}%
+ {%
+ \IfEq{\graphtikzintgrtype}{RectanglesGauche}%
+ {%
+ \foreach \i in {0,...,\inteval{\graphtikzintgrnb-1}}{%
+ \path[draw=none,pflcourbe,name path=tmpintmethod] ({#3+\i*\TmpH},{\pflymin})--({#3+\i*\TmpH},{\pflymax}) ;
+ \path[name intersections={of=#2 and tmpintmethod,name=KLM}] ;
+ \draw[pflfigureintegr] let \p1 = (KLM-1) in ({#3+\i*\TmpH},{0}) rectangle++ ({\TmpH},{\y1}) ;
+ }%
+ }%
+ {}%
+ \IfEq{\graphtikzintgrtype}{RectanglesDroite}%
+ {%
+ \foreach \i in {0,...,\inteval{\graphtikzintgrnb-1}}{%
+ \path[draw=none,pflcourbe,name path=tmpintmethod] ({#3+(\i+1)*\TmpH},{\pflymin})--({#3+(\i+1)*\TmpH},{\pflymax}) ;
+ \path[name intersections={of=#2 and tmpintmethod,name=KLM}] ;
+ \draw[pflfigureintegr] let \p1 = (KLM-1) in ({#3+\i*\TmpH},{0}) rectangle++ ({\TmpH},{\y1}) ;
+ }%
+ }%
+ {}%
+ \IfEq{\graphtikzintgrtype}{RectanglesMilieu}%
+ {%
+ \foreach \i in {0,...,\inteval{\graphtikzintgrnb-1}}{%
+ \path[draw=none,pflcourbe,name path=tmpintmethod] ({#3+(\i+0.5)*\TmpH},{\pflymin})--({#3+(\i+0.5)*\TmpH},{\pflymax}) ;
+ \path[name intersections={of=#2 and tmpintmethod,name=KLM}] ;
+ \draw[pflfigureintegr] let \p1 = (KLM-1) in ({#3+\i*\TmpH},{0}) rectangle++ ({\TmpH},{\y1}) ;
+ }%
+ }%
+ {}%
+ \IfEq{\graphtikzintgrtype}{Trapezes}%
+ {%
+ \foreach \i in {0,...,\inteval{\graphtikzintgrnb-1}}{%
+ \path[draw=none,pflcourbe,name path=tmpintmethodg] ({#3+(\i)*\TmpH},{\pflymin})--({#3+(\i)*\TmpH},{\pflymax}) ;
+ \path[name intersections={of=#2 and tmpintmethodg,name=KLMg}] ;
+ \path[draw=none,pflcourbe,name path=tmpintmethodd] ({#3+(\i+1)*\TmpH},{\pflymin})--({#3+(\i+1)*\TmpH},{\pflymax}) ;
+ \path[name intersections={of=#2 and tmpintmethodd,name=KLMd}] ;
+ \draw[pflfigureintegr] ({#3+\i*\TmpH},{0}) -- (KLMg-1) -- (KLMd-1) -- ({#3+(\i+1)*\TmpH},{0}) -- cycle ;
+ }%
+ }%
+ {}%
+ }%
+ {%
+ \IfEq{\graphtikzintgrtype}{RectanglesGauche}%
+ {%
+ \foreach \i in {0,...,\inteval{\graphtikzintgrnb-1}}%
+ \draw[pflfigureintegr] ({#3+\i*\TmpH},{0}) rectangle++ ({\TmpH},{\xintfloateval{#2(#3+\i*\TmpH)}}) ;
+ }%
+ {}%
+ \IfEq{\graphtikzintgrtype}{RectanglesDroite}%
+ {%
+ \foreach \i in {0,...,\inteval{\graphtikzintgrnb-1}}%
+ \draw[pflfigureintegr] ({#3+\i*\TmpH},{0}) rectangle++ ({\TmpH},{\xintfloateval{#2(#3+(\i+1)*\TmpH)}}) ;
+ }%
+ {}%
+ \IfEq{\graphtikzintgrtype}{RectanglesMilieu}%
+ {%
+ \foreach \i in {0,...,\inteval{\graphtikzintgrnb-1}}%
+ \draw[pflfigureintegr] ({#3+\i*\TmpH},{0}) rectangle++ ({\TmpH},{\xintfloateval{#2(#3+(\i+0.5)*\TmpH)}}) ;
+ }%
+ {}%
+ \IfEq{\graphtikzintgrtype}{Trapezes}%
+ {%
+ \foreach \i in {0,...,\inteval{\graphtikzintgrnb-1}}%
+ \draw[pflfigureintegr] ({#3+\i*\TmpH},{0}) -- ({#3+\i*\TmpH},{\xintfloateval{#2(#3+\i*\TmpH)}}) -- ({#3+(\i+1)*\TmpH},{\xintfloateval{#2(#3+(\i+1)*\TmpH)}}) -- ({#3+(\i+1)*\TmpH},{0}) -- cycle ;
+ }%
+ {}%
+ }%
+}
+
+
%====INTÉGRALES
%v2 avec modification de la clé [Type=...] ?
\defKV[GraphiqueTikzIntegr]{%
@@ -1961,6 +2106,16 @@
\end{scope}
}
+%====asymptote
+\NewDocumentCommand\TracerAsymptote{ O{} m D<>{} }{%
+ \restoreKV[GraphiquetikzDroite]%
+ \setKV[GraphiquetikzDroite]{#1}%
+ %tracé
+ \draw[pfltrait,{\useKV[GraphiquetikzDroite]{Couleur}},#3] ({#2},{\pflymin})--({#2},{\pflymax}) ;
+}
+
+
+%====MinMax
\defKV[GraphiqueTikzMinMax]{%
Pas=\def\pflminmaxstep{#1},%
Methode=\def\pflminmaxmethode{#1},%
@@ -2117,6 +2272,7 @@
\tikzset{tkzgrphnode/.style={}}
\tikzset{tkzgrphpoint/.style={line width=0.95pt}}
\tikzset{tkzgrphpointc/.style={radius=1.75pt}}
+\tikzset{tkzgrphpointmc/.style={radius=0.875pt}}
\tikzset{tkzgrphscatter/.style={radius=1.75pt}}
\tikzset{tkzgrphframe/.style={line width=0.8pt,gray}}
\tikzset{tkzgrphcurve/.style={line width=1.05pt}}
@@ -3898,11 +4054,11 @@
}
%====droite
-\defKV[GraphiquetikzDroite]{%
+\defKV[GraphicTikzLine]{%
Name=\def\pfldroitename{#1}
}
-\setKVdefault[GraphiquetikzDroite]{%
+\setKVdefault[GraphicTikzLine]{%
Slope=false,%
Color=black,%
Start={\pflxmin},%
@@ -3911,15 +4067,15 @@
}
\NewDocumentCommand\DrawLine{ O{} m m D<>{} }{%
- \restoreKV[GraphiquetikzDroite]%
- \setKV[GraphiquetikzDroite]{#1}%
+ \restoreKV[GraphicTikzLine]%
+ \setKV[GraphicTikzLine]{#1}%
%1er point
\path #2;%
\pgfgetlastxy{\macrox}{\macroy}%
\xdef\pfldtetikzxA{\xintfloateval{(\ConvertPtToCm{\macrox})/(\pflxunit)}}%
\xdef\pfldtetikzyA{\xintfloateval{(\ConvertPtToCm{\macroy})/(\pflyunit)}}%
%2ème point si besoin
- \ifboolKV[GraphiquetikzDroite]{Slope}%
+ \ifboolKV[GraphicTikzLine]{Slope}%
{%
\xdef\pfldtepente{\xintfloateval{#3}}%
}%
@@ -3936,24 +4092,33 @@
{%
\IfEq{\pfldroitename}{}%
{%
- \draw[tkzgrphline,{\useKV[GraphiquetikzDroite]{Color}},#4] (\pfldtetikzxA,\pflymin) -- (\pfldtetikzxA,\pflymax) ;
+ \draw[tkzgrphline,{\useKV[GraphicTikzLine]{Color}},#4] (\pfldtetikzxA,\pflymin) -- (\pfldtetikzxA,\pflymax) ;
}%
{%
- \draw[tkzgrphline,{\useKV[GraphiquetikzDroite]{Color}},#4,name path global=\pfldroitename] (\pfldtetikzxA,\pflymin) -- (\pfldtetikzxA,\pflymax) ;
+ \draw[tkzgrphline,{\useKV[GraphicTikzLine]{Color}},#4,name path global=\pfldroitename] (\pfldtetikzxA,\pflymin) -- (\pfldtetikzxA,\pflymax) ;
}%
}%
{%
\IfEq{\pfldroitename}{}%
{%
- \draw[tkzgrphline,{\useKV[GraphiquetikzDroite]{Color}},domain={\useKV[GraphiquetikzDroite]{Start}}:{\useKV[GraphiquetikzDroite]{End}},samples=2,#4] plot (\x,{\pfldtepente*(\x-\pfldtetikzxA)+\pfldtetikzyA}) ;
+ \draw[tkzgrphline,{\useKV[GraphicTikzLine]{Color}},domain={\useKV[GraphicTikzLine]{Start}}:{\useKV[GraphicTikzLine]{End}},samples=2,#4] plot (\x,{\pfldtepente*(\x-\pfldtetikzxA)+\pfldtetikzyA}) ;
}%
{%
- \draw[tkzgrphline,{\useKV[GraphiquetikzDroite]{Color}},domain={\useKV[GraphiquetikzDroite]{Start}}:{\useKV[GraphiquetikzDroite]{End}},samples=2,name path global=\pfldroitename,#4] plot (\x,{\pfldtepente*(\x-\pfldtetikzxA)+\pfldtetikzyA}) ;
+ \draw[tkzgrphline,{\useKV[GraphicTikzLine]{Color}},domain={\useKV[GraphicTikzLine]{Start}}:{\useKV[GraphicTikzLine]{End}},samples=2,name path global=\pfldroitename,#4] plot (\x,{\pfldtepente*(\x-\pfldtetikzxA)+\pfldtetikzyA}) ;
}%
}%
\end{scope}
}
+%====asymptote
+\NewDocumentCommand\DrawAsymptote{ O{} m D<>{} }{%
+ \restoreKV[GraphicTikzLine]%
+ \setKV[GraphicTikzLine]{#1}%
+ %tracé
+ \draw[tkzgrphline,{\useKV[GraphicTikzLine]{Color}},#3] ({#2},{\pflymin})--({#2},{\pflymax}) ;
+}
+
+%====minmax
\defKV[GraphicTikzMinMax]{%
Pas=\def\pflminmaxstep{#1},%
Method=\def\pflminmaxmethode{#1},%
@@ -4061,4 +4226,363 @@
\draw #2 node[tkzgrphnode,font=\pflnodefonte,text=\pflnodecol,\pfnodepos] {#3} ;
}
+%====MONTE CARLO
+\defKV[GraphicTikzmontecarlo]{%
+ Colors=\def\graphtikzmccols{#1},%
+ BoundsX=\def\graphtikzmcxbornes{#1},%
+ BoundsY=\def\graphtikzmcybornes{#1}
+}
+
+\setKVdefault[GraphicTikzmontecarlo]{%
+ Colors={blue/red},%
+ BoundsX={\pflxmin,\pflxmax},%
+ BoundsY={\pflymin,\pflymax}
+}
+
+\NewDocumentCommand\SimulateMonteCarlo{ O{} D<>{f} m O{\nbptsmcok} O{\nbptsmcko} }{%
+ \restoreKV[GraphicTikzmontecarlo]%
+ \setKV[GraphicTikzmontecarlo]{#1}%
+ \StrCut{\graphtikzmccols}{/}{\tmpMCcolOK}{\tmpMCcolKO}%
+ \StrCut{\graphtikzmcxbornes}{,}{\tmpMCxmin}{\tmpMCxmax}%
+ \StrCut{\graphtikzmcybornes}{,}{\tmpMCymin}{\tmpMCymax}%
+ \xdef#4{0}%
+ \xdef#5{0}%
+ \xdef\nbptsmc{#3}%
+ \foreach \i in {1,...,#3}{%
+ \xdef\tmpMCrandX{\xintfloateval{random()*((\tmpMCxmax)-(\tmpMCxmin))+(\tmpMCxmin)}}%
+ \xdef\tmpMCrandY{\xintfloateval{random()*((\tmpMCymax)-(\tmpMCymin))+(\tmpMCymin)}}%
+ \xdef\tmpMCrandfX{\xintfloateval{#2(\tmpMCrandX)}}%
+ \xintifboolexpr{ \tmpMCrandfX > \tmpMCrandY }%
+ {%
+ \xdef#4{\xinteval{#4+1}}%
+ \filldraw[\tmpMCcolOK] (\tmpMCrandX,\tmpMCrandY) circle[tkzgrphpointmc] ;
+ }%
+ {%
+ \xdef#5{\xinteval{#5+1}}%
+ \filldraw[\tmpMCcolKO] (\tmpMCrandX,\tmpMCrandY) circle[tkzgrphpointmc] ;
+ }%
+ }%
+}
+
+%====ECC
+\defKV[tkzgECC]{%
+ Couleur=\def\tkzecc@coul@graph{#1},%
+ CouleursParams=\def\tkzecc@coul@params{#1}
+}
+
+\setKVdefault[tkzgECC]{%
+ Couleur=black,%
+ AffParams=true,%
+ CouleursParams={black},%
+ TraitsComplets=true
+}
+
+\tikzset{pfltraitsparamecc/.style={line width=0.9pt,densely dashed}}
+\tikzset{pflcourbeecc/.style={line width=1.05pt}}
+
+\NewDocumentCommand\TracerCourbeECC{ O{} m m }{%
+ \restoreKV[tkzgECC]%
+ \setKV[tkzgECC]{#1}%
+ \IfSubStr{\tkzecc@coul@params}{/}%
+ {%
+ \StrCut{\tkzecc@coul@params}{/}{\tkzecc@coul@quart}{\tkzecc@coul@med}%
+ }%
+ {%
+ \def\tkzecc@coul@quart{\tkzecc@coul@params}\def\tkzecc@coul@med{\tkzecc@coul@params}%
+ }%
+ \readlist*\DataClass{#2}%
+ \readlist*\DataEff{#3}%
+ \xdef\DonneesECC{0}%
+ \xintFor* ##1 in {\xintSeq{1}{\DataEfflen}}\do{%
+ \xdef\DonneesTmp{0}
+ \xintFor* ##2 in {\xintSeq{1}{##1}}\do{%
+ \xdef\DonneesTmp{\xintfloateval{\DonneesTmp+\DataEff[##2]}}%
+ }%
+ \xdef\DonneesECC{\DonneesECC,\DonneesTmp}%
+ }%
+ \readlist*\DataECC\DonneesECC%
+ \itemtomacro\DataClass[1]\DonneesXmin%
+ \itemtomacro\DataClass[-1]\DonneesXmax%
+ \itemtomacro\DataECC[-1]\DonneesEffMax%
+ \xdef\DonneesListeECC{(\DataClass[1],\DataECC[1])}%
+ \xintFor* ##1 in {\xintSeq{2}{\DataECClen}}\do{%
+ \xdef\DonneesListeECC{\DonneesListeECC--(\DataClass[##1],\DataECC[##1])}%
+ }%
+ %paramètres par interpolation
+ \xintFor* ##1 in {\xintSeq{1}{\DataEfflen}}\do{%
+ \xdef\isuiv{\xinteval{##1+1}}%
+ \xintifboolexpr{\DataECC[##1] < (0.25*\DonneesEffMax) 'and' \DataECC[\isuiv] >= (0.25*\DonneesEffMax)}%
+ {%
+ \xdef\pentetmpECC{(\DataECC[\isuiv]-\DataECC[##1])/(\DataClass[\isuiv]-\DataClass[##1])}%OK
+ \xdef\ValPremQuartile{\xintfloateval{(0.25*\DonneesEffMax+\pentetmpECC*\DataClass[##1]-\DataECC[##1])/(\pentetmpECC)}}%
+ }
+ {}%
+ \xintifboolexpr{\DataECC[##1] < (0.50*\DonneesEffMax) 'and' \DataECC[\isuiv] >= (0.50*\DonneesEffMax)}%
+ {%
+ \xdef\pentetmpECC{(\DataECC[\isuiv]-\DataECC[##1])/(\DataClass[\isuiv]-\DataClass[##1])}%OK
+ \xdef\ValMed{\xintfloateval{(0.50*\DonneesEffMax+\pentetmpECC*\DataClass[##1]-\DataECC[##1])/(\pentetmpECC)}}%
+ }
+ {}%
+ \xintifboolexpr{\DataECC[##1] < (0.75*\DonneesEffMax) 'and' \DataECC[\isuiv] >= (0.75*\DonneesEffMax)}%
+ {%
+ \xdef\pentetmpECC{(\DataECC[\isuiv]-\DataECC[##1])/(\DataClass[\isuiv]-\DataClass[##1])}%OK
+ \xdef\ValTroisQuartile{\xintfloateval{(0.75*\DonneesEffMax+\pentetmpECC*\DataClass[##1]-\DataECC[##1])/(\pentetmpECC)}}%
+ }
+ {}%
+ }%
+ %partie graphique
+ \draw[pflcourbeecc,\tkzecc@coul@graph] \DonneesListeECC ;
+ \xintFor* ##1 in {\xintSeq{1}{\DataECClen}}\do{%
+ \filldraw[\tkzecc@coul@graph] (\DataClass[##1],\DataECC[##1]) circle[pflpointnuage] ;
+ }%
+ \ifboolKV[tkzgECC]{AffParams}%
+ {%
+ %médiane
+ \ifboolKV[tkzgECC]{TraitsComplets}%
+ {%
+ \draw[pfltraitsparamecc,\tkzecc@coul@med] (\pflxmin,{0.50*\DonneesEffMax})--(\pflxmax,{0.50*\DonneesEffMax});
+ \draw[pfltraitsparamecc,\tkzecc@coul@quart] (\pflxmin,{0.25*\DonneesEffMax})--++({\pflxmax-\pflxmin},0);
+ \draw[pfltraitsparamecc,\tkzecc@coul@quart] (\pflxmin,{0.75*\DonneesEffMax})--++({\pflxmax-\pflxmin},0);
+ }%
+ {%
+ \draw[pfltraitsparamecc,\tkzecc@coul@med] (\pflxmin,{0.50*\DonneesEffMax})--(\ValMed,{0.50*\DonneesEffMax});
+ \draw[pfltraitsparamecc,\tkzecc@coul@quart] (\pflxmin,{0.25*\DonneesEffMax})--++({\ValPremQuartile-\pflxmin},0);
+ \draw[pfltraitsparamecc,\tkzecc@coul@quart] (\pflxmin,{0.75*\DonneesEffMax})--++({\ValTroisQuartile-\pflxmin},0);
+ }%
+ \draw[pfltraitsparamecc,\tkzecc@coul@med] (\ValMed,{0.5*\DonneesEffMax})--(\ValMed,0) ; \draw[\tkzecc@coul@med,thick,fill=white] (\ValMed,{0.5*\DonneesEffMax}) circle[pflpointnuage] ;
+ \draw[pfltraitsparamecc,\tkzecc@coul@quart] (\ValPremQuartile,{0.25*\DonneesEffMax})--(\ValPremQuartile,\pflymin) ; \draw[\tkzecc@coul@quart,thick,fill=white] (\ValPremQuartile,{0.25*\DonneesEffMax}) circle[pflpointnuage] ;
+ \draw[pfltraitsparamecc,\tkzecc@coul@quart] (\ValTroisQuartile,{0.75*\DonneesEffMax})--(\ValTroisQuartile,\pflymin) ; \draw[\tkzecc@coul@quart,thick,fill=white] (\ValTroisQuartile,{0.75*\DonneesEffMax}) circle[pflpointnuage] ;
+ }%
+ {}%
+}
+
+%====PTS DISCONTINUITÉ
+\defKV[tkzptdiscont]{%
+ Couleur=\def\pfldiscontcouleur{#1},%
+ Pos=\def\pfldiscontpos{#1},%
+ Echelle=\def\pfldiscontechelle{#1},%
+ Type=\def\pfldisconttype{#1}
+}
+
+\setKVdefault[tkzptdiscont]{%
+ Couleur=black,%
+ Pos=D,%
+ Echelle=1,%
+ Type=par
+}
+
+\NewDocumentCommand\AfficherPtsDiscont{ O{} m }{%
+ \restoreKV[tkzptdiscont]
+ \setKV[tkzptdiscont]{#1}%
+ \setsepchar[.]{§./}%
+ \readlist*\SPLlisteDiscont{#2}%
+ \def\SPLlisteDiscontNb{\SPLlisteDiscontlen}%
+ \foreach \i in {1,...,\SPLlisteDiscontNb}{%
+ \begin{scope}[shift={(\SPLlisteDiscont[\i,1],\SPLlisteDiscont[\i,2])},rotate={atan \SPLlisteDiscont[\i,3]},scale=\pfldiscontechelle]
+ \IfStrEq{\pfldisconttype}{rond}%
+ {%
+ \draw[pflcourbediscont,fill=white,draw=\pfldiscontcouleur] (0,0) circle[radius=3pt] ;
+ }{}%
+ \IfStrEq{\pfldiscontpos}{D}%
+ {%
+ \IfStrEq{\pfldisconttype}{par}%
+ {%
+ \draw[pflcourbediscont,\pfldiscontcouleur] (0,0) to[out=90,in=170] (4pt,5pt) ;
+ \draw[pflcourbediscont,\pfldiscontcouleur] (0,0) to[out=-90,in=-170] (4pt,-5pt) ;
+ }{}%
+ \IfStrEq{\pfldisconttype}{demirond}%
+ {%
+ \draw[pflcourbediscont,\pfldiscontcouleur] (0,0) to[out=90,in=180] (3pt,3pt) ;
+ \draw[pflcourbediscont,\pfldiscontcouleur] (0,0) to[out=-90,in=180] (3pt,-3pt) ;
+ }{}%
+ \IfStrEq{\pfldisconttype}{cro}%
+ {%
+ \draw[pflcourbediscont,\pfldiscontcouleur] (0,0) |- (4pt,5pt) ;
+ \draw[pflcourbediscont,\pfldiscontcouleur] (0,0) |- (4pt,-5pt) ;
+ }{}%
+ }%
+ {%
+ \IfStrEq{\pfldisconttype}{par}%
+ {%
+ \draw[pflcourbediscont,\pfldiscontcouleur] (0,0) to[out=90,in=-10] (-4pt,5pt) ;
+ \draw[pflcourbediscont,\pfldiscontcouleur] (0,0) to[out=-90,in=10] (-4pt,-5pt) ;
+ }{}%
+ \IfStrEq{\pfldisconttype}{demirond}%
+ {%
+ \draw[pflcourbediscont,\pfldiscontcouleur] (0,0) to[out=90,in=0] (-3pt,3pt) ;
+ \draw[pflcourbediscont,\pfldiscontcouleur] (0,0) to[out=-90,in=0] (-3pt,-3pt) ;
+ }{}%
+ \IfStrEq{\pfldisconttype}{cro}%
+ {%
+ \draw[pflcourbediscont,\pfldiscontcouleur] (0,0) |- (-4pt,5pt) ;
+ \draw[pflcourbediscont,\pfldiscontcouleur] (0,0) |- (-4pt,-5pt) ;
+ }{}%
+ }%
+ \end{scope}
+ }%
+}
+
+%====TOILE RÉCURRENCE (OK avec courbe + spline !!)
+\tikzset{pfltraitrec/.style={line width=0.8pt}}
+\tikzset{pfltraitrecpointill/.style={pfltraitrec,densely dashed}}
+
+\defKV[tkzwebrecurr]{%
+ Couleur=\def\pflrecurcolor{#1},%
+ Nom=\def\pflrecurnom{#1},%
+ No=\def\pflrecurno{#1},%
+ Nb=\def\pflrecurnb{#1},%
+ Uno=\def\pflrecuruno{#1},
+ TailleLabel=\def\pflrecurlabelsize{#1},%
+ PosLabel=\def\pflrecurlabelpos{#1}
+}
+
+\setKVdefault[tkzwebrecurr]{%
+ Couleur=black,%
+ Spline=false,%
+ No=0,%
+ Nom=u,%
+ Nb=5,%
+ AffTermes=false,%
+ AffPointilles=true,%
+ TailleLabel=\small,%
+ PosLabel=below
+}
+
+\NewDocumentCommand\TracerToileRecurrence{ O{} m }{
+ %<clés> + fonction/courbe
+ \useKVdefault[tkzwebrecurr]%
+ \setKV[tkzwebrecurr]{#1}% on paramètres les nouvelles clés et on les simplifie
+ \ifboolKV[tkzwebrecurr]{Spline}%
+ {%
+ \foreach \i [remember=\i as \x (initially \pflrecuruno)] in {1,...,\pflrecurnb}{%
+ %\xdef\y{\xintfloateval{#2(\x)}}%
+ \path[draw=none,pflcourbe,name path=tmprecur] ({\x},{\pflymin})--({\x},{\pflymax}) ;
+ \path[name intersections={of=#2 and tmprecur,name=ZZZZ}] ;
+ %\coordinate (\pflrecurnoms) at (ZZZZ-1) ;
+ \GetYcoord{(ZZZZ-1)}[\y]
+ %test de la position courbe / bissectrice ?
+ \ifnum \i=1
+ \newdimen \X
+ \newdimen \Y
+ \X = \x pt
+ \Y = \y pt
+ \ifdim \Y < \X
+ \draw[pfltraitrec,\pflrecurcolor] (\x,\y)--(\y,\y) ;
+ \else
+ \draw[pfltraitrec,\pflrecurcolor] (\x,\x)--(\x,\y)--(\y,\y) ;
+ \fi
+ \else
+ \draw[pfltraitrec,\pflrecurcolor] (\x,\x)--(\x,\y)--(\y,\y) ;
+ \fi
+ \ifboolKV[tkzwebrecurr]{AffPointilles}%
+ {%
+ \def\indice{\fpeval{\i+\pflrecurno-1}}%
+ \ifboolKV[tkzwebrecurr]{AffTermes}%
+ {%
+ \draw[pfltraitrecpointill,\pflrecurcolor] (\x,\y)--(\x,\pflxmin) node[\pflrecurlabelpos,font=\pflrecurlabelsize]{$\pflrecurnom_{\indice}$};%
+ }%
+ {%
+ \draw[pfltraitrecpointill,\pflrecurcolor] (\x,\y)--(\x,\pflxmin) ;%
+ }%
+ }%
+ {}
+ \def\i{\y}%
+ }%
+ }%
+ {%
+ \foreach \i [remember=\i as \x (initially \pflrecuruno)] in {1,...,\pflrecurnb}{%
+ \xdef\y{\xintfloateval{#2(\x)}}%
+ %test de la position courbe / bissectrice ?
+ \ifnum \i=1
+ \newdimen \X
+ \newdimen \Y
+ \X = \x pt
+ \Y = \y pt
+ \ifdim \Y < \X
+ \draw[pfltraitrec,\pflrecurcolor] (\x,\y)--(\y,\y) ;
+ \else
+ \draw[pfltraitrec,\pflrecurcolor] (\x,\x)--(\x,\y)--(\y,\y) ;
+ \fi
+ \else
+ \draw[pfltraitrec,\pflrecurcolor] (\x,\x)--(\x,\y)--(\y,\y) ;
+ \fi
+ \ifboolKV[tkzwebrecurr]{AffPointilles}%
+ {%
+ \def\indice{\fpeval{\i+\pflrecurno-1}}%
+ \ifboolKV[tkzwebrecurr]{AffTermes}%
+ {%
+ \draw[pfltraitrecpointill,\pflrecurcolor] (\x,\y)--(\x,\pflxmin) node[\pflrecurlabelpos,font=\pflrecurlabelsize]{$\pflrecurnom_{\indice}$};%
+ }%
+ {%
+ \draw[pfltraitrecpointill,\pflrecurcolor] (\x,\y)--(\x,\pflxmin) ;%
+ }%
+ }%
+ {}
+ \def\i{\xintfloateval{\y}}%
+ }%
+ }%
+}
+
+%====HISTOBINOM
+\defKV[tkzHistoBinom]{%
+ Plage=\def\tkzGraphBinomPlage{#1},%
+ CouleurPlage=\def\tkzGraphBimomColPlage{#1},%
+ ClipX=\def\tkzGraphBinomXminmax{#1},%
+ CouleurNormale=\def\tkzGraphBinomColNorm{#1}
+}
+\setKVdefault[tkzHistoBinom]{%
+ Plage={},%
+ CouleurPlage=black,%
+ ClipX={},%
+ AffNormale=false,%
+ CouleurNormale=black
+}
+
+\NewDocumentCommand\TracerHistoBinomiale{ O{} D<>{phi} m m }{%
+ \restoreKV[tkzHistoBinom]%
+ \setKV[tkzHistoBinom]{#1}
+ \def\tkzGraphBinomN{#3}%
+ \def\tkzGraphBinomP{#4}%
+ \IfStrEq{\tkzGraphBinomXminmax}{}%
+ {%
+ \xdef\tkzGraphBinomXmin{0}%
+ \xdef\tkzGraphBinomXmax{\tkzGraphBinomN}%
+ }%
+ {%
+ \StrCut{\tkzGraphBinomXminmax}{-}{\tkzGraphBinomXmin}{\tkzGraphBinomXmax}%
+ \IfStrEq{\tkzGraphBinomXmin}{*}{\xdef\tkzGraphBinomXmin{0}}{}%
+ \IfStrEq{\tkzGraphBinomXmax}{*}{\xdef\tkzGraphBinomXmax{\tkzGraphBinomN}}{}%
+ }%
+ \IfStrEq{\tkzGraphBinomPlage}{}%
+ {}%
+ {%
+ \StrCut{\tkzGraphBinomPlage}{-}{\tkzGraphBinomColorMin}{\tkzGraphBinomColorMax}%
+ \IfStrEq{\tkzGraphBinomColorMin}{*}{\xdef\tkzGraphBinomColorMin{\tkzGraphBinomXmin}}{}%
+ \IfStrEq{\tkzGraphBinomColorMax}{*}{\xdef\tkzGraphBinomColorMax{\tkzGraphBinomXmax}}{}%
+ }%
+ %coloriage éventuel
+ \IfStrEq{\tkzGraphBinomPlage}{}%
+ {}%
+ {%
+ \xintFor* ##1 in {\xintSeq{\tkzGraphBinomColorMin}{\tkzGraphBinomColorMax}}\do{%
+ \xdef\tkztmpYYY{\xintfloateval{binomial(\tkzGraphBinomN,##1)*(\tkzGraphBinomP)^(##1)*(1-(\tkzGraphBinomP))^((\tkzGraphBinomN)-(##1))}}%
+ \draw[draw=none,fill=\tkzGraphBimomColPlage,fill opacity=0.5] ({##1-0.5},{\pflymin}) rectangle++ (1,{\tkztmpYYY-\pflymin}) ;
+ }%
+ }%
+ %tracé
+ \xintFor* ##1 in {\xintSeq{\tkzGraphBinomXmin}{\tkzGraphBinomXmax}}\do{%
+ \xdef\tkztmpYYY{\xintfloateval{binomial(\tkzGraphBinomN,##1)*(\tkzGraphBinomP)^(##1)*(1-(\tkzGraphBinomP))^((\tkzGraphBinomN)-(##1))}}%
+ \draw[pfltrait] ({##1-0.5},{\pflymin}) rectangle++ (1,{\tkztmpYYY-\pflymin}) ;
+ }%
+ \ifboolKV[tkzHistoBinom]{AffNormale}%
+ {%
+ \xdef\tkzMinNormHistoBinom{\xintfloateval{{\tkzGraphBinomXmin-0.5}}}%
+ \xdef\tkzMaxNormHistoBinom{\xintfloateval{{\tkzGraphBinomXmax+0.5}}}%
+ \xdef\tkzEsperNorm{\xintfloateval{(#3)*(#4)}}%
+ \xdef\tkzVarNorm{\xintfloateval{sqrt((#3)*(#4)*(1-(#4)))}}%
+ \DefinirLoiNormale[Trace,Couleur=\tkzGraphBinomColNorm,pflcourbe,Debut=\tkzMinNormHistoBinom,Fin=\tkzMaxNormHistoBinom]<#2>{\tkzEsperNorm}{\tkzVarNorm}
+ }%
+ {}%
+}
+
\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/tramlines/tramlines.sty b/Master/texmf-dist/tex/latex/tramlines/tramlines.sty
index f3288a8d1ff..72878c423eb 100644
--- a/Master/texmf-dist/tex/latex/tramlines/tramlines.sty
+++ b/Master/texmf-dist/tex/latex/tramlines/tramlines.sty
@@ -1,6 +1,6 @@
-\def\tramlinesversionnumber{1.1.0}
+\def\tramlinesversionnumber{1.1.1}
\ProvidesPackage{tramlines}
-[2023/01/29\tramlinesversionnumber\
+[2024/07/18\tramlinesversionnumber\
Tramlines]
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3c
@@ -36,7 +36,7 @@
\centering
{%notglobal
\setlength\doublerulesep{\tramlinesep}% <-- set distance between double rule
-\begin{tabular}[t]{l c c }
+\begin{tabular}[b]{c c c }
\toprule\toprule
& #1 & \\
\bottomrule\bottomrule
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/beamercolorthemeTUDa.sty b/Master/texmf-dist/tex/latex/tuda-ci/beamercolorthemeTUDa.sty
index 0a7b2a9723d..62af9069e55 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/beamercolorthemeTUDa.sty
+++ b/Master/texmf-dist/tex/latex/tuda-ci/beamercolorthemeTUDa.sty
@@ -1,4 +1,4 @@
-%% This is file `beamercolorthemeTUDa.sty' version 3.39 (2024-06-27),
+%% This is file `beamercolorthemeTUDa.sty' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/beamercolorthemeTUDa2008.sty b/Master/texmf-dist/tex/latex/tuda-ci/beamercolorthemeTUDa2008.sty
index 60b262bbef0..14a86607d18 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/beamercolorthemeTUDa2008.sty
+++ b/Master/texmf-dist/tex/latex/tuda-ci/beamercolorthemeTUDa2008.sty
@@ -1,4 +1,4 @@
-%% This is file `beamercolorthemeTUDa2008.sty' version 3.39 (2024-06-27)
+%% This is file `beamercolorthemeTUDa2008.sty' version 3.41 (2024-07-02)
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/beamerfontthemeTUDa.sty b/Master/texmf-dist/tex/latex/tuda-ci/beamerfontthemeTUDa.sty
index 54fcdc35796..c2ec43d33ea 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/beamerfontthemeTUDa.sty
+++ b/Master/texmf-dist/tex/latex/tuda-ci/beamerfontthemeTUDa.sty
@@ -1,4 +1,4 @@
-%% This is file `beamerfontthemeTUDa.sty' version 3.39 (2024-06-27)
+%% This is file `beamerfontthemeTUDa.sty' version 3.41 (2024-07-02)
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/beamerfontthemeTUDa2008.sty b/Master/texmf-dist/tex/latex/tuda-ci/beamerfontthemeTUDa2008.sty
index dd6dd37d5ae..4ac32a79cda 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/beamerfontthemeTUDa2008.sty
+++ b/Master/texmf-dist/tex/latex/tuda-ci/beamerfontthemeTUDa2008.sty
@@ -1,4 +1,4 @@
-%% This is file `beamerfontthemeTUDa2008.sty' version 3.39 (2024-06-27)
+%% This is file `beamerfontthemeTUDa2008.sty' version 3.41 (2024-07-02)
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/beamerinnerthemeTUDa.sty b/Master/texmf-dist/tex/latex/tuda-ci/beamerinnerthemeTUDa.sty
index 7b187cc3e7e..f2a82c86a5f 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/beamerinnerthemeTUDa.sty
+++ b/Master/texmf-dist/tex/latex/tuda-ci/beamerinnerthemeTUDa.sty
@@ -1,4 +1,4 @@
-%% This is file `beamerinnerthemeTUDa.sty' version 3.39 (2024-06-27)
+%% This is file `beamerinnerthemeTUDa.sty' version 3.41 (2024-07-02)
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/beamerinnerthemeTUDa2008.sty b/Master/texmf-dist/tex/latex/tuda-ci/beamerinnerthemeTUDa2008.sty
index 52fdc3b0ba9..55644e97664 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/beamerinnerthemeTUDa2008.sty
+++ b/Master/texmf-dist/tex/latex/tuda-ci/beamerinnerthemeTUDa2008.sty
@@ -1,4 +1,4 @@
-%% This is file `beamerinnerthemeTUDa2008.sty' version 3.39 (2024-06-27),
+%% This is file `beamerinnerthemeTUDa2008.sty' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/beamerinnerthemeTUDa2023.sty b/Master/texmf-dist/tex/latex/tuda-ci/beamerinnerthemeTUDa2023.sty
index e2edb462c50..e4780a9fefd 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/beamerinnerthemeTUDa2023.sty
+++ b/Master/texmf-dist/tex/latex/tuda-ci/beamerinnerthemeTUDa2023.sty
@@ -1,4 +1,4 @@
-%% This is file `beamerinnerthemeTUDa2023.sty' version 3.39 (2024-06-27),
+%% This is file `beamerinnerthemeTUDa2023.sty' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/beamerouterthemeTUDa.sty b/Master/texmf-dist/tex/latex/tuda-ci/beamerouterthemeTUDa.sty
index 54d0a141f4e..38f1a7b00a2 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/beamerouterthemeTUDa.sty
+++ b/Master/texmf-dist/tex/latex/tuda-ci/beamerouterthemeTUDa.sty
@@ -1,4 +1,4 @@
-%% This is file `beamerouterthemeTUDa.sty' version 3.39 (2024-06-27),
+%% This is file `beamerouterthemeTUDa.sty' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/beamerouterthemeTUDa2008.sty b/Master/texmf-dist/tex/latex/tuda-ci/beamerouterthemeTUDa2008.sty
index 61e65d351ea..b74da09f609 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/beamerouterthemeTUDa2008.sty
+++ b/Master/texmf-dist/tex/latex/tuda-ci/beamerouterthemeTUDa2008.sty
@@ -1,4 +1,4 @@
-%% This is file `beamerouterthemeTUDa2008.sty' version 3.39 (2024-06-27),
+%% This is file `beamerouterthemeTUDa2008.sty' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa-mecheng.sty b/Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa-mecheng.sty
index 0f3b3f84891..e84e7fa228e 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa-mecheng.sty
+++ b/Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa-mecheng.sty
@@ -1,4 +1,4 @@
-%% This is file `beamerthemeTUDa-mecheng.sty' version 3.39 (2024-06-27),
+%% This is file `beamerthemeTUDa-mecheng.sty' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,8 +25,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
+\def\fileversion{3.41}
+\def\filedate{2024-07-02}
\ProvidesExplPackage{beamerthemeTUDa-mecheng}{\filedate}{\fileversion}{specific tudabeamer configuration for the department of mechanical engineering}
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa.sty b/Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa.sty
index bccd070c5fe..beb85e6785d 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa.sty
+++ b/Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa.sty
@@ -1,4 +1,4 @@
-%% This is file `beamerthemeTUDa.sty' version 3.39 (2024-06-27),
+%% This is file `beamerthemeTUDa.sty' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa2008.sty b/Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa2008.sty
index 25a6b83e7de..f3c3064841c 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa2008.sty
+++ b/Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa2008.sty
@@ -1,4 +1,4 @@
-%% This is file `beamerthemeTUDa2008.sty' version 3.39 (2024-06-27),
+%% This is file `beamerthemeTUDa2008.sty' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,8 +25,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
+\def\fileversion{3.41}
+\def\filedate{2024-07-02}
\NeedsTeXFormat{LaTeX2e}[2022/06/01]
\ProvidesPackage{beamerthemeTUDa2008}
[\filedate\space\fileversion\space beamer theme using the Corporate Design of TU Darmstadt Design of 2008]
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa2023.sty b/Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa2023.sty
index a828f2edb2e..7095ba69f12 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa2023.sty
+++ b/Master/texmf-dist/tex/latex/tuda-ci/beamerthemeTUDa2023.sty
@@ -1,4 +1,4 @@
-%% This is file `beamerthemeTUDa2023.sty' version 3.39 (2024-06-27)
+%% This is file `beamerthemeTUDa2023.sty' version 3.41 (2024-07-02)
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tuda-a0paper.clo b/Master/texmf-dist/tex/latex/tuda-ci/tuda-a0paper.clo
index f26920e488f..55147ed57f1 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tuda-a0paper.clo
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tuda-a0paper.clo
@@ -1,4 +1,4 @@
-%% This is file `tuda-a0paper.clo' version 3.39 (2024-06-27),
+%% This is file `tuda-a0paper.clo' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,16 +25,18 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
-\ProvidesExplFile{tuda-a0paper.clo}{\filedate}{\fileversion}{tuda-ci~size~adjustments~for~a0paper}
+\ProvidesExplFile{tuda-a0paper.clo}{2024-07-01}{3.40}{tuda-ci~size~adjustments~for~a0paper}
\cs_set:Nn \ptxcd_setup_title_sizes: {
- \cs_set:Nn \ptxcd_title_fontsize: {{125pt}{165pt}}
- \cs_set:Nn \ptxcd_titleinfo_fontsize: {{28pt}{35pt}}
- \cs_set:Nn \ptxcd_titlethanks_fontsize: {{24pt}{30pt}}
+ \cs_set:Nn \ptxcd_title_fontsize: {{125pt}{165pt}}
+ \cs_set:Nn \ptxcd_titleinfo_fontsize: {{28pt}{35pt}}
+ \cs_set:Nn \ptxcd_titlethanks_fontsize: {{24pt}{30pt}}
}
\cs_set:Nn \ptxcd_setup_base_sizes: {
- \tl_if_empty:NT \g_ptxcd_fontsize_tl {\tl_gset:Nn \g_ptxcd_fontsize_tl {30pt}}
- \dim_gset:Nn \g_ptxcd_margin_dim {30mm}
+ \tl_if_empty:NT \g_ptxcd_fontsize_tl {
+ \tl_gset:Nn \g_ptxcd_fontsize_tl {30pt}
+ }
+ \dim_gset:Nn \g_ptxcd_margin_dim {30mm}
}
\endinput
+%%
+%% End of file `tuda-a0paper.clo'.
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tuda-a1paper.clo b/Master/texmf-dist/tex/latex/tuda-ci/tuda-a1paper.clo
index a09b5483935..4a89742e12c 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tuda-a1paper.clo
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tuda-a1paper.clo
@@ -1,4 +1,4 @@
-%% This is file `tuda-a1paper.clo' version 3.39 (2024-06-27),
+%% This is file `tuda-a1paper.clo' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,16 +25,18 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
-\ProvidesExplFile{tuda-a1paper.clo}{\filedate}{\fileversion}{tuda-ci~size~adjustments~for~a1paper}
+\ProvidesExplFile{tuda-a1paper.clo}{2024-07-01}{3.40}{tuda-ci~size~adjustments~for~a1paper}
\cs_set:Nn \ptxcd_setup_title_sizes: {
- \cs_set:Nn \ptxcd_title_fontsize: {{86pt}{120pt}}
- \cs_set:Nn \ptxcd_titleinfo_fontsize: {{35pt}{42pt}}
- \cs_set:Nn \ptxcd_titlethanks_fontsize: {{22pt}{26pt}}
+ \cs_set:Nn \ptxcd_title_fontsize: {{86pt}{120pt}}
+ \cs_set:Nn \ptxcd_titleinfo_fontsize: {{35pt}{42pt}}
+ \cs_set:Nn \ptxcd_titlethanks_fontsize: {{22pt}{26pt}}
}
\cs_set:Nn \ptxcd_setup_base_sizes: {
- \tl_if_empty:NT \g_ptxcd_fontsize_tl {\tl_gset:Nn \g_ptxcd_fontsize_tl {25pt}}
- \dim_gset:Nn \g_ptxcd_margin_dim {30mm}
+ \tl_if_empty:NT \g_ptxcd_fontsize_tl {
+ \tl_gset:Nn \g_ptxcd_fontsize_tl {25pt}
+ }
+ \dim_gset:Nn \g_ptxcd_margin_dim {30mm}
}
\endinput
+%%
+%% End of file `tuda-a1paper.clo'.
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tuda-a2paper.clo b/Master/texmf-dist/tex/latex/tuda-ci/tuda-a2paper.clo
index 6b39a2e0c1b..57121954a49 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tuda-a2paper.clo
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tuda-a2paper.clo
@@ -1,4 +1,4 @@
-%% This is file `tuda-a2paper.clo' version 3.39 (2024-06-27),
+%% This is file `tuda-a2paper.clo' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,16 +25,18 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
-\ProvidesExplFile{tuda-a2paper.clo}{\filedate}{\fileversion}{tuda-ci~size~adjustments~for~a0paper}
+\ProvidesExplFile{tuda-a2paper.clo}{2024-07-01}{3.40}{tuda-ci~size~adjustments~for~a2paper}
\cs_set:Nn \ptxcd_setup_title_sizes: {
- \cs_set:Nn \ptxcd_title_fontsize: {{65pt}{82pt}}
- \cs_set:Nn \ptxcd_titleinfo_fontsize: {{22pt}{28pt}}
- \cs_set:Nn \ptxcd_titlethanks_fontsize: {{14pt}{20pt}}
+ \cs_set:Nn \ptxcd_title_fontsize: {{65pt}{82pt}}
+ \cs_set:Nn \ptxcd_titleinfo_fontsize: {{22pt}{28pt}}
+ \cs_set:Nn \ptxcd_titlethanks_fontsize: {{14pt}{20pt}}
}
\cs_set:Nn \ptxcd_setup_base_sizes: {
- \tl_if_empty:NT \g_ptxcd_fontsize_tl {\tl_gset:Nn \g_ptxcd_fontsize_tl {25pt}}
+ \tl_if_empty:NT \g_ptxcd_fontsize_tl {
+ \tl_gset:Nn \g_ptxcd_fontsize_tl {25pt}
+ }
\dim_gset:Nn \g_ptxcd_margin_dim {30mm}
}
\endinput
+%%
+%% End of file `tuda-a2paper.clo'.
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tuda-a3paper.clo b/Master/texmf-dist/tex/latex/tuda-ci/tuda-a3paper.clo
index 1669e7082ae..e841639ad03 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tuda-a3paper.clo
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tuda-a3paper.clo
@@ -1,4 +1,4 @@
-%% This is file `tuda-a3paper.clo' version 3.39 (2024-06-27),
+%% This is file `tuda-a3paper.clo' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,16 +25,18 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
-\ProvidesExplFile{tuda-a3paper.clo}{\filedate}{\fileversion}{tuda-ci~size~adjustments~for~a3paper}
+\ProvidesExplFile{tuda-a3paper.clo}{2024-07-01}{3.40}{tuda-ci~size~adjustments~for~a3paper}
\cs_set:Nn \ptxcd_setup_title_sizes: {
- \cs_set:Nn \ptxcd_title_fontsize: {{47pt}{61pt}}
- \cs_set:Nn \ptxcd_titleinfo_fontsize: {{16pt}{20pt}}
- \cs_set:Nn \ptxcd_titlethanks_fontsize: {{12pt}{16pt}}
+ \cs_set:Nn \ptxcd_title_fontsize: {{47pt}{61pt}}
+ \cs_set:Nn \ptxcd_titleinfo_fontsize: {{16pt}{20pt}}
+ \cs_set:Nn \ptxcd_titlethanks_fontsize: {{12pt}{16pt}}
}
\cs_set:Nn \ptxcd_setup_base_sizes: {
- \tl_if_empty:NT \g_ptxcd_fontsize_tl {\tl_gset:Nn \g_ptxcd_fontsize_tl {17pt}}
- \dim_gset:Nn \g_ptxcd_margin_dim {15mm}
+ \tl_if_empty:NT \g_ptxcd_fontsize_tl {
+ \tl_gset:Nn \g_ptxcd_fontsize_tl {17pt}
+ }
+ \dim_gset:Nn \g_ptxcd_margin_dim {15mm}
}
\endinput
+%%
+%% End of file `tuda-a3paper.clo'.
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tuda-a4paper.clo b/Master/texmf-dist/tex/latex/tuda-ci/tuda-a4paper.clo
index 70605e9f31a..646a994a6ad 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tuda-a4paper.clo
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tuda-a4paper.clo
@@ -1,4 +1,4 @@
-%% This is file `tuda-a4paper.clo' version 3.39 (2024-06-27),
+%% This is file `tuda-a4paper.clo' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,16 +25,18 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
-\ProvidesExplFile{tuda-a4paper.clo}{\filedate}{\fileversion}{tuda-ci~size~adjustments~for~a4paper}
+\ProvidesExplFile{tuda-a4paper.clo}{2024-07-01}{3.40}{tuda-ci~size~adjustments~for~a4paper}
\cs_set:Nn \ptxcd_setup_title_sizes: {
- \cs_set:Nn \ptxcd_title_fontsize: {{36pt}{47pt}}
- \cs_set:Nn \ptxcd_titleinfo_fontsize: {{12pt}{14pt}}
- \cs_set:Nn \ptxcd_titlethanks_fontsize: {{10pt}{11.5pt}}
+ \cs_set:Nn \ptxcd_title_fontsize: {{36pt}{47pt}}
+ \cs_set:Nn \ptxcd_titleinfo_fontsize: {{12pt}{14pt}}
+ \cs_set:Nn \ptxcd_titlethanks_fontsize: {{10pt}{11.5pt}}
}
\cs_set:Nn \ptxcd_setup_base_sizes: {
- \tl_if_empty:NT \g_ptxcd_fontsize_tl {\tl_gset:Nn \g_ptxcd_fontsize_tl {14pt}}
- \dim_gset:Nn \g_ptxcd_margin_dim {15mm}
+ \tl_if_empty:NT \g_ptxcd_fontsize_tl {
+ \tl_gset:Nn \g_ptxcd_fontsize_tl {14pt}
+ }
+ \dim_gset:Nn \g_ptxcd_margin_dim {15mm}
}
\endinput
+%%
+%% End of file `tuda-a4paper.clo'.
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tuda-a5paper.clo b/Master/texmf-dist/tex/latex/tuda-ci/tuda-a5paper.clo
index dff190b3e70..8c0ef0e94f7 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tuda-a5paper.clo
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tuda-a5paper.clo
@@ -1,4 +1,4 @@
-%% This is file `tuda-a5paper.clo' version 3.39 (2024-06-27),
+%% This is file `tuda-a5paper.clo' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,16 +25,18 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
-\ProvidesExplFile{tuda-a5paper.clo}{\filedate}{\fileversion}{tuda-ci~size~adjustments~for~a5paper}
+\ProvidesExplFile{tuda-a5paper.clo}{2024-07-01}{3.40}{tuda-ci~size~adjustments~for~a5paper}
\cs_set:Nn \ptxcd_setup_title_sizes: {
- \cs_set:Nn \ptxcd_title_fontsize: {{22pt}{28pt}}
- \cs_set:Nn \ptxcd_titleinfo_fontsize: {{10pt}{11.5pt}}
- \cs_set:Nn \ptxcd_titlethanks_fontsize: {{10pt}{11.5pt}}
+ \cs_set:Nn \ptxcd_title_fontsize: {{22pt}{28pt}}
+ \cs_set:Nn \ptxcd_titleinfo_fontsize: {{10pt}{11.5pt}}
+ \cs_set:Nn \ptxcd_titlethanks_fontsize: {{10pt}{11.5pt}}
}
\cs_set:Nn \ptxcd_setup_base_sizes: {
- \tl_if_empty:NT \g_ptxcd_fontsize_tl {\tl_gset:Nn \g_ptxcd_fontsize_tl {10pt}}
- \dim_gset:Nn \g_ptxcd_margin_dim {12mm}
+ \tl_if_empty:NT \g_ptxcd_fontsize_tl {
+ \tl_gset:Nn \g_ptxcd_fontsize_tl {10pt}
+ }
+ \dim_gset:Nn \g_ptxcd_margin_dim {12mm}
}
\endinput
+%%
+%% End of file `tuda-a5paper.clo'.
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tuda-pgfplots.sty b/Master/texmf-dist/tex/latex/tuda-ci/tuda-pgfplots.sty
index 5e5bae21f01..b0a32c7502f 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tuda-pgfplots.sty
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tuda-pgfplots.sty
@@ -1,4 +1,4 @@
-%% This is file `tuda-pgfplots.sty' version 3.39 (2024-06-27),
+%% This is file `tuda-pgfplots.sty' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,8 +25,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
+\def\fileversion{3.41}
+\def\filedate{2024-07-02}
% Special thanks to: Sebastian Schöps Institut Theorie Elektromagnetischer Felder (TEMF), TU Darmstadt
% The original version of this file has been inspired by the colorscheme in the Metropolis beamer theme by Matthias Vogelgesang https://github.com/matze/mtheme
\ProvidesPackage{tuda-pgfplots}[\filedate\space\fileversion\space tuda-ci pgfplots color schemes]
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tudabeamer.cls b/Master/texmf-dist/tex/latex/tuda-ci/tudabeamer.cls
index 184616df31b..df4840467e0 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tudabeamer.cls
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tudabeamer.cls
@@ -1,4 +1,4 @@
-%% This is file `tudabeamer.cls' version 3.39 (2024-06-27),
+%% This is file `tudabeamer.cls' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,8 +25,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
+\def\fileversion{3.41}
+\def\filedate{2024-07-02}
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{tudabeamer}
[\filedate\space\fileversion\space]
@@ -124,9 +124,9 @@
\bool_if:NT \g_ptxcd_pdfa_bool {\PassOptionsToPackage{RGB}{xcolor}}
\bool_if:NT \g_ptxcd_pdfa_bool {
-\RequirePackage{scrlfile}
-\PreventPackageFromLoading{hyperref}
-\def\hypersetup#1{}
+ \RequirePackage{scrlfile}
+ \PreventPackageFromLoading{hyperref}
+ \def\hypersetup#1{}
}
\ExplSyntaxOff
@@ -137,7 +137,16 @@
\bool_if:NT \g_ptxcd_pdfa_bool {
\UnPreventPackageFromLoading{hyperref}
\PassOptionsToPackage{a-2b}{pdfx}
+% Workaround posted by David Carlisle on tex.stackexchange
+% Thanks to Ulrike Fischer for mentioning it in #472
+ \let \__ptxcd_grouplevel_before_pdfx: \currentgrouplevel
+ \chardef\currentgrouplevel0
+ \ExplSyntaxOff
\RequirePackage{pdfx}
+ \ExplSyntaxOn
+ \let \currentgrouplevel \__ptxcd_grouplevel_before_pdfx:
+ \cs_undefine:N \__ptxcd_grouplevel_before_pdfx:
+% end of the workaround
}
\hypersetup{hidelinks, unicode}
@@ -242,7 +251,7 @@
\let\accentfont\normalfont%
\file_if_exist:nT {\g__ptxcd_config_prefix_tl beamerthemeTUDa-\g_ptxcd_department_str.sty}
- {\usepackage{\g__ptxcd_config_prefix_tl beamerthemeTUDa-\g_ptxcd_department_str}}
+ {\RequirePackage{\g__ptxcd_config_prefix_tl beamerthemeTUDa-\g_ptxcd_department_str}}
\ExplSyntaxOff
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tudacolors.def b/Master/texmf-dist/tex/latex/tuda-ci/tudacolors.def
index 6fe3861ef1a..44f09edb861 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tudacolors.def
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tudacolors.def
@@ -1,4 +1,4 @@
-%% This is file `tudacolors.def' version 3.39 (2024-06-27),
+%% This is file `tudacolors.def' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,8 +25,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
+\def\fileversion{3.41}
+\def\filedate{2024-07-02}
\ProvidesFile{tudacolors.def}
[\filedate\space\fileversion\space Color definitions for tuda-ci]
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tudacolors.sty b/Master/texmf-dist/tex/latex/tuda-ci/tudacolors.sty
index 1e85a053000..448483daaf7 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tudacolors.sty
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tudacolors.sty
@@ -1,4 +1,4 @@
-%% This is file `tudacolors.sty' version 3.39 (2024-06-27),
+%% This is file `tudacolors.sty' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,8 +25,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
+\def\fileversion{3.41}
+\def\filedate{2024-07-02}
\NeedsTeXFormat{LaTeX2e}
\ProvidesExplPackage{tudacolors}{\filedate}{\fileversion}{Color definition for TU Darmstadt's tuda-ci bundle}
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tudaexercise.cls b/Master/texmf-dist/tex/latex/tuda-ci/tudaexercise.cls
index cb57b6249c0..366b9668261 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tudaexercise.cls
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tudaexercise.cls
@@ -1,4 +1,4 @@
-%% This is file `tudaexercise.cls' version 3.39 (2024-06-27),
+%% This is file `tudaexercise.cls' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,8 +25,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
+\def\fileversion{3.41}
+\def\filedate{2024-07-02}
\NeedsTeXFormat{LaTeX2e}
\ProvidesExplClass{tudaexercise}
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tudafonts.sty b/Master/texmf-dist/tex/latex/tuda-ci/tudafonts.sty
index cc05ff24044..9fb3ad06005 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tudafonts.sty
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tudafonts.sty
@@ -1,4 +1,4 @@
-%% This is file `tudafonts.sty' version 3.39 (2024-06-27),
+%% This is file `tudafonts.sty' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,8 +25,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
+\def\fileversion{3.41}
+\def\filedate{2024-07-02}
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{tudafonts}
[\filedate\space\fileversion\space
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tudaleaflet.cls b/Master/texmf-dist/tex/latex/tuda-ci/tudaleaflet.cls
index 46da40287a7..52b86eb3321 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tudaleaflet.cls
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tudaleaflet.cls
@@ -1,4 +1,4 @@
-%% This is file `tudaleaflet.cls' version 3.39 (2024-06-27),
+%% This is file `tudaleaflet.cls' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,8 +25,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
+\def\fileversion{3.41}
+\def\filedate{2024-07-02}
\NeedsTeXFormat{LaTeX2e}
\ProvidesExplPackage{tudaleaflet}{\filedate}{\fileversion}{Leaflets using the Corporate Design of TU Darmstadt}
@@ -88,7 +88,7 @@
\RequirePackage{scrextend}
\RequirePackage{scrlayer}
\PassOptionsToPackage{cmyk}{tudacolors}
-\usepackage[paper=leaflet]{tudarules}
+\RequirePackage[paper=leaflet]{tudarules}
\setlength{\headheight}{1cm}%to add headline
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tudaletter.cls b/Master/texmf-dist/tex/latex/tuda-ci/tudaletter.cls
index 462cfed709d..9eb3a15953a 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tudaletter.cls
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tudaletter.cls
@@ -1,4 +1,4 @@
-%% This is file `tudaletter.cls' version 3.39 (2024-06-27),
+%% This is file `tudaletter.cls' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,8 +25,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
+\def\fileversion{3.41}
+\def\filedate{2024-07-02}
\NeedsTeXFormat{LaTeX2e}
\ProvidesExplClass{tudaletter}
@@ -121,6 +121,11 @@
% Load the TUDa-colorscheme
\RequirePackage{tudacolors}
+\RequirePackage{tudafonts}
+\RequirePackage{graphicx}
+\RequirePackage{afterpage}
+\RequirePackage{ragged2e}
+
\bool_if:NTF \g__ptxcd_letter_premium_bool
{ \cs_new:Nn \ptxcd_premiumcolor: {accentcolor}
@@ -132,10 +137,6 @@
\let\ptxcd_use_premiumcolor_text:\relax
}
-\RequirePackage{tudafonts}
-\RequirePackage{graphicx}
-\RequirePackage{afterpage}
-\RequirePackage{ragged2e}
%%%%%Briefbogen
@@ -171,32 +172,50 @@
\geometry{top=30mm}
}
-\@setplength{firstheadhpos}{\c_ptxcd_HeadMargin_dim}
-\@setplength{firstheadvpos}{\c_ptxcd_HeadMargin_dim}
-\@setplength{firstheadwidth}{\dim_eval:n {\paperwidth - 2\c_ptxcd_HeadMargin_dim}}
+\if_bool:N \g_ptxcd_pdfx_bool
+ \PassOptionsToPackage{a-2b}{pdfx}
+% Workaround posted by David Carlisle on tex.stackexchange
+% Thanks to Ulrike Fischer for mentioning it in #472
+ \let \__ptxcd_grouplevel_before_pdfx: \currentgrouplevel
+ \chardef\currentgrouplevel0
+ \ExplSyntaxOff
+ \RequirePackage{pdfx}
+ \ExplSyntaxOn
+ \let \currentgrouplevel \__ptxcd_grouplevel_before_pdfx:
+ \cs_undefine:N \__ptxcd_grouplevel_before_pdfx:
+% end of the workaround
+\else:
+ \PassOptionsToPackage{hidelinks, unicode}{hyperref}
+ \RequirePackage{hyperref}
+\fi:
+
+\RequirePackage[paper=a4]{tudarules}% might load pgfcore, so it has to be loaded after pdfx
+
+\setplength{firstheadhpos}{\c_ptxcd_HeadMargin_dim}
+\setplength{firstheadvpos}{\c_ptxcd_HeadMargin_dim}
+\setplength{firstheadwidth}{\dim_eval:n {\paperwidth - 2\c_ptxcd_HeadMargin_dim}}
-\@setplength{firstfootvpos}{\dim_eval:n {\paperheight -17mm}}
-\@setplength{firstfoothpos}{\useplength{firstheadhpos}}
-\@setplength{firstfootwidth}{\useplength{firstheadwidth}}
+\setplength{firstfootvpos}{\dim_eval:n {\paperheight -17mm}}
+\setplength{firstfoothpos}{\useplength{firstheadhpos}}
+\setplength{firstfootwidth}{\useplength{firstheadwidth}}
-\@setplength{toaddrhpos}{\c_ptxcd_LeftMargin_dim}
-\@setplength{toaddrvpos}{50mm}
-\@setplength{backaddrheight}{4mm}
-\@setplength{toaddrindent}{0mm}
+\setplength{toaddrhpos}{\c_ptxcd_LeftMargin_dim}
+\setplength{toaddrvpos}{50mm}
+\setplength{backaddrheight}{4mm}
+\setplength{toaddrindent}{0mm}
-\@setplength{refhpos}{\c_ptxcd_LeftMargin_dim}
-\@setplength{refvpos}{106mm}
+\setplength{refhpos}{\c_ptxcd_LeftMargin_dim}
+\setplength{refvpos}{106mm}
-\@setplength{subjectaftervskip}{2\baselineskip}
-\@setplength{lochpos}{\c_ptxcd_HeadMargin_dim}
-\@setplength{locvpos}{\dimexpr\useplength{refvpos}+\useplength{subjectaftervskip}+1.4\baselineskip\relax}
-\@setplength{refaftervskip}{0pt}
-\@setplength{subjectbeforevskip}{0pt}
-\@setplength{locwidth}{\dimexpr\paperwidth-154,5mm -\c_ptxcd_HeadMargin_dim\relax}
-\@setplength{locheight}{\dimexpr\paperheight-\useplength{locvpos}-\c_ptxcd_BottomMargin_dim\relax}
+\setplength{subjectaftervskip}{2\baselineskip}
+\setplength{lochpos}{\c_ptxcd_HeadMargin_dim}
+\setplength{locvpos}{\dimexpr\useplength{refvpos}+\useplength{subjectaftervskip}+1.4\baselineskip\relax}
+\setplength{refaftervskip}{0pt}
+\setplength{subjectbeforevskip}{0pt}
+\setplength{locwidth}{\dimexpr\paperwidth-154,5mm -\c_ptxcd_HeadMargin_dim\relax}
+\setplength{locheight}{\dimexpr\paperheight-\useplength{locvpos}-\c_ptxcd_BottomMargin_dim\relax}
-\RequirePackage[paper=a4]{tudarules}
\bool_if:NTF \g__ptxcd_letter_headrule_bool {
\ptxcd_makeheadrule[width=\useplength{firstheadwidth},color=identbarcolor]{ptxcd_LetterheadRule}
@@ -461,7 +480,16 @@
%pdfa
\if_bool:N \g_ptxcd_pdfx_bool
\PassOptionsToPackage{a-2b}{pdfx}
+% Workaround posted by David Carlisle on tex.stackexchange
+% Thanks to Ulrike Fischer for mentioning it in #472
+ \let \__ptxcd_grouplevel_before_pdfx: \currentgrouplevel
+ \chardef\currentgrouplevel0
+ \ExplSyntaxOff
\RequirePackage{pdfx}
+ \ExplSyntaxOn
+ \let \currentgrouplevel \__ptxcd_grouplevel_before_pdfx:
+ \cs_undefine:N \__ptxcd_grouplevel_before_pdfx:
+% end of the workaround
%%hyperref
\hypersetup{hidelinks, unicode}
\iow_new:N \ptxcd_xmpdata_stream
@@ -521,8 +549,6 @@
} {See~ TUDa-CI~ or~ pdfx~ documentation~ for~ details.}
\else:
- \PassOptionsToPackage{hidelinks, unicode}{hyperref}
- \RequirePackage{hyperref}
\hypersetup{pdfcreator=LaTeX~using~TUDa-CI}
\msg_new:nnnn {tudapub} {metadata-to-hypersetup} {
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tudalettersize10pt.clo b/Master/texmf-dist/tex/latex/tuda-ci/tudalettersize10pt.clo
index f88ea788df1..216642a28ce 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tudalettersize10pt.clo
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tudalettersize10pt.clo
@@ -1,4 +1,4 @@
-%% This is file `tudalettersize10pt.clo' version 3.39 (2024-06-27),
+%% This is file `tudalettersize10pt.clo' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -37,9 +37,11 @@
%%
\ProvidesFile{%
tudalettersize10pt.clo%
-}[tudaletter font size class option]
-
-\def\normalsize{%
+}[
+ tudaletter font size class option (10pt)
+]
+\let\normalsize\@undefined
+\DeclareRobustCommand\normalsize{%
\@setfontsize\normalsize\@xpt\@xipt
\abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
\abovedisplayshortskip \z@ \@plus3\p@
@@ -49,9 +51,11 @@
}
\def\datasize{%
\normalsize
- \@setfontsize\normalsize\@xpt\@xiiipt
+ \@setfontsize\normalsize
+ \@xpt\@xiiipt
}
-\def\small{%
+\let\small\@undefined
+\DeclareRobustCommand\small{%
\@setfontsize\small\@ixpt{11}%
\abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@
\abovedisplayshortskip \z@ \@plus2\p@
@@ -62,7 +66,8 @@
\itemsep \parsep}%
\belowdisplayskip \abovedisplayskip
}
-\def\footnotesize{%
+\let\footnotesize\@undefined
+\DeclareRobustCommand\footnotesize{%
\@setfontsize\footnotesize{7.5pt}\@xpt%
\abovedisplayskip 6\p@ \@plus2\p@ \@minus4\p@
\abovedisplayshortskip \z@ \@plus\p@
@@ -73,21 +78,28 @@
\itemsep \parsep}%
\belowdisplayskip \abovedisplayskip
}
-\def\scriptsize{\@setfontsize\scriptsize\@viipt\@viiipt}
-\def\tiny{\@setfontsize\tiny\@vipt\@viipt}
-\def\large{\@setfontsize\large\@xiipt{14}}
-\def\Large{\@setfontsize\Large\@xivpt{18}}
-\def\LARGE{\@setfontsize\LARGE\@xviipt{22}}
-\def\huge{\@setfontsize\huge\@xxpt{25}}
-\def\Huge{\@setfontsize\Huge\@xxvpt{30}}
+\let\scriptsize\@undefined
+\let\tiny\@undefined
+\let\large\@undefined
+\let\Large\@undefined
+\let\LARGE\@undefined
+\let\huge\@undefined
+\let\Huge\@undefined
+\DeclareRobustCommand\scriptsize{\@setfontsize\scriptsize\@viipt\@viiipt}
+\DeclareRobustCommand\tiny{\@setfontsize\tiny\@vipt\@viipt}
+\DeclareRobustCommand\large{\@setfontsize\large\@xiipt{14}}
+\DeclareRobustCommand\Large{\@setfontsize\Large\@xivpt{18}}
+\DeclareRobustCommand\LARGE{\@setfontsize\LARGE\@xviipt{22}}
+\DeclareRobustCommand\huge{\@setfontsize\huge\@xxpt{25}}
+\DeclareRobustCommand\Huge{\@setfontsize\Huge\@xxvpt{30}}
\normalsize
\setlength\footnotesep {6.65\p@}
\setlength{\skip\footins} {9\p@ \@plus 4\p@ \@minus 2\p@}
-\setlength\floatsep {12\p@ \@plus 2\p@ \@minus 2\p@}
\setlength\textfloatsep {20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
+\setlength\floatsep {12\p@ \@plus 2\p@ \@minus 2\p@}
\setlength\intextsep {12\p@ \@plus 2\p@ \@minus 2\p@}
\setlength\dblfloatsep {12\p@ \@plus 2\p@ \@minus 2\p@}
-\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@}
\setlength\@fptop {0\p@ \@plus 1fil}
\setlength\@fpsep {8\p@ \@plus 2fil}
\setlength\@fpbot {0\p@ \@plus 1fil}
@@ -96,32 +108,32 @@
\setlength\@dblfpbot {0\p@ \@plus 1fil}
\setlength\partopsep {2\p@ \@plus 1\p@ \@minus 1\p@}
\def\@listi{\leftmargin\leftmargini
- \parsep 4\p@ \@plus2\p@ \@minus\p@
- \topsep 8\p@ \@plus2\p@ \@minus4\p@
- \itemsep4\p@ \@plus2\p@ \@minus\p@}
+ \parsep 4\p@ \@plus2\p@ \@minus\p@
+ \topsep 8\p@ \@plus2\p@ \@minus4\p@
+ \itemsep \parsep}
\let\@listI\@listi
\def\@listii {\leftmargin\leftmarginii
- \labelwidth\leftmarginii
- \advance\labelwidth-\labelsep
- \topsep 4\p@ \@plus2\p@ \@minus\p@
- \parsep 2\p@ \@plus\p@ \@minus\p@
- \itemsep \parsep}
+ \labelwidth\leftmarginii
+ \advance\labelwidth-\labelsep
+ \topsep 4\p@ \@plus2\p@ \@minus\p@
+ \parsep 2\p@ \@plus\p@ \@minus\p@
+ \itemsep \parsep}
\def\@listiii{\leftmargin\leftmarginiii
- \labelwidth\leftmarginiii
- \advance\labelwidth-\labelsep
- \topsep 2\p@ \@plus\p@\@minus\p@
- \parsep \z@
- \partopsep \p@ \@plus\z@ \@minus\p@
- \itemsep \topsep}
+ \labelwidth\leftmarginiii
+ \advance\labelwidth-\labelsep
+ \topsep 2\p@ \@plus\p@\@minus\p@
+ \parsep \z@
+ \partopsep \p@ \@plus\z@ \@minus\p@
+ \itemsep \topsep}
\def\@listiv {\leftmargin\leftmarginiv
- \labelwidth\leftmarginiv
- \advance\labelwidth-\labelsep}
+ \labelwidth\leftmarginiv
+ \advance\labelwidth-\labelsep}
\def\@listv {\leftmargin\leftmarginv
- \labelwidth\leftmarginv
- \advance\labelwidth-\labelsep}
+ \labelwidth\leftmarginv
+ \advance\labelwidth-\labelsep}
\def\@listvi {\leftmargin\leftmarginvi
- \labelwidth\leftmarginvi
- \advance\labelwidth-\labelsep}
+ \labelwidth\leftmarginvi
+ \advance\labelwidth-\labelsep}
%%% From File: $Id: scrkernel-paragraphs.dtx 3064 2019-02-01 07:40:28Z kohm $
\@ifundefined{@list@extra}{}{%
\expandafter\ifnum\scr@v@is@ge{3.17}\par@updaterelative\fi
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tudamecheng.cfg b/Master/texmf-dist/tex/latex/tuda-ci/tudamecheng.cfg
index 3f139d6117a..d1d70773e85 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tudamecheng.cfg
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tudamecheng.cfg
@@ -1,4 +1,4 @@
-%% This is file `tudamecheng.cfg' version 3.39 (2024-06-27),
+%% This is file `tudamecheng.cfg' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,8 +25,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
+\def\fileversion{3.41}
+\def\filedate{2024-07-02}
\RequirePackage{expl3}
\ProvidesExplFile{tudamecheng.cfg}
{\filedate}{\fileversion}{Special Features the department of mechanical engineering of Darmstadt's Corporate Design (tuda-ci)}
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tudaposter.cls b/Master/texmf-dist/tex/latex/tuda-ci/tudaposter.cls
index 48b515d833c..0286215cb05 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tudaposter.cls
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tudaposter.cls
@@ -1,4 +1,4 @@
-%% This is file `tudaposter.cls' version 3.39 (2024-06-27),
+%% This is file `tudaposter.cls' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,8 +25,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
+\def\fileversion{3.41}
+\def\filedate{2024-07-02}
\NeedsTeXFormat{LaTeX2e}
\ProvidesExplPackage{tudaposter}{\filedate}{\fileversion}{Poster Layouts for the Corporate Design of TU Darmstadt}
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tudapub.cls b/Master/texmf-dist/tex/latex/tuda-ci/tudapub.cls
index a8347aac903..976d2a943ca 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tudapub.cls
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tudapub.cls
@@ -1,4 +1,4 @@
-%% This is file `tudapub.cls' version 3.39 (2024-06-27),
+%% This is file `tudapub.cls' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,8 +25,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
+\def\fileversion{3.41}
+\def\filedate{2024-07-02}
\NeedsTeXFormat{LaTeX2e}
\ProvidesExplClass{tudapub}
@@ -224,11 +224,6 @@
}
}
-\bool_if:NT \g_ptxcd_pdfx_bool {
- \PassOptionsToPackage{RGB}{xcolor}
- \msg_info:nn {tudapub} {colors-to-rgb}
-}
-
\exp_args:Nx \tl_if_eq:nnT {\prop_item:Nn \g_ptxcd_clsopts_prop {fontsize}} {9pt}
{
\prop_if_in:NnF \g_ptxcd_unknown_clsopts_prop {DIV}
@@ -254,6 +249,64 @@
\LoadClass{\g_ptxcd_pub_class_tl}
+\RequirePackage{tudafonts}
+\RequirePackage{tudacolors}
+\RequirePackage[draft=false]{scrlayer-scrpage}
+\RequirePackage{graphicx}
+
+\bool_if:NTF \g_ptxcd_pdfx_bool {
+ \PassOptionsToPackage{RGB}{xcolor}
+ \msg_info:nn {tudapub} {colors-to-rgb}
+
+ %only apply the hack if pdfx is older than the working version
+ \PassOptionsToPackage{a-2b}{pdfx}
+% Workaround posted by David Carlisle on tex.stackexchange
+% Thanks to Ulrike Fischer for mentioning it in #472
+ \let \__ptxcd_grouplevel_before_pdfx: \currentgrouplevel
+ \chardef\currentgrouplevel0
+ \ExplSyntaxOff
+ \RequirePackage{pdfx}
+ \ExplSyntaxOn
+ \let \currentgrouplevel \__ptxcd_grouplevel_before_pdfx:
+ \cs_undefine:N \__ptxcd_grouplevel_before_pdfx:
+% end of the workaround
+
+ \msg_new:nnn{tudapub} {prefer-lualatex} {
+ You~use~pdfa-mode~in~#1.\\
+ This~can~lead~to~incompatiblities~especially~with~older~compiler~versions.\\
+ You~should~prefer~using~lualatex.
+ }
+ \msg_new:nnnn{tudapub} {outdated-package-pdfa} {
+ Your~Version~of~the~#1-package~is~too~old~to~support~all~methods~required~by~tudapubs~pdfa-mode.\\
+ Either~update~your~TeX-distribution~or~switch~to~pdfa=false.
+ }{See~DEMO-tudapub~for~further~information.}
+
+
+ \sys_if_engine_pdftex:T {
+ \msg_warning:nnn{tudapub} {prefer-lualatex} {PDFTeX}
+ }
+
+ \sys_if_engine_xetex:T {
+ \msg_warning:nnn{tudapub} {prefer-lualatex} {XeTeX}
+ }
+
+ \@ifpackagelater{xmpincl}{2021/09/22}{
+ }{
+ \msg_error:nn{tudapub} {outdated-package-pdfa} {xmpincl}
+ }
+
+ \@ifpackagelater{pdfx}{2018/12/01}{
+ }{
+ \msg_error:nn{tudapub} {outdated-package-pdfa} {pdfx}
+ }
+} {
+ \PassOptionsToPackage{hidelinks, unicode}{hyperref}
+ \RequirePackage{hyperref}
+}
+
+\RequirePackage{tudarules}
+\RequirePackage{trimclip}
+\RequirePackage{bookmark}
\prop_map_inline:Nn \g_ptxcd_unknown_clsopts_prop {
\cs_if_exist:cT {KV@KOMA.\g_ptxcd_pub_class_tl.cls@#1} {
@@ -299,12 +352,6 @@
}
-\usepackage{tudarules}
-
-
-%,~ subsection,~
-\usepackage{tudafonts}
-
%Margin & titlefontsize setup setup
\bool_new:N \g_ptxcd_marginpar_bool
@@ -386,8 +433,7 @@
%%%%%Anfang Randeinstellungen Geometry
-%Has to be loaded here due to headwidth options
-\usepackage[draft=false]{scrlayer-scrpage}
+
\AddToHook{begindocument}[tudapub:BCOR-titlepage]{
\bool_if:NT \g_ptxcd_BCOR_titlepage_bool
@@ -464,7 +510,6 @@
-
\newcommand*{\institution}[1]{
\def\ptxcd_institution{#1}
}
@@ -472,7 +517,6 @@
\cs_new:Nn \ptxcd_titlerule_sep: {\the\dp\strutbox}
-\usepackage{tudacolors}
\setkomafont{disposition}{\sffamily\bfseries}
\setkomafont{pageheadfoot}{\sffamily\small}
@@ -600,7 +644,6 @@
\newcommand{\titleimage}[1]{\tl_gset:Nn \g_ptxcd_titleimage_code_tl {#1}}
\box_new:N \l__ptxcd_titlegraphic_box
-\RequirePackage{trimclip}
\NewDocumentCommand{\titlegraphic}{sm}{
\IfBooleanTF{#1}{
@@ -640,7 +683,7 @@
You~selected~an~unknown~language~#1.\\
The~Variable~#2~does~not~have~a~predefined~value.\\
Ensure~to~redefine~#2~to~match~your~language.\\
- Otherwise~the~ngerman~vaue~#3~will~be~used.
+ Otherwise~the~german~vaue~#3~will~be~used.
}
\cs_new:Nn \ptxcd_define_captionFallback:Nn {
@@ -870,43 +913,8 @@
\DeclareNewPageStyleByLayers{title.TUDa}{title.TUDa.background,title.TUDa.rule,title.TUDa.image}
%Logos
-\RequirePackage{graphicx}
\if_bool:N \g_ptxcd_pdfx_bool
-
- \msg_new:nnn{tudapub} {prefer-lualatex} {
- You~use~pdfa-mode~in~#1.\\
- This~can~lead~to~incompatiblities~especially~with~older~compiler~versions.\\
- You~should~prefer~using~lualatex.
- }
- %only apply the hack if pdfx is older than the working version
- \PassOptionsToPackage{a-2b}{pdfx}
- \RequirePackage{pdfx}
-
- \msg_new:nnnn{tudapub} {outdated-package-pdfa} {
- Your~Version~of~the~#1-package~is~too~old~to~support~all~methods~required~by~tudapubs~pdfa-mode.\\
- Either~update~your~TeX-distribution~or~switch~to~pdfa=false.
- }{See~DEMO-tudapub~for~further~information.}
-
-
- \sys_if_engine_pdftex:T {
- \msg_warning:nnn{tudapub} {prefer-lualatex} {PDFTeX}
- }
-
- \sys_if_engine_xetex:T {
- \msg_warning:nnn{tudapub} {prefer-lualatex} {XeTeX}
- }
-
- \@ifpackagelater{xmpincl}{2021/09/22}{
- }{
- \msg_error:nn{tudapub} {outdated-package-pdfa} {xmpincl}
- }
-
- \@ifpackagelater{pdfx}{2018/12/01}{
- }{
- \msg_error:nn{tudapub} {outdated-package-pdfa} {pdfx}
- }
-
%%hyperref
\hypersetup{hidelinks, unicode}
\iow_new:N \ptxcd_xmpdata_stream
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tudarules.sty b/Master/texmf-dist/tex/latex/tuda-ci/tudarules.sty
index 4957df601a1..98182d08c18 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tudarules.sty
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tudarules.sty
@@ -1,4 +1,4 @@
-%% This is file `tudarules.sty' version 3.39 (2024-06-27),
+%% This is file `tudarules.sty' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,8 +25,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
+\def\fileversion{3.41}
+\def\filedate{2024-07-02}
\NeedsTeXFormat{LaTeX2e}
\ProvidesExplPackage{tudarules}{\filedate}{\fileversion}{Creation of colored bars for tuda-ci bundle}
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tudasciposter.cls b/Master/texmf-dist/tex/latex/tuda-ci/tudasciposter.cls
index ed1da3000fa..71e8123ef10 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tudasciposter.cls
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tudasciposter.cls
@@ -1,4 +1,4 @@
-%% This is file `tudasciposter.cls' version 3.39 (2024-06-27),
+%% This is file `tudasciposter.cls' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,8 +25,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
+\def\fileversion{3.41}
+\def\filedate{2024-07-02}
\NeedsTeXFormat{LaTeX2e}
\ProvidesExplPackage{tudasciposter}{\filedate}{\fileversion}{Scientific Poster Layout for TU Darmstadt}
@@ -123,16 +123,36 @@
\PassOptionsToPackage{DIV=10}{typearea}
\LoadClass[parskip=full-]{scrartcl}
\RequirePackage{tudafonts}
-\RequirePackage{tikz}
-\usetikzlibrary{calc}
+\RequirePackage{calc}
+\RequirePackage[margin=0pt]{geometry}
+\RequirePackage{tudacolors}
+
+\ExplSyntaxOn
+
+\if_bool:N \g_ptxcd_pdfa_bool
+\PassOptionsToPackage{a-2b}{pdfx}
+\IfFormatAtLeastTF{2020/10/01}{}{\endinput}
+% Workaround posted by David Carlisle on tex.stackexchange
+% Thanks to Ulrike Fischer for mentioning it in #472
+ \let \__ptxcd_grouplevel_before_pdfx: \currentgrouplevel
+ \chardef\currentgrouplevel0
+ \ExplSyntaxOff
+ \RequirePackage{pdfx}
+ \ExplSyntaxOn
+ \let \currentgrouplevel \__ptxcd_grouplevel_before_pdfx:
+ \cs_undefine:N \__ptxcd_grouplevel_before_pdfx:
+% end of the workaround
+\fi:
+
+\ExplSyntaxOff
\RequirePackage{tcolorbox}
\tcbuselibrary{poster}
-\RequirePackage[margin=0pt]{geometry}
-\ExplSyntaxOn
-
+\RequirePackage[mode=tikz]{tudarules}
+\RequirePackage{qrcode}
+\ExplSyntaxOn
%Font adjusments
\renewcommand*{\familydefault}{\sfdefault}
@@ -150,9 +170,7 @@
% end of font adjustments
-\RequirePackage[mode=tikz]{tudarules}
-\RequirePackage{tudacolors}
-\RequirePackage{qrcode}
+
\dim_const:Nn \c_ptxcd_headrule_ht_dim {\c_ptxcd_rulesep_dim +\c_ptxcd_largerule_dim + \c_ptxcd_smallrule_dim}
%Setup title
@@ -231,8 +249,6 @@
%%%%%%%%%%%%%%%%%%%
%PDFA
\if_bool:N \g_ptxcd_pdfa_bool
-\PassOptionsToPackage{a-2b}{pdfx}
-\RequirePackage{pdfx}
%%hyperref
\hypersetup{hidelinks, unicode, hyperfootnotes=false}
\iow_new:N \ptxcd_xmpdata_stream
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tudasize9pt.clo b/Master/texmf-dist/tex/latex/tuda-ci/tudasize9pt.clo
index a4c1136f9c2..4f618069923 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tudasize9pt.clo
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tudasize9pt.clo
@@ -1,4 +1,4 @@
-%% This is file `tudasize9pt.clo' version 3.39 (2024-06-27),
+%% This is file `tudasize9pt.clo' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
diff --git a/Master/texmf-dist/tex/latex/tuda-ci/tudathesis.cfg b/Master/texmf-dist/tex/latex/tuda-ci/tudathesis.cfg
index 13d35721c52..54ffeeacd0a 100644
--- a/Master/texmf-dist/tex/latex/tuda-ci/tudathesis.cfg
+++ b/Master/texmf-dist/tex/latex/tuda-ci/tudathesis.cfg
@@ -1,4 +1,4 @@
-%% This is file `tudathesis.cfg' version 3.39 (2024-06-27),
+%% This is file `tudathesis.cfg' version 3.41 (2024-07-02),
%% it is part of
%% TUDa-CI -- Corporate Design for TU Darmstadt
%% ----------------------------------------------------------------------------
@@ -25,8 +25,8 @@
%%
%% ============================================================================
%%
-\def\fileversion{3.39}
-\def\filedate{2024-06-27}
+\def\fileversion{3.41}
+\def\filedate{2024-07-02}
\RequirePackage{expl3}
\ProvidesExplFile{tudathesis.cfg}
{\filedate}{\fileversion}{Special Features for publication type 'thesis' using TU Darmstadt's Corporate Design (tuda-ci)}
@@ -56,8 +56,9 @@
}
{
\ptxcd_declare_caption:Nnn \departmentname {Fachbereich} {department}
- \ptxcd_declare_caption:Nnn \ptxcd_departmentprefix: {im~ \departmentname}{in~the~\departmentname{}~ of}
\ptxcd_declare_caption:Nnn \departmentfullname {\departmentname{}~ \ptxcd_department:} { \ptxcd_department:{}~ \text_titlecase:n{\departmentname}}
+ \ptxcd_declare_caption:Nnn \ptxcd_departmentprefix: {im~ \departmentname}{in~the~\departmentname{}~ of}
+ \ptxcd_declare_caption:Nnn \ptxcd_in_department {\ptxcd_departmentprefix:{}~\ptxcd_department:}{\ptxcd_departmentprefix:{}~\ptxcd_department:}
}
{\bool_if:NTF \g_ptxcd_dr_bool
{
@@ -203,7 +204,7 @@
\IfBooleanTF{#1}{
\tl_gset:Nn \ptxcd_department: {#3}
\tl_gset:Nn \ptxcd_in_department{#3}
- \IfNoValueTF {\tl_gset:Nn \ptxcd_box_department {#3}} {\tl_gset:Nn \ptxcd_box_department{#2}}
+ \IfNoValueTF {#2} {\tl_gset:Nn \ptxcd_box_department {#3}} {\tl_gset:Nn \ptxcd_box_department{#2}}
\clist_remove_all:Nn \g_ptxcd_Required_title_data_clist {department}
}{
\tl_gset:Nn \g_ptxcd_department_choice_tl {#3}
@@ -373,7 +374,7 @@
{\keys_set:nn {ptxcd/thesis} {printid=#1}}
\lowertitleback{
\urlstyle{same}
- \selectlanguage{ngerman}
+ \selectlanguage{german}
Bitte~zitieren~Sie~dieses~Dokument~als:
\tl_if_empty:NF \g_ptxcd_thesis_urn_tl {\\URN:~urn:nbn:de:tuda-tuprints-\g_ptxcd_thesis_urn_tl}\\
URL:~\url{https://tuprints.ulb.tu-darmstadt.de/\g_ptxcd_thesis_tuprints_tl}\\
@@ -530,7 +531,7 @@
\selectfont
{\ifx\@subtitle\@empty\else\usekomafont{subtitle}{\@subtitle\par}\fi}%
\usekomafont{subject}
- \bool_if:NT \g_ptxcd_dr_bool {\selectlanguage{ngerman}}
+ \bool_if:NT \g_ptxcd_dr_bool {\selectlanguage{german}}
\tl_if_empty:NF \g_ptxcd_titleintro_tl {\g_ptxcd_titleintro_tl\par}
\tl_if_empty:NF \g_ptxcd_thesis_drtext_tl {\g_ptxcd_thesis_drtext_tl\par}
{%
@@ -644,7 +645,7 @@
{\keys_set:nn {ptxcd/thesis} {affidavit=#2}}%
}%
\clearpage
-\begin{otherlanguage}{ngerman}
+\begin{otherlanguage}{german}
\bool_if:NTF \g_ptxcd_dr_bool {
\g__ptxcd_affidavit_dr_tl
} {
@@ -742,7 +743,7 @@
Use~"ignore-title-language"~Option~to~ignore~this~message~at~your~own~risk.
}
-\PassOptionsToPackage{ngerman}{babel}
+\PassOptionsToPackage{german}{babel}
\AtBeginDocument{
\@ifpackageloaded{babel}{}{
\msg_new:nnnn{tudapub/thesis} {missing-babel} {
diff --git a/Master/texmf-dist/tex/latex/tutodoc/tutodoc-locale-main-english.cfg.sty b/Master/texmf-dist/tex/latex/tutodoc/tutodoc-locale-main-english.cfg.sty
index 339f10240c6..e72b66100ae 100644
--- a/Master/texmf-dist/tex/latex/tutodoc/tutodoc-locale-main-english.cfg.sty
+++ b/Master/texmf-dist/tex/latex/tutodoc/tutodoc-locale-main-english.cfg.sty
@@ -4,13 +4,13 @@
\NewDocumentCommand{\tutodoc@trans@latex@show@start}{}{Start ~ of ~ the ~ real ~ output}
\NewDocumentCommand{\tutodoc@trans@latex@show@end}{}{End ~ of ~ the ~ real ~ output}
\NewDocumentCommand{\tutodoc@trans@exa@title}{}{Example}
-\NewDocumentCommand{\tutodoc@trans@rmk@title}{}{Remark}
+\NewDocumentCommand{\tutodoc@trans@rem@title}{}{Remark}
\NewDocumentCommand{\tutodoc@trans@note@title}{}{Note}
\NewDocumentCommand{\tutodoc@trans@tip@title}{}{Tip}
-\NewDocumentCommand{\tutodoc@trans@important@title}{}{Important}
-\NewDocumentCommand{\tutodoc@trans@caution@title}{}{Caution}
+\NewDocumentCommand{\tutodoc@trans@imp@title}{}{Important}
+\NewDocumentCommand{\tutodoc@trans@caut@title}{}{Caution}
\NewDocumentCommand{\tutodoc@trans@warn@title}{}{Warning}
-\NewDocumentCommand{\tutodoc@trans@chges@pb}{}{Problem}
+\NewDocumentCommand{\tutodoc@trans@chges@prob}{}{Problem}
\NewDocumentCommand{\tutodoc@trans@chges@break}{}{Break}
\NewDocumentCommand{\tutodoc@trans@chges@fix}{}{Fix}
\NewDocumentCommand{\tutodoc@trans@chges@new}{}{New}
diff --git a/Master/texmf-dist/tex/latex/tutodoc/tutodoc-locale-main-french.cfg.sty b/Master/texmf-dist/tex/latex/tutodoc/tutodoc-locale-main-french.cfg.sty
index c639e1e9e03..49ad24c363e 100644
--- a/Master/texmf-dist/tex/latex/tutodoc/tutodoc-locale-main-french.cfg.sty
+++ b/Master/texmf-dist/tex/latex/tutodoc/tutodoc-locale-main-french.cfg.sty
@@ -4,13 +4,13 @@
\NewDocumentCommand{\tutodoc@trans@latex@show@start}{}{Début ~ du ~ rendu ~ réel}
\NewDocumentCommand{\tutodoc@trans@latex@show@end}{}{Fin ~ du ~ rendu ~ réel}
\NewDocumentCommand{\tutodoc@trans@exa@title}{}{Exemple}
-\NewDocumentCommand{\tutodoc@trans@rmk@title}{}{Remarque}
+\NewDocumentCommand{\tutodoc@trans@rem@title}{}{Remarque}
\NewDocumentCommand{\tutodoc@trans@note@title}{}{Note}
\NewDocumentCommand{\tutodoc@trans@tip@title}{}{Astuce}
-\NewDocumentCommand{\tutodoc@trans@important@title}{}{Important}
-\NewDocumentCommand{\tutodoc@trans@caution@title}{}{Caution}
-\NewDocumentCommand{\tutodoc@trans@warn@title}{}{Danger}
-\NewDocumentCommand{\tutodoc@trans@chges@pb}{}{Problème}
+\NewDocumentCommand{\tutodoc@trans@imp@title}{}{Important}
+\NewDocumentCommand{\tutodoc@trans@caut@title}{}{Mise ~ en ~ garde}
+\NewDocumentCommand{\tutodoc@trans@warn@title}{}{Avertissement}
+\NewDocumentCommand{\tutodoc@trans@chges@prob}{}{Problème}
\NewDocumentCommand{\tutodoc@trans@chges@break}{}{Bifurcation}
\NewDocumentCommand{\tutodoc@trans@chges@fix}{}{Réparation}
\NewDocumentCommand{\tutodoc@trans@chges@new}{}{Nouveau}
diff --git a/Master/texmf-dist/tex/latex/tutodoc/tutodoc.sty b/Master/texmf-dist/tex/latex/tutodoc/tutodoc.sty
index 5e0ea7a0fb4..13040c1ff5c 100644
--- a/Master/texmf-dist/tex/latex/tutodoc/tutodoc.sty
+++ b/Master/texmf-dist/tex/latex/tutodoc/tutodoc.sty
@@ -1,17 +1,22 @@
-% ------------------------------------------------------- %
-% - This is file `tutodoc.sty' generated automatically. - %
-% - - %
-% - Copyright (C) 2023-2024 by Christophe BAL - %
-% - - %
-% - This file may be distributed and/or modified under - %
-% - the conditions of the GNU 3 License. - %
-% ------------------------------------------------------- %
+% ********************************************************* %
+% ** This is file `tutodoc.sty' generated automatically. ** %
+% ** ** %
+% ** Copyright (C) 2023-2024 by Christophe BAL ** %
+% ** ** %
+% ** This file may be distributed and/or modified under ** %
+% ** the conditions of the GNU 3 License. ** %
+% ********************************************************* %
\ProvidesExplPackage
- {tutodoc}
- {2024-01-06} % Creation: 2023-11-29
- {1.1.0}
- {This package proposes tools for writing "human friendly" documentations of LaTeX packages.}
+ {tutodoc}
+ {2024-09-28} % Creation: 2023-11-29
+ {1.4.0}
+ {This package proposes tools for writing "human friendly" documentations of LaTeX packages.}
+
+
+% =================== %
+% == PACKAGES USED == %
+% =================== %
\RequirePackage[
top = 2.5cm,
@@ -21,45 +26,90 @@
marginparwidth = 2cm,
marginparsep = 2mm,
heightrounded
-]{geometry}[2020-01-02]
+]{geometry}%
+ [2020-01-02]
+
+\RequirePackage[raggedright]%
+ {titlesec}%
+ [2021/07/05]
-\RequirePackage[raggedright]{titlesec}[2021/07/05]
\RequirePackage{tocbasic}
-\RequirePackage{xcolor}[2022/06/12]
-\RequirePackage{hyperref}[2023-02-07]
+\RequirePackage{xcolor}%
+ [2022/06/12]
+
+\RequirePackage{hyperref}%
+ [2023-02-07]
% We delegate the management of quoting to the `csquotes' package,
% which takes care of the linguistic parameters.
-\RequirePackage{csquotes}[2022-09-14]
+\RequirePackage{csquotes}%
+ [2022-09-14]
+
+
+\RequirePackage{fontawesome5}%
+ [2022-05-02]
+
+\RequirePackage{keytheorems}%
+ [2024/09/19]
+
+\RequirePackage[svgnames]%
+ {xcolor}%
+ [2023/11/15]
+
+\RequirePackage{tcolorbox}%
+ [2024/07/10]
+
+\tcbuselibrary{breakable,
+ skins}
+
+\RequirePackage{clrstrip}%
+ [2021-08-28]
-\RequirePackage{amsthm}[2017/09]
+%\RequirePackage[highlightmode = immediate]% Too slow!
+% {minted}%
+% [2024/09/22]
-\RequirePackage{clrstrip}[2021-08-28]
+\RequirePackage{minted2}% Temporary patch.
+\RequirePackage{tcolorbox}%
+ [2024/07/10]
-\RequirePackage{tcolorbox}[2023/06/19]
\tcbuselibrary{minted, breakable, skins}
-\RequirePackage{marginnote}[2023-09-07]
+\RequirePackage{fontawesome5}%
+ [2022-05-02]
+\RequirePackage{marginnote}%
+ [2023-09-07]
+
+% ======================= %
+% == AVAILABLE OPTIONS == %
+% ======================= %
+
+% ----------------- %
% -- LOCALE LANG -- %
+% ----------------- %
\ExplSyntaxOn
+% ::::::::::::::::::: %
% :: SOME MESSAGES :: %
+% ::::::::::::::::::: %
\msg_set:nnnn { tdoc } { package-option-lang-unknown }
{ Unknown ~ language. }
{ See ~ the ~ documentation ~ for ~ the ~ supported ~ languages. }
+% ::::::::::::::::::::::: %
% :: SETTING SOME KEYS :: %
+% ::::::::::::::::::::::: %
\str_new:N \l_tdoc_opt_lang_str
@@ -86,7 +136,13 @@
\ExplSyntaxOff
+% =============== %
+% == MAIN CODE == %
+% =============== %
+
+% --------------------- %
% -- LOCALE SETTINGS -- %
+% --------------------- %
\NewDocumentCommand{\tutodoc@colon}{}{:}
@@ -104,12 +160,16 @@
\ExplSyntaxOff
+% ---------------------- %
% -- GENERAL SETTINGS -- %
+% ---------------------- %
\setlength{\parindent}{0cm}
+% ----------- %
% -- LINKS -- %
+% ----------- %
\hypersetup{
colorlinks,
@@ -120,7 +180,9 @@
}
+% --------------- %
% -- TOC & Co. -- %
+% --------------- %
\ifcsundef{chapter}%
{}%
@@ -162,7 +224,49 @@
\DeclareTOCStyleEntry[indentfollows = chapter]{tocline}{section}
+% --------------------------- %
+% -- COLOR TRANSFORMATIONS -- %
+% --------------------------- %
+
+%%%
+% prototype::
+% #1 : the amount of color relative to black.
+% #2 : one color following the ''xcolor'' format.
+%
+% :return: a "darker" version of the color ''#1''.
+%%%
+\NewExpandableDocumentCommand{\tdocdarkcolor}{O{50}m}{#2!#1!black}
+
+
+%%%
+% prototype::
+% #1 : the transparency rate.
+% #2 : one color following the ''xcolor'' format.
+%
+% :return: a "transparent" version of the color `#1`.
+%%%
+\NewExpandableDocumentCommand{\tdoclightcolor}{O{5}m}{#2!#1}
+
+
+% ----------- %
+% -- ICONS -- %
+% ----------- %
+
+%%%
+% prototype::
+% #1 : one material that expects to be an icon command from the
+% ''fontawsome5'' \pack.
+%
+% :return: the icon followed by a small insecable space.
+%%%
+\NewDocumentCommand{\tdocicon}{m}{%
+ #1\kern.45em%
+}
+
+
+% ------------- %
% -- QUOTING -- %
+% ------------- %
%%%
% prototype::
@@ -175,7 +279,9 @@
}
+% ------------------------------ %
% -- EXPLAINING ENGLISH NAMES -- %
+% ------------------------------ %
%%%
% prototype::
@@ -204,119 +310,134 @@
}
-% -- FOCUS ON SOME CONTENT -- %
+% ----------------------------------- %
+% -- SOBER HIGHLIGHTING OF CONTENT -- %
+% ----------------------------------- %
-% :: EXAMPLE - HIDDEN VERSIONS :: %
+% :::::::::::::::::::::: %
+% :: EXAMPLE - REMARK :: %
+% :::::::::::::::::::::: %
-%%%
-% See the \doc of the macro ''\newtheorem'' from the package ''amsthm''
-% to have \infos about the environment ''@@tdocexa@nb''.
-%%%
-\newtheorem{@@tdocexa@nb}{\tutodoc@trans@exa@title}%
- [subsubsection]
+\ExplSyntaxOn
%%%
-% We redefine the counter associated to the environment ''@@tdocexa@nb''
-% to obtain only one single arabic number.
+% We use a ''seq'' variable to factorize the code just after.
%%%
-\renewcommand{\the@@tdocexa@nb}{\arabic{@@tdocexa@nb}}
+\seq_new:N \__g_tutodoc_focus_sober_seq
+\seq_set_from_clist:Nn \__g_tutodoc_focus_sober_seq {
+ exa,
+ rem
+}
%%%
-% See the \doc of the macro ''\newtheorem*'' from the package ''amsthm''
-% to have \infos about the environment ''@@tdocexa@no@nb''.
-%%%
-\newtheorem*{@@tdocexa@no@nb}{\tutodoc@trans@exa@title}
-
-
-% :: EXAMPLE - PUBLIC VERSION :: %
-
-\ExplSyntaxOn
-
-\msg_set:nnnn { tdoc } { env-tdocexa-unknown-option }
- { Unknown ~ rafters ~ option. }
- { See ~ the ~ documentation ~ for ~ the ~ supported ~ options. }
-
-\NewDocumentEnvironment{tdocexa}{D<>{nb} O{}}{
- \str_case:nnF { #1 } {
- { nb } {
- \begin{@@tdocexa@nb}[#2]
- }
- { nonb } {
- \begin{@@tdocexa@no@nb}[#2]
- }
- }{
- \msg_error:nn { tdoc } { env-tdocexa-unknown-option }
+% prototype::
+% :action: looping over ''\__g_tutodoc_focus_sober_seq'' to build new
+% numbered theorems sharing the same section level counter.
+% To achieve that, we use the ''\newkeytheorem'' macro from
+% the ''keytheorems'' \pack.
+%%%
+\seq_map_inline:Nn \__g_tutodoc_focus_sober_seq {
+ \str_if_eq:nnTF { #1 } { exa } {
+ \newkeytheorem{tdoc#1}[
+ name = \use:c { tutodoc@trans@#1@title },
+ within = section,
+ ]
+ } {
+ \newkeytheorem{tdoc#1}[
+ name = \use:c { tutodoc@trans@#1@title },
+ numberlike = tdocexa,
+ ]
}
-}{
- \str_case:nnF { #1 } {
- { nb } {
- \end{@@tdocexa@nb}
- }
- { nonb } {
- \end{@@tdocexa@no@nb}
- }
- }{}
+
+ \cs_set:cpn { the tdoc #1 } { \thesection\arabic{tdoc#1} }
}
\ExplSyntaxOff
-% :: REMARK :: %
-
-%%%
-% See the \doc of the macro ''\newtheorem*'' from the package ''amsthm''
-% to have \infos about the environment ''tdocrem''.
-%%%
-\newtheorem*{tdocrem}{\tutodoc@trans@rmk@title}
-
+% -------------------------------------- %
+% -- COLORFUL HIGHLIGHTING OF CONTENT -- %
+% -------------------------------------- %
-% :: IMPORTANT :: %
+% ::::::::::::::::: %
+% :: ABSTRACTION :: %
+% ::::::::::::::::: %
%%%
-% See the \doc of the macro ''\newtheorem*'' from the package ''amsthm''
-% to have \infos about the environment ''tdocimportant''.
+% note::
+% The settings used come from the following sources.
+% * https://tex.stackexchange.com/a/727022/6880
+% * https://tex.stackexchange.com/a/682332/6880
%%%
-\newtheorem*{tdocimportant}{\tutodoc@trans@important@title}
-
-
-% :: NOTE :: %
+\tcbset{
+ tutodoc-focus-color-style/.style = {
+ breakable,
+ enhanced,
+ left = 3pt,
+ right = 3pt,
+ fontupper = \color{\tdocdarkcolor{#1}},
+ colback = \tdoclightcolor{#1},
+ colframe = #1!75!black!45,
+ shadow = {.75mm}{-.75mm}{0mm}{black!30},
+% We want to use the same color for the footnotes in the frame.
+ before upper = {\let\default@color\current@color},
+ }
+}
-%%%
-% See the \doc of the macro ''\newtheorem*'' from the package ''amsthm''
-% to have \infos about the environment ''tdocnote''.
-%%%
-\newtheorem*{tdocnote}{\tutodoc@trans@note@title}
+% ::::::::::::::::::::::::::::::::::::: %
+% :: LET'S GO BACK TO THE REAL WORLD :: %
+% ::::::::::::::::::::::::::::::::::::: %
-% :: TIP :: %
+\ExplSyntaxOn
%%%
-% See the \doc of the macro ''\newtheorem*'' from the package ''amsthm''
-% to have \infos about the environment ''tdoctip''.
+% We use two ''prop'' variables to factorize the code just after.
%%%
-\newtheorem*{tdoctip}{\tutodoc@trans@tip@title}
+\prop_set_from_keyval:Nn \__g_tutodoc_focus_color_prop {
+ note = cyan,
+ tip = ForestGreen,
+ imp = orange,
+ caut = violet,
+ warn = red,
+}
+\prop_set_from_keyval:Nn \__g_tutodoc_focus_icon_prop {
+ note = \faInfoCircle,
+ tip = \faLightbulb,
+ imp = \faHighlighter,
+ caut = \faBiohazard,
+ warn = \faSkullCrossbones,
+}
-% :: CUATION :: %
%%%
-% See the \doc of the macro ''\newtheorem*'' from the package ''amsthm''
-% to have \infos about the environment ''tdoccaution''.
-%%%
-\newtheorem*{tdoccaution}{\tutodoc@trans@caution@title}
-
-
-% :: WARNING :: %
+% prototype::
+% :action: ''key/value'' iteration over ''\__g_tutodoc_focus_color_prop''
+% to build new colorful unumbered theorems. To achieve that,
+% we use a ''tcolorbox'' style givent to the ''\newkeytheorem''
+% macro from the ''keytheorems'' \pack, and icons from the
+% ''fontawesome5'' \pack.
+%%%
+\prop_map_inline:Nn \__g_tutodoc_focus_color_prop {
+ \newkeytheorem{tdoc#1}[
+ numbered = false,
+% tcolorbox-no-titlebar can be used.
+ tcolorbox = {tutodoc-focus-color-style=#2},
+ name = {
+ \tdocicon{ \prop_item:Nn \__g_tutodoc_focus_icon_prop { #1 } }
+ \use:c { tutodoc@trans@#1@title }
+ },
+ ]
+}
-%%%
-% See the \doc of the macro ''\newtheorem*'' from the package ''amsthm''
-% to have \infos about the environment ''tdocwarn''.
-%%%
-\newtheorem*{tdocwarn}{\tutodoc@trans@warn@title}
+\ExplSyntaxOff
+% ---------------------------------------------- %
% -- NAMES OF PACKAGES, MACROS & ENVIRONMENTS -- %
+% ---------------------------------------------- %
%%%
% prototype::
@@ -356,31 +477,53 @@
% #1 : hard typed options with the good delimiters
% #2 : the name of an environment
%
-% :action: ''\tdocenv{myenv}'' prints verb::''\begin{myenv} ... \end{myenv}''
-% or something like verb::''\begin{myenv}<opt1> ... \end{myenv}'',
-% the spaces being secable.
+% :extra: this macro has a star version.
+%
+% Here are the four kind of outputs.
+%
+% 1) ''\tdocenv{myenv}'' prints
+% verb::''\begin{myenv} ... \end{myenv}''.
+%
+% 2) ''\tdocenv[{<opt1>[mando2]}]{myenv}'' prints
+% verb::''\begin{myenv}<opt1>[mando2] ... \end{myenv}''.
+%
+% 3) ''\tdocenv*{myenv}'' prints
+% verb::''myenv''.
+%
+% 4) ''\tdocenv*[{<opt1>[mando2]}]{myenv}'' prints
+% verb::''myenv''.
%%%
%
% Cleaner code from https://tex.stackexchange.com/a/703379/6880 .
-\NewDocumentCommand{\tdocenv}{O{}m}{%
- \texttt{\string\begin\string{#2\string}#1 %
- \!\!...\@\!\!\! %
- \string\end\string{#2\string}}%
+\NewDocumentCommand{\tdocenv}{s O{} m}{%
+ \IfBooleanTF{#1}{%
+ \texttt{#3}%
+ }{%
+ \texttt{\string\begin\string{#3\string}#2 %
+ \!\!...\@\!\!\! %
+ \string\end\string{#3\string}}%
+ }%
}
+% ------------------------- %
% -- EXPLAINING PREFIXES -- %
+% ------------------------- %
\ExplSyntaxOn
+% :::::::::::::: %
% :: MESSAGES :: %
+% :::::::::::::: %
\msg_set:nnnn { bdoc } { prefixwhy-bad-format }
{ Bad ~ format, ~ something ~ like ~ ''pre.fix'' ~ expected. }
{ You ~ must ~ use ~ one ~ single ~ point. }
+% :::::::::::::::::::: %
% :: PREFIX FROM... :: %
+% :::::::::::::::::::: %
%%%
% prototype::
@@ -410,7 +553,9 @@
\ExplSyntaxOff
+% ::::::::::::::::::::: %
% :: JUST ONE PREFIX :: %
+% ::::::::::::::::::::: %
%%%
% prototype::
@@ -427,9 +572,13 @@
}
+% ------------------------ %
% -- GENERAL FORMATTING -- %
+% ------------------------ %
+% :::::::::::::::::::::::: %
% :: TEXT INSIDE A RULE :: %
+% :::::::::::::::::::::::: %
\ExplSyntaxOn
@@ -472,31 +621,9 @@
\ExplSyntaxOff
-% :: COLOR TRANSFORMATIONS :: %
-
-%%%
-% prototype::
-% #1 : one color following the ''xcolor'' format.
-%
-% :return: a "darker" version of the color ''#1''.
-%%%
-\NewExpandableDocumentCommand{\tdocdarkcolor}{m}{%
- #1!50!black%
-}
-
-
-%%%
-% prototype::
-% #1 : one color following the ''xcolor'' format.
-%
-% :return: a "transparent" version of the color `#1`.
-%%%
-\NewExpandableDocumentCommand{\tdoclightcolor}{m}{%
- #1!5%
-}
-
-
+% ::::::::::::::::::::::::::: %
% :: INTERNAL ENVIRONMENTS :: %
+% ::::::::::::::::::::::::::: %
%%%
% prototype::
@@ -545,7 +672,9 @@
\ExplSyntaxOn
+% ::::::::::::::::::::::: %
% :: SETTING SOME KEYS :: %
+% ::::::::::::::::::::::: %
\tl_new:N \l_tdoc_showcase_before_tl
\tl_new:N \l_tdoc_showcase_after_tl
@@ -574,7 +703,9 @@
}
+% :::::::::::::::::::::::::::::: %
% :: SHOWCASE FROM TYPED CODE :: %
+% :::::::::::::::::::::::::::::: %
% prototype::
% #1 : the key-value options.
@@ -614,7 +745,9 @@
}
+% :::::::::::::::::::::::: %
% :: SHOWCASE FROM FILE :: %
+% :::::::::::::::::::::::: %
%%%
% prototype::
@@ -636,9 +769,13 @@
\ExplSyntaxOff
+% -------------------- %
% -- LATEX EXAMPLES -- %
+% -------------------- %
+% ::::::::::::::::::::::::::::: %
% :: INLINE SHORT LATEX CODE :: %
+% ::::::::::::::::::::::::::::: %
%%%
% See the \doc of the macro ''\newmintinline'' from the package ''minted''
@@ -647,11 +784,18 @@
\newmintinline[tdocinlatex]{latex}{bgcolor = yellow!4}
+% ::::::::::::::::::::::::::::::::::::::::::::::: %
% :: SHORTCUTS FOR TCOLORBOX LISTING FORMATING :: %
+% ::::::::::::::::::::::::::::::::::::::::::::::: %
\ExplSyntaxOn
%%%
+% prototype::
+% #1 : a style of formatting for a \latex listing and its output.
+%
+% :see: macro.tdoclatex , macro.tdoclatexinput
+%
% In the following easy-to-understand macro, we use one fictive ''tcolorbox''
% style such as to indicate an unknown ''tdoc'' style to the user.
% For example, this can give one message similar to the following one.
@@ -673,7 +817,9 @@
\ExplSyntaxOff
+% ::::::::::::::::::::::::::::::::: %
% :: THE TCOLORBOX LISTING STYLE :: %
+% ::::::::::::::::::::::::::::::::: %
%%%
% note::
@@ -685,6 +831,7 @@
tdoclatex_tcbstyle/.style = {
minted language = latex,
breakable,
+ enhanced,
% Code and output
colback = yellow!5,
% Frame
@@ -696,7 +843,6 @@
% We can use ''sharp corners'' to obtain an "old school" style.
%
% Separating line
- enhanced,
segmentation style = {
gray,
dash pattern = {on 5pt off 2.5pt},
@@ -707,7 +853,9 @@
}
+% ::::::::::::::::::::::::::::::::::: %
% :: TCOLORBOX LISTING ENVIRONMENT :: %
+% ::::::::::::::::::::::::::::::::::: %
%%%
% prototype::
@@ -725,11 +873,13 @@
}
+% :::::::::::::::::::::::::::::::::::::: %
% :: TCOLORBOX IMPORTED LISTING MACRO :: %
+% :::::::::::::::::::::::::::::::::::::: %
%%%
% prototype::
-% #1 : :see: \newtcblisting{tdoclatex}.
+% #1 : :see: ''\newtcblisting{tdoclatex}'' just before.
% #2 : the path of the file to input and format.
%
% note::
@@ -742,11 +892,15 @@
}
+% -------------------------- %
% -- LATEX REAL USE CASES -- %
+% -------------------------- %
\ExplSyntaxOn
+% ::::::::::::::::::::::: %
% :: SETTING SOME KEYS :: %
+% ::::::::::::::::::::::: %
\tl_new:N \l_tdoc_listing_explain_tl
@@ -762,7 +916,9 @@
}
+% ::::::::::::::::::::: %
% :: LATEXSHOW MACRO :: %
+% ::::::::::::::::::::: %
%%%
% prototype::
@@ -794,22 +950,26 @@
\ExplSyntaxOn
+% :::::::::::::: %
% :: MESSAGES :: %
+% :::::::::::::: %
\msg_set:nnnn { tdoc } { date-bad-format }
{ Bad ~ format ~ for ~ a ~ date. }
{ Use ~ YYYY-MM-DD. }
+% ::::::::::::::::: %
% :: MARGIN NOTE :: %
+% ::::::::::::::::: %
\reversemarginpar{}
%%%
% prototype::
% #1 : the color of the margin note
-% #2 : the first material (a date or nothing)
-% #3 : the second material (a version number or nothing)
+% #2 : the first material (a version number or nothing)
+% #3 : the second material (a date or nothing)
% #4 : the last negative vertical spacing for the 2nd rule
%
% :action: this macro factorizes the printing of the changes
@@ -829,15 +989,19 @@
\IfBlankTF{#2}{}{
\par
- \__tdoc_translate_date:n { #2 }
+ #2\vphantom{Mp}
\par
}
- \vspace{1pt}
+ \IfBlankTF{#3}{}{
+ \IfBlankTF{#2}{}{
+ \vspace{1pt}
+ }
- \par
- #3
- \par
+ \par
+ \__tdoc_translate_date:n { #3 }\vphantom{Mp}
+ \par
+ }
\vspace{#4}
\rule{1.65cm}{.95pt}
@@ -871,12 +1035,16 @@
%%%
\cs_new:Npn \__tdoc_translate_date_process:w #1 - #2 - #3 \q_stop {
\tutodoc@trans@date{#1}
- {#2}
- {#3}
+ {#2}
+ {#3}
}
+\ExplSyntaxOff
+
+% :::::::::::::::::::::: %
% :: VERSION AND DATE :: %
+% :::::::::::::::::::::: %
%%%
% prototype::
@@ -895,13 +1063,15 @@
%%%
\NewDocumentCommand{\tdocversion}{O{blue} m O{}}{
\tutodoc@new@change@margin{#1} % Color
- {#3} % Date
- {#2} % Version
- {-4.25pt} % Last negative vertical spacing
+ {#2} % Version
+ {#3} % Date
+ {-4.25pt} % Last negative vertical spacing
}
+% :::::::::: %
% :: DATE :: %
+% :::::::::: %
%%%
% prototype::
@@ -913,36 +1083,46 @@
%%%
\NewDocumentCommand{\tdocdate}{O{blue} m}{
\tutodoc@new@change@margin{#1} % Color
- {#2} % Date
- {} % Version
- {-5.35pt} % Last negative spacing
+ {#2} % Date
+ {} % Version
+ {-5.35pt} % Last negative spacing
}
-% -- CHANGES - WHAT?
+% --------------------- %
+% -- CHANGES - WHAT? -- %
+% --------------------- %
+
+\ExplSyntaxOn
+% :::::::::::::: %
% :: MESSAGES :: %
+% :::::::::::::: %
\msg_set:nnnn { tdoc } { changes-topic-missing-title }
{ Missing ~ title. }
{ One ~ single ~ title ~ must ~ be ~ indicated. }
+% ::::::::::::::::::::: %
% :: CHANGES - TOPIC :: %
+% ::::::::::::::::::::: %
%%%
% prototype::
% #1 : a title that will be followed by a colon.
+% #2 : one material that expects to be an icon command from the
+% ''fontawsome5'' \pack.
%
% :action: this environment prints some ¨infos about specific changes
% achieved in a new version (no special formatting is applied).
%%%
-\NewDocumentEnvironment{tdoctopic}{ m }{
+\NewDocumentEnvironment{tdoctopic}{ m O{} }{
\IfBlankT{#1}{
\msg_fatal:nn { tdoc } { changes-topic-missing-title }
- }
-
- \textbf{
+ }%
+ \textbf{%
+ \IfBlankF{#2}{\tdocicon{#2}}%
\textsc{#1.}
}
@@ -952,89 +1132,56 @@
}
+% :::::::::::::::::::::::::: %
% :: CHANGES - NEW THINGS :: %
+% :::::::::::::::::::::::::: %
%%%
-% prototype::
-% :see: env.tdoctopic
-%
-% :action: similar to the \env ''tdoctopic'' with the title "New"
-% translated into the good language.
-%%%
-\NewDocumentEnvironment{tdocnew}{}{
- \begin{tdoctopic}{\tutodoc@trans@chges@new}
-}{
- \end{tdoctopic}
-}
-
-
-% :: CHANGES - UPDATE :: %
-
-%%%
-% prototype::
-% :see: env.tdoctopic
-%
-% :action: similar to the \env ''tdoctopic'' with the title "Update"
-% translated into the good language.
-%%%
-\NewDocumentEnvironment{tdocupdate}{}{
- \begin{tdoctopic}{\tutodoc@trans@chges@update}
-}{
- \end{tdoctopic}
-}
-
-
-% :: CHANGES - BREAK :: %
-
-%%%
-% prototype::
-% :see: env.tdoctopic
-%
-% :action: similar to the \env ''tdoctopic'' with the title "Break"
-% translated into the good language.
+% We use a ''prop'' variable to factorize the code just after.
%%%
-\NewDocumentEnvironment{tdocbreak}{}{
- \begin{tdoctopic}{\tutodoc@trans@chges@break}
-}{
- \end{tdoctopic}
+\prop_new:N \__g_tutodoc_topic_change_prop
+\prop_set_from_keyval:Nn \__g_tutodoc_topic_change_prop {
+ break = \faCodeBranch,
+ fix = \faWrench,
+ new = \faGem,
+ prob = \faFire*,
+ update = \faMagic,
}
-% :: CHANGES - PROBLEM :: %
-
%%%
% prototype::
% :see: env.tdoctopic
%
-% :action: similar to the \env ''tdoctopic'' with the title "Problem"
-% translated into the good language.
+% :action: ''key/value'' iteration over ''\__g_tutodoc_topic_change_prop''
+% to build topic-like \envs using the \env ''tdoctopic''
+% (the title used is translated into the good language).
%%%
-\NewDocumentEnvironment{tdocprob}{}{
- \begin{tdoctopic}{\tutodoc@trans@chges@pb}
-}{
- \end{tdoctopic}
+\prop_map_inline:Nn \__g_tutodoc_topic_change_prop {
+ \NewDocumentEnvironment{ tdoc#1 } {} {
+ \begin{tdoctopic}{ \use:c { tutodoc@trans@chges@#1 } } [ #2 ]
+ }{
+ \end{tdoctopic}
+ }
}
-% :: CHANGES - FIX :: %
-
%%%
% prototype::
-% :see: env.tdoctopic
+% #1 : a short text expected t indicate the very first version of a project.
%
-% :action: similar to the \env ''tdoctopic'' with the title "Fix"
-% translated into the good language.
+% :action: the short text printed will be preceded by a pretty anchor icon.
%%%
-\NewDocumentEnvironment{tdocfix}{}{
- \begin{tdoctopic}{\tutodoc@trans@chges@fix}
-}{
- \end{tdoctopic}
+\NewDocumentCommand{ \tdocstartproj }{ m } {
+ \tdocicon{\faAnchor}#1
}
\ExplSyntaxOff
+% ----------------- %
% -- DECORATIONS -- %
+% ----------------- %
% Source for \addvspace{\medskipamount} instead of \medskip.
% * https://tex.stackexchange.com/a/705938/6880
@@ -1052,12 +1199,3 @@
\medskip
\smallskip
}
-
-
-%%%
-% prototype::
-% :action: this macro adds a tiny vertical spacing.
-%%%
-\NewDocumentCommand{\tdocxspace}{}{
- \vspace{0.25em}
-}
diff --git a/Master/texmf-dist/tex/latex/typog/typog.sty b/Master/texmf-dist/tex/latex/typog/typog.sty
index bbb03cb5cbe..d58f381051a 100644
--- a/Master/texmf-dist/tex/latex/typog/typog.sty
+++ b/Master/texmf-dist/tex/latex/typog/typog.sty
@@ -11,11 +11,11 @@
%% Copyright (C) 2024 by Ch. L. Spiel
%%
%% This work may be distributed and/or modified under the conditions
-%% of the LaTeX Project Public License, either version 1.3 of this
+%% of the LaTeX Project Public License, either version 1.3c of this
%% license or (at your option) any later version. The latest version
%% of this license is in
-%% http://www.latex-project.org/lppl.txt
-%% and version 1.3 or later is part of all distributions of LaTeX
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
%% version 2003/12/01 or later.
%%
%% This work has the LPPL maintenance status `maintained'.
@@ -25,13 +25,15 @@
%% This work consists of the files typog.dtx and typog.ins
%% and the derived files typog.sty, slant-angle.mp,
%% crooked-paragraphs.mp, smooth-parshapes.mp, title.mp,
-%% typog-example.tex, typog-nomt.tex, typog-grep.pl,
+%% typog-example.tex, typog-minimal-test.tex,
+%% typog-without-microtype-test.tex
+%% typog-grep.pl.in, typog-grep.pl,
%% typog-grep.pod, and teximan2latex.sed.
%%
%%
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
\ProvidesPackage{typog}
- [2024/05/07 v0.3 TypoGraphic extensions]
+ [2024/07/08 v0.4 TypoGraphic extensions]
\RequirePackage{etoolbox}
\RequirePackage{everyhook}
@@ -40,10 +42,11 @@
\newcommand*{\typog@TYPOG}{}
\newcommand*{\typoglogo}{\textsf{T\itcorr*{-5}\textsl{y}poG}}
\newif\iftypog@debug
-\newcommand*{\typog@typeout}[1]
- {\iftypog@debug
- \typeout{typog: #1}%
- \fi}
+\newcommand*{\typog@typeout}[1]{\typeout{typog: #1}}
+
+\newcommand*{\typog@debug@typeout}[1]{\iftypog@debug\typog@typeout{#1}\fi}
+
+\newcounter{typog@@iteration}
\ExplSyntaxOn
\let\typog@trim@spaces=\tl_trim_spaces:o
@@ -85,20 +88,34 @@
\fi
}
-\newmuskip\typog@mathitalicscorrection
-\newlength{\typog@textitalicscorrection}
-\newlength{\typog@ligaturekern}
-\newlength{\typog@raisecapitaldash}
-\newlength{\typog@raisecapitalguillemets}
-\newlength{\typog@raisecapitalhyphen}
-\newlength{\typog@raisecapitaltimes}
-\newlength{\typog@raiseguillemets}
-\newlength{\typog@raisefiguredash}
-\newlength{\typog@slashkern}
-\newcommand*{\typog@breakpenalty}{\exhyphenpenalty}
+\newmuskip\typog@config@mathitalicscorrection
+
+\newdimen{\typog@adjust@labelitemi}
+\newdimen{\typog@adjust@labelitemii}
+\newdimen{\typog@adjust@labelitemiii}
+\newdimen{\typog@adjust@labelitemiv}
+\newdimen{\typog@adjust@lowercase@labelitemi}
+\newdimen{\typog@adjust@lowercase@labelitemii}
+\newdimen{\typog@adjust@lowercase@labelitemiii}
+\newdimen{\typog@adjust@lowercase@labelitemiv}
+\newdimen{\typog@adjust@uppercase@labelitemi}
+\newdimen{\typog@adjust@uppercase@labelitemii}
+\newdimen{\typog@adjust@uppercase@labelitemiii}
+\newdimen{\typog@adjust@uppercase@labelitemiv}
+
+\newlength{\typog@config@textitalicscorrection}
+\newlength{\typog@config@ligaturekern}
+\newlength{\typog@config@raisecapitaldash}
+\newlength{\typog@config@raisecapitalguillemets}
+\newlength{\typog@config@raisecapitalhyphen}
+\newlength{\typog@config@raisecapitaltimes}
+\newlength{\typog@config@raiseguillemets}
+\newlength{\typog@config@raisefiguredash}
+\newlength{\typog@config@slashkern}
+\newcommand*{\typog@config@breakpenalty}{\exhyphenpenalty}
\newlength{\typog@dim@unit}
\setlength{\typog@dim@unit}{.001em}
-\newcommand*{\typog@trackingttspacing}{300, 90, 60}
+\newcommand*{\typog@config@trackingttspacing}{300, 90, 60}
\newcommand*{\typog@default@shrink@i}{5}
\newcommand*{\typog@default@shrink@ii}{10}
\newcommand*{\typog@default@shrink@iii}{20}
@@ -122,77 +139,99 @@
\newcommand*{\typog@set@shrink@limits}
{\edef\typog@@star{*}%
- \edef\typog@@limit{\typog@triple@get@i{\typog@shrinklimits}}%
+ \edef\typog@@limit{\typog@triple@get@i{\typog@config@shrinklimits}}%
\unless\ifx\typog@@limit\typog@@star\edef\typog@shrink@i{\number\typog@@limit}\fi
- \edef\typog@@limit{\typog@triple@get@ii{\typog@shrinklimits}}%
+ \edef\typog@@limit{\typog@triple@get@ii{\typog@config@shrinklimits}}%
\unless\ifx\typog@@limit\typog@@star\edef\typog@shrink@ii{\number\typog@@limit}\fi
- \edef\typog@@limit{\typog@triple@get@iii{\typog@shrinklimits}}%
+ \edef\typog@@limit{\typog@triple@get@iii{\typog@config@shrinklimits}}%
\unless\ifx\typog@@limit\typog@@star\edef\typog@shrink@iii{\number\typog@@limit}\fi}
\newcommand*{\typog@set@stretch@limits}
{\edef\typog@@star{*}%
- \edef\typog@@limit{\typog@triple@get@i{\typog@stretchlimits}}%
+ \edef\typog@@limit{\typog@triple@get@i{\typog@config@stretchlimits}}%
\unless\ifx\typog@@limit\typog@@star\edef\typog@stretch@i{\number\typog@@limit}\fi
- \edef\typog@@limit{\typog@triple@get@ii{\typog@stretchlimits}}%
+ \edef\typog@@limit{\typog@triple@get@ii{\typog@config@stretchlimits}}%
\unless\ifx\typog@@limit\typog@@star\edef\typog@stretch@ii{\number\typog@@limit}\fi
- \edef\typog@@limit{\typog@triple@get@iii{\typog@stretchlimits}}%
+ \edef\typog@@limit{\typog@triple@get@iii{\typog@config@stretchlimits}}%
\unless\ifx\typog@@limit\typog@@star\edef\typog@stretch@iii{\number\typog@@limit}\fi}
\DeclareOptionX<typog>{breakpenalty}%
- {\renewcommand*{\typog@breakpenalty}{#1}}
+ {\renewcommand*{\typog@config@breakpenalty}{#1}}
\DeclareOptionX<typog>{debug}{\typog@debugtrue}
\DeclareOptionX<typog>{mathitalicscorrection}[.4mu]%
- {\typog@mathitalicscorrection=#1\relax}%
+ {\typog@config@mathitalicscorrection=#1\relax}%
\DeclareOptionX<typog>{nodebug}{\typog@debugfalse}
\DeclareOptionX<typog>{textitalicscorrection}[.02em]%
- {\setlength{\typog@textitalicscorrection}{#1}}
+ {\setlength{\typog@config@textitalicscorrection}{#1}}
\DeclareOptionX<typog>{ligaturekern}[.033333em]%
- {\setlength{\typog@ligaturekern}{#1}}
+ {\setlength{\typog@config@ligaturekern}{#1}}
+\DeclareOptionX<typog>{lowercaselabelitemadjustments}%
+ {\typog@debug@typeout{lowercaselabelitemadjustments={#1}}
+ \def\typog@@do##1{\addtocounter{typog@@iteration}{1}
+ \global\setlength{\csname typog@adjust@lowercase@labelitem\romannumeral\thetypog@@iteration\endcsname}{##1}}
+ \setcounter{typog@@iteration}{0}
+ \forcsvlist{\typog@@do}{#1}}
+\newcommand*{\typog@config@lowercaselabelitemadjustments}
+ {\the\typog@adjust@lowercase@labelitemi,\space
+ \the\typog@adjust@lowercase@labelitemii,\space
+ \the\typog@adjust@lowercase@labelitemiii,\space
+ \the\typog@adjust@lowercase@labelitemiv}
\DeclareOptionX<typog>{raisecapitaldash}[\z@]%
- {\setlength{\typog@raisecapitaldash}{#1}}
+ {\setlength{\typog@config@raisecapitaldash}{#1}}
\DeclareOptionX<typog>{raisecapitalguillemets}[\z@]%
- {\setlength{\typog@raisecapitalguillemets}{#1}}
+ {\setlength{\typog@config@raisecapitalguillemets}{#1}}
\DeclareOptionX<typog>{raisecapitalhyphen}[\z@]%
- {\setlength{\typog@raisecapitalhyphen}{#1}}
+ {\setlength{\typog@config@raisecapitalhyphen}{#1}}
\DeclareOptionX<typog>{raisecapitaltimes}[\z@]%
- {\setlength{\typog@raisecapitaltimes}{#1}}
+ {\setlength{\typog@config@raisecapitaltimes}{#1}}
\DeclareOptionX<typog>{raiseguillemets}[\z@]%
- {\setlength{\typog@raiseguillemets}{#1}}
+ {\setlength{\typog@config@raiseguillemets}{#1}}
\DeclareOptionX<typog>{raisefiguredash}[\z@]%
- {\setlength{\typog@raisefiguredash}{#1}}
+ {\setlength{\typog@config@raisefiguredash}{#1}}
\DeclareOptionX<typog>{raise*}[\z@]%
- {\setlength{\typog@raisecapitaldash}{#1}%
- \setlength{\typog@raisecapitalhyphen}{#1}%
- \setlength{\typog@raisecapitaltimes}{#1}%
- \setlength{\typog@raisefiguredash}{#1}}
+ {\setlength{\typog@config@raisecapitaldash}{#1}%
+ \setlength{\typog@config@raisecapitalhyphen}{#1}%
+ \setlength{\typog@config@raisecapitaltimes}{#1}%
+ \setlength{\typog@config@raisefiguredash}{#1}}
\DeclareOptionX<typog>{shrinklimits}%
[\typog@default@shrink@i, \typog@default@shrink@ii, \typog@default@shrink@iii]%
{\typog@require@preloaded@microtype
\ifx\@onlypreamble\@notprerr
\PackageWarning{typog}{option `shrinklimits' can only be used in the preamble}%
\else
- \edef\typog@shrinklimits{#1}%
+ \edef\typog@config@shrinklimits{#1}%
\typog@set@shrink@limits
\fi}
\DeclareOptionX<typog>{slashkern}[.05em]%
- {\setlength{\typog@slashkern}{#1}}
+ {\setlength{\typog@config@slashkern}{#1}}
\DeclareOptionX<typog>{stretchlimits}%
[\typog@default@stretch@i, \typog@default@stretch@ii, \typog@default@stretch@iii]%
{\typog@require@preloaded@microtype
\ifx\@onlypreamble\@notprerr
\PackageWarning{typog}{option `stretchlimits' can only be used in the preamble}%
\else
- \edef\typog@stretchlimits{#1}%
+ \edef\typog@config@stretchlimits{#1}%
\typog@set@stretch@limits
\fi}
-\DeclareOptionX<typog>{trackingttspacing}[\typog@trackingttspacing]%
+\DeclareOptionX<typog>{trackingttspacing}[\typog@config@trackingttspacing]%
{\typog@require@preloaded@microtype
\ifx\@onlypreamble\@notprerr
\PackageWarning{typog}{option `trackingttspacing' can only be used in the preamble}%
\else
- \typog@typeout{trackingttspacing=#1}%
+ \typog@debug@typeout{trackingttspacing=#1}%
\SetTracking[outer spacing={#1}]{encoding=*, family=tt*}{0}%
\fi}
+\DeclareOptionX<typog>{uppercaselabelitemadjustments}%
+ {\typog@debug@typeout{uppercaselabelitemadjustments={#1}}
+ \def\typog@@do##1{\addtocounter{typog@@iteration}{1}
+ \setlength{\csname typog@adjust@uppercase@labelitem\romannumeral\thetypog@@iteration\endcsname}{##1}}
+ \setcounter{typog@@iteration}{0}
+ \forcsvlist{\typog@@do}{#1}}
+\newcommand*{\typog@config@uppercaselabelitemadjustments}
+ {\the\typog@adjust@uppercase@labelitemi,\space
+ \the\typog@adjust@uppercase@labelitemii,\space
+ \the\typog@adjust@uppercase@labelitemiii,\space
+ \the\typog@adjust@uppercase@labelitemiv}
\newcommand*{\typog@initialize@options}
{\ExecuteOptionsX<typog>{
@@ -220,7 +259,30 @@
\fi
\ignorespaces}
{\ignorespacesafterend}
-\NewDocumentCommand{\typogget}{m}{\csname typog@#1\endcsname}
+\NewDocumentCommand{\typogget}{m}{\csname typog@config@#1\endcsname}
+
+\ExplSyntaxOn
+\cs_generate_variant:Nn \seq_set_split:Nnn {Nne}
+\cs_new:Npn \typog_get_nth_csname:cnn #1#2#3
+ {
+ \seq_set_split:Nne \l_tmpa_seq {,} {\cs:w typog@config@#2 \cs_end:}
+ \cs_gset:cpn {#1} {\seq_item:Nn \l_tmpa_seq {#3}}
+ }
+\cs_new:Npn \typog_get_nth_dimen:nnn #1#2#3
+ {
+ \seq_set_split:Nne \l_tmpa_seq {,} {\cs:w typog@config@#2 \cs_end:}
+ \dim_set:Nn {#1} {\seq_item:Nn \l_tmpa_seq {#3}}
+ }
+\NewDocumentCommand{\typoggetnth}{m m m}{
+ \token_if_dim_register:NTF {#1}
+ {
+ \typog_get_nth_dimen:nnn {#1} {#2} {#3}
+ }
+ {
+ \typog_get_nth_csname:cnn {#1} {#2} {#3}
+ }
+}
+\ExplSyntaxOff
\ExplSyntaxOn
\newcommand*{\typog@round@dim@to@tenths}[1]
@@ -250,6 +312,7 @@
\newcommand*{\typog@default@inspect@id@prefix}{a-}
\newcounter{typog@inspect@count}
+
\define@key[typog]{typoginspect}{tracingboxes}[\maxdimen]%
{\def\typog@@typoginspect@tracingboxes{#1}}
\NewDocumentEnvironment{typoginspect}{O{} m}
@@ -258,11 +321,16 @@
\edef\typog@@arg{#2}%
\ifx\typog@@arg\empty
\stepcounter{typog@inspect@count}%
- \edef\typog@@id{\typog@default@inspect@id@prefix\arabic{typog@inspect@count}}%
+ \edef\typog@@id{\typog@default@inspect@id@prefix
+ \arabic{typog@inspect@count}}%
\else
\edef\typog@@id{\typog@trim@spaces{\typog@@arg}}%
\fi
- \typeout{<typog-inspect id="\typog@@id" job="\jobname" line="\the\inputlineno" page="\the\value{page}">}%
+ \typeout{<typog-inspect\space
+ id="\typog@@id"\space
+ job="\jobname"\space
+ line="\the\inputlineno"\space
+ page="\the\value{page}">}%
\hbadness=\m@ne
\vbadness=\m@ne
\tracingnone
@@ -306,7 +374,7 @@
\newcommand*{\typog@hyphen}{\char`-}
\NewDocumentCommand{\nolig}{s o}
- {\dimen0=\IfNoValueTF{#2}{\typog@ligaturekern}{#2\typog@dim@unit}%
+ {\dimen0=\IfNoValueTF{#2}{\typog@config@ligaturekern}{#2\typog@dim@unit}%
\IfBooleanTF{#1}%
{\kern\dimen0\ignorespaces}%
{\discretionary{\typog@hyphen}{}{\kern\dimen0}%
@@ -329,7 +397,7 @@
}
\newcommand*{\typog@itcorr@text@unconditional}[1]
- {\kern#1\typog@textitalicscorrection}
+ {\kern#1\typog@config@textitalicscorrection}
\newcommand*{\typog@itcorr@text}[1]
{\def\typog@@strength{#1}%
\dimen0=\fontdimen1\font
@@ -339,7 +407,7 @@
\kern\typog@@strength\dimen0
\fi}
\newcommand*{\typog@itcorr@math}[1]
- {\mkern#1\typog@mathitalicscorrection}
+ {\mkern#1\typog@config@mathitalicscorrection}
\NewDocumentCommand{\itcorr}{s m}
{\ifmmode
\typog@itcorr@math{#2}%
@@ -354,11 +422,11 @@
\newcommand*{\typog@forwardslash}{\char`/}
\NewDocumentCommand{\kernedslash}{s}
- {\hspace*{\typog@slashkern}%
+ {\hspace*{\typog@config@slashkern}%
\typog@forwardslash
\IfBooleanTF{#1}%
- {\hspace*{\typog@slashkern}\ignorespaces}%
- {\typog@breakpoint\typog@allowhyphenation\hspace*{\typog@slashkern}}}
+ {\hspace*{\typog@config@slashkern}\ignorespaces}%
+ {\typog@breakpoint\typog@allowhyphenation\hspace*{\typog@config@slashkern}}}
\typog@register@pdfsubstitute{
\def\kernedslash#1{\if*\detokenize{#1}/\ignorespaces\else/#1\fi}%
}
@@ -373,7 +441,7 @@
\def\typog@@optarg{#2}%
\hspace*{#3\typog@dim@unit}%
\raisebox{\ifx\typog@@optarg\typog@@auto
- \typog@raisecapitalhyphen
+ \typog@config@raisecapitalhyphen
\else
\typog@@optarg\typog@dim@unit
\fi}{\typog@hyphen}%
@@ -400,9 +468,9 @@
}
\newcommand*{\typog@breakpoint}
- {\penalty\typog@breakpenalty}
+ {\penalty\typog@config@breakpenalty}
\NewDocumentCommand{\capitalhyphen}{s}
- {\raisebox{\typog@raisecapitalhyphen}{\typog@hyphen}%
+ {\raisebox{\typog@config@raisecapitalhyphen}{\typog@hyphen}%
\IfBooleanTF{#1}%
{\ignorespaces}%
{\typog@breakpoint\typog@allowhyphenation}}
@@ -416,7 +484,7 @@
}
\NewDocumentCommand{\capitalendash}{s}
- {\raisebox{\typog@raisecapitaldash}{\textendash}%
+ {\raisebox{\typog@config@raisecapitaldash}{\textendash}%
\IfBooleanTF{#1}%
{\ignorespaces}%
{\typog@breakpoint\typog@allowhyphenation}}
@@ -432,7 +500,7 @@
}
\NewDocumentCommand{\capitalemdash}{s}
- {\raisebox{\typog@raisecapitaldash}{\textemdash}%
+ {\raisebox{\typog@config@raisecapitaldash}{\textemdash}%
\IfBooleanTF{#1}%
{\ignorespaces}%
{\typog@breakpoint\typog@allowhyphenation}}
@@ -446,7 +514,7 @@
}
\NewDocumentCommand{\figuredash}{s}
- {\raisebox{\typog@raisefiguredash}{\textendash}%
+ {\raisebox{\typog@config@raisefiguredash}{\textendash}%
\IfBooleanTF{#1}%
{\ignorespaces}%
{\typog@breakpoint\typog@allowhyphenation}}
@@ -454,9 +522,9 @@
\NewDocumentCommand{\capitaltimes}{}
{\ifmmode
- \mathbin{\raisebox{\typog@raisecapitaltimes}{$\m@th\times$}}%
+ \mathbin{\raisebox{\typog@config@raisecapitaltimes}{$\m@th\times$}}%
\else
- \raisebox{\typog@raisecapitaltimes}{\texttimes}%
+ \raisebox{\typog@config@raisecapitaltimes}{\texttimes}%
\fi}
\typog@register@pdfsubstitute{
\RenewExpandableDocumentCommand{\capitaltimes}{}{\texttimes}
@@ -464,37 +532,247 @@
\NewDocumentCommand{\singleguillemetleft}{}
{\typog@allowhyphenation
- \raisebox{\typog@raiseguillemets}{\guilsinglleft}}
+ \raisebox{\typog@config@raiseguillemets}{\guilsinglleft}}
\typog@register@pdfsubstitute{\let\singleguillemetleft\guilsinglleft}
\NewDocumentCommand{\singleguillemetright}{}
- {\raisebox{\typog@raiseguillemets}{\guilsinglright}%
+ {\raisebox{\typog@config@raiseguillemets}{\guilsinglright}%
\typog@allowhyphenation}
\typog@register@pdfsubstitute{\let\singleguillemetright\guilsinglright}
\NewDocumentCommand{\doubleguillemetleft}{}
{\typog@allowhyphenation
- \raisebox{\typog@raiseguillemets}{\guillemotleft}}
+ \raisebox{\typog@config@raiseguillemets}{\guillemotleft}}
\typog@register@pdfsubstitute{\let\doubleguillemetleft\guillemotleft}
\NewDocumentCommand{\doubleguillemetright}{}
- {\raisebox{\typog@raiseguillemets}{\guillemotright}%
+ {\raisebox{\typog@config@raiseguillemets}{\guillemotright}%
\typog@allowhyphenation}
\typog@register@pdfsubstitute{\let\doubleguillemetright\guillemotright}
\NewDocumentCommand{\Singleguillemetleft}{}
{\typog@allowhyphenation
- \raisebox{\typog@raisecapitalguillemets}{\guilsinglleft}}
+ \raisebox{\typog@config@raisecapitalguillemets}{\guilsinglleft}}
\typog@register@pdfsubstitute{\let\Singleguillemetleft\guilsinglleft}
\NewDocumentCommand{\Singleguillemetright}{}
- {\raisebox{\typog@raisecapitalguillemets}{\guilsinglright}%
+ {\raisebox{\typog@config@raisecapitalguillemets}{\guilsinglright}%
\typog@allowhyphenation}
\typog@register@pdfsubstitute{\let\Singleguillemetright\guilsinglright}
\NewDocumentCommand{\Doubleguillemetleft}{}
{\typog@allowhyphenation
- \raisebox{\typog@raisecapitalguillemets}{\guillemotleft}}
+ \raisebox{\typog@config@raisecapitalguillemets}{\guillemotleft}}
\typog@register@pdfsubstitute{\let\Doubleguillemetleft\guillemotleft}
\NewDocumentCommand{\Doubleguillemetright}{}
- {\raisebox{\typog@raisecapitalguillemets}{\guillemotright}%
+ {\raisebox{\typog@config@raisecapitalguillemets}{\guillemotright}%
\typog@allowhyphenation}
\typog@register@pdfsubstitute{\let\Doubleguillemetright\guillemotright}
+\newcommand*{\@typog@uppercase@adjust@labelitem}[1]
+ {\@typog@maybe@patch@itemize
+ \ifstrequal{#1}{*}
+ {\setlength{\typog@adjust@labelitemi}
+ {\typog@adjust@uppercase@labelitemi}
+ \setlength{\typog@adjust@labelitemii}
+ {\typog@adjust@uppercase@labelitemii}
+ \setlength{\typog@adjust@labelitemiii}
+ {\typog@adjust@uppercase@labelitemiii}
+ \setlength{\typog@adjust@labelitemiv}
+ {\typog@adjust@uppercase@labelitemiv}}
+ {\ifcase #1% 0
+ \relax % outside of any itemize environment
+ \or % 1
+ \setlength{\typog@adjust@labelitemi}
+ {\typog@adjust@uppercase@labelitemi}
+ \or % 2
+ \setlength{\typog@adjust@labelitemii}
+ {\typog@adjust@uppercase@labelitemii}
+ \or % 3
+ \setlength{\typog@adjust@labelitemiii}
+ {\typog@adjust@uppercase@labelitemiii}
+ \or % 4
+ \setlength{\typog@adjust@labelitemiv}
+ {\typog@adjust@uppercase@labelitemiv}
+ \else
+ \PackageError{typog}
+ {Itemize level out of range}
+ {Valid levels are 1, 2, 3, 4, and *}
+ \fi}}
+
+\newcommand*{\@typog@lowercase@adjust@labelitem}[1]
+ {\@typog@maybe@patch@itemize
+ \ifstrequal{#1}{*}
+ {\setlength{\typog@adjust@labelitemi}
+ {\typog@adjust@lowercase@labelitemi}
+ \setlength{\typog@adjust@labelitemii}
+ {\typog@adjust@lowercase@labelitemii}
+ \setlength{\typog@adjust@labelitemiii}
+ {\typog@adjust@lowercase@labelitemiii}
+ \setlength{\typog@adjust@labelitemiv}
+ {\typog@adjust@lowercase@labelitemiv}}
+ {\ifcase #1% 0
+ \relax % outside of any itemize environment
+ \or % 1
+ \setlength{\typog@adjust@labelitemi}
+ {\typog@adjust@lowercase@labelitemi}
+ \or % 2
+ \setlength{\typog@adjust@labelitemii}
+ {\typog@adjust@lowercase@labelitemii}
+ \or % 3
+ \setlength{\typog@adjust@labelitemiii}
+ {\typog@adjust@lowercase@labelitemiii}
+ \or % 4
+ \setlength{\typog@adjust@labelitemiv}
+ {\typog@adjust@lowercase@labelitemiv}
+ \else
+ \PackageError{typog}
+ {Itemize level out of range}
+ {Valid levels are 1, 2, 3, 4, and *}
+ \fi}}
+
+\newcommand*{\@typog@noadjust@labelitem}[1]
+ {\ifstrequal{#1}{*}
+ {\setlength{\typog@adjust@labelitemi}{\z@}
+ \setlength{\typog@adjust@labelitemii}{\z@}
+ \setlength{\typog@adjust@labelitemiii}{\z@}
+ \setlength{\typog@adjust@labelitemiv}{\z@}}
+ {\ifcase #1% 0
+ \relax % outside of any itemize environment
+ \or % 1
+ \setlength{\typog@adjust@labelitemi}{\z@}
+ \or % 2
+ \setlength{\typog@adjust@labelitemii}{\z@}
+ \or % 3
+ \setlength{\typog@adjust@labelitemiii}{\z@}
+ \or % 4
+ \setlength{\typog@adjust@labelitemiv}{\z@}
+ \else
+ \PackageError{typog}
+ {Itemize level out of range}
+ {Valid levels are 1, 2, 3, 4, and *}
+ \fi}}
+
+\NewDocumentCommand{\uppercaseadjustlabelitems}{m}
+ {\AfterPreamble{%
+ \ifblank{#1}
+ {\@typog@uppercase@adjust@labelitem{\@itemdepth}}
+ {\forcsvlist{\@typog@uppercase@adjust@labelitem}{#1}}%
+ \ignorespaces}}
+
+\NewDocumentCommand{\lowercaseadjustlabelitems}{m}
+ {\AfterPreamble{%
+ \ifblank{#1}
+ {\@typog@lowercase@adjust@labelitem{\@itemdepth}}
+ {\forcsvlist{\@typog@lowercase@adjust@labelitem}{#1}}%
+ \ignorespaces}}
+
+\NewDocumentCommand{\noadjustlabelitems}{m}
+ {\ifblank{#1}
+ {\@typog@noadjust@labelitem{\@itemdepth}}
+ {\forcsvlist{\@typog@noadjust@labelitem}{#1}}%
+ \ignorespaces}
+
+\newcommand*{\@typog@itemize@patch}
+ {\letcs{\@typog@old@itemitem}{\@itemitem}
+ \edef\@itemitem{@typog@labelitem\romannumeral\the\@itemdepth}
+ \expandafter\def\csname\@itemitem\endcsname
+ {\raisebox{\csname typog@adjust@labelitem\romannumeral\the\@itemdepth\endcsname}
+ {\@typog@old@itemitem}}}
+
+\newcommand*{\@typog@patch@itemize}
+ {\ifdefined\enit@itemize@i
+ \patchcmd{\enit@itemize@i}
+ {\expandafter}
+ {\@typog@itemize@patch\expandafter}
+ {\typog@debug@typeout{patching enumitem \string\enit@itemize@i\space succeeded}}
+ {\PackageError{typog}
+ {Patching enumitem macro \string\enit@itemize@i\space failed}
+ {}}
+ \else
+ \patchcmd{\itemize}
+ {\expandafter}
+ {\@typog@itemize@patch\expandafter}
+ {\typog@debug@typeout{patching \string\itemize\space succeeded}}
+ {\PackageError{typog}
+ {Patching plain LaTeX macro \string\itemize\space failed}
+ {}}
+ \fi}
+
+\newbool{@typog@itemize@has@been@patched}
+\newcommand*{\@typog@maybe@patch@itemize}
+ {\ifbool{@typog@itemize@has@been@patched}
+ {\relax}
+ {\@typog@patch@itemize
+ \booltrue{@typog@itemize@has@been@patched}}}
+
+\newcommand*{\typog@hairline@width}{.125pt}
+\newcommand*{\typogadjuststairsfor}[5]
+ {\dimen0=1pt%
+ \count0=#3\relax
+ \unless\ifodd\count0
+ \advance\count0 by 1%
+ \fi
+ \setcounter{typog@@iteration}{1}%
+ \setbox0=\hbox{#4}%
+ \setbox1=\hbox{}%
+ \loop
+ \ifnum\thetypog@@iteration=\numexpr\count0 / 2\relax
+ \dimen1=2\dimen0
+ \else
+ \dimen1=\dimen0
+ \fi
+ \dimen2=\dimexpr#2 * (\thetypog@@iteration - \count0 / 2)\relax
+ \setbox1=\hbox{\unhbox1\raisebox{\dimen2}{\kern\dimen1 #5\kern\dimen1}}%
+ \addtocounter{typog@@iteration}{1}%
+ \unless\ifnum\thetypog@@iteration>\count0
+ \repeat
+ \mbox{\rlap{\raisebox{\fpeval{#1}\ht0}{\rule{\wd1}{\typog@hairline@width}}}\box1}}
+
+\NewDocumentCommand{\typogadjuststairs}{O{.5} m m m}
+ {\begingroup
+ \unless\ifdim #2>\z@
+ \PackageError{typog}
+ {\string\typogadjuststairs\space non-positive step-size}
+ {step-size must be a positive dimension}%
+ \fi
+ \ifnum #3<1
+ \PackageError{typog}
+ {\string\typogadjuststairs\space too few number-of-steps}
+ {number-of-steps must at least be 1}%
+ \fi
+ \ifblank{#4}
+ {\PackageError{typog}
+ {sample must not be empty}
+ {supply either some uppercase or some lowercase letters}}
+ {}%
+ \def\arraystretch{1}%
+ \begin{tabular}{@{}c@{}}
+ \typogadjuststairsfor{#1}{#2}{#3}{#4}{\labelitemi} \\
+ \typogadjuststairsfor{#1}{#2}{#3}{#4}{\labelitemii} \\
+ \typogadjuststairsfor{#1}{#2}{#3}{#4}{\labelitemiii} \\
+ \typogadjuststairsfor{#1}{#2}{#3}{#4}{\labelitemiv}
+ \end{tabular}
+ \endgroup}
+
+\newcommand*{\typog@uppercase@adjusted@labelitems}
+ {\hbox{\raisebox{\typog@adjust@uppercase@labelitemi}{\labelitemi}%
+ \raisebox{\typog@adjust@uppercase@labelitemii}{\labelitemii}%
+ \raisebox{\typog@adjust@uppercase@labelitemiii}{\labelitemiii}%
+ \raisebox{\typog@adjust@uppercase@labelitemiv}{\labelitemiv}}}
+\NewDocumentCommand{\typoguppercaseadjustcheck}{O{.5} m}
+ {\setbox0=\hbox{#2}%
+ \setbox1=\typog@uppercase@adjusted@labelitems
+ \mbox{\rlap{\raisebox{\fpeval{#1}\ht0}
+ {\rule{\wd1}{\typog@hairline@width}}}%
+ \box1}}
+
+\newcommand*{\typog@lowercase@adjusted@labelitems}
+ {\hbox{\raisebox{\typog@adjust@lowercase@labelitemi}{\labelitemi}%
+ \raisebox{\typog@adjust@lowercase@labelitemii}{\labelitemii}%
+ \raisebox{\typog@adjust@lowercase@labelitemiii}{\labelitemiii}%
+ \raisebox{\typog@adjust@lowercase@labelitemiv}{\labelitemiv}}}
+\NewDocumentCommand{\typoglowercaseadjustcheck}{O{.5} m}
+ {\setbox0=\hbox{#2}%
+ \setbox1=\typog@lowercase@adjusted@labelitems
+ \mbox{\rlap{\raisebox{\fpeval{#1}\ht0}
+ {\rule{\wd1}{\typog@hairline@width}}}%
+ \box1}}
+
\NewDocumentEnvironment{lastlineraggedleftpar}{}
{\lastlinefit=0%
\setlength{\leftskip}{\z@ \@plus 1fil}%
@@ -844,7 +1122,7 @@
\NewDocumentCommand{\vtietop}{O{3}}
{\setcounter{typog@mean@penalty}
{\typog@geometric@mean{\@M}{\clubpenalty}}%
- \typog@typeout{vtietop: penalties \the\@M--\the\value{typog@mean@penalty}--\the\clubpenalty}%
+ \typog@debug@typeout{vtietop: penalties \the\@M--\the\value{typog@mean@penalty}--\the\clubpenalty}%
\unless\ifnum\clubpenalty<\@M
\PackageWarning{typog}{vtietop: clubpenalty=\the\clubpenalty\space>= 10000}%
\fi
@@ -911,7 +1189,7 @@
\NewDocumentCommand{\vtiebot}{O{3}}
{\setcounter{typog@mean@penalty}
{\typog@geometric@mean{\@M}{\widowpenalty}}%
- \typog@typeout{vtiebot: penalties \the\@M--\the\value{typog@mean@penalty}--\the\widowpenalty}%
+ \typog@debug@typeout{vtiebot: penalties \the\@M--\the\value{typog@mean@penalty}--\the\widowpenalty}%
\unless\ifnum\widowpenalty<\@M
\PackageWarning{typog}{vtiebot: widowpenalty=\the\widowpenalty\space>= 10000}%
\fi
@@ -969,7 +1247,7 @@
\NewDocumentCommand{\typog@vtiebotdisp}{m}
{\setcounter{typog@mean@penalty}
{\typog@geometric@mean{\@M}{\displaywidowpenalty}}%
- \typog@typeout{vtiebotdisp: penalties \the\@M--\the\value{typog@mean@penalty}--\the\displaywidowpenalty}%
+ \typog@debug@typeout{vtiebotdisp: penalties \the\@M--\the\value{typog@mean@penalty}--\the\displaywidowpenalty}%
\unless\ifnum\displaywidowpenalty<\@M
\PackageWarning{typog}{vtiebotdisp: displaywidowpenalty=\the\displaywidowpenalty\space>= 10000}%
\fi
@@ -1047,9 +1325,9 @@
\int_set:Nn \l_tmpb_int {\typog@setbaselineskip@iter@limit}
\dim_set:Nn \l_tmpa_dim {\glueexpr #1}
- \typog@typeout{\string\setbaselineskip:\space
+ \typog@debug@typeout{\string\setbaselineskip:\space
initial\space baselineskip:\space \the\baselineskip}
- \typog@typeout{\string\setbaselineskip:\space
+ \typog@debug@typeout{\string\setbaselineskip:\space
target\space baselineskip:\space \dim_use:N \l_tmpa_dim}
\dim_compare:nNnTF {\baselineskip} > {\c_zero_dim}
@@ -1102,10 +1380,10 @@
{}
}
- \typog@typeout{\string\setbaselineskip:\space
+ \typog@debug@typeout{\string\setbaselineskip:\space
final\space \string\setstretch\space argument:\space
\fp_use:N \l_tmpa_fp}
- \typog@typeout{\string\setbaselineskip:\space
+ \typog@debug@typeout{\string\setbaselineskip:\space
final\space baselineskip:\space \the\baselineskip}
}
@@ -1123,7 +1401,7 @@
\dim_new:N \typogfontsize
\AfterEndPreamble{
\dim_set:Nn \typogfontsize {\fontdimen6\font}
- \typog@typeout{\string\typogfontsize =
+ \typog@debug@typeout{\string\typogfontsize =
\dim_use:N \typogfontsize\space
(at\space begin\space of\space document)}
}
@@ -1205,13 +1483,13 @@
\skip1=#2\relax
\skip2=#3\relax
\skip3=#4\relax
- \typog@typeout{smoothraggedrightshapetriplet: skip0=\the\skip0}%
- \typog@typeout{smoothraggedrightshapetriplet: skip1=\the\skip1}%
- \typog@typeout{smoothraggedrightshapetriplet: skip2=\the\skip2}%
- \typog@typeout{smoothraggedrightshapetriplet: skip3=\the\skip3}%
+ \typog@debug@typeout{smoothraggedrightshapetriplet: skip0=\the\skip0}%
+ \typog@debug@typeout{smoothraggedrightshapetriplet: skip1=\the\skip1}%
+ \typog@debug@typeout{smoothraggedrightshapetriplet: skip2=\the\skip2}%
+ \typog@debug@typeout{smoothraggedrightshapetriplet: skip3=\the\skip3}%
\unless\ifnum\typog@mod{\typog@triplet@max@lines}{3}=0
\PackageError{typog}
- {Line number of triplet generator %
+ {Line number of triplet generator\space
(\typog@triplet@max@lines) not divisible by 3}
{}
\fi
@@ -1240,15 +1518,15 @@
\skip3=#4\relax
\skip4=#5\relax
\skip5=#6\relax
- \typog@typeout{smoothraggedrightshapequintuplet: skip0=\the\skip0}%
- \typog@typeout{smoothraggedrightshapequintuplet: skip1=\the\skip1}%
- \typog@typeout{smoothraggedrightshapequintuplet: skip2=\the\skip2}%
- \typog@typeout{smoothraggedrightshapequintuplet: skip3=\the\skip3}%
- \typog@typeout{smoothraggedrightshapequintuplet: skip4=\the\skip4}%
- \typog@typeout{smoothraggedrightshapequintuplet: skip5=\the\skip5}%
+ \typog@debug@typeout{smoothraggedrightshapequintuplet: skip0=\the\skip0}%
+ \typog@debug@typeout{smoothraggedrightshapequintuplet: skip1=\the\skip1}%
+ \typog@debug@typeout{smoothraggedrightshapequintuplet: skip2=\the\skip2}%
+ \typog@debug@typeout{smoothraggedrightshapequintuplet: skip3=\the\skip3}%
+ \typog@debug@typeout{smoothraggedrightshapequintuplet: skip4=\the\skip4}%
+ \typog@debug@typeout{smoothraggedrightshapequintuplet: skip5=\the\skip5}%
\unless\ifnum\typog@mod{\typog@quintuplet@max@lines}{5}=0
\PackageError{typog}
- {Line number of quintuplet generator %
+ {Line number of quintuplet generator\space
(\typog@quintuplet@max@lines) not divisible by 5}
{}
\fi
@@ -1279,17 +1557,17 @@
\skip5=#6\relax
\skip6=#7\relax
\skip7=#8\relax
- \typog@typeout{smoothraggedrightshapeseptuplet: skip0=\the\skip0}%
- \typog@typeout{smoothraggedrightshapeseptuplet: skip1=\the\skip1}%
- \typog@typeout{smoothraggedrightshapeseptuplet: skip2=\the\skip2}%
- \typog@typeout{smoothraggedrightshapeseptuplet: skip3=\the\skip3}%
- \typog@typeout{smoothraggedrightshapeseptuplet: skip4=\the\skip4}%
- \typog@typeout{smoothraggedrightshapeseptuplet: skip5=\the\skip5}%
- \typog@typeout{smoothraggedrightshapeseptuplet: skip6=\the\skip6}%
- \typog@typeout{smoothraggedrightshapeseptuplet: skip7=\the\skip7}%
+ \typog@debug@typeout{smoothraggedrightshapeseptuplet: skip0=\the\skip0}%
+ \typog@debug@typeout{smoothraggedrightshapeseptuplet: skip1=\the\skip1}%
+ \typog@debug@typeout{smoothraggedrightshapeseptuplet: skip2=\the\skip2}%
+ \typog@debug@typeout{smoothraggedrightshapeseptuplet: skip3=\the\skip3}%
+ \typog@debug@typeout{smoothraggedrightshapeseptuplet: skip4=\the\skip4}%
+ \typog@debug@typeout{smoothraggedrightshapeseptuplet: skip5=\the\skip5}%
+ \typog@debug@typeout{smoothraggedrightshapeseptuplet: skip6=\the\skip6}%
+ \typog@debug@typeout{smoothraggedrightshapeseptuplet: skip7=\the\skip7}%
\unless\ifnum\typog@mod{\typog@septuplet@max@lines}{7}=0
\PackageError{typog}
- {Line number of septuplet generator %
+ {Line number of septuplet generator\space
(\typog@septuplet@max@lines) not divisible by 7}
{}
\fi
@@ -1340,7 +1618,7 @@
\typog@fuzzwidth=\smoothraggedrightfuzzfactor\smoothraggedrightragwidth
\ifcase\typog@@generatorchoice
\typog@fuzzwidth=.25\smoothraggedrightragwidth
- \typog@typeout{smoothraggedright: generator=triplet, typog@fuzzwidth=\the\typog@fuzzwidth}%
+ \typog@debug@typeout{smoothraggedright: generator=triplet, typog@fuzzwidth=\the\typog@fuzzwidth}%
\smoothraggedrightshapetriplet[leftskip=\typog@@smoothraggedrightleftskip,
parindent=\glueexpr\smoothraggedrightparindent + \parindent,
#1]%
@@ -1351,7 +1629,7 @@
+ \glueexpr \z@ \@plus \typog@fuzzwidth \@minus \typog@fuzzwidth\relax}% (2)
\or
\typog@fuzzwidth=.125\smoothraggedrightragwidth
- \typog@typeout{smoothraggedright: generator=quintuplet, typog@fuzzwidth=\the\typog@fuzzwidth}%
+ \typog@debug@typeout{smoothraggedright: generator=quintuplet, typog@fuzzwidth=\the\typog@fuzzwidth}%
\smoothraggedrightshapequintuplet[leftskip=\typog@@smoothraggedrightleftskip,
parindent=\glueexpr\smoothraggedrightparindent + \parindent,
#1]%
@@ -1366,7 +1644,7 @@
+ \glueexpr \z@ \@plus \typog@fuzzwidth\relax}% (1)
\or
\typog@fuzzwidth=.08333\smoothraggedrightragwidth
- \typog@typeout{smoothraggedright: generator=septuplet, typog@fuzzwidth=\the\typog@fuzzwidth}%
+ \typog@debug@typeout{smoothraggedright: generator=septuplet, typog@fuzzwidth=\the\typog@fuzzwidth}%
\smoothraggedrightshapeseptuplet[leftskip=\typog@@smoothraggedrightleftskip,
parindent=\glueexpr\smoothraggedrightparindent + \parindent,
#1]%
diff --git a/Master/texmf-dist/tex/latex/uantwerpendocs/beamerthemeuantwerpen.sty b/Master/texmf-dist/tex/latex/uantwerpendocs/beamerthemeuantwerpen.sty
index 61fe5db1b48..c901bd70b5b 100644
--- a/Master/texmf-dist/tex/latex/uantwerpendocs/beamerthemeuantwerpen.sty
+++ b/Master/texmf-dist/tex/latex/uantwerpendocs/beamerthemeuantwerpen.sty
@@ -26,7 +26,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesPackage{beamerthemeuantwerpen}
- [2024/06/04 v4.7 .dtx skeleton file]
+ [2024/08/27 v4.8 .dtx skeleton file]
diff --git a/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenbamathesis.cls b/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenbamathesis.cls
index 34e0dceb034..dacdc2eba5f 100644
--- a/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenbamathesis.cls
+++ b/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenbamathesis.cls
@@ -26,7 +26,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesClass{uantwerpenbamathesis}
- [2024/06/04 v4.7 .dtx skeleton file]
+ [2024/08/27 v4.8 .dtx skeleton file]
\newif\if@filled
\DeclareOption{filled}{\@filledtrue}
\input{uantwerpencommonoptions.clo}
diff --git a/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpencolorlogoscheme.sty b/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpencolorlogoscheme.sty
index c18c069f77a..cbc4e66ac75 100644
--- a/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpencolorlogoscheme.sty
+++ b/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpencolorlogoscheme.sty
@@ -25,7 +25,7 @@
%% The Current Maintainer of this work is Walter Daems.
%%
\ProvidesPackage{uantwerpencolorlogoscheme}
- [2024/06/04 v4.7 .dtx skeleton file]
+ [2024/08/27 v4.8 .dtx skeleton file]
\if@cmyk
%% UAntwerpen
\definecolor{uauamain}{cmyk}{0.00,0.96,0.82,0.01}
diff --git a/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpencoursetext.cls b/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpencoursetext.cls
index 0f39d9fce21..75b7428ba8d 100644
--- a/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpencoursetext.cls
+++ b/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpencoursetext.cls
@@ -26,7 +26,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesClass{uantwerpencoursetext}
- [2024/06/04 v4.7 .dtx skeleton file]
+ [2024/08/27 v4.8 .dtx skeleton file]
\newif\if@modern
\@modernfalse
\DeclareOption{modern}{\@moderntrue}
diff --git a/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpendocs-en.data b/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpendocs-en.data
index 78baa70ad6a..b3d2a343bdf 100644
--- a/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpendocs-en.data
+++ b/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpendocs-en.data
@@ -46,8 +46,8 @@ juryname = Jury
jurymembersname = Members
jurychairname = Chair
bmthesisname = Thesis to obtain the degree of
-pthesisnamei = Thesis submitted in fulfilment of the requirements for the degree of
-pthesisnameii = at the University of Antwerp
+pthesisnamei = Thesis submitted for the degree of
+pthesisnameii = at the University of Antwerp to be defended by
weightname = Weight
diff --git a/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenexam.cls b/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenexam.cls
index 3b6ba3c95e5..7e4b1999d4c 100644
--- a/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenexam.cls
+++ b/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenexam.cls
@@ -26,7 +26,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesClass{uantwerpenexam}
- [2024/06/04 v4.7 .dtx skeleton file]
+ [2024/08/27 v4.8 .dtx skeleton file]
\newif\if@examiner
\DeclareOption{examiner}{\@examinertrue}
\input{uantwerpencommonoptions.clo}
diff --git a/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenletter.cls b/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenletter.cls
index 36ea4e52a16..eebd93d7930 100644
--- a/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenletter.cls
+++ b/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenletter.cls
@@ -26,7 +26,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesClass{uantwerpenletter}
- [2024/06/04 v4.7 .dtx skeleton file]
+ [2024/08/27 v4.8 .dtx skeleton file]
\newif\if@filled
\DeclareOption{filled}{\@filledtrue}
\newif\if@nofoldline
diff --git a/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenphdthesis.cls b/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenphdthesis.cls
index 99966e060cd..ddb8dd2d254 100644
--- a/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenphdthesis.cls
+++ b/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenphdthesis.cls
@@ -26,7 +26,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesClass{uantwerpenphdthesis}
- [2024/06/04 v4.7 .dtx skeleton file]
+ [2024/08/27 v4.8 .dtx skeleton file]
\newif\if@filled
\DeclareOption{filled}{\@filledtrue}
\newif\if@cameraready
diff --git a/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenreport.cls b/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenreport.cls
index 09009072947..feeb5ac9623 100644
--- a/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenreport.cls
+++ b/Master/texmf-dist/tex/latex/uantwerpendocs/uantwerpenreport.cls
@@ -26,7 +26,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesClass{uantwerpenreport}
- [2024/06/04 v4.7 .dtx skeleton file]
+ [2024/08/27 v4.8 .dtx skeleton file]
\newif\if@copyright
\DeclareOption{copyright}{\@copyrighttrue}
\newif\if@filled
diff --git a/Master/texmf-dist/tex/latex/ucph-revy/ucph-revy.cls b/Master/texmf-dist/tex/latex/ucph-revy/ucph-revy.cls
index 1ecd22dc05c..694b59651e9 100644
--- a/Master/texmf-dist/tex/latex/ucph-revy/ucph-revy.cls
+++ b/Master/texmf-dist/tex/latex/ucph-revy/ucph-revy.cls
@@ -22,7 +22,7 @@
%% LaTeX version 2005/12/01 or later.
\NeedsTeXFormat{LaTeX2e}[2005/12/01]
\ProvidesClass{ucph-revy}
- [2024/02/07 v1.0.1 Fix occational divide by 0]
+ [2024/09/24 v1.0.2 A class for making musical manuscripts]
\RequirePackage{xstring}
\newif\if@thumbindex\@thumbindexfalse
\DeclareOption{thumbindex}{\@thumbindextrue}
@@ -46,7 +46,7 @@
\else
\expandafter\@gobble
\fi{
- \RequirePackage[T1]{fontenc}
+ \RequirePackage[OT1]{fontenc}
\begingroup
\count256=0
\endlinechar=-1
@@ -545,6 +545,7 @@
\def\does##1{\scene \hspace{-1em}\role{##1}}
\def\act##1{\textit{(##1)}}
}{}
+\newcommand{\SaTyR}{S\hspace*{-.2ex}\raisebox{-.15em}{A}\hspace*{-.5ex}TyR}
\let\revyinfo=\relax
\newtoks\@titletoks
\newtoks\@authortoks
diff --git a/Master/texmf-dist/tex/latex/udiss/udiss.cls b/Master/texmf-dist/tex/latex/udiss/udiss.cls
new file mode 100644
index 00000000000..52567f5923c
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/udiss/udiss.cls
@@ -0,0 +1,1868 @@
+%%
+%% This is file `udiss.cls',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% udiss.dtx (with options: `class')
+%% ---------------------------------------------------------
+%% Bundle: udiss
+%% Version: v0.1 (October 1, 2024)
+%% Author: Indian TeX Users Group
+%% Description: A LaTeX bundle for typesetting dissertations
+%% Bugs: puszcza.gnu.org.ua/bugs/?group=udiss
+%% Licenses: GPLv3+, GFDLv1.3+
+%% ---------------------------------------------------------
+%%
+%% The LaTeX bundle udiss v0.1
+%% Copyright © 2024 Indian TeX Users Group
+%%
+%% This program is free software: you can redistribute it
+%% and/or modify it under the terms of the GNU General
+%% Public License as published by the Free Software
+%% Foundation, either version 3 of the License, or (at your
+%% option) any later version.
+%%
+%% This program is distributed in the hope that it will be
+%% useful, but WITHOUT ANY WARRANTY; without even the
+%% implied warranty of MERCHANTABILITY or FITNESS FOR A
+%% PARTICULAR PURPOSE. See the GNU General Public License
+%% for more details.
+%%
+%% You should have received a copy of the GNU General Public
+%% License along with this program. If not, see
+%% <https://www.gnu.org/licenses/>.
+%% ---------------------------------------------------------
+\ProvidesClass{udiss}[2024/10/01 v0.1
+ A LaTeX bundle for typesetting dissertations (TUGIndia)]
+\RequirePackage{expkv-def,expkv-opt}
+\newif\ifudiss@pronouns
+\newif\ifudiss@blind
+\NewDocumentCommand{ \pronouns }{ m }{%
+ \ifudiss@blind
+ \else
+ \def\udiss@pronouns{#1}%
+ \fi
+}
+\ekvdefinekeys{udiss}{%
+ code pronouns = {%
+ \ifudiss@blind
+ \else
+ \def\udiss@pronouns{(#1)}%
+ \fi
+ \udiss@pronounstrue
+ }%
+}
+\newif\ifudiss@title
+\def\udiss@blank@title@err{%
+ \ClassError{udiss}{%
+ The `title' field cannot be blank%
+ }{%
+ You have provided an empty argument to the `title'
+ field. This is not\MessageBreak permitted by the class.%
+ }%
+}
+\def\udiss@blank@author@err{%
+ \ClassError{udiss}{%
+ The `author' field cannot be blank%
+ }{%
+ You have provided an empty argument to the `author'
+ field. This is not\MessageBreak permitted by the class.%
+ }%
+}
+\ekvdefinekeys{udiss}{%
+ code title = {%
+ \def\udiss@tmp@title{#1}%
+ \ifx\udiss@tmp@title\empty
+ \def\udiss@title{-NoValidTitle-}%
+ \udiss@blank@title@err
+ \else
+ \def\udiss@title{#1}%
+ \fi
+ },%
+ code author = {%
+ \def\udiss@tmp@author{#1}%
+ \ifx\udiss@tmp@author\empty
+ \def\udiss@author{-NoValidAuthor-}%
+ \udiss@blank@author@err
+ \else
+ \def\udiss@author{#1}%
+ \fi
+ }%
+}
+\newif\ifudiss@subtitle
+\newif\ifudiss@shorttitle
+\ekvdefinekeys{udiss}{%
+ code subtitle = {%
+ \IfBlankTF{#1}{%
+ \def\udiss@subtitle{-NoValidSubtitle-}%
+ \udiss@subtitletrue
+ }{%
+ \def\udiss@subtitle{#1}%
+ \udiss@subtitletrue
+ }%
+ },%
+ code shorttitle = {%
+ \IfBlankTF{#1}{%
+ \def\udiss@shorttitle{-NoValidSubtitle-}%
+ \udiss@shorttitletrue
+ }{%
+ \def\udiss@shorttitle{#1}%
+ \udiss@shorttitletrue
+ }%
+ }%
+}
+\NewDocumentCommand{ \subtitle }{ m }{%
+ \def\udiss@subtitle{#1}%
+ \udiss@subtitletrue
+}
+\NewDocumentCommand{ \shorttitle }{ m }{%
+ \def\udiss@shorttitle{#1}%
+ \udiss@shorttitletrue
+}
+\newif\ifudiss@stream
+\def\udiss@blank@stream@err{%
+ \ClassError{udiss}{%
+ The `stream' field cannot be blank%
+ }{%
+ You have provided an empty argument to the `stream'
+ field. This is not\MessageBreak permitted by the class.%
+ }%
+}
+\newif\ifudiss@discipline
+\def\udiss@blank@discipline@err{%
+ \ClassError{udiss}{%
+ The `discipline' field cannot be blank%
+ }{%
+ You have provided an empty argument to the `discipline'
+ field. This is not\MessageBreak permitted by the class.%
+ }%
+}
+\newif\ifudiss@degree
+\def\udiss@blank@degree@err{%
+ \ClassError{udiss}{%
+ The `degree' field cannot be blank%
+ }{%
+ You have provided an empty argument to the `degree'
+ field. This is not\MessageBreak permitted by the class.%
+ }%
+}
+\ekvdefinekeys{udiss}{%
+ code stream = {%
+ \def\udiss@tmp@stream{#1}%
+ \ifx\udiss@tmp@stream\empty
+ \def\udiss@stream{-NoValidStream-}%
+ \udiss@blank@stream@err
+ \else
+ \def\udiss@stream{#1}%
+ \fi
+ },%
+ code discipline = {%
+ \def\udiss@tmp@discipline{#1}%
+ \ifx\udiss@tmp@discipline\empty
+ \def\udiss@discipline{-NoValidDiscipline-}%
+ \udiss@blank@discipline@err
+ \else
+ \def\udiss@discipline{#1}%
+ \fi
+ },%
+ code degree = {%
+ \def\udiss@tmp@degree{#1}%
+ \ifx\udiss@tmp@degree\empty
+ \def\udiss@degree{-NoValidDegree-}%
+ \udiss@blank@degree@err
+ \else
+ \def\udiss@degree{#1}%
+ \fi
+ }%
+}
+\NewDocumentCommand{ \stream }{ m }{%
+ \IfBlankTF{#1}{%
+ \udiss@blank@stream@err
+ \def\udiss@stream{-NoValidStream-}%
+ }{%
+ \def\udiss@stream{#1}%
+ }%
+ \IfBlankTF{#1}{%
+ \udiss@streamtrue
+ }{%
+ \def\udiss@stream{#1}%
+ \udiss@streamtrue
+ }%
+}
+\NewDocumentCommand{ \discipline }{ m }{%
+ \IfBlankTF{#1}{%
+ \udiss@blank@discipline@err
+ \def\udiss@discipline{-NoValidDiscipline-}%
+ }{%
+ \def\udiss@discipline{#1}%
+ }%
+ \IfBlankTF{#1}{%
+ \udiss@disciplinetrue
+ }{%
+ \def\udiss@discipline{#1}%
+ \udiss@disciplinetrue
+ }%
+}
+\NewDocumentCommand{ \degree }{ m }{%
+ \IfBlankTF{#1}{%
+ \udiss@blank@degree@err
+ \def\udiss@degree{-NoValidDegree-}%
+ }{%
+ \def\udiss@degree{#1}%
+ }%
+ \IfBlankTF{#1}{%
+ \udiss@degreetrue
+ }{%
+ \def\udiss@degree{#1}%
+ \udiss@degreetrue
+ }%
+}
+\newif\ifudiss@supervisor
+\newif\ifudiss@university
+\newif\ifudiss@department
+\def\udiss@blank@supervisor@err{%
+ \ClassError{udiss}{%
+ The `supervisor' field cannot be blank%
+ }{%
+ You have provided an empty argument to the `supervisor'
+ field. This is not\MessageBreak permitted by the class.%
+ }%
+}
+\def\udiss@blank@university@err{%
+ \ClassError{udiss}{%
+ The `university' field cannot be blank%
+ }{%
+ You have provided an empty argument to the `university'
+ field. This is not\MessageBreak permitted by the class.%
+ }%
+}
+\def\udiss@blank@department@err{%
+ \ClassError{udiss}{%
+ The `department' field cannot be blank%
+ }{%
+ You have provided an empty argument to the `department'
+ field. This is not\MessageBreak permitted by the class.%
+ }%
+}
+\ekvdefinekeys{udiss}{%
+ code supervisor = {%
+ \def\udiss@tmp@supervisor{#1}%
+ \ifx\udiss@tmp@supervisor\empty
+ \def\udiss@supervisor{-NoValidSupervisor-}%
+ \udiss@blank@supervisor@err
+ \else
+ \def\udiss@supervisor{#1}%
+ \fi
+ },%
+ code university = {%
+ \def\udiss@tmp@university{#1}%
+ \ifx\udiss@tmp@university\empty
+ \def\udiss@university{-NoValidUniversity-}%
+ \udiss@blank@university@err
+ \else
+ \def\udiss@university{#1}%
+ \fi
+ },%
+ code department = {%
+ \def\udiss@tmp@department{#1}%
+ \ifx\udiss@tmp@department\empty
+ \def\udiss@department{-NoValidDepartment-}%
+ \udiss@blank@department@err
+ \else
+ \def\udiss@department{#1}%
+ \fi
+ }%
+}
+\NewDocumentCommand{ \supervisor }{ m }{%
+ \IfBlankTF{#1}{%
+ \udiss@blank@supervisor@err
+ \def\udiss@supervisor{-NoValidSupervisor-}%
+ }{%
+ \def\udiss@supervisor{#1}%
+ }%
+ \IfBlankTF{#1}{%
+ \udiss@supervisortrue
+ }{%
+ \def\udiss@supervisor{#1}%
+ \udiss@supervisortrue
+ }%
+}
+\NewDocumentCommand{ \university }{ m }{%
+ \IfBlankTF{#1}{%
+ \udiss@blank@university@err
+ \def\udiss@author{-NoValidUniversity-}%
+ }{%
+ \def\udiss@university{#1}%
+ }%
+ \IfBlankTF{#1}{%
+ \udiss@universitytrue
+ }{%
+ \def\udiss@university{#1}%
+ \udiss@universitytrue
+ }%
+}
+\NewDocumentCommand{ \department }{ m }{%
+ \IfBlankTF{#1}{%
+ \udiss@blank@department@err
+ \def\udiss@author{-NoValidDepartment-}%
+ }{%
+ \def\udiss@department{#1}%
+ }%
+ \IfBlankTF{#1}{%
+ \udiss@departmenttrue
+ }{%
+ \def\udiss@department{#1}%
+ \udiss@departmenttrue
+ }%
+}
+\newif\ifudiss@logo
+\newif\ifudiss@texlogo
+\NewDocumentCommand{ \logo }{ s +m }{%
+ \IfBooleanTF{#1}{%
+ \def\udiss@texlogo{#2}%
+ \udiss@texlogotrue
+ }{%
+ \def\udiss@logo{#2}%
+ }%
+ \udiss@logotrue
+}
+\ekvdefinekeys{udiss}{%
+ code logo = {%
+ \def\udiss@logo{#1}%
+ \udiss@logotrue
+ },%
+ code logo* = {%
+ \def\udiss@texlogo{#1}%
+ \udiss@logotrue
+ \udiss@texlogotrue
+ }%
+}
+\newcounter{udiss@langbabel}
+\stepcounter{udiss@langbabel}
+\def\udiss@int@langbabel#1{%
+ \expandafter\edef
+ \csname
+ udiss@langbabel@\alph{udiss@langbabel}%
+ \endcsname{#1}%
+ \stepcounter{udiss@langbabel}%
+}
+\NewDocumentCommand\udiss@lgbbl{ >{ \SplitList{,} } m }{%
+ \ProcessList{#1}{\udiss@int@langbabel}%
+}
+\newif\ifudiss@lg@used
+\newif\ifudiss@ldfbabel
+\ekvdefinekeys{udiss}{%
+ code language = {%
+ \udiss@lgbbl{#1}%
+ \udiss@lg@usedtrue
+ },%
+ code ldfbabel = {%
+ \def\udiss@ldfbabel@list{#1}%
+ \udiss@lg@usedtrue
+ \udiss@ldfbabeltrue
+ },%
+ invbool nofontwarning = {\ifudiss@font@warning}%
+}
+\newif\ifudiss@free@culture
+\newif\ifudiss@ccbysa
+\newif\ifudiss@gfdl
+\ekvdefinekeys{udiss}{%
+ choice license = {%
+ all-rights-reserved = {%
+ \def\udiss@license@notice{%
+ All rights reserved.\textLF
+ }%
+ },%
+ CC-BY-SA = {%
+ \def\udiss@license@notice{%
+ This work is available under the "Creative Commons
+ Attribution ShareAlike 4.0 International" license.%
+ }%
+ \def\udiss@free@license@url{%
+ https://creativecommons.org/licenses/%
+ by-sa/4.0/legalcode.txt%
+ }%
+ \udiss@free@culturetrue
+ \udiss@ccbysatrue
+ },%
+ GFDL = {%
+ \def\udiss@license@notice{%
+ Permission is granted to copy, distribute and/or
+ modify this document under the terms of the GNU Free
+ Documentation License, Version 1.3 or any later
+ version published by the Free Software Foundation;
+ with no Invariant Sections, no Front-Cover Texts,
+ and no Back-Cover Texts. A copy of the license is
+ included in the section entitled “GNU Free
+ Documentation License”.%
+ }%
+ \def\udiss@free@license@url{%
+ https://www.gnu.org/licenses/fdl-1.3.txt%
+ }%
+ \udiss@free@culturetrue
+ \udiss@gfdltrue
+ },%
+ },%
+ initial license = {all-rights-reserved},%
+ store copyright-yrs = {\udiss@copyrightable@years},%
+ initial copyright-yrs = {\the\year},%
+ store localcopyright = {\udiss@local@copyright},%
+ initial localcopyright = {Copyright},%
+ nmeta placeholders = {%
+ title = {%
+ A groundbreaking dissertation%
+ },%
+ author = {%
+ Jane Doe%
+ },%
+ pronouns = {She/her},%
+ subtitle = {%
+ A milestone study on a longstanding question
+ in a discipline%
+ },%
+ shorttitle = {A Milestone study},%
+ stream = {intriguing stream},%
+ discipline = {rigorous discipline},
+ degree = {enriching degree},%
+ supervisor = {A kind supervisor},%
+ university = {An ideal university},%
+ department = {A homely department},%
+ license = {CC-BY-SA},%
+ copyright-yrs = {2022, 2023, 2024}%
+ }%
+}
+\ekvdefinekeys{udiss}{%
+ bool lot = {\ifudiss@lot},%
+ bool lof = {\ifudiss@lof},%
+ bool declaration = {\ifudiss@declaration},%
+ long
+ store declarationtxt = {\udiss@declaration},%
+ initial declarationtxt = {%
+ \noindent As required by the university regulations, I
+ wish to state that the work embodied in this thesis
+ titled \enquote{\udiss@title: \udiss@subtitle} forms
+ my own contribution to the research work carried out
+ under the guidance of \udiss@supervisor\ at the
+ \udiss@university, \udiss@department.
+
+ This work has not been submitted for any other degree
+ of this or any other university. Whenever references
+ have been made to previous works of others, it has
+ been clearly indicated as such and included in the
+ bibliography.
+
+ \bigskip
+ \flushright{%
+ Date: \today
+
+ \vspace{4em}%
+
+ Name: \udiss@author
+ }%
+
+ \bigskip\bigskip
+ \flushleft{%
+ Certified by:%
+
+ \vspace{4em}%
+
+ \udiss@supervisor
+ }%
+ },%
+ store decllocal = {\udiss@decllocal},%
+ initial decllocal = {Declaration}%
+}
+\ekvdefinekeys{udiss}{%
+ bool print = {\ifudiss@print},%
+ invbool norefcolors = {\ifudiss@colors},%
+ store udisslinkclr = {\udiss@int@link@color},%
+ initial udisslinkclr = {udisslink},%
+ store udissurlclr = {\udiss@int@url@color},%
+ initial udissurlclr = {udissurl},%
+ store udissciteclr = {\udiss@int@cite@color},%
+ initial udissciteclr = {udisscite}%
+}
+\ekvdefinekeys{udiss}{%
+ bool blind = {\ifudiss@blind}%
+}
+\ekvdefinekeys{udiss}{%
+ bool framed-title = {\ifudiss@ftitle}%
+}
+\ekvdefinekeys{udiss}{%
+ invbool oldstylenumoff = {\ifudiss@oldstylenum},%
+ bool oldone = {\ifudiss@oldone}%
+}
+\ekvdefinekeys{udiss}{%
+ bool explicitext = {\ifudiss@explicitext},%
+ invbool ignorefsoff = {\ifudiss@ignorefontspec}%
+}
+\ekvdefinekeys{udiss}{%
+ store fulfilment = {\udiss@fulfilment},%
+ initial fulfilment = {%
+ A dissertation submitted in the partial fulfilment of
+ the requirements for the \udiss@degree\ program in
+ \udiss@discipline.%
+ }%
+}
+\ekvdefinekeys{udiss}{%
+ store rmfont = {\udiss@rmfont},%
+ initial rmfont = {NewCM10-Book.otf},%
+ store rmbffont = {\udiss@rmbffont},%
+ initial rmbffont = {NewCM10-Bold.otf},%
+ store rmitfont = {\udiss@rmitfont},%
+ initial rmitfont = {NewCM10-BookItalic.otf},%
+ store rmbfitfont = {\udiss@rmbfitfont},%
+ initial rmbfitfont = {NewCM10-BoldItalic.otf},%
+ store rmslfont = {\udiss@rmslfont},%
+ initial rmslfont = {NewCM10-Book.otf},%
+ store rmbfslfont = {\udiss@rmbfslfont},%
+ initial rmbfslfont = {NewCM10-Bold.otf},%
+ store sffont = {\udiss@sffont},%
+ initial sffont = {NewCMSans10-Book.otf},%
+ store sfbffont = {\udiss@sfbffont},%
+ initial sfbffont = {NewCMSans10-Bold.otf},%
+ store sfitfont = {\udiss@sfitfont},
+ initial sfitfont = {NewCMSans10-BookOblique.otf},%
+ store sfbfitfont = {\udiss@sfbfitfont},%
+ initial sfbfitfont = {NewCMSans10-BoldOblique.otf},%
+ store sfslfont = {\udiss@sfslfont},%
+ initial sfslfont = {NewCMSans10-BookOblique.otf},%
+ store sfbfslfont = {\udiss@sfbfslfont},%
+ initial sfbfslfont = {NewCMSans10-BoldOblique.otf},%
+ store ttfont = {\udiss@ttfont},%
+ initial ttfont = {NewCMMono10-Book.otf},%
+ store ttbffont = {\udiss@ttbffont},
+ initial ttbffont = {NewCMMono10-Bold.otf},%
+ store ttitfont = {\udiss@ttitfont},%
+ initial ttitfont = {NewCMMono10-BookItalic.otf},%
+ store ttbfitfont = {\udiss@ttbfitfont},%
+ initial ttbfitfont = {NewCMMono10-BoldOblique.otf},%
+ store ttslfont = {\udiss@ttslfont},%
+ initial ttslfont = {NewCM10-Book.otf},%
+ store ttbfslfont = {\udiss@ttbfslfont},%
+ initial ttbfslfont = {NewCMMono10-BoldOblique.otf},%
+ store mathfont = {\udiss@mathfont},%
+ initial mathfont = {NewCMMath-Book.otf},%
+ store mathbffont = {\udiss@mathbffont},%
+ initial mathbffont = {NewCMMath-Bold.otf},%
+ store rmfeatures = {\udiss@rmfeatures},%
+ choice rmfntext = {%
+ ttf = {%
+ \ifudiss@explicitext
+ \def\udiss@rmfntext{ttf}%
+ \else
+ \ClassError{udiss}{%
+ Option `explicitext' is needed for adding
+ font extensions%
+ }{%
+ You have loaded font-option `rmfntext' to
+ add extension to font-names.
+ This\MessageBreak option is supposed to be
+ used only with the `explicitext' option.
+ E.g., for\MessageBreak loading, say,
+ FreeSerif, you may choose one of the
+ following two methods:%
+ \MessageBreak\MessageBreak
+ 1. The recommended method:%
+ \MessageBreak
+ \space\space\space
+ ----8<---------------8<----%
+ \MessageBreak
+ \space\space\space
+ \string\documentclass[\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ rmfont = {FreeSerif.ttf}\@percentchar
+ \MessageBreak
+ \space\space\space
+ ]{udiss}\MessageBreak
+ \space\space\space
+ ----8<---------------8<----%
+ \MessageBreak\MessageBreak
+ 2. The alternative:%
+ \MessageBreak
+ \space\space\space
+ ----8<------------8<----%
+ \MessageBreak
+ \space\space\space
+ \string\documentclass[\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ explicitext,\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ rmfont = {FreeSerif},\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ rmfntext = {ttf}\@percentchar
+ \MessageBreak
+ \space\space\space
+ ]{udiss}%
+ \MessageBreak
+ \space\space\space
+ ----8<------------8<----%
+ }%
+ \fi
+ },%
+ otf = {%
+ \ifudiss@explicitext
+ \def\udiss@rmfntext{otf}%
+ \else
+ \ClassError{udiss}{%
+ Option `explicitext' is needed for adding
+ font extensions%
+ }{%
+ You have loaded font-option `rmfntext' to
+ add extension to font-names.
+ This\MessageBreak option is supposed to be
+ used only with the `explicitext' option.
+ E.g., for\MessageBreak loading, say,
+ KpRoman-Regular.otf, you may choose one of
+ the following two\MessageBreak
+ methods:%
+ \MessageBreak\MessageBreak
+ 1. The recommended method:%
+ \MessageBreak
+ \space\space\space
+ ----8<---------------------8<----%
+ \MessageBreak
+ \space\space\space
+ \string\documentclass[\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ rmfont = {KpRoman-Regular.otf}%
+ \@percentchar
+ \MessageBreak
+ \space\space\space
+ ]{udiss}\MessageBreak
+ \space\space\space
+ ----8<---------------------8<----%
+ \MessageBreak
+ \MessageBreak
+ 2. The alternative:%
+ \MessageBreak
+ \space\space\space
+ ----8<------------------8<----%
+ \MessageBreak
+ \space\space\space
+ \string\documentclass[\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ explicitext,\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ rmfont = {KpRoman-Regular},%
+ \@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ rmfntext = {otf}\@percentchar
+ \MessageBreak
+ \space\space\space
+ ]{udiss}%
+ \MessageBreak
+ \space\space\space
+ ----8<------------------8<----%
+ }%
+ \fi
+ }%
+ },%
+ store sffeatures = {\udiss@sffeatures},%
+ choice sffntext = {%
+ ttf = {%
+ \ifudiss@explicitext
+ \def\udiss@sffntext{ttf}%
+ \else
+ \ClassError{udiss}{%
+ Option `explicitext' is needed for adding
+ font extensions%
+ }{%
+ You have loaded font-option `sffntext' to
+ add extension to font-names.
+ This\MessageBreak option is supposed to be
+ used only with the `explicitext' option.
+ E.g., for\MessageBreak loading, say,
+ FreeSans, you may choose one of the
+ following two methods:%
+ \MessageBreak\MessageBreak
+ 1. The recommended method:%
+ \MessageBreak
+ \space\space\space
+ ----8<---------------8<----%
+ \MessageBreak
+ \space\space\space
+ \string\documentclass[\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ sffont = {FreeSans.ttf}\@percentchar
+ \MessageBreak
+ \space\space\space
+ ]{udiss}\MessageBreak
+ \space\space\space
+ ----8<---------------8<----%
+ \MessageBreak\MessageBreak
+ 2. The alternative:%
+ \MessageBreak
+ \space\space\space
+ ----8<------------8<----%
+ \MessageBreak
+ \space\space\space
+ \string\documentclass[\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ explicitext,\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ sffont = {FreeSans},\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ sffntext = {ttf}\@percentchar
+ \MessageBreak
+ \space\space\space
+ ]{udiss}%
+ \MessageBreak
+ \space\space\space
+ ----8<------------8<----%
+ }%
+ \fi
+ },%
+ otf = {%
+ \ifudiss@explicitext
+ \def\udiss@sffntext{otf}%
+ \else
+ \ClassError{udiss}{%
+ Option `explicitext' is needed for adding
+ font extensions%
+ }{%
+ You have loaded font-option `sffntext' to
+ add extension to font-names.
+ This\MessageBreak option is supposed to be
+ used only with the `explicitext' option.
+ E.g., for\MessageBreak loading, say,
+ KpSans-Regular.otf, you may choose one of
+ the following two\MessageBreak
+ methods:%
+ \MessageBreak\MessageBreak
+ 1. The recommended method:%
+ \MessageBreak
+ \space\space\space
+ ----8<---------------------8<----%
+ \MessageBreak
+ \space\space\space
+ \string\documentclass[\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ sffont = {KpSans-Regular.otf}%
+ \@percentchar
+ \MessageBreak
+ \space\space\space
+ ]{udiss}\MessageBreak
+ \space\space\space
+ ----8<---------------------8<----%
+ \MessageBreak
+ \MessageBreak
+ 2. The alternative:%
+ \MessageBreak
+ \space\space\space
+ ----8<------------------8<----%
+ \MessageBreak
+ \space\space\space
+ \string\documentclass[\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ explicitext,\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ sffont = {KpSans-Regular},%
+ \@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ sffntext = {otf}\@percentchar
+ \MessageBreak
+ \space\space\space
+ ]{udiss}%
+ \MessageBreak
+ \space\space\space
+ ----8<------------------8<----%
+ }%
+ \fi
+ }%
+ },%
+ store ttfeatures = {\udiss@ttfeatures},%
+ choice ttfntext = {%
+ ttf = {%
+ \ifudiss@explicitext
+ \def\udiss@ttfntext{ttf}%
+ \else
+ \ClassError{udiss}{%
+ Option `explicitext' is needed for adding
+ font extensions%
+ }{%
+ You have loaded font-option `ttfntext' to
+ add extension to font-names.
+ This\MessageBreak option is supposed to be
+ used only with the `explicitext' option.
+ E.g., for\MessageBreak loading, say,
+ FreeMono, you may choose one of the
+ following two methods:%
+ \MessageBreak\MessageBreak
+ 1. The recommended method:%
+ \MessageBreak
+ \space\space\space
+ ----8<---------------8<----%
+ \MessageBreak
+ \space\space\space
+ \string\documentclass[\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ ttfont = {FreeMono.ttf}\@percentchar
+ \MessageBreak
+ \space\space\space
+ ]{udiss}\MessageBreak
+ \space\space\space
+ ----8<---------------8<----%
+ \MessageBreak\MessageBreak
+ 2. The alternative:%
+ \MessageBreak
+ \space\space\space
+ ----8<------------8<----%
+ \MessageBreak
+ \space\space\space
+ \string\documentclass[\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ explicitext,\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ ttfont = {FreeMono},\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ ttfntext = {ttf}\@percentchar
+ \MessageBreak
+ \space\space\space
+ ]{udiss}%
+ \MessageBreak
+ \space\space\space
+ ----8<------------8<----%
+ }%
+ \fi
+ },%
+ otf = {%
+ \ifudiss@explicitext
+ \def\udiss@ttfntext{otf}%
+ \else
+ \ClassError{udiss}{%
+ Option `explicitext' is needed for adding
+ font extensions%
+ }{%
+ You have loaded font-option `ttfntext' to
+ add extension to font-names.
+ This\MessageBreak option is supposed to be
+ used only with the `explicitext' option.
+ E.g., for\MessageBreak loading, say,
+ KpMono-Regular.otf, you may choose one of
+ the following two\MessageBreak
+ methods:%
+ \MessageBreak\MessageBreak
+ 1. The recommended method:%
+ \MessageBreak
+ \space\space\space
+ ----8<---------------------8<----%
+ \MessageBreak
+ \space\space\space
+ \string\documentclass[\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ ttfont = {KpMono-Regular.otf}%
+ \@percentchar
+ \MessageBreak
+ \space\space\space
+ ]{udiss}\MessageBreak
+ \space\space\space
+ ----8<---------------------8<----%
+ \MessageBreak
+ \MessageBreak
+ 2. The alternative:%
+ \MessageBreak
+ \space\space\space
+ ----8<------------------8<----%
+ \MessageBreak
+ \space\space\space
+ \string\documentclass[\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ explicitext,\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ ttfont = {KpMono-Regular},%
+ \@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ ttfntext = {otf}\@percentchar
+ \MessageBreak
+ \space\space\space
+ ]{udiss}%
+ \MessageBreak
+ \space\space\space
+ ----8<------------------8<----%
+ }%
+ \fi
+ }%
+ },%
+ store mathfeatures = {\udiss@mathfeatures},%
+ choice mathfntext = {%
+ ttf = {%
+ \ifudiss@explicitext
+ \def\udiss@mathfntext{ttf}%
+ \else
+ \ClassError{udiss}{%
+ Option `explicitext' is needed for adding
+ font extensions%
+ }{%
+ You have loaded font-option `mathfntext'
+ to add extension to font-names.
+ This\MessageBreak option is supposed to be
+ used only with the `explicitext' option.
+ E.g., for\MessageBreak loading, say,
+ NotoSansMath-Regular, you may choose one
+ of the following two\MessageBreak
+ methods:%
+ \MessageBreak\MessageBreak
+ 1. The recommended method:%
+ \MessageBreak
+ \space\space\space
+ ----8<----------------------------8<----%
+ \MessageBreak
+ \space\space\space
+ \string\documentclass[\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ mathfont = {NotoSansMath-Regular.ttf}%
+ \@percentchar
+ \MessageBreak
+ \space\space\space
+ ]{udiss}\MessageBreak
+ \space\space\space
+ ----8<----------------------------8<----%
+ \MessageBreak\MessageBreak
+ 2. The alternative:%
+ \MessageBreak
+ \space\space\space
+ ----8<-------------------------8<----%
+ \MessageBreak
+ \space\space\space
+ \string\documentclass[\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ explicitext,\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ mathfont = {NotoSansMath-Regular},%
+ \@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ mathfntext = {ttf}\@percentchar
+ \MessageBreak
+ \space\space\space
+ ]{udiss}%
+ \MessageBreak
+ \space\space\space
+ ----8<-------------------------8<----%
+ }%
+ \fi
+ },%
+ otf = {%
+ \ifudiss@explicitext
+ \def\udiss@mathfntext{otf}%
+ \else
+ \ClassError{udiss}{%
+ Option `explicitext' is needed for adding
+ font extensions%
+ }{%
+ You have loaded font-option `mathfntext'
+ to add extension to font-names.
+ This\MessageBreak option is supposed to be
+ used only with the `explicitext' option.
+ E.g., for\MessageBreak loading, say,
+ XITSMath-Regular, you may choose one of
+ the following two\MessageBreak methods:%
+ \MessageBreak\MessageBreak
+ 1. The recommended method:%
+ \MessageBreak
+ \space\space\space
+ ----8<----------------------------8<----%
+ \MessageBreak
+ \space\space\space
+ \string\documentclass[\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ mathfont = {XITSMath-Regular.otf}%
+ \@percentchar
+ \MessageBreak
+ \space\space\space
+ ]{udiss}\MessageBreak
+ \space\space\space
+ ----8<----------------------------8<----%
+ \MessageBreak\MessageBreak
+ 2. The alternative:%
+ \MessageBreak
+ \space\space\space
+ ----8<-------------------------8<----%
+ \MessageBreak
+ \space\space\space
+ \string\documentclass[\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ explicitext,\@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ mathfont = {XITSMath-Regular},%
+ \@percentchar
+ \MessageBreak
+ \space\space\space\space\space
+ mathfntext = {otf}\@percentchar
+ \MessageBreak
+ \space\space\space
+ ]{udiss}%
+ \MessageBreak
+ \space\space\space
+ ----8<-------------------------8<----%
+ }%
+ \fi
+ }%
+ },%
+}
+\ekvdefinekeys{udiss}{%
+ store titleshape = {\udiss@title@shape},%
+ initial titleshape = {\bfseries},%
+ store titlefont = {\udiss@title@font},%
+ store titlesize = {\udiss@title@size},%
+ initial titlesize = {\udiss@int@huge},%
+ store titlecolor = {\udiss@title@color},%
+ initial titlecolor = {black},%
+ store titleffeat = {\udiss@title@fontfeats},%
+ initial titleffeat = {}%
+}
+\ekvdefinekeys{udiss}{%
+ store subtitleshape = {\udiss@subtitle@shape},%
+ initial subtitleshape = {\normalfont},%
+ store subtitlefont = {\udiss@subtitle@font},%
+ store subtitlesize = {\udiss@subtitle@size},%
+ initial subtitlesize = {\udiss@int@large},%
+ store subtitlecolor = {\udiss@subtitle@color},%
+ initial subtitlecolor = {black},%
+ store subtitleffeat = {\udiss@subtitle@fontfeats},%
+ initial subtitleffeat = {}%
+}
+\ekvdefinekeys{udiss}{%
+ store authorshape = {\udiss@author@shape},%
+ initial authorshape = {\normalfont},%
+ store authorfont = {\udiss@author@font},%
+ store authorsize = {\udiss@author@size},%
+ initial authorsize = {\udiss@int@large},%
+ store authorcolor = {\udiss@author@color},%
+ initial authorcolor = {black},%
+ store authorffeat = {\udiss@author@fontfeats},%
+ initial authorffeat = {}%
+}
+\ekvdefinekeys{udiss}{%
+ store unishape = {\udiss@uni@shape},%
+ initial unishape = {\itshape},%
+ store unifont = {\udiss@uni@font},%
+ store unisize = {\udiss@uni@size},%
+ initial unisize = {\normalsize},%
+ store unicolor = {\udiss@uni@color},%
+ initial unicolor = {black},%
+ store uniffeat = {\udiss@uni@fontfeats}%
+}
+\ekvdefinekeys{udiss}{%
+ store deptshape = {\udiss@dept@shape},%
+ initial deptshape = {\normalfont},%
+ store deptfont = {\udiss@dept@font},%
+ store deptsize = {\udiss@dept@size},%
+ initial deptsize = {\udiss@int@small},%
+ store deptcolor = {\udiss@dept@color},%
+ initial deptcolor = {black},%
+ store deptffeat = {\udiss@dept@fontfeats},%
+ initial deptffeat = {}%
+}
+\ekvdefinekeys{udiss}{%
+ store ffshape = {\udiss@fulfilment@shape},%
+ initial ffshape = {\normalfont},%
+ store fffont = {\udiss@fulfilment@font},%
+ store ffsize = {\udiss@fulfilment@size},%
+ initial ffsize = {\udiss@int@small},%
+ store ffcolor = {\udiss@fulfilment@color},%
+ initial ffcolor = {black},%
+ store fffeat = {\udiss@fulfilment@fontfeats},%
+ initial fffeat = {}%
+}
+\ekvdefinekeys{udiss}{%
+ store logowidth = {\udiss@logo@width},%
+ initial logowidth = {0.3},%
+ store logoheight = {\udiss@logo@hght},%
+ initial logoheight = {0.075}%
+}
+\ekvoProcessGlobalOptions{udiss}
+\NewDocumentCommand{ \dissertationstyle }{ m }{%
+ \AddToHook{begindocument/before}{%
+ \input{udiss-style-#1}%
+ }%
+}
+\ifudiss@print
+\else
+ \PassOptionsToClass{oneside}{memoir}%
+\fi
+\LoadClass{memoir}
+\RenewDocumentCommand{ \title }{ m }{%
+ \IfBlankTF{#1}{%
+ \udiss@blank@title@err
+ \def\udiss@title{-NoValidTitle-}%
+ }{%
+ \def\udiss@title{#1}%
+ }%
+}
+\RenewDocumentCommand{ \author }{ m }{%
+ \IfBlankTF{#1}{%
+ \udiss@blank@author@err
+ \def\udiss@author{-NoValidAuthor-}%
+ }{%
+ \def\udiss@author{#1}%
+ }%
+}
+\RequirePackage{iftex}
+\RequireTUTeX
+\def\udiss@int@HUGE{%
+ \addfontfeature{Scale={2.5}}%
+}
+\def\udiss@int@Huge{%
+ \addfontfeature{Scale={2}}%
+}
+\def\udiss@int@huge{%
+ \addfontfeature{Scale={1.7}}%
+}
+\def\udiss@int@LARGE{%
+ \addfontfeature{Scale={1.4}}%
+}
+\def\udiss@int@Large{%
+ \addfontfeature{Scale={1.2}}%
+}
+\def\udiss@int@large{%
+ \addfontfeature{Scale={1.1}}%
+}
+\def\udiss@int@small{%
+ \addfontfeature{Scale={0.9}}%
+}
+\def\udiss@int@footnotesize{%
+ \addfontfeature{Scale={0.8}}%
+}
+\def\udiss@int@scriptsize{%
+ \addfontfeature{Scale={0.7}}%
+}
+\def\udiss@int@tiny{%
+ \addfontfeature{Scale={0.6}}%
+}
+\def\udiss@int@miniscule{%
+ \addfontfeature{Scale={0.5}}%
+}
+\ifudiss@lg@used
+ \ifudiss@ldfbabel
+ \PassOptionsToPackage{%
+ \udiss@ldfbabel@list
+ }{babel}%
+ \fi
+\else
+ \PassOptionsToPackage{english,provide*=*}{babel}%
+\fi
+\RequirePackage{babel}
+\RequirePackage{iflang}
+\newcounter{udiss@tmp@langcnt}
+\ifudiss@ldfbabel
+\else
+ \ifudiss@lg@used
+ \ifnum\theudiss@langbabel=2\relax
+ \addtocounter{udiss@langbabel}{-1}%
+ \ifLuaTeX
+ \babelprovide[%
+ main,%
+ import,%
+ onchar ={ids fonts}%
+ ]{%
+ \csname
+ udiss@langbabel@\alph{udiss@langbabel}%
+ \endcsname
+ }%
+ \else
+ \babelprovide[main,import]{%
+ \csname
+ udiss@langbabel@\alph{udiss@langbabel}%
+ \endcsname
+ }%
+ \fi
+ \fi
+ \ifnum\theudiss@langbabel>2\relax
+ \setcounter{udiss@tmp@langcnt}{%
+ \numexpr\theudiss@langbabel -1\relax
+ }%
+ \setcounter{udiss@langbabel}{1}%
+ \loop
+ \ifLuaTeX
+ \babelprovide[%
+ import,%
+ onchar ={ids fonts}%
+ ]{%
+ \csname
+ udiss@langbabel@\alph{udiss@langbabel}%
+ \endcsname
+ }%
+ \else
+ \babelprovide[import]{%
+ \csname
+ udiss@langbabel@\alph{udiss@langbabel}%
+ \endcsname
+ }%
+ \fi
+ \ifnum\theudiss@tmp@langcnt=1\relax
+ \else
+ \addtocounter{udiss@langbabel}{1}%
+ \fi
+ \ifnum\theudiss@langbabel<\theudiss@tmp@langcnt
+ \relax
+ \repeat
+ \fi
+ \ifnum\theudiss@langbabel=1\relax
+ \else
+ \ifLuaTeX
+ \babelprovide[%
+ main,%
+ import,%
+ onchar ={ids fonts}%
+ ]{%
+ \csname
+ udiss@langbabel@\alph{udiss@langbabel}%
+ \endcsname
+ }%
+ \else
+ \babelprovide[main,import]{%
+ \csname
+ udiss@langbabel@\alph{udiss@langbabel}%
+ \endcsname
+ }%
+ \fi
+ \fi
+ \setcounter{udiss@tmp@langcnt}{%
+ \numexpr\theudiss@langbabel + 1\relax
+ }%
+ \setcounter{udiss@langbabel}{1}%
+ \loop
+ \IfFileExists{%
+ udiss-fonts-\csname
+ udiss@langbabel@\alph{udiss@langbabel}%
+ \endcsname
+ }{%
+ \input{%
+ udiss-fonts-\csname
+ udiss@langbabel@\alph{udiss@langbabel}%
+ \endcsname
+ }%
+ }{%
+ \ifudiss@font@warning
+ \ClassWarningNoLine{udiss}{%
+ We don't support \csname
+ udiss@langbabel@\alph{udiss@langbabel}%
+ \endcsname\space yet.%
+ \MessageBreak
+ It requires a font-setup. You may add the fonts
+ directly\MessageBreak to your preamble using:%
+ \MessageBreak\MessageBreak
+ \space\space\string\babelfont[%
+ \csname
+ udiss@langbabel@\alph{udiss@langbabel}%
+ \endcsname
+ ]{rm}{main font}%
+ \MessageBreak
+ \space\space\string\babelfont[%
+ \csname
+ udiss@langbabel@\alph{udiss@langbabel}%
+ \endcsname
+ ]{sf}{sans font}%
+ \MessageBreak
+ \space\space\string\babelfont[%
+ \csname
+ udiss@langbabel@\alph{udiss@langbabel}%
+ \endcsname
+ ]{tt}{mono font}%
+ \MessageBreak\MessageBreak
+ Read more about this in the documentation of
+ `udiss' in a\MessageBreak section called
+ `multilingual typesetting'. Consider%
+ \MessageBreak contacting us with a support
+ request and let us know some\MessageBreak
+ suitable free (libre) fonts for this
+ language. If you\MessageBreak don't wish to see
+ this warning again, use the option%
+ \MessageBreak `nofontwarning' to suppress it%
+ }%
+ \fi
+ }%
+ \addtocounter{udiss@langbabel}{1}%
+ \ifnum\theudiss@langbabel<\theudiss@tmp@langcnt\relax
+ \repeat
+ \fi
+\fi
+\babelfont{rm}[%
+ \ifudiss@ignorefontspec
+ IgnoreFontspecFile,%
+ \fi
+ \ifudiss@explicitext
+ Extension = {.\udiss@rmfntext},%
+ \fi
+ BoldFont = {\udiss@rmbffont},%
+ ItalicFont = {\udiss@rmitfont},%
+ BoldItalicFont = {\udiss@rmbfitfont},%
+ SlantedFont = {\udiss@rmslfont},%
+ BoldSlantedFont = {\udiss@rmbfslfont},%
+ \ifudiss@oldstylenum
+ Numbers = {OldStyle},%
+ \ifudiss@oldone
+ CharacterVariant = {6},%
+ \fi
+ \fi
+ \ifLuaTeX
+ Renderer = {HarfBuzz},%
+ \fi
+ \udiss@rmfeatures
+]{\udiss@rmfont}
+\babelfont{sf}[%
+ \ifudiss@ignorefontspec
+ IgnoreFontspecFile,%
+ \fi
+ \ifudiss@explicitext
+ Extension = {.\udiss@sffntext},%
+ \fi
+ BoldFont = {\udiss@sfbffont},%
+ ItalicFont = {\udiss@sfitfont},%
+ BoldItalicFont = {\udiss@sfbfitfont},%
+ SlantedFont = {\udiss@sfslfont},%
+ BoldSlantedFont = {\udiss@sfbfslfont},%
+ \ifudiss@oldstylenum
+ Numbers = {OldStyle},%
+ \ifudiss@oldone
+ CharacterVariant = {6},%
+ \fi
+ \fi
+ \ifLuaTeX
+ Renderer = {HarfBuzz},%
+ \fi
+ \udiss@sffeatures
+]{\udiss@sffont}
+\babelfont{tt}[%
+ \ifudiss@ignorefontspec
+ IgnoreFontspecFile,%
+ \fi
+ \ifudiss@explicitext
+ Extension = {.\udiss@ttfntext},%
+ \fi
+ BoldFont = {\udiss@ttbffont},%
+ ItalicFont = {\udiss@ttitfont},%
+ BoldItalicFont = {\udiss@ttbfitfont},%
+ SlantedFont = {\udiss@ttslfont},%
+ BoldSlantedFont = {\udiss@ttbfslfont},%
+ \ifLuaTeX
+ Renderer = {HarfBuzz},%
+ \fi
+ \udiss@ttfeatures
+]{\udiss@ttfont}
+\RequirePackage{unicode-math}
+\expanded{%
+ \setmathfont[%
+ \ifudiss@ignorefontspec%
+ IgnoreFontspecFile,%
+ \fi%
+ \ifudiss@explicitext
+ Extension = {.\udiss@mathfntext},%
+ \fi
+ BoldFont = {\udiss@mathbffont},%
+ SlantedFont = {\udiss@mathfont},%
+ BoldSlantedFont = {\udiss@mathbffont},%
+ \udiss@mathfeatures%
+ ]{\udiss@mathfont}%
+}
+\RequirePackage{graphicx}
+\RequirePackage{xcolor}
+\RequirePackage{csquotes}
+\ifudiss@ccbysa
+ \RequirePackage[%
+ hyperxmp = {false},%
+ type = {CC},%
+ modifier = {by-sa},%
+ version = {4.0}%
+ ]{doclicense}
+\fi
+\ifudiss@colors
+ \colorlet{udisslink}{red!60!black}
+ \colorlet{udissurl}{blue!60!black}
+ \colorlet{udisscite}{green!60!black}
+\else
+ \colorlet{udisslink}{black}
+ \colorlet{udissurl}{black}
+ \colorlet{udisscite}{black}
+\fi
+\AddToHook{begindocument/before}{%
+ \ifdefined\udiss@title
+ \else
+ \def\udiss@title{\textbf{-NoValidTitle-}}%
+ \ClassError{udiss}{%
+ Title not given%
+ }{%
+ `title' is a compulsory field. Provide it in the
+ preamble like in the following:%
+ \MessageBreak
+ \MessageBreak
+ ----8<-----------------------8<----%
+ \MessageBreak\MessageBreak
+ \space\space\string\title{title-of-the-dissertation}%
+ \MessageBreak\MessageBreak
+ ----8<-----------------------8<----%
+ \MessageBreak
+ }%
+ \fi
+ \ifdefined\udiss@author
+ \else
+ \def\udiss@author{\textbf{-NoValidAuthor-}}%
+ \ClassError{udiss}{%
+ No author given in a normal (non-blind) document%
+ }{%
+ Do you want a blind document? If yes, then use the
+ package option `blind' like\MessageBreak in the
+ following:%
+ \MessageBreak
+ ----8<------------------8<----%
+ \MessageBreak\MessageBreak
+ \space\space\string\documentclass[blind]{udiss}%
+ \MessageBreak\MessageBreak
+ ----8<------------------8<----%
+ \MessageBreak
+ Otherwise, `author' is a compulsory field. Provide it
+ in the preamble like in\MessageBreak the following:%
+ \MessageBreak
+ ----8<-------------------------8<----%
+ \MessageBreak\MessageBreak
+ \space\space\string\author{author-name}%
+ \MessageBreak\MessageBreak
+ ----8<-------------------------8<----%
+ \MessageBreak
+ }%
+ \fi
+ \ifdefined\udiss@stream
+ \else
+ \def\udiss@stream{\textbf{-NoValidStream-}}%
+ \ClassError{udiss}{%
+ Stream not given%
+ }{%
+ `stream' is a compulsory field. Provide it in the
+ preamble like in the following:%
+ \MessageBreak
+ \MessageBreak
+ ----8<-----------------------8<----%
+ \MessageBreak\MessageBreak
+ \space\space\string\stream{stream-of-the-candidate}%
+ \MessageBreak\MessageBreak
+ ----8<-----------------------8<----%
+ \MessageBreak
+ }%
+ \fi
+ \ifdefined\udiss@discipline
+ \else
+ \def\udiss@discipline{\textbf{-NoValidDiscipline-}}%
+ \ClassError{udiss}{%
+ Discipline not given%
+ }{%
+ `discipline' is a compulsory field. Provide it in the
+ preamble like in the following:%
+ \MessageBreak
+ \MessageBreak
+ ----8<-----------------------8<----%
+ \MessageBreak\MessageBreak
+ \space\space\string\discipline%
+ {discipline-of-the-candidate}%
+ \MessageBreak\MessageBreak
+ ----8<-----------------------8<----%
+ \MessageBreak
+ }%
+ \fi
+ \ifdefined\udiss@degree
+ \else
+ \def\udiss@degree{\textbf{-NoValidDegree-}}%
+ \ClassError{udiss}{%
+ Degree not given%
+ }{%
+ `degree' is a compulsory field. Provide it in the
+ preamble like in the following:%
+ \MessageBreak
+ \MessageBreak
+ ----8<-----------------------8<----%
+ \MessageBreak\MessageBreak
+ \space\space\string\degree{degree-of-the-candidate}%
+ \MessageBreak\MessageBreak
+ ----8<-----------------------8<----%
+ \MessageBreak
+ }%
+ \fi
+ \ifdefined\udiss@supervisor
+ \else
+ \def\udiss@title{\textbf{-NoValidTitle-}}%
+ \ClassError{udiss}{%
+ No supervisor given in a normal (non-blind) document%
+ }{%
+ Do you want a blind document? If yes, then use the
+ package option `blind' like\MessageBreak in the
+ following:%
+ \MessageBreak
+ ----8<------------------8<----%
+ \MessageBreak\MessageBreak
+ \space\space\string\documentclass[blind]{udiss}%
+ \MessageBreak\MessageBreak
+ ----8<------------------8<----%
+ \MessageBreak
+ Otherwise, `supervisor' is a compulsory field. Provide
+ it in the preamble like\MessageBreak in the
+ following:%
+ \MessageBreak
+ ----8<-------------------------8<----%
+ \MessageBreak\MessageBreak
+ \space\space\string\supervisor{supervisor's-name}%
+ \MessageBreak\MessageBreak
+ ----8<-------------------------8<----%
+ \MessageBreak
+ }%
+ \fi
+ \ifdefined\udiss@university
+ \else
+ \def\udiss@university{\textbf{-NoValidUniversity-}}%
+ \ClassError{udiss}{%
+ No university given in a normal (non-blind) document%
+ }{%
+ Do you want a blind document? If yes, then use the
+ package option `blind' like\MessageBreak in the
+ following:%
+ \MessageBreak
+ ----8<------------------8<----%
+ \MessageBreak\MessageBreak
+ \space\space\string\documentclass[blind]{udiss}%
+ \MessageBreak\MessageBreak
+ ----8<------------------8<----%
+ \MessageBreak
+ Otherwise, `university' is a compulsory field. Provide
+ it in the preamble like\MessageBreak in the
+ following:%
+ \MessageBreak
+ ----8<-------------------------8<----%
+ \MessageBreak\MessageBreak
+ \space\space\string\university{university-name}%
+ \MessageBreak\MessageBreak
+ ----8<-------------------------8<----%
+ \MessageBreak
+ }%
+ \fi
+ \ifdefined\udiss@department
+ \else
+ \def\udiss@department{\textbf{-NoValidDepartment-}}%
+ \ClassError{udiss}{%
+ No department given in a normal (non-blind) document%
+ }{%
+ Do you want a blind document? If yes, then use the
+ package option `blind' like\MessageBreak in the
+ following:%
+ \MessageBreak
+ ----8<------------------8<----%
+ \MessageBreak\MessageBreak
+ \space\space\string\documentclass[blind]{udiss}%
+ \MessageBreak\MessageBreak
+ ----8<------------------8<----%
+ \MessageBreak
+ Otherwise, `department'\space is a compulsory field.
+ Provide it in the preamble like in\MessageBreak the
+ following:%
+ \MessageBreak
+ ----8<-------------------------8<----%
+ \MessageBreak\MessageBreak
+ \space\space\string\department{department-name}%
+ \MessageBreak\MessageBreak
+ ----8<-------------------------8<----%
+ \MessageBreak
+ }%
+ \fi
+ \ifudiss@print
+ \else
+ \RequirePackage{hyperref}%
+ \RequirePackage{hyperxmp}%
+ \hypersetup{%
+ unicode,%
+ colorlinks,%
+ pdftitle = {\udiss@title}%
+ }%
+ \ifudiss@subtitle
+ \hypersetup{%
+ pdfsubject = {\udiss@subtitle}%
+ }%
+ \fi
+ \ifudiss@blind
+ \else
+ \hypersetup{%
+ pdfauthor = {\udiss@author},%
+ pdfcopyright = {%
+ \udiss@title\textLF
+ \udiss@local@copyright\
+ ©
+ \udiss@copyrightable@years\
+ \udiss@author\textLF
+ \udiss@license@notice
+ },%
+ }%
+ \ifudiss@free@culture
+ \hypersetup{%
+ pdflicenseurl = {%
+ \udiss@free@license@url
+ }%
+ }%
+ \fi
+ \fi
+ \ifudiss@colors
+ \hypersetup{%
+ linkcolor = {\udiss@int@link@color},%
+ urlcolor = {\udiss@int@url@color},%
+ citecolor = {\udiss@int@cite@color}%
+ }%
+ \else
+ \hypersetup{%
+ hidelinks%
+ }%
+ \fi
+ \fi
+}
+\AddToHook{begindocument/end}{%
+ \begingroup
+ \thispagestyle{titlingpage}%
+ \ifudiss@ftitle
+ \setlength{\fboxsep}{25pt}%
+ \noindent\fbox{%
+ \begin{minipage}%
+ [c][\dimexpr\textheight-2\fboxsep-2\fboxrule]%
+ [c]{\dimexpr\linewidth-2\fboxsep-2\fboxrule}%
+ \fi
+ \hspace{0pt}%
+ \vspace{3em}%
+ \begin{center}
+ \begingroup
+ \udiss@title@shape
+ \ifx\udiss@title@font\empty
+ \else
+ \fontspec[\udiss@title@fontfeats]%
+ {\udiss@title@font}%
+ \fi
+ \udiss@title@size
+ \color{\udiss@title@color}%
+ \udiss@title
+ \endgroup
+
+ \medskip
+
+ \ifudiss@subtitle
+ \begingroup
+ \udiss@subtitle@shape
+ \ifx\udiss@subtitle@font\empty
+ \else
+ \fontspec[\udiss@subtitle@fontfeats]%
+ {\udiss@subtitle@font}%
+ \fi
+ \udiss@subtitle@size
+ \color{\udiss@subtitle@color}%
+ \udiss@subtitle
+ \endgroup
+ \fi
+
+ \vfill
+
+ \ifudiss@blind
+ \else
+ \begingroup
+ \udiss@author@shape
+ \ifx\udiss@author@font\empty
+ \else
+ \fontspec[\udiss@author@fontfeats]%
+ {\udiss@author@font}%
+ \fi
+ \udiss@author@size
+ \color{\udiss@author@color}%
+ \udiss@author
+ \ifudiss@pronouns
+ \begingroup
+ \space
+ \addfontfeature{Scale={0.6}}%
+ \udiss@pronouns
+ \endgroup
+ \fi
+ \endgroup
+
+ \vspace{2em}%
+ \fi
+
+ \begingroup
+ \udiss@fulfilment@shape
+ \ifx\udiss@fulfilment@font\empty
+ \else
+ \fontspec[\udiss@fulfilment@fontfeats]%
+ {\udiss@fulfilment@font}%
+ \fi
+ \udiss@fulfilment@size
+ \color{\udiss@fulfilment@color}%
+ \udiss@fulfilment
+ \endgroup
+
+ \vfill
+
+ \begingroup
+ \udiss@uni@shape
+ \ifx\udiss@uni@font\empty
+ \else
+ \fontspec[\udiss@university@fontfeats]%
+ {\udiss@uni@font}%
+ \fi
+ \udiss@uni@size
+ \color{\udiss@uni@color}%
+ \udiss@university
+ \endgroup
+
+ \vspace{0.5em}%
+
+ \begingroup
+ \udiss@dept@shape
+ \ifx\udiss@dept@font\empty
+ \else
+ \fontspec[\udiss@dept@fontfeats]%
+ {\udiss@dept@font}%
+ \fi
+ \udiss@dept@size
+ \color{\udiss@dept@color}%
+ \udiss@department
+ \endgroup
+
+ \ifudiss@logo
+ \bigskip
+ \ifudiss@texlogo
+ \udiss@texlogo
+ \fi
+ \includegraphics[%
+ width = {%
+ \udiss@logo@width\linewidth
+ },%
+ height = {%
+ \udiss@logo@hght\textheight
+ }%
+ ]{%
+ \udiss@logo
+ }%
+ \fi
+ \end{center}
+ \ifudiss@ftitle
+ \end{minipage}%
+ }%
+ \fi
+
+ \newpage
+
+ \ifudiss@blind
+ \else
+ \ifudiss@free@culture
+ \thispagestyle{titlingpage}%
+ \vspace*{\stretch{1}}
+ \begin{quote}
+ \setlength{\parindent}{0pt}%
+ \begingroup
+ \begin{minipage}{\linewidth}
+ \bfseries
+ \udiss@title
+
+ \udiss@local@copyright\
+ ©
+ \udiss@copyrightable@years\
+ \udiss@author
+
+ \medskip
+ \noindent\hrule \linewidth 0.4pt\relax
+ \end{minipage}
+ \endgroup
+
+ \ifudiss@gfdl
+ Permission is granted to copy, distribute and/or
+ modify this document under the terms of the GNU
+ Free Documentation License, Version 1.3 or any
+ later version published by the Free Software
+ Foundation; with no Invariant Sections, no
+ Front-Cover Texts, and no Back-Cover Texts. A copy
+ of the license is included in the section entitled
+ \enquote{GNU Free Documentation License}.%
+ \fi
+ \ifudiss@ccbysa
+ \begin{minipage}{\linewidth}
+ \doclicenseThis
+ \end{minipage}
+ \fi
+ \vspace{\stretch{3}}
+ \end{quote}
+ \newpage
+ \fi
+ \fi
+
+ \tableofcontents*
+
+ \newpage
+
+ \ifudiss@blind
+ \else
+ \ifudiss@declaration
+ \thispagestyle{empty}%
+ \begin{center}%
+ {%
+ \LARGE\bfseries
+ \udiss@decllocal
+ }%
+ \end{center}%
+
+ \udiss@declaration
+ \fi
+ \fi
+
+ \newpage
+
+ \ifudiss@lot
+ \listoftables
+ \fi
+
+ \newpage
+
+ \ifudiss@lof
+ \listoffigures
+ \fi
+ \endgroup
+}%
+\ifudiss@blind
+\else
+ \ifudiss@gfdl
+ \AddToHook{enddocument}{%
+ \newpage
+ \begingroup
+ \pagestyle{plain}%
+ \addcontentsline{toc}%
+ {chapter}%
+ {GNU Free Documentation License}%
+ \input{gfdl-tex-1p3}%
+ \clearpage
+ \endgroup
+ }%
+ \fi
+\fi
+\endinput
+%%
+%% End of file `udiss.cls'.
diff --git a/Master/texmf-dist/tex/latex/ulthese/ulthese.cls b/Master/texmf-dist/tex/latex/ulthese/ulthese.cls
index 703a54d6c3a..eb32a214ace 100644
--- a/Master/texmf-dist/tex/latex/ulthese/ulthese.cls
+++ b/Master/texmf-dist/tex/latex/ulthese/ulthese.cls
@@ -8,46 +8,41 @@
%%
%% This is a generated file.
%%
-%% Copyright (C) 2017 Universite Laval
+%% Copyright (C) 2012-2024 Universite Laval
%%
%% This file may be distributed and/or modified under the conditions
%% of the LaTeX Project Public License, either version 1.3c of this
%% license or (at your option) any later version. The latest version
%% of this license is in:
%%
-%% http://www.latex-project.org/lppl.txt
+%% https://www.latex-project.org/lppl.txt
%%
%% and version 1.3c or later is part of all distributions of LaTeX
%% version 2006/05/20 or later.
%%
%% This work has the LPPL maintenance status `maintained'.
%%
-%% The Current Maintainer of this work is Universite Laval
-%% <ulthese-dev@bibl.ulaval.ca>.
+%% The Current Maintainer of this work is Vincent Goulet for
+%% Universite Laval <ulthese-dev@bibl.ulaval.ca>.
%%
-%% This work consists of the files ulthese.dtx and ulthese.ins and the
-%% derived files listed in the README.md file.
+%% This work consists of the files ulthese.dtx, ulthese.ins, and the
+%% derived files listed in the file README.md.
%%
-\NeedsTeXFormat{LaTeX2e}[2009/09/24]
+\NeedsTeXFormat{LaTeX2e}[2021/06/01]
\ProvidesClass{ulthese}%
- [2021/08/09 v5.3a Universite Laval thesis and memoir class]
-\RequirePackage{ifxetex}
+ [2024/07/02 v6.0 Thesis class for Universite Laval]
\newif\ifUL@babel \UL@babeltrue % charger babel?
\newif\ifUL@natbib \UL@natbibtrue % charger natbib?
\newif\ifUL@hyperref \UL@hyperreftrue % charger hyperref?
-\newif\ifUL@chapterbib \UL@chapterbibfalse % charger chapterbib?
-\newif\ifUL@sectionbib \UL@sectionbibfalse % option sectionbib de chapterbib?
-\newif\ifUL@isthesis % programme est une thèse?
-\newif\ifUL@iscotutelle \UL@iscotutellefalse % thèse en cotutelle?
+\newif\ifUL@isthesis % programme est une these?
+\newif\ifUL@iscotutelle \UL@iscotutellefalse % these en cotutelle?
\newif\ifUL@isexam \UL@isexamfalse % examen de doctorat?
-\newif\ifUL@isessay \UL@isessayfalse % essai de maîtrise?
+\newif\ifUL@isessay \UL@isessayfalse % essai de maitrise?
\newif\ifUL@isresearch \UL@isresearchfalse % projet de recherche?
\newif\ifUL@isworkterm \UL@isworktermfalse % rapport de stage?
\newif\ifUL@hassubtitle \UL@hassubtitlefalse % document a un sous-titre?
-\newif\ifUL@hastitlepage \UL@hastitlepagefalse % page titre utilisée?
+\newif\ifUL@hastitlepage \UL@hastitlepagefalse % page titre utilisee?
\DeclareOption{nonatbib}{\UL@natbibfalse}
-\DeclareOption{bibchapitre}{\UL@chapterbibtrue}
-\DeclareOption{bibsection}{\UL@chapterbibtrue\UL@sectionbibtrue}
\DeclareOption{nobabel}{\UL@babelfalse}
\DeclareOption{nohyperref}{\UL@hyperreffalse}
\newcommand*{\UL@ptsize}{}
@@ -90,10 +85,6 @@
\UL@isthesisfalse
\renewcommand*{\UL@typenum}{0}
\newcommand*{\UL@degree}{Ma\^itre en architecture (M.~Arch.)}}
-\DeclareOption{MA}{%
- \UL@isthesisfalse
- \renewcommand*{\UL@typenum}{0}
- \newcommand*{\UL@degree}{Ma\^itre \`es arts (M.A.)}}
\DeclareOption{LLM}{%
\UL@isthesisfalse
\renewcommand*{\UL@typenum}{0}
@@ -106,14 +97,10 @@
\UL@isthesisfalse
\renewcommand*{\UL@typenum}{0}
\newcommand*{\UL@degree}{Ma\^itre en musique (M.~Mus.)}}
-\DeclareOption{MPht}{%
- \UL@isthesisfalse
- \renewcommand*{\UL@typenum}{0}
- \newcommand*{\UL@degree}{Ma\^itre en physioth\'erapie (M.~Pht.)}}
-\DeclareOption{MSc}{%
+\DeclareOption{MPsEd}{%
\UL@isthesisfalse
\renewcommand*{\UL@typenum}{0}
- \newcommand*{\UL@degree}{Ma\^itre \`es sciences (M.~Sc.)}}
+ \newcommand*{\UL@degree}{Ma\^itre en psycho\'education (M.~Ps.~\'ed.)}}
\DeclareOption{MScGeogr}{%
\UL@isthesisfalse
\renewcommand*{\UL@typenum}{0}
@@ -122,10 +109,18 @@
\UL@isthesisfalse
\renewcommand*{\UL@typenum}{0}
\newcommand*{\UL@degree}{Ma\^itre en service social (M.~Serv.~soc.)}}
-\DeclareOption{MPsEd}{%
+\DeclareOption{MTravSoc}{%
\UL@isthesisfalse
\renewcommand*{\UL@typenum}{0}
- \newcommand*{\UL@degree}{Ma\^itre en psycho\'education (M.~Ps.~\'ed.)}}
+ \newcommand*{\UL@degree}{Ma\^itre en travail social (M.~Trav.~soc.)}}
+\DeclareOption{MA}{%
+ \UL@isthesisfalse
+ \renewcommand*{\UL@typenum}{0}
+ \newcommand*{\UL@degree}{Ma\^itre \`es arts (M.A.)}}
+\DeclareOption{MSc}{%
+ \UL@isthesisfalse
+ \renewcommand*{\UL@typenum}{0}
+ \newcommand*{\UL@degree}{Ma\^itre \`es sciences (M.~Sc.)}}
\DeclareOption{multifacultaire}{%
\ifUL@isthesis
\renewcommand*{\UL@typenum}{1}
@@ -221,32 +216,22 @@
\fi
\fi
\LoadClass[oneside]{memoir}
-\ifxetex
+\iftutex
+ \RequirePackage[babel=true]{microtype}
\RequirePackage{fontspec}
- \defaultfontfeatures{Ligatures=TeX}
\else
+ \RequirePackage[babel=true]{microtype}
+ \RequirePackage[utf8]{inputenc}
\RequirePackage[T1]{fontenc}
\fi
\ifUL@natbib
- \ifUL@sectionbib
- \PassOptionsToPackage{sectionbib}{natbib}
- \fi
\RequirePackage[round,semicolon,authoryear]{natbib}
\fi
-\ifUL@chapterbib
- \ifUL@sectionbib
- \ifUL@natbib\else
- \PassOptionsToPackage{sectionbib}{chapterbib}
- \fi
- \fi
- \RequirePackage{chapterbib}
-\fi
\ifUL@babel
\RequirePackage{babel}
\RequirePackage[autolanguage]{numprint}
\fi
\ifUL@hyperref
- \RequirePackage{etoolbox}
\AtEndPreamble{\RequirePackage{hyperref}}
\else
\AtBeginDocument{%
@@ -258,7 +243,6 @@
\PassOptionsToPackage{colorlinks,allcolors=ULlinkcolor}{hyperref}
\RequirePackage{graphicx}
\RequirePackage{xcolor}
-\RequirePackage{textcomp}
\AtBeginDocument{%
\@ifpackageloaded{geometry}{%
\ClassError{ulthese}{%
@@ -522,6 +506,3 @@
\parsep 6\p@ \@plus\p@}%
\item[]}{\endlist}
\setsecnumdepth{subsection}
-\endinput
-%%
-%% End of file `ulthese.cls'.
diff --git a/Master/texmf-dist/tex/latex/unbtex/unbtex.cls b/Master/texmf-dist/tex/latex/unbtex/unbtex.cls
index 39f277761d9..332fdce505a 100644
--- a/Master/texmf-dist/tex/latex/unbtex/unbtex.cls
+++ b/Master/texmf-dist/tex/latex/unbtex/unbtex.cls
@@ -1,7 +1,7 @@
%%
%% UnBTeX: A class for bachelor, master, and doctoral thesis at the
%% University of Brasilia (UnB), Brazil
-%% Version 1.5.1 2024/03/02
+%% Version 1.5.2 2024/07/04
%% Copyright (C) 2021-2024 by Henrique C. Ferreira <hcferreira@unb.br>
%%
%% This class file may be distributed and/or modified under the conditions
@@ -21,7 +21,7 @@
%%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{unbtex}[2024/03/02 v1.5.1 Modelo da Universidade de Brasília baseado em abnTeX2]
+\ProvidesClass{unbtex}[2024/07/04 v1.5.2 Modelo da Universidade de Brasília baseado em abnTeX2]
% ------------------------------------------------------------------------
% Opções para a classe
@@ -118,9 +118,20 @@
\setlength{\parindent}{3em} % Tamanho da indentação da primeira linha do parágrafo
\frenchspacing % Retira espaço extra entre as frases (após o ponto final)
\setlength{\parskip}{3pt plus 1pt minus 1pt} % Espaço entre parágrafos
+\pdfminorversion=7 % Configuração da versão do arquivo pdf produzido
+
+% Configurações das margens e cabeçalho
+\AtBeginDocument{
+\setlrmarginsandblock{3cm}{2cm}{*} % Margens esquerda e direita
+\setulmarginsandblock{3cm}{2cm}{*} % Margens superior e inferior
+\checkandfixthelayout[nearest] % Implementa as margens
+\pagestyle{myheadings} % Cabeçalho com linha e numeração da página
+}
+
+% Espaçamento para notas de rodapé
\setlength{\skip\footins}{20pt plus 2pt minus 2pt} % Espaço entre o texto e as notas de rodapé
\addtolength{\footnotesep}{2pt} % Espaço entre as notas de rodapé
-\pdfminorversion=7 % Configuração da versão do arquivo pdf produzido
+\renewcommand*{\footnoterule}{\kern-3pt \hrule width 5cm \kern 2.6pt} % Tamanho do traço superior (5cm)
% Ajusta espaço entre texto e figuras/tabelas
\setlength{\textfloatsep}{18pt plus 2pt minus 2pt} % Espaçamento entre texto e floats no topo/base da página
@@ -137,9 +148,6 @@
\renewcommand{\thefigure}{\thechapter.\arabic{figure}}\numberwithin{figure}{chapter}
\renewcommand{\thetable}{\thechapter.\arabic{table}}\numberwithin{table}{chapter}
-% Configuração do cabeçalho das páginas
-\pagestyle{myheadings} % Cabeçalho com linha e numeração da página
-
% Modifica o tamanho da fonte e espaçamento entre linhas no ambiente verbatim
\RequirePackage{fvextra}
\renewenvironment{verbatim}{\VerbatimEnvironment
@@ -385,16 +393,15 @@
\urlstyle{same}
}
% Gera as referências bibliográficas de acordo com as normas da ABNT
+\newcommand{\bibhang}[1]{\setlength{\bibindent}{#1}}
\IfStrEq{\bibsty}{alf}{% Estilo autor-data
-\newcommand{\recuo}{3em} % Indentação da lista de referências
-\RequirePackage[alf,recuo=\recuo,abnt-etal-list=0,abnt-etal-cite=3,abnt-emphasize=bf,bibjustif]{abntex2cite}
+\RequirePackage[alf,abnt-etal-list=0,abnt-etal-cite=3,abnt-emphasize=bf,bibjustif]{abntex2cite}
\renewcommand{\@biblabel}[1]{}%
\IfStrEq{\idioma}{brazil} % Seleciona o arquivo de estilo de citação
{\bibliographystyle{unbtexcite/unbtex-alf-pt}}{\bibliographystyle{unbtexcite/unbtex-alf-en}}
}{%
\IfStrEq{\bibsty}{num}{% Estilo numérico
-\newcommand{\recuo}{2.2em} % Aumente este valor se o número de referências for superior a 100
-\RequirePackage[num,recuo=\recuo,abnt-etal-list=0,abnt-emphasize=bf,bibjustif]{abntex2cite}
+\RequirePackage[num,abnt-etal-list=0,abnt-emphasize=bf,bibjustif]{abntex2cite}
\RequirePackage{cite} % Para ordenar, comprimir e colocar entre colchetes os números nas citações
\renewcommand{\@biblabel}[1]%
{%
@@ -408,7 +415,7 @@
{\setlength{\ABCIauxlen}{\minimumbiblabelwidth-\ABCIauxlen}}%
{\setlength{\ABCIauxlen}{0cm}}%
%{\biblabeltext\hspace{\ABCIauxlen}}%
-\parbox[t]{\recuo}{\raggedleft\biblabeltext\hspace{\ABCIauxlen}}%
+\parbox[t]{\bibindent}{\raggedleft\biblabeltext\hspace{\ABCIauxlen}}%
}}%
\renewcommand{\citeonline}[2][] % Redefine \citeonline como \cite
{\ifthenelse{\equal{#1}{}}{\cite{#2}}{\cite[#1]{#2}}}
@@ -465,19 +472,36 @@
indent=0pt,
entrynumberformat=\entrynumberwithprefix{\figurename},
dynnumwidth,
- %numsep=0em
]{tocline}{figure}
\DeclareTOCStyleEntry[
indent=0pt,
entrynumberformat=\entrynumberwithprefix{\tablename},
dynnumwidth,
- %numsep=0em
]{tocline}{table}
\newcommand\entrynumberwithprefix[2]{#1~#2\thinspace\hfill}
% ---
% ---
+% Citacao direta com mais de 3 linhas - ABNT NBR 10520/2002 - 5.3
+% Corrige tamanho do recuo do ambiente citacao do abntex2 para 4cm
+% ---
+\ifthenelse{\equal{\ABNTEXistwocolumn}{true}}{%
+ \setlength{\ABNTEXcitacaorecuo}{1.8cm}
+}{% else
+ \setlength{\ABNTEXcitacaorecuo}{4cm}
+}
+\renewenvironment*{citacao}[1][default]{%
+ \begin{adjustwidth}{\ABNTEXcitacaorecuo}{0mm}%
+ \ABNTEXfontereduzida%
+ \begin{SingleSpace}%
+ \ifthenelse{\not\equal{#1}{default}}{\itshape\selectlanguage{#1}}{}%
+}{%
+ \end{SingleSpace}%
+ \end{adjustwidth}}
+% ---
+
+% ---
% Define o texto dos rótulos de acordo com o idioma principal selecionado
% ---
\AtBeginDocument{
@@ -611,13 +635,14 @@
\renewcommand{\imprimircapa}{%
\hypersetup{pageanchor=false}
\setlrmargins{*}{*}{1} % Margens laterais iguais para a capa
-\checkandfixthelayout[nearest]
+\setulmarginsandblock{3cm}{2cm}{*}
+\checkandfixthelayout[fixed]
\begin{capa}%
\center
\AddToShipoutPicture*{\BackgroundPic}
\vspace*{7.5cm}
- {\LARGE{\sffamily{\bfseries\instituicaoi \\ \instituicaoii \\
- \abntex@ifnotempty{\instituicaoiii}{\instituicaoiii}}}\par}
+ {\LARGE\sffamily\bfseries\instituicaoi \\ \instituicaoii \\
+ \abntex@ifnotempty{\instituicaoiii}{\instituicaoiii}\par}
\vfill
\begin{center}
% Define o tamanho da fonte do título
@@ -641,7 +666,7 @@
% Reestabelece as margens
\setlrmarginsandblock{3cm}{2cm}{*}
\setulmarginsandblock{3cm}{2cm}{*}
-\checkandfixthelayout[fixed]
+\checkandfixthelayout[nearest]
\cleardoublepage
\hypersetup{pageanchor=true}
}
@@ -652,8 +677,7 @@
\put(0,0){%
\parbox[b][\paperheight]{\paperwidth}{%
\vfill
- \centering
- \includegraphics[width=\paperwidth,height=\paperheight,keepaspectratio]{capa_fundo.pdf}%
+ \centering \includegraphics[width=\paperwidth,height=\paperheight,keepaspectratio]{capa_fundo.pdf}%
\vfill
}
}
@@ -665,8 +689,8 @@
% ---
\renewcommand{\folhaderostocontent}{%
\begin{center}
- {\LARGE{\sffamily{\bfseries\instituicaoi \\ \instituicaoii \\
- \abntex@ifnotempty{\instituicaoiii}{\instituicaoiii}}}\par}
+ {\LARGE\sffamily\bfseries \instituicaoi \\ \instituicaoii \\
+ \abntex@ifnotempty{\instituicaoiii}{\instituicaoiii}\par}
\vfill\vfill
\begin{center}
@@ -712,7 +736,7 @@
\ifthenelse{\equal{\imprimirpublicacao}{}}{}{
\begin{OnehalfSpace}
{\noindent\sffamily\large REFERÊNCIA BIBLIOGRÁFICA}\par
-\noindent\MakeUppercase\autorisobrenome, \autorinome \ifthenelse{\equal{\autoriinome}{}}{.}{;~\MakeUppercase\autoriisobrenome, \autoriinome.} {\bfseries\StrDel{\imprimirtitulo}{\\ }}. \begin{otherlanguage*}{brazil}\imprimirtipotrabalho\ (\imprimircurso)\ifthenelse{\equal{\imprimirpublicacao}{}}{}{,~\imprimirpublicacao} -- \ifthenelse{\equal{\instituicaoiii}{}}{}{\instituicaoiii,~}\instituicaoii, \instituicaoi, \imprimirlocal, \thelastpage~p. \imprimirano.\end{otherlanguage*}
+\noindent\MakeUppercase\autorisobrenome, \autorinome \ifthenelse{\equal{\autoriinome}{}}{.}{;~\MakeUppercase\autoriisobrenome, \autoriinome.} {\bfseries\StrDel{\imprimirtitulo}{\\}}. \begin{otherlanguage*}{brazil}\imprimirtipotrabalho\ (\imprimircurso)\ifthenelse{\equal{\imprimirpublicacao}{}}{}{,~\imprimirpublicacao} -- \ifthenelse{\equal{\instituicaoiii}{}}{}{\instituicaoiii,~}\instituicaoii, \instituicaoi, \imprimirlocal, \thelastpage~p. \imprimirano.\end{otherlanguage*}
\end{OnehalfSpace}}
\IfInteger{\imprimircutter}{\setlength{\fboxsep}{10pt}}{\setlength{\fboxsep}{18pt}}
\vspace*{\fill}
@@ -724,7 +748,7 @@
\IfInteger{\imprimircutter}{\begin{tabular}{p{1.25cm} p{10.25cm}}}{} \cutter
\autorisobrenome, \autorinome. \\
\IfInteger{\imprimircutter}{\StrChar{\autorisobrenome}{1}\imprimircutter\StrChar{\imprimirtitulo}{1}[\SUBtemp]\MakeLowercase{\SUBtemp}}{} \cutter
-\hspace*{2em}\noindent \StrDel{\imprimirtitulo}{\\ } ~/ \begin{otherlanguage*}{brazil}{\autorinome\ \autorisobrenome; \ifthenelse{\equal{\autoriinome}{}}{}{\autoriinome\ \autoriisobrenome;} \MakeLowercase\orientname\ \orientnome\ \orientsobrenome \ifthenelse{\equal{\coorientnome}{}}{.}{;~\MakeLowercase\coorientname\ \coorientnome\ \coorientsobrenome.} \texttt{-{}-} \imprimirlocal, \imprimirano.}\end{otherlanguage*} \\ \cutter
+\hspace*{2em}\noindent \StrDel{\imprimirtitulo}{\\} ~/ \begin{otherlanguage*}{brazil}{\autorinome\ \autorisobrenome; \ifthenelse{\equal{\autoriinome}{}}{}{\autoriinome\ \autoriisobrenome;} \MakeLowercase\orientname\ \orientnome\ \orientsobrenome \ifthenelse{\equal{\coorientnome}{}}{.}{;~\MakeLowercase\coorientname\ \coorientnome\ \coorientsobrenome.} \texttt{-{}-} \imprimirlocal, \imprimirano.}\end{otherlanguage*} \\ \cutter
\hspace*{2em}\noindent \thelastpage~p. \\ \cutter
\\ \cutter
\hspace*{2em}\noindent\begin{otherlanguage*}{brazil}\imprimirtipotrabalho\ (\imprimircurso)\ \texttt{-{}-} \instituicaoi, \imprimirano.\end{otherlanguage*} \\ \cutter
@@ -742,18 +766,19 @@
% ---
% Imprime folha de aprovação
% ---
+\newcommand{\signlinewidth}[1]{\setlength{\ABNTEXsignwidth}{#1}}
\newcommand{\imprimirfolhadeaprovacao}{%
\begin{folhadeaprovacao}
\begin{center}
- {\Large{\sffamily{\bfseries\instituicaoi \\ \instituicaoii \\
- \abntex@ifnotempty{\instituicaoiii}{\instituicaoiii}}}\par}
+ {\Large\sffamily\bfseries\instituicaoi \\ \instituicaoii \\
+ \abntex@ifnotempty{\instituicaoiii}{\instituicaoiii}\par}
\vfill
\begin{center}
% Define o tamanho da fonte do título
- \autotitle[1]{\bfseries\StrDel{\imprimirtitulo}{\\ }}
+ \autotitle[1]{\bfseries\StrDel{\imprimirtitulo}{\\}}
\ifthenelse{\equal{\titleformat}{\large}}
- {\color{verdeunb}\Large\bfseries \StrDel{\imprimirtitulo}{\\ }\par}
- {\color{verdeunb}\titleformat\bfseries \StrDel{\imprimirtitulo}{\\ }\par}
+ {\color{verdeunb}\Large\bfseries \StrDel{\imprimirtitulo}{\\}\par}
+ {\color{verdeunb}\titleformat\bfseries \StrDel{\imprimirtitulo}{\\}\par}
\end{center}
\vfill
@@ -781,10 +806,6 @@
\abntex@ifnotempty{\membrodabancaivnome}{\assinatura{\textbf{\membrodabancaivnome} \\ \membrodabancaivfuncaonome}}
\abntex@ifnotempty{\membrodabancavnome}{\assinatura{\textbf{\membrodabancavnome} \\ \membrodabancavfuncaonome}}
}
-%\vfill
-% \begin{center}
-% {\sffamily\large\imprimirlocal \\ \imprimirano\par}
-% \end{center}
\end{center}
\end{folhadeaprovacao}
}
diff --git a/Master/texmf-dist/tex/latex/univie-ling/univie-ling-expose.cls b/Master/texmf-dist/tex/latex/univie-ling/univie-ling-expose.cls
index b31ae0a4f7d..495172ee0dd 100644
--- a/Master/texmf-dist/tex/latex/univie-ling/univie-ling-expose.cls
+++ b/Master/texmf-dist/tex/latex/univie-ling/univie-ling-expose.cls
@@ -33,7 +33,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\NeedsTeXFormat{LaTeX2e}[2022/06/01]
-\ProvidesPackage{univie-ling-expose}[2024/06/27 v.2.6 Univie Linguistic Exposes (JSp)]
+\ProvidesPackage{univie-ling-expose}[2024/09/28 v.2.9 Univie Linguistic Exposes (JSp)]
%% ============================================================
@@ -274,10 +274,10 @@
\NewDocumentCommand\weblink{mo}{%
\url{#1}%
\IfNoValueTF{#2}%
- {\ifthenelse{\isempty{\wlg@urldate}}{}{%
+ {\ifx\wlg@urldate\empty\else%
\ \urldate{\wlg@urldate}%
- }}%
- {\ \urldate{#2}}
+ \fi}%
+ {\ \urldate{#2}}%
}
}
@@ -687,7 +687,22 @@
% End of @uve@apa condition
\fi
-% End of @uve@biblatex condition
+\else% @uvt@biblatex condition FALSE
+
+% Some support for legacy bibtex
+\AtBeginDocument{%
+ \@ifundefined{bibhang}{}{%
+ \setlength{\bibhang}{\parindent}%
+ }%
+ \@ifundefined{bibfont}{}{%
+ \renewcommand{\bibfont}{\small}%
+ }%
+ \@ifundefined{bibsep}{}{%
+ \setlength\bibsep{0pt}%
+ }%
+}
+
+% End of @uvt@biblatex condition
\fi
%% =============================================================
diff --git a/Master/texmf-dist/tex/latex/univie-ling/univie-ling-handout.cls b/Master/texmf-dist/tex/latex/univie-ling/univie-ling-handout.cls
index 01abf2e31cb..d81cd6a27a1 100644
--- a/Master/texmf-dist/tex/latex/univie-ling/univie-ling-handout.cls
+++ b/Master/texmf-dist/tex/latex/univie-ling/univie-ling-handout.cls
@@ -35,7 +35,7 @@
\NeedsTeXFormat{LaTeX2e}[2022/06/01]
-\ProvidesClass{univie-ling-handout}[2024/06/27 v.2.6 Univie Ling handout class (JSp)]
+\ProvidesClass{univie-ling-handout}[2024/09/28 v.2.9 Univie Ling handout class (JSp)]
%% ============================================================
%% CLASS OPTIONS
@@ -867,7 +867,22 @@
\DeclarePrintbibliographyDefaults{title=\uvh@bibheading}
-% End of @uvh@biblatex condition
+\else% @uvt@biblatex condition FALSE
+
+% Some support for legacy bibtex
+\AtBeginDocument{%
+ \@ifundefined{bibhang}{}{%
+ \setlength{\bibhang}{\parindent}%
+ }%
+ \@ifundefined{bibfont}{}{%
+ \renewcommand{\bibfont}{\small}%
+ }%
+ \@ifundefined{bibsep}{}{%
+ \setlength\bibsep{0pt}%
+ }%
+}
+
+% End of @uvt@biblatex condition
\fi
% Smaller
@@ -933,10 +948,10 @@
\NewDocumentCommand\weblink{mo}{%
\url{#1}%
\IfNoValueTF{#2}%
- {\ifthenelse{\isempty{\wlg@urldate}}{}{%
+ {\ifx\wlg@urldate\empty\else%
\ \urldate{\wlg@urldate}%
- }}%
- {\ \urldate{#2}}
+ \fi}%
+ {\ \urldate{#2}}%
}
}
diff --git a/Master/texmf-dist/tex/latex/univie-ling/univie-ling-paper.cls b/Master/texmf-dist/tex/latex/univie-ling/univie-ling-paper.cls
index 88ec71a6fae..51690011986 100644
--- a/Master/texmf-dist/tex/latex/univie-ling/univie-ling-paper.cls
+++ b/Master/texmf-dist/tex/latex/univie-ling/univie-ling-paper.cls
@@ -32,7 +32,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\NeedsTeXFormat{LaTeX2e}[2022/06/01]
-\ProvidesPackage{univie-ling-paper}[2024/06/27 v.2.6 Univie Linguistic Papers (JSp)]
+\ProvidesPackage{univie-ling-paper}[2024/09/28 v.2.9 Univie Linguistic Papers (JSp)]
%% ============================================================
@@ -296,10 +296,10 @@ This includes all drawings, sketches, graphics and internet sources.}
\NewDocumentCommand\weblink{mo}{%
\url{#1}%
\IfNoValueTF{#2}%
- {\ifthenelse{\isempty{\wlg@urldate}}{}{%
+ {\ifx\wlg@urldate\empty\else%
\ \urldate{\wlg@urldate}%
- }}%
- {\ \urldate{#2}}
+ \fi}%
+ {\ \urldate{#2}}%
}
}
@@ -845,7 +845,22 @@ This includes all drawings, sketches, graphics and internet sources.}
% End of @uvp@apa condition
\fi
-% End of @uvp@biblatex condition
+\else% @uvt@biblatex condition FALSE
+
+% Some support for legacy bibtex
+\AtBeginDocument{%
+ \@ifundefined{bibhang}{}{%
+ \setlength{\bibhang}{\parindent}%
+ }%
+ \@ifundefined{bibfont}{}{%
+ \renewcommand{\bibfont}{\small}%
+ }%
+ \@ifundefined{bibsep}{}{%
+ \setlength\bibsep{0pt}%
+ }%
+}
+
+% End of @uvt@biblatex condition
\fi
%% =============================================================
diff --git a/Master/texmf-dist/tex/latex/univie-ling/univie-ling-poster.cls b/Master/texmf-dist/tex/latex/univie-ling/univie-ling-poster.cls
index 9a354e25c7f..780e98bc832 100644
--- a/Master/texmf-dist/tex/latex/univie-ling/univie-ling-poster.cls
+++ b/Master/texmf-dist/tex/latex/univie-ling/univie-ling-poster.cls
@@ -34,7 +34,7 @@
\NeedsTeXFormat{LaTeX2e}[2022/06/01]
-\ProvidesClass{univie-ling-poster}[2024/06/27 v.2.6 Univie Ling poster class (JSp)]
+\ProvidesClass{univie-ling-poster}[2024/09/28 v.2.9 Univie Ling poster class (JSp)]
%% ============================================================
%% CLASS OPTIONS
@@ -909,10 +909,10 @@
\NewDocumentCommand\weblink{mo}{%
\url{#1}%
\IfNoValueTF{#2}%
- {\ifthenelse{\isempty{\wlg@urldate}}{}{%
+ {\ifx\wlg@urldate\empty\else%
\ \urldate{\wlg@urldate}%
- }}%
- {\ \urldate{#2}}
+ \fi}%
+ {\ \urldate{#2}}%
}
}
diff --git a/Master/texmf-dist/tex/latex/univie-ling/univie-ling-thesis.cls b/Master/texmf-dist/tex/latex/univie-ling/univie-ling-thesis.cls
index 4813af3abc9..82dae78b030 100644
--- a/Master/texmf-dist/tex/latex/univie-ling/univie-ling-thesis.cls
+++ b/Master/texmf-dist/tex/latex/univie-ling/univie-ling-thesis.cls
@@ -33,7 +33,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\NeedsTeXFormat{LaTeX2e}[2022/06/01]
-\ProvidesPackage{univie-ling-thesis}[2024/06/27 v.2.6 Univie Linguistic Theses (JSp)]
+\ProvidesPackage{univie-ling-thesis}[2024/09/28 v.2.9 Univie Linguistic Theses (JSp)]
%% ============================================================
@@ -55,6 +55,7 @@
\newif\if@uvt@psfonts\@uvt@psfontstrue
\newif\if@uvt@refsp\@uvt@refsptrue
\newif\if@uvt@usefontenc\@uvt@usefontenctrue
+\newif\if@uvt@titlepage\@uvt@titlepagetrue
\def\uvt@fontenc{T1}
% Define keys and values
@@ -155,6 +156,10 @@
{ \@uvt@draftmarktrue
\@uvt@draftmarkfptrue
},
+ % titlepage=<true|false>
+ % Output titlepage
+ titlepage.legacy_if_set:n = @uvt@titlepage,
+ titlepage.usage:n = preamble,
% no val equals to true
draftmark .default:n = {true},
% fonts=<ps|otf|none>
@@ -241,33 +246,36 @@ This includes all drawings, sketches, graphics and internet sources.}
%% FONTS AND EMPHASIZING:
%% ============================================================
+\def\uvt@titlesans{\sffamily}
+
\if@uvt@psfonts
\RequirePackage[T1]{fontenc}
\if@uvt@usefontenc
\RequirePackage[\uvt@fontenc]{fontenc}
\fi
-
- % Palatino
+ % Serif: Palatino
\RequirePackage[osf]{mathpazo}
-
- % Arial or Helvetica
- \IfFileExists{uarial.sty}{%
- \RequirePackage{uarial}
- }{%
- \RequirePackage{helvet}
- }
-
- % Source Code Pro (Courier)
+ % Sans: Source Sans Pro Light
+ \RequirePackage[semibold]{sourcesanspro}
+ % Mono: Source Code Pro
\RequirePackage[scale=.93]{sourcecodepro}
+ % Lighter Sans for title page
+ \def\uvt@titlesans{\def\mdseries@sf{l}\sffamily}
\fi
\if@uvt@otffonts
\RequirePackage{fontspec}
- \setmainfont{Palatino}
- \setsansfont{Arial}
- \setmonofont{SourceCodePro}
+ \setmainfont{TeX Gyre Pagella}
+ % Sans: Source Sans Pro Light
+ \RequirePackage[semibold]{sourcesanspro}
+ % Mono: Source Code Pro
+ \RequirePackage[scale=.93]{sourcecodepro}
+ % Lighter Sans for title page
+ \def\uvt@titlesans{\sourcesansprolight}
\fi
+
+
% Hyperlinks
\RequirePackage{url}
\newcommand{\urlprefix}{}
@@ -288,10 +296,10 @@ This includes all drawings, sketches, graphics and internet sources.}
\NewDocumentCommand\weblink{mo}{%
\url{#1}%
\IfNoValueTF{#2}%
- {\ifthenelse{\isempty{\wlg@urldate}}{}{%
+ {\ifx\wlg@urldate\empty\else%
\ \urldate{\wlg@urldate}%
- }}%
- {\ \urldate{#2}}
+ \fi}%
+ {\ \urldate{#2}}%
}
}
@@ -299,14 +307,14 @@ This includes all drawings, sketches, graphics and internet sources.}
\def\slash{/\penalty\exhyphenpenalty\hskip\z@skip}
% Font settings
-\newkomafont{thesistype}{\fontsize{24}{26pt}\bfseries\sffamily}
-\setkomafont{title}{\fontsize{18}{20pt}\sffamily}
-\setkomafont{author}{\fontsize{18}{20pt}\large\sffamily}
-\setkomafont{date}{\normalfont\fontsize{11}{13pt}\mdseries\sffamily}
-\newkomafont{degree}{\fontsize{12}{14pt}\sffamily}
-\newkomafont{baende}{\normalfont\fontsize{12}{14pt}\mdseries\sffamily}
-\newkomafont{tpcaption}{\fontsize{11}{13pt}\sffamily}
-\newkomafont{codes}{\fontsize{10}{12pt}\sffamily}
+\newkomafont{thesistype}{\fontsize{24}{26pt}\bfseries\uvt@titlesans}
+\setkomafont{title}{\fontsize{18}{20pt}\uvt@titlesans}
+\setkomafont{author}{\fontsize{18}{20pt}\large\uvt@titlesans}
+\setkomafont{date}{\normalfont\fontsize{11}{13pt}\mdseries\uvt@titlesans}
+\newkomafont{degree}{\fontsize{12}{14pt}\uvt@titlesans}
+\newkomafont{baende}{\normalfont\fontsize{12}{14pt}\mdseries\uvt@titlesans}
+\newkomafont{tpcaption}{\fontsize{11}{13pt}\uvt@titlesans}
+\newkomafont{codes}{\fontsize{10}{12pt}\uvt@titlesans}
%% ============================================================
@@ -384,35 +392,35 @@ This includes all drawings, sketches, graphics and internet sources.}
\def\thesistype@bachelor{Bachelorarbeit}
\def\thesistype@bachelor@en{Bachelor's Thesis}
\def\dirtype@bachelor{Studienrichtung}
-\def\dirtype@bachelor@en{degree programme}
+\def\dirtype@bachelor@en{Degree programme}
\def\degree@bachelor{Bachelor of Arts (BA)}
\def\degree@bachelor@f{\degree@bachelor}
% master
\def\thesistype@master{Masterarbeit}
\def\thesistype@master@en{Master's Thesis}
\def\dirtype@master{Studienrichtung}
-\def\dirtype@master@en{degree programme}
+\def\dirtype@master@en{Degree programme}
\def\degree@master{Master of Arts (MA)}
\def\degree@master@f{\degree@master}
% magister
\def\thesistype@magister{Magisterarbeit}
\def\thesistype@magister@en{Magister Thesis}
\def\dirtype@magister{Studienrichtung}
-\def\dirtype@magister@en{degree programme}
+\def\dirtype@magister@en{Degree programme}
\def\degree@magister{Magister der Philosophie (Mag.\,Phil.)}
\def\degree@magister@f{Magistra der Philosophie (Mag.\,Phil.)}
% diplom
\def\thesistype@diplom{Diplomarbeit}
\def\thesistype@diplom@en{Diploma Thesis}
\def\dirtype@diplom{Studienrichtung}
-\def\dirtype@diplom@en{degree programme}
+\def\dirtype@diplom@en{Degree programme}
\def\degree@diplom{Magister der Philosophie (Mag.\,Phil.)}
\def\degree@diplom@f{Magistra der Philosophie (Mag.\,Phil.)}
% diss
\def\thesistype@diss{Dissertation}
\def\thesistype@diss@en{Doctoral Thesis}
\def\dirtype@diss{Dissertationsgebiet}
-\def\dirtype@diss@en{field of study}
+\def\dirtype@diss@en{Field of study}
\def\degree@diss{Doktor der Philosophie (Dr.\,phil.)}
\def\degree@diss@f{Doktorin der Philosophie (Dr.\,phil.)}
@@ -474,7 +482,10 @@ This includes all drawings, sketches, graphics and internet sources.}
% We need graphicx for the logo
\RequirePackage{graphicx}
+\def\uvt@titlesep{\,|\,}
+
\renewcommand*\maketitle[1][1]{%
+ \if@uvt@titlepage
\newgeometry{top=2cm,bottom=2.5cm,left=2.5cm,right=2cm}
\expandafter\ifnum \csname scr@v@3.12\endcsname>\scr@compatibility\relax
\else
@@ -527,27 +538,27 @@ This includes all drawings, sketches, graphics and internet sources.}
\renewcommand*{\@makefnmark}{\rlap\@oldmakefnmark}%
\setparsizes{\z@}{\z@}{\z@\@plus 1fil}\par@updaterelative
\begin{flushright}
- \includegraphics[width=6cm]{univielogo-sw}
+ \includegraphics[width=6cm]{univielogo}
\end{flushright}
\vspace{2\baselineskip}
\begin{center}
- {\usekomafont{thesistype}\MakeUppercase{\@thesistype\,/\,\hskip\z@skip\mbox{\@thesistype@en}}\par}
+ {\usekomafont{thesistype}\MakeUppercase{\@thesistype\uvt@titlesep\hskip\z@skip\mbox{\@thesistype@en}}\par}
\end{center}
\vspace{2\baselineskip}
\begin{center}
- {\usekomafont{tpcaption}Titel der \@thesistype\,/\,Title of the \@thesistype@en\par}
+ {\usekomafont{tpcaption}Titel\uvt@titlesep Title\par}
{\ifx\@title\@empty\else
- \usekomafont{title}{\enquote{\@title%
- \ifx\@subtitle\@empty\else\linebreak\@subtitle\fi}\par}%
+ \usekomafont{title}{\@title%
+ \ifx\@subtitle\@empty\else\linebreak\@subtitle\fi\par}%
\fi
}%
{\ifx\@volume\@empty\else%
- \vskip 1em\usekomafont{baende}{Band \@volume\ von \@volumes\ B\"anden\,/\,volume \@volume\ of \@volumes\ volumes}%
+ \vskip 1em\usekomafont{baende}{Band \@volume\ von \@volumes\ B\"anden\uvt@titlesep volume \@volume\ of \@volumes\ volumes}%
\fi%
}%
\vskip 2em
{%
- {\usekomafont{tpcaption}verfasst von\,/\,submitted by\par}
+ {\usekomafont{tpcaption}verfasst von\,\uvt@titlesep\uvt@titlesep submitted by\par}
\usekomafont{author}{%
\lineskip 0.75em%
\begin{tabular}[t]{c}
@@ -556,21 +567,21 @@ This includes all drawings, sketches, graphics and internet sources.}
}%
}%
\vskip 2em
- {\usekomafont{tpcaption}angestrebter akademischer Grad\,/\,in partial fulfilment of the requirements for the degree of\par}
+ {\usekomafont{tpcaption}angestrebter akademischer Grad\uvt@titlesep in partial fulfilment of the requirements for the degree of\par}
\usekomafont{degree}{\@degree}
\end{center}\par
\vfill
- {\usekomafont{date}{Wien, \the\year\,/\,Vienna, \the\year\par}}%
+ {\usekomafont{date}{Wien, \the\year\uvt@titlesep Vienna, \the\year\par}}%
\vskip 2em
\usekomafont{codes}{%
\begin{tabular}[t]{@{}>{\raggedright}p{0.4\columnwidth}>{\raggedright}p{0.1\columnwidth}>{\raggedright}p{0.4\columnwidth}}
- Studienkennzahl lt. Studienblatt/\newline degree programme code as it appears on the student record sheet: & & \@studienkennzahl\tabularnewline
+ Studienkennzahl lt. Studienblatt\uvt@titlesep Degree programme code as it appears on the student record sheet: & & \@studienkennzahl\tabularnewline
\noalign{\vskip6pt}
- \@dirtype\ lt. Studienblatt\slash\newline \@dirtype@en\ as it appears on the student record sheet: & & \@studienrichtung\tabularnewline
+ \@dirtype\ lt. Studienblatt\uvt@titlesep\@dirtype@en\ as it appears on the student record sheet: & & \@studienrichtung\tabularnewline
\noalign{\vskip6pt}
- Betreut von\,/\,Supervisor: & & \@supervisor\tabularnewline%
+ Betreut von\uvt@titlesep Supervisor: & & \@supervisor\tabularnewline%
\noalign{\vskip6pt}
- \ifx\@cosupervisor\@empty\else Mitbetreut von\,/\,Co-Supervisor: & & \@cosupervisor\fi
+ \ifx\@cosupervisor\@empty\else Mitbetreut von\uvt@titlesep Co-Supervisor: & & \@cosupervisor\fi
\end{tabular}\par
}
\par
@@ -591,7 +602,10 @@ This includes all drawings, sketches, graphics and internet sources.}
\cleardoubleemptypage
\fi
\ifx\titlepage@restore\relax\else\clearpage\titlepage@restore\fi
- \end{titlepage}
+ \end{titlepage}
+ \else% \if@uvt@titlepage
+ \setcounter{page}{2}%
+ \fi
\setcounter{footnote}{0}%
\expandafter\ifnum \csname scr@v@3.12\endcsname>\scr@compatibility\relax
\let\thanks\relax
@@ -822,6 +836,21 @@ This includes all drawings, sketches, graphics and internet sources.}
% End of @uvt@apa condition
\fi
+\else% @uvt@biblatex condition FALSE
+
+% Some support for legacy bibtex
+\AtBeginDocument{%
+ \@ifundefined{bibhang}{}{%
+ \setlength{\bibhang}{\parindent}%
+ }%
+ \@ifundefined{bibfont}{}{%
+ \renewcommand{\bibfont}{\small}%
+ }%
+ \@ifundefined{bibsep}{}{%
+ \setlength\bibsep{0pt}%
+ }%
+}
+
% End of @uvt@biblatex condition
\fi
diff --git a/Master/texmf-dist/tex/latex/univie-ling/univie-ling-wlg.cls b/Master/texmf-dist/tex/latex/univie-ling/univie-ling-wlg.cls
index e85daaabe05..7c32f39b478 100644
--- a/Master/texmf-dist/tex/latex/univie-ling/univie-ling-wlg.cls
+++ b/Master/texmf-dist/tex/latex/univie-ling/univie-ling-wlg.cls
@@ -34,7 +34,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\NeedsTeXFormat{LaTeX2e}[2022/06/01]
-\ProvidesPackage{univie-ling-wlg}[2024/06/27 v.2.6 Univie WLG journal layout (JSp)]
+\ProvidesPackage{univie-ling-wlg}[2024/09/28 v.2.9 Univie WLG journal layout (JSp)]
%% ============================================================
@@ -225,10 +225,10 @@
\NewDocumentCommand\weblink{mo}{%
\url{#1}%
\IfNoValueTF{#2}%
- {\ifthenelse{\isempty{\wlg@urldate}}{}{%
+ {\ifx\wlg@urldate\empty\else%
\ \urldate{\wlg@urldate}%
- }}%
- {\ \urldate{#2}}
+ \fi}%
+ {\ \urldate{#2}}%
}
}
@@ -431,10 +431,15 @@
\if@wlg@specialprint\else
\RequirePackage{etoc}
\etocstandardlines
+ \etocsetstyle{part}
+ {}
+ {\vspace{12pt}\normalsize\bfseries\rmfamily}
+ {\etocnumber. \etocname{}\par\vspace{10pt}}
+ {}
\etocsetstyle{chapter}
{}
{\normalsize\mdseries\rmfamily}
- {\etocname{}\dotfill\etocpage\par\vspace{12pt}}
+ {\etocname{}\dotfill\etocpage\par\vspace{10pt}}
{}
\setcounter{tocdepth}{0}
\fi
@@ -461,8 +466,7 @@
\newcommand*\frontmatter{%
\if@twoside\cleardoubleoddpage\else\clearpage\fi
\@wlg@mainmatterfalse\@wlg@frontmattertrue\pagenumbering{roman}%
- \edef\computelastpage{%
- \romannumeral\numexpr\getpagerefnumber{LastFrontPage}-1\relax}%
+ \def\computelastpage{\pageref{TotPages}}%
\edef\startpageref{%
\romannumeral\thestartpage\relax}%
}
@@ -595,6 +599,9 @@
\fi
\if@wlg@titlepage
\@maketitlepage[#1]%
+ \if@wlg@mainmatter
+ \pagenumbering{arabic}
+ \fi
\fi
\if@wlg@startpageset\else
\setcounter{page}{\thestartpage}
@@ -633,6 +640,7 @@
\thispagestyle{\titlepagestyle}\@thanks
\endgroup
\setcounter{footnote}{0}%
+ \setcounter{page}{\thestartpage}%
\global\let\@cauthor\@empty
\global\let\@thanks\@empty
\gdef\@ccauthor{\translate{corrauthor}}
@@ -672,7 +680,7 @@
\newcommand{\@maketitlepage}[1][1]{%
\if@wlg@titlepageneeded
\begin{titlepage}
- \pagenumbering{alph}
+ \pagenumbering{roman}
\thispagestyle{empty}%
\setcounter{page}{%
#1%
@@ -876,7 +884,9 @@
\end{flushright}%
\par
\vskip 2em
- \pagenumbering{arabic}
+ \if@wlg@mainmatter
+ \pagenumbering{arabic}
+ \fi
}%
% Rewrite \include for local LastPage counter
@@ -986,6 +996,9 @@
% (serifs)
\setkomafont{sectioning}{\normalfont\normalcolor\bfseries}
+% empty part pages
+\AddToHook{cmd/scr@startpart/before}{\cleardoublepage\thispagestyle{empty}}
+
% Abstract
\renewenvironment{abstract}{%
\addsec*{\hspace*{2.4em}Abstract}
@@ -1043,6 +1056,8 @@
\if@wlg@covington
\RequirePackage{covington}
\renewcommand{\p@equation}[1]{(#1)}
+ \setlength\reflistindent{\parindent}
+ \setlength\reflistparsep{0pt}
\fi
@@ -1083,8 +1098,13 @@
\AtBeginDocument{%
\@ifundefined{bibhang}{}{%
\setlength{\bibhang}{\parindent}%
+ }%
+ \@ifundefined{bibfont}{}{%
\renewcommand{\bibfont}{\small}%
}%
+ \@ifundefined{bibsep}{}{%
+ \setlength\bibsep{0pt}%
+ }%
}
%% =============================================================
diff --git a/Master/texmf-dist/tex/latex/univie-ling/univie-ling.bbx b/Master/texmf-dist/tex/latex/univie-ling/univie-ling.bbx
index 43b942d15cf..78f5ac46459 100644
--- a/Master/texmf-dist/tex/latex/univie-ling/univie-ling.bbx
+++ b/Master/texmf-dist/tex/latex/univie-ling/univie-ling.bbx
@@ -38,7 +38,7 @@
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesFile{univie-ling.bbx}[2024/06/27 v.2.6 biblatex bibliography style]
+\ProvidesFile{univie-ling.bbx}[2024/09/28 v.2.9 biblatex bibliography style]
% Load base style (authoryear-comp)
\RequireBibliographyStyle{authoryear-comp}
@@ -75,9 +75,14 @@
% Option "issueeditor": Output journal issue editor (false by default)
\newtoggle{issueeditor}
-\DeclareBibliographyOption{issueeditor}[false]{%
+\DeclareBibliographyOption{issueeditor}[true]{%
\settoggle{issueeditor}{#1}}
+% Option "annotations": Output annotations (false by default)
+\newtoggle{annotations}
+\DeclareBibliographyOption{annotations}[true]{%
+ \settoggle{annotations}{#1}}
+
%
% NAME formatting (general)
%
@@ -518,6 +523,23 @@
\usebibmacro{date}%
\newunit}
+% Vertical separation for annotations
+\newlength\annotsep
+\setlength\annotsep{3pt}
+\newcommand*{\annotationdelim}{\adddot\par\setunit{}\nobreak}
+\AtEndOfPackage{%
+ \iftoggle{annotations}
+ {\setlength\bibparsep{\annotsep}}
+ {}%
+}
+
+\renewbibmacro*{annotation}{%
+ \iffieldundef{annotation}
+ {\printfile[annotation]{
+ \bibannotationprefix\thefield{entrykey}.tex}}%
+ {\printfield{annotation}}%
+}
+
\renewbibmacro*{labeltitle}{%
\iffieldundef{label}
{\iffieldundef{shorttitle}
@@ -620,6 +642,9 @@
% no pp. prefix
\DeclareFieldFormat{pages}{#1}
+% Add delimiter
+\DeclareFieldFormat{annotation}{\annotationdelim #1}
+
\DeclareFieldFormat{doi}{%
\ifhyperref
{\href{https://doi.org/#1}{\nolinkurl{https://doi.org/#1}}}
@@ -664,6 +689,9 @@
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
+ \iftoggle{annotations}
+ {\usebibmacro{annotation}}
+ {}%
\usebibmacro{finentry}}
\DeclareBibliographyDriver{book}{%
@@ -714,6 +742,9 @@
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
+ \iftoggle{annotations}
+ {\usebibmacro{annotation}}
+ {}%
\usebibmacro{finentry}}
\DeclareBibliographyAlias{collection}{book}
@@ -771,6 +802,9 @@
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
+ \iftoggle{annotations}
+ {\usebibmacro{annotation}}
+ {}%
\usebibmacro{finentry}}
\DeclareBibliographyDriver{inbook}{%
@@ -829,6 +863,9 @@
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
+ \iftoggle{annotations}
+ {\usebibmacro{annotation}}
+ {}%
\usebibmacro{finentry}}
\DeclareBibliographyDriver{thesis}{%
@@ -864,6 +901,9 @@
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
+ \iftoggle{annotations}
+ {\usebibmacro{annotation}}
+ {}%
\usebibmacro{finentry}}
\DeclareBibliographyDriver{unpublished}{%
@@ -895,6 +935,9 @@
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
+ \iftoggle{annotations}
+ {\usebibmacro{annotation}}
+ {}%
\usebibmacro{finentry}}
\DeclareBibliographyDriver{periodical}{%
@@ -924,6 +967,9 @@
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
+ \iftoggle{annotations}
+ {\usebibmacro{annotation}}
+ {}%
\usebibmacro{finentry}}
\endinput
diff --git a/Master/texmf-dist/tex/latex/univie-ling/univie-ling.cbx b/Master/texmf-dist/tex/latex/univie-ling/univie-ling.cbx
index 30064c8f911..9cf6707ff63 100644
--- a/Master/texmf-dist/tex/latex/univie-ling/univie-ling.cbx
+++ b/Master/texmf-dist/tex/latex/univie-ling/univie-ling.cbx
@@ -36,7 +36,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesFile{univie-ling.cbx}[2024/06/27 v.2.6 biblatex citation style]
+\ProvidesFile{univie-ling.cbx}[2024/09/28 v.2.9 biblatex citation style]
\RequireCitationStyle{authoryear-comp}
diff --git a/Master/texmf-dist/tex/latex/ut-thesis/ut-thesis.cls b/Master/texmf-dist/tex/latex/ut-thesis/ut-thesis.cls
index 07ca4382793..5c33490cbaa 100644
--- a/Master/texmf-dist/tex/latex/ut-thesis/ut-thesis.cls
+++ b/Master/texmf-dist/tex/latex/ut-thesis/ut-thesis.cls
@@ -13,8 +13,8 @@
%% [https://www.sgs.utoronto.ca/academic-progress/program-completion/formatting]
%%
%% Copyright (c) 1998-2013 Francois Pitt <fpitt@cs.utoronto.ca>,
-%% 2020-2021 Jesse Knight <jesse.knight@mail.utoronto.ca>
-%% last updated at 23:30 (EST) on Tue 20 July 2021
+%% 2020-2024 Jesse Knight <jesse.x.knight@protonmail.com>
+%% last updated at 09:00 (BST) on Fri 26 July 2024
%%
%% This work may be distributed and/or modified under the conditions of
%% the LaTeX Project Public Licence, either version 1.3c of this licence
@@ -30,7 +30,7 @@
%% This work has the LPPL maintenance status "maintained".
%%
%% The Current Maintainer of this work is
-%% Jesse Knight <jesse.knight@mail.utoronto.ca>.
+%% Jesse Knight <jesse.x.knight@protonmail.com>.
%%
%% This work consists of the files:
%% - README
@@ -39,19 +39,20 @@
%% - ut-thesis.pdf (derived user manual)
%% - ut-thesis.cls (derived class file)
%%
-%% To generate ut-thesis.cls (class file), run: pdflatex ut-thesis.ins
-%% To generate ut-thesis.pdf (documentation), run: pdflatex ut-thesis.dtx
-%% To use the class, make ut-thesis.cls visible to your LaTeX distribution,
-%% by placing ut-thesis.cls either in your working directory,
-%% or in your texmf tree, perhaps: $texmf/tex/latex/ut-thesis/ut-thesis.cls
-%% and the documentation: $texmf/doc/latex/ut-thesis/ut-thesis.pdf
+%% Install ut-thesis from your favourite LaTeX distribution.
+%% Alternatively, or to use the latest version:
+%% - generate ut-thesis.cls (class file) using: pdflatex ut-thesis.ins
+%% and copy to: $texmf/tex/latex/ut-thesis/ut-thesis.cls
+%% - generate ut-thesis.pdf (documentation) using: pdflatex ut-thesis.dtx
+%% and copy to: $texmf/doc/latex/ut-thesis/ut-thesis.pdf
+%% or simply copy ut-thesis.cls to your working directory.
%%
%% See version history on GitHub:
%% [https://github.com/jessexknight/ut-thesis]
%%
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesClass{ut-thesis}
-[2023/02/08 v3.1.7 University of Toronto thesis class]
+[2024/07/26 v3.1.8 University of Toronto thesis class]
\newif\ifmargins@equal
\newlength{\margin@base}
\newlength{\margin@offset}
diff --git a/Master/texmf-dist/tex/latex/venturis/t1yvt.fd b/Master/texmf-dist/tex/latex/venturis/t1yvt.fd
deleted file mode 100644
index ad6759b0195..00000000000
--- a/Master/texmf-dist/tex/latex/venturis/t1yvt.fd
+++ /dev/null
@@ -1,97 +0,0 @@
-%Filename: t1yvt.fd
-%Created by: tex yvt-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{t1yvt.fd}
- [2010/07/03 Fontinst v1.933 font definitions for T1/yvt.]
-
-\DeclareFontFamily{T1}{yvt}{}
-
-\DeclareFontShape{T1}{yvt}{m}{n}{
- <-> yvtr8t
-}{}
-
-\DeclareFontShape{T1}{yvt}{m}{sc}{
- <-> yvtrc8t
-}{}
-
-\DeclareFontShape{T1}{yvt}{m}{si}{
- <-> yvtrci8t
-}{}
-
-\DeclareFontShape{T1}{yvt}{m}{it}{
- <-> yvtri8t
-}{}
-
-\DeclareFontShape{T1}{yvt}{b}{n}{
- <-> yvtb8t
-}{}
-
-\DeclareFontShape{T1}{yvt}{b}{sc}{
- <-> yvtbc8t
-}{}
-
-\DeclareFontShape{T1}{yvt}{b}{si}{
- <-> yvtbci8t
-}{}
-
-\DeclareFontShape{T1}{yvt}{b}{it}{
- <-> yvtbi8t
-}{}
-
-\DeclareFontShape{T1}{yvt}{eb}{n}{
- <-> yvth8t
-}{}
-
-\DeclareFontShape{T1}{yvt}{eb}{it}{
- <-> yvthi8t
-}{}
-
-\DeclareFontShape{T1}{yvt}{mc}{n}{
- <-> yvtr8tc
-}{}
-
-\DeclareFontShape{T1}{yvt}{mc}{sc}{
- <-> yvtrc8tc
-}{}
-
-\DeclareFontShape{T1}{yvt}{mc}{si}{
- <-> yvtrci8tc
-}{}
-
-\DeclareFontShape{T1}{yvt}{mc}{it}{
- <-> yvtri8tc
-}{}
-
-\DeclareFontShape{T1}{yvt}{bc}{n}{
- <-> yvtb8tc
-}{}
-
-\DeclareFontShape{T1}{yvt}{bc}{sc}{
- <-> yvtbc8tc
-}{}
-
-\DeclareFontShape{T1}{yvt}{bc}{si}{
- <-> yvtbci8tc
-}{}
-
-\DeclareFontShape{T1}{yvt}{bc}{it}{
- <-> yvtbi8tc
-}{}
-
-\DeclareFontShape{T1}{yvt}{m}{sl}{<->ssub * yvt/m/it}{}
-\DeclareFontShape{T1}{yvt}{bx}{n}{<->ssub * yvt/b/n}{}
-\DeclareFontShape{T1}{yvt}{bx}{sc}{<->ssub * yvt/b/sc}{}
-\DeclareFontShape{T1}{yvt}{bx}{si}{<->ssub * yvt/b/si}{}
-\DeclareFontShape{T1}{yvt}{bx}{it}{<->ssub * yvt/b/it}{}
-\DeclareFontShape{T1}{yvt}{b}{sl}{<->ssub * yvt/b/it}{}
-\DeclareFontShape{T1}{yvt}{bx}{sl}{<->ssub * yvt/b/sl}{}
-\DeclareFontShape{T1}{yvt}{eb}{sc}{<->ssub * yvt/eb/n}{}
-\DeclareFontShape{T1}{yvt}{eb}{si}{<->ssub * yvt/eb/sc}{}
-\DeclareFontShape{T1}{yvt}{eb}{sl}{<->ssub * yvt/eb/it}{}
-\DeclareFontShape{T1}{yvt}{mc}{sl}{<->ssub * yvt/mc/it}{}
-\DeclareFontShape{T1}{yvt}{bc}{sl}{<->ssub * yvt/bc/it}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturis/t1yvtajw.fd b/Master/texmf-dist/tex/latex/venturis/t1yvtajw.fd
deleted file mode 100644
index 7d5802f79ae..00000000000
--- a/Master/texmf-dist/tex/latex/venturis/t1yvtajw.fd
+++ /dev/null
@@ -1,86 +0,0 @@
-%Filename: t1yvtajw.fd
-%Created by: tex yvt-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{t1yvtajw.fd}
- [2010/07/03 Fontinst v1.933 font definitions for T1/yvtajw.]
-
-\DeclareFontFamily{T1}{yvtajw}{}
-
-\DeclareFontShape{T1}{yvtajw}{m}{n}{
- <-> yvtrajw8t
-}{}
-
-\DeclareFontShape{T1}{yvtajw}{m}{it}{
- <-> yvtrijw8t
-}{}
-
-\DeclareFontShape{T1}{yvtajw}{m}{sc}{
- <-> yvtrcjw8t
-}{}
-
-\DeclareFontShape{T1}{yvtajw}{m}{si}{
- <-> yvtrcijw8t
-}{}
-
-\DeclareFontShape{T1}{yvtajw}{b}{n}{
- <-> yvtbjw8t
-}{}
-
-\DeclareFontShape{T1}{yvtajw}{b}{it}{
- <-> yvtbijw8t
-}{}
-
-\DeclareFontShape{T1}{yvtajw}{b}{sc}{
- <-> yvtbcjw8t
-}{}
-
-\DeclareFontShape{T1}{yvtajw}{b}{si}{
- <-> yvtbcijw8t
-}{}
-
-\DeclareFontShape{T1}{yvtajw}{mc}{n}{
- <-> yvtrjw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtajw}{mc}{it}{
- <-> yvtrijw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtajw}{mc}{sc}{
- <-> yvtrcjw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtajw}{mc}{si}{
- <-> yvtrcijw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtajw}{bc}{n}{
- <-> yvtbjw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtajw}{bc}{it}{
- <-> yvtbijw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtajw}{bc}{sc}{
- <-> yvtbcjw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtajw}{bc}{si}{
- <-> yvtbcijw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtajw}{m}{sl}{<->ssub * yvtajw/m/it}{}
-\DeclareFontShape{T1}{yvtajw}{bx}{n}{<->ssub * yvtajw/b/n}{}
-\DeclareFontShape{T1}{yvtajw}{bx}{it}{<->ssub * yvtajw/b/it}{}
-\DeclareFontShape{T1}{yvtajw}{b}{sl}{<->ssub * yvtajw/b/it}{}
-\DeclareFontShape{T1}{yvtajw}{bx}{sl}{<->ssub * yvtajw/b/sl}{}
-\DeclareFontShape{T1}{yvtajw}{bx}{sc}{<->ssub * yvtajw/b/sc}{}
-\DeclareFontShape{T1}{yvtajw}{bx}{si}{<->ssub * yvtajw/b/si}{}
-\DeclareFontShape{T1}{yvtajw}{mc}{sl}{<->ssub * yvtajw/mc/it}{}
-\DeclareFontShape{T1}{yvtajw}{bc}{sl}{<->ssub * yvtajw/bc/it}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturis/t1yvtaw.fd b/Master/texmf-dist/tex/latex/venturis/t1yvtaw.fd
deleted file mode 100644
index 07a3955cf42..00000000000
--- a/Master/texmf-dist/tex/latex/venturis/t1yvtaw.fd
+++ /dev/null
@@ -1,86 +0,0 @@
-%Filename: t1yvtaw.fd
-%Created by: tex yvt-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{t1yvtaw.fd}
- [2010/07/03 Fontinst v1.933 font definitions for T1/yvtaw.]
-
-\DeclareFontFamily{T1}{yvtaw}{}
-
-\DeclareFontShape{T1}{yvtaw}{m}{n}{
- <-> yvtraw8t
-}{}
-
-\DeclareFontShape{T1}{yvtaw}{m}{sc}{
- <-> yvtrcw8t
-}{}
-
-\DeclareFontShape{T1}{yvtaw}{m}{si}{
- <-> yvtrciw8t
-}{}
-
-\DeclareFontShape{T1}{yvtaw}{m}{it}{
- <-> yvtriw8t
-}{}
-
-\DeclareFontShape{T1}{yvtaw}{b}{n}{
- <-> yvtbw8t
-}{}
-
-\DeclareFontShape{T1}{yvtaw}{b}{sc}{
- <-> yvtbcw8t
-}{}
-
-\DeclareFontShape{T1}{yvtaw}{b}{si}{
- <-> yvtbciw8t
-}{}
-
-\DeclareFontShape{T1}{yvtaw}{b}{it}{
- <-> yvtbiw8t
-}{}
-
-\DeclareFontShape{T1}{yvtaw}{mc}{n}{
- <-> yvtrw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtaw}{mc}{sc}{
- <-> yvtrcw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtaw}{mc}{si}{
- <-> yvtrciw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtaw}{mc}{it}{
- <-> yvtriw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtaw}{bc}{n}{
- <-> yvtbw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtaw}{bc}{sc}{
- <-> yvtbcw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtaw}{bc}{si}{
- <-> yvtbciw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtaw}{bc}{it}{
- <-> yvtbiw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtaw}{m}{sl}{<->ssub * yvtaw/m/it}{}
-\DeclareFontShape{T1}{yvtaw}{bx}{n}{<->ssub * yvtaw/b/n}{}
-\DeclareFontShape{T1}{yvtaw}{bx}{sc}{<->ssub * yvtaw/b/sc}{}
-\DeclareFontShape{T1}{yvtaw}{bx}{si}{<->ssub * yvtaw/b/si}{}
-\DeclareFontShape{T1}{yvtaw}{bx}{it}{<->ssub * yvtaw/b/it}{}
-\DeclareFontShape{T1}{yvtaw}{b}{sl}{<->ssub * yvtaw/b/it}{}
-\DeclareFontShape{T1}{yvtaw}{bx}{sl}{<->ssub * yvtaw/b/sl}{}
-\DeclareFontShape{T1}{yvtaw}{mc}{sl}{<->ssub * yvtaw/mc/it}{}
-\DeclareFontShape{T1}{yvtaw}{bc}{sl}{<->ssub * yvtaw/bc/it}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturis/t1yvtd.fd b/Master/texmf-dist/tex/latex/venturis/t1yvtd.fd
deleted file mode 100644
index 82a76a51960..00000000000
--- a/Master/texmf-dist/tex/latex/venturis/t1yvtd.fd
+++ /dev/null
@@ -1,82 +0,0 @@
-%Filename: t1yvtd.fd
-%Created by: tex yvt-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{t1yvtd.fd}
- [2010/07/03 Fontinst v1.933 font definitions for T1/yvtd.]
-
-\DeclareFontFamily{T1}{yvtd}{}
-
-\DeclareFontShape{T1}{yvtd}{bc}{sc}{
- <-> yvtbd8tc
-}{}
-
-\DeclareFontShape{T1}{yvtd}{mc}{sc}{
- <-> yvtbd8tc
-}{}
-
-\DeclareFontShape{T1}{yvtd}{m}{sc}{
- <-> yvtbd8tc
-}{}
-
-\DeclareFontShape{T1}{yvtd}{b}{sc}{
- <-> yvtbd8tc
-}{}
-
-\DeclareFontShape{T1}{yvtd}{eb}{sc}{
- <-> yvtbd8tc
-}{}
-
-\DeclareFontShape{T1}{yvtd}{m}{ol}{
- <-> yvtrdl8t
-}{}
-
-\DeclareFontShape{T1}{yvtd}{mc}{ol}{
- <-> yvtrdl7t
-}{}
-
-\DeclareFontShape{T1}{yvtd}{bc}{ol}{
- <-> yvtrdl8t
-}{}
-
-\DeclareFontShape{T1}{yvtd}{b}{ol}{
- <-> yvtrdl8t
-}{}
-
-\DeclareFontShape{T1}{yvtd}{eb}{ol}{
- <-> yvtrdl8t
-}{}
-
-\DeclareFontShape{T1}{yvtd}{mc}{n}{
- <-> yvtbd8tc
-}{}
-
-\DeclareFontShape{T1}{yvtd}{m}{n}{
- <-> yvtbd8tc
-}{}
-
-\DeclareFontShape{T1}{yvtd}{bc}{n}{
- <-> yvtbd8tc
-}{}
-
-\DeclareFontShape{T1}{yvtd}{b}{n}{
- <-> yvtbd8tc
-}{}
-
-\DeclareFontShape{T1}{yvtd}{eb}{n}{
- <-> yvtbd8tc
-}{}
-
-\DeclareFontShape{T1}{yvtd}{bc}{si}{<->ssub * yvtd/bc/sc}{}
-\DeclareFontShape{T1}{yvtd}{mc}{si}{<->ssub * yvtd/mc/sc}{}
-\DeclareFontShape{T1}{yvtd}{m}{si}{<->ssub * yvtd/m/sc}{}
-\DeclareFontShape{T1}{yvtd}{bx}{sc}{<->ssub * yvtd/b/sc}{}
-\DeclareFontShape{T1}{yvtd}{b}{si}{<->ssub * yvtd/b/sc}{}
-\DeclareFontShape{T1}{yvtd}{bx}{si}{<->ssub * yvtd/b/si}{}
-\DeclareFontShape{T1}{yvtd}{eb}{si}{<->ssub * yvtd/eb/sc}{}
-\DeclareFontShape{T1}{yvtd}{bx}{ol}{<->ssub * yvtd/b/ol}{}
-\DeclareFontShape{T1}{yvtd}{bx}{n}{<->ssub * yvtd/b/n}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturis/t1yvtj.fd b/Master/texmf-dist/tex/latex/venturis/t1yvtj.fd
deleted file mode 100644
index 2237b44f629..00000000000
--- a/Master/texmf-dist/tex/latex/venturis/t1yvtj.fd
+++ /dev/null
@@ -1,86 +0,0 @@
-%Filename: t1yvtj.fd
-%Created by: tex yvt-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{t1yvtj.fd}
- [2010/07/03 Fontinst v1.933 font definitions for T1/yvtj.]
-
-\DeclareFontFamily{T1}{yvtj}{}
-
-\DeclareFontShape{T1}{yvtj}{m}{n}{
- <-> yvtrj8t
-}{}
-
-\DeclareFontShape{T1}{yvtj}{m}{sc}{
- <-> yvtrcj8t
-}{}
-
-\DeclareFontShape{T1}{yvtj}{m}{si}{
- <-> yvtrcij8t
-}{}
-
-\DeclareFontShape{T1}{yvtj}{m}{it}{
- <-> yvtrij8t
-}{}
-
-\DeclareFontShape{T1}{yvtj}{b}{n}{
- <-> yvtbj8t
-}{}
-
-\DeclareFontShape{T1}{yvtj}{b}{sc}{
- <-> yvtbcj8t
-}{}
-
-\DeclareFontShape{T1}{yvtj}{b}{si}{
- <-> yvtbcij8t
-}{}
-
-\DeclareFontShape{T1}{yvtj}{b}{it}{
- <-> yvtbij8t
-}{}
-
-\DeclareFontShape{T1}{yvtj}{mc}{n}{
- <-> yvtrj8tc
-}{}
-
-\DeclareFontShape{T1}{yvtj}{mc}{sc}{
- <-> yvtrcj8tc
-}{}
-
-\DeclareFontShape{T1}{yvtj}{mc}{si}{
- <-> yvtrcij8tc
-}{}
-
-\DeclareFontShape{T1}{yvtj}{mc}{it}{
- <-> yvtrij8tc
-}{}
-
-\DeclareFontShape{T1}{yvtj}{bc}{n}{
- <-> yvtbj8tc
-}{}
-
-\DeclareFontShape{T1}{yvtj}{bc}{sc}{
- <-> yvtbcj8tc
-}{}
-
-\DeclareFontShape{T1}{yvtj}{bc}{si}{
- <-> yvtbcij8tc
-}{}
-
-\DeclareFontShape{T1}{yvtj}{bc}{it}{
- <-> yvtbij8tc
-}{}
-
-\DeclareFontShape{T1}{yvtj}{m}{sl}{<->ssub * yvtj/m/it}{}
-\DeclareFontShape{T1}{yvtj}{bx}{n}{<->ssub * yvtj/b/n}{}
-\DeclareFontShape{T1}{yvtj}{bx}{sc}{<->ssub * yvtj/b/sc}{}
-\DeclareFontShape{T1}{yvtj}{bx}{si}{<->ssub * yvtj/b/si}{}
-\DeclareFontShape{T1}{yvtj}{bx}{it}{<->ssub * yvtj/b/it}{}
-\DeclareFontShape{T1}{yvtj}{b}{sl}{<->ssub * yvtj/b/it}{}
-\DeclareFontShape{T1}{yvtj}{bx}{sl}{<->ssub * yvtj/b/sl}{}
-\DeclareFontShape{T1}{yvtj}{mc}{sl}{<->ssub * yvtj/mc/it}{}
-\DeclareFontShape{T1}{yvtj}{bc}{sl}{<->ssub * yvtj/bc/it}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturis/t1yvtjw.fd b/Master/texmf-dist/tex/latex/venturis/t1yvtjw.fd
deleted file mode 100644
index 5ca3288e389..00000000000
--- a/Master/texmf-dist/tex/latex/venturis/t1yvtjw.fd
+++ /dev/null
@@ -1,86 +0,0 @@
-%Filename: t1yvtjw.fd
-%Created by: tex yvt-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{t1yvtjw.fd}
- [2010/07/03 Fontinst v1.933 font definitions for T1/yvtjw.]
-
-\DeclareFontFamily{T1}{yvtjw}{}
-
-\DeclareFontShape{T1}{yvtjw}{m}{n}{
- <-> yvtrjw8t
-}{}
-
-\DeclareFontShape{T1}{yvtjw}{m}{sc}{
- <-> yvtrcjw8t
-}{}
-
-\DeclareFontShape{T1}{yvtjw}{m}{si}{
- <-> yvtrcijw8t
-}{}
-
-\DeclareFontShape{T1}{yvtjw}{m}{it}{
- <-> yvtrijw8t
-}{}
-
-\DeclareFontShape{T1}{yvtjw}{b}{n}{
- <-> yvtbjw8t
-}{}
-
-\DeclareFontShape{T1}{yvtjw}{b}{it}{
- <-> yvtbijw8t
-}{}
-
-\DeclareFontShape{T1}{yvtjw}{b}{sc}{
- <-> yvtbcjw8t
-}{}
-
-\DeclareFontShape{T1}{yvtjw}{b}{si}{
- <-> yvtbcijw8t
-}{}
-
-\DeclareFontShape{T1}{yvtjw}{mc}{n}{
- <-> yvtrjw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtjw}{mc}{sc}{
- <-> yvtrcjw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtjw}{mc}{si}{
- <-> yvtrcijw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtjw}{mc}{it}{
- <-> yvtrijw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtjw}{bc}{n}{
- <-> yvtbjw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtjw}{bc}{it}{
- <-> yvtbijw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtjw}{bc}{sc}{
- <-> yvtbcjw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtjw}{bc}{si}{
- <-> yvtbcijw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtjw}{m}{sl}{<->ssub * yvtjw/m/it}{}
-\DeclareFontShape{T1}{yvtjw}{bx}{n}{<->ssub * yvtjw/b/n}{}
-\DeclareFontShape{T1}{yvtjw}{bx}{it}{<->ssub * yvtjw/b/it}{}
-\DeclareFontShape{T1}{yvtjw}{b}{sl}{<->ssub * yvtjw/b/it}{}
-\DeclareFontShape{T1}{yvtjw}{bx}{sl}{<->ssub * yvtjw/b/sl}{}
-\DeclareFontShape{T1}{yvtjw}{bx}{sc}{<->ssub * yvtjw/b/sc}{}
-\DeclareFontShape{T1}{yvtjw}{bx}{si}{<->ssub * yvtjw/b/si}{}
-\DeclareFontShape{T1}{yvtjw}{mc}{sl}{<->ssub * yvtjw/mc/it}{}
-\DeclareFontShape{T1}{yvtjw}{bc}{sl}{<->ssub * yvtjw/bc/it}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturis/t1yvtw.fd b/Master/texmf-dist/tex/latex/venturis/t1yvtw.fd
deleted file mode 100644
index 0b424c71c90..00000000000
--- a/Master/texmf-dist/tex/latex/venturis/t1yvtw.fd
+++ /dev/null
@@ -1,86 +0,0 @@
-%Filename: t1yvtw.fd
-%Created by: tex yvt-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{t1yvtw.fd}
- [2010/07/03 Fontinst v1.933 font definitions for T1/yvtw.]
-
-\DeclareFontFamily{T1}{yvtw}{}
-
-\DeclareFontShape{T1}{yvtw}{m}{n}{
- <-> yvtrw8t
-}{}
-
-\DeclareFontShape{T1}{yvtw}{m}{it}{
- <-> yvtriw8t
-}{}
-
-\DeclareFontShape{T1}{yvtw}{m}{sc}{
- <-> yvtrcw8t
-}{}
-
-\DeclareFontShape{T1}{yvtw}{m}{si}{
- <-> yvtrciw8t
-}{}
-
-\DeclareFontShape{T1}{yvtw}{b}{n}{
- <-> yvtbw8t
-}{}
-
-\DeclareFontShape{T1}{yvtw}{b}{it}{
- <-> yvtbiw8t
-}{}
-
-\DeclareFontShape{T1}{yvtw}{b}{sc}{
- <-> yvtbcw8t
-}{}
-
-\DeclareFontShape{T1}{yvtw}{b}{si}{
- <-> yvtbciw8t
-}{}
-
-\DeclareFontShape{T1}{yvtw}{mc}{n}{
- <-> yvtrw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtw}{mc}{it}{
- <-> yvtriw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtw}{mc}{sc}{
- <-> yvtrcw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtw}{mc}{si}{
- <-> yvtrciw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtw}{bc}{n}{
- <-> yvtbw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtw}{bc}{it}{
- <-> yvtbiw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtw}{bc}{sc}{
- <-> yvtbcw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtw}{bc}{si}{
- <-> yvtbciw8tc
-}{}
-
-\DeclareFontShape{T1}{yvtw}{m}{sl}{<->ssub * yvtw/m/it}{}
-\DeclareFontShape{T1}{yvtw}{bx}{n}{<->ssub * yvtw/b/n}{}
-\DeclareFontShape{T1}{yvtw}{bx}{it}{<->ssub * yvtw/b/it}{}
-\DeclareFontShape{T1}{yvtw}{b}{sl}{<->ssub * yvtw/b/it}{}
-\DeclareFontShape{T1}{yvtw}{bx}{sl}{<->ssub * yvtw/b/sl}{}
-\DeclareFontShape{T1}{yvtw}{bx}{sc}{<->ssub * yvtw/b/sc}{}
-\DeclareFontShape{T1}{yvtw}{bx}{si}{<->ssub * yvtw/b/si}{}
-\DeclareFontShape{T1}{yvtw}{mc}{sl}{<->ssub * yvtw/mc/it}{}
-\DeclareFontShape{T1}{yvtw}{bc}{sl}{<->ssub * yvtw/bc/it}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturis/ts1yvt.fd b/Master/texmf-dist/tex/latex/venturis/ts1yvt.fd
deleted file mode 100644
index a2e80329049..00000000000
--- a/Master/texmf-dist/tex/latex/venturis/ts1yvt.fd
+++ /dev/null
@@ -1,97 +0,0 @@
-%Filename: ts1yvt.fd
-%Created by: tex yvt-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{ts1yvt.fd}
- [2010/07/03 Fontinst v1.933 font definitions for TS1/yvt.]
-
-\DeclareFontFamily{TS1}{yvt}{}
-
-\DeclareFontShape{TS1}{yvt}{m}{n}{
- <-> yvtr8c
-}{}
-
-\DeclareFontShape{TS1}{yvt}{m}{sc}{
- <-> yvtrc8c
-}{}
-
-\DeclareFontShape{TS1}{yvt}{m}{it}{
- <-> yvtri8c
-}{}
-
-\DeclareFontShape{TS1}{yvt}{m}{si}{
- <-> yvtrci8c
-}{}
-
-\DeclareFontShape{TS1}{yvt}{b}{n}{
- <-> yvtb8c
-}{}
-
-\DeclareFontShape{TS1}{yvt}{b}{sc}{
- <-> yvtbc8c
-}{}
-
-\DeclareFontShape{TS1}{yvt}{b}{it}{
- <-> yvtbi8c
-}{}
-
-\DeclareFontShape{TS1}{yvt}{b}{si}{
- <-> yvtbci8c
-}{}
-
-\DeclareFontShape{TS1}{yvt}{eb}{n}{
- <-> yvth8c
-}{}
-
-\DeclareFontShape{TS1}{yvt}{eb}{it}{
- <-> yvthi8c
-}{}
-
-\DeclareFontShape{TS1}{yvt}{mc}{n}{
- <-> yvtr8cc
-}{}
-
-\DeclareFontShape{TS1}{yvt}{mc}{sc}{
- <-> yvtrc8cc
-}{}
-
-\DeclareFontShape{TS1}{yvt}{mc}{it}{
- <-> yvtri8cc
-}{}
-
-\DeclareFontShape{TS1}{yvt}{mc}{si}{
- <-> yvtrci8cc
-}{}
-
-\DeclareFontShape{TS1}{yvt}{bc}{n}{
- <-> yvtb8cc
-}{}
-
-\DeclareFontShape{TS1}{yvt}{bc}{sc}{
- <-> yvtbc8cc
-}{}
-
-\DeclareFontShape{TS1}{yvt}{bc}{it}{
- <-> yvtbi8cc
-}{}
-
-\DeclareFontShape{TS1}{yvt}{bc}{si}{
- <-> yvtbci8cc
-}{}
-
-\DeclareFontShape{TS1}{yvt}{m}{sl}{<->ssub * yvt/m/it}{}
-\DeclareFontShape{TS1}{yvt}{bx}{n}{<->ssub * yvt/b/n}{}
-\DeclareFontShape{TS1}{yvt}{bx}{sc}{<->ssub * yvt/b/sc}{}
-\DeclareFontShape{TS1}{yvt}{bx}{it}{<->ssub * yvt/b/it}{}
-\DeclareFontShape{TS1}{yvt}{b}{sl}{<->ssub * yvt/b/it}{}
-\DeclareFontShape{TS1}{yvt}{bx}{sl}{<->ssub * yvt/b/sl}{}
-\DeclareFontShape{TS1}{yvt}{bx}{si}{<->ssub * yvt/b/si}{}
-\DeclareFontShape{TS1}{yvt}{eb}{sc}{<->ssub * yvt/eb/n}{}
-\DeclareFontShape{TS1}{yvt}{eb}{si}{<->ssub * yvt/eb/sc}{}
-\DeclareFontShape{TS1}{yvt}{eb}{sl}{<->ssub * yvt/eb/it}{}
-\DeclareFontShape{TS1}{yvt}{mc}{sl}{<->ssub * yvt/mc/it}{}
-\DeclareFontShape{TS1}{yvt}{bc}{sl}{<->ssub * yvt/bc/it}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturis/ts1yvtajw.fd b/Master/texmf-dist/tex/latex/venturis/ts1yvtajw.fd
deleted file mode 100644
index 40f418fb0eb..00000000000
--- a/Master/texmf-dist/tex/latex/venturis/ts1yvtajw.fd
+++ /dev/null
@@ -1,86 +0,0 @@
-%Filename: ts1yvtajw.fd
-%Created by: tex yvt-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{ts1yvtajw.fd}
- [2010/07/03 Fontinst v1.933 font definitions for TS1/yvtajw.]
-
-\DeclareFontFamily{TS1}{yvtajw}{}
-
-\DeclareFontShape{TS1}{yvtajw}{m}{n}{
- <-> yvtr8c
-}{}
-
-\DeclareFontShape{TS1}{yvtajw}{m}{sc}{
- <-> yvtrc8c
-}{}
-
-\DeclareFontShape{TS1}{yvtajw}{m}{it}{
- <-> yvtri8c
-}{}
-
-\DeclareFontShape{TS1}{yvtajw}{m}{si}{
- <-> yvtrci8c
-}{}
-
-\DeclareFontShape{TS1}{yvtajw}{b}{n}{
- <-> yvtb8c
-}{}
-
-\DeclareFontShape{TS1}{yvtajw}{b}{sc}{
- <-> yvtbc8c
-}{}
-
-\DeclareFontShape{TS1}{yvtajw}{b}{it}{
- <-> yvtbi8c
-}{}
-
-\DeclareFontShape{TS1}{yvtajw}{b}{si}{
- <-> yvtbci8c
-}{}
-
-\DeclareFontShape{TS1}{yvtajw}{mc}{n}{
- <-> yvtr8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtajw}{mc}{sc}{
- <-> yvtrc8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtajw}{mc}{it}{
- <-> yvtri8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtajw}{mc}{si}{
- <-> yvtrci8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtajw}{bc}{n}{
- <-> yvtb8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtajw}{bc}{sc}{
- <-> yvtbc8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtajw}{bc}{it}{
- <-> yvtbi8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtajw}{bc}{si}{
- <-> yvtbci8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtajw}{m}{sl}{<->ssub * yvtajw/m/it}{}
-\DeclareFontShape{TS1}{yvtajw}{bx}{n}{<->ssub * yvtajw/b/n}{}
-\DeclareFontShape{TS1}{yvtajw}{bx}{sc}{<->ssub * yvtajw/b/sc}{}
-\DeclareFontShape{TS1}{yvtajw}{bx}{it}{<->ssub * yvtajw/b/it}{}
-\DeclareFontShape{TS1}{yvtajw}{b}{sl}{<->ssub * yvtajw/b/it}{}
-\DeclareFontShape{TS1}{yvtajw}{bx}{sl}{<->ssub * yvtajw/b/sl}{}
-\DeclareFontShape{TS1}{yvtajw}{bx}{si}{<->ssub * yvtajw/b/si}{}
-\DeclareFontShape{TS1}{yvtajw}{mc}{sl}{<->ssub * yvtajw/mc/it}{}
-\DeclareFontShape{TS1}{yvtajw}{bc}{sl}{<->ssub * yvtajw/bc/it}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturis/ts1yvtaw.fd b/Master/texmf-dist/tex/latex/venturis/ts1yvtaw.fd
deleted file mode 100644
index 9872bbac000..00000000000
--- a/Master/texmf-dist/tex/latex/venturis/ts1yvtaw.fd
+++ /dev/null
@@ -1,86 +0,0 @@
-%Filename: ts1yvtaw.fd
-%Created by: tex yvt-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{ts1yvtaw.fd}
- [2010/07/03 Fontinst v1.933 font definitions for TS1/yvtaw.]
-
-\DeclareFontFamily{TS1}{yvtaw}{}
-
-\DeclareFontShape{TS1}{yvtaw}{m}{n}{
- <-> yvtr8c
-}{}
-
-\DeclareFontShape{TS1}{yvtaw}{m}{sc}{
- <-> yvtrc8c
-}{}
-
-\DeclareFontShape{TS1}{yvtaw}{m}{it}{
- <-> yvtri8c
-}{}
-
-\DeclareFontShape{TS1}{yvtaw}{m}{si}{
- <-> yvtrci8c
-}{}
-
-\DeclareFontShape{TS1}{yvtaw}{b}{n}{
- <-> yvtb8c
-}{}
-
-\DeclareFontShape{TS1}{yvtaw}{b}{sc}{
- <-> yvtbc8c
-}{}
-
-\DeclareFontShape{TS1}{yvtaw}{b}{it}{
- <-> yvtbi8c
-}{}
-
-\DeclareFontShape{TS1}{yvtaw}{b}{si}{
- <-> yvtbci8c
-}{}
-
-\DeclareFontShape{TS1}{yvtaw}{mc}{n}{
- <-> yvtr8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtaw}{mc}{sc}{
- <-> yvtrc8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtaw}{mc}{it}{
- <-> yvtri8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtaw}{mc}{si}{
- <-> yvtrci8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtaw}{bc}{n}{
- <-> yvtb8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtaw}{bc}{sc}{
- <-> yvtbc8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtaw}{bc}{it}{
- <-> yvtbi8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtaw}{bc}{si}{
- <-> yvtbci8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtaw}{m}{sl}{<->ssub * yvtaw/m/it}{}
-\DeclareFontShape{TS1}{yvtaw}{bx}{n}{<->ssub * yvtaw/b/n}{}
-\DeclareFontShape{TS1}{yvtaw}{bx}{sc}{<->ssub * yvtaw/b/sc}{}
-\DeclareFontShape{TS1}{yvtaw}{bx}{it}{<->ssub * yvtaw/b/it}{}
-\DeclareFontShape{TS1}{yvtaw}{b}{sl}{<->ssub * yvtaw/b/it}{}
-\DeclareFontShape{TS1}{yvtaw}{bx}{sl}{<->ssub * yvtaw/b/sl}{}
-\DeclareFontShape{TS1}{yvtaw}{bx}{si}{<->ssub * yvtaw/b/si}{}
-\DeclareFontShape{TS1}{yvtaw}{mc}{sl}{<->ssub * yvtaw/mc/it}{}
-\DeclareFontShape{TS1}{yvtaw}{bc}{sl}{<->ssub * yvtaw/bc/it}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturis/ts1yvtd.fd b/Master/texmf-dist/tex/latex/venturis/ts1yvtd.fd
deleted file mode 100644
index 3dc1881b8bc..00000000000
--- a/Master/texmf-dist/tex/latex/venturis/ts1yvtd.fd
+++ /dev/null
@@ -1,78 +0,0 @@
-%Filename: ts1yvtd.fd
-%Created by: tex yvt-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{ts1yvtd.fd}
- [2010/07/03 Fontinst v1.933 font definitions for TS1/yvtd.]
-
-\DeclareFontFamily{TS1}{yvtd}{}
-
-\DeclareFontShape{TS1}{yvtd}{bc}{sc}{
- <-> yvtbd8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtd}{m}{sc}{
- <-> yvtbd8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtd}{mc}{sc}{
- <-> yvtbd8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtd}{b}{sc}{
- <-> yvtbd8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtd}{eb}{sc}{
- <-> yvtbd8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtd}{m}{ol}{
- <-> yvtrdl8c
-}{}
-
-\DeclareFontShape{TS1}{yvtd}{mc}{ol}{
- <-> yvtrdl8c
-}{}
-
-\DeclareFontShape{TS1}{yvtd}{bc}{ol}{
- <-> yvtrdl8c
-}{}
-
-\DeclareFontShape{TS1}{yvtd}{b}{ol}{
- <-> yvtrdl8c
-}{}
-
-\DeclareFontShape{TS1}{yvtd}{mc}{n}{
- <-> yvtbd8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtd}{m}{n}{
- <-> yvtbd8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtd}{bc}{n}{
- <-> yvtbd8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtd}{b}{n}{
- <-> yvtbd8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtd}{eb}{n}{
- <-> yvtbd8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtd}{bc}{si}{<->ssub * yvtd/bc/sc}{}
-\DeclareFontShape{TS1}{yvtd}{m}{si}{<->ssub * yvtd/m/sc}{}
-\DeclareFontShape{TS1}{yvtd}{mc}{si}{<->ssub * yvtd/mc/sc}{}
-\DeclareFontShape{TS1}{yvtd}{bx}{sc}{<->ssub * yvtd/b/sc}{}
-\DeclareFontShape{TS1}{yvtd}{b}{si}{<->ssub * yvtd/b/sc}{}
-\DeclareFontShape{TS1}{yvtd}{bx}{si}{<->ssub * yvtd/b/si}{}
-\DeclareFontShape{TS1}{yvtd}{eb}{si}{<->ssub * yvtd/eb/sc}{}
-\DeclareFontShape{TS1}{yvtd}{bx}{ol}{<->ssub * yvtd/b/ol}{}
-\DeclareFontShape{TS1}{yvtd}{bx}{n}{<->ssub * yvtd/b/n}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturis/ts1yvtj.fd b/Master/texmf-dist/tex/latex/venturis/ts1yvtj.fd
deleted file mode 100644
index 5df3103f0ae..00000000000
--- a/Master/texmf-dist/tex/latex/venturis/ts1yvtj.fd
+++ /dev/null
@@ -1,86 +0,0 @@
-%Filename: ts1yvtj.fd
-%Created by: tex yvt-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{ts1yvtj.fd}
- [2010/07/03 Fontinst v1.933 font definitions for TS1/yvtj.]
-
-\DeclareFontFamily{TS1}{yvtj}{}
-
-\DeclareFontShape{TS1}{yvtj}{m}{n}{
- <-> yvtr8c
-}{}
-
-\DeclareFontShape{TS1}{yvtj}{m}{sc}{
- <-> yvtrc8c
-}{}
-
-\DeclareFontShape{TS1}{yvtj}{m}{it}{
- <-> yvtri8c
-}{}
-
-\DeclareFontShape{TS1}{yvtj}{m}{si}{
- <-> yvtrci8c
-}{}
-
-\DeclareFontShape{TS1}{yvtj}{b}{n}{
- <-> yvtb8c
-}{}
-
-\DeclareFontShape{TS1}{yvtj}{b}{sc}{
- <-> yvtbc8c
-}{}
-
-\DeclareFontShape{TS1}{yvtj}{b}{it}{
- <-> yvtbi8c
-}{}
-
-\DeclareFontShape{TS1}{yvtj}{b}{si}{
- <-> yvtbci8c
-}{}
-
-\DeclareFontShape{TS1}{yvtj}{mc}{n}{
- <-> yvtr8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtj}{mc}{sc}{
- <-> yvtrc8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtj}{mc}{it}{
- <-> yvtri8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtj}{mc}{si}{
- <-> yvtrci8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtj}{bc}{n}{
- <-> yvtb8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtj}{bc}{sc}{
- <-> yvtbc8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtj}{bc}{it}{
- <-> yvtbi8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtj}{bc}{si}{
- <-> yvtbci8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtj}{m}{sl}{<->ssub * yvtj/m/it}{}
-\DeclareFontShape{TS1}{yvtj}{bx}{n}{<->ssub * yvtj/b/n}{}
-\DeclareFontShape{TS1}{yvtj}{bx}{sc}{<->ssub * yvtj/b/sc}{}
-\DeclareFontShape{TS1}{yvtj}{bx}{it}{<->ssub * yvtj/b/it}{}
-\DeclareFontShape{TS1}{yvtj}{b}{sl}{<->ssub * yvtj/b/it}{}
-\DeclareFontShape{TS1}{yvtj}{bx}{sl}{<->ssub * yvtj/b/sl}{}
-\DeclareFontShape{TS1}{yvtj}{bx}{si}{<->ssub * yvtj/b/si}{}
-\DeclareFontShape{TS1}{yvtj}{mc}{sl}{<->ssub * yvtj/mc/it}{}
-\DeclareFontShape{TS1}{yvtj}{bc}{sl}{<->ssub * yvtj/bc/it}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturis/ts1yvtjw.fd b/Master/texmf-dist/tex/latex/venturis/ts1yvtjw.fd
deleted file mode 100644
index f1a348c2945..00000000000
--- a/Master/texmf-dist/tex/latex/venturis/ts1yvtjw.fd
+++ /dev/null
@@ -1,86 +0,0 @@
-%Filename: ts1yvtjw.fd
-%Created by: tex yvt-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{ts1yvtjw.fd}
- [2010/07/03 Fontinst v1.933 font definitions for TS1/yvtjw.]
-
-\DeclareFontFamily{TS1}{yvtjw}{}
-
-\DeclareFontShape{TS1}{yvtjw}{m}{n}{
- <-> yvtr8c
-}{}
-
-\DeclareFontShape{TS1}{yvtjw}{m}{sc}{
- <-> yvtrc8c
-}{}
-
-\DeclareFontShape{TS1}{yvtjw}{m}{it}{
- <-> yvtri8c
-}{}
-
-\DeclareFontShape{TS1}{yvtjw}{m}{si}{
- <-> yvtrci8c
-}{}
-
-\DeclareFontShape{TS1}{yvtjw}{b}{n}{
- <-> yvtb8c
-}{}
-
-\DeclareFontShape{TS1}{yvtjw}{b}{sc}{
- <-> yvtbc8c
-}{}
-
-\DeclareFontShape{TS1}{yvtjw}{b}{it}{
- <-> yvtbi8c
-}{}
-
-\DeclareFontShape{TS1}{yvtjw}{b}{si}{
- <-> yvtbci8c
-}{}
-
-\DeclareFontShape{TS1}{yvtjw}{mc}{n}{
- <-> yvtr8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtjw}{mc}{sc}{
- <-> yvtrc8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtjw}{mc}{it}{
- <-> yvtri8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtjw}{mc}{si}{
- <-> yvtrci8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtjw}{bc}{n}{
- <-> yvtb8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtjw}{bc}{sc}{
- <-> yvtbc8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtjw}{bc}{it}{
- <-> yvtbi8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtjw}{bc}{si}{
- <-> yvtbci8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtjw}{m}{sl}{<->ssub * yvtjw/m/it}{}
-\DeclareFontShape{TS1}{yvtjw}{bx}{n}{<->ssub * yvtjw/b/n}{}
-\DeclareFontShape{TS1}{yvtjw}{bx}{sc}{<->ssub * yvtjw/b/sc}{}
-\DeclareFontShape{TS1}{yvtjw}{bx}{it}{<->ssub * yvtjw/b/it}{}
-\DeclareFontShape{TS1}{yvtjw}{b}{sl}{<->ssub * yvtjw/b/it}{}
-\DeclareFontShape{TS1}{yvtjw}{bx}{sl}{<->ssub * yvtjw/b/sl}{}
-\DeclareFontShape{TS1}{yvtjw}{bx}{si}{<->ssub * yvtjw/b/si}{}
-\DeclareFontShape{TS1}{yvtjw}{mc}{sl}{<->ssub * yvtjw/mc/it}{}
-\DeclareFontShape{TS1}{yvtjw}{bc}{sl}{<->ssub * yvtjw/bc/it}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturis/ts1yvtw.fd b/Master/texmf-dist/tex/latex/venturis/ts1yvtw.fd
deleted file mode 100644
index 14afed4faa2..00000000000
--- a/Master/texmf-dist/tex/latex/venturis/ts1yvtw.fd
+++ /dev/null
@@ -1,86 +0,0 @@
-%Filename: ts1yvtw.fd
-%Created by: tex yvt-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{ts1yvtw.fd}
- [2010/07/03 Fontinst v1.933 font definitions for TS1/yvtw.]
-
-\DeclareFontFamily{TS1}{yvtw}{}
-
-\DeclareFontShape{TS1}{yvtw}{m}{n}{
- <-> yvtr8c
-}{}
-
-\DeclareFontShape{TS1}{yvtw}{m}{sc}{
- <-> yvtrc8c
-}{}
-
-\DeclareFontShape{TS1}{yvtw}{m}{it}{
- <-> yvtri8c
-}{}
-
-\DeclareFontShape{TS1}{yvtw}{m}{si}{
- <-> yvtrci8c
-}{}
-
-\DeclareFontShape{TS1}{yvtw}{b}{n}{
- <-> yvtb8c
-}{}
-
-\DeclareFontShape{TS1}{yvtw}{b}{sc}{
- <-> yvtbc8c
-}{}
-
-\DeclareFontShape{TS1}{yvtw}{b}{it}{
- <-> yvtbi8c
-}{}
-
-\DeclareFontShape{TS1}{yvtw}{b}{si}{
- <-> yvtbci8c
-}{}
-
-\DeclareFontShape{TS1}{yvtw}{mc}{n}{
- <-> yvtr8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtw}{mc}{sc}{
- <-> yvtrc8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtw}{mc}{it}{
- <-> yvtri8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtw}{mc}{si}{
- <-> yvtrci8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtw}{bc}{n}{
- <-> yvtb8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtw}{bc}{sc}{
- <-> yvtbc8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtw}{bc}{it}{
- <-> yvtbi8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtw}{bc}{si}{
- <-> yvtbci8cc
-}{}
-
-\DeclareFontShape{TS1}{yvtw}{m}{sl}{<->ssub * yvtw/m/it}{}
-\DeclareFontShape{TS1}{yvtw}{bx}{n}{<->ssub * yvtw/b/n}{}
-\DeclareFontShape{TS1}{yvtw}{bx}{sc}{<->ssub * yvtw/b/sc}{}
-\DeclareFontShape{TS1}{yvtw}{bx}{it}{<->ssub * yvtw/b/it}{}
-\DeclareFontShape{TS1}{yvtw}{b}{sl}{<->ssub * yvtw/b/it}{}
-\DeclareFontShape{TS1}{yvtw}{bx}{sl}{<->ssub * yvtw/b/sl}{}
-\DeclareFontShape{TS1}{yvtw}{bx}{si}{<->ssub * yvtw/b/si}{}
-\DeclareFontShape{TS1}{yvtw}{mc}{sl}{<->ssub * yvtw/mc/it}{}
-\DeclareFontShape{TS1}{yvtw}{bc}{sl}{<->ssub * yvtw/bc/it}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturis2/t1yv2.fd b/Master/texmf-dist/tex/latex/venturis2/t1yv2.fd
deleted file mode 100644
index b58640fa12f..00000000000
--- a/Master/texmf-dist/tex/latex/venturis2/t1yv2.fd
+++ /dev/null
@@ -1,84 +0,0 @@
-%Filename: t1yv2.fd
-%Created by: tex yv2-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{t1yv2.fd}
- [2010/07/03 Fontinst v1.933 font definitions for T1/yv2.]
-
-\DeclareFontFamily{T1}{yv2}{}
-
-\DeclareFontShape{T1}{yv2}{m}{n}{
- <-> yv2r8t
-}{}
-
-\DeclareFontShape{T1}{yv2}{m}{it}{
- <-> yv2ri8t
-}{}
-
-\DeclareFontShape{T1}{yv2}{b}{n}{
- <-> yv2b8t
-}{}
-
-\DeclareFontShape{T1}{yv2}{b}{it}{
- <-> yv2bi8t
-}{}
-
-\DeclareFontShape{T1}{yv2}{mc}{n}{
- <-> yv2r8tc
-}{}
-
-\DeclareFontShape{T1}{yv2}{mc}{it}{
- <-> yv2ri8tc
-}{}
-
-\DeclareFontShape{T1}{yv2}{bc}{n}{
- <-> yv2b8tc
-}{}
-
-\DeclareFontShape{T1}{yv2}{bc}{it}{
- <-> yv2bi8tc
-}{}
-
-\DeclareFontShape{T1}{yv2}{mb}{n}{
- <-> yv2m8t
-}{}
-
-\DeclareFontShape{T1}{yv2}{mb}{it}{
- <-> yv2mi8t
-}{}
-
-\DeclareFontShape{T1}{yv2}{eb}{n}{
- <-> yv2x8t
-}{}
-
-\DeclareFontShape{T1}{yv2}{eb}{it}{
- <-> yv2xi8t
-}{}
-
-\DeclareFontShape{T1}{yv2}{m}{sc}{<->ssub * yv2/m/n}{}
-\DeclareFontShape{T1}{yv2}{m}{si}{<->ssub * yv2/m/sc}{}
-\DeclareFontShape{T1}{yv2}{m}{sl}{<->ssub * yv2/m/it}{}
-\DeclareFontShape{T1}{yv2}{bx}{n}{<->ssub * yv2/b/n}{}
-\DeclareFontShape{T1}{yv2}{b}{sc}{<->ssub * yv2/b/n}{}
-\DeclareFontShape{T1}{yv2}{bx}{sc}{<->ssub * yv2/b/sc}{}
-\DeclareFontShape{T1}{yv2}{b}{si}{<->ssub * yv2/b/sc}{}
-\DeclareFontShape{T1}{yv2}{bx}{si}{<->ssub * yv2/b/si}{}
-\DeclareFontShape{T1}{yv2}{bx}{it}{<->ssub * yv2/b/it}{}
-\DeclareFontShape{T1}{yv2}{b}{sl}{<->ssub * yv2/b/it}{}
-\DeclareFontShape{T1}{yv2}{bx}{sl}{<->ssub * yv2/b/sl}{}
-\DeclareFontShape{T1}{yv2}{mc}{sc}{<->ssub * yv2/mc/n}{}
-\DeclareFontShape{T1}{yv2}{mc}{si}{<->ssub * yv2/mc/sc}{}
-\DeclareFontShape{T1}{yv2}{mc}{sl}{<->ssub * yv2/mc/it}{}
-\DeclareFontShape{T1}{yv2}{bc}{sc}{<->ssub * yv2/bc/n}{}
-\DeclareFontShape{T1}{yv2}{bc}{si}{<->ssub * yv2/bc/sc}{}
-\DeclareFontShape{T1}{yv2}{bc}{sl}{<->ssub * yv2/bc/it}{}
-\DeclareFontShape{T1}{yv2}{mb}{sc}{<->ssub * yv2/mb/n}{}
-\DeclareFontShape{T1}{yv2}{mb}{si}{<->ssub * yv2/mb/sc}{}
-\DeclareFontShape{T1}{yv2}{mb}{sl}{<->ssub * yv2/mb/it}{}
-\DeclareFontShape{T1}{yv2}{eb}{sc}{<->ssub * yv2/eb/n}{}
-\DeclareFontShape{T1}{yv2}{eb}{si}{<->ssub * yv2/eb/sc}{}
-\DeclareFontShape{T1}{yv2}{eb}{sl}{<->ssub * yv2/eb/it}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturis2/ts1yv2.fd b/Master/texmf-dist/tex/latex/venturis2/ts1yv2.fd
deleted file mode 100644
index 0b502b51c4b..00000000000
--- a/Master/texmf-dist/tex/latex/venturis2/ts1yv2.fd
+++ /dev/null
@@ -1,84 +0,0 @@
-%Filename: ts1yv2.fd
-%Created by: tex yv2-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{ts1yv2.fd}
- [2010/07/03 Fontinst v1.933 font definitions for TS1/yv2.]
-
-\DeclareFontFamily{TS1}{yv2}{}
-
-\DeclareFontShape{TS1}{yv2}{m}{n}{
- <-> yv2r8c
-}{}
-
-\DeclareFontShape{TS1}{yv2}{m}{it}{
- <-> yv2ri8c
-}{}
-
-\DeclareFontShape{TS1}{yv2}{b}{n}{
- <-> yv2b8c
-}{}
-
-\DeclareFontShape{TS1}{yv2}{b}{it}{
- <-> yv2bi8c
-}{}
-
-\DeclareFontShape{TS1}{yv2}{mc}{n}{
- <-> yv2r8cc
-}{}
-
-\DeclareFontShape{TS1}{yv2}{mc}{it}{
- <-> yv2ri8cc
-}{}
-
-\DeclareFontShape{TS1}{yv2}{bc}{n}{
- <-> yv2b8cc
-}{}
-
-\DeclareFontShape{TS1}{yv2}{bc}{it}{
- <-> yv2bi8cc
-}{}
-
-\DeclareFontShape{TS1}{yv2}{mb}{n}{
- <-> yv2m8c
-}{}
-
-\DeclareFontShape{TS1}{yv2}{mb}{it}{
- <-> yv2mi8c
-}{}
-
-\DeclareFontShape{TS1}{yv2}{eb}{n}{
- <-> yv2x8c
-}{}
-
-\DeclareFontShape{TS1}{yv2}{eb}{it}{
- <-> yv2xi8c
-}{}
-
-\DeclareFontShape{TS1}{yv2}{m}{sc}{<->ssub * yv2/m/n}{}
-\DeclareFontShape{TS1}{yv2}{m}{si}{<->ssub * yv2/m/sc}{}
-\DeclareFontShape{TS1}{yv2}{m}{sl}{<->ssub * yv2/m/it}{}
-\DeclareFontShape{TS1}{yv2}{bx}{n}{<->ssub * yv2/b/n}{}
-\DeclareFontShape{TS1}{yv2}{b}{sc}{<->ssub * yv2/b/n}{}
-\DeclareFontShape{TS1}{yv2}{bx}{sc}{<->ssub * yv2/b/sc}{}
-\DeclareFontShape{TS1}{yv2}{b}{si}{<->ssub * yv2/b/sc}{}
-\DeclareFontShape{TS1}{yv2}{bx}{si}{<->ssub * yv2/b/si}{}
-\DeclareFontShape{TS1}{yv2}{bx}{it}{<->ssub * yv2/b/it}{}
-\DeclareFontShape{TS1}{yv2}{b}{sl}{<->ssub * yv2/b/it}{}
-\DeclareFontShape{TS1}{yv2}{bx}{sl}{<->ssub * yv2/b/sl}{}
-\DeclareFontShape{TS1}{yv2}{mc}{sc}{<->ssub * yv2/mc/n}{}
-\DeclareFontShape{TS1}{yv2}{mc}{si}{<->ssub * yv2/mc/sc}{}
-\DeclareFontShape{TS1}{yv2}{mc}{sl}{<->ssub * yv2/mc/it}{}
-\DeclareFontShape{TS1}{yv2}{bc}{sc}{<->ssub * yv2/bc/n}{}
-\DeclareFontShape{TS1}{yv2}{bc}{si}{<->ssub * yv2/bc/sc}{}
-\DeclareFontShape{TS1}{yv2}{bc}{sl}{<->ssub * yv2/bc/it}{}
-\DeclareFontShape{TS1}{yv2}{mb}{sc}{<->ssub * yv2/mb/n}{}
-\DeclareFontShape{TS1}{yv2}{mb}{si}{<->ssub * yv2/mb/sc}{}
-\DeclareFontShape{TS1}{yv2}{mb}{sl}{<->ssub * yv2/mb/it}{}
-\DeclareFontShape{TS1}{yv2}{eb}{sc}{<->ssub * yv2/eb/n}{}
-\DeclareFontShape{TS1}{yv2}{eb}{si}{<->ssub * yv2/eb/sc}{}
-\DeclareFontShape{TS1}{yv2}{eb}{sl}{<->ssub * yv2/eb/it}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/t1yv1.fd b/Master/texmf-dist/tex/latex/venturisadf/t1yv1.fd
new file mode 100644
index 00000000000..a0d2a262cb5
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/t1yv1.fd
@@ -0,0 +1,163 @@
+%Filename: t1yv1.fd
+%Created by: tex yv1-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{t1yv1.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for T1/yv1.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvi@scale\endcsname\relax
+ \let\yvi@@scale\@empty
+\else
+ \edef\yvi@@scale{s*[\csname yvi@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{yv1}{}
+
+\DeclareFontShape{T1}{yv1}{m}{n}{
+ <-> \yvi@@scale yv1r8t
+}{}
+
+\DeclareFontShape{T1}{yv1}{m}{it}{
+ <-> \yvi@@scale yv1ri8t
+}{}
+
+\DeclareFontShape{T1}{yv1}{b}{n}{
+ <-> \yvi@@scale yv1b8t
+}{}
+
+\DeclareFontShape{T1}{yv1}{b}{it}{
+ <-> \yvi@@scale yv1bi8t
+}{}
+
+\DeclareFontShape{T1}{yv1}{eb}{n}{
+ <-> \yvi@@scale yv1h8t
+}{}
+
+\DeclareFontShape{T1}{yv1}{eb}{sl}{
+ <-> \yvi@@scale yv1ho8t
+}{}
+
+\DeclareFontShape{T1}{yv1}{eb}{it}{
+ <-> \yvi@@scale yv1ho8t
+}{}
+
+\DeclareFontShape{T1}{yv1}{c}{n}{
+ <-> \yvi@@scale yv1r8tc
+}{}
+
+\DeclareFontShape{T1}{yv1}{c}{it}{
+ <-> \yvi@@scale yv1ri8tc
+}{}
+
+\DeclareFontShape{T1}{yv1}{bc}{n}{
+ <-> \yvi@@scale yv1b8tc
+}{}
+
+\DeclareFontShape{T1}{yv1}{bc}{it}{
+ <-> \yvi@@scale yv1bi8tc
+}{}
+
+\DeclareFontShape{T1}{yv1}{x}{n}{
+ <-> \yvi@@scale yv1r8tx
+}{}
+
+\DeclareFontShape{T1}{yv1}{x}{it}{
+ <-> \yvi@@scale yv1ri8tx
+}{}
+
+\DeclareFontShape{T1}{yv1}{bx}{n}{
+ <-> \yvi@@scale yv1b8tx
+}{}
+
+\DeclareFontShape{T1}{yv1}{bx}{sc}{
+ <-> \yvi@@scale yv1b8tx
+}{}
+
+\DeclareFontShape{T1}{yv1}{bx}{it}{
+ <-> \yvi@@scale yv1bi8tx
+}{}
+
+\DeclareFontShape{T1}{yv1}{bx}{sl}{
+ <-> \yvi@@scale yv1bi8tx
+}{}
+
+\DeclareFontShape{T1}{yv1}{bx}{scit}{
+ <-> \yvi@@scale yv1b8tx
+}{}
+
+\DeclareFontShape{T1}{yv1}{l}{n}{
+ <-> \yvi@@scale yv1l8t
+}{}
+
+\DeclareFontShape{T1}{yv1}{l}{it}{
+ <-> \yvi@@scale yv1li8t
+}{}
+
+\DeclareFontShape{T1}{yv1}{db}{n}{
+ <-> \yvi@@scale yv1d8t
+}{}
+
+\DeclareFontShape{T1}{yv1}{db}{it}{
+ <-> \yvi@@scale yv1di8t
+}{}
+
+\DeclareFontShape{T1}{yv1}{m}{sc}{<->ssub * yv1/m/n}{}
+\DeclareFontShape{T1}{yv1}{m}{scit}{<->ssub * yv1/m/sc}{}
+\DeclareFontShape{T1}{yv1}{m}{scsl}{<->ssub * yv1/m/scit}{}
+\DeclareFontShape{T1}{yv1}{m}{si}{<->ssub * yv1/m/scsl}{}
+\DeclareFontShape{T1}{yv1}{m}{sl}{<->ssub * yv1/m/it}{}
+\DeclareFontShape{T1}{yv1}{b}{sc}{<->ssub * yv1/b/n}{}
+\DeclareFontShape{T1}{yv1}{b}{scit}{<->ssub * yv1/b/sc}{}
+\DeclareFontShape{T1}{yv1}{b}{scsl}{<->ssub * yv1/b/scit}{}
+\DeclareFontShape{T1}{yv1}{bx}{scsl}{<->ssub * yv1/b/scsl}{}
+\DeclareFontShape{T1}{yv1}{b}{si}{<->ssub * yv1/b/scsl}{}
+\DeclareFontShape{T1}{yv1}{bx}{si}{<->ssub * yv1/b/si}{}
+\DeclareFontShape{T1}{yv1}{b}{sl}{<->ssub * yv1/b/it}{}
+\DeclareFontShape{T1}{yv1}{eb}{sc}{<->ssub * yv1/eb/n}{}
+\DeclareFontShape{T1}{yv1}{eb}{scit}{<->ssub * yv1/eb/sc}{}
+\DeclareFontShape{T1}{yv1}{eb}{scsl}{<->ssub * yv1/eb/scit}{}
+\DeclareFontShape{T1}{yv1}{eb}{si}{<->ssub * yv1/eb/scsl}{}
+\DeclareFontShape{T1}{yv1}{uc}{n}{<->ssub * yv1/c/n}{}
+\DeclareFontShape{T1}{yv1}{c}{sc}{<->ssub * yv1/c/n}{}
+\DeclareFontShape{T1}{yv1}{uc}{sc}{<->ssub * yv1/c/sc}{}
+\DeclareFontShape{T1}{yv1}{c}{scit}{<->ssub * yv1/c/sc}{}
+\DeclareFontShape{T1}{yv1}{uc}{scit}{<->ssub * yv1/c/scit}{}
+\DeclareFontShape{T1}{yv1}{c}{scsl}{<->ssub * yv1/c/scit}{}
+\DeclareFontShape{T1}{yv1}{uc}{scsl}{<->ssub * yv1/c/scsl}{}
+\DeclareFontShape{T1}{yv1}{c}{si}{<->ssub * yv1/c/scsl}{}
+\DeclareFontShape{T1}{yv1}{uc}{si}{<->ssub * yv1/c/si}{}
+\DeclareFontShape{T1}{yv1}{uc}{it}{<->ssub * yv1/c/it}{}
+\DeclareFontShape{T1}{yv1}{c}{sl}{<->ssub * yv1/c/it}{}
+\DeclareFontShape{T1}{yv1}{uc}{sl}{<->ssub * yv1/c/sl}{}
+\DeclareFontShape{T1}{yv1}{bc}{sc}{<->ssub * yv1/bc/n}{}
+\DeclareFontShape{T1}{yv1}{bc}{scit}{<->ssub * yv1/bc/sc}{}
+\DeclareFontShape{T1}{yv1}{bc}{scsl}{<->ssub * yv1/bc/scit}{}
+\DeclareFontShape{T1}{yv1}{bc}{si}{<->ssub * yv1/bc/scsl}{}
+\DeclareFontShape{T1}{yv1}{bc}{sl}{<->ssub * yv1/bc/it}{}
+\DeclareFontShape{T1}{yv1}{x}{sc}{<->ssub * yv1/x/n}{}
+\DeclareFontShape{T1}{yv1}{x}{scit}{<->ssub * yv1/x/sc}{}
+\DeclareFontShape{T1}{yv1}{x}{scsl}{<->ssub * yv1/x/scit}{}
+\DeclareFontShape{T1}{yv1}{x}{si}{<->ssub * yv1/x/scsl}{}
+\DeclareFontShape{T1}{yv1}{x}{sl}{<->ssub * yv1/x/it}{}
+\DeclareFontShape{T1}{yv1}{l}{sc}{<->ssub * yv1/l/n}{}
+\DeclareFontShape{T1}{yv1}{l}{scit}{<->ssub * yv1/l/sc}{}
+\DeclareFontShape{T1}{yv1}{l}{scsl}{<->ssub * yv1/l/scit}{}
+\DeclareFontShape{T1}{yv1}{l}{si}{<->ssub * yv1/l/scsl}{}
+\DeclareFontShape{T1}{yv1}{l}{sl}{<->ssub * yv1/l/it}{}
+\DeclareFontShape{T1}{yv1}{dbuc}{n}{<->ssub * yv1/db/n}{}
+\DeclareFontShape{T1}{yv1}{db}{sc}{<->ssub * yv1/db/n}{}
+\DeclareFontShape{T1}{yv1}{dbuc}{sc}{<->ssub * yv1/db/sc}{}
+\DeclareFontShape{T1}{yv1}{db}{scit}{<->ssub * yv1/db/sc}{}
+\DeclareFontShape{T1}{yv1}{dbuc}{scit}{<->ssub * yv1/db/scit}{}
+\DeclareFontShape{T1}{yv1}{db}{scsl}{<->ssub * yv1/db/scit}{}
+\DeclareFontShape{T1}{yv1}{dbuc}{scsl}{<->ssub * yv1/db/scsl}{}
+\DeclareFontShape{T1}{yv1}{db}{si}{<->ssub * yv1/db/scsl}{}
+\DeclareFontShape{T1}{yv1}{dbuc}{si}{<->ssub * yv1/db/si}{}
+\DeclareFontShape{T1}{yv1}{dbuc}{it}{<->ssub * yv1/db/it}{}
+\DeclareFontShape{T1}{yv1}{db}{sl}{<->ssub * yv1/db/it}{}
+\DeclareFontShape{T1}{yv1}{dbuc}{sl}{<->ssub * yv1/db/sl}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/t1yv1d.fd b/Master/texmf-dist/tex/latex/venturisadf/t1yv1d.fd
new file mode 100644
index 00000000000..be02e62d1f1
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/t1yv1d.fd
@@ -0,0 +1,135 @@
+%Filename: t1yv1d.fd
+%Created by: tex yv1-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{t1yv1d.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for T1/yv1d.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvi@scale\endcsname\relax
+ \let\yvi@@scale\@empty
+\else
+ \edef\yvi@@scale{s*[\csname yvi@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{yv1d}{}
+
+\DeclareFontShape{T1}{yv1d}{b}{sc}{
+ <-> \yvi@@scale yv1bd8t
+}{}
+
+\DeclareFontShape{T1}{yv1d}{eb}{sc}{
+ <-> \yvi@@scale yv1bd8t
+}{}
+
+\DeclareFontShape{T1}{yv1d}{bc}{sc}{
+ <-> \yvi@@scale yv1bd8t
+}{}
+
+\DeclareFontShape{T1}{yv1d}{db}{sc}{
+ <-> \yvi@@scale yv1bd8t
+}{}
+
+\DeclareFontShape{T1}{yv1d}{b}{n}{
+ <-> \yvi@@scale yv1bd8t
+}{}
+
+\DeclareFontShape{T1}{yv1d}{eb}{n}{
+ <-> \yvi@@scale yv1bd8t
+}{}
+
+\DeclareFontShape{T1}{yv1d}{bc}{n}{
+ <-> \yvi@@scale yv1bd8t
+}{}
+
+\DeclareFontShape{T1}{yv1d}{db}{n}{
+ <-> \yvi@@scale yv1bd8t
+}{}
+
+\DeclareFontShape{T1}{yv1d}{dbuc}{sc}{
+ <-> \yvi@@scale yv1dd8tu
+}{}
+
+\DeclareFontShape{T1}{yv1d}{x}{sc}{
+ <-> \yvi@@scale yv1dd8tu
+}{}
+
+\DeclareFontShape{T1}{yv1d}{m}{sc}{
+ <-> \yvi@@scale yv1dd8tu
+}{}
+
+\DeclareFontShape{T1}{yv1d}{c}{sc}{
+ <-> \yvi@@scale yv1dd8tu
+}{}
+
+\DeclareFontShape{T1}{yv1d}{uc}{sc}{
+ <-> \yvi@@scale yv1dd8tu
+}{}
+
+\DeclareFontShape{T1}{yv1d}{l}{sc}{
+ <-> \yvi@@scale yv1dd8tu
+}{}
+
+\DeclareFontShape{T1}{yv1d}{dbuc}{n}{
+ <-> \yvi@@scale yv1dd8tu
+}{}
+
+\DeclareFontShape{T1}{yv1d}{x}{n}{
+ <-> \yvi@@scale yv1dd8tu
+}{}
+
+\DeclareFontShape{T1}{yv1d}{m}{n}{
+ <-> \yvi@@scale yv1dd8tu
+}{}
+
+\DeclareFontShape{T1}{yv1d}{c}{n}{
+ <-> \yvi@@scale yv1dd8tu
+}{}
+
+\DeclareFontShape{T1}{yv1d}{uc}{n}{
+ <-> \yvi@@scale yv1dd8tu
+}{}
+
+\DeclareFontShape{T1}{yv1d}{l}{n}{
+ <-> \yvi@@scale yv1dd8tu
+}{}
+
+\DeclareFontShape{T1}{yv1d}{bx}{sc}{<->ssub * yv1d/b/sc}{}
+\DeclareFontShape{T1}{yv1d}{b}{scit}{<->ssub * yv1d/b/sc}{}
+\DeclareFontShape{T1}{yv1d}{bx}{scit}{<->ssub * yv1d/b/scit}{}
+\DeclareFontShape{T1}{yv1d}{b}{scsl}{<->ssub * yv1d/b/scit}{}
+\DeclareFontShape{T1}{yv1d}{bx}{scsl}{<->ssub * yv1d/b/scsl}{}
+\DeclareFontShape{T1}{yv1d}{b}{si}{<->ssub * yv1d/b/scsl}{}
+\DeclareFontShape{T1}{yv1d}{bx}{si}{<->ssub * yv1d/b/si}{}
+\DeclareFontShape{T1}{yv1d}{eb}{scit}{<->ssub * yv1d/eb/sc}{}
+\DeclareFontShape{T1}{yv1d}{eb}{scsl}{<->ssub * yv1d/eb/scit}{}
+\DeclareFontShape{T1}{yv1d}{eb}{si}{<->ssub * yv1d/eb/scsl}{}
+\DeclareFontShape{T1}{yv1d}{bc}{scit}{<->ssub * yv1d/bc/sc}{}
+\DeclareFontShape{T1}{yv1d}{bc}{scsl}{<->ssub * yv1d/bc/scit}{}
+\DeclareFontShape{T1}{yv1d}{bc}{si}{<->ssub * yv1d/bc/scsl}{}
+\DeclareFontShape{T1}{yv1d}{db}{scit}{<->ssub * yv1d/db/sc}{}
+\DeclareFontShape{T1}{yv1d}{dbuc}{scit}{<->ssub * yv1d/db/scit}{}
+\DeclareFontShape{T1}{yv1d}{db}{scsl}{<->ssub * yv1d/db/scit}{}
+\DeclareFontShape{T1}{yv1d}{dbuc}{scsl}{<->ssub * yv1d/db/scsl}{}
+\DeclareFontShape{T1}{yv1d}{db}{si}{<->ssub * yv1d/db/scsl}{}
+\DeclareFontShape{T1}{yv1d}{dbuc}{si}{<->ssub * yv1d/db/si}{}
+\DeclareFontShape{T1}{yv1d}{bx}{n}{<->ssub * yv1d/b/n}{}
+\DeclareFontShape{T1}{yv1d}{x}{scit}{<->ssub * yv1d/x/sc}{}
+\DeclareFontShape{T1}{yv1d}{x}{scsl}{<->ssub * yv1d/x/scit}{}
+\DeclareFontShape{T1}{yv1d}{x}{si}{<->ssub * yv1d/x/scsl}{}
+\DeclareFontShape{T1}{yv1d}{m}{scit}{<->ssub * yv1d/m/sc}{}
+\DeclareFontShape{T1}{yv1d}{m}{scsl}{<->ssub * yv1d/m/scit}{}
+\DeclareFontShape{T1}{yv1d}{m}{si}{<->ssub * yv1d/m/scsl}{}
+\DeclareFontShape{T1}{yv1d}{c}{scit}{<->ssub * yv1d/c/sc}{}
+\DeclareFontShape{T1}{yv1d}{uc}{scit}{<->ssub * yv1d/c/scit}{}
+\DeclareFontShape{T1}{yv1d}{c}{scsl}{<->ssub * yv1d/c/scit}{}
+\DeclareFontShape{T1}{yv1d}{uc}{scsl}{<->ssub * yv1d/c/scsl}{}
+\DeclareFontShape{T1}{yv1d}{c}{si}{<->ssub * yv1d/c/scsl}{}
+\DeclareFontShape{T1}{yv1d}{uc}{si}{<->ssub * yv1d/c/si}{}
+\DeclareFontShape{T1}{yv1d}{l}{scit}{<->ssub * yv1d/l/sc}{}
+\DeclareFontShape{T1}{yv1d}{l}{scsl}{<->ssub * yv1d/l/scit}{}
+\DeclareFontShape{T1}{yv1d}{l}{si}{<->ssub * yv1d/l/scsl}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/t1yv2.fd b/Master/texmf-dist/tex/latex/venturisadf/t1yv2.fd
new file mode 100644
index 00000000000..54356fbd1f2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/t1yv2.fd
@@ -0,0 +1,105 @@
+%Filename: t1yv2.fd
+%Created by: tex yv2-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{t1yv2.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for T1/yv2.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvii@scale\endcsname\relax
+ \let\yvii@@scale\@empty
+\else
+ \edef\yvii@@scale{s*[\csname yvii@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{yv2}{}
+
+\DeclareFontShape{T1}{yv2}{m}{n}{
+ <-> \yvii@@scale yv2r8t
+}{}
+
+\DeclareFontShape{T1}{yv2}{m}{it}{
+ <-> \yvii@@scale yv2ri8t
+}{}
+
+\DeclareFontShape{T1}{yv2}{b}{n}{
+ <-> \yvii@@scale yv2b8t
+}{}
+
+\DeclareFontShape{T1}{yv2}{b}{it}{
+ <-> \yvii@@scale yv2bi8t
+}{}
+
+\DeclareFontShape{T1}{yv2}{c}{n}{
+ <-> \yvii@@scale yv2r8tc
+}{}
+
+\DeclareFontShape{T1}{yv2}{c}{it}{
+ <-> \yvii@@scale yv2ri8tc
+}{}
+
+\DeclareFontShape{T1}{yv2}{bc}{n}{
+ <-> \yvii@@scale yv2b8tc
+}{}
+
+\DeclareFontShape{T1}{yv2}{bc}{it}{
+ <-> \yvii@@scale yv2bi8tc
+}{}
+
+\DeclareFontShape{T1}{yv2}{sb}{n}{
+ <-> \yvii@@scale yv2m8t
+}{}
+
+\DeclareFontShape{T1}{yv2}{sb}{it}{
+ <-> \yvii@@scale yv2mi8t
+}{}
+
+\DeclareFontShape{T1}{yv2}{eb}{n}{
+ <-> \yvii@@scale yv2x8t
+}{}
+
+\DeclareFontShape{T1}{yv2}{eb}{it}{
+ <-> \yvii@@scale yv2xi8t
+}{}
+
+\DeclareFontShape{T1}{yv2}{m}{sc}{<->ssub * yv2/m/n}{}
+\DeclareFontShape{T1}{yv2}{m}{scit}{<->ssub * yv2/m/sc}{}
+\DeclareFontShape{T1}{yv2}{m}{scsl}{<->ssub * yv2/m/scit}{}
+\DeclareFontShape{T1}{yv2}{m}{si}{<->ssub * yv2/m/scsl}{}
+\DeclareFontShape{T1}{yv2}{m}{sl}{<->ssub * yv2/m/it}{}
+\DeclareFontShape{T1}{yv2}{bx}{n}{<->ssub * yv2/b/n}{}
+\DeclareFontShape{T1}{yv2}{b}{sc}{<->ssub * yv2/b/n}{}
+\DeclareFontShape{T1}{yv2}{bx}{sc}{<->ssub * yv2/b/sc}{}
+\DeclareFontShape{T1}{yv2}{b}{scit}{<->ssub * yv2/b/sc}{}
+\DeclareFontShape{T1}{yv2}{bx}{scit}{<->ssub * yv2/b/scit}{}
+\DeclareFontShape{T1}{yv2}{b}{scsl}{<->ssub * yv2/b/scit}{}
+\DeclareFontShape{T1}{yv2}{bx}{scsl}{<->ssub * yv2/b/scsl}{}
+\DeclareFontShape{T1}{yv2}{b}{si}{<->ssub * yv2/b/scsl}{}
+\DeclareFontShape{T1}{yv2}{bx}{si}{<->ssub * yv2/b/si}{}
+\DeclareFontShape{T1}{yv2}{bx}{it}{<->ssub * yv2/b/it}{}
+\DeclareFontShape{T1}{yv2}{b}{sl}{<->ssub * yv2/b/it}{}
+\DeclareFontShape{T1}{yv2}{bx}{sl}{<->ssub * yv2/b/sl}{}
+\DeclareFontShape{T1}{yv2}{c}{sc}{<->ssub * yv2/c/n}{}
+\DeclareFontShape{T1}{yv2}{c}{scit}{<->ssub * yv2/c/sc}{}
+\DeclareFontShape{T1}{yv2}{c}{scsl}{<->ssub * yv2/c/scit}{}
+\DeclareFontShape{T1}{yv2}{c}{si}{<->ssub * yv2/c/scsl}{}
+\DeclareFontShape{T1}{yv2}{c}{sl}{<->ssub * yv2/c/it}{}
+\DeclareFontShape{T1}{yv2}{bc}{sc}{<->ssub * yv2/bc/n}{}
+\DeclareFontShape{T1}{yv2}{bc}{scit}{<->ssub * yv2/bc/sc}{}
+\DeclareFontShape{T1}{yv2}{bc}{scsl}{<->ssub * yv2/bc/scit}{}
+\DeclareFontShape{T1}{yv2}{bc}{si}{<->ssub * yv2/bc/scsl}{}
+\DeclareFontShape{T1}{yv2}{bc}{sl}{<->ssub * yv2/bc/it}{}
+\DeclareFontShape{T1}{yv2}{sb}{sc}{<->ssub * yv2/sb/n}{}
+\DeclareFontShape{T1}{yv2}{sb}{scit}{<->ssub * yv2/sb/sc}{}
+\DeclareFontShape{T1}{yv2}{sb}{scsl}{<->ssub * yv2/sb/scit}{}
+\DeclareFontShape{T1}{yv2}{sb}{si}{<->ssub * yv2/sb/scsl}{}
+\DeclareFontShape{T1}{yv2}{sb}{sl}{<->ssub * yv2/sb/it}{}
+\DeclareFontShape{T1}{yv2}{eb}{sc}{<->ssub * yv2/eb/n}{}
+\DeclareFontShape{T1}{yv2}{eb}{scit}{<->ssub * yv2/eb/sc}{}
+\DeclareFontShape{T1}{yv2}{eb}{scsl}{<->ssub * yv2/eb/scit}{}
+\DeclareFontShape{T1}{yv2}{eb}{si}{<->ssub * yv2/eb/scsl}{}
+\DeclareFontShape{T1}{yv2}{eb}{sl}{<->ssub * yv2/eb/it}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/t1yv3.fd b/Master/texmf-dist/tex/latex/venturisadf/t1yv3.fd
new file mode 100644
index 00000000000..e438f9d4b11
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/t1yv3.fd
@@ -0,0 +1,98 @@
+%Filename: t1yv3.fd
+%Created by: tex yv3-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{t1yv3.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for T1/yv3.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yviii@scale\endcsname\relax
+ \let\yviii@@scale\@empty
+\else
+ \edef\yviii@@scale{s*[\csname yviii@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{yv3}{}
+
+\DeclareFontShape{T1}{yv3}{m}{n}{
+ <-> \yviii@@scale yv3r8t
+}{}
+
+\DeclareFontShape{T1}{yv3}{m}{it}{
+ <-> \yviii@@scale yv3ri8t
+}{}
+
+\DeclareFontShape{T1}{yv3}{b}{n}{
+ <-> \yviii@@scale yv3b8t
+}{}
+
+\DeclareFontShape{T1}{yv3}{b}{it}{
+ <-> \yviii@@scale yv3bi8t
+}{}
+
+\DeclareFontShape{T1}{yv3}{c}{n}{
+ <-> \yviii@@scale yv3r8tc
+}{}
+
+\DeclareFontShape{T1}{yv3}{c}{it}{
+ <-> \yviii@@scale yv3ri8tc
+}{}
+
+\DeclareFontShape{T1}{yv3}{x}{n}{
+ <-> \yviii@@scale yv3r8tx
+}{}
+
+\DeclareFontShape{T1}{yv3}{x}{it}{
+ <-> \yviii@@scale yv3ri8tx
+}{}
+
+\DeclareFontShape{T1}{yv3}{bc}{n}{
+ <-> \yviii@@scale yv3b8tc
+}{}
+
+\DeclareFontShape{T1}{yv3}{bc}{it}{
+ <-> \yviii@@scale yv3bi8tc
+}{}
+
+\DeclareFontShape{T1}{yv3}{bx}{n}{
+ <-> \yviii@@scale yv3b8tx
+}{}
+
+\DeclareFontShape{T1}{yv3}{bx}{it}{
+ <-> \yviii@@scale yv3bi8tx
+}{}
+
+\DeclareFontShape{T1}{yv3}{m}{sc}{<->ssub * yv3/m/n}{}
+\DeclareFontShape{T1}{yv3}{m}{scit}{<->ssub * yv3/m/sc}{}
+\DeclareFontShape{T1}{yv3}{m}{scsl}{<->ssub * yv3/m/scit}{}
+\DeclareFontShape{T1}{yv3}{m}{si}{<->ssub * yv3/m/scsl}{}
+\DeclareFontShape{T1}{yv3}{m}{sl}{<->ssub * yv3/m/it}{}
+\DeclareFontShape{T1}{yv3}{b}{sc}{<->ssub * yv3/b/n}{}
+\DeclareFontShape{T1}{yv3}{bx}{sc}{<->ssub * yv3/b/sc}{}
+\DeclareFontShape{T1}{yv3}{b}{scit}{<->ssub * yv3/b/sc}{}
+\DeclareFontShape{T1}{yv3}{bx}{scit}{<->ssub * yv3/b/scit}{}
+\DeclareFontShape{T1}{yv3}{b}{scsl}{<->ssub * yv3/b/scit}{}
+\DeclareFontShape{T1}{yv3}{bx}{scsl}{<->ssub * yv3/b/scsl}{}
+\DeclareFontShape{T1}{yv3}{b}{si}{<->ssub * yv3/b/scsl}{}
+\DeclareFontShape{T1}{yv3}{bx}{si}{<->ssub * yv3/b/si}{}
+\DeclareFontShape{T1}{yv3}{b}{sl}{<->ssub * yv3/b/it}{}
+\DeclareFontShape{T1}{yv3}{bx}{sl}{<->ssub * yv3/b/sl}{}
+\DeclareFontShape{T1}{yv3}{c}{sc}{<->ssub * yv3/c/n}{}
+\DeclareFontShape{T1}{yv3}{c}{scit}{<->ssub * yv3/c/sc}{}
+\DeclareFontShape{T1}{yv3}{c}{scsl}{<->ssub * yv3/c/scit}{}
+\DeclareFontShape{T1}{yv3}{c}{si}{<->ssub * yv3/c/scsl}{}
+\DeclareFontShape{T1}{yv3}{c}{sl}{<->ssub * yv3/c/it}{}
+\DeclareFontShape{T1}{yv3}{x}{sc}{<->ssub * yv3/x/n}{}
+\DeclareFontShape{T1}{yv3}{x}{scit}{<->ssub * yv3/x/sc}{}
+\DeclareFontShape{T1}{yv3}{x}{scsl}{<->ssub * yv3/x/scit}{}
+\DeclareFontShape{T1}{yv3}{x}{si}{<->ssub * yv3/x/scsl}{}
+\DeclareFontShape{T1}{yv3}{x}{sl}{<->ssub * yv3/x/it}{}
+\DeclareFontShape{T1}{yv3}{bc}{sc}{<->ssub * yv3/bc/n}{}
+\DeclareFontShape{T1}{yv3}{bc}{scit}{<->ssub * yv3/bc/sc}{}
+\DeclareFontShape{T1}{yv3}{bc}{scsl}{<->ssub * yv3/bc/scit}{}
+\DeclareFontShape{T1}{yv3}{bc}{si}{<->ssub * yv3/bc/scsl}{}
+\DeclareFontShape{T1}{yv3}{bc}{sl}{<->ssub * yv3/bc/it}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisold/t1yvo.fd b/Master/texmf-dist/tex/latex/venturisadf/t1yvo.fd
index e07ba8ce669..6d7509da27f 100644
--- a/Master/texmf-dist/tex/latex/venturisold/t1yvo.fd
+++ b/Master/texmf-dist/tex/latex/venturisadf/t1yvo.fd
@@ -5,33 +5,46 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1yvo.fd}
- [2010/07/03 Fontinst v1.933 font definitions for T1/yvo.]
+ [2024/08/17 Fontinst v1.933 font definitions for T1/yvo.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvo@scale\endcsname\relax
+ \let\yvo@@scale\@empty
+\else
+ \edef\yvo@@scale{s*[\csname yvo@scale\endcsname]}%
+\fi
\DeclareFontFamily{T1}{yvo}{}
\DeclareFontShape{T1}{yvo}{m}{n}{
- <-> yvor8t
+ <-> \yvo@@scale yvor8t
}{}
\DeclareFontShape{T1}{yvo}{m}{it}{
- <-> yvori8t
+ <-> \yvo@@scale yvori8t
}{}
\DeclareFontShape{T1}{yvo}{b}{n}{
- <-> yvob8t
+ <-> \yvo@@scale yvob8t
}{}
\DeclareFontShape{T1}{yvo}{b}{it}{
- <-> yvobi8t
+ <-> \yvo@@scale yvobi8t
}{}
\DeclareFontShape{T1}{yvo}{m}{sc}{<->sub * yvo/m/n}{}
-\DeclareFontShape{T1}{yvo}{m}{si}{<->ssub * yvo/m/sc}{}
+\DeclareFontShape{T1}{yvo}{m}{scit}{<->ssub * yvo/m/sc}{}
+\DeclareFontShape{T1}{yvo}{m}{scsl}{<->ssub * yvo/m/scit}{}
+\DeclareFontShape{T1}{yvo}{m}{si}{<->ssub * yvo/m/scsl}{}
\DeclareFontShape{T1}{yvo}{m}{sl}{<->ssub * yvo/m/it}{}
\DeclareFontShape{T1}{yvo}{bx}{n}{<->ssub * yvo/b/n}{}
\DeclareFontShape{T1}{yvo}{b}{sc}{<->sub * yvo/b/n}{}
\DeclareFontShape{T1}{yvo}{bx}{sc}{<->ssub * yvo/b/sc}{}
-\DeclareFontShape{T1}{yvo}{b}{si}{<->ssub * yvo/b/sc}{}
+\DeclareFontShape{T1}{yvo}{b}{scit}{<->ssub * yvo/b/sc}{}
+\DeclareFontShape{T1}{yvo}{bx}{scit}{<->ssub * yvo/b/scit}{}
+\DeclareFontShape{T1}{yvo}{b}{scsl}{<->ssub * yvo/b/scit}{}
+\DeclareFontShape{T1}{yvo}{bx}{scsl}{<->ssub * yvo/b/scsl}{}
+\DeclareFontShape{T1}{yvo}{b}{si}{<->ssub * yvo/b/scsl}{}
\DeclareFontShape{T1}{yvo}{bx}{si}{<->ssub * yvo/b/si}{}
\DeclareFontShape{T1}{yvo}{bx}{it}{<->ssub * yvo/b/it}{}
\DeclareFontShape{T1}{yvo}{b}{sl}{<->ssub * yvo/b/it}{}
diff --git a/Master/texmf-dist/tex/latex/venturisold/t1yvoa.fd b/Master/texmf-dist/tex/latex/venturisadf/t1yvoa.fd
index 2e6460e971c..8b91232829f 100644
--- a/Master/texmf-dist/tex/latex/venturisold/t1yvoa.fd
+++ b/Master/texmf-dist/tex/latex/venturisadf/t1yvoa.fd
@@ -5,33 +5,46 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{t1yvoa.fd}
- [2010/07/03 Fontinst v1.933 font definitions for T1/yvoa.]
+ [2024/08/17 Fontinst v1.933 font definitions for T1/yvoa.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvo@scale\endcsname\relax
+ \let\yvo@@scale\@empty
+\else
+ \edef\yvo@@scale{s*[\csname yvo@scale\endcsname]}%
+\fi
\DeclareFontFamily{T1}{yvoa}{}
\DeclareFontShape{T1}{yvoa}{m}{n}{
- <-> yvoar8t
+ <-> \yvo@@scale yvoar8t
}{}
\DeclareFontShape{T1}{yvoa}{m}{it}{
- <-> yvoari8t
+ <-> \yvo@@scale yvoari8t
}{}
\DeclareFontShape{T1}{yvoa}{b}{n}{
- <-> yvoab8t
+ <-> \yvo@@scale yvoab8t
}{}
\DeclareFontShape{T1}{yvoa}{b}{it}{
- <-> yvoabi8t
+ <-> \yvo@@scale yvoabi8t
}{}
\DeclareFontShape{T1}{yvoa}{m}{sc}{<->sub * yvoa/m/n}{}
-\DeclareFontShape{T1}{yvoa}{m}{si}{<->ssub * yvoa/m/sc}{}
+\DeclareFontShape{T1}{yvoa}{m}{scit}{<->ssub * yvoa/m/sc}{}
+\DeclareFontShape{T1}{yvoa}{m}{scsl}{<->ssub * yvoa/m/scit}{}
+\DeclareFontShape{T1}{yvoa}{m}{si}{<->ssub * yvoa/m/scsl}{}
\DeclareFontShape{T1}{yvoa}{m}{sl}{<->ssub * yvoa/m/it}{}
\DeclareFontShape{T1}{yvoa}{bx}{n}{<->ssub * yvoa/b/n}{}
\DeclareFontShape{T1}{yvoa}{b}{sc}{<->sub * yvoa/b/n}{}
\DeclareFontShape{T1}{yvoa}{bx}{sc}{<->ssub * yvoa/b/sc}{}
-\DeclareFontShape{T1}{yvoa}{b}{si}{<->ssub * yvoa/b/sc}{}
+\DeclareFontShape{T1}{yvoa}{b}{scit}{<->ssub * yvoa/b/sc}{}
+\DeclareFontShape{T1}{yvoa}{bx}{scit}{<->ssub * yvoa/b/scit}{}
+\DeclareFontShape{T1}{yvoa}{b}{scsl}{<->ssub * yvoa/b/scit}{}
+\DeclareFontShape{T1}{yvoa}{bx}{scsl}{<->ssub * yvoa/b/scsl}{}
+\DeclareFontShape{T1}{yvoa}{b}{si}{<->ssub * yvoa/b/scsl}{}
\DeclareFontShape{T1}{yvoa}{bx}{si}{<->ssub * yvoa/b/si}{}
\DeclareFontShape{T1}{yvoa}{bx}{it}{<->ssub * yvoa/b/it}{}
\DeclareFontShape{T1}{yvoa}{b}{sl}{<->ssub * yvoa/b/it}{}
diff --git a/Master/texmf-dist/tex/latex/venturisadf/t1yvoad.fd b/Master/texmf-dist/tex/latex/venturisadf/t1yvoad.fd
new file mode 100644
index 00000000000..0c6dc273c37
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/t1yvoad.fd
@@ -0,0 +1,46 @@
+%Filename: t1yvoad.fd
+%Created by: tex yvo-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{t1yvoad.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for T1/yvoad.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvo@scale\endcsname\relax
+ \let\yvo@@scale\@empty
+\else
+ \edef\yvo@@scale{s*[\csname yvo@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{yvoad}{}
+
+\DeclareFontShape{T1}{yvoad}{db}{sc}{
+ <-> \yvo@@scale yvodd8t
+}{}
+
+\DeclareFontShape{T1}{yvoad}{db}{n}{
+ <-> \yvo@@scale yvodd8t
+}{}
+
+\DeclareFontShape{T1}{yvoad}{b}{sc}{<->ssub * yvoad/db/sc}{}
+\DeclareFontShape{T1}{yvoad}{bx}{sc}{<->ssub * yvoad/b/sc}{}
+\DeclareFontShape{T1}{yvoad}{m}{sc}{<->ssub * yvoad/bx/sc}{}
+\DeclareFontShape{T1}{yvoad}{db}{scit}{<->ssub * yvoad/db/sc}{}
+\DeclareFontShape{T1}{yvoad}{b}{scit}{<->ssub * yvoad/db/scit}{}
+\DeclareFontShape{T1}{yvoad}{bx}{scit}{<->ssub * yvoad/b/scit}{}
+\DeclareFontShape{T1}{yvoad}{m}{scit}{<->ssub * yvoad/bx/scit}{}
+\DeclareFontShape{T1}{yvoad}{db}{scsl}{<->ssub * yvoad/db/scit}{}
+\DeclareFontShape{T1}{yvoad}{b}{scsl}{<->ssub * yvoad/db/scsl}{}
+\DeclareFontShape{T1}{yvoad}{bx}{scsl}{<->ssub * yvoad/b/scsl}{}
+\DeclareFontShape{T1}{yvoad}{m}{scsl}{<->ssub * yvoad/bx/scsl}{}
+\DeclareFontShape{T1}{yvoad}{db}{si}{<->ssub * yvoad/db/scsl}{}
+\DeclareFontShape{T1}{yvoad}{b}{si}{<->ssub * yvoad/db/si}{}
+\DeclareFontShape{T1}{yvoad}{bx}{si}{<->ssub * yvoad/b/si}{}
+\DeclareFontShape{T1}{yvoad}{m}{si}{<->ssub * yvoad/bx/si}{}
+\DeclareFontShape{T1}{yvoad}{b}{n}{<->ssub * yvoad/db/n}{}
+\DeclareFontShape{T1}{yvoad}{bx}{n}{<->ssub * yvoad/b/n}{}
+\DeclareFontShape{T1}{yvoad}{m}{n}{<->ssub * yvoad/bx/n}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/t1yvod.fd b/Master/texmf-dist/tex/latex/venturisadf/t1yvod.fd
new file mode 100644
index 00000000000..3f472f51176
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/t1yvod.fd
@@ -0,0 +1,46 @@
+%Filename: t1yvod.fd
+%Created by: tex yvo-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{t1yvod.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for T1/yvod.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvo@scale\endcsname\relax
+ \let\yvo@@scale\@empty
+\else
+ \edef\yvo@@scale{s*[\csname yvo@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{yvod}{}
+
+\DeclareFontShape{T1}{yvod}{db}{sc}{
+ <-> \yvo@@scale yvodd8t
+}{}
+
+\DeclareFontShape{T1}{yvod}{db}{n}{
+ <-> \yvo@@scale yvodd8t
+}{}
+
+\DeclareFontShape{T1}{yvod}{b}{sc}{<->ssub * yvod/db/sc}{}
+\DeclareFontShape{T1}{yvod}{bx}{sc}{<->ssub * yvod/b/sc}{}
+\DeclareFontShape{T1}{yvod}{m}{sc}{<->ssub * yvod/bx/sc}{}
+\DeclareFontShape{T1}{yvod}{db}{scit}{<->ssub * yvod/db/sc}{}
+\DeclareFontShape{T1}{yvod}{b}{scit}{<->ssub * yvod/db/scit}{}
+\DeclareFontShape{T1}{yvod}{bx}{scit}{<->ssub * yvod/b/scit}{}
+\DeclareFontShape{T1}{yvod}{m}{scit}{<->ssub * yvod/bx/scit}{}
+\DeclareFontShape{T1}{yvod}{db}{scsl}{<->ssub * yvod/db/scit}{}
+\DeclareFontShape{T1}{yvod}{b}{scsl}{<->ssub * yvod/db/scsl}{}
+\DeclareFontShape{T1}{yvod}{bx}{scsl}{<->ssub * yvod/b/scsl}{}
+\DeclareFontShape{T1}{yvod}{m}{scsl}{<->ssub * yvod/bx/scsl}{}
+\DeclareFontShape{T1}{yvod}{db}{si}{<->ssub * yvod/db/scsl}{}
+\DeclareFontShape{T1}{yvod}{b}{si}{<->ssub * yvod/db/si}{}
+\DeclareFontShape{T1}{yvod}{bx}{si}{<->ssub * yvod/b/si}{}
+\DeclareFontShape{T1}{yvod}{m}{si}{<->ssub * yvod/bx/si}{}
+\DeclareFontShape{T1}{yvod}{b}{n}{<->ssub * yvod/db/n}{}
+\DeclareFontShape{T1}{yvod}{bx}{n}{<->ssub * yvod/b/n}{}
+\DeclareFontShape{T1}{yvod}{m}{n}{<->ssub * yvod/bx/n}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/t1yvt.fd b/Master/texmf-dist/tex/latex/venturisadf/t1yvt.fd
new file mode 100644
index 00000000000..038a54dbcf2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/t1yvt.fd
@@ -0,0 +1,116 @@
+%Filename: t1yvt.fd
+%Created by: tex yvt-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{t1yvt.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for T1/yvt.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvt@scale\endcsname\relax
+ \let\yvt@@scale\@empty
+\else
+ \edef\yvt@@scale{s*[\csname yvt@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{yvt}{}
+
+\DeclareFontShape{T1}{yvt}{m}{n}{
+ <-> \yvt@@scale yvtr8t
+}{}
+
+\DeclareFontShape{T1}{yvt}{m}{sc}{
+ <-> \yvt@@scale yvtrc8t
+}{}
+
+\DeclareFontShape{T1}{yvt}{m}{scit}{
+ <-> \yvt@@scale yvtrci8t
+}{}
+
+\DeclareFontShape{T1}{yvt}{m}{it}{
+ <-> \yvt@@scale yvtri8t
+}{}
+
+\DeclareFontShape{T1}{yvt}{b}{n}{
+ <-> \yvt@@scale yvtb8t
+}{}
+
+\DeclareFontShape{T1}{yvt}{b}{sc}{
+ <-> \yvt@@scale yvtbc8t
+}{}
+
+\DeclareFontShape{T1}{yvt}{b}{scit}{
+ <-> \yvt@@scale yvtbci8t
+}{}
+
+\DeclareFontShape{T1}{yvt}{b}{it}{
+ <-> \yvt@@scale yvtbi8t
+}{}
+
+\DeclareFontShape{T1}{yvt}{eb}{n}{
+ <-> \yvt@@scale yvth8t
+}{}
+
+\DeclareFontShape{T1}{yvt}{eb}{it}{
+ <-> \yvt@@scale yvthi8t
+}{}
+
+\DeclareFontShape{T1}{yvt}{c}{n}{
+ <-> \yvt@@scale yvtr8tc
+}{}
+
+\DeclareFontShape{T1}{yvt}{c}{sc}{
+ <-> \yvt@@scale yvtrc8tc
+}{}
+
+\DeclareFontShape{T1}{yvt}{c}{scit}{
+ <-> \yvt@@scale yvtrci8tc
+}{}
+
+\DeclareFontShape{T1}{yvt}{c}{it}{
+ <-> \yvt@@scale yvtri8tc
+}{}
+
+\DeclareFontShape{T1}{yvt}{bc}{n}{
+ <-> \yvt@@scale yvtb8tc
+}{}
+
+\DeclareFontShape{T1}{yvt}{bc}{sc}{
+ <-> \yvt@@scale yvtbc8tc
+}{}
+
+\DeclareFontShape{T1}{yvt}{bc}{scit}{
+ <-> \yvt@@scale yvtbci8tc
+}{}
+
+\DeclareFontShape{T1}{yvt}{bc}{it}{
+ <-> \yvt@@scale yvtbi8tc
+}{}
+
+\DeclareFontShape{T1}{yvt}{m}{scsl}{<->ssub * yvt/m/scit}{}
+\DeclareFontShape{T1}{yvt}{m}{si}{<->ssub * yvt/m/scsl}{}
+\DeclareFontShape{T1}{yvt}{m}{sl}{<->ssub * yvt/m/it}{}
+\DeclareFontShape{T1}{yvt}{bx}{n}{<->ssub * yvt/b/n}{}
+\DeclareFontShape{T1}{yvt}{bx}{sc}{<->ssub * yvt/b/sc}{}
+\DeclareFontShape{T1}{yvt}{bx}{scit}{<->ssub * yvt/b/scit}{}
+\DeclareFontShape{T1}{yvt}{b}{scsl}{<->ssub * yvt/b/scit}{}
+\DeclareFontShape{T1}{yvt}{bx}{scsl}{<->ssub * yvt/b/scsl}{}
+\DeclareFontShape{T1}{yvt}{b}{si}{<->ssub * yvt/b/scsl}{}
+\DeclareFontShape{T1}{yvt}{bx}{si}{<->ssub * yvt/b/si}{}
+\DeclareFontShape{T1}{yvt}{bx}{it}{<->ssub * yvt/b/it}{}
+\DeclareFontShape{T1}{yvt}{b}{sl}{<->ssub * yvt/b/it}{}
+\DeclareFontShape{T1}{yvt}{bx}{sl}{<->ssub * yvt/b/sl}{}
+\DeclareFontShape{T1}{yvt}{eb}{sc}{<->ssub * yvt/eb/n}{}
+\DeclareFontShape{T1}{yvt}{eb}{scit}{<->ssub * yvt/eb/sc}{}
+\DeclareFontShape{T1}{yvt}{eb}{scsl}{<->ssub * yvt/eb/scit}{}
+\DeclareFontShape{T1}{yvt}{eb}{si}{<->ssub * yvt/eb/scsl}{}
+\DeclareFontShape{T1}{yvt}{eb}{sl}{<->ssub * yvt/eb/it}{}
+\DeclareFontShape{T1}{yvt}{c}{scsl}{<->ssub * yvt/c/scit}{}
+\DeclareFontShape{T1}{yvt}{c}{si}{<->ssub * yvt/c/scsl}{}
+\DeclareFontShape{T1}{yvt}{c}{sl}{<->ssub * yvt/c/it}{}
+\DeclareFontShape{T1}{yvt}{bc}{scsl}{<->ssub * yvt/bc/scit}{}
+\DeclareFontShape{T1}{yvt}{bc}{si}{<->ssub * yvt/bc/scsl}{}
+\DeclareFontShape{T1}{yvt}{bc}{sl}{<->ssub * yvt/bc/it}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/t1yvtajw.fd b/Master/texmf-dist/tex/latex/venturisadf/t1yvtajw.fd
new file mode 100644
index 00000000000..eb45bd4359a
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/t1yvtajw.fd
@@ -0,0 +1,103 @@
+%Filename: t1yvtajw.fd
+%Created by: tex yvt-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{t1yvtajw.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for T1/yvtajw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvt@scale\endcsname\relax
+ \let\yvt@@scale\@empty
+\else
+ \edef\yvt@@scale{s*[\csname yvt@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{yvtajw}{}
+
+\DeclareFontShape{T1}{yvtajw}{m}{n}{
+ <-> \yvt@@scale yvtrajw8t
+}{}
+
+\DeclareFontShape{T1}{yvtajw}{m}{it}{
+ <-> \yvt@@scale yvtrijw8t
+}{}
+
+\DeclareFontShape{T1}{yvtajw}{m}{sc}{
+ <-> \yvt@@scale yvtrcjw8t
+}{}
+
+\DeclareFontShape{T1}{yvtajw}{m}{scit}{
+ <-> \yvt@@scale yvtrcijw8t
+}{}
+
+\DeclareFontShape{T1}{yvtajw}{b}{n}{
+ <-> \yvt@@scale yvtbjw8t
+}{}
+
+\DeclareFontShape{T1}{yvtajw}{b}{it}{
+ <-> \yvt@@scale yvtbijw8t
+}{}
+
+\DeclareFontShape{T1}{yvtajw}{b}{sc}{
+ <-> \yvt@@scale yvtbcjw8t
+}{}
+
+\DeclareFontShape{T1}{yvtajw}{b}{scit}{
+ <-> \yvt@@scale yvtbcijw8t
+}{}
+
+\DeclareFontShape{T1}{yvtajw}{c}{n}{
+ <-> \yvt@@scale yvtrjw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtajw}{c}{it}{
+ <-> \yvt@@scale yvtrijw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtajw}{c}{sc}{
+ <-> \yvt@@scale yvtrcjw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtajw}{c}{scit}{
+ <-> \yvt@@scale yvtrcijw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtajw}{bc}{n}{
+ <-> \yvt@@scale yvtbjw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtajw}{bc}{it}{
+ <-> \yvt@@scale yvtbijw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtajw}{bc}{sc}{
+ <-> \yvt@@scale yvtbcjw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtajw}{bc}{scit}{
+ <-> \yvt@@scale yvtbcijw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtajw}{m}{sl}{<->ssub * yvtajw/m/it}{}
+\DeclareFontShape{T1}{yvtajw}{m}{scsl}{<->ssub * yvtajw/m/scit}{}
+\DeclareFontShape{T1}{yvtajw}{m}{si}{<->ssub * yvtajw/m/scsl}{}
+\DeclareFontShape{T1}{yvtajw}{bx}{n}{<->ssub * yvtajw/b/n}{}
+\DeclareFontShape{T1}{yvtajw}{bx}{it}{<->ssub * yvtajw/b/it}{}
+\DeclareFontShape{T1}{yvtajw}{b}{sl}{<->ssub * yvtajw/b/it}{}
+\DeclareFontShape{T1}{yvtajw}{bx}{sl}{<->ssub * yvtajw/b/sl}{}
+\DeclareFontShape{T1}{yvtajw}{bx}{sc}{<->ssub * yvtajw/b/sc}{}
+\DeclareFontShape{T1}{yvtajw}{bx}{scit}{<->ssub * yvtajw/b/scit}{}
+\DeclareFontShape{T1}{yvtajw}{b}{scsl}{<->ssub * yvtajw/b/scit}{}
+\DeclareFontShape{T1}{yvtajw}{bx}{scsl}{<->ssub * yvtajw/b/scsl}{}
+\DeclareFontShape{T1}{yvtajw}{b}{si}{<->ssub * yvtajw/b/scsl}{}
+\DeclareFontShape{T1}{yvtajw}{bx}{si}{<->ssub * yvtajw/b/si}{}
+\DeclareFontShape{T1}{yvtajw}{c}{sl}{<->ssub * yvtajw/c/it}{}
+\DeclareFontShape{T1}{yvtajw}{c}{scsl}{<->ssub * yvtajw/c/scit}{}
+\DeclareFontShape{T1}{yvtajw}{c}{si}{<->ssub * yvtajw/c/scsl}{}
+\DeclareFontShape{T1}{yvtajw}{bc}{sl}{<->ssub * yvtajw/bc/it}{}
+\DeclareFontShape{T1}{yvtajw}{bc}{scsl}{<->ssub * yvtajw/bc/scit}{}
+\DeclareFontShape{T1}{yvtajw}{bc}{si}{<->ssub * yvtajw/bc/scsl}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/t1yvtaw.fd b/Master/texmf-dist/tex/latex/venturisadf/t1yvtaw.fd
new file mode 100644
index 00000000000..f3094f3a442
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/t1yvtaw.fd
@@ -0,0 +1,103 @@
+%Filename: t1yvtaw.fd
+%Created by: tex yvt-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{t1yvtaw.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for T1/yvtaw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvt@scale\endcsname\relax
+ \let\yvt@@scale\@empty
+\else
+ \edef\yvt@@scale{s*[\csname yvt@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{yvtaw}{}
+
+\DeclareFontShape{T1}{yvtaw}{m}{n}{
+ <-> \yvt@@scale yvtraw8t
+}{}
+
+\DeclareFontShape{T1}{yvtaw}{m}{sc}{
+ <-> \yvt@@scale yvtrcw8t
+}{}
+
+\DeclareFontShape{T1}{yvtaw}{m}{scit}{
+ <-> \yvt@@scale yvtrciw8t
+}{}
+
+\DeclareFontShape{T1}{yvtaw}{m}{it}{
+ <-> \yvt@@scale yvtriw8t
+}{}
+
+\DeclareFontShape{T1}{yvtaw}{b}{n}{
+ <-> \yvt@@scale yvtbw8t
+}{}
+
+\DeclareFontShape{T1}{yvtaw}{b}{sc}{
+ <-> \yvt@@scale yvtbcw8t
+}{}
+
+\DeclareFontShape{T1}{yvtaw}{b}{scit}{
+ <-> \yvt@@scale yvtbciw8t
+}{}
+
+\DeclareFontShape{T1}{yvtaw}{b}{it}{
+ <-> \yvt@@scale yvtbiw8t
+}{}
+
+\DeclareFontShape{T1}{yvtaw}{c}{n}{
+ <-> \yvt@@scale yvtrw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtaw}{c}{sc}{
+ <-> \yvt@@scale yvtrcw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtaw}{c}{scit}{
+ <-> \yvt@@scale yvtrciw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtaw}{c}{it}{
+ <-> \yvt@@scale yvtriw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtaw}{bc}{n}{
+ <-> \yvt@@scale yvtbw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtaw}{bc}{sc}{
+ <-> \yvt@@scale yvtbcw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtaw}{bc}{scit}{
+ <-> \yvt@@scale yvtbciw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtaw}{bc}{it}{
+ <-> \yvt@@scale yvtbiw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtaw}{m}{scsl}{<->ssub * yvtaw/m/scit}{}
+\DeclareFontShape{T1}{yvtaw}{m}{si}{<->ssub * yvtaw/m/scsl}{}
+\DeclareFontShape{T1}{yvtaw}{m}{sl}{<->ssub * yvtaw/m/it}{}
+\DeclareFontShape{T1}{yvtaw}{bx}{n}{<->ssub * yvtaw/b/n}{}
+\DeclareFontShape{T1}{yvtaw}{bx}{sc}{<->ssub * yvtaw/b/sc}{}
+\DeclareFontShape{T1}{yvtaw}{bx}{scit}{<->ssub * yvtaw/b/scit}{}
+\DeclareFontShape{T1}{yvtaw}{b}{scsl}{<->ssub * yvtaw/b/scit}{}
+\DeclareFontShape{T1}{yvtaw}{bx}{scsl}{<->ssub * yvtaw/b/scsl}{}
+\DeclareFontShape{T1}{yvtaw}{b}{si}{<->ssub * yvtaw/b/scsl}{}
+\DeclareFontShape{T1}{yvtaw}{bx}{si}{<->ssub * yvtaw/b/si}{}
+\DeclareFontShape{T1}{yvtaw}{bx}{it}{<->ssub * yvtaw/b/it}{}
+\DeclareFontShape{T1}{yvtaw}{b}{sl}{<->ssub * yvtaw/b/it}{}
+\DeclareFontShape{T1}{yvtaw}{bx}{sl}{<->ssub * yvtaw/b/sl}{}
+\DeclareFontShape{T1}{yvtaw}{c}{scsl}{<->ssub * yvtaw/c/scit}{}
+\DeclareFontShape{T1}{yvtaw}{c}{si}{<->ssub * yvtaw/c/scsl}{}
+\DeclareFontShape{T1}{yvtaw}{c}{sl}{<->ssub * yvtaw/c/it}{}
+\DeclareFontShape{T1}{yvtaw}{bc}{scsl}{<->ssub * yvtaw/bc/scit}{}
+\DeclareFontShape{T1}{yvtaw}{bc}{si}{<->ssub * yvtaw/bc/scsl}{}
+\DeclareFontShape{T1}{yvtaw}{bc}{sl}{<->ssub * yvtaw/bc/it}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/t1yvtd.fd b/Master/texmf-dist/tex/latex/venturisadf/t1yvtd.fd
new file mode 100644
index 00000000000..6700063f3f0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/t1yvtd.fd
@@ -0,0 +1,101 @@
+%Filename: t1yvtd.fd
+%Created by: tex yvt-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{t1yvtd.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for T1/yvtd.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvt@scale\endcsname\relax
+ \let\yvt@@scale\@empty
+\else
+ \edef\yvt@@scale{s*[\csname yvt@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{yvtd}{}
+
+\DeclareFontShape{T1}{yvtd}{bc}{sc}{
+ <-> \yvt@@scale yvtbd8tc
+}{}
+
+\DeclareFontShape{T1}{yvtd}{c}{sc}{
+ <-> \yvt@@scale yvtbd8tc
+}{}
+
+\DeclareFontShape{T1}{yvtd}{m}{sc}{
+ <-> \yvt@@scale yvtbd8tc
+}{}
+
+\DeclareFontShape{T1}{yvtd}{b}{sc}{
+ <-> \yvt@@scale yvtbd8tc
+}{}
+
+\DeclareFontShape{T1}{yvtd}{eb}{sc}{
+ <-> \yvt@@scale yvtbd8tc
+}{}
+
+\DeclareFontShape{T1}{yvtd}{m}{ol}{
+ <-> \yvt@@scale yvtrdl8t
+}{}
+
+\DeclareFontShape{T1}{yvtd}{c}{ol}{
+ <-> \yvt@@scale yvtrdl8t
+}{}
+
+\DeclareFontShape{T1}{yvtd}{bc}{ol}{
+ <-> \yvt@@scale yvtrdl8t
+}{}
+
+\DeclareFontShape{T1}{yvtd}{b}{ol}{
+ <-> \yvt@@scale yvtrdl8t
+}{}
+
+\DeclareFontShape{T1}{yvtd}{eb}{ol}{
+ <-> \yvt@@scale yvtrdl8t
+}{}
+
+\DeclareFontShape{T1}{yvtd}{c}{n}{
+ <-> \yvt@@scale yvtbd8tc
+}{}
+
+\DeclareFontShape{T1}{yvtd}{m}{n}{
+ <-> \yvt@@scale yvtbd8tc
+}{}
+
+\DeclareFontShape{T1}{yvtd}{bc}{n}{
+ <-> \yvt@@scale yvtbd8tc
+}{}
+
+\DeclareFontShape{T1}{yvtd}{b}{n}{
+ <-> \yvt@@scale yvtbd8tc
+}{}
+
+\DeclareFontShape{T1}{yvtd}{eb}{n}{
+ <-> \yvt@@scale yvtbd8tc
+}{}
+
+\DeclareFontShape{T1}{yvtd}{bc}{scit}{<->ssub * yvtd/bc/sc}{}
+\DeclareFontShape{T1}{yvtd}{bc}{scsl}{<->ssub * yvtd/bc/scit}{}
+\DeclareFontShape{T1}{yvtd}{bc}{si}{<->ssub * yvtd/bc/scsl}{}
+\DeclareFontShape{T1}{yvtd}{c}{scit}{<->ssub * yvtd/c/sc}{}
+\DeclareFontShape{T1}{yvtd}{c}{scsl}{<->ssub * yvtd/c/scit}{}
+\DeclareFontShape{T1}{yvtd}{c}{si}{<->ssub * yvtd/c/scsl}{}
+\DeclareFontShape{T1}{yvtd}{m}{scit}{<->ssub * yvtd/m/sc}{}
+\DeclareFontShape{T1}{yvtd}{m}{scsl}{<->ssub * yvtd/m/scit}{}
+\DeclareFontShape{T1}{yvtd}{m}{si}{<->ssub * yvtd/m/scsl}{}
+\DeclareFontShape{T1}{yvtd}{bx}{sc}{<->ssub * yvtd/b/sc}{}
+\DeclareFontShape{T1}{yvtd}{b}{scit}{<->ssub * yvtd/b/sc}{}
+\DeclareFontShape{T1}{yvtd}{bx}{scit}{<->ssub * yvtd/b/scit}{}
+\DeclareFontShape{T1}{yvtd}{b}{scsl}{<->ssub * yvtd/b/scit}{}
+\DeclareFontShape{T1}{yvtd}{bx}{scsl}{<->ssub * yvtd/b/scsl}{}
+\DeclareFontShape{T1}{yvtd}{b}{si}{<->ssub * yvtd/b/scsl}{}
+\DeclareFontShape{T1}{yvtd}{bx}{si}{<->ssub * yvtd/b/si}{}
+\DeclareFontShape{T1}{yvtd}{eb}{scit}{<->ssub * yvtd/eb/sc}{}
+\DeclareFontShape{T1}{yvtd}{eb}{scsl}{<->ssub * yvtd/eb/scit}{}
+\DeclareFontShape{T1}{yvtd}{eb}{si}{<->ssub * yvtd/eb/scsl}{}
+\DeclareFontShape{T1}{yvtd}{bx}{ol}{<->ssub * yvtd/b/ol}{}
+\DeclareFontShape{T1}{yvtd}{bx}{n}{<->ssub * yvtd/b/n}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/t1yvtj.fd b/Master/texmf-dist/tex/latex/venturisadf/t1yvtj.fd
new file mode 100644
index 00000000000..03521590fbb
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/t1yvtj.fd
@@ -0,0 +1,103 @@
+%Filename: t1yvtj.fd
+%Created by: tex yvt-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{t1yvtj.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for T1/yvtj.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvt@scale\endcsname\relax
+ \let\yvt@@scale\@empty
+\else
+ \edef\yvt@@scale{s*[\csname yvt@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{yvtj}{}
+
+\DeclareFontShape{T1}{yvtj}{m}{n}{
+ <-> \yvt@@scale yvtrj8t
+}{}
+
+\DeclareFontShape{T1}{yvtj}{m}{sc}{
+ <-> \yvt@@scale yvtrcj8t
+}{}
+
+\DeclareFontShape{T1}{yvtj}{m}{scit}{
+ <-> \yvt@@scale yvtrcij8t
+}{}
+
+\DeclareFontShape{T1}{yvtj}{m}{it}{
+ <-> \yvt@@scale yvtrij8t
+}{}
+
+\DeclareFontShape{T1}{yvtj}{b}{n}{
+ <-> \yvt@@scale yvtbj8t
+}{}
+
+\DeclareFontShape{T1}{yvtj}{b}{sc}{
+ <-> \yvt@@scale yvtbcj8t
+}{}
+
+\DeclareFontShape{T1}{yvtj}{b}{scit}{
+ <-> \yvt@@scale yvtbcij8t
+}{}
+
+\DeclareFontShape{T1}{yvtj}{b}{it}{
+ <-> \yvt@@scale yvtbij8t
+}{}
+
+\DeclareFontShape{T1}{yvtj}{c}{n}{
+ <-> \yvt@@scale yvtrj8tc
+}{}
+
+\DeclareFontShape{T1}{yvtj}{c}{sc}{
+ <-> \yvt@@scale yvtrcj8tc
+}{}
+
+\DeclareFontShape{T1}{yvtj}{c}{scit}{
+ <-> \yvt@@scale yvtrcij8tc
+}{}
+
+\DeclareFontShape{T1}{yvtj}{c}{it}{
+ <-> \yvt@@scale yvtrij8tc
+}{}
+
+\DeclareFontShape{T1}{yvtj}{bc}{n}{
+ <-> \yvt@@scale yvtbj8tc
+}{}
+
+\DeclareFontShape{T1}{yvtj}{bc}{sc}{
+ <-> \yvt@@scale yvtbcj8tc
+}{}
+
+\DeclareFontShape{T1}{yvtj}{bc}{scit}{
+ <-> \yvt@@scale yvtbcij8tc
+}{}
+
+\DeclareFontShape{T1}{yvtj}{bc}{it}{
+ <-> \yvt@@scale yvtbij8tc
+}{}
+
+\DeclareFontShape{T1}{yvtj}{m}{scsl}{<->ssub * yvtj/m/scit}{}
+\DeclareFontShape{T1}{yvtj}{m}{si}{<->ssub * yvtj/m/scsl}{}
+\DeclareFontShape{T1}{yvtj}{m}{sl}{<->ssub * yvtj/m/it}{}
+\DeclareFontShape{T1}{yvtj}{bx}{n}{<->ssub * yvtj/b/n}{}
+\DeclareFontShape{T1}{yvtj}{bx}{sc}{<->ssub * yvtj/b/sc}{}
+\DeclareFontShape{T1}{yvtj}{bx}{scit}{<->ssub * yvtj/b/scit}{}
+\DeclareFontShape{T1}{yvtj}{b}{scsl}{<->ssub * yvtj/b/scit}{}
+\DeclareFontShape{T1}{yvtj}{bx}{scsl}{<->ssub * yvtj/b/scsl}{}
+\DeclareFontShape{T1}{yvtj}{b}{si}{<->ssub * yvtj/b/scsl}{}
+\DeclareFontShape{T1}{yvtj}{bx}{si}{<->ssub * yvtj/b/si}{}
+\DeclareFontShape{T1}{yvtj}{bx}{it}{<->ssub * yvtj/b/it}{}
+\DeclareFontShape{T1}{yvtj}{b}{sl}{<->ssub * yvtj/b/it}{}
+\DeclareFontShape{T1}{yvtj}{bx}{sl}{<->ssub * yvtj/b/sl}{}
+\DeclareFontShape{T1}{yvtj}{c}{scsl}{<->ssub * yvtj/c/scit}{}
+\DeclareFontShape{T1}{yvtj}{c}{si}{<->ssub * yvtj/c/scsl}{}
+\DeclareFontShape{T1}{yvtj}{c}{sl}{<->ssub * yvtj/c/it}{}
+\DeclareFontShape{T1}{yvtj}{bc}{scsl}{<->ssub * yvtj/bc/scit}{}
+\DeclareFontShape{T1}{yvtj}{bc}{si}{<->ssub * yvtj/bc/scsl}{}
+\DeclareFontShape{T1}{yvtj}{bc}{sl}{<->ssub * yvtj/bc/it}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/t1yvtjw.fd b/Master/texmf-dist/tex/latex/venturisadf/t1yvtjw.fd
new file mode 100644
index 00000000000..7f953d25dc3
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/t1yvtjw.fd
@@ -0,0 +1,103 @@
+%Filename: t1yvtjw.fd
+%Created by: tex yvt-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{t1yvtjw.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for T1/yvtjw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvt@scale\endcsname\relax
+ \let\yvt@@scale\@empty
+\else
+ \edef\yvt@@scale{s*[\csname yvt@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{yvtjw}{}
+
+\DeclareFontShape{T1}{yvtjw}{m}{n}{
+ <-> \yvt@@scale yvtrjw8t
+}{}
+
+\DeclareFontShape{T1}{yvtjw}{m}{sc}{
+ <-> \yvt@@scale yvtrcjw8t
+}{}
+
+\DeclareFontShape{T1}{yvtjw}{m}{scit}{
+ <-> \yvt@@scale yvtrcijw8t
+}{}
+
+\DeclareFontShape{T1}{yvtjw}{m}{it}{
+ <-> \yvt@@scale yvtrijw8t
+}{}
+
+\DeclareFontShape{T1}{yvtjw}{b}{n}{
+ <-> \yvt@@scale yvtbjw8t
+}{}
+
+\DeclareFontShape{T1}{yvtjw}{b}{it}{
+ <-> \yvt@@scale yvtbijw8t
+}{}
+
+\DeclareFontShape{T1}{yvtjw}{b}{sc}{
+ <-> \yvt@@scale yvtbcjw8t
+}{}
+
+\DeclareFontShape{T1}{yvtjw}{b}{scit}{
+ <-> \yvt@@scale yvtbcijw8t
+}{}
+
+\DeclareFontShape{T1}{yvtjw}{c}{n}{
+ <-> \yvt@@scale yvtrjw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtjw}{c}{sc}{
+ <-> \yvt@@scale yvtrcjw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtjw}{c}{scit}{
+ <-> \yvt@@scale yvtrcijw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtjw}{c}{it}{
+ <-> \yvt@@scale yvtrijw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtjw}{bc}{n}{
+ <-> \yvt@@scale yvtbjw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtjw}{bc}{it}{
+ <-> \yvt@@scale yvtbijw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtjw}{bc}{sc}{
+ <-> \yvt@@scale yvtbcjw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtjw}{bc}{scit}{
+ <-> \yvt@@scale yvtbcijw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtjw}{m}{scsl}{<->ssub * yvtjw/m/scit}{}
+\DeclareFontShape{T1}{yvtjw}{m}{si}{<->ssub * yvtjw/m/scsl}{}
+\DeclareFontShape{T1}{yvtjw}{m}{sl}{<->ssub * yvtjw/m/it}{}
+\DeclareFontShape{T1}{yvtjw}{bx}{n}{<->ssub * yvtjw/b/n}{}
+\DeclareFontShape{T1}{yvtjw}{bx}{it}{<->ssub * yvtjw/b/it}{}
+\DeclareFontShape{T1}{yvtjw}{b}{sl}{<->ssub * yvtjw/b/it}{}
+\DeclareFontShape{T1}{yvtjw}{bx}{sl}{<->ssub * yvtjw/b/sl}{}
+\DeclareFontShape{T1}{yvtjw}{bx}{sc}{<->ssub * yvtjw/b/sc}{}
+\DeclareFontShape{T1}{yvtjw}{bx}{scit}{<->ssub * yvtjw/b/scit}{}
+\DeclareFontShape{T1}{yvtjw}{b}{scsl}{<->ssub * yvtjw/b/scit}{}
+\DeclareFontShape{T1}{yvtjw}{bx}{scsl}{<->ssub * yvtjw/b/scsl}{}
+\DeclareFontShape{T1}{yvtjw}{b}{si}{<->ssub * yvtjw/b/scsl}{}
+\DeclareFontShape{T1}{yvtjw}{bx}{si}{<->ssub * yvtjw/b/si}{}
+\DeclareFontShape{T1}{yvtjw}{c}{scsl}{<->ssub * yvtjw/c/scit}{}
+\DeclareFontShape{T1}{yvtjw}{c}{si}{<->ssub * yvtjw/c/scsl}{}
+\DeclareFontShape{T1}{yvtjw}{c}{sl}{<->ssub * yvtjw/c/it}{}
+\DeclareFontShape{T1}{yvtjw}{bc}{sl}{<->ssub * yvtjw/bc/it}{}
+\DeclareFontShape{T1}{yvtjw}{bc}{scsl}{<->ssub * yvtjw/bc/scit}{}
+\DeclareFontShape{T1}{yvtjw}{bc}{si}{<->ssub * yvtjw/bc/scsl}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/t1yvtw.fd b/Master/texmf-dist/tex/latex/venturisadf/t1yvtw.fd
new file mode 100644
index 00000000000..22ce518563e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/t1yvtw.fd
@@ -0,0 +1,103 @@
+%Filename: t1yvtw.fd
+%Created by: tex yvt-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{t1yvtw.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for T1/yvtw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvt@scale\endcsname\relax
+ \let\yvt@@scale\@empty
+\else
+ \edef\yvt@@scale{s*[\csname yvt@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{T1}{yvtw}{}
+
+\DeclareFontShape{T1}{yvtw}{m}{n}{
+ <-> \yvt@@scale yvtrw8t
+}{}
+
+\DeclareFontShape{T1}{yvtw}{m}{it}{
+ <-> \yvt@@scale yvtriw8t
+}{}
+
+\DeclareFontShape{T1}{yvtw}{m}{sc}{
+ <-> \yvt@@scale yvtrcw8t
+}{}
+
+\DeclareFontShape{T1}{yvtw}{m}{scit}{
+ <-> \yvt@@scale yvtrciw8t
+}{}
+
+\DeclareFontShape{T1}{yvtw}{b}{n}{
+ <-> \yvt@@scale yvtbw8t
+}{}
+
+\DeclareFontShape{T1}{yvtw}{b}{it}{
+ <-> \yvt@@scale yvtbiw8t
+}{}
+
+\DeclareFontShape{T1}{yvtw}{b}{sc}{
+ <-> \yvt@@scale yvtbcw8t
+}{}
+
+\DeclareFontShape{T1}{yvtw}{b}{scit}{
+ <-> \yvt@@scale yvtbciw8t
+}{}
+
+\DeclareFontShape{T1}{yvtw}{c}{n}{
+ <-> \yvt@@scale yvtrw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtw}{c}{it}{
+ <-> \yvt@@scale yvtriw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtw}{c}{sc}{
+ <-> \yvt@@scale yvtrcw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtw}{c}{scit}{
+ <-> \yvt@@scale yvtrciw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtw}{bc}{n}{
+ <-> \yvt@@scale yvtbw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtw}{bc}{it}{
+ <-> \yvt@@scale yvtbiw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtw}{bc}{sc}{
+ <-> \yvt@@scale yvtbcw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtw}{bc}{scit}{
+ <-> \yvt@@scale yvtbciw8tc
+}{}
+
+\DeclareFontShape{T1}{yvtw}{m}{sl}{<->ssub * yvtw/m/it}{}
+\DeclareFontShape{T1}{yvtw}{m}{scsl}{<->ssub * yvtw/m/scit}{}
+\DeclareFontShape{T1}{yvtw}{m}{si}{<->ssub * yvtw/m/scsl}{}
+\DeclareFontShape{T1}{yvtw}{bx}{n}{<->ssub * yvtw/b/n}{}
+\DeclareFontShape{T1}{yvtw}{bx}{it}{<->ssub * yvtw/b/it}{}
+\DeclareFontShape{T1}{yvtw}{b}{sl}{<->ssub * yvtw/b/it}{}
+\DeclareFontShape{T1}{yvtw}{bx}{sl}{<->ssub * yvtw/b/sl}{}
+\DeclareFontShape{T1}{yvtw}{bx}{sc}{<->ssub * yvtw/b/sc}{}
+\DeclareFontShape{T1}{yvtw}{bx}{scit}{<->ssub * yvtw/b/scit}{}
+\DeclareFontShape{T1}{yvtw}{b}{scsl}{<->ssub * yvtw/b/scit}{}
+\DeclareFontShape{T1}{yvtw}{bx}{scsl}{<->ssub * yvtw/b/scsl}{}
+\DeclareFontShape{T1}{yvtw}{b}{si}{<->ssub * yvtw/b/scsl}{}
+\DeclareFontShape{T1}{yvtw}{bx}{si}{<->ssub * yvtw/b/si}{}
+\DeclareFontShape{T1}{yvtw}{c}{sl}{<->ssub * yvtw/c/it}{}
+\DeclareFontShape{T1}{yvtw}{c}{scsl}{<->ssub * yvtw/c/scit}{}
+\DeclareFontShape{T1}{yvtw}{c}{si}{<->ssub * yvtw/c/scsl}{}
+\DeclareFontShape{T1}{yvtw}{bc}{sl}{<->ssub * yvtw/bc/it}{}
+\DeclareFontShape{T1}{yvtw}{bc}{scsl}{<->ssub * yvtw/bc/scit}{}
+\DeclareFontShape{T1}{yvtw}{bc}{si}{<->ssub * yvtw/bc/scsl}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/ts1yv1.fd b/Master/texmf-dist/tex/latex/venturisadf/ts1yv1.fd
new file mode 100644
index 00000000000..3e03b4e3a95
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/ts1yv1.fd
@@ -0,0 +1,163 @@
+%Filename: ts1yv1.fd
+%Created by: tex yv1-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{ts1yv1.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for TS1/yv1.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvi@scale\endcsname\relax
+ \let\yvi@@scale\@empty
+\else
+ \edef\yvi@@scale{s*[\csname yvi@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{yv1}{}
+
+\DeclareFontShape{TS1}{yv1}{m}{n}{
+ <-> \yvi@@scale yv1r8c
+}{}
+
+\DeclareFontShape{TS1}{yv1}{m}{it}{
+ <-> \yvi@@scale yv1ri8c
+}{}
+
+\DeclareFontShape{TS1}{yv1}{b}{n}{
+ <-> \yvi@@scale yv1b8c
+}{}
+
+\DeclareFontShape{TS1}{yv1}{b}{it}{
+ <-> \yvi@@scale yv1bi8c
+}{}
+
+\DeclareFontShape{TS1}{yv1}{eb}{n}{
+ <-> \yvi@@scale yv1h8c
+}{}
+
+\DeclareFontShape{TS1}{yv1}{eb}{sl}{
+ <-> \yvi@@scale yv1ho8c
+}{}
+
+\DeclareFontShape{TS1}{yv1}{eb}{it}{
+ <-> \yvi@@scale yv1ho8c
+}{}
+
+\DeclareFontShape{TS1}{yv1}{c}{n}{
+ <-> \yvi@@scale yv1r8cc
+}{}
+
+\DeclareFontShape{TS1}{yv1}{c}{it}{
+ <-> \yvi@@scale yv1ri8cc
+}{}
+
+\DeclareFontShape{TS1}{yv1}{bc}{n}{
+ <-> \yvi@@scale yv1b8cc
+}{}
+
+\DeclareFontShape{TS1}{yv1}{bc}{it}{
+ <-> \yvi@@scale yv1bi8cc
+}{}
+
+\DeclareFontShape{TS1}{yv1}{x}{n}{
+ <-> \yvi@@scale yv1r8cx
+}{}
+
+\DeclareFontShape{TS1}{yv1}{x}{it}{
+ <-> \yvi@@scale yv1ri8cx
+}{}
+
+\DeclareFontShape{TS1}{yv1}{bx}{n}{
+ <-> \yvi@@scale yv1b8cx
+}{}
+
+\DeclareFontShape{TS1}{yv1}{bx}{it}{
+ <-> \yvi@@scale yv1bi8cx
+}{}
+
+\DeclareFontShape{TS1}{yv1}{bx}{sl}{
+ <-> \yvi@@scale yv1bi8cx
+}{}
+
+\DeclareFontShape{TS1}{yv1}{bx}{sc}{
+ <-> \yvi@@scale yv1b8cx
+}{}
+
+\DeclareFontShape{TS1}{yv1}{bx}{scit}{
+ <-> \yvi@@scale yv1b8cx
+}{}
+
+\DeclareFontShape{TS1}{yv1}{l}{n}{
+ <-> \yvi@@scale yv1l8c
+}{}
+
+\DeclareFontShape{TS1}{yv1}{l}{it}{
+ <-> \yvi@@scale yv1li8c
+}{}
+
+\DeclareFontShape{TS1}{yv1}{db}{n}{
+ <-> \yvi@@scale yv1d8c
+}{}
+
+\DeclareFontShape{TS1}{yv1}{db}{it}{
+ <-> \yvi@@scale yv1di8c
+}{}
+
+\DeclareFontShape{TS1}{yv1}{m}{sc}{<->ssub * yv1/m/n}{}
+\DeclareFontShape{TS1}{yv1}{m}{scit}{<->ssub * yv1/m/sc}{}
+\DeclareFontShape{TS1}{yv1}{m}{scsl}{<->ssub * yv1/m/scit}{}
+\DeclareFontShape{TS1}{yv1}{m}{si}{<->ssub * yv1/m/scsl}{}
+\DeclareFontShape{TS1}{yv1}{m}{sl}{<->ssub * yv1/m/it}{}
+\DeclareFontShape{TS1}{yv1}{b}{sc}{<->ssub * yv1/b/n}{}
+\DeclareFontShape{TS1}{yv1}{b}{scit}{<->ssub * yv1/b/sc}{}
+\DeclareFontShape{TS1}{yv1}{b}{scsl}{<->ssub * yv1/b/scit}{}
+\DeclareFontShape{TS1}{yv1}{bx}{scsl}{<->ssub * yv1/b/scsl}{}
+\DeclareFontShape{TS1}{yv1}{b}{si}{<->ssub * yv1/b/scsl}{}
+\DeclareFontShape{TS1}{yv1}{bx}{si}{<->ssub * yv1/b/si}{}
+\DeclareFontShape{TS1}{yv1}{b}{sl}{<->ssub * yv1/b/it}{}
+\DeclareFontShape{TS1}{yv1}{eb}{sc}{<->ssub * yv1/eb/n}{}
+\DeclareFontShape{TS1}{yv1}{eb}{scit}{<->ssub * yv1/eb/sc}{}
+\DeclareFontShape{TS1}{yv1}{eb}{scsl}{<->ssub * yv1/eb/scit}{}
+\DeclareFontShape{TS1}{yv1}{eb}{si}{<->ssub * yv1/eb/scsl}{}
+\DeclareFontShape{TS1}{yv1}{uc}{n}{<->ssub * yv1/c/n}{}
+\DeclareFontShape{TS1}{yv1}{c}{sc}{<->ssub * yv1/c/n}{}
+\DeclareFontShape{TS1}{yv1}{uc}{sc}{<->ssub * yv1/c/sc}{}
+\DeclareFontShape{TS1}{yv1}{c}{scit}{<->ssub * yv1/c/sc}{}
+\DeclareFontShape{TS1}{yv1}{uc}{scit}{<->ssub * yv1/c/scit}{}
+\DeclareFontShape{TS1}{yv1}{c}{scsl}{<->ssub * yv1/c/scit}{}
+\DeclareFontShape{TS1}{yv1}{uc}{scsl}{<->ssub * yv1/c/scsl}{}
+\DeclareFontShape{TS1}{yv1}{c}{si}{<->ssub * yv1/c/scsl}{}
+\DeclareFontShape{TS1}{yv1}{uc}{si}{<->ssub * yv1/c/si}{}
+\DeclareFontShape{TS1}{yv1}{uc}{it}{<->ssub * yv1/c/it}{}
+\DeclareFontShape{TS1}{yv1}{c}{sl}{<->ssub * yv1/c/it}{}
+\DeclareFontShape{TS1}{yv1}{uc}{sl}{<->ssub * yv1/c/sl}{}
+\DeclareFontShape{TS1}{yv1}{bc}{sc}{<->ssub * yv1/bc/n}{}
+\DeclareFontShape{TS1}{yv1}{bc}{scit}{<->ssub * yv1/bc/sc}{}
+\DeclareFontShape{TS1}{yv1}{bc}{scsl}{<->ssub * yv1/bc/scit}{}
+\DeclareFontShape{TS1}{yv1}{bc}{si}{<->ssub * yv1/bc/scsl}{}
+\DeclareFontShape{TS1}{yv1}{bc}{sl}{<->ssub * yv1/bc/it}{}
+\DeclareFontShape{TS1}{yv1}{x}{sc}{<->ssub * yv1/x/n}{}
+\DeclareFontShape{TS1}{yv1}{x}{scit}{<->ssub * yv1/x/sc}{}
+\DeclareFontShape{TS1}{yv1}{x}{scsl}{<->ssub * yv1/x/scit}{}
+\DeclareFontShape{TS1}{yv1}{x}{si}{<->ssub * yv1/x/scsl}{}
+\DeclareFontShape{TS1}{yv1}{x}{sl}{<->ssub * yv1/x/it}{}
+\DeclareFontShape{TS1}{yv1}{l}{sc}{<->ssub * yv1/l/n}{}
+\DeclareFontShape{TS1}{yv1}{l}{scit}{<->ssub * yv1/l/sc}{}
+\DeclareFontShape{TS1}{yv1}{l}{scsl}{<->ssub * yv1/l/scit}{}
+\DeclareFontShape{TS1}{yv1}{l}{si}{<->ssub * yv1/l/scsl}{}
+\DeclareFontShape{TS1}{yv1}{l}{sl}{<->ssub * yv1/l/it}{}
+\DeclareFontShape{TS1}{yv1}{dbuc}{n}{<->ssub * yv1/db/n}{}
+\DeclareFontShape{TS1}{yv1}{db}{sc}{<->ssub * yv1/db/n}{}
+\DeclareFontShape{TS1}{yv1}{dbuc}{sc}{<->ssub * yv1/db/sc}{}
+\DeclareFontShape{TS1}{yv1}{db}{scit}{<->ssub * yv1/db/sc}{}
+\DeclareFontShape{TS1}{yv1}{dbuc}{scit}{<->ssub * yv1/db/scit}{}
+\DeclareFontShape{TS1}{yv1}{db}{scsl}{<->ssub * yv1/db/scit}{}
+\DeclareFontShape{TS1}{yv1}{dbuc}{scsl}{<->ssub * yv1/db/scsl}{}
+\DeclareFontShape{TS1}{yv1}{db}{si}{<->ssub * yv1/db/scsl}{}
+\DeclareFontShape{TS1}{yv1}{dbuc}{si}{<->ssub * yv1/db/si}{}
+\DeclareFontShape{TS1}{yv1}{dbuc}{it}{<->ssub * yv1/db/it}{}
+\DeclareFontShape{TS1}{yv1}{db}{sl}{<->ssub * yv1/db/it}{}
+\DeclareFontShape{TS1}{yv1}{dbuc}{sl}{<->ssub * yv1/db/sl}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/ts1yv1d.fd b/Master/texmf-dist/tex/latex/venturisadf/ts1yv1d.fd
new file mode 100644
index 00000000000..46b88ae4ba0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/ts1yv1d.fd
@@ -0,0 +1,135 @@
+%Filename: ts1yv1d.fd
+%Created by: tex yv1-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{ts1yv1d.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for TS1/yv1d.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvi@scale\endcsname\relax
+ \let\yvi@@scale\@empty
+\else
+ \edef\yvi@@scale{s*[\csname yvi@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{yv1d}{}
+
+\DeclareFontShape{TS1}{yv1d}{b}{sc}{
+ <-> \yvi@@scale yv1bd8c
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{eb}{sc}{
+ <-> \yvi@@scale yv1bd8c
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{bc}{sc}{
+ <-> \yvi@@scale yv1bd8c
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{db}{sc}{
+ <-> \yvi@@scale yv1bd8c
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{b}{n}{
+ <-> \yvi@@scale yv1bd8c
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{eb}{n}{
+ <-> \yvi@@scale yv1bd8c
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{bc}{n}{
+ <-> \yvi@@scale yv1bd8c
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{db}{n}{
+ <-> \yvi@@scale yv1bd8c
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{dbuc}{sc}{
+ <-> \yvi@@scale yv1dd8cu
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{x}{sc}{
+ <-> \yvi@@scale yv1dd8cu
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{m}{sc}{
+ <-> \yvi@@scale yv1dd8cu
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{c}{sc}{
+ <-> \yvi@@scale yv1dd8cu
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{uc}{sc}{
+ <-> \yvi@@scale yv1dd8cu
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{l}{sc}{
+ <-> \yvi@@scale yv1dd8cu
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{dbuc}{n}{
+ <-> \yvi@@scale yv1dd8cu
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{x}{n}{
+ <-> \yvi@@scale yv1dd8cu
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{m}{n}{
+ <-> \yvi@@scale yv1dd8cu
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{c}{n}{
+ <-> \yvi@@scale yv1dd8cu
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{uc}{n}{
+ <-> \yvi@@scale yv1dd8cu
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{l}{n}{
+ <-> \yvi@@scale yv1dd8cu
+}{}
+
+\DeclareFontShape{TS1}{yv1d}{bx}{sc}{<->ssub * yv1d/b/sc}{}
+\DeclareFontShape{TS1}{yv1d}{b}{scit}{<->ssub * yv1d/b/sc}{}
+\DeclareFontShape{TS1}{yv1d}{bx}{scit}{<->ssub * yv1d/b/scit}{}
+\DeclareFontShape{TS1}{yv1d}{b}{scsl}{<->ssub * yv1d/b/scit}{}
+\DeclareFontShape{TS1}{yv1d}{bx}{scsl}{<->ssub * yv1d/b/scsl}{}
+\DeclareFontShape{TS1}{yv1d}{b}{si}{<->ssub * yv1d/b/scsl}{}
+\DeclareFontShape{TS1}{yv1d}{bx}{si}{<->ssub * yv1d/b/si}{}
+\DeclareFontShape{TS1}{yv1d}{eb}{scit}{<->ssub * yv1d/eb/sc}{}
+\DeclareFontShape{TS1}{yv1d}{eb}{scsl}{<->ssub * yv1d/eb/scit}{}
+\DeclareFontShape{TS1}{yv1d}{eb}{si}{<->ssub * yv1d/eb/scsl}{}
+\DeclareFontShape{TS1}{yv1d}{bc}{scit}{<->ssub * yv1d/bc/sc}{}
+\DeclareFontShape{TS1}{yv1d}{bc}{scsl}{<->ssub * yv1d/bc/scit}{}
+\DeclareFontShape{TS1}{yv1d}{bc}{si}{<->ssub * yv1d/bc/scsl}{}
+\DeclareFontShape{TS1}{yv1d}{db}{scit}{<->ssub * yv1d/db/sc}{}
+\DeclareFontShape{TS1}{yv1d}{dbuc}{scit}{<->ssub * yv1d/db/scit}{}
+\DeclareFontShape{TS1}{yv1d}{db}{scsl}{<->ssub * yv1d/db/scit}{}
+\DeclareFontShape{TS1}{yv1d}{dbuc}{scsl}{<->ssub * yv1d/db/scsl}{}
+\DeclareFontShape{TS1}{yv1d}{db}{si}{<->ssub * yv1d/db/scsl}{}
+\DeclareFontShape{TS1}{yv1d}{dbuc}{si}{<->ssub * yv1d/db/si}{}
+\DeclareFontShape{TS1}{yv1d}{bx}{n}{<->ssub * yv1d/b/n}{}
+\DeclareFontShape{TS1}{yv1d}{x}{scit}{<->ssub * yv1d/x/sc}{}
+\DeclareFontShape{TS1}{yv1d}{x}{scsl}{<->ssub * yv1d/x/scit}{}
+\DeclareFontShape{TS1}{yv1d}{x}{si}{<->ssub * yv1d/x/scsl}{}
+\DeclareFontShape{TS1}{yv1d}{m}{scit}{<->ssub * yv1d/m/sc}{}
+\DeclareFontShape{TS1}{yv1d}{m}{scsl}{<->ssub * yv1d/m/scit}{}
+\DeclareFontShape{TS1}{yv1d}{m}{si}{<->ssub * yv1d/m/scsl}{}
+\DeclareFontShape{TS1}{yv1d}{c}{scit}{<->ssub * yv1d/c/sc}{}
+\DeclareFontShape{TS1}{yv1d}{uc}{scit}{<->ssub * yv1d/c/scit}{}
+\DeclareFontShape{TS1}{yv1d}{c}{scsl}{<->ssub * yv1d/c/scit}{}
+\DeclareFontShape{TS1}{yv1d}{uc}{scsl}{<->ssub * yv1d/c/scsl}{}
+\DeclareFontShape{TS1}{yv1d}{c}{si}{<->ssub * yv1d/c/scsl}{}
+\DeclareFontShape{TS1}{yv1d}{uc}{si}{<->ssub * yv1d/c/si}{}
+\DeclareFontShape{TS1}{yv1d}{l}{scit}{<->ssub * yv1d/l/sc}{}
+\DeclareFontShape{TS1}{yv1d}{l}{scsl}{<->ssub * yv1d/l/scit}{}
+\DeclareFontShape{TS1}{yv1d}{l}{si}{<->ssub * yv1d/l/scsl}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/ts1yv2.fd b/Master/texmf-dist/tex/latex/venturisadf/ts1yv2.fd
new file mode 100644
index 00000000000..c7b4fb25819
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/ts1yv2.fd
@@ -0,0 +1,105 @@
+%Filename: ts1yv2.fd
+%Created by: tex yv2-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{ts1yv2.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for TS1/yv2.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvii@scale\endcsname\relax
+ \let\yvii@@scale\@empty
+\else
+ \edef\yvii@@scale{s*[\csname yvii@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{yv2}{}
+
+\DeclareFontShape{TS1}{yv2}{m}{n}{
+ <-> \yvii@@scale yv2r8c
+}{}
+
+\DeclareFontShape{TS1}{yv2}{m}{it}{
+ <-> \yvii@@scale yv2ri8c
+}{}
+
+\DeclareFontShape{TS1}{yv2}{b}{n}{
+ <-> \yvii@@scale yv2b8c
+}{}
+
+\DeclareFontShape{TS1}{yv2}{b}{it}{
+ <-> \yvii@@scale yv2bi8c
+}{}
+
+\DeclareFontShape{TS1}{yv2}{c}{n}{
+ <-> \yvii@@scale yv2r8cc
+}{}
+
+\DeclareFontShape{TS1}{yv2}{c}{it}{
+ <-> \yvii@@scale yv2ri8cc
+}{}
+
+\DeclareFontShape{TS1}{yv2}{bc}{n}{
+ <-> \yvii@@scale yv2b8cc
+}{}
+
+\DeclareFontShape{TS1}{yv2}{bc}{it}{
+ <-> \yvii@@scale yv2bi8cc
+}{}
+
+\DeclareFontShape{TS1}{yv2}{sb}{n}{
+ <-> \yvii@@scale yv2m8c
+}{}
+
+\DeclareFontShape{TS1}{yv2}{sb}{it}{
+ <-> \yvii@@scale yv2mi8c
+}{}
+
+\DeclareFontShape{TS1}{yv2}{eb}{n}{
+ <-> \yvii@@scale yv2x8c
+}{}
+
+\DeclareFontShape{TS1}{yv2}{eb}{it}{
+ <-> \yvii@@scale yv2xi8c
+}{}
+
+\DeclareFontShape{TS1}{yv2}{m}{sc}{<->ssub * yv2/m/n}{}
+\DeclareFontShape{TS1}{yv2}{m}{scit}{<->ssub * yv2/m/sc}{}
+\DeclareFontShape{TS1}{yv2}{m}{scsl}{<->ssub * yv2/m/scit}{}
+\DeclareFontShape{TS1}{yv2}{m}{si}{<->ssub * yv2/m/scsl}{}
+\DeclareFontShape{TS1}{yv2}{m}{sl}{<->ssub * yv2/m/it}{}
+\DeclareFontShape{TS1}{yv2}{bx}{n}{<->ssub * yv2/b/n}{}
+\DeclareFontShape{TS1}{yv2}{b}{sc}{<->ssub * yv2/b/n}{}
+\DeclareFontShape{TS1}{yv2}{bx}{sc}{<->ssub * yv2/b/sc}{}
+\DeclareFontShape{TS1}{yv2}{b}{scit}{<->ssub * yv2/b/sc}{}
+\DeclareFontShape{TS1}{yv2}{bx}{scit}{<->ssub * yv2/b/scit}{}
+\DeclareFontShape{TS1}{yv2}{b}{scsl}{<->ssub * yv2/b/scit}{}
+\DeclareFontShape{TS1}{yv2}{bx}{scsl}{<->ssub * yv2/b/scsl}{}
+\DeclareFontShape{TS1}{yv2}{b}{si}{<->ssub * yv2/b/scsl}{}
+\DeclareFontShape{TS1}{yv2}{bx}{si}{<->ssub * yv2/b/si}{}
+\DeclareFontShape{TS1}{yv2}{bx}{it}{<->ssub * yv2/b/it}{}
+\DeclareFontShape{TS1}{yv2}{b}{sl}{<->ssub * yv2/b/it}{}
+\DeclareFontShape{TS1}{yv2}{bx}{sl}{<->ssub * yv2/b/sl}{}
+\DeclareFontShape{TS1}{yv2}{c}{sc}{<->ssub * yv2/c/n}{}
+\DeclareFontShape{TS1}{yv2}{c}{scit}{<->ssub * yv2/c/sc}{}
+\DeclareFontShape{TS1}{yv2}{c}{scsl}{<->ssub * yv2/c/scit}{}
+\DeclareFontShape{TS1}{yv2}{c}{si}{<->ssub * yv2/c/scsl}{}
+\DeclareFontShape{TS1}{yv2}{c}{sl}{<->ssub * yv2/c/it}{}
+\DeclareFontShape{TS1}{yv2}{bc}{sc}{<->ssub * yv2/bc/n}{}
+\DeclareFontShape{TS1}{yv2}{bc}{scit}{<->ssub * yv2/bc/sc}{}
+\DeclareFontShape{TS1}{yv2}{bc}{scsl}{<->ssub * yv2/bc/scit}{}
+\DeclareFontShape{TS1}{yv2}{bc}{si}{<->ssub * yv2/bc/scsl}{}
+\DeclareFontShape{TS1}{yv2}{bc}{sl}{<->ssub * yv2/bc/it}{}
+\DeclareFontShape{TS1}{yv2}{sb}{sc}{<->ssub * yv2/sb/n}{}
+\DeclareFontShape{TS1}{yv2}{sb}{scit}{<->ssub * yv2/sb/sc}{}
+\DeclareFontShape{TS1}{yv2}{sb}{scsl}{<->ssub * yv2/sb/scit}{}
+\DeclareFontShape{TS1}{yv2}{sb}{si}{<->ssub * yv2/sb/scsl}{}
+\DeclareFontShape{TS1}{yv2}{sb}{sl}{<->ssub * yv2/sb/it}{}
+\DeclareFontShape{TS1}{yv2}{eb}{sc}{<->ssub * yv2/eb/n}{}
+\DeclareFontShape{TS1}{yv2}{eb}{scit}{<->ssub * yv2/eb/sc}{}
+\DeclareFontShape{TS1}{yv2}{eb}{scsl}{<->ssub * yv2/eb/scit}{}
+\DeclareFontShape{TS1}{yv2}{eb}{si}{<->ssub * yv2/eb/scsl}{}
+\DeclareFontShape{TS1}{yv2}{eb}{sl}{<->ssub * yv2/eb/it}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/ts1yv3.fd b/Master/texmf-dist/tex/latex/venturisadf/ts1yv3.fd
new file mode 100644
index 00000000000..182eb5ba316
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/ts1yv3.fd
@@ -0,0 +1,98 @@
+%Filename: ts1yv3.fd
+%Created by: tex yv3-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{ts1yv3.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for TS1/yv3.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yviii@scale\endcsname\relax
+ \let\yviii@@scale\@empty
+\else
+ \edef\yviii@@scale{s*[\csname yviii@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{yv3}{}
+
+\DeclareFontShape{TS1}{yv3}{m}{n}{
+ <-> \yviii@@scale yv3r8c
+}{}
+
+\DeclareFontShape{TS1}{yv3}{m}{it}{
+ <-> \yviii@@scale yv3ri8c
+}{}
+
+\DeclareFontShape{TS1}{yv3}{b}{n}{
+ <-> \yviii@@scale yv3b8c
+}{}
+
+\DeclareFontShape{TS1}{yv3}{b}{it}{
+ <-> \yviii@@scale yv3bi8c
+}{}
+
+\DeclareFontShape{TS1}{yv3}{c}{n}{
+ <-> \yviii@@scale yv3r8cc
+}{}
+
+\DeclareFontShape{TS1}{yv3}{c}{it}{
+ <-> \yviii@@scale yv3ri8cc
+}{}
+
+\DeclareFontShape{TS1}{yv3}{bc}{n}{
+ <-> \yviii@@scale yv3b8cc
+}{}
+
+\DeclareFontShape{TS1}{yv3}{bc}{it}{
+ <-> \yviii@@scale yv3bi8cc
+}{}
+
+\DeclareFontShape{TS1}{yv3}{x}{n}{
+ <-> \yviii@@scale yv3r8cx
+}{}
+
+\DeclareFontShape{TS1}{yv3}{x}{it}{
+ <-> \yviii@@scale yv3ri8cx
+}{}
+
+\DeclareFontShape{TS1}{yv3}{bx}{n}{
+ <-> \yviii@@scale yv3b8cx
+}{}
+
+\DeclareFontShape{TS1}{yv3}{bx}{it}{
+ <-> \yviii@@scale yv3bi8cx
+}{}
+
+\DeclareFontShape{TS1}{yv3}{m}{sc}{<->ssub * yv3/m/n}{}
+\DeclareFontShape{TS1}{yv3}{m}{scit}{<->ssub * yv3/m/sc}{}
+\DeclareFontShape{TS1}{yv3}{m}{scsl}{<->ssub * yv3/m/scit}{}
+\DeclareFontShape{TS1}{yv3}{m}{si}{<->ssub * yv3/m/scsl}{}
+\DeclareFontShape{TS1}{yv3}{m}{sl}{<->ssub * yv3/m/it}{}
+\DeclareFontShape{TS1}{yv3}{b}{sc}{<->ssub * yv3/b/n}{}
+\DeclareFontShape{TS1}{yv3}{bx}{sc}{<->ssub * yv3/b/sc}{}
+\DeclareFontShape{TS1}{yv3}{b}{scit}{<->ssub * yv3/b/sc}{}
+\DeclareFontShape{TS1}{yv3}{bx}{scit}{<->ssub * yv3/b/scit}{}
+\DeclareFontShape{TS1}{yv3}{b}{scsl}{<->ssub * yv3/b/scit}{}
+\DeclareFontShape{TS1}{yv3}{bx}{scsl}{<->ssub * yv3/b/scsl}{}
+\DeclareFontShape{TS1}{yv3}{b}{si}{<->ssub * yv3/b/scsl}{}
+\DeclareFontShape{TS1}{yv3}{bx}{si}{<->ssub * yv3/b/si}{}
+\DeclareFontShape{TS1}{yv3}{b}{sl}{<->ssub * yv3/b/it}{}
+\DeclareFontShape{TS1}{yv3}{bx}{sl}{<->ssub * yv3/b/sl}{}
+\DeclareFontShape{TS1}{yv3}{c}{sc}{<->ssub * yv3/c/n}{}
+\DeclareFontShape{TS1}{yv3}{c}{scit}{<->ssub * yv3/c/sc}{}
+\DeclareFontShape{TS1}{yv3}{c}{scsl}{<->ssub * yv3/c/scit}{}
+\DeclareFontShape{TS1}{yv3}{c}{si}{<->ssub * yv3/c/scsl}{}
+\DeclareFontShape{TS1}{yv3}{c}{sl}{<->ssub * yv3/c/it}{}
+\DeclareFontShape{TS1}{yv3}{bc}{sc}{<->ssub * yv3/bc/n}{}
+\DeclareFontShape{TS1}{yv3}{bc}{scit}{<->ssub * yv3/bc/sc}{}
+\DeclareFontShape{TS1}{yv3}{bc}{scsl}{<->ssub * yv3/bc/scit}{}
+\DeclareFontShape{TS1}{yv3}{bc}{si}{<->ssub * yv3/bc/scsl}{}
+\DeclareFontShape{TS1}{yv3}{bc}{sl}{<->ssub * yv3/bc/it}{}
+\DeclareFontShape{TS1}{yv3}{x}{sc}{<->ssub * yv3/x/n}{}
+\DeclareFontShape{TS1}{yv3}{x}{scit}{<->ssub * yv3/x/sc}{}
+\DeclareFontShape{TS1}{yv3}{x}{scsl}{<->ssub * yv3/x/scit}{}
+\DeclareFontShape{TS1}{yv3}{x}{si}{<->ssub * yv3/x/scsl}{}
+\DeclareFontShape{TS1}{yv3}{x}{sl}{<->ssub * yv3/x/it}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisold/ts1yvo.fd b/Master/texmf-dist/tex/latex/venturisadf/ts1yvo.fd
index 2d53b412c76..b7a740502da 100644
--- a/Master/texmf-dist/tex/latex/venturisold/ts1yvo.fd
+++ b/Master/texmf-dist/tex/latex/venturisadf/ts1yvo.fd
@@ -5,33 +5,46 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1yvo.fd}
- [2010/07/03 Fontinst v1.933 font definitions for TS1/yvo.]
+ [2024/08/17 Fontinst v1.933 font definitions for TS1/yvo.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvo@scale\endcsname\relax
+ \let\yvo@@scale\@empty
+\else
+ \edef\yvo@@scale{s*[\csname yvo@scale\endcsname]}%
+\fi
\DeclareFontFamily{TS1}{yvo}{}
\DeclareFontShape{TS1}{yvo}{m}{n}{
- <-> yvor8c
+ <-> \yvo@@scale yvor8c
}{}
\DeclareFontShape{TS1}{yvo}{m}{it}{
- <-> yvori8c
+ <-> \yvo@@scale yvori8c
}{}
\DeclareFontShape{TS1}{yvo}{b}{n}{
- <-> yvob8c
+ <-> \yvo@@scale yvob8c
}{}
\DeclareFontShape{TS1}{yvo}{b}{it}{
- <-> yvobi8c
+ <-> \yvo@@scale yvobi8c
}{}
\DeclareFontShape{TS1}{yvo}{m}{sc}{<->sub * yvo/m/n}{}
-\DeclareFontShape{TS1}{yvo}{m}{si}{<->ssub * yvo/m/sc}{}
+\DeclareFontShape{TS1}{yvo}{m}{scit}{<->ssub * yvo/m/sc}{}
+\DeclareFontShape{TS1}{yvo}{m}{scsl}{<->ssub * yvo/m/scit}{}
+\DeclareFontShape{TS1}{yvo}{m}{si}{<->ssub * yvo/m/scsl}{}
\DeclareFontShape{TS1}{yvo}{m}{sl}{<->ssub * yvo/m/it}{}
\DeclareFontShape{TS1}{yvo}{bx}{n}{<->ssub * yvo/b/n}{}
\DeclareFontShape{TS1}{yvo}{b}{sc}{<->sub * yvo/b/n}{}
\DeclareFontShape{TS1}{yvo}{bx}{sc}{<->ssub * yvo/b/sc}{}
-\DeclareFontShape{TS1}{yvo}{b}{si}{<->ssub * yvo/b/sc}{}
+\DeclareFontShape{TS1}{yvo}{b}{scit}{<->ssub * yvo/b/sc}{}
+\DeclareFontShape{TS1}{yvo}{bx}{scit}{<->ssub * yvo/b/scit}{}
+\DeclareFontShape{TS1}{yvo}{b}{scsl}{<->ssub * yvo/b/scit}{}
+\DeclareFontShape{TS1}{yvo}{bx}{scsl}{<->ssub * yvo/b/scsl}{}
+\DeclareFontShape{TS1}{yvo}{b}{si}{<->ssub * yvo/b/scsl}{}
\DeclareFontShape{TS1}{yvo}{bx}{si}{<->ssub * yvo/b/si}{}
\DeclareFontShape{TS1}{yvo}{bx}{it}{<->ssub * yvo/b/it}{}
\DeclareFontShape{TS1}{yvo}{b}{sl}{<->ssub * yvo/b/it}{}
diff --git a/Master/texmf-dist/tex/latex/venturisold/ts1yvoa.fd b/Master/texmf-dist/tex/latex/venturisadf/ts1yvoa.fd
index 003f75a60f2..487e53e7fc1 100644
--- a/Master/texmf-dist/tex/latex/venturisold/ts1yvoa.fd
+++ b/Master/texmf-dist/tex/latex/venturisadf/ts1yvoa.fd
@@ -5,33 +5,46 @@
%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
\ProvidesFile{ts1yvoa.fd}
- [2010/07/03 Fontinst v1.933 font definitions for TS1/yvoa.]
+ [2024/08/17 Fontinst v1.933 font definitions for TS1/yvoa.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvo@scale\endcsname\relax
+ \let\yvo@@scale\@empty
+\else
+ \edef\yvo@@scale{s*[\csname yvo@scale\endcsname]}%
+\fi
\DeclareFontFamily{TS1}{yvoa}{}
\DeclareFontShape{TS1}{yvoa}{m}{n}{
- <-> yvor8c
+ <-> \yvo@@scale yvor8c
}{}
\DeclareFontShape{TS1}{yvoa}{m}{it}{
- <-> yvori8c
+ <-> \yvo@@scale yvori8c
}{}
\DeclareFontShape{TS1}{yvoa}{b}{n}{
- <-> yvob8c
+ <-> \yvo@@scale yvob8c
}{}
\DeclareFontShape{TS1}{yvoa}{b}{it}{
- <-> yvobi8c
+ <-> \yvo@@scale yvobi8c
}{}
\DeclareFontShape{TS1}{yvoa}{m}{sc}{<->sub * yvoa/m/n}{}
-\DeclareFontShape{TS1}{yvoa}{m}{si}{<->ssub * yvoa/m/sc}{}
+\DeclareFontShape{TS1}{yvoa}{m}{scit}{<->ssub * yvoa/m/sc}{}
+\DeclareFontShape{TS1}{yvoa}{m}{scsl}{<->ssub * yvoa/m/scit}{}
+\DeclareFontShape{TS1}{yvoa}{m}{si}{<->ssub * yvoa/m/scsl}{}
\DeclareFontShape{TS1}{yvoa}{m}{sl}{<->ssub * yvoa/m/it}{}
\DeclareFontShape{TS1}{yvoa}{bx}{n}{<->ssub * yvoa/b/n}{}
\DeclareFontShape{TS1}{yvoa}{b}{sc}{<->sub * yvoa/b/n}{}
\DeclareFontShape{TS1}{yvoa}{bx}{sc}{<->ssub * yvoa/b/sc}{}
-\DeclareFontShape{TS1}{yvoa}{b}{si}{<->ssub * yvoa/b/sc}{}
+\DeclareFontShape{TS1}{yvoa}{b}{scit}{<->ssub * yvoa/b/sc}{}
+\DeclareFontShape{TS1}{yvoa}{bx}{scit}{<->ssub * yvoa/b/scit}{}
+\DeclareFontShape{TS1}{yvoa}{b}{scsl}{<->ssub * yvoa/b/scit}{}
+\DeclareFontShape{TS1}{yvoa}{bx}{scsl}{<->ssub * yvoa/b/scsl}{}
+\DeclareFontShape{TS1}{yvoa}{b}{si}{<->ssub * yvoa/b/scsl}{}
\DeclareFontShape{TS1}{yvoa}{bx}{si}{<->ssub * yvoa/b/si}{}
\DeclareFontShape{TS1}{yvoa}{bx}{it}{<->ssub * yvoa/b/it}{}
\DeclareFontShape{TS1}{yvoa}{b}{sl}{<->ssub * yvoa/b/it}{}
diff --git a/Master/texmf-dist/tex/latex/venturisadf/ts1yvoad.fd b/Master/texmf-dist/tex/latex/venturisadf/ts1yvoad.fd
new file mode 100644
index 00000000000..f1de4addb8e
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/ts1yvoad.fd
@@ -0,0 +1,46 @@
+%Filename: ts1yvoad.fd
+%Created by: tex yvo-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{ts1yvoad.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for TS1/yvoad.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvo@scale\endcsname\relax
+ \let\yvo@@scale\@empty
+\else
+ \edef\yvo@@scale{s*[\csname yvo@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{yvoad}{}
+
+\DeclareFontShape{TS1}{yvoad}{db}{sc}{
+ <-> \yvo@@scale yvodd8c
+}{}
+
+\DeclareFontShape{TS1}{yvoad}{db}{n}{
+ <-> \yvo@@scale yvodd8c
+}{}
+
+\DeclareFontShape{TS1}{yvoad}{b}{sc}{<->ssub * yvoad/db/sc}{}
+\DeclareFontShape{TS1}{yvoad}{bx}{sc}{<->ssub * yvoad/b/sc}{}
+\DeclareFontShape{TS1}{yvoad}{m}{sc}{<->ssub * yvoad/bx/sc}{}
+\DeclareFontShape{TS1}{yvoad}{db}{scit}{<->ssub * yvoad/db/sc}{}
+\DeclareFontShape{TS1}{yvoad}{b}{scit}{<->ssub * yvoad/db/scit}{}
+\DeclareFontShape{TS1}{yvoad}{bx}{scit}{<->ssub * yvoad/b/scit}{}
+\DeclareFontShape{TS1}{yvoad}{m}{scit}{<->ssub * yvoad/bx/scit}{}
+\DeclareFontShape{TS1}{yvoad}{db}{scsl}{<->ssub * yvoad/db/scit}{}
+\DeclareFontShape{TS1}{yvoad}{b}{scsl}{<->ssub * yvoad/db/scsl}{}
+\DeclareFontShape{TS1}{yvoad}{bx}{scsl}{<->ssub * yvoad/b/scsl}{}
+\DeclareFontShape{TS1}{yvoad}{m}{scsl}{<->ssub * yvoad/bx/scsl}{}
+\DeclareFontShape{TS1}{yvoad}{db}{si}{<->ssub * yvoad/db/scsl}{}
+\DeclareFontShape{TS1}{yvoad}{b}{si}{<->ssub * yvoad/db/si}{}
+\DeclareFontShape{TS1}{yvoad}{bx}{si}{<->ssub * yvoad/b/si}{}
+\DeclareFontShape{TS1}{yvoad}{m}{si}{<->ssub * yvoad/bx/si}{}
+\DeclareFontShape{TS1}{yvoad}{b}{n}{<->ssub * yvoad/db/n}{}
+\DeclareFontShape{TS1}{yvoad}{bx}{n}{<->ssub * yvoad/b/n}{}
+\DeclareFontShape{TS1}{yvoad}{m}{n}{<->ssub * yvoad/bx/n}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/ts1yvod.fd b/Master/texmf-dist/tex/latex/venturisadf/ts1yvod.fd
new file mode 100644
index 00000000000..a42c9aaca99
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/ts1yvod.fd
@@ -0,0 +1,46 @@
+%Filename: ts1yvod.fd
+%Created by: tex yvo-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{ts1yvod.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for TS1/yvod.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvo@scale\endcsname\relax
+ \let\yvo@@scale\@empty
+\else
+ \edef\yvo@@scale{s*[\csname yvo@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{yvod}{}
+
+\DeclareFontShape{TS1}{yvod}{db}{sc}{
+ <-> \yvo@@scale yvodd8c
+}{}
+
+\DeclareFontShape{TS1}{yvod}{db}{n}{
+ <-> \yvo@@scale yvodd8c
+}{}
+
+\DeclareFontShape{TS1}{yvod}{b}{sc}{<->ssub * yvod/db/sc}{}
+\DeclareFontShape{TS1}{yvod}{bx}{sc}{<->ssub * yvod/b/sc}{}
+\DeclareFontShape{TS1}{yvod}{m}{sc}{<->ssub * yvod/bx/sc}{}
+\DeclareFontShape{TS1}{yvod}{db}{scit}{<->ssub * yvod/db/sc}{}
+\DeclareFontShape{TS1}{yvod}{b}{scit}{<->ssub * yvod/db/scit}{}
+\DeclareFontShape{TS1}{yvod}{bx}{scit}{<->ssub * yvod/b/scit}{}
+\DeclareFontShape{TS1}{yvod}{m}{scit}{<->ssub * yvod/bx/scit}{}
+\DeclareFontShape{TS1}{yvod}{db}{scsl}{<->ssub * yvod/db/scit}{}
+\DeclareFontShape{TS1}{yvod}{b}{scsl}{<->ssub * yvod/db/scsl}{}
+\DeclareFontShape{TS1}{yvod}{bx}{scsl}{<->ssub * yvod/b/scsl}{}
+\DeclareFontShape{TS1}{yvod}{m}{scsl}{<->ssub * yvod/bx/scsl}{}
+\DeclareFontShape{TS1}{yvod}{db}{si}{<->ssub * yvod/db/scsl}{}
+\DeclareFontShape{TS1}{yvod}{b}{si}{<->ssub * yvod/db/si}{}
+\DeclareFontShape{TS1}{yvod}{bx}{si}{<->ssub * yvod/b/si}{}
+\DeclareFontShape{TS1}{yvod}{m}{si}{<->ssub * yvod/bx/si}{}
+\DeclareFontShape{TS1}{yvod}{b}{n}{<->ssub * yvod/db/n}{}
+\DeclareFontShape{TS1}{yvod}{bx}{n}{<->ssub * yvod/b/n}{}
+\DeclareFontShape{TS1}{yvod}{m}{n}{<->ssub * yvod/bx/n}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/ts1yvt.fd b/Master/texmf-dist/tex/latex/venturisadf/ts1yvt.fd
new file mode 100644
index 00000000000..db55b930dd2
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/ts1yvt.fd
@@ -0,0 +1,116 @@
+%Filename: ts1yvt.fd
+%Created by: tex yvt-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{ts1yvt.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for TS1/yvt.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvt@scale\endcsname\relax
+ \let\yvt@@scale\@empty
+\else
+ \edef\yvt@@scale{s*[\csname yvt@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{yvt}{}
+
+\DeclareFontShape{TS1}{yvt}{m}{n}{
+ <-> \yvt@@scale yvtr8c
+}{}
+
+\DeclareFontShape{TS1}{yvt}{m}{sc}{
+ <-> \yvt@@scale yvtrc8c
+}{}
+
+\DeclareFontShape{TS1}{yvt}{m}{it}{
+ <-> \yvt@@scale yvtri8c
+}{}
+
+\DeclareFontShape{TS1}{yvt}{m}{scit}{
+ <-> \yvt@@scale yvtrci8c
+}{}
+
+\DeclareFontShape{TS1}{yvt}{b}{n}{
+ <-> \yvt@@scale yvtb8c
+}{}
+
+\DeclareFontShape{TS1}{yvt}{b}{sc}{
+ <-> \yvt@@scale yvtbc8c
+}{}
+
+\DeclareFontShape{TS1}{yvt}{b}{it}{
+ <-> \yvt@@scale yvtbi8c
+}{}
+
+\DeclareFontShape{TS1}{yvt}{b}{scit}{
+ <-> \yvt@@scale yvtbci8c
+}{}
+
+\DeclareFontShape{TS1}{yvt}{eb}{n}{
+ <-> \yvt@@scale yvth8c
+}{}
+
+\DeclareFontShape{TS1}{yvt}{eb}{it}{
+ <-> \yvt@@scale yvthi8c
+}{}
+
+\DeclareFontShape{TS1}{yvt}{c}{n}{
+ <-> \yvt@@scale yvtr8cc
+}{}
+
+\DeclareFontShape{TS1}{yvt}{c}{sc}{
+ <-> \yvt@@scale yvtrc8cc
+}{}
+
+\DeclareFontShape{TS1}{yvt}{c}{it}{
+ <-> \yvt@@scale yvtri8cc
+}{}
+
+\DeclareFontShape{TS1}{yvt}{c}{scit}{
+ <-> \yvt@@scale yvtrci8cc
+}{}
+
+\DeclareFontShape{TS1}{yvt}{bc}{n}{
+ <-> \yvt@@scale yvtb8cc
+}{}
+
+\DeclareFontShape{TS1}{yvt}{bc}{sc}{
+ <-> \yvt@@scale yvtbc8cc
+}{}
+
+\DeclareFontShape{TS1}{yvt}{bc}{it}{
+ <-> \yvt@@scale yvtbi8cc
+}{}
+
+\DeclareFontShape{TS1}{yvt}{bc}{scit}{
+ <-> \yvt@@scale yvtbci8cc
+}{}
+
+\DeclareFontShape{TS1}{yvt}{m}{sl}{<->ssub * yvt/m/it}{}
+\DeclareFontShape{TS1}{yvt}{m}{scsl}{<->ssub * yvt/m/scit}{}
+\DeclareFontShape{TS1}{yvt}{m}{si}{<->ssub * yvt/m/scsl}{}
+\DeclareFontShape{TS1}{yvt}{bx}{n}{<->ssub * yvt/b/n}{}
+\DeclareFontShape{TS1}{yvt}{bx}{sc}{<->ssub * yvt/b/sc}{}
+\DeclareFontShape{TS1}{yvt}{bx}{it}{<->ssub * yvt/b/it}{}
+\DeclareFontShape{TS1}{yvt}{b}{sl}{<->ssub * yvt/b/it}{}
+\DeclareFontShape{TS1}{yvt}{bx}{sl}{<->ssub * yvt/b/sl}{}
+\DeclareFontShape{TS1}{yvt}{bx}{scit}{<->ssub * yvt/b/scit}{}
+\DeclareFontShape{TS1}{yvt}{b}{scsl}{<->ssub * yvt/b/scit}{}
+\DeclareFontShape{TS1}{yvt}{bx}{scsl}{<->ssub * yvt/b/scsl}{}
+\DeclareFontShape{TS1}{yvt}{b}{si}{<->ssub * yvt/b/scsl}{}
+\DeclareFontShape{TS1}{yvt}{bx}{si}{<->ssub * yvt/b/si}{}
+\DeclareFontShape{TS1}{yvt}{eb}{sc}{<->ssub * yvt/eb/n}{}
+\DeclareFontShape{TS1}{yvt}{eb}{scit}{<->ssub * yvt/eb/sc}{}
+\DeclareFontShape{TS1}{yvt}{eb}{scsl}{<->ssub * yvt/eb/scit}{}
+\DeclareFontShape{TS1}{yvt}{eb}{si}{<->ssub * yvt/eb/scsl}{}
+\DeclareFontShape{TS1}{yvt}{eb}{sl}{<->ssub * yvt/eb/it}{}
+\DeclareFontShape{TS1}{yvt}{c}{sl}{<->ssub * yvt/c/it}{}
+\DeclareFontShape{TS1}{yvt}{c}{scsl}{<->ssub * yvt/c/scit}{}
+\DeclareFontShape{TS1}{yvt}{c}{si}{<->ssub * yvt/c/scsl}{}
+\DeclareFontShape{TS1}{yvt}{bc}{sl}{<->ssub * yvt/bc/it}{}
+\DeclareFontShape{TS1}{yvt}{bc}{scsl}{<->ssub * yvt/bc/scit}{}
+\DeclareFontShape{TS1}{yvt}{bc}{si}{<->ssub * yvt/bc/scsl}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/ts1yvtajw.fd b/Master/texmf-dist/tex/latex/venturisadf/ts1yvtajw.fd
new file mode 100644
index 00000000000..45a558ab84d
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/ts1yvtajw.fd
@@ -0,0 +1,103 @@
+%Filename: ts1yvtajw.fd
+%Created by: tex yvt-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{ts1yvtajw.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for TS1/yvtajw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvt@scale\endcsname\relax
+ \let\yvt@@scale\@empty
+\else
+ \edef\yvt@@scale{s*[\csname yvt@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{yvtajw}{}
+
+\DeclareFontShape{TS1}{yvtajw}{m}{n}{
+ <-> \yvt@@scale yvtr8c
+}{}
+
+\DeclareFontShape{TS1}{yvtajw}{m}{sc}{
+ <-> \yvt@@scale yvtrc8c
+}{}
+
+\DeclareFontShape{TS1}{yvtajw}{m}{it}{
+ <-> \yvt@@scale yvtri8c
+}{}
+
+\DeclareFontShape{TS1}{yvtajw}{m}{scit}{
+ <-> \yvt@@scale yvtrci8c
+}{}
+
+\DeclareFontShape{TS1}{yvtajw}{b}{n}{
+ <-> \yvt@@scale yvtb8c
+}{}
+
+\DeclareFontShape{TS1}{yvtajw}{b}{sc}{
+ <-> \yvt@@scale yvtbc8c
+}{}
+
+\DeclareFontShape{TS1}{yvtajw}{b}{it}{
+ <-> \yvt@@scale yvtbi8c
+}{}
+
+\DeclareFontShape{TS1}{yvtajw}{b}{scit}{
+ <-> \yvt@@scale yvtbci8c
+}{}
+
+\DeclareFontShape{TS1}{yvtajw}{c}{n}{
+ <-> \yvt@@scale yvtr8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtajw}{c}{sc}{
+ <-> \yvt@@scale yvtrc8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtajw}{c}{it}{
+ <-> \yvt@@scale yvtri8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtajw}{c}{scit}{
+ <-> \yvt@@scale yvtrci8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtajw}{bc}{n}{
+ <-> \yvt@@scale yvtb8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtajw}{bc}{sc}{
+ <-> \yvt@@scale yvtbc8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtajw}{bc}{it}{
+ <-> \yvt@@scale yvtbi8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtajw}{bc}{scit}{
+ <-> \yvt@@scale yvtbci8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtajw}{m}{sl}{<->ssub * yvtajw/m/it}{}
+\DeclareFontShape{TS1}{yvtajw}{m}{scsl}{<->ssub * yvtajw/m/scit}{}
+\DeclareFontShape{TS1}{yvtajw}{m}{si}{<->ssub * yvtajw/m/scsl}{}
+\DeclareFontShape{TS1}{yvtajw}{bx}{n}{<->ssub * yvtajw/b/n}{}
+\DeclareFontShape{TS1}{yvtajw}{bx}{sc}{<->ssub * yvtajw/b/sc}{}
+\DeclareFontShape{TS1}{yvtajw}{bx}{it}{<->ssub * yvtajw/b/it}{}
+\DeclareFontShape{TS1}{yvtajw}{b}{sl}{<->ssub * yvtajw/b/it}{}
+\DeclareFontShape{TS1}{yvtajw}{bx}{sl}{<->ssub * yvtajw/b/sl}{}
+\DeclareFontShape{TS1}{yvtajw}{bx}{scit}{<->ssub * yvtajw/b/scit}{}
+\DeclareFontShape{TS1}{yvtajw}{b}{scsl}{<->ssub * yvtajw/b/scit}{}
+\DeclareFontShape{TS1}{yvtajw}{bx}{scsl}{<->ssub * yvtajw/b/scsl}{}
+\DeclareFontShape{TS1}{yvtajw}{b}{si}{<->ssub * yvtajw/b/scsl}{}
+\DeclareFontShape{TS1}{yvtajw}{bx}{si}{<->ssub * yvtajw/b/si}{}
+\DeclareFontShape{TS1}{yvtajw}{c}{sl}{<->ssub * yvtajw/c/it}{}
+\DeclareFontShape{TS1}{yvtajw}{c}{scsl}{<->ssub * yvtajw/c/scit}{}
+\DeclareFontShape{TS1}{yvtajw}{c}{si}{<->ssub * yvtajw/c/scsl}{}
+\DeclareFontShape{TS1}{yvtajw}{bc}{sl}{<->ssub * yvtajw/bc/it}{}
+\DeclareFontShape{TS1}{yvtajw}{bc}{scsl}{<->ssub * yvtajw/bc/scit}{}
+\DeclareFontShape{TS1}{yvtajw}{bc}{si}{<->ssub * yvtajw/bc/scsl}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/ts1yvtaw.fd b/Master/texmf-dist/tex/latex/venturisadf/ts1yvtaw.fd
new file mode 100644
index 00000000000..8736f1e3d50
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/ts1yvtaw.fd
@@ -0,0 +1,103 @@
+%Filename: ts1yvtaw.fd
+%Created by: tex yvt-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{ts1yvtaw.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for TS1/yvtaw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvt@scale\endcsname\relax
+ \let\yvt@@scale\@empty
+\else
+ \edef\yvt@@scale{s*[\csname yvt@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{yvtaw}{}
+
+\DeclareFontShape{TS1}{yvtaw}{m}{n}{
+ <-> \yvt@@scale yvtr8c
+}{}
+
+\DeclareFontShape{TS1}{yvtaw}{m}{sc}{
+ <-> \yvt@@scale yvtrc8c
+}{}
+
+\DeclareFontShape{TS1}{yvtaw}{m}{it}{
+ <-> \yvt@@scale yvtri8c
+}{}
+
+\DeclareFontShape{TS1}{yvtaw}{m}{scit}{
+ <-> \yvt@@scale yvtrci8c
+}{}
+
+\DeclareFontShape{TS1}{yvtaw}{b}{n}{
+ <-> \yvt@@scale yvtb8c
+}{}
+
+\DeclareFontShape{TS1}{yvtaw}{b}{sc}{
+ <-> \yvt@@scale yvtbc8c
+}{}
+
+\DeclareFontShape{TS1}{yvtaw}{b}{it}{
+ <-> \yvt@@scale yvtbi8c
+}{}
+
+\DeclareFontShape{TS1}{yvtaw}{b}{scit}{
+ <-> \yvt@@scale yvtbci8c
+}{}
+
+\DeclareFontShape{TS1}{yvtaw}{c}{n}{
+ <-> \yvt@@scale yvtr8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtaw}{c}{sc}{
+ <-> \yvt@@scale yvtrc8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtaw}{c}{it}{
+ <-> \yvt@@scale yvtri8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtaw}{c}{scit}{
+ <-> \yvt@@scale yvtrci8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtaw}{bc}{n}{
+ <-> \yvt@@scale yvtb8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtaw}{bc}{sc}{
+ <-> \yvt@@scale yvtbc8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtaw}{bc}{it}{
+ <-> \yvt@@scale yvtbi8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtaw}{bc}{scit}{
+ <-> \yvt@@scale yvtbci8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtaw}{m}{sl}{<->ssub * yvtaw/m/it}{}
+\DeclareFontShape{TS1}{yvtaw}{m}{scsl}{<->ssub * yvtaw/m/scit}{}
+\DeclareFontShape{TS1}{yvtaw}{m}{si}{<->ssub * yvtaw/m/scsl}{}
+\DeclareFontShape{TS1}{yvtaw}{bx}{n}{<->ssub * yvtaw/b/n}{}
+\DeclareFontShape{TS1}{yvtaw}{bx}{sc}{<->ssub * yvtaw/b/sc}{}
+\DeclareFontShape{TS1}{yvtaw}{bx}{it}{<->ssub * yvtaw/b/it}{}
+\DeclareFontShape{TS1}{yvtaw}{b}{sl}{<->ssub * yvtaw/b/it}{}
+\DeclareFontShape{TS1}{yvtaw}{bx}{sl}{<->ssub * yvtaw/b/sl}{}
+\DeclareFontShape{TS1}{yvtaw}{bx}{scit}{<->ssub * yvtaw/b/scit}{}
+\DeclareFontShape{TS1}{yvtaw}{b}{scsl}{<->ssub * yvtaw/b/scit}{}
+\DeclareFontShape{TS1}{yvtaw}{bx}{scsl}{<->ssub * yvtaw/b/scsl}{}
+\DeclareFontShape{TS1}{yvtaw}{b}{si}{<->ssub * yvtaw/b/scsl}{}
+\DeclareFontShape{TS1}{yvtaw}{bx}{si}{<->ssub * yvtaw/b/si}{}
+\DeclareFontShape{TS1}{yvtaw}{c}{sl}{<->ssub * yvtaw/c/it}{}
+\DeclareFontShape{TS1}{yvtaw}{c}{scsl}{<->ssub * yvtaw/c/scit}{}
+\DeclareFontShape{TS1}{yvtaw}{c}{si}{<->ssub * yvtaw/c/scsl}{}
+\DeclareFontShape{TS1}{yvtaw}{bc}{sl}{<->ssub * yvtaw/bc/it}{}
+\DeclareFontShape{TS1}{yvtaw}{bc}{scsl}{<->ssub * yvtaw/bc/scit}{}
+\DeclareFontShape{TS1}{yvtaw}{bc}{si}{<->ssub * yvtaw/bc/scsl}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/ts1yvtd.fd b/Master/texmf-dist/tex/latex/venturisadf/ts1yvtd.fd
new file mode 100644
index 00000000000..9880c3f23ea
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/ts1yvtd.fd
@@ -0,0 +1,97 @@
+%Filename: ts1yvtd.fd
+%Created by: tex yvt-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{ts1yvtd.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for TS1/yvtd.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvt@scale\endcsname\relax
+ \let\yvt@@scale\@empty
+\else
+ \edef\yvt@@scale{s*[\csname yvt@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{yvtd}{}
+
+\DeclareFontShape{TS1}{yvtd}{bc}{sc}{
+ <-> \yvt@@scale yvtbd8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtd}{m}{sc}{
+ <-> \yvt@@scale yvtbd8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtd}{c}{sc}{
+ <-> \yvt@@scale yvtbd8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtd}{b}{sc}{
+ <-> \yvt@@scale yvtbd8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtd}{eb}{sc}{
+ <-> \yvt@@scale yvtbd8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtd}{m}{ol}{
+ <-> \yvt@@scale yvtrdl8c
+}{}
+
+\DeclareFontShape{TS1}{yvtd}{c}{ol}{
+ <-> \yvt@@scale yvtrdl8c
+}{}
+
+\DeclareFontShape{TS1}{yvtd}{bc}{ol}{
+ <-> \yvt@@scale yvtrdl8c
+}{}
+
+\DeclareFontShape{TS1}{yvtd}{b}{ol}{
+ <-> \yvt@@scale yvtrdl8c
+}{}
+
+\DeclareFontShape{TS1}{yvtd}{c}{n}{
+ <-> \yvt@@scale yvtbd8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtd}{m}{n}{
+ <-> \yvt@@scale yvtbd8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtd}{bc}{n}{
+ <-> \yvt@@scale yvtbd8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtd}{b}{n}{
+ <-> \yvt@@scale yvtbd8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtd}{eb}{n}{
+ <-> \yvt@@scale yvtbd8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtd}{bc}{scit}{<->ssub * yvtd/bc/sc}{}
+\DeclareFontShape{TS1}{yvtd}{bc}{scsl}{<->ssub * yvtd/bc/scit}{}
+\DeclareFontShape{TS1}{yvtd}{bc}{si}{<->ssub * yvtd/bc/scsl}{}
+\DeclareFontShape{TS1}{yvtd}{m}{scit}{<->ssub * yvtd/m/sc}{}
+\DeclareFontShape{TS1}{yvtd}{m}{scsl}{<->ssub * yvtd/m/scit}{}
+\DeclareFontShape{TS1}{yvtd}{m}{si}{<->ssub * yvtd/m/scsl}{}
+\DeclareFontShape{TS1}{yvtd}{c}{scit}{<->ssub * yvtd/c/sc}{}
+\DeclareFontShape{TS1}{yvtd}{c}{scsl}{<->ssub * yvtd/c/scit}{}
+\DeclareFontShape{TS1}{yvtd}{c}{si}{<->ssub * yvtd/c/scsl}{}
+\DeclareFontShape{TS1}{yvtd}{bx}{sc}{<->ssub * yvtd/b/sc}{}
+\DeclareFontShape{TS1}{yvtd}{b}{scit}{<->ssub * yvtd/b/sc}{}
+\DeclareFontShape{TS1}{yvtd}{bx}{scit}{<->ssub * yvtd/b/scit}{}
+\DeclareFontShape{TS1}{yvtd}{b}{scsl}{<->ssub * yvtd/b/scit}{}
+\DeclareFontShape{TS1}{yvtd}{bx}{scsl}{<->ssub * yvtd/b/scsl}{}
+\DeclareFontShape{TS1}{yvtd}{b}{si}{<->ssub * yvtd/b/scsl}{}
+\DeclareFontShape{TS1}{yvtd}{bx}{si}{<->ssub * yvtd/b/si}{}
+\DeclareFontShape{TS1}{yvtd}{eb}{scit}{<->ssub * yvtd/eb/sc}{}
+\DeclareFontShape{TS1}{yvtd}{eb}{scsl}{<->ssub * yvtd/eb/scit}{}
+\DeclareFontShape{TS1}{yvtd}{eb}{si}{<->ssub * yvtd/eb/scsl}{}
+\DeclareFontShape{TS1}{yvtd}{bx}{ol}{<->ssub * yvtd/b/ol}{}
+\DeclareFontShape{TS1}{yvtd}{bx}{n}{<->ssub * yvtd/b/n}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/ts1yvtj.fd b/Master/texmf-dist/tex/latex/venturisadf/ts1yvtj.fd
new file mode 100644
index 00000000000..606b774992b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/ts1yvtj.fd
@@ -0,0 +1,103 @@
+%Filename: ts1yvtj.fd
+%Created by: tex yvt-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{ts1yvtj.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for TS1/yvtj.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvt@scale\endcsname\relax
+ \let\yvt@@scale\@empty
+\else
+ \edef\yvt@@scale{s*[\csname yvt@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{yvtj}{}
+
+\DeclareFontShape{TS1}{yvtj}{m}{n}{
+ <-> \yvt@@scale yvtr8c
+}{}
+
+\DeclareFontShape{TS1}{yvtj}{m}{sc}{
+ <-> \yvt@@scale yvtrc8c
+}{}
+
+\DeclareFontShape{TS1}{yvtj}{m}{it}{
+ <-> \yvt@@scale yvtri8c
+}{}
+
+\DeclareFontShape{TS1}{yvtj}{m}{scit}{
+ <-> \yvt@@scale yvtrci8c
+}{}
+
+\DeclareFontShape{TS1}{yvtj}{b}{n}{
+ <-> \yvt@@scale yvtb8c
+}{}
+
+\DeclareFontShape{TS1}{yvtj}{b}{sc}{
+ <-> \yvt@@scale yvtbc8c
+}{}
+
+\DeclareFontShape{TS1}{yvtj}{b}{it}{
+ <-> \yvt@@scale yvtbi8c
+}{}
+
+\DeclareFontShape{TS1}{yvtj}{b}{scit}{
+ <-> \yvt@@scale yvtbci8c
+}{}
+
+\DeclareFontShape{TS1}{yvtj}{c}{n}{
+ <-> \yvt@@scale yvtr8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtj}{c}{sc}{
+ <-> \yvt@@scale yvtrc8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtj}{c}{it}{
+ <-> \yvt@@scale yvtri8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtj}{c}{scit}{
+ <-> \yvt@@scale yvtrci8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtj}{bc}{n}{
+ <-> \yvt@@scale yvtb8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtj}{bc}{sc}{
+ <-> \yvt@@scale yvtbc8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtj}{bc}{it}{
+ <-> \yvt@@scale yvtbi8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtj}{bc}{scit}{
+ <-> \yvt@@scale yvtbci8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtj}{m}{sl}{<->ssub * yvtj/m/it}{}
+\DeclareFontShape{TS1}{yvtj}{m}{scsl}{<->ssub * yvtj/m/scit}{}
+\DeclareFontShape{TS1}{yvtj}{m}{si}{<->ssub * yvtj/m/scsl}{}
+\DeclareFontShape{TS1}{yvtj}{bx}{n}{<->ssub * yvtj/b/n}{}
+\DeclareFontShape{TS1}{yvtj}{bx}{sc}{<->ssub * yvtj/b/sc}{}
+\DeclareFontShape{TS1}{yvtj}{bx}{it}{<->ssub * yvtj/b/it}{}
+\DeclareFontShape{TS1}{yvtj}{b}{sl}{<->ssub * yvtj/b/it}{}
+\DeclareFontShape{TS1}{yvtj}{bx}{sl}{<->ssub * yvtj/b/sl}{}
+\DeclareFontShape{TS1}{yvtj}{bx}{scit}{<->ssub * yvtj/b/scit}{}
+\DeclareFontShape{TS1}{yvtj}{b}{scsl}{<->ssub * yvtj/b/scit}{}
+\DeclareFontShape{TS1}{yvtj}{bx}{scsl}{<->ssub * yvtj/b/scsl}{}
+\DeclareFontShape{TS1}{yvtj}{b}{si}{<->ssub * yvtj/b/scsl}{}
+\DeclareFontShape{TS1}{yvtj}{bx}{si}{<->ssub * yvtj/b/si}{}
+\DeclareFontShape{TS1}{yvtj}{c}{sl}{<->ssub * yvtj/c/it}{}
+\DeclareFontShape{TS1}{yvtj}{c}{scsl}{<->ssub * yvtj/c/scit}{}
+\DeclareFontShape{TS1}{yvtj}{c}{si}{<->ssub * yvtj/c/scsl}{}
+\DeclareFontShape{TS1}{yvtj}{bc}{sl}{<->ssub * yvtj/bc/it}{}
+\DeclareFontShape{TS1}{yvtj}{bc}{scsl}{<->ssub * yvtj/bc/scit}{}
+\DeclareFontShape{TS1}{yvtj}{bc}{si}{<->ssub * yvtj/bc/scsl}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/ts1yvtjw.fd b/Master/texmf-dist/tex/latex/venturisadf/ts1yvtjw.fd
new file mode 100644
index 00000000000..52b4279e32f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/ts1yvtjw.fd
@@ -0,0 +1,103 @@
+%Filename: ts1yvtjw.fd
+%Created by: tex yvt-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{ts1yvtjw.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for TS1/yvtjw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvt@scale\endcsname\relax
+ \let\yvt@@scale\@empty
+\else
+ \edef\yvt@@scale{s*[\csname yvt@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{yvtjw}{}
+
+\DeclareFontShape{TS1}{yvtjw}{m}{n}{
+ <-> \yvt@@scale yvtr8c
+}{}
+
+\DeclareFontShape{TS1}{yvtjw}{m}{sc}{
+ <-> \yvt@@scale yvtrc8c
+}{}
+
+\DeclareFontShape{TS1}{yvtjw}{m}{it}{
+ <-> \yvt@@scale yvtri8c
+}{}
+
+\DeclareFontShape{TS1}{yvtjw}{m}{scit}{
+ <-> \yvt@@scale yvtrci8c
+}{}
+
+\DeclareFontShape{TS1}{yvtjw}{b}{n}{
+ <-> \yvt@@scale yvtb8c
+}{}
+
+\DeclareFontShape{TS1}{yvtjw}{b}{sc}{
+ <-> \yvt@@scale yvtbc8c
+}{}
+
+\DeclareFontShape{TS1}{yvtjw}{b}{it}{
+ <-> \yvt@@scale yvtbi8c
+}{}
+
+\DeclareFontShape{TS1}{yvtjw}{b}{scit}{
+ <-> \yvt@@scale yvtbci8c
+}{}
+
+\DeclareFontShape{TS1}{yvtjw}{c}{n}{
+ <-> \yvt@@scale yvtr8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtjw}{c}{sc}{
+ <-> \yvt@@scale yvtrc8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtjw}{c}{it}{
+ <-> \yvt@@scale yvtri8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtjw}{c}{scit}{
+ <-> \yvt@@scale yvtrci8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtjw}{bc}{n}{
+ <-> \yvt@@scale yvtb8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtjw}{bc}{sc}{
+ <-> \yvt@@scale yvtbc8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtjw}{bc}{it}{
+ <-> \yvt@@scale yvtbi8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtjw}{bc}{scit}{
+ <-> \yvt@@scale yvtbci8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtjw}{m}{sl}{<->ssub * yvtjw/m/it}{}
+\DeclareFontShape{TS1}{yvtjw}{m}{scsl}{<->ssub * yvtjw/m/scit}{}
+\DeclareFontShape{TS1}{yvtjw}{m}{si}{<->ssub * yvtjw/m/scsl}{}
+\DeclareFontShape{TS1}{yvtjw}{bx}{n}{<->ssub * yvtjw/b/n}{}
+\DeclareFontShape{TS1}{yvtjw}{bx}{sc}{<->ssub * yvtjw/b/sc}{}
+\DeclareFontShape{TS1}{yvtjw}{bx}{it}{<->ssub * yvtjw/b/it}{}
+\DeclareFontShape{TS1}{yvtjw}{b}{sl}{<->ssub * yvtjw/b/it}{}
+\DeclareFontShape{TS1}{yvtjw}{bx}{sl}{<->ssub * yvtjw/b/sl}{}
+\DeclareFontShape{TS1}{yvtjw}{bx}{scit}{<->ssub * yvtjw/b/scit}{}
+\DeclareFontShape{TS1}{yvtjw}{b}{scsl}{<->ssub * yvtjw/b/scit}{}
+\DeclareFontShape{TS1}{yvtjw}{bx}{scsl}{<->ssub * yvtjw/b/scsl}{}
+\DeclareFontShape{TS1}{yvtjw}{b}{si}{<->ssub * yvtjw/b/scsl}{}
+\DeclareFontShape{TS1}{yvtjw}{bx}{si}{<->ssub * yvtjw/b/si}{}
+\DeclareFontShape{TS1}{yvtjw}{c}{sl}{<->ssub * yvtjw/c/it}{}
+\DeclareFontShape{TS1}{yvtjw}{c}{scsl}{<->ssub * yvtjw/c/scit}{}
+\DeclareFontShape{TS1}{yvtjw}{c}{si}{<->ssub * yvtjw/c/scsl}{}
+\DeclareFontShape{TS1}{yvtjw}{bc}{sl}{<->ssub * yvtjw/bc/it}{}
+\DeclareFontShape{TS1}{yvtjw}{bc}{scsl}{<->ssub * yvtjw/bc/scit}{}
+\DeclareFontShape{TS1}{yvtjw}{bc}{si}{<->ssub * yvtjw/bc/scsl}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/ts1yvtw.fd b/Master/texmf-dist/tex/latex/venturisadf/ts1yvtw.fd
new file mode 100644
index 00000000000..c24428ff5af
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/venturisadf/ts1yvtw.fd
@@ -0,0 +1,103 @@
+%Filename: ts1yvtw.fd
+%Created by: tex yvt-drv
+%Created using fontinst v1.933
+
+%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
+
+\ProvidesFile{ts1yvtw.fd}
+ [2024/08/17 Fontinst v1.933 font definitions for TS1/yvtw.]
+
+% addaswyd o t1phv.fd (dyddiad y ffeil fd: 2020-03-25)
+\expandafter\ifx\csname yvt@scale\endcsname\relax
+ \let\yvt@@scale\@empty
+\else
+ \edef\yvt@@scale{s*[\csname yvt@scale\endcsname]}%
+\fi
+
+\DeclareFontFamily{TS1}{yvtw}{}
+
+\DeclareFontShape{TS1}{yvtw}{m}{n}{
+ <-> \yvt@@scale yvtr8c
+}{}
+
+\DeclareFontShape{TS1}{yvtw}{m}{sc}{
+ <-> \yvt@@scale yvtrc8c
+}{}
+
+\DeclareFontShape{TS1}{yvtw}{m}{it}{
+ <-> \yvt@@scale yvtri8c
+}{}
+
+\DeclareFontShape{TS1}{yvtw}{m}{scit}{
+ <-> \yvt@@scale yvtrci8c
+}{}
+
+\DeclareFontShape{TS1}{yvtw}{b}{n}{
+ <-> \yvt@@scale yvtb8c
+}{}
+
+\DeclareFontShape{TS1}{yvtw}{b}{sc}{
+ <-> \yvt@@scale yvtbc8c
+}{}
+
+\DeclareFontShape{TS1}{yvtw}{b}{it}{
+ <-> \yvt@@scale yvtbi8c
+}{}
+
+\DeclareFontShape{TS1}{yvtw}{b}{scit}{
+ <-> \yvt@@scale yvtbci8c
+}{}
+
+\DeclareFontShape{TS1}{yvtw}{c}{n}{
+ <-> \yvt@@scale yvtr8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtw}{c}{sc}{
+ <-> \yvt@@scale yvtrc8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtw}{c}{it}{
+ <-> \yvt@@scale yvtri8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtw}{c}{scit}{
+ <-> \yvt@@scale yvtrci8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtw}{bc}{n}{
+ <-> \yvt@@scale yvtb8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtw}{bc}{sc}{
+ <-> \yvt@@scale yvtbc8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtw}{bc}{it}{
+ <-> \yvt@@scale yvtbi8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtw}{bc}{scit}{
+ <-> \yvt@@scale yvtbci8cc
+}{}
+
+\DeclareFontShape{TS1}{yvtw}{m}{sl}{<->ssub * yvtw/m/it}{}
+\DeclareFontShape{TS1}{yvtw}{m}{scsl}{<->ssub * yvtw/m/scit}{}
+\DeclareFontShape{TS1}{yvtw}{m}{si}{<->ssub * yvtw/m/scsl}{}
+\DeclareFontShape{TS1}{yvtw}{bx}{n}{<->ssub * yvtw/b/n}{}
+\DeclareFontShape{TS1}{yvtw}{bx}{sc}{<->ssub * yvtw/b/sc}{}
+\DeclareFontShape{TS1}{yvtw}{bx}{it}{<->ssub * yvtw/b/it}{}
+\DeclareFontShape{TS1}{yvtw}{b}{sl}{<->ssub * yvtw/b/it}{}
+\DeclareFontShape{TS1}{yvtw}{bx}{sl}{<->ssub * yvtw/b/sl}{}
+\DeclareFontShape{TS1}{yvtw}{bx}{scit}{<->ssub * yvtw/b/scit}{}
+\DeclareFontShape{TS1}{yvtw}{b}{scsl}{<->ssub * yvtw/b/scit}{}
+\DeclareFontShape{TS1}{yvtw}{bx}{scsl}{<->ssub * yvtw/b/scsl}{}
+\DeclareFontShape{TS1}{yvtw}{b}{si}{<->ssub * yvtw/b/scsl}{}
+\DeclareFontShape{TS1}{yvtw}{bx}{si}{<->ssub * yvtw/b/si}{}
+\DeclareFontShape{TS1}{yvtw}{c}{sl}{<->ssub * yvtw/c/it}{}
+\DeclareFontShape{TS1}{yvtw}{c}{scsl}{<->ssub * yvtw/c/scit}{}
+\DeclareFontShape{TS1}{yvtw}{c}{si}{<->ssub * yvtw/c/scsl}{}
+\DeclareFontShape{TS1}{yvtw}{bc}{sl}{<->ssub * yvtw/bc/it}{}
+\DeclareFontShape{TS1}{yvtw}{bc}{scsl}{<->ssub * yvtw/bc/scit}{}
+\DeclareFontShape{TS1}{yvtw}{bc}{si}{<->ssub * yvtw/bc/scsl}{}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisadf/venturis.sty b/Master/texmf-dist/tex/latex/venturisadf/venturis.sty
index d746f39c7cb..c6d46951e47 100644
--- a/Master/texmf-dist/tex/latex/venturisadf/venturis.sty
+++ b/Master/texmf-dist/tex/latex/venturisadf/venturis.sty
@@ -1,73 +1,105 @@
-%% Copyright 2010 Clea F. Rees
-%
-% 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 Clea F. Rees.
-%
-% This work consists of all files listed in manifest.txt.
+%%
+%% This is file `venturis.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% venturis.dtx (with options: `sty')
+%% Copyright (C) 2008-2024 Clea F. Rees.
+%%
+%% 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
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% venturisadf. You may however distribute the package venturisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{venturis}[2010/07/03 v1.005 VenturisADF PS]
-\RequirePackage{xkeyval}
+\RequirePackage{svn-prov}
+\ProvidesPackageSVN[\filebase.sty]{$Id: venturis.dtx 10366 2024-09-18 14:25:21Z cfrees $}[v2.0 \revinfo for VenturisADF PS 1.005]
+\DefineFileInfoSVN[venturis]
\RequirePackage[T1]{fontenc}
-\RequirePackage{textcomp}
-\RequirePackage{nfssext-cfr}
-%:boolkeys for roman osf/lf
-\define@boolkey{venturis.sty}[venturis@]{osf}[true]{%
- \ifventuris@osf
- \def\venturis@lfosf{j}%
- \else
- \def\venturis@lfosf{}%
- \fi}
-\define@boolkey{venturis.sty}[venturis@]{lf}[true]{%
- \ifventuris@lf
- \def\venturis@lfosf{}%
- \else
- \def\venturis@lfosf{j}%
- \fi}
-
-%:defaults to ensure everything is defined to something
-\ExecuteOptionsX{osf=true}
-
-%:options override defaults
-\ProcessOptionsX
-
-%:make Venturis default for roman text, implementing the relevant option
-\renewcommand{\rmdefault}{yvt\venturis@lfosf}
-%:make Venturis Sans default for sans-serif text
+\RequirePackage{nfssext-cfr}[2024/01/01]
+\IfFormatAtLeastTF {2020-02-02}{%
+ \DeclareEncodingSubset{TS1}{yvt}{1}%
+ \DeclareEncodingSubset{TS1}{yvtj}{1}%
+ \DeclareEncodingSubset{TS1}{yvtw}{1}%
+ \DeclareEncodingSubset{TS1}{yvtaw}{1}%
+ \DeclareEncodingSubset{TS1}{yvtjw}{1}%
+ \DeclareEncodingSubset{TS1}{yvtajw}{1}%
+ \DeclareEncodingSubset{TS1}{yvtd}{1}%
+ \DeclareEncodingSubset{TS1}{yv1}{1}%
+ \DeclareEncodingSubset{TS1}{yv1d}{1}%
+}{%
+ \RequirePackage{textcomp}}
+\UndeclareTextCommand{\textperthousand}{T1}
+\ExplSyntaxOn
+\keys_define:nn { venturis }
+{
+ lf .bool_set_inverse:N = \l__venturis_osf_bool,
+ lf .default:n = true,
+ osf .bool_set:N = \l__venturis_osf_bool,
+ osf .default:n = true,
+ osf .initial:n = true,
+ scale ~ rm .tl_set:N = \yvt@scale,
+ scale ~ rm .initial:V = \@empty,
+ scale ~ sf .tl_set:N = \yvi@scale,
+ scale ~ sf .initial:V = \@empty,
+ scale .code:n = {
+ \gdef\yvt@scale{#1}
+ \gdef\yvi@scale{#1}
+ },
+}
+\ProcessKeyOptions[venturis]
+\bool_if:NTF \l__venturis_osf_bool
+{
+ \cs_set:Npn \rmdefault { yvtj }
+}{
+ \cs_set:Npn \rmdefault { yvt }
+}
+\ExplSyntaxOff
\renewcommand{\sfdefault}{yv1}
-
-%:introduce special titling commands
\DeclareRobustCommand{\vtstyle}[1][]{%
- \edef\vt@shape{#1}%
- \def\tempo{ol}%
- \def\temps{yv1}%
- \def\tempr{yvt}%
- \not@math@alphabet\vtstyle\relax
-%:because the titling fonts have limited availability, don't use the \tistyle set-up, but choose the family explicitly in case we're currently using sans or typewriter - note, though, that some are also called as small-caps commands in certain sans-serif variants (though the seriffed variant seems not to match anything...)
- \ifx\vt@shape\tempo
- \fontfamily{yvtd}\fontshape{ol}\selectfont
- \else
- \edef\tempf{\expandafter\exfs@get@base\f@family\@nil}%
- \ifx\tempf\temps
- \fontfamily{yv1d}\selectfont
- \else
- \ifx\tempf\tempr
- \fontfamily{yvtd}\selectfont
- \else
- \PackageWarning{venturis.sty}{\tempf is unknown. This command requires that yv1 or yvt be active in order to determine whether serif or sans-serif titling is required. I am going to guess that you want serif titling. If this is wrong, be sure to activate yv1 first or copy and adapt the styling command from venturis.sty.}%
- \fontfamily{yvtd}\selectfont
- \fi
- \fi
- \fi
- }
+\edef\vt@shape{#1}%
+\def\tempo{ol}%
+\def\temps{yv1}%
+\def\tempr{yvt}%
+\not@math@alphabet\vtstyle\relax
+\ifx\vt@shape\tempo
+\fontfamily{yvtd}\fontshape{ol}\selectfont
+\else
+\edef\tempf{\expandafter\exfs@get@base\f@family\@nil}%
+\ifx\tempf\temps
+\fontfamily{yv1d}\selectfont
+\else
+\ifx\tempf\tempr
+\fontfamily{yvtd}\selectfont
+\else
+\PackageWarning{venturis.sty}{%
+ \tempf is unknown.
+ This command requires that yv1 or yvt be active in order to determine whether serif or sans-serif titling is required.
+ I am going to guess that you want serif titling. If this is wrong, be sure to activate yv1 first or copy and adapt the styling command from venturis.sty.%
+ }%
+\fontfamily{yvtd}\selectfont
+\fi
+\fi
+\fi
+}
\DeclareTextFontCommand{\textvt}{\vtstyle}
\DeclareTextFontCommand{\textvtl}{\vtstyle[ol]}
+%% end venturis.sty
\endinput
+%%
+%% End of file `venturis.sty'.
diff --git a/Master/texmf-dist/tex/latex/venturisadf/venturis2.sty b/Master/texmf-dist/tex/latex/venturisadf/venturis2.sty
index e28fcbaef45..0bf9ebdec49 100644
--- a/Master/texmf-dist/tex/latex/venturisadf/venturis2.sty
+++ b/Master/texmf-dist/tex/latex/venturisadf/venturis2.sty
@@ -1,50 +1,89 @@
-%% Copyright 2010 Clea F. Rees
-%
-% 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 Clea F. Rees.
-%
-% This work consists of all files listed in manifest.txt.
+%%
+%% This is file `venturis2.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% venturis2.dtx (with options: `sty')
+%% Copyright (C) 2008-2024 Clea F. Rees.
+%%
+%% 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
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% venturisadf. You may however distribute the package venturisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{venturis2}[2010/07/03 v1.005 VenturisADFNo2 PS]
+\RequirePackage{svn-prov}
+\ProvidesPackageSVN[\filebase.sty]{$Id: venturis2.dtx 10366 2024-09-18 14:25:21Z cfrees $}[v2.0 \revinfo for VenturisADFNo2 PS 1.005]
+\DefineFileInfoSVN[venturisii]
\RequirePackage[T1]{fontenc}
-\RequirePackage{textcomp}
-\RequirePackage{nfssext-cfr}
+\RequirePackage{nfssext-cfr}[2024/01/01]
+\IfFormatAtLeastTF {2020-02-02}{%
+ \DeclareEncodingSubset{TS1}{yv2}{1}%
+ \DeclareEncodingSubset{TS1}{yv3}{1}%
+}{%
+ \RequirePackage{textcomp}}
+\UndeclareTextCommand{\textperthousand}{T1}
+\ExplSyntaxOn
+\keys_define:nn { venturis ii }
+{
+ scale ~ rm .tl_set:N = \yvii@scale,
+ scale ~ rm .initial:V = \@empty,
+ scale ~ sf .tl_set:N = \yviii@scale,
+ scale ~ sf .initial:V = \@empty,
+ scale .code:n = {
+ \gdef\yvii@scale{#1}
+ \gdef\yviii@scale{#1}
+ },
+}
+\ProcessKeyOptions[venturis ii]
+\ExplSyntaxOff
\renewcommand{\rmdefault}{yv2}
\renewcommand{\sfdefault}{yv3}
-%:introduce special titling commands
\DeclareRobustCommand{\vtstyle}[1][]{%
- \edef\vt@shape{#1}%
- \def\tempo{ol}%
- \def\temps{yv3}%
- \def\tempr{yv2}%
- \not@math@alphabet\vtstyle\relax
-%:because the titling fonts have limited availability, don't use the \tistyle set-up which won't work with venturis2 in any case, but choose the family explicitly in case we're currently using sans or typewriter
+\edef\vt@shape{#1}%
+\def\tempo{ol}%
+\def\temps{yv3}%
+\def\tempr{yv2}%
+\not@math@alphabet\vtstyle\relax
\ifx\vt@shape\tempo
- \fontfamily{yvtd}\fontshape{ol}\selectfont
- \else
- \edef\tempf{\expandafter\exfs@get@base\f@family\@nil}%
- \ifx\tempf\temps
- \fontfamily{yv1d}\selectfont
- \else
- \ifx\tempf\tempr
- \fontfamily{yvtd}\selectfont
- \else
- \PackageWarning{venturis.sty}{\tempf is unknown. This command requires that yv2 or yv3 be active in order to determine whether serif or sans-serif titling is required. I am going to guess that you want serif titling. If this is wrong, be sure to activate yv3 first or copy and adapt the styling command from venturis.sty.}%
- \fontfamily{yvtd}\selectfont
- \fi
- \fi
- \fi
- }
+\fontfamily{yvtd}\fontshape{ol}\selectfont
+\else
+\edef\tempf{\expandafter\exfs@get@base\f@family\@nil}%
+\ifx\tempf\temps
+\fontfamily{yv1d}\selectfont
+\else
+\ifx\tempf\tempr
+\fontfamily{yvtd}\selectfont
+\else
+\PackageWarning{venturis.sty}{%
+ \tempf is unknown.
+ This command requires that yv2 or yv3 be active in order to determine whether serif or sans-serif titling is required.
+ I am going to guess that you want serif titling.
+ If this is wrong, be sure to activate yv3 first or copy and adapt the styling command from venturis.sty.%
+ }%
+\fontfamily{yvtd}\selectfont
+\fi
+\fi
+\fi
+}
\DeclareTextFontCommand{\textvt}{\vtstyle}
\DeclareTextFontCommand{\textvtl}{\vtstyle[ol]}
-
+%% end venturis2.sty
\endinput
+%%
+%% End of file `venturis2.sty'.
diff --git a/Master/texmf-dist/tex/latex/venturisadf/venturisold.sty b/Master/texmf-dist/tex/latex/venturisadf/venturisold.sty
index 0fa213688d7..cabac96cba2 100644
--- a/Master/texmf-dist/tex/latex/venturisadf/venturisold.sty
+++ b/Master/texmf-dist/tex/latex/venturisadf/venturisold.sty
@@ -1,30 +1,60 @@
-%% Copyright 2010 Clea F. Rees
-%
-% 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 Clea F. Rees.
-%
-% This work consists of all files listed in manifest.txt.
+%%
+%% This is file `venturisold.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% venturisold.dtx (with options: `sty')
+%% Copyright (C) 2008-2024 Clea F. Rees.
+%%
+%% 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
+%% https://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Clea F. Rees.
+%%
+%% This file may only be distributed together with a copy of the package
+%% venturisadf. You may however distribute the package venturisadf without
+%% such generated files.
+%%
+%% This work consists of all files listed in manifest.txt.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{venturisold}[2010/07/03 v1.005 VenturisOldADF PS]
+\RequirePackage{svn-prov}
+\ProvidesPackageSVN[\filebase.sty]{$Id: venturisold.dtx 10366 2024-09-18 14:25:21Z cfrees $}[v2.0 \revinfo (for VenturisOldADF PS 1.005)]
+\DefineFileInfoSVN[venturisold]
\RequirePackage[T1]{fontenc}
-\RequirePackage{textcomp}
-\RequirePackage{nfssext-cfr}
-%:Make Venturis Old default for roman text
+\RequirePackage{nfssext-cfr}[2024/01/01]
+\IfFormatAtLeastTF {2020-02-02}{%
+ \DeclareEncodingSubset{TS1}{yvo}{1}%
+ \DeclareEncodingSubset{TS1}{yvoa}{1}%
+ \DeclareEncodingSubset{TS1}{yvod}{1}%
+ \DeclareEncodingSubset{TS1}{yvoad}{1}%
+}{%
+ \RequirePackage{textcomp}}
+\UndeclareTextCommand{\textperthousand}{T1}
+\ExplSyntaxOn
+\keys_define:nn { venturisold }
+{
+ scale .tl_set:N = \yvo@scale,
+ scale .initial:V = \@empty,
+}
+\ProcessKeyOptions[venturisold]
+\ExplSyntaxOff
\renewcommand{\rmdefault}{yvo}
-%:introduce special titling commands
-\DeclareRobustCommand{\vtstyle}[1][]{% allow an optional argument for consistency with venturis.sty
- \not@math@alphabet\vtstyle\relax
- \fontfamily{yvod}\selectfont}
+\DeclareRobustCommand{\vtstyle}[1][]{%
+\not@math@alphabet\vtstyle\relax
+\fontfamily{yvod}\selectfont}
\DeclareTextFontCommand{\textvt}{\vtstyle}
\DeclareTextFontCommand{\textvtl}{\vtstyle}
+%% end venturis.sty
\endinput
-%% end venturisold.sty
+%%
+%% End of file `venturisold.sty'.
diff --git a/Master/texmf-dist/tex/latex/venturisold/t1yvoad.fd b/Master/texmf-dist/tex/latex/venturisold/t1yvoad.fd
deleted file mode 100644
index 7206dc69122..00000000000
--- a/Master/texmf-dist/tex/latex/venturisold/t1yvoad.fd
+++ /dev/null
@@ -1,31 +0,0 @@
-%Filename: t1yvoad.fd
-%Created by: tex yvo-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{t1yvoad.fd}
- [2010/07/03 Fontinst v1.933 font definitions for T1/yvoad.]
-
-\DeclareFontFamily{T1}{yvoad}{}
-
-\DeclareFontShape{T1}{yvoad}{db}{sc}{
- <-> yvodd8t
-}{}
-
-\DeclareFontShape{T1}{yvoad}{db}{n}{
- <-> yvodd8t
-}{}
-
-\DeclareFontShape{T1}{yvoad}{b}{sc}{<->ssub * yvoad/db/sc}{}
-\DeclareFontShape{T1}{yvoad}{bx}{sc}{<->ssub * yvoad/b/sc}{}
-\DeclareFontShape{T1}{yvoad}{m}{sc}{<->ssub * yvoad/bx/sc}{}
-\DeclareFontShape{T1}{yvoad}{db}{si}{<->ssub * yvoad/db/sc}{}
-\DeclareFontShape{T1}{yvoad}{b}{si}{<->ssub * yvoad/db/si}{}
-\DeclareFontShape{T1}{yvoad}{bx}{si}{<->ssub * yvoad/b/si}{}
-\DeclareFontShape{T1}{yvoad}{m}{si}{<->ssub * yvoad/bx/si}{}
-\DeclareFontShape{T1}{yvoad}{b}{n}{<->ssub * yvoad/db/n}{}
-\DeclareFontShape{T1}{yvoad}{bx}{n}{<->ssub * yvoad/b/n}{}
-\DeclareFontShape{T1}{yvoad}{m}{n}{<->ssub * yvoad/bx/n}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisold/t1yvod.fd b/Master/texmf-dist/tex/latex/venturisold/t1yvod.fd
deleted file mode 100644
index 1220e211a1b..00000000000
--- a/Master/texmf-dist/tex/latex/venturisold/t1yvod.fd
+++ /dev/null
@@ -1,31 +0,0 @@
-%Filename: t1yvod.fd
-%Created by: tex yvo-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{t1yvod.fd}
- [2010/07/03 Fontinst v1.933 font definitions for T1/yvod.]
-
-\DeclareFontFamily{T1}{yvod}{}
-
-\DeclareFontShape{T1}{yvod}{db}{sc}{
- <-> yvodd8t
-}{}
-
-\DeclareFontShape{T1}{yvod}{db}{n}{
- <-> yvodd8t
-}{}
-
-\DeclareFontShape{T1}{yvod}{b}{sc}{<->ssub * yvod/db/sc}{}
-\DeclareFontShape{T1}{yvod}{bx}{sc}{<->ssub * yvod/b/sc}{}
-\DeclareFontShape{T1}{yvod}{m}{sc}{<->ssub * yvod/bx/sc}{}
-\DeclareFontShape{T1}{yvod}{db}{si}{<->ssub * yvod/db/sc}{}
-\DeclareFontShape{T1}{yvod}{b}{si}{<->ssub * yvod/db/si}{}
-\DeclareFontShape{T1}{yvod}{bx}{si}{<->ssub * yvod/b/si}{}
-\DeclareFontShape{T1}{yvod}{m}{si}{<->ssub * yvod/bx/si}{}
-\DeclareFontShape{T1}{yvod}{b}{n}{<->ssub * yvod/db/n}{}
-\DeclareFontShape{T1}{yvod}{bx}{n}{<->ssub * yvod/b/n}{}
-\DeclareFontShape{T1}{yvod}{m}{n}{<->ssub * yvod/bx/n}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisold/ts1yvoad.fd b/Master/texmf-dist/tex/latex/venturisold/ts1yvoad.fd
deleted file mode 100644
index 8b9b3060588..00000000000
--- a/Master/texmf-dist/tex/latex/venturisold/ts1yvoad.fd
+++ /dev/null
@@ -1,31 +0,0 @@
-%Filename: ts1yvoad.fd
-%Created by: tex yvo-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{ts1yvoad.fd}
- [2010/07/03 Fontinst v1.933 font definitions for TS1/yvoad.]
-
-\DeclareFontFamily{TS1}{yvoad}{}
-
-\DeclareFontShape{TS1}{yvoad}{db}{sc}{
- <-> yvodd8c
-}{}
-
-\DeclareFontShape{TS1}{yvoad}{db}{n}{
- <-> yvodd8c
-}{}
-
-\DeclareFontShape{TS1}{yvoad}{b}{sc}{<->ssub * yvoad/db/sc}{}
-\DeclareFontShape{TS1}{yvoad}{bx}{sc}{<->ssub * yvoad/b/sc}{}
-\DeclareFontShape{TS1}{yvoad}{m}{sc}{<->ssub * yvoad/bx/sc}{}
-\DeclareFontShape{TS1}{yvoad}{db}{si}{<->ssub * yvoad/db/sc}{}
-\DeclareFontShape{TS1}{yvoad}{b}{si}{<->ssub * yvoad/db/si}{}
-\DeclareFontShape{TS1}{yvoad}{bx}{si}{<->ssub * yvoad/b/si}{}
-\DeclareFontShape{TS1}{yvoad}{m}{si}{<->ssub * yvoad/bx/si}{}
-\DeclareFontShape{TS1}{yvoad}{b}{n}{<->ssub * yvoad/db/n}{}
-\DeclareFontShape{TS1}{yvoad}{bx}{n}{<->ssub * yvoad/b/n}{}
-\DeclareFontShape{TS1}{yvoad}{m}{n}{<->ssub * yvoad/bx/n}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturisold/ts1yvod.fd b/Master/texmf-dist/tex/latex/venturisold/ts1yvod.fd
deleted file mode 100644
index 3fb6f9dd57b..00000000000
--- a/Master/texmf-dist/tex/latex/venturisold/ts1yvod.fd
+++ /dev/null
@@ -1,31 +0,0 @@
-%Filename: ts1yvod.fd
-%Created by: tex yvo-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{ts1yvod.fd}
- [2010/07/03 Fontinst v1.933 font definitions for TS1/yvod.]
-
-\DeclareFontFamily{TS1}{yvod}{}
-
-\DeclareFontShape{TS1}{yvod}{db}{sc}{
- <-> yvodd8c
-}{}
-
-\DeclareFontShape{TS1}{yvod}{db}{n}{
- <-> yvodd8c
-}{}
-
-\DeclareFontShape{TS1}{yvod}{b}{sc}{<->ssub * yvod/db/sc}{}
-\DeclareFontShape{TS1}{yvod}{bx}{sc}{<->ssub * yvod/b/sc}{}
-\DeclareFontShape{TS1}{yvod}{m}{sc}{<->ssub * yvod/bx/sc}{}
-\DeclareFontShape{TS1}{yvod}{db}{si}{<->ssub * yvod/db/sc}{}
-\DeclareFontShape{TS1}{yvod}{b}{si}{<->ssub * yvod/db/si}{}
-\DeclareFontShape{TS1}{yvod}{bx}{si}{<->ssub * yvod/b/si}{}
-\DeclareFontShape{TS1}{yvod}{m}{si}{<->ssub * yvod/bx/si}{}
-\DeclareFontShape{TS1}{yvod}{b}{n}{<->ssub * yvod/db/n}{}
-\DeclareFontShape{TS1}{yvod}{bx}{n}{<->ssub * yvod/b/n}{}
-\DeclareFontShape{TS1}{yvod}{m}{n}{<->ssub * yvod/bx/n}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturissans/t1yv1.fd b/Master/texmf-dist/tex/latex/venturissans/t1yv1.fd
deleted file mode 100644
index b6d4ca743a4..00000000000
--- a/Master/texmf-dist/tex/latex/venturissans/t1yv1.fd
+++ /dev/null
@@ -1,134 +0,0 @@
-%Filename: t1yv1.fd
-%Created by: tex yv1-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{t1yv1.fd}
- [2010/07/03 Fontinst v1.933 font definitions for T1/yv1.]
-
-\DeclareFontFamily{T1}{yv1}{}
-
-\DeclareFontShape{T1}{yv1}{m}{n}{
- <-> yv1r8t
-}{}
-
-\DeclareFontShape{T1}{yv1}{m}{it}{
- <-> yv1ri8t
-}{}
-
-\DeclareFontShape{T1}{yv1}{b}{n}{
- <-> yv1b8t
-}{}
-
-\DeclareFontShape{T1}{yv1}{b}{it}{
- <-> yv1bi8t
-}{}
-
-\DeclareFontShape{T1}{yv1}{eb}{n}{
- <-> yv1h8t
-}{}
-
-\DeclareFontShape{T1}{yv1}{eb}{sl}{
- <-> yv1ho8t
-}{}
-
-\DeclareFontShape{T1}{yv1}{eb}{it}{
- <-> yv1ho8t
-}{}
-
-\DeclareFontShape{T1}{yv1}{mc}{n}{
- <-> yv1r8tc
-}{}
-
-\DeclareFontShape{T1}{yv1}{mc}{it}{
- <-> yv1ri8tc
-}{}
-
-\DeclareFontShape{T1}{yv1}{bc}{n}{
- <-> yv1b8tc
-}{}
-
-\DeclareFontShape{T1}{yv1}{bc}{it}{
- <-> yv1bi8tc
-}{}
-
-\DeclareFontShape{T1}{yv1}{mx}{n}{
- <-> yv1r8tx
-}{}
-
-\DeclareFontShape{T1}{yv1}{mx}{it}{
- <-> yv1ri8tx
-}{}
-
-\DeclareFontShape{T1}{yv1}{bx}{n}{
- <-> yv1b8tx
-}{}
-
-\DeclareFontShape{T1}{yv1}{bx}{sc}{
- <-> yv1b8tx
-}{}
-
-\DeclareFontShape{T1}{yv1}{bx}{it}{
- <-> yv1bi8tx
-}{}
-
-\DeclareFontShape{T1}{yv1}{bx}{sl}{
- <-> yv1bi8tx
-}{}
-
-\DeclareFontShape{T1}{yv1}{bx}{si}{
- <-> yv1b8tx
-}{}
-
-\DeclareFontShape{T1}{yv1}{l}{n}{
- <-> yv1l8t
-}{}
-
-\DeclareFontShape{T1}{yv1}{l}{it}{
- <-> yv1li8t
-}{}
-
-\DeclareFontShape{T1}{yv1}{db}{n}{
- <-> yv1d8t
-}{}
-
-\DeclareFontShape{T1}{yv1}{db}{it}{
- <-> yv1di8t
-}{}
-
-\DeclareFontShape{T1}{yv1}{m}{sc}{<->ssub * yv1/m/n}{}
-\DeclareFontShape{T1}{yv1}{m}{si}{<->ssub * yv1/m/sc}{}
-\DeclareFontShape{T1}{yv1}{m}{sl}{<->ssub * yv1/m/it}{}
-\DeclareFontShape{T1}{yv1}{b}{sc}{<->ssub * yv1/b/n}{}
-\DeclareFontShape{T1}{yv1}{b}{si}{<->ssub * yv1/b/sc}{}
-\DeclareFontShape{T1}{yv1}{b}{sl}{<->ssub * yv1/b/it}{}
-\DeclareFontShape{T1}{yv1}{eb}{sc}{<->ssub * yv1/eb/n}{}
-\DeclareFontShape{T1}{yv1}{eb}{si}{<->ssub * yv1/eb/sc}{}
-\DeclareFontShape{T1}{yv1}{muc}{n}{<->ssub * yv1/mc/n}{}
-\DeclareFontShape{T1}{yv1}{mc}{sc}{<->ssub * yv1/mc/n}{}
-\DeclareFontShape{T1}{yv1}{muc}{sc}{<->ssub * yv1/mc/sc}{}
-\DeclareFontShape{T1}{yv1}{mc}{si}{<->ssub * yv1/mc/sc}{}
-\DeclareFontShape{T1}{yv1}{muc}{si}{<->ssub * yv1/mc/si}{}
-\DeclareFontShape{T1}{yv1}{muc}{it}{<->ssub * yv1/mc/it}{}
-\DeclareFontShape{T1}{yv1}{mc}{sl}{<->ssub * yv1/mc/it}{}
-\DeclareFontShape{T1}{yv1}{muc}{sl}{<->ssub * yv1/mc/sl}{}
-\DeclareFontShape{T1}{yv1}{bc}{sc}{<->ssub * yv1/bc/n}{}
-\DeclareFontShape{T1}{yv1}{bc}{si}{<->ssub * yv1/bc/sc}{}
-\DeclareFontShape{T1}{yv1}{bc}{sl}{<->ssub * yv1/bc/it}{}
-\DeclareFontShape{T1}{yv1}{mx}{sc}{<->ssub * yv1/mx/n}{}
-\DeclareFontShape{T1}{yv1}{mx}{si}{<->ssub * yv1/mx/sc}{}
-\DeclareFontShape{T1}{yv1}{mx}{sl}{<->ssub * yv1/mx/it}{}
-\DeclareFontShape{T1}{yv1}{l}{sc}{<->ssub * yv1/l/n}{}
-\DeclareFontShape{T1}{yv1}{l}{si}{<->ssub * yv1/l/sc}{}
-\DeclareFontShape{T1}{yv1}{l}{sl}{<->ssub * yv1/l/it}{}
-\DeclareFontShape{T1}{yv1}{dbuc}{n}{<->ssub * yv1/db/n}{}
-\DeclareFontShape{T1}{yv1}{db}{sc}{<->ssub * yv1/db/n}{}
-\DeclareFontShape{T1}{yv1}{dbuc}{sc}{<->ssub * yv1/db/sc}{}
-\DeclareFontShape{T1}{yv1}{db}{si}{<->ssub * yv1/db/sc}{}
-\DeclareFontShape{T1}{yv1}{dbuc}{si}{<->ssub * yv1/db/si}{}
-\DeclareFontShape{T1}{yv1}{dbuc}{it}{<->ssub * yv1/db/it}{}
-\DeclareFontShape{T1}{yv1}{db}{sl}{<->ssub * yv1/db/it}{}
-\DeclareFontShape{T1}{yv1}{dbuc}{sl}{<->ssub * yv1/db/sl}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturissans/t1yv1d.fd b/Master/texmf-dist/tex/latex/venturissans/t1yv1d.fd
deleted file mode 100644
index fc0b0dc3d39..00000000000
--- a/Master/texmf-dist/tex/latex/venturissans/t1yv1d.fd
+++ /dev/null
@@ -1,106 +0,0 @@
-%Filename: t1yv1d.fd
-%Created by: tex yv1-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{t1yv1d.fd}
- [2010/07/03 Fontinst v1.933 font definitions for T1/yv1d.]
-
-\DeclareFontFamily{T1}{yv1d}{}
-
-\DeclareFontShape{T1}{yv1d}{b}{sc}{
- <-> yv1bd8t
-}{}
-
-\DeclareFontShape{T1}{yv1d}{eb}{sc}{
- <-> yv1bd8t
-}{}
-
-\DeclareFontShape{T1}{yv1d}{bc}{sc}{
- <-> yv1bd8t
-}{}
-
-\DeclareFontShape{T1}{yv1d}{db}{sc}{
- <-> yv1bd8t
-}{}
-
-\DeclareFontShape{T1}{yv1d}{b}{n}{
- <-> yv1bd8t
-}{}
-
-\DeclareFontShape{T1}{yv1d}{eb}{n}{
- <-> yv1bd8t
-}{}
-
-\DeclareFontShape{T1}{yv1d}{bc}{n}{
- <-> yv1bd8t
-}{}
-
-\DeclareFontShape{T1}{yv1d}{db}{n}{
- <-> yv1bd8t
-}{}
-
-\DeclareFontShape{T1}{yv1d}{dbuc}{sc}{
- <-> yv1dd8tu
-}{}
-
-\DeclareFontShape{T1}{yv1d}{mx}{sc}{
- <-> yv1dd8tu
-}{}
-
-\DeclareFontShape{T1}{yv1d}{m}{sc}{
- <-> yv1dd8tu
-}{}
-
-\DeclareFontShape{T1}{yv1d}{mc}{sc}{
- <-> yv1dd8tu
-}{}
-
-\DeclareFontShape{T1}{yv1d}{muc}{sc}{
- <-> yv1dd8tu
-}{}
-
-\DeclareFontShape{T1}{yv1d}{l}{sc}{
- <-> yv1dd8tu
-}{}
-
-\DeclareFontShape{T1}{yv1d}{dbuc}{n}{
- <-> yv1dd8tu
-}{}
-
-\DeclareFontShape{T1}{yv1d}{mx}{n}{
- <-> yv1dd8tu
-}{}
-
-\DeclareFontShape{T1}{yv1d}{m}{n}{
- <-> yv1dd8tu
-}{}
-
-\DeclareFontShape{T1}{yv1d}{mc}{n}{
- <-> yv1dd8tu
-}{}
-
-\DeclareFontShape{T1}{yv1d}{muc}{n}{
- <-> yv1dd8tu
-}{}
-
-\DeclareFontShape{T1}{yv1d}{l}{n}{
- <-> yv1dd8tu
-}{}
-
-\DeclareFontShape{T1}{yv1d}{bx}{sc}{<->ssub * yv1d/b/sc}{}
-\DeclareFontShape{T1}{yv1d}{b}{si}{<->ssub * yv1d/b/sc}{}
-\DeclareFontShape{T1}{yv1d}{bx}{si}{<->ssub * yv1d/b/si}{}
-\DeclareFontShape{T1}{yv1d}{eb}{si}{<->ssub * yv1d/eb/sc}{}
-\DeclareFontShape{T1}{yv1d}{bc}{si}{<->ssub * yv1d/bc/sc}{}
-\DeclareFontShape{T1}{yv1d}{db}{si}{<->ssub * yv1d/db/sc}{}
-\DeclareFontShape{T1}{yv1d}{dbuc}{si}{<->ssub * yv1d/db/si}{}
-\DeclareFontShape{T1}{yv1d}{bx}{n}{<->ssub * yv1d/b/n}{}
-\DeclareFontShape{T1}{yv1d}{mx}{si}{<->ssub * yv1d/mx/sc}{}
-\DeclareFontShape{T1}{yv1d}{m}{si}{<->ssub * yv1d/m/sc}{}
-\DeclareFontShape{T1}{yv1d}{mc}{si}{<->ssub * yv1d/mc/sc}{}
-\DeclareFontShape{T1}{yv1d}{muc}{si}{<->ssub * yv1d/mc/si}{}
-\DeclareFontShape{T1}{yv1d}{l}{si}{<->ssub * yv1d/l/sc}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturissans/ts1yv1.fd b/Master/texmf-dist/tex/latex/venturissans/ts1yv1.fd
deleted file mode 100644
index 95705d063a5..00000000000
--- a/Master/texmf-dist/tex/latex/venturissans/ts1yv1.fd
+++ /dev/null
@@ -1,134 +0,0 @@
-%Filename: ts1yv1.fd
-%Created by: tex yv1-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{ts1yv1.fd}
- [2010/07/03 Fontinst v1.933 font definitions for TS1/yv1.]
-
-\DeclareFontFamily{TS1}{yv1}{}
-
-\DeclareFontShape{TS1}{yv1}{m}{n}{
- <-> yv1r8c
-}{}
-
-\DeclareFontShape{TS1}{yv1}{m}{it}{
- <-> yv1ri8c
-}{}
-
-\DeclareFontShape{TS1}{yv1}{b}{n}{
- <-> yv1b8c
-}{}
-
-\DeclareFontShape{TS1}{yv1}{b}{it}{
- <-> yv1bi8c
-}{}
-
-\DeclareFontShape{TS1}{yv1}{eb}{n}{
- <-> yv1h8c
-}{}
-
-\DeclareFontShape{TS1}{yv1}{eb}{sl}{
- <-> yv1ho8c
-}{}
-
-\DeclareFontShape{TS1}{yv1}{eb}{it}{
- <-> yv1ho8c
-}{}
-
-\DeclareFontShape{TS1}{yv1}{mc}{n}{
- <-> yv1r8cc
-}{}
-
-\DeclareFontShape{TS1}{yv1}{mc}{it}{
- <-> yv1ri8cc
-}{}
-
-\DeclareFontShape{TS1}{yv1}{bc}{n}{
- <-> yv1b8cc
-}{}
-
-\DeclareFontShape{TS1}{yv1}{bc}{it}{
- <-> yv1bi8cc
-}{}
-
-\DeclareFontShape{TS1}{yv1}{mx}{n}{
- <-> yv1r8cx
-}{}
-
-\DeclareFontShape{TS1}{yv1}{mx}{it}{
- <-> yv1ri8cx
-}{}
-
-\DeclareFontShape{TS1}{yv1}{bx}{n}{
- <-> yv1b8cx
-}{}
-
-\DeclareFontShape{TS1}{yv1}{bx}{it}{
- <-> yv1bi8cx
-}{}
-
-\DeclareFontShape{TS1}{yv1}{bx}{sl}{
- <-> yv1bi8cx
-}{}
-
-\DeclareFontShape{TS1}{yv1}{bx}{sc}{
- <-> yv1b8cx
-}{}
-
-\DeclareFontShape{TS1}{yv1}{bx}{si}{
- <-> yv1b8cx
-}{}
-
-\DeclareFontShape{TS1}{yv1}{l}{n}{
- <-> yv1l8c
-}{}
-
-\DeclareFontShape{TS1}{yv1}{l}{it}{
- <-> yv1li8c
-}{}
-
-\DeclareFontShape{TS1}{yv1}{db}{n}{
- <-> yv1d8c
-}{}
-
-\DeclareFontShape{TS1}{yv1}{db}{it}{
- <-> yv1di8c
-}{}
-
-\DeclareFontShape{TS1}{yv1}{m}{sc}{<->ssub * yv1/m/n}{}
-\DeclareFontShape{TS1}{yv1}{m}{si}{<->ssub * yv1/m/sc}{}
-\DeclareFontShape{TS1}{yv1}{m}{sl}{<->ssub * yv1/m/it}{}
-\DeclareFontShape{TS1}{yv1}{b}{sc}{<->ssub * yv1/b/n}{}
-\DeclareFontShape{TS1}{yv1}{b}{si}{<->ssub * yv1/b/sc}{}
-\DeclareFontShape{TS1}{yv1}{b}{sl}{<->ssub * yv1/b/it}{}
-\DeclareFontShape{TS1}{yv1}{eb}{sc}{<->ssub * yv1/eb/n}{}
-\DeclareFontShape{TS1}{yv1}{eb}{si}{<->ssub * yv1/eb/sc}{}
-\DeclareFontShape{TS1}{yv1}{muc}{n}{<->ssub * yv1/mc/n}{}
-\DeclareFontShape{TS1}{yv1}{mc}{sc}{<->ssub * yv1/mc/n}{}
-\DeclareFontShape{TS1}{yv1}{muc}{sc}{<->ssub * yv1/mc/sc}{}
-\DeclareFontShape{TS1}{yv1}{mc}{si}{<->ssub * yv1/mc/sc}{}
-\DeclareFontShape{TS1}{yv1}{muc}{si}{<->ssub * yv1/mc/si}{}
-\DeclareFontShape{TS1}{yv1}{muc}{it}{<->ssub * yv1/mc/it}{}
-\DeclareFontShape{TS1}{yv1}{mc}{sl}{<->ssub * yv1/mc/it}{}
-\DeclareFontShape{TS1}{yv1}{muc}{sl}{<->ssub * yv1/mc/sl}{}
-\DeclareFontShape{TS1}{yv1}{bc}{sc}{<->ssub * yv1/bc/n}{}
-\DeclareFontShape{TS1}{yv1}{bc}{si}{<->ssub * yv1/bc/sc}{}
-\DeclareFontShape{TS1}{yv1}{bc}{sl}{<->ssub * yv1/bc/it}{}
-\DeclareFontShape{TS1}{yv1}{mx}{sc}{<->ssub * yv1/mx/n}{}
-\DeclareFontShape{TS1}{yv1}{mx}{si}{<->ssub * yv1/mx/sc}{}
-\DeclareFontShape{TS1}{yv1}{mx}{sl}{<->ssub * yv1/mx/it}{}
-\DeclareFontShape{TS1}{yv1}{l}{sc}{<->ssub * yv1/l/n}{}
-\DeclareFontShape{TS1}{yv1}{l}{si}{<->ssub * yv1/l/sc}{}
-\DeclareFontShape{TS1}{yv1}{l}{sl}{<->ssub * yv1/l/it}{}
-\DeclareFontShape{TS1}{yv1}{dbuc}{n}{<->ssub * yv1/db/n}{}
-\DeclareFontShape{TS1}{yv1}{db}{sc}{<->ssub * yv1/db/n}{}
-\DeclareFontShape{TS1}{yv1}{dbuc}{sc}{<->ssub * yv1/db/sc}{}
-\DeclareFontShape{TS1}{yv1}{db}{si}{<->ssub * yv1/db/sc}{}
-\DeclareFontShape{TS1}{yv1}{dbuc}{si}{<->ssub * yv1/db/si}{}
-\DeclareFontShape{TS1}{yv1}{dbuc}{it}{<->ssub * yv1/db/it}{}
-\DeclareFontShape{TS1}{yv1}{db}{sl}{<->ssub * yv1/db/it}{}
-\DeclareFontShape{TS1}{yv1}{dbuc}{sl}{<->ssub * yv1/db/sl}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturissans/ts1yv1d.fd b/Master/texmf-dist/tex/latex/venturissans/ts1yv1d.fd
deleted file mode 100644
index 3c21720b1b1..00000000000
--- a/Master/texmf-dist/tex/latex/venturissans/ts1yv1d.fd
+++ /dev/null
@@ -1,106 +0,0 @@
-%Filename: ts1yv1d.fd
-%Created by: tex yv1-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{ts1yv1d.fd}
- [2010/07/03 Fontinst v1.933 font definitions for TS1/yv1d.]
-
-\DeclareFontFamily{TS1}{yv1d}{}
-
-\DeclareFontShape{TS1}{yv1d}{b}{sc}{
- <-> yv1bd8c
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{eb}{sc}{
- <-> yv1bd8c
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{bc}{sc}{
- <-> yv1bd8c
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{db}{sc}{
- <-> yv1bd8c
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{b}{n}{
- <-> yv1bd8c
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{eb}{n}{
- <-> yv1bd8c
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{bc}{n}{
- <-> yv1bd8c
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{db}{n}{
- <-> yv1bd8c
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{dbuc}{sc}{
- <-> yv1dd8cu
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{mx}{sc}{
- <-> yv1dd8cu
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{m}{sc}{
- <-> yv1dd8cu
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{mc}{sc}{
- <-> yv1dd8cu
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{muc}{sc}{
- <-> yv1dd8cu
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{l}{sc}{
- <-> yv1dd8cu
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{dbuc}{n}{
- <-> yv1dd8cu
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{mx}{n}{
- <-> yv1dd8cu
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{m}{n}{
- <-> yv1dd8cu
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{mc}{n}{
- <-> yv1dd8cu
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{muc}{n}{
- <-> yv1dd8cu
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{l}{n}{
- <-> yv1dd8cu
-}{}
-
-\DeclareFontShape{TS1}{yv1d}{bx}{sc}{<->ssub * yv1d/b/sc}{}
-\DeclareFontShape{TS1}{yv1d}{b}{si}{<->ssub * yv1d/b/sc}{}
-\DeclareFontShape{TS1}{yv1d}{bx}{si}{<->ssub * yv1d/b/si}{}
-\DeclareFontShape{TS1}{yv1d}{eb}{si}{<->ssub * yv1d/eb/sc}{}
-\DeclareFontShape{TS1}{yv1d}{bc}{si}{<->ssub * yv1d/bc/sc}{}
-\DeclareFontShape{TS1}{yv1d}{db}{si}{<->ssub * yv1d/db/sc}{}
-\DeclareFontShape{TS1}{yv1d}{dbuc}{si}{<->ssub * yv1d/db/si}{}
-\DeclareFontShape{TS1}{yv1d}{bx}{n}{<->ssub * yv1d/b/n}{}
-\DeclareFontShape{TS1}{yv1d}{mx}{si}{<->ssub * yv1d/mx/sc}{}
-\DeclareFontShape{TS1}{yv1d}{m}{si}{<->ssub * yv1d/m/sc}{}
-\DeclareFontShape{TS1}{yv1d}{mc}{si}{<->ssub * yv1d/mc/sc}{}
-\DeclareFontShape{TS1}{yv1d}{muc}{si}{<->ssub * yv1d/mc/si}{}
-\DeclareFontShape{TS1}{yv1d}{l}{si}{<->ssub * yv1d/l/sc}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturissans2/t1yv3.fd b/Master/texmf-dist/tex/latex/venturissans2/t1yv3.fd
deleted file mode 100644
index 4080a89337c..00000000000
--- a/Master/texmf-dist/tex/latex/venturissans2/t1yv3.fd
+++ /dev/null
@@ -1,79 +0,0 @@
-%Filename: t1yv3.fd
-%Created by: tex yv3-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{t1yv3.fd}
- [2010/07/03 Fontinst v1.933 font definitions for T1/yv3.]
-
-\DeclareFontFamily{T1}{yv3}{}
-
-\DeclareFontShape{T1}{yv3}{m}{n}{
- <-> yv3r8t
-}{}
-
-\DeclareFontShape{T1}{yv3}{m}{it}{
- <-> yv3ri8t
-}{}
-
-\DeclareFontShape{T1}{yv3}{b}{n}{
- <-> yv3b8t
-}{}
-
-\DeclareFontShape{T1}{yv3}{b}{it}{
- <-> yv3bi8t
-}{}
-
-\DeclareFontShape{T1}{yv3}{mc}{n}{
- <-> yv3r8tc
-}{}
-
-\DeclareFontShape{T1}{yv3}{mc}{it}{
- <-> yv3ri8tc
-}{}
-
-\DeclareFontShape{T1}{yv3}{bc}{n}{
- <-> yv3b8tc
-}{}
-
-\DeclareFontShape{T1}{yv3}{bc}{it}{
- <-> yv3bi8tc
-}{}
-
-\DeclareFontShape{T1}{yv3}{mx}{n}{
- <-> yv3r8tx
-}{}
-
-\DeclareFontShape{T1}{yv3}{mx}{it}{
- <-> yv3ri8tx
-}{}
-
-\DeclareFontShape{T1}{yv3}{bx}{n}{
- <-> yv3b8tx
-}{}
-
-\DeclareFontShape{T1}{yv3}{bx}{it}{
- <-> yv3bi8tx
-}{}
-
-\DeclareFontShape{T1}{yv3}{m}{sc}{<->ssub * yv3/m/n}{}
-\DeclareFontShape{T1}{yv3}{m}{si}{<->ssub * yv3/m/sc}{}
-\DeclareFontShape{T1}{yv3}{m}{sl}{<->ssub * yv3/m/it}{}
-\DeclareFontShape{T1}{yv3}{b}{sc}{<->ssub * yv3/b/n}{}
-\DeclareFontShape{T1}{yv3}{bx}{sc}{<->ssub * yv3/b/sc}{}
-\DeclareFontShape{T1}{yv3}{b}{si}{<->ssub * yv3/b/sc}{}
-\DeclareFontShape{T1}{yv3}{bx}{si}{<->ssub * yv3/b/si}{}
-\DeclareFontShape{T1}{yv3}{b}{sl}{<->ssub * yv3/b/it}{}
-\DeclareFontShape{T1}{yv3}{bx}{sl}{<->ssub * yv3/b/sl}{}
-\DeclareFontShape{T1}{yv3}{mc}{sc}{<->ssub * yv3/mc/n}{}
-\DeclareFontShape{T1}{yv3}{mc}{si}{<->ssub * yv3/mc/sc}{}
-\DeclareFontShape{T1}{yv3}{mc}{sl}{<->ssub * yv3/mc/it}{}
-\DeclareFontShape{T1}{yv3}{bc}{sc}{<->ssub * yv3/bc/n}{}
-\DeclareFontShape{T1}{yv3}{bc}{si}{<->ssub * yv3/bc/sc}{}
-\DeclareFontShape{T1}{yv3}{bc}{sl}{<->ssub * yv3/bc/it}{}
-\DeclareFontShape{T1}{yv3}{mx}{sc}{<->ssub * yv3/mx/n}{}
-\DeclareFontShape{T1}{yv3}{mx}{si}{<->ssub * yv3/mx/sc}{}
-\DeclareFontShape{T1}{yv3}{mx}{sl}{<->ssub * yv3/mx/it}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/venturissans2/ts1yv3.fd b/Master/texmf-dist/tex/latex/venturissans2/ts1yv3.fd
deleted file mode 100644
index 65f27ef37de..00000000000
--- a/Master/texmf-dist/tex/latex/venturissans2/ts1yv3.fd
+++ /dev/null
@@ -1,79 +0,0 @@
-%Filename: ts1yv3.fd
-%Created by: tex yv3-drv
-%Created using fontinst v1.933
-
-%THIS FILE SHOULD BE PUT IN A TEX INPUTS DIRECTORY
-
-\ProvidesFile{ts1yv3.fd}
- [2010/07/03 Fontinst v1.933 font definitions for TS1/yv3.]
-
-\DeclareFontFamily{TS1}{yv3}{}
-
-\DeclareFontShape{TS1}{yv3}{m}{n}{
- <-> yv3r8c
-}{}
-
-\DeclareFontShape{TS1}{yv3}{m}{it}{
- <-> yv3ri8c
-}{}
-
-\DeclareFontShape{TS1}{yv3}{b}{n}{
- <-> yv3b8c
-}{}
-
-\DeclareFontShape{TS1}{yv3}{b}{it}{
- <-> yv3bi8c
-}{}
-
-\DeclareFontShape{TS1}{yv3}{mc}{n}{
- <-> yv3r8cc
-}{}
-
-\DeclareFontShape{TS1}{yv3}{mc}{it}{
- <-> yv3ri8cc
-}{}
-
-\DeclareFontShape{TS1}{yv3}{bc}{n}{
- <-> yv3b8cc
-}{}
-
-\DeclareFontShape{TS1}{yv3}{bc}{it}{
- <-> yv3bi8cc
-}{}
-
-\DeclareFontShape{TS1}{yv3}{mx}{n}{
- <-> yv3r8cx
-}{}
-
-\DeclareFontShape{TS1}{yv3}{mx}{it}{
- <-> yv3ri8cx
-}{}
-
-\DeclareFontShape{TS1}{yv3}{bx}{n}{
- <-> yv3b8cx
-}{}
-
-\DeclareFontShape{TS1}{yv3}{bx}{it}{
- <-> yv3bi8cx
-}{}
-
-\DeclareFontShape{TS1}{yv3}{m}{sc}{<->ssub * yv3/m/n}{}
-\DeclareFontShape{TS1}{yv3}{m}{si}{<->ssub * yv3/m/sc}{}
-\DeclareFontShape{TS1}{yv3}{m}{sl}{<->ssub * yv3/m/it}{}
-\DeclareFontShape{TS1}{yv3}{b}{sc}{<->ssub * yv3/b/n}{}
-\DeclareFontShape{TS1}{yv3}{bx}{sc}{<->ssub * yv3/b/sc}{}
-\DeclareFontShape{TS1}{yv3}{b}{si}{<->ssub * yv3/b/sc}{}
-\DeclareFontShape{TS1}{yv3}{bx}{si}{<->ssub * yv3/b/si}{}
-\DeclareFontShape{TS1}{yv3}{b}{sl}{<->ssub * yv3/b/it}{}
-\DeclareFontShape{TS1}{yv3}{bx}{sl}{<->ssub * yv3/b/sl}{}
-\DeclareFontShape{TS1}{yv3}{mc}{sc}{<->ssub * yv3/mc/n}{}
-\DeclareFontShape{TS1}{yv3}{mc}{si}{<->ssub * yv3/mc/sc}{}
-\DeclareFontShape{TS1}{yv3}{mc}{sl}{<->ssub * yv3/mc/it}{}
-\DeclareFontShape{TS1}{yv3}{bc}{sc}{<->ssub * yv3/bc/n}{}
-\DeclareFontShape{TS1}{yv3}{bc}{si}{<->ssub * yv3/bc/sc}{}
-\DeclareFontShape{TS1}{yv3}{bc}{sl}{<->ssub * yv3/bc/it}{}
-\DeclareFontShape{TS1}{yv3}{mx}{sc}{<->ssub * yv3/mx/n}{}
-\DeclareFontShape{TS1}{yv3}{mx}{si}{<->ssub * yv3/mx/sc}{}
-\DeclareFontShape{TS1}{yv3}{mx}{sl}{<->ssub * yv3/mx/it}{}
-
-\endinput
diff --git a/Master/texmf-dist/tex/latex/verifycommand/verifycommand.sty b/Master/texmf-dist/tex/latex/verifycommand/verifycommand.sty
index 535bc7da318..72417ae4000 100644
--- a/Master/texmf-dist/tex/latex/verifycommand/verifycommand.sty
+++ b/Master/texmf-dist/tex/latex/verifycommand/verifycommand.sty
@@ -18,18 +18,16 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{verifycommand}
- [2024/01/11 v1.00 Verify definitions have not changed.]
-
-
+ [2024/09/03 v1.10 Verify definitions have not changed.]
\RequirePackage{etoolbox}
\RequirePackage{iftex}
-\newbool{VERCMD@enable}
-\booltrue{VERCMD@enable}
+\newbool{VERCMDenable}
+\booltrue{VERCMDenable}
\DeclareOption{disable}{%
- \boolfalse{VERCMD@enable}%
+ \boolfalse{VERCMDenable}%
\typeout{----}%
\typeout{Package verifycommand: Turned off by option 'disable'.}%
\typeout{----}%
@@ -68,20 +66,46 @@
}
\newcommand*{\VERCMD@whatchanged}{}
+\newbool{VERCMD@this@ltxcmd}
+\boolfalse{VERCMD@this@ltxcmd}
+
+\newbool{VERCMD@failed@ltxcmd}
+\boolfalse{VERCMD@failed@ltxcmd}
+
\newcommand*{\VERCMD@addchanged}[2]{%
\ifdefempty{\VERCMD@whatchanged}%
{}%
{\apptocmd{\VERCMD@whatchanged}{^^J}{}{}}%
- \apptocmd{\VERCMD@whatchanged}{Definition changed: #2^^J}{}{}%
- \apptocmd{\VERCMD@whatchanged}{Definition changed: \space\space\space#1}{}{}%
+ \apptocmd{\VERCMD@whatchanged}{%
+ (verifycommand)\space\space#2^^J%
+ \space\space\space\space\space\space\space\space\space\space%
+ \space\space\space\space\space\space\space\space\space(#1)%
+ }{}{}%
+ \ifbool{VERCMD@this@ltxcmd}{%
+ \apptocmd{\VERCMD@whatchanged}{ *}{}{}%
+ \booltrue{VERCMD@failed@ltxcmd}%
+ }{}%
+ \boolfalse{VERCMD@this@ltxcmd}%
}
-\AfterEndDocument{
+\AtEndDocument{
\ifdefempty{\VERCMD@whatchanged}{}{%
\typeout{--------------------------------}%
- \typeout{WARNING: Something may fail.}%
- \typeout{\VERCMD@whatchanged}%
- \typeout{--------------------------------}%
+ \typeout{Package verifycommand Warning: Definitions have changed.}%
+ \typeout{Patches for the following macros may need to be updated.}%
+ \typeout{See the previous warnings for line numbers.}%
+ \typeout{}%
+ \typeout{Syntax:\space\space Patching pkg -> Defining pkg: Macro (checksum)}%
+ \typeout{-----}%
+ \typeout{\VERCMD@whatchanged}
+ \typeout{-----}%
+ \typeout{Look for updates to these packages.}
+ \ifbool{VERCMD@failed@ltxcmd}{
+ \typeout{Any of the above marked with a * may be due to changes in LaTeX internals,}
+ \typeout{the most recently known of which was 2023/12/01.}
+ \typeout{If so, look for updates for the LaTeX sytem as well.}
+ }{}
+ \typeout{--------------------------------}
}
}
@@ -93,32 +117,57 @@
}%
}
-\newcommand*{\VERCMD@Warning}[3]{%
+\newcommand*{\VERCMDWarning}[3]{%
\ifblank{#1}%
{%
\VERCMD@ProgWarning{%
- Something may fail. A definition has changed:\MessageBreak
+ A definition has changed:\MessageBreak
\ifblank{#2}{}{#2: }\string#3\MessageBreak
- \VERCMD@temp\MessageBreak
- }
- \expandafter\VERCMD@addchanged\expandafter{\VERCMD@temp}{\string#3}%
+ (\VERCMD@temp)\MessageBreak
+ }%
+ \expandafter\VERCMD@addchanged%
+ \expandafter{\VERCMD@temp}{\string#3}%
}%
{%
\PackageWarning{#1}{%
- Something may fail. A definition has changed:\MessageBreak%
+ A definition has changed:\MessageBreak%
\ifblank{#2}{}{#2: }%
\string#3\MessageBreak%
- \VERCMD@temp\MessageBreak%
+ (\VERCMD@temp)\MessageBreak%
}%
- \expandafter\VERCMD@addchanged\expandafter{\VERCMD@temp}{\ifblank{#2}{}{#2: }\string#3}%
+ \expandafter\VERCMD@addchanged%
+ \expandafter{\VERCMD@temp}{#1 -> \ifblank{#2}{}{#2: }\string#3}%
}%
}
\ExplSyntaxOn
-\NewDocumentCommand{\VerifyCommand}{O{} O{} m m}{%
- \ifbool{VERCMD@enable}{%
+\newbool{VERCMD@passed}
+\newbool{VERCMD@failed}
+\newcommand*{\TestVerifyCommands}
+{
+ \boolfalse{VERCMD@passed}
+ \boolfalse{VERCMD@failed}
+}
+\newcommand*{\IfVerifyCommandPassed}
+ {%
+ \ifbool{VERCMD@passed}%
+ {\let\VERCMD@tempa\@firstoftwo}%
+ {\let\VERCMD@tempa\@secondoftwo}%
+ \VERCMD@tempa%
+ }
+\newcommand*{\IfVerifyCommandFailed}
+ {%
+ \ifbool{VERCMD@failed}%
+ {\let\VERCMD@tempa\@firstoftwo}%
+ {\let\VERCMD@tempa\@secondoftwo}%
+ \VERCMD@tempa%
+ }
+\NewDocumentCommand{\IfVerifyCommand}{O{} O{} m m}{%
+ \ifbool{VERCMDenable}{%
\edef\VERCMD@temp{Unknown~definition}%
+ \boolfalse{VERCMD@this@ltxcmd}
\ifcsdef{\cs_to_str:N #3~code}%
{%
+ \booltrue{VERCMD@this@ltxcmd}%
\expandafter\VERCMD@mdfive%
\csname \cs_to_str:N #3~code\endcsname%
}%
@@ -138,7 +187,10 @@
\ifcsdef{\VERCMD@backslash\cs_to_str:N #3}%
{%
\expandafter\VERCMD@mdfive%
- \csname \VERCMD@backslash\cs_to_str:N #3\endcsname%
+ \csname %
+ \VERCMD@backslash%
+ \cs_to_str:N #3%
+ \endcsname%
}%
{%
\ifdef{#3}%
@@ -149,18 +201,38 @@
}%
}%
\ifdefstring{\VERCMD@temp}{#4}%
- {}%
{%
- \VERCMD@Warning{#1}{#2}{#3}%
+ \booltrue{VERCMD@passed}%
+ \let\VERCMD@tempa\@firstoftwo%
+ }%
+ {%
+ \booltrue{VERCMD@failed}%
+ \let\VERCMD@tempa\@secondoftwo%
}%
}% if package enabled
- {}% if package not enabled
+ {\let\VERCMD@tempa\@firstoftwo}% if package not enabled
+ \VERCMD@tempa%
}
-\NewDocumentCommand{\VerifyEnvironment}{O{} O{} m m m}{%
- \ifbool{VERCMD@enable}{%
+\NewDocumentCommand{\VerifyCommand}{O{} O{} m m}{%
+ \ifblank{#1}{% #1 blank
+ \IfVerifyCommand{#3}{#4}{}{\VERCMDWarning{}{}{#3}}%
+ }% #1 blank
+ {% #1 given
+ \ifblank{#2}{% #2 blank
+ \IfVerifyCommand[#1]{#3}{#4}{}{\VERCMDWarning{#1}{}{#3}}%
+ }% #2 blank
+ {% #2 given
+ \IfVerifyCommand[#1][#2]{#3}{#4}{}{\VERCMDWarning{#1}{#2}{#3}}%
+ }% #2 given
+ }% #1 given
+}
+\NewDocumentCommand{\IfVerifyEnvironmentBegin}{O{} O{} m m}{%
+ \ifbool{VERCMDenable}{%
\edef\VERCMD@temp{Unknown~definition}%
+ \boolfalse{VERCMD@this@ltxcmd}
\ifcsdef{environment~#3~code}%
{%
+ \booltrue{VERCMD@this@ltxcmd}%
\expandafter\VERCMD@mdfive%
\csname environment~#3~code\endcsname%
}%
@@ -177,13 +249,25 @@
}%
}%
\ifdefstring{\VERCMD@temp}{#4}%
- {}%
{%
- \VERCMD@Warning{#1}{#2}{#3}%
+ \booltrue{VERCMD@passed}%
+ \let\VERCMD@tempa\@firstoftwo%
+ }%
+ {%
+ \booltrue{VERCMD@failed}%
+ \let\VERCMD@tempa\@secondoftwo%
}%
+ }% if package enabled
+ {\let\VERCMD@tempa\@firstoftwo}% if package not enabled
+ \VERCMD@tempa%
+}
+\NewDocumentCommand{\IfVerifyEnvironmentEnd}{O{} O{} m m}{%
+ \ifbool{VERCMDenable}{%
\edef\VERCMD@temp{Unknown~definition}%
+ \boolfalse{VERCMD@this@ltxcmd}
\ifcsdef{environment~#3~end~aux~}%
{%
+ \booltrue{VERCMD@this@ltxcmd}%
\expandafter\VERCMD@mdfive
\csname environment~#3~end~aux~\endcsname%
}%
@@ -195,15 +279,57 @@
}%
{}%
}%
- \ifdefstring{\VERCMD@temp}{#5}%
- {}%
+ \ifdefstring{\VERCMD@temp}{#4}%
+ {%
+ \booltrue{VERCMD@passed}%
+ \let\VERCMD@tempa\@firstoftwo%
+ }%
{%
- \VERCMD@Warning{#1}{#2}{(end)#3}%
+ \booltrue{VERCMD@failed}%
+ \let\VERCMD@tempa\@secondoftwo%
}%
}% if package enabled
- {}% if package not enabled
+ {\let\VERCMD@tempa\@firstoftwo}% if package not enabled
+ \VERCMD@tempa%
+}
+\NewDocumentCommand{\VerifyEnvironment}{O{} O{} m m m}{%
+ \ifblank{#1}{% #1 blank
+ \IfVerifyEnvironmentBegin{#3}{#4}%
+ {}%
+ {\VERCMDWarning{}{}{#3}}%
+ }% #1 blank
+ {% #1 given
+ \ifblank{#2}{% #2 blank
+ \IfVerifyEnvironmentBegin[#1]{#3}{#4}%
+ {}%
+ {\VERCMDWarning{#1}{}{#3}}%
+ }% #2 blank
+ {% #2 given
+ \IfVerifyEnvironmentBegin[#1][#2]{#3}{#4}%
+ {}%
+ {\VERCMDWarning{#1}{#2}{#3}}%
+ }% #2 given
+ }% #1 given
+ \ifblank{#1}{% #1 blank
+ \IfVerifyEnvironmentEnd{#3}{#5}%
+ {}%
+ {\VERCMDWarning{}{}{(end)#3}}%
+ }% #1 blank
+ {% #1 given
+ \ifblank{#2}{% #2 blank
+ \IfVerifyEnvironmentEnd[#1]{#3}{#5}%
+ {}%
+ {\VERCMDWarning{#1}{}{(end)#3}}%
+ }% #2 blank
+ {% #2 given
+ \IfVerifyEnvironmentEnd[#1][#2]{#3}{#5}%
+ {}%
+ {\VERCMDWarning{#1}{#2}{(end)#3}}%
+ }% #2 given
+ }% #1 given
}
\ExplSyntaxOff
+
\endinput
%%
%% End of file `verifycommand.sty'.
diff --git a/Master/texmf-dist/tex/latex/wheelchart/wheelchart.sty b/Master/texmf-dist/tex/latex/wheelchart/wheelchart.sty
index e2c85439761..21e232b099b 100644
--- a/Master/texmf-dist/tex/latex/wheelchart/wheelchart.sty
+++ b/Master/texmf-dist/tex/latex/wheelchart/wheelchart.sty
@@ -18,7 +18,7 @@
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{tikz}
\usetikzlibrary{calc}
-\ProvidesExplPackage{wheelchart}{2024/03/08}{3.0}{Diagrams with circular or other shapes using TikZ and LaTeX3}
+\ProvidesExplPackage{wheelchart}{2024/07/28}{4.0}{Diagrams with circular or other shapes using TikZ and LaTeX3}
%%> \subsection{Variables}
@@ -59,6 +59,8 @@
\fp_const:Nn \c__wheelchart_arc_data_end_factor_left_fp { 1 }
\fp_const:Nn \c__wheelchart_arc_data_end_factor_right_fp { 0 }
\fp_new:N \l__wheelchart_arc_data_line_sep_factor_fp
+\fp_new:N \l__wheelchart_arc_data_lines_pos_fp
+\fp_new:N \l__wheelchart_arc_data_lines_shift_fp
\fp_new:N \l__wheelchart_arc_data_pos_fp
\fp_new:N \l__wheelchart_arc_data_radius_plot_false_fp
\fp_new:N \l__wheelchart_arc_data_sep_fp
@@ -168,6 +170,9 @@
\int_new:N \l__wheelchart_lines_ext_top_dir_int
\int_new:N \l__wheelchart_max_list_items_int
+\regex_const:Nn \c__wheelchart_braces_regex { \{(.+)\} }
+\regex_const:Nn \c__wheelchart_key_braces_regex { [\w\s]+\{(.+)\} }
+
\seq_new:N \l__wheelchart_arc_data_seq
\seq_new:N \l__wheelchart_discrete_coefficients_first_seq
\seq_new:N \l__wheelchart_discrete_coefficients_second_seq
@@ -180,8 +185,8 @@
{
sign ( \l__wheelchart_arc_data_dir_fp ) *
(
- \cs:w c__wheelchart_arc_data_start_factor_\l__wheelchart_arc_data_align_tl _fp\cs_end:
- + \cs:w c__wheelchart_arc_data_end_factor_\l__wheelchart_arc_data_align_tl _fp\cs_end:
+ \cs:w c__wheelchart_arc_data_start_factor_\l__wheelchart_arc_data_align_tl _fp \cs_end:
+ + \cs:w c__wheelchart_arc_data_end_factor_\l__wheelchart_arc_data_align_tl _fp \cs_end:
)
}
\tl_new:N \l__wheelchart_arc_data_align_tl
@@ -262,7 +267,7 @@
\cs_new_protected:Npn \__wheelchart_caption_and_title:nnnnn #1#2#3#4#5
{
- \__wheelchart_if_text:nn {#1}
+ \__wheelchart_if_text:nnn {#1} { o }
{
\node [ anchor = #2 , align = #3 , / wheelchart / #1_style ]
at ( $ (#4) + ( 0 , { #5 * ( \pgfkeysvalueof { / wheelchart / #1~sep } ) } ) $ )
@@ -282,12 +287,12 @@
{
\fp_eval:n
{
- ( 1 - (#1) ) * \cs:w g__wheelchart_slice_inner_start_angle_\WCcount _fp\cs_end:
- + (#1) * \cs:w g__wheelchart_slice_inner_end_angle_\WCcount _fp\cs_end:
+ ( 1 - (#1) ) * \cs:w g__wheelchart_slice_inner_start_angle_\WCcount _fp \cs_end:
+ + (#1) * \cs:w g__wheelchart_slice_inner_end_angle_\WCcount _fp \cs_end:
+ \l__wheelchart_counter_or_clockwise_fp * (#2)
}
}
- { \fp_eval:n { \cs:w g__wheelchart_inner_radius_\WCcount _fp\cs_end: - (#4) } }
+ { \fp_eval:n { \cs:w g__wheelchart_inner_radius_\WCcount _fp \cs_end: - (#4) } }
)
! { \fp_eval:n {#3} } !
(
@@ -295,12 +300,12 @@
{
\fp_eval:n
{
- ( 1 - (#1) ) * \cs:w g__wheelchart_slice_outer_start_angle_\WCcount _fp\cs_end:
- + (#1) * \cs:w g__wheelchart_slice_outer_end_angle_\WCcount _fp\cs_end:
+ ( 1 - (#1) ) * \cs:w g__wheelchart_slice_outer_start_angle_\WCcount _fp \cs_end:
+ + (#1) * \cs:w g__wheelchart_slice_outer_end_angle_\WCcount _fp \cs_end:
+ \l__wheelchart_counter_or_clockwise_fp * (#2)
}
}
- { \fp_eval:n { \cs:w g__wheelchart_outer_radius_\WCcount _fp\cs_end: + (#4) } }
+ { \fp_eval:n { \cs:w g__wheelchart_outer_radius_\WCcount _fp \cs_end: + (#4) } }
)
$%note the () around the #i's to keep these contents together
}
@@ -374,10 +379,10 @@
\path let
\p { l__wheelchart_def_angle_1 } =
\__wheelchart_point_plot_true:nnnnn { \WCcount } {#1} {#2} { 0 }
- { \fp_eval:n { (#4) + 1 / \cs:w g__wheelchart_samples_\WCcount _fp\cs_end: } } ,
+ { \fp_eval:n { (#4) + 1 / \cs:w g__wheelchart_samples_\WCcount _fp \cs_end: } } ,
\p { l__wheelchart_def_angle_2 } =
\__wheelchart_point_plot_true:nnnnn { \WCcount } {#1} {#2} { 1 }
- { \fp_eval:n { (#4) + 1 / \cs:w g__wheelchart_samples_\WCcount _fp\cs_end: } }
+ { \fp_eval:n { (#4) + 1 / \cs:w g__wheelchart_samples_\WCcount _fp \cs_end: } }
in [ / utils / exec = { \__wheelchart_def_angle_aux: } ]
;
}
@@ -392,10 +397,10 @@
{
( 1 - (#2) ) *
(
- \cs:w g__wheelchart_slice_outer_start_angle_#1_fp\cs_end:
- - \cs:w g__wheelchart_slice_inner_start_angle_#1_fp\cs_end:
+ \cs:w g__wheelchart_slice_outer_start_angle_#1_fp \cs_end:
+ - \cs:w g__wheelchart_slice_inner_start_angle_#1_fp \cs_end:
)
- + (#2) * ( \cs:w g__wheelchart_slice_outer_end_angle_#1_fp\cs_end: - \cs:w g__wheelchart_slice_inner_end_angle_#1_fp\cs_end: )
+ + (#2) * ( \cs:w g__wheelchart_slice_outer_end_angle_#1_fp \cs_end: - \cs:w g__wheelchart_slice_inner_end_angle_#1_fp \cs_end: )
}
\cs_new:Npn \__wheelchart_def_angle_plot_false:nnnnn #1#2#3#4#5
@@ -410,11 +415,11 @@
(
sqrt
(
- ( \cs:w g__wheelchart_outer_radius_#1_fp\cs_end: + \cs:w g__wheelchart_inner_radius_#1_fp\cs_end: ) ^ 2
- - \cs:w g__wheelchart_outer_radius_#1_fp\cs_end: * \cs:w g__wheelchart_inner_radius_#1_fp\cs_end: *
+ ( \cs:w g__wheelchart_outer_radius_#1_fp \cs_end: + \cs:w g__wheelchart_inner_radius_#1_fp \cs_end: ) ^ 2
+ - \cs:w g__wheelchart_outer_radius_#1_fp \cs_end: * \cs:w g__wheelchart_inner_radius_#1_fp \cs_end: *
(
2 + 2 * cosd ( \__wheelchart_def_angle_plot_false_aux_angle:nn {#1} {#2} )
- + \cs:w g__wheelchart_outer_radius_#1_fp\cs_end: * \cs:w g__wheelchart_inner_radius_#1_fp\cs_end:
+ + \cs:w g__wheelchart_outer_radius_#1_fp \cs_end: * \cs:w g__wheelchart_inner_radius_#1_fp \cs_end:
*
(
(
@@ -425,25 +430,25 @@
)
)
)
- + \cs:w g__wheelchart_inner_radius_#1_fp\cs_end: *
+ + \cs:w g__wheelchart_inner_radius_#1_fp \cs_end: *
(
- \cs:w g__wheelchart_inner_radius_#1_fp\cs_end:
- - \cs:w g__wheelchart_outer_radius_#1_fp\cs_end:
+ \cs:w g__wheelchart_inner_radius_#1_fp \cs_end:
+ - \cs:w g__wheelchart_outer_radius_#1_fp \cs_end:
* cosd ( \__wheelchart_def_angle_plot_false_aux_angle:nn {#1} {#2} )
)
/ \__wheelchart_def_radius:nnn {#1} {#4} {#5}
)
- * \cs:w g__wheelchart_outer_radius_#1_fp\cs_end: * sind ( \__wheelchart_def_angle_plot_false_aux_angle:nn {#1} {#2} )
+ * \cs:w g__wheelchart_outer_radius_#1_fp \cs_end: * sind ( \__wheelchart_def_angle_plot_false_aux_angle:nn {#1} {#2} )
/
(
- ( \cs:w g__wheelchart_outer_radius_#1_fp\cs_end: + \cs:w g__wheelchart_inner_radius_#1_fp\cs_end: ) ^ 2
- - 2 * \cs:w g__wheelchart_outer_radius_#1_fp\cs_end: * \cs:w g__wheelchart_inner_radius_#1_fp\cs_end:
+ ( \cs:w g__wheelchart_outer_radius_#1_fp \cs_end: + \cs:w g__wheelchart_inner_radius_#1_fp \cs_end: ) ^ 2
+ - 2 * \cs:w g__wheelchart_outer_radius_#1_fp \cs_end: * \cs:w g__wheelchart_inner_radius_#1_fp \cs_end:
* ( 1 + cosd ( \__wheelchart_def_angle_plot_false_aux_angle:nn {#1} {#2} ) )
)
)
}
- + ( 1 - (#2) ) * ( \cs:w g__wheelchart_slice_inner_start_angle_#1_fp\cs_end: )
- + (#2) * ( \cs:w g__wheelchart_slice_inner_end_angle_#1_fp\cs_end: )
+ + ( 1 - (#2) ) * ( \cs:w g__wheelchart_slice_inner_start_angle_#1_fp \cs_end: )
+ + (#2) * ( \cs:w g__wheelchart_slice_inner_end_angle_#1_fp \cs_end: )
+ \l__wheelchart_counter_or_clockwise_fp * (#3)
}
}
@@ -451,7 +456,7 @@
\cs_new_protected:Npn \__wheelchart_def_coord:nnnn #1#2#3#4
{
\path let \p { l__wheelchart_coord } =
- ( \cs:w __wheelchart_#2_plot:nn\cs_end: {#4} { \fp_use:c { g__wheelchart_#2_radius_\WCcount _fp } } )
+ ( \cs:w __wheelchart_#2_plot:nn \cs_end: {#4} { \fp_use:c { g__wheelchart_#2_radius_\WCcount _fp } } )
in
[
/ utils / exec =
@@ -484,11 +489,11 @@
<
\l__wheelchart_gap_fp
?
- min ( \cs:w g__wheelchart_abs_half_angle_minus_new_angle_\WCcount _fp\cs_end: , \l__wheelchart_gap_max_angle_def_fp )
+ min ( \cs:w g__wheelchart_abs_half_angle_minus_new_angle_\WCcount _fp \cs_end: , \l__wheelchart_gap_max_angle_def_fp )
:
asind ( min ( \l__wheelchart_gap_fp / ( (#2) + 1 - sign (#2) ) , 1 ) ) + \l__wheelchart_gap_polar_fp
- %note the min ( ... , 1 ) such that the asind is always defined
- %also note the + 1 - sign (#2) such that the denominator is also nonzero if #2 = 0
+ %note the min ( ... , 1 ) so that the asind is always defined
+ %also note the + 1 - sign (#2) so that the denominator is also nonzero if #2 = 0
}
}
@@ -516,7 +521,7 @@
:
\g__wheelchart_new_angle_fp - \g__wheelchart_angle_fp
)
- / \cs:w g__wheelchart_samples_1_fp\cs_end:
+ / \cs:w g__wheelchart_samples_1_fp \cs_end:
}
\path let
\p { l__wheelchart_slices_orientation_1 } =
@@ -579,8 +584,8 @@
{
\fp_eval:n
{
- ( 1 - (#2) ) * ( \cs:w g__wheelchart_inner_radius_#1_fp\cs_end: - (#3) )
- + (#2) * ( \cs:w g__wheelchart_outer_radius_#1_fp\cs_end: + (#3) )
+ ( 1 - (#2) ) * ( \cs:w g__wheelchart_inner_radius_#1_fp \cs_end: - (#3) )
+ + (#2) * ( \cs:w g__wheelchart_outer_radius_#1_fp \cs_end: + (#3) )
}
}
@@ -591,26 +596,26 @@
{
\fp_gset:cn { g__wheelchart_slice_#1_#2_angle_\WCcount _fp }
{
- \cs:w g__wheelchart_#3angle_fp\cs_end: +
+ \cs:w g__wheelchart_#3angle_fp \cs_end: +
(
\l__wheelchart_counter_or_clockwise_fp *
- ( (#4) * \cs:w g__wheelchart_#1_gap_\WCcount _fp\cs_end: + \cs:w l__wheelchart_slices_#1_#2_angle_shift_fp\cs_end: )
+ ( (#4) * \cs:w g__wheelchart_#1_gap_\WCcount _fp \cs_end: + \cs:w l__wheelchart_slices_#1_#2_angle_shift_fp \cs_end: )
)
}
}
{
\fp_gset:cn { g__wheelchart_slice_#1_#2_angle_\WCcount _fp }
{
- \cs:w g__wheelchart_#3angle_fp\cs_end: +
+ \cs:w g__wheelchart_#3angle_fp \cs_end: +
(
\l__wheelchart_counter_or_clockwise_fp *
(
- (#4) * \cs:w g__wheelchart_#1_gap_\WCcount _fp\cs_end: + \cs:w l__wheelchart_slices_#1_#2_angle_shift_fp\cs_end:
+ (#4) * \cs:w g__wheelchart_#1_gap_\WCcount _fp \cs_end: + \cs:w l__wheelchart_slices_#1_#2_angle_shift_fp \cs_end:
- asind
(
- \cs:w g__wheelchart_inner_radius_\WCcount _fp\cs_end:
- * sind ( \cs:w l__wheelchart_slices_#1_#2_angle_shift_fp\cs_end: )
- / \cs:w g__wheelchart_outer_radius_\WCcount _fp\cs_end:
+ \cs:w g__wheelchart_inner_radius_\WCcount _fp \cs_end:
+ * sind ( \cs:w l__wheelchart_slices_#1_#2_angle_shift_fp \cs_end: )
+ / \cs:w g__wheelchart_outer_radius_\WCcount _fp \cs_end:
)
)
)
@@ -620,8 +625,8 @@
\cs_new_protected:Npn \__wheelchart_def_slice_keys:n #1
{
- {%note the double {{...}} such that the contents is in a group
- %such that pgfkeys which are specific to the current slice are local for this slice
+ {%note the double braces {{...}} so that the contents is in a group
+ %and in particular, pgfkeys which are specific to the current slice are local for this slice
\clist_if_in:NVT \l__wheelchart_slice_range_local_clist \WCcount
{
\pgfkeys { / wheelchart , slice_final /. expanded = { \exp_not:v { l__wheelchart_slice_\WCcount _keys_clist } } }
@@ -663,24 +668,24 @@
%g__wheelchart_WCcount_counter to be larger than \WCtotalcount
\tl_build_end:N \WClegend
\cs_set:Npn \WCcount { \theg__wheelchart_WCcount_counter }
- \cs_set:Npn \WCpercentage { \cs:w l__wheelchart_WCpercentage_\theg__wheelchart_WCcount_counter\cs_end: }
- \cs_set:Npn \WCpercentagerounded { \cs:w l__wheelchart_WCpercentagerounded_\theg__wheelchart_WCcount_counter\cs_end: }
+ \cs_set:Npn \WCpercentage { \cs:w l__wheelchart_WCpercentage_\theg__wheelchart_WCcount_counter \cs_end: }
+ \cs_set:Npn \WCpercentagerounded { \cs:w l__wheelchart_WCpercentagerounded_\theg__wheelchart_WCcount_counter \cs_end: }
\str_if_eq:eeTF { \l__wheelchart_type_tl } { etoc }
{
\cs_set:Npn \WCetocthelinkedname
- { \cs:w g__wheelchart_etoc_item_\l__wheelchart_etoc_name_tl _the_linked_name_\theg__wheelchart_WCcount_counter\cs_end: }
+ { \cs:w g__wheelchart_etoc_item_\l__wheelchart_etoc_name_tl _the_linked_name_\theg__wheelchart_WCcount_counter \cs_end: }
\cs_set:Npn \WCetocthelinkednumber
- { \cs:w g__wheelchart_etoc_item_\l__wheelchart_etoc_name_tl _the_linked_number_\theg__wheelchart_WCcount_counter\cs_end: }
+ { \cs:w g__wheelchart_etoc_item_\l__wheelchart_etoc_name_tl _the_linked_number_\theg__wheelchart_WCcount_counter \cs_end: }
\cs_set:Npn \WCetocthelinkedpage
- { \cs:w g__wheelchart_etoc_item_\l__wheelchart_etoc_name_tl _the_linked_page_\theg__wheelchart_WCcount_counter\cs_end: }
+ { \cs:w g__wheelchart_etoc_item_\l__wheelchart_etoc_name_tl _the_linked_page_\theg__wheelchart_WCcount_counter \cs_end: }
\cs_set:Npn \WCetocthename
- { \cs:w g__wheelchart_etoc_item_\l__wheelchart_etoc_name_tl _the_name_\theg__wheelchart_WCcount_counter\cs_end: }
+ { \cs:w g__wheelchart_etoc_item_\l__wheelchart_etoc_name_tl _the_name_\theg__wheelchart_WCcount_counter \cs_end: }
\cs_set:Npn \WCetocthenumber
- { \cs:w g__wheelchart_etoc_item_\l__wheelchart_etoc_name_tl _the_number_\theg__wheelchart_WCcount_counter\cs_end: }
+ { \cs:w g__wheelchart_etoc_item_\l__wheelchart_etoc_name_tl _the_number_\theg__wheelchart_WCcount_counter \cs_end: }
\cs_set:Npn \WCetocthepage
- { \cs:w g__wheelchart_etoc_item_\l__wheelchart_etoc_name_tl _the_page_\theg__wheelchart_WCcount_counter\cs_end: }
+ { \cs:w g__wheelchart_etoc_item_\l__wheelchart_etoc_name_tl _the_page_\theg__wheelchart_WCcount_counter \cs_end: }
\cs_set:Npn \WCetocthenumberofpages
- { \cs:w g__wheelchart_etoc_item_\l__wheelchart_etoc_name_tl _the_number_of_pages_\theg__wheelchart_WCcount_counter\cs_end: }
+ { \cs:w g__wheelchart_etoc_item_\l__wheelchart_etoc_name_tl _the_number_of_pages_\theg__wheelchart_WCcount_counter \cs_end: }
}
{
\clist_if_empty:NTF \l__wheelchart_header_clist
@@ -688,7 +693,7 @@
\int_step_inline:nn { \l__wheelchart_max_list_items_int }
{
\cs_set:cpn { WCvar\int_to_Alph:n {##1} }
- { \cs:w l__wheelchart_item_WCvar\int_to_Alph:n {##1}_\theg__wheelchart_WCcount_counter\cs_end: }
+ { \cs:w l__wheelchart_item_WCvar\int_to_Alph:n {##1}_\theg__wheelchart_WCcount_counter \cs_end: }
}
}
{
@@ -717,13 +722,13 @@
(
atand
(
- \cs:w g__wheelchart_#3_y_fp\cs_end: - \cs:w g__wheelchart_#4_y_fp\cs_end: ,
- \cs:w g__wheelchart_#3_x_fp\cs_end: - \cs:w g__wheelchart_#4_x_fp\cs_end:
+ \cs:w g__wheelchart_#3_y_fp \cs_end: - \cs:w g__wheelchart_#4_y_fp \cs_end: ,
+ \cs:w g__wheelchart_#3_x_fp \cs_end: - \cs:w g__wheelchart_#4_x_fp \cs_end:
)
- atand
(
- \cs:w g__wheelchart_#1_y_fp\cs_end: - \cs:w g__wheelchart_#2_y_fp\cs_end: ,
- \cs:w g__wheelchart_#1_x_fp\cs_end: - \cs:w g__wheelchart_#2_x_fp\cs_end:
+ \cs:w g__wheelchart_#1_y_fp \cs_end: - \cs:w g__wheelchart_#2_y_fp \cs_end: ,
+ \cs:w g__wheelchart_#1_x_fp \cs_end: - \cs:w g__wheelchart_#2_x_fp \cs_end:
)
)
}
@@ -969,9 +974,9 @@
\__wheelchart_for_loop:n
{
\pgfkeysvalueof { / wheelchart / before~slices }
- \int_step_inline:nn { \fp_eval:n { round ( \cs:w g__wheelchart_value_\WCcount _fp\cs_end: ) } }
- %note that \fp_eval:n { round ( ... ) } is necessary even when the value is an integer because if parse=pgfmath
- %then .0 is added and then \int_step_inline:nn { \cs:w g__wheelchart_value_\WCcount _fp\cs_end: } would give the messages
+ \int_step_inline:nn { \fp_eval:n { round ( \cs:w g__wheelchart_value_\WCcount _fp \cs_end: ) } }
+ %note that \fp_eval:n { round ( ... ) } is necessary even when the value is an integer because pgfmath
+ %could have added .0 and then \int_step_inline:nn { \cs:w g__wheelchart_value_\WCcount _fp \cs_end: } would give the messages
%Missing character: There is no . in font nullfont! Missing character: There is no 0 in font nullfont!
{
\int_gincr:N \g__wheelchart_discrete_count_int
@@ -1082,7 +1087,7 @@
\cs_set:Npe \WCmidangle
{ \fp_use:c { g__wheelchart_WCmidangle_\WCcount _fp } }
\pgfkeysvalueof { / wheelchart / for~loop~start }%this must be placed after the definition of macros such as \WCpercentage
- %such that these macros can be used in the key for loop start
+ %so that these macros can be used in the key for loop start
\begin { scope }
[
shift = { ( \WCmidangle \c_colon_str \fp_use:c { g__wheelchart_explode_\WCcount _fp } ) } ,
@@ -1161,16 +1166,21 @@
\fp_gset:cn { g__wheelchart_#1_\WCcount _fp } { \pgfmathresult }
}
-\cs_new_protected:Npn \__wheelchart_if_text:nn #1#2
+\cs_new_protected:Npn \__wheelchart_if_text:nnn #1#2#3
{
%https://tex.stackexchange.com/questions/42280/expand-away-empty-macros-within-ifthenelse
%https://tex.stackexchange.com/questions/44919/proper-way-to-detect-empty-blank-text
\begin { pgfinterruptpicture }
+ \DeclareDocumentCommand \\ {#2} {}
+ %for arc data, \\ is used with seq_set_split so has no optional argument thus then #2 is empty
+ %otherwise, #2 is o
+ %no s because an optional star does not apply in a node
+ %no ! because a space between \\ and its optional argument is allowed in a node
%https://tex.stackexchange.com/questions/459853/savebox-within-tikzpicture-results-in-an-empty-savebox
\hbox_gset:Nn \g__wheelchart_if_text_box { \pgfkeysvalueof { / wheelchart / #1 } }
\end { pgfinterruptpicture }
\dim_compare:nNnT { \box_wd:N \g__wheelchart_if_text_box } > { 0 pt }
- { {#2} }
+ { {#3} }
}
\cs_new_protected:Npn \__wheelchart_initial:n #1
@@ -1182,7 +1192,7 @@
\tl_if_empty:nTF {#1}
{ \cs_set:Npn \WCtotalcount { 0 } }
{
- \cs:w seq_set_split:Ne\l__wheelchart_expand_list_tl\cs_end:
+ \cs:w seq_set_split:Ne\l__wheelchart_expand_list_tl \cs_end:
\l__wheelchart_list_seq
{ \pgfkeysvalueof { / wheelchart / separator~rows } }
{#1}
@@ -1190,7 +1200,7 @@
\int_zero:N \l__wheelchart_max_list_items_int
\seq_map_indexed_inline:Nn \l__wheelchart_list_seq
{
- \cs:w seq_set_split:Ne\l__wheelchart_expand_list_items_tl\cs_end:
+ \cs:w seq_set_split:Ne\l__wheelchart_expand_list_items_tl \cs_end:
\l__wheelchart_list_items_seq
{ \pgfkeysvalueof { / wheelchart / separator~columns } }
{##2}
@@ -1245,7 +1255,7 @@
\etocsetnexttocdepth { -1 }%only for the next toc
\etocsetstyle { \l__wheelchart_etoc_level_tl } {} {}
{
- \int_compare:nNnT { \cs:w g__wheelchart_etoc_item_\l__wheelchart_etoc_name_tl _count_int\cs_end: } > { 0 }
+ \int_compare:nNnT { \cs:w g__wheelchart_etoc_item_\l__wheelchart_etoc_name_tl _count_int \cs_end: } > { 0 }
{
\cs_gset:cpe
{
@@ -1304,7 +1314,7 @@
{}
\int_gzero_new:c { g__wheelchart_etoc_item_\l__wheelchart_etoc_name_tl _count_int }
\pgfkeysvalueof { / wheelchart / etoc~code }
- \int_compare:nNnT { \cs:w g__wheelchart_etoc_item_\l__wheelchart_etoc_name_tl _count_int\cs_end: } > { 0 }
+ \int_compare:nNnT { \cs:w g__wheelchart_etoc_item_\l__wheelchart_etoc_name_tl _count_int \cs_end: } > { 0 }
{
\cs_gset:cpe
{
@@ -1331,32 +1341,32 @@
{
\__wheelchart_def_slice_keys:n
{ \__wheelchart_gdef_count_fp:nn { value } { value } }
- \cs_set:Npe \WCtotalnum { \fp_eval:n { \WCtotalnum + \cs:w g__wheelchart_value_\WCcount _fp\cs_end: } }
+ \cs_set:Npe \WCtotalnum { \fp_eval:n { \WCtotalnum + \cs:w g__wheelchart_value_\WCcount _fp \cs_end: } }
}
\int_step_inline:nn { \WCtotalcount }
{
\cs_set:cpe { l__wheelchart_WCpercentage_##1 }
- { \fp_eval:n { \cs:w g__wheelchart_value_##1_fp\cs_end: / ( \WCtotalnum / 100 ) } }
+ { \fp_eval:n { \cs:w g__wheelchart_value_##1_fp \cs_end: / ( \WCtotalnum / 100 ) } }
\cs_set:cpe { l__wheelchart_WCpercentagerounded_##1 }
- { \fp_eval:n { round ( \cs:w l__wheelchart_WCpercentage_##1\cs_end: , \pgfkeysvalueof { / wheelchart / perc~precision } ) } }
+ { \fp_eval:n { round ( \cs:w l__wheelchart_WCpercentage_##1 \cs_end: , \pgfkeysvalueof { / wheelchart / perc~precision } ) } }
}
}
\cs_new_protected:Npn \__wheelchart_inner_and_wheel_data:n #1
{
- \__wheelchart_if_text:nn { #1~data }
+ \__wheelchart_if_text:nnn { #1~data } { o }
{
\__wheelchart_def_fp:nn { #1_data_angle_pos } { #1~data~angle~pos }
\__wheelchart_def_fp:nn { #1_data_angle_shift } { #1~data~angle~shift }
\__wheelchart_def_fp:nn { #1_data_pos } { #1~data~pos }
\__wheelchart_def_fp:nn { #1_data_sep } { #1~data~sep }
\node [ align = left , / wheelchart / #1_data_style ] at
- \cs:w __wheelchart_point_plot_\bool_to_str:N \l__wheelchart_plot_bool :nnnnn\cs_end:
+ \cs:w __wheelchart_point_plot_\bool_to_str:N \l__wheelchart_plot_bool :nnnnn \cs_end:
{ \WCcount }
- { \cs:w l__wheelchart_#1_data_angle_pos_fp\cs_end: }
- { \cs:w l__wheelchart_#1_data_angle_shift_fp\cs_end: }
- { \cs:w l__wheelchart_#1_data_pos_fp\cs_end: }
- { \cs:w l__wheelchart_#1_data_sep_fp\cs_end: }
+ { \cs:w l__wheelchart_#1_data_angle_pos_fp \cs_end: }
+ { \cs:w l__wheelchart_#1_data_angle_shift_fp \cs_end: }
+ { \cs:w l__wheelchart_#1_data_pos_fp \cs_end: }
+ { \cs:w l__wheelchart_#1_data_sep_fp \cs_end: }
{ \pgfkeysvalueof { / wheelchart / #1~data } } ;
}
}
@@ -1366,13 +1376,13 @@
\cs_new_protected:Npn \__wheelchart_legend_append:nn #1#2
{
- \tl_build_put_right:NV \WClegend \l__wheelchart_legend_row_tl%note the V specifier such that \WClegend can also be combined
- %with an S column of the package siunitx and such that \WClegend can be used in a tblr environment of the package tabularray
+ \tl_build_put_right:NV \WClegend \l__wheelchart_legend_row_tl%note the V specifier so that \WClegend can also be combined
+ %with an S column of the package siunitx and so that \WClegend can be used in a tblr environment of the package tabularray
%and then the option expand=\WClegend needs to be given to the tblr environment
\tl_build_put_right:Nn \WClegend { \protect \setcounter { g__wheelchart_WCcount_counter } }%note the \protect for in case that
%\WClegend would be parsed in a particular way
%note that the counter g__wheelchart_WCcount_counter is defined globally and at the end of the previous \l__wheelchart_legend_row_tl
- %such that this value is defined and has the right value at the start of the next \l__wheelchart_legend_row_tl
+ %so that this value is defined and has the right value at the start of the next \l__wheelchart_legend_row_tl
%if \WClegend is used in a tblr environment of the package tabularray then \UseTblrLibrary{counter} is required
\tl_build_put_right:Ne \WClegend { { \int_eval:n {#1} } }
\tl_build_put_right:Nn \WClegend {#2}
@@ -1414,8 +1424,8 @@
{
atand
(
- \cs:w g__wheelchart_#3_y_fp\cs_end: - \cs:w g__wheelchart_#4_y_fp\cs_end: ,
- \cs:w g__wheelchart_#3_x_fp\cs_end: - \cs:w g__wheelchart_#4_x_fp\cs_end:
+ \cs:w g__wheelchart_#3_y_fp \cs_end: - \cs:w g__wheelchart_#4_y_fp \cs_end: ,
+ \cs:w g__wheelchart_#3_x_fp \cs_end: - \cs:w g__wheelchart_#4_x_fp \cs_end:
)
}
\fp_set:Nn \l__wheelchart_slices_arc_coord_fp
@@ -1440,7 +1450,7 @@
)
:
atand ( ( \l__wheelchart_slices_arc_A_fp - ( 1 / \l__wheelchart_slices_arc_A_fp ) ) / 2 )
- }%note the min ( \l__wheelchart_slices_arc_B_fp , 0 ) such that the acosd is always defined
+ }%note the min ( \l__wheelchart_slices_arc_B_fp , 0 ) so that the acosd is always defined
}
}
]
@@ -1486,8 +1496,8 @@
* abs ( ( 1 / \l__wheelchart_slices_arc_A_fp ) + \l__wheelchart_slices_arc_A_fp )
* sqrt
(
- ( \cs:w g__wheelchart_#3_x_fp\cs_end: - \cs:w g__wheelchart_#4_x_fp\cs_end: ) ^ 2
- + ( \cs:w g__wheelchart_#3_y_fp\cs_end: - \cs:w g__wheelchart_#4_y_fp\cs_end: ) ^ 2
+ ( \cs:w g__wheelchart_#3_x_fp \cs_end: - \cs:w g__wheelchart_#4_x_fp \cs_end: ) ^ 2
+ + ( \cs:w g__wheelchart_#3_y_fp \cs_end: - \cs:w g__wheelchart_#4_y_fp \cs_end: ) ^ 2
)
}
}
@@ -1539,11 +1549,11 @@
\fp_eval:n
{
(
- \cs:w g__wheelchart_#3_x_fp\cs_end: + \cs:w g__wheelchart_#4_x_fp\cs_end: +
+ \cs:w g__wheelchart_#3_x_fp \cs_end: + \cs:w g__wheelchart_#4_x_fp \cs_end: +
(
\g__wheelchart_slices_orientation_fp * ( \l__wheelchart_slices_arrow_coord_fp - 1 )
* \l__wheelchart_slices_arrow_A_fp
- * ( \cs:w g__wheelchart_#3_y_fp\cs_end: - \cs:w g__wheelchart_#4_y_fp\cs_end: )
+ * ( \cs:w g__wheelchart_#3_y_fp \cs_end: - \cs:w g__wheelchart_#4_y_fp \cs_end: )
)
)
/ 2
@@ -1552,11 +1562,11 @@
\fp_eval:n
{
(
- \cs:w g__wheelchart_#3_y_fp\cs_end: + \cs:w g__wheelchart_#4_y_fp\cs_end: +
+ \cs:w g__wheelchart_#3_y_fp \cs_end: + \cs:w g__wheelchart_#4_y_fp \cs_end: +
(
\g__wheelchart_slices_orientation_fp * ( \l__wheelchart_slices_arrow_coord_fp - 1 )
* \l__wheelchart_slices_arrow_A_fp
- * ( \cs:w g__wheelchart_#4_x_fp\cs_end: - \cs:w g__wheelchart_#3_x_fp\cs_end: )
+ * ( \cs:w g__wheelchart_#4_x_fp \cs_end: - \cs:w g__wheelchart_#3_x_fp \cs_end: )
)
)
/ 2
@@ -1593,10 +1603,10 @@
{
\fp_eval:n
{
- ( 1 - (#1) / max ( round ( \cs:w g__wheelchart_value_\WCcount _fp\cs_end: ) , 1 ) )
- * \cs:w g__wheelchart_slice_#2_start_angle_\WCcount _fp\cs_end:
- + (#1) * \cs:w g__wheelchart_slice_#2_end_angle_\WCcount _fp\cs_end:
- / max ( round ( \cs:w g__wheelchart_value_\WCcount _fp\cs_end: ) , 1 )
+ ( 1 - (#1) / max ( round ( \cs:w g__wheelchart_value_\WCcount _fp \cs_end: ) , 1 ) )
+ * \cs:w g__wheelchart_slice_#2_start_angle_\WCcount _fp \cs_end:
+ + (#1) * \cs:w g__wheelchart_slice_#2_end_angle_\WCcount _fp \cs_end:
+ / max ( round ( \cs:w g__wheelchart_value_\WCcount _fp \cs_end: ) , 1 )
}
}
@@ -1617,17 +1627,19 @@
arc_style /. style = {} ,
arc~around~line /. initial = 1 ,
arc~around~text /. default = true ,%this key is not set up with /.is choice or \bool_set:Nn
- %such that for example \WCvarA can be used as value for this key
+ %so that for example \WCvarA can be used as value for this key
arc~around~text /. initial = false ,
arc~data /. initial = {} ,
arc~data~align /. code = { \tl_set:Nn \l__wheelchart_arc_data_align_tl {#1} } ,%this key is not set up with /.is choice
- %such that for example \WCvarA can be used as value for this key
+ %so that for example \WCvarA can be used as value for this key
arc~data~align = center ,
arc~data~angle~pos /. initial = 0.5 ,
arc~data~angle~shift /. initial = 0 ,
arc~data~dir /. initial = 1 ,
arc~data~expand /. initial = n ,
arc~data~line~sep~factor /. initial = 1 ,
+ arc~data~lines~pos /. initial = 0.5 ,
+ arc~data~lines~shift /. initial = 0 ,
arc~data~pos /. initial = 1 ,
arc~data~sep /. initial = 1 ex / 1 cm ,
arc~data~style /. style = { arc_data_style /. style = {#1} } ,
@@ -1640,7 +1652,7 @@
arc~sep /. initial = 1 ex / 1 cm ,
at /. initial = { ( 0 , 0 ) } ,
before~slices /. initial = {} ,
- bool_set_true /. code = { \bool_set_true:N #1 } ,
+ bool_set_true /. code = \bool_set_true:N #1 ,
caption /. initial = {} ,
caption~left /. initial = {} ,
caption~left~sep /. initial = 0.5 ,
@@ -1670,9 +1682,9 @@
data~style /. style = { data_style /. style = {#1} } ,
data_style /. style = {} ,
discrete /. is~choice ,
- discrete / false /. code = { \bool_set_false:N \l__wheelchart_discrete_bool } ,
+ discrete / false /. code = \bool_set_false:N \l__wheelchart_discrete_bool ,
discrete / false /. value~forbidden ,
- discrete / true /. code = { \bool_set_true:N \l__wheelchart_discrete_bool } ,
+ discrete / true /. code = \bool_set_true:N \l__wheelchart_discrete_bool ,
discrete / true /. value~forbidden ,
discrete /. default = true ,
discrete = false ,
@@ -1777,7 +1789,7 @@
legend /. initial = {} ,
legend~columns /. initial = 1 ,
legend~entry /. initial = {} ,
- legend~only /. code = { \bool_set:Nn \l__wheelchart_legend_only_bool { \cs:w c_#1_bool\cs_end: } } ,
+ legend~only /. code = \bool_set:Nn \l__wheelchart_legend_only_bool { \cs:w c_#1_bool \cs_end: } ,
legend~only /. default = true ,
legend~only = false ,
legend~row /. code =
@@ -1800,7 +1812,7 @@
} ,
lines~ext~dirsep /. initial = 0 ,
lines~ext~fixed /. default = true ,%this key is not set up with /.is choice or \bool_set:Nn
- %such that for example \WCvarA can be used as value for this key
+ %so that for example \WCvarA can be used as value for this key
lines~ext~fixed /. initial = false ,
lines~ext~fixed~left /. initial =
{
@@ -1808,7 +1820,7 @@
{
\l__wheelchart_lines_ext_dir_int *
(
- \cs:w g__wheelchart_outer_radius_\WCcount _fp\cs_end: + \l__wheelchart_lines_sep_fp
+ \cs:w g__wheelchart_outer_radius_\WCcount _fp \cs_end: + \l__wheelchart_lines_sep_fp
+ \l__wheelchart_lines_fp + \l__wheelchart_lines_ext_fp
)
}
@@ -1819,7 +1831,7 @@
{
\l__wheelchart_lines_ext_dir_int *
(
- \cs:w g__wheelchart_outer_radius_\WCcount _fp\cs_end: + \l__wheelchart_lines_sep_fp
+ \cs:w g__wheelchart_outer_radius_\WCcount _fp \cs_end: + \l__wheelchart_lines_sep_fp
+ \l__wheelchart_lines_fp + \l__wheelchart_lines_ext_fp
)
}
@@ -1870,7 +1882,7 @@
outer_plot_style /. style = {} ,
outer~radius /. initial = 3 ,
perc~precision /. initial = 0 ,
- pie /. code = { \bool_set:Nn \l__wheelchart_pie_bool { \cs:w c_#1_bool\cs_end: } } ,
+ pie /. code = \bool_set:Nn \l__wheelchart_pie_bool { \cs:w c_#1_bool \cs_end: } ,
pie /. default = true ,
pie = false ,
plot /. style =
@@ -2029,12 +2041,12 @@
} ,
slices~inner /. initial =
{
- \fp_compare:nNnT { \cs:w g__wheelchart_inner_radius_\WCcount _fp\cs_end: } > { 0 }
+ \fp_compare:nNnT { \cs:w g__wheelchart_inner_radius_\WCcount _fp \cs_end: } > { 0 }
{
\fp_compare:nNnT
- { \cs:w g__wheelchart_inner_gap_\WCcount _fp\cs_end: }
+ { \cs:w g__wheelchart_inner_gap_\WCcount _fp \cs_end: }
<
- { \cs:w g__wheelchart_abs_half_angle_minus_new_angle_\WCcount _fp\cs_end: }
+ { \cs:w g__wheelchart_abs_half_angle_minus_new_angle_\WCcount _fp \cs_end: }
{
arc
[
@@ -2212,7 +2224,7 @@
{}
}
} ,
- slices~start~arrow/.style~2~args =
+ slices~start~arrow /. style~2~args =
{
slices~start =
{
@@ -2241,13 +2253,13 @@
(#1) -
\fp_eval:n
{
- \l__wheelchart_counter_or_clockwise_fp * \cs:w g__wheelchart_value_1_fp\cs_end: * 0.5
+ \l__wheelchart_counter_or_clockwise_fp * \cs:w g__wheelchart_value_1_fp \cs_end: * 0.5
* ( \l__wheelchart_total_angle_fp / \WCtotalnum )
}
}
} ,
start~half /. default = 90 ,
- title /. initial= {} ,
+ title /. initial = {} ,
title~left /. initial = {} ,
title~left~sep /. initial = 0.5 ,
title~left~style /. style = { title~left_style /. style = {#1} } ,
@@ -2283,13 +2295,13 @@
{
\cs_set:cpn {#1}
{ \use:e { \clist_item:nn {#2} { \int_mod:nn { \WCcount - 1 } { \clist_count:n {#2} } + 1 } } }
- %note the \use:e such that \WClist<name> also works when given as an argument to pgfmath
+ %note the \use:e so that \WClist<name> also works when given as an argument to pgfmath
%if the list contains a macro, for example
%\begin{tikzpicture}
%\def\n{1}
%\wheelchart[
- % value=\WClistA,
- % WClistA={\n}
+ % value=\WClistA,
+ % WClistA=\n
%]{\exampleforthismanual}
%\end{tikzpicture}
%https://tex.stackexchange.com/questions/671298/clist-item-and-pgfmathsetmacro-causing-an-error
@@ -2331,18 +2343,18 @@
{
\tl_set:Ne \l__wheelchart_key_name_tl { \pgfkeyscurrentname }%it is necessary to define \l__wheelchart_key_name_tl
%because \pgfkeyscurrentname will be overwritten by / errors / unknown~key /. expanded
- \regex_match:nVTF { \{(.+)\} } \l__wheelchart_key_name_tl
+ \regex_match:NVTF \c__wheelchart_braces_regex \l__wheelchart_key_name_tl
{
\tl_set:Ne \l__wheelchart_key_range_tl { \pgfkeyscurrentname }
- \regex_replace_all:nnN { \{(.+)\} } {} \l__wheelchart_key_name_tl
- \regex_replace_all:nnN { [\w\s]+\{(.+)\} } { \1 } \l__wheelchart_key_range_tl
+ \regex_replace_all:NnN \c__wheelchart_braces_regex {} \l__wheelchart_key_name_tl
+ \regex_replace_all:NnN \c__wheelchart_key_braces_regex { \1 } \l__wheelchart_key_range_tl
\str_if_eq:eeTF { \l__wheelchart_key_range_tl } { list }
{
\pgfkeys { / wheelchart , WC_list = { l__wheelchart_list_\l__wheelchart_key_name_tl } {#1} }
\pgfkeys
{
/ wheelchart ,
- \l__wheelchart_key_name_tl /. expand~once = { \cs:w l__wheelchart_list_\l__wheelchart_key_name_tl\cs_end: }
+ \l__wheelchart_key_name_tl /. expand~once = { \cs:w l__wheelchart_list_\l__wheelchart_key_name_tl \cs_end: }
}
}
{
@@ -2393,12 +2405,12 @@
\NewDocumentCommand \wheelchart { O {} m }
{
- {%note the double braces {{...}} such that the contents is in a group and such that & can be used in pgfmath in a tabular
+ {%note the double braces {{...}} so that the contents is in a group and so that & can be used in pgfmath in a tabular
\pgfkeys { / wheelchart , #1 }
\IfPackageLoadedTF { siunitx }
{ \cs_set:Npn \WCperc { \qty { \WCpercentagerounded } { \percent } } }
{ \cs_set:Npn \WCperc { \WCpercentagerounded \, \% } }%the definition of \WCperc is placed inside the command \wheelchart
- %such that \WCperc is not defined outside this command
+ %so that \WCperc is not defined outside this command
\bool_if:NTF \l__wheelchart_legend_only_bool
{
\__wheelchart_initial:n {#2}
@@ -2430,7 +2442,7 @@
{
\g__wheelchart_angle_fp +
(
- \l__wheelchart_counter_or_clockwise_fp * \cs:w g__wheelchart_value_\WCcount _fp\cs_end:
+ \l__wheelchart_counter_or_clockwise_fp * \cs:w g__wheelchart_value_\WCcount _fp \cs_end:
* ( \l__wheelchart_total_angle_fp / \WCtotalnum )
)
}
@@ -2455,7 +2467,7 @@
\fp_gset:cn { g__wheelchart_abs_half_angle_minus_new_angle_\WCcount _fp }
{ abs ( \g__wheelchart_angle_fp - \g__wheelchart_new_angle_fp ) / 2 }
\fp_set:Nn \l__wheelchart_abs_half_angle_minus_new_angle_minus_gap_polar_fp
- { \cs:w g__wheelchart_abs_half_angle_minus_new_angle_\WCcount _fp\cs_end: - \l__wheelchart_gap_polar_fp }
+ { \cs:w g__wheelchart_abs_half_angle_minus_new_angle_\WCcount _fp \cs_end: - \l__wheelchart_gap_polar_fp }
\fp_gzero_new:c { g__wheelchart_outer_gap_\WCcount _fp }
\fp_gzero_new:c { g__wheelchart_inner_gap_\WCcount _fp }
\bool_if:NTF \l__wheelchart_plot_bool
@@ -2466,7 +2478,7 @@
{
\fp_set:Nn \l__wheelchart_gap_max_angle_def_fp
{
- \cs:w g__wheelchart_inner_radius_\WCcount _fp\cs_end: > 0
+ \cs:w g__wheelchart_inner_radius_\WCcount _fp \cs_end: > 0
?
90
:
@@ -2490,8 +2502,8 @@
)
)
}
- \__wheelchart_def_gap:nn { outer } { \cs:w g__wheelchart_outer_radius_\WCcount _fp\cs_end: }
- \__wheelchart_def_gap:nn { inner } { \cs:w g__wheelchart_inner_radius_\WCcount _fp\cs_end: }
+ \__wheelchart_def_gap:nn { outer } { \cs:w g__wheelchart_outer_radius_\WCcount _fp \cs_end: }
+ \__wheelchart_def_gap:nn { inner } { \cs:w g__wheelchart_inner_radius_\WCcount _fp \cs_end: }
\fp_compare:nNnT { \l__wheelchart_abs_half_angle_minus_new_angle_minus_gap_polar_fp } > { 0.01 }
{
\fp_gset:cn { g__wheelchart_inner_radius_\WCcount _fp }
@@ -2508,7 +2520,7 @@
)
)
,
- \cs:w g__wheelchart_inner_radius_\WCcount _fp\cs_end:
+ \cs:w g__wheelchart_inner_radius_\WCcount _fp \cs_end:
)
}
}
@@ -2523,14 +2535,14 @@
\__wheelchart_gdef_count_fp:nn { data_pos } { data~pos }
\__wheelchart_gdef_count_fp:nn { data_sep } { data~sep }
\__wheelchart_def_angle:nnnn
- { \cs:w g__wheelchart_data_angle_pos_\WCcount _fp\cs_end: }
- { \cs:w g__wheelchart_data_angle_shift_\WCcount _fp\cs_end: }
- { \cs:w g__wheelchart_data_pos_\WCcount _fp\cs_end: }
- { \cs:w g__wheelchart_data_sep_\WCcount _fp\cs_end: }
+ { \cs:w g__wheelchart_data_angle_pos_\WCcount _fp \cs_end: }
+ { \cs:w g__wheelchart_data_angle_shift_\WCcount _fp \cs_end: }
+ { \cs:w g__wheelchart_data_pos_\WCcount _fp \cs_end: }
+ { \cs:w g__wheelchart_data_sep_\WCcount _fp \cs_end: }
\cs_set:Npe \WCdataangle { \pgfmathresult }
\__wheelchart_gdef_count_fp:nn { explode } { explode }
\pgfkeysvalueof { / wheelchart / for~loop~start }%this must be placed after the definition of macros such as
- %\WCpercentage such that these macros can be used in the key for loop start
+ %\WCpercentage so that these macros can be used in the key for loop start
\int_compare:nNnT { \WCcount } = { 1 }
{
\begin { scope }
@@ -2601,7 +2613,7 @@
[
shift /. expanded =
{
- \cs:w __wheelchart_point_plot_\bool_to_str:N \l__wheelchart_plot_bool :nnnnn\cs_end:
+ \cs:w __wheelchart_point_plot_\bool_to_str:N \l__wheelchart_plot_bool :nnnnn \cs_end:
{ \WCcount }
{ \l__wheelchart_slices_angle_pos_fp }
{ \l__wheelchart_slices_angle_shift_fp }
@@ -2639,9 +2651,9 @@
\__wheelchart_for_loop:n
{
\bool_if:NT \l__wheelchart_wheel_lines_bool
- %this is placed inside \__wheelchart_for_loop:n such that wheel lines can be applied for specific slices
+ %this is placed inside \__wheelchart_for_loop:n so that wheel lines can be applied for specific slices
{
- \int_step_inline:nnn { 0 } { \fp_eval:n { round ( \cs:w g__wheelchart_value_\WCcount _fp\cs_end: ) } }
+ \int_step_inline:nnn { 0 } { \fp_eval:n { round ( \cs:w g__wheelchart_value_\WCcount _fp \cs_end: ) } }
%note the \fp_eval:n { round ( ... ) } to avoid the messages Missing character: There is no ... in font nullfont!
{
\bool_if:NTF \l__wheelchart_plot_bool
@@ -2783,14 +2795,14 @@
\fp_compare:nF { \l__wheelchart_lines_fp == 0 && \l__wheelchart_lines_ext_fp == 0 }
{
\draw [ / wheelchart / lines_style ] let \p { l__wheelchart_lines_1 } =
- \cs:w __wheelchart_point_plot_\bool_to_str:N \l__wheelchart_plot_bool :nnnnn\cs_end:
+ \cs:w __wheelchart_point_plot_\bool_to_str:N \l__wheelchart_plot_bool :nnnnn \cs_end:
{ \WCcount }
- { \cs:w g__wheelchart_data_angle_pos_\WCcount _fp\cs_end: }
- { \cs:w g__wheelchart_data_angle_shift_\WCcount _fp\cs_end: }
- { \cs:w g__wheelchart_data_pos_\WCcount _fp\cs_end: }
+ { \cs:w g__wheelchart_data_angle_pos_\WCcount _fp \cs_end: }
+ { \cs:w g__wheelchart_data_angle_shift_\WCcount _fp \cs_end: }
+ { \cs:w g__wheelchart_data_pos_\WCcount _fp \cs_end: }
{ \l__wheelchart_lines_sep_fp + \l__wheelchart_lines_fp }
in
- \cs:w __wheelchart_point_plot_\bool_to_str:N \l__wheelchart_plot_bool :nnnnn\cs_end:
+ \cs:w __wheelchart_point_plot_\bool_to_str:N \l__wheelchart_plot_bool :nnnnn \cs_end:
{ \WCcount }
{ \l__wheelchart_lines_angle_pos_fp }
{ \l__wheelchart_lines_angle_shift_fp }
@@ -2838,7 +2850,7 @@
{
\fp_eval:n
{
- \l__wheelchart_lines_ext_dir_int * \cs:w g__wheelchart_data_sep_\WCcount _fp\cs_end:
+ \l__wheelchart_lines_ext_dir_int * \cs:w g__wheelchart_data_sep_\WCcount _fp \cs_end:
}
} ,
0
@@ -2849,7 +2861,7 @@
}
;
}
- \__wheelchart_if_text:nn { data }
+ \__wheelchart_if_text:nnn { data } { o }
{
\fp_compare:nNnTF { \l__wheelchart_lines_ext_fp } = { 0 }
{
@@ -2876,13 +2888,13 @@
\coordinate
[
at =
- \cs:w __wheelchart_point_plot_\bool_to_str:N \l__wheelchart_plot_bool :nnnnn\cs_end:
+ \cs:w __wheelchart_point_plot_\bool_to_str:N \l__wheelchart_plot_bool :nnnnn \cs_end:
{ \WCcount }
- { \cs:w g__wheelchart_data_angle_pos_\WCcount _fp\cs_end: }
- { \cs:w g__wheelchart_data_angle_shift_\WCcount _fp\cs_end: }
- { \cs:w g__wheelchart_data_pos_\WCcount _fp\cs_end: }
+ { \cs:w g__wheelchart_data_angle_pos_\WCcount _fp \cs_end: }
+ { \cs:w g__wheelchart_data_angle_shift_\WCcount _fp \cs_end: }
+ { \cs:w g__wheelchart_data_pos_\WCcount _fp \cs_end: }
{
- \cs:w g__wheelchart_data_sep_\WCcount _fp\cs_end: +
+ \cs:w g__wheelchart_data_sep_\WCcount _fp \cs_end: +
(
\l__wheelchart_lines_fp == 0
?
@@ -2902,7 +2914,7 @@
\node [ anchor = \l__wheelchart_data_anchor_tl , align = left , / wheelchart / data_style ]
at ( g__wheelchart_data_coordinate )
{ \pgfkeysvalueof { / wheelchart / data } } ;%a separate \node and not at the end of the \draw with lines_style
- %such that the key lines style is not passed to this \node
+ %so that the key lines style is not passed to this \node
}
\__wheelchart_def_fp:nn { arc_around_line } { arc~around~line }
\__wheelchart_def_fp:nn { arc_data_angle_pos } { arc~data~angle~pos }
@@ -2913,14 +2925,16 @@
\fp_gset:Nn \g__wheelchart_half_ex_over_one_cm_fp { 0.5 ex / 1 cm }%
\endpgfinterruptpicture%
\fp_gset:Nn \g__wheelchart_arc_data_aux_ii_fp { 0 }
- \__wheelchart_if_text:nn { arc~data }
+ \__wheelchart_if_text:nnn { arc~data } {}
{
- \cs_set:Npn \WCperc { \WCpercentagerounded { \, } { \% } }%such that \WCperc follows the arc if used in arc data
+ \cs_set:Npn \WCperc { \WCpercentagerounded { \, } { \% } }%so that \WCperc follows the arc if used in arc data
%this redefinition of \WCperc is local to the group of arc data
\__wheelchart_def_fp:nn { arc_data_pos } { arc~data~pos }
\__wheelchart_def_fp:nn { arc_data_sep } { arc~data~sep }
\__wheelchart_def_fp:nn { arc_data_line_sep_factor } { arc~data~line~sep~factor }
- \cs:w seq_set_split:Nn\pgfkeysvalueof { / wheelchart / arc~data~expand }\cs_end:
+ \__wheelchart_def_fp:nn { arc_data_lines_pos } { arc~data~lines~pos }
+ \__wheelchart_def_fp:nn { arc_data_lines_shift } { arc~data~lines~shift }
+ \cs:w seq_set_split:Nn\pgfkeysvalueof { / wheelchart / arc~data~expand } \cs_end:
\l__wheelchart_arc_data_seq
{ \\ }
{ \pgfkeysvalueof { / wheelchart / arc~data } }
@@ -2928,13 +2942,17 @@
{
\fp_set:Nn \l__wheelchart_arc_data_text_pos_fp
{
- \l__wheelchart_arc_data_pos_fp + 2 * \g__wheelchart_slices_orientation_fp
- * ( 2 * ####1 - \seq_count:N \l__wheelchart_arc_data_seq - 1 ) * sign ( \l__wheelchart_arc_data_dir_fp )
+ \l__wheelchart_arc_data_pos_fp + 4 * \g__wheelchart_slices_orientation_fp *
+ (
+ ####1 - 1 - \l__wheelchart_arc_data_lines_pos_fp * ( \seq_count:N \l__wheelchart_arc_data_seq - 1 )
+ + \l__wheelchart_arc_data_lines_shift_fp
+ )
+ * sign ( \l__wheelchart_arc_data_dir_fp )
* \l__wheelchart_arc_data_line_sep_factor_fp * \g__wheelchart_half_ex_over_one_cm_fp
/
(
- \cs:w g__wheelchart_outer_radius_\WCcount _fp\cs_end:
- - \cs:w g__wheelchart_inner_radius_\WCcount _fp\cs_end:
+ \cs:w g__wheelchart_outer_radius_\WCcount _fp \cs_end:
+ - \cs:w g__wheelchart_inner_radius_\WCcount _fp \cs_end:
+ 2 * \l__wheelchart_arc_data_sep_fp
)
}%the sign is needed because \l__wheelchart_arc_data_dir_fp is not necessarily 1 or -1
@@ -2957,9 +2975,9 @@
/ wheelchart / arc_data_style
}
}%get the length of the path
- %note the option overlay such that this does not increase the bounding box
+ %note the option overlay so that this does not increase the bounding box
%note the {} at the start of text and the braces around \fp_gset:Nn ...
- %such that the compilation does not stall
+ %so that the compilation does not stall
{ 0 }
{ 1 }
{ \l__wheelchart_plot_variable_tl }
@@ -3033,7 +3051,7 @@
{ \l__wheelchart_arc_data_text_pos_fp }
{ \l__wheelchart_arc_data_sep_fp + \g__wheelchart_half_ex_over_one_cm_fp }
+ \l__wheelchart_counter_or_clockwise_fp * \l__wheelchart_arc_data_dir_fp
- * \cs:w c__wheelchart_arc_data_start_factor_\l__wheelchart_arc_data_align_tl _fp\cs_end:
+ * \cs:w c__wheelchart_arc_data_start_factor_\l__wheelchart_arc_data_align_tl _fp \cs_end:
* \l__wheelchart_arc_data_total_angle_plot_false_fp
}
\path
@@ -3188,7 +3206,7 @@
}
\bool_if:NT \l__wheelchart_legend_row_bool
{ \__wheelchart_def_WClegend: }
- \__wheelchart_if_text:nn { middle }
+ \__wheelchart_if_text:nnn { middle } { o }
{ \node [ align = center , / wheelchart / middle_style ] at ( 0 , 0 ) { \pgfkeysvalueof { / wheelchart / middle } } ; }
\pgfkeysvalueof { / wheelchart / legend }
\end { scope }
@@ -3203,4 +3221,6 @@
\end { scope }
}
}
- } \ No newline at end of file
+ }
+
+\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/wordle/wordle.sty b/Master/texmf-dist/tex/latex/wordle/wordle.sty
index 4df1801ba02..a463f22837e 100644
--- a/Master/texmf-dist/tex/latex/wordle/wordle.sty
+++ b/Master/texmf-dist/tex/latex/wordle/wordle.sty
@@ -1,298 +1,670 @@
-% Author.........: C. Pierquet
-% licence........: Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf
-% Inspiration....: https://tex.stackexchange.com/questions/659860/wordle-like-colored-letter-boxes-in-latex
+% ---------------------------------------------------------------
+% wordle --- A latex package for typesetting wordle puzzles
+%
+% E-mail: andrew.mathas@gmail.com and cpierquet@outlook.fr
+% Released under the LaTeX Project Public License v1.3c or later
+% See http://www.latex-project.org/lppl.txt
+% ----------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{wordle}[2023/09/03 v0.1.1 Wordle grid]
-% 0.1.1 Coorection d'un bug sur la version anglaise
-% 0.1.0 Version initiale + quelques modèles
-%------Packages utiles
+% Package version
+\def\wordle@version{0.3.0}
+\def\wordle@release{2024-08-18}
+
+\providecommand\DeclareRelease[3]{}
+\providecommand\DeclareCurrentRelease[2]{}
+\DeclareRelease{\wordle@version}{\wordle@release}{wordle.sty}
+\DeclareCurrentRelease{}{\wordle@release}
+
+\ProvidesExplPackage{wordle} {\wordle@release} {\wordle@version}
+ {A latex package for typesetting wordle puzzles}
+
+% ----------------------------------------------------------------
+% Required packages
+%\RequirePackage{xcolor}
\RequirePackage{tikz}
-\RequirePackage{simplekv}
-\RequirePackage{xstring}
-%commandes utiles
-\usepackage{expl3}
-\ExplSyntaxOn
+% ----------------------------------------------------------------
+% predefined tile colours
+
+% from https://www.nytimes.com/games/wordle
+\definecolor{WordleAbsent} {HTML} {797D7F}
+\definecolor{WordlePresent} {HTML} {F7DA21}
+\definecolor{WordleCorrect} {HTML} {6AAB64}
+\definecolor{WordleEmpty} {HTML} {F5F5DC}
+
+\definecolor{WordleHardPresent} {HTML} {95BEFA}
+\definecolor{WordleHardCorrect} {HTML} {FB9B00}
+
+% from https://sutom.nocle.fr/#
+\definecolor{WordleSutomAbsent} {HTML} {0077B7}
+\definecolor{WordleSutomPresent} {HTML} {FFBB00}
+\definecolor{WordleSutomCorrect} {HTML} {EB2152}
+
+% ----------------------------------------------------------------
+% package variables
+
+\bool_new:N \l__wordle_case_sensitive_bool % case sensitive mode (false by default)
+\bool_new:N \l__wordle_strict_bool % strict mode (false by default)
+
+\dim_new:N \l__wordle_grid_dim
+\dim_new:N \l__wordle_rounded_dim
+\dim_new:N \l__wordle_sep_dim
+\dim_new:N \l__wordle_size_dim
+\dim_new:N \l__wordle_thickness_dim
+
+\int_new:N \l__wordle_rows_int
-%boite en [fr]
-\cs_new:Npn \l__sutom_boite_lettre:nn #1#2#3
+\fp_new:N \l__wordle_scale_fp
+
+\tl_new:N \l__wordle_align_tl
+\tl_new:N \l__wordle_depth_tl
+\tl_new:N \l__wordle_font_tl
+\tl_new:N \l__wordle_name_tl
+\tl_new:N \l__wordle_style_tl
+\tl_new:N \l__wordle_tikz_tl
+\tl_new:N \l__wordle_tile_style_tl
+
+\tl_new:N \l__wordle_present_border_tl
+\tl_new:N \l__wordle_present_colour_tl
+\tl_new:N \l__wordle_present_frame_tl
+\tl_new:N \l__wordle_present_shape_tl
+\tl_new:N \l__wordle_present_text_tl
+
+\tl_new:N \l__wordle_correct_border_tl
+\tl_new:N \l__wordle_correct_colour_tl
+\tl_new:N \l__wordle_correct_frame_tl
+\tl_new:N \l__wordle_correct_shape_tl
+\tl_new:N \l__wordle_correct_text_tl
+
+\tl_new:N \l__wordle_empty_border_tl
+\tl_new:N \l__wordle_empty_colour_tl
+\tl_new:N \l__wordle_empty_frame_tl
+\tl_new:N \l__wordle_empty_shape_tl
+\tl_new:N \l__wordle_empty_text_tl
+
+\tl_new:N \l__wordle_absent_border_tl
+\tl_new:N \l__wordle_absent_colour_tl
+\tl_new:N \l__wordle_absent_frame_tl
+\tl_new:N \l__wordle_absent_shape_tl
+\tl_new:N \l__wordle_absent_text_tl
+
+
+% ----------------------------------------------------------------
+% Assign up to four style attributes from comma separated list to absent,
+% present, correct, empty, respectively. If there is only one entry in
+% the list then everything is set equal to that entry
+\cs_new_nopar:Npn \__wordle_set_style:nn #1#2
{
- \ifboolKV[SUTOM]{Lettres}%
- {%
- \tikz \draw[rounded~corners=\fpeval{#3*\SutomUnit}cm,draw=\SutomBorder,line~width=\SutomWidth~mm,fill=#1] (0,0) rectangle++ (\SutomUnit,\SutomUnit) node[midway,font=\SutomFonte,text=\SutomFonteColor,scale=\SutomUnit] {#2} ;
- }%
- {%
- \tikz \draw[rounded~corners=\fpeval{#3*\SutomUnit}cm,draw=\SutomBorder,line~width=\SutomWidth~mm,fill=#1] (0,0) rectangle++ (\SutomUnit,\SutomUnit) ;
- }%
+ \seq_set_split:Nnn \l_tmpa_seq {,} {#2}
+ \int_compare:nNnTF {\seq_count:N \l_tmpa_seq} = {1}
+ {
+ \tl_set:co {l__wordle_absent_#1_tl} {#2}
+ \tl_set:co {l__wordle_present_#1_tl} {#2}
+ \tl_set:co {l__wordle_correct_#1_tl} {#2}
+ \tl_set:co {l__wordle_empty_#1_tl} {#2}
+ }
+ {
+ \seq_pop_left:NNT \l_tmpa_seq \l_tmpa_tl { \tl_set:co {l__wordle_absent_#1_tl} {\l_tmpa_tl} }
+ \seq_pop_left:NNT \l_tmpa_seq \l_tmpa_tl { \tl_set:co {l__wordle_present_#1_tl} {\l_tmpa_tl} }
+ \seq_pop_left:NNT \l_tmpa_seq \l_tmpa_tl { \tl_set:co {l__wordle_correct_#1_tl} {\l_tmpa_tl} }
+ \seq_pop_left:NNT \l_tmpa_seq \l_tmpa_tl { \tl_set:co {l__wordle_empty_#1_tl} {\l_tmpa_tl} }
+ }
}
-\cs_new:Npn \l__sutom_boite_lettre_rond:nn #1#2#3#4
+% apply the wordle styles
+\cs_new_nopar:Npn \__wordle_apply_style:n #1 {
+ \str_case:enF { #1 }
+ {
+ {hard}
+ {
+ \__wordle_set_style:nn {border} {white}
+ \__wordle_set_style:nn {colour} {WordleAbsent,WordleHardPresent,WordleHardCorrect,WordleEmpty}
+ \__wordle_set_style:nn {frame} {false}
+ \__wordle_set_style:nn {shape} {rectangle}
+ \__wordle_set_style:nn {text} {white,white,white,black}
+ }
+
+ {alt}
+ { % alt appears in the English version of Cedric's manual for sutom
+ \__wordle_set_style:nn {border} {white}
+ \__wordle_set_style:nn {colour} {WordleSutomAbsent,WordleSutomPresent,WordleSutomCorrect,WordleEmpty}
+ \__wordle_set_style:nn {frame} {false,true,false,false}
+ \__wordle_set_style:nn {shape} {rectangle,circle,rectangle,circle}
+ \__wordle_set_style:nn {text} {white,white,white,black}
+ \tl_set:Nn \l_wordle_font_tl {\LARGE\bfseries\sffamily}
+
+ }
+
+ {sutom}
+ {
+ \__wordle_set_style:nn {border} {white}
+ \__wordle_set_style:nn {colour} {WordleSutomAbsent,WordleSutomPresent,WordleSutomCorrect,WordleEmpty}
+ \__wordle_set_style:nn {frame} {false,true,false,false}
+ \__wordle_set_style:nn {shape} {rectangle,circle,rectangle,circle}
+ \__wordle_set_style:nn {text} {white,white,white,black}
+ \tl_set:Nn \l_wordle_font_tl {\LARGE\bfseries\sffamily}
+ }
+ }
+ {
+ % default style
+ \__wordle_set_style:nn {border} {white}
+ \__wordle_set_style:nn {colour} {WordleAbsent,WordlePresent,WordleCorrect,WordleEmpty}
+ \__wordle_set_style:nn {frame} {false}
+ \__wordle_set_style:nn {shape} {rectangle}
+ \__wordle_set_style:nn {text} {white,white,white,black}
+ }
+}
+
+% rescale dimensions
+\cs_new_nopar:Npn \__wordle_rescale:n #1
{
- \IfStrEq{\SutomStyle}{rond}
- {%
- \tikz {\draw[rounded~corners=\fpeval{#4*\SutomUnit}cm,draw=\SutomBorder,line~width=\SutomWidth~mm,fill=#1] (0,0) rectangle++ (\SutomUnit,\SutomUnit) ;
- \ifboolKV[SUTOM]{Lettres}%
- {%
- \draw[line~width=\SutomWidth~mm,draw=#2,fill=#2] ({0.5*\SutomUnit},{0.5*\SutomUnit}) circle[radius=\fpeval{0.5*\SutomUnit-0.1*\SutomWidth}] node[font=\SutomFonte,text=\SutomFonteColor,scale=\SutomUnit] {#3} ;
- }%
- {%
- \draw[line~width=\SutomWidth~mm,draw=#2,fill=#2] ({0.5*\SutomUnit},{0.5*\SutomUnit}) circle[radius=\fpeval{0.5*\SutomUnit-0.1*\SutomWidth}];
- }%
- }%
- }%
- {%
- \ifboolKV[SUTOM]{Lettres}%
- {%
- \tikz \draw[rounded~corners=\fpeval{#4*\SutomUnit}cm,line~width=0\SutomWidth~mm,draw=\SutomBorder,fill=#2] (0,0) rectangle++ (\SutomUnit,\SutomUnit) node[midway,font=\SutomFonte,text=\SutomFonteColor,scale=\SutomUnit] {#3} ;
- }%
- {%
- \tikz \draw[rounded~corners=\fpeval{#4*\SutomUnit}cm,line~width=\SutomWidth~mm,draw=\SutomBorder,fill=#2] (0,0) rectangle++ (\SutomUnit,\SutomUnit) ;
- }%
- }%
+ \fp_set:Nn \l__wordle_scale_fp {#1}
+ \dim_set:Nn \l__wordle_rounded_dim { \fp_eval:n {#1*\dim_to_decimal_in_mm:n {\l__wordle_rounded_dim }}mm }
+ \dim_set:Nn \l__wordle_sep_dim { \fp_eval:n {#1*\dim_to_decimal_in_mm:n {\l__wordle_sep_dim }}mm }
+ \dim_set:Nn \l__wordle_size_dim { \fp_eval:n {#1*\dim_to_decimal_in_mm:n {\l__wordle_size_dim }}mm }
+ \dim_set:Nn \l__wordle_thickness_dim { \fp_eval:n {#1*\dim_to_decimal_in_mm:n {\l__wordle_thickness_dim}}mm }
}
-%boite en [en]
-\cs_new:Npn \l__wordle_boite_lettre:nn #1#2#3
+
+% ----------------------------------------------------------------
+% just in case we're running an old version of latex
+\providecommand \IfFormatAtLeastTF { \@ifl@t@r \fmtversion }
+
+\IfFormatAtLeastTF { 2022-06-01 }
+ { \ProcessKeyOptions [ wordle ] }
+ {
+ \RequirePackage { l3keys2e }
+ \ProcessKeysOptions { wordle }
+ }
+
+% ----------------------------------------------------------------
+% Define keys for the package options and their defaults
+
+\keys_define:nn { wordle }
{
- \ifboolKV[WORDLE]{Letters}%
- {%
- \tikz \draw[rounded~corners=\fpeval{#3*\SutomUnit}cm,draw=\SutomBorder,line~width=\SutomWidth~mm,fill=#1] (0,0) rectangle++ (\SutomUnit,\SutomUnit) node[midway,font=\SutomFonte,text=\SutomFonteColor,scale=\SutomUnit] {#2} ;
- }%
- {%
- \tikz \draw[rounded~corners=\fpeval{#3*\SutomUnit}cm,draw=\SutomBorder,line~width=\SutomWidth~mm,fill=#1] (0,0) rectangle++ (\SutomUnit,\SutomUnit) ;
- }%
+ % apply puzzle styles: sets colours of absent, present, correct and empty tiles
+ style .code:n = {
+ \seq_set_from_clist:Nn \l_tmpa_seq {#1}
+ \seq_map_inline:Nn \l_tmpa_seq { \__wordle_apply_style:n { \str_lowercase:n{##1}} }
+ },
+ Style .meta:n = { style = #1 },
+ style .initial:n = standard,
+
+ % specifying tile colours and shapes
+ borders .code:n = { \__wordle_set_style:nn {border} {#1} },
+ BorderColor .code:n = { \__wordle_set_style:nn {border} {#1} },
+ CouleurBordures.code:n = { \__wordle_set_style:nn {border} {#1} },
+
+ Couleurs .code:n = { \__wordle_set_style:nn {colour} {#1} },
+ colours .code:n = { \__wordle_set_style:nn {colour} {#1} },
+
+ frames .code:n = { \__wordle_set_style:nn {frame} {#1} },
+ Cadres .code:n = { \__wordle_set_style:nn {frame} {#1} },
+ frames .default:n = true,
+ shapes .code:n = { \__wordle_set_style:nn {shape} {#1} },
+ Formes .code:n = { \__wordle_set_style:nn {shape} {#1} },
+
+ % text colour
+ text .code:n = { \__wordle_set_style:nn {text} {#1} },
+ CouleurLettres .code:n = { \__wordle_set_style:nn {text} {#1} },
+
+ % align letters in puzzle
+ align .code:n = {
+ \tl_set:Nn \l__wordle_align_tl {\vphantom{azertyuiopqsdfghjklmwxcvbnAZERTYUIOPQSDFGHJKLMWXCVBN}}
+ \tl_set:Nn \l__wordle_depth_tl {text~depth=0pt}
+ },
+ noalign .code:n = {
+ \tl_set:Nn \l__wordle_align_tl {}
+ \tl_set:Nn \l__wordle_depth_tl {}
+ },
+ nonalign .meta:n = { noalign },
+ align .initial:n = {true},
+
+ absent .tl_set:N = \l__wordle_absent_colour_tl,
+ absent~color .tl_set:N = \l__wordle_absent_colour_tl,
+ couleur~absent .tl_set:N = \l__wordle_absent_colour_tl,
+ absent~colour .tl_set:N = \l__wordle_absent_colour_tl,
+ bordure~absent .tl_set:N = \l__wordle_absent_border_tl,
+ absent~border .tl_set:N = \l__wordle_absent_border_tl,
+ absent~frame .tl_set:N = \l__wordle_absent_frame_tl,
+ cadre~absent .tl_set:N = \l__wordle_absent_frame_tl,
+ absent~frame .default:n = true,
+ absent~shape .tl_set:N = \l__wordle_absent_shape_tl,
+ forme~absent .tl_set:N = \l__wordle_absent_shape_tl,
+ absent~text .tl_set:N = \l__wordle_absent_text_tl,
+ coultxt~absent .tl_set:N = \l__wordle_absent_text_tl,
+
+ correct .tl_set:N = \l__wordle_correct_colour_tl,
+ correct~color .tl_set:N = \l__wordle_correct_colour_tl,
+ correct~colour .tl_set:N = \l__wordle_correct_colour_tl,
+ couleur~correct.tl_set:N = \l__wordle_correct_colour_tl,
+ correct~border .tl_set:N = \l__wordle_correct_border_tl,
+ bordure~correct.tl_set:N = \l__wordle_correct_border_tl,
+ correct~frame .tl_set:N = \l__wordle_correct_frame_tl,
+ cadre~correct .tl_set:N = \l__wordle_correct_frame_tl,
+ correct~frame .default:n = true,
+ correct~shape .tl_set:N = \l__wordle_correct_shape_tl,
+ forme~correct .tl_set:N = \l__wordle_correct_shape_tl,
+ correct~text .tl_set:N = \l__wordle_correct_text_tl,
+ coultxt~correct.tl_set:N = \l__wordle_correct_text_tl,
+
+ empty .tl_set:N = \l__wordle_empty_colour_tl,
+ couleur~vide .tl_set:N = \l__wordle_empty_colour_tl,
+ empty~color .tl_set:N = \l__wordle_empty_colour_tl,
+ empty~colour .tl_set:N = \l__wordle_empty_colour_tl,
+ empty~border .tl_set:N = \l__wordle_empty_border_tl,
+ bordure~vide .tl_set:N = \l__wordle_empty_border_tl,
+ empty~frame .tl_set:N = \l__wordle_empty_frame_tl,
+ cadre~vide .tl_set:N = \l__wordle_empty_frame_tl,
+ empty~frame .default:n = true,
+ empty~shape .tl_set:N = \l__wordle_empty_shape_tl,
+ forme~vide .tl_set:N = \l__wordle_empty_shape_tl,
+ empty~text .tl_set:N = \l__wordle_empty_text_tl,
+ coultxt~vide. tl_set:N = \l__wordle_empty_text_tl,
+
+ present .tl_set:N = \l__wordle_present_colour_tl,
+ couleur~present.tl_set:N = \l__wordle_present_colour_tl,
+ present~color .tl_set:N = \l__wordle_present_colour_tl,
+ present~colour .tl_set:N = \l__wordle_present_colour_tl,
+ present~border .tl_set:N = \l__wordle_present_border_tl,
+ bordure~present.tl_set:N = \l__wordle_present_border_tl,
+ present~frame .tl_set:N = \l__wordle_present_frame_tl,
+ cadre~present .tl_set:N = \l__wordle_present_frame_tl,
+ present~frame .default:n = true,
+ present~shape .tl_set:N = \l__wordle_present_shape_tl,
+ forme~present .tl_set:N = \l__wordle_present_shape_tl,
+ present~text .tl_set:N = \l__wordle_present_text_tl,
+ coultxt~present.tl_set:N = \l__wordle_present_text_tl,
+
+ % text font
+ font .tl_set:N = \l__wordle_font_tl,
+ Fonte .tl_set:N = \l__wordle_font_tl,
+ Police .tl_set:N = \l__wordle_font_tl,
+ font .initial:n = \Large\bfseries\sffamily,
+
+ % tile size
+ size .dim_set:N = \l__wordle_size_dim,
+ Taille .dim_set:N = \l__wordle_size_dim,
+ size .initial:n = 8mm,
+
+ % thickness of tile border
+ thickness .dim_set:N = \l__wordle_thickness_dim,
+ Epaisseur .dim_set:N = \l__wordle_thickness_dim,
+ Thick .code:n = {\dim_set:Nn \l__wordle_thickness_dim {#1mm}},
+ thickness .initial:n = 0.25mm,
+
+ % rounded-corner = #
+ rounded .dim_set:N = \l__wordle_rounded_dim,
+ Arrondi .dim_set:N = \l__wordle_rounded_dim,
+ rounded .default:n = 4pt,
+ Rounded .code:n = {\dim_set:Nn \l__wordle_rounded_dim {#1mm}},
+ rounded .initial:n = 1mm,
+
+ % separation between tiles
+ separation .dim_set:N = \l__wordle_sep_dim,
+ Separation .dim_set:N = \l__wordle_sep_dim,
+ separation .initial:n = 0.5mm,
+
+ % rescale tiles
+ scale .code:n = { \__wordle_rescale:n {#1} },
+ Echelle .code:n = { \__wordle_rescale:n {#1} },
+ scale .initial:n = 1,
+ Unit .code:n = { \__wordle_rescale:n {#1} },
+ Unite .code:n = { \__wordle_rescale:n {#1} },
+
+ % letter case
+ case~sensitive .bool_set:N = \l__wordle_case_sensitive_bool,
+ case~sensitive .default:n = true,
+ case~sensitive .initial:n = false,
+
+ % letter visibility
+ letters .code:n = {\cs_set_eq:NN \__wordle_letter:n \__wordle_letter_natural:n},
+ Lettres .code:n = {\cs_set_eq:NN \__wordle_letter:n \__wordle_letter_natural:n},
+ noletters .code:n = {\cs_set_eq:NN \__wordle_letter:n \__wordle_letter_none:n},
+ NonLettres .code:n = {\cs_set_eq:NN \__wordle_letter:n \__wordle_letter_none:n},
+ letters .initial:n = true,
+
+ % forced letter case
+ natural~case .code:n = {
+ \cs_set_eq:NN \__wordle_letter:n \__wordle_letter_natural:n
+ },
+ lower~case .code:n = {
+ \cs_set_eq:NN \__wordle_letter:n \__wordle_letter_lower:n
+ \bool_set_false:N \l__wordle_case_sensitive_bool
+ },
+ upper~case .code:n = {
+ \cs_set_eq:NN \__wordle_letter:n \__wordle_letter_upper:n
+ \bool_set_false:N \l__wordle_case_sensitive_bool
+ },
+
+ % puzzle specs: rows and columns
+ rows .int_set:N = \l__wordle_rows_int,
+ Lignes .int_set:N = \l__wordle_rows_int,
+ rows .initial:n = 0,
+
+ strict .bool_set:N = \l__wordle_strict_bool,
+ Strict .bool_set:N = \l__wordle_strict_bool,
+ strict .default:n = true,
+ strict .initial:n = false,
+
+ % tikz settings
+ tile~style .tl_set:N = \l__wordle_tile_style_tl,
+ Style~case .tl_set:N = \l__wordle_tile_style_tl,
+ tile~style .initial:n = ,
+
+ name .tl_set:N = \l__wordle_name_tl,
+ Nom .tl_set:N = \l__wordle_name_tl,
+ name .initial:n = W,
+ tikz .tl_set:N = \l__wordle_tikz_tl,
+ tikz .initial:n = ,
+}
+
+% user settings
+\NewDocumentCommand\WordleSetup{ m }{ \keys_set:nn { wordle } {#1} }
+\NewDocumentCommand\ParamsSutom{ m }{ \keys_set:nn { wordle } {#1} }
+
+% ----------------------------------------------------------------
+% Define TikZ Wordle styles for the letters. Using tikz styles both
+% ensures consistency and has the added advantage of taking care of
+% expansion issues with the tile settings
+\tikzset{/Wordle/.is~family, /Wordle,
+ tile/.style = {
+ /tikz, % change back to using tikz keys
+ inner~sep = \l__wordle_sep_dim,
+ minimum~height = \l__wordle_size_dim,
+ minimum~size = \l__wordle_size_dim,
+ rounded~corners= \l__wordle_rounded_dim,
+ line~width = \l__wordle_thickness_dim,
+ font = \l__wordle_font_tl,
+ % scale = \fp_to_decimal:N \l__wordle_scale_fp,
+ text = \tl_use:c {l__wordle_#1_text_tl},
+ fill = \tl_use:c {l__wordle_#1_colour_tl},
+ shape = \tl_use:c {l__wordle_#1_shape_tl},
+ },
+ frame/.style = {
+ /Wordle/tile=#1,
+ /tikz, % change back to using tikz keys
+ draw = \tl_use:c{l__wordle_#1_border_tl},
+ minimum~size = {\l__wordle_size_dim+\l__wordle_thickness_dim},
+ fill = \tl_use:c {l__wordle_#1_colour_tl},
+ shape = rectangle,
+ },
}
-\cs_new:Npn \l__wordle_boite_lettre_rond:nn #1#2#3#4
+% apply a TikZ setting
+\cs_new_nopar:Npn \__wordle_tikzset:n #1 { \exp_args:Nx \tikzset{#1} }
+
+% ----------------------------------------------------------------
+% preprocessing of the wordle letters
+\cs_new_nopar:Npn \__wordle_letter_none:n #1 {}
+\cs_new_nopar:Npn \__wordle_letter_natural:n #1 {#1}
+\cs_new_nopar:Npn \__wordle_letter_lower:n #1 { \str_lowercase:n {#1} }
+\cs_new_nopar:Npn \__wordle_letter_upper:n #1 { \str_uppercase:n {#1} }
+
+% by default wordle letters are not processed
+\cs_set_eq:NN \__wordle_letter:n \__wordle_letter_natural:n
+
+% Print a letter in a box as a node. There is slightly different behaviour
+% depending on whether the tile is frames or we are in strict mode. The way
+% that the entry is printed depends is controlled by \__wordle_letter:n.
+\cs_new_nopar:Npn \wordle__boxed_letter:nn #1#2
{
- \IfStrEq{\SutomStyle}{default}
- {%
- \ifboolKV[WORDLE]{Letters}%
- {%
- \tikz \draw[rounded~corners=\fpeval{#4*\SutomUnit}cm,line~width=\SutomWidth~mm,draw=\SutomBorder,fill=#2] (0,0) rectangle++ (\SutomUnit,\SutomUnit) node[midway,font=\SutomFonte,text=\SutomFonteColor,scale=\SutomUnit] {#3} ;
- }%
- {%
- \tikz \draw[rounded~corners=\fpeval{#4*\SutomUnit}cm,line~width=\SutomWidth~mm,draw=\SutomBorder,fill=#2] (0,0) rectangle++ (\SutomUnit,\SutomUnit) ;
- }%
- }%
- {%
- \tikz {\draw[rounded~corners=\fpeval{#4*\SutomUnit}cm,draw=\SutomBorder,line~width=\SutomWidth~mm,fill=#1] (0,0) rectangle++ (\SutomUnit,\SutomUnit) ;
- \ifboolKV[WORDLE]{Letters}%
- {%
- \draw[line~width=\SutomWidth~mm,draw=#2,fill=#2] ({0.5*\SutomUnit},{0.5*\SutomUnit}) circle[radius=\fpeval{0.5*\SutomUnit-0.1*\SutomWidth}] node[font=\SutomFonte,text=\SutomFonteColor,scale=\SutomUnit] {#3} ;
- }%
- {%
- \draw[line~width=\SutomWidth~mm,draw=#2,fill=#2] ({0.5*\SutomUnit},{0.5*\SutomUnit}) circle[radius=\fpeval{0.5*\SutomUnit-0.1*\SutomWidth}];
- }%
- }%
- }%
+ % determine the node name, which takes the form <W>-<row>-<col>
+ \tl_set:No \l_tmpa_tl
+ {
+ \l__wordle_name_tl-\int_eval:n{1+\l__wordle_row_index_int}-\int_use:N\l__wordle_letter_index_int
+ }
+
+ % the construction of the node depends on whether the tile is framed
+ \tl_if_eq:cnTF {l__wordle_#1_frame_tl} {true}
+ {
+ % draw the frame
+ \node[/Wordle/frame=absent] % frame use the absent fill colour
+ at ({\l__wordle_letter_index_int*\l__wordle_grid_dim},{-\l__wordle_row_index_int*\l__wordle_grid_dim}){};
+ % draw the tile
+ \node[/Wordle/tile=#1]
+ (\l_tmpa_tl) at ({\l__wordle_letter_index_int*\l__wordle_grid_dim},
+ {-\l__wordle_row_index_int*\l__wordle_grid_dim})
+ { \l__wordle_align_tl\__wordle_letter:n {#2} };
+ }
+ {
+ % draw the tile, with a border
+ \node[/Wordle/frame=#1, /Wordle/tile=#1]
+ (\l_tmpa_tl) at ({\l__wordle_letter_index_int*\l__wordle_grid_dim},
+ {-\l__wordle_row_index_int*\l__wordle_grid_dim})
+ { \l__wordle_align_tl\__wordle_letter:n {#2} };
+ }
+
+ % if strict then put a slash through any extra letters
+ \bool_if:NT \l__wordle_strict_bool
+ {
+ \int_compare:nNnT {\l__wordle_letter_index_int} > {\seq_count:N \l__wordle_answer_seq }
+ {
+ \draw[red,ultra~thick] (\tl_use:N\l_tmpa_tl.south~west)--(\tl_use:N\l_tmpa_tl.north~east);
+ }
+ }
}
-\seq_new:N \l_wordle_seq % the answer
-\prop_new:N \l_wordle_prop % count letters in wordle
-\seq_new:N \l_words_seq % list of all words
-\prop_new:N \l_word_prop % count letters in word
-\int_new:N \l_letter_int % index of current letter in word
+\seq_new:N \l__wordle_answer_seq % the answer
+\prop_new:N \l__wordle_answer_counts_prop % count letters in wordle
+\seq_new:N \l__wordle_solution_seq % list of all words
+\prop_new:N \l__wordle_word_counts_prop % count letters in word
+\int_new:N \l__wordle_letter_index_int % index of current letter in word
+\int_new:N \l__wordle_row_index_int % TikZ row index in solution
-% a conditional for nonnegative prop counter in \l_word_prop
-\prg_new_protected_conditional:Npnn \if_wordle_letter_nonnegative:n #1 {TF}
+% a conditional for non-negative prop counter in \l__wordle_word_counts_prop
+\prg_new_protected_conditional:Npnn \if__wordle_letter_nonnegative:n #1 {TF}
{
- \prop_if_in:NnTF \l_word_prop {#1}
- { % letter in in prop
- \prop_get:NnN \l_word_prop {#1} \l_tmpa_tl
- \int_compare:nNnTF {\l_tmpa_tl} < {0}
- {\prg_return_false:} {\prg_return_true:}
- }
- {\prg_return_false:}
+ \prop_if_in:NnTF \l__wordle_word_counts_prop {#1}
+ { % letter in in prop
+ \prop_get:NnN \l__wordle_word_counts_prop {#1} \l_tmpa_tl
+ \int_compare:nNnTF {\l_tmpa_tl} < {0}
+ {\prg_return_false:} {\prg_return_true:}
+ }
+ {\prg_return_false:}
}
+\cs_generate_variant:Nn \str_if_eq:nVTF {xVTF}
+
% a conditional for comparing letters
-\prg_new_protected_conditional:Npnn \if_wordle_letters_agree:n #1 {T, TF}
+\prg_new_protected_conditional:Npnn \if__wordle_letters_agree:n #1 {T, TF}
{
- \str_set:Nx \l_tmpa_str {\seq_item:Nn \l_wordle_seq {\l_letter_int}}
- \str_if_eq:nVTF {#1} \l_tmpa_str {\prg_return_true:} {\prg_return_false:}
+ \str_set:Nx \l_tmpa_str
+ {\seq_item:Nn \l__wordle_answer_seq {\l__wordle_letter_index_int}}
+
+
+ \bool_if:NTF \l__wordle_case_sensitive_bool
+ {\str_if_eq:nVTF {#1} \l_tmpa_str {\prg_return_true:} {\prg_return_false:}}
+ {\str_if_eq:xVTF {\str_uppercase:n{#1}} \l_tmpa_str {\prg_return_true:} {\prg_return_false:}}
}
% add #3 to <prop=#1>.#2
-\cs_new_protected:Npn \wordle__add_to_prop_counter:Nnn #1#2#3
+\cs_new_nopar:Npn \wordle__add_to_prop_counter:Nnn #1#2#3
{
- \prop_put_if_new:Nnn #1 {#2} {0}
- \prop_pop:NnN #1 {#2} \l_tmp_a
- \prop_put:Nnx #1 {#2} {\int_eval:n {#3+\l_tmp_a}}
+ \prop_put_if_new:Nnn #1 {#2} {0}
+ \prop_pop:NnN #1 {#2} \l_tmp_a
+ \prop_put:Nnx #1 {#2} {\int_eval:n {#3+\l_tmp_a}}
}
-% make \l_wordle_prop<x> = #x's in wordle_seq
-\cs_new_protected:Npn \count_letters_in_wordle:n #1
+% make \l__wordle_answer_counts_prop<x> = #x's in wordle_seq
+\cs_new_nopar:Npn \wordle__count_letters_in_answer:n #1
{
- \wordle__add_to_prop_counter:Nnn \l_wordle_prop {#1} {1}%
+ \wordle__add_to_prop_counter:Nnn \l__wordle_answer_counts_prop {#1} {1}
}
% first run: subtract correct matches from letter counts
-\cs_new:Npn \count_letters_in_word:n #1
+\cs_new_nopar:Npn \wordle__count_letters_in_word:n #1
{
- \int_incr:N \l_letter_int
- \if_wordle_letters_agree:nT {#1}
- { \wordle__add_to_prop_counter:Nnn \l_word_prop {#1} {-1} }%
+ \int_incr:N \l__wordle_letter_index_int
+ \if__wordle_letters_agree:nT {#1}
+ { \wordle__add_to_prop_counter:Nnn \l__wordle_word_counts_prop {#1} {-1} }
}
-%commande [fr]
% on the second run we print a coloured wordle word
-\cs_new:Npn \write_letters_in_word:n #1
+\cs_new_nopar:Npn \wordle__write_letters_in_word:n #1
{
- \int_incr:N \l_letter_int
- \if_wordle_letters_agree:nTF {#1}
- { \l__sutom_boite_lettre:nn {\SutomBienPlacee}{#1}{\SutomRounded} }
- {
- % subtract 1 from the prop counter
- \wordle__add_to_prop_counter:Nnn \l_word_prop {#1} {-1}
- % if the counter is non-negative this is a pseudo match
- \if_wordle_letter_nonnegative:nTF {#1}
- { \l__sutom_boite_lettre_rond:nn {\SutomCoulFond}{\SutomCoulMalPlacee}{#1}{\SutomRounded} }
- { \l__sutom_boite_lettre:nn {\SutomCoulFond}{#1}{\SutomRounded} }
- }%
+ \int_incr:N \l__wordle_letter_index_int
+ \if__wordle_letters_agree:nTF {#1}
+ { \wordle__boxed_letter:nn {correct} {#1} }
+ {
+ % subtract 1 from the prop counter
+ \wordle__add_to_prop_counter:Nnn \l__wordle_word_counts_prop {#1} {-1}
+ % if the counter is non-negative this is a pseudo match
+ \if__wordle_letter_nonnegative:nTF {#1}
+ { \wordle__boxed_letter:nn {present} {#1} }
+ { \wordle__boxed_letter:nn {absent} {#1} }
+ }
}
-%commande [en]
-% on the second run we print a coloured wordle word
-\cs_new:Npn \write_letters_in_wordle:n #1
+\cs_generate_variant:Nn \seq_set_split:Nnn {Nnx}
+\cs_generate_variant:Nn \cs_set_nopar:Nn {NV}
+
+% typeset the word "#1", colouring letters using the wordle convention
+\cs_new_nopar:Npn \wordle__mark_word:n #1
{
- \int_incr:N \l_letter_int
- \if_wordle_letters_agree:nTF {#1}
- { \l__wordle_boite_lettre:nn {\SutomBienPlacee}{#1}{\SutomRounded} }
- {
- % subtract 1 from the prop counter
- \wordle__add_to_prop_counter:Nnn \l_word_prop {#1} {-1}
- % if the counter is non-negative this is a pseudo match
- \if_wordle_letter_nonnegative:nTF {#1}
- { \l__wordle_boite_lettre_rond:nn {\SutomCoulFond}{\SutomCoulMalPlacee}{#1}{\SutomRounded} }
- { \l__wordle_boite_lettre:nn {\SutomCoulFond}{#1}{\SutomRounded} }
- }%
-}
+ \str_if_eq:nnTF {#1} {*}
+ {
+ \cs_set_eq:NN \wordle__process_word:n \wordle__empty_word:n
+ }
+ {
+ \prop_set_eq:NN \l__wordle_word_counts_prop \l__wordle_answer_counts_prop
+ \tl_map_function:nN {#1} \wordle__count_letters_in_word:n
+ \int_zero:N \l__wordle_letter_index_int
+ \tl_map_function:nN {#1} \wordle__write_letters_in_word:n
-%clés [fr]
-\defKV[SUTOM]{%
- Couleurs=\def\SutomCouleurs{#1},%
- Arrondi=\def\SutomRounded{#1},%
- Unite=\def\SutomUnit{#1},%
- Police=\def\SutomFonte{#1},%
- CouleurLettres=\def\SutomFonteColor{#1},%
- Style=\def\SutomStyle{#1},%
- Epaisseur=\def\SutomWidth{#1},%
- CouleurBordure=\def\SutomBorder{#1}
-}
+ % if strict then check lengths
+ \bool_if:NT \l__wordle_strict_bool
+ {
+ \int_while_do:nNnn {\l__wordle_letter_index_int} < {\seq_count:N\l__wordle_answer_seq}
+ {
+ \int_incr:N \l__wordle_letter_index_int
+ \wordle__boxed_letter:nn {absent} {\c_space_tl}
+ }
+ }
-\setKVdefault[SUTOM]{%
- Couleurs={cyan!75!black,yellow,red},%
- Arrondi=0.1,%
- Unite=1,%
- Police=\LARGE\bfseries\sffamily,%
- CouleurLettres=white,%
- Lettres=true,%
- Style=rond,%
- Epaisseur=0.25,%
- CouleurBordure=white
+ % increment the row index
+ \int_incr:N \l__wordle_row_index_int
+ }
}
-%environnement [fr]
-\NewDocumentEnvironment{GrilleSutom}{ O{} m b }%
-{%
- \restoreKV[SUTOM]%
- \setKV[SUTOM]{#1}%
- \StrBefore{\SutomCouleurs}{,}[\SutomCoulFond]%
- \StrBetween[1,2]{\SutomCouleurs}{,}{,}[\SutomCoulMalPlacee]%
- \StrBehind[2]{\SutomCouleurs}{,}[\SutomBienPlacee]%
- \StrLen{#2}[\SutomNbLettres]%
- \def\SutomLarg{\fpeval{1.01*\SutomUnit*\SutomNbLettres}}%
- \begin{minipage}{\SutomLarg~cm}
- \lineskip=0pt%
- \parindent=0pt%
- % split the answer into letters
- \seq_set_split:Nnn \l_wordle_seq {} {#2}
- % we need to count the number of times each letter appears in \l_wordle_seq
- \prop_clear:N \l_wordle_prop
- \tl_map_function:nN {#2} \count_letters_in_wordle:n
- % split the solution into words
- \regex_split:nnN {\s} {#3} \l_words_seq
- % process the words
- \seq_map_inline:Nn \l_words_seq
- {
- \int_zero:N \l_letter_int
- \prop_set_eq:NN \l_word_prop \l_wordle_prop
- \tl_map_function:nN {##1} \count_letters_in_word:n
- \int_zero:N \l_letter_int
- \tl_map_function:nN {##1} \write_letters_in_word:n
- \par
- }
-}%
-{%
- \end{minipage}%
+% typeset the word "#1" by putting boxes around each letter
+\cs_new_nopar:Npn \wordle__empty_word:n #1
+{
+ \tl_map_inline:nn {#1}
+ {
+ \int_incr:N \l__wordle_letter_index_int
+ \wordle__boxed_letter:nn {empty} {##1}
+ }
+ % if strict then check lengths
+ \bool_if:NT \l__wordle_strict_bool
+ {
+ \int_while_do:nNnn {\l__wordle_ltter_index_int} < {\seq_count:N\l__wordle_answer_seq}
+ {
+ \int_incr:N \l__wordle_letter_index_int
+ \wordle__boxed_letter:nn {empty} {\c_space_tl}
+ }
+ }
+ \int_incr:N \l__wordle_row_index_int
}
-%clés [en]
-\definecolor{WordleBack}{HTML}{797D7F}
-\definecolor{WordleBad}{HTML}{CAB557}
-\definecolor{WordleGood}{HTML}{6AAB64}
-
-\defKV[WORDLE]{%
- Colors=\def\SutomCouleurs{#1},%
- Rounded=\def\SutomRounded{#1},%
- Unit=\def\SutomUnit{#1},%
- Fonte=\def\SutomFonte{#1},%
- ColorLetters=\def\SutomFonteColor{#1},%
- Style=\def\SutomStyle{#1},%
- Thickness=\def\SutomWidth{#1},%
- BorderColor=\def\SutomBorder{#1}
-}
+\cs_set_eq:NN \wordle__process_word:n \wordle__mark_word:n
-\setKVdefault[WORDLE]{%
- Colors={WordleBack,WordleBad,WordleGood},%
- Rounded=0.1,%
- Unit=1,%
- Fonte=\LARGE\bfseries\sffamily,%
- CouleurLettres=white,%
- Letters=true,%
- Style=default,%
- Thick=0.25,%
- BorderColor=white
-}
+\NewDocumentEnvironment{wordle}{ O{} m O{} b }
+{
+ % apply wordle environment options
+ \WordleSetup{#1}
+ \begin{tikzpicture}
-%environnement [en]
-\NewDocumentEnvironment{WordleGrid}{ O{} m b }
-{%
- \restoreKV[WORDLE]%
- \setKV[WORDLE]{#1}%
- \StrBefore{\SutomCouleurs}{,}[\SutomCoulFond]%
- \StrBetween[1,2]{\SutomCouleurs}{,}{,}[\SutomCoulMalPlacee]%
- \StrBehind[2]{\SutomCouleurs}{,}[\SutomBienPlacee]%
- \StrLen{#2}[\SutomNbLettres]%
- \def\SutomLarg{\fpeval{1.01*\SutomUnit*\SutomNbLettres}}%
- \begin{minipage}{\SutomLarg~cm}
- \parindent=0pt
- \lineskip=0pt
- % split the answer into letters
- \seq_set_split:Nnn \l_wordle_seq {} {#2}
- % we need to count the number of times each letter appears in \l_wordle_seq
- \prop_clear:N \l_wordle_prop
- \tl_map_function:nN {#2} \count_letters_in_wordle:n
- % split the solution into words
- \regex_split:nnN {\s} {#3} \l_words_seq
- % process the words
- \seq_map_inline:Nn \l_words_seq
- {
- \int_zero:N \l_letter_int
- \prop_set_eq:NN \l_word_prop \l_wordle_prop
- \tl_map_function:nN {##1} \count_letters_in_word:n
- \int_zero:N \l_letter_int
- \tl_map_function:nN {##1} \write_letters_in_wordle:n
- \par
- }
-}%
-{%
- \end{minipage}%
-}
+ % apply any tikz settings -- we need to some expansion trickery to do this
+ \__wordle_tikzset:n {\l__wordle_tikz_tl}
+ \__wordle_tikzset:n {/Wordle/tile/.append~style={\l__wordle_depth_tl,\l__wordle_tile_style_tl}}
+
+ % set grid dimension = box size + separation
+ \dim_set:Nn \l__wordle_grid_dim {\l__wordle_size_dim+\l__wordle_sep_dim}
+
+ % split the answer into letters
+ \bool_if:NTF \l__wordle_case_sensitive_bool
+ { \seq_set_split:Nnn \l__wordle_answer_seq {} {#2} }
+ { \seq_set_split:Nnx \l__wordle_answer_seq {} {\str_uppercase:n {#2}} }
+
+ % count the number of times letters appear in \l__wordle_answer_seq
+ \prop_clear:N \l__wordle_answer_counts_prop
+ \tl_map_function:nN {#2} \wordle__count_letters_in_answer:n
+
+ % split the solution into words
+ \regex_split:nnN {\s} {#4} \l__wordle_solution_seq
+
+ % process the words
+ \int_zero:N \l__wordle_row_index_int
+ \seq_map_inline:Nn \l__wordle_solution_seq
+ {
+ \int_zero:N \l__wordle_letter_index_int
+ \wordle__process_word:n {##1}
+ }
+
+ % if required, add extra required blank rows
+ \int_while_do:nNnn {\l__wordle_row_index_int} < {\l__wordle_rows_int}
+ {
+ \int_zero:N \l__wordle_letter_index_int
+ \int_while_do:nNnn {\l__wordle_letter_index_int} < {\seq_count:N\l__wordle_answer_seq}
+ {
+ \int_incr:N \l__wordle_letter_index_int
+ \wordle__boxed_letter:nn {empty} {\c_space_tl}
+ }
+ \int_incr:N \l__wordle_row_index_int
+ }
+
+ % finally, execute the optional TikZ commands
+ #3
+
+ \end{tikzpicture}
+}{}
+
+% wrapper environment for Gridwordle
+\NewDocumentEnvironment{GridWordle}{ O{} m O{} b }
+ {
+ \begin{wordle}[#1]{#2}[#3]#4]\end{wordle}
+ }
+ {}
+
+% wrapper environment for GrilleSutom
+\NewDocumentEnvironment{GrilleSutom}{ O{} m O{} b }
+ {
+ \begin{wordle}[style=sutom,#1]{#2}[#3]#4\end{wordle}
+ }
+ {}
-\ExplSyntaxOff
+\endinput
-\endinput \ No newline at end of file
+% ----------------------------------------------------------------
+% CHANGE LOG
+%
+% Version 0.3 - \wordle@release
+% - merged AM & CP packages, adding styles and streamlining options, french keys
+%
+% Version 0.2 - \wordle@release
+% - added documentation and cleaned some of the options
+%
+% Version 0.1 - 2022-10-01
+% - initial version
+%
+% ----------------------------------------------------------------
+%
+% Copyright (C) 2022-3 by Andrew Mathas <andrew.mathas@gmail.com>
+% and Cédric Pierquet cpierquet@outlook.fr
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License (LPPL), either
+% version 1.3c of this license or (at your option) any later
+% version. The latest version of this license is in the file:
+%
+% http://www.latex-project.org/lppl.txt
+%
+% This work is "maintained" (as per LPPL maintenance status) by
+% Andrew Mathas.
+%
+% This work consists of the files:
+% wordle.sty
+% wordle.tex
diff --git a/Master/texmf-dist/tex/latex/writeongrid/WriteOnGrid.sty b/Master/texmf-dist/tex/latex/writeongrid/WriteOnGrid.sty
index e2673d3c581..3d462b8a33e 100644
--- a/Master/texmf-dist/tex/latex/writeongrid/WriteOnGrid.sty
+++ b/Master/texmf-dist/tex/latex/writeongrid/WriteOnGrid.sty
@@ -2,7 +2,8 @@
% licence : Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{WriteOnGrid}[2024/04/12 v0.1.6 package to write on grid lines]
+\ProvidesPackage{WriteOnGrid}[2024/09/01 v0.1.7 package to write on grid lines]
+% 0.1.7 Option pour régler la marge pour les PleinePageCinqCinq
% 0.1.6 Commande pour calculer le nombre de lignes à insérer en fin de page / options Auto
% 0.1.5 Choix de la réglure pour le seyes (en pretest) + amélioration de la gestion des paragraphes
% 0.1.4 Suppression des options de xcolor (définition manuelle des couleurs)
@@ -564,16 +565,21 @@
}
%------page entière 5x5
+%les marges doivent valoir MargeH=0.2+k*0.5 et MargeV=0.3+k'*0.5
\defKV[CxCFull]{%
Couleur=\xdef\CCFullCoul{#1},%
CouleurMarge=\xdef\CCFullCoulM{#1},%
- FormatPapier=\xdef\CCFullFormatPap{#1}
+ FormatPapier=\xdef\CCFullFormatPap{#1},%
+ MargeG=\xdef\CCFullMargeG{#1},%
+ MargeH=\xdef\CCFullMargeH{#1}
}
\setKVdefault[CxCFull]{%
Couleur=lightgray!50,%
CouleurMarge=gray,%
NumLignes=false,%
- FormatPapier=A4
+ FormatPapier=A4,%
+ MargeG=auto,%
+ MargeH=auto
}
\NewDocumentEnvironment{PleinePageCinqCinq}{ O{} }%semble OK ^^
@@ -581,13 +587,49 @@
\useKVdefault[CxCFull]%
\setKV[CxCFull]{#1}%
\IfEq{\CCFullFormatPap}{A4}%
- {\xdef\CCFullHautPap{29.7}\xdef\CCFullLargPap{21}\xdef\CCFullMargeG{1.7}\xdef\CCFullMargeH{1.3}}%
+ {%
+ \xdef\CCFullHautPap{29.7}\xdef\CCFullLargPap{21}%
+ \IfEq{\CCFullMargeG}{auto}%
+ {%
+ \xdef\CCFullMargeG{1.7}%
+ }%
+ {}%
+ \IfEq{\CCFullMargeH}{auto}%
+ {%
+ \xdef\CCFullMargeH{1.3}%
+ }%
+ {}%
+ }%
{}%
\IfEq{\CCFullFormatPap}{A5}%
- {\xdef\CCFullHautPap{21}\xdef\CCFullLargPap{14.8}\xdef\CCFullMargeG{1.2}\xdef\CCFullMargeH{0.8}}%
+ {%
+ \xdef\CCFullHautPap{21}\xdef\CCFullLargPap{14.8}%
+ \IfEq{\CCFullMargeG}{auto}%
+ {%
+ \xdef\CCFullMargeG{1.2}%
+ }%
+ {}%
+ \IfEq{\CCFullMargeH}{auto}%
+ {%
+ \xdef\CCFullMargeH{0.8}%
+ }%
+ {}%
+ }%
{}%
\IfSubStr{\CCFullFormatPap}{x}%
- {\StrCut{\CCFullFormatPap}{x}{\CCFullLargPap}{\CCFullHautPap}\xdef\CCFullMargeG{1.7}\xdef\CCFullMargeH{1.3}}%
+ {%
+ \StrCut{\CCFullFormatPap}{x}{\CCFullLargPap}{\CCFullHautPap}%
+ \IfEq{\CCFullMargeG}{auto}%
+ {%
+ \xdef\CCFullMargeG{1.7}%
+ }%
+ {}%
+ \IfEq{\CCFullMargeH}{auto}%
+ {%
+ \xdef\CCFullMargeH{1.3}%
+ }%
+ {}%
+ }%
{}%
%calcul du nombre de lignes /colonnes ?
\xdef\CCFullNbLign{\fpeval{round(\CCFullHautPap/(0.5),0)}}%
diff --git a/Master/texmf-dist/tex/latex/xcharter-math/xcharter-otf.sty b/Master/texmf-dist/tex/latex/xcharter-math/xcharter-otf.sty
index 98a1b1b2f59..12f4ecab35d 100644
--- a/Master/texmf-dist/tex/latex/xcharter-math/xcharter-otf.sty
+++ b/Master/texmf-dist/tex/latex/xcharter-math/xcharter-otf.sty
@@ -1,6 +1,6 @@
\NeedsTeXFormat{LaTeX2e}[2022/06/01]
-\def\fileversion{0.62}
-\def\filedate{2024-03-01}
+\def\fileversion{0.63}
+\def\filedate{2024-07-10}
\ProvidesPackage{xcharter-otf}[\filedate\space\fileversion]
% Ensure luatex or xetex engine
diff --git a/Master/texmf-dist/tex/latex/xcolor/svgnam.def b/Master/texmf-dist/tex/latex/xcolor/svgnam.def
index 8d0a156f59a..00b7bace1db 100644
--- a/Master/texmf-dist/tex/latex/xcolor/svgnam.def
+++ b/Master/texmf-dist/tex/latex/xcolor/svgnam.def
@@ -22,11 +22,11 @@
%% in the same archive or directory.)
%%
\ProvidesFile{svgnam.def}
- [2023/11/15 v3.01 Predefined colors according to SVG 1.1 (UK)]
+ [2024/09/29 v3.02 Predefined colors according to SVG 1.1 (UK)]
%%
%% ----------------------------------------------------------------
%% Copyright (C) 2003-2021 by Dr. Uwe Kern <xcolor at ukern dot de>
-%% 2021-2023 LaTeX Project https://github.com/latex3/xcolor/issues
+%% 2021-2024 LaTeX Project https://github.com/latex3/xcolor/issues
%% ----------------------------------------------------------------
%%
diff --git a/Master/texmf-dist/tex/latex/xcolor/x11nam.def b/Master/texmf-dist/tex/latex/xcolor/x11nam.def
index 8b845036513..7808279d86a 100644
--- a/Master/texmf-dist/tex/latex/xcolor/x11nam.def
+++ b/Master/texmf-dist/tex/latex/xcolor/x11nam.def
@@ -22,11 +22,11 @@
%% in the same archive or directory.)
%%
\ProvidesFile{x11nam.def}
- [2023/11/15 v3.01 Predefined colors according to Unix/X11 (UK)]
+ [2024/09/29 v3.02 Predefined colors according to Unix/X11 (UK)]
%%
%% ----------------------------------------------------------------
%% Copyright (C) 2003-2021 by Dr. Uwe Kern <xcolor at ukern dot de>
-%% 2021-2023 LaTeX Project https://github.com/latex3/xcolor/issues
+%% 2021-2024 LaTeX Project https://github.com/latex3/xcolor/issues
%% ----------------------------------------------------------------
%%
diff --git a/Master/texmf-dist/tex/latex/xcolor/xcolor.sty b/Master/texmf-dist/tex/latex/xcolor/xcolor.sty
index 120e3c0b6a4..37e806d2c05 100644
--- a/Master/texmf-dist/tex/latex/xcolor/xcolor.sty
+++ b/Master/texmf-dist/tex/latex/xcolor/xcolor.sty
@@ -22,11 +22,11 @@
%% in the same archive or directory.)
%%
\ProvidesPackage{xcolor}
- [2023/11/15 v3.01 LaTeX color extensions (UK)]
+ [2024/09/29 v3.02 LaTeX color extensions (UK)]
%%
%% ----------------------------------------------------------------
%% Copyright (C) 2003-2021 by Dr. Uwe Kern <xcolor at ukern dot de>
-%% 2021-2023 LaTeX Project https://github.com/latex3/xcolor/issues
+%% 2021-2024 LaTeX Project https://github.com/latex3/xcolor/issues
%% ----------------------------------------------------------------
%%
%% Please send error reports and suggestions for
@@ -244,7 +244,7 @@
{
,usenames .code =
{\PackageWarning{xcolor}{Package option `usenames' is obsolete and ignored}}
- ,usename .usage = preamble
+ ,usenames .usage = preamble
,hyperref .code =
{\PackageWarning{xcolor}{Package option `hyperref' is obsolete and ignored}}
,hyperref .usage = preamble
@@ -262,7 +262,7 @@
\ExplSyntaxOff
\InputIfFileExists{color.cfg}{}{}
\let\ExecuteOptions\XC@ExecuteOptions
-\ProcessKeyOptions
+\ProcessKeyOptions\relax
\edef\Gin@driver{\Gin@driver}
\if!\Gin@driver!
\PackageError{xcolor}
@@ -574,15 +574,19 @@
\fi
\fi \@secondoftwo}}
\def\XC@getmod#1/#2/#3/#4/#5/#6/#7/#8/#9\XC@@
- {\XC@g@tm@d0#1::\XC@@ \XC@getm@d1{#2}\XC@getm@d2{#3}%
+ {\def\XC@dflt@@mod{#1}%
+ \XC@g@tm@d0#1::\XC@@ \XC@getm@d1{#2}\XC@getm@d2{#3}%
\XC@getm@d3{#4}\XC@getm@d4{#5}\XC@getm@d5{#6}\XC@getm@d6{#7}%
- \XC@getm@d7{#8}\def\XC@@pos{0}\def\@@mod{#1}\@gobble\@nnil}%
+ \XC@getm@d7{#8}\def\XC@@pos{0}\let\@@mod\XC@dflt@@mod\@gobble\@nnil}%
\def\XC@getm@d#1#2%
{\edef\XC@@pos{#2}\XC@sdef\@@mod{\XC@tgt@mod\XC@@pos}%
\ifx\XC@@pos\@@mod\def\XC@@pos{#1}\expandafter\remove@to@nnil\fi}%
\def\XC@g@tm@d#1#2:#3:#4\XC@@
{\@ifxempty{#3}{\let\@@Mod\XC@mod@ignore\XC@getm@d0{#2}}%
- {\def\@@Mod{#2}\XC@getm@d0{#3}}}%
+ {\def\@@Mod{#2}%
+ \def\XC@tgt@mod##1{#2}%
+ \def\XC@dflt@@mod{#3}%
+ \XC@getm@d0{#3}}}%
\def\XC@getclr#1/#2/#3/#4/#5/#6/#7/#8/#9\XC@@
{\ifcase\XC@@pos\space #1\or#2\or#3\or#4\or#5\or#6\or#7\or#8\fi}
\newif\ifXC@@getmod \XC@@getmodtrue
@@ -1108,11 +1112,6 @@
\def\@@arg{\textbf{color}& }\let\@@clr\@empty\@testc@lor}%
{\endtabular\ignorespacesafterend}
\def\color@setgroup{\begingroup\set@color}
-\let\color@begingroup\begingroup
-\def\color@endgroup{\endgraf\endgroup}
-\def\color@hbox{\hbox\bgroup\color@begingroup}
-\def\color@vbox{\vbox\bgroup\color@begingroup}
-\def\color@endbox{\color@endgroup\egroup}
\def\convertcolorspec#1#2#3#4%
{\begingroup
\XC@sdef\sm{#1}\XC@sdef\tm{#3}\edef\@@tmp{#2}%
diff --git a/Master/texmf-dist/tex/latex/xindex/xindex.sty b/Master/texmf-dist/tex/latex/xindex/xindex.sty
index 43cd71a3247..143e36b4317 100644
--- a/Master/texmf-dist/tex/latex/xindex/xindex.sty
+++ b/Master/texmf-dist/tex/latex/xindex/xindex.sty
@@ -13,7 +13,7 @@
%
%
% -------------------------------------
-\ProvidesPackage{xindex}[2024/05/16 v. 0.60 write into an idx file (hv)]
+\ProvidesPackage{xindex}[2024/05/16 v. 0.61 write into an idx file (hv)]
%
\RequirePackage{xkeyval}
diff --git a/Master/texmf-dist/tex/latex/xreview/xreview.sty b/Master/texmf-dist/tex/latex/xreview/xreview.sty
new file mode 100644
index 00000000000..a6d2501eed1
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/xreview/xreview.sty
@@ -0,0 +1,135 @@
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{xreview}[2024/08/29 Reviewing LaTeX documents made easy]
+
+\RequirePackage{xcolor}
+\RequirePackage[normalem]{ulem}
+\RequirePackage{etoolbox}
+\RequirePackage{environ}
+\RequirePackage{letltxmacro}
+\RequirePackage{todonotes}
+\RequirePackage{soul}
+\RequirePackage{pifont}
+\RequirePackage{xparse}
+\RequirePackage{amsmath}
+
+%%%% Equation numbering
+\newcounter{removedeqcounter}
+\setcounter{removedeqcounter}{0}
+
+%%%% Comment numbering
+\newcounter{commentcounter}
+\setcounter{commentcounter}{0}
+
+%%%% Define colours and prefixes
+\newcommand{\addedcolor}{blue}
+\newcommand{\removedcolor}{red}
+\newcommand{\removedeqprefix}{R}
+\newcommand{\commentcolor}{yellow}
+\newcommand{\resolvedcommentcolor}{green}
+\newcommand{\commentprefix}{C}
+
+%%%% Necessary for comments to work in twocolumn-type documents
+\setlength{\marginparwidth}{2cm}
+
+%%%% Reviewing commands
+\newtoggle{annotated}
+\toggletrue{annotated} % Show changes by default
+
+\newcommand{\showchanges}{\toggletrue{annotated}}
+\newcommand{\showclean}{\togglefalse{annotated}}
+
+\newtoggle{commented}
+\toggletrue{commented} % Show comments by default
+
+\newcommand{\showcomments}{\toggletrue{commented}}
+\newcommand{\hidecomments}{\togglefalse{commented}}
+
+%%%% Text coloring and hiding
+\newcommand{\colortext}[2]{{\leavevmode\color{#1}{#2}}}
+\newcommand{\safesout}[1]{\ifmmode\text{\sout{\ensuremath{#1}}}\else\sout{#1}\fi}
+\newcommand{\hidefromclean}[1]{\iftoggle{annotated}{#1}{}}
+
+\newcommand{\added}[1]{\iftoggle{annotated}{\colortext{\addedcolor}{#1}}{{#1}}}
+
+\newcommand{\removed}[1]{\hidefromclean{%
+\begingroup%
+\let\oldcite\cite%
+\renewcommand{\cite}[1]{\mbox{\oldcite{##1}}}%
+\colortext{\removedcolor}{\safesout{#1}}%
+\endgroup}}
+
+\newcommand{\changed}[2]{\removed{#1}\iftoggle{annotated}{ }{}\added{#2}}
+
+%%%% Equation coloring and hiding
+\NewEnviron{remequation}{\hidefromclean{%
+\addtocounter{equation}{-1}%
+\refstepcounter{removedeqcounter}%
+\renewcommand{\theequation}{\textcolor{\removedcolor}{\removedeqprefix\arabic{removedeqcounter}}}%
+\let\oldnonumber\nonumber%
+\renewcommand{\nonumber}{\addtocounter{equation}{1}\addtocounter{removedeqcounter}{-1}\oldnonumber}%
+\renewcommand{\notag}{\nonumber}%
+\begin{equation}%
+\color{\removedcolor}%
+\safesout{\BODY}%
+\end{equation}}}
+
+\NewEnviron{remequation*}{\hidefromclean{%
+\begin{equation*}%
+\color{\removedcolor}%
+\safesout{\BODY}%
+\end{equation*}}}
+
+\NewEnviron{addequation}{%
+\begin{equation}%
+\added{\BODY}%
+\end{equation}}
+
+\NewEnviron{addequation*}{%
+\begin{equation*}%
+\added{\BODY}%
+\end{equation*}}
+
+\newcommand{\removedeqline}[1]{\hidefromclean{%
+\let\oldnonumber\nonumber%
+\renewcommand{\nonumber}{\global\tag@false\addtocounter{removedeqcounter}{-1}}%
+\renewcommand{\notag}{\nonumber}%
+\makeatletter%
+\newcommand{\remlabel}{%
+\refstepcounter{removedeqcounter}%
+\global\tag@true%
+\oldnonumber%
+\gdef\df@tag{\maketag@@@{\textcolor{\removedcolor}{(\removedeqprefix\arabic{removedeqcounter})}}\def\@currentlabel{\textcolor{\removedcolor}{\removedeqprefix\arabic{removedeqcounter}}}}}
+\makeatother
+\remlabel%
+\color{\removedcolor}%
+\makeatletter\let\default@color\current@color\makeatother%
+\safesout{#1}%
+}}
+
+\newcommand{\addedeqline}[1]{%
+\iftoggle{annotated}{\color{\addedcolor}{#1}}%
+{{#1}}%
+}
+
+\newcommand{\remaligntab}{\hidefromclean{&}}
+\newcommand{\remnewline}{\hidefromclean{\\}}
+
+%%%% Commenting
+\DeclareRobustCommand{\resolvedhl}[1]{{\sethlcolor{green}\hl{#1}}}
+
+\newcommand{\comment}[3][]{%
+\stepcounter{commentcounter}%
+\ifboolexpr{togl{annotated} and togl{commented}}{%
+\hl{#2}\todo[prepend, color=\commentcolor ,caption=\textbf{\commentprefix\arabic{commentcounter}}, linecolor=black, #1]{#3}}%
+{#2}}
+
+\newcommand{\resolvedcomment}[3][]{%
+\stepcounter{commentcounter}%
+\ifboolexpr{togl{annotated} and togl{commented}}{%
+\resolvedhl{#2}\todo[prepend, color=\resolvedcommentcolor ,caption=\textbf{\ding{52} \commentprefix\arabic{commentcounter}}, linecolor=black, #1]{#3}}%
+{#2}}
+
+\NewDocumentCommand{\authoredcomments}{O{} O{} m}{%
+ \expandafter\newcommand\csname #3comment\endcsname{\comment[author=#3, #1]}%
+ \expandafter\newcommand\csname resolved#3comment\endcsname{\resolvedcomment[author=#3, #2]}%
+} \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/zref-clever/zref-clever.sty b/Master/texmf-dist/tex/latex/zref-clever/zref-clever.sty
index 5a91bc017a9..a1af5c5d4b3 100644
--- a/Master/texmf-dist/tex/latex/zref-clever/zref-clever.sty
+++ b/Master/texmf-dist/tex/latex/zref-clever/zref-clever.sty
@@ -52,7 +52,7 @@
'zref-clever' requires a LaTeX kernel \zrefclever@required@kernel\space or newer.%
}%
}%
-\ProvidesExplPackage {zref-clever} {2024-05-20} {0.4.5}
+\ProvidesExplPackage {zref-clever} {2024-09-30} {0.4.7}
{Clever LaTeX cross-references based on zref}
\RequirePackage { zref-base }
\RequirePackage { zref-user }
@@ -102,6 +102,15 @@
\zref@addprop \ZREF@mainlist { zc@cntval }
\zref@newprop* { zc@pgval } [0] { \int_use:c { c@page } }
\zref@addprop \ZREF@mainlist { zc@pgval }
+\cs_new:Npn \__zrefclever_get_enclosing_counters:n #1
+ {
+ \cs_if_exist:cT { c@ \__zrefclever_counter_reset_by:n {#1} }
+ {
+ { \__zrefclever_counter_reset_by:n {#1} }
+ \__zrefclever_get_enclosing_counters:e
+ { \__zrefclever_counter_reset_by:n {#1} }
+ }
+ }
\cs_new:Npn \__zrefclever_get_enclosing_counters_value:n #1
{
\cs_if_exist:cT { c@ \__zrefclever_counter_reset_by:n {#1} }
@@ -111,6 +120,7 @@
{ \__zrefclever_counter_reset_by:n {#1} }
}
}
+\cs_generate_variant:Nn \__zrefclever_get_enclosing_counters:n { e }
\cs_generate_variant:Nn \__zrefclever_get_enclosing_counters_value:n { e }
\cs_new:Npn \__zrefclever_counter_reset_by:n #1
{
@@ -144,6 +154,8 @@
\l__zrefclever_current_counter_tl
}
\zref@addprop \ZREF@mainlist { zc@enclval }
+\zref@newprop { zc@enclcnt }
+ { \__zrefclever_get_enclosing_counters:e \l__zrefclever_current_counter_tl }
\int_new:N \g__zrefclever_page_format_int
\tl_new:N \g__zrefclever_prev_page_format_tl
\AddToHook { shipout / before }
@@ -2418,25 +2430,16 @@
\keys_define:nn { zref-clever/label }
{
counterresetters .code:n =
- {
- \clist_map_inline:nn {#1}
- {
- \seq_if_in:NnF \l__zrefclever_counter_resetters_seq {##1}
- {
- \seq_put_right:Nn
- \l__zrefclever_counter_resetters_seq {##1}
- }
- }
- } ,
+ { \seq_set_from_clist:Nn \l__zrefclever_counter_resetters_seq {#1} } ,
counterresetters .initial:n =
{
- part ,
- chapter ,
- section ,
- subsection ,
- subsubsection ,
- paragraph ,
subparagraph ,
+ paragraph ,
+ subsubsection ,
+ subsection ,
+ section ,
+ chapter ,
+ part ,
},
counterresetters .value_required:n = true ,
}
@@ -4967,237 +4970,254 @@
}
\cs_new_protected:Npn \__zrefclever_type_name_setup:
{
- \zref@ifrefundefined { \l__zrefclever_type_first_label_tl }
+ \bool_if:nTF
+ { \l__zrefclever_typeset_ref_bool && ! \l__zrefclever_typeset_name_bool }
{
+ % `typeset=ref' / `noname' option
+ % Probably redundant, since in this case the type name is not being
+ % typeset. But, for completeness sake:
\tl_clear:N \l__zrefclever_type_name_tl
+ \bool_set_false:N \l__zrefclever_name_in_link_bool
\bool_set_true:N \l__zrefclever_type_name_missing_bool
}
{
- \tl_if_eq:NnTF
- \l__zrefclever_type_first_label_type_tl { zc@missingtype }
+ \zref@ifrefundefined { \l__zrefclever_type_first_label_tl }
{
\tl_clear:N \l__zrefclever_type_name_tl
\bool_set_true:N \l__zrefclever_type_name_missing_bool
}
{
- % Determine whether we should use capitalization, abbreviation,
- % and plural.
- \bool_lazy_or:nnTF
- { \l__zrefclever_cap_bool }
+ \tl_if_eq:NnTF
+ \l__zrefclever_type_first_label_type_tl { zc@missingtype }
{
- \l__zrefclever_capfirst_bool &&
- \int_compare_p:nNn { \l__zrefclever_type_count_int } = { 0 }
+ \tl_clear:N \l__zrefclever_type_name_tl
+ \bool_set_true:N \l__zrefclever_type_name_missing_bool
}
- { \tl_set:Nn \l__zrefclever_name_format_tl {Name} }
- { \tl_set:Nn \l__zrefclever_name_format_tl {name} }
- % If the queue is empty, we have a singular, otherwise, plural.
- \tl_if_empty:NTF \l__zrefclever_typeset_queue_curr_tl
- { \tl_put_right:Nn \l__zrefclever_name_format_tl { -sg } }
- { \tl_put_right:Nn \l__zrefclever_name_format_tl { -pl } }
- \bool_lazy_and:nnTF
- { \l__zrefclever_abbrev_bool }
{
- ! \int_compare_p:nNn
- { \l__zrefclever_type_count_int } = { 0 } ||
- ! \l__zrefclever_noabbrev_first_bool
- }
- {
- \tl_set:NV \l__zrefclever_name_format_fallback_tl
- \l__zrefclever_name_format_tl
- \tl_put_right:Nn \l__zrefclever_name_format_tl { -ab }
- }
- { \tl_clear:N \l__zrefclever_name_format_fallback_tl }
-
- % Handle number and gender nudges.
- \bool_if:NT \l__zrefclever_nudge_enabled_bool
- {
- \bool_if:NTF \l__zrefclever_nudge_singular_bool
+ % Determine whether we should use capitalization,
+ % abbreviation, and plural.
+ \bool_lazy_or:nnTF
+ { \l__zrefclever_cap_bool }
{
- \tl_if_empty:NF \l__zrefclever_typeset_queue_curr_tl
- {
- \msg_warning:nne { zref-clever }
- { nudge-plural-when-sg }
- { \l__zrefclever_type_first_label_type_tl }
- }
+ \l__zrefclever_capfirst_bool &&
+ \int_compare_p:nNn { \l__zrefclever_type_count_int } = { 0 }
}
+ { \tl_set:Nn \l__zrefclever_name_format_tl {Name} }
+ { \tl_set:Nn \l__zrefclever_name_format_tl {name} }
+ % If the queue is empty, we have a singular, otherwise,
+ % plural.
+ \tl_if_empty:NTF \l__zrefclever_typeset_queue_curr_tl
+ { \tl_put_right:Nn \l__zrefclever_name_format_tl { -sg } }
+ { \tl_put_right:Nn \l__zrefclever_name_format_tl { -pl } }
+ \bool_lazy_and:nnTF
+ { \l__zrefclever_abbrev_bool }
{
- \bool_lazy_all:nT
- {
- { \l__zrefclever_nudge_comptosing_bool }
- { \tl_if_empty_p:N \l__zrefclever_typeset_queue_curr_tl }
- {
- \int_compare_p:nNn
- { \l__zrefclever_label_count_int } > { 0 }
- }
- }
- {
- \msg_warning:nne { zref-clever }
- { nudge-comptosing }
- { \l__zrefclever_type_first_label_type_tl }
- }
+ ! \int_compare_p:nNn
+ { \l__zrefclever_type_count_int } = { 0 } ||
+ ! \l__zrefclever_noabbrev_first_bool
}
- \bool_lazy_and:nnT
- { \l__zrefclever_nudge_gender_bool }
- { ! \tl_if_empty_p:N \l__zrefclever_ref_gender_tl }
{
- \__zrefclever_get_rf_opt_seq:neeN { gender }
- { \l__zrefclever_type_first_label_type_tl }
- { \l__zrefclever_ref_language_tl }
- \l__zrefclever_type_name_gender_seq
- \seq_if_in:NVF
- \l__zrefclever_type_name_gender_seq
- \l__zrefclever_ref_gender_tl
+ \tl_set:NV \l__zrefclever_name_format_fallback_tl
+ \l__zrefclever_name_format_tl
+ \tl_put_right:Nn \l__zrefclever_name_format_tl { -ab }
+ }
+ { \tl_clear:N \l__zrefclever_name_format_fallback_tl }
+
+ % Handle number and gender nudges.
+ % Note that these nudges get disabled for `typeset=ref' /
+ % `noname' option, but in this case they are not really
+ % meaningful anyway.
+ \bool_if:NT \l__zrefclever_nudge_enabled_bool
+ {
+ \bool_if:NTF \l__zrefclever_nudge_singular_bool
{
- \seq_if_empty:NTF \l__zrefclever_type_name_gender_seq
+ \tl_if_empty:NF \l__zrefclever_typeset_queue_curr_tl
{
- \msg_warning:nneee { zref-clever }
- { nudge-gender-not-declared-for-type }
- { \l__zrefclever_ref_gender_tl }
+ \msg_warning:nne { zref-clever }
+ { nudge-plural-when-sg }
{ \l__zrefclever_type_first_label_type_tl }
- { \l__zrefclever_ref_language_tl }
+ }
+ }
+ {
+ \bool_lazy_all:nT
+ {
+ { \l__zrefclever_nudge_comptosing_bool }
+ { \tl_if_empty_p:N \l__zrefclever_typeset_queue_curr_tl }
+ {
+ \int_compare_p:nNn
+ { \l__zrefclever_label_count_int } > { 0 }
+ }
}
{
- \msg_warning:nneeee { zref-clever }
- { nudge-gender-mismatch }
+ \msg_warning:nne { zref-clever }
+ { nudge-comptosing }
{ \l__zrefclever_type_first_label_type_tl }
- { \l__zrefclever_ref_gender_tl }
+ }
+ }
+ \bool_lazy_and:nnT
+ { \l__zrefclever_nudge_gender_bool }
+ { ! \tl_if_empty_p:N \l__zrefclever_ref_gender_tl }
+ {
+ \__zrefclever_get_rf_opt_seq:neeN { gender }
+ { \l__zrefclever_type_first_label_type_tl }
+ { \l__zrefclever_ref_language_tl }
+ \l__zrefclever_type_name_gender_seq
+ \seq_if_in:NVF
+ \l__zrefclever_type_name_gender_seq
+ \l__zrefclever_ref_gender_tl
+ {
+ \seq_if_empty:NTF \l__zrefclever_type_name_gender_seq
{
- \seq_use:Nn
- \l__zrefclever_type_name_gender_seq { ,~ }
+ \msg_warning:nneee { zref-clever }
+ { nudge-gender-not-declared-for-type }
+ { \l__zrefclever_ref_gender_tl }
+ { \l__zrefclever_type_first_label_type_tl }
+ { \l__zrefclever_ref_language_tl }
+ }
+ {
+ \msg_warning:nneeee { zref-clever }
+ { nudge-gender-mismatch }
+ { \l__zrefclever_type_first_label_type_tl }
+ { \l__zrefclever_ref_gender_tl }
+ {
+ \seq_use:Nn
+ \l__zrefclever_type_name_gender_seq { ,~ }
+ }
+ { \l__zrefclever_ref_language_tl }
}
- { \l__zrefclever_ref_language_tl }
}
}
}
- }
- \tl_if_empty:NTF \l__zrefclever_name_format_fallback_tl
- {
- \__zrefclever_opt_tl_get:cNF
+ \tl_if_empty:NTF \l__zrefclever_name_format_fallback_tl
{
- \__zrefclever_opt_varname_type:een
- { \l__zrefclever_type_first_label_type_tl }
- { \l__zrefclever_name_format_tl }
- { tl }
- }
- \l__zrefclever_type_name_tl
- {
- \tl_if_empty:NF \l__zrefclever_ref_decl_case_tl
- {
- \tl_put_left:Nn \l__zrefclever_name_format_tl { - }
- \tl_put_left:NV \l__zrefclever_name_format_tl
- \l__zrefclever_ref_decl_case_tl
- }
\__zrefclever_opt_tl_get:cNF
{
- \__zrefclever_opt_varname_lang_type:eeen
- { \l__zrefclever_ref_language_tl }
+ \__zrefclever_opt_varname_type:een
{ \l__zrefclever_type_first_label_type_tl }
{ \l__zrefclever_name_format_tl }
{ tl }
}
\l__zrefclever_type_name_tl
{
- \tl_clear:N \l__zrefclever_type_name_tl
- \bool_set_true:N \l__zrefclever_type_name_missing_bool
- \msg_warning:nnee { zref-clever } { missing-name }
- { \l__zrefclever_name_format_tl }
- { \l__zrefclever_type_first_label_type_tl }
+ \tl_if_empty:NF \l__zrefclever_ref_decl_case_tl
+ {
+ \tl_put_left:Nn \l__zrefclever_name_format_tl { - }
+ \tl_put_left:NV \l__zrefclever_name_format_tl
+ \l__zrefclever_ref_decl_case_tl
+ }
+ \__zrefclever_opt_tl_get:cNF
+ {
+ \__zrefclever_opt_varname_lang_type:eeen
+ { \l__zrefclever_ref_language_tl }
+ { \l__zrefclever_type_first_label_type_tl }
+ { \l__zrefclever_name_format_tl }
+ { tl }
+ }
+ \l__zrefclever_type_name_tl
+ {
+ \tl_clear:N \l__zrefclever_type_name_tl
+ \bool_set_true:N \l__zrefclever_type_name_missing_bool
+ \msg_warning:nnee { zref-clever } { missing-name }
+ { \l__zrefclever_name_format_tl }
+ { \l__zrefclever_type_first_label_type_tl }
+ }
}
}
- }
- {
- \__zrefclever_opt_tl_get:cNF
- {
- \__zrefclever_opt_varname_type:een
- { \l__zrefclever_type_first_label_type_tl }
- { \l__zrefclever_name_format_tl }
- { tl }
- }
- \l__zrefclever_type_name_tl
{
\__zrefclever_opt_tl_get:cNF
{
\__zrefclever_opt_varname_type:een
{ \l__zrefclever_type_first_label_type_tl }
- { \l__zrefclever_name_format_fallback_tl }
+ { \l__zrefclever_name_format_tl }
{ tl }
}
\l__zrefclever_type_name_tl
{
- \tl_if_empty:NF \l__zrefclever_ref_decl_case_tl
- {
- \tl_put_left:Nn
- \l__zrefclever_name_format_tl { - }
- \tl_put_left:NV \l__zrefclever_name_format_tl
- \l__zrefclever_ref_decl_case_tl
- \tl_put_left:Nn
- \l__zrefclever_name_format_fallback_tl { - }
- \tl_put_left:NV
- \l__zrefclever_name_format_fallback_tl
- \l__zrefclever_ref_decl_case_tl
- }
\__zrefclever_opt_tl_get:cNF
{
- \__zrefclever_opt_varname_lang_type:eeen
- { \l__zrefclever_ref_language_tl }
+ \__zrefclever_opt_varname_type:een
{ \l__zrefclever_type_first_label_type_tl }
- { \l__zrefclever_name_format_tl }
+ { \l__zrefclever_name_format_fallback_tl }
{ tl }
}
\l__zrefclever_type_name_tl
{
+ \tl_if_empty:NF \l__zrefclever_ref_decl_case_tl
+ {
+ \tl_put_left:Nn
+ \l__zrefclever_name_format_tl { - }
+ \tl_put_left:NV \l__zrefclever_name_format_tl
+ \l__zrefclever_ref_decl_case_tl
+ \tl_put_left:Nn
+ \l__zrefclever_name_format_fallback_tl { - }
+ \tl_put_left:NV
+ \l__zrefclever_name_format_fallback_tl
+ \l__zrefclever_ref_decl_case_tl
+ }
\__zrefclever_opt_tl_get:cNF
{
\__zrefclever_opt_varname_lang_type:eeen
{ \l__zrefclever_ref_language_tl }
{ \l__zrefclever_type_first_label_type_tl }
- { \l__zrefclever_name_format_fallback_tl }
+ { \l__zrefclever_name_format_tl }
{ tl }
}
\l__zrefclever_type_name_tl
{
- \tl_clear:N \l__zrefclever_type_name_tl
- \bool_set_true:N
- \l__zrefclever_type_name_missing_bool
- \msg_warning:nnee { zref-clever }
- { missing-name }
- { \l__zrefclever_name_format_tl }
- { \l__zrefclever_type_first_label_type_tl }
+ \__zrefclever_opt_tl_get:cNF
+ {
+ \__zrefclever_opt_varname_lang_type:eeen
+ { \l__zrefclever_ref_language_tl }
+ { \l__zrefclever_type_first_label_type_tl }
+ { \l__zrefclever_name_format_fallback_tl }
+ { tl }
+ }
+ \l__zrefclever_type_name_tl
+ {
+ \tl_clear:N \l__zrefclever_type_name_tl
+ \bool_set_true:N
+ \l__zrefclever_type_name_missing_bool
+ \msg_warning:nnee { zref-clever }
+ { missing-name }
+ { \l__zrefclever_name_format_tl }
+ { \l__zrefclever_type_first_label_type_tl }
+ }
}
}
}
}
}
}
- }
- % Signal whether the type name is to be included in the hyperlink or not.
- \bool_lazy_any:nTF
- {
- { ! \l__zrefclever_hyperlink_bool }
- { \l__zrefclever_link_star_bool }
- { \tl_if_empty_p:N \l__zrefclever_type_name_tl }
- { \str_if_eq_p:Vn \l__zrefclever_nameinlink_str { false } }
- }
- { \bool_set_false:N \l__zrefclever_name_in_link_bool }
- {
+ % Signal whether the type name is to be included in the hyperlink or
+ % not.
\bool_lazy_any:nTF
{
- { \str_if_eq_p:Vn \l__zrefclever_nameinlink_str { true } }
- {
- \str_if_eq_p:Vn \l__zrefclever_nameinlink_str { tsingle } &&
- \tl_if_empty_p:N \l__zrefclever_typeset_queue_curr_tl
- }
- {
- \str_if_eq_p:Vn \l__zrefclever_nameinlink_str { single } &&
- \tl_if_empty_p:N \l__zrefclever_typeset_queue_curr_tl &&
- \l__zrefclever_typeset_last_bool &&
- \int_compare_p:nNn { \l__zrefclever_type_count_int } = { 0 }
- }
+ { ! \l__zrefclever_hyperlink_bool }
+ { \l__zrefclever_link_star_bool }
+ { \tl_if_empty_p:N \l__zrefclever_type_name_tl }
+ { \str_if_eq_p:Vn \l__zrefclever_nameinlink_str { false } }
}
- { \bool_set_true:N \l__zrefclever_name_in_link_bool }
{ \bool_set_false:N \l__zrefclever_name_in_link_bool }
+ {
+ \bool_lazy_any:nTF
+ {
+ { \str_if_eq_p:Vn \l__zrefclever_nameinlink_str { true } }
+ {
+ \str_if_eq_p:Vn \l__zrefclever_nameinlink_str { tsingle } &&
+ \tl_if_empty_p:N \l__zrefclever_typeset_queue_curr_tl
+ }
+ {
+ \str_if_eq_p:Vn \l__zrefclever_nameinlink_str { single } &&
+ \tl_if_empty_p:N \l__zrefclever_typeset_queue_curr_tl &&
+ \l__zrefclever_typeset_last_bool &&
+ \int_compare_p:nNn { \l__zrefclever_type_count_int } = { 0 }
+ }
+ }
+ { \bool_set_true:N \l__zrefclever_name_in_link_bool }
+ { \bool_set_false:N \l__zrefclever_name_in_link_bool }
+ }
}
}
\cs_new_protected:Npn \__zrefclever_hyperlink:nnn #1#2#3
@@ -5389,8 +5409,34 @@
\cs_generate_variant:Nn \__zrefclever_get_rf_opt_bool:nnnnN { nneeN }
\__zrefclever_compat_module:nn { appendix }
{
+ \newcounter { zc@appendix }
+ \cs_if_exist:cTF { chapter }
+ {
+ \__zrefclever_zcsetup:e
+ {
+ counterresetby =
+ {
+ zc@appendix = \__zrefclever_counter_reset_by:n { chapter } ,
+ chapter = zc@appendix ,
+ } ,
+ }
+ }
+ {
+ \cs_if_exist:cT { section }
+ {
+ \__zrefclever_zcsetup:e
+ {
+ counterresetby =
+ {
+ zc@appendix = \__zrefclever_counter_reset_by:n { section } ,
+ section = zc@appendix ,
+ } ,
+ }
+ }
+ }
\AddToHook { cmd / appendix / before }
{
+ \setcounter { zc@appendix } { 1 }
\__zrefclever_zcsetup:n
{
countertype =
@@ -5409,26 +5455,9 @@
{
\__zrefclever_if_package_loaded:nT { appendix }
{
- \newcounter { zc@appendix }
- \newcounter { zc@save@appendix }
- \setcounter { zc@appendix } { 0 }
- \setcounter { zc@save@appendix } { 0 }
- \cs_if_exist:cTF { chapter }
- {
- \__zrefclever_zcsetup:n
- { counterresetby = { chapter = zc@appendix } }
- }
- {
- \cs_if_exist:cT { section }
- {
- \__zrefclever_zcsetup:n
- { counterresetby = { section = zc@appendix } }
- }
- }
\AddToHook { env / appendices / begin }
{
- \stepcounter { zc@save@appendix }
- \setcounter { zc@appendix } { \value { zc@save@appendix } }
+ \setcounter { zc@appendix } { 1 }
\__zrefclever_zcsetup:n
{
countertype =
@@ -5444,13 +5473,31 @@
}
\AddToHook { env / appendices / end }
{ \setcounter { zc@appendix } { 0 } }
- \AddToHook { cmd / appendix / before }
+ \newcounter { zc@subappendix }
+ \cs_if_exist:cTF { chapter }
{
- \stepcounter { zc@save@appendix }
- \setcounter { zc@appendix } { \value { zc@save@appendix } }
+ \__zrefclever_zcsetup:e
+ {
+ counterresetby =
+ {
+ zc@subappendix = \__zrefclever_counter_reset_by:n { section } ,
+ section = zc@subappendix ,
+ } ,
+ }
+ }
+ {
+ \__zrefclever_zcsetup:e
+ {
+ counterresetby =
+ {
+ zc@subappendix = \__zrefclever_counter_reset_by:n { subsection } ,
+ subsection = zc@subappendix ,
+ } ,
+ }
}
\AddToHook { env / subappendices / begin }
{
+ \setcounter { zc@subappendix } { 1 }
\__zrefclever_zcsetup:n
{
countertype =
@@ -5463,6 +5510,8 @@
} ,
}
}
+ \AddToHook { env / subappendices / end }
+ { \setcounter { zc@subappendix } { 0 } }
\msg_info:nnn { zref-clever } { compat-package } { appendix }
}
}
diff --git a/Master/texmf-dist/tex/latex/zugferd/zugferd-invoice.sty b/Master/texmf-dist/tex/latex/zugferd/zugferd-invoice.sty
new file mode 100644
index 00000000000..e86dbdee1bc
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/zugferd/zugferd-invoice.sty
@@ -0,0 +1,193 @@
+%
+% Copyright (C) 2024 Marei Peischl <marei@peitex.de>
+% ---------------------------------------------------------
+%
+% This file may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3c
+% of this license or (at your option) any later version.
+% The latest version of this license is in:
+%
+% http://www.latex-project.org/lppl.txt
+%
+% and version 1.3c or later is part of all distributions of LaTeX
+% version 2008-05-04 or later.
+%
+\ProvidesExplPackage{zugferd-invoice}{2024-09-11}{0.8}{Invoice wrapper example package for the factur-x to create ZUGFerD invoices}
+
+\keys_define:nn {zugferd/invoice}{
+ default-vat .tl_set:N = \defaultVAT,
+ default-vat .initial:n = 19,
+ format .code:n = \PassOptionsToPackage{format=#1}{zugferd},
+ format .initial:n = xrechnung3.0,
+}
+
+\ProcessKeyOptions[zugferd/invoice]
+
+\msg_new:nnnn {ptxcd/zugferd} {not-for-production} {
+ This~package~is~intented~to~be~an~example~for~a~possible~implementation~to~use~the~zugferd~package~for~invoicing.\\
+ As~this~integrates~a~lot~with~the~visual~structure~of~your~invoice~this~should~not~be~used~directly~but~may~be~an~example~for~your~own~package.
+}{See~zugferd~documentation~for~instructions~concerning~the~interfaces~used~in~this~file.}
+\msg_warning:nn {ptxcd/zugferd} {not-for-production}
+
+\RequirePackage{scrletter}
+\RequirePackage{ragged2e}
+\RequirePackage{zugferd}
+\RequirePackage{babel}
+
+% e.g. use comma as output decimal marker if german
+\addto\extrasgerman{\sisetup{locale=DE}}
+\addto\extrasngerman{\sisetup{locale=DE}}% for backwards compatibility
+
+\RequirePackage{xltabular}
+\RequirePackage{booktabs}
+
+\newcounter{invoiceitem}
+\seq_new:N \g__ptxcd_VAT_rates_seq
+
+\NewDocumentCommand{\InitVAT}{omO{S}}{
+ \seq_gput_right:Nn \g__ptxcd_VAT_rates_seq {#2}
+ \fp_new:c {g__ptxcd_invoice_sum_vat#2_fp}
+ \fp_new:c {g__ptxcd_invoice_base_vat#2_fp}
+ \cs_new:cn {__ptxcd_invoice_type_code#2:} {#3}
+}
+
+%%initialisierung auf 5,7,16 oder 19 % Mwst
+\InitVAT{16}
+\InitVAT{19}
+\InitVAT{5}
+\InitVAT{7}
+
+\newcommand*{\SetDefaultVAT}[1]{\def\defaultVAT{#1}}
+
+
+\seq_new:N \l__ptxcd_invoice_items_seq
+
+%\newcommand*{\AddInvoiceItem}[4][\defaultVAT]{%
+\NewDocumentCommand{\AddInvoiceItem}{D<>{}O{\defaultVAT}mmm}{
+ \seq_put_right:Nn \l__ptxcd_invoice_items_seq {
+ {#2}{#3}{#4}{#5}{#1}
+ }
+}
+
+\newcolumntype{P}{r<{\PrintTableCurrency}}
+
+\fp_new:N \g__ptxcd_invoice_sum_fp
+\fp_new:N \g__ptxcd_invoice_total_fp
+\fp_new:N \g__ptxcd_tax_total_fp
+\fp_new:N \g__ptxcd_invoice_item_fp
+\fp_new:N \g__ptxcd_invoice_item_vat_fp
+\fp_new:N \g__ptxcd_invoice_sum_vat_fp
+
+\newcommand*{\PrintInvoiceTabular}{
+\bool_gset_true:N \g_ptxcd_first_run_bool
+ \begin{ZUGFeRD}
+ \sisetup{round-precision=2,round-mode=places,round-pad=false,table-number-alignment=right,minimum-decimal-digits=2,mode=text}
+ \begin{xltabular}{\linewidth}{@{}rS[round-precision=1,table-format=2.1]>{\RaggedRight}XPP@{}}
+ \toprule[\lightrulewidth]
+ \noalign{\global\let\PrintTableCurrency\relax}%
+ \small\emph{Pos.}&\small\emph{Std.}&\small\emph{Beschreibung}&\small\emph{Einzelpreis}&\small\emph{Gesamtpreis}\\\midrule[\heavyrulewidth]
+ \noalign{\global\let\PrintTableCurrency\TableCurrency}%
+ \endhead
+ \bottomrule[\lightrulewidth]\multicolumn{5}{@{}p{\textwidth}@{}}{\strut\hspace*{\fill}\footnotesize Fortsetzung auf der nächsten Seite}\endfoot
+ \bottomrule\endlastfoot
+% Only write xml for the first run of the tabular.
+ \fp_compare:nNnF {\g__ptxcd_invoice_sum_fp} = {\c_zero_dim} {
+ \fp_gzero:N \g__ptxcd_invoice_sum_fp
+ \zugferd_disable_XML_interfaces:
+ }
+ \seq_map_inline:Nn \g__ptxcd_VAT_rates_seq {
+ \fp_gzero:c {g__ptxcd_invoice_sum_vat##1_fp}
+ \fp_gzero:c {g__ptxcd_invoice_base_vat##1_fp}
+ }
+ \fp_gzero:N \g__ptxcd_invoice_sum_fp
+ \seq_map_inline:Nn \l__ptxcd_invoice_items_seq {
+ \PrintInvoiceItem##1
+ }
+ \tabularnewline
+ \noalign{\skip_vertical:n {-\ht\strutbox-\dp\strutbox}}%offset for extra empty row of mapping
+ \midrule[\heavyrulewidth]
+ \PrintInvoiceTotal
+ \end{xltabular}
+ \end{ZUGFeRD}
+}
+
+\newcommand*{\PrintInvoiceTotal}{
+ \zugferd_startInvoiceSums:
+ \fp_gset:Nn \g__ptxcd_invoice_total_fp { \g__ptxcd_invoice_sum_fp}
+ \fp_gzero:N \g__ptxcd_tax_total_fp
+ \PrintInvoiceSum{netto}{\fp_use:N \g__ptxcd_invoice_sum_fp}
+ \seq_map_inline:Nn \g__ptxcd_VAT_rates_seq {
+ \fp_compare:nNnF {\fp_use:c {g__ptxcd_invoice_sum_vat##1_fp}} = {0} {
+ \zugferd_write_TaxEntry:nnnn {\use:c {__ptxcd_invoice_type_code##1:}} {##1} {\fp_use:c {g__ptxcd_invoice_base_vat##1_fp}} {\fp_use:c {g__ptxcd_invoice_sum_vat##1_fp}}
+ \fp_gadd:Nn \g__ptxcd_tax_total_fp {\fp_use:c {g__ptxcd_invoice_sum_vat##1_fp}}
+ \PrintVatSum[{\fp_use:c {g__ptxcd_invoice_base_vat##1_fp}}]{##1 }{\fp_use:c {g__ptxcd_invoice_sum_vat##1_fp}}
+ }
+ }
+ \PrintInvoiceSum{brutto}{\fp_eval:n {\g__ptxcd_tax_total_fp + \g__ptxcd_invoice_total_fp }}
+ % TODO add support for allowance, chargeTotal, and prepaid
+ \zugferd_write_Summation:nnnnnnnn
+ {\fp_use:N \g__ptxcd_invoice_sum_fp}% LineTotalAmount
+ {0} %ChargeTotalAmount
+ {0} %AllowanceTotalAmount
+ {\fp_use:N \g__ptxcd_invoice_sum_fp} %TaxBasisTotalAmount
+ {\fp_use:N \g__ptxcd_tax_total_fp} %TaxTotalAmount
+ {\fp_eval:n {\g__ptxcd_tax_total_fp + \g__ptxcd_invoice_total_fp }} %GrandTotalAmount
+ {0} % TotalPrepaidAmount
+ {\fp_eval:n {\g__ptxcd_tax_total_fp + \g__ptxcd_invoice_total_fp }} %DuePayableAmount = GrandTotalAmount - TotalPrepaidAmount
+ \zugferd_stopInvoiceSums:
+}
+
+%Ausgabe der einzelnen Rechnungspositionen
+\newcommand*{\PrintInvoiceItem}[5]{%
+ \stepcounter{invoiceitem}%
+ \theinvoiceitem%Positionsnummer
+ \fp_gset:Nn \g__ptxcd_invoice_item_vat_fp {#2 * (#1/100) * #4}
+ \fp_gset:Nn \g__ptxcd_invoice_item_fp {#2 * #4}
+% \fp_gadd:Nn \g__ptxcd_invoice_sum_vat_fp
+ \fp_gadd:cn {g__ptxcd_invoice_base_vat#1_fp} {\g__ptxcd_invoice_item_fp}
+ \fp_gadd:cn {g__ptxcd_invoice_sum_vat#1_fp} {\g__ptxcd_invoice_item_vat_fp}
+ \fp_gadd:Nn \g__ptxcd_invoice_sum_fp {\g__ptxcd_invoice_item_fp}
+
+ % position nummer name einzel-preis anzahl gesamtpreis
+ \keys_set:ne {zugferd}{tax/rate=#1, tax/category=\use:c {__ptxcd_invoice_type_code#1:},#5}
+ \zugferd_write_Item:nnnnnn {\theinvoiceitem} {} {#3} {#4} {#2} {\fp_use:N \g__ptxcd_invoice_item_fp}
+
+ &#2% Anzahl
+ &#3\space(\printVAT{#1}~MwSt.)% Beschreibung mit Angabe der MwSt, in Klammern
+ &\num{#4}%\num[round-mode=places,output-decimal-marker={,},round-pad = false]{#4}\tl_show:n {#4}%Einzelpreis
+ &\exp_args:Nx \num{\fp_use:N \g__ptxcd_invoice_item_fp}
+ \tabularnewline
+}
+
+
+
+\newcommand*{\PrintInvoiceSum}[2]{
+ \PrintSum{\csname invoicesum#1name\endcsname}{#2}
+}
+
+\newcommand*{\PrintVatSum}[3][]{
+ \PrintSum{\invoicesumvatname[#1]{#2}}{#3}
+}
+
+\newcommand*{\invoicesumvatname}[2][]{MwSt.~\printVAT{#2}\tl_if_empty:nF {#1} {\space(\num[round-precision=2]{#1}\TableCurrency)}}
+\renewcommand*{\theinvoiceitem}{\int_compare:nNnT {\value{invoiceitem}}<{10}{0}\arabic{invoiceitem}}
+
+\newcommand*{\PrintSum}[2]{
+ &&\multicolumn{1}{r}{#1\invoicesumseparator}&\multicolumn{1}{l}{}&\exp_args:Nx \num {#2}\tabularnewline
+}
+
+\ExplSyntaxOff
+
+\newcommand*{\invoicesumnettoname}{Summe (Netto)}
+\newcommand*{\invoicesumbruttoname}{Summe (Brutto)}
+\newcommand*{\invoicesumseparator}{:\space}
+
+\newcommand*{\TableCurrency}{\,€}
+\newcommand*{\printVAT}[1]{\num[round-mode=none]{#1}\,\%}
+
+\newcommand*{\PrintPositionenVAT}[5]{%
+ \stepcounter{invoiceitem}%
+ \theinvoiceitem&#1&#2\space(\printVAT{#3})&#4&#5\tabularnewline
+}
+
+\endinput
diff --git a/Master/texmf-dist/tex/latex/zugferd/zugferd.sty b/Master/texmf-dist/tex/latex/zugferd/zugferd.sty
new file mode 100644
index 00000000000..15b57b9f321
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/zugferd/zugferd.sty
@@ -0,0 +1,1132 @@
+%%
+%% This is file `zugferd.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% zugferd.dtx (with options: `package')
+%%
+%% Copyright (C) 2023--2024 by Marei Peischl (peiTeX) <marei@peitex.de>
+%%
+\NeedsTeXFormat{LaTeX2e}[2023-11-01]
+\ProvidesExplPackage{zugferd}{2024-09-11}{0.8}{Create ZUGFerd invoices using LaTeX}
+\tl_new:N \l__zugferd_tmp_tl
+\str_new:N \g__zugferd_format_str
+\str_new:N \g__zugferd_businessProcessId_str
+\bool_new:N \g__zugferd_writeTradeContact_bool
+\bool_new:N \g__zugferd_writePaymentMeans_bool
+\str_new:N \g__zugferd_conformance_level_str
+\char_set_catcode_other:N \#%
+\keys_define:nn {zugferd} {
+xrechnung .code:n = {
+\bool_gset_true:N \g__zugferd_writeTradeContact_bool
+\bool_gset_true:N \g__zugferd_writePaymentMeans_bool
+\str_gset:Nn \g__zugferd_conformance_level_str {XRECHNUNG}
+},
+format .choice:,
+format / xrechnung3.0 .code:n = {
+\str_gset:Nx \g__zugferd_format_str {
+urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0
+}
+\str_gset:Nx \g__zugferd_businessProcessId_str {
+urn:fdc:peppol.eu:2017:poacc:billing:01:1.0
+}
+\keys_set:nn {zugferd}{xrechnung}
+},
+format / xrechnung2.3 .code:n = {
+\str_gset:Nx \g__zugferd_format_str {
+urn:cen.eu:en16931:2017#compliant#urn:xoev-de:kosit:standard:xrechnung_2.3
+}
+\keys_set:nn {zugferd}{xrechnung}
+},
+format / basic .code:n = {
+\str_gset:Nx \g__zugferd_format_str {
+urn:cen.eu:en16931:2017#compliant#urn:factur-x.eu:1p0:basic
+}
+\bool_gset_false:N \g__zugferd_writeTradeContact_bool
+\bool_gset_false:N \g__zugferd_writePaymentMeans_bool
+\str_gset:Nn \g__zugferd_conformance_level_str {BASIC}
+},
+format / xrechnung .meta:n = { format = xrechnung3.0 },
+format .initial:n = xrechnung,
+format .usage:n = load,
+write-xml .bool_gset:N = \g__zugferd_write_xml_bool,
+write-xml .initial:n = true,
+write-xml .usage:n = load,
+zugferd .bool_gset:N = \g__zugferd_active_bool,
+zugferd .initial:n = true,
+zugferd .default:n = true,
+zugferd .usage:n = load,
+ZUGFerD .meta:n = {zugferd = #1},
+xml-file .tl_gset:N = \g__zugferd_xml_file_tl,
+xml-file .initial:n = \jobname _zugferd.xml,
+xml-file .usage:n = load,
+auto-exemption .bool_gset:N = \g__zugferd_auto_exemption_bool,
+auto-exemption .initial:n = true,
+auto-exemption .default:n = true,
+auto-exemption .usage:n =load,
+}
+\char_set_catcode_parameter:N \#%
+
+\ProcessKeyOptions[zugferd]
+\iow_new:N \__zugferd_xml_writer_iow
+\bool_if:NT \g__zugferd_active_bool {
+\cs_if_exist:NF \pdfmeta_xmp_xmlns_new:nn {
+\msg_new:nnnn {zugferd} {PDFmanagement-not-active} {
+The~\LaTeX~PDF~management~is~not~active.\\
+Activate~it~using~\string\DocumentMetadata.
+} {
+See~ZUGFeRD~or~PDFmanagement~documentation~for~more~information.
+}
+\msg_error:nn{zugferd} {PDFmanagement-not-active}
+}
+%% based on experiments for l3pdfmeta by Ulrike Fischer
+\pdfmeta_xmp_xmlns_new:nn {fx}{
+urn:factur-x:pdfa:CrossIndustryDocument:invoice:1p0\c_hash_str
+}
+
+\cs_generate_variant:Nn \__pdfmeta_xmp_schema_new:nnn {nne}
+
+\__pdfmeta_xmp_schema_new:nne
+ {Factur-X~PDFA~Extension~Schema}
+ {fx}
+ {urn:factur-x:pdfa:CrossIndustryDocument:invoice:1p0\c_hash_str}
+
+\__pdfmeta_xmp_property_new:nnnnn
+ {fx}
+ {DocumentFileName}
+ {Text}
+ {external}
+ {name~of~the~embedded~XML~invoice~file}
+
+\__pdfmeta_xmp_property_new:nnnnn
+ {fx}
+ {DocumentType}
+ {Text}
+ {external}
+ {INVOICE}
+
+\__pdfmeta_xmp_property_new:nnnnn
+ {fx}
+ {Version}
+ {Text}
+ {external}
+ {The~actual~version~of~the~factur-x~schema}
+
+\__pdfmeta_xmp_property_new:nnnnn
+ {fx}
+ {ConformanceLevel}
+ {Text}
+ {external}
+ {The~conformance~level~of~the~factur-x~data}
+
+\exp_args:Ne \pdfmeta_xmp_add:n {
+<fx:DocumentType>INVOICE</fx:DocumentType>\iow_newline:
+<fx:DocumentFileName>factur-x.xml</fx:DocumentFileName>\iow_newline:
+<fx:Version>1.0</fx:Version>\iow_newline:
+<fx:ConformanceLevel>\g__zugferd_conformance_level_str</fx:ConformanceLevel>%
+\iow_newline:
+}
+}
+\NewDocumentCommand{\SetZUGFeRDData}{sm}{
+\IfBooleanTF{#1}
+{\keys_set:ne}
+{\keys_set:nn}
+{zugferd} {#2}
+}
+\let\SetZugferdData\SetZUGFeRDData
+\NewDocumentCommand{\InsertZUGFeRDData}{om}{
+\str_case:nnF {#1} {
+{AddressData} {
+\clist_map_inline:nn {name, lineone, linetwo} {
+\prop_if_in:cnT {g__zugferd_#2_AddressData_prop } {##1} {
+\prop_item:cn {g__zugferd_#2_AddressData_prop } {##1}\\
+}
+}
+\prop_item:cn {g__zugferd_#2_AddressData_prop } {postcode}
+\space
+\prop_item:cn {g__zugferd_#2_AddressData_prop } {city}
+}
+{set-today} {
+\__zugferd_set_today:v {g__zugferd_#2_tl}
+}
+} {
+\str_set:Ne \l_tmpa_str {#2}
+\str_replace_all:Nnn \l_tmpa_str {-} {_}
+\str_replace_all:Nnn \l_tmpa_str {/} {_}
+\bool_set_true:N \g_tmpa_bool
+\clist_map_inline:nn {tl, str} {
+\clist_map_inline:nn {g, l} {
+\use:c {##1 _if_exist:cT} {####1__zugferd_ \l_tmpa_str _##1}
+{
+\use:c {####1__zugferd_ \l_tmpa_str _##1}
+\bool_gset_false:N \g_tmpa_bool
+}
+\bool_if:NF \g_tmpa_bool {\clist_map_break:}
+}
+\bool_if:NF \g_tmpa_bool {\clist_map_break:}
+}
+}
+}
+\providecommand{\InsertZugferdData}{\InsertZUGFeRDData}
+\providecommand{\insertZugferdData}{\InsertZUGFeRDData}
+\cs_new:Nn \__zugferd_set_today:n {
+\__zugferd_set_today_aux:w #1 \q_stop
+}
+\cs_generate_variant:Nn \__zugferd_set_today:n {v}
+\cs_new:Npn \__zugferd_set_today_aux:w #1 #2 #3 #4 #5 #6 #7 #8 \q_stop{
+\int_set:Nn \year {#1#2#3#4}
+\int_set:Nn \month {#5#6}
+\int_set:Nn \day {#7#8}
+}
+\NewDocumentEnvironment{ZUGFeRD}{o}{
+\IfNoValueF{#1}{
+\SetZUGFeRDData{#1}
+}
+\zugferd_enable_XML_interfaces:
+\startWritingZUGFeRDxml
+\zugferd_write_Header:
+\ignorespaces
+}{
+\zugferd_enable_XML_interfaces:
+\zugferd_write_Footer:
+\stopWritingZUGFeRDxml
+\zugferd_disable_XML_interfaces:
+}
+\newcommand*{\startWritingZUGFeRDxml}{
+\begingroup
+\bool_if:NTF \g__zugferd_write_xml_bool {
+\char_set_active_eq:nN {13} \__zugferd_xml_newline_indent:
+\iow_open:Nn \__zugferd_xml_writer_iow {\g__zugferd_xml_file_tl}
+}{
+\msg_info:nn {zugferd} {no-xml-write}
+}
+}
+\msg_new:nnn {zugferd} {no-xml-write} {
+The~option~write-xml=false~was~set.\\
+Writing~of~XML~file~is~deactivated.
+}
+%% The metadata elements are taken by Ulrike Fischer's faktur-x experiments
+%% https://github.com/latex3/pdfresources/tree/main/experiments/factur-x-bills
+\newcommand*{\stopWritingZUGFeRDxml}{%
+\bool_if:NT \g__zugferd_write_xml_bool
+{\iow_close:N \__zugferd_xml_writer_iow}%
+\endgroup
+\bool_if:NT \g__zugferd_active_bool {
+\group_begin:
+\pdfdict_put:nnn {l_pdffile/Filespec} {AFRelationship}{/Alternative}
+\pdfdict_put:nnn {l_pdffile/Filespec} {Desc}{(Factur-X/ZUGFeRD-Rechnung)}
+\pdffile_embed_file:nnn {\g__zugferd_xml_file_tl}{factur-x.xml}
+{zugferd/rechnung}
+\group_end:
+\pdfmanagement_add:nnx
+{Catalog/Names}
+{EmbeddedFiles}
+{\pdf_object_ref:n{zugferd/rechnung}}
+\pdfmanagement_add:nnx{Catalog}{AF}{\pdf_object_ref:n{zugferd/rechnung}}
+}
+}
+%% Code using the data for visible representation
+\cs_new:Nn \zugferd_enable_XML_interfaces: {
+\bool_if:NT \g__zugferd_write_xml_bool {
+\cs_gset:Nn \zugferd_write_Header: {
+\__zugferd_insert_Header:
+\__zugferd_insert_FrontMatter:
+}
+\cs_gset:Nn \zugferd_write_Footer: {
+\__zugferd_insert_Footer:
+}
+\cs_gset_eq:NN \zugferd_write_Item:nnnnnn
+\__zugferd_insert_TradeLineItem:nnnnnn
+\cs_gset:Nn \zugferd_startInvoiceSums: {
+\__zugferd_ApplicableHeaderTradeAgreement:
+\__zugferd_ApplicableHeaderTradeSettlement_start:
+\__zugferd_SpecifiedTradeSettlementPaymentMeans:
+}
+\cs_gset:Nn \zugferd_stopInvoiceSums: {
+\__zugferd_ApplicableHeaderTradeSettlement_stop:
+}
+\cs_gset_eq:NN \zugferd_write_TaxEntry:nnnn \__zugferd_ApplicableTradeTax:nnnn
+\cs_gset:Nn \zugferd_write_Summation:nnnnnnnn {
+\__zugferd_SpecifiedTradePaymentTerms:
+\__zugferd_SpecifiedTradeSettlementHeaderMonetarySummation:nnnnnnnn
+{##1} {##2} {##3} {##4} {##5} {##6} {##7} {##8}
+}
+}
+}
+\cs_new:Nn \zugferd_disable_XML_interfaces: {
+\cs_gset_eq:NN \zugferd_write_Header: \prg_do_nothing:
+\cs_gset_eq:NN \zugferd_write_Footer: \prg_do_nothing:
+\cs_gset_eq:NN \zugferd_write_Item:nnnnnn \use_none:nnnnnn
+\cs_gset_eq:NN \zugferd_startInvoiceSums: \prg_do_nothing:
+\cs_gset_eq:NN \zugferd_stopInvoiceSums: \prg_do_nothing:
+\cs_gset_eq:NN \zugferd_write_TaxEntry:nnnn \use_none:nnnn
+\cs_gset_eq:NN \zugferd_write_Summation:nnnnnnnn \use_none:nnnnnnnn
+}
+\bool_if:NTF \g__zugferd_write_xml_bool {
+\zugferd_enable_XML_interfaces:
+}{
+\zugferd_disable_XML_interfaces:
+}
+\bool_if:NTF \g__zugferd_write_xml_bool {
+\cs_new:Nn \__zugferd_write_xml:n {
+\iow_now:Ne \__zugferd_xml_writer_iow {\__zugferd_xml_auto_indent: #1}
+}
+\cs_new_eq:NN \__zugferd_define_xml_writer:Nn \cs_new:Nn
+\cs_new_eq:NN \__zugferd_define_xml_content:Nn \cs_new:Nn
+} {
+\cs_set_eq:NN \__zugferd_write_xml:n \use_none:n
+\cs_set:Nn \__zugferd_define_xml_writer:Nn {\cs_new:Nn #1 {}}
+\cs_set:Nn \__zugferd_define_xml_content:Nn {\cs_new:Nn #1 {}}
+}
+
+\cs_generate_variant:Nn \__zugferd_write_xml:n {e}
+\RequirePackage{siunitx}
+\cs_new:Nn \__zugferd_number_format:nNn {
+\sisetup{
+parse-numbers=true,
+round-mode=places,
+round-precision=#1,
+round-pad = false,
+group-digits=false,
+minimum-decimal-digits=#1,
+output-decimal-marker=.
+}
+\siunitx_number_format:nN {#3} #2
+}
+\cs_generate_variant:Nn \__zugferd_number_format:nNn {nNe}
+\cs_new:Nn \__zugferd_write_rounded:nnnn {
+\__zugferd_number_format:nNe {#1} \l__zugferd_tmp_tl {#4}
+\__zugferd_write_xml:e {<ram:#2#3>\l__zugferd_tmp_tl</ram:#2>}
+}
+\cs_new:Nn \__zugferd_write_rounded:nnn {
+\__zugferd_write_rounded:nnnn {#1} {#2} {} {#3}
+}
+\int_new:N \g__zugferd_indent_int
+\cs_new:Nn \__zugferd_indent: {
+\space\space
+}
+\cs_new:Nn \__zugferd_indent:n {
+\prg_replicate:nn {#1} {\__zugferd_indent:}
+}
+\cs_new:Nn \__zugferd_xml_auto_indent: {
+\__zugferd_indent:n {\g__zugferd_indent_int}
+}
+\cs_new:Nn \__zugferd_xml_newline_indent: {
+\iow_newline: \__zugferd_xml_auto_indent:
+}
+\cctab_new:N \g__zugferd_xml_cctab
+\begingroup%
+\endlinechar=13%
+\char_set_catcode:nn {13}{13}%
+\cctab_gsave_current:N \g__zugferd_xml_cctab%
+\endgroup
+%% modified list taken from hyperref.sty v7.01i
+%% Copyright
+%% 1995-2001 Sebastian Rahtz, with portions written by David Carlisle and Heiko Oberdiek
+%% 2001-2015 Heiko Oberdiek
+%% 2016-2019 Oberdiek Package Support Group
+%% 2019-2024 LaTeX Project
+%% modifications have been made to support the mechanism if hyperref is not loaded
+\cs_new:Nn \zugferd_disable_macros: {
+\let\{\textbraceleft
+\let\}\textbraceright
+\let\\\textbackslash
+\let\#\textnumbersign
+\let\$\textdollar
+\let\%\textpercent
+\let\&\textampersand
+\let\_\textunderscore
+\let\P\textparagraph
+\let\ldots\textellipsis
+\let\dots\textellipsis
+\def\\{\space}%
+\def\newline{\space}%
+\def\TeX{TeX}%
+\def\LaTeX{La\TeX}%
+\def\LaTeXe{\LaTeX2e}%
+\def\eTeX{e-\TeX}%
+\def\SliTeX{Sli\TeX}%
+\def\MF{Metafont}%
+\def\MP{Metapost}%
+\let\fontencoding\@gobble
+\let\fontfamily\@gobble
+\let\fontseries\@gobble
+\let\fontshape\@gobble
+\let\fontsize\@gobbletwo
+\let\selectfont\@empty
+\let\usefont\@gobblefour
+\let\emph\@firstofone
+\let\textnormal\@firstofone
+\let\textrm\@firstofone
+\let\textsf\@firstofone
+\let\texttt\@firstofone
+\let\textbf\@firstofone
+\let\textmd\@firstofone
+\let\textit\@firstofone
+\let\textsc\@firstofone
+\let\textsl\@firstofone
+\let\textup\@firstofone
+\let\normalfont\@empty
+\let\rmfamily\@empty
+\let\sffamily\@empty
+\let\ttfamily\@empty
+\let\bfseries\@empty
+\let\mdseries\@empty
+\let\itshape\@empty
+\let\scshape\@empty
+\let\slshape\@empty
+\let\upshape\@empty
+\let\em\@empty
+\let\rm\@empty
+\let\Huge\@empty
+\let\LARGE\@empty
+\let\Large\@empty
+\let\footnotesize\@empty
+\let\huge\@empty
+\let\large\@empty
+\let\normalsize\@empty
+\let\scriptsize\@empty
+\let\small\@empty
+\let\tiny\@empty
+\let\mathversion\@gobble
+\let\phantom\@gobble
+\let\vphantom\@gobble
+\let\hphantom\@gobble
+\let\ding\HyPsd@ding
+\let\Cube\HyPsd@DieFace
+\def\begin##1{\csname##1\endcsname}%
+\def\end##1{\csname end##1\endcsname}%
+\def\textcolor##1##{\@secondoftwo}%
+\def\TextOrMath{\ifmmode\expandafter\@secondoftwo\else\expandafter\@firstoftwo\fi}%
+\let\foreignlanguage\@secondoftwo
+\let\textlatin\@firstofone
+\let\cyr\relax
+\let\glqq\textglqq
+\let\grqq\textgrqq
+\let\glq\textglq
+\let\grq\textgrq
+\let\flqq\textflqq
+\let\frqq\textfrqq
+\let\flq\textflq
+\let\frq\textfrq
+\let\if@mid@expandable\@firstoftwo
+\let\hspace\@gobble
+\let\label\@gobble
+\let\index\@gobble
+\let\glossary\@gobble
+\let\@mkboth\@gobbletwo
+\let\leavevmode\@empty
+\let\mbox\@empty
+\def\halign{\@gobble}%
+\let\Hy@SectionAnchorHref\@gobble
+\let\ref\@gobble
+\let\href\@gobble
+\let\pageref\@gobble
+\let\nameref\@gobble
+\let\autoref\@gobble
+\let\ignorespaces\relax
+\let\ensuremath\@firstofone
+\hook_use:n {zugferd/disable-macros}
+}
+\hook_new:n {zugferd/disable-macros}
+\seq_new:N \g__zugferd_notes_seq
+\tl_new:N \g__zugferd_id_tl
+\tl_new:N \g__zugferd_date_tl
+\tl_new:N \g__zugferd_delivery_date_tl
+\tl_new:N \g__zugferd_subject_tl
+\tl_new:N \g__zugferd_fromaddress_tl
+\tl_new:N \g__zugferd_DocumentTypeCode_tl
+\tl_new:N \l__zugferd_currency_tl
+\keys_define:nn { zugferd } {
+document-type .choice:,
+document-type / commercial-invoice .code:n =
+\tl_gset:Nn \g__zugferd_DocumentTypeCode_tl {380},
+document-type .initial:n = commercial-invoice,
+id .choice:,
+id / komavar .code:n = \tl_gset:Nf \g__zugferd_id_tl {\scr@invoice@var},
+id / unknown .code:n = \tl_gset:Nn \g__zugferd_id_tl {#1},
+currency .choices:nn = {EUR, USD, CHF} {
+\tl_set_eq:NN \l__zugferd_currency_tl \l_keys_choice_tl
+},
+currency / € .meta:n = {currency = EUR},
+currency / unknown .code:n = {
+\exp_args:Nnnx \keys_if_choice_exist:nnnTF {zugferd} {unit} {
+\str_uppercase:f {#1}
+}
+{\keys_set:nx { zugferd } {unit= {\str_uppercase:f {#1}}}}
+{
+\msg_warning:nnn { zugferd } {unknown-value} {currency} {#1}
+\tl_set:Ne \l__zugferd_currency_tl {\str_uppercase:f {#1}}
+}
+},
+currency .initial:n = EUR,
+date .choice:,
+date / auto .code:n = \tl_gset:Ne \g__zugferd_date_tl {
+\the\year
+\int_compare:nNnT {\month} < {10} {0} \the\month
+\int_compare:nNnT {\day} < {10} {0}\the\day
+},
+date / unknown .code:n = \tl_gset:Nn \g__zugferd_date_tl {#1},
+date .initial:n = auto,
+delivery-date .choice:,
+delivery-date / auto .code:n = \tl_gset:Ne \g__zugferd_delivery_date_tl {
+\the\year
+\int_compare:nNnT {\month} < {10} {0} \the\month
+\int_compare:nNnT {\day} < {10} {0}\the\day
+},
+delivery-date / unknown .code:n = {
+\tl_gset:Nn \g__zugferd_delivery_date_tl {#1}
+},
+delivery-date .initial:n = auto,
+due-date .tl_gset:N = \__zugferd_due_date_tl,
+due-date .initial:n =,
+payment-terms .str_gset:N = \__zugferd_payment_terms_str,
+payment-terms .initial:n =,
+subject .choice:,
+subject / komavar .code:n = {
+\tl_gset:Nf \g__zugferd_subject_tl {\scr@subject@var}
+},
+subject / unknown .code:n = \tl_gset:Nn \g__zugferd_subject_tl {#1},
+fromaddress .choice:,
+fromaddress / komavar .code:n = \tl_gset:Nf \g__zugferd_fromaddress_tl
+{\scr@fromaddress@var},
+fromaddress / unknown .code:n = \tl_gset:Nn \g__zugferd_fromaddress_tl {#1},
+add-note .code:n = \seq_gput_right:Nn \g__zugferd_notes_seq {#1},
+}
+\msg_new:nnnn {zugferd} {unknown-value} {
+You~selected~a~#1~which~was~not~predefined.\\
+I~will~directly~use~your~selection~'#1=#2'.
+Please~ensure~the~selection~is~valid!
+} {
+For~more~information~see~the~zugferd~documentation.
+}
+\cs_new:Nn \__zugferd_note_if_not_empty:N {%
+\tl_if_empty:NF #1 {%
+\__zugferd_write_note:n {#1}%
+}%
+}%
+\clist_map_inline:nn {seller,buyer,shipto} {
+\prop_new:c {g__zugferd_#1_AddressData_prop}
+\keys_define:nn {zugferd / #1} {
+address .code:n = {
+\seq_set_split:Nnn \l_tmpa_seq {\\} {##1}
+\keys_set:nx {zugferd / #1} {
+lineone=\seq_item:Nn \l_tmpa_seq {1},
+linetwo=\seq_item:Nn \l_tmpa_seq {2}
+}
+},
+contact .code:n = {
+\seq_set_split:Nnn \l_tmpa_seq {\\} {##1}
+\int_compare:nNnTF {\seq_count:N \l_tmpa_seq} > {3} {
+\keys_set:ne {zugferd/#1} {
+contact-name = \seq_item:Nn \l_tmpa_seq {1},
+contact-department = \seq_item:Nn \l_tmpa_seq {2},
+contact-phone = \seq_item:Nn \l_tmpa_seq {3},
+contact-email= \seq_item:Nn \l_tmpa_seq {4}
+}
+}{
+\keys_set:ne {zugferd/#1} {
+contact-name = \seq_item:Nn \l_tmpa_seq {1},
+contact-phone = \seq_item:Nn \l_tmpa_seq {2},
+contact-email= \seq_item:Nn \l_tmpa_seq {3}
+}
+}
+},
+unknown .code:n = \tl_if_blank:nF {##1} {
+\prop_gput:cVe {g__zugferd_#1_AddressData_prop}
+\l_keys_key_tl {\tl_trim_spaces:n {##1}}
+}
+}
+}
+\cs_new:Nn \__zugferd_PostalTradeAddress_short:N {
+\exp_args:Ne \tl_if_blank:nF {\prop_item:Nn #1 {name}}
+{<ram:Name>\prop_item:Nn #1 {name}</ram:Name>\iow_newline:\__zugferd_xml_auto_indent:}
+\__zugferd_PostalTradeAddress:eeeee
+{\prop_item:Nn #1 {postcode}}
+{\prop_item:Nn #1 {lineone}}
+{\prop_item:Nn #1 {linetwo}}
+{\prop_item:Nn #1 {city}}
+{\prop_item:Nn #1 {country}}
+}
+\cs_new:Nn \__zugferd_PostalTradeAddress:N {%
+\__zugferd_PostalTradeAddress:eeeeeee
+{\prop_item:Nn #1 {postcode}}
+{\prop_item:Nn #1 {lineone}}
+{\prop_item:Nn #1 {linetwo}}
+{\prop_item:Nn #1 {city}}
+{\prop_item:Nn #1 {country}}
+{\prop_item:Nn #1 {email}}
+{\prop_item:Nn #1 {vatid}}
+}%
+\cs_new:Nn \__zugferd_DefinedTradeContact:N {%
+\__zugferd_DefinedTradeContact:eeee
+{\prop_item:Nn #1 {contact-name}}
+{\prop_item:Nn #1 {contact-department}}
+{\prop_item:Nn #1 {contact-phone}}
+{\prop_item:Nn #1 {contact-email}}
+}%
+\cctab_begin:N \g__zugferd_xml_cctab%
+\__zugferd_define_xml_content:Nn \__zugferd_PostalTradeAddress:nnnnn {%
+<ram:PostalTradeAddress>
+\__zugferd_indent: <ram:PostcodeCode>#1</ram:PostcodeCode>
+\tl_if_blank:nF {#2} {%
+\__zugferd_indent: <ram:LineOne>#2</ram:LineOne>
+}%
+\tl_if_blank:nF {#3} {%
+\__zugferd_indent: <ram:LineTwo>#3</ram:LineTwo>
+}%
+\__zugferd_indent: <ram:CityName>#4</ram:CityName>
+\__zugferd_indent: <ram:CountryID>#5</ram:CountryID>
+</ram:PostalTradeAddress>%
+}
+\__zugferd_define_xml_content:Nn \__zugferd_PostalTradeAddress:nnnnnnn {%
+\__zugferd_PostalTradeAddress:nnnnn {#1} {#2} {#3} {#4} {#5}
+\tl_if_empty:nF {#6} {%
+<ram:URIUniversalCommunication>
+\__zugferd_indent: <ram:URIID~schemeID="EM">#6</ram:URIID>
+</ram:URIUniversalCommunication>%
+}%
+\tl_if_empty:nF {#7} {
+<ram:SpecifiedTaxRegistration>
+\__zugferd_indent: <ram:ID~schemeID="VA">#7</ram:ID>
+</ram:SpecifiedTaxRegistration>%
+}%
+}%
+\__zugferd_define_xml_content:Nn \__zugferd_DefinedTradeContact:nnnn {%
+\tl_if_blank:nT {#1} {\use_none:nnn} %
+\bool_if:NT \g__zugferd_writeTradeContact_bool {%
+<ram:DefinedTradeContact>
+\__zugferd_indent: <ram:PersonName>#1</ram:PersonName>
+\tl_if_blank:nF {#2} {%
+\__zugferd_indent: <ram:DepartmentName>#2</ram:DepartmentName>
+}%
+\tl_if_blank:nF {#3} {%
+\__zugferd_indent: <ram:TelephoneUniversalCommunication>
+\__zugferd_indent:n {2} <ram:CompleteNumber>#3</ram:CompleteNumber>
+\__zugferd_indent: </ram:TelephoneUniversalCommunication>
+}%
+\tl_if_blank:nF {#4} {%
+\__zugferd_indent: <ram:EmailURIUniversalCommunication>
+\__zugferd_indent:n {2} <ram:URIID>#4</ram:URIID>
+\__zugferd_indent: </ram:EmailURIUniversalCommunication>
+}%
+</ram:DefinedTradeContact>%
+}%
+}%
+\__zugferd_define_xml_writer:Nn \__zugferd_ApplicableHeaderTradeAgreement: {%
+\__zugferd_write_xml:n {<ram:ApplicableHeaderTradeAgreement>}%
+\int_gincr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:e {%
+<ram:BuyerReference>\g__zugferd_buyer_reference_tl</ram:BuyerReference>
+<ram:SellerTradeParty>%
+}%
+\int_gincr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:e {%
+<ram:Name>\prop_item:Nn \g__zugferd_seller_AddressData_prop {name}</ram:Name>
+\__zugferd_DefinedTradeContact:N \g__zugferd_seller_AddressData_prop%
+\__zugferd_PostalTradeAddress:N \g__zugferd_seller_AddressData_prop%
+}%
+\int_gdecr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:e {%
+</ram:SellerTradeParty>
+<ram:BuyerTradeParty>%
+}%
+\int_gincr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:e {%
+<ram:Name>\prop_item:Nn \g__zugferd_buyer_AddressData_prop {name}</ram:Name>
+\__zugferd_DefinedTradeContact:N \g__zugferd_buyer_AddressData_prop%
+\__zugferd_PostalTradeAddress:N \g__zugferd_buyer_AddressData_prop%
+}%
+\int_gdecr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:n {</ram:BuyerTradeParty>}%
+\int_gdecr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:n {</ram:ApplicableHeaderTradeAgreement>}
+\__zugferd_ApplicableHeaderTradeDelivery:V \g__zugferd_delivery_date_tl%
+}%
+\__zugferd_define_xml_content:Nn \__zugferd_ApplicableHeaderTradeDelivery:n {%
+\bool_lazy_and:nnF {\prop_if_empty_p:N \g__zugferd_shipto_AddressData_prop}%
+{\tl_if_blank_p:n {#1}}%
+{%
+\__zugferd_write_xml:n {<ram:ApplicableHeaderTradeDelivery>}%
+\prop_if_empty:NF \g__zugferd_shipto_AddressData_prop {%
+\int_gincr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:n {<ram:ShipToTradeParty>}%
+\int_gincr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:e {%
+\__zugferd_PostalTradeAddress_short:N \g__zugferd_shipto_AddressData_prop%
+}%
+\int_gdecr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:n {</ram:ShipToTradeParty>}%
+\int_gdecr:N \g__zugferd_indent_int%
+}%
+\tl_if_blank:nF {#1} {%
+\__zugferd_write_xml:n {%
+\__zugferd_indent: <ram:ActualDeliverySupplyChainEvent>
+\__zugferd_indent:n {2} <ram:OccurrenceDateTime>
+\__zugferd_indent:n {3}<udt:DateTimeString~format="102">#1</udt:DateTimeString>
+\__zugferd_indent:n {2} </ram:OccurrenceDateTime>
+\__zugferd_indent: </ram:ActualDeliverySupplyChainEvent>%
+}%
+}%
+\__zugferd_write_xml:n {</ram:ApplicableHeaderTradeDelivery>}%
+}%
+}%
+\cctab_end:
+\cs_generate_variant:Nn \__zugferd_DefinedTradeContact:nnnn {eeee}
+\cs_generate_variant:Nn \__zugferd_PostalTradeAddress:nnnnn {eeeee}%
+\cs_generate_variant:Nn \__zugferd_PostalTradeAddress:nnnnnnn {eeeeeee}
+\cs_generate_variant:Nn \__zugferd_ApplicableHeaderTradeDelivery:n {V}
+\tl_new:N \g__zugferd_buyer_reference_tl
+\keys_define:nn {zugferd/buyer} {
+reference .choice:,
+reference / komavar .code:n = {
+\tl_gset:Nf \g__zugferd_buyer_reference_tl {\scr@yourref@var}
+},
+reference / unknown .code:n = {
+\tl_gset:Nn \g__zugferd_buyer_reference_tl {#1}
+}
+}
+\ExplSyntaxOff
+\providecommand*{\zugferd@paymentMeans@german}{
+ 1 = Keine Zahlungsart definiert,
+10 = Bargeld,
+30 = Überweisung,
+42 = Zahlung an Bankkonto,
+48 = Kartenzahlung,
+49 = Lastschriftverfahren,
+57 = Dauerauftrag,
+58 = Zahlung per SEPA Überweisung.,
+59 = SEPA Lastschrift,
+97 = Ausgleich zwischen Partnern
+}
+\def\zugferd@paymentMeans@ngerman{\zugferd@paymentMeans@german}
+\providecommand*{\zugferd@paymentMeans@english}{
+ 1 = Instrument not defined,
+10 = In cash,
+30 = Credit Transfer,
+31 = Debit Transfer,
+42 = Payment to bank account,
+48 = Bank card,
+49 = Direct Debit,
+57 = Standing agreement,
+58 = SEPA credit transfer,
+59 = SEPA direct debit,
+97 = Clearing between partners
+}
+\ExplSyntaxOn
+\tl_new:N \g__zugferd_payment_means_tl
+\keys_define:nn {zugferd} {
+payment-means / type .choices:nn = {1,10,30,42,48,49,57,58,59,97} {
+\tl_gset_eq:NN \g__zugferd_payment_means_tl \l_keys_choice_tl
+},
+payment-means / unknown .code:n = {
+\msg_warning:nnn { zugferd } {unknown-value} {payment-means} {#1}
+\tl_gset:Nn \g__zugferd_payment_means_tl {\int_eval:n {#1}}
+}
+}
+
+\clist_map_inline:nn {iban,account-holder,bic} {
+\keys_define:nn {zugferd/payment-means} {
+#1 .tl_gset:c = {g__zugferd_payment_#1_tl}
+}
+}
+
+\prop_new:c {g__zugferd_payment-means_names_prop}
+\newcommand*{\setupZUGFeRDStrings}[2]{
+\prop_gset_from_keyval:cn {g__zugferd_#1_names_prop} {
+#2
+}
+}
+
+\hook_gput_code:nnn {begindocument/end}{zugferd/payment-means}{
+\prop_if_empty:cT {g__zugferd_payment-means_names_prop} {
+\exp_args:Nne \setupZUGFeRDStrings{payment-means}{
+\use:c {zugferd@paymentMeans@
+\cs_if_exist:cTF {zugferd@paymentMeans@\languagename} {\languagename} {english}
+}
+}
+}
+}
+\keys_define:nn { zugferd } {
+unit .choices:nn = {HUR,DAY,C62,H87} {
+\tl_set_eq:NN \l__zugferd_unit_code_tl \l_keys_choice_tl
+},
+unit / hour .meta:n = {unit=HUR},
+unit / day .meta:n = {unit=DAY},
+unit / one .meta:n= {unit= C62},
+unit / piece .meta:n = {unit=H87},
+unit / unknown .code:n = {
+\tl_set:Nx \l_tmpa_tl {\str_uppercase:f {#1}}
+\exp_args:NnnV \keys_if_choice_exist:nnnTF {zugferd} {unit}
+\l_tmpa_tl
+{
+\keys_set:ne { zugferd } {unit= {\l_tmpa_tl}}
+} {
+\msg_warning:nnn { zugferd } {unknown-unit} {#1}
+\tl_set_eq:NN \l__zugferd_unit_code_tl \l_tmpa_tl
+}
+},
+unit .usage:n = general,
+}
+
+\msg_new:nnnn {zugferd} {unknown-unit} {
+You~selected~a~unit~which~was~not~predefined.\\
+I~~will~directly~use~your~selection~'unit=#1'~as~Common~Code.
+Please~ensure~the~selection~is~valid!
+} {
+For~more~information~see~the~zugferd~documentation\\
+and~the~/UN/CEFACT~Common~Code~list.
+}
+\msg_new:nnnn {zugferd} {unknown-tax-category} {
+You~selected~an~unknown~tax~category.\\
+I~~will~directly~use~your~selection~'category=#1'~as~Code.\\
+Please~ensure~the~selection~is~valid!
+} {
+For~more~information~see~the~zugferd~documentation\\
+and~the~corresponding~code~list.
+}
+\msg_new:nnnn {zugferd} {no-auto-exemption} {
+You~selected~tax/category=#1~together~with~the~auto-exemption~option.\\
+I~don't~have~any~pre-configured~exemption~setting~for~category=#1.\\
+Please~make~sure~you~add~a~valid~setting~yourself.
+} {
+For~more~information~see~the~zugferd~documentation.
+}
+\keys_define:nn { zugferd / tax } {
+category .choices:nn = {S,Z,E,AE,K,G,O,L,M} {
+\tl_set_eq:NN \l__zugferd_tax_category_code_tl \l_keys_choice_tl
+\bool_if:NT \g__zugferd_auto_exemption_bool {
+\keys_if_choice_exist:nnnTF {zugferd/tax} {exemption-reason-auto} {#1} {
+\keys_set:nn {zugferd/tax} {exemption-reason-auto=#1}
+} {
+\msg_warning:nnn { zugferd } {no-auto-exemption} {#1}
+}
+}
+},
+exemption-reason .tl_set:N = \l__zugferd_tax_exemption_reason_tl,
+exemption-reason .initial:V = \c_empty_tl,
+exemption-reason .usage:n = general,
+exemption-reason-code .tl_set:N = \l__zugferd_tax_exemption_code_tl,
+exemption-reason-code .initial:V = \c_empty_tl,
+exemption-reason .usage:n = general,
+exemption-reason-auto .choice:,
+exemption-reason-auto / S .code:n = {
+\keys_set:nn {zugferd/tax} {exemption-reason=,exemption-reason-code=}
+},
+exemption-reason-auto / K .code:n = {
+\keys_set:nn {zugferd/tax} {
+exemption-reason= Intra-Community~Supply,
+exemption-reason-code={vatex-eu-ic}
+}
+},
+exemption-reason-auto / AE .code:n = {
+\keys_set:nn {zugferd/tax}{
+exemption-reason=Reverse~Charge,
+exemption-reason-code={vatex-eu-ae}
+}
+},
+exemption-reason-auto / G .code:n = {
+\keys_set:nn {zugferd/tax}{
+exemption-reason=Export~outside~the~EU,
+exemption-reason-code={vatex-eu-g}
+}
+},
+exemption-reason-auto / O .code:n = {
+\keys_set:nn {zugferd/tax}{
+exemption-reason=No~subject~to~VAT,
+exemption-reason-code={vatex-eu-o}
+}
+},
+standard .meta:n = {category=S},
+zero .meta:n = {category=Z},
+exempt .meta:n = {category=E},
+reverse-charge .meta:n = {category=AE},
+intra-community .meta:n = {category=K},
+EEA .meta:n = {category=K},
+export .meta:n = {category=G},
+canary-islands .meta:n = {category=L},
+ceuta .meta:n = {category=M},
+melilla .meta:n = {category=M},
+category / unknown .code:n = {
+\exp_args:Nnnx \keys_if_choice_exist:nnnTF {zugferd} {category}
+{\str_uppercase:f {#1}}
+{
+\keys_set:nx { zugferd } {category= {\str_uppercase:f {#1}}}
+} {
+\msg_warning:nnn { zugferd } {unknown-tax-category} {#1}
+}
+},
+category .initial:n = S,
+category .usage:n = general,
+rate .fp_set:N = \l__zugferd_tax_rate_fp,
+rate .initial:n = 19,
+rate .usage:n = general,
+}
+\__zugferd_define_xml_writer:Nn \__zugferd_write_inline:nn {
+\tl_if_blank:nF {#2} {
+<#1>#2</#1>
+}
+}
+\cs_generate_variant:Nn \__zugferd_write_inline:nn {ne}
+\__zugferd_define_xml_writer:Nn \__zugferd_write_inline_i:nn {
+\__zugferd_indent: \__zugferd_write_inline:nn {#1} {#2}
+}
+\cctab_begin:N \g__zugferd_xml_cctab%
+\__zugferd_define_xml_writer:Nn \__zugferd_write_note:n {%
+\begingroup%
+\let\\\iow_newline:%
+\__zugferd_write_xml:e {%
+<ram:IncludedNote>
+\__zugferd_indent: <ram:Content>
+#1
+\__zugferd_indent: </ram:Content>
+</ram:IncludedNote>%
+}%
+\endgroup%
+}%
+\begingroup%
+\char_set_catcode_other:N \#%
+\char_set_catcode:nn {32}{10}%
+\__zugferd_define_xml_writer:Nn \__zugferd_insert_Header: {%
+\__zugferd_write_xml:e {%
+<?xml version='1.0' encoding='UTF-8' ?>
+<rsm:CrossIndustryInvoice %
+xmlns:rsm="urn:un:unece:uncefact:data:standard:CrossIndustryInvoice:100" %
+xmlns:qdt="urn:un:unece:uncefact:data:standard:QualifiedDataType:100" %
+xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100" %
+xmlns:xs="http://www.w3.org/2001/XMLSchema" %
+xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100">%
+}%
+\int_gincr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:n {<rsm:ExchangedDocumentContext>}%
+\int_gincr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:e {%
+\str_if_empty:NF \g__zugferd_businessProcessId_str {%
+<ram:BusinessProcessSpecifiedDocumentContextParameter>
+\__zugferd_indent: <ram:ID>\g__zugferd_businessProcessId_str</ram:ID>
+</ram:BusinessProcessSpecifiedDocumentContextParameter>
+}%
+<ram:GuidelineSpecifiedDocumentContextParameter>
+\__zugferd_indent: <ram:ID>\g__zugferd_format_str</ram:ID>
+</ram:GuidelineSpecifiedDocumentContextParameter>%
+}%
+\int_gdecr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:n {</rsm:ExchangedDocumentContext>}%
+}%
+\endgroup%
+\__zugferd_define_xml_writer:Nn \__zugferd_insert_FrontMatter: {%
+\__zugferd_write_xml:n {<rsm:ExchangedDocument>}%
+\int_gincr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:e {%
+<ram:ID>\g__zugferd_id_tl</ram:ID>
+<ram:TypeCode>\g__zugferd_DocumentTypeCode_tl</ram:TypeCode>
+<ram:IssueDateTime>
+\__zugferd_indent:<udt:DateTimeString~format="102">\g__zugferd_date_tl</udt:DateTimeString>
+</ram:IssueDateTime>%
+}%
+\__zugferd_note_if_not_empty:N \g__zugferd_subject_tl%
+\__zugferd_note_if_not_empty:N \g__zugferd_fromaddress_tl%
+\seq_map_inline:Nn \g__zugferd_notes_seq {%
+\__zugferd_write_note:n {##1}%
+}%
+\int_gdecr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:e {%
+</rsm:ExchangedDocument>
+<rsm:SupplyChainTradeTransaction>%
+}%
+\int_gincr:N \g__zugferd_indent_int%
+}%
+\__zugferd_define_xml_writer:Nn \__zugferd_insert_Footer: {%
+\int_gdecr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:n {</rsm:SupplyChainTradeTransaction>}%
+\int_gdecr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:n {</rsm:CrossIndustryInvoice>}%
+}%
+\cctab_end:
+\cctab_begin:N \g__zugferd_xml_cctab%
+\__zugferd_define_xml_writer:Nn \__zugferd_AssociatedDocumentLineDocument:n {%
+<ram:AssociatedDocumentLineDocument>
+\__zugferd_indent: <ram:LineID>#1</ram:LineID>
+</ram:AssociatedDocumentLineDocument>%
+}%
+\__zugferd_define_xml_writer:Nn \__zugferd_SpecifiedTradeProduct:nn {%
+<ram:SpecifiedTradeProduct>
+\tl_if_empty:nF {#1} {%
+\__zugferd_indent: <ram:SellerAssignedID>#1</ram:SellerAssignedID>
+}%
+\__zugferd_indent: <ram:Name>#2</ram:Name>
+</ram:SpecifiedTradeProduct>%
+}%
+\__zugferd_define_xml_writer:Nn \__zugferd_ProductTradePrice:nn {%
+<ram:\str_uppercase:n #1PriceProductTradePrice>
+\__zugferd_indent: <ram:ChargeAmount>#2</ram:ChargeAmount>
+</ram:\str_uppercase:n #1PriceProductTradePrice>%
+}%
+\__zugferd_define_xml_writer:Nn \__zugferd_SpecifiedLineTradeAgreement:nn {%
+<ram:SpecifiedLineTradeAgreement>
+\__zugferd_indent:<ram:GrossPriceProductTradePrice>
+\__zugferd_indent:n {2} <ram:ChargeAmount>#1</ram:ChargeAmount>
+\__zugferd_indent:</ram:GrossPriceProductTradePrice>
+\__zugferd_indent:<ram:NetPriceProductTradePrice>
+\__zugferd_indent:n {2} <ram:ChargeAmount>#2</ram:ChargeAmount>
+\__zugferd_indent:</ram:NetPriceProductTradePrice>
+</ram:SpecifiedLineTradeAgreement>
+}%
+%%%\subsubsection{SpecifiedLineTradeDelivery}%:nn <unit code > <number>
+\__zugferd_define_xml_writer:Nn \__zugferd_SpecifiedLineTradeDelivery:nn {%
+<ram:SpecifiedLineTradeDelivery>
+\__zugferd_indent: <ram:BilledQuantity~unitCode="#1">#2</ram:BilledQuantity>
+</ram:SpecifiedLineTradeDelivery>
+}%
+\__zugferd_define_xml_content:Nn \__zugferd_SpecifiedLineTradeSettlement:nnn {%
+<ram:SpecifiedLineTradeSettlement>
+\__zugferd_indent: <ram:ApplicableTradeTax>
+\__zugferd_indent:n {2} <ram:TypeCode>VAT</ram:TypeCode>
+\__zugferd_indent:n {2} <ram:CategoryCode>#1</ram:CategoryCode>
+\__zugferd_indent:n {2} <ram:RateApplicablePercent>#2</ram:RateApplicablePercent>
+\__zugferd_indent: </ram:ApplicableTradeTax>
+\__zugferd_indent: <ram:SpecifiedTradeSettlementLineMonetarySummation>
+\__zugferd_indent:n {2} <ram:LineTotalAmount>#3</ram:LineTotalAmount>
+\__zugferd_indent: </ram:SpecifiedTradeSettlementLineMonetarySummation>
+</ram:SpecifiedLineTradeSettlement>%
+}%
+\cctab_end:
+\cs_generate_variant:Nn \__zugferd_SpecifiedLineTradeSettlement:nnn {Vnn}
+\cs_new:Nn \__zugferd_SpecifiedLineTradeSettlement:nnnn {
+\msg_warning:nnnn {zugferd} {macro-deprecated}
+{ \__zugferd_SpecifiedLineTradeSettlement:nnnn }
+{ \__zugferd_SpecifiedLineTradeSettlement:nnn }
+\__zugferd_SpecifiedLineTradeSettlement:nnn {#2} {#3} {#4}
+}
+\cs_generate_variant:Nn \__zugferd_SpecifiedLineTradeSettlement:nnnn {VVnn}
+\__zugferd_define_xml_writer:Nn \__zugferd_insert_TradeLineItem:nnnnnn {
+\__zugferd_write_xml:n {<ram:IncludedSupplyChainTradeLineItem>}
+\int_gincr:N \g__zugferd_indent_int
+\__zugferd_write_xml:e {\__zugferd_AssociatedDocumentLineDocument:n {#1}}%
+
+\begingroup
+\zugferd_disable_macros:
+\__zugferd_write_xml:e {\__zugferd_SpecifiedTradeProduct:nn {#2} {#3}}
+\endgroup
+
+\__zugferd_write_xml:n {<ram:SpecifiedLineTradeAgreement>}
+\int_gincr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:e {\__zugferd_ProductTradePrice:nn {net} {#4}}
+\int_gdecr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:n {</ram:SpecifiedLineTradeAgreement>}
+\__zugferd_write_xml:e {%
+\__zugferd_SpecifiedLineTradeDelivery:nn { \l__zugferd_unit_code_tl } {#5}
+\__zugferd_SpecifiedLineTradeSettlement:Vnn \l__zugferd_tax_category_code_tl %
+{ \fp_use:N \l__zugferd_tax_rate_fp} {#6}
+}%
+\int_gdecr:N \g__zugferd_indent_int
+\__zugferd_write_xml:n {</ram:IncludedSupplyChainTradeLineItem>}
+}
+\__zugferd_define_xml_writer:Nn \__zugferd_SpecifiedTradeSettlementHeaderMonetarySummation:nnnnnnnn {%
+\__zugferd_write_xml:n {<ram:SpecifiedTradeSettlementHeaderMonetarySummation>}%
+\int_gincr:N \g__zugferd_indent_int%
+\__zugferd_write_rounded:nnn {2} {LineTotalAmount} {#1}
+\__zugferd_write_rounded:nnn {2} {ChargeTotalAmount} {#2}
+\__zugferd_write_rounded:nnn {2} {AllowanceTotalAmount} {#3}
+\__zugferd_write_rounded:nnn {2} {TaxBasisTotalAmount} {#4}
+\__zugferd_write_rounded:nnnn {2} {TaxTotalAmount} {~currencyID="\l__zugferd_currency_tl "} {#5}
+\__zugferd_write_rounded:nnn {2} {GrandTotalAmount} {#6}
+\__zugferd_write_rounded:nnn {2} {TotalPrepaidAmount} {#7}
+\__zugferd_write_rounded:nnn {2} {DuePayableAmount} {#8}
+\int_gdecr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:n {</ram:SpecifiedTradeSettlementHeaderMonetarySummation>}%
+}%
+\__zugferd_define_xml_writer:Nn \__zugferd_ApplicableTradeTax:nnnn {%
+\__zugferd_write_xml:n {<ram:ApplicableTradeTax>}
+\int_gincr:N \g__zugferd_indent_int%
+\__zugferd_write_rounded:nnn {2} {CalculatedAmount} {#4}%BT117
+\__zugferd_write_xml:n {<ram:TypeCode>VAT</ram:TypeCode>}%BT118
+\tl_if_blank:VF \l__zugferd_tax_exemption_reason_tl {%BT-120
+\__zugferd_write_xml:e {<ram:ExemptionReason>
+\l__zugferd_tax_exemption_reason_tl
+</ram:ExemptionReason>}
+}
+{{\__zugferd_write_rounded:nnn {2} {BasisAmount} {#3}}}%BT-116
+\__zugferd_write_xml:e {<ram:CategoryCode>#1</ram:CategoryCode>}%BT-118
+\tl_if_blank:VF \l__zugferd_tax_exemption_code_tl {%BT121
+\__zugferd_write_xml:e {<ram:ExemptionReasonCode>
+\l__zugferd_tax_exemption_code_tl
+</ram:ExemptionReasonCode>}
+}
+\__zugferd_write_xml:n {<ram:RateApplicablePercent>#2</ram:RateApplicablePercent>}%BT-119
+\int_gdecr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:n {</ram:ApplicableTradeTax>}
+}%
+\cctab_begin:N \g__zugferd_xml_cctab%
+\__zugferd_define_xml_writer:Nn \__zugferd_ApplicableHeaderTradeSettlement:nnnnnnnn {%
+
+}%
+\__zugferd_define_xml_writer:Nn \__zugferd_ApplicableHeaderTradeSettlement_start: {%
+\__zugferd_write_xml:n {<ram:ApplicableHeaderTradeSettlement>}%
+\int_gincr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:e {<ram:InvoiceCurrencyCode>\l__zugferd_currency_tl</ram:InvoiceCurrencyCode>}%
+}%
+\__zugferd_define_xml_writer:Nn \__zugferd_ApplicableHeaderTradeSettlement_stop: {%
+\int_gdecr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:n {</ram:ApplicableHeaderTradeSettlement>}%
+}%
+\__zugferd_define_xml_writer:Nn \__zugferd_SpecifiedTradePaymentTerms:nn {%
+\__zugferd_write_xml:n {<ram:SpecifiedTradePaymentTerms>}%
+\int_gincr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:e {%
+\tl_if_blank:nF {#1} {%
+<ram:Description>#1</ram:Description>%
+}%
+\tl_if_blank:nF {#2} {%
+<ram:DueDateDateTime>
+\__zugferd_indent: <udt:DateTimeString~format="102">#2</udt:DateTimeString>
+</ram:DueDateDateTime>%
+}%
+}%
+\int_gdecr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:n {</ram:SpecifiedTradePaymentTerms>}%
+}%
+\__zugferd_define_xml_writer:Nn \__zugferd_SpecifiedTradeSettlementPaymentMeans:nnn {%
+\bool_if:NT \g__zugferd_writePaymentMeans_bool {%
+\__zugferd_write_xml:n {<ram:SpecifiedTradeSettlementPaymentMeans>}%
+\int_gincr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:e {%
+<ram:TypeCode>\g__zugferd_payment_means_tl</ram:TypeCode>
+\__zugferd_write_inline:ne {ram:Information} {\prop_item:cV {g__zugferd_payment-means_names_prop} \g__zugferd_payment_means_tl}%
+\tl_if_blank:nF {#1#2} {%
+<ram:PayeePartyCreditorFinancialAccount>
+\__zugferd_write_inline_i:nn {ram:IBANID} {#2}
+\__zugferd_write_inline_i:nn {ram:AccountName} {#1}
+</ram:PayeePartyCreditorFinancialAccount>
+}%
+\tl_if_blank:nF {#3} {%
+<ram:PayeeSpecifiedCreditorFinancialInstitution>
+\__zugferd_write_inline_i:nn {ram:BICID} {#3}
+</ram:PayeeSpecifiedCreditorFinancialInstitution>%
+}%
+}%
+\int_gdecr:N \g__zugferd_indent_int%
+\__zugferd_write_xml:n {</ram:SpecifiedTradeSettlementPaymentMeans>}%
+}%
+}%
+\cctab_end:
+\cs_generate_variant:Nn \__zugferd_SpecifiedTradePaymentTerms:nn {VV}
+\__zugferd_define_xml_writer:Nn \__zugferd_SpecifiedTradePaymentTerms: {
+\__zugferd_SpecifiedTradePaymentTerms:VV \__zugferd_payment_terms_str \__zugferd_due_date_tl
+}
+\cs_generate_variant:Nn \__zugferd_SpecifiedTradeSettlementPaymentMeans:nnn {vvv}
+\__zugferd_define_xml_writer:Nn \__zugferd_SpecifiedTradeSettlementPaymentMeans: {
+\tl_if_blank:VF \g__zugferd_payment_means_tl {
+\__zugferd_SpecifiedTradeSettlementPaymentMeans:vvv
+{g__zugferd_payment_account-holder_tl} {g__zugferd_payment_iban_tl} {g__zugferd_payment_bic_tl}
+}
+}
+\msg_new:nnn {zugferd} {macro-deprecated} {
+The~function~#1~is~deprecated.\\
+It~was~replaced~by~#2.\\
+Please~adjust~your~mechanism~to~use~the~new~version.
+}
+\endinput
+%%
+%% End of file `zugferd.sty'.